{"version":3,"file":"listing.js","names":[],"sources":["../resources/modern-javascript/listing/listing.js","../resources/modern-javascript/listing.js"],"sourcesContent":["export class ListingFilters {\n    #filterable; // Instance of the Filters plugin\n    #listing; // Instance of the Listing class\n\n    constructor(container) {\n        this.container = container;\n        this.filters = container.querySelectorAll('.filterable__dimension');\n        this.resultsContainer = container.querySelector(\n            '.experience-listing-results'\n        );\n\n        this.init();\n    }\n\n    init() {\n        this.#filterable = new Filters();\n\n        this.filters.forEach(filter => {\n            const filterSelect = new Filters.Fields.Select(filter);\n            this.#filterable.addFilter(filter.dataset.name, filterSelect);\n        });\n\n        this.#listing = new Listing(this.container, {\n            hrefs: ['.pagination a'],\n            plugins: [this.#filterable],\n        });\n\n        this.#listing.addEventListener(Listing.Events.UPDATED, event => {\n            this.resultsContainer.scrollIntoView({ behavior: 'smooth' });\n        });\n    }\n}\n","import { ListingFilters } from './listing/listing.js';\n\ndocument.addEventListener('DOMContentLoaded', () => {\n    const _ = new ListingFilters(document.querySelector('.page-content'));\n});\n"],"mappings":"sLAAA,IAAa,GAAA,EAAA,EAAA,YAAA,EAAA,EAAA,EAAA,SAAA,EAAA,UAAA,CAIT,SAAA,EAAY,EAAW,CAAA,OAAA,eAAA,KAAA,EAAA,CAAA,SAAA,GAAA,MAAA,IAAA,EAAA,CAAA,EAAA,OAAA,eAAA,KAAA,EAAA,CAAA,SAAA,GAAA,MAAA,IAAA,EAAA,CAAA,EACnB,KAAK,UAAY,EACjB,KAAK,QAAU,EAAU,iBAAiB,wBAAwB,EAClE,KAAK,iBAAmB,EAAU,cAC9B,6BACJ,EAEA,KAAK,KAAK,CACd,CAAA,IAAA,EAAA,EAAA,UAkBA,MAlBA,GAEA,KAAA,UAAO,CAAA,IAAA,EAAA,KACH,EAAA,KAAA,CAAA,CAAA,CAAA,GAAmB,IAAI,QAEvB,KAAK,QAAQ,QAAA,SAAQ,EAAU,CAC3B,IAAM,EAAe,IAAI,QAAQ,OAAO,OAAO,CAAM,EACrD,EAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAiB,UAAU,EAAO,QAAQ,KAAM,CAAY,CAChE,CAAC,EAED,EAAA,KAAA,CAAA,CAAA,CAAA,GAAgB,IAAI,QAAQ,KAAK,UAAW,CACxC,MAAO,CAAC,eAAe,EACvB,QAAS,CAAA,EAAC,KAAA,CAAA,CAAA,CAAA,EAAA,CACd,CAAC,EAED,EAAA,KAAA,CAAA,CAAA,CAAA,EAAA,CAAc,iBAAiB,QAAQ,OAAO,QAAA,SAAS,EAAS,CAC5D,EAAK,iBAAiB,eAAe,CAAE,SAAU,QAAS,CAAC,CAC/D,CAAC,CACL,EAAA,CAAA,EAAA,GC5BJ,SAAS,iBAAiB,mBAAA,UAA0B,CACtC,IAAI,EAAe,SAAS,cAAc,eAAe,CAAC,CACxE,CAAC"}