@syncfusion/ej2-schedule 24.2.8 → 25.1.35

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 (63) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/ej2-schedule.min.js +2 -2
  3. package/dist/ej2-schedule.umd.min.js +2 -2
  4. package/dist/ej2-schedule.umd.min.js.map +1 -1
  5. package/dist/es6/ej2-schedule.es2015.js +54 -8
  6. package/dist/es6/ej2-schedule.es2015.js.map +1 -1
  7. package/dist/es6/ej2-schedule.es5.js +55 -8
  8. package/dist/es6/ej2-schedule.es5.js.map +1 -1
  9. package/dist/global/ej2-schedule.min.js +2 -2
  10. package/dist/global/ej2-schedule.min.js.map +1 -1
  11. package/dist/global/index.d.ts +1 -1
  12. package/package.json +16 -16
  13. package/src/schedule/actions/crud.js +6 -0
  14. package/src/schedule/actions/keyboard.d.ts +1 -0
  15. package/src/schedule/actions/keyboard.js +11 -4
  16. package/src/schedule/base/interface.d.ts +1 -0
  17. package/src/schedule/base/schedule.d.ts +4 -1
  18. package/src/schedule/base/schedule.js +16 -1
  19. package/src/schedule/popups/quick-popups.js +11 -0
  20. package/src/schedule/renderer/renderer.js +11 -3
  21. package/styles/bootstrap-dark.css +9 -2
  22. package/styles/bootstrap.css +9 -2
  23. package/styles/bootstrap4.css +6 -3
  24. package/styles/bootstrap5-dark.css +6 -3
  25. package/styles/bootstrap5.css +6 -3
  26. package/styles/fabric-dark.css +5 -2
  27. package/styles/fabric.css +5 -2
  28. package/styles/fluent-dark.css +10 -2
  29. package/styles/fluent.css +10 -2
  30. package/styles/highcontrast-light.css +5 -2
  31. package/styles/highcontrast.css +5 -2
  32. package/styles/material-dark.css +5 -2
  33. package/styles/material.css +5 -2
  34. package/styles/material3-dark.css +6 -3
  35. package/styles/material3.css +6 -3
  36. package/styles/recurrence-editor/_bds-definition.scss +15 -0
  37. package/styles/schedule/_bds-definition.scss +287 -0
  38. package/styles/schedule/_bootstrap4-definition.scss +1 -1
  39. package/styles/schedule/_bootstrap5-definition.scss +1 -1
  40. package/styles/schedule/_fusionnew-definition.scss +1 -1
  41. package/styles/schedule/_layout.scss +2 -1
  42. package/styles/schedule/_material3-definition.scss +1 -1
  43. package/styles/schedule/_tailwind-definition.scss +1 -1
  44. package/styles/schedule/bootstrap-dark.css +9 -2
  45. package/styles/schedule/bootstrap.css +9 -2
  46. package/styles/schedule/bootstrap4.css +6 -3
  47. package/styles/schedule/bootstrap5-dark.css +6 -3
  48. package/styles/schedule/bootstrap5.css +6 -3
  49. package/styles/schedule/fabric-dark.css +5 -2
  50. package/styles/schedule/fabric.css +5 -2
  51. package/styles/schedule/fluent-dark.css +10 -2
  52. package/styles/schedule/fluent.css +10 -2
  53. package/styles/schedule/highcontrast-light.css +5 -2
  54. package/styles/schedule/highcontrast.css +5 -2
  55. package/styles/schedule/icons/_bds.scss +235 -0
  56. package/styles/schedule/material-dark.css +5 -2
  57. package/styles/schedule/material.css +5 -2
  58. package/styles/schedule/material3-dark.css +6 -3
  59. package/styles/schedule/material3.css +6 -3
  60. package/styles/schedule/tailwind-dark.css +6 -3
  61. package/styles/schedule/tailwind.css +6 -3
  62. package/styles/tailwind-dark.css +6 -3
  63. package/styles/tailwind.css +6 -3
@@ -2592,6 +2592,13 @@ var KeyboardInteraction = /** @__PURE__ @class */ (function () {
2592
2592
  }
2593
2593
  }
2594
2594
  };
