@syncfusion/ej2-schedule 33.2.4 → 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.
- package/dist/ej2-schedule.min.js +2 -2
- package/dist/ej2-schedule.umd.min.js +2 -2
- package/dist/ej2-schedule.umd.min.js.map +1 -1
- package/dist/es6/ej2-schedule.es2015.js +344 -27
- package/dist/es6/ej2-schedule.es2015.js.map +1 -1
- package/dist/es6/ej2-schedule.es5.js +391 -39
- package/dist/es6/ej2-schedule.es5.js.map +1 -1
- package/dist/global/ej2-schedule.min.js +2 -2
- package/dist/global/ej2-schedule.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +11 -11
- package/src/recurrence-editor/recurrence-editor.js +5 -0
- package/src/schedule/actions/action-base.js +6 -2
- package/src/schedule/base/css-constant.d.ts +2 -0
- package/src/schedule/base/css-constant.js +2 -0
- package/src/schedule/base/interface.d.ts +3 -0
- package/src/schedule/base/resource.d.ts +1 -1
- package/src/schedule/base/resource.js +7 -5
- package/src/schedule/base/schedule-model.d.ts +31 -0
- package/src/schedule/base/schedule.d.ts +33 -0
- package/src/schedule/base/schedule.js +37 -1
- package/src/schedule/event-renderer/event-base.js +4 -0
- package/src/schedule/event-renderer/inline-edit.js +2 -2
- package/src/schedule/event-renderer/month.js +8 -2
- package/src/schedule/event-renderer/vertical-view.d.ts +6 -0
- package/src/schedule/event-renderer/vertical-view.js +293 -23
- package/src/schedule/models/views-model.d.ts +13 -0
- package/src/schedule/models/views.d.ts +12 -0
- package/src/schedule/models/views.js +3 -0
- package/src/schedule/popups/quick-popups.d.ts +1 -0
- package/src/schedule/popups/quick-popups.js +27 -4
- package/styles/bds-lite.css +43 -354
- package/styles/bds-lite.scss +3 -16
- package/styles/bds.css +43 -362
- package/styles/bds.scss +5 -18
- package/styles/bootstrap-dark-lite.css +43 -88
- package/styles/bootstrap-dark-lite.scss +3 -16
- package/styles/bootstrap-dark.css +43 -88
- package/styles/bootstrap-dark.scss +5 -18
- package/styles/bootstrap-lite.css +43 -83
- package/styles/bootstrap-lite.scss +3 -16
- package/styles/bootstrap.css +43 -83
- package/styles/bootstrap.scss +5 -18
- package/styles/bootstrap4-lite.css +43 -144
- package/styles/bootstrap4-lite.scss +3 -16
- package/styles/bootstrap4.css +43 -144
- package/styles/bootstrap4.scss +5 -18
- package/styles/bootstrap5-dark-lite.css +43 -136
- package/styles/bootstrap5-dark-lite.scss +3 -16
- package/styles/bootstrap5-dark.css +43 -136
- package/styles/bootstrap5-dark.scss +5 -18
- package/styles/bootstrap5-lite.css +43 -136
- package/styles/bootstrap5-lite.scss +3 -17
- package/styles/bootstrap5.3-lite.css +58 -403
- package/styles/bootstrap5.3-lite.scss +3 -17
- package/styles/bootstrap5.3.css +60 -573
- package/styles/bootstrap5.3.scss +5 -19
- package/styles/bootstrap5.css +43 -136
- package/styles/bootstrap5.scss +5 -19
- package/styles/fabric-dark-lite.css +43 -58
- package/styles/fabric-dark-lite.scss +3 -17
- package/styles/fabric-dark.css +43 -58
- package/styles/fabric-dark.scss +5 -19
- package/styles/fabric-lite.css +43 -55
- package/styles/fabric-lite.scss +3 -17
- package/styles/fabric.css +43 -55
- package/styles/fabric.scss +5 -19
- package/styles/fluent-dark-lite.css +43 -124
- package/styles/fluent-dark-lite.scss +3 -17
- package/styles/fluent-dark.css +43 -124
- package/styles/fluent-dark.scss +5 -19
- package/styles/fluent-lite.css +43 -124
- package/styles/fluent-lite.scss +3 -17
- package/styles/fluent.css +43 -124
- package/styles/fluent.scss +5 -19
- package/styles/fluent2-lite.css +43 -695
- package/styles/fluent2-lite.scss +3 -17
- package/styles/fluent2.css +55 -879
- package/styles/fluent2.scss +5 -19
- package/styles/highcontrast-light-lite.css +43 -147
- package/styles/highcontrast-light-lite.scss +3 -17
- package/styles/highcontrast-light.css +43 -147
- package/styles/highcontrast-light.scss +5 -19
- package/styles/highcontrast-lite.css +43 -156
- package/styles/highcontrast-lite.scss +3 -17
- package/styles/highcontrast.css +43 -156
- package/styles/highcontrast.scss +5 -19
- package/styles/material-dark-lite.css +43 -135
- package/styles/material-dark-lite.scss +3 -17
- package/styles/material-dark.css +43 -135
- package/styles/material-dark.scss +5 -19
- package/styles/material-lite.css +43 -172
- package/styles/material-lite.scss +3 -16
- package/styles/material.css +43 -172
- package/styles/material.scss +5 -18
- package/styles/material3-dark-lite.css +43 -718
- package/styles/material3-dark-lite.scss +3 -17
- package/styles/material3-dark.css +53 -892
- package/styles/material3-dark.scss +5 -19
- package/styles/material3-lite.css +43 -724
- package/styles/material3-lite.scss +3 -17
- package/styles/material3.css +47 -896
- package/styles/material3.scss +5 -19
- package/styles/recurrence-editor/_all.scss +2 -2
- package/styles/recurrence-editor/_bds-definition.scss +2 -2
- package/styles/recurrence-editor/_bigger.scss +1 -1
- package/styles/recurrence-editor/_bootstrap-dark-definition.scss +2 -2
- package/styles/recurrence-editor/_bootstrap-definition.scss +2 -2
- package/styles/recurrence-editor/_bootstrap4-definition.scss +2 -2
- package/styles/recurrence-editor/_bootstrap5-dark-definition.scss +2 -2
- package/styles/recurrence-editor/_bootstrap5-definition.scss +2 -2
- package/styles/recurrence-editor/_bootstrap5.3-definition.scss +2 -2
- package/styles/recurrence-editor/_fabric-dark-definition.scss +2 -2
- package/styles/recurrence-editor/_fabric-definition.scss +2 -2
- package/styles/recurrence-editor/_fluent-dark-definition.scss +2 -2
- package/styles/recurrence-editor/_fluent-definition.scss +2 -2
- package/styles/recurrence-editor/_fluent2-definition.scss +2 -2
- package/styles/recurrence-editor/_fusionnew-definition.scss +2 -2
- package/styles/recurrence-editor/_highcontrast-definition.scss +2 -2
- package/styles/recurrence-editor/_highcontrast-light-definition.scss +2 -2
- package/styles/recurrence-editor/_layout.scss +1 -1
- package/styles/recurrence-editor/_material-dark-definition.scss +2 -2
- package/styles/recurrence-editor/_material-definition.scss +2 -2
- package/styles/recurrence-editor/_material3-dark-definition.scss +2 -2
- package/styles/recurrence-editor/_material3-definition.scss +2 -2
- package/styles/recurrence-editor/_tailwind-dark-definition.scss +2 -2
- package/styles/recurrence-editor/_tailwind-definition.scss +2 -2
- package/styles/recurrence-editor/_tailwind3-definition.scss +2 -2
- package/styles/recurrence-editor/_theme.scss +1 -1
- package/styles/recurrence-editor/_variables.scss +2 -0
- package/styles/recurrence-editor/bds.css +0 -137
- package/styles/recurrence-editor/bds.scss +2 -8
- package/styles/recurrence-editor/bootstrap-dark.css +0 -58
- package/styles/recurrence-editor/bootstrap-dark.scss +2 -8
- package/styles/recurrence-editor/bootstrap.css +0 -58
- package/styles/recurrence-editor/bootstrap.scss +2 -8
- package/styles/recurrence-editor/bootstrap4.css +0 -94
- package/styles/recurrence-editor/bootstrap4.scss +2 -8
- package/styles/recurrence-editor/bootstrap5-dark.css +0 -96
- package/styles/recurrence-editor/bootstrap5-dark.scss +2 -8
- package/styles/recurrence-editor/bootstrap5.3.css +0 -264
- package/styles/recurrence-editor/bootstrap5.3.scss +2 -8
- package/styles/recurrence-editor/bootstrap5.css +0 -96
- package/styles/recurrence-editor/bootstrap5.scss +2 -8
- package/styles/recurrence-editor/fabric-dark.css +0 -34
- package/styles/recurrence-editor/fabric-dark.scss +2 -8
- package/styles/recurrence-editor/fabric.css +0 -34
- package/styles/recurrence-editor/fabric.scss +2 -8
- package/styles/recurrence-editor/fluent-dark.css +0 -89
- package/styles/recurrence-editor/fluent-dark.scss +2 -8
- package/styles/recurrence-editor/fluent.css +0 -89
- package/styles/recurrence-editor/fluent.scss +2 -8
- package/styles/recurrence-editor/fluent2.css +0 -490
- package/styles/recurrence-editor/fluent2.scss +2 -8
- package/styles/recurrence-editor/highcontrast-light.css +0 -43
- package/styles/recurrence-editor/highcontrast-light.scss +2 -8
- package/styles/recurrence-editor/highcontrast.css +0 -43
- package/styles/recurrence-editor/highcontrast.scss +2 -8
- package/styles/recurrence-editor/material-dark.css +0 -83
- package/styles/recurrence-editor/material-dark.scss +2 -8
- package/styles/recurrence-editor/material.css +0 -87
- package/styles/recurrence-editor/material.scss +2 -8
- package/styles/recurrence-editor/material3-dark.css +0 -316
- package/styles/recurrence-editor/material3-dark.scss +2 -8
- package/styles/recurrence-editor/material3.css +0 -320
- package/styles/recurrence-editor/material3.scss +2 -8
- package/styles/recurrence-editor/tailwind-dark.css +0 -70
- package/styles/recurrence-editor/tailwind-dark.scss +2 -8
- package/styles/recurrence-editor/tailwind.css +0 -70
- package/styles/recurrence-editor/tailwind.scss +2 -8
- package/styles/recurrence-editor/tailwind3.css +0 -244
- package/styles/recurrence-editor/tailwind3.scss +2 -8
- package/styles/schedule/_all.scss +2 -2
- package/styles/schedule/_bds-definition.scss +10 -2
- package/styles/schedule/_bigger.scss +1 -1
- package/styles/schedule/_bootstrap-dark-definition.scss +9 -2
- package/styles/schedule/_bootstrap-definition.scss +9 -2
- package/styles/schedule/_bootstrap4-definition.scss +9 -2
- package/styles/schedule/_bootstrap5-dark-definition.scss +9 -2
- package/styles/schedule/_bootstrap5-definition.scss +9 -2
- package/styles/schedule/_bootstrap5.3-definition.scss +13 -5
- package/styles/schedule/_fabric-dark-definition.scss +10 -2
- package/styles/schedule/_fabric-definition.scss +9 -2
- package/styles/schedule/_fluent-dark-definition.scss +10 -2
- package/styles/schedule/_fluent-definition.scss +10 -2
- package/styles/schedule/_fluent2-definition.scss +10 -2
- package/styles/schedule/_fusionnew-definition.scss +8 -0
- package/styles/schedule/_highcontrast-definition.scss +9 -2
- package/styles/schedule/_highcontrast-light-definition.scss +9 -2
- package/styles/schedule/_layout.scss +62 -23
- package/styles/schedule/_material-dark-definition.scss +10 -2
- package/styles/schedule/_material-definition.scss +10 -2
- package/styles/schedule/_material3-dark-definition.scss +10 -2
- package/styles/schedule/_material3-definition.scss +10 -2
- package/styles/schedule/_tailwind-dark-definition.scss +10 -2
- package/styles/schedule/_tailwind-definition.scss +10 -2
- package/styles/schedule/_tailwind3-definition.scss +10 -2
- package/styles/schedule/_theme.scss +2 -2
- package/styles/schedule/_variables.scss +2 -0
- package/styles/schedule/bds.css +43 -354
- package/styles/schedule/bds.scss +2 -16
- package/styles/schedule/bootstrap-dark.css +43 -88
- package/styles/schedule/bootstrap-dark.scss +2 -16
- package/styles/schedule/bootstrap.css +43 -83
- package/styles/schedule/bootstrap.scss +2 -16
- package/styles/schedule/bootstrap4.css +43 -144
- package/styles/schedule/bootstrap4.scss +2 -16
- package/styles/schedule/bootstrap5-dark.css +43 -136
- package/styles/schedule/bootstrap5-dark.scss +2 -16
- package/styles/schedule/bootstrap5.3.css +60 -405
- package/styles/schedule/bootstrap5.3.scss +2 -16
- package/styles/schedule/bootstrap5.css +43 -136
- package/styles/schedule/bootstrap5.scss +2 -16
- package/styles/schedule/fabric-dark.css +43 -58
- package/styles/schedule/fabric-dark.scss +2 -16
- package/styles/schedule/fabric.css +43 -55
- package/styles/schedule/fabric.scss +2 -16
- package/styles/schedule/fluent-dark.css +43 -124
- package/styles/schedule/fluent-dark.scss +2 -16
- package/styles/schedule/fluent.css +43 -124
- package/styles/schedule/fluent.scss +2 -16
- package/styles/schedule/fluent2.css +43 -695
- package/styles/schedule/fluent2.scss +2 -16
- package/styles/schedule/highcontrast-light.css +43 -147
- package/styles/schedule/highcontrast-light.scss +2 -16
- package/styles/schedule/highcontrast.css +43 -156
- package/styles/schedule/highcontrast.scss +2 -16
- package/styles/schedule/icons/_bds.scss +1 -1
- package/styles/schedule/icons/_bootstrap-dark.scss +1 -1
- package/styles/schedule/icons/_bootstrap.scss +1 -1
- package/styles/schedule/icons/_bootstrap4.scss +1 -1
- package/styles/schedule/icons/_bootstrap5.3.scss +1 -1
- package/styles/schedule/icons/_bootstrap5.scss +1 -1
- package/styles/schedule/icons/_fabric-dark.scss +1 -1
- package/styles/schedule/icons/_fabric.scss +1 -1
- package/styles/schedule/icons/_fluent.scss +1 -1
- package/styles/schedule/icons/_fluent2.scss +1 -1
- package/styles/schedule/icons/_fusionnew.scss +1 -1
- package/styles/schedule/icons/_highcontrast-light.scss +1 -1
- package/styles/schedule/icons/_highcontrast.scss +1 -1
- package/styles/schedule/icons/_material-dark.scss +1 -1
- package/styles/schedule/icons/_material.scss +1 -1
- package/styles/schedule/icons/_material3.scss +1 -1
- package/styles/schedule/icons/_tailwind.scss +1 -1
- package/styles/schedule/icons/_tailwind3.scss +1 -1
- package/styles/schedule/material-dark.css +43 -135
- package/styles/schedule/material-dark.scss +2 -16
- package/styles/schedule/material.css +43 -172
- package/styles/schedule/material.scss +2 -16
- package/styles/schedule/material3-dark.css +43 -718
- package/styles/schedule/material3-dark.scss +2 -16
- package/styles/schedule/material3.css +43 -724
- package/styles/schedule/material3.scss +2 -16
- package/styles/schedule/tailwind-dark.css +43 -101
- package/styles/schedule/tailwind-dark.scss +2 -16
- package/styles/schedule/tailwind.css +43 -101
- package/styles/schedule/tailwind.scss +2 -16
- package/styles/schedule/tailwind3.css +43 -414
- package/styles/schedule/tailwind3.scss +2 -16
- package/styles/tailwind-dark-lite.css +43 -101
- package/styles/tailwind-dark-lite.scss +3 -17
- package/styles/tailwind-dark.css +43 -101
- package/styles/tailwind-dark.scss +5 -19
- package/styles/tailwind-lite.css +43 -101
- package/styles/tailwind-lite.scss +3 -17
- package/styles/tailwind.css +43 -101
- package/styles/tailwind.scss +5 -19
- package/styles/tailwind3-lite.css +43 -414
- package/styles/tailwind3-lite.scss +3 -17
- package/styles/tailwind3.css +43 -562
- package/styles/tailwind3.scss +5 -19
- package/styles/recurrence-editor/_all.bds.scss +0 -2
- package/styles/recurrence-editor/_all.bootstrap-dark.scss +0 -2
- package/styles/recurrence-editor/_all.bootstrap.scss +0 -2
- package/styles/recurrence-editor/_all.bootstrap4.scss +0 -2
- package/styles/recurrence-editor/_all.bootstrap5-dark.scss +0 -2
- package/styles/recurrence-editor/_all.bootstrap5.3.scss +0 -2
- package/styles/recurrence-editor/_all.bootstrap5.scss +0 -2
- package/styles/recurrence-editor/_all.fabric-dark.scss +0 -2
- package/styles/recurrence-editor/_all.fabric.scss +0 -2
- package/styles/recurrence-editor/_all.fluent-dark.scss +0 -2
- package/styles/recurrence-editor/_all.fluent.scss +0 -2
- package/styles/recurrence-editor/_all.fluent2.scss +0 -2
- package/styles/recurrence-editor/_all.highcontrast-light.scss +0 -2
- package/styles/recurrence-editor/_all.highcontrast.scss +0 -2
- package/styles/recurrence-editor/_all.material-dark.scss +0 -2
- package/styles/recurrence-editor/_all.material.scss +0 -2
- package/styles/recurrence-editor/_all.material3-dark.scss +0 -2
- package/styles/recurrence-editor/_all.material3.scss +0 -2
- package/styles/recurrence-editor/_all.tailwind-dark.scss +0 -2
- package/styles/recurrence-editor/_all.tailwind.scss +0 -2
- package/styles/recurrence-editor/_all.tailwind3.scss +0 -2
- package/styles/recurrence-editor/_bigger.bds.scss +0 -3
- package/styles/recurrence-editor/_bigger.bootstrap-dark.scss +0 -3
- package/styles/recurrence-editor/_bigger.bootstrap.scss +0 -3
- package/styles/recurrence-editor/_bigger.bootstrap4.scss +0 -3
- package/styles/recurrence-editor/_bigger.bootstrap5-dark.scss +0 -3
- package/styles/recurrence-editor/_bigger.bootstrap5.3.scss +0 -3
- package/styles/recurrence-editor/_bigger.bootstrap5.scss +0 -3
- package/styles/recurrence-editor/_bigger.fabric-dark.scss +0 -3
- package/styles/recurrence-editor/_bigger.fabric.scss +0 -3
- package/styles/recurrence-editor/_bigger.fluent-dark.scss +0 -3
- package/styles/recurrence-editor/_bigger.fluent.scss +0 -3
- package/styles/recurrence-editor/_bigger.fluent2.scss +0 -3
- package/styles/recurrence-editor/_bigger.highcontrast-light.scss +0 -3
- package/styles/recurrence-editor/_bigger.highcontrast.scss +0 -3
- package/styles/recurrence-editor/_bigger.material-dark.scss +0 -3
- package/styles/recurrence-editor/_bigger.material.scss +0 -3
- package/styles/recurrence-editor/_bigger.material3-dark.scss +0 -3
- package/styles/recurrence-editor/_bigger.material3.scss +0 -3
- package/styles/recurrence-editor/_bigger.tailwind-dark.scss +0 -3
- package/styles/recurrence-editor/_bigger.tailwind.scss +0 -3
- package/styles/recurrence-editor/_bigger.tailwind3.scss +0 -3
- package/styles/recurrence-editor/_layout.bds.scss +0 -3
- package/styles/recurrence-editor/_layout.bootstrap-dark.scss +0 -3
- package/styles/recurrence-editor/_layout.bootstrap.scss +0 -3
- package/styles/recurrence-editor/_layout.bootstrap4.scss +0 -3
- package/styles/recurrence-editor/_layout.bootstrap5-dark.scss +0 -3
- package/styles/recurrence-editor/_layout.bootstrap5.3.scss +0 -3
- package/styles/recurrence-editor/_layout.bootstrap5.scss +0 -3
- package/styles/recurrence-editor/_layout.fabric-dark.scss +0 -3
- package/styles/recurrence-editor/_layout.fabric.scss +0 -3
- package/styles/recurrence-editor/_layout.fluent-dark.scss +0 -3
- package/styles/recurrence-editor/_layout.fluent.scss +0 -3
- package/styles/recurrence-editor/_layout.fluent2.scss +0 -3
- package/styles/recurrence-editor/_layout.highcontrast-light.scss +0 -3
- package/styles/recurrence-editor/_layout.highcontrast.scss +0 -3
- package/styles/recurrence-editor/_layout.material-dark.scss +0 -3
- package/styles/recurrence-editor/_layout.material.scss +0 -3
- package/styles/recurrence-editor/_layout.material3-dark.scss +0 -3
- package/styles/recurrence-editor/_layout.material3.scss +0 -3
- package/styles/recurrence-editor/_layout.tailwind-dark.scss +0 -3
- package/styles/recurrence-editor/_layout.tailwind.scss +0 -3
- package/styles/recurrence-editor/_layout.tailwind3.scss +0 -3
- package/styles/recurrence-editor/_theme-variables.bds.scss +0 -1
- package/styles/recurrence-editor/_theme-variables.bootstrap-dark.scss +0 -1
- package/styles/recurrence-editor/_theme-variables.bootstrap.scss +0 -1
- package/styles/recurrence-editor/_theme-variables.bootstrap4.scss +0 -1
- package/styles/recurrence-editor/_theme-variables.bootstrap5-dark.scss +0 -1
- package/styles/recurrence-editor/_theme-variables.bootstrap5.3.scss +0 -1
- package/styles/recurrence-editor/_theme-variables.bootstrap5.scss +0 -1
- package/styles/recurrence-editor/_theme-variables.fabric-dark.scss +0 -1
- package/styles/recurrence-editor/_theme-variables.fabric.scss +0 -1
- package/styles/recurrence-editor/_theme-variables.fluent-dark.scss +0 -1
- package/styles/recurrence-editor/_theme-variables.fluent.scss +0 -1
- package/styles/recurrence-editor/_theme-variables.fluent2.scss +0 -1
- package/styles/recurrence-editor/_theme-variables.highcontrast-light.scss +0 -1
- package/styles/recurrence-editor/_theme-variables.highcontrast.scss +0 -1
- package/styles/recurrence-editor/_theme-variables.material-dark.scss +0 -1
- package/styles/recurrence-editor/_theme-variables.material.scss +0 -1
- package/styles/recurrence-editor/_theme-variables.material3-dark.scss +0 -1
- package/styles/recurrence-editor/_theme-variables.material3.scss +0 -1
- package/styles/recurrence-editor/_theme-variables.tailwind-dark.scss +0 -1
- package/styles/recurrence-editor/_theme-variables.tailwind.scss +0 -1
- package/styles/recurrence-editor/_theme-variables.tailwind3.scss +0 -1
- package/styles/recurrence-editor/_theme.bds.scss +0 -1
- package/styles/recurrence-editor/_theme.bootstrap-dark.scss +0 -1
- package/styles/recurrence-editor/_theme.bootstrap.scss +0 -1
- package/styles/recurrence-editor/_theme.bootstrap4.scss +0 -1
- package/styles/recurrence-editor/_theme.bootstrap5-dark.scss +0 -1
- package/styles/recurrence-editor/_theme.bootstrap5.3.scss +0 -1
- package/styles/recurrence-editor/_theme.bootstrap5.scss +0 -1
- package/styles/recurrence-editor/_theme.fabric-dark.scss +0 -1
- package/styles/recurrence-editor/_theme.fabric.scss +0 -1
- package/styles/recurrence-editor/_theme.fluent-dark.scss +0 -1
- package/styles/recurrence-editor/_theme.fluent.scss +0 -1
- package/styles/recurrence-editor/_theme.fluent2.scss +0 -1
- package/styles/recurrence-editor/_theme.highcontrast-light.scss +0 -1
- package/styles/recurrence-editor/_theme.highcontrast.scss +0 -1
- package/styles/recurrence-editor/_theme.material-dark.scss +0 -1
- package/styles/recurrence-editor/_theme.material.scss +0 -1
- package/styles/recurrence-editor/_theme.material3-dark.scss +0 -1
- package/styles/recurrence-editor/_theme.material3.scss +0 -1
- package/styles/recurrence-editor/_theme.tailwind-dark.scss +0 -1
- package/styles/recurrence-editor/_theme.tailwind.scss +0 -1
- package/styles/recurrence-editor/_theme.tailwind3.scss +0 -1
- package/styles/schedule/_all.bds.scss +0 -2
- package/styles/schedule/_all.bootstrap-dark.scss +0 -2
- package/styles/schedule/_all.bootstrap.scss +0 -2
- package/styles/schedule/_all.bootstrap4.scss +0 -2
- package/styles/schedule/_all.bootstrap5-dark.scss +0 -2
- package/styles/schedule/_all.bootstrap5.3.scss +0 -2
- package/styles/schedule/_all.bootstrap5.scss +0 -2
- package/styles/schedule/_all.fabric-dark.scss +0 -2
- package/styles/schedule/_all.fabric.scss +0 -2
- package/styles/schedule/_all.fluent-dark.scss +0 -2
- package/styles/schedule/_all.fluent.scss +0 -2
- package/styles/schedule/_all.fluent2.scss +0 -2
- package/styles/schedule/_all.highcontrast-light.scss +0 -2
- package/styles/schedule/_all.highcontrast.scss +0 -2
- package/styles/schedule/_all.material-dark.scss +0 -2
- package/styles/schedule/_all.material.scss +0 -2
- package/styles/schedule/_all.material3-dark.scss +0 -2
- package/styles/schedule/_all.material3.scss +0 -2
- package/styles/schedule/_all.tailwind-dark.scss +0 -2
- package/styles/schedule/_all.tailwind.scss +0 -2
- package/styles/schedule/_all.tailwind3.scss +0 -2
- package/styles/schedule/_bigger.bds.scss +0 -3
- package/styles/schedule/_bigger.bootstrap-dark.scss +0 -3
- package/styles/schedule/_bigger.bootstrap.scss +0 -3
- package/styles/schedule/_bigger.bootstrap4.scss +0 -3
- package/styles/schedule/_bigger.bootstrap5-dark.scss +0 -3
- package/styles/schedule/_bigger.bootstrap5.3.scss +0 -3
- package/styles/schedule/_bigger.bootstrap5.scss +0 -3
- package/styles/schedule/_bigger.fabric-dark.scss +0 -3
- package/styles/schedule/_bigger.fabric.scss +0 -3
- package/styles/schedule/_bigger.fluent-dark.scss +0 -3
- package/styles/schedule/_bigger.fluent.scss +0 -3
- package/styles/schedule/_bigger.fluent2.scss +0 -3
- package/styles/schedule/_bigger.highcontrast-light.scss +0 -3
- package/styles/schedule/_bigger.highcontrast.scss +0 -3
- package/styles/schedule/_bigger.material-dark.scss +0 -3
- package/styles/schedule/_bigger.material.scss +0 -3
- package/styles/schedule/_bigger.material3-dark.scss +0 -3
- package/styles/schedule/_bigger.material3.scss +0 -3
- package/styles/schedule/_bigger.tailwind-dark.scss +0 -3
- package/styles/schedule/_bigger.tailwind.scss +0 -3
- package/styles/schedule/_bigger.tailwind3.scss +0 -3
- package/styles/schedule/_layout.bds.scss +0 -3
- package/styles/schedule/_layout.bootstrap-dark.scss +0 -3
- package/styles/schedule/_layout.bootstrap.scss +0 -3
- package/styles/schedule/_layout.bootstrap4.scss +0 -3
- package/styles/schedule/_layout.bootstrap5-dark.scss +0 -3
- package/styles/schedule/_layout.bootstrap5.3.scss +0 -3
- package/styles/schedule/_layout.bootstrap5.scss +0 -3
- package/styles/schedule/_layout.fabric-dark.scss +0 -3
- package/styles/schedule/_layout.fabric.scss +0 -3
- package/styles/schedule/_layout.fluent-dark.scss +0 -3
- package/styles/schedule/_layout.fluent.scss +0 -3
- package/styles/schedule/_layout.fluent2.scss +0 -3
- package/styles/schedule/_layout.highcontrast-light.scss +0 -3
- package/styles/schedule/_layout.highcontrast.scss +0 -3
- package/styles/schedule/_layout.material-dark.scss +0 -3
- package/styles/schedule/_layout.material.scss +0 -3
- package/styles/schedule/_layout.material3-dark.scss +0 -3
- package/styles/schedule/_layout.material3.scss +0 -3
- package/styles/schedule/_layout.tailwind-dark.scss +0 -3
- package/styles/schedule/_layout.tailwind.scss +0 -3
- package/styles/schedule/_layout.tailwind3.scss +0 -3
- package/styles/schedule/_theme-variables.bds.scss +0 -1
- package/styles/schedule/_theme-variables.bootstrap-dark.scss +0 -1
- package/styles/schedule/_theme-variables.bootstrap.scss +0 -1
- package/styles/schedule/_theme-variables.bootstrap4.scss +0 -1
- package/styles/schedule/_theme-variables.bootstrap5-dark.scss +0 -1
- package/styles/schedule/_theme-variables.bootstrap5.3.scss +0 -1
- package/styles/schedule/_theme-variables.bootstrap5.scss +0 -1
- package/styles/schedule/_theme-variables.fabric-dark.scss +0 -1
- package/styles/schedule/_theme-variables.fabric.scss +0 -1
- package/styles/schedule/_theme-variables.fluent-dark.scss +0 -1
- package/styles/schedule/_theme-variables.fluent.scss +0 -1
- package/styles/schedule/_theme-variables.fluent2.scss +0 -1
- package/styles/schedule/_theme-variables.highcontrast-light.scss +0 -1
- package/styles/schedule/_theme-variables.highcontrast.scss +0 -1
- package/styles/schedule/_theme-variables.material-dark.scss +0 -1
- package/styles/schedule/_theme-variables.material.scss +0 -1
- package/styles/schedule/_theme-variables.material3-dark.scss +0 -1
- package/styles/schedule/_theme-variables.material3.scss +0 -1
- package/styles/schedule/_theme-variables.tailwind-dark.scss +0 -1
- package/styles/schedule/_theme-variables.tailwind.scss +0 -1
- package/styles/schedule/_theme-variables.tailwind3.scss +0 -1
- package/styles/schedule/_theme.bds.scss +0 -4
- package/styles/schedule/_theme.bootstrap-dark.scss +0 -4
- package/styles/schedule/_theme.bootstrap.scss +0 -4
- package/styles/schedule/_theme.bootstrap4.scss +0 -4
- package/styles/schedule/_theme.bootstrap5-dark.scss +0 -4
- package/styles/schedule/_theme.bootstrap5.3.scss +0 -4
- package/styles/schedule/_theme.bootstrap5.scss +0 -4
- package/styles/schedule/_theme.fabric-dark.scss +0 -4
- package/styles/schedule/_theme.fabric.scss +0 -4
- package/styles/schedule/_theme.fluent-dark.scss +0 -4
- package/styles/schedule/_theme.fluent.scss +0 -4
- package/styles/schedule/_theme.fluent2.scss +0 -4
- package/styles/schedule/_theme.highcontrast-light.scss +0 -4
- package/styles/schedule/_theme.highcontrast.scss +0 -4
- package/styles/schedule/_theme.material-dark.scss +0 -4
- package/styles/schedule/_theme.material.scss +0 -4
- package/styles/schedule/_theme.material3-dark.scss +0 -4
- package/styles/schedule/_theme.material3.scss +0 -4
- package/styles/schedule/_theme.tailwind-dark.scss +0 -4
- package/styles/schedule/_theme.tailwind.scss +0 -4
- package/styles/schedule/_theme.tailwind3.scss +0 -4
|
@@ -832,6 +832,8 @@ const APPOINTMENT_ROW_COLLAPSE_CLASS = 'e-appointment-collapse';
|
|
|
832
832
|
/** @private */
|
|
833
833
|
const MORE_INDICATOR_CLASS = 'e-more-indicator';
|
|
834
834
|
/** @private */
|
|
835
|
+
const MAX_EVENT_STACK_INDICATOR_CLASS = 'e-event-indicator-badge';
|
|
836
|
+
/** @private */
|
|
835
837
|
const CELL_POPUP_CLASS = 'e-cell-popup';
|
|
836
838
|
/** @private */
|
|
837
839
|
const EVENT_POPUP_CLASS = 'e-event-popup';
|
|
@@ -7221,11 +7223,15 @@ class EventBase {
|
|
|
7221
7223
|
? [].slice.call(this.parent.element.querySelectorAll('.' + WEEK_NUMBER_WRAPPER_CLASS + ' tbody tr'))
|
|
7222
7224
|
: [];
|
|
7223
7225
|
for (const row of rows) {
|
|
7224
|
-
|
|
7226
|
+
let height = (this.parent.activeViewOptions.maxEventsPerRow *
|
|
7225
7227
|
((eventHeight + (this.parent.currentView === 'Month' ? eventGap : 2)))) + headerHeight + indHeight;
|
|
7228
|
+
const monthHeaderHeight = this.parent.element.querySelectorAll('.' + MONTH_HEADER_CLASS);
|
|
7226
7229
|
if (weekNumberRows.length > 0) {
|
|
7227
7230
|
setStyleAttribute(weekNumberRows[rows.indexOf(row)].firstElementChild, { 'height': height + 'px' });
|
|
7228
7231
|
}
|
|
7232
|
+
if (this.parent.currentView === 'TimelineYear') {
|
|
7233
|
+
height = height >= monthHeaderHeight[0].offsetHeight ? height : monthHeaderHeight[0].offsetHeight;
|
|
7234
|
+
}
|
|
7229
7235
|
setStyleAttribute(row.firstElementChild, { 'height': height + 'px' });
|
|
7230
7236
|
}
|
|
7231
7237
|
if (!this.parent.enablePersistence && !this.parent.activeViewOptions.allowVirtualScrolling && isScrollUpdate) {
|
|
@@ -7264,6 +7270,7 @@ class VerticalEvent extends EventBase {
|
|
|
7264
7270
|
this.allDayLevel = 0;
|
|
7265
7271
|
this.startHour = this.getStartEndHours(this.parent.activeViewOptions.startHour);
|
|
7266
7272
|
this.endHour = this.getStartEndHours(this.parent.activeViewOptions.endHour);
|
|
7273
|
+
this.moreIndicatorsMap = [];
|
|
7267
7274
|
this.element = this.parent.activeView.getPanel();
|
|
7268
7275
|
this.fields = this.parent.eventFields;
|
|
7269
7276
|
this.animation = new Animation({ progress: this.animationUiUpdate.bind(this) });
|
|
@@ -7434,6 +7441,148 @@ class VerticalEvent extends EventBase {
|
|
|
7434
7441
|
this.appendEvent(eventObj, appointmentElement, index, appLeft);
|
|
7435
7442
|
}
|
|
7436
7443
|
}
|
|
7444
|
+
filterEventsByOverlapGroups(eventList, maxEventStack, groupIndex, dayIndex, dayCount, resource) {
|
|
7445
|
+
if (maxEventStack === 0 || eventList.length === 0) {
|
|
7446
|
+
return eventList;
|
|
7447
|
+
}
|
|
7448
|
+
for (let i = 0; i < eventList.length; i++) {
|
|
7449
|
+
const item = eventList[parseInt(i.toString(), 10)];
|
|
7450
|
+
if (!item.__id) {
|
|
7451
|
+
item.__id = i;
|
|
7452
|
+
}
|
|
7453
|
+
}
|
|
7454
|
+
const overlapGroupList = [];
|
|
7455
|
+
for (const currentEvent of eventList) {
|
|
7456
|
+
const seedGroup = [currentEvent];
|
|
7457
|
+
const overlapGroup = [];
|
|
7458
|
+
for (const comparedEvent of eventList) {
|
|
7459
|
+
const isOverlapping = seedGroup.some((e) => !(comparedEvent.StartTime >= e.EndTime || comparedEvent.EndTime <= e.StartTime));
|
|
7460
|
+
if (isOverlapping) {
|
|
7461
|
+
overlapGroup.push(comparedEvent);
|
|
7462
|
+
}
|
|
7463
|
+
}
|
|
7464
|
+
overlapGroupList.push(overlapGroup);
|
|
7465
|
+
}
|
|
7466
|
+
const finalEventList = [];
|
|
7467
|
+
const currentVisibleEventBuffer = [];
|
|
7468
|
+
const visibleEventIdSet = new Set();
|
|
7469
|
+
const hiddenEventIdSet = new Set();
|
|
7470
|
+
const indicatorsForThisSlot = [];
|
|
7471
|
+
for (const overlapGroup of overlapGroupList) {
|
|
7472
|
+
const orderedGroupEvents = overlapGroup
|
|
7473
|
+
.slice()
|
|
7474
|
+
.sort((a, b) => {
|
|
7475
|
+
const startDiff = a.StartTime.getTime() - b.StartTime.getTime();
|
|
7476
|
+
return startDiff !== 0 ? startDiff : (a.__id - b.__id);
|
|
7477
|
+
});
|
|
7478
|
+
for (const candidateEvent of orderedGroupEvents) {
|
|
7479
|
+
const overlappingVisibleEvents = currentVisibleEventBuffer.filter((e) => !(candidateEvent.StartTime >= e.EndTime || candidateEvent.EndTime <= e.StartTime));
|
|
7480
|
+
const eventId = candidateEvent.__id;
|
|
7481
|
+
if (!visibleEventIdSet.has(eventId) && !hiddenEventIdSet.has(eventId) && overlappingVisibleEvents.length < maxEventStack) {
|
|
7482
|
+
finalEventList.push(candidateEvent);
|
|
7483
|
+
currentVisibleEventBuffer.push(candidateEvent);
|
|
7484
|
+
visibleEventIdSet.add(eventId);
|
|
7485
|
+
}
|
|
7486
|
+
}
|
|
7487
|
+
const hiddenEventsInGroup = overlapGroup
|
|
7488
|
+
.filter((e) => !visibleEventIdSet.has(e.__id) && !hiddenEventIdSet.has(e.__id));
|
|
7489
|
+
if (hiddenEventsInGroup.length > 0) {
|
|
7490
|
+
const indicatorStartTime = new Date(Math.min(...hiddenEventsInGroup.map((e) => e.StartTime.getTime())));
|
|
7491
|
+
const indicatorEndTime = new Date(Math.max(...hiddenEventsInGroup.map((e) => e.EndTime.getTime())));
|
|
7492
|
+
const indicatorKey = `${indicatorStartTime.getTime()}_${indicatorEndTime.getTime()}_${groupIndex}_${dayCount}_${resource}`;
|
|
7493
|
+
const indicatorInfo = {
|
|
7494
|
+
hiddenEvents: hiddenEventsInGroup,
|
|
7495
|
+
hiddenEventCount: hiddenEventsInGroup.length,
|
|
7496
|
+
startTime: indicatorStartTime,
|
|
7497
|
+
endTime: indicatorEndTime,
|
|
7498
|
+
groupIndex: groupIndex,
|
|
7499
|
+
dayIndex: dayIndex,
|
|
7500
|
+
dayCount: dayCount,
|
|
7501
|
+
resource: resource
|
|
7502
|
+
};
|
|
7503
|
+
indicatorsForThisSlot.push({ key: indicatorKey, info: indicatorInfo });
|
|
7504
|
+
for (const hiddenEvent of hiddenEventsInGroup) {
|
|
7505
|
+
hiddenEventIdSet.add(hiddenEvent.__id);
|
|
7506
|
+
}
|
|
7507
|
+
}
|
|
7508
|
+
}
|
|
7509
|
+
for (const event of eventList) {
|
|
7510
|
+
if (!visibleEventIdSet.has(event.__id) && !hiddenEventIdSet.has(event.__id)) {
|
|
7511
|
+
finalEventList.push(event);
|
|
7512
|
+
visibleEventIdSet.add(event.__id);
|
|
7513
|
+
}
|
|
7514
|
+
}
|
|
7515
|
+
for (const indicator of indicatorsForThisSlot) {
|
|
7516
|
+
this.moreIndicatorsMap.push({ key: indicator.key, info: indicator.info });
|
|
7517
|
+
}
|
|
7518
|
+
for (const event of finalEventList) {
|
|
7519
|
+
delete event.__id;
|
|
7520
|
+
}
|
|
7521
|
+
return finalEventList;
|
|
7522
|
+
}
|
|
7523
|
+
renderMoreIndicator(indicatorInfo, dayIndex, resource, dayCount) {
|
|
7524
|
+
const hiddenCount = indicatorInfo.hiddenEventCount || 0;
|
|
7525
|
+
if (hiddenCount === 0) {
|
|
7526
|
+
return;
|
|
7527
|
+
}
|
|
7528
|
+
const index = this.getDayIndex(dayIndex, resource, dayCount);
|
|
7529
|
+
const indicatorKey = `${indicatorInfo.startTime.getTime()}_${indicatorInfo.endTime.getTime()}_${indicatorInfo.groupIndex}_${indicatorInfo.dayCount}_${indicatorInfo.resource}`;
|
|
7530
|
+
const appointmentWrapper = this.element.querySelector('.' + APPOINTMENT_WRAPPER_CLASS + '[id="' + APPOINTMENT_WRAPPER_CLASS + '-' + index + '"]');
|
|
7531
|
+
if (appointmentWrapper) {
|
|
7532
|
+
const existingIndicator = appointmentWrapper.querySelector(`[data-indicator-key="${indicatorKey}"]`);
|
|
7533
|
+
if (existingIndicator) {
|
|
7534
|
+
EventHandler.remove(existingIndicator, 'click', this.onMoreIndicatorClick);
|
|
7535
|
+
remove(existingIndicator);
|
|
7536
|
+
}
|
|
7537
|
+
}
|
|
7538
|
+
const indicatorElement = createElement('div', {
|
|
7539
|
+
className: MAX_EVENT_STACK_INDICATOR_CLASS + ' ' + MORE_INDICATOR_CLASS,
|
|
7540
|
+
attrs: {
|
|
7541
|
+
'tabindex': '0',
|
|
7542
|
+
'role': 'button',
|
|
7543
|
+
'aria-label': `${hiddenCount} more events`,
|
|
7544
|
+
'data-indicator-key': indicatorKey,
|
|
7545
|
+
'data-hidden-count': hiddenCount.toString()
|
|
7546
|
+
}
|
|
7547
|
+
});
|
|
7548
|
+
const startDate = indicatorInfo.startTime;
|
|
7549
|
+
const endDate = indicatorInfo.endTime;
|
|
7550
|
+
const top = this.getTopValue(startDate);
|
|
7551
|
+
const height = this.getHeight(startDate, endDate);
|
|
7552
|
+
setStyleAttribute(indicatorElement, {
|
|
7553
|
+
'top': top + 'px',
|
|
7554
|
+
'height': height + 'px'
|
|
7555
|
+
});
|
|
7556
|
+
if (this.parent.enableRtl) {
|
|
7557
|
+
indicatorElement.style.left = '0%';
|
|
7558
|
+
}
|
|
7559
|
+
else {
|
|
7560
|
+
indicatorElement.style.right = '0%';
|
|
7561
|
+
}
|
|
7562
|
+
indicatorElement.innerHTML = `+${hiddenCount}`;
|
|
7563
|
+
EventHandler.add(indicatorElement, 'click', this.onMoreIndicatorClick, this);
|
|
7564
|
+
appointmentWrapper.appendChild(indicatorElement);
|
|
7565
|
+
}
|
|
7566
|
+
onMoreIndicatorClick(e) {
|
|
7567
|
+
const target = e.target;
|
|
7568
|
+
const indicatorKey = target.getAttribute('data-indicator-key');
|
|
7569
|
+
if (indicatorKey) {
|
|
7570
|
+
const indicator = this.moreIndicatorsMap.find((item) => item.key === indicatorKey);
|
|
7571
|
+
if (indicator) {
|
|
7572
|
+
const indicatorInfo = indicator.info;
|
|
7573
|
+
const hiddenEvents = indicatorInfo.hiddenEvents;
|
|
7574
|
+
this.showMorePopup(hiddenEvents, indicatorInfo.startTime, indicatorInfo.endTime, e);
|
|
7575
|
+
}
|
|
7576
|
+
}
|
|
7577
|
+
}
|
|
7578
|
+
showMorePopup(hiddenEvents, startDate, endDate, e) {
|
|
7579
|
+
if (this.parent.quickPopup) {
|
|
7580
|
+
const target = closest(e.target, '.' + MORE_INDICATOR_CLASS);
|
|
7581
|
+
const groupIndex = target.getAttribute('data-group-index');
|
|
7582
|
+
const moreArgs = { date: startDate, event: hiddenEvents, element: e.target };
|
|
7583
|
+
this.parent.quickPopup.moreEventClick(moreArgs, endDate, groupIndex);
|
|
7584
|
+
}
|
|
7585
|
+
}
|
|
7437
7586
|
renderEvents(eventType) {
|
|
7438
7587
|
removeClass(this.allDayElement, ALLDAY_ROW_ANIMATE_CLASS);
|
|
7439
7588
|
const eventCollection = (eventType === 'allDayEvents') ? this.sortByDateTime(this.allDayEvents) : undefined;
|
|
@@ -7462,17 +7611,56 @@ class VerticalEvent extends EventBase {
|
|
|
7462
7611
|
const endDate = resetTime(addDays(renderDates[parseInt(day.toString(), 10)], 1));
|
|
7463
7612
|
const filterEvents = this.filterEvents(startDate, endDate, eventCollection, this.resources[parseInt(resource.toString(), 10)]);
|
|
7464
7613
|
if (isRender) {
|
|
7465
|
-
|
|
7466
|
-
|
|
7467
|
-
|
|
7614
|
+
const maxEventStack = this.parent.activeViewOptions.maxEventStack || 0;
|
|
7615
|
+
if (maxEventStack > 0 && !this.parent.eventSettings.enableMaxHeight) {
|
|
7616
|
+
const normalEvents = [];
|
|
7617
|
+
const allDayEventsInDay = [];
|
|
7618
|
+
for (const event of filterEvents) {
|
|
7619
|
+
if (this.isAllDayAppointment(event)) {
|
|
7620
|
+
allDayEventsInDay.push(event);
|
|
7621
|
+
}
|
|
7622
|
+
else {
|
|
7623
|
+
normalEvents.push(event);
|
|
7624
|
+
}
|
|
7468
7625
|
}
|
|
7469
|
-
|
|
7470
|
-
|
|
7626
|
+
let finalEventList = [];
|
|
7627
|
+
const currentDayIndicators = [];
|
|
7628
|
+
if (normalEvents.length > 0) {
|
|
7629
|
+
finalEventList =
|
|
7630
|
+
this.filterEventsByOverlapGroups(normalEvents, maxEventStack, parseInt(resource.toString(), 10), day, dateCount, parseInt(resource.toString(), 10));
|
|
7631
|
+
for (const indicator of this.moreIndicatorsMap) {
|
|
7632
|
+
const indicatorInfo = indicator.info;
|
|
7633
|
+
if (indicatorInfo.dayIndex === day && indicatorInfo.dayCount === dateCount &&
|
|
7634
|
+
indicatorInfo.resource === parseInt(resource.toString(), 10)) {
|
|
7635
|
+
currentDayIndicators.push(indicator);
|
|
7636
|
+
}
|
|
7637
|
+
}
|
|
7471
7638
|
}
|
|
7472
7639
|
else {
|
|
7473
|
-
|
|
7640
|
+
finalEventList = normalEvents;
|
|
7641
|
+
}
|
|
7642
|
+
for (const event of allDayEventsInDay) {
|
|
7643
|
+
if (this.parent.resourceBase) {
|
|
7644
|
+
this.setValues(event, resource);
|
|
7645
|
+
}
|
|
7646
|
+
if (eventType === 'allDayEvents') {
|
|
7647
|
+
this.renderAllDayEvents(event, day, resource, dateCount, false, allDayRowTop, appHeight);
|
|
7648
|
+
}
|
|
7649
|
+
else {
|
|
7474
7650
|
this.allDayEvents.push(extend({}, event, null, true));
|
|
7475
7651
|
}
|
|
7652
|
+
this.cssClass = null;
|
|
7653
|
+
this.groupOrder = null;
|
|
7654
|
+
}
|
|
7655
|
+
for (const event of finalEventList) {
|
|
7656
|
+
if (this.parent.resourceBase) {
|
|
7657
|
+
this.setValues(event, resource);
|
|
7658
|
+
}
|
|
7659
|
+
if (eventType === 'allDayEvents') {
|
|
7660
|
+
if (!this.isAllDayAppointment(event)) {
|
|
7661
|
+
continue;
|
|
7662
|
+
}
|
|
7663
|
+
}
|
|
7476
7664
|
else {
|
|
7477
7665
|
if (this.parent.eventSettings.enableMaxHeight) {
|
|
7478
7666
|
if (this.getOverlapIndex(event, day, false, resource) > 0) {
|
|
@@ -7480,10 +7668,53 @@ class VerticalEvent extends EventBase {
|
|
|
7480
7668
|
}
|
|
7481
7669
|
}
|
|
7482
7670
|
this.renderNormalEvents(event, day, resource, dateCount);
|
|
7671
|
+
const appointmentWrapper = this.element.querySelector('.' + APPOINTMENT_WRAPPER_CLASS + '[id="' + APPOINTMENT_WRAPPER_CLASS + '-' + dateCount + '"]');
|
|
7672
|
+
if (appointmentWrapper) {
|
|
7673
|
+
const existingIndicators = [].slice.call(appointmentWrapper.querySelectorAll('.' + MORE_INDICATOR_CLASS));
|
|
7674
|
+
for (const existingIndicator of existingIndicators) {
|
|
7675
|
+
const indicatorKey = existingIndicator.getAttribute('data-indicator-key');
|
|
7676
|
+
const foundIndicator = currentDayIndicators
|
|
7677
|
+
.find((item) => item.key === indicatorKey);
|
|
7678
|
+
if (!foundIndicator) {
|
|
7679
|
+
EventHandler.remove(existingIndicator, 'click', this.onMoreIndicatorClick);
|
|
7680
|
+
remove(existingIndicator);
|
|
7681
|
+
}
|
|
7682
|
+
}
|
|
7683
|
+
}
|
|
7684
|
+
}
|
|
7685
|
+
this.cssClass = null;
|
|
7686
|
+
this.groupOrder = null;
|
|
7687
|
+
}
|
|
7688
|
+
for (const indicator of currentDayIndicators) {
|
|
7689
|
+
const indicatorInfo = indicator.info;
|
|
7690
|
+
this.renderMoreIndicator(indicatorInfo, day, resource, dateCount);
|
|
7691
|
+
}
|
|
7692
|
+
}
|
|
7693
|
+
else {
|
|
7694
|
+
this.cleanupMoreIndicators();
|
|
7695
|
+
for (const event of filterEvents) {
|
|
7696
|
+
if (this.parent.resourceBase) {
|
|
7697
|
+
this.setValues(event, resource);
|
|
7698
|
+
}
|
|
7699
|
+
if (eventType === 'allDayEvents') {
|
|
7700
|
+
this.renderAllDayEvents(event, day, resource, dateCount, false, allDayRowTop, appHeight);
|
|
7701
|
+
}
|
|
7702
|
+
else {
|
|
7703
|
+
if (this.isAllDayAppointment(event)) {
|
|
7704
|
+
this.allDayEvents.push(extend({}, event, null, true));
|
|
7705
|
+
}
|
|
7706
|
+
else {
|
|
7707
|
+
if (this.parent.eventSettings.enableMaxHeight) {
|
|
7708
|
+
if (this.getOverlapIndex(event, day, false, resource) > 0) {
|
|
7709
|
+
continue;
|
|
7710
|
+
}
|
|
7711
|
+
}
|
|
7712
|
+
this.renderNormalEvents(event, day, resource, dateCount);
|
|
7713
|
+
}
|
|
7483
7714
|
}
|
|
7715
|
+
this.cssClass = null;
|
|
7716
|
+
this.groupOrder = null;
|
|
7484
7717
|
}
|
|
7485
|
-
this.cssClass = null;
|
|
7486
|
-
this.groupOrder = null;
|
|
7487
7718
|
}
|
|
7488
7719
|
}
|
|
7489
7720
|
else {
|
|
@@ -7847,7 +8078,10 @@ class VerticalEvent extends EventBase {
|
|
|
7847
8078
|
}
|
|
7848
8079
|
}
|
|
7849
8080
|
getEventWidth() {
|
|
7850
|
-
const width = this.parent.
|
|
8081
|
+
const width = (isNullOrUndefined(this.parent.activeViewOptions.maxEventStack) || this.parent.activeViewOptions.maxEventStack === 0)
|
|
8082
|
+
? (this.parent.currentView === 'Day' ? 97 : 94)
|
|
8083
|
+
: (this.parent.isAdaptive ? (this.parent.currentView === 'Day' ? 75 : 50)
|
|
8084
|
+
: (this.parent.currentView === 'Day' ? 75 : 70));
|
|
7851
8085
|
const tempWidth = ((width - this.overlapEvents.length) / this.overlapEvents.length);
|
|
7852
8086
|
return (tempWidth < 0 ? 0 : tempWidth) + '%';
|
|
7853
8087
|
}
|
|
@@ -8096,10 +8330,21 @@ class VerticalEvent extends EventBase {
|
|
|
8096
8330
|
animationUiUpdate() {
|
|
8097
8331
|
this.parent.notify(contentReady, {});
|
|
8098
8332
|
}
|
|
8333
|
+
cleanupMoreIndicators() {
|
|
8334
|
+
if (this.element) {
|
|
8335
|
+
const moreIndicators = [].slice.call(this.element.querySelectorAll('.' + MAX_EVENT_STACK_INDICATOR_CLASS));
|
|
8336
|
+
for (const indicator of moreIndicators) {
|
|
8337
|
+
EventHandler.remove(indicator, 'click', this.onMoreIndicatorClick);
|
|
8338
|
+
remove(indicator);
|
|
8339
|
+
}
|
|
8340
|
+
}
|
|
8341
|
+
this.moreIndicatorsMap = null;
|
|
8342
|
+
}
|
|
8099
8343
|
destroy() {
|
|
8100
8344
|
if (!this.parent || this.parent && this.parent.isDestroyed) {
|
|
8101
8345
|
return;
|
|
8102
8346
|
}
|
|
8347
|
+
this.cleanupMoreIndicators();
|
|
8103
8348
|
this.removeEventListener();
|
|
8104
8349
|
this.allDayElement = null;
|
|
8105
8350
|
this.renderedAllDayEvents = null;
|
|
@@ -8111,6 +8356,7 @@ class VerticalEvent extends EventBase {
|
|
|
8111
8356
|
this.element = null;
|
|
8112
8357
|
this.fields = null;
|
|
8113
8358
|
this.animation = null;
|
|
8359
|
+
this.moreIndicatorsMap = null;
|
|
8114
8360
|
super.destroy();
|
|
8115
8361
|
}
|
|
8116
8362
|
}
|
|
@@ -8819,9 +9065,15 @@ class MonthEvent extends EventBase {
|
|
|
8819
9065
|
}
|
|
8820
9066
|
}
|
|
8821
9067
|
setMaxEventHeight(event, cell) {
|
|
8822
|
-
const headerHeight = getOuterHeight(cell.querySelector('.' + DATE_HEADER_CLASS));
|
|
9068
|
+
const headerHeight = (this.parent.currentView === 'Month') ? getOuterHeight(cell.querySelector('.' + DATE_HEADER_CLASS)) : 0;
|
|
8823
9069
|
const height = (cell.offsetHeight - headerHeight) - (this.maxHeight ? 0 : this.moreIndicatorHeight);
|
|
8824
|
-
setStyleAttribute(event, { 'height': height + 'px'
|
|
9070
|
+
setStyleAttribute(event, { 'height': height + 'px' });
|
|
9071
|
+
if (!isNullOrUndefined(event)) {
|
|
9072
|
+
const appointmentDetails = event.querySelector('.' + APPOINTMENT_DETAILS);
|
|
9073
|
+
if (!isNullOrUndefined(appointmentDetails)) {
|
|
9074
|
+
setStyleAttribute(appointmentDetails, { 'align-items': 'center' });
|
|
9075
|
+
}
|
|
9076
|
+
}
|
|
8825
9077
|
}
|
|
8826
9078
|
destroy() {
|
|
8827
9079
|
this.element = null;
|
|
@@ -9504,8 +9756,8 @@ class InlineEdit {
|
|
|
9504
9756
|
args.element.querySelector('.e-appointment-details').prepend(inlineSubject);
|
|
9505
9757
|
}
|
|
9506
9758
|
else {
|
|
9507
|
-
if (subEle && this.parent.activeViewOptions && !this.parent.activeViewOptions.eventTemplate) {
|
|
9508
|
-
|
|
9759
|
+
if (subEle && subEle.parentNode && this.parent.activeViewOptions && !this.parent.activeViewOptions.eventTemplate) {
|
|
9760
|
+
subEle.parentNode.insertBefore(inlineSubject, subEle);
|
|
9509
9761
|
}
|
|
9510
9762
|
else {
|
|
9511
9763
|
innerWrapElement.prepend(inlineSubject);
|
|
@@ -9785,6 +10037,7 @@ class QuickPopups {
|
|
|
9785
10037
|
constructor(parent) {
|
|
9786
10038
|
this.isMultipleEventSelect = false;
|
|
9787
10039
|
this.isCrudAction = false;
|
|
10040
|
+
this.morePopupHiddenEvents = [];
|
|
9788
10041
|
this.parent = parent;
|
|
9789
10042
|
this.l10n = this.parent.localeObj;
|
|
9790
10043
|
this.fieldValidator = new FieldValidator();
|
|
@@ -10592,6 +10845,7 @@ class QuickPopups {
|
|
|
10592
10845
|
if (moreEventContentEle) {
|
|
10593
10846
|
remove(moreEventContentEle);
|
|
10594
10847
|
}
|
|
10848
|
+
this.morePopupHiddenEvents = extend([], data.event, null, true);
|
|
10595
10849
|
const selectedDate = ((data.date).getTime()).toString();
|
|
10596
10850
|
const target = closest(data.element, '.' + MORE_INDICATOR_CLASS + ',.' + WORK_CELLS_CLASS);
|
|
10597
10851
|
const day = this.parent.globalize.formatDate(data.date, { format: 'E', calendar: this.parent.getCalendarMode() });
|
|
@@ -10637,7 +10891,13 @@ class QuickPopups {
|
|
|
10637
10891
|
}
|
|
10638
10892
|
}
|
|
10639
10893
|
else {
|
|
10640
|
-
|
|
10894
|
+
const isVerticalView = ['Day', 'Week', 'WorkWeek'].indexOf(this.parent.currentView) > -1 && !this.parent.activeViewOptions.timeScale.enable;
|
|
10895
|
+
if (!isVerticalView) {
|
|
10896
|
+
this.morePopup.relateTo = target;
|
|
10897
|
+
}
|
|
10898
|
+
else {
|
|
10899
|
+
this.morePopup.relateTo = closest(target, '.' + WORK_CELLS_CLASS);
|
|
10900
|
+
}
|
|
10641
10901
|
}
|
|
10642
10902
|
}
|
|
10643
10903
|
this.parent.renderTemplates(() => {
|
|
@@ -10711,7 +10971,13 @@ class QuickPopups {
|
|
|
10711
10971
|
data = this.parent.resourceBase.lastResourceLevel[parseInt(groupIndex, 10)];
|
|
10712
10972
|
groupOrder = data.groupOrder;
|
|
10713
10973
|
}
|
|
10714
|
-
|
|
10974
|
+
let events = this.parent.eventBase.filterEvents(startDate, endDate, this.parent.eventsProcessed, data);
|
|
10975
|
+
const morePopupIsVerticalView = ['Day', 'Week', 'WorkWeek'].indexOf(this.parent.currentView) > -1 && this.parent.activeViewOptions.timeScale.enable;
|
|
10976
|
+
if (morePopupIsVerticalView && this.morePopupHiddenEvents.length > 0) {
|
|
10977
|
+
events = events.filter((processedEvent) => {
|
|
10978
|
+
return this.morePopupHiddenEvents.some((hiddenEvent) => hiddenEvent[this.parent.eventFields.id] === processedEvent[this.parent.eventFields.id]);
|
|
10979
|
+
});
|
|
10980
|
+
}
|
|
10715
10981
|
const moreElement = this.createMoreEventList(events, groupOrder, groupIndex);
|
|
10716
10982
|
this.morePopup.element.querySelector('.' + MORE_EVENT_POPUP_CLASS).appendChild(moreElement);
|
|
10717
10983
|
}
|
|
@@ -11028,9 +11294,14 @@ class QuickPopups {
|
|
|
11028
11294
|
let popupData;
|
|
11029
11295
|
if (isCellPopup) {
|
|
11030
11296
|
const formvalidator = this.quickPopup.element.querySelector('.e-formvalidator');
|
|
11031
|
-
if (this.isCrudAction && formvalidator &&
|
|
11032
|
-
!
|
|
11033
|
-
|
|
11297
|
+
if (this.isCrudAction && formvalidator && !formvalidator.ej2_instances[0].validate()) {
|
|
11298
|
+
if (!this.parent.uiStateValues.isNavigation) {
|
|
11299
|
+
return;
|
|
11300
|
+
}
|
|
11301
|
+
this.isCrudAction = false;
|
|
11302
|
+
if (this.fieldValidator) {
|
|
11303
|
+
this.fieldValidator.destroyToolTip();
|
|
11304
|
+
}
|
|
11034
11305
|
}
|
|
11035
11306
|
const fields = this.parent.eventFields;
|
|
11036
11307
|
const saveObj = this.parent.eventWindow.getObjectFromFormData(POPUP_WRAPPER_CLASS);
|
|
@@ -11208,6 +11479,7 @@ class QuickPopups {
|
|
|
11208
11479
|
this.destroyMorePopup();
|
|
11209
11480
|
this.destroyQuickDialog();
|
|
11210
11481
|
this.dialogEvent = null;
|
|
11482
|
+
this.morePopupHiddenEvents = null;
|
|
11211
11483
|
this.parent = null;
|
|
11212
11484
|
this.l10n = null;
|
|
11213
11485
|
this.isCrudAction = null;
|
|
@@ -11596,6 +11868,11 @@ let RecurrenceEditor = class RecurrenceEditor extends Component {
|
|
|
11596
11868
|
this.selectMonthDay(startDate);
|
|
11597
11869
|
this.updateUntilDate(startDate);
|
|
11598
11870
|
this.onMonthDay.setProperties({ checked: true });
|
|
11871
|
+
const repeatContentElement = this.element.querySelector('.' + REPEATCONTENT);
|
|
11872
|
+
if (repeatContentElement) {
|
|
11873
|
+
const contentKey = freq.toLowerCase();
|
|
11874
|
+
repeatContentElement.innerHTML = this.localeObj.getConstant(contentType[contentKey]);
|
|
11875
|
+
}
|
|
11599
11876
|
}
|
|
11600
11877
|
preRender() {
|
|
11601
11878
|
this.localeObj = new L10n(this.getModuleName(), this.defaultLocale, this.locale);
|
|
@@ -16973,9 +17250,9 @@ class ResourceBase {
|
|
|
16973
17250
|
addClass([this.popupOverlay], ENABLE_CLASS);
|
|
16974
17251
|
}
|
|
16975
17252
|
}
|
|
16976
|
-
selectResourceByIndex(groupIndex) {
|
|
17253
|
+
selectResourceByIndex(groupIndex, isUserInitiated = true) {
|
|
16977
17254
|
if (this.lastResourceLevel && groupIndex > -1 && groupIndex < this.lastResourceLevel.length) {
|
|
16978
|
-
this.triggerEvents(groupIndex);
|
|
17255
|
+
this.triggerEvents(groupIndex, undefined, isUserInitiated);
|
|
16979
17256
|
}
|
|
16980
17257
|
}
|
|
16981
17258
|
resourceClick(event) {
|
|
@@ -16988,14 +17265,14 @@ class ResourceBase {
|
|
|
16988
17265
|
event.event.preventDefault();
|
|
16989
17266
|
}
|
|
16990
17267
|
}
|
|
16991
|
-
triggerEvents(groupIndex, event) {
|
|
16992
|
-
let args = { cancel: false, event: (event) ? event.event : null, groupIndex: groupIndex, requestType: 'resourceChange' };
|
|
17268
|
+
triggerEvents(groupIndex, event, isUserInitiated = true) {
|
|
17269
|
+
let args = { cancel: false, event: (event) ? event.event : null, groupIndex: groupIndex, requestType: 'resourceChange', isUserInitiated: isUserInitiated };
|
|
16993
17270
|
this.parent.trigger(actionBegin, args, (actionArgs) => {
|
|
16994
17271
|
if (!actionArgs.cancel) {
|
|
16995
17272
|
this.parent.uiStateValues.groupIndex = actionArgs.groupIndex;
|
|
16996
17273
|
this.parent.renderModule.render(this.parent.currentView);
|
|
16997
17274
|
args = {
|
|
16998
|
-
cancel: false, event: (event) ? event.event : null, groupIndex: this.parent.uiStateValues.groupIndex, requestType: 'resourceChanged'
|
|
17275
|
+
cancel: false, event: (event) ? event.event : null, groupIndex: this.parent.uiStateValues.groupIndex, requestType: 'resourceChanged', isUserInitiated: isUserInitiated
|
|
16999
17276
|
};
|
|
17000
17277
|
this.parent.adaptiveGroupIndex = this.parent.uiStateValues.groupIndex;
|
|
17001
17278
|
this.parent.trigger(actionComplete, args);
|
|
@@ -17824,6 +18101,11 @@ let Schedule = class Schedule extends Component {
|
|
|
17824
18101
|
this.renderElements(isSetModel);
|
|
17825
18102
|
}
|
|
17826
18103
|
}
|
|
18104
|
+
initializeSelectedResource() {
|
|
18105
|
+
if (!isNullOrUndefined(this.selectedResource) && this.enableAdaptiveUI && this.resourceBase) {
|
|
18106
|
+
this.changeSelectedResource(this.selectedResource);
|
|
18107
|
+
}
|
|
18108
|
+
}
|
|
17827
18109
|
destroyEditorWindow() {
|
|
17828
18110
|
if (this.eventWindow) {
|
|
17829
18111
|
this.eventWindow.destroy();
|
|
@@ -17858,6 +18140,7 @@ let Schedule = class Schedule extends Component {
|
|
|
17858
18140
|
if (!this.isPrinting) {
|
|
17859
18141
|
this.initializePopups();
|
|
17860
18142
|
}
|
|
18143
|
+
this.initializeSelectedResource();
|
|
17861
18144
|
}
|
|
17862
18145
|
validateDate(selectedDate = this.selectedDate) {
|
|
17863
18146
|
// persist the selected date value
|
|
@@ -18202,6 +18485,7 @@ let Schedule = class Schedule extends Component {
|
|
|
18202
18485
|
* @private
|
|
18203
18486
|
*/
|
|
18204
18487
|
changeView(view, event, muteOnChange, index) {
|
|
18488
|
+
this.closeQuickInfoOnNavigation();
|
|
18205
18489
|
if (isNullOrUndefined(index)) {
|
|
18206
18490
|
index = this.getViewIndex(view);
|
|
18207
18491
|
}
|
|
@@ -18251,6 +18535,7 @@ let Schedule = class Schedule extends Component {
|
|
|
18251
18535
|
* @private
|
|
18252
18536
|
*/
|
|
18253
18537
|
changeDate(selectedDate, event) {
|
|
18538
|
+
this.closeQuickInfoOnNavigation();
|
|
18254
18539
|
let args = { requestType: 'dateNavigate', cancel: false, event: event };
|
|
18255
18540
|
this.trigger(actionBegin, args, (actionArgs) => {
|
|
18256
18541
|
if (!actionArgs.cancel) {
|
|
@@ -18367,7 +18652,7 @@ let Schedule = class Schedule extends Component {
|
|
|
18367
18652
|
this.uiStateValues = {
|
|
18368
18653
|
expand: false, isInitial: true, left: 0, top: 0, isGroupAdaptive: false,
|
|
18369
18654
|
isIgnoreOccurrence: false, groupIndex: this.adaptiveGroupIndex, action: false,
|
|
18370
|
-
isBlock: false, isCustomMonth: true, isPreventTimezone: false, isTransformed: false
|
|
18655
|
+
isBlock: false, isCustomMonth: true, isPreventTimezone: false, isTransformed: false, isNavigation: false
|
|
18371
18656
|
};
|
|
18372
18657
|
}
|
|
18373
18658
|
this.currentTimezoneDate = this.getCurrentTime();
|
|
@@ -19378,6 +19663,11 @@ let Schedule = class Schedule extends Component {
|
|
|
19378
19663
|
case 'resources':
|
|
19379
19664
|
state.isResource = true;
|
|
19380
19665
|
break;
|
|
19666
|
+
case 'selectedResource':
|
|
19667
|
+
if (!isNullOrUndefined(newProp.selectedResource) && this.enableAdaptiveUI) {
|
|
19668
|
+
this.changeSelectedResource(newProp.selectedResource);
|
|
19669
|
+
}
|
|
19670
|
+
break;
|
|
19381
19671
|
case 'timeScale':
|
|
19382
19672
|
this.activeViewOptions.timeScale.interval = newProp.timeScale.interval || this.activeViewOptions.timeScale.interval;
|
|
19383
19673
|
this.activeViewOptions.timeScale.slotCount = newProp.timeScale.slotCount || this.activeViewOptions.timeScale.slotCount;
|
|
@@ -19762,6 +20052,21 @@ let Schedule = class Schedule extends Component {
|
|
|
19762
20052
|
}
|
|
19763
20053
|
return undefined;
|
|
19764
20054
|
}
|
|
20055
|
+
changeSelectedResource(resourceId) {
|
|
20056
|
+
if (!this.resourceBase || !this.resourceBase.lastResourceLevel || this.resourceBase.lastResourceLevel.length === 0) {
|
|
20057
|
+
return;
|
|
20058
|
+
}
|
|
20059
|
+
const foundIndex = this.resourceBase.lastResourceLevel.findIndex((level) => {
|
|
20060
|
+
const idField = level.resource.idField || 'Id';
|
|
20061
|
+
// eslint-disable-next-line security/detect-object-injection
|
|
20062
|
+
return level.resourceData[idField] === resourceId;
|
|
20063
|
+
});
|
|
20064
|
+
if (foundIndex === -1) {
|
|
20065
|
+
console.warn(`Resource with ID "${resourceId}" not found in data source.`);
|
|
20066
|
+
return;
|
|
20067
|
+
}
|
|
20068
|
+
this.resourceBase.selectResourceByIndex(foundIndex, false);
|
|
20069
|
+
}
|
|
19765
20070
|
/**
|
|
19766
20071
|
* This method allows to expand the resource that available on the scheduler.
|
|
19767
20072
|
*
|
|
@@ -20435,6 +20740,11 @@ let Schedule = class Schedule extends Component {
|
|
|
20435
20740
|
this.quickPopup.quickPopupHide(true);
|
|
20436
20741
|
}
|
|
20437
20742
|
}
|
|
20743
|
+
closeQuickInfoOnNavigation() {
|
|
20744
|
+
this.uiStateValues.isNavigation = true;
|
|
20745
|
+
this.closeQuickInfoPopup();
|
|
20746
|
+
this.uiStateValues.isNavigation = false;
|
|
20747
|
+
}
|
|
20438
20748
|
/**
|
|
20439
20749
|
* To manually open the overlap validation Alert.
|
|
20440
20750
|
*
|
|
@@ -20852,6 +21162,9 @@ __decorate$b([
|
|
|
20852
21162
|
__decorate$b([
|
|
20853
21163
|
Collection([], Resources)
|
|
20854
21164
|
], Schedule.prototype, "resources", void 0);
|
|
21165
|
+
__decorate$b([
|
|
21166
|
+
Property()
|
|
21167
|
+
], Schedule.prototype, "selectedResource", void 0);
|
|
20855
21168
|
__decorate$b([
|
|
20856
21169
|
Collection([], HeaderRows)
|
|
20857
21170
|
], Schedule.prototype, "headerRows", void 0);
|
|
@@ -21320,8 +21633,12 @@ class ActionBase {
|
|
|
21320
21633
|
'width': appWidth + 'px', 'border': '0px', 'pointer-events': 'none',
|
|
21321
21634
|
'position': 'absolute', 'overflow': 'hidden', 'padding': '3px'
|
|
21322
21635
|
});
|
|
21323
|
-
|
|
21324
|
-
|
|
21636
|
+
const eventGuid = event.Guid;
|
|
21637
|
+
if (eventGuid) {
|
|
21638
|
+
const originalElement = this.parent.element.querySelector(`[data-guid="${eventGuid}"]`);
|
|
21639
|
+
if (originalElement && originalElement.style.backgroundColor) {
|
|
21640
|
+
setStyleAttribute(appointmentElement, { 'backgroundColor': originalElement.style.backgroundColor });
|
|
21641
|
+
}
|
|
21325
21642
|
}
|
|
21326
21643
|
const date = resetTime(event[this.parent.eventFields.startTime]).getTime();
|
|
21327
21644
|
let query = '.' + WORK_CELLS_CLASS + '[data-date="' + date + '"]';
|