@syncfusion/ej2-schedule 26.1.39 → 26.1.41-16103

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 (298) hide show
  1. package/.eslintrc.json +243 -260
  2. package/README.md +82 -82
  3. package/dist/ej2-schedule.umd.min.js +1 -10
  4. package/dist/ej2-schedule.umd.min.js.map +1 -1
  5. package/dist/es6/ej2-schedule.es2015.js +605 -249
  6. package/dist/es6/ej2-schedule.es2015.js.map +1 -1
  7. package/dist/es6/ej2-schedule.es5.js +1072 -709
  8. package/dist/es6/ej2-schedule.es5.js.map +1 -1
  9. package/helpers/e2e/index.js +3 -3
  10. package/helpers/e2e/recurrence-editor.js +13 -13
  11. package/helpers/e2e/schedule.js +13 -13
  12. package/license +9 -9
  13. package/package.json +79 -79
  14. package/src/recurrence-editor/date-generator.js +3 -0
  15. package/src/recurrence-editor/recurrence-editor-model.d.ts +65 -65
  16. package/src/recurrence-editor/recurrence-editor.js +19 -19
  17. package/src/schedule/actions/crud.js +22 -6
  18. package/src/schedule/actions/drag.d.ts +4 -0
  19. package/src/schedule/actions/drag.js +73 -34
  20. package/src/schedule/actions/keyboard.d.ts +1 -0
  21. package/src/schedule/actions/keyboard.js +45 -3
  22. package/src/schedule/actions/resize.js +34 -32
  23. package/src/schedule/actions/touch.js +4 -0
  24. package/src/schedule/actions/virtual-scroll.d.ts +6 -0
  25. package/src/schedule/actions/virtual-scroll.js +119 -34
  26. package/src/schedule/base/interface.d.ts +6 -2
  27. package/src/schedule/base/resource.js +5 -0
  28. package/src/schedule/base/schedule-model.d.ts +805 -805
  29. package/src/schedule/base/schedule.d.ts +26 -0
  30. package/src/schedule/base/schedule.js +63 -21
  31. package/src/schedule/base/util.d.ts +10 -5
  32. package/src/schedule/base/util.js +15 -10
  33. package/src/schedule/event-renderer/agenda-base.js +15 -14
  34. package/src/schedule/event-renderer/event-base.js +18 -3
  35. package/src/schedule/event-renderer/inline-edit.js +13 -5
  36. package/src/schedule/event-renderer/month.js +20 -17
  37. package/src/schedule/event-renderer/timeline-view.js +21 -18
  38. package/src/schedule/event-renderer/vertical-view.d.ts +2 -1
  39. package/src/schedule/event-renderer/vertical-view.js +66 -34
  40. package/src/schedule/event-renderer/year.js +20 -20
  41. package/src/schedule/exports/print.js +1 -0
  42. package/src/schedule/models/event-settings-model.d.ts +155 -155
  43. package/src/schedule/models/event-settings.js +19 -19
  44. package/src/schedule/models/field-options-model.d.ts +22 -22
  45. package/src/schedule/models/field-options.js +19 -19
  46. package/src/schedule/models/fields-model.d.ts +92 -92
  47. package/src/schedule/models/fields.js +19 -19
  48. package/src/schedule/models/group-model.d.ts +48 -48
  49. package/src/schedule/models/group.js +19 -19
  50. package/src/schedule/models/header-rows-model.d.ts +22 -22
  51. package/src/schedule/models/header-rows.js +19 -19
  52. package/src/schedule/models/quick-info-templates-model.d.ts +37 -37
  53. package/src/schedule/models/quick-info-templates.js +19 -19
  54. package/src/schedule/models/resources-model.d.ts +85 -85
  55. package/src/schedule/models/resources.js +19 -19
  56. package/src/schedule/models/time-scale-model.d.ts +40 -40
  57. package/src/schedule/models/time-scale.js +19 -19
  58. package/src/schedule/models/toolbar-model.d.ts +187 -187
  59. package/src/schedule/models/toolbar.js +19 -19
  60. package/src/schedule/models/views-model.d.ts +329 -329
  61. package/src/schedule/models/views.js +19 -19
  62. package/src/schedule/models/work-hours-model.d.ts +16 -16
  63. package/src/schedule/models/work-hours.js +19 -19
  64. package/src/schedule/popups/event-tooltip.js +2 -1
  65. package/src/schedule/popups/event-window.d.ts +1 -0
  66. package/src/schedule/popups/event-window.js +25 -15
  67. package/src/schedule/renderer/agenda.js +13 -13
  68. package/src/schedule/renderer/day.js +13 -13
  69. package/src/schedule/renderer/header-renderer.d.ts +1 -0
  70. package/src/schedule/renderer/header-renderer.js +20 -12
  71. package/src/schedule/renderer/month-agenda.js +13 -13
  72. package/src/schedule/renderer/month.js +19 -13
  73. package/src/schedule/renderer/timeline-header-row.js +1 -1
  74. package/src/schedule/renderer/timeline-month.js +13 -13
  75. package/src/schedule/renderer/timeline-view.js +22 -17
  76. package/src/schedule/renderer/timeline-year.js +19 -15
  77. package/src/schedule/renderer/vertical-view.js +33 -23
  78. package/src/schedule/renderer/view-base.d.ts +1 -0
  79. package/src/schedule/renderer/view-base.js +14 -1
  80. package/src/schedule/renderer/week.js +13 -13
  81. package/src/schedule/renderer/work-week.js +13 -13
  82. package/src/schedule/renderer/year.js +17 -17
  83. package/styles/bootstrap-dark-lite.css +4174 -0
  84. package/styles/bootstrap-dark-lite.scss +18 -0
  85. package/styles/bootstrap-dark.css +823 -595
  86. package/styles/bootstrap-dark.scss +3 -2
  87. package/styles/bootstrap-lite.css +4169 -0
  88. package/styles/bootstrap-lite.scss +18 -0
  89. package/styles/bootstrap.css +823 -595
  90. package/styles/bootstrap.scss +3 -2
  91. package/styles/bootstrap4-lite.css +4216 -0
  92. package/styles/bootstrap4-lite.scss +18 -0
  93. package/styles/bootstrap4.css +809 -636
  94. package/styles/bootstrap4.scss +3 -2
  95. package/styles/bootstrap5-dark-lite.css +4215 -0
  96. package/styles/bootstrap5-dark-lite.scss +18 -0
  97. package/styles/bootstrap5-dark.css +824 -596
  98. package/styles/bootstrap5-dark.scss +3 -2
  99. package/styles/bootstrap5-lite.css +4215 -0
  100. package/styles/bootstrap5-lite.scss +18 -0
  101. package/styles/bootstrap5.3-lite.css +4261 -0
  102. package/styles/bootstrap5.3-lite.scss +18 -0
  103. package/styles/bootstrap5.3.css +5023 -0
  104. package/styles/bootstrap5.3.scss +20 -0
  105. package/styles/bootstrap5.css +824 -596
  106. package/styles/bootstrap5.scss +3 -2
  107. package/styles/fabric-dark-lite.css +4144 -0
  108. package/styles/fabric-dark-lite.scss +18 -0
  109. package/styles/fabric-dark.css +830 -594
  110. package/styles/fabric-dark.scss +3 -2
  111. package/styles/fabric-lite.css +4141 -0
  112. package/styles/fabric-lite.scss +18 -0
  113. package/styles/fabric.css +830 -587
  114. package/styles/fabric.scss +3 -2
  115. package/styles/fluent-dark-lite.css +4207 -0
  116. package/styles/fluent-dark-lite.scss +18 -0
  117. package/styles/fluent-dark.css +828 -592
  118. package/styles/fluent-dark.scss +3 -2
  119. package/styles/fluent-lite.css +4207 -0
  120. package/styles/fluent-lite.scss +18 -0
  121. package/styles/fluent.css +828 -592
  122. package/styles/fluent.scss +3 -2
  123. package/styles/fluent2-lite.css +4427 -0
  124. package/styles/fluent2-lite.scss +18 -0
  125. package/styles/fluent2.css +863 -1627
  126. package/styles/fluent2.scss +3 -2
  127. package/styles/highcontrast-light-lite.css +4233 -0
  128. package/styles/highcontrast-light-lite.scss +18 -0
  129. package/styles/highcontrast-light.css +833 -583
  130. package/styles/highcontrast-light.scss +3 -2
  131. package/styles/highcontrast-lite.css +4242 -0
  132. package/styles/highcontrast-lite.scss +18 -0
  133. package/styles/highcontrast.css +834 -584
  134. package/styles/highcontrast.scss +3 -2
  135. package/styles/material-dark-lite.css +4221 -0
  136. package/styles/material-dark-lite.scss +18 -0
  137. package/styles/material-dark.css +839 -581
  138. package/styles/material-dark.scss +3 -2
  139. package/styles/material-lite.css +4247 -0
  140. package/styles/material-lite.scss +18 -0
  141. package/styles/material.css +836 -599
  142. package/styles/material.scss +3 -2
  143. package/styles/material3-dark-lite.css +4238 -0
  144. package/styles/material3-dark-lite.scss +18 -0
  145. package/styles/material3-dark.css +832 -656
  146. package/styles/material3-dark.scss +4 -3
  147. package/styles/material3-lite.css +4240 -0
  148. package/styles/material3-lite.scss +18 -0
  149. package/styles/material3.css +831 -709
  150. package/styles/material3.scss +4 -3
  151. package/styles/recurrence-editor/_all.scss +2 -2
  152. package/styles/recurrence-editor/_bds-definition.scss +14 -14
  153. package/styles/recurrence-editor/_bigger.scss +134 -0
  154. package/styles/recurrence-editor/_bootstrap-dark-definition.scss +14 -14
  155. package/styles/recurrence-editor/_bootstrap-definition.scss +14 -14
  156. package/styles/recurrence-editor/_bootstrap4-definition.scss +14 -14
  157. package/styles/recurrence-editor/_bootstrap5-definition.scss +14 -14
  158. package/styles/recurrence-editor/_bootstrap5.3-definition.scss +14 -14
  159. package/styles/recurrence-editor/_fabric-dark-definition.scss +14 -14
  160. package/styles/recurrence-editor/_fabric-definition.scss +14 -14
  161. package/styles/recurrence-editor/_fluent-definition.scss +14 -14
  162. package/styles/recurrence-editor/_fluent2-definition.scss +14 -14
  163. package/styles/recurrence-editor/_fusionnew-definition.scss +14 -14
  164. package/styles/recurrence-editor/_highcontrast-definition.scss +14 -14
  165. package/styles/recurrence-editor/_highcontrast-light-definition.scss +14 -14
  166. package/styles/recurrence-editor/_layout.scss +415 -525
  167. package/styles/recurrence-editor/_material-dark-definition.scss +14 -14
  168. package/styles/recurrence-editor/_material-definition.scss +14 -14
  169. package/styles/recurrence-editor/_material3-definition.scss +14 -14
  170. package/styles/recurrence-editor/_tailwind-definition.scss +14 -14
  171. package/styles/recurrence-editor/_theme.scss +1 -1
  172. package/styles/recurrence-editor/bootstrap-dark.css +87 -131
  173. package/styles/recurrence-editor/bootstrap-dark.scss +1 -0
  174. package/styles/recurrence-editor/bootstrap.css +87 -131
  175. package/styles/recurrence-editor/bootstrap.scss +1 -0
  176. package/styles/recurrence-editor/bootstrap4.css +87 -149
  177. package/styles/recurrence-editor/bootstrap4.scss +1 -0
  178. package/styles/recurrence-editor/bootstrap5-dark.css +87 -135
  179. package/styles/recurrence-editor/bootstrap5-dark.scss +1 -0
  180. package/styles/recurrence-editor/bootstrap5.3.css +501 -0
  181. package/styles/recurrence-editor/bootstrap5.3.scss +9 -0
  182. package/styles/recurrence-editor/bootstrap5.css +87 -135
  183. package/styles/recurrence-editor/bootstrap5.scss +1 -0
  184. package/styles/recurrence-editor/fabric-dark.css +87 -130
  185. package/styles/recurrence-editor/fabric-dark.scss +1 -0
  186. package/styles/recurrence-editor/fabric.css +87 -123
  187. package/styles/recurrence-editor/fabric.scss +1 -0
  188. package/styles/recurrence-editor/fluent-dark.css +87 -122
  189. package/styles/recurrence-editor/fluent-dark.scss +1 -0
  190. package/styles/recurrence-editor/fluent.css +87 -122
  191. package/styles/recurrence-editor/fluent.scss +1 -0
  192. package/styles/recurrence-editor/fluent2.css +94 -1148
  193. package/styles/recurrence-editor/fluent2.scss +1 -0
  194. package/styles/recurrence-editor/highcontrast-light.css +87 -118
  195. package/styles/recurrence-editor/highcontrast-light.scss +1 -0
  196. package/styles/recurrence-editor/highcontrast.css +87 -118
  197. package/styles/recurrence-editor/highcontrast.scss +1 -0
  198. package/styles/recurrence-editor/material-dark.css +87 -115
  199. package/styles/recurrence-editor/material-dark.scss +1 -0
  200. package/styles/recurrence-editor/material.css +87 -136
  201. package/styles/recurrence-editor/material.scss +1 -0
  202. package/styles/recurrence-editor/material3-dark.css +88 -194
  203. package/styles/recurrence-editor/material3-dark.scss +2 -1
  204. package/styles/recurrence-editor/material3.css +89 -249
  205. package/styles/recurrence-editor/material3.scss +2 -1
  206. package/styles/recurrence-editor/tailwind-dark.css +87 -116
  207. package/styles/recurrence-editor/tailwind-dark.scss +1 -0
  208. package/styles/recurrence-editor/tailwind.css +87 -116
  209. package/styles/recurrence-editor/tailwind.scss +1 -0
  210. package/styles/schedule/_all.scss +2 -2
  211. package/styles/schedule/_bds-definition.scss +272 -272
  212. package/styles/schedule/_bigger.scss +810 -0
  213. package/styles/schedule/_bootstrap-dark-definition.scss +270 -270
  214. package/styles/schedule/_bootstrap-definition.scss +270 -270
  215. package/styles/schedule/_bootstrap4-definition.scss +273 -273
  216. package/styles/schedule/_bootstrap5-definition.scss +274 -274
  217. package/styles/schedule/_bootstrap5.3-definition.scss +276 -273
  218. package/styles/schedule/_fabric-dark-definition.scss +271 -271
  219. package/styles/schedule/_fabric-definition.scss +270 -270
  220. package/styles/schedule/_fluent-definition.scss +276 -276
  221. package/styles/schedule/_fluent2-definition.scss +273 -273
  222. package/styles/schedule/_fusionnew-definition.scss +273 -273
  223. package/styles/schedule/_highcontrast-definition.scss +271 -271
  224. package/styles/schedule/_highcontrast-light-definition.scss +271 -271
  225. package/styles/schedule/_layout.scss +3787 -4218
  226. package/styles/schedule/_material-dark-definition.scss +270 -270
  227. package/styles/schedule/_material-definition.scss +270 -270
  228. package/styles/schedule/_material3-definition.scss +275 -275
  229. package/styles/schedule/_tailwind-definition.scss +271 -271
  230. package/styles/schedule/_theme.scss +589 -567
  231. package/styles/schedule/bootstrap-dark.css +706 -484
  232. package/styles/schedule/bootstrap-dark.scss +1 -0
  233. package/styles/schedule/bootstrap.css +706 -484
  234. package/styles/schedule/bootstrap.scss +1 -0
  235. package/styles/schedule/bootstrap4.css +699 -532
  236. package/styles/schedule/bootstrap4.scss +1 -0
  237. package/styles/schedule/bootstrap5-dark.css +714 -492
  238. package/styles/schedule/bootstrap5-dark.scss +1 -0
  239. package/styles/schedule/bootstrap5.3.css +4621 -0
  240. package/styles/schedule/bootstrap5.3.scss +17 -0
  241. package/styles/schedule/bootstrap5.css +714 -492
  242. package/styles/schedule/bootstrap5.scss +1 -0
  243. package/styles/schedule/fabric-dark.css +713 -483
  244. package/styles/schedule/fabric-dark.scss +1 -0
  245. package/styles/schedule/fabric.css +713 -476
  246. package/styles/schedule/fabric.scss +1 -0
  247. package/styles/schedule/fluent-dark.css +723 -493
  248. package/styles/schedule/fluent-dark.scss +1 -0
  249. package/styles/schedule/fluent.css +723 -493
  250. package/styles/schedule/fluent.scss +1 -0
  251. package/styles/schedule/fluent2.css +752 -1525
  252. package/styles/schedule/fluent2.scss +1 -0
  253. package/styles/schedule/highcontrast-light.css +721 -477
  254. package/styles/schedule/highcontrast-light.scss +1 -0
  255. package/styles/schedule/highcontrast.css +721 -477
  256. package/styles/schedule/highcontrast.scss +1 -0
  257. package/styles/schedule/icons/_bds.scss +220 -220
  258. package/styles/schedule/icons/_bootstrap-dark.scss +223 -223
  259. package/styles/schedule/icons/_bootstrap.scss +223 -223
  260. package/styles/schedule/icons/_bootstrap4.scss +217 -217
  261. package/styles/schedule/icons/_bootstrap5.3.scss +220 -220
  262. package/styles/schedule/icons/_bootstrap5.scss +220 -220
  263. package/styles/schedule/icons/_fabric-dark.scss +223 -223
  264. package/styles/schedule/icons/_fabric.scss +223 -223
  265. package/styles/schedule/icons/_fluent.scss +220 -220
  266. package/styles/schedule/icons/_fluent2.scss +220 -220
  267. package/styles/schedule/icons/_fusionnew.scss +220 -220
  268. package/styles/schedule/icons/_highcontrast-light.scss +223 -223
  269. package/styles/schedule/icons/_highcontrast.scss +223 -223
  270. package/styles/schedule/icons/_material-dark.scss +223 -223
  271. package/styles/schedule/icons/_material.scss +223 -223
  272. package/styles/schedule/icons/_material3.scss +220 -220
  273. package/styles/schedule/icons/_tailwind.scss +220 -220
  274. package/styles/schedule/material-dark.css +732 -480
  275. package/styles/schedule/material-dark.scss +1 -0
  276. package/styles/schedule/material.css +729 -498
  277. package/styles/schedule/material.scss +1 -0
  278. package/styles/schedule/material3-dark.css +713 -543
  279. package/styles/schedule/material3-dark.scss +2 -1
  280. package/styles/schedule/material3.css +714 -598
  281. package/styles/schedule/material3.scss +2 -1
  282. package/styles/schedule/tailwind-dark.css +725 -484
  283. package/styles/schedule/tailwind-dark.scss +1 -0
  284. package/styles/schedule/tailwind.css +725 -484
  285. package/styles/schedule/tailwind.scss +1 -0
  286. package/styles/tailwind-dark-lite.css +4184 -0
  287. package/styles/tailwind-dark-lite.scss +18 -0
  288. package/styles/tailwind-dark.css +832 -585
  289. package/styles/tailwind-dark.scss +3 -2
  290. package/styles/tailwind-lite.css +4184 -0
  291. package/styles/tailwind-lite.scss +18 -0
  292. package/styles/tailwind.css +832 -585
  293. package/styles/tailwind.scss +3 -2
  294. package/dist/ej2-schedule.min.js +0 -10
  295. package/dist/global/ej2-schedule.min.js +0 -11
  296. package/dist/global/ej2-schedule.min.js.map +0 -1
  297. package/dist/global/index.d.ts +0 -14
  298. package/tslint.json +0 -111
