@adiraku/react-native-ui 1.2.8 → 1.2.9-canary-2
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/lib/commonjs/components/TextInput/TextInput.component.js +22 -9
- package/lib/commonjs/components/TextInput/TextInput.component.js.map +1 -1
- package/lib/module/components/TextInput/TextInput.component.js +22 -9
- package/lib/module/components/TextInput/TextInput.component.js.map +1 -1
- package/lib/typescript/components/TextInput/TextInput.component.d.ts.map +1 -1
- package/lib/typescript/components/TextInput/TextInput.type.d.ts +10 -0
- package/lib/typescript/components/TextInput/TextInput.type.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/TextInput/TextInput.component.tsx +26 -8
- package/src/components/TextInput/TextInput.type.ts +12 -1
|
@@ -31,7 +31,9 @@ const TextInput = props => {
|
|
|
31
31
|
showSoftInputOnFocus = true,
|
|
32
32
|
inputType = 'text',
|
|
33
33
|
calendarProps,
|
|
34
|
-
|
|
34
|
+
onChangeText,
|
|
35
|
+
onChangeDate,
|
|
36
|
+
dateValueFormatOptions,
|
|
35
37
|
...rest
|
|
36
38
|
} = props;
|
|
37
39
|
const [labelWidth, setLabelWidth] = React.useState(0);
|
|
@@ -80,10 +82,9 @@ const TextInput = props => {
|
|
|
80
82
|
};
|
|
81
83
|
const computedValue = React.useMemo(() => {
|
|
82
84
|
if (inputType === 'date' && typeof value === 'object') {
|
|
83
|
-
const options = {
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
month: 'short',
|
|
85
|
+
const options = dateValueFormatOptions || {
|
|
86
|
+
day: 'numeric',
|
|
87
|
+
month: 'long',
|
|
87
88
|
year: 'numeric'
|
|
88
89
|
};
|
|
89
90
|
const formattedDate = new Intl.DateTimeFormat('id-ID', options).format(value);
|
|
@@ -99,8 +100,19 @@ const TextInput = props => {
|
|
|
99
100
|
}
|
|
100
101
|
onTouchStart === null || onTouchStart === void 0 || onTouchStart(e);
|
|
101
102
|
};
|
|
102
|
-
const
|
|
103
|
-
|
|
103
|
+
const handleOnchangeText = (masked, unmasked, obfuscated) => {
|
|
104
|
+
// special handler for date type input, needed for automation purpose
|
|
105
|
+
if (inputType === 'date') {
|
|
106
|
+
if (typeof masked === 'string') {
|
|
107
|
+
// parse it into date object
|
|
108
|
+
const maskedDateObj = new Date(masked);
|
|
109
|
+
if (masked) onChangeDate === null || onChangeDate === void 0 || onChangeDate(maskedDateObj);
|
|
110
|
+
} else if (typeof masked === 'object' && masked instanceof Date) {
|
|
111
|
+
onChangeDate === null || onChangeDate === void 0 || onChangeDate(masked);
|
|
112
|
+
}
|
|
113
|
+
} else {
|
|
114
|
+
onChangeText === null || onChangeText === void 0 || onChangeText(masked, unmasked, obfuscated);
|
|
115
|
+
}
|
|
104
116
|
};
|
|
105
117
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(_reactNative.View, {
|
|
106
118
|
style: computedStyle.fieldWrapper
|
|
@@ -130,7 +142,8 @@ const TextInput = props => {
|
|
|
130
142
|
onBlur: handleOnBlur,
|
|
131
143
|
placeholderTextColor: focused ? _themes.Palettes.black[500] : 'transparent',
|
|
132
144
|
showSoftInputOnFocus: inputType === 'date' ? false : showSoftInputOnFocus,
|
|
133
|
-
onTouchStart: handleOnTouchStart
|
|
145
|
+
onTouchStart: handleOnTouchStart,
|
|
146
|
+
onChangeText: handleOnchangeText
|
|
134
147
|
}, rest)), inputIcon || counter > 0 ? inputIcon || /*#__PURE__*/React.createElement(_typography.Typography, {
|
|
135
148
|
style: computedStyle.counter,
|
|
136
149
|
variant: "caption"
|
|
@@ -139,7 +152,7 @@ const TextInput = props => {
|
|
|
139
152
|
style: computedStyle.messageHelper
|
|
140
153
|
}, helperMessageProps), errorMessage || !isError && helperMessage) : null), inputType === 'date' && /*#__PURE__*/React.createElement(_calendars.Calendars, _extends({
|
|
141
154
|
isVisible: isModalDateVisible,
|
|
142
|
-
onDateSave:
|
|
155
|
+
onDateSave: date => onChangeDate === null || onChangeDate === void 0 ? void 0 : onChangeDate(date),
|
|
143
156
|
onDismiss: () => setIsModalDateVisible(false)
|
|
144
157
|
}, calendarProps)));
|
|
145
158
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_reactNativeMaskInput","_interopRequireDefault","_TextInput","_typography","_calendars","_themes","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","TextInput","props","value","label","onBlur","onFocus","errorMessage","helperMessage","helperMessageProps","isError","counter","inputIcon","onTouchStart","showSoftInputOnFocus","inputType","calendarProps","onChangeDate","
|
|
1
|
+
{"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_reactNativeMaskInput","_interopRequireDefault","_TextInput","_typography","_calendars","_themes","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","_extends","assign","bind","arguments","length","apply","TextInput","props","value","label","onBlur","onFocus","errorMessage","helperMessage","helperMessageProps","isError","counter","inputIcon","onTouchStart","showSoftInputOnFocus","inputType","calendarProps","onChangeText","onChangeDate","dateValueFormatOptions","rest","labelWidth","setLabelWidth","useState","focused","setFocused","isModalDateVisible","setIsModalDateVisible","computedStyle","getStyle","animation","useRef","Animated","Value","scale","current","interpolate","inputRange","outputRange","translateY","translateX","animate","toValue","spring","useNativeDriver","start","useEffect","handleOnFocus","event","handleOnBlur","getLabelWidth","width","nativeEvent","layout","computedValue","useMemo","options","day","month","year","formattedDate","Intl","DateTimeFormat","format","replace","letter","toUpperCase","handleOnTouchStart","handleOnchangeText","masked","unmasked","obfuscated","maskedDateObj","Date","createElement","Fragment","View","style","fieldWrapper","fieldContainer","labelContainer","transform","onLayout","pointerEvents","Typography","variant","inputWrapper","textField","placeholderTextColor","Palettes","black","messageHelper","Calendars","isVisible","onDateSave","date","onDismiss","exports"],"sourceRoot":"../../../../src","sources":["components/TextInput/TextInput.component.tsx"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAQA,IAAAE,qBAAA,GAAAC,sBAAA,CAAAH,OAAA;AAEA,IAAAI,UAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,UAAA,GAAAN,OAAA;AAEA,IAAAO,OAAA,GAAAP,OAAA;AAAwC,SAAAG,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,yBAAAH,CAAA,6BAAAI,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAD,wBAAA,YAAAA,CAAAH,CAAA,WAAAA,CAAA,GAAAM,CAAA,GAAAD,CAAA,KAAAL,CAAA;AAAA,SAAAT,wBAAAS,CAAA,EAAAK,CAAA,SAAAA,CAAA,IAAAL,CAAA,IAAAA,CAAA,CAAAC,UAAA,SAAAD,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAE,OAAA,EAAAF,CAAA,QAAAM,CAAA,GAAAH,wBAAA,CAAAE,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAC,GAAA,CAAAP,CAAA,UAAAM,CAAA,CAAAE,GAAA,CAAAR,CAAA,OAAAS,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAf,CAAA,oBAAAe,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAe,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAd,CAAA,EAAAe,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAf,CAAA,CAAAe,CAAA,YAAAN,CAAA,CAAAP,OAAA,GAAAF,CAAA,EAAAM,CAAA,IAAAA,CAAA,CAAAa,GAAA,CAAAnB,CAAA,EAAAS,CAAA,GAAAA,CAAA;AAAA,SAAAW,SAAA,WAAAA,QAAA,GAAAR,MAAA,CAAAS,MAAA,GAAAT,MAAA,CAAAS,MAAA,CAAAC,IAAA,eAAAb,CAAA,aAAAT,CAAA,MAAAA,CAAA,GAAAuB,SAAA,CAAAC,MAAA,EAAAxB,CAAA,UAAAM,CAAA,GAAAiB,SAAA,CAAAvB,CAAA,YAAAK,CAAA,IAAAC,CAAA,OAAAU,cAAA,CAAAC,IAAA,CAAAX,CAAA,EAAAD,CAAA,MAAAI,CAAA,CAAAJ,CAAA,IAAAC,CAAA,CAAAD,CAAA,aAAAI,CAAA,KAAAW,QAAA,CAAAK,KAAA,OAAAF,SAAA;AAGxC,MAAMG,SAAkD,GAAIC,KAAK,IAAK;EACpE,MAAM;IACJC,KAAK;IACLC,KAAK;IACLC,MAAM,GAAGA,CAAA,KAAM,IAAI;IACnBC,OAAO,GAAGA,CAAA,KAAM,IAAI;IACpBC,YAAY;IACZC,aAAa;IACbC,kBAAkB;IAClBC,OAAO;IACPC,OAAO,GAAG,CAAC;IACXC,SAAS,GAAG,IAAI;IAChBC,YAAY;IACZC,oBAAoB,GAAG,IAAI;IAC3BC,SAAS,GAAG,MAAM;IAClBC,aAAa;IACbC,YAAY;IACZC,YAAY;IACZC,sBAAsB;IACtB,GAAGC;EACL,CAAC,GAAGlB,KAAK;EAET,MAAM,CAACmB,UAAU,EAAEC,aAAa,CAAC,GAAGzD,KAAK,CAAC0D,QAAQ,CAAC,CAAC,CAAC;EACrD,MAAM,CAACC,OAAO,EAAEC,UAAU,CAAC,GAAG5D,KAAK,CAAC0D,QAAQ,CAAC,KAAK,CAAC;;EAEnD;EACA,MAAM,CAACG,kBAAkB,EAAEC,qBAAqB,CAAC,GAAG9D,KAAK,CAAC0D,QAAQ,CAAC,KAAK,CAAC;EAEzE,MAAMK,aAAa,GAAG,IAAAC,mBAAQ,EAAC3B,KAAK,EAAEsB,OAAO,CAAC;EAE9C,MAAMM,SAAS,GAAGjE,KAAK,CAACkE,MAAM,CAAC,IAAIC,qBAAQ,CAACC,KAAK,CAAC,CAAC,CAAC,CAAC;EACrD,MAAMC,KAAK,GAAGJ,SAAS,CAACK,OAAO,CAACC,WAAW,CAAC;IAC1CC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClBC,WAAW,EAAE,CAAC,CAAC,EAAE,GAAG;EACtB,CAAC,CAAC;EACF,MAAMC,UAAU,GAAGT,SAAS,CAACK,OAAO,CAACC,WAAW,CAAC;IAC/CC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClBC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;EACtB,CAAC,CAAC;EACF,MAAME,UAAU,GAAGV,SAAS,CAACK,OAAO,CAACC,WAAW,CAAC;IAC/CC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClBC,WAAW,EAAE,CAAC,CAAC,EAAEjB,UAAU,GAAG,CAAC,GAAG;EACpC,CAAC,CAAC;EAEF,MAAMoB,OAAO,GAAIC,OAAc,IAC7BV,qBAAQ,CAACW,MAAM,CAACb,SAAS,CAACK,OAAO,EAAE;IACjCS,eAAe,EAAE,IAAI;IACrBF;EACF,CAAC,CAAC,CAACG,KAAK,CAAC,CAAC;EAEZhF,KAAK,CAACiF,SAAS,CAAC,MAAM;IACpB,IAAItB,OAAO,IAAI,CAAC,CAACrB,KAAK,EAAE;MACtBsC,OAAO,CAAC,CAAC,CAAC;IACZ,CAAC,MAAM;MACLA,OAAO,CAAC,CAAC,CAAC;IACZ;EACF,CAAC,EAAE,CAACtC,KAAK,EAAEqB,OAAO,CAAC,CAAC;EAEpB,MAAMuB,aAAa,GACjBC,KAAoD,IACjD;IACHvB,UAAU,CAAC,IAAI,CAAC;IAChBnB,OAAO,CAAC0C,KAAK,CAAC;EAChB,CAAC;EACD,MAAMC,YAAY,GAChBD,KAAoD,IACjD;IACH3C,MAAM,CAAC2C,KAAK,CAAC;IACbvB,UAAU,CAAC,KAAK,CAAC;EACnB,CAAC;EAED,MAAMyB,aAAa,GAAIF,KAAwB,IAAK;IAClD,MAAM;MAAEG;IAAM,CAAC,GAAGH,KAAK,CAACI,WAAW,CAACC,MAAM;IAC1C/B,aAAa,CAAC6B,KAAK,GAAG,EAAE,CAAC;EAC3B,CAAC;EAED,MAAMG,aAAa,GAAGzF,KAAK,CAAC0F,OAAO,CAAC,MAAM;IACxC,IAAIxC,SAAS,KAAK,MAAM,IAAI,OAAOZ,KAAK,KAAK,QAAQ,EAAE;MACrD,MAAMqD,OAAmC,GAAGrC,sBAAsB,IAAI;QACpEsC,GAAG,EAAE,SAAS;QACdC,KAAK,EAAE,MAAM;QACbC,IAAI,EAAE;MACR,CAAC;MAED,MAAMC,aAAa,GAAG,IAAIC,IAAI,CAACC,cAAc,CAAC,OAAO,EAAEN,OAAO,CAAC,CAACO,MAAM,CACpE5D,KACF,CAAC;;MAED;MACA,OAAOyD,aAAa,CAACI,OAAO,CAAC,qBAAqB,EAAGC,MAAM,IACzDA,MAAM,CAACC,WAAW,CAAC,CACrB,CAAC;IACH;IACA,OAAO/D,KAAK;EACd,CAAC,EAAE,CAACA,KAAK,EAAEY,SAAS,CAAC,CAAC;EAEtB,MAAMoD,kBAAkB,GAAI5F,CAAwB,IAAK;IACvD,IAAIwC,SAAS,KAAK,MAAM,EAAE;MACxBY,qBAAqB,CAAC,IAAI,CAAC;IAC7B;IAEAd,YAAY,aAAZA,YAAY,eAAZA,YAAY,CAAGtC,CAAC,CAAC;EACnB,CAAC;EAED,MAAM6F,kBAAkB,GAAGA,CACzBC,MAAc,EACdC,QAAgB,EAChBC,UAAkB,KACf;IACH;IACA,IAAIxD,SAAS,KAAK,MAAM,EAAE;MACxB,IAAI,OAAOsD,MAAM,KAAK,QAAQ,EAAE;QAC9B;QACA,MAAMG,aAAa,GAAG,IAAIC,IAAI,CAACJ,MAAM,CAAC;QAEtC,IAAIA,MAAM,EAAEnD,YAAY,aAAZA,YAAY,eAAZA,YAAY,CAAGsD,aAAa,CAAC;MAC3C,CAAC,MAAM,IAAI,OAAOH,MAAM,KAAK,QAAQ,IAAIA,MAAM,YAAsBI,IAAI,EAAE;QACzEvD,YAAY,aAAZA,YAAY,eAAZA,YAAY,CAAGmD,MAAM,CAAC;MACxB;IACF,CAAC,MAAM;MACLpD,YAAY,aAAZA,YAAY,eAAZA,YAAY,CAAGoD,MAAM,EAAEC,QAAQ,EAAEC,UAAU,CAAC;IAC9C;EACF,CAAC;EAED,oBACE1G,KAAA,CAAA6G,aAAA,CAAA7G,KAAA,CAAA8G,QAAA,qBACE9G,KAAA,CAAA6G,aAAA,CAAC1G,YAAA,CAAA4G,IAAI;IAACC,KAAK,EAAEjD,aAAa,CAACkD;EAAa,gBACtCjH,KAAA,CAAA6G,aAAA,CAAC1G,YAAA,CAAA4G,IAAI;IAACC,KAAK,EAAEjD,aAAa,CAACmD;EAAe,GACvC,CAAC,CAAC3E,KAAK,iBACNvC,KAAA,CAAA6G,aAAA,CAAC1G,YAAA,CAAAgE,QAAQ,CAAC4C,IAAI;IACZC,KAAK,EAAE,CACLjD,aAAa,CAACoD,cAAc,EAC5B;MACEC,SAAS,EAAE,CAAC;QAAE/C;MAAM,CAAC,EAAE;QAAEK;MAAW,CAAC,EAAE;QAAEC;MAAW,CAAC;IACvD,CAAC,CACD;IACF0C,QAAQ,EAAEhC,aAAc;IACxBiC,aAAa,EAAC;EAAM,gBAEpBtH,KAAA,CAAA6G,aAAA,CAACtG,WAAA,CAAAgH,UAAU;IAACC,OAAO,EAAC,OAAO;IAACR,KAAK,EAAEjD,aAAa,CAACxB;EAAM,GACpDA,KACS,CACC,CAChB,eACDvC,KAAA,CAAA6G,aAAA,CAAC1G,YAAA,CAAA4G,IAAI;IAACC,KAAK,EAAEjD,aAAa,CAAC0D;EAAa,gBACtCzH,KAAA,CAAA6G,aAAA,CAACzG,qBAAA,CAAAQ,OAAS,EAAAkB,QAAA;IACRQ,KAAK,EAAEmD,aAAc;IACrBuB,KAAK,EAAE,CAACjD,aAAa,CAAC2D,SAAS,CAAE;IACjCjF,OAAO,EAAEyC,aAAc;IACvB1C,MAAM,EAAE4C,YAAa;IACrBuC,oBAAoB,EAClBhE,OAAO,GAAGiE,gBAAQ,CAACC,KAAK,CAAC,GAAG,CAAC,GAAG,aACjC;IACD5E,oBAAoB,EAClBC,SAAS,KAAK,MAAM,GAAG,KAAK,GAAGD,oBAChC;IACDD,YAAY,EAAEsD,kBAAmB;IACjClD,YAAY,EAAEmD;EAAmB,GAC7BhD,IAAI,CACT,CAAC,EACDR,SAAS,IAAID,OAAO,GAAG,CAAC,GACrBC,SAAS,iBACP/C,KAAA,CAAA6G,aAAA,CAACtG,WAAA,CAAAgH,UAAU;IAACP,KAAK,EAAEjD,aAAa,CAACjB,OAAQ;IAAC0E,OAAO,EAAC;EAAS,GACxD,GAAG/B,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEvD,MAAM,IAAIY,OAAO,EAC1B,CACb,GACD,IACA,CACF,CAAC,EACNJ,YAAY,IAAIC,aAAa,gBAC5B3C,KAAA,CAAA6G,aAAA,CAACtG,WAAA,CAAAgH,UAAU,EAAAzF,QAAA;IACT0F,OAAO,EAAC,SAAS;IACjBR,KAAK,EAAEjD,aAAa,CAAC+D;EAAc,GAC/BlF,kBAAkB,GAErBF,YAAY,IAAM,CAACG,OAAO,IAAIF,aACrB,CAAC,GACX,IACA,CAAC,EAENO,SAAS,KAAK,MAAM,iBACnBlD,KAAA,CAAA6G,aAAA,CAACrG,UAAA,CAAAuH,SAAS,EAAAjG,QAAA;IACRkG,SAAS,EAAEnE,kBAAmB;IAC9BoE,UAAU,EAAGC,IAAI,IAAK7E,YAAY,aAAZA,YAAY,uBAAZA,YAAY,CAAG6E,IAAI,CAAE;IAC3CC,SAAS,EAAEA,CAAA,KAAMrE,qBAAqB,CAAC,KAAK;EAAE,GAC1CX,aAAa,CAClB,CAEH,CAAC;AAEP,CAAC;AAACiF,OAAA,CAAAhG,SAAA,GAAAA,SAAA","ignoreList":[]}
|
|
@@ -23,7 +23,9 @@ const TextInput = props => {
|
|
|
23
23
|
showSoftInputOnFocus = true,
|
|
24
24
|
inputType = 'text',
|
|
25
25
|
calendarProps,
|
|
26
|
-
|
|
26
|
+
onChangeText,
|
|
27
|
+
onChangeDate,
|
|
28
|
+
dateValueFormatOptions,
|
|
27
29
|
...rest
|
|
28
30
|
} = props;
|
|
29
31
|
const [labelWidth, setLabelWidth] = React.useState(0);
|
|
@@ -72,10 +74,9 @@ const TextInput = props => {
|
|
|
72
74
|
};
|
|
73
75
|
const computedValue = React.useMemo(() => {
|
|
74
76
|
if (inputType === 'date' && typeof value === 'object') {
|
|
75
|
-
const options = {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
month: 'short',
|
|
77
|
+
const options = dateValueFormatOptions || {
|
|
78
|
+
day: 'numeric',
|
|
79
|
+
month: 'long',
|
|
79
80
|
year: 'numeric'
|
|
80
81
|
};
|
|
81
82
|
const formattedDate = new Intl.DateTimeFormat('id-ID', options).format(value);
|
|
@@ -91,8 +92,19 @@ const TextInput = props => {
|
|
|
91
92
|
}
|
|
92
93
|
onTouchStart === null || onTouchStart === void 0 || onTouchStart(e);
|
|
93
94
|
};
|
|
94
|
-
const
|
|
95
|
-
|
|
95
|
+
const handleOnchangeText = (masked, unmasked, obfuscated) => {
|
|
96
|
+
// special handler for date type input, needed for automation purpose
|
|
97
|
+
if (inputType === 'date') {
|
|
98
|
+
if (typeof masked === 'string') {
|
|
99
|
+
// parse it into date object
|
|
100
|
+
const maskedDateObj = new Date(masked);
|
|
101
|
+
if (masked) onChangeDate === null || onChangeDate === void 0 || onChangeDate(maskedDateObj);
|
|
102
|
+
} else if (typeof masked === 'object' && masked instanceof Date) {
|
|
103
|
+
onChangeDate === null || onChangeDate === void 0 || onChangeDate(masked);
|
|
104
|
+
}
|
|
105
|
+
} else {
|
|
106
|
+
onChangeText === null || onChangeText === void 0 || onChangeText(masked, unmasked, obfuscated);
|
|
107
|
+
}
|
|
96
108
|
};
|
|
97
109
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(View, {
|
|
98
110
|
style: computedStyle.fieldWrapper
|
|
@@ -122,7 +134,8 @@ const TextInput = props => {
|
|
|
122
134
|
onBlur: handleOnBlur,
|
|
123
135
|
placeholderTextColor: focused ? Palettes.black[500] : 'transparent',
|
|
124
136
|
showSoftInputOnFocus: inputType === 'date' ? false : showSoftInputOnFocus,
|
|
125
|
-
onTouchStart: handleOnTouchStart
|
|
137
|
+
onTouchStart: handleOnTouchStart,
|
|
138
|
+
onChangeText: handleOnchangeText
|
|
126
139
|
}, rest)), inputIcon || counter > 0 ? inputIcon || /*#__PURE__*/React.createElement(Typography, {
|
|
127
140
|
style: computedStyle.counter,
|
|
128
141
|
variant: "caption"
|
|
@@ -131,7 +144,7 @@ const TextInput = props => {
|
|
|
131
144
|
style: computedStyle.messageHelper
|
|
132
145
|
}, helperMessageProps), errorMessage || !isError && helperMessage) : null), inputType === 'date' && /*#__PURE__*/React.createElement(Calendars, _extends({
|
|
133
146
|
isVisible: isModalDateVisible,
|
|
134
|
-
onDateSave:
|
|
147
|
+
onDateSave: date => onChangeDate === null || onChangeDate === void 0 ? void 0 : onChangeDate(date),
|
|
135
148
|
onDismiss: () => setIsModalDateVisible(false)
|
|
136
149
|
}, calendarProps)));
|
|
137
150
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","Animated","MaskInput","getStyle","Typography","Calendars","Palettes","TextInput","props","value","label","onBlur","onFocus","errorMessage","helperMessage","helperMessageProps","isError","counter","inputIcon","onTouchStart","showSoftInputOnFocus","inputType","calendarProps","onChangeDate","
|
|
1
|
+
{"version":3,"names":["React","View","Animated","MaskInput","getStyle","Typography","Calendars","Palettes","TextInput","props","value","label","onBlur","onFocus","errorMessage","helperMessage","helperMessageProps","isError","counter","inputIcon","onTouchStart","showSoftInputOnFocus","inputType","calendarProps","onChangeText","onChangeDate","dateValueFormatOptions","rest","labelWidth","setLabelWidth","useState","focused","setFocused","isModalDateVisible","setIsModalDateVisible","computedStyle","animation","useRef","Value","scale","current","interpolate","inputRange","outputRange","translateY","translateX","animate","toValue","spring","useNativeDriver","start","useEffect","handleOnFocus","event","handleOnBlur","getLabelWidth","width","nativeEvent","layout","computedValue","useMemo","options","day","month","year","formattedDate","Intl","DateTimeFormat","format","replace","letter","toUpperCase","handleOnTouchStart","e","handleOnchangeText","masked","unmasked","obfuscated","maskedDateObj","Date","createElement","Fragment","style","fieldWrapper","fieldContainer","labelContainer","transform","onLayout","pointerEvents","variant","inputWrapper","_extends","textField","placeholderTextColor","black","length","messageHelper","isVisible","onDateSave","date","onDismiss"],"sourceRoot":"../../../../src","sources":["components/TextInput/TextInput.component.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextInput.component.d.ts","sourceRoot":"","sources":["../../../../src/components/TextInput/TextInput.component.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAgB/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,QAAA,MAAM,SAAS,EAAE,KAAK,CAAC,iBAAiB,CAAC,cAAc,
|
|
1
|
+
{"version":3,"file":"TextInput.component.d.ts","sourceRoot":"","sources":["../../../../src/components/TextInput/TextInput.component.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAgB/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,QAAA,MAAM,SAAS,EAAE,KAAK,CAAC,iBAAiB,CAAC,cAAc,CA8LtD,CAAC;AAEF,OAAO,EAAE,SAAS,EAAE,CAAC"}
|
|
@@ -36,7 +36,17 @@ export interface TextInputProps extends MaskInputProps {
|
|
|
36
36
|
* Type of the input. won't show keyboard if value set to 'date'
|
|
37
37
|
*/
|
|
38
38
|
inputType?: 'text' | 'date';
|
|
39
|
+
/**
|
|
40
|
+
*
|
|
41
|
+
* handler which get executed when the save button on calendar pressed. Usable only when inputType='date'
|
|
42
|
+
* @default text
|
|
43
|
+
*/
|
|
39
44
|
onChangeDate?: (date: Date) => void;
|
|
40
45
|
calendarProps?: Omit<CalendarPropsAleph, 'isVisible' | 'onDateSave'>;
|
|
46
|
+
/**
|
|
47
|
+
* format of the date value, using intl format options
|
|
48
|
+
* @default { day: 'numeric', month: 'long', year: 'numeric' }
|
|
49
|
+
*/
|
|
50
|
+
dateValueFormatOptions?: Intl.DateTimeFormatOptions;
|
|
41
51
|
}
|
|
42
52
|
//# sourceMappingURL=TextInput.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextInput.type.d.ts","sourceRoot":"","sources":["../../../../src/components/TextInput/TextInput.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE,MAAM,WAAW,cAAe,SAAQ,cAAc;IACpD;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,eAAe,CAAC;IAErC;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"TextInput.type.d.ts","sourceRoot":"","sources":["../../../../src/components/TextInput/TextInput.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAEjE,MAAM,WAAW,cAAe,SAAQ,cAAc;IACpD;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,eAAe,CAAC;IAErC;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B;;;;OAIG;IAEH,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IAEpC,aAAa,CAAC,EAAE,IAAI,CAAC,kBAAkB,EAAE,WAAW,GAAG,YAAY,CAAC,CAAC;IAErE;;;OAGG;IACH,sBAAsB,CAAC,EAAE,IAAI,CAAC,qBAAqB,CAAC;CACrD"}
|
package/package.json
CHANGED
|
@@ -32,7 +32,9 @@ const TextInput: React.FunctionComponent<TextInputProps> = (props) => {
|
|
|
32
32
|
showSoftInputOnFocus = true,
|
|
33
33
|
inputType = 'text',
|
|
34
34
|
calendarProps,
|
|
35
|
-
|
|
35
|
+
onChangeText,
|
|
36
|
+
onChangeDate,
|
|
37
|
+
dateValueFormatOptions,
|
|
36
38
|
...rest
|
|
37
39
|
} = props;
|
|
38
40
|
|
|
@@ -92,10 +94,9 @@ const TextInput: React.FunctionComponent<TextInputProps> = (props) => {
|
|
|
92
94
|
|
|
93
95
|
const computedValue = React.useMemo(() => {
|
|
94
96
|
if (inputType === 'date' && typeof value === 'object') {
|
|
95
|
-
const options: Intl.DateTimeFormatOptions = {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
month: 'short',
|
|
97
|
+
const options: Intl.DateTimeFormatOptions = dateValueFormatOptions || {
|
|
98
|
+
day: 'numeric',
|
|
99
|
+
month: 'long',
|
|
99
100
|
year: 'numeric',
|
|
100
101
|
};
|
|
101
102
|
|
|
@@ -119,8 +120,24 @@ const TextInput: React.FunctionComponent<TextInputProps> = (props) => {
|
|
|
119
120
|
onTouchStart?.(e);
|
|
120
121
|
};
|
|
121
122
|
|
|
122
|
-
const
|
|
123
|
-
|
|
123
|
+
const handleOnchangeText = (
|
|
124
|
+
masked: string,
|
|
125
|
+
unmasked: string,
|
|
126
|
+
obfuscated: string
|
|
127
|
+
) => {
|
|
128
|
+
// special handler for date type input, needed for automation purpose
|
|
129
|
+
if (inputType === 'date') {
|
|
130
|
+
if (typeof masked === 'string') {
|
|
131
|
+
// parse it into date object
|
|
132
|
+
const maskedDateObj = new Date(masked);
|
|
133
|
+
|
|
134
|
+
if (masked) onChangeDate?.(maskedDateObj);
|
|
135
|
+
} else if (typeof masked === 'object' && masked as object instanceof Date) {
|
|
136
|
+
onChangeDate?.(masked);
|
|
137
|
+
}
|
|
138
|
+
} else {
|
|
139
|
+
onChangeText?.(masked, unmasked, obfuscated);
|
|
140
|
+
}
|
|
124
141
|
};
|
|
125
142
|
|
|
126
143
|
return (
|
|
@@ -156,6 +173,7 @@ const TextInput: React.FunctionComponent<TextInputProps> = (props) => {
|
|
|
156
173
|
inputType === 'date' ? false : showSoftInputOnFocus
|
|
157
174
|
}
|
|
158
175
|
onTouchStart={handleOnTouchStart}
|
|
176
|
+
onChangeText={handleOnchangeText}
|
|
159
177
|
{...rest}
|
|
160
178
|
/>
|
|
161
179
|
{inputIcon || counter > 0
|
|
@@ -181,7 +199,7 @@ const TextInput: React.FunctionComponent<TextInputProps> = (props) => {
|
|
|
181
199
|
{inputType === 'date' && (
|
|
182
200
|
<Calendars
|
|
183
201
|
isVisible={isModalDateVisible}
|
|
184
|
-
onDateSave={
|
|
202
|
+
onDateSave={(date) => onChangeDate?.(date)}
|
|
185
203
|
onDismiss={() => setIsModalDateVisible(false)}
|
|
186
204
|
{...calendarProps}
|
|
187
205
|
/>
|
|
@@ -44,8 +44,19 @@ export interface TextInputProps extends MaskInputProps {
|
|
|
44
44
|
*/
|
|
45
45
|
inputType?: 'text' | 'date';
|
|
46
46
|
|
|
47
|
-
|
|
47
|
+
/**
|
|
48
|
+
*
|
|
49
|
+
* handler which get executed when the save button on calendar pressed. Usable only when inputType='date'
|
|
50
|
+
* @default text
|
|
51
|
+
*/
|
|
52
|
+
//
|
|
48
53
|
onChangeDate?: (date: Date) => void;
|
|
49
54
|
|
|
50
55
|
calendarProps?: Omit<CalendarPropsAleph, 'isVisible' | 'onDateSave'>;
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* format of the date value, using intl format options
|
|
59
|
+
* @default { day: 'numeric', month: 'long', year: 'numeric' }
|
|
60
|
+
*/
|
|
61
|
+
dateValueFormatOptions?: Intl.DateTimeFormatOptions;
|
|
51
62
|
}
|