@wavemaker/app-ng-runtime 11.11.0-rc.6106 → 11.11.0-rc.6109

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/build-task/bundles/index.umd.js +1 -1
  2. package/build-task/esm2022/advanced/carousel/carousel-template/carousel-template.build.mjs +2 -2
  3. package/build-task/fesm2022/index.mjs +1 -1
  4. package/build-task/fesm2022/index.mjs.map +1 -1
  5. package/components/base/bundles/index.umd.js +11 -7
  6. package/components/base/esm2022/pipes/custom-pipes.mjs +3 -2
  7. package/components/base/esm2022/utils/form-utils.mjs +3 -2
  8. package/components/base/fesm2022/index.mjs +7 -4
  9. package/components/base/fesm2022/index.mjs.map +1 -1
  10. package/components/base/pipes/custom-pipes.d.ts +1 -1
  11. package/components/chart/bundles/index.umd.js +4 -2
  12. package/components/chart/esm2022/chart.utils.mjs +3 -2
  13. package/components/chart/fesm2022/index.mjs +2 -1
  14. package/components/chart/fesm2022/index.mjs.map +1 -1
  15. package/components/containers/wizard/bundles/index.umd.js +1 -1
  16. package/components/containers/wizard/esm2022/wizard.component.mjs +2 -2
  17. package/components/containers/wizard/fesm2022/index.mjs +1 -1
  18. package/components/containers/wizard/fesm2022/index.mjs.map +1 -1
  19. package/components/data/table/bundles/index.umd.js +4 -2
  20. package/components/data/table/esm2022/table-filter.directive.mjs +3 -2
  21. package/components/data/table/fesm2022/index.mjs +2 -1
  22. package/components/data/table/fesm2022/index.mjs.map +1 -1
  23. package/components/input/calendar/bundles/index.umd.js +5 -3
  24. package/components/input/calendar/esm2022/calendar.component.mjs +4 -3
  25. package/components/input/calendar/fesm2022/index.mjs +3 -2
  26. package/components/input/calendar/fesm2022/index.mjs.map +1 -1
  27. package/components/input/epoch/bundles/index.umd.js +45 -39
  28. package/components/input/epoch/esm2022/base-date-time.component.mjs +3 -2
  29. package/components/input/epoch/esm2022/date/imaskUtil.mjs +3 -2
  30. package/components/input/epoch/esm2022/date-time/date-time-picker.component.mjs +5 -4
  31. package/components/input/epoch/esm2022/date-time/date-time.component.mjs +4 -3
  32. package/components/input/epoch/esm2022/time/time.component.mjs +4 -3
  33. package/components/input/epoch/fesm2022/index.mjs +43 -38
  34. package/components/input/epoch/fesm2022/index.mjs.map +1 -1
  35. package/core/bundles/index.umd.js +6 -4
  36. package/core/esm2022/types/types.mjs +1 -1
  37. package/core/esm2022/utils/utils.mjs +3 -2
  38. package/core/fesm2022/index.mjs +2 -1
  39. package/core/fesm2022/index.mjs.map +1 -1
  40. package/core/types/types.d.ts +1 -0
  41. package/npm-shrinkwrap.json +2 -2
  42. package/oAuth/bundles/index.umd.js +4 -2
  43. package/oAuth/esm2022/oAuth.utils.mjs +3 -2
  44. package/oAuth/fesm2022/index.mjs +2 -1
  45. package/oAuth/fesm2022/index.mjs.map +1 -1
  46. package/package-lock.json +2 -2
  47. package/package.json +1 -1
  48. package/runtime/base/bundles/index.umd.js +12 -4
  49. package/runtime/base/esm2022/services/app.service.mjs +8 -1
  50. package/runtime/base/esm2022/services/i18n.service.mjs +3 -2
  51. package/runtime/base/fesm2022/index.mjs +8 -1
  52. package/runtime/base/fesm2022/index.mjs.map +1 -1
  53. package/runtime/base/services/app.service.d.ts +1 -0
  54. package/variables/bundles/index.umd.js +5 -2
  55. package/variables/esm2022/util/variable/variables.utils.mjs +3 -2
  56. package/variables/fesm2022/index.mjs +2 -1
  57. package/variables/fesm2022/index.mjs.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/input/calendar/src/calendar.props.ts","../../../../../projects/components/widgets/input/calendar/src/calendar.component.ts","../../../../../projects/components/widgets/input/calendar/src/calendar.component.html","../../../../../projects/components/widgets/input/calendar/src/index.ts"],"sourcesContent":["import { PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n const props = new Map(\n [\n ['calendartype', {value: 'basic', ...PROP_STRING}],\n ['class', PROP_STRING],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['controls', {value: 'navigation, today, year, month, week, day', ...PROP_STRING}],\n ['dataset', PROP_ANY],\n ['datavalue', PROP_STRING],\n ['eventallday', PROP_STRING],\n ['eventclass', PROP_STRING],\n ['eventend', PROP_STRING],\n ['eventstart', PROP_STRING],\n ['eventtitle', PROP_STRING],\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['showindevice', {displayType: 'inline-block', value: 'all', ...PROP_STRING}],\n ['view', PROP_STRING],\n ['selectionmode', PROP_STRING]\n ]\n );\n register('wm-calendar', props);\n};\n","import { WmComponentsModule } from \"@wm/components/base\";\nimport {\n AfterContentInit,\n AfterViewInit,\n Component,\n ElementRef,\n Inject,\n Injector,\n OnDestroy,\n OnInit,\n Optional,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\n\nimport {AbstractI18nService, getClonedObject, getSessionStorageItem, isMobile} from '@wm/core';\n\nimport {\n APPLY_STYLES_TYPE,\n createArrayFrom,\n getEvaluatedData,\n IRedrawableComponent,\n provideAsWidgetRef,\n StylableComponent,\n styler\n} from '@wm/components/base';\n\nimport {registerProps} from './calendar.props';\nimport {capitalize, clone, each, extend, get, includes, isDate, isEmpty, isObject, mapKeys} from \"lodash-es\";\n\ndeclare const $;\nimport moment from 'moment';\nimport {Calendar} from '@fullcalendar/core';\nimport dayGridPlugin from '@fullcalendar/daygrid';\nimport timeGridPlugin from '@fullcalendar/timegrid';\nimport listPlugin from '@fullcalendar/list'\nimport interactionPlugin from '@fullcalendar/interaction';\nimport allLocales from '@fullcalendar/core/locales-all';\n\nimport {_WM_APP_PROJECT} from '@wm/core';\n\nconst DEFAULT_CLS = 'app-calendar';\nconst dateFormats = ['yyyy-MM-dd', 'yyyy-M-dd', 'M-dd-yyyy', 'MM-dd-yy', 'yyyy, dd MMMM', 'yyyy, MMM dd', 'MM/dd/yyyy', 'M/d/yyyy', 'EEE, dd MMM yyyy', 'EEE MMM dd yyyy', 'EEEE, MMMM dd, yyyy', 'timestamp'];\nconst defaultHeaderOptions = {\n start: 'prev next today',\n center: 'title',\n end: 'dayGridMonth dayGridWeek dayGridDay'\n};\nconst VIEW_TYPES = {\n BASIC: 'basic',\n AGENDA: 'agenda',\n LIST: 'list'\n};\nconst BUTTON_TEXT = {\n YEAR: 'Year',\n MONTH: 'Month',\n WEEK: 'Week',\n DAY: 'Day',\n TODAY: 'Today'\n};\nconst SELECTION_MODES = {\n NONE: 'none',\n SINGLE: 'single',\n MULTIPLE: 'multiple'\n};\nconst NEXT_DAY_THRESHOLD = {\n START: '00:00',\n END: '24:00'\n};\nconst getEventMomentValue = (value, key) => {\n let isDate = false;\n\n dateFormats.forEach((format) => {\n // moment supports uppercase formats\n if (moment(value, format.toUpperCase(), true).isValid()) {\n isDate = true;\n return false;\n }\n });\n\n // if the value is date then for end date the value should be end of the day as the calendar is approximating it to the start.\n if (isDate && key === 'end') {\n return moment(value).endOf('day');\n }\n\n return moment(value);\n};\nconst getUTCDateTime = (dateObj) => {\n dateObj = moment(dateObj);\n const year = dateObj.format('YYYY'),\n // javascript starts the month count from '0' where as moment returns the human count\n month = dateObj.format('MM') - 1,\n day = dateObj.format('DD'),\n hours = dateObj.format('HH'),\n minutes = dateObj.format('mm'),\n seconds = dateObj.format('ss');\n return new Date(year, month, day, hours, minutes, seconds);\n};\nconst WIDGET_CONFIG = {widgetType: 'wm-calendar', hostClass: DEFAULT_CLS};\nconst dateFormat = 'YYYY/MM/DD';\n\n@Component({\n standalone: true,\n imports: [WmComponentsModule],\n selector: '[wmCalendar]',\n templateUrl: './calendar.component.html',\n styleUrls: [],\n providers: [\n provideAsWidgetRef(CalendarComponent)\n ],\n encapsulation: ViewEncapsulation.None\n})\nexport class CalendarComponent extends StylableComponent implements AfterContentInit, AfterViewInit, OnInit, OnDestroy, IRedrawableComponent {\n static initializeProps = registerProps();\n // The calendar element reference\n @ViewChild('calendar') _calendar: ElementRef;\n @ViewChild('datepicker') _datepicker: ElementRef;\n\n public selecteddates: any;\n public selecteddata: any;\n public currentview: object;\n public dataset: any;\n public calendartype;\n public controls = 'navigation, today, year, month, week, day';\n public datavalue;\n public eventtitle;\n public eventstart;\n public eventend;\n public eventallday;\n public eventclass;\n\n private eventSources: Array<any> = [];\n\n private dataSetEvents = {\n events: []\n };\n private oldData;\n // map the fullcalendar Element rendered\n private $fullCalendar;\n // model to the mobile calendar\n private proxyModel;\n private eventData;\n private events;\n private changesStack = [];\n\n // calendarOptions to the calendar\n private calendarOptions: any = {\n calendar: {\n height: 600,\n eventSources: this.eventSources,\n editable: true,\n locale: getSessionStorageItem('selectedLocale') || 'en',\n selectable: false,\n longPressDelay: isMobile() ? 1 : 1000,\n headerToolbar: defaultHeaderOptions,\n nextDayThreshold: NEXT_DAY_THRESHOLD,\n views: {\n month: {\n dayMaxEventsRow: true\n }\n },\n unselectAuto: false,\n eventDrop: this.eventDrop.bind(this),\n eventResizeStart: this.onEventChangeStart.bind(this),\n eventDragStart: this.onEventChangeStart.bind(this),\n eventResize: this.eventResize.bind(this),\n eventClick: this.eventClick.bind(this),\n select: this.select.bind(this),\n eventDidMount: this.eventDidMount.bind(this),\n viewDidMount: this.viewDidMount.bind(this),\n datesSet: this.datesSet.bind(this),\n dateClick: this.dateClick.bind(this)\n }\n };\n public view: string;\n private dayClass: Array<any> = [];\n private cancelLocaleChangeSubscription;\n\n // this function selects the default date given for the calendar\n selectDate() {\n let start, end;\n // checks if datavalue is an object and not a Date object\n if (isObject(this.datavalue) && !isDate(this.datavalue)) {\n // @ts-ignore\n start = moment(this.datavalue.start);\n // @ts-ignore\n end = moment(this.datavalue.end);\n } else {\n start = moment(this.datavalue);\n end = moment(this.datavalue).add(1, 'day').startOf('day');\n }\n this.$fullCalendar.gotoDate( (moment(start) as any)._d); // after selecting the date go to the date.\n\n this.$fullCalendar.select(start.valueOf(), end.valueOf());\n }\n\n // changes the calendar view to the default date given for the calendar.\n public gotoDate() {\n this.$fullCalendar.gotoDate( (moment(this.datavalue) as any)._d);\n }\n\n // this function takes the calendar view to the a year ahead\n public gotoNextYear() {\n this.$fullCalendar.nextYear();\n }\n\n // this function takes the calendar view to the a year before\n public gotoPrevYear() {\n this.$fullCalendar.prevYear();\n }\n\n /**\n * this function takes the calendar view to the specified month\n * @param monthVal, 1-12 value of month\n */\n public gotoMonth(monthVal) {\n let presentDay = this.$fullCalendar.getDate();\n const presentMonthVal = presentDay.getMonth();\n presentDay = moment(presentDay);\n if (presentMonthVal < monthVal) {\n this.$fullCalendar.gotoDate(presentDay.add(monthVal - presentMonthVal - 1, 'M').valueOf());\n } else {\n this.$fullCalendar.gotoDate(presentDay.subtract( presentMonthVal - monthVal + 1, 'M').valueOf());\n }\n }\n\n // this function takes the calendar view to the a month ahead\n public gotoNextMonth() {\n const presentDay = moment(this.$fullCalendar.getDate());\n this.$fullCalendar.gotoDate(presentDay.add(1, 'M').valueOf());\n }\n\n // this function takes the calendar view to the a month before\n public gotoPrevMonth() {\n const presentDay = moment(this.$fullCalendar.getDate());\n this.$fullCalendar.gotoDate(presentDay.subtract(1, 'M').valueOf());\n }\n\n\n // this function re-renders the events assigned to the calendar.\n public rerenderEvents() {\n this.$fullCalendar.render();\n }\n\n private setSelectedData(start, end) {\n let dataset = this.dataset;\n if (!dataset) {\n return;\n }\n\n const filteredDates = [];\n const eventStartKey = this.eventstart || 'start';\n const eventEndKey = this.eventend || 'end';\n const startDate = moment(new Date(start)).format('MM/DD/YYYY');\n const endDate = moment(new Date(end)).subtract(1, 'days').format('MM/DD/YYYY');\n\n dataset = dataset.data || dataset;\n dataset.forEach((value) => {\n if (!value[eventStartKey]) {\n return;\n }\n const eventStartDate = moment(new Date(value[eventStartKey])).format('MM/DD/YYYY');\n const eventEndDate = moment(new Date(value[eventEndKey] || value[eventStartKey])).format('MM/DD/YYYY');\n const eventExists = moment(eventStartDate).isSameOrAfter(startDate) && moment(eventEndDate).isSameOrBefore(endDate);\n if (eventExists) {\n filteredDates.push(value);\n }\n });\n return filteredDates;\n }\n\n private eventDrop(eventDropInfo) {\n let newDataObj = this.convertEventObjForOldAndNewData(eventDropInfo.event);\n let oldDataObj = this.convertEventObjForOldAndNewData(eventDropInfo.oldEvent);\n this.invokeEventCallback('eventdrop', {$event: eventDropInfo.jsEvent, $newData: newDataObj, $oldData: oldDataObj, $delta: eventDropInfo.delta, $revertFunc: eventDropInfo.revert, $ui: {}, $view: eventDropInfo.view});\n }\n\n // Returns the default date when the datavalue is provided\n getDefaultDate() {\n if (this.datavalue) {\n return new Date(this.datavalue);\n }\n }\n\n getDefaultOptions() {\n return this.calendarOptions;\n }\n\n getLib() {\n return 'fullcalendar';\n }\n\n private select($selectionInfo) {\n this.selecteddates = {start: getUTCDateTime($selectionInfo.start), end: getUTCDateTime($selectionInfo.end)};\n this.selecteddata = this.setSelectedData($selectionInfo.start, $selectionInfo.end);\n this.invokeEventCallback('select', {$start: $selectionInfo.start.valueOf(), $end: $selectionInfo.end.valueOf(), $view: $selectionInfo.view, $data: this.selecteddata});\n }\n\n /**\n * this functions unselects all the selections in calendar\n */\n public unselect() {\n this.$fullCalendar.unselect();\n }\n\n /**\n * this function is to add extendedProps data to the data object.\n * this is done for backward compatibility\n * @param eventObj event object as per new version (v5)\n * @returns _eventMetadata event object as per the old version (v3)\n */\n private convertEventObj(eventObj) {\n if (!eventObj.extendedProps._eventMetadata) {\n return eventObj;\n }\n const _eventMetadata = eventObj.extendedProps._eventMetadata;\n Object.setPrototypeOf(_eventMetadata, eventObj);\n return _eventMetadata;\n }\n\n /**\n * this function is to add extendedProps data to the data object exluding start end title allDay objects if the key name matches.\n * * this is done for backward compatibility\n * @param eventObj event object as per new version (v5)\n * @returns data event object as per the old version (v3)\n */\n private convertEventObjForOldAndNewData(eventObj) {\n const _eventMetadata = eventObj.extendedProps;\n extend(eventObj, _eventMetadata);\n return eventObj;\n }\n\n private eventResize(eventResizeInfo) {\n let newDataObj = this.convertEventObjForOldAndNewData(eventResizeInfo.event);\n let oldDataObj = this.convertEventObjForOldAndNewData(eventResizeInfo.oldEvent);\n this.invokeEventCallback('eventresize', {$event: eventResizeInfo.jsEvent, $newData: newDataObj, $oldData: oldDataObj, $delta: eventResizeInfo.delta, $revertFunc: eventResizeInfo.revert, $ui: {}, $view: eventResizeInfo.view});\n }\n\n private onEventChangeStart(event) {\n this.oldData = getClonedObject(event);\n }\n\n private eventClick(eventClickInfo) {\n let eventObj = this.convertEventObj(eventClickInfo.event);\n this.invokeEventCallback('eventclick', {$event: eventClickInfo.jsEvent, $data: eventObj, $view: eventClickInfo.view});\n }\n\n private eventDidMount(event) {\n let eventObj = this.convertEventObj(event.event);\n if (this.calendartype === VIEW_TYPES.LIST) {\n this.$element.find('.fc-list-table').addClass('table');\n }\n this.invokeEventCallback('eventrender', {$event: event.el, $data: eventObj, $view: event.view});\n }\n\n private viewDidMount($view) {\n if (this.calendartype === VIEW_TYPES.LIST) {\n this.$element.find('.fc-list-table').addClass('table');\n }\n this.invokeEventCallback('viewrender', {$view: $view});\n }\n\n /**\n * This function gets called when the view of the calendar changes.\n * @param data contains the start end data of the calendar view.\n */\n private datesSet(data) {\n this.currentview = {start: moment(data.start).format(\"YYYY-MM-DD\"), end: moment(data.end).format(\"YYYY-MM-DD\")};\n }\n\n private dateClick($info) {\n const dateInfo = getUTCDateTime($info.date).valueOf();\n this.invokeEventCallback('dateclick', {$dateInfo: dateInfo});\n }\n\n // update the calendar header options once the controls changes\n private updateCalendarHeaderOptions() {\n const ctrls = this.controls, viewType = this.calendartype,\n regEx = new RegExp('\\\\bday\\\\b', 'g');\n let left = '', right = '';\n if (ctrls && viewType) {\n if (includes(ctrls, 'navigation')) {\n left += ' prev next';\n }\n\n if (includes(ctrls, 'today')) {\n left += ' today';\n }\n\n if (includes(ctrls, 'year')) {\n right += (viewType === VIEW_TYPES.LIST) ? 'listYear' : '';\n }\n\n if (includes(ctrls, 'month')) {\n right += (viewType === VIEW_TYPES.LIST) ? ' listMonth' : ' dayGridMonth';\n }\n\n if (includes(ctrls, 'week')) {\n right += (viewType === VIEW_TYPES.BASIC) ? ' dayGridWeek' : (viewType === VIEW_TYPES.LIST) ? ' listWeek' : ' timeGridWeek';\n }\n\n if (regEx.test(ctrls)) {\n right += (viewType === VIEW_TYPES.BASIC) ? ' dayGridDay' : (viewType === VIEW_TYPES.LIST) ? ' listDay' : ' timeGridDay';\n }\n if (left.charAt(0) === ' ') {\n left = left.substring(1);\n }\n if (right.charAt(0) === ' ') {\n right = right.substring(1);\n }\n extend(this.calendarOptions.calendar.headerToolbar, {'start': left, 'end': right});\n }\n }\n\n constructor(inj: Injector, i18nService: AbstractI18nService, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n super(inj, WIDGET_CONFIG, explicitContext);\n\n this.eventSources.push(this.dataSetEvents);\n let FullCalendar = window['FullCalendar'] ? window['FullCalendar'] : Calendar;\n if (!FullCalendar.__wm_locale_initialized) {\n i18nService.initCalendarLocale();\n FullCalendar.__wm_locale_initialized = true;\n }\n\n this.cancelLocaleChangeSubscription = this.getAppInstance().subscribe(\"locale-changed\", (libLocale) => {\n this.setLocale();\n this.applyCalendarOptions('option', 'locale', libLocale.fullCalendar || 'en');\n this.redraw();\n });\n }\n\n ngOnInit() {\n super.ngOnInit();\n styler(this.nativeElement, this, APPLY_STYLES_TYPE.CONTAINER, ['height']);\n this.setLocale();\n }\n\n onStyleChange(key, nv, ov?) {\n super.onStyleChange(key, nv, ov);\n if (key === 'height') {\n this.calendarOptions.calendar.height = this.calculateHeight(nv);\n this.updateCalendarOptions('option', 'height', this.calendarOptions.calendar.height);\n }\n }\n\n onPropertyChange(key, nv, ov?) {\n super.onPropertyChange(key, nv, ov);\n switch (key) {\n case 'selectionmode':\n if (nv !== SELECTION_MODES.NONE) {\n this.calendarOptions.calendar.selectable = true;\n this.updateCalendarOptions('option', 'selectable', true);\n if (nv === SELECTION_MODES.SINGLE) {\n this.calendarOptions.calendar.selectConstraint = {\n startTime: '00:00',\n endTime: '24:00'\n };\n this.updateCalendarOptions('option', 'selectConstraint', this.calendarOptions.calendar.selectConstraint);\n } else {\n this.updateCalendarOptions('option', 'selectConstraint', {});\n }\n } else {\n this.calendarOptions.calendar.selectable = false;\n this.updateCalendarOptions('option', 'selectable', false);\n }\n break;\n case 'view':\n if (nv !== 'month' || this.calendartype === VIEW_TYPES.LIST) {\n this.calendarOptions.calendar.defaultView = this.calendartype + capitalize(nv);\n } else {\n this.calendarOptions.calendar.defaultView = nv;\n }\n this.updateCalendarOptions('changeView', this.calendarOptions.calendar.defaultView);\n break;\n case 'calendartype':\n this.calendartype = nv || 'dayGrid';\n case 'controls':\n this.updateCalendarHeaderOptions();\n break;\n case 'dataset':\n let dataSet;\n const self = this;\n this.dataset = nv;\n dataSet = createArrayFrom(getClonedObject(nv));\n dataSet = this.constructCalendarDataset(dataSet);\n this.dataSetEvents.events = dataSet.filter((event) => {\n event.start = event.start || event.end;\n if (event.start) {\n return true;\n }\n });\n\n this.renderEventDataSet();\n break;\n case 'show':\n this.$fullCalendar?.changeView(this.getViewType(this.view ? this.view : 'dayGridMonth'));\n }\n }\n\n // to calculate the height for the event limit and parsing the value when it is percentage based.\n private calculateHeight(height): number {\n const $parent = $(this.nativeElement).parent(),\n elHeight = height || '650px';\n\n let parentHeight: any = $parent.css('height'),\n computedHeight: number;\n\n if (includes(elHeight, '%')) {\n if (includes(parentHeight, '%')) {\n parentHeight = $parent.height();\n }\n computedHeight = (parseInt(parentHeight, 10) * Number(elHeight.replace(/\\%/g, ''))) / 100;\n } else {\n computedHeight = parseInt(elHeight, 10);\n }\n this.calendarOptions.calendar.views.month.eventLimit = parseInt('' + computedHeight / 200, 10) + 1;\n return computedHeight;\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n const calendarEl = this._calendar.nativeElement;\n let FullCalendar:any ;\n if(window['FullCalendar']) FullCalendar = window['FullCalendar'].Calendar \n else {\n FullCalendar = Calendar;\n this.calendarOptions.calendar = {...this.calendarOptions.calendar, plugins: [dayGridPlugin, timeGridPlugin, listPlugin,listPlugin, interactionPlugin], locales: allLocales}\n }\n\n const calendar = new FullCalendar(calendarEl, this.calendarOptions.calendar);\n this.$fullCalendar = calendar;\n this.invokeEventCallback('beforerender', {'$event' : {}});\n calendar.render();\n\n // if the changes are already stacked before calendar renders then execute them when needed\n if (this.changesStack.length) {\n this.changesStack.forEach((changeObj) => {\n this.applyCalendarOptions(changeObj.operationType, changeObj.argumentKey, changeObj.argumentValue);\n });\n this.changesStack.length = 0;\n }\n\n //WMS-22412 : change calender's view based on the configuration set from studio\n setTimeout(() => {\n this.$fullCalendar.changeView(this.getViewType(this.view ? this.view : 'dayGridMonth'));\n },50);\n }\n\n // constructs the calendar dataset by mapping the eventstart, eventend, eventtitle etc.,\n private constructCalendarDataset(eventSource) {\n const properties = {\n title: this.eventtitle || 'title',\n allDay: this.eventallday || 'allday',\n start: this.eventstart || 'start',\n end: this.eventend || 'end',\n className: this.eventclass || 'className'\n };\n\n eventSource.forEach((obj) => {\n obj._eventMetadata = clone(obj);\n if (isEmpty(obj._eventMetadata.url)) {\n delete obj._eventMetadata.url;\n }\n if (isEmpty(obj.url)) {\n delete obj.url;\n }\n\n mapKeys(properties, (value, key) => {\n let objVal;\n if (key === 'title') {\n objVal = getEvaluatedData(obj, {expression: value}, this.viewParent);\n } else if (key === 'allDay') {\n objVal = !!get(obj, value);\n } else {\n objVal = get(obj, value);\n }\n if (!objVal) {\n return;\n }\n obj[key] = objVal;\n });\n });\n return eventSource;\n }\n\n private setLocale() {\n const year = get(this.appLocale, 'LABEL_CALENDAR_YEAR') || BUTTON_TEXT.YEAR;\n const month = get(this.appLocale, 'LABEL_CALENDAR_MONTH') || BUTTON_TEXT.MONTH;\n const week = get(this.appLocale, 'LABEL_CALENDAR_WEEK') || BUTTON_TEXT.WEEK;\n const day = get(this.appLocale, 'LABEL_CALENDAR_DAY') || BUTTON_TEXT.DAY;\n const today = get(this.appLocale, 'LABEL_CALENDAR_TODAY') || BUTTON_TEXT.TODAY;\n this.calendarOptions.calendar.buttonText = { year, month, week, day, today,\n 'listYear': year,\n 'listMonth': month,\n 'listWeek': week,\n 'listDay': day\n };\n }\n\n /**\n * override the default calendar options with the newSet of options\n * @param options\n */\n overrideDefaults(options) {\n if (isObject(options)) {\n Object.entries(options).map(option => this.$fullCalendar.setOption(option[0], option[1]));\n }\n }\n\n /**\n * if the operations are performed before the calendar renders, the changes are pushed into changesStack and will be executed after the calendar gets rendered\n * if the calendar is already rendered, then the specific operation will be performed according to the operation type\n * @param operationType\n * @param argumentKey\n * @param argumentValue\n */\n updateCalendarOptions(operationType: string, argumentKey?: any, argumentValue?: any): void {//\n if (!this.$fullCalendar) {\n this.changesStack.push({\n operationType: operationType,\n argumentKey: argumentKey,\n argumentValue: argumentValue\n });\n return;\n }\n this.applyCalendarOptions(operationType, argumentKey, argumentValue);\n }\n\n redraw() {\n this.updateCalendarOptions('render');\n this.$fullCalendar?.changeView(this.getViewType(this.view ? this.view : 'dayGridMonth'));\n }\n\n // on date change invoke the select event, and if date has event on it then invoke the event click.\n private onValueChange(value: Date): void {\n this.proxyModel = value;\n const selectedDate = this.proxyModel && moment(this.proxyModel).startOf('day').format(dateFormat),\n selectedEventData = this.eventData[selectedDate],\n start = moment(this.proxyModel),\n end = moment(this.proxyModel).endOf('day');\n this.selecteddata = selectedEventData;\n this.selecteddates = {\n 'start': moment(selectedDate).valueOf(),\n 'end' : moment(selectedDate).endOf('day').valueOf()\n };\n this.calendarOptions.calendar.select(start.valueOf(), end.valueOf(), {}, this, selectedEventData);\n if (selectedEventData) {\n this.calendarOptions.calendar.eventClick(selectedEventData, {}, this);\n }\n }\n\n /**\n * This function will receive an object containing source of calendar, apikey and calendarId and will integrate the respective calendar with fullcalendar.\n * @param eventObject\n */\n public addEventSource(eventObject) {\n if (isEmpty(eventObject)) {\n console.warn('addEventSource method requires an object as a parameter.');\n return;\n }\n if (eventObject.source === 'google') {\n if (!eventObject.googleCalendarApiKey || !eventObject.googleCalendarId ) {\n console.warn('For google calendar integration, \\'googleCalendarApiKey\\' and \\'googleCalendarId\\' should be passed in the parameter object.');\n return;\n }\n this.$fullCalendar.setOption('googleCalendarApiKey', eventObject.googleCalendarApiKey);\n this.$fullCalendar.addEventSource({\n googleCalendarId: eventObject.googleCalendarId\n });\n }\n }\n\n /**\n * get the viewTypeKey according to the calendarType and viewType selected\n * @param viewKey\n */\n getViewType(viewKey) {\n const calendarType = this.calendartype;\n const view = this.view;\n let result;\n\n if (view === 'month') {\n result = (calendarType === VIEW_TYPES.LIST) ? 'listMonth' : 'dayGridMonth';\n } else if (view === 'week') {\n result = (calendarType === VIEW_TYPES.BASIC) ? 'dayGridWeek' : (calendarType === VIEW_TYPES.LIST) ? 'listWeek' : 'timeGridWeek';\n } else if (view === 'day') {\n result = (calendarType === VIEW_TYPES.BASIC) ? 'dayGridDay' : (calendarType === VIEW_TYPES.LIST) ? 'listDay' : 'timeGridDay';\n } else if (view === 'year') {\n result = (calendarType === VIEW_TYPES.LIST) ? 'listYear' : '';\n } else {\n result = viewKey;\n }\n return result;\n }\n\n /**\n * @param operationType\n * @param argumentKey\n * @param argumentValue\n * Handle various operations like Rendering Calendar, changing the calendar viewType, setting the calendarOptions according to the operationType.\n */\n applyCalendarOptions(operationType: string, argumentKey?: any, argumentValue?: any): void {\n switch (operationType) {\n case 'render':\n this.$fullCalendar.render();\n break;\n case 'option':\n this.$fullCalendar.setOption(argumentKey, argumentValue);\n break;\n case 'changeView':\n const view = this.getViewType(argumentKey);\n this.$fullCalendar.changeView(view);\n break;\n }\n }\n\n /**\n * Adds the new eventsDataSet to the calendar object with addEvent Method and re-renders the calendar\n */\n renderEventDataSet() {\n const self = this;\n this.$fullCalendar.batchRendering(function() {\n const events = self.$fullCalendar.getEvents();\n each(events, function (event) {\n const eventData = self.$fullCalendar.getEventById(event.id);\n eventData.remove();\n });\n each(self.dataSetEvents.events, function (event) {\n self.$fullCalendar.addEvent(event);\n });\n });\n }\n\n ngOnDestroy() {\n if(this.cancelLocaleChangeSubscription) {\n this.cancelLocaleChangeSubscription();\n }\n }\n}\n","<div #calendar></div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/input/calendar/src/calendar.props.ts","../../../../../projects/components/widgets/input/calendar/src/calendar.component.ts","../../../../../projects/components/widgets/input/calendar/src/calendar.component.html","../../../../../projects/components/widgets/input/calendar/src/index.ts"],"sourcesContent":["import { PROP_ANY, PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register } from '@wm/components/base';\n\nexport const registerProps = () => {\n const props = new Map(\n [\n ['calendartype', {value: 'basic', ...PROP_STRING}],\n ['class', PROP_STRING],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['controls', {value: 'navigation, today, year, month, week, day', ...PROP_STRING}],\n ['dataset', PROP_ANY],\n ['datavalue', PROP_STRING],\n ['eventallday', PROP_STRING],\n ['eventclass', PROP_STRING],\n ['eventend', PROP_STRING],\n ['eventstart', PROP_STRING],\n ['eventtitle', PROP_STRING],\n ['name', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['showindevice', {displayType: 'inline-block', value: 'all', ...PROP_STRING}],\n ['view', PROP_STRING],\n ['selectionmode', PROP_STRING]\n ]\n );\n register('wm-calendar', props);\n};\n","import { WmComponentsModule } from \"@wm/components/base\";\nimport {\n AfterContentInit,\n AfterViewInit,\n Component,\n ElementRef,\n Inject,\n Injector,\n OnDestroy,\n OnInit,\n Optional,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\n\nimport {AbstractI18nService, getClonedObject, getSessionStorageItem, isMobile} from '@wm/core';\n\nimport {\n APPLY_STYLES_TYPE,\n createArrayFrom,\n getEvaluatedData,\n IRedrawableComponent,\n provideAsWidgetRef,\n StylableComponent,\n styler\n} from '@wm/components/base';\n\nimport {registerProps} from './calendar.props';\nimport {capitalize, clone, each, extend, get, includes, isDate, isEmpty, isObject, mapKeys} from \"lodash-es\";\n\ndeclare const $;\nimport * as momentLib from 'moment';\nconst moment = momentLib.default || window['moment'];\nimport {Calendar} from '@fullcalendar/core';\nimport dayGridPlugin from '@fullcalendar/daygrid';\nimport timeGridPlugin from '@fullcalendar/timegrid';\nimport listPlugin from '@fullcalendar/list'\nimport interactionPlugin from '@fullcalendar/interaction';\nimport allLocales from '@fullcalendar/core/locales-all';\n\nimport {_WM_APP_PROJECT} from '@wm/core';\n\nconst DEFAULT_CLS = 'app-calendar';\nconst dateFormats = ['yyyy-MM-dd', 'yyyy-M-dd', 'M-dd-yyyy', 'MM-dd-yy', 'yyyy, dd MMMM', 'yyyy, MMM dd', 'MM/dd/yyyy', 'M/d/yyyy', 'EEE, dd MMM yyyy', 'EEE MMM dd yyyy', 'EEEE, MMMM dd, yyyy', 'timestamp'];\nconst defaultHeaderOptions = {\n start: 'prev next today',\n center: 'title',\n end: 'dayGridMonth dayGridWeek dayGridDay'\n};\nconst VIEW_TYPES = {\n BASIC: 'basic',\n AGENDA: 'agenda',\n LIST: 'list'\n};\nconst BUTTON_TEXT = {\n YEAR: 'Year',\n MONTH: 'Month',\n WEEK: 'Week',\n DAY: 'Day',\n TODAY: 'Today'\n};\nconst SELECTION_MODES = {\n NONE: 'none',\n SINGLE: 'single',\n MULTIPLE: 'multiple'\n};\nconst NEXT_DAY_THRESHOLD = {\n START: '00:00',\n END: '24:00'\n};\nconst getEventMomentValue = (value, key) => {\n let isDate = false;\n\n dateFormats.forEach((format) => {\n // moment supports uppercase formats\n if (moment(value, format.toUpperCase(), true).isValid()) {\n isDate = true;\n return false;\n }\n });\n\n // if the value is date then for end date the value should be end of the day as the calendar is approximating it to the start.\n if (isDate && key === 'end') {\n return moment(value).endOf('day');\n }\n\n return moment(value);\n};\nconst getUTCDateTime = (dateObj) => {\n dateObj = moment(dateObj);\n const year = dateObj.format('YYYY'),\n // javascript starts the month count from '0' where as moment returns the human count\n month = dateObj.format('MM') - 1,\n day = dateObj.format('DD'),\n hours = dateObj.format('HH'),\n minutes = dateObj.format('mm'),\n seconds = dateObj.format('ss');\n return new Date(year, month, day, hours, minutes, seconds);\n};\nconst WIDGET_CONFIG = {widgetType: 'wm-calendar', hostClass: DEFAULT_CLS};\nconst dateFormat = 'YYYY/MM/DD';\n\n@Component({\n standalone: true,\n imports: [WmComponentsModule],\n selector: '[wmCalendar]',\n templateUrl: './calendar.component.html',\n styleUrls: [],\n providers: [\n provideAsWidgetRef(CalendarComponent)\n ],\n encapsulation: ViewEncapsulation.None\n})\nexport class CalendarComponent extends StylableComponent implements AfterContentInit, AfterViewInit, OnInit, OnDestroy, IRedrawableComponent {\n static initializeProps = registerProps();\n // The calendar element reference\n @ViewChild('calendar') _calendar: ElementRef;\n @ViewChild('datepicker') _datepicker: ElementRef;\n\n public selecteddates: any;\n public selecteddata: any;\n public currentview: object;\n public dataset: any;\n public calendartype;\n public controls = 'navigation, today, year, month, week, day';\n public datavalue;\n public eventtitle;\n public eventstart;\n public eventend;\n public eventallday;\n public eventclass;\n\n private eventSources: Array<any> = [];\n\n private dataSetEvents = {\n events: []\n };\n private oldData;\n // map the fullcalendar Element rendered\n private $fullCalendar;\n // model to the mobile calendar\n private proxyModel;\n private eventData;\n private events;\n private changesStack = [];\n\n // calendarOptions to the calendar\n private calendarOptions: any = {\n calendar: {\n height: 600,\n eventSources: this.eventSources,\n editable: true,\n locale: getSessionStorageItem('selectedLocale') || 'en',\n selectable: false,\n longPressDelay: isMobile() ? 1 : 1000,\n headerToolbar: defaultHeaderOptions,\n nextDayThreshold: NEXT_DAY_THRESHOLD,\n views: {\n month: {\n dayMaxEventsRow: true\n }\n },\n unselectAuto: false,\n eventDrop: this.eventDrop.bind(this),\n eventResizeStart: this.onEventChangeStart.bind(this),\n eventDragStart: this.onEventChangeStart.bind(this),\n eventResize: this.eventResize.bind(this),\n eventClick: this.eventClick.bind(this),\n select: this.select.bind(this),\n eventDidMount: this.eventDidMount.bind(this),\n viewDidMount: this.viewDidMount.bind(this),\n datesSet: this.datesSet.bind(this),\n dateClick: this.dateClick.bind(this)\n }\n };\n public view: string;\n private dayClass: Array<any> = [];\n private cancelLocaleChangeSubscription;\n\n // this function selects the default date given for the calendar\n selectDate() {\n let start, end;\n // checks if datavalue is an object and not a Date object\n if (isObject(this.datavalue) && !isDate(this.datavalue)) {\n // @ts-ignore\n start = moment(this.datavalue.start);\n // @ts-ignore\n end = moment(this.datavalue.end);\n } else {\n start = moment(this.datavalue);\n end = moment(this.datavalue).add(1, 'day').startOf('day');\n }\n this.$fullCalendar.gotoDate( (moment(start) as any)._d); // after selecting the date go to the date.\n\n this.$fullCalendar.select(start.valueOf(), end.valueOf());\n }\n\n // changes the calendar view to the default date given for the calendar.\n public gotoDate() {\n this.$fullCalendar.gotoDate( (moment(this.datavalue) as any)._d);\n }\n\n // this function takes the calendar view to the a year ahead\n public gotoNextYear() {\n this.$fullCalendar.nextYear();\n }\n\n // this function takes the calendar view to the a year before\n public gotoPrevYear() {\n this.$fullCalendar.prevYear();\n }\n\n /**\n * this function takes the calendar view to the specified month\n * @param monthVal, 1-12 value of month\n */\n public gotoMonth(monthVal) {\n let presentDay = this.$fullCalendar.getDate();\n const presentMonthVal = presentDay.getMonth();\n presentDay = moment(presentDay);\n if (presentMonthVal < monthVal) {\n this.$fullCalendar.gotoDate(presentDay.add(monthVal - presentMonthVal - 1, 'M').valueOf());\n } else {\n this.$fullCalendar.gotoDate(presentDay.subtract( presentMonthVal - monthVal + 1, 'M').valueOf());\n }\n }\n\n // this function takes the calendar view to the a month ahead\n public gotoNextMonth() {\n const presentDay = moment(this.$fullCalendar.getDate());\n this.$fullCalendar.gotoDate(presentDay.add(1, 'M').valueOf());\n }\n\n // this function takes the calendar view to the a month before\n public gotoPrevMonth() {\n const presentDay = moment(this.$fullCalendar.getDate());\n this.$fullCalendar.gotoDate(presentDay.subtract(1, 'M').valueOf());\n }\n\n\n // this function re-renders the events assigned to the calendar.\n public rerenderEvents() {\n this.$fullCalendar.render();\n }\n\n private setSelectedData(start, end) {\n let dataset = this.dataset;\n if (!dataset) {\n return;\n }\n\n const filteredDates = [];\n const eventStartKey = this.eventstart || 'start';\n const eventEndKey = this.eventend || 'end';\n const startDate = moment(new Date(start)).format('MM/DD/YYYY');\n const endDate = moment(new Date(end)).subtract(1, 'days').format('MM/DD/YYYY');\n\n dataset = dataset.data || dataset;\n dataset.forEach((value) => {\n if (!value[eventStartKey]) {\n return;\n }\n const eventStartDate = moment(new Date(value[eventStartKey])).format('MM/DD/YYYY');\n const eventEndDate = moment(new Date(value[eventEndKey] || value[eventStartKey])).format('MM/DD/YYYY');\n const eventExists = moment(eventStartDate).isSameOrAfter(startDate) && moment(eventEndDate).isSameOrBefore(endDate);\n if (eventExists) {\n filteredDates.push(value);\n }\n });\n return filteredDates;\n }\n\n private eventDrop(eventDropInfo) {\n let newDataObj = this.convertEventObjForOldAndNewData(eventDropInfo.event);\n let oldDataObj = this.convertEventObjForOldAndNewData(eventDropInfo.oldEvent);\n this.invokeEventCallback('eventdrop', {$event: eventDropInfo.jsEvent, $newData: newDataObj, $oldData: oldDataObj, $delta: eventDropInfo.delta, $revertFunc: eventDropInfo.revert, $ui: {}, $view: eventDropInfo.view});\n }\n\n // Returns the default date when the datavalue is provided\n getDefaultDate() {\n if (this.datavalue) {\n return new Date(this.datavalue);\n }\n }\n\n getDefaultOptions() {\n return this.calendarOptions;\n }\n\n getLib() {\n return 'fullcalendar';\n }\n\n private select($selectionInfo) {\n this.selecteddates = {start: getUTCDateTime($selectionInfo.start), end: getUTCDateTime($selectionInfo.end)};\n this.selecteddata = this.setSelectedData($selectionInfo.start, $selectionInfo.end);\n this.invokeEventCallback('select', {$start: $selectionInfo.start.valueOf(), $end: $selectionInfo.end.valueOf(), $view: $selectionInfo.view, $data: this.selecteddata});\n }\n\n /**\n * this functions unselects all the selections in calendar\n */\n public unselect() {\n this.$fullCalendar.unselect();\n }\n\n /**\n * this function is to add extendedProps data to the data object.\n * this is done for backward compatibility\n * @param eventObj event object as per new version (v5)\n * @returns _eventMetadata event object as per the old version (v3)\n */\n private convertEventObj(eventObj) {\n if (!eventObj.extendedProps._eventMetadata) {\n return eventObj;\n }\n const _eventMetadata = eventObj.extendedProps._eventMetadata;\n Object.setPrototypeOf(_eventMetadata, eventObj);\n return _eventMetadata;\n }\n\n /**\n * this function is to add extendedProps data to the data object exluding start end title allDay objects if the key name matches.\n * * this is done for backward compatibility\n * @param eventObj event object as per new version (v5)\n * @returns data event object as per the old version (v3)\n */\n private convertEventObjForOldAndNewData(eventObj) {\n const _eventMetadata = eventObj.extendedProps;\n extend(eventObj, _eventMetadata);\n return eventObj;\n }\n\n private eventResize(eventResizeInfo) {\n let newDataObj = this.convertEventObjForOldAndNewData(eventResizeInfo.event);\n let oldDataObj = this.convertEventObjForOldAndNewData(eventResizeInfo.oldEvent);\n this.invokeEventCallback('eventresize', {$event: eventResizeInfo.jsEvent, $newData: newDataObj, $oldData: oldDataObj, $delta: eventResizeInfo.delta, $revertFunc: eventResizeInfo.revert, $ui: {}, $view: eventResizeInfo.view});\n }\n\n private onEventChangeStart(event) {\n this.oldData = getClonedObject(event);\n }\n\n private eventClick(eventClickInfo) {\n let eventObj = this.convertEventObj(eventClickInfo.event);\n this.invokeEventCallback('eventclick', {$event: eventClickInfo.jsEvent, $data: eventObj, $view: eventClickInfo.view});\n }\n\n private eventDidMount(event) {\n let eventObj = this.convertEventObj(event.event);\n if (this.calendartype === VIEW_TYPES.LIST) {\n this.$element.find('.fc-list-table').addClass('table');\n }\n this.invokeEventCallback('eventrender', {$event: event.el, $data: eventObj, $view: event.view});\n }\n\n private viewDidMount($view) {\n if (this.calendartype === VIEW_TYPES.LIST) {\n this.$element.find('.fc-list-table').addClass('table');\n }\n this.invokeEventCallback('viewrender', {$view: $view});\n }\n\n /**\n * This function gets called when the view of the calendar changes.\n * @param data contains the start end data of the calendar view.\n */\n private datesSet(data) {\n this.currentview = {start: moment(data.start).format(\"YYYY-MM-DD\"), end: moment(data.end).format(\"YYYY-MM-DD\")};\n }\n\n private dateClick($info) {\n const dateInfo = getUTCDateTime($info.date).valueOf();\n this.invokeEventCallback('dateclick', {$dateInfo: dateInfo});\n }\n\n // update the calendar header options once the controls changes\n private updateCalendarHeaderOptions() {\n const ctrls = this.controls, viewType = this.calendartype,\n regEx = new RegExp('\\\\bday\\\\b', 'g');\n let left = '', right = '';\n if (ctrls && viewType) {\n if (includes(ctrls, 'navigation')) {\n left += ' prev next';\n }\n\n if (includes(ctrls, 'today')) {\n left += ' today';\n }\n\n if (includes(ctrls, 'year')) {\n right += (viewType === VIEW_TYPES.LIST) ? 'listYear' : '';\n }\n\n if (includes(ctrls, 'month')) {\n right += (viewType === VIEW_TYPES.LIST) ? ' listMonth' : ' dayGridMonth';\n }\n\n if (includes(ctrls, 'week')) {\n right += (viewType === VIEW_TYPES.BASIC) ? ' dayGridWeek' : (viewType === VIEW_TYPES.LIST) ? ' listWeek' : ' timeGridWeek';\n }\n\n if (regEx.test(ctrls)) {\n right += (viewType === VIEW_TYPES.BASIC) ? ' dayGridDay' : (viewType === VIEW_TYPES.LIST) ? ' listDay' : ' timeGridDay';\n }\n if (left.charAt(0) === ' ') {\n left = left.substring(1);\n }\n if (right.charAt(0) === ' ') {\n right = right.substring(1);\n }\n extend(this.calendarOptions.calendar.headerToolbar, {'start': left, 'end': right});\n }\n }\n\n constructor(inj: Injector, i18nService: AbstractI18nService, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n super(inj, WIDGET_CONFIG, explicitContext);\n\n this.eventSources.push(this.dataSetEvents);\n let FullCalendar = window['FullCalendar'] ? window['FullCalendar'] : Calendar;\n if (!FullCalendar.__wm_locale_initialized) {\n i18nService.initCalendarLocale();\n FullCalendar.__wm_locale_initialized = true;\n }\n\n this.cancelLocaleChangeSubscription = this.getAppInstance().subscribe(\"locale-changed\", (libLocale) => {\n this.setLocale();\n this.applyCalendarOptions('option', 'locale', libLocale.fullCalendar || 'en');\n this.redraw();\n });\n }\n\n ngOnInit() {\n super.ngOnInit();\n styler(this.nativeElement, this, APPLY_STYLES_TYPE.CONTAINER, ['height']);\n this.setLocale();\n }\n\n onStyleChange(key, nv, ov?) {\n super.onStyleChange(key, nv, ov);\n if (key === 'height') {\n this.calendarOptions.calendar.height = this.calculateHeight(nv);\n this.updateCalendarOptions('option', 'height', this.calendarOptions.calendar.height);\n }\n }\n\n onPropertyChange(key, nv, ov?) {\n super.onPropertyChange(key, nv, ov);\n switch (key) {\n case 'selectionmode':\n if (nv !== SELECTION_MODES.NONE) {\n this.calendarOptions.calendar.selectable = true;\n this.updateCalendarOptions('option', 'selectable', true);\n if (nv === SELECTION_MODES.SINGLE) {\n this.calendarOptions.calendar.selectConstraint = {\n startTime: '00:00',\n endTime: '24:00'\n };\n this.updateCalendarOptions('option', 'selectConstraint', this.calendarOptions.calendar.selectConstraint);\n } else {\n this.updateCalendarOptions('option', 'selectConstraint', {});\n }\n } else {\n this.calendarOptions.calendar.selectable = false;\n this.updateCalendarOptions('option', 'selectable', false);\n }\n break;\n case 'view':\n if (nv !== 'month' || this.calendartype === VIEW_TYPES.LIST) {\n this.calendarOptions.calendar.defaultView = this.calendartype + capitalize(nv);\n } else {\n this.calendarOptions.calendar.defaultView = nv;\n }\n this.updateCalendarOptions('changeView', this.calendarOptions.calendar.defaultView);\n break;\n case 'calendartype':\n this.calendartype = nv || 'dayGrid';\n case 'controls':\n this.updateCalendarHeaderOptions();\n break;\n case 'dataset':\n let dataSet;\n const self = this;\n this.dataset = nv;\n dataSet = createArrayFrom(getClonedObject(nv));\n dataSet = this.constructCalendarDataset(dataSet);\n this.dataSetEvents.events = dataSet.filter((event) => {\n event.start = event.start || event.end;\n if (event.start) {\n return true;\n }\n });\n\n this.renderEventDataSet();\n break;\n case 'show':\n this.$fullCalendar?.changeView(this.getViewType(this.view ? this.view : 'dayGridMonth'));\n }\n }\n\n // to calculate the height for the event limit and parsing the value when it is percentage based.\n private calculateHeight(height): number {\n const $parent = $(this.nativeElement).parent(),\n elHeight = height || '650px';\n\n let parentHeight: any = $parent.css('height'),\n computedHeight: number;\n\n if (includes(elHeight, '%')) {\n if (includes(parentHeight, '%')) {\n parentHeight = $parent.height();\n }\n computedHeight = (parseInt(parentHeight, 10) * Number(elHeight.replace(/\\%/g, ''))) / 100;\n } else {\n computedHeight = parseInt(elHeight, 10);\n }\n this.calendarOptions.calendar.views.month.eventLimit = parseInt('' + computedHeight / 200, 10) + 1;\n return computedHeight;\n }\n\n ngAfterViewInit() {\n super.ngAfterViewInit();\n const calendarEl = this._calendar.nativeElement;\n let FullCalendar:any ;\n if(window['FullCalendar']) FullCalendar = window['FullCalendar'].Calendar \n else {\n FullCalendar = Calendar;\n this.calendarOptions.calendar = {...this.calendarOptions.calendar, plugins: [dayGridPlugin, timeGridPlugin, listPlugin,listPlugin, interactionPlugin], locales: allLocales}\n }\n\n const calendar = new FullCalendar(calendarEl, this.calendarOptions.calendar);\n this.$fullCalendar = calendar;\n this.invokeEventCallback('beforerender', {'$event' : {}});\n calendar.render();\n\n // if the changes are already stacked before calendar renders then execute them when needed\n if (this.changesStack.length) {\n this.changesStack.forEach((changeObj) => {\n this.applyCalendarOptions(changeObj.operationType, changeObj.argumentKey, changeObj.argumentValue);\n });\n this.changesStack.length = 0;\n }\n\n //WMS-22412 : change calender's view based on the configuration set from studio\n setTimeout(() => {\n this.$fullCalendar.changeView(this.getViewType(this.view ? this.view : 'dayGridMonth'));\n },50);\n }\n\n // constructs the calendar dataset by mapping the eventstart, eventend, eventtitle etc.,\n private constructCalendarDataset(eventSource) {\n const properties = {\n title: this.eventtitle || 'title',\n allDay: this.eventallday || 'allday',\n start: this.eventstart || 'start',\n end: this.eventend || 'end',\n className: this.eventclass || 'className'\n };\n\n eventSource.forEach((obj) => {\n obj._eventMetadata = clone(obj);\n if (isEmpty(obj._eventMetadata.url)) {\n delete obj._eventMetadata.url;\n }\n if (isEmpty(obj.url)) {\n delete obj.url;\n }\n\n mapKeys(properties, (value, key) => {\n let objVal;\n if (key === 'title') {\n objVal = getEvaluatedData(obj, {expression: value}, this.viewParent);\n } else if (key === 'allDay') {\n objVal = !!get(obj, value);\n } else {\n objVal = get(obj, value);\n }\n if (!objVal) {\n return;\n }\n obj[key] = objVal;\n });\n });\n return eventSource;\n }\n\n private setLocale() {\n const year = get(this.appLocale, 'LABEL_CALENDAR_YEAR') || BUTTON_TEXT.YEAR;\n const month = get(this.appLocale, 'LABEL_CALENDAR_MONTH') || BUTTON_TEXT.MONTH;\n const week = get(this.appLocale, 'LABEL_CALENDAR_WEEK') || BUTTON_TEXT.WEEK;\n const day = get(this.appLocale, 'LABEL_CALENDAR_DAY') || BUTTON_TEXT.DAY;\n const today = get(this.appLocale, 'LABEL_CALENDAR_TODAY') || BUTTON_TEXT.TODAY;\n this.calendarOptions.calendar.buttonText = { year, month, week, day, today,\n 'listYear': year,\n 'listMonth': month,\n 'listWeek': week,\n 'listDay': day\n };\n }\n\n /**\n * override the default calendar options with the newSet of options\n * @param options\n */\n overrideDefaults(options) {\n if (isObject(options)) {\n Object.entries(options).map(option => this.$fullCalendar.setOption(option[0], option[1]));\n }\n }\n\n /**\n * if the operations are performed before the calendar renders, the changes are pushed into changesStack and will be executed after the calendar gets rendered\n * if the calendar is already rendered, then the specific operation will be performed according to the operation type\n * @param operationType\n * @param argumentKey\n * @param argumentValue\n */\n updateCalendarOptions(operationType: string, argumentKey?: any, argumentValue?: any): void {//\n if (!this.$fullCalendar) {\n this.changesStack.push({\n operationType: operationType,\n argumentKey: argumentKey,\n argumentValue: argumentValue\n });\n return;\n }\n this.applyCalendarOptions(operationType, argumentKey, argumentValue);\n }\n\n redraw() {\n this.updateCalendarOptions('render');\n this.$fullCalendar?.changeView(this.getViewType(this.view ? this.view : 'dayGridMonth'));\n }\n\n // on date change invoke the select event, and if date has event on it then invoke the event click.\n private onValueChange(value: Date): void {\n this.proxyModel = value;\n const selectedDate = this.proxyModel && moment(this.proxyModel).startOf('day').format(dateFormat),\n selectedEventData = this.eventData[selectedDate],\n start = moment(this.proxyModel),\n end = moment(this.proxyModel).endOf('day');\n this.selecteddata = selectedEventData;\n this.selecteddates = {\n 'start': moment(selectedDate).valueOf(),\n 'end' : moment(selectedDate).endOf('day').valueOf()\n };\n this.calendarOptions.calendar.select(start.valueOf(), end.valueOf(), {}, this, selectedEventData);\n if (selectedEventData) {\n this.calendarOptions.calendar.eventClick(selectedEventData, {}, this);\n }\n }\n\n /**\n * This function will receive an object containing source of calendar, apikey and calendarId and will integrate the respective calendar with fullcalendar.\n * @param eventObject\n */\n public addEventSource(eventObject) {\n if (isEmpty(eventObject)) {\n console.warn('addEventSource method requires an object as a parameter.');\n return;\n }\n if (eventObject.source === 'google') {\n if (!eventObject.googleCalendarApiKey || !eventObject.googleCalendarId ) {\n console.warn('For google calendar integration, \\'googleCalendarApiKey\\' and \\'googleCalendarId\\' should be passed in the parameter object.');\n return;\n }\n this.$fullCalendar.setOption('googleCalendarApiKey', eventObject.googleCalendarApiKey);\n this.$fullCalendar.addEventSource({\n googleCalendarId: eventObject.googleCalendarId\n });\n }\n }\n\n /**\n * get the viewTypeKey according to the calendarType and viewType selected\n * @param viewKey\n */\n getViewType(viewKey) {\n const calendarType = this.calendartype;\n const view = this.view;\n let result;\n\n if (view === 'month') {\n result = (calendarType === VIEW_TYPES.LIST) ? 'listMonth' : 'dayGridMonth';\n } else if (view === 'week') {\n result = (calendarType === VIEW_TYPES.BASIC) ? 'dayGridWeek' : (calendarType === VIEW_TYPES.LIST) ? 'listWeek' : 'timeGridWeek';\n } else if (view === 'day') {\n result = (calendarType === VIEW_TYPES.BASIC) ? 'dayGridDay' : (calendarType === VIEW_TYPES.LIST) ? 'listDay' : 'timeGridDay';\n } else if (view === 'year') {\n result = (calendarType === VIEW_TYPES.LIST) ? 'listYear' : '';\n } else {\n result = viewKey;\n }\n return result;\n }\n\n /**\n * @param operationType\n * @param argumentKey\n * @param argumentValue\n * Handle various operations like Rendering Calendar, changing the calendar viewType, setting the calendarOptions according to the operationType.\n */\n applyCalendarOptions(operationType: string, argumentKey?: any, argumentValue?: any): void {\n switch (operationType) {\n case 'render':\n this.$fullCalendar.render();\n break;\n case 'option':\n this.$fullCalendar.setOption(argumentKey, argumentValue);\n break;\n case 'changeView':\n const view = this.getViewType(argumentKey);\n this.$fullCalendar.changeView(view);\n break;\n }\n }\n\n /**\n * Adds the new eventsDataSet to the calendar object with addEvent Method and re-renders the calendar\n */\n renderEventDataSet() {\n const self = this;\n this.$fullCalendar.batchRendering(function() {\n const events = self.$fullCalendar.getEvents();\n each(events, function (event) {\n const eventData = self.$fullCalendar.getEventById(event.id);\n eventData.remove();\n });\n each(self.dataSetEvents.events, function (event) {\n self.$fullCalendar.addEvent(event);\n });\n });\n }\n\n ngOnDestroy() {\n if(this.cancelLocaleChangeSubscription) {\n this.cancelLocaleChangeSubscription();\n }\n }\n}\n","<div #calendar></div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  (function (global, factory) {
2
2
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@wm/components/base'), require('angular-imask'), require('@angular/core'), require('@angular/forms'), require('ngx-bootstrap/datepicker'), require('@wm/core'), require('@angular/common'), require('ngx-bootstrap/dropdown'), require('ngx-bootstrap/timepicker'), require('@wm/components/input'), require('ngx-bootstrap/modal'), require('lodash-es'), require('moment'), require('imask')) :
3
3
  typeof define === 'function' && define.amd ? define(['exports', '@wm/components/base', 'angular-imask', '@angular/core', '@angular/forms', 'ngx-bootstrap/datepicker', '@wm/core', '@angular/common', 'ngx-bootstrap/dropdown', 'ngx-bootstrap/timepicker', '@wm/components/input', 'ngx-bootstrap/modal', 'lodash-es', 'moment', 'imask'], factory) :
4
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.wm = global.wm || {}, global.wm.components = global.wm.components || {}, global.wm.components.input = global.wm.components.input || {}, global.wm.components.input.epoch = {}), global.wm.components.base, global.angularIMask, global.ng.core, global.ng.forms, global.datepicker, global.wm.core, global.ng.common, global.dropdown, global.timepicker, global.wm.components.input, global.modal, global._, global.moment, global.IMask));
5
- })(this, (function (exports, base, i2$1, i0, i2$2, i2, i1$1, common, i3, i5, input, i1, lodashEs, moment, IMask) { 'use strict';
4
+ (global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.wm = global.wm || {}, global.wm.components = global.wm.components || {}, global.wm.components.input = global.wm.components.input || {}, global.wm.components.input.epoch = {}), global.wm.components.base, global.angularIMask, global.ng.core, global.ng.forms, global.datepicker, global.wm.core, global.ng.common, global.dropdown, global.timepicker, global.wm.components.input, global.modal, global._, global.momentLib, global.IMask));
5
+ })(this, (function (exports, base, i2$1, i0, i2$2, i2, i1$1, common, i3, i5, input, i1, lodashEs, momentLib, IMask) { 'use strict';
6
6
 
7
7
  function _interopNamespaceDefault(e) {
8
8
  var n = Object.create(null);
@@ -29,6 +29,7 @@
29
29
  var i3__namespace = /*#__PURE__*/_interopNamespaceDefault(i3);
30
30
  var i5__namespace = /*#__PURE__*/_interopNamespaceDefault(i5);
31
31
  var i1__namespace = /*#__PURE__*/_interopNamespaceDefault(i1);
32
+ var momentLib__namespace = /*#__PURE__*/_interopNamespaceDefault(momentLib);
32
33
 
33
34
  const _c0$4 = ["*"];
34
35
  function PickerComponent_For_7_Template(rf, ctx) { if (rf & 1) {
@@ -281,6 +282,7 @@
281
282
  i0__namespace.ɵɵadvance(2);
282
283
  i0__namespace.ɵɵtextInterpolate(ctx_r2.appLocale.LABEL_CLEAR_DATE || "Clear");
283
284
  } }
285
+ const moment$4 = momentLib__namespace.default || window['moment'];
284
286
  class DateTimePickerComponent {
285
287
  constructor(inj, bsModalService) {
286
288
  this.inj = inj;
@@ -319,19 +321,19 @@
319
321
  if (!this.changedValue) {
320
322
  return true;
321
323
  }
322
- const cd = moment(this.changedValue);
324
+ const cd = moment$4(this.changedValue);
323
325
  const minDate = this._bsDatepickerConfig?.minDate;
324
326
  const maxDate = this._bsDatepickerConfig?.maxDate;
325
327
  if (minDate
326
328
  && ((this.mode === 'DATE'
327
- && moment(minDate).startOf('day').toDate() > this.changedValue)
329
+ && moment$4(minDate).startOf('day').toDate() > this.changedValue)
328
330
  || (this.mode !== 'DATE'
329
331
  && minDate > this.changedValue))) {
330
332
  return false;
331
333
  }
332
334
  if (maxDate
333
335
  && ((this.mode === 'DATE'
334
- && moment(maxDate).endOf('day').toDate() < this.changedValue)
336
+ && moment$4(maxDate).endOf('day').toDate() < this.changedValue)
335
337
  || (this.mode !== 'DATE'
336
338
  && maxDate < this.changedValue))) {
337
339
  return false;
@@ -368,7 +370,7 @@
368
370
  $('body>modal-container .date-picker-modal').click(() => this.onCancelClick());
369
371
  }
370
372
  getDateLabel() {
371
- return moment(this.changedValue).format(this.displayFormat);
373
+ return moment$4(this.changedValue).format(this.displayFormat);
372
374
  }
373
375
  openDatePicker() {
374
376
  this.isTimeOpen = false;
@@ -417,7 +419,7 @@
417
419
  this.hideModal();
418
420
  }
419
421
  setToday() {
420
- const today = moment().startOf('day').toDate();
422
+ const today = moment$4().startOf('day').toDate();
421
423
  this.onDateUpdate(today);
422
424
  }
423
425
  reset() {
@@ -542,7 +544,7 @@
542
544
  }], displayFormat: [{
543
545
  type: i0.Input
544
546
  }] }); })();