@@ -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, SanitizeHtmlHelper } 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, ToolbarItemModel } 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, ScrollEventArgs, 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';import { ToolbarItem } from '../models/toolbar';
1
+ import { Component, ModuleDeclaration, Property, Event, Animation, Collection, append } from '@syncfusion/ej2-base';
2
2
  import {ComponentModel} from '@syncfusion/ej2-base';
3
3
 
4
4
  /**
@@ -7,855 +7,855 @@ import {ComponentModel} from '@syncfusion/ej2-base';
7
7
  export interface ScheduleModel extends ComponentModel{
8
8
 
9
9
  /**
10
- * Sets the `width` of the Schedule component, accepting both string and number values.
11
- *
12
- * {% codeBlock src='schedule/width/index.md' %}{% endcodeBlock %}
13
- *
14
- * The string value can be either pixel or percentage format.
15
- * When set to `auto`, the Schedule width gets auto-adjusted and display its content related to the viewable screen size.
16
- *
17
- * @default 'auto'
18
- */
19
- width?: string | number;
20
-
21
- /**
22
- * Sets the `height` of the Schedule component, accepting both string and number values.
23
- *
24
- * {% codeBlock src='schedule/height/index.md' %}{% endcodeBlock %}
25
- *
26
- * The string type includes either pixel or percentage values.
27
- * When `height` is set with specific pixel value, then the Schedule will be rendered to that specified space.
28
- * In case, if `auto` value is set, then the height of the Schedule gets auto-adjusted within the given container.
29
- *
30
- * @default 'auto'
31
- */
32
- height?: string | number;
33
-
34
- /**
35
- * When set to `false`, hides the header bar of the Schedule from UI. By default,
36
- * the header bar holds the date and view navigation options, to which the user can add their own custom items onto it.
37
- *
38
- * @default true
39
- */
40
- showHeaderBar?: boolean;
41
-
42
- /**
43
- * When set to `false`, hides the current time indicator from the Schedule. Otherwise,
44
- * it visually depicts the live current system time appropriately on the user interface.
45
- *
46
- * @default true
47
- */
48
- showTimeIndicator?: boolean;
49
-
50
- /**
51
- * Defines whether to enable date navigations via swipe in touch devices or not.
52
- *
53
- * @default true
54
- */
55
- allowSwiping?: boolean;
56
-
57
- /**
58
- * To render the custom toolbar items, the `toolbarItems` property can be used. It contains built-in and custom toolbar items.
59
- * To avail the built-in toolbar items, the below string values are assigned to the `name` property of the `ToolbarItemModel`.
60
- * * `Previous`: Schedule component navigates to the previous date from the current date.
61
- * * `Next`: Schedule component navigates to the next date from the current date.
62
- * * `Today`: Schedule component navigates to the current date from any date.
63
- * * `Views`: Schedule component render the defined view options in the toolbar. If view option is not defined, then it will render default view options in the Schedule.
64
- * * `DateRangeText`: Schedule component displays the current date text range.
65
- * * `NewEvent`: Schedule component render the icon to add a new event.
66
- *
67
- * @default []
68
- */
69
- toolbarItems?: ToolbarItemModel[]
70
-
71
- /**
72
- * To set the active view on scheduler, the `currentView` property can be used and it usually accepts either of the following available
73
- * view options. The view option specified in this property will be initially loaded on the schedule.
74
- * * `Day`: Denotes Day view of the scheduler.
75
- * * `Week`: Denotes Week view of the scheduler.
76
- * * `WorkWeek`: Denotes Work Week view of the scheduler.
77
- * * `Month`: Denotes Month view of the scheduler.
78
- * * `Year`: Denotes Year view of the scheduler.
79
- * * `Agenda`: Denotes Agenda view of the scheduler.
80
- * * `MonthAgenda`: Denotes Month Agenda view of the scheduler.
81
- * * `TimelineDay`: Denotes Timeline Day view of the scheduler.
82
- * * `TimelineWeek`: Denotes Timeline Week view of the scheduler.
83
- * * `TimelineWorkWeek`: Denotes Timeline Work Week view of the scheduler.
84
- * * `TimelineMonth`: Denotes Timeline Month view of the scheduler.
85
- * * `TimelineYear`: Denotes Timeline Year view of the scheduler.
86
- *
87
- * {% codeBlock src='schedule/currentView/index.md' %}{% endcodeBlock %}
88
- *
89
- * @default 'Week'
90
- */
91
- currentView?: View;
92
-
93
- /**
94
- * This property holds the views collection and its configurations. It accepts either the array of view names or the array of view
95
- * objects that holds different configurations for each views. By default,
96
- * Schedule displays all the views namely `Day`, `Week`, `Work Week`, `Month` and `Agenda`.
97
- *
98
- * Example for array of views:
99
- * {% codeBlock src="schedule/views/index.md" %}{% endcodeBlock %}
100
- *
101
- * Example for array of view objects:
102
- * {% codeBlock src='schedule/viewOption/index.md' %}{% endcodeBlock %}
103
- *
104
- * @default '["Day", "Week", "WorkWeek", "Month", "Agenda"]'
105
- */
106
- views?: View[] | ViewsModel[];
107
-
108
- /**
109
- * To mark the active (current) date on the Schedule, `selectedDate` property can be defined.
110
- * Usually, it defaults to the current System date.
111
- *
112
- * {% codeBlock src='schedule/selectedDate/index.md' %}{% endcodeBlock %}
113
- *
114
- * @default 'new Date()'
115
- * @aspDefaultValue DateTime.Now
116
- */
117
- selectedDate?: Date;
118
-
119
- /**
120
- * To define the minimum date on the Schedule, `minDate` property can be defined.
121
- * Usually, it defaults to the new Date(1900, 0, 1).
122
- *
123
- * {% codeBlock src='schedule/minDate/index.md' %}{% endcodeBlock %}
124
- *
125
- * @default new Date(1900, 0, 1)
126
- * @aspDefaultValue new DateTime(1900, 1, 1)
127
- */
128
- minDate?: Date;
129
-
130
- /**
131
- * To define the maximum date on the Schedule, `maxDate` property can be defined.
132
- * Usually, it defaults to the new Date(2099, 11, 31).
133
- *
134
- * {% codeBlock src='schedule/maxDate/index.md' %}{% endcodeBlock %}
135
- *
136
- * @default new Date(2099, 11, 31)
137
- * @aspDefaultValue new DateTime(2099, 12, 31)
138
- */
139
- maxDate?: Date;
140
-
141
- /**
142
- * By default, Schedule follows the date-format as per the default culture assigned to it.
143
- * It is also possible to manually set specific date format by using the `dateFormat` property.
144
- *
145
- * {% codeBlock src='schedule/dateFormat/index.md' %}{% endcodeBlock %}
146
- *
147
- * The format of the date range label in the header bar depends on the `dateFormat` value or else based on the
148
- * locale assigned to the Schedule.
149
- *
150
- * @default null
151
- */
152
- dateFormat?: string;
153
-
154
- /**
155
- * It allows the Scheduler to display in other calendar modes.
156
- * By default, Scheduler is displayed in `Gregorian` calendar mode.
157
- *
158
- * {% codeBlock src='schedule/calendarMode/index.md' %}{% endcodeBlock %}
159
- *
160
- * To change the mode, you can set either `Gregorian` or `Islamic` as a value to this `calendarMode` property.
161
- *
162
- * @default 'Gregorian'
163
- */
164
- calendarMode?: CalendarType;
165
-
166
- /**
167
- * When set to `false`, it hides the weekend days of a week from the Schedule. The days which are not defined in the working days
168
- * collection are usually treated as weekend days.
169
- *
170
- * Note: By default, this option is not applicable on `Work Week` view.
171
- * For example, if the working days are defined as [1, 2, 3, 4], then the remaining days of that week will be considered as
172
- * the weekend days and will be hidden on all the views.
173
- *
174
- * @default true
175
- */
176
- showWeekend?: boolean;
177
-
178
- /**
179
- * This option allows the user to set the first day of a week on Schedule. It should be based on the locale set to it and each culture
180
- * defines its own first day of week values. If needed, the user can set it manually on his own by defining the value through
181
- * this property. It usually accepts the integer values, whereby 0 is always denoted as Sunday, 1 as Monday and so on.
182
- *
183
- * {% codeBlock src='schedule/firstDayOfWeek/index.md' %}{% endcodeBlock %}
184
- *
185
- * @default 0
186
- */
187
- firstDayOfWeek?: number;
188
-
189
- /**
190
- * It allows the Scheduler to display week numbers based on following available week options. The week
191
- * option specified in this property will be initially loaded on the schedule.
192
- * * `FirstDay`: Denotes that the first week of the year starts on the first day of the year and ends before the following designated first day of the week.
193
- * * `FirstFourDayWeek`:Denotes that the first week of the year is the first week with four or more days before the designated first day of the week.
194
- * * `FirstFullWeek`: Denotes that the first week of the year begins on the first occurrence of the designated first day of the week on or after the first day of the year.
195
- *
196
- * {% codeBlock src='schedule/weekRule/index.md' %}{% endcodeBlock %}
197
- *
198
- * @default 'FirstDay'
199
- */
200
- weekRule?: WeekRule;
201
-
202
- /**
203
- * It is used to set the working days on Schedule. The only days that are defined in this collection will be rendered on the `workWeek`
204
- * view whereas on other views, it will display all the usual days and simply highlights the working days with different shade.
205
- *
206
- * {% codeBlock src='schedule/workDays/index.md' %}{% endcodeBlock %}
207
- *
208
- * @default '[1, 2, 3, 4, 5]'
209
- * @aspType int[]
210
- */
211
- workDays?: number[];
212
-
213
- /**
214
- * This option allows the user to set the number of months count to be displayed on the Schedule.
215
- *
216
- * {% codeBlock src='schedule/monthsCount/index.md' %}{% endcodeBlock %}
217
- *
218
- * @default 12
219
- * @aspType int
220
- */
221
- monthsCount?: number;
222
-
223
- /**
224
- * It is used to specify the starting hour, from which the Schedule starts to display. It accepts the time string in a short skeleton
225
- * format and also, hides the time beyond the specified start time.
226
- *
227
- * {% codeBlock src='schedule/startHour/index.md' %}{% endcodeBlock %}
228
- *
229
- * @default '00:00'
230
- */
231
- startHour?: string;
232
-
233
- /**
234
- * It is used to specify the end hour, at which the Schedule ends. It too accepts the time string in a short skeleton format.
235
- *
236
- * {% codeBlock src='schedule/endHour/index.md' %}{% endcodeBlock %}
237
- *
238
- * @default '24:00'
239
- */
240
- endHour?: string;
241
-
242
- /**
243
- * By default, Schedule follows the time-format as per the default culture assigned to it.
244
- * It is also possible to manually set specific time format by using the `timeFormat` property.
245
- *
246
- * {% codeBlock src='schedule/timeFormat/index.md' %}{% endcodeBlock %}
247
- *
248
- * @default null
249
- */
250
- timeFormat?: string;
251
-
252
- /**
253
- * Specifies whether to enable the rendering of untrusted HTML values in the Schedule component.
254
- * When this property is enabled, the component will sanitize any suspected untrusted strings and scripts before rendering them.
255
- *
256
- * @default true
257
- */
258
- enableHtmlSanitizer?: boolean;
259
-
260
- /**
261
- * When set to `true`, If valid, the scroll on the all day row is activated when the all day row
262
- * height reaches the max height when the all day row is expanded.
263
- *
264
- * @default false
265
- */
266
- enableAllDayScroll?: boolean;
267
-
268
- /**
269
- * When set to `true`, the header view navigations are listed under the popup and if we enable resource grouping, the compact view will be enabled.
270
- *
271
- * @default false
272
- */
273
- enableAdaptiveUI?: boolean;
274
-
275
- /**
276
- * When set to `true`, allows the resizing of appointments. It allows the rescheduling of appointments either by changing the
277
- * start or end time by dragging the event resize handlers.
278
- *
279
- * @default true
280
- */
281
- allowResizing?: boolean;
282
-
283
- /**
284
- * The working hours should be highlighted on Schedule with different color shade and an additional option must be provided to
285
- * highlight it or not. This functionality is handled through `workHours` property and the start work hour should be 9 AM by default
286
- * and end work hour should point to 6 PM. The start and end working hours needs to be provided as Time value of short skeleton type.
287
- *
288
- * {% codeBlock src='schedule/workHours/index.md' %}{% endcodeBlock %}
289
- *
290
- * @default { highlight: true, start: '09:00', end: '18:00' }
291
- */
292
- workHours?: WorkHoursModel;
293
-
294
- /**
295
- * Allows to set different time duration on Schedule along with the customized grid count. It also has template option to
296
- * customize the time slots with required time values in its own format.
297
- *
298
- * {% codeBlock src='schedule/timeScale/index.md' %}{% endcodeBlock %}
299
- *
300
- * @default { enable: true, interval: 60, slotCount: 2, majorSlotTemplate: null, minorSlotTemplate: null }
301
- */
302
- timeScale?: TimeScaleModel;
303
-
304
- /**
305
- * When set to `true`, allows the keyboard interaction to take place on Schedule.
306
- *
307
- * @default true
308
- */
309
- allowKeyboardInteraction?: boolean;
310
-
311
- /**
312
- * When set to `true`, allows the appointments to move over the time slots. When an appointment is dragged, both its start
313
- * and end time tends to change simultaneously allowing it to reschedule the appointment on some other time.
314
- *
315
- * @default true
316
- */
317
- allowDragAndDrop?: boolean;
318
-
319
- /**
320
- * It accepts either the string or HTMLElement as template design content and parse it appropriately before displaying it onto
321
- * the date header cells. The field that can be accessed via this template is `date`.
322
- *
323
- * {% codeBlock src='schedule/dateHeaderTemplate/index.md' %}{% endcodeBlock %}
324
- *
325
- * @default null
326
- * @angularType string | object
327
- * @reactType string | function | JSX.Element
328
- * @vueType string | function
329
- * @aspType string
330
- */
331
- dateHeaderTemplate?: string | Function;
332
-
333
- /**
334
- * It accepts either the string or HTMLElement as template design content and parse it appropriately before displaying it onto the header date range.
335
- *
336
- * @default null
337
- * @angularType string | object
338
- * @reactType string | function | JSX.Element
339
- * @vueType string | function
340
- * @aspType string
341
- */
342
- dateRangeTemplate?: string | Function;
343
-
344
- /**
345
- * It accepts either the string or HTMLElement as template design content and parse it appropriately before displaying it onto
346
- * the month date cells. This template is only applicable for month view day cells.
347
- *
348
- * {% codeBlock src='schedule/cellHeaderTemplate/index.md' %}{% endcodeBlock %}
349
- *
350
- * @default null
351
- * @angularType string | object
352
- * @reactType string | function | JSX.Element
353
- * @vueType string | function
354
- * @aspType string
355
- */
356
- cellHeaderTemplate?: string | Function;
357
-
358
- /**
359
- * It accepts either the string or HTMLElement as template design content and parse it appropriately before displaying it onto
360
- * the day header cells. This template is only applicable for year view header cells.
361
- *
362
- * {% codeBlock src='schedule/dayHeaderTemplate/index.md' %}{% endcodeBlock %}
363
- *
364
- * @default null
365
- * @angularType string | object
366
- * @reactType string | function | JSX.Element
367
- * @vueType string | function
368
- * @aspType string
369
- */
370
- dayHeaderTemplate?: string | Function;
371
-
372
- /**
373
- * It accepts either the string or HTMLElement as template design content and parse it appropriately before displaying it onto
374
- * the month header cells. This template is only applicable for year view header cells.
375
- *
376
- * {% codeBlock src='schedule/monthHeaderTemplate/index.md' %}{% endcodeBlock %}
377
- *
378
- * @default null
379
- * @angularType string | object
380
- * @reactType string | function | JSX.Element
381
- * @vueType string | function
382
- * @aspType string
383
- */
384
- monthHeaderTemplate?: string | Function;
385
-
386
- /**
387
- * The template option which is used to render the customized work cells on the Schedule. Here, the template accepts either
388
- * the string or HTMLElement as template design and then the parsed design is displayed onto the work cells.
389
- * The fields accessible via template are as follows.
390
- * * `date`: Returns the date of the cell.
391
- * * `groupIndex`: Returns the group index of the cell.
392
- * * `type`: Returns the type of the work cell.
393
- *
394
- * Refer to the below code snippet.
395
- *
396
- * {% codeBlock src='schedule/cellTemplate/index.md' %}{% endcodeBlock %}
397
- *
398
- * @default null
399
- * @angularType string | object
400
- * @reactType string | function | JSX.Element
401
- * @vueType string | function
402
- * @aspType string
403
- */
404
- cellTemplate?: string | Function;
405
-
406
- /**
407
- * When set to `true`, makes the Schedule to render in a read only mode. No CRUD actions will be allowed at this time.
408
- *
409
- * @default false
410
- */
411
- readonly?: boolean;
412
-
413
- /**
414
- * When set to `true`, displays a quick popup with cell or event details on single clicking over the cells or on events.
415
- * By default, it is set to `true`.
416
- *
417
- * @default true
418
- */
419
- showQuickInfo?: boolean;
420
-
421
- /**
422
- * This property helps user to add/edit the event in inline. By default, it is set to `false`.
423
- *
424
- * @default false
425
- */
426
- allowInline?: boolean;
427
-
428
- /**
429
- * This property helps user to allow/prevent the selection of multiple cells. By default, it is set to `true`.
430
- *
431
- * @default true
432
- */
433
- allowMultiCellSelection?: boolean;
434
-
435
- /**
436
- * This property helps user to allow/prevent the selection of multiple days(rows). By default, it is set to `true`.
437
- *
438
- * @default true
439
- */
440
- allowMultiRowSelection?: boolean;
441
-
442
- /**
443
- * This property helps to show quick popup after multiple cell selection. By default, it is set to `false`.
444
- *
445
- * @default false
446
- */
447
- quickInfoOnSelectionEnd?: boolean;
448
-
449
- /**
450
- * When set to `true`, displays the week number of the current view date range. By default, it is set to `false`.
451
- *
452
- * @default false
453
- */
454
- showWeekNumber?: boolean;
455
-
456
- /**
457
- * when set to `true`, allows the height of the work-cells to adjust automatically
458
- * based on the number of appointments present in those time ranges.
459
- *
460
- * @default false
461
- */
462
- rowAutoHeight?: boolean;
463
-
464
- /**
465
- * This property helps to drag the multiple selected events. By default, it is set to `false`.
466
- *
467
- * @default false
468
- */
469
- allowMultiDrag?: boolean;
470
-
471
- /**
472
- * This property helps render the year view customized months. By default, it is set to `0`.
473
- *
474
- * {% codeBlock src='schedule/firstMonthOfYear/index.md' %}{% endcodeBlock %}
475
- *
476
- * @default 0
477
- */
478
- firstMonthOfYear?: number;
479
-
480
- /**
481
- * The template option to render the customized editor window. The form elements defined within this template should be accompanied
482
- * with `e-field` class, so as to fetch and process it from internally.
483
- *
484
- * {% codeBlock src='schedule/editorTemplate/index.md' %}{% endcodeBlock %}
485
- *
486
- * @default null
487
- * @angularType string | object
488
- * @reactType string | function | JSX.Element
489
- * @vueType string | function
490
- * @aspType string
491
- */
492
- editorTemplate?: string | Function;
493
-
494
- /**
495
- * The template option to render the customized header of the editor window.
496
- *
497
- *
498
- * @default null
499
- * @angularType string | object
500
- * @reactType string | function | JSX.Element
501
- * @vueType string | function
502
- * @aspType string
503
- */
504
- editorHeaderTemplate?: string | Function;
505
-
506
- /**
507
- * The template option to render the customized footer of the editor window.
508
- *
509
- *
510
- * @default null
511
- * @angularType string | object
512
- * @reactType string | function | JSX.Element
513
- * @vueType string | function
514
- * @aspType string
515
- */
516
- editorFooterTemplate?: string | Function;
517
-
518
- /**
519
- * The template option to customize the quick window. The three sections of the quick popup whereas the header, content,
520
- * and footer can be easily customized with individual template option.
521
- *
522
- * {% codeBlock src='schedule/quickInfoTemplates/index.md' %}{% endcodeBlock %}
523
- *
524
- * @default null
525
- */
526
- quickInfoTemplates?: QuickInfoTemplatesModel;
527
-
528
- /**
529
- * Sets the number of days to be displayed by default in Agenda View and in case of virtual scrolling,
530
- * the number of days will be fetched on each scroll-end based on this count.
531
- *
532
- * {% codeBlock src='schedule/agendaDaysCount/index.md' %}{% endcodeBlock %}
533
- *
534
- * @default 7
535
- */
536
- agendaDaysCount?: number;
537
-
538
- /**
539
- * The days which does not has even a single event to display will be hidden from the UI of Agenda View by default.
540
- * When this property is set to `false`, the empty dates will also be displayed on the Schedule.
541
- *
542
- * @default true
543
- */
544
- hideEmptyAgendaDays?: boolean;
545
-
546
- /**
547
- * The recurrence validation will be done by default. When this property is set to `false`, the recurrence validation will be skipped.
548
- *
549
- * @default true
550
- */
551
- enableRecurrenceValidation?: boolean;
552
-
553
- /**
554
- * Schedule will be assigned with specific timezone, so as to display the events in it accordingly. By default,
555
- * Schedule dates are processed with System timezone, as no timezone will be assigned specifically to the Schedule at the initial time.
556
- * Whenever the Schedule is bound to remote data services, it is always recommended to set specific timezone to Schedule to make the
557
- * events on it to display on the same time irrespective of the system timezone. It usually accepts
558
- * the valid [IANA](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) timezone names.
559
- *
560
- * {% codeBlock src='schedule/timezone/index.md' %}{% endcodeBlock %}
561
- *
562
- * @default null
563
- */
564
- timezone?: string;
565
-
566
- /**
567
- * Complete set of settings related to Schedule events to bind it to local or remote dataSource, map applicable database fields and
568
- * other validation to be carried out on the available fields.
569
- *
570
- * {% codeBlock src='schedule/eventSettings/index.md' %}{% endcodeBlock %}
571
- *
572
- * @default null
573
- */
574
- eventSettings?: EventSettingsModel;
575
-
576
- /**
577
- * 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.
578
- *
579
- * {% codeBlock src='schedule/timezoneDatasource/index.md' %}{% endcodeBlock %}
580
- *
581
- * @default timezoneData
582
- */
583
- timezoneDataSource?: TimezoneFields[];
584
-
585
- /**
586
- * Template option to customize the resource header bar. Here, the template accepts either
587
- * the string or HTMLElement as template design and then the parsed design is displayed onto the resource header cells.
588
- * The following can be accessible via template.
589
- * * `resource` - All the resource fields.
590
- * * `resourceData` - Object collection of current resource.
591
- *
592
- * Refer to the below code snippet.
593
- *
594
- * {% codeBlock src='schedule/resourceHeaderTemplate/index.md' %}{% endcodeBlock %}
595
- *
596
- * @default null
597
- * @angularType string | object
598
- * @reactType string | function | JSX.Element
599
- * @vueType string | function
600
- * @aspType string
601
- */
602
- resourceHeaderTemplate?: string | Function;
603
-
604
- /**
605
- * Template option to customize the header indent bar. Here, the template accepts either
606
- * the string or HTMLElement as template design and then the parsed design is displayed onto the header indent cell.
607
- *
608
- * Refer to the below code snippet.
609
- *
610
- * {% codeBlock src='schedule/headerIndentTemplate/index.md' %}{% endcodeBlock %}
611
- *
612
- * @default null
613
- * @angularType string | object
614
- * @reactType string | function | JSX.Element
615
- * @vueType string | function
616
- * @aspType string
617
- */
618
- headerIndentTemplate?: string | Function;
619
-
620
- /**
621
- * Allows defining the group related settings of multiple resources. When this property is non-empty, it means
622
- * that the resources will be grouped on the schedule layout based on the provided resource names.
623
- *
624
- * {% codeBlock src='schedule/group/index.md' %}{% endcodeBlock %}
625
- *
626
- * @default {}
627
- */
628
- group?: GroupModel;
629
-
630
- /**
631
- * Allows defining the collection of resources to be displayed on the Schedule. The resource collection needs to be defined
632
- * with unique resource names to identify it along with the respective dataSource and field mapping options.
633
- *
634
- * {% codeBlock src='schedule/resources/index.md' %}{% endcodeBlock %}
635
- *
636
- * @default []
637
- */
638
- resources?: ResourcesModel[];
639
-
640
- /**
641
- * Allows defining the collection of custom header rows to display the year, month, week, date and hour label as an individual row
642
- * on the timeline view of the scheduler.
643
- *
644
- * {% codeBlock src='schedule/headerRows/index.md' %}{% endcodeBlock %}
645
- *
646
- * @default []
647
- */
648
- headerRows?: HeaderRowsModel[];
649
-
650
- /**
651
- * It is used to customize the Schedule which accepts custom CSS class names that defines specific user-defined styles and themes
652
- * to be applied on the Schedule element.
653
- *
654
- * {% codeBlock src='schedule/cssClass/index.md' %}{% endcodeBlock %}
655
- *
656
- * @default null
657
- */
658
- cssClass?: string;
659
-
660
- /**
661
- * It enables the external drag and drop support for appointments on scheduler, to be able to move them out of the scheduler layout.
662
- * When the drag area is explicitly set with specific DOM element name, the appointments can be dragged anywhere within the specified drag area location.
663
- *
664
- * {% codeBlock src='schedule/eventDragArea/index.md' %}{% endcodeBlock %}
665
- *
666
- * @default null
667
- */
668
- eventDragArea?: string;
669
-
670
- /**
671
- * Triggers after the scheduler component is created.
672
- *
673
- * @event 'created'
674
- */
675
- created?: EmitType<Record<string, any>>;
676
-
677
- /**
678
- * Triggers when the scheduler component is destroyed.
679
- *
680
- * @event 'destroyed'
681
- */
682
- destroyed?: EmitType<Record<string, any>>;
683
-
684
- /**
685
- * Triggers when the scheduler cells are single clicked or on single tap on the same cells in mobile devices.
686
- *
687
- * @event 'cellClick'
688
- */
689
- cellClick?: EmitType<CellClickEventArgs>;
690
-
691
- /**
692
- * Triggers when the scheduler cells are double clicked.
693
- *
694
- * @event 'cellDoubleClick'
695
- */
696
- cellDoubleClick?: EmitType<CellClickEventArgs>;
10
+ * Sets the `width` of the Schedule component, accepting both string and number values.
11
+ *
12
+ * {% codeBlock src='schedule/width/index.md' %}{% endcodeBlock %}
13
+ *
14
+ * The string value can be either pixel or percentage format.
15
+ * When set to `auto`, the Schedule width gets auto-adjusted and display its content related to the viewable screen size.
16
+ *
17
+ * @default 'auto'
18
+ */
19
+ width?: string | number;
20
+
21
+ /**
22
+ * Sets the `height` of the Schedule component, accepting both string and number values.
23
+ *
24
+ * {% codeBlock src='schedule/height/index.md' %}{% endcodeBlock %}
25
+ *
26
+ * The string type includes either pixel or percentage values.
27
+ * When `height` is set with specific pixel value, then the Schedule will be rendered to that specified space.
28
+ * In case, if `auto` value is set, then the height of the Schedule gets auto-adjusted within the given container.
29
+ *
30
+ * @default 'auto'
31
+ */
32
+ height?: string | number;
33
+
34
+ /**
35
+ * When set to `false`, hides the header bar of the Schedule from UI. By default,
36
+ * the header bar holds the date and view navigation options, to which the user can add their own custom items onto it.
37
+ *
38
+ * @default true
39
+ */
40
+ showHeaderBar?: boolean;
41
+
42
+ /**
43
+ * When set to `false`, hides the current time indicator from the Schedule. Otherwise,
44
+ * it visually depicts the live current system time appropriately on the user interface.
45
+ *
46
+ * @default true
47
+ */
48
+ showTimeIndicator?: boolean;
49
+
50
+ /**
51
+ * Defines whether to enable date navigations via swipe in touch devices or not.
52
+ *
53
+ * @default true
54
+ */
55
+ allowSwiping?: boolean;
56
+
57
+ /**
58
+ * To render the custom toolbar items, the `toolbarItems` property can be used. It contains built-in and custom toolbar items.
59
+ * To avail the built-in toolbar items, the below string values are assigned to the `name` property of the `ToolbarItemModel`.
60
+ * * `Previous`: Schedule component navigates to the previous date from the current date.
61
+ * * `Next`: Schedule component navigates to the next date from the current date.
62
+ * * `Today`: Schedule component navigates to the current date from any date.
63
+ * * `Views`: Schedule component render the defined view options in the toolbar. If view option is not defined, then it will render default view options in the Schedule.
64
+ * * `DateRangeText`: Schedule component displays the current date text range.
65
+ * * `NewEvent`: Schedule component render the icon to add a new event.
66
+ *
67
+ * @default []
68
+ */
69
+ toolbarItems?: ToolbarItemModel[]
70
+
71
+ /**
72
+ * To set the active view on scheduler, the `currentView` property can be used and it usually accepts either of the following available
73
+ * view options. The view option specified in this property will be initially loaded on the schedule.
74
+ * * `Day`: Denotes Day view of the scheduler.
75
+ * * `Week`: Denotes Week view of the scheduler.
76
+ * * `WorkWeek`: Denotes Work Week view of the scheduler.
77
+ * * `Month`: Denotes Month view of the scheduler.
78
+ * * `Year`: Denotes Year view of the scheduler.
79
+ * * `Agenda`: Denotes Agenda view of the scheduler.
80
+ * * `MonthAgenda`: Denotes Month Agenda view of the scheduler.
81
+ * * `TimelineDay`: Denotes Timeline Day view of the scheduler.
82
+ * * `TimelineWeek`: Denotes Timeline Week view of the scheduler.
83
+ * * `TimelineWorkWeek`: Denotes Timeline Work Week view of the scheduler.
84
+ * * `TimelineMonth`: Denotes Timeline Month view of the scheduler.
85
+ * * `TimelineYear`: Denotes Timeline Year view of the scheduler.
86
+ *
87
+ * {% codeBlock src='schedule/currentView/index.md' %}{% endcodeBlock %}
88
+ *
89
+ * @default 'Week'
90
+ */
91
+ currentView?: View;
92
+
93
+ /**
94
+ * This property holds the views collection and its configurations. It accepts either the array of view names or the array of view
95
+ * objects that holds different configurations for each views. By default,
96
+ * Schedule displays all the views namely `Day`, `Week`, `Work Week`, `Month` and `Agenda`.
97
+ *
98
+ * Example for array of views:
99
+ * {% codeBlock src="schedule/views/index.md" %}{% endcodeBlock %}
100
+ *
101
+ * Example for array of view objects:
102
+ * {% codeBlock src='schedule/viewOption/index.md' %}{% endcodeBlock %}
103
+ *
104
+ * @default '["Day", "Week", "WorkWeek", "Month", "Agenda"]'
105
+ */
106
+ views?: View[] | ViewsModel[];
107
+
108
+ /**
109
+ * To mark the active (current) date on the Schedule, `selectedDate` property can be defined.
110
+ * Usually, it defaults to the current System date.
111
+ *
112
+ * {% codeBlock src='schedule/selectedDate/index.md' %}{% endcodeBlock %}
113
+ *
114
+ * @default 'new Date()'
115
+ * @aspDefaultValue DateTime.Now
116
+ */
117
+ selectedDate?: Date;
118
+
119
+ /**
120
+ * To define the minimum date on the Schedule, `minDate` property can be defined.
121
+ * Usually, it defaults to the new Date(1900, 0, 1).
122
+ *
123
+ * {% codeBlock src='schedule/minDate/index.md' %}{% endcodeBlock %}
124
+ *
125
+ * @default new Date(1900, 0, 1)
126
+ * @aspDefaultValue new DateTime(1900, 1, 1)
127
+ */
128
+ minDate?: Date;
129
+
130
+ /**
131
+ * To define the maximum date on the Schedule, `maxDate` property can be defined.
132
+ * Usually, it defaults to the new Date(2099, 11, 31).
133
+ *
134
+ * {% codeBlock src='schedule/maxDate/index.md' %}{% endcodeBlock %}
135
+ *
136
+ * @default new Date(2099, 11, 31)
137
+ * @aspDefaultValue new DateTime(2099, 12, 31)
138
+ */
139
+ maxDate?: Date;
140
+
141
+ /**
142
+ * By default, Schedule follows the date-format as per the default culture assigned to it.
143
+ * It is also possible to manually set specific date format by using the `dateFormat` property.
144
+ *
145
+ * {% codeBlock src='schedule/dateFormat/index.md' %}{% endcodeBlock %}
146
+ *
147
+ * The format of the date range label in the header bar depends on the `dateFormat` value or else based on the
148
+ * locale assigned to the Schedule.
149
+ *
150
+ * @default null
151
+ */
152
+ dateFormat?: string;
153
+
154
+ /**
155
+ * It allows the Scheduler to display in other calendar modes.
156
+ * By default, Scheduler is displayed in `Gregorian` calendar mode.
157
+ *
158
+ * {% codeBlock src='schedule/calendarMode/index.md' %}{% endcodeBlock %}
159
+ *
160
+ * To change the mode, you can set either `Gregorian` or `Islamic` as a value to this `calendarMode` property.
161
+ *
162
+ * @default 'Gregorian'
163
+ */
164
+ calendarMode?: CalendarType;
165
+
166
+ /**
167
+ * When set to `false`, it hides the weekend days of a week from the Schedule. The days which are not defined in the working days
168
+ * collection are usually treated as weekend days.
169
+ *
170
+ * Note: By default, this option is not applicable on `Work Week` view.
171
+ * For example, if the working days are defined as [1, 2, 3, 4], then the remaining days of that week will be considered as
172
+ * the weekend days and will be hidden on all the views.
173
+ *
174
+ * @default true
175
+ */
176
+ showWeekend?: boolean;
177
+
178
+ /**
179
+ * This option allows the user to set the first day of a week on Schedule. It should be based on the locale set to it and each culture
180
+ * defines its own first day of week values. If needed, the user can set it manually on his own by defining the value through
181
+ * this property. It usually accepts the integer values, whereby 0 is always denoted as Sunday, 1 as Monday and so on.
182
+ *
183
+ * {% codeBlock src='schedule/firstDayOfWeek/index.md' %}{% endcodeBlock %}
184
+ *
185
+ * @default 0
186
+ */
187
+ firstDayOfWeek?: number;
188
+
189
+ /**
190
+ * It allows the Scheduler to display week numbers based on following available week options. The week
191
+ * option specified in this property will be initially loaded on the schedule.
192
+ * * `FirstDay`: Denotes that the first week of the year starts on the first day of the year and ends before the following designated first day of the week.
193
+ * * `FirstFourDayWeek`:Denotes that the first week of the year is the first week with four or more days before the designated first day of the week.
194
+ * * `FirstFullWeek`: Denotes that the first week of the year begins on the first occurrence of the designated first day of the week on or after the first day of the year.
195
+ *
196
+ * {% codeBlock src='schedule/weekRule/index.md' %}{% endcodeBlock %}
197
+ *
198
+ * @default 'FirstDay'
199
+ */
200
+ weekRule?: WeekRule;
201
+
202
+ /**
203
+ * It is used to set the working days on Schedule. The only days that are defined in this collection will be rendered on the `workWeek`
204
+ * view whereas on other views, it will display all the usual days and simply highlights the working days with different shade.
205
+ *
206
+ * {% codeBlock src='schedule/workDays/index.md' %}{% endcodeBlock %}
207
+ *
208
+ * @default '[1, 2, 3, 4, 5]'
209
+ * @aspType int[]
210
+ */
211
+ workDays?: number[];
212
+
213
+ /**
214
+ * This option allows the user to set the number of months count to be displayed on the Schedule.
215
+ *
216
+ * {% codeBlock src='schedule/monthsCount/index.md' %}{% endcodeBlock %}
217
+ *
218
+ * @default 12
219
+ * @aspType int
220
+ */
221
+ monthsCount?: number;
222
+
223
+ /**
224
+ * It is used to specify the starting hour, from which the Schedule starts to display. It accepts the time string in a short skeleton
225
+ * format and also, hides the time beyond the specified start time.
226
+ *
227
+ * {% codeBlock src='schedule/startHour/index.md' %}{% endcodeBlock %}
228
+ *
229
+ * @default '00:00'
230
+ */
231
+ startHour?: string;
232
+
233
+ /**
234
+ * It is used to specify the end hour, at which the Schedule ends. It too accepts the time string in a short skeleton format.
235
+ *
236
+ * {% codeBlock src='schedule/endHour/index.md' %}{% endcodeBlock %}
237
+ *
238
+ * @default '24:00'
239
+ */
240
+ endHour?: string;
241
+
242
+ /**
243
+ * By default, Schedule follows the time-format as per the default culture assigned to it.
244
+ * It is also possible to manually set specific time format by using the `timeFormat` property.
245
+ *
246
+ * {% codeBlock src='schedule/timeFormat/index.md' %}{% endcodeBlock %}
247
+ *
248
+ * @default null
249
+ */
250
+ timeFormat?: string;
251
+
252
+ /**
253
+ * Specifies whether to enable the rendering of untrusted HTML values in the Schedule component.
254
+ * When this property is enabled, the component will sanitize any suspected untrusted strings and scripts before rendering them.
255
+ *
256
+ * @default true
257
+ */
258
+ enableHtmlSanitizer?: boolean;
259
+
260
+ /**
261
+ * When set to `true`, If valid, the scroll on the all day row is activated when the all day row
262
+ * height reaches the max height when the all day row is expanded.
263
+ *
264
+ * @default false
265
+ */
266
+ enableAllDayScroll?: boolean;
267
+
268
+ /**
269
+ * When set to `true`, the header view navigations are listed under the popup and if we enable resource grouping, the compact view will be enabled.
270
+ *
271
+ * @default false
272
+ */
273
+ enableAdaptiveUI?: boolean;
274
+
275
+ /**
276
+ * When set to `true`, allows the resizing of appointments. It allows the rescheduling of appointments either by changing the
277
+ * start or end time by dragging the event resize handlers.
278
+ *
279
+ * @default true
280
+ */
281
+ allowResizing?: boolean;
282
+
283
+ /**
284
+ * The working hours should be highlighted on Schedule with different color shade and an additional option must be provided to
285
+ * highlight it or not. This functionality is handled through `workHours` property and the start work hour should be 9 AM by default
286
+ * and end work hour should point to 6 PM. The start and end working hours needs to be provided as Time value of short skeleton type.
287
+ *
288
+ * {% codeBlock src='schedule/workHours/index.md' %}{% endcodeBlock %}
289
+ *
290
+ * @default { highlight: true, start: '09:00', end: '18:00' }
291
+ */
292
+ workHours?: WorkHoursModel;
293
+
294
+ /**
295
+ * Allows to set different time duration on Schedule along with the customized grid count. It also has template option to
296
+ * customize the time slots with required time values in its own format.
297
+ *
298
+ * {% codeBlock src='schedule/timeScale/index.md' %}{% endcodeBlock %}
299
+ *
300
+ * @default { enable: true, interval: 60, slotCount: 2, majorSlotTemplate: null, minorSlotTemplate: null }
301
+ */
302
+ timeScale?: TimeScaleModel;
303
+
304
+ /**
305
+ * When set to `true`, allows the keyboard interaction to take place on Schedule.
306
+ *
307
+ * @default true
308
+ */
309
+ allowKeyboardInteraction?: boolean;
310
+
311
+ /**
312
+ * When set to `true`, allows the appointments to move over the time slots. When an appointment is dragged, both its start
313
+ * and end time tends to change simultaneously allowing it to reschedule the appointment on some other time.
314
+ *
315
+ * @default true
316
+ */
317
+ allowDragAndDrop?: boolean;
318
+
319
+ /**
320
+ * It accepts either the string or HTMLElement as template design content and parse it appropriately before displaying it onto
321
+ * the date header cells. The field that can be accessed via this template is `date`.
322
+ *
323
+ * {% codeBlock src='schedule/dateHeaderTemplate/index.md' %}{% endcodeBlock %}
324
+ *
325
+ * @default null
326
+ * @angularType string | object
327
+ * @reactType string | function | JSX.Element
328
+ * @vueType string | function
329
+ * @aspType string
330
+ */
331
+ dateHeaderTemplate?: string | Function;
332
+
333
+ /**
334
+ * It accepts either the string or HTMLElement as template design content and parse it appropriately before displaying it onto the header date range.
335
+ *
336
+ * @default null
337
+ * @angularType string | object
338
+ * @reactType string | function | JSX.Element
339
+ * @vueType string | function
340
+ * @aspType string
341
+ */
342
+ dateRangeTemplate?: string | Function;
343
+
344
+ /**
345
+ * It accepts either the string or HTMLElement as template design content and parse it appropriately before displaying it onto
346
+ * the month date cells. This template is only applicable for month view day cells.
347
+ *
348
+ * {% codeBlock src='schedule/cellHeaderTemplate/index.md' %}{% endcodeBlock %}
349
+ *
350
+ * @default null
351
+ * @angularType string | object
352
+ * @reactType string | function | JSX.Element
353
+ * @vueType string | function
354
+ * @aspType string
355
+ */
356
+ cellHeaderTemplate?: string | Function;
357
+
358
+ /**
359
+ * It accepts either the string or HTMLElement as template design content and parse it appropriately before displaying it onto
360
+ * the day header cells. This template is only applicable for year view header cells.
361
+ *
362
+ * {% codeBlock src='schedule/dayHeaderTemplate/index.md' %}{% endcodeBlock %}
363
+ *
364
+ * @default null
365
+ * @angularType string | object
366
+ * @reactType string | function | JSX.Element
367
+ * @vueType string | function
368
+ * @aspType string
369
+ */
370
+ dayHeaderTemplate?: string | Function;
371
+
372
+ /**
373
+ * It accepts either the string or HTMLElement as template design content and parse it appropriately before displaying it onto
374
+ * the month header cells. This template is only applicable for year view header cells.
375
+ *
376
+ * {% codeBlock src='schedule/monthHeaderTemplate/index.md' %}{% endcodeBlock %}
377
+ *
378
+ * @default null
379
+ * @angularType string | object
380
+ * @reactType string | function | JSX.Element
381
+ * @vueType string | function
382
+ * @aspType string
383
+ */
384
+ monthHeaderTemplate?: string | Function;
385
+
386
+ /**
387
+ * The template option which is used to render the customized work cells on the Schedule. Here, the template accepts either
388
+ * the string or HTMLElement as template design and then the parsed design is displayed onto the work cells.
389
+ * The fields accessible via template are as follows.
390
+ * * `date`: Returns the date of the cell.
391
+ * * `groupIndex`: Returns the group index of the cell.
392
+ * * `type`: Returns the type of the work cell.
393
+ *
394
+ * Refer to the below code snippet.
395
+ *
396
+ * {% codeBlock src='schedule/cellTemplate/index.md' %}{% endcodeBlock %}
397
+ *
398
+ * @default null
399
+ * @angularType string | object
400
+ * @reactType string | function | JSX.Element
401
+ * @vueType string | function
402
+ * @aspType string
403
+ */
404
+ cellTemplate?: string | Function;
405
+
406
+ /**
407
+ * When set to `true`, makes the Schedule to render in a read only mode. No CRUD actions will be allowed at this time.
408
+ *
409
+ * @default false
410
+ */
411
+ readonly?: boolean;
412
+
413
+ /**
414
+ * When set to `true`, displays a quick popup with cell or event details on single clicking over the cells or on events.
415
+ * By default, it is set to `true`.
416
+ *
417
+ * @default true
418
+ */
419
+ showQuickInfo?: boolean;
420
+
421
+ /**
422
+ * This property helps user to add/edit the event in inline. By default, it is set to `false`.
423
+ *
424
+ * @default false
425
+ */
426
+ allowInline?: boolean;
427
+
428
+ /**
429
+ * This property helps user to allow/prevent the selection of multiple cells. By default, it is set to `true`.
430
+ *
431
+ * @default true
432
+ */
433
+ allowMultiCellSelection?: boolean;
434
+
435
+ /**
436
+ * This property helps user to allow/prevent the selection of multiple days(rows). By default, it is set to `true`.
437
+ *
438
+ * @default true
439
+ */
440
+ allowMultiRowSelection?: boolean;
441
+
442
+ /**
443
+ * This property helps to show quick popup after multiple cell selection. By default, it is set to `false`.
444
+ *
445
+ * @default false
446
+ */
447
+ quickInfoOnSelectionEnd?: boolean;
448
+
449
+ /**
450
+ * When set to `true`, displays the week number of the current view date range. By default, it is set to `false`.
451
+ *
452
+ * @default false
453
+ */
454
+ showWeekNumber?: boolean;
455
+
456
+ /**
457
+ * when set to `true`, allows the height of the work-cells to adjust automatically
458
+ * based on the number of appointments present in those time ranges.
459
+ *
460
+ * @default false
461
+ */
462
+ rowAutoHeight?: boolean;
463
+
464
+ /**
465
+ * This property helps to drag the multiple selected events. By default, it is set to `false`.
466
+ *
467
+ * @default false
468
+ */
469
+ allowMultiDrag?: boolean;
470
+
471
+ /**
472
+ * This property helps render the year view customized months. By default, it is set to `0`.
473
+ *
474
+ * {% codeBlock src='schedule/firstMonthOfYear/index.md' %}{% endcodeBlock %}
475
+ *
476
+ * @default 0
477
+ */
478
+ firstMonthOfYear?: number;
479
+
480
+ /**
481
+ * The template option to render the customized editor window. The form elements defined within this template should be accompanied
482
+ * with `e-field` class, so as to fetch and process it from internally.
483
+ *
484
+ * {% codeBlock src='schedule/editorTemplate/index.md' %}{% endcodeBlock %}
485
+ *
486
+ * @default null
487
+ * @angularType string | object
488
+ * @reactType string | function | JSX.Element
489
+ * @vueType string | function
490
+ * @aspType string
491
+ */
492
+ editorTemplate?: string | Function;
493
+
494
+ /**
495
+ * The template option to render the customized header of the editor window.
496
+ *
497
+ *
498
+ * @default null
499
+ * @angularType string | object
500
+ * @reactType string | function | JSX.Element
501
+ * @vueType string | function
502
+ * @aspType string
503
+ */
504
+ editorHeaderTemplate?: string | Function;
505
+
506
+ /**
507
+ * The template option to render the customized footer of the editor window.
508
+ *
509
+ *
510
+ * @default null
511
+ * @angularType string | object
512
+ * @reactType string | function | JSX.Element
513
+ * @vueType string | function
514
+ * @aspType string
515
+ */
516
+ editorFooterTemplate?: string | Function;
517
+
518
+ /**
519
+ * The template option to customize the quick window. The three sections of the quick popup whereas the header, content,
520
+ * and footer can be easily customized with individual template option.
521
+ *
522
+ * {% codeBlock src='schedule/quickInfoTemplates/index.md' %}{% endcodeBlock %}
523
+ *
524
+ * @default null
525
+ */
526
+ quickInfoTemplates?: QuickInfoTemplatesModel;
527
+
528
+ /**
529
+ * Sets the number of days to be displayed by default in Agenda View and in case of virtual scrolling,
530
+ * the number of days will be fetched on each scroll-end based on this count.
531
+ *
532
+ * {% codeBlock src='schedule/agendaDaysCount/index.md' %}{% endcodeBlock %}
533
+ *
534
+ * @default 7
535
+ */
536
+ agendaDaysCount?: number;
537
+
538
+ /**
539
+ * The days which does not has even a single event to display will be hidden from the UI of Agenda View by default.
540
+ * When this property is set to `false`, the empty dates will also be displayed on the Schedule.
541
+ *
542
+ * @default true
543
+ */
544
+ hideEmptyAgendaDays?: boolean;
545
+
546
+ /**
547
+ * The recurrence validation will be done by default. When this property is set to `false`, the recurrence validation will be skipped.
548
+ *
549
+ * @default true
550
+ */
551
+ enableRecurrenceValidation?: boolean;
552
+
553
+ /**
554
+ * Schedule will be assigned with specific timezone, so as to display the events in it accordingly. By default,
555
+ * Schedule dates are processed with System timezone, as no timezone will be assigned specifically to the Schedule at the initial time.
556
+ * Whenever the Schedule is bound to remote data services, it is always recommended to set specific timezone to Schedule to make the
557
+ * events on it to display on the same time irrespective of the system timezone. It usually accepts
558
+ * the valid [IANA](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) timezone names.
559
+ *
560
+ * {% codeBlock src='schedule/timezone/index.md' %}{% endcodeBlock %}
561
+ *
562
+ * @default null
563
+ */
564
+ timezone?: string;
565
+
566
+ /**
567
+ * Complete set of settings related to Schedule events to bind it to local or remote dataSource, map applicable database fields and
568
+ * other validation to be carried out on the available fields.
569
+ *
570
+ * {% codeBlock src='schedule/eventSettings/index.md' %}{% endcodeBlock %}
571
+ *
572
+ * @default null
573
+ */
574
+ eventSettings?: EventSettingsModel;
575
+
576
+ /**
577
+ * 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.
578
+ *
579
+ * {% codeBlock src='schedule/timezoneDatasource/index.md' %}{% endcodeBlock %}
580
+ *
581
+ * @default timezoneData
582
+ */
583
+ timezoneDataSource?: TimezoneFields[];
584
+
585
+ /**
586
+ * Template option to customize the resource header bar. Here, the template accepts either
587
+ * the string or HTMLElement as template design and then the parsed design is displayed onto the resource header cells.
588
+ * The following can be accessible via template.
589
+ * * `resource` - All the resource fields.
590
+ * * `resourceData` - Object collection of current resource.
591
+ *
592
+ * Refer to the below code snippet.
593
+ *
594
+ * {% codeBlock src='schedule/resourceHeaderTemplate/index.md' %}{% endcodeBlock %}
595
+ *
596
+ * @default null
597
+ * @angularType string | object
598
+ * @reactType string | function | JSX.Element
599
+ * @vueType string | function
600
+ * @aspType string
601
+ */
602
+ resourceHeaderTemplate?: string | Function;
603
+
604
+ /**
605
+ * Template option to customize the header indent bar. Here, the template accepts either
606
+ * the string or HTMLElement as template design and then the parsed design is displayed onto the header indent cell.
607
+ *
608
+ * Refer to the below code snippet.
609
+ *
610
+ * {% codeBlock src='schedule/headerIndentTemplate/index.md' %}{% endcodeBlock %}
611
+ *
612
+ * @default null
613
+ * @angularType string | object
614
+ * @reactType string | function | JSX.Element
615
+ * @vueType string | function
616
+ * @aspType string
617
+ */
618
+ headerIndentTemplate?: string | Function;
619
+
620
+ /**
621
+ * Allows defining the group related settings of multiple resources. When this property is non-empty, it means
622
+ * that the resources will be grouped on the schedule layout based on the provided resource names.
623
+ *
624
+ * {% codeBlock src='schedule/group/index.md' %}{% endcodeBlock %}
625
+ *
626
+ * @default {}
627
+ */
628
+ group?: GroupModel;
629
+
630
+ /**
631
+ * Allows defining the collection of resources to be displayed on the Schedule. The resource collection needs to be defined
632
+ * with unique resource names to identify it along with the respective dataSource and field mapping options.
633
+ *
634
+ * {% codeBlock src='schedule/resources/index.md' %}{% endcodeBlock %}
635
+ *
636
+ * @default []
637
+ */
638
+ resources?: ResourcesModel[];
639
+
640
+ /**
641
+ * Allows defining the collection of custom header rows to display the year, month, week, date and hour label as an individual row
642
+ * on the timeline view of the scheduler.
643
+ *
644
+ * {% codeBlock src='schedule/headerRows/index.md' %}{% endcodeBlock %}
645
+ *
646
+ * @default []
647
+ */
648
+ headerRows?: HeaderRowsModel[];
649
+
650
+ /**
651
+ * It is used to customize the Schedule which accepts custom CSS class names that defines specific user-defined styles and themes
652
+ * to be applied on the Schedule element.
653
+ *
654
+ * {% codeBlock src='schedule/cssClass/index.md' %}{% endcodeBlock %}
655
+ *
656
+ * @default null
657
+ */
658
+ cssClass?: string;
659
+
660
+ /**
661
+ * It enables the external drag and drop support for appointments on scheduler, to be able to move them out of the scheduler layout.
662
+ * When the drag area is explicitly set with specific DOM element name, the appointments can be dragged anywhere within the specified drag area location.
663
+ *
664
+ * {% codeBlock src='schedule/eventDragArea/index.md' %}{% endcodeBlock %}
665
+ *
666
+ * @default null
667
+ */
668
+ eventDragArea?: string;
669
+
670
+ /**
671
+ * Triggers after the scheduler component is created.
672
+ *
673
+ * @event 'created'
674
+ */
675
+ created?: EmitType<Record<string, any>>;
676
+
677
+ /**
678
+ * Triggers when the scheduler component is destroyed.
679
+ *
680
+ * @event 'destroyed'
681
+ */
682
+ destroyed?: EmitType<Record<string, any>>;
683
+
684
+ /**
685
+ * Triggers when the scheduler cells are single clicked or on single tap on the same cells in mobile devices.
686
+ *
687
+ * @event 'cellClick'
688
+ */
689
+ cellClick?: EmitType<CellClickEventArgs>;
690
+
691
+ /**
692
+ * Triggers when the scheduler cells are double clicked.
693
+ *
694
+ * @event 'cellDoubleClick'
695
+ */
696
+ cellDoubleClick?: EmitType<CellClickEventArgs>;
697
697
 
