{"version":3,"sources":["plugins/pagination.js"],"names":["Pagination","$","NAME","DATA_KEY","JQUERY_NO_CONFLICT","fn","Default","anchorClass","first","firstClass","hideOnlyOnePage","href","initiateStartPageClick","last","lastClass","next","nextClass","pageClass","pageVariable","paginationClass","prev","prevClass","startPage","target","totalPages","url","visiblePages","success","Selector","PAGINATION","element","config","_config","_element","on","event","page","_onPageClick","regex","RegExp","get","replace","data","html","getFunction","removeData","each","$this","extend","twbsPagination","_jQueryInterface","call","document","ajaxStop","Constructor","noConflict","jQuery"],"mappings":"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","file":"pagination.js","sourcesContent":["const Pagination = (($) => {\r\n\r\n const NAME = 'pagination';\r\n const DATA_KEY = `bs.${NAME}`;\r\n const JQUERY_NO_CONFLICT = $.fn[NAME];\r\n\r\n const Default = {\r\n anchorClass: '',\r\n first: '↞',//'«',\r\n firstClass: '',\r\n hideOnlyOnePage: true,\r\n href: false,\r\n initiateStartPageClick: false,\r\n last: '↠',//'»',\r\n lastClass: '',\r\n next: '→',//'›',\r\n nextClass: '',\r\n pageClass: '',\r\n pageVariable: 'PageNumber',\r\n paginationClass: 'pagination',\r\n prev: '←',//'‹',\r\n prevClass: '',\r\n startPage: 1,\r\n target: null,\r\n totalPages: 1,\r\n url: false,\r\n visiblePages: 5,\r\n success: null\r\n };\r\n const Selector = {\r\n PAGINATION: `.js-${NAME}`\r\n };\r\n\r\n class Pagination {\r\n constructor(element, config) {\r\n this._config = config;\r\n this._element = element;\r\n\r\n if (this._config.target && this._config.url) {\r\n $(this._element).on('page', (event, page) => this._onPageClick(event, page));\r\n }\r\n }\r\n\r\n _onPageClick(event, page) {\r\n const regex = new RegExp(`${this._config.pageVariable}=*[^&#]*`);\r\n $.get(this._config.url.replace(regex, `${this._config.pageVariable}=${page - 1}`), (data) => {\r\n $(this._config.target).html(data);\r\n if (this._config.success) {\r\n $.getFunction(this._config.success)(data, page);\r\n }\r\n });\r\n }\r\n\r\n dispose() {\r\n $.removeData(this._element, DATA_KEY);\r\n this._config = null;\r\n this._element = null;\r\n }\r\n\r\n\r\n static _jQueryInterface() {\r\n return this.each(function () {\r\n const $this = $(this);\r\n let data = $this.data(DATA_KEY);\r\n const config = $.extend({}, Default, $this.data());\r\n if (!data) {\r\n data = new Pagination(this, config);\r\n $this.data(DATA_KEY, data).twbsPagination(config);\r\n }\r\n });\r\n }\r\n }\r\n\r\n $(() => Pagination._jQueryInterface.call($(Selector.PAGINATION)));\r\n $(document).ajaxStop(() => Pagination._jQueryInterface.call($(Selector.PAGINATION)));\r\n\r\n $.fn[NAME] = Pagination._jQueryInterface;\r\n $.fn[NAME].Constructor = Pagination;\r\n $.fn[NAME].noConflict = function () {\r\n $.fn[NAME] = JQUERY_NO_CONFLICT;\r\n return Pagination._jQueryInterface;\r\n }\r\n\r\n return Pagination;\r\n})(jQuery);"]}