@acpaas-ui/ngx-calendar 4.2.0 → 4.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5,18 +5,18 @@
5
5
  }(this, (function (exports, core, jsDateUtils, lodashEs, common) { 'use strict';
6
6
 
7
7
  /*! *****************************************************************************
8
- Copyright (c) Microsoft Corporation. All rights reserved.
9
- Licensed under the Apache License, Version 2.0 (the "License"); you may not use
10
- this file except in compliance with the License. You may obtain a copy of the
11
- License at http://www.apache.org/licenses/LICENSE-2.0
8
+ Copyright (c) Microsoft Corporation.
12
9
 
13
- THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
- KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
15
- WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
16
- MERCHANTABLITY OR NON-INFRINGEMENT.
10
+ Permission to use, copy, modify, and/or distribute this software for any
11
+ purpose with or without fee is hereby granted.
17
12
 
18
- See the Apache Version 2.0 License for specific language governing permissions
19
- and limitations under the License.
13
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
14
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
15
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
16
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
17
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
18
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
19
+ PERFORMANCE OF THIS SOFTWARE.
20
20
  ***************************************************************************** */
21
21
  /* global Reflect, Promise */
22
22
 
@@ -109,8 +109,13 @@
109
109
  }
110
110
  }
111
111
 
112
+ function __createBinding(o, m, k, k2) {
113
+ if (k2 === undefined) k2 = k;
114
+ o[k2] = m[k];
115
+ }
116
+
112
117
  function __exportStar(m, exports) {
113
- for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
118
+ for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) exports[p] = m[p];
114
119
  }
115
120
 
116
121
  function __values(o) {
@@ -472,7 +477,12 @@
472
477
  this.updateHeaderLabel();
473
478
  }
474
479
  else {
475
- this.activeDate = jsDateUtils.DateHelper.parseDate(new Date());
480
+ /** @type {?} */
481
+ var activeDateToSet = new Date();
482
+ if (this.interval && this.interval.isInRange(activeDateToSet)) {
483
+ activeDateToSet = this.interval.min;
484
+ }
485
+ this.activeDate = jsDateUtils.DateHelper.parseDate(activeDateToSet);
476
486
  this.initControl();
477
487
  }
478
488
  };
@@ -814,6 +824,8 @@
814
824
  /** @type {?} */
815
825
  var selectedDateChanged = this.hasChanged(changes, 'selectedDate');
816
826
  /** @type {?} */
827
+ var intervalChanged = !!changes.interval && changes.interval.currentValue !== changes.interval.previousValue;
828
+ /** @type {?} */
817
829
  var activeDateChanged = this.hasChanged(changes, 'activeDate');
818
830
  /** @type {?} */