698
698
  /**
699
- * Triggers when the more events indicator are clicked.
700
- *
701
- * @event 'moreEventsClick'
702
- */
703
- moreEventsClick?: EmitType<MoreEventsClickArgs>;
699
+ * Triggers when the more events indicator are clicked.
700
+ *
701
+ * @event 'moreEventsClick'
702
+ */
703
+ moreEventsClick?: EmitType<MoreEventsClickArgs>;
704
704
 
705
705
  /**
706
- * Triggers when the scheduler elements are hovered.
707
- *
708
- * @event 'hover'
709
- */
710
- hover?: EmitType<HoverEventArgs>;
706
+ * Triggers when the scheduler elements are hovered.
707
+ *
708
+ * @event 'hover'
709
+ */
710
+ hover?: EmitType<HoverEventArgs>;
711
711
 
712
712
  /**
713
- * Triggers when multiple cells or events are selected on the Scheduler.
714
- *
715
- * @event 'select'
716
- */
717
- select?: EmitType<SelectEventArgs>;
713
+ * Triggers when multiple cells or events are selected on the Scheduler.
714
+ *
715
+ * @event 'select'
716
+ */
717
+ select?: EmitType<SelectEventArgs>;
718
718
 
719
719
  /**
720
- * Triggers on beginning of every scheduler action.
721
- *
722
- * @event 'actionBegin'
723
- */
724
- actionBegin?: EmitType<ActionEventArgs>;
720
+ * Triggers on beginning of every scheduler action.
721
+ *
722
+ * @event 'actionBegin'
723
+ */
724
+ actionBegin?: EmitType<ActionEventArgs>;
725
725
 
