@wisemen/datewise 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +307 -0
- package/dist/common/constants.d.ts +9 -0
- package/dist/common/constants.js +10 -0
- package/dist/common/constants.js.map +1 -0
- package/dist/common/date-period.enum.d.ts +7 -0
- package/dist/common/date-period.enum.js +15 -0
- package/dist/common/date-period.enum.js.map +1 -0
- package/dist/common/exhaustive-check.helper.d.ts +1 -0
- package/dist/common/exhaustive-check.helper.js +4 -0
- package/dist/common/exhaustive-check.helper.js.map +1 -0
- package/dist/common/inclusivity.d.ts +8 -0
- package/dist/common/inclusivity.js +23 -0
- package/dist/common/inclusivity.js.map +1 -0
- package/dist/common/index.d.ts +4 -0
- package/dist/common/index.js +5 -0
- package/dist/common/index.js.map +1 -0
- package/dist/common/init-dayjs.d.ts +1 -0
- package/dist/common/init-dayjs.js +31 -0
- package/dist/common/init-dayjs.js.map +1 -0
- package/dist/common/month.d.ts +15 -0
- package/dist/common/month.js +21 -0
- package/dist/common/month.js.map +1 -0
- package/dist/common/timezone.d.ts +600 -0
- package/dist/common/timezone.js +614 -0
- package/dist/common/timezone.js.map +1 -0
- package/dist/common/typeorm/adjacent-to.d.ts +5 -0
- package/dist/common/typeorm/adjacent-to.js +7 -0
- package/dist/common/typeorm/adjacent-to.js.map +1 -0
- package/dist/common/typeorm/ends-before.d.ts +5 -0
- package/dist/common/typeorm/ends-before.js +7 -0
- package/dist/common/typeorm/ends-before.js.map +1 -0
- package/dist/common/typeorm/index.d.ts +10 -0
- package/dist/common/typeorm/index.js +11 -0
- package/dist/common/typeorm/index.js.map +1 -0
- package/dist/common/typeorm/is-preceded-by.d.ts +5 -0
- package/dist/common/typeorm/is-preceded-by.js +7 -0
- package/dist/common/typeorm/is-preceded-by.js.map +1 -0
- package/dist/common/typeorm/is-succeeded-by.d.ts +5 -0
- package/dist/common/typeorm/is-succeeded-by.js +7 -0
- package/dist/common/typeorm/is-succeeded-by.js.map +1 -0
- package/dist/common/typeorm/overlaps-with.d.ts +5 -0
- package/dist/common/typeorm/overlaps-with.js +7 -0
- package/dist/common/typeorm/overlaps-with.js.map +1 -0
- package/dist/common/typeorm/precedes.d.ts +5 -0
- package/dist/common/typeorm/precedes.js +7 -0
- package/dist/common/typeorm/precedes.js.map +1 -0
- package/dist/common/typeorm/starts-after.d.ts +5 -0
- package/dist/common/typeorm/starts-after.js +7 -0
- package/dist/common/typeorm/starts-after.js.map +1 -0
- package/dist/common/typeorm/strictly-left-of.d.ts +5 -0
- package/dist/common/typeorm/strictly-left-of.js +7 -0
- package/dist/common/typeorm/strictly-left-of.js.map +1 -0
- package/dist/common/typeorm/strictly-right-of.d.ts +5 -0
- package/dist/common/typeorm/strictly-right-of.js +7 -0
- package/dist/common/typeorm/strictly-right-of.js.map +1 -0
- package/dist/common/typeorm/succeeds.d.ts +5 -0
- package/dist/common/typeorm/succeeds.js +7 -0
- package/dist/common/typeorm/succeeds.js.map +1 -0
- package/dist/date-range/date-range-errors.d.ts +9 -0
- package/dist/date-range/date-range-errors.js +17 -0
- package/dist/date-range/date-range-errors.js.map +1 -0
- package/dist/date-range/date-range.d.ts +43 -0
- package/dist/date-range/date-range.dto-builder.d.ts +8 -0
- package/dist/date-range/date-range.dto-builder.js +21 -0
- package/dist/date-range/date-range.dto-builder.js.map +1 -0
- package/dist/date-range/date-range.dto.d.ts +7 -0
- package/dist/date-range/date-range.dto.js +31 -0
- package/dist/date-range/date-range.dto.js.map +1 -0
- package/dist/date-range/date-range.js +153 -0
- package/dist/date-range/date-range.js.map +1 -0
- package/dist/date-range/date-range.response.d.ts +6 -0
- package/dist/date-range/date-range.response.js +27 -0
- package/dist/date-range/date-range.response.js.map +1 -0
- package/dist/date-range/index.d.ts +7 -0
- package/dist/date-range/index.js +8 -0
- package/dist/date-range/index.js.map +1 -0
- package/dist/date-range/is-date-range.decorator.d.ts +19 -0
- package/dist/date-range/is-date-range.decorator.js +68 -0
- package/dist/date-range/is-date-range.decorator.js.map +1 -0
- package/dist/date-range/tests/date-range.unit.test.d.ts +1 -0
- package/dist/date-range/tests/date-range.unit.test.js +412 -0
- package/dist/date-range/tests/date-range.unit.test.js.map +1 -0
- package/dist/date-range/tests/is-date-range.decorator.unit.test.d.ts +1 -0
- package/dist/date-range/tests/is-date-range.decorator.unit.test.js +120 -0
- package/dist/date-range/tests/is-date-range.decorator.unit.test.js.map +1 -0
- package/dist/date-range/typeorm/contains-plain-date.d.ts +4 -0
- package/dist/date-range/typeorm/contains-plain-date.js +8 -0
- package/dist/date-range/typeorm/contains-plain-date.js.map +1 -0
- package/dist/date-range/typeorm/date-range-column.d.ts +11 -0
- package/dist/date-range/typeorm/date-range-column.js +32 -0
- package/dist/date-range/typeorm/date-range-column.js.map +1 -0
- package/dist/date-range/typeorm/index.d.ts +2 -0
- package/dist/date-range/typeorm/index.js +3 -0
- package/dist/date-range/typeorm/index.js.map +1 -0
- package/dist/date-time-range/date-time-range.command-builder.d.ts +8 -0
- package/dist/date-time-range/date-time-range.command-builder.js +21 -0
- package/dist/date-time-range/date-time-range.command-builder.js.map +1 -0
- package/dist/date-time-range/date-time-range.command.d.ts +7 -0
- package/dist/date-time-range/date-time-range.command.js +30 -0
- package/dist/date-time-range/date-time-range.command.js.map +1 -0
- package/dist/date-time-range/date-time-range.d.ts +93 -0
- package/dist/date-time-range/date-time-range.errors.d.ts +10 -0
- package/dist/date-time-range/date-time-range.errors.js +19 -0
- package/dist/date-time-range/date-time-range.errors.js.map +1 -0
- package/dist/date-time-range/date-time-range.js +205 -0
- package/dist/date-time-range/date-time-range.js.map +1 -0
- package/dist/date-time-range/date-time-range.response.d.ts +6 -0
- package/dist/date-time-range/date-time-range.response.js +27 -0
- package/dist/date-time-range/date-time-range.response.js.map +1 -0
- package/dist/date-time-range/index.d.ts +7 -0
- package/dist/date-time-range/index.js +8 -0
- package/dist/date-time-range/index.js.map +1 -0
- package/dist/date-time-range/is-date-time-range.decorator.d.ts +15 -0
- package/dist/date-time-range/is-date-time-range.decorator.js +58 -0
- package/dist/date-time-range/is-date-time-range.decorator.js.map +1 -0
- package/dist/date-time-range/tests/date-time-range.column.integration.test.d.ts +1 -0
- package/dist/date-time-range/tests/date-time-range.column.integration.test.js +442 -0
- package/dist/date-time-range/tests/date-time-range.column.integration.test.js.map +1 -0
- package/dist/date-time-range/tests/date-time-range.unit.test.d.ts +1 -0
- package/dist/date-time-range/tests/date-time-range.unit.test.js +775 -0
- package/dist/date-time-range/tests/date-time-range.unit.test.js.map +1 -0
- package/dist/date-time-range/tests/is-date-time-range.decorator.unit.test.d.ts +1 -0
- package/dist/date-time-range/tests/is-date-time-range.decorator.unit.test.js +74 -0
- package/dist/date-time-range/tests/is-date-time-range.decorator.unit.test.js.map +1 -0
- package/dist/date-time-range/tests/sql/datasource.d.ts +2 -0
- package/dist/date-time-range/tests/sql/datasource.js +16 -0
- package/dist/date-time-range/tests/sql/datasource.js.map +1 -0
- package/dist/date-time-range/tests/sql/date-time-range-test.entity.d.ts +5 -0
- package/dist/date-time-range/tests/sql/date-time-range-test.entity.js +29 -0
- package/dist/date-time-range/tests/sql/date-time-range-test.entity.js.map +1 -0
- package/dist/date-time-range/tests/sql/multi-date-time-range-test.entity.d.ts +5 -0
- package/dist/date-time-range/tests/sql/multi-date-time-range-test.entity.js +28 -0
- package/dist/date-time-range/tests/sql/multi-date-time-range-test.entity.js.map +1 -0
- package/dist/date-time-range/typeorm/contains-timestamp.d.ts +4 -0
- package/dist/date-time-range/typeorm/contains-timestamp.js +8 -0
- package/dist/date-time-range/typeorm/contains-timestamp.js.map +1 -0
- package/dist/date-time-range/typeorm/date-time-range-column.d.ts +11 -0
- package/dist/date-time-range/typeorm/date-time-range-column.js +32 -0
- package/dist/date-time-range/typeorm/date-time-range-column.js.map +1 -0
- package/dist/date-time-range/typeorm/index.d.ts +3 -0
- package/dist/date-time-range/typeorm/index.js +4 -0
- package/dist/date-time-range/typeorm/index.js.map +1 -0
- package/dist/date-time-range/typeorm/multi-date-time-range.column.d.ts +3 -0
- package/dist/date-time-range/typeorm/multi-date-time-range.column.js +47 -0
- package/dist/date-time-range/typeorm/multi-date-time-range.column.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -0
- package/dist/multi-date-time-range/multi-date-time-range.d.ts +20 -0
- package/dist/multi-date-time-range/multi-date-time-range.js +51 -0
- package/dist/multi-date-time-range/multi-date-time-range.js.map +1 -0
- package/dist/multi-date-time-range/tests/multi-date-time-range.unit.test.d.ts +1 -0
- package/dist/multi-date-time-range/tests/multi-date-time-range.unit.test.js +129 -0
- package/dist/multi-date-time-range/tests/multi-date-time-range.unit.test.js.map +1 -0
- package/dist/plain-date/api-property/index.d.ts +1 -0
- package/dist/plain-date/api-property/index.js +2 -0
- package/dist/plain-date/api-property/index.js.map +1 -0
- package/dist/plain-date/api-property/plain-date.api-property.d.ts +2 -0
- package/dist/plain-date/api-property/plain-date.api-property.js +12 -0
- package/dist/plain-date/api-property/plain-date.api-property.js.map +1 -0
- package/dist/plain-date/dayjs-plain-date.d.ts +57 -0
- package/dist/plain-date/dayjs-plain-date.js +170 -0
- package/dist/plain-date/dayjs-plain-date.js.map +1 -0
- package/dist/plain-date/future-infinity-date.d.ts +38 -0
- package/dist/plain-date/future-infinity-date.js +100 -0
- package/dist/plain-date/future-infinity-date.js.map +1 -0
- package/dist/plain-date/index.d.ts +8 -0
- package/dist/plain-date/index.js +9 -0
- package/dist/plain-date/index.js.map +1 -0
- package/dist/plain-date/invalid-date.d.ts +5 -0
- package/dist/plain-date/invalid-date.js +8 -0
- package/dist/plain-date/invalid-date.js.map +1 -0
- package/dist/plain-date/max.d.ts +2 -0
- package/dist/plain-date/max.js +15 -0
- package/dist/plain-date/max.js.map +1 -0
- package/dist/plain-date/min.d.ts +2 -0
- package/dist/plain-date/min.js +16 -0
- package/dist/plain-date/min.js.map +1 -0
- package/dist/plain-date/past-infinity-date.d.ts +39 -0
- package/dist/plain-date/past-infinity-date.js +100 -0
- package/dist/plain-date/past-infinity-date.js.map +1 -0
- package/dist/plain-date/plain-date-object.d.ts +6 -0
- package/dist/plain-date/plain-date-object.js +2 -0
- package/dist/plain-date/plain-date-object.js.map +1 -0
- package/dist/plain-date/plain-date.d.ts +44 -0
- package/dist/plain-date/plain-date.factory.d.ts +16 -0
- package/dist/plain-date/plain-date.factory.js +41 -0
- package/dist/plain-date/plain-date.factory.js.map +1 -0
- package/dist/plain-date/plain-date.fn.d.ts +16 -0
- package/dist/plain-date/plain-date.fn.js +14 -0
- package/dist/plain-date/plain-date.fn.js.map +1 -0
- package/dist/plain-date/plain-date.js +2 -0
- package/dist/plain-date/plain-date.js.map +1 -0
- package/dist/plain-date/plain-date.units.d.ts +4 -0
- package/dist/plain-date/plain-date.units.js +2 -0
- package/dist/plain-date/plain-date.units.js.map +1 -0
- package/dist/plain-date/tests/plain-date.accessors.unit.test.d.ts +1 -0
- package/dist/plain-date/tests/plain-date.accessors.unit.test.js +22 -0
- package/dist/plain-date/tests/plain-date.accessors.unit.test.js.map +1 -0
- package/dist/plain-date/tests/plain-date.constructor.unit.test.d.ts +1 -0
- package/dist/plain-date/tests/plain-date.constructor.unit.test.js +40 -0
- package/dist/plain-date/tests/plain-date.constructor.unit.test.js.map +1 -0
- package/dist/plain-date/tests/plain-date.factory.unit.test.d.ts +1 -0
- package/dist/plain-date/tests/plain-date.factory.unit.test.js +136 -0
- package/dist/plain-date/tests/plain-date.factory.unit.test.js.map +1 -0
- package/dist/plain-date/tests/plain-date.manipulation.unit.test.d.ts +1 -0
- package/dist/plain-date/tests/plain-date.manipulation.unit.test.js +93 -0
- package/dist/plain-date/tests/plain-date.manipulation.unit.test.js.map +1 -0
- package/dist/plain-date/tests/wise-date.ordering.unit.test.d.ts +1 -0
- package/dist/plain-date/tests/wise-date.ordering.unit.test.js +174 -0
- package/dist/plain-date/tests/wise-date.ordering.unit.test.js.map +1 -0
- package/dist/plain-date/typeorm/index.d.ts +1 -0
- package/dist/plain-date/typeorm/index.js +2 -0
- package/dist/plain-date/typeorm/index.js.map +1 -0
- package/dist/plain-date/typeorm/plain-date.column.d.ts +3 -0
- package/dist/plain-date/typeorm/plain-date.column.js +24 -0
- package/dist/plain-date/typeorm/plain-date.column.js.map +1 -0
- package/dist/plain-date/validators/index.d.ts +1 -0
- package/dist/plain-date/validators/index.js +2 -0
- package/dist/plain-date/validators/index.js.map +1 -0
- package/dist/plain-date/validators/is-plain-date.validator.d.ts +7 -0
- package/dist/plain-date/validators/is-plain-date.validator.js +34 -0
- package/dist/plain-date/validators/is-plain-date.validator.js.map +1 -0
- package/dist/plain-time/api-property/index.d.ts +1 -0
- package/dist/plain-time/api-property/index.js +2 -0
- package/dist/plain-time/api-property/index.js.map +1 -0
- package/dist/plain-time/api-property/plain-time.api-property.d.ts +2 -0
- package/dist/plain-time/api-property/plain-time.api-property.js +5 -0
- package/dist/plain-time/api-property/plain-time.api-property.js.map +1 -0
- package/dist/plain-time/constants.d.ts +4 -0
- package/dist/plain-time/constants.js +5 -0
- package/dist/plain-time/constants.js.map +1 -0
- package/dist/plain-time/index.d.ts +8 -0
- package/dist/plain-time/index.js +8 -0
- package/dist/plain-time/index.js.map +1 -0
- package/dist/plain-time/is-valid-time-string.d.ts +2 -0
- package/dist/plain-time/is-valid-time-string.js +5 -0
- package/dist/plain-time/is-valid-time-string.js.map +1 -0
- package/dist/plain-time/max.d.ts +2 -0
- package/dist/plain-time/max.js +15 -0
- package/dist/plain-time/max.js.map +1 -0
- package/dist/plain-time/min.d.ts +2 -0
- package/dist/plain-time/min.js +15 -0
- package/dist/plain-time/min.js.map +1 -0
- package/dist/plain-time/plain-time-entry.d.ts +18 -0
- package/dist/plain-time/plain-time-entry.js +11 -0
- package/dist/plain-time/plain-time-entry.js.map +1 -0
- package/dist/plain-time/plain-time-error.d.ts +12 -0
- package/dist/plain-time/plain-time-error.js +19 -0
- package/dist/plain-time/plain-time-error.js.map +1 -0
- package/dist/plain-time/plain-time-object.type.d.ts +6 -0
- package/dist/plain-time/plain-time-object.type.js +2 -0
- package/dist/plain-time/plain-time-object.type.js.map +1 -0
- package/dist/plain-time/plain-time.d.ts +44 -0
- package/dist/plain-time/plain-time.factory.d.ts +12 -0
- package/dist/plain-time/plain-time.factory.js +10 -0
- package/dist/plain-time/plain-time.factory.js.map +1 -0
- package/dist/plain-time/plain-time.js +160 -0
- package/dist/plain-time/plain-time.js.map +1 -0
- package/dist/plain-time/seconds-in-unit.d.ts +11 -0
- package/dist/plain-time/seconds-in-unit.js +13 -0
- package/dist/plain-time/seconds-in-unit.js.map +1 -0
- package/dist/plain-time/tests/is-plain-time-after.validator.test.d.ts +1 -0
- package/dist/plain-time/tests/is-plain-time-after.validator.test.js +49 -0
- package/dist/plain-time/tests/is-plain-time-after.validator.test.js.map +1 -0
- package/dist/plain-time/tests/is-plain-time.validator.test.d.ts +1 -0
- package/dist/plain-time/tests/is-plain-time.validator.test.js +45 -0
- package/dist/plain-time/tests/is-plain-time.validator.test.js.map +1 -0
- package/dist/plain-time/tests/plain-time.unit.test.d.ts +1 -0
- package/dist/plain-time/tests/plain-time.unit.test.js +323 -0
- package/dist/plain-time/tests/plain-time.unit.test.js.map +1 -0
- package/dist/plain-time/time-unit.d.ts +1 -0
- package/dist/plain-time/time-unit.js +2 -0
- package/dist/plain-time/time-unit.js.map +1 -0
- package/dist/plain-time/typeorm/index.d.ts +1 -0
- package/dist/plain-time/typeorm/index.js +2 -0
- package/dist/plain-time/typeorm/index.js.map +1 -0
- package/dist/plain-time/typeorm/plain-time-column.d.ts +3 -0
- package/dist/plain-time/typeorm/plain-time-column.js +26 -0
- package/dist/plain-time/typeorm/plain-time-column.js.map +1 -0
- package/dist/plain-time/validators/index.d.ts +6 -0
- package/dist/plain-time/validators/index.js +7 -0
- package/dist/plain-time/validators/index.js.map +1 -0
- package/dist/plain-time/validators/is-plain-time-after.validator.d.ts +5 -0
- package/dist/plain-time/validators/is-plain-time-after.validator.js +47 -0
- package/dist/plain-time/validators/is-plain-time-after.validator.js.map +1 -0
- package/dist/plain-time/validators/is-plain-time-before.validator.d.ts +5 -0
- package/dist/plain-time/validators/is-plain-time-before.validator.js +47 -0
- package/dist/plain-time/validators/is-plain-time-before.validator.js.map +1 -0
- package/dist/plain-time/validators/is-plain-time-between.validator.d.ts +6 -0
- package/dist/plain-time/validators/is-plain-time-between.validator.js +52 -0
- package/dist/plain-time/validators/is-plain-time-between.validator.js.map +1 -0
- package/dist/plain-time/validators/is-plain-time-same-or-after.validator.d.ts +5 -0
- package/dist/plain-time/validators/is-plain-time-same-or-after.validator.js +47 -0
- package/dist/plain-time/validators/is-plain-time-same-or-after.validator.js.map +1 -0
- package/dist/plain-time/validators/is-plain-time-same-or-before.validator.d.ts +5 -0
- package/dist/plain-time/validators/is-plain-time-same-or-before.validator.js +47 -0
- package/dist/plain-time/validators/is-plain-time-same-or-before.validator.js.map +1 -0
- package/dist/plain-time/validators/is-plain-time.validator.d.ts +3 -0
- package/dist/plain-time/validators/is-plain-time.validator.js +7 -0
- package/dist/plain-time/validators/is-plain-time.validator.js.map +1 -0
- package/dist/rrule/frequency.d.ts +12 -0
- package/dist/rrule/frequency.js +25 -0
- package/dist/rrule/frequency.js.map +1 -0
- package/dist/rrule/index.d.ts +16 -0
- package/dist/rrule/index.js +7 -0
- package/dist/rrule/index.js.map +1 -0
- package/dist/rrule/rrule.d.ts +23 -0
- package/dist/rrule/rrule.factory.d.ts +20 -0
- package/dist/rrule/rrule.factory.js +8 -0
- package/dist/rrule/rrule.factory.js.map +1 -0
- package/dist/rrule/rrule.js +114 -0
- package/dist/rrule/rrule.js.map +1 -0
- package/dist/rrule/rrule.once.d.ts +14 -0
- package/dist/rrule/rrule.once.js +19 -0
- package/dist/rrule/rrule.once.js.map +1 -0
- package/dist/rrule/tests/rrule.once.unit.test.d.ts +1 -0
- package/dist/rrule/tests/rrule.once.unit.test.js +19 -0
- package/dist/rrule/tests/rrule.once.unit.test.js.map +1 -0
- package/dist/rrule/tests/rrule.unit.test.d.ts +1 -0
- package/dist/rrule/tests/rrule.unit.test.js +202 -0
- package/dist/rrule/tests/rrule.unit.test.js.map +1 -0
- package/dist/rrule/typeorm/index.d.ts +1 -0
- package/dist/rrule/typeorm/index.js +2 -0
- package/dist/rrule/typeorm/index.js.map +1 -0
- package/dist/rrule/typeorm/rrule-column.d.ts +2 -0
- package/dist/rrule/typeorm/rrule-column.js +6 -0
- package/dist/rrule/typeorm/rrule-column.js.map +1 -0
- package/dist/timestamp/api-property/index.d.ts +1 -0
- package/dist/timestamp/api-property/index.js +2 -0
- package/dist/timestamp/api-property/index.js.map +1 -0
- package/dist/timestamp/api-property/timestamp.api-property.d.ts +2 -0
- package/dist/timestamp/api-property/timestamp.api-property.js +12 -0
- package/dist/timestamp/api-property/timestamp.api-property.js.map +1 -0
- package/dist/timestamp/dayjs-timestamp.d.ts +59 -0
- package/dist/timestamp/dayjs-timestamp.js +205 -0
- package/dist/timestamp/dayjs-timestamp.js.map +1 -0
- package/dist/timestamp/future-infinity.d.ts +48 -0
- package/dist/timestamp/future-infinity.js +128 -0
- package/dist/timestamp/future-infinity.js.map +1 -0
- package/dist/timestamp/index.d.ts +30 -0
- package/dist/timestamp/index.js +15 -0
- package/dist/timestamp/index.js.map +1 -0
- package/dist/timestamp/max.d.ts +2 -0
- package/dist/timestamp/max.js +15 -0
- package/dist/timestamp/max.js.map +1 -0
- package/dist/timestamp/min.d.ts +2 -0
- package/dist/timestamp/min.js +15 -0
- package/dist/timestamp/min.js.map +1 -0
- package/dist/timestamp/past-infinity.d.ts +48 -0
- package/dist/timestamp/past-infinity.js +128 -0
- package/dist/timestamp/past-infinity.js.map +1 -0
- package/dist/timestamp/tests/dayjs-timestamp.unit.test.d.ts +1 -0
- package/dist/timestamp/tests/dayjs-timestamp.unit.test.js +18 -0
- package/dist/timestamp/tests/dayjs-timestamp.unit.test.js.map +1 -0
- package/dist/timestamp/tests/timestamp.factory.unit.test.d.ts +1 -0
- package/dist/timestamp/tests/timestamp.factory.unit.test.js +16 -0
- package/dist/timestamp/tests/timestamp.factory.unit.test.js.map +1 -0
- package/dist/timestamp/timestamp.d.ts +83 -0
- package/dist/timestamp/timestamp.factory.d.ts +18 -0
- package/dist/timestamp/timestamp.factory.js +36 -0
- package/dist/timestamp/timestamp.factory.js.map +1 -0
- package/dist/timestamp/timestamp.js +2 -0
- package/dist/timestamp/timestamp.js.map +1 -0
- package/dist/timestamp/typeorm/index.d.ts +1 -0
- package/dist/timestamp/typeorm/index.js +2 -0
- package/dist/timestamp/typeorm/index.js.map +1 -0
- package/dist/timestamp/typeorm/timestamp.column.d.ts +3 -0
- package/dist/timestamp/typeorm/timestamp.column.js +25 -0
- package/dist/timestamp/typeorm/timestamp.column.js.map +1 -0
- package/dist/timestamp/validators/index.d.ts +1 -0
- package/dist/timestamp/validators/index.js +2 -0
- package/dist/timestamp/validators/index.js.map +1 -0
- package/dist/timestamp/validators/is-timestamp.validator.d.ts +7 -0
- package/dist/timestamp/validators/is-timestamp.validator.js +34 -0
- package/dist/timestamp/validators/is-timestamp.validator.js.map +1 -0
- package/package.json +46 -0
package/README.md
ADDED
|
@@ -0,0 +1,307 @@
|
|
|
1
|
+
# @wisemen/datewise
|
|
2
|
+
|
|
3
|
+
A comprehensive TypeScript library for working with dates, times, and ranges in a type-safe and immutable way. Built on top of Day.js, it provides specialized types and utilities for temporal operations with strong TypeORM integration.
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
- **PlainDate**: Date-only type without time or timezone information
|
|
8
|
+
- **PlainTime**: Time-only type (hours, minutes, seconds, milliseconds)
|
|
9
|
+
- **Timestamp**: Date and time with timezone support
|
|
10
|
+
- **DateRange**: Inclusive/exclusive ranges between two dates
|
|
11
|
+
- **DateTimeRange**: Inclusive/exclusive ranges between two timestamps
|
|
12
|
+
- **MultiDateTimeRange**: Multiple non-overlapping datetime ranges
|
|
13
|
+
- **RRule**: Recurring date/time patterns
|
|
14
|
+
- **TypeORM Integration**: Custom column types and query operators
|
|
15
|
+
- **Class Validator Decorators**: Built-in validation decorators
|
|
16
|
+
- **NestJS Support**: DTO builders and API property decorators
|
|
17
|
+
- **Immutable API**: All operations return new instances
|
|
18
|
+
|
|
19
|
+
## Installation
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
pnpm add @wisemen/datewise
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
### Peer Dependencies
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
pnpm add dayjs typeorm class-validator class-transformer @nestjs/swagger
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Philosophy
|
|
32
|
+
|
|
33
|
+
This package embraces immutability and type safety for temporal operations. Unlike native JavaScript `Date` objects or raw Day.js instances, `datewise` provides:
|
|
34
|
+
|
|
35
|
+
1. **Separation of Concerns**: Distinct types for dates, times, and timestamps prevent mixing incompatible temporal concepts
|
|
36
|
+
2. **Explicit Timezone Handling**: Timestamps carry timezone information; PlainDate/PlainTime are timezone-agnostic
|
|
37
|
+
3. **Range Operations**: First-class support for date and datetime ranges with proper inclusivity handling
|
|
38
|
+
4. **Database Integration**: Seamless TypeORM integration with custom column types and query operators
|
|
39
|
+
5. **Infinity Support**: Special handling for past/future infinity dates for unbounded ranges
|
|
40
|
+
|
|
41
|
+
## Core Types
|
|
42
|
+
|
|
43
|
+
### PlainDate
|
|
44
|
+
|
|
45
|
+
A date without time or timezone information (e.g., "2025-01-15").
|
|
46
|
+
|
|
47
|
+
```typescript
|
|
48
|
+
// Create from various inputs
|
|
49
|
+
const date1 = plainDate('2025-01-15')
|
|
50
|
+
const date2 = plainDate(new Date())
|
|
51
|
+
const date3 = plainDate({ year: 2025, month: Month.JANUARY, day: 15 })
|
|
52
|
+
|
|
53
|
+
// Operations (immutable)
|
|
54
|
+
const tomorrow = date1.add(1, 'day')
|
|
55
|
+
const lastMonth = date1.subtract(1, 'month')
|
|
56
|
+
const startOfYear = date1.startOf('year')
|
|
57
|
+
|
|
58
|
+
// Comparisons
|
|
59
|
+
date1.isSame(date2) // boolean
|
|
60
|
+
date1.isAfter(date2) // boolean
|
|
61
|
+
date1.isBefore(date2) // boolean
|
|
62
|
+
date1.isToday() // boolean
|
|
63
|
+
|
|
64
|
+
// Access components
|
|
65
|
+
date1.year() // 2025
|
|
66
|
+
date1.month() // Month enum
|
|
67
|
+
date1.dayOfMonth() // 15
|
|
68
|
+
|
|
69
|
+
// Formatting
|
|
70
|
+
date1.format('YYYY-MM-DD') // "2025-01-15"
|
|
71
|
+
date1.toString() // "2025-01-15"
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
### PlainTime
|
|
75
|
+
|
|
76
|
+
Time without date or timezone (e.g., "14:30:00").
|
|
77
|
+
|
|
78
|
+
```typescript
|
|
79
|
+
// Create from various inputs
|
|
80
|
+
const time1 = plainTime('14:30:00')
|
|
81
|
+
const time2 = plainTime('14:30:00.500') // with milliseconds
|
|
82
|
+
const time3 = plainTime({ hours: 14, minutes: 30, seconds: 0, milliseconds: 0 })
|
|
83
|
+
const time4 = plainTime(new Date()) // extracts time component
|
|
84
|
+
|
|
85
|
+
// Operations
|
|
86
|
+
const later = time1.add(30, 'minutes')
|
|
87
|
+
const earlier = time1.subtract(1, 'hour')
|
|
88
|
+
|
|
89
|
+
// Comparisons
|
|
90
|
+
time1.isSame(time2) // boolean
|
|
91
|
+
time1.isAfter(time2) // boolean
|
|
92
|
+
time1.isBefore(time2) // boolean
|
|
93
|
+
|
|
94
|
+
// Access components (methods, not properties)
|
|
95
|
+
time1.hours() // 14
|
|
96
|
+
time1.minutes() // 30
|
|
97
|
+
time1.seconds() // 0
|
|
98
|
+
time1.milliseconds() // 0
|
|
99
|
+
|
|
100
|
+
// Formatting
|
|
101
|
+
time1.format('HH:mm:ss') // "14:30:00"
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
### Timestamp
|
|
105
|
+
|
|
106
|
+
Date and time with timezone support.
|
|
107
|
+
|
|
108
|
+
```typescript
|
|
109
|
+
// Create
|
|
110
|
+
const now = timestamp()
|
|
111
|
+
const ts1 = timestamp('2025-01-15T14:30:00Z')
|
|
112
|
+
const ts2 = timestamp(new Date())
|
|
113
|
+
|
|
114
|
+
// Operations
|
|
115
|
+
const later = ts1.add(2, 'hours')
|
|
116
|
+
const earlier = ts1.subtract(1, 'day')
|
|
117
|
+
|
|
118
|
+
// Timezone conversion
|
|
119
|
+
const utc = ts1.setTimezone('UTC')
|
|
120
|
+
const local = ts1.setTimezone('Europe/Brussels')
|
|
121
|
+
|
|
122
|
+
// Extract components
|
|
123
|
+
const date = ts1.toPlainDate()
|
|
124
|
+
const time = ts1.toPlainTime()
|
|
125
|
+
|
|
126
|
+
// Comparisons
|
|
127
|
+
ts1.isBefore(ts2) // boolean
|
|
128
|
+
ts1.isAfter(ts2) // boolean
|
|
129
|
+
ts1.isSame(ts2, 'day') // boolean
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
### DateRange
|
|
133
|
+
|
|
134
|
+
Inclusive or exclusive range between two dates.
|
|
135
|
+
|
|
136
|
+
```typescript
|
|
137
|
+
// Create ranges
|
|
138
|
+
const range1 = new DateRange('2025-01-01', '2025-01-31') // [inclusive, inclusive]
|
|
139
|
+
const range2 = new DateRange('2025-01-01', '2025-02-01', '[)') // [inclusive, exclusive)
|
|
140
|
+
const range3 = new DateRange('2025-01-01', '2025-12-31', '()') // (exclusive, exclusive)
|
|
141
|
+
|
|
142
|
+
// Range properties (getters)
|
|
143
|
+
range1.days // number of days
|
|
144
|
+
range1.weeks // number of weeks
|
|
145
|
+
range1.months // number of months
|
|
146
|
+
range1.quarters // number of quarters
|
|
147
|
+
range1.years // number of years
|
|
148
|
+
|
|
149
|
+
// Check containment
|
|
150
|
+
range1.contains('2025-01-15') // true
|
|
151
|
+
range1.contains('2025-02-01') // false
|
|
152
|
+
|
|
153
|
+
// Range operations
|
|
154
|
+
range1.overlaps(range2) // boolean - check if ranges overlap
|
|
155
|
+
range1.overlap(range2) // returns overlapping DateRange (throws if no overlap)
|
|
156
|
+
range1.diff(range2) // returns array of non-overlapping portions
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
### DateTimeRange
|
|
160
|
+
|
|
161
|
+
Inclusive or exclusive range between two timestamps.
|
|
162
|
+
|
|
163
|
+
```typescript
|
|
164
|
+
// Create (default: [inclusive, exclusive))
|
|
165
|
+
const range1 = new DateTimeRange('2025-01-01T00:00:00Z', '2025-01-02T00:00:00Z')
|
|
166
|
+
const range2 = new DateTimeRange('2025-01-01', '2025-01-02', '[]') // fully inclusive
|
|
167
|
+
const range3 = new DateTimeRange('2025-01-01', '2025-01-02', '()') // fully exclusive
|
|
168
|
+
|
|
169
|
+
// Properties (getters)
|
|
170
|
+
range1.years // whole years
|
|
171
|
+
range1.months // whole months
|
|
172
|
+
range1.weeks // whole weeks
|
|
173
|
+
range1.days // whole days
|
|
174
|
+
range1.hours // whole hours
|
|
175
|
+
range1.minutes // whole minutes
|
|
176
|
+
range1.seconds // whole seconds
|
|
177
|
+
range1.milliseconds // whole milliseconds
|
|
178
|
+
|
|
179
|
+
// Operations
|
|
180
|
+
range1.contains(timestamp('2025-01-01T12:00:00Z')) // boolean
|
|
181
|
+
range1.overlaps(range2) // boolean
|
|
182
|
+
range1.overlap(range2) // returns overlapping DateTimeRange (throws if no overlap)
|
|
183
|
+
range1.diff(range2) // returns MultiDateTimeRange of non-overlapping portions
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
## TypeORM Integration
|
|
187
|
+
|
|
188
|
+
### Column Types
|
|
189
|
+
|
|
190
|
+
```typescript
|
|
191
|
+
@Entity()
|
|
192
|
+
class Event {
|
|
193
|
+
@PlainDateColumn()
|
|
194
|
+
eventDate: PlainDate
|
|
195
|
+
|
|
196
|
+
@PlainTimeColumn()
|
|
197
|
+
startTime: PlainTime
|
|
198
|
+
|
|
199
|
+
@TimestampColumn()
|
|
200
|
+
createdAt: Timestamp
|
|
201
|
+
|
|
202
|
+
@DateRangeColumn()
|
|
203
|
+
validityPeriod: DateRange
|
|
204
|
+
}
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
### Query Operators
|
|
208
|
+
|
|
209
|
+
```typescript
|
|
210
|
+
// Find events overlapping with a date range
|
|
211
|
+
const events = await repository.find({
|
|
212
|
+
where: {
|
|
213
|
+
validityPeriod: overlapsWithDateRange(new DateRange('2025-01-01', '2025-12-31'))
|
|
214
|
+
}
|
|
215
|
+
})
|
|
216
|
+
|
|
217
|
+
// Find events on a specific date
|
|
218
|
+
const todayEvents = await repository.find({
|
|
219
|
+
where: {
|
|
220
|
+
validityPeriod: containsPlainDate(plainDate())
|
|
221
|
+
}
|
|
222
|
+
})
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
## Validation
|
|
226
|
+
|
|
227
|
+
```typescript
|
|
228
|
+
class CreateEventDto {
|
|
229
|
+
@IsPlainDate()
|
|
230
|
+
eventDate: PlainDate
|
|
231
|
+
|
|
232
|
+
@IsPlainTime()
|
|
233
|
+
startTime: PlainTime
|
|
234
|
+
|
|
235
|
+
@IsTimestamp()
|
|
236
|
+
createdAt: Timestamp
|
|
237
|
+
|
|
238
|
+
@IsDateRange()
|
|
239
|
+
validityPeriod: DateRange
|
|
240
|
+
}
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
## NestJS Integration
|
|
244
|
+
|
|
245
|
+
```typescript
|
|
246
|
+
// DTO with ApiProperty decorators
|
|
247
|
+
class EventFilterDto {
|
|
248
|
+
@ApiProperty({type: DateRangeDto})
|
|
249
|
+
@IsDateRange()
|
|
250
|
+
dateRange: DateRangeDto
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
// Command builder for input
|
|
254
|
+
class CreateEventCommand {
|
|
255
|
+
@ApiProperty({type: DateTimeRangeDto})
|
|
256
|
+
@IsDateTimeRange()
|
|
257
|
+
timeRange: DateTimeRangeDto
|
|
258
|
+
}
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
## Advanced Features
|
|
262
|
+
|
|
263
|
+
### Infinity Dates
|
|
264
|
+
|
|
265
|
+
```typescript
|
|
266
|
+
import { futureInfinityDate, pastInfinityDate } from '@wisemen/datewise'
|
|
267
|
+
|
|
268
|
+
const unboundedRange = new DateRange(pastInfinityDate(), futureInfinityDate())
|
|
269
|
+
unboundedRange.contains(plainDate()) // always true
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
### RRule (Recurring Dates)
|
|
273
|
+
|
|
274
|
+
```typescript
|
|
275
|
+
|
|
276
|
+
const rrule = rrule({
|
|
277
|
+
frequency: Frequency.WEEKLY,
|
|
278
|
+
interval: 2,
|
|
279
|
+
...
|
|
280
|
+
})
|
|
281
|
+
|
|
282
|
+
// Store in database with TypeORM
|
|
283
|
+
@Entity()
|
|
284
|
+
class RecurringEvent {
|
|
285
|
+
@RRuleColumn()
|
|
286
|
+
schedule: RRule
|
|
287
|
+
}
|
|
288
|
+
```
|
|
289
|
+
|
|
290
|
+
## API Reference
|
|
291
|
+
|
|
292
|
+
For detailed API documentation, see the TypeScript interfaces:
|
|
293
|
+
- `PlainDate` - Date-only operations
|
|
294
|
+
- `PlainTime` - Time-only operations
|
|
295
|
+
- `Timestamp` - Full datetime with timezone
|
|
296
|
+
- `DateRange` - Date range operations
|
|
297
|
+
- `DateTimeRange` - Datetime range operations
|
|
298
|
+
- `MultiDateTimeRange` - Multiple ranges
|
|
299
|
+
- `RRule` - Recurring patterns
|
|
300
|
+
|
|
301
|
+
## License
|
|
302
|
+
|
|
303
|
+
GPL
|
|
304
|
+
|
|
305
|
+
## Author
|
|
306
|
+
|
|
307
|
+
Wisemen
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const MILLIS_PER_SECOND = 1000;
|
|
2
|
+
export declare const SECONDS_PER_MINUTE = 60;
|
|
3
|
+
export declare const MINUTES_PER_HOUR = 60;
|
|
4
|
+
export declare const DAYS_PER_WEEK = 7;
|
|
5
|
+
export declare const HOURS_PER_DAY = 24;
|
|
6
|
+
export declare const SECONDS_PER_HOUR: number;
|
|
7
|
+
export declare const MILLIS_PER_HOUR: number;
|
|
8
|
+
export declare const MILLIS_PER_WEEK: number;
|
|
9
|
+
export declare const MILLIS_PER_MINUTE: number;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export const MILLIS_PER_SECOND = 1000;
|
|
2
|
+
export const SECONDS_PER_MINUTE = 60;
|
|
3
|
+
export const MINUTES_PER_HOUR = 60;
|
|
4
|
+
export const DAYS_PER_WEEK = 7;
|
|
5
|
+
export const HOURS_PER_DAY = 24;
|
|
6
|
+
export const SECONDS_PER_HOUR = SECONDS_PER_MINUTE * MINUTES_PER_HOUR;
|
|
7
|
+
export const MILLIS_PER_HOUR = MINUTES_PER_HOUR * SECONDS_PER_MINUTE * MILLIS_PER_SECOND;
|
|
8
|
+
export const MILLIS_PER_WEEK = DAYS_PER_WEEK * HOURS_PER_DAY * MILLIS_PER_HOUR;
|
|
9
|
+
export const MILLIS_PER_MINUTE = MILLIS_PER_SECOND * SECONDS_PER_MINUTE;
|
|
10
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../lib/common/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAA;AACrC,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAA;AACpC,MAAM,CAAC,MAAM,gBAAgB,GAAG,EAAE,CAAA;AAClC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAA;AAC9B,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,CAAA;AAC/B,MAAM,CAAC,MAAM,gBAAgB,GAAG,kBAAkB,GAAG,gBAAgB,CAAA;AACrE,MAAM,CAAC,MAAM,eAAe,GAAG,gBAAgB,GAAG,kBAAkB,GAAG,iBAAiB,CAAA;AACxF,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,GAAG,aAAa,GAAG,eAAe,CAAA;AAC9E,MAAM,CAAC,MAAM,iBAAiB,GAAG,iBAAiB,GAAG,kBAAkB,CAAA"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ApiProperty } from '@nestjs/swagger';
|
|
2
|
+
export var DatePeriod;
|
|
3
|
+
(function (DatePeriod) {
|
|
4
|
+
DatePeriod["PAST"] = "past";
|
|
5
|
+
DatePeriod["ACTIVE"] = "active";
|
|
6
|
+
DatePeriod["FUTURE"] = "future";
|
|
7
|
+
})(DatePeriod || (DatePeriod = {}));
|
|
8
|
+
export function DatePeriodApiProperty(options) {
|
|
9
|
+
return ApiProperty({
|
|
10
|
+
...options,
|
|
11
|
+
enum: DatePeriod,
|
|
12
|
+
enumName: 'DatePeriod'
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=date-period.enum.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date-period.enum.js","sourceRoot":"","sources":["../../lib/common/date-period.enum.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAsB,MAAM,iBAAiB,CAAA;AAEjE,MAAM,CAAN,IAAY,UAIX;AAJD,WAAY,UAAU;IACpB,2BAAa,CAAA;IACb,+BAAiB,CAAA;IACjB,+BAAiB,CAAA;AACnB,CAAC,EAJW,UAAU,KAAV,UAAU,QAIrB;AAED,MAAM,UAAU,qBAAqB,CACnC,OAA4B;IAE5B,OAAO,WAAW,CAAC;QACjB,GAAG,OAAO;QACV,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE,YAAY;KACvB,CAAC,CAAA;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function exhaustiveCheck(_x: never): never;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exhaustive-check.helper.js","sourceRoot":"","sources":["../../lib/common/exhaustive-check.helper.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,eAAe,CAAE,EAAS;IACxC,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;AACpD,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare enum Inclusivity {
|
|
2
|
+
INCLUSIVE = 0,
|
|
3
|
+
EXCLUSIVE = 1
|
|
4
|
+
}
|
|
5
|
+
export type InclusivityString = '[]' | '()' | '[)' | '(]';
|
|
6
|
+
export declare function mapToInclusivity(str: InclusivityString): [Inclusivity, Inclusivity];
|
|
7
|
+
export declare function isInclusive(bound: Inclusivity): bound is Inclusivity.INCLUSIVE;
|
|
8
|
+
export declare function intersect(firstBound: Inclusivity, secondBound: Inclusivity): Inclusivity;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export var Inclusivity;
|
|
2
|
+
(function (Inclusivity) {
|
|
3
|
+
Inclusivity[Inclusivity["INCLUSIVE"] = 0] = "INCLUSIVE";
|
|
4
|
+
Inclusivity[Inclusivity["EXCLUSIVE"] = 1] = "EXCLUSIVE";
|
|
5
|
+
})(Inclusivity || (Inclusivity = {}));
|
|
6
|
+
export function mapToInclusivity(str) {
|
|
7
|
+
return [
|
|
8
|
+
str[0] === '[' ? Inclusivity.INCLUSIVE : Inclusivity.EXCLUSIVE,
|
|
9
|
+
str[1] === ']' ? Inclusivity.INCLUSIVE : Inclusivity.EXCLUSIVE
|
|
10
|
+
];
|
|
11
|
+
}
|
|
12
|
+
export function isInclusive(bound) {
|
|
13
|
+
return bound === Inclusivity.INCLUSIVE;
|
|
14
|
+
}
|
|
15
|
+
export function intersect(firstBound, secondBound) {
|
|
16
|
+
if (isInclusive(firstBound) && isInclusive(secondBound)) {
|
|
17
|
+
return Inclusivity.INCLUSIVE;
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
return Inclusivity.EXCLUSIVE;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=inclusivity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inclusivity.js","sourceRoot":"","sources":["../../lib/common/inclusivity.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,uDAAa,CAAA;IACb,uDAAa,CAAA;AACf,CAAC,EAHW,WAAW,KAAX,WAAW,QAGtB;AAID,MAAM,UAAU,gBAAgB,CAAE,GAAsB;IACtD,OAAO;QACL,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,SAAS;QAC9D,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,SAAS;KAC/D,CAAA;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAE,KAAkB;IAC7C,OAAO,KAAK,KAAK,WAAW,CAAC,SAAS,CAAA;AACxC,CAAC;AAED,MAAM,UAAU,SAAS,CAAE,UAAuB,EAAE,WAAwB;IAC1E,IAAI,WAAW,CAAC,UAAU,CAAC,IAAI,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC;QACxD,OAAO,WAAW,CAAC,SAAS,CAAA;IAC9B,CAAC;SAAM,CAAC;QACN,OAAO,WAAW,CAAC,SAAS,CAAA;IAC9B,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../lib/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,eAAe,CAAA;AAC7B,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function initDayjs(): void;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import dayjs from 'dayjs';
|
|
2
|
+
import customParseFormat from 'dayjs/plugin/customParseFormat.js';
|
|
3
|
+
import isoWeek from 'dayjs/plugin/isoWeek.js';
|
|
4
|
+
import MinMax from 'dayjs/plugin/minMax.js';
|
|
5
|
+
import Utc from 'dayjs/plugin/utc.js';
|
|
6
|
+
import TimeZone from 'dayjs/plugin/timezone.js';
|
|
7
|
+
import weekOfYear from 'dayjs/plugin/weekOfYear.js';
|
|
8
|
+
import dayOfYear from 'dayjs/plugin/dayOfYear.js';
|
|
9
|
+
import isToday from 'dayjs/plugin/isToday.js';
|
|
10
|
+
import isTomorrow from 'dayjs/plugin/isTomorrow.js';
|
|
11
|
+
import isYesterday from 'dayjs/plugin/isYesterday.js';
|
|
12
|
+
import isBetween from 'dayjs/plugin/isBetween.js';
|
|
13
|
+
import isSameOrBefore from 'dayjs/plugin/isSameOrBefore.js';
|
|
14
|
+
import isSameOrAfter from 'dayjs/plugin/isSameOrAfter.js';
|
|
15
|
+
export function initDayjs() {
|
|
16
|
+
dayjs.extend(customParseFormat);
|
|
17
|
+
dayjs.extend(isoWeek);
|
|
18
|
+
dayjs.extend(MinMax);
|
|
19
|
+
dayjs.extend(Utc);
|
|
20
|
+
dayjs.extend(TimeZone);
|
|
21
|
+
dayjs.extend(weekOfYear);
|
|
22
|
+
dayjs.extend(dayOfYear);
|
|
23
|
+
dayjs.extend(isToday);
|
|
24
|
+
dayjs.extend(isTomorrow);
|
|
25
|
+
dayjs.extend(isYesterday);
|
|
26
|
+
dayjs.extend(isBetween);
|
|
27
|
+
dayjs.extend(isSameOrBefore);
|
|
28
|
+
dayjs.extend(isSameOrAfter);
|
|
29
|
+
dayjs.tz.setDefault('UTC');
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=init-dayjs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init-dayjs.js","sourceRoot":"","sources":["../../lib/common/init-dayjs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,iBAAiB,MAAM,mCAAmC,CAAA;AACjE,OAAO,OAAO,MAAM,yBAAyB,CAAA;AAC7C,OAAO,MAAM,MAAM,wBAAwB,CAAA;AAC3C,OAAO,GAAG,MAAM,qBAAqB,CAAA;AACrC,OAAO,QAAQ,MAAM,0BAA0B,CAAA;AAC/C,OAAO,UAAU,MAAM,4BAA4B,CAAA;AACnD,OAAO,SAAS,MAAM,2BAA2B,CAAA;AACjD,OAAO,OAAO,MAAM,yBAAyB,CAAA;AAC7C,OAAO,UAAU,MAAM,4BAA4B,CAAA;AACnD,OAAO,WAAW,MAAM,6BAA6B,CAAA;AACrD,OAAO,SAAS,MAAM,2BAA2B,CAAA;AACjD,OAAO,cAAc,MAAM,gCAAgC,CAAA;AAC3D,OAAO,aAAa,MAAM,+BAA+B,CAAA;AAEzD,MAAM,UAAU,SAAS;IACvB,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAA;IAC/B,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACrB,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IACpB,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IACjB,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IACtB,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IACxB,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IACvB,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACrB,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IACxB,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;IACzB,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IACvB,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAA;IAC5B,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;IAC3B,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;AAC5B,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare enum Month {
|
|
2
|
+
JANUARY = 1,
|
|
3
|
+
FEBRUARY = 2,
|
|
4
|
+
MARCH = 3,
|
|
5
|
+
APRIL = 4,
|
|
6
|
+
MAY = 5,
|
|
7
|
+
JUNE = 6,
|
|
8
|
+
JULY = 7,
|
|
9
|
+
AUGUST = 8,
|
|
10
|
+
SEPTEMBER = 9,
|
|
11
|
+
OCTOBER = 10,
|
|
12
|
+
NOVEMBER = 11,
|
|
13
|
+
DECEMBER = 12
|
|
14
|
+
}
|
|
15
|
+
export declare function month(value: number): Month;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export var Month;
|
|
2
|
+
(function (Month) {
|
|
3
|
+
Month[Month["JANUARY"] = 1] = "JANUARY";
|
|
4
|
+
Month[Month["FEBRUARY"] = 2] = "FEBRUARY";
|
|
5
|
+
Month[Month["MARCH"] = 3] = "MARCH";
|
|
6
|
+
Month[Month["APRIL"] = 4] = "APRIL";
|
|
7
|
+
Month[Month["MAY"] = 5] = "MAY";
|
|
8
|
+
Month[Month["JUNE"] = 6] = "JUNE";
|
|
9
|
+
Month[Month["JULY"] = 7] = "JULY";
|
|
10
|
+
Month[Month["AUGUST"] = 8] = "AUGUST";
|
|
11
|
+
Month[Month["SEPTEMBER"] = 9] = "SEPTEMBER";
|
|
12
|
+
Month[Month["OCTOBER"] = 10] = "OCTOBER";
|
|
13
|
+
Month[Month["NOVEMBER"] = 11] = "NOVEMBER";
|
|
14
|
+
Month[Month["DECEMBER"] = 12] = "DECEMBER";
|
|
15
|
+
})(Month || (Month = {}));
|
|
16
|
+
export function month(value) {
|
|
17
|
+
if (1 <= value && value <= 12)
|
|
18
|
+
return value;
|
|
19
|
+
throw new Error('Month must be a value between 1 and 12');
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=month.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"month.js","sourceRoot":"","sources":["../../lib/common/month.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,KAaX;AAbD,WAAY,KAAK;IACf,uCAAW,CAAA;IACX,yCAAY,CAAA;IACZ,mCAAS,CAAA;IACT,mCAAS,CAAA;IACT,+BAAO,CAAA;IACP,iCAAQ,CAAA;IACR,iCAAQ,CAAA;IACR,qCAAU,CAAA;IACV,2CAAa,CAAA;IACb,wCAAY,CAAA;IACZ,0CAAa,CAAA;IACb,0CAAa,CAAA;AACf,CAAC,EAbW,KAAK,KAAL,KAAK,QAahB;AAED,MAAM,UAAU,KAAK,CAAE,KAAa;IAClC,IAAI,CAAC,IAAI,KAAK,IAAI,KAAK,IAAI,EAAE;QAAE,OAAO,KAAc,CAAA;IACpD,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;AAC3D,CAAC"}
|