{"mappings":"8XAAA,IAAAA,EAAAC,EAAA,sBAGO,MAAMC,EAAU,KASrB,SAASC,EAAUC,GACbA,EACFC,EAAAC,EAAA,CAAE,uBAAuBC,MAAK,WACT,IAAIF,EAAAL,GAAJ,CAAYQ,KAAM,CACnCC,QAAS,0BACTC,MAAO,gCAIXL,EAAAC,EAAA,CAAE,uBAAuBC,MAAK,WAC5B,MAAMI,EAAkBN,EAAAL,GAAQY,KAAKJ,MACjCG,GACFA,EAAgBE,aApBxBR,EAAAC,EAAA,CAAE,oBAAoBC,MAAK,WAKzB,OAJgB,IAAIF,EAAAL,GAAJ,CAAYQ,KAAM,CAChCC,QAAS,uBACTC,MAAO,6BAuBXI,SAASC,iBAAiB,yBAAyBC,SAAQC,IAErDA,EAAOC,UAAUC,SAAS,YAC5BF,EAAOC,UAAUE,OAAO,UACxBH,EAAOI,UAAY,IAGrBJ,EAAOK,iBAAiB,SAASC,IAC/B,MAAMC,EAAQD,EAAQE,cAChBC,EAASZ,SAASa,cAAc,OACtCD,EAAOE,UAAY,0DACnB,MAAMC,EAAUf,SAASa,cAAc,OAKvC,OAJAE,EAAQD,UAAY,kFACpBF,EAAOI,YAAYD,GACnBL,EAAMH,UAAY,GAEdG,EAAMN,UAAUC,SAAS,WAC3BK,EAAMN,UAAUE,OAAO,eACvBI,EAAMH,UAAY,KAGfG,EAAMN,UAAUC,SAAS,eAA9B,GACEK,EAAMM,YAAYJ,QAClBF,EAAMN,UAAUa,IAAI,iBAM1B5B,EAAU6B,OAAOC,WAAW,uBAAuBC,SAEnDF,OACGC,WAAW,uBACXE,aAAYC,GAAKjC,EAAUiC,EAAEF,WAEhC,MAAMG,EAAkB,KAClBL,OAAOC,WAAW,sBAAsBC,QAC1C7B,EAAAC,EAAA,CAAE,4BAA4BC,MAAK,CAAC+B,EAAGC,KACjB,IAAIlC,EAAAL,GAAJ,CAAYuC,EAAI,CAClC9B,QAAS,uBACTC,MAAO,6BAIXL,EAAAC,EAAA,CAAE,4BAA4BC,MAAK,CAAC+B,EAAGC,KACrC,MAAM5B,EAAkBN,EAAAL,GAAQY,KAAK2B,GACjC5B,GACFA,EAAgBE,cAKxBmB,OAAOV,iBAAiB,SAAUe,GAClCA;;;;;;IC1EA,SAAUL,EAAQQ,GAII,mBAAVC,QAAwBA,OAAOC,IAEzCD,OAAQD,GAC+BG,EAAAC,QAEvCD,EAAAC,QAAiBJ,IAGjBR,EAAOa,QAAUL,IAZnB,CAeCR,QAAQ,WAIX,SAASa,EAASC,EAASC,GAIzB,IAHAD,EAAUE,EAAiBF,KAGXA,EAAQG,YAAc,CACpC,IAAIC,EAAWC,EAAWL,EAAQG,aAElC,OADAC,EAASE,OAAQL,GACVG,EAGT1C,KAAKsC,QAAUA,EAEftC,KAAKuC,QAAU,GACfvC,KAAK4C,OAAQL,GAEbvC,KAAK6C,SAGP,IAAIC,EAAQT,EAAQU,UAEpBD,EAAMF,OAAS,SAAUL,GACvBvC,KAAKuC,QAyQP,SAAiBS,EAAGC,GAClB,IAAM,IAAIC,KAAQD,EAChBD,EAAGE,GAASD,EAAGC,GAEjB,OAAOF,EA7QQG,CAAQnD,KAAKuC,QAASA,IAIvC,IAAIa,EAAO,EAEPT,EAAY,GAqLhB,SAASU,EAAUC,GAEjB,IACIC,EADOD,EAAKE,aAAa,gBACRC,MAAM,KACvBlB,EAAU,GACdgB,EAAU/C,SAAS,SAAUkD,GAC3B,IAAIC,EAAOD,EAAKD,MAAM,KAClBG,EAAMD,EAAK,GAAGE,OACdC,EAAQH,EAAK,GAAGE,OACpBtB,EAASqB,GAAQE,KAGnB,IAAIzB,EAASiB,EAAMf,GA0ErB,SAASwB,EAAWC,GAClB,IAAIC,EAAM,GACV,GAAKC,MAAMC,QAASH,GAElBC,EAAMD,OACD,GAAKA,GAA4B,iBAAdA,EAAII,OAE5B,IAAM,IAAItC,EAAE,EAAGA,EAAIkC,EAAII,OAAQtC,IAC7BmC,EAAII,KAAML,EAAIlC,SAIhBmC,EAAII,KAAML,GAEZ,OAAOC,EAIT,SAASK,EAAaC,EAAUjB,GAG9B,OAAOS,GAFPT,EAAOA,GAAQhD,UACEC,iBAAkBgE,IAIrC,SAAS/B,EAAiBc,GAIxB,MAHoB,iBAARA,IACVA,EAAOhD,SAASkE,cAAelB,IAE1BA,EAaT,OAlTAR,EAAMD,OAAS,WACb7C,KAAKyE,aAEL,IAAIC,EAAO1E,KAAK0E,OAAStB,EACzBpD,KAAKsC,QAAQG,YAAciC,EAC3B/B,EAAW+B,GAAS1E,KAEpBA,KAAK2E,SAEL3E,KAAK4E,qBAAuB5E,KAAK6E,eAAeC,KAAM9E,MACtDA,KAAK+E,aAAe/E,KAAKgF,OAAOF,KAAM9E,MACtCwB,OAAOV,iBAAkB,SAAUd,KAAK4E,sBACxC5E,KAAKsC,QAAQxB,iBAAkB,OAAQd,KAAK+E,cAAc,IAG5DjC,EAAM2B,WAAa,WACjB,IAAIQ,EAAS,GAWb,GAVMjF,KAAKsC,SACT2C,EAAOZ,KAAM,gBAAkBrE,KAAKsC,SAEhCtC,KAAKuC,QAAQtC,SACjBgF,EAAOZ,KAAM,4BAA8BrE,KAAKuC,QAAQtC,SAEpDD,KAAKuC,QAAQrC,OACjB+E,EAAOZ,KAAM,0BAA4BrE,KAAKuC,QAAQrC,OAGnD+E,EAAOb,OACV,MAAM,IAAIc,MAAO,mBAAqBD,EAAOE,KAAK,QAKtDrC,EAAM6B,OAAS,WACb3E,KAAKoF,gBACLpF,KAAKqF,cACLrF,KAAKsF,UAGPxC,EAAMsC,cAAgB,WACpBpF,KAAKC,QAAUqE,EAAatE,KAAKuC,QAAQtC,QAASD,KAAKsC,UAGzDQ,EAAMuC,YAAc,WAClBrF,KAAKE,MAAQoE,EAAatE,KAAKuC,QAAQrC,MAAOF,KAAKsC,UAGrDQ,EAAMyC,iBAAmB,WACvB,OAAOvF,KAAKC,QAAQuF,QAAQ,SAAUC,GAEpC,MAAwB,QADZC,iBAAkBD,GACjBE,YAOjB7C,EAAMwC,OAAS,WACbtF,KAAK4F,cAAgB5F,KAAKuF,mBAC1BvF,KAAK6F,WAIP/C,EAAM+C,QAAU,WAEd7F,KAAK8F,cAAgB9F,KAAK4F,cAAcG,KAAK,WAC3C,OAAO,KAGT/F,KAAKgG,YAAahG,KAAKE,QAGzB4C,EAAMkD,YAAc,SAAU9F,GAC5BA,EAAMM,QAASR,KAAKiG,WAAYjG,OAGlC8C,EAAMmD,WAAa,SAAUC,GAE3B,IAAIC,EAAYC,KAAKC,IAAIC,MAAOF,KAAMpG,KAAK8F,eACvCS,EAAQvG,KAAK8F,cAAcU,QAASL,GACxCnG,KAAK4F,cAAeW,GAAQjF,YAAa4E,GAGzClG,KAAK8F,cAAeS,IAAWL,EAAKO,cAAgB,GAKtD3D,EAAM4D,OAAS,SAAUC,GACvB,IAAIzG,EAAQF,KAAK4G,cAAeD,GAEhC3G,KAAKE,MAAQF,KAAKE,MAAM2G,OAAQ3G,GAEhCF,KAAKgG,YAAa9F,IAGpB4C,EAAMgE,QAAU,SAAUH,GACxB,IAAIzG,EAAQF,KAAK4G,cAAeD,GAEhC3G,KAAKE,MAAQA,EAAM2G,OAAQ7G,KAAKE,OAEhCF,KAAK6F,WAGP/C,EAAM8D,cAAgB,SAAUD,GAC9BA,EAAQ5C,EAAW4C,GACnB,IAAII,EAAWzG,SAAS0G,yBAIxB,OAHAL,EAAMnG,SAAS,SAAU8C,GACvByD,EAASzF,YAAagC,MAEjBgB,EAAatE,KAAKuC,QAAQrC,MAAO6G,IAK1CjE,EAAMmE,oBAAsB,SAAU3D,GACpC,IAAI4D,EAAelH,KAAKsC,QAAQ6E,wBAChCnH,KAAK4F,cAAcpF,SAAS,SAAUiF,EAAQ3D,GAG5C,IAAMwB,GAAQmC,EAAO9E,SAAU2C,GAAS,CACtC,IAAI8D,EAAgB3B,EAAO4B,iBAAiBF,wBAE5CnH,KAAK8F,cAAehE,GAAMsF,EAAcE,OAASJ,EAAaK,OAE/DvH,OAKL8C,EAAM+B,eAAiB,WACrB2C,aAAcxH,KAAKyH,eACnBzH,KAAKyH,cAAgBC,WAAY,WAC/B1H,KAAK2H,qBACL7C,KAAM9E,MAAQ,MAGlB8C,EAAM6E,kBAAoB,WACxB,IAAI/B,EAAgB5F,KAAKuF,mBAErBqC,EAAehC,EAAcxB,QAAUpE,KAAK4F,cAAcxB,OAC1DyD,GAAgB,EACpB7H,KAAK4F,cAAcpF,SAAS,SAAUiF,EAAQ3D,GAC5C+F,EAAgBA,GAAiBpC,GAAUG,EAAc9D,MAEtD8F,GAAgBC,IAIrB7H,KAAK4F,cAAgBA,EACrB5F,KAAK6F,YAGP/C,EAAMkC,OAAS,SAAU8C,GACvB9H,KAAKiH,oBAAqBa,EAAMC,SAKlCjF,EAAMzC,QAAU,WAEdL,KAAKE,MAAMM,SAAS,SAAU0F,GAC5BlG,KAAKsC,QAAQhB,YAAa4E,KACzBlG,MAEHwB,OAAOwG,oBAAqB,SAAUhI,KAAK4E,sBAC3C5E,KAAKsC,QAAQ0F,oBAAqB,OAAQhI,KAAK+E,cAAc,UAEtD/E,KAAKsC,QAAQG,mBACbE,EAAW3C,KAAK0E,OA+HzB,SAAmBuD,GACjB,GAA4B,YAAvB3H,SAAS4H,WAEZ,YADAD,IAGF3H,SAASQ,iBAAkB,mBAAoBmH,GA/HjDE,EAAU,WACQ7D,EAAY,kBAClB9D,QAAS6C,MAkBrBhB,EAAQjC,KAAO,SAAUkD,GAEvB,IAAI8E,GADJ9E,EAAOd,EAAiBc,KACPA,EAAKb,YACtB,OAAO2F,GAAMzF,EAAWyF,IAK1B/F,EAAQgG,iBAAmB,SAAUC,GAkBnC,SAASC,EAAYC,EAAQC,EAAYC,GACvC,IAAIC,EAYJ,OAXAH,EAAOzI,MAAM,SAAU+B,EAAGwB,GAExB,IAAIsF,EAAUN,EAAElI,KAAMkD,EAAM,WAC5B,GAAMsF,EAAN,CAIA,IAAI9E,EAAQ8E,EAASH,GAAanC,MAAOsC,EAASF,GAElDC,OAA8BE,IAAhBF,EAA4B7E,EAAQ6E,WAE7BE,IAAhBF,EAA4BA,EAAcH,EAGnD,SAASM,EAAWN,EAAQjG,GAC1BiG,EAAOzI,MAAM,SAAU+B,EAAGwB,GACxB,IAAIsF,EAAUN,EAAElI,KAAMkD,EAAM,WACvBsF,GAEHA,EAAQhG,OAAQL,GAChBqG,EAAQtD,WAGRsD,EAAU,IAAIvG,EAASiB,EAAMf,GAC7B+F,EAAElI,KAAMkD,EAAM,UAAWsF,QA3C/BN,EAAIA,GAAK9G,OAAOuH,UAKhBT,EAAEU,GAAGJ,QAAU,SAAUK,GAEvB,GAAoB,iBAARA,EAAmB,CAE7B,IAAIP,EAAOxE,MAAMnB,UAAUmG,MAAMC,KAAMC,UAAW,GAClD,OAAOb,EAAYvI,KAAMiJ,EAAMP,GAIjC,OADAI,EAAW9I,KAAMiJ,GACVjJ,QAoCXqC,EAAQgG,mBAqDDhG","sources":["scripts/src/masonry/index.ts","node_modules/colcade/colcade.js"],"sourcesContent":["import Colcade from \"colcade\";\r\nimport $ from \"jquery\";\r\n\r\nexport const masonry = () => {\r\n $(\".js-masonry-list\").each(function () {\r\n const colcade = new Colcade(this, {\r\n columns: \".js-masonry-list-col\",\r\n items: \".js-masonry-list-item\"\r\n });\r\n return colcade;\r\n });\r\n\r\n function navLayout(mediaMatch: boolean) {\r\n if (mediaMatch) {\r\n $(\".js-masonry-navlist\").each(function () {\r\n const navColcade = new Colcade(this, {\r\n columns: \".js-masonry-navlist-col\",\r\n items: \".js-masonry-navlist-item\"\r\n });\r\n });\r\n } else {\r\n $(\".js-masonry-navlist\").each(function () {\r\n const existingColcade = Colcade.data(this);\r\n if (existingColcade) {\r\n existingColcade.destroy();\r\n }\r\n });\r\n }\r\n }\r\n\r\n document.querySelectorAll('.js-media-play-button').forEach(button => {\r\n\r\n if (button.classList.contains(\"active\")) {\r\n button.classList.remove(\"active\");\r\n button.innerHTML = \"\";\r\n }\r\n\r\n button.addEventListener('click', handler => {\r\n const _this = handler.currentTarget as HTMLElement;\r\n const button = document.createElement('div');\r\n button.className = \"btn btn--loading btn--loading-opaque btn--central-ontop\"\r\n const loading = document.createElement('div');\r\n loading.className = \"dot-typing dot-typing--play-animation dot-typing--on-top dot-typing--on-buttons\";\r\n button.appendChild(loading);\r\n _this.innerHTML = \"\";\r\n\r\n if (_this.classList.contains(\"active\")) {\r\n _this.classList.remove(\"active\");\r\n _this.innerHTML = \"\";\r\n return;\r\n }\r\n if (!_this.classList.contains(\"active\")) {\r\n _this.appendChild(button);\r\n _this.classList.add(\"active\");\r\n return;\r\n }\r\n })\r\n })\r\n\r\n navLayout(window.matchMedia(\"(min-width: 1024px)\").matches);\r\n\r\n window\r\n .matchMedia(\"(min-width: 1024px)\")\r\n .addListener(e => navLayout(e.matches));\r\n\r\n const blogPostMasonry = () => {\r\n if (window.matchMedia(\"(min-width: 426px)\").matches) {\r\n $(\".js-blog-home-blog-posts\").each((i, el) => {\r\n const blogColcade = new Colcade(el, {\r\n columns: \".js-masonry-list-col\",\r\n items: \".js-masonry-list-item\"\r\n });\r\n });\r\n } else {\r\n $(\".js-blog-home-blog-posts\").each((i, el) => {\r\n const existingColcade = Colcade.data(el);\r\n if (existingColcade) {\r\n existingColcade.destroy();\r\n }\r\n });\r\n }\r\n };\r\n window.addEventListener(\"resize\", blogPostMasonry);\r\n blogPostMasonry();\r\n};\r\n","/*!\n * Colcade v0.2.0\n * Lightweight masonry layout\n * by David DeSandro\n * MIT license\n */\n\n/*jshint browser: true, undef: true, unused: true */\n\n( function( window, factory ) {\n // universal module definition\n /*jshint strict: false */\n /*global define: false, module: false */\n if ( typeof define == 'function' && define.amd ) {\n // AMD\n define( factory );\n } else if ( typeof module == 'object' && module.exports ) {\n // CommonJS\n module.exports = factory();\n } else {\n // browser global\n window.Colcade = factory();\n }\n\n}( window, function factory() {\n\n// -------------------------- Colcade -------------------------- //\n\nfunction Colcade( element, options ) {\n element = getQueryElement( element );\n\n // do not initialize twice on same element\n if ( element && element.colcadeGUID ) {\n var instance = instances[ element.colcadeGUID ];\n instance.option( options );\n return instance;\n }\n\n this.element = element;\n // options\n this.options = {};\n this.option( options );\n // kick things off\n this.create();\n}\n\nvar proto = Colcade.prototype;\n\nproto.option = function( options ) {\n this.options = extend( this.options, options );\n};\n\n// globally unique identifiers\nvar GUID = 0;\n// internal store of all Colcade intances\nvar instances = {};\n\nproto.create = function() {\n this.errorCheck();\n // add guid for Colcade.data\n var guid = this.guid = ++GUID;\n this.element.colcadeGUID = guid;\n instances[ guid ] = this; // associate via id\n // update initial properties & layout\n this.reload();\n // events\n this._windowResizeHandler = this.onWindowResize.bind( this );\n this._loadHandler = this.onLoad.bind( this );\n window.addEventListener( 'resize', this._windowResizeHandler );\n this.element.addEventListener( 'load', this._loadHandler, true );\n};\n\nproto.errorCheck = function() {\n var errors = [];\n if ( !this.element ) {\n errors.push( 'Bad element: ' + this.element );\n }\n if ( !this.options.columns ) {\n errors.push( 'columns option required: ' + this.options.columns );\n }\n if ( !this.options.items ) {\n errors.push( 'items option required: ' + this.options.items );\n }\n\n if ( errors.length ) {\n throw new Error( '[Colcade error] ' + errors.join('. ') );\n }\n};\n\n// update properties and do layout\nproto.reload = function() {\n this.updateColumns();\n this.updateItems();\n this.layout();\n};\n\nproto.updateColumns = function() {\n this.columns = querySelect( this.options.columns, this.element );\n};\n\nproto.updateItems = function() {\n this.items = querySelect( this.options.items, this.element );\n};\n\nproto.getActiveColumns = function() {\n return this.columns.filter( function( column ) {\n var style = getComputedStyle( column );\n return style.display != 'none';\n });\n};\n\n// ----- layout ----- //\n\n// public, updates activeColumns\nproto.layout = function() {\n this.activeColumns = this.getActiveColumns();\n this._layout();\n};\n\n// private, does not update activeColumns\nproto._layout = function() {\n // reset column heights\n this.columnHeights = this.activeColumns.map( function() {\n return 0;\n });\n // layout all items\n this.layoutItems( this.items );\n};\n\nproto.layoutItems = function( items ) {\n items.forEach( this.layoutItem, this );\n};\n\nproto.layoutItem = function( item ) {\n // layout item by appending to column\n var minHeight = Math.min.apply( Math, this.columnHeights );\n var index = this.columnHeights.indexOf( minHeight );\n this.activeColumns[ index ].appendChild( item );\n // at least 1px, if item hasn't loaded\n // Not exactly accurate, but it's cool\n this.columnHeights[ index ] += item.offsetHeight || 1;\n};\n\n// ----- adding items ----- //\n\nproto.append = function( elems ) {\n var items = this.getQueryItems( elems );\n // add items to collection\n this.items = this.items.concat( items );\n // lay them out\n this.layoutItems( items );\n};\n\nproto.prepend = function( elems ) {\n var items = this.getQueryItems( elems );\n // add items to collection\n this.items = items.concat( this.items );\n // lay out everything\n this._layout();\n};\n\nproto.getQueryItems = function( elems ) {\n elems = makeArray( elems );\n var fragment = document.createDocumentFragment();\n elems.forEach( function( elem ) {\n fragment.appendChild( elem );\n });\n return querySelect( this.options.items, fragment );\n};\n\n// ----- measure column height ----- //\n\nproto.measureColumnHeight = function( elem ) {\n var boundingRect = this.element.getBoundingClientRect();\n this.activeColumns.forEach( function( column, i ) {\n // if elem, measure only that column\n // if no elem, measure all columns\n if ( !elem || column.contains( elem ) ) {\n var lastChildRect = column.lastElementChild.getBoundingClientRect();\n // not an exact calculation as it includes top border, and excludes item bottom margin\n this.columnHeights[ i ] = lastChildRect.bottom - boundingRect.top;\n }\n }, this );\n};\n\n// ----- events ----- //\n\nproto.onWindowResize = function() {\n clearTimeout( this.resizeTimeout );\n this.resizeTimeout = setTimeout( function() {\n this.onDebouncedResize();\n }.bind( this ), 100 );\n};\n\nproto.onDebouncedResize = function() {\n var activeColumns = this.getActiveColumns();\n // check if columns changed\n var isSameLength = activeColumns.length == this.activeColumns.length;\n var isSameColumns = true;\n this.activeColumns.forEach( function( column, i ) {\n isSameColumns = isSameColumns && column == activeColumns[i];\n });\n if ( isSameLength && isSameColumns ) {\n return;\n }\n // activeColumns changed\n this.activeColumns = activeColumns;\n this._layout();\n};\n\nproto.onLoad = function( event ) {\n this.measureColumnHeight( event.target );\n};\n\n// ----- destroy ----- //\n\nproto.destroy = function() {\n // move items back to container\n this.items.forEach( function( item ) {\n this.element.appendChild( item );\n }, this );\n // remove events\n window.removeEventListener( 'resize', this._windowResizeHandler );\n this.element.removeEventListener( 'load', this._loadHandler, true );\n // remove data\n delete this.element.colcadeGUID;\n delete instances[ this.guid ];\n};\n\n// -------------------------- HTML init -------------------------- //\n\ndocReady( function() {\n var dataElems = querySelect('[data-colcade]');\n dataElems.forEach( htmlInit );\n});\n\nfunction htmlInit( elem ) {\n // convert attribute \"foo: bar, qux: baz\" into object\n var attr = elem.getAttribute('data-colcade');\n var attrParts = attr.split(',');\n var options = {};\n attrParts.forEach( function( part ) {\n var pair = part.split(':');\n var key = pair[0].trim();\n var value = pair[1].trim();\n options[ key ] = value;\n });\n\n new Colcade( elem, options );\n}\n\nColcade.data = function( elem ) {\n elem = getQueryElement( elem );\n var id = elem && elem.colcadeGUID;\n return id && instances[ id ];\n};\n\n// -------------------------- jQuery -------------------------- //\n\nColcade.makeJQueryPlugin = function( $ ) {\n $ = $ || window.jQuery;\n if ( !$ ) {\n return;\n }\n\n $.fn.colcade = function( arg0 /*, arg1 */) {\n // method call $().colcade( 'method', { options } )\n if ( typeof arg0 == 'string' ) {\n // shift arguments by 1\n var args = Array.prototype.slice.call( arguments, 1 );\n return methodCall( this, arg0, args );\n }\n // just $().colcade({ options })\n plainCall( this, arg0 );\n return this;\n };\n\n function methodCall( $elems, methodName, args ) {\n var returnValue;\n $elems.each( function( i, elem ) {\n // get instance\n var colcade = $.data( elem, 'colcade' );\n if ( !colcade ) {\n return;\n }\n // apply method, get return value\n var value = colcade[ methodName ].apply( colcade, args );\n // set return value if value is returned, use only first value\n returnValue = returnValue === undefined ? value : returnValue;\n });\n return returnValue !== undefined ? returnValue : $elems;\n }\n\n function plainCall( $elems, options ) {\n $elems.each( function( i, elem ) {\n var colcade = $.data( elem, 'colcade' );\n if ( colcade ) {\n // set options & init\n colcade.option( options );\n colcade.layout();\n } else {\n // initialize new instance\n colcade = new Colcade( elem, options );\n $.data( elem, 'colcade', colcade );\n }\n });\n }\n};\n\n// try making plugin\nColcade.makeJQueryPlugin();\n\n// -------------------------- utils -------------------------- //\n\nfunction extend( a, b ) {\n for ( var prop in b ) {\n a[ prop ] = b[ prop ];\n }\n return a;\n}\n\n// turn element or nodeList into an array\nfunction makeArray( obj ) {\n var ary = [];\n if ( Array.isArray( obj ) ) {\n // use object if already an array\n ary = obj;\n } else if ( obj && typeof obj.length == 'number' ) {\n // convert nodeList to array\n for ( var i=0; i < obj.length; i++ ) {\n ary.push( obj[i] );\n }\n } else {\n // array of single index\n ary.push( obj );\n }\n return ary;\n}\n\n// get array of elements\nfunction querySelect( selector, elem ) {\n elem = elem || document;\n var elems = elem.querySelectorAll( selector );\n return makeArray( elems );\n}\n\nfunction getQueryElement( elem ) {\n if ( typeof elem == 'string' ) {\n elem = document.querySelector( elem );\n }\n return elem;\n}\n\nfunction docReady( onReady ) {\n if ( document.readyState == 'complete' ) {\n onReady();\n return;\n }\n document.addEventListener( 'DOMContentLoaded', onReady );\n}\n\n// -------------------------- end -------------------------- //\n\nreturn Colcade;\n\n}));\n"],"names":["$djxcc","parcelRequire","$1d692f2aa466225a$export$d43cc497a42ba25b","navLayout","mediaMatch","$parcel$interopDefault","$4sYka","each","this","columns","items","existingColcade","data","destroy","document","querySelectorAll","forEach","button1","classList","contains","remove","innerHTML","addEventListener","handler","_this","currentTarget","button","createElement","className","loading","appendChild","add","window","matchMedia","matches","addListener","e","blogPostMasonry","i","el","factory","define","amd","module","exports","Colcade","element","options","getQueryElement","colcadeGUID","instance","instances","option","create","proto","prototype","a","b","prop","extend","GUID","htmlInit","elem","attrParts","getAttribute","split","part","pair","key","trim","value","makeArray","obj","ary","Array","isArray","length","push","querySelect","selector","querySelector","errorCheck","guid","reload","_windowResizeHandler","onWindowResize","bind","_loadHandler","onLoad","errors","Error","join","updateColumns","updateItems","layout","getActiveColumns","filter","column","getComputedStyle","display","activeColumns","_layout","columnHeights","map","layoutItems","layoutItem","item","minHeight","Math","min","apply","index","indexOf","offsetHeight","append","elems","getQueryItems","concat","prepend","fragment","createDocumentFragment","measureColumnHeight","boundingRect","getBoundingClientRect","lastChildRect","lastElementChild","bottom","top","clearTimeout","resizeTimeout","setTimeout","onDebouncedResize","isSameLength","isSameColumns","event","target","removeEventListener","onReady","readyState","docReady","id","makeJQueryPlugin","$","methodCall","$elems","methodName","args","returnValue","colcade","undefined","plainCall","jQuery","fn","arg0","slice","call","arguments"],"version":3,"file":"masonry.7e699cd4.js.map"}