ngx-bootstrap 5.6.1 → 6.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (483) hide show
  1. package/CHANGELOG.md +127 -0
  2. package/README.md +8 -1
  3. package/accordion/accordion-group.component.d.ts +3 -2
  4. package/accordion/accordion.module.d.ts +1 -1
  5. package/accordion/bundles/ngx-bootstrap-accordion.umd.js +5 -2
  6. package/accordion/bundles/ngx-bootstrap-accordion.umd.js.map +1 -1
  7. package/accordion/bundles/ngx-bootstrap-accordion.umd.min.js +1 -1
  8. package/accordion/bundles/ngx-bootstrap-accordion.umd.min.js.map +1 -1
  9. package/accordion/esm2015/accordion.config.js +6 -2
  10. package/accordion/esm2015/accordion.module.js +2 -3
  11. package/accordion/esm5/accordion.config.js +6 -2
  12. package/accordion/esm5/accordion.module.js +2 -3
  13. package/accordion/fesm2015/ngx-bootstrap-accordion.js +6 -3
  14. package/accordion/fesm2015/ngx-bootstrap-accordion.js.map +1 -1
  15. package/accordion/fesm5/ngx-bootstrap-accordion.js +6 -3
  16. package/accordion/fesm5/ngx-bootstrap-accordion.js.map +1 -1
  17. package/accordion/ngx-bootstrap-accordion.metadata.json +1 -1
  18. package/accordion/package.json +2 -2
  19. package/alert/alert.module.d.ts +1 -1
  20. package/alert/bundles/ngx-bootstrap-alert.umd.js +5 -2
  21. package/alert/bundles/ngx-bootstrap-alert.umd.js.map +1 -1
  22. package/alert/bundles/ngx-bootstrap-alert.umd.min.js +2 -2
  23. package/alert/bundles/ngx-bootstrap-alert.umd.min.js.map +1 -1
  24. package/alert/esm2015/alert.component.js +3 -3
  25. package/alert/esm2015/alert.config.js +6 -2
  26. package/alert/esm2015/alert.module.js +2 -3
  27. package/alert/esm5/alert.component.js +3 -3
  28. package/alert/esm5/alert.config.js +6 -2
  29. package/alert/esm5/alert.module.js +2 -3
  30. package/alert/fesm2015/ngx-bootstrap-alert.js +6 -3
  31. package/alert/fesm2015/ngx-bootstrap-alert.js.map +1 -1
  32. package/alert/fesm5/ngx-bootstrap-alert.js +6 -3
  33. package/alert/fesm5/ngx-bootstrap-alert.js.map +1 -1
  34. package/alert/ngx-bootstrap-alert.metadata.json +1 -1
  35. package/alert/package.json +2 -2
  36. package/buttons/bundles/ngx-bootstrap-buttons.umd.js +293 -16
  37. package/buttons/bundles/ngx-bootstrap-buttons.umd.js.map +1 -1
  38. package/buttons/bundles/ngx-bootstrap-buttons.umd.min.js +1 -1
  39. package/buttons/bundles/ngx-bootstrap-buttons.umd.min.js.map +1 -1
  40. package/buttons/button-checkbox.directive.d.ts +2 -2
  41. package/buttons/button-radio-group.directive.d.ts +12 -1
  42. package/buttons/button-radio.directive.d.ts +19 -7
  43. package/buttons/buttons.module.d.ts +1 -1
  44. package/buttons/esm2015/button-radio-group.directive.js +140 -3
  45. package/buttons/esm2015/button-radio.directive.js +98 -18
  46. package/buttons/esm2015/buttons.module.js +1 -1
  47. package/buttons/esm5/button-radio-group.directive.js +171 -3
  48. package/buttons/esm5/button-radio.directive.js +126 -17
  49. package/buttons/esm5/buttons.module.js +1 -1
  50. package/buttons/fesm2015/ngx-bootstrap-buttons.js +235 -18
  51. package/buttons/fesm2015/ngx-bootstrap-buttons.js.map +1 -1
  52. package/buttons/fesm5/ngx-bootstrap-buttons.js +294 -17
  53. package/buttons/fesm5/ngx-bootstrap-buttons.js.map +1 -1
  54. package/buttons/ngx-bootstrap-buttons.metadata.json +1 -1
  55. package/buttons/package.json +2 -2
  56. package/carousel/bundles/ngx-bootstrap-carousel.umd.js +5 -3
  57. package/carousel/bundles/ngx-bootstrap-carousel.umd.js.map +1 -1
  58. package/carousel/bundles/ngx-bootstrap-carousel.umd.min.js +1 -1
  59. package/carousel/bundles/ngx-bootstrap-carousel.umd.min.js.map +1 -1
  60. package/carousel/carousel.component.d.ts +7 -5
  61. package/carousel/carousel.module.d.ts +1 -1
  62. package/carousel/esm2015/carousel.config.js +6 -2
  63. package/carousel/esm2015/carousel.module.js +2 -4
  64. package/carousel/esm5/carousel.component.js +4 -4
  65. package/carousel/esm5/carousel.config.js +6 -2
  66. package/carousel/esm5/carousel.module.js +2 -4
  67. package/carousel/fesm2015/ngx-bootstrap-carousel.js +6 -4
  68. package/carousel/fesm2015/ngx-bootstrap-carousel.js.map +1 -1
  69. package/carousel/fesm5/ngx-bootstrap-carousel.js +6 -4
  70. package/carousel/fesm5/ngx-bootstrap-carousel.js.map +1 -1
  71. package/carousel/ngx-bootstrap-carousel.metadata.json +1 -1
  72. package/carousel/package.json +2 -2
  73. package/chronos/bundles/ngx-bootstrap-chronos.umd.js +90 -73
  74. package/chronos/bundles/ngx-bootstrap-chronos.umd.js.map +1 -1
  75. package/chronos/bundles/ngx-bootstrap-chronos.umd.min.js +69 -1
  76. package/chronos/bundles/ngx-bootstrap-chronos.umd.min.js.map +1 -1
  77. package/chronos/esm2015/create/from-anything.js +2 -2
  78. package/chronos/esm2015/duration/valid.js +4 -6
  79. package/chronos/esm2015/i18n/ar.js +1 -4
  80. package/chronos/esm2015/i18n/bg.js +18 -20
  81. package/chronos/esm2015/i18n/cs.js +45 -47
  82. package/chronos/esm2015/i18n/et.js +1 -3
  83. package/chronos/esm2015/i18n/th-be.js +21 -1
  84. package/chronos/esm2015/locale/locale.class.js +5 -3
  85. package/chronos/esm5/create/from-anything.js +2 -2
  86. package/chronos/esm5/duration/valid.js +4 -6
  87. package/chronos/esm5/i18n/ar.js +1 -4
  88. package/chronos/esm5/i18n/bg.js +18 -20
  89. package/chronos/esm5/i18n/cs.js +45 -47
  90. package/chronos/esm5/i18n/et.js +1 -3
  91. package/chronos/esm5/i18n/th-be.js +21 -1
  92. package/chronos/esm5/locale/locale.class.js +6 -3
  93. package/chronos/esm5/test/chain.js +4 -4
  94. package/chronos/fesm2015/ngx-bootstrap-chronos.js +89 -73
  95. package/chronos/fesm2015/ngx-bootstrap-chronos.js.map +1 -1
  96. package/chronos/fesm5/ngx-bootstrap-chronos.js +90 -73
  97. package/chronos/fesm5/ngx-bootstrap-chronos.js.map +1 -1
  98. package/chronos/locale/locale.class.d.ts +4 -3
  99. package/chronos/package.json +2 -2
  100. package/collapse/bundles/ngx-bootstrap-collapse.umd.js.map +1 -1
  101. package/collapse/bundles/ngx-bootstrap-collapse.umd.min.js.map +1 -1
  102. package/collapse/collapse.directive.d.ts +3 -2
  103. package/collapse/collapse.module.d.ts +1 -1
  104. package/collapse/esm2015/collapse.module.js +1 -1
  105. package/collapse/esm5/collapse.module.js +1 -1
  106. package/collapse/fesm2015/ngx-bootstrap-collapse.js.map +1 -1
  107. package/collapse/fesm5/ngx-bootstrap-collapse.js.map +1 -1
  108. package/collapse/package.json +2 -2
  109. package/component-loader/bundles/ngx-bootstrap-component-loader.umd.js +5 -4
  110. package/component-loader/bundles/ngx-bootstrap-component-loader.umd.js.map +1 -1
  111. package/component-loader/bundles/ngx-bootstrap-component-loader.umd.min.js +1 -1
  112. package/component-loader/bundles/ngx-bootstrap-component-loader.umd.min.js.map +1 -1
  113. package/component-loader/component-loader.class.d.ts +4 -3
  114. package/component-loader/esm2015/component-loader.class.js +5 -5
  115. package/component-loader/esm5/component-loader.class.js +6 -5
  116. package/component-loader/fesm2015/ngx-bootstrap-component-loader.js +4 -4
  117. package/component-loader/fesm2015/ngx-bootstrap-component-loader.js.map +1 -1
  118. package/component-loader/fesm5/ngx-bootstrap-component-loader.js +5 -4
  119. package/component-loader/fesm5/ngx-bootstrap-component-loader.js.map +1 -1
  120. package/component-loader/package.json +2 -2
  121. package/datepicker/base/bs-datepicker-container.d.ts +20 -8
  122. package/datepicker/bs-datepicker-inline.component.d.ts +6 -2
  123. package/datepicker/bs-datepicker.component.d.ts +14 -5
  124. package/datepicker/bs-datepicker.config.d.ts +41 -1
  125. package/datepicker/bs-datepicker.css +126 -5
  126. package/datepicker/bs-datepicker.css.map +4 -4
  127. package/datepicker/bs-datepicker.module.d.ts +1 -1
  128. package/datepicker/bs-datepicker.scss +25 -5
  129. package/datepicker/bs-daterangepicker-inline.component.d.ts +1 -1
  130. package/datepicker/bs-daterangepicker.component.d.ts +9 -4
  131. package/datepicker/bs-locale.service.d.ts +3 -3
  132. package/datepicker/bundles/ngx-bootstrap-datepicker.umd.js +604 -93
  133. package/datepicker/bundles/ngx-bootstrap-datepicker.umd.js.map +1 -1
  134. package/datepicker/bundles/ngx-bootstrap-datepicker.umd.min.js +2 -2
  135. package/datepicker/bundles/ngx-bootstrap-datepicker.umd.min.js.map +1 -1
  136. package/datepicker/datepicker-inner.component.d.ts +2 -1
  137. package/datepicker/datepicker.component.d.ts +2 -1
  138. package/datepicker/datepicker.module.d.ts +1 -1
  139. package/datepicker/daypicker.component.d.ts +1 -1
  140. package/datepicker/engine/flag-days-calendar.d.ts +2 -1
  141. package/datepicker/engine/flag-months-calendar.d.ts +1 -0
  142. package/datepicker/engine/flag-years-calendar.d.ts +1 -0
  143. package/datepicker/esm2015/base/bs-datepicker-container.js +38 -1
  144. package/datepicker/esm2015/bs-datepicker-inline.component.js +12 -1
  145. package/datepicker/esm2015/bs-datepicker-inline.config.js +6 -2
  146. package/datepicker/esm2015/bs-datepicker-input.directive.js +9 -1
  147. package/datepicker/esm2015/bs-datepicker.component.js +45 -6
  148. package/datepicker/esm2015/bs-datepicker.config.js +88 -2
  149. package/datepicker/esm2015/bs-datepicker.module.js +3 -10
  150. package/datepicker/esm2015/bs-daterangepicker-inline.component.js +3 -2
  151. package/datepicker/esm2015/bs-daterangepicker-inline.config.js +6 -2
  152. package/datepicker/esm2015/bs-daterangepicker-input.directive.js +11 -3
  153. package/datepicker/esm2015/bs-daterangepicker.component.js +36 -7
  154. package/datepicker/esm2015/bs-daterangepicker.config.js +6 -2
  155. package/datepicker/esm2015/datepicker.config.js +6 -2
  156. package/datepicker/esm2015/datepicker.module.js +1 -1
  157. package/datepicker/esm2015/engine/flag-days-calendar.js +22 -3
  158. package/datepicker/esm2015/engine/flag-months-calendar.js +14 -3
  159. package/datepicker/esm2015/engine/flag-years-calendar.js +14 -3
  160. package/datepicker/esm2015/models/index.js +13 -1
  161. package/datepicker/esm2015/public_api.js +1 -1
  162. package/datepicker/esm2015/reducer/bs-datepicker.actions.js +14 -1
  163. package/datepicker/esm2015/reducer/bs-datepicker.effects.js +27 -33
  164. package/datepicker/esm2015/reducer/bs-datepicker.reducer.js +10 -2
  165. package/datepicker/esm2015/reducer/bs-datepicker.state.js +3 -1
  166. package/datepicker/esm2015/themes/bs/bs-custom-dates-view.component.js +5 -2
  167. package/datepicker/esm2015/themes/bs/bs-datepicker-container.component.js +57 -5
  168. package/datepicker/esm2015/themes/bs/bs-datepicker-inline-container.component.js +2 -2
  169. package/datepicker/esm2015/themes/bs/bs-daterangepicker-container.component.js +73 -4
  170. package/datepicker/esm2015/themes/bs/bs-daterangepicker-inline-container.component.js +2 -2
  171. package/datepicker/esm2015/themes/bs/bs-days-calendar-view.component.js +42 -4
  172. package/datepicker/esm5/base/bs-datepicker-container.js +52 -1
  173. package/datepicker/esm5/bs-datepicker-inline.component.js +12 -1
  174. package/datepicker/esm5/bs-datepicker-inline.config.js +8 -4
  175. package/datepicker/esm5/bs-datepicker-input.directive.js +9 -1
  176. package/datepicker/esm5/bs-datepicker.component.js +58 -8
  177. package/datepicker/esm5/bs-datepicker.config.js +88 -2
  178. package/datepicker/esm5/bs-datepicker.module.js +3 -10
  179. package/datepicker/esm5/bs-daterangepicker-inline.component.js +3 -2
  180. package/datepicker/esm5/bs-daterangepicker-inline.config.js +8 -4
  181. package/datepicker/esm5/bs-daterangepicker-input.directive.js +11 -3
  182. package/datepicker/esm5/bs-daterangepicker.component.js +49 -9
  183. package/datepicker/esm5/bs-daterangepicker.config.js +8 -4
  184. package/datepicker/esm5/datepicker.config.js +6 -2
  185. package/datepicker/esm5/datepicker.module.js +1 -1
  186. package/datepicker/esm5/engine/flag-days-calendar.js +22 -3
  187. package/datepicker/esm5/engine/flag-months-calendar.js +14 -3
  188. package/datepicker/esm5/engine/flag-years-calendar.js +14 -3
  189. package/datepicker/esm5/engine/format-days-calendar.js +3 -3
  190. package/datepicker/esm5/models/index.js +13 -1
  191. package/datepicker/esm5/public_api.js +1 -1
  192. package/datepicker/esm5/reducer/bs-datepicker.actions.js +18 -1
  193. package/datepicker/esm5/reducer/bs-datepicker.effects.js +33 -35
  194. package/datepicker/esm5/reducer/bs-datepicker.reducer.js +10 -2
  195. package/datepicker/esm5/reducer/bs-datepicker.state.js +3 -1
  196. package/datepicker/esm5/reducer/bs-datepicker.store.js +3 -3
  197. package/datepicker/esm5/themes/bs/bs-custom-dates-view.component.js +5 -2
  198. package/datepicker/esm5/themes/bs/bs-datepicker-container.component.js +74 -8
  199. package/datepicker/esm5/themes/bs/bs-datepicker-inline-container.component.js +4 -4
  200. package/datepicker/esm5/themes/bs/bs-daterangepicker-container.component.js +92 -7
  201. package/datepicker/esm5/themes/bs/bs-daterangepicker-inline-container.component.js +4 -4
  202. package/datepicker/esm5/themes/bs/bs-days-calendar-view.component.js +25 -2
  203. package/datepicker/fesm2015/ngx-bootstrap-datepicker.js +549 -96
  204. package/datepicker/fesm2015/ngx-bootstrap-datepicker.js.map +1 -1
  205. package/datepicker/fesm5/ngx-bootstrap-datepicker.js +606 -94
  206. package/datepicker/fesm5/ngx-bootstrap-datepicker.js.map +1 -1
  207. package/datepicker/models/index.d.ts +5 -0
  208. package/datepicker/monthpicker.component.d.ts +1 -1
  209. package/datepicker/ngx-bootstrap-datepicker.metadata.json +1 -1
  210. package/datepicker/package.json +2 -2
  211. package/datepicker/public_api.d.ts +1 -1
  212. package/datepicker/reducer/bs-datepicker.actions.d.ts +3 -1
  213. package/datepicker/reducer/bs-datepicker.effects.d.ts +2 -1
  214. package/datepicker/reducer/bs-datepicker.state.d.ts +2 -1
  215. package/datepicker/themes/bs/bs-custom-dates-view.component.d.ts +1 -0
  216. package/datepicker/themes/bs/bs-datepicker-container.component.d.ts +9 -5
  217. package/datepicker/themes/bs/bs-daterangepicker-container.component.d.ts +9 -5
  218. package/datepicker/themes/bs/bs-days-calendar-view.component.d.ts +2 -0
  219. package/datepicker/utils/scss/mixins.css.map +2 -2
  220. package/datepicker/utils/scss/mixins.scss +98 -0
  221. package/datepicker/utils/scss/variables.css.map +1 -1
  222. package/datepicker/utils/scss/variables.scss +14 -0
  223. package/datepicker/yearpicker.component.d.ts +1 -1
  224. package/dropdown/bs-dropdown-container.component.d.ts +1 -1
  225. package/dropdown/bs-dropdown.directive.d.ts +12 -7
  226. package/dropdown/bs-dropdown.module.d.ts +1 -1
  227. package/dropdown/bundles/ngx-bootstrap-dropdown.umd.js +13 -8
  228. package/dropdown/bundles/ngx-bootstrap-dropdown.umd.js.map +1 -1
  229. package/dropdown/bundles/ngx-bootstrap-dropdown.umd.min.js +1 -1
  230. package/dropdown/bundles/ngx-bootstrap-dropdown.umd.min.js.map +1 -1
  231. package/dropdown/esm2015/bs-dropdown.config.js +6 -2
  232. package/dropdown/esm2015/bs-dropdown.directive.js +8 -3
  233. package/dropdown/esm2015/bs-dropdown.module.js +2 -7
  234. package/dropdown/esm5/bs-dropdown-toggle.directive.js +3 -3
  235. package/dropdown/esm5/bs-dropdown.config.js +6 -2
  236. package/dropdown/esm5/bs-dropdown.directive.js +11 -5
  237. package/dropdown/esm5/bs-dropdown.module.js +2 -7
  238. package/dropdown/fesm2015/ngx-bootstrap-dropdown.js +13 -9
  239. package/dropdown/fesm2015/ngx-bootstrap-dropdown.js.map +1 -1
  240. package/dropdown/fesm5/ngx-bootstrap-dropdown.js +14 -9
  241. package/dropdown/fesm5/ngx-bootstrap-dropdown.js.map +1 -1
  242. package/dropdown/ngx-bootstrap-dropdown.metadata.json +1 -1
  243. package/dropdown/package.json +2 -2
  244. package/locale/package.json +2 -2
  245. package/mini-ngrx/bundles/ngx-bootstrap-mini-ngrx.umd.js.map +1 -1
  246. package/mini-ngrx/bundles/ngx-bootstrap-mini-ngrx.umd.min.js.map +1 -1
  247. package/mini-ngrx/esm5/state.class.js +3 -3
  248. package/mini-ngrx/esm5/store.class.js +3 -3
  249. package/mini-ngrx/fesm5/ngx-bootstrap-mini-ngrx.js.map +1 -1
  250. package/mini-ngrx/package.json +2 -2
  251. package/modal/bs-modal-ref.service.d.ts +15 -2
  252. package/modal/bs-modal.service.d.ts +7 -4
  253. package/modal/bundles/ngx-bootstrap-modal.umd.js +154 -59
  254. package/modal/bundles/ngx-bootstrap-modal.umd.js.map +1 -1
  255. package/modal/bundles/ngx-bootstrap-modal.umd.min.js +1 -1
  256. package/modal/bundles/ngx-bootstrap-modal.umd.min.js.map +1 -1
  257. package/modal/esm2015/bs-modal-ref.service.js +20 -1
  258. package/modal/esm2015/bs-modal.service.js +102 -47
  259. package/modal/esm2015/modal-container.component.js +10 -2
  260. package/modal/esm2015/modal-options.class.js +14 -3
  261. package/modal/esm2015/modal.directive.js +10 -7
  262. package/modal/esm2015/modal.module.js +1 -1
  263. package/modal/esm2015/models/index.js +3 -1
  264. package/modal/esm2015/ngx-bootstrap-modal.js +2 -2
  265. package/modal/esm2015/public_api.js +2 -2
  266. package/modal/esm5/bs-modal-ref.service.js +19 -1
  267. package/modal/esm5/bs-modal.service.js +109 -57
  268. package/modal/esm5/modal-container.component.js +13 -2
  269. package/modal/esm5/modal-options.class.js +14 -3
  270. package/modal/esm5/modal.directive.js +9 -7
  271. package/modal/esm5/modal.module.js +1 -1
  272. package/modal/esm5/models/index.js +3 -1
  273. package/modal/esm5/ngx-bootstrap-modal.js +2 -2
  274. package/modal/esm5/public_api.js +2 -2
  275. package/modal/fesm2015/ngx-bootstrap-modal.js +148 -52
  276. package/modal/fesm2015/ngx-bootstrap-modal.js.map +1 -1
  277. package/modal/fesm5/ngx-bootstrap-modal.js +155 -61
  278. package/modal/fesm5/ngx-bootstrap-modal.js.map +1 -1
  279. package/modal/modal-backdrop.component.d.ts +4 -2
  280. package/modal/modal-container.component.d.ts +1 -0
  281. package/modal/modal-options.class.d.ts +8 -3
  282. package/modal/modal.directive.d.ts +5 -4
  283. package/modal/modal.module.d.ts +2 -2
  284. package/modal/models/index.d.ts +1 -0
  285. package/modal/ngx-bootstrap-modal.metadata.json +1 -1
  286. package/modal/package.json +2 -2
  287. package/modal/public_api.d.ts +1 -1
  288. package/package.json +2 -2
  289. package/pagination/bundles/ngx-bootstrap-pagination.umd.js +5 -2
  290. package/pagination/bundles/ngx-bootstrap-pagination.umd.js.map +1 -1
  291. package/pagination/bundles/ngx-bootstrap-pagination.umd.min.js +1 -1
  292. package/pagination/bundles/ngx-bootstrap-pagination.umd.min.js.map +1 -1
  293. package/pagination/esm2015/pagination.config.js +6 -2
  294. package/pagination/esm2015/pagination.module.js +2 -3
  295. package/pagination/esm5/pagination.config.js +6 -2
  296. package/pagination/esm5/pagination.module.js +2 -3
  297. package/pagination/fesm2015/ngx-bootstrap-pagination.js +6 -3
  298. package/pagination/fesm2015/ngx-bootstrap-pagination.js.map +1 -1
  299. package/pagination/fesm5/ngx-bootstrap-pagination.js +6 -3
  300. package/pagination/fesm5/ngx-bootstrap-pagination.js.map +1 -1
  301. package/pagination/ngx-bootstrap-pagination.metadata.json +1 -1
  302. package/pagination/package.json +2 -2
  303. package/pagination/pager.component.d.ts +8 -4
  304. package/pagination/pagination.component.d.ts +8 -4
  305. package/pagination/pagination.module.d.ts +1 -1
  306. package/popover/bundles/ngx-bootstrap-popover.umd.js +55 -3
  307. package/popover/bundles/ngx-bootstrap-popover.umd.js.map +1 -1
  308. package/popover/bundles/ngx-bootstrap-popover.umd.min.js +1 -1
  309. package/popover/bundles/ngx-bootstrap-popover.umd.min.js.map +1 -1
  310. package/popover/esm2015/popover-container.component.js +4 -1
  311. package/popover/esm2015/popover.config.js +6 -2
  312. package/popover/esm2015/popover.directive.js +39 -2
  313. package/popover/esm2015/popover.module.js +2 -3
  314. package/popover/esm5/popover-container.component.js +4 -1
  315. package/popover/esm5/popover.config.js +6 -2
  316. package/popover/esm5/popover.directive.js +48 -2
  317. package/popover/esm5/popover.module.js +2 -3
  318. package/popover/fesm2015/ngx-bootstrap-popover.js +47 -4
  319. package/popover/fesm2015/ngx-bootstrap-popover.js.map +1 -1
  320. package/popover/fesm5/ngx-bootstrap-popover.js +56 -4
  321. package/popover/fesm5/ngx-bootstrap-popover.js.map +1 -1
  322. package/popover/ngx-bootstrap-popover.metadata.json +1 -1
  323. package/popover/package.json +2 -2
  324. package/popover/popover-container.component.d.ts +2 -1
  325. package/popover/popover.directive.d.ts +10 -1
  326. package/popover/popover.module.d.ts +1 -1
  327. package/positioning/bundles/ngx-bootstrap-positioning.umd.js +7 -7
  328. package/positioning/bundles/ngx-bootstrap-positioning.umd.js.map +1 -1
  329. package/positioning/bundles/ngx-bootstrap-positioning.umd.min.js +1 -1
  330. package/positioning/bundles/ngx-bootstrap-positioning.umd.min.js.map +1 -1
  331. package/positioning/esm2015/modifiers/flip.js +3 -3
  332. package/positioning/esm2015/modifiers/preventOverflow.js +2 -2
  333. package/positioning/esm2015/modifiers/shift.js +2 -2
  334. package/positioning/esm2015/utils/computeAutoPlacement.js +2 -2
  335. package/positioning/esm2015/utils/getClientRect.js +2 -2
  336. package/positioning/esm5/modifiers/flip.js +4 -4
  337. package/positioning/esm5/modifiers/preventOverflow.js +4 -4
  338. package/positioning/esm5/modifiers/shift.js +3 -3
  339. package/positioning/esm5/utils/computeAutoPlacement.js +3 -3
  340. package/positioning/esm5/utils/getClientRect.js +3 -3
  341. package/positioning/fesm2015/ngx-bootstrap-positioning.js +6 -6
  342. package/positioning/fesm2015/ngx-bootstrap-positioning.js.map +1 -1
  343. package/positioning/fesm5/ngx-bootstrap-positioning.js +7 -7
  344. package/positioning/fesm5/ngx-bootstrap-positioning.js.map +1 -1
  345. package/positioning/package.json +2 -2
  346. package/positioning/positioning.service.d.ts +1 -1
  347. package/progressbar/bar.component.d.ts +4 -5
  348. package/progressbar/bundles/ngx-bootstrap-progressbar.umd.js +45 -66
  349. package/progressbar/bundles/ngx-bootstrap-progressbar.umd.js.map +1 -1
  350. package/progressbar/bundles/ngx-bootstrap-progressbar.umd.min.js +1 -1
  351. package/progressbar/bundles/ngx-bootstrap-progressbar.umd.min.js.map +1 -1
  352. package/progressbar/esm2015/bar.component.js +33 -48
  353. package/progressbar/esm2015/progressbar.component.js +5 -8
  354. package/progressbar/esm2015/progressbar.config.js +6 -2
  355. package/progressbar/esm2015/progressbar.module.js +2 -3
  356. package/progressbar/esm5/bar.component.js +37 -58
  357. package/progressbar/esm5/progressbar.component.js +5 -8
  358. package/progressbar/esm5/progressbar.config.js +6 -2
  359. package/progressbar/esm5/progressbar.module.js +2 -3
  360. package/progressbar/fesm2015/ngx-bootstrap-progressbar.js +42 -57
  361. package/progressbar/fesm2015/ngx-bootstrap-progressbar.js.map +1 -1
  362. package/progressbar/fesm5/ngx-bootstrap-progressbar.js +46 -67
  363. package/progressbar/fesm5/ngx-bootstrap-progressbar.js.map +1 -1
  364. package/progressbar/ngx-bootstrap-progressbar.metadata.json +1 -1
  365. package/progressbar/package.json +2 -2
  366. package/progressbar/progressbar.component.d.ts +7 -6
  367. package/progressbar/progressbar.module.d.ts +1 -1
  368. package/rating/bundles/ngx-bootstrap-rating.umd.js +5 -2
  369. package/rating/bundles/ngx-bootstrap-rating.umd.js.map +1 -1
  370. package/rating/bundles/ngx-bootstrap-rating.umd.min.js +1 -1
  371. package/rating/bundles/ngx-bootstrap-rating.umd.min.js.map +1 -1
  372. package/rating/esm2015/rating.config.js +6 -2
  373. package/rating/esm2015/rating.module.js +2 -3
  374. package/rating/esm5/rating.config.js +6 -2
  375. package/rating/esm5/rating.module.js +2 -3
  376. package/rating/fesm2015/ngx-bootstrap-rating.js +6 -3
  377. package/rating/fesm2015/ngx-bootstrap-rating.js.map +1 -1
  378. package/rating/fesm5/ngx-bootstrap-rating.js +6 -3
  379. package/rating/fesm5/ngx-bootstrap-rating.js.map +1 -1
  380. package/rating/ngx-bootstrap-rating.metadata.json +1 -1
  381. package/rating/package.json +2 -2
  382. package/rating/rating.module.d.ts +1 -1
  383. package/schematics/ng-add/index.spec.js +30 -27
  384. package/schematics/ng-add/index.spec.js.map +1 -1
  385. package/schematics/utils/index.js +18 -5
  386. package/schematics/utils/index.js.map +1 -1
  387. package/sortable/bundles/ngx-bootstrap-sortable.umd.js.map +1 -1
  388. package/sortable/bundles/ngx-bootstrap-sortable.umd.min.js.map +1 -1
  389. package/sortable/esm2015/sortable.module.js +1 -1
  390. package/sortable/esm5/sortable.component.js +4 -4
  391. package/sortable/esm5/sortable.module.js +1 -1
  392. package/sortable/fesm2015/ngx-bootstrap-sortable.js.map +1 -1
  393. package/sortable/fesm5/ngx-bootstrap-sortable.js.map +1 -1
  394. package/sortable/package.json +2 -2
  395. package/sortable/sortable.component.d.ts +2 -1
  396. package/sortable/sortable.module.d.ts +1 -1
  397. package/tabs/bundles/ngx-bootstrap-tabs.umd.js +40 -3
  398. package/tabs/bundles/ngx-bootstrap-tabs.umd.js.map +1 -1
  399. package/tabs/bundles/ngx-bootstrap-tabs.umd.min.js +1 -1
  400. package/tabs/bundles/ngx-bootstrap-tabs.umd.min.js.map +1 -1
  401. package/tabs/esm2015/tab.directive.js +2 -2
  402. package/tabs/esm2015/tabs.module.js +2 -3
  403. package/tabs/esm2015/tabset.component.js +22 -1
  404. package/tabs/esm2015/tabset.config.js +15 -2
  405. package/tabs/esm5/tab.directive.js +2 -2
  406. package/tabs/esm5/tabs.module.js +2 -3
  407. package/tabs/esm5/tabset.component.js +26 -1
  408. package/tabs/esm5/tabset.config.js +15 -2
  409. package/tabs/fesm2015/ngx-bootstrap-tabs.js +37 -4
  410. package/tabs/fesm2015/ngx-bootstrap-tabs.js.map +1 -1
  411. package/tabs/fesm5/ngx-bootstrap-tabs.js +41 -4
  412. package/tabs/fesm5/ngx-bootstrap-tabs.js.map +1 -1
  413. package/tabs/ng-transclude.directive.d.ts +2 -2
  414. package/tabs/ngx-bootstrap-tabs.metadata.json +1 -1
  415. package/tabs/package.json +2 -2
  416. package/tabs/tab.directive.d.ts +5 -3
  417. package/tabs/tabs.module.d.ts +1 -1
  418. package/tabs/tabset.component.d.ts +9 -3
  419. package/tabs/tabset.config.d.ts +2 -0
  420. package/timepicker/bundles/ngx-bootstrap-timepicker.umd.js +11 -6
  421. package/timepicker/bundles/ngx-bootstrap-timepicker.umd.js.map +1 -1
  422. package/timepicker/bundles/ngx-bootstrap-timepicker.umd.min.js +1 -1
  423. package/timepicker/bundles/ngx-bootstrap-timepicker.umd.min.js.map +1 -1
  424. package/timepicker/esm2015/timepicker-controls.util.js +4 -2
  425. package/timepicker/esm2015/timepicker.component.js +2 -2
  426. package/timepicker/esm2015/timepicker.config.js +8 -4
  427. package/timepicker/esm2015/timepicker.module.js +2 -3
  428. package/timepicker/esm5/reducer/timepicker.store.js +3 -3
  429. package/timepicker/esm5/timepicker-controls.util.js +4 -2
  430. package/timepicker/esm5/timepicker.component.js +2 -2
  431. package/timepicker/esm5/timepicker.config.js +8 -4
  432. package/timepicker/esm5/timepicker.module.js +2 -3
  433. package/timepicker/fesm2015/ngx-bootstrap-timepicker.js +12 -7
  434. package/timepicker/fesm2015/ngx-bootstrap-timepicker.js.map +1 -1
  435. package/timepicker/fesm5/ngx-bootstrap-timepicker.js +12 -7
  436. package/timepicker/fesm5/ngx-bootstrap-timepicker.js.map +1 -1
  437. package/timepicker/ngx-bootstrap-timepicker.metadata.json +1 -1
  438. package/timepicker/package.json +2 -2
  439. package/timepicker/timepicker.component.d.ts +3 -3
  440. package/timepicker/timepicker.config.d.ts +1 -1
  441. package/timepicker/timepicker.module.d.ts +1 -1
  442. package/tooltip/bundles/ngx-bootstrap-tooltip.umd.js +5 -2
  443. package/tooltip/bundles/ngx-bootstrap-tooltip.umd.js.map +1 -1
  444. package/tooltip/bundles/ngx-bootstrap-tooltip.umd.min.js +1 -1
  445. package/tooltip/bundles/ngx-bootstrap-tooltip.umd.min.js.map +1 -1
  446. package/tooltip/esm2015/tooltip.config.js +6 -2
  447. package/tooltip/esm2015/tooltip.directive.js +3 -3
  448. package/tooltip/esm2015/tooltip.module.js +2 -3
  449. package/tooltip/esm5/tooltip.config.js +6 -2
  450. package/tooltip/esm5/tooltip.directive.js +3 -3
  451. package/tooltip/esm5/tooltip.module.js +2 -3
  452. package/tooltip/fesm2015/ngx-bootstrap-tooltip.js +6 -3
  453. package/tooltip/fesm2015/ngx-bootstrap-tooltip.js.map +1 -1
  454. package/tooltip/fesm5/ngx-bootstrap-tooltip.js +6 -3
  455. package/tooltip/fesm5/ngx-bootstrap-tooltip.js.map +1 -1
  456. package/tooltip/ngx-bootstrap-tooltip.metadata.json +1 -1
  457. package/tooltip/package.json +2 -2
  458. package/tooltip/tooltip-container.component.d.ts +1 -1
  459. package/tooltip/tooltip.directive.d.ts +15 -10
  460. package/tooltip/tooltip.module.d.ts +1 -1
  461. package/typeahead/bundles/ngx-bootstrap-typeahead.umd.js +170 -19
  462. package/typeahead/bundles/ngx-bootstrap-typeahead.umd.js.map +1 -1
  463. package/typeahead/bundles/ngx-bootstrap-typeahead.umd.min.js +1 -1
  464. package/typeahead/bundles/ngx-bootstrap-typeahead.umd.min.js.map +1 -1
  465. package/typeahead/esm2015/typeahead-utils.js +35 -4
  466. package/typeahead/esm2015/typeahead.config.js +6 -2
  467. package/typeahead/esm2015/typeahead.directive.js +121 -16
  468. package/typeahead/esm2015/typeahead.module.js +2 -3
  469. package/typeahead/esm5/typeahead-utils.js +37 -6
  470. package/typeahead/esm5/typeahead.config.js +6 -2
  471. package/typeahead/esm5/typeahead.directive.js +135 -18
  472. package/typeahead/esm5/typeahead.module.js +2 -3
  473. package/typeahead/fesm2015/ngx-bootstrap-typeahead.js +160 -21
  474. package/typeahead/fesm2015/ngx-bootstrap-typeahead.js.map +1 -1
  475. package/typeahead/fesm5/ngx-bootstrap-typeahead.js +172 -21
  476. package/typeahead/fesm5/ngx-bootstrap-typeahead.js.map +1 -1
  477. package/typeahead/ngx-bootstrap-typeahead.metadata.json +1 -1
  478. package/typeahead/package.json +2 -2
  479. package/typeahead/typeahead-container.component.d.ts +14 -12
  480. package/typeahead/typeahead-utils.d.ts +1 -1
  481. package/typeahead/typeahead.directive.d.ts +20 -1
  482. package/typeahead/typeahead.module.d.ts +1 -1
  483. package/utils/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-bootstrap-pagination.umd.js","sources":["ng://ngx-bootstrap/pagination/pagination.config.ts","ng://ngx-bootstrap/pagination/pager.component.ts","ng://ngx-bootstrap/pagination/pagination.component.ts","ng://ngx-bootstrap/pagination/pagination.module.ts"],"sourcesContent":["// todo: split\nimport { Injectable } from '@angular/core';\n\nimport { ConfigModel, PagerModel } from './models';\n\n/** Provides default values for Pagination and pager components */\n@Injectable()\nexport class PaginationConfig {\n main: ConfigModel = {\n maxSize: void 0,\n itemsPerPage: 10,\n boundaryLinks: false,\n directionLinks: true,\n firstText: 'First',\n previousText: 'Previous',\n nextText: 'Next',\n lastText: 'Last',\n pageBtnClass: '',\n rotate: true\n };\n pager: PagerModel = {\n itemsPerPage: 15,\n previousText: '« Previous',\n nextText: 'Next »',\n pageBtnClass: '',\n align: true\n };\n}\n","import {\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Input,\n OnInit,\n Output,\n Provider\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { PageChangedEvent } from './pagination.component';\nimport { PaginationConfig } from './pagination.config';\n\nimport { ConfigModel, PagesModel } from './models';\n\nexport const PAGER_CONTROL_VALUE_ACCESSOR: Provider = {\n provide: NG_VALUE_ACCESSOR,\n /* tslint:disable-next-line: no-use-before-declare */\n useExisting: forwardRef(() => PagerComponent),\n multi: true\n};\n\n@Component({\n selector: 'pager',\n templateUrl: './pager.component.html',\n providers: [PAGER_CONTROL_VALUE_ACCESSOR]\n})\nexport class PagerComponent implements ControlValueAccessor, OnInit {\n config: ConfigModel;\n /** if `true` aligns each link to the sides of pager */\n @Input() align: boolean;\n /** limit number for page links in pager */\n @Input() maxSize: number;\n /** if false first and last buttons will be hidden */\n @Input() boundaryLinks: boolean;\n /** if false previous and next buttons will be hidden */\n @Input() directionLinks: boolean;\n // labels\n /** first button text */\n @Input() firstText: string;\n /** previous button text */\n @Input() previousText: string;\n /** next button text */\n @Input() nextText: string;\n /** last button text */\n @Input() lastText: string;\n /** if true current page will in the middle of pages list */\n @Input() rotate: boolean;\n // css\n /** add class to <code><li\\></code> */\n @Input() pageBtnClass: string;\n\n /** if true pagination component will be disabled */\n @Input() disabled: boolean;\n\n /** fired when total pages count changes, $event:number equals to total pages count */\n @Output() numPages: EventEmitter<number> = new EventEmitter<number>();\n /** fired when page was changed, $event:{page, itemsPerPage} equals to\n * object with current page index and number of items per page\n */\n @Output()\n pageChanged: EventEmitter<PageChangedEvent> = new EventEmitter<PageChangedEvent>();\n\n /** maximum number of items per page. If value less than 1 will display all items on one page */\n @Input()\n get itemsPerPage(): number {\n return this._itemsPerPage;\n }\n\n set itemsPerPage(v: number) {\n this._itemsPerPage = v;\n this.totalPages = this.calculateTotalPages();\n }\n\n /** total number of items in all pages */\n @Input()\n get totalItems(): number {\n return this._totalItems;\n }\n\n set totalItems(v: number) {\n this._totalItems = v;\n this.totalPages = this.calculateTotalPages();\n }\n\n get totalPages(): number {\n return this._totalPages;\n }\n\n set totalPages(v: number) {\n this._totalPages = v;\n this.numPages.emit(v);\n if (this.inited) {\n this.selectPage(this.page);\n }\n }\n\n set page(value: number) {\n const _previous = this._page;\n this._page = value > this.totalPages ? this.totalPages : value || 1;\n this.changeDetection.markForCheck();\n\n if (_previous === this._page || typeof _previous === 'undefined') {\n return;\n }\n\n this.pageChanged.emit({\n page: this._page,\n itemsPerPage: this.itemsPerPage\n });\n }\n\n get page(): number {\n return this._page;\n }\n\n onChange = Function.prototype;\n onTouched = Function.prototype;\n\n classMap: string;\n pages: PagesModel[];\n\n protected _itemsPerPage: number;\n protected _totalItems: number;\n protected _totalPages: number;\n protected inited = false;\n protected _page = 1;\n\n constructor(private elementRef: ElementRef,\n paginationConfig: PaginationConfig,\n private changeDetection: ChangeDetectorRef) {\n this.elementRef = elementRef;\n if (!this.config) {\n this.configureOptions(\n Object.assign({}, paginationConfig.main, paginationConfig.pager)\n );\n }\n }\n\n configureOptions(config: ConfigModel): void {\n this.config = Object.assign({}, config);\n }\n\n ngOnInit(): void {\n if (typeof window !== 'undefined') {\n this.classMap = this.elementRef.nativeElement.getAttribute('class') || '';\n }\n // watch for maxSize\n this.maxSize =\n typeof this.maxSize !== 'undefined' ? this.maxSize : this.config.maxSize;\n this.rotate =\n typeof this.rotate !== 'undefined' ? this.rotate : this.config.rotate;\n this.boundaryLinks =\n typeof this.boundaryLinks !== 'undefined'\n ? this.boundaryLinks\n : this.config.boundaryLinks;\n this.directionLinks =\n typeof this.directionLinks !== 'undefined'\n ? this.directionLinks\n : this.config.directionLinks;\n this.pageBtnClass =\n typeof this.pageBtnClass !== 'undefined'\n ? this.pageBtnClass\n : this.config.pageBtnClass;\n\n // base class\n this.itemsPerPage =\n typeof this.itemsPerPage !== 'undefined'\n ? this.itemsPerPage\n : this.config.itemsPerPage;\n this.totalPages = this.calculateTotalPages();\n // this class\n this.pages = this.getPages(this.page, this.totalPages);\n this.inited = true;\n }\n\n writeValue(value: number): void {\n this.page = value;\n this.pages = this.getPages(this.page, this.totalPages);\n }\n\n getText(key: string): string {\n // tslint:disable-next-line:no-any\n return (this as any)[`${key}Text`] || (this as any).config[`${key}Text`];\n }\n\n noPrevious(): boolean {\n return this.page === 1;\n }\n\n noNext(): boolean {\n return this.page === this.totalPages;\n }\n\n registerOnChange(fn: () => {}): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => {}): void {\n this.onTouched = fn;\n }\n\n selectPage(page: number, event?: Event): void {\n if (event) {\n event.preventDefault();\n }\n\n if (!this.disabled) {\n if (event && event.target) {\n // tslint:disable-next-line:no-any\n const target: any = event.target;\n target.blur();\n }\n this.writeValue(page);\n this.onChange(this.page);\n }\n }\n\n // Create page object used in template\n protected makePage(num: number,\n text: string,\n active: boolean): { number: number; text: string; active: boolean } {\n return {text, number: num, active};\n }\n\n protected getPages(currentPage: number, totalPages: number): PagesModel[] {\n const pages: PagesModel[] = [];\n\n // Default page limits\n let startPage = 1;\n let endPage = totalPages;\n const isMaxSized =\n typeof this.maxSize !== 'undefined' && this.maxSize < totalPages;\n\n // recompute if maxSize\n if (isMaxSized) {\n if (this.rotate) {\n // Current page is displayed in the middle of the visible ones\n startPage = Math.max(currentPage - Math.floor(this.maxSize / 2), 1);\n endPage = startPage + this.maxSize - 1;\n\n // Adjust if limit is exceeded\n if (endPage > totalPages) {\n endPage = totalPages;\n startPage = endPage - this.maxSize + 1;\n }\n } else {\n // Visible pages are paginated with maxSize\n startPage =\n (Math.ceil(currentPage / this.maxSize) - 1) * this.maxSize + 1;\n\n // Adjust last page if limit is exceeded\n endPage = Math.min(startPage + this.maxSize - 1, totalPages);\n }\n }\n\n // Add page number links\n for (let num = startPage; num <= endPage; num++) {\n const page = this.makePage(num, num.toString(), num === currentPage);\n pages.push(page);\n }\n\n // Add links to move between page sets\n if (isMaxSized && !this.rotate) {\n if (startPage > 1) {\n const previousPageSet = this.makePage(startPage - 1, '...', false);\n pages.unshift(previousPageSet);\n }\n\n if (endPage < totalPages) {\n const nextPageSet = this.makePage(endPage + 1, '...', false);\n pages.push(nextPageSet);\n }\n }\n\n return pages;\n }\n\n // base class\n protected calculateTotalPages(): number {\n const totalPages =\n this.itemsPerPage < 1\n ? 1\n : Math.ceil(this.totalItems / this.itemsPerPage);\n\n return Math.max(totalPages || 0, 1);\n }\n}\n","import {\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Input,\n OnInit,\n Output,\n Provider, TemplateRef\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { PaginationConfig } from './pagination.config';\nimport { ConfigModel, PagesModel, PaginationLinkContext, PaginationNumberLinkContext } from './models';\n\nexport interface PageChangedEvent {\n itemsPerPage: number;\n page: number;\n}\n\nexport const PAGINATION_CONTROL_VALUE_ACCESSOR: Provider = {\n provide: NG_VALUE_ACCESSOR,\n /* tslint:disable-next-line: no-use-before-declare */\n useExisting: forwardRef(() => PaginationComponent),\n multi: true\n};\n\n@Component({\n selector: 'pagination',\n templateUrl: './pagination.component.html',\n providers: [PAGINATION_CONTROL_VALUE_ACCESSOR]\n})\nexport class PaginationComponent implements ControlValueAccessor, OnInit {\n config: ConfigModel;\n /** if `true` aligns each link to the sides of pager */\n @Input() align: boolean;\n /** limit number for page links in pager */\n @Input() maxSize: number;\n /** if false first and last buttons will be hidden */\n @Input() boundaryLinks: boolean;\n /** if false previous and next buttons will be hidden */\n @Input() directionLinks: boolean;\n // labels\n /** first button text */\n @Input() firstText: string;\n /** previous button text */\n @Input() previousText: string;\n /** next button text */\n @Input() nextText: string;\n /** last button text */\n @Input() lastText: string;\n /** if true current page will in the middle of pages list */\n @Input() rotate: boolean;\n // css\n /** add class to <code><li\\></code> */\n @Input() pageBtnClass: string;\n /** if true pagination component will be disabled */\n @Input() disabled: boolean;\n /** custom template for page link */\n @Input() customPageTemplate: TemplateRef<PaginationNumberLinkContext>;\n /** custom template for next link */\n @Input() customNextTemplate: TemplateRef<PaginationLinkContext>;\n /** custom template for previous link */\n @Input() customPreviousTemplate: TemplateRef<PaginationLinkContext>;\n /** custom template for first link */\n @Input() customFirstTemplate: TemplateRef<PaginationLinkContext>;\n /** custom template for last link */\n @Input() customLastTemplate: TemplateRef<PaginationLinkContext>;\n\n /** fired when total pages count changes, $event:number equals to total pages count */\n @Output() numPages: EventEmitter<number> = new EventEmitter<number>();\n /** fired when page was changed, $event:{page, itemsPerPage} equals to object\n * with current page index and number of items per page\n */\n @Output()\n pageChanged = new EventEmitter<PageChangedEvent>();\n\n /** maximum number of items per page. If value less than 1 will display all items on one page */\n @Input()\n get itemsPerPage(): number {\n return this._itemsPerPage;\n }\n\n set itemsPerPage(v: number) {\n this._itemsPerPage = v;\n this.totalPages = this.calculateTotalPages();\n }\n\n /** total number of items in all pages */\n @Input()\n get totalItems(): number {\n return this._totalItems;\n }\n\n set totalItems(v: number) {\n this._totalItems = v;\n this.totalPages = this.calculateTotalPages();\n }\n\n get totalPages(): number {\n return this._totalPages;\n }\n\n set totalPages(v: number) {\n this._totalPages = v;\n this.numPages.emit(v);\n if (this.inited) {\n this.selectPage(this.page);\n }\n }\n\n set page(value: number) {\n const _previous = this._page;\n this._page = value > this.totalPages ? this.totalPages : value || 1;\n this.changeDetection.markForCheck();\n\n if (_previous === this._page || typeof _previous === 'undefined') {\n return;\n }\n\n this.pageChanged.emit({\n page: this._page,\n itemsPerPage: this.itemsPerPage\n });\n }\n\n get page(): number {\n return this._page;\n }\n\n onChange = Function.prototype;\n onTouched = Function.prototype;\n\n classMap: string;\n pages: PagesModel[];\n\n protected _itemsPerPage: number;\n protected _totalItems: number;\n protected _totalPages: number;\n protected inited = false;\n protected _page = 1;\n\n constructor(\n private elementRef: ElementRef,\n paginationConfig: PaginationConfig,\n private changeDetection: ChangeDetectorRef\n ) {\n this.elementRef = elementRef;\n if (!this.config) {\n this.configureOptions(paginationConfig.main);\n }\n }\n\n configureOptions(config: ConfigModel): void {\n this.config = Object.assign({}, config);\n }\n\n ngOnInit(): void {\n if (typeof window !== 'undefined') {\n this.classMap = this.elementRef.nativeElement.getAttribute('class') || '';\n }\n // watch for maxSize\n this.maxSize =\n typeof this.maxSize !== 'undefined' ? this.maxSize : this.config.maxSize;\n this.rotate =\n typeof this.rotate !== 'undefined' ? this.rotate : this.config.rotate;\n this.boundaryLinks =\n typeof this.boundaryLinks !== 'undefined'\n ? this.boundaryLinks\n : this.config.boundaryLinks;\n this.directionLinks =\n typeof this.directionLinks !== 'undefined'\n ? this.directionLinks\n : this.config.directionLinks;\n this.pageBtnClass =\n typeof this.pageBtnClass !== 'undefined'\n ? this.pageBtnClass\n : this.config.pageBtnClass;\n\n // base class\n this.itemsPerPage =\n typeof this.itemsPerPage !== 'undefined'\n ? this.itemsPerPage\n : this.config.itemsPerPage;\n this.totalPages = this.calculateTotalPages();\n // this class\n this.pages = this.getPages(this.page, this.totalPages);\n this.inited = true;\n }\n\n writeValue(value: number): void {\n this.page = value;\n this.pages = this.getPages(this.page, this.totalPages);\n }\n\n getText(key: string): string {\n // tslint:disable-next-line:no-any\n return (this as any)[`${key}Text`] || (this as any).config[`${key}Text`];\n }\n\n noPrevious(): boolean {\n return this.page === 1;\n }\n\n noNext(): boolean {\n return this.page === this.totalPages;\n }\n\n registerOnChange(fn: () => {}): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => {}): void {\n this.onTouched = fn;\n }\n\n selectPage(page: number, event?: Event): void {\n if (event) {\n event.preventDefault();\n }\n\n if (!this.disabled) {\n if (event && event.target) {\n // tslint:disable-next-line:no-any\n const target: any = event.target;\n target.blur();\n }\n this.writeValue(page);\n this.onChange(this.page);\n }\n }\n\n // Create page object used in template\n protected makePage(\n num: number,\n text: string,\n active: boolean\n ): { number: number; text: string; active: boolean } {\n return { text, number: num, active };\n }\n\n protected getPages(currentPage: number, totalPages: number): PagesModel[] {\n const pages: PagesModel[] = [];\n\n // Default page limits\n let startPage = 1;\n let endPage = totalPages;\n const isMaxSized =\n typeof this.maxSize !== 'undefined' && this.maxSize < totalPages;\n\n // recompute if maxSize\n if (isMaxSized) {\n if (this.rotate) {\n // Current page is displayed in the middle of the visible ones\n startPage = Math.max(currentPage - Math.floor(this.maxSize / 2), 1);\n endPage = startPage + this.maxSize - 1;\n\n // Adjust if limit is exceeded\n if (endPage > totalPages) {\n endPage = totalPages;\n startPage = endPage - this.maxSize + 1;\n }\n } else {\n // Visible pages are paginated with maxSize\n startPage =\n (Math.ceil(currentPage / this.maxSize) - 1) * this.maxSize + 1;\n\n // Adjust last page if limit is exceeded\n endPage = Math.min(startPage + this.maxSize - 1, totalPages);\n }\n }\n\n // Add page number links\n for (let num = startPage; num <= endPage; num++) {\n const page = this.makePage(num, num.toString(), num === currentPage);\n pages.push(page);\n }\n\n // Add links to move between page sets\n if (isMaxSized && !this.rotate) {\n if (startPage > 1) {\n const previousPageSet = this.makePage(startPage - 1, '...', false);\n pages.unshift(previousPageSet);\n }\n\n if (endPage < totalPages) {\n const nextPageSet = this.makePage(endPage + 1, '...', false);\n pages.push(nextPageSet);\n }\n }\n\n return pages;\n }\n\n // base class\n protected calculateTotalPages(): number {\n const totalPages =\n this.itemsPerPage < 1\n ? 1\n : Math.ceil(this.totalItems / this.itemsPerPage);\n\n return Math.max(totalPages || 0, 1);\n }\n// tslint:disable-next-line:max-file-line-count\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\nimport { PaginationConfig } from './pagination.config';\n\nimport { PagerComponent } from './pager.component';\nimport { PaginationComponent } from './pagination.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [PagerComponent, PaginationComponent],\n exports: [PagerComponent, PaginationComponent]\n})\nexport class PaginationModule {\n static forRoot(): ModuleWithProviders {\n return { ngModule: PaginationModule, providers: [PaginationConfig] };\n }\n}\n"],"names":["Injectable","NG_VALUE_ACCESSOR","forwardRef","EventEmitter","Component","ElementRef","ChangeDetectorRef","Input","Output","NgModule","CommonModule"],"mappings":"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"}
