@syncfusion/ej2-schedule 19.3.48 → 19.3.53

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.
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * filename: index.d.ts
3
- * version : 19.3.48
3
+ * version : 19.3.53
4
4
  * Copyright Syncfusion Inc. 2001 - 2020. All rights reserved.
5
5
  * Use of this code is subject to the terms of our license.
6
6
  * A copy of the current license can be obtained at any time by e-mailing
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "_from": "@syncfusion/ej2-schedule@*",
3
- "_id": "@syncfusion/ej2-schedule@19.3.46",
3
+ "_id": "@syncfusion/ej2-schedule@19.3.48",
4
4
  "_inBundle": false,
5
- "_integrity": "sha512-x1dE8/ZswBw4vAbLAILohZWlisR8SymVBt4/qwG38WgG+4nQ+yamS89F+aD/KkXQdFZ+zFdWKZbUCyNCPUDUUQ==",
5
+ "_integrity": "sha512-tmNQX9deB3R92SS5zDEuhGnyFnqd5qLAqz2kmcmNDsKf2VEsHJnq7WR84K4X8jnpn0bde4vzmZjPWOAnRZ/jDw==",
6
6
  "_location": "/@syncfusion/ej2-schedule",
7
7
  "_phantomChildren": {},
8
8
  "_requested": {
@@ -23,8 +23,8 @@
23
23
  "/@syncfusion/ej2-react-schedule",
24
24
  "/@syncfusion/ej2-vue-schedule"
25
25
  ],
26
- "_resolved": "http://nexus.syncfusion.com/repository/ej2-hotfix/@syncfusion/ej2-schedule/-/ej2-schedule-19.3.46.tgz",
27
- "_shasum": "96b789963b4984b83da4f6a024bd5e08e6869712",
26
+ "_resolved": "http://nexus.syncfusion.com/repository/ej2-hotfix/@syncfusion/ej2-schedule/-/ej2-schedule-19.3.48.tgz",
27
+ "_shasum": "17e2d899f19992f39da451429ae6fa5263debb83",
28
28
  "_spec": "@syncfusion/ej2-schedule@*",
29
29
  "_where": "/jenkins/workspace/automation_release_19.1.0.1-ZPMUBNQ6AUYH6YGEFBPVYMEQLRRW2SLD4XCZ6GATNZJFYJ3RIAOA/packages/included",
30
30
  "author": {
@@ -35,16 +35,16 @@
35
35
  },
36
36
  "bundleDependencies": false,
37
37
  "dependencies": {
38
- "@syncfusion/ej2-base": "~19.3.47",
39
- "@syncfusion/ej2-buttons": "~19.3.44",
40
- "@syncfusion/ej2-calendars": "~19.3.46",
41
- "@syncfusion/ej2-data": "~19.3.47",
42
- "@syncfusion/ej2-dropdowns": "~19.3.48",
43
- "@syncfusion/ej2-excel-export": "~19.3.48",
44
- "@syncfusion/ej2-inputs": "~19.3.48",
45
- "@syncfusion/ej2-lists": "~19.3.48",
46
- "@syncfusion/ej2-navigations": "~19.3.46",
47
- "@syncfusion/ej2-popups": "~19.3.47"
38
+ "@syncfusion/ej2-base": "~19.3.53",
39
+ "@syncfusion/ej2-buttons": "~19.3.53",
40
+ "@syncfusion/ej2-calendars": "~19.3.53",
41
+ "@syncfusion/ej2-data": "~19.3.53",
42
+ "@syncfusion/ej2-dropdowns": "~19.3.53",
43
+ "@syncfusion/ej2-excel-export": "~19.3.53",
44
+ "@syncfusion/ej2-inputs": "~19.3.53",
45
+ "@syncfusion/ej2-lists": "~19.3.53",
46
+ "@syncfusion/ej2-navigations": "~19.3.53",
47
+ "@syncfusion/ej2-popups": "~19.3.53"
48
48
  },
49
49
  "deprecated": false,
50
50
  "description": "Flexible scheduling library with more built-in features and enhanced customization options similar to outlook and google calendar, allowing the users to plan and manage their appointments with efficient data-binding support.",
@@ -81,6 +81,6 @@
81
81
  "url": "git+https://github.com/syncfusion/ej2-javascript-ui-controls.git"
82
82
  },
83
83
  "typings": "index.d.ts",
84
- "version": "19.3.48",
84
+ "version": "19.3.53",
85
85
  "sideEffects": false
86
86
  }
@@ -770,7 +770,8 @@ var DragAndDrop = /** @class */ (function (_super) {
770
770
  // eslint-disable-next-line max-len
771
771
  this.parent.getDateFromElement(isNullOrUndefined(index) ? this.actionObj.target : this.targetTd)));