545
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassDebugInfo(DateTimePickerComponent, { className: "DateTimePickerComponent", filePath: "date-time/date-time-picker.component.ts", lineNumber: 66 }); })();
547
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassDebugInfo(DateTimePickerComponent, { className: "DateTimePickerComponent", filePath: "date-time/date-time-picker.component.ts", lineNumber: 67 }); })();
546
548
  class TimePickerComponent {
547
549
  constructor(inj) {
548
550
  this.inj = inj;
@@ -572,16 +574,16 @@
572
574
  }
573
575
  set({ index, value }, unit) {
574
576
  if (unit === 'HOUR') {
575
- this.value = moment(this.value).hour(parseInt(value)).toDate();
577
+ this.value = moment$4(this.value).hour(parseInt(value)).toDate();
576
578
  }
577
579
  else if (unit === 'MINUTE') {
578
- this.value = moment(this.value).minute(parseInt(value)).toDate();
580
+ this.value = moment$4(this.value).minute(parseInt(value)).toDate();
579
581
  }
580
582
  else if (unit === 'SECOND') {
581
- this.value = moment(this.value).second(parseInt(value)).toDate();
583
+ this.value = moment$4(this.value).second(parseInt(value)).toDate();
582
584
  }
583
585
  else if (unit === 'MERIDIAN') {
584
- this.value = moment(this.value).minute(value).toDate();
586
+ this.value = moment$4(this.value).minute(value).toDate();
585
587
  }
586
588
  if (this.min && this.value < this.min) {
587
589
  this.value = this.min;
@@ -592,13 +594,13 @@
592
594
  this.change.emit(this.value);
593
595
  }
594
596
  get hour() {
595
- return moment(this.value).hour();
597
+ return moment$4(this.value).hour();
596
598
  }
597
599
  get minute() {
598
- return moment(this.value).minute();
600
+ return moment$4(this.value).minute();
599
601
  }
600
602
  get second() {
601
- return moment(this.value).second();
603
+ return moment$4(this.value).second();
602
604
  }
603
605
  get meridian() {
604
606
  return 'AM';
@@ -668,8 +670,9 @@
668
670
  }], change: [{
669
671
  type: i0.Output
670
672
  }] }); })();