1
+ {"version":3,"file":"ngx-bootstrap-pagination.umd.js","sources":["ng://ngx-bootstrap/pagination/pagination.config.ts","ng://ngx-bootstrap/pagination/pager.component.ts","ng://ngx-bootstrap/pagination/pagination.component.ts","ng://ngx-bootstrap/pagination/pagination.module.ts"],"sourcesContent":["// todo: split\nimport { Injectable } from '@angular/core';\n\nimport { ConfigModel, PagerModel } from './models';\n\n/** Provides default values for Pagination and pager components */\n@Injectable({\n providedIn: 'root'\n})\nexport class PaginationConfig {\n main: ConfigModel = {\n maxSize: void 0,\n itemsPerPage: 10,\n boundaryLinks: false,\n directionLinks: true,\n firstText: 'First',\n previousText: 'Previous',\n nextText: 'Next',\n lastText: 'Last',\n pageBtnClass: '',\n rotate: true\n };\n pager: PagerModel = {\n itemsPerPage: 15,\n previousText: '« Previous',\n nextText: 'Next »',\n pageBtnClass: '',\n align: true\n };\n}\n","import {\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Input,\n OnInit,\n Output,\n Provider\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { PageChangedEvent } from './pagination.component';\nimport { PaginationConfig } from './pagination.config';\n\nimport { ConfigModel, PagesModel } from './models';\n\nexport const PAGER_CONTROL_VALUE_ACCESSOR: Provider = {\n provide: NG_VALUE_ACCESSOR,\n /* tslint:disable-next-line: no-use-before-declare */\n useExisting: forwardRef(() => PagerComponent),\n multi: true\n};\n\n@Component({\n selector: 'pager',\n templateUrl: './pager.component.html',\n providers: [PAGER_CONTROL_VALUE_ACCESSOR]\n})\nexport class PagerComponent implements ControlValueAccessor, OnInit {\n config: ConfigModel;\n /** if `true` aligns each link to the sides of pager */\n @Input() align: boolean;\n /** limit number for page links in pager */\n @Input() maxSize: number;\n /** if false first and last buttons will be hidden */\n @Input() boundaryLinks: boolean;\n /** if false previous and next buttons will be hidden */\n @Input() directionLinks: boolean;\n // labels\n /** first button text */\n @Input() firstText: string;\n /** previous button text */\n @Input() previousText: string;\n /** next button text */\n @Input() nextText: string;\n /** last button text */\n @Input() lastText: string;\n /** if true current page will in the middle of pages list */\n @Input() rotate: boolean;\n // css\n /** add class to <code><li\\></code> */\n @Input() pageBtnClass: string;\n\n /** if true pagination component will be disabled */\n @Input() disabled: boolean;\n\n /** fired when total pages count changes, $event:number equals to total pages count */\n @Output() numPages: EventEmitter<number> = new EventEmitter<number>();\n /** fired when page was changed, $event:{page, itemsPerPage} equals to\n * object with current page index and number of items per page\n */\n @Output()\n pageChanged: EventEmitter<PageChangedEvent> = new EventEmitter<PageChangedEvent>();\n\n /** maximum number of items per page. If value less than 1 will display all items on one page */\n @Input()\n get itemsPerPage(): number {\n return this._itemsPerPage;\n }\n\n set itemsPerPage(v: number) {\n this._itemsPerPage = v;\n this.totalPages = this.calculateTotalPages();\n }\n\n /** total number of items in all pages */\n @Input()\n get totalItems(): number {\n return this._totalItems;\n }\n\n set totalItems(v: number) {\n this._totalItems = v;\n this.totalPages = this.calculateTotalPages();\n }\n\n get totalPages(): number {\n return this._totalPages;\n }\n\n set totalPages(v: number) {\n this._totalPages = v;\n this.numPages.emit(v);\n if (this.inited) {\n this.selectPage(this.page);\n }\n }\n\n set page(value: number) {\n const _previous = this._page;\n this._page = value > this.totalPages ? this.totalPages : value || 1;\n this.changeDetection.markForCheck();\n\n if (_previous === this._page || typeof _previous === 'undefined') {\n return;\n }\n\n this.pageChanged.emit({\n page: this._page,\n itemsPerPage: this.itemsPerPage\n });\n }\n\n get page(): number {\n return this._page;\n }\n\n onChange = Function.prototype;\n onTouched = Function.prototype;\n\n classMap: string;\n pages: PagesModel[];\n\n protected _itemsPerPage: number;\n protected _totalItems: number;\n protected _totalPages: number;\n protected inited = false;\n protected _page = 1;\n\n constructor(private elementRef: ElementRef,\n paginationConfig: PaginationConfig,\n private changeDetection: ChangeDetectorRef) {\n this.elementRef = elementRef;\n if (!this.config) {\n this.configureOptions(\n Object.assign({}, paginationConfig.main, paginationConfig.pager)\n );\n }\n }\n\n configureOptions(config: ConfigModel): void {\n this.config = Object.assign({}, config);\n }\n\n ngOnInit(): void {\n if (typeof window !== 'undefined') {\n this.classMap = this.elementRef.nativeElement.getAttribute('class') || '';\n }\n // watch for maxSize\n this.maxSize =\n typeof this.maxSize !== 'undefined' ? this.maxSize : this.config.maxSize;\n this.rotate =\n typeof this.rotate !== 'undefined' ? this.rotate : this.config.rotate;\n this.boundaryLinks =\n typeof this.boundaryLinks !== 'undefined'\n ? this.boundaryLinks\n : this.config.boundaryLinks;\n this.directionLinks =\n typeof this.directionLinks !== 'undefined'\n ? this.directionLinks\n : this.config.directionLinks;\n this.pageBtnClass =\n typeof this.pageBtnClass !== 'undefined'\n ? this.pageBtnClass\n : this.config.pageBtnClass;\n\n // base class\n this.itemsPerPage =\n typeof this.itemsPerPage !== 'undefined'\n ? this.itemsPerPage\n : this.config.itemsPerPage;\n this.totalPages = this.calculateTotalPages();\n // this class\n this.pages = this.getPages(this.page, this.totalPages);\n this.inited = true;\n }\n\n writeValue(value: number): void {\n this.page = value;\n this.pages = this.getPages(this.page, this.totalPages);\n }\n\n getText(key: string): string {\n // tslint:disable-next-line:no-any\n return (this as any)[`${key}Text`] || (this as any).config[`${key}Text`];\n }\n\n noPrevious(): boolean {\n return this.page === 1;\n }\n\n noNext(): boolean {\n return this.page === this.totalPages;\n }\n\n registerOnChange(fn: () => {}): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => {}): void {\n this.onTouched = fn;\n }\n\n selectPage(page: number, event?: Event): void {\n if (event) {\n event.preventDefault();\n }\n\n if (!this.disabled) {\n if (event && event.target) {\n // tslint:disable-next-line:no-any\n const target: any = event.target;\n target.blur();\n }\n this.writeValue(page);\n this.onChange(this.page);\n }\n }\n\n // Create page object used in template\n protected makePage(num: number,\n text: string,\n active: boolean): { number: number; text: string; active: boolean } {\n return {text, number: num, active};\n }\n\n protected getPages(currentPage: number, totalPages: number): PagesModel[] {\n const pages: PagesModel[] = [];\n\n // Default page limits\n let startPage = 1;\n let endPage = totalPages;\n const isMaxSized =\n typeof this.maxSize !== 'undefined' && this.maxSize < totalPages;\n\n // recompute if maxSize\n if (isMaxSized) {\n if (this.rotate) {\n // Current page is displayed in the middle of the visible ones\n startPage = Math.max(currentPage - Math.floor(this.maxSize / 2), 1);\n endPage = startPage + this.maxSize - 1;\n\n // Adjust if limit is exceeded\n if (endPage > totalPages) {\n endPage = totalPages;\n startPage = endPage - this.maxSize + 1;\n }\n } else {\n // Visible pages are paginated with maxSize\n startPage =\n (Math.ceil(currentPage / this.maxSize) - 1) * this.maxSize + 1;\n\n // Adjust last page if limit is exceeded\n endPage = Math.min(startPage + this.maxSize - 1, totalPages);\n }\n }\n\n // Add page number links\n for (let num = startPage; num <= endPage; num++) {\n const page = this.makePage(num, num.toString(), num === currentPage);\n pages.push(page);\n }\n\n // Add links to move between page sets\n if (isMaxSized && !this.rotate) {\n if (startPage > 1) {\n const previousPageSet = this.makePage(startPage - 1, '...', false);\n pages.unshift(previousPageSet);\n }\n\n if (endPage < totalPages) {\n const nextPageSet = this.makePage(endPage + 1, '...', false);\n pages.push(nextPageSet);\n }\n }\n\n return pages;\n }\n\n // base class\n protected calculateTotalPages(): number {\n const totalPages =\n this.itemsPerPage < 1\n ? 1\n : Math.ceil(this.totalItems / this.itemsPerPage);\n\n return Math.max(totalPages || 0, 1);\n }\n}\n","import {\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Input,\n OnInit,\n Output,\n Provider, TemplateRef\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { PaginationConfig } from './pagination.config';\nimport { ConfigModel, PagesModel, PaginationLinkContext, PaginationNumberLinkContext } from './models';\n\nexport interface PageChangedEvent {\n itemsPerPage: number;\n page: number;\n}\n\nexport const PAGINATION_CONTROL_VALUE_ACCESSOR: Provider = {\n provide: NG_VALUE_ACCESSOR,\n /* tslint:disable-next-line: no-use-before-declare */\n useExisting: forwardRef(() => PaginationComponent),\n multi: true\n};\n\n@Component({\n selector: 'pagination',\n templateUrl: './pagination.component.html',\n providers: [PAGINATION_CONTROL_VALUE_ACCESSOR]\n})\nexport class PaginationComponent implements ControlValueAccessor, OnInit {\n config: ConfigModel;\n /** if `true` aligns each link to the sides of pager */\n @Input() align: boolean;\n /** limit number for page links in pager */\n @Input() maxSize: number;\n /** if false first and last buttons will be hidden */\n @Input() boundaryLinks: boolean;\n /** if false previous and next buttons will be hidden */\n @Input() directionLinks: boolean;\n // labels\n /** first button text */\n @Input() firstText: string;\n /** previous button text */\n @Input() previousText: string;\n /** next button text */\n @Input() nextText: string;\n /** last button text */\n @Input() lastText: string;\n /** if true current page will in the middle of pages list */\n @Input() rotate: boolean;\n // css\n /** add class to <code><li\\></code> */\n @Input() pageBtnClass: string;\n /** if true pagination component will be disabled */\n @Input() disabled: boolean;\n /** custom template for page link */\n @Input() customPageTemplate: TemplateRef<PaginationNumberLinkContext>;\n /** custom template for next link */\n @Input() customNextTemplate: TemplateRef<PaginationLinkContext>;\n /** custom template for previous link */\n @Input() customPreviousTemplate: TemplateRef<PaginationLinkContext>;\n /** custom template for first link */\n @Input() customFirstTemplate: TemplateRef<PaginationLinkContext>;\n /** custom template for last link */\n @Input() customLastTemplate: TemplateRef<PaginationLinkContext>;\n\n /** fired when total pages count changes, $event:number equals to total pages count */\n @Output() numPages: EventEmitter<number> = new EventEmitter<number>();\n /** fired when page was changed, $event:{page, itemsPerPage} equals to object\n * with current page index and number of items per page\n */\n @Output()\n pageChanged = new EventEmitter<PageChangedEvent>();\n\n /** maximum number of items per page. If value less than 1 will display all items on one page */\n @Input()\n get itemsPerPage(): number {\n return this._itemsPerPage;\n }\n\n set itemsPerPage(v: number) {\n this._itemsPerPage = v;\n this.totalPages = this.calculateTotalPages();\n }\n\n /** total number of items in all pages */\n @Input()\n get totalItems(): number {\n return this._totalItems;\n }\n\n set totalItems(v: number) {\n this._totalItems = v;\n this.totalPages = this.calculateTotalPages();\n }\n\n get totalPages(): number {\n return this._totalPages;\n }\n\n set totalPages(v: number) {\n this._totalPages = v;\n this.numPages.emit(v);\n if (this.inited) {\n this.selectPage(this.page);\n }\n }\n\n set page(value: number) {\n const _previous = this._page;\n this._page = value > this.totalPages ? this.totalPages : value || 1;\n this.changeDetection.markForCheck();\n\n if (_previous === this._page || typeof _previous === 'undefined') {\n return;\n }\n\n this.pageChanged.emit({\n page: this._page,\n itemsPerPage: this.itemsPerPage\n });\n }\n\n get page(): number {\n return this._page;\n }\n\n onChange = Function.prototype;\n onTouched = Function.prototype;\n\n classMap: string;\n pages: PagesModel[];\n\n protected _itemsPerPage: number;\n protected _totalItems: number;\n protected _totalPages: number;\n protected inited = false;\n protected _page = 1;\n\n constructor(\n private elementRef: ElementRef,\n paginationConfig: PaginationConfig,\n private changeDetection: ChangeDetectorRef\n ) {\n this.elementRef = elementRef;\n if (!this.config) {\n this.configureOptions(paginationConfig.main);\n }\n }\n\n configureOptions(config: ConfigModel): void {\n this.config = Object.assign({}, config);\n }\n\n ngOnInit(): void {\n if (typeof window !== 'undefined') {\n this.classMap = this.elementRef.nativeElement.getAttribute('class') || '';\n }\n // watch for maxSize\n this.maxSize =\n typeof this.maxSize !== 'undefined' ? this.maxSize : this.config.maxSize;\n this.rotate =\n typeof this.rotate !== 'undefined' ? this.rotate : this.config.rotate;\n this.boundaryLinks =\n typeof this.boundaryLinks !== 'undefined'\n ? this.boundaryLinks\n : this.config.boundaryLinks;\n this.directionLinks =\n typeof this.directionLinks !== 'undefined'\n ? this.directionLinks\n : this.config.directionLinks;\n this.pageBtnClass =\n typeof this.pageBtnClass !== 'undefined'\n ? this.pageBtnClass\n : this.config.pageBtnClass;\n\n // base class\n this.itemsPerPage =\n typeof this.itemsPerPage !== 'undefined'\n ? this.itemsPerPage\n : this.config.itemsPerPage;\n this.totalPages = this.calculateTotalPages();\n // this class\n this.pages = this.getPages(this.page, this.totalPages);\n this.inited = true;\n }\n\n writeValue(value: number): void {\n this.page = value;\n this.pages = this.getPages(this.page, this.totalPages);\n }\n\n getText(key: string): string {\n // tslint:disable-next-line:no-any\n return (this as any)[`${key}Text`] || (this as any).config[`${key}Text`];\n }\n\n noPrevious(): boolean {\n return this.page === 1;\n }\n\n noNext(): boolean {\n return this.page === this.totalPages;\n }\n\n registerOnChange(fn: () => {}): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => {}): void {\n this.onTouched = fn;\n }\n\n selectPage(page: number, event?: Event): void {\n if (event) {\n event.preventDefault();\n }\n\n if (!this.disabled) {\n if (event && event.target) {\n // tslint:disable-next-line:no-any\n const target: any = event.target;\n target.blur();\n }\n this.writeValue(page);\n this.onChange(this.page);\n }\n }\n\n // Create page object used in template\n protected makePage(\n num: number,\n text: string,\n active: boolean\n ): { number: number; text: string; active: boolean } {\n return { text, number: num, active };\n }\n\n protected getPages(currentPage: number, totalPages: number): PagesModel[] {\n const pages: PagesModel[] = [];\n\n // Default page limits\n let startPage = 1;\n let endPage = totalPages;\n const isMaxSized =\n typeof this.maxSize !== 'undefined' && this.maxSize < totalPages;\n\n // recompute if maxSize\n if (isMaxSized) {\n if (this.rotate) {\n // Current page is displayed in the middle of the visible ones\n startPage = Math.max(currentPage - Math.floor(this.maxSize / 2), 1);\n endPage = startPage + this.maxSize - 1;\n\n // Adjust if limit is exceeded\n if (endPage > totalPages) {\n endPage = totalPages;\n startPage = endPage - this.maxSize + 1;\n }\n } else {\n // Visible pages are paginated with maxSize\n startPage =\n (Math.ceil(currentPage / this.maxSize) - 1) * this.maxSize + 1;\n\n // Adjust last page if limit is exceeded\n endPage = Math.min(startPage + this.maxSize - 1, totalPages);\n }\n }\n\n // Add page number links\n for (let num = startPage; num <= endPage; num++) {\n const page = this.makePage(num, num.toString(), num === currentPage);\n pages.push(page);\n }\n\n // Add links to move between page sets\n if (isMaxSized && !this.rotate) {\n if (startPage > 1) {\n const previousPageSet = this.makePage(startPage - 1, '...', false);\n pages.unshift(previousPageSet);\n }\n\n if (endPage < totalPages) {\n const nextPageSet = this.makePage(endPage + 1, '...', false);\n pages.push(nextPageSet);\n }\n }\n\n return pages;\n }\n\n // base class\n protected calculateTotalPages(): number {\n const totalPages =\n this.itemsPerPage < 1\n ? 1\n : Math.ceil(this.totalItems / this.itemsPerPage);\n\n return Math.max(totalPages || 0, 1);\n }\n// tslint:disable-next-line:max-file-line-count\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\n\nimport { PagerComponent } from './pager.component';\nimport { PaginationComponent } from './pagination.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [PagerComponent, PaginationComponent],\n exports: [PagerComponent, PaginationComponent]\n})\nexport class PaginationModule {\n static forRoot(): ModuleWithProviders<PaginationModule> {\n return { ngModule: PaginationModule, providers: [] };\n }\n}\n"],"names":["Injectable","NG_VALUE_ACCESSOR","forwardRef","EventEmitter","Component","ElementRef","ChangeDetectorRef","Input","Output","NgModule","CommonModule"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/forms"),require("@angular/common")):"function"==typeof define&&define.amd?define("ngx-bootstrap/pagination",["exports","@angular/core","@angular/forms","@angular/common"],e):e(((t=t||self)["ngx-bootstrap"]=t["ngx-bootstrap"]||{},t["ngx-bootstrap"].pagination={}),t.ng.core,t.ng.forms,t.ng.common)}(this,(function(t,e,i,n){"use strict";var a=function(){function t(){this.main={maxSize:void 0,itemsPerPage:10,boundaryLinks:!1,directionLinks:!0,firstText:"First",previousText:"Previous",nextText:"Next",lastText:"Last",pageBtnClass:"",rotate:!0},this.pager={itemsPerPage:15,previousText:"« Previous",nextText:"Next »",pageBtnClass:"",align:!0}}return t.decorators=[{type:e.Injectable}],t}();var s={provide:i.NG_VALUE_ACCESSOR,useExisting:e.forwardRef((function(){return o})),multi:!0},o=function(){function t(t,i,n){this.elementRef=t,this.changeDetection=n,this.numPages=new e.EventEmitter,this.pageChanged=new e.EventEmitter,this.onChange=Function.prototype,this.onTouched=Function.prototype,this.inited=!1,this._page=1,this.elementRef=t,this.config||this.configureOptions(Object.assign({},i.main,i.pager))}return Object.defineProperty(t.prototype,"itemsPerPage",{get:function(){return this._itemsPerPage},set:function(t){this._itemsPerPage=t,this.totalPages=this.calculateTotalPages()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"totalItems",{get:function(){return this._totalItems},set:function(t){this._totalItems=t,this.totalPages=this.calculateTotalPages()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"totalPages",{get:function(){return this._totalPages},set:function(t){this._totalPages=t,this.numPages.emit(t),this.inited&&this.selectPage(this.page)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"page",{get:function(){return this._page},set:function(t){var e=this._page;this._page=t>this.totalPages?this.totalPages:t||1,this.changeDetection.markForCheck(),e!==this._page&&void 0!==e&&this.pageChanged.emit({page:this._page,itemsPerPage:this.itemsPerPage})},enumerable:!0,configurable:!0}),t.prototype.configureOptions=function(t){this.config=Object.assign({},t)},t.prototype.ngOnInit=function(){"undefined"!=typeof window&&(this.classMap=this.elementRef.nativeElement.getAttribute("class")||""),this.maxSize=void 0!==this.maxSize?this.maxSize:this.config.maxSize,this.rotate=void 0!==this.rotate?this.rotate:this.config.rotate,this.boundaryLinks=void 0!==this.boundaryLinks?this.boundaryLinks:this.config.boundaryLinks,this.directionLinks=void 0!==this.directionLinks?this.directionLinks:this.config.directionLinks,this.pageBtnClass=void 0!==this.pageBtnClass?this.pageBtnClass:this.config.pageBtnClass,this.itemsPerPage=void 0!==this.itemsPerPage?this.itemsPerPage:this.config.itemsPerPage,this.totalPages=this.calculateTotalPages(),this.pages=this.getPages(this.page,this.totalPages),this.inited=!0},t.prototype.writeValue=function(t){this.page=t,this.pages=this.getPages(this.page,this.totalPages)},t.prototype.getText=function(t){return this[t+"Text"]||this.config[t+"Text"]},t.prototype.noPrevious=function(){return 1===this.page},t.prototype.noNext=function(){return this.page===this.totalPages},t.prototype.registerOnChange=function(t){this.onChange=t},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.selectPage=function(t,e){if(e&&e.preventDefault(),!this.disabled){if(e&&e.target)e.target.blur();this.writeValue(t),this.onChange(this.page)}},t.prototype.makePage=function(t,e,i){return{text:e,number:t,active:i}},t.prototype.getPages=function(t,e){var i=[],n=1,a=e,s=void 0!==this.maxSize&&this.maxSize<e;s&&(this.rotate?(a=(n=Math.max(t-Math.floor(this.maxSize/2),1))+this.maxSize-1)>e&&(n=(a=e)-this.maxSize+1):(n=(Math.ceil(t/this.maxSize)-1)*this.maxSize+1,a=Math.min(n+this.maxSize-1,e)));for(var o=n;o<=a;o++){var r=this.makePage(o,o.toString(),o===t);i.push(r)}if(s&&!this.rotate){if(n>1){var g=this.makePage(n-1,"...",!1);i.unshift(g)}if(a<e){var p=this.makePage(a+1,"...",!1);i.push(p)}}return i},t.prototype.calculateTotalPages=function(){var t=this.itemsPerPage<1?1:Math.ceil(this.totalItems/this.itemsPerPage);return Math.max(t||0,1)},t.decorators=[{type:e.Component,args:[{selector:"pager",template:'<ul class="pager">\n <li [class.disabled]="noPrevious()" [class.previous]="align"\n [ngClass]="{\'pull-left\': align, \'float-left\': align}"\n class="{{ pageBtnClass }}">\n <a href (click)="selectPage(page - 1, $event)">{{ getText(\'previous\') }}</a>\n </li>\n <li [class.disabled]="noNext()" [class.next]="align"\n [ngClass]="{\'pull-right\': align, \'float-right\': align}"\n class="{{ pageBtnClass }}">\n <a href (click)="selectPage(page + 1, $event)">{{ getText(\'next\') }}</a>\n </li>\n</ul>\n',providers:[s]}]}],t.ctorParameters=function(){return[{type:e.ElementRef},{type:a},{type:e.ChangeDetectorRef}]},t.propDecorators={align:[{type:e.Input}],maxSize:[{type:e.Input}],boundaryLinks:[{type:e.Input}],directionLinks:[{type:e.Input}],firstText:[{type:e.Input}],previousText:[{type:e.Input}],nextText:[{type:e.Input}],lastText:[{type:e.Input}],rotate:[{type:e.Input}],pageBtnClass:[{type:e.Input}],disabled:[{type:e.Input}],numPages:[{type:e.Output}],pageChanged:[{type:e.Output}],itemsPerPage:[{type:e.Input}],totalItems:[{type:e.Input}]},t}();var r={provide:i.NG_VALUE_ACCESSOR,useExisting:e.forwardRef((function(){return g})),multi:!0},g=function(){function t(t,i,n){this.elementRef=t,this.changeDetection=n,this.numPages=new e.EventEmitter,this.pageChanged=new e.EventEmitter,this.onChange=Function.prototype,this.onTouched=Function.prototype,this.inited=!1,this._page=1,this.elementRef=t,this.config||this.configureOptions(i.main)}return Object.defineProperty(t.prototype,"itemsPerPage",{get:function(){return this._itemsPerPage},set:function(t){this._itemsPerPage=t,this.totalPages=this.calculateTotalPages()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"totalItems",{get:function(){return this._totalItems},set:function(t){this._totalItems=t,this.totalPages=this.calculateTotalPages()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"totalPages",{get:function(){return this._totalPages},set:function(t){this._totalPages=t,this.numPages.emit(t),this.inited&&this.selectPage(this.page)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"page",{get:function(){return this._page},set:function(t){var e=this._page;this._page=t>this.totalPages?this.totalPages:t||1,this.changeDetection.markForCheck(),e!==this._page&&void 0!==e&&this.pageChanged.emit({page:this._page,itemsPerPage:this.itemsPerPage})},enumerable:!0,configurable:!0}),t.prototype.configureOptions=function(t){this.config=Object.assign({},t)},t.prototype.ngOnInit=function(){"undefined"!=typeof window&&(this.classMap=this.elementRef.nativeElement.getAttribute("class")||""),this.maxSize=void 0!==this.maxSize?this.maxSize:this.config.maxSize,this.rotate=void 0!==this.rotate?this.rotate:this.config.rotate,this.boundaryLinks=void 0!==this.boundaryLinks?this.boundaryLinks:this.config.boundaryLinks,this.directionLinks=void 0!==this.directionLinks?this.directionLinks:this.config.directionLinks,this.pageBtnClass=void 0!==this.pageBtnClass?this.pageBtnClass:this.config.pageBtnClass,this.itemsPerPage=void 0!==this.itemsPerPage?this.itemsPerPage:this.config.itemsPerPage,this.totalPages=this.calculateTotalPages(),this.pages=this.getPages(this.page,this.totalPages),this.inited=!0},t.prototype.writeValue=function(t){this.page=t,this.pages=this.getPages(this.page,this.totalPages)},t.prototype.getText=function(t){return this[t+"Text"]||this.config[t+"Text"]},t.prototype.noPrevious=function(){return 1===this.page},t.prototype.noNext=function(){return this.page===this.totalPages},t.prototype.registerOnChange=function(t){this.onChange=t},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.selectPage=function(t,e){if(e&&e.preventDefault(),!this.disabled){if(e&&e.target)e.target.blur();this.writeValue(t),this.onChange(this.page)}},t.prototype.makePage=function(t,e,i){return{text:e,number:t,active:i}},t.prototype.getPages=function(t,e){var i=[],n=1,a=e,s=void 0!==this.maxSize&&this.maxSize<e;s&&(this.rotate?(a=(n=Math.max(t-Math.floor(this.maxSize/2),1))+this.maxSize-1)>e&&(n=(a=e)-this.maxSize+1):(n=(Math.ceil(t/this.maxSize)-1)*this.maxSize+1,a=Math.min(n+this.maxSize-1,e)));for(var o=n;o<=a;o++){var r=this.makePage(o,o.toString(),o===t);i.push(r)}if(s&&!this.rotate){if(n>1){var g=this.makePage(n-1,"...",!1);i.unshift(g)}if(a<e){var p=this.makePage(a+1,"...",!1);i.push(p)}}return i},t.prototype.calculateTotalPages=function(){var t=this.itemsPerPage<1?1:Math.ceil(this.totalItems/this.itemsPerPage);return Math.max(t||0,1)},t.decorators=[{type:e.Component,args:[{selector:"pagination",template:'<ul class="pagination" [ngClass]="classMap">\n <li class="pagination-first page-item"\n *ngIf="boundaryLinks"\n [class.disabled]="noPrevious() || disabled">\n <a class="page-link" href (click)="selectPage(1, $event)">\n <ng-container [ngTemplateOutlet]="customFirstTemplate || defaultFirstTemplate"\n [ngTemplateOutletContext]="{disabled: noPrevious() || disabled, currentPage: page}">\n </ng-container>\n </a>\n </li>\n\n <li class="pagination-prev page-item"\n *ngIf="directionLinks"\n [class.disabled]="noPrevious() || disabled">\n <a class="page-link" href (click)="selectPage(page - 1, $event)">\n <ng-container [ngTemplateOutlet]="customPreviousTemplate || defaultPreviousTemplate"\n [ngTemplateOutletContext]="{disabled: noPrevious() || disabled, currentPage: page}">\n </ng-container>\n </a>\n </li>\n\n <li *ngFor="let pg of pages"\n [class.active]="pg.active"\n [class.disabled]="disabled && !pg.active"\n class="pagination-page page-item">\n <a class="page-link" href (click)="selectPage(pg.number, $event)">\n <ng-container [ngTemplateOutlet]="customPageTemplate || defaultPageTemplate"\n [ngTemplateOutletContext]="{disabled: disabled, $implicit: pg, currentPage: page}">\n </ng-container>\n </a>\n </li>\n\n <li class="pagination-next page-item"\n *ngIf="directionLinks"\n [class.disabled]="noNext() || disabled">\n <a class="page-link" href (click)="selectPage(page + 1, $event)">\n <ng-container [ngTemplateOutlet]="customNextTemplate || defaultNextTemplate"\n [ngTemplateOutletContext]="{disabled: noNext() || disabled, currentPage: page}">\n </ng-container>\n </a>\n </li>\n\n <li class="pagination-last page-item"\n *ngIf="boundaryLinks"\n [class.disabled]="noNext() || disabled">\n <a class="page-link" href (click)="selectPage(totalPages, $event)">\n <ng-container [ngTemplateOutlet]="customLastTemplate || defaultLastTemplate"\n [ngTemplateOutletContext]="{disabled: noNext() || disabled, currentPage: page}">\n </ng-container>\n </a>\n </li>\n</ul>\n\n<ng-template #defaultPageTemplate let-page>{{ page.text }}</ng-template>\n\n<ng-template #defaultNextTemplate>{{ getText(\'next\') }}</ng-template>\n\n<ng-template #defaultPreviousTemplate>{{ getText(\'previous\') }}</ng-template>\n\n<ng-template #defaultFirstTemplate>{{ getText(\'first\') }}</ng-template>\n\n<ng-template #defaultLastTemplate>{{ getText(\'last\') }}</ng-template>\n',providers:[r]}]}],t.ctorParameters=function(){return[{type:e.ElementRef},{type:a},{type:e.ChangeDetectorRef}]},t.propDecorators={align:[{type:e.Input}],maxSize:[{type:e.Input}],boundaryLinks:[{type:e.Input}],directionLinks:[{type:e.Input}],firstText:[{type:e.Input}],previousText:[{type:e.Input}],nextText:[{type:e.Input}],lastText:[{type:e.Input}],rotate:[{type:e.Input}],pageBtnClass:[{type:e.Input}],disabled:[{type:e.Input}],customPageTemplate:[{type:e.Input}],customNextTemplate:[{type:e.Input}],customPreviousTemplate:[{type:e.Input}],customFirstTemplate:[{type:e.Input}],customLastTemplate:[{type:e.Input}],numPages:[{type:e.Output}],pageChanged:[{type:e.Output}],itemsPerPage:[{type:e.Input}],totalItems:[{type:e.Input}]},t}();var p=function(){function t(){}return t.forRoot=function(){return{ngModule:t,providers:[a]}},t.decorators=[{type:e.NgModule,args:[{imports:[n.CommonModule],declarations:[o,g],exports:[o,g]}]}],t}();t.PagerComponent=o,t.PaginationComponent=g,t.PaginationConfig=a,t.PaginationModule=p,t.ɵa=s,t.ɵb=r,Object.defineProperty(t,"__esModule",{value:!0})}));
1
+ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/forms"),require("@angular/common")):"function"==typeof define&&define.amd?define("ngx-bootstrap/pagination",["exports","@angular/core","@angular/forms","@angular/common"],e):e(((t=t||self)["ngx-bootstrap"]=t["ngx-bootstrap"]||{},t["ngx-bootstrap"].pagination={}),t.ng.core,t.ng.forms,t.ng.common)}(this,(function(t,e,i,n){"use strict";var a=function(){function t(){this.main={maxSize:void 0,itemsPerPage:10,boundaryLinks:!1,directionLinks:!0,firstText:"First",previousText:"Previous",nextText:"Next",lastText:"Last",pageBtnClass:"",rotate:!0},this.pager={itemsPerPage:15,previousText:"« Previous",nextText:"Next »",pageBtnClass:"",align:!0}}return t.decorators=[{type:e.Injectable,args:[{providedIn:"root"}]}],t.ɵprov=e["ɵɵdefineInjectable"]({factory:function(){return new t},token:t,providedIn:"root"}),t}();var s={provide:i.NG_VALUE_ACCESSOR,useExisting:e.forwardRef((function(){return o})),multi:!0},o=function(){function t(t,i,n){this.elementRef=t,this.changeDetection=n,this.numPages=new e.EventEmitter,this.pageChanged=new e.EventEmitter,this.onChange=Function.prototype,this.onTouched=Function.prototype,this.inited=!1,this._page=1,this.elementRef=t,this.config||this.configureOptions(Object.assign({},i.main,i.pager))}return Object.defineProperty(t.prototype,"itemsPerPage",{get:function(){return this._itemsPerPage},set:function(t){this._itemsPerPage=t,this.totalPages=this.calculateTotalPages()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"totalItems",{get:function(){return this._totalItems},set:function(t){this._totalItems=t,this.totalPages=this.calculateTotalPages()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"totalPages",{get:function(){return this._totalPages},set:function(t){this._totalPages=t,this.numPages.emit(t),this.inited&&this.selectPage(this.page)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"page",{get:function(){return this._page},set:function(t){var e=this._page;this._page=t>this.totalPages?this.totalPages:t||1,this.changeDetection.markForCheck(),e!==this._page&&void 0!==e&&this.pageChanged.emit({page:this._page,itemsPerPage:this.itemsPerPage})},enumerable:!0,configurable:!0}),t.prototype.configureOptions=function(t){this.config=Object.assign({},t)},t.prototype.ngOnInit=function(){"undefined"!=typeof window&&(this.classMap=this.elementRef.nativeElement.getAttribute("class")||""),this.maxSize=void 0!==this.maxSize?this.maxSize:this.config.maxSize,this.rotate=void 0!==this.rotate?this.rotate:this.config.rotate,this.boundaryLinks=void 0!==this.boundaryLinks?this.boundaryLinks:this.config.boundaryLinks,this.directionLinks=void 0!==this.directionLinks?this.directionLinks:this.config.directionLinks,this.pageBtnClass=void 0!==this.pageBtnClass?this.pageBtnClass:this.config.pageBtnClass,this.itemsPerPage=void 0!==this.itemsPerPage?this.itemsPerPage:this.config.itemsPerPage,this.totalPages=this.calculateTotalPages(),this.pages=this.getPages(this.page,this.totalPages),this.inited=!0},t.prototype.writeValue=function(t){this.page=t,this.pages=this.getPages(this.page,this.totalPages)},t.prototype.getText=function(t){return this[t+"Text"]||this.config[t+"Text"]},t.prototype.noPrevious=function(){return 1===this.page},t.prototype.noNext=function(){return this.page===this.totalPages},t.prototype.registerOnChange=function(t){this.onChange=t},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.selectPage=function(t,e){if(e&&e.preventDefault(),!this.disabled){if(e&&e.target)e.target.blur();this.writeValue(t),this.onChange(this.page)}},t.prototype.makePage=function(t,e,i){return{text:e,number:t,active:i}},t.prototype.getPages=function(t,e){var i=[],n=1,a=e,s=void 0!==this.maxSize&&this.maxSize<e;s&&(this.rotate?(a=(n=Math.max(t-Math.floor(this.maxSize/2),1))+this.maxSize-1)>e&&(n=(a=e)-this.maxSize+1):(n=(Math.ceil(t/this.maxSize)-1)*this.maxSize+1,a=Math.min(n+this.maxSize-1,e)));for(var o=n;o<=a;o++){var r=this.makePage(o,o.toString(),o===t);i.push(r)}if(s&&!this.rotate){if(n>1){var g=this.makePage(n-1,"...",!1);i.unshift(g)}if(a<e){var p=this.makePage(a+1,"...",!1);i.push(p)}}return i},t.prototype.calculateTotalPages=function(){var t=this.itemsPerPage<1?1:Math.ceil(this.totalItems/this.itemsPerPage);return Math.max(t||0,1)},t.decorators=[{type:e.Component,args:[{selector:"pager",template:'<ul class="pager">\n <li [class.disabled]="noPrevious()" [class.previous]="align"\n [ngClass]="{\'pull-left\': align, \'float-left\': align}"\n class="{{ pageBtnClass }}">\n <a href (click)="selectPage(page - 1, $event)">{{ getText(\'previous\') }}</a>\n </li>\n <li [class.disabled]="noNext()" [class.next]="align"\n [ngClass]="{\'pull-right\': align, \'float-right\': align}"\n class="{{ pageBtnClass }}">\n <a href (click)="selectPage(page + 1, $event)">{{ getText(\'next\') }}</a>\n </li>\n</ul>\n',providers:[s]}]}],t.ctorParameters=function(){return[{type:e.ElementRef},{type:a},{type:e.ChangeDetectorRef}]},t.propDecorators={align:[{type:e.Input}],maxSize:[{type:e.Input}],boundaryLinks:[{type:e.Input}],directionLinks:[{type:e.Input}],firstText:[{type:e.Input}],previousText:[{type:e.Input}],nextText:[{type:e.Input}],lastText:[{type:e.Input}],rotate:[{type:e.Input}],pageBtnClass:[{type:e.Input}],disabled:[{type:e.Input}],numPages:[{type:e.Output}],pageChanged:[{type:e.Output}],itemsPerPage:[{type:e.Input}],totalItems:[{type:e.Input}]},t}();var r={provide:i.NG_VALUE_ACCESSOR,useExisting:e.forwardRef((function(){return g})),multi:!0},g=function(){function t(t,i,n){this.elementRef=t,this.changeDetection=n,this.numPages=new e.EventEmitter,this.pageChanged=new e.EventEmitter,this.onChange=Function.prototype,this.onTouched=Function.prototype,this.inited=!1,this._page=1,this.elementRef=t,this.config||this.configureOptions(i.main)}return Object.defineProperty(t.prototype,"itemsPerPage",{get:function(){return this._itemsPerPage},set:function(t){this._itemsPerPage=t,this.totalPages=this.calculateTotalPages()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"totalItems",{get:function(){return this._totalItems},set:function(t){this._totalItems=t,this.totalPages=this.calculateTotalPages()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"totalPages",{get:function(){return this._totalPages},set:function(t){this._totalPages=t,this.numPages.emit(t),this.inited&&this.selectPage(this.page)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"page",{get:function(){return this._page},set:function(t){var e=this._page;this._page=t>this.totalPages?this.totalPages:t||1,this.changeDetection.markForCheck(),e!==this._page&&void 0!==e&&this.pageChanged.emit({page:this._page,itemsPerPage:this.itemsPerPage})},enumerable:!0,configurable:!0}),t.prototype.configureOptions=function(t){this.config=Object.assign({},t)},t.prototype.ngOnInit=function(){"undefined"!=typeof window&&(this.classMap=this.elementRef.nativeElement.getAttribute("class")||""),this.maxSize=void 0!==this.maxSize?this.maxSize:this.config.maxSize,this.rotate=void 0!==this.rotate?this.rotate:this.config.rotate,this.boundaryLinks=void 0!==this.boundaryLinks?this.boundaryLinks:this.config.boundaryLinks,this.directionLinks=void 0!==this.directionLinks?this.directionLinks:this.config.directionLinks,this.pageBtnClass=void 0!==this.pageBtnClass?this.pageBtnClass:this.config.pageBtnClass,this.itemsPerPage=void 0!==this.itemsPerPage?this.itemsPerPage:this.config.itemsPerPage,this.totalPages=this.calculateTotalPages(),this.pages=this.getPages(this.page,this.totalPages),this.inited=!0},t.prototype.writeValue=function(t){this.page=t,this.pages=this.getPages(this.page,this.totalPages)},t.prototype.getText=function(t){return this[t+"Text"]||this.config[t+"Text"]},t.prototype.noPrevious=function(){return 1===this.page},t.prototype.noNext=function(){return this.page===this.totalPages},t.prototype.registerOnChange=function(t){this.onChange=t},t.prototype.registerOnTouched=function(t){this.onTouched=t},t.prototype.selectPage=function(t,e){if(e&&e.preventDefault(),!this.disabled){if(e&&e.target)e.target.blur();this.writeValue(t),this.onChange(this.page)}},t.prototype.makePage=function(t,e,i){return{text:e,number:t,active:i}},t.prototype.getPages=function(t,e){var i=[],n=1,a=e,s=void 0!==this.maxSize&&this.maxSize<e;s&&(this.rotate?(a=(n=Math.max(t-Math.floor(this.maxSize/2),1))+this.maxSize-1)>e&&(n=(a=e)-this.maxSize+1):(n=(Math.ceil(t/this.maxSize)-1)*this.maxSize+1,a=Math.min(n+this.maxSize-1,e)));for(var o=n;o<=a;o++){var r=this.makePage(o,o.toString(),o===t);i.push(r)}if(s&&!this.rotate){if(n>1){var g=this.makePage(n-1,"...",!1);i.unshift(g)}if(a<e){var p=this.makePage(a+1,"...",!1);i.push(p)}}return i},t.prototype.calculateTotalPages=function(){var t=this.itemsPerPage<1?1:Math.ceil(this.totalItems/this.itemsPerPage);return Math.max(t||0,1)},t.decorators=[{type:e.Component,args:[{selector:"pagination",template:'<ul class="pagination" [ngClass]="classMap">\n <li class="pagination-first page-item"\n *ngIf="boundaryLinks"\n [class.disabled]="noPrevious() || disabled">\n <a class="page-link" href (click)="selectPage(1, $event)">\n <ng-container [ngTemplateOutlet]="customFirstTemplate || defaultFirstTemplate"\n [ngTemplateOutletContext]="{disabled: noPrevious() || disabled, currentPage: page}">\n </ng-container>\n </a>\n </li>\n\n <li class="pagination-prev page-item"\n *ngIf="directionLinks"\n [class.disabled]="noPrevious() || disabled">\n <a class="page-link" href (click)="selectPage(page - 1, $event)">\n <ng-container [ngTemplateOutlet]="customPreviousTemplate || defaultPreviousTemplate"\n [ngTemplateOutletContext]="{disabled: noPrevious() || disabled, currentPage: page}">\n </ng-container>\n </a>\n </li>\n\n <li *ngFor="let pg of pages"\n [class.active]="pg.active"\n [class.disabled]="disabled && !pg.active"\n class="pagination-page page-item">\n <a class="page-link" href (click)="selectPage(pg.number, $event)">\n <ng-container [ngTemplateOutlet]="customPageTemplate || defaultPageTemplate"\n [ngTemplateOutletContext]="{disabled: disabled, $implicit: pg, currentPage: page}">\n </ng-container>\n </a>\n </li>\n\n <li class="pagination-next page-item"\n *ngIf="directionLinks"\n [class.disabled]="noNext() || disabled">\n <a class="page-link" href (click)="selectPage(page + 1, $event)">\n <ng-container [ngTemplateOutlet]="customNextTemplate || defaultNextTemplate"\n [ngTemplateOutletContext]="{disabled: noNext() || disabled, currentPage: page}">\n </ng-container>\n </a>\n </li>\n\n <li class="pagination-last page-item"\n *ngIf="boundaryLinks"\n [class.disabled]="noNext() || disabled">\n <a class="page-link" href (click)="selectPage(totalPages, $event)">\n <ng-container [ngTemplateOutlet]="customLastTemplate || defaultLastTemplate"\n [ngTemplateOutletContext]="{disabled: noNext() || disabled, currentPage: page}">\n </ng-container>\n </a>\n </li>\n</ul>\n\n<ng-template #defaultPageTemplate let-page>{{ page.text }}</ng-template>\n\n<ng-template #defaultNextTemplate>{{ getText(\'next\') }}</ng-template>\n\n<ng-template #defaultPreviousTemplate>{{ getText(\'previous\') }}</ng-template>\n\n<ng-template #defaultFirstTemplate>{{ getText(\'first\') }}</ng-template>\n\n<ng-template #defaultLastTemplate>{{ getText(\'last\') }}</ng-template>\n',providers:[r]}]}],t.ctorParameters=function(){return[{type:e.ElementRef},{type:a},{type:e.ChangeDetectorRef}]},t.propDecorators={align:[{type:e.Input}],maxSize:[{type:e.Input}],boundaryLinks:[{type:e.Input}],directionLinks:[{type:e.Input}],firstText:[{type:e.Input}],previousText:[{type:e.Input}],nextText:[{type:e.Input}],lastText:[{type:e.Input}],rotate:[{type:e.Input}],pageBtnClass:[{type:e.Input}],disabled:[{type:e.Input}],customPageTemplate:[{type:e.Input}],customNextTemplate:[{type:e.Input}],customPreviousTemplate:[{type:e.Input}],customFirstTemplate:[{type:e.Input}],customLastTemplate:[{type:e.Input}],numPages:[{type:e.Output}],pageChanged:[{type:e.Output}],itemsPerPage:[{type:e.Input}],totalItems:[{type:e.Input}]},t}();var p=function(){function t(){}return t.forRoot=function(){return{ngModule:t,providers:[]}},t.decorators=[{type:e.NgModule,args:[{imports:[n.CommonModule],declarations:[o,g],exports:[o,g]}]}],t}();t.PagerComponent=o,t.PaginationComponent=g,t.PaginationConfig=a,t.PaginationModule=p,t.ɵa=s,t.ɵb=r,Object.defineProperty(t,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=ngx-bootstrap-pagination.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["ng://ngx-bootstrap/pagination/pagination.config.ts","ng://ngx-bootstrap/pagination/pager.component.ts","ng://ngx-bootstrap/pagination/pagination.component.ts","ng://ngx-bootstrap/pagination/pagination.module.ts"],"names":["PaginationConfig","this","main","maxSize","itemsPerPage","boundaryLinks","directionLinks","firstText","previousText","nextText","lastText","pageBtnClass","rotate","pager","align","Injectable","PAGER_CONTROL_VALUE_ACCESSOR","provide","NG_VALUE_ACCESSOR","useExisting","forwardRef","PagerComponent","multi","elementRef","paginationConfig","changeDetection","numPages","EventEmitter","pageChanged","onChange","Function","prototype","onTouched","inited","_page","config","configureOptions","Object","assign","defineProperty","_itemsPerPage","v","totalPages","calculateTotalPages","_totalItems","_totalPages","emit","selectPage","page","value","_previous","markForCheck","ngOnInit","window","classMap","nativeElement","getAttribute","pages","getPages","writeValue","getText","key","noPrevious","noNext","registerOnChange","fn","registerOnTouched","event","preventDefault","disabled","target","blur","makePage","num","text","active","number","currentPage","startPage","endPage","isMaxSized","Math","max","floor","ceil","min","toString","push","previousPageSet","unshift","nextPageSet","totalItems","Component","args","selector","template","providers","ElementRef","ChangeDetectorRef","Input","Output","PAGINATION_CONTROL_VALUE_ACCESSOR","PaginationComponent","PaginationModule","forRoot","ngModule","NgModule","imports","CommonModule","declarations","exports"],"mappings":"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","sourcesContent":["// todo: split\nimport { Injectable } from '@angular/core';\n\nimport { ConfigModel, PagerModel } from './models';\n\n/** Provides default values for Pagination and pager components */\n@Injectable()\nexport class PaginationConfig {\n main: ConfigModel = {\n maxSize: void 0,\n itemsPerPage: 10,\n boundaryLinks: false,\n directionLinks: true,\n firstText: 'First',\n previousText: 'Previous',\n nextText: 'Next',\n lastText: 'Last',\n pageBtnClass: '',\n rotate: true\n };\n pager: PagerModel = {\n itemsPerPage: 15,\n previousText: '« Previous',\n nextText: 'Next »',\n pageBtnClass: '',\n align: true\n };\n}\n","import {\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Input,\n OnInit,\n Output,\n Provider\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { PageChangedEvent } from './pagination.component';\nimport { PaginationConfig } from './pagination.config';\n\nimport { ConfigModel, PagesModel } from './models';\n\nexport const PAGER_CONTROL_VALUE_ACCESSOR: Provider = {\n provide: NG_VALUE_ACCESSOR,\n /* tslint:disable-next-line: no-use-before-declare */\n useExisting: forwardRef(() => PagerComponent),\n multi: true\n};\n\n@Component({\n selector: 'pager',\n templateUrl: './pager.component.html',\n providers: [PAGER_CONTROL_VALUE_ACCESSOR]\n})\nexport class PagerComponent implements ControlValueAccessor, OnInit {\n config: ConfigModel;\n /** if `true` aligns each link to the sides of pager */\n @Input() align: boolean;\n /** limit number for page links in pager */\n @Input() maxSize: number;\n /** if false first and last buttons will be hidden */\n @Input() boundaryLinks: boolean;\n /** if false previous and next buttons will be hidden */\n @Input() directionLinks: boolean;\n // labels\n /** first button text */\n @Input() firstText: string;\n /** previous button text */\n @Input() previousText: string;\n /** next button text */\n @Input() nextText: string;\n /** last button text */\n @Input() lastText: string;\n /** if true current page will in the middle of pages list */\n @Input() rotate: boolean;\n // css\n /** add class to <code><li\\></code> */\n @Input() pageBtnClass: string;\n\n /** if true pagination component will be disabled */\n @Input() disabled: boolean;\n\n /** fired when total pages count changes, $event:number equals to total pages count */\n @Output() numPages: EventEmitter<number> = new EventEmitter<number>();\n /** fired when page was changed, $event:{page, itemsPerPage} equals to\n * object with current page index and number of items per page\n */\n @Output()\n pageChanged: EventEmitter<PageChangedEvent> = new EventEmitter<PageChangedEvent>();\n\n /** maximum number of items per page. If value less than 1 will display all items on one page */\n @Input()\n get itemsPerPage(): number {\n return this._itemsPerPage;\n }\n\n set itemsPerPage(v: number) {\n this._itemsPerPage = v;\n this.totalPages = this.calculateTotalPages();\n }\n\n /** total number of items in all pages */\n @Input()\n get totalItems(): number {\n return this._totalItems;\n }\n\n set totalItems(v: number) {\n this._totalItems = v;\n this.totalPages = this.calculateTotalPages();\n }\n\n get totalPages(): number {\n return this._totalPages;\n }\n\n set totalPages(v: number) {\n this._totalPages = v;\n this.numPages.emit(v);\n if (this.inited) {\n this.selectPage(this.page);\n }\n }\n\n set page(value: number) {\n const _previous = this._page;\n this._page = value > this.totalPages ? this.totalPages : value || 1;\n this.changeDetection.markForCheck();\n\n if (_previous === this._page || typeof _previous === 'undefined') {\n return;\n }\n\n this.pageChanged.emit({\n page: this._page,\n itemsPerPage: this.itemsPerPage\n });\n }\n\n get page(): number {\n return this._page;\n }\n\n onChange = Function.prototype;\n onTouched = Function.prototype;\n\n classMap: string;\n pages: PagesModel[];\n\n protected _itemsPerPage: number;\n protected _totalItems: number;\n protected _totalPages: number;\n protected inited = false;\n protected _page = 1;\n\n constructor(private elementRef: ElementRef,\n paginationConfig: PaginationConfig,\n private changeDetection: ChangeDetectorRef) {\n this.elementRef = elementRef;\n if (!this.config) {\n this.configureOptions(\n Object.assign({}, paginationConfig.main, paginationConfig.pager)\n );\n }\n }\n\n configureOptions(config: ConfigModel): void {\n this.config = Object.assign({}, config);\n }\n\n ngOnInit(): void {\n if (typeof window !== 'undefined') {\n this.classMap = this.elementRef.nativeElement.getAttribute('class') || '';\n }\n // watch for maxSize\n this.maxSize =\n typeof this.maxSize !== 'undefined' ? this.maxSize : this.config.maxSize;\n this.rotate =\n typeof this.rotate !== 'undefined' ? this.rotate : this.config.rotate;\n this.boundaryLinks =\n typeof this.boundaryLinks !== 'undefined'\n ? this.boundaryLinks\n : this.config.boundaryLinks;\n this.directionLinks =\n typeof this.directionLinks !== 'undefined'\n ? this.directionLinks\n : this.config.directionLinks;\n this.pageBtnClass =\n typeof this.pageBtnClass !== 'undefined'\n ? this.pageBtnClass\n : this.config.pageBtnClass;\n\n // base class\n this.itemsPerPage =\n typeof this.itemsPerPage !== 'undefined'\n ? this.itemsPerPage\n : this.config.itemsPerPage;\n this.totalPages = this.calculateTotalPages();\n // this class\n this.pages = this.getPages(this.page, this.totalPages);\n this.inited = true;\n }\n\n writeValue(value: number): void {\n this.page = value;\n this.pages = this.getPages(this.page, this.totalPages);\n }\n\n getText(key: string): string {\n // tslint:disable-next-line:no-any\n return (this as any)[`${key}Text`] || (this as any).config[`${key}Text`];\n }\n\n noPrevious(): boolean {\n return this.page === 1;\n }\n\n noNext(): boolean {\n return this.page === this.totalPages;\n }\n\n registerOnChange(fn: () => {}): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => {}): void {\n this.onTouched = fn;\n }\n\n selectPage(page: number, event?: Event): void {\n if (event) {\n event.preventDefault();\n }\n\n if (!this.disabled) {\n if (event && event.target) {\n // tslint:disable-next-line:no-any\n const target: any = event.target;\n target.blur();\n }\n this.writeValue(page);\n this.onChange(this.page);\n }\n }\n\n // Create page object used in template\n protected makePage(num: number,\n text: string,\n active: boolean): { number: number; text: string; active: boolean } {\n return {text, number: num, active};\n }\n\n protected getPages(currentPage: number, totalPages: number): PagesModel[] {\n const pages: PagesModel[] = [];\n\n // Default page limits\n let startPage = 1;\n let endPage = totalPages;\n const isMaxSized =\n typeof this.maxSize !== 'undefined' && this.maxSize < totalPages;\n\n // recompute if maxSize\n if (isMaxSized) {\n if (this.rotate) {\n // Current page is displayed in the middle of the visible ones\n startPage = Math.max(currentPage - Math.floor(this.maxSize / 2), 1);\n endPage = startPage + this.maxSize - 1;\n\n // Adjust if limit is exceeded\n if (endPage > totalPages) {\n endPage = totalPages;\n startPage = endPage - this.maxSize + 1;\n }\n } else {\n // Visible pages are paginated with maxSize\n startPage =\n (Math.ceil(currentPage / this.maxSize) - 1) * this.maxSize + 1;\n\n // Adjust last page if limit is exceeded\n endPage = Math.min(startPage + this.maxSize - 1, totalPages);\n }\n }\n\n // Add page number links\n for (let num = startPage; num <= endPage; num++) {\n const page = this.makePage(num, num.toString(), num === currentPage);\n pages.push(page);\n }\n\n // Add links to move between page sets\n if (isMaxSized && !this.rotate) {\n if (startPage > 1) {\n const previousPageSet = this.makePage(startPage - 1, '...', false);\n pages.unshift(previousPageSet);\n }\n\n if (endPage < totalPages) {\n const nextPageSet = this.makePage(endPage + 1, '...', false);\n pages.push(nextPageSet);\n }\n }\n\n return pages;\n }\n\n // base class\n protected calculateTotalPages(): number {\n const totalPages =\n this.itemsPerPage < 1\n ? 1\n : Math.ceil(this.totalItems / this.itemsPerPage);\n\n return Math.max(totalPages || 0, 1);\n }\n}\n","import {\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Input,\n OnInit,\n Output,\n Provider, TemplateRef\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { PaginationConfig } from './pagination.config';\nimport { ConfigModel, PagesModel, PaginationLinkContext, PaginationNumberLinkContext } from './models';\n\nexport interface PageChangedEvent {\n itemsPerPage: number;\n page: number;\n}\n\nexport const PAGINATION_CONTROL_VALUE_ACCESSOR: Provider = {\n provide: NG_VALUE_ACCESSOR,\n /* tslint:disable-next-line: no-use-before-declare */\n useExisting: forwardRef(() => PaginationComponent),\n multi: true\n};\n\n@Component({\n selector: 'pagination',\n templateUrl: './pagination.component.html',\n providers: [PAGINATION_CONTROL_VALUE_ACCESSOR]\n})\nexport class PaginationComponent implements ControlValueAccessor, OnInit {\n config: ConfigModel;\n /** if `true` aligns each link to the sides of pager */\n @Input() align: boolean;\n /** limit number for page links in pager */\n @Input() maxSize: number;\n /** if false first and last buttons will be hidden */\n @Input() boundaryLinks: boolean;\n /** if false previous and next buttons will be hidden */\n @Input() directionLinks: boolean;\n // labels\n /** first button text */\n @Input() firstText: string;\n /** previous button text */\n @Input() previousText: string;\n /** next button text */\n @Input() nextText: string;\n /** last button text */\n @Input() lastText: string;\n /** if true current page will in the middle of pages list */\n @Input() rotate: boolean;\n // css\n /** add class to <code><li\\></code> */\n @Input() pageBtnClass: string;\n /** if true pagination component will be disabled */\n @Input() disabled: boolean;\n /** custom template for page link */\n @Input() customPageTemplate: TemplateRef<PaginationNumberLinkContext>;\n /** custom template for next link */\n @Input() customNextTemplate: TemplateRef<PaginationLinkContext>;\n /** custom template for previous link */\n @Input() customPreviousTemplate: TemplateRef<PaginationLinkContext>;\n /** custom template for first link */\n @Input() customFirstTemplate: TemplateRef<PaginationLinkContext>;\n /** custom template for last link */\n @Input() customLastTemplate: TemplateRef<PaginationLinkContext>;\n\n /** fired when total pages count changes, $event:number equals to total pages count */\n @Output() numPages: EventEmitter<number> = new EventEmitter<number>();\n /** fired when page was changed, $event:{page, itemsPerPage} equals to object\n * with current page index and number of items per page\n */\n @Output()\n pageChanged = new EventEmitter<PageChangedEvent>();\n\n /** maximum number of items per page. If value less than 1 will display all items on one page */\n @Input()\n get itemsPerPage(): number {\n return this._itemsPerPage;\n }\n\n set itemsPerPage(v: number) {\n this._itemsPerPage = v;\n this.totalPages = this.calculateTotalPages();\n }\n\n /** total number of items in all pages */\n @Input()\n get totalItems(): number {\n return this._totalItems;\n }\n\n set totalItems(v: number) {\n this._totalItems = v;\n this.totalPages = this.calculateTotalPages();\n }\n\n get totalPages(): number {\n return this._totalPages;\n }\n\n set totalPages(v: number) {\n this._totalPages = v;\n this.numPages.emit(v);\n if (this.inited) {\n this.selectPage(this.page);\n }\n }\n\n set page(value: number) {\n const _previous = this._page;\n this._page = value > this.totalPages ? this.totalPages : value || 1;\n this.changeDetection.markForCheck();\n\n if (_previous === this._page || typeof _previous === 'undefined') {\n return;\n }\n\n this.pageChanged.emit({\n page: this._page,\n itemsPerPage: this.itemsPerPage\n });\n }\n\n get page(): number {\n return this._page;\n }\n\n onChange = Function.prototype;\n onTouched = Function.prototype;\n\n classMap: string;\n pages: PagesModel[];\n\n protected _itemsPerPage: number;\n protected _totalItems: number;\n protected _totalPages: number;\n protected inited = false;\n protected _page = 1;\n\n constructor(\n private elementRef: ElementRef,\n paginationConfig: PaginationConfig,\n private changeDetection: ChangeDetectorRef\n ) {\n this.elementRef = elementRef;\n if (!this.config) {\n this.configureOptions(paginationConfig.main);\n }\n }\n\n configureOptions(config: ConfigModel): void {\n this.config = Object.assign({}, config);\n }\n\n ngOnInit(): void {\n if (typeof window !== 'undefined') {\n this.classMap = this.elementRef.nativeElement.getAttribute('class') || '';\n }\n // watch for maxSize\n this.maxSize =\n typeof this.maxSize !== 'undefined' ? this.maxSize : this.config.maxSize;\n this.rotate =\n typeof this.rotate !== 'undefined' ? this.rotate : this.config.rotate;\n this.boundaryLinks =\n typeof this.boundaryLinks !== 'undefined'\n ? this.boundaryLinks\n : this.config.boundaryLinks;\n this.directionLinks =\n typeof this.directionLinks !== 'undefined'\n ? this.directionLinks\n : this.config.directionLinks;\n this.pageBtnClass =\n typeof this.pageBtnClass !== 'undefined'\n ? this.pageBtnClass\n : this.config.pageBtnClass;\n\n // base class\n this.itemsPerPage =\n typeof this.itemsPerPage !== 'undefined'\n ? this.itemsPerPage\n : this.config.itemsPerPage;\n this.totalPages = this.calculateTotalPages();\n // this class\n this.pages = this.getPages(this.page, this.totalPages);\n this.inited = true;\n }\n\n writeValue(value: number): void {\n this.page = value;\n this.pages = this.getPages(this.page, this.totalPages);\n }\n\n getText(key: string): string {\n // tslint:disable-next-line:no-any\n return (this as any)[`${key}Text`] || (this as any).config[`${key}Text`];\n }\n\n noPrevious(): boolean {\n return this.page === 1;\n }\n\n noNext(): boolean {\n return this.page === this.totalPages;\n }\n\n registerOnChange(fn: () => {}): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => {}): void {\n this.onTouched = fn;\n }\n\n selectPage(page: number, event?: Event): void {\n if (event) {\n event.preventDefault();\n }\n\n if (!this.disabled) {\n if (event && event.target) {\n // tslint:disable-next-line:no-any\n const target: any = event.target;\n target.blur();\n }\n this.writeValue(page);\n this.onChange(this.page);\n }\n }\n\n // Create page object used in template\n protected makePage(\n num: number,\n text: string,\n active: boolean\n ): { number: number; text: string; active: boolean } {\n return { text, number: num, active };\n }\n\n protected getPages(currentPage: number, totalPages: number): PagesModel[] {\n const pages: PagesModel[] = [];\n\n // Default page limits\n let startPage = 1;\n let endPage = totalPages;\n const isMaxSized =\n typeof this.maxSize !== 'undefined' && this.maxSize < totalPages;\n\n // recompute if maxSize\n if (isMaxSized) {\n if (this.rotate) {\n // Current page is displayed in the middle of the visible ones\n startPage = Math.max(currentPage - Math.floor(this.maxSize / 2), 1);\n endPage = startPage + this.maxSize - 1;\n\n // Adjust if limit is exceeded\n if (endPage > totalPages) {\n endPage = totalPages;\n startPage = endPage - this.maxSize + 1;\n }\n } else {\n // Visible pages are paginated with maxSize\n startPage =\n (Math.ceil(currentPage / this.maxSize) - 1) * this.maxSize + 1;\n\n // Adjust last page if limit is exceeded\n endPage = Math.min(startPage + this.maxSize - 1, totalPages);\n }\n }\n\n // Add page number links\n for (let num = startPage; num <= endPage; num++) {\n const page = this.makePage(num, num.toString(), num === currentPage);\n pages.push(page);\n }\n\n // Add links to move between page sets\n if (isMaxSized && !this.rotate) {\n if (startPage > 1) {\n const previousPageSet = this.makePage(startPage - 1, '...', false);\n pages.unshift(previousPageSet);\n }\n\n if (endPage < totalPages) {\n const nextPageSet = this.makePage(endPage + 1, '...', false);\n pages.push(nextPageSet);\n }\n }\n\n return pages;\n }\n\n // base class\n protected calculateTotalPages(): number {\n const totalPages =\n this.itemsPerPage < 1\n ? 1\n : Math.ceil(this.totalItems / this.itemsPerPage);\n\n return Math.max(totalPages || 0, 1);\n }\n// tslint:disable-next-line:max-file-line-count\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\nimport { PaginationConfig } from './pagination.config';\n\nimport { PagerComponent } from './pager.component';\nimport { PaginationComponent } from './pagination.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [PagerComponent, PaginationComponent],\n exports: [PagerComponent, PaginationComponent]\n})\nexport class PaginationModule {\n static forRoot(): ModuleWithProviders {\n return { ngModule: PaginationModule, providers: [PaginationConfig] };\n }\n}\n"]}
1
+ {"version":3,"sources":["ng://ngx-bootstrap/pagination/pagination.config.ts","ng://ngx-bootstrap/pagination/pager.component.ts","ng://ngx-bootstrap/pagination/pagination.component.ts","ng://ngx-bootstrap/pagination/pagination.module.ts"],"names":["PaginationConfig","this","main","maxSize","itemsPerPage","boundaryLinks","directionLinks","firstText","previousText","nextText","lastText","pageBtnClass","rotate","pager","align","Injectable","args","providedIn","PAGER_CONTROL_VALUE_ACCESSOR","provide","NG_VALUE_ACCESSOR","useExisting","forwardRef","PagerComponent","multi","elementRef","paginationConfig","changeDetection","numPages","EventEmitter","pageChanged","onChange","Function","prototype","onTouched","inited","_page","config","configureOptions","Object","assign","defineProperty","_itemsPerPage","v","totalPages","calculateTotalPages","_totalItems","_totalPages","emit","selectPage","page","value","_previous","markForCheck","ngOnInit","window","classMap","nativeElement","getAttribute","pages","getPages","writeValue","getText","key","noPrevious","noNext","registerOnChange","fn","registerOnTouched","event","preventDefault","disabled","target","blur","makePage","num","text","active","number","currentPage","startPage","endPage","isMaxSized","Math","max","floor","ceil","min","toString","push","previousPageSet","unshift","nextPageSet","totalItems","Component","selector","template","providers","ElementRef","ChangeDetectorRef","Input","Output","PAGINATION_CONTROL_VALUE_ACCESSOR","PaginationComponent","PaginationModule","forRoot","ngModule","NgModule","imports","CommonModule","declarations","exports"],"mappings":"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","sourcesContent":["// todo: split\nimport { Injectable } from '@angular/core';\n\nimport { ConfigModel, PagerModel } from './models';\n\n/** Provides default values for Pagination and pager components */\n@Injectable({\n providedIn: 'root'\n})\nexport class PaginationConfig {\n main: ConfigModel = {\n maxSize: void 0,\n itemsPerPage: 10,\n boundaryLinks: false,\n directionLinks: true,\n firstText: 'First',\n previousText: 'Previous',\n nextText: 'Next',\n lastText: 'Last',\n pageBtnClass: '',\n rotate: true\n };\n pager: PagerModel = {\n itemsPerPage: 15,\n previousText: '« Previous',\n nextText: 'Next »',\n pageBtnClass: '',\n align: true\n };\n}\n","import {\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Input,\n OnInit,\n Output,\n Provider\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { PageChangedEvent } from './pagination.component';\nimport { PaginationConfig } from './pagination.config';\n\nimport { ConfigModel, PagesModel } from './models';\n\nexport const PAGER_CONTROL_VALUE_ACCESSOR: Provider = {\n provide: NG_VALUE_ACCESSOR,\n /* tslint:disable-next-line: no-use-before-declare */\n useExisting: forwardRef(() => PagerComponent),\n multi: true\n};\n\n@Component({\n selector: 'pager',\n templateUrl: './pager.component.html',\n providers: [PAGER_CONTROL_VALUE_ACCESSOR]\n})\nexport class PagerComponent implements ControlValueAccessor, OnInit {\n config: ConfigModel;\n /** if `true` aligns each link to the sides of pager */\n @Input() align: boolean;\n /** limit number for page links in pager */\n @Input() maxSize: number;\n /** if false first and last buttons will be hidden */\n @Input() boundaryLinks: boolean;\n /** if false previous and next buttons will be hidden */\n @Input() directionLinks: boolean;\n // labels\n /** first button text */\n @Input() firstText: string;\n /** previous button text */\n @Input() previousText: string;\n /** next button text */\n @Input() nextText: string;\n /** last button text */\n @Input() lastText: string;\n /** if true current page will in the middle of pages list */\n @Input() rotate: boolean;\n // css\n /** add class to <code><li\\></code> */\n @Input() pageBtnClass: string;\n\n /** if true pagination component will be disabled */\n @Input() disabled: boolean;\n\n /** fired when total pages count changes, $event:number equals to total pages count */\n @Output() numPages: EventEmitter<number> = new EventEmitter<number>();\n /** fired when page was changed, $event:{page, itemsPerPage} equals to\n * object with current page index and number of items per page\n */\n @Output()\n pageChanged: EventEmitter<PageChangedEvent> = new EventEmitter<PageChangedEvent>();\n\n /** maximum number of items per page. If value less than 1 will display all items on one page */\n @Input()\n get itemsPerPage(): number {\n return this._itemsPerPage;\n }\n\n set itemsPerPage(v: number) {\n this._itemsPerPage = v;\n this.totalPages = this.calculateTotalPages();\n }\n\n /** total number of items in all pages */\n @Input()\n get totalItems(): number {\n return this._totalItems;\n }\n\n set totalItems(v: number) {\n this._totalItems = v;\n this.totalPages = this.calculateTotalPages();\n }\n\n get totalPages(): number {\n return this._totalPages;\n }\n\n set totalPages(v: number) {\n this._totalPages = v;\n this.numPages.emit(v);\n if (this.inited) {\n this.selectPage(this.page);\n }\n }\n\n set page(value: number) {\n const _previous = this._page;\n this._page = value > this.totalPages ? this.totalPages : value || 1;\n this.changeDetection.markForCheck();\n\n if (_previous === this._page || typeof _previous === 'undefined') {\n return;\n }\n\n this.pageChanged.emit({\n page: this._page,\n itemsPerPage: this.itemsPerPage\n });\n }\n\n get page(): number {\n return this._page;\n }\n\n onChange = Function.prototype;\n onTouched = Function.prototype;\n\n classMap: string;\n pages: PagesModel[];\n\n protected _itemsPerPage: number;\n protected _totalItems: number;\n protected _totalPages: number;\n protected inited = false;\n protected _page = 1;\n\n constructor(private elementRef: ElementRef,\n paginationConfig: PaginationConfig,\n private changeDetection: ChangeDetectorRef) {\n this.elementRef = elementRef;\n if (!this.config) {\n this.configureOptions(\n Object.assign({}, paginationConfig.main, paginationConfig.pager)\n );\n }\n }\n\n configureOptions(config: ConfigModel): void {\n this.config = Object.assign({}, config);\n }\n\n ngOnInit(): void {\n if (typeof window !== 'undefined') {\n this.classMap = this.elementRef.nativeElement.getAttribute('class') || '';\n }\n // watch for maxSize\n this.maxSize =\n typeof this.maxSize !== 'undefined' ? this.maxSize : this.config.maxSize;\n this.rotate =\n typeof this.rotate !== 'undefined' ? this.rotate : this.config.rotate;\n this.boundaryLinks =\n typeof this.boundaryLinks !== 'undefined'\n ? this.boundaryLinks\n : this.config.boundaryLinks;\n this.directionLinks =\n typeof this.directionLinks !== 'undefined'\n ? this.directionLinks\n : this.config.directionLinks;\n this.pageBtnClass =\n typeof this.pageBtnClass !== 'undefined'\n ? this.pageBtnClass\n : this.config.pageBtnClass;\n\n // base class\n this.itemsPerPage =\n typeof this.itemsPerPage !== 'undefined'\n ? this.itemsPerPage\n : this.config.itemsPerPage;\n this.totalPages = this.calculateTotalPages();\n // this class\n this.pages = this.getPages(this.page, this.totalPages);\n this.inited = true;\n }\n\n writeValue(value: number): void {\n this.page = value;\n this.pages = this.getPages(this.page, this.totalPages);\n }\n\n getText(key: string): string {\n // tslint:disable-next-line:no-any\n return (this as any)[`${key}Text`] || (this as any).config[`${key}Text`];\n }\n\n noPrevious(): boolean {\n return this.page === 1;\n }\n\n noNext(): boolean {\n return this.page === this.totalPages;\n }\n\n registerOnChange(fn: () => {}): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => {}): void {\n this.onTouched = fn;\n }\n\n selectPage(page: number, event?: Event): void {\n if (event) {\n event.preventDefault();\n }\n\n if (!this.disabled) {\n if (event && event.target) {\n // tslint:disable-next-line:no-any\n const target: any = event.target;\n target.blur();\n }\n this.writeValue(page);\n this.onChange(this.page);\n }\n }\n\n // Create page object used in template\n protected makePage(num: number,\n text: string,\n active: boolean): { number: number; text: string; active: boolean } {\n return {text, number: num, active};\n }\n\n protected getPages(currentPage: number, totalPages: number): PagesModel[] {\n const pages: PagesModel[] = [];\n\n // Default page limits\n let startPage = 1;\n let endPage = totalPages;\n const isMaxSized =\n typeof this.maxSize !== 'undefined' && this.maxSize < totalPages;\n\n // recompute if maxSize\n if (isMaxSized) {\n if (this.rotate) {\n // Current page is displayed in the middle of the visible ones\n startPage = Math.max(currentPage - Math.floor(this.maxSize / 2), 1);\n endPage = startPage + this.maxSize - 1;\n\n // Adjust if limit is exceeded\n if (endPage > totalPages) {\n endPage = totalPages;\n startPage = endPage - this.maxSize + 1;\n }\n } else {\n // Visible pages are paginated with maxSize\n startPage =\n (Math.ceil(currentPage / this.maxSize) - 1) * this.maxSize + 1;\n\n // Adjust last page if limit is exceeded\n endPage = Math.min(startPage + this.maxSize - 1, totalPages);\n }\n }\n\n // Add page number links\n for (let num = startPage; num <= endPage; num++) {\n const page = this.makePage(num, num.toString(), num === currentPage);\n pages.push(page);\n }\n\n // Add links to move between page sets\n if (isMaxSized && !this.rotate) {\n if (startPage > 1) {\n const previousPageSet = this.makePage(startPage - 1, '...', false);\n pages.unshift(previousPageSet);\n }\n\n if (endPage < totalPages) {\n const nextPageSet = this.makePage(endPage + 1, '...', false);\n pages.push(nextPageSet);\n }\n }\n\n return pages;\n }\n\n // base class\n protected calculateTotalPages(): number {\n const totalPages =\n this.itemsPerPage < 1\n ? 1\n : Math.ceil(this.totalItems / this.itemsPerPage);\n\n return Math.max(totalPages || 0, 1);\n }\n}\n","import {\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Input,\n OnInit,\n Output,\n Provider, TemplateRef\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { PaginationConfig } from './pagination.config';\nimport { ConfigModel, PagesModel, PaginationLinkContext, PaginationNumberLinkContext } from './models';\n\nexport interface PageChangedEvent {\n itemsPerPage: number;\n page: number;\n}\n\nexport const PAGINATION_CONTROL_VALUE_ACCESSOR: Provider = {\n provide: NG_VALUE_ACCESSOR,\n /* tslint:disable-next-line: no-use-before-declare */\n useExisting: forwardRef(() => PaginationComponent),\n multi: true\n};\n\n@Component({\n selector: 'pagination',\n templateUrl: './pagination.component.html',\n providers: [PAGINATION_CONTROL_VALUE_ACCESSOR]\n})\nexport class PaginationComponent implements ControlValueAccessor, OnInit {\n config: ConfigModel;\n /** if `true` aligns each link to the sides of pager */\n @Input() align: boolean;\n /** limit number for page links in pager */\n @Input() maxSize: number;\n /** if false first and last buttons will be hidden */\n @Input() boundaryLinks: boolean;\n /** if false previous and next buttons will be hidden */\n @Input() directionLinks: boolean;\n // labels\n /** first button text */\n @Input() firstText: string;\n /** previous button text */\n @Input() previousText: string;\n /** next button text */\n @Input() nextText: string;\n /** last button text */\n @Input() lastText: string;\n /** if true current page will in the middle of pages list */\n @Input() rotate: boolean;\n // css\n /** add class to <code><li\\></code> */\n @Input() pageBtnClass: string;\n /** if true pagination component will be disabled */\n @Input() disabled: boolean;\n /** custom template for page link */\n @Input() customPageTemplate: TemplateRef<PaginationNumberLinkContext>;\n /** custom template for next link */\n @Input() customNextTemplate: TemplateRef<PaginationLinkContext>;\n /** custom template for previous link */\n @Input() customPreviousTemplate: TemplateRef<PaginationLinkContext>;\n /** custom template for first link */\n @Input() customFirstTemplate: TemplateRef<PaginationLinkContext>;\n /** custom template for last link */\n @Input() customLastTemplate: TemplateRef<PaginationLinkContext>;\n\n /** fired when total pages count changes, $event:number equals to total pages count */\n @Output() numPages: EventEmitter<number> = new EventEmitter<number>();\n /** fired when page was changed, $event:{page, itemsPerPage} equals to object\n * with current page index and number of items per page\n */\n @Output()\n pageChanged = new EventEmitter<PageChangedEvent>();\n\n /** maximum number of items per page. If value less than 1 will display all items on one page */\n @Input()\n get itemsPerPage(): number {\n return this._itemsPerPage;\n }\n\n set itemsPerPage(v: number) {\n this._itemsPerPage = v;\n this.totalPages = this.calculateTotalPages();\n }\n\n /** total number of items in all pages */\n @Input()\n get totalItems(): number {\n return this._totalItems;\n }\n\n set totalItems(v: number) {\n this._totalItems = v;\n this.totalPages = this.calculateTotalPages();\n }\n\n get totalPages(): number {\n return this._totalPages;\n }\n\n set totalPages(v: number) {\n this._totalPages = v;\n this.numPages.emit(v);\n if (this.inited) {\n this.selectPage(this.page);\n }\n }\n\n set page(value: number) {\n const _previous = this._page;\n this._page = value > this.totalPages ? this.totalPages : value || 1;\n this.changeDetection.markForCheck();\n\n if (_previous === this._page || typeof _previous === 'undefined') {\n return;\n }\n\n this.pageChanged.emit({\n page: this._page,\n itemsPerPage: this.itemsPerPage\n });\n }\n\n get page(): number {\n return this._page;\n }\n\n onChange = Function.prototype;\n onTouched = Function.prototype;\n\n classMap: string;\n pages: PagesModel[];\n\n protected _itemsPerPage: number;\n protected _totalItems: number;\n protected _totalPages: number;\n protected inited = false;\n protected _page = 1;\n\n constructor(\n private elementRef: ElementRef,\n paginationConfig: PaginationConfig,\n private changeDetection: ChangeDetectorRef\n ) {\n this.elementRef = elementRef;\n if (!this.config) {\n this.configureOptions(paginationConfig.main);\n }\n }\n\n configureOptions(config: ConfigModel): void {\n this.config = Object.assign({}, config);\n }\n\n ngOnInit(): void {\n if (typeof window !== 'undefined') {\n this.classMap = this.elementRef.nativeElement.getAttribute('class') || '';\n }\n // watch for maxSize\n this.maxSize =\n typeof this.maxSize !== 'undefined' ? this.maxSize : this.config.maxSize;\n this.rotate =\n typeof this.rotate !== 'undefined' ? this.rotate : this.config.rotate;\n this.boundaryLinks =\n typeof this.boundaryLinks !== 'undefined'\n ? this.boundaryLinks\n : this.config.boundaryLinks;\n this.directionLinks =\n typeof this.directionLinks !== 'undefined'\n ? this.directionLinks\n : this.config.directionLinks;\n this.pageBtnClass =\n typeof this.pageBtnClass !== 'undefined'\n ? this.pageBtnClass\n : this.config.pageBtnClass;\n\n // base class\n this.itemsPerPage =\n typeof this.itemsPerPage !== 'undefined'\n ? this.itemsPerPage\n : this.config.itemsPerPage;\n this.totalPages = this.calculateTotalPages();\n // this class\n this.pages = this.getPages(this.page, this.totalPages);\n this.inited = true;\n }\n\n writeValue(value: number): void {\n this.page = value;\n this.pages = this.getPages(this.page, this.totalPages);\n }\n\n getText(key: string): string {\n // tslint:disable-next-line:no-any\n return (this as any)[`${key}Text`] || (this as any).config[`${key}Text`];\n }\n\n noPrevious(): boolean {\n return this.page === 1;\n }\n\n noNext(): boolean {\n return this.page === this.totalPages;\n }\n\n registerOnChange(fn: () => {}): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: () => {}): void {\n this.onTouched = fn;\n }\n\n selectPage(page: number, event?: Event): void {\n if (event) {\n event.preventDefault();\n }\n\n if (!this.disabled) {\n if (event && event.target) {\n // tslint:disable-next-line:no-any\n const target: any = event.target;\n target.blur();\n }\n this.writeValue(page);\n this.onChange(this.page);\n }\n }\n\n // Create page object used in template\n protected makePage(\n num: number,\n text: string,\n active: boolean\n ): { number: number; text: string; active: boolean } {\n return { text, number: num, active };\n }\n\n protected getPages(currentPage: number, totalPages: number): PagesModel[] {\n const pages: PagesModel[] = [];\n\n // Default page limits\n let startPage = 1;\n let endPage = totalPages;\n const isMaxSized =\n typeof this.maxSize !== 'undefined' && this.maxSize < totalPages;\n\n // recompute if maxSize\n if (isMaxSized) {\n if (this.rotate) {\n // Current page is displayed in the middle of the visible ones\n startPage = Math.max(currentPage - Math.floor(this.maxSize / 2), 1);\n endPage = startPage + this.maxSize - 1;\n\n // Adjust if limit is exceeded\n if (endPage > totalPages) {\n endPage = totalPages;\n startPage = endPage - this.maxSize + 1;\n }\n } else {\n // Visible pages are paginated with maxSize\n startPage =\n (Math.ceil(currentPage / this.maxSize) - 1) * this.maxSize + 1;\n\n // Adjust last page if limit is exceeded\n endPage = Math.min(startPage + this.maxSize - 1, totalPages);\n }\n }\n\n // Add page number links\n for (let num = startPage; num <= endPage; num++) {\n const page = this.makePage(num, num.toString(), num === currentPage);\n pages.push(page);\n }\n\n // Add links to move between page sets\n if (isMaxSized && !this.rotate) {\n if (startPage > 1) {\n const previousPageSet = this.makePage(startPage - 1, '...', false);\n pages.unshift(previousPageSet);\n }\n\n if (endPage < totalPages) {\n const nextPageSet = this.makePage(endPage + 1, '...', false);\n pages.push(nextPageSet);\n }\n }\n\n return pages;\n }\n\n // base class\n protected calculateTotalPages(): number {\n const totalPages =\n this.itemsPerPage < 1\n ? 1\n : Math.ceil(this.totalItems / this.itemsPerPage);\n\n return Math.max(totalPages || 0, 1);\n }\n// tslint:disable-next-line:max-file-line-count\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\n\nimport { PagerComponent } from './pager.component';\nimport { PaginationComponent } from './pagination.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [PagerComponent, PaginationComponent],\n exports: [PagerComponent, PaginationComponent]\n})\nexport class PaginationModule {\n static forRoot(): ModuleWithProviders<PaginationModule> {\n return { ngModule: PaginationModule, providers: [] };\n }\n}\n"]}
@@ -4,6 +4,7 @@
4
4
  */
5
5
  // todo: split
6
6
  import { Injectable } from '@angular/core';
7
+ import * as i0 from "@angular/core";
7
8
  /**
8
9
  * Provides default values for Pagination and pager components
9
10
  */
@@ -31,12 +32,15 @@ export class PaginationConfig {
31
32
  }
32
33
  }
33
34
  PaginationConfig.decorators = [
34
- { type: Injectable }
35
+ { type: Injectable, args: [{
36
+ providedIn: 'root'
37
+ },] }
35
38
  ];
39
+ /** @nocollapse */ PaginationConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function PaginationConfig_Factory() { return new PaginationConfig(); }, token: PaginationConfig, providedIn: "root" });
36
40
  if (false) {
37
41
  /** @type {?} */
38
42
  PaginationConfig.prototype.main;
39
43
  /** @type {?} */
40
44
  PaginationConfig.prototype.pager;
41
45
  }
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb25maWcuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtYm9vdHN0cmFwL3BhZ2luYXRpb24vIiwic291cmNlcyI6WyJwYWdpbmF0aW9uLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFNM0MsTUFBTSxPQUFPLGdCQUFnQjtJQUQ3QjtRQUVFLFNBQUksR0FBZ0I7WUFDbEIsT0FBTyxFQUFFLEtBQUssQ0FBQztZQUNmLFlBQVksRUFBRSxFQUFFO1lBQ2hCLGFBQWEsRUFBRSxLQUFLO1lBQ3BCLGNBQWMsRUFBRSxJQUFJO1lBQ3BCLFNBQVMsRUFBRSxPQUFPO1lBQ2xCLFlBQVksRUFBRSxVQUFVO1lBQ3hCLFFBQVEsRUFBRSxNQUFNO1lBQ2hCLFFBQVEsRUFBRSxNQUFNO1lBQ2hCLFlBQVksRUFBRSxFQUFFO1lBQ2hCLE1BQU0sRUFBRSxJQUFJO1NBQ2IsQ0FBQztRQUNGLFVBQUssR0FBZTtZQUNsQixZQUFZLEVBQUUsRUFBRTtZQUNoQixZQUFZLEVBQUUsWUFBWTtZQUMxQixRQUFRLEVBQUUsUUFBUTtZQUNsQixZQUFZLEVBQUUsRUFBRTtZQUNoQixLQUFLLEVBQUUsSUFBSTtTQUNaLENBQUM7SUFDSixDQUFDOzs7WUFyQkEsVUFBVTs7OztJQUVULGdDQVdFOztJQUNGLGlDQU1FIiwic291cmNlc0NvbnRlbnQiOlsiLy8gdG9kbzogc3BsaXRcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ29uZmlnTW9kZWwsIFBhZ2VyTW9kZWwgfSBmcm9tICcuL21vZGVscyc7XG5cbi8qKiBQcm92aWRlcyBkZWZhdWx0IHZhbHVlcyBmb3IgUGFnaW5hdGlvbiBhbmQgcGFnZXIgY29tcG9uZW50cyAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFBhZ2luYXRpb25Db25maWcge1xuICBtYWluOiBDb25maWdNb2RlbCA9IHtcbiAgICBtYXhTaXplOiB2b2lkIDAsXG4gICAgaXRlbXNQZXJQYWdlOiAxMCxcbiAgICBib3VuZGFyeUxpbmtzOiBmYWxzZSxcbiAgICBkaXJlY3Rpb25MaW5rczogdHJ1ZSxcbiAgICBmaXJzdFRleHQ6ICdGaXJzdCcsXG4gICAgcHJldmlvdXNUZXh0OiAnUHJldmlvdXMnLFxuICAgIG5leHRUZXh0OiAnTmV4dCcsXG4gICAgbGFzdFRleHQ6ICdMYXN0JyxcbiAgICBwYWdlQnRuQ2xhc3M6ICcnLFxuICAgIHJvdGF0ZTogdHJ1ZVxuICB9O1xuICBwYWdlcjogUGFnZXJNb2RlbCA9IHtcbiAgICBpdGVtc1BlclBhZ2U6IDE1LFxuICAgIHByZXZpb3VzVGV4dDogJ8KrIFByZXZpb3VzJyxcbiAgICBuZXh0VGV4dDogJ05leHQgwrsnLFxuICAgIHBhZ2VCdG5DbGFzczogJycsXG4gICAgYWxpZ246IHRydWVcbiAgfTtcbn1cbiJdfQ==
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb25maWcuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtYm9vdHN0cmFwL3BhZ2luYXRpb24vIiwic291cmNlcyI6WyJwYWdpbmF0aW9uLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7O0FBUTNDLE1BQU0sT0FBTyxnQkFBZ0I7SUFIN0I7UUFJRSxTQUFJLEdBQWdCO1lBQ2xCLE9BQU8sRUFBRSxLQUFLLENBQUM7WUFDZixZQUFZLEVBQUUsRUFBRTtZQUNoQixhQUFhLEVBQUUsS0FBSztZQUNwQixjQUFjLEVBQUUsSUFBSTtZQUNwQixTQUFTLEVBQUUsT0FBTztZQUNsQixZQUFZLEVBQUUsVUFBVTtZQUN4QixRQUFRLEVBQUUsTUFBTTtZQUNoQixRQUFRLEVBQUUsTUFBTTtZQUNoQixZQUFZLEVBQUUsRUFBRTtZQUNoQixNQUFNLEVBQUUsSUFBSTtTQUNiLENBQUM7UUFDRixVQUFLLEdBQWU7WUFDbEIsWUFBWSxFQUFFLEVBQUU7WUFDaEIsWUFBWSxFQUFFLFlBQVk7WUFDMUIsUUFBUSxFQUFFLFFBQVE7WUFDbEIsWUFBWSxFQUFFLEVBQUU7WUFDaEIsS0FBSyxFQUFFLElBQUk7U0FDWixDQUFDO0tBQ0g7OztZQXZCQSxVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7Ozs7O0lBRUMsZ0NBV0U7O0lBQ0YsaUNBTUUiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0b2RvOiBzcGxpdFxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBDb25maWdNb2RlbCwgUGFnZXJNb2RlbCB9IGZyb20gJy4vbW9kZWxzJztcblxuLyoqIFByb3ZpZGVzIGRlZmF1bHQgdmFsdWVzIGZvciBQYWdpbmF0aW9uIGFuZCBwYWdlciBjb21wb25lbnRzICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBQYWdpbmF0aW9uQ29uZmlnIHtcbiAgbWFpbjogQ29uZmlnTW9kZWwgPSB7XG4gICAgbWF4U2l6ZTogdm9pZCAwLFxuICAgIGl0ZW1zUGVyUGFnZTogMTAsXG4gICAgYm91bmRhcnlMaW5rczogZmFsc2UsXG4gICAgZGlyZWN0aW9uTGlua3M6IHRydWUsXG4gICAgZmlyc3RUZXh0OiAnRmlyc3QnLFxuICAgIHByZXZpb3VzVGV4dDogJ1ByZXZpb3VzJyxcbiAgICBuZXh0VGV4dDogJ05leHQnLFxuICAgIGxhc3RUZXh0OiAnTGFzdCcsXG4gICAgcGFnZUJ0bkNsYXNzOiAnJyxcbiAgICByb3RhdGU6IHRydWVcbiAgfTtcbiAgcGFnZXI6IFBhZ2VyTW9kZWwgPSB7XG4gICAgaXRlbXNQZXJQYWdlOiAxNSxcbiAgICBwcmV2aW91c1RleHQ6ICfCqyBQcmV2aW91cycsXG4gICAgbmV4dFRleHQ6ICdOZXh0IMK7JyxcbiAgICBwYWdlQnRuQ2xhc3M6ICcnLFxuICAgIGFsaWduOiB0cnVlXG4gIH07XG59XG4iXX0=
@@ -4,7 +4,6 @@
4
4
  */
5
5
  import { CommonModule } from '@angular/common';
6
6
  import { NgModule } from '@angular/core';
7
- import { PaginationConfig } from './pagination.config';
8
7
  import { PagerComponent } from './pager.component';
9
8
  import { PaginationComponent } from './pagination.component';
10
9
  export class PaginationModule {
@@ -12,7 +11,7 @@ export class PaginationModule {
12
11
  * @return {?}
13
12
  */
14
13
  static forRoot() {
15
- return { ngModule: PaginationModule, providers: [PaginationConfig] };
14
+ return { ngModule: PaginationModule, providers: [] };
16
15
  }
17
16
  }
18
17
  PaginationModule.decorators = [
@@ -22,4 +21,4 @@ PaginationModule.decorators = [
22
21
  exports: [PagerComponent, PaginationComponent]
23
22
  },] }
24
23
  ];
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtYm9vdHN0cmFwL3BhZ2luYXRpb24vIiwic291cmNlcyI6WyJwYWdpbmF0aW9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQU83RCxNQUFNLE9BQU8sZ0JBQWdCOzs7O0lBQzNCLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTyxFQUFFLFFBQVEsRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7SUFDdkUsQ0FBQzs7O1lBUkYsUUFBUSxTQUFDO2dCQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztnQkFDdkIsWUFBWSxFQUFFLENBQUMsY0FBYyxFQUFFLG1CQUFtQixDQUFDO2dCQUNuRCxPQUFPLEVBQUUsQ0FBQyxjQUFjLEVBQUUsbUJBQW1CLENBQUM7YUFDL0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUsIE1vZHVsZVdpdGhQcm92aWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFBhZ2luYXRpb25Db25maWcgfSBmcm9tICcuL3BhZ2luYXRpb24uY29uZmlnJztcblxuaW1wb3J0IHsgUGFnZXJDb21wb25lbnQgfSBmcm9tICcuL3BhZ2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQYWdpbmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9wYWdpbmF0aW9uLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFtQYWdlckNvbXBvbmVudCwgUGFnaW5hdGlvbkNvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtQYWdlckNvbXBvbmVudCwgUGFnaW5hdGlvbkNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgUGFnaW5hdGlvbk1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnMge1xuICAgIHJldHVybiB7IG5nTW9kdWxlOiBQYWdpbmF0aW9uTW9kdWxlLCBwcm92aWRlcnM6IFtQYWdpbmF0aW9uQ29uZmlnXSB9O1xuICB9XG59XG4iXX0=
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtYm9vdHN0cmFwL3BhZ2luYXRpb24vIiwic291cmNlcyI6WyJwYWdpbmF0aW9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBRTlELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQU83RCxNQUFNLE9BQU8sZ0JBQWdCOzs7O0lBQzNCLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTyxFQUFFLFFBQVEsRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLENBQUM7SUFDdkQsQ0FBQzs7O1lBUkYsUUFBUSxTQUFDO2dCQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztnQkFDdkIsWUFBWSxFQUFFLENBQUMsY0FBYyxFQUFFLG1CQUFtQixDQUFDO2dCQUNuRCxPQUFPLEVBQUUsQ0FBQyxjQUFjLEVBQUUsbUJBQW1CLENBQUM7YUFDL0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUsIE1vZHVsZVdpdGhQcm92aWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgUGFnZXJDb21wb25lbnQgfSBmcm9tICcuL3BhZ2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQYWdpbmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9wYWdpbmF0aW9uLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFtQYWdlckNvbXBvbmVudCwgUGFnaW5hdGlvbkNvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtQYWdlckNvbXBvbmVudCwgUGFnaW5hdGlvbkNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgUGFnaW5hdGlvbk1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8UGFnaW5hdGlvbk1vZHVsZT4ge1xuICAgIHJldHVybiB7IG5nTW9kdWxlOiBQYWdpbmF0aW9uTW9kdWxlLCBwcm92aWRlcnM6IFtdIH07XG4gIH1cbn1cbiJdfQ==
@@ -4,6 +4,7 @@
4
4
  */
5
5
  // todo: split
6
6
  import { Injectable } from '@angular/core';
7
+ import * as i0 from "@angular/core";
7
8
  /**
8
9
  * Provides default values for Pagination and pager components
9
10
  */
@@ -30,8 +31,11 @@ var PaginationConfig = /** @class */ (function () {
30
31
  };
31
32
  }
32
33
  PaginationConfig.decorators = [
33
- { type: Injectable }
34
+ { type: Injectable, args: [{
35
+ providedIn: 'root'
36
+ },] }
34
37
  ];
38
+ /** @nocollapse */ PaginationConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function PaginationConfig_Factory() { return new PaginationConfig(); }, token: PaginationConfig, providedIn: "root" });
35
39
  return PaginationConfig;