726
726
  /**
727
- * Triggers on successful completion of the scheduler actions.
728
- *
729
- * @event 'actionComplete'
730
- */
731
- actionComplete?: EmitType<ActionEventArgs>;
727
+ * Triggers on successful completion of the scheduler actions.
728
+ *
729
+ * @event 'actionComplete'
730
+ */
731
+ actionComplete?: EmitType<ActionEventArgs>;
732
732
 
733
733
  /**
734
- * Triggers when a scheduler action gets failed or interrupted and an error information will be returned.
735
- *
736
- * @event 'actionFailure'
737
- */
738
- actionFailure?: EmitType<ActionEventArgs>;
734
+ * Triggers when a scheduler action gets failed or interrupted and an error information will be returned.
735
+ *
736
+ * @event 'actionFailure'
737
+ */
738
+ actionFailure?: EmitType<ActionEventArgs>;
739
739
 
740
740
  /**
741
- * Triggers before the date or view navigation takes place on scheduler.
742
- *
743
- * @event 'navigating'
744
- */
745
- navigating?: EmitType<NavigatingEventArgs>;
741
+ * Triggers before the date or view navigation takes place on scheduler.
742
+ *
743
+ * @event 'navigating'
744
+ */
745
+ navigating?: EmitType<NavigatingEventArgs>;
746
746
 
