@syncfusion/ej2-schedule 33.2.3 → 34.1.29

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 (482) 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 +345 -28
  5. package/dist/es6/ej2-schedule.es2015.js.map +1 -1
  6. package/dist/es6/ej2-schedule.es5.js +392 -40
  7. package/dist/es6/ej2-schedule.es5.js.map +1 -1
  8. package/dist/global/ej2-schedule.min.js +2 -2
  9. package/dist/global/ej2-schedule.min.js.map +1 -1
  10. package/dist/global/index.d.ts +1 -1
  11. package/package.json +11 -11
  12. package/src/recurrence-editor/recurrence-editor.js +5 -0
  13. package/src/schedule/actions/action-base.js +6 -2
  14. package/src/schedule/actions/resize.js +1 -1
  15. package/src/schedule/base/css-constant.d.ts +2 -0
  16. package/src/schedule/base/css-constant.js +2 -0
  17. package/src/schedule/base/interface.d.ts +3 -0
  18. package/src/schedule/base/resource.d.ts +1 -1
  19. package/src/schedule/base/resource.js +7 -5
  20. package/src/schedule/base/schedule-model.d.ts +31 -0
  21. package/src/schedule/base/schedule.d.ts +33 -0
  22. package/src/schedule/base/schedule.js +37 -1
  23. package/src/schedule/event-renderer/event-base.js +4 -0
  24. package/src/schedule/event-renderer/inline-edit.js +2 -2
  25. package/src/schedule/event-renderer/month.js +8 -2
  26. package/src/schedule/event-renderer/vertical-view.d.ts +6 -0
  27. package/src/schedule/event-renderer/vertical-view.js +293 -23
  28. package/src/schedule/models/views-model.d.ts +13 -0
  29. package/src/schedule/models/views.d.ts +12 -0
  30. package/src/schedule/models/views.js +3 -0
  31. package/src/schedule/popups/quick-popups.d.ts +1 -0
  32. package/src/schedule/popups/quick-popups.js +27 -4
  33. package/styles/bds-lite.css +43 -354
  34. package/styles/bds-lite.scss +3 -16
  35. package/styles/bds.css +43 -362
  36. package/styles/bds.scss +5 -18
  37. package/styles/bootstrap-dark-lite.css +43 -88
  38. package/styles/bootstrap-dark-lite.scss +3 -16
  39. package/styles/bootstrap-dark.css +43 -88
  40. package/styles/bootstrap-dark.scss +5 -18
  41. package/styles/bootstrap-lite.css +43 -83
  42. package/styles/bootstrap-lite.scss +3 -16
  43. package/styles/bootstrap.css +43 -83
  44. package/styles/bootstrap.scss +5 -18
  45. package/styles/bootstrap4-lite.css +43 -144
  46. package/styles/bootstrap4-lite.scss +3 -16
  47. package/styles/bootstrap4.css +43 -144
  48. package/styles/bootstrap4.scss +5 -18
  49. package/styles/bootstrap5-dark-lite.css +43 -136
  50. package/styles/bootstrap5-dark-lite.scss +3 -16
  51. package/styles/bootstrap5-dark.css +43 -136
  52. package/styles/bootstrap5-dark.scss +5 -18
  53. package/styles/bootstrap5-lite.css +43 -136
  54. package/styles/bootstrap5-lite.scss +3 -17
  55. package/styles/bootstrap5.3-lite.css +58 -403
  56. package/styles/bootstrap5.3-lite.scss +3 -17
  57. package/styles/bootstrap5.3.css +60 -573
  58. package/styles/bootstrap5.3.scss +5 -19
  59. package/styles/bootstrap5.css +43 -136
  60. package/styles/bootstrap5.scss +5 -19
  61. package/styles/fabric-dark-lite.css +43 -58
  62. package/styles/fabric-dark-lite.scss +3 -17
  63. package/styles/fabric-dark.css +43 -58
  64. package/styles/fabric-dark.scss +5 -19
  65. package/styles/fabric-lite.css +43 -55
  66. package/styles/fabric-lite.scss +3 -17
  67. package/styles/fabric.css +43 -55
  68. package/styles/fabric.scss +5 -19
  69. package/styles/fluent-dark-lite.css +43 -124
  70. package/styles/fluent-dark-lite.scss +3 -17
  71. package/styles/fluent-dark.css +43 -124
  72. package/styles/fluent-dark.scss +5 -19
  73. package/styles/fluent-lite.css +43 -124
  74. package/styles/fluent-lite.scss +3 -17
  75. package/styles/fluent.css +43 -124
  76. package/styles/fluent.scss +5 -19
  77. package/styles/fluent2-lite.css +43 -695
  78. package/styles/fluent2-lite.scss +3 -17
  79. package/styles/fluent2.css +55 -879
  80. package/styles/fluent2.scss +5 -19
  81. package/styles/highcontrast-light-lite.css +43 -147
  82. package/styles/highcontrast-light-lite.scss +3 -17
  83. package/styles/highcontrast-light.css +43 -147
  84. package/styles/highcontrast-light.scss +5 -19
  85. package/styles/highcontrast-lite.css +43 -156
  86. package/styles/highcontrast-lite.scss +3 -17
  87. package/styles/highcontrast.css +43 -156
  88. package/styles/highcontrast.scss +5 -19
  89. package/styles/material-dark-lite.css +43 -135
  90. package/styles/material-dark-lite.scss +3 -17
  91. package/styles/material-dark.css +43 -135
  92. package/styles/material-dark.scss +5 -19
  93. package/styles/material-lite.css +43 -172
  94. package/styles/material-lite.scss +3 -16
  95. package/styles/material.css +43 -172
  96. package/styles/material.scss +5 -18
  97. package/styles/material3-dark-lite.css +43 -718
  98. package/styles/material3-dark-lite.scss +3 -17
  99. package/styles/material3-dark.css +53 -892
  100. package/styles/material3-dark.scss +5 -19
  101. package/styles/material3-lite.css +43 -724
  102. package/styles/material3-lite.scss +3 -17
  103. package/styles/material3.css +47 -896
  104. package/styles/material3.scss +5 -19
  105. package/styles/recurrence-editor/_all.scss +2 -2
  106. package/styles/recurrence-editor/_bds-definition.scss +2 -2
  107. package/styles/recurrence-editor/_bigger.scss +1 -1
  108. package/styles/recurrence-editor/_bootstrap-dark-definition.scss +2 -2
  109. package/styles/recurrence-editor/_bootstrap-definition.scss +2 -2
  110. package/styles/recurrence-editor/_bootstrap4-definition.scss +2 -2
  111. package/styles/recurrence-editor/_bootstrap5-dark-definition.scss +2 -2
  112. package/styles/recurrence-editor/_bootstrap5-definition.scss +2 -2
  113. package/styles/recurrence-editor/_bootstrap5.3-definition.scss +2 -2
  114. package/styles/recurrence-editor/_fabric-dark-definition.scss +2 -2
  115. package/styles/recurrence-editor/_fabric-definition.scss +2 -2
  116. package/styles/recurrence-editor/_fluent-dark-definition.scss +2 -2
  117. package/styles/recurrence-editor/_fluent-definition.scss +2 -2
  118. package/styles/recurrence-editor/_fluent2-definition.scss +2 -2
  119. package/styles/recurrence-editor/_fusionnew-definition.scss +2 -2
  120. package/styles/recurrence-editor/_highcontrast-definition.scss +2 -2
  121. package/styles/recurrence-editor/_highcontrast-light-definition.scss +2 -2
  122. package/styles/recurrence-editor/_layout.scss +1 -1
  123. package/styles/recurrence-editor/_material-dark-definition.scss +2 -2
  124. package/styles/recurrence-editor/_material-definition.scss +2 -2
  125. package/styles/recurrence-editor/_material3-dark-definition.scss +2 -2
  126. package/styles/recurrence-editor/_material3-definition.scss +2 -2
  127. package/styles/recurrence-editor/_tailwind-dark-definition.scss +2 -2
  128. package/styles/recurrence-editor/_tailwind-definition.scss +2 -2
  129. package/styles/recurrence-editor/_tailwind3-definition.scss +2 -2
  130. package/styles/recurrence-editor/_theme.scss +1 -1
  131. package/styles/recurrence-editor/_variables.scss +2 -0
  132. package/styles/recurrence-editor/bds.css +0 -137
  133. package/styles/recurrence-editor/bds.scss +2 -8
  134. package/styles/recurrence-editor/bootstrap-dark.css +0 -58
  135. package/styles/recurrence-editor/bootstrap-dark.scss +2 -8
  136. package/styles/recurrence-editor/bootstrap.css +0 -58
  137. package/styles/recurrence-editor/bootstrap.scss +2 -8
  138. package/styles/recurrence-editor/bootstrap4.css +0 -94
  139. package/styles/recurrence-editor/bootstrap4.scss +2 -8
  140. package/styles/recurrence-editor/bootstrap5-dark.css +0 -96
  141. package/styles/recurrence-editor/bootstrap5-dark.scss +2 -8
  142. package/styles/recurrence-editor/bootstrap5.3.css +0 -264
  143. package/styles/recurrence-editor/bootstrap5.3.scss +2 -8
  144. package/styles/recurrence-editor/bootstrap5.css +0 -96
  145. package/styles/recurrence-editor/bootstrap5.scss +2 -8
  146. package/styles/recurrence-editor/fabric-dark.css +0 -34
  147. package/styles/recurrence-editor/fabric-dark.scss +2 -8
  148. package/styles/recurrence-editor/fabric.css +0 -34
  149. package/styles/recurrence-editor/fabric.scss +2 -8
  150. package/styles/recurrence-editor/fluent-dark.css +0 -89
  151. package/styles/recurrence-editor/fluent-dark.scss +2 -8
  152. package/styles/recurrence-editor/fluent.css +0 -89
  153. package/styles/recurrence-editor/fluent.scss +2 -8
  154. package/styles/recurrence-editor/fluent2.css +0 -490
  155. package/styles/recurrence-editor/fluent2.scss +2 -8
  156. package/styles/recurrence-editor/highcontrast-light.css +0 -43
  157. package/styles/recurrence-editor/highcontrast-light.scss +2 -8
  158. package/styles/recurrence-editor/highcontrast.css +0 -43
  159. package/styles/recurrence-editor/highcontrast.scss +2 -8
  160. package/styles/recurrence-editor/material-dark.css +0 -83
  161. package/styles/recurrence-editor/material-dark.scss +2 -8
  162. package/styles/recurrence-editor/material.css +0 -87
  163. package/styles/recurrence-editor/material.scss +2 -8
  164. package/styles/recurrence-editor/material3-dark.css +0 -316
  165. package/styles/recurrence-editor/material3-dark.scss +2 -8
  166. package/styles/recurrence-editor/material3.css +0 -320
  167. package/styles/recurrence-editor/material3.scss +2 -8
  168. package/styles/recurrence-editor/tailwind-dark.css +0 -70
  169. package/styles/recurrence-editor/tailwind-dark.scss +2 -8
  170. package/styles/recurrence-editor/tailwind.css +0 -70
  171. package/styles/recurrence-editor/tailwind.scss +2 -8
  172. package/styles/recurrence-editor/tailwind3.css +0 -244
  173. package/styles/recurrence-editor/tailwind3.scss +2 -8
  174. package/styles/schedule/_all.scss +2 -2
  175. package/styles/schedule/_bds-definition.scss +10 -2
  176. package/styles/schedule/_bigger.scss +1 -1
  177. package/styles/schedule/_bootstrap-dark-definition.scss +9 -2
  178. package/styles/schedule/_bootstrap-definition.scss +9 -2
  179. package/styles/schedule/_bootstrap4-definition.scss +9 -2
  180. package/styles/schedule/_bootstrap5-dark-definition.scss +9 -2
  181. package/styles/schedule/_bootstrap5-definition.scss +9 -2
  182. package/styles/schedule/_bootstrap5.3-definition.scss +13 -5
  183. package/styles/schedule/_fabric-dark-definition.scss +10 -2
  184. package/styles/schedule/_fabric-definition.scss +9 -2
  185. package/styles/schedule/_fluent-dark-definition.scss +10 -2
  186. package/styles/schedule/_fluent-definition.scss +10 -2
  187. package/styles/schedule/_fluent2-definition.scss +10 -2
  188. package/styles/schedule/_fusionnew-definition.scss +8 -0
  189. package/styles/schedule/_highcontrast-definition.scss +9 -2
  190. package/styles/schedule/_highcontrast-light-definition.scss +9 -2
  191. package/styles/schedule/_layout.scss +62 -23
  192. package/styles/schedule/_material-dark-definition.scss +10 -2
  193. package/styles/schedule/_material-definition.scss +10 -2
  194. package/styles/schedule/_material3-dark-definition.scss +10 -2
  195. package/styles/schedule/_material3-definition.scss +10 -2
  196. package/styles/schedule/_tailwind-dark-definition.scss +10 -2
  197. package/styles/schedule/_tailwind-definition.scss +10 -2
  198. package/styles/schedule/_tailwind3-definition.scss +10 -2
  199. package/styles/schedule/_theme.scss +2 -2
  200. package/styles/schedule/_variables.scss +2 -0
  201. package/styles/schedule/bds.css +43 -354
  202. package/styles/schedule/bds.scss +2 -16
  203. package/styles/schedule/bootstrap-dark.css +43 -88
  204. package/styles/schedule/bootstrap-dark.scss +2 -16
  205. package/styles/schedule/bootstrap.css +43 -83
  206. package/styles/schedule/bootstrap.scss +2 -16
  207. package/styles/schedule/bootstrap4.css +43 -144
  208. package/styles/schedule/bootstrap4.scss +2 -16
  209. package/styles/schedule/bootstrap5-dark.css +43 -136
  210. package/styles/schedule/bootstrap5-dark.scss +2 -16
  211. package/styles/schedule/bootstrap5.3.css +60 -405
  212. package/styles/schedule/bootstrap5.3.scss +2 -16
  213. package/styles/schedule/bootstrap5.css +43 -136
  214. package/styles/schedule/bootstrap5.scss +2 -16
  215. package/styles/schedule/fabric-dark.css +43 -58
  216. package/styles/schedule/fabric-dark.scss +2 -16
  217. package/styles/schedule/fabric.css +43 -55
  218. package/styles/schedule/fabric.scss +2 -16
  219. package/styles/schedule/fluent-dark.css +43 -124
  220. package/styles/schedule/fluent-dark.scss +2 -16
  221. package/styles/schedule/fluent.css +43 -124
  222. package/styles/schedule/fluent.scss +2 -16
  223. package/styles/schedule/fluent2.css +43 -695
  224. package/styles/schedule/fluent2.scss +2 -16
  225. package/styles/schedule/highcontrast-light.css +43 -147
  226. package/styles/schedule/highcontrast-light.scss +2 -16
  227. package/styles/schedule/highcontrast.css +43 -156
  228. package/styles/schedule/highcontrast.scss +2 -16
  229. package/styles/schedule/icons/_bds.scss +1 -1
  230. package/styles/schedule/icons/_bootstrap-dark.scss +1 -1
  231. package/styles/schedule/icons/_bootstrap.scss +1 -1
  232. package/styles/schedule/icons/_bootstrap4.scss +1 -1
  233. package/styles/schedule/icons/_bootstrap5.3.scss +1 -1
  234. package/styles/schedule/icons/_bootstrap5.scss +1 -1
  235. package/styles/schedule/icons/_fabric-dark.scss +1 -1
  236. package/styles/schedule/icons/_fabric.scss +1 -1
  237. package/styles/schedule/icons/_fluent.scss +1 -1
  238. package/styles/schedule/icons/_fluent2.scss +1 -1
  239. package/styles/schedule/icons/_fusionnew.scss +1 -1
  240. package/styles/schedule/icons/_highcontrast-light.scss +1 -1
  241. package/styles/schedule/icons/_highcontrast.scss +1 -1
  242. package/styles/schedule/icons/_material-dark.scss +1 -1
  243. package/styles/schedule/icons/_material.scss +1 -1
  244. package/styles/schedule/icons/_material3.scss +1 -1
  245. package/styles/schedule/icons/_tailwind.scss +1 -1
  246. package/styles/schedule/icons/_tailwind3.scss +1 -1
  247. package/styles/schedule/material-dark.css +43 -135
  248. package/styles/schedule/material-dark.scss +2 -16
  249. package/styles/schedule/material.css +43 -172
  250. package/styles/schedule/material.scss +2 -16
  251. package/styles/schedule/material3-dark.css +43 -718
  252. package/styles/schedule/material3-dark.scss +2 -16
  253. package/styles/schedule/material3.css +43 -724
  254. package/styles/schedule/material3.scss +2 -16
  255. package/styles/schedule/tailwind-dark.css +43 -101
  256. package/styles/schedule/tailwind-dark.scss +2 -16
  257. package/styles/schedule/tailwind.css +43 -101
  258. package/styles/schedule/tailwind.scss +2 -16
  259. package/styles/schedule/tailwind3.css +43 -414
  260. package/styles/schedule/tailwind3.scss +2 -16
  261. package/styles/tailwind-dark-lite.css +43 -101
  262. package/styles/tailwind-dark-lite.scss +3 -17
  263. package/styles/tailwind-dark.css +43 -101
  264. package/styles/tailwind-dark.scss +5 -19
  265. package/styles/tailwind-lite.css +43 -101
  266. package/styles/tailwind-lite.scss +3 -17
  267. package/styles/tailwind.css +43 -101
  268. package/styles/tailwind.scss +5 -19
  269. package/styles/tailwind3-lite.css +43 -414
  270. package/styles/tailwind3-lite.scss +3 -17
  271. package/styles/tailwind3.css +43 -562
  272. package/styles/tailwind3.scss +5 -19
  273. package/styles/recurrence-editor/_all.bds.scss +0 -2
  274. package/styles/recurrence-editor/_all.bootstrap-dark.scss +0 -2
  275. package/styles/recurrence-editor/_all.bootstrap.scss +0 -2
  276. package/styles/recurrence-editor/_all.bootstrap4.scss +0 -2
  277. package/styles/recurrence-editor/_all.bootstrap5-dark.scss +0 -2
  278. package/styles/recurrence-editor/_all.bootstrap5.3.scss +0 -2
  279. package/styles/recurrence-editor/_all.bootstrap5.scss +0 -2
  280. package/styles/recurrence-editor/_all.fabric-dark.scss +0 -2
  281. package/styles/recurrence-editor/_all.fabric.scss +0 -2
  282. package/styles/recurrence-editor/_all.fluent-dark.scss +0 -2
  283. package/styles/recurrence-editor/_all.fluent.scss +0 -2
  284. package/styles/recurrence-editor/_all.fluent2.scss +0 -2
  285. package/styles/recurrence-editor/_all.highcontrast-light.scss +0 -2
  286. package/styles/recurrence-editor/_all.highcontrast.scss +0 -2
  287. package/styles/recurrence-editor/_all.material-dark.scss +0 -2
  288. package/styles/recurrence-editor/_all.material.scss +0 -2
  289. package/styles/recurrence-editor/_all.material3-dark.scss +0 -2
  290. package/styles/recurrence-editor/_all.material3.scss +0 -2
  291. package/styles/recurrence-editor/_all.tailwind-dark.scss +0 -2
  292. package/styles/recurrence-editor/_all.tailwind.scss +0 -2
  293. package/styles/recurrence-editor/_all.tailwind3.scss +0 -2
  294. package/styles/recurrence-editor/_bigger.bds.scss +0 -3
  295. package/styles/recurrence-editor/_bigger.bootstrap-dark.scss +0 -3
  296. package/styles/recurrence-editor/_bigger.bootstrap.scss +0 -3
  297. package/styles/recurrence-editor/_bigger.bootstrap4.scss +0 -3
  298. package/styles/recurrence-editor/_bigger.bootstrap5-dark.scss +0 -3
  299. package/styles/recurrence-editor/_bigger.bootstrap5.3.scss +0 -3
  300. package/styles/recurrence-editor/_bigger.bootstrap5.scss +0 -3
  301. package/styles/recurrence-editor/_bigger.fabric-dark.scss +0 -3
  302. package/styles/recurrence-editor/_bigger.fabric.scss +0 -3
  303. package/styles/recurrence-editor/_bigger.fluent-dark.scss +0 -3
  304. package/styles/recurrence-editor/_bigger.fluent.scss +0 -3
  305. package/styles/recurrence-editor/_bigger.fluent2.scss +0 -3
  306. package/styles/recurrence-editor/_bigger.highcontrast-light.scss +0 -3
  307. package/styles/recurrence-editor/_bigger.highcontrast.scss +0 -3
  308. package/styles/recurrence-editor/_bigger.material-dark.scss +0 -3
  309. package/styles/recurrence-editor/_bigger.material.scss +0 -3
  310. package/styles/recurrence-editor/_bigger.material3-dark.scss +0 -3
  311. package/styles/recurrence-editor/_bigger.material3.scss +0 -3
  312. package/styles/recurrence-editor/_bigger.tailwind-dark.scss +0 -3
  313. package/styles/recurrence-editor/_bigger.tailwind.scss +0 -3
  314. package/styles/recurrence-editor/_bigger.tailwind3.scss +0 -3
  315. package/styles/recurrence-editor/_layout.bds.scss +0 -3
  316. package/styles/recurrence-editor/_layout.bootstrap-dark.scss +0 -3
  317. package/styles/recurrence-editor/_layout.bootstrap.scss +0 -3
  318. package/styles/recurrence-editor/_layout.bootstrap4.scss +0 -3
  319. package/styles/recurrence-editor/_layout.bootstrap5-dark.scss +0 -3
  320. package/styles/recurrence-editor/_layout.bootstrap5.3.scss +0 -3
  321. package/styles/recurrence-editor/_layout.bootstrap5.scss +0 -3
  322. package/styles/recurrence-editor/_layout.fabric-dark.scss +0 -3
  323. package/styles/recurrence-editor/_layout.fabric.scss +0 -3
  324. package/styles/recurrence-editor/_layout.fluent-dark.scss +0 -3
  325. package/styles/recurrence-editor/_layout.fluent.scss +0 -3
  326. package/styles/recurrence-editor/_layout.fluent2.scss +0 -3
  327. package/styles/recurrence-editor/_layout.highcontrast-light.scss +0 -3
  328. package/styles/recurrence-editor/_layout.highcontrast.scss +0 -3
  329. package/styles/recurrence-editor/_layout.material-dark.scss +0 -3
  330. package/styles/recurrence-editor/_layout.material.scss +0 -3
  331. package/styles/recurrence-editor/_layout.material3-dark.scss +0 -3
  332. package/styles/recurrence-editor/_layout.material3.scss +0 -3
  333. package/styles/recurrence-editor/_layout.tailwind-dark.scss +0 -3
  334. package/styles/recurrence-editor/_layout.tailwind.scss +0 -3
  335. package/styles/recurrence-editor/_layout.tailwind3.scss +0 -3
  336. package/styles/recurrence-editor/_theme-variables.bds.scss +0 -1
  337. package/styles/recurrence-editor/_theme-variables.bootstrap-dark.scss +0 -1
  338. package/styles/recurrence-editor/_theme-variables.bootstrap.scss +0 -1
  339. package/styles/recurrence-editor/_theme-variables.bootstrap4.scss +0 -1
  340. package/styles/recurrence-editor/_theme-variables.bootstrap5-dark.scss +0 -1
  341. package/styles/recurrence-editor/_theme-variables.bootstrap5.3.scss +0 -1
  342. package/styles/recurrence-editor/_theme-variables.bootstrap5.scss +0 -1
  343. package/styles/recurrence-editor/_theme-variables.fabric-dark.scss +0 -1
  344. package/styles/recurrence-editor/_theme-variables.fabric.scss +0 -1
  345. package/styles/recurrence-editor/_theme-variables.fluent-dark.scss +0 -1
  346. package/styles/recurrence-editor/_theme-variables.fluent.scss +0 -1
  347. package/styles/recurrence-editor/_theme-variables.fluent2.scss +0 -1
  348. package/styles/recurrence-editor/_theme-variables.highcontrast-light.scss +0 -1
  349. package/styles/recurrence-editor/_theme-variables.highcontrast.scss +0 -1
  350. package/styles/recurrence-editor/_theme-variables.material-dark.scss +0 -1
  351. package/styles/recurrence-editor/_theme-variables.material.scss +0 -1
  352. package/styles/recurrence-editor/_theme-variables.material3-dark.scss +0 -1
  353. package/styles/recurrence-editor/_theme-variables.material3.scss +0 -1
  354. package/styles/recurrence-editor/_theme-variables.tailwind-dark.scss +0 -1
  355. package/styles/recurrence-editor/_theme-variables.tailwind.scss +0 -1
  356. package/styles/recurrence-editor/_theme-variables.tailwind3.scss +0 -1
  357. package/styles/recurrence-editor/_theme.bds.scss +0 -1
  358. package/styles/recurrence-editor/_theme.bootstrap-dark.scss +0 -1
  359. package/styles/recurrence-editor/_theme.bootstrap.scss +0 -1
  360. package/styles/recurrence-editor/_theme.bootstrap4.scss +0 -1
  361. package/styles/recurrence-editor/_theme.bootstrap5-dark.scss +0 -1
  362. package/styles/recurrence-editor/_theme.bootstrap5.3.scss +0 -1
  363. package/styles/recurrence-editor/_theme.bootstrap5.scss +0 -1
  364. package/styles/recurrence-editor/_theme.fabric-dark.scss +0 -1
  365. package/styles/recurrence-editor/_theme.fabric.scss +0 -1
  366. package/styles/recurrence-editor/_theme.fluent-dark.scss +0 -1
  367. package/styles/recurrence-editor/_theme.fluent.scss +0 -1
  368. package/styles/recurrence-editor/_theme.fluent2.scss +0 -1
  369. package/styles/recurrence-editor/_theme.highcontrast-light.scss +0 -1
  370. package/styles/recurrence-editor/_theme.highcontrast.scss +0 -1
  371. package/styles/recurrence-editor/_theme.material-dark.scss +0 -1
  372. package/styles/recurrence-editor/_theme.material.scss +0 -1
  373. package/styles/recurrence-editor/_theme.material3-dark.scss +0 -1
  374. package/styles/recurrence-editor/_theme.material3.scss +0 -1
  375. package/styles/recurrence-editor/_theme.tailwind-dark.scss +0 -1
  376. package/styles/recurrence-editor/_theme.tailwind.scss +0 -1
  377. package/styles/recurrence-editor/_theme.tailwind3.scss +0 -1
  378. package/styles/schedule/_all.bds.scss +0 -2
  379. package/styles/schedule/_all.bootstrap-dark.scss +0 -2
  380. package/styles/schedule/_all.bootstrap.scss +0 -2
  381. package/styles/schedule/_all.bootstrap4.scss +0 -2
  382. package/styles/schedule/_all.bootstrap5-dark.scss +0 -2
  383. package/styles/schedule/_all.bootstrap5.3.scss +0 -2
  384. package/styles/schedule/_all.bootstrap5.scss +0 -2
  385. package/styles/schedule/_all.fabric-dark.scss +0 -2
  386. package/styles/schedule/_all.fabric.scss +0 -2
  387. package/styles/schedule/_all.fluent-dark.scss +0 -2
  388. package/styles/schedule/_all.fluent.scss +0 -2
  389. package/styles/schedule/_all.fluent2.scss +0 -2
  390. package/styles/schedule/_all.highcontrast-light.scss +0 -2
  391. package/styles/schedule/_all.highcontrast.scss +0 -2
  392. package/styles/schedule/_all.material-dark.scss +0 -2
  393. package/styles/schedule/_all.material.scss +0 -2
  394. package/styles/schedule/_all.material3-dark.scss +0 -2
  395. package/styles/schedule/_all.material3.scss +0 -2
  396. package/styles/schedule/_all.tailwind-dark.scss +0 -2
  397. package/styles/schedule/_all.tailwind.scss +0 -2
  398. package/styles/schedule/_all.tailwind3.scss +0 -2
  399. package/styles/schedule/_bigger.bds.scss +0 -3
  400. package/styles/schedule/_bigger.bootstrap-dark.scss +0 -3
  401. package/styles/schedule/_bigger.bootstrap.scss +0 -3
  402. package/styles/schedule/_bigger.bootstrap4.scss +0 -3
  403. package/styles/schedule/_bigger.bootstrap5-dark.scss +0 -3
  404. package/styles/schedule/_bigger.bootstrap5.3.scss +0 -3
  405. package/styles/schedule/_bigger.bootstrap5.scss +0 -3
  406. package/styles/schedule/_bigger.fabric-dark.scss +0 -3
  407. package/styles/schedule/_bigger.fabric.scss +0 -3
  408. package/styles/schedule/_bigger.fluent-dark.scss +0 -3
  409. package/styles/schedule/_bigger.fluent.scss +0 -3
  410. package/styles/schedule/_bigger.fluent2.scss +0 -3
  411. package/styles/schedule/_bigger.highcontrast-light.scss +0 -3
  412. package/styles/schedule/_bigger.highcontrast.scss +0 -3
  413. package/styles/schedule/_bigger.material-dark.scss +0 -3
  414. package/styles/schedule/_bigger.material.scss +0 -3
  415. package/styles/schedule/_bigger.material3-dark.scss +0 -3
  416. package/styles/schedule/_bigger.material3.scss +0 -3
  417. package/styles/schedule/_bigger.tailwind-dark.scss +0 -3
  418. package/styles/schedule/_bigger.tailwind.scss +0 -3
  419. package/styles/schedule/_bigger.tailwind3.scss +0 -3
  420. package/styles/schedule/_layout.bds.scss +0 -3
  421. package/styles/schedule/_layout.bootstrap-dark.scss +0 -3
  422. package/styles/schedule/_layout.bootstrap.scss +0 -3
  423. package/styles/schedule/_layout.bootstrap4.scss +0 -3
  424. package/styles/schedule/_layout.bootstrap5-dark.scss +0 -3
  425. package/styles/schedule/_layout.bootstrap5.3.scss +0 -3
  426. package/styles/schedule/_layout.bootstrap5.scss +0 -3
  427. package/styles/schedule/_layout.fabric-dark.scss +0 -3
  428. package/styles/schedule/_layout.fabric.scss +0 -3
  429. package/styles/schedule/_layout.fluent-dark.scss +0 -3
  430. package/styles/schedule/_layout.fluent.scss +0 -3
  431. package/styles/schedule/_layout.fluent2.scss +0 -3
  432. package/styles/schedule/_layout.highcontrast-light.scss +0 -3
  433. package/styles/schedule/_layout.highcontrast.scss +0 -3
  434. package/styles/schedule/_layout.material-dark.scss +0 -3
  435. package/styles/schedule/_layout.material.scss +0 -3
  436. package/styles/schedule/_layout.material3-dark.scss +0 -3
  437. package/styles/schedule/_layout.material3.scss +0 -3
  438. package/styles/schedule/_layout.tailwind-dark.scss +0 -3
  439. package/styles/schedule/_layout.tailwind.scss +0 -3
  440. package/styles/schedule/_layout.tailwind3.scss +0 -3
  441. package/styles/schedule/_theme-variables.bds.scss +0 -1
  442. package/styles/schedule/_theme-variables.bootstrap-dark.scss +0 -1
  443. package/styles/schedule/_theme-variables.bootstrap.scss +0 -1
  444. package/styles/schedule/_theme-variables.bootstrap4.scss +0 -1
  445. package/styles/schedule/_theme-variables.bootstrap5-dark.scss +0 -1
  446. package/styles/schedule/_theme-variables.bootstrap5.3.scss +0 -1
  447. package/styles/schedule/_theme-variables.bootstrap5.scss +0 -1
  448. package/styles/schedule/_theme-variables.fabric-dark.scss +0 -1
  449. package/styles/schedule/_theme-variables.fabric.scss +0 -1
  450. package/styles/schedule/_theme-variables.fluent-dark.scss +0 -1
  451. package/styles/schedule/_theme-variables.fluent.scss +0 -1
  452. package/styles/schedule/_theme-variables.fluent2.scss +0 -1
  453. package/styles/schedule/_theme-variables.highcontrast-light.scss +0 -1
  454. package/styles/schedule/_theme-variables.highcontrast.scss +0 -1
  455. package/styles/schedule/_theme-variables.material-dark.scss +0 -1
  456. package/styles/schedule/_theme-variables.material.scss +0 -1
  457. package/styles/schedule/_theme-variables.material3-dark.scss +0 -1
  458. package/styles/schedule/_theme-variables.material3.scss +0 -1
  459. package/styles/schedule/_theme-variables.tailwind-dark.scss +0 -1
  460. package/styles/schedule/_theme-variables.tailwind.scss +0 -1
  461. package/styles/schedule/_theme-variables.tailwind3.scss +0 -1
  462. package/styles/schedule/_theme.bds.scss +0 -4
  463. package/styles/schedule/_theme.bootstrap-dark.scss +0 -4
  464. package/styles/schedule/_theme.bootstrap.scss +0 -4
  465. package/styles/schedule/_theme.bootstrap4.scss +0 -4
  466. package/styles/schedule/_theme.bootstrap5-dark.scss +0 -4
  467. package/styles/schedule/_theme.bootstrap5.3.scss +0 -4
  468. package/styles/schedule/_theme.bootstrap5.scss +0 -4
  469. package/styles/schedule/_theme.fabric-dark.scss +0 -4
  470. package/styles/schedule/_theme.fabric.scss +0 -4
  471. package/styles/schedule/_theme.fluent-dark.scss +0 -4
  472. package/styles/schedule/_theme.fluent.scss +0 -4
  473. package/styles/schedule/_theme.fluent2.scss +0 -4
  474. package/styles/schedule/_theme.highcontrast-light.scss +0 -4
  475. package/styles/schedule/_theme.highcontrast.scss +0 -4
  476. package/styles/schedule/_theme.material-dark.scss +0 -4
  477. package/styles/schedule/_theme.material.scss +0 -4
  478. package/styles/schedule/_theme.material3-dark.scss +0 -4
  479. package/styles/schedule/_theme.material3.scss +0 -4
  480. package/styles/schedule/_theme.tailwind-dark.scss +0 -4
  481. package/styles/schedule/_theme.tailwind.scss +0 -4
  482. package/styles/schedule/_theme.tailwind3.scss +0 -4
