(i)
| 3011 | return s; |
| 3012 | } |
| 3013 | _renderDayGrid(i) { |
| 3014 | const { date: t, currentRange: n, eventDates: s, minWeeks: a, filterDays: o } = this.getState(); |
| 3015 | let _ = n[0], r = n[1]; |
| 3016 | const d = s.reduce((M, k) => (M[this.scheduler.date.day_start(new Date(k)).valueOf()] = !0, M), {}), l = document.createElement("div"); |
| 3017 | this._renderDayGridHeader(l); |
| 3018 | const h = l.children.length; |
| 3019 | i.appendChild(l), h !== 7 && i.style.setProperty("--dhx-scheduler-week-length", h); |
| 3020 | const p = this.scheduler, m = p.date.week_start(p.date.month_start(new Date(t))), g = p.date.month_start(new Date(t)), c = p.date.add(p.date.month_start(new Date(t)), 1, "month"); |
| 3021 | let u = p.date.add(p.date.month_start(new Date(t)), 1, "month"); |
| 3022 | const f = p.date.date_part(p._currentDate()); |
| 3023 | if (u.getDay() !== 0 && p.config.start_on_monday) { |
| 3024 | const M = (7 - u.getDay()) % 7; |
| 3025 | u = p.date.add(u, M + 1, "day"); |
| 3026 | } else |
| 3027 | u = p.date.add(p.date.week_start(u), 1, "week"); |
| 3028 | let y = this._weeksBetween(m, u); |
| 3029 | a && y < a && (u = p.date.add(u, a - y, "week")); |
| 3030 | let w = m; |
| 3031 | const D = document.createElement("div"); |
| 3032 | for (D.classList.add("dhx_cal_datepicker_days"), this._domEvents.attach(D, "click", (M) => { |
| 3033 | const k = M.target.closest("[data-cell-date]"), N = new Date(k.getAttribute("data-cell-date")); |
| 3034 | this.callEvent("onDateClick", [N, M]); |
| 3035 | }); w.valueOf() < u.valueOf(); ) { |
| 3036 | if (!o || !o(w)) { |
| 3037 | const M = document.createElement("div"); |
| 3038 | M.setAttribute("data-cell-date", p.templates.format_date(w)), M.setAttribute("data-day", w.getDay()), M.innerHTML = p.templates.month_day(w), w.valueOf() < g.valueOf() ? M.classList.add("dhx_before") : w.valueOf() >= c.valueOf() && M.classList.add("dhx_after"), w.getDay() !== 0 && w.getDay() !== 6 || M.classList.add("dhx_cal_datepicker_weekend"), w.valueOf() == f.valueOf() && M.classList.add("dhx_now"), _ && r && w.valueOf() >= _.valueOf() && w.valueOf() < r.valueOf() && M.classList.add("dhx_cal_datepicker_current"), d[w.valueOf()] && M.classList.add("dhx_cal_datepicker_event"), M.classList.add("dhx_cal_datepicker_date"), D.appendChild(M); |
| 3039 | } |
| 3040 | w = p.date.add(w, 1, "day"); |
| 3041 | } |
| 3042 | i.appendChild(D); |
| 3043 | } |
| 3044 | _renderMonthGrid(i) { |
| 3045 | const { date: t } = this.getState(), n = document.createElement("div"); |
| 3046 | n.classList.add("dhx_cal_datepicker_months"); |
no test coverage detected