747
747
  /**
748
- * Triggers before each element of the schedule rendering on the page.
749
- *
750
- * @event 'renderCell'
751
- */
752
- renderCell?: EmitType<RenderCellEventArgs>;
748
+ * Triggers before each element of the schedule rendering on the page.
749
+ *
750
+ * @event 'renderCell'
751
+ */
752
+ renderCell?: EmitType<RenderCellEventArgs>;
753
753
 
754
754
  /**
755
- * Triggers when the events are single clicked or on single tapping the events on the mobile devices.
756
- *
757
- * @event 'eventClick'
758
- */
759
- eventClick?: EmitType<EventClickArgs>;
755
+ * Triggers when the events are single clicked or on single tapping the events on the mobile devices.
756
+ *
757
+ * @event 'eventClick'
758
+ */
759
+ eventClick?: EmitType<EventClickArgs>;
760
760
 
761
761
  /**
762
- * Triggers when the events are double clicked or on double tapping the events on the desktop devices.
763
- *
764
- * @event 'eventDoubleClick'
765
- */
766
- eventDoubleClick?: EmitType<EventClickArgs>;
762
+ * Triggers when the events are double clicked or on double tapping the events on the desktop devices.
763
+ *
764
+ * @event 'eventDoubleClick'
765
+ */
766
+ eventDoubleClick?: EmitType<EventClickArgs>;
767
767
 
