Socket
Socket
Sign inDemoInstall

react-imask

Package Overview
Dependencies
Maintainers
1
Versions
93
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-imask - npm Package Compare versions

Comparing version 7.0.1-alpha.0 to 7.0.1-alpha.1

4

dist/hook.d.ts

@@ -6,4 +6,4 @@ import { type InputMask, type InputMaskElement, type FactoryOpts } from 'imask';

export default function useIMask<MaskElement extends InputMaskElement, Opts extends FactoryOpts>(opts: Opts, { onAccept, onComplete }?: Partial<Pick<ReactMaskProps<MaskElement, Opts>, 'onAccept' | 'onComplete'>>): {
ref: MutableRefObject<MaskElement>;
maskRef: MutableRefObject<InputMask<Opts>>;
ref: MutableRefObject<MaskElement | null>;
maskRef: MutableRefObject<InputMask<Opts> | null>;
value: InputMask<Opts>['value'];

@@ -10,0 +10,0 @@ setValue: Dispatch<InputMask<Opts>['value']>;

import React from 'react';
import { IMaskInputProps } from './mixin';
declare const IMaskInput: React.ForwardRefExoticComponent<(Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Partial<Pick<import("../../imask/esm").Masked<any>, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid">> & {
declare const IMaskInput: React.ForwardRefExoticComponent<(Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>, "ref"> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>, "ref"> & Partial<Pick<import("../../imask/esm").Masked<any>, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid">> & {
mask: typeof import("../../imask/esm").Masked | typeof import("../../imask/esm").MaskedPattern | typeof import("../../imask/esm").MaskedDate | typeof import("../../imask/esm").MaskedNumber | typeof import("../../imask/esm").MaskedEnum | typeof import("../../imask/esm").MaskedRange | typeof import("../../imask/esm").MaskedRegExp | typeof import("../../imask/esm").MaskedFunction | typeof import("../../imask/esm").MaskedDynamic;
} & {
unmask?: boolean | "typed";
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>>>>;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Partial<Pick<import("../../imask/esm").Masked<any>, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid">> & {
unmask?: boolean | "typed" | undefined;
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>>> | undefined;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>, "ref"> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>, "ref"> & Partial<Pick<import("../../imask/esm").Masked<any>, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid">> & {
mask: import("../../imask/esm").Masked<any>;
} & {
unmask?: boolean | "typed";
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>>>>;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Omit<import("../../imask/esm").MaskedDateOptions<Date>, "mask"> & {
unmask?: boolean | "typed" | undefined;
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>>> | undefined;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>, "ref"> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>, "ref"> & Omit<import("../../imask/esm").MaskedDateOptions, "mask"> & {
mask: DateConstructor;
} & {
unmask?: boolean | "typed";
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>>>>;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Partial<Pick<import("../../imask/esm").MaskedNumber, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid" | "min" | "max" | "radix" | "thousandsSeparator" | "mapToRadix" | "scale" | "normalizeZeros" | "padFractionalZeros">> & {
unmask?: boolean | "typed";
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>>>>;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Partial<Pick<import("../../imask/esm").MaskedPattern<string>, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid" | "definitions" | "blocks" | "placeholderChar" | "displayChar" | "lazy">> & {
unmask?: boolean | "typed";
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>>>>;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Partial<Pick<import("../../imask/esm").MaskedDynamic<any>, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid" | "dispatch">> & {
unmask?: boolean | "typed";
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>>>>;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Partial<Pick<import("../../imask/esm").MaskedRegExp, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid">> & {
unmask?: boolean | "typed";
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>>>>;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Partial<Pick<import("../../imask/esm").MaskedFunction<any>, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid">> & {
unmask?: boolean | "typed";
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>>>>;
unmask?: boolean | "typed" | undefined;
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>>> | undefined;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>, "ref"> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>, "ref"> & Partial<Pick<import("../../imask/esm").MaskedNumber, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid" | "min" | "max" | "radix" | "thousandsSeparator" | "mapToRadix" | "scale" | "normalizeZeros" | "padFractionalZeros">> & {
unmask?: boolean | "typed" | undefined;
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>>> | undefined;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>, "ref"> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>, "ref"> & Partial<Pick<import("../../imask/esm").MaskedPattern<string>, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid" | "definitions" | "blocks" | "placeholderChar" | "displayChar" | "lazy">> & {
unmask?: boolean | "typed" | undefined;
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>>> | undefined;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>, "ref"> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>, "ref"> & Partial<Pick<import("../../imask/esm").MaskedDynamic<any>, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid" | "dispatch">> & {
unmask?: boolean | "typed" | undefined;
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>>> | undefined;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>, "ref"> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>, "ref"> & Partial<Pick<import("../../imask/esm").MaskedRegExp, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid">> & {
unmask?: boolean | "typed" | undefined;
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>>> | undefined;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>, "ref"> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>, "ref"> & Partial<Pick<import("../../imask/esm").MaskedFunction<any>, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid">> & {
unmask?: boolean | "typed" | undefined;
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>>> | undefined;
}, "ref">) & React.RefAttributes<unknown>>;
export default IMaskInput;
//# sourceMappingURL=input.d.ts.map
import React from 'react';
import { type InputMask, type InputMaskElement, type FactoryOpts, type AllFactoryStaticOpts } from 'imask';
export type Falsy = false | 0 | "" | null | undefined;
export type ReactMaskOpts = FactoryOpts & {
export type ReactMaskOpts<Opts extends FactoryOpts = FactoryOpts> = Opts & {
unmask?: 'typed' | boolean;

@@ -26,3 +26,3 @@ };

export type MaskOpts<MaskElement extends InputMaskElement, Props extends IMaskInputProps<MaskElement> = IMaskInputProps<MaskElement>> = Extract<Props, FactoryOpts>;
export type IMaskMixinProps<MaskElement extends InputMaskElement, Props extends ReactMaskOpts & ReactMaskProps<MaskElement> = ReactMaskOpts & ReactMaskProps<MaskElement>> = Props & ReactMaskProps<MaskElement, Props>;
export type IMaskMixinProps<MaskElement extends InputMaskElement, Props extends (ReactMaskOpts & ReactMaskProps<MaskElement>) = ReactMaskOpts & ReactMaskProps<MaskElement>> = Omit<ReactMaskProps<MaskElement, Props>, 'ref'> & MaskOpts<MaskElement, Props>;
export type IMaskInputProps<MaskElement extends InputMaskElement, Props extends IMaskMixinProps<MaskElement> = IMaskMixinProps<MaskElement>> = ReactElementProps<MaskElement> & IMaskMixinProps<MaskElement, Props>;

@@ -29,0 +29,0 @@ export default function IMaskMixin<MaskElement extends InputMaskElement, Props extends IMaskInputProps<MaskElement>>(ComposedComponent: ReactMixinComponent<MaskElement>): React.ForwardRefExoticComponent<React.PropsWithoutRef<Props> & React.RefAttributes<React.ComponentType<Props>>>;

@@ -7,48 +7,54 @@ (function (global, factory) {

function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
var IMask__default = /*#__PURE__*/_interopDefault(IMask);
var React__default = /*#__PURE__*/_interopDefault(React);
var PropTypes__default = /*#__PURE__*/_interopDefault(PropTypes);
const MASK_PROPS = {
// common
mask: PropTypes.oneOfType([PropTypes.array, PropTypes.func, PropTypes.string, PropTypes.instanceOf(RegExp), PropTypes.oneOf([Date, Number, IMask.Masked]), PropTypes.instanceOf(IMask.Masked)]),
value: PropTypes.any,
unmask: PropTypes.oneOfType([PropTypes.bool, PropTypes.oneOf(['typed'])]),
prepare: PropTypes.func,
prepareChar: PropTypes.func,
validate: PropTypes.func,
commit: PropTypes.func,
overwrite: PropTypes.oneOfType([PropTypes.bool, PropTypes.oneOf(['shift'])]),
eager: PropTypes.oneOfType([PropTypes.bool, PropTypes.oneOf(['append', 'remove'])]),
skipInvalid: PropTypes.bool,
mask: PropTypes__default.default.oneOfType([PropTypes__default.default.array, PropTypes__default.default.func, PropTypes__default.default.string, PropTypes__default.default.instanceOf(RegExp), PropTypes__default.default.oneOf([Date, Number, IMask__default.default.Masked]), PropTypes__default.default.instanceOf(IMask__default.default.Masked)]),
value: PropTypes__default.default.any,
unmask: PropTypes__default.default.oneOfType([PropTypes__default.default.bool, PropTypes__default.default.oneOf(['typed'])]),
prepare: PropTypes__default.default.func,
prepareChar: PropTypes__default.default.func,
validate: PropTypes__default.default.func,
commit: PropTypes__default.default.func,
overwrite: PropTypes__default.default.oneOfType([PropTypes__default.default.bool, PropTypes__default.default.oneOf(['shift'])]),
eager: PropTypes__default.default.oneOfType([PropTypes__default.default.bool, PropTypes__default.default.oneOf(['append', 'remove'])]),
skipInvalid: PropTypes__default.default.bool,
// events
onAccept: PropTypes.func,
onComplete: PropTypes.func,
onAccept: PropTypes__default.default.func,
onComplete: PropTypes__default.default.func,
// pattern
placeholderChar: PropTypes.string,
displayChar: PropTypes.string,
lazy: PropTypes.bool,
definitions: PropTypes.object,
blocks: PropTypes.object,
placeholderChar: PropTypes__default.default.string,
displayChar: PropTypes__default.default.string,
lazy: PropTypes__default.default.bool,
definitions: PropTypes__default.default.object,
blocks: PropTypes__default.default.object,
// enum
enum: PropTypes.arrayOf(PropTypes.string),
enum: PropTypes__default.default.arrayOf(PropTypes__default.default.string),
// range
maxLength: PropTypes.number,
from: PropTypes.number,
to: PropTypes.number,
maxLength: PropTypes__default.default.number,
from: PropTypes__default.default.number,
to: PropTypes__default.default.number,
// date
pattern: PropTypes.string,
format: PropTypes.func,
parse: PropTypes.func,
autofix: PropTypes.oneOfType([PropTypes.bool, PropTypes.oneOf(['pad'])]),
pattern: PropTypes__default.default.string,
format: PropTypes__default.default.func,
parse: PropTypes__default.default.func,
autofix: PropTypes__default.default.oneOfType([PropTypes__default.default.bool, PropTypes__default.default.oneOf(['pad'])]),
// number
radix: PropTypes.string,
thousandsSeparator: PropTypes.string,
mapToRadix: PropTypes.arrayOf(PropTypes.string),
scale: PropTypes.number,
normalizeZeros: PropTypes.bool,
padFractionalZeros: PropTypes.bool,
min: PropTypes.oneOfType([PropTypes.number, PropTypes.instanceOf(Date)]),
max: PropTypes.oneOfType([PropTypes.number, PropTypes.instanceOf(Date)]),
radix: PropTypes__default.default.string,
thousandsSeparator: PropTypes__default.default.string,
mapToRadix: PropTypes__default.default.arrayOf(PropTypes__default.default.string),
scale: PropTypes__default.default.number,
normalizeZeros: PropTypes__default.default.bool,
padFractionalZeros: PropTypes__default.default.bool,
min: PropTypes__default.default.oneOfType([PropTypes__default.default.number, PropTypes__default.default.instanceOf(Date)]),
max: PropTypes__default.default.oneOfType([PropTypes__default.default.number, PropTypes__default.default.instanceOf(Date)]),
// dynamic
dispatch: PropTypes.func,
dispatch: PropTypes__default.default.func,
// ref
inputRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({
current: PropTypes.object
inputRef: PropTypes__default.default.oneOfType([PropTypes__default.default.func, PropTypes__default.default.shape({
current: PropTypes__default.default.object
})])

@@ -61,7 +67,5 @@ };

var _class;
const MaskedComponent = (_class = class MaskedComponent extends React.Component {
const MaskedComponent = (_class = class MaskedComponent extends React__default.default.Component {
constructor(props) {
super(props);
this.element = void 0;
this.maskRef = void 0;
this._inputRef = this._inputRef.bind(this);

@@ -78,4 +82,4 @@ }

if (this.maskRef) {
this.maskRef.updateOptions(maskOptions);
if ('value' in props) this.maskValue = props.value;
this.maskRef.updateOptions(maskOptions); // TODO fix
if ('value' in props && props.value !== undefined) this.maskValue = props.value;
} else {

@@ -86,3 +90,3 @@ this.initMask(maskOptions);

this.destroyMask();
if ('value' in props) {
if ('value' in props && props.value !== undefined) {
var _this$element;

@@ -106,4 +110,4 @@ if ((_this$element = this.element) != null && _this$element.isContentEditable && this.element.tagName !== 'INPUT' && this.element.tagName !== 'TEXTAREA') this.element.textContent = props.value;else this.element.value = props.value;

}
this.maskRef = IMask(this.element, maskOptions).on('accept', this._onAccept.bind(this)).on('complete', this._onComplete.bind(this));
if ('value' in this.props) this.maskValue = this.props.value;
this.maskRef = IMask__default.default(this.element, maskOptions).on('accept', this._onAccept.bind(this)).on('complete', this._onComplete.bind(this));
if ('value' in this.props && this.props.value !== undefined) this.maskValue = this.props.value;
}

@@ -139,2 +143,3 @@ destroyMask() {

get maskValue() {
if (!this.maskRef) return '';
if (this.props.unmask === 'typed') return this.maskRef.typedValue;

@@ -145,2 +150,3 @@ if (this.props.unmask) return this.maskRef.unmaskedValue;

set maskValue(value) {
if (!this.maskRef) return;
value = value == null && this.props.unmask !== 'typed' ? '' : value;

@@ -156,3 +162,3 @@ if (this.props.unmask === 'typed') this.maskRef.typedValue = value;else if (this.props.unmask) this.maskRef.unmaskedValue = value;else this.maskRef.value = value;

render() {
return React.createElement(ComposedComponent, {
return React__default.default.createElement(ComposedComponent, {
...this._extractNonMaskProps(this.props),

@@ -166,3 +172,3 @@ inputRef: this._inputRef

MaskedComponent.propTypes = MASK_PROPS;
return React.forwardRef((props, ref) => React.createElement(MaskedComponent, {
return React__default.default.forwardRef((props, ref) => React__default.default.createElement(MaskedComponent, {
...props,

@@ -178,3 +184,3 @@ ref

} = _ref;
return React.createElement('input', {
return React__default.default.createElement('input', {
...props,

@@ -184,8 +190,10 @@ ref: inputRef

});
const IMaskInputFn = (props, ref) => React.createElement(IMaskInputClass, {
const IMaskInputFn = (props, ref) => React__default.default.createElement(IMaskInputClass, {
...props,
ref
});
const IMaskInput = React.forwardRef(IMaskInputFn);
}) // TODO fix no idea
;
const IMaskInput = React__default.default.forwardRef(IMaskInputFn);
function useIMask(opts, _temp) {

@@ -228,8 +236,9 @@ let {

if (el && opts != null && opts.mask) {
maskRef.current = IMask(el, opts);
maskRef.current = IMask__default.default(el, opts);
_onAccept();
}
} else {
mask == null ? void 0 : mask.updateOptions(opts);
mask == null ? void 0 : mask.updateOptions(opts); // TODO fix no idea
}
setInitialized(Boolean(maskRef.current));

@@ -287,3 +296,6 @@ }, [opts, _destroyMask, _onAccept]);

exports.IMask = IMask;
Object.defineProperty(exports, 'IMask', {
enumerable: true,
get: function () { return IMask__default.default; }
});
exports.IMaskInput = IMaskInput;

@@ -290,0 +302,0 @@ exports.IMaskMixin = IMaskMixin;

@@ -6,4 +6,4 @@ import { type InputMask, type InputMaskElement, type FactoryOpts } from 'imask';

export default function useIMask<MaskElement extends InputMaskElement, Opts extends FactoryOpts>(opts: Opts, { onAccept, onComplete }?: Partial<Pick<ReactMaskProps<MaskElement, Opts>, 'onAccept' | 'onComplete'>>): {
ref: MutableRefObject<MaskElement>;
maskRef: MutableRefObject<InputMask<Opts>>;
ref: MutableRefObject<MaskElement | null>;
maskRef: MutableRefObject<InputMask<Opts> | null>;
value: InputMask<Opts>['value'];

@@ -10,0 +10,0 @@ setValue: Dispatch<InputMask<Opts>['value']>;

@@ -45,4 +45,5 @@ import IMask from 'imask/esm/imask';

} else {
mask == null ? void 0 : mask.updateOptions(opts);
mask == null ? void 0 : mask.updateOptions(opts); // TODO fix no idea
}
setInitialized(Boolean(maskRef.current));

@@ -49,0 +50,0 @@ }, [opts, _destroyMask, _onAccept]);

import React from 'react';
import { IMaskInputProps } from './mixin';
declare const IMaskInput: React.ForwardRefExoticComponent<(Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Partial<Pick<import("../../imask/esm").Masked<any>, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid">> & {
declare const IMaskInput: React.ForwardRefExoticComponent<(Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>, "ref"> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>, "ref"> & Partial<Pick<import("../../imask/esm").Masked<any>, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid">> & {
mask: typeof import("../../imask/esm").Masked | typeof import("../../imask/esm").MaskedPattern | typeof import("../../imask/esm").MaskedDate | typeof import("../../imask/esm").MaskedNumber | typeof import("../../imask/esm").MaskedEnum | typeof import("../../imask/esm").MaskedRange | typeof import("../../imask/esm").MaskedRegExp | typeof import("../../imask/esm").MaskedFunction | typeof import("../../imask/esm").MaskedDynamic;
} & {
unmask?: boolean | "typed";
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>>>>;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Partial<Pick<import("../../imask/esm").Masked<any>, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid">> & {
unmask?: boolean | "typed" | undefined;
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>>> | undefined;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>, "ref"> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>, "ref"> & Partial<Pick<import("../../imask/esm").Masked<any>, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid">> & {
mask: import("../../imask/esm").Masked<any>;
} & {
unmask?: boolean | "typed";
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>>>>;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Omit<import("../../imask/esm").MaskedDateOptions<Date>, "mask"> & {
unmask?: boolean | "typed" | undefined;
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>>> | undefined;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>, "ref"> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>, "ref"> & Omit<import("../../imask/esm").MaskedDateOptions, "mask"> & {
mask: DateConstructor;
} & {
unmask?: boolean | "typed";
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>>>>;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Partial<Pick<import("../../imask/esm").MaskedNumber, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid" | "min" | "max" | "radix" | "thousandsSeparator" | "mapToRadix" | "scale" | "normalizeZeros" | "padFractionalZeros">> & {
unmask?: boolean | "typed";
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>>>>;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Partial<Pick<import("../../imask/esm").MaskedPattern<string>, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid" | "definitions" | "blocks" | "placeholderChar" | "displayChar" | "lazy">> & {
unmask?: boolean | "typed";
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>>>>;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Partial<Pick<import("../../imask/esm").MaskedDynamic<any>, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid" | "dispatch">> & {
unmask?: boolean | "typed";
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>>>>;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Partial<Pick<import("../../imask/esm").MaskedRegExp, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid">> & {
unmask?: boolean | "typed";
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>>>>;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Partial<Pick<import("../../imask/esm").MaskedFunction<any>, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid">> & {
unmask?: boolean | "typed";
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts>>>>>;
unmask?: boolean | "typed" | undefined;
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>>> | undefined;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>, "ref"> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>, "ref"> & Partial<Pick<import("../../imask/esm").MaskedNumber, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid" | "min" | "max" | "radix" | "thousandsSeparator" | "mapToRadix" | "scale" | "normalizeZeros" | "padFractionalZeros">> & {
unmask?: boolean | "typed" | undefined;
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>>> | undefined;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>, "ref"> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>, "ref"> & Partial<Pick<import("../../imask/esm").MaskedPattern<string>, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid" | "definitions" | "blocks" | "placeholderChar" | "displayChar" | "lazy">> & {
unmask?: boolean | "typed" | undefined;
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>>> | undefined;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>, "ref"> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>, "ref"> & Partial<Pick<import("../../imask/esm").MaskedDynamic<any>, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid" | "dispatch">> & {
unmask?: boolean | "typed" | undefined;
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>>> | undefined;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>, "ref"> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>, "ref"> & Partial<Pick<import("../../imask/esm").MaskedRegExp, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid">> & {
unmask?: boolean | "typed" | undefined;
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>>> | undefined;
}, "ref"> | Omit<import("./mixin").ReactElementProps<HTMLInputElement> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>, "ref"> & Omit<import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>, "ref"> & Partial<Pick<import("../../imask/esm").MaskedFunction<any>, "mask" | "parent" | "prepare" | "prepareChar" | "validate" | "commit" | "format" | "parse" | "overwrite" | "eager" | "skipInvalid">> & {
unmask?: boolean | "typed" | undefined;
} & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>> & {
ref?: React.Ref<React.ComponentType<IMaskInputProps<HTMLInputElement, import("./mixin").IMaskMixinProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts> & import("./mixin").ReactMaskProps<HTMLInputElement, import("./mixin").ReactMaskOpts<import("../../imask/esm").FactoryOpts>>>>>> | undefined;
}, "ref">) & React.RefAttributes<unknown>>;
export default IMaskInput;
//# sourceMappingURL=input.d.ts.map

@@ -19,5 +19,7 @@ import React from 'react';

ref
});
}) // TODO fix no idea
;
const IMaskInput = React.forwardRef(IMaskInputFn);
export { IMaskInput as default };
import React from 'react';
import { type InputMask, type InputMaskElement, type FactoryOpts, type AllFactoryStaticOpts } from 'imask';
export type Falsy = false | 0 | "" | null | undefined;
export type ReactMaskOpts = FactoryOpts & {
export type ReactMaskOpts<Opts extends FactoryOpts = FactoryOpts> = Opts & {
unmask?: 'typed' | boolean;

@@ -26,3 +26,3 @@ };

export type MaskOpts<MaskElement extends InputMaskElement, Props extends IMaskInputProps<MaskElement> = IMaskInputProps<MaskElement>> = Extract<Props, FactoryOpts>;
export type IMaskMixinProps<MaskElement extends InputMaskElement, Props extends ReactMaskOpts & ReactMaskProps<MaskElement> = ReactMaskOpts & ReactMaskProps<MaskElement>> = Props & ReactMaskProps<MaskElement, Props>;
export type IMaskMixinProps<MaskElement extends InputMaskElement, Props extends (ReactMaskOpts & ReactMaskProps<MaskElement>) = ReactMaskOpts & ReactMaskProps<MaskElement>> = Omit<ReactMaskProps<MaskElement, Props>, 'ref'> & MaskOpts<MaskElement, Props>;
export type IMaskInputProps<MaskElement extends InputMaskElement, Props extends IMaskMixinProps<MaskElement> = IMaskMixinProps<MaskElement>> = ReactElementProps<MaskElement> & IMaskMixinProps<MaskElement, Props>;

@@ -29,0 +29,0 @@ export default function IMaskMixin<MaskElement extends InputMaskElement, Props extends IMaskInputProps<MaskElement>>(ComposedComponent: ReactMixinComponent<MaskElement>): React.ForwardRefExoticComponent<React.PropsWithoutRef<Props> & React.RefAttributes<React.ComponentType<Props>>>;

@@ -61,4 +61,2 @@ import React from 'react';

super(props);
this.element = void 0;
this.maskRef = void 0;
this._inputRef = this._inputRef.bind(this);

@@ -75,4 +73,4 @@ }

if (this.maskRef) {
this.maskRef.updateOptions(maskOptions);
if ('value' in props) this.maskValue = props.value;
this.maskRef.updateOptions(maskOptions); // TODO fix
if ('value' in props && props.value !== undefined) this.maskValue = props.value;
} else {

@@ -83,3 +81,3 @@ this.initMask(maskOptions);

this.destroyMask();
if ('value' in props) {
if ('value' in props && props.value !== undefined) {
var _this$element;

@@ -104,3 +102,3 @@ if ((_this$element = this.element) != null && _this$element.isContentEditable && this.element.tagName !== 'INPUT' && this.element.tagName !== 'TEXTAREA') this.element.textContent = props.value;else this.element.value = props.value;

this.maskRef = IMask(this.element, maskOptions).on('accept', this._onAccept.bind(this)).on('complete', this._onComplete.bind(this));
if ('value' in this.props) this.maskValue = this.props.value;
if ('value' in this.props && this.props.value !== undefined) this.maskValue = this.props.value;
}

@@ -136,2 +134,3 @@ destroyMask() {

get maskValue() {
if (!this.maskRef) return '';
if (this.props.unmask === 'typed') return this.maskRef.typedValue;

@@ -142,2 +141,3 @@ if (this.props.unmask) return this.maskRef.unmaskedValue;

set maskValue(value) {
if (!this.maskRef) return;
value = value == null && this.props.unmask !== 'typed' ? '' : value;

@@ -144,0 +144,0 @@ if (this.props.unmask === 'typed') this.maskRef.typedValue = value;else if (this.props.unmask) this.maskRef.unmaskedValue = value;else this.maskRef.value = value;

{
"name": "react-imask",
"version": "7.0.1-alpha.0",
"version": "7.0.1-alpha.1",
"license": "MIT",

@@ -13,4 +13,4 @@ "author": "Alexey Kryazhev",

"scripts": {
"lint": "eslint --quiet",
"prebuild": "npm run lint && rimraf --glob \"{dist,esm}\"",
"lint": "eslint src",
"prebuild": "npm run lint -- --quiet && rimraf --glob \"{dist,esm}\"",
"build": "tsc --emitDeclarationOnly && rollup -c",

@@ -26,3 +26,3 @@ "watch": "rollup -c -w"

"dependencies": {
"imask": "^7.0.1-alpha.0",
"imask": "^7.0.1-alpha.1",
"prop-types": "^15.8.1"

@@ -36,3 +36,3 @@ },

},
"gitHead": "27b880750f473bea574b9b962f661bc43d9d870a",
"gitHead": "6b8ff4690db0365493bdcbff6d32de21dc3b2d04",
"devDependencies": {

@@ -39,0 +39,0 @@ "@types/react": "^18.2.12",

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc