@syncfusion/ej2-schedule 31.1.17 → 31.1.21

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 (168) hide show
  1. package/dist/ej2-schedule.min.js +2 -2
  2. package/dist/ej2-schedule.umd.min.js +2 -2
  3. package/dist/ej2-schedule.umd.min.js.map +1 -1
  4. package/dist/es6/ej2-schedule.es2015.js +7 -3
  5. package/dist/es6/ej2-schedule.es2015.js.map +1 -1
  6. package/dist/es6/ej2-schedule.es5.js +6 -2
  7. package/dist/es6/ej2-schedule.es5.js.map +1 -1
  8. package/dist/global/ej2-schedule.min.js +2 -2
  9. package/dist/global/ej2-schedule.min.js.map +1 -1
  10. package/dist/global/index.d.ts +1 -1
  11. package/package.json +18 -53
  12. package/src/schedule/actions/virtual-scroll.js +5 -1
  13. package/src/schedule/event-renderer/event-base.js +1 -1
  14. package/styles/bootstrap4-lite.css +8 -0
  15. package/styles/bootstrap4.css +8 -0
  16. package/styles/recurrence-editor/bootstrap4.css +8 -0
  17. package/styles/schedule/bootstrap4.css +8 -0
  18. package/dist/ts/common/calendar-util.d.ts +0 -92
  19. package/dist/ts/common/calendar-util.ts +0 -261
  20. package/dist/ts/common/index.d.ts +0 -4
  21. package/dist/ts/common/index.ts +0 -4
  22. package/dist/ts/components.d.ts +0 -5
  23. package/dist/ts/components.ts +0 -5
  24. package/dist/ts/index.d.ts +0 -6
  25. package/dist/ts/index.ts +0 -7
  26. package/dist/ts/recurrence-editor/date-generator.d.ts +0 -76
  27. package/dist/ts/recurrence-editor/date-generator.ts +0 -1699
  28. package/dist/ts/recurrence-editor/index.d.ts +0 -6
  29. package/dist/ts/recurrence-editor/index.ts +0 -6
  30. package/dist/ts/recurrence-editor/recurrence-editor-model.d.ts +0 -112
  31. package/dist/ts/recurrence-editor/recurrence-editor.d.ts +0 -245
  32. package/dist/ts/recurrence-editor/recurrence-editor.ts +0 -1257
  33. package/dist/ts/schedule/actions/action-base.d.ts +0 -44
  34. package/dist/ts/schedule/actions/action-base.ts +0 -493
  35. package/dist/ts/schedule/actions/crud.d.ts +0 -41
  36. package/dist/ts/schedule/actions/crud.ts +0 -784
  37. package/dist/ts/schedule/actions/data.d.ts +0 -63
  38. package/dist/ts/schedule/actions/data.ts +0 -128
  39. package/dist/ts/schedule/actions/drag.d.ts +0 -75
  40. package/dist/ts/schedule/actions/drag.ts +0 -1401
  41. package/dist/ts/schedule/actions/keyboard.d.ts +0 -100
  42. package/dist/ts/schedule/actions/keyboard.ts +0 -1435
  43. package/dist/ts/schedule/actions/resize.d.ts +0 -27
  44. package/dist/ts/schedule/actions/resize.ts +0 -602
  45. package/dist/ts/schedule/actions/scroll.d.ts +0 -69
  46. package/dist/ts/schedule/actions/scroll.ts +0 -105
  47. package/dist/ts/schedule/actions/touch.d.ts +0 -32
  48. package/dist/ts/schedule/actions/touch.ts +0 -314
  49. package/dist/ts/schedule/actions/virtual-scroll.d.ts +0 -55
  50. package/dist/ts/schedule/actions/virtual-scroll.ts +0 -596
  51. package/dist/ts/schedule/actions/work-cells.d.ts +0 -14
  52. package/dist/ts/schedule/actions/work-cells.ts +0 -151
  53. package/dist/ts/schedule/base/constant.d.ts +0 -102
  54. package/dist/ts/schedule/base/constant.ts +0 -103
  55. package/dist/ts/schedule/base/css-constant.d.ts +0 -475
  56. package/dist/ts/schedule/base/css-constant.ts +0 -475
  57. package/dist/ts/schedule/base/interface.d.ts +0 -673
  58. package/dist/ts/schedule/base/interface.ts +0 -738
  59. package/dist/ts/schedule/base/resource.d.ts +0 -59
  60. package/dist/ts/schedule/base/resource.ts +0 -1091
  61. package/dist/ts/schedule/base/schedule-model.d.ts +0 -930
  62. package/dist/ts/schedule/base/schedule.d.ts +0 -1967
  63. package/dist/ts/schedule/base/schedule.ts +0 -4221
  64. package/dist/ts/schedule/base/type.d.ts +0 -134
  65. package/dist/ts/schedule/base/type.ts +0 -142
  66. package/dist/ts/schedule/base/util.d.ts +0 -266
  67. package/dist/ts/schedule/base/util.ts +0 -492
  68. package/dist/ts/schedule/event-renderer/agenda-base.d.ts +0 -15
  69. package/dist/ts/schedule/event-renderer/agenda-base.ts +0 -423
  70. package/dist/ts/schedule/event-renderer/event-base.d.ts +0 -101
  71. package/dist/ts/schedule/event-renderer/event-base.ts +0 -1501
  72. package/dist/ts/schedule/event-renderer/inline-edit.d.ts +0 -23
  73. package/dist/ts/schedule/event-renderer/inline-edit.ts +0 -287
  74. package/dist/ts/schedule/event-renderer/month.d.ts +0 -60
  75. package/dist/ts/schedule/event-renderer/month.ts +0 -760
  76. package/dist/ts/schedule/event-renderer/timeline-view.d.ts +0 -51
  77. package/dist/ts/schedule/event-renderer/timeline-view.ts +0 -606
  78. package/dist/ts/schedule/event-renderer/vertical-view.d.ts +0 -57
  79. package/dist/ts/schedule/event-renderer/vertical-view.ts +0 -898
  80. package/dist/ts/schedule/event-renderer/year.d.ts +0 -27
  81. package/dist/ts/schedule/event-renderer/year.ts +0 -623
  82. package/dist/ts/schedule/exports/calendar-export.d.ts +0 -16
  83. package/dist/ts/schedule/exports/calendar-export.ts +0 -160
  84. package/dist/ts/schedule/exports/calendar-import.d.ts +0 -18
  85. package/dist/ts/schedule/exports/calendar-import.ts +0 -277
  86. package/dist/ts/schedule/exports/excel-export.d.ts +0 -14
  87. package/dist/ts/schedule/exports/excel-export.ts +0 -89
  88. package/dist/ts/schedule/exports/index.d.ts +0 -7
  89. package/dist/ts/schedule/exports/index.ts +0 -7
  90. package/dist/ts/schedule/exports/print.d.ts +0 -20
  91. package/dist/ts/schedule/exports/print.ts +0 -233
  92. package/dist/ts/schedule/index.d.ts +0 -26
  93. package/dist/ts/schedule/index.ts +0 -26
  94. package/dist/ts/schedule/models/event-settings-model.d.ts +0 -165
  95. package/dist/ts/schedule/models/event-settings.d.ts +0 -149
  96. package/dist/ts/schedule/models/event-settings.ts +0 -187
  97. package/dist/ts/schedule/models/field-options-model.d.ts +0 -37
  98. package/dist/ts/schedule/models/field-options.d.ts +0 -31
  99. package/dist/ts/schedule/models/field-options.ts +0 -41
  100. package/dist/ts/schedule/models/fields-model.d.ts +0 -129
  101. package/dist/ts/schedule/models/fields.d.ts +0 -117
  102. package/dist/ts/schedule/models/fields.ts +0 -149
  103. package/dist/ts/schedule/models/group-model.d.ts +0 -69
  104. package/dist/ts/schedule/models/group.d.ts +0 -60
  105. package/dist/ts/schedule/models/group.ts +0 -75
  106. package/dist/ts/schedule/models/header-rows-model.d.ts +0 -33
  107. package/dist/ts/schedule/models/header-rows.d.ts +0 -30
  108. package/dist/ts/schedule/models/header-rows.ts +0 -35
  109. package/dist/ts/schedule/models/models.d.ts +0 -14
  110. package/dist/ts/schedule/models/models.ts +0 -15
  111. package/dist/ts/schedule/models/quick-info-templates-model.d.ts +0 -52
  112. package/dist/ts/schedule/models/quick-info-templates.d.ts +0 -47
  113. package/dist/ts/schedule/models/quick-info-templates.ts +0 -56
  114. package/dist/ts/schedule/models/resources-model.d.ts +0 -122
  115. package/dist/ts/schedule/models/resources.d.ts +0 -106
  116. package/dist/ts/schedule/models/resources.ts +0 -138
  117. package/dist/ts/schedule/models/time-scale-model.d.ts +0 -57
  118. package/dist/ts/schedule/models/time-scale.d.ts +0 -50
  119. package/dist/ts/schedule/models/time-scale.ts +0 -61
  120. package/dist/ts/schedule/models/toolbar-model.d.ts +0 -196
  121. package/dist/ts/schedule/models/toolbar.d.ts +0 -176
  122. package/dist/ts/schedule/models/toolbar.ts +0 -196
  123. package/dist/ts/schedule/models/views-model.d.ts +0 -370
  124. package/dist/ts/schedule/models/views.d.ts +0 -335
  125. package/dist/ts/schedule/models/views.ts +0 -408
  126. package/dist/ts/schedule/models/work-hours-model.d.ts +0 -29
  127. package/dist/ts/schedule/models/work-hours.d.ts +0 -24
  128. package/dist/ts/schedule/models/work-hours.ts +0 -31
  129. package/dist/ts/schedule/popups/event-tooltip.d.ts +0 -16
  130. package/dist/ts/schedule/popups/event-tooltip.ts +0 -203
  131. package/dist/ts/schedule/popups/event-window.d.ts +0 -118
  132. package/dist/ts/schedule/popups/event-window.ts +0 -2055
  133. package/dist/ts/schedule/popups/form-validator.d.ts +0 -16
  134. package/dist/ts/schedule/popups/form-validator.ts +0 -110
  135. package/dist/ts/schedule/popups/quick-popups.d.ts +0 -78
  136. package/dist/ts/schedule/popups/quick-popups.ts +0 -1470
  137. package/dist/ts/schedule/renderer/agenda.d.ts +0 -45
  138. package/dist/ts/schedule/renderer/agenda.ts +0 -497
  139. package/dist/ts/schedule/renderer/day.d.ts +0 -20
  140. package/dist/ts/schedule/renderer/day.ts +0 -28
  141. package/dist/ts/schedule/renderer/header-renderer.d.ts +0 -48
  142. package/dist/ts/schedule/renderer/header-renderer.ts +0 -736
  143. package/dist/ts/schedule/renderer/month-agenda.d.ts +0 -29
  144. package/dist/ts/schedule/renderer/month-agenda.ts +0 -184
  145. package/dist/ts/schedule/renderer/month.d.ts +0 -61
  146. package/dist/ts/schedule/renderer/month.ts +0 -766
  147. package/dist/ts/schedule/renderer/renderer.d.ts +0 -13
  148. package/dist/ts/schedule/renderer/renderer.ts +0 -165
  149. package/dist/ts/schedule/renderer/timeline-header-row.d.ts +0 -15
  150. package/dist/ts/schedule/renderer/timeline-header-row.ts +0 -132
  151. package/dist/ts/schedule/renderer/timeline-month.d.ts +0 -29
  152. package/dist/ts/schedule/renderer/timeline-month.ts +0 -184
  153. package/dist/ts/schedule/renderer/timeline-view.d.ts +0 -31
  154. package/dist/ts/schedule/renderer/timeline-view.ts +0 -308
  155. package/dist/ts/schedule/renderer/timeline-year.d.ts +0 -22
  156. package/dist/ts/schedule/renderer/timeline-year.ts +0 -450
  157. package/dist/ts/schedule/renderer/vertical-view.d.ts +0 -63
  158. package/dist/ts/schedule/renderer/vertical-view.ts +0 -911
  159. package/dist/ts/schedule/renderer/view-base.d.ts +0 -83
  160. package/dist/ts/schedule/renderer/view-base.ts +0 -709
  161. package/dist/ts/schedule/renderer/week.d.ts +0 -22
  162. package/dist/ts/schedule/renderer/week.ts +0 -35
  163. package/dist/ts/schedule/renderer/work-week.d.ts +0 -22
  164. package/dist/ts/schedule/renderer/work-week.ts +0 -36
  165. package/dist/ts/schedule/renderer/year.d.ts +0 -46
  166. package/dist/ts/schedule/renderer/year.ts +0 -470
  167. package/dist/ts/schedule/timezone/timezone.d.ts +0 -16
  168. package/dist/ts/schedule/timezone/timezone.ts +0 -313
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * filename: index.d.ts
3
- * version : 31.1.17
3
+ * version : 31.1.21
4
4
  * Copyright Syncfusion Inc. 2001 - 2024. 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,56 +1,25 @@