@@ -37,6 +37,7 @@ var VerticalEvent = /** @class */ (function (_super) {
37
37
  _this.allDayLevel = 0;
38
38
  _this.startHour = _this.getStartEndHours(_this.parent.activeViewOptions.startHour);
39
39
  _this.endHour = _this.getStartEndHours(_this.parent.activeViewOptions.endHour);
40
+ _this.moreIndicatorsMap = [];
40
41
  _this.element = _this.parent.activeView.getPanel();
41
42
  _this.fields = _this.parent.eventFields;
42
43
  _this.animation = new Animation({ progress: _this.animationUiUpdate.bind(_this) });
@@ -214,6 +215,168 @@ var VerticalEvent = /** @class */ (function (_super) {
214
215
  this.appendEvent(eventObj, appointmentElement, index, appLeft);
215
216
  }
216
217
  };
218
+ VerticalEvent.prototype.filterEventsByOverlapGroups = function (eventList, maxEventStack, groupIndex, dayIndex, dayCount, resource) {
219
+ if (maxEventStack === 0 || eventList.length === 0) {
220
+ return eventList;
221
+ }
222
+ for (var i = 0; i < eventList.length; i++) {
223
+ var item = eventList[parseInt(i.toString(), 10)];
224
+ if (!item.__id) {
225
+ item.__id = i;
226
+ }
227
+ }
228
+ var overlapGroupList = [];
229
+ for (var _i = 0, eventList_1 = eventList; _i < eventList_1.length; _i++) {
230
+ var currentEvent = eventList_1[_i];
231
+ var seedGroup = [currentEvent];
232
+ var overlapGroup = [];
233
+ var _loop_1 = function (comparedEvent) {
234
+ var isOverlapping = seedGroup.some(function (e) {
235
+ return !(comparedEvent.StartTime >= e.EndTime || comparedEvent.EndTime <= e.StartTime);
236
+ });
237
+ if (isOverlapping) {
238
+ overlapGroup.push(comparedEvent);
239
+ }
240
+ };
241
+ for (var _a = 0, eventList_2 = eventList; _a < eventList_2.length; _a++) {
242
+ var comparedEvent = eventList_2[_a];
243
+ _loop_1(comparedEvent);
244
+ }
245
+ overlapGroupList.push(overlapGroup);
246
+ }
247
+ var finalEventList = [];
248
+ var currentVisibleEventBuffer = [];
249
+ var visibleEventIdSet = new Set();
250
+ var hiddenEventIdSet = new Set();
251
+ var indicatorsForThisSlot = [];
252
+ for (var _b = 0, overlapGroupList_1 = overlapGroupList; _b < overlapGroupList_1.length; _b++) {
253
+ var overlapGroup = overlapGroupList_1[_b];
254
+ var orderedGroupEvents = overlapGroup
255
+ .slice()
256
+ .sort(function (a, b) {
257
+ var startDiff = a.StartTime.getTime() - b.StartTime.getTime();
258
+ return startDiff !== 0 ? startDiff : (a.__id - b.__id);
259
+ });
260
+ var _loop_2 = function (candidateEvent) {
261
+ var overlappingVisibleEvents = currentVisibleEventBuffer.filter(function (e) { return !(candidateEvent.StartTime >= e.EndTime || candidateEvent.EndTime <= e.StartTime); });
262
+ var eventId = candidateEvent.__id;
263
+ if (!visibleEventIdSet.has(eventId) && !hiddenEventIdSet.has(eventId) && overlappingVisibleEvents.length < maxEventStack) {
264
+ finalEventList.push(candidateEvent);
265
+ currentVisibleEventBuffer.push(candidateEvent);
266
+ visibleEventIdSet.add(eventId);
267
+ }
268
+ };
269
+ for (var _c = 0, orderedGroupEvents_1 = orderedGroupEvents; _c < orderedGroupEvents_1.length; _c++) {
270
+ var candidateEvent = orderedGroupEvents_1[_c];
271
+ _loop_2(candidateEvent);
272
+ }
273
+ var hiddenEventsInGroup = overlapGroup
274
+ .filter(function (e) { return !visibleEventIdSet.has(e.__id) && !hiddenEventIdSet.has(e.__id); });
275
+ if (hiddenEventsInGroup.length > 0) {
276
+ var indicatorStartTime = new Date(Math.min.apply(Math, hiddenEventsInGroup.map(function (e) {
277
+ return e.StartTime.getTime();
278
+ })));
279
+ var indicatorEndTime = new Date(Math.max.apply(Math, hiddenEventsInGroup.map(function (e) {
280
+ return e.EndTime.getTime();
281
+ })));
282
+ var indicatorKey = indicatorStartTime.getTime() + "_" + indicatorEndTime.getTime() + "_" + groupIndex + "_" + dayCount + "_" + resource;
283
+ var indicatorInfo = {
284
+ hiddenEvents: hiddenEventsInGroup,
285
+ hiddenEventCount: hiddenEventsInGroup.length,
286
+ startTime: indicatorStartTime,
287
+ endTime: indicatorEndTime,
288
+ groupIndex: groupIndex,
289
+ dayIndex: dayIndex,
290
+ dayCount: dayCount,
291
+ resource: resource
292
+ };
293
+ indicatorsForThisSlot.push({ key: indicatorKey, info: indicatorInfo });
294
+ for (var _d = 0, hiddenEventsInGroup_1 = hiddenEventsInGroup; _d < hiddenEventsInGroup_1.length; _d++) {
295
+ var hiddenEvent = hiddenEventsInGroup_1[_d];
296
+ hiddenEventIdSet.add(hiddenEvent.__id);
297
+ }
298
+ }
299
+ }
300
+ for (var _e = 0, eventList_3 = eventList; _e < eventList_3.length; _e++) {
301
+ var event_2 = eventList_3[_e];
302
+ if (!visibleEventIdSet.has(event_2.__id) && !hiddenEventIdSet.has(event_2.__id)) {
303
+ finalEventList.push(event_2);
304
+ visibleEventIdSet.add(event_2.__id);
305
+ }
306
+ }
307
+ for (var _f = 0, indicatorsForThisSlot_1 = indicatorsForThisSlot; _f < indicatorsForThisSlot_1.length; _f++) {
308
+ var indicator = indicatorsForThisSlot_1[_f];
309
+ this.moreIndicatorsMap.push({ key: indicator.key, info: indicator.info });
310
+ }
311
+ for (var _g = 0, finalEventList_1 = finalEventList; _g < finalEventList_1.length; _g++) {
312
+ var event_3 = finalEventList_1[_g];
313
+ delete event_3.__id;
314
+ }
315
+ return finalEventList;
316
+ };
317
+ VerticalEvent.prototype.renderMoreIndicator = function (indicatorInfo, dayIndex, resource, dayCount) {
318
+ var hiddenCount = indicatorInfo.hiddenEventCount || 0;
319
+ if (hiddenCount === 0) {
320
+ return;
321
+ }
322
+ var index = this.getDayIndex(dayIndex, resource, dayCount);
323
+ var indicatorKey = indicatorInfo.startTime.getTime() + "_" + indicatorInfo.endTime.getTime() + "_" + indicatorInfo.groupIndex + "_" + indicatorInfo.dayCount + "_" + indicatorInfo.resource;
324
+ var appointmentWrapper = this.element.querySelector('.' + cls.APPOINTMENT_WRAPPER_CLASS + '[id="' + cls.APPOINTMENT_WRAPPER_CLASS + '-' + index + '"]');
325
+ if (appointmentWrapper) {
326
+ var existingIndicator = appointmentWrapper.querySelector("[data-indicator-key=\"" + indicatorKey + "\"]");
327
+ if (existingIndicator) {
328
+ EventHandler.remove(existingIndicator, 'click', this.onMoreIndicatorClick);
329
+ remove(existingIndicator);
330
+ }
331
+ }
332
+ var indicatorElement = createElement('div', {
333
+ className: cls.MAX_EVENT_STACK_INDICATOR_CLASS + ' ' + cls.MORE_INDICATOR_CLASS,
334
+ attrs: {
335
+ 'tabindex': '0',
336
+ 'role': 'button',
337
+ 'aria-label': hiddenCount + " more events",
338
+ 'data-indicator-key': indicatorKey,
339
+ 'data-hidden-count': hiddenCount.toString()
340
+ }
341
+ });
342
+ var startDate = indicatorInfo.startTime;
343
+ var endDate = indicatorInfo.endTime;
344
+ var top = this.getTopValue(startDate);
345
+ var height = this.getHeight(startDate, endDate);
346
+ setStyleAttribute(indicatorElement, {
347
+ 'top': top + 'px',
348
+ 'height': height + 'px'
349
+ });
350
+ if (this.parent.enableRtl) {
351
+ indicatorElement.style.left = '0%';
352
+ }
353
+ else {
354
+ indicatorElement.style.right = '0%';
355
+ }
356
+ indicatorElement.innerHTML = "+" + hiddenCount;
357
+ EventHandler.add(indicatorElement, 'click', this.onMoreIndicatorClick, this);
358
+ appointmentWrapper.appendChild(indicatorElement);
359
+ };
360
+ VerticalEvent.prototype.onMoreIndicatorClick = function (e) {
361
+ var target = e.target;
362
+ var indicatorKey = target.getAttribute('data-indicator-key');
363
+ if (indicatorKey) {
364
+ var indicator = this.moreIndicatorsMap.find(function (item) { return item.key === indicatorKey; });
365
+ if (indicator) {
366
+ var indicatorInfo = indicator.info;
367
+ var hiddenEvents = indicatorInfo.hiddenEvents;
368
+ this.showMorePopup(hiddenEvents, indicatorInfo.startTime, indicatorInfo.endTime, e);
369
+ }
370
+ }
371
+ };
372
+ VerticalEvent.prototype.showMorePopup = function (hiddenEvents, startDate, endDate, e) {
373
+ if (this.parent.quickPopup) {
374
+ var target = closest(e.target, '.' + cls.MORE_INDICATOR_CLASS);
375
+ var groupIndex = target.getAttribute('data-group-index');
376
+ var moreArgs = { date: startDate, event: hiddenEvents, element: e.target };
377
+ this.parent.quickPopup.moreEventClick(moreArgs, endDate, groupIndex);
378
+ }
379
+ };
217
380
  VerticalEvent.prototype.renderEvents = function (eventType) {
218
381
  removeClass(this.allDayElement, cls.ALLDAY_ROW_ANIMATE_CLASS);
219
382
  var eventCollection = (eventType === 'allDayEvents') ? this.sortByDateTime(this.allDayEvents) : undefined;
@@ -222,7 +385,7 @@ var VerticalEvent = /** @class */ (function (_super) {
222
385
  var isRender;
223
386
  var appHeight = eventType === 'allDayEvents' ? this.parent.getElementHeightFromClass(this.element.querySelector('.' + cls.ALLDAY_APPOINTMENT_WRAPPER_CLASS), cls.APPOINTMENT_CLASS) : 0;
224
387
  var allDayRowTop = eventType === 'allDayEvents' && this.allDayElement.length > 0 ? this.allDayElement[0].offsetTop : 0;
225
- var _loop_1 = function (resource) {
388
+ var _loop_3 = function (resource) {
226
389
  isRender = true;
227
390
  if (this_1.parent.crudModule && this_1.parent.crudModule.crudObj.isCrudAction && eventType !== 'allDayEvents'
228
391
  && !this_1.parent.uiStateValues.isGroupAdaptive) {
@@ -242,36 +405,127 @@ var VerticalEvent = /** @class */ (function (_super) {
242
405
  var endDate = util.resetTime(util.addDays(renderDates[parseInt(day.toString(), 10)], 1));
243
406
  var filterEvents = this_1.filterEvents(startDate, endDate, eventCollection, this_1.resources[parseInt(resource.toString(), 10)]);
244
407
  if (isRender) {
245
- for (var _i = 0, filterEvents_2 = filterEvents; _i < filterEvents_2.length; _i++) {
246
- var event_2 = filterEvents_2[_i];
247
- if (this_1.parent.resourceBase) {
248
- this_1.setValues(event_2, resource);
408
+ var maxEventStack = this_1.parent.activeViewOptions.maxEventStack || 0;
409
+ if (maxEventStack > 0 && !this_1.parent.eventSettings.enableMaxHeight) {
410
+ var normalEvents = [];
411
+ var allDayEventsInDay = [];
412
+ for (var _i = 0, filterEvents_2 = filterEvents; _i < filterEvents_2.length; _i++) {
413
+ var event_4 = filterEvents_2[_i];
414
+ if (this_1.isAllDayAppointment(event_4)) {
415
+ allDayEventsInDay.push(event_4);
416
+ }
417
+ else {
418
+ normalEvents.push(event_4);
419
+ }
249
420
  }
250
- if (eventType === 'allDayEvents') {
251
- this_1.renderAllDayEvents(event_2, day, resource, dateCount, false, allDayRowTop, appHeight);
421
+ var finalEventList = [];
422
+ var currentDayIndicators = [];
423
+ if (normalEvents.length > 0) {
424
+ finalEventList =
425
+ this_1.filterEventsByOverlapGroups(normalEvents, maxEventStack, parseInt(resource.toString(), 10), day, dateCount, parseInt(resource.toString(), 10));
426
+ for (var _a = 0, _b = this_1.moreIndicatorsMap; _a < _b.length; _a++) {
427
+ var indicator = _b[_a];
428
+ var indicatorInfo = indicator.info;
429
+ if (indicatorInfo.dayIndex === day && indicatorInfo.dayCount === dateCount &&
430
+ indicatorInfo.resource === parseInt(resource.toString(), 10)) {
431
+ currentDayIndicators.push(indicator);
432
+ }
433
+ }
252
434
  }
253
435
  else {
254
- if (this_1.isAllDayAppointment(event_2)) {
255
- this_1.allDayEvents.push(extend({}, event_2, null, true));
436
+ finalEventList = normalEvents;
437
+ }
438
+ for (var _c = 0, allDayEventsInDay_1 = allDayEventsInDay; _c < allDayEventsInDay_1.length; _c++) {
439
+ var event_5 = allDayEventsInDay_1[_c];
440
+ if (this_1.parent.resourceBase) {
441
+ this_1.setValues(event_5, resource);
442
+ }
443
+ if (eventType === 'allDayEvents') {
444
+ this_1.renderAllDayEvents(event_5, day, resource, dateCount, false, allDayRowTop, appHeight);
445
+ }
446
+ else {
447
+ this_1.allDayEvents.push(extend({}, event_5, null, true));
448
+ }
449
+ this_1.cssClass = null;
450
+ this_1.groupOrder = null;
451
+ }
452
+ for (var _d = 0, finalEventList_2 = finalEventList; _d < finalEventList_2.length; _d++) {
453
+ var event_6 = finalEventList_2[_d];
454
+ if (this_1.parent.resourceBase) {
455
+ this_1.setValues(event_6, resource);
456
+ }
457
+ if (eventType === 'allDayEvents') {
458
+ if (!this_1.isAllDayAppointment(event_6)) {
459
+ continue;
460
+ }
256
461
  }
257
462
  else {
258
463
  if (this_1.parent.eventSettings.enableMaxHeight) {
259
- if (this_1.getOverlapIndex(event_2, day, false, resource) > 0) {
464
+ if (this_1.getOverlapIndex(event_6, day, false, resource) > 0) {
260
465
  continue;
261
466
  }
262
467
  }
263
- this_1.renderNormalEvents(event_2, day, resource, dateCount);
468
+ this_1.renderNormalEvents(event_6, day, resource, dateCount);
469
+ var appointmentWrapper = this_1.element.querySelector('.' + cls.APPOINTMENT_WRAPPER_CLASS + '[id="' + cls.APPOINTMENT_WRAPPER_CLASS + '-' + dateCount + '"]');
470
+ if (appointmentWrapper) {
471
+ var existingIndicators = [].slice.call(appointmentWrapper.querySelectorAll('.' + cls.MORE_INDICATOR_CLASS));
472
+ var _loop_4 = function (existingIndicator) {
473
+ var indicatorKey = existingIndicator.getAttribute('data-indicator-key');
474
+ var foundIndicator = currentDayIndicators
475
+ .find(function (item) { return item.key === indicatorKey; });
476
+ if (!foundIndicator) {
477
+ EventHandler.remove(existingIndicator, 'click', this_1.onMoreIndicatorClick);
478
+ remove(existingIndicator);
479
+ }
480
+ };
481
+ for (var _e = 0, existingIndicators_1 = existingIndicators; _e < existingIndicators_1.length; _e++) {
482
+ var existingIndicator = existingIndicators_1[_e];
483
+ _loop_4(existingIndicator);
484
+ }
485
+ }
264
486
  }
487
+ this_1.cssClass = null;
488
+ this_1.groupOrder = null;
489
+ }
490
+ for (var _f = 0, currentDayIndicators_1 = currentDayIndicators; _f < currentDayIndicators_1.length; _f++) {
491
+ var indicator = currentDayIndicators_1[_f];
492
+ var indicatorInfo = indicator.info;
493
+ this_1.renderMoreIndicator(indicatorInfo, day, resource, dateCount);
494
+ }
495
+ }
496
+ else {
497
+ this_1.cleanupMoreIndicators();
498
+ for (var _g = 0, filterEvents_3 = filterEvents; _g < filterEvents_3.length; _g++) {
499
+ var event_7 = filterEvents_3[_g];
500
+ if (this_1.parent.resourceBase) {
501
+ this_1.setValues(event_7, resource);
502
+ }
503
+ if (eventType === 'allDayEvents') {
504
+ this_1.renderAllDayEvents(event_7, day, resource, dateCount, false, allDayRowTop, appHeight);
505
+ }
506
+ else {
507
+ if (this_1.isAllDayAppointment(event_7)) {
508
+ this_1.allDayEvents.push(extend({}, event_7, null, true));
509
+ }
510
+ else {
511
+ if (this_1.parent.eventSettings.enableMaxHeight) {
512
+ if (this_1.getOverlapIndex(event_7, day, false, resource) > 0) {
513
+ continue;
514
+ }
515
+ }
516
+ this_1.renderNormalEvents(event_7, day, resource, dateCount);
517
+ }
518
+ }
519
+ this_1.cssClass = null;
520
+ this_1.groupOrder = null;
265
521
  }
266
- this_1.cssClass = null;
267
- this_1.groupOrder = null;
268
522
  }
269
523
  }
270
524
  else {
271
- for (var _a = 0, filterEvents_3 = filterEvents; _a < filterEvents_3.length; _a++) {
272
- var event_3 = filterEvents_3[_a];
273
- if (this_1.isAllDayAppointment(event_3)) {
274
- this_1.allDayEvents.push(extend({}, event_3, null, true));
525
+ for (var _h = 0, filterEvents_4 = filterEvents; _h < filterEvents_4.length; _h++) {
526
+ var event_8 = filterEvents_4[_h];
527
+ if (this_1.isAllDayAppointment(event_8)) {
528
+ this_1.allDayEvents.push(extend({}, event_8, null, true));
275
529
  }
276
530
  }
277
531
  }
@@ -281,7 +535,7 @@ var VerticalEvent = /** @class */ (function (_super) {
281
535
  var this_1 = this;
282
536
  for (var _i = 0, resources_2 = resources; _i < resources_2.length; _i++) {
283
537
  var resource = resources_2[_i];
284
- _loop_1(resource);
538
+ _loop_3(resource);
285
539
  }
286
540
  };
287
541
  VerticalEvent.prototype.getStartCount = function () {
@@ -640,7 +894,10 @@ var VerticalEvent = /** @class */ (function (_super) {
640
894
  }
641
895
  };
642
896
  VerticalEvent.prototype.getEventWidth = function () {
643
- var width = this.parent.currentView === 'Day' ? 97 : 94;
897
+ var width = (isNullOrUndefined(this.parent.activeViewOptions.maxEventStack) || this.parent.activeViewOptions.maxEventStack === 0)
898
+ ? (this.parent.currentView === 'Day' ? 97 : 94)
899
+ : (this.parent.isAdaptive ? (this.parent.currentView === 'Day' ? 75 : 50)
900
+ : (this.parent.currentView === 'Day' ? 75 : 70));
644
901
  var tempWidth = ((width - this.overlapEvents.length) / this.overlapEvents.length);
645
902
  return (tempWidth < 0 ? 0 : tempWidth) + '%';
646
903
  };
@@ -746,14 +1003,14 @@ var VerticalEvent = /** @class */ (function (_super) {
746
1003
  this.overlapList = this.overlapList.concat(appointment_1);
747
1004
  eventsList = this.overlapList;
748
1005
  for (var _i = 0, eventsList_1 = eventsList; _i < eventsList_1.length; _i++) {
749
- var event_4 = eventsList_1[_i];
750
- var record_1 = event_4;
1006
+ var event_9 = eventsList_1[_i];
1007
+ var record_1 = event_9;
751
1008
  var index = record_1.Index;
752
1009
  if (isNullOrUndefined(this.overlapEvents[parseInt(index.toString(), 10)])) {
753
- this.overlapEvents[parseInt(index.toString(), 10)] = [event_4];
1010
+ this.overlapEvents[parseInt(index.toString(), 10)] = [event_9];
754
1011
  }
755
1012
  else {
756
- this.overlapEvents[parseInt(index.toString(), 10)].push(event_4);
1013
+ this.overlapEvents[parseInt(index.toString(), 10)].push(event_9);
757
1014
  }
758
1015
  }
759
1016
  }
@@ -900,10 +1157,22 @@ var VerticalEvent = /** @class */ (function (_super) {
900
1157
  VerticalEvent.prototype.animationUiUpdate = function () {
901
1158
  this.parent.notify(events.contentReady, {});
902
1159
  };
1160
+ VerticalEvent.prototype.cleanupMoreIndicators = function () {
1161
+ if (this.element) {
1162
+ var moreIndicators = [].slice.call(this.element.querySelectorAll('.' + cls.MAX_EVENT_STACK_INDICATOR_CLASS));
1163
+ for (var _i = 0, moreIndicators_1 = moreIndicators; _i < moreIndicators_1.length; _i++) {
1164
+ var indicator = moreIndicators_1[_i];
1165
+ EventHandler.remove(indicator, 'click', this.onMoreIndicatorClick);
1166
+ remove(indicator);
1167
+ }
1168
+ }
1169
+ this.moreIndicatorsMap = null;
1170
+ };
903
1171
  VerticalEvent.prototype.destroy = function () {
904
1172
  if (!this.parent || this.parent && this.parent.isDestroyed) {
905
1173
  return;
906
1174
  }
1175
+ this.cleanupMoreIndicators();
907
1176
  this.removeEventListener();
908
1177
  this.allDayElement = null;
909
1178
  this.renderedAllDayEvents = null;
@@ -915,6 +1184,7 @@ var VerticalEvent = /** @class */ (function (_super) {
915
1184
  this.element = null;
916
1185
  this.fields = null;
917
1186
  this.animation = null;
1187
+ this.moreIndicatorsMap = null;
918
1188
  _super.prototype.destroy.call(this);
919
1189
  };
920
1190
  return VerticalEvent;
@@ -367,4 +367,17 @@ export interface ViewsModel {
367
367
  */
368
368
  enableLazyLoading?: boolean;
369
369
 
370
+ /**
371
+ * Specifies the maximum number of events to be displayed per cell in vertical views.
372
+ * This property is applicable only to Day, Week and WorkWeek views when the TimeScale option is enabled.
373
+ *
374
+ * @remarks
375
+ * - When set to 0 (default), all events are displayed without any limit, maintaining backward compatibility.
376
+ * - When set to a positive integer (e.g., 1, 2), only that many events will be visible, and remaining events are hidden.
377
+ *
378
+ * @default 0
379
+ * @aspType int
380
+ */
381
+ maxEventStack?: number;
382
+
370
383
  }
@@ -332,4 +332,16 @@ export declare class Views extends ChildProperty<Views> {
332
332
  * @default false
333
333
  */
334
334
  enableLazyLoading: boolean;
335
+ /**
336
+ * Specifies the maximum number of events to be displayed per cell in vertical views.
337
+ * This property is applicable only to Day, Week and WorkWeek views when the TimeScale option is enabled.
338
+ *
339
+ * @remarks
340
+ * - When set to 0 (default), all events are displayed without any limit, maintaining backward compatibility.
341
+ * - When set to a positive integer (e.g., 1, 2), only that many events will be visible, and remaining events are hidden.
342
+ *
343
+ * @default 0
344
+ * @aspType int
345
+ */
346
+ maxEventStack: number;
335
347
  }
@@ -134,6 +134,9 @@ var Views = /** @class */ (function (_super) {
134
134
  __decorate([
135
135
  Property(false)
136
136
  ], Views.prototype, "enableLazyLoading", void 0);
137
+ __decorate([
138
+ Property(0)
139
+ ], Views.prototype, "maxEventStack", void 0);
137
140
  return Views;
138
141
  }(ChildProperty));
139
142
  export { Views };
@@ -15,6 +15,7 @@ export declare class QuickPopups {
15
15
  private isCrudAction;
16
16
  lastEvent: Record<string, any>;
17
17
  private dialogEvent;
18
+ private morePopupHiddenEvents;
18
19
  constructor(parent: Schedule);
19
20
  private render;
20
21
  private renderQuickPopup;
@@ -16,6 +16,7 @@ var QuickPopups = /** @class */ (function () {
16
16
  function QuickPopups(parent) {
17
17
  this.isMultipleEventSelect = false;
18
18
  this.isCrudAction = false;
19
+ this.morePopupHiddenEvents = [];
19
20
  this.parent = parent;
20
21
  this.l10n = this.parent.localeObj;
21
22
  this.fieldValidator = new FieldValidator();
@@ -836,6 +837,7 @@ var QuickPopups = /** @class */ (function () {
836
837
  if (moreEventContentEle) {
837
838
  remove(moreEventContentEle);
838
839
  }
840
+ this.morePopupHiddenEvents = extend([], data.event, null, true);
839
841
  var selectedDate = ((data.date).getTime()).toString();
840
842
  var target = closest(data.element, '.' + cls.MORE_INDICATOR_CLASS + ',.' + cls.WORK_CELLS_CLASS);
841
843
  var day = this.parent.globalize.formatDate(data.date, { format: 'E', calendar: this.parent.getCalendarMode() });
@@ -881,7 +883,13 @@ var QuickPopups = /** @class */ (function () {
881
883
  }
882
884
  }
883
885
  else {
884
- this.morePopup.relateTo = closest(target, '.' + cls.WORK_CELLS_CLASS);
886
+ var isVerticalView = ['Day', 'Week', 'WorkWeek'].indexOf(this.parent.currentView) > -1 && !this.parent.activeViewOptions.timeScale.enable;
887
+ if (!isVerticalView) {
888
+ this.morePopup.relateTo = target;
889
+ }
890
+ else {
891
+ this.morePopup.relateTo = closest(target, '.' + cls.WORK_CELLS_CLASS);
892
+ }
885
893
  }
886
894
  }
887
895
  this.parent.renderTemplates(function () {
@@ -938,6 +946,7 @@ var QuickPopups = /** @class */ (function () {
938
946
  }
939
947
  };
940
948
  QuickPopups.prototype.updateMoreEventContent = function () {
949
+ var _this = this;
941
950
  if (this.morePopup.element.classList.contains('e-popup-close')) {
942
951
  return;
943
952
  }
@@ -956,6 +965,14 @@ var QuickPopups = /** @class */ (function () {
956
965
  groupOrder = data.groupOrder;
957
966
  }
958
967
  var events = this.parent.eventBase.filterEvents(startDate, endDate, this.parent.eventsProcessed, data);
968
+ var morePopupIsVerticalView = ['Day', 'Week', 'WorkWeek'].indexOf(this.parent.currentView) > -1 && this.parent.activeViewOptions.timeScale.enable;
969
+ if (morePopupIsVerticalView && this.morePopupHiddenEvents.length > 0) {
970
+ events = events.filter(function (processedEvent) {
971
+ return _this.morePopupHiddenEvents.some(function (hiddenEvent) {
972
+ return hiddenEvent[_this.parent.eventFields.id] === processedEvent[_this.parent.eventFields.id];
973
+ });
974
+ });
975
+ }
959
976
  var moreElement = this.createMoreEventList(events, groupOrder, groupIndex);
960
977
  this.morePopup.element.querySelector('.' + cls.MORE_EVENT_POPUP_CLASS).appendChild(moreElement);
961
978
  };
@@ -1275,9 +1292,14 @@ var QuickPopups = /** @class */ (function () {
1275
1292
  var popupData;
1276
1293
  if (isCellPopup) {
1277
1294
  var formvalidator = this.quickPopup.element.querySelector('.e-formvalidator');
1278
- if (this.isCrudAction && formvalidator &&
1279
- !formvalidator.ej2_instances[0].validate()) {
1280
- return;
1295
+ if (this.isCrudAction && formvalidator && !formvalidator.ej2_instances[0].validate()) {
1296
+ if (!this.parent.uiStateValues.isNavigation) {
1297
+ return;
1298
+ }
1299
+ this.isCrudAction = false;
1300
+ if (this.fieldValidator) {
1301
+ this.fieldValidator.destroyToolTip();
1302
+ }
1281
1303
  }
1282
1304
  var fields = this.parent.eventFields;
1283
1305
  var saveObj = this.parent.eventWindow.getObjectFromFormData(cls.POPUP_WRAPPER_CLASS);
@@ -1456,6 +1478,7 @@ var QuickPopups = /** @class */ (function () {
1456
1478
  this.destroyMorePopup();
1457
1479
  this.destroyQuickDialog();
1458
1480
  this.dialogEvent = null;
1481
+ this.morePopupHiddenEvents = null;
1459
1482
  this.parent = null;
1460
1483
  this.l10n = null;
1461
1484
  this.isCrudAction = null;