{"version":3,"file":"./block-editor/blocks/card-slider/view-script.js","mappings":";;UAAA;UACA;;;;;WCDA;WACA;WACA;WACA;WACA,yCAAyC,wCAAwC;WACjF;WACA;WACA;;;;;WCPA,8CAA8C;;;;;WCA9C;WACA;WACA;WACA,uDAAuD,iBAAiB;WACxE;WACA,gDAAgD,aAAa;WAC7D;;;;;;;;;;;;;;;ACNO,MAAMA,MAAM,CAAC;EACnB;AACD;AACA;AACA;AACA;AACA;EACCC,WAAWA,CAAEC,IAAI,EAAEC,IAAI,EAAG;IACzB,IAAI,CAACD,IAAI,GAAGA,IAAI;IAEhB,IAAK,CAAE,IAAI,CAACA,IAAI,EAAG;IAEnB,IAAI,CAACC,IAAI,GAAG;MACXC,IAAI,EAAE,wBAAwB;MAC9BC,OAAO,EAAE,2BAA2B;MACpCC,OAAO,EAAE,uBAAuB;MAChCC,KAAK,EAAE,2BAA2B;MAClCC,MAAM,EAAE,IAAI;MACZ,GAAGL;IACJ,CAAC;IAED,IAAI,CAACC,IAAI,GAAG,IAAI,CAACF,IAAI,CAACO,aAAa,CAAE,IAAI,CAACN,IAAI,CAACC,IAAK,CAAC;IACrD,IAAI,CAACC,OAAO,GAAG,IAAI,CAACH,IAAI,CAACO,aAAa,CAAE,IAAI,CAACN,IAAI,CAACE,OAAQ,CAAC;IAC3D,IAAI,CAACC,OAAO,GAAG,IAAI,CAACJ,IAAI,CAACO,aAAa,CAAE,IAAI,CAACN,IAAI,CAACG,OAAQ,CAAC;IAC3D,IAAI,CAACC,KAAK,GAAG,IAAI,CAACL,IAAI,CAACQ,gBAAgB,CAAE,IAAI,CAACP,IAAI,CAACI,KAAM,CAAC;IAE1D,IAAK,CAAE,IAAI,CAACH,IAAI,IAAI,CAAE,IAAI,CAACC,OAAO,IAAI,CAAE,IAAI,CAACC,OAAO,IAAI,CAAE,IAAI,CAACC,KAAK,CAACI,MAAM,EAAG;IAE9EC,MAAM,CAACC,gBAAgB,CAAE,QAAQ,EAAE,IAAI,CAACC,QAAQ,CAACC,IAAI,CAAE,IAAK,CAAE,CAAC;IAE/D,IAAI,CAACT,OAAO,CAACO,gBAAgB,CAAE,QAAQ,EAAE,IAAI,CAACC,QAAQ,CAACC,IAAI,CAAE,IAAK,CAAE,CAAC;IACrE,IAAI,CAACV,OAAO,CAACQ,gBAAgB,CAAE,OAAO,EAAE,IAAI,CAACG,YAAY,CAACD,IAAI,CAAE,IAAK,CAAE,CAAC;IACxE,IAAI,CAACX,IAAI,CAACS,gBAAgB,CAAE,OAAO,EAAE,IAAI,CAACI,SAAS,CAACF,IAAI,CAAE,IAAK,CAAE,CAAC;IAElE,IAAI,CAACG,QAAQ,CAAE,CAAC,EAAE,MAAO,CAAC;IAC1B,IAAI,CAACJ,QAAQ,CAAC,CAAC;EAChB;EAEAA,QAAQA,CAAA,EAAG;IACV,MAAMK,SAAS,GAAG,IAAI,CAACZ,KAAK,CAAE,CAAC,CAAE;IACjC,MAAMa,QAAQ,GAAG,IAAI,CAACb,KAAK,CAAE,IAAI,CAACA,KAAK,CAACI,MAAM,GAAG,CAAC,CAAE;IACpD,MAAMU,WAAW,GAAG,IAAI,CAACf,OAAO,CAACgB,qBAAqB,CAAC,CAAC;IACxD,MAAMC,aAAa,GAAGJ,SAAS,CAACG,qBAAqB,CAAC,CAAC;IACvD,MAAME,YAAY,GAAGJ,QAAQ,CAACE,qBAAqB,CAAC,CAAC;IAErD,IAAI,CAAClB,IAAI,CAACqB,QAAQ,GAAGF,aAAa,CAACG,IAAI,IAAIL,WAAW,CAACK,IAAI;IAC3D,IAAI,CAACrB,OAAO,CAACoB,QAAQ,GAAGD,YAAY,CAACG,KAAK,IAAIN,WAAW,CAACM,KAAK,GAAG,CAAC;EACpE;EAEAC,QAAQA,CAAA,EAAG;IACV,MAAMC,MAAM,GAAG,IAAI,CAACC,aAAa,CAAC,CAAC;IACnC,MAAMC,SAAS,GAAG,CAAE,GAAG,IAAI,CAACxB,KAAK,CAAE,CAACyB,GAAG,CAAIC,IAAI,IAAMC,IAAI,CAACC,GAAG,CAAEF,IAAI,CAACG,UAAU,GAAG,IAAI,CAAC9B,OAAO,CAAC+B,UAAU,GAAGR,MAAO,CAAE,CAAC;IAErH,OAAOE,SAAS,CAACO,OAAO,CAAEJ,IAAI,CAACK,GAAG,CAAE,GAAGR,SAAU,CAAE,CAAC;EACrD;EAEAD,aAAaA,CAAA,EAAG;IACf,MAAMU,UAAU,GAAG,IAAI,CAAClC,OAAO,CAACgB,qBAAqB,CAAC,CAAC;IACvD,MAAMmB,YAAY,GAAG7B,MAAM,CAAC8B,gBAAgB,CAAE,IAAI,CAACpC,OAAQ,CAAC;IAC5D,MAAMqC,WAAW,GAAGC,UAAU,CAAEH,YAAY,CAACE,WAAY,CAAC,IAAI,CAAC;IAE/D,OAAOH,UAAU,CAACd,IAAI,GAAGiB,WAAW;EACrC;EAEAzB,QAAQA,CAAE2B,KAAK,EAAwB;IAAA,IAAtBC,QAAQ,GAAAC,SAAA,CAAApC,MAAA,QAAAoC,SAAA,QAAAC,SAAA,GAAAD,SAAA,MAAG,QAAQ;IACnC,IAAKF,KAAK,GAAG,CAAC,IAAIA,KAAK,IAAI,IAAI,CAACtC,KAAK,CAACI,MAAM,EAAG;IAE/C,MAAMe,IAAI,GAAG,IAAI,CAACnB,KAAK,CAAEsC,KAAK,CAAE,CAACT,UAAU,GAAG,IAAI,CAACN,aAAa,CAAC,CAAC;IAElE,IAAI,CAACxB,OAAO,CAAC2C,QAAQ,CAAE;MACtBvB,IAAI,EAAEQ,IAAI,CAACgB,GAAG,CAAE,CAAC,EAAExB,IAAK,CAAC;MACzBoB;IACD,CAAE,CAAC;EACJ;EAEA7B,SAASA,CAAA,EAAG;IACX,IAAI,CAACC,QAAQ,CAAEgB,IAAI,CAACiB,KAAK,CAAEjB,IAAI,CAACgB,GAAG,CAAE,IAAI,CAACtB,QAAQ,CAAC,CAAC,GAAG,CAAC,EAAE,CAAE,CAAE,CAAE,CAAC;EAClE;EAEAZ,YAAYA,CAAA,EAAG;IACd,IAAI,CAACE,QAAQ,CAAEgB,IAAI,CAACiB,KAAK,CAAEjB,IAAI,CAACK,GAAG,CAAE,IAAI,CAACX,QAAQ,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,CAACrB,KAAK,CAACI,MAAM,GAAG,CAAE,CAAE,CAAE,CAAC;EACtF;AACD;AAEAyC,QAAQ,CAACvC,gBAAgB,CAAE,kBAAkB,EAAE,MAAM;EACpDuC,QAAQ,CAAC1C,gBAAgB,CAAE,cAAe,CAAC,CAAC2C,OAAO,CAAInD,IAAI,IAAM;IAChE,IAAIF,MAAM,CAAEE,IAAI,EAAE;MAAE,GAAGA,IAAI,CAACoD;IAAQ,CAAE,CAAC;EACxC,CAAE,CAAC;AACJ,CAAE,CAAC,C","sources":["webpack://wdg/webpack/bootstrap","webpack://wdg/webpack/runtime/define property getters","webpack://wdg/webpack/runtime/hasOwnProperty shorthand","webpack://wdg/webpack/runtime/make namespace object","webpack://wdg/./block-editor/blocks/card-slider/view-script.js"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","export class Slider {\n\t/**\n\t * Initialize a new Sections element\n\t *\n\t * @param {HTMLElement} node - the node that contains the root scrolling element\n\t * @param {object} opts -\n\t */\n\tconstructor( node, opts ) {\n\t\tthis.node = node;\n\n\t\tif ( ! this.node ) return;\n\n\t\tthis.opts = {\n\t\t\tback: '.card-slider__go--back',\n\t\t\tforward: '.card-slider__go--forward',\n\t\t\tcontent: '.card-slider__content',\n\t\t\titems: '.card-slider__content > *',\n\t\t\tsticky: true,\n\t\t\t...opts,\n\t\t};\n\n\t\tthis.back = this.node.querySelector( this.opts.back );\n\t\tthis.forward = this.node.querySelector( this.opts.forward );\n\t\tthis.content = this.node.querySelector( this.opts.content );\n\t\tthis.items = this.node.querySelectorAll( this.opts.items );\n\n\t\tif ( ! this.back || ! this.forward || ! this.content || ! this.items.length ) return;\n\n\t\twindow.addEventListener( 'resize', this.setState.bind( this ) );\n\n\t\tthis.content.addEventListener( 'scroll', this.setState.bind( this ) );\n\t\tthis.forward.addEventListener( 'click', this.forwardIndex.bind( this ) );\n\t\tthis.back.addEventListener( 'click', this.backIndex.bind( this ) );\n\n\t\tthis.setIndex( 0, 'auto' );\n\t\tthis.setState();\n\t}\n\n\tsetState() {\n\t\tconst firstItem = this.items[ 0 ];\n\t\tconst lastItem = this.items[ this.items.length - 1 ];\n\t\tconst contentRect = this.content.getBoundingClientRect();\n\t\tconst firstItemRect = firstItem.getBoundingClientRect();\n\t\tconst lastItemRect = lastItem.getBoundingClientRect();\n\n\t\tthis.back.disabled = firstItemRect.left >= contentRect.left;\n\t\tthis.forward.disabled = lastItemRect.right <= contentRect.right + 1;\n\t}\n\n\tgetIndex() {\n\t\tconst offset = this.getLeftOffset();\n\t\tconst distances = [ ...this.items ].map( ( item ) => Math.abs( item.offsetLeft - this.content.scrollLeft - offset ) );\n\n\t\treturn distances.indexOf( Math.min( ...distances ) );\n\t}\n\n\tgetLeftOffset() {\n\t\tconst contentPos = this.content.getBoundingClientRect();\n\t\tconst contentStyle = window.getComputedStyle( this.content );\n\t\tconst paddingLeft = parseFloat( contentStyle.paddingLeft ) || 0;\n\n\t\treturn contentPos.left + paddingLeft;\n\t}\n\n\tsetIndex( index, behavior = 'smooth' ) {\n\t\tif ( index < 0 || index >= this.items.length ) return;\n\n\t\tconst left = this.items[ index ].offsetLeft - this.getLeftOffset();\n\n\t\tthis.content.scrollTo( {\n\t\t\tleft: Math.max( 0, left ),\n\t\t\tbehavior,\n\t\t} );\n\t}\n\n\tbackIndex() {\n\t\tthis.setIndex( Math.round( Math.max( this.getIndex() - 1, 0 ) ) );\n\t}\n\n\tforwardIndex() {\n\t\tthis.setIndex( Math.round( Math.min( this.getIndex() + 1, this.items.length - 1 ) ) );\n\t}\n}\n\ndocument.addEventListener( 'DOMContentLoaded', () => {\n\tdocument.querySelectorAll( '.card-slider' ).forEach( ( node ) => {\n\t\tnew Slider( node, { ...node.dataset } );\n\t} );\n} );\n"],"names":["Slider","constructor","node","opts","back","forward","content","items","sticky","querySelector","querySelectorAll","length","window","addEventListener","setState","bind","forwardIndex","backIndex","setIndex","firstItem","lastItem","contentRect","getBoundingClientRect","firstItemRect","lastItemRect","disabled","left","right","getIndex","offset","getLeftOffset","distances","map","item","Math","abs","offsetLeft","scrollLeft","indexOf","min","contentPos","contentStyle","getComputedStyle","paddingLeft","parseFloat","index","behavior","arguments","undefined","scrollTo","max","round","document","forEach","dataset"],"sourceRoot":""}