36
40
  }());
37
41
  export { PaginationConfig };
@@ -41,4 +45,4 @@ if (false) {
41
45
  /** @type {?} */
42
46
  PaginationConfig.prototype.pager;
43
47
  }
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb25maWcuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtYm9vdHN0cmFwL3BhZ2luYXRpb24vIiwic291cmNlcyI6WyJwYWdpbmF0aW9uLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFLM0M7SUFBQTtRQUVFLFNBQUksR0FBZ0I7WUFDbEIsT0FBTyxFQUFFLEtBQUssQ0FBQztZQUNmLFlBQVksRUFBRSxFQUFFO1lBQ2hCLGFBQWEsRUFBRSxLQUFLO1lBQ3BCLGNBQWMsRUFBRSxJQUFJO1lBQ3BCLFNBQVMsRUFBRSxPQUFPO1lBQ2xCLFlBQVksRUFBRSxVQUFVO1lBQ3hCLFFBQVEsRUFBRSxNQUFNO1lBQ2hCLFFBQVEsRUFBRSxNQUFNO1lBQ2hCLFlBQVksRUFBRSxFQUFFO1lBQ2hCLE1BQU0sRUFBRSxJQUFJO1NBQ2IsQ0FBQztRQUNGLFVBQUssR0FBZTtZQUNsQixZQUFZLEVBQUUsRUFBRTtZQUNoQixZQUFZLEVBQUUsWUFBWTtZQUMxQixRQUFRLEVBQUUsUUFBUTtZQUNsQixZQUFZLEVBQUUsRUFBRTtZQUNoQixLQUFLLEVBQUUsSUFBSTtTQUNaLENBQUM7SUFDSixDQUFDOztnQkFyQkEsVUFBVTs7SUFxQlgsdUJBQUM7Q0FBQSxBQXJCRCxJQXFCQztTQXBCWSxnQkFBZ0I7OztJQUMzQixnQ0FXRTs7SUFDRixpQ0FNRSIsInNvdXJjZXNDb250ZW50IjpbIi8vIHRvZG86IHNwbGl0XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IENvbmZpZ01vZGVsLCBQYWdlck1vZGVsIH0gZnJvbSAnLi9tb2RlbHMnO1xuXG4vKiogUHJvdmlkZXMgZGVmYXVsdCB2YWx1ZXMgZm9yIFBhZ2luYXRpb24gYW5kIHBhZ2VyIGNvbXBvbmVudHMgKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBQYWdpbmF0aW9uQ29uZmlnIHtcbiAgbWFpbjogQ29uZmlnTW9kZWwgPSB7XG4gICAgbWF4U2l6ZTogdm9pZCAwLFxuICAgIGl0ZW1zUGVyUGFnZTogMTAsXG4gICAgYm91bmRhcnlMaW5rczogZmFsc2UsXG4gICAgZGlyZWN0aW9uTGlua3M6IHRydWUsXG4gICAgZmlyc3RUZXh0OiAnRmlyc3QnLFxuICAgIHByZXZpb3VzVGV4dDogJ1ByZXZpb3VzJyxcbiAgICBuZXh0VGV4dDogJ05leHQnLFxuICAgIGxhc3RUZXh0OiAnTGFzdCcsXG4gICAgcGFnZUJ0bkNsYXNzOiAnJyxcbiAgICByb3RhdGU6IHRydWVcbiAgfTtcbiAgcGFnZXI6IFBhZ2VyTW9kZWwgPSB7XG4gICAgaXRlbXNQZXJQYWdlOiAxNSxcbiAgICBwcmV2aW91c1RleHQ6ICfCqyBQcmV2aW91cycsXG4gICAgbmV4dFRleHQ6ICdOZXh0IMK7JyxcbiAgICBwYWdlQnRuQ2xhc3M6ICcnLFxuICAgIGFsaWduOiB0cnVlXG4gIH07XG59XG4iXX0=
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb25maWcuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtYm9vdHN0cmFwL3BhZ2luYXRpb24vIiwic291cmNlcyI6WyJwYWdpbmF0aW9uLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7O0FBSzNDO0lBQUE7UUFJRSxTQUFJLEdBQWdCO1lBQ2xCLE9BQU8sRUFBRSxLQUFLLENBQUM7WUFDZixZQUFZLEVBQUUsRUFBRTtZQUNoQixhQUFhLEVBQUUsS0FBSztZQUNwQixjQUFjLEVBQUUsSUFBSTtZQUNwQixTQUFTLEVBQUUsT0FBTztZQUNsQixZQUFZLEVBQUUsVUFBVTtZQUN4QixRQUFRLEVBQUUsTUFBTTtZQUNoQixRQUFRLEVBQUUsTUFBTTtZQUNoQixZQUFZLEVBQUUsRUFBRTtZQUNoQixNQUFNLEVBQUUsSUFBSTtTQUNiLENBQUM7UUFDRixVQUFLLEdBQWU7WUFDbEIsWUFBWSxFQUFFLEVBQUU7WUFDaEIsWUFBWSxFQUFFLFlBQVk7WUFDMUIsUUFBUSxFQUFFLFFBQVE7WUFDbEIsWUFBWSxFQUFFLEVBQUU7WUFDaEIsS0FBSyxFQUFFLElBQUk7U0FDWixDQUFDO0tBQ0g7O2dCQXZCQSxVQUFVLFNBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzs7MkJBUkQ7Q0E2QkMsQUF2QkQsSUF1QkM7U0FwQlksZ0JBQWdCOzs7SUFDM0IsZ0NBV0U7O0lBQ0YsaUNBTUUiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0b2RvOiBzcGxpdFxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBDb25maWdNb2RlbCwgUGFnZXJNb2RlbCB9IGZyb20gJy4vbW9kZWxzJztcblxuLyoqIFByb3ZpZGVzIGRlZmF1bHQgdmFsdWVzIGZvciBQYWdpbmF0aW9uIGFuZCBwYWdlciBjb21wb25lbnRzICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBQYWdpbmF0aW9uQ29uZmlnIHtcbiAgbWFpbjogQ29uZmlnTW9kZWwgPSB7XG4gICAgbWF4U2l6ZTogdm9pZCAwLFxuICAgIGl0ZW1zUGVyUGFnZTogMTAsXG4gICAgYm91bmRhcnlMaW5rczogZmFsc2UsXG4gICAgZGlyZWN0aW9uTGlua3M6IHRydWUsXG4gICAgZmlyc3RUZXh0OiAnRmlyc3QnLFxuICAgIHByZXZpb3VzVGV4dDogJ1ByZXZpb3VzJyxcbiAgICBuZXh0VGV4dDogJ05leHQnLFxuICAgIGxhc3RUZXh0OiAnTGFzdCcsXG4gICAgcGFnZUJ0bkNsYXNzOiAnJyxcbiAgICByb3RhdGU6IHRydWVcbiAgfTtcbiAgcGFnZXI6IFBhZ2VyTW9kZWwgPSB7XG4gICAgaXRlbXNQZXJQYWdlOiAxNSxcbiAgICBwcmV2aW91c1RleHQ6ICfCqyBQcmV2aW91cycsXG4gICAgbmV4dFRleHQ6ICdOZXh0IMK7JyxcbiAgICBwYWdlQnRuQ2xhc3M6ICcnLFxuICAgIGFsaWduOiB0cnVlXG4gIH07XG59XG4iXX0=
@@ -4,7 +4,6 @@
4
4
  */
