@tstdl/base 0.78.0-beta8 → 0.78.0-beta81
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/api/client/client.d.ts +2 -1
- package/api/client/client.js +38 -16
- package/api/client/client.js.map +1 -1
- package/api/response.js +3 -2
- package/api/response.js.map +1 -1
- package/api/server/api-controller.d.ts +3 -1
- package/api/server/api-controller.js +7 -2
- package/api/server/api-controller.js.map +1 -1
- package/api/server/gateway.d.ts +15 -3
- package/api/server/gateway.js +53 -37
- package/api/server/gateway.js.map +1 -1
- package/api/server/middlewares/allowed-methods.middleware.js +1 -1
- package/api/server/middlewares/allowed-methods.middleware.js.map +1 -1
- package/api/server/middlewares/cors.middleware.d.ts +6 -4
- package/api/server/middlewares/cors.middleware.js +30 -30
- package/api/server/middlewares/cors.middleware.js.map +1 -1
- package/api/types.d.ts +36 -14
- package/api/types.js +1 -2
- package/api/types.js.map +1 -1
- package/api/utils.d.ts +9 -0
- package/api/utils.js +15 -0
- package/api/utils.js.map +1 -0
- package/application/application.d.ts +15 -2
- package/application/application.js +89 -42
- package/application/application.js.map +1 -1
- package/collections/awaitable/awaitable-list.js +10 -11
- package/collections/awaitable/awaitable-list.js.map +1 -1
- package/collections/observable/observable-array.js +1 -1
- package/collections/observable/observable-array.js.map +1 -1
- package/collections/observable/observable-collection-base.js +12 -14
- package/collections/observable/observable-collection-base.js.map +1 -1
- package/collections/observable/observable-list-base.js +6 -8
- package/collections/observable/observable-list-base.js.map +1 -1
- package/collections/observable/observable-sorted-array-list.js +3 -3
- package/collections/observable/observable-sorted-array-list.js.map +1 -1
- package/collections/sorted-array-list.js +3 -3
- package/collections/sorted-array-list.js.map +1 -1
- package/collections/sorted-map.js +1 -1
- package/collections/sorted-map.js.map +1 -1
- package/container/container.js +19 -21
- package/container/container.js.map +1 -1
- package/container/decorators.d.ts +1 -1
- package/container/decorators.js.map +1 -1
- package/container/resolve-chain.d.ts +2 -1
- package/container/resolve-chain.js +6 -2
- package/container/resolve-chain.js.map +1 -1
- package/core.js +2 -2
- package/core.js.map +1 -1
- package/css/theme/theme.service.js.map +1 -1
- package/data-structures/circular-buffer.js +5 -6
- package/data-structures/circular-buffer.js.map +1 -1
- package/data-structures/collection.js +4 -5
- package/data-structures/collection.js.map +1 -1
- package/data-structures/index-out-of-bounds.error.d.ts +1 -1
- package/data-structures/index-out-of-bounds.error.js +2 -2
- package/data-structures/index-out-of-bounds.error.js.map +1 -1
- package/data-structures/iterable-weak-map.js +1 -1
- package/data-structures/iterable-weak-map.js.map +1 -1
- package/data-structures/linked-list.js.map +1 -1
- package/data-structures/sorted-array-list.js +2 -2
- package/data-structures/sorted-array-list.js.map +1 -1
- package/database/mongo/classes.js.map +1 -1
- package/database/mongo/mongo-base.repository.js +3 -3
- package/database/mongo/mongo-base.repository.js.map +1 -1
- package/database/mongo/mongo-entity-repository.js +2 -2
- package/database/mongo/mongo-entity-repository.js.map +1 -1
- package/distributed-loop/distributed-loop.js.map +1 -1
- package/distributed-loop/provider.js.map +1 -1
- package/environment.d.ts +10 -0
- package/environment.js +26 -0
- package/environment.js.map +1 -0
- package/error/custom.error.d.ts +7 -3
- package/error/custom.error.js +17 -8
- package/error/custom.error.js.map +1 -1
- package/error/index.d.ts +1 -0
- package/error/index.js +1 -0
- package/error/index.js.map +1 -1
- package/error/max-bytes-exceeded.error.d.ts +1 -0
- package/error/max-bytes-exceeded.error.js +3 -0
- package/error/max-bytes-exceeded.error.js.map +1 -1
- package/error/not-implemented.error.js +1 -1
- package/error/not-implemented.error.js.map +1 -1
- package/error/not-supported.error.d.ts +7 -0
- package/error/not-supported.error.js +17 -0
- package/error/not-supported.error.js.map +1 -0
- package/error/unsupported-media-type.error.js +1 -1
- package/error/unsupported-media-type.error.js.map +1 -1
- package/examples/api/basic-overview.js +17 -25
- package/examples/api/basic-overview.js.map +1 -1
- package/examples/api/streaming.d.ts +1 -0
- package/examples/api/streaming.js +79 -0
- package/examples/api/streaming.js.map +1 -0
- package/examples/mail/basic.js +12 -7
- package/examples/mail/basic.js.map +1 -1
- package/examples/mail/templates/hello-name.d.ts +2 -0
- package/examples/mail/templates/hello-name.js +11 -0
- package/examples/mail/templates/hello-name.js.map +1 -0
- package/examples/pdf/basic.js +9 -6
- package/examples/pdf/basic.js.map +1 -1
- package/examples/pdf/templates/hello-name.d.ts +1 -4
- package/examples/pdf/templates/hello-name.js +30 -4
- package/examples/pdf/templates/hello-name.js.map +1 -1
- package/examples/reflection/basic.js +1 -1
- package/examples/reflection/basic.js.map +1 -1
- package/examples/template/basic.d.ts +1 -0
- package/examples/template/basic.js +25 -0
- package/examples/template/basic.js.map +1 -0
- package/examples/template/templates/hello-name.d.ts +2 -0
- package/examples/template/templates/hello-name.js +23 -0
- package/examples/template/templates/hello-name.js.map +1 -0
- package/http/client/adapters/undici-http-client.adapter.d.ts +1 -2
- package/http/client/adapters/undici-http-client.adapter.js +10 -12
- package/http/client/adapters/undici-http-client.adapter.js.map +1 -1
- package/http/client/http-client-request.d.ts +24 -14
- package/http/client/http-client-request.js +4 -2
- package/http/client/http-client-request.js.map +1 -1
- package/http/client/http-client-response.d.ts +10 -12
- package/http/client/http-client-response.js +5 -1
- package/http/client/http-client-response.js.map +1 -1
- package/http/client/http-client.adapter.d.ts +1 -2
- package/http/client/http-client.adapter.js.map +1 -1
- package/http/client/http-client.d.ts +30 -31
- package/http/client/http-client.js +107 -74
- package/http/client/http-client.js.map +1 -1
- package/http/http-body.d.ts +19 -0
- package/http/http-body.js +52 -0
- package/http/http-body.js.map +1 -0
- package/http/http-headers.d.ts +3 -0
- package/http/http-headers.js +6 -0
- package/http/http-headers.js.map +1 -1
- package/http/http-value-map.js +2 -2
- package/http/http-value-map.js.map +1 -1
- package/http/http.error.d.ts +5 -2
- package/http/http.error.js +27 -5
- package/http/http.error.js.map +1 -1
- package/http/index.d.ts +2 -0
- package/http/index.js +2 -0
- package/http/index.js.map +1 -1
- package/http/server/http-server-request.d.ts +5 -10
- package/http/server/http-server-request.js +3 -30
- package/http/server/http-server-request.js.map +1 -1
- package/http/server/http-server-response.d.ts +4 -4
- package/http/server/node/node-http-server.js +6 -5
- package/http/server/node/node-http-server.js.map +1 -1
- package/http/types.d.ts +1 -11
- package/http/types.js +1 -2
- package/http/types.js.map +1 -1
- package/http/utils.d.ts +15 -0
- package/http/utils.js +113 -0
- package/http/utils.js.map +1 -0
- package/image-service/image-service.js.map +1 -1
- package/image-service/imgproxy/imgproxy-image-service.js.map +1 -1
- package/json-path/json-path.d.ts +8 -5
- package/json-path/json-path.js +15 -1
- package/json-path/json-path.js.map +1 -1
- package/key-value-store/mongo/mongo-key-value-store.provider.js.map +1 -1
- package/key-value-store/mongo/mongo-key-value.repository.js.map +1 -1
- package/key-value-store/mongo/mongo-key-value.store.js.map +1 -1
- package/lock/mongo/lock.js.map +1 -1
- package/lock/mongo/mongo-lock-repository.js.map +1 -1
- package/lock/mongo/provider.js.map +1 -1
- package/logger/console/logger.js +1 -1
- package/logger/console/logger.js.map +1 -1
- package/logger/logger.d.ts +2 -2
- package/mail/clients/nodemailer.mail-client.js.map +1 -1
- package/mail/index.d.ts +0 -3
- package/mail/index.js +0 -3
- package/mail/index.js.map +1 -1
- package/mail/mail.service.d.ts +3 -5
- package/mail/mail.service.js +8 -14
- package/mail/mail.service.js.map +1 -1
- package/mail/models/mail-template.model.d.ts +11 -10
- package/mail/models/mail-template.model.js +7 -0
- package/mail/models/mail-template.model.js.map +1 -1
- package/mail/module.d.ts +1 -5
- package/mail/module.js +2 -11
- package/mail/module.js.map +1 -1
- package/mail/repositories/mongo-mail-log.repository.js.map +1 -1
- package/mail/tokens.d.ts +0 -3
- package/mail/tokens.js +1 -2
- package/mail/tokens.js.map +1 -1
- package/message-bus/local/local-message-bus-provider.js.map +1 -1
- package/message-bus/local/local-message-bus.js.map +1 -1
- package/message-bus/message-bus-base.js +1 -2
- package/message-bus/message-bus-base.js.map +1 -1
- package/migration/migrator.js.map +1 -1
- package/migration/mongo/migration-state-repository.js.map +1 -1
- package/module/modules/web-server.module.js.map +1 -1
- package/notification/api.d.ts +20 -0
- package/notification/api.js +35 -0
- package/notification/api.js.map +1 -0
- package/notification/model.d.ts +18 -0
- package/notification/model.js +36 -0
- package/notification/model.js.map +1 -0
- package/notification/module.d.ts +9 -0
- package/notification/module.js +15 -0
- package/notification/module.js.map +1 -0
- package/object-storage/s3/s3.object-storage-provider.js.map +1 -1
- package/object-storage/s3/s3.object-storage.js.map +1 -1
- package/openid-connect/cached-oidc-configuration.service.js.map +1 -1
- package/openid-connect/mongo-oidc-state.repository.js.map +1 -1
- package/openid-connect/oidc-configuration.service.d.ts +2 -1
- package/openid-connect/oidc-configuration.service.js +5 -3
- package/openid-connect/oidc-configuration.service.js.map +1 -1
- package/openid-connect/oidc.service-model.d.ts +11 -3
- package/openid-connect/oidc.service.d.ts +6 -3
- package/openid-connect/oidc.service.js +72 -25
- package/openid-connect/oidc.service.js.map +1 -1
- package/package.json +13 -12
- package/pdf/pdf.service.d.ts +92 -12
- package/pdf/pdf.service.js +234 -34
- package/pdf/pdf.service.js.map +1 -1
- package/pool/pool.d.ts +23 -4
- package/pool/pool.js +76 -40
- package/pool/pool.js.map +1 -1
- package/promise/deferred-promise.d.ts +2 -15
- package/promise/deferred-promise.js +5 -10
- package/promise/deferred-promise.js.map +1 -1
- package/promise/index.d.ts +1 -0
- package/promise/index.js +1 -0
- package/promise/index.js.map +1 -1
- package/promise/lazy-promise.d.ts +11 -0
- package/promise/lazy-promise.js +31 -0
- package/promise/lazy-promise.js.map +1 -0
- package/queue/mongo/mongo-job.repository.js +1 -1
- package/queue/mongo/mongo-job.repository.js.map +1 -1
- package/queue/mongo/queue.js.map +1 -1
- package/queue/mongo/queue.provider.js.map +1 -1
- package/reflection/decorator-data.js +1 -1
- package/reflection/decorator-data.js.map +1 -1
- package/reflection/decorators.d.ts +2 -2
- package/reflection/decorators.js +7 -7
- package/reflection/decorators.js.map +1 -1
- package/reflection/registry.d.ts +8 -8
- package/reflection/registry.js +1 -1
- package/reflection/registry.js.map +1 -1
- package/reflection/types.d.ts +3 -2
- package/reflection/utils.d.ts +7 -2
- package/reflection/utils.js +38 -12
- package/reflection/utils.js.map +1 -1
- package/require.d.ts +1 -0
- package/require.js +9 -0
- package/require.js.map +1 -0
- package/rpc/endpoints/message-port.rpc-endpoint.d.ts +19 -0
- package/rpc/endpoints/message-port.rpc-endpoint.js +34 -0
- package/rpc/endpoints/message-port.rpc-endpoint.js.map +1 -0
- package/rpc/index.d.ts +4 -0
- package/rpc/index.js +21 -0
- package/rpc/index.js.map +1 -0
- package/rpc/model.d.ts +72 -0
- package/rpc/model.js +13 -0
- package/rpc/model.js.map +1 -0
- package/rpc/rpc-endpoint.d.ts +11 -0
- package/rpc/rpc-endpoint.js +23 -0
- package/rpc/rpc-endpoint.js.map +1 -0
- package/rpc/rpc-error.d.ts +8 -0
- package/rpc/rpc-error.js +26 -0
- package/rpc/rpc-error.js.map +1 -0
- package/rpc/rpc.d.ts +19 -0
- package/rpc/rpc.js +263 -0
- package/rpc/rpc.js.map +1 -0
- package/rxjs/retry-backoff.js +4 -5
- package/rxjs/retry-backoff.js.map +1 -1
- package/schema/array-constraints/maximum-length.d.ts +2 -2
- package/schema/array-constraints/maximum-length.js +2 -2
- package/schema/array-constraints/maximum-length.js.map +1 -1
- package/schema/array-constraints/minimum-length.d.ts +2 -2
- package/schema/array-constraints/minimum-length.js +2 -2
- package/schema/array-constraints/minimum-length.js.map +1 -1
- package/schema/coercers/boolean.coercer.d.ts +2 -2
- package/schema/coercers/boolean.coercer.js +2 -2
- package/schema/coercers/boolean.coercer.js.map +1 -1
- package/schema/coercers/date.coercer.d.ts +2 -2
- package/schema/coercers/date.coercer.js +2 -2
- package/schema/coercers/date.coercer.js.map +1 -1
- package/schema/coercers/number.coercer.d.ts +3 -3
- package/schema/coercers/number.coercer.js +2 -2
- package/schema/coercers/number.coercer.js.map +1 -1
- package/schema/coercers/regexp.coercer.d.ts +2 -2
- package/schema/coercers/regexp.coercer.js +2 -2
- package/schema/coercers/regexp.coercer.js.map +1 -1
- package/schema/coercers/string.coercer.d.ts +3 -3
- package/schema/coercers/string.coercer.js +2 -2
- package/schema/coercers/string.coercer.js.map +1 -1
- package/schema/coercers/uint8-array.coercer.js +2 -2
- package/schema/coercers/uint8-array.coercer.js.map +1 -1
- package/schema/constraints/enumeration.d.ts +5 -5
- package/schema/constraints/enumeration.js +6 -6
- package/schema/constraints/enumeration.js.map +1 -1
- package/schema/constraints/generic.d.ts +2 -2
- package/schema/constraints/generic.js +2 -2
- package/schema/constraints/generic.js.map +1 -1
- package/schema/constraints/integer.d.ts +2 -2
- package/schema/constraints/integer.js +2 -2
- package/schema/constraints/integer.js.map +1 -1
- package/schema/constraints/literal.d.ts +2 -2
- package/schema/constraints/literal.js +2 -2
- package/schema/constraints/literal.js.map +1 -1
- package/schema/constraints/maximum-date.d.ts +2 -2
- package/schema/constraints/maximum-date.js +2 -2
- package/schema/constraints/maximum-date.js.map +1 -1
- package/schema/constraints/maximum-length.d.ts +3 -3
- package/schema/constraints/maximum-length.js +2 -2
- package/schema/constraints/maximum-length.js.map +1 -1
- package/schema/constraints/maximum.d.ts +2 -2
- package/schema/constraints/maximum.js +2 -2
- package/schema/constraints/maximum.js.map +1 -1
- package/schema/constraints/minimum-date.d.ts +2 -2
- package/schema/constraints/minimum-date.js +2 -2
- package/schema/constraints/minimum-date.js.map +1 -1
- package/schema/constraints/minimum-length.d.ts +3 -3
- package/schema/constraints/minimum-length.js +2 -2
- package/schema/constraints/minimum-length.js.map +1 -1
- package/schema/constraints/minimum.d.ts +2 -2
- package/schema/constraints/minimum.js +2 -2
- package/schema/constraints/minimum.js.map +1 -1
- package/schema/constraints/pattern.d.ts +2 -2
- package/schema/constraints/pattern.js +2 -2
- package/schema/constraints/pattern.js.map +1 -1
- package/schema/decorators/array.d.ts +2 -2
- package/schema/decorators/array.js.map +1 -1
- package/schema/decorators/defaulted.d.ts +2 -2
- package/schema/decorators/defaulted.js.map +1 -1
- package/schema/decorators/index.d.ts +1 -0
- package/schema/decorators/index.js +1 -0
- package/schema/decorators/index.js.map +1 -1
- package/schema/decorators/one-or-many.d.ts +6 -0
- package/schema/decorators/one-or-many.js +12 -0
- package/schema/decorators/one-or-many.js.map +1 -0
- package/schema/decorators/optional.d.ts +3 -1
- package/schema/decorators/optional.js +2 -2
- package/schema/decorators/optional.js.map +1 -1
- package/schema/decorators/types.d.ts +3 -3
- package/schema/decorators/utils.d.ts +3 -2
- package/schema/decorators/utils.js +8 -4
- package/schema/decorators/utils.js.map +1 -1
- package/schema/schema.d.ts +4 -10
- package/schema/schema.error.d.ts +6 -5
- package/schema/schema.error.js +13 -10
- package/schema/schema.error.js.map +1 -1
- package/schema/schema.js +113 -104
- package/schema/schema.js.map +1 -1
- package/schema/schemas/array.d.ts +3 -3
- package/schema/schemas/array.js +1 -1
- package/schema/schemas/array.js.map +1 -1
- package/schema/schemas/assign.d.ts +6 -6
- package/schema/schemas/assign.js +3 -1
- package/schema/schemas/assign.js.map +1 -1
- package/schema/schemas/constraint.d.ts +3 -2
- package/schema/schemas/constraint.js.map +1 -1
- package/schema/schemas/defaulted.d.ts +2 -2
- package/schema/schemas/defaulted.js.map +1 -1
- package/schema/schemas/enumeration.js +1 -1
- package/schema/schemas/enumeration.js.map +1 -1
- package/schema/schemas/index.d.ts +3 -1
- package/schema/schemas/index.js +3 -1
- package/schema/schemas/index.js.map +1 -1
- package/schema/schemas/nullable.d.ts +2 -2
- package/schema/schemas/nullable.js.map +1 -1
- package/schema/schemas/number.d.ts +1 -1
- package/schema/schemas/number.js +0 -3
- package/schema/schemas/number.js.map +1 -1
- package/schema/schemas/omit.d.ts +4 -0
- package/schema/schemas/{exclude.js → omit.js} +8 -6
- package/schema/schemas/omit.js.map +1 -0
- package/schema/schemas/one-or-many.d.ts +10 -0
- package/schema/schemas/one-or-many.js +12 -0
- package/schema/schemas/one-or-many.js.map +1 -0
- package/schema/schemas/optional.d.ts +3 -2
- package/schema/schemas/optional.js.map +1 -1
- package/schema/schemas/partial.d.ts +4 -0
- package/schema/schemas/partial.js +22 -0
- package/schema/schemas/partial.js.map +1 -0
- package/schema/schemas/pick.d.ts +2 -2
- package/schema/schemas/pick.js +3 -1
- package/schema/schemas/pick.js.map +1 -1
- package/schema/schemas/record.d.ts +2 -2
- package/schema/schemas/record.js.map +1 -1
- package/schema/schemas/union.d.ts +4 -9
- package/schema/schemas/union.js.map +1 -1
- package/schema/types.d.ts +30 -20
- package/schema/types.js +22 -8
- package/schema/types.js.map +1 -1
- package/schema/utils/schema.d.ts +6 -1
- package/schema/utils/schema.js +60 -7
- package/schema/utils/schema.js.map +1 -1
- package/schema/utils/value-type.d.ts +5 -3
- package/schema/utils/value-type.js +22 -7
- package/schema/utils/value-type.js.map +1 -1
- package/search-index/elastic/config.js.map +1 -1
- package/search-index/elastic/model/index-mapping.d.ts +2 -1
- package/search-index/elastic/model/index-mapping.js.map +1 -1
- package/search-index/elastic/search-index.js +5 -4
- package/search-index/elastic/search-index.js.map +1 -1
- package/search-index/error.d.ts +1 -1
- package/search-index/error.js +2 -2
- package/search-index/error.js.map +1 -1
- package/serializer/handlers/register.d.ts +2 -2
- package/serializer/handlers/register.js +6 -2
- package/serializer/handlers/register.js.map +1 -1
- package/serializer/serializable.d.ts +11 -8
- package/serializer/serializable.js +13 -4
- package/serializer/serializable.js.map +1 -1
- package/serializer/serializer.js +21 -8
- package/serializer/serializer.js.map +1 -1
- package/serializer/types.d.ts +21 -6
- package/serializer/types.js +2 -1
- package/serializer/types.js.map +1 -1
- package/supports.d.ts +5 -0
- package/supports.js +9 -0
- package/supports.js.map +1 -0
- package/templates/index.d.ts +2 -0
- package/templates/index.js +2 -0
- package/templates/index.js.map +1 -1
- package/templates/module.d.ts +3 -1
- package/templates/module.js +31 -8
- package/templates/module.js.map +1 -1
- package/templates/providers/file.provider-template.d.ts +16 -0
- package/templates/providers/{file-template.provider.js → file.provider-template.js} +22 -15
- package/templates/providers/file.provider-template.js.map +1 -0
- package/templates/providers/memory.template-provider.d.ts +8 -0
- package/templates/providers/{memory-template.provider.base.js → memory.template-provider.js} +8 -6
- package/templates/providers/memory.template-provider.js.map +1 -0
- package/templates/renderers/handlebars.template-renderer.d.ts +38 -6
- package/templates/renderers/handlebars.template-renderer.js +70 -3
- package/templates/renderers/handlebars.template-renderer.js.map +1 -1
- package/templates/renderers/mjml.template-renderer.d.ts +6 -6
- package/templates/renderers/mjml.template-renderer.js +8 -9
- package/templates/renderers/mjml.template-renderer.js.map +1 -1
- package/templates/renderers/string.template-renderer.d.ts +8 -0
- package/{mail/template-providers/memory-mail-template.provider.js → templates/renderers/string.template-renderer.js} +13 -7
- package/templates/renderers/string.template-renderer.js.map +1 -0
- package/templates/resolvers/file.template-resolver.d.ts +23 -0
- package/templates/resolvers/file.template-resolver.js +63 -0
- package/templates/resolvers/file.template-resolver.js.map +1 -0
- package/templates/resolvers/string.template-resolver.d.ts +13 -0
- package/templates/resolvers/string.template-resolver.js +44 -0
- package/templates/resolvers/string.template-resolver.js.map +1 -0
- package/templates/template-renderer.provider.js +7 -19
- package/templates/template-renderer.provider.js.map +1 -1
- package/templates/template-resolver.provider.d.ts +8 -0
- package/templates/template-resolver.provider.js +48 -0
- package/templates/template-resolver.provider.js.map +1 -0
- package/templates/template.model.d.ts +15 -4
- package/templates/template.model.js +50 -0
- package/templates/template.model.js.map +1 -1
- package/templates/template.renderer.d.ts +14 -3
- package/templates/template.renderer.js +3 -0
- package/templates/template.renderer.js.map +1 -1
- package/templates/template.resolver.d.ts +5 -0
- package/templates/template.resolver.js +7 -0
- package/templates/template.resolver.js.map +1 -0
- package/templates/template.service.d.ts +10 -4
- package/templates/template.service.js +19 -6
- package/templates/template.service.js.map +1 -1
- package/templates/tokens.d.ts +3 -2
- package/templates/tokens.js +2 -1
- package/templates/tokens.js.map +1 -1
- package/threading/index.d.ts +2 -0
- package/{rxjs/compat → threading}/index.js +2 -1
- package/threading/index.js.map +1 -0
- package/threading/thread-pool.d.ts +20 -0
- package/threading/thread-pool.js +50 -0
- package/threading/thread-pool.js.map +1 -0
- package/threading/thread-worker.d.ts +3 -0
- package/threading/thread-worker.js +9 -0
- package/threading/thread-worker.js.map +1 -0
- package/types.d.ts +27 -9
- package/utils/alphabet.d.ts +3 -1
- package/utils/alphabet.js +2 -0
- package/utils/alphabet.js.map +1 -1
- package/utils/array/array.d.ts +1 -2
- package/utils/array/array.js.map +1 -1
- package/utils/async-iterable-helpers/observable-iterable.js +1 -2
- package/utils/async-iterable-helpers/observable-iterable.js.map +1 -1
- package/utils/async-iterable-helpers/take-until.js +2 -3
- package/utils/async-iterable-helpers/take-until.js.map +1 -1
- package/utils/base64.js +3 -2
- package/utils/base64.js.map +1 -1
- package/utils/binary.js +3 -2
- package/utils/binary.js.map +1 -1
- package/utils/cancellation-token.d.ts +28 -28
- package/utils/cancellation-token.js +14 -14
- package/utils/cancellation-token.js.map +1 -1
- package/utils/clone.js +4 -0
- package/utils/clone.js.map +1 -1
- package/utils/compression.d.ts +19 -15
- package/utils/compression.js +43 -10
- package/utils/compression.js.map +1 -1
- package/utils/encoding.d.ts +10 -0
- package/utils/encoding.js +20 -4
- package/utils/encoding.js.map +1 -1
- package/utils/enum.d.ts +5 -8
- package/utils/enum.js +15 -13
- package/utils/enum.js.map +1 -1
- package/utils/feedable-async-iterable.js +1 -2
- package/utils/feedable-async-iterable.js.map +1 -1
- package/utils/function/memoize.js +4 -4
- package/utils/function/memoize.js.map +1 -1
- package/utils/helpers.d.ts +0 -2
- package/utils/helpers.js +3 -14
- package/utils/helpers.js.map +1 -1
- package/utils/image.js +7 -8
- package/utils/image.js.map +1 -1
- package/utils/index.d.ts +2 -0
- package/utils/index.js +2 -0
- package/utils/index.js.map +1 -1
- package/utils/math.d.ts +37 -10
- package/utils/math.js +57 -12
- package/utils/math.js.map +1 -1
- package/utils/object/decycle.js +10 -21
- package/utils/object/decycle.js.map +1 -1
- package/utils/object/dereference.d.ts +7 -5
- package/utils/object/dereference.js +4 -4
- package/utils/object/dereference.js.map +1 -1
- package/utils/object/forward-ref.js +3 -19
- package/utils/object/forward-ref.js.map +1 -1
- package/utils/object/merge.js +3 -3
- package/utils/object/merge.js.map +1 -1
- package/utils/object/object.js +3 -3
- package/utils/object/object.js.map +1 -1
- package/utils/object/property-name.d.ts +2 -2
- package/utils/patch-worker.js +1 -2
- package/utils/patch-worker.js.map +1 -1
- package/utils/periodic-sampler.js +2 -2
- package/utils/periodic-sampler.js.map +1 -1
- package/utils/proxy.d.ts +6 -0
- package/utils/proxy.js +21 -0
- package/utils/proxy.js.map +1 -0
- package/utils/stream/finalize-stream.d.ts +1 -0
- package/utils/stream/finalize-stream.js +38 -0
- package/utils/stream/finalize-stream.js.map +1 -0
- package/utils/stream/index.d.ts +4 -3
- package/utils/stream/index.js +4 -3
- package/utils/stream/index.js.map +1 -1
- package/utils/stream/readable-stream-adapter.d.ts +5 -0
- package/utils/stream/readable-stream-adapter.js +45 -0
- package/utils/stream/readable-stream-adapter.js.map +1 -0
- package/utils/stream/readable-stream-from-promise.d.ts +1 -0
- package/utils/stream/readable-stream-from-promise.js +12 -0
- package/utils/stream/readable-stream-from-promise.js.map +1 -0
- package/utils/stream/size-limited-stream.d.ts +2 -0
- package/utils/stream/size-limited-stream.js +18 -0
- package/utils/stream/size-limited-stream.js.map +1 -0
- package/utils/stream/stream-reader.d.ts +2 -1
- package/utils/stream/stream-reader.js +7 -10
- package/utils/stream/stream-reader.js.map +1 -1
- package/utils/throw.d.ts +2 -0
- package/utils/throw.js +15 -0
- package/utils/throw.js.map +1 -0
- package/utils/timing.js +2 -2
- package/utils/timing.js.map +1 -1
- package/utils/type-guards.d.ts +34 -16
- package/utils/type-guards.js +112 -75
- package/utils/type-guards.js.map +1 -1
- package/web-types.d.ts +28 -0
- package/web-types.js +3 -0
- package/web-types.js.map +1 -0
- package/http/client/adapters/got-http-client.adapter.d.ts +0 -10
- package/http/client/adapters/got-http-client.adapter.js +0 -141
- package/http/client/adapters/got-http-client.adapter.js.map +0 -1
- package/http/client/adapters/utils.d.ts +0 -11
- package/http/client/adapters/utils.js +0 -79
- package/http/client/adapters/utils.js.map +0 -1
- package/mail/mail-template-renderer.provider.d.ts +0 -8
- package/mail/mail-template-renderer.provider.js +0 -60
- package/mail/mail-template-renderer.provider.js.map +0 -1
- package/mail/mail-template.provider.d.ts +0 -4
- package/mail/mail-template.provider.js +0 -7
- package/mail/mail-template.provider.js.map +0 -1
- package/mail/mail-template.renderer.d.ts +0 -10
- package/mail/mail-template.renderer.js +0 -7
- package/mail/mail-template.renderer.js.map +0 -1
- package/mail/template-providers/file-mail-template.provider.d.ts +0 -24
- package/mail/template-providers/file-mail-template.provider.js +0 -51
- package/mail/template-providers/file-mail-template.provider.js.map +0 -1
- package/mail/template-providers/memory-mail-template.provider.d.ts +0 -6
- package/mail/template-providers/memory-mail-template.provider.js.map +0 -1
- package/mail/template-renderers/handlebars.mail-template-renderer.d.ts +0 -13
- package/mail/template-renderers/handlebars.mail-template-renderer.js +0 -49
- package/mail/template-renderers/handlebars.mail-template-renderer.js.map +0 -1
- package/mail/template-renderers/mjml.mail-template-renderer.d.ts +0 -14
- package/mail/template-renderers/mjml.mail-template-renderer.js +0 -63
- package/mail/template-renderers/mjml.mail-template-renderer.js.map +0 -1
- package/rxjs/compat/first-value-from.d.ts +0 -2
- package/rxjs/compat/first-value-from.js +0 -9
- package/rxjs/compat/first-value-from.js.map +0 -1
- package/rxjs/compat/index.d.ts +0 -1
- package/rxjs/compat/index.js.map +0 -1
- package/schema/schemas/exclude.d.ts +0 -4
- package/schema/schemas/exclude.js.map +0 -1
- package/templates/providers/file-template.provider.base.d.ts +0 -12
- package/templates/providers/file-template.provider.base.js +0 -50
- package/templates/providers/file-template.provider.base.js.map +0 -1
- package/templates/providers/file-template.provider.d.ts +0 -22
- package/templates/providers/file-template.provider.js.map +0 -1
- package/templates/providers/memory-template.provider.base.d.ts +0 -9
- package/templates/providers/memory-template.provider.base.js.map +0 -1
- package/templates/providers/memory-template.provider.d.ts +0 -4
- package/templates/providers/memory-template.provider.js +0 -18
- package/templates/providers/memory-template.provider.js.map +0 -1
- package/utils/stream/async-iterable-readable.d.ts +0 -13
- package/utils/stream/async-iterable-readable.js +0 -40
- package/utils/stream/async-iterable-readable.js.map +0 -1
- package/utils/stream/async-writable-stream.d.ts +0 -16
- package/utils/stream/async-writable-stream.js +0 -41
- package/utils/stream/async-writable-stream.js.map +0 -1
- package/utils/stream/typed-readable.d.ts +0 -58
- package/utils/stream/typed-readable.js +0 -9
- package/utils/stream/typed-readable.js.map +0 -1
|
@@ -8,16 +8,20 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
8
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
10
|
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
11
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
15
|
exports.OidcService = void 0;
|
|
13
16
|
const container_1 = require("../container");
|
|
14
|
-
const
|
|
17
|
+
const forbidden_error_1 = require("../error/forbidden.error");
|
|
18
|
+
const not_implemented_error_1 = require("../error/not-implemented.error");
|
|
15
19
|
const client_1 = require("../http/client");
|
|
20
|
+
const http_headers_1 = require("../http/http-headers");
|
|
16
21
|
const schema_1 = require("../schema");
|
|
17
22
|
const alphabet_1 = require("../utils/alphabet");
|
|
18
23
|
const cryptography_1 = require("../utils/cryptography");
|
|
19
24
|
const date_time_1 = require("../utils/date-time");
|
|
20
|
-
const jwt_1 = require("../utils/jwt");
|
|
21
25
|
const random_1 = require("../utils/random");
|
|
22
26
|
const type_guards_1 = require("../utils/type-guards");
|
|
23
27
|
const oidc_configuration_service_1 = require("./oidc-configuration.service");
|
|
@@ -25,15 +29,19 @@ const oidc_state_repository_1 = require("./oidc-state.repository");
|
|
|
25
29
|
const tokenResponseSchema = (0, schema_1.object)({
|
|
26
30
|
/* eslint-disable @typescript-eslint/naming-convention */
|
|
27
31
|
access_token: (0, schema_1.string)(),
|
|
28
|
-
id_token: (0, schema_1.string)(),
|
|
32
|
+
id_token: (0, schema_1.optional)((0, schema_1.string)()),
|
|
29
33
|
token_type: (0, schema_1.string)(),
|
|
30
34
|
refresh_token: (0, schema_1.optional)((0, schema_1.string)())
|
|
31
35
|
/* eslint-enable @typescript-eslint/naming-convention */
|
|
32
36
|
});
|
|
33
37
|
let OidcService = class OidcService {
|
|
34
|
-
constructor(oidcConfigurationService, oidcStateRepository) {
|
|
38
|
+
constructor(oidcConfigurationService, oidcStateRepository, httpClient) {
|
|
35
39
|
this.oidcConfigurationService = oidcConfigurationService;
|
|
36
|
-
this.
|
|
40
|
+
this.maybeOidcStateRepository = oidcStateRepository;
|
|
41
|
+
this.httpClient = httpClient;
|
|
42
|
+
}
|
|
43
|
+
get oidcStateRepository() {
|
|
44
|
+
return (0, type_guards_1.assertDefinedPass)(this.maybeOidcStateRepository, 'OidcStateRepository is not provided but required.');
|
|
37
45
|
}
|
|
38
46
|
async initAuthorization({ endpoint, clientId, clientSecret, scope, expiration, data }) {
|
|
39
47
|
const oidcConfiguration = await this.oidcConfigurationService.getConfiguration(endpoint);
|
|
@@ -67,24 +75,59 @@ let OidcService = class OidcService {
|
|
|
67
75
|
async validateState(state) {
|
|
68
76
|
const oidcState = await this.oidcStateRepository.tryLoadByFilterAndDelete({ value: state });
|
|
69
77
|
if ((0, type_guards_1.isUndefined)(oidcState)) {
|
|
70
|
-
throw new
|
|
78
|
+
throw new forbidden_error_1.ForbiddenError('invalid state code');
|
|
71
79
|
}
|
|
72
80
|
return oidcState;
|
|
73
81
|
}
|
|
74
|
-
async getToken(
|
|
75
|
-
const oidcConfiguration = await this.oidcConfigurationService.getConfiguration(endpoint);
|
|
76
|
-
const
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
82
|
+
async getToken(parameters) {
|
|
83
|
+
const oidcConfiguration = await this.oidcConfigurationService.getConfiguration(parameters.endpoint);
|
|
84
|
+
const headers = new http_headers_1.HttpHeaders();
|
|
85
|
+
let formData = {};
|
|
86
|
+
let authorization;
|
|
87
|
+
switch (parameters.grantType) {
|
|
88
|
+
case 'authorization_code':
|
|
89
|
+
headers.set('authorization', `Bearer ${parameters.code}`);
|
|
90
|
+
formData = {
|
|
91
|
+
/* eslint-disable @typescript-eslint/naming-convention */
|
|
92
|
+
grant_type: 'authorization_code',
|
|
93
|
+
client_id: parameters.clientId,
|
|
94
|
+
client_secret: parameters.clientSecret,
|
|
95
|
+
scope: parameters.scope,
|
|
96
|
+
code: parameters.code,
|
|
97
|
+
code_verifier: parameters.codeVerifier,
|
|
98
|
+
redirect_uri: parameters.redirectUri
|
|
99
|
+
/* eslint-enable @typescript-eslint/naming-convention */
|
|
100
|
+
};
|
|
101
|
+
break;
|
|
102
|
+
case 'client_credentials':
|
|
103
|
+
formData = {
|
|
104
|
+
/* eslint-disable @typescript-eslint/naming-convention */
|
|
105
|
+
grant_type: 'client_credentials',
|
|
106
|
+
scope: parameters.scope
|
|
107
|
+
/* eslint-enable @typescript-eslint/naming-convention */
|
|
108
|
+
};
|
|
109
|
+
break;
|
|
110
|
+
default:
|
|
111
|
+
throw new not_implemented_error_1.NotImplementedError(`Grant type "${parameters.grantType}" not supported.`);
|
|
112
|
+
}
|
|
113
|
+
switch (parameters.authType) {
|
|
114
|
+
case 'body':
|
|
115
|
+
case undefined:
|
|
116
|
+
formData['client_id'] = parameters.clientId;
|
|
117
|
+
formData['client_secret'] = parameters.clientSecret;
|
|
118
|
+
break;
|
|
119
|
+
case 'basic-auth':
|
|
120
|
+
authorization = {
|
|
121
|
+
basic: {
|
|
122
|
+
username: parameters.clientId,
|
|
123
|
+
password: parameters.clientSecret
|
|
124
|
+
}
|
|
125
|
+
};
|
|
126
|
+
break;
|
|
127
|
+
default:
|
|
128
|
+
throw new not_implemented_error_1.NotImplementedError(`Auth type "${parameters.authType}" not supported.`);
|
|
129
|
+
}
|
|
130
|
+
const tokenResponse = await this.httpClient.postJson(oidcConfiguration.tokenEndpoint, { headers, authorization, body: { form: formData } });
|
|
88
131
|
return parseTokenResponse(tokenResponse);
|
|
89
132
|
}
|
|
90
133
|
async refreshToken({ endpoint, clientId, clientSecret, refreshToken }) {
|
|
@@ -97,27 +140,31 @@ let OidcService = class OidcService {
|
|
|
97
140
|
refresh_token: refreshToken
|
|
98
141
|
/* eslint-enable @typescript-eslint/naming-convention */
|
|
99
142
|
};
|
|
100
|
-
const tokenResponse = await
|
|
143
|
+
const tokenResponse = await this.httpClient.postJson(oidcConfiguration.tokenEndpoint, { headers: { authorization: `Bearer ${refreshToken}` }, body: { form: formData } });
|
|
101
144
|
return parseTokenResponse(tokenResponse);
|
|
102
145
|
}
|
|
103
146
|
async getUserInfo(endpoint, token) {
|
|
104
147
|
const oidcConfiguration = await this.oidcConfigurationService.getConfiguration(endpoint);
|
|
105
|
-
|
|
148
|
+
if ((0, type_guards_1.isUndefined)(oidcConfiguration.userInfoEndpoint)) {
|
|
149
|
+
throw new Error('User info endpoint not supported.');
|
|
150
|
+
}
|
|
151
|
+
const userInfoResponse = await this.httpClient.getJson(oidcConfiguration.userInfoEndpoint, { headers: { authorization: `${token.tokenType} ${token.accessToken}` } });
|
|
106
152
|
return userInfoResponse;
|
|
107
153
|
}
|
|
108
154
|
};
|
|
109
155
|
OidcService = __decorate([
|
|
110
156
|
(0, container_1.singleton)(),
|
|
111
|
-
|
|
157
|
+
__param(1, (0, container_1.inject)(oidc_state_repository_1.OidcStateRepository)),
|
|
158
|
+
__param(1, (0, container_1.optional)()),
|
|
159
|
+
__metadata("design:paramtypes", [oidc_configuration_service_1.OidcConfigurationService, Object, client_1.HttpClient])
|
|
112
160
|
], OidcService);
|
|
113
161
|
exports.OidcService = OidcService;
|
|
114
162
|
function parseTokenResponse(response) {
|
|
115
163
|
const { access_token, id_token, token_type, refresh_token } = schema_1.Schema.parse(tokenResponseSchema, response, { mask: true }); // eslint-disable-line @typescript-eslint/naming-convention
|
|
116
|
-
const decodedToken = (0, jwt_1.parseJwtTokenString)(id_token);
|
|
117
164
|
const token = {
|
|
118
165
|
tokenType: token_type,
|
|
119
|
-
expiration: (0, type_guards_1.assertNumberPass)(decodedToken.token.payload.exp) * 1000,
|
|
120
166
|
accessToken: access_token,
|
|
167
|
+
idToken: id_token,
|
|
121
168
|
refreshToken: refresh_token,
|
|
122
169
|
raw: response
|
|
123
170
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oidc.service.js","sourceRoot":"","sources":["../../source/openid-connect/oidc.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"oidc.service.js","sourceRoot":"","sources":["../../source/openid-connect/oidc.service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tstdl/base",
|
|
3
|
-
"version": "0.78.0-
|
|
3
|
+
"version": "0.78.0-beta81",
|
|
4
4
|
"author": "Patrick Hein",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -18,11 +18,11 @@
|
|
|
18
18
|
"luxon": "^3.0",
|
|
19
19
|
"reflect-metadata": "^0.1",
|
|
20
20
|
"rxjs": "^7.5",
|
|
21
|
-
"type-fest": "^2.
|
|
21
|
+
"type-fest": "^2.19"
|
|
22
22
|
},
|
|
23
23
|
"devDependencies": {
|
|
24
24
|
"@types/chroma-js": "2.1",
|
|
25
|
-
"@types/koa__router": "
|
|
25
|
+
"@types/koa__router": "12.0",
|
|
26
26
|
"@types/luxon": "3.0",
|
|
27
27
|
"@types/minio": "7.0",
|
|
28
28
|
"@types/mjml": "4.7",
|
|
@@ -33,24 +33,25 @@
|
|
|
33
33
|
"eslint": "8",
|
|
34
34
|
"ttypescript": "1.5",
|
|
35
35
|
"typedoc": "0.23",
|
|
36
|
-
"typescript": "4.
|
|
36
|
+
"typescript": "4.8",
|
|
37
37
|
"typescript-transform-paths": "3.3"
|
|
38
38
|
},
|
|
39
39
|
"peerDependencies": {
|
|
40
|
-
"@elastic/elasticsearch": "^8.
|
|
40
|
+
"@elastic/elasticsearch": "^8.4",
|
|
41
41
|
"@koa/router": "^12.0",
|
|
42
|
-
"@tstdl/angular": "^0.11.0-
|
|
42
|
+
"@tstdl/angular": "^0.11.0-beta75",
|
|
43
43
|
"chroma-js": "^2.4",
|
|
44
|
-
"got": "^12.
|
|
44
|
+
"got": "^12.5",
|
|
45
45
|
"handlebars": "^4.7",
|
|
46
|
+
"knex": "^2.3",
|
|
46
47
|
"koa": "^2.13",
|
|
47
48
|
"minio": "^7.0",
|
|
48
49
|
"mjml": "^4.13",
|
|
49
|
-
"mongodb": "4.
|
|
50
|
-
"nodemailer": "^6.
|
|
51
|
-
"puppeteer": "^
|
|
52
|
-
"undici": "^5.
|
|
53
|
-
"urlpattern-polyfill": "^
|
|
50
|
+
"mongodb": "4.10",
|
|
51
|
+
"nodemailer": "^6.8",
|
|
52
|
+
"puppeteer": "^18.0",
|
|
53
|
+
"undici": "^5.11",
|
|
54
|
+
"urlpattern-polyfill": "^6.0"
|
|
54
55
|
},
|
|
55
56
|
"peerDependenciesMeta": {
|
|
56
57
|
"@tstdl/angular": {
|
package/pdf/pdf.service.d.ts
CHANGED
|
@@ -2,32 +2,112 @@ import type { AfterResolve } from "../container";
|
|
|
2
2
|
import { afterResolve } from "../container";
|
|
3
3
|
import type { AsyncDisposable } from "../disposable/disposable";
|
|
4
4
|
import { disposeAsync } from "../disposable/disposable";
|
|
5
|
-
import {
|
|
6
|
-
|
|
5
|
+
import { Logger } from "../logger";
|
|
6
|
+
import type { TemplateField } from "../templates";
|
|
7
|
+
import { Template, TemplateService } from "../templates";
|
|
8
|
+
export declare enum PdfFormat {
|
|
9
|
+
Letter = "letter",
|
|
10
|
+
Legal = "legal",
|
|
11
|
+
Tabloid = "tabloid",
|
|
12
|
+
Ledger = "ledger",
|
|
13
|
+
A0 = "a0",
|
|
14
|
+
A1 = "a1",
|
|
15
|
+
A2 = "a2",
|
|
16
|
+
A3 = "a3",
|
|
17
|
+
A4 = "a4",
|
|
18
|
+
A5 = "a5",
|
|
19
|
+
A6 = "a6"
|
|
20
|
+
}
|
|
21
|
+
export declare class PdfMarginObject {
|
|
22
|
+
top?: number | string;
|
|
23
|
+
bottom?: number | string;
|
|
24
|
+
right?: number | string;
|
|
25
|
+
left?: number | string;
|
|
26
|
+
}
|
|
27
|
+
export declare class PdfRenderOptions {
|
|
7
28
|
omitDefaultBackground?: boolean;
|
|
8
29
|
renderBackground?: boolean;
|
|
9
30
|
landscape?: boolean;
|
|
10
|
-
format?:
|
|
31
|
+
format?: PdfFormat;
|
|
11
32
|
width?: string | number;
|
|
12
33
|
height?: string | number;
|
|
13
34
|
scale?: number;
|
|
14
|
-
margin?: string | number |
|
|
15
|
-
|
|
16
|
-
bottom?: number | string;
|
|
17
|
-
right?: number | string;
|
|
18
|
-
left?: number | string;
|
|
19
|
-
};
|
|
35
|
+
margin?: string | number | PdfMarginObject;
|
|
36
|
+
displayHeaderFooter?: boolean;
|
|
20
37
|
waitForNetworkIdle?: boolean;
|
|
21
|
-
|
|
38
|
+
headerTemplate?: string;
|
|
39
|
+
footerTemplate?: string;
|
|
40
|
+
/**
|
|
41
|
+
* Timeout for closing render context in case something went wrong.
|
|
42
|
+
* @default 60000 (1 minute)
|
|
43
|
+
*/
|
|
44
|
+
timeout?: number;
|
|
45
|
+
}
|
|
46
|
+
export declare type PdfTemplateOptions = PdfRenderOptions;
|
|
47
|
+
export declare class PdfTemplate extends Template<{
|
|
48
|
+
header: false;
|
|
49
|
+
body: true;
|
|
50
|
+
footer: false;
|
|
51
|
+
}, PdfRenderOptions> {
|
|
52
|
+
options?: PdfTemplateOptions;
|
|
53
|
+
}
|
|
22
54
|
export declare class PdfService implements AsyncDisposable, AfterResolve {
|
|
23
55
|
private readonly templateService;
|
|
56
|
+
private readonly logger;
|
|
24
57
|
private readonly pool;
|
|
25
|
-
constructor(templateService: TemplateService);
|
|
58
|
+
constructor(templateService: TemplateService, logger: Logger);
|
|
26
59
|
[afterResolve](): void;
|
|
27
60
|
[disposeAsync](): Promise<void>;
|
|
28
61
|
dispose(): Promise<void>;
|
|
62
|
+
/**
|
|
63
|
+
* Renders HTML to pdf stream
|
|
64
|
+
* @param html html to render
|
|
65
|
+
* @param options render options
|
|
66
|
+
* @returns pdf stream
|
|
67
|
+
*/
|
|
68
|
+
renderHtmlStream(html: string, options?: PdfRenderOptions): ReadableStream<Uint8Array>;
|
|
69
|
+
/**
|
|
70
|
+
* Renders HTML to pdf
|
|
71
|
+
* @param html html to render
|
|
72
|
+
* @param options render options
|
|
73
|
+
* @returns pdf bytes
|
|
74
|
+
*/
|
|
29
75
|
renderHtml(html: string, options?: PdfRenderOptions): Promise<Uint8Array>;
|
|
76
|
+
/**
|
|
77
|
+
* Renders an url to pdf stream
|
|
78
|
+
* @param url url to load and render
|
|
79
|
+
* @param options render options
|
|
80
|
+
* @returns pdf stream
|
|
81
|
+
*/
|
|
82
|
+
renderUrlStream(url: string, options?: PdfRenderOptions): ReadableStream<Uint8Array>;
|
|
83
|
+
/**
|
|
84
|
+
* Renders an url to pdf
|
|
85
|
+
* @param url url to load and render
|
|
86
|
+
* @param options render options
|
|
87
|
+
* @returns pdf bytes
|
|
88
|
+
*/
|
|
30
89
|
renderUrl(url: string, options?: PdfRenderOptions): Promise<Uint8Array>;
|
|
90
|
+
/**
|
|
91
|
+
* Renders a template to pdf
|
|
92
|
+
* @param key template key
|
|
93
|
+
* @param templateContext context for template rendering
|
|
94
|
+
* @param options additional options, overwrites options specified in template
|
|
95
|
+
* @returns pdf bytes
|
|
96
|
+
*/
|
|
97
|
+
renderTemplateStream(key: string, templateContext?: object, options?: PdfRenderOptions): ReadableStream<Uint8Array>;
|
|
98
|
+
/**
|
|
99
|
+
* Renders a template to pdf
|
|
100
|
+
* @param key template key
|
|
101
|
+
* @param templateContext context for template rendering
|
|
102
|
+
* @param options additional options, overwrites options specified in template
|
|
103
|
+
* @returns pdf bytes
|
|
104
|
+
*/
|
|
31
105
|
renderTemplate(key: string, templateContext?: object, options?: PdfRenderOptions): Promise<Uint8Array>;
|
|
32
|
-
private
|
|
106
|
+
private renderStream;
|
|
107
|
+
private convertOptions;
|
|
33
108
|
}
|
|
109
|
+
export declare function pdfTemplate(fields: {
|
|
110
|
+
body: TemplateField;
|
|
111
|
+
header?: TemplateField;
|
|
112
|
+
footer?: TemplateField;
|
|
113
|
+
}, options?: PdfTemplateOptions): PdfTemplate;
|