768
768
  /**
769
- * Triggers before each of the event getting rendered on the scheduler user interface.
770
- *
771
- * @event 'eventRendered'
772
- */
773
- eventRendered?: EmitType<EventRenderedArgs>;
769
+ * Triggers before each of the event getting rendered on the scheduler user interface.
770
+ *
771
+ * @event 'eventRendered'
772
+ */
773
+ eventRendered?: EmitType<EventRenderedArgs>;
774
774
 
775
775
  /**
776
- * Triggers before the data binds to the scheduler.
777
- *
778
- * @event 'dataBinding'
779
- */
780
- dataBinding?: EmitType<ReturnType>;
776
+ * Triggers before the data binds to the scheduler.
777
+ *
778
+ * @event 'dataBinding'
779
+ */
780
+ dataBinding?: EmitType<ReturnType>;
781
781
 
782
782
  /**
783
- * Triggers before any of the scheduler popups opens on the page.
784
- *
785
- * @event 'popupOpen'
786
- */
787
- popupOpen?: EmitType<PopupOpenEventArgs>;
783
+ * Triggers before any of the scheduler popups opens on the page.
784
+ *
785
+ * @event 'popupOpen'
786
+ */
787
+ popupOpen?: EmitType<PopupOpenEventArgs>;
788
788
 
