@visitscotland/component-library
Version:
VisitScotland Component Library
1 lines • 6.44 kB
JavaScript
(self.webpackChunk_visitscotland_component_library=self.webpackChunk_visitscotland_component_library||[]).push([[4900],{21726:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return a.a}});var l=n(38300),a=n.n(l),o={};for(var u in l)"default"!==u&&(o[u]=function(e){return l[e]}.bind(0,u));n.d(t,o)},31440:function(e,t,n){"use strict";n(44596)},34900:function(e,t,n){"use strict";n.r(t);var l=n(21726),a={};for(var o in l)"default"!==o&&(a[o]=function(e){return l[e]}.bind(0,o));n.d(t,a),n(31440);const u=l.default;t.default=u},38300:function(e,t,n){"use strict";var l=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var a=n(17527),o=n(17527),u={class:"form-group vs-guest-selector","data-test":"vs-guest-selector"},s={class:"vs-guest-selector__label"},r=["disabled"],i={class:"vs-guest-selector__button-row mb-075"},c={class:"d-flex justify-content-between"},d=["value","disabled"],v=["value","disabled"],m=n(17527),f=n(378),g=l(n(26216)),b=l(n(48836));t.default=(0,a.defineComponent)({__name:"GuestSelector",props:{availability:{type:Boolean}},setup:function(e){var t=(0,m.getCurrentInstance)(),n=(0,f.getLabelText)("add_room_label","Add a Room","guests_rooms"),l=(0,f.getLabelText)("save_changes","Save","guests_rooms"),a=(0,m.ref)(2),p=(0,f.getLabelText)("guest","Guest","guests_rooms"),_=(0,f.getLabelText)("guests","Guests","guests_rooms"),h=(0,m.ref)(!1),C=(0,m.ref)(0),x=(0,m.ref)([{id:"".concat(t.uid),showRemoveBtn:!1,numberGroups:{adults:{minCount:1,maxCount:30,count:2,name:"r1a",unitLabel:(0,f.getLabelText)("adults","Adults","guests_rooms")},children:{minCount:0,maxCount:30,count:0,name:"r1children",unitLabel:(0,f.getLabelText)("children","Children","guests_rooms")},infants:{minCount:0,maxCount:30,count:0,name:"r1infants",unitLabel:(0,f.getLabelText)("infants","Infants","guests_rooms")}}}]),k=(0,m.ref)(1),y=(0,f.getLabelText)("room","Room","guests_rooms"),L=(0,f.getLabelText)("rooms","Rooms","guests_rooms"),T=(0,m.ref)(!1),N=(0,m.ref)(!1),V=function(){N.value=!1},B=function(){N.value=!N.value},w=function(){if(x.value.length<5){var e={id:"".concat(t.uid),showRemoveBtn:!0,numberGroups:{adults:{minCount:1,maxCount:30,count:1,name:"r"+(x.value.length+1)+"a",unitLabel:(0,f.getLabelText)("adults","Adults","guests_rooms")},children:{minCount:0,maxCount:30,count:0,name:"r"+(x.value.length+1)+"children",unitLabel:(0,f.getLabelText)("children","Children","guests_rooms")},infants:{minCount:0,maxCount:30,count:0,name:"r"+(x.value.length+1)+"infants",unitLabel:(0,f.getLabelText)("infants","Infants","guests_rooms")}}},n=x.value.slice();n.push(e),x.value=n,k.value=n.length,h.value=!0,a.value=a.value+1}},E=function(e,t,n){var l=x.value.findIndex((function(e){return e.id===n}));x.value.splice(l,1),k.value=x.value.length,T.value=!0,a.value=a.value-e,C.value=C.value-t,1===x.value.length&&(h.value=!1)},S=function(e,t,n){a.value="increase"===e?a.value+1:a.value-1,"adults"!==t&&(C.value="increase"===e?C.value+1:C.value-1);var l=x.value.findIndex((function(e){return e.id===n}));x.value[l].numberGroups[t].count="increase"===e?x.value[l].numberGroups[t].count+1:x.value[l].numberGroups[t].count-1};return function(e,t){return(0,o.openBlock)(),(0,o.createElementBlock)("div",u,[(0,o.createElementVNode)("span",s,(0,o.toDisplayString)((0,o.unref)(_)),1),(0,o.createElementVNode)("button",{tabIndex:"availability ? '0' : ''",class:"vs-guest-selector__trigger form-control vs-input",onClick:(0,o.withModifiers)(B,["prevent"]),disabled:!e.availability},[(0,o.createElementVNode)("span",null,(0,o.toDisplayString)(k.value)+" ",1),(0,o.createElementVNode)("span",null,(0,o.toDisplayString)(k.value>1?(0,o.unref)(L):(0,o.unref)(y)),1),t[0]||(t[0]=(0,o.createTextVNode)(", ")),(0,o.createElementVNode)("span",null,(0,o.toDisplayString)(a.value)+" ",1),(0,o.createElementVNode)("span",null,(0,o.toDisplayString)(a.value>1?(0,o.unref)(_):(0,o.unref)(p)),1)],8,r),(0,o.createElementVNode)("div",{class:(0,o.normalizeClass)(["vs-guest-selector__modal",N.value?"vs-guest-selector__modal--visible":""])},[(0,o.createVNode)(b.default,{class:"align-self-end","data-test":"vs-guest-selector__close-btn",variant:"subtle",icon:"vs-icon-control-dismiss",size:"md","icon-only":"",onClick:(0,o.withModifiers)(V,["prevent"])},{default:(0,o.withCtx)((function(){return[(0,o.createTextVNode)((0,o.toDisplayString)((0,o.unref)(f.getLabelText)("close","Close","guests_rooms")),1)]})),_:1}),(0,o.createElementVNode)("div",i,[((0,o.openBlock)(!0),(0,o.createElementBlock)(o.Fragment,null,(0,o.renderList)(x.value,(function(e,t){return(0,o.openBlock)(),(0,o.createBlock)(g.default,{key:e.id,name:"r"+(t+1),"show-remove-btn":h.value,"unit-label":(0,o.unref)(f.getLabelText)("room","Room","guests_rooms")+" "+(t+1),"unit-options":e,"unit-removed":T.value,onNumberChange:S,onOnRemove:E},null,8,["name","show-remove-btn","unit-label","unit-options","unit-removed"])})),128))]),(0,o.createElementVNode)("div",c,[x.value.length<5?((0,o.openBlock)(),(0,o.createBlock)(b.default,{key:0,variant:"secondary",class:"c-search__popup__btn-link me-050 align-self-start",onClick:(0,o.withModifiers)(w,["prevent"])},{default:(0,o.withCtx)((function(){return[(0,o.createTextVNode)((0,o.toDisplayString)((0,o.unref)(n)),1)]})),_:1})):(0,o.createCommentVNode)("",!0),x.value.length<5?((0,o.openBlock)(),(0,o.createBlock)(b.default,{key:1,class:"c-search__popup__btn-link c-search__popup__btn-link--pull-right align-self-end",onClick:(0,o.withModifiers)(V,["prevent"])},{default:(0,o.withCtx)((function(){return[(0,o.createTextVNode)((0,o.toDisplayString)((0,o.unref)(l)),1)]})),_:1})):(0,o.createCommentVNode)("",!0)])],2),x.value?((0,o.openBlock)(),(0,o.createElementBlock)("input",{key:0,type:"hidden",name:"rooms",id:"room-count",value:k.value,disabled:!e.availability},null,8,d)):(0,o.createCommentVNode)("",!0),x.value?((0,o.openBlock)(),(0,o.createElementBlock)("input",{key:1,type:"hidden",name:"guests",id:"guest-count",value:a.value,disabled:!e.availability},null,8,v)):(0,o.createCommentVNode)("",!0)])}}})},44596:function(e,t,n){"use strict";var l=n(85072),a=n.n(l),o=n(97825),u=n.n(o),s=n(77659),r=n.n(s),i=n(55056),c=n.n(i),d=n(10540),v=n.n(d),m=n(41113),f=n.n(m),g=n(51590),b=n.n(g),p={};p.styleTagTransform=f(),p.setAttributes=c(),p.insert=r().bind(null,"head"),p.domAPI=u(),p.insertStyleElement=v(),a()(b(),p),b()&&b().locals&&b().locals},51590:function(){}}]);