5
5
  import { CommonModule } from '@angular/common';
6
6
  import { NgModule } from '@angular/core';
7
- import { PaginationConfig } from './pagination.config';
8
7
  import { PagerComponent } from './pager.component';
9
8
  import { PaginationComponent } from './pagination.component';
10
9
  var PaginationModule = /** @class */ (function () {
@@ -17,7 +16,7 @@ var PaginationModule = /** @class */ (function () {
17
16
  * @return {?}
18
17
  */
19
18
  function () {
20
- return { ngModule: PaginationModule, providers: [PaginationConfig] };
19
+ return { ngModule: PaginationModule, providers: [] };
21
20
  };
22
21
  PaginationModule.decorators = [
23
22
  { type: NgModule, args: [{
@@ -29,4 +28,4 @@ var PaginationModule = /** @class */ (function () {
29
28
  return PaginationModule;
30
29
  }());
31
30
  export { PaginationModule };
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtYm9vdHN0cmFwL3BhZ2luYXRpb24vIiwic291cmNlcyI6WyJwYWdpbmF0aW9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUU3RDtJQUFBO0lBU0EsQ0FBQzs7OztJQUhRLHdCQUFPOzs7SUFBZDtRQUNFLE9BQU8sRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxDQUFDO0lBQ3ZFLENBQUM7O2dCQVJGLFFBQVEsU0FBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLFlBQVksRUFBRSxDQUFDLGNBQWMsRUFBRSxtQkFBbUIsQ0FBQztvQkFDbkQsT0FBTyxFQUFFLENBQUMsY0FBYyxFQUFFLG1CQUFtQixDQUFDO2lCQUMvQzs7SUFLRCx1QkFBQztDQUFBLEFBVEQsSUFTQztTQUpZLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUGFnaW5hdGlvbkNvbmZpZyB9IGZyb20gJy4vcGFnaW5hdGlvbi5jb25maWcnO1xuXG5pbXBvcnQgeyBQYWdlckNvbXBvbmVudCB9IGZyb20gJy4vcGFnZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFBhZ2luYXRpb25Db21wb25lbnQgfSBmcm9tICcuL3BhZ2luYXRpb24uY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGRlY2xhcmF0aW9uczogW1BhZ2VyQ29tcG9uZW50LCBQYWdpbmF0aW9uQ29tcG9uZW50XSxcbiAgZXhwb3J0czogW1BhZ2VyQ29tcG9uZW50LCBQYWdpbmF0aW9uQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBQYWdpbmF0aW9uTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVycyB7XG4gICAgcmV0dXJuIHsgbmdNb2R1bGU6IFBhZ2luYXRpb25Nb2R1bGUsIHByb3ZpZGVyczogW1BhZ2luYXRpb25Db25maWddIH07XG4gIH1cbn1cbiJdfQ==
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9uZ3gtYm9vdHN0cmFwL3BhZ2luYXRpb24vIiwic291cmNlcyI6WyJwYWdpbmF0aW9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBRTlELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUU3RDtJQUFBO0lBU0EsQ0FBQzs7OztJQUhRLHdCQUFPOzs7SUFBZDtRQUNFLE9BQU8sRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxDQUFDO0lBQ3ZELENBQUM7O2dCQVJGLFFBQVEsU0FBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLFlBQVksRUFBRSxDQUFDLGNBQWMsRUFBRSxtQkFBbUIsQ0FBQztvQkFDbkQsT0FBTyxFQUFFLENBQUMsY0FBYyxFQUFFLG1CQUFtQixDQUFDO2lCQUMvQzs7SUFLRCx1QkFBQztDQUFBLEFBVEQsSUFTQztTQUpZLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBQYWdlckNvbXBvbmVudCB9IGZyb20gJy4vcGFnZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFBhZ2luYXRpb25Db21wb25lbnQgfSBmcm9tICcuL3BhZ2luYXRpb24uY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGRlY2xhcmF0aW9uczogW1BhZ2VyQ29tcG9uZW50LCBQYWdpbmF0aW9uQ29tcG9uZW50XSxcbiAgZXhwb3J0czogW1BhZ2VyQ29tcG9uZW50LCBQYWdpbmF0aW9uQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBQYWdpbmF0aW9uTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxQYWdpbmF0aW9uTW9kdWxlPiB7XG4gICAgcmV0dXJuIHsgbmdNb2R1bGU6IFBhZ2luYXRpb25Nb2R1bGUsIHByb3ZpZGVyczogW10gfTtcbiAgfVxufVxuIl19
@@ -1,4 +1,4 @@
1
- import { Injectable, forwardRef, EventEmitter, Component, ElementRef, ChangeDetectorRef, Input, Output, NgModule } from '@angular/core';
1
+ import { Injectable, ɵɵdefineInjectable, forwardRef, EventEmitter, Component, ElementRef, ChangeDetectorRef, Input, Output, NgModule } from '@angular/core';
2
2
  import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
3
  import { CommonModule } from '@angular/common';
4
4
 
@@ -33,8 +33,11 @@ class PaginationConfig {
33
33
  }
34
34
  }
35
35
  PaginationConfig.decorators = [
36
- { type: Injectable }
36
+ { type: Injectable, args: [{
37
+ providedIn: 'root'
38
+ },] }
37
39
  ];
40
+ /** @nocollapse */ PaginationConfig.ɵprov = ɵɵdefineInjectable({ factory: function PaginationConfig_Factory() { return new PaginationConfig(); }, token: PaginationConfig, providedIn: "root" });
38
41
  if (false) {
39
42
  /** @type {?} */
40
43
  PaginationConfig.prototype.main;
@@ -969,7 +972,7 @@ class PaginationModule {
969
972
  * @return {?}
970
973
  */
971
974
  static forRoot() {
972
- return { ngModule: PaginationModule, providers: [PaginationConfig] };
975
+ return { ngModule: PaginationModule, providers: [] };
973
976
  }
974
977
  }
975
978
  PaginationModule.decorators = [