@acpaas-ui/ngx-calendar 6.0.9 → 6.1.2
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.
|
@@ -63,4 +63,4 @@ export class CalendarModule {
|
|
|
63
63
|
CalendarDecenniaComponent,
|
|
64
64
|
CalendarMonthComponent,
|
|
65
65
|
CalendarYearComponent] }); })();
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jYWxlbmRhci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqRCxPQUFPLEVBQ0wsNkJBQTZCLEVBQzdCLCtCQUErQixFQUMvQixxQkFBcUIsRUFDckIsdUJBQXVCLEdBQ3hCLE1BQU0saUJBQWlCLENBQUM7QUFFekIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOztBQXlCekUsTUFBTSxPQUFPLGNBQWM7SUFDekIsTUFBTSxDQUFDLFFBQVEsQ0FDYixhQUFrQyxFQUNsQyxXQUE4QjtRQUU5QixPQUFPO1lBQ0wsUUFBUSxFQUFFLGNBQWM7WUFDeEIsU0FBUyxFQUFFO2dCQUNULGVBQWU7Z0JBQ2YsRUFBRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBRTtnQkFDN0QsRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRTthQUMxRDtTQUNGLENBQUM7SUFDSixDQUFDOzsrRkFiVSxjQUFjOytGQUFkLGNBQWM7b0dBVGQ7UUFDVCxlQUFlO1FBQ2Y7WUFDRSxPQUFPLEVBQUUsdUJBQXVCO1lBQ2hDLFFBQVEsRUFBRSwrQkFBK0I7U0FDMUM7UUFDRCxFQUFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxRQUFRLEVBQUUsNkJBQTZCLEVBQUU7S0FDNUUsWUFwQlMsWUFBWSxFQUFFLFVBQVU7dUZBc0J2QixjQUFjO2NBdkIxQixRQUFRO2VBQUM7Z0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQztnQkFDbkMsWUFBWSxFQUFFO29CQUNaLGlCQUFpQjtvQkFDakIseUJBQXlCO29CQUN6QixzQkFBc0I7b0JBQ3RCLHFCQUFxQjtpQkFDdEI7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLGlCQUFpQjtvQkFDakIseUJBQXlCO29CQUN6QixzQkFBc0I7b0JBQ3RCLHFCQUFxQjtpQkFDdEI7Z0JBQ0QsU0FBUyxFQUFFO29CQUNULGVBQWU7b0JBQ2Y7d0JBQ0UsT0FBTyxFQUFFLHVCQUF1Qjt3QkFDaEMsUUFBUSxFQUFFLCtCQUErQjtxQkFDMUM7b0JBQ0QsRUFBRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsUUFBUSxFQUFFLDZCQUE2QixFQUFFO2lCQUM1RTthQUNGOzt3RkFDWSxjQUFjLG1CQXBCdkIsaUJBQWlCO1FBQ2pCLHlCQUF5QjtRQUN6QixzQkFBc0I7UUFDdEIscUJBQXFCLGFBTGIsWUFBWSxFQUFFLFVBQVUsYUFRaEMsaUJBQWlCO1FBQ2pCLHlCQUF5QjtRQUN6QixzQkFBc0I7UUFDdEIscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBJY29uTW9kdWxlIH0gZnJvbSAnQGFjcGFhcy11aS9uZ3gtaWNvbic7XG5pbXBvcnQge1xuICBDQUxFTkRBUl9ERUZBVUxUX01PTlRIX0xBQkVMUyxcbiAgQ0FMRU5EQVJfREVGQVVMVF9XRUVLREFZX0xBQkVMUyxcbiAgQ0FMRU5EQVJfTU9OVEhfTEFCRUxTLFxuICBDQUxFTkRBUl9XRUVLREFZX0xBQkVMUyxcbn0gZnJvbSAnLi9jYWxlbmRhci5jb25mJztcbmltcG9ydCB7IE1vbnRoTGFiZWxzQ29uZmlnLCBXZWVrZGF5TGFiZWxzQ29uZmlnIH0gZnJvbSAnLi90eXBlcy9jYWxlbmRhci50eXBlcyc7XG5pbXBvcnQgeyBDYWxlbmRhclNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2NhbGVuZGFyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2FsZW5kYXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY2FsZW5kYXIvY2FsZW5kYXIuY29tcG9uZW50JztcbmltcG9ydCB7IENhbGVuZGFyRGVjZW5uaWFDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZGVjZW5uaWEvZGVjZW5uaWEuY29tcG9uZW50JztcbmltcG9ydCB7IENhbGVuZGFyTW9udGhDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbW9udGgvbW9udGguY29tcG9uZW50JztcbmltcG9ydCB7IENhbGVuZGFyWWVhckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy95ZWFyL3llYXIuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgSWNvbk1vZHVsZV0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIENhbGVuZGFyQ29tcG9uZW50LFxuICAgIENhbGVuZGFyRGVjZW5uaWFDb21wb25lbnQsXG4gICAgQ2FsZW5kYXJNb250aENvbXBvbmVudCxcbiAgICBDYWxlbmRhclllYXJDb21wb25lbnQsXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBDYWxlbmRhckNvbXBvbmVudCxcbiAgICBDYWxlbmRhckRlY2VubmlhQ29tcG9uZW50LFxuICAgIENhbGVuZGFyTW9udGhDb21wb25lbnQsXG4gICAgQ2FsZW5kYXJZZWFyQ29tcG9uZW50LFxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICBDYWxlbmRhclNlcnZpY2UsXG4gICAge1xuICAgICAgcHJvdmlkZTogQ0FMRU5EQVJfV0VFS0RBWV9MQUJFTFMsXG4gICAgICB1c2VWYWx1ZTogQ0FMRU5EQVJfREVGQVVMVF9XRUVLREFZX0xBQkVMUyxcbiAgICB9LFxuICAgIHsgcHJvdmlkZTogQ0FMRU5EQVJfTU9OVEhfTEFCRUxTLCB1c2VWYWx1ZTogQ0FMRU5EQVJfREVGQVVMVF9NT05USF9MQUJFTFMgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2FsZW5kYXJNb2R1bGUge1xuICBzdGF0aWMgZm9yQ2hpbGQoXG4gICAgd2Vla2RheUxhYmVsczogV2Vla2RheUxhYmVsc0NvbmZpZyxcbiAgICBtb250aExhYmVsczogTW9udGhMYWJlbHNDb25maWdcbiAgKTogTW9kdWxlV2l0aFByb3ZpZGVyczxDYWxlbmRhck1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogQ2FsZW5kYXJNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgQ2FsZW5kYXJTZXJ2aWNlLFxuICAgICAgICB7IHByb3ZpZGU6IENBTEVOREFSX1dFRUtEQVlfTEFCRUxTLCB1c2VWYWx1ZTogd2Vla2RheUxhYmVscyB9LFxuICAgICAgICB7IHByb3ZpZGU6IENBTEVOREFSX01PTlRIX0xBQkVMUywgdXNlVmFsdWU6IG1vbnRoTGFiZWxzIH0sXG4gICAgICBdLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acpaas-ui-ngx-calendar.mjs","sources":["../../src/lib/types/calendar.types.ts","../../src/lib/services/calendar.service.ts","../../src/lib/calendar.conf.ts","../../src/lib/components/decennia/decennia.component.html","../../src/lib/components/decennia/decennia.component.ts","../../src/lib/components/month/month.component.html","../../src/lib/components/month/month.component.ts","../../src/lib/components/year/year.component.html","../../src/lib/components/year/year.component.ts","../../src/lib/components/calendar/calendar.component.html","../../src/lib/components/calendar/calendar.component.ts","../../src/lib/calendar.module.ts","../../src/acpaas-ui-ngx-calendar.ts"],"sourcesContent":["export const CALENDAR_VIEW_MONTH = 'CALENDAR_VIEW_MONTH';\nexport const CALENDAR_VIEW_YEAR = 'CALENDAR_VIEW_YEAR';\nexport const CALENDAR_VIEW_DECENNIA = 'CALENDAR_VIEW_DECENNIA';\n\nexport type WeekdayLabelsConfig = string[];\nexport type MonthLabelsConfig = string[];\n\nexport interface DatepickerResult {\n date: Date;\n complete: boolean;\n}\n\nexport interface DateRangeMap {\n before: number[];\n current: number[];\n after: number[];\n}\n","import { Injectable } from '@angular/core';\nimport { DateGenerator, DateHelper, DateRange, Month } from '@acpaas-ui/ngx-utils';\n\nimport { DateRangeMap } from '../types/calendar.types';\n\nexport interface MonthMap {\n [key: number]: Month;\n}\n\n@Injectable()\nexport class CalendarService {\n public months: MonthMap = {};\n private currentYear: number;\n\n getMonth(month: number, year?: number): Month {\n if (year) {\n if (this.currentYear !== year) {\n this.months = {};\n }\n\n this.currentYear = year;\n }\n\n if (this.months.hasOwnProperty(month)) {\n return [...this.months[month]];\n }\n\n const date = new Date();\n date.setMonth(month, 1);\n\n if (year) {\n date.setFullYear(year);\n }\n\n const generatedMonth = DateGenerator.generateMonth(date, { startOfWeek: 1, padding: true, generatePadding: true });\n\n this.months[month] = generatedMonth;\n\n return [...generatedMonth];\n }\n\n getMonthForDate(date: Date): Month {\n return this.getMonth(date.getMonth(), date.getFullYear());\n }\n\n getRangeForDate(date: Date, range: DateRange): number[] {\n return DateGenerator.generateRange(date, range, { startOfWeek: 1 });\n }\n\n getRangesForDate(date: Date, range: DateRange): DateRangeMap {\n const rangeOptions = { startOfWeek: 1 };\n const before = DateHelper.updateMonth(date, date.getMonth() - 1);\n const after = DateHelper.updateMonth(date, date.getMonth() + 1);\n\n return {\n before: DateGenerator.generateRange(before, range, rangeOptions),\n current: DateGenerator.generateRange(date, range, rangeOptions),\n after: DateGenerator.generateRange(after, range, rangeOptions),\n };\n }\n\n getClosestDateForRange(date: Date = new Date(), range: DateRange): Date {\n const dateRange = this.getRangeForDate(date, range);\n\n if (DateHelper.dateOutOfRange(date, dateRange)) {\n return date;\n }\n\n return DateHelper.closestDateForRange(date, dateRange);\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { MonthLabelsConfig, WeekdayLabelsConfig } from './types/calendar.types';\n\nexport const CALENDAR_DEFAULT_WEEKDAY_LABELS = [\n 'Maandag',\n 'Dinsdag',\n 'Woensdag',\n 'Donderdag',\n 'Vrijdag',\n 'Zaterdag',\n 'Zondag',\n];\n\nexport const CALENDAR_DEFAULT_MONTH_LABELS = [\n 'Januari',\n 'Februari',\n 'Maart',\n 'April',\n 'Mei',\n 'Juni',\n 'Juli',\n 'Augustus',\n 'September',\n 'Oktober',\n 'November',\n 'December',\n];\n\nexport const CALENDAR_WEEKDAY_LABELS = new InjectionToken<WeekdayLabelsConfig>('weekdayLabels');\nexport const CALENDAR_MONTH_LABELS = new InjectionToken<MonthLabelsConfig>('monthLabels');\n","<div class=\"m-datepicker__list\">\n <table>\n <tbody class=\"m-datepicker__list-body\">\n <tr *ngFor=\"let group of years\">\n <td *ngFor=\"let year of group\">\n <button\n (click)=\"pickDate($event, year)\"\n [ngClass]=\"{\n 'is-current': year === current,\n 'is-selected': year === selectedYear\n }\"\n type=\"button\"\n >\n {{ year }}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core';\nimport { chunk, get } from 'lodash-es';\n\n@Component({\n selector: 'aui-calendar-decennia',\n templateUrl: './decennia.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalendarDecenniaComponent implements OnInit, OnChanges {\n @Input() selectedDate: Date;\n @Input() activeDate: Date;\n @Output() selectDate = new EventEmitter();\n\n public years = [];\n public selectedYear = -1;\n public current = -1;\n\n public ngOnInit() {\n const current = new Date();\n this.current = current.getFullYear();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n const currentValue = get(changes, 'activeDate.currentValue');\n const previousValue = get(changes, 'activeDate.previousValue');\n const currentYear = currentValue instanceof Date ? currentValue.getFullYear() : -1;\n const previousYear = previousValue instanceof Date ? previousValue.getFullYear() : -1;\n const outOfRange = previousYear > currentYear || previousYear + 17 < currentYear;\n\n if (currentYear >= 0 && outOfRange) {\n this.updateYears();\n }\n\n this.selectedYear = this.selectedDate instanceof Date ? this.selectedDate.getFullYear() : -1;\n }\n\n pickDate(event: MouseEvent, date: number) {\n event.stopPropagation();\n\n const selectedDate = new Date(this.activeDate);\n selectedDate.setFullYear(date);\n\n this.selectDate.emit(selectedDate);\n }\n\n private updateYears(): void {\n const years = [];\n const activeYear = this.activeDate.getFullYear();\n\n for (let i = activeYear; i < activeYear + 18; i += 1) {\n years.push(i);\n }\n\n this.years = chunk(years, 3);\n }\n}\n","<div class=\"m-datepicker__grid\">\n <table>\n <thead>\n <tr class=\"m-datepicker__grid-head\">\n <th *ngFor=\"let day of weekdayLabels\" scope=\"col\">\n <span [title]=\"day\" class=\"u-text-capitalize\">{{ day | slice : 0 : 2 }}</span>\n </th>\n </tr>\n </thead>\n\n <tbody class=\"m-datepicker__grid-body\">\n <tr *ngFor=\"let week of dates\">\n <td *ngFor=\"let day of week\">\n <button\n (click)=\"pickDate($event, day)\"\n [disabled]=\"!day.available\"\n [ngClass]=\"{\n 'is-faded': !day.date || day.padding,\n 'is-selected':\n !day.padding &&\n selectedDate &&\n day.date === selectedDay &&\n selectedDay &&\n selectedDate.getFullYear() === activeDate.getFullYear(),\n 'is-current': !day.padding && day.date === current,\n 'is-unavailable': !day.available\n }\"\n type=\"button\"\n >\n {{ day.date }}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Inject,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n} from '@angular/core';\nimport { get } from 'lodash-es';\nimport { DateHelper, DateRange, Day, Month } from '@acpaas-ui/ngx-utils';\nimport { CALENDAR_DEFAULT_WEEKDAY_LABELS, CALENDAR_WEEKDAY_LABELS } from '../../calendar.conf';\nimport { CalendarService } from '../../services/calendar.service';\nimport { DateRangeMap, WeekdayLabelsConfig } from '../../types/calendar.types';\nimport { Interval } from '@acpaas-ui/ngx-utils';\n\n@Component({\n selector: 'aui-calendar-month',\n templateUrl: './month.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalendarMonthComponent implements OnInit, OnChanges {\n @Input() selectedDate: Date;\n @Input() activeDate: Date;\n @Input() range: DateRange;\n @Input()\n interval?: Interval.IInterval<Date>;\n @Input() weekdayLabels: WeekdayLabelsConfig = CALENDAR_DEFAULT_WEEKDAY_LABELS;\n @Output() selectDate = new EventEmitter();\n\n public dates: Month = [];\n public selectedDay = -1;\n public current: number;\n\n constructor(\n @Inject(CALENDAR_WEEKDAY_LABELS) private moduleWeekdayLabels = CALENDAR_DEFAULT_WEEKDAY_LABELS,\n private calendarService: CalendarService\n ) {}\n\n public ngOnInit() {\n this.weekdayLabels = this.weekdayLabels || this.moduleWeekdayLabels;\n }\n\n ngOnChanges(changes: SimpleChanges) {\n const selectedDateChanged = this.hasChanged(changes, 'selectedDate');\n const intervalChanged = !!changes.interval && changes.interval.currentValue !== changes.interval.previousValue;\n const activeDateChanged = this.hasChanged(changes, 'activeDate');\n const monthChanged =\n activeDateChanged &&\n !DateHelper.datesAreEqual([changes.activeDate.currentValue, changes.activeDate.previousValue], 'M');\n const selectedDayChanged = this.selectedDate && this.activeDate.getMonth() === this.selectedDate.getMonth();\n\n this.current = this.getCurrentDate();\n this.selectedDay = selectedDayChanged ? this.selectedDate.getDate() : -1;\n\n let newDates = [];\n\n if (selectedDateChanged || intervalChanged || (activeDateChanged && monthChanged)) {\n newDates = this.calendarService.getMonthForDate(this.activeDate);\n } else {\n return;\n }\n\n const range: DateRangeMap | null = this.calendarService.getRangesForDate(this.activeDate, this.range);\n this.dates = newDates.map((week) =>\n week.map((day) => {\n const currentDate = new Date();\n this.activeDate.setHours(currentDate.getHours(), currentDate.getMinutes(), currentDate.getSeconds());\n const date: Date = new Date(this.activeDate.getFullYear(), this.activeDate.getMonth(), day.date);\n\n if (day.padding) {\n if (day.date > 20) {\n date.setMonth(this.activeDate.getMonth() - 1);\n } else {\n date.setMonth(this.activeDate.getMonth() + 1);\n }\n }\n\n date.setDate(day.date);\n\n const available: boolean =\n this.dayIsAvailableForRange(day, range) && (this.interval ? !this.interval.isInRange(date) : true);\n return {\n ...day,\n available,\n };\n })\n );\n }\n\n pickDate(event: MouseEvent, day: Day): void {\n event.stopPropagation(); // Stop propagation so the modal doesn't close\n\n let selectedDate = new Date(this.activeDate);\n\n if (day.padding) {\n const month = day.date > 20 ? -1 : 1;\n selectedDate = DateHelper.updateMonth(selectedDate, selectedDate.getMonth() + month);\n }\n\n this.selectDate.emit(DateHelper.updateDate(selectedDate, day.date));\n }\n\n private hasChanged(changes: SimpleChanges, prop: string): boolean {\n const current = get(changes, `${prop}.currentValue`);\n const previous = get(changes, `${prop}.previousValue`);\n const currentValue = current instanceof Date ? current.valueOf() : 0;\n const previousValue = previous instanceof Date ? previous.valueOf() : 0;\n\n return !!currentValue && currentValue !== previousValue;\n }\n\n private getCurrentDate(): number {\n const current = new Date();\n const monthHasChanged = !DateHelper.datesAreEqual([this.activeDate, current], ['M', 'Y']);\n\n return monthHasChanged ? -1 : current.getDate();\n }\n\n private dayIsAvailableForRange(day: Day, range: DateRangeMap): boolean {\n if (!range) {\n return true;\n }\n\n let dateRange = range.current;\n\n if (day.padding) {\n dateRange = day.date > 20 ? range.before : range.after;\n }\n\n return dateRange.indexOf(day.date) < 0;\n }\n}\n","<div class=\"m-datepicker__list\">\n <table>\n <tbody class=\"m-datepicker__list-body\">\n <tr *ngFor=\"let group of months\">\n <td *ngFor=\"let month of group\">\n <button\n (click)=\"pickDate($event, month)\"\n [ngClass]=\"{\n 'is-current': month === current,\n 'is-selected': month === monthLabels[selectedMonth]\n }\"\n type=\"button\"\n >\n {{ month | titlecase }}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Inject,\n Input,\n OnChanges,\n Output,\n SimpleChanges,\n} from '@angular/core';\nimport { chunk, get } from 'lodash-es';\n\nimport { DateHelper } from '@acpaas-ui/ngx-utils';\n\nimport { CALENDAR_DEFAULT_MONTH_LABELS, CALENDAR_MONTH_LABELS } from '../../calendar.conf';\nimport { MonthLabelsConfig } from '../../types/calendar.types';\n\n@Component({\n selector: 'aui-calendar-year',\n templateUrl: './year.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalendarYearComponent implements OnChanges {\n @Input() selectedDate: Date;\n @Input() activeDate: Date;\n @Input() monthLabels: MonthLabelsConfig = CALENDAR_DEFAULT_MONTH_LABELS;\n @Output() selectDate = new EventEmitter();\n\n public selectedMonth = -1;\n public current = '';\n public months: Array<string[]> = [];\n\n constructor(@Inject(CALENDAR_MONTH_LABELS) public moduleMonthLabels = CALENDAR_DEFAULT_MONTH_LABELS) {}\n\n ngOnChanges(changes: SimpleChanges) {\n const currentValue = get(changes, 'activeDate.currentValue');\n const currentYear = currentValue instanceof Date ? currentValue.getFullYear() : -1;\n const selectedMonthChanged = this.selectedDate && this.selectedDate.getFullYear() === this.activeDate.getFullYear();\n const current = new Date();\n\n this.current = currentYear === current.getFullYear() ? this.monthLabels[current.getMonth()] : '';\n\n this.selectedMonth = selectedMonthChanged ? this.selectedDate.getMonth() : -1;\n\n if (changes.monthLabels) {\n this.monthLabels = this.monthLabels || this.moduleMonthLabels;\n this.months = chunk(this.monthLabels, 2);\n }\n }\n\n pickDate(event: MouseEvent, date: string) {\n event.stopPropagation();\n\n let selectedDate = new Date(this.activeDate);\n selectedDate = DateHelper.updateMonth(selectedDate, this.monthLabels.indexOf(date));\n\n this.selectDate.emit(selectedDate);\n }\n}\n","<div class=\"m-datepicker__nav\">\n <button (click)=\"switchView()\" class=\"m-datepicker__nav-title\" type=\"button\">\n {{ headerLabel | titlecase }}\n <aui-icon name=\"ai-arrow-down-1\" />\n </button>\n\n <div class=\"m-datepicker__nav-pagination\">\n <button\n (click)=\"updateActiveDate(-1)\"\n [attr.aria-label]=\"ariaPreviousLabel\"\n class=\"a-button a-button--text a-button--primary has-icon\"\n type=\"button\"\n >\n <aui-icon name=\"ai-arrow-left-1\"></aui-icon>\n </button>\n <button\n (click)=\"updateActiveDate(1)\"\n [attr.aria-label]=\"ariaNextLabel\"\n class=\"a-button a-button--text a-button--primary has-icon\"\n type=\"button\"\n >\n <aui-icon name=\"ai-arrow-right-1\"></aui-icon>\n </button>\n </div>\n</div>\n<aui-calendar-month\n (selectDate)=\"pickDate($event)\"\n *ngIf=\"activeView === CALENDAR_VIEW_MONTH\"\n [activeDate]=\"activeDate\"\n [range]=\"range\"\n [interval]=\"interval\"\n [selectedDate]=\"selectedDate\"\n [weekdayLabels]=\"weekdayLabels\"\n></aui-calendar-month>\n<aui-calendar-year\n (selectDate)=\"pickDate($event)\"\n *ngIf=\"activeView === CALENDAR_VIEW_YEAR\"\n [activeDate]=\"activeDate\"\n [monthLabels]=\"monthLabels\"\n [selectedDate]=\"selectedDate\"\n></aui-calendar-year>\n<aui-calendar-decennia\n (selectDate)=\"pickDate($event)\"\n *ngIf=\"activeView === CALENDAR_VIEW_DECENNIA\"\n [activeDate]=\"activeDate\"\n [selectedDate]=\"selectedDate\"\n></aui-calendar-decennia>\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n} from '@angular/core';\n\nimport { DateHelper, DateRange } from '@acpaas-ui/ngx-utils';\n\nimport {\n CALENDAR_DEFAULT_MONTH_LABELS,\n CALENDAR_DEFAULT_WEEKDAY_LABELS,\n CALENDAR_MONTH_LABELS,\n CALENDAR_WEEKDAY_LABELS,\n} from '../../calendar.conf';\nimport {\n CALENDAR_VIEW_DECENNIA,\n CALENDAR_VIEW_MONTH,\n CALENDAR_VIEW_YEAR,\n MonthLabelsConfig,\n WeekdayLabelsConfig,\n} from '../../types/calendar.types';\nimport { CalendarService } from '../../services/calendar.service';\nimport { Interval } from '@acpaas-ui/ngx-utils';\n\n@Component({\n selector: 'aui-calendar',\n templateUrl: './calendar.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalendarComponent implements OnInit, OnChanges {\n @HostBinding('attr.role') role = 'application';\n @HostBinding('attr.aria-hidden') ariahidden = 'false';\n\n @Input() ariaPreviousLabels = ['Ga naar vorige maand', 'Ga naar vorig jaar', 'Ga naar vorige 18 jaren'];\n @Input() ariaNextLabels = ['Ga naar volgende maand', 'Ga naar volgend jaar', 'Ga naar volgende 18 jaren'];\n\n @Input() selectedDate: Date;\n @Input() range: DateRange;\n @Input()\n interval?: Interval.IInterval<Date>;\n @Input() weekdayLabels: WeekdayLabelsConfig;\n @Input() monthLabels: MonthLabelsConfig;\n @Output() selectDate = new EventEmitter();\n\n public CALENDAR_VIEW_MONTH = CALENDAR_VIEW_MONTH;\n public CALENDAR_VIEW_YEAR = CALENDAR_VIEW_YEAR;\n public CALENDAR_VIEW_DECENNIA = CALENDAR_VIEW_DECENNIA;\n public activeDate: Date;\n public activeView: string = CALENDAR_VIEW_MONTH;\n public headerLabel = '';\n public ariaPreviousLabel = this.ariaPreviousLabels[0];\n public ariaNextLabel = this.ariaNextLabels[0];\n\n constructor(\n @Inject(CALENDAR_MONTH_LABELS) public moduleMonthLabels = CALENDAR_DEFAULT_MONTH_LABELS,\n @Inject(CALENDAR_WEEKDAY_LABELS) public moduleWeekdayLabels = CALENDAR_DEFAULT_WEEKDAY_LABELS,\n private calendarService: CalendarService\n ) {}\n\n public ngOnInit() {\n this.initControl();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n const selectedDate = changes.selectedDate && changes.selectedDate.currentValue ? changes.selectedDate : null;\n\n if (\n typeof this.monthLabels !== 'undefined' &&\n selectedDate &&\n !DateHelper.datesAreEqual(selectedDate.currentValue, selectedDate.previousValue)\n ) {\n this.activeDate = this.selectedDate;\n this.updateHeaderLabel();\n } else {\n let activeDateToSet = new Date();\n\n if (this.interval && this.interval.isInRange(activeDateToSet)) {\n activeDateToSet = this.interval.min;\n }\n\n this.activeDate = DateHelper.parseDate(activeDateToSet);\n\n this.initControl();\n }\n }\n\n updateActiveDate(factor: number = 0): void {\n const activeDate = this.activeDate\n ? new Date(this.activeDate.getFullYear(), this.activeDate.getMonth(), 1)\n : new Date();\n\n switch (this.activeView) {\n case CALENDAR_VIEW_MONTH:\n activeDate.setMonth(activeDate.getMonth() + factor);\n break;\n case CALENDAR_VIEW_YEAR:\n activeDate.setFullYear(activeDate.getFullYear() + factor);\n break;\n case CALENDAR_VIEW_DECENNIA:\n activeDate.setFullYear(activeDate.getFullYear() + 18 * factor);\n break;\n }\n\n this.activeDate = activeDate;\n this.updateHeaderLabel();\n }\n\n switchView(factor: number = 1): void {\n const views = [CALENDAR_VIEW_MONTH, CALENDAR_VIEW_YEAR, CALENDAR_VIEW_DECENNIA];\n\n const currView = views.indexOf(this.activeView);\n let nextView = currView + factor >= views.length ? 0 : currView + factor;\n nextView = nextView < 0 ? views.length - 1 : nextView;\n\n this.activeView = views[nextView];\n\n // reset activeDate when returning to month view without model update\n if (this.selectedDate && nextView === 0 && factor === 1) {\n this.activeDate = this.selectedDate;\n }\n\n this.updateHeaderLabel();\n }\n\n updateHeaderLabel(): void {\n switch (this.activeView) {\n case CALENDAR_VIEW_MONTH:\n this.headerLabel = this.monthLabels[this.activeDate.getMonth()] + ' ' + this.activeDate.getFullYear();\n this.ariaPreviousLabel = this.ariaPreviousLabels[0];\n this.ariaNextLabel = this.ariaNextLabels[0];\n break;\n case CALENDAR_VIEW_YEAR:\n this.headerLabel = String(this.activeDate.getFullYear());\n this.ariaPreviousLabel = this.ariaPreviousLabels[1];\n this.ariaNextLabel = this.ariaNextLabels[1];\n break;\n case CALENDAR_VIEW_DECENNIA:\n const startYear = this.activeDate.getFullYear();\n this.headerLabel = `${startYear} - ${startYear + 17}`;\n this.ariaPreviousLabel = this.ariaPreviousLabels[2];\n this.ariaNextLabel = this.ariaNextLabels[2];\n break;\n }\n }\n\n pickDate(date: Date): void {\n const complete = this.activeView === CALENDAR_VIEW_MONTH;\n\n this.selectDate.emit({\n date,\n complete,\n });\n\n if (!complete) {\n this.activeDate = date;\n this.switchView(-1);\n }\n }\n\n private initControl(): void {\n this.weekdayLabels = this.weekdayLabels || this.moduleWeekdayLabels;\n this.monthLabels = this.monthLabels || this.moduleMonthLabels;\n this.activeDate = this.calendarService.getClosestDateForRange(this.activeDate, this.range);\n if (this.selectedDate) {\n this.activeDate = this.selectedDate;\n this.updateActiveDate();\n }\n this.updateHeaderLabel();\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { IconModule } from '@acpaas-ui/ngx-icon';\nimport {\n CALENDAR_DEFAULT_MONTH_LABELS,\n CALENDAR_DEFAULT_WEEKDAY_LABELS,\n CALENDAR_MONTH_LABELS,\n CALENDAR_WEEKDAY_LABELS,\n} from './calendar.conf';\nimport { MonthLabelsConfig, WeekdayLabelsConfig } from './types/calendar.types';\nimport { CalendarService } from './services/calendar.service';\nimport { CalendarComponent } from './components/calendar/calendar.component';\nimport { CalendarDecenniaComponent } from './components/decennia/decennia.component';\nimport { CalendarMonthComponent } from './components/month/month.component';\nimport { CalendarYearComponent } from './components/year/year.component';\n\n@NgModule({\n imports: [CommonModule, IconModule],\n declarations: [\n CalendarComponent,\n CalendarDecenniaComponent,\n CalendarMonthComponent,\n CalendarYearComponent,\n ],\n exports: [\n CalendarComponent,\n CalendarDecenniaComponent,\n CalendarMonthComponent,\n CalendarYearComponent,\n ],\n providers: [\n CalendarService,\n {\n provide: CALENDAR_WEEKDAY_LABELS,\n useValue: CALENDAR_DEFAULT_WEEKDAY_LABELS,\n },\n { provide: CALENDAR_MONTH_LABELS, useValue: CALENDAR_DEFAULT_MONTH_LABELS },\n ],\n})\nexport class CalendarModule {\n static forChild(\n weekdayLabels: WeekdayLabelsConfig,\n monthLabels: MonthLabelsConfig\n ): ModuleWithProviders<any> {\n return {\n ngModule: CalendarModule,\n providers: [\n CalendarService,\n { provide: CALENDAR_WEEKDAY_LABELS, useValue: weekdayLabels },\n { provide: CALENDAR_MONTH_LABELS, useValue: monthLabels },\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["_c0","i1.CalendarService"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acpaas-ui-ngx-calendar.mjs","sources":["../../src/lib/types/calendar.types.ts","../../src/lib/services/calendar.service.ts","../../src/lib/calendar.conf.ts","../../src/lib/components/decennia/decennia.component.html","../../src/lib/components/decennia/decennia.component.ts","../../src/lib/components/month/month.component.html","../../src/lib/components/month/month.component.ts","../../src/lib/components/year/year.component.html","../../src/lib/components/year/year.component.ts","../../src/lib/components/calendar/calendar.component.html","../../src/lib/components/calendar/calendar.component.ts","../../src/lib/calendar.module.ts","../../src/acpaas-ui-ngx-calendar.ts"],"sourcesContent":["export const CALENDAR_VIEW_MONTH = 'CALENDAR_VIEW_MONTH';\nexport const CALENDAR_VIEW_YEAR = 'CALENDAR_VIEW_YEAR';\nexport const CALENDAR_VIEW_DECENNIA = 'CALENDAR_VIEW_DECENNIA';\n\nexport type WeekdayLabelsConfig = string[];\nexport type MonthLabelsConfig = string[];\n\nexport interface DatepickerResult {\n date: Date;\n complete: boolean;\n}\n\nexport interface DateRangeMap {\n before: number[];\n current: number[];\n after: number[];\n}\n","import { Injectable } from '@angular/core';\nimport { DateGenerator, DateHelper, DateRange, Month } from '@acpaas-ui/ngx-utils';\n\nimport { DateRangeMap } from '../types/calendar.types';\n\nexport interface MonthMap {\n [key: number]: Month;\n}\n\n@Injectable()\nexport class CalendarService {\n public months: MonthMap = {};\n private currentYear: number;\n\n getMonth(month: number, year?: number): Month {\n if (year) {\n if (this.currentYear !== year) {\n this.months = {};\n }\n\n this.currentYear = year;\n }\n\n if (this.months.hasOwnProperty(month)) {\n return [...this.months[month]];\n }\n\n const date = new Date();\n date.setMonth(month, 1);\n\n if (year) {\n date.setFullYear(year);\n }\n\n const generatedMonth = DateGenerator.generateMonth(date, { startOfWeek: 1, padding: true, generatePadding: true });\n\n this.months[month] = generatedMonth;\n\n return [...generatedMonth];\n }\n\n getMonthForDate(date: Date): Month {\n return this.getMonth(date.getMonth(), date.getFullYear());\n }\n\n getRangeForDate(date: Date, range: DateRange): number[] {\n return DateGenerator.generateRange(date, range, { startOfWeek: 1 });\n }\n\n getRangesForDate(date: Date, range: DateRange): DateRangeMap {\n const rangeOptions = { startOfWeek: 1 };\n const before = DateHelper.updateMonth(date, date.getMonth() - 1);\n const after = DateHelper.updateMonth(date, date.getMonth() + 1);\n\n return {\n before: DateGenerator.generateRange(before, range, rangeOptions),\n current: DateGenerator.generateRange(date, range, rangeOptions),\n after: DateGenerator.generateRange(after, range, rangeOptions),\n };\n }\n\n getClosestDateForRange(date: Date = new Date(), range: DateRange): Date {\n const dateRange = this.getRangeForDate(date, range);\n\n if (DateHelper.dateOutOfRange(date, dateRange)) {\n return date;\n }\n\n return DateHelper.closestDateForRange(date, dateRange);\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { MonthLabelsConfig, WeekdayLabelsConfig } from './types/calendar.types';\n\nexport const CALENDAR_DEFAULT_WEEKDAY_LABELS = [\n 'Maandag',\n 'Dinsdag',\n 'Woensdag',\n 'Donderdag',\n 'Vrijdag',\n 'Zaterdag',\n 'Zondag',\n];\n\nexport const CALENDAR_DEFAULT_MONTH_LABELS = [\n 'Januari',\n 'Februari',\n 'Maart',\n 'April',\n 'Mei',\n 'Juni',\n 'Juli',\n 'Augustus',\n 'September',\n 'Oktober',\n 'November',\n 'December',\n];\n\nexport const CALENDAR_WEEKDAY_LABELS = new InjectionToken<WeekdayLabelsConfig>('weekdayLabels');\nexport const CALENDAR_MONTH_LABELS = new InjectionToken<MonthLabelsConfig>('monthLabels');\n","<div class=\"m-datepicker__list\">\n <table>\n <tbody class=\"m-datepicker__list-body\">\n <tr *ngFor=\"let group of years\">\n <td *ngFor=\"let year of group\">\n <button\n (click)=\"pickDate($event, year)\"\n [ngClass]=\"{\n 'is-current': year === current,\n 'is-selected': year === selectedYear\n }\"\n type=\"button\"\n >\n {{ year }}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core';\nimport { chunk, get } from 'lodash-es';\n\n@Component({\n selector: 'aui-calendar-decennia',\n templateUrl: './decennia.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalendarDecenniaComponent implements OnInit, OnChanges {\n @Input() selectedDate: Date;\n @Input() activeDate: Date;\n @Output() selectDate = new EventEmitter();\n\n public years = [];\n public selectedYear = -1;\n public current = -1;\n\n public ngOnInit() {\n const current = new Date();\n this.current = current.getFullYear();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n const currentValue = get(changes, 'activeDate.currentValue');\n const previousValue = get(changes, 'activeDate.previousValue');\n const currentYear = currentValue instanceof Date ? currentValue.getFullYear() : -1;\n const previousYear = previousValue instanceof Date ? previousValue.getFullYear() : -1;\n const outOfRange = previousYear > currentYear || previousYear + 17 < currentYear;\n\n if (currentYear >= 0 && outOfRange) {\n this.updateYears();\n }\n\n this.selectedYear = this.selectedDate instanceof Date ? this.selectedDate.getFullYear() : -1;\n }\n\n pickDate(event: MouseEvent, date: number) {\n event.stopPropagation();\n\n const selectedDate = new Date(this.activeDate);\n selectedDate.setFullYear(date);\n\n this.selectDate.emit(selectedDate);\n }\n\n private updateYears(): void {\n const years = [];\n const activeYear = this.activeDate.getFullYear();\n\n for (let i = activeYear; i < activeYear + 18; i += 1) {\n years.push(i);\n }\n\n this.years = chunk(years, 3);\n }\n}\n","<div class=\"m-datepicker__grid\">\n <table>\n <thead>\n <tr class=\"m-datepicker__grid-head\">\n <th *ngFor=\"let day of weekdayLabels\" scope=\"col\">\n <span [title]=\"day\" class=\"u-text-capitalize\">{{ day | slice : 0 : 2 }}</span>\n </th>\n </tr>\n </thead>\n\n <tbody class=\"m-datepicker__grid-body\">\n <tr *ngFor=\"let week of dates\">\n <td *ngFor=\"let day of week\">\n <button\n (click)=\"pickDate($event, day)\"\n [disabled]=\"!day.available\"\n [ngClass]=\"{\n 'is-faded': !day.date || day.padding,\n 'is-selected':\n !day.padding &&\n selectedDate &&\n day.date === selectedDay &&\n selectedDay &&\n selectedDate.getFullYear() === activeDate.getFullYear(),\n 'is-current': !day.padding && day.date === current,\n 'is-unavailable': !day.available\n }\"\n type=\"button\"\n >\n {{ day.date }}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Inject,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n} from '@angular/core';\nimport { get } from 'lodash-es';\nimport { DateHelper, DateRange, Day, Month } from '@acpaas-ui/ngx-utils';\nimport { CALENDAR_DEFAULT_WEEKDAY_LABELS, CALENDAR_WEEKDAY_LABELS } from '../../calendar.conf';\nimport { CalendarService } from '../../services/calendar.service';\nimport { DateRangeMap, WeekdayLabelsConfig } from '../../types/calendar.types';\nimport { Interval } from '@acpaas-ui/ngx-utils';\n\n@Component({\n selector: 'aui-calendar-month',\n templateUrl: './month.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalendarMonthComponent implements OnInit, OnChanges {\n @Input() selectedDate: Date;\n @Input() activeDate: Date;\n @Input() range: DateRange;\n @Input()\n interval?: Interval.IInterval<Date>;\n @Input() weekdayLabels: WeekdayLabelsConfig = CALENDAR_DEFAULT_WEEKDAY_LABELS;\n @Output() selectDate = new EventEmitter();\n\n public dates: Month = [];\n public selectedDay = -1;\n public current: number;\n\n constructor(\n @Inject(CALENDAR_WEEKDAY_LABELS) private moduleWeekdayLabels = CALENDAR_DEFAULT_WEEKDAY_LABELS,\n private calendarService: CalendarService\n ) {}\n\n public ngOnInit() {\n this.weekdayLabels = this.weekdayLabels || this.moduleWeekdayLabels;\n }\n\n ngOnChanges(changes: SimpleChanges) {\n const selectedDateChanged = this.hasChanged(changes, 'selectedDate');\n const intervalChanged = !!changes.interval && changes.interval.currentValue !== changes.interval.previousValue;\n const activeDateChanged = this.hasChanged(changes, 'activeDate');\n const monthChanged =\n activeDateChanged &&\n !DateHelper.datesAreEqual([changes.activeDate.currentValue, changes.activeDate.previousValue], 'M');\n const selectedDayChanged = this.selectedDate && this.activeDate.getMonth() === this.selectedDate.getMonth();\n\n this.current = this.getCurrentDate();\n this.selectedDay = selectedDayChanged ? this.selectedDate.getDate() : -1;\n\n let newDates = [];\n\n if (selectedDateChanged || intervalChanged || (activeDateChanged && monthChanged)) {\n newDates = this.calendarService.getMonthForDate(this.activeDate);\n } else {\n return;\n }\n\n const range: DateRangeMap | null = this.calendarService.getRangesForDate(this.activeDate, this.range);\n this.dates = newDates.map((week) =>\n week.map((day) => {\n const currentDate = new Date();\n this.activeDate.setHours(currentDate.getHours(), currentDate.getMinutes(), currentDate.getSeconds());\n const date: Date = new Date(this.activeDate.getFullYear(), this.activeDate.getMonth(), day.date);\n\n if (day.padding) {\n if (day.date > 20) {\n date.setMonth(this.activeDate.getMonth() - 1);\n } else {\n date.setMonth(this.activeDate.getMonth() + 1);\n }\n }\n\n date.setDate(day.date);\n\n const available: boolean =\n this.dayIsAvailableForRange(day, range) && (this.interval ? !this.interval.isInRange(date) : true);\n return {\n ...day,\n available,\n };\n })\n );\n }\n\n pickDate(event: MouseEvent, day: Day): void {\n event.stopPropagation(); // Stop propagation so the modal doesn't close\n\n let selectedDate = new Date(this.activeDate);\n\n if (day.padding) {\n const month = day.date > 20 ? -1 : 1;\n selectedDate = DateHelper.updateMonth(selectedDate, selectedDate.getMonth() + month);\n }\n\n this.selectDate.emit(DateHelper.updateDate(selectedDate, day.date));\n }\n\n private hasChanged(changes: SimpleChanges, prop: string): boolean {\n const current = get(changes, `${prop}.currentValue`);\n const previous = get(changes, `${prop}.previousValue`);\n const currentValue = current instanceof Date ? current.valueOf() : 0;\n const previousValue = previous instanceof Date ? previous.valueOf() : 0;\n\n return !!currentValue && currentValue !== previousValue;\n }\n\n private getCurrentDate(): number {\n const current = new Date();\n const monthHasChanged = !DateHelper.datesAreEqual([this.activeDate, current], ['M', 'Y']);\n\n return monthHasChanged ? -1 : current.getDate();\n }\n\n private dayIsAvailableForRange(day: Day, range: DateRangeMap): boolean {\n if (!range) {\n return true;\n }\n\n let dateRange = range.current;\n\n if (day.padding) {\n dateRange = day.date > 20 ? range.before : range.after;\n }\n\n return dateRange.indexOf(day.date) < 0;\n }\n}\n","<div class=\"m-datepicker__list\">\n <table>\n <tbody class=\"m-datepicker__list-body\">\n <tr *ngFor=\"let group of months\">\n <td *ngFor=\"let month of group\">\n <button\n (click)=\"pickDate($event, month)\"\n [ngClass]=\"{\n 'is-current': month === current,\n 'is-selected': month === monthLabels[selectedMonth]\n }\"\n type=\"button\"\n >\n {{ month | titlecase }}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Inject,\n Input,\n OnChanges,\n Output,\n SimpleChanges,\n} from '@angular/core';\nimport { chunk, get } from 'lodash-es';\n\nimport { DateHelper } from '@acpaas-ui/ngx-utils';\n\nimport { CALENDAR_DEFAULT_MONTH_LABELS, CALENDAR_MONTH_LABELS } from '../../calendar.conf';\nimport { MonthLabelsConfig } from '../../types/calendar.types';\n\n@Component({\n selector: 'aui-calendar-year',\n templateUrl: './year.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalendarYearComponent implements OnChanges {\n @Input() selectedDate: Date;\n @Input() activeDate: Date;\n @Input() monthLabels: MonthLabelsConfig = CALENDAR_DEFAULT_MONTH_LABELS;\n @Output() selectDate = new EventEmitter();\n\n public selectedMonth = -1;\n public current = '';\n public months: Array<string[]> = [];\n\n constructor(@Inject(CALENDAR_MONTH_LABELS) public moduleMonthLabels = CALENDAR_DEFAULT_MONTH_LABELS) {}\n\n ngOnChanges(changes: SimpleChanges) {\n const currentValue = get(changes, 'activeDate.currentValue');\n const currentYear = currentValue instanceof Date ? currentValue.getFullYear() : -1;\n const selectedMonthChanged = this.selectedDate && this.selectedDate.getFullYear() === this.activeDate.getFullYear();\n const current = new Date();\n\n this.current = currentYear === current.getFullYear() ? this.monthLabels[current.getMonth()] : '';\n\n this.selectedMonth = selectedMonthChanged ? this.selectedDate.getMonth() : -1;\n\n if (changes.monthLabels) {\n this.monthLabels = this.monthLabels || this.moduleMonthLabels;\n this.months = chunk(this.monthLabels, 2);\n }\n }\n\n pickDate(event: MouseEvent, date: string) {\n event.stopPropagation();\n\n let selectedDate = new Date(this.activeDate);\n selectedDate = DateHelper.updateMonth(selectedDate, this.monthLabels.indexOf(date));\n\n this.selectDate.emit(selectedDate);\n }\n}\n","<div class=\"m-datepicker__nav\">\n <button (click)=\"switchView()\" class=\"m-datepicker__nav-title\" type=\"button\">\n {{ headerLabel | titlecase }}\n <aui-icon name=\"ai-arrow-down-1\" />\n </button>\n\n <div class=\"m-datepicker__nav-pagination\">\n <button\n (click)=\"updateActiveDate(-1)\"\n [attr.aria-label]=\"ariaPreviousLabel\"\n class=\"a-button a-button--text a-button--primary has-icon\"\n type=\"button\"\n >\n <aui-icon name=\"ai-arrow-left-1\"></aui-icon>\n </button>\n <button\n (click)=\"updateActiveDate(1)\"\n [attr.aria-label]=\"ariaNextLabel\"\n class=\"a-button a-button--text a-button--primary has-icon\"\n type=\"button\"\n >\n <aui-icon name=\"ai-arrow-right-1\"></aui-icon>\n </button>\n </div>\n</div>\n<aui-calendar-month\n (selectDate)=\"pickDate($event)\"\n *ngIf=\"activeView === CALENDAR_VIEW_MONTH\"\n [activeDate]=\"activeDate\"\n [range]=\"range\"\n [interval]=\"interval\"\n [selectedDate]=\"selectedDate\"\n [weekdayLabels]=\"weekdayLabels\"\n></aui-calendar-month>\n<aui-calendar-year\n (selectDate)=\"pickDate($event)\"\n *ngIf=\"activeView === CALENDAR_VIEW_YEAR\"\n [activeDate]=\"activeDate\"\n [monthLabels]=\"monthLabels\"\n [selectedDate]=\"selectedDate\"\n></aui-calendar-year>\n<aui-calendar-decennia\n (selectDate)=\"pickDate($event)\"\n *ngIf=\"activeView === CALENDAR_VIEW_DECENNIA\"\n [activeDate]=\"activeDate\"\n [selectedDate]=\"selectedDate\"\n></aui-calendar-decennia>\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n} from '@angular/core';\n\nimport { DateHelper, DateRange } from '@acpaas-ui/ngx-utils';\n\nimport {\n CALENDAR_DEFAULT_MONTH_LABELS,\n CALENDAR_DEFAULT_WEEKDAY_LABELS,\n CALENDAR_MONTH_LABELS,\n CALENDAR_WEEKDAY_LABELS,\n} from '../../calendar.conf';\nimport {\n CALENDAR_VIEW_DECENNIA,\n CALENDAR_VIEW_MONTH,\n CALENDAR_VIEW_YEAR,\n MonthLabelsConfig,\n WeekdayLabelsConfig,\n} from '../../types/calendar.types';\nimport { CalendarService } from '../../services/calendar.service';\nimport { Interval } from '@acpaas-ui/ngx-utils';\n\n@Component({\n selector: 'aui-calendar',\n templateUrl: './calendar.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalendarComponent implements OnInit, OnChanges {\n @HostBinding('attr.role') role = 'application';\n @HostBinding('attr.aria-hidden') ariahidden = 'false';\n\n @Input() ariaPreviousLabels = ['Ga naar vorige maand', 'Ga naar vorig jaar', 'Ga naar vorige 18 jaren'];\n @Input() ariaNextLabels = ['Ga naar volgende maand', 'Ga naar volgend jaar', 'Ga naar volgende 18 jaren'];\n\n @Input() selectedDate: Date;\n @Input() range: DateRange;\n @Input()\n interval?: Interval.IInterval<Date>;\n @Input() weekdayLabels: WeekdayLabelsConfig;\n @Input() monthLabels: MonthLabelsConfig;\n @Output() selectDate = new EventEmitter();\n\n public CALENDAR_VIEW_MONTH = CALENDAR_VIEW_MONTH;\n public CALENDAR_VIEW_YEAR = CALENDAR_VIEW_YEAR;\n public CALENDAR_VIEW_DECENNIA = CALENDAR_VIEW_DECENNIA;\n public activeDate: Date;\n public activeView: string = CALENDAR_VIEW_MONTH;\n public headerLabel = '';\n public ariaPreviousLabel = this.ariaPreviousLabels[0];\n public ariaNextLabel = this.ariaNextLabels[0];\n\n constructor(\n @Inject(CALENDAR_MONTH_LABELS) public moduleMonthLabels = CALENDAR_DEFAULT_MONTH_LABELS,\n @Inject(CALENDAR_WEEKDAY_LABELS) public moduleWeekdayLabels = CALENDAR_DEFAULT_WEEKDAY_LABELS,\n private calendarService: CalendarService\n ) {}\n\n public ngOnInit() {\n this.initControl();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n const selectedDate = changes.selectedDate && changes.selectedDate.currentValue ? changes.selectedDate : null;\n\n if (\n typeof this.monthLabels !== 'undefined' &&\n selectedDate &&\n !DateHelper.datesAreEqual(selectedDate.currentValue, selectedDate.previousValue)\n ) {\n this.activeDate = this.selectedDate;\n this.updateHeaderLabel();\n } else {\n let activeDateToSet = new Date();\n\n if (this.interval && this.interval.isInRange(activeDateToSet)) {\n activeDateToSet = this.interval.min;\n }\n\n this.activeDate = DateHelper.parseDate(activeDateToSet);\n\n this.initControl();\n }\n }\n\n updateActiveDate(factor: number = 0): void {\n const activeDate = this.activeDate\n ? new Date(this.activeDate.getFullYear(), this.activeDate.getMonth(), 1)\n : new Date();\n\n switch (this.activeView) {\n case CALENDAR_VIEW_MONTH:\n activeDate.setMonth(activeDate.getMonth() + factor);\n break;\n case CALENDAR_VIEW_YEAR:\n activeDate.setFullYear(activeDate.getFullYear() + factor);\n break;\n case CALENDAR_VIEW_DECENNIA:\n activeDate.setFullYear(activeDate.getFullYear() + 18 * factor);\n break;\n }\n\n this.activeDate = activeDate;\n this.updateHeaderLabel();\n }\n\n switchView(factor: number = 1): void {\n const views = [CALENDAR_VIEW_MONTH, CALENDAR_VIEW_YEAR, CALENDAR_VIEW_DECENNIA];\n\n const currView = views.indexOf(this.activeView);\n let nextView = currView + factor >= views.length ? 0 : currView + factor;\n nextView = nextView < 0 ? views.length - 1 : nextView;\n\n this.activeView = views[nextView];\n\n // reset activeDate when returning to month view without model update\n if (this.selectedDate && nextView === 0 && factor === 1) {\n this.activeDate = this.selectedDate;\n }\n\n this.updateHeaderLabel();\n }\n\n updateHeaderLabel(): void {\n switch (this.activeView) {\n case CALENDAR_VIEW_MONTH:\n this.headerLabel = this.monthLabels[this.activeDate.getMonth()] + ' ' + this.activeDate.getFullYear();\n this.ariaPreviousLabel = this.ariaPreviousLabels[0];\n this.ariaNextLabel = this.ariaNextLabels[0];\n break;\n case CALENDAR_VIEW_YEAR:\n this.headerLabel = String(this.activeDate.getFullYear());\n this.ariaPreviousLabel = this.ariaPreviousLabels[1];\n this.ariaNextLabel = this.ariaNextLabels[1];\n break;\n case CALENDAR_VIEW_DECENNIA:\n const startYear = this.activeDate.getFullYear();\n this.headerLabel = `${startYear} - ${startYear + 17}`;\n this.ariaPreviousLabel = this.ariaPreviousLabels[2];\n this.ariaNextLabel = this.ariaNextLabels[2];\n break;\n }\n }\n\n pickDate(date: Date): void {\n const complete = this.activeView === CALENDAR_VIEW_MONTH;\n\n this.selectDate.emit({\n date,\n complete,\n });\n\n if (!complete) {\n this.activeDate = date;\n this.switchView(-1);\n }\n }\n\n private initControl(): void {\n this.weekdayLabels = this.weekdayLabels || this.moduleWeekdayLabels;\n this.monthLabels = this.monthLabels || this.moduleMonthLabels;\n this.activeDate = this.calendarService.getClosestDateForRange(this.activeDate, this.range);\n if (this.selectedDate) {\n this.activeDate = this.selectedDate;\n this.updateActiveDate();\n }\n this.updateHeaderLabel();\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { IconModule } from '@acpaas-ui/ngx-icon';\nimport {\n CALENDAR_DEFAULT_MONTH_LABELS,\n CALENDAR_DEFAULT_WEEKDAY_LABELS,\n CALENDAR_MONTH_LABELS,\n CALENDAR_WEEKDAY_LABELS,\n} from './calendar.conf';\nimport { MonthLabelsConfig, WeekdayLabelsConfig } from './types/calendar.types';\nimport { CalendarService } from './services/calendar.service';\nimport { CalendarComponent } from './components/calendar/calendar.component';\nimport { CalendarDecenniaComponent } from './components/decennia/decennia.component';\nimport { CalendarMonthComponent } from './components/month/month.component';\nimport { CalendarYearComponent } from './components/year/year.component';\n\n@NgModule({\n imports: [CommonModule, IconModule],\n declarations: [\n CalendarComponent,\n CalendarDecenniaComponent,\n CalendarMonthComponent,\n CalendarYearComponent,\n ],\n exports: [\n CalendarComponent,\n CalendarDecenniaComponent,\n CalendarMonthComponent,\n CalendarYearComponent,\n ],\n providers: [\n CalendarService,\n {\n provide: CALENDAR_WEEKDAY_LABELS,\n useValue: CALENDAR_DEFAULT_WEEKDAY_LABELS,\n },\n { provide: CALENDAR_MONTH_LABELS, useValue: CALENDAR_DEFAULT_MONTH_LABELS },\n ],\n})\nexport class CalendarModule {\n static forChild(\n weekdayLabels: WeekdayLabelsConfig,\n monthLabels: MonthLabelsConfig\n ): ModuleWithProviders<CalendarModule> {\n return {\n ngModule: CalendarModule,\n providers: [\n CalendarService,\n { provide: CALENDAR_WEEKDAY_LABELS, useValue: weekdayLabels },\n { provide: CALENDAR_MONTH_LABELS, useValue: monthLabels },\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["_c0","i1.CalendarService"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acpaas-ui-ngx-calendar.mjs","sources":["../../src/lib/types/calendar.types.ts","../../src/lib/services/calendar.service.ts","../../src/lib/calendar.conf.ts","../../src/lib/components/decennia/decennia.component.html","../../src/lib/components/decennia/decennia.component.ts","../../src/lib/components/month/month.component.html","../../src/lib/components/month/month.component.ts","../../src/lib/components/year/year.component.html","../../src/lib/components/year/year.component.ts","../../src/lib/components/calendar/calendar.component.html","../../src/lib/components/calendar/calendar.component.ts","../../src/lib/calendar.module.ts","../../src/acpaas-ui-ngx-calendar.ts"],"sourcesContent":["export const CALENDAR_VIEW_MONTH = 'CALENDAR_VIEW_MONTH';\nexport const CALENDAR_VIEW_YEAR = 'CALENDAR_VIEW_YEAR';\nexport const CALENDAR_VIEW_DECENNIA = 'CALENDAR_VIEW_DECENNIA';\n\nexport type WeekdayLabelsConfig = string[];\nexport type MonthLabelsConfig = string[];\n\nexport interface DatepickerResult {\n date: Date;\n complete: boolean;\n}\n\nexport interface DateRangeMap {\n before: number[];\n current: number[];\n after: number[];\n}\n","import { Injectable } from '@angular/core';\nimport { DateGenerator, DateHelper, DateRange, Month } from '@acpaas-ui/ngx-utils';\n\nimport { DateRangeMap } from '../types/calendar.types';\n\nexport interface MonthMap {\n [key: number]: Month;\n}\n\n@Injectable()\nexport class CalendarService {\n public months: MonthMap = {};\n private currentYear: number;\n\n getMonth(month: number, year?: number): Month {\n if (year) {\n if (this.currentYear !== year) {\n this.months = {};\n }\n\n this.currentYear = year;\n }\n\n if (this.months.hasOwnProperty(month)) {\n return [...this.months[month]];\n }\n\n const date = new Date();\n date.setMonth(month, 1);\n\n if (year) {\n date.setFullYear(year);\n }\n\n const generatedMonth = DateGenerator.generateMonth(date, { startOfWeek: 1, padding: true, generatePadding: true });\n\n this.months[month] = generatedMonth;\n\n return [...generatedMonth];\n }\n\n getMonthForDate(date: Date): Month {\n return this.getMonth(date.getMonth(), date.getFullYear());\n }\n\n getRangeForDate(date: Date, range: DateRange): number[] {\n return DateGenerator.generateRange(date, range, { startOfWeek: 1 });\n }\n\n getRangesForDate(date: Date, range: DateRange): DateRangeMap {\n const rangeOptions = { startOfWeek: 1 };\n const before = DateHelper.updateMonth(date, date.getMonth() - 1);\n const after = DateHelper.updateMonth(date, date.getMonth() + 1);\n\n return {\n before: DateGenerator.generateRange(before, range, rangeOptions),\n current: DateGenerator.generateRange(date, range, rangeOptions),\n after: DateGenerator.generateRange(after, range, rangeOptions),\n };\n }\n\n getClosestDateForRange(date: Date = new Date(), range: DateRange): Date {\n const dateRange = this.getRangeForDate(date, range);\n\n if (DateHelper.dateOutOfRange(date, dateRange)) {\n return date;\n }\n\n return DateHelper.closestDateForRange(date, dateRange);\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { MonthLabelsConfig, WeekdayLabelsConfig } from './types/calendar.types';\n\nexport const CALENDAR_DEFAULT_WEEKDAY_LABELS = [\n 'Maandag',\n 'Dinsdag',\n 'Woensdag',\n 'Donderdag',\n 'Vrijdag',\n 'Zaterdag',\n 'Zondag',\n];\n\nexport const CALENDAR_DEFAULT_MONTH_LABELS = [\n 'Januari',\n 'Februari',\n 'Maart',\n 'April',\n 'Mei',\n 'Juni',\n 'Juli',\n 'Augustus',\n 'September',\n 'Oktober',\n 'November',\n 'December',\n];\n\nexport const CALENDAR_WEEKDAY_LABELS = new InjectionToken<WeekdayLabelsConfig>('weekdayLabels');\nexport const CALENDAR_MONTH_LABELS = new InjectionToken<MonthLabelsConfig>('monthLabels');\n","<div class=\"m-datepicker__list\">\n <table>\n <tbody class=\"m-datepicker__list-body\">\n <tr *ngFor=\"let group of years\">\n <td *ngFor=\"let year of group\">\n <button\n (click)=\"pickDate($event, year)\"\n [ngClass]=\"{\n 'is-current': year === current,\n 'is-selected': year === selectedYear\n }\"\n type=\"button\"\n >\n {{ year }}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core';\nimport { chunk, get } from 'lodash-es';\n\n@Component({\n selector: 'aui-calendar-decennia',\n templateUrl: './decennia.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalendarDecenniaComponent implements OnInit, OnChanges {\n @Input() selectedDate: Date;\n @Input() activeDate: Date;\n @Output() selectDate = new EventEmitter();\n\n public years = [];\n public selectedYear = -1;\n public current = -1;\n\n public ngOnInit() {\n const current = new Date();\n this.current = current.getFullYear();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n const currentValue = get(changes, 'activeDate.currentValue');\n const previousValue = get(changes, 'activeDate.previousValue');\n const currentYear = currentValue instanceof Date ? currentValue.getFullYear() : -1;\n const previousYear = previousValue instanceof Date ? previousValue.getFullYear() : -1;\n const outOfRange = previousYear > currentYear || previousYear + 17 < currentYear;\n\n if (currentYear >= 0 && outOfRange) {\n this.updateYears();\n }\n\n this.selectedYear = this.selectedDate instanceof Date ? this.selectedDate.getFullYear() : -1;\n }\n\n pickDate(event: MouseEvent, date: number) {\n event.stopPropagation();\n\n const selectedDate = new Date(this.activeDate);\n selectedDate.setFullYear(date);\n\n this.selectDate.emit(selectedDate);\n }\n\n private updateYears(): void {\n const years = [];\n const activeYear = this.activeDate.getFullYear();\n\n for (let i = activeYear; i < activeYear + 18; i += 1) {\n years.push(i);\n }\n\n this.years = chunk(years, 3);\n }\n}\n","<div class=\"m-datepicker__grid\">\n <table>\n <thead>\n <tr class=\"m-datepicker__grid-head\">\n <th *ngFor=\"let day of weekdayLabels\" scope=\"col\">\n <span [title]=\"day\" class=\"u-text-capitalize\">{{ day | slice : 0 : 2 }}</span>\n </th>\n </tr>\n </thead>\n\n <tbody class=\"m-datepicker__grid-body\">\n <tr *ngFor=\"let week of dates\">\n <td *ngFor=\"let day of week\">\n <button\n (click)=\"pickDate($event, day)\"\n [disabled]=\"!day.available\"\n [ngClass]=\"{\n 'is-faded': !day.date || day.padding,\n 'is-selected':\n !day.padding &&\n selectedDate &&\n day.date === selectedDay &&\n selectedDay &&\n selectedDate.getFullYear() === activeDate.getFullYear(),\n 'is-current': !day.padding && day.date === current,\n 'is-unavailable': !day.available\n }\"\n type=\"button\"\n >\n {{ day.date }}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Inject,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n} from '@angular/core';\nimport { get } from 'lodash-es';\nimport { DateHelper, DateRange, Day, Month } from '@acpaas-ui/ngx-utils';\nimport { CALENDAR_DEFAULT_WEEKDAY_LABELS, CALENDAR_WEEKDAY_LABELS } from '../../calendar.conf';\nimport { CalendarService } from '../../services/calendar.service';\nimport { DateRangeMap, WeekdayLabelsConfig } from '../../types/calendar.types';\nimport { Interval } from '@acpaas-ui/ngx-utils';\n\n@Component({\n selector: 'aui-calendar-month',\n templateUrl: './month.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalendarMonthComponent implements OnInit, OnChanges {\n @Input() selectedDate: Date;\n @Input() activeDate: Date;\n @Input() range: DateRange;\n @Input()\n interval?: Interval.IInterval<Date>;\n @Input() weekdayLabels: WeekdayLabelsConfig = CALENDAR_DEFAULT_WEEKDAY_LABELS;\n @Output() selectDate = new EventEmitter();\n\n public dates: Month = [];\n public selectedDay = -1;\n public current: number;\n\n constructor(\n @Inject(CALENDAR_WEEKDAY_LABELS) private moduleWeekdayLabels = CALENDAR_DEFAULT_WEEKDAY_LABELS,\n private calendarService: CalendarService\n ) {}\n\n public ngOnInit() {\n this.weekdayLabels = this.weekdayLabels || this.moduleWeekdayLabels;\n }\n\n ngOnChanges(changes: SimpleChanges) {\n const selectedDateChanged = this.hasChanged(changes, 'selectedDate');\n const intervalChanged = !!changes.interval && changes.interval.currentValue !== changes.interval.previousValue;\n const activeDateChanged = this.hasChanged(changes, 'activeDate');\n const monthChanged =\n activeDateChanged &&\n !DateHelper.datesAreEqual([changes.activeDate.currentValue, changes.activeDate.previousValue], 'M');\n const selectedDayChanged = this.selectedDate && this.activeDate.getMonth() === this.selectedDate.getMonth();\n\n this.current = this.getCurrentDate();\n this.selectedDay = selectedDayChanged ? this.selectedDate.getDate() : -1;\n\n let newDates = [];\n\n if (selectedDateChanged || intervalChanged || (activeDateChanged && monthChanged)) {\n newDates = this.calendarService.getMonthForDate(this.activeDate);\n } else {\n return;\n }\n\n const range: DateRangeMap | null = this.calendarService.getRangesForDate(this.activeDate, this.range);\n this.dates = newDates.map((week) =>\n week.map((day) => {\n const currentDate = new Date();\n this.activeDate.setHours(currentDate.getHours(), currentDate.getMinutes(), currentDate.getSeconds());\n const date: Date = new Date(this.activeDate.getFullYear(), this.activeDate.getMonth(), day.date);\n\n if (day.padding) {\n if (day.date > 20) {\n date.setMonth(this.activeDate.getMonth() - 1);\n } else {\n date.setMonth(this.activeDate.getMonth() + 1);\n }\n }\n\n date.setDate(day.date);\n\n const available: boolean =\n this.dayIsAvailableForRange(day, range) && (this.interval ? !this.interval.isInRange(date) : true);\n return {\n ...day,\n available,\n };\n })\n );\n }\n\n pickDate(event: MouseEvent, day: Day): void {\n event.stopPropagation(); // Stop propagation so the modal doesn't close\n\n let selectedDate = new Date(this.activeDate);\n\n if (day.padding) {\n const month = day.date > 20 ? -1 : 1;\n selectedDate = DateHelper.updateMonth(selectedDate, selectedDate.getMonth() + month);\n }\n\n this.selectDate.emit(DateHelper.updateDate(selectedDate, day.date));\n }\n\n private hasChanged(changes: SimpleChanges, prop: string): boolean {\n const current = get(changes, `${prop}.currentValue`);\n const previous = get(changes, `${prop}.previousValue`);\n const currentValue = current instanceof Date ? current.valueOf() : 0;\n const previousValue = previous instanceof Date ? previous.valueOf() : 0;\n\n return !!currentValue && currentValue !== previousValue;\n }\n\n private getCurrentDate(): number {\n const current = new Date();\n const monthHasChanged = !DateHelper.datesAreEqual([this.activeDate, current], ['M', 'Y']);\n\n return monthHasChanged ? -1 : current.getDate();\n }\n\n private dayIsAvailableForRange(day: Day, range: DateRangeMap): boolean {\n if (!range) {\n return true;\n }\n\n let dateRange = range.current;\n\n if (day.padding) {\n dateRange = day.date > 20 ? range.before : range.after;\n }\n\n return dateRange.indexOf(day.date) < 0;\n }\n}\n","<div class=\"m-datepicker__list\">\n <table>\n <tbody class=\"m-datepicker__list-body\">\n <tr *ngFor=\"let group of months\">\n <td *ngFor=\"let month of group\">\n <button\n (click)=\"pickDate($event, month)\"\n [ngClass]=\"{\n 'is-current': month === current,\n 'is-selected': month === monthLabels[selectedMonth]\n }\"\n type=\"button\"\n >\n {{ month | titlecase }}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Inject,\n Input,\n OnChanges,\n Output,\n SimpleChanges,\n} from '@angular/core';\nimport { chunk, get } from 'lodash-es';\n\nimport { DateHelper } from '@acpaas-ui/ngx-utils';\n\nimport { CALENDAR_DEFAULT_MONTH_LABELS, CALENDAR_MONTH_LABELS } from '../../calendar.conf';\nimport { MonthLabelsConfig } from '../../types/calendar.types';\n\n@Component({\n selector: 'aui-calendar-year',\n templateUrl: './year.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalendarYearComponent implements OnChanges {\n @Input() selectedDate: Date;\n @Input() activeDate: Date;\n @Input() monthLabels: MonthLabelsConfig = CALENDAR_DEFAULT_MONTH_LABELS;\n @Output() selectDate = new EventEmitter();\n\n public selectedMonth = -1;\n public current = '';\n public months: Array<string[]> = [];\n\n constructor(@Inject(CALENDAR_MONTH_LABELS) public moduleMonthLabels = CALENDAR_DEFAULT_MONTH_LABELS) {}\n\n ngOnChanges(changes: SimpleChanges) {\n const currentValue = get(changes, 'activeDate.currentValue');\n const currentYear = currentValue instanceof Date ? currentValue.getFullYear() : -1;\n const selectedMonthChanged = this.selectedDate && this.selectedDate.getFullYear() === this.activeDate.getFullYear();\n const current = new Date();\n\n this.current = currentYear === current.getFullYear() ? this.monthLabels[current.getMonth()] : '';\n\n this.selectedMonth = selectedMonthChanged ? this.selectedDate.getMonth() : -1;\n\n if (changes.monthLabels) {\n this.monthLabels = this.monthLabels || this.moduleMonthLabels;\n this.months = chunk(this.monthLabels, 2);\n }\n }\n\n pickDate(event: MouseEvent, date: string) {\n event.stopPropagation();\n\n let selectedDate = new Date(this.activeDate);\n selectedDate = DateHelper.updateMonth(selectedDate, this.monthLabels.indexOf(date));\n\n this.selectDate.emit(selectedDate);\n }\n}\n","<div class=\"m-datepicker__nav\">\n <button (click)=\"switchView()\" class=\"m-datepicker__nav-title\" type=\"button\">\n {{ headerLabel | titlecase }}\n <aui-icon name=\"ai-arrow-down-1\" />\n </button>\n\n <div class=\"m-datepicker__nav-pagination\">\n <button\n (click)=\"updateActiveDate(-1)\"\n [attr.aria-label]=\"ariaPreviousLabel\"\n class=\"a-button a-button--text a-button--primary has-icon\"\n type=\"button\"\n >\n <aui-icon name=\"ai-arrow-left-1\"></aui-icon>\n </button>\n <button\n (click)=\"updateActiveDate(1)\"\n [attr.aria-label]=\"ariaNextLabel\"\n class=\"a-button a-button--text a-button--primary has-icon\"\n type=\"button\"\n >\n <aui-icon name=\"ai-arrow-right-1\"></aui-icon>\n </button>\n </div>\n</div>\n<aui-calendar-month\n (selectDate)=\"pickDate($event)\"\n *ngIf=\"activeView === CALENDAR_VIEW_MONTH\"\n [activeDate]=\"activeDate\"\n [range]=\"range\"\n [interval]=\"interval\"\n [selectedDate]=\"selectedDate\"\n [weekdayLabels]=\"weekdayLabels\"\n></aui-calendar-month>\n<aui-calendar-year\n (selectDate)=\"pickDate($event)\"\n *ngIf=\"activeView === CALENDAR_VIEW_YEAR\"\n [activeDate]=\"activeDate\"\n [monthLabels]=\"monthLabels\"\n [selectedDate]=\"selectedDate\"\n></aui-calendar-year>\n<aui-calendar-decennia\n (selectDate)=\"pickDate($event)\"\n *ngIf=\"activeView === CALENDAR_VIEW_DECENNIA\"\n [activeDate]=\"activeDate\"\n [selectedDate]=\"selectedDate\"\n></aui-calendar-decennia>\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n} from '@angular/core';\n\nimport { DateHelper, DateRange } from '@acpaas-ui/ngx-utils';\n\nimport {\n CALENDAR_DEFAULT_MONTH_LABELS,\n CALENDAR_DEFAULT_WEEKDAY_LABELS,\n CALENDAR_MONTH_LABELS,\n CALENDAR_WEEKDAY_LABELS,\n} from '../../calendar.conf';\nimport {\n CALENDAR_VIEW_DECENNIA,\n CALENDAR_VIEW_MONTH,\n CALENDAR_VIEW_YEAR,\n MonthLabelsConfig,\n WeekdayLabelsConfig,\n} from '../../types/calendar.types';\nimport { CalendarService } from '../../services/calendar.service';\nimport { Interval } from '@acpaas-ui/ngx-utils';\n\n@Component({\n selector: 'aui-calendar',\n templateUrl: './calendar.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalendarComponent implements OnInit, OnChanges {\n @HostBinding('attr.role') role = 'application';\n @HostBinding('attr.aria-hidden') ariahidden = 'false';\n\n @Input() ariaPreviousLabels = ['Ga naar vorige maand', 'Ga naar vorig jaar', 'Ga naar vorige 18 jaren'];\n @Input() ariaNextLabels = ['Ga naar volgende maand', 'Ga naar volgend jaar', 'Ga naar volgende 18 jaren'];\n\n @Input() selectedDate: Date;\n @Input() range: DateRange;\n @Input()\n interval?: Interval.IInterval<Date>;\n @Input() weekdayLabels: WeekdayLabelsConfig;\n @Input() monthLabels: MonthLabelsConfig;\n @Output() selectDate = new EventEmitter();\n\n public CALENDAR_VIEW_MONTH = CALENDAR_VIEW_MONTH;\n public CALENDAR_VIEW_YEAR = CALENDAR_VIEW_YEAR;\n public CALENDAR_VIEW_DECENNIA = CALENDAR_VIEW_DECENNIA;\n public activeDate: Date;\n public activeView: string = CALENDAR_VIEW_MONTH;\n public headerLabel = '';\n public ariaPreviousLabel = this.ariaPreviousLabels[0];\n public ariaNextLabel = this.ariaNextLabels[0];\n\n constructor(\n @Inject(CALENDAR_MONTH_LABELS) public moduleMonthLabels = CALENDAR_DEFAULT_MONTH_LABELS,\n @Inject(CALENDAR_WEEKDAY_LABELS) public moduleWeekdayLabels = CALENDAR_DEFAULT_WEEKDAY_LABELS,\n private calendarService: CalendarService\n ) {}\n\n public ngOnInit() {\n this.initControl();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n const selectedDate = changes.selectedDate && changes.selectedDate.currentValue ? changes.selectedDate : null;\n\n if (\n typeof this.monthLabels !== 'undefined' &&\n selectedDate &&\n !DateHelper.datesAreEqual(selectedDate.currentValue, selectedDate.previousValue)\n ) {\n this.activeDate = this.selectedDate;\n this.updateHeaderLabel();\n } else {\n let activeDateToSet = new Date();\n\n if (this.interval && this.interval.isInRange(activeDateToSet)) {\n activeDateToSet = this.interval.min;\n }\n\n this.activeDate = DateHelper.parseDate(activeDateToSet);\n\n this.initControl();\n }\n }\n\n updateActiveDate(factor: number = 0): void {\n const activeDate = this.activeDate\n ? new Date(this.activeDate.getFullYear(), this.activeDate.getMonth(), 1)\n : new Date();\n\n switch (this.activeView) {\n case CALENDAR_VIEW_MONTH:\n activeDate.setMonth(activeDate.getMonth() + factor);\n break;\n case CALENDAR_VIEW_YEAR:\n activeDate.setFullYear(activeDate.getFullYear() + factor);\n break;\n case CALENDAR_VIEW_DECENNIA:\n activeDate.setFullYear(activeDate.getFullYear() + 18 * factor);\n break;\n }\n\n this.activeDate = activeDate;\n this.updateHeaderLabel();\n }\n\n switchView(factor: number = 1): void {\n const views = [CALENDAR_VIEW_MONTH, CALENDAR_VIEW_YEAR, CALENDAR_VIEW_DECENNIA];\n\n const currView = views.indexOf(this.activeView);\n let nextView = currView + factor >= views.length ? 0 : currView + factor;\n nextView = nextView < 0 ? views.length - 1 : nextView;\n\n this.activeView = views[nextView];\n\n // reset activeDate when returning to month view without model update\n if (this.selectedDate && nextView === 0 && factor === 1) {\n this.activeDate = this.selectedDate;\n }\n\n this.updateHeaderLabel();\n }\n\n updateHeaderLabel(): void {\n switch (this.activeView) {\n case CALENDAR_VIEW_MONTH:\n this.headerLabel = this.monthLabels[this.activeDate.getMonth()] + ' ' + this.activeDate.getFullYear();\n this.ariaPreviousLabel = this.ariaPreviousLabels[0];\n this.ariaNextLabel = this.ariaNextLabels[0];\n break;\n case CALENDAR_VIEW_YEAR:\n this.headerLabel = String(this.activeDate.getFullYear());\n this.ariaPreviousLabel = this.ariaPreviousLabels[1];\n this.ariaNextLabel = this.ariaNextLabels[1];\n break;\n case CALENDAR_VIEW_DECENNIA:\n const startYear = this.activeDate.getFullYear();\n this.headerLabel = `${startYear} - ${startYear + 17}`;\n this.ariaPreviousLabel = this.ariaPreviousLabels[2];\n this.ariaNextLabel = this.ariaNextLabels[2];\n break;\n }\n }\n\n pickDate(date: Date): void {\n const complete = this.activeView === CALENDAR_VIEW_MONTH;\n\n this.selectDate.emit({\n date,\n complete,\n });\n\n if (!complete) {\n this.activeDate = date;\n this.switchView(-1);\n }\n }\n\n private initControl(): void {\n this.weekdayLabels = this.weekdayLabels || this.moduleWeekdayLabels;\n this.monthLabels = this.monthLabels || this.moduleMonthLabels;\n this.activeDate = this.calendarService.getClosestDateForRange(this.activeDate, this.range);\n if (this.selectedDate) {\n this.activeDate = this.selectedDate;\n this.updateActiveDate();\n }\n this.updateHeaderLabel();\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { IconModule } from '@acpaas-ui/ngx-icon';\nimport {\n CALENDAR_DEFAULT_MONTH_LABELS,\n CALENDAR_DEFAULT_WEEKDAY_LABELS,\n CALENDAR_MONTH_LABELS,\n CALENDAR_WEEKDAY_LABELS,\n} from './calendar.conf';\nimport { MonthLabelsConfig, WeekdayLabelsConfig } from './types/calendar.types';\nimport { CalendarService } from './services/calendar.service';\nimport { CalendarComponent } from './components/calendar/calendar.component';\nimport { CalendarDecenniaComponent } from './components/decennia/decennia.component';\nimport { CalendarMonthComponent } from './components/month/month.component';\nimport { CalendarYearComponent } from './components/year/year.component';\n\n@NgModule({\n imports: [CommonModule, IconModule],\n declarations: [\n CalendarComponent,\n CalendarDecenniaComponent,\n CalendarMonthComponent,\n CalendarYearComponent,\n ],\n exports: [\n CalendarComponent,\n CalendarDecenniaComponent,\n CalendarMonthComponent,\n CalendarYearComponent,\n ],\n providers: [\n CalendarService,\n {\n provide: CALENDAR_WEEKDAY_LABELS,\n useValue: CALENDAR_DEFAULT_WEEKDAY_LABELS,\n },\n { provide: CALENDAR_MONTH_LABELS, useValue: CALENDAR_DEFAULT_MONTH_LABELS },\n ],\n})\nexport class CalendarModule {\n static forChild(\n weekdayLabels: WeekdayLabelsConfig,\n monthLabels: MonthLabelsConfig\n ): ModuleWithProviders<any> {\n return {\n ngModule: CalendarModule,\n providers: [\n CalendarService,\n { provide: CALENDAR_WEEKDAY_LABELS, useValue: weekdayLabels },\n { provide: CALENDAR_MONTH_LABELS, useValue: monthLabels },\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["_c0","i1.CalendarService"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acpaas-ui-ngx-calendar.mjs","sources":["../../src/lib/types/calendar.types.ts","../../src/lib/services/calendar.service.ts","../../src/lib/calendar.conf.ts","../../src/lib/components/decennia/decennia.component.html","../../src/lib/components/decennia/decennia.component.ts","../../src/lib/components/month/month.component.html","../../src/lib/components/month/month.component.ts","../../src/lib/components/year/year.component.html","../../src/lib/components/year/year.component.ts","../../src/lib/components/calendar/calendar.component.html","../../src/lib/components/calendar/calendar.component.ts","../../src/lib/calendar.module.ts","../../src/acpaas-ui-ngx-calendar.ts"],"sourcesContent":["export const CALENDAR_VIEW_MONTH = 'CALENDAR_VIEW_MONTH';\nexport const CALENDAR_VIEW_YEAR = 'CALENDAR_VIEW_YEAR';\nexport const CALENDAR_VIEW_DECENNIA = 'CALENDAR_VIEW_DECENNIA';\n\nexport type WeekdayLabelsConfig = string[];\nexport type MonthLabelsConfig = string[];\n\nexport interface DatepickerResult {\n date: Date;\n complete: boolean;\n}\n\nexport interface DateRangeMap {\n before: number[];\n current: number[];\n after: number[];\n}\n","import { Injectable } from '@angular/core';\nimport { DateGenerator, DateHelper, DateRange, Month } from '@acpaas-ui/ngx-utils';\n\nimport { DateRangeMap } from '../types/calendar.types';\n\nexport interface MonthMap {\n [key: number]: Month;\n}\n\n@Injectable()\nexport class CalendarService {\n public months: MonthMap = {};\n private currentYear: number;\n\n getMonth(month: number, year?: number): Month {\n if (year) {\n if (this.currentYear !== year) {\n this.months = {};\n }\n\n this.currentYear = year;\n }\n\n if (this.months.hasOwnProperty(month)) {\n return [...this.months[month]];\n }\n\n const date = new Date();\n date.setMonth(month, 1);\n\n if (year) {\n date.setFullYear(year);\n }\n\n const generatedMonth = DateGenerator.generateMonth(date, { startOfWeek: 1, padding: true, generatePadding: true });\n\n this.months[month] = generatedMonth;\n\n return [...generatedMonth];\n }\n\n getMonthForDate(date: Date): Month {\n return this.getMonth(date.getMonth(), date.getFullYear());\n }\n\n getRangeForDate(date: Date, range: DateRange): number[] {\n return DateGenerator.generateRange(date, range, { startOfWeek: 1 });\n }\n\n getRangesForDate(date: Date, range: DateRange): DateRangeMap {\n const rangeOptions = { startOfWeek: 1 };\n const before = DateHelper.updateMonth(date, date.getMonth() - 1);\n const after = DateHelper.updateMonth(date, date.getMonth() + 1);\n\n return {\n before: DateGenerator.generateRange(before, range, rangeOptions),\n current: DateGenerator.generateRange(date, range, rangeOptions),\n after: DateGenerator.generateRange(after, range, rangeOptions),\n };\n }\n\n getClosestDateForRange(date: Date = new Date(), range: DateRange): Date {\n const dateRange = this.getRangeForDate(date, range);\n\n if (DateHelper.dateOutOfRange(date, dateRange)) {\n return date;\n }\n\n return DateHelper.closestDateForRange(date, dateRange);\n }\n}\n","import { InjectionToken } from '@angular/core';\nimport { MonthLabelsConfig, WeekdayLabelsConfig } from './types/calendar.types';\n\nexport const CALENDAR_DEFAULT_WEEKDAY_LABELS = [\n 'Maandag',\n 'Dinsdag',\n 'Woensdag',\n 'Donderdag',\n 'Vrijdag',\n 'Zaterdag',\n 'Zondag',\n];\n\nexport const CALENDAR_DEFAULT_MONTH_LABELS = [\n 'Januari',\n 'Februari',\n 'Maart',\n 'April',\n 'Mei',\n 'Juni',\n 'Juli',\n 'Augustus',\n 'September',\n 'Oktober',\n 'November',\n 'December',\n];\n\nexport const CALENDAR_WEEKDAY_LABELS = new InjectionToken<WeekdayLabelsConfig>('weekdayLabels');\nexport const CALENDAR_MONTH_LABELS = new InjectionToken<MonthLabelsConfig>('monthLabels');\n","<div class=\"m-datepicker__list\">\n <table>\n <tbody class=\"m-datepicker__list-body\">\n <tr *ngFor=\"let group of years\">\n <td *ngFor=\"let year of group\">\n <button\n (click)=\"pickDate($event, year)\"\n [ngClass]=\"{\n 'is-current': year === current,\n 'is-selected': year === selectedYear\n }\"\n type=\"button\"\n >\n {{ year }}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core';\nimport { chunk, get } from 'lodash-es';\n\n@Component({\n selector: 'aui-calendar-decennia',\n templateUrl: './decennia.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalendarDecenniaComponent implements OnInit, OnChanges {\n @Input() selectedDate: Date;\n @Input() activeDate: Date;\n @Output() selectDate = new EventEmitter();\n\n public years = [];\n public selectedYear = -1;\n public current = -1;\n\n public ngOnInit() {\n const current = new Date();\n this.current = current.getFullYear();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n const currentValue = get(changes, 'activeDate.currentValue');\n const previousValue = get(changes, 'activeDate.previousValue');\n const currentYear = currentValue instanceof Date ? currentValue.getFullYear() : -1;\n const previousYear = previousValue instanceof Date ? previousValue.getFullYear() : -1;\n const outOfRange = previousYear > currentYear || previousYear + 17 < currentYear;\n\n if (currentYear >= 0 && outOfRange) {\n this.updateYears();\n }\n\n this.selectedYear = this.selectedDate instanceof Date ? this.selectedDate.getFullYear() : -1;\n }\n\n pickDate(event: MouseEvent, date: number) {\n event.stopPropagation();\n\n const selectedDate = new Date(this.activeDate);\n selectedDate.setFullYear(date);\n\n this.selectDate.emit(selectedDate);\n }\n\n private updateYears(): void {\n const years = [];\n const activeYear = this.activeDate.getFullYear();\n\n for (let i = activeYear; i < activeYear + 18; i += 1) {\n years.push(i);\n }\n\n this.years = chunk(years, 3);\n }\n}\n","<div class=\"m-datepicker__grid\">\n <table>\n <thead>\n <tr class=\"m-datepicker__grid-head\">\n <th *ngFor=\"let day of weekdayLabels\" scope=\"col\">\n <span [title]=\"day\" class=\"u-text-capitalize\">{{ day | slice : 0 : 2 }}</span>\n </th>\n </tr>\n </thead>\n\n <tbody class=\"m-datepicker__grid-body\">\n <tr *ngFor=\"let week of dates\">\n <td *ngFor=\"let day of week\">\n <button\n (click)=\"pickDate($event, day)\"\n [disabled]=\"!day.available\"\n [ngClass]=\"{\n 'is-faded': !day.date || day.padding,\n 'is-selected':\n !day.padding &&\n selectedDate &&\n day.date === selectedDay &&\n selectedDay &&\n selectedDate.getFullYear() === activeDate.getFullYear(),\n 'is-current': !day.padding && day.date === current,\n 'is-unavailable': !day.available\n }\"\n type=\"button\"\n >\n {{ day.date }}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Inject,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n} from '@angular/core';\nimport { get } from 'lodash-es';\nimport { DateHelper, DateRange, Day, Month } from '@acpaas-ui/ngx-utils';\nimport { CALENDAR_DEFAULT_WEEKDAY_LABELS, CALENDAR_WEEKDAY_LABELS } from '../../calendar.conf';\nimport { CalendarService } from '../../services/calendar.service';\nimport { DateRangeMap, WeekdayLabelsConfig } from '../../types/calendar.types';\nimport { Interval } from '@acpaas-ui/ngx-utils';\n\n@Component({\n selector: 'aui-calendar-month',\n templateUrl: './month.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalendarMonthComponent implements OnInit, OnChanges {\n @Input() selectedDate: Date;\n @Input() activeDate: Date;\n @Input() range: DateRange;\n @Input()\n interval?: Interval.IInterval<Date>;\n @Input() weekdayLabels: WeekdayLabelsConfig = CALENDAR_DEFAULT_WEEKDAY_LABELS;\n @Output() selectDate = new EventEmitter();\n\n public dates: Month = [];\n public selectedDay = -1;\n public current: number;\n\n constructor(\n @Inject(CALENDAR_WEEKDAY_LABELS) private moduleWeekdayLabels = CALENDAR_DEFAULT_WEEKDAY_LABELS,\n private calendarService: CalendarService\n ) {}\n\n public ngOnInit() {\n this.weekdayLabels = this.weekdayLabels || this.moduleWeekdayLabels;\n }\n\n ngOnChanges(changes: SimpleChanges) {\n const selectedDateChanged = this.hasChanged(changes, 'selectedDate');\n const intervalChanged = !!changes.interval && changes.interval.currentValue !== changes.interval.previousValue;\n const activeDateChanged = this.hasChanged(changes, 'activeDate');\n const monthChanged =\n activeDateChanged &&\n !DateHelper.datesAreEqual([changes.activeDate.currentValue, changes.activeDate.previousValue], 'M');\n const selectedDayChanged = this.selectedDate && this.activeDate.getMonth() === this.selectedDate.getMonth();\n\n this.current = this.getCurrentDate();\n this.selectedDay = selectedDayChanged ? this.selectedDate.getDate() : -1;\n\n let newDates = [];\n\n if (selectedDateChanged || intervalChanged || (activeDateChanged && monthChanged)) {\n newDates = this.calendarService.getMonthForDate(this.activeDate);\n } else {\n return;\n }\n\n const range: DateRangeMap | null = this.calendarService.getRangesForDate(this.activeDate, this.range);\n this.dates = newDates.map((week) =>\n week.map((day) => {\n const currentDate = new Date();\n this.activeDate.setHours(currentDate.getHours(), currentDate.getMinutes(), currentDate.getSeconds());\n const date: Date = new Date(this.activeDate.getFullYear(), this.activeDate.getMonth(), day.date);\n\n if (day.padding) {\n if (day.date > 20) {\n date.setMonth(this.activeDate.getMonth() - 1);\n } else {\n date.setMonth(this.activeDate.getMonth() + 1);\n }\n }\n\n date.setDate(day.date);\n\n const available: boolean =\n this.dayIsAvailableForRange(day, range) && (this.interval ? !this.interval.isInRange(date) : true);\n return {\n ...day,\n available,\n };\n })\n );\n }\n\n pickDate(event: MouseEvent, day: Day): void {\n event.stopPropagation(); // Stop propagation so the modal doesn't close\n\n let selectedDate = new Date(this.activeDate);\n\n if (day.padding) {\n const month = day.date > 20 ? -1 : 1;\n selectedDate = DateHelper.updateMonth(selectedDate, selectedDate.getMonth() + month);\n }\n\n this.selectDate.emit(DateHelper.updateDate(selectedDate, day.date));\n }\n\n private hasChanged(changes: SimpleChanges, prop: string): boolean {\n const current = get(changes, `${prop}.currentValue`);\n const previous = get(changes, `${prop}.previousValue`);\n const currentValue = current instanceof Date ? current.valueOf() : 0;\n const previousValue = previous instanceof Date ? previous.valueOf() : 0;\n\n return !!currentValue && currentValue !== previousValue;\n }\n\n private getCurrentDate(): number {\n const current = new Date();\n const monthHasChanged = !DateHelper.datesAreEqual([this.activeDate, current], ['M', 'Y']);\n\n return monthHasChanged ? -1 : current.getDate();\n }\n\n private dayIsAvailableForRange(day: Day, range: DateRangeMap): boolean {\n if (!range) {\n return true;\n }\n\n let dateRange = range.current;\n\n if (day.padding) {\n dateRange = day.date > 20 ? range.before : range.after;\n }\n\n return dateRange.indexOf(day.date) < 0;\n }\n}\n","<div class=\"m-datepicker__list\">\n <table>\n <tbody class=\"m-datepicker__list-body\">\n <tr *ngFor=\"let group of months\">\n <td *ngFor=\"let month of group\">\n <button\n (click)=\"pickDate($event, month)\"\n [ngClass]=\"{\n 'is-current': month === current,\n 'is-selected': month === monthLabels[selectedMonth]\n }\"\n type=\"button\"\n >\n {{ month | titlecase }}\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Inject,\n Input,\n OnChanges,\n Output,\n SimpleChanges,\n} from '@angular/core';\nimport { chunk, get } from 'lodash-es';\n\nimport { DateHelper } from '@acpaas-ui/ngx-utils';\n\nimport { CALENDAR_DEFAULT_MONTH_LABELS, CALENDAR_MONTH_LABELS } from '../../calendar.conf';\nimport { MonthLabelsConfig } from '../../types/calendar.types';\n\n@Component({\n selector: 'aui-calendar-year',\n templateUrl: './year.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalendarYearComponent implements OnChanges {\n @Input() selectedDate: Date;\n @Input() activeDate: Date;\n @Input() monthLabels: MonthLabelsConfig = CALENDAR_DEFAULT_MONTH_LABELS;\n @Output() selectDate = new EventEmitter();\n\n public selectedMonth = -1;\n public current = '';\n public months: Array<string[]> = [];\n\n constructor(@Inject(CALENDAR_MONTH_LABELS) public moduleMonthLabels = CALENDAR_DEFAULT_MONTH_LABELS) {}\n\n ngOnChanges(changes: SimpleChanges) {\n const currentValue = get(changes, 'activeDate.currentValue');\n const currentYear = currentValue instanceof Date ? currentValue.getFullYear() : -1;\n const selectedMonthChanged = this.selectedDate && this.selectedDate.getFullYear() === this.activeDate.getFullYear();\n const current = new Date();\n\n this.current = currentYear === current.getFullYear() ? this.monthLabels[current.getMonth()] : '';\n\n this.selectedMonth = selectedMonthChanged ? this.selectedDate.getMonth() : -1;\n\n if (changes.monthLabels) {\n this.monthLabels = this.monthLabels || this.moduleMonthLabels;\n this.months = chunk(this.monthLabels, 2);\n }\n }\n\n pickDate(event: MouseEvent, date: string) {\n event.stopPropagation();\n\n let selectedDate = new Date(this.activeDate);\n selectedDate = DateHelper.updateMonth(selectedDate, this.monthLabels.indexOf(date));\n\n this.selectDate.emit(selectedDate);\n }\n}\n","<div class=\"m-datepicker__nav\">\n <button (click)=\"switchView()\" class=\"m-datepicker__nav-title\" type=\"button\">\n {{ headerLabel | titlecase }}\n <aui-icon name=\"ai-arrow-down-1\" />\n </button>\n\n <div class=\"m-datepicker__nav-pagination\">\n <button\n (click)=\"updateActiveDate(-1)\"\n [attr.aria-label]=\"ariaPreviousLabel\"\n class=\"a-button a-button--text a-button--primary has-icon\"\n type=\"button\"\n >\n <aui-icon name=\"ai-arrow-left-1\"></aui-icon>\n </button>\n <button\n (click)=\"updateActiveDate(1)\"\n [attr.aria-label]=\"ariaNextLabel\"\n class=\"a-button a-button--text a-button--primary has-icon\"\n type=\"button\"\n >\n <aui-icon name=\"ai-arrow-right-1\"></aui-icon>\n </button>\n </div>\n</div>\n<aui-calendar-month\n (selectDate)=\"pickDate($event)\"\n *ngIf=\"activeView === CALENDAR_VIEW_MONTH\"\n [activeDate]=\"activeDate\"\n [range]=\"range\"\n [interval]=\"interval\"\n [selectedDate]=\"selectedDate\"\n [weekdayLabels]=\"weekdayLabels\"\n></aui-calendar-month>\n<aui-calendar-year\n (selectDate)=\"pickDate($event)\"\n *ngIf=\"activeView === CALENDAR_VIEW_YEAR\"\n [activeDate]=\"activeDate\"\n [monthLabels]=\"monthLabels\"\n [selectedDate]=\"selectedDate\"\n></aui-calendar-year>\n<aui-calendar-decennia\n (selectDate)=\"pickDate($event)\"\n *ngIf=\"activeView === CALENDAR_VIEW_DECENNIA\"\n [activeDate]=\"activeDate\"\n [selectedDate]=\"selectedDate\"\n></aui-calendar-decennia>\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Inject,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n} from '@angular/core';\n\nimport { DateHelper, DateRange } from '@acpaas-ui/ngx-utils';\n\nimport {\n CALENDAR_DEFAULT_MONTH_LABELS,\n CALENDAR_DEFAULT_WEEKDAY_LABELS,\n CALENDAR_MONTH_LABELS,\n CALENDAR_WEEKDAY_LABELS,\n} from '../../calendar.conf';\nimport {\n CALENDAR_VIEW_DECENNIA,\n CALENDAR_VIEW_MONTH,\n CALENDAR_VIEW_YEAR,\n MonthLabelsConfig,\n WeekdayLabelsConfig,\n} from '../../types/calendar.types';\nimport { CalendarService } from '../../services/calendar.service';\nimport { Interval } from '@acpaas-ui/ngx-utils';\n\n@Component({\n selector: 'aui-calendar',\n templateUrl: './calendar.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalendarComponent implements OnInit, OnChanges {\n @HostBinding('attr.role') role = 'application';\n @HostBinding('attr.aria-hidden') ariahidden = 'false';\n\n @Input() ariaPreviousLabels = ['Ga naar vorige maand', 'Ga naar vorig jaar', 'Ga naar vorige 18 jaren'];\n @Input() ariaNextLabels = ['Ga naar volgende maand', 'Ga naar volgend jaar', 'Ga naar volgende 18 jaren'];\n\n @Input() selectedDate: Date;\n @Input() range: DateRange;\n @Input()\n interval?: Interval.IInterval<Date>;\n @Input() weekdayLabels: WeekdayLabelsConfig;\n @Input() monthLabels: MonthLabelsConfig;\n @Output() selectDate = new EventEmitter();\n\n public CALENDAR_VIEW_MONTH = CALENDAR_VIEW_MONTH;\n public CALENDAR_VIEW_YEAR = CALENDAR_VIEW_YEAR;\n public CALENDAR_VIEW_DECENNIA = CALENDAR_VIEW_DECENNIA;\n public activeDate: Date;\n public activeView: string = CALENDAR_VIEW_MONTH;\n public headerLabel = '';\n public ariaPreviousLabel = this.ariaPreviousLabels[0];\n public ariaNextLabel = this.ariaNextLabels[0];\n\n constructor(\n @Inject(CALENDAR_MONTH_LABELS) public moduleMonthLabels = CALENDAR_DEFAULT_MONTH_LABELS,\n @Inject(CALENDAR_WEEKDAY_LABELS) public moduleWeekdayLabels = CALENDAR_DEFAULT_WEEKDAY_LABELS,\n private calendarService: CalendarService\n ) {}\n\n public ngOnInit() {\n this.initControl();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n const selectedDate = changes.selectedDate && changes.selectedDate.currentValue ? changes.selectedDate : null;\n\n if (\n typeof this.monthLabels !== 'undefined' &&\n selectedDate &&\n !DateHelper.datesAreEqual(selectedDate.currentValue, selectedDate.previousValue)\n ) {\n this.activeDate = this.selectedDate;\n this.updateHeaderLabel();\n } else {\n let activeDateToSet = new Date();\n\n if (this.interval && this.interval.isInRange(activeDateToSet)) {\n activeDateToSet = this.interval.min;\n }\n\n this.activeDate = DateHelper.parseDate(activeDateToSet);\n\n this.initControl();\n }\n }\n\n updateActiveDate(factor: number = 0): void {\n const activeDate = this.activeDate\n ? new Date(this.activeDate.getFullYear(), this.activeDate.getMonth(), 1)\n : new Date();\n\n switch (this.activeView) {\n case CALENDAR_VIEW_MONTH:\n activeDate.setMonth(activeDate.getMonth() + factor);\n break;\n case CALENDAR_VIEW_YEAR:\n activeDate.setFullYear(activeDate.getFullYear() + factor);\n break;\n case CALENDAR_VIEW_DECENNIA:\n activeDate.setFullYear(activeDate.getFullYear() + 18 * factor);\n break;\n }\n\n this.activeDate = activeDate;\n this.updateHeaderLabel();\n }\n\n switchView(factor: number = 1): void {\n const views = [CALENDAR_VIEW_MONTH, CALENDAR_VIEW_YEAR, CALENDAR_VIEW_DECENNIA];\n\n const currView = views.indexOf(this.activeView);\n let nextView = currView + factor >= views.length ? 0 : currView + factor;\n nextView = nextView < 0 ? views.length - 1 : nextView;\n\n this.activeView = views[nextView];\n\n // reset activeDate when returning to month view without model update\n if (this.selectedDate && nextView === 0 && factor === 1) {\n this.activeDate = this.selectedDate;\n }\n\n this.updateHeaderLabel();\n }\n\n updateHeaderLabel(): void {\n switch (this.activeView) {\n case CALENDAR_VIEW_MONTH:\n this.headerLabel = this.monthLabels[this.activeDate.getMonth()] + ' ' + this.activeDate.getFullYear();\n this.ariaPreviousLabel = this.ariaPreviousLabels[0];\n this.ariaNextLabel = this.ariaNextLabels[0];\n break;\n case CALENDAR_VIEW_YEAR:\n this.headerLabel = String(this.activeDate.getFullYear());\n this.ariaPreviousLabel = this.ariaPreviousLabels[1];\n this.ariaNextLabel = this.ariaNextLabels[1];\n break;\n case CALENDAR_VIEW_DECENNIA:\n const startYear = this.activeDate.getFullYear();\n this.headerLabel = `${startYear} - ${startYear + 17}`;\n this.ariaPreviousLabel = this.ariaPreviousLabels[2];\n this.ariaNextLabel = this.ariaNextLabels[2];\n break;\n }\n }\n\n pickDate(date: Date): void {\n const complete = this.activeView === CALENDAR_VIEW_MONTH;\n\n this.selectDate.emit({\n date,\n complete,\n });\n\n if (!complete) {\n this.activeDate = date;\n this.switchView(-1);\n }\n }\n\n private initControl(): void {\n this.weekdayLabels = this.weekdayLabels || this.moduleWeekdayLabels;\n this.monthLabels = this.monthLabels || this.moduleMonthLabels;\n this.activeDate = this.calendarService.getClosestDateForRange(this.activeDate, this.range);\n if (this.selectedDate) {\n this.activeDate = this.selectedDate;\n this.updateActiveDate();\n }\n this.updateHeaderLabel();\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { IconModule } from '@acpaas-ui/ngx-icon';\nimport {\n CALENDAR_DEFAULT_MONTH_LABELS,\n CALENDAR_DEFAULT_WEEKDAY_LABELS,\n CALENDAR_MONTH_LABELS,\n CALENDAR_WEEKDAY_LABELS,\n} from './calendar.conf';\nimport { MonthLabelsConfig, WeekdayLabelsConfig } from './types/calendar.types';\nimport { CalendarService } from './services/calendar.service';\nimport { CalendarComponent } from './components/calendar/calendar.component';\nimport { CalendarDecenniaComponent } from './components/decennia/decennia.component';\nimport { CalendarMonthComponent } from './components/month/month.component';\nimport { CalendarYearComponent } from './components/year/year.component';\n\n@NgModule({\n imports: [CommonModule, IconModule],\n declarations: [\n CalendarComponent,\n CalendarDecenniaComponent,\n CalendarMonthComponent,\n CalendarYearComponent,\n ],\n exports: [\n CalendarComponent,\n CalendarDecenniaComponent,\n CalendarMonthComponent,\n CalendarYearComponent,\n ],\n providers: [\n CalendarService,\n {\n provide: CALENDAR_WEEKDAY_LABELS,\n useValue: CALENDAR_DEFAULT_WEEKDAY_LABELS,\n },\n { provide: CALENDAR_MONTH_LABELS, useValue: CALENDAR_DEFAULT_MONTH_LABELS },\n ],\n})\nexport class CalendarModule {\n static forChild(\n weekdayLabels: WeekdayLabelsConfig,\n monthLabels: MonthLabelsConfig\n ): ModuleWithProviders<CalendarModule> {\n return {\n ngModule: CalendarModule,\n providers: [\n CalendarService,\n { provide: CALENDAR_WEEKDAY_LABELS, useValue: weekdayLabels },\n { provide: CALENDAR_MONTH_LABELS, useValue: monthLabels },\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["_c0","i1.CalendarService"],"mappings":"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"}
|
package/lib/calendar.module.d.ts
CHANGED
|
@@ -8,7 +8,7 @@ import * as i4 from "./components/year/year.component";
|
|
|
8
8
|
import * as i5 from "@angular/common";
|
|
9
9
|
import * as i6 from "@acpaas-ui/ngx-icon";
|
|
10
10
|
export declare class CalendarModule {
|
|
11
|
-
static forChild(weekdayLabels: WeekdayLabelsConfig, monthLabels: MonthLabelsConfig): ModuleWithProviders<
|
|
11
|
+
static forChild(weekdayLabels: WeekdayLabelsConfig, monthLabels: MonthLabelsConfig): ModuleWithProviders<CalendarModule>;
|
|
12
12
|
static ɵfac: i0.ɵɵFactoryDeclaration<CalendarModule, never>;
|
|
13
13
|
static ɵmod: i0.ɵɵNgModuleDeclaration<CalendarModule, [typeof i1.CalendarComponent, typeof i2.CalendarDecenniaComponent, typeof i3.CalendarMonthComponent, typeof i4.CalendarYearComponent], [typeof i5.CommonModule, typeof i6.IconModule], [typeof i1.CalendarComponent, typeof i2.CalendarDecenniaComponent, typeof i3.CalendarMonthComponent, typeof i4.CalendarYearComponent]>;
|
|
14
14
|
static ɵinj: i0.ɵɵInjectorDeclaration<CalendarModule>;
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@acpaas-ui/ngx-calendar",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.1.2",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
7
7
|
"dependencies": {
|
|
8
|
-
"@acpaas-ui/ngx-icon": "^6.
|
|
9
|
-
"@acpaas-ui/ngx-utils": "^6.
|
|
8
|
+
"@acpaas-ui/ngx-icon": "^6.1.2",
|
|
9
|
+
"@acpaas-ui/ngx-utils": "^6.1.2",
|
|
10
10
|
"lodash-es": "~4.17.10",
|
|
11
11
|
"tslib": "^2.3.0"
|
|
12
12
|
},
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
"@angular/core": ">=15.2.0",
|
|
16
16
|
"@angular/platform-browser-dynamic": ">=15.2.0"
|
|
17
17
|
},
|
|
18
|
-
"gitHead": "
|
|
18
|
+
"gitHead": "96289cf349ece64174b06679702a1ae55403866e",
|
|
19
19
|
"module": "fesm2015/acpaas-ui-ngx-calendar.mjs",
|
|
20
20
|
"es2020": "fesm2020/acpaas-ui-ngx-calendar.mjs",
|
|
21
21
|
"esm2020": "esm2020/acpaas-ui-ngx-calendar.mjs",
|