react-native-paper-dates 0.8.7 → 0.9.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/README.md +30 -1
- package/lib/commonjs/Date/AnimatedCrossView.js.map +1 -1
- package/lib/commonjs/Date/AutoSizer.js.map +1 -1
- package/lib/commonjs/Date/Calendar.js +6 -2
- package/lib/commonjs/Date/Calendar.js.map +1 -1
- package/lib/commonjs/Date/CalendarEdit.js +4 -4
- package/lib/commonjs/Date/CalendarEdit.js.map +1 -1
- package/lib/commonjs/Date/CalendarHeader.js.map +1 -1
- package/lib/commonjs/Date/DatePickerInput.js +33 -87
- package/lib/commonjs/Date/DatePickerInput.js.map +1 -1
- package/lib/commonjs/Date/DatePickerInput.shared.js +6 -0
- package/lib/commonjs/Date/DatePickerInput.shared.js.map +1 -0
- package/lib/commonjs/Date/DatePickerInputWithoutModal.js +117 -0
- package/lib/commonjs/Date/DatePickerInputWithoutModal.js.map +1 -0
- package/lib/commonjs/Date/DatePickerModal.js +1 -1
- package/lib/commonjs/Date/DatePickerModal.js.map +1 -1
- package/lib/commonjs/Date/DatePickerModalContent.js +14 -8
- package/lib/commonjs/Date/DatePickerModalContent.js.map +1 -1
- package/lib/commonjs/Date/DatePickerModalContentHeader.js +5 -3
- package/lib/commonjs/Date/DatePickerModalContentHeader.js.map +1 -1
- package/lib/commonjs/Date/DatePickerModalHeader.js +5 -5
- package/lib/commonjs/Date/DatePickerModalHeader.js.map +1 -1
- package/lib/commonjs/Date/DatePickerModalHeaderBackground.js.map +1 -1
- package/lib/commonjs/Date/DateRangeInput.js +3 -2
- package/lib/commonjs/Date/DateRangeInput.js.map +1 -1
- package/lib/commonjs/Date/Day.js.map +1 -1
- package/lib/commonjs/Date/DayName.js.map +1 -1
- package/lib/commonjs/Date/DayNames.js.map +1 -1
- package/lib/commonjs/Date/DayRange.js.map +1 -1
- package/lib/commonjs/Date/Month.js.map +1 -1
- package/lib/commonjs/Date/Swiper.js.map +1 -1
- package/lib/commonjs/Date/Swiper.native.js +2 -1
- package/lib/commonjs/Date/Swiper.native.js.map +1 -1
- package/lib/commonjs/Date/SwiperUtils.js.map +1 -1
- package/lib/commonjs/Date/Week.js.map +1 -1
- package/lib/commonjs/Date/YearPicker.js +5 -5
- package/lib/commonjs/Date/YearPicker.js.map +1 -1
- package/lib/commonjs/Date/dateUtils.js.map +1 -1
- package/lib/commonjs/Date/dateUtils.test.js.map +1 -1
- package/lib/commonjs/Date/inputUtils.js +1 -1
- package/lib/commonjs/Date/inputUtils.js.map +1 -1
- package/lib/commonjs/TextInputMask.js +1 -1
- package/lib/commonjs/TextInputMask.js.map +1 -1
- package/lib/commonjs/Time/AmPmSwitcher.js.map +1 -1
- package/lib/commonjs/Time/AnalogClock.js +1 -1
- package/lib/commonjs/Time/AnalogClock.js.map +1 -1
- package/lib/commonjs/Time/AnalogClockHours.js +1 -1
- package/lib/commonjs/Time/AnalogClockHours.js.map +1 -1
- package/lib/commonjs/Time/AnalogClockMinutes.js.map +1 -1
- package/lib/commonjs/Time/AnimatedClockSwitcher.js.map +1 -1
- package/lib/commonjs/Time/TimeInput.js +1 -1
- package/lib/commonjs/Time/TimeInput.js.map +1 -1
- package/lib/commonjs/Time/TimeInputs.js +2 -2
- package/lib/commonjs/Time/TimeInputs.js.map +1 -1
- package/lib/commonjs/Time/TimePicker.js.map +1 -1
- package/lib/commonjs/Time/TimePickerModal.js +7 -2
- package/lib/commonjs/Time/TimePickerModal.js.map +1 -1
- package/lib/commonjs/Time/timeUtils.js +7 -1
- package/lib/commonjs/Time/timeUtils.js.map +1 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/translations/ar.js +25 -0
- package/lib/commonjs/translations/ar.js.map +1 -0
- package/lib/commonjs/translations/de.js.map +1 -1
- package/lib/commonjs/translations/en.js.map +1 -1
- package/lib/commonjs/translations/enGB.js.map +1 -1
- package/lib/commonjs/translations/fr.js +25 -0
- package/lib/commonjs/translations/fr.js.map +1 -0
- package/lib/commonjs/translations/ko.js +25 -0
- package/lib/commonjs/translations/ko.js.map +1 -0
- package/lib/commonjs/translations/nl.js.map +1 -1
- package/lib/commonjs/translations/pl.js.map +1 -1
- package/lib/commonjs/translations/pt.js.map +1 -1
- package/lib/commonjs/translations/utils.js +1 -1
- package/lib/commonjs/translations/utils.js.map +1 -1
- package/lib/commonjs/utils.js.map +1 -1
- package/lib/module/Date/AnimatedCrossView.js.map +1 -1
- package/lib/module/Date/AutoSizer.js.map +1 -1
- package/lib/module/Date/Calendar.js +6 -2
- package/lib/module/Date/Calendar.js.map +1 -1
- package/lib/module/Date/CalendarEdit.js +4 -4
- package/lib/module/Date/CalendarEdit.js.map +1 -1
- package/lib/module/Date/CalendarHeader.js.map +1 -1
- package/lib/module/Date/DatePickerInput.js +34 -87
- package/lib/module/Date/DatePickerInput.js.map +1 -1
- package/lib/module/Date/DatePickerInput.shared.js +2 -0
- package/lib/module/Date/DatePickerInput.shared.js.map +1 -0
- package/lib/module/Date/DatePickerInputWithoutModal.js +97 -0
- package/lib/module/Date/DatePickerInputWithoutModal.js.map +1 -0
- package/lib/module/Date/DatePickerModal.js +1 -1
- package/lib/module/Date/DatePickerModal.js.map +1 -1
- package/lib/module/Date/DatePickerModalContent.js +14 -8
- package/lib/module/Date/DatePickerModalContent.js.map +1 -1
- package/lib/module/Date/DatePickerModalContentHeader.js +5 -3
- package/lib/module/Date/DatePickerModalContentHeader.js.map +1 -1
- package/lib/module/Date/DatePickerModalHeader.js +5 -5
- package/lib/module/Date/DatePickerModalHeader.js.map +1 -1
- package/lib/module/Date/DatePickerModalHeaderBackground.js.map +1 -1
- package/lib/module/Date/DateRangeInput.js +3 -2
- package/lib/module/Date/DateRangeInput.js.map +1 -1
- package/lib/module/Date/Day.js.map +1 -1
- package/lib/module/Date/DayName.js.map +1 -1
- package/lib/module/Date/DayNames.js.map +1 -1
- package/lib/module/Date/DayRange.js.map +1 -1
- package/lib/module/Date/Month.js.map +1 -1
- package/lib/module/Date/Swiper.js.map +1 -1
- package/lib/module/Date/Swiper.native.js +2 -1
- package/lib/module/Date/Swiper.native.js.map +1 -1
- package/lib/module/Date/SwiperUtils.js.map +1 -1
- package/lib/module/Date/Week.js.map +1 -1
- package/lib/module/Date/YearPicker.js +5 -5
- package/lib/module/Date/YearPicker.js.map +1 -1
- package/lib/module/Date/dateUtils.js.map +1 -1
- package/lib/module/Date/dateUtils.test.js.map +1 -1
- package/lib/module/Date/inputUtils.js +1 -1
- package/lib/module/Date/inputUtils.js.map +1 -1
- package/lib/module/TextInputMask.js +1 -1
- package/lib/module/TextInputMask.js.map +1 -1
- package/lib/module/Time/AmPmSwitcher.js.map +1 -1
- package/lib/module/Time/AnalogClock.js +1 -1
- package/lib/module/Time/AnalogClock.js.map +1 -1
- package/lib/module/Time/AnalogClockHours.js +1 -1
- package/lib/module/Time/AnalogClockHours.js.map +1 -1
- package/lib/module/Time/AnalogClockMinutes.js.map +1 -1
- package/lib/module/Time/AnimatedClockSwitcher.js.map +1 -1
- package/lib/module/Time/TimeInput.js +1 -1
- package/lib/module/Time/TimeInput.js.map +1 -1
- package/lib/module/Time/TimeInputs.js +2 -2
- package/lib/module/Time/TimeInputs.js.map +1 -1
- package/lib/module/Time/TimePicker.js.map +1 -1
- package/lib/module/Time/TimePickerModal.js +8 -3
- package/lib/module/Time/TimePickerModal.js.map +1 -1
- package/lib/module/Time/timeUtils.js +3 -0
- package/lib/module/Time/timeUtils.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/translations/ar.js +18 -0
- package/lib/module/translations/ar.js.map +1 -0
- package/lib/module/translations/de.js.map +1 -1
- package/lib/module/translations/en.js.map +1 -1
- package/lib/module/translations/enGB.js.map +1 -1
- package/lib/module/translations/fr.js +18 -0
- package/lib/module/translations/fr.js.map +1 -0
- package/lib/module/translations/ko.js +18 -0
- package/lib/module/translations/ko.js.map +1 -0
- package/lib/module/translations/nl.js.map +1 -1
- package/lib/module/translations/pl.js.map +1 -1
- package/lib/module/translations/pt.js.map +1 -1
- package/lib/module/translations/utils.js +1 -1
- package/lib/module/translations/utils.js.map +1 -1
- package/lib/module/utils.js.map +1 -1
- package/lib/typescript/Date/Calendar.d.ts +2 -0
- package/lib/typescript/Date/DatePickerInput.d.ts +2 -16
- package/lib/typescript/Date/DatePickerInput.shared.d.ts +13 -0
- package/lib/typescript/Date/DatePickerInputWithoutModal.d.ts +51 -0
- package/lib/typescript/Date/DatePickerModalContent.d.ts +1 -0
- package/lib/typescript/Date/DatePickerModalContentHeader.d.ts +3 -0
- package/lib/typescript/Date/DatePickerModalHeader.d.ts +2 -0
- package/lib/typescript/Date/DateRangeInput.d.ts +2 -1
- package/lib/typescript/Date/YearPicker.d.ts +3 -1
- package/lib/typescript/TextInputMask.d.ts +31 -6
- package/lib/typescript/Time/TimePickerModal.d.ts +3 -1
- package/lib/typescript/Time/timeUtils.d.ts +1 -0
- package/lib/typescript/translations/ar.d.ts +3 -0
- package/lib/typescript/translations/fr.d.ts +3 -0
- package/lib/typescript/translations/ko.d.ts +3 -0
- package/package.json +26 -25
- package/src/Date/Calendar.tsx +7 -1
- package/src/Date/CalendarEdit.tsx +4 -4
- package/src/Date/DatePickerInput.shared.tsx +17 -0
- package/src/Date/DatePickerInput.tsx +32 -102
- package/src/Date/DatePickerInputWithoutModal.tsx +110 -0
- package/src/Date/DatePickerModalContent.tsx +12 -3
- package/src/Date/DatePickerModalContentHeader.tsx +13 -2
- package/src/Date/DatePickerModalHeader.tsx +6 -3
- package/src/Date/DateRangeInput.tsx +8 -2
- package/src/Date/Swiper.native.tsx +1 -0
- package/src/Date/YearPicker.tsx +5 -4
- package/src/Date/inputUtils.ts +1 -1
- package/src/Time/AnalogClockHours.tsx +1 -1
- package/src/Time/TimeInputs.tsx +2 -2
- package/src/Time/TimePickerModal.tsx +9 -2
- package/src/Time/timeUtils.ts +10 -0
- package/src/translations/ar.ts +21 -0
- package/src/translations/fr.ts +23 -0
- package/src/translations/ko.ts +21 -0
- package/src/translations/utils.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["AnalogClock.tsx"],"names":["Color","PanResponder","StyleSheet","View","useTheme","circleSize","clockTypes","getAngle","getHours","getHourType","getHourTypeFromOffset","getMinutes","hourTypes","React","useLatest","AnalogClockHours","AnimatedClockSwitcher","AnalogClockMinutes","DisplayModeContext","AnalogClock","hours","minutes","focused","is24Hour","onChange","theme","mode","useContext","shortPointer","clockRef","useRef","hoursRef","onChangeRef","minutesRef","focusedRef","is24HourRef","modeRef","onPointerMove","useCallback","e","final","x","nativeEvent","locationX","y","locationY","angle","current","hours24","previousHourType","pickedHours","hours12AndPm","hourTypeFromOffset","hours24AndPM","pm","undefined","pickedMinutes","panResponder","create","onPanResponderGrant","onPanResponderMove","onPanResponderRelease","onStartShouldSetPanResponder","returnTrue","onStartShouldSetPanResponderCapture","onMoveShouldSetPanResponder","onMoveShouldSetPanResponderCapture","onPanResponderTerminationRequest","onShouldBlockNativeResponder","dynamicSize","pointerNumber","degreesPerNumber","panHandlers","styles","clock","backgroundColor","dark","colors","surface","lighten","hex","darken","line","primary","transform","rotate","translateX","width","endPoint","absoluteFill","center","middlePoint","height","position","justifyContent","alignItems","borderRadius","right","bottom","marginBottom","memo"],"mappings":";;AAAA,OAAOA,KAAP,MAAkB,OAAlB;AACA,SAEEC,YAFF,EAGEC,UAHF,EAIEC,IAJF,QAKO,cALP;AAMA,SAASC,QAAT,QAAyB,oBAAzB;AACA,SACEC,UADF,EAEEC,UAFF,EAGEC,QAHF,EAIEC,QAJF,EAKEC,WALF,EAMEC,qBANF,EAOEC,UAPF,EAQEC,SARF,QAUO,aAVP;AAWA,OAAO,KAAKC,KAAZ,MAAuB,OAAvB;AACA,SAASC,SAAT,QAA0B,UAA1B;AACA,OAAOC,gBAAP,MAA6B,oBAA7B;AACA,OAAOC,qBAAP,MAAkC,yBAAlC;AACA,OAAOC,kBAAP,MAA+B,sBAA/B;AACA,SAASC,kBAAT,QAAmC,cAAnC;;AACA,SAASC,WAAT,OAgBG;AAAA,MAhBkB;AACnBC,IAAAA,KADmB;AAEnBC,IAAAA,OAFmB;AAGnBC,IAAAA,OAHmB;AAInBC,IAAAA,QAJmB;AAKnBC,IAAAA;AALmB,GAgBlB;AACD,QAAMC,KAAK,GAAGrB,QAAQ,EAAtB;AACA,QAAM;AAAEsB,IAAAA;AAAF,MAAWb,KAAK,CAACc,UAAN,CAAiBT,kBAAjB,CAAjB,CAFC,CAGD;;AACA,QAAMU,YAAY,GAAG,CAACR,KAAK,KAAK,CAAV,IAAeA,KAAK,GAAG,EAAxB,KAA+BG,QAApD;AACA,QAAMM,QAAQ,GAAGhB,KAAK,CAACiB,MAAN,CAA0B,IAA1B,CAAjB,CALC,CAMD;AACA;;AACA,QAAMC,QAAQ,GAAGjB,SAAS,CAACM,KAAD,CAA1B;AACA,QAAMY,WAAW,GAAGlB,SAAS,CAACU,QAAD,CAA7B;AACA,QAAMS,UAAU,GAAGnB,SAAS,CAACO,OAAD,CAA5B;AACA,QAAMa,UAAU,GAAGpB,SAAS,CAACQ,OAAD,CAA5B;AACA,QAAMa,WAAW,GAAGrB,SAAS,CAACS,QAAD,CAA7B;AACA,QAAMa,OAAO,GAAGtB,SAAS,CAACY,IAAD,CAAzB;AACA,QAAMW,aAAa,GAAGxB,KAAK,CAACyB,WAAN,CACpB,CAACC,CAAD,EAA2BC,KAA3B,KAA8C;AAC5C,QAAIC,CAAC,GAAGF,CAAC,CAACG,WAAF,CAAcC,SAAtB;AACA,QAAIC,CAAC,GAAGL,CAAC,CAACG,WAAF,CAAcG,SAAtB;AACA,QAAIC,KAAK,GAAGvC,QAAQ,CAACkC,CAAD,EAAIG,CAAJ,EAAOvC,UAAP,CAApB;;AACA,QAAI6B,UAAU,CAACa,OAAX,KAAuBzC,UAAU,CAACc,KAAtC,EAA6C;AAC3C,UAAI4B,OAAO,GAAGb,WAAW,CAACY,OAA1B;AACA,UAAIE,gBAAgB,GAAGxC,WAAW,CAACsB,QAAQ,CAACgB,OAAV,CAAlC;AACA,UAAIG,WAAW,GAAG1C,QAAQ,CAACsC,KAAD,EAAQG,gBAAR,CAA1B;AAEA,UAAIE,YAAY,GAAG,CAACH,OAAD,IAAYZ,OAAO,CAACW,OAAR,KAAoB,IAAnD;AAEA,UAAIK,kBAAkB,GAAG1C,qBAAqB,CAAC+B,CAAD,EAAIG,CAAJ,EAAOvC,UAAP,CAA9C;AACA,UAAIgD,YAAY,GAAGL,OAAO,IAAII,kBAAkB,KAAKxC,SAAS,CAAC0C,EAA/D,CAR2C,CAU3C;AACA;;AAEA,UAAIH,YAAY,IAAIE,YAApB,EAAkC;AAChCH,QAAAA,WAAW,IAAI,EAAf;AACD;;AACD,UAAId,OAAO,CAACW,OAAR,KAAoB,IAApB,IAA4BG,WAAW,KAAK,EAAhD,EAAoD;AAClDA,QAAAA,WAAW,GAAG,CAAd;AACD;;AAED,UACG,CAACF,OAAD,IAAYZ,OAAO,CAACW,OAAR,KAAoB,IAAhC,IAAwCG,WAAW,KAAK,EAAzD,IACAA,WAAW,KAAK,EAFlB,EAGE;AACAA,QAAAA,WAAW,GAAG,CAAd;AACD;;AAED,UAAInB,QAAQ,CAACgB,OAAT,KAAqBG,WAArB,IAAoCV,KAAxC,EAA+C;AAC7CR,QAAAA,WAAW,CAACe,OAAZ,CAAoB;AAClB3B,UAAAA,KAAK,EAAE8B,WADW;AAElB7B,UAAAA,OAAO,EAAEY,UAAU,CAACc,OAFF;AAGlBzB,UAAAA,OAAO,EAAEkB,KAAK,GAAGlC,UAAU,CAACe,OAAd,GAAwBkC;AAHpB,SAApB;AAKD;AACF,KAlCD,MAkCO,IAAIrB,UAAU,CAACa,OAAX,KAAuBzC,UAAU,CAACe,OAAtC,EAA+C;AACpD,UAAImC,aAAa,GAAG7C,UAAU,CAACmC,KAAD,CAA9B;;AACA,UAAIb,UAAU,CAACc,OAAX,KAAuBS,aAA3B,EAA0C;AACxCxB,QAAAA,WAAW,CAACe,OAAZ,CAAoB;AAClB3B,UAAAA,KAAK,EAAEW,QAAQ,CAACgB,OADE;AAElB1B,UAAAA,OAAO,EAAEmC;AAFS,SAApB;AAID;AACF;AACF,GAhDmB,EAiDpB,CAACtB,UAAD,EAAaC,WAAb,EAA0BJ,QAA1B,EAAoCC,WAApC,EAAiDC,UAAjD,EAA6DG,OAA7D,CAjDoB,CAAtB;AAmDA,QAAMqB,YAAY,GAAG5C,KAAK,CAACiB,MAAN,CACnB7B,YAAY,CAACyD,MAAb,CAAoB;AAClBC,IAAAA,mBAAmB,EAAGpB,CAAD,IAAOF,aAAa,CAACE,CAAD,EAAI,KAAJ,CADvB;AAElBqB,IAAAA,kBAAkB,EAAGrB,CAAD,IAAOF,aAAa,CAACE,CAAD,EAAI,KAAJ,CAFtB;AAGlBsB,IAAAA,qBAAqB,EAAGtB,CAAD,IAAOF,aAAa,CAACE,CAAD,EAAI,IAAJ,CAHzB;AAIlBuB,IAAAA,4BAA4B,EAAEC,UAJZ;AAKlBC,IAAAA,mCAAmC,EAAE,MAAM,KALzB;AAMlBC,IAAAA,2BAA2B,EAAEF,UANX;AAOlBG,IAAAA,kCAAkC,EAAEH,UAPlB;AAQlBI,IAAAA,gCAAgC,EAAEJ,UARhB;AASlBK,IAAAA,4BAA4B,EAAEL;AATZ,GAApB,CADmB,EAYnBhB,OAZF;AAaA,QAAMsB,WAAW,GAAG/C,OAAO,KAAKhB,UAAU,CAACc,KAAvB,IAAgCQ,YAAhC,GAA+C,EAA/C,GAAoD,CAAxE;AACA,QAAM0C,aAAa,GAAGhD,OAAO,KAAKhB,UAAU,CAACc,KAAvB,GAA+BA,KAA/B,GAAuCC,OAA7D;AACA,QAAMkD,gBAAgB,GAAGjD,OAAO,KAAKhB,UAAU,CAACc,KAAvB,GAA+B,EAA/B,GAAoC,CAA7D;AACA,sBACE,oBAAC,IAAD;AACE,IAAA,GAAG,EAAES;AADP,KAEM4B,YAAY,CAACe,WAFnB;AAGE,IAAA,KAAK,EAAE,CACLC,MAAM,CAACC,KADF,EAEL;AACEC,MAAAA,eAAe,EAAElD,KAAK,CAACmD,IAAN,GACb5E,KAAK,CAACyB,KAAK,CAACoD,MAAN,CAAaC,OAAd,CAAL,CAA4BC,OAA5B,CAAoC,GAApC,EAAyCC,GAAzC,EADa,GAEbhF,KAAK,CAACyB,KAAK,CAACoD,MAAN,CAAaC,OAAd,CAAL,CAA4BG,MAA5B,CAAmC,GAAnC,EAAwCD,GAAxC;AAHN,KAFK,CAHT,CAWE;AAXF;AAYE,IAAA,MAAM,EAAE;AAZV,mBAcE,oBAAC,IAAD;AACE,IAAA,KAAK,EAAE,CACLP,MAAM,CAACS,IADF,EAEL;AACEP,MAAAA,eAAe,EAAElD,KAAK,CAACoD,MAAN,CAAaM,OADhC;AAEEC,MAAAA,SAAS,EAAE,CACT;AAAEC,QAAAA,MAAM,EAAE,CAAC,EAAD,GAAMf,aAAa,GAAGC,gBAAtB,GAAyC;AAAnD,OADS,EAET;AACEe,QAAAA,UAAU,EAAEjF,UAAU,GAAG,CAAb,GAAiB,CAAjB,GAAqBgE,WAAW,GAAG;AADjD,OAFS,CAFb;AAQEkB,MAAAA,KAAK,EAAElF,UAAU,GAAG,CAAb,GAAiB,CAAjB,GAAqBgE;AAR9B,KAFK,CADT;AAcE,IAAA,aAAa,EAAC;AAdhB,kBAgBE,oBAAC,IAAD;AACE,IAAA,KAAK,EAAE,CAACI,MAAM,CAACe,QAAR,EAAkB;AAAEb,MAAAA,eAAe,EAAElD,KAAK,CAACoD,MAAN,CAAaM;AAAhC,KAAlB;AADT,IAhBF,CAdF,eAkCE,oBAAC,IAAD;AACE,IAAA,KAAK,EAAE,CAACjF,UAAU,CAACuF,YAAZ,EAA0BhB,MAAM,CAACiB,MAAjC,CADT;AAEE,IAAA,aAAa,EAAC;AAFhB,kBAIE,oBAAC,IAAD;AACE,IAAA,KAAK,EAAE,CACLjB,MAAM,CAACkB,WADF,EAEL;AACEhB,MAAAA,eAAe,EAAElD,KAAK,CAACoD,MAAN,CAAaM;AADhC,KAFK;AADT,IAJF,CAlCF,eA+CE,oBAAC,qBAAD;AACE,IAAA,OAAO,EAAE7D,OADX;AAEE,IAAA,KAAK,eAAE,oBAAC,gBAAD;AAAkB,MAAA,QAAQ,EAAEC,QAA5B;AAAsC,MAAA,KAAK,EAAEH;AAA7C,MAFT;AAGE,IAAA,OAAO,eAAE,oBAAC,kBAAD;AAAoB,MAAA,OAAO,EAAEC;AAA7B;AAHX,IA/CF,CADF;AAuDD;;AACD,MAAMoD,MAAM,GAAGvE,UAAU,CAACwD,MAAX,CAAkB;AAC/BgB,EAAAA,KAAK,EAAE;AACLkB,IAAAA,MAAM,EAAEvF,UADH;AAELkF,IAAAA,KAAK,EAAElF,UAFF;AAGLwF,IAAAA,QAAQ,EAAE,UAHL;AAILC,IAAAA,cAAc,EAAE,QAJX;AAKLC,IAAAA,UAAU,EAAE,QALP;AAMLC,IAAAA,YAAY,EAAE3F,UAAU,GAAG;AANtB,GADwB;AAS/BsF,EAAAA,WAAW,EAAE;AACXK,IAAAA,YAAY,EAAE,CADH;AAEXJ,IAAAA,MAAM,EAAE,CAFG;AAGXL,IAAAA,KAAK,EAAE;AAHI,GATkB;AAc/BG,EAAAA,MAAM,EAAE;AAAEI,IAAAA,cAAc,EAAE,QAAlB;AAA4BC,IAAAA,UAAU,EAAE;AAAxC,GAduB;AAe/BP,EAAAA,QAAQ,EAAE;AACRQ,IAAAA,YAAY,EAAE,EADN;AAERJ,IAAAA,MAAM,EAAE,EAFA;AAGRL,IAAAA,KAAK,EAAE,EAHC;AAIRM,IAAAA,QAAQ,EAAE,UAJF;AAKRI,IAAAA,KAAK,EAAE,CALC;AAMRC,IAAAA,MAAM,EAAE,CAAC;AAND,GAfqB;AAuB/BhB,EAAAA,IAAI,EAAE;AACJW,IAAAA,QAAQ,EAAE,UADN;AAEJM,IAAAA,YAAY,EAAE,CAAC,CAFX;AAGJP,IAAAA,MAAM,EAAE,CAHJ;AAIJI,IAAAA,YAAY,EAAE;AAJV;AAvByB,CAAlB,CAAf;;AA8BA,SAASjC,UAAT,GAAsB;AACpB,SAAO,IAAP;AACD;;AACD,4BAAelD,KAAK,CAACuF,IAAN,CAAWjF,WAAX,CAAf","sourcesContent":["import Color from 'color'\nimport {\n GestureResponderEvent,\n PanResponder,\n StyleSheet,\n View,\n} from 'react-native'\nimport { useTheme } from 'react-native-paper'\nimport {\n circleSize,\n clockTypes,\n getAngle,\n getHours,\n getHourType,\n getHourTypeFromOffset,\n getMinutes,\n hourTypes,\n PossibleClockTypes,\n} from './timeUtils'\nimport * as React from 'react'\nimport { useLatest } from '../utils'\nimport AnalogClockHours from './AnalogClockHours'\nimport AnimatedClockSwitcher from './AnimatedClockSwitcher'\nimport AnalogClockMinutes from './AnalogClockMinutes'\nimport { DisplayModeContext } from './TimePicker'\nfunction AnalogClock({\n hours,\n minutes,\n focused,\n is24Hour,\n onChange,\n}: {\n hours: number\n minutes: number\n focused: PossibleClockTypes\n is24Hour: boolean\n onChange: (hoursMinutesAndFocused: {\n hours: number\n minutes: number\n focused?: undefined | PossibleClockTypes\n }) => any\n}) {\n const theme = useTheme()\n const { mode } = React.useContext(DisplayModeContext)\n // used to make pointer shorter if hours are selected and above 12\n const shortPointer = (hours === 0 || hours > 12) && is24Hour\n const clockRef = React.useRef<View | null>(null)\n // Hooks are nice, sometimes... :-)..\n // We need the latest values, since the onPointerMove uses a closure to the function\n const hoursRef = useLatest(hours)\n const onChangeRef = useLatest(onChange)\n const minutesRef = useLatest(minutes)\n const focusedRef = useLatest(focused)\n const is24HourRef = useLatest(is24Hour)\n const modeRef = useLatest(mode)\n const onPointerMove = React.useCallback(\n (e: GestureResponderEvent, final: boolean) => {\n let x = e.nativeEvent.locationX\n let y = e.nativeEvent.locationY\n let angle = getAngle(x, y, circleSize)\n if (focusedRef.current === clockTypes.hours) {\n let hours24 = is24HourRef.current\n let previousHourType = getHourType(hoursRef.current)\n let pickedHours = getHours(angle, previousHourType)\n\n let hours12AndPm = !hours24 && modeRef.current === 'AM'\n\n let hourTypeFromOffset = getHourTypeFromOffset(x, y, circleSize)\n let hours24AndPM = hours24 && hourTypeFromOffset === hourTypes.pm\n\n // Avoiding the \"24h\"\n // Should be 12h for 12 hours and PM mode\n\n if (hours12AndPm || hours24AndPM) {\n pickedHours += 12\n }\n if (modeRef.current === 'AM' && pickedHours === 12) {\n pickedHours = 0\n }\n\n if (\n (!hours24 && modeRef.current === 'AM' && pickedHours === 12) ||\n pickedHours === 24\n ) {\n pickedHours = 0\n }\n\n if (hoursRef.current !== pickedHours || final) {\n onChangeRef.current({\n hours: pickedHours,\n minutes: minutesRef.current,\n focused: final ? clockTypes.minutes : undefined,\n })\n }\n } else if (focusedRef.current === clockTypes.minutes) {\n let pickedMinutes = getMinutes(angle)\n if (minutesRef.current !== pickedMinutes) {\n onChangeRef.current({\n hours: hoursRef.current,\n minutes: pickedMinutes,\n })\n }\n }\n },\n [focusedRef, is24HourRef, hoursRef, onChangeRef, minutesRef, modeRef]\n )\n const panResponder = React.useRef(\n PanResponder.create({\n onPanResponderGrant: (e) => onPointerMove(e, false),\n onPanResponderMove: (e) => onPointerMove(e, false),\n onPanResponderRelease: (e) => onPointerMove(e, true),\n onStartShouldSetPanResponder: returnTrue,\n onStartShouldSetPanResponderCapture: () => false,\n onMoveShouldSetPanResponder: returnTrue,\n onMoveShouldSetPanResponderCapture: returnTrue,\n onPanResponderTerminationRequest: returnTrue,\n onShouldBlockNativeResponder: returnTrue,\n })\n ).current\n const dynamicSize = focused === clockTypes.hours && shortPointer ? 33 : 0\n const pointerNumber = focused === clockTypes.hours ? hours : minutes\n const degreesPerNumber = focused === clockTypes.hours ? 30 : 6\n return (\n <View\n ref={clockRef}\n {...panResponder.panHandlers}\n style={[\n styles.clock,\n {\n backgroundColor: theme.dark\n ? Color(theme.colors.surface).lighten(1.2).hex()\n : Color(theme.colors.surface).darken(0.1).hex(),\n },\n ]}\n // @ts-ignore -> https://github.com/necolas/react-native-web/issues/506\n cursor={'pointer'}\n >\n <View\n style={[\n styles.line,\n {\n backgroundColor: theme.colors.primary,\n transform: [\n { rotate: -90 + pointerNumber * degreesPerNumber + 'deg' },\n {\n translateX: circleSize / 4 - 4 - dynamicSize / 2,\n },\n ],\n width: circleSize / 2 - 4 - dynamicSize,\n },\n ]}\n pointerEvents=\"none\"\n >\n <View\n style={[styles.endPoint, { backgroundColor: theme.colors.primary }]}\n />\n </View>\n <View\n style={[StyleSheet.absoluteFill, styles.center]}\n pointerEvents=\"none\"\n >\n <View\n style={[\n styles.middlePoint,\n {\n backgroundColor: theme.colors.primary,\n },\n ]}\n />\n </View>\n <AnimatedClockSwitcher\n focused={focused}\n hours={<AnalogClockHours is24Hour={is24Hour} hours={hours} />}\n minutes={<AnalogClockMinutes minutes={minutes} />}\n />\n </View>\n )\n}\nconst styles = StyleSheet.create({\n clock: {\n height: circleSize,\n width: circleSize,\n position: 'relative',\n justifyContent: 'center',\n alignItems: 'center',\n borderRadius: circleSize / 2,\n },\n middlePoint: {\n borderRadius: 4,\n height: 8,\n width: 8,\n },\n center: { justifyContent: 'center', alignItems: 'center' },\n endPoint: {\n borderRadius: 15,\n height: 30,\n width: 30,\n position: 'absolute',\n right: 0,\n bottom: -14,\n },\n line: {\n position: 'absolute',\n marginBottom: -1,\n height: 2,\n borderRadius: 4,\n },\n})\nfunction returnTrue() {\n return true\n}\nexport default React.memo(AnalogClock)\n"]}
|
|
1
|
+
{"version":3,"names":["Color","PanResponder","StyleSheet","View","useTheme","circleSize","clockTypes","getAngle","getHours","getHourType","getHourTypeFromOffset","getMinutes","hourTypes","React","useLatest","AnalogClockHours","AnimatedClockSwitcher","AnalogClockMinutes","DisplayModeContext","AnalogClock","hours","minutes","focused","is24Hour","onChange","theme","mode","useContext","shortPointer","clockRef","useRef","hoursRef","onChangeRef","minutesRef","focusedRef","is24HourRef","modeRef","onPointerMove","useCallback","e","final","x","nativeEvent","locationX","y","locationY","angle","current","hours24","previousHourType","pickedHours","hours12AndPm","hourTypeFromOffset","hours24AndPM","pm","undefined","pickedMinutes","panResponder","create","onPanResponderGrant","onPanResponderMove","onPanResponderRelease","onStartShouldSetPanResponder","returnTrue","onStartShouldSetPanResponderCapture","onMoveShouldSetPanResponder","onMoveShouldSetPanResponderCapture","onPanResponderTerminationRequest","onShouldBlockNativeResponder","dynamicSize","pointerNumber","degreesPerNumber","panHandlers","styles","clock","backgroundColor","dark","colors","surface","lighten","hex","darken","line","primary","transform","rotate","translateX","width","endPoint","absoluteFill","center","middlePoint","height","position","justifyContent","alignItems","borderRadius","right","bottom","marginBottom","memo"],"sources":["AnalogClock.tsx"],"sourcesContent":["import Color from 'color'\nimport {\n GestureResponderEvent,\n PanResponder,\n StyleSheet,\n View,\n} from 'react-native'\nimport { useTheme } from 'react-native-paper'\nimport {\n circleSize,\n clockTypes,\n getAngle,\n getHours,\n getHourType,\n getHourTypeFromOffset,\n getMinutes,\n hourTypes,\n PossibleClockTypes,\n} from './timeUtils'\nimport * as React from 'react'\nimport { useLatest } from '../utils'\nimport AnalogClockHours from './AnalogClockHours'\nimport AnimatedClockSwitcher from './AnimatedClockSwitcher'\nimport AnalogClockMinutes from './AnalogClockMinutes'\nimport { DisplayModeContext } from './TimePicker'\nfunction AnalogClock({\n hours,\n minutes,\n focused,\n is24Hour,\n onChange,\n}: {\n hours: number\n minutes: number\n focused: PossibleClockTypes\n is24Hour: boolean\n onChange: (hoursMinutesAndFocused: {\n hours: number\n minutes: number\n focused?: undefined | PossibleClockTypes\n }) => any\n}) {\n const theme = useTheme()\n const { mode } = React.useContext(DisplayModeContext)\n // used to make pointer shorter if hours are selected and above 12\n const shortPointer = (hours === 0 || hours > 12) && is24Hour\n const clockRef = React.useRef<View | null>(null)\n // Hooks are nice, sometimes... :-)..\n // We need the latest values, since the onPointerMove uses a closure to the function\n const hoursRef = useLatest(hours)\n const onChangeRef = useLatest(onChange)\n const minutesRef = useLatest(minutes)\n const focusedRef = useLatest(focused)\n const is24HourRef = useLatest(is24Hour)\n const modeRef = useLatest(mode)\n const onPointerMove = React.useCallback(\n (e: GestureResponderEvent, final: boolean) => {\n let x = e.nativeEvent.locationX\n let y = e.nativeEvent.locationY\n let angle = getAngle(x, y, circleSize)\n if (focusedRef.current === clockTypes.hours) {\n let hours24 = is24HourRef.current\n let previousHourType = getHourType(hoursRef.current)\n let pickedHours = getHours(angle, previousHourType)\n\n let hours12AndPm = !hours24 && modeRef.current === 'AM'\n\n let hourTypeFromOffset = getHourTypeFromOffset(x, y, circleSize)\n let hours24AndPM = hours24 && hourTypeFromOffset === hourTypes.pm\n\n // Avoiding the \"24h\"\n // Should be 12h for 12 hours and PM mode\n\n if (hours12AndPm || hours24AndPM) {\n pickedHours += 12\n }\n if (modeRef.current === 'AM' && pickedHours === 12) {\n pickedHours = 0\n }\n\n if (\n (!hours24 && modeRef.current === 'AM' && pickedHours === 12) ||\n pickedHours === 24\n ) {\n pickedHours = 0\n }\n\n if (hoursRef.current !== pickedHours || final) {\n onChangeRef.current({\n hours: pickedHours,\n minutes: minutesRef.current,\n focused: final ? clockTypes.minutes : undefined,\n })\n }\n } else if (focusedRef.current === clockTypes.minutes) {\n let pickedMinutes = getMinutes(angle)\n if (minutesRef.current !== pickedMinutes) {\n onChangeRef.current({\n hours: hoursRef.current,\n minutes: pickedMinutes,\n })\n }\n }\n },\n [focusedRef, is24HourRef, hoursRef, onChangeRef, minutesRef, modeRef]\n )\n const panResponder = React.useRef(\n PanResponder.create({\n onPanResponderGrant: (e) => onPointerMove(e, false),\n onPanResponderMove: (e) => onPointerMove(e, false),\n onPanResponderRelease: (e) => onPointerMove(e, true),\n onStartShouldSetPanResponder: returnTrue,\n onStartShouldSetPanResponderCapture: () => false,\n onMoveShouldSetPanResponder: returnTrue,\n onMoveShouldSetPanResponderCapture: returnTrue,\n onPanResponderTerminationRequest: returnTrue,\n onShouldBlockNativeResponder: returnTrue,\n })\n ).current\n const dynamicSize = focused === clockTypes.hours && shortPointer ? 33 : 0\n const pointerNumber = focused === clockTypes.hours ? hours : minutes\n const degreesPerNumber = focused === clockTypes.hours ? 30 : 6\n return (\n <View\n ref={clockRef}\n {...panResponder.panHandlers}\n style={[\n styles.clock,\n {\n backgroundColor: theme.dark\n ? Color(theme.colors.surface).lighten(1.2).hex()\n : Color(theme.colors.surface).darken(0.1).hex(),\n },\n ]}\n // @ts-ignore -> https://github.com/necolas/react-native-web/issues/506\n cursor={'pointer'}\n >\n <View\n style={[\n styles.line,\n {\n backgroundColor: theme.colors.primary,\n transform: [\n { rotate: -90 + pointerNumber * degreesPerNumber + 'deg' },\n {\n translateX: circleSize / 4 - 4 - dynamicSize / 2,\n },\n ],\n width: circleSize / 2 - 4 - dynamicSize,\n },\n ]}\n pointerEvents=\"none\"\n >\n <View\n style={[styles.endPoint, { backgroundColor: theme.colors.primary }]}\n />\n </View>\n <View\n style={[StyleSheet.absoluteFill, styles.center]}\n pointerEvents=\"none\"\n >\n <View\n style={[\n styles.middlePoint,\n {\n backgroundColor: theme.colors.primary,\n },\n ]}\n />\n </View>\n <AnimatedClockSwitcher\n focused={focused}\n hours={<AnalogClockHours is24Hour={is24Hour} hours={hours} />}\n minutes={<AnalogClockMinutes minutes={minutes} />}\n />\n </View>\n )\n}\nconst styles = StyleSheet.create({\n clock: {\n height: circleSize,\n width: circleSize,\n position: 'relative',\n justifyContent: 'center',\n alignItems: 'center',\n borderRadius: circleSize / 2,\n },\n middlePoint: {\n borderRadius: 4,\n height: 8,\n width: 8,\n },\n center: { justifyContent: 'center', alignItems: 'center' },\n endPoint: {\n borderRadius: 15,\n height: 30,\n width: 30,\n position: 'absolute',\n right: 0,\n bottom: -14,\n },\n line: {\n position: 'absolute',\n marginBottom: -1,\n height: 2,\n borderRadius: 4,\n },\n})\nfunction returnTrue() {\n return true\n}\nexport default React.memo(AnalogClock)\n"],"mappings":"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"}
|
|
@@ -30,7 +30,7 @@ function AnalogClockHours(_ref) {
|
|
|
30
30
|
color
|
|
31
31
|
} : null,
|
|
32
32
|
selectable: false
|
|
33
|
-
}, mode === 'AM' && i + 1 === 12 ? '00' : i + 1)))), is24Hour ? innerRange.map((a, i) => /*#__PURE__*/React.createElement(View, {
|
|
33
|
+
}, mode === 'AM' && !is24Hour && i + 1 === 12 ? '00' : i + 1)))), is24Hour ? innerRange.map((a, i) => /*#__PURE__*/React.createElement(View, {
|
|
34
34
|
key: i,
|
|
35
35
|
pointerEvents: "none",
|
|
36
36
|
style: [styles.innerHourRoot, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["React","View","StyleSheet","Text","circleSize","useTextColorOnPrimary","DisplayModeContext","AnalogClockHours","is24Hour","hours","mode","useContext","outerRange","getHourNumbers","innerRange","color","map","a","i","styles","outerHourRoot","top","left","outerHourInner","innerHourRoot","innerHourInner","innerHourText","create","position","justifyContent","alignItems","zIndex","width","height","marginLeft","marginTop","borderRadius","fontSize","size","count","arrayLength","angle","step","Math","PI","radius","Array","fill","x","round","cos","y","sin","memo"],"sources":["AnalogClockHours.tsx"],"sourcesContent":["import * as React from 'react'\nimport { View, StyleSheet } from 'react-native'\nimport { Text } from 'react-native-paper'\nimport { circleSize } from './timeUtils'\nimport { useTextColorOnPrimary } from '../utils'\nimport { DisplayModeContext } from './TimePicker'\n\nfunction AnalogClockHours({\n is24Hour,\n hours,\n}: {\n is24Hour: boolean\n hours: number\n}) {\n const { mode } = React.useContext(DisplayModeContext)\n const outerRange = getHourNumbers(false, circleSize, 12, 12)\n const innerRange = getHourNumbers(true, circleSize, 12, 12)\n const color = useTextColorOnPrimary()\n\n return (\n <>\n {outerRange.map((a, i) => (\n <View\n key={i}\n pointerEvents=\"none\"\n style={[\n styles.outerHourRoot,\n {\n top: a[1] || 0,\n left: a[0] || 0,\n },\n ]}\n >\n <View style={styles.outerHourInner}>\n {/* Display 00 instead of 12 for AM hours */}\n <Text style={hours === i + 1 ? { color } : null} selectable={false}>\n {mode === 'AM' && !is24Hour && i + 1 === 12 ? '00' : i + 1}\n </Text>\n </View>\n </View>\n ))}\n {is24Hour\n ? innerRange.map((a, i) => (\n <View\n key={i}\n pointerEvents=\"none\"\n style={[\n styles.innerHourRoot,\n {\n top: a[1] || 0,\n left: a[0] || 0,\n },\n ]}\n >\n <View style={styles.innerHourInner}>\n <Text\n selectable={false}\n style={[\n styles.innerHourText,\n i + 13 === hours || (i + 13 === 24 && hours === 0)\n ? { color }\n : null,\n ]}\n >\n {i + 13 === 24 ? '00' : i + 13}\n </Text>\n </View>\n </View>\n ))\n : null}\n </>\n )\n}\n\nconst styles = StyleSheet.create({\n outerHourRoot: {\n position: 'absolute',\n justifyContent: 'center',\n alignItems: 'center',\n zIndex: 20,\n width: 50,\n height: 50,\n marginLeft: -25,\n marginTop: -25,\n\n borderRadius: 25,\n },\n outerHourInner: { borderRadius: 25 },\n innerHourRoot: {\n position: 'absolute',\n zIndex: 20,\n justifyContent: 'center',\n alignItems: 'center',\n width: 40,\n height: 40,\n marginLeft: -20,\n marginTop: -20,\n borderRadius: 20,\n },\n innerHourInner: { borderRadius: 20 },\n innerHourText: { fontSize: 13 },\n})\n\nfunction getHourNumbers(\n is24Hour: boolean,\n size: number,\n count: number,\n arrayLength: number\n) {\n let angle = 0\n let step = (2 * Math.PI) / count\n let radius = size / (is24Hour ? 4 : 2.5)\n\n angle = (-90 * Math.PI) / 180 + Math.PI / 6\n\n return Array(arrayLength)\n .fill(true)\n .map(() => {\n let x = Math.round(size / 2 + radius * Math.cos(angle))\n let y = Math.round(size / 2 + radius * Math.sin(angle))\n angle += step\n return [x, y]\n })\n}\n\nexport default React.memo(AnalogClockHours)\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["React","View","StyleSheet","Text","circleSize","useTextColorOnPrimary","AnalogClockMinutes","minutes","range","getMinuteNumbers","color","map","a","i","currentMinutes","isZero","isCurrent","styles","outerHourRoot","top","left","outerHourInner","undefined","create","position","justifyContent","alignItems","zIndex","width","height","marginLeft","marginTop","borderRadius","innerHourRoot","innerHourInner","innerHourText","fontSize","textWhite","size","count","angle","step","Math","PI","radius","Array","fill","x","round","cos","y","sin","memo"],"sources":["AnalogClockMinutes.tsx"],"sourcesContent":["import * as React from 'react'\nimport { View, StyleSheet } from 'react-native'\nimport { Text } from 'react-native-paper'\nimport { circleSize } from './timeUtils'\nimport { useTextColorOnPrimary } from '../utils'\n\nfunction AnalogClockMinutes({ minutes }: { minutes: number }) {\n const range = getMinuteNumbers(circleSize, 12)\n const color = useTextColorOnPrimary()\n return (\n <>\n {range.map((a, i) => {\n const currentMinutes = i * 5\n const isZero = currentMinutes === 0\n let isCurrent =\n currentMinutes - 1 <= minutes && currentMinutes + 1 >= minutes\n if (isZero) {\n isCurrent = minutes >= 59 || currentMinutes + 1 >= minutes\n }\n return (\n <View\n key={i}\n pointerEvents=\"none\"\n style={[\n styles.outerHourRoot,\n {\n top: a[1] || 0,\n left: a[0] || 0,\n },\n ]}\n >\n <View style={styles.outerHourInner}>\n <Text\n style={isCurrent ? { color } : undefined}\n selectable={false}\n >\n {isZero ? '00' : currentMinutes}\n </Text>\n </View>\n </View>\n )\n })}\n </>\n )\n}\n\nconst styles = StyleSheet.create({\n outerHourRoot: {\n position: 'absolute',\n justifyContent: 'center',\n alignItems: 'center',\n zIndex: 20,\n width: 50,\n height: 50,\n marginLeft: -25,\n marginTop: -25,\n\n borderRadius: 25,\n },\n outerHourInner: { borderRadius: 25 },\n innerHourRoot: {\n position: 'absolute',\n zIndex: 20,\n justifyContent: 'center',\n alignItems: 'center',\n width: 40,\n height: 40,\n marginLeft: -20,\n marginTop: -20,\n borderRadius: 20,\n },\n innerHourInner: { borderRadius: 20 },\n innerHourText: { fontSize: 13 },\n textWhite: { color: '#fff' },\n})\n\nfunction getMinuteNumbers(size: number, count: number) {\n let angle = 0\n let step = (2 * Math.PI) / count\n let radius = size / 2.5\n\n angle = angle = (-90 * Math.PI) / 180\n\n return Array(12)\n .fill(true)\n .map(() => {\n let x = Math.round(size / 2 + radius * Math.cos(angle))\n let y = Math.round(size / 2 + radius * Math.sin(angle))\n angle += step\n return [x, y]\n })\n}\n\nexport default React.memo(AnalogClockMinutes)\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["React","Animated","StyleSheet","View","clockTypes","AnimatedClockSwitcher","focused","hours","minutes","collapsed","animatedCollapsed","useRef","Value","useEffect","timing","current","toValue","duration","useNativeDriver","start","absoluteFill","opacity","transform","scale","interpolate","inputRange","outputRange"],"sources":["AnimatedClockSwitcher.tsx"],"sourcesContent":["import * as React from 'react'\nimport { Animated, StyleSheet, View } from 'react-native'\nimport { clockTypes, PossibleClockTypes } from './timeUtils'\n\nexport default function AnimatedClockSwitcher({\n focused,\n hours,\n minutes,\n}: {\n focused: PossibleClockTypes\n hours: any\n minutes: any\n}) {\n const collapsed = focused === clockTypes.hours\n const animatedCollapsed = React.useRef<Animated.Value>(\n new Animated.Value(collapsed ? 1 : 0)\n )\n React.useEffect(() => {\n Animated.timing(animatedCollapsed.current, {\n toValue: collapsed ? 1 : 0,\n duration: 250,\n useNativeDriver: true,\n }).start()\n }, [collapsed])\n\n return (\n <View style={StyleSheet.absoluteFill}>\n <Animated.View\n pointerEvents={collapsed ? 'auto' : 'none'}\n style={[\n StyleSheet.absoluteFill,\n {\n opacity: animatedCollapsed.current,\n transform: [\n {\n scale: animatedCollapsed.current.interpolate({\n inputRange: [0, 1],\n outputRange: [0.95, 1],\n }),\n },\n ],\n },\n ]}\n >\n {hours}\n </Animated.View>\n <Animated.View\n pointerEvents={collapsed ? 'none' : 'auto'}\n style={[\n StyleSheet.absoluteFill,\n {\n opacity: animatedCollapsed.current.interpolate({\n inputRange: [0, 1],\n outputRange: [1, 0],\n }),\n transform: [\n {\n scale: animatedCollapsed.current.interpolate({\n inputRange: [0, 1],\n outputRange: [1, 0.95],\n }),\n },\n ],\n },\n ]}\n >\n {minutes}\n </Animated.View>\n </View>\n )\n}\n"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,QAAT,EAAmBC,UAAnB,EAA+BC,IAA/B,QAA2C,cAA3C;AACA,SAASC,UAAT,QAA+C,aAA/C;AAEA,eAAe,SAASC,qBAAT,OAQZ;EAAA,IAR2C;IAC5CC,OAD4C;IAE5CC,KAF4C;IAG5CC;EAH4C,CAQ3C;EACD,MAAMC,SAAS,GAAGH,OAAO,KAAKF,UAAU,CAACG,KAAzC;EACA,MAAMG,iBAAiB,GAAGV,KAAK,CAACW,MAAN,CACxB,IAAIV,QAAQ,CAACW,KAAb,CAAmBH,SAAS,GAAG,CAAH,GAAO,CAAnC,CADwB,CAA1B;EAGAT,KAAK,CAACa,SAAN,CAAgB,MAAM;IACpBZ,QAAQ,CAACa,MAAT,CAAgBJ,iBAAiB,CAACK,OAAlC,EAA2C;MACzCC,OAAO,EAAEP,SAAS,GAAG,CAAH,GAAO,CADgB;MAEzCQ,QAAQ,EAAE,GAF+B;MAGzCC,eAAe,EAAE;IAHwB,CAA3C,EAIGC,KAJH;EAKD,CAND,EAMG,CAACV,SAAD,CANH;EAQA,oBACE,oBAAC,IAAD;IAAM,KAAK,EAAEP,UAAU,CAACkB;EAAxB,gBACE,oBAAC,QAAD,CAAU,IAAV;IACE,aAAa,EAAEX,SAAS,GAAG,MAAH,GAAY,MADtC;IAEE,KAAK,EAAE,CACLP,UAAU,CAACkB,YADN,EAEL;MACEC,OAAO,EAAEX,iBAAiB,CAACK,OAD7B;MAEEO,SAAS,EAAE,CACT;QACEC,KAAK,EAAEb,iBAAiB,CAACK,OAAlB,CAA0BS,WAA1B,CAAsC;UAC3CC,UAAU,EAAE,CAAC,CAAD,EAAI,CAAJ,CAD+B;UAE3CC,WAAW,EAAE,CAAC,IAAD,EAAO,CAAP;QAF8B,CAAtC;MADT,CADS;IAFb,CAFK;EAFT,GAiBGnB,KAjBH,CADF,eAoBE,oBAAC,QAAD,CAAU,IAAV;IACE,aAAa,EAAEE,SAAS,GAAG,MAAH,GAAY,MADtC;IAEE,KAAK,EAAE,CACLP,UAAU,CAACkB,YADN,EAEL;MACEC,OAAO,EAAEX,iBAAiB,CAACK,OAAlB,CAA0BS,WAA1B,CAAsC;QAC7CC,UAAU,EAAE,CAAC,CAAD,EAAI,CAAJ,CADiC;QAE7CC,WAAW,EAAE,CAAC,CAAD,EAAI,CAAJ;MAFgC,CAAtC,CADX;MAKEJ,SAAS,EAAE,CACT;QACEC,KAAK,EAAEb,iBAAiB,CAACK,OAAlB,CAA0BS,WAA1B,CAAsC;UAC3CC,UAAU,EAAE,CAAC,CAAD,EAAI,CAAJ,CAD+B;UAE3CC,WAAW,EAAE,CAAC,CAAD,EAAI,IAAJ;QAF8B,CAAtC;MADT,CADS;IALb,CAFK;EAFT,GAoBGlB,OApBH,CApBF,CADF;AA6CD"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
function _extends() { _extends = Object.assign
|
|
1
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
2
|
|
|
3
3
|
import * as React from 'react';
|
|
4
4
|
import { View, TextInput, StyleSheet } from 'react-native';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["React","View","TextInput","StyleSheet","useTheme","TouchableRipple","Color","inputTypes","useInputColors","TimeInput","ref","value","clockType","pressed","onPress","onChanged","inputType","rest","controlledValue","setControlledValue","useState","onInnerChange","text","Number","useEffect","theme","inputFocused","setInputFocused","highlighted","picker","color","backgroundColor","formattedValue","length","styles","root","input","borderRadius","roundness","dark","absoluteFill","buttonOverlay","colors","primary","fade","hex","create","position","height","width","fontSize","textAlign","textAlignVertical","overflow","forwardRef"],"sources":["TimeInput.tsx"],"sourcesContent":["import * as React from 'react'\nimport { View, TextInput, TextInputProps, StyleSheet } from 'react-native'\nimport { useTheme, TouchableRipple } from 'react-native-paper'\n\nimport Color from 'color'\nimport {\n inputTypes,\n PossibleClockTypes,\n PossibleInputTypes,\n useInputColors,\n} from './timeUtils'\n\ninterface TimeInputProps\n extends Omit<Omit<TextInputProps, 'value'>, 'onFocus'> {\n value: number\n clockType: PossibleClockTypes\n onPress?: (type: PossibleClockTypes) => any\n pressed: boolean\n onChanged: (n: number) => any\n inputType: PossibleInputTypes\n}\n\nfunction TimeInput(\n {\n value,\n clockType,\n pressed,\n onPress,\n onChanged,\n inputType,\n ...rest\n }: TimeInputProps,\n ref: any\n) {\n const [controlledValue, setControlledValue] = React.useState<string>(\n `${value}`\n )\n\n const onInnerChange = (text: string) => {\n setControlledValue(text)\n if (text !== '' && text !== '0') {\n onChanged(Number(text))\n }\n }\n\n React.useEffect(() => {\n setControlledValue(`${value}`)\n }, [value])\n\n const theme = useTheme()\n const [inputFocused, setInputFocused] = React.useState<boolean>(false)\n\n const highlighted = inputType === inputTypes.picker ? pressed : inputFocused\n\n const { color, backgroundColor } = useInputColors(highlighted)\n\n let formattedValue = controlledValue\n if (!inputFocused) {\n formattedValue =\n controlledValue.length === 1\n ? `0${controlledValue}`\n : `${controlledValue}`\n }\n\n return (\n <View style={styles.root}>\n <TextInput\n ref={ref}\n style={[\n styles.input,\n {\n color,\n backgroundColor,\n borderRadius: theme.roundness,\n },\n ]}\n value={formattedValue}\n maxLength={2}\n onFocus={() => setInputFocused(true)}\n onBlur={() => setInputFocused(false)}\n keyboardAppearance={theme.dark ? 'dark' : 'default'}\n keyboardType=\"number-pad\"\n onChangeText={onInnerChange}\n {...rest}\n />\n {onPress && inputType === inputTypes.picker ? (\n <TouchableRipple\n style={[\n StyleSheet.absoluteFill,\n styles.buttonOverlay,\n {\n // backgroundColor: 'blue',\n borderRadius: theme.roundness,\n },\n ]}\n rippleColor={Color(theme.colors.primary).fade(0.7).hex()}\n onPress={() => onPress(clockType)}\n borderless={true}\n >\n <View />\n </TouchableRipple>\n ) : null}\n </View>\n )\n}\n\nconst styles = StyleSheet.create({\n root: { position: 'relative', height: 80, width: 96 },\n input: {\n fontSize: 50,\n textAlign: 'center',\n textAlignVertical: 'center',\n width: 96,\n height: 80,\n },\n buttonOverlay: { overflow: 'hidden' },\n})\n\nexport default React.forwardRef(TimeInput)\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["React","View","StyleSheet","useWindowDimensions","useTheme","clockTypes","toHourInputFormat","toHourOutputFormat","TimeInput","AmPmSwitcher","useLatest","TimeInputs","hours","minutes","onFocusInput","focused","inputType","onChange","is24Hour","startInput","useRef","endInput","dimensions","isLandscape","width","height","theme","onSubmitStartInput","useCallback","current","focus","onSubmitEndInput","minutesRef","onChangeHours","newHours","styles","inputContainer","inputContainerLandscape","newHoursFromInput","hoursAndMinutesSeparator","spaceDot","dot","backgroundColor","colors","text","betweenDot","newMinutesFromInput","newMinutes","spaceBetweenInputsAndSwitcher","create","flexDirection","alignItems","flex","fontSize","borderRadius","memo"],"sources":["TimeInputs.tsx"],"sourcesContent":["// @typescript-eslint/no-unused-vars\n// WORK IN PROGRESS\n\nimport * as React from 'react'\nimport {\n View,\n StyleSheet,\n useWindowDimensions,\n TextInput as TextInputNative,\n} from 'react-native'\nimport { useTheme } from 'react-native-paper'\n\nimport {\n clockTypes,\n PossibleClockTypes,\n PossibleInputTypes,\n toHourInputFormat,\n toHourOutputFormat,\n} from './timeUtils'\nimport TimeInput from './TimeInput'\nimport AmPmSwitcher from './AmPmSwitcher'\nimport { useLatest } from '../utils'\n\nfunction TimeInputs({\n hours,\n minutes,\n onFocusInput,\n focused,\n inputType,\n onChange,\n is24Hour,\n}: {\n inputType: PossibleInputTypes\n focused: PossibleClockTypes\n hours: number\n minutes: number\n onFocusInput: (type: PossibleClockTypes) => any\n onChange: (hoursMinutesAndFocused: {\n hours: number\n minutes: number\n focused?: undefined | PossibleClockTypes\n }) => any\n is24Hour: boolean\n}) {\n const startInput = React.useRef<TextInputNative | null>(null)\n const endInput = React.useRef<TextInputNative | null>(null)\n const dimensions = useWindowDimensions()\n const isLandscape = dimensions.width > dimensions.height\n const theme = useTheme()\n\n const onSubmitStartInput = React.useCallback(() => {\n if (endInput.current) {\n endInput.current.focus()\n }\n }, [endInput])\n\n const onSubmitEndInput = React.useCallback(() => {\n // TODO: close modal and persist time\n }, [])\n\n const minutesRef = useLatest(minutes)\n const onChangeHours = React.useCallback(\n (newHours: number) => {\n onChange({\n hours: newHours,\n minutes: minutesRef.current,\n focused: clockTypes.hours,\n })\n },\n [onChange, minutesRef]\n )\n\n return (\n <View\n style={[\n styles.inputContainer,\n isLandscape && styles.inputContainerLandscape,\n ]}\n >\n <TimeInput\n ref={startInput}\n placeholder={'00'}\n value={toHourInputFormat(hours, is24Hour)}\n clockType={clockTypes.hours}\n pressed={focused === clockTypes.hours}\n onPress={onFocusInput}\n inputType={inputType}\n returnKeyType={'next'}\n onSubmitEditing={onSubmitStartInput}\n blurOnSubmit={false}\n onChanged={(newHoursFromInput) => {\n let newHours = toHourOutputFormat(newHoursFromInput, hours, is24Hour)\n if (newHoursFromInput > 24) {\n newHours = 24\n }\n onChange({\n hours: newHours,\n minutes,\n })\n }}\n // onChangeText={onChangeStartInput}\n />\n <View style={styles.hoursAndMinutesSeparator}>\n <View style={styles.spaceDot} />\n <View style={[styles.dot, { backgroundColor: theme.colors.text }]} />\n <View style={styles.betweenDot} />\n <View style={[styles.dot, { backgroundColor: theme.colors.text }]} />\n <View style={styles.spaceDot} />\n </View>\n <TimeInput\n ref={endInput}\n placeholder={'00'}\n value={minutes}\n clockType={clockTypes.minutes}\n pressed={focused === clockTypes.minutes}\n onPress={onFocusInput}\n inputType={inputType}\n onSubmitEditing={onSubmitEndInput}\n onChanged={(newMinutesFromInput) => {\n let newMinutes = newMinutesFromInput\n if (newMinutesFromInput > 59) {\n newMinutes = 59\n }\n onChange({\n hours,\n minutes: newMinutes,\n })\n }}\n />\n {!is24Hour && (\n <>\n <View style={styles.spaceBetweenInputsAndSwitcher} />\n <AmPmSwitcher hours={hours} onChange={onChangeHours} />\n </>\n )}\n </View>\n )\n}\n\nconst styles = StyleSheet.create({\n spaceBetweenInputsAndSwitcher: { width: 12 },\n inputContainer: {\n flexDirection: 'row',\n alignItems: 'center',\n },\n inputContainerLandscape: {\n flex: 1,\n },\n hoursAndMinutesSeparator: {\n fontSize: 65,\n width: 24,\n alignItems: 'center',\n },\n spaceDot: {\n flex: 1,\n },\n dot: {\n width: 7,\n height: 7,\n borderRadius: 7 / 2,\n },\n betweenDot: {\n height: 12,\n },\n})\n\nexport default React.memo(TimeInputs)\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["React","View","StyleSheet","useWindowDimensions","inputTypes","toHourInputFormat","toHourOutputFormat","AnalogClock","circleSize","TimeInputs","DisplayModeContext","createContext","mode","setMode","TimePicker","hours","minutes","onFocusInput","focused","inputType","onChange","locale","displayMode","setDisplayMode","useState","undefined","dimensions","isLandscape","width","height","is24Hour","useMemo","formatter","Intl","DateTimeFormat","hour","minute","timeZone","formatted","format","Date","UTC","includes","useEffect","onInnerChange","useCallback","params","styles","rootLandscape","rootPortrait","picker","clockContainer","create","flexDirection","alignItems","justifyContent","paddingTop","paddingLeft","paddingRight","memo"],"sources":["TimePicker.tsx"],"sourcesContent":["import * as React from 'react'\nimport { View, StyleSheet, useWindowDimensions } from 'react-native'\n\nimport {\n inputTypes,\n PossibleClockTypes,\n PossibleInputTypes,\n toHourInputFormat,\n toHourOutputFormat,\n} from './timeUtils'\n\nimport AnalogClock from './AnalogClock'\nimport { circleSize } from './timeUtils'\nimport TimeInputs from './TimeInputs'\n\nexport const DisplayModeContext = React.createContext<{\n mode: 'AM' | 'PM' | undefined\n setMode: React.Dispatch<React.SetStateAction<'AM' | 'PM' | undefined>>\n}>({ mode: 'AM', setMode: () => {} })\n\ntype onChangeFunc = ({\n hours,\n minutes,\n focused,\n}: {\n hours: number\n minutes: number\n focused?: undefined | PossibleClockTypes\n}) => any\n\nfunction TimePicker({\n hours,\n minutes,\n onFocusInput,\n focused,\n inputType,\n onChange,\n locale,\n}: {\n locale?: undefined | string\n inputType: PossibleInputTypes\n focused: PossibleClockTypes\n hours: number\n minutes: number\n onFocusInput: (type: PossibleClockTypes) => any\n onChange: onChangeFunc\n}) {\n const [displayMode, setDisplayMode] = React.useState<'AM' | 'PM' | undefined>(\n undefined\n )\n const dimensions = useWindowDimensions()\n const isLandscape = dimensions.width > dimensions.height\n\n // method to check whether we have 24 hours in clock or 12\n const is24Hour = React.useMemo(() => {\n const formatter = new Intl.DateTimeFormat(locale, {\n hour: '2-digit',\n minute: '2-digit',\n timeZone: 'UTC',\n })\n const formatted = formatter.format(new Date(Date.UTC(2020, 1, 1, 23)))\n return formatted.includes('23')\n }, [locale])\n\n // Initialize display Mode according the hours value\n React.useEffect(() => {\n if (hours >= 12) {\n setDisplayMode('PM')\n } else {\n setDisplayMode('AM')\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [])\n\n const onInnerChange = React.useCallback<onChangeFunc>(\n (params) => {\n params.hours = toHourOutputFormat(params.hours, hours, is24Hour)\n onChange(params)\n },\n [onChange, hours, is24Hour]\n )\n\n return (\n <DisplayModeContext.Provider\n value={{ mode: displayMode, setMode: setDisplayMode }}\n >\n <View style={isLandscape ? styles.rootLandscape : styles.rootPortrait}>\n <TimeInputs\n inputType={inputType}\n hours={hours}\n minutes={minutes}\n is24Hour={is24Hour}\n onChange={onChange}\n onFocusInput={onFocusInput}\n focused={focused}\n />\n {inputType === inputTypes.picker ? (\n <View style={styles.clockContainer}>\n <AnalogClock\n hours={toHourInputFormat(hours, is24Hour)}\n minutes={minutes}\n focused={focused}\n is24Hour={is24Hour}\n onChange={onInnerChange}\n />\n </View>\n ) : null}\n </View>\n </DisplayModeContext.Provider>\n )\n}\n\nconst styles = StyleSheet.create({\n rootLandscape: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'center',\n width: 24 * 3 + 96 * 2 + 52 + circleSize,\n },\n rootPortrait: {},\n clockContainer: { paddingTop: 36, paddingLeft: 12, paddingRight: 12 },\n})\n\nexport default React.memo(TimePicker)\n"],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import * as React from 'react';
|
|
|
2
2
|
import { Modal, StyleSheet, View, Text, Animated, TouchableWithoutFeedback, KeyboardAvoidingView } from 'react-native';
|
|
3
3
|
import { Button, IconButton, overlay, useTheme } from 'react-native-paper';
|
|
4
4
|
import TimePicker from './TimePicker';
|
|
5
|
-
import { clockTypes,
|
|
5
|
+
import { clockTypes, getTimeInputTypeIcon, inputTypes, reverseInputTypes } from './timeUtils';
|
|
6
6
|
const supportedOrientations = ['portrait', 'portrait-upside-down', 'landscape', 'landscape-left', 'landscape-right'];
|
|
7
7
|
export function TimePickerModal(_ref) {
|
|
8
8
|
let {
|
|
@@ -16,7 +16,9 @@ export function TimePickerModal(_ref) {
|
|
|
16
16
|
cancelLabel = 'Cancel',
|
|
17
17
|
confirmLabel = 'Ok',
|
|
18
18
|
animationType = 'none',
|
|
19
|
-
locale
|
|
19
|
+
locale,
|
|
20
|
+
keyboardIcon = 'keyboard-outline',
|
|
21
|
+
clockIcon = 'clock-outline'
|
|
20
22
|
} = _ref;
|
|
21
23
|
const theme = useTheme();
|
|
22
24
|
const [inputType, setInputType] = React.useState(inputTypes.picker);
|
|
@@ -83,7 +85,10 @@ export function TimePickerModal(_ref) {
|
|
|
83
85
|
})), /*#__PURE__*/React.createElement(View, {
|
|
84
86
|
style: styles.bottom
|
|
85
87
|
}, /*#__PURE__*/React.createElement(IconButton, {
|
|
86
|
-
icon:
|
|
88
|
+
icon: getTimeInputTypeIcon(inputType, {
|
|
89
|
+
keyboard: keyboardIcon,
|
|
90
|
+
picker: clockIcon
|
|
91
|
+
}),
|
|
87
92
|
onPress: () => setInputType(reverseInputTypes[inputType]),
|
|
88
93
|
size: 24,
|
|
89
94
|
style: styles.inputTypeToggle,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["TimePickerModal.tsx"],"names":["React","Modal","StyleSheet","View","Text","Animated","TouchableWithoutFeedback","KeyboardAvoidingView","Button","IconButton","overlay","useTheme","TimePicker","clockTypes","inputTypeIcons","inputTypes","reverseInputTypes","supportedOrientations","TimePickerModal","visible","onDismiss","onConfirm","hours","minutes","label","uppercase","cancelLabel","confirmLabel","animationType","locale","theme","inputType","setInputType","useState","picker","focused","setFocused","localHours","setLocalHours","getHours","localMinutes","setLocalMinutes","getMinutes","useEffect","onFocusInput","useCallback","type","onChange","params","absoluteFill","styles","modalBackground","backgroundColor","colors","backdrop","modalRoot","keyboardView","modalContent","dark","surface","borderRadius","roundness","labelContainer","color","text","toUpperCase","timePickerContainer","bottom","inputTypeToggle","fill","undefined","Date","create","justifyContent","alignItems","flex","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","minWidth","paddingLeft","paddingRight","letterSpacing","fontSize","padding","flexDirection","margin","memo"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport {\n Modal,\n StyleSheet,\n View,\n Text,\n Animated,\n TouchableWithoutFeedback,\n KeyboardAvoidingView,\n} from 'react-native'\n\nimport { Button, IconButton, overlay, useTheme } from 'react-native-paper'\nimport TimePicker from './TimePicker'\nimport {\n clockTypes,\n inputTypeIcons,\n inputTypes,\n PossibleClockTypes,\n PossibleInputTypes,\n reverseInputTypes,\n} from './timeUtils'\n\nconst supportedOrientations: any[] = [\n 'portrait',\n 'portrait-upside-down',\n 'landscape',\n 'landscape-left',\n 'landscape-right',\n]\n\nexport function TimePickerModal({\n visible,\n onDismiss,\n onConfirm,\n hours,\n minutes,\n label = 'Select time',\n uppercase = true,\n cancelLabel = 'Cancel',\n confirmLabel = 'Ok',\n animationType = 'none',\n locale,\n}: {\n locale?: undefined | string\n label?: string\n uppercase?: boolean\n cancelLabel?: string\n confirmLabel?: string\n hours?: number | undefined\n minutes?: number | undefined\n visible: boolean | undefined\n onDismiss: () => any\n onConfirm: (hoursAndMinutes: { hours: number; minutes: number }) => any\n animationType?: 'slide' | 'fade' | 'none'\n}) {\n const theme = useTheme()\n\n const [inputType, setInputType] = React.useState<PossibleInputTypes>(\n inputTypes.picker\n )\n const [focused, setFocused] = React.useState<PossibleClockTypes>(\n clockTypes.hours\n )\n const [localHours, setLocalHours] = React.useState<number>(getHours(hours))\n const [localMinutes, setLocalMinutes] = React.useState<number>(\n getMinutes(minutes)\n )\n\n React.useEffect(() => {\n setLocalHours(getHours(hours))\n }, [setLocalHours, hours])\n\n React.useEffect(() => {\n setLocalMinutes(getMinutes(minutes))\n }, [setLocalMinutes, minutes])\n\n const onFocusInput = React.useCallback(\n (type: PossibleClockTypes) => setFocused(type),\n []\n )\n const onChange = React.useCallback(\n (params: {\n focused?: PossibleClockTypes | undefined\n hours: number\n minutes: number\n }) => {\n if (params.focused) {\n setFocused(params.focused)\n }\n\n setLocalHours(params.hours)\n setLocalMinutes(params.minutes)\n },\n [setFocused, setLocalHours, setLocalMinutes]\n )\n return (\n <Modal\n animationType={animationType}\n transparent={true}\n visible={visible}\n onRequestClose={onDismiss}\n presentationStyle=\"overFullScreen\"\n supportedOrientations={supportedOrientations}\n //@ts-ignore\n statusBarTranslucent={true}\n >\n <>\n <TouchableWithoutFeedback onPress={onDismiss}>\n <View\n style={[\n StyleSheet.absoluteFill,\n styles.modalBackground,\n { backgroundColor: theme.colors.backdrop },\n ]}\n />\n </TouchableWithoutFeedback>\n\n <View\n style={[StyleSheet.absoluteFill, styles.modalRoot]}\n pointerEvents=\"box-none\"\n >\n <KeyboardAvoidingView\n style={styles.keyboardView}\n behavior={'padding'}\n >\n <Animated.View\n style={[\n styles.modalContent,\n {\n backgroundColor: theme.dark\n ? overlay(10, theme.colors.surface)\n : theme.colors.surface,\n borderRadius: theme.roundness,\n },\n ]}\n >\n <View style={styles.labelContainer}>\n <Text style={[styles.label, { color: theme.colors.text }]}>\n {uppercase ? label.toUpperCase() : label}\n </Text>\n </View>\n <View style={styles.timePickerContainer}>\n <TimePicker\n locale={locale}\n inputType={inputType}\n focused={focused}\n hours={localHours}\n minutes={localMinutes}\n onChange={onChange}\n onFocusInput={onFocusInput}\n />\n </View>\n <View style={styles.bottom}>\n <IconButton\n icon={inputTypeIcons[reverseInputTypes[inputType]]}\n onPress={() => setInputType(reverseInputTypes[inputType])}\n size={24}\n style={styles.inputTypeToggle}\n accessibilityLabel=\"toggle keyboard\"\n />\n <View style={styles.fill} />\n <Button onPress={onDismiss} uppercase={uppercase}>\n {cancelLabel}\n </Button>\n <Button\n onPress={() =>\n onConfirm({ hours: localHours, minutes: localMinutes })\n }\n uppercase={uppercase}\n >\n {confirmLabel}\n </Button>\n </View>\n </Animated.View>\n </KeyboardAvoidingView>\n </View>\n </>\n </Modal>\n )\n}\n\nfunction getMinutes(minutes: number | undefined | null): number {\n return minutes === undefined || minutes === null\n ? new Date().getMinutes()\n : minutes\n}\nfunction getHours(hours: number | undefined | null): number {\n return hours === undefined || hours === null ? new Date().getHours() : hours\n}\n\nconst styles = StyleSheet.create({\n modalRoot: {\n justifyContent: 'center',\n alignItems: 'center',\n flex: 1,\n },\n keyboardView: {\n justifyContent: 'center',\n alignItems: 'center',\n flex: 1,\n },\n modalBackground: {\n flex: 1,\n },\n modalContent: {\n shadowColor: '#000',\n shadowOffset: {\n width: 0,\n height: 5,\n },\n shadowOpacity: 0.34,\n shadowRadius: 6.27,\n elevation: 10,\n minWidth: 287,\n },\n labelContainer: {\n height: 28,\n justifyContent: 'flex-end',\n paddingLeft: 24,\n paddingRight: 24,\n },\n label: {\n letterSpacing: 1,\n fontSize: 13,\n },\n timePickerContainer: { padding: 24 },\n bottom: {\n flexDirection: 'row',\n alignItems: 'center',\n padding: 8,\n },\n inputTypeToggle: { margin: 4 },\n fill: { flex: 1 },\n})\n\nexport default React.memo(TimePickerModal)\n"]}
|
|
1
|
+
{"version":3,"names":["React","Modal","StyleSheet","View","Text","Animated","TouchableWithoutFeedback","KeyboardAvoidingView","Button","IconButton","overlay","useTheme","TimePicker","clockTypes","getTimeInputTypeIcon","inputTypes","reverseInputTypes","supportedOrientations","TimePickerModal","visible","onDismiss","onConfirm","hours","minutes","label","uppercase","cancelLabel","confirmLabel","animationType","locale","keyboardIcon","clockIcon","theme","inputType","setInputType","useState","picker","focused","setFocused","localHours","setLocalHours","getHours","localMinutes","setLocalMinutes","getMinutes","useEffect","onFocusInput","useCallback","type","onChange","params","absoluteFill","styles","modalBackground","backgroundColor","colors","backdrop","modalRoot","keyboardView","modalContent","dark","surface","borderRadius","roundness","labelContainer","color","text","toUpperCase","timePickerContainer","bottom","keyboard","inputTypeToggle","fill","undefined","Date","create","justifyContent","alignItems","flex","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","minWidth","paddingLeft","paddingRight","letterSpacing","fontSize","padding","flexDirection","margin","memo"],"sources":["TimePickerModal.tsx"],"sourcesContent":["import * as React from 'react'\nimport {\n Modal,\n StyleSheet,\n View,\n Text,\n Animated,\n TouchableWithoutFeedback,\n KeyboardAvoidingView,\n} from 'react-native'\n\nimport { Button, IconButton, overlay, useTheme } from 'react-native-paper'\nimport TimePicker from './TimePicker'\nimport {\n clockTypes,\n getTimeInputTypeIcon,\n inputTypes,\n PossibleClockTypes,\n PossibleInputTypes,\n reverseInputTypes,\n} from './timeUtils'\n\nconst supportedOrientations: any[] = [\n 'portrait',\n 'portrait-upside-down',\n 'landscape',\n 'landscape-left',\n 'landscape-right',\n]\n\nexport function TimePickerModal({\n visible,\n onDismiss,\n onConfirm,\n hours,\n minutes,\n label = 'Select time',\n uppercase = true,\n cancelLabel = 'Cancel',\n confirmLabel = 'Ok',\n animationType = 'none',\n locale,\n keyboardIcon = 'keyboard-outline',\n clockIcon = 'clock-outline',\n}: {\n locale?: undefined | string\n label?: string\n uppercase?: boolean\n cancelLabel?: string\n confirmLabel?: string\n hours?: number | undefined\n minutes?: number | undefined\n visible: boolean | undefined\n onDismiss: () => any\n onConfirm: (hoursAndMinutes: { hours: number; minutes: number }) => any\n animationType?: 'slide' | 'fade' | 'none'\n keyboardIcon?: string\n clockIcon?: string\n}) {\n const theme = useTheme()\n\n const [inputType, setInputType] = React.useState<PossibleInputTypes>(\n inputTypes.picker\n )\n const [focused, setFocused] = React.useState<PossibleClockTypes>(\n clockTypes.hours\n )\n const [localHours, setLocalHours] = React.useState<number>(getHours(hours))\n const [localMinutes, setLocalMinutes] = React.useState<number>(\n getMinutes(minutes)\n )\n\n React.useEffect(() => {\n setLocalHours(getHours(hours))\n }, [setLocalHours, hours])\n\n React.useEffect(() => {\n setLocalMinutes(getMinutes(minutes))\n }, [setLocalMinutes, minutes])\n\n const onFocusInput = React.useCallback(\n (type: PossibleClockTypes) => setFocused(type),\n []\n )\n const onChange = React.useCallback(\n (params: {\n focused?: PossibleClockTypes | undefined\n hours: number\n minutes: number\n }) => {\n if (params.focused) {\n setFocused(params.focused)\n }\n\n setLocalHours(params.hours)\n setLocalMinutes(params.minutes)\n },\n [setFocused, setLocalHours, setLocalMinutes]\n )\n return (\n <Modal\n animationType={animationType}\n transparent={true}\n visible={visible}\n onRequestClose={onDismiss}\n presentationStyle=\"overFullScreen\"\n supportedOrientations={supportedOrientations}\n //@ts-ignore\n statusBarTranslucent={true}\n >\n <>\n <TouchableWithoutFeedback onPress={onDismiss}>\n <View\n style={[\n StyleSheet.absoluteFill,\n styles.modalBackground,\n { backgroundColor: theme.colors.backdrop },\n ]}\n />\n </TouchableWithoutFeedback>\n\n <View\n style={[StyleSheet.absoluteFill, styles.modalRoot]}\n pointerEvents=\"box-none\"\n >\n <KeyboardAvoidingView\n style={styles.keyboardView}\n behavior={'padding'}\n >\n <Animated.View\n style={[\n styles.modalContent,\n {\n backgroundColor: theme.dark\n ? overlay(10, theme.colors.surface)\n : theme.colors.surface,\n borderRadius: theme.roundness,\n },\n ]}\n >\n <View style={styles.labelContainer}>\n <Text style={[styles.label, { color: theme.colors.text }]}>\n {uppercase ? label.toUpperCase() : label}\n </Text>\n </View>\n <View style={styles.timePickerContainer}>\n <TimePicker\n locale={locale}\n inputType={inputType}\n focused={focused}\n hours={localHours}\n minutes={localMinutes}\n onChange={onChange}\n onFocusInput={onFocusInput}\n />\n </View>\n <View style={styles.bottom}>\n <IconButton\n icon={getTimeInputTypeIcon(inputType, {\n keyboard: keyboardIcon,\n picker: clockIcon,\n })}\n onPress={() => setInputType(reverseInputTypes[inputType])}\n size={24}\n style={styles.inputTypeToggle}\n accessibilityLabel=\"toggle keyboard\"\n />\n <View style={styles.fill} />\n <Button onPress={onDismiss} uppercase={uppercase}>\n {cancelLabel}\n </Button>\n <Button\n onPress={() =>\n onConfirm({ hours: localHours, minutes: localMinutes })\n }\n uppercase={uppercase}\n >\n {confirmLabel}\n </Button>\n </View>\n </Animated.View>\n </KeyboardAvoidingView>\n </View>\n </>\n </Modal>\n )\n}\n\nfunction getMinutes(minutes: number | undefined | null): number {\n return minutes === undefined || minutes === null\n ? new Date().getMinutes()\n : minutes\n}\nfunction getHours(hours: number | undefined | null): number {\n return hours === undefined || hours === null ? new Date().getHours() : hours\n}\n\nconst styles = StyleSheet.create({\n modalRoot: {\n justifyContent: 'center',\n alignItems: 'center',\n flex: 1,\n },\n keyboardView: {\n justifyContent: 'center',\n alignItems: 'center',\n flex: 1,\n },\n modalBackground: {\n flex: 1,\n },\n modalContent: {\n shadowColor: '#000',\n shadowOffset: {\n width: 0,\n height: 5,\n },\n shadowOpacity: 0.34,\n shadowRadius: 6.27,\n elevation: 10,\n minWidth: 287,\n },\n labelContainer: {\n height: 28,\n justifyContent: 'flex-end',\n paddingLeft: 24,\n paddingRight: 24,\n },\n label: {\n letterSpacing: 1,\n fontSize: 13,\n },\n timePickerContainer: { padding: 24 },\n bottom: {\n flexDirection: 'row',\n alignItems: 'center',\n padding: 8,\n },\n inputTypeToggle: { margin: 4 },\n fill: { flex: 1 },\n})\n\nexport default React.memo(TimePickerModal)\n"],"mappings":"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"}
|
|
@@ -30,6 +30,9 @@ export const inputTypeIcons = {
|
|
|
30
30
|
keyboard: 'keyboard-outline',
|
|
31
31
|
picker: 'clock-outline'
|
|
32
32
|
};
|
|
33
|
+
export const getTimeInputTypeIcon = (inputType, inputIconMap) => {
|
|
34
|
+
return (inputIconMap === null || inputIconMap === void 0 ? void 0 : inputIconMap[reverseInputTypes[inputType]]) || (inputTypeIcons === null || inputTypeIcons === void 0 ? void 0 : inputTypeIcons[reverseInputTypes[inputType]]);
|
|
35
|
+
};
|
|
33
36
|
export const clockTypes = {
|
|
34
37
|
minutes: 'minutes',
|
|
35
38
|
hours: 'hours'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["timeUtils.ts"],"names":["React","Color","useTheme","circleSize","hourTypes","am","pm","getHourType","hours","undefined","inputTypes","keyboard","picker","reverseInputTypes","inputTypeIcons","clockTypes","minutes","outerHeight","_30","Math","PI","_12","_360","_90","snap","angle","step","a","diff","getHourTypeFromOffset","left","top","size","w","x","y","distance","sqrt","maxPm","getMinutes","handAngle","minute","parseInt","toFixed","getHours","hourType","hour","getAngle","atan","useSwitchColors","highlighted","theme","backgroundColor","useMemo","dark","colors","primary","hex","backdrop","lighten","surface","color","placeholder","useInputColors","darken","text","toHourInputFormat","is24Hour","toHourOutputFormat","newHours","previousHours"],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport Color from 'color'\nimport { useTheme } from 'react-native-paper'\n\n// 250? when bigger?\nexport const circleSize = 215\n\nexport type PossibleHourTypes = 'am' | 'pm'\nexport type HourTypeMap = {\n [hourType in PossibleHourTypes]: PossibleHourTypes\n}\nexport const hourTypes: HourTypeMap = {\n am: 'am',\n pm: 'pm',\n}\n\nexport function getHourType(hours: number): PossibleHourTypes | undefined {\n if (hours >= 0 && hours <= 12) {\n return hourTypes.am\n }\n if (hours > 12 && hours <= 24) {\n return hourTypes.pm\n }\n return undefined\n}\n\nexport type PossibleInputTypes = 'keyboard' | 'picker'\nexport type InputTypeMap = {\n [inputType in PossibleInputTypes]: PossibleInputTypes\n}\nexport const inputTypes: InputTypeMap = {\n keyboard: 'keyboard',\n picker: 'picker',\n}\n\nexport const reverseInputTypes: InputTypeMap = {\n keyboard: 'picker',\n picker: 'keyboard',\n}\ntype InputIconMap = {\n [inputType in PossibleInputTypes]: string\n}\nexport const inputTypeIcons: InputIconMap = {\n keyboard: 'keyboard-outline',\n picker: 'clock-outline',\n}\n\nexport type PossibleClockTypes = 'hours' | 'minutes'\nexport type ClockTypeMap = {\n [clockType in PossibleClockTypes]: PossibleClockTypes\n}\nexport const clockTypes: ClockTypeMap = {\n minutes: 'minutes',\n hours: 'hours',\n}\n\n// Code inspiration and copied from: https://github.com/ShaneGH/analogue-time-picker/blob/master/src/utils/angle.ts\n\nconst outerHeight = 34\nconst _30 = Math.PI / 6\nconst _12 = Math.PI / 30\nconst _360 = Math.PI * 2\nconst _90 = Math.PI / 2\n\n/** Snap an angle to a given step. E.g. if angle = 22° and step = 10°, round down to 20° */\nexport function snap(angle: number, step: number) {\n let a = angle\n while (a < 0) a += _360\n let diff = a % step\n\n if (diff <= step / 2) {\n return angle - diff\n }\n\n return angle - diff + step\n}\n\n// detect am / pm based on offset\nexport function getHourTypeFromOffset(\n left: number,\n top: number,\n size: number\n): PossibleHourTypes {\n const w = size / 2\n const x = w - left\n const y = size / 2 - top\n\n const distance = Math.sqrt(x * x + y * y)\n const maxPm = w - outerHeight\n\n return distance > maxPm ? hourTypes.am : hourTypes.pm\n}\n\n// Calculate the minute from the hand angle\nexport function getMinutes(handAngle: number) {\n handAngle = snap(handAngle, _12)\n\n let minute = parseInt((((handAngle - _90) % _360) / _12).toFixed(), 10)\n while (minute < 0) minute += 60\n while (minute >= 60) minute -= 60\n\n return minute\n}\n\n// Calculate the hour from the hand angle\nexport function getHours(\n handAngle: number,\n hourType: PossibleHourTypes | undefined\n) {\n handAngle = snap(handAngle, _30)\n\n let hour = parseInt((((handAngle - _90) % _360) / _30).toFixed(), 10)\n if (hour < 0) hour += 12\n if (hour >= 12) hour -= 12\n\n if (hourType === hourTypes.am) {\n if (hour <= 0) {\n hour += 12\n } else if (hour >= 12) {\n hour -= 12\n }\n }\n if (hourType === hourTypes.pm) {\n if (hour <= 0) {\n hour += 12\n } else if (hour > 12) {\n hour -= 12\n }\n }\n\n return hour\n}\n\n/** Get the angle of the left/top co-ordinate from the center of the width.height box */\nexport function getAngle(left: number, top: number, size: number) {\n const x = size / 2 - left\n const y = size / 2 - top\n\n // tan O = y / x\n let angle = x ? Math.atan(y / x) : y < 0 ? -_90 : _90\n if (x < 0) {\n // reflect along vertical axis\n angle = -angle + 2 * (_90 + angle)\n }\n\n return angle\n}\n\nexport function useSwitchColors(highlighted: boolean) {\n const theme = useTheme()\n const backgroundColor = React.useMemo<string>(() => {\n if (theme.dark) {\n if (highlighted) {\n return Color(theme.colors.primary).hex()\n }\n return theme.colors.backdrop\n }\n\n if (highlighted) {\n return Color(theme.colors.primary).lighten(1).hex()\n }\n return theme.colors.surface\n }, [highlighted, theme])\n\n const color = React.useMemo<string>(() => {\n if (highlighted && !theme.dark) {\n return theme.colors.primary\n }\n return theme.colors.placeholder\n }, [highlighted, theme])\n\n return { backgroundColor, color }\n}\n\nexport function useInputColors(highlighted: boolean) {\n const theme = useTheme()\n const backgroundColor = React.useMemo<string>(() => {\n if (theme.dark) {\n if (highlighted) {\n return Color(theme.colors.primary).hex()\n }\n return Color(theme.colors.surface).lighten(1.2).hex()\n }\n\n if (highlighted) {\n return Color(theme.colors.primary).lighten(1).hex()\n }\n return Color(theme.colors.surface).darken(0.1).hex()\n }, [highlighted, theme])\n\n const color = React.useMemo<string>(() => {\n if (highlighted && !theme.dark) {\n return theme.colors.primary\n }\n return theme.colors.text\n }, [highlighted, theme])\n\n return { backgroundColor, color }\n}\n\nexport function toHourInputFormat(hours: number, is24Hour: boolean): number {\n if (hours === 24) {\n return 0\n }\n if (is24Hour) {\n return hours\n }\n if (hours > 12) {\n return hours - 12\n }\n return hours\n}\n\nexport function toHourOutputFormat(\n newHours: number,\n previousHours: number,\n is24Hour: boolean\n): number {\n if (is24Hour) {\n return newHours\n }\n if (previousHours > 12 && newHours < 12) {\n return newHours + 12\n }\n return newHours\n}\n"]}
|
|
1
|
+
{"version":3,"names":["React","Color","useTheme","circleSize","hourTypes","am","pm","getHourType","hours","undefined","inputTypes","keyboard","picker","reverseInputTypes","inputTypeIcons","getTimeInputTypeIcon","inputType","inputIconMap","clockTypes","minutes","outerHeight","_30","Math","PI","_12","_360","_90","snap","angle","step","a","diff","getHourTypeFromOffset","left","top","size","w","x","y","distance","sqrt","maxPm","getMinutes","handAngle","minute","parseInt","toFixed","getHours","hourType","hour","getAngle","atan","useSwitchColors","highlighted","theme","backgroundColor","useMemo","dark","colors","primary","hex","backdrop","lighten","surface","color","placeholder","useInputColors","darken","text","toHourInputFormat","is24Hour","toHourOutputFormat","newHours","previousHours"],"sources":["timeUtils.ts"],"sourcesContent":["import * as React from 'react'\nimport Color from 'color'\nimport { useTheme } from 'react-native-paper'\n\n// 250? when bigger?\nexport const circleSize = 215\n\nexport type PossibleHourTypes = 'am' | 'pm'\nexport type HourTypeMap = {\n [hourType in PossibleHourTypes]: PossibleHourTypes\n}\nexport const hourTypes: HourTypeMap = {\n am: 'am',\n pm: 'pm',\n}\n\nexport function getHourType(hours: number): PossibleHourTypes | undefined {\n if (hours >= 0 && hours <= 12) {\n return hourTypes.am\n }\n if (hours > 12 && hours <= 24) {\n return hourTypes.pm\n }\n return undefined\n}\n\nexport type PossibleInputTypes = 'keyboard' | 'picker'\nexport type InputTypeMap = {\n [inputType in PossibleInputTypes]: PossibleInputTypes\n}\nexport const inputTypes: InputTypeMap = {\n keyboard: 'keyboard',\n picker: 'picker',\n}\n\nexport const reverseInputTypes: InputTypeMap = {\n keyboard: 'picker',\n picker: 'keyboard',\n}\ntype InputIconMap = {\n [inputType in PossibleInputTypes]: string\n}\nexport const inputTypeIcons: InputIconMap = {\n keyboard: 'keyboard-outline',\n picker: 'clock-outline',\n}\n\nexport const getTimeInputTypeIcon = (\n inputType: PossibleInputTypes,\n inputIconMap?: InputIconMap\n) => {\n return (\n inputIconMap?.[reverseInputTypes[inputType]] ||\n inputTypeIcons?.[reverseInputTypes[inputType]]\n )\n}\n\nexport type PossibleClockTypes = 'hours' | 'minutes'\nexport type ClockTypeMap = {\n [clockType in PossibleClockTypes]: PossibleClockTypes\n}\nexport const clockTypes: ClockTypeMap = {\n minutes: 'minutes',\n hours: 'hours',\n}\n\n// Code inspiration and copied from: https://github.com/ShaneGH/analogue-time-picker/blob/master/src/utils/angle.ts\n\nconst outerHeight = 34\nconst _30 = Math.PI / 6\nconst _12 = Math.PI / 30\nconst _360 = Math.PI * 2\nconst _90 = Math.PI / 2\n\n/** Snap an angle to a given step. E.g. if angle = 22° and step = 10°, round down to 20° */\nexport function snap(angle: number, step: number) {\n let a = angle\n while (a < 0) a += _360\n let diff = a % step\n\n if (diff <= step / 2) {\n return angle - diff\n }\n\n return angle - diff + step\n}\n\n// detect am / pm based on offset\nexport function getHourTypeFromOffset(\n left: number,\n top: number,\n size: number\n): PossibleHourTypes {\n const w = size / 2\n const x = w - left\n const y = size / 2 - top\n\n const distance = Math.sqrt(x * x + y * y)\n const maxPm = w - outerHeight\n\n return distance > maxPm ? hourTypes.am : hourTypes.pm\n}\n\n// Calculate the minute from the hand angle\nexport function getMinutes(handAngle: number) {\n handAngle = snap(handAngle, _12)\n\n let minute = parseInt((((handAngle - _90) % _360) / _12).toFixed(), 10)\n while (minute < 0) minute += 60\n while (minute >= 60) minute -= 60\n\n return minute\n}\n\n// Calculate the hour from the hand angle\nexport function getHours(\n handAngle: number,\n hourType: PossibleHourTypes | undefined\n) {\n handAngle = snap(handAngle, _30)\n\n let hour = parseInt((((handAngle - _90) % _360) / _30).toFixed(), 10)\n if (hour < 0) hour += 12\n if (hour >= 12) hour -= 12\n\n if (hourType === hourTypes.am) {\n if (hour <= 0) {\n hour += 12\n } else if (hour >= 12) {\n hour -= 12\n }\n }\n if (hourType === hourTypes.pm) {\n if (hour <= 0) {\n hour += 12\n } else if (hour > 12) {\n hour -= 12\n }\n }\n\n return hour\n}\n\n/** Get the angle of the left/top co-ordinate from the center of the width.height box */\nexport function getAngle(left: number, top: number, size: number) {\n const x = size / 2 - left\n const y = size / 2 - top\n\n // tan O = y / x\n let angle = x ? Math.atan(y / x) : y < 0 ? -_90 : _90\n if (x < 0) {\n // reflect along vertical axis\n angle = -angle + 2 * (_90 + angle)\n }\n\n return angle\n}\n\nexport function useSwitchColors(highlighted: boolean) {\n const theme = useTheme()\n const backgroundColor = React.useMemo<string>(() => {\n if (theme.dark) {\n if (highlighted) {\n return Color(theme.colors.primary).hex()\n }\n return theme.colors.backdrop\n }\n\n if (highlighted) {\n return Color(theme.colors.primary).lighten(1).hex()\n }\n return theme.colors.surface\n }, [highlighted, theme])\n\n const color = React.useMemo<string>(() => {\n if (highlighted && !theme.dark) {\n return theme.colors.primary\n }\n return theme.colors.placeholder\n }, [highlighted, theme])\n\n return { backgroundColor, color }\n}\n\nexport function useInputColors(highlighted: boolean) {\n const theme = useTheme()\n const backgroundColor = React.useMemo<string>(() => {\n if (theme.dark) {\n if (highlighted) {\n return Color(theme.colors.primary).hex()\n }\n return Color(theme.colors.surface).lighten(1.2).hex()\n }\n\n if (highlighted) {\n return Color(theme.colors.primary).lighten(1).hex()\n }\n return Color(theme.colors.surface).darken(0.1).hex()\n }, [highlighted, theme])\n\n const color = React.useMemo<string>(() => {\n if (highlighted && !theme.dark) {\n return theme.colors.primary\n }\n return theme.colors.text\n }, [highlighted, theme])\n\n return { backgroundColor, color }\n}\n\nexport function toHourInputFormat(hours: number, is24Hour: boolean): number {\n if (hours === 24) {\n return 0\n }\n if (is24Hour) {\n return hours\n }\n if (hours > 12) {\n return hours - 12\n }\n return hours\n}\n\nexport function toHourOutputFormat(\n newHours: number,\n previousHours: number,\n is24Hour: boolean\n): number {\n if (is24Hour) {\n return newHours\n }\n if (previousHours > 12 && newHours < 12) {\n return newHours + 12\n }\n return newHours\n}\n"],"mappings":"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"}
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["default","Calendar","DatePickerModal","DatePickerModalContent","TimePickerModal","TimePicker","DatePickerInput","registerTranslation","getTranslation","nl","en","pl","pt","enGB","de"],"sources":["index.tsx"],"sourcesContent":["export { default as Calendar } from './Date/Calendar'\nexport { default as DatePickerModal } from './Date/DatePickerModal'\nexport * from './Date/DatePickerModal'\nexport { default as DatePickerModalContent } from './Date/DatePickerModalContent'\nexport { default as TimePickerModal } from './Time/TimePickerModal'\nexport { default as TimePicker } from './Time/TimePicker'\nexport { default as DatePickerInput } from './Date/DatePickerInput'\nexport type { TranslationsType } from './translations/utils'\nexport { registerTranslation, getTranslation } from './translations/utils'\nexport { default as nl } from './translations/nl'\nexport { default as en } from './translations/en'\nexport { default as pl } from './translations/pl'\nexport { default as pt } from './translations/pt'\nexport { default as enGB } from './translations/enGB'\nexport { default as de } from './translations/de'\n"],"mappings":"AAAA,SAASA,OAAO,IAAIC,QAApB,QAAoC,iBAApC;AACA,SAASD,OAAO,IAAIE,eAApB,QAA2C,wBAA3C;AACA,cAAc,wBAAd;AACA,SAASF,OAAO,IAAIG,sBAApB,QAAkD,+BAAlD;AACA,SAASH,OAAO,IAAII,eAApB,QAA2C,wBAA3C;AACA,SAASJ,OAAO,IAAIK,UAApB,QAAsC,mBAAtC;AACA,SAASL,OAAO,IAAIM,eAApB,QAA2C,wBAA3C;AAEA,SAASC,mBAAT,EAA8BC,cAA9B,QAAoD,sBAApD;AACA,SAASR,OAAO,IAAIS,EAApB,QAA8B,mBAA9B;AACA,SAAST,OAAO,IAAIU,EAApB,QAA8B,mBAA9B;AACA,SAASV,OAAO,IAAIW,EAApB,QAA8B,mBAA9B;AACA,SAASX,OAAO,IAAIY,EAApB,QAA8B,mBAA9B;AACA,SAASZ,OAAO,IAAIa,IAApB,QAAgC,qBAAhC;AACA,SAASb,OAAO,IAAIc,EAApB,QAA8B,mBAA9B"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
const ar = {
|
|
2
|
+
save: 'حفظ',
|
|
3
|
+
selectSingle: 'حدد تاريخ',
|
|
4
|
+
selectMultiple: 'حدد التواريخ',
|
|
5
|
+
selectRange: 'حدد الفترة',
|
|
6
|
+
notAccordingToDateFormat: inputFormat => `يجب أن يكون تنسيق التاريخ ${inputFormat}`,
|
|
7
|
+
mustBeHigherThan: date => `يجب أن يكون بعد ${date}`,
|
|
8
|
+
mustBeLowerThan: date => `يجب أن يكون قبل ${date}`,
|
|
9
|
+
mustBeBetween: (startDate, endDate) => `يجب أن يكون بين ${startDate} - ${endDate}`,
|
|
10
|
+
dateIsDisabled: 'اليوم غير مسموح به',
|
|
11
|
+
previous: 'السابق',
|
|
12
|
+
next: 'التالي',
|
|
13
|
+
typeInDate: 'اكتب التاريخ',
|
|
14
|
+
pickDateFromCalendar: 'اختر التاريخ من التقويم',
|
|
15
|
+
close: 'أغلق'
|
|
16
|
+
};
|
|
17
|
+
export default ar;
|
|
18
|
+
//# sourceMappingURL=ar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["ar","save","selectSingle","selectMultiple","selectRange","notAccordingToDateFormat","inputFormat","mustBeHigherThan","date","mustBeLowerThan","mustBeBetween","startDate","endDate","dateIsDisabled","previous","next","typeInDate","pickDateFromCalendar","close"],"sources":["ar.ts"],"sourcesContent":["import type { TranslationsType } from './utils'\n\nconst ar: TranslationsType = {\n save: 'حفظ',\n selectSingle: 'حدد تاريخ',\n selectMultiple: 'حدد التواريخ',\n selectRange: 'حدد الفترة',\n notAccordingToDateFormat: (inputFormat:string) =>\n `يجب أن يكون تنسيق التاريخ ${inputFormat}`,\n mustBeHigherThan: (date) => `يجب أن يكون بعد ${date}`,\n mustBeLowerThan: (date) => `يجب أن يكون قبل ${date}`,\n mustBeBetween: (startDate, endDate) =>\n `يجب أن يكون بين ${startDate} - ${endDate}`,\n dateIsDisabled: 'اليوم غير مسموح به',\n previous: 'السابق',\n next: 'التالي',\n typeInDate: 'اكتب التاريخ',\n pickDateFromCalendar: 'اختر التاريخ من التقويم',\n close: 'أغلق',\n}\nexport default ar\n"],"mappings":"AAEA,MAAMA,EAAoB,GAAG;EAC3BC,IAAI,EAAE,KADqB;EAE3BC,YAAY,EAAE,WAFa;EAG3BC,cAAc,EAAE,cAHW;EAI3BC,WAAW,EAAE,YAJc;EAK3BC,wBAAwB,EAAGC,WAAD,IACvB,6BAA4BA,WAAY,EANhB;EAO3BC,gBAAgB,EAAGC,IAAD,IAAW,oBAAmBA,IAAK,EAP1B;EAQ3BC,eAAe,EAAGD,IAAD,IAAW,oBAAmBA,IAAK,EARzB;EAS3BE,aAAa,EAAE,CAACC,SAAD,EAAYC,OAAZ,KACZ,mBAAkBD,SAAU,MAAKC,OAAQ,EAVjB;EAW3BC,cAAc,EAAE,oBAXW;EAY3BC,QAAQ,EAAE,QAZiB;EAa3BC,IAAI,EAAE,QAbqB;EAc3BC,UAAU,EAAE,cAde;EAe3BC,oBAAoB,EAAE,yBAfK;EAgB3BC,KAAK,EAAE;AAhBoB,CAA7B;AAkBA,eAAelB,EAAf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["de","save","selectSingle","selectMultiple","selectRange","notAccordingToDateFormat","inputFormat","mustBeHigherThan","date","mustBeLowerThan","mustBeBetween","startDate","endDate","dateIsDisabled","previous","next","typeInDate","pickDateFromCalendar","close"],"sources":["de.ts"],"sourcesContent":["import type { TranslationsType } from './utils'\nconst de: TranslationsType = {\n save: 'Speichern',\n selectSingle: 'Wähle Datum',\n selectMultiple: 'Wähle Daten',\n selectRange: 'Wähle Zeitspanne',\n notAccordingToDateFormat: (inputFormat) =>\n `Das Format sollte ${inputFormat} sein`,\n mustBeHigherThan: (date) => `Muss nach dem ${date} sein`,\n mustBeLowerThan: (date) => `Muss vor dem ${date} sein`,\n mustBeBetween: (startDate, endDate) =>\n `Muss in dieser Zeitspanne liegen ${startDate} - ${endDate}`,\n dateIsDisabled: 'Datum nicht wählbar',\n previous: 'Vorheriges',\n next: 'Nächstes',\n typeInDate: 'Datum eingeben',\n pickDateFromCalendar: 'Datum vom Kalender auswählen',\n close: 'Schliessen',\n}\nexport default de\n"],"mappings":"AACA,MAAMA,EAAoB,GAAG;EAC3BC,IAAI,EAAE,WADqB;EAE3BC,YAAY,EAAE,aAFa;EAG3BC,cAAc,EAAE,aAHW;EAI3BC,WAAW,EAAE,kBAJc;EAK3BC,wBAAwB,EAAGC,WAAD,IACvB,qBAAoBA,WAAY,OANR;EAO3BC,gBAAgB,EAAGC,IAAD,IAAW,iBAAgBA,IAAK,OAPvB;EAQ3BC,eAAe,EAAGD,IAAD,IAAW,gBAAeA,IAAK,OARrB;EAS3BE,aAAa,EAAE,CAACC,SAAD,EAAYC,OAAZ,KACZ,oCAAmCD,SAAU,MAAKC,OAAQ,EAVlC;EAW3BC,cAAc,EAAE,qBAXW;EAY3BC,QAAQ,EAAE,YAZiB;EAa3BC,IAAI,EAAE,UAbqB;EAc3BC,UAAU,EAAE,gBAde;EAe3BC,oBAAoB,EAAE,8BAfK;EAgB3BC,KAAK,EAAE;AAhBoB,CAA7B;AAkBA,eAAelB,EAAf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["en","save","selectSingle","selectMultiple","selectRange","notAccordingToDateFormat","inputFormat","mustBeHigherThan","date","mustBeLowerThan","mustBeBetween","startDate","endDate","dateIsDisabled","previous","next","typeInDate","pickDateFromCalendar","close"],"sources":["en.ts"],"sourcesContent":["import type { TranslationsType } from './utils'\n\nconst en: TranslationsType = {\n save: 'Save',\n selectSingle: 'Select date',\n selectMultiple: 'Select dates',\n selectRange: 'Select period',\n notAccordingToDateFormat: (inputFormat) =>\n `Date format must be ${inputFormat}`,\n mustBeHigherThan: (date) => `Must be later then ${date}`,\n mustBeLowerThan: (date) => `Must be earlier then ${date}`,\n mustBeBetween: (startDate, endDate) =>\n `Must be between ${startDate} - ${endDate}`,\n dateIsDisabled: 'Day is not allowed',\n previous: 'Previous',\n next: 'Next',\n typeInDate: 'Type in date',\n pickDateFromCalendar: 'Pick date from calendar',\n close: 'Close',\n}\nexport default en\n"],"mappings":"AAEA,MAAMA,EAAoB,GAAG;EAC3BC,IAAI,EAAE,MADqB;EAE3BC,YAAY,EAAE,aAFa;EAG3BC,cAAc,EAAE,cAHW;EAI3BC,WAAW,EAAE,eAJc;EAK3BC,wBAAwB,EAAGC,WAAD,IACvB,uBAAsBA,WAAY,EANV;EAO3BC,gBAAgB,EAAGC,IAAD,IAAW,sBAAqBA,IAAK,EAP5B;EAQ3BC,eAAe,EAAGD,IAAD,IAAW,wBAAuBA,IAAK,EAR7B;EAS3BE,aAAa,EAAE,CAACC,SAAD,EAAYC,OAAZ,KACZ,mBAAkBD,SAAU,MAAKC,OAAQ,EAVjB;EAW3BC,cAAc,EAAE,oBAXW;EAY3BC,QAAQ,EAAE,UAZiB;EAa3BC,IAAI,EAAE,MAbqB;EAc3BC,UAAU,EAAE,cAde;EAe3BC,oBAAoB,EAAE,yBAfK;EAgB3BC,KAAK,EAAE;AAhBoB,CAA7B;AAkBA,eAAelB,EAAf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"names":["enGB","save","selectSingle","selectMultiple","selectRange","notAccordingToDateFormat","inputFormat","mustBeHigherThan","date","mustBeLowerThan","mustBeBetween","startDate","endDate","dateIsDisabled","previous","next","typeInDate","pickDateFromCalendar","close"],"sources":["enGB.ts"],"sourcesContent":["import type { TranslationsType } from './utils'\n\nconst enGB: TranslationsType = {\n save: 'Save',\n selectSingle: 'Select date',\n selectMultiple: 'Select dates',\n selectRange: 'Select period',\n notAccordingToDateFormat: (inputFormat) =>\n `Date format must be ${inputFormat}`,\n mustBeHigherThan: (date) => `Must be later then ${date}`,\n mustBeLowerThan: (date) => `Must be earlier then ${date}`,\n mustBeBetween: (startDate, endDate) =>\n `Must be between ${startDate} - ${endDate}`,\n dateIsDisabled: 'Day is not allowed',\n previous: 'Previous',\n next: 'Next',\n typeInDate: 'Type in date',\n pickDateFromCalendar: 'Pick date from calendar',\n close: 'Close',\n}\nexport default enGB\n"],"mappings":"AAEA,MAAMA,IAAsB,GAAG;EAC7BC,IAAI,EAAE,MADuB;EAE7BC,YAAY,EAAE,aAFe;EAG7BC,cAAc,EAAE,cAHa;EAI7BC,WAAW,EAAE,eAJgB;EAK7BC,wBAAwB,EAAGC,WAAD,IACvB,uBAAsBA,WAAY,EANR;EAO7BC,gBAAgB,EAAGC,IAAD,IAAW,sBAAqBA,IAAK,EAP1B;EAQ7BC,eAAe,EAAGD,IAAD,IAAW,wBAAuBA,IAAK,EAR3B;EAS7BE,aAAa,EAAE,CAACC,SAAD,EAAYC,OAAZ,KACZ,mBAAkBD,SAAU,MAAKC,OAAQ,EAVf;EAW7BC,cAAc,EAAE,oBAXa;EAY7BC,QAAQ,EAAE,UAZmB;EAa7BC,IAAI,EAAE,MAbuB;EAc7BC,UAAU,EAAE,cAdiB;EAe7BC,oBAAoB,EAAE,yBAfO;EAgB7BC,KAAK,EAAE;AAhBsB,CAA/B;AAkBA,eAAelB,IAAf"}
|