772
772
  var splitEvents = this.splitEvent(event);
773
- var events_1 = this.parent.eventBase.isAllDayAppointment(event) || splitEvents.length > 2 || !(this.parent.eventSettings.spannedEventPlacement == 'TimeSlot') ? [event] : splitEvents;
773
+ var events_1 = this.parent.eventBase.isAllDayAppointment(event) || splitEvents.length > 2 ||
774
+ this.parent.eventSettings.spannedEventPlacement !== 'TimeSlot' ? [event] : splitEvents;
774
775
  for (var i = 0; i < events_1.length; i++) {
775
776
  if (i > 0) {
776
777
  var filterQuery = ".e-day-wrapper[data-date=\"" + util.resetTime(events_1[i][this.parent.eventFields.startTime]).getTime() + "\"]";
@@ -295,6 +295,13 @@ export interface ResourceDetails {
295
295
  /** It returns the Name of current resource in compact mode. */
296
296
  resourceName?: string;
297
297
  }
298
+ /** An interface that represents time zone and display text for scheduler. */
299
+ export interface TimezoneFields {
300
+ /** Assigns the timezone display text. */
301
+ Text: string;
302
+ /** Assigns the IANA timezone value. */
303
+ Value: string;
304
+ }
298
305
  /** An interface that holds options of events once it bound to scheduler. */
299
306
  export interface DataBoundEventArgs extends BaseEventArgs {
300
307
  result: Record<string, any>[];
@@ -1,4 +1,4 @@
1
- import { Component, ModuleDeclaration, Property, Event, Animation, Collection, append } from '@syncfusion/ej2-base';import { EventHandler, EmitType, Browser, Internationalization, getDefaultDateObject, cldrData, L10n } from '@syncfusion/ej2-base';import { getValue, compile, extend, isNullOrUndefined, NotifyPropertyChanges, INotifyPropertyChanged, Complex } from '@syncfusion/ej2-base';import { getElement, removeClass, addClass, classList, remove } from '@syncfusion/ej2-base';import { createSpinner, hideSpinner, showSpinner } from '@syncfusion/ej2-popups';import { HeaderRenderer } from '../renderer/header-renderer';import { Scroll } from '../actions/scroll';import { ScheduleTouch } from '../actions/touch';import { KeyboardInteraction } from '../actions/keyboard';import { Data } from '../actions/data';import { View, CurrentAction, ReturnType, WeekRule } from '../base/type';import { EventBase } from '../event-renderer/event-base';import { InlineEdit } from '../event-renderer/inline-edit';import { QuickPopups } from '../popups/quick-popups';import { EventTooltip } from '../popups/event-tooltip';import { EventWindow } from '../popups/event-window';import { Render } from '../renderer/renderer';import { Day } from '../renderer/day';import { Week } from '../renderer/week';import { WorkWeek } from '../renderer/work-week';import { Month } from '../renderer/month';import { Year } from '../renderer/year';import { Agenda } from '../renderer/agenda';import { MonthAgenda } from '../renderer/month-agenda';import { TimelineViews } from '../renderer/timeline-view';import { TimelineMonth } from '../renderer/timeline-month';import { TimelineYear } from '../renderer/timeline-year';import { WorkHours } from '../models/work-hours';import { TimeScale } from '../models/time-scale';import { QuickInfoTemplates } from '../models/quick-info-templates';import { HeaderRows } from '../models/header-rows';import { Crud } from '../actions/crud';import { Resize } from '../actions/resize';import { DragAndDrop } from '../actions/drag';import { VirtualScroll } from '../actions/virtual-scroll';import { WorkCellInteraction } from '../actions/work-cells';import { WorkHoursModel, ViewsModel, EventSettingsModel, GroupModel, ResourcesModel, TimeScaleModel } from '../models/models';import { QuickInfoTemplatesModel, HeaderRowsModel } from '../models/models';import { EventSettings } from '../models/event-settings';import { Group } from '../models/group';import { Resources } from '../models/resources';import { ICalendarExport } from '../exports/calendar-export';import { ICalendarImport } from '../exports/calendar-import';import { ExcelExport } from '../exports/excel-export';import { Print } from '../exports/print';import { IRenderer, ActionEventArgs, NavigatingEventArgs, CellClickEventArgs, RenderCellEventArgs, ScrollCss } from '../base/interface';import { EventClickArgs, EventRenderedArgs, PopupOpenEventArgs, UIStateArgs, DragEventArgs, ResizeEventArgs } from '../base/interface';import { EventFieldsMapping, TdData, ResourceDetails, ResizeEdges, StateArgs, ExportOptions, SelectEventArgs } from '../base/interface';import { ViewsData, PopupCloseEventArgs, HoverEventArgs, MoreEventsClickArgs, CallbackFunction } from '../base/interface';import { CalendarUtil, Gregorian, Islamic, CalendarType } from '../../common/calendar-util';import { ResourceBase } from '../base/resource';import { Timezone } from '../timezone/timezone';import { RecurrenceEditor } from '../../recurrence-editor/recurrence-editor';import * as events from '../base/constant';import * as cls from '../base/css-constant';import * as util from '../base/util';
1
+ import { Component, ModuleDeclaration, Property, Event, Animation, Collection, append } from '@syncfusion/ej2-base';import { EventHandler, EmitType, Browser, Internationalization, getDefaultDateObject, cldrData, L10n } from '@syncfusion/ej2-base';import { getValue, compile, extend, isNullOrUndefined, NotifyPropertyChanges, INotifyPropertyChanged, Complex } from '@syncfusion/ej2-base';import { getElement, removeClass, addClass, classList, remove } from '@syncfusion/ej2-base';import { createSpinner, hideSpinner, showSpinner } from '@syncfusion/ej2-popups';import { HeaderRenderer } from '../renderer/header-renderer';import { Scroll } from '../actions/scroll';import { ScheduleTouch } from '../actions/touch';import { KeyboardInteraction } from '../actions/keyboard';import { Data } from '../actions/data';import { View, CurrentAction, ReturnType, WeekRule } from '../base/type';import { EventBase } from '../event-renderer/event-base';import { InlineEdit } from '../event-renderer/inline-edit';import { QuickPopups } from '../popups/quick-popups';import { EventTooltip } from '../popups/event-tooltip';import { EventWindow } from '../popups/event-window';import { Render } from '../renderer/renderer';import { Day } from '../renderer/day';import { Week } from '../renderer/week';import { WorkWeek } from '../renderer/work-week';import { Month } from '../renderer/month';import { Year } from '../renderer/year';import { Agenda } from '../renderer/agenda';import { MonthAgenda } from '../renderer/month-agenda';import { TimelineViews } from '../renderer/timeline-view';import { TimelineMonth } from '../renderer/timeline-month';import { TimelineYear } from '../renderer/timeline-year';import { WorkHours } from '../models/work-hours';import { TimeScale } from '../models/time-scale';import { QuickInfoTemplates } from '../models/quick-info-templates';import { HeaderRows } from '../models/header-rows';import { Crud } from '../actions/crud';import { Resize } from '../actions/resize';import { DragAndDrop } from '../actions/drag';import { VirtualScroll } from '../actions/virtual-scroll';import { WorkCellInteraction } from '../actions/work-cells';import { WorkHoursModel, ViewsModel, EventSettingsModel, GroupModel, ResourcesModel, TimeScaleModel } from '../models/models';import { QuickInfoTemplatesModel, HeaderRowsModel } from '../models/models';import { EventSettings } from '../models/event-settings';import { Group } from '../models/group';import { Resources } from '../models/resources';import { ICalendarExport } from '../exports/calendar-export';import { ICalendarImport } from '../exports/calendar-import';import { ExcelExport } from '../exports/excel-export';import { Print } from '../exports/print';import { IRenderer, ActionEventArgs, NavigatingEventArgs, CellClickEventArgs, RenderCellEventArgs, ScrollCss, TimezoneFields } from '../base/interface';import { EventClickArgs, EventRenderedArgs, PopupOpenEventArgs, UIStateArgs, DragEventArgs, ResizeEventArgs } from '../base/interface';import { EventFieldsMapping, TdData, ResourceDetails, ResizeEdges, StateArgs, ExportOptions, SelectEventArgs } from '../base/interface';import { ViewsData, PopupCloseEventArgs, HoverEventArgs, MoreEventsClickArgs, CallbackFunction } from '../base/interface';import { CalendarUtil, Gregorian, Islamic, CalendarType } from '../../common/calendar-util';import { ResourceBase } from '../base/resource';import { Timezone, timezoneData} from '../timezone/timezone';import { RecurrenceEditor } from '../../recurrence-editor/recurrence-editor';import * as events from '../base/constant';import * as cls from '../base/css-constant';import * as util from '../base/util';
2
2
  import {ComponentModel} from '@syncfusion/ej2-base';
3
3
 
4
4
  /**
@@ -477,6 +477,14 @@ export interface ScheduleModel extends ComponentModel{
477
477
  */
478
478
  eventSettings?: EventSettingsModel;
479
479
 
480
+ /**
481
+ * Allows to define the collection of timezone items in the Schedule. Only the items bound to this property get listed out in the timezone dropdown of the appointment window.
482
+ * {% codeBlock src='schedule/timezoneDatasource/index.md' %}{% endcodeBlock %}
483
+ *
484
+ * @default timezoneData
485
+ */
486
+ timezoneDataSource?: TimezoneFields[];
487
+
480
488
  /**
481
489
  * Template option to customize the resource header bar. Here, the template accepts either
482
490
  * the string or HTMLElement as template design and then the parsed design is displayed onto the resource header cells.
@@ -35,7 +35,7 @@ import { ICalendarExport } from '../exports/calendar-export';
35
35
  import { ICalendarImport } from '../exports/calendar-import';
36
36
  import { ExcelExport } from '../exports/excel-export';
37
37
  import { Print } from '../exports/print';
38
- import { IRenderer, ActionEventArgs, NavigatingEventArgs, CellClickEventArgs, RenderCellEventArgs, ScrollCss } from '../base/interface';
38
+ import { IRenderer, ActionEventArgs, NavigatingEventArgs, CellClickEventArgs, RenderCellEventArgs, ScrollCss, TimezoneFields } from '../base/interface';
39
39
  import { EventClickArgs, EventRenderedArgs, PopupOpenEventArgs, UIStateArgs, DragEventArgs, ResizeEventArgs } from '../base/interface';
40
40
  import { EventFieldsMapping, TdData, ResourceDetails, ResizeEdges, ExportOptions, SelectEventArgs } from '../base/interface';
41
41
  import { ViewsData, PopupCloseEventArgs, HoverEventArgs, MoreEventsClickArgs, CallbackFunction } from '../base/interface';
@@ -556,6 +556,13 @@ export declare class Schedule extends Component<HTMLElement> implements INotifyP
556
556
  * @default null
557
557
  */
558
558
  eventSettings: EventSettingsModel;
559
+ /**
560
+ * Allows to define the collection of timezone items in the Schedule. Only the items bound to this property get listed out in the timezone dropdown of the appointment window.
561
+ * {% codeBlock src='schedule/timezoneDatasource/index.md' %}{% endcodeBlock %}
562
+ *
563
+ * @default timezoneData
564
+ */
565
+ timezoneDataSource: TimezoneFields[];
559
566
  /**
560
567
  * Template option to customize the resource header bar. Here, the template accepts either
561
568
  * the string or HTMLElement as template design and then the parsed design is displayed onto the resource header cells.
@@ -45,7 +45,7 @@ import { Group } from '../models/group';
45
45
  import { Resources } from '../models/resources';
46
46
  import { Gregorian, Islamic } from '../../common/calendar-util';
47
47
  import { ResourceBase } from '../base/resource';
48
- import { Timezone } from '../timezone/timezone';
48
+ import { Timezone, timezoneData } from '../timezone/timezone';
49
49
  import * as events from '../base/constant';
50
50
  import * as cls from '../base/css-constant';
51
51
  import * as util from '../base/util';
@@ -749,7 +749,9 @@ var Schedule = /** @class */ (function (_super) {
749
749
  beginFrom: 'Begin From',
750
750
  endAt: 'Ends At',
751
751
  expandAllDaySection: 'Expand-all-day-section',
752
- collapseAllDaySection: 'Collapse-all-day-section'
752
+ collapseAllDaySection: 'Collapse-all-day-section',
753
+ searchTimezone: 'Search Timezone',
754
+ noRecords: 'No records found'
753
755
  };
754
756
  };
755
757
  Schedule.prototype.wireEvents = function () {
@@ -1468,6 +1470,11 @@ var Schedule = /** @class */ (function (_super) {
1468
1470
  this.keyboardInteractionModule = new KeyboardInteraction(this);
1469
1471
  }
1470
1472
  break;
1473
+ case 'timezoneDataSource':
1474
+ if (this.eventWindow) {
1475
+ this.eventWindow.refresh();
1476
+ }
1477
+ break;
1471
1478
  case 'editorTemplate':
1472
1479
  if (!isNullOrUndefined(this.editorTemplate)) {
1473
1480
  this.editorTemplateFn = this.templateParser(this.editorTemplate);
@@ -2639,6 +2646,9 @@ var Schedule = /** @class */ (function (_super) {
2639
2646
  __decorate([
2640
2647
  Complex({}, EventSettings)
2641
2648
  ], Schedule.prototype, "eventSettings", void 0);
2649
+ __decorate([
2650
+ Property(timezoneData)
2651
+ ], Schedule.prototype, "timezoneDataSource", void 0);
2642
2652
  __decorate([
2643
2653
  Property()
2644
2654
  ], Schedule.prototype, "resourceHeaderTemplate", void 0);
@@ -640,7 +640,7 @@ var EventBase = /** @class */ (function () {
640
640
  var isAllDay = event[fieldMapping.isAllDay];
641
641
  var isFullDay = ((event[fieldMapping.endTime].getTime() - event[fieldMapping.startTime].getTime())
642
642
  / util.MS_PER_DAY) >= 1;
643
- return (isAllDay || (!(this.parent.eventSettings.spannedEventPlacement == 'TimeSlot') && isFullDay)) ? true : false;
643
+ return (isAllDay || (this.parent.eventSettings.spannedEventPlacement !== 'TimeSlot' && isFullDay)) ? true : false;
644
644
  };
645
645
  EventBase.prototype.addEventListener = function () {
646
646
  this.parent.on(event.documentClick, this.appointmentBorderRemove, this);
@@ -25,7 +25,6 @@ export declare class EventWindow {
25
25
  private duration;
26
26
  private isCrudAction;
27
27
  private eventWindowTime;
28
- private timezoneData;
29
28
  private isEnterKey;
30
29
  private dialogEvent;
31
30
  constructor(parent: Schedule);
@@ -26,7 +26,6 @@ var EventWindow = /** @class */ (function () {
26
26
  this.parent = parent;
27
27
  this.l10n = this.parent.localeObj;
28
28
  this.fields = this.parent.eventFields;
29
- this.timezoneData = this.parent.tzModule.timezoneData;
30
29
  this.eventWindowTime = { startTime: new Date(), endTime: new Date() };
31
30
  this.renderEventWindow();
32
31
  }
@@ -464,14 +463,15 @@ var EventWindow = /** @class */ (function () {
464
463
  allowFiltering: true,
465
464
  change: this.onTimezoneChange.bind(this),
466
465
  cssClass: this.parent.cssClass || '',
467
- dataSource: this.timezoneData,
466
+ dataSource: this.parent.timezoneDataSource,
468
467
  enableRtl: this.parent.enableRtl,
469
468
  fields: { text: 'Text', value: 'Value' },
470
- filterBarPlaceholder: 'Search Timezone',
469
+ filterBarPlaceholder: this.parent.localeObj.getConstant('searchTimezone'),
470
+ noRecordsTemplate: this.parent.localeObj.getConstant('noRecords'),
471
471
  filtering: function (e) {
472
472
  var query = new Query();
473
473
  query = (e.text !== '') ? query.where('Text', 'contains', e.text, true) : query;
474
- e.updateData(_this.timezoneData, query);
474
+ e.updateData(_this.parent.timezoneDataSource, query);
475
475
  },
476
476
  htmlAttributes: { 'title': this.getFieldLabel(value), 'name': fieldName },
477
477
  floatLabelType: 'Always',
@@ -1797,7 +1797,6 @@ var EventWindow = /** @class */ (function () {
1797
1797
  this.fields = null;
1798
1798
  this.buttonObj = null;
1799
1799
  this.repeatStatus = null;
1800
- this.timezoneData = null;
1801
1800
  this.eventWindowTime = null;
1802
1801
  }
1803
1802
  };
@@ -50,7 +50,7 @@ var FieldValidator = /** @class */ (function () {
50
50
  this.createTooltip(inputElement, error, id, '');
51
51
  }
52
52
  if (!isNullOrUndefined(elem)) {
53
- elem.querySelector(".e-error").innerHTML = error.innerHTML;
53
+ elem.querySelector('.e-error').innerHTML = error.innerHTML;
54
54
  }
55
55
  };
56
56
  FieldValidator.prototype.createTooltip = function (element, error, name, display) {
@@ -1,8 +1,9 @@
1
+ import { TimezoneFields } from '../base/interface';
1
2
  /**
2
3
  * Time zone
3
4
  */
4
5
  export declare class Timezone {
5
- timezoneData: Record<string, string>[];
6
+ timezoneData: TimezoneFields[];
6
7
  constructor();
7
8
  offset(date: Date, timezone: string): number;
8
9
  convert(date: Date, fromOffset: number | string, toOffset: number | string): Date;
@@ -12,4 +13,4 @@ export declare class Timezone {
12
13
  getLocalTimezoneName(): string;
13
14
  private getTimezoneData;
14
15
  }
15
- export declare const timezoneData: Record<string, string>[];
16
+ export declare const timezoneData: TimezoneFields[];
@@ -1,4 +1,3 @@
1
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
1
  /**
3
2
  * Time zone
4
3
  */