Skip to content

Commit 190f358

Browse files
committed
set default value on Mount
1 parent 10216cd commit 190f358

File tree

3 files changed

+53
-4
lines changed

3 files changed

+53
-4
lines changed

solid-date-picker/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@rnwonder/solid-date-picker",
3-
"version": "1.4.6",
3+
"version": "1.4.7",
44
"description": "A responsive, highly-customizable datepicker component for SolidJS.",
55
"type": "module",
66
"main": "./dist/index.js",

solid-date-picker/src/App.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -122,8 +122,8 @@ const App: Component = () => {
122122
onDisabledDayError={(data) => {
123123
console.log(data.day);
124124
}}
125-
// value={date}
126-
// setValue={setDate}
125+
value={date}
126+
setValue={setDate}
127127
/>
128128

129129
<TimeAnalogPicker />

solid-date-picker/src/components/DatePickerGroup/index.tsx

Lines changed: 50 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Accessor, createSignal, JSX, Setter, Show } from "solid-js";
1+
import { Accessor, createSignal, JSX, onMount, Setter, Show } from "solid-js";
22
import {
33
RnClassName,
44
DatePickerOnChange,
@@ -8,6 +8,7 @@ import {
88
} from "../../interface/general";
99
import {
1010
convertDateObjectToDate,
11+
convertDateToDateObject,
1112
labelFormat,
1213
} from "@rnwonder/simple-datejs/utils";
1314
import { DatePicker, DatePickerProps } from "../DatePicker";
@@ -243,6 +244,54 @@ export const DatePickerGroup = (props: DatePickerInputSJProps) => {
243244

244245
const inputJSX = renderCustomJSX(props.renderInput);
245246

247+
onMount(() => {
248+
const valueData = props.value?.()?.value || value().value;
249+
250+
if (valueData.selected || valueData.selectedDateObject) {
251+
const selectedDate = valueData.selected
252+
? convertDateToDateObject(new Date(valueData.selected))
253+
: valueData.selectedDateObject;
254+
255+
handleOnChange({
256+
type: "single",
257+
selectedDate,
258+
});
259+
}
260+
261+
if (valueData.start || valueData.startDateObject) {
262+
const startDate = valueData.start
263+
? convertDateToDateObject(new Date(valueData.start))
264+
: valueData.startDateObject;
265+
266+
const endDate = valueData.end
267+
? convertDateToDateObject(new Date(valueData.end))
268+
: valueData.endDateObject;
269+
270+
handleOnChange({
271+
type: "range",
272+
startDate,
273+
endDate,
274+
});
275+
}
276+
277+
if (valueData.multiple || valueData.multipleDateObject) {
278+
const multipleDateObject = valueData.multipleDateObject?.length
279+
? valueData.multipleDateObject
280+
: valueData.multiple
281+
? valueData.multiple.map((date) =>
282+
convertDateToDateObject(new Date(date)),
283+
)
284+
: undefined;
285+
286+
if (!multipleDateObject?.length) return;
287+
288+
handleOnChange({
289+
type: "multiple",
290+
multipleDates: multipleDateObject,
291+
});
292+
}
293+
});
294+
246295
return (
247296
<Popover
248297
isShown={isShown()}

0 commit comments

Comments
 (0)