ngx-bootstrap 18.1.3 → 19.0.1

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 (438) hide show
  1. package/accordion/fesm2022/ngx-bootstrap-accordion.mjs +13 -14
  2. package/accordion/fesm2022/ngx-bootstrap-accordion.mjs.map +1 -1
  3. package/alert/fesm2022/ngx-bootstrap-alert.mjs +10 -10
  4. package/alert/fesm2022/ngx-bootstrap-alert.mjs.map +1 -1
  5. package/buttons/fesm2022/ngx-bootstrap-buttons.mjs +13 -13
  6. package/buttons/fesm2022/ngx-bootstrap-buttons.mjs.map +1 -1
  7. package/carousel/fesm2022/ngx-bootstrap-carousel.mjs +13 -13
  8. package/carousel/fesm2022/ngx-bootstrap-carousel.mjs.map +1 -1
  9. package/chronos/fesm2022/ngx-bootstrap-chronos.mjs.map +1 -1
  10. package/collapse/fesm2022/ngx-bootstrap-collapse.mjs +7 -8
  11. package/collapse/fesm2022/ngx-bootstrap-collapse.mjs.map +1 -1
  12. package/component-loader/fesm2022/ngx-bootstrap-component-loader.mjs +3 -3
  13. package/component-loader/fesm2022/ngx-bootstrap-component-loader.mjs.map +1 -1
  14. package/datepicker/fesm2022/ngx-bootstrap-datepicker.mjs +85 -86
  15. package/datepicker/fesm2022/ngx-bootstrap-datepicker.mjs.map +1 -1
  16. package/dropdown/fesm2022/ngx-bootstrap-dropdown.mjs +22 -25
  17. package/dropdown/fesm2022/ngx-bootstrap-dropdown.mjs.map +1 -1
  18. package/focus-trap/fesm2022/ngx-bootstrap-focus-trap.mjs +19 -19
  19. package/focus-trap/fesm2022/ngx-bootstrap-focus-trap.mjs.map +1 -1
  20. package/mini-ngrx/fesm2022/ngx-bootstrap-mini-ngrx.mjs.map +1 -1
  21. package/modal/fesm2022/ngx-bootstrap-modal.mjs +22 -24
  22. package/modal/fesm2022/ngx-bootstrap-modal.mjs.map +1 -1
  23. package/package.json +5 -7
  24. package/pagination/fesm2022/ngx-bootstrap-pagination.mjs +13 -13
  25. package/pagination/fesm2022/ngx-bootstrap-pagination.mjs.map +1 -1
  26. package/popover/fesm2022/ngx-bootstrap-popover.mjs +13 -13
  27. package/popover/fesm2022/ngx-bootstrap-popover.mjs.map +1 -1
  28. package/positioning/fesm2022/ngx-bootstrap-positioning.mjs +3 -3
  29. package/positioning/fesm2022/ngx-bootstrap-positioning.mjs.map +1 -1
  30. package/progressbar/fesm2022/ngx-bootstrap-progressbar.mjs +13 -13
  31. package/progressbar/fesm2022/ngx-bootstrap-progressbar.mjs.map +1 -1
  32. package/rating/fesm2022/ngx-bootstrap-rating.mjs +10 -10
  33. package/rating/fesm2022/ngx-bootstrap-rating.mjs.map +1 -1
  34. package/schematics/ng-add/index.js +2 -3
  35. package/schematics/ng-add/index.js.map +1 -1
  36. package/schematics/utils/addStyles.js +1 -2
  37. package/schematics/utils/addStyles.js.map +1 -1
  38. package/schematics/utils/current_dependency_versions.json +1 -1
  39. package/schematics/utils/getVersions.js +2 -3
  40. package/schematics/utils/getVersions.js.map +1 -1
  41. package/schematics/utils/index.js +6 -7
  42. package/schematics/utils/index.js.map +1 -1
  43. package/schematics/utils/ng-module-imports.js +1 -2
  44. package/schematics/utils/ng-module-imports.js.map +1 -1
  45. package/schematics/utils/project-main-file.js +1 -2
  46. package/schematics/utils/project-main-file.js.map +1 -1
  47. package/schematics/utils/project-targets.js +1 -2
  48. package/schematics/utils/project-targets.js.map +1 -1
  49. package/sortable/fesm2022/ngx-bootstrap-sortable.mjs +12 -14
  50. package/sortable/fesm2022/ngx-bootstrap-sortable.mjs.map +1 -1
  51. package/tabs/fesm2022/ngx-bootstrap-tabs.mjs +19 -19
  52. package/tabs/fesm2022/ngx-bootstrap-tabs.mjs.map +1 -1
  53. package/timepicker/fesm2022/ngx-bootstrap-timepicker.mjs +16 -16
  54. package/timepicker/fesm2022/ngx-bootstrap-timepicker.mjs.map +1 -1
  55. package/tooltip/fesm2022/ngx-bootstrap-tooltip.mjs +13 -13
  56. package/tooltip/fesm2022/ngx-bootstrap-tooltip.mjs.map +1 -1
  57. package/typeahead/fesm2022/ngx-bootstrap-typeahead.mjs +13 -14
  58. package/typeahead/fesm2022/ngx-bootstrap-typeahead.mjs.map +1 -1
  59. package/utils/fesm2022/ngx-bootstrap-utils.mjs.map +1 -1
  60. package/accordion/esm2022/accordion-group.component.mjs +0 -85
  61. package/accordion/esm2022/accordion.component.mjs +0 -57
  62. package/accordion/esm2022/accordion.config.mjs +0 -22
  63. package/accordion/esm2022/accordion.module.mjs +0 -24
  64. package/accordion/esm2022/index.mjs +0 -2
  65. package/accordion/esm2022/ngx-bootstrap-accordion.mjs +0 -5
  66. package/accordion/esm2022/public_api.mjs +0 -5
  67. package/alert/esm2022/alert.component.mjs +0 -77
  68. package/alert/esm2022/alert.config.mjs +0 -21
  69. package/alert/esm2022/alert.module.mjs +0 -23
  70. package/alert/esm2022/index.mjs +0 -2
  71. package/alert/esm2022/ngx-bootstrap-alert.mjs +0 -5
  72. package/alert/esm2022/public_api.mjs +0 -4
  73. package/buttons/esm2022/button-checkbox.directive.mjs +0 -88
  74. package/buttons/esm2022/button-radio-group.directive.mjs +0 -158
  75. package/buttons/esm2022/button-radio.directive.mjs +0 -189
  76. package/buttons/esm2022/buttons.module.mjs +0 -25
  77. package/buttons/esm2022/index.mjs +0 -2
  78. package/buttons/esm2022/ngx-bootstrap-buttons.mjs +0 -5
  79. package/buttons/esm2022/public_api.mjs +0 -5
  80. package/carousel/esm2022/carousel.component.mjs +0 -712
  81. package/carousel/esm2022/carousel.config.mjs +0 -32
  82. package/carousel/esm2022/carousel.module.mjs +0 -24
  83. package/carousel/esm2022/index.mjs +0 -2
  84. package/carousel/esm2022/models/index.mjs +0 -2
  85. package/carousel/esm2022/ngx-bootstrap-carousel.mjs +0 -5
  86. package/carousel/esm2022/public_api.mjs +0 -5
  87. package/carousel/esm2022/slide.component.mjs +0 -65
  88. package/carousel/esm2022/utils.mjs +0 -32
  89. package/chronos/esm2022/create/check-overflow.mjs +0 -30
  90. package/chronos/esm2022/create/clone.mjs +0 -6
  91. package/chronos/esm2022/create/date-from-array.mjs +0 -19
  92. package/chronos/esm2022/create/from-anything.mjs +0 -106
  93. package/chronos/esm2022/create/from-array.mjs +0 -135
  94. package/chronos/esm2022/create/from-object.mjs +0 -17
  95. package/chronos/esm2022/create/from-string-and-array.mjs +0 -38
  96. package/chronos/esm2022/create/from-string-and-format.mjs +0 -106
  97. package/chronos/esm2022/create/from-string.mjs +0 -222
  98. package/chronos/esm2022/create/local.mjs +0 -16
  99. package/chronos/esm2022/create/parsing-flags.mjs +0 -26
  100. package/chronos/esm2022/create/parsing.types.mjs +0 -2
  101. package/chronos/esm2022/create/valid.mjs +0 -42
  102. package/chronos/esm2022/duration/bubble.mjs +0 -47
  103. package/chronos/esm2022/duration/constructor.mjs +0 -130
  104. package/chronos/esm2022/duration/create.mjs +0 -112
  105. package/chronos/esm2022/duration/humanize.mjs +0 -79
  106. package/chronos/esm2022/duration/valid.mjs +0 -43
  107. package/chronos/esm2022/format/format.mjs +0 -50
  108. package/chronos/esm2022/format.mjs +0 -46
  109. package/chronos/esm2022/i18n/ar.mjs +0 -132
  110. package/chronos/esm2022/i18n/bg.mjs +0 -90
  111. package/chronos/esm2022/i18n/ca.mjs +0 -87
  112. package/chronos/esm2022/i18n/cs.mjs +0 -175
  113. package/chronos/esm2022/i18n/da.mjs +0 -49
  114. package/chronos/esm2022/i18n/de.mjs +0 -67
  115. package/chronos/esm2022/i18n/en-gb.mjs +0 -57
  116. package/chronos/esm2022/i18n/es-do.mjs +0 -81
  117. package/chronos/esm2022/i18n/es-pr.mjs +0 -74
  118. package/chronos/esm2022/i18n/es-us.mjs +0 -75
  119. package/chronos/esm2022/i18n/es.mjs +0 -80
  120. package/chronos/esm2022/i18n/et.mjs +0 -69
  121. package/chronos/esm2022/i18n/fa.mjs +0 -130
  122. package/chronos/esm2022/i18n/fi.mjs +0 -96
  123. package/chronos/esm2022/i18n/fr-ca.mjs +0 -69
  124. package/chronos/esm2022/i18n/fr.mjs +0 -72
  125. package/chronos/esm2022/i18n/gl.mjs +0 -80
  126. package/chronos/esm2022/i18n/he.mjs +0 -94
  127. package/chronos/esm2022/i18n/hi.mjs +0 -119
  128. package/chronos/esm2022/i18n/hr.mjs +0 -58
  129. package/chronos/esm2022/i18n/hu.mjs +0 -100
  130. package/chronos/esm2022/i18n/id.mjs +0 -78
  131. package/chronos/esm2022/i18n/it.mjs +0 -61
  132. package/chronos/esm2022/i18n/ja.mjs +0 -71
  133. package/chronos/esm2022/i18n/ka.mjs +0 -83
  134. package/chronos/esm2022/i18n/kk.mjs +0 -76
  135. package/chronos/esm2022/i18n/ko.mjs +0 -72
  136. package/chronos/esm2022/i18n/lt.mjs +0 -112
  137. package/chronos/esm2022/i18n/lv.mjs +0 -52
  138. package/chronos/esm2022/i18n/mn.mjs +0 -94
  139. package/chronos/esm2022/i18n/nb.mjs +0 -53
  140. package/chronos/esm2022/i18n/nl-be.mjs +0 -77
  141. package/chronos/esm2022/i18n/nl.mjs +0 -76
  142. package/chronos/esm2022/i18n/pl.mjs +0 -122
  143. package/chronos/esm2022/i18n/pt-br.mjs +0 -52
  144. package/chronos/esm2022/i18n/ro.mjs +0 -66
  145. package/chronos/esm2022/i18n/ru.mjs +0 -177
  146. package/chronos/esm2022/i18n/sk.mjs +0 -153
  147. package/chronos/esm2022/i18n/sl.mjs +0 -179
  148. package/chronos/esm2022/i18n/sq.mjs +0 -50
  149. package/chronos/esm2022/i18n/sv.mjs +0 -59
  150. package/chronos/esm2022/i18n/th-be.mjs +0 -73
  151. package/chronos/esm2022/i18n/th.mjs +0 -58
  152. package/chronos/esm2022/i18n/tr.mjs +0 -78
  153. package/chronos/esm2022/i18n/uk.mjs +0 -143
  154. package/chronos/esm2022/i18n/vi.mjs +0 -70
  155. package/chronos/esm2022/i18n/zh-cn.mjs +0 -109
  156. package/chronos/esm2022/index.mjs +0 -2
  157. package/chronos/esm2022/locale/calendar.mjs +0 -9
  158. package/chronos/esm2022/locale/locale.class.mjs +0 -532
  159. package/chronos/esm2022/locale/locale.defaults.mjs +0 -40
  160. package/chronos/esm2022/locale/locales.mjs +0 -228
  161. package/chronos/esm2022/moment/add-subtract.mjs +0 -35
  162. package/chronos/esm2022/moment/calendar.mjs +0 -41
  163. package/chronos/esm2022/moment/diff.mjs +0 -70
  164. package/chronos/esm2022/moment/min-max.mjs +0 -38
  165. package/chronos/esm2022/ngx-bootstrap-chronos.mjs +0 -5
  166. package/chronos/esm2022/parse/regex.mjs +0 -47
  167. package/chronos/esm2022/parse/token.mjs +0 -31
  168. package/chronos/esm2022/public_api.mjs +0 -59
  169. package/chronos/esm2022/testing/chain.mjs +0 -708
  170. package/chronos/esm2022/types.mjs +0 -2
  171. package/chronos/esm2022/units/aliases.mjs +0 -35
  172. package/chronos/esm2022/units/constants.mjs +0 -11
  173. package/chronos/esm2022/units/day-of-month.mjs +0 -31
  174. package/chronos/esm2022/units/day-of-week.mjs +0 -129
  175. package/chronos/esm2022/units/day-of-year.mjs +0 -37
  176. package/chronos/esm2022/units/hour.mjs +0 -127
  177. package/chronos/esm2022/units/index.mjs +0 -19
  178. package/chronos/esm2022/units/millisecond.mjs +0 -59
  179. package/chronos/esm2022/units/minute.mjs +0 -23
  180. package/chronos/esm2022/units/month.mjs +0 -63
  181. package/chronos/esm2022/units/offset.mjs +0 -209
  182. package/chronos/esm2022/units/priorities.mjs +0 -21
  183. package/chronos/esm2022/units/quarter.mjs +0 -39
  184. package/chronos/esm2022/units/second.mjs +0 -23
  185. package/chronos/esm2022/units/timestamp.mjs +0 -28
  186. package/chronos/esm2022/units/timezone.mjs +0 -19
  187. package/chronos/esm2022/units/week-calendar-utils.mjs +0 -70
  188. package/chronos/esm2022/units/week-year.mjs +0 -101
  189. package/chronos/esm2022/units/week.mjs +0 -58
  190. package/chronos/esm2022/units/year.mjs +0 -60
  191. package/chronos/esm2022/utils/abs-ceil.mjs +0 -4
  192. package/chronos/esm2022/utils/abs-round.mjs +0 -4
  193. package/chronos/esm2022/utils/compare-arrays.mjs +0 -16
  194. package/chronos/esm2022/utils/date-compare.mjs +0 -55
  195. package/chronos/esm2022/utils/date-getters.mjs +0 -67
  196. package/chronos/esm2022/utils/date-setters.mjs +0 -75
  197. package/chronos/esm2022/utils/defaults.mjs +0 -11
  198. package/chronos/esm2022/utils/start-end-of.mjs +0 -57
  199. package/chronos/esm2022/utils/type-checks.mjs +0 -58
  200. package/chronos/esm2022/utils/zero-fill.mjs +0 -10
  201. package/chronos/esm2022/utils.mjs +0 -7
  202. package/collapse/esm2022/collapse-animations.mjs +0 -11
  203. package/collapse/esm2022/collapse.directive.mjs +0 -169
  204. package/collapse/esm2022/collapse.module.mjs +0 -23
  205. package/collapse/esm2022/index.mjs +0 -2
  206. package/collapse/esm2022/ngx-bootstrap-collapse.mjs +0 -5
  207. package/collapse/esm2022/public_api.mjs +0 -3
  208. package/component-loader/esm2022/bs-component-ref.class.mjs +0 -3
  209. package/component-loader/esm2022/component-loader.class.mjs +0 -292
  210. package/component-loader/esm2022/component-loader.factory.mjs +0 -35
  211. package/component-loader/esm2022/content-ref.class.mjs +0 -16
  212. package/component-loader/esm2022/index.mjs +0 -2
  213. package/component-loader/esm2022/listen-options.model.mjs +0 -2
  214. package/component-loader/esm2022/ngx-bootstrap-component-loader.mjs +0 -5
  215. package/component-loader/esm2022/public_api.mjs +0 -5
  216. package/datepicker/esm2022/base/bs-datepicker-container.mjs +0 -76
  217. package/datepicker/esm2022/bs-datepicker-inline.component.mjs +0 -163
  218. package/datepicker/esm2022/bs-datepicker-inline.config.mjs +0 -14
  219. package/datepicker/esm2022/bs-datepicker-input.directive.mjs +0 -172
  220. package/datepicker/esm2022/bs-datepicker.component.mjs +0 -307
  221. package/datepicker/esm2022/bs-datepicker.config.mjs +0 -101
  222. package/datepicker/esm2022/bs-datepicker.module.mjs +0 -105
  223. package/datepicker/esm2022/bs-daterangepicker-inline.component.mjs +0 -169
  224. package/datepicker/esm2022/bs-daterangepicker-inline.config.mjs +0 -21
  225. package/datepicker/esm2022/bs-daterangepicker-input.directive.mjs +0 -215
  226. package/datepicker/esm2022/bs-daterangepicker.component.mjs +0 -302
  227. package/datepicker/esm2022/bs-daterangepicker.config.mjs +0 -19
  228. package/datepicker/esm2022/bs-locale.service.mjs +0 -32
  229. package/datepicker/esm2022/datepicker-animations.mjs +0 -16
  230. package/datepicker/esm2022/engine/calc-days-calendar.mjs +0 -21
  231. package/datepicker/esm2022/engine/flag-days-calendar.mjs +0 -93
  232. package/datepicker/esm2022/engine/flag-months-calendar.mjs +0 -45
  233. package/datepicker/esm2022/engine/flag-years-calendar.mjs +0 -42
  234. package/datepicker/esm2022/engine/format-days-calendar.mjs +0 -33
  235. package/datepicker/esm2022/engine/format-months-calendar.mjs +0 -23
  236. package/datepicker/esm2022/engine/format-years-calendar.mjs +0 -39
  237. package/datepicker/esm2022/engine/view-mode.mjs +0 -4
  238. package/datepicker/esm2022/index.mjs +0 -2
  239. package/datepicker/esm2022/models/index.mjs +0 -9
  240. package/datepicker/esm2022/ngx-bootstrap-datepicker.mjs +0 -5
  241. package/datepicker/esm2022/public_api.mjs +0 -17
  242. package/datepicker/esm2022/reducer/_defaults.mjs +0 -6
  243. package/datepicker/esm2022/reducer/bs-datepicker.actions.mjs +0 -143
  244. package/datepicker/esm2022/reducer/bs-datepicker.effects.mjs +0 -182
  245. package/datepicker/esm2022/reducer/bs-datepicker.reducer.mjs +0 -378
  246. package/datepicker/esm2022/reducer/bs-datepicker.state.mjs +0 -18
  247. package/datepicker/esm2022/reducer/bs-datepicker.store.mjs +0 -22
  248. package/datepicker/esm2022/themes/bs/bs-calendar-layout.component.mjs +0 -49
  249. package/datepicker/esm2022/themes/bs/bs-current-date-view.component.mjs +0 -17
  250. package/datepicker/esm2022/themes/bs/bs-custom-dates-view.component.mjs +0 -55
  251. package/datepicker/esm2022/themes/bs/bs-datepicker-container.component.mjs +0 -199
  252. package/datepicker/esm2022/themes/bs/bs-datepicker-day-decorator.directive.mjs +0 -48
  253. package/datepicker/esm2022/themes/bs/bs-datepicker-inline-container.component.mjs +0 -49
  254. package/datepicker/esm2022/themes/bs/bs-datepicker-navigation-view.component.mjs +0 -125
  255. package/datepicker/esm2022/themes/bs/bs-daterangepicker-container.component.mjs +0 -275
  256. package/datepicker/esm2022/themes/bs/bs-daterangepicker-inline-container.component.mjs +0 -49
  257. package/datepicker/esm2022/themes/bs/bs-days-calendar-view.component.mjs +0 -233
  258. package/datepicker/esm2022/themes/bs/bs-months-calendar-view.component.mjs +0 -95
  259. package/datepicker/esm2022/themes/bs/bs-timepicker-view.component.mjs +0 -56
  260. package/datepicker/esm2022/themes/bs/bs-years-calendar-view.component.mjs +0 -96
  261. package/datepicker/esm2022/utils/bs-calendar-utils.mjs +0 -117
  262. package/datepicker/esm2022/utils/copy-time-utils.mjs +0 -10
  263. package/datepicker/esm2022/utils/matrix-utils.mjs +0 -14
  264. package/dropdown/esm2022/bs-dropdown-container.component.mjs +0 -81
  265. package/dropdown/esm2022/bs-dropdown-menu.directive.mjs +0 -23
  266. package/dropdown/esm2022/bs-dropdown-toggle.directive.mjs +0 -88
  267. package/dropdown/esm2022/bs-dropdown.config.mjs +0 -24
  268. package/dropdown/esm2022/bs-dropdown.directive.mjs +0 -343
  269. package/dropdown/esm2022/bs-dropdown.module.mjs +0 -40
  270. package/dropdown/esm2022/bs-dropdown.state.mjs +0 -25
  271. package/dropdown/esm2022/dropdown-animations.mjs +0 -7
  272. package/dropdown/esm2022/index.mjs +0 -2
  273. package/dropdown/esm2022/ngx-bootstrap-dropdown.mjs +0 -5
  274. package/dropdown/esm2022/public_api.mjs +0 -8
  275. package/esm2022/index.mjs +0 -2
  276. package/esm2022/ngx-bootstrap.mjs +0 -5
  277. package/focus-trap/esm2022/boolean-property.mjs +0 -12
  278. package/focus-trap/esm2022/focus-trap-manager.mjs +0 -54
  279. package/focus-trap/esm2022/focus-trap.mjs +0 -411
  280. package/focus-trap/esm2022/focus-trap.module.mjs +0 -24
  281. package/focus-trap/esm2022/index.mjs +0 -2
  282. package/focus-trap/esm2022/interactivity-checker.mjs +0 -241
  283. package/focus-trap/esm2022/ngx-bootstrap-focus-trap.mjs +0 -5
  284. package/focus-trap/esm2022/platform.mjs +0 -80
  285. package/focus-trap/esm2022/public_api.mjs +0 -4
  286. package/locale/esm2022/index.mjs +0 -2
  287. package/locale/esm2022/ngx-bootstrap-locale.mjs +0 -5
  288. package/locale/esm2022/public_api.mjs +0 -47
  289. package/mini-ngrx/esm2022/index.mjs +0 -2
  290. package/mini-ngrx/esm2022/ngx-bootstrap-mini-ngrx.mjs +0 -5
  291. package/mini-ngrx/esm2022/public_api.mjs +0 -3
  292. package/mini-ngrx/esm2022/state.class.mjs +0 -16
  293. package/mini-ngrx/esm2022/store.class.mjs +0 -42
  294. package/modal/esm2022/bs-modal-ref.service.mjs +0 -22
  295. package/modal/esm2022/bs-modal.service.mjs +0 -231
  296. package/modal/esm2022/index.mjs +0 -2
  297. package/modal/esm2022/modal-backdrop.component.mjs +0 -51
  298. package/modal/esm2022/modal-backdrop.options.mjs +0 -7
  299. package/modal/esm2022/modal-container.component.mjs +0 -156
  300. package/modal/esm2022/modal-options.class.mjs +0 -46
  301. package/modal/esm2022/modal.directive.mjs +0 -365
  302. package/modal/esm2022/modal.module.mjs +0 -44
  303. package/modal/esm2022/models/index.mjs +0 -2
  304. package/modal/esm2022/ngx-bootstrap-modal.mjs +0 -5
  305. package/modal/esm2022/public_api.mjs +0 -9
  306. package/pagination/esm2022/index.mjs +0 -2
  307. package/pagination/esm2022/models/index.mjs +0 -2
  308. package/pagination/esm2022/ngx-bootstrap-pagination.mjs +0 -5
  309. package/pagination/esm2022/pager.component.mjs +0 -256
  310. package/pagination/esm2022/pagination.component.mjs +0 -257
  311. package/pagination/esm2022/pagination.config.mjs +0 -35
  312. package/pagination/esm2022/pagination.module.mjs +0 -25
  313. package/pagination/esm2022/public_api.mjs +0 -5
  314. package/popover/esm2022/index.mjs +0 -2
  315. package/popover/esm2022/ngx-bootstrap-popover.mjs +0 -5
  316. package/popover/esm2022/popover-container.component.mjs +0 -45
  317. package/popover/esm2022/popover.config.mjs +0 -35
  318. package/popover/esm2022/popover.directive.mjs +0 -241
  319. package/popover/esm2022/popover.module.mjs +0 -25
  320. package/popover/esm2022/public_api.mjs +0 -5
  321. package/positioning/esm2022/index.mjs +0 -2
  322. package/positioning/esm2022/models/index.mjs +0 -53
  323. package/positioning/esm2022/modifiers/arrow.mjs +0 -56
  324. package/positioning/esm2022/modifiers/flip.mjs +0 -65
  325. package/positioning/esm2022/modifiers/index.mjs +0 -6
  326. package/positioning/esm2022/modifiers/initData.mjs +0 -44
  327. package/positioning/esm2022/modifiers/preventOverflow.mjs +0 -54
  328. package/positioning/esm2022/modifiers/shift.mjs +0 -24
  329. package/positioning/esm2022/ng-positioning.mjs +0 -39
  330. package/positioning/esm2022/ngx-bootstrap-positioning.mjs +0 -5
  331. package/positioning/esm2022/positioning.service.mjs +0 -71
  332. package/positioning/esm2022/public_api.mjs +0 -5
  333. package/positioning/esm2022/utils/checkMargin.mjs +0 -32
  334. package/positioning/esm2022/utils/computeAutoPlacement.mjs +0 -55
  335. package/positioning/esm2022/utils/findCommonOffsetParent.mjs +0 -40
  336. package/positioning/esm2022/utils/getBordersSize.mjs +0 -10
  337. package/positioning/esm2022/utils/getBoundaries.mjs +0 -70
  338. package/positioning/esm2022/utils/getBoundingClientRect.mjs +0 -56
  339. package/positioning/esm2022/utils/getClientRect.mjs +0 -8
  340. package/positioning/esm2022/utils/getFixedPositionOffsetParent.mjs +0 -16
  341. package/positioning/esm2022/utils/getOffsetParent.mjs +0 -33
  342. package/positioning/esm2022/utils/getOffsetRectRelativeToArbitraryNode.mjs +0 -50
  343. package/positioning/esm2022/utils/getOffsets.mjs +0 -11
  344. package/positioning/esm2022/utils/getOppositePlacement.mjs +0 -8
  345. package/positioning/esm2022/utils/getOppositeVariation.mjs +0 -13
  346. package/positioning/esm2022/utils/getOuterSizes.mjs +0 -12
  347. package/positioning/esm2022/utils/getParentNode.mjs +0 -12
  348. package/positioning/esm2022/utils/getReferenceOffsets.mjs +0 -13
  349. package/positioning/esm2022/utils/getRoot.mjs +0 -10
  350. package/positioning/esm2022/utils/getScroll.mjs +0 -14
  351. package/positioning/esm2022/utils/getScrollParent.mjs +0 -28
  352. package/positioning/esm2022/utils/getStyleComputedProperty.mjs +0 -12
  353. package/positioning/esm2022/utils/getTargetOffsets.mjs +0 -30
  354. package/positioning/esm2022/utils/getViewportOffsetRectRelativeToArtbitraryNode.mjs +0 -19
  355. package/positioning/esm2022/utils/getWindowSizes.mjs +0 -14
  356. package/positioning/esm2022/utils/index.mjs +0 -24
  357. package/positioning/esm2022/utils/isFixed.mjs +0 -16
  358. package/positioning/esm2022/utils/isModifierEnabled.mjs +0 -4
  359. package/positioning/esm2022/utils/isNumeric.mjs +0 -10
  360. package/positioning/esm2022/utils/isOffsetContainer.mjs +0 -11
  361. package/positioning/esm2022/utils/setStyles.mjs +0 -21
  362. package/positioning/esm2022/utils/updateContainerClass.mjs +0 -32
  363. package/progressbar/esm2022/bar.component.mjs +0 -72
  364. package/progressbar/esm2022/index.mjs +0 -2
  365. package/progressbar/esm2022/ngx-bootstrap-progressbar.mjs +0 -5
  366. package/progressbar/esm2022/progressbar-type.interface.mjs +0 -2
  367. package/progressbar/esm2022/progressbar.component.mjs +0 -53
  368. package/progressbar/esm2022/progressbar.config.mjs +0 -19
  369. package/progressbar/esm2022/progressbar.module.mjs +0 -24
  370. package/progressbar/esm2022/public_api.mjs +0 -5
  371. package/rating/esm2022/index.mjs +0 -2
  372. package/rating/esm2022/models/index.mjs +0 -2
  373. package/rating/esm2022/ngx-bootstrap-rating.mjs +0 -5
  374. package/rating/esm2022/public_api.mjs +0 -4
  375. package/rating/esm2022/rating.component.mjs +0 -121
  376. package/rating/esm2022/rating.config.mjs +0 -18
  377. package/rating/esm2022/rating.module.mjs +0 -23
  378. package/sortable/esm2022/draggable-item.mjs +0 -2
  379. package/sortable/esm2022/draggable-item.service.mjs +0 -36
  380. package/sortable/esm2022/index.mjs +0 -2
  381. package/sortable/esm2022/ngx-bootstrap-sortable.mjs +0 -5
  382. package/sortable/esm2022/public_api.mjs +0 -4
  383. package/sortable/esm2022/sortable.component.mjs +0 -270
  384. package/sortable/esm2022/sortable.module.mjs +0 -23
  385. package/tabs/esm2022/index.mjs +0 -2
  386. package/tabs/esm2022/ng-transclude.directive.mjs +0 -29
  387. package/tabs/esm2022/ngx-bootstrap-tabs.mjs +0 -5
  388. package/tabs/esm2022/public_api.mjs +0 -7
  389. package/tabs/esm2022/tab-heading.directive.mjs +0 -21
  390. package/tabs/esm2022/tab.directive.mjs +0 -118
  391. package/tabs/esm2022/tabs.module.mjs +0 -41
  392. package/tabs/esm2022/tabset.component.mjs +0 -216
  393. package/tabs/esm2022/tabset.config.mjs +0 -21
  394. package/timepicker/esm2022/index.mjs +0 -2
  395. package/timepicker/esm2022/models/index.mjs +0 -2
  396. package/timepicker/esm2022/ngx-bootstrap-timepicker.mjs +0 -5
  397. package/timepicker/esm2022/public_api.mjs +0 -6
  398. package/timepicker/esm2022/reducer/timepicker.actions.mjs +0 -53
  399. package/timepicker/esm2022/reducer/timepicker.reducer.mjs +0 -83
  400. package/timepicker/esm2022/reducer/timepicker.store.mjs +0 -21
  401. package/timepicker/esm2022/timepicker-controls.util.mjs +0 -123
  402. package/timepicker/esm2022/timepicker.component.mjs +0 -334
  403. package/timepicker/esm2022/timepicker.config.mjs +0 -54
  404. package/timepicker/esm2022/timepicker.models.mjs +0 -2
  405. package/timepicker/esm2022/timepicker.module.mjs +0 -23
  406. package/timepicker/esm2022/timepicker.utils.mjs +0 -152
  407. package/tooltip/esm2022/index.mjs +0 -2
  408. package/tooltip/esm2022/ngx-bootstrap-tooltip.mjs +0 -5
  409. package/tooltip/esm2022/public_api.mjs +0 -5
  410. package/tooltip/esm2022/tooltip-container.component.mjs +0 -48
  411. package/tooltip/esm2022/tooltip.config.mjs +0 -22
  412. package/tooltip/esm2022/tooltip.directive.mjs +0 -344
  413. package/tooltip/esm2022/tooltip.module.mjs +0 -25
  414. package/typeahead/esm2022/index.mjs +0 -2
  415. package/typeahead/esm2022/latin-map.mjs +0 -827
  416. package/typeahead/esm2022/models/index.mjs +0 -2
  417. package/typeahead/esm2022/ngx-bootstrap-typeahead.mjs +0 -5
  418. package/typeahead/esm2022/public_api.mjs +0 -9
  419. package/typeahead/esm2022/typeahead-animations.mjs +0 -16
  420. package/typeahead/esm2022/typeahead-container.component.mjs +0 -310
  421. package/typeahead/esm2022/typeahead-match.class.mjs +0 -15
  422. package/typeahead/esm2022/typeahead-options.class.mjs +0 -8
  423. package/typeahead/esm2022/typeahead-order.class.mjs +0 -2
  424. package/typeahead/esm2022/typeahead-utils.mjs +0 -77
  425. package/typeahead/esm2022/typeahead.config.mjs +0 -34
  426. package/typeahead/esm2022/typeahead.directive.mjs +0 -573
  427. package/typeahead/esm2022/typeahead.module.mjs +0 -25
  428. package/utils/esm2022/decorators.mjs +0 -23
  429. package/utils/esm2022/facade/browser.mjs +0 -26
  430. package/utils/esm2022/index.mjs +0 -2
  431. package/utils/esm2022/linked-list.class.mjs +0 -247
  432. package/utils/esm2022/ngx-bootstrap-utils.mjs +0 -5
  433. package/utils/esm2022/public_api.mjs +0 -10
  434. package/utils/esm2022/theme-provider.mjs +0 -48
  435. package/utils/esm2022/trigger.class.mjs +0 -14
  436. package/utils/esm2022/triggers.mjs +0 -120
  437. package/utils/esm2022/utils.class.mjs +0 -30
  438. package/utils/esm2022/warn-once.mjs +0 -11
