react-select-datepicker 2.0.2 → 2.1.0
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/components/SelectDatepicker.d.ts +1 -1
- package/dist/components/SelectDatepicker.js +1 -1
- package/dist/components/SelectRenderer.d.ts +1 -1
- package/dist/components/SelectRenderer.js +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/interfaces/ISelectDatePicker.d.ts +6 -2
- package/dist/types/SelectDatepickerLabels.d.ts +23 -0
- package/dist/types/SelectDatepickerOrder.d.ts +1 -0
- package/dist/utils/helpers.d.ts +2 -2
- package/dist/utils/helpers.js +1 -1
- package/package.json +1 -1
- package/dist/types/SelectDatepickerOptions.d.ts +0 -28
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { ISelectDatepicker } from '../interfaces/ISelectDatePicker';
|
|
3
|
-
declare const SelectDatepicker: ({ id, className, minDate, maxDate, selectedDate, onDateChange, disabled, hasError, monthRef, yearRef, dayRef,
|
|
3
|
+
declare const SelectDatepicker: ({ id, className, minDate, maxDate, selectedDate, onDateChange, disabled, hasError, monthRef, yearRef, dayRef, labels, order, reverseYears, hideLabels, ...args }: ISelectDatepicker) => JSX.Element;
|
|
4
4
|
export { SelectDatepicker };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{__rest as e,__assign as
|
|
1
|
+
import{__rest as e,__assign as a}from"../_virtual/_tslib.js";import t,{useState as r,useMemo as n,useCallback as l,useEffect as o}from"react";import{classPrefix as i,getYearsObject as c,getMonthsObject as d,getDaysObject as m}from"../utils/helpers.js";import{OptionsRenderer as u}from"./OptionsRenderer.js";import{SelectRenderer as s}from"./SelectRenderer.js";var h=function(h){var f=h.id,b=h.className,y=h.minDate,v=h.maxDate,p=h.selectedDate,g=h.onDateChange,D=h.disabled,N=void 0!==D&&D,E=h.hasError,L=void 0!==E&&E,R=h.monthRef,P=h.yearRef,j=h.dayRef,C=h.labels,Y=void 0===C?{}:C,x=h.order,O=void 0===x?"month/day/year":x,S=h.reverseYears,H=h.hideLabels,M=e(h,["id","className","minDate","maxDate","selectedDate","onDateChange","disabled","hasError","monthRef","yearRef","dayRef","labels","order","reverseYears","hideLabels"]),_=r(-1),k=_[0],F=_[1],w=r(-1),q=w[0],z=w[1],A=r(-1),B=A[0],G=A[1],I=n((function(){return O?O.split("/"):["month","day","year"]}),[O]),J=n((function(){return["".concat(i,"_react-select-datepicker"),b].join(" ")}),[b]),K=n((function(){return t.createElement(u,{options:c(y,v,S)})}),[v,S,y]),Q=n((function(){return t.createElement(u,{options:d(y,v,k,Y.months)})}),[v,Y.months,y,k]),T=n((function(){return t.createElement(u,{options:m(y,v,q,k)})}),[v,q,y,k]),U=l((function(e){F(Number(e.target.value)),d(y,v,Number(e.target.value)).some((function(e){return e.value===q}))||z(-1),m(y,v,q,Number(e.target.value)).some((function(e){return e.value===B}))||G(-1)}),[B,q,y,v]),V=l((function(e){z(Number(e.target.value)),m(y,v,Number(e.target.value),k).some((function(e){return e.value===B}))||G(-1)}),[B,k,y,v]),W=l((function(e){G(Number(e.target.value))}),[]),X=n((function(){return{day:t.createElement(s,{id:"day",labels:{hide:H,main:Y.dayLabel||"Day",placeholder:Y.dayPlaceholder||"Select Day"},value:B,disabled:N,onChangeHandler:W,selectOptions:T,ref:j}),month:t.createElement(s,{id:"month",labels:{hide:H,main:Y.monthLabel||"Month",placeholder:Y.monthPlaceholder||"Select Month"},value:q,disabled:N,onChangeHandler:V,selectOptions:Q,ref:R}),year:t.createElement(s,{id:"year",labels:{hide:H,main:Y.yearLabel||"Year",placeholder:Y.yearPlaceholder||"Select Year"},value:k,disabled:N,onChangeHandler:U,selectOptions:K,ref:P})}}),[B,T,j,N,W,V,U,H,Y.dayLabel,Y.dayPlaceholder,Y.monthLabel,Y.monthPlaceholder,Y.yearLabel,Y.yearPlaceholder,q,Q,R,k,K,P]);return o((function(){null!=p&&(G(Number(p.getDate())),z(Number(p.getMonth()+1)),F(Number(p.getFullYear())))}),[p]),o((function(){g(-1!==k&&-1!==q&&-1!==B?new Date("".concat(q,"/").concat(B,"/").concat(k)):null)}),[B,q,k]),t.createElement("div",a({},M,{style:{display:"flex"},id:f,className:J},L?{"aria-invalid":!0}:null),I.map((function(e,a){return t.createElement(t.Fragment,{key:"".concat(e,"-").concat(a)},X[e])})))};export{h as SelectDatepicker};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import e from"react";import{classPrefix as t}from"../utils/helpers.js";var a=function(a){var c=a.id,l=a.labels,n=a.value,o=a.disabled,r=a.onChangeHandler,s=a.selectOptions,i=a.ref;return e.createElement("div",{style:{display:"flex",flexDirection:"column"},className:"".concat(t,"_select-container-").concat(c)}
|
|
1
|
+
import e from"react";import{classPrefix as t}from"../utils/helpers.js";var a=function(a){var c=a.id,l=a.labels,n=a.value,o=a.disabled,r=a.onChangeHandler,s=a.selectOptions,i=a.ref;return e.createElement("div",{style:{display:"flex",flexDirection:"column"},className:"".concat(t,"_select-container-").concat(c)},!l.hide&&e.createElement("label",{htmlFor:"".concat(t,"_select-").concat(c)},l.main),e.createElement("select",{id:"".concat(t,"_select-").concat(c),value:n,disabled:o,onChange:r,ref:i,className:"".concat(t,"_select-").concat(c)},e.createElement("option",{value:-1,disabled:!0},l.placeholder),s))};export{a as SelectRenderer};
|
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
export { SelectDatepicker } from './components/SelectDatepicker';
|
|
2
2
|
export { ISelectDatepicker } from './interfaces/ISelectDatePicker';
|
|
3
|
-
export {
|
|
3
|
+
export { SelectDatePickerLabels } from './types/SelectDatepickerLabels';
|
|
4
|
+
export { SelectDatePickerOrder } from './types/SelectDatepickerOrder';
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import {
|
|
2
|
+
import { SelectDatePickerLabels } from '../types/SelectDatepickerLabels';
|
|
3
|
+
import { SelectDatePickerOrder } from '../types/SelectDatepickerOrder';
|
|
3
4
|
export interface ISelectDatepicker {
|
|
4
5
|
id?: string;
|
|
5
6
|
className?: string;
|
|
@@ -7,10 +8,13 @@ export interface ISelectDatepicker {
|
|
|
7
8
|
maxDate?: Date;
|
|
8
9
|
selectedDate?: Date | null;
|
|
9
10
|
onDateChange: (date: Date | null) => void;
|
|
10
|
-
|
|
11
|
+
labels?: SelectDatePickerLabels;
|
|
11
12
|
disabled?: boolean;
|
|
12
13
|
hasError?: boolean;
|
|
13
14
|
monthRef?: React.LegacyRef<HTMLSelectElement>;
|
|
14
15
|
yearRef?: React.LegacyRef<HTMLSelectElement>;
|
|
15
16
|
dayRef?: React.LegacyRef<HTMLSelectElement>;
|
|
17
|
+
reverseYears?: boolean;
|
|
18
|
+
hideLabels?: boolean;
|
|
19
|
+
order?: SelectDatePickerOrder;
|
|
16
20
|
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export declare type Months = {
|
|
2
|
+
1: string;
|
|
3
|
+
2: string;
|
|
4
|
+
3: string;
|
|
5
|
+
4: string;
|
|
6
|
+
5: string;
|
|
7
|
+
6: string;
|
|
8
|
+
7: string;
|
|
9
|
+
8: string;
|
|
10
|
+
9: string;
|
|
11
|
+
10: string;
|
|
12
|
+
11: string;
|
|
13
|
+
12: string;
|
|
14
|
+
};
|
|
15
|
+
export declare type SelectDatePickerLabels = {
|
|
16
|
+
yearLabel?: string;
|
|
17
|
+
monthLabel?: string;
|
|
18
|
+
dayLabel?: string;
|
|
19
|
+
yearPlaceholder?: string;
|
|
20
|
+
monthPlaceholder?: string;
|
|
21
|
+
dayPlaceholder?: string;
|
|
22
|
+
months?: Months;
|
|
23
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare type SelectDatePickerOrder = 'day/month/year' | 'day/year/month' | 'month/day/year' | 'month/year/day' | 'year/month/day' | 'year/day/month';
|
package/dist/utils/helpers.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { Months } from '../types/
|
|
1
|
+
import { Months } from '../types/SelectDatepickerLabels';
|
|
2
2
|
export declare const classPrefix = "rsd_";
|
|
3
3
|
export declare const range: (start: number, stop: number, step: number) => number[];
|
|
4
4
|
export declare const getAllDaysInMonth: (year: number, month: number) => number[];
|
|
5
5
|
export declare const englishMonths: Months;
|
|
6
|
-
export declare const getYearsObject: (start?: Date | undefined, end?: Date | undefined, reverse?: boolean) => {
|
|
6
|
+
export declare const getYearsObject: (start?: Date | undefined, end?: Date | undefined, reverse?: boolean | undefined) => {
|
|
7
7
|
value: number;
|
|
8
8
|
label: string;
|
|
9
9
|
}[];
|
package/dist/utils/helpers.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var e="rsd_",t=function(e,t,r){return Array.from({length:(t-e)/r+1},(function(t,n){return e+n*r}))},r=function(e,t){for(var r=new Date("".concat(e,"/").concat(t,"/01")),n=[];r.getMonth()+1===t;)n.push(new Date(r).getDate()),r.setDate(r.getDate()+1);return n},n={1:"January",2:"February",3:"March",4:"April",5:"May",6:"June",7:"July",8:"August",9:"September",10:"October",11:"November",12:"December"},a=function(e,r,n){
|
|
1
|
+
var e="rsd_",t=function(e,t,r){return Array.from({length:(t-e)/r+1},(function(t,n){return e+n*r}))},r=function(e,t){for(var r=new Date("".concat(e,"/").concat(t,"/01")),n=[];r.getMonth()+1===t;)n.push(new Date(r).getDate()),r.setDate(r.getDate()+1);return n},n={1:"January",2:"February",3:"March",4:"April",5:"May",6:"June",7:"July",8:"August",9:"September",10:"October",11:"November",12:"December"},a=function(e,r,n){var a=t(r?r.getFullYear():(new Date).getFullYear(),e?e.getFullYear():1900,-1);return n&&(a=a.reverse()),a.map((function(e,t){return{value:e,label:"".concat(e)}}))},u=function(e,r,a,u){void 0===a&&(a=-1),void 0===u&&(u=n);var l=t(1,12,1);if(r&&-1!==a&&a===r.getFullYear()){var o=r.getMonth()+1;l=l.slice(0,o)}if(e&&-1!==a&&a===e.getFullYear()){var c=e.getMonth()+1;l=l.slice(c-1,l.length)}return l.map((function(e,t){return{value:e,label:u[e]}}))},l=function(e,n,a,u){void 0===a&&(a=-1),void 0===u&&(u=-1);var l=[];if(-1===a)return(l=t(1,31,1)).map((function(e,t){return{value:e,label:"".concat(e)}}));if(l=r(-1===u?1900:u,a),n&&u===n.getFullYear()&&a===n.getMonth()+1){var o=n.getDate();l=l.slice(0,o)}if(e&&u===e.getFullYear()&&a===e.getMonth()+1){var c=e.getDate();l=l.slice(c-1,l.length)}return l.map((function(e,t){return{value:e,label:"".concat(e)}}))};export{e as classPrefix,n as englishMonths,r as getAllDaysInMonth,l as getDaysObject,u as getMonthsObject,a as getYearsObject,t as range};
|
package/package.json
CHANGED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
export declare type Months = {
|
|
2
|
-
1: string;
|
|
3
|
-
2: string;
|
|
4
|
-
3: string;
|
|
5
|
-
4: string;
|
|
6
|
-
5: string;
|
|
7
|
-
6: string;
|
|
8
|
-
7: string;
|
|
9
|
-
8: string;
|
|
10
|
-
9: string;
|
|
11
|
-
10: string;
|
|
12
|
-
11: string;
|
|
13
|
-
12: string;
|
|
14
|
-
};
|
|
15
|
-
export declare type SelectDatepickerOptions = {
|
|
16
|
-
labels?: {
|
|
17
|
-
yearLabel?: string;
|
|
18
|
-
monthLabel?: string;
|
|
19
|
-
dayLabel?: string;
|
|
20
|
-
yearPlaceholder?: string;
|
|
21
|
-
monthPlaceholder?: string;
|
|
22
|
-
dayPlaceholder?: string;
|
|
23
|
-
months?: Months;
|
|
24
|
-
};
|
|
25
|
-
reverseYears?: boolean;
|
|
26
|
-
showLabels?: boolean;
|
|
27
|
-
order?: 'day/month/year' | 'day/year/month' | 'month/day/year' | 'month/year/day' | 'year/month/day' | 'year/day/month';
|
|
28
|
-
};
|