@syncfusion/ej2-schedule 30.2.4 → 31.1.17

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 (308) 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 +132 -43
  5. package/dist/es6/ej2-schedule.es2015.js.map +1 -1
  6. package/dist/es6/ej2-schedule.es5.js +132 -43
  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/dist/ts/common/calendar-util.d.ts +92 -0
  12. package/dist/ts/common/calendar-util.ts +261 -0
  13. package/dist/ts/common/index.d.ts +4 -0
  14. package/dist/ts/common/index.ts +4 -0
  15. package/dist/ts/components.d.ts +5 -0
  16. package/dist/ts/components.ts +5 -0
  17. package/dist/ts/index.d.ts +6 -0
  18. package/dist/ts/index.ts +7 -0
  19. package/dist/ts/recurrence-editor/date-generator.d.ts +76 -0
  20. package/dist/ts/recurrence-editor/date-generator.ts +1699 -0
  21. package/dist/ts/recurrence-editor/index.d.ts +6 -0
  22. package/dist/ts/recurrence-editor/index.ts +6 -0
  23. package/dist/ts/recurrence-editor/recurrence-editor-model.d.ts +112 -0
  24. package/dist/ts/recurrence-editor/recurrence-editor.d.ts +245 -0
  25. package/dist/ts/recurrence-editor/recurrence-editor.ts +1257 -0
  26. package/dist/ts/schedule/actions/action-base.d.ts +44 -0
  27. package/dist/ts/schedule/actions/action-base.ts +493 -0
  28. package/dist/ts/schedule/actions/crud.d.ts +41 -0
  29. package/dist/ts/schedule/actions/crud.ts +784 -0
  30. package/dist/ts/schedule/actions/data.d.ts +63 -0
  31. package/dist/ts/schedule/actions/data.ts +128 -0
  32. package/dist/ts/schedule/actions/drag.d.ts +75 -0
  33. package/dist/ts/schedule/actions/drag.ts +1401 -0
  34. package/dist/ts/schedule/actions/keyboard.d.ts +100 -0
  35. package/dist/ts/schedule/actions/keyboard.ts +1435 -0
  36. package/dist/ts/schedule/actions/resize.d.ts +27 -0
  37. package/dist/ts/schedule/actions/resize.ts +602 -0
  38. package/dist/ts/schedule/actions/scroll.d.ts +69 -0
  39. package/dist/ts/schedule/actions/scroll.ts +105 -0
  40. package/dist/ts/schedule/actions/touch.d.ts +32 -0
  41. package/dist/ts/schedule/actions/touch.ts +314 -0
  42. package/dist/ts/schedule/actions/virtual-scroll.d.ts +55 -0
  43. package/dist/ts/schedule/actions/virtual-scroll.ts +596 -0
  44. package/dist/ts/schedule/actions/work-cells.d.ts +14 -0
  45. package/dist/ts/schedule/actions/work-cells.ts +151 -0
  46. package/dist/ts/schedule/base/constant.d.ts +102 -0
  47. package/dist/ts/schedule/base/constant.ts +103 -0
  48. package/dist/ts/schedule/base/css-constant.d.ts +475 -0
  49. package/dist/ts/schedule/base/css-constant.ts +475 -0
  50. package/dist/ts/schedule/base/interface.d.ts +673 -0
  51. package/dist/ts/schedule/base/interface.ts +738 -0
  52. package/dist/ts/schedule/base/resource.d.ts +59 -0
  53. package/dist/ts/schedule/base/resource.ts +1091 -0
  54. package/dist/ts/schedule/base/schedule-model.d.ts +930 -0
  55. package/dist/ts/schedule/base/schedule.d.ts +1967 -0
  56. package/dist/ts/schedule/base/schedule.ts +4221 -0
  57. package/dist/ts/schedule/base/type.d.ts +134 -0
  58. package/dist/ts/schedule/base/type.ts +142 -0
  59. package/dist/ts/schedule/base/util.d.ts +266 -0
  60. package/dist/ts/schedule/base/util.ts +492 -0
  61. package/dist/ts/schedule/event-renderer/agenda-base.d.ts +15 -0
  62. package/dist/ts/schedule/event-renderer/agenda-base.ts +423 -0
  63. package/dist/ts/schedule/event-renderer/event-base.d.ts +101 -0
  64. package/dist/ts/schedule/event-renderer/event-base.ts +1501 -0
  65. package/dist/ts/schedule/event-renderer/inline-edit.d.ts +23 -0
  66. package/dist/ts/schedule/event-renderer/inline-edit.ts +287 -0
  67. package/dist/ts/schedule/event-renderer/month.d.ts +60 -0
  68. package/dist/ts/schedule/event-renderer/month.ts +760 -0
  69. package/dist/ts/schedule/event-renderer/timeline-view.d.ts +51 -0
  70. package/dist/ts/schedule/event-renderer/timeline-view.ts +606 -0
  71. package/dist/ts/schedule/event-renderer/vertical-view.d.ts +57 -0
  72. package/dist/ts/schedule/event-renderer/vertical-view.ts +898 -0
  73. package/dist/ts/schedule/event-renderer/year.d.ts +27 -0
  74. package/dist/ts/schedule/event-renderer/year.ts +623 -0
  75. package/dist/ts/schedule/exports/calendar-export.d.ts +16 -0
  76. package/dist/ts/schedule/exports/calendar-export.ts +160 -0
  77. package/dist/ts/schedule/exports/calendar-import.d.ts +18 -0
  78. package/dist/ts/schedule/exports/calendar-import.ts +277 -0
  79. package/dist/ts/schedule/exports/excel-export.d.ts +14 -0
  80. package/dist/ts/schedule/exports/excel-export.ts +89 -0
  81. package/dist/ts/schedule/exports/index.d.ts +7 -0
  82. package/dist/ts/schedule/exports/index.ts +7 -0
  83. package/dist/ts/schedule/exports/print.d.ts +20 -0
  84. package/dist/ts/schedule/exports/print.ts +233 -0
  85. package/dist/ts/schedule/index.d.ts +26 -0
  86. package/dist/ts/schedule/index.ts +26 -0
  87. package/dist/ts/schedule/models/event-settings-model.d.ts +165 -0
  88. package/dist/ts/schedule/models/event-settings.d.ts +149 -0
  89. package/dist/ts/schedule/models/event-settings.ts +187 -0
  90. package/dist/ts/schedule/models/field-options-model.d.ts +37 -0
  91. package/dist/ts/schedule/models/field-options.d.ts +31 -0
  92. package/dist/ts/schedule/models/field-options.ts +41 -0
  93. package/dist/ts/schedule/models/fields-model.d.ts +129 -0
  94. package/dist/ts/schedule/models/fields.d.ts +117 -0
  95. package/dist/ts/schedule/models/fields.ts +149 -0
  96. package/dist/ts/schedule/models/group-model.d.ts +69 -0
  97. package/dist/ts/schedule/models/group.d.ts +60 -0
  98. package/dist/ts/schedule/models/group.ts +75 -0
  99. package/dist/ts/schedule/models/header-rows-model.d.ts +33 -0
  100. package/dist/ts/schedule/models/header-rows.d.ts +30 -0
  101. package/dist/ts/schedule/models/header-rows.ts +35 -0
  102. package/dist/ts/schedule/models/models.d.ts +14 -0
  103. package/dist/ts/schedule/models/models.ts +15 -0
  104. package/dist/ts/schedule/models/quick-info-templates-model.d.ts +52 -0
  105. package/dist/ts/schedule/models/quick-info-templates.d.ts +47 -0
  106. package/dist/ts/schedule/models/quick-info-templates.ts +56 -0
  107. package/dist/ts/schedule/models/resources-model.d.ts +122 -0
  108. package/dist/ts/schedule/models/resources.d.ts +106 -0
  109. package/dist/ts/schedule/models/resources.ts +138 -0
  110. package/dist/ts/schedule/models/time-scale-model.d.ts +57 -0
  111. package/dist/ts/schedule/models/time-scale.d.ts +50 -0
  112. package/dist/ts/schedule/models/time-scale.ts +61 -0
  113. package/dist/ts/schedule/models/toolbar-model.d.ts +196 -0
  114. package/dist/ts/schedule/models/toolbar.d.ts +176 -0
  115. package/dist/ts/schedule/models/toolbar.ts +196 -0
  116. package/dist/ts/schedule/models/views-model.d.ts +370 -0
  117. package/dist/ts/schedule/models/views.d.ts +335 -0
  118. package/dist/ts/schedule/models/views.ts +408 -0
  119. package/dist/ts/schedule/models/work-hours-model.d.ts +29 -0
  120. package/dist/ts/schedule/models/work-hours.d.ts +24 -0
  121. package/dist/ts/schedule/models/work-hours.ts +31 -0
  122. package/dist/ts/schedule/popups/event-tooltip.d.ts +16 -0
  123. package/dist/ts/schedule/popups/event-tooltip.ts +203 -0
  124. package/dist/ts/schedule/popups/event-window.d.ts +118 -0
  125. package/dist/ts/schedule/popups/event-window.ts +2055 -0
  126. package/dist/ts/schedule/popups/form-validator.d.ts +16 -0
  127. package/dist/ts/schedule/popups/form-validator.ts +110 -0
  128. package/dist/ts/schedule/popups/quick-popups.d.ts +78 -0
  129. package/dist/ts/schedule/popups/quick-popups.ts +1470 -0
  130. package/dist/ts/schedule/renderer/agenda.d.ts +45 -0
  131. package/dist/ts/schedule/renderer/agenda.ts +497 -0
  132. package/dist/ts/schedule/renderer/day.d.ts +20 -0
  133. package/dist/ts/schedule/renderer/day.ts +28 -0
  134. package/dist/ts/schedule/renderer/header-renderer.d.ts +48 -0
  135. package/dist/ts/schedule/renderer/header-renderer.ts +736 -0
  136. package/dist/ts/schedule/renderer/month-agenda.d.ts +29 -0
  137. package/dist/ts/schedule/renderer/month-agenda.ts +184 -0
  138. package/dist/ts/schedule/renderer/month.d.ts +61 -0
  139. package/dist/ts/schedule/renderer/month.ts +766 -0
  140. package/dist/ts/schedule/renderer/renderer.d.ts +13 -0
  141. package/dist/ts/schedule/renderer/renderer.ts +165 -0
  142. package/dist/ts/schedule/renderer/timeline-header-row.d.ts +15 -0
  143. package/dist/ts/schedule/renderer/timeline-header-row.ts +132 -0
  144. package/dist/ts/schedule/renderer/timeline-month.d.ts +29 -0
  145. package/dist/ts/schedule/renderer/timeline-month.ts +184 -0
  146. package/dist/ts/schedule/renderer/timeline-view.d.ts +31 -0
  147. package/dist/ts/schedule/renderer/timeline-view.ts +308 -0
  148. package/dist/ts/schedule/renderer/timeline-year.d.ts +22 -0
  149. package/dist/ts/schedule/renderer/timeline-year.ts +450 -0
  150. package/dist/ts/schedule/renderer/vertical-view.d.ts +63 -0
  151. package/dist/ts/schedule/renderer/vertical-view.ts +911 -0
  152. package/dist/ts/schedule/renderer/view-base.d.ts +83 -0
  153. package/dist/ts/schedule/renderer/view-base.ts +709 -0
  154. package/dist/ts/schedule/renderer/week.d.ts +22 -0
  155. package/dist/ts/schedule/renderer/week.ts +35 -0
  156. package/dist/ts/schedule/renderer/work-week.d.ts +22 -0
  157. package/dist/ts/schedule/renderer/work-week.ts +36 -0
  158. package/dist/ts/schedule/renderer/year.d.ts +46 -0
  159. package/dist/ts/schedule/renderer/year.ts +470 -0
  160. package/dist/ts/schedule/timezone/timezone.d.ts +16 -0
  161. package/dist/ts/schedule/timezone/timezone.ts +313 -0
  162. package/package.json +56 -21
  163. package/src/schedule/actions/action-base.js +3 -0
  164. package/src/schedule/actions/drag.js +11 -4
  165. package/src/schedule/actions/keyboard.js +1 -1
  166. package/src/schedule/actions/resize.js +9 -5
  167. package/src/schedule/actions/virtual-scroll.js +3 -0
  168. package/src/schedule/base/css-constant.d.ts +2 -0
  169. package/src/schedule/base/css-constant.js +2 -0
  170. package/src/schedule/base/schedule.js +15 -1
  171. package/src/schedule/event-renderer/agenda-base.d.ts +1 -1
  172. package/src/schedule/event-renderer/agenda-base.js +5 -4
  173. package/src/schedule/event-renderer/inline-edit.js +11 -6
  174. package/src/schedule/event-renderer/month.js +5 -3
  175. package/src/schedule/event-renderer/vertical-view.js +3 -0
  176. package/src/schedule/event-renderer/year.d.ts +2 -0
  177. package/src/schedule/event-renderer/year.js +28 -4
  178. package/src/schedule/popups/event-tooltip.js +4 -0
  179. package/src/schedule/popups/event-window.js +2 -2
  180. package/src/schedule/popups/quick-popups.js +5 -1
  181. package/src/schedule/renderer/agenda.js +3 -2
  182. package/src/schedule/renderer/month.js +9 -7
  183. package/src/schedule/renderer/vertical-view.js +1 -1
  184. package/src/schedule/renderer/view-base.d.ts +2 -0
  185. package/src/schedule/renderer/view-base.js +9 -0
  186. package/src/schedule/renderer/year.js +3 -2
  187. package/styles/bds-lite.css +11 -8
  188. package/styles/bds.css +11 -8
  189. package/styles/bootstrap-dark-lite.css +12 -9
  190. package/styles/bootstrap-dark.css +12 -9
  191. package/styles/bootstrap-lite.css +12 -9
  192. package/styles/bootstrap.css +12 -9
  193. package/styles/bootstrap4-lite.css +11 -8
  194. package/styles/bootstrap4.css +11 -8
  195. package/styles/bootstrap5-dark-lite.css +11 -8
  196. package/styles/bootstrap5-dark.css +11 -8
  197. package/styles/bootstrap5-lite.css +11 -8
  198. package/styles/bootstrap5.3-lite.css +11 -8
  199. package/styles/bootstrap5.3.css +11 -8
  200. package/styles/bootstrap5.css +11 -8
  201. package/styles/fabric-dark-lite.css +12 -9
  202. package/styles/fabric-dark.css +12 -9
  203. package/styles/fabric-lite.css +12 -9
  204. package/styles/fabric.css +12 -9
  205. package/styles/fluent-dark-lite.css +13 -10
  206. package/styles/fluent-dark.css +13 -10
  207. package/styles/fluent-lite.css +13 -10
  208. package/styles/fluent.css +13 -10
  209. package/styles/fluent2-lite.css +11 -8
  210. package/styles/fluent2.css +11 -8
  211. package/styles/highcontrast-light-lite.css +12 -9
  212. package/styles/highcontrast-light.css +12 -9
  213. package/styles/highcontrast-lite.css +12 -9
  214. package/styles/highcontrast.css +12 -9
  215. package/styles/material-dark-lite.css +12 -9
  216. package/styles/material-dark.css +12 -9
  217. package/styles/material-lite.css +12 -9
  218. package/styles/material.css +12 -9
  219. package/styles/material3-dark-lite.css +11 -8
  220. package/styles/material3-dark.css +11 -8
  221. package/styles/material3-lite.css +11 -8
  222. package/styles/material3.css +11 -8
  223. package/styles/recurrence-editor/_bds-definition.scss +1 -0
  224. package/styles/recurrence-editor/_bootstrap-dark-definition.scss +1 -0
  225. package/styles/recurrence-editor/_bootstrap-definition.scss +1 -0
  226. package/styles/recurrence-editor/_bootstrap4-definition.scss +1 -0
  227. package/styles/recurrence-editor/_bootstrap5-definition.scss +1 -0
  228. package/styles/recurrence-editor/_bootstrap5.3-definition.scss +1 -0
  229. package/styles/recurrence-editor/_fabric-dark-definition.scss +1 -0
  230. package/styles/recurrence-editor/_fabric-definition.scss +1 -0
  231. package/styles/recurrence-editor/_fluent-definition.scss +1 -0
  232. package/styles/recurrence-editor/_fluent2-definition.scss +1 -0
  233. package/styles/recurrence-editor/_fusionnew-definition.scss +1 -0
  234. package/styles/recurrence-editor/_highcontrast-definition.scss +1 -0
  235. package/styles/recurrence-editor/_highcontrast-light-definition.scss +1 -0
  236. package/styles/recurrence-editor/_layout.scss +5 -1
  237. package/styles/recurrence-editor/_material-dark-definition.scss +1 -0
  238. package/styles/recurrence-editor/_material-definition.scss +1 -0
  239. package/styles/recurrence-editor/_material3-definition.scss +1 -0
  240. package/styles/recurrence-editor/_tailwind-definition.scss +1 -0
  241. package/styles/recurrence-editor/_tailwind3-definition.scss +1 -0
  242. package/styles/recurrence-editor/bds.css +3 -0
  243. package/styles/recurrence-editor/bootstrap-dark.css +4 -1
  244. package/styles/recurrence-editor/bootstrap.css +4 -1
  245. package/styles/recurrence-editor/bootstrap4.css +3 -0
  246. package/styles/recurrence-editor/bootstrap5-dark.css +3 -0
  247. package/styles/recurrence-editor/bootstrap5.3.css +3 -0
  248. package/styles/recurrence-editor/bootstrap5.css +3 -0
  249. package/styles/recurrence-editor/fabric-dark.css +4 -1
  250. package/styles/recurrence-editor/fabric.css +4 -1
  251. package/styles/recurrence-editor/fluent-dark.css +4 -1
  252. package/styles/recurrence-editor/fluent.css +4 -1
  253. package/styles/recurrence-editor/fluent2.css +3 -0
  254. package/styles/recurrence-editor/highcontrast-light.css +4 -1
  255. package/styles/recurrence-editor/highcontrast.css +4 -1
  256. package/styles/recurrence-editor/material-dark.css +4 -1
  257. package/styles/recurrence-editor/material.css +4 -1
  258. package/styles/recurrence-editor/material3-dark.css +3 -0
  259. package/styles/recurrence-editor/material3.css +3 -0
  260. package/styles/recurrence-editor/tailwind-dark.css +3 -0
  261. package/styles/recurrence-editor/tailwind.css +3 -0
  262. package/styles/recurrence-editor/tailwind3.css +3 -0
  263. package/styles/schedule/_bds-definition.scss +2 -0
  264. package/styles/schedule/_bootstrap-dark-definition.scss +2 -0
  265. package/styles/schedule/_bootstrap-definition.scss +2 -0
  266. package/styles/schedule/_bootstrap4-definition.scss +2 -0
  267. package/styles/schedule/_bootstrap5-definition.scss +2 -0
  268. package/styles/schedule/_bootstrap5.3-definition.scss +2 -0
  269. package/styles/schedule/_fabric-dark-definition.scss +2 -0
  270. package/styles/schedule/_fabric-definition.scss +2 -0
  271. package/styles/schedule/_fluent-definition.scss +3 -1
  272. package/styles/schedule/_fluent2-definition.scss +2 -0
  273. package/styles/schedule/_fusionnew-definition.scss +2 -0
  274. package/styles/schedule/_highcontrast-definition.scss +2 -0
  275. package/styles/schedule/_highcontrast-light-definition.scss +2 -0
  276. package/styles/schedule/_layout.scss +12 -11
  277. package/styles/schedule/_material-dark-definition.scss +2 -0
  278. package/styles/schedule/_material-definition.scss +2 -0
  279. package/styles/schedule/_material3-definition.scss +2 -0
  280. package/styles/schedule/_tailwind-definition.scss +2 -0
  281. package/styles/schedule/_tailwind3-definition.scss +2 -0
  282. package/styles/schedule/bds.css +8 -8
  283. package/styles/schedule/bootstrap-dark.css +8 -8
  284. package/styles/schedule/bootstrap.css +8 -8
  285. package/styles/schedule/bootstrap4.css +8 -8
  286. package/styles/schedule/bootstrap5-dark.css +8 -8
  287. package/styles/schedule/bootstrap5.3.css +8 -8
  288. package/styles/schedule/bootstrap5.css +8 -8
  289. package/styles/schedule/fabric-dark.css +8 -8
  290. package/styles/schedule/fabric.css +8 -8
  291. package/styles/schedule/fluent-dark.css +9 -9
  292. package/styles/schedule/fluent.css +9 -9
  293. package/styles/schedule/fluent2.css +8 -8
  294. package/styles/schedule/highcontrast-light.css +8 -8
  295. package/styles/schedule/highcontrast.css +8 -8
  296. package/styles/schedule/material-dark.css +8 -8
  297. package/styles/schedule/material.css +8 -8
  298. package/styles/schedule/material3-dark.css +8 -8
  299. package/styles/schedule/material3.css +8 -8
  300. package/styles/schedule/tailwind-dark.css +8 -8
  301. package/styles/schedule/tailwind.css +8 -8
  302. package/styles/schedule/tailwind3.css +8 -8
  303. package/styles/tailwind-dark-lite.css +11 -8
  304. package/styles/tailwind-dark.css +11 -8
  305. package/styles/tailwind-lite.css +11 -8
  306. package/styles/tailwind.css +11 -8
  307. package/styles/tailwind3-lite.css +11 -8
  308. package/styles/tailwind3.css +11 -8
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Recurrence-Editor component exported items
3
+ */
4
+ export * from './recurrence-editor';
5
+ export * from './recurrence-editor-model';
6
+ export * from './date-generator';
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Recurrence-Editor component exported items
3
+ */
4
+ export * from './recurrence-editor';
5
+ export * from './recurrence-editor-model';
6
+ export * from './date-generator';
@@ -0,0 +1,112 @@
1
+ import { Component, Property, NotifyPropertyChanges, INotifyPropertyChanged, Event, Browser, detach } from '@syncfusion/ej2-base';import { EmitType, getDefaultDateObject, getValue, cldrData, L10n, isNullOrUndefined, removeClass, addClass } from '@syncfusion/ej2-base';import { DropDownList, ChangeEventArgs } from '@syncfusion/ej2-dropdowns';import { NumericTextBox } from '@syncfusion/ej2-inputs';import { DatePicker, ChangedEventArgs } from '@syncfusion/ej2-calendars';import { Button, RadioButton } from '@syncfusion/ej2-buttons';import { EventHandler, MouseEventArgs, classList } from '@syncfusion/ej2-base';import { EJ2Instance } from '../schedule/base/interface';import { RecRule, extractObjectFromRule, generate, generateSummary, getRecurrenceStringFromDate, getCalendarUtil } from './date-generator';import { CalendarUtil, CalendarType } from '../common/calendar-util';import { capitalizeFirstWord } from '../schedule/base/util';
2
+ import {RepeatType,EndType,RecurrenceEditorChangeEventArgs} from "./recurrence-editor";
3
+ import {ComponentModel} from '@syncfusion/ej2-base';
4
+
5
+ /**
6
+ * Interface for a class RecurrenceEditor
7
+ */
8
+ export interface RecurrenceEditorModel extends ComponentModel{
9
+
10
+ /**
11
+ * Sets the recurrence pattern on the editor.
12
+ *
13
+ * @default ['none', 'daily', 'weekly', 'monthly', 'yearly']
14
+ */
15
+ frequencies?: RepeatType[];
16
+
17
+ /**
18
+ * Sets the type of recurrence end for the recurrence pattern on the editor.
19
+ *
20
+ * @default ['never', 'until', 'count']
21
+ */
22
+ endTypes?: EndType[];
23
+
24
+ /**
25
+ * Sets the first day of the week.
26
+ *
27
+ * @default 0
28
+ */
29
+ firstDayOfWeek?: number;
30
+
31
+ /**
32
+ * Sets the start date on recurrence editor.
33
+ *
34
+ * @default new Date()
35
+ * @aspDefaultValue DateTime.Now
36
+ */
37
+ startDate?: Date;
38
+
39
+ /**
40
+ * Sets the user specific date format on recurrence editor.
41
+ *
42
+ * @default null
43
+ */
44
+ dateFormat?: string;
45
+
46
+ /**
47
+ * Sets the specific calendar type to be applied on recurrence editor.
48
+ *
49
+ * @default 'Gregorian'
50
+ */
51
+ calendarMode?: CalendarType;
52
+
53
+ /**
54
+ * Allows styling with custom class names.
55
+ *
56
+ * @default null
57
+ */
58
+ cssClass?: string;
59
+
60
+ /**
61
+ * Sets the recurrence rule as its output values.
62
+ *
63
+ * @default null
64
+ */
65
+ value?: string;
66
+
67
+ /**
68
+ * Sets the minimum date on recurrence editor.
69
+ *
70
+ * @default new Date(1900, 0, 1)
71
+ * @aspDefaultValue new DateTime(1900, 1, 1)
72
+ */
73
+ minDate?: Date;
74
+
75
+ /**
76
+ * Sets the maximum date on recurrence editor.
77
+ *
78
+ * @default new Date(2099, 11, 31)
79
+ * @aspDefaultValue new DateTime(2099, 12, 31)
80
+ */
81
+ maxDate?: Date;
82
+
83
+ /**
84
+ * Sets the current repeat type to be set on the recurrence editor.
85
+ *
86
+ * @default 0
87
+ * @aspType int
88
+ */
89
+ selectedType?: number;
90
+
91
+ /**
92
+ * Triggers for value changes on every sub-controls rendered within the recurrence editor.
93
+ *
94
+ * @event 'change'
95
+ */
96
+ change?: EmitType<RecurrenceEditorChangeEventArgs>;
97
+
98
+ /**
99
+ * Triggers when the component is created.
100
+ *
101
+ * @event 'created'
102
+ */
103
+ created?: EmitType<Object>;
104
+
105
+ /**
106
+ * Triggers when the component is destroyed.
107
+ *
108
+ * @event 'destroyed'
109
+ */
110
+ destroyed?: EmitType<Object>;
111
+
112
+ }
@@ -0,0 +1,245 @@
1
+ import { Component, INotifyPropertyChanged } from '@syncfusion/ej2-base';
2
+ import { EmitType, L10n } from '@syncfusion/ej2-base';
3
+ import { RecurrenceEditorModel } from './recurrence-editor-model';
4
+ import { CalendarType } from '../common/calendar-util';
5
+ /**
6
+ * Represents the RecurrenceEditor component.
7
+ * ```html
8
+ * <div id="recurrence"></div>
9
+ * ```
10
+ * ```typescript
11
+ * <script>
12
+ * var recObj = new RecurrenceEditor();
13
+ * recObj.appendTo("#recurrence");
14
+ * </script>
15
+ * ```
16
+ */
17
+ export declare class RecurrenceEditor extends Component<HTMLElement> implements INotifyPropertyChanged {
18
+ /**
19
+ * Sets the recurrence pattern on the editor.
20
+ *
21
+ * @default ['none', 'daily', 'weekly', 'monthly', 'yearly']
22
+ */
23
+ frequencies: RepeatType[];
24
+ /**
25
+ * Sets the type of recurrence end for the recurrence pattern on the editor.
26
+ *
27
+ * @default ['never', 'until', 'count']
28
+ */
29
+ endTypes: EndType[];
30
+ /**
31
+ * Sets the first day of the week.
32
+ *
33
+ * @default 0
34
+ */
35
+ firstDayOfWeek: number;
36
+ /**
37
+ * Sets the start date on recurrence editor.
38
+ *
39
+ * @default new Date()
40
+ * @aspDefaultValue DateTime.Now
41
+ */
42
+ startDate: Date;
43
+ /**
44
+ * Sets the user specific date format on recurrence editor.
45
+ *
46
+ * @default null
47
+ */
48
+ dateFormat: string;
49
+ /**
50
+ * Sets the specific calendar type to be applied on recurrence editor.
51
+ *
52
+ * @default 'Gregorian'
53
+ */
54
+ calendarMode: CalendarType;
55
+ /**
56
+ * Allows styling with custom class names.
57
+ *
58
+ * @default null
59
+ */
60
+ cssClass: string;
61
+ /**
62
+ * Sets the recurrence rule as its output values.
63
+ *
64
+ * @default null
65
+ */
66
+ value: string;
67
+ /**
68
+ * Sets the minimum date on recurrence editor.
69
+ *
70
+ * @default new Date(1900, 0, 1)
71
+ * @aspDefaultValue new DateTime(1900, 1, 1)
72
+ */
73
+ minDate: Date;
74
+ /**
75
+ * Sets the maximum date on recurrence editor.
76
+ *
77
+ * @default new Date(2099, 11, 31)
78
+ * @aspDefaultValue new DateTime(2099, 12, 31)
79
+ */
80
+ maxDate: Date;
81
+ /**
82
+ * Sets the current repeat type to be set on the recurrence editor.
83
+ *
84
+ * @default 0
85
+ * @aspType int
86
+ */
87
+ selectedType: number;
88
+ /**
89
+ * Triggers for value changes on every sub-controls rendered within the recurrence editor.
90
+ *
91
+ * @event 'change'
92
+ */
93
+ change: EmitType<RecurrenceEditorChangeEventArgs>;
94
+ /**
95
+ * Triggers when the component is created.
96
+ *
97
+ * @event 'created'
98
+ */
99
+ created: EmitType<Object>;
100
+ /**
101
+ * Triggers when the component is destroyed.
102
+ *
103
+ * @event 'destroyed'
104
+ */
105
+ destroyed: EmitType<Object>;
106
+ /**
107
+ * Constructor for creating the widget
108
+ *
109
+ * @param {RecurrenceEditorModel} options Accepts the recurrence editor model properties to initiate the rendering
110
+ * @param {string | HTMLElement} element Accepts the DOM element reference
111
+ */
112
+ constructor(options?: RecurrenceEditorModel, element?: string | HTMLElement);
113
+ localeObj: L10n;
114
+ private defaultLocale;
115
+ private renderStatus;
116
+ private ruleObject;
117
+ private recurrenceCount;
118
+ private monthDate;
119
+ private repeatInterval;
120
+ private untilDateObj;
121
+ private repeatType;
122
+ private endType;
123
+ private monthWeekPos;
124
+ private monthWeekDays;
125
+ private monthValue;
126
+ private onMonthDay;
127
+ private onWeekDay;
128
+ private dayButtons;
129
+ private monthButtons;
130
+ private calendarUtil;
131
+ private startState;
132
+ protected preRender(): void;
133
+ private applyCustomClass;
134
+ private initialize;
135
+ private triggerChangeEvent;
136
+ private resetDayButton;
137
+ private daySelection;
138
+ private rtlClass;
139
+ private updateUntilDate;
140
+ private selectMonthDay;
141
+ private updateForm;
142
+ private updateEndOnForm;
143
+ private freshOnEndForm;
144
+ private showFormElement;
145
+ private renderDropdowns;
146
+ private setDefaultValue;
147
+ private resetFormValues;
148
+ private getPopupWidth;
149
+ private renderDatePickers;
150
+ private getFormat;
151
+ private dayButtonRender;
152
+ private radioButtonRender;
153
+ private numericTextboxRender;
154
+ private renderComponent;
155
+ private rotateArray;
156
+ private getEndData;
157
+ private getDayPosition;
158
+ private getRepeatData;
159
+ private getMonthPosData;
160
+ private getDayData;
161
+ private getMonthData;
162
+ private setTemplate;
163
+ private getSelectedDaysData;
164
+ private getSelectedMonthData;
165
+ private getIntervalData;
166
+ private getEndOnCount;
167
+ private getYearMonthRuleData;
168
+ private updateWeekButton;
169
+ private updateMonthUI;
170
+ private updateUI;
171
+ private getUntilData;
172
+ private destroyComponents;
173
+ resetFields(): void;
174
+ updateRuleUntilDate(startDate: Date): void;
175
+ private getCalendarMode;
176
+ getRuleSummary(rule?: string): string;
177
+ getRecurrenceDates(startDate: Date, rule: string, excludeDate?: string, maximumCount?: number, viewDate?: Date): number[];
178
+ getRecurrenceRule(): string;
179
+ setRecurrenceRule(rule: string, startDate?: Date): void;
180
+ private detachInputs;
181
+ /**
182
+ * Destroys the widget.
183
+ *
184
+ * @returns {void}
185
+ */
186
+ destroy(): void;
187
+ /**
188
+ * Get component name.
189
+ *
190
+ * @returns {string} Returns the module name
191
+ * @private
192
+ */
193
+ getModuleName(): string;
194
+ /**
195
+ * Get the properties to be maintained in the persisted state.
196
+ *
197
+ * @returns {string} Returns the persisted state
198
+ */
199
+ getPersistData(): string;
200
+ /**
201
+ * Initialize the control rendering
202
+ *
203
+ * @returns {void}
204
+ * @private
205
+ */
206
+ render(): void;
207
+ /**
208
+ * Called internally, if any of the property value changed.
209
+ *
210
+ * @param {RecurrenceEditorModel} newProp Accepts the changed properties new values
211
+ * @param {RecurrenceEditorModel} oldProp Accepts the changed properties old values
212
+ * @returns {void}
213
+ * @private
214
+ */
215
+ onPropertyChanged(newProp: RecurrenceEditorModel, oldProp: RecurrenceEditorModel): void;
216
+ }
217
+ /**
218
+ * Interface that holds the option on changing the rule in the recurrence editor.
219
+ */
220
+ export interface RecurrenceEditorChangeEventArgs {
221
+ /** Returns the current recurrence rule. */
222
+ value: string;
223
+ }
224
+ /**
225
+ * Defines the repeat type of the recurrence editor.
226
+ * ```props
227
+ * none :- Denotes no repetition.
228
+ * daily :- Denotes repetition every day.
229
+ * weekly :- Denotes repetition every week.
230
+ * monthly :- Denotes repetition every month.
231
+ * yearly :- Denotes repetition every year.
232
+ * ```
233
+ */
234
+ export declare type RepeatType = 'none' | 'daily' | 'weekly' | 'monthly' | 'yearly';
235
+ /**
236
+ * Defines the available types of recurrence end for the recurrence editor.
237
+ * ```props
238
+ * The following options are available:
239
+ *
240
+ * never :- Denotes that the recurrence has no end date and continues indefinitely.
241
+ * until :- Denotes that the recurrence ends on a specified date.
242
+ * count :- Denotes that the recurrence ends after a specified number of occurrences.
243
+ * ```
244
+ */
245
+ export declare type EndType = 'never' | 'until' | 'count';