1
1
  {
2
- "_from": "@syncfusion/ej2-schedule@*",
3
- "_id": "@syncfusion/ej2-schedule@22.10.0",
4
- "_inBundle": false,
5
- "_integrity": "sha512-wRUrWdJexVRx7LR7RmiRfZGZZwYg3l97mwR/jMKA5PjOa/WsBlG6g3b2oh19nF9GpM0I29wWHZ4PN+jdn/aLmg==",
6
- "_location": "/@syncfusion/ej2-schedule",
7
- "_phantomChildren": {},
8
- "_requested": {
9
- "type": "range",
10
- "registry": true,
11
- "raw": "@syncfusion/ej2-schedule@*",
12
- "name": "@syncfusion/ej2-schedule",
13
- "escapedName": "@syncfusion%2fej2-schedule",
14
- "scope": "@syncfusion",
15
- "rawSpec": "*",
16
- "saveSpec": null,
17
- "fetchSpec": "*"
18
- },
19
- "_requiredBy": [
20
- "/",
21
- "/@syncfusion/ej2",
22
- "/@syncfusion/ej2-angular-schedule",
23
- "/@syncfusion/ej2-react-schedule",
24
- "/@syncfusion/ej2-vue-schedule"
25
- ],
26
- "_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-development/@syncfusion/ej2-schedule/-/ej2-schedule-22.10.0.tgz",
27
- "_shasum": "6bb03fc7d2fbfbc356e8669d1236cd72d27665db",
28
- "_spec": "@syncfusion/ej2-schedule@*",
29
- "_where": "D:\\SF3992\\WFH\\Nexus\\release",
30
- "author": {
31
- "name": "Syncfusion Inc."
32
- },
33
- "bugs": {
34
- "url": "https://github.com/syncfusion/ej2-javascript-ui-controls/issues"
35
- },
36
- "bundleDependencies": false,
2
+ "name": "@syncfusion/ej2-schedule",
3
+ "version": "31.1.21",
4
+ "author": "Syncfusion Inc.",
5
+ "license": "SEE LICENSE IN license",
6
+ "main": "./dist/ej2-schedule.umd.min.js",
7
+ "module": "./index.js",
8
+ "es2015": "./dist/es6/ej2-schedule.es5.js",
37
9
  "dependencies": {
38
- "@syncfusion/ej2-base": "~31.1.17",
39
- "@syncfusion/ej2-buttons": "~31.1.17",
40
- "@syncfusion/ej2-calendars": "~31.1.17",
10
+ "@syncfusion/ej2-base": "~31.1.20",
11
+ "@syncfusion/ej2-buttons": "~31.1.21",
12
+ "@syncfusion/ej2-calendars": "~31.1.21",
41
13
  "@syncfusion/ej2-data": "~31.1.17",
42
- "@syncfusion/ej2-dropdowns": "~31.1.17",
14
+ "@syncfusion/ej2-dropdowns": "~31.1.20",
43
15
  "@syncfusion/ej2-excel-export": "~31.1.17",
44
- "@syncfusion/ej2-inputs": "~31.1.17",
16
+ "@syncfusion/ej2-inputs": "~31.1.21",
45
17
  "@syncfusion/ej2-lists": "~31.1.17",
46
- "@syncfusion/ej2-navigations": "~31.1.17",
47
- "@syncfusion/ej2-popups": "~31.1.17"
18
+ "@syncfusion/ej2-navigations": "~31.1.20",
19
+ "@syncfusion/ej2-popups": "~31.1.20"
48
20
  },
49
- "deprecated": false,
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.",
51
21
  "devDependencies": {},
52
- "es2015": "./dist/es6/ej2-schedule.es5.js",
53
- "homepage": "https://www.syncfusion.com/javascript-ui-controls",
22
+ "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.",
54
23
  "keywords": [
55
24
  "ej2",
56
25
  "syncfusion",
@@ -64,15 +33,11 @@
64
33
  "appointments-planner",
65
34
  "resources-scheduler"
66
35
  ],
67
- "license": "SEE LICENSE IN license",
68
- "main": "./dist/ej2-schedule.umd.min.js",
69
- "module": "./index.js",
70
- "name": "@syncfusion/ej2-schedule",
71
36
  "repository": {
72
37
  "type": "git",
73
- "url": "git+https://github.com/syncfusion/ej2-javascript-ui-controls.git"
38
+ "url": "https://github.com/syncfusion/ej2-javascript-ui-controls.git"
74
39
  },
75
40
  "typings": "index.d.ts",
76
- "version": "31.1.17",
77
- "sideEffects": false
41
+ "sideEffects": false,
42
+ "homepage": "https://www.syncfusion.com/javascript-ui-controls"
78
43
  }