819
831
  var monthChanged = activeDateChanged && !jsDateUtils.DateHelper.datesAreEqual([
@@ -826,7 +838,7 @@
826
838
  this.selectedDay = selectedDayChanged ? this.selectedDate.getDate() : -1;
827
839
  /** @type {?} */
828
840
  var newDates = [];
829
- if (selectedDateChanged || (activeDateChanged && monthChanged)) {
841
+ if (selectedDateChanged || intervalChanged || (activeDateChanged && monthChanged)) {
830
842
  newDates = this.calendarService.getMonthForDate(this.activeDate);
831
843
  }
832
844
  else {
@@ -844,7 +856,18 @@
844
856
  */
845
857
  function (day) {
846
858
  /** @type {?} */
847
- var date = (new Date(_this.activeDate));
859
+ var currentDate = new Date();
860
+ _this.activeDate.setHours(currentDate.getHours(), currentDate.getMinutes(), currentDate.getSeconds());
861
+ /** @type {?} */
862
+ var date = new Date(_this.activeDate);
863
+ if (day.padding) {
864
+ if (day.date > 20) {
865
+ date.setMonth(_this.activeDate.getMonth() - 1);
866
+ }
867
+ else {
868
+ date.setMonth(_this.activeDate.getMonth() + 1);
869
+ }
870
+ }
848
871
  date.setDate(day.date);
849
872
  /** @type {?} */
850
873
  var available = _this.dayIsAvailableForRange(day, range) && (_this.interval ? !_this.interval.isInRange(date) : true);
@@ -1 +1 @@
1
- {"version":3,"file":"acpaas-ui-ngx-calendar.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","ng://@acpaas-ui/ngx-calendar/lib/types/calendar.types.ts","ng://@acpaas-ui/ngx-calendar/lib/services/calendar.service.ts","ng://@acpaas-ui/ngx-calendar/lib/calendar.conf.ts","ng://@acpaas-ui/ngx-calendar/lib/components/calendar/calendar.component.ts","ng://@acpaas-ui/ngx-calendar/lib/components/decennia/decennia.component.ts","ng://@acpaas-ui/ngx-calendar/lib/components/month/month.component.ts","ng://@acpaas-ui/ngx-calendar/lib/components/year/year.component.ts","ng://@acpaas-ui/ngx-calendar/lib/calendar.module.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","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/js-date-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","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/js-date-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 = [\n 'Ga naar vorige maand',\n 'Ga naar vorig jaar',\n 'Ga naar vorige 12 jaren',\n ];\n @Input() ariaNextLabels = [\n 'Ga naar volgende maand',\n 'Ga naar volgend jaar',\n 'Ga naar volgende 12 jaren',\n ];\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\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 this.activeDate = DateHelper.parseDate(new Date());\n this.initControl();\n }\n }\n\n updateActiveDate(factor: number = 0): void {\n const activeDate = this.activeDate ? new Date(this.activeDate) : 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() + (12 * 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 + 11}`;\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 {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 + 11 < 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 + 12; i += 1) {\n years.push(i);\n }\n\n this.years = chunk(years, 4);\n }\n}\n","import {ChangeDetectionStrategy, Component, EventEmitter, Inject, Input, OnChanges, OnInit, Output, SimpleChanges} from '@angular/core';\nimport {get} from 'lodash-es';\nimport {DateHelper, DateRange, Day, Month} from '@acpaas-ui/js-date-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\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 activeDateChanged = this.hasChanged(changes, 'activeDate');\n const monthChanged = activeDateChanged && !DateHelper.datesAreEqual([\n changes.activeDate.currentValue,\n changes.activeDate.previousValue,\n ], '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 || (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 => week.map(day => {\n const date: Date = (new Date(this.activeDate));\n date.setDate(day.date);\n const available: boolean = this.dayIsAvailableForRange(day, range) && (this.interval ? !this.interval.isInRange(date) : true);\n return {\n ...day,\n available\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(\n [this.activeDate, current],\n ['M', 'Y']\n );\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","import {ChangeDetectionStrategy, Component, EventEmitter, Inject, Input, OnChanges, Output, SimpleChanges} from '@angular/core';\nimport {chunk, get} from 'lodash-es';\n\nimport {DateHelper} from '@acpaas-ui/js-date-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(\n @Inject(CALENDAR_MONTH_LABELS) public moduleMonthLabels = CALENDAR_DEFAULT_MONTH_LABELS\n ) {\n }\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, 4);\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","import {ModuleWithProviders, NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\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\n@NgModule({\n imports: [\n CommonModule,\n ],\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 {provide: CALENDAR_WEEKDAY_LABELS, useValue: CALENDAR_DEFAULT_WEEKDAY_LABELS},\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 {\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"],"names":["DateGenerator","DateHelper","Injectable","InjectionToken","EventEmitter","Component","ChangeDetectionStrategy","Inject","HostBinding","Input","Output","get","chunk","NgModule","CommonModule"],"mappings":"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"}
1
+ {"version":3,"file":"acpaas-ui-ngx-calendar.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","ng://@acpaas-ui/ngx-calendar/lib/types/calendar.types.ts","ng://@acpaas-ui/ngx-calendar/lib/services/calendar.service.ts","ng://@acpaas-ui/ngx-calendar/lib/calendar.conf.ts","ng://@acpaas-ui/ngx-calendar/lib/components/calendar/calendar.component.ts","ng://@acpaas-ui/ngx-calendar/lib/components/decennia/decennia.component.ts","ng://@acpaas-ui/ngx-calendar/lib/components/month/month.component.ts","ng://@acpaas-ui/ngx-calendar/lib/components/year/year.component.ts","ng://@acpaas-ui/ngx-calendar/lib/calendar.module.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","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/js-date-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","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/js-date-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 = [\n 'Ga naar vorige maand',\n 'Ga naar vorig jaar',\n 'Ga naar vorige 12 jaren',\n ];\n @Input() ariaNextLabels = [\n 'Ga naar volgende maand',\n 'Ga naar volgend jaar',\n 'Ga naar volgende 12 jaren',\n ];\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\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 ? new Date(this.activeDate) : 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() + (12 * 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 + 11}`;\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 {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 + 11 < 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 + 12; i += 1) {\n years.push(i);\n }\n\n this.years = chunk(years, 4);\n }\n}\n","import {ChangeDetectionStrategy, Component, EventEmitter, Inject, Input, OnChanges, OnInit, Output, SimpleChanges} from '@angular/core';\nimport {get} from 'lodash-es';\nimport {DateHelper, DateRange, Day, Month} from '@acpaas-ui/js-date-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\n public ngOnInit() {\n this.weekdayLabels = this.weekdayLabels || this.moduleWeekdayLabels;\n }\n\n ngOnChanges(changes: SimpleChanges) {\n\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 = activeDateChanged && !DateHelper.datesAreEqual([\n changes.activeDate.currentValue,\n changes.activeDate.previousValue,\n ], '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 => 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);\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 = this.dayIsAvailableForRange(day, range) && (this.interval ? !this.interval.isInRange(date) : true);\n return {\n ...day,\n available\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(\n [this.activeDate, current],\n ['M', 'Y']\n );\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","import {ChangeDetectionStrategy, Component, EventEmitter, Inject, Input, OnChanges, Output, SimpleChanges} from '@angular/core';\nimport {chunk, get} from 'lodash-es';\n\nimport {DateHelper} from '@acpaas-ui/js-date-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(\n @Inject(CALENDAR_MONTH_LABELS) public moduleMonthLabels = CALENDAR_DEFAULT_MONTH_LABELS\n ) {\n }\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, 4);\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","import {ModuleWithProviders, NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\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\n@NgModule({\n imports: [\n CommonModule,\n ],\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 {provide: CALENDAR_WEEKDAY_LABELS, useValue: CALENDAR_DEFAULT_WEEKDAY_LABELS},\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 {\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"],"names":["DateGenerator","DateHelper","Injectable","InjectionToken","EventEmitter","Component","ChangeDetectionStrategy","Inject","HostBinding","Input","Output","get","chunk","NgModule","CommonModule"],"mappings":"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"}
@@ -1,16 +1,16 @@
1
1
  !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@acpaas-ui/js-date-utils"),require("lodash-es"),require("@angular/common")):"function"==typeof define&&define.amd?define("@acpaas-ui/ngx-calendar",["exports","@angular/core","@acpaas-ui/js-date-utils","lodash-es","@angular/common"],t):t(((e=e||self)["acpaas-ui"]=e["acpaas-ui"]||{},e["acpaas-ui"]["ngx-calendar"]={}),e.ng.core,e.jsDateUtils,e.lodashEs,e.ng.common)}(this,(function(e,t,a,n,r){"use strict";
2
2
  /*! *****************************************************************************
3
- Copyright (c) Microsoft Corporation. All rights reserved.
4
- Licensed under the Apache License, Version 2.0 (the "License"); you may not use
5
- this file except in compliance with the License. You may obtain a copy of the
6
- License at http://www.apache.org/licenses/LICENSE-2.0
3
+ Copyright (c) Microsoft Corporation.
7
4
 
8
- THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
9
- KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
10
- WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
11
- MERCHANTABLITY OR NON-INFRINGEMENT.
5
+ Permission to use, copy, modify, and/or distribute this software for any
6
+ purpose with or without fee is hereby granted.
12
7
 
13
- See the Apache Version 2.0 License for specific language governing permissions
14
- and limitations under the License.
15
- ***************************************************************************** */var i=function(){return(i=Object.assign||function(e){for(var t,a=1,n=arguments.length;a<n;a++)for(var r in t=arguments[a])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)};function s(e,t){var a="function"==typeof Symbol&&e[Symbol.iterator];if(!a)return e;var n,r,i=a.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=i.next()).done;)s.push(n.value)}catch(e){r={error:e}}finally{try{n&&!n.done&&(a=i.return)&&a.call(i)}finally{if(r)throw r.error}}return s}function o(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(s(arguments[t]));return e}var l=function(){function e(){this.months={}}return e.prototype.getMonth=function(e,t){if(t&&(this.currentYear!==t&&(this.months={}),this.currentYear=t),this.months.hasOwnProperty(e))return o(this.months[e]);var n=new Date;n.setMonth(e,1),t&&n.setFullYear(t);var r=a.DateGenerator.generateMonth(n,{startOfWeek:1,padding:!0,generatePadding:!0});return this.months[e]=r,o(r)},e.prototype.getMonthForDate=function(e){return this.getMonth(e.getMonth(),e.getFullYear())},e.prototype.getRangeForDate=function(e,t){return a.DateGenerator.generateRange(e,t,{startOfWeek:1})},e.prototype.getRangesForDate=function(e,t){var n={startOfWeek:1},r=a.DateHelper.updateMonth(e,e.getMonth()-1),i=a.DateHelper.updateMonth(e,e.getMonth()+1);return{before:a.DateGenerator.generateRange(r,t,n),current:a.DateGenerator.generateRange(e,t,n),after:a.DateGenerator.generateRange(i,t,n)}},e.prototype.getClosestDateForRange=function(e,t){void 0===e&&(e=new Date);var n=this.getRangeForDate(e,t);return a.DateHelper.dateOutOfRange(e,n)?e:a.DateHelper.closestDateForRange(e,n)},e.decorators=[{type:t.Injectable}],e}();var c=["Maandag","Dinsdag","Woensdag","Donderdag","Vrijdag","Zaterdag","Zondag"],u=["Januari","Februari","Maart","April","Mei","Juni","Juli","Augustus","September","Oktober","November","December"],d=new t.InjectionToken("weekdayLabels"),h=new t.InjectionToken("monthLabels"),p=function(){function e(e,a,n){void 0===e&&(e=u),void 0===a&&(a=c),this.moduleMonthLabels=e,this.moduleWeekdayLabels=a,this.calendarService=n,this.role="application",this.ariahidden="false",this.ariaPreviousLabels=["Ga naar vorige maand","Ga naar vorig jaar","Ga naar vorige 12 jaren"],this.ariaNextLabels=["Ga naar volgende maand","Ga naar volgend jaar","Ga naar volgende 12 jaren"],this.selectDate=new t.EventEmitter,this.CALENDAR_VIEW_MONTH="CALENDAR_VIEW_MONTH",this.CALENDAR_VIEW_YEAR="CALENDAR_VIEW_YEAR",this.CALENDAR_VIEW_DECENNIA="CALENDAR_VIEW_DECENNIA",this.activeView="CALENDAR_VIEW_MONTH",this.headerLabel="",this.ariaPreviousLabel=this.ariaPreviousLabels[0],this.ariaNextLabel=this.ariaNextLabels[0]}return e.prototype.ngOnInit=function(){this.initControl()},e.prototype.ngOnChanges=function(e){var t=e.selectedDate&&e.selectedDate.currentValue?e.selectedDate:null;void 0!==this.monthLabels&&t&&!a.DateHelper.datesAreEqual(t.currentValue,t.previousValue)?(this.activeDate=this.selectedDate,this.updateHeaderLabel()):(this.activeDate=a.DateHelper.parseDate(new Date),this.initControl())},e.prototype.updateActiveDate=function(e){void 0===e&&(e=0);var t=this.activeDate?new Date(this.activeDate):new Date;switch(this.activeView){case"CALENDAR_VIEW_MONTH":t.setMonth(t.getMonth()+e);break;case"CALENDAR_VIEW_YEAR":t.setFullYear(t.getFullYear()+e);break;case"CALENDAR_VIEW_DECENNIA":t.setFullYear(t.getFullYear()+12*e)}this.activeDate=t,this.updateHeaderLabel()},e.prototype.switchView=function(e){void 0===e&&(e=1);var t=["CALENDAR_VIEW_MONTH","CALENDAR_VIEW_YEAR","CALENDAR_VIEW_DECENNIA"],a=t.indexOf(this.activeView),n=a+e>=t.length?0:a+e;n=n<0?t.length-1:n,this.activeView=t[n],this.selectedDate&&0===n&&1===e&&(this.activeDate=this.selectedDate),this.updateHeaderLabel()},e.prototype.updateHeaderLabel=function(){switch(this.activeView){case"CALENDAR_VIEW_MONTH":this.headerLabel=this.monthLabels[this.activeDate.getMonth()]+" "+this.activeDate.getFullYear(),this.ariaPreviousLabel=this.ariaPreviousLabels[0],this.ariaNextLabel=this.ariaNextLabels[0];break;case"CALENDAR_VIEW_YEAR":this.headerLabel=String(this.activeDate.getFullYear()),this.ariaPreviousLabel=this.ariaPreviousLabels[1],this.ariaNextLabel=this.ariaNextLabels[1];break;case"CALENDAR_VIEW_DECENNIA":var e=this.activeDate.getFullYear();this.headerLabel=e+" - "+(e+11),this.ariaPreviousLabel=this.ariaPreviousLabels[2],this.ariaNextLabel=this.ariaNextLabels[2]}},e.prototype.pickDate=function(e){var t="CALENDAR_VIEW_MONTH"===this.activeView;this.selectDate.emit({date:e,complete:t}),t||(this.activeDate=e,this.switchView(-1))},e.prototype.initControl=function(){this.weekdayLabels=this.weekdayLabels||this.moduleWeekdayLabels,this.monthLabels=this.monthLabels||this.moduleMonthLabels,this.activeDate=this.calendarService.getClosestDateForRange(this.activeDate,this.range),this.selectedDate&&(this.activeDate=this.selectedDate,this.updateActiveDate()),this.updateHeaderLabel()},e.decorators=[{type:t.Component,args:[{selector:"aui-calendar",template:'<div class="m-datepicker__nav">\n <button (click)="updateActiveDate(-1)" [attr.aria-label]="ariaPreviousLabel" class="a-button has-icon" type="button">\n <span class="fa fa-angle-left"></span>\n </button>\n <button (click)="switchView()" class="m-datepicker__title a-button" type="button">\n {{ headerLabel | titlecase }}\n </button>\n\n <button (click)="updateActiveDate(1)" [attr.aria-label]="ariaNextLabel" class="a-button has-icon" type="button">\n <span class="fa fa-angle-right"></span>\n </button>\n</div>\n\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',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],e.ctorParameters=function(){return[{type:void 0,decorators:[{type:t.Inject,args:[h]}]},{type:void 0,decorators:[{type:t.Inject,args:[d]}]},{type:l}]},e.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}],ariahidden:[{type:t.HostBinding,args:["attr.aria-hidden"]}],ariaPreviousLabels:[{type:t.Input}],ariaNextLabels:[{type:t.Input}],selectedDate:[{type:t.Input}],range:[{type:t.Input}],interval:[{type:t.Input}],weekdayLabels:[{type:t.Input}],monthLabels:[{type:t.Input}],selectDate:[{type:t.Output}]},e}();var D=function(){function e(){this.selectDate=new t.EventEmitter,this.years=[],this.selectedYear=-1,this.current=-1}return e.prototype.ngOnInit=function(){var e=new Date;this.current=e.getFullYear()},e.prototype.ngOnChanges=function(e){var t=n.get(e,"activeDate.currentValue"),a=n.get(e,"activeDate.previousValue"),r=t instanceof Date?t.getFullYear():-1,i=a instanceof Date?a.getFullYear():-1;r>=0&&(i>r||i+11<r)&&this.updateYears(),this.selectedYear=this.selectedDate instanceof Date?this.selectedDate.getFullYear():-1},e.prototype.pickDate=function(e,t){e.stopPropagation();var a=new Date(this.activeDate);a.setFullYear(t),this.selectDate.emit(a)},e.prototype.updateYears=function(){for(var e=[],t=this.activeDate.getFullYear(),a=t;a<t+12;a+=1)e.push(a);this.years=n.chunk(e,4)},e.decorators=[{type:t.Component,args:[{selector:"aui-calendar-decennia",template:'<table>\n <tbody class="m-datepicker__calendar">\n <tr *ngFor="let group of years">\n <td *ngFor="let year of group">\n <button (click)="pickDate($event, year)" [ngClass]="{\n \'is-current\': year === current,\n \'is-selected\': year === selectedYear\n }" type="button">\n {{ year }}\n </button>\n </td>\n </tr>\n </tbody>\n</table>\n',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],e.propDecorators={selectedDate:[{type:t.Input}],activeDate:[{type:t.Input}],selectDate:[{type:t.Output}]},e}();var g=function(){function e(e,a){void 0===e&&(e=c),this.moduleWeekdayLabels=e,this.calendarService=a,this.weekdayLabels=c,this.selectDate=new t.EventEmitter,this.dates=[],this.selectedDay=-1}return e.prototype.ngOnInit=function(){this.weekdayLabels=this.weekdayLabels||this.moduleWeekdayLabels},e.prototype.ngOnChanges=function(e){var t=this,n=this.hasChanged(e,"selectedDate"),r=this.hasChanged(e,"activeDate"),s=r&&!a.DateHelper.datesAreEqual([e.activeDate.currentValue,e.activeDate.previousValue],"M"),o=this.selectedDate&&this.activeDate.getMonth()===this.selectedDate.getMonth();this.current=this.getCurrentDate(),this.selectedDay=o?this.selectedDate.getDate():-1;var l=[];if(n||r&&s){l=this.calendarService.getMonthForDate(this.activeDate);var c=this.calendarService.getRangesForDate(this.activeDate,this.range);this.dates=l.map((function(e){return e.map((function(e){var a=new Date(t.activeDate);a.setDate(e.date);var n=t.dayIsAvailableForRange(e,c)&&(!t.interval||!t.interval.isInRange(a));return i({},e,{available:n})}))}))}},e.prototype.pickDate=function(e,t){e.stopPropagation();var n=new Date(this.activeDate);if(t.padding){var r=t.date>20?-1:1;n=a.DateHelper.updateMonth(n,n.getMonth()+r)}this.selectDate.emit(a.DateHelper.updateDate(n,t.date))},e.prototype.hasChanged=function(e,t){var a=n.get(e,t+".currentValue"),r=n.get(e,t+".previousValue"),i=a instanceof Date?a.valueOf():0,s=r instanceof Date?r.valueOf():0;return!!i&&i!==s},e.prototype.getCurrentDate=function(){var e=new Date;return!a.DateHelper.datesAreEqual([this.activeDate,e],["M","Y"])?-1:e.getDate()},e.prototype.dayIsAvailableForRange=function(e,t){if(!t)return!0;var a=t.current;return e.padding&&(a=e.date>20?t.before:t.after),a.indexOf(e.date)<0},e.decorators=[{type:t.Component,args:[{selector:"aui-calendar-month",template:'<table>\n <thead>\n <tr class="m-datepicker__days">\n <th *ngFor="let day of weekdayLabels" scope="col"><span [title]="day"\n class="u-text-capitalize">{{ day | slice:0:2 }}</span></th>\n </tr>\n </thead>\n\n <tbody class="m-datepicker__calendar">\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\': !day.padding && day.date === selectedDay,\n \'is-current\': !day.padding && day.date === current,\n \'is-unavailable\': !day.available\n }"\n type="button"\n >{{ day.date }}</button>\n </td>\n </tr>\n </tbody>\n</table>\n',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],e.ctorParameters=function(){return[{type:void 0,decorators:[{type:t.Inject,args:[d]}]},{type:l}]},e.propDecorators={selectedDate:[{type:t.Input}],activeDate:[{type:t.Input}],range:[{type:t.Input}],interval:[{type:t.Input}],weekdayLabels:[{type:t.Input}],selectDate:[{type:t.Output}]},e}();var v=function(){function e(e){void 0===e&&(e=u),this.moduleMonthLabels=e,this.monthLabels=u,this.selectDate=new t.EventEmitter,this.selectedMonth=-1,this.current="",this.months=[]}return e.prototype.ngOnChanges=function(e){var t=n.get(e,"activeDate.currentValue"),a=t instanceof Date?t.getFullYear():-1,r=this.selectedDate&&this.selectedDate.getFullYear()===this.activeDate.getFullYear(),i=new Date;this.current=a===i.getFullYear()?this.monthLabels[i.getMonth()]:"",this.selectedMonth=r?this.selectedDate.getMonth():-1,e.monthLabels&&(this.monthLabels=this.monthLabels||this.moduleMonthLabels,this.months=n.chunk(this.monthLabels,4))},e.prototype.pickDate=function(e,t){e.stopPropagation();var n=new Date(this.activeDate);n=a.DateHelper.updateMonth(n,this.monthLabels.indexOf(t)),this.selectDate.emit(n)},e.decorators=[{type:t.Component,args:[{selector:"aui-calendar-year",template:'<table>\n <tbody class="m-datepicker__calendar">\n <tr *ngFor="let group of months">\n <td *ngFor="let month of group">\n <button (click)="pickDate($event, month)" [ngClass]="{\n \'is-current\': month === current,\n \'is-selected\': month === monthLabels[selectedMonth]\n }" type="button">\n {{ month | titlecase }}\n </button>\n </td>\n </tr>\n </tbody>\n</table>\n',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],e.ctorParameters=function(){return[{type:void 0,decorators:[{type:t.Inject,args:[h]}]}]},e.propDecorators={selectedDate:[{type:t.Input}],activeDate:[{type:t.Input}],monthLabels:[{type:t.Input}],selectDate:[{type:t.Output}]},e}();var y=c,b=u,f=function(){function e(){}return e.forChild=function(t,a){return{ngModule:e,providers:[l,{provide:d,useValue:t},{provide:h,useValue:a}]}},e.decorators=[{type:t.NgModule,args:[{imports:[r.CommonModule],declarations:[p,D,g,v],exports:[p,D,g,v],providers:[l,{provide:d,useValue:y},{provide:h,useValue:b}]}]}],e}();e.CALENDAR_DEFAULT_MONTH_LABELS=u,e.CALENDAR_DEFAULT_WEEKDAY_LABELS=c,e.CALENDAR_MONTH_LABELS=h,e.CALENDAR_VIEW_DECENNIA="CALENDAR_VIEW_DECENNIA",e.CALENDAR_VIEW_MONTH="CALENDAR_VIEW_MONTH",e.CALENDAR_VIEW_YEAR="CALENDAR_VIEW_YEAR",e.CALENDAR_WEEKDAY_LABELS=d,e.CalendarComponent=p,e.CalendarDecenniaComponent=D,e.CalendarModule=f,e.CalendarMonthComponent=g,e.CalendarService=l,e.CalendarYearComponent=v,Object.defineProperty(e,"__esModule",{value:!0})}));
8
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
9
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
10
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
11
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
12
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14
+ PERFORMANCE OF THIS SOFTWARE.
15
+ ***************************************************************************** */var i=function(){return(i=Object.assign||function(e){for(var t,a=1,n=arguments.length;a<n;a++)for(var r in t=arguments[a])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}).apply(this,arguments)};function s(e,t){var a="function"==typeof Symbol&&e[Symbol.iterator];if(!a)return e;var n,r,i=a.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=i.next()).done;)s.push(n.value)}catch(e){r={error:e}}finally{try{n&&!n.done&&(a=i.return)&&a.call(i)}finally{if(r)throw r.error}}return s}function o(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(s(arguments[t]));return e}var l=function(){function e(){this.months={}}return e.prototype.getMonth=function(e,t){if(t&&(this.currentYear!==t&&(this.months={}),this.currentYear=t),this.months.hasOwnProperty(e))return o(this.months[e]);var n=new Date;n.setMonth(e,1),t&&n.setFullYear(t);var r=a.DateGenerator.generateMonth(n,{startOfWeek:1,padding:!0,generatePadding:!0});return this.months[e]=r,o(r)},e.prototype.getMonthForDate=function(e){return this.getMonth(e.getMonth(),e.getFullYear())},e.prototype.getRangeForDate=function(e,t){return a.DateGenerator.generateRange(e,t,{startOfWeek:1})},e.prototype.getRangesForDate=function(e,t){var n={startOfWeek:1},r=a.DateHelper.updateMonth(e,e.getMonth()-1),i=a.DateHelper.updateMonth(e,e.getMonth()+1);return{before:a.DateGenerator.generateRange(r,t,n),current:a.DateGenerator.generateRange(e,t,n),after:a.DateGenerator.generateRange(i,t,n)}},e.prototype.getClosestDateForRange=function(e,t){void 0===e&&(e=new Date);var n=this.getRangeForDate(e,t);return a.DateHelper.dateOutOfRange(e,n)?e:a.DateHelper.closestDateForRange(e,n)},e.decorators=[{type:t.Injectable}],e}();var c=["Maandag","Dinsdag","Woensdag","Donderdag","Vrijdag","Zaterdag","Zondag"],u=["Januari","Februari","Maart","April","Mei","Juni","Juli","Augustus","September","Oktober","November","December"],h=new t.InjectionToken("weekdayLabels"),d=new t.InjectionToken("monthLabels"),p=function(){function e(e,a,n){void 0===e&&(e=u),void 0===a&&(a=c),this.moduleMonthLabels=e,this.moduleWeekdayLabels=a,this.calendarService=n,this.role="application",this.ariahidden="false",this.ariaPreviousLabels=["Ga naar vorige maand","Ga naar vorig jaar","Ga naar vorige 12 jaren"],this.ariaNextLabels=["Ga naar volgende maand","Ga naar volgend jaar","Ga naar volgende 12 jaren"],this.selectDate=new t.EventEmitter,this.CALENDAR_VIEW_MONTH="CALENDAR_VIEW_MONTH",this.CALENDAR_VIEW_YEAR="CALENDAR_VIEW_YEAR",this.CALENDAR_VIEW_DECENNIA="CALENDAR_VIEW_DECENNIA",this.activeView="CALENDAR_VIEW_MONTH",this.headerLabel="",this.ariaPreviousLabel=this.ariaPreviousLabels[0],this.ariaNextLabel=this.ariaNextLabels[0]}return e.prototype.ngOnInit=function(){this.initControl()},e.prototype.ngOnChanges=function(e){var t=e.selectedDate&&e.selectedDate.currentValue?e.selectedDate:null;if(void 0!==this.monthLabels&&t&&!a.DateHelper.datesAreEqual(t.currentValue,t.previousValue))this.activeDate=this.selectedDate,this.updateHeaderLabel();else{var n=new Date;this.interval&&this.interval.isInRange(n)&&(n=this.interval.min),this.activeDate=a.DateHelper.parseDate(n),this.initControl()}},e.prototype.updateActiveDate=function(e){void 0===e&&(e=0);var t=this.activeDate?new Date(this.activeDate):new Date;switch(this.activeView){case"CALENDAR_VIEW_MONTH":t.setMonth(t.getMonth()+e);break;case"CALENDAR_VIEW_YEAR":t.setFullYear(t.getFullYear()+e);break;case"CALENDAR_VIEW_DECENNIA":t.setFullYear(t.getFullYear()+12*e)}this.activeDate=t,this.updateHeaderLabel()},e.prototype.switchView=function(e){void 0===e&&(e=1);var t=["CALENDAR_VIEW_MONTH","CALENDAR_VIEW_YEAR","CALENDAR_VIEW_DECENNIA"],a=t.indexOf(this.activeView),n=a+e>=t.length?0:a+e;n=n<0?t.length-1:n,this.activeView=t[n],this.selectedDate&&0===n&&1===e&&(this.activeDate=this.selectedDate),this.updateHeaderLabel()},e.prototype.updateHeaderLabel=function(){switch(this.activeView){case"CALENDAR_VIEW_MONTH":this.headerLabel=this.monthLabels[this.activeDate.getMonth()]+" "+this.activeDate.getFullYear(),this.ariaPreviousLabel=this.ariaPreviousLabels[0],this.ariaNextLabel=this.ariaNextLabels[0];break;case"CALENDAR_VIEW_YEAR":this.headerLabel=String(this.activeDate.getFullYear()),this.ariaPreviousLabel=this.ariaPreviousLabels[1],this.ariaNextLabel=this.ariaNextLabels[1];break;case"CALENDAR_VIEW_DECENNIA":var e=this.activeDate.getFullYear();this.headerLabel=e+" - "+(e+11),this.ariaPreviousLabel=this.ariaPreviousLabels[2],this.ariaNextLabel=this.ariaNextLabels[2]}},e.prototype.pickDate=function(e){var t="CALENDAR_VIEW_MONTH"===this.activeView;this.selectDate.emit({date:e,complete:t}),t||(this.activeDate=e,this.switchView(-1))},e.prototype.initControl=function(){this.weekdayLabels=this.weekdayLabels||this.moduleWeekdayLabels,this.monthLabels=this.monthLabels||this.moduleMonthLabels,this.activeDate=this.calendarService.getClosestDateForRange(this.activeDate,this.range),this.selectedDate&&(this.activeDate=this.selectedDate,this.updateActiveDate()),this.updateHeaderLabel()},e.decorators=[{type:t.Component,args:[{selector:"aui-calendar",template:'<div class="m-datepicker__nav">\n <button (click)="updateActiveDate(-1)" [attr.aria-label]="ariaPreviousLabel" class="a-button has-icon" type="button">\n <span class="fa fa-angle-left"></span>\n </button>\n <button (click)="switchView()" class="m-datepicker__title a-button" type="button">\n {{ headerLabel | titlecase }}\n </button>\n\n <button (click)="updateActiveDate(1)" [attr.aria-label]="ariaNextLabel" class="a-button has-icon" type="button">\n <span class="fa fa-angle-right"></span>\n </button>\n</div>\n\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',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],e.ctorParameters=function(){return[{type:void 0,decorators:[{type:t.Inject,args:[d]}]},{type:void 0,decorators:[{type:t.Inject,args:[h]}]},{type:l}]},e.propDecorators={role:[{type:t.HostBinding,args:["attr.role"]}],ariahidden:[{type:t.HostBinding,args:["attr.aria-hidden"]}],ariaPreviousLabels:[{type:t.Input}],ariaNextLabels:[{type:t.Input}],selectedDate:[{type:t.Input}],range:[{type:t.Input}],interval:[{type:t.Input}],weekdayLabels:[{type:t.Input}],monthLabels:[{type:t.Input}],selectDate:[{type:t.Output}]},e}();var D=function(){function e(){this.selectDate=new t.EventEmitter,this.years=[],this.selectedYear=-1,this.current=-1}return e.prototype.ngOnInit=function(){var e=new Date;this.current=e.getFullYear()},e.prototype.ngOnChanges=function(e){var t=n.get(e,"activeDate.currentValue"),a=n.get(e,"activeDate.previousValue"),r=t instanceof Date?t.getFullYear():-1,i=a instanceof Date?a.getFullYear():-1;r>=0&&(i>r||i+11<r)&&this.updateYears(),this.selectedYear=this.selectedDate instanceof Date?this.selectedDate.getFullYear():-1},e.prototype.pickDate=function(e,t){e.stopPropagation();var a=new Date(this.activeDate);a.setFullYear(t),this.selectDate.emit(a)},e.prototype.updateYears=function(){for(var e=[],t=this.activeDate.getFullYear(),a=t;a<t+12;a+=1)e.push(a);this.years=n.chunk(e,4)},e.decorators=[{type:t.Component,args:[{selector:"aui-calendar-decennia",template:'<table>\n <tbody class="m-datepicker__calendar">\n <tr *ngFor="let group of years">\n <td *ngFor="let year of group">\n <button (click)="pickDate($event, year)" [ngClass]="{\n \'is-current\': year === current,\n \'is-selected\': year === selectedYear\n }" type="button">\n {{ year }}\n </button>\n </td>\n </tr>\n </tbody>\n</table>\n',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],e.propDecorators={selectedDate:[{type:t.Input}],activeDate:[{type:t.Input}],selectDate:[{type:t.Output}]},e}();var g=function(){function e(e,a){void 0===e&&(e=c),this.moduleWeekdayLabels=e,this.calendarService=a,this.weekdayLabels=c,this.selectDate=new t.EventEmitter,this.dates=[],this.selectedDay=-1}return e.prototype.ngOnInit=function(){this.weekdayLabels=this.weekdayLabels||this.moduleWeekdayLabels},e.prototype.ngOnChanges=function(e){var t=this,n=this.hasChanged(e,"selectedDate"),r=!!e.interval&&e.interval.currentValue!==e.interval.previousValue,s=this.hasChanged(e,"activeDate"),o=s&&!a.DateHelper.datesAreEqual([e.activeDate.currentValue,e.activeDate.previousValue],"M"),l=this.selectedDate&&this.activeDate.getMonth()===this.selectedDate.getMonth();this.current=this.getCurrentDate(),this.selectedDay=l?this.selectedDate.getDate():-1;var c=[];if(n||r||s&&o){c=this.calendarService.getMonthForDate(this.activeDate);var u=this.calendarService.getRangesForDate(this.activeDate,this.range);this.dates=c.map((function(e){return e.map((function(e){var a=new Date;t.activeDate.setHours(a.getHours(),a.getMinutes(),a.getSeconds());var n=new Date(t.activeDate);e.padding&&(e.date>20?n.setMonth(t.activeDate.getMonth()-1):n.setMonth(t.activeDate.getMonth()+1)),n.setDate(e.date);var r=t.dayIsAvailableForRange(e,u)&&(!t.interval||!t.interval.isInRange(n));return i({},e,{available:r})}))}))}},e.prototype.pickDate=function(e,t){e.stopPropagation();var n=new Date(this.activeDate);if(t.padding){var r=t.date>20?-1:1;n=a.DateHelper.updateMonth(n,n.getMonth()+r)}this.selectDate.emit(a.DateHelper.updateDate(n,t.date))},e.prototype.hasChanged=function(e,t){var a=n.get(e,t+".currentValue"),r=n.get(e,t+".previousValue"),i=a instanceof Date?a.valueOf():0,s=r instanceof Date?r.valueOf():0;return!!i&&i!==s},e.prototype.getCurrentDate=function(){var e=new Date;return!a.DateHelper.datesAreEqual([this.activeDate,e],["M","Y"])?-1:e.getDate()},e.prototype.dayIsAvailableForRange=function(e,t){if(!t)return!0;var a=t.current;return e.padding&&(a=e.date>20?t.before:t.after),a.indexOf(e.date)<0},e.decorators=[{type:t.Component,args:[{selector:"aui-calendar-month",template:'<table>\n <thead>\n <tr class="m-datepicker__days">\n <th *ngFor="let day of weekdayLabels" scope="col"><span [title]="day"\n class="u-text-capitalize">{{ day | slice:0:2 }}</span></th>\n </tr>\n </thead>\n\n <tbody class="m-datepicker__calendar">\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\': !day.padding && day.date === selectedDay,\n \'is-current\': !day.padding && day.date === current,\n \'is-unavailable\': !day.available\n }"\n type="button"\n >{{ day.date }}</button>\n </td>\n </tr>\n </tbody>\n</table>\n',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],e.ctorParameters=function(){return[{type:void 0,decorators:[{type:t.Inject,args:[h]}]},{type:l}]},e.propDecorators={selectedDate:[{type:t.Input}],activeDate:[{type:t.Input}],range:[{type:t.Input}],interval:[{type:t.Input}],weekdayLabels:[{type:t.Input}],selectDate:[{type:t.Output}]},e}();var v=function(){function e(e){void 0===e&&(e=u),this.moduleMonthLabels=e,this.monthLabels=u,this.selectDate=new t.EventEmitter,this.selectedMonth=-1,this.current="",this.months=[]}return e.prototype.ngOnChanges=function(e){var t=n.get(e,"activeDate.currentValue"),a=t instanceof Date?t.getFullYear():-1,r=this.selectedDate&&this.selectedDate.getFullYear()===this.activeDate.getFullYear(),i=new Date;this.current=a===i.getFullYear()?this.monthLabels[i.getMonth()]:"",this.selectedMonth=r?this.selectedDate.getMonth():-1,e.monthLabels&&(this.monthLabels=this.monthLabels||this.moduleMonthLabels,this.months=n.chunk(this.monthLabels,4))},e.prototype.pickDate=function(e,t){e.stopPropagation();var n=new Date(this.activeDate);n=a.DateHelper.updateMonth(n,this.monthLabels.indexOf(t)),this.selectDate.emit(n)},e.decorators=[{type:t.Component,args:[{selector:"aui-calendar-year",template:'<table>\n <tbody class="m-datepicker__calendar">\n <tr *ngFor="let group of months">\n <td *ngFor="let month of group">\n <button (click)="pickDate($event, month)" [ngClass]="{\n \'is-current\': month === current,\n \'is-selected\': month === monthLabels[selectedMonth]\n }" type="button">\n {{ month | titlecase }}\n </button>\n </td>\n </tr>\n </tbody>\n</table>\n',changeDetection:t.ChangeDetectionStrategy.OnPush}]}],e.ctorParameters=function(){return[{type:void 0,decorators:[{type:t.Inject,args:[d]}]}]},e.propDecorators={selectedDate:[{type:t.Input}],activeDate:[{type:t.Input}],monthLabels:[{type:t.Input}],selectDate:[{type:t.Output}]},e}();var y=c,b=u,f=function(){function e(){}return e.forChild=function(t,a){return{ngModule:e,providers:[l,{provide:h,useValue:t},{provide:d,useValue:a}]}},e.decorators=[{type:t.NgModule,args:[{imports:[r.CommonModule],declarations:[p,D,g,v],exports:[p,D,g,v],providers:[l,{provide:h,useValue:y},{provide:d,useValue:b}]}]}],e}();e.CALENDAR_DEFAULT_MONTH_LABELS=u,e.CALENDAR_DEFAULT_WEEKDAY_LABELS=c,e.CALENDAR_MONTH_LABELS=d,e.CALENDAR_VIEW_DECENNIA="CALENDAR_VIEW_DECENNIA",e.CALENDAR_VIEW_MONTH="CALENDAR_VIEW_MONTH",e.CALENDAR_VIEW_YEAR="CALENDAR_VIEW_YEAR",e.CALENDAR_WEEKDAY_LABELS=h,e.CalendarComponent=p,e.CalendarDecenniaComponent=D,e.CalendarModule=f,e.CalendarMonthComponent=g,e.CalendarService=l,e.CalendarYearComponent=v,Object.defineProperty(e,"__esModule",{value:!0})}));
16
16
  //# sourceMappingURL=acpaas-ui-ngx-calendar.umd.min.js.map