Skip to content

Commit 412b5b8

Browse files
authored
Merge pull request #18 from NoahMLoomis/add-readonly-prop
Added readonly prop to make the field non-editable by typing
2 parents 351bcbd + 6184977 commit 412b5b8

File tree

3 files changed

+13
-5
lines changed

3 files changed

+13
-5
lines changed

src/components/Datepicker.tsx

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ interface Props {
4646
disabled?: boolean;
4747
inputClassName?: string | null;
4848
containerClassName?: string | null;
49+
readonly?: boolean;
4950
}
5051

5152
const Datepicker: React.FC<Props> = ({
@@ -63,7 +64,8 @@ const Datepicker: React.FC<Props> = ({
6364
i18n = "en",
6465
disabled = false,
6566
inputClassName = null,
66-
containerClassName = null
67+
containerClassName = null,
68+
readonly = false
6769
}) => {
6870
// Ref
6971
const containerRef = useRef<HTMLDivElement>(null);
@@ -257,7 +259,8 @@ const Datepicker: React.FC<Props> = ({
257259
value,
258260
disabled,
259261
inputClassName,
260-
containerClassName
262+
containerClassName,
263+
readonly
261264
};
262265
}, [
263266
asSingle,
@@ -276,7 +279,8 @@ const Datepicker: React.FC<Props> = ({
276279
value,
277280
disabled,
278281
inputClassName,
279-
containerClassName
282+
containerClassName,
283+
readonly
280284
]);
281285

282286
return (

src/components/Input.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,8 @@ const Input: React.FC = () => {
2424
placeholder,
2525
separator,
2626
disabled,
27-
inputClassName
27+
inputClassName,
28+
readonly
2829
} = useContext(DatepickerContext);
2930

3031
// UseRefs
@@ -167,6 +168,7 @@ const Input: React.FC = () => {
167168
type="text"
168169
className={getClassName()}
169170
disabled={disabled}
171+
readOnly={readonly}
170172
placeholder={
171173
placeholder
172174
? placeholder

src/contexts/DatepickerContext.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ interface DatepickerStore {
3131
disabled?: boolean;
3232
inputClassName?: string | null;
3333
containerClassName?: string | null;
34+
readonly?: boolean;
3435
}
3536

3637
const DatepickerContext = createContext<DatepickerStore>({
@@ -57,7 +58,8 @@ const DatepickerContext = createContext<DatepickerStore>({
5758
i18n: "en",
5859
disabled: false,
5960
inputClassName: "",
60-
containerClassName: ""
61+
containerClassName: "",
62+
readonly: false
6163
});
6264

6365
export default DatepickerContext;

0 commit comments

Comments
 (0)