@anglr/datetime 4.0.0 → 5.0.0-beta.20221017112052
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/changelog.md +75 -0
- package/date-fns/src/services/dateFnsDateApi.service.d.ts +4 -0
- package/date-fns/src/services/dateFnsDateApi.service.d.ts.map +1 -1
- package/es2015/date-fns/src/services/dateFnsDateApi.service.js +11 -5
- package/es2015/date-fns/src/services/dateFnsDateApi.service.js.map +1 -1
- package/es2015/moment/src/services/momentDateApi.service.js +9 -3
- package/es2015/moment/src/services/momentDateApi.service.js.map +1 -1
- package/es2015/src/index.js +13 -10
- package/es2015/src/index.js.map +1 -1
- package/es2015/src/{misc → interfaces/dateTime}/datetime.interface.js +0 -0
- package/es2015/src/interfaces/dateTime/datetime.interface.js.map +1 -0
- package/es2015/src/interfaces/dateTimeInput/dateTimeInput.interface.js +2 -0
- package/es2015/src/interfaces/dateTimeInput/dateTimeInput.interface.js.map +1 -0
- package/es2015/src/{services → interfaces/formatProvider}/formatProvider.interface.js +0 -0
- package/es2015/src/interfaces/formatProvider/formatProvider.interface.js.map +1 -0
- package/es2015/src/interfaces/index.js +4 -0
- package/es2015/src/interfaces/index.js.map +1 -0
- package/{es2020/src → es2015/src/legacy}/picker/components/clockTimePicker/clockTimePicker.component.js +4 -4
- package/es2015/src/legacy/picker/components/clockTimePicker/clockTimePicker.component.js.map +1 -0
- package/es2015/src/{picker → legacy/picker}/components/clockTimePicker/clockTimePicker.interface.js +0 -0
- package/es2015/src/legacy/picker/components/clockTimePicker/clockTimePicker.interface.js.map +1 -0
- package/es2015/src/{picker → legacy/picker}/components/dayPicker/dayPicker.component.js +6 -6
- package/es2015/src/legacy/picker/components/dayPicker/dayPicker.component.js.map +1 -0
- package/es2015/src/{picker → legacy/picker}/components/dayPicker/dayPicker.interfaces.js +0 -0
- package/es2015/src/legacy/picker/components/dayPicker/dayPicker.interfaces.js.map +1 -0
- package/{es2020/src → es2015/src/legacy}/picker/components/monthPicker/monthPicker.component.js +5 -5
- package/es2015/src/legacy/picker/components/monthPicker/monthPicker.component.js.map +1 -0
- package/es2015/src/{picker → legacy/picker}/components/monthPicker/monthPicker.interfaces.js +0 -0
- package/es2015/src/legacy/picker/components/monthPicker/monthPicker.interfaces.js.map +1 -0
- package/es2015/src/{picker → legacy/picker}/components/picker/picker.component.animations.js +0 -0
- package/es2015/src/legacy/picker/components/picker/picker.component.animations.js.map +1 -0
- package/es2015/src/{picker → legacy/picker}/components/picker/picker.component.js +5 -5
- package/es2015/src/legacy/picker/components/picker/picker.component.js.map +1 -0
- package/{es2020/src → es2015/src/legacy}/picker/components/pickerBase.component.js +4 -4
- package/es2015/src/legacy/picker/components/pickerBase.component.js.map +1 -0
- package/{es2020/src → es2015/src/legacy}/picker/components/pickerImplBase.component.js +4 -4
- package/es2015/src/legacy/picker/components/pickerImplBase.component.js.map +1 -0
- package/es2015/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.component.js +8 -8
- package/es2015/src/legacy/picker/components/rollerTimePicker/rollerTimePicker.component.js.map +1 -0
- package/es2015/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.data.js +0 -0
- package/es2015/src/legacy/picker/components/rollerTimePicker/rollerTimePicker.data.js.map +1 -0
- package/es2015/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.interface.js +0 -0
- package/es2015/src/legacy/picker/components/rollerTimePicker/rollerTimePicker.interface.js.map +1 -0
- package/{es2020/src → es2015/src/legacy}/picker/components/yearPicker/yearPicker.component.js +5 -5
- package/es2015/src/legacy/picker/components/yearPicker/yearPicker.component.js.map +1 -0
- package/es2015/src/{picker → legacy/picker}/components/yearPicker/yearPicker.interfaces.js +0 -0
- package/es2015/src/legacy/picker/components/yearPicker/yearPicker.interfaces.js.map +1 -0
- package/es2015/src/{picker → legacy/picker}/directives/index.js +0 -0
- package/es2015/src/legacy/picker/directives/index.js.map +1 -0
- package/es2015/src/{picker → legacy/picker}/directives/loopScroll/loopScroll.directive.js +3 -3
- package/es2015/src/legacy/picker/directives/loopScroll/loopScroll.directive.js.map +1 -0
- package/es2015/src/{picker → legacy/picker}/directives/loopScroll/loopScroll.interface.js +0 -0
- package/es2015/src/legacy/picker/directives/loopScroll/loopScroll.interface.js.map +1 -0
- package/es2015/src/{picker → legacy/picker}/directives/loopScrollData/loopScrollData.directive.js +3 -3
- package/es2015/src/legacy/picker/directives/loopScrollData/loopScrollData.directive.js.map +1 -0
- package/es2015/src/{picker → legacy/picker}/interfaces.js +0 -0
- package/es2015/src/legacy/picker/interfaces.js.map +1 -0
- package/es2015/src/{picker → legacy/picker}/misc/datetimePicker.interface.js +0 -0
- package/es2015/src/legacy/picker/misc/datetimePicker.interface.js.map +1 -0
- package/es2015/src/{picker → legacy/picker}/misc/tokens.js +0 -0
- package/es2015/src/legacy/picker/misc/tokens.js.map +1 -0
- package/{es2020/src → es2015/src/legacy}/picker/modules/picker.module.js +10 -12
- package/es2015/src/legacy/picker/modules/picker.module.js.map +1 -0
- package/es2015/src/{picker → legacy/picker}/types.js +0 -0
- package/es2015/src/legacy/picker/types.js.map +1 -0
- package/es2015/src/{selector → legacy/selector}/components/inputDateTime/inputDateTime.component.js +8 -8
- package/es2015/src/legacy/selector/components/inputDateTime/inputDateTime.component.js.map +1 -0
- package/es2015/src/{selector → legacy/selector}/components/selector/selector.component.animations.js +0 -0
- package/es2015/src/legacy/selector/components/selector/selector.component.animations.js.map +1 -0
- package/es2015/src/{selector → legacy/selector}/components/selector/selector.component.js +9 -9
- package/es2015/src/legacy/selector/components/selector/selector.component.js.map +1 -0
- package/es2015/src/{selector → legacy/selector}/components/simpleInputDateTime/simpleInputDateTime.component.js +6 -6
- package/es2015/src/legacy/selector/components/simpleInputDateTime/simpleInputDateTime.component.js.map +1 -0
- package/es2015/src/{selector → legacy/selector}/directives/dateTimePickerRenderer/dateTimePickerRenderer.directive.js +3 -3
- package/es2015/src/legacy/selector/directives/dateTimePickerRenderer/dateTimePickerRenderer.directive.js.map +1 -0
- package/{es2020/src → es2015/src/legacy}/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.js +5 -5
- package/es2015/src/legacy/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.js.map +1 -0
- package/es2015/src/{selector → legacy/selector}/directives/datetimeMinValidator/datetimeMinValidator.directive.js +5 -5
- package/es2015/src/legacy/selector/directives/datetimeMinValidator/datetimeMinValidator.directive.js.map +1 -0
- package/{es2020/src → es2015/src/legacy}/selector/directives/datetimeValidator/datetimeValidator.directive.js +4 -4
- package/es2015/src/legacy/selector/directives/datetimeValidator/datetimeValidator.directive.js.map +1 -0
- package/es2015/src/{selector → legacy/selector}/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.js +3 -3
- package/es2015/src/legacy/selector/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.js.map +1 -0
- package/es2015/src/{selector → legacy/selector}/interfaces.js +0 -0
- package/es2015/src/legacy/selector/interfaces.js.map +1 -0
- package/es2015/src/{selector → legacy/selector}/misc/datetimeSelector.interface.js +0 -0
- package/es2015/src/legacy/selector/misc/datetimeSelector.interface.js.map +1 -0
- package/es2015/src/{selector → legacy/selector}/misc/tokens.js +0 -0
- package/es2015/src/legacy/selector/misc/tokens.js.map +1 -0
- package/{es2020/src → es2015/src/legacy}/selector/modules/basicSelector.module.js +4 -4
- package/es2015/src/legacy/selector/modules/basicSelector.module.js.map +1 -0
- package/es2015/src/{selector → legacy/selector}/modules/selector.module.js +6 -8
- package/es2015/src/legacy/selector/modules/selector.module.js.map +1 -0
- package/es2015/src/{selector → legacy/selector}/types.js +0 -0
- package/es2015/src/legacy/selector/types.js.map +1 -0
- package/es2015/src/misc/enums.js +23 -0
- package/es2015/src/misc/enums.js.map +1 -0
- package/es2015/src/misc/tokens.js +4 -0
- package/es2015/src/misc/tokens.js.map +1 -1
- package/es2015/src/misc/types.js +2 -0
- package/es2015/src/misc/types.js.map +1 -0
- package/es2015/src/misc/utils.js +102 -0
- package/es2015/src/misc/utils.js.map +1 -0
- package/es2015/src/misc/validators.js +30 -0
- package/es2015/src/misc/validators.js.map +1 -1
- package/es2015/src/modules/datePipes.module.js +4 -4
- package/es2015/src/modules/dateTime/directives/dateTimeControlValueAccessor/dateTimeControlValueAccessor.directive.js +76 -0
- package/es2015/src/modules/dateTime/directives/dateTimeControlValueAccessor/dateTimeControlValueAccessor.directive.js.map +1 -0
- package/es2015/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.js +191 -0
- package/es2015/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.js.map +1 -0
- package/es2015/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.js +53 -0
- package/es2015/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.js.map +1 -0
- package/es2015/src/modules/dateTime/directives/index.js +4 -0
- package/es2015/src/modules/dateTime/directives/index.js.map +1 -0
- package/es2015/src/modules/dateTime/index.js +3 -0
- package/es2015/src/modules/dateTime/index.js.map +1 -0
- package/es2015/src/modules/dateTime/modules/dateTime.module.js +31 -0
- package/es2015/src/modules/dateTime/modules/dateTime.module.js.map +1 -0
- package/es2015/src/modules/dateTime/modules/index.js +2 -0
- package/es2015/src/modules/dateTime/modules/index.js.map +1 -0
- package/es2015/src/modules/index.js +3 -0
- package/es2015/src/modules/index.js.map +1 -0
- package/es2015/src/pipes/dateConvert.pipe.js +3 -3
- package/es2015/src/pipes/dateFormat.pipe.js +3 -3
- package/es2015/src/pipes/dateFormat.pipe.js.map +1 -1
- package/es2015/src/services/{dateApi.interface.js → dateApi/dateApi.interface.js} +0 -0
- package/es2015/src/services/dateApi/dateApi.interface.js.map +1 -0
- package/es2015/src/services/datePositionParser.service.js +3 -3
- package/es2015/src/services/dateTimeRelativeParser.service.js +3 -3
- package/es2015/src/services/dateTimeRelativeParser.service.js.map +1 -1
- package/es2015/src/services/dateValueProvider.service.js +3 -3
- package/es2015/src/services/dateValueProvider.service.js.map +1 -1
- package/es2015/src/services/index.js +1 -2
- package/es2015/src/services/index.js.map +1 -1
- package/es2020/date-fns/src/services/dateFnsDateApi.service.js +11 -5
- package/es2020/date-fns/src/services/dateFnsDateApi.service.js.map +1 -1
- package/es2020/moment/src/services/momentDateApi.service.js +9 -3
- package/es2020/moment/src/services/momentDateApi.service.js.map +1 -1
- package/es2020/src/index.js +13 -10
- package/es2020/src/index.js.map +1 -1
- package/es2020/src/{misc → interfaces/dateTime}/datetime.interface.js +0 -0
- package/es2020/src/interfaces/dateTime/datetime.interface.js.map +1 -0
- package/es2020/src/interfaces/dateTimeInput/dateTimeInput.interface.js +2 -0
- package/es2020/src/interfaces/dateTimeInput/dateTimeInput.interface.js.map +1 -0
- package/es2020/src/{services → interfaces/formatProvider}/formatProvider.interface.js +0 -0
- package/es2020/src/interfaces/formatProvider/formatProvider.interface.js.map +1 -0
- package/es2020/src/interfaces/index.js +4 -0
- package/es2020/src/interfaces/index.js.map +1 -0
- package/{es2015/src → es2020/src/legacy}/picker/components/clockTimePicker/clockTimePicker.component.js +4 -4
- package/es2020/src/legacy/picker/components/clockTimePicker/clockTimePicker.component.js.map +1 -0
- package/es2020/src/{picker → legacy/picker}/components/clockTimePicker/clockTimePicker.interface.js +0 -0
- package/es2020/src/legacy/picker/components/clockTimePicker/clockTimePicker.interface.js.map +1 -0
- package/es2020/src/{picker → legacy/picker}/components/dayPicker/dayPicker.component.js +6 -6
- package/es2020/src/legacy/picker/components/dayPicker/dayPicker.component.js.map +1 -0
- package/es2020/src/{picker → legacy/picker}/components/dayPicker/dayPicker.interfaces.js +0 -0
- package/es2020/src/legacy/picker/components/dayPicker/dayPicker.interfaces.js.map +1 -0
- package/{es2015/src → es2020/src/legacy}/picker/components/monthPicker/monthPicker.component.js +5 -5
- package/es2020/src/legacy/picker/components/monthPicker/monthPicker.component.js.map +1 -0
- package/es2020/src/{picker → legacy/picker}/components/monthPicker/monthPicker.interfaces.js +0 -0
- package/es2020/src/legacy/picker/components/monthPicker/monthPicker.interfaces.js.map +1 -0
- package/es2020/src/{picker → legacy/picker}/components/picker/picker.component.animations.js +0 -0
- package/es2020/src/legacy/picker/components/picker/picker.component.animations.js.map +1 -0
- package/es2020/src/{picker → legacy/picker}/components/picker/picker.component.js +5 -5
- package/es2020/src/legacy/picker/components/picker/picker.component.js.map +1 -0
- package/{es2015/src → es2020/src/legacy}/picker/components/pickerBase.component.js +4 -4
- package/es2020/src/legacy/picker/components/pickerBase.component.js.map +1 -0
- package/{es2015/src → es2020/src/legacy}/picker/components/pickerImplBase.component.js +4 -4
- package/es2020/src/legacy/picker/components/pickerImplBase.component.js.map +1 -0
- package/es2020/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.component.js +8 -8
- package/es2020/src/legacy/picker/components/rollerTimePicker/rollerTimePicker.component.js.map +1 -0
- package/es2020/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.data.js +0 -0
- package/es2020/src/legacy/picker/components/rollerTimePicker/rollerTimePicker.data.js.map +1 -0
- package/es2020/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.interface.js +0 -0
- package/es2020/src/legacy/picker/components/rollerTimePicker/rollerTimePicker.interface.js.map +1 -0
- package/{es2015/src → es2020/src/legacy}/picker/components/yearPicker/yearPicker.component.js +5 -5
- package/es2020/src/legacy/picker/components/yearPicker/yearPicker.component.js.map +1 -0
- package/es2020/src/{picker → legacy/picker}/components/yearPicker/yearPicker.interfaces.js +0 -0
- package/es2020/src/legacy/picker/components/yearPicker/yearPicker.interfaces.js.map +1 -0
- package/es2020/src/{picker → legacy/picker}/directives/index.js +0 -0
- package/es2020/src/legacy/picker/directives/index.js.map +1 -0
- package/es2020/src/{picker → legacy/picker}/directives/loopScroll/loopScroll.directive.js +3 -3
- package/es2020/src/legacy/picker/directives/loopScroll/loopScroll.directive.js.map +1 -0
- package/es2020/src/{picker → legacy/picker}/directives/loopScroll/loopScroll.interface.js +0 -0
- package/es2020/src/legacy/picker/directives/loopScroll/loopScroll.interface.js.map +1 -0
- package/es2020/src/{picker → legacy/picker}/directives/loopScrollData/loopScrollData.directive.js +3 -3
- package/es2020/src/legacy/picker/directives/loopScrollData/loopScrollData.directive.js.map +1 -0
- package/es2020/src/{picker → legacy/picker}/interfaces.js +0 -0
- package/es2020/src/legacy/picker/interfaces.js.map +1 -0
- package/es2020/src/{picker → legacy/picker}/misc/datetimePicker.interface.js +0 -0
- package/es2020/src/legacy/picker/misc/datetimePicker.interface.js.map +1 -0
- package/es2020/src/{picker → legacy/picker}/misc/tokens.js +0 -0
- package/es2020/src/legacy/picker/misc/tokens.js.map +1 -0
- package/{es2015/src → es2020/src/legacy}/picker/modules/picker.module.js +10 -12
- package/es2020/src/legacy/picker/modules/picker.module.js.map +1 -0
- package/es2020/src/{picker → legacy/picker}/types.js +0 -0
- package/es2020/src/legacy/picker/types.js.map +1 -0
- package/es2020/src/{selector → legacy/selector}/components/inputDateTime/inputDateTime.component.js +8 -8
- package/es2020/src/legacy/selector/components/inputDateTime/inputDateTime.component.js.map +1 -0
- package/es2020/src/{selector → legacy/selector}/components/selector/selector.component.animations.js +0 -0
- package/es2020/src/legacy/selector/components/selector/selector.component.animations.js.map +1 -0
- package/es2020/src/{selector → legacy/selector}/components/selector/selector.component.js +9 -9
- package/es2020/src/legacy/selector/components/selector/selector.component.js.map +1 -0
- package/es2020/src/{selector → legacy/selector}/components/simpleInputDateTime/simpleInputDateTime.component.js +6 -6
- package/es2020/src/legacy/selector/components/simpleInputDateTime/simpleInputDateTime.component.js.map +1 -0
- package/es2020/src/{selector → legacy/selector}/directives/dateTimePickerRenderer/dateTimePickerRenderer.directive.js +3 -3
- package/es2020/src/legacy/selector/directives/dateTimePickerRenderer/dateTimePickerRenderer.directive.js.map +1 -0
- package/{es2015/src → es2020/src/legacy}/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.js +5 -5
- package/es2020/src/legacy/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.js.map +1 -0
- package/es2020/src/{selector → legacy/selector}/directives/datetimeMinValidator/datetimeMinValidator.directive.js +5 -5
- package/es2020/src/legacy/selector/directives/datetimeMinValidator/datetimeMinValidator.directive.js.map +1 -0
- package/{es2015/src → es2020/src/legacy}/selector/directives/datetimeValidator/datetimeValidator.directive.js +4 -4
- package/es2020/src/legacy/selector/directives/datetimeValidator/datetimeValidator.directive.js.map +1 -0
- package/es2020/src/{selector → legacy/selector}/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.js +3 -3
- package/es2020/src/legacy/selector/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.js.map +1 -0
- package/es2020/src/{selector → legacy/selector}/interfaces.js +0 -0
- package/es2020/src/legacy/selector/interfaces.js.map +1 -0
- package/es2020/src/{selector → legacy/selector}/misc/datetimeSelector.interface.js +0 -0
- package/es2020/src/legacy/selector/misc/datetimeSelector.interface.js.map +1 -0
- package/es2020/src/{selector → legacy/selector}/misc/tokens.js +0 -0
- package/es2020/src/legacy/selector/misc/tokens.js.map +1 -0
- package/{es2015/src → es2020/src/legacy}/selector/modules/basicSelector.module.js +4 -4
- package/es2020/src/legacy/selector/modules/basicSelector.module.js.map +1 -0
- package/es2020/src/{selector → legacy/selector}/modules/selector.module.js +6 -8
- package/es2020/src/legacy/selector/modules/selector.module.js.map +1 -0
- package/es2020/src/{selector → legacy/selector}/types.js +0 -0
- package/es2020/src/legacy/selector/types.js.map +1 -0
- package/es2020/src/misc/enums.js +23 -0
- package/es2020/src/misc/enums.js.map +1 -0
- package/es2020/src/misc/tokens.js +4 -0
- package/es2020/src/misc/tokens.js.map +1 -1
- package/es2020/src/misc/types.js +2 -0
- package/es2020/src/misc/types.js.map +1 -0
- package/es2020/src/misc/utils.js +101 -0
- package/es2020/src/misc/utils.js.map +1 -0
- package/es2020/src/misc/validators.js +30 -0
- package/es2020/src/misc/validators.js.map +1 -1
- package/es2020/src/modules/datePipes.module.js +4 -4
- package/es2020/src/modules/dateTime/directives/dateTimeControlValueAccessor/dateTimeControlValueAccessor.directive.js +76 -0
- package/es2020/src/modules/dateTime/directives/dateTimeControlValueAccessor/dateTimeControlValueAccessor.directive.js.map +1 -0
- package/es2020/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.js +190 -0
- package/es2020/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.js.map +1 -0
- package/es2020/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.js +53 -0
- package/es2020/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.js.map +1 -0
- package/es2020/src/modules/dateTime/directives/index.js +4 -0
- package/es2020/src/modules/dateTime/directives/index.js.map +1 -0
- package/es2020/src/modules/dateTime/index.js +3 -0
- package/es2020/src/modules/dateTime/index.js.map +1 -0
- package/es2020/src/modules/dateTime/modules/dateTime.module.js +31 -0
- package/es2020/src/modules/dateTime/modules/dateTime.module.js.map +1 -0
- package/es2020/src/modules/dateTime/modules/index.js +2 -0
- package/es2020/src/modules/dateTime/modules/index.js.map +1 -0
- package/es2020/src/modules/index.js +3 -0
- package/es2020/src/modules/index.js.map +1 -0
- package/es2020/src/pipes/dateConvert.pipe.js +3 -3
- package/es2020/src/pipes/dateFormat.pipe.js +3 -3
- package/es2020/src/pipes/dateFormat.pipe.js.map +1 -1
- package/es2020/src/services/{dateApi.interface.js → dateApi/dateApi.interface.js} +0 -0
- package/es2020/src/services/dateApi/dateApi.interface.js.map +1 -0
- package/es2020/src/services/datePositionParser.service.js +3 -3
- package/es2020/src/services/dateTimeRelativeParser.service.js +3 -3
- package/es2020/src/services/dateTimeRelativeParser.service.js.map +1 -1
- package/es2020/src/services/dateValueProvider.service.js +3 -3
- package/es2020/src/services/dateValueProvider.service.js.map +1 -1
- package/es2020/src/services/index.js +1 -2
- package/es2020/src/services/index.js.map +1 -1
- package/moment/src/services/momentDateApi.service.d.ts +4 -0
- package/moment/src/services/momentDateApi.service.d.ts.map +1 -1
- package/package.json +36 -36
- package/src/index.d.ts +13 -10
- package/src/index.d.ts.map +1 -1
- package/src/{misc → interfaces/dateTime}/datetime.interface.d.ts +2 -2
- package/src/interfaces/dateTime/datetime.interface.d.ts.map +1 -0
- package/src/interfaces/dateTimeInput/dateTimeInput.interface.d.ts +32 -0
- package/src/interfaces/dateTimeInput/dateTimeInput.interface.d.ts.map +1 -0
- package/src/{services → interfaces/formatProvider}/formatProvider.interface.d.ts +0 -0
- package/src/{services → interfaces/formatProvider}/formatProvider.interface.d.ts.map +0 -0
- package/src/interfaces/index.d.ts +4 -0
- package/src/interfaces/index.d.ts.map +1 -0
- package/src/{picker → legacy/picker}/components/clockTimePicker/clockTimePicker.component.css +0 -0
- package/src/{picker → legacy/picker}/components/clockTimePicker/clockTimePicker.component.d.ts +1 -1
- package/src/{picker → legacy/picker}/components/clockTimePicker/clockTimePicker.component.d.ts.map +0 -0
- package/src/{picker → legacy/picker}/components/clockTimePicker/clockTimePicker.component.html +0 -0
- package/src/{picker → legacy/picker}/components/clockTimePicker/clockTimePicker.interface.d.ts +0 -0
- package/src/{picker → legacy/picker}/components/clockTimePicker/clockTimePicker.interface.d.ts.map +0 -0
- package/src/{picker → legacy/picker}/components/dayPicker/dayPicker.component.css +0 -0
- package/src/{picker → legacy/picker}/components/dayPicker/dayPicker.component.d.ts +3 -3
- package/src/{picker → legacy/picker}/components/dayPicker/dayPicker.component.d.ts.map +1 -1
- package/src/legacy/picker/components/dayPicker/dayPicker.component.html +21 -0
- package/src/{picker → legacy/picker}/components/dayPicker/dayPicker.interfaces.d.ts +0 -0
- package/src/{picker → legacy/picker}/components/dayPicker/dayPicker.interfaces.d.ts.map +0 -0
- package/src/{picker → legacy/picker}/components/monthPicker/monthPicker.component.css +0 -0
- package/src/{picker → legacy/picker}/components/monthPicker/monthPicker.component.d.ts +2 -2
- package/src/{picker → legacy/picker}/components/monthPicker/monthPicker.component.d.ts.map +1 -1
- package/src/legacy/picker/components/monthPicker/monthPicker.component.html +13 -0
- package/src/{picker → legacy/picker}/components/monthPicker/monthPicker.interfaces.d.ts +0 -0
- package/src/{picker → legacy/picker}/components/monthPicker/monthPicker.interfaces.d.ts.map +0 -0
- package/src/{picker → legacy/picker}/components/picker/picker.component.animations.d.ts +0 -0
- package/src/{picker → legacy/picker}/components/picker/picker.component.animations.d.ts.map +0 -0
- package/src/{picker → legacy/picker}/components/picker/picker.component.css +0 -0
- package/src/{picker → legacy/picker}/components/picker/picker.component.d.ts +3 -3
- package/src/{picker → legacy/picker}/components/picker/picker.component.d.ts.map +1 -1
- package/src/legacy/picker/components/picker/picker.component.html +3 -0
- package/src/{picker → legacy/picker}/components/pickerBase.component.d.ts +3 -3
- package/src/{picker → legacy/picker}/components/pickerBase.component.d.ts.map +1 -1
- package/src/{picker → legacy/picker}/components/pickerImplBase.component.d.ts +3 -3
- package/src/{picker → legacy/picker}/components/pickerImplBase.component.d.ts.map +1 -1
- package/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.component.css +0 -0
- package/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.component.d.ts +3 -3
- package/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.component.d.ts.map +1 -1
- package/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.component.html +0 -0
- package/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.data.d.ts +0 -0
- package/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.data.d.ts.map +0 -0
- package/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.interface.d.ts +0 -0
- package/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.interface.d.ts.map +0 -0
- package/src/{picker → legacy/picker}/components/yearPicker/yearPicker.component.css +0 -0
- package/src/{picker → legacy/picker}/components/yearPicker/yearPicker.component.d.ts +2 -2
- package/src/{picker → legacy/picker}/components/yearPicker/yearPicker.component.d.ts.map +1 -1
- package/src/legacy/picker/components/yearPicker/yearPicker.component.html +13 -0
- package/src/{picker → legacy/picker}/components/yearPicker/yearPicker.interfaces.d.ts +0 -0
- package/src/{picker → legacy/picker}/components/yearPicker/yearPicker.interfaces.d.ts.map +0 -0
- package/src/{picker → legacy/picker}/directives/index.d.ts +0 -0
- package/src/{picker → legacy/picker}/directives/index.d.ts.map +0 -0
- package/src/{picker → legacy/picker}/directives/loopScroll/loopScroll.directive.d.ts +1 -1
- package/src/{picker → legacy/picker}/directives/loopScroll/loopScroll.directive.d.ts.map +0 -0
- package/src/{picker → legacy/picker}/directives/loopScroll/loopScroll.interface.d.ts +0 -0
- package/src/{picker → legacy/picker}/directives/loopScroll/loopScroll.interface.d.ts.map +0 -0
- package/src/{picker → legacy/picker}/directives/loopScrollData/loopScrollData.directive.d.ts +1 -1
- package/src/{picker → legacy/picker}/directives/loopScrollData/loopScrollData.directive.d.ts.map +0 -0
- package/src/{picker → legacy/picker}/interfaces.d.ts +0 -0
- package/src/{picker → legacy/picker}/interfaces.d.ts.map +0 -0
- package/src/{picker → legacy/picker}/misc/datetimePicker.interface.d.ts +2 -2
- package/src/{picker → legacy/picker}/misc/datetimePicker.interface.d.ts.map +1 -1
- package/src/{picker → legacy/picker}/misc/tokens.d.ts +0 -0
- package/src/{picker → legacy/picker}/misc/tokens.d.ts.map +0 -0
- package/src/{picker → legacy/picker}/modules/picker.module.d.ts +1 -1
- package/src/{picker → legacy/picker}/modules/picker.module.d.ts.map +0 -0
- package/src/{picker → legacy/picker}/types.d.ts +0 -0
- package/src/{picker → legacy/picker}/types.d.ts.map +0 -0
- package/src/{selector → legacy/selector}/components/inputDateTime/inputDateTime.component.css +0 -0
- package/src/{selector → legacy/selector}/components/inputDateTime/inputDateTime.component.d.ts +5 -5
- package/src/{selector → legacy/selector}/components/inputDateTime/inputDateTime.component.d.ts.map +1 -1
- package/src/{selector → legacy/selector}/components/inputDateTime/inputDateTime.component.html +0 -0
- package/src/{selector → legacy/selector}/components/selector/selector.component.animations.d.ts +0 -0
- package/src/{selector → legacy/selector}/components/selector/selector.component.animations.d.ts.map +0 -0
- package/src/{selector → legacy/selector}/components/selector/selector.component.css +0 -0
- package/src/{selector → legacy/selector}/components/selector/selector.component.d.ts +5 -4
- package/src/legacy/selector/components/selector/selector.component.d.ts.map +1 -0
- package/src/{selector → legacy/selector}/components/selector/selector.component.html +2 -2
- package/src/{selector → legacy/selector}/components/simpleInputDateTime/simpleInputDateTime.component.css +0 -0
- package/src/{selector → legacy/selector}/components/simpleInputDateTime/simpleInputDateTime.component.d.ts +4 -4
- package/src/{selector → legacy/selector}/components/simpleInputDateTime/simpleInputDateTime.component.d.ts.map +1 -1
- package/src/{selector → legacy/selector}/components/simpleInputDateTime/simpleInputDateTime.component.html +0 -0
- package/src/{selector → legacy/selector}/directives/dateTimePickerRenderer/dateTimePickerRenderer.directive.d.ts +2 -2
- package/src/{selector → legacy/selector}/directives/dateTimePickerRenderer/dateTimePickerRenderer.directive.d.ts.map +1 -1
- package/src/{selector → legacy/selector}/directives/datetimeMaxValidator/datetimeMaxValidator.directive.d.ts +2 -2
- package/src/{selector → legacy/selector}/directives/datetimeMaxValidator/datetimeMaxValidator.directive.d.ts.map +1 -1
- package/src/{selector → legacy/selector}/directives/datetimeMinValidator/datetimeMinValidator.directive.d.ts +2 -2
- package/src/{selector → legacy/selector}/directives/datetimeMinValidator/datetimeMinValidator.directive.d.ts.map +1 -1
- package/src/{selector → legacy/selector}/directives/datetimeValidator/datetimeValidator.directive.d.ts +1 -1
- package/src/{selector → legacy/selector}/directives/datetimeValidator/datetimeValidator.directive.d.ts.map +0 -0
- package/src/{selector → legacy/selector}/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.d.ts +2 -2
- package/src/{selector → legacy/selector}/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.d.ts.map +1 -1
- package/src/{selector → legacy/selector}/interfaces.d.ts +0 -0
- package/src/{selector → legacy/selector}/interfaces.d.ts.map +0 -0
- package/src/{selector → legacy/selector}/misc/datetimeSelector.interface.d.ts +1 -1
- package/src/{selector → legacy/selector}/misc/datetimeSelector.interface.d.ts.map +1 -1
- package/src/{selector → legacy/selector}/misc/tokens.d.ts +0 -0
- package/src/{selector → legacy/selector}/misc/tokens.d.ts.map +0 -0
- package/src/{selector → legacy/selector}/modules/basicSelector.module.d.ts +0 -0
- package/src/{selector → legacy/selector}/modules/basicSelector.module.d.ts.map +0 -0
- package/src/{selector → legacy/selector}/modules/selector.module.d.ts +0 -0
- package/src/{selector → legacy/selector}/modules/selector.module.d.ts.map +0 -0
- package/src/{selector → legacy/selector}/types.d.ts +0 -0
- package/src/{selector → legacy/selector}/types.d.ts.map +0 -0
- package/src/misc/enums.d.ts +22 -0
- package/src/misc/enums.d.ts.map +1 -0
- package/src/misc/tokens.d.ts +6 -1
- package/src/misc/tokens.d.ts.map +1 -1
- package/src/misc/types.d.ts +11 -0
- package/src/misc/types.d.ts.map +1 -0
- package/src/misc/utils.d.ts +25 -0
- package/src/misc/utils.d.ts.map +1 -0
- package/src/misc/validators.d.ts +9 -1
- package/src/misc/validators.d.ts.map +1 -1
- package/src/modules/dateTime/directives/dateTimeControlValueAccessor/dateTimeControlValueAccessor.directive.d.ts +40 -0
- package/src/modules/dateTime/directives/dateTimeControlValueAccessor/dateTimeControlValueAccessor.directive.d.ts.map +1 -0
- package/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.d.ts +97 -0
- package/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.d.ts.map +1 -0
- package/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.d.ts +22 -0
- package/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.d.ts.map +1 -0
- package/src/modules/dateTime/directives/index.d.ts +4 -0
- package/src/modules/dateTime/directives/index.d.ts.map +1 -0
- package/src/modules/dateTime/index.d.ts +3 -0
- package/src/modules/dateTime/index.d.ts.map +1 -0
- package/src/modules/dateTime/modules/dateTime.module.d.ts +13 -0
- package/src/modules/dateTime/modules/dateTime.module.d.ts.map +1 -0
- package/src/modules/dateTime/modules/index.d.ts +2 -0
- package/src/modules/dateTime/modules/index.d.ts.map +1 -0
- package/src/modules/index.d.ts +3 -0
- package/src/modules/index.d.ts.map +1 -0
- package/src/pipes/dateConvert.pipe.d.ts +1 -1
- package/src/pipes/dateFormat.pipe.d.ts +3 -2
- package/src/pipes/dateFormat.pipe.d.ts.map +1 -1
- package/src/services/{dateApi.interface.d.ts → dateApi/dateApi.interface.d.ts} +4 -0
- package/src/services/dateApi/dateApi.interface.d.ts.map +1 -0
- package/src/services/dateTimeRelativeParser.service.d.ts +1 -1
- package/src/services/dateTimeRelativeParser.service.d.ts.map +1 -1
- package/src/services/dateValueProvider.service.d.ts +2 -2
- package/src/services/dateValueProvider.service.d.ts.map +1 -1
- package/src/services/index.d.ts +1 -2
- package/src/services/index.d.ts.map +1 -1
- package/version.bak +1 -1
- package/es2015/src/misc/datetime.interface.js.map +0 -1
- package/es2015/src/picker/components/clockTimePicker/clockTimePicker.component.js.map +0 -1
- package/es2015/src/picker/components/clockTimePicker/clockTimePicker.interface.js.map +0 -1
- package/es2015/src/picker/components/dayPicker/dayPicker.component.js.map +0 -1
- package/es2015/src/picker/components/dayPicker/dayPicker.interfaces.js.map +0 -1
- package/es2015/src/picker/components/monthPicker/monthPicker.component.js.map +0 -1
- package/es2015/src/picker/components/monthPicker/monthPicker.interfaces.js.map +0 -1
- package/es2015/src/picker/components/picker/picker.component.animations.js.map +0 -1
- package/es2015/src/picker/components/picker/picker.component.js.map +0 -1
- package/es2015/src/picker/components/pickerBase.component.js.map +0 -1
- package/es2015/src/picker/components/pickerImplBase.component.js.map +0 -1
- package/es2015/src/picker/components/rollerTimePicker/rollerTimePicker.component.js.map +0 -1
- package/es2015/src/picker/components/rollerTimePicker/rollerTimePicker.data.js.map +0 -1
- package/es2015/src/picker/components/rollerTimePicker/rollerTimePicker.interface.js.map +0 -1
- package/es2015/src/picker/components/yearPicker/yearPicker.component.js.map +0 -1
- package/es2015/src/picker/components/yearPicker/yearPicker.interfaces.js.map +0 -1
- package/es2015/src/picker/directives/index.js.map +0 -1
- package/es2015/src/picker/directives/loopScroll/loopScroll.directive.js.map +0 -1
- package/es2015/src/picker/directives/loopScroll/loopScroll.interface.js.map +0 -1
- package/es2015/src/picker/directives/loopScrollData/loopScrollData.directive.js.map +0 -1
- package/es2015/src/picker/interfaces.js.map +0 -1
- package/es2015/src/picker/misc/datetimePicker.interface.js.map +0 -1
- package/es2015/src/picker/misc/tokens.js.map +0 -1
- package/es2015/src/picker/modules/picker.module.js.map +0 -1
- package/es2015/src/picker/types.js.map +0 -1
- package/es2015/src/selector/components/inputDateTime/inputDateTime.component.js.map +0 -1
- package/es2015/src/selector/components/selector/selector.component.animations.js.map +0 -1
- package/es2015/src/selector/components/selector/selector.component.js.map +0 -1
- package/es2015/src/selector/components/simpleInputDateTime/simpleInputDateTime.component.js.map +0 -1
- package/es2015/src/selector/directives/dateTimePickerRenderer/dateTimePickerRenderer.directive.js.map +0 -1
- package/es2015/src/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.js.map +0 -1
- package/es2015/src/selector/directives/datetimeMinValidator/datetimeMinValidator.directive.js.map +0 -1
- package/es2015/src/selector/directives/datetimeValidator/datetimeValidator.directive.js.map +0 -1
- package/es2015/src/selector/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.js.map +0 -1
- package/es2015/src/selector/interfaces.js.map +0 -1
- package/es2015/src/selector/misc/datetimeSelector.interface.js.map +0 -1
- package/es2015/src/selector/misc/tokens.js.map +0 -1
- package/es2015/src/selector/modules/basicSelector.module.js.map +0 -1
- package/es2015/src/selector/modules/selector.module.js.map +0 -1
- package/es2015/src/selector/types.js.map +0 -1
- package/es2015/src/services/dateApi.interface.js.map +0 -1
- package/es2015/src/services/formatProvider.interface.js.map +0 -1
- package/es2020/src/misc/datetime.interface.js.map +0 -1
- package/es2020/src/picker/components/clockTimePicker/clockTimePicker.component.js.map +0 -1
- package/es2020/src/picker/components/clockTimePicker/clockTimePicker.interface.js.map +0 -1
- package/es2020/src/picker/components/dayPicker/dayPicker.component.js.map +0 -1
- package/es2020/src/picker/components/dayPicker/dayPicker.interfaces.js.map +0 -1
- package/es2020/src/picker/components/monthPicker/monthPicker.component.js.map +0 -1
- package/es2020/src/picker/components/monthPicker/monthPicker.interfaces.js.map +0 -1
- package/es2020/src/picker/components/picker/picker.component.animations.js.map +0 -1
- package/es2020/src/picker/components/picker/picker.component.js.map +0 -1
- package/es2020/src/picker/components/pickerBase.component.js.map +0 -1
- package/es2020/src/picker/components/pickerImplBase.component.js.map +0 -1
- package/es2020/src/picker/components/rollerTimePicker/rollerTimePicker.component.js.map +0 -1
- package/es2020/src/picker/components/rollerTimePicker/rollerTimePicker.data.js.map +0 -1
- package/es2020/src/picker/components/rollerTimePicker/rollerTimePicker.interface.js.map +0 -1
- package/es2020/src/picker/components/yearPicker/yearPicker.component.js.map +0 -1
- package/es2020/src/picker/components/yearPicker/yearPicker.interfaces.js.map +0 -1
- package/es2020/src/picker/directives/index.js.map +0 -1
- package/es2020/src/picker/directives/loopScroll/loopScroll.directive.js.map +0 -1
- package/es2020/src/picker/directives/loopScroll/loopScroll.interface.js.map +0 -1
- package/es2020/src/picker/directives/loopScrollData/loopScrollData.directive.js.map +0 -1
- package/es2020/src/picker/interfaces.js.map +0 -1
- package/es2020/src/picker/misc/datetimePicker.interface.js.map +0 -1
- package/es2020/src/picker/misc/tokens.js.map +0 -1
- package/es2020/src/picker/modules/picker.module.js.map +0 -1
- package/es2020/src/picker/types.js.map +0 -1
- package/es2020/src/selector/components/inputDateTime/inputDateTime.component.js.map +0 -1
- package/es2020/src/selector/components/selector/selector.component.animations.js.map +0 -1
- package/es2020/src/selector/components/selector/selector.component.js.map +0 -1
- package/es2020/src/selector/components/simpleInputDateTime/simpleInputDateTime.component.js.map +0 -1
- package/es2020/src/selector/directives/dateTimePickerRenderer/dateTimePickerRenderer.directive.js.map +0 -1
- package/es2020/src/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.js.map +0 -1
- package/es2020/src/selector/directives/datetimeMinValidator/datetimeMinValidator.directive.js.map +0 -1
- package/es2020/src/selector/directives/datetimeValidator/datetimeValidator.directive.js.map +0 -1
- package/es2020/src/selector/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.js.map +0 -1
- package/es2020/src/selector/interfaces.js.map +0 -1
- package/es2020/src/selector/misc/datetimeSelector.interface.js.map +0 -1
- package/es2020/src/selector/misc/tokens.js.map +0 -1
- package/es2020/src/selector/modules/basicSelector.module.js.map +0 -1
- package/es2020/src/selector/modules/selector.module.js.map +0 -1
- package/es2020/src/selector/types.js.map +0 -1
- package/es2020/src/services/dateApi.interface.js.map +0 -1
- package/es2020/src/services/formatProvider.interface.js.map +0 -1
- package/src/misc/datetime.interface.d.ts.map +0 -1
- package/src/picker/components/dayPicker/dayPicker.component.html +0 -21
- package/src/picker/components/monthPicker/monthPicker.component.html +0 -13
- package/src/picker/components/picker/picker.component.html +0 -3
- package/src/picker/components/yearPicker/yearPicker.component.html +0 -13
- package/src/selector/components/selector/selector.component.d.ts.map +0 -1
- package/src/services/dateApi.interface.d.ts.map +0 -1
package/changelog.md
CHANGED
|
@@ -1,5 +1,80 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## Version 5.0.0 (2022-10-17)
|
|
4
|
+
|
|
5
|
+
### Features
|
|
6
|
+
|
|
7
|
+
- new `DateTimeInput` interface, which defines date time input and communication API for it
|
|
8
|
+
- **properties**
|
|
9
|
+
- `rawValue` value of date time, raw string value which is visible to user
|
|
10
|
+
- `value` current value of date time, could be string, TDate object, or ranged DateTimeValue
|
|
11
|
+
- `disabled` indication whether is date time disabled
|
|
12
|
+
- `valueChange` occurs when value changes
|
|
13
|
+
- `focus` occurs when input gains focus
|
|
14
|
+
- `blur` occurs when input loses focus
|
|
15
|
+
- new `DateTimeModule` module for basic date time directives, components, pipes
|
|
16
|
+
- **exports**
|
|
17
|
+
- `DateTimeControlValueAccessorDirective`
|
|
18
|
+
- `DateTimeInputDirective`
|
|
19
|
+
- `DateTimeValidatorDirective`
|
|
20
|
+
- new `DATE_TIME_INPUT` injection token, that is used for injecting type that represents date time input
|
|
21
|
+
- new `DateTimeInputDirective` directive, that is used for setting up date time input
|
|
22
|
+
- **implements**
|
|
23
|
+
- `DateTimeInput`
|
|
24
|
+
- `OnDestroy`
|
|
25
|
+
- **provides**
|
|
26
|
+
- `DATE_TIME_INPUT` providing self
|
|
27
|
+
- **inputs**
|
|
28
|
+
- `valueFormat` gets or sets date time value format which is being worked with in this date time
|
|
29
|
+
- `format` gets or sets format of string representation of date
|
|
30
|
+
- `customFormat` custom format string representation of date
|
|
31
|
+
- new `DateTimeControlValueAccessorDirective` directive, that is control value accessor that is used for getting and setting value for date time
|
|
32
|
+
- **implements**
|
|
33
|
+
- `ControlValueAccessor`
|
|
34
|
+
- `OnDestroy`
|
|
35
|
+
- **provides**
|
|
36
|
+
- `NG_VALUE_ACCESSOR` providing self
|
|
37
|
+
- new `DateTimeValidatorDirective` directive, that applies validator for date time
|
|
38
|
+
- **implements**
|
|
39
|
+
- `Validator`
|
|
40
|
+
- **provides**
|
|
41
|
+
- `NG_VALIDATORS` providing self
|
|
42
|
+
- new `DateTimeValueFormat` enum, that represents available formats for date time value
|
|
43
|
+
- `DateInstance` instance of date
|
|
44
|
+
- `UnixTimestamp` numeric unix timestamp in seconds
|
|
45
|
+
- `FormattedString` formatted date as string value
|
|
46
|
+
- `RangeOfDateInstances` range of date instances from, to
|
|
47
|
+
- new `DateTimeObjectValue` type that represents parsed date value or values in case of range
|
|
48
|
+
- new `DateTimeInputOutputValue` type that represents input output types that can be processed by date time
|
|
49
|
+
- new `parseDateTime` function, that parses date time input output value
|
|
50
|
+
- new `formatDateTime` function, that formats value into specified format of date time
|
|
51
|
+
- new `isDateTimeValue` function, that tests whether value is `DateTimeValue`
|
|
52
|
+
- new `datetimeValidator` function, that is date time validator factory function, creates validator for checking validity of datetime
|
|
53
|
+
- updated `DateApiObject` interface
|
|
54
|
+
- new `unixTimestamp` method, that gets value of date time as unix timestamp
|
|
55
|
+
- *subpackage* `@anglr/datetime/moment`
|
|
56
|
+
- updated `MomentDateApi`
|
|
57
|
+
- now implements also new `unixTimestamp`
|
|
58
|
+
- *subpackage* `@anglr/datetime/date-fns`
|
|
59
|
+
- updated `DateFnsDateApi`
|
|
60
|
+
- now implements also new `unixTimestamp`
|
|
61
|
+
|
|
62
|
+
### BREAKING CHANGES
|
|
63
|
+
|
|
64
|
+
- dropped support of `Node.js` version `12`
|
|
65
|
+
- minimal supported version of `@angular` is now `14.2.6`
|
|
66
|
+
- minimal supported version of `rxjs` is now `7.5.6`
|
|
67
|
+
- minimal supported version of `@jscrpt/common` is now `3.1.0`
|
|
68
|
+
- minimal supported version of `@anglr/common` is now `14.1.0`
|
|
69
|
+
- minimal supported version of `tslib` is now `2.4.0`
|
|
70
|
+
- minimal supported version of `moment` is now `2.29.4`
|
|
71
|
+
- minimal supported version of `date-fns` is now `2.29.3`
|
|
72
|
+
- dropped dependency `positions`
|
|
73
|
+
- all previous selectors, pickers and everything is now deprecated and marked as legacy
|
|
74
|
+
- updated `DateTimeValue` interface
|
|
75
|
+
- `from` can now also be `undefined` or `null`
|
|
76
|
+
- `to` can now also be `undefined` or `null`
|
|
77
|
+
|
|
3
78
|
## Version 4.0.0 (2022-10-14)
|
|
4
79
|
|
|
5
80
|
### Bug Fixes
|
|
@@ -37,6 +37,10 @@ export declare class DateFnsDateApiObject implements DateApiObject<Date> {
|
|
|
37
37
|
* @param formatString - Format token used for creating formatted string
|
|
38
38
|
*/
|
|
39
39
|
format(formatString: string): string;
|
|
40
|
+
/**
|
|
41
|
+
* @inheritdoc
|
|
42
|
+
*/
|
|
43
|
+
unixTimestamp(): number;
|
|
40
44
|
/**
|
|
41
45
|
* Updates value to start date and time of current decade
|
|
42
46
|
* @returns Itself for fluent API
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dateFnsDateApi.service.d.ts","sourceRoot":"","sources":["dateFnsDateApi.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dateFnsDateApi.service.d.ts","sourceRoot":"","sources":["dateFnsDateApi.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Inject, Injectable } from '@angular/core';
|
|
2
2
|
import { DateTimeRelativeParser, DATE_API_OBJECT_TYPE } from '@anglr/datetime';
|
|
3
3
|
import { isBlank, isPresent, isString } from '@jscrpt/common';
|
|
4
|
-
import { toDate, getDate, setDate, isAfter, isBefore, differenceInCalendarDays, format, startOfMonth, endOfMonth, startOfWeek, endOfWeek, startOfDay, endOfDay, addMonths, addWeeks, addDays, subMonths, subWeeks, subDays, getDaysInMonth, isSameDay, isSameWeek, isSameMonth, isValid, parse, parseISO, addYears, subYears, startOfYear, endOfYear, isWeekend, setYear, getYear, isSameYear, startOfDecade, endOfDecade, setMonth, getMonth, setISODay, getISODay, subHours, addHours, endOfHour, startOfHour, startOfMinute, endOfMinute, addMinutes, subMinutes, getHours, setHours, getMinutes, setMinutes, isDate } from 'date-fns';
|
|
4
|
+
import { toDate, getDate, setDate, isAfter, isBefore, differenceInCalendarDays, format, startOfMonth, endOfMonth, startOfWeek, endOfWeek, startOfDay, endOfDay, addMonths, addWeeks, addDays, subMonths, subWeeks, subDays, getDaysInMonth, isSameDay, isSameWeek, isSameMonth, isValid, parse, parseISO, addYears, subYears, startOfYear, endOfYear, isWeekend, setYear, getYear, isSameYear, startOfDecade, endOfDecade, setMonth, getMonth, setISODay, getISODay, subHours, addHours, endOfHour, startOfHour, startOfMinute, endOfMinute, addMinutes, subMinutes, getHours, setHours, getMinutes, setMinutes, isDate, getUnixTime } from 'date-fns';
|
|
5
5
|
import { DATE_FNS_LOCALE } from '../misc/tokens';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
import * as i1 from "@anglr/datetime";
|
|
@@ -61,6 +61,12 @@ export class DateFnsDateApiObject {
|
|
|
61
61
|
format(formatString) {
|
|
62
62
|
return format(this._value, formatString, { locale: this._localeSvc.locale });
|
|
63
63
|
}
|
|
64
|
+
/**
|
|
65
|
+
* @inheritdoc
|
|
66
|
+
*/
|
|
67
|
+
unixTimestamp() {
|
|
68
|
+
return getUnixTime(this._value);
|
|
69
|
+
}
|
|
64
70
|
/**
|
|
65
71
|
* Updates value to start date and time of current decade
|
|
66
72
|
* @returns Itself for fluent API
|
|
@@ -470,7 +476,7 @@ export class DateFnsDateApi {
|
|
|
470
476
|
* Gets wrapping object used for manipulation instantiated to current date and time
|
|
471
477
|
*/
|
|
472
478
|
now() {
|
|
473
|
-
return new this._dateApiObjecType(new Date(), null, this._localeSvc);
|
|
479
|
+
return new this._dateApiObjecType(new Date(), null !== null && null !== void 0 ? null : undefined, this._localeSvc);
|
|
474
480
|
}
|
|
475
481
|
/**
|
|
476
482
|
* Gets format string using pseudo format
|
|
@@ -528,9 +534,9 @@ export class DateFnsDateApi {
|
|
|
528
534
|
return isDate(value);
|
|
529
535
|
}
|
|
530
536
|
}
|
|
531
|
-
DateFnsDateApi.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
532
|
-
DateFnsDateApi.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
533
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
537
|
+
DateFnsDateApi.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.6", ngImport: i0, type: DateFnsDateApi, deps: [{ token: DATE_FNS_LOCALE }, { token: i1.DateTimeRelativeParser }, { token: DATE_API_OBJECT_TYPE }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
538
|
+
DateFnsDateApi.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.6", ngImport: i0, type: DateFnsDateApi });
|
|
539
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.6", ngImport: i0, type: DateFnsDateApi, decorators: [{
|
|
534
540
|
type: Injectable
|
|
535
541
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
536
542
|
type: Inject,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dateFnsDateApi.service.js","sourceRoot":"","sources":["../../../../date-fns/src/services/dateFnsDateApi.service.ts"],"names":[],"mappings":"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","sourcesContent":["import {Inject, Injectable, ValueProvider} from '@angular/core';\nimport {DateApi, DateValue, DateApiObject, DateTimeRelativeParser, DateApiObjectCtor, DATE_API_OBJECT_TYPE} from '@anglr/datetime';\nimport {isBlank, isPresent, isString} from '@jscrpt/common';\nimport {toDate, getDate, setDate, isAfter, isBefore, differenceInCalendarDays, format, startOfMonth, endOfMonth, startOfWeek, endOfWeek, startOfDay, endOfDay, addMonths, addWeeks, addDays, subMonths, subWeeks, subDays, getDaysInMonth, isSameDay, isSameWeek, isSameMonth, isValid, parse, parseISO, addYears, subYears, startOfYear, endOfYear, isWeekend, setYear, getYear, isSameYear, startOfDecade, endOfDecade, setMonth, getMonth, setISODay, getISODay, subHours, addHours, endOfHour, startOfHour, startOfMinute, endOfMinute, addMinutes, subMinutes, getHours, setHours, getMinutes, setMinutes, isDate} from 'date-fns';\n\nimport {DATE_FNS_LOCALE} from '../misc/tokens';\nimport {DateFnsLocale} from './dateFnsLocale.service';\n\n/**\n * Instance of object wrapping TDate, allowing manipulation with it\n */\nexport class DateFnsDateApiObject implements DateApiObject<Date>\n{\n //######################### protected fields #########################\n\n /**\n * Original value that is not changed unless 'updateOriginal' is called\n */\n protected _originalValue: Date;\n\n /**\n * Instance of date\n */\n protected _value: Date;\n\n //######################### public properties - implementation of DateApiObject #########################\n\n /**\n * Original value that is not changed unless 'updateOriginal' is called\n */\n public get originalValue(): Date\n {\n return this._originalValue;\n }\n\n /**\n * Instance of date\n */\n public get value(): Date\n {\n return this._value;\n }\n\n //######################### constructor #########################\n constructor(value: DateValue|Date,\n format: string|null|undefined,\n protected _localeSvc: DateFnsLocale)\n {\n if(isString(value))\n {\n //ISO string\n if(/^\\d+-\\d+-\\d+(T\\d+:\\d+:\\d+)?/.test(value))\n {\n this._value = this._originalValue = parseISO(value);\n }\n else\n {\n if(isBlank(format))\n {\n throw new Error('date-fns requires format parameter to be set for parsing non ISO string date!');\n }\n\n this._value = this._originalValue = parse(value, format, new Date(1970, 0));\n }\n }\n else\n {\n this._value = this._originalValue = toDate(value);\n }\n }\n\n //######################### public methods - implementation of DateApiObject #########################\n\n /**\n * Gets indication whether provided instance of date is valid\n */\n public isValid(): boolean\n {\n return isValid(this._value);\n }\n\n /**\n * Gets indication whether provided instance of date is weekend day\n */\n public isWeekend(): boolean\n {\n return isWeekend(this._value);\n }\n\n /**\n * Formats date value\n * @param formatString - Format token used for creating formatted string\n */\n public format(formatString: string): string\n {\n return format(this._value, formatString, {locale: this._localeSvc.locale});\n }\n\n /**\n * Updates value to start date and time of current decade\n * @returns Itself for fluent API\n */\n public startOfDecade(): DateApiObject<Date>\n {\n this._value = startOfDecade(this._value);\n \n return this;\n }\n\n /**\n * Updates value to end date and time of current decade\n * @returns Itself for fluent API\n */\n public endOfDecade(): DateApiObject<Date>\n {\n this._value = endOfDecade(this._value);\n \n return this;\n }\n\n /**\n * Updates value to start date and time of current year\n * @returns Itself for fluent API\n */\n public startOfYear(): DateApiObject<Date>\n {\n this._value = startOfYear(this._value);\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current year\n * @returns Itself for fluent API\n */\n public endOfYear(): DateApiObject<Date>\n {\n this._value = endOfYear(this._value);\n\n return this;\n }\n\n /**\n * Add years, if count not specified adds 1 year\n * @param count - Number of years count\n * @returns Itself for fluent API\n */\n public addYears(count?: number): DateApiObject<Date>\n {\n this._value = addYears(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Subtract years, if count not specified subtract 1 year\n * @param count - Number of years count\n * @returns Itself for fluent API\n */\n public subtractYears(count?: number): DateApiObject<Date>\n {\n this._value = subYears(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current month\n * @returns Itself for fluent API\n */\n public startOfMonth(): DateApiObject<Date>\n {\n this._value = startOfMonth(this._value);\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current month\n * @returns Itself for fluent API\n */\n public endOfMonth(): DateApiObject<Date>\n {\n this._value = endOfMonth(this._value);\n\n return this;\n }\n\n /**\n * Add months, if count not specified adds 1 month\n * @param count - Number of months count\n * @returns Itself for fluent API\n */\n public addMonths(count?: number): DateApiObject<Date>\n {\n this._value = addMonths(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Subtract months, if count not specified subtract 1 month\n * @param count - Number of months count\n * @returns Itself for fluent API\n */\n public subtractMonths(count?: number): DateApiObject<Date>\n {\n this._value = subMonths(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current week\n * @returns Itself for fluent API\n */\n public startOfWeek(): DateApiObject<Date>\n {\n this._value = startOfWeek(this._value, {locale: this._localeSvc.locale});\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current week\n * @returns Itself for fluent API\n */\n public endOfWeek(): DateApiObject<Date>\n {\n this._value = endOfWeek(this._value, {locale: this._localeSvc.locale});\n\n return this;\n }\n\n /**\n * Add weeks, if count not specified adds 1 week\n * @param count - Number of weeks count\n * @returns Itself for fluent API\n */\n public addWeeks(count?: number): DateApiObject<Date>\n {\n this._value = addWeeks(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Subtract weeks, if count not specified subtract 1 week\n * @param count - Number of weeks count\n * @returns Itself for fluent API\n */\n public subtractWeeks(count?: number): DateApiObject<Date>\n {\n this._value = subWeeks(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current day\n * @returns Itself for fluent API\n */\n public startOfDay(): DateApiObject<Date>\n {\n this._value = startOfDay(this._value);\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current day\n * @returns Itself for fluent API\n */\n public endOfDay(): DateApiObject<Date>\n {\n this._value = endOfDay(this._value);\n\n return this;\n }\n\n /**\n * Add days, if count not specified adds 1 day\n * @param count - Number of days count\n * @returns Itself for fluent API\n */\n public addDays(count?: number): DateApiObject<Date>\n {\n this._value = addDays(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Subtract days, if count not specified subtract 1 day\n * @param count - Number of days count\n * @returns Itself for fluent API\n */\n public subtractDays(count?: number): DateApiObject<Date>\n {\n this._value = subDays(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current hour\n * @returns Itself for fluent API\n */\n public startOfHour(): DateApiObject<Date>\n {\n this._value = startOfHour(this._value);\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current hour\n * @returns Itself for fluent API\n */\n public endOfHour(): DateApiObject<Date>\n {\n this._value = endOfHour(this._value);\n\n return this;\n }\n\n /**\n * Add hours, if count not specified adds 1 hour\n * @param count - Number of hours count\n * @returns Itself for fluent API\n */\n public addHours(count?: number): DateApiObject<Date>\n {\n this._value = addHours(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Subtract hours, if count not specified subtract 1 hour\n * @param count - Number of hours count\n * @returns Itself for fluent API\n */\n public subtractHours(count?: number): DateApiObject<Date>\n {\n this._value = subHours(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current minute\n * @returns Itself for fluent API\n */\n public startOfMinute(): DateApiObject<Date>\n {\n this._value = startOfMinute(this._value);\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current minute\n * @returns Itself for fluent API\n */\n public endOfMinute(): DateApiObject<Date>\n {\n this._value = endOfMinute(this._value);\n\n return this;\n }\n\n /**\n * Add minutes, if count not specified adds 1 minute\n * @param count - Number of minutes count\n * @returns Itself for fluent API\n */\n public addMinutes(count?: number): DateApiObject<Date>\n {\n this._value = addMinutes(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Subtract minutes, if count not specified subtract 1 minute\n * @param count - Number of minutes count\n * @returns Itself for fluent API\n */\n public subtractMinutes(count?: number): DateApiObject<Date>\n {\n this._value = subMinutes(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Gets number of days in month\n */\n public daysInMonth(): number\n {\n return getDaysInMonth(this._value);\n }\n\n /**\n * Gets year\n */\n public year(): number;\n /**\n * Sets year\n * @param year - Year to be set\n */\n public year(year: number): DateApiObject<Date>;\n /**\n * Gets or sets year\n * @param year - If specified, sets year\n */\n public year(year?: number): DateApiObject<Date>|number\n {\n if(isPresent(year))\n {\n this._value = setYear(this._value, year);\n\n return this;\n }\n\n return getYear(this._value);\n }\n\n /**\n * Gets month\n */\n public month(): number\n /**\n * Sets month\n * @param month - Month to be set\n */\n public month(month: number): DateApiObject<Date>\n /**\n * Gets or sets month\n * @param month - If specified, sets month\n */\n public month(month?: number): DateApiObject<Date>|number\n {\n if(isPresent(month))\n {\n this._value = setMonth(this._value, month);\n\n return this;\n }\n\n return getMonth(this._value);\n }\n\n /**\n * Gets day of month one based\n */\n public dayOfMonth(): number;\n /**\n * Sets day of month one based\n * @param day - Day of month to be set\n */\n public dayOfMonth(day: number): DateApiObject<Date>;\n /**\n * Gets or sets day of month one based\n * @param day - If specified, sets day of month\n */\n public dayOfMonth(day?: number): DateApiObject<Date>|number\n {\n if(isPresent(day))\n {\n this._value = setDate(this._value, day);\n\n return this;\n }\n\n return getDate(this._value);\n }\n\n /**\n * Gets day of week zero based, first is monday\n */\n public dayOfWeek(): number;\n /**\n * Sets day of week zero based, first is monday\n * @param day - Day of week to be set\n */\n public dayOfWeek(day: number): DateApiObject<Date>;\n /**\n * Gets or sets day of week zero based, first is monday\n * @param day - If specified, sets day of week\n */\n public dayOfWeek(day?: number): number|DateApiObject<Date>\n {\n if(isPresent(day))\n {\n this._value = setISODay(this._value, day + 1!);\n\n return this;\n }\n\n return getISODay(this._value) - 1;\n }\n\n /**\n * Gets hours zero based\n */\n public hour(): number;\n /**\n * Sets hours zero based\n * @param hour - hour to be set\n */\n public hour(hour: number): DateApiObject<Date>;\n /**\n * Gets or sets hours zero based\n * @param hour - If specified, sets hour\n */\n public hour(hour?: number): DateApiObject<Date>|number\n {\n if(isPresent(hour))\n {\n this._value = setHours(this._value, hour);\n\n return this;\n }\n\n return getHours(this._value);\n }\n\n /**\n * Gets minutes zero based\n */\n public minute(): number;\n /**\n * Sets minutes zero based\n * @param minute - minutes to be set\n */\n public minute(minute: number): DateApiObject<Date>;\n /**\n * Gets or sets minutes zero based\n * @param minute - If specified, sets minutes\n */\n public minute(minute?: number): DateApiObject<Date>|number\n {\n if(isPresent(minute))\n {\n this._value = setMinutes(this._value, minute);\n\n return this;\n }\n\n return getMinutes(this._value);\n }\n\n /**\n * Gets indication whether current value is before 'date'\n * @param date - Date which is this date compared to\n */\n public isBefore(date: Date): boolean\n {\n return isBefore(this._value, date);\n }\n\n /**\n * Gets indication whether current value is after 'date'\n * @param date - Date which is this date compared to\n */\n public isAfter(date: Date): boolean\n {\n return isAfter(this._value, date);\n }\n\n /**\n * Gets number of days between this and provided date\n * @param date - Date which is used for computation of diff against\n */\n public diffDays(date: Date): number\n {\n return differenceInCalendarDays(this._value, date);\n }\n\n /**\n * Compares whether this date is same week as provided date\n * @param date - Date which is used for comparison of same week\n */\n public isSameWeek(date: Date): boolean\n {\n return isSameWeek(this._value, date, {locale: this._localeSvc.locale});\n }\n\n /**\n * Compares whether this date is same decade as provided date\n * @param date - Date which is used for comparison of same decade\n */\n public isSameDecade(date: Date): boolean\n {\n const year = getYear(this._value);\n const start = year - (year % 10);\n const end = start + 10;\n\n return getYear(date) >= start && getYear(date) < end;\n }\n\n /**\n * Compares whether this date is same year as provided date\n * @param date - Date which is used for comparison of same year\n */\n public isSameYear(date: Date): boolean\n {\n return isSameYear(this._value, date);\n }\n\n /**\n * Compares whether this date is same month as provided date\n * @param date - Date which is used for comparison of same month\n */\n public isSameMonth(date: Date): boolean\n {\n return isSameMonth(this._value, date);\n }\n\n /**\n * Compares whether this date is same day as provided date\n * @param date - Date which is used for comparison of same day\n */\n public isSameDay(date: Date): boolean\n {\n return isSameDay(this._value, date);\n }\n\n /**\n * Creates clone of this instance, value and originalValue have same value and are cloned from value\n */\n public clone(): DateApiObject<Date>\n {\n return new DateFnsDateApiObject(new Date(this._value), null, this._localeSvc);\n }\n\n /**\n * Creates clone of this instance, value and originalValue have same value and are cloned from originalValue\n */\n public cloneOriginal(): DateApiObject<Date>\n {\n return new DateFnsDateApiObject(new Date(this._originalValue), null, this._localeSvc);\n }\n\n /**\n * Updates originalValue, if value is not provided originalValue is set to value\n * @param value - Value to be set as original, or null (value will be used as value)\n * @returns Itself for fluent API\n */\n public updateOriginal(value?: Date): DateApiObject<Date>\n {\n if(isBlank(value))\n {\n this._originalValue = this._value;\n }\n else\n {\n this._value = this._originalValue = value!;\n }\n\n return this;\n }\n\n /**\n * Changes value to same value as originalValue\n * @returns Itself for fluent API\n */\n public resetOriginal(): DateApiObject<Date>\n {\n this._value = this._originalValue;\n\n return this;\n }\n}\n\n/**\n * Date api using DateFnsJS, used for obtaining DateApi wrapper object\n */\n@Injectable()\nexport class DateFnsDateApi implements DateApi<Date>\n{\n //######################### constructor #########################\n constructor(@Inject(DATE_FNS_LOCALE) protected _localeSvc: DateFnsLocale,\n protected _relativeParser: DateTimeRelativeParser<Date>,\n @Inject(DATE_API_OBJECT_TYPE) protected _dateApiObjecType: DateApiObjectCtor<DateFnsDateApiObject, Date>)\n {\n }\n\n //######################### public methods - implementation of DateApi #########################\n\n /**\n * Gets wrapping object used for manipulation\n * @param value - Value to be converted (parsed) and used for manipulation\n * @param format - Format string used for parsing string value\n */\n public getValue(value: DateValue|Date, format?: string): DateApiObject<Date>\n {\n return new this._dateApiObjecType(this._relativeParser.parse(value), format, this._localeSvc);\n }\n\n /**\n * Gets wrapping object used for manipulation instantiated to current date and time\n */\n public now(): DateApiObject<Date>\n {\n return new this._dateApiObjecType(new Date(), null, this._localeSvc);\n }\n\n /**\n * Gets format string using pseudo format\n * @param pseudoFormat - Pseudo format token, used for obtaining 'date' or 'time' format string\n */\n public getFormat(pseudoFormat: string): string\n {\n if(/^p+$/i.test(pseudoFormat))\n {\n if(!this._localeSvc.locale.formatLong)\n {\n throw new Error('Missing long formats for locale in DateApi');\n }\n\n const widths: {[index: number]: string} =\n {\n 1: 'short',\n 2: 'medium',\n 3: 'long',\n 4: 'full'\n };\n\n //date time format\n if(pseudoFormat.indexOf('Pp') >= 0 && pseudoFormat.length <= 8)\n {\n const partLength = pseudoFormat.length / 2;\n\n return `${this._localeSvc.locale.formatLong.date({width: widths[partLength]})} ${this._localeSvc.locale.formatLong.time({width: widths[partLength]})}`;\n }\n //date format\n else if(pseudoFormat.indexOf('P') >= 0 && pseudoFormat.length <= 4)\n {\n return this._localeSvc.locale.formatLong.date({width: widths[pseudoFormat.length]});\n }\n //time format\n else if(pseudoFormat.indexOf('p') >= 0 && pseudoFormat.length <= 4)\n {\n return this._localeSvc.locale.formatLong.time({width: widths[pseudoFormat.length]});\n }\n }\n\n return pseudoFormat;\n }\n\n /**\n * Gets information \n */\n public weekStartsOnMonday(): boolean\n {\n return this._localeSvc.locale.options?.weekStartsOn === 1;\n }\n\n /**\n * Gets array of weekday names in short format, order of days is dependent on locale\n */\n public weekdaysShort(): string[]\n {\n let startIndex = this._localeSvc.locale.options!.weekStartsOn!;\n const weekdays: string[] = [];\n\n for(let x = 0; x < 7; x++)\n {\n weekdays.push(this._localeSvc.locale.localize!.day(startIndex++ % 7, {width: 'short'}));\n }\n\n return weekdays;\n }\n\n /**\n * @inheritdoc\n */\n public isDate(value: unknown): value is Date\n {\n return isDate(value);\n }\n}\n\n/**\n * Type that represents creation of DateApiObject for date-fns\n */\nexport const dateFnsDateApiObjectType: DateApiObjectCtor<DateFnsDateApiObject, Date> = DateFnsDateApiObject;\n\n/**\n * Injection token used for injecting type that creates instance of DateApiObject for date-fns\n */\nexport const DATE_FNS_DATE_API_OBJECT_TYPE: ValueProvider =\n{\n provide: DATE_API_OBJECT_TYPE,\n useValue: dateFnsDateApiObjectType\n};"]}
|
|
1
|
+
{"version":3,"file":"dateFnsDateApi.service.js","sourceRoot":"","sources":["../../../../date-fns/src/services/dateFnsDateApi.service.ts"],"names":[],"mappings":"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","sourcesContent":["import {Inject, Injectable, ValueProvider} from '@angular/core';\nimport {DateApi, DateValue, DateApiObject, DateTimeRelativeParser, DateApiObjectCtor, DATE_API_OBJECT_TYPE} from '@anglr/datetime';\nimport {isBlank, isPresent, isString} from '@jscrpt/common';\nimport {toDate, getDate, setDate, isAfter, isBefore, differenceInCalendarDays, format, startOfMonth, endOfMonth, startOfWeek, endOfWeek, startOfDay, endOfDay, addMonths, addWeeks, addDays, subMonths, subWeeks, subDays, getDaysInMonth, isSameDay, isSameWeek, isSameMonth, isValid, parse, parseISO, addYears, subYears, startOfYear, endOfYear, isWeekend, setYear, getYear, isSameYear, startOfDecade, endOfDecade, setMonth, getMonth, setISODay, getISODay, subHours, addHours, endOfHour, startOfHour, startOfMinute, endOfMinute, addMinutes, subMinutes, getHours, setHours, getMinutes, setMinutes, isDate, getUnixTime} from 'date-fns';\n\nimport {DATE_FNS_LOCALE} from '../misc/tokens';\nimport {DateFnsLocale} from './dateFnsLocale.service';\n\n/**\n * Instance of object wrapping TDate, allowing manipulation with it\n */\nexport class DateFnsDateApiObject implements DateApiObject<Date>\n{\n //######################### protected fields #########################\n\n /**\n * Original value that is not changed unless 'updateOriginal' is called\n */\n protected _originalValue: Date;\n\n /**\n * Instance of date\n */\n protected _value: Date;\n\n //######################### public properties - implementation of DateApiObject #########################\n\n /**\n * Original value that is not changed unless 'updateOriginal' is called\n */\n public get originalValue(): Date\n {\n return this._originalValue;\n }\n\n /**\n * Instance of date\n */\n public get value(): Date\n {\n return this._value;\n }\n\n //######################### constructor #########################\n constructor(value: DateValue|Date,\n format: string|null|undefined,\n protected _localeSvc: DateFnsLocale)\n {\n if(isString(value))\n {\n //ISO string\n if(/^\\d+-\\d+-\\d+(T\\d+:\\d+:\\d+)?/.test(value))\n {\n this._value = this._originalValue = parseISO(value);\n }\n else\n {\n if(isBlank(format))\n {\n throw new Error('date-fns requires format parameter to be set for parsing non ISO string date!');\n }\n\n this._value = this._originalValue = parse(value, format, new Date(1970, 0));\n }\n }\n else\n {\n this._value = this._originalValue = toDate(value);\n }\n }\n\n //######################### public methods - implementation of DateApiObject #########################\n\n /**\n * Gets indication whether provided instance of date is valid\n */\n public isValid(): boolean\n {\n return isValid(this._value);\n }\n\n /**\n * Gets indication whether provided instance of date is weekend day\n */\n public isWeekend(): boolean\n {\n return isWeekend(this._value);\n }\n\n /**\n * Formats date value\n * @param formatString - Format token used for creating formatted string\n */\n public format(formatString: string): string\n {\n return format(this._value, formatString, {locale: this._localeSvc.locale});\n }\n\n /**\n * @inheritdoc\n */\n public unixTimestamp(): number\n {\n return getUnixTime(this._value);\n }\n\n /**\n * Updates value to start date and time of current decade\n * @returns Itself for fluent API\n */\n public startOfDecade(): DateApiObject<Date>\n {\n this._value = startOfDecade(this._value);\n \n return this;\n }\n\n /**\n * Updates value to end date and time of current decade\n * @returns Itself for fluent API\n */\n public endOfDecade(): DateApiObject<Date>\n {\n this._value = endOfDecade(this._value);\n \n return this;\n }\n\n /**\n * Updates value to start date and time of current year\n * @returns Itself for fluent API\n */\n public startOfYear(): DateApiObject<Date>\n {\n this._value = startOfYear(this._value);\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current year\n * @returns Itself for fluent API\n */\n public endOfYear(): DateApiObject<Date>\n {\n this._value = endOfYear(this._value);\n\n return this;\n }\n\n /**\n * Add years, if count not specified adds 1 year\n * @param count - Number of years count\n * @returns Itself for fluent API\n */\n public addYears(count?: number): DateApiObject<Date>\n {\n this._value = addYears(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Subtract years, if count not specified subtract 1 year\n * @param count - Number of years count\n * @returns Itself for fluent API\n */\n public subtractYears(count?: number): DateApiObject<Date>\n {\n this._value = subYears(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current month\n * @returns Itself for fluent API\n */\n public startOfMonth(): DateApiObject<Date>\n {\n this._value = startOfMonth(this._value);\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current month\n * @returns Itself for fluent API\n */\n public endOfMonth(): DateApiObject<Date>\n {\n this._value = endOfMonth(this._value);\n\n return this;\n }\n\n /**\n * Add months, if count not specified adds 1 month\n * @param count - Number of months count\n * @returns Itself for fluent API\n */\n public addMonths(count?: number): DateApiObject<Date>\n {\n this._value = addMonths(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Subtract months, if count not specified subtract 1 month\n * @param count - Number of months count\n * @returns Itself for fluent API\n */\n public subtractMonths(count?: number): DateApiObject<Date>\n {\n this._value = subMonths(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current week\n * @returns Itself for fluent API\n */\n public startOfWeek(): DateApiObject<Date>\n {\n this._value = startOfWeek(this._value, {locale: this._localeSvc.locale});\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current week\n * @returns Itself for fluent API\n */\n public endOfWeek(): DateApiObject<Date>\n {\n this._value = endOfWeek(this._value, {locale: this._localeSvc.locale});\n\n return this;\n }\n\n /**\n * Add weeks, if count not specified adds 1 week\n * @param count - Number of weeks count\n * @returns Itself for fluent API\n */\n public addWeeks(count?: number): DateApiObject<Date>\n {\n this._value = addWeeks(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Subtract weeks, if count not specified subtract 1 week\n * @param count - Number of weeks count\n * @returns Itself for fluent API\n */\n public subtractWeeks(count?: number): DateApiObject<Date>\n {\n this._value = subWeeks(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current day\n * @returns Itself for fluent API\n */\n public startOfDay(): DateApiObject<Date>\n {\n this._value = startOfDay(this._value);\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current day\n * @returns Itself for fluent API\n */\n public endOfDay(): DateApiObject<Date>\n {\n this._value = endOfDay(this._value);\n\n return this;\n }\n\n /**\n * Add days, if count not specified adds 1 day\n * @param count - Number of days count\n * @returns Itself for fluent API\n */\n public addDays(count?: number): DateApiObject<Date>\n {\n this._value = addDays(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Subtract days, if count not specified subtract 1 day\n * @param count - Number of days count\n * @returns Itself for fluent API\n */\n public subtractDays(count?: number): DateApiObject<Date>\n {\n this._value = subDays(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current hour\n * @returns Itself for fluent API\n */\n public startOfHour(): DateApiObject<Date>\n {\n this._value = startOfHour(this._value);\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current hour\n * @returns Itself for fluent API\n */\n public endOfHour(): DateApiObject<Date>\n {\n this._value = endOfHour(this._value);\n\n return this;\n }\n\n /**\n * Add hours, if count not specified adds 1 hour\n * @param count - Number of hours count\n * @returns Itself for fluent API\n */\n public addHours(count?: number): DateApiObject<Date>\n {\n this._value = addHours(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Subtract hours, if count not specified subtract 1 hour\n * @param count - Number of hours count\n * @returns Itself for fluent API\n */\n public subtractHours(count?: number): DateApiObject<Date>\n {\n this._value = subHours(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current minute\n * @returns Itself for fluent API\n */\n public startOfMinute(): DateApiObject<Date>\n {\n this._value = startOfMinute(this._value);\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current minute\n * @returns Itself for fluent API\n */\n public endOfMinute(): DateApiObject<Date>\n {\n this._value = endOfMinute(this._value);\n\n return this;\n }\n\n /**\n * Add minutes, if count not specified adds 1 minute\n * @param count - Number of minutes count\n * @returns Itself for fluent API\n */\n public addMinutes(count?: number): DateApiObject<Date>\n {\n this._value = addMinutes(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Subtract minutes, if count not specified subtract 1 minute\n * @param count - Number of minutes count\n * @returns Itself for fluent API\n */\n public subtractMinutes(count?: number): DateApiObject<Date>\n {\n this._value = subMinutes(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Gets number of days in month\n */\n public daysInMonth(): number\n {\n return getDaysInMonth(this._value);\n }\n\n /**\n * Gets year\n */\n public year(): number;\n /**\n * Sets year\n * @param year - Year to be set\n */\n public year(year: number): DateApiObject<Date>;\n /**\n * Gets or sets year\n * @param year - If specified, sets year\n */\n public year(year?: number): DateApiObject<Date>|number\n {\n if(isPresent(year))\n {\n this._value = setYear(this._value, year);\n\n return this;\n }\n\n return getYear(this._value);\n }\n\n /**\n * Gets month\n */\n public month(): number\n /**\n * Sets month\n * @param month - Month to be set\n */\n public month(month: number): DateApiObject<Date>\n /**\n * Gets or sets month\n * @param month - If specified, sets month\n */\n public month(month?: number): DateApiObject<Date>|number\n {\n if(isPresent(month))\n {\n this._value = setMonth(this._value, month);\n\n return this;\n }\n\n return getMonth(this._value);\n }\n\n /**\n * Gets day of month one based\n */\n public dayOfMonth(): number;\n /**\n * Sets day of month one based\n * @param day - Day of month to be set\n */\n public dayOfMonth(day: number): DateApiObject<Date>;\n /**\n * Gets or sets day of month one based\n * @param day - If specified, sets day of month\n */\n public dayOfMonth(day?: number): DateApiObject<Date>|number\n {\n if(isPresent(day))\n {\n this._value = setDate(this._value, day);\n\n return this;\n }\n\n return getDate(this._value);\n }\n\n /**\n * Gets day of week zero based, first is monday\n */\n public dayOfWeek(): number;\n /**\n * Sets day of week zero based, first is monday\n * @param day - Day of week to be set\n */\n public dayOfWeek(day: number): DateApiObject<Date>;\n /**\n * Gets or sets day of week zero based, first is monday\n * @param day - If specified, sets day of week\n */\n public dayOfWeek(day?: number): number|DateApiObject<Date>\n {\n if(isPresent(day))\n {\n this._value = setISODay(this._value, day + 1!);\n\n return this;\n }\n\n return getISODay(this._value) - 1;\n }\n\n /**\n * Gets hours zero based\n */\n public hour(): number;\n /**\n * Sets hours zero based\n * @param hour - hour to be set\n */\n public hour(hour: number): DateApiObject<Date>;\n /**\n * Gets or sets hours zero based\n * @param hour - If specified, sets hour\n */\n public hour(hour?: number): DateApiObject<Date>|number\n {\n if(isPresent(hour))\n {\n this._value = setHours(this._value, hour);\n\n return this;\n }\n\n return getHours(this._value);\n }\n\n /**\n * Gets minutes zero based\n */\n public minute(): number;\n /**\n * Sets minutes zero based\n * @param minute - minutes to be set\n */\n public minute(minute: number): DateApiObject<Date>;\n /**\n * Gets or sets minutes zero based\n * @param minute - If specified, sets minutes\n */\n public minute(minute?: number): DateApiObject<Date>|number\n {\n if(isPresent(minute))\n {\n this._value = setMinutes(this._value, minute);\n\n return this;\n }\n\n return getMinutes(this._value);\n }\n\n /**\n * Gets indication whether current value is before 'date'\n * @param date - Date which is this date compared to\n */\n public isBefore(date: Date): boolean\n {\n return isBefore(this._value, date);\n }\n\n /**\n * Gets indication whether current value is after 'date'\n * @param date - Date which is this date compared to\n */\n public isAfter(date: Date): boolean\n {\n return isAfter(this._value, date);\n }\n\n /**\n * Gets number of days between this and provided date\n * @param date - Date which is used for computation of diff against\n */\n public diffDays(date: Date): number\n {\n return differenceInCalendarDays(this._value, date);\n }\n\n /**\n * Compares whether this date is same week as provided date\n * @param date - Date which is used for comparison of same week\n */\n public isSameWeek(date: Date): boolean\n {\n return isSameWeek(this._value, date, {locale: this._localeSvc.locale});\n }\n\n /**\n * Compares whether this date is same decade as provided date\n * @param date - Date which is used for comparison of same decade\n */\n public isSameDecade(date: Date): boolean\n {\n const year = getYear(this._value);\n const start = year - (year % 10);\n const end = start + 10;\n\n return getYear(date) >= start && getYear(date) < end;\n }\n\n /**\n * Compares whether this date is same year as provided date\n * @param date - Date which is used for comparison of same year\n */\n public isSameYear(date: Date): boolean\n {\n return isSameYear(this._value, date);\n }\n\n /**\n * Compares whether this date is same month as provided date\n * @param date - Date which is used for comparison of same month\n */\n public isSameMonth(date: Date): boolean\n {\n return isSameMonth(this._value, date);\n }\n\n /**\n * Compares whether this date is same day as provided date\n * @param date - Date which is used for comparison of same day\n */\n public isSameDay(date: Date): boolean\n {\n return isSameDay(this._value, date);\n }\n\n /**\n * Creates clone of this instance, value and originalValue have same value and are cloned from value\n */\n public clone(): DateApiObject<Date>\n {\n return new DateFnsDateApiObject(new Date(this._value), null, this._localeSvc);\n }\n\n /**\n * Creates clone of this instance, value and originalValue have same value and are cloned from originalValue\n */\n public cloneOriginal(): DateApiObject<Date>\n {\n return new DateFnsDateApiObject(new Date(this._originalValue), null, this._localeSvc);\n }\n\n /**\n * Updates originalValue, if value is not provided originalValue is set to value\n * @param value - Value to be set as original, or null (value will be used as value)\n * @returns Itself for fluent API\n */\n public updateOriginal(value?: Date): DateApiObject<Date>\n {\n if(isBlank(value))\n {\n this._originalValue = this._value;\n }\n else\n {\n this._value = this._originalValue = value!;\n }\n\n return this;\n }\n\n /**\n * Changes value to same value as originalValue\n * @returns Itself for fluent API\n */\n public resetOriginal(): DateApiObject<Date>\n {\n this._value = this._originalValue;\n\n return this;\n }\n}\n\n/**\n * Date api using DateFnsJS, used for obtaining DateApi wrapper object\n */\n@Injectable()\nexport class DateFnsDateApi implements DateApi<Date>\n{\n //######################### constructor #########################\n constructor(@Inject(DATE_FNS_LOCALE) protected _localeSvc: DateFnsLocale,\n protected _relativeParser: DateTimeRelativeParser<Date>,\n @Inject(DATE_API_OBJECT_TYPE) protected _dateApiObjecType: DateApiObjectCtor<DateFnsDateApiObject, Date>)\n {\n }\n\n //######################### public methods - implementation of DateApi #########################\n\n /**\n * Gets wrapping object used for manipulation\n * @param value - Value to be converted (parsed) and used for manipulation\n * @param format - Format string used for parsing string value\n */\n public getValue(value: DateValue|Date, format?: string): DateApiObject<Date>\n {\n return new this._dateApiObjecType(this._relativeParser.parse(value), format, this._localeSvc);\n }\n\n /**\n * Gets wrapping object used for manipulation instantiated to current date and time\n */\n public now(): DateApiObject<Date>\n {\n return new this._dateApiObjecType(new Date(), null ?? undefined, this._localeSvc);\n }\n\n /**\n * Gets format string using pseudo format\n * @param pseudoFormat - Pseudo format token, used for obtaining 'date' or 'time' format string\n */\n public getFormat(pseudoFormat: string): string\n {\n if(/^p+$/i.test(pseudoFormat))\n {\n if(!this._localeSvc.locale.formatLong)\n {\n throw new Error('Missing long formats for locale in DateApi');\n }\n\n const widths: {[index: number]: string} =\n {\n 1: 'short',\n 2: 'medium',\n 3: 'long',\n 4: 'full'\n };\n\n //date time format\n if(pseudoFormat.indexOf('Pp') >= 0 && pseudoFormat.length <= 8)\n {\n const partLength = pseudoFormat.length / 2;\n\n return `${this._localeSvc.locale.formatLong.date({width: widths[partLength]})} ${this._localeSvc.locale.formatLong.time({width: widths[partLength]})}`;\n }\n //date format\n else if(pseudoFormat.indexOf('P') >= 0 && pseudoFormat.length <= 4)\n {\n return this._localeSvc.locale.formatLong.date({width: widths[pseudoFormat.length]});\n }\n //time format\n else if(pseudoFormat.indexOf('p') >= 0 && pseudoFormat.length <= 4)\n {\n return this._localeSvc.locale.formatLong.time({width: widths[pseudoFormat.length]});\n }\n }\n\n return pseudoFormat;\n }\n\n /**\n * Gets information \n */\n public weekStartsOnMonday(): boolean\n {\n return this._localeSvc.locale.options?.weekStartsOn === 1;\n }\n\n /**\n * Gets array of weekday names in short format, order of days is dependent on locale\n */\n public weekdaysShort(): string[]\n {\n let startIndex = this._localeSvc.locale.options!.weekStartsOn!;\n const weekdays: string[] = [];\n\n for(let x = 0; x < 7; x++)\n {\n weekdays.push(this._localeSvc.locale.localize!.day(startIndex++ % 7, {width: 'short'}));\n }\n\n return weekdays;\n }\n\n /**\n * @inheritdoc\n */\n public isDate(value: unknown): value is Date\n {\n return isDate(value);\n }\n}\n\n/**\n * Type that represents creation of DateApiObject for date-fns\n */\nexport const dateFnsDateApiObjectType: DateApiObjectCtor<DateFnsDateApiObject, Date> = DateFnsDateApiObject;\n\n/**\n * Injection token used for injecting type that creates instance of DateApiObject for date-fns\n */\nexport const DATE_FNS_DATE_API_OBJECT_TYPE: ValueProvider =\n{\n provide: DATE_API_OBJECT_TYPE,\n useValue: dateFnsDateApiObjectType\n};"]}
|
|
@@ -46,6 +46,12 @@ export class MomentDateApiObject {
|
|
|
46
46
|
format(format) {
|
|
47
47
|
return this._value.format(format.replace(/y/g, 'Y').replace(/d/g, 'D'));
|
|
48
48
|
}
|
|
49
|
+
/**
|
|
50
|
+
* @inheritdoc
|
|
51
|
+
*/
|
|
52
|
+
unixTimestamp() {
|
|
53
|
+
return this._value.unix();
|
|
54
|
+
}
|
|
49
55
|
/**
|
|
50
56
|
* Updates value to start date and time of current decade
|
|
51
57
|
* @returns Itself for fluent API
|
|
@@ -487,9 +493,9 @@ export class MomentDateApi {
|
|
|
487
493
|
return value instanceof moment;
|
|
488
494
|
}
|
|
489
495
|
}
|
|
490
|
-
MomentDateApi.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
491
|
-
MomentDateApi.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
492
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
496
|
+
MomentDateApi.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.6", ngImport: i0, type: MomentDateApi, deps: [{ token: i1.DateTimeRelativeParser }, { token: DATE_API_OBJECT_TYPE }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
497
|
+
MomentDateApi.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.6", ngImport: i0, type: MomentDateApi });
|
|
498
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.6", ngImport: i0, type: MomentDateApi, decorators: [{
|
|
493
499
|
type: Injectable
|
|
494
500
|
}], ctorParameters: function () { return [{ type: i1.DateTimeRelativeParser }, { type: undefined, decorators: [{
|
|
495
501
|
type: Inject,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"momentDateApi.service.js","sourceRoot":"","sources":["../../../../moment/src/services/momentDateApi.service.ts"],"names":[],"mappings":"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","sourcesContent":["import {Inject, Injectable, ValueProvider} from '@angular/core';\nimport {DateApi, DateValue, DateApiObject, DateTimeRelativeParser, DateApiObjectCtor, DATE_API_OBJECT_TYPE} from '@anglr/datetime';\nimport {isBlank, isPresent} from '@jscrpt/common';\nimport moment, {LongDateFormatKey} from 'moment';\n\n/**\n * Instance of object wrapping TDate, allowing manipulation with it\n */\nexport class MomentDateApiObject implements DateApiObject<moment.Moment>\n{\n //######################### protected fields #########################\n\n /**\n * Original value that is not changed unless 'updateOriginal' is called\n */\n protected _originalValue: moment.Moment;\n\n /**\n * Instance of date\n */\n protected _value: moment.Moment;\n\n //######################### public properties - implementation of DateApiObject #########################\n\n /**\n * Original value that is not changed unless 'updateOriginal' is called\n */\n public get originalValue(): moment.Moment\n {\n return this._originalValue;\n }\n\n /**\n * Instance of date\n */\n public get value(): moment.Moment\n {\n return this._value;\n }\n\n //######################### constructor #########################\n constructor(value: DateValue|moment.Moment, format?: string)\n {\n this._value = this._originalValue = moment(value, format);\n }\n\n //######################### public methods - implementation of DateApiObject #########################\n\n /**\n * Gets indication whether provided instance of date is valid\n */\n public isValid(): boolean\n {\n return this._value.isValid();\n }\n\n /**\n * Gets indication whether provided instance of date is weekend day\n */\n public isWeekend(): boolean\n {\n const weekday = this._value.isoWeekday();\n\n return weekday == 6 || weekday == 7;\n }\n\n /**\n * Formats date value\n * @param format - Format token used for creating formatted string\n */\n public format(format: string): string\n {\n return this._value.format(format.replace(/y/g, 'Y').replace(/d/g, 'D'));\n }\n\n /**\n * Updates value to start date and time of current decade\n * @returns Itself for fluent API\n */\n public startOfDecade(): DateApiObject<moment.Moment>\n {\n const diff = (this._value.year() % 10);\n\n this._value = moment(this._value).subtract(diff, 'years').startOf('year');\n \n return this;\n }\n\n /**\n * Updates value to end date and time of current decade\n * @returns Itself for fluent API\n */\n public endOfDecade(): DateApiObject<moment.Moment>\n {\n const diff = 9 - (this._value.year() % 10);\n\n this._value = moment(this._value).add(diff, 'years').endOf('year');\n \n return this;\n }\n\n /**\n * Updates value to start date and time of current year\n * @returns Itself for fluent API\n */\n public startOfYear(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).startOf('year');\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current year\n * @returns Itself for fluent API\n */\n public endOfYear(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).endOf('year');\n\n return this;\n }\n\n /**\n * Add years, if count not specified adds 1 year\n * @param count - Number of years count\n * @returns Itself for fluent API\n */\n public addYears(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).add(count ?? 1, 'years');\n\n return this;\n }\n\n /**\n * Subtract years, if count not specified subtract 1 year\n * @param count - Number of years count\n * @returns Itself for fluent API\n */\n public subtractYears(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).subtract(count ?? 1, 'years');\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current month\n * @returns Itself for fluent API\n */\n public startOfMonth(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).startOf('month');\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current month\n * @returns Itself for fluent API\n */\n public endOfMonth(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).endOf('month');\n\n return this;\n }\n\n /**\n * Add months, if count not specified adds 1 month\n * @param count - Number of months count\n * @returns Itself for fluent API\n */\n public addMonths(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).add(count ?? 1, 'months');\n\n return this;\n }\n\n /**\n * Subtract months, if count not specified subtract 1 month\n * @param count - Number of months count\n * @returns Itself for fluent API\n */\n public subtractMonths(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).subtract(count ?? 1, 'months');\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current week\n * @returns Itself for fluent API\n */\n public startOfWeek(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).startOf('week');\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current week\n * @returns Itself for fluent API\n */\n public endOfWeek(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).endOf('week');\n\n return this;\n }\n\n /**\n * Add weeks, if count not specified adds 1 week\n * @param count - Number of weeks count\n * @returns Itself for fluent API\n */\n public addWeeks(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).add(count ?? 1, 'weeks');\n\n return this;\n }\n\n /**\n * Subtract weeks, if count not specified subtract 1 week\n * @param count - Number of weeks count\n * @returns Itself for fluent API\n */\n public subtractWeeks(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).subtract(count ?? 1, 'weeks');\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current day\n * @returns Itself for fluent API\n */\n public startOfDay(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).startOf('day');\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current day\n * @returns Itself for fluent API\n */\n public endOfDay(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).endOf('day');\n\n return this;\n }\n\n /**\n * Add days, if count not specified adds 1 day\n * @param count - Number of days count\n * @returns Itself for fluent API\n */\n public addDays(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).add(count ?? 1, 'days');\n\n return this;\n }\n\n /**\n * Subtract days, if count not specified subtract 1 day\n * @param count - Number of days count\n * @returns Itself for fluent API\n */\n public subtractDays(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).subtract(count ?? 1, 'days');\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current hour\n * @returns Itself for fluent API\n */\n public startOfHour(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).startOf('hour');\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current hour\n * @returns Itself for fluent API\n */\n public endOfHour(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).endOf('hour');\n\n return this;\n }\n\n /**\n * Add hours, if count not specified adds 1 hour\n * @param count - Number of hours count\n * @returns Itself for fluent API\n */\n public addHours(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).add(count ?? 1, 'hours');\n\n return this;\n }\n\n /**\n * Subtract hours, if count not specified subtract 1 hour\n * @param count - Number of hours count\n * @returns Itself for fluent API\n */\n public subtractHours(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).subtract(count ?? 1, 'hours');\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current minute\n * @returns Itself for fluent API\n */\n public startOfMinute(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).startOf('minute');\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current minute\n * @returns Itself for fluent API\n */\n public endOfMinute(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).endOf('minute');\n\n return this;\n }\n\n /**\n * Add minutes, if count not specified adds 1 minute\n * @param count - Number of minutes count\n * @returns Itself for fluent API\n */\n public addMinutes(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).add(count ?? 1, 'minutes');\n\n return this;\n }\n\n /**\n * Subtract minutes, if count not specified subtract 1 minute\n * @param count - Number of minutes count\n * @returns Itself for fluent API\n */\n public subtractMinutes(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).subtract(count ?? 1, 'minutes');\n\n return this;\n }\n\n /**\n * Gets number of days in month\n */\n public daysInMonth(): number\n {\n return this._value.daysInMonth();\n }\n\n /**\n * Gets year\n */\n public year(): number;\n /**\n * Sets year\n * @param year - Year to be set\n */\n public year(year: number): DateApiObject<moment.Moment>;\n /**\n * Gets or sets year\n * @param year - If specified, sets year\n */\n public year(year?: number): DateApiObject<moment.Moment>|number\n {\n if(isPresent(year))\n {\n this._value = moment(this._value).year(year);\n\n return this;\n }\n\n return this._value.year();\n }\n\n /**\n * Gets month\n */\n public month(): number\n /**\n * Sets month\n * @param month - Month to be set\n */\n public month(month: number): DateApiObject<moment.Moment>\n /**\n * Gets or sets month\n * @param month - If specified, sets month\n */\n public month(month?: number): DateApiObject<moment.Moment>|number\n {\n if(isPresent(month))\n {\n this._value = moment(this._value).month(month);\n\n return this;\n }\n\n return this._value.month();\n }\n\n /**\n * Gets day of month one based\n */\n public dayOfMonth(): number;\n /**\n * Sets day of month one based\n * @param day - Day of month to be set\n */\n public dayOfMonth(day: number): DateApiObject<moment.Moment>;\n /**\n * Gets or sets day of month one based\n * @param day - If specified, sets day of month\n */\n public dayOfMonth(day?: number): DateApiObject<moment.Moment>|number\n {\n if(isPresent(day))\n {\n this._value = moment(this._value).date(day);\n\n return this;\n }\n\n return this._value.date();\n }\n\n /**\n * Gets day of week zero based, first is monday\n */\n public dayOfWeek(): number;\n /**\n * Sets day of week zero based, first is monday\n * @param day - Day of week to be set\n */\n public dayOfWeek(day: number): DateApiObject<moment.Moment>;\n /**\n * Gets or sets day of week zero based, first is monday\n * @param day - If specified, sets day of week\n */\n public dayOfWeek(day?: number): number|DateApiObject<moment.Moment>\n {\n if(isPresent(day))\n {\n this._value = moment(this._value).weekday(day);\n\n return this;\n }\n\n return this._value.weekday();\n }\n\n /**\n * Gets hours zero based\n */\n public hour(): number;\n /**\n * Sets hours zero\n * @param hour - hour to be set\n */\n public hour(hour: number): DateApiObject<moment.Moment>;\n /**\n * Gets or sets hours zero\n * @param hour - If specified, sets hour\n */\n public hour(hour?: number): DateApiObject<moment.Moment>|number\n {\n if(isPresent(hour))\n {\n this._value = moment(this._value).hours(hour);\n\n return this;\n }\n\n return this._value.hours();\n }\n\n /**\n * Gets minutes zero based\n */\n public minute(): number;\n /**\n * Sets minutes zero based\n * @param minute - minutes to be set\n */\n public minute(minute: number): DateApiObject<moment.Moment>;\n /**\n * Gets or sets minutes zero based\n * @param minute - If specified, sets minutes\n */\n public minute(minute?: number): DateApiObject<moment.Moment>|number\n {\n if(isPresent(minute))\n {\n this._value = moment(this._value).minutes(minute);\n\n return this;\n }\n\n return this._value.minutes();\n }\n\n /**\n * Gets indication whether current value is before 'date'\n * @param date - Date which is this date compared to\n */\n public isBefore(date: moment.Moment): boolean\n {\n return this._value.isBefore(date);\n }\n\n /**\n * Gets indication whether current value is after 'date'\n * @param date - Date which is this date compared to\n */\n public isAfter(date: moment.Moment): boolean\n {\n return this._value.isAfter(date);\n }\n\n /**\n * Gets number of days between this and provided date\n * @param date - Date which is used for computation of diff against\n */\n public diffDays(date: moment.Moment): number\n {\n return moment(this._value).startOf('day').diff(moment(date).startOf('day'), 'days');\n }\n\n /**\n * Compares whether this date is same week as provided date\n * @param date - Date which is used for comparison of same week\n */\n public isSameWeek(date: moment.Moment): boolean\n {\n return this._value.isSame(date, 'week');\n }\n\n /**\n * Compares whether this date is same decade as provided date\n * @param date - Date which is used for comparison of same decade\n */\n public isSameDecade(date: moment.Moment): boolean\n {\n const year = this._value.year();\n const start = year - (year % 10);\n const end = start + 10;\n\n return date.year() >= start && date.year() < end;\n }\n\n /**\n * Compares whether this date is same year as provided date\n * @param date - Date which is used for comparison of same year\n */\n public isSameYear(date: moment.Moment): boolean\n {\n return this._value.isSame(date, 'year');\n }\n\n /**\n * Compares whether this date is same month as provided date\n * @param date - Date which is used for comparison of same month\n */\n public isSameMonth(date: moment.Moment): boolean\n {\n return this._value.isSame(date, 'month');\n }\n\n /**\n * Compares whether this date is same day as provided date\n * @param date - Date which is used for comparison of same day\n */\n public isSameDay(date: moment.Moment): boolean\n {\n return this._value.isSame(date, 'day');\n }\n\n /**\n * Creates clone of this instance, value and originalValue have same value and are cloned from value\n */\n public clone(): DateApiObject<moment.Moment>\n {\n return new MomentDateApiObject(moment(this._value));\n }\n\n /**\n * Creates clone of this instance, value and originalValue have same value and are cloned from originalValue\n */\n public cloneOriginal(): DateApiObject<moment.Moment>\n {\n return new MomentDateApiObject(moment(this._originalValue));\n }\n\n /**\n * Updates originalValue, if value is not provided originalValue is set to value\n * @param value - Value to be set as original, or null (value will be used as value)\n * @returns Itself for fluent API\n */\n public updateOriginal(value?: moment.Moment): DateApiObject<moment.Moment>\n {\n if(isBlank(value))\n {\n this._originalValue = this._value;\n }\n else\n {\n this._value = this._originalValue = value!;\n }\n\n return this;\n }\n\n /**\n * Changes value to same value as originalValue\n * @returns Itself for fluent API\n */\n public resetOriginal(): DateApiObject<moment.Moment>\n {\n this._value = this._originalValue;\n\n return this;\n }\n}\n\n/**\n * Date api using MomentJS, used for obtaining DateApi wrapper object\n */\n@Injectable()\nexport class MomentDateApi implements DateApi<moment.Moment>\n{\n //######################### constructor #########################\n constructor(protected _relativeParser: DateTimeRelativeParser<moment.Moment>,\n @Inject(DATE_API_OBJECT_TYPE) protected _dateApiObjecType: DateApiObjectCtor<MomentDateApiObject, moment.Moment>)\n {\n }\n\n //######################### public methods #########################\n\n /**\n * Gets wrapping object used for manipulation\n * @param value - Value to be converted (parsed) and used for manipulation\n * @param format - Format string used for parsing string value\n */\n public getValue(value: DateValue|moment.Moment, format?: string): DateApiObject<moment.Moment>\n {\n return new this._dateApiObjecType(this._relativeParser.parse(value), format);\n }\n\n /**\n * Gets wrapping object used for manipulation instantiated to current date and time\n */\n public now(): DateApiObject<moment.Moment>\n {\n return new this._dateApiObjecType(moment());\n }\n\n /**\n * Gets format string using pseudo format\n * @param pseudoFormat - Pseudo format token, used for obtaining 'date' or 'time' format string\n */\n public getFormat(pseudoFormat: string): string\n {\n if(/^((LT|LTS|L+|l+)\\s*)*$/g.test(pseudoFormat))\n {\n return pseudoFormat.split(' ').map(itm => moment.localeData().longDateFormat(itm as LongDateFormatKey)).join(' ');\n }\n\n return pseudoFormat;\n }\n\n /**\n * Gets information \n */\n public weekStartsOnMonday(): boolean\n {\n return moment.localeData().firstDayOfWeek() === 1;\n }\n\n /**\n * Gets array of weekday names in short format, order of days is dependent on locale\n */\n public weekdaysShort(): string[]\n {\n return moment.weekdaysShort(true);\n }\n\n /**\n * @inheritdoc\n */\n public isDate(value: unknown): value is moment.Moment\n {\n return value instanceof moment;\n }\n}\n\n/**\n * Type that represents creation of DateApiObject for moment\n */\nexport const momentDateApiObjectType: DateApiObjectCtor<MomentDateApiObject, moment.Moment> = MomentDateApiObject;\n\n/**\n * Injection token used for injecting type that creates instance of DateApiObject for moment\n */\nexport const MOMENT_DATE_API_OBJECT_TYPE: ValueProvider =\n{\n provide: DATE_API_OBJECT_TYPE,\n useValue: momentDateApiObjectType\n};\n"]}
|
|
1
|
+
{"version":3,"file":"momentDateApi.service.js","sourceRoot":"","sources":["../../../../moment/src/services/momentDateApi.service.ts"],"names":[],"mappings":"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","sourcesContent":["import {Inject, Injectable, ValueProvider} from '@angular/core';\nimport {DateApi, DateValue, DateApiObject, DateTimeRelativeParser, DateApiObjectCtor, DATE_API_OBJECT_TYPE} from '@anglr/datetime';\nimport {isBlank, isPresent} from '@jscrpt/common';\nimport moment, {LongDateFormatKey} from 'moment';\n\n/**\n * Instance of object wrapping TDate, allowing manipulation with it\n */\nexport class MomentDateApiObject implements DateApiObject<moment.Moment>\n{\n //######################### protected fields #########################\n\n /**\n * Original value that is not changed unless 'updateOriginal' is called\n */\n protected _originalValue: moment.Moment;\n\n /**\n * Instance of date\n */\n protected _value: moment.Moment;\n\n //######################### public properties - implementation of DateApiObject #########################\n\n /**\n * Original value that is not changed unless 'updateOriginal' is called\n */\n public get originalValue(): moment.Moment\n {\n return this._originalValue;\n }\n\n /**\n * Instance of date\n */\n public get value(): moment.Moment\n {\n return this._value;\n }\n\n //######################### constructor #########################\n constructor(value: DateValue|moment.Moment, format?: string)\n {\n this._value = this._originalValue = moment(value, format);\n }\n\n //######################### public methods - implementation of DateApiObject #########################\n\n /**\n * Gets indication whether provided instance of date is valid\n */\n public isValid(): boolean\n {\n return this._value.isValid();\n }\n\n /**\n * Gets indication whether provided instance of date is weekend day\n */\n public isWeekend(): boolean\n {\n const weekday = this._value.isoWeekday();\n\n return weekday == 6 || weekday == 7;\n }\n\n /**\n * Formats date value\n * @param format - Format token used for creating formatted string\n */\n public format(format: string): string\n {\n return this._value.format(format.replace(/y/g, 'Y').replace(/d/g, 'D'));\n }\n\n /**\n * @inheritdoc\n */\n public unixTimestamp(): number\n {\n return this._value.unix();\n }\n\n /**\n * Updates value to start date and time of current decade\n * @returns Itself for fluent API\n */\n public startOfDecade(): DateApiObject<moment.Moment>\n {\n const diff = (this._value.year() % 10);\n\n this._value = moment(this._value).subtract(diff, 'years').startOf('year');\n \n return this;\n }\n\n /**\n * Updates value to end date and time of current decade\n * @returns Itself for fluent API\n */\n public endOfDecade(): DateApiObject<moment.Moment>\n {\n const diff = 9 - (this._value.year() % 10);\n\n this._value = moment(this._value).add(diff, 'years').endOf('year');\n \n return this;\n }\n\n /**\n * Updates value to start date and time of current year\n * @returns Itself for fluent API\n */\n public startOfYear(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).startOf('year');\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current year\n * @returns Itself for fluent API\n */\n public endOfYear(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).endOf('year');\n\n return this;\n }\n\n /**\n * Add years, if count not specified adds 1 year\n * @param count - Number of years count\n * @returns Itself for fluent API\n */\n public addYears(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).add(count ?? 1, 'years');\n\n return this;\n }\n\n /**\n * Subtract years, if count not specified subtract 1 year\n * @param count - Number of years count\n * @returns Itself for fluent API\n */\n public subtractYears(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).subtract(count ?? 1, 'years');\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current month\n * @returns Itself for fluent API\n */\n public startOfMonth(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).startOf('month');\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current month\n * @returns Itself for fluent API\n */\n public endOfMonth(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).endOf('month');\n\n return this;\n }\n\n /**\n * Add months, if count not specified adds 1 month\n * @param count - Number of months count\n * @returns Itself for fluent API\n */\n public addMonths(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).add(count ?? 1, 'months');\n\n return this;\n }\n\n /**\n * Subtract months, if count not specified subtract 1 month\n * @param count - Number of months count\n * @returns Itself for fluent API\n */\n public subtractMonths(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).subtract(count ?? 1, 'months');\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current week\n * @returns Itself for fluent API\n */\n public startOfWeek(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).startOf('week');\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current week\n * @returns Itself for fluent API\n */\n public endOfWeek(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).endOf('week');\n\n return this;\n }\n\n /**\n * Add weeks, if count not specified adds 1 week\n * @param count - Number of weeks count\n * @returns Itself for fluent API\n */\n public addWeeks(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).add(count ?? 1, 'weeks');\n\n return this;\n }\n\n /**\n * Subtract weeks, if count not specified subtract 1 week\n * @param count - Number of weeks count\n * @returns Itself for fluent API\n */\n public subtractWeeks(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).subtract(count ?? 1, 'weeks');\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current day\n * @returns Itself for fluent API\n */\n public startOfDay(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).startOf('day');\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current day\n * @returns Itself for fluent API\n */\n public endOfDay(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).endOf('day');\n\n return this;\n }\n\n /**\n * Add days, if count not specified adds 1 day\n * @param count - Number of days count\n * @returns Itself for fluent API\n */\n public addDays(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).add(count ?? 1, 'days');\n\n return this;\n }\n\n /**\n * Subtract days, if count not specified subtract 1 day\n * @param count - Number of days count\n * @returns Itself for fluent API\n */\n public subtractDays(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).subtract(count ?? 1, 'days');\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current hour\n * @returns Itself for fluent API\n */\n public startOfHour(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).startOf('hour');\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current hour\n * @returns Itself for fluent API\n */\n public endOfHour(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).endOf('hour');\n\n return this;\n }\n\n /**\n * Add hours, if count not specified adds 1 hour\n * @param count - Number of hours count\n * @returns Itself for fluent API\n */\n public addHours(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).add(count ?? 1, 'hours');\n\n return this;\n }\n\n /**\n * Subtract hours, if count not specified subtract 1 hour\n * @param count - Number of hours count\n * @returns Itself for fluent API\n */\n public subtractHours(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).subtract(count ?? 1, 'hours');\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current minute\n * @returns Itself for fluent API\n */\n public startOfMinute(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).startOf('minute');\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current minute\n * @returns Itself for fluent API\n */\n public endOfMinute(): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).endOf('minute');\n\n return this;\n }\n\n /**\n * Add minutes, if count not specified adds 1 minute\n * @param count - Number of minutes count\n * @returns Itself for fluent API\n */\n public addMinutes(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).add(count ?? 1, 'minutes');\n\n return this;\n }\n\n /**\n * Subtract minutes, if count not specified subtract 1 minute\n * @param count - Number of minutes count\n * @returns Itself for fluent API\n */\n public subtractMinutes(count?: number): DateApiObject<moment.Moment>\n {\n this._value = moment(this._value).subtract(count ?? 1, 'minutes');\n\n return this;\n }\n\n /**\n * Gets number of days in month\n */\n public daysInMonth(): number\n {\n return this._value.daysInMonth();\n }\n\n /**\n * Gets year\n */\n public year(): number;\n /**\n * Sets year\n * @param year - Year to be set\n */\n public year(year: number): DateApiObject<moment.Moment>;\n /**\n * Gets or sets year\n * @param year - If specified, sets year\n */\n public year(year?: number): DateApiObject<moment.Moment>|number\n {\n if(isPresent(year))\n {\n this._value = moment(this._value).year(year);\n\n return this;\n }\n\n return this._value.year();\n }\n\n /**\n * Gets month\n */\n public month(): number\n /**\n * Sets month\n * @param month - Month to be set\n */\n public month(month: number): DateApiObject<moment.Moment>\n /**\n * Gets or sets month\n * @param month - If specified, sets month\n */\n public month(month?: number): DateApiObject<moment.Moment>|number\n {\n if(isPresent(month))\n {\n this._value = moment(this._value).month(month);\n\n return this;\n }\n\n return this._value.month();\n }\n\n /**\n * Gets day of month one based\n */\n public dayOfMonth(): number;\n /**\n * Sets day of month one based\n * @param day - Day of month to be set\n */\n public dayOfMonth(day: number): DateApiObject<moment.Moment>;\n /**\n * Gets or sets day of month one based\n * @param day - If specified, sets day of month\n */\n public dayOfMonth(day?: number): DateApiObject<moment.Moment>|number\n {\n if(isPresent(day))\n {\n this._value = moment(this._value).date(day);\n\n return this;\n }\n\n return this._value.date();\n }\n\n /**\n * Gets day of week zero based, first is monday\n */\n public dayOfWeek(): number;\n /**\n * Sets day of week zero based, first is monday\n * @param day - Day of week to be set\n */\n public dayOfWeek(day: number): DateApiObject<moment.Moment>;\n /**\n * Gets or sets day of week zero based, first is monday\n * @param day - If specified, sets day of week\n */\n public dayOfWeek(day?: number): number|DateApiObject<moment.Moment>\n {\n if(isPresent(day))\n {\n this._value = moment(this._value).weekday(day);\n\n return this;\n }\n\n return this._value.weekday();\n }\n\n /**\n * Gets hours zero based\n */\n public hour(): number;\n /**\n * Sets hours zero\n * @param hour - hour to be set\n */\n public hour(hour: number): DateApiObject<moment.Moment>;\n /**\n * Gets or sets hours zero\n * @param hour - If specified, sets hour\n */\n public hour(hour?: number): DateApiObject<moment.Moment>|number\n {\n if(isPresent(hour))\n {\n this._value = moment(this._value).hours(hour);\n\n return this;\n }\n\n return this._value.hours();\n }\n\n /**\n * Gets minutes zero based\n */\n public minute(): number;\n /**\n * Sets minutes zero based\n * @param minute - minutes to be set\n */\n public minute(minute: number): DateApiObject<moment.Moment>;\n /**\n * Gets or sets minutes zero based\n * @param minute - If specified, sets minutes\n */\n public minute(minute?: number): DateApiObject<moment.Moment>|number\n {\n if(isPresent(minute))\n {\n this._value = moment(this._value).minutes(minute);\n\n return this;\n }\n\n return this._value.minutes();\n }\n\n /**\n * Gets indication whether current value is before 'date'\n * @param date - Date which is this date compared to\n */\n public isBefore(date: moment.Moment): boolean\n {\n return this._value.isBefore(date);\n }\n\n /**\n * Gets indication whether current value is after 'date'\n * @param date - Date which is this date compared to\n */\n public isAfter(date: moment.Moment): boolean\n {\n return this._value.isAfter(date);\n }\n\n /**\n * Gets number of days between this and provided date\n * @param date - Date which is used for computation of diff against\n */\n public diffDays(date: moment.Moment): number\n {\n return moment(this._value).startOf('day').diff(moment(date).startOf('day'), 'days');\n }\n\n /**\n * Compares whether this date is same week as provided date\n * @param date - Date which is used for comparison of same week\n */\n public isSameWeek(date: moment.Moment): boolean\n {\n return this._value.isSame(date, 'week');\n }\n\n /**\n * Compares whether this date is same decade as provided date\n * @param date - Date which is used for comparison of same decade\n */\n public isSameDecade(date: moment.Moment): boolean\n {\n const year = this._value.year();\n const start = year - (year % 10);\n const end = start + 10;\n\n return date.year() >= start && date.year() < end;\n }\n\n /**\n * Compares whether this date is same year as provided date\n * @param date - Date which is used for comparison of same year\n */\n public isSameYear(date: moment.Moment): boolean\n {\n return this._value.isSame(date, 'year');\n }\n\n /**\n * Compares whether this date is same month as provided date\n * @param date - Date which is used for comparison of same month\n */\n public isSameMonth(date: moment.Moment): boolean\n {\n return this._value.isSame(date, 'month');\n }\n\n /**\n * Compares whether this date is same day as provided date\n * @param date - Date which is used for comparison of same day\n */\n public isSameDay(date: moment.Moment): boolean\n {\n return this._value.isSame(date, 'day');\n }\n\n /**\n * Creates clone of this instance, value and originalValue have same value and are cloned from value\n */\n public clone(): DateApiObject<moment.Moment>\n {\n return new MomentDateApiObject(moment(this._value));\n }\n\n /**\n * Creates clone of this instance, value and originalValue have same value and are cloned from originalValue\n */\n public cloneOriginal(): DateApiObject<moment.Moment>\n {\n return new MomentDateApiObject(moment(this._originalValue));\n }\n\n /**\n * Updates originalValue, if value is not provided originalValue is set to value\n * @param value - Value to be set as original, or null (value will be used as value)\n * @returns Itself for fluent API\n */\n public updateOriginal(value?: moment.Moment): DateApiObject<moment.Moment>\n {\n if(isBlank(value))\n {\n this._originalValue = this._value;\n }\n else\n {\n this._value = this._originalValue = value!;\n }\n\n return this;\n }\n\n /**\n * Changes value to same value as originalValue\n * @returns Itself for fluent API\n */\n public resetOriginal(): DateApiObject<moment.Moment>\n {\n this._value = this._originalValue;\n\n return this;\n }\n}\n\n/**\n * Date api using MomentJS, used for obtaining DateApi wrapper object\n */\n@Injectable()\nexport class MomentDateApi implements DateApi<moment.Moment>\n{\n //######################### constructor #########################\n constructor(protected _relativeParser: DateTimeRelativeParser<moment.Moment>,\n @Inject(DATE_API_OBJECT_TYPE) protected _dateApiObjecType: DateApiObjectCtor<MomentDateApiObject, moment.Moment>)\n {\n }\n\n //######################### public methods #########################\n\n /**\n * Gets wrapping object used for manipulation\n * @param value - Value to be converted (parsed) and used for manipulation\n * @param format - Format string used for parsing string value\n */\n public getValue(value: DateValue|moment.Moment, format?: string): DateApiObject<moment.Moment>\n {\n return new this._dateApiObjecType(this._relativeParser.parse(value), format);\n }\n\n /**\n * Gets wrapping object used for manipulation instantiated to current date and time\n */\n public now(): DateApiObject<moment.Moment>\n {\n return new this._dateApiObjecType(moment());\n }\n\n /**\n * Gets format string using pseudo format\n * @param pseudoFormat - Pseudo format token, used for obtaining 'date' or 'time' format string\n */\n public getFormat(pseudoFormat: string): string\n {\n if(/^((LT|LTS|L+|l+)\\s*)*$/g.test(pseudoFormat))\n {\n return pseudoFormat.split(' ').map(itm => moment.localeData().longDateFormat(itm as LongDateFormatKey)).join(' ');\n }\n\n return pseudoFormat;\n }\n\n /**\n * Gets information \n */\n public weekStartsOnMonday(): boolean\n {\n return moment.localeData().firstDayOfWeek() === 1;\n }\n\n /**\n * Gets array of weekday names in short format, order of days is dependent on locale\n */\n public weekdaysShort(): string[]\n {\n return moment.weekdaysShort(true);\n }\n\n /**\n * @inheritdoc\n */\n public isDate(value: unknown): value is moment.Moment\n {\n return value instanceof moment;\n }\n}\n\n/**\n * Type that represents creation of DateApiObject for moment\n */\nexport const momentDateApiObjectType: DateApiObjectCtor<MomentDateApiObject, moment.Moment> = MomentDateApiObject;\n\n/**\n * Injection token used for injecting type that creates instance of DateApiObject for moment\n */\nexport const MOMENT_DATE_API_OBJECT_TYPE: ValueProvider =\n{\n provide: DATE_API_OBJECT_TYPE,\n useValue: momentDateApiObjectType\n};\n"]}
|
package/es2015/src/index.js
CHANGED
|
@@ -1,20 +1,23 @@
|
|
|
1
|
+
export * from './interfaces';
|
|
2
|
+
export * from './legacy/picker/directives';
|
|
3
|
+
export * from './legacy/picker/interfaces';
|
|
4
|
+
export * from './legacy/picker/modules/picker.module';
|
|
5
|
+
export * from './legacy/picker/types';
|
|
6
|
+
export * from './legacy/selector/interfaces';
|
|
7
|
+
export * from './legacy/selector/modules/basicSelector.module';
|
|
8
|
+
export * from './legacy/selector/modules/selector.module';
|
|
9
|
+
export * from './legacy/selector/types';
|
|
1
10
|
export * from './misc/constants';
|
|
2
|
-
export * from './misc/
|
|
11
|
+
export * from './misc/enums';
|
|
3
12
|
export * from './misc/tokens';
|
|
13
|
+
export * from './misc/types';
|
|
14
|
+
export * from './misc/utils';
|
|
4
15
|
export * from './misc/validators';
|
|
5
|
-
export * from './
|
|
6
|
-
export * from './selector/types';
|
|
7
|
-
export * from './selector/modules/basicSelector.module';
|
|
8
|
-
export * from './selector/modules/selector.module';
|
|
16
|
+
export * from './modules';
|
|
9
17
|
export * from './services';
|
|
10
18
|
export * from './services/datePositionParser.service';
|
|
11
19
|
export * from './services/dateTimeRelativeParser.service';
|
|
12
20
|
export * from './services/dateValueProvider.service';
|
|
13
|
-
export * from './picker/modules/picker.module';
|
|
14
|
-
export * from './picker/interfaces';
|
|
15
|
-
export * from './picker/types';
|
|
16
21
|
export * from './pipes/dateConvert.pipe';
|
|
17
22
|
export * from './pipes/dateFormat.pipe';
|
|
18
|
-
export * from './picker/directives';
|
|
19
|
-
export * from './modules/datePipes.module';
|
|
20
23
|
//# sourceMappingURL=index.js.map
|
package/es2015/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uCAAuC,CAAC;AACtD,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gDAAgD,CAAC;AAC/D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,uCAAuC,CAAC;AACtD,cAAc,2CAA2C,CAAC;AAC1D,cAAc,sCAAsC,CAAC;AACrD,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC","sourcesContent":["export * from './interfaces';\nexport * from './legacy/picker/directives';\nexport * from './legacy/picker/interfaces';\nexport * from './legacy/picker/modules/picker.module';\nexport * from './legacy/picker/types';\nexport * from './legacy/selector/interfaces';\nexport * from './legacy/selector/modules/basicSelector.module';\nexport * from './legacy/selector/modules/selector.module';\nexport * from './legacy/selector/types';\nexport * from './misc/constants';\nexport * from './misc/enums';\nexport * from './misc/tokens';\nexport * from './misc/types';\nexport * from './misc/utils';\nexport * from './misc/validators';\nexport * from './modules';\nexport * from './services';\nexport * from './services/datePositionParser.service';\nexport * from './services/dateTimeRelativeParser.service';\nexport * from './services/dateValueProvider.service';\nexport * from './pipes/dateConvert.pipe';\nexport * from './pipes/dateFormat.pipe';"]}
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"datetime.interface.js","sourceRoot":"","sources":["../../../../src/interfaces/dateTime/datetime.interface.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * Represents datetime value as period\n */\nexport interface DateTimeValue<TDate = any>\n{\n /**\n * Starting date and time of period\n */\n from: TDate|undefined|null;\n\n /**\n * Ending date and time of period\n */\n to: TDate|undefined|null;\n}\n\n//TODO: remove when not necessary\n\n/**\n * Represents object that holds data for identification of validity of date time\n */\nexport interface DateTimeValueObject<TDate = any>\n{\n /**\n * Current value of datetime\n */\n readonly value: DateTimeValue<TDate>|null;\n\n /**\n * Indicaiton whether is current value valid, empty value is valid\n */\n readonly valid: boolean;\n\n /**\n * Minimal possible value, that can be\n */\n readonly minValue: TDate|null;\n\n /**\n * Maximal possible value, that can be\n */\n readonly maxValue: TDate|null;\n}"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dateTimeInput.interface.js","sourceRoot":"","sources":["../../../../src/interfaces/dateTimeInput/dateTimeInput.interface.ts"],"names":[],"mappings":"","sourcesContent":["import {EventEmitter} from '@angular/core';\n\nimport {DateTimeInputOutputValue} from '../../misc/types';\n\n/**\n * Defines date time input and communication API for it\n */\nexport interface DateTimeInput<TDate = unknown>\n{\n /**\n * Value of date time, raw string value which is visible to user\n */\n rawValue: string|undefined|null;\n\n /**\n * Current value of date time, could be string, TDate object, or ranged DateTimeValue\n */\n value: DateTimeInputOutputValue<TDate>|undefined|null;\n\n /**\n * Indication whether is date time disabled\n */\n disabled: boolean;\n\n /**\n * Occurs when value changes\n */\n valueChange: EventEmitter<void>;\n\n /**\n * Occurs when input gains focus\n */\n focus: EventEmitter<FocusEvent>;\n\n /**\n * Occurs when input loses focus\n */\n blur: EventEmitter<FocusEvent>;\n}"]}
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatProvider.interface.js","sourceRoot":"","sources":["../../../../src/interfaces/formatProvider/formatProvider.interface.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * Format provider used for obtaining common used format 'tokens'\n */\nexport interface FormatProvider\n{\n /**\n * Format token for displaying date\n */\n readonly date: string;\n\n /**\n * Format token for displaying date and time\n */\n readonly dateTime: string;\n\n /**\n * Format token for displaying time\n */\n readonly time: string;\n\n /**\n * Format token for displaying full year\n */\n readonly year: string;\n\n /**\n * Format token for displaying month double digit number\n */\n readonly month: string;\n\n /**\n * Format token for displaying week double digit number\n */\n readonly week: string;\n\n /**\n * Format token for displaying day double digit number\n */\n readonly day: string;\n\n /**\n * Format token for displaying hour (24h format) double digit number\n */\n readonly hour: string;\n\n /**\n * Format token for displaying minute double digit number\n */\n readonly minute: string;\n\n /**\n * Format token for displaying second double digit number\n */\n readonly second: string;\n\n /**\n * Format token for displaying standalone day full name \n */\n readonly dayName: string;\n\n /**\n * Format token for displaying standalone day short name\n */\n readonly dayNameShort: string;\n\n /**\n * Format token for displaying standalone month full name\n */\n readonly monthName: string;\n\n /**\n * Format token for displaying standalone month short name\n */\n readonly monthNameShort: string;\n}"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/interfaces/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAC;AAC9C,cAAc,yCAAyC,CAAC;AACxD,cAAc,2CAA2C,CAAC","sourcesContent":["export * from './dateTime/datetime.interface';\nexport * from './dateTimeInput/dateTimeInput.interface';\nexport * from './formatProvider/formatProvider.interface';\n"]}
|