671
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassDebugInfo(TimePickerComponent, { className: "TimePickerComponent", filePath: "date-time/date-time-picker.component.ts", lineNumber: 319 }); })();
673
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassDebugInfo(TimePickerComponent, { className: "TimePickerComponent", filePath: "date-time/date-time-picker.component.ts", lineNumber: 320 }); })();
672
674
 
675
+ const moment$3 = momentLib__namespace.default || window['moment'];
673
676
  const CURRENT_DATE$2 = 'CURRENT_DATE';
674
677
  const months = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
675
678
  const DATEPICKER_DROPDOWN_OPTIONS = {
@@ -805,9 +808,9 @@
805
808
  minDateMaxDateValidationOnInput(newVal, $event, displayValue, isNativePicker) {
806
809
  if (newVal) {
807
810
  const dateTimeVal = newVal;
808
- newVal = moment(newVal).startOf('day').toDate();
809
- const minDate = moment(i1$1.getDateObj(this.mindate)).startOf('day').toDate();
810
- const maxDate = moment(i1$1.getDateObj(this.maxdate)).startOf('day').toDate();
811
+ newVal = moment$3(newVal).startOf('day').toDate();
812
+ const minDate = moment$3(i1$1.getDateObj(this.mindate)).startOf('day').toDate();
813
+ const maxDate = moment$3(i1$1.getDateObj(this.maxdate)).startOf('day').toDate();
811
814
  if (this.mindate && newVal < minDate) {
812
815
  const msg = `${this.appLocale.LABEL_MINDATE_VALIDATION_MESSAGE} ${this.mindate}.`;
813
816
  this.invokeOnChange(this.datavalue, undefined, false);
@@ -947,7 +950,7 @@
947
950
  if ($(obj).hasClass('selected')) {
948
951
  $(obj).parent().attr('aria-selected', 'true');
949
952
  }
950
- $(obj).attr('aria-label', moment(newDate).format('dddd, MMMM Do YYYY'));
953
+ $(obj).attr('aria-label', moment$3(newDate).format('dddd, MMMM Do YYYY'));
951
954
  $('[bsdatepickerdaydecorator]').not('.is-other-month').attr('tabindex', '-1');
952
955
  $(obj).attr('tabindex', '0');
953
956
  $(obj).focus();
@@ -1076,7 +1079,7 @@
1076
1079
  let newdate;
1077
1080
  if (event.key === 'ArrowDown') {
1078
1081
  event.preventDefault();
1079
- newdate = moment(this.activeDate).add(7, 'days').toDate();
1082
+ newdate = moment$3(this.activeDate).add(7, 'days').toDate();
1080
1083
  this.setActiveDateFocus(newdate);
1081
1084
  }
1082
1085
  else if (event.ctrlKey && event.key === 'ArrowUp') {
@@ -1087,25 +1090,25 @@
1087
1090
  }
1088
1091
  else if (event.key === 'ArrowUp') {
1089
1092
  event.preventDefault();
1090
- newdate = moment(this.activeDate).add(-7, 'days').toDate();
1093
+ newdate = moment$3(this.activeDate).add(-7, 'days').toDate();
1091
1094
  this.setActiveDateFocus(newdate);
1092
1095
  }
1093
1096
  else if (event.key === 'ArrowLeft') {
1094
- newdate = moment(this.activeDate).add(-1, 'days').toDate();
1097
+ newdate = moment$3(this.activeDate).add(-1, 'days').toDate();
1095
1098
  this.setActiveDateFocus(newdate);
1096
1099
  }
1097
1100
  else if (event.key === 'ArrowRight') {
1098
- newdate = moment(this.activeDate).add(1, 'days').toDate();
1101
+ newdate = moment$3(this.activeDate).add(1, 'days').toDate();
1099
1102
  this.setActiveDateFocus(newdate);
1100
1103
  }
1101
1104
  else if (event.key === 'PageUp') {
1102
1105
  event.preventDefault();
1103
- newdate = moment(this.activeDate).add(-1, 'month').toDate();
1106
+ newdate = moment$3(this.activeDate).add(-1, 'month').toDate();
1104
1107
  this.setActiveDateFocus(newdate);
1105
1108
  }
1106
1109
  else if (event.key === 'PageDown') {
1107
1110
  event.preventDefault();
1108
- newdate = moment(this.activeDate).add(1, 'month').toDate();
1111
+ newdate = moment$3(this.activeDate).add(1, 'month').toDate();
1109
1112
  this.setActiveDateFocus(newdate);
1110
1113
  }
1111
1114
  else if (event.key === 'Enter') {
@@ -1157,20 +1160,20 @@
1157
1160
  }
1158
1161
  else if (event.key === 'ArrowDown') {
1159
1162
  event.preventDefault();
1160
- newdate = moment(this.activeDate).add(3, 'month').toDate();
1163
+ newdate = moment$3(this.activeDate).add(3, 'month').toDate();
1161
1164
  this.setActiveMonthFocus(newdate);
1162
1165
  }
1163
1166
  else if (event.key === 'ArrowUp') {
1164
1167
  event.preventDefault();
1165
- newdate = moment(this.activeDate).add(-3, 'month').toDate();
1168
+ newdate = moment$3(this.activeDate).add(-3, 'month').toDate();
1166
1169
  this.setActiveMonthFocus(newdate);
1167
1170
  }
1168
1171
  else if (event.key === 'ArrowLeft') {
1169
- newdate = moment(this.activeDate).add(-1, 'month').toDate();
1172
+ newdate = moment$3(this.activeDate).add(-1, 'month').toDate();
1170
1173
  this.setActiveMonthFocus(newdate);
1171
1174
  }
1172
1175
  else if (event.key === 'ArrowRight') {
1173
- newdate = moment(this.activeDate).add(1, 'month').toDate();
1176
+ newdate = moment$3(this.activeDate).add(1, 'month').toDate();
1174
1177
  this.setActiveMonthFocus(newdate);
1175
1178
  }
1176
1179
  });
@@ -1223,20 +1226,20 @@
1223
1226
  }
1224
1227
  else if (event.key === 'ArrowDown') {
1225
1228
  event.preventDefault();
1226
- newdate = moment(this.activeDate).add(4, 'year').toDate();
1229
+ newdate = moment$3(this.activeDate).add(4, 'year').toDate();
1227
1230
  this.setActiveYearFocus(newdate);
1228
1231
  }
1229
1232
  else if (event.key === 'ArrowUp') {
1230
1233
  event.preventDefault();
1231
- newdate = moment(this.activeDate).add(-4, 'year').toDate();
1234
+ newdate = moment$3(this.activeDate).add(-4, 'year').toDate();
1232
1235
  this.setActiveYearFocus(newdate);
1233
1236
  }
1234
1237
  else if (event.key === 'ArrowLeft') {
1235
- newdate = moment(this.activeDate).add(-1, 'year').toDate();
1238
+ newdate = moment$3(this.activeDate).add(-1, 'year').toDate();
1236
1239
  this.setActiveYearFocus(newdate);
1237
1240
  }
1238
1241
  else if (event.key === 'ArrowRight') {
1239
- newdate = moment(this.activeDate).add(1, 'year').toDate();
1242
+ newdate = moment$3(this.activeDate).add(1, 'year').toDate();
1240
1243
  this.setActiveYearFocus(newdate);
1241
1244
  }
1242
1245
  });
