zibri 2.3.0 → 2.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/application-options.model.d.ts +37 -0
- package/dist/cjs/application-options.model.d.ts.map +1 -1
- package/dist/cjs/application-options.model.js +1 -0
- package/dist/cjs/application-options.model.js.map +1 -1
- package/dist/cjs/application.d.ts +4 -2
- package/dist/cjs/application.d.ts.map +1 -1
- package/dist/cjs/application.js +63 -6
- package/dist/cjs/application.js.map +1 -1
- package/dist/cjs/assets/asset.service.d.ts.map +1 -1
- package/dist/cjs/assets/asset.service.js +0 -5
- package/dist/cjs/assets/asset.service.js.map +1 -1
- package/dist/cjs/auth/2fa/methods/otp/otp.two-factor-method.d.ts +4 -4
- package/dist/cjs/auth/2fa/methods/otp/otp.two-factor-method.d.ts.map +1 -1
- package/dist/cjs/auth/2fa/methods/otp/otp.two-factor-method.js +4 -4
- package/dist/cjs/auth/2fa/methods/otp/otp.two-factor-method.js.map +1 -1
- package/dist/cjs/auth/2fa/methods/two-factor-method.interface.d.ts +3 -3
- package/dist/cjs/auth/2fa/methods/two-factor-method.interface.d.ts.map +1 -1
- package/dist/cjs/auth/2fa/two-factor-service.interface.d.ts +3 -3
- package/dist/cjs/auth/2fa/two-factor-service.interface.d.ts.map +1 -1
- package/dist/cjs/auth/2fa/two-factor.service.d.ts +3 -3
- package/dist/cjs/auth/2fa/two-factor.service.d.ts.map +1 -1
- package/dist/cjs/auth/2fa/two-factor.service.js +6 -2
- package/dist/cjs/auth/2fa/two-factor.service.js.map +1 -1
- package/dist/cjs/auth/auth-service.interface.d.ts +7 -7
- package/dist/cjs/auth/auth-service.interface.d.ts.map +1 -1
- package/dist/cjs/auth/auth.service.d.ts +8 -8
- package/dist/cjs/auth/auth.service.d.ts.map +1 -1
- package/dist/cjs/auth/auth.service.js +26 -18
- package/dist/cjs/auth/auth.service.js.map +1 -1
- package/dist/cjs/auth/encryption/encryption-key.model.d.ts +45 -0
- package/dist/cjs/auth/encryption/encryption-key.model.d.ts.map +1 -0
- package/dist/cjs/auth/encryption/encryption-key.model.js +67 -0
- package/dist/cjs/auth/encryption/encryption-key.model.js.map +1 -0
- package/dist/cjs/auth/encryption/encryption-master-options.model.d.ts +36 -0
- package/dist/cjs/auth/encryption/encryption-master-options.model.d.ts.map +1 -0
- package/dist/cjs/{entity/models/one-to-one-property-metadata.model.js → auth/encryption/encryption-master-options.model.js} +1 -1
- package/dist/cjs/auth/encryption/encryption-master-options.model.js.map +1 -0
- package/dist/cjs/auth/encryption/encryption-service.interface.d.ts +68 -0
- package/dist/cjs/auth/encryption/encryption-service.interface.d.ts.map +1 -0
- package/dist/cjs/auth/encryption/encryption-service.interface.js +3 -0
- package/dist/cjs/auth/encryption/encryption-service.interface.js.map +1 -0
- package/dist/cjs/auth/encryption/encryption.service.d.ts +71 -0
- package/dist/cjs/auth/encryption/encryption.service.d.ts.map +1 -0
- package/dist/cjs/auth/encryption/encryption.service.js +559 -0
- package/dist/cjs/auth/encryption/encryption.service.js.map +1 -0
- package/dist/cjs/auth/encryption/encryption.utilities.d.ts +46 -0
- package/dist/cjs/auth/encryption/encryption.utilities.d.ts.map +1 -0
- package/dist/cjs/auth/encryption/encryption.utilities.js +37 -0
- package/dist/cjs/auth/encryption/encryption.utilities.js.map +1 -0
- package/dist/cjs/auth/encryption/strategies/aes-gcm.encryption-strategy.d.ts +37 -0
- package/dist/cjs/auth/encryption/strategies/aes-gcm.encryption-strategy.d.ts.map +1 -0
- package/dist/cjs/auth/encryption/strategies/aes-gcm.encryption-strategy.js +71 -0
- package/dist/cjs/auth/encryption/strategies/aes-gcm.encryption-strategy.js.map +1 -0
- package/dist/cjs/auth/encryption/strategies/encryption-strategy-entity.model.d.ts +42 -0
- package/dist/cjs/auth/encryption/strategies/encryption-strategy-entity.model.d.ts.map +1 -0
- package/dist/cjs/auth/encryption/strategies/encryption-strategy-entity.model.js +67 -0
- package/dist/cjs/auth/encryption/strategies/encryption-strategy-entity.model.js.map +1 -0
- package/dist/cjs/auth/encryption/strategies/encryption-strategy.interface.d.ts +61 -0
- package/dist/cjs/auth/encryption/strategies/encryption-strategy.interface.d.ts.map +1 -0
- package/dist/cjs/auth/encryption/strategies/encryption-strategy.interface.js +3 -0
- package/dist/cjs/auth/encryption/strategies/encryption-strategy.interface.js.map +1 -0
- package/dist/cjs/auth/hash/hash-service.interface.d.ts +35 -0
- package/dist/cjs/auth/hash/hash-service.interface.d.ts.map +1 -0
- package/dist/cjs/auth/hash/hash-service.interface.js +3 -0
- package/dist/cjs/auth/hash/hash-service.interface.js.map +1 -0
- package/dist/cjs/auth/hash/hash.service.d.ts +28 -0
- package/dist/cjs/auth/hash/hash.service.d.ts.map +1 -0
- package/dist/cjs/auth/hash/hash.service.js +148 -0
- package/dist/cjs/auth/hash/hash.service.js.map +1 -0
- package/dist/cjs/auth/hash/hash.utilities.d.ts +42 -0
- package/dist/cjs/auth/hash/hash.utilities.d.ts.map +1 -0
- package/dist/cjs/auth/hash/hash.utilities.js +36 -0
- package/dist/cjs/auth/hash/hash.utilities.js.map +1 -0
- package/dist/cjs/auth/hash/strategies/bcrypt.hash-strategy.d.ts +21 -0
- package/dist/cjs/auth/hash/strategies/bcrypt.hash-strategy.d.ts.map +1 -0
- package/dist/cjs/auth/hash/strategies/bcrypt.hash-strategy.js +26 -0
- package/dist/cjs/auth/hash/strategies/bcrypt.hash-strategy.js.map +1 -0
- package/dist/cjs/auth/hash/strategies/hash-strategy-entity.model.d.ts +32 -0
- package/dist/cjs/auth/hash/strategies/hash-strategy-entity.model.d.ts.map +1 -0
- package/dist/cjs/auth/hash/strategies/hash-strategy-entity.model.js +58 -0
- package/dist/cjs/auth/hash/strategies/hash-strategy-entity.model.js.map +1 -0
- package/dist/cjs/auth/hash/strategies/hash-strategy.interface.d.ts +23 -0
- package/dist/cjs/auth/hash/strategies/hash-strategy.interface.d.ts.map +1 -0
- package/dist/cjs/auth/hash/strategies/hash-strategy.interface.js +3 -0
- package/dist/cjs/auth/hash/strategies/hash-strategy.interface.js.map +1 -0
- package/dist/cjs/auth/strategies/auth-strategy.interface.d.ts +11 -6
- package/dist/cjs/auth/strategies/auth-strategy.interface.d.ts.map +1 -1
- package/dist/cjs/auth/strategies/auth-strategy.interface.js.map +1 -1
- package/dist/cjs/auth/strategies/cookie/cookie-auth-confirm-password-reset-data.model.d.ts +19 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-confirm-password-reset-data.model.d.ts.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-confirm-password-reset-data.model.js +40 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-confirm-password-reset-data.model.js.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-credentials.model.d.ts +49 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-credentials.model.d.ts.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-credentials.model.js +80 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-credentials.model.js.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-data.model.d.ts +26 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-data.model.d.ts.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-data.model.js +60 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-data.model.js.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-logout-data.model.d.ts +19 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-logout-data.model.d.ts.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-logout-data.model.js +40 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-logout-data.model.js.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-refresh-login-data.model.d.ts +11 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-refresh-login-data.model.d.ts.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-refresh-login-data.model.js +14 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-refresh-login-data.model.js.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-refresh-session.model.d.ts +39 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-refresh-session.model.d.ts.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-refresh-session.model.js +77 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-refresh-session.model.js.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-request-password-reset-data.model.d.ts +26 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-request-password-reset-data.model.d.ts.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-request-password-reset-data.model.js +3 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-request-password-reset-data.model.js.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-session-cleanup.cron-job.d.ts +15 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-session-cleanup.cron-job.d.ts.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-session-cleanup.cron-job.js +54 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-session-cleanup.cron-job.js.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-session.model.d.ts +29 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-session.model.d.ts.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-session.model.js +59 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth-session.model.js.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth.auth-strategy.d.ts +73 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth.auth-strategy.d.ts.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth.auth-strategy.js +430 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth.auth-strategy.js.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth.controller.d.ts +42 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth.controller.d.ts.map +1 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth.controller.js +210 -0
- package/dist/cjs/auth/strategies/cookie/cookie-auth.controller.js.map +1 -0
- package/dist/cjs/auth/strategies/jwt/jwt-auth.controller.d.ts +9 -3
- package/dist/cjs/auth/strategies/jwt/jwt-auth.controller.d.ts.map +1 -1
- package/dist/cjs/auth/strategies/jwt/jwt-auth.controller.js +41 -10
- package/dist/cjs/auth/strategies/jwt/jwt-auth.controller.js.map +1 -1
- package/dist/cjs/auth/strategies/jwt/jwt-confirm-password-reset-data.model.d.ts +5 -0
- package/dist/cjs/auth/strategies/jwt/jwt-confirm-password-reset-data.model.d.ts.map +1 -1
- package/dist/cjs/auth/strategies/jwt/jwt-confirm-password-reset-data.model.js +4 -0
- package/dist/cjs/auth/strategies/jwt/jwt-confirm-password-reset-data.model.js.map +1 -1
- package/dist/cjs/auth/strategies/jwt/jwt-credentials.model.d.ts +13 -4
- package/dist/cjs/auth/strategies/jwt/jwt-credentials.model.d.ts.map +1 -1
- package/dist/cjs/auth/strategies/jwt/jwt-credentials.model.js +20 -4
- package/dist/cjs/auth/strategies/jwt/jwt-credentials.model.js.map +1 -1
- package/dist/cjs/auth/strategies/jwt/jwt-refresh-login-data.model.d.ts +5 -0
- package/dist/cjs/auth/strategies/jwt/jwt-refresh-login-data.model.d.ts.map +1 -1
- package/dist/cjs/auth/strategies/jwt/jwt-refresh-login-data.model.js +4 -0
- package/dist/cjs/auth/strategies/jwt/jwt-refresh-login-data.model.js.map +1 -1
- package/dist/cjs/auth/strategies/jwt/jwt-refresh-token-cleanup.cron-job.d.ts +13 -0
- package/dist/cjs/auth/strategies/jwt/jwt-refresh-token-cleanup.cron-job.d.ts.map +1 -0
- package/dist/cjs/auth/strategies/jwt/jwt-refresh-token-cleanup.cron-job.js +48 -0
- package/dist/cjs/auth/strategies/jwt/jwt-refresh-token-cleanup.cron-job.js.map +1 -0
- package/dist/cjs/auth/strategies/jwt/jwt-request-password-reset-data.model.d.ts +5 -0
- package/dist/cjs/auth/strategies/jwt/jwt-request-password-reset-data.model.d.ts.map +1 -1
- package/dist/cjs/auth/strategies/jwt/jwt.auth-strategy.d.ts +16 -12
- package/dist/cjs/auth/strategies/jwt/jwt.auth-strategy.d.ts.map +1 -1
- package/dist/cjs/auth/strategies/jwt/jwt.auth-strategy.js +60 -55
- package/dist/cjs/auth/strategies/jwt/jwt.auth-strategy.js.map +1 -1
- package/dist/cjs/backup/backup-resource-entity.model.d.ts +5 -1
- package/dist/cjs/backup/backup-resource-entity.model.d.ts.map +1 -1
- package/dist/cjs/backup/backup-resource-entity.model.js +9 -1
- package/dist/cjs/backup/backup-resource-entity.model.js.map +1 -1
- package/dist/cjs/backup/backup.service.d.ts.map +1 -1
- package/dist/cjs/backup/backup.service.js +4 -3
- package/dist/cjs/backup/backup.service.js.map +1 -1
- package/dist/cjs/backup/transports/fs.backup-transport.d.ts.map +1 -1
- package/dist/cjs/backup/transports/fs.backup-transport.js +3 -2
- package/dist/cjs/backup/transports/fs.backup-transport.js.map +1 -1
- package/dist/cjs/caching/cache/base-cache.model.d.ts +87 -0
- package/dist/cjs/caching/cache/base-cache.model.d.ts.map +1 -0
- package/dist/cjs/caching/cache/base-cache.model.js +245 -0
- package/dist/cjs/caching/cache/base-cache.model.js.map +1 -0
- package/dist/cjs/caching/cache/cache-operation.enum.d.ts +10 -0
- package/dist/cjs/caching/cache/cache-operation.enum.d.ts.map +1 -0
- package/dist/cjs/caching/cache/cache-operation.enum.js +14 -0
- package/dist/cjs/caching/cache/cache-operation.enum.js.map +1 -0
- package/dist/cjs/caching/cache/cache-options.model.d.ts +107 -0
- package/dist/cjs/caching/cache/cache-options.model.d.ts.map +1 -0
- package/dist/cjs/caching/cache/cache-options.model.js +3 -0
- package/dist/cjs/caching/cache/cache-options.model.js.map +1 -0
- package/dist/cjs/caching/cache/cache.interface.d.ts +77 -0
- package/dist/cjs/caching/cache/cache.interface.d.ts.map +1 -0
- package/dist/cjs/caching/cache/cache.interface.js +36 -0
- package/dist/cjs/caching/cache/cache.interface.js.map +1 -0
- package/dist/cjs/caching/cache/multi-tier.cache.d.ts +64 -0
- package/dist/cjs/caching/cache/multi-tier.cache.d.ts.map +1 -0
- package/dist/cjs/caching/cache/multi-tier.cache.js +190 -0
- package/dist/cjs/caching/cache/multi-tier.cache.js.map +1 -0
- package/dist/cjs/caching/cache/read-aside/read-aside.cache.d.ts +16 -0
- package/dist/cjs/caching/cache/read-aside/read-aside.cache.d.ts.map +1 -0
- package/dist/cjs/caching/cache/read-aside/read-aside.cache.js +78 -0
- package/dist/cjs/caching/cache/read-aside/read-aside.cache.js.map +1 -0
- package/dist/cjs/caching/cache/read-aside/write-around-read-aside.cache.d.ts +16 -0
- package/dist/cjs/caching/cache/read-aside/write-around-read-aside.cache.d.ts.map +1 -0
- package/dist/cjs/caching/cache/read-aside/write-around-read-aside.cache.js +39 -0
- package/dist/cjs/caching/cache/read-aside/write-around-read-aside.cache.js.map +1 -0
- package/dist/cjs/caching/cache/read-aside/write-behind-read-aside.cache.d.ts +15 -0
- package/dist/cjs/caching/cache/read-aside/write-behind-read-aside.cache.d.ts.map +1 -0
- package/dist/cjs/caching/cache/read-aside/write-behind-read-aside.cache.js +73 -0
- package/dist/cjs/caching/cache/read-aside/write-behind-read-aside.cache.js.map +1 -0
- package/dist/cjs/caching/cache/read-aside/write-invalidate-read-aside-args-only.cache.d.ts +15 -0
- package/dist/cjs/caching/cache/read-aside/write-invalidate-read-aside-args-only.cache.d.ts.map +1 -0
- package/dist/cjs/caching/cache/read-aside/write-invalidate-read-aside-args-only.cache.js +63 -0
- package/dist/cjs/caching/cache/read-aside/write-invalidate-read-aside-args-only.cache.js.map +1 -0
- package/dist/cjs/caching/cache/read-aside/write-invalidate-read-aside-with-result.cache.d.ts +15 -0
- package/dist/cjs/caching/cache/read-aside/write-invalidate-read-aside-with-result.cache.d.ts.map +1 -0
- package/dist/cjs/caching/cache/read-aside/write-invalidate-read-aside-with-result.cache.js +63 -0
- package/dist/cjs/caching/cache/read-aside/write-invalidate-read-aside-with-result.cache.js.map +1 -0
- package/dist/cjs/caching/cache/read-aside/write-through-read-aside.cache.d.ts +15 -0
- package/dist/cjs/caching/cache/read-aside/write-through-read-aside.cache.d.ts.map +1 -0
- package/dist/cjs/caching/cache/read-aside/write-through-read-aside.cache.js +64 -0
- package/dist/cjs/caching/cache/read-aside/write-through-read-aside.cache.js.map +1 -0
- package/dist/cjs/caching/cache/read-through/read-through.cache.d.ts +9 -0
- package/dist/cjs/caching/cache/read-through/read-through.cache.d.ts.map +1 -0
- package/dist/cjs/caching/cache/read-through/read-through.cache.js +78 -0
- package/dist/cjs/caching/cache/read-through/read-through.cache.js.map +1 -0
- package/dist/cjs/caching/cache/read-through/write-around-read-through.cache.d.ts +13 -0
- package/dist/cjs/caching/cache/read-through/write-around-read-through.cache.d.ts.map +1 -0
- package/dist/cjs/caching/cache/read-through/write-around-read-through.cache.js +36 -0
- package/dist/cjs/caching/cache/read-through/write-around-read-through.cache.js.map +1 -0
- package/dist/cjs/caching/cache/read-through/write-behind-read-through.cache.d.ts +16 -0
- package/dist/cjs/caching/cache/read-through/write-behind-read-through.cache.d.ts.map +1 -0
- package/dist/cjs/caching/cache/read-through/write-behind-read-through.cache.js +76 -0
- package/dist/cjs/caching/cache/read-through/write-behind-read-through.cache.js.map +1 -0
- package/dist/cjs/caching/cache/read-through/write-invalidate-read-through-args-only.cache.d.ts +16 -0
- package/dist/cjs/caching/cache/read-through/write-invalidate-read-through-args-only.cache.d.ts.map +1 -0
- package/dist/cjs/caching/cache/read-through/write-invalidate-read-through-args-only.cache.js +65 -0
- package/dist/cjs/caching/cache/read-through/write-invalidate-read-through-args-only.cache.js.map +1 -0
- package/dist/cjs/caching/cache/read-through/write-invalidate-read-through-with-result.cache.d.ts +15 -0
- package/dist/cjs/caching/cache/read-through/write-invalidate-read-through-with-result.cache.d.ts.map +1 -0
- package/dist/cjs/caching/cache/read-through/write-invalidate-read-through-with-result.cache.js +64 -0
- package/dist/cjs/caching/cache/read-through/write-invalidate-read-through-with-result.cache.js.map +1 -0
- package/dist/cjs/caching/cache/read-through/write-through-read-through.cache.d.ts +12 -0
- package/dist/cjs/caching/cache/read-through/write-through-read-through.cache.d.ts.map +1 -0
- package/dist/cjs/caching/cache/read-through/write-through-read-through.cache.js +61 -0
- package/dist/cjs/caching/cache/read-through/write-through-read-through.cache.js.map +1 -0
- package/dist/cjs/caching/cache-metrics.model.d.ts +57 -0
- package/dist/cjs/caching/cache-metrics.model.d.ts.map +1 -0
- package/dist/cjs/caching/cache-metrics.model.js +3 -0
- package/dist/cjs/caching/cache-metrics.model.js.map +1 -0
- package/dist/cjs/caching/cache-service.interface.d.ts +15 -0
- package/dist/cjs/caching/cache-service.interface.d.ts.map +1 -0
- package/dist/cjs/caching/cache-service.interface.js +3 -0
- package/dist/cjs/caching/cache-service.interface.js.map +1 -0
- package/dist/cjs/caching/cache-tag-matchers.d.ts +19 -0
- package/dist/cjs/caching/cache-tag-matchers.d.ts.map +1 -0
- package/dist/cjs/caching/cache-tag-matchers.js +29 -0
- package/dist/cjs/caching/cache-tag-matchers.js.map +1 -0
- package/dist/cjs/caching/cache.service.d.ts +15 -0
- package/dist/cjs/caching/cache.service.d.ts.map +1 -0
- package/dist/cjs/caching/cache.service.js +74 -0
- package/dist/cjs/caching/cache.service.js.map +1 -0
- package/dist/cjs/caching/decorators/cache-delete.decorator.d.ts +12 -0
- package/dist/cjs/caching/decorators/cache-delete.decorator.d.ts.map +1 -0
- package/dist/cjs/caching/decorators/cache-delete.decorator.js +30 -0
- package/dist/cjs/caching/decorators/cache-delete.decorator.js.map +1 -0
- package/dist/cjs/caching/decorators/cache-invalidate.decorator.d.ts +11 -0
- package/dist/cjs/caching/decorators/cache-invalidate.decorator.d.ts.map +1 -0
- package/dist/cjs/caching/decorators/cache-invalidate.decorator.js +29 -0
- package/dist/cjs/caching/decorators/cache-invalidate.decorator.js.map +1 -0
- package/dist/cjs/caching/decorators/cache-write.decorator.d.ts +18 -0
- package/dist/cjs/caching/decorators/cache-write.decorator.d.ts.map +1 -0
- package/dist/cjs/caching/decorators/cache-write.decorator.js +32 -0
- package/dist/cjs/caching/decorators/cache-write.decorator.js.map +1 -0
- package/dist/cjs/caching/decorators/cache.decorator.d.ts +5 -0
- package/dist/cjs/caching/decorators/cache.decorator.d.ts.map +1 -0
- package/dist/cjs/caching/decorators/cache.decorator.js +21 -0
- package/dist/cjs/caching/decorators/cache.decorator.js.map +1 -0
- package/dist/cjs/caching/decorators/cached.decorator.d.ts +16 -0
- package/dist/cjs/caching/decorators/cached.decorator.d.ts.map +1 -0
- package/dist/cjs/caching/decorators/cached.decorator.js +31 -0
- package/dist/cjs/caching/decorators/cached.decorator.js.map +1 -0
- package/dist/cjs/caching/decorators/decorator-types.d.ts +11 -0
- package/dist/cjs/caching/decorators/decorator-types.d.ts.map +1 -0
- package/dist/cjs/caching/decorators/decorator-types.js +3 -0
- package/dist/cjs/caching/decorators/decorator-types.js.map +1 -0
- package/dist/cjs/caching/store/cache-store.interface.d.ts +57 -0
- package/dist/cjs/caching/store/cache-store.interface.d.ts.map +1 -0
- package/dist/cjs/caching/store/cache-store.interface.js +3 -0
- package/dist/cjs/caching/store/cache-store.interface.js.map +1 -0
- package/dist/cjs/caching/store/cached-value.model.d.ts +22 -0
- package/dist/cjs/caching/store/cached-value.model.d.ts.map +1 -0
- package/dist/cjs/caching/store/cached-value.model.js +52 -0
- package/dist/cjs/caching/store/cached-value.model.js.map +1 -0
- package/dist/cjs/caching/store/in-memory.cache-store.d.ts +32 -0
- package/dist/cjs/caching/store/in-memory.cache-store.d.ts.map +1 -0
- package/dist/cjs/caching/store/in-memory.cache-store.js +227 -0
- package/dist/cjs/caching/store/in-memory.cache-store.js.map +1 -0
- package/dist/cjs/change-sets/change-set-repository.d.ts +28 -23
- package/dist/cjs/change-sets/change-set-repository.d.ts.map +1 -1
- package/dist/cjs/change-sets/change-set-repository.js +78 -61
- package/dist/cjs/change-sets/change-set-repository.js.map +1 -1
- package/dist/cjs/change-sets/models/change-set-entity.model.d.ts +2 -2
- package/dist/cjs/change-sets/models/change-set-entity.model.d.ts.map +1 -1
- package/dist/cjs/change-sets/models/change-set-entity.model.js +29 -1
- package/dist/cjs/change-sets/models/change-set-entity.model.js.map +1 -1
- package/dist/cjs/change-sets/models/change-set.model.d.ts +2 -2
- package/dist/cjs/change-sets/models/change-set.model.d.ts.map +1 -1
- package/dist/cjs/change-sets/models/change-set.model.js +4 -4
- package/dist/cjs/change-sets/models/change-set.model.js.map +1 -1
- package/dist/cjs/change-sets/models/change.model.d.ts +5 -1
- package/dist/cjs/change-sets/models/change.model.d.ts.map +1 -1
- package/dist/cjs/change-sets/models/change.model.js +9 -1
- package/dist/cjs/change-sets/models/change.model.js.map +1 -1
- package/dist/cjs/change-sets/models/soft-delete-entity.model.d.ts +2 -2
- package/dist/cjs/change-sets/models/soft-delete-entity.model.d.ts.map +1 -1
- package/dist/cjs/change-sets/models/soft-delete-entity.model.js +26 -0
- package/dist/cjs/change-sets/models/soft-delete-entity.model.js.map +1 -1
- package/dist/cjs/change-sets/soft-delete-repository.d.ts +9 -5
- package/dist/cjs/change-sets/soft-delete-repository.d.ts.map +1 -1
- package/dist/cjs/change-sets/soft-delete-repository.js +26 -9
- package/dist/cjs/change-sets/soft-delete-repository.js.map +1 -1
- package/dist/cjs/context/als.utilities.d.ts +57 -0
- package/dist/cjs/context/als.utilities.d.ts.map +1 -0
- package/dist/cjs/context/als.utilities.js +77 -0
- package/dist/cjs/context/als.utilities.js.map +1 -0
- package/dist/cjs/context/base-context.d.ts +12 -0
- package/dist/cjs/context/base-context.d.ts.map +1 -0
- package/dist/cjs/context/base-context.js +15 -0
- package/dist/cjs/context/base-context.js.map +1 -0
- package/dist/cjs/context/cache/cache.context.d.ts +27 -0
- package/dist/cjs/context/cache/cache.context.d.ts.map +1 -0
- package/dist/cjs/context/cache/cache.context.js +61 -0
- package/dist/cjs/context/cache/cache.context.js.map +1 -0
- package/dist/cjs/context/request/http-request.context.d.ts +29 -0
- package/dist/cjs/context/request/http-request.context.d.ts.map +1 -0
- package/dist/cjs/context/request/http-request.context.js +43 -0
- package/dist/cjs/context/request/http-request.context.js.map +1 -0
- package/dist/cjs/context/request/request-context-token.model.d.ts +24 -0
- package/dist/cjs/context/request/request-context-token.model.d.ts.map +1 -0
- package/dist/cjs/context/request/request-context-token.model.js +70 -0
- package/dist/cjs/context/request/request-context-token.model.js.map +1 -0
- package/dist/cjs/context/request/websocket-request.context.d.ts +29 -0
- package/dist/cjs/context/request/websocket-request.context.d.ts.map +1 -0
- package/dist/cjs/context/request/websocket-request.context.js +43 -0
- package/dist/cjs/context/request/websocket-request.context.js.map +1 -0
- package/dist/cjs/cron/cron-expression.utilities.d.ts +100 -0
- package/dist/cjs/cron/cron-expression.utilities.d.ts.map +1 -0
- package/dist/cjs/cron/cron-expression.utilities.js +171 -0
- package/dist/cjs/cron/cron-expression.utilities.js.map +1 -0
- package/dist/cjs/cron/cron-job-entity.model.d.ts +2 -1
- package/dist/cjs/cron/cron-job-entity.model.d.ts.map +1 -1
- package/dist/cjs/cron/cron-job-entity.model.js.map +1 -1
- package/dist/cjs/cron/cron-job.model.d.ts +7 -4
- package/dist/cjs/cron/cron-job.model.d.ts.map +1 -1
- package/dist/cjs/cron/cron-job.model.js +5 -7
- package/dist/cjs/cron/cron-job.model.js.map +1 -1
- package/dist/cjs/cron/cron-service.interface.d.ts +2 -1
- package/dist/cjs/cron/cron-service.interface.d.ts.map +1 -1
- package/dist/cjs/cron/cron.service.d.ts +2 -1
- package/dist/cjs/cron/cron.service.d.ts.map +1 -1
- package/dist/cjs/cron/cron.service.js +4 -2
- package/dist/cjs/cron/cron.service.js.map +1 -1
- package/dist/cjs/data-source/data-sources/data-source-initialization.error.d.ts +7 -0
- package/dist/cjs/data-source/data-sources/data-source-initialization.error.d.ts.map +1 -0
- package/dist/cjs/data-source/data-sources/data-source-initialization.error.js +14 -0
- package/dist/cjs/data-source/data-sources/data-source-initialization.error.js.map +1 -0
- package/dist/cjs/data-source/data-sources/data-source.interface.d.ts +18 -2
- package/dist/cjs/data-source/data-sources/data-source.interface.d.ts.map +1 -1
- package/dist/cjs/data-source/data-sources/data-source.interface.js +11 -0
- package/dist/cjs/data-source/data-sources/data-source.interface.js.map +1 -1
- package/dist/cjs/data-source/data-sources/postgres-typeorm-data-source.model.d.ts +44 -0
- package/dist/cjs/data-source/data-sources/postgres-typeorm-data-source.model.d.ts.map +1 -0
- package/dist/cjs/data-source/data-sources/postgres-typeorm-data-source.model.js +289 -0
- package/dist/cjs/data-source/data-sources/postgres-typeorm-data-source.model.js.map +1 -0
- package/dist/cjs/data-source/data-sources/sql-data-source.interface.d.ts +32 -0
- package/dist/cjs/data-source/data-sources/sql-data-source.interface.d.ts.map +1 -0
- package/dist/cjs/data-source/data-sources/sql-data-source.interface.js +3 -0
- package/dist/cjs/data-source/data-sources/sql-data-source.interface.js.map +1 -0
- package/dist/cjs/data-source/data-sources/typeorm-base-data-source.model.d.ts +156 -0
- package/dist/cjs/data-source/data-sources/typeorm-base-data-source.model.d.ts.map +1 -0
- package/dist/cjs/data-source/data-sources/typeorm-base-data-source.model.js +378 -0
- package/dist/cjs/data-source/data-sources/typeorm-base-data-source.model.js.map +1 -0
- package/dist/cjs/data-source/data-sources/where-converter/postgres-typeorm-where-filter.converter.d.ts +25 -0
- package/dist/cjs/data-source/data-sources/where-converter/postgres-typeorm-where-filter.converter.d.ts.map +1 -0
- package/dist/cjs/data-source/data-sources/where-converter/postgres-typeorm-where-filter.converter.js +353 -0
- package/dist/cjs/data-source/data-sources/where-converter/postgres-typeorm-where-filter.converter.js.map +1 -0
- package/dist/cjs/data-source/data-sources/where-converter/typeorm-where-filter.converter.d.ts +70 -0
- package/dist/cjs/data-source/data-sources/where-converter/typeorm-where-filter.converter.d.ts.map +1 -0
- package/dist/cjs/data-source/data-sources/where-converter/typeorm-where-filter.converter.js +248 -0
- package/dist/cjs/data-source/data-sources/where-converter/typeorm-where-filter.converter.js.map +1 -0
- package/dist/cjs/data-source/hooks/before-return.d.ts +7 -0
- package/dist/cjs/data-source/hooks/before-return.d.ts.map +1 -0
- package/dist/cjs/data-source/hooks/before-return.js +3 -0
- package/dist/cjs/data-source/hooks/before-return.js.map +1 -0
- package/dist/cjs/data-source/hooks/before-save.d.ts +8 -0
- package/dist/cjs/data-source/hooks/before-save.d.ts.map +1 -0
- package/dist/cjs/data-source/hooks/before-save.js +3 -0
- package/dist/cjs/data-source/hooks/before-save.js.map +1 -0
- package/dist/cjs/data-source/hooks/hooks.default.d.ts +13 -0
- package/dist/cjs/data-source/hooks/hooks.default.d.ts.map +1 -0
- package/dist/cjs/data-source/hooks/hooks.default.js +37 -0
- package/dist/cjs/data-source/hooks/hooks.default.js.map +1 -0
- package/dist/cjs/data-source/models/options/count-options.model.d.ts +2 -7
- package/dist/cjs/data-source/models/options/count-options.model.d.ts.map +1 -1
- package/dist/cjs/data-source/models/options/delete-all-options.model.d.ts +2 -4
- package/dist/cjs/data-source/models/options/delete-all-options.model.d.ts.map +1 -1
- package/dist/cjs/data-source/models/options/find-all-options.model.d.ts +2 -2
- package/dist/cjs/data-source/models/options/find-all-options.model.d.ts.map +1 -1
- package/dist/cjs/data-source/models/options/find-by-id-options.model.d.ts +1 -6
- package/dist/cjs/data-source/models/options/find-by-id-options.model.d.ts.map +1 -1
- package/dist/cjs/data-source/models/options/find-one-options.model.d.ts +2 -11
- package/dist/cjs/data-source/models/options/find-one-options.model.d.ts.map +1 -1
- package/dist/cjs/data-source/models/options/update-all-options.model.d.ts +1 -7
- package/dist/cjs/data-source/models/options/update-all-options.model.d.ts.map +1 -1
- package/dist/cjs/data-source/models/options/update-by-id-options.model.d.ts +1 -7
- package/dist/cjs/data-source/models/options/update-by-id-options.model.d.ts.map +1 -1
- package/dist/cjs/data-source/models/where/array-where-filter.model.d.ts +142 -3
- package/dist/cjs/data-source/models/where/array-where-filter.model.d.ts.map +1 -1
- package/dist/cjs/data-source/models/where/base-where-filter.model.d.ts +18 -1
- package/dist/cjs/data-source/models/where/base-where-filter.model.d.ts.map +1 -1
- package/dist/cjs/data-source/models/where/boolean-where-filter.model.d.ts +4 -2
- package/dist/cjs/data-source/models/where/boolean-where-filter.model.d.ts.map +1 -1
- package/dist/cjs/data-source/models/where/date-where-filter.model.d.ts +8 -15
- package/dist/cjs/data-source/models/where/date-where-filter.model.d.ts.map +1 -1
- package/dist/cjs/data-source/models/where/number-where-filter.model.d.ts +12 -19
- package/dist/cjs/data-source/models/where/number-where-filter.model.d.ts.map +1 -1
- package/dist/cjs/data-source/models/where/object-where-filter.model.d.ts +52 -7
- package/dist/cjs/data-source/models/where/object-where-filter.model.d.ts.map +1 -1
- package/dist/cjs/data-source/models/where/string-where-filter.model.d.ts +8 -15
- package/dist/cjs/data-source/models/where/string-where-filter.model.d.ts.map +1 -1
- package/dist/cjs/data-source/models/where/where-filter-keys.model.d.ts +46 -0
- package/dist/cjs/data-source/models/where/where-filter-keys.model.d.ts.map +1 -0
- package/dist/cjs/data-source/models/where/where-filter-keys.model.js +36 -0
- package/dist/cjs/data-source/models/where/where-filter-keys.model.js.map +1 -0
- package/dist/cjs/data-source/models/where/where-filter.model.d.ts +2 -2
- package/dist/cjs/data-source/models/where/where-filter.model.d.ts.map +1 -1
- package/dist/cjs/data-source/query-failed.error.js +27 -1
- package/dist/cjs/data-source/query-failed.error.js.map +1 -1
- package/dist/cjs/data-source/repository.d.ts +20 -6
- package/dist/cjs/data-source/repository.d.ts.map +1 -1
- package/dist/cjs/data-source/repository.js +88 -106
- package/dist/cjs/data-source/repository.js.map +1 -1
- package/dist/cjs/di/decorators/inject-repository.decorator.d.ts +2 -2
- package/dist/cjs/di/decorators/inject-repository.decorator.d.ts.map +1 -1
- package/dist/cjs/di/decorators/inject-repository.decorator.js.map +1 -1
- package/dist/cjs/di/default/zibri-di-providers.default.d.ts.map +1 -1
- package/dist/cjs/di/default/zibri-di-providers.default.js +73 -7
- package/dist/cjs/di/default/zibri-di-providers.default.js.map +1 -1
- package/dist/cjs/di/default/zibri-di-tokens.default.d.ts +33 -5
- package/dist/cjs/di/default/zibri-di-tokens.default.d.ts.map +1 -1
- package/dist/cjs/di/default/zibri-di-tokens.default.js +24 -5
- package/dist/cjs/di/default/zibri-di-tokens.default.js.map +1 -1
- package/dist/cjs/di/di-container.d.ts.map +1 -1
- package/dist/cjs/di/di-container.js +8 -7
- package/dist/cjs/di/di-container.js.map +1 -1
- package/dist/cjs/di/models/di-provider.model.d.ts +12 -0
- package/dist/cjs/di/models/di-provider.model.d.ts.map +1 -1
- package/dist/cjs/email/email.service.d.ts +2 -2
- package/dist/cjs/email/email.service.d.ts.map +1 -1
- package/dist/cjs/email/email.service.js +7 -7
- package/dist/cjs/email/email.service.js.map +1 -1
- package/dist/cjs/email/models/create-email-data.model.d.ts +1 -1
- package/dist/cjs/email/models/email.model.js +1 -1
- package/dist/cjs/email/models/email.model.js.map +1 -1
- package/dist/cjs/email/send-queued-emails.cron-job.d.ts.map +1 -1
- package/dist/cjs/email/send-queued-emails.cron-job.js +2 -1
- package/dist/cjs/email/send-queued-emails.cron-job.js.map +1 -1
- package/dist/cjs/entity/decorators/entity.decorator.d.ts +28 -1
- package/dist/cjs/entity/decorators/entity.decorator.d.ts.map +1 -1
- package/dist/cjs/entity/decorators/entity.decorator.js +6 -3
- package/dist/cjs/entity/decorators/entity.decorator.js.map +1 -1
- package/dist/cjs/entity/decorators/property.decorator.d.ts +10 -11
- package/dist/cjs/entity/decorators/property.decorator.d.ts.map +1 -1
- package/dist/cjs/entity/decorators/property.decorator.js +89 -41
- package/dist/cjs/entity/decorators/property.decorator.js.map +1 -1
- package/dist/cjs/entity/entity-metadata-missing.error.d.ts +9 -0
- package/dist/cjs/entity/entity-metadata-missing.error.d.ts.map +1 -0
- package/dist/cjs/entity/entity-metadata-missing.error.js +17 -0
- package/dist/cjs/entity/entity-metadata-missing.error.js.map +1 -0
- package/dist/cjs/entity/generation/generate-entity-file.function.d.ts.map +1 -1
- package/dist/cjs/entity/generation/generate-entity-file.function.js +4 -3
- package/dist/cjs/entity/generation/generate-entity-file.function.js.map +1 -1
- package/dist/cjs/entity/generation/generate-entity-files.function.d.ts.map +1 -1
- package/dist/cjs/entity/generation/generate-entity-files.function.js +1 -0
- package/dist/cjs/entity/generation/generate-entity-files.function.js.map +1 -1
- package/dist/cjs/entity/generation/providers/open-api-file.provider.d.ts.map +1 -1
- package/dist/cjs/entity/generation/providers/open-api-file.provider.js +2 -1
- package/dist/cjs/entity/generation/providers/open-api-file.provider.js.map +1 -1
- package/dist/cjs/entity/models/array-property-metadata.model.d.ts +1 -1
- package/dist/cjs/entity/models/array-property-metadata.model.d.ts.map +1 -1
- package/dist/cjs/entity/models/base-property-metadata.model.d.ts +21 -4
- package/dist/cjs/entity/models/base-property-metadata.model.d.ts.map +1 -1
- package/dist/cjs/entity/models/base-relation-metadata.model.d.ts +1 -1
- package/dist/cjs/entity/models/belongs-to-one-property-metadata.model.d.ts +28 -0
- package/dist/cjs/entity/models/belongs-to-one-property-metadata.model.d.ts.map +1 -0
- package/dist/cjs/entity/models/belongs-to-one-property-metadata.model.js +3 -0
- package/dist/cjs/entity/models/belongs-to-one-property-metadata.model.js.map +1 -0
- package/dist/cjs/entity/models/file-property-metadata.model.d.ts +1 -0
- package/dist/cjs/entity/models/file-property-metadata.model.d.ts.map +1 -1
- package/dist/cjs/entity/models/file-property-metadata.model.js +5 -5
- package/dist/cjs/entity/models/file-property-metadata.model.js.map +1 -1
- package/dist/cjs/entity/models/has-one-property-metadata.model.d.ts +18 -0
- package/dist/cjs/entity/models/has-one-property-metadata.model.d.ts.map +1 -0
- package/dist/cjs/entity/models/has-one-property-metadata.model.js +3 -0
- package/dist/cjs/entity/models/has-one-property-metadata.model.js.map +1 -0
- package/dist/cjs/entity/models/many-to-many-property-metadata.model.d.ts +3 -3
- package/dist/cjs/entity/models/many-to-many-property-metadata.model.d.ts.map +1 -1
- package/dist/cjs/entity/models/many-to-one-property-metadata.model.d.ts +11 -1
- package/dist/cjs/entity/models/many-to-one-property-metadata.model.d.ts.map +1 -1
- package/dist/cjs/entity/models/number-property-metadata.model.d.ts +11 -0
- package/dist/cjs/entity/models/number-property-metadata.model.d.ts.map +1 -1
- package/dist/cjs/entity/models/relation.enum.d.ts +2 -1
- package/dist/cjs/entity/models/relation.enum.d.ts.map +1 -1
- package/dist/cjs/entity/models/relation.enum.js +2 -1
- package/dist/cjs/entity/models/relation.enum.js.map +1 -1
- package/dist/cjs/entity/models/string-property-metadata.model.d.ts +45 -2
- package/dist/cjs/entity/models/string-property-metadata.model.d.ts.map +1 -1
- package/dist/cjs/entity/partial-class.model.js +1 -1
- package/dist/cjs/entity/partial-class.model.js.map +1 -1
- package/dist/cjs/error-handling/errors/validation.error.d.ts +2 -1
- package/dist/cjs/error-handling/errors/validation.error.d.ts.map +1 -1
- package/dist/cjs/error-handling/errors/validation.error.js +5 -2
- package/dist/cjs/error-handling/errors/validation.error.js.map +1 -1
- package/dist/cjs/error-handling/unknown-to-error-string.function.d.ts.map +1 -1
- package/dist/cjs/error-handling/unknown-to-error-string.function.js +2 -1
- package/dist/cjs/error-handling/unknown-to-error-string.function.js.map +1 -1
- package/dist/cjs/event/event-cleanup.cron-job.d.ts +13 -0
- package/dist/cjs/event/event-cleanup.cron-job.d.ts.map +1 -0
- package/dist/cjs/event/event-cleanup.cron-job.js +56 -0
- package/dist/cjs/event/event-cleanup.cron-job.js.map +1 -0
- package/dist/cjs/event/event-processing.error.d.ts +8 -0
- package/dist/cjs/event/event-processing.error.d.ts.map +1 -0
- package/dist/cjs/event/event-processing.error.js +19 -0
- package/dist/cjs/event/event-processing.error.js.map +1 -0
- package/dist/cjs/event/event-service.interface.d.ts +53 -0
- package/dist/cjs/event/event-service.interface.d.ts.map +1 -0
- package/dist/cjs/event/event-service.interface.js +3 -0
- package/dist/cjs/event/event-service.interface.js.map +1 -0
- package/dist/cjs/event/event-subscriber-run.model.d.ts +33 -0
- package/dist/cjs/event/event-subscriber-run.model.d.ts.map +1 -0
- package/dist/cjs/event/event-subscriber-run.model.js +66 -0
- package/dist/cjs/event/event-subscriber-run.model.js.map +1 -0
- package/dist/cjs/event/event.model.d.ts +54 -0
- package/dist/cjs/event/event.model.d.ts.map +1 -0
- package/dist/cjs/event/event.model.js +105 -0
- package/dist/cjs/event/event.model.js.map +1 -0
- package/dist/cjs/event/event.service.d.ts +57 -0
- package/dist/cjs/event/event.service.d.ts.map +1 -0
- package/dist/cjs/event/event.service.js +221 -0
- package/dist/cjs/event/event.service.js.map +1 -0
- package/dist/cjs/global/global-registry.d.ts +5 -0
- package/dist/cjs/global/global-registry.d.ts.map +1 -1
- package/dist/cjs/global/global-registry.js +4 -0
- package/dist/cjs/global/global-registry.js.map +1 -1
- package/dist/cjs/global/model-registry/decrypt-encryption-properties.function.d.ts +10 -0
- package/dist/cjs/global/model-registry/decrypt-encryption-properties.function.d.ts.map +1 -0
- package/dist/cjs/global/model-registry/decrypt-encryption-properties.function.js +64 -0
- package/dist/cjs/global/model-registry/decrypt-encryption-properties.function.js.map +1 -0
- package/dist/cjs/global/model-registry/default-descriptor.d.ts +28 -0
- package/dist/cjs/global/model-registry/default-descriptor.d.ts.map +1 -0
- package/dist/cjs/global/model-registry/default-descriptor.js +96 -0
- package/dist/cjs/global/model-registry/default-descriptor.js.map +1 -0
- package/dist/cjs/global/model-registry/encrypt-encryption-properties.function.d.ts +10 -0
- package/dist/cjs/global/model-registry/encrypt-encryption-properties.function.d.ts.map +1 -0
- package/dist/cjs/global/model-registry/encrypt-encryption-properties.function.js +71 -0
- package/dist/cjs/global/model-registry/encrypt-encryption-properties.function.js.map +1 -0
- package/dist/cjs/global/model-registry/encryption-descriptor.d.ts +27 -0
- package/dist/cjs/global/model-registry/encryption-descriptor.d.ts.map +1 -0
- package/dist/cjs/global/model-registry/encryption-descriptor.js +98 -0
- package/dist/cjs/global/model-registry/encryption-descriptor.js.map +1 -0
- package/dist/cjs/global/model-registry/exclude-descriptor.d.ts +27 -0
- package/dist/cjs/global/model-registry/exclude-descriptor.d.ts.map +1 -0
- package/dist/cjs/global/model-registry/exclude-descriptor.js +96 -0
- package/dist/cjs/global/model-registry/exclude-descriptor.js.map +1 -0
- package/dist/cjs/global/model-registry/hash-descriptor.d.ts +27 -0
- package/dist/cjs/global/model-registry/hash-descriptor.d.ts.map +1 -0
- package/dist/cjs/global/model-registry/hash-descriptor.js +98 -0
- package/dist/cjs/global/model-registry/hash-descriptor.js.map +1 -0
- package/dist/cjs/global/model-registry/hash-hash-properties.function.d.ts +10 -0
- package/dist/cjs/global/model-registry/hash-hash-properties.function.d.ts.map +1 -0
- package/dist/cjs/global/model-registry/hash-hash-properties.function.js +47 -0
- package/dist/cjs/global/model-registry/hash-hash-properties.function.js.map +1 -0
- package/dist/cjs/global/model-registry/model.registry.d.ts +53 -0
- package/dist/cjs/global/model-registry/model.registry.d.ts.map +1 -0
- package/dist/cjs/global/model-registry/model.registry.js +56 -0
- package/dist/cjs/global/model-registry/model.registry.js.map +1 -0
- package/dist/cjs/global/model-registry/remove-exclude-properties.function.d.ts +9 -0
- package/dist/cjs/global/model-registry/remove-exclude-properties.function.d.ts.map +1 -0
- package/dist/cjs/global/model-registry/remove-exclude-properties.function.js +66 -0
- package/dist/cjs/global/model-registry/remove-exclude-properties.function.js.map +1 -0
- package/dist/cjs/global/model-registry/restore-exclude-properties.function.d.ts +8 -0
- package/dist/cjs/global/model-registry/restore-exclude-properties.function.d.ts.map +1 -0
- package/dist/cjs/global/model-registry/restore-exclude-properties.function.js +46 -0
- package/dist/cjs/global/model-registry/restore-exclude-properties.function.js.map +1 -0
- package/dist/cjs/global/model-registry/set-default-values.function.d.ts +8 -0
- package/dist/cjs/global/model-registry/set-default-values.function.d.ts.map +1 -0
- package/dist/cjs/global/model-registry/set-default-values.function.js +44 -0
- package/dist/cjs/global/model-registry/set-default-values.function.js.map +1 -0
- package/dist/cjs/handlebars/handlebar.utilities.d.ts.map +1 -1
- package/dist/cjs/handlebars/handlebar.utilities.js +2 -1
- package/dist/cjs/handlebars/handlebar.utilities.js.map +1 -1
- package/dist/cjs/handlebars/resolve-all-array-keys.function.d.ts.map +1 -1
- package/dist/cjs/handlebars/resolve-all-array-keys.function.js +2 -1
- package/dist/cjs/handlebars/resolve-all-array-keys.function.js.map +1 -1
- package/dist/cjs/handlebars/resolve-keys-for-block-statement.function.d.ts.map +1 -1
- package/dist/cjs/handlebars/resolve-keys-for-block-statement.function.js +5 -4
- package/dist/cjs/handlebars/resolve-keys-for-block-statement.function.js.map +1 -1
- package/dist/cjs/http/cookie-options.model.d.ts +11 -0
- package/dist/cjs/http/cookie-options.model.d.ts.map +1 -0
- package/dist/cjs/http/cookie-options.model.js +3 -0
- package/dist/cjs/http/cookie-options.model.js.map +1 -0
- package/dist/cjs/http/http-request.model.d.ts +6 -1
- package/dist/cjs/http/http-request.model.d.ts.map +1 -1
- package/dist/cjs/http/http-request.model.js.map +1 -1
- package/dist/cjs/http/known-header.enum.d.ts +29 -25
- package/dist/cjs/http/known-header.enum.d.ts.map +1 -1
- package/dist/cjs/http/known-header.enum.js +30 -26
- package/dist/cjs/http/known-header.enum.js.map +1 -1
- package/dist/cjs/http/mime-type.enum.d.ts +34 -9
- package/dist/cjs/http/mime-type.enum.d.ts.map +1 -1
- package/dist/cjs/http/mime-type.enum.js +41 -8
- package/dist/cjs/http/mime-type.enum.js.map +1 -1
- package/dist/cjs/http/mime-type.helpers.d.ts +41 -17
- package/dist/cjs/http/mime-type.helpers.d.ts.map +1 -1
- package/dist/cjs/http/mime-type.helpers.js +93 -22
- package/dist/cjs/http/mime-type.helpers.js.map +1 -1
- package/dist/cjs/http-client/http-client.d.ts.map +1 -1
- package/dist/cjs/http-client/http-client.interface.d.ts +3 -2
- package/dist/cjs/http-client/http-client.interface.d.ts.map +1 -1
- package/dist/cjs/http-client/http-client.js +9 -7
- package/dist/cjs/http-client/http-client.js.map +1 -1
- package/dist/cjs/index.d.ts +97 -6
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +100 -6
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/localization/formatting/format-price-fn.model.d.ts +1 -1
- package/dist/cjs/localization/formatting/format-price-fn.model.d.ts.map +1 -1
- package/dist/cjs/localization/formatting/format-price.function.d.ts.map +1 -1
- package/dist/cjs/localization/formatting/format-price.function.js.map +1 -1
- package/dist/cjs/logging/error-to-logged-error.function.d.ts.map +1 -1
- package/dist/cjs/logging/error-to-logged-error.function.js +2 -1
- package/dist/cjs/logging/error-to-logged-error.function.js.map +1 -1
- package/dist/cjs/logging/log-cleanup.cron-job.d.ts +1 -1
- package/dist/cjs/logging/log-cleanup.cron-job.d.ts.map +1 -1
- package/dist/cjs/logging/log-cleanup.cron-job.js +3 -2
- package/dist/cjs/logging/log-cleanup.cron-job.js.map +1 -1
- package/dist/cjs/logging/log-context.model.d.ts +26 -1
- package/dist/cjs/logging/log-context.model.d.ts.map +1 -1
- package/dist/cjs/logging/log-context.model.js +33 -1
- package/dist/cjs/logging/log-context.model.js.map +1 -1
- package/dist/cjs/logging/log.model.d.ts +0 -5
- package/dist/cjs/logging/log.model.d.ts.map +1 -1
- package/dist/cjs/logging/log.model.js +0 -9
- package/dist/cjs/logging/log.model.js.map +1 -1
- package/dist/cjs/logging/logger.d.ts +3 -2
- package/dist/cjs/logging/logger.d.ts.map +1 -1
- package/dist/cjs/logging/logger.interface.d.ts +3 -2
- package/dist/cjs/logging/logger.interface.d.ts.map +1 -1
- package/dist/cjs/logging/logger.js +36 -9
- package/dist/cjs/logging/logger.js.map +1 -1
- package/dist/cjs/logging/transport/log-to-console.function.js +2 -2
- package/dist/cjs/logging/transport/log-to-console.function.js.map +1 -1
- package/dist/cjs/metrics/{scrape-metrics.cron-job.d.ts → collect-metrics.cron-job.d.ts} +3 -3
- package/dist/cjs/metrics/collect-metrics.cron-job.d.ts.map +1 -0
- package/dist/cjs/metrics/{scrape-metrics.cron-job.js → collect-metrics.cron-job.js} +11 -10
- package/dist/cjs/metrics/collect-metrics.cron-job.js.map +1 -0
- package/dist/cjs/metrics/metrics.service.d.ts.map +1 -1
- package/dist/cjs/metrics/metrics.service.js +4 -2
- package/dist/cjs/metrics/metrics.service.js.map +1 -1
- package/dist/cjs/multithreading/services/multithreading.service.d.ts.map +1 -1
- package/dist/cjs/multithreading/services/multithreading.service.js +3 -2
- package/dist/cjs/multithreading/services/multithreading.service.js.map +1 -1
- package/dist/cjs/open-api/open-api.service.d.ts.map +1 -1
- package/dist/cjs/open-api/open-api.service.js +35 -16
- package/dist/cjs/open-api/open-api.service.js.map +1 -1
- package/dist/cjs/parsing/form-data/file-response.model.d.ts +9 -0
- package/dist/cjs/parsing/form-data/file-response.model.d.ts.map +1 -1
- package/dist/cjs/parsing/form-data/file-response.model.js +15 -3
- package/dist/cjs/parsing/form-data/file-response.model.js.map +1 -1
- package/dist/cjs/parsing/form-data/form-data-body-parser-cleanup.cron-job.d.ts.map +1 -1
- package/dist/cjs/parsing/form-data/form-data-body-parser-cleanup.cron-job.js +2 -1
- package/dist/cjs/parsing/form-data/form-data-body-parser-cleanup.cron-job.js.map +1 -1
- package/dist/cjs/parsing/form-data/form-data.body-parser.d.ts.map +1 -1
- package/dist/cjs/parsing/form-data/form-data.body-parser.js +15 -13
- package/dist/cjs/parsing/form-data/form-data.body-parser.js.map +1 -1
- package/dist/cjs/parsing/functions/parse-array.function.d.ts.map +1 -1
- package/dist/cjs/parsing/functions/parse-array.function.js +2 -1
- package/dist/cjs/parsing/functions/parse-array.function.js.map +1 -1
- package/dist/cjs/parsing/functions/parse-boolean.function.d.ts.map +1 -1
- package/dist/cjs/parsing/functions/parse-boolean.function.js.map +1 -1
- package/dist/cjs/parsing/functions/parse-number.function.d.ts +4 -0
- package/dist/cjs/parsing/functions/parse-number.function.d.ts.map +1 -1
- package/dist/cjs/parsing/functions/parse-number.function.js +17 -0
- package/dist/cjs/parsing/functions/parse-number.function.js.map +1 -1
- package/dist/cjs/parsing/functions/parse-object.function.d.ts.map +1 -1
- package/dist/cjs/parsing/functions/parse-object.function.js +4 -2
- package/dist/cjs/parsing/functions/parse-object.function.js.map +1 -1
- package/dist/cjs/parsing/html/csp-options.model.d.ts +72 -0
- package/dist/cjs/parsing/html/csp-options.model.d.ts.map +1 -0
- package/dist/cjs/parsing/html/csp-options.model.js +43 -0
- package/dist/cjs/parsing/html/csp-options.model.js.map +1 -0
- package/dist/cjs/parsing/html/html-response.model.d.ts +17 -2
- package/dist/cjs/parsing/html/html-response.model.d.ts.map +1 -1
- package/dist/cjs/parsing/html/html-response.model.js +14 -5
- package/dist/cjs/parsing/html/html-response.model.js.map +1 -1
- package/dist/cjs/parsing/json/json.body-parser.js +4 -4
- package/dist/cjs/parsing/json/json.body-parser.js.map +1 -1
- package/dist/cjs/parsing/parser.d.ts.map +1 -1
- package/dist/cjs/parsing/parser.js +2 -1
- package/dist/cjs/parsing/parser.js.map +1 -1
- package/dist/cjs/plugin/invoicing/services/invoice-calc-service.interface.d.ts +1 -1
- package/dist/cjs/plugin/invoicing/services/invoice-calc-service.interface.d.ts.map +1 -1
- package/dist/cjs/plugin/invoicing/services/invoice-calc.service.d.ts +1 -0
- package/dist/cjs/plugin/invoicing/services/invoice-calc.service.d.ts.map +1 -1
- package/dist/cjs/plugin/invoicing/services/invoice-calc.service.js +16 -16
- package/dist/cjs/plugin/invoicing/services/invoice-calc.service.js.map +1 -1
- package/dist/cjs/plugin/invoicing/services/invoice-pdf.service.d.ts.map +1 -1
- package/dist/cjs/plugin/invoicing/services/invoice-pdf.service.js.map +1 -1
- package/dist/cjs/plugin/mailing-list/mailing-list.controller.d.ts.map +1 -1
- package/dist/cjs/plugin/mailing-list/mailing-list.controller.js +7 -3
- package/dist/cjs/plugin/mailing-list/mailing-list.controller.js.map +1 -1
- package/dist/cjs/plugin/payment/providers/pay-pal/pay-pal.payment-provider.js.map +1 -1
- package/dist/cjs/preact/collector.d.ts +3 -0
- package/dist/cjs/preact/collector.d.ts.map +1 -1
- package/dist/cjs/preact/collector.js +85 -27
- package/dist/cjs/preact/collector.js.map +1 -1
- package/dist/cjs/preact/generate-client-scripts.function.d.ts.map +1 -1
- package/dist/cjs/preact/generate-client-scripts.function.js +4 -5
- package/dist/cjs/preact/generate-client-scripts.function.js.map +1 -1
- package/dist/cjs/preact/preact.utilities.d.ts +0 -14
- package/dist/cjs/preact/preact.utilities.d.ts.map +1 -1
- package/dist/cjs/preact/preact.utilities.js +14 -28
- package/dist/cjs/preact/preact.utilities.js.map +1 -1
- package/dist/cjs/rate-limiting/rate-limiter.d.ts +7 -0
- package/dist/cjs/rate-limiting/rate-limiter.d.ts.map +1 -1
- package/dist/cjs/rate-limiting/rate-limiter.js +9 -0
- package/dist/cjs/rate-limiting/rate-limiter.js.map +1 -1
- package/dist/cjs/routing/decorators/body.decorator.d.ts +2 -1
- package/dist/cjs/routing/decorators/body.decorator.d.ts.map +1 -1
- package/dist/cjs/routing/decorators/body.decorator.js +2 -1
- package/dist/cjs/routing/decorators/body.decorator.js.map +1 -1
- package/dist/cjs/routing/decorators/param.decorator.d.ts +6 -6
- package/dist/cjs/routing/decorators/param.decorator.d.ts.map +1 -1
- package/dist/cjs/routing/decorators/param.decorator.js.map +1 -1
- package/dist/cjs/routing/models/array-param-metadata.model.d.ts +3 -3
- package/dist/cjs/routing/models/array-param-metadata.model.d.ts.map +1 -1
- package/dist/cjs/routing/models/boolean-param-metadata.model.d.ts +1 -1
- package/dist/cjs/routing/models/boolean-param-metadata.model.d.ts.map +1 -1
- package/dist/cjs/routing/models/date-param-metadata.model.d.ts +1 -1
- package/dist/cjs/routing/models/date-param-metadata.model.d.ts.map +1 -1
- package/dist/cjs/routing/models/number-param-metadata.model.d.ts +1 -1
- package/dist/cjs/routing/models/number-param-metadata.model.d.ts.map +1 -1
- package/dist/cjs/routing/models/object-param-metadata.model.d.ts +1 -1
- package/dist/cjs/routing/models/object-param-metadata.model.d.ts.map +1 -1
- package/dist/cjs/routing/models/string-param-metadata.model.d.ts +4 -2
- package/dist/cjs/routing/models/string-param-metadata.model.d.ts.map +1 -1
- package/dist/cjs/routing/param-metdata.helpers.d.ts.map +1 -1
- package/dist/cjs/routing/param-metdata.helpers.js +6 -0
- package/dist/cjs/routing/param-metdata.helpers.js.map +1 -1
- package/dist/cjs/routing/resolve-route-params.function.d.ts +3 -7
- package/dist/cjs/routing/resolve-route-params.function.d.ts.map +1 -1
- package/dist/cjs/routing/resolve-route-params.function.js +62 -22
- package/dist/cjs/routing/resolve-route-params.function.js.map +1 -1
- package/dist/cjs/routing/route-configuration.model.d.ts +2 -2
- package/dist/cjs/routing/route-configuration.model.d.ts.map +1 -1
- package/dist/cjs/routing/router.d.ts +3 -1
- package/dist/cjs/routing/router.d.ts.map +1 -1
- package/dist/cjs/routing/router.js +180 -92
- package/dist/cjs/routing/router.js.map +1 -1
- package/dist/cjs/types/any-enum.type.d.ts +1 -1
- package/dist/cjs/types/any-enum.type.d.ts.map +1 -1
- package/dist/cjs/types/deep-partial.type.d.ts +1 -1
- package/dist/cjs/types/deep-partial.type.d.ts.map +1 -1
- package/dist/cjs/types/percentage.type.d.ts +1 -1
- package/dist/cjs/types/percentage.type.d.ts.map +1 -1
- package/dist/cjs/utilities/bytes.d.ts +19 -0
- package/dist/cjs/utilities/bytes.d.ts.map +1 -0
- package/dist/cjs/utilities/bytes.js +25 -0
- package/dist/cjs/utilities/bytes.js.map +1 -0
- package/dist/cjs/utilities/doubly-linked-list.d.ts +59 -0
- package/dist/cjs/utilities/doubly-linked-list.d.ts.map +1 -0
- package/dist/cjs/utilities/doubly-linked-list.js +127 -0
- package/dist/cjs/utilities/doubly-linked-list.js.map +1 -0
- package/dist/cjs/utilities/is-numeric.function.d.ts +1 -1
- package/dist/cjs/utilities/is-numeric.function.d.ts.map +1 -1
- package/dist/cjs/utilities/is-numeric.function.js +2 -1
- package/dist/cjs/utilities/is-numeric.function.js.map +1 -1
- package/dist/cjs/utilities/json.utilities.d.ts +24 -0
- package/dist/cjs/utilities/json.utilities.d.ts.map +1 -0
- package/dist/cjs/utilities/json.utilities.js +37 -0
- package/dist/cjs/utilities/json.utilities.js.map +1 -0
- package/dist/cjs/utilities/metadata-injection-keys.enum.d.ts +3 -1
- package/dist/cjs/utilities/metadata-injection-keys.enum.d.ts.map +1 -1
- package/dist/cjs/utilities/metadata-injection-keys.enum.js +2 -0
- package/dist/cjs/utilities/metadata-injection-keys.enum.js.map +1 -1
- package/dist/cjs/utilities/ms.d.ts +8 -0
- package/dist/cjs/utilities/ms.d.ts.map +1 -1
- package/dist/cjs/utilities/ms.js +8 -0
- package/dist/cjs/utilities/ms.js.map +1 -1
- package/dist/cjs/utilities/now-in-ns.function.d.ts +6 -0
- package/dist/cjs/utilities/now-in-ns.function.d.ts.map +1 -0
- package/dist/cjs/utilities/now-in-ns.function.js +15 -0
- package/dist/cjs/utilities/now-in-ns.function.js.map +1 -0
- package/dist/cjs/utilities/{big-number.utilities.d.ts → number.utilities.d.ts} +14 -7
- package/dist/cjs/utilities/number.utilities.d.ts.map +1 -0
- package/dist/cjs/utilities/{big-number.utilities.js → number.utilities.js} +13 -4
- package/dist/cjs/utilities/number.utilities.js.map +1 -0
- package/dist/cjs/utilities/promise.utilities.d.ts +1 -1
- package/dist/cjs/utilities/promise.utilities.d.ts.map +1 -1
- package/dist/cjs/utilities/promise.utilities.js +1 -1
- package/dist/cjs/utilities/promise.utilities.js.map +1 -1
- package/dist/cjs/utilities/typeorm.utilities.d.ts +39 -0
- package/dist/cjs/utilities/typeorm.utilities.d.ts.map +1 -0
- package/dist/cjs/utilities/typeorm.utilities.js +47 -0
- package/dist/cjs/utilities/typeorm.utilities.js.map +1 -0
- package/dist/cjs/validation/functions/validate-boolean.function.d.ts +1 -1
- package/dist/cjs/validation/functions/validate-boolean.function.d.ts.map +1 -1
- package/dist/cjs/validation/functions/validate-boolean.function.js +12 -10
- package/dist/cjs/validation/functions/validate-boolean.function.js.map +1 -1
- package/dist/cjs/validation/functions/validate-date.function.d.ts +1 -1
- package/dist/cjs/validation/functions/validate-date.function.d.ts.map +1 -1
- package/dist/cjs/validation/functions/validate-date.function.js +10 -10
- package/dist/cjs/validation/functions/validate-date.function.js.map +1 -1
- package/dist/cjs/validation/functions/validate-file.function.d.ts +1 -1
- package/dist/cjs/validation/functions/validate-file.function.d.ts.map +1 -1
- package/dist/cjs/validation/functions/validate-file.function.js +9 -12
- package/dist/cjs/validation/functions/validate-file.function.js.map +1 -1
- package/dist/cjs/validation/functions/validate-number.function.d.ts +1 -1
- package/dist/cjs/validation/functions/validate-number.function.d.ts.map +1 -1
- package/dist/cjs/validation/functions/validate-number.function.js +37 -11
- package/dist/cjs/validation/functions/validate-number.function.js.map +1 -1
- package/dist/cjs/validation/functions/validate-string.function.d.ts +1 -1
- package/dist/cjs/validation/functions/validate-string.function.d.ts.map +1 -1
- package/dist/cjs/validation/functions/validate-string.function.js +15 -4
- package/dist/cjs/validation/functions/validate-string.function.js.map +1 -1
- package/dist/cjs/validation/validation-problem.model.d.ts.map +1 -1
- package/dist/cjs/validation/validation-problem.model.js +4 -7
- package/dist/cjs/validation/validation-problem.model.js.map +1 -1
- package/dist/cjs/validation/validation-service.interface.d.ts +5 -5
- package/dist/cjs/validation/validation-service.interface.d.ts.map +1 -1
- package/dist/cjs/validation/validation.service.d.ts +7 -5
- package/dist/cjs/validation/validation.service.d.ts.map +1 -1
- package/dist/cjs/validation/validation.service.js +61 -76
- package/dist/cjs/validation/validation.service.js.map +1 -1
- package/dist/cjs/websocket/models/websocket-message.model.js +1 -1
- package/dist/cjs/websocket/models/websocket-message.model.js.map +1 -1
- package/dist/cjs/websocket/models/websocket-request.model.d.ts +5 -11
- package/dist/cjs/websocket/models/websocket-request.model.d.ts.map +1 -1
- package/dist/cjs/websocket/models/websocket-request.model.js.map +1 -1
- package/dist/cjs/websocket/services/websocket.service.d.ts.map +1 -1
- package/dist/cjs/websocket/services/websocket.service.js +64 -58
- package/dist/cjs/websocket/services/websocket.service.js.map +1 -1
- package/dist/esm/application-options.model.js +3 -1
- package/dist/esm/application-options.model.js.map +1 -1
- package/dist/esm/application.js +148 -84
- package/dist/esm/application.js.map +1 -1
- package/dist/esm/assets/asset-service.interface.js +2 -1
- package/dist/esm/assets/asset.service.js +31 -30
- package/dist/esm/assets/asset.service.js.map +1 -1
- package/dist/esm/auth/2fa/methods/otp/hi-base32.utilities.js +7 -3
- package/dist/esm/auth/2fa/methods/otp/hi-base32.utilities.js.map +1 -1
- package/dist/esm/auth/2fa/methods/otp/otp-credentials.model.js +17 -13
- package/dist/esm/auth/2fa/methods/otp/otp-credentials.model.js.map +1 -1
- package/dist/esm/auth/2fa/methods/otp/otp.two-factor-method.js +32 -29
- package/dist/esm/auth/2fa/methods/otp/otp.two-factor-method.js.map +1 -1
- package/dist/esm/auth/2fa/methods/otp/otp.utilities.js +8 -4
- package/dist/esm/auth/2fa/methods/otp/otp.utilities.js.map +1 -1
- package/dist/esm/auth/2fa/methods/two-factor-method.interface.js +4 -1
- package/dist/esm/auth/2fa/methods/two-factor-method.interface.js.map +1 -1
- package/dist/esm/auth/2fa/two-factor-methods.model.js +2 -1
- package/dist/esm/auth/2fa/two-factor-service.interface.js +2 -1
- package/dist/esm/auth/2fa/two-factor.service.js +19 -12
- package/dist/esm/auth/2fa/two-factor.service.js.map +1 -1
- package/dist/esm/auth/auth-controller.interface.js +2 -1
- package/dist/esm/auth/auth-service.interface.js +2 -1
- package/dist/esm/auth/auth.service.js +89 -78
- package/dist/esm/auth/auth.service.js.map +1 -1
- package/dist/esm/auth/decorators/auth.decorator.js +17 -14
- package/dist/esm/auth/decorators/auth.decorator.js.map +1 -1
- package/dist/esm/auth/decorators/belongs-to.decorator.js +10 -7
- package/dist/esm/auth/decorators/belongs-to.decorator.js.map +1 -1
- package/dist/esm/auth/decorators/current-user.decorator.js +7 -4
- package/dist/esm/auth/decorators/current-user.decorator.js.map +1 -1
- package/dist/esm/auth/decorators/has-role.decorator.js +10 -7
- package/dist/esm/auth/decorators/has-role.decorator.js.map +1 -1
- package/dist/esm/auth/decorators/is-logged-in.decorator.js +10 -7
- package/dist/esm/auth/decorators/is-logged-in.decorator.js.map +1 -1
- package/dist/esm/auth/decorators/is-not-logged-in.decorator.js +10 -7
- package/dist/esm/auth/decorators/is-not-logged-in.decorator.js.map +1 -1
- package/dist/esm/auth/decorators/require-2fa.decorator.js +11 -7
- package/dist/esm/auth/decorators/require-2fa.decorator.js.map +1 -1
- package/dist/esm/auth/decorators/user-repo.decorator.js +10 -7
- package/dist/esm/auth/decorators/user-repo.decorator.js.map +1 -1
- package/dist/esm/auth/encryption/encryption-key.model.js +67 -0
- package/dist/esm/auth/encryption/encryption-key.model.js.map +1 -0
- package/dist/esm/auth/encryption/encryption-master-options.model.js +3 -0
- package/dist/esm/auth/encryption/encryption-master-options.model.js.map +1 -0
- package/dist/esm/auth/encryption/encryption-service.interface.js +3 -0
- package/dist/esm/auth/encryption/encryption-service.interface.js.map +1 -0
- package/dist/esm/auth/encryption/encryption.service.js +559 -0
- package/dist/esm/auth/encryption/encryption.service.js.map +1 -0
- package/dist/esm/auth/encryption/encryption.utilities.js +37 -0
- package/dist/esm/auth/encryption/encryption.utilities.js.map +1 -0
- package/dist/esm/auth/encryption/strategies/aes-gcm.encryption-strategy.js +71 -0
- package/dist/esm/auth/encryption/strategies/aes-gcm.encryption-strategy.js.map +1 -0
- package/dist/esm/auth/encryption/strategies/encryption-strategy-entity.model.js +67 -0
- package/dist/esm/auth/encryption/strategies/encryption-strategy-entity.model.js.map +1 -0
- package/dist/esm/auth/encryption/strategies/encryption-strategy.interface.js +3 -0
- package/dist/esm/auth/encryption/strategies/encryption-strategy.interface.js.map +1 -0
- package/dist/esm/auth/hash/hash-service.interface.js +3 -0
- package/dist/esm/auth/hash/hash-service.interface.js.map +1 -0
- package/dist/esm/auth/hash/hash.service.js +148 -0
- package/dist/esm/auth/hash/hash.service.js.map +1 -0
- package/dist/esm/auth/hash/hash.utilities.js +36 -0
- package/dist/esm/auth/hash/hash.utilities.js.map +1 -0
- package/dist/esm/auth/hash/strategies/bcrypt.hash-strategy.js +26 -0
- package/dist/esm/auth/hash/strategies/bcrypt.hash-strategy.js.map +1 -0
- package/dist/esm/auth/hash/strategies/hash-strategy-entity.model.js +58 -0
- package/dist/esm/auth/hash/strategies/hash-strategy-entity.model.js.map +1 -0
- package/dist/esm/auth/hash/strategies/hash-strategy.interface.js +3 -0
- package/dist/esm/auth/hash/strategies/hash-strategy.interface.js.map +1 -0
- package/dist/esm/auth/models/base-user.model.js +11 -7
- package/dist/esm/auth/models/base-user.model.js.map +1 -1
- package/dist/esm/auth/models/belongs-to-metadata.model.js +2 -1
- package/dist/esm/auth/models/has-role-metadata.model.js +2 -1
- package/dist/esm/auth/models/is-logged-in-metadata.model.js +2 -1
- package/dist/esm/auth/models/is-not-logged-in-metadata.model.js +2 -1
- package/dist/esm/auth/models/password-reset-token.model.js +16 -12
- package/dist/esm/auth/models/password-reset-token.model.js.map +1 -1
- package/dist/esm/auth/models/require-2fa-metadata.model.js +2 -1
- package/dist/esm/auth/models/skip-auth-metadata.model.js +2 -1
- package/dist/esm/auth/models/user-repositories.model.js +2 -1
- package/dist/esm/auth/strategies/auth-strategies.model.js +2 -1
- package/dist/esm/auth/strategies/auth-strategy.interface.js +4 -1
- package/dist/esm/auth/strategies/auth-strategy.interface.js.map +1 -1
- package/dist/esm/auth/strategies/cookie/cookie-auth-confirm-password-reset-data.model.js +40 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth-confirm-password-reset-data.model.js.map +1 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth-credentials.model.js +80 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth-credentials.model.js.map +1 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth-data.model.js +60 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth-data.model.js.map +1 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth-logout-data.model.js +40 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth-logout-data.model.js.map +1 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth-refresh-login-data.model.js +14 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth-refresh-login-data.model.js.map +1 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth-refresh-session.model.js +77 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth-refresh-session.model.js.map +1 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth-request-password-reset-data.model.js +3 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth-request-password-reset-data.model.js.map +1 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth-session-cleanup.cron-job.js +54 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth-session-cleanup.cron-job.js.map +1 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth-session.model.js +59 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth-session.model.js.map +1 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth.auth-strategy.js +430 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth.auth-strategy.js.map +1 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth.controller.js +210 -0
- package/dist/esm/auth/strategies/cookie/cookie-auth.controller.js.map +1 -0
- package/dist/esm/auth/strategies/jwt/encoded-jwt-access-token.model.js +2 -1
- package/dist/esm/auth/strategies/jwt/jwt-access-token-payload.model.js +2 -1
- package/dist/esm/auth/strategies/jwt/jwt-auth-data.model.js +13 -9
- package/dist/esm/auth/strategies/jwt/jwt-auth-data.model.js.map +1 -1
- package/dist/esm/auth/strategies/jwt/jwt-auth.controller.js +87 -53
- package/dist/esm/auth/strategies/jwt/jwt-auth.controller.js.map +1 -1
- package/dist/esm/auth/strategies/jwt/jwt-confirm-password-reset-data.model.js +12 -4
- package/dist/esm/auth/strategies/jwt/jwt-confirm-password-reset-data.model.js.map +1 -1
- package/dist/esm/auth/strategies/jwt/jwt-credentials.model.js +35 -14
- package/dist/esm/auth/strategies/jwt/jwt-credentials.model.js.map +1 -1
- package/dist/esm/auth/strategies/jwt/jwt-refresh-login-data.model.js +11 -3
- package/dist/esm/auth/strategies/jwt/jwt-refresh-login-data.model.js.map +1 -1
- package/dist/esm/auth/strategies/jwt/jwt-refresh-token-cleanup.cron-job.js +48 -0
- package/dist/esm/auth/strategies/jwt/jwt-refresh-token-cleanup.cron-job.js.map +1 -0
- package/dist/esm/auth/strategies/jwt/jwt-refresh-token-payload.model.js +2 -1
- package/dist/esm/auth/strategies/jwt/jwt-refresh-token.model.js +18 -14
- package/dist/esm/auth/strategies/jwt/jwt-refresh-token.model.js.map +1 -1
- package/dist/esm/auth/strategies/jwt/jwt-request-password-reset-data.model.js +2 -1
- package/dist/esm/auth/strategies/jwt/jwt.auth-strategy.js +114 -106
- package/dist/esm/auth/strategies/jwt/jwt.auth-strategy.js.map +1 -1
- package/dist/esm/auth/strategies/jwt/jwt.model.js +8 -4
- package/dist/esm/auth/strategies/jwt/jwt.model.js.map +1 -1
- package/dist/esm/auth/strategies/jwt/jwt.utilities.js +8 -4
- package/dist/esm/auth/strategies/jwt/jwt.utilities.js.map +1 -1
- package/dist/esm/auth/user/user-repository.interface.js +2 -1
- package/dist/esm/auth/user/user-service.interface.js +2 -1
- package/dist/esm/auth/user/user.service.js +23 -20
- package/dist/esm/auth/user/user.service.js.map +1 -1
- package/dist/esm/backup/backup-entity.model.js +17 -14
- package/dist/esm/backup/backup-entity.model.js.map +1 -1
- package/dist/esm/backup/backup-resource-entity.model.js +25 -14
- package/dist/esm/backup/backup-resource-entity.model.js.map +1 -1
- package/dist/esm/backup/backup-resource.interface.js +2 -1
- package/dist/esm/backup/backup-service.interface.js +2 -1
- package/dist/esm/backup/backup.service.js +43 -39
- package/dist/esm/backup/backup.service.js.map +1 -1
- package/dist/esm/backup/decorators/backup-resource-metadata.model.js +2 -1
- package/dist/esm/backup/decorators/backup-resource.decorator.js +9 -6
- package/dist/esm/backup/decorators/backup-resource.decorator.js.map +1 -1
- package/dist/esm/backup/transports/backup-transport.interface.js +2 -1
- package/dist/esm/backup/transports/fs.backup-transport.js +25 -20
- package/dist/esm/backup/transports/fs.backup-transport.js.map +1 -1
- package/dist/esm/caching/cache/base-cache.model.js +245 -0
- package/dist/esm/caching/cache/base-cache.model.js.map +1 -0
- package/dist/esm/caching/cache/cache-operation.enum.js +14 -0
- package/dist/esm/caching/cache/cache-operation.enum.js.map +1 -0
- package/dist/esm/caching/cache/cache-options.model.js +3 -0
- package/dist/esm/caching/cache/cache-options.model.js.map +1 -0
- package/dist/esm/caching/cache/cache.interface.js +36 -0
- package/dist/esm/caching/cache/cache.interface.js.map +1 -0
- package/dist/esm/caching/cache/multi-tier.cache.js +190 -0
- package/dist/esm/caching/cache/multi-tier.cache.js.map +1 -0
- package/dist/esm/caching/cache/read-aside/read-aside.cache.js +78 -0
- package/dist/esm/caching/cache/read-aside/read-aside.cache.js.map +1 -0
- package/dist/esm/caching/cache/read-aside/write-around-read-aside.cache.js +39 -0
- package/dist/esm/caching/cache/read-aside/write-around-read-aside.cache.js.map +1 -0
- package/dist/esm/caching/cache/read-aside/write-behind-read-aside.cache.js +73 -0
- package/dist/esm/caching/cache/read-aside/write-behind-read-aside.cache.js.map +1 -0
- package/dist/esm/caching/cache/read-aside/write-invalidate-read-aside-args-only.cache.js +63 -0
- package/dist/esm/caching/cache/read-aside/write-invalidate-read-aside-args-only.cache.js.map +1 -0
- package/dist/esm/caching/cache/read-aside/write-invalidate-read-aside-with-result.cache.js +63 -0
- package/dist/esm/caching/cache/read-aside/write-invalidate-read-aside-with-result.cache.js.map +1 -0
- package/dist/esm/caching/cache/read-aside/write-through-read-aside.cache.js +64 -0
- package/dist/esm/caching/cache/read-aside/write-through-read-aside.cache.js.map +1 -0
- package/dist/esm/caching/cache/read-through/read-through.cache.js +78 -0
- package/dist/esm/caching/cache/read-through/read-through.cache.js.map +1 -0
- package/dist/esm/caching/cache/read-through/write-around-read-through.cache.js +36 -0
- package/dist/esm/caching/cache/read-through/write-around-read-through.cache.js.map +1 -0
- package/dist/esm/caching/cache/read-through/write-behind-read-through.cache.js +76 -0
- package/dist/esm/caching/cache/read-through/write-behind-read-through.cache.js.map +1 -0
- package/dist/esm/caching/cache/read-through/write-invalidate-read-through-args-only.cache.js +65 -0
- package/dist/esm/caching/cache/read-through/write-invalidate-read-through-args-only.cache.js.map +1 -0
- package/dist/esm/caching/cache/read-through/write-invalidate-read-through-with-result.cache.js +64 -0
- package/dist/esm/caching/cache/read-through/write-invalidate-read-through-with-result.cache.js.map +1 -0
- package/dist/esm/caching/cache/read-through/write-through-read-through.cache.js +61 -0
- package/dist/esm/caching/cache/read-through/write-through-read-through.cache.js.map +1 -0
- package/dist/esm/caching/cache-metrics.model.js +3 -0
- package/dist/esm/caching/cache-metrics.model.js.map +1 -0
- package/dist/esm/caching/cache-service.interface.js +3 -0
- package/dist/esm/caching/cache-service.interface.js.map +1 -0
- package/dist/esm/caching/cache-tag-matchers.js +29 -0
- package/dist/esm/caching/cache-tag-matchers.js.map +1 -0
- package/dist/esm/caching/cache.service.js +74 -0
- package/dist/esm/caching/cache.service.js.map +1 -0
- package/dist/esm/caching/decorators/cache-delete.decorator.js +30 -0
- package/dist/esm/caching/decorators/cache-delete.decorator.js.map +1 -0
- package/dist/esm/caching/decorators/cache-invalidate.decorator.js +29 -0
- package/dist/esm/caching/decorators/cache-invalidate.decorator.js.map +1 -0
- package/dist/esm/caching/decorators/cache-write.decorator.js +32 -0
- package/dist/esm/caching/decorators/cache-write.decorator.js.map +1 -0
- package/dist/esm/caching/decorators/cache.decorator.js +21 -0
- package/dist/esm/caching/decorators/cache.decorator.js.map +1 -0
- package/dist/esm/caching/decorators/cached.decorator.js +31 -0
- package/dist/esm/caching/decorators/cached.decorator.js.map +1 -0
- package/dist/esm/caching/decorators/decorator-types.js +3 -0
- package/dist/esm/caching/decorators/decorator-types.js.map +1 -0
- package/dist/esm/caching/store/cache-store.interface.js +3 -0
- package/dist/esm/caching/store/cache-store.interface.js.map +1 -0
- package/dist/esm/caching/store/cached-value.model.js +52 -0
- package/dist/esm/caching/store/cached-value.model.js.map +1 -0
- package/dist/esm/caching/store/in-memory.cache-store.js +227 -0
- package/dist/esm/caching/store/in-memory.cache-store.js.map +1 -0
- package/dist/esm/change-sets/change-set-repository.js +100 -79
- package/dist/esm/change-sets/change-set-repository.js.map +1 -1
- package/dist/esm/change-sets/models/change-set-entity.model.js +34 -3
- package/dist/esm/change-sets/models/change-set-entity.model.js.map +1 -1
- package/dist/esm/change-sets/models/change-set-type.enum.js +5 -2
- package/dist/esm/change-sets/models/change-set-type.enum.js.map +1 -1
- package/dist/esm/change-sets/models/change-set.model.js +19 -16
- package/dist/esm/change-sets/models/change-set.model.js.map +1 -1
- package/dist/esm/change-sets/models/change.model.js +24 -13
- package/dist/esm/change-sets/models/change.model.js.map +1 -1
- package/dist/esm/change-sets/models/soft-delete-entity.model.js +33 -4
- package/dist/esm/change-sets/models/soft-delete-entity.model.js.map +1 -1
- package/dist/esm/change-sets/models/soft-delete-find-all-options.model.js +2 -1
- package/dist/esm/change-sets/models/soft-delete-find-all-paginated-options.model.js +2 -1
- package/dist/esm/change-sets/models/soft-delete-find-by-id-options.model.js +2 -1
- package/dist/esm/change-sets/models/soft-delete-find-one-options.model.js +2 -1
- package/dist/esm/change-sets/models/soft-delete-update-all-options.model.js +2 -1
- package/dist/esm/change-sets/models/soft-delete-update-by-id-options.model.js +2 -1
- package/dist/esm/change-sets/models/soft-delete-where.model.js +2 -1
- package/dist/esm/change-sets/soft-delete-repository.js +38 -17
- package/dist/esm/change-sets/soft-delete-repository.js.map +1 -1
- package/dist/esm/context/als.utilities.js +77 -0
- package/dist/esm/context/als.utilities.js.map +1 -0
- package/dist/esm/context/base-context.js +15 -0
- package/dist/esm/context/base-context.js.map +1 -0
- package/dist/esm/context/cache/cache.context.js +61 -0
- package/dist/esm/context/cache/cache.context.js.map +1 -0
- package/dist/esm/context/request/http-request.context.js +43 -0
- package/dist/esm/context/request/http-request.context.js.map +1 -0
- package/dist/esm/context/request/request-context-token.model.js +70 -0
- package/dist/esm/context/request/request-context-token.model.js.map +1 -0
- package/dist/esm/context/request/websocket-request.context.js +43 -0
- package/dist/esm/context/request/websocket-request.context.js.map +1 -0
- package/dist/esm/cron/cron-expression.utilities.js +171 -0
- package/dist/esm/cron/cron-expression.utilities.js.map +1 -0
- package/dist/esm/cron/cron-job-entity.model.js +17 -14
- package/dist/esm/cron/cron-job-entity.model.js.map +1 -1
- package/dist/esm/cron/cron-job.model.js +22 -17
- package/dist/esm/cron/cron-job.model.js.map +1 -1
- package/dist/esm/cron/cron-service.interface.js +2 -1
- package/dist/esm/cron/cron.service.js +18 -13
- package/dist/esm/cron/cron.service.js.map +1 -1
- package/dist/esm/data-source/data-source-service.interface.js +2 -1
- package/dist/esm/data-source/data-source.service.js +17 -14
- package/dist/esm/data-source/data-source.service.js.map +1 -1
- package/dist/esm/data-source/data-sources/data-source-initialization.error.js +14 -0
- package/dist/esm/data-source/data-sources/data-source-initialization.error.js.map +1 -0
- package/dist/esm/data-source/data-sources/data-source.interface.js +15 -1
- package/dist/esm/data-source/data-sources/data-source.interface.js.map +1 -1
- package/dist/esm/data-source/data-sources/postgres-typeorm-data-source.model.js +289 -0
- package/dist/esm/data-source/data-sources/postgres-typeorm-data-source.model.js.map +1 -0
- package/dist/esm/data-source/data-sources/sql-data-source.interface.js +3 -0
- package/dist/esm/data-source/data-sources/sql-data-source.interface.js.map +1 -0
- package/dist/esm/data-source/data-sources/typeorm-base-data-source.model.js +378 -0
- package/dist/esm/data-source/data-sources/typeorm-base-data-source.model.js.map +1 -0
- package/dist/esm/data-source/data-sources/where-converter/postgres-typeorm-where-filter.converter.js +353 -0
- package/dist/esm/data-source/data-sources/where-converter/postgres-typeorm-where-filter.converter.js.map +1 -0
- package/dist/esm/data-source/data-sources/where-converter/typeorm-where-filter.converter.js +248 -0
- package/dist/esm/data-source/data-sources/where-converter/typeorm-where-filter.converter.js.map +1 -0
- package/dist/esm/data-source/decorators/data-source.decorator.js +8 -5
- package/dist/esm/data-source/decorators/data-source.decorator.js.map +1 -1
- package/dist/esm/data-source/hooks/before-return.js +3 -0
- package/dist/esm/data-source/hooks/before-return.js.map +1 -0
- package/dist/esm/data-source/hooks/before-save.js +3 -0
- package/dist/esm/data-source/hooks/before-save.js.map +1 -0
- package/dist/esm/data-source/hooks/hooks.default.js +37 -0
- package/dist/esm/data-source/hooks/hooks.default.js.map +1 -0
- package/dist/esm/data-source/migration/migration-entity.model.js +13 -10
- package/dist/esm/data-source/migration/migration-entity.model.js.map +1 -1
- package/dist/esm/data-source/migration/migration.model.js +10 -6
- package/dist/esm/data-source/migration/migration.model.js.map +1 -1
- package/dist/esm/data-source/models/column-type.model.js +2 -1
- package/dist/esm/data-source/models/data-source-options.model.js +2 -1
- package/dist/esm/data-source/models/options/base-repository-options.model.js +2 -1
- package/dist/esm/data-source/models/options/count-options.model.js +2 -1
- package/dist/esm/data-source/models/options/create-all-options.model.js +2 -1
- package/dist/esm/data-source/models/options/create-options.model.js +2 -1
- package/dist/esm/data-source/models/options/delete-all-options.model.js +2 -1
- package/dist/esm/data-source/models/options/delete-by-id-options.model.js +2 -1
- package/dist/esm/data-source/models/options/find-all-options.model.js +2 -1
- package/dist/esm/data-source/models/options/find-all-paginated-options.model.js +2 -1
- package/dist/esm/data-source/models/options/find-by-id-options.model.js +2 -1
- package/dist/esm/data-source/models/options/find-one-options.model.js +2 -1
- package/dist/esm/data-source/models/options/update-all-options.model.js +2 -1
- package/dist/esm/data-source/models/options/update-by-id-options.model.js +2 -1
- package/dist/esm/data-source/models/where/array-where-filter.model.js +2 -1
- package/dist/esm/data-source/models/where/base-where-filter.model.js +2 -1
- package/dist/esm/data-source/models/where/boolean-where-filter.model.js +2 -1
- package/dist/esm/data-source/models/where/date-where-filter.model.js +2 -1
- package/dist/esm/data-source/models/where/number-where-filter.model.js +2 -1
- package/dist/esm/data-source/models/where/object-where-filter.model.js +2 -1
- package/dist/esm/data-source/models/where/string-where-filter.model.js +2 -1
- package/dist/esm/data-source/models/where/where-filter-keys.model.js +36 -0
- package/dist/esm/data-source/models/where/where-filter-keys.model.js.map +1 -0
- package/dist/esm/data-source/models/where/where-filter.model.js +2 -1
- package/dist/esm/data-source/query-failed.error.js +32 -2
- package/dist/esm/data-source/query-failed.error.js.map +1 -1
- package/dist/esm/data-source/repository.js +116 -130
- package/dist/esm/data-source/repository.js.map +1 -1
- package/dist/esm/data-source/transaction/transaction.model.js +2 -1
- package/dist/esm/data-source/transaction/typeorm-transaction.model.js +5 -1
- package/dist/esm/data-source/transaction/typeorm-transaction.model.js.map +1 -1
- package/dist/esm/di/decorators/inject-repository.decorator.js +12 -8
- package/dist/esm/di/decorators/inject-repository.decorator.js.map +1 -1
- package/dist/esm/di/decorators/inject.decorator.js +8 -5
- package/dist/esm/di/decorators/inject.decorator.js.map +1 -1
- package/dist/esm/di/decorators/injectable.decorator.js +10 -7
- package/dist/esm/di/decorators/injectable.decorator.js.map +1 -1
- package/dist/esm/di/default/zibri-di-providers.default.js +143 -71
- package/dist/esm/di/default/zibri-di-providers.default.js.map +1 -1
- package/dist/esm/di/default/zibri-di-tokens.default.js +30 -8
- package/dist/esm/di/default/zibri-di-tokens.default.js.map +1 -1
- package/dist/esm/di/di-container.js +27 -22
- package/dist/esm/di/di-container.js.map +1 -1
- package/dist/esm/di/errors/get-dependency-stack-trace.function.js +6 -3
- package/dist/esm/di/errors/get-dependency-stack-trace.function.js.map +1 -1
- package/dist/esm/di/errors/no-provider.error.js +11 -7
- package/dist/esm/di/errors/no-provider.error.js.map +1 -1
- package/dist/esm/di/get-all-registered-tokens.function.js +6 -3
- package/dist/esm/di/get-all-registered-tokens.function.js.map +1 -1
- package/dist/esm/di/inject.function.js +6 -3
- package/dist/esm/di/inject.function.js.map +1 -1
- package/dist/esm/di/models/di-provider.model.js +4 -1
- package/dist/esm/di/models/di-provider.model.js.map +1 -1
- package/dist/esm/di/models/di-token.model.js +6 -3
- package/dist/esm/di/models/di-token.model.js.map +1 -1
- package/dist/esm/di/models/injection-token.model.js +5 -1
- package/dist/esm/di/models/injection-token.model.js.map +1 -1
- package/dist/esm/di/register.function.js +8 -5
- package/dist/esm/di/register.function.js.map +1 -1
- package/dist/esm/document/pdf.utilities.js +10 -3
- package/dist/esm/document/pdf.utilities.js.map +1 -1
- package/dist/esm/document/xml.utilities.js +7 -3
- package/dist/esm/document/xml.utilities.js.map +1 -1
- package/dist/esm/email/email-service.interface.js +2 -1
- package/dist/esm/email/email.service.js +38 -35
- package/dist/esm/email/email.service.js.map +1 -1
- package/dist/esm/email/models/create-email-data.model.js +12 -7
- package/dist/esm/email/models/create-email-data.model.js.map +1 -1
- package/dist/esm/email/models/email-attachment.model.js +8 -4
- package/dist/esm/email/models/email-attachment.model.js.map +1 -1
- package/dist/esm/email/models/email-config.model.js +2 -1
- package/dist/esm/email/models/email-priority.enum.js +5 -2
- package/dist/esm/email/models/email-priority.enum.js.map +1 -1
- package/dist/esm/email/models/email-status.enum.js +5 -2
- package/dist/esm/email/models/email-status.enum.js.map +1 -1
- package/dist/esm/email/models/email.model.js +25 -22
- package/dist/esm/email/models/email.model.js.map +1 -1
- package/dist/esm/email/send-queued-emails.cron-job.js +12 -8
- package/dist/esm/email/send-queued-emails.cron-job.js.map +1 -1
- package/dist/esm/entity/any-object.model.js +5 -1
- package/dist/esm/entity/any-object.model.js.map +1 -1
- package/dist/esm/entity/base-entity.model.js +7 -3
- package/dist/esm/entity/base-entity.model.js.map +1 -1
- package/dist/esm/entity/decorators/entity.decorator.js +16 -10
- package/dist/esm/entity/decorators/entity.decorator.js.map +1 -1
- package/dist/esm/entity/decorators/property.decorator.js +113 -61
- package/dist/esm/entity/decorators/property.decorator.js.map +1 -1
- package/dist/esm/entity/entity-metadata-missing.error.js +17 -0
- package/dist/esm/entity/entity-metadata-missing.error.js.map +1 -0
- package/dist/esm/entity/generation/generate-entity-file.function.js +16 -12
- package/dist/esm/entity/generation/generate-entity-file.function.js.map +1 -1
- package/dist/esm/entity/generation/generate-entity-files-for-provider.function.js +30 -27
- package/dist/esm/entity/generation/generate-entity-files-for-provider.function.js.map +1 -1
- package/dist/esm/entity/generation/generate-entity-files.function.js +18 -14
- package/dist/esm/entity/generation/generate-entity-files.function.js.map +1 -1
- package/dist/esm/entity/generation/get-entity-file-name.function.js +6 -3
- package/dist/esm/entity/generation/get-entity-file-name.function.js.map +1 -1
- package/dist/esm/entity/generation/providers/entity-generation-provider.interface.js +2 -1
- package/dist/esm/entity/generation/providers/open-api-file.provider.js +10 -5
- package/dist/esm/entity/generation/providers/open-api-file.provider.js.map +1 -1
- package/dist/esm/entity/generation/providers/open-api-to-v3.function.js +6 -3
- package/dist/esm/entity/generation/providers/open-api-to-v3.function.js.map +1 -1
- package/dist/esm/entity/generation/providers/open-api-url.provider.js +10 -6
- package/dist/esm/entity/generation/providers/open-api-url.provider.js.map +1 -1
- package/dist/esm/entity/intersection-class.model.js +6 -3
- package/dist/esm/entity/intersection-class.model.js.map +1 -1
- package/dist/esm/entity/models/array-property-metadata.model.js +2 -1
- package/dist/esm/entity/models/base-property-metadata.model.js +2 -1
- package/dist/esm/entity/models/base-relation-metadata.model.js +2 -1
- package/dist/esm/entity/models/belongs-to-one-property-metadata.model.js +3 -0
- package/dist/esm/entity/models/belongs-to-one-property-metadata.model.js.map +1 -0
- package/dist/esm/entity/models/boolean-property-metadata.model.js +2 -1
- package/dist/esm/entity/models/date-property-metadata.model.js +2 -1
- package/dist/esm/entity/models/file-property-metadata.model.js +9 -6
- package/dist/esm/entity/models/file-property-metadata.model.js.map +1 -1
- package/dist/esm/entity/models/has-one-property-metadata.model.js +3 -0
- package/dist/esm/entity/models/has-one-property-metadata.model.js.map +1 -0
- package/dist/esm/entity/models/many-to-many-property-metadata.model.js +2 -1
- package/dist/esm/entity/models/many-to-one-property-metadata.model.js +2 -1
- package/dist/esm/entity/models/number-property-metadata.model.js +2 -1
- package/dist/esm/entity/models/object-property-metadata.model.js +2 -1
- package/dist/esm/entity/models/one-to-many-property-metadata.model.js +2 -1
- package/dist/esm/entity/models/relation.enum.js +7 -3
- package/dist/esm/entity/models/relation.enum.js.map +1 -1
- package/dist/esm/entity/models/string-property-metadata.model.js +2 -1
- package/dist/esm/entity/models/unknown-property-metadata.model.js +2 -1
- package/dist/esm/entity/omit-class.model.js +6 -3
- package/dist/esm/entity/omit-class.model.js.map +1 -1
- package/dist/esm/entity/partial-class.model.js +10 -7
- package/dist/esm/entity/partial-class.model.js.map +1 -1
- package/dist/esm/entity/pick-class.model.js +8 -5
- package/dist/esm/entity/pick-class.model.js.map +1 -1
- package/dist/esm/entity/utilities/copy-class-properties.function.js +19 -14
- package/dist/esm/entity/utilities/copy-class-properties.function.js.map +1 -1
- package/dist/esm/error-handling/error-handler.js +25 -20
- package/dist/esm/error-handling/error-handler.js.map +1 -1
- package/dist/esm/error-handling/error-handler.model.js +2 -1
- package/dist/esm/error-handling/errors/bad-request.error.js +8 -4
- package/dist/esm/error-handling/errors/bad-request.error.js.map +1 -1
- package/dist/esm/error-handling/errors/conflict.error.js +8 -4
- package/dist/esm/error-handling/errors/conflict.error.js.map +1 -1
- package/dist/esm/error-handling/errors/content-too-large.error.js +8 -4
- package/dist/esm/error-handling/errors/content-too-large.error.js.map +1 -1
- package/dist/esm/error-handling/errors/http.error.js +7 -2
- package/dist/esm/error-handling/errors/http.error.js.map +1 -1
- package/dist/esm/error-handling/errors/internal-server.error.js +8 -4
- package/dist/esm/error-handling/errors/internal-server.error.js.map +1 -1
- package/dist/esm/error-handling/errors/missing-entities.error.js +5 -1
- package/dist/esm/error-handling/errors/missing-entities.error.js.map +1 -1
- package/dist/esm/error-handling/errors/missing-tokens.error.js +7 -3
- package/dist/esm/error-handling/errors/missing-tokens.error.js.map +1 -1
- package/dist/esm/error-handling/errors/not-found.error.js +8 -4
- package/dist/esm/error-handling/errors/not-found.error.js.map +1 -1
- package/dist/esm/error-handling/errors/too-many-requests.error.js +8 -4
- package/dist/esm/error-handling/errors/too-many-requests.error.js.map +1 -1
- package/dist/esm/error-handling/errors/unauthorized.error.js +8 -4
- package/dist/esm/error-handling/errors/unauthorized.error.js.map +1 -1
- package/dist/esm/error-handling/errors/unmatched-route.error.js +6 -2
- package/dist/esm/error-handling/errors/unmatched-route.error.js.map +1 -1
- package/dist/esm/error-handling/errors/validation.error.js +11 -4
- package/dist/esm/error-handling/errors/validation.error.js.map +1 -1
- package/dist/esm/error-handling/is-error.function.js +4 -1
- package/dist/esm/error-handling/is-error.function.js.map +1 -1
- package/dist/esm/error-handling/unknown-to-error-string.function.js +8 -4
- package/dist/esm/error-handling/unknown-to-error-string.function.js.map +1 -1
- package/dist/esm/event/event-cleanup.cron-job.js +56 -0
- package/dist/esm/event/event-cleanup.cron-job.js.map +1 -0
- package/dist/esm/event/event-processing.error.js +19 -0
- package/dist/esm/event/event-processing.error.js.map +1 -0
- package/dist/esm/event/event-service.interface.js +3 -0
- package/dist/esm/event/event-service.interface.js.map +1 -0
- package/dist/esm/event/event-subscriber-run.model.js +66 -0
- package/dist/esm/event/event-subscriber-run.model.js.map +1 -0
- package/dist/esm/event/event.model.js +105 -0
- package/dist/esm/event/event.model.js.map +1 -0
- package/dist/esm/event/event.service.js +221 -0
- package/dist/esm/event/event.service.js.map +1 -0
- package/dist/esm/global/after-app-init.interface.js +4 -1
- package/dist/esm/global/after-app-init.interface.js.map +1 -1
- package/dist/esm/global/after-app-shutdown.interface.js +4 -1
- package/dist/esm/global/after-app-shutdown.interface.js.map +1 -1
- package/dist/esm/global/app-state.enum.js +5 -2
- package/dist/esm/global/app-state.enum.js.map +1 -1
- package/dist/esm/global/before-app-init.interface.js +4 -1
- package/dist/esm/global/before-app-init.interface.js.map +1 -1
- package/dist/esm/global/before-app-shutdown.interface.js +4 -1
- package/dist/esm/global/before-app-shutdown.interface.js.map +1 -1
- package/dist/esm/global/global-registry.js +58 -50
- package/dist/esm/global/global-registry.js.map +1 -1
- package/dist/esm/global/model-registry/decrypt-encryption-properties.function.js +64 -0
- package/dist/esm/global/model-registry/decrypt-encryption-properties.function.js.map +1 -0
- package/dist/esm/global/model-registry/default-descriptor.js +96 -0
- package/dist/esm/global/model-registry/default-descriptor.js.map +1 -0
- package/dist/esm/global/model-registry/encrypt-encryption-properties.function.js +71 -0
- package/dist/esm/global/model-registry/encrypt-encryption-properties.function.js.map +1 -0
- package/dist/esm/global/model-registry/encryption-descriptor.js +98 -0
- package/dist/esm/global/model-registry/encryption-descriptor.js.map +1 -0
- package/dist/esm/global/model-registry/exclude-descriptor.js +96 -0
- package/dist/esm/global/model-registry/exclude-descriptor.js.map +1 -0
- package/dist/esm/global/model-registry/hash-descriptor.js +98 -0
- package/dist/esm/global/model-registry/hash-descriptor.js.map +1 -0
- package/dist/esm/global/model-registry/hash-hash-properties.function.js +47 -0
- package/dist/esm/global/model-registry/hash-hash-properties.function.js.map +1 -0
- package/dist/esm/global/model-registry/model.registry.js +56 -0
- package/dist/esm/global/model-registry/model.registry.js.map +1 -0
- package/dist/esm/global/model-registry/remove-exclude-properties.function.js +66 -0
- package/dist/esm/global/model-registry/remove-exclude-properties.function.js.map +1 -0
- package/dist/esm/global/model-registry/restore-exclude-properties.function.js +46 -0
- package/dist/esm/global/model-registry/restore-exclude-properties.function.js.map +1 -0
- package/dist/esm/global/model-registry/set-default-values.function.js +44 -0
- package/dist/esm/global/model-registry/set-default-values.function.js.map +1 -0
- package/dist/esm/global/on-app-init.interface.js +4 -1
- package/dist/esm/global/on-app-init.interface.js.map +1 -1
- package/dist/esm/global/on-app-shutdown.interface.js +4 -1
- package/dist/esm/global/on-app-shutdown.interface.js.map +1 -1
- package/dist/esm/global/on-app-start.interface.js +4 -1
- package/dist/esm/global/on-app-start.interface.js.map +1 -1
- package/dist/esm/handlebars/ast.model.js +2 -1
- package/dist/esm/handlebars/generate-handlebar-type-files.function.js +24 -20
- package/dist/esm/handlebars/generate-handlebar-type-files.function.js.map +1 -1
- package/dist/esm/handlebars/handlebar.utilities.js +26 -18
- package/dist/esm/handlebars/handlebar.utilities.js.map +1 -1
- package/dist/esm/handlebars/resolve-all-array-keys.function.js +8 -4
- package/dist/esm/handlebars/resolve-all-array-keys.function.js.map +1 -1
- package/dist/esm/handlebars/resolve-key-for-mustache-statement.function.js +4 -1
- package/dist/esm/handlebars/resolve-key-for-mustache-statement.function.js.map +1 -1
- package/dist/esm/handlebars/resolve-key-for-path-expression.function.js +4 -1
- package/dist/esm/handlebars/resolve-key-for-path-expression.function.js.map +1 -1
- package/dist/esm/handlebars/resolve-keys-for-block-statement.function.js +16 -12
- package/dist/esm/handlebars/resolve-keys-for-block-statement.function.js.map +1 -1
- package/dist/esm/handlebars/resolve-keys-for-partial-statement.function.js +8 -4
- package/dist/esm/handlebars/resolve-keys-for-partial-statement.function.js.map +1 -1
- package/dist/esm/handlebars/resolve-tree.function.js +16 -12
- package/dist/esm/handlebars/resolve-tree.function.js.map +1 -1
- package/dist/esm/http/cookie-options.model.js +3 -0
- package/dist/esm/http/cookie-options.model.js.map +1 -0
- package/dist/esm/http/header.type.js +2 -1
- package/dist/esm/http/http-method.enum.js +5 -2
- package/dist/esm/http/http-method.enum.js.map +1 -1
- package/dist/esm/http/http-request.model.js +4 -1
- package/dist/esm/http/http-request.model.js.map +1 -1
- package/dist/esm/http/http-response.model.js +2 -1
- package/dist/esm/http/http-status.enum.js +5 -2
- package/dist/esm/http/http-status.enum.js.map +1 -1
- package/dist/esm/http/known-header.enum.js +38 -30
- package/dist/esm/http/known-header.enum.js.map +1 -1
- package/dist/esm/http/mime-type.enum.js +46 -10
- package/dist/esm/http/mime-type.enum.js.map +1 -1
- package/dist/esm/http/mime-type.helpers.js +114 -38
- package/dist/esm/http/mime-type.helpers.js.map +1 -1
- package/dist/esm/http-client/http-client-response.model.js +4 -1
- package/dist/esm/http-client/http-client-response.model.js.map +1 -1
- package/dist/esm/http-client/http-client.error.js +7 -2
- package/dist/esm/http-client/http-client.error.js.map +1 -1
- package/dist/esm/http-client/http-client.interface.js +2 -1
- package/dist/esm/http-client/http-client.js +82 -44
- package/dist/esm/http-client/http-client.js.map +1 -1
- package/dist/esm/index.js +450 -340
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/localization/formatting/format-date-fn.model.js +2 -1
- package/dist/esm/localization/formatting/format-date.function.js +7 -3
- package/dist/esm/localization/formatting/format-date.function.js.map +1 -1
- package/dist/esm/localization/formatting/format-percent-fn.model.js +2 -1
- package/dist/esm/localization/formatting/format-percent.function.js +5 -1
- package/dist/esm/localization/formatting/format-percent.function.js.map +1 -1
- package/dist/esm/localization/formatting/format-price-fn.model.js +2 -1
- package/dist/esm/localization/formatting/format-price.function.js +7 -3
- package/dist/esm/localization/formatting/format-price.function.js.map +1 -1
- package/dist/esm/localization/models/currency-code.model.js +2 -1
- package/dist/esm/localization/models/language-code.model.js +2 -1
- package/dist/esm/localization/models/localize-options.model.js +2 -1
- package/dist/esm/logging/error-to-logged-error.function.js +6 -2
- package/dist/esm/logging/error-to-logged-error.function.js.map +1 -1
- package/dist/esm/logging/log-cleanup.cron-job.js +15 -11
- package/dist/esm/logging/log-cleanup.cron-job.js.map +1 -1
- package/dist/esm/logging/log-context.model.js +50 -13
- package/dist/esm/logging/log-context.model.js.map +1 -1
- package/dist/esm/logging/log-level.enum.js +5 -2
- package/dist/esm/logging/log-level.enum.js.map +1 -1
- package/dist/esm/logging/log.model.js +18 -24
- package/dist/esm/logging/log.model.js.map +1 -1
- package/dist/esm/logging/logged-error.model.js +9 -5
- package/dist/esm/logging/logged-error.model.js.map +1 -1
- package/dist/esm/logging/logger.helpers.js +18 -13
- package/dist/esm/logging/logger.helpers.js.map +1 -1
- package/dist/esm/logging/logger.interface.js +2 -1
- package/dist/esm/logging/logger.js +54 -24
- package/dist/esm/logging/logger.js.map +1 -1
- package/dist/esm/logging/transport/log-to-console.function.js +20 -16
- package/dist/esm/logging/transport/log-to-console.function.js.map +1 -1
- package/dist/esm/logging/transport/log-to-db.function.js +8 -5
- package/dist/esm/logging/transport/log-to-db.function.js.map +1 -1
- package/dist/esm/logging/transport/log-to-email.function.js +20 -16
- package/dist/esm/logging/transport/log-to-email.function.js.map +1 -1
- package/dist/esm/logging/transport/logger-transport.model.js +11 -7
- package/dist/esm/logging/transport/logger-transport.model.js.map +1 -1
- package/dist/esm/metrics/{scrape-metrics.cron-job.js → collect-metrics.cron-job.js} +17 -13
- package/dist/esm/metrics/collect-metrics.cron-job.js.map +1 -0
- package/dist/esm/metrics/counter.interface.js +2 -1
- package/dist/esm/metrics/gauge.interface.js +2 -1
- package/dist/esm/metrics/histogram.interface.js +2 -1
- package/dist/esm/metrics/metric-type.enum.js +5 -2
- package/dist/esm/metrics/metric-type.enum.js.map +1 -1
- package/dist/esm/metrics/metric.model.js +11 -7
- package/dist/esm/metrics/metric.model.js.map +1 -1
- package/dist/esm/metrics/metrics-service.interface.js +2 -1
- package/dist/esm/metrics/metrics.service.js +30 -22
- package/dist/esm/metrics/metrics.service.js.map +1 -1
- package/dist/esm/multithreading/models/base-thread-job-worker-data.model.js +2 -1
- package/dist/esm/multithreading/models/multithreading-options.model.js +2 -1
- package/dist/esm/multithreading/models/thread-job-data.model.js +2 -1
- package/dist/esm/multithreading/models/thread-job-entity.model.js +22 -19
- package/dist/esm/multithreading/models/thread-job-entity.model.js.map +1 -1
- package/dist/esm/multithreading/models/thread-job-function.model.js +2 -1
- package/dist/esm/multithreading/models/thread-job-message.model.js +2 -1
- package/dist/esm/multithreading/models/thread-job-status.enum.js +5 -2
- package/dist/esm/multithreading/models/thread-job-status.enum.js.map +1 -1
- package/dist/esm/multithreading/services/multithreading-service.interface.js +2 -1
- package/dist/esm/multithreading/services/multithreading.service.js +55 -48
- package/dist/esm/multithreading/services/multithreading.service.js.map +1 -1
- package/dist/esm/multithreading/services/thread-job-worker.js +7 -3
- package/dist/esm/multithreading/services/thread-job-worker.js.map +1 -1
- package/dist/esm/multithreading/services/thread-job.js +7 -3
- package/dist/esm/multithreading/services/thread-job.js.map +1 -1
- package/dist/esm/multithreading/services/worker/helpers.js +12 -7
- package/dist/esm/multithreading/services/worker/helpers.js.map +1 -1
- package/dist/esm/open-api/decorators/response.decorator.js +32 -29
- package/dist/esm/open-api/decorators/response.decorator.js.map +1 -1
- package/dist/esm/open-api/open-api-service.interface.js +2 -1
- package/dist/esm/open-api/open-api.model.js +2 -1
- package/dist/esm/open-api/open-api.service.js +157 -132
- package/dist/esm/open-api/open-api.service.js.map +1 -1
- package/dist/esm/open-api/pagination-result.model.js +7 -4
- package/dist/esm/open-api/pagination-result.model.js.map +1 -1
- package/dist/esm/parsing/body-parser.interface.js +2 -1
- package/dist/esm/parsing/decorators/body-parser.decorator.js +9 -6
- package/dist/esm/parsing/decorators/body-parser.decorator.js.map +1 -1
- package/dist/esm/parsing/form-data/file-response.model.js +31 -15
- package/dist/esm/parsing/form-data/file-response.model.js.map +1 -1
- package/dist/esm/parsing/form-data/file.model.js +13 -9
- package/dist/esm/parsing/form-data/file.model.js.map +1 -1
- package/dist/esm/parsing/form-data/form-data-body-parser-cleanup.cron-job.js +19 -15
- package/dist/esm/parsing/form-data/form-data-body-parser-cleanup.cron-job.js.map +1 -1
- package/dist/esm/parsing/form-data/form-data.body-parser.js +74 -69
- package/dist/esm/parsing/form-data/form-data.body-parser.js.map +1 -1
- package/dist/esm/parsing/form-data/form-data.model.js +9 -5
- package/dist/esm/parsing/form-data/form-data.model.js.map +1 -1
- package/dist/esm/parsing/functions/parse-array.function.js +16 -12
- package/dist/esm/parsing/functions/parse-array.function.js.map +1 -1
- package/dist/esm/parsing/functions/parse-boolean.function.js +4 -1
- package/dist/esm/parsing/functions/parse-boolean.function.js.map +1 -1
- package/dist/esm/parsing/functions/parse-date.function.js +6 -3
- package/dist/esm/parsing/functions/parse-date.function.js.map +1 -1
- package/dist/esm/parsing/functions/parse-number.function.js +23 -3
- package/dist/esm/parsing/functions/parse-number.function.js.map +1 -1
- package/dist/esm/parsing/functions/parse-object.function.js +26 -21
- package/dist/esm/parsing/functions/parse-object.function.js.map +1 -1
- package/dist/esm/parsing/functions/parse-string.function.js +4 -1
- package/dist/esm/parsing/functions/parse-string.function.js.map +1 -1
- package/dist/esm/parsing/html/csp-options.model.js +43 -0
- package/dist/esm/parsing/html/csp-options.model.js.map +1 -0
- package/dist/esm/parsing/html/html-response.model.js +19 -6
- package/dist/esm/parsing/html/html-response.model.js.map +1 -1
- package/dist/esm/parsing/json/json.body-parser.js +29 -26
- package/dist/esm/parsing/json/json.body-parser.js.map +1 -1
- package/dist/esm/parsing/parser.interface.js +2 -1
- package/dist/esm/parsing/parser.js +65 -58
- package/dist/esm/parsing/parser.js.map +1 -1
- package/dist/esm/plugin/invoicing/invoicing.plugin.js +28 -24
- package/dist/esm/plugin/invoicing/invoicing.plugin.js.map +1 -1
- package/dist/esm/plugin/invoicing/invoicing.tokens.js +6 -3
- package/dist/esm/plugin/invoicing/invoicing.tokens.js.map +1 -1
- package/dist/esm/plugin/invoicing/models/amount-unit.model.js +8 -4
- package/dist/esm/plugin/invoicing/models/amount-unit.model.js.map +1 -1
- package/dist/esm/plugin/invoicing/models/company-info.model.js +2 -1
- package/dist/esm/plugin/invoicing/models/invoice-address.model.js +17 -13
- package/dist/esm/plugin/invoicing/models/invoice-address.model.js.map +1 -1
- package/dist/esm/plugin/invoicing/models/invoice-item.model.js +15 -11
- package/dist/esm/plugin/invoicing/models/invoice-item.model.js.map +1 -1
- package/dist/esm/plugin/invoicing/models/invoice.model.js +22 -19
- package/dist/esm/plugin/invoicing/models/invoice.model.js.map +1 -1
- package/dist/esm/plugin/invoicing/models/invoicing-options-input.model.js +2 -1
- package/dist/esm/plugin/invoicing/models/invoicing-options.model.js +2 -1
- package/dist/esm/plugin/invoicing/models/number-invoices.model.js +13 -10
- package/dist/esm/plugin/invoicing/models/number-invoices.model.js.map +1 -1
- package/dist/esm/plugin/invoicing/models/vat.model.js +9 -5
- package/dist/esm/plugin/invoicing/models/vat.model.js.map +1 -1
- package/dist/esm/plugin/invoicing/services/conformance/en16931/en16931-conformance.service.js +13 -10
- package/dist/esm/plugin/invoicing/services/conformance/en16931/en16931-conformance.service.js.map +1 -1
- package/dist/esm/plugin/invoicing/services/conformance/en16931/peppol-conformance.service.js +9 -6
- package/dist/esm/plugin/invoicing/services/conformance/en16931/peppol-conformance.service.js.map +1 -1
- package/dist/esm/plugin/invoicing/services/conformance/en16931/x-rechnung-conformance.service.js +9 -6
- package/dist/esm/plugin/invoicing/services/conformance/en16931/x-rechnung-conformance.service.js.map +1 -1
- package/dist/esm/plugin/invoicing/services/conformance/invoice-conformance-service.interface.js +2 -1
- package/dist/esm/plugin/invoicing/services/invoice-calc-service.interface.js +2 -1
- package/dist/esm/plugin/invoicing/services/invoice-calc.service.js +23 -20
- package/dist/esm/plugin/invoicing/services/invoice-calc.service.js.map +1 -1
- package/dist/esm/plugin/invoicing/services/invoice-number-service.interface.js +2 -1
- package/dist/esm/plugin/invoicing/services/invoice-number.service.js +20 -17
- package/dist/esm/plugin/invoicing/services/invoice-number.service.js.map +1 -1
- package/dist/esm/plugin/invoicing/services/invoice-pdf-service.interface.js +2 -1
- package/dist/esm/plugin/invoicing/services/invoice-pdf.service.js +18 -15
- package/dist/esm/plugin/invoicing/services/invoice-pdf.service.js.map +1 -1
- package/dist/esm/plugin/mailing-list/mailing-list.controller.js +59 -52
- package/dist/esm/plugin/mailing-list/mailing-list.controller.js.map +1 -1
- package/dist/esm/plugin/mailing-list/mailing-list.plugin.js +20 -16
- package/dist/esm/plugin/mailing-list/mailing-list.plugin.js.map +1 -1
- package/dist/esm/plugin/mailing-list/mailing-list.tokens.js +6 -3
- package/dist/esm/plugin/mailing-list/mailing-list.tokens.js.map +1 -1
- package/dist/esm/plugin/mailing-list/models/mailing-list-base-email-template.model.js +2 -1
- package/dist/esm/plugin/mailing-list/models/mailing-list-preferences-page-template.model.js +2 -1
- package/dist/esm/plugin/mailing-list/models/mailing-list-subscribe-confirmation-email-template.model.js +2 -1
- package/dist/esm/plugin/mailing-list/models/mailing-list-subscribe-success-page-template.model.js +2 -1
- package/dist/esm/plugin/mailing-list/models/mailing-list-subscriber.model.js +14 -11
- package/dist/esm/plugin/mailing-list/models/mailing-list-subscriber.model.js.map +1 -1
- package/dist/esm/plugin/mailing-list/models/mailing-list-subscription-confirmation-token.model.js +18 -14
- package/dist/esm/plugin/mailing-list/models/mailing-list-subscription-confirmation-token.model.js.map +1 -1
- package/dist/esm/plugin/mailing-list/models/mailing-list-unsubscribe-confirmation-page-template.model.js +2 -1
- package/dist/esm/plugin/mailing-list/models/mailing-list.model.js +13 -10
- package/dist/esm/plugin/mailing-list/models/mailing-list.model.js.map +1 -1
- package/dist/esm/plugin/mailing-list/models/update-mailing-list-preferences.model.js +7 -3
- package/dist/esm/plugin/mailing-list/models/update-mailing-list-preferences.model.js.map +1 -1
- package/dist/esm/plugin/mailing-list/services/mailing-list-service.interface.js +7 -3
- package/dist/esm/plugin/mailing-list/services/mailing-list-service.interface.js.map +1 -1
- package/dist/esm/plugin/mailing-list/services/mailing-list.service.js +42 -39
- package/dist/esm/plugin/mailing-list/services/mailing-list.service.js.map +1 -1
- package/dist/esm/plugin/payment/models/payment-method.model.js +5 -2
- package/dist/esm/plugin/payment/models/payment-method.model.js.map +1 -1
- package/dist/esm/plugin/payment/models/payment-plugin-options-input.model.js +2 -1
- package/dist/esm/plugin/payment/models/payment-plugin-options.model.js +2 -1
- package/dist/esm/plugin/payment/models/payment-status.enum.js +5 -2
- package/dist/esm/plugin/payment/models/payment-status.enum.js.map +1 -1
- package/dist/esm/plugin/payment/models/payment.model.js +19 -16
- package/dist/esm/plugin/payment/models/payment.model.js.map +1 -1
- package/dist/esm/plugin/payment/payment.plugin.js +21 -17
- package/dist/esm/plugin/payment/payment.plugin.js.map +1 -1
- package/dist/esm/plugin/payment/payment.tokens.js +6 -3
- package/dist/esm/plugin/payment/payment.tokens.js.map +1 -1
- package/dist/esm/plugin/payment/providers/pay-pal/pay-pal-client.js +55 -46
- package/dist/esm/plugin/payment/providers/pay-pal/pay-pal-client.js.map +1 -1
- package/dist/esm/plugin/payment/providers/pay-pal/pay-pal.payment-provider.js +33 -29
- package/dist/esm/plugin/payment/providers/pay-pal/pay-pal.payment-provider.js.map +1 -1
- package/dist/esm/plugin/payment/providers/payment-provider.interface.js +2 -1
- package/dist/esm/plugin/payment/services/payment-service.interface.js +2 -1
- package/dist/esm/plugin/payment/services/payment-service.types.js +2 -1
- package/dist/esm/plugin/payment/services/payment.service.js +28 -25
- package/dist/esm/plugin/payment/services/payment.service.js.map +1 -1
- package/dist/esm/plugin/plugin.model.js +5 -1
- package/dist/esm/plugin/plugin.model.js.map +1 -1
- package/dist/esm/preact/collector.js +101 -39
- package/dist/esm/preact/collector.js.map +1 -1
- package/dist/esm/preact/generate-client-scripts.function.js +33 -30
- package/dist/esm/preact/generate-client-scripts.function.js.map +1 -1
- package/dist/esm/preact/hooks/hooks.js +6 -3
- package/dist/esm/preact/hooks/hooks.js.map +1 -1
- package/dist/esm/preact/hooks/on-client.hook.js +4 -1
- package/dist/esm/preact/hooks/on-client.hook.js.map +1 -1
- package/dist/esm/preact/hooks/on-server.hook.js +4 -1
- package/dist/esm/preact/hooks/on-server.hook.js.map +1 -1
- package/dist/esm/preact/preact-component.model.js +2 -1
- package/dist/esm/preact/preact-email-component.model.js +2 -1
- package/dist/esm/preact/preact.utilities.js +49 -56
- package/dist/esm/preact/preact.utilities.js.map +1 -1
- package/dist/esm/preact/string-aware-replace.function.js +6 -2
- package/dist/esm/preact/string-aware-replace.function.js.map +1 -1
- package/dist/esm/preact/validate-email-templates.function.js +4 -1
- package/dist/esm/preact/validate-email-templates.function.js.map +1 -1
- package/dist/esm/rate-limiting/rate-limiter.js +19 -6
- package/dist/esm/rate-limiting/rate-limiter.js.map +1 -1
- package/dist/esm/routing/controller-route-configuration.model.js +2 -1
- package/dist/esm/routing/decorators/body.decorator.js +25 -20
- package/dist/esm/routing/decorators/body.decorator.js.map +1 -1
- package/dist/esm/routing/decorators/controller.decorator.js +10 -7
- package/dist/esm/routing/decorators/controller.decorator.js.map +1 -1
- package/dist/esm/routing/decorators/create-http-decorator.function.js +8 -5
- package/dist/esm/routing/decorators/create-http-decorator.function.js.map +1 -1
- package/dist/esm/routing/decorators/delete.decorator.js +7 -4
- package/dist/esm/routing/decorators/delete.decorator.js.map +1 -1
- package/dist/esm/routing/decorators/get.decorator.js +7 -4
- package/dist/esm/routing/decorators/get.decorator.js.map +1 -1
- package/dist/esm/routing/decorators/param.decorator.js +19 -16
- package/dist/esm/routing/decorators/param.decorator.js.map +1 -1
- package/dist/esm/routing/decorators/patch.decorator.js +7 -4
- package/dist/esm/routing/decorators/patch.decorator.js.map +1 -1
- package/dist/esm/routing/decorators/post.decorator.js +7 -4
- package/dist/esm/routing/decorators/post.decorator.js.map +1 -1
- package/dist/esm/routing/missing-base-route.error.js +7 -3
- package/dist/esm/routing/missing-base-route.error.js.map +1 -1
- package/dist/esm/routing/models/array-param-metadata.model.js +2 -1
- package/dist/esm/routing/models/base-param-metadata.model.js +2 -1
- package/dist/esm/routing/models/boolean-param-metadata.model.js +2 -1
- package/dist/esm/routing/models/crud-controller.model.js +35 -32
- package/dist/esm/routing/models/crud-controller.model.js.map +1 -1
- package/dist/esm/routing/models/date-param-metadata.model.js +2 -1
- package/dist/esm/routing/models/number-param-metadata.model.js +2 -1
- package/dist/esm/routing/models/object-param-metadata.model.js +2 -1
- package/dist/esm/routing/models/string-param-metadata.model.js +2 -1
- package/dist/esm/routing/param-metdata.helpers.js +16 -4
- package/dist/esm/routing/param-metdata.helpers.js.map +1 -1
- package/dist/esm/routing/resolve-route-params.function.js +77 -34
- package/dist/esm/routing/resolve-route-params.function.js.map +1 -1
- package/dist/esm/routing/route-configuration.model.js +2 -1
- package/dist/esm/routing/router.interface.js +2 -1
- package/dist/esm/routing/router.js +230 -139
- package/dist/esm/routing/router.js.map +1 -1
- package/dist/esm/types/any-enum.type.js +2 -1
- package/dist/esm/types/deep-partial.type.js +2 -1
- package/dist/esm/types/exclude-strict.type.js +2 -1
- package/dist/esm/types/newable.type.js +2 -1
- package/dist/esm/types/omit-strict.type.js +2 -1
- package/dist/esm/types/percentage.type.js +2 -1
- package/dist/esm/types/version.type.js +2 -1
- package/dist/esm/utilities/add-import-statement.function.js +4 -1
- package/dist/esm/utilities/add-import-statement.function.js.map +1 -1
- package/dist/esm/utilities/bytes.js +25 -0
- package/dist/esm/utilities/bytes.js.map +1 -0
- package/dist/esm/utilities/compare-versions.function.js +4 -1
- package/dist/esm/utilities/compare-versions.function.js.map +1 -1
- package/dist/esm/utilities/doubly-linked-list.js +127 -0
- package/dist/esm/utilities/doubly-linked-list.js.map +1 -0
- package/dist/esm/utilities/fs.utilities.js +36 -29
- package/dist/esm/utilities/fs.utilities.js.map +1 -1
- package/dist/esm/utilities/is-date.function.js +4 -1
- package/dist/esm/utilities/is-date.function.js.map +1 -1
- package/dist/esm/utilities/is-numeric.function.js +6 -2
- package/dist/esm/utilities/is-numeric.function.js.map +1 -1
- package/dist/esm/utilities/is-version.function.js +6 -3
- package/dist/esm/utilities/is-version.function.js.map +1 -1
- package/dist/esm/utilities/json.utilities.js +37 -0
- package/dist/esm/utilities/json.utilities.js.map +1 -0
- package/dist/esm/utilities/mask.utilities.js +5 -1
- package/dist/esm/utilities/mask.utilities.js.map +1 -1
- package/dist/esm/utilities/metadata-injection-keys.enum.js +7 -2
- package/dist/esm/utilities/metadata-injection-keys.enum.js.map +1 -1
- package/dist/esm/utilities/metadata.utilities.js +86 -82
- package/dist/esm/utilities/metadata.utilities.js.map +1 -1
- package/dist/esm/utilities/ms.js +13 -1
- package/dist/esm/utilities/ms.js.map +1 -1
- package/dist/esm/utilities/now-in-ns.function.js +15 -0
- package/dist/esm/utilities/now-in-ns.function.js.map +1 -0
- package/dist/esm/utilities/number.utilities.js +58 -0
- package/dist/esm/utilities/number.utilities.js.map +1 -0
- package/dist/esm/utilities/object.utilities.js +5 -1
- package/dist/esm/utilities/object.utilities.js.map +1 -1
- package/dist/esm/utilities/promise.utilities.js +8 -4
- package/dist/esm/utilities/promise.utilities.js.map +1 -1
- package/dist/esm/utilities/reflect.utilities.js +5 -1
- package/dist/esm/utilities/reflect.utilities.js.map +1 -1
- package/dist/esm/utilities/to-camel-case.function.js +4 -1
- package/dist/esm/utilities/to-camel-case.function.js.map +1 -1
- package/dist/esm/utilities/to-kebab-case.function.js +4 -1
- package/dist/esm/utilities/to-kebab-case.function.js.map +1 -1
- package/dist/esm/utilities/to-pascal-case.function.js +4 -1
- package/dist/esm/utilities/to-pascal-case.function.js.map +1 -1
- package/dist/esm/utilities/to-snake-case.function.js +4 -1
- package/dist/esm/utilities/to-snake-case.function.js.map +1 -1
- package/dist/esm/utilities/typeorm.utilities.js +47 -0
- package/dist/esm/utilities/typeorm.utilities.js.map +1 -0
- package/dist/esm/utilities/uuid.utilities.js +7 -3
- package/dist/esm/utilities/uuid.utilities.js.map +1 -1
- package/dist/esm/utilities/validate-entities-registered.function.js +8 -5
- package/dist/esm/utilities/validate-entities-registered.function.js.map +1 -1
- package/dist/esm/utilities/validate-tokens-registered.function.js +10 -7
- package/dist/esm/utilities/validate-tokens-registered.function.js.map +1 -1
- package/dist/esm/validation/functions/validate-boolean.function.js +17 -12
- package/dist/esm/validation/functions/validate-boolean.function.js.map +1 -1
- package/dist/esm/validation/functions/validate-date.function.js +19 -16
- package/dist/esm/validation/functions/validate-date.function.js.map +1 -1
- package/dist/esm/validation/functions/validate-file.function.js +19 -19
- package/dist/esm/validation/functions/validate-file.function.js.map +1 -1
- package/dist/esm/validation/functions/validate-number.function.js +44 -15
- package/dist/esm/validation/functions/validate-number.function.js.map +1 -1
- package/dist/esm/validation/functions/validate-string.function.js +24 -10
- package/dist/esm/validation/functions/validate-string.function.js.map +1 -1
- package/dist/esm/validation/validation-problem.model.js +19 -14
- package/dist/esm/validation/validation-problem.model.js.map +1 -1
- package/dist/esm/validation/validation-service.interface.js +2 -1
- package/dist/esm/validation/validation.service.js +111 -123
- package/dist/esm/validation/validation.service.js.map +1 -1
- package/dist/esm/websocket/decorators/current-websocket-connection.decorator.js +7 -4
- package/dist/esm/websocket/decorators/current-websocket-connection.decorator.js.map +1 -1
- package/dist/esm/websocket/decorators/websocket-body.decorator.js +11 -8
- package/dist/esm/websocket/decorators/websocket-body.decorator.js.map +1 -1
- package/dist/esm/websocket/decorators/websocket-controller.decorator.js +10 -7
- package/dist/esm/websocket/decorators/websocket-controller.decorator.js.map +1 -1
- package/dist/esm/websocket/decorators/websocket-route.decorator.js +8 -5
- package/dist/esm/websocket/decorators/websocket-route.decorator.js.map +1 -1
- package/dist/esm/websocket/models/connection/base-websocket-connection.model.js +2 -1
- package/dist/esm/websocket/models/connection/socket-io-websocket-connection.model.js +7 -3
- package/dist/esm/websocket/models/connection/socket-io-websocket-connection.model.js.map +1 -1
- package/dist/esm/websocket/models/websocket-channel.model.js +12 -9
- package/dist/esm/websocket/models/websocket-channel.model.js.map +1 -1
- package/dist/esm/websocket/models/websocket-controller-route-configuration.model.js +2 -1
- package/dist/esm/websocket/models/websocket-event.enum.js +5 -2
- package/dist/esm/websocket/models/websocket-event.enum.js.map +1 -1
- package/dist/esm/websocket/models/websocket-message.model.js +30 -26
- package/dist/esm/websocket/models/websocket-message.model.js.map +1 -1
- package/dist/esm/websocket/models/websocket-options.model.js +2 -1
- package/dist/esm/websocket/models/websocket-request.model.js +10 -6
- package/dist/esm/websocket/models/websocket-request.model.js.map +1 -1
- package/dist/esm/websocket/models/websocket-response.model.js +2 -1
- package/dist/esm/websocket/services/websocket-service.interface.js +2 -1
- package/dist/esm/websocket/services/websocket.service.js +132 -123
- package/dist/esm/websocket/services/websocket.service.js.map +1 -1
- package/package.json +31 -29
- package/src/__testing__/constants.ts +7 -1
- package/src/__testing__/mocks/entities/child.entity.ts +4 -1
- package/src/__testing__/mocks/entities/company.entity.ts +5 -2
- package/src/__testing__/mocks/entities/profile.entity.ts +5 -2
- package/src/__testing__/mocks/entities/role.entity.ts +1 -1
- package/src/__testing__/mocks/entities/user.entity.ts +1 -1
- package/src/__testing__/test-server/create-test-data-source.function.ts +16 -6
- package/src/__testing__/test-server/providers.ts +12 -2
- package/src/__testing__/test-server/start-test-server.function.ts +29 -8
- package/src/__testing__/test-server/user-repository.ts +4 -3
- package/src/application-options.model.ts +39 -0
- package/src/application.ts +80 -8
- package/src/assets/asset.service.ts +0 -6
- package/src/auth/2fa/methods/otp/otp.two-factor-method.ts +6 -6
- package/src/auth/2fa/methods/two-factor-method.interface.ts +3 -3
- package/src/auth/2fa/two-factor-service.interface.ts +3 -3
- package/src/auth/2fa/two-factor.service.test.ts +151 -0
- package/src/auth/2fa/two-factor.service.ts +8 -4
- package/src/auth/auth-service.interface.ts +11 -7
- package/src/auth/auth.service.test.ts +381 -0
- package/src/auth/auth.service.ts +28 -20
- package/src/auth/encryption/encryption-key.model.ts +56 -0
- package/src/auth/encryption/encryption-master-options.model.ts +41 -0
- package/src/auth/encryption/encryption-service.interface.ts +87 -0
- package/src/auth/encryption/encryption.service.test.ts +67 -0
- package/src/auth/encryption/encryption.service.ts +695 -0
- package/src/auth/encryption/encryption.utilities.ts +65 -0
- package/src/auth/encryption/strategies/aes-gcm.encryption-strategy.ts +115 -0
- package/src/auth/encryption/strategies/encryption-strategy-entity.model.ts +52 -0
- package/src/auth/encryption/strategies/encryption-strategy.interface.ts +67 -0
- package/src/auth/hash/hash-service.interface.ts +39 -0
- package/src/auth/hash/hash.service.test.ts +60 -0
- package/src/auth/hash/hash.service.ts +164 -0
- package/src/auth/hash/hash.utilities.ts +60 -0
- package/src/auth/hash/strategies/bcrypt.hash-strategy.ts +39 -0
- package/src/auth/hash/strategies/hash-strategy-entity.model.ts +40 -0
- package/src/auth/hash/strategies/hash-strategy.interface.ts +23 -0
- package/src/auth/strategies/auth-strategy.interface.ts +11 -6
- package/src/auth/strategies/cookie/cookie-auth-confirm-password-reset-data.model.ts +23 -0
- package/src/auth/strategies/cookie/cookie-auth-credentials.model.ts +56 -0
- package/src/auth/strategies/cookie/cookie-auth-data.model.ts +32 -0
- package/src/auth/strategies/cookie/cookie-auth-logout-data.model.ts +22 -0
- package/src/auth/strategies/cookie/cookie-auth-refresh-login-data.model.ts +11 -0
- package/src/auth/strategies/cookie/cookie-auth-refresh-session.model.ts +46 -0
- package/src/auth/strategies/cookie/cookie-auth-request-password-reset-data.model.ts +28 -0
- package/src/auth/strategies/cookie/cookie-auth-session-cleanup.cron-job.ts +35 -0
- package/src/auth/strategies/cookie/cookie-auth-session.model.ts +34 -0
- package/src/auth/strategies/cookie/cookie-auth.auth-strategy.ts +562 -0
- package/src/auth/strategies/cookie/cookie-auth.controller.ts +182 -0
- package/src/auth/strategies/jwt/jwt-auth.controller.ts +42 -10
- package/src/auth/strategies/jwt/jwt-confirm-password-reset-data.model.ts +5 -0
- package/src/auth/strategies/jwt/jwt-credentials.model.ts +18 -5
- package/src/auth/strategies/jwt/jwt-refresh-login-data.model.ts +5 -0
- package/src/auth/strategies/jwt/jwt-refresh-token-cleanup.cron-job.ts +31 -0
- package/src/auth/strategies/jwt/jwt-request-password-reset-data.model.ts +6 -1
- package/src/auth/strategies/jwt/jwt.auth-strategy.ts +88 -67
- package/src/backup/backup-resource-entity.model.ts +7 -2
- package/src/backup/backup-service.test.ts +1 -1
- package/src/backup/backup.service.ts +3 -2
- package/src/backup/transports/fs.backup-transport.ts +3 -2
- package/src/caching/cache/base-cache.model.ts +333 -0
- package/src/caching/cache/cache-operation.enum.ts +9 -0
- package/src/caching/cache/cache-options.model.ts +121 -0
- package/src/caching/cache/cache.interface.ts +133 -0
- package/src/caching/cache/multi-tier.cache.test.ts +150 -0
- package/src/caching/cache/multi-tier.cache.ts +298 -0
- package/src/caching/cache/read-aside/read-aside.cache.ts +99 -0
- package/src/caching/cache/read-aside/write-around-read-aside.cache.ts +52 -0
- package/src/caching/cache/read-aside/write-behind-read-aside.cache.ts +95 -0
- package/src/caching/cache/read-aside/write-invalidate-read-aside-args-only.cache.ts +84 -0
- package/src/caching/cache/read-aside/write-invalidate-read-aside-with-result.cache.ts +84 -0
- package/src/caching/cache/read-aside/write-through-read-aside.cache.ts +86 -0
- package/src/caching/cache/read-through/read-through.cache.ts +104 -0
- package/src/caching/cache/read-through/write-around-read-through.cache.ts +51 -0
- package/src/caching/cache/read-through/write-behind-read-through.cache.ts +99 -0
- package/src/caching/cache/read-through/write-invalidate-read-through-args-only.cache.ts +86 -0
- package/src/caching/cache/read-through/write-invalidate-read-through-with-result.cache.ts +85 -0
- package/src/caching/cache/read-through/write-through-read-through.cache.test.ts +520 -0
- package/src/caching/cache/read-through/write-through-read-through.cache.ts +77 -0
- package/src/caching/cache-metrics.model.ts +57 -0
- package/src/caching/cache-service.interface.ts +15 -0
- package/src/caching/cache-tag-matchers.test.ts +114 -0
- package/src/caching/cache-tag-matchers.ts +31 -0
- package/src/caching/cache.service.test.ts +211 -0
- package/src/caching/cache.service.ts +69 -0
- package/src/caching/decorators/cache-delete.decorator.ts +46 -0
- package/src/caching/decorators/cache-invalidate.decorator.ts +43 -0
- package/src/caching/decorators/cache-write.decorator.ts +60 -0
- package/src/caching/decorators/cache.decorator.ts +20 -0
- package/src/caching/decorators/cached.decorator.ts +52 -0
- package/src/caching/decorators/decorator-types.ts +20 -0
- package/src/caching/store/cache-store.interface.ts +59 -0
- package/src/caching/store/cached-value.model.ts +27 -0
- package/src/caching/store/in-memory.cache-store.test.ts +120 -0
- package/src/caching/store/in-memory.cache-store.ts +272 -0
- package/src/change-sets/change-set-repository.test.ts +317 -0
- package/src/change-sets/change-set-repository.ts +98 -66
- package/src/change-sets/models/change-set-entity.model.ts +6 -4
- package/src/change-sets/models/change-set.model.ts +4 -4
- package/src/change-sets/models/change.model.ts +7 -2
- package/src/change-sets/models/soft-delete-entity.model.ts +5 -3
- package/src/change-sets/soft-delete-repository.test.ts +326 -0
- package/src/change-sets/soft-delete-repository.ts +43 -13
- package/src/context/als.utilities.ts +84 -0
- package/src/context/base-context.ts +12 -0
- package/src/context/cache/cache.context.ts +33 -0
- package/src/context/request/http-request.context.test.ts +93 -0
- package/src/context/request/http-request.context.ts +44 -0
- package/src/context/request/request-context-token.model.ts +110 -0
- package/src/context/request/websocket-request.context.ts +43 -0
- package/src/cron/cron-expression.utilities.ts +238 -0
- package/src/cron/cron-job-entity.model.ts +2 -1
- package/src/cron/cron-job.model.ts +10 -11
- package/src/cron/cron-service.interface.ts +2 -1
- package/src/cron/cron.service.ts +5 -3
- package/src/cron/cron.test.ts +421 -0
- package/src/data-source/array-where-filter.test.ts +332 -0
- package/src/data-source/cascade-delete.test.ts +15 -40
- package/src/data-source/data-sources/data-source-initialization.error.ts +9 -0
- package/src/data-source/data-sources/data-source.interface.ts +24 -3
- package/src/data-source/data-sources/postgres-typeorm-data-source.model.ts +330 -0
- package/src/data-source/data-sources/sql-data-source.interface.ts +35 -0
- package/src/data-source/data-sources/typeorm-base-data-source.model.ts +544 -0
- package/src/data-source/data-sources/where-converter/postgres-typeorm-where-filter.converter.ts +451 -0
- package/src/data-source/data-sources/where-converter/typeorm-where-filter.converter.ts +376 -0
- package/src/data-source/exclude-property.test.ts +386 -0
- package/src/data-source/hooks/before-return.ts +7 -0
- package/src/data-source/hooks/before-save.ts +16 -0
- package/src/data-source/hooks/hooks.default.ts +43 -0
- package/src/data-source/hooks/hooks.test.ts +268 -0
- package/src/data-source/migration/migration.test.ts +19 -5
- package/src/data-source/models/options/count-options.model.ts +2 -7
- package/src/data-source/models/options/delete-all-options.model.ts +2 -4
- package/src/data-source/models/options/find-all-options.model.ts +2 -2
- package/src/data-source/models/options/find-by-id-options.model.ts +1 -6
- package/src/data-source/models/options/find-one-options.model.ts +2 -11
- package/src/data-source/models/options/update-all-options.model.ts +2 -5
- package/src/data-source/models/options/update-by-id-options.model.ts +2 -5
- package/src/data-source/models/where/array-where-filter.model.ts +147 -5
- package/src/data-source/models/where/base-where-filter.model.ts +19 -1
- package/src/data-source/models/where/boolean-where-filter.model.ts +7 -2
- package/src/data-source/models/where/date-where-filter.model.ts +9 -16
- package/src/data-source/models/where/number-where-filter.model.ts +13 -20
- package/src/data-source/models/where/object-where-filter.model.ts +66 -7
- package/src/data-source/models/where/string-where-filter.model.ts +9 -16
- package/src/data-source/models/where/where-filter-keys.model.ts +88 -0
- package/src/data-source/models/where/where-filter-to-find-options-where-function.test.ts +35 -12
- package/src/data-source/models/where/where-filter.model.ts +20 -15
- package/src/data-source/nested-where-filter.test.ts +344 -0
- package/src/data-source/query-failed.error.ts +38 -1
- package/src/data-source/repository-relation-pitfalls.test.ts +232 -0
- package/src/data-source/repository.test.ts +274 -61
- package/src/data-source/repository.ts +111 -125
- package/src/data-source/transaction/transaction.test.ts +1 -1
- package/src/data-source/where-filter.test.ts +479 -0
- package/src/di/decorators/inject-repository.decorator.ts +3 -2
- package/src/di/default/zibri-di-providers.default.ts +76 -7
- package/src/di/default/zibri-di-tokens.default.ts +42 -6
- package/src/di/di-container.ts +9 -7
- package/src/di/models/di-provider.model.ts +12 -0
- package/src/email/email.service.test.ts +382 -0
- package/src/email/email.service.ts +7 -6
- package/src/email/models/email.model.ts +1 -1
- package/src/email/send-queued-emails.cron-job.ts +2 -1
- package/src/entity/decorators/entity.decorator.ts +44 -5
- package/src/entity/decorators/property.decorator.ts +125 -61
- package/src/entity/entity-metadata-missing.error.ts +15 -0
- package/src/entity/generation/generate-entity-file.function.ts +4 -3
- package/src/entity/generation/generate-entity-files.function.ts +3 -2
- package/src/entity/generation/providers/open-api-file.provider.ts +2 -1
- package/src/entity/models/array-property-metadata.model.ts +2 -2
- package/src/entity/models/base-property-metadata.model.ts +30 -6
- package/src/entity/models/base-relation-metadata.model.ts +1 -1
- package/src/entity/models/belongs-to-one-property-metadata.model.ts +34 -0
- package/src/entity/models/file-property-metadata.model.ts +5 -5
- package/src/entity/models/has-one-property-metadata.model.ts +20 -0
- package/src/entity/models/many-to-many-property-metadata.model.ts +3 -3
- package/src/entity/models/many-to-one-property-metadata.model.ts +17 -3
- package/src/entity/models/number-property-metadata.model.ts +12 -0
- package/src/entity/models/relation.enum.ts +2 -1
- package/src/entity/models/string-property-metadata.model.ts +97 -3
- package/src/entity/partial-class.model.ts +1 -1
- package/src/error-handling/errors/validation.error.ts +3 -2
- package/src/error-handling/unknown-to-error-string.function.ts +2 -1
- package/src/event/event-cleanup.cron-job.ts +41 -0
- package/src/event/event-processing.error.ts +16 -0
- package/src/event/event-service.interface.ts +62 -0
- package/src/event/event-subscriber-run.model.ts +42 -0
- package/src/event/event.model.ts +66 -0
- package/src/event/event.service.ts +255 -0
- package/src/global/global-registry.ts +5 -0
- package/src/global/model-registry/decrypt-encryption-properties.function.ts +102 -0
- package/src/global/model-registry/default-descriptor.ts +105 -0
- package/src/global/model-registry/encrypt-encryption-properties.function.ts +108 -0
- package/src/global/model-registry/encryption-descriptor.ts +110 -0
- package/src/global/model-registry/exclude-descriptor.ts +108 -0
- package/src/global/model-registry/hash-descriptor.ts +110 -0
- package/src/global/model-registry/hash-hash-properties.function.ts +66 -0
- package/src/global/model-registry/model.registry.ts +79 -0
- package/src/global/model-registry/remove-exclude-properties.function.ts +76 -0
- package/src/global/model-registry/restore-exclude-properties.function.ts +54 -0
- package/src/global/model-registry/set-default-values.function.ts +56 -0
- package/src/handlebars/handlebar.utilities.ts +2 -1
- package/src/handlebars/resolve-all-array-keys.function.ts +2 -1
- package/src/handlebars/resolve-keys-for-block-statement.function.ts +5 -4
- package/src/http/cookie-options.model.ts +11 -0
- package/src/http/http-request.model.ts +7 -2
- package/src/http/known-header.enum.ts +30 -26
- package/src/http/mime-type.enum.ts +48 -9
- package/src/http/mime-type.helpers.ts +95 -24
- package/src/http-client/http-client.interface.ts +3 -2
- package/src/http-client/http-client.test.ts +5 -4
- package/src/http-client/http-client.ts +27 -23
- package/src/index.ts +118 -7
- package/src/jest.setup.ts +5 -1
- package/src/localization/formatting/format-price-fn.model.ts +1 -1
- package/src/localization/formatting/format-price.function.ts +1 -0
- package/src/logging/error-to-logged-error.function.ts +2 -1
- package/src/logging/log-cleanup.cron-job.ts +3 -2
- package/src/logging/log-context.model.ts +30 -1
- package/src/logging/log.model.ts +0 -6
- package/src/logging/logger.interface.ts +3 -2
- package/src/logging/logger.ts +42 -12
- package/src/logging/transport/log-to-console.function.ts +2 -2
- package/src/metrics/{scrape-metrics.cron-job.ts → collect-metrics.cron-job.ts} +6 -5
- package/src/metrics/metrics.service.ts +4 -2
- package/src/multithreading/services/multithreading.service.test.ts +32 -68
- package/src/multithreading/services/multithreading.service.ts +3 -2
- package/src/open-api/open-api.service.ts +52 -18
- package/src/parsing/form-data/file-response.model.ts +22 -5
- package/src/parsing/form-data/form-data-body-parser-cleanup.cron-job.ts +2 -1
- package/src/parsing/form-data/form-data.body-parser.ts +15 -13
- package/src/parsing/functions/parse-array.function.ts +2 -1
- package/src/parsing/functions/parse-boolean.function.ts +0 -1
- package/src/parsing/functions/parse-number.function.ts +23 -0
- package/src/parsing/functions/parse-object.function.ts +4 -2
- package/src/parsing/functions/parse-object.test.ts +2 -1
- package/src/parsing/html/csp-options.model.ts +109 -0
- package/src/parsing/html/html-response.model.ts +25 -5
- package/src/parsing/json/json.body-parser.ts +4 -4
- package/src/parsing/parser.ts +2 -1
- package/src/plugin/invoicing/services/invoice-calc-service.interface.ts +1 -1
- package/src/plugin/invoicing/services/invoice-calc.service.ts +16 -16
- package/src/plugin/invoicing/services/invoice-pdf.service.ts +1 -0
- package/src/plugin/mailing-list/mailing-list.controller.ts +12 -3
- package/src/plugin/payment/providers/pay-pal/pay-pal.payment-provider.test.ts +2 -1
- package/src/plugin/payment/providers/pay-pal/pay-pal.payment-provider.ts +1 -1
- package/src/preact/collector.ts +124 -40
- package/src/preact/generate-client-scripts.function.ts +6 -5
- package/src/preact/preact.utilities.ts +16 -33
- package/src/rate-limiting/rate-limiter.ts +10 -0
- package/src/routing/decorators/body.decorator.ts +4 -2
- package/src/routing/decorators/param.decorator.ts +12 -6
- package/src/routing/models/array-param-metadata.model.ts +5 -3
- package/src/routing/models/boolean-param-metadata.model.ts +1 -1
- package/src/routing/models/date-param-metadata.model.ts +1 -1
- package/src/routing/models/number-param-metadata.model.ts +4 -1
- package/src/routing/models/object-param-metadata.model.ts +4 -1
- package/src/routing/models/string-param-metadata.model.ts +20 -2
- package/src/routing/param-metdata.helpers.ts +6 -0
- package/src/routing/resolve-route-params.function.ts +79 -37
- package/src/routing/route-configuration.model.ts +6 -3
- package/src/routing/router.ts +204 -124
- package/src/types/any-enum.type.ts +1 -1
- package/src/types/deep-partial.type.ts +13 -10
- package/src/types/percentage.type.ts +1 -1
- package/src/utilities/bytes.ts +20 -0
- package/src/utilities/doubly-linked-list.ts +132 -0
- package/src/utilities/is-numeric.function.ts +4 -2
- package/src/utilities/json.utilities.ts +37 -0
- package/src/utilities/metadata-injection-keys.enum.ts +3 -1
- package/src/utilities/ms.ts +8 -0
- package/src/utilities/now-in-ns.function.ts +13 -0
- package/src/utilities/{big-number.utilities.ts → number.utilities.ts} +16 -6
- package/src/utilities/promise.utilities.ts +5 -5
- package/src/utilities/typeorm.utilities.ts +75 -0
- package/src/validation/functions/validate-boolean.function.ts +15 -17
- package/src/validation/functions/validate-date.function.ts +13 -17
- package/src/validation/functions/validate-file.function.ts +12 -17
- package/src/validation/functions/validate-number.function.ts +43 -20
- package/src/validation/functions/validate-string.function.ts +20 -7
- package/src/validation/validation-problem.model.ts +7 -9
- package/src/validation/validation-service.interface.ts +5 -5
- package/src/validation/validation.service.ts +84 -88
- package/src/websocket/models/websocket-message.model.ts +1 -1
- package/src/websocket/models/websocket-request.model.ts +17 -9
- package/src/websocket/services/websocket.service.ts +74 -70
- package/dist/cjs/auth/hash.utilities.d.ts +0 -19
- package/dist/cjs/auth/hash.utilities.d.ts.map +0 -1
- package/dist/cjs/auth/hash.utilities.js +0 -28
- package/dist/cjs/auth/hash.utilities.js.map +0 -1
- package/dist/cjs/data-source/data-sources/postgres-data-source.model.d.ts +0 -130
- package/dist/cjs/data-source/data-sources/postgres-data-source.model.d.ts.map +0 -1
- package/dist/cjs/data-source/data-sources/postgres-data-source.model.js +0 -522
- package/dist/cjs/data-source/data-sources/postgres-data-source.model.js.map +0 -1
- package/dist/cjs/data-source/models/where/where-filter-to-find-options-where.function.d.ts +0 -11
- package/dist/cjs/data-source/models/where/where-filter-to-find-options-where.function.d.ts.map +0 -1
- package/dist/cjs/data-source/models/where/where-filter-to-find-options-where.function.js +0 -221
- package/dist/cjs/data-source/models/where/where-filter-to-find-options-where.function.js.map +0 -1
- package/dist/cjs/entity/models/one-to-one-property-metadata.model.d.ts +0 -30
- package/dist/cjs/entity/models/one-to-one-property-metadata.model.d.ts.map +0 -1
- package/dist/cjs/entity/models/one-to-one-property-metadata.model.js.map +0 -1
- package/dist/cjs/metrics/scrape-metrics.cron-job.d.ts.map +0 -1
- package/dist/cjs/metrics/scrape-metrics.cron-job.js.map +0 -1
- package/dist/cjs/routing/request.context.d.ts +0 -15
- package/dist/cjs/routing/request.context.d.ts.map +0 -1
- package/dist/cjs/routing/request.context.js +0 -25
- package/dist/cjs/routing/request.context.js.map +0 -1
- package/dist/cjs/utilities/big-number.utilities.d.ts.map +0 -1
- package/dist/cjs/utilities/big-number.utilities.js.map +0 -1
- package/dist/esm/auth/hash.utilities.js +0 -24
- package/dist/esm/auth/hash.utilities.js.map +0 -1
- package/dist/esm/data-source/data-sources/postgres-data-source.model.js +0 -519
- package/dist/esm/data-source/data-sources/postgres-data-source.model.js.map +0 -1
- package/dist/esm/data-source/models/where/where-filter-to-find-options-where.function.js +0 -218
- package/dist/esm/data-source/models/where/where-filter-to-find-options-where.function.js.map +0 -1
- package/dist/esm/entity/models/one-to-one-property-metadata.model.js +0 -2
- package/dist/esm/entity/models/one-to-one-property-metadata.model.js.map +0 -1
- package/dist/esm/metrics/scrape-metrics.cron-job.js.map +0 -1
- package/dist/esm/routing/request.context.js +0 -21
- package/dist/esm/routing/request.context.js.map +0 -1
- package/dist/esm/utilities/big-number.utilities.js +0 -42
- package/dist/esm/utilities/big-number.utilities.js.map +0 -1
- package/src/auth/hash.utilities.ts +0 -24
- package/src/data-source/data-sources/postgres-data-source.model.ts +0 -651
- package/src/data-source/models/where/where-filter-to-find-options-where.function.ts +0 -301
- package/src/entity/models/one-to-one-property-metadata.model.ts +0 -35
- package/src/routing/request.context.ts +0 -35
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache-options.model.js","sourceRoot":"","sources":["../../../../src/caching/cache/cache-options.model.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { type CacheTagMatcher } from '../cache-tag-matchers';
|
|
2
|
+
import { CacheKeyProvider, CacheSetDirectOptions, CacheWrapDeleteOptions, CacheWrapInvalidateOptions, CacheWrapOptions, CacheWrapWriteOptionsArgsOnly, CacheWrapWriteOptionsWithResult, OnInvalidationFailure, ResultCacheKeyProvider } from './cache-options.model';
|
|
3
|
+
import { MultiTierCache } from './multi-tier.cache';
|
|
4
|
+
import { type CacheStoreInterface } from '../store/cache-store.interface';
|
|
5
|
+
/**
|
|
6
|
+
* Definition for a cache.
|
|
7
|
+
*/
|
|
8
|
+
export interface CacheInterface<K, V, CacheTag extends string, WriteResultAvailable extends boolean, N extends string> {
|
|
9
|
+
/**
|
|
10
|
+
* Phantom carrier, only for type inference.
|
|
11
|
+
*/
|
|
12
|
+
readonly _writeResultAvailable: WriteResultAvailable;
|
|
13
|
+
/**
|
|
14
|
+
* The name of the cache. Should be unique.
|
|
15
|
+
*/
|
|
16
|
+
readonly name: N;
|
|
17
|
+
/**
|
|
18
|
+
* The tags that any values inside of this cache might have.
|
|
19
|
+
*
|
|
20
|
+
* This is used for performance improvements, to skip caches for invalidateTags if the given tag will never be inside any of the cached values.
|
|
21
|
+
* Can be set to 'all' to check every time.
|
|
22
|
+
*/
|
|
23
|
+
readonly tags: 'all' | readonly CacheTagMatcher[];
|
|
24
|
+
/**
|
|
25
|
+
* The default time to live for a cached value.
|
|
26
|
+
*/
|
|
27
|
+
readonly defaultTtl?: number | (() => number | Promise<number>);
|
|
28
|
+
/**
|
|
29
|
+
* Whether to throw when invalidation fails or to just log and ignore.
|
|
30
|
+
*/
|
|
31
|
+
readonly onInvalidationFailure?: OnInvalidationFailure;
|
|
32
|
+
/**
|
|
33
|
+
* The store used by this cache.
|
|
34
|
+
*/
|
|
35
|
+
readonly store: CacheStoreInterface<K, V>;
|
|
36
|
+
/**
|
|
37
|
+
* Returns a cached value if present; otherwise calls fn.
|
|
38
|
+
* The exact caching behavior (whether the result is stored) depends on the concrete strategy.
|
|
39
|
+
*/
|
|
40
|
+
wrap: <TArgs extends unknown[]>(fn: (...args: TArgs) => V | Promise<V>, keyFn: CacheKeyProvider<K, TArgs>, options?: CacheWrapOptions<V, TArgs, CacheTag>) => (...args: TArgs) => Promise<V>;
|
|
41
|
+
/**
|
|
42
|
+
* Returns a wrapped version of fn that writes its result into the cache.
|
|
43
|
+
* Key is derived from the *result*, not the args — handles the
|
|
44
|
+
* create-with-generated-id case cleanly.
|
|
45
|
+
*/
|
|
46
|
+
wrapWrite: <TArgs extends unknown[]>(fn: (...args: TArgs) => V | Promise<V>, keyFn: WriteResultAvailable extends true ? ResultCacheKeyProvider<K, V, TArgs> : CacheKeyProvider<K, TArgs>, options?: WriteResultAvailable extends true ? CacheWrapWriteOptionsWithResult<V, TArgs, CacheTag> : CacheWrapWriteOptionsArgsOnly<TArgs, CacheTag>) => (...args: TArgs) => Promise<V>;
|
|
47
|
+
/**
|
|
48
|
+
* Returns a wrapped version of fn that invalidates a cache entry after call.
|
|
49
|
+
*/
|
|
50
|
+
wrapDelete: <TReturn, TArgs extends unknown[]>(fn: (...args: TArgs) => TReturn | Promise<TReturn>, keyFn: CacheKeyProvider<K, TArgs>, options?: CacheWrapDeleteOptions<TArgs, CacheTag>) => (...args: TArgs) => Promise<TReturn>;
|
|
51
|
+
/**
|
|
52
|
+
* Calls fn → Invalidates tags → Returns the fn result.
|
|
53
|
+
* For operations that affect cached data but produce no cacheable result,
|
|
54
|
+
* e.g. CreateAll/updateAll on a collection cache where no filter key
|
|
55
|
+
* can be derived from the output.
|
|
56
|
+
*/
|
|
57
|
+
wrapInvalidate: <TReturn, TArgs extends unknown[]>(fn: (...args: TArgs) => TReturn | Promise<TReturn>, options: CacheWrapInvalidateOptions<TArgs, CacheTag>) => (...args: TArgs) => Promise<TReturn>;
|
|
58
|
+
/**
|
|
59
|
+
* Directly write a value into this cache, following its configured
|
|
60
|
+
* write strategy.
|
|
61
|
+
*
|
|
62
|
+
* Use this instead of `wrapWrite` when the source function has already
|
|
63
|
+
* been called and you only need to propagate the result.
|
|
64
|
+
*/
|
|
65
|
+
setDirect: (key: K, value: V, options?: CacheSetDirectOptions<CacheTag>) => Promise<void>;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* The type for any unspecified cache.
|
|
69
|
+
*/
|
|
70
|
+
export type AnyCache = MultiTierCache<any, any, any> | CacheInterface<any, any, string, true, any> | CacheInterface<any, any, string, false, any>;
|
|
71
|
+
/**
|
|
72
|
+
* Checks whether or not the given value is a cache.
|
|
73
|
+
* @param value - The value to check.
|
|
74
|
+
* @returns True if the value has all the keys of a cache, false otherwise.
|
|
75
|
+
*/
|
|
76
|
+
export declare function isCache(value: unknown): value is AnyCache;
|
|
77
|
+
//# sourceMappingURL=cache.interface.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache.interface.d.ts","sourceRoot":"","sources":["../../../../src/caching/cache/cache.interface.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isCache = isCache;
|
|
4
|
+
const multi_tier_cache_1 = require("./multi-tier.cache");
|
|
5
|
+
/**
|
|
6
|
+
* Checks whether or not the given value is a cache.
|
|
7
|
+
* @param value - The value to check.
|
|
8
|
+
* @returns True if the value has all the keys of a cache, false otherwise.
|
|
9
|
+
*/
|
|
10
|
+
function isCache(value) {
|
|
11
|
+
if (value instanceof multi_tier_cache_1.MultiTierCache) {
|
|
12
|
+
return true;
|
|
13
|
+
}
|
|
14
|
+
// eslint-disable-next-line typescript/no-explicit-any
|
|
15
|
+
const keys = [
|
|
16
|
+
'defaultTtl',
|
|
17
|
+
'name',
|
|
18
|
+
'onInvalidationFailure',
|
|
19
|
+
'store',
|
|
20
|
+
'tags',
|
|
21
|
+
'wrap',
|
|
22
|
+
'wrapDelete',
|
|
23
|
+
'wrapInvalidate',
|
|
24
|
+
'wrapWrite'
|
|
25
|
+
];
|
|
26
|
+
if (value == undefined || typeof value !== 'object') {
|
|
27
|
+
return false;
|
|
28
|
+
}
|
|
29
|
+
for (const key of keys) {
|
|
30
|
+
if (!(key in value)) {
|
|
31
|
+
return false;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return true;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=cache.interface.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache.interface.js","sourceRoot":"","sources":["../../../../src/caching/cache/cache.interface.ts"],"names":[],"mappings":";;AAuGA,0BA6BC;AAlID,yDAAoD;AAgGpD;;;;GAIG;AACH,SAAgB,OAAO,CAAC,KAAc;IAElC,IAAI,KAAK,YAAY,iCAAc,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,sDAAsD;IACtD,MAAM,IAAI,GAAqE;QAC3E,YAAY;QACZ,MAAM;QACN,uBAAuB;QACvB,OAAO;QACP,MAAM;QACN,MAAM;QACN,YAAY;QACZ,gBAAgB;QAChB,WAAW;KACd,CAAC;IAEF,IAAI,KAAK,IAAI,SAAS,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAClD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,EAAE,CAAC;YAClB,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { CacheWrapOptions, CacheWrapDeleteOptions, CacheWrapInvalidateOptions, CacheKeyProvider, ResultCacheKeyProvider, OnInvalidationFailure, CacheTagsProvider, CacheSetDirectOptions } from './cache-options.model';
|
|
2
|
+
import { LoggerInterface } from '../../logging/logger.interface';
|
|
3
|
+
import { MetricsServiceInterface } from '../../metrics/metrics-service.interface';
|
|
4
|
+
import { CacheMetrics } from '../cache-metrics.model';
|
|
5
|
+
import { CacheServiceInterface } from '../cache-service.interface';
|
|
6
|
+
import { ExtractCacheWriteResultAvailable } from '../decorators/decorator-types';
|
|
7
|
+
import { CacheStoreInterface } from '../store/cache-store.interface';
|
|
8
|
+
type TierLike<K, V, CacheTag extends string, N extends string> = {
|
|
9
|
+
readonly name: N;
|
|
10
|
+
store: CacheStoreInterface<K, V>;
|
|
11
|
+
_writeResultAvailable?: boolean;
|
|
12
|
+
setDirect(key: K, value: V, options?: CacheSetDirectOptions<CacheTag>): Promise<void>;
|
|
13
|
+
};
|
|
14
|
+
type TierName<Tiers extends readonly TierLike<any, any, any, any>[]> = Tiers[number]['name'];
|
|
15
|
+
/** Outer WR – true if any tier is true, else false. */
|
|
16
|
+
type OuterWR<Tiers extends readonly TierLike<any, any, any, any>[]> = true extends ExtractCacheWriteResultAvailable<Tiers[number]> ? true : false;
|
|
17
|
+
/** The options object for wrapWrite. */
|
|
18
|
+
export type MultiWrapWriteOptions<V, TArgs extends unknown[], CacheTag extends string, Tiers extends readonly TierLike<any, V, CacheTag, any>[]> = {
|
|
19
|
+
/**
|
|
20
|
+
* The configuration for each internal cache.
|
|
21
|
+
*/
|
|
22
|
+
perCache?: Partial<Record<TierName<Tiers>, CacheWrapOptions<V, TArgs, CacheTag>>>;
|
|
23
|
+
/**
|
|
24
|
+
* A provider for the tags to invalidate.
|
|
25
|
+
*/
|
|
26
|
+
invalidatesTags?: CacheTagsProvider<TArgs, CacheTag>;
|
|
27
|
+
};
|
|
28
|
+
/** Per‑tier wrap options – just `CacheWrapOptions` for each tier. */
|
|
29
|
+
export type MultiWrapOptions<V, TArgs extends unknown[], CacheTag extends string, Tiers extends readonly TierLike<any, V, CacheTag, any>[]> = Partial<Record<TierName<Tiers>, CacheWrapOptions<V, TArgs, CacheTag>>>;
|
|
30
|
+
/**
|
|
31
|
+
* Multi‑tier cache that composes multiple {@link CacheInterface} instances.
|
|
32
|
+
*
|
|
33
|
+
* Reads are cascaded through the tiers (fastest first). When a lower tier
|
|
34
|
+
* hits, all faster tiers are back‑filled. Writes are propagated to **every**
|
|
35
|
+
* tier via their setDirect method.
|
|
36
|
+
*
|
|
37
|
+
* The `WriteResultAvailable` flag must be supplied explicitly. If you want
|
|
38
|
+
* to mix a `false` tier (e.g. Write‑Around) into a `true` cache, simply cast it
|
|
39
|
+
* `as CacheInterface<K, V, Tag, true>` – the key is provided but the tier
|
|
40
|
+
* can safely ignore it.
|
|
41
|
+
*/
|
|
42
|
+
export declare abstract class MultiTierCache<K, V, Tiers extends readonly TierLike<K, V, CacheTag, any>[], CacheTag extends string = string> {
|
|
43
|
+
readonly name: string;
|
|
44
|
+
private readonly tiers;
|
|
45
|
+
readonly onInvalidationFailure?: OnInvalidationFailure | undefined;
|
|
46
|
+
private readonly _writeResultAvailable;
|
|
47
|
+
private _metrics;
|
|
48
|
+
protected abstract cacheService: CacheServiceInterface;
|
|
49
|
+
protected abstract logger: LoggerInterface;
|
|
50
|
+
protected abstract metricsService: MetricsServiceInterface;
|
|
51
|
+
/**
|
|
52
|
+
* The cache metrics.
|
|
53
|
+
*/
|
|
54
|
+
protected get metrics(): CacheMetrics;
|
|
55
|
+
constructor(name: string, tiers: Tiers, onInvalidationFailure?: OnInvalidationFailure | undefined);
|
|
56
|
+
private initMetrics;
|
|
57
|
+
wrap<TArgs extends unknown[]>(fn: (...args: TArgs) => V | Promise<V>, keyFn: CacheKeyProvider<K, TArgs>, options?: MultiWrapOptions<V, TArgs, CacheTag, Tiers>): (...args: TArgs) => Promise<V>;
|
|
58
|
+
wrapWrite<TArgs extends unknown[]>(fn: (...args: TArgs) => V | Promise<V>, keyFn: OuterWR<Tiers> extends true ? ResultCacheKeyProvider<K, V, TArgs> : CacheKeyProvider<K, TArgs>, options?: MultiWrapWriteOptions<V, TArgs, CacheTag, Tiers>): (...args: TArgs) => Promise<V>;
|
|
59
|
+
wrapDelete<TReturn, TArgs extends unknown[]>(fn: (...args: TArgs) => TReturn | Promise<TReturn>, keyFn: CacheKeyProvider<K, TArgs>, options?: CacheWrapDeleteOptions<TArgs, CacheTag>): (...args: TArgs) => Promise<TReturn>;
|
|
60
|
+
wrapInvalidate<TReturn, TArgs extends unknown[]>(fn: (...args: TArgs) => TReturn | Promise<TReturn>, options: CacheWrapInvalidateOptions<TArgs, CacheTag>): (...args: TArgs) => Promise<TReturn>;
|
|
61
|
+
private safeInvalidateTags;
|
|
62
|
+
}
|
|
63
|
+
export {};
|
|
64
|
+
//# sourceMappingURL=multi-tier.cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multi-tier.cache.d.ts","sourceRoot":"","sources":["../../../../src/caching/cache/multi-tier.cache.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MultiTierCache = void 0;
|
|
4
|
+
const cache_operation_enum_1 = require("./cache-operation.enum");
|
|
5
|
+
const als_utilities_1 = require("../../context/als.utilities");
|
|
6
|
+
/**
|
|
7
|
+
* Multi‑tier cache that composes multiple {@link CacheInterface} instances.
|
|
8
|
+
*
|
|
9
|
+
* Reads are cascaded through the tiers (fastest first). When a lower tier
|
|
10
|
+
* hits, all faster tiers are back‑filled. Writes are propagated to **every**
|
|
11
|
+
* tier via their setDirect method.
|
|
12
|
+
*
|
|
13
|
+
* The `WriteResultAvailable` flag must be supplied explicitly. If you want
|
|
14
|
+
* to mix a `false` tier (e.g. Write‑Around) into a `true` cache, simply cast it
|
|
15
|
+
* `as CacheInterface<K, V, Tag, true>` – the key is provided but the tier
|
|
16
|
+
* can safely ignore it.
|
|
17
|
+
*/
|
|
18
|
+
class MultiTierCache {
|
|
19
|
+
name;
|
|
20
|
+
tiers;
|
|
21
|
+
onInvalidationFailure;
|
|
22
|
+
// Outer WR is computed, not stated by the user.
|
|
23
|
+
_writeResultAvailable;
|
|
24
|
+
_metrics;
|
|
25
|
+
// eslint-disable-next-line jsdoc/require-returns
|
|
26
|
+
/**
|
|
27
|
+
* The cache metrics.
|
|
28
|
+
*/
|
|
29
|
+
get metrics() {
|
|
30
|
+
this._metrics ??= this.initMetrics();
|
|
31
|
+
return this._metrics;
|
|
32
|
+
}
|
|
33
|
+
constructor(name, tiers, onInvalidationFailure) {
|
|
34
|
+
this.name = name;
|
|
35
|
+
this.tiers = tiers;
|
|
36
|
+
this.onInvalidationFailure = onInvalidationFailure;
|
|
37
|
+
if (tiers.length === 0) {
|
|
38
|
+
throw new Error('MultiTierCache requires at least one tier');
|
|
39
|
+
}
|
|
40
|
+
this._writeResultAvailable = tiers.some(t => t._writeResultAvailable === true);
|
|
41
|
+
}
|
|
42
|
+
initMetrics() {
|
|
43
|
+
return {
|
|
44
|
+
hits: this.metricsService.getCounter('cache_hits_total', ['cache']),
|
|
45
|
+
misses: this.metricsService.getCounter('cache_misses_total', ['cache']),
|
|
46
|
+
writes: this.metricsService.getCounter('cache_writes_total', ['cache']),
|
|
47
|
+
deletes: this.metricsService.getCounter('cache_deletes_total', ['cache']),
|
|
48
|
+
invalidations: this.metricsService.getCounter('cache_invalidations_total', ['cache']),
|
|
49
|
+
invalidationFailures: this.metricsService.getCounter('cache_invalidation_failures_total', ['cache']),
|
|
50
|
+
expiredEvictions: this.metricsService.getCounter('cache_expired_evictions_total', ['cache']),
|
|
51
|
+
errors: this.metricsService.getCounter('cache_errors_total', ['cache', 'operation']),
|
|
52
|
+
inFlight: this.metricsService.getGauge('cache_in_flight', ['cache']),
|
|
53
|
+
size: this.metricsService.getGauge('cache_size', ['cache']),
|
|
54
|
+
sourceDuration: this.metricsService.getHistogram('cache_source_duration_ms', ['cache', 'operation'], [1, 5, 10, 25, 50, 100, 250, 500, 1000]),
|
|
55
|
+
storeDuration: this.metricsService.getHistogram('cache_store_duration_ms', ['cache', 'operation'], [1, 5, 10, 25, 50, 100, 250, 500])
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
59
|
+
wrap(fn, keyFn, options) {
|
|
60
|
+
return async (...args) => {
|
|
61
|
+
const key = await keyFn(...args);
|
|
62
|
+
for (let i = 0; i < this.tiers.length; i++) {
|
|
63
|
+
const cached = await this.tiers[i].store.get(key);
|
|
64
|
+
if (cached && (!cached.expiresAt || cached.expiresAt > new Date())) {
|
|
65
|
+
// back‑fill earlier tiers – per‑tier options are NOT used here
|
|
66
|
+
for (let j = 0; j < i; j++) {
|
|
67
|
+
this.tiers[j].setDirect(key, cached.value, {
|
|
68
|
+
ttl: cached.expiresAt
|
|
69
|
+
? cached.expiresAt.getTime() - Date.now()
|
|
70
|
+
: undefined,
|
|
71
|
+
tags: cached.tags
|
|
72
|
+
// eslint-disable-next-line promise/prefer-await-to-then
|
|
73
|
+
}).catch(() => { });
|
|
74
|
+
}
|
|
75
|
+
return cached.value;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
// miss
|
|
79
|
+
const value = await fn(...args);
|
|
80
|
+
// populate all tiers using per‑tier options
|
|
81
|
+
await Promise.all(this.tiers.map(async (tier) => {
|
|
82
|
+
const tierOpt = options?.[tier.name];
|
|
83
|
+
const ttl = typeof tierOpt?.ttl === 'function'
|
|
84
|
+
? await tierOpt.ttl(value, ...args)
|
|
85
|
+
: tierOpt?.ttl;
|
|
86
|
+
const tags = typeof tierOpt?.tags === 'function'
|
|
87
|
+
? await tierOpt.tags(value, ...args)
|
|
88
|
+
: tierOpt?.tags;
|
|
89
|
+
await tier.setDirect(key, value, { ttl, tags }).catch(() => { });
|
|
90
|
+
}));
|
|
91
|
+
return value;
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
95
|
+
wrapWrite(fn, keyFn, options) {
|
|
96
|
+
return async (...args) => {
|
|
97
|
+
const value = await fn(...args);
|
|
98
|
+
const key = this._writeResultAvailable
|
|
99
|
+
? await keyFn(value, ...args)
|
|
100
|
+
: await keyFn(...args);
|
|
101
|
+
const perTier = options?.perCache;
|
|
102
|
+
// eslint-disable-next-line sonar/cognitive-complexity
|
|
103
|
+
await Promise.all(this.tiers.map(async (tier) => {
|
|
104
|
+
const tierOpt = perTier?.[tier.name];
|
|
105
|
+
let ttl;
|
|
106
|
+
let tags;
|
|
107
|
+
if (this._writeResultAvailable) {
|
|
108
|
+
const o = tierOpt;
|
|
109
|
+
ttl = o?.ttl != undefined
|
|
110
|
+
? typeof o.ttl === 'function' ? await o.ttl(value, ...args) : o.ttl
|
|
111
|
+
: undefined;
|
|
112
|
+
tags = o?.tags
|
|
113
|
+
? typeof o.tags === 'function' ? await o.tags(value, ...args) : o.tags
|
|
114
|
+
: undefined;
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
// eslint-disable-next-line stylistic/max-len
|
|
118
|
+
const o = tierOpt;
|
|
119
|
+
ttl = o?.ttl != undefined
|
|
120
|
+
? typeof o.ttl === 'function' ? await o.ttl(...args) : o.ttl
|
|
121
|
+
: undefined;
|
|
122
|
+
tags = o?.tags
|
|
123
|
+
? typeof o.tags === 'function' ? await o.tags(...args) : o.tags
|
|
124
|
+
: undefined;
|
|
125
|
+
}
|
|
126
|
+
await tier.setDirect(key, value, { ttl, tags }).catch(() => { });
|
|
127
|
+
}));
|
|
128
|
+
// global tag invalidation
|
|
129
|
+
if (options?.invalidatesTags) {
|
|
130
|
+
const tags = typeof options.invalidatesTags === 'function'
|
|
131
|
+
? await options.invalidatesTags(...args)
|
|
132
|
+
: options.invalidatesTags;
|
|
133
|
+
await this.safeInvalidateTags(tags);
|
|
134
|
+
}
|
|
135
|
+
return value;
|
|
136
|
+
};
|
|
137
|
+
}
|
|
138
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
139
|
+
wrapDelete(fn, keyFn, options) {
|
|
140
|
+
return async (...args) => {
|
|
141
|
+
const cacheCtx = { cache: this.name, operation: cache_operation_enum_1.CacheOperation.DELETE };
|
|
142
|
+
return als_utilities_1.AlsUtilities.runWithCacheContext(cacheCtx, async () => {
|
|
143
|
+
const res = await fn(...args);
|
|
144
|
+
const key = await keyFn(...args);
|
|
145
|
+
cacheCtx.key = key;
|
|
146
|
+
await Promise.all(this.tiers.map(tier => tier.store.delete(key)));
|
|
147
|
+
this.metrics.deletes.increase({ cache: this.name });
|
|
148
|
+
if (options?.invalidatesTags) {
|
|
149
|
+
const tags = typeof options.invalidatesTags === 'function'
|
|
150
|
+
? await options.invalidatesTags(...args)
|
|
151
|
+
: options.invalidatesTags;
|
|
152
|
+
await this.safeInvalidateTags(tags);
|
|
153
|
+
}
|
|
154
|
+
return res;
|
|
155
|
+
});
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
159
|
+
wrapInvalidate(fn, options) {
|
|
160
|
+
return async (...args) => {
|
|
161
|
+
const cacheCtx = { cache: this.name, operation: cache_operation_enum_1.CacheOperation.INVALIDATE };
|
|
162
|
+
return als_utilities_1.AlsUtilities.runWithCacheContext(cacheCtx, async () => {
|
|
163
|
+
const result = await fn(...args);
|
|
164
|
+
const tags = typeof options.invalidatesTags === 'function'
|
|
165
|
+
? await options.invalidatesTags(...args)
|
|
166
|
+
: options.invalidatesTags;
|
|
167
|
+
await this.safeInvalidateTags(tags);
|
|
168
|
+
return result;
|
|
169
|
+
});
|
|
170
|
+
};
|
|
171
|
+
}
|
|
172
|
+
async safeInvalidateTags(tags) {
|
|
173
|
+
if (!tags.length) {
|
|
174
|
+
return;
|
|
175
|
+
}
|
|
176
|
+
try {
|
|
177
|
+
await this.cacheService.invalidateTags(tags);
|
|
178
|
+
this.metrics.invalidations.increase({ cache: this.name });
|
|
179
|
+
}
|
|
180
|
+
catch (error) {
|
|
181
|
+
this.metrics.invalidationFailures.increase({ cache: this.name });
|
|
182
|
+
if (this.onInvalidationFailure === 'throw') {
|
|
183
|
+
throw error;
|
|
184
|
+
}
|
|
185
|
+
await this.logger.warn('Cache invalidation failed in multi‑tier cache', { error });
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
exports.MultiTierCache = MultiTierCache;
|
|
190
|
+
//# sourceMappingURL=multi-tier.cache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multi-tier.cache.js","sourceRoot":"","sources":["../../../../src/caching/cache/multi-tier.cache.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BaseCache } from '../base-cache.model';
|
|
2
|
+
import { CacheKeyProvider, CacheWrapOptions } from '../cache-options.model';
|
|
3
|
+
/**
|
|
4
|
+
* Read‑aside base class.
|
|
5
|
+
*
|
|
6
|
+
* On a cache miss the source is called, but the result is **never** written
|
|
7
|
+
* back to the cache. Cache population happens only via explicit write
|
|
8
|
+
* strategies (`wrapWrite`) or out‑of‑band processes.
|
|
9
|
+
*
|
|
10
|
+
* `wrapDelete` and `wrapInvalidate` work exactly like their read‑through
|
|
11
|
+
* counterparts.
|
|
12
|
+
*/
|
|
13
|
+
export declare abstract class ReadAsideCache<K, V, CacheTag extends string, WriteResultAvailable extends boolean, N extends string> extends BaseCache<K, V, CacheTag, WriteResultAvailable, N> {
|
|
14
|
+
wrap<TArgs extends unknown[]>(fn: (...args: TArgs) => V | Promise<V>, keyFn: CacheKeyProvider<K, TArgs>, options?: CacheWrapOptions<V, TArgs, CacheTag>): (...args: TArgs) => Promise<V>;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=read-aside.cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read-aside.cache.d.ts","sourceRoot":"","sources":["../../../../../src/caching/cache/read-aside/read-aside.cache.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE5E;;;;;;;;;GASG;AACH,8BAAsB,cAAc,CAChC,CAAC,EACD,CAAC,EACD,QAAQ,SAAS,MAAM,EACvB,oBAAoB,SAAS,OAAO,EACpC,CAAC,SAAS,MAAM,CAClB,SAAQ,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,oBAAoB,EAAE,CAAC,CAAC;IAExD,IAAI,CAAC,KAAK,SAAS,OAAO,EAAE,EACxB,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,EACtC,KAAK,EAAE,gBAAgB,CAAC,CAAC,EAAE,KAAK,CAAC,EAEjC,OAAO,CAAC,EAAE,gBAAgB,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,GAC/C,CAAC,GAAG,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC;CAoEpC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ReadAsideCache = void 0;
|
|
4
|
+
const als_utilities_1 = require("../../../context/als.utilities");
|
|
5
|
+
const base_cache_model_1 = require("../base-cache.model");
|
|
6
|
+
const cache_operation_enum_1 = require("../cache-operation.enum");
|
|
7
|
+
/**
|
|
8
|
+
* Read‑aside base class.
|
|
9
|
+
*
|
|
10
|
+
* On a cache miss the source is called, but the result is **never** written
|
|
11
|
+
* back to the cache. Cache population happens only via explicit write
|
|
12
|
+
* strategies (`wrapWrite`) or out‑of‑band processes.
|
|
13
|
+
*
|
|
14
|
+
* `wrapDelete` and `wrapInvalidate` work exactly like their read‑through
|
|
15
|
+
* counterparts.
|
|
16
|
+
*/
|
|
17
|
+
class ReadAsideCache extends base_cache_model_1.BaseCache {
|
|
18
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
19
|
+
wrap(fn, keyFn,
|
|
20
|
+
// eslint-disable-next-line unusedImports/no-unused-vars
|
|
21
|
+
options) {
|
|
22
|
+
return async (...args) => {
|
|
23
|
+
const cacheCtx = { cache: this.name, operation: cache_operation_enum_1.CacheOperation.WRAP };
|
|
24
|
+
const label = { cache: this.name };
|
|
25
|
+
return als_utilities_1.AlsUtilities.runWithCacheContext(cacheCtx, async () => {
|
|
26
|
+
let key;
|
|
27
|
+
// ---------- try cache read ----------
|
|
28
|
+
try {
|
|
29
|
+
key = await keyFn(...args);
|
|
30
|
+
cacheCtx.key = key;
|
|
31
|
+
const storeStart = performance.now();
|
|
32
|
+
const cached = await this.store.get(key);
|
|
33
|
+
this.metrics.storeDuration.observe({ cache: this.name, operation: cache_operation_enum_1.CacheOperation.WRAP }, performance.now() - storeStart);
|
|
34
|
+
if (cached !== undefined) {
|
|
35
|
+
// expired → evict, but still treat as miss
|
|
36
|
+
if (cached.expiresAt !== undefined && cached.expiresAt.getTime() <= Date.now()) {
|
|
37
|
+
this.metrics.expiredEvictions.increase(label);
|
|
38
|
+
await Promise.resolve()
|
|
39
|
+
.then(() => this.store.delete(key))
|
|
40
|
+
.catch(() => undefined);
|
|
41
|
+
await this.updateSizeGauge();
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
cacheCtx.hit = true;
|
|
45
|
+
this.metrics.hits.increase(label);
|
|
46
|
+
return cached.value;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
catch (error) {
|
|
51
|
+
this.metrics.errors.increase({ cache: this.name, operation: cache_operation_enum_1.CacheOperation.WRAP });
|
|
52
|
+
await this.logger.warn('Cache read failed, treating as miss', { error });
|
|
53
|
+
}
|
|
54
|
+
// ---------- cache miss ----------
|
|
55
|
+
cacheCtx.hit = false;
|
|
56
|
+
this.metrics.misses.increase(label);
|
|
57
|
+
if (key == undefined) {
|
|
58
|
+
const start = performance.now();
|
|
59
|
+
const value = await fn(...args);
|
|
60
|
+
cacheCtx.durationInMs = performance.now() - start;
|
|
61
|
+
return value;
|
|
62
|
+
}
|
|
63
|
+
// Single‑flight: coalesce concurrent source calls for the same key.
|
|
64
|
+
// No store.set – **read‑aside**.
|
|
65
|
+
return this.runSingleFlight(key, async () => {
|
|
66
|
+
const sourceStart = performance.now();
|
|
67
|
+
const value = await fn(...args);
|
|
68
|
+
const sourceDuration = performance.now() - sourceStart;
|
|
69
|
+
cacheCtx.durationInMs = sourceDuration;
|
|
70
|
+
this.metrics.sourceDuration.observe({ cache: this.name, operation: cache_operation_enum_1.CacheOperation.WRAP }, sourceDuration);
|
|
71
|
+
return value;
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
exports.ReadAsideCache = ReadAsideCache;
|
|
78
|
+
//# sourceMappingURL=read-aside.cache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"read-aside.cache.js","sourceRoot":"","sources":["../../../../../src/caching/cache/read-aside/read-aside.cache.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { CacheKeyProvider, CacheWrapWriteOptionsArgsOnly } from '../cache-options.model';
|
|
2
|
+
import { CacheInterface } from '../cache.interface';
|
|
3
|
+
import { ReadAsideCache } from './read-aside.cache';
|
|
4
|
+
/**
|
|
5
|
+
* Write‑around read‑aside cache.
|
|
6
|
+
*
|
|
7
|
+
* Writes update the source and then only invalidate tags (no cache population).
|
|
8
|
+
* Reads (`wrap`) check the cache but **never** populate it.
|
|
9
|
+
*/
|
|
10
|
+
export declare abstract class WriteAroundReadAsideCache<K, V, N extends string, CacheTag extends string = string> extends ReadAsideCache<K, V, CacheTag, false, N> implements CacheInterface<K, V, CacheTag, false, N> {
|
|
11
|
+
readonly _writeResultAvailable: false;
|
|
12
|
+
wrapWrite<TArgs extends unknown[]>(fn: (...args: TArgs) => V | Promise<V>, _keyFn: CacheKeyProvider<K, TArgs>, // kept for interface compatibility, never used
|
|
13
|
+
options?: CacheWrapWriteOptionsArgsOnly<TArgs, CacheTag>): (...args: TArgs) => Promise<V>;
|
|
14
|
+
setDirect(): Promise<void>;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=write-around-read-aside.cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"write-around-read-aside.cache.d.ts","sourceRoot":"","sources":["../../../../../src/caching/cache/read-aside/write-around-read-aside.cache.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,6BAA6B,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD;;;;;GAKG;AACH,8BAAsB,yBAAyB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,MAAM,EAAE,QAAQ,SAAS,MAAM,GAAG,MAAM,CACpG,SAAQ,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAC/C,YAAW,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;IAGnD,QAAQ,CAAC,qBAAqB,EAAE,KAAK,CAAS;IAG9C,SAAS,CAAC,KAAK,SAAS,OAAO,EAAE,EAC7B,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,EACtC,MAAM,EAAE,gBAAgB,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,+CAA+C;IACnF,OAAO,CAAC,EAAE,6BAA6B,CAAC,KAAK,EAAE,QAAQ,CAAC,GACzD,CAAC,GAAG,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC;IAuB3B,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;CAGnC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WriteAroundReadAsideCache = void 0;
|
|
4
|
+
const als_utilities_1 = require("../../../context/als.utilities");
|
|
5
|
+
const cache_operation_enum_1 = require("../cache-operation.enum");
|
|
6
|
+
const read_aside_cache_1 = require("./read-aside.cache");
|
|
7
|
+
/**
|
|
8
|
+
* Write‑around read‑aside cache.
|
|
9
|
+
*
|
|
10
|
+
* Writes update the source and then only invalidate tags (no cache population).
|
|
11
|
+
* Reads (`wrap`) check the cache but **never** populate it.
|
|
12
|
+
*/
|
|
13
|
+
class WriteAroundReadAsideCache extends read_aside_cache_1.ReadAsideCache {
|
|
14
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
15
|
+
_writeResultAvailable = false;
|
|
16
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
17
|
+
wrapWrite(fn, _keyFn, // kept for interface compatibility, never used
|
|
18
|
+
options) {
|
|
19
|
+
return async (...args) => {
|
|
20
|
+
const cacheCtx = { cache: this.name, operation: cache_operation_enum_1.CacheOperation.WRITE };
|
|
21
|
+
return als_utilities_1.AlsUtilities.runWithCacheContext(cacheCtx, async () => {
|
|
22
|
+
const sourceStart = performance.now();
|
|
23
|
+
const value = await fn(...args);
|
|
24
|
+
const sourceDuration = performance.now() - sourceStart;
|
|
25
|
+
cacheCtx.durationInMs = sourceDuration;
|
|
26
|
+
this.metrics.sourceDuration.observe({ cache: this.name, operation: cache_operation_enum_1.CacheOperation.WRITE }, sourceDuration);
|
|
27
|
+
await this.safeInvalidateTags(options?.invalidatesTags, args);
|
|
28
|
+
this.metrics.writes.increase({ cache: this.name });
|
|
29
|
+
return value;
|
|
30
|
+
});
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
34
|
+
async setDirect() {
|
|
35
|
+
// Write‑around: intentionally does not cache writes.
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
exports.WriteAroundReadAsideCache = WriteAroundReadAsideCache;
|
|
39
|
+
//# sourceMappingURL=write-around-read-aside.cache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"write-around-read-aside.cache.js","sourceRoot":"","sources":["../../../../../src/caching/cache/read-aside/write-around-read-aside.cache.ts"],"names":[],"mappings":";;;AAAA,kEAA8D;AAE9D,kEAAyD;AAGzD,yDAAoD;AAEpD;;;;;GAKG;AACH,MAAsB,yBAClB,SAAQ,iCAAwC;IAGhD,+CAA+C;IACtC,qBAAqB,GAAU,KAAK,CAAC;IAE9C,+CAA+C;IAC/C,SAAS,CACL,EAAsC,EACtC,MAAkC,EAAE,+CAA+C;IACnF,OAAwD;QAExD,OAAO,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE;YACrB,MAAM,QAAQ,GAAiB,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,qCAAc,CAAC,KAAK,EAAE,CAAC;YAErF,OAAO,4BAAY,CAAC,mBAAmB,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;gBACzD,MAAM,WAAW,GAAW,WAAW,CAAC,GAAG,EAAE,CAAC;gBAC9C,MAAM,KAAK,GAAM,MAAM,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;gBACnC,MAAM,cAAc,GAAW,WAAW,CAAC,GAAG,EAAE,GAAG,WAAW,CAAC;gBAC/D,QAAQ,CAAC,YAAY,GAAG,cAAc,CAAC;gBACvC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,CAC/B,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,qCAAc,CAAC,KAAK,EAAE,EACrD,cAAc,CACjB,CAAC;gBAEF,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC;gBAC9D,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBAEnD,OAAO,KAAK,CAAC;YACjB,CAAC,CAAC,CAAC;QACP,CAAC,CAAC;IACN,CAAC;IAED,+CAA+C;IAC/C,KAAK,CAAC,SAAS;QACX,qDAAqD;IACzD,CAAC;CACJ;AAtCD,8DAsCC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ResultCacheKeyProvider, CacheWrapWriteOptionsWithResult, CacheSetDirectOptions } from '../cache-options.model';
|
|
2
|
+
import { CacheInterface } from '../cache.interface';
|
|
3
|
+
import { ReadAsideCache } from './read-aside.cache';
|
|
4
|
+
/**
|
|
5
|
+
* Write‑behind read‑aside cache.
|
|
6
|
+
*
|
|
7
|
+
* Writes update the source and then fire‑and‑forget a cache store.
|
|
8
|
+
* Reads (`wrap`) check the cache but **never** populate it.
|
|
9
|
+
*/
|
|
10
|
+
export declare abstract class WriteBehindReadAsideCache<K, V, N extends string, CacheTag extends string = string> extends ReadAsideCache<K, V, CacheTag, true, N> implements CacheInterface<K, V, CacheTag, true, N> {
|
|
11
|
+
readonly _writeResultAvailable: true;
|
|
12
|
+
wrapWrite<TArgs extends unknown[]>(fn: (...args: TArgs) => V | Promise<V>, keyFn: ResultCacheKeyProvider<K, V, TArgs>, options?: CacheWrapWriteOptionsWithResult<V, TArgs, CacheTag>): (...args: TArgs) => Promise<V>;
|
|
13
|
+
setDirect(key: K, value: V, options?: CacheSetDirectOptions<CacheTag>): Promise<void>;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=write-behind-read-aside.cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"write-behind-read-aside.cache.d.ts","sourceRoot":"","sources":["../../../../../src/caching/cache/read-aside/write-behind-read-aside.cache.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,+BAA+B,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AACxH,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD;;;;;GAKG;AACH,8BAAsB,yBAAyB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,MAAM,EAAE,QAAQ,SAAS,MAAM,GAAG,MAAM,CACpG,SAAQ,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAC9C,YAAW,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;IAGlD,QAAQ,CAAC,qBAAqB,EAAE,IAAI,CAAQ;IAG5C,SAAS,CAAC,KAAK,SAAS,OAAO,EAAE,EAC7B,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,EACtC,KAAK,EAAE,sBAAsB,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAC1C,OAAO,CAAC,EAAE,+BAA+B,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,GAC9D,CAAC,GAAG,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC;IAmD3B,SAAS,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,qBAAqB,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAkB9F"}
|