UNPKG

@visitscotland/component-library

Version:
1 lines 4.07 kB
!function(e,n){"object"==typeof exports&&"object"==typeof module?module.exports=n():"function"==typeof define&&define.amd?define([],n):"object"==typeof exports?exports.VsVsPagination=n():e.VsVsPagination=n()}(self,(function(){return(self.webpackChunk_visitscotland_component_library=self.webpackChunk_visitscotland_component_library||[]).push([[5863],{9206:function(){},20398:function(e,n,t){"use strict";var a=t(89394),i=t(20641),r=t(90033),u=t(48836),l={"aria-label":"Pagination",class:"vs-pagination","data-test":"vs-pagination"},o={"aria-live":"polite",class:"vs-pagination__count"},s={class:"vs-pagination__controls"},c={class:"vs-pagination__prev"},f={class:"vs-pagination__list"},p={key:0},v={class:"vs-pagination__next"};n.A={__name:"VsPagination",props:(0,i.zz)({nextButtonLabel:{type:String,required:!0},numberOfPages:{type:Number,required:!0},pageLabel:{type:String,required:!0},ofLabel:{type:String,required:!0},previousButtonLabel:{type:String,required:!0}},{modelValue:{type:Number,default:1},modelModifiers:{}}),emits:(0,i.zz)(["page-click"],["update:modelValue"]),setup:function(e,n){var t=n.emit,d=e,g=t,b=(0,i.fn)(e,"modelValue"),m=(0,i.EW)((function(){return"".concat(d.pageLabel," ").concat(b.value," ").concat(d.ofLabel," ").concat(d.numberOfPages)})),_=function(e){return{"vs-pagination__item":!0,"vs-pagination__item--active":b.value===e,"vs-pagination__item--ellipses":"ellipses"===e}},k=(0,i.EW)((function(){if(d.numberOfPages<=7)return Array.from({length:d.numberOfPages},(function(e,n){return n+1}));var e=[],n=Math.floor(3.5);if(b.value<=n){for(var t=1;t<6;t++)e=[].concat((0,a.A)(e),[t]);e=[].concat((0,a.A)(e),["ellipses",d.numberOfPages])}else if(b.value>d.numberOfPages-n){e=[1,"ellipses"];for(var i=d.numberOfPages-7+2,r=1;r<6;r++)e=[].concat((0,a.A)(e),[i+r])}else{var u=b.value-n+1;e=[1,"ellipses"];for(var l=1;l<4;l++)e=[].concat((0,a.A)(e),[u+l]);e=[].concat((0,a.A)(e),["ellipses",d.numberOfPages])}return e})),y=function(e,n){b.value!==n&&(g("page-click",n),b.value=n)};return(0,i.wB)((function(){return d.numberOfPages}),(function(){b.value=1})),function(e,n){return(0,i.uX)(),(0,i.CE)("nav",l,[(0,i.Lk)("div",o,[(0,i.Lk)("p",null,(0,r.toDisplayString)(m.value),1)]),(0,i.Lk)("div",s,[(0,i.Lk)("div",c,[(0,i.bF)(u.default,{disabled:1===b.value,icon:"fa-regular fa-arrow-left",size:"sm",variant:"subtle",onClick:n[0]||(n[0]=function(e){return y(0,b.value-1)})},{default:(0,i.k6)((function(){return[(0,i.eW)((0,r.toDisplayString)(d.previousButtonLabel),1)]})),_:1},8,["disabled"])]),(0,i.Lk)("ul",f,[((0,i.uX)(!0),(0,i.CE)(i.FK,null,(0,i.pI)(k.value,(function(e,n){return(0,i.uX)(),(0,i.CE)("li",{class:(0,r.normalizeClass)(_(e)),key:n},["ellipses"===e?((0,i.uX)(),(0,i.CE)("span",p,"⋯")):((0,i.uX)(),(0,i.Wv)(u.default,{key:1,"aria-current":b.value===e?"page":null,"aria-label":"Page ".concat(e),size:"sm",onClick:function(n){return y(0,e)}},{default:(0,i.k6)((function(){return[(0,i.eW)((0,r.toDisplayString)(e),1)]})),_:2},1032,["aria-current","aria-label","onClick"]))],2)})),128))]),(0,i.Lk)("div",v,[(0,i.bF)(u.default,{disabled:b.value===d.numberOfPages,icon:"fa-regular fa-arrow-right","icon-position":"right",size:"sm",variant:"subtle",onClick:n[1]||(n[1]=function(e){return y(0,b.value+1)})},{default:(0,i.k6)((function(){return[(0,i.eW)((0,r.toDisplayString)(d.nextButtonLabel),1)]})),_:1},8,["disabled"])])])])}}}},28e3:function(e,n,t){"use strict";t(83116)},40197:function(e,n,t){"use strict";t.d(n,{A:function(){return a.A}});var a=t(20398)},53337:function(e,n,t){"use strict";t.r(n);var a=t(40197);t(28e3);const i=a.A;n.default=i},83116:function(e,n,t){"use strict";var a=t(85072),i=t.n(a),r=t(97825),u=t.n(r),l=t(77659),o=t.n(l),s=t(55056),c=t.n(s),f=t(10540),p=t.n(f),v=t(41113),d=t.n(v),g=t(9206),b=t.n(g),m={};m.styleTagTransform=d(),m.setAttributes=c(),m.insert=o().bind(null,"head"),m.domAPI=u(),m.insertStyleElement=p(),i()(b(),m),b()&&b().locals&&b().locals}},function(e){return e.O(0,[641,6262,7510,3751,4352,4467,7527,8086,810,7800,9394,4982,6422,8745,8836],(function(){return e(e.s=53337)})),e.O()}])}));