UNPKG

@rnwonder/solid-date-picker

Version:

A responsive, highly-customizable datepicker component for SolidJS.

32 lines (31 loc) 1.36 kB
import { createComponent as o } from "solid-js/web"; import { createSignal as s, onMount as k, For as y } from "solid-js"; import { DatePickerDay as g } from "../DatePickerDay/index.js"; import { DatePickerWeek as p } from "../DatePickerWeek/index.js"; const C = (e) => { const [c, m] = s([]), [n, w] = s([]); return k(() => { const a = Array.from({ length: 7 }, (i, t) => { const l = new Date(0, 0, t - (1 - (e.weekStartDay || 0)) + 1).toLocaleDateString(e.locale || "en", { weekday: e.weekDaysType === "single" ? "narrow" : "short" }); return e.weekDaysType === "double" ? l.slice(0, 2) : l; }), r = Array.from({ length: 7 }, (i, t) => new Date(0, 0, t - (1 - (e.weekStartDay || 0)) + 1).toLocaleDateString(e.locale || "en", { weekday: "long" })); w(r), m(a); }), o(p, { get weekNamesRowClass() { return e.weekNamesRowClass; }, get children() { return o(y, { get each() { return c(); }, children: (a, r) => o(g, { get weekDaysNameColor() { return e.weekDaysNameColor; }, get weekNamesClass() { return e.weekNamesClass; }, get wrapperProps() { return { "data-scope": "date-picker", "data-type": "column-header", "aria-label": n()[r()], role: "columnheader" }; }, header: !0, get headerValue() { return n()[r()]; }, children: a }) }); } }); }; export { C as WeekDays };