@bgord/tools 1.4.7 → 1.4.9
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/age-years.vo.d.ts +12 -0
- package/dist/age-years.vo.d.ts.map +1 -0
- package/dist/age-years.vo.js +7 -0
- package/dist/age-years.vo.js.map +1 -0
- package/dist/age.vo.d.ts +29 -0
- package/dist/age.vo.d.ts.map +1 -0
- package/dist/age.vo.js +52 -0
- package/dist/age.vo.js.map +1 -0
- package/dist/api-key.vo.d.ts +8 -0
- package/dist/api-key.vo.d.ts.map +1 -0
- package/dist/api-key.vo.js +8 -0
- package/dist/api-key.vo.js.map +1 -0
- package/dist/basename.vo.d.ts +13 -0
- package/dist/basename.vo.d.ts.map +1 -0
- package/dist/basename.vo.js +23 -0
- package/dist/basename.vo.js.map +1 -0
- package/dist/batch.d.ts +3 -0
- package/dist/batch.d.ts.map +1 -0
- package/dist/batch.js +4 -0
- package/dist/batch.js.map +1 -0
- package/dist/date-calculator.service.d.ts +11 -0
- package/dist/date-calculator.service.d.ts.map +1 -0
- package/dist/date-calculator.service.js +13 -0
- package/dist/date-calculator.service.js.map +1 -0
- package/dist/date-formatter.service.d.ts +10 -0
- package/dist/date-formatter.service.d.ts.map +1 -0
- package/dist/date-formatter.service.js +16 -0
- package/dist/date-formatter.service.js.map +1 -0
- package/dist/date-range.vo.d.ts +22 -0
- package/dist/date-range.vo.d.ts.map +1 -0
- package/dist/date-range.vo.js +36 -0
- package/dist/date-range.vo.js.map +1 -0
- package/dist/day-iso-id.vo.d.ts +10 -0
- package/dist/day-iso-id.vo.d.ts.map +1 -0
- package/dist/day-iso-id.vo.js +13 -0
- package/dist/day-iso-id.vo.js.map +1 -0
- package/dist/day.vo.d.ts +17 -0
- package/dist/day.vo.d.ts.map +1 -0
- package/dist/day.vo.js +44 -0
- package/dist/day.vo.js.map +1 -0
- package/dist/directory-path-absolute.vo.d.ts +13 -0
- package/dist/directory-path-absolute.vo.d.ts.map +1 -0
- package/dist/directory-path-absolute.vo.js +21 -0
- package/dist/directory-path-absolute.vo.js.map +1 -0
- package/dist/directory-path-relative.vo.d.ts +13 -0
- package/dist/directory-path-relative.vo.d.ts.map +1 -0
- package/dist/directory-path-relative.vo.js +18 -0
- package/dist/directory-path-relative.vo.js.map +1 -0
- package/dist/distance-value.vo.d.ts +8 -0
- package/dist/distance-value.vo.d.ts.map +1 -0
- package/dist/distance-value.vo.js +6 -0
- package/dist/distance-value.vo.js.map +1 -0
- package/dist/distance.vo.d.ts +24 -0
- package/dist/distance.vo.d.ts.map +1 -0
- package/dist/distance.vo.js +54 -0
- package/dist/distance.vo.js.map +1 -0
- package/dist/division-factor.vo.d.ts +8 -0
- package/dist/division-factor.vo.d.ts.map +1 -0
- package/dist/division-factor.vo.js +6 -0
- package/dist/division-factor.vo.js.map +1 -0
- package/dist/dll.service.d.ts +30 -0
- package/dist/dll.service.d.ts.map +1 -0
- package/dist/dll.service.js +149 -0
- package/dist/dll.service.js.map +1 -0
- package/dist/duration-ms.vo.d.ts +7 -0
- package/dist/duration-ms.vo.d.ts.map +1 -0
- package/dist/duration-ms.vo.js +6 -0
- package/dist/duration-ms.vo.js.map +1 -0
- package/dist/duration.service.d.ts +38 -0
- package/dist/duration.service.d.ts.map +1 -0
- package/dist/duration.service.js +88 -0
- package/dist/duration.service.js.map +1 -0
- package/dist/email-mask.service.d.ts +5 -0
- package/dist/email-mask.service.d.ts.map +1 -0
- package/dist/email-mask.service.js +13 -0
- package/dist/email-mask.service.js.map +1 -0
- package/dist/email.vo.d.ts +7 -0
- package/dist/email.vo.d.ts.map +1 -0
- package/dist/email.vo.js +5 -0
- package/dist/email.vo.js.map +1 -0
- package/dist/etags.vo.d.ts +24 -0
- package/dist/etags.vo.d.ts.map +1 -0
- package/dist/etags.vo.js +38 -0
- package/dist/etags.vo.js.map +1 -0
- package/dist/extension.vo.d.ts +10 -0
- package/dist/extension.vo.d.ts.map +1 -0
- package/dist/extension.vo.js +16 -0
- package/dist/extension.vo.js.map +1 -0
- package/dist/feature-flag-value.vo.d.ts +11 -0
- package/dist/feature-flag-value.vo.d.ts.map +1 -0
- package/dist/feature-flag-value.vo.js +9 -0
- package/dist/feature-flag-value.vo.js.map +1 -0
- package/dist/feature-flag.vo.d.ts +6 -0
- package/dist/feature-flag.vo.d.ts.map +1 -0
- package/dist/feature-flag.vo.js +10 -0
- package/dist/feature-flag.vo.js.map +1 -0
- package/dist/file-path-absolute-schema.vo.d.ts +18 -0
- package/dist/file-path-absolute-schema.vo.d.ts.map +1 -0
- package/dist/file-path-absolute-schema.vo.js +21 -0
- package/dist/file-path-absolute-schema.vo.js.map +1 -0
- package/dist/file-path-relative-schema.vo.d.ts +18 -0
- package/dist/file-path-relative-schema.vo.d.ts.map +1 -0
- package/dist/file-path-relative-schema.vo.js +21 -0
- package/dist/file-path-relative-schema.vo.js.map +1 -0
- package/dist/file-path.vo.d.ts +32 -0
- package/dist/file-path.vo.d.ts.map +1 -0
- package/dist/file-path.vo.js +82 -0
- package/dist/file-path.vo.js.map +1 -0
- package/dist/filename-affix.vo.d.ts +14 -0
- package/dist/filename-affix.vo.d.ts.map +1 -0
- package/dist/filename-affix.vo.js +18 -0
- package/dist/filename-affix.vo.js.map +1 -0
- package/dist/filename-from-string.vo.d.ts +11 -0
- package/dist/filename-from-string.vo.d.ts.map +1 -0
- package/dist/filename-from-string.vo.js +18 -0
- package/dist/filename-from-string.vo.js.map +1 -0
- package/dist/filename.vo.d.ts +25 -0
- package/dist/filename.vo.d.ts.map +1 -0
- package/dist/filename.vo.js +70 -0
- package/dist/filename.vo.js.map +1 -0
- package/dist/height-milimiters.vo.d.ts +8 -0
- package/dist/height-milimiters.vo.d.ts.map +1 -0
- package/dist/height-milimiters.vo.js +9 -0
- package/dist/height-milimiters.vo.js.map +1 -0
- package/dist/height.vo.d.ts +22 -0
- package/dist/height.vo.d.ts.map +1 -0
- package/dist/height.vo.js +52 -0
- package/dist/height.vo.js.map +1 -0
- package/dist/hour-value.vo.d.ts +8 -0
- package/dist/hour-value.vo.d.ts.map +1 -0
- package/dist/hour-value.vo.js +6 -0
- package/dist/hour-value.vo.js.map +1 -0
- package/dist/hour.vo.d.ts +21 -0
- package/dist/hour.vo.d.ts.map +1 -0
- package/dist/hour.vo.js +49 -0
- package/dist/hour.vo.js.map +1 -0
- package/dist/iban-mask.service.d.ts +5 -0
- package/dist/iban-mask.service.d.ts.map +1 -0
- package/dist/iban-mask.service.js +13 -0
- package/dist/iban-mask.service.js.map +1 -0
- package/dist/iban-schema.vo.d.ts +8 -0
- package/dist/iban-schema.vo.d.ts.map +1 -0
- package/dist/iban-schema.vo.js +8 -0
- package/dist/iban-schema.vo.js.map +1 -0
- package/dist/iban.vo.d.ts +10 -0
- package/dist/iban.vo.d.ts.map +1 -0
- package/dist/iban.vo.js +24 -0
- package/dist/iban.vo.js.map +1 -0
- package/dist/image.vo.d.ts +14 -0
- package/dist/image.vo.d.ts.map +1 -0
- package/dist/image.vo.js +11 -0
- package/dist/image.vo.js.map +1 -0
- package/dist/index.d.ts +111 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +111 -0
- package/dist/index.js.map +1 -0
- package/dist/int.vo.d.ts +9 -0
- package/dist/int.vo.d.ts.map +1 -0
- package/dist/int.vo.js +16 -0
- package/dist/int.vo.js.map +1 -0
- package/dist/integer-non-negative.vo.d.ts +8 -0
- package/dist/integer-non-negative.vo.d.ts.map +1 -0
- package/dist/integer-non-negative.vo.js +9 -0
- package/dist/integer-non-negative.vo.js.map +1 -0
- package/dist/integer-positive.vo.d.ts +8 -0
- package/dist/integer-positive.vo.d.ts.map +1 -0
- package/dist/integer-positive.vo.js +6 -0
- package/dist/integer-positive.vo.js.map +1 -0
- package/dist/integer.vo.d.ts +7 -0
- package/dist/integer.vo.d.ts.map +1 -0
- package/dist/integer.vo.js +5 -0
- package/dist/integer.vo.js.map +1 -0
- package/dist/language.vo.d.ts +8 -0
- package/dist/language.vo.d.ts.map +1 -0
- package/dist/language.vo.js +6 -0
- package/dist/language.vo.js.map +1 -0
- package/dist/linear-regression.service.d.ts +28 -0
- package/dist/linear-regression.service.d.ts.map +1 -0
- package/dist/linear-regression.service.js +59 -0
- package/dist/linear-regression.service.js.map +1 -0
- package/dist/mean.service.d.ts +9 -0
- package/dist/mean.service.d.ts.map +1 -0
- package/dist/mean.service.js +14 -0
- package/dist/mean.service.js.map +1 -0
- package/dist/mime-registry-entry.vo.d.ts +8 -0
- package/dist/mime-registry-entry.vo.d.ts.map +1 -0
- package/dist/mime-registry-entry.vo.js +9 -0
- package/dist/mime-registry-entry.vo.js.map +1 -0
- package/dist/mime-registry.service.d.ts +17 -0
- package/dist/mime-registry.service.d.ts.map +1 -0
- package/dist/mime-registry.service.js +32 -0
- package/dist/mime-registry.service.js.map +1 -0
- package/dist/mime-value.vo.d.ts +8 -0
- package/dist/mime-value.vo.d.ts.map +1 -0
- package/dist/mime-value.vo.js +8 -0
- package/dist/mime-value.vo.js.map +1 -0
- package/dist/mime.vo.d.ts +13 -0
- package/dist/mime.vo.d.ts.map +1 -0
- package/dist/mime.vo.js +27 -0
- package/dist/mime.vo.js.map +1 -0
- package/dist/mimes.d.ts +14 -0
- package/dist/mimes.d.ts.map +1 -0
- package/dist/mimes.js +20 -0
- package/dist/mimes.js.map +1 -0
- package/dist/min-max-scaler.service.d.ts +47 -0
- package/dist/min-max-scaler.service.d.ts.map +1 -0
- package/dist/min-max-scaler.service.js +62 -0
- package/dist/min-max-scaler.service.js.map +1 -0
- package/dist/minute-value.vo.d.ts +8 -0
- package/dist/minute-value.vo.d.ts.map +1 -0
- package/dist/minute-value.vo.js +6 -0
- package/dist/minute-value.vo.js.map +1 -0
- package/dist/minute.vo.d.ts +21 -0
- package/dist/minute.vo.d.ts.map +1 -0
- package/dist/minute.vo.js +49 -0
- package/dist/minute.vo.js.map +1 -0
- package/dist/money-amount.vo.d.ts +8 -0
- package/dist/money-amount.vo.d.ts.map +1 -0
- package/dist/money-amount.vo.js +6 -0
- package/dist/money-amount.vo.js.map +1 -0
- package/dist/money.vo.d.ts +27 -0
- package/dist/money.vo.d.ts.map +1 -0
- package/dist/money.vo.js +57 -0
- package/dist/money.vo.js.map +1 -0
- package/dist/month-iso-id.vo.d.ts +9 -0
- package/dist/month-iso-id.vo.d.ts.map +1 -0
- package/dist/month-iso-id.vo.js +15 -0
- package/dist/month-iso-id.vo.js.map +1 -0
- package/dist/month.vo.d.ts +17 -0
- package/dist/month.vo.d.ts.map +1 -0
- package/dist/month.vo.js +41 -0
- package/dist/month.vo.js.map +1 -0
- package/dist/multiplication-factor.vo.d.ts +8 -0
- package/dist/multiplication-factor.vo.d.ts.map +1 -0
- package/dist/multiplication-factor.vo.js +9 -0
- package/dist/multiplication-factor.vo.js.map +1 -0
- package/dist/noop.service.d.ts +3 -0
- package/dist/noop.service.d.ts.map +1 -0
- package/dist/noop.service.js +3 -0
- package/dist/noop.service.js.map +1 -0
- package/dist/object-key.vo.d.ts +12 -0
- package/dist/object-key.vo.d.ts.map +1 -0
- package/dist/object-key.vo.js +20 -0
- package/dist/object-key.vo.js.map +1 -0
- package/dist/outlier-detector.service.d.ts +10 -0
- package/dist/outlier-detector.service.d.ts.map +1 -0
- package/dist/outlier-detector.service.js +17 -0
- package/dist/outlier-detector.service.js.map +1 -0
- package/dist/package-version-schema.vo.d.ts +9 -0
- package/dist/package-version-schema.vo.d.ts.map +1 -0
- package/dist/package-version-schema.vo.js +11 -0
- package/dist/package-version-schema.vo.js.map +1 -0
- package/dist/package-version.vo.d.ts +23 -0
- package/dist/package-version.vo.d.ts.map +1 -0
- package/dist/package-version.vo.js +59 -0
- package/dist/package-version.vo.js.map +1 -0
- package/dist/pagination-page.vo.d.ts +7 -0
- package/dist/pagination-page.vo.d.ts.map +1 -0
- package/dist/pagination-page.vo.js +4 -0
- package/dist/pagination-page.vo.js.map +1 -0
- package/dist/pagination-skip.vo.d.ts +8 -0
- package/dist/pagination-skip.vo.d.ts.map +1 -0
- package/dist/pagination-skip.vo.js +4 -0
- package/dist/pagination-skip.vo.js.map +1 -0
- package/dist/pagination-take.vo.d.ts +8 -0
- package/dist/pagination-take.vo.d.ts.map +1 -0
- package/dist/pagination-take.vo.js +4 -0
- package/dist/pagination-take.vo.js.map +1 -0
- package/dist/pagination.service.d.ts +54 -0
- package/dist/pagination.service.d.ts.map +1 -0
- package/dist/pagination.service.js +45 -0
- package/dist/pagination.service.js.map +1 -0
- package/dist/percentage.service.d.ts +8 -0
- package/dist/percentage.service.d.ts.map +1 -0
- package/dist/percentage.service.js +10 -0
- package/dist/percentage.service.js.map +1 -0
- package/dist/population-standard-deviation.service.d.ts +8 -0
- package/dist/population-standard-deviation.service.d.ts.map +1 -0
- package/dist/population-standard-deviation.service.js +18 -0
- package/dist/population-standard-deviation.service.js.map +1 -0
- package/dist/quarter-iso-id.vo.d.ts +9 -0
- package/dist/quarter-iso-id.vo.d.ts.map +1 -0
- package/dist/quarter-iso-id.vo.js +8 -0
- package/dist/quarter-iso-id.vo.js.map +1 -0
- package/dist/quarter.vo.d.ts +13 -0
- package/dist/quarter.vo.d.ts.map +1 -0
- package/dist/quarter.vo.js +31 -0
- package/dist/quarter.vo.js.map +1 -0
- package/dist/random.service.d.ts +14 -0
- package/dist/random.service.d.ts.map +1 -0
- package/dist/random.service.js +14 -0
- package/dist/random.service.js.map +1 -0
- package/dist/rate-limiter.service.d.ts +18 -0
- package/dist/rate-limiter.service.d.ts.map +1 -0
- package/dist/rate-limiter.service.js +20 -0
- package/dist/rate-limiter.service.js.map +1 -0
- package/dist/relative-date.vo.d.ts +14 -0
- package/dist/relative-date.vo.d.ts.map +1 -0
- package/dist/relative-date.vo.js +15 -0
- package/dist/relative-date.vo.js.map +1 -0
- package/dist/reordering-item-position-value.vo.d.ts +7 -0
- package/dist/reordering-item-position-value.vo.d.ts.map +1 -0
- package/dist/reordering-item-position-value.vo.js +4 -0
- package/dist/reordering-item-position-value.vo.js.map +1 -0
- package/dist/reordering.service.d.ts +64 -0
- package/dist/reordering.service.d.ts.map +1 -0
- package/dist/reordering.service.js +136 -0
- package/dist/reordering.service.js.map +1 -0
- package/dist/repeat.d.ts +2 -0
- package/dist/repeat.d.ts.map +1 -0
- package/dist/repeat.js +4 -0
- package/dist/repeat.js.map +1 -0
- package/dist/revision-value.vo.d.ts +8 -0
- package/dist/revision-value.vo.d.ts.map +1 -0
- package/dist/revision-value.vo.js +4 -0
- package/dist/revision-value.vo.js.map +1 -0
- package/dist/revision.vo.d.ts +19 -0
- package/dist/revision.vo.d.ts.map +1 -0
- package/dist/revision.vo.js +37 -0
- package/dist/revision.vo.js.map +1 -0
- package/dist/rounding-decimal.strategy.d.ts +13 -0
- package/dist/rounding-decimal.strategy.d.ts.map +1 -0
- package/dist/rounding-decimal.strategy.js +15 -0
- package/dist/rounding-decimal.strategy.js.map +1 -0
- package/dist/rounding-down.strategy.d.ts +5 -0
- package/dist/rounding-down.strategy.d.ts.map +1 -0
- package/dist/rounding-down.strategy.js +6 -0
- package/dist/rounding-down.strategy.js.map +1 -0
- package/dist/rounding-to-nearest.strategy.d.ts +5 -0
- package/dist/rounding-to-nearest.strategy.d.ts.map +1 -0
- package/dist/rounding-to-nearest.strategy.js +6 -0
- package/dist/rounding-to-nearest.strategy.js.map +1 -0
- package/dist/rounding-up.strategy.d.ts +5 -0
- package/dist/rounding-up.strategy.d.ts.map +1 -0
- package/dist/rounding-up.strategy.js +6 -0
- package/dist/rounding-up.strategy.js.map +1 -0
- package/dist/rounding.strategy.d.ts +4 -0
- package/dist/rounding.strategy.d.ts.map +1 -0
- package/dist/rounding.strategy.js +2 -0
- package/dist/rounding.strategy.js.map +1 -0
- package/dist/size-bytes.vo.d.ts +7 -0
- package/dist/size-bytes.vo.d.ts.map +1 -0
- package/dist/size-bytes.vo.js +6 -0
- package/dist/size-bytes.vo.js.map +1 -0
- package/dist/size.vo.d.ts +42 -0
- package/dist/size.vo.d.ts.map +1 -0
- package/dist/size.vo.js +92 -0
- package/dist/size.vo.js.map +1 -0
- package/dist/slug.service.d.ts +5 -0
- package/dist/slug.service.d.ts.map +1 -0
- package/dist/slug.service.js +16 -0
- package/dist/slug.service.js.map +1 -0
- package/dist/sms-body.vo.d.ts +9 -0
- package/dist/sms-body.vo.d.ts.map +1 -0
- package/dist/sms-body.vo.js +10 -0
- package/dist/sms-body.vo.js.map +1 -0
- package/dist/sms-message.vo.d.ts +14 -0
- package/dist/sms-message.vo.d.ts.map +1 -0
- package/dist/sms-message.vo.js +14 -0
- package/dist/sms-message.vo.js.map +1 -0
- package/dist/sum.service.d.ts +5 -0
- package/dist/sum.service.d.ts.map +1 -0
- package/dist/sum.service.js +17 -0
- package/dist/sum.service.js.map +1 -0
- package/dist/telephone-number.vo.d.ts +8 -0
- package/dist/telephone-number.vo.d.ts.map +1 -0
- package/dist/telephone-number.vo.js +11 -0
- package/dist/telephone-number.vo.js.map +1 -0
- package/dist/thousands-separator.service.d.ts +5 -0
- package/dist/thousands-separator.service.d.ts.map +1 -0
- package/dist/thousands-separator.service.js +10 -0
- package/dist/thousands-separator.service.js.map +1 -0
- package/dist/time-zone-offset-value.vo.d.ts +9 -0
- package/dist/time-zone-offset-value.vo.d.ts.map +1 -0
- package/dist/time-zone-offset-value.vo.js +14 -0
- package/dist/time-zone-offset-value.vo.js.map +1 -0
- package/dist/timestamp-value.vo.d.ts +7 -0
- package/dist/timestamp-value.vo.d.ts.map +1 -0
- package/dist/timestamp-value.vo.js +6 -0
- package/dist/timestamp-value.vo.js.map +1 -0
- package/dist/timestamp.vo.d.ts +22 -0
- package/dist/timestamp.vo.d.ts.map +1 -0
- package/dist/timestamp.vo.js +55 -0
- package/dist/timestamp.vo.js.map +1 -0
- package/dist/timezone.vo.d.ts +10 -0
- package/dist/timezone.vo.d.ts.map +1 -0
- package/dist/timezone.vo.js +21 -0
- package/dist/timezone.vo.js.map +1 -0
- package/dist/ts-utils.d.ts +4 -0
- package/dist/ts-utils.d.ts.map +1 -0
- package/dist/ts-utils.js +2 -0
- package/dist/ts-utils.js.map +1 -0
- package/dist/url-with-slash.vo.d.ts +7 -0
- package/dist/url-with-slash.vo.d.ts.map +1 -0
- package/dist/url-with-slash.vo.js +6 -0
- package/dist/url-with-slash.vo.js.map +1 -0
- package/dist/url-without-slash.vo.d.ts +7 -0
- package/dist/url-without-slash.vo.d.ts.map +1 -0
- package/dist/url-without-slash.vo.js +6 -0
- package/dist/url-without-slash.vo.js.map +1 -0
- package/dist/visually-unambiguous-characters-generator.service.d.ts +5 -0
- package/dist/visually-unambiguous-characters-generator.service.d.ts.map +1 -0
- package/dist/visually-unambiguous-characters-generator.service.js +33 -0
- package/dist/visually-unambiguous-characters-generator.service.js.map +1 -0
- package/dist/week-iso-id.vo.d.ts +9 -0
- package/dist/week-iso-id.vo.d.ts.map +1 -0
- package/dist/week-iso-id.vo.js +20 -0
- package/dist/week-iso-id.vo.js.map +1 -0
- package/dist/week.vo.d.ts +17 -0
- package/dist/week.vo.d.ts.map +1 -0
- package/dist/week.vo.js +46 -0
- package/dist/week.vo.js.map +1 -0
- package/dist/weekday-iso-id.vo.d.ts +8 -0
- package/dist/weekday-iso-id.vo.d.ts.map +1 -0
- package/dist/weekday-iso-id.vo.js +6 -0
- package/dist/weekday-iso-id.vo.js.map +1 -0
- package/dist/weekday.vo.d.ts +29 -0
- package/dist/weekday.vo.d.ts.map +1 -0
- package/dist/weekday.vo.js +61 -0
- package/dist/weekday.vo.js.map +1 -0
- package/dist/weight-grams.vo.d.ts +8 -0
- package/dist/weight-grams.vo.d.ts.map +1 -0
- package/dist/weight-grams.vo.js +6 -0
- package/dist/weight-grams.vo.js.map +1 -0
- package/dist/weight.vo.d.ts +26 -0
- package/dist/weight.vo.d.ts.map +1 -0
- package/dist/weight.vo.js +66 -0
- package/dist/weight.vo.js.map +1 -0
- package/dist/year-iso-id.vo.d.ts +8 -0
- package/dist/year-iso-id.vo.d.ts.map +1 -0
- package/dist/year-iso-id.vo.js +8 -0
- package/dist/year-iso-id.vo.js.map +1 -0
- package/dist/year.vo.d.ts +19 -0
- package/dist/year.vo.d.ts.map +1 -0
- package/dist/year.vo.js +51 -0
- package/dist/year.vo.js.map +1 -0
- package/dist/z-score.service.d.ts +12 -0
- package/dist/z-score.service.d.ts.map +1 -0
- package/dist/z-score.service.js +20 -0
- package/dist/z-score.service.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"distance.vo.d.ts","sourceRoot":"","sources":["../src/distance.vo.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAG5D,eAAO,MAAM,aAAa;;CAA4E,CAAC;AAEvG,qBAAa,QAAQ;IAGC,OAAO,CAAC,QAAQ,CAAC,KAAK;IAF1C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAA6B;IAEzD,OAAO;IAEP,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,QAAQ;IAI9C,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,iBAAiB,GAAG,QAAQ;IAI7D,MAAM,CAAC,cAAc,CACnB,SAAS,EAAE,MAAM,EACjB,QAAQ,GAAE,gBAAkD,GAC3D,QAAQ;IAIX,MAAM,CAAC,SAAS,CACd,SAAS,EAAE,MAAM,EACjB,QAAQ,GAAE,gBAAkD,GAC3D,QAAQ;IAIX,GAAG,IAAI,iBAAiB;IAIxB,GAAG,CAAC,QAAQ,EAAE,QAAQ,GAAG,QAAQ;IAIjC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,QAAQ;IAOtC,MAAM,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO;IAIlC,YAAY,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO;IAIxC,aAAa,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO;IAIzC,MAAM,IAAI,OAAO;IAIjB,QAAQ,IAAI,MAAM;IAIlB,MAAM,IAAI,MAAM;CAGjB"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import * as v from "valibot";
|
|
2
|
+
import { DistanceValue } from "./distance-value.vo";
|
|
3
|
+
import { RoundingToNearestStrategy } from "./rounding-to-nearest.strategy";
|
|
4
|
+
export const DistanceError = { SubtractResultLessThanZero: "distance.subtract.result.less.than.zero" };
|
|
5
|
+
export class Distance {
|
|
6
|
+
value;
|
|
7
|
+
static ZERO = v.parse(DistanceValue, 0);
|
|
8
|
+
constructor(value) {
|
|
9
|
+
this.value = value;
|
|
10
|
+
}
|
|
11
|
+
static fromMeters(candidate) {
|
|
12
|
+
return new Distance(v.parse(DistanceValue, candidate));
|
|
13
|
+
}
|
|
14
|
+
static fromMetersSafe(candidate) {
|
|
15
|
+
return new Distance(candidate);
|
|
16
|
+
}
|
|
17
|
+
static fromKilometers(candidate, rounding = new RoundingToNearestStrategy()) {
|
|
18
|
+
return new Distance(v.parse(DistanceValue, rounding.round(candidate * 1000)));
|
|
19
|
+
}
|
|
20
|
+
static fromMiles(candidate, rounding = new RoundingToNearestStrategy()) {
|
|
21
|
+
return new Distance(v.parse(DistanceValue, rounding.round(candidate * 1_609.344)));
|
|
22
|
+
}
|
|
23
|
+
get() {
|
|
24
|
+
return this.value;
|
|
25
|
+
}
|
|
26
|
+
add(distance) {
|
|
27
|
+
return new Distance(v.parse(DistanceValue, this.value + distance.get()));
|
|
28
|
+
}
|
|
29
|
+
subtract(distance) {
|
|
30
|
+
const result = this.value - distance.get();
|
|
31
|
+
if (result < Distance.ZERO)
|
|
32
|
+
throw new Error(DistanceError.SubtractResultLessThanZero);
|
|
33
|
+
return new Distance(v.parse(DistanceValue, result));
|
|
34
|
+
}
|
|
35
|
+
equals(another) {
|
|
36
|
+
return this.value === another.get();
|
|
37
|
+
}
|
|
38
|
+
isLongerThan(another) {
|
|
39
|
+
return this.value > another.get();
|
|
40
|
+
}
|
|
41
|
+
isShorterThan(another) {
|
|
42
|
+
return this.value < another.get();
|
|
43
|
+
}
|
|
44
|
+
isZero() {
|
|
45
|
+
return this.value === Distance.ZERO;
|
|
46
|
+
}
|
|
47
|
+
toString() {
|
|
48
|
+
return this.value.toString();
|
|
49
|
+
}
|
|
50
|
+
toJSON() {
|
|
51
|
+
return this.value;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=distance.vo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"distance.vo.js","sourceRoot":"","sources":["../src/distance.vo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,aAAa,EAA0B,MAAM,qBAAqB,CAAC;AAE5E,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,0BAA0B,EAAE,yCAAyC,EAAE,CAAC;AAEvG,MAAM,OAAO,QAAQ;IAGkB;IAF7B,MAAM,CAAU,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;IAEzD,YAAqC,KAAwB;QAAxB,UAAK,GAAL,KAAK,CAAmB;IAAG,CAAC;IAEjE,MAAM,CAAC,UAAU,CAAC,SAAiB;QACjC,OAAO,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,SAA4B;QAChD,OAAO,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,cAAc,CACnB,SAAiB,EACjB,WAA6B,IAAI,yBAAyB,EAAE;QAE5D,OAAO,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,EAAE,QAAQ,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAChF,CAAC;IAED,MAAM,CAAC,SAAS,CACd,SAAiB,EACjB,WAA6B,IAAI,yBAAyB,EAAE;QAE5D,OAAO,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,EAAE,QAAQ,CAAC,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IACrF,CAAC;IAED,GAAG;QACD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,GAAG,CAAC,QAAkB;QACpB,OAAO,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,EAAE,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,QAAQ,CAAC,QAAkB;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC;QAE3C,IAAI,MAAM,GAAG,QAAQ,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,0BAA0B,CAAC,CAAC;QACtF,OAAO,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,CAAC,OAAiB;QACtB,OAAO,IAAI,CAAC,KAAK,KAAK,OAAO,CAAC,GAAG,EAAE,CAAC;IACtC,CAAC;IAED,YAAY,CAAC,OAAiB;QAC5B,OAAO,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IACpC,CAAC;IAED,aAAa,CAAC,OAAiB;QAC7B,OAAO,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IACpC,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,IAAI,CAAC;IACtC,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC/B,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import * as v from "valibot";
|
|
2
|
+
export declare const DivisionFactorError: {
|
|
3
|
+
Type: string;
|
|
4
|
+
Invalid: string;
|
|
5
|
+
};
|
|
6
|
+
export declare const DivisionFactor: v.SchemaWithPipe<readonly [v.NumberSchema<string>, v.GtValueAction<number, 0, string>, v.BrandAction<number, "DivisionFactor">]>;
|
|
7
|
+
export type DivisionFactorType = v.InferOutput<typeof DivisionFactor>;
|
|
8
|
+
//# sourceMappingURL=division-factor.vo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"division-factor.vo.d.ts","sourceRoot":"","sources":["../src/division-factor.vo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,eAAO,MAAM,mBAAmB;;;CAAuE,CAAC;AAExG,eAAO,MAAM,cAAc,kIAK1B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,cAAc,CAAC,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as v from "valibot";
|
|
2
|
+
export const DivisionFactorError = { Type: "division.factor.type", Invalid: "division.factor.invalid" };
|
|
3
|
+
export const DivisionFactor = v.pipe(v.number(DivisionFactorError.Type), v.gtValue(0, DivisionFactorError.Invalid),
|
|
4
|
+
// Stryker disable next-line StringLiteral
|
|
5
|
+
v.brand("DivisionFactor"));
|
|
6
|
+
//# sourceMappingURL=division-factor.vo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"division-factor.vo.js","sourceRoot":"","sources":["../src/division-factor.vo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAC;AAExG,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAClC,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAClC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,mBAAmB,CAAC,OAAO,CAAC;AACzC,0CAA0C;AAC1C,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAC1B,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export declare class Node<T> {
|
|
2
|
+
data: T;
|
|
3
|
+
prev: Node<T> | null;
|
|
4
|
+
next: Node<T> | null;
|
|
5
|
+
constructor(data: Node<T>["data"]);
|
|
6
|
+
forward(n: number): Node<T> | null;
|
|
7
|
+
backward(n: number): Node<T> | null;
|
|
8
|
+
}
|
|
9
|
+
export declare class DoublyLinkedList<T> {
|
|
10
|
+
static EMPTY_SIZE: number;
|
|
11
|
+
private size;
|
|
12
|
+
private head;
|
|
13
|
+
private tail;
|
|
14
|
+
getSize(): DoublyLinkedList<T>["size"];
|
|
15
|
+
isEmpty(): boolean;
|
|
16
|
+
getHead(): DoublyLinkedList<T>["head"];
|
|
17
|
+
getTail(): DoublyLinkedList<T>["tail"];
|
|
18
|
+
append(node: Node<T>): void;
|
|
19
|
+
prepend(node: Node<T>): void;
|
|
20
|
+
clear(): void;
|
|
21
|
+
remove(node: Node<T>): void;
|
|
22
|
+
insertAfter(node: Node<T>, target: Node<T>): void;
|
|
23
|
+
insertBefore(node: Node<T>, target: Node<T>): void;
|
|
24
|
+
find(callback: (node: Node<T>) => boolean): Node<T> | null;
|
|
25
|
+
reverse(): void;
|
|
26
|
+
toArray(): ReadonlyArray<Node<T>>;
|
|
27
|
+
static fromArray<T>(array: ReadonlyArray<T>): DoublyLinkedList<T>;
|
|
28
|
+
[Symbol.iterator](): IterableIterator<Node<T>>;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=dll.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dll.service.d.ts","sourceRoot":"","sources":["../src/dll.service.ts"],"names":[],"mappings":"AAAA,qBAAa,IAAI,CAAC,CAAC;IACjB,IAAI,EAAE,CAAC,CAAC;IACR,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAQ;IAC5B,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAQ;gBAEhB,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAIjC,OAAO,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI;IAYlC,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI;CAWpC;AAED,qBAAa,gBAAgB,CAAC,CAAC;IAC7B,MAAM,CAAC,UAAU,SAAK;IACtB,OAAO,CAAC,IAAI,CAA+B;IAC3C,OAAO,CAAC,IAAI,CAAwB;IACpC,OAAO,CAAC,IAAI,CAAwB;IAEpC,OAAO,IAAI,gBAAgB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAItC,OAAO,IAAI,OAAO;IAIlB,OAAO,IAAI,gBAAgB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAItC,OAAO,IAAI,gBAAgB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAItC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI;IAY3B,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI;IAY5B,KAAK,IAAI,IAAI;IAMb,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI;IAkB3B,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI;IAiBjD,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI;IAiBlD,IAAI,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI;IAS1D,OAAO,IAAI,IAAI;IAUf,OAAO,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAIjC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC;IAQhE,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;CAOhD"}
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
export class Node {
|
|
2
|
+
data;
|
|
3
|
+
prev = null;
|
|
4
|
+
next = null;
|
|
5
|
+
constructor(data) {
|
|
6
|
+
this.data = data;
|
|
7
|
+
}
|
|
8
|
+
forward(n) {
|
|
9
|
+
let currentNode = this;
|
|
10
|
+
let steps = n;
|
|
11
|
+
while (steps > 0 && currentNode) {
|
|
12
|
+
currentNode = currentNode.next;
|
|
13
|
+
steps -= 1;
|
|
14
|
+
}
|
|
15
|
+
return currentNode;
|
|
16
|
+
}
|
|
17
|
+
backward(n) {
|
|
18
|
+
let currentNode = this;
|
|
19
|
+
let steps = n;
|
|
20
|
+
while (steps > 0 && currentNode) {
|
|
21
|
+
currentNode = currentNode.prev;
|
|
22
|
+
steps -= 1;
|
|
23
|
+
}
|
|
24
|
+
return currentNode;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
export class DoublyLinkedList {
|
|
28
|
+
static EMPTY_SIZE = 0;
|
|
29
|
+
size = DoublyLinkedList.EMPTY_SIZE;
|
|
30
|
+
head = null;
|
|
31
|
+
tail = null;
|
|
32
|
+
getSize() {
|
|
33
|
+
return this.size;
|
|
34
|
+
}
|
|
35
|
+
isEmpty() {
|
|
36
|
+
return this.size === 0;
|
|
37
|
+
}
|
|
38
|
+
getHead() {
|
|
39
|
+
return this.head;
|
|
40
|
+
}
|
|
41
|
+
getTail() {
|
|
42
|
+
return this.tail;
|
|
43
|
+
}
|
|
44
|
+
append(node) {
|
|
45
|
+
if (this.tail === null) {
|
|
46
|
+
this.head = node;
|
|
47
|
+
this.tail = node;
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
this.tail.next = node;
|
|
51
|
+
node.prev = this.tail;
|
|
52
|
+
this.tail = node;
|
|
53
|
+
}
|
|
54
|
+
this.size += 1;
|
|
55
|
+
}
|
|
56
|
+
prepend(node) {
|
|
57
|
+
if (this.head === null) {
|
|
58
|
+
this.head = node;
|
|
59
|
+
this.tail = node;
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
node.next = this.head;
|
|
63
|
+
this.head.prev = node;
|
|
64
|
+
this.head = node;
|
|
65
|
+
}
|
|
66
|
+
this.size += 1;
|
|
67
|
+
}
|
|
68
|
+
clear() {
|
|
69
|
+
this.size = 0;
|
|
70
|
+
this.head = null;
|
|
71
|
+
this.tail = null;
|
|
72
|
+
}
|
|
73
|
+
remove(node) {
|
|
74
|
+
if (node.prev) {
|
|
75
|
+
node.prev.next = node.next;
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
this.head = node.next;
|
|
79
|
+
}
|
|
80
|
+
if (node.next) {
|
|
81
|
+
node.next.prev = node.prev;
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
this.tail = node.prev;
|
|
85
|
+
}
|
|
86
|
+
this.size -= 1;
|
|
87
|
+
node.prev = null;
|
|
88
|
+
node.next = null;
|
|
89
|
+
}
|
|
90
|
+
insertAfter(node, target) {
|
|
91
|
+
if (target === this.tail) {
|
|
92
|
+
this.append(node);
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
const nextNode = target.next;
|
|
96
|
+
this.size += 1;
|
|
97
|
+
node.prev = target;
|
|
98
|
+
node.next = nextNode;
|
|
99
|
+
nextNode.prev = node;
|
|
100
|
+
target.next = node;
|
|
101
|
+
}
|
|
102
|
+
insertBefore(node, target) {
|
|
103
|
+
if (target === this.head) {
|
|
104
|
+
this.prepend(node);
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
const prevNode = target.prev;
|
|
108
|
+
this.size += 1;
|
|
109
|
+
node.next = target;
|
|
110
|
+
node.prev = prevNode;
|
|
111
|
+
prevNode.next = node;
|
|
112
|
+
target.prev = node;
|
|
113
|
+
}
|
|
114
|
+
find(callback) {
|
|
115
|
+
let current = this.head;
|
|
116
|
+
while (current) {
|
|
117
|
+
if (callback(current))
|
|
118
|
+
return current;
|
|
119
|
+
current = current.next;
|
|
120
|
+
}
|
|
121
|
+
return null;
|
|
122
|
+
}
|
|
123
|
+
reverse() {
|
|
124
|
+
[this.head, this.tail] = [this.tail, this.head];
|
|
125
|
+
for (const node of this) {
|
|
126
|
+
const originalNext = node.next;
|
|
127
|
+
node.next = node.prev;
|
|
128
|
+
node.prev = originalNext;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
toArray() {
|
|
132
|
+
return Array.from(this);
|
|
133
|
+
}
|
|
134
|
+
static fromArray(array) {
|
|
135
|
+
const dll = new DoublyLinkedList();
|
|
136
|
+
for (const item of array) {
|
|
137
|
+
dll.append(new Node(item));
|
|
138
|
+
}
|
|
139
|
+
return dll;
|
|
140
|
+
}
|
|
141
|
+
*[Symbol.iterator]() {
|
|
142
|
+
let current = this.head;
|
|
143
|
+
while (current) {
|
|
144
|
+
yield current;
|
|
145
|
+
current = current.next;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
//# sourceMappingURL=dll.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dll.service.js","sourceRoot":"","sources":["../src/dll.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as v from "valibot";
|
|
2
|
+
export declare const DurationMsError: {
|
|
3
|
+
Invalid: string;
|
|
4
|
+
};
|
|
5
|
+
export declare const DurationMs: v.SchemaWithPipe<readonly [v.NumberSchema<string>, v.IntegerAction<number, string>, v.BrandAction<number, "DurationMs">]>;
|
|
6
|
+
export type DurationMsType = v.InferOutput<typeof DurationMs>;
|
|
7
|
+
//# sourceMappingURL=duration-ms.vo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"duration-ms.vo.d.ts","sourceRoot":"","sources":["../src/duration-ms.vo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,eAAO,MAAM,eAAe;;CAAkC,CAAC;AAE/D,eAAO,MAAM,UAAU,2HAKtB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,UAAU,CAAC,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as v from "valibot";
|
|
2
|
+
export const DurationMsError = { Invalid: "duration.invalid" };
|
|
3
|
+
export const DurationMs = v.pipe(v.number(DurationMsError.Invalid), v.integer(DurationMsError.Invalid),
|
|
4
|
+
// Stryker disable next-line StringLiteral
|
|
5
|
+
v.brand("DurationMs"));
|
|
6
|
+
//# sourceMappingURL=duration-ms.vo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"duration-ms.vo.js","sourceRoot":"","sources":["../src/duration-ms.vo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAE/D,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,CAAC,IAAI,CAC9B,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,EACjC,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC;AAClC,0CAA0C;AAC1C,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CACtB,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { type DurationMsType } from "./duration-ms.vo";
|
|
2
|
+
import type { MultiplicationFactorType } from "./multiplication-factor.vo";
|
|
3
|
+
export declare class Duration {
|
|
4
|
+
private static readonly rounding;
|
|
5
|
+
private readonly internal;
|
|
6
|
+
static readonly MIN: Duration;
|
|
7
|
+
private static readonly NS_IN_MS;
|
|
8
|
+
private static readonly MS_IN_SECOND;
|
|
9
|
+
private static readonly MS_IN_MINUTE;
|
|
10
|
+
private static readonly MS_IN_HOUR;
|
|
11
|
+
private static readonly MS_IN_DAY;
|
|
12
|
+
private static readonly MS_IN_WEEK;
|
|
13
|
+
constructor(candidateMs: number);
|
|
14
|
+
static Weeks(value: number): Duration;
|
|
15
|
+
static Days(value: number): Duration;
|
|
16
|
+
static Hours(value: number): Duration;
|
|
17
|
+
static Minutes(value: number): Duration;
|
|
18
|
+
static Seconds(value: number): Duration;
|
|
19
|
+
static Ms(value: number): Duration;
|
|
20
|
+
static Ns(value: number): Duration;
|
|
21
|
+
get weeks(): number;
|
|
22
|
+
get days(): number;
|
|
23
|
+
get hours(): number;
|
|
24
|
+
get minutes(): number;
|
|
25
|
+
get seconds(): number;
|
|
26
|
+
get ms(): DurationMsType;
|
|
27
|
+
get ns(): number;
|
|
28
|
+
isLongerThan(another: Duration): boolean;
|
|
29
|
+
isShorterThan(another: Duration): boolean;
|
|
30
|
+
equals(other: Duration): boolean;
|
|
31
|
+
add(another: Duration): Duration;
|
|
32
|
+
subtract(another: Duration): Duration;
|
|
33
|
+
times(factor: MultiplicationFactorType): Duration;
|
|
34
|
+
toAbsolute(): Duration;
|
|
35
|
+
toString(): string;
|
|
36
|
+
toJSON(): number;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=duration.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"duration.service.d.ts","sourceRoot":"","sources":["../src/duration.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAc,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAK3E,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAoD;IACpF,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAE1C,MAAM,CAAC,QAAQ,CAAC,GAAG,WAAkB;IAErC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAW;IAC3C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAS;IAC7C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAA8B;IAClE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAA8B;IAChE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAA4B;IAC7D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAA0B;gBAEhD,WAAW,EAAE,MAAM;IAI/B,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ;IAGrC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ;IAGpC,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ;IAGrC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ;IAGvC,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ;IAGvC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ;IAGlC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ;IAIlC,IAAI,KAAK,IAAI,MAAM,CAElB;IACD,IAAI,IAAI,IAAI,MAAM,CAEjB;IACD,IAAI,KAAK,IAAI,MAAM,CAElB;IACD,IAAI,OAAO,IAAI,MAAM,CAEpB;IACD,IAAI,OAAO,IAAI,MAAM,CAEpB;IACD,IAAI,EAAE,IAAI,cAAc,CAEvB;IACD,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,YAAY,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO;IAGxC,aAAa,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO;IAIzC,MAAM,CAAC,KAAK,EAAE,QAAQ,GAAG,OAAO;IAGhC,GAAG,CAAC,OAAO,EAAE,QAAQ,GAAG,QAAQ;IAGhC,QAAQ,CAAC,OAAO,EAAE,QAAQ,GAAG,QAAQ;IAGrC,KAAK,CAAC,MAAM,EAAE,wBAAwB,GAAG,QAAQ;IAIjD,UAAU,IAAI,QAAQ;IAItB,QAAQ,IAAI,MAAM;IAIlB,MAAM,IAAI,MAAM;CAGjB"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import * as v from "valibot";
|
|
2
|
+
import { DurationMs } from "./duration-ms.vo";
|
|
3
|
+
import { RoundingDecimalStrategy } from "./rounding-decimal.strategy";
|
|
4
|
+
import { RoundingToNearestStrategy } from "./rounding-to-nearest.strategy";
|
|
5
|
+
export class Duration {
|
|
6
|
+
static rounding = new RoundingDecimalStrategy(2);
|
|
7
|
+
internal;
|
|
8
|
+
static MIN = Duration.Ms(1);
|
|
9
|
+
static NS_IN_MS = 1000000;
|
|
10
|
+
static MS_IN_SECOND = 1_000;
|
|
11
|
+
static MS_IN_MINUTE = 60 * Duration.MS_IN_SECOND;
|
|
12
|
+
static MS_IN_HOUR = 60 * Duration.MS_IN_MINUTE;
|
|
13
|
+
static MS_IN_DAY = 24 * Duration.MS_IN_HOUR;
|
|
14
|
+
static MS_IN_WEEK = 7 * Duration.MS_IN_DAY;
|
|
15
|
+
constructor(candidateMs) {
|
|
16
|
+
this.internal = v.parse(DurationMs, candidateMs);
|
|
17
|
+
}
|
|
18
|
+
static Weeks(value) {
|
|
19
|
+
return new Duration(value * Duration.MS_IN_WEEK);
|
|
20
|
+
}
|
|
21
|
+
static Days(value) {
|
|
22
|
+
return new Duration(value * Duration.MS_IN_DAY);
|
|
23
|
+
}
|
|
24
|
+
static Hours(value) {
|
|
25
|
+
return new Duration(value * Duration.MS_IN_HOUR);
|
|
26
|
+
}
|
|
27
|
+
static Minutes(value) {
|
|
28
|
+
return new Duration(value * Duration.MS_IN_MINUTE);
|
|
29
|
+
}
|
|
30
|
+
static Seconds(value) {
|
|
31
|
+
return new Duration(value * Duration.MS_IN_SECOND);
|
|
32
|
+
}
|
|
33
|
+
static Ms(value) {
|
|
34
|
+
return new Duration(value);
|
|
35
|
+
}
|
|
36
|
+
static Ns(value) {
|
|
37
|
+
return new Duration(new RoundingToNearestStrategy().round(value / Duration.NS_IN_MS));
|
|
38
|
+
}
|
|
39
|
+
get weeks() {
|
|
40
|
+
return Duration.rounding.round(this.internal / Duration.MS_IN_WEEK);
|
|
41
|
+
}
|
|
42
|
+
get days() {
|
|
43
|
+
return Duration.rounding.round(this.internal / Duration.MS_IN_DAY);
|
|
44
|
+
}
|
|
45
|
+
get hours() {
|
|
46
|
+
return Duration.rounding.round(this.internal / Duration.MS_IN_HOUR);
|
|
47
|
+
}
|
|
48
|
+
get minutes() {
|
|
49
|
+
return Duration.rounding.round(this.internal / Duration.MS_IN_MINUTE);
|
|
50
|
+
}
|
|
51
|
+
get seconds() {
|
|
52
|
+
return Duration.rounding.round(this.internal / Duration.MS_IN_SECOND);
|
|
53
|
+
}
|
|
54
|
+
get ms() {
|
|
55
|
+
return this.internal;
|
|
56
|
+
}
|
|
57
|
+
get ns() {
|
|
58
|
+
return this.internal * Duration.NS_IN_MS;
|
|
59
|
+
}
|
|
60
|
+
isLongerThan(another) {
|
|
61
|
+
return this.internal > another.internal;
|
|
62
|
+
}
|
|
63
|
+
isShorterThan(another) {
|
|
64
|
+
return this.internal < another.internal;
|
|
65
|
+
}
|
|
66
|
+
equals(other) {
|
|
67
|
+
return this.internal === other.internal;
|
|
68
|
+
}
|
|
69
|
+
add(another) {
|
|
70
|
+
return Duration.Ms(this.internal + another.internal);
|
|
71
|
+
}
|
|
72
|
+
subtract(another) {
|
|
73
|
+
return Duration.Ms(this.internal - another.internal);
|
|
74
|
+
}
|
|
75
|
+
times(factor) {
|
|
76
|
+
return Duration.Ms(new RoundingToNearestStrategy().round(this.internal * factor));
|
|
77
|
+
}
|
|
78
|
+
toAbsolute() {
|
|
79
|
+
return Duration.Ms(Math.abs(this.internal));
|
|
80
|
+
}
|
|
81
|
+
toString() {
|
|
82
|
+
return this.internal.toString();
|
|
83
|
+
}
|
|
84
|
+
toJSON() {
|
|
85
|
+
return this.internal;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=duration.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"duration.service.js","sourceRoot":"","sources":["../src/duration.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"email-mask.service.d.ts","sourceRoot":"","sources":["../src/email-mask.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,qBAAa,SAAS;IACpB,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM;CAaxC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export class EmailMask {
|
|
2
|
+
static censor(email) {
|
|
3
|
+
const [local, domain] = email.split("@");
|
|
4
|
+
if (local.length <= 2)
|
|
5
|
+
return `${"*".repeat(local.length)}@${domain}`;
|
|
6
|
+
const firstCharacter = local.at(0);
|
|
7
|
+
const censoredPart = "*".repeat(local.length - 2);
|
|
8
|
+
const lastCharacter = local.at(-1);
|
|
9
|
+
const censoredLocal = `${firstCharacter}${censoredPart}${lastCharacter}`;
|
|
10
|
+
return `${censoredLocal}@${domain}`;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=email-mask.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"email-mask.service.js","sourceRoot":"","sources":["../src/email-mask.service.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,SAAS;IACpB,MAAM,CAAC,MAAM,CAAC,KAAgB;QAC5B,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAqB,CAAC;QAE7D,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;YAAE,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QAEtE,MAAM,cAAc,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAClD,MAAM,aAAa,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAEnC,MAAM,aAAa,GAAG,GAAG,cAAc,GAAG,YAAY,GAAG,aAAa,EAAE,CAAC;QAEzE,OAAO,GAAG,aAAa,IAAI,MAAM,EAAE,CAAC;IACtC,CAAC;CACF"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as v from "valibot";
|
|
2
|
+
export declare const EmailError: {
|
|
3
|
+
Invalid: string;
|
|
4
|
+
};
|
|
5
|
+
export declare const Email: v.SchemaWithPipe<readonly [v.StringSchema<string>, v.EmailAction<string, string>, v.BrandAction<string, "Email">]>;
|
|
6
|
+
export type EmailType = v.InferOutput<typeof Email>;
|
|
7
|
+
//# sourceMappingURL=email.vo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"email.vo.d.ts","sourceRoot":"","sources":["../src/email.vo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,eAAO,MAAM,UAAU;;CAA+B,CAAC;AAGvD,eAAO,MAAM,KAAK,oHAAsF,CAAC;AAEzG,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,KAAK,CAAC,CAAC"}
|
package/dist/email.vo.js
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import * as v from "valibot";
|
|
2
|
+
export const EmailError = { Invalid: "email.invalid" };
|
|
3
|
+
// Stryker disable next-line StringLiteral
|
|
4
|
+
export const Email = v.pipe(v.string(EmailError.Invalid), v.email(EmailError.Invalid), v.brand("Email"));
|
|
5
|
+
//# sourceMappingURL=email.vo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"email.vo.js","sourceRoot":"","sources":["../src/email.vo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,MAAM,CAAC,MAAM,UAAU,GAAG,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;AAEvD,0CAA0C;AAC1C,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { type RevisionValueType } from "./revision-value.vo";
|
|
2
|
+
type ETagValueType = string;
|
|
3
|
+
export declare class ETag {
|
|
4
|
+
readonly revision: RevisionValueType;
|
|
5
|
+
static HEADER_NAME: string;
|
|
6
|
+
static IF_MATCH_HEADER_NAME: string;
|
|
7
|
+
readonly value: ETagValueType;
|
|
8
|
+
private constructor();
|
|
9
|
+
static fromHeader(value?: ETagValueType): ETag | null;
|
|
10
|
+
}
|
|
11
|
+
export type WeakETagValueType = string;
|
|
12
|
+
export declare const WeakETagError: {
|
|
13
|
+
Invalid: string;
|
|
14
|
+
};
|
|
15
|
+
export declare class WeakETag {
|
|
16
|
+
readonly revision: RevisionValueType;
|
|
17
|
+
static HEADER_NAME: string;
|
|
18
|
+
static IF_MATCH_HEADER_NAME: string;
|
|
19
|
+
readonly value: WeakETagValueType;
|
|
20
|
+
private constructor();
|
|
21
|
+
static fromHeader(value?: WeakETagValueType): WeakETag | null;
|
|
22
|
+
}
|
|
23
|
+
export {};
|
|
24
|
+
//# sourceMappingURL=etags.vo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"etags.vo.d.ts","sourceRoot":"","sources":["../src/etags.vo.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE5E,KAAK,aAAa,GAAG,MAAM,CAAC;AAE5B,qBAAa,IAAI;IAOK,QAAQ,CAAC,QAAQ,EAAE,iBAAiB;IANxD,MAAM,CAAC,WAAW,SAAU;IAE5B,MAAM,CAAC,oBAAoB,SAAc;IAEzC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAE9B,OAAO;IAIP,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,aAAa,GAAG,IAAI,GAAG,IAAI;CAMtD;AAED,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC;AAEvC,eAAO,MAAM,aAAa;;CAAmC,CAAC;AAE9D,qBAAa,QAAQ;IAOC,QAAQ,CAAC,QAAQ,EAAE,iBAAiB;IANxD,MAAM,CAAC,WAAW,SAAU;IAE5B,MAAM,CAAC,oBAAoB,SAAc;IAEzC,QAAQ,CAAC,KAAK,EAAE,iBAAiB,CAAC;IAElC,OAAO;IAIP,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,iBAAiB,GAAG,QAAQ,GAAG,IAAI;CAQ9D"}
|
package/dist/etags.vo.js
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import * as v from "valibot";
|
|
2
|
+
import { RevisionValue } from "./revision-value.vo";
|
|
3
|
+
export class ETag {
|
|
4
|
+
revision;
|
|
5
|
+
static HEADER_NAME = "ETag";
|
|
6
|
+
static IF_MATCH_HEADER_NAME = "if-match";
|
|
7
|
+
value;
|
|
8
|
+
constructor(revision) {
|
|
9
|
+
this.revision = revision;
|
|
10
|
+
this.value = revision.toString();
|
|
11
|
+
}
|
|
12
|
+
static fromHeader(value) {
|
|
13
|
+
const candidate = Number(value);
|
|
14
|
+
if (Number.isNaN(candidate))
|
|
15
|
+
return null;
|
|
16
|
+
return new ETag(v.parse(RevisionValue, candidate));
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
export const WeakETagError = { Invalid: "weak.etag.invalid" };
|
|
20
|
+
export class WeakETag {
|
|
21
|
+
revision;
|
|
22
|
+
static HEADER_NAME = "ETag";
|
|
23
|
+
static IF_MATCH_HEADER_NAME = "if-match";
|
|
24
|
+
value;
|
|
25
|
+
constructor(revision) {
|
|
26
|
+
this.revision = revision;
|
|
27
|
+
this.value = `W/${revision.toString()}`;
|
|
28
|
+
}
|
|
29
|
+
static fromHeader(value) {
|
|
30
|
+
if (!value?.startsWith("W/"))
|
|
31
|
+
throw new Error(WeakETagError.Invalid);
|
|
32
|
+
const candidate = Number(value.split("W/")[1]);
|
|
33
|
+
if (Number.isNaN(candidate))
|
|
34
|
+
return null;
|
|
35
|
+
return new WeakETag(v.parse(RevisionValue, candidate));
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=etags.vo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"etags.vo.js","sourceRoot":"","sources":["../src/etags.vo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,aAAa,EAA0B,MAAM,qBAAqB,CAAC;AAI5E,MAAM,OAAO,IAAI;IAOc;IAN7B,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC;IAE5B,MAAM,CAAC,oBAAoB,GAAG,UAAU,CAAC;IAEhC,KAAK,CAAgB;IAE9B,YAA6B,QAA2B;QAA3B,aAAQ,GAAR,QAAQ,CAAmB;QACtD,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC;IACnC,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,KAAqB;QACrC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAEhC,IAAI,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;YAAE,OAAO,IAAI,CAAC;QACzC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC;IACrD,CAAC;;AAKH,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAE9D,MAAM,OAAO,QAAQ;IAOU;IAN7B,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC;IAE5B,MAAM,CAAC,oBAAoB,GAAG,UAAU,CAAC;IAEhC,KAAK,CAAoB;IAElC,YAA6B,QAA2B;QAA3B,aAAQ,GAAR,QAAQ,CAAmB;QACtD,IAAI,CAAC,KAAK,GAAG,KAAK,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;IAC1C,CAAC;IAED,MAAM,CAAC,UAAU,CAAC,KAAyB;QACzC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAErE,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE/C,IAAI,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;YAAE,OAAO,IAAI,CAAC;QACzC,OAAO,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC;IACzD,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import * as v from "valibot";
|
|
2
|
+
export declare const ExtensionError: {
|
|
3
|
+
Type: string;
|
|
4
|
+
Empty: string;
|
|
5
|
+
TooLong: string;
|
|
6
|
+
BadChars: string;
|
|
7
|
+
};
|
|
8
|
+
export declare const Extension: v.SchemaWithPipe<readonly [v.StringSchema<string>, v.ToLowerCaseAction, v.TransformAction<string, string>, v.MinLengthAction<string, 2, string>, v.MaxLengthAction<string, 16, string>, v.CheckAction<string, string>, v.BrandAction<string, "Extension">]>;
|
|
9
|
+
export type ExtensionType = v.InferOutput<typeof Extension>;
|
|
10
|
+
//# sourceMappingURL=extension.vo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extension.vo.d.ts","sourceRoot":"","sources":["../src/extension.vo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,eAAO,MAAM,cAAc;;;;;CAK1B,CAAC;AAMF,eAAO,MAAM,SAAS,6PAUrB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,SAAS,CAAC,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import * as v from "valibot";
|
|
2
|
+
export const ExtensionError = {
|
|
3
|
+
Type: "extension.type",
|
|
4
|
+
Empty: "extension.empty",
|
|
5
|
+
TooLong: "extension.too.long",
|
|
6
|
+
BadChars: "extension.bad.chars",
|
|
7
|
+
};
|
|
8
|
+
// Lowercase letters and digits allowed
|
|
9
|
+
const EXTENSION_WHITELIST = /^[a-z0-9]+$/;
|
|
10
|
+
const LEADING_DOT_FILE = /^\./;
|
|
11
|
+
export const Extension = v.pipe(v.string(ExtensionError.Type), v.toLowerCase(),
|
|
12
|
+
// Transform ".png" -> "png"
|
|
13
|
+
v.transform((value) => value.replace(LEADING_DOT_FILE, "")), v.minLength(2, ExtensionError.Empty), v.maxLength(16, ExtensionError.TooLong), v.check((value) => EXTENSION_WHITELIST.test(value), ExtensionError.BadChars),
|
|
14
|
+
// Stryker disable next-line StringLiteral
|
|
15
|
+
v.brand("Extension"));
|
|
16
|
+
//# sourceMappingURL=extension.vo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"extension.vo.js","sourceRoot":"","sources":["../src/extension.vo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,IAAI,EAAE,gBAAgB;IACtB,KAAK,EAAE,iBAAiB;IACxB,OAAO,EAAE,oBAAoB;IAC7B,QAAQ,EAAE,qBAAqB;CAChC,CAAC;AAEF,uCAAuC;AACvC,MAAM,mBAAmB,GAAG,aAAa,CAAC;AAC1C,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAE/B,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAC,IAAI,CAC7B,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAC7B,CAAC,CAAC,WAAW,EAAE;AACf,4BAA4B;AAC5B,CAAC,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC,EAC3D,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,cAAc,CAAC,KAAK,CAAC,EACpC,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,cAAc,CAAC,OAAO,CAAC,EACvC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC;AAC5E,0CAA0C;AAC1C,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CACrB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as v from "valibot";
|
|
2
|
+
export declare const FeatureFlagValueError: {
|
|
3
|
+
Invalid: string;
|
|
4
|
+
};
|
|
5
|
+
export declare enum FeatureFlagEnum {
|
|
6
|
+
yes = "yes",
|
|
7
|
+
no = "no"
|
|
8
|
+
}
|
|
9
|
+
export declare const FeatureFlagValue: v.PicklistSchema<FeatureFlagEnum[], string>;
|
|
10
|
+
export type FeatureFlagValueType = v.InferOutput<typeof FeatureFlagValue>;
|
|
11
|
+
//# sourceMappingURL=feature-flag-value.vo.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feature-flag-value.vo.d.ts","sourceRoot":"","sources":["../src/feature-flag-value.vo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,eAAO,MAAM,qBAAqB;;CAA4C,CAAC;AAE/E,oBAAY,eAAe;IACzB,GAAG,QAAQ;IACX,EAAE,OAAO;CACV;AAED,eAAO,MAAM,gBAAgB,6CAA4E,CAAC;AAE1G,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import * as v from "valibot";
|
|
2
|
+
export const FeatureFlagValueError = { Invalid: "feature.flag.value.invalid" };
|
|
3
|
+
export var FeatureFlagEnum;
|
|
4
|
+
(function (FeatureFlagEnum) {
|
|
5
|
+
FeatureFlagEnum["yes"] = "yes";
|
|
6
|
+
FeatureFlagEnum["no"] = "no";
|
|
7
|
+
})(FeatureFlagEnum || (FeatureFlagEnum = {}));
|
|
8
|
+
export const FeatureFlagValue = v.picklist(Object.values(FeatureFlagEnum), FeatureFlagValueError.Invalid);
|
|
9
|
+
//# sourceMappingURL=feature-flag-value.vo.js.map
|