ngx-bootstrap 18.0.1 → 18.1.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.
- package/README.md +1 -1
- package/accordion/accordion-group.component.d.ts +1 -1
- package/accordion/accordion.component.d.ts +1 -1
- package/accordion/accordion.module.d.ts +2 -5
- package/accordion/esm2022/accordion-group.component.mjs +8 -7
- package/accordion/esm2022/accordion.component.mjs +4 -3
- package/accordion/esm2022/accordion.module.mjs +6 -8
- package/accordion/fesm2022/ngx-bootstrap-accordion.mjs +12 -12
- package/accordion/fesm2022/ngx-bootstrap-accordion.mjs.map +1 -1
- package/alert/alert.component.d.ts +1 -1
- package/alert/alert.module.d.ts +2 -4
- package/alert/esm2022/alert.component.mjs +4 -4
- package/alert/esm2022/alert.module.mjs +6 -7
- package/alert/fesm2022/ngx-bootstrap-alert.mjs +8 -9
- package/alert/fesm2022/ngx-bootstrap-alert.mjs.map +1 -1
- package/buttons/button-checkbox.directive.d.ts +1 -1
- package/buttons/button-radio-group.directive.d.ts +1 -1
- package/buttons/button-radio.directive.d.ts +1 -1
- package/buttons/buttons.module.d.ts +2 -3
- package/buttons/esm2022/button-checkbox.directive.mjs +4 -3
- package/buttons/esm2022/button-radio-group.directive.mjs +4 -3
- package/buttons/esm2022/button-radio.directive.mjs +4 -3
- package/buttons/esm2022/buttons.module.mjs +5 -4
- package/buttons/fesm2022/ngx-bootstrap-buttons.mjs +13 -9
- package/buttons/fesm2022/ngx-bootstrap-buttons.mjs.map +1 -1
- package/carousel/carousel.component.d.ts +1 -1
- package/carousel/carousel.module.d.ts +2 -4
- package/carousel/esm2022/carousel.component.mjs +4 -5
- package/carousel/esm2022/carousel.module.mjs +6 -7
- package/carousel/esm2022/slide.component.mjs +3 -3
- package/carousel/fesm2022/ngx-bootstrap-carousel.mjs +10 -11
- package/carousel/fesm2022/ngx-bootstrap-carousel.mjs.map +1 -1
- package/carousel/slide.component.d.ts +1 -1
- package/chronos/esm2022/i18n/fr-ca.mjs +69 -0
- package/chronos/esm2022/public_api.mjs +2 -1
- package/chronos/fesm2022/ngx-bootstrap-chronos.mjs +70 -1
- package/chronos/fesm2022/ngx-bootstrap-chronos.mjs.map +1 -1
- package/chronos/i18n/fr-ca.d.ts +2 -0
- package/chronos/public_api.d.ts +1 -0
- package/collapse/collapse.directive.d.ts +1 -1
- package/collapse/collapse.module.d.ts +2 -3
- package/collapse/esm2022/collapse.directive.mjs +4 -3
- package/collapse/esm2022/collapse.module.mjs +5 -4
- package/collapse/fesm2022/ngx-bootstrap-collapse.mjs +7 -5
- package/collapse/fesm2022/ngx-bootstrap-collapse.mjs.map +1 -1
- package/datepicker/bs-datepicker-inline.component.d.ts +1 -1
- package/datepicker/bs-datepicker-input.directive.d.ts +1 -1
- package/datepicker/bs-datepicker.component.d.ts +1 -1
- package/datepicker/bs-datepicker.module.d.ts +24 -25
- package/datepicker/bs-daterangepicker-inline.component.d.ts +1 -1
- package/datepicker/bs-daterangepicker-input.directive.d.ts +1 -1
- package/datepicker/bs-daterangepicker.component.d.ts +1 -1
- package/datepicker/esm2022/bs-datepicker-inline.component.mjs +5 -3
- package/datepicker/esm2022/bs-datepicker-input.directive.mjs +12 -3
- package/datepicker/esm2022/bs-datepicker.component.mjs +5 -3
- package/datepicker/esm2022/bs-datepicker.module.mjs +14 -28
- package/datepicker/esm2022/bs-daterangepicker-inline.component.mjs +9 -3
- package/datepicker/esm2022/bs-daterangepicker-input.directive.mjs +12 -3
- package/datepicker/esm2022/bs-daterangepicker.component.mjs +9 -3
- package/datepicker/esm2022/themes/bs/bs-calendar-layout.component.mjs +9 -7
- package/datepicker/esm2022/themes/bs/bs-current-date-view.component.mjs +4 -3
- package/datepicker/esm2022/themes/bs/bs-custom-dates-view.component.mjs +7 -5
- package/datepicker/esm2022/themes/bs/bs-datepicker-container.component.mjs +13 -10
- package/datepicker/esm2022/themes/bs/bs-datepicker-day-decorator.directive.mjs +4 -3
- package/datepicker/esm2022/themes/bs/bs-datepicker-inline-container.component.mjs +11 -10
- package/datepicker/esm2022/themes/bs/bs-datepicker-navigation-view.component.mjs +7 -5
- package/datepicker/esm2022/themes/bs/bs-daterangepicker-container.component.mjs +23 -10
- package/datepicker/esm2022/themes/bs/bs-daterangepicker-inline-container.component.mjs +11 -10
- package/datepicker/esm2022/themes/bs/bs-days-calendar-view.component.mjs +12 -9
- package/datepicker/esm2022/themes/bs/bs-months-calendar-view.component.mjs +9 -7
- package/datepicker/esm2022/themes/bs/bs-timepicker-view.component.mjs +4 -3
- package/datepicker/esm2022/themes/bs/bs-years-calendar-view.component.mjs +9 -7
- package/datepicker/fesm2022/ngx-bootstrap-datepicker.mjs +436 -382
- package/datepicker/fesm2022/ngx-bootstrap-datepicker.mjs.map +1 -1
- package/datepicker/themes/bs/bs-calendar-layout.component.d.ts +1 -1
- package/datepicker/themes/bs/bs-current-date-view.component.d.ts +1 -1
- package/datepicker/themes/bs/bs-custom-dates-view.component.d.ts +1 -1
- package/datepicker/themes/bs/bs-datepicker-container.component.d.ts +1 -1
- package/datepicker/themes/bs/bs-datepicker-day-decorator.directive.d.ts +1 -1
- package/datepicker/themes/bs/bs-datepicker-inline-container.component.d.ts +1 -1
- package/datepicker/themes/bs/bs-datepicker-navigation-view.component.d.ts +1 -1
- package/datepicker/themes/bs/bs-daterangepicker-container.component.d.ts +1 -1
- package/datepicker/themes/bs/bs-daterangepicker-inline-container.component.d.ts +1 -1
- package/datepicker/themes/bs/bs-days-calendar-view.component.d.ts +1 -1
- package/datepicker/themes/bs/bs-months-calendar-view.component.d.ts +1 -1
- package/datepicker/themes/bs/bs-timepicker-view.component.d.ts +1 -1
- package/datepicker/themes/bs/bs-years-calendar-view.component.d.ts +1 -1
- package/dropdown/bs-dropdown-container.component.d.ts +1 -1
- package/dropdown/bs-dropdown-menu.directive.d.ts +1 -1
- package/dropdown/bs-dropdown-toggle.directive.d.ts +1 -1
- package/dropdown/bs-dropdown.directive.d.ts +1 -1
- package/dropdown/bs-dropdown.module.d.ts +6 -8
- package/dropdown/esm2022/bs-dropdown-container.component.mjs +8 -5
- package/dropdown/esm2022/bs-dropdown-menu.directive.mjs +4 -3
- package/dropdown/esm2022/bs-dropdown-toggle.directive.mjs +4 -3
- package/dropdown/esm2022/bs-dropdown.directive.mjs +4 -3
- package/dropdown/esm2022/bs-dropdown.module.mjs +11 -22
- package/dropdown/fesm2022/ngx-bootstrap-dropdown.mjs +26 -29
- package/dropdown/fesm2022/ngx-bootstrap-dropdown.mjs.map +1 -1
- package/focus-trap/esm2022/focus-trap.mjs +15 -3
- package/focus-trap/esm2022/focus-trap.module.mjs +5 -15
- package/focus-trap/fesm2022/ngx-bootstrap-focus-trap.mjs +63 -60
- package/focus-trap/fesm2022/ngx-bootstrap-focus-trap.mjs.map +1 -1
- package/focus-trap/focus-trap.d.ts +1 -1
- package/focus-trap/focus-trap.module.d.ts +4 -5
- package/locale/esm2022/public_api.mjs +2 -1
- package/locale/fesm2022/ngx-bootstrap-locale.mjs +1 -1
- package/locale/public_api.d.ts +1 -0
- package/modal/bs-modal.service.d.ts +1 -0
- package/modal/esm2022/bs-modal.service.mjs +6 -1
- package/modal/esm2022/modal-backdrop.component.mjs +4 -3
- package/modal/esm2022/modal-container.component.mjs +9 -5
- package/modal/esm2022/modal.directive.mjs +4 -3
- package/modal/esm2022/modal.module.mjs +10 -8
- package/modal/fesm2022/ngx-bootstrap-modal.mjs +323 -312
- package/modal/fesm2022/ngx-bootstrap-modal.mjs.map +1 -1
- package/modal/modal-backdrop.component.d.ts +1 -1
- package/modal/modal-container.component.d.ts +1 -1
- package/modal/modal.directive.d.ts +1 -1
- package/modal/modal.module.d.ts +5 -7
- package/package.json +1 -1
- package/pagination/esm2022/pager.component.mjs +4 -4
- package/pagination/esm2022/pagination.component.mjs +4 -4
- package/pagination/esm2022/pagination.module.mjs +5 -5
- package/pagination/fesm2022/ngx-bootstrap-pagination.mjs +9 -10
- package/pagination/fesm2022/ngx-bootstrap-pagination.mjs.map +1 -1
- package/pagination/pager.component.d.ts +1 -1
- package/pagination/pagination.component.d.ts +1 -1
- package/pagination/pagination.module.d.ts +5 -6
- package/popover/esm2022/popover-container.component.mjs +4 -4
- package/popover/esm2022/popover.directive.mjs +8 -3
- package/popover/esm2022/popover.module.mjs +5 -10
- package/popover/fesm2022/ngx-bootstrap-popover.mjs +17 -16
- package/popover/fesm2022/ngx-bootstrap-popover.mjs.map +1 -1
- package/popover/popover-container.component.d.ts +1 -1
- package/popover/popover.directive.d.ts +1 -1
- package/popover/popover.module.d.ts +5 -6
- package/progressbar/bar.component.d.ts +1 -1
- package/progressbar/esm2022/bar.component.mjs +3 -3
- package/progressbar/esm2022/progressbar.component.mjs +5 -5
- package/progressbar/esm2022/progressbar.module.mjs +6 -7
- package/progressbar/fesm2022/ngx-bootstrap-progressbar.mjs +10 -11
- package/progressbar/fesm2022/ngx-bootstrap-progressbar.mjs.map +1 -1
- package/progressbar/progressbar.component.d.ts +1 -1
- package/progressbar/progressbar.module.d.ts +2 -4
- package/rating/esm2022/rating.component.mjs +4 -4
- package/rating/esm2022/rating.module.mjs +6 -10
- package/rating/fesm2022/ngx-bootstrap-rating.mjs +8 -12
- package/rating/fesm2022/ngx-bootstrap-rating.mjs.map +1 -1
- package/rating/rating.component.d.ts +1 -1
- package/rating/rating.module.d.ts +2 -4
- package/schematics/ng-add/index.js +5 -0
- package/schematics/ng-add/index.js.map +1 -1
- package/schematics/utils/current_dependency_versions.json +1 -1
- package/schematics/utils/index.js +4 -4
- package/schematics/utils/index.js.map +1 -1
- package/sortable/esm2022/sortable.component.mjs +11 -7
- package/sortable/esm2022/sortable.module.mjs +6 -8
- package/sortable/fesm2022/ngx-bootstrap-sortable.mjs +15 -12
- package/sortable/fesm2022/ngx-bootstrap-sortable.mjs.map +1 -1
- package/sortable/sortable.component.d.ts +1 -1
- package/sortable/sortable.module.d.ts +2 -4
- package/tabs/esm2022/ng-transclude.directive.mjs +4 -3
- package/tabs/esm2022/tab-heading.directive.mjs +6 -3
- package/tabs/esm2022/tab.directive.mjs +6 -3
- package/tabs/esm2022/tabs.module.mjs +7 -12
- package/tabs/esm2022/tabset.component.mjs +5 -5
- package/tabs/fesm2022/ngx-bootstrap-tabs.mjs +22 -21
- package/tabs/fesm2022/ngx-bootstrap-tabs.mjs.map +1 -1
- package/tabs/ng-transclude.directive.d.ts +1 -1
- package/tabs/tab-heading.directive.d.ts +1 -1
- package/tabs/tab.directive.d.ts +1 -1
- package/tabs/tabs.module.d.ts +7 -8
- package/tabs/tabset.component.d.ts +1 -1
- package/timepicker/esm2022/timepicker.component.mjs +4 -4
- package/timepicker/esm2022/timepicker.module.mjs +6 -13
- package/timepicker/fesm2022/ngx-bootstrap-timepicker.mjs +8 -13
- package/timepicker/fesm2022/ngx-bootstrap-timepicker.mjs.map +1 -1
- package/timepicker/timepicker.component.d.ts +1 -1
- package/timepicker/timepicker.module.d.ts +2 -4
- package/tooltip/esm2022/tooltip-container.component.mjs +3 -3
- package/tooltip/esm2022/tooltip.directive.mjs +9 -3
- package/tooltip/esm2022/tooltip.module.mjs +5 -10
- package/tooltip/fesm2022/ngx-bootstrap-tooltip.mjs +14 -11
- package/tooltip/fesm2022/ngx-bootstrap-tooltip.mjs.map +1 -1
- package/tooltip/tooltip-container.component.d.ts +1 -1
- package/tooltip/tooltip.directive.d.ts +1 -1
- package/tooltip/tooltip.module.d.ts +5 -6
- package/typeahead/esm2022/typeahead-container.component.mjs +4 -4
- package/typeahead/esm2022/typeahead.directive.mjs +6 -3
- package/typeahead/esm2022/typeahead.module.mjs +5 -10
- package/typeahead/fesm2022/ngx-bootstrap-typeahead.mjs +11 -13
- package/typeahead/fesm2022/ngx-bootstrap-typeahead.mjs.map +1 -1
- package/typeahead/typeahead-container.component.d.ts +1 -1
- package/typeahead/typeahead.directive.d.ts +1 -1
- package/typeahead/typeahead.module.d.ts +5 -6
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ngx-bootstrap-carousel.mjs","sources":["../../../../src/carousel/carousel.config.ts","../../../../src/carousel/utils.ts","../../../../src/carousel/carousel.component.ts","../../../../src/carousel/carousel.component.html","../../../../src/carousel/slide.component.ts","../../../../src/carousel/carousel.module.ts","../../../../src/carousel/ngx-bootstrap-carousel.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CarouselConfig {\n /* Default interval of auto changing of slides */\n interval = 5000;\n\n /* Is loop of auto changing of slides can be paused */\n noPause = false;\n\n /* Is slides can wrap from the last to the first slide */\n noWrap = false;\n\n /* Show carousel-indicators */\n showIndicators = true;\n\n /* Slides can be paused on focus */\n pauseOnFocus = false;\n\n /* If `true` - carousel indicators indicate slides chunks works ONLY if singleSlideOffset = FALSE */\n indicatorsByChunk = false;\n\n /* If value more then 1 — carousel works in multilist mode */\n itemsPerSlide = 1;\n\n /* If `true` — carousel shifts by one element. By default carousel shifts by number\n of visible elements (itemsPerSlide field) */\n singleSlideOffset = false;\n}\n","/**\n * Returns the index of the last element in the array where predicate is true, and -1\n * otherwise.\n * @param array The source array to search in\n * @param predicate find calls predicate once for each element of the array, in descending\n * order, until it finds one where predicate returns true. If such an element is found,\n * findLastIndex immediately returns that element index. Otherwise, findLastIndex returns -1.\n */\nexport function findLastIndex<T>(array: T[], predicate: (value: T, index: number, obj: T[]) => boolean): number {\n let l = array.length;\n\n while (l--) {\n if (predicate(array[l], l, array)) {\n return l;\n }\n }\n\n return -1;\n}\n\nexport function chunkByNumber<T>(array: T[], size: number): T[][] {\n const out = [];\n const n = Math.ceil(array.length / size);\n let i = 0;\n\n while (i < n) {\n const chunk = array.splice(0, i === n - 1 && size < array.length ? array.length : size);\n\n out.push(chunk);\n i++;\n }\n\n return out;\n}\n\nexport function isNumber(value?: unknown): value is number {\n return typeof value === 'number' || Object.prototype.toString.call(value) === '[object Number]';\n}\n","/***\n * pause (not yet supported) (?string='hover') - event group name which pauses\n * the cycling of the carousel, if hover pauses on mouseenter and resumes on\n * mouseleave keyboard (not yet supported) (?boolean=true) - if false\n * carousel will not react to keyboard events\n * note: swiping not yet supported\n */\n/****\n * Problems:\n * 1) if we set an active slide via model changes, .active class remains on a\n * current slide.\n * 2) if we have only one slide, we shouldn't show prev/next nav buttons\n * 3) if first or last slide is active and noWrap is true, there should be\n * \"disabled\" class on the nav buttons.\n * 4) default interval should be equal 5000\n */\n\nimport {\n Component, EventEmitter, Input, NgZone, OnDestroy, Output, AfterViewInit, Inject, PLATFORM_ID\n} from '@angular/core';\nimport { isPlatformBrowser } from '@angular/common';\n\nimport { LinkedList, getBsVer, IBsVersion } from 'ngx-bootstrap/utils';\nimport { SlideComponent } from './slide.component';\nimport { CarouselConfig } from './carousel.config';\nimport { findLastIndex, chunkByNumber, isNumber } from './utils';\nimport { SlideWithIndex, IndexedSlideList } from './models';\n\nexport enum Direction {\n UNKNOWN,\n NEXT,\n PREV\n}\n\nlet _currentId = 1;\n\n/**\n * Base element to create carousel\n */\n@Component({\n selector: 'carousel',\n templateUrl: './carousel.component.html'\n})\nexport class CarouselComponent implements AfterViewInit, OnDestroy {\n /* If `true` — carousel will not cycle continuously and will have hard stops (prevent looping) */\n @Input() noWrap = false;\n /* If `true` — will disable pausing on carousel mouse hover */\n @Input() noPause = false;\n /* If `true` — carousel-indicators are visible */\n @Input() showIndicators = true;\n /* If `true` - autoplay will be stopped on focus */\n @Input() pauseOnFocus = false;\n /* If `true` - carousel indicators indicate slides chunks\n works ONLY if singleSlideOffset = FALSE */\n @Input() indicatorsByChunk = false;\n /* If value more then 1 — carousel works in multilist mode */\n @Input() itemsPerSlide = 1;\n /* If `true` — carousel shifts by one element. By default carousel shifts by number\n of visible elements (itemsPerSlide field) */\n @Input() singleSlideOffset = false;\n /** Turn on/off animation. Animation doesn't work for multilist carousel */\n @Input() isAnimated = false;\n\n /** Will be emitted when active slide has been changed. Part of two-way-bindable [(activeSlide)] property */\n @Output()\n activeSlideChange = new EventEmitter<number>(false);\n\n /** Will be emitted when active slides has been changed in multilist mode */\n @Output()\n slideRangeChange = new EventEmitter<number[]|void>();\n\n /** Index of currently displayed slide(started for 0) */\n @Input()\n set activeSlide(index: number) {\n if (this.multilist) {\n return;\n }\n\n if (isNumber(index)) {\n this.customActiveSlide = index;\n }\n\n if (this._slides.length && index !== this._currentActiveSlide) {\n this._select(index);\n }\n }\n\n get activeSlide(): number {\n return this._currentActiveSlide || 0;\n }\n\n /* Index to start display slides from it */\n @Input()\n startFromIndex = 0;\n\n /**\n * Delay of item cycling in milliseconds. If false, carousel won't cycle\n * automatically.\n */\n @Input()\n get interval(): number {\n return this._interval;\n }\n\n set interval(value: number) {\n this._interval = value;\n this.restartTimer();\n }\n\n get slides(): SlideComponent[] {\n return this._slides.toArray();\n }\n\n get isFirstSlideVisible(): boolean {\n const indexes = this.getVisibleIndexes();\n if (!indexes || (indexes instanceof Array && !indexes.length)) {\n return false;\n }\n\n return indexes.includes(0);\n }\n\n get isLastSlideVisible(): boolean {\n const indexes = this.getVisibleIndexes();\n if (!indexes || (indexes instanceof Array && !indexes.length)) {\n return false;\n }\n\n return indexes.includes(this._slides.length -1);\n }\n\n protected currentInterval?: number;\n protected _currentActiveSlide?: number;\n protected _interval = 5000;\n protected _slides: LinkedList<SlideComponent> = new LinkedList<SlideComponent>();\n protected _chunkedSlides?: SlideWithIndex[][];\n protected _slidesWithIndexes?: SlideWithIndex[];\n protected _currentVisibleSlidesIndex = 0;\n protected isPlaying = false;\n protected destroyed = false;\n private customActiveSlide?: number;\n currentId = 0;\n\n get _bsVer(): IBsVersion {\n return getBsVer();\n }\n\n constructor(config: CarouselConfig, private ngZone: NgZone, @Inject(PLATFORM_ID) public platformId: number) {\n Object.assign(this, config);\n this.currentId = _currentId++;\n }\n\n ngAfterViewInit(): void {\n setTimeout(() => {\n if (this.singleSlideOffset) {\n this.indicatorsByChunk = false;\n }\n if (this.multilist) {\n this._chunkedSlides = chunkByNumber(\n this.mapSlidesAndIndexes(),\n this.itemsPerSlide\n );\n this.selectInitialSlides();\n }\n\n if (this.customActiveSlide && !this.multilist) {\n this._select(this.customActiveSlide);\n }\n }, 0);\n }\n\n ngOnDestroy(): void {\n this.destroyed = true;\n }\n\n /**\n * Adds new slide. If this slide is first in collection - set it as active\n * and starts auto changing\n * @param slide\n */\n addSlide(slide: SlideComponent): void {\n this._slides.add(slide);\n\n if (this.multilist && this._slides.length <= this.itemsPerSlide) {\n slide.active = true;\n }\n\n if (!this.multilist && this.isAnimated) {\n slide.isAnimated = true;\n }\n\n if (!this.multilist && this._slides.length === 1) {\n this._currentActiveSlide = undefined;\n if (!this.customActiveSlide) {\n this.activeSlide = 0;\n }\n this.play();\n }\n\n if (this.multilist && this._slides.length > this.itemsPerSlide) {\n this.play();\n }\n }\n\n /**\n * Removes specified slide. If this slide is active - will roll to another\n * slide\n * @param slide\n */\n removeSlide(slide: SlideComponent): void {\n const remIndex = this._slides.indexOf(slide);\n\n if (this._currentActiveSlide === remIndex) {\n // removing of active slide\n let nextSlideIndex: number;\n if (this._slides.length > 1) {\n // if this slide last - will roll to first slide, if noWrap flag is\n // FALSE or to previous, if noWrap is TRUE in case, if this slide in\n // middle of collection, index of next slide is same to removed\n nextSlideIndex = !this.isLast(remIndex)\n ? remIndex\n : this.noWrap ? remIndex - 1 : 0;\n }\n this._slides.remove(remIndex);\n\n // prevents exception with changing some value after checking\n setTimeout(() => {\n this._select(nextSlideIndex);\n }, 0);\n } else {\n this._slides.remove(remIndex);\n const currentSlideIndex = this.getCurrentSlideIndex();\n setTimeout(() => {\n // after removing, need to actualize index of current active slide\n this._currentActiveSlide = currentSlideIndex;\n this.activeSlideChange.emit(this._currentActiveSlide);\n }, 0);\n }\n }\n\n nextSlideFromInterval(force = false): void {\n this.move(Direction.NEXT, force);\n }\n\n /**\n * Rolling to next slide\n * @param force: {boolean} if true - will ignore noWrap flag\n */\n nextSlide(force = false): void {\n if (this.isPlaying) {\n this.restartTimer();\n }\n this.move(Direction.NEXT, force);\n }\n\n /**\n * Rolling to previous slide\n * @param force: {boolean} if true - will ignore noWrap flag\n */\n previousSlide(force = false): void {\n if (this.isPlaying) {\n this.restartTimer();\n }\n this.move(Direction.PREV, force);\n }\n\n getFirstVisibleIndex(): number {\n return this.slides.findIndex(this.getActive);\n }\n\n getLastVisibleIndex(): number {\n return findLastIndex(this.slides, this.getActive);\n }\n\n getActive = (slide: SlideComponent) => slide.active;\n\n move(direction: Direction, force = false): void {\n const firstVisibleIndex = this.getFirstVisibleIndex();\n const lastVisibleIndex = this.getLastVisibleIndex();\n\n if (this.noWrap) {\n if (\n direction === Direction.NEXT &&\n this.isLast(lastVisibleIndex) ||\n direction === Direction.PREV &&\n firstVisibleIndex === 0\n ) {\n return;\n }\n }\n\n if (!this.multilist) {\n this.activeSlide = this.findNextSlideIndex(direction, force) || 0;\n } else {\n this.moveMultilist(direction);\n }\n }\n\n /**\n * Swith slides by enter, space and arrows keys\n * @internal\n */\n keydownPress(event: KeyboardEvent) {\n if (event.keyCode === 13 || event.key === 'Enter' || event.keyCode === 32 || event.key === 'Space') {\n this.nextSlide();\n event.preventDefault();\n\n return;\n }\n\n if (event.keyCode === 37 || event.key === 'LeftArrow') {\n this.previousSlide();\n\n return;\n }\n\n if (event.keyCode === 39 || event.key === 'RightArrow') {\n this.nextSlide();\n\n return;\n }\n }\n\n /**\n * Play on mouse leave\n * @internal\n */\n onMouseLeave(): void {\n if (!this.pauseOnFocus) {\n this.play();\n }\n }\n\n /**\n * Play on mouse up\n * @internal\n */\n onMouseUp(): void {\n if (!this.pauseOnFocus) {\n this.play();\n }\n }\n\n /**\n * When slides on focus autoplay is stopped(optional)\n * @internal\n */\n pauseFocusIn(): void {\n if (this.pauseOnFocus) {\n this.isPlaying = false;\n this.resetTimer();\n }\n }\n\n /**\n * When slides out of focus autoplay is started\n * @internal\n */\n pauseFocusOut(): void {\n this.play();\n }\n\n /**\n * Rolling to specified slide\n * @param index: {number} index of slide, which must be shown\n */\n selectSlide(index: number): void {\n if (this.isPlaying) {\n this.restartTimer();\n }\n\n if (!this.multilist) {\n this.activeSlide = this.indicatorsByChunk ? index * this.itemsPerSlide : index;\n } else {\n this.selectSlideRange(this.indicatorsByChunk ? index * this.itemsPerSlide : index);\n }\n }\n\n /**\n * Starts a auto changing of slides\n */\n play(): void {\n if (!this.isPlaying) {\n this.isPlaying = true;\n this.restartTimer();\n }\n }\n\n /**\n * Stops a auto changing of slides\n */\n pause(): void {\n if (!this.noPause) {\n this.isPlaying = false;\n this.resetTimer();\n }\n }\n\n /**\n * Finds and returns index of currently displayed slide\n */\n getCurrentSlideIndex(): number {\n return this._slides.findIndex(this.getActive);\n }\n\n /**\n * Defines, whether the specified index is last in collection\n * @param index\n */\n isLast(index: number): boolean {\n return index + 1 >= this._slides.length;\n }\n\n /**\n * Defines, whether the specified index is first in collection\n * @param index\n */\n isFirst(index: number): boolean {\n return index === 0;\n }\n\n indicatorsSlides(): SlideComponent[] {\n return this.slides.filter(\n (slide: SlideComponent, index: number) => !this.indicatorsByChunk || index % this.itemsPerSlide === 0\n );\n }\n\n private selectInitialSlides(): void {\n const startIndex = this.startFromIndex <= this._slides.length\n ? this.startFromIndex\n : 0;\n\n this.hideSlides();\n\n if (this.singleSlideOffset) {\n this._slidesWithIndexes = this.mapSlidesAndIndexes();\n\n if (this._slides.length - startIndex < this.itemsPerSlide) {\n const slidesToAppend = this._slidesWithIndexes.slice(0, startIndex);\n\n this._slidesWithIndexes = [\n ...this._slidesWithIndexes,\n ...slidesToAppend\n ]\n .slice(slidesToAppend.length)\n .slice(0, this.itemsPerSlide);\n } else {\n this._slidesWithIndexes = this._slidesWithIndexes.slice(\n startIndex,\n startIndex + this.itemsPerSlide\n );\n }\n\n this._slidesWithIndexes.forEach((slide: SlideWithIndex) => slide.item.active = true);\n this.makeSlidesConsistent(this._slidesWithIndexes);\n } else {\n this.selectRangeByNestedIndex(startIndex);\n }\n\n this.slideRangeChange.emit(this.getVisibleIndexes());\n }\n\n /**\n * Defines next slide index, depending of direction\n * @param direction: Direction(UNKNOWN|PREV|NEXT)\n * @param force: {boolean} if TRUE - will ignore noWrap flag, else will\n * return undefined if next slide require wrapping\n */\n private findNextSlideIndex(direction: Direction, force: boolean): number | void {\n let nextSlideIndex = 0;\n\n if (\n !force &&\n (this.isLast(this.activeSlide) &&\n direction !== Direction.PREV &&\n this.noWrap)\n ) {\n return;\n }\n\n switch (direction) {\n case Direction.NEXT:\n // if this is last slide, not force, looping is disabled\n // and need to going forward - select current slide, as a next\n if (typeof this._currentActiveSlide === 'undefined') {\n nextSlideIndex = 0;\n break;\n }\n if (!this.isLast(this._currentActiveSlide)) {\n nextSlideIndex = this._currentActiveSlide + 1;\n break;\n }\n nextSlideIndex = !force && this.noWrap ? this._currentActiveSlide : 0;\n break;\n case Direction.PREV:\n // if this is first slide, not force, looping is disabled\n // and need to going backward - select current slide, as a next\n if (typeof this._currentActiveSlide === 'undefined') {\n nextSlideIndex = 0;\n break;\n }\n if (this._currentActiveSlide > 0) {\n nextSlideIndex = this._currentActiveSlide - 1;\n break;\n }\n if (!force && this.noWrap) {\n nextSlideIndex = this._currentActiveSlide;\n break;\n }\n nextSlideIndex = this._slides.length - 1;\n break;\n default:\n throw new Error('Unknown direction');\n }\n\n return nextSlideIndex;\n }\n\n private mapSlidesAndIndexes(): SlideWithIndex[] {\n return this.slides\n .slice()\n .map((slide: SlideComponent, index: number) => {\n return {\n index,\n item: slide\n };\n });\n }\n\n\n private selectSlideRange(index: number): void {\n if (this.isIndexInRange(index)) {\n return;\n }\n\n this.hideSlides();\n\n if (!this.singleSlideOffset) {\n this.selectRangeByNestedIndex(index);\n } else {\n const startIndex = this.isIndexOnTheEdges(index)\n ? index\n : index - this.itemsPerSlide + 1;\n\n const endIndex = this.isIndexOnTheEdges(index)\n ? index + this.itemsPerSlide\n : index + 1;\n\n this._slidesWithIndexes = this.mapSlidesAndIndexes().slice(startIndex, endIndex);\n this.makeSlidesConsistent(this._slidesWithIndexes);\n\n this._slidesWithIndexes.forEach((slide: SlideWithIndex) => slide.item.active = true);\n }\n\n this.slideRangeChange.emit(this.getVisibleIndexes());\n }\n\n private selectRangeByNestedIndex(index: number): void {\n if (!this._chunkedSlides) {\n return;\n }\n\n const selectedRange = this._chunkedSlides\n .map((slidesList, i: number) => {\n return {\n index: i,\n list: slidesList\n };\n })\n .find(\n (slidesList: IndexedSlideList) => {\n return slidesList.list.find(slide => slide.index === index) !== undefined;\n }\n );\n\n if (!selectedRange) {\n return;\n }\n\n this._currentVisibleSlidesIndex = selectedRange.index;\n\n this._chunkedSlides[selectedRange.index].forEach((slide: SlideWithIndex) => {\n slide.item.active = true;\n });\n }\n\n private isIndexOnTheEdges(index: number): boolean {\n return (\n index + 1 - this.itemsPerSlide <= 0 ||\n index + this.itemsPerSlide <= this._slides.length\n );\n }\n\n private isIndexInRange(index: number): boolean {\n if (this.singleSlideOffset && this._slidesWithIndexes) {\n const visibleIndexes = this._slidesWithIndexes.map((slide: SlideWithIndex) => slide.index);\n\n return visibleIndexes.indexOf(index) >= 0;\n }\n\n return (\n index <= this.getLastVisibleIndex() &&\n index >= this.getFirstVisibleIndex()\n );\n }\n\n private hideSlides(): void {\n this.slides.forEach((slide: SlideComponent) => slide.active = false);\n }\n\n private isVisibleSlideListLast(): boolean {\n if (!this._chunkedSlides) {\n return false;\n }\n\n return this._currentVisibleSlidesIndex === this._chunkedSlides.length - 1;\n }\n\n private isVisibleSlideListFirst(): boolean {\n return this._currentVisibleSlidesIndex === 0;\n }\n\n private moveSliderByOneItem(direction: Direction): void {\n let firstVisibleIndex: number;\n let lastVisibleIndex: number;\n let indexToHide: number;\n let indexToShow: number;\n\n if (this.noWrap) {\n firstVisibleIndex = this.getFirstVisibleIndex();\n lastVisibleIndex = this.getLastVisibleIndex();\n\n indexToHide = direction === Direction.NEXT\n ? firstVisibleIndex\n : lastVisibleIndex;\n\n indexToShow = direction !== Direction.NEXT\n ? firstVisibleIndex - 1\n : !this.isLast(lastVisibleIndex)\n ? lastVisibleIndex + 1 : 0;\n\n const slideToHide = this._slides.get(indexToHide);\n if (slideToHide) {\n slideToHide.active = false;\n }\n\n const slideToShow = this._slides.get(indexToShow);\n if (slideToShow) {\n slideToShow.active = true;\n }\n\n const slidesToReorder = this.mapSlidesAndIndexes().filter(\n (slide: SlideWithIndex) => slide.item.active\n );\n\n this.makeSlidesConsistent(slidesToReorder);\n if (this.singleSlideOffset) {\n this._slidesWithIndexes = slidesToReorder;\n }\n\n this.slideRangeChange.emit(this.getVisibleIndexes());\n return;\n }\n\n if (!this._slidesWithIndexes || !this._slidesWithIndexes[0]) {\n return;\n }\n\n let index: number;\n\n firstVisibleIndex = this._slidesWithIndexes[0].index;\n lastVisibleIndex = this._slidesWithIndexes[this._slidesWithIndexes.length - 1].index;\n\n if (direction === Direction.NEXT) {\n this._slidesWithIndexes.shift();\n\n index = this.isLast(lastVisibleIndex)\n ? 0\n : lastVisibleIndex + 1;\n\n const item = this._slides.get(index);\n\n if (item) {\n this._slidesWithIndexes.push({ index, item });\n }\n } else {\n this._slidesWithIndexes.pop();\n index = this.isFirst(firstVisibleIndex)\n ? this._slides.length - 1\n : firstVisibleIndex - 1;\n\n const item = this._slides.get(index);\n if (item) {\n this._slidesWithIndexes = [{ index, item }, ...this._slidesWithIndexes];\n }\n }\n\n this.hideSlides();\n\n this._slidesWithIndexes.forEach(slide => slide.item.active = true);\n this.makeSlidesConsistent(this._slidesWithIndexes);\n\n this.slideRangeChange.emit(\n this._slidesWithIndexes.map((slide: SlideWithIndex) => slide.index)\n );\n }\n\n private makeSlidesConsistent = (slides: SlideWithIndex[]): void => {\n slides.forEach((slide: SlideWithIndex, index: number) => slide.item.order = index);\n };\n\n private moveMultilist(direction: Direction): void {\n if (this.singleSlideOffset) {\n this.moveSliderByOneItem(direction);\n } else {\n this.hideSlides();\n\n if (this.noWrap) {\n this._currentVisibleSlidesIndex = direction === Direction.NEXT\n ? this._currentVisibleSlidesIndex + 1\n : this._currentVisibleSlidesIndex - 1;\n } else if (direction === Direction.NEXT) {\n this._currentVisibleSlidesIndex = this.isVisibleSlideListLast()\n ? 0\n : this._currentVisibleSlidesIndex + 1;\n } else {\n if (this.isVisibleSlideListFirst()) {\n this._currentVisibleSlidesIndex = this._chunkedSlides\n ? this._chunkedSlides.length - 1\n : 0;\n } else {\n this._currentVisibleSlidesIndex = this._currentVisibleSlidesIndex - 1;\n }\n }\n\n if (this._chunkedSlides) {\n this._chunkedSlides[this._currentVisibleSlidesIndex].forEach(\n (slide: SlideWithIndex) => slide.item.active = true\n );\n }\n this.slideRangeChange.emit(this.getVisibleIndexes());\n }\n }\n\n private getVisibleIndexes(): number[] | void {\n if (!this.singleSlideOffset && this._chunkedSlides) {\n return this._chunkedSlides[this._currentVisibleSlidesIndex]\n .map((slide: SlideWithIndex) => slide.index);\n }\n\n if (this._slidesWithIndexes) {\n return this._slidesWithIndexes.map((slide: SlideWithIndex) => slide.index);\n }\n }\n\n /**\n * Sets a slide, which specified through index, as active\n * @param index\n */\n private _select(index: number): void {\n if (isNaN(index)) {\n this.pause();\n\n return;\n }\n\n if (!this.multilist && typeof this._currentActiveSlide !== 'undefined') {\n const currentSlide = this._slides.get(this._currentActiveSlide);\n if (typeof currentSlide !== 'undefined') {\n currentSlide.active = false;\n }\n }\n\n const nextSlide = this._slides.get(index);\n\n if (typeof nextSlide !== 'undefined') {\n this._currentActiveSlide = index;\n nextSlide.active = true;\n this.activeSlide = index;\n this.activeSlideChange.emit(index);\n }\n }\n\n /**\n * Starts loop of auto changing of slides\n */\n private restartTimer() {\n this.resetTimer();\n const interval = +this.interval;\n if (!isNaN(interval) && interval > 0 && isPlatformBrowser(this.platformId)) {\n this.currentInterval = this.ngZone.runOutsideAngular<number>(() => {\n return window.setInterval(() => {\n const nInterval = +this.interval;\n this.ngZone.run(() => {\n if (\n this.isPlaying &&\n !isNaN(this.interval) &&\n nInterval > 0 &&\n this.slides.length\n ) {\n this.nextSlideFromInterval();\n } else {\n this.pause();\n }\n });\n }, interval);\n });\n }\n }\n\n get multilist(): boolean {\n return this.itemsPerSlide > 1;\n }\n\n /**\n * Stops loop of auto changing of slides\n */\n private resetTimer(): void {\n if (this.currentInterval) {\n clearInterval(this.currentInterval);\n this.currentInterval = void 0;\n }\n }\n\n checkDisabledClass(buttonType: 'prev' | 'next'): boolean {\n if (buttonType === 'prev') {\n return (this.activeSlide === 0 && this.noWrap && !this.multilist) || (this.isFirstSlideVisible && this.noWrap && this.multilist);\n }\n\n return (this.isLast(this.activeSlide) && this.noWrap && !this.multilist) || (this.isLastSlideVisible && this.noWrap && this.multilist);\n }\n}\n","<div (mouseenter)=\"pause()\"\n (mouseleave)=\"onMouseLeave()\"\n (mouseup)=\"onMouseUp()\"\n (keydown)=\"keydownPress($event)\"\n (focusin)=\"pauseFocusIn()\"\n (focusout)=\"pauseFocusOut()\"\n [id]=\"'carousel' + currentId\"\n class=\"carousel slide\" tabindex=\"0\">\n <ng-container *ngIf=\"!_bsVer.isBs5 && showIndicators && slides.length > 1\">\n <ol class=\"carousel-indicators\">\n <li *ngFor=\"let slide of indicatorsSlides(); let i = index;\"\n [class.active]=\"slide.active === true\"\n (click)=\"selectSlide(i)\">\n </li>\n </ol>\n </ng-container>\n <ng-container *ngIf=\"_bsVer.isBs5 && showIndicators && slides.length > 1\">\n <div class=\"carousel-indicators\">\n <button\n *ngFor=\"let slide of indicatorsSlides(); let i = index;\"\n [class.active]=\"slide.active === true\"\n (click)=\"selectSlide(i)\"\n type=\"button\"\n [attr.data-bs-target]=\"'#carousel' + currentId\"\n [attr.data-bs-slide-to]=\"i\" aria-current=\"true\"\n >\n </button>\n </div>\n </ng-container>\n <div class=\"carousel-inner\" [ngStyle]=\"{'display': multilist ? 'flex' : 'block'}\">\n <ng-content></ng-content>\n </div>\n <a class=\"left carousel-control carousel-control-prev\"\n href=\"javascript:void(0);\"\n [class.disabled]=\"checkDisabledClass('prev')\"\n [attr.data-bs-target]=\"'#carousel' + currentId\"\n *ngIf=\"slides.length > 1\"\n (click)=\"previousSlide()\"\n tabindex=\"0\" role=\"button\">\n <span class=\"icon-prev carousel-control-prev-icon\" aria-hidden=\"true\"></span>\n <span class=\"sr-only visually-hidden\">Previous</span>\n </a>\n\n <a class=\"right carousel-control carousel-control-next\"\n href=\"javascript:void(0);\"\n *ngIf=\"slides.length > 1\"\n (click)=\"nextSlide()\"\n [class.disabled]=\"checkDisabledClass('next')\"\n [attr.data-bs-target]=\"'#carousel' + currentId\"\n tabindex=\"0\" role=\"button\">\n <span class=\"icon-next carousel-control-next-icon\" aria-hidden=\"true\"></span>\n <span class=\"sr-only visually-hidden\">Next</span>\n </a>\n</div>\n","import {\n Component,\n HostBinding,\n OnDestroy,\n Input,\n OnInit\n} from '@angular/core';\n\nimport { CarouselComponent } from './carousel.component';\n\n@Component({\n selector: 'slide',\n template: `\n <div [class.active]=\"active\" class=\"item\">\n <ng-content></ng-content>\n </div>\n `,\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: {\n '[attr.aria-hidden]': '!active',\n '[class.multilist-margin]': 'multilist'\n },\n styles: [`\n :host.carousel-animation {\n transition: opacity 0.6s ease, visibility 0.6s ease;\n float: left;\n }\n :host.carousel-animation.active {\n opacity: 1;\n visibility: visible;\n }\n :host.carousel-animation:not(.active) {\n display: block;\n position: absolute;\n opacity: 0;\n visibility: hidden;\n }\n :host.multilist-margin {\n margin-right: auto;\n }\n :host.carousel-item {\n perspective: 1000px;\n }\n `]\n})\nexport class SlideComponent implements OnInit, OnDestroy {\n /** Is current slide active */\n @HostBinding('class.active')\n @Input()\n active = false;\n\n @HostBinding('style.width') itemWidth = '100%';\n @HostBinding('style.order') order = 0;\n @HostBinding('class.carousel-animation') isAnimated = false;\n\n /** Wraps element by appropriate CSS classes */\n @HostBinding('class.item')\n @HostBinding('class.carousel-item')\n addClass = true;\n\n /** Link to Parent(container-collection) component */\n protected carousel: CarouselComponent;\n multilist = false;\n constructor(carousel: CarouselComponent) {\n this.carousel = carousel;\n }\n\n /** Fires changes in container collection after adding a new slide instance */\n ngOnInit(): void {\n this.carousel.addSlide(this);\n this.itemWidth = `${100 / this.carousel.itemsPerSlide}%`;\n this.multilist = this.carousel?.itemsPerSlide > 1;\n }\n\n /** Fires changes in container collection after removing of this slide instance */\n ngOnDestroy(): void {\n this.carousel.removeSlide(this);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule, ModuleWithProviders } from '@angular/core';\n\nimport { CarouselComponent } from './carousel.component';\nimport { SlideComponent } from './slide.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [SlideComponent, CarouselComponent],\n exports: [SlideComponent, CarouselComponent]\n})\nexport class CarouselModule {\n static forRoot(): ModuleWithProviders<CarouselModule> {\n return { ngModule: CarouselModule, providers: [] };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.CarouselComponent"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"ngx-bootstrap-carousel.mjs","sources":["../../../../src/carousel/carousel.config.ts","../../../../src/carousel/utils.ts","../../../../src/carousel/carousel.component.ts","../../../../src/carousel/carousel.component.html","../../../../src/carousel/slide.component.ts","../../../../src/carousel/carousel.module.ts","../../../../src/carousel/ngx-bootstrap-carousel.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CarouselConfig {\n /* Default interval of auto changing of slides */\n interval = 5000;\n\n /* Is loop of auto changing of slides can be paused */\n noPause = false;\n\n /* Is slides can wrap from the last to the first slide */\n noWrap = false;\n\n /* Show carousel-indicators */\n showIndicators = true;\n\n /* Slides can be paused on focus */\n pauseOnFocus = false;\n\n /* If `true` - carousel indicators indicate slides chunks works ONLY if singleSlideOffset = FALSE */\n indicatorsByChunk = false;\n\n /* If value more then 1 — carousel works in multilist mode */\n itemsPerSlide = 1;\n\n /* If `true` — carousel shifts by one element. By default carousel shifts by number\n of visible elements (itemsPerSlide field) */\n singleSlideOffset = false;\n}\n","/**\n * Returns the index of the last element in the array where predicate is true, and -1\n * otherwise.\n * @param array The source array to search in\n * @param predicate find calls predicate once for each element of the array, in descending\n * order, until it finds one where predicate returns true. If such an element is found,\n * findLastIndex immediately returns that element index. Otherwise, findLastIndex returns -1.\n */\nexport function findLastIndex<T>(array: T[], predicate: (value: T, index: number, obj: T[]) => boolean): number {\n let l = array.length;\n\n while (l--) {\n if (predicate(array[l], l, array)) {\n return l;\n }\n }\n\n return -1;\n}\n\nexport function chunkByNumber<T>(array: T[], size: number): T[][] {\n const out = [];\n const n = Math.ceil(array.length / size);\n let i = 0;\n\n while (i < n) {\n const chunk = array.splice(0, i === n - 1 && size < array.length ? array.length : size);\n\n out.push(chunk);\n i++;\n }\n\n return out;\n}\n\nexport function isNumber(value?: unknown): value is number {\n return typeof value === 'number' || Object.prototype.toString.call(value) === '[object Number]';\n}\n","/***\n * pause (not yet supported) (?string='hover') - event group name which pauses\n * the cycling of the carousel, if hover pauses on mouseenter and resumes on\n * mouseleave keyboard (not yet supported) (?boolean=true) - if false\n * carousel will not react to keyboard events\n * note: swiping not yet supported\n */\n/****\n * Problems:\n * 1) if we set an active slide via model changes, .active class remains on a\n * current slide.\n * 2) if we have only one slide, we shouldn't show prev/next nav buttons\n * 3) if first or last slide is active and noWrap is true, there should be\n * \"disabled\" class on the nav buttons.\n * 4) default interval should be equal 5000\n */\n\nimport {\n Component, EventEmitter, Input, NgZone, OnDestroy, Output, AfterViewInit, Inject, PLATFORM_ID\n} from '@angular/core';\nimport { isPlatformBrowser, NgIf, NgFor, NgStyle } from '@angular/common';\n\nimport { LinkedList, getBsVer, IBsVersion } from 'ngx-bootstrap/utils';\nimport { SlideComponent } from './slide.component';\nimport { CarouselConfig } from './carousel.config';\nimport { findLastIndex, chunkByNumber, isNumber } from './utils';\nimport { SlideWithIndex, IndexedSlideList } from './models';\n\nexport enum Direction {\n UNKNOWN,\n NEXT,\n PREV\n}\n\nlet _currentId = 1;\n\n/**\n * Base element to create carousel\n */\n@Component({\n selector: 'carousel',\n templateUrl: './carousel.component.html',\n standalone: true,\n imports: [NgIf, NgFor, NgStyle]\n})\nexport class CarouselComponent implements AfterViewInit, OnDestroy {\n /* If `true` — carousel will not cycle continuously and will have hard stops (prevent looping) */\n @Input() noWrap = false;\n /* If `true` — will disable pausing on carousel mouse hover */\n @Input() noPause = false;\n /* If `true` — carousel-indicators are visible */\n @Input() showIndicators = true;\n /* If `true` - autoplay will be stopped on focus */\n @Input() pauseOnFocus = false;\n /* If `true` - carousel indicators indicate slides chunks\n works ONLY if singleSlideOffset = FALSE */\n @Input() indicatorsByChunk = false;\n /* If value more then 1 — carousel works in multilist mode */\n @Input() itemsPerSlide = 1;\n /* If `true` — carousel shifts by one element. By default carousel shifts by number\n of visible elements (itemsPerSlide field) */\n @Input() singleSlideOffset = false;\n /** Turn on/off animation. Animation doesn't work for multilist carousel */\n @Input() isAnimated = false;\n\n /** Will be emitted when active slide has been changed. Part of two-way-bindable [(activeSlide)] property */\n @Output()\n activeSlideChange = new EventEmitter<number>(false);\n\n /** Will be emitted when active slides has been changed in multilist mode */\n @Output()\n slideRangeChange = new EventEmitter<number[]|void>();\n\n /** Index of currently displayed slide(started for 0) */\n @Input()\n set activeSlide(index: number) {\n if (this.multilist) {\n return;\n }\n\n if (isNumber(index)) {\n this.customActiveSlide = index;\n }\n\n if (this._slides.length && index !== this._currentActiveSlide) {\n this._select(index);\n }\n }\n\n get activeSlide(): number {\n return this._currentActiveSlide || 0;\n }\n\n /* Index to start display slides from it */\n @Input()\n startFromIndex = 0;\n\n /**\n * Delay of item cycling in milliseconds. If false, carousel won't cycle\n * automatically.\n */\n @Input()\n get interval(): number {\n return this._interval;\n }\n\n set interval(value: number) {\n this._interval = value;\n this.restartTimer();\n }\n\n get slides(): SlideComponent[] {\n return this._slides.toArray();\n }\n\n get isFirstSlideVisible(): boolean {\n const indexes = this.getVisibleIndexes();\n if (!indexes || (indexes instanceof Array && !indexes.length)) {\n return false;\n }\n\n return indexes.includes(0);\n }\n\n get isLastSlideVisible(): boolean {\n const indexes = this.getVisibleIndexes();\n if (!indexes || (indexes instanceof Array && !indexes.length)) {\n return false;\n }\n\n return indexes.includes(this._slides.length -1);\n }\n\n protected currentInterval?: number;\n protected _currentActiveSlide?: number;\n protected _interval = 5000;\n protected _slides: LinkedList<SlideComponent> = new LinkedList<SlideComponent>();\n protected _chunkedSlides?: SlideWithIndex[][];\n protected _slidesWithIndexes?: SlideWithIndex[];\n protected _currentVisibleSlidesIndex = 0;\n protected isPlaying = false;\n protected destroyed = false;\n private customActiveSlide?: number;\n currentId = 0;\n\n get _bsVer(): IBsVersion {\n return getBsVer();\n }\n\n constructor(config: CarouselConfig, private ngZone: NgZone, @Inject(PLATFORM_ID) public platformId: number) {\n Object.assign(this, config);\n this.currentId = _currentId++;\n }\n\n ngAfterViewInit(): void {\n setTimeout(() => {\n if (this.singleSlideOffset) {\n this.indicatorsByChunk = false;\n }\n if (this.multilist) {\n this._chunkedSlides = chunkByNumber(\n this.mapSlidesAndIndexes(),\n this.itemsPerSlide\n );\n this.selectInitialSlides();\n }\n\n if (this.customActiveSlide && !this.multilist) {\n this._select(this.customActiveSlide);\n }\n }, 0);\n }\n\n ngOnDestroy(): void {\n this.destroyed = true;\n }\n\n /**\n * Adds new slide. If this slide is first in collection - set it as active\n * and starts auto changing\n * @param slide\n */\n addSlide(slide: SlideComponent): void {\n this._slides.add(slide);\n\n if (this.multilist && this._slides.length <= this.itemsPerSlide) {\n slide.active = true;\n }\n\n if (!this.multilist && this.isAnimated) {\n slide.isAnimated = true;\n }\n\n if (!this.multilist && this._slides.length === 1) {\n this._currentActiveSlide = undefined;\n if (!this.customActiveSlide) {\n this.activeSlide = 0;\n }\n this.play();\n }\n\n if (this.multilist && this._slides.length > this.itemsPerSlide) {\n this.play();\n }\n }\n\n /**\n * Removes specified slide. If this slide is active - will roll to another\n * slide\n * @param slide\n */\n removeSlide(slide: SlideComponent): void {\n const remIndex = this._slides.indexOf(slide);\n\n if (this._currentActiveSlide === remIndex) {\n // removing of active slide\n let nextSlideIndex: number;\n if (this._slides.length > 1) {\n // if this slide last - will roll to first slide, if noWrap flag is\n // FALSE or to previous, if noWrap is TRUE in case, if this slide in\n // middle of collection, index of next slide is same to removed\n nextSlideIndex = !this.isLast(remIndex)\n ? remIndex\n : this.noWrap ? remIndex - 1 : 0;\n }\n this._slides.remove(remIndex);\n\n // prevents exception with changing some value after checking\n setTimeout(() => {\n this._select(nextSlideIndex);\n }, 0);\n } else {\n this._slides.remove(remIndex);\n const currentSlideIndex = this.getCurrentSlideIndex();\n setTimeout(() => {\n // after removing, need to actualize index of current active slide\n this._currentActiveSlide = currentSlideIndex;\n this.activeSlideChange.emit(this._currentActiveSlide);\n }, 0);\n }\n }\n\n nextSlideFromInterval(force = false): void {\n this.move(Direction.NEXT, force);\n }\n\n /**\n * Rolling to next slide\n * @param force: {boolean} if true - will ignore noWrap flag\n */\n nextSlide(force = false): void {\n if (this.isPlaying) {\n this.restartTimer();\n }\n this.move(Direction.NEXT, force);\n }\n\n /**\n * Rolling to previous slide\n * @param force: {boolean} if true - will ignore noWrap flag\n */\n previousSlide(force = false): void {\n if (this.isPlaying) {\n this.restartTimer();\n }\n this.move(Direction.PREV, force);\n }\n\n getFirstVisibleIndex(): number {\n return this.slides.findIndex(this.getActive);\n }\n\n getLastVisibleIndex(): number {\n return findLastIndex(this.slides, this.getActive);\n }\n\n getActive = (slide: SlideComponent) => slide.active;\n\n move(direction: Direction, force = false): void {\n const firstVisibleIndex = this.getFirstVisibleIndex();\n const lastVisibleIndex = this.getLastVisibleIndex();\n\n if (this.noWrap) {\n if (\n direction === Direction.NEXT &&\n this.isLast(lastVisibleIndex) ||\n direction === Direction.PREV &&\n firstVisibleIndex === 0\n ) {\n return;\n }\n }\n\n if (!this.multilist) {\n this.activeSlide = this.findNextSlideIndex(direction, force) || 0;\n } else {\n this.moveMultilist(direction);\n }\n }\n\n /**\n * Swith slides by enter, space and arrows keys\n * @internal\n */\n keydownPress(event: KeyboardEvent) {\n if (event.keyCode === 13 || event.key === 'Enter' || event.keyCode === 32 || event.key === 'Space') {\n this.nextSlide();\n event.preventDefault();\n\n return;\n }\n\n if (event.keyCode === 37 || event.key === 'LeftArrow') {\n this.previousSlide();\n\n return;\n }\n\n if (event.keyCode === 39 || event.key === 'RightArrow') {\n this.nextSlide();\n\n return;\n }\n }\n\n /**\n * Play on mouse leave\n * @internal\n */\n onMouseLeave(): void {\n if (!this.pauseOnFocus) {\n this.play();\n }\n }\n\n /**\n * Play on mouse up\n * @internal\n */\n onMouseUp(): void {\n if (!this.pauseOnFocus) {\n this.play();\n }\n }\n\n /**\n * When slides on focus autoplay is stopped(optional)\n * @internal\n */\n pauseFocusIn(): void {\n if (this.pauseOnFocus) {\n this.isPlaying = false;\n this.resetTimer();\n }\n }\n\n /**\n * When slides out of focus autoplay is started\n * @internal\n */\n pauseFocusOut(): void {\n this.play();\n }\n\n /**\n * Rolling to specified slide\n * @param index: {number} index of slide, which must be shown\n */\n selectSlide(index: number): void {\n if (this.isPlaying) {\n this.restartTimer();\n }\n\n if (!this.multilist) {\n this.activeSlide = this.indicatorsByChunk ? index * this.itemsPerSlide : index;\n } else {\n this.selectSlideRange(this.indicatorsByChunk ? index * this.itemsPerSlide : index);\n }\n }\n\n /**\n * Starts a auto changing of slides\n */\n play(): void {\n if (!this.isPlaying) {\n this.isPlaying = true;\n this.restartTimer();\n }\n }\n\n /**\n * Stops a auto changing of slides\n */\n pause(): void {\n if (!this.noPause) {\n this.isPlaying = false;\n this.resetTimer();\n }\n }\n\n /**\n * Finds and returns index of currently displayed slide\n */\n getCurrentSlideIndex(): number {\n return this._slides.findIndex(this.getActive);\n }\n\n /**\n * Defines, whether the specified index is last in collection\n * @param index\n */\n isLast(index: number): boolean {\n return index + 1 >= this._slides.length;\n }\n\n /**\n * Defines, whether the specified index is first in collection\n * @param index\n */\n isFirst(index: number): boolean {\n return index === 0;\n }\n\n indicatorsSlides(): SlideComponent[] {\n return this.slides.filter(\n (slide: SlideComponent, index: number) => !this.indicatorsByChunk || index % this.itemsPerSlide === 0\n );\n }\n\n private selectInitialSlides(): void {\n const startIndex = this.startFromIndex <= this._slides.length\n ? this.startFromIndex\n : 0;\n\n this.hideSlides();\n\n if (this.singleSlideOffset) {\n this._slidesWithIndexes = this.mapSlidesAndIndexes();\n\n if (this._slides.length - startIndex < this.itemsPerSlide) {\n const slidesToAppend = this._slidesWithIndexes.slice(0, startIndex);\n\n this._slidesWithIndexes = [\n ...this._slidesWithIndexes,\n ...slidesToAppend\n ]\n .slice(slidesToAppend.length)\n .slice(0, this.itemsPerSlide);\n } else {\n this._slidesWithIndexes = this._slidesWithIndexes.slice(\n startIndex,\n startIndex + this.itemsPerSlide\n );\n }\n\n this._slidesWithIndexes.forEach((slide: SlideWithIndex) => slide.item.active = true);\n this.makeSlidesConsistent(this._slidesWithIndexes);\n } else {\n this.selectRangeByNestedIndex(startIndex);\n }\n\n this.slideRangeChange.emit(this.getVisibleIndexes());\n }\n\n /**\n * Defines next slide index, depending of direction\n * @param direction: Direction(UNKNOWN|PREV|NEXT)\n * @param force: {boolean} if TRUE - will ignore noWrap flag, else will\n * return undefined if next slide require wrapping\n */\n private findNextSlideIndex(direction: Direction, force: boolean): number | void {\n let nextSlideIndex = 0;\n\n if (\n !force &&\n (this.isLast(this.activeSlide) &&\n direction !== Direction.PREV &&\n this.noWrap)\n ) {\n return;\n }\n\n switch (direction) {\n case Direction.NEXT:\n // if this is last slide, not force, looping is disabled\n // and need to going forward - select current slide, as a next\n if (typeof this._currentActiveSlide === 'undefined') {\n nextSlideIndex = 0;\n break;\n }\n if (!this.isLast(this._currentActiveSlide)) {\n nextSlideIndex = this._currentActiveSlide + 1;\n break;\n }\n nextSlideIndex = !force && this.noWrap ? this._currentActiveSlide : 0;\n break;\n case Direction.PREV:\n // if this is first slide, not force, looping is disabled\n // and need to going backward - select current slide, as a next\n if (typeof this._currentActiveSlide === 'undefined') {\n nextSlideIndex = 0;\n break;\n }\n if (this._currentActiveSlide > 0) {\n nextSlideIndex = this._currentActiveSlide - 1;\n break;\n }\n if (!force && this.noWrap) {\n nextSlideIndex = this._currentActiveSlide;\n break;\n }\n nextSlideIndex = this._slides.length - 1;\n break;\n default:\n throw new Error('Unknown direction');\n }\n\n return nextSlideIndex;\n }\n\n private mapSlidesAndIndexes(): SlideWithIndex[] {\n return this.slides\n .slice()\n .map((slide: SlideComponent, index: number) => {\n return {\n index,\n item: slide\n };\n });\n }\n\n\n private selectSlideRange(index: number): void {\n if (this.isIndexInRange(index)) {\n return;\n }\n\n this.hideSlides();\n\n if (!this.singleSlideOffset) {\n this.selectRangeByNestedIndex(index);\n } else {\n const startIndex = this.isIndexOnTheEdges(index)\n ? index\n : index - this.itemsPerSlide + 1;\n\n const endIndex = this.isIndexOnTheEdges(index)\n ? index + this.itemsPerSlide\n : index + 1;\n\n this._slidesWithIndexes = this.mapSlidesAndIndexes().slice(startIndex, endIndex);\n this.makeSlidesConsistent(this._slidesWithIndexes);\n\n this._slidesWithIndexes.forEach((slide: SlideWithIndex) => slide.item.active = true);\n }\n\n this.slideRangeChange.emit(this.getVisibleIndexes());\n }\n\n private selectRangeByNestedIndex(index: number): void {\n if (!this._chunkedSlides) {\n return;\n }\n\n const selectedRange = this._chunkedSlides\n .map((slidesList, i: number) => {\n return {\n index: i,\n list: slidesList\n };\n })\n .find(\n (slidesList: IndexedSlideList) => {\n return slidesList.list.find(slide => slide.index === index) !== undefined;\n }\n );\n\n if (!selectedRange) {\n return;\n }\n\n this._currentVisibleSlidesIndex = selectedRange.index;\n\n this._chunkedSlides[selectedRange.index].forEach((slide: SlideWithIndex) => {\n slide.item.active = true;\n });\n }\n\n private isIndexOnTheEdges(index: number): boolean {\n return (\n index + 1 - this.itemsPerSlide <= 0 ||\n index + this.itemsPerSlide <= this._slides.length\n );\n }\n\n private isIndexInRange(index: number): boolean {\n if (this.singleSlideOffset && this._slidesWithIndexes) {\n const visibleIndexes = this._slidesWithIndexes.map((slide: SlideWithIndex) => slide.index);\n\n return visibleIndexes.indexOf(index) >= 0;\n }\n\n return (\n index <= this.getLastVisibleIndex() &&\n index >= this.getFirstVisibleIndex()\n );\n }\n\n private hideSlides(): void {\n this.slides.forEach((slide: SlideComponent) => slide.active = false);\n }\n\n private isVisibleSlideListLast(): boolean {\n if (!this._chunkedSlides) {\n return false;\n }\n\n return this._currentVisibleSlidesIndex === this._chunkedSlides.length - 1;\n }\n\n private isVisibleSlideListFirst(): boolean {\n return this._currentVisibleSlidesIndex === 0;\n }\n\n private moveSliderByOneItem(direction: Direction): void {\n let firstVisibleIndex: number;\n let lastVisibleIndex: number;\n let indexToHide: number;\n let indexToShow: number;\n\n if (this.noWrap) {\n firstVisibleIndex = this.getFirstVisibleIndex();\n lastVisibleIndex = this.getLastVisibleIndex();\n\n indexToHide = direction === Direction.NEXT\n ? firstVisibleIndex\n : lastVisibleIndex;\n\n indexToShow = direction !== Direction.NEXT\n ? firstVisibleIndex - 1\n : !this.isLast(lastVisibleIndex)\n ? lastVisibleIndex + 1 : 0;\n\n const slideToHide = this._slides.get(indexToHide);\n if (slideToHide) {\n slideToHide.active = false;\n }\n\n const slideToShow = this._slides.get(indexToShow);\n if (slideToShow) {\n slideToShow.active = true;\n }\n\n const slidesToReorder = this.mapSlidesAndIndexes().filter(\n (slide: SlideWithIndex) => slide.item.active\n );\n\n this.makeSlidesConsistent(slidesToReorder);\n if (this.singleSlideOffset) {\n this._slidesWithIndexes = slidesToReorder;\n }\n\n this.slideRangeChange.emit(this.getVisibleIndexes());\n return;\n }\n\n if (!this._slidesWithIndexes || !this._slidesWithIndexes[0]) {\n return;\n }\n\n let index: number;\n\n firstVisibleIndex = this._slidesWithIndexes[0].index;\n lastVisibleIndex = this._slidesWithIndexes[this._slidesWithIndexes.length - 1].index;\n\n if (direction === Direction.NEXT) {\n this._slidesWithIndexes.shift();\n\n index = this.isLast(lastVisibleIndex)\n ? 0\n : lastVisibleIndex + 1;\n\n const item = this._slides.get(index);\n\n if (item) {\n this._slidesWithIndexes.push({ index, item });\n }\n } else {\n this._slidesWithIndexes.pop();\n index = this.isFirst(firstVisibleIndex)\n ? this._slides.length - 1\n : firstVisibleIndex - 1;\n\n const item = this._slides.get(index);\n if (item) {\n this._slidesWithIndexes = [{ index, item }, ...this._slidesWithIndexes];\n }\n }\n\n this.hideSlides();\n\n this._slidesWithIndexes.forEach(slide => slide.item.active = true);\n this.makeSlidesConsistent(this._slidesWithIndexes);\n\n this.slideRangeChange.emit(\n this._slidesWithIndexes.map((slide: SlideWithIndex) => slide.index)\n );\n }\n\n private makeSlidesConsistent = (slides: SlideWithIndex[]): void => {\n slides.forEach((slide: SlideWithIndex, index: number) => slide.item.order = index);\n };\n\n private moveMultilist(direction: Direction): void {\n if (this.singleSlideOffset) {\n this.moveSliderByOneItem(direction);\n } else {\n this.hideSlides();\n\n if (this.noWrap) {\n this._currentVisibleSlidesIndex = direction === Direction.NEXT\n ? this._currentVisibleSlidesIndex + 1\n : this._currentVisibleSlidesIndex - 1;\n } else if (direction === Direction.NEXT) {\n this._currentVisibleSlidesIndex = this.isVisibleSlideListLast()\n ? 0\n : this._currentVisibleSlidesIndex + 1;\n } else {\n if (this.isVisibleSlideListFirst()) {\n this._currentVisibleSlidesIndex = this._chunkedSlides\n ? this._chunkedSlides.length - 1\n : 0;\n } else {\n this._currentVisibleSlidesIndex = this._currentVisibleSlidesIndex - 1;\n }\n }\n\n if (this._chunkedSlides) {\n this._chunkedSlides[this._currentVisibleSlidesIndex].forEach(\n (slide: SlideWithIndex) => slide.item.active = true\n );\n }\n this.slideRangeChange.emit(this.getVisibleIndexes());\n }\n }\n\n private getVisibleIndexes(): number[] | void {\n if (!this.singleSlideOffset && this._chunkedSlides) {\n return this._chunkedSlides[this._currentVisibleSlidesIndex]\n .map((slide: SlideWithIndex) => slide.index);\n }\n\n if (this._slidesWithIndexes) {\n return this._slidesWithIndexes.map((slide: SlideWithIndex) => slide.index);\n }\n }\n\n /**\n * Sets a slide, which specified through index, as active\n * @param index\n */\n private _select(index: number): void {\n if (isNaN(index)) {\n this.pause();\n\n return;\n }\n\n if (!this.multilist && typeof this._currentActiveSlide !== 'undefined') {\n const currentSlide = this._slides.get(this._currentActiveSlide);\n if (typeof currentSlide !== 'undefined') {\n currentSlide.active = false;\n }\n }\n\n const nextSlide = this._slides.get(index);\n\n if (typeof nextSlide !== 'undefined') {\n this._currentActiveSlide = index;\n nextSlide.active = true;\n this.activeSlide = index;\n this.activeSlideChange.emit(index);\n }\n }\n\n /**\n * Starts loop of auto changing of slides\n */\n private restartTimer() {\n this.resetTimer();\n const interval = +this.interval;\n if (!isNaN(interval) && interval > 0 && isPlatformBrowser(this.platformId)) {\n this.currentInterval = this.ngZone.runOutsideAngular<number>(() => {\n return window.setInterval(() => {\n const nInterval = +this.interval;\n this.ngZone.run(() => {\n if (\n this.isPlaying &&\n !isNaN(this.interval) &&\n nInterval > 0 &&\n this.slides.length\n ) {\n this.nextSlideFromInterval();\n } else {\n this.pause();\n }\n });\n }, interval);\n });\n }\n }\n\n get multilist(): boolean {\n return this.itemsPerSlide > 1;\n }\n\n /**\n * Stops loop of auto changing of slides\n */\n private resetTimer(): void {\n if (this.currentInterval) {\n clearInterval(this.currentInterval);\n this.currentInterval = void 0;\n }\n }\n\n checkDisabledClass(buttonType: 'prev' | 'next'): boolean {\n if (buttonType === 'prev') {\n return (this.activeSlide === 0 && this.noWrap && !this.multilist) || (this.isFirstSlideVisible && this.noWrap && this.multilist);\n }\n\n return (this.isLast(this.activeSlide) && this.noWrap && !this.multilist) || (this.isLastSlideVisible && this.noWrap && this.multilist);\n }\n}\n","<div (mouseenter)=\"pause()\"\n (mouseleave)=\"onMouseLeave()\"\n (mouseup)=\"onMouseUp()\"\n (keydown)=\"keydownPress($event)\"\n (focusin)=\"pauseFocusIn()\"\n (focusout)=\"pauseFocusOut()\"\n [id]=\"'carousel' + currentId\"\n class=\"carousel slide\" tabindex=\"0\">\n <ng-container *ngIf=\"!_bsVer.isBs5 && showIndicators && slides.length > 1\">\n <ol class=\"carousel-indicators\">\n <li *ngFor=\"let slide of indicatorsSlides(); let i = index;\"\n [class.active]=\"slide.active === true\"\n (click)=\"selectSlide(i)\">\n </li>\n </ol>\n </ng-container>\n <ng-container *ngIf=\"_bsVer.isBs5 && showIndicators && slides.length > 1\">\n <div class=\"carousel-indicators\">\n <button\n *ngFor=\"let slide of indicatorsSlides(); let i = index;\"\n [class.active]=\"slide.active === true\"\n (click)=\"selectSlide(i)\"\n type=\"button\"\n [attr.data-bs-target]=\"'#carousel' + currentId\"\n [attr.data-bs-slide-to]=\"i\" aria-current=\"true\"\n >\n </button>\n </div>\n </ng-container>\n <div class=\"carousel-inner\" [ngStyle]=\"{'display': multilist ? 'flex' : 'block'}\">\n <ng-content></ng-content>\n </div>\n <a class=\"left carousel-control carousel-control-prev\"\n href=\"javascript:void(0);\"\n [class.disabled]=\"checkDisabledClass('prev')\"\n [attr.data-bs-target]=\"'#carousel' + currentId\"\n *ngIf=\"slides.length > 1\"\n (click)=\"previousSlide()\"\n tabindex=\"0\" role=\"button\">\n <span class=\"icon-prev carousel-control-prev-icon\" aria-hidden=\"true\"></span>\n <span class=\"sr-only visually-hidden\">Previous</span>\n </a>\n\n <a class=\"right carousel-control carousel-control-next\"\n href=\"javascript:void(0);\"\n *ngIf=\"slides.length > 1\"\n (click)=\"nextSlide()\"\n [class.disabled]=\"checkDisabledClass('next')\"\n [attr.data-bs-target]=\"'#carousel' + currentId\"\n tabindex=\"0\" role=\"button\">\n <span class=\"icon-next carousel-control-next-icon\" aria-hidden=\"true\"></span>\n <span class=\"sr-only visually-hidden\">Next</span>\n </a>\n</div>\n","import {\n Component,\n HostBinding,\n OnDestroy,\n Input,\n OnInit\n} from '@angular/core';\n\nimport { CarouselComponent } from './carousel.component';\n\n@Component({\n selector: 'slide',\n template: `\n <div [class.active]=\"active\" class=\"item\">\n <ng-content></ng-content>\n </div>\n `,\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: {\n '[attr.aria-hidden]': '!active',\n '[class.multilist-margin]': 'multilist'\n },\n styles: [`\n :host.carousel-animation {\n transition: opacity 0.6s ease, visibility 0.6s ease;\n float: left;\n }\n :host.carousel-animation.active {\n opacity: 1;\n visibility: visible;\n }\n :host.carousel-animation:not(.active) {\n display: block;\n position: absolute;\n opacity: 0;\n visibility: hidden;\n }\n :host.multilist-margin {\n margin-right: auto;\n }\n :host.carousel-item {\n perspective: 1000px;\n }\n `],\n standalone: true\n})\nexport class SlideComponent implements OnInit, OnDestroy {\n /** Is current slide active */\n @HostBinding('class.active')\n @Input()\n active = false;\n\n @HostBinding('style.width') itemWidth = '100%';\n @HostBinding('style.order') order = 0;\n @HostBinding('class.carousel-animation') isAnimated = false;\n\n /** Wraps element by appropriate CSS classes */\n @HostBinding('class.item')\n @HostBinding('class.carousel-item')\n addClass = true;\n\n /** Link to Parent(container-collection) component */\n protected carousel: CarouselComponent;\n multilist = false;\n constructor(carousel: CarouselComponent) {\n this.carousel = carousel;\n }\n\n /** Fires changes in container collection after adding a new slide instance */\n ngOnInit(): void {\n this.carousel.addSlide(this);\n this.itemWidth = `${100 / this.carousel.itemsPerSlide}%`;\n this.multilist = this.carousel?.itemsPerSlide > 1;\n }\n\n /** Fires changes in container collection after removing of this slide instance */\n ngOnDestroy(): void {\n this.carousel.removeSlide(this);\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { CarouselComponent } from './carousel.component';\nimport { SlideComponent } from './slide.component';\n\n@NgModule({\n imports: [SlideComponent, CarouselComponent],\n exports: [SlideComponent, CarouselComponent]\n})\nexport class CarouselModule {\n // @deprecated method not required anymore, will be deleted in v19.0.0\n static forRoot() {\n return CarouselModule;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.CarouselComponent"],"mappings":"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"}
|
@@ -18,5 +18,5 @@ export declare class SlideComponent implements OnInit, OnDestroy {
|
|
18
18
|
/** Fires changes in container collection after removing of this slide instance */
|
19
19
|
ngOnDestroy(): void;
|
20
20
|
static ɵfac: i0.ɵɵFactoryDeclaration<SlideComponent, never>;
|
21
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<SlideComponent, "slide", never, { "active": { "alias": "active"; "required": false; }; }, {}, never, ["*"],
|
21
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<SlideComponent, "slide", never, { "active": { "alias": "active"; "required": false; }; }, {}, never, ["*"], true, never>;
|
22
22
|
}
|
@@ -0,0 +1,69 @@
|
|
1
|
+
//! moment.js locale configuration
|
2
|
+
//! locale : French Canadian [fr-ca]
|
3
|
+
//! author : Ali Hasan : https://github.com/alihasan00
|
4
|
+
export const frCaLocale = {
|
5
|
+
abbr: 'fr-ca',
|
6
|
+
months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split('_'),
|
7
|
+
monthsShort: 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split('_'),
|
8
|
+
monthsParseExact: true,
|
9
|
+
weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),
|
10
|
+
weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),
|
11
|
+
weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'),
|
12
|
+
weekdaysParseExact: true,
|
13
|
+
longDateFormat: {
|
14
|
+
LT: 'HH:mm',
|
15
|
+
LTS: 'HH:mm:ss',
|
16
|
+
L: 'YYYY-MM-DD',
|
17
|
+
LL: 'D MMMM YYYY',
|
18
|
+
LLL: 'D MMMM YYYY HH:mm',
|
19
|
+
LLLL: 'dddd D MMMM YYYY HH:mm'
|
20
|
+
},
|
21
|
+
calendar: {
|
22
|
+
sameDay: '[Aujourd’hui à] LT',
|
23
|
+
nextDay: '[Demain à] LT',
|
24
|
+
nextWeek: 'dddd [à] LT',
|
25
|
+
lastDay: '[Hier à] LT',
|
26
|
+
lastWeek: 'dddd [dernier à] LT',
|
27
|
+
sameElse: 'L'
|
28
|
+
},
|
29
|
+
relativeTime: {
|
30
|
+
future: 'dans %s',
|
31
|
+
past: 'il y a %s',
|
32
|
+
s: 'quelques secondes',
|
33
|
+
ss: '%d secondes',
|
34
|
+
m: 'une minute',
|
35
|
+
mm: '%d minutes',
|
36
|
+
h: 'une heure',
|
37
|
+
hh: '%d heures',
|
38
|
+
d: 'un jour',
|
39
|
+
dd: '%d jours',
|
40
|
+
M: 'un mois',
|
41
|
+
MM: '%d mois',
|
42
|
+
y: 'un an',
|
43
|
+
yy: '%d ans'
|
44
|
+
},
|
45
|
+
dayOfMonthOrdinalParse: /\d{1,2}(er|e|)/,
|
46
|
+
ordinal(_num, period) {
|
47
|
+
const num = Number(_num);
|
48
|
+
switch (period) {
|
49
|
+
case 'D':
|
50
|
+
return num + (num === 1 ? 'er' : '');
|
51
|
+
// Words with masculine grammatical gender: mois, trimestre, jour
|
52
|
+
default:
|
53
|
+
case 'M':
|
54
|
+
case 'Q':
|
55
|
+
case 'DDD':
|
56
|
+
case 'd':
|
57
|
+
return num + (num === 1 ? 'er' : 'e');
|
58
|
+
// Words with feminine grammatical gender: semaine
|
59
|
+
case 'w':
|
60
|
+
case 'W':
|
61
|
+
return num + (num === 1 ? 're' : 'e');
|
62
|
+
}
|
63
|
+
},
|
64
|
+
week: {
|
65
|
+
dow: 1, // Monday is the first day of the week.
|
66
|
+
doy: 4 // The week that contains Jan 4th is the first week of the year.
|
67
|
+
}
|
68
|
+
};
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnItY2EuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY2hyb25vcy9pMThuL2ZyLWNhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLGtDQUFrQztBQUNsQyxvQ0FBb0M7QUFDcEMsc0RBQXNEO0FBRXRELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBZTtJQUNwQyxJQUFJLEVBQUUsT0FBTztJQUNiLE1BQU0sRUFBRSxzRkFBc0YsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDO0lBQ3pHLFdBQVcsRUFBRSxnRUFBZ0UsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDO0lBQ3hGLGdCQUFnQixFQUFFLElBQUk7SUFDdEIsUUFBUSxFQUFFLHFEQUFxRCxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7SUFDMUUsYUFBYSxFQUFFLG9DQUFvQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7SUFDOUQsV0FBVyxFQUFFLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7SUFDOUMsa0JBQWtCLEVBQUUsSUFBSTtJQUN4QixjQUFjLEVBQUU7UUFDZCxFQUFFLEVBQUUsT0FBTztRQUNYLEdBQUcsRUFBRSxVQUFVO1FBQ2YsQ0FBQyxFQUFFLFlBQVk7UUFDZixFQUFFLEVBQUUsYUFBYTtRQUNqQixHQUFHLEVBQUUsbUJBQW1CO1FBQ3hCLElBQUksRUFBRSx3QkFBd0I7S0FDL0I7SUFDRCxRQUFRLEVBQUU7UUFDUixPQUFPLEVBQUUsb0JBQW9CO1FBQzdCLE9BQU8sRUFBRSxlQUFlO1FBQ3hCLFFBQVEsRUFBRSxhQUFhO1FBQ3ZCLE9BQU8sRUFBRSxhQUFhO1FBQ3RCLFFBQVEsRUFBRSxxQkFBcUI7UUFDL0IsUUFBUSxFQUFFLEdBQUc7S0FDZDtJQUNELFlBQVksRUFBRTtRQUNaLE1BQU0sRUFBRSxTQUFTO1FBQ2pCLElBQUksRUFBRSxXQUFXO1FBQ2pCLENBQUMsRUFBRSxtQkFBbUI7UUFDdEIsRUFBRSxFQUFFLGFBQWE7UUFDakIsQ0FBQyxFQUFFLFlBQVk7UUFDZixFQUFFLEVBQUUsWUFBWTtRQUNoQixDQUFDLEVBQUUsV0FBVztRQUNkLEVBQUUsRUFBRSxXQUFXO1FBQ2YsQ0FBQyxFQUFFLFNBQVM7UUFDWixFQUFFLEVBQUUsVUFBVTtRQUNkLENBQUMsRUFBRSxTQUFTO1FBQ1osRUFBRSxFQUFFLFNBQVM7UUFDYixDQUFDLEVBQUUsT0FBTztRQUNWLEVBQUUsRUFBRSxRQUFRO0tBQ2I7SUFDRCxzQkFBc0IsRUFBRSxnQkFBZ0I7SUFDeEMsT0FBTyxDQUFDLElBQVksRUFBRSxNQUFjO1FBQ2xDLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6QixRQUFRLE1BQU0sRUFBRSxDQUFDO1lBQ2YsS0FBSyxHQUFHO2dCQUNOLE9BQU8sR0FBRyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUV2QyxpRUFBaUU7WUFDakUsUUFBUTtZQUNSLEtBQUssR0FBRyxDQUFDO1lBQ1QsS0FBSyxHQUFHLENBQUM7WUFDVCxLQUFLLEtBQUssQ0FBQztZQUNYLEtBQUssR0FBRztnQkFDTixPQUFPLEdBQUcsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7WUFFeEMsa0RBQWtEO1lBQ2xELEtBQUssR0FBRyxDQUFDO1lBQ1QsS0FBSyxHQUFHO2dCQUNOLE9BQU8sR0FBRyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMxQyxDQUFDO0lBQ0gsQ0FBQztJQUNELElBQUksRUFBRTtRQUNKLEdBQUcsRUFBRSxDQUFDLEVBQUUsdUNBQXVDO1FBQy9DLEdBQUcsRUFBRSxDQUFDLENBQUUsZ0VBQWdFO0tBQ3pFO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExvY2FsZURhdGEgfSBmcm9tICcuLi9sb2NhbGUvbG9jYWxlLmNsYXNzJztcblxuLy8hIG1vbWVudC5qcyBsb2NhbGUgY29uZmlndXJhdGlvblxuLy8hIGxvY2FsZSA6IEZyZW5jaCBDYW5hZGlhbiBbZnItY2FdXG4vLyEgYXV0aG9yIDogQWxpIEhhc2FuIDogaHR0cHM6Ly9naXRodWIuY29tL2FsaWhhc2FuMDBcblxuZXhwb3J0IGNvbnN0IGZyQ2FMb2NhbGU6IExvY2FsZURhdGEgPSB7XG4gIGFiYnI6ICdmci1jYScsXG4gIG1vbnRoczogJ2phbnZpZXJfZsOpdnJpZXJfbWFyc19hdnJpbF9tYWlfanVpbl9qdWlsbGV0X2Fvw7t0X3NlcHRlbWJyZV9vY3RvYnJlX25vdmVtYnJlX2TDqWNlbWJyZScuc3BsaXQoJ18nKSxcbiAgbW9udGhzU2hvcnQ6ICdqYW52Ll9mw6l2ci5fbWFyc19hdnIuX21haV9qdWluX2p1aWwuX2Fvw7t0X3NlcHQuX29jdC5fbm92Ll9kw6ljLicuc3BsaXQoJ18nKSxcbiAgbW9udGhzUGFyc2VFeGFjdDogdHJ1ZSxcbiAgd2Vla2RheXM6ICdkaW1hbmNoZV9sdW5kaV9tYXJkaV9tZXJjcmVkaV9qZXVkaV92ZW5kcmVkaV9zYW1lZGknLnNwbGl0KCdfJyksXG4gIHdlZWtkYXlzU2hvcnQ6ICdkaW0uX2x1bi5fbWFyLl9tZXIuX2pldS5fdmVuLl9zYW0uJy5zcGxpdCgnXycpLFxuICB3ZWVrZGF5c01pbjogJ2RpX2x1X21hX21lX2plX3ZlX3NhJy5zcGxpdCgnXycpLFxuICB3ZWVrZGF5c1BhcnNlRXhhY3Q6IHRydWUsXG4gIGxvbmdEYXRlRm9ybWF0OiB7XG4gICAgTFQ6ICdISDptbScsXG4gICAgTFRTOiAnSEg6bW06c3MnLFxuICAgIEw6ICdZWVlZLU1NLUREJyxcbiAgICBMTDogJ0QgTU1NTSBZWVlZJyxcbiAgICBMTEw6ICdEIE1NTU0gWVlZWSBISDptbScsXG4gICAgTExMTDogJ2RkZGQgRCBNTU1NIFlZWVkgSEg6bW0nXG4gIH0sXG4gIGNhbGVuZGFyOiB7XG4gICAgc2FtZURheTogJ1tBdWpvdXJk4oCZaHVpIMOgXSBMVCcsXG4gICAgbmV4dERheTogJ1tEZW1haW4gw6BdIExUJyxcbiAgICBuZXh0V2VlazogJ2RkZGQgW8OgXSBMVCcsXG4gICAgbGFzdERheTogJ1tIaWVyIMOgXSBMVCcsXG4gICAgbGFzdFdlZWs6ICdkZGRkIFtkZXJuaWVyIMOgXSBMVCcsXG4gICAgc2FtZUVsc2U6ICdMJ1xuICB9LFxuICByZWxhdGl2ZVRpbWU6IHtcbiAgICBmdXR1cmU6ICdkYW5zICVzJyxcbiAgICBwYXN0OiAnaWwgeSBhICVzJyxcbiAgICBzOiAncXVlbHF1ZXMgc2Vjb25kZXMnLFxuICAgIHNzOiAnJWQgc2Vjb25kZXMnLFxuICAgIG06ICd1bmUgbWludXRlJyxcbiAgICBtbTogJyVkIG1pbnV0ZXMnLFxuICAgIGg6ICd1bmUgaGV1cmUnLFxuICAgIGhoOiAnJWQgaGV1cmVzJyxcbiAgICBkOiAndW4gam91cicsXG4gICAgZGQ6ICclZCBqb3VycycsXG4gICAgTTogJ3VuIG1vaXMnLFxuICAgIE1NOiAnJWQgbW9pcycsXG4gICAgeTogJ3VuIGFuJyxcbiAgICB5eTogJyVkIGFucydcbiAgfSxcbiAgZGF5T2ZNb250aE9yZGluYWxQYXJzZTogL1xcZHsxLDJ9KGVyfGV8KS8sXG4gIG9yZGluYWwoX251bTogbnVtYmVyLCBwZXJpb2Q6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3QgbnVtID0gTnVtYmVyKF9udW0pO1xuICAgIHN3aXRjaCAocGVyaW9kKSB7XG4gICAgICBjYXNlICdEJzpcbiAgICAgICAgcmV0dXJuIG51bSArIChudW0gPT09IDEgPyAnZXInIDogJycpO1xuXG4gICAgICAvLyBXb3JkcyB3aXRoIG1hc2N1bGluZSBncmFtbWF0aWNhbCBnZW5kZXI6IG1vaXMsIHRyaW1lc3RyZSwgam91clxuICAgICAgZGVmYXVsdDpcbiAgICAgIGNhc2UgJ00nOlxuICAgICAgY2FzZSAnUSc6XG4gICAgICBjYXNlICdEREQnOlxuICAgICAgY2FzZSAnZCc6XG4gICAgICAgIHJldHVybiBudW0gKyAobnVtID09PSAxID8gJ2VyJyA6ICdlJyk7XG5cbiAgICAgIC8vIFdvcmRzIHdpdGggZmVtaW5pbmUgZ3JhbW1hdGljYWwgZ2VuZGVyOiBzZW1haW5lXG4gICAgICBjYXNlICd3JzpcbiAgICAgIGNhc2UgJ1cnOlxuICAgICAgICByZXR1cm4gbnVtICsgKG51bSA9PT0gMSA/ICdyZScgOiAnZScpO1xuICAgIH1cbiAgfSxcbiAgd2Vlazoge1xuICAgIGRvdzogMSwgLy8gTW9uZGF5IGlzIHRoZSBmaXJzdCBkYXkgb2YgdGhlIHdlZWsuXG4gICAgZG95OiA0ICAvLyBUaGUgd2VlayB0aGF0IGNvbnRhaW5zIEphbiA0dGggaXMgdGhlIGZpcnN0IHdlZWsgb2YgdGhlIHllYXIuXG4gIH1cbn07XG4iXX0=
|
@@ -23,6 +23,7 @@ export { esUsLocale } from './i18n/es-us';
|
|
23
23
|
export { etLocale } from './i18n/et';
|
24
24
|
export { fiLocale } from './i18n/fi';
|
25
25
|
export { frLocale } from './i18n/fr';
|
26
|
+
export { frCaLocale } from './i18n/fr-ca';
|
26
27
|
export { glLocale } from './i18n/gl';
|
27
28
|
export { heLocale } from './i18n/he';
|
28
29
|
export { hiLocale } from './i18n/hi';
|
@@ -54,4 +55,4 @@ export { trLocale } from './i18n/tr';
|
|
54
55
|
export { ukLocale } from './i18n/uk';
|
55
56
|
export { viLocale } from './i18n/vi';
|
56
57
|
export { zhCnLocale } from './i18n/zh-cn';
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jaHJvbm9zL3B1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUV0RCxPQUFPLEVBQ1AsTUFBTSxFQUNOLGdCQUFnQixFQUNoQixVQUFVLEVBQ1YsU0FBUyxFQUNULFdBQVcsRUFDWCxXQUFXLEVBQ1gsa0JBQWtCLEVBQ2xCLFFBQVEsRUFDUCxNQUFNLHNCQUFzQixDQUFDO0FBRTlCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUd0QyxPQUFPLEVBQ0wsV0FBVyxFQUNYLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLGtCQUFrQixFQUNuQixNQUFNLGtCQUFrQixDQUFDO0FBSTFCLE9BQU8sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBRSxNQUFNLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRixPQUFPLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzlELE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHdEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNyQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNyQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNyQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JDLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDeEMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNyQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNyQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNyQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNyQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNyQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU8sV0FBVyxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNyQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNyQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDMUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNyQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnLi91bml0cy9pbmRleCc7XG5cbmV4cG9ydCB7IGFkZCwgc3VidHJhY3QgfSBmcm9tICcuL21vbWVudC9hZGQtc3VidHJhY3QnO1xuXG5leHBvcnQge1xuZ2V0RGF5LFxuaXNGaXJzdERheU9mV2VlayxcbmlzU2FtZVllYXIsXG5pc1NhbWVEYXksXG5pc1NhbWVNb250aCxcbmdldEZ1bGxZZWFyLFxuZ2V0Rmlyc3REYXlPZk1vbnRoLFxuZ2V0TW9udGhcbn0gZnJvbSAnLi91dGlscy9kYXRlLWdldHRlcnMnO1xuXG5leHBvcnQgeyBwYXJzZURhdGUgfSBmcm9tICcuL2NyZWF0ZS9sb2NhbCc7XG5leHBvcnQgeyB1dGNBc0xvY2FsIH0gZnJvbSAnLi9jcmVhdGUvbG9jYWwnO1xuZXhwb3J0IHsgZm9ybWF0RGF0ZSB9IGZyb20gJy4vZm9ybWF0JztcblxuXG5leHBvcnQge1xuICBsaXN0TG9jYWxlcyxcbiAgZ2V0TG9jYWxlLFxuICB1cGRhdGVMb2NhbGUsXG4gIGRlZmluZUxvY2FsZSxcbiAgZ2V0U2V0R2xvYmFsTG9jYWxlXG59IGZyb20gJy4vbG9jYWxlL2xvY2FsZXMnO1xuXG5leHBvcnQgeyBMb2NhbGVEYXRhIH0gZnJvbSAnLi9sb2NhbGUvbG9jYWxlLmNsYXNzJztcblxuZXhwb3J0IHsgaXNBZnRlciwgaXNCZWZvcmUsIGlzRGlzYWJsZWREYXksIGlzU2FtZSB9IGZyb20gJy4vdXRpbHMvZGF0ZS1jb21wYXJlJztcbmV4cG9ydCB7IGlzQXJyYXksIGlzRGF0ZVZhbGlkLCBpc0RhdGUgfSBmcm9tICcuL3V0aWxzL3R5cGUtY2hlY2tzJztcbmV4cG9ydCB7IHNoaWZ0RGF0ZSwgc2V0RnVsbERhdGUgfSBmcm9tICcuL3V0aWxzL2RhdGUtc2V0dGVycyc7XG5leHBvcnQgeyBlbmRPZiwgc3RhcnRPZiB9IGZyb20gJy4vdXRpbHMvc3RhcnQtZW5kLW9mJztcbmV4cG9ydCB7IFRpbWVVbml0IH0gZnJvbSAnLi90eXBlcyc7XG5cbmV4cG9ydCB7IGFyTG9jYWxlIH0gZnJvbSAnLi9pMThuL2FyJztcbmV4cG9ydCB7IGJnTG9jYWxlIH0gZnJvbSAnLi9pMThuL2JnJztcbmV4cG9ydCB7IGNhTG9jYWxlIH0gZnJvbSAnLi9pMThuL2NhJztcbmV4cG9ydCB7IGNzTG9jYWxlIH0gZnJvbSAnLi9pMThuL2NzJztcbmV4cG9ydCB7IGRhTG9jYWxlIH0gZnJvbSAnLi9pMThuL2RhJztcbmV4cG9ydCB7IGRlTG9jYWxlIH0gZnJvbSAnLi9pMThuL2RlJztcbmV4cG9ydCB7IGVuR2JMb2NhbGUgfSBmcm9tICcuL2kxOG4vZW4tZ2InO1xuZXhwb3J0IHsgZXNEb0xvY2FsZSB9IGZyb20gJy4vaTE4bi9lcy1kbyc7XG5leHBvcnQgeyBlc0xvY2FsZSB9IGZyb20gJy4vaTE4bi9lcyc7XG5leHBvcnQgeyBlc1ByTG9jYWxlIH0gZnJvbSAnLi9pMThuL2VzLXByJztcbmV4cG9ydCB7IGVzVXNMb2NhbGUgfSBmcm9tICcuL2kxOG4vZXMtdXMnO1xuZXhwb3J0IHsgZXRMb2NhbGUgfSBmcm9tICcuL2kxOG4vZXQnO1xuZXhwb3J0IHsgZmlMb2NhbGUgfSBmcm9tICcuL2kxOG4vZmknO1xuZXhwb3J0IHsgZnJMb2NhbGUgfSBmcm9tICcuL2kxOG4vZnInO1xuZXhwb3J0IHtmckNhTG9jYWxlfSBmcm9tICcuL2kxOG4vZnItY2EnO1xuZXhwb3J0IHsgZ2xMb2NhbGUgfSBmcm9tICcuL2kxOG4vZ2wnO1xuZXhwb3J0IHsgaGVMb2NhbGUgfSBmcm9tICcuL2kxOG4vaGUnO1xuZXhwb3J0IHsgaGlMb2NhbGUgfSBmcm9tICcuL2kxOG4vaGknO1xuZXhwb3J0IHsgaHVMb2NhbGUgfSBmcm9tICcuL2kxOG4vaHUnO1xuZXhwb3J0IHsgaHJMb2NhbGUgfSBmcm9tICcuL2kxOG4vaHInO1xuZXhwb3J0IHsgaWRMb2NhbGUgfSBmcm9tICcuL2kxOG4vaWQnO1xuZXhwb3J0IHsgaXRMb2NhbGUgfSBmcm9tICcuL2kxOG4vaXQnO1xuZXhwb3J0IHsgamFMb2NhbGUgfSBmcm9tICcuL2kxOG4vamEnO1xuZXhwb3J0IHsga2FMb2NhbGUgfSBmcm9tICcuL2kxOG4va2EnO1xuZXhwb3J0IHsga2tMb2NhbGUgfSBmcm9tICcuL2kxOG4va2snO1xuZXhwb3J0IHsga29Mb2NhbGUgfSBmcm9tICcuL2kxOG4va28nO1xuZXhwb3J0IHsgbHRMb2NhbGUgfSBmcm9tICcuL2kxOG4vbHQnO1xuZXhwb3J0IHsgbHZMb2NhbGUgfSBmcm9tICcuL2kxOG4vbHYnO1xuZXhwb3J0IHsgbW5Mb2NhbGUgfSBmcm9tICcuL2kxOG4vbW4nO1xuZXhwb3J0IHsgbmJMb2NhbGUgfSBmcm9tICcuL2kxOG4vbmInO1xuZXhwb3J0IHsgbmxCZUxvY2FsZSB9IGZyb20gJy4vaTE4bi9ubC1iZSc7XG5leHBvcnQgeyBubExvY2FsZSB9IGZyb20gJy4vaTE4bi9ubCc7XG5leHBvcnQgeyBwbExvY2FsZSB9IGZyb20gJy4vaTE4bi9wbCc7XG5leHBvcnQgeyBwdEJyTG9jYWxlIH0gZnJvbSAnLi9pMThuL3B0LWJyJztcbmV4cG9ydCB7IHJvTG9jYWxlIH0gIGZyb20gJy4vaTE4bi9ybyc7XG5leHBvcnQgeyBydUxvY2FsZSB9IGZyb20gJy4vaTE4bi9ydSc7XG5leHBvcnQgeyBza0xvY2FsZSB9IGZyb20gJy4vaTE4bi9zayc7XG5leHBvcnQgeyBzbExvY2FsZSB9IGZyb20gJy4vaTE4bi9zbCc7XG5leHBvcnQgeyBzcUxvY2FsZSB9IGZyb20gJy4vaTE4bi9zcSc7XG5leHBvcnQgeyBzdkxvY2FsZSB9IGZyb20gJy4vaTE4bi9zdic7XG5leHBvcnQgeyB0aExvY2FsZSB9IGZyb20gJy4vaTE4bi90aCc7XG5leHBvcnQgeyB0aEJlTG9jYWxlIH0gZnJvbSAnLi9pMThuL3RoLWJlJztcbmV4cG9ydCB7IHRyTG9jYWxlIH0gZnJvbSAnLi9pMThuL3RyJztcbmV4cG9ydCB7IHVrTG9jYWxlIH0gZnJvbSAnLi9pMThuL3VrJztcbmV4cG9ydCB7IHZpTG9jYWxlIH0gZnJvbSAnLi9pMThuL3ZpJztcbmV4cG9ydCB7IHpoQ25Mb2NhbGUgfSBmcm9tICcuL2kxOG4vemgtY24nO1xuIl19
|
@@ -4649,6 +4649,75 @@ const frLocale = {
|
|
4649
4649
|
}
|
4650
4650
|
};
|
4651
4651
|
|
4652
|
+
//! moment.js locale configuration
|
4653
|
+
//! locale : French Canadian [fr-ca]
|
4654
|
+
//! author : Ali Hasan : https://github.com/alihasan00
|
4655
|
+
const frCaLocale = {
|
4656
|
+
abbr: 'fr-ca',
|
4657
|
+
months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split('_'),
|
4658
|
+
monthsShort: 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split('_'),
|
4659
|
+
monthsParseExact: true,
|
4660
|
+
weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),
|
4661
|
+
weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),
|
4662
|
+
weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'),
|
4663
|
+
weekdaysParseExact: true,
|
4664
|
+
longDateFormat: {
|
4665
|
+
LT: 'HH:mm',
|
4666
|
+
LTS: 'HH:mm:ss',
|
4667
|
+
L: 'YYYY-MM-DD',
|
4668
|
+
LL: 'D MMMM YYYY',
|
4669
|
+
LLL: 'D MMMM YYYY HH:mm',
|
4670
|
+
LLLL: 'dddd D MMMM YYYY HH:mm'
|
4671
|
+
},
|
4672
|
+
calendar: {
|
4673
|
+
sameDay: '[Aujourd’hui à] LT',
|
4674
|
+
nextDay: '[Demain à] LT',
|
4675
|
+
nextWeek: 'dddd [à] LT',
|
4676
|
+
lastDay: '[Hier à] LT',
|
4677
|
+
lastWeek: 'dddd [dernier à] LT',
|
4678
|
+
sameElse: 'L'
|
4679
|
+
},
|
4680
|
+
relativeTime: {
|
4681
|
+
future: 'dans %s',
|
4682
|
+
past: 'il y a %s',
|
4683
|
+
s: 'quelques secondes',
|
4684
|
+
ss: '%d secondes',
|
4685
|
+
m: 'une minute',
|
4686
|
+
mm: '%d minutes',
|
4687
|
+
h: 'une heure',
|
4688
|
+
hh: '%d heures',
|
4689
|
+
d: 'un jour',
|
4690
|
+
dd: '%d jours',
|
4691
|
+
M: 'un mois',
|
4692
|
+
MM: '%d mois',
|
4693
|
+
y: 'un an',
|
4694
|
+
yy: '%d ans'
|
4695
|
+
},
|
4696
|
+
dayOfMonthOrdinalParse: /\d{1,2}(er|e|)/,
|
4697
|
+
ordinal(_num, period) {
|
4698
|
+
const num = Number(_num);
|
4699
|
+
switch (period) {
|
4700
|
+
case 'D':
|
4701
|
+
return num + (num === 1 ? 'er' : '');
|
4702
|
+
// Words with masculine grammatical gender: mois, trimestre, jour
|
4703
|
+
default:
|
4704
|
+
case 'M':
|
4705
|
+
case 'Q':
|
4706
|
+
case 'DDD':
|
4707
|
+
case 'd':
|
4708
|
+
return num + (num === 1 ? 'er' : 'e');
|
4709
|
+
// Words with feminine grammatical gender: semaine
|
4710
|
+
case 'w':
|
4711
|
+
case 'W':
|
4712
|
+
return num + (num === 1 ? 're' : 'e');
|
4713
|
+
}
|
4714
|
+
},
|
4715
|
+
week: {
|
4716
|
+
dow: 1, // Monday is the first day of the week.
|
4717
|
+
doy: 4 // The week that contains Jan 4th is the first week of the year.
|
4718
|
+
}
|
4719
|
+
};
|
4720
|
+
|
4652
4721
|
//! moment.js locale configuration
|
4653
4722
|
//! locale : Galician [gl]
|
4654
4723
|
//! author : Darío Beiró : https://github.com/quinobravo
|
@@ -7384,5 +7453,5 @@ const zhCnLocale = {
|
|
7384
7453
|
* Generated bundle index. Do not edit.
|
7385
7454
|
*/
|
7386
7455
|
|
7387
|
-
export { add, arLocale, bgLocale, caLocale, csLocale, daLocale, deLocale, defineLocale, enGbLocale, endOf, esDoLocale, esLocale, esPrLocale, esUsLocale, etLocale, fiLocale, formatDate, frLocale, getDay, getFirstDayOfMonth, getFullYear, getLocale, getMonth, getSetGlobalLocale, glLocale, heLocale, hiLocale, hrLocale, huLocale, idLocale, isAfter, isArray, isBefore, isDate, isDateValid, isDisabledDay, isFirstDayOfWeek, isSame, isSameDay$1 as isSameDay, isSameMonth, isSameYear, itLocale, jaLocale, kaLocale, kkLocale, koLocale, listLocales, ltLocale, lvLocale, mnLocale, nbLocale, nlBeLocale, nlLocale, parseDate, plLocale, ptBrLocale, roLocale, ruLocale, setFullDate, shiftDate, skLocale, slLocale, sqLocale, startOf, subtract, svLocale, thBeLocale, thLocale, trLocale, ukLocale, updateLocale, utcAsLocal, viLocale, zhCnLocale };
|
7456
|
+
export { add, arLocale, bgLocale, caLocale, csLocale, daLocale, deLocale, defineLocale, enGbLocale, endOf, esDoLocale, esLocale, esPrLocale, esUsLocale, etLocale, fiLocale, formatDate, frCaLocale, frLocale, getDay, getFirstDayOfMonth, getFullYear, getLocale, getMonth, getSetGlobalLocale, glLocale, heLocale, hiLocale, hrLocale, huLocale, idLocale, isAfter, isArray, isBefore, isDate, isDateValid, isDisabledDay, isFirstDayOfWeek, isSame, isSameDay$1 as isSameDay, isSameMonth, isSameYear, itLocale, jaLocale, kaLocale, kkLocale, koLocale, listLocales, ltLocale, lvLocale, mnLocale, nbLocale, nlBeLocale, nlLocale, parseDate, plLocale, ptBrLocale, roLocale, ruLocale, setFullDate, shiftDate, skLocale, slLocale, sqLocale, startOf, subtract, svLocale, thBeLocale, thLocale, trLocale, ukLocale, updateLocale, utcAsLocal, viLocale, zhCnLocale };
|
7388
7457
|
//# sourceMappingURL=ngx-bootstrap-chronos.mjs.map
|