@@ -1,233 +0,0 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import { isSameDay } from 'ngx-bootstrap/chronos';
3
- import { BsNavigationDirection } from '../../models';
4
- import { BsDatepickerConfig } from '../../bs-datepicker.config';
5
- import { TooltipModule } from 'ngx-bootstrap/tooltip';
6
- import { BsDatepickerDayDecoratorComponent } from './bs-datepicker-day-decorator.directive';
7
- import { NgIf, NgFor } from '@angular/common';
8
- import { BsDatepickerNavigationViewComponent } from './bs-datepicker-navigation-view.component';
9
- import { BsCalendarLayoutComponent } from './bs-calendar-layout.component';
10
- import * as i0 from "@angular/core";
11
- import * as i1 from "../../bs-datepicker.config";
12
- import * as i2 from "ngx-bootstrap/tooltip";
13
- export class BsDaysCalendarViewComponent {
14
- constructor(_config) {
15
- this._config = _config;
16
- this.onNavigate = new EventEmitter();
17
- this.onViewMode = new EventEmitter();
18
- this.onSelect = new EventEmitter();
19
- this.onHover = new EventEmitter();
20
- this.onHoverWeek = new EventEmitter();
21
- this.isiOS = (/iPad|iPhone|iPod/.test(navigator.platform) ||
22
- (navigator.platform === 'MacIntel' && navigator.maxTouchPoints > 1));
23
- if (this._config.dateTooltipTexts && this._config.dateTooltipTexts.length > 0) {
24
- this.isShowTooltip = true;
25
- }
26
- }
27
- navigateTo(event) {
28
- const step = BsNavigationDirection.DOWN === event ? -1 : 1;
29
- this.onNavigate.emit({ step: { month: step } });
30
- }
31
- changeViewMode(event) {
32
- this.onViewMode.emit(event);
33
- }
34
- selectDay(event) {
35
- this.onSelect.emit(event);
36
- }
37
- selectWeek(week) {
38
- if (!this._config.selectWeek && !this._config.selectWeekDateRange) {
39
- return;
40
- }
41
- if (week.days.length === 0) {
42
- return;
43
- }
44
- if (this._config.selectWeek && week.days[0]
45
- && !week.days[0].isDisabled
46
- && this._config.selectFromOtherMonth) {
47
- this.onSelect.emit(week.days[0]);
48
- return;
49
- }
50
- const selectedDay = week.days.find((day) => {
51
- return this._config.selectFromOtherMonth
52
- ? !day.isDisabled
53
- : !day.isOtherMonth && !day.isDisabled;
54
- });
55
- this.onSelect.emit(selectedDay);
56
- if (this._config.selectWeekDateRange) {
57
- const days = week.days.slice(0);
58
- const lastDayOfRange = days.reverse().find((day) => {
59
- return this._config.selectFromOtherMonth
60
- ? !day.isDisabled
61
- : !day.isOtherMonth && !day.isDisabled;
62
- });
63
- this.onSelect.emit(lastDayOfRange);
64
- }
65
- }
66
- weekHoverHandler(cell, isHovered) {
67
- if (!this._config.selectWeek && !this._config.selectWeekDateRange) {
68
- return;
69
- }
70
- const hasActiveDays = cell.days.find((day) => {
71
- return this._config.selectFromOtherMonth
72
- ? !day.isDisabled
73
- : !day.isOtherMonth && !day.isDisabled;
74
- });
75
- if (hasActiveDays) {
76
- cell.isHovered = isHovered;
77
- this.isWeekHovered = isHovered;
78
- this.onHoverWeek.emit(cell);
79
- }
80
- }
81
- hoverDay(cell, isHovered) {
82
- if (this._config.selectFromOtherMonth && cell.isOtherMonth) {
83
- cell.isOtherMonthHovered = isHovered;
84
- }
85
- if (this._config.dateTooltipTexts) {
86
- cell.tooltipText = '';
87
- this._config.dateTooltipTexts.forEach((dateData) => {
88
- if (isSameDay(dateData.date, cell.date)) {
89
- cell.tooltipText = dateData.tooltipText;
90
- return;
91
- }
92
- });
93
- }
94
- this.onHover.emit({ cell, isHovered });
95
- }
96
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsDaysCalendarViewComponent, deps: [{ token: i1.BsDatepickerConfig }], target: i0.ɵɵFactoryTarget.Component }); }
97
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: BsDaysCalendarViewComponent, isStandalone: true, selector: "bs-days-calendar-view", inputs: { calendar: "calendar", options: "options", isDisabled: "isDisabled" }, outputs: { onNavigate: "onNavigate", onViewMode: "onViewMode", onSelect: "onSelect", onHover: "onHover", onHoverWeek: "onHoverWeek" }, ngImport: i0, template: `
98
- <bs-calendar-layout>
99
- <bs-datepicker-navigation-view
100
- [calendar]="calendar"
101
- [isDisabled]="!!isDisabled"
102
- (onNavigate)="navigateTo($event)"
103
- (onViewMode)="changeViewMode($event)"
104
- ></bs-datepicker-navigation-view>
105
- <!--days matrix-->
106
- <table role="grid" class="days weeks">
107
- <thead>
108
- <tr>
109
- <!--if show weeks-->
110
- <th *ngIf="options && options.showWeekNumbers"></th>
111
- <th *ngFor="let weekday of calendar.weekdays; let i = index"
112
- aria-label="weekday">{{ calendar.weekdays[i] }}
113
- </th>
114
- </tr>
115
- </thead>
116
- <tbody>
117
- <tr *ngFor="let week of calendar.weeks; let i = index">
118
- <td class="week" [class.active-week]="isWeekHovered" *ngIf="options && options.showWeekNumbers">
119
- <span *ngIf="isiOS" (click)="selectWeek(week)">{{ calendar.weekNumbers[i] }}</span>
120
- <span *ngIf="!isiOS"
121
- (click)="selectWeek(week)"
122
- (mouseenter)="weekHoverHandler(week, true)"
123
- (mouseleave)="weekHoverHandler(week, false)">{{ calendar.weekNumbers[i] }}</span>
124
- </td>
125
- <td *ngFor="let day of week.days" role="gridcell">
126
-
127
- <!-- When we want to show tooltips for dates -->
128
- <span *ngIf="!isiOS && isShowTooltip" bsDatepickerDayDecorator
129
- [day]="day"
130
- (click)="selectDay(day)"
131
- tooltip="{{day.tooltipText}}"
132
- (mouseenter)="hoverDay(day, true)"
133
- (mouseleave)="hoverDay(day, false)">{{ day.label }} 3</span>
134
- <!-- When tooltips for dates are disabled -->
135
- <span *ngIf="!isiOS && !isShowTooltip" bsDatepickerDayDecorator
136
- [day]="day"
137
- (click)="selectDay(day)"
138
- (mouseenter)="hoverDay(day, true)"
139
- (mouseleave)="hoverDay(day, false)">{{ day.label }} 2</span>
140
-
141
- <!-- For mobile iOS view, tooltips are not needed -->
142
- <span *ngIf="isiOS" bsDatepickerDayDecorator
143
- [day]="day"
144
- (click)="selectDay(day)">{{ day.label }} 1</span>
145
- </td>
146
- </tr>
147
- </tbody>
148
- </table>
149
-
150
- </bs-calendar-layout>
151
- `, isInline: true, dependencies: [{ kind: "component", type: BsCalendarLayoutComponent, selector: "bs-calendar-layout" }, { kind: "component", type: BsDatepickerNavigationViewComponent, selector: "bs-datepicker-navigation-view", inputs: ["calendar", "isDisabled"], outputs: ["onNavigate", "onViewMode"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: BsDatepickerDayDecoratorComponent, selector: "[bsDatepickerDayDecorator]", inputs: ["day"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i2.TooltipDirective, selector: "[tooltip], [tooltipHtml]", inputs: ["adaptivePosition", "tooltip", "placement", "triggers", "container", "containerClass", "boundariesElement", "isOpen", "isDisabled", "delay", "tooltipHtml", "tooltipPlacement", "tooltipIsOpen", "tooltipEnable", "tooltipAppendToBody", "tooltipAnimation", "tooltipClass", "tooltipContext", "tooltipPopupDelay", "tooltipFadeDuration", "tooltipTrigger"], outputs: ["tooltipChange", "onShown", "onHidden", "tooltipStateChanged"], exportAs: ["bs-tooltip"] }] }); }
152
- }
153
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsDaysCalendarViewComponent, decorators: [{
154
- type: Component,
155
- args: [{
156
- selector: 'bs-days-calendar-view',
157
- // changeDetection: ChangeDetectionStrategy.OnPush,
158
- template: `
159
- <bs-calendar-layout>
160
- <bs-datepicker-navigation-view
161
- [calendar]="calendar"
162
- [isDisabled]="!!isDisabled"
163
- (onNavigate)="navigateTo($event)"
164
- (onViewMode)="changeViewMode($event)"
165
- ></bs-datepicker-navigation-view>
166
- <!--days matrix-->
167
- <table role="grid" class="days weeks">
168
- <thead>
169
- <tr>
170
- <!--if show weeks-->
171
- <th *ngIf="options && options.showWeekNumbers"></th>
172
- <th *ngFor="let weekday of calendar.weekdays; let i = index"
173
- aria-label="weekday">{{ calendar.weekdays[i] }}
174
- </th>
175
- </tr>
176
- </thead>
177
- <tbody>
178
- <tr *ngFor="let week of calendar.weeks; let i = index">
179
- <td class="week" [class.active-week]="isWeekHovered" *ngIf="options && options.showWeekNumbers">
180
- <span *ngIf="isiOS" (click)="selectWeek(week)">{{ calendar.weekNumbers[i] }}</span>
181
- <span *ngIf="!isiOS"
182
- (click)="selectWeek(week)"
183
- (mouseenter)="weekHoverHandler(week, true)"
184
- (mouseleave)="weekHoverHandler(week, false)">{{ calendar.weekNumbers[i] }}</span>
185
- </td>
186
- <td *ngFor="let day of week.days" role="gridcell">
187
-
188
- <!-- When we want to show tooltips for dates -->
189
- <span *ngIf="!isiOS && isShowTooltip" bsDatepickerDayDecorator
190
- [day]="day"
191
- (click)="selectDay(day)"
192
- tooltip="{{day.tooltipText}}"
193
- (mouseenter)="hoverDay(day, true)"
194
- (mouseleave)="hoverDay(day, false)">{{ day.label }} 3</span>
195
- <!-- When tooltips for dates are disabled -->
196
- <span *ngIf="!isiOS && !isShowTooltip" bsDatepickerDayDecorator
197
- [day]="day"
198
- (click)="selectDay(day)"
199
- (mouseenter)="hoverDay(day, true)"
200
- (mouseleave)="hoverDay(day, false)">{{ day.label }} 2</span>
201
-
202
- <!-- For mobile iOS view, tooltips are not needed -->
203
- <span *ngIf="isiOS" bsDatepickerDayDecorator
204
- [day]="day"
205
- (click)="selectDay(day)">{{ day.label }} 1</span>
206
- </td>
207
- </tr>
208
- </tbody>
209
- </table>
210
-
211
- </bs-calendar-layout>
212
- `,
213
- standalone: true,
214
- imports: [BsCalendarLayoutComponent, BsDatepickerNavigationViewComponent, NgIf, NgFor, BsDatepickerDayDecoratorComponent, TooltipModule]
215
- }]
216
- }], ctorParameters: () => [{ type: i1.BsDatepickerConfig }], propDecorators: { calendar: [{
217
- type: Input
218
- }], options: [{
219
- type: Input
220
- }], isDisabled: [{
221
- type: Input
222
- }], onNavigate: [{
223
- type: Output
224
- }], onViewMode: [{
225
- type: Output
226
- }], onSelect: [{
227
- type: Output
228
- }], onHover: [{
229
- type: Output
230
- }], onHoverWeek: [{
231
- type: Output
232
- }] } });
233
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnMtZGF5cy1jYWxlbmRhci12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9kYXRlcGlja2VyL3RoZW1lcy9icy9icy1kYXlzLWNhbGVuZGFyLXZpZXcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRWxELE9BQU8sRUFFTCxxQkFBcUIsRUFNdEIsTUFBTSxjQUFjLENBQUM7QUFFdEIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQzVGLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUMsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDaEcsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7Ozs7QUErRDNFLE1BQU0sT0FBTywyQkFBMkI7SUFnQnRDLFlBQW9CLE9BQTJCO1FBQTNCLFlBQU8sR0FBUCxPQUFPLENBQW9CO1FBWHJDLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBcUIsQ0FBQztRQUNuRCxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQXdCLENBQUM7UUFFdEQsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFnQixDQUFDO1FBQzVDLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBa0IsQ0FBQztRQUM3QyxnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFpQixDQUFDO1FBT3hELElBQUksQ0FBQyxLQUFL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Q29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IGlzU2FtZURheSB9IGZyb20gJ25neC1ib290c3RyYXAvY2hyb25vcyc7XG5cbmltcG9ydCB7XG4gIEJzRGF0ZXBpY2tlclZpZXdNb2RlLFxuICBCc05hdmlnYXRpb25EaXJlY3Rpb24sXG4gIEJzTmF2aWdhdGlvbkV2ZW50LFxuICBDZWxsSG92ZXJFdmVudCwgRGF0ZXBpY2tlckRhdGVUb29sdGlwVGV4dCxcbiAgRGF0ZXBpY2tlclJlbmRlck9wdGlvbnMsXG4gIERheXNDYWxlbmRhclZpZXdNb2RlbCxcbiAgRGF5Vmlld01vZGVsLCBXZWVrVmlld01vZGVsXG59IGZyb20gJy4uLy4uL21vZGVscyc7XG5cbmltcG9ydCB7IEJzRGF0ZXBpY2tlckNvbmZpZyB9IGZyb20gJy4uLy4uL2JzLWRhdGVwaWNrZXIuY29uZmlnJztcbmltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tICduZ3gtYm9vdHN0cmFwL3Rvb2x0aXAnO1xuaW1wb3J0IHsgQnNEYXRlcGlja2VyRGF5RGVjb3JhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9icy1kYXRlcGlja2VyLWRheS1kZWNvcmF0b3IuZGlyZWN0aXZlJztcbmltcG9ydCB7IE5nSWYsIE5nRm9yIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEJzRGF0ZXBpY2tlck5hdmlnYXRpb25WaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9icy1kYXRlcGlja2VyLW5hdmlnYXRpb24tdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnNDYWxlbmRhckxheW91dENvbXBvbmVudCB9IGZyb20gJy4vYnMtY2FsZW5kYXItbGF5b3V0LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYnMtZGF5cy1jYWxlbmRhci12aWV3JyxcbiAgICAvLyBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICB0ZW1wbGF0ZTogYFxuICAgIDxicy1jYWxlbmRhci1sYXlvdXQ+XG4gICAgICA8YnMtZGF0ZXBpY2tlci1uYXZpZ2F0aW9uLXZpZXdcbiAgICAgICAgW2NhbGVuZGFyXT1cImNhbGVuZGFyXCJcbiAgICAgICAgW2lzRGlzYWJsZWRdPVwiISFpc0Rpc2FibGVkXCJcbiAgICAgICAgKG9uTmF2aWdhdGUpPVwibmF2aWdhdGVUbygkZXZlbnQpXCJcbiAgICAgICAgKG9uVmlld01vZGUpPVwiY2hhbmdlVmlld01vZGUoJGV2ZW50KVwiXG4gICAgICA+PC9icy1kYXRlcGlja2VyLW5hdmlnYXRpb24tdmlldz5cbiAgICAgIDwhLS1kYXlzIG1hdHJpeC0tPlxuICAgICAgPHRhYmxlIHJvbGU9XCJncmlkXCIgY2xhc3M9XCJkYXlzIHdlZWtzXCI+XG4gICAgICAgIDx0aGVhZD5cbiAgICAgICAgPHRyPlxuICAgICAgICAgIDwhLS1pZiBzaG93IHdlZWtzLS0+XG4gICAgICAgICAgPHRoICpuZ0lmPVwib3B0aW9ucyAmJiBvcHRpb25zLnNob3dXZWVrTnVtYmVyc1wiPjwvdGg+XG4gICAgICAgICAgPHRoICpuZ0Zvcj1cImxldCB3ZWVrZGF5IG9mIGNhbGVuZGFyLndlZWtkYXlzOyBsZXQgaSA9IGluZGV4XCJcbiAgICAgICAgICAgICAgYXJpYS1sYWJlbD1cIndlZWtkYXlcIj57eyBjYWxlbmRhci53ZWVrZGF5c1tpXSB9fVxuICAgICAgICAgIDwvdGg+XG4gICAgICAgIDwvdHI+XG4gICAgICAgIDwvdGhlYWQ+XG4gICAgICAgIDx0Ym9keT5cbiAgICAgICAgPHRyICpuZ0Zvcj1cImxldCB3ZWVrIG9mIGNhbGVuZGFyLndlZWtzOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgICAgPHRkIGNsYXNzPVwid2Vla1wiIFtjbGFzcy5hY3RpdmUtd2Vla109XCJpc1dlZWtIb3ZlcmVkXCIgICpuZ0lmPVwib3B0aW9ucyAmJiBvcHRpb25zLnNob3dXZWVrTnVtYmVyc1wiPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJpc2lPU1wiIChjbGljayk9XCJzZWxlY3RXZWVrKHdlZWspXCI+e3sgY2FsZW5kYXIud2Vla051bWJlcnNbaV0gfX08L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFpc2lPU1wiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdFdlZWsod2VlaylcIlxuICAgICAgICAgICAgICAgIChtb3VzZWVudGVyKT1cIndlZWtIb3ZlckhhbmRsZXIod2VlaywgdHJ1ZSlcIlxuICAgICAgICAgICAgICAgIChtb3VzZWxlYXZlKT1cIndlZWtIb3ZlckhhbmRsZXIod2VlaywgZmFsc2UpXCI+e3sgY2FsZW5kYXIud2Vla051bWJlcnNbaV0gfX08L3NwYW4+XG4gICAgICAgICAgPC90ZD5cbiAgICAgICAgICA8dGQgKm5nRm9yPVwibGV0IGRheSBvZiB3ZWVrLmRheXNcIiByb2xlPVwiZ3JpZGNlbGxcIj5cblxuICAgICAgICAgICAgPCEtLSBXaGVuIHdlIHdhbnQgdG8gc2hvdyB0b29sdGlwcyBmb3IgZGF0ZXMgLS0+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFpc2lPUyAmJiBpc1Nob3dUb29sdGlwXCIgYnNEYXRlcGlja2VyRGF5RGVjb3JhdG9yXG4gICAgICAgICAgICAgICAgW2RheV09XCJkYXlcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3REYXkoZGF5KVwiXG4gICAgICAgICAgICAgICAgdG9vbHRpcD1cInt7ZGF5LnRvb2x0aXBUZXh0fX1cIlxuICAgICAgICAgICAgICAgIChtb3VzZWVudGVyKT1cImhvdmVyRGF5KGRheSwgdHJ1ZSlcIlxuICAgICAgICAgICAgICAgIChtb3VzZWxlYXZlKT1cImhvdmVyRGF5KGRheSwgZmFsc2UpXCI+e3sgZGF5LmxhYmVsIH19IDM8L3NwYW4+XG4gICAgICAgICAgICA8IS0tIFdoZW4gdG9vbHRpcHMgZm9yIGRhdGVzIGFyZSBkaXNhYmxlZCAtLT5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIWlzaU9TICYmICFpc1Nob3dUb29sdGlwXCIgYnNEYXRlcGlja2VyRGF5RGVjb3JhdG9yXG4gICAgICAgICAgICAgICAgICBbZGF5XT1cImRheVwiXG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0RGF5KGRheSlcIlxuICAgICAgICAgICAgICAgICAgKG1vdXNlZW50ZXIpPVwiaG92ZXJEYXkoZGF5LCB0cnVlKVwiXG4gICAgICAgICAgICAgICAgICAobW91c2VsZWF2ZSk9XCJob3ZlckRheShkYXksIGZhbHNlKVwiPnt7IGRheS5sYWJlbCB9fSAyPC9zcGFuPlxuXG4gICAgICAgICAgICA8IS0tIEZvciBtb2JpbGUgaU9TIHZpZXcsIHRvb2x0aXBzIGFyZSBub3QgbmVlZGVkIC0tPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJpc2lPU1wiIGJzRGF0ZXBpY2tlckRheURlY29yYXRvclxuICAgICAgICAgICAgICAgICAgW2RheV09XCJkYXlcIlxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdERheShkYXkpXCI+e3sgZGF5LmxhYmVsIH19IDE8L3NwYW4+XG4gICAgICAgICAgPC90ZD5cbiAgICAgICAgPC90cj5cbiAgICAgICAgPC90Ym9keT5cbiAgICAgIDwvdGFibGU+XG5cbiAgICA8L2JzLWNhbGVuZGFyLWxheW91dD5cbiAgYCxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtCc0NhbGVuZGFyTGF5b3V0Q29tcG9uZW50LCBCc0RhdGVwaWNrZXJOYXZpZ2F0aW9uVmlld0NvbXBvbmVudCwgTmdJZiwgTmdGb3IsIEJzRGF0ZXBpY2tlckRheURlY29yYXRvckNvbXBvbmVudCwgVG9vbHRpcE1vZHVsZV1cbn0pXG5leHBvcnQgY2xhc3MgQnNEYXlzQ2FsZW5kYXJWaWV3Q29tcG9uZW50ICB7XG4gIEBJbnB1dCgpIGNhbGVuZGFyITogRGF5c0NhbGVuZGFyVmlld01vZGVsO1xuICBASW5wdXQoKSBvcHRpb25zPzogRGF0ZXBpY2tlclJlbmRlck9wdGlvbnMgfCBudWxsO1xuICBASW5wdXQoKSBpc0Rpc2FibGVkPzogYm9vbGVhbjtcblxuICBAT3V0cHV0KCkgb25OYXZpZ2F0ZSA9IG5ldyBFdmVudEVtaXR0ZXI8QnNOYXZpZ2F0aW9uRXZlbnQ+KCk7XG4gIEBPdXRwdXQoKSBvblZpZXdNb2RlID0gbmV3IEV2ZW50RW1pdHRlcjxCc0RhdGVwaWNrZXJWaWV3TW9kZT4oKTtcblxuICBAT3V0cHV0KCkgb25TZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyPERheVZpZXdNb2RlbD4oKTtcbiAgQE91dHB1dCgpIG9uSG92ZXIgPSBuZXcgRXZlbnRFbWl0dGVyPENlbGxIb3ZlckV2ZW50PigpO1xuICBAT3V0cHV0KCkgb25Ib3ZlcldlZWsgPSBuZXcgRXZlbnRFbWl0dGVyPFdlZWtWaWV3TW9kZWw+KCk7XG5cbiAgaXNXZWVrSG92ZXJlZD86IGJvb2xlYW47XG4gIGlzaU9TOiBib29sZWFuO1xuICBpc1Nob3dUb29sdGlwPzogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9jb25maWc6IEJzRGF0ZXBpY2tlckNvbmZpZykge1xuICAgIHRoaXMuaXNpT1MgPSAoL2lQYWR8aVBob25lfGlQb2QvLnRlc3QobmF2aWdhdG9yLnBsYXRmb3JtKSB8fFxuICAgICAgKG5hdmlnYXRvci5wbGF0Zm9ybSA9PT0gJ01hY0ludGVsJyAmJiBuYXZpZ2F0b3IubWF4VG91Y2hQb2ludHMgPiAxKSk7XG4gICAgaWYgKHRoaXMuX2NvbmZpZy5kYXRlVG9vbHRpcFRleHRzICYmIHRoaXMuX2NvbmZpZy5kYXRlVG9vbHRpcFRleHRzLmxlbmd0aCA+IDApIHtcbiAgICAgIHRoaXMuaXNTaG93VG9vbHRpcCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgbmF2aWdhdGVUbyhldmVudDogQnNOYXZpZ2F0aW9uRGlyZWN0aW9uKTogdm9pZCB7XG4gICAgY29uc3Qgc3RlcCA9IEJzTmF2aWdhdGlvbkRpcmVjdGlvbi5ET1dOID09PSBldmVudCA/IC0xIDogMTtcbiAgICB0aGlzLm9uTmF2aWdhdGUuZW1pdCh7IHN0ZXA6IHsgbW9udGg6IHN0ZXAgfSB9KTtcbiAgfVxuXG4gIGNoYW5nZVZpZXdNb2RlKGV2ZW50OiBCc0RhdGVwaWNrZXJWaWV3TW9kZSk6IHZvaWQge1xuICAgIHRoaXMub25WaWV3TW9kZS5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIHNlbGVjdERheShldmVudDogRGF5Vmlld01vZGVsKTogdm9pZCB7XG4gICAgdGhpcy5vblNlbGVjdC5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIHNlbGVjdFdlZWsod2VlazogV2Vla1ZpZXdNb2RlbCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fY29uZmlnLnNlbGVjdFdlZWsgJiYgIXRoaXMuX2NvbmZpZy5zZWxlY3RXZWVrRGF0ZVJhbmdlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHdlZWsuZGF5cy5sZW5ndGggPT09IDApIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fY29uZmlnLnNlbGVjdFdlZWsgJiYgd2Vlay5kYXlzWzBdXG4gICAgICAgICYmICF3ZWVrLmRheXNbMF0uaXNEaXNhYmxlZFxuICAgICAgICAmJiB0aGlzLl9jb25maWcuc2VsZWN0RnJvbU90aGVyTW9udGgpIHtcblxuICAgICAgICB0aGlzLm9uU2VsZWN0LmVtaXQod2Vlay5kYXlzWzBdKTtcblxuICAgICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3Qgc2VsZWN0ZWREYXkgPSB3ZWVrLmRheXMuZmluZCgoZGF5OiBEYXlWaWV3TW9kZWwpID0+IHtcbiAgICAgIHJldHVybiB0aGlzLl9jb25maWcuc2VsZWN0RnJvbU90aGVyTW9udGhcbiAgICAgICAgPyAhZGF5LmlzRGlzYWJsZWRcbiAgICAgICAgOiAhZGF5LmlzT3RoZXJNb250aCAmJiAhZGF5LmlzRGlzYWJsZWQ7XG4gICAgfSk7XG5cbiAgICB0aGlzLm9uU2VsZWN0LmVtaXQoc2VsZWN0ZWREYXkpO1xuXG4gICAgaWYgKHRoaXMuX2NvbmZpZy5zZWxlY3RXZWVrRGF0ZVJhbmdlKSB7XG4gICAgICBjb25zdCBkYXlzID0gd2Vlay5kYXlzLnNsaWNlKDApO1xuICAgICAgY29uc3QgbGFzdERheU9mUmFuZ2UgPSBkYXlzLnJldmVyc2UoKS5maW5kKChkYXk6IERheVZpZXdNb2RlbCkgPT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fY29uZmlnLnNlbGVjdEZyb21PdGhlck1vbnRoXG4gICAgICAgICAgPyAhZGF5LmlzRGlzYWJsZWRcbiAgICAgICAgICA6ICFkYXkuaXNPdGhlck1vbnRoICYmICFkYXkuaXNEaXNhYmxlZDtcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLm9uU2VsZWN0LmVtaXQobGFzdERheU9mUmFuZ2UpO1xuICAgIH1cbiAgfVxuXG4gIHdlZWtIb3ZlckhhbmRsZXIoY2VsbDogV2Vla1ZpZXdNb2RlbCwgaXNIb3ZlcmVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9jb25maWcuc2VsZWN0V2VlayAmJiAhdGhpcy5fY29uZmlnLnNlbGVjdFdlZWtEYXRlUmFuZ2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBoYXNBY3RpdmVEYXlzID0gY2VsbC5kYXlzLmZpbmQoKGRheTogRGF5Vmlld01vZGVsKSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5fY29uZmlnLnNlbGVjdEZyb21PdGhlck1vbnRoXG4gICAgICAgID8gIWRheS5pc0Rpc2FibGVkXG4gICAgICAgIDogIWRheS5pc090aGVyTW9udGggJiYgIWRheS5pc0Rpc2FibGVkO1xuICAgIH0pO1xuXG4gICAgaWYgKGhhc0FjdGl2ZURheXMpIHtcbiAgICAgIGNlbGwuaXNIb3ZlcmVkID0gaXNIb3ZlcmVkO1xuICAgICAgdGhpcy5pc1dlZWtIb3ZlcmVkID0gaXNIb3ZlcmVkO1xuICAgICAgdGhpcy5vbkhvdmVyV2Vlay5lbWl0KGNlbGwpO1xuICAgIH1cbiAgfVxuXG4gIGhvdmVyRGF5KGNlbGw6IERheVZpZXdNb2RlbCwgaXNIb3ZlcmVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2NvbmZpZy5zZWxlY3RGcm9tT3RoZXJNb250aCAmJiBjZWxsLmlzT3RoZXJNb250aCkge1xuICAgICAgY2VsbC5pc090aGVyTW9udGhIb3ZlcmVkID0gaXNIb3ZlcmVkO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9jb25maWcuZGF0ZVRvb2x0aXBUZXh0cykge1xuICAgICAgY2VsbC50b29sdGlwVGV4dCA9ICcnO1xuICAgICAgdGhpcy5fY29uZmlnLmRhdGVUb29sdGlwVGV4dHMuZm9yRWFjaCgoZGF0ZURhdGE6IERhdGVwaWNrZXJEYXRlVG9vbHRpcFRleHQpID0+IHtcblxuICAgICAgICBpZiAoaXNTYW1lRGF5KGRhdGVEYXRhLmRhdGUsIGNlbGwuZGF0ZSkpIHtcbiAgICAgICAgICBjZWxsLnRvb2x0aXBUZXh0ID0gZGF0ZURhdGEudG9vbHRpcFRleHQ7XG5cbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHRoaXMub25Ib3Zlci5lbWl0KHsgY2VsbCwgaXNIb3ZlcmVkIH0pO1xuICB9XG59XG4iXX0=
@@ -1,95 +0,0 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import { BsNavigationDirection } from '../../models';
3
- import { NgFor } from '@angular/common';
4
- import { BsDatepickerNavigationViewComponent } from './bs-datepicker-navigation-view.component';
5
- import { BsCalendarLayoutComponent } from './bs-calendar-layout.component';
6
- import * as i0 from "@angular/core";
7
- export class BsMonthCalendarViewComponent {
8
- constructor() {
9
- this.onNavigate = new EventEmitter();
10
- this.onViewMode = new EventEmitter();
11
- this.onSelect = new EventEmitter();
12
- this.onHover = new EventEmitter();
13
- }
14
- navigateTo(event) {
15
- const step = BsNavigationDirection.DOWN === event ? -1 : 1;
16
- this.onNavigate.emit({ step: { year: step } });
17
- }
18
- viewMonth(month) {
19
- this.onSelect.emit(month);
20
- }
21
- hoverMonth(cell, isHovered) {
22
- this.onHover.emit({ cell, isHovered });
23
- }
24
- changeViewMode(event) {
25
- this.onViewMode.emit(event);
26
- }
27
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsMonthCalendarViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
28
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: BsMonthCalendarViewComponent, isStandalone: true, selector: "bs-month-calendar-view", inputs: { calendar: "calendar" }, outputs: { onNavigate: "onNavigate", onViewMode: "onViewMode", onSelect: "onSelect", onHover: "onHover" }, ngImport: i0, template: `
29
- <bs-calendar-layout>
30
- <bs-datepicker-navigation-view
31
- [calendar]="calendar"
32
- (onNavigate)="navigateTo($event)"
33
- (onViewMode)="changeViewMode($event)"
34
- ></bs-datepicker-navigation-view>
35
-
36
- <table role="grid" class="months">
37
- <tbody>
38
- <tr *ngFor="let row of calendar?.months">
39
- <td *ngFor="let month of row" role="gridcell"
40
- (click)="viewMonth(month)"
41
- (mouseenter)="hoverMonth(month, true)"
42
- (mouseleave)="hoverMonth(month, false)"
43
- [class.disabled]="month.isDisabled"
44
- [class.is-highlighted]="month.isHovered">
45
- <span [class.selected]="month.isSelected">{{ month.label }}</span>
46
- </td>
47
- </tr>
48
- </tbody>
49
- </table>
50
- </bs-calendar-layout>
51
- `, isInline: true, dependencies: [{ kind: "component", type: BsCalendarLayoutComponent, selector: "bs-calendar-layout" }, { kind: "component", type: BsDatepickerNavigationViewComponent, selector: "bs-datepicker-navigation-view", inputs: ["calendar", "isDisabled"], outputs: ["onNavigate", "onViewMode"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
52
- }
53
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsMonthCalendarViewComponent, decorators: [{
54
- type: Component,
55
- args: [{
56
- selector: 'bs-month-calendar-view',
57
- template: `
58
- <bs-calendar-layout>
59
- <bs-datepicker-navigation-view
60
- [calendar]="calendar"
61
- (onNavigate)="navigateTo($event)"
62
- (onViewMode)="changeViewMode($event)"
63
- ></bs-datepicker-navigation-view>
64
-
65
- <table role="grid" class="months">
66
- <tbody>
67
- <tr *ngFor="let row of calendar?.months">
68
- <td *ngFor="let month of row" role="gridcell"
69
- (click)="viewMonth(month)"
70
- (mouseenter)="hoverMonth(month, true)"
71
- (mouseleave)="hoverMonth(month, false)"
72
- [class.disabled]="month.isDisabled"
73
- [class.is-highlighted]="month.isHovered">
74
- <span [class.selected]="month.isSelected">{{ month.label }}</span>
75
- </td>
76
- </tr>
77
- </tbody>
78
- </table>
79
- </bs-calendar-layout>
80
- `,
81
- standalone: true,
82
- imports: [BsCalendarLayoutComponent, BsDatepickerNavigationViewComponent, NgFor]
83
- }]
84
- }], propDecorators: { calendar: [{
85
- type: Input
86
- }], onNavigate: [{
87
- type: Output
88
- }], onViewMode: [{
89
- type: Output
90
- }], onSelect: [{
91
- type: Output
92
- }], onHover: [{
93
- type: Output
94
- }] } });
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnMtbW9udGhzLWNhbGVuZGFyLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2RhdGVwaWNrZXIvdGhlbWVzL2JzL2JzLW1vbnRocy1jYWxlbmRhci12aWV3LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZFLE9BQU8sRUFFTCxxQkFBcUIsRUFLdEIsTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hDLE9BQU8sRUFBRSxtQ0FBbUMsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ2hHLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOztBQStCM0UsTUFBTSxPQUFPLDRCQUE0QjtJQTdCekM7UUFnQ1ksZUFBVSxHQUFHLElBQUksWUFBWSxFQUFxQixDQUFDO1FBQ25ELGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBd0IsQ0FBQztRQUV0RCxhQUFRLEdBQUcsSUFBSSxZQUFZLEVBQXlCLENBQUM7UUFDckQsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFrQixDQUFDO0tBa0J4RDtJQWhCQyxVQUFVLENBQUMsS0FBNEI7UUFDckMsTUFBTSxJQUFJLEdBQUcscUJBQXFCLENBQUMsSUFBSSxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMzRCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUE0QjtRQUNwQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsVUFBVSxDQUFDLElBQTJCLEVBQUUsU0FBa0I7UUFDeEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsY0FBYyxDQUFDLEtBQTJCO1FBQ3hDLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQTZCLENBQUMsQ0FBQztJQUN0RCxDQUFDOzhHQXhCVSw0QkFBNEI7a0dBQTVCLDRCQUE0QiwrTkEzQjNCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXVCWCw0REFFVyx5QkFBeUIsK0RBQUUsbUNBQW1DLHFKQUFFLEtBQUs7OzJGQUV0RSw0QkFBNEI7a0JBN0J4QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F1Qlg7b0JBQ0MsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLHlCQUF5QixFQUFFLG1DQUFtQyxFQUFFLEtBQUssQ0FBQztpQkFDbkY7OEJBRVUsUUFBUTtzQkFBaEIsS0FBSztnQkFFSSxVQUFVO3NCQUFuQixNQUFNO2dCQUNHLFVBQVU7c0JBQW5CLE1BQU07Z0JBRUcsUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxPQUFPO3NCQUFoQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEJzRGF0ZXBpY2tlclZpZXdNb2RlLFxuICBCc05hdmlnYXRpb25EaXJlY3Rpb24sXG4gIEJzTmF2aWdhdGlvbkV2ZW50LFxuICBDZWxsSG92ZXJFdmVudCxcbiAgTW9udGhzQ2FsZW5kYXJWaWV3TW9kZWwsXG4gIENhbGVuZGFyQ2VsbFZpZXdNb2RlbFxufSBmcm9tICcuLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgTmdGb3IgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQnNEYXRlcGlja2VyTmF2aWdhdGlvblZpZXdDb21wb25lbnQgfSBmcm9tICcuL2JzLWRhdGVwaWNrZXItbmF2aWdhdGlvbi12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCc0NhbGVuZGFyTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9icy1jYWxlbmRhci1sYXlvdXQuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdicy1tb250aC1jYWxlbmRhci12aWV3JyxcbiAgICB0ZW1wbGF0ZTogYFxuICAgIDxicy1jYWxlbmRhci1sYXlvdXQ+XG4gICAgICA8YnMtZGF0ZXBpY2tlci1uYXZpZ2F0aW9uLXZpZXdcbiAgICAgICAgW2NhbGVuZGFyXT1cImNhbGVuZGFyXCJcbiAgICAgICAgKG9uTmF2aWdhdGUpPVwibmF2aWdhdGVUbygkZXZlbnQpXCJcbiAgICAgICAgKG9uVmlld01vZGUpPVwiY2hhbmdlVmlld01vZGUoJGV2ZW50KVwiXG4gICAgICA+PC9icy1kYXRlcGlja2VyLW5hdmlnYXRpb24tdmlldz5cblxuICAgICAgPHRhYmxlIHJvbGU9XCJncmlkXCIgY2xhc3M9XCJtb250aHNcIj5cbiAgICAgICAgPHRib2R5PlxuICAgICAgICA8dHIgKm5nRm9yPVwibGV0IHJvdyBvZiBjYWxlbmRhcj8ubW9udGhzXCI+XG4gICAgICAgICAgPHRkICpuZ0Zvcj1cImxldCBtb250aCBvZiByb3dcIiByb2xlPVwiZ3JpZGNlbGxcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwidmlld01vbnRoKG1vbnRoKVwiXG4gICAgICAgICAgICAgIChtb3VzZWVudGVyKT1cImhvdmVyTW9udGgobW9udGgsIHRydWUpXCJcbiAgICAgICAgICAgICAgKG1vdXNlbGVhdmUpPVwiaG92ZXJNb250aChtb250aCwgZmFsc2UpXCJcbiAgICAgICAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cIm1vbnRoLmlzRGlzYWJsZWRcIlxuICAgICAgICAgICAgICBbY2xhc3MuaXMtaGlnaGxpZ2h0ZWRdPVwibW9udGguaXNIb3ZlcmVkXCI+XG4gICAgICAgICAgICA8c3BhbiBbY2xhc3Muc2VsZWN0ZWRdPVwibW9udGguaXNTZWxlY3RlZFwiPnt7IG1vbnRoLmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgIDwvdGQ+XG4gICAgICAgIDwvdHI+XG4gICAgICAgIDwvdGJvZHk+XG4gICAgICA8L3RhYmxlPlxuICAgIDwvYnMtY2FsZW5kYXItbGF5b3V0PlxuICBgLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0JzQ2FsZW5kYXJMYXlvdXRDb21wb25lbnQsIEJzRGF0ZXBpY2tlck5hdmlnYXRpb25WaWV3Q29tcG9uZW50LCBOZ0Zvcl1cbn0pXG5leHBvcnQgY2xhc3MgQnNNb250aENhbGVuZGFyVmlld0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGNhbGVuZGFyITogTW9udGhzQ2FsZW5kYXJWaWV3TW9kZWw7XG5cbiAgQE91dHB1dCgpIG9uTmF2aWdhdGUgPSBuZXcgRXZlbnRFbWl0dGVyPEJzTmF2aWdhdGlvbkV2ZW50PigpO1xuICBAT3V0cHV0KCkgb25WaWV3TW9kZSA9IG5ldyBFdmVudEVtaXR0ZXI8QnNEYXRlcGlja2VyVmlld01vZGU+KCk7XG5cbiAgQE91dHB1dCgpIG9uU2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxDYWxlbmRhckNlbGxWaWV3TW9kZWw+KCk7XG4gIEBPdXRwdXQoKSBvbkhvdmVyID0gbmV3IEV2ZW50RW1pdHRlcjxDZWxsSG92ZXJFdmVudD4oKTtcblxuICBuYXZpZ2F0ZVRvKGV2ZW50OiBCc05hdmlnYXRpb25EaXJlY3Rpb24pOiB2b2lkIHtcbiAgICBjb25zdCBzdGVwID0gQnNOYXZpZ2F0aW9uRGlyZWN0aW9uLkRPV04gPT09IGV2ZW50ID8gLTEgOiAxO1xuICAgIHRoaXMub25OYXZpZ2F0ZS5lbWl0KHsgc3RlcDogeyB5ZWFyOiBzdGVwIH0gfSk7XG4gIH1cblxuICB2aWV3TW9udGgobW9udGg6IENhbGVuZGFyQ2VsbFZpZXdNb2RlbCkge1xuICAgIHRoaXMub25TZWxlY3QuZW1pdChtb250aCk7XG4gIH1cblxuICBob3Zlck1vbnRoKGNlbGw6IENhbGVuZGFyQ2VsbFZpZXdNb2RlbCwgaXNIb3ZlcmVkOiBib29sZWFuKSB7XG4gICAgdGhpcy5vbkhvdmVyLmVtaXQoeyBjZWxsLCBpc0hvdmVyZWQgfSk7XG4gIH1cblxuICBjaGFuZ2VWaWV3TW9kZShldmVudDogQnNEYXRlcGlja2VyVmlld01vZGUpOiB2b2lkIHtcbiAgICB0aGlzLm9uVmlld01vZGUuZW1pdChldmVudCBhcyBCc0RhdGVwaWNrZXJWaWV3TW9kZSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,56 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class BsTimepickerViewComponent {
4
- constructor() {
5
- this.ampm = 'ok';
6
- this.hours = 0;
7
- this.minutes = 0;
8
- }
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsTimepickerViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: BsTimepickerViewComponent, isStandalone: true, selector: "bs-timepicker", ngImport: i0, template: `
11
- <div class="bs-timepicker-container">
12
- <div class="bs-timepicker-controls">
13
- <button class="bs-decrease" type="button">-</button>
14
- <input type="text" [value]="hours" placeholder="00">
15
- <button class="bs-increase" type="button">+</button>
16
- </div>
17
- <div class="bs-timepicker-controls">
18
- <button class="bs-decrease" type="button">-</button>
19
- <input type="text" [value]="minutes" placeholder="00">
20
- <button class="bs-increase" type="button">+</button>
21
- </div>
22
- <button class="switch-time-format" type="button">{{ ampm }}
23
- <img
24
- src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAKCAYAAABi8KSDAAABSElEQVQYV3XQPUvDUBQG4HNuagtVqc6KgouCv6GIuIntYBLB9hcIQpLStCAIV7DYmpTcRWcXqZio3Vwc/UCc/QEqfgyKGbr0I7nS1EiHeqYzPO/h5SD0jaxUZjmSLCB+OFb+UFINFwASAEAdpu9gaGXVyAHHFQBkHpKHc6a9dzECvADyY9sqlAMsK9W0jzxDXqeytr3mhQckxSji27TJJ5/rPmIpwJJq3HrtduriYOurv1a4i1p5HnhkG9OFymi0ReoO05cGwb+ayv4dysVygjeFmsP05f8wpZQ8fsdvfmuY9zjWSNqUtgYFVnOVReILYoBFzdQI5/GGFzNHhGbeZnopDGU29sZbscgldmC99w35VOATTycIMMcBXIfpSVGzZhA6C8hh00conln6VQ9TGgV32OEAKQC4DrBq7CJwd0ggR7Vq/rPrfgB+C3sGypY5DAAAAABJRU5ErkJggg=="
25
- alt="">
26
- </button>
27
- </div>
28
- `, isInline: true }); }
29
- }
30
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsTimepickerViewComponent, decorators: [{
31
- type: Component,
32
- args: [{
33
- selector: 'bs-timepicker',
34
- template: `
35
- <div class="bs-timepicker-container">
36
- <div class="bs-timepicker-controls">
37
- <button class="bs-decrease" type="button">-</button>
38
- <input type="text" [value]="hours" placeholder="00">
39
- <button class="bs-increase" type="button">+</button>
40
- </div>
41
- <div class="bs-timepicker-controls">
42
- <button class="bs-decrease" type="button">-</button>
43
- <input type="text" [value]="minutes" placeholder="00">
44
- <button class="bs-increase" type="button">+</button>
45
- </div>
46
- <button class="switch-time-format" type="button">{{ ampm }}
47
- <img
48
- src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAKCAYAAABi8KSDAAABSElEQVQYV3XQPUvDUBQG4HNuagtVqc6KgouCv6GIuIntYBLB9hcIQpLStCAIV7DYmpTcRWcXqZio3Vwc/UCc/QEqfgyKGbr0I7nS1EiHeqYzPO/h5SD0jaxUZjmSLCB+OFb+UFINFwASAEAdpu9gaGXVyAHHFQBkHpKHc6a9dzECvADyY9sqlAMsK9W0jzxDXqeytr3mhQckxSji27TJJ5/rPmIpwJJq3HrtduriYOurv1a4i1p5HnhkG9OFymi0ReoO05cGwb+ayv4dysVygjeFmsP05f8wpZQ8fsdvfmuY9zjWSNqUtgYFVnOVReILYoBFzdQI5/GGFzNHhGbeZnopDGU29sZbscgldmC99w35VOATTycIMMcBXIfpSVGzZhA6C8hh00conln6VQ9TGgV32OEAKQC4DrBq7CJwd0ggR7Vq/rPrfgB+C3sGypY5DAAAAABJRU5ErkJggg=="
49
- alt="">
50
- </button>
51
- </div>
52
- `,
53
- standalone: true
54
- }]
55
- }] });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnMtdGltZXBpY2tlci12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9kYXRlcGlja2VyL3RoZW1lcy9icy9icy10aW1lcGlja2VyLXZpZXcuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBeUIxQyxNQUFNLE9BQU8seUJBQXlCO0lBdkJ0QztRQXdCRSxTQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ1osVUFBSyxHQUFHLENBQUMsQ0FBQztRQUNWLFlBQU8sR0FBRyxDQUFDLENBQUM7S0FDYjs4R0FKWSx5QkFBeUI7a0dBQXpCLHlCQUF5Qix5RUFyQnhCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQlg7OzJGQUdVLHlCQUF5QjtrQkF2QnJDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0JYO29CQUNDLFVBQVUsRUFBRSxJQUFJO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JzLXRpbWVwaWNrZXInLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImJzLXRpbWVwaWNrZXItY29udGFpbmVyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiYnMtdGltZXBpY2tlci1jb250cm9sc1wiPlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnMtZGVjcmVhc2VcIiB0eXBlPVwiYnV0dG9uXCI+LTwvYnV0dG9uPlxuICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBbdmFsdWVdPVwiaG91cnNcIiBwbGFjZWhvbGRlcj1cIjAwXCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJicy1pbmNyZWFzZVwiIHR5cGU9XCJidXR0b25cIj4rPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJicy10aW1lcGlja2VyLWNvbnRyb2xzXCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJicy1kZWNyZWFzZVwiIHR5cGU9XCJidXR0b25cIj4tPC9idXR0b24+XG4gICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIFt2YWx1ZV09XCJtaW51dGVzXCIgcGxhY2Vob2xkZXI9XCIwMFwiPlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnMtaW5jcmVhc2VcIiB0eXBlPVwiYnV0dG9uXCI+KzwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgICA8YnV0dG9uIGNsYXNzPVwic3dpdGNoLXRpbWUtZm9ybWF0XCIgdHlwZT1cImJ1dHRvblwiPnt7IGFtcG0gfX1cbiAgICAgICAgPGltZ1xuICAgICAgICAgIHNyYz1cImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQXNBQUFBS0NBWUFBQUJpOEtTREFBQUJTRWxFUVZRWVYzWFFQVXZEVUJRRzRITnVhZ3RWcWM2S2dvdUN2NkdJdUludFlCTEI5aGNJUXBMU3RDQUlWN0RZbXBUY1JXY1hxWmlvM1Z3Yy9VQ2MvUUVxZmd5S0dicjBJN25TMUVpSGVxWXpQTy9oNVNEMGpheFVaam1TTENCK09GYitVRklORndBU0FFQWRwdTlnYUdYVnlBSEhGUUJrSHBLSGM2YTlkekVDdkFEeVk5c3FsQU1zSzlXMGp6eERYcWV5dHIzbWhRY2t4U2ppMjdUSko1L3JQbUlwd0pKcTNIcnRkdXJpWU91cnYxYTRpMXA1SG5oa0c5T0Z5bWkwUmVvTzA1Y0d3YitheXY0ZHlzVnlnamVGbXNQMDVmOHdwWlE4ZnNkdmZtdVk5empXU05xVXRnWUZWbk9WUmVJTFlvQkZ6ZFFJNS9HR0Z6TkhoR2JlWm5vcERHVTI5c1pic2NnbGRtQzk5dzM1Vk9BVFR5Y0lNTWNCWElmcFNWR3paaEE2QzhoaDAwY29ubG42VlE5VEdnVjMyT0VBS1FDNERyQnE3Q0p3ZDBnZ1I3VnEvclByZmdCK0Mzc0d5cFk1REFBQUFBQkpSVTVFcmtKZ2dnPT1cIlxuICAgICAgICAgIGFsdD1cIlwiPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIGAsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBCc1RpbWVwaWNrZXJWaWV3Q29tcG9uZW50IHtcbiAgYW1wbSA9ICdvayc7XG4gIGhvdXJzID0gMDtcbiAgbWludXRlcyA9IDA7XG59XG4iXX0=
@@ -1,96 +0,0 @@
1
- import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import { yearsPerCalendar } from '../../engine/format-years-calendar';
3
- import { BsNavigationDirection } from '../../models';
4
- import { NgFor } from '@angular/common';
5
- import { BsDatepickerNavigationViewComponent } from './bs-datepicker-navigation-view.component';
6
- import { BsCalendarLayoutComponent } from './bs-calendar-layout.component';
7
- import * as i0 from "@angular/core";
8
- export class BsYearsCalendarViewComponent {
9
- constructor() {
10
- this.onNavigate = new EventEmitter();
11
- this.onViewMode = new EventEmitter();
12
- this.onSelect = new EventEmitter();
13
- this.onHover = new EventEmitter();
14
- }
15
- navigateTo(event) {
16
- const step = BsNavigationDirection.DOWN === event ? -1 : 1;
17
- this.onNavigate.emit({ step: { year: step * yearsPerCalendar } });
18
- }
19
- viewYear(year) {
20
- this.onSelect.emit(year);
21
- }
22
- hoverYear(cell, isHovered) {
23
- this.onHover.emit({ cell, isHovered });
24
- }
25
- changeViewMode(event) {
26
- this.onViewMode.emit(event);
27
- }
28
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsYearsCalendarViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
29
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: BsYearsCalendarViewComponent, isStandalone: true, selector: "bs-years-calendar-view", inputs: { calendar: "calendar" }, outputs: { onNavigate: "onNavigate", onViewMode: "onViewMode", onSelect: "onSelect", onHover: "onHover" }, ngImport: i0, template: `
30
- <bs-calendar-layout>
31
- <bs-datepicker-navigation-view
32
- [calendar]="calendar"
33
- (onNavigate)="navigateTo($event)"
34
- (onViewMode)="changeViewMode($event)"
35
- ></bs-datepicker-navigation-view>
36
-
37
- <table role="grid" class="years">
38
- <tbody>
39
- <tr *ngFor="let row of calendar?.years">
40
- <td *ngFor="let year of row" role="gridcell"
41
- (click)="viewYear(year)"
42
- (mouseenter)="hoverYear(year, true)"
43
- (mouseleave)="hoverYear(year, false)"
44
- [class.disabled]="year.isDisabled"
45
- [class.is-highlighted]="year.isHovered">
46
- <span [class.selected]="year.isSelected">{{ year.label }}</span>
47
- </td>
48
- </tr>
49
- </tbody>
50
- </table>
51
- </bs-calendar-layout>
52
- `, isInline: true, dependencies: [{ kind: "component", type: BsCalendarLayoutComponent, selector: "bs-calendar-layout" }, { kind: "component", type: BsDatepickerNavigationViewComponent, selector: "bs-datepicker-navigation-view", inputs: ["calendar", "isDisabled"], outputs: ["onNavigate", "onViewMode"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
53
- }
54
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsYearsCalendarViewComponent, decorators: [{
55
- type: Component,
56
- args: [{
57
- selector: 'bs-years-calendar-view',
58
- template: `
59
- <bs-calendar-layout>
60
- <bs-datepicker-navigation-view
61
- [calendar]="calendar"
62
- (onNavigate)="navigateTo($event)"
63
- (onViewMode)="changeViewMode($event)"
64
- ></bs-datepicker-navigation-view>
65
-
66
- <table role="grid" class="years">
67
- <tbody>
68
- <tr *ngFor="let row of calendar?.years">
69
- <td *ngFor="let year of row" role="gridcell"
70
- (click)="viewYear(year)"
71
- (mouseenter)="hoverYear(year, true)"
72
- (mouseleave)="hoverYear(year, false)"
73
- [class.disabled]="year.isDisabled"
74
- [class.is-highlighted]="year.isHovered">
75
- <span [class.selected]="year.isSelected">{{ year.label }}</span>
76
- </td>
77
- </tr>
78
- </tbody>
79
- </table>
80
- </bs-calendar-layout>
81
- `,
82
- standalone: true,
83
- imports: [BsCalendarLayoutComponent, BsDatepickerNavigationViewComponent, NgFor]
84
- }]
85
- }], propDecorators: { calendar: [{
86
- type: Input
87
- }], onNavigate: [{
88
- type: Output
89
- }], onViewMode: [{
90
- type: Output
91
- }], onSelect: [{
92
- type: Output
93
- }], onHover: [{
94
- type: Output
95
- }] } });
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnMteWVhcnMtY2FsZW5kYXItdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvZGF0ZXBpY2tlci90aGVtZXMvYnMvYnMteWVhcnMtY2FsZW5kYXItdmlldy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN0RSxPQUFPLEVBRUwscUJBQXFCLEVBS3RCLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4QyxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUNoRyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7QUErQjNFLE1BQU0sT0FBTyw0QkFBNEI7SUE3QnpDO1FBZ0NZLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBcUIsQ0FBQztRQUNuRCxlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQXdCLENBQUM7UUFFdEQsYUFBUSxHQUFHLElBQUksWUFBWSxFQUF5QixDQUFDO1FBQ3JELFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBa0IsQ0FBQztLQWtCeEQ7SUFoQkMsVUFBVSxDQUFDLEtBQTRCO1FBQ3JDLE1BQU0sSUFBSSxHQUFHLHFCQUFxQixDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxHQUFHLGdCQUFnQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRCxRQUFRLENBQUMsSUFBMkI7UUFDbEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVELFNBQVMsQ0FBQyxJQUEyQixFQUFFLFNBQWtCO1FBQ3ZELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVELGNBQWMsQ0FBQyxLQUEyQjtRQUN4QyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDOzhHQXhCVSw0QkFBNEI7a0dBQTVCLDRCQUE0QiwrTkEzQjNCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXVCWCw0REFFVyx5QkFBeUIsK0RBQUUsbUNBQW1DLHFKQUFFLEtBQUs7OzJGQUV0RSw0QkFBNEI7a0JBN0J4QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F1Qlg7b0JBQ0MsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLHlCQUF5QixFQUFFLG1DQUFtQyxFQUFFLEtBQUssQ0FBQztpQkFDbkY7OEJBRVUsUUFBUTtzQkFBaEIsS0FBSztnQkFFSSxVQUFVO3NCQUFuQixNQUFNO2dCQUNHLFVBQVU7c0JBQW5CLE1BQU07Z0JBRUcsUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxPQUFPO3NCQUFoQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHllYXJzUGVyQ2FsZW5kYXIgfSBmcm9tICcuLi8uLi9lbmdpbmUvZm9ybWF0LXllYXJzLWNhbGVuZGFyJztcbmltcG9ydCB7XG4gIEJzRGF0ZXBpY2tlclZpZXdNb2RlLFxuICBCc05hdmlnYXRpb25EaXJlY3Rpb24sXG4gIEJzTmF2aWdhdGlvbkV2ZW50LFxuICBDYWxlbmRhckNlbGxWaWV3TW9kZWwsXG4gIENlbGxIb3ZlckV2ZW50LFxuICBZZWFyc0NhbGVuZGFyVmlld01vZGVsXG59IGZyb20gJy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBOZ0ZvciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBCc0RhdGVwaWNrZXJOYXZpZ2F0aW9uVmlld0NvbXBvbmVudCB9IGZyb20gJy4vYnMtZGF0ZXBpY2tlci1uYXZpZ2F0aW9uLXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IEJzQ2FsZW5kYXJMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2JzLWNhbGVuZGFyLWxheW91dC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JzLXllYXJzLWNhbGVuZGFyLXZpZXcnLFxuICAgIHRlbXBsYXRlOiBgXG4gICAgPGJzLWNhbGVuZGFyLWxheW91dD5cbiAgICAgIDxicy1kYXRlcGlja2VyLW5hdmlnYXRpb24tdmlld1xuICAgICAgICBbY2FsZW5kYXJdPVwiY2FsZW5kYXJcIlxuICAgICAgICAob25OYXZpZ2F0ZSk9XCJuYXZpZ2F0ZVRvKCRldmVudClcIlxuICAgICAgICAob25WaWV3TW9kZSk9XCJjaGFuZ2VWaWV3TW9kZSgkZXZlbnQpXCJcbiAgICAgID48L2JzLWRhdGVwaWNrZXItbmF2aWdhdGlvbi12aWV3PlxuXG4gICAgICA8dGFibGUgcm9sZT1cImdyaWRcIiBjbGFzcz1cInllYXJzXCI+XG4gICAgICAgIDx0Ym9keT5cbiAgICAgICAgPHRyICpuZ0Zvcj1cImxldCByb3cgb2YgY2FsZW5kYXI/LnllYXJzXCI+XG4gICAgICAgICAgPHRkICpuZ0Zvcj1cImxldCB5ZWFyIG9mIHJvd1wiIHJvbGU9XCJncmlkY2VsbFwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJ2aWV3WWVhcih5ZWFyKVwiXG4gICAgICAgICAgICAgIChtb3VzZWVudGVyKT1cImhvdmVyWWVhcih5ZWFyLCB0cnVlKVwiXG4gICAgICAgICAgICAgIChtb3VzZWxlYXZlKT1cImhvdmVyWWVhcih5ZWFyLCBmYWxzZSlcIlxuICAgICAgICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwieWVhci5pc0Rpc2FibGVkXCJcbiAgICAgICAgICAgICAgW2NsYXNzLmlzLWhpZ2hsaWdodGVkXT1cInllYXIuaXNIb3ZlcmVkXCI+XG4gICAgICAgICAgICA8c3BhbiBbY2xhc3Muc2VsZWN0ZWRdPVwieWVhci5pc1NlbGVjdGVkXCI+e3sgeWVhci5sYWJlbCB9fTwvc3Bhbj5cbiAgICAgICAgICA8L3RkPlxuICAgICAgICA8L3RyPlxuICAgICAgICA8L3Rib2R5PlxuICAgICAgPC90YWJsZT5cbiAgICA8L2JzLWNhbGVuZGFyLWxheW91dD5cbiAgYCxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtCc0NhbGVuZGFyTGF5b3V0Q29tcG9uZW50LCBCc0RhdGVwaWNrZXJOYXZpZ2F0aW9uVmlld0NvbXBvbmVudCwgTmdGb3JdXG59KVxuZXhwb3J0IGNsYXNzIEJzWWVhcnNDYWxlbmRhclZpZXdDb21wb25lbnQge1xuICBASW5wdXQoKSBjYWxlbmRhciE6IFllYXJzQ2FsZW5kYXJWaWV3TW9kZWw7XG5cbiAgQE91dHB1dCgpIG9uTmF2aWdhdGUgPSBuZXcgRXZlbnRFbWl0dGVyPEJzTmF2aWdhdGlvbkV2ZW50PigpO1xuICBAT3V0cHV0KCkgb25WaWV3TW9kZSA9IG5ldyBFdmVudEVtaXR0ZXI8QnNEYXRlcGlja2VyVmlld01vZGU+KCk7XG5cbiAgQE91dHB1dCgpIG9uU2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxDYWxlbmRhckNlbGxWaWV3TW9kZWw+KCk7XG4gIEBPdXRwdXQoKSBvbkhvdmVyID0gbmV3IEV2ZW50RW1pdHRlcjxDZWxsSG92ZXJFdmVudD4oKTtcblxuICBuYXZpZ2F0ZVRvKGV2ZW50OiBCc05hdmlnYXRpb25EaXJlY3Rpb24pOiB2b2lkIHtcbiAgICBjb25zdCBzdGVwID0gQnNOYXZpZ2F0aW9uRGlyZWN0aW9uLkRPV04gPT09IGV2ZW50ID8gLTEgOiAxO1xuICAgIHRoaXMub25OYXZpZ2F0ZS5lbWl0KHsgc3RlcDogeyB5ZWFyOiBzdGVwICogeWVhcnNQZXJDYWxlbmRhciB9IH0pO1xuICB9XG5cbiAgdmlld1llYXIoeWVhcjogQ2FsZW5kYXJDZWxsVmlld01vZGVsKSB7XG4gICAgdGhpcy5vblNlbGVjdC5lbWl0KHllYXIpO1xuICB9XG5cbiAgaG92ZXJZZWFyKGNlbGw6IENhbGVuZGFyQ2VsbFZpZXdNb2RlbCwgaXNIb3ZlcmVkOiBib29sZWFuKSB7XG4gICAgdGhpcy5vbkhvdmVyLmVtaXQoeyBjZWxsLCBpc0hvdmVyZWQgfSk7XG4gIH1cblxuICBjaGFuZ2VWaWV3TW9kZShldmVudDogQnNEYXRlcGlja2VyVmlld01vZGUpOiB2b2lkIHtcbiAgICB0aGlzLm9uVmlld01vZGUuZW1pdChldmVudCk7XG4gIH1cbn1cbiJdfQ==