@haskou/value-objects 1.1.1 → 1.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/errors/BaseError.d.ts +8 -0
- package/dist/src/errors/BaseError.d.ts.map +1 -0
- package/dist/src/errors/BaseError.js +22 -0
- package/dist/src/errors/BaseError.js.map +1 -0
- package/dist/src/errors/DomainError.d.ts +7 -0
- package/dist/src/errors/DomainError.d.ts.map +1 -0
- package/dist/src/errors/DomainError.js +15 -0
- package/dist/src/errors/DomainError.js.map +1 -0
- package/dist/src/errors/InvalidColorError.d.ts +5 -0
- package/dist/src/errors/InvalidColorError.d.ts.map +1 -0
- package/dist/src/errors/InvalidColorError.js +11 -0
- package/dist/src/errors/InvalidColorError.js.map +1 -0
- package/dist/src/errors/InvalidDayError.d.ts +5 -0
- package/dist/src/errors/InvalidDayError.d.ts.map +1 -0
- package/dist/src/errors/InvalidDayError.js +11 -0
- package/dist/src/errors/InvalidDayError.js.map +1 -0
- package/dist/src/errors/InvalidDayFormatError.d.ts +5 -0
- package/dist/src/errors/InvalidDayFormatError.d.ts.map +1 -0
- package/dist/src/errors/InvalidDayFormatError.js +11 -0
- package/dist/src/errors/InvalidDayFormatError.js.map +1 -0
- package/dist/src/errors/InvalidEmailError.d.ts +5 -0
- package/dist/src/errors/InvalidEmailError.d.ts.map +1 -0
- package/dist/src/errors/InvalidEmailError.js +11 -0
- package/dist/src/errors/InvalidEmailError.js.map +1 -0
- package/dist/src/errors/InvalidFormatError.d.ts +5 -0
- package/dist/src/errors/InvalidFormatError.d.ts.map +1 -0
- package/dist/src/errors/InvalidFormatError.js +11 -0
- package/dist/src/errors/InvalidFormatError.js.map +1 -0
- package/dist/src/errors/InvalidHashError.d.ts +5 -0
- package/dist/src/errors/InvalidHashError.d.ts.map +1 -0
- package/dist/src/errors/InvalidHashError.js +11 -0
- package/dist/src/errors/InvalidHashError.js.map +1 -0
- package/dist/src/errors/InvalidHourError.d.ts +5 -0
- package/dist/src/errors/InvalidHourError.d.ts.map +1 -0
- package/dist/src/errors/InvalidHourError.js +11 -0
- package/dist/src/errors/InvalidHourError.js.map +1 -0
- package/dist/src/errors/InvalidIntegerError.d.ts +5 -0
- package/dist/src/errors/InvalidIntegerError.d.ts.map +1 -0
- package/dist/src/errors/InvalidIntegerError.js +11 -0
- package/dist/src/errors/InvalidIntegerError.js.map +1 -0
- package/dist/src/errors/InvalidLatitudeError.d.ts +5 -0
- package/dist/src/errors/InvalidLatitudeError.d.ts.map +1 -0
- package/dist/src/errors/InvalidLatitudeError.js +11 -0
- package/dist/src/errors/InvalidLatitudeError.js.map +1 -0
- package/dist/src/errors/InvalidLengthError.d.ts +5 -0
- package/dist/src/errors/InvalidLengthError.d.ts.map +1 -0
- package/dist/src/errors/InvalidLengthError.js +11 -0
- package/dist/src/errors/InvalidLengthError.js.map +1 -0
- package/dist/src/errors/InvalidLongitudeError.d.ts +5 -0
- package/dist/src/errors/InvalidLongitudeError.d.ts.map +1 -0
- package/dist/src/errors/InvalidLongitudeError.js +11 -0
- package/dist/src/errors/InvalidLongitudeError.js.map +1 -0
- package/dist/src/errors/InvalidMinutesError.d.ts +5 -0
- package/dist/src/errors/InvalidMinutesError.d.ts.map +1 -0
- package/dist/src/errors/InvalidMinutesError.js +11 -0
- package/dist/src/errors/InvalidMinutesError.js.map +1 -0
- package/dist/src/errors/InvalidNumberError.d.ts +5 -0
- package/dist/src/errors/InvalidNumberError.d.ts.map +1 -0
- package/dist/src/errors/InvalidNumberError.js +11 -0
- package/dist/src/errors/InvalidNumberError.js.map +1 -0
- package/dist/src/errors/InvalidPositiveNumberError.d.ts +5 -0
- package/dist/src/errors/InvalidPositiveNumberError.d.ts.map +1 -0
- package/dist/src/errors/InvalidPositiveNumberError.js +11 -0
- package/dist/src/errors/InvalidPositiveNumberError.js.map +1 -0
- package/dist/src/errors/InvalidStringLengthError.d.ts +5 -0
- package/dist/src/errors/InvalidStringLengthError.d.ts.map +1 -0
- package/dist/src/errors/InvalidStringLengthError.js +11 -0
- package/dist/src/errors/InvalidStringLengthError.js.map +1 -0
- package/dist/src/errors/InvalidTimestampIntervalError.d.ts +6 -0
- package/dist/src/errors/InvalidTimestampIntervalError.d.ts.map +1 -0
- package/dist/src/errors/InvalidTimestampIntervalError.js +11 -0
- package/dist/src/errors/InvalidTimestampIntervalError.js.map +1 -0
- package/dist/src/errors/InvalidValueError.d.ts +5 -0
- package/dist/src/errors/InvalidValueError.d.ts.map +1 -0
- package/dist/src/errors/InvalidValueError.js +11 -0
- package/dist/src/errors/InvalidValueError.js.map +1 -0
- package/dist/src/errors/NullObjectError.d.ts +5 -0
- package/dist/src/errors/NullObjectError.d.ts.map +1 -0
- package/dist/src/errors/NullObjectError.js +12 -0
- package/dist/src/errors/NullObjectError.js.map +1 -0
- package/dist/src/errors/ValueNotInEnumError.d.ts +5 -0
- package/dist/src/errors/ValueNotInEnumError.d.ts.map +1 -0
- package/dist/src/errors/ValueNotInEnumError.js +11 -0
- package/dist/src/errors/ValueNotInEnumError.js.map +1 -0
- package/{src/errors/index.ts → dist/src/errors/index.d.ts} +1 -0
- package/dist/src/errors/index.d.ts.map +1 -0
- package/dist/src/errors/index.js +24 -0
- package/dist/src/errors/index.js.map +1 -0
- package/{src/index.ts → dist/src/index.d.ts} +1 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +9 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/interfaces/PrimitiveOf.d.ts +5 -0
- package/dist/src/interfaces/PrimitiveOf.d.ts.map +1 -0
- package/dist/src/interfaces/PrimitiveOf.js +3 -0
- package/dist/src/interfaces/PrimitiveOf.js.map +1 -0
- package/dist/src/interfaces/index.d.ts +2 -0
- package/dist/src/interfaces/index.d.ts.map +1 -0
- package/dist/src/interfaces/index.js +5 -0
- package/dist/src/interfaces/index.js.map +1 -0
- package/dist/src/patterns/Assert.d.ts +5 -0
- package/dist/src/patterns/Assert.d.ts.map +1 -0
- package/dist/src/patterns/Assert.js +11 -0
- package/dist/src/patterns/Assert.js.map +1 -0
- package/dist/src/patterns/index.d.ts +2 -0
- package/dist/src/patterns/index.d.ts.map +1 -0
- package/dist/src/patterns/index.js +5 -0
- package/dist/src/patterns/index.js.map +1 -0
- package/{src/types/Nullish.ts → dist/src/types/Nullish.d.ts} +1 -0
- package/dist/src/types/Nullish.d.ts.map +1 -0
- package/dist/src/types/Nullish.js +3 -0
- package/dist/src/types/Nullish.js.map +1 -0
- package/{src/types/Primitive.ts → dist/src/types/Primitive.d.ts} +1 -0
- package/dist/src/types/Primitive.d.ts.map +1 -0
- package/dist/src/types/Primitive.js +3 -0
- package/dist/src/types/Primitive.js.map +1 -0
- package/{src/types/index.ts → dist/src/types/index.d.ts} +1 -0
- package/dist/src/types/index.d.ts.map +1 -0
- package/dist/src/types/index.js +6 -0
- package/dist/src/types/index.js.map +1 -0
- package/dist/src/value-objects/Color.d.ts +19 -0
- package/dist/src/value-objects/Color.d.ts.map +1 -0
- package/dist/src/value-objects/Color.js +37 -0
- package/dist/src/value-objects/Color.js.map +1 -0
- package/dist/src/value-objects/Email.d.ts +6 -0
- package/dist/src/value-objects/Email.d.ts.map +1 -0
- package/dist/src/value-objects/Email.js +21 -0
- package/dist/src/value-objects/Email.js.map +1 -0
- package/dist/src/value-objects/Enum.d.ts +9 -0
- package/dist/src/value-objects/Enum.d.ts.map +1 -0
- package/dist/src/value-objects/Enum.js +24 -0
- package/dist/src/value-objects/Enum.js.map +1 -0
- package/dist/src/value-objects/Integer.d.ts +6 -0
- package/dist/src/value-objects/Integer.d.ts.map +1 -0
- package/dist/src/value-objects/Integer.js +21 -0
- package/dist/src/value-objects/Integer.js.map +1 -0
- package/dist/src/value-objects/NullObject.d.ts +8 -0
- package/dist/src/value-objects/NullObject.d.ts.map +1 -0
- package/dist/src/value-objects/NullObject.js +43 -0
- package/dist/src/value-objects/NullObject.js.map +1 -0
- package/dist/src/value-objects/NumberValueObject.d.ts +15 -0
- package/dist/src/value-objects/NumberValueObject.d.ts.map +1 -0
- package/dist/src/value-objects/NumberValueObject.js +48 -0
- package/dist/src/value-objects/NumberValueObject.js.map +1 -0
- package/dist/src/value-objects/PositiveNumber.d.ts +6 -0
- package/dist/src/value-objects/PositiveNumber.d.ts.map +1 -0
- package/dist/src/value-objects/PositiveNumber.js +21 -0
- package/dist/src/value-objects/PositiveNumber.js.map +1 -0
- package/dist/src/value-objects/StringValueObject.d.ts +7 -0
- package/dist/src/value-objects/StringValueObject.d.ts.map +1 -0
- package/dist/src/value-objects/StringValueObject.js +24 -0
- package/dist/src/value-objects/StringValueObject.js.map +1 -0
- package/dist/src/value-objects/ValueObject.d.ts +12 -0
- package/dist/src/value-objects/ValueObject.d.ts.map +1 -0
- package/dist/src/value-objects/ValueObject.js +33 -0
- package/dist/src/value-objects/ValueObject.js.map +1 -0
- package/dist/src/value-objects/coordinates/Coordinates.d.ts +12 -0
- package/dist/src/value-objects/coordinates/Coordinates.d.ts.map +1 -0
- package/dist/src/value-objects/coordinates/Coordinates.js +28 -0
- package/dist/src/value-objects/coordinates/Coordinates.js.map +1 -0
- package/dist/src/value-objects/coordinates/Latitude.d.ts +8 -0
- package/dist/src/value-objects/coordinates/Latitude.d.ts.map +1 -0
- package/dist/src/value-objects/coordinates/Latitude.js +21 -0
- package/dist/src/value-objects/coordinates/Latitude.js.map +1 -0
- package/dist/src/value-objects/coordinates/Longitude.d.ts +8 -0
- package/dist/src/value-objects/coordinates/Longitude.d.ts.map +1 -0
- package/dist/src/value-objects/coordinates/Longitude.js +21 -0
- package/dist/src/value-objects/coordinates/Longitude.js.map +1 -0
- package/{src/value-objects/coordinates/index.ts → dist/src/value-objects/coordinates/index.d.ts} +1 -0
- package/dist/src/value-objects/coordinates/index.d.ts.map +1 -0
- package/dist/src/value-objects/coordinates/index.js +7 -0
- package/dist/src/value-objects/coordinates/index.js.map +1 -0
- package/dist/src/value-objects/hashes/Hash.d.ts +7 -0
- package/dist/src/value-objects/hashes/Hash.d.ts.map +1 -0
- package/dist/src/value-objects/hashes/Hash.js +19 -0
- package/dist/src/value-objects/hashes/Hash.js.map +1 -0
- package/dist/src/value-objects/hashes/MD5Hash.d.ts +8 -0
- package/dist/src/value-objects/hashes/MD5Hash.d.ts.map +1 -0
- package/dist/src/value-objects/hashes/MD5Hash.js +26 -0
- package/dist/src/value-objects/hashes/MD5Hash.js.map +1 -0
- package/dist/src/value-objects/hashes/SHA256Hash.d.ts +9 -0
- package/dist/src/value-objects/hashes/SHA256Hash.d.ts.map +1 -0
- package/dist/src/value-objects/hashes/SHA256Hash.js +29 -0
- package/dist/src/value-objects/hashes/SHA256Hash.js.map +1 -0
- package/dist/src/value-objects/hashes/SHA512Hash.d.ts +9 -0
- package/dist/src/value-objects/hashes/SHA512Hash.d.ts.map +1 -0
- package/dist/src/value-objects/hashes/SHA512Hash.js +29 -0
- package/dist/src/value-objects/hashes/SHA512Hash.js.map +1 -0
- package/{src/value-objects/hashes/index.ts → dist/src/value-objects/hashes/index.d.ts} +1 -0
- package/dist/src/value-objects/hashes/index.d.ts.map +1 -0
- package/dist/src/value-objects/hashes/index.js +8 -0
- package/dist/src/value-objects/hashes/index.js.map +1 -0
- package/dist/src/value-objects/ids/ShortId.d.ts +10 -0
- package/dist/src/value-objects/ids/ShortId.d.ts.map +1 -0
- package/dist/src/value-objects/ids/ShortId.js +30 -0
- package/dist/src/value-objects/ids/ShortId.js.map +1 -0
- package/dist/src/value-objects/ids/UUID.d.ts +10 -0
- package/dist/src/value-objects/ids/UUID.d.ts.map +1 -0
- package/dist/src/value-objects/ids/UUID.js +29 -0
- package/dist/src/value-objects/ids/UUID.js.map +1 -0
- package/{src/value-objects/ids/index.ts → dist/src/value-objects/ids/index.d.ts} +1 -0
- package/dist/src/value-objects/ids/index.d.ts.map +1 -0
- package/dist/src/value-objects/ids/index.js +6 -0
- package/dist/src/value-objects/ids/index.js.map +1 -0
- package/{src/value-objects/index.ts → dist/src/value-objects/index.d.ts} +1 -0
- package/dist/src/value-objects/index.d.ts.map +1 -0
- package/dist/src/value-objects/index.js +16 -0
- package/dist/src/value-objects/index.js.map +1 -0
- package/dist/src/value-objects/time/CalendarDay.d.ts +25 -0
- package/dist/src/value-objects/time/CalendarDay.d.ts.map +1 -0
- package/dist/src/value-objects/time/CalendarDay.js +74 -0
- package/dist/src/value-objects/time/CalendarDay.js.map +1 -0
- package/dist/src/value-objects/time/Day.d.ts +7 -0
- package/dist/src/value-objects/time/Day.d.ts.map +1 -0
- package/dist/src/value-objects/time/Day.js +18 -0
- package/dist/src/value-objects/time/Day.js.map +1 -0
- package/dist/src/value-objects/time/DayOfWeek.d.ts +34 -0
- package/dist/src/value-objects/time/DayOfWeek.d.ts.map +1 -0
- package/dist/src/value-objects/time/DayOfWeek.js +52 -0
- package/dist/src/value-objects/time/DayOfWeek.js.map +1 -0
- package/dist/src/value-objects/time/Duration.d.ts +23 -0
- package/dist/src/value-objects/time/Duration.d.ts.map +1 -0
- package/dist/src/value-objects/time/Duration.js +79 -0
- package/dist/src/value-objects/time/Duration.js.map +1 -0
- package/dist/src/value-objects/time/Hour.d.ts +15 -0
- package/dist/src/value-objects/time/Hour.d.ts.map +1 -0
- package/dist/src/value-objects/time/Hour.js +81 -0
- package/dist/src/value-objects/time/Hour.js.map +1 -0
- package/dist/src/value-objects/time/Month.d.ts +18 -0
- package/dist/src/value-objects/time/Month.d.ts.map +1 -0
- package/dist/src/value-objects/time/Month.js +41 -0
- package/dist/src/value-objects/time/Month.js.map +1 -0
- package/dist/src/value-objects/time/MonthOfYear.d.ts +17 -0
- package/dist/src/value-objects/time/MonthOfYear.d.ts.map +1 -0
- package/dist/src/value-objects/time/MonthOfYear.js +45 -0
- package/dist/src/value-objects/time/MonthOfYear.js.map +1 -0
- package/dist/src/value-objects/time/Timestamp.d.ts +51 -0
- package/dist/src/value-objects/time/Timestamp.d.ts.map +1 -0
- package/dist/src/value-objects/time/Timestamp.js +156 -0
- package/dist/src/value-objects/time/Timestamp.js.map +1 -0
- package/dist/src/value-objects/time/TimestampInterval.d.ts +26 -0
- package/dist/src/value-objects/time/TimestampInterval.d.ts.map +1 -0
- package/dist/src/value-objects/time/TimestampInterval.js +88 -0
- package/dist/src/value-objects/time/TimestampInterval.js.map +1 -0
- package/dist/src/value-objects/time/Year.d.ts +10 -0
- package/dist/src/value-objects/time/Year.d.ts.map +1 -0
- package/dist/src/value-objects/time/Year.js +26 -0
- package/dist/src/value-objects/time/Year.js.map +1 -0
- package/{src/value-objects/time/index.ts → dist/src/value-objects/time/index.d.ts} +1 -0
- package/dist/src/value-objects/time/index.d.ts.map +1 -0
- package/dist/src/value-objects/time/index.js +14 -0
- package/dist/src/value-objects/time/index.js.map +1 -0
- package/dist/tests/errors/BaseError.spec.d.ts +2 -0
- package/dist/tests/errors/BaseError.spec.d.ts.map +1 -0
- package/dist/tests/errors/BaseError.spec.js +54 -0
- package/dist/tests/errors/BaseError.spec.js.map +1 -0
- package/dist/tests/errors/DomainError.spec.d.ts +2 -0
- package/dist/tests/errors/DomainError.spec.d.ts.map +1 -0
- package/dist/tests/errors/DomainError.spec.js +47 -0
- package/dist/tests/errors/DomainError.spec.js.map +1 -0
- package/dist/tests/patterns/Assert.spec.d.ts +2 -0
- package/dist/tests/patterns/Assert.spec.d.ts.map +1 -0
- package/dist/tests/patterns/Assert.spec.js +27 -0
- package/dist/tests/patterns/Assert.spec.js.map +1 -0
- package/dist/tests/setup.jest.d.ts +2 -0
- package/dist/tests/setup.jest.d.ts.map +1 -0
- package/dist/tests/setup.jest.js +6 -0
- package/dist/tests/setup.jest.js.map +1 -0
- package/dist/tests/value-objects/Color.spec.d.ts +2 -0
- package/dist/tests/value-objects/Color.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/Color.spec.js +171 -0
- package/dist/tests/value-objects/Color.spec.js.map +1 -0
- package/dist/tests/value-objects/Email.spec.d.ts +2 -0
- package/dist/tests/value-objects/Email.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/Email.spec.js +117 -0
- package/dist/tests/value-objects/Email.spec.js.map +1 -0
- package/dist/tests/value-objects/Enum.spec.d.ts +2 -0
- package/dist/tests/value-objects/Enum.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/Enum.spec.js +233 -0
- package/dist/tests/value-objects/Enum.spec.js.map +1 -0
- package/dist/tests/value-objects/Integer.spec.d.ts +2 -0
- package/dist/tests/value-objects/Integer.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/Integer.spec.js +31 -0
- package/dist/tests/value-objects/Integer.spec.js.map +1 -0
- package/dist/tests/value-objects/NullObject.spec.d.ts +2 -0
- package/dist/tests/value-objects/NullObject.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/NullObject.spec.js +48 -0
- package/dist/tests/value-objects/NullObject.spec.js.map +1 -0
- package/dist/tests/value-objects/NumberValueObject.spec.d.ts +2 -0
- package/dist/tests/value-objects/NumberValueObject.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/NumberValueObject.spec.js +333 -0
- package/dist/tests/value-objects/NumberValueObject.spec.js.map +1 -0
- package/dist/tests/value-objects/PositiveNumber.spec.d.ts +2 -0
- package/dist/tests/value-objects/PositiveNumber.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/PositiveNumber.spec.js +209 -0
- package/dist/tests/value-objects/PositiveNumber.spec.js.map +1 -0
- package/dist/tests/value-objects/StringValueObject.spec.d.ts +2 -0
- package/dist/tests/value-objects/StringValueObject.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/StringValueObject.spec.js +104 -0
- package/dist/tests/value-objects/StringValueObject.spec.js.map +1 -0
- package/dist/tests/value-objects/coordinates/Coordinates.spec.d.ts +2 -0
- package/dist/tests/value-objects/coordinates/Coordinates.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/coordinates/Coordinates.spec.js +76 -0
- package/dist/tests/value-objects/coordinates/Coordinates.spec.js.map +1 -0
- package/dist/tests/value-objects/coordinates/Latitude.spec.d.ts +2 -0
- package/dist/tests/value-objects/coordinates/Latitude.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/coordinates/Latitude.spec.js +23 -0
- package/dist/tests/value-objects/coordinates/Latitude.spec.js.map +1 -0
- package/dist/tests/value-objects/coordinates/Longitude.spec.d.ts +2 -0
- package/dist/tests/value-objects/coordinates/Longitude.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/coordinates/Longitude.spec.js +23 -0
- package/dist/tests/value-objects/coordinates/Longitude.spec.js.map +1 -0
- package/dist/tests/value-objects/hashes/Hashes.spec.d.ts +2 -0
- package/dist/tests/value-objects/hashes/Hashes.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/hashes/Hashes.spec.js +107 -0
- package/dist/tests/value-objects/hashes/Hashes.spec.js.map +1 -0
- package/dist/tests/value-objects/hashes/MD5Hash.spec.d.ts +2 -0
- package/dist/tests/value-objects/hashes/MD5Hash.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/hashes/MD5Hash.spec.js +147 -0
- package/dist/tests/value-objects/hashes/MD5Hash.spec.js.map +1 -0
- package/dist/tests/value-objects/hashes/SHA256Hash.spec.d.ts +2 -0
- package/dist/tests/value-objects/hashes/SHA256Hash.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/hashes/SHA256Hash.spec.js +147 -0
- package/dist/tests/value-objects/hashes/SHA256Hash.spec.js.map +1 -0
- package/dist/tests/value-objects/hashes/SHA512Hash.spec.d.ts +2 -0
- package/dist/tests/value-objects/hashes/SHA512Hash.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/hashes/SHA512Hash.spec.js +147 -0
- package/dist/tests/value-objects/hashes/SHA512Hash.spec.js.map +1 -0
- package/dist/tests/value-objects/ids/ShortId.spec.d.ts +2 -0
- package/dist/tests/value-objects/ids/ShortId.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/ids/ShortId.spec.js +30 -0
- package/dist/tests/value-objects/ids/ShortId.spec.js.map +1 -0
- package/dist/tests/value-objects/ids/UUID.spec.d.ts +2 -0
- package/dist/tests/value-objects/ids/UUID.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/ids/UUID.spec.js +30 -0
- package/dist/tests/value-objects/ids/UUID.spec.js.map +1 -0
- package/dist/tests/value-objects/time/CalendarDay.spec.d.ts +2 -0
- package/dist/tests/value-objects/time/CalendarDay.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/time/CalendarDay.spec.js +149 -0
- package/dist/tests/value-objects/time/CalendarDay.spec.js.map +1 -0
- package/dist/tests/value-objects/time/Day.spec.d.ts +2 -0
- package/dist/tests/value-objects/time/Day.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/time/Day.spec.js +28 -0
- package/dist/tests/value-objects/time/Day.spec.js.map +1 -0
- package/dist/tests/value-objects/time/DayOfWeek.spec.d.ts +2 -0
- package/dist/tests/value-objects/time/DayOfWeek.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/time/DayOfWeek.spec.js +44 -0
- package/dist/tests/value-objects/time/DayOfWeek.spec.js.map +1 -0
- package/dist/tests/value-objects/time/Duration.spec.d.ts +2 -0
- package/dist/tests/value-objects/time/Duration.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/time/Duration.spec.js +255 -0
- package/dist/tests/value-objects/time/Duration.spec.js.map +1 -0
- package/dist/tests/value-objects/time/Hour.spec.d.ts +2 -0
- package/dist/tests/value-objects/time/Hour.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/time/Hour.spec.js +168 -0
- package/dist/tests/value-objects/time/Hour.spec.js.map +1 -0
- package/dist/tests/value-objects/time/MonthOfYear.spec.d.ts +2 -0
- package/dist/tests/value-objects/time/MonthOfYear.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/time/MonthOfYear.spec.js +93 -0
- package/dist/tests/value-objects/time/MonthOfYear.spec.js.map +1 -0
- package/dist/tests/value-objects/time/Timestamp.spec.d.ts +2 -0
- package/dist/tests/value-objects/time/Timestamp.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/time/Timestamp.spec.js +391 -0
- package/dist/tests/value-objects/time/Timestamp.spec.js.map +1 -0
- package/dist/tests/value-objects/time/TimestampInterval.spec.d.ts +2 -0
- package/dist/tests/value-objects/time/TimestampInterval.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/time/TimestampInterval.spec.js +270 -0
- package/dist/tests/value-objects/time/TimestampInterval.spec.js.map +1 -0
- package/dist/tests/value-objects/time/Year.spec.d.ts +2 -0
- package/dist/tests/value-objects/time/Year.spec.d.ts.map +1 -0
- package/dist/tests/value-objects/time/Year.spec.js +41 -0
- package/dist/tests/value-objects/time/Year.spec.js.map +1 -0
- package/package.json +6 -2
- package/.editorconfig +0 -15
- package/.eslintignore +0 -3
- package/.eslintrc.json +0 -218
- package/.prettierrc.json +0 -13
- package/TECHNICAL_DOCUMENTATION.md +0 -1257
- package/jest.config.ts +0 -30
- package/src/errors/BaseError.ts +0 -20
- package/src/errors/DomainError.ts +0 -12
- package/src/errors/InvalidColorError.ts +0 -7
- package/src/errors/InvalidDayError.ts +0 -7
- package/src/errors/InvalidDayFormatError.ts +0 -7
- package/src/errors/InvalidEmailError.ts +0 -7
- package/src/errors/InvalidFormatError.ts +0 -7
- package/src/errors/InvalidHashError.ts +0 -7
- package/src/errors/InvalidHourError.ts +0 -7
- package/src/errors/InvalidIntegerError.ts +0 -7
- package/src/errors/InvalidLatitudeError.ts +0 -7
- package/src/errors/InvalidLengthError.ts +0 -9
- package/src/errors/InvalidLongitudeError.ts +0 -7
- package/src/errors/InvalidMinutesError.ts +0 -7
- package/src/errors/InvalidNumberError.ts +0 -7
- package/src/errors/InvalidPositiveNumberError.ts +0 -7
- package/src/errors/InvalidStringLengthError.ts +0 -9
- package/src/errors/InvalidTimestampIntervalError.ts +0 -10
- package/src/errors/InvalidValueError.ts +0 -7
- package/src/errors/NullObjectError.ts +0 -8
- package/src/errors/ValueNotInEnumError.ts +0 -9
- package/src/interfaces/PrimitiveOf.ts +0 -5
- package/src/interfaces/index.ts +0 -1
- package/src/patterns/Assert.ts +0 -15
- package/src/patterns/index.ts +0 -1
- package/src/value-objects/Color.ts +0 -39
- package/src/value-objects/Email.ts +0 -23
- package/src/value-objects/Enum.ts +0 -31
- package/src/value-objects/Integer.ts +0 -22
- package/src/value-objects/NullObject.ts +0 -60
- package/src/value-objects/NumberValueObject.ts +0 -56
- package/src/value-objects/PositiveNumber.ts +0 -20
- package/src/value-objects/StringValueObject.ts +0 -27
- package/src/value-objects/ValueObject.ts +0 -39
- package/src/value-objects/coordinates/Coordinates.ts +0 -30
- package/src/value-objects/coordinates/Latitude.ts +0 -22
- package/src/value-objects/coordinates/Longitude.ts +0 -25
- package/src/value-objects/hashes/Hash.ts +0 -19
- package/src/value-objects/hashes/MD5Hash.ts +0 -32
- package/src/value-objects/hashes/SHA256Hash.ts +0 -38
- package/src/value-objects/hashes/SHA512Hash.ts +0 -38
- package/src/value-objects/ids/ShortId.ts +0 -34
- package/src/value-objects/ids/UUID.ts +0 -34
- package/src/value-objects/time/CalendarDay.ts +0 -91
- package/src/value-objects/time/Day.ts +0 -17
- package/src/value-objects/time/DayOfWeek.ts +0 -60
- package/src/value-objects/time/Duration.ts +0 -142
- package/src/value-objects/time/Hour.ts +0 -105
- package/src/value-objects/time/Month.ts +0 -39
- package/src/value-objects/time/MonthOfYear.ts +0 -52
- package/src/value-objects/time/Timestamp.ts +0 -208
- package/src/value-objects/time/TimestampInterval.ts +0 -122
- package/src/value-objects/time/Year.ts +0 -27
- package/tests/errors/BaseError.spec.ts +0 -63
- package/tests/errors/DomainError.spec.ts +0 -52
- package/tests/patterns/Assert.spec.ts +0 -29
- package/tests/setup.jest.ts +0 -2
- package/tests/value-objects/Color.spec.ts +0 -214
- package/tests/value-objects/Email.spec.ts +0 -141
- package/tests/value-objects/Enum.spec.ts +0 -293
- package/tests/value-objects/Integer.spec.ts +0 -38
- package/tests/value-objects/NullObject.spec.ts +0 -55
- package/tests/value-objects/NumberValueObject.spec.ts +0 -446
- package/tests/value-objects/PositiveNumber.spec.ts +0 -274
- package/tests/value-objects/StringValueObject.spec.ts +0 -135
- package/tests/value-objects/coordinates/Coordinates.spec.ts +0 -90
- package/tests/value-objects/coordinates/Latitude.spec.ts +0 -24
- package/tests/value-objects/coordinates/Longitude.spec.ts +0 -24
- package/tests/value-objects/hashes/Hashes.spec.ts +0 -139
- package/tests/value-objects/hashes/MD5Hash.spec.ts +0 -187
- package/tests/value-objects/hashes/SHA256Hash.spec.ts +0 -220
- package/tests/value-objects/hashes/SHA512Hash.spec.ts +0 -220
- package/tests/value-objects/ids/ShortId.spec.ts +0 -34
- package/tests/value-objects/ids/UUID.spec.ts +0 -37
- package/tests/value-objects/time/CalendarDay.spec.ts +0 -182
- package/tests/value-objects/time/Day.spec.ts +0 -29
- package/tests/value-objects/time/DayOfWeek.spec.ts +0 -71
- package/tests/value-objects/time/Duration.spec.ts +0 -278
- package/tests/value-objects/time/Hour.spec.ts +0 -197
- package/tests/value-objects/time/MonthOfYear.spec.ts +0 -111
- package/tests/value-objects/time/Timestamp.spec.ts +0 -497
- package/tests/value-objects/time/TimestampInterval.spec.ts +0 -383
- package/tests/value-objects/time/Year.spec.ts +0 -48
- package/tsconfig.jest.json +0 -33
- package/tsconfig.json +0 -42
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CalendarDay = void 0;
|
|
4
|
+
const InvalidDayError_1 = require("../../errors/InvalidDayError");
|
|
5
|
+
const InvalidDayFormatError_1 = require("../../errors/InvalidDayFormatError");
|
|
6
|
+
const Assert_1 = require("../../patterns/Assert");
|
|
7
|
+
const ValueObject_1 = require("../ValueObject");
|
|
8
|
+
const Day_1 = require("./Day");
|
|
9
|
+
const DayOfWeek_1 = require("./DayOfWeek");
|
|
10
|
+
const Month_1 = require("./Month");
|
|
11
|
+
const MonthOfYear_1 = require("./MonthOfYear");
|
|
12
|
+
const Timestamp_1 = require("./Timestamp");
|
|
13
|
+
class CalendarDay extends ValueObject_1.ValueObject {
|
|
14
|
+
year;
|
|
15
|
+
month;
|
|
16
|
+
day;
|
|
17
|
+
static ensureIsValidValue(value) {
|
|
18
|
+
if (typeof value == 'string') {
|
|
19
|
+
this.ensureIsValidString(value);
|
|
20
|
+
}
|
|
21
|
+
this.ensureIsValidDate(new Date(value.valueOf()));
|
|
22
|
+
}
|
|
23
|
+
static ensureIsValidString(value) {
|
|
24
|
+
(0, Assert_1.assert)(value.match(/^\d{4}-\d{1,2}-\d{1,2}$/), new InvalidDayFormatError_1.InvalidDayFormatError(value));
|
|
25
|
+
}
|
|
26
|
+
static generateStringValue(timestamp) {
|
|
27
|
+
const paddedMonth = timestamp.getMonth().toString().padStart(2, '0');
|
|
28
|
+
const paddedDay = timestamp.getDay().toString().padStart(2, '0');
|
|
29
|
+
return `${timestamp.getYear().toString()}-${paddedMonth}-${paddedDay}`;
|
|
30
|
+
}
|
|
31
|
+
static ensureIsValidDate(value) {
|
|
32
|
+
(0, Assert_1.assert)(!isNaN(value.valueOf()), new InvalidDayError_1.InvalidDayError(value));
|
|
33
|
+
}
|
|
34
|
+
constructor(value) {
|
|
35
|
+
let timestamp;
|
|
36
|
+
if (value) {
|
|
37
|
+
CalendarDay.ensureIsValidValue(value);
|
|
38
|
+
timestamp = new Timestamp_1.Timestamp(value);
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
timestamp = new Timestamp_1.Timestamp();
|
|
42
|
+
}
|
|
43
|
+
super(CalendarDay.generateStringValue(timestamp));
|
|
44
|
+
this.year = timestamp.getYear().valueOf();
|
|
45
|
+
this.month = timestamp.getMonth().getIndex() + 1;
|
|
46
|
+
this.day = timestamp.getDay().valueOf();
|
|
47
|
+
}
|
|
48
|
+
isAfter(date) {
|
|
49
|
+
return this.valueOf() > date.valueOf();
|
|
50
|
+
}
|
|
51
|
+
isBefore(date) {
|
|
52
|
+
return this.valueOf() < date.valueOf();
|
|
53
|
+
}
|
|
54
|
+
getYear() {
|
|
55
|
+
return this.year;
|
|
56
|
+
}
|
|
57
|
+
getMonth() {
|
|
58
|
+
return new Month_1.Month(this.month);
|
|
59
|
+
}
|
|
60
|
+
getMonthOfYear() {
|
|
61
|
+
return new MonthOfYear_1.MonthOfYear(this.month, this.year);
|
|
62
|
+
}
|
|
63
|
+
getDay() {
|
|
64
|
+
return new Day_1.Day(this.day);
|
|
65
|
+
}
|
|
66
|
+
getDayOfWeek() {
|
|
67
|
+
return DayOfWeek_1.DayOfWeek.fromNumber(this.toTimestamp().getDayOfWeek());
|
|
68
|
+
}
|
|
69
|
+
toTimestamp() {
|
|
70
|
+
return new Timestamp_1.Timestamp(Date.UTC(this.year, this.month - 1, this.day));
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
exports.CalendarDay = CalendarDay;
|
|
74
|
+
//# sourceMappingURL=CalendarDay.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CalendarDay.js","sourceRoot":"","sources":["../../../../src/value-objects/time/CalendarDay.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Day.d.ts","sourceRoot":"","sources":["../../../../src/value-objects/time/Day.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,qBAAa,GAAI,SAAQ,OAAO;gBAClB,KAAK,EAAE,MAAM,GAAG,iBAAiB;IAM7C,OAAO,CAAC,gBAAgB;CAIzB"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Day = void 0;
|
|
4
|
+
const InvalidDayError_1 = require("../../errors/InvalidDayError");
|
|
5
|
+
const Assert_1 = require("../../patterns/Assert");
|
|
6
|
+
const Integer_1 = require("../Integer");
|
|
7
|
+
class Day extends Integer_1.Integer {
|
|
8
|
+
constructor(value) {
|
|
9
|
+
super(value.valueOf());
|
|
10
|
+
this.ensureIsValidDay();
|
|
11
|
+
}
|
|
12
|
+
ensureIsValidDay() {
|
|
13
|
+
(0, Assert_1.assert)(this.isGreaterOrEqualThan(1), new InvalidDayError_1.InvalidDayError(this.value));
|
|
14
|
+
(0, Assert_1.assert)(this.isLessOrEqualThan(31), new InvalidDayError_1.InvalidDayError(this.value));
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
exports.Day = Day;
|
|
18
|
+
//# sourceMappingURL=Day.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Day.js","sourceRoot":"","sources":["../../../../src/value-objects/time/Day.ts"],"names":[],"mappings":";;;AAAA,kEAA+D;AAC/D,kDAA+C;AAC/C,wCAAqC;AAGrC,MAAa,GAAI,SAAQ,iBAAO;IAC9B,YAAY,KAAiC;QAC3C,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAEvB,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAEO,gBAAgB;QACtB,IAAA,eAAM,EAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,IAAI,iCAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACtE,IAAA,eAAM,EAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,IAAI,iCAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACtE,CAAC;CACF;AAXD,kBAWC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Enum } from '../Enum';
|
|
2
|
+
import { Timestamp } from './Timestamp';
|
|
3
|
+
export declare enum EDaysOfWeek {
|
|
4
|
+
MONDAY = "monday",
|
|
5
|
+
TUESDAY = "tuesday",
|
|
6
|
+
WEDNESDAY = "wednesday",
|
|
7
|
+
THURSDAY = "thursday",
|
|
8
|
+
FRIDAY = "friday",
|
|
9
|
+
SATURDAY = "saturday",
|
|
10
|
+
SUNDAY = "sunday"
|
|
11
|
+
}
|
|
12
|
+
export declare const timeStampDayToDaysMap: {
|
|
13
|
+
friday: number;
|
|
14
|
+
monday: number;
|
|
15
|
+
saturday: number;
|
|
16
|
+
sunday: number;
|
|
17
|
+
thursday: number;
|
|
18
|
+
tuesday: number;
|
|
19
|
+
wednesday: number;
|
|
20
|
+
};
|
|
21
|
+
export declare class DayOfWeek extends Enum {
|
|
22
|
+
static MONDAY: DayOfWeek;
|
|
23
|
+
static TUESDAY: DayOfWeek;
|
|
24
|
+
static WEDNESDAY: DayOfWeek;
|
|
25
|
+
static THURSDAY: DayOfWeek;
|
|
26
|
+
static FRIDAY: DayOfWeek;
|
|
27
|
+
static SATURDAY: DayOfWeek;
|
|
28
|
+
static SUNDAY: DayOfWeek;
|
|
29
|
+
static fromNumber(day: number): DayOfWeek;
|
|
30
|
+
static fromTimestamp(timestamp: Timestamp): DayOfWeek;
|
|
31
|
+
getValues(): string[];
|
|
32
|
+
toNumber(): number;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=DayOfWeek.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DayOfWeek.d.ts","sourceRoot":"","sources":["../../../../src/value-objects/time/DayOfWeek.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,oBAAY,WAAW;IACrB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,QAAQ,aAAa;IACrB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,MAAM,WAAW;CAClB;AAED,eAAO,MAAM,qBAAqB;;;;;;;;CAQjC,CAAC;AAEF,qBAAa,SAAU,SAAQ,IAAI;IACjC,OAAc,MAAM,YAAqC;IACzD,OAAc,OAAO,YAAsC;IAC3D,OAAc,SAAS,YAAwC;IAC/D,OAAc,QAAQ,YAAuC;IAC7D,OAAc,MAAM,YAAqC;IACzD,OAAc,QAAQ,YAAuC;IAC7D,OAAc,MAAM,YAAqC;WAE3C,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS;WAalC,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,SAAS;IAMrD,SAAS,IAAI,MAAM,EAAE;IAIrB,QAAQ,IAAI,MAAM;CAG1B"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DayOfWeek = exports.timeStampDayToDaysMap = exports.EDaysOfWeek = void 0;
|
|
4
|
+
const InvalidDayError_1 = require("../../errors/InvalidDayError");
|
|
5
|
+
const Enum_1 = require("../Enum");
|
|
6
|
+
var EDaysOfWeek;
|
|
7
|
+
(function (EDaysOfWeek) {
|
|
8
|
+
EDaysOfWeek["MONDAY"] = "monday";
|
|
9
|
+
EDaysOfWeek["TUESDAY"] = "tuesday";
|
|
10
|
+
EDaysOfWeek["WEDNESDAY"] = "wednesday";
|
|
11
|
+
EDaysOfWeek["THURSDAY"] = "thursday";
|
|
12
|
+
EDaysOfWeek["FRIDAY"] = "friday";
|
|
13
|
+
EDaysOfWeek["SATURDAY"] = "saturday";
|
|
14
|
+
EDaysOfWeek["SUNDAY"] = "sunday";
|
|
15
|
+
})(EDaysOfWeek || (exports.EDaysOfWeek = EDaysOfWeek = {}));
|
|
16
|
+
exports.timeStampDayToDaysMap = {
|
|
17
|
+
[EDaysOfWeek.FRIDAY]: 5,
|
|
18
|
+
[EDaysOfWeek.MONDAY]: 1,
|
|
19
|
+
[EDaysOfWeek.SATURDAY]: 6,
|
|
20
|
+
[EDaysOfWeek.SUNDAY]: 0,
|
|
21
|
+
[EDaysOfWeek.THURSDAY]: 4,
|
|
22
|
+
[EDaysOfWeek.TUESDAY]: 2,
|
|
23
|
+
[EDaysOfWeek.WEDNESDAY]: 3,
|
|
24
|
+
};
|
|
25
|
+
class DayOfWeek extends Enum_1.Enum {
|
|
26
|
+
static MONDAY = new DayOfWeek(EDaysOfWeek.MONDAY);
|
|
27
|
+
static TUESDAY = new DayOfWeek(EDaysOfWeek.TUESDAY);
|
|
28
|
+
static WEDNESDAY = new DayOfWeek(EDaysOfWeek.WEDNESDAY);
|
|
29
|
+
static THURSDAY = new DayOfWeek(EDaysOfWeek.THURSDAY);
|
|
30
|
+
static FRIDAY = new DayOfWeek(EDaysOfWeek.FRIDAY);
|
|
31
|
+
static SATURDAY = new DayOfWeek(EDaysOfWeek.SATURDAY);
|
|
32
|
+
static SUNDAY = new DayOfWeek(EDaysOfWeek.SUNDAY);
|
|
33
|
+
static fromNumber(day) {
|
|
34
|
+
const [eDay] = Object.entries(exports.timeStampDayToDaysMap).find(([, value]) => value === day) || [];
|
|
35
|
+
if (!eDay) {
|
|
36
|
+
throw new InvalidDayError_1.InvalidDayError(eDay);
|
|
37
|
+
}
|
|
38
|
+
return new DayOfWeek(eDay);
|
|
39
|
+
}
|
|
40
|
+
static fromTimestamp(timestamp) {
|
|
41
|
+
const dayOfWeekNumber = timestamp.getDayOfWeek();
|
|
42
|
+
return DayOfWeek.fromNumber(dayOfWeekNumber);
|
|
43
|
+
}
|
|
44
|
+
getValues() {
|
|
45
|
+
return Object.values(EDaysOfWeek);
|
|
46
|
+
}
|
|
47
|
+
toNumber() {
|
|
48
|
+
return exports.timeStampDayToDaysMap[this.value];
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
exports.DayOfWeek = DayOfWeek;
|
|
52
|
+
//# sourceMappingURL=DayOfWeek.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DayOfWeek.js","sourceRoot":"","sources":["../../../../src/value-objects/time/DayOfWeek.ts"],"names":[],"mappings":";;;AAAA,kEAA+D;AAC/D,kCAA+B;AAG/B,IAAY,WAQX;AARD,WAAY,WAAW;IACrB,gCAAiB,CAAA;IACjB,kCAAmB,CAAA;IACnB,sCAAuB,CAAA;IACvB,oCAAqB,CAAA;IACrB,gCAAiB,CAAA;IACjB,oCAAqB,CAAA;IACrB,gCAAiB,CAAA;AACnB,CAAC,EARW,WAAW,2BAAX,WAAW,QAQtB;AAEY,QAAA,qBAAqB,GAAG;IACnC,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;IACvB,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;IACvB,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;IACzB,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;IACvB,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;IACzB,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;IACxB,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;CAC3B,CAAC;AAEF,MAAa,SAAU,SAAQ,WAAI;IAC1B,MAAM,CAAC,MAAM,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAClD,MAAM,CAAC,OAAO,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACpD,MAAM,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IACxD,MAAM,CAAC,QAAQ,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IACtD,MAAM,CAAC,MAAM,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAClD,MAAM,CAAC,QAAQ,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IACtD,MAAM,CAAC,MAAM,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAElD,MAAM,CAAC,UAAU,CAAC,GAAW;QAClC,MAAM,CAAC,IAAI,CAAC,GACV,MAAM,CAAC,OAAO,CAAC,6BAAqB,CAAC,CAAC,IAAI,CACxC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,GAAG,CAC7B,IAAI,EAAE,CAAC;QAEV,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,iCAAe,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;QAED,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAEM,MAAM,CAAC,aAAa,CAAC,SAAoB;QAC9C,MAAM,eAAe,GAAG,SAAS,CAAC,YAAY,EAAE,CAAC;QAEjD,OAAO,SAAS,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;IAC/C,CAAC;IAEM,SAAS;QACd,OAAO,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACpC,CAAC;IAEM,QAAQ;QACb,OAAO,6BAAqB,CAAC,IAAI,CAAC,KAAoB,CAAC,CAAC;IAC1D,CAAC;;AAlCH,8BAmCC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { NumberValueObject } from '../NumberValueObject';
|
|
2
|
+
export declare class Duration extends NumberValueObject {
|
|
3
|
+
private static readonly MILLISECOND_FACTOR;
|
|
4
|
+
private static readonly SECOND_UNITS;
|
|
5
|
+
private static readonly millisecondFactors;
|
|
6
|
+
static fromDays(days: number | NumberValueObject): Duration;
|
|
7
|
+
static fromHours(hours: number | NumberValueObject): Duration;
|
|
8
|
+
static fromMinutes(minutes: number | NumberValueObject): Duration;
|
|
9
|
+
static fromSeconds(seconds: number | NumberValueObject): Duration;
|
|
10
|
+
static fromMilliseconds(milliseconds: number | NumberValueObject): Duration;
|
|
11
|
+
constructor(milliseconds: NumberValueObject | Duration);
|
|
12
|
+
getTotalDays(): NumberValueObject;
|
|
13
|
+
getTotalHours(): NumberValueObject;
|
|
14
|
+
getTotalMinutes(): NumberValueObject;
|
|
15
|
+
getTotalSeconds(): NumberValueObject;
|
|
16
|
+
getTotalMilliseconds(): NumberValueObject;
|
|
17
|
+
getDays(): NumberValueObject;
|
|
18
|
+
getHours(): NumberValueObject;
|
|
19
|
+
getMinutes(): NumberValueObject;
|
|
20
|
+
getSeconds(): NumberValueObject;
|
|
21
|
+
getMilliseconds(): NumberValueObject;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=Duration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Duration.d.ts","sourceRoot":"","sources":["../../../../src/value-objects/time/Duration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,qBAAa,QAAS,SAAQ,iBAAiB;IAC7C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAQ;IAClD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAQlC;IAEF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAsBxC;WAEY,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,QAAQ;WAQpD,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,GAAG,QAAQ;WAQtD,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,GAAG,QAAQ;WAQ1D,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,GAAG,QAAQ;WAQ1D,gBAAgB,CAC5B,YAAY,EAAE,MAAM,GAAG,iBAAiB,GACvC,QAAQ;gBAIC,YAAY,EAAE,iBAAiB,GAAG,QAAQ;IAI/C,YAAY,IAAI,iBAAiB;IAIjC,aAAa,IAAI,iBAAiB;IAIlC,eAAe,IAAI,iBAAiB;IAIpC,eAAe,IAAI,iBAAiB;IAIpC,oBAAoB,IAAI,iBAAiB;IAIzC,OAAO,IAAI,iBAAiB;IAQ5B,QAAQ,IAAI,iBAAiB;IAQ7B,UAAU,IAAI,iBAAiB;IAU/B,UAAU,IAAI,iBAAiB;IAU/B,eAAe,IAAI,iBAAiB;CAK5C"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Duration = void 0;
|
|
4
|
+
const NumberValueObject_1 = require("../NumberValueObject");
|
|
5
|
+
class Duration extends NumberValueObject_1.NumberValueObject {
|
|
6
|
+
static MILLISECOND_FACTOR = 1000;
|
|
7
|
+
static SECOND_UNITS = {
|
|
8
|
+
DAYS: 24 * 60 * 60,
|
|
9
|
+
HOURS: 60 * 60,
|
|
10
|
+
MINUTES: 60,
|
|
11
|
+
MONTHS: 30 * 24 * 60 * 60,
|
|
12
|
+
SECONDS: 1,
|
|
13
|
+
WEEKS: 7 * 24 * 60 * 60,
|
|
14
|
+
YEARS: 365 * 24 * 60 * 60,
|
|
15
|
+
};
|
|
16
|
+
static millisecondFactors = {
|
|
17
|
+
DAYS: new NumberValueObject_1.NumberValueObject(this.SECOND_UNITS.DAYS * this.MILLISECOND_FACTOR),
|
|
18
|
+
HOURS: new NumberValueObject_1.NumberValueObject(this.SECOND_UNITS.HOURS * this.MILLISECOND_FACTOR),
|
|
19
|
+
MINUTES: new NumberValueObject_1.NumberValueObject(this.SECOND_UNITS.MINUTES * this.MILLISECOND_FACTOR),
|
|
20
|
+
MONTHS: new NumberValueObject_1.NumberValueObject(this.SECOND_UNITS.MONTHS * this.MILLISECOND_FACTOR),
|
|
21
|
+
SECONDS: new NumberValueObject_1.NumberValueObject(this.SECOND_UNITS.SECONDS * this.MILLISECOND_FACTOR),
|
|
22
|
+
WEEKS: new NumberValueObject_1.NumberValueObject(this.SECOND_UNITS.WEEKS * this.MILLISECOND_FACTOR),
|
|
23
|
+
YEARS: new NumberValueObject_1.NumberValueObject(this.SECOND_UNITS.YEARS * this.MILLISECOND_FACTOR),
|
|
24
|
+
};
|
|
25
|
+
static fromDays(days) {
|
|
26
|
+
return new Duration(new NumberValueObject_1.NumberValueObject(days.valueOf()).multiply(this.millisecondFactors.DAYS));
|
|
27
|
+
}
|
|
28
|
+
static fromHours(hours) {
|
|
29
|
+
return new Duration(new NumberValueObject_1.NumberValueObject(hours.valueOf()).multiply(this.millisecondFactors.HOURS));
|
|
30
|
+
}
|
|
31
|
+
static fromMinutes(minutes) {
|
|
32
|
+
return new Duration(new NumberValueObject_1.NumberValueObject(minutes.valueOf()).multiply(this.millisecondFactors.MINUTES));
|
|
33
|
+
}
|
|
34
|
+
static fromSeconds(seconds) {
|
|
35
|
+
return new Duration(new NumberValueObject_1.NumberValueObject(seconds.valueOf()).multiply(this.millisecondFactors.SECONDS));
|
|
36
|
+
}
|
|
37
|
+
static fromMilliseconds(milliseconds) {
|
|
38
|
+
return new Duration(new NumberValueObject_1.NumberValueObject(milliseconds.valueOf()));
|
|
39
|
+
}
|
|
40
|
+
constructor(milliseconds) {
|
|
41
|
+
super(milliseconds.valueOf());
|
|
42
|
+
}
|
|
43
|
+
getTotalDays() {
|
|
44
|
+
return new Duration(this).divide(Duration.millisecondFactors.DAYS);
|
|
45
|
+
}
|
|
46
|
+
getTotalHours() {
|
|
47
|
+
return new Duration(this).divide(Duration.millisecondFactors.HOURS);
|
|
48
|
+
}
|
|
49
|
+
getTotalMinutes() {
|
|
50
|
+
return new Duration(this).divide(Duration.millisecondFactors.MINUTES);
|
|
51
|
+
}
|
|
52
|
+
getTotalSeconds() {
|
|
53
|
+
return new Duration(this).divide(Duration.millisecondFactors.SECONDS);
|
|
54
|
+
}
|
|
55
|
+
getTotalMilliseconds() {
|
|
56
|
+
return new NumberValueObject_1.NumberValueObject(this.valueOf());
|
|
57
|
+
}
|
|
58
|
+
getDays() {
|
|
59
|
+
return new NumberValueObject_1.NumberValueObject(Math.floor(new Duration(this).divide(Duration.millisecondFactors.DAYS).valueOf()) % Duration.SECOND_UNITS.DAYS);
|
|
60
|
+
}
|
|
61
|
+
getHours() {
|
|
62
|
+
return new NumberValueObject_1.NumberValueObject(Math.floor(new Duration(this).divide(Duration.millisecondFactors.HOURS).valueOf()) % Duration.SECOND_UNITS.HOURS);
|
|
63
|
+
}
|
|
64
|
+
getMinutes() {
|
|
65
|
+
return new NumberValueObject_1.NumberValueObject(Math.floor(new Duration(this)
|
|
66
|
+
.divide(Duration.millisecondFactors.MINUTES)
|
|
67
|
+
.valueOf()) % Duration.SECOND_UNITS.MINUTES);
|
|
68
|
+
}
|
|
69
|
+
getSeconds() {
|
|
70
|
+
return new NumberValueObject_1.NumberValueObject(Math.floor(new Duration(this)
|
|
71
|
+
.divide(Duration.millisecondFactors.SECONDS)
|
|
72
|
+
.valueOf()) % Duration.SECOND_UNITS.MINUTES);
|
|
73
|
+
}
|
|
74
|
+
getMilliseconds() {
|
|
75
|
+
return new NumberValueObject_1.NumberValueObject(Math.floor(new Duration(this).valueOf()) % Duration.MILLISECOND_FACTOR);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
exports.Duration = Duration;
|
|
79
|
+
//# sourceMappingURL=Duration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Duration.js","sourceRoot":"","sources":["../../../../src/value-objects/time/Duration.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { StringValueObject } from '../StringValueObject';
|
|
2
|
+
export declare class Hour extends StringValueObject {
|
|
3
|
+
private readonly minutes;
|
|
4
|
+
private readonly hours;
|
|
5
|
+
private static addTrailZero;
|
|
6
|
+
constructor(value: string);
|
|
7
|
+
constructor(value: number, minutes?: number);
|
|
8
|
+
addMinutes(minutes: number): Hour;
|
|
9
|
+
diffInMinutes(other: Hour): number;
|
|
10
|
+
getMinutes(): number;
|
|
11
|
+
getHours(): number;
|
|
12
|
+
isGreaterThan(hour: Hour): boolean;
|
|
13
|
+
isLessThan(hour: Hour): boolean;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=Hour.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Hour.d.ts","sourceRoot":"","sources":["../../../../src/value-objects/time/Hour.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,qBAAa,IAAK,SAAQ,iBAAiB;IACzC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,MAAM,CAAC,YAAY;gBAIf,KAAK,EAAE,MAAM;gBACb,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;IAiCpC,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAkBjC,aAAa,CAAC,KAAK,EAAE,IAAI,GAAG,MAAM;IAiBlC,UAAU,IAAI,MAAM;IAIpB,QAAQ,IAAI,MAAM;IAIlB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;IAQlC,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;CAOvC"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Hour = void 0;
|
|
4
|
+
const InvalidHourError_1 = require("../../errors/InvalidHourError");
|
|
5
|
+
const InvalidMinutesError_1 = require("../../errors/InvalidMinutesError");
|
|
6
|
+
const Assert_1 = require("../../patterns/Assert");
|
|
7
|
+
const StringValueObject_1 = require("../StringValueObject");
|
|
8
|
+
class Hour extends StringValueObject_1.StringValueObject {
|
|
9
|
+
minutes;
|
|
10
|
+
hours;
|
|
11
|
+
static addTrailZero(value) {
|
|
12
|
+
return Number(value) < 10 ? `0${Number(value)}` : value;
|
|
13
|
+
}
|
|
14
|
+
constructor(value, minutes) {
|
|
15
|
+
let parsedHours;
|
|
16
|
+
let parsedMinutes;
|
|
17
|
+
if (typeof value === 'number' && minutes !== undefined) {
|
|
18
|
+
(0, Assert_1.assert)(Number(value) >= 0 && Number(value) <= 23, new InvalidHourError_1.InvalidHourError());
|
|
19
|
+
(0, Assert_1.assert)(Number(minutes) >= 0 && Number(minutes) <= 59, new InvalidMinutesError_1.InvalidMinutesError());
|
|
20
|
+
parsedHours = Hour.addTrailZero(value.toString());
|
|
21
|
+
parsedMinutes = Hour.addTrailZero(minutes.toString());
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
(0, Assert_1.assert)(typeof value === 'string', new InvalidHourError_1.InvalidHourError());
|
|
25
|
+
(0, Assert_1.assert)(value.includes(':'), new InvalidHourError_1.InvalidHourError());
|
|
26
|
+
const [hours, minutes] = value.split(':');
|
|
27
|
+
(0, Assert_1.assert)(Number(hours) >= 0 && Number(hours) <= 23, new InvalidHourError_1.InvalidHourError());
|
|
28
|
+
(0, Assert_1.assert)(Number(minutes) >= 0 && Number(minutes) <= 59, new InvalidMinutesError_1.InvalidMinutesError());
|
|
29
|
+
parsedHours = Hour.addTrailZero(hours);
|
|
30
|
+
parsedMinutes = Hour.addTrailZero(minutes);
|
|
31
|
+
}
|
|
32
|
+
super(`${parsedHours}:${parsedMinutes}`);
|
|
33
|
+
this.hours = parsedHours;
|
|
34
|
+
this.minutes = parsedMinutes;
|
|
35
|
+
}
|
|
36
|
+
addMinutes(minutes) {
|
|
37
|
+
const totalMinutes = Number(this.minutes) + minutes;
|
|
38
|
+
let newHour = Number(this.hours) + Math.floor(totalMinutes / 60);
|
|
39
|
+
let newMinutes = totalMinutes % 60;
|
|
40
|
+
if (newHour > 23) {
|
|
41
|
+
newHour = newHour - 24;
|
|
42
|
+
}
|
|
43
|
+
else if (newHour < 0) {
|
|
44
|
+
newHour = 24 + newHour;
|
|
45
|
+
}
|
|
46
|
+
if (newMinutes < 0) {
|
|
47
|
+
newMinutes = 60 + newMinutes;
|
|
48
|
+
}
|
|
49
|
+
return new Hour(`${newHour}:${newMinutes}`);
|
|
50
|
+
}
|
|
51
|
+
diffInMinutes(other) {
|
|
52
|
+
let endHour = Number(other.hours);
|
|
53
|
+
if (other.hours < this.hours ||
|
|
54
|
+
(other.hours === this.hours && other.minutes < this.minutes)) {
|
|
55
|
+
endHour += 24;
|
|
56
|
+
}
|
|
57
|
+
const totalMinutes = (endHour - Number(this.hours)) * 60 +
|
|
58
|
+
(Number(other.minutes) - Number(this.minutes));
|
|
59
|
+
return totalMinutes;
|
|
60
|
+
}
|
|
61
|
+
getMinutes() {
|
|
62
|
+
return Number(this.minutes);
|
|
63
|
+
}
|
|
64
|
+
getHours() {
|
|
65
|
+
return Number(this.hours);
|
|
66
|
+
}
|
|
67
|
+
isGreaterThan(hour) {
|
|
68
|
+
if (this.hours === hour.hours) {
|
|
69
|
+
return Number(this.minutes) > Number(hour.minutes);
|
|
70
|
+
}
|
|
71
|
+
return Number(this.hours) > Number(hour.hours);
|
|
72
|
+
}
|
|
73
|
+
isLessThan(hour) {
|
|
74
|
+
if (this.hours === hour.hours) {
|
|
75
|
+
return Number(this.minutes) < Number(hour.minutes);
|
|
76
|
+
}
|
|
77
|
+
return Number(this.hours) < Number(hour.hours);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
exports.Hour = Hour;
|
|
81
|
+
//# sourceMappingURL=Hour.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Hour.js","sourceRoot":"","sources":["../../../../src/value-objects/time/Hour.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Enum } from '../Enum';
|
|
2
|
+
export declare class Month extends Enum<number> {
|
|
3
|
+
static readonly JANUARY: Month;
|
|
4
|
+
static readonly FEBRUARY: Month;
|
|
5
|
+
static readonly MARCH: Month;
|
|
6
|
+
static readonly APRIL: Month;
|
|
7
|
+
static readonly MAY: Month;
|
|
8
|
+
static readonly JUNE: Month;
|
|
9
|
+
static readonly JULY: Month;
|
|
10
|
+
static readonly AUGUST: Month;
|
|
11
|
+
static readonly SEPTEMBER: Month;
|
|
12
|
+
static readonly OCTOBER: Month;
|
|
13
|
+
static readonly NOVEMBER: Month;
|
|
14
|
+
static readonly DECEMBER: Month;
|
|
15
|
+
getValues(): number[];
|
|
16
|
+
getIndex(): number;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=Month.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Month.d.ts","sourceRoot":"","sources":["../../../../src/value-objects/time/Month.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAiB/B,qBAAa,KAAM,SAAQ,IAAI,CAAC,MAAM,CAAC;IACrC,gBAAuB,OAAO,QAAgC;IAC9D,gBAAuB,QAAQ,QAAiC;IAChE,gBAAuB,KAAK,QAA8B;IAC1D,gBAAuB,KAAK,QAA8B;IAC1D,gBAAuB,GAAG,QAA4B;IACtD,gBAAuB,IAAI,QAA6B;IACxD,gBAAuB,IAAI,QAA6B;IACxD,gBAAuB,MAAM,QAA+B;IAC5D,gBAAuB,SAAS,QAAkC;IAClE,gBAAuB,OAAO,QAAgC;IAC9D,gBAAuB,QAAQ,QAAiC;IAChE,gBAAuB,QAAQ,QAAiC;IAEzD,SAAS,IAAI,MAAM,EAAE;IAIrB,QAAQ,IAAI,MAAM;CAG1B"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Month = void 0;
|
|
4
|
+
const Enum_1 = require("../Enum");
|
|
5
|
+
var MonthEnum;
|
|
6
|
+
(function (MonthEnum) {
|
|
7
|
+
MonthEnum[MonthEnum["JANUARY"] = 1] = "JANUARY";
|
|
8
|
+
MonthEnum[MonthEnum["FEBRUARY"] = 2] = "FEBRUARY";
|
|
9
|
+
MonthEnum[MonthEnum["MARCH"] = 3] = "MARCH";
|
|
10
|
+
MonthEnum[MonthEnum["APRIL"] = 4] = "APRIL";
|
|
11
|
+
MonthEnum[MonthEnum["MAY"] = 5] = "MAY";
|
|
12
|
+
MonthEnum[MonthEnum["JUNE"] = 6] = "JUNE";
|
|
13
|
+
MonthEnum[MonthEnum["JULY"] = 7] = "JULY";
|
|
14
|
+
MonthEnum[MonthEnum["AUGUST"] = 8] = "AUGUST";
|
|
15
|
+
MonthEnum[MonthEnum["SEPTEMBER"] = 9] = "SEPTEMBER";
|
|
16
|
+
MonthEnum[MonthEnum["OCTOBER"] = 10] = "OCTOBER";
|
|
17
|
+
MonthEnum[MonthEnum["NOVEMBER"] = 11] = "NOVEMBER";
|
|
18
|
+
MonthEnum[MonthEnum["DECEMBER"] = 12] = "DECEMBER";
|
|
19
|
+
})(MonthEnum || (MonthEnum = {}));
|
|
20
|
+
class Month extends Enum_1.Enum {
|
|
21
|
+
static JANUARY = new Month(MonthEnum.JANUARY);
|
|
22
|
+
static FEBRUARY = new Month(MonthEnum.FEBRUARY);
|
|
23
|
+
static MARCH = new Month(MonthEnum.MARCH);
|
|
24
|
+
static APRIL = new Month(MonthEnum.APRIL);
|
|
25
|
+
static MAY = new Month(MonthEnum.MAY);
|
|
26
|
+
static JUNE = new Month(MonthEnum.JUNE);
|
|
27
|
+
static JULY = new Month(MonthEnum.JULY);
|
|
28
|
+
static AUGUST = new Month(MonthEnum.AUGUST);
|
|
29
|
+
static SEPTEMBER = new Month(MonthEnum.SEPTEMBER);
|
|
30
|
+
static OCTOBER = new Month(MonthEnum.OCTOBER);
|
|
31
|
+
static NOVEMBER = new Month(MonthEnum.NOVEMBER);
|
|
32
|
+
static DECEMBER = new Month(MonthEnum.DECEMBER);
|
|
33
|
+
getValues() {
|
|
34
|
+
return Object.values(MonthEnum);
|
|
35
|
+
}
|
|
36
|
+
getIndex() {
|
|
37
|
+
return Number(this.valueOf()) - 1;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
exports.Month = Month;
|
|
41
|
+
//# sourceMappingURL=Month.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Month.js","sourceRoot":"","sources":["../../../../src/value-objects/time/Month.ts"],"names":[],"mappings":";;;AAAA,kCAA+B;AAE/B,IAAK,SAaJ;AAbD,WAAK,SAAS;IACZ,+CAAW,CAAA;IACX,iDAAY,CAAA;IACZ,2CAAS,CAAA;IACT,2CAAS,CAAA;IACT,uCAAO,CAAA;IACP,yCAAQ,CAAA;IACR,yCAAQ,CAAA;IACR,6CAAU,CAAA;IACV,mDAAa,CAAA;IACb,gDAAY,CAAA;IACZ,kDAAa,CAAA;IACb,kDAAa,CAAA;AACf,CAAC,EAbI,SAAS,KAAT,SAAS,QAab;AAED,MAAa,KAAM,SAAQ,WAAY;IAC9B,MAAM,CAAU,OAAO,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACvD,MAAM,CAAU,QAAQ,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACzD,MAAM,CAAU,KAAK,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACnD,MAAM,CAAU,KAAK,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACnD,MAAM,CAAU,GAAG,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC/C,MAAM,CAAU,IAAI,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,CAAU,IAAI,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,CAAU,MAAM,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACrD,MAAM,CAAU,SAAS,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAC3D,MAAM,CAAU,OAAO,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACvD,MAAM,CAAU,QAAQ,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACzD,MAAM,CAAU,QAAQ,GAAG,IAAI,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAEzD,SAAS;QACd,OAAO,MAAM,CAAC,MAAM,CAAC,SAAS,CAAa,CAAC;IAC9C,CAAC;IAEM,QAAQ;QACb,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC;IACpC,CAAC;;AApBH,sBAqBC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ValueObject } from '../ValueObject';
|
|
2
|
+
import { Month } from './Month';
|
|
3
|
+
import { Timestamp } from './Timestamp';
|
|
4
|
+
import { TimestampInterval } from './TimestampInterval';
|
|
5
|
+
import { Year } from './Year';
|
|
6
|
+
export declare class MonthOfYear extends ValueObject<string> {
|
|
7
|
+
private readonly month;
|
|
8
|
+
private readonly year;
|
|
9
|
+
static fromTimestamp(timestamp: Timestamp): MonthOfYear;
|
|
10
|
+
static fromString(value: string): MonthOfYear;
|
|
11
|
+
constructor(month: number | Month, year: number | Year);
|
|
12
|
+
getMonth(): Month;
|
|
13
|
+
getYear(): Year;
|
|
14
|
+
getNumberOfDays(): number;
|
|
15
|
+
getTimestampInterval(): TimestampInterval;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=MonthOfYear.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MonthOfYear.d.ts","sourceRoot":"","sources":["../../../../src/value-objects/time/MonthOfYear.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,qBAAa,WAAY,SAAQ,WAAW,CAAC,MAAM,CAAC;IAClD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAO;WAEd,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,WAAW;WAIhD,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW;gBAMxC,KAAK,EAAE,MAAM,GAAG,KAAK,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAU/C,QAAQ,IAAI,KAAK;IAIjB,OAAO,IAAI,IAAI;IAIf,eAAe,IAAI,MAAM;IAIzB,oBAAoB,IAAI,iBAAiB;CASjD"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MonthOfYear = void 0;
|
|
4
|
+
const ValueObject_1 = require("../ValueObject");
|
|
5
|
+
const Month_1 = require("./Month");
|
|
6
|
+
const Timestamp_1 = require("./Timestamp");
|
|
7
|
+
const TimestampInterval_1 = require("./TimestampInterval");
|
|
8
|
+
const Year_1 = require("./Year");
|
|
9
|
+
class MonthOfYear extends ValueObject_1.ValueObject {
|
|
10
|
+
month;
|
|
11
|
+
year;
|
|
12
|
+
static fromTimestamp(timestamp) {
|
|
13
|
+
return new MonthOfYear(timestamp.getMonth(), timestamp.getYear());
|
|
14
|
+
}
|
|
15
|
+
static fromString(value) {
|
|
16
|
+
const [year, month] = value.split('/').map(Number);
|
|
17
|
+
return new MonthOfYear(month, year);
|
|
18
|
+
}
|
|
19
|
+
constructor(month, year) {
|
|
20
|
+
super(year.valueOf().toString() +
|
|
21
|
+
'/' +
|
|
22
|
+
month.valueOf().toString().padStart(2, '0'));
|
|
23
|
+
this.month = new Month_1.Month(month.valueOf());
|
|
24
|
+
this.year = new Year_1.Year(year.valueOf());
|
|
25
|
+
}
|
|
26
|
+
getMonth() {
|
|
27
|
+
return new Month_1.Month(this.month.valueOf());
|
|
28
|
+
}
|
|
29
|
+
getYear() {
|
|
30
|
+
return new Year_1.Year(this.year);
|
|
31
|
+
}
|
|
32
|
+
getNumberOfDays() {
|
|
33
|
+
return new Date(this.year.valueOf(), this.month.valueOf(), 0).getDate();
|
|
34
|
+
}
|
|
35
|
+
getTimestampInterval() {
|
|
36
|
+
const firstMonthDay = '01';
|
|
37
|
+
const month = this.month.valueOf().toString().padStart(2, '0');
|
|
38
|
+
const lastDay = this.getNumberOfDays().toString();
|
|
39
|
+
const startDate = new Timestamp_1.Timestamp(`${this.year}-${month}-${firstMonthDay}`);
|
|
40
|
+
const endDate = new Timestamp_1.Timestamp(`${this.year}-${month}-${lastDay}`);
|
|
41
|
+
return new TimestampInterval_1.TimestampInterval(startDate, endDate);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
exports.MonthOfYear = MonthOfYear;
|
|
45
|
+
//# sourceMappingURL=MonthOfYear.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MonthOfYear.js","sourceRoot":"","sources":["../../../../src/value-objects/time/MonthOfYear.ts"],"names":[],"mappings":";;;AAAA,gDAA6C;AAC7C,mCAAgC;AAChC,2CAAwC;AACxC,2DAAwD;AACxD,iCAA8B;AAE9B,MAAa,WAAY,SAAQ,yBAAmB;IACjC,KAAK,CAAQ;IACb,IAAI,CAAO;IAErB,MAAM,CAAC,aAAa,CAAC,SAAoB;QAC9C,OAAO,IAAI,WAAW,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC;IACpE,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,KAAa;QACpC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAEnD,OAAO,IAAI,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACtC,CAAC;IAED,YAAY,KAAqB,EAAE,IAAmB;QACpD,KAAK,CACH,IAAI,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YACvB,GAAG;YACH,KAAK,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAC9C,CAAC;QACF,IAAI,CAAC,KAAK,GAAG,IAAI,aAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,IAAI,GAAG,IAAI,WAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IACvC,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,aAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IACzC,CAAC;IAEM,OAAO;QACZ,OAAO,IAAI,WAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAEM,eAAe;QACpB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IAC1E,CAAC;IAEM,oBAAoB;QACzB,MAAM,aAAa,GAAG,IAAI,CAAC;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,QAAQ,EAAE,CAAC;QAClD,MAAM,SAAS,GAAG,IAAI,qBAAS,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,KAAK,IAAI,aAAa,EAAE,CAAC,CAAC;QAC1E,MAAM,OAAO,GAAG,IAAI,qBAAS,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,KAAK,IAAI,OAAO,EAAE,CAAC,CAAC;QAElE,OAAO,IAAI,qCAAiB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;CACF;AA7CD,kCA6CC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { NumberValueObject } from '../NumberValueObject';
|
|
2
|
+
import { ValueObject } from '../ValueObject';
|
|
3
|
+
import { CalendarDay } from './CalendarDay';
|
|
4
|
+
import { Day } from './Day';
|
|
5
|
+
import { Duration } from './Duration';
|
|
6
|
+
import { Month } from './Month';
|
|
7
|
+
import { MonthOfYear } from './MonthOfYear';
|
|
8
|
+
import { Year } from './Year';
|
|
9
|
+
type TimestampValue = number | Date | Timestamp | string;
|
|
10
|
+
export declare class Timestamp extends ValueObject<number> {
|
|
11
|
+
private static readonly FACTORS;
|
|
12
|
+
private static valueMilliseconds;
|
|
13
|
+
static new(value: TimestampValue): Timestamp;
|
|
14
|
+
static now(): Timestamp;
|
|
15
|
+
static fromSeconds(seconds: number | NumberValueObject): Timestamp;
|
|
16
|
+
constructor(value?: TimestampValue);
|
|
17
|
+
toExactHour(): Timestamp;
|
|
18
|
+
toMilliseconds(): number;
|
|
19
|
+
toSeconds(): number;
|
|
20
|
+
toDate(): Date;
|
|
21
|
+
toString(): string;
|
|
22
|
+
isEqual(other: Timestamp): boolean;
|
|
23
|
+
isBefore(other: Timestamp): boolean;
|
|
24
|
+
isAfter(other: Timestamp): boolean;
|
|
25
|
+
isBeforeOrEqual(other: Timestamp): boolean;
|
|
26
|
+
isAfterOrEqual(other: Timestamp): boolean;
|
|
27
|
+
addMilliseconds(milliseconds: number | NumberValueObject): Timestamp;
|
|
28
|
+
addSeconds(seconds: number | NumberValueObject): Timestamp;
|
|
29
|
+
addMinutes(minutes: number | NumberValueObject): Timestamp;
|
|
30
|
+
addHours(hours: number | NumberValueObject): Timestamp;
|
|
31
|
+
addDays(days: number | NumberValueObject): Timestamp;
|
|
32
|
+
addWeeks(weeks: number | NumberValueObject): Timestamp;
|
|
33
|
+
addMonths(months: number | NumberValueObject): Timestamp;
|
|
34
|
+
addYears(years: number | NumberValueObject): Timestamp;
|
|
35
|
+
addDuration(duration: Duration): Timestamp;
|
|
36
|
+
isSameDay(other: Timestamp): boolean;
|
|
37
|
+
isSameMonth(other: Timestamp): boolean;
|
|
38
|
+
isSameYear(other: Timestamp): boolean;
|
|
39
|
+
getCalendarDay(): CalendarDay;
|
|
40
|
+
getDay(): Day;
|
|
41
|
+
getMonth(): Month;
|
|
42
|
+
getYear(): Year;
|
|
43
|
+
getHours(): number;
|
|
44
|
+
getMinutes(): number;
|
|
45
|
+
getSeconds(): number;
|
|
46
|
+
getMilliseconds(): number;
|
|
47
|
+
getDayOfWeek(): number;
|
|
48
|
+
getMonthOfYear(): MonthOfYear;
|
|
49
|
+
}
|
|
50
|
+
export {};
|
|
51
|
+
//# sourceMappingURL=Timestamp.d.ts.map
|