@@ -1709,6 +1712,7 @@
1709
1712
  base.registerFormWidget(i1$1.FormWidgetType.DATE, new Map(dateProps));
1710
1713
  };
1711
1714
 
1715
+ const moment$2 = momentLib__namespace.default || window['moment'];
1712
1716
  function validateTheMaskedDate(format, locale) {
1713
1717
  if (format == 'timestamp') {
1714
1718
  return false;
@@ -1721,10 +1725,10 @@
1721
1725
  modifiedFormat = modifiedFormat.replace('M', 'MM');
1722
1726
  }
1723
1727
  const parseFn = str => {
1724
- return moment(str, modifiedFormat).toDate();
1728
+ return moment$2(str, modifiedFormat).toDate();
1725
1729
  };
1726
1730
  const formatFn = date => {
1727
- return moment(date, modifiedFormat).format(modifiedFormat);
1731
+ return moment$2(date, modifiedFormat).format(modifiedFormat);
1728
1732
  };
1729
1733
  return {
1730
1734
  mask: Date,
@@ -2243,6 +2247,7 @@
2243
2247
  i0__namespace.ɵɵproperty("tabindex", ctx_r2.tabindex || 0);
2244
2248
  i0__namespace.ɵɵattribute("aria-label", ctx_r2.displayValue ? "Change Date " + ctx_r2.displayValue : ctx_r2.arialabel || "Choose Date");
2245
2249
  } }