@@ -58,7 +58,7 @@ var VirtualScroll = /** @class */ (function () {
58
58
  virtual.style.height = (conTable.offsetHeight + (this.parent.resourceBase.expandedResources.length - (this.renderedLength)) *
59
59
  conTable.offsetHeight / this.renderedLength) + 'px';
60
60
  var conWrap = this.parent.element.querySelector('.' + cls.CONTENT_WRAP_CLASS);
61
- if ((conWrap.scrollHeight - conWrap.scrollTop) < conWrap.offsetHeight * this.bufferCount) {
61
+ if (this.bufferCount === 3 && (conWrap.scrollHeight - conWrap.scrollTop) < conWrap.offsetHeight * this.bufferCount) {
62
62
  virtual.style.height = parseInt(virtual.style.height, 10) + (conWrap.offsetHeight * this.bufferCount) + 'px';
63
63
  }
64
64
  }
@@ -255,6 +255,10 @@ var VirtualScroll = /** @class */ (function () {
255
255
  height = (height > 0) ? height : this.itemSize;
256
256
  this.translateY = (conWrap.scrollTop - (this.bufferCount * height) > 0) ?
257
257
  conWrap.scrollTop - (this.bufferCount * height) : 0;
258
+ if (this.parent.rowAutoHeight && this.translateY === 0 && index !== 0) {
259
+ prevSetCollection = this.getBufferCollection(0, this.renderedLength);
260
+ this.parent.resourceBase.renderedResources = prevSetCollection;
261
+ }
258
262
  }
259
263
  return prevSetCollection;
260
264
  };
@@ -943,7 +943,7 @@ var EventBase = /** @class */ (function () {
943
943
  }
944
944
  var args = extend(this.parent.activeEventData, { cancel: false, originalEvent: eventData });
945
945
  this.parent.trigger(event.eventDoubleClick, args, function (eventDoubleClickArgs) {
946
- if (!eventDoubleClickArgs.cancel) {
946
+ if (!eventDoubleClickArgs.cancel && _this.parent.eventSettings.allowEditing) {
947
947
  if (!isNullOrUndefined(_this.parent.activeEventData.event) &&
948
948
  isNullOrUndefined(_this.parent.activeEventData.event[_this.parent.eventFields.recurrenceID])) {
949
949
  _this.parent.eventWindow.openEditor(_this.parent.activeEventData.event, 'Save');
@@ -82,6 +82,14 @@
82
82
  font-size: 12px;
83
83
  }
84
84
 
85
+ .e-input-group.e-ddl .e-input[readonly] ~ span.e-input-group-icon.e-ddl-icon,
86
+ .e-input-group.e-control-wrapper.e-ddl .e-input[readonly] ~ span.e-input-group-icon.e-ddl-icon,
87
+ .e-float-input.e-ddl input[readonly] ~ span.e-input-group-icon.e-ddl-icon,
88
+ .e-float-input.e-control-wrapper.e-ddl input[readonly] ~ span.e-input-group-icon.e-ddl-icon {
89
+ background: transparent;
90
+ color: #495057;
91
+ }
92
+
85
93
  .e-small .e-input-group .e-control.e-dropdownlist ~ .e-ddl-icon,
86
94
  .e-small.e-input-group .e-control.e-dropdownlist ~ .e-ddl-icon {
87
95
  font-size: 10px;
@@ -82,6 +82,14 @@
82
82
  font-size: 12px;
83
83
  }
84
84
 
85
+ .e-input-group.e-ddl .e-input[readonly] ~ span.e-input-group-icon.e-ddl-icon,
86
+ .e-input-group.e-control-wrapper.e-ddl .e-input[readonly] ~ span.e-input-group-icon.e-ddl-icon,
87
+ .e-float-input.e-ddl input[readonly] ~ span.e-input-group-icon.e-ddl-icon,
88
+ .e-float-input.e-control-wrapper.e-ddl input[readonly] ~ span.e-input-group-icon.e-ddl-icon {
89
+ background: transparent;
90
+ color: #495057;
91
+ }
92
+
85
93
  .e-small .e-input-group .e-control.e-dropdownlist ~ .e-ddl-icon,
86
94
  .e-small.e-input-group .e-control.e-dropdownlist ~ .e-ddl-icon {
87
95
  font-size: 10px;
@@ -79,6 +79,14 @@
79
79
  font-size: 12px;
80
80
  }
81
81
 
82
+ .e-input-group.e-ddl .e-input[readonly] ~ span.e-input-group-icon.e-ddl-icon,
83
+ .e-input-group.e-control-wrapper.e-ddl .e-input[readonly] ~ span.e-input-group-icon.e-ddl-icon,
84
+ .e-float-input.e-ddl input[readonly] ~ span.e-input-group-icon.e-ddl-icon,
85
+ .e-float-input.e-control-wrapper.e-ddl input[readonly] ~ span.e-input-group-icon.e-ddl-icon {
86
+ background: transparent;
87
+ color: #495057;
88
+ }
89
+
82
90
  .e-small .e-input-group .e-control.e-dropdownlist ~ .e-ddl-icon,
83
91
  .e-small.e-input-group .e-control.e-dropdownlist ~ .e-ddl-icon {
84
92
  font-size: 10px;
@@ -82,6 +82,14 @@
82
82
  font-size: 12px;
83
83
  }
84
84
 
85
+ .e-input-group.e-ddl .e-input[readonly] ~ span.e-input-group-icon.e-ddl-icon,
86
+ .e-input-group.e-control-wrapper.e-ddl .e-input[readonly] ~ span.e-input-group-icon.e-ddl-icon,
87
+ .e-float-input.e-ddl input[readonly] ~ span.e-input-group-icon.e-ddl-icon,
88
+ .e-float-input.e-control-wrapper.e-ddl input[readonly] ~ span.e-input-group-icon.e-ddl-icon {
89
+ background: transparent;
90
+ color: #495057;
91
+ }
92
+
85
93
  .e-small .e-input-group .e-control.e-dropdownlist ~ .e-ddl-icon,
86
94
  .e-small.e-input-group .e-control.e-dropdownlist ~ .e-ddl-icon {
87
95
  font-size: 10px;
@@ -1,92 +0,0 @@
1
- /**
2
- * Calendar functionalities
3
- */
4
- /**
5
- * Defines the calendar type of the scheduler.
6
- * ```props
7
- * Islamic :- Denotes the Islamic calendar.
8
- * Gregorian :- Denotes the Gregorian calendar.
9
- * ```
10
- */
11
- export declare type CalendarType = 'Islamic' | 'Gregorian';
12
- /** @private */
13
- export interface CalendarUtil {
14
- firstDateOfMonth(date: Date): Date;
15
- lastDateOfMonth(date: Date): Date;
16
- isMonthStart(date: Date): boolean;
17
- getLeapYearDaysCount(): number;
18
- getYearDaysCount(date: Date, interval: number): number;
19
- getMonthDaysCount(date: Date): number;
20
- getDate(date: Date): number;
21
- getMonth(date: Date): number;
22
- getFullYear(date: Date): number;
23
- getYearLastDate(date: Date, interval: number): Date;
24
- getMonthStartDate(date: Date): Date;
25
- getMonthEndDate(date: Date): Date;
26
- getExpectedDays(date: Date, days: number[]): number[];
27
- setDate(dateObj: Date, date: number): void;
28
- setValidDate(date1: Date, interval: number, startDate: number, month?: number, date2?: Date): void;
29
- setMonth(date: Date, interval: number, startDate: number): void;
30
- addYears(date: Date, interval: number, month: number): void;
31
- isSameMonth(date1: Date, date2: Date): boolean;
32
- checkMonth(date: Date, months: number[]): boolean;
33
- compareMonth(date1: Date, date2: Date): boolean;
34
- isSameYear(date1: Date, date2: Date): boolean;
35
- isLastMonth(date: Date): boolean;
36
- isLeapYear(year: number, interval: number): boolean;
37
- }
38
- /** @private */
39
- export declare class Gregorian implements CalendarUtil {
40
- firstDateOfMonth(date: Date): Date;
41
- lastDateOfMonth(dt: Date): Date;
42
- isMonthStart(date: Date): boolean;
43
- getLeapYearDaysCount(): number;
44
- getYearDaysCount(date: Date, interval: number): number;
45
- getDate(date: Date): number;
46
- getMonth(date: Date): number;
47
- getFullYear(date: Date): number;
48
- getYearLastDate(date: Date, interval: number): Date;
49
- getMonthDaysCount(date: Date): number;
50
- getMonthStartDate(date: Date): Date;
51
- getMonthEndDate(date: Date): Date;
52
- getExpectedDays(date: Date, days: number[]): number[];
53
- setDate(dateObj: Date, date: number): void;
54
- setValidDate(date: Date, interval: number, startDate: number, monthValue?: number, beginDate?: Date): void;
55
- setMonth(date: Date, interval: number, startDate: number): void;
56
- addYears(date: Date, interval: number): void;
57
- isSameMonth(date1: Date, date2: Date): boolean;
58
- checkMonth(date: Date, months: number[]): boolean;
59
- compareMonth(date1: Date, date2: Date): boolean;
60
- isSameYear(date1: Date, date2: Date): boolean;
61
- isLastMonth(date: Date): boolean;
62
- isLeapYear(year: number, interval: number): boolean;
63
- }
64
- /** @private */
65
- export declare class Islamic implements CalendarUtil {
66
- firstDateOfMonth(date: Date): Date;
67
- lastDateOfMonth(date: Date): Date;
68
- isMonthStart(date: Date): boolean;
69
- getLeapYearDaysCount(): number;
70
- getYearDaysCount(date: Date, interval: number): number;
71
- getDate(date: Date): number;
72
- getMonth(date: Date): number;
73
- getFullYear(date: Date): number;
74
- getYearLastDate(date: Date, interval: number): Date;
75
- getMonthDaysCount(date: Date): number;
76
- getMonthStartDate(date: Date): Date;
77
- getMonthEndDate(date: Date): Date;
78
- getExpectedDays(date: Date, days: number[]): number[];
79
- setDate(dateObj: Date, date: number): void;
80
- setValidDate(date: Date, interval: number, startDate: number, monthValue?: number, beginDate?: Date): void;
81
- setMonth(date: Date, interval: number, startDate: number): void;
82
- addYears(date: Date, interval: number, monthValue: number): void;
83
- isSameMonth(date1: Date, date2: Date): boolean;
84
- checkMonth(date: Date, months: number[]): boolean;
85
- compareMonth(date1: Date, date2: Date): boolean;
86
- isSameYear(date1: Date, date2: Date): boolean;
87
- isLastMonth(date: Date): boolean;
88
- private updateDateObj;
89
- isLeapYear(year: number, interval: number): boolean;
90
- private getDaysInMonth;
91
- private getHijriDate;
92
- }
@@ -1,261 +0,0 @@
1
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
- import { HijriParser, isNullOrUndefined } from '@syncfusion/ej2-base';
3
-
4
- /**
5
- * Calendar functionalities
6
- */
7
-
8
- /**
9
- * Defines the calendar type of the scheduler.
10
- * ```props
11
- * Islamic :- Denotes the Islamic calendar.
12
- * Gregorian :- Denotes the Gregorian calendar.
13
- * ```
14
- */
15
- export type CalendarType = 'Islamic' | 'Gregorian';
16
-
17
- /** @private */
18
- export interface CalendarUtil {
19
- firstDateOfMonth(date: Date): Date;
20
- lastDateOfMonth(date: Date): Date;
21
- isMonthStart(date: Date): boolean;
22
- getLeapYearDaysCount(): number;
23
- getYearDaysCount(date: Date, interval: number): number;
24
- getMonthDaysCount(date: Date): number;
25
- getDate(date: Date): number;
26
- getMonth(date: Date): number;
27
- getFullYear(date: Date): number;
28
- getYearLastDate(date: Date, interval: number): Date;
29
- getMonthStartDate(date: Date): Date;
30
- getMonthEndDate(date: Date): Date;
31
- getExpectedDays(date: Date, days: number[]): number[];
32
- setDate(dateObj: Date, date: number): void;
33
- setValidDate(date1: Date, interval: number, startDate: number, month?: number, date2?: Date): void;
34
- setMonth(date: Date, interval: number, startDate: number): void;
35
- addYears(date: Date, interval: number, month: number): void;
36
- isSameMonth(date1: Date, date2: Date): boolean;
37
- checkMonth(date: Date, months: number[]): boolean;
38
- compareMonth(date1: Date, date2: Date): boolean;
39
- isSameYear(date1: Date, date2: Date): boolean;
40
- isLastMonth(date: Date): boolean;
41
- isLeapYear(year: number, interval: number): boolean;
42
- }
43
-
44
- /** @private */
45
- export class Gregorian implements CalendarUtil {
46
- public firstDateOfMonth(date: Date): Date {
47
- return new Date(date.getFullYear(), date.getMonth());
48
- }
49
- public lastDateOfMonth(dt: Date): Date {
50
- return new Date(dt.getFullYear(), dt.getMonth() + 1, 0);
51
- }
52
- public isMonthStart(date: Date): boolean {
53
- return (date.getDate() === 1);
54
- }
55
- public getLeapYearDaysCount(): number {
56
- return 366;
57
- }
58
- public getYearDaysCount(date: Date, interval: number): number {
59
- return ((date.getFullYear() + interval) % 4 === 0) ? 366 : 365;
60
- }
61
- public getDate(date: Date): number {
62
- return date.getDate();
63
- }
64
- public getMonth(date: Date): number {
65
- return (date.getMonth() + 1);
66
- }
67
- public getFullYear(date: Date): number {
68
- return date.getFullYear();
69
- }
70
- public getYearLastDate(date: Date, interval: number): Date {
71
- return new Date(date.getFullYear() + interval, 0, 0);
72
- }
73
- public getMonthDaysCount(date: Date): number {
74
- return this.lastDateOfMonth(date).getDate();
75
- }
76
- public getMonthStartDate(date: Date): Date {
77
- return new Date(date.getFullYear(), date.getMonth(), 1, date.getHours(), date.getMinutes());
78
- }
79
- public getMonthEndDate(date: Date): Date {
80
- date.setDate(1);
81
- return new Date(date.setMonth(date.getMonth() + 1));
82
- }
83
- public getExpectedDays(date: Date, days: number[]): number[] {
84
- return days;
85
- }
86
- public setDate(dateObj: Date, date: number): void {
87
- dateObj.setDate(date);
88
- }
89
- public setValidDate(date: Date, interval: number, startDate: number, monthValue?: number, beginDate?: Date): void {
90
- if (!isNullOrUndefined(beginDate)) {
91
- date.setMonth((beginDate ? monthValue : date.getMonth()) + interval);
92
- } else {
93
- date.setMonth(date.getMonth() + interval, startDate);
94
- }
95
- }
96
- public setMonth(date: Date, interval: number, startDate: number): void {
97
- date.setDate(1);
98
- date.setFullYear(date.getFullYear());
99
- date.setMonth(interval - 1);
100
- const maxDay: number = new Date(date.getFullYear(), date.getMonth() + 1, 0).getDate();
101
- date.setDate(Math.min(startDate, maxDay));
102
- }
103
- public addYears(date: Date, interval: number): void {
104
- date.setFullYear(date.getFullYear() + interval);
105
- }
106
- public isSameMonth(date1: Date, date2: Date): boolean {
107
- return (date1.getMonth() === date2.getMonth());
108
- }
109
- public checkMonth(date: Date, months: number[]): boolean {
110
- return (months.indexOf(date.getMonth() + 1) === -1);
111
- }
112
- public compareMonth(date1: Date, date2: Date): boolean {
113
- return (date1.getMonth() > date2.getMonth());
114
- }
115
- public isSameYear(date1: Date, date2: Date): boolean {
116
- return (date1.getFullYear() === date2.getFullYear());
117
- }
118
- public isLastMonth(date: Date): boolean {
119
- return (date.getMonth() === 11);
120
- }
121
- public isLeapYear(year: number, interval: number): boolean {
122
- return ((year + interval) % 4 === 0);
123
- }
124
- }
125
-
126
- /** @private */
127
- export class Islamic implements CalendarUtil {
128
- public firstDateOfMonth(date: Date): Date {
129
- const hDate: Record<string, any> = this.getHijriDate(date);
130
- const gDate: Date = HijriParser.toGregorian(hDate.year as number, hDate.month as number, 1);
131
- return gDate;
132
- }
133
- public lastDateOfMonth(date: Date): Date {
134
- const hDate: Record<string, any> = this.getHijriDate(date);
135
- const daysInMonth: number = this.getDaysInMonth(hDate.month as number, hDate.year as number);
136
- const gDate: Date = HijriParser.toGregorian(hDate.year as number, hDate.month as number, daysInMonth);
137
- let finalGDate: Date = new Date(gDate.getTime());
138
- finalGDate = new Date(finalGDate.setDate(finalGDate.getDate() + 1));
139
- let finalHDate: Record<string, any> = this.getHijriDate(finalGDate);
140
- if (hDate.month === finalHDate.month) {
141
- return finalGDate;
142
- }
143
- finalHDate = this.getHijriDate(gDate);
144
- if (hDate.month === finalHDate.month) {
145
- return gDate;
146
- }
147
- return new Date(gDate.setDate(gDate.getDate() - 1));
148
- }
149
- public isMonthStart(date: Date): boolean {
150
- const hijriDate: Record<string, any> = this.getHijriDate(date);
151
- return (hijriDate.date === 1);
152
- }
153
- public getLeapYearDaysCount(): number {
154
- return 355;
155
- }
156
- public getYearDaysCount(date: Date, interval: number): number {
157
- const hDate: Record<string, any> = this.getHijriDate(date);
158
- return this.isLeapYear((hDate.year as number), interval) ? 355 : 354;
159
- }
160
- public getDate(date: Date): number {
161
- const hijriDate: Record<string, any> = this.getHijriDate(date);
162
- return hijriDate.date as number;
163
- }
164
- public getMonth(date: Date): number {
165
- const hDate: Record<string, any> = this.getHijriDate(date);
166
- return hDate.month as number;
167
- }
168
- public getFullYear(date: Date): number {
169
- const hDate: Record<string, any> = this.getHijriDate(date);
170
- return hDate.year as number;
171
- }
172
- public getYearLastDate(date: Date, interval: number): Date {
173
- const hDate: Record<string, any> = this.getHijriDate(date);
174
- const gDate: Date = HijriParser.toGregorian((hDate.year as number) + interval, 1, 0);
175
- return gDate;
176
- }
177
- public getMonthDaysCount(date: Date): number {
178
- const maxDate: Date = this.lastDateOfMonth(date);
179
- const hijriDate: Record<string, any> = this.getHijriDate(maxDate);
180
- return hijriDate.date as number;
181
- }
182
- public getMonthStartDate(date: Date): Date {
183
- const firstDate: Date = this.firstDateOfMonth(date);
184
- return new Date(firstDate.getFullYear(), firstDate.getMonth(), firstDate.getDate(), date.getHours(), date.getMinutes());
185
- }
186
- public getMonthEndDate(date: Date): Date {
187
- const lastDate: Date = this.lastDateOfMonth(date);
188
- lastDate.setDate(lastDate.getDate() + 1);
189
- return new Date(lastDate.setMonth(lastDate.getMonth()));
190
- }
191
- public getExpectedDays(date: Date, days: number[]): number[] {
192
- const hDate: Record<string, any> = this.getHijriDate(date);
193
- const day: number[] = [];
194
- for (let i: number = 0; i < days.length; i++) {
195
- const gDate: Date = HijriParser.toGregorian(hDate.year as number, (hDate.month as number), days[parseInt(i.toString(), 10)]);
196
- day.push(gDate.getDate());
197
- }
198
- return day;
199
- }
200
- public setDate(dateObj: Date, date: number): void {
201
- const hDate: Record<string, any> = this.getHijriDate(dateObj);
202
- const gDate: Date = HijriParser.toGregorian((hDate.year as number), (hDate.month as number), date);
203
- this.updateDateObj(dateObj, gDate);
204
- }
205
- public setValidDate(date: Date, interval: number, startDate: number, monthValue?: number, beginDate?: Date): void {
206
- const firstDate: Date = (!isNullOrUndefined(beginDate)) ? this.firstDateOfMonth(beginDate) : date;
207
- const hDate: Record<string, any> = this.getHijriDate(firstDate);
208
- const gDate: Date = HijriParser.toGregorian(hDate.year as number, (hDate.month as number) + interval, startDate);
209
- this.updateDateObj(date, gDate);
210
- }
211
- public setMonth(date: Date, interval: number, startDate: number): void {
212
- const hDate: Record<string, any> = this.getHijriDate(date);
213
- const gDate: Date = HijriParser.toGregorian((hDate.year as number), interval, startDate);
214
- this.updateDateObj(date, gDate);
215
- }
216
- public addYears(date: Date, interval: number, monthValue: number): void {
217
- const hDate: Record<string, any> = this.getHijriDate(date);
218
- const gDate: Date = HijriParser.toGregorian((hDate.year as number) + interval, monthValue, 1);
219
- this.updateDateObj(date, gDate);
220
- }
221
- public isSameMonth(date1: Date, date2: Date): boolean {
222
- const currentHijri: Record<string, any> = this.getHijriDate(date1);
223
- const tempHijri: Record<string, any> = this.getHijriDate(date2);
224
- return (currentHijri.month === tempHijri.month);
225
- }
226
- public checkMonth(date: Date, months: number[]): boolean {
227
- const hDate: Record<string, any> = this.getHijriDate(date);
228
- return (months.indexOf(hDate.month as number) === -1);
229
- }
230
- public compareMonth(date1: Date, date2: Date): boolean {
231
- const hDate: Record<string, Date> = this.getHijriDate(date1);
232
- const hDate1: Record<string, Date> = this.getHijriDate(date2);
233
- return (hDate.month > hDate1.month);
234
- }
235
- public isSameYear(date1: Date, date2: Date): boolean {
236
- const hDate: Record<string, any> = this.getHijriDate(date1);
237
- const hDate1: Record<string, any> = this.getHijriDate(date2);
238
- return (hDate.year === hDate1.year);
239
- }
240
- public isLastMonth(date: Date): boolean {
241
- const hDate: Record<string, any> = this.getHijriDate(date);
242
- return ((hDate.month as number) === 12);
243
- }
244
- private updateDateObj(date: Date, gDate: Date): void {
245
- date.setFullYear(gDate.getFullYear(), gDate.getMonth(), gDate.getDate());
246
- }
247
- public isLeapYear(year: number, interval: number): boolean {
248
- return (14 + 11 * (year + interval)) % 30 < 11;
249
- }
250
- private getDaysInMonth(month: number, year: number): number {
251
- let length: number = 0;
252
- length = 29 + ((month + 1) % 2);
253
- if (month === 11 && this.isLeapYear(year, 0)) {
254
- length++;
255
- }
256
- return length;
257
- }
258
- private getHijriDate(date: Date): Record<string, Date> {
259
- return HijriParser.getHijriDate(date) as Record<string, Date>;
260
- }
261
- }
@@ -1,4 +0,0 @@
1
- /**
2
- * Calendar util exported items
3
- */
4
- export * from './calendar-util';
@@ -1,4 +0,0 @@
1
- /**
2
- * Calendar util exported items
3
- */
4
- export * from './calendar-util';
@@ -1,5 +0,0 @@
1
- /**
2
- * Export Schedule and Recurrence Editor
3
- */
4
- export * from './schedule/base/schedule';
5
- export * from './recurrence-editor/recurrence-editor';
@@ -1,5 +0,0 @@
1
- /**
2
- * Export Schedule and Recurrence Editor
3
- */
4
- export * from './schedule/base/schedule';
5
- export * from './recurrence-editor/recurrence-editor';
@@ -1,6 +0,0 @@
1
- /**
2
- * Export Schedule components
3
- */
4
- export * from './schedule/index';
5
- export * from './recurrence-editor/index';
6
- export * from './common/index';
package/dist/ts/index.ts DELETED
@@ -1,7 +0,0 @@
1
- /**
2
- * Export Schedule components
3
- */
4
-
5
- export * from './schedule/index';
6
- export * from './recurrence-editor/index';
7
- export * from './common/index';
@@ -1,76 +0,0 @@
1
- import { L10n } from '@syncfusion/ej2-base';
2
- import { CalendarUtil, CalendarType } from '../common/calendar-util';
3
- /**
4
- * Date Generator from Recurrence Rule
5
- */
6
- /**
7
- * Generate Summary from Recurrence Rule
8
- *
9
- * @param {string} rule Accepts the Recurrence rule
10
- * @param {L10n} localeObject Accepts the locale object
11
- * @param {string} locale Accepts the locale name
12
- * @param {CalendarType} calendarType Accepts the calendar type
13
- * @returns {string} Returns the summary string from given recurrence rule
14
- */
15
- export declare function generateSummary(rule: string, localeObject: L10n, locale: string, calendarType?: CalendarType): string;
16
- /**
17
- * Generates the date collections from the given recurrence rule
18
- *
19
- * @param {Date} startDate Accepts the rule start date
20
- * @param {string} rule Accepts the recurrence rule
21
- * @param {string} excludeDate Accepts the exception dates in string format
22
- * @param {number} startDayOfWeek Accepts the start day index of week
23
- * @param {number} maximumCount Accepts the maximum number count to generate date collections
24
- * @param {Date} viewDate Accepts the current date instead of start date
25
- * @param {CalendarType} calendarMode Accepts the calendar type
26
- * @param {string} newTimezone Accepts the timezone name
27
- * @returns {number[]} Returns the collection of dates
28
- */
29
- export declare function generate(startDate: Date, rule: string, excludeDate: string, startDayOfWeek: number, maximumCount?: number, viewDate?: Date, calendarMode?: CalendarType, newTimezone?: string): number[];
30
- /**
31
- * Generate date object from given date string
32
- *
33
- * @param {string} recDateString Accepts the exception date as string
34
- * @returns {Date} Returns the date from exception date string
35
- */
36
- export declare function getDateFromRecurrenceDateString(recDateString: string): Date;
37
- /**
38
- * Method to generate recurrence rule object from given rule
39
- *
40
- * @param {string} rules Accepts the recurrence rule
41
- * @returns {RecRule} Returns the recurrence rule object
42
- */
43
- export declare function extractObjectFromRule(rules: string): RecRule;
44
- /**
45
- * Internal method to get calendar util
46
- *
47
- * @param {CalendarType} calendarMode Accepts the calendar type object
48
- * @returns {CalendarUtil} Returns the calendar util object
49
- * @private
50
- */
51
- export declare function getCalendarUtil(calendarMode: CalendarType): CalendarUtil;
52
- /** @private */
53
- export interface RecRule {
54
- freq: FreqType;
55
- interval: number;
56
- count: number;
57
- until: Date;
58
- day: string[];
59
- wkst: string;
60
- month: number[];
61
- weekNo: number[];
62
- monthDay: number[];
63
- yearDay: number[];
64
- setPosition: number;
65
- validRules: string[];
66
- recExceptionCount?: number;
67
- }
68
- /** @private */
69
- export declare type FreqType = 'DAILY' | 'WEEKLY' | 'MONTHLY' | 'YEARLY';
70
- /**
71
- * Method to generate string from date
72
- *
73
- * @param {Date} date Accepts the date value
74
- * @returns {string} Returns the string value
75
- */
76
- export declare function getRecurrenceStringFromDate(date: Date): string;