2595
+ KeyboardInteraction.prototype.isCalendarTarget = function (e) {
2596
+ var keyTarget = e.currentTarget || e.target;
2597
+ if (keyTarget && !isNullOrUndefined(keyTarget.querySelector('.e-header-popup.e-popup-open'))) {
2598
+ return true;
2599
+ }
2600
+ return false;
2601
+ };
2595
2602
  KeyboardInteraction.prototype.cancelUpDownAction = function (isTimelineYear) {
2596
2603
  var isVerticalYear = isTimelineYear && this.parent.activeViewOptions.orientation === 'Vertical';
2597
2604
  var isGroup = this.parent.activeViewOptions.group.resources.length > 0;
@@ -2605,7 +2612,7 @@ var KeyboardInteraction = /** @__PURE__ @class */ (function () {
2605
2612
  };
2606
2613
  KeyboardInteraction.prototype.processUp = function (e, isMultiple) {
2607
2614
  var isTimelineYear = this.parent.currentView === 'TimelineYear';
2608
- if (isMultiple && this.cancelUpDownAction(isTimelineYear)) {
2615
+ if (isMultiple && this.cancelUpDownAction(isTimelineYear) || (this.isCalendarTarget(e))) {
2609
2616
  return;
2610
2617
  }
2611
2618
  var target = (e.target);
@@ -2653,7 +2660,7 @@ var KeyboardInteraction = /** @__PURE__ @class */ (function () {
2653
2660
  };
2654
2661
  KeyboardInteraction.prototype.processDown = function (e, isMultiple) {
2655
2662
  var isTimelineYear = this.parent.currentView === 'TimelineYear';
2656
- if (isMultiple && this.cancelUpDownAction(isTimelineYear)) {
2663
+ if (isMultiple && this.cancelUpDownAction(isTimelineYear) || (this.isCalendarTarget(e))) {
2657
2664
  return;
2658
2665
  }
2659
2666
  var target = (e.target);
@@ -2763,7 +2770,7 @@ var KeyboardInteraction = /** @__PURE__ @class */ (function () {
2763
2770
  };
2764
2771
  KeyboardInteraction.prototype.processRight = function (e, isMultiple) {
2765
2772
  var isTimelineYear = this.parent.currentView === 'TimelineYear';
2766
- if (this.isCancelLeftRightAction(e, isMultiple, isTimelineYear)) {
2773
+ if (this.isCancelLeftRightAction(e, isMultiple, isTimelineYear) || (this.isCalendarTarget(e))) {
2767
2774
  return;
2768
2775
  }
2769
2776
  var selectedCells = this.parent.getSelectedCells();
@@ -2834,7 +2841,7 @@ var KeyboardInteraction = /** @__PURE__ @class */ (function () {
2834
2841
  };
2835
2842
  KeyboardInteraction.prototype.processLeft = function (e, isMultiple) {
2836
2843
  var isTimelineYear = this.parent.currentView === 'TimelineYear';
2837
- if (this.isCancelLeftRightAction(e, isMultiple, isTimelineYear)) {
2844
+ if (this.isCancelLeftRightAction(e, isMultiple, isTimelineYear) || (this.isCalendarTarget(e))) {
2838
2845
  return;
2839
2846
  }
2840
2847
  var target = (e.target);
@@ -10671,6 +10678,17 @@ var QuickPopups = /** @__PURE__ @class */ (function () {
10671
10678
  instance.destroy();
10672
10679
  }
10673
10680
  }
10681
+ if (popupName === 'quickPopup') {
10682
+ var input = popup.element.querySelector('input.' + SUBJECT_CLASS);
10683
+ if (input) {
10684
+ input.remove();
10685
+ }
10686
+ var form = this.quickPopup.element.querySelector('form.' + FORM_CLASS);
10687
+ if (form) {
10688
+ removeChildren(form);
10689
+ form.remove();
10690
+ }
10691
+ }
10674
10692
  };
10675
10693
  QuickPopups.prototype.refreshQuickDialog = function () {
10676
10694
  this.destroyQuickDialog();
@@ -14493,15 +14511,21 @@ var Render = /** @__PURE__ @class */ (function () {
14493
14511
  break;
14494
14512
  case 'TimelineDay':
14495
14513
  this.parent.activeView = this.parent.timelineViewsModule;
14496
- this.parent.activeView.viewClass = 'e-timeline-day-view';
14514
+ if (!isNullOrUndefined(this.parent.activeView)) {
14515
+ this.parent.activeView.viewClass = 'e-timeline-day-view';
14516
+ }
14497
14517
  break;
14498
14518
  case 'TimelineWorkWeek':
14499
14519
  this.parent.activeView = this.parent.timelineViewsModule;
14500
- this.parent.activeView.viewClass = 'e-timeline-work-week-view';
14520
+ if (!isNullOrUndefined(this.parent.activeView)) {
14521
+ this.parent.activeView.viewClass = 'e-timeline-work-week-view';
14522
+ }
14501
14523
  break;
14502
14524
  case 'TimelineWeek':
14503
14525
  this.parent.activeView = this.parent.timelineViewsModule;
14504
- this.parent.activeView.viewClass = 'e-timeline-week-view';
14526
+ if (!isNullOrUndefined(this.parent.activeView)) {
14527
+ this.parent.activeView.viewClass = 'e-timeline-week-view';
14528
+ }
14505
14529
  break;
14506
14530
  case 'TimelineMonth':
14507
14531
  this.parent.activeView = this.parent.timelineMonthModule;
@@ -14518,6 +14542,8 @@ var Render = /** @__PURE__ @class */ (function () {
14518
14542
  this.parent.headerModule.updateActiveView();
14519
14543
  this.parent.headerModule.setCalendarView();
14520
14544
  }
14545
+ console.warn('[WARNING] :: Module "' + viewName + '" is not available in Schedule component!' +
14546
+ ' You either misspelled the module name or forgot to load it.');
14521
14547
  return this.initializeLayout(firstView);
14522
14548
  }
14523
14549
  throw Error('Inject required modules');
@@ -14769,6 +14795,12 @@ var Crud = /** @__PURE__ @class */ (function () {
14769
14795
  if (!this.parent.activeView) {
14770
14796
  return;
14771
14797
  }
14798
+ if (this.parent.uiStateValues && this.parent.uiStateValues.isPreventEventRefresh) {
14799
+ this.parent.uiStateValues.isPreventEventRefresh = false;
14800
+ this.parent.refreshEvents(false);
14801
+ this.parent.hideSpinner();
14802
+ return;
14803
+ }
14772
14804
  var start = this.parent.activeView.startDate();
14773
14805
  var end = this.parent.activeView.endDate();
14774
14806
  var dataManager = this.parent.dataModule.getData(this.parent.dataModule.generateQuery(start, end));
@@ -19093,9 +19125,14 @@ var Schedule = /** @__PURE__ @class */ (function (_super) {
19093
19125
  *
19094
19126
  * @function setResourceCollections
19095
19127
  * @param {ResourcesModel[]} resourceCol Accepts the resource collections in ResourcesModel type
19128
+ * @param {boolean} isEventDataRefresh Accepts the boolean to refresh the appointment data source from remote or local
19096
19129
  * @returns {void}
19097
19130
  */
19098
- Schedule.prototype.setResourceCollections = function (resourceCol) {
19131
+ Schedule.prototype.setResourceCollections = function (resourceCol, isEventDataRefresh) {
19132
+ if (isEventDataRefresh === void 0) { isEventDataRefresh = true; }
19133
+ if (!isEventDataRefresh && this.uiStateValues) {
19134
+ this.uiStateValues.isPreventEventRefresh = true;
19135
+ }
19099
19136
  this.setProperties({ resources: resourceCol }, false);
19100
19137
  };
19101
19138
  /**
@@ -19215,6 +19252,8 @@ var Schedule = /** @__PURE__ @class */ (function (_super) {
19215
19252
  this.iCalendarExportModule.initializeCalendarExport(fileName, customData);
19216
19253
  }
19217
19254
  else {
19255
+ console.warn('[WARNING] :: Module "ICalendarExport" is not available in Schedule component!' +
19256
+ ' You either misspelled the module name or forgot to load it.');
19218
19257
  throw Error('Inject ICalendarExport module');
19219
19258
  }
19220
19259
  };
@@ -19231,6 +19270,8 @@ var Schedule = /** @__PURE__ @class */ (function (_super) {
19231
19270
  this.iCalendarImportModule.initializeCalendarImport(fileContent);
19232
19271
  }
19233
19272
  else {
19273
+ console.warn('[WARNING] :: Module "ICalendarImport" is not available in Schedule component!' +
19274
+ ' You either misspelled the module name or forgot to load it.');
19234
19275
  throw Error('Inject ICalendarImport module');
19235
19276
  }
19236
19277
  };
@@ -19276,6 +19317,8 @@ var Schedule = /** @__PURE__ @class */ (function (_super) {
19276
19317
  this.excelExportModule.initializeExcelExport(excelExportOptions);
19277
19318
  }
19278
19319
  else {
19320
+ console.warn('[WARNING] :: Module "ExcelExport" is not available in Schedule component!' +
19321
+ ' You either misspelled the module name or forgot to load it.');
19279
19322
  throw Error('Inject ExcelExport module');
19280
19323
  }
19281
19324
  };
@@ -19292,6 +19335,8 @@ var Schedule = /** @__PURE__ @class */ (function (_super) {
19292
19335
  this.printModule.print(printOptions);
19293
19336
  }
19294
19337
  else {
19338
+ console.warn('[WARNING] :: Module "Print" is not available in Schedule component!' +
19339
+ ' You either misspelled the module name or forgot to load it.');
19295
19340
  throw Error('Inject Print module');
19296
19341
  }
19297
19342
  };
@@ -19575,6 +19620,8 @@ var Schedule = /** @__PURE__ @class */ (function (_super) {
19575
19620
  };
19576
19621
  /**
19577
19622
  * To check whether the given time range slots are available for event creation or already occupied by other events.
19623
+ * This method currently focuses on validating appointments within the current view date range.
19624
+ * However, it does not extend this availability check to recurrence occurrences outside of the current date range.
19578
19625
  *
19579
19626
  * @function isSlotAvailable
19580
19627
  * @param {Date | Object} startTime Denotes the start time of the slot.