789
789
  /**
790
- * Triggers before any of the scheduler popups close on the page.
791
- *
792
- * @event 'popupClose'
793
- */
794
- popupClose?: EmitType<PopupCloseEventArgs>;
790
+ * Triggers before any of the scheduler popups close on the page.
791
+ *
792
+ * @event 'popupClose'
793
+ */
794
+ popupClose?: EmitType<PopupCloseEventArgs>;
795
795
 
796
796
  /**
797
- * Triggers when an appointment is started to drag.
798
- *
799
- * @event 'dragStart'
800
- */
801
- dragStart?: EmitType<DragEventArgs>;
797
+ * Triggers when an appointment is started to drag.
798
+ *
799
+ * @event 'dragStart'
800
+ */
801
+ dragStart?: EmitType<DragEventArgs>;
802
802
 
803
803
  /**
804
- * Triggers when an appointment is being in a dragged state.
805
- *
806
- * @event 'drag'
807
- */
808
- drag?: EmitType<DragEventArgs>;
804
+ * Triggers when an appointment is being in a dragged state.
805
+ *
806
+ * @event 'drag'
807
+ */
808
+ drag?: EmitType<DragEventArgs>;
809
809
 
810
810
  /**
811
- * Triggers when the dragging of appointment is stopped.
812
- *
813
- * @event 'dragStop'
814
- */
815
- dragStop?: EmitType<DragEventArgs>;
811
+ * Triggers when the dragging of appointment is stopped.
812
+ *
813
+ * @event 'dragStop'
814
+ */
815
+ dragStop?: EmitType<DragEventArgs>;
816
816
 
