@visitscotland/component-library
Version:
VisitScotland Component Library
1 lines • 11.7 kB
JavaScript
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.VsSkiScotlandCard=e():t.VsSkiScotlandCard=e()}(self,(function(){return(self.webpackChunk_visitscotland_component_library=self.webpackChunk_visitscotland_component_library||[]).push([[6515],{48117:function(){},56893:function(t,e,s){"use strict";var a=s(3453),n=s(31574),l=s(13838),r=s(46422),i=s(48836),u=s(79122),o=s(35025),d=s(3706),f=s(95945),c=s(3484),p=s(58167),m=s(64921),y=s(51371),g=s(49054),b=s(57536);e.A={name:"VsSkiScotlandCard",status:"prototype",release:"0.0.1",components:{VsImg:n.default,VsHeading:l.default,VsIcon:r.default,VsWarning:u.default,VsLoadingSpinner:o.default,VsButton:i.default,VsTable:d.default,VsTableHead:f.default,VsTableHeaderCell:c.default,VsTableBody:p.default,VsTableRow:m.default,VsTableDataCell:y.default,VsTableFooter:g.default},props:{centreInfoUrl:{type:String,default:""},locale:{type:String,default:"en-gb"},timeoutDuration:{type:Number,default:3e4},lastUpdatedLabel:{type:String,default:"Last Updated"},liftsLabel:{type:String,default:"Lifts"},runsLabel:{type:String,default:"Runs"},runsLiftsStatusLabel:{type:String,default:"Run/Lift Status"},statusLabel:{type:String,default:"Status"},summaryClosedLabel:{type:String,default:"Closed"},summaryOpenLabel:{type:String,default:"Open"},summaryOpeningLabel:{type:String,default:"Opening"},summaryLimitedPatrolLabel:{type:String,default:"Limited Patrol"},summaryOnHoldLabel:{type:String,default:"On Hold"},imgSrc:{required:!0,type:String},imgAlt:{type:String,default:""},pisteMapLabel:{type:String,default:"View Piste Map"},moreDetailsLabel:{type:String,default:"More Details"},pisteMapLink:{type:String,default:""},moreDetailsLink:{type:String,required:!0,default:"#"}},data:function(){return{statusSummary:{runs:{open:0,opening:0,closed:0,onHold:0,limitedPatrol:0},lifts:{open:0,opening:0,closed:0,onHold:0,limitedPatrol:0}},runs:[],lifts:[],lastUpdate:"",jsDisabled:!0,isLoading:!0,displayError:!1}},mounted:function(){this.centreInfoUrl&&this.retrieveCentreInfo(),this.jsDisabled=!1},methods:{retrieveCentreInfo:function(){var t=this,e=setTimeout((function(){t.displayError=!0}),this.timeoutDuration);b.A.get(this.centreInfoUrl).then((function(s){var a=t.cleanData(s.data);t.processLifts(a.lifts),a.runs&&t.processRuns(a.runs),t.processLastUpdate(a.lastUpdate),t.isLoading=!1,clearTimeout(e)})).catch((function(){t.runStatusInfo=null,t.displayError=!0,t.isLoading=!1,clearTimeout(e)}))},cleanData:function(t){var e={contact:t.contact,report:t.report};if(t.snowReport)e.lastUpdate=t.snowReport.lastupdate,e.lifts=t.lifts.sector.items,e.runs=t.runs.items,this.isCairngorms=!0;else{e.lastUpdate=t.lastupdate;var s=(0,a.A)(t.lift.sectors,1);if(e.lifts=s[0],e.lifts=e.lifts.lifts,t.run.areas){var n=t.run.areas.map((function(t){return t.runs})).reduce((function(t,e){return t.concat(e)})).filter((function(t,e,s){return e===s.findIndex((function(e){return e.name===t.name}))}));e.runs=n}}return e},processLastUpdate:function(t){var e=new Date(t.year,parseInt(t.month,10)-1,t.day).toLocaleDateString(this.locale,{year:"numeric",month:"long",day:"numeric"});this.lastUpdate="".concat(t.hour24,":").concat(t.minute," - ").concat(e)},processLifts:function(t){for(var e=0;e<t.length;e++)switch(t[e].status){case"4":case 4:this.statusSummary.lifts.onHold+=1;break;case"3":case 3:this.statusSummary.lifts.limitedPatrol+=1;break;case"2":case 2:this.statusSummary.lifts.opening+=1;break;case"1":case 1:this.statusSummary.lifts.open+=1;break;default:this.statusSummary.lifts.closed+=1}this.lifts=t},processRuns:function(t){for(var e=0;e<t.length;e++)switch(t[e].status){case"4":case 4:this.statusSummary.runs.onHold+=1;break;case"3":case 3:this.statusSummary.runs.limitedPatrol+=1;break;case"2":case 2:this.statusSummary.runs.opening+=1;break;case"1":case 1:this.statusSummary.runs.open+=1;break;default:this.statusSummary.runs.closed+=1}this.runs=t}}}},71961:function(t,e,s){"use strict";s.d(e,{X:function(){return k}});var a=s(20641),n=s(90033),l={class:"card vs-ski-scotland-card","data-test":"vs-ski-scotland-card"},r={class:"vs-ski-scotland-card__img-container"},i={class:"card-body"},u={key:0,class:"text-center pb-200 position-relative"},o={"data-test":"vs-ski__status-label"},d={"data-test":"vs-ski__runs-label"},f={"data-test":"vs-ski__lifts-label"},c={"data-test":"vs-ski__open-label"},p={"data-test":"vs-ski__limited-patrol-label"},m={"data-test":"vs-ski__opening-label"},y={"data-test":"vs-ski__closed-label"},g={"data-test":"vs-ski__on-hold-label"},b={"data-test":"vs-ski__last-updated-label"};function k(t,e,s,k,S,_){var L=(0,a.g2)("VsImg"),h=(0,a.g2)("VsHeading"),v=(0,a.g2)("VsLoadingSpinner"),D=(0,a.g2)("VsWarning"),F=(0,a.g2)("VsTableHeaderCell"),V=(0,a.g2)("VsTableHead"),W=(0,a.g2)("VsIcon"),T=(0,a.g2)("VsTableDataCell"),X=(0,a.g2)("VsTableRow"),C=(0,a.g2)("VsTableBody"),H=(0,a.g2)("VsTableFooter"),Q=(0,a.g2)("VsTable"),U=(0,a.g2)("VsButton");return(0,a.uX)(),(0,a.CE)("div",l,[(0,a.Lk)("div",r,[s.imgSrc?((0,a.uX)(),(0,a.Wv)(L,{key:0,src:s.imgSrc,alt:s.imgAlt,class:"vs-ski-scotland-card__img","data-test":"vs-ski-scotland-card__img"},null,8,["src","alt"])):(0,a.Q3)("",!0)]),(0,a.Lk)("div",i,[(0,a.bF)(h,{level:"3","heading-style":"heading-m"},{default:(0,a.k6)((function(){return[(0,a.RG)(t.$slots,"centre-name")]})),_:3}),S.jsDisabled||S.isLoading||S.displayError?((0,a.uX)(),(0,a.CE)("div",u,[!S.jsDisabled&&S.isLoading?((0,a.uX)(),(0,a.CE)(a.FK,{key:0},[(0,a.bF)(v,{class:"mb-100 d-block"}),(0,a.RG)(t.$slots,"data-loading")],64)):(0,a.Q3)("",!0),!S.jsDisabled&&S.displayError?((0,a.uX)(),(0,a.Wv)(D,{key:1,size:"small","data-test":"vs-ski-scotland-card__error"},{default:(0,a.k6)((function(){return[(0,a.RG)(t.$slots,"data-unavailable")]})),_:3})):(0,a.Q3)("",!0),S.jsDisabled?((0,a.uX)(),(0,a.Wv)(D,{key:2,size:"small","data-test":"vs-ski-scotland-card__js-disabled"},{default:(0,a.k6)((function(){return[(0,a.RG)(t.$slots,"js-required")]})),_:3})):(0,a.Q3)("",!0)])):(0,a.Q3)("",!0),S.jsDisabled||S.isLoading||S.displayError?(0,a.Q3)("",!0):((0,a.uX)(),(0,a.Wv)(Q,{key:1,"table-caption":s.runsLiftsStatusLabel},{default:(0,a.k6)((function(){return[(0,a.bF)(V,null,{default:(0,a.k6)((function(){return[(0,a.bF)(F,null,{default:(0,a.k6)((function(){return[(0,a.Lk)("span",o,(0,n.toDisplayString)(s.statusLabel),1)]})),_:1}),S.runs.length?((0,a.uX)(),(0,a.Wv)(F,{key:0},{default:(0,a.k6)((function(){return[(0,a.Lk)("span",d,(0,n.toDisplayString)(s.runsLabel),1)]})),_:1})):(0,a.Q3)("",!0),(0,a.bF)(F,null,{default:(0,a.k6)((function(){return[(0,a.Lk)("span",f,(0,n.toDisplayString)(s.liftsLabel),1)]})),_:1})]})),_:1}),(0,a.bF)(C,null,{default:(0,a.k6)((function(){return[(0,a.bF)(X,null,{default:(0,a.k6)((function(){return[(0,a.bF)(T,null,{default:(0,a.k6)((function(){return[(0,a.bF)(W,{name:"tick",size:"xs",class:"me-050"}),(0,a.Lk)("span",c,(0,n.toDisplayString)(s.summaryOpenLabel),1)]})),_:1}),S.runs.length?((0,a.uX)(),(0,a.Wv)(T,{key:0},{default:(0,a.k6)((function(){return[(0,a.eW)((0,n.toDisplayString)(S.statusSummary.runs.open)+"/"+(0,n.toDisplayString)(S.runs.length),1)]})),_:1})):(0,a.Q3)("",!0),(0,a.bF)(T,null,{default:(0,a.k6)((function(){return[(0,a.eW)((0,n.toDisplayString)(S.statusSummary.lifts.open)+"/"+(0,n.toDisplayString)(S.lifts.length),1)]})),_:1})]})),_:1}),S.statusSummary.runs.limitedPatrol||S.statusSummary.lifts.limitedPatrol?((0,a.uX)(),(0,a.Wv)(X,{key:0},{default:(0,a.k6)((function(){return[(0,a.bF)(T,null,{default:(0,a.k6)((function(){return[(0,a.bF)(W,{name:"ski-boot",size:"xs",class:"me-050"}),(0,a.Lk)("span",p,(0,n.toDisplayString)(s.summaryLimitedPatrolLabel),1)]})),_:1}),S.runs.length?((0,a.uX)(),(0,a.Wv)(T,{key:0},{default:(0,a.k6)((function(){return[(0,a.eW)((0,n.toDisplayString)(S.statusSummary.runs.limitedPatrol)+"/"+(0,n.toDisplayString)(S.runs.length),1)]})),_:1})):(0,a.Q3)("",!0),(0,a.bF)(T,null,{default:(0,a.k6)((function(){return[(0,a.eW)((0,n.toDisplayString)(S.statusSummary.lifts.limitedPatrol)+"/"+(0,n.toDisplayString)(S.lifts.length),1)]})),_:1})]})),_:1})):(0,a.Q3)("",!0),(0,a.bF)(X,null,{default:(0,a.k6)((function(){return[(0,a.bF)(T,null,{default:(0,a.k6)((function(){return[(0,a.bF)(W,{name:"expected-open",size:"xs",class:"me-050"}),(0,a.Lk)("span",m,(0,n.toDisplayString)(s.summaryOpeningLabel),1)]})),_:1}),S.runs.length?((0,a.uX)(),(0,a.Wv)(T,{key:0},{default:(0,a.k6)((function(){return[(0,a.eW)((0,n.toDisplayString)(S.statusSummary.runs.opening)+"/"+(0,n.toDisplayString)(S.runs.length),1)]})),_:1})):(0,a.Q3)("",!0),(0,a.bF)(T,null,{default:(0,a.k6)((function(){return[(0,a.eW)((0,n.toDisplayString)(S.statusSummary.lifts.opening)+"/"+(0,n.toDisplayString)(S.lifts.length),1)]})),_:1})]})),_:1}),(0,a.bF)(X,null,{default:(0,a.k6)((function(){return[(0,a.bF)(T,null,{default:(0,a.k6)((function(){return[(0,a.bF)(W,{name:"status-closed",size:"xs",class:"me-050"}),(0,a.Lk)("span",y,(0,n.toDisplayString)(s.summaryClosedLabel),1)]})),_:1}),S.runs.length?((0,a.uX)(),(0,a.Wv)(T,{key:0},{default:(0,a.k6)((function(){return[(0,a.eW)((0,n.toDisplayString)(S.statusSummary.runs.closed)+"/"+(0,n.toDisplayString)(S.runs.length),1)]})),_:1})):(0,a.Q3)("",!0),(0,a.bF)(T,null,{default:(0,a.k6)((function(){return[(0,a.eW)((0,n.toDisplayString)(S.statusSummary.lifts.closed)+"/"+(0,n.toDisplayString)(S.lifts.length),1)]})),_:1})]})),_:1}),S.statusSummary.runs.onHold||S.statusSummary.lifts.onHold?((0,a.uX)(),(0,a.Wv)(X,{key:1},{default:(0,a.k6)((function(){return[(0,a.bF)(T,null,{default:(0,a.k6)((function(){return[(0,a.bF)(W,{name:"hourglass",size:"xs",class:"me-050"}),(0,a.Lk)("span",g,(0,n.toDisplayString)(s.summaryOnHoldLabel),1)]})),_:1}),S.runs.length?((0,a.uX)(),(0,a.Wv)(T,{key:0},{default:(0,a.k6)((function(){return[(0,a.eW)((0,n.toDisplayString)(S.statusSummary.runs.onHold)+"/"+(0,n.toDisplayString)(S.runs.length),1)]})),_:1})):(0,a.Q3)("",!0),(0,a.bF)(T,null,{default:(0,a.k6)((function(){return[(0,a.eW)((0,n.toDisplayString)(S.statusSummary.lifts.onHold)+"/"+(0,n.toDisplayString)(S.lifts.length),1)]})),_:1})]})),_:1})):(0,a.Q3)("",!0)]})),_:1}),(0,a.bF)(H,null,{default:(0,a.k6)((function(){return[(0,a.bF)(X,null,{default:(0,a.k6)((function(){return[(0,a.bF)(T,{colspan:"3",role:"cell"},{default:(0,a.k6)((function(){return[(0,a.Lk)("span",b,(0,n.toDisplayString)(s.lastUpdatedLabel)+": "+(0,n.toDisplayString)(S.lastUpdate),1)]})),_:1})]})),_:1})]})),_:1})]})),_:1},8,["table-caption"])),(0,a.bF)(U,{variant:"secondary",href:s.pisteMapLink,class:"mb-050",disabled:!s.pisteMapLink},{default:(0,a.k6)((function(){return[(0,a.eW)((0,n.toDisplayString)(s.pisteMapLabel),1)]})),_:1},8,["href","disabled"]),(0,a.bF)(U,{href:s.moreDetailsLink},{default:(0,a.k6)((function(){return[(0,a.eW)((0,n.toDisplayString)(s.moreDetailsLabel),1)]})),_:1},8,["href"])])])}},69247:function(t,e,s){"use strict";var a=s(85072),n=s.n(a),l=s(97825),r=s.n(l),i=s(77659),u=s.n(i),o=s(55056),d=s.n(o),f=s(10540),c=s.n(f),p=s(41113),m=s.n(p),y=s(48117),g=s.n(y),b={};b.styleTagTransform=m(),b.setAttributes=d(),b.insert=u().bind(null,"head"),b.domAPI=r(),b.insertStyleElement=c(),n()(g(),b),g()&&g().locals&&g().locals},19839:function(t,e,s){"use strict";s.r(e);var a=s(23881),n=s(30017);s(22723);const l=(0,s(66262).A)(n.A,[["render",a.X]]);e.default=l},30017:function(t,e,s){"use strict";s.d(e,{A:function(){return a.A}});var a=s(56893)},23881:function(t,e,s){"use strict";s.d(e,{X:function(){return a.X}});var a=s(71961)},22723:function(t,e,s){"use strict";s(69247)}},function(t){return t.O(0,[641,6262,7510,3751,4352,4467,7527,8086,810,2543,7800,3453,7536,6422,8745,8836,3838,9122,1574,5025,3706,3484,1371,9054,5945,8167,4921],(function(){return t(t.s=19839)})),t.O()}])}));