2250
+ const moment$1 = momentLib__namespace.default || window['moment'];
2246
2251
  const DEFAULT_CLS$1 = 'app-datetime input-group';
2247
2252
  const WIDGET_CONFIG$1 = { widgetType: 'wm-datetime', hostClass: DEFAULT_CLS$1 };
2248
2253
  const CURRENT_DATE = 'CURRENT_DATE';
@@ -2435,7 +2440,7 @@
2435
2440
  if (!newVal) {
2436
2441
  // Set timevalue as 00:00:00 if we remove any one from hours/minutes/seconds field in timepicker after selecting date
2437
2442
  if (this.bsDateValue && this.bsTimePicker && (this.bsTimePicker.hours === '' || this.bsTimePicker.minutes === '' || this.bsTimePicker.seconds === '')) {
2438
- this.bsDateValue = this.bsTimeValue = this.proxyModel = moment(this.bsDateValue).startOf('day').toDate();
2443
+ this.bsDateValue = this.bsTimeValue = this.proxyModel = moment$1(this.bsDateValue).startOf('day').toDate();
2439
2444
  }
2440
2445
  else {
2441
2446
  this.bsDateValue = this.bsTimeValue = this.proxyModel = undefined;
@@ -2703,7 +2708,7 @@
2703
2708
  type: i0.ViewChild,
2704
2709
  args: [i2.BsDatepickerDirective]
2705
2710
  }] }); })();