817
817
  /**
818
- * Triggers when an appointment is started to resize.
819
- *
820
- * @event 'resizeStart'
821
- */
822
- resizeStart?: EmitType<ResizeEventArgs>;
818
+ * Triggers when an appointment is started to resize.
819
+ *
820
+ * @event 'resizeStart'
821
+ */
822
+ resizeStart?: EmitType<ResizeEventArgs>;
823
823
 
824
824
  /**
825
- * Triggers when an appointment is being in a resizing action.
826
- *
827
- * @event 'resizing'
828
- */
829
- resizing?: EmitType<ResizeEventArgs>;
825
+ * Triggers when an appointment is being in a resizing action.
826
+ *
827
+ * @event 'resizing'
828
+ */
829
+ resizing?: EmitType<ResizeEventArgs>;
830
830
 
831
831
  /**
832
- * Triggers when the resizing of appointment is stopped.
833
- *
834
- * @event 'resizeStop'
835
- */
836
- resizeStop?: EmitType<ResizeEventArgs>;
832
+ * Triggers when the resizing of appointment is stopped.
833
+ *
834
+ * @event 'resizeStop'
835
+ */
836
+ resizeStop?: EmitType<ResizeEventArgs>;
837
837
 
838
838
  /**
839
- * Triggers when the scroll action is started.
840
- * This event triggers only when `allowVirtualScrolling` or `enableLazyLoading` properties are enabled along with resource grouping.
841
- *
842
- * @event 'virtualScrollStart'
843
- */
844
- virtualScrollStart?: EmitType<ScrollEventArgs>;
839
+ * Triggers when the scroll action is started.
840
+ * This event triggers only when `allowVirtualScrolling` or `enableLazyLoading` properties are enabled along with resource grouping.
841
+ *
842
+ * @event 'virtualScrollStart'
843
+ */
844
+ virtualScrollStart?: EmitType<ScrollEventArgs>;
845
845
 
846
846
  /**
847
- * Triggers when the scroll action is stopped.
848
- * This event triggers only when `allowVirtualScrolling` or `enableLazyLoading` properties are enabled along with resource grouping.
849
- *
850
- * @event 'virtualScrollStop'
851
- */
852
- virtualScrollStop?: EmitType<ScrollEventArgs>;
847
+ * Triggers when the scroll action is stopped.
848
+ * This event triggers only when `allowVirtualScrolling` or `enableLazyLoading` properties are enabled along with resource grouping.
849
+ *
850
+ * @event 'virtualScrollStop'
851
+ */
852
+ virtualScrollStop?: EmitType<ScrollEventArgs>;
853
853
 
854
854
  /**
855
- * Triggers once the event data is bound to the scheduler.
856
- *
857
- * @event 'dataBound'
858
- */
859
- dataBound?: EmitType<ReturnType>;
855
+ * Triggers once the event data is bound to the scheduler.
856
+ *
857
+ * @event 'dataBound'
858
+ */
859
+ dataBound?: EmitType<ReturnType>;
860
860
 
861
861
  }