2706
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassDebugInfo(DatetimeComponent, { className: "DatetimeComponent", filePath: "date-time/date-time.component.ts", lineNumber: 62 }); })();
2711
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassDebugInfo(DatetimeComponent, { className: "DatetimeComponent", filePath: "date-time/date-time.component.ts", lineNumber: 63 }); })();
2707
2712
 
2708
2713
  const timeProps = new Map([
2709
2714
  ['autofocus', base.PROP_BOOLEAN],
@@ -2768,6 +2773,7 @@
2768
2773
  i0__namespace.ɵɵadvance();
2769
2774
  i0__namespace.ɵɵattribute("aria-label", ctx_r1.displayValue ? "Change time " + ctx_r1.displayValue : ctx_r1.arialabel || "Select time");
2770
2775
  } }
2776
+ const moment = momentLib__namespace.default || window['moment'];
2771
2777
  const CURRENT_TIME = 'CURRENT_TIME';
2772
2778
  const DEFAULT_CLS = 'input-group app-timeinput';
2773
2779
  const WIDGET_CONFIG = { widgetType: 'wm-time', hostClass: DEFAULT_CLS };
@@ -3101,7 +3107,7 @@
3101
3107
  }, {
3102
3108
  type: i0.Optional
3103
3109
  }] }], null); })();
3104
- (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassDebugInfo(TimeComponent, { className: "TimeComponent", filePath: "time/time.component.ts", lineNumber: 48 }); })();
3110
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassDebugInfo(TimeComponent, { className: "TimeComponent", filePath: "time/time.component.ts", lineNumber: 49 }); })();
3105
3111
 
3106
3112
  exports.DateComponent = DateComponent;
3107
3113
  exports.DateTimePickerComponent = DateTimePickerComponent;