@tstdl/base 0.78.0-beta7 → 0.78.0-beta70
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.js +1 -1
- 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 +2 -0
- package/application/application.js +3 -0
- package/application/application.js.map +1 -1
- package/collections/awaitable/awaitable-list.js +7 -7
- 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-list-base.js +2 -2
- 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 +1 -1
- package/core.js.map +1 -1
- package/css/theme/theme.service.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 +8 -5
- 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 +2 -1
- 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/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/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 +12 -11
- package/pdf/pdf.service.d.ts +91 -12
- package/pdf/pdf.service.js +209 -29
- package/pdf/pdf.service.js.map +1 -1
- package/pool/pool.d.ts +6 -1
- package/pool/pool.js +4 -1
- 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/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/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 +110 -104
- package/schema/schema.js.map +1 -1
- package/schema/schemas/array.d.ts +3 -3
- 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/index.d.ts +2 -1
- package/schema/schemas/index.js +2 -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.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/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 +21 -8
- package/schema/types.js.map +1 -1
- package/schema/utils/schema.d.ts +6 -1
- package/schema/utils/schema.js +60 -4
- package/schema/utils/schema.js.map +1 -1
- package/schema/utils/value-type.d.ts +5 -3
- package/schema/utils/value-type.js +23 -8
- 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/threading/index.js +19 -0
- package/threading/index.js.map +1 -0
- package/threading/thread-pool.d.ts +19 -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/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/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/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 +2 -2
- 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/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/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/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/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
|
@@ -12,20 +12,31 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
12
12
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.
|
|
15
|
+
exports.configureFileTemplateProvider = exports.FileTemplateProvider = exports.fileTemplateProviderConfig = void 0;
|
|
16
16
|
const container_1 = require("../../container");
|
|
17
|
+
const bad_request_error_1 = require("../../error/bad-request.error");
|
|
17
18
|
const schema_1 = require("../../schema");
|
|
18
|
-
const
|
|
19
|
+
const path = require("path");
|
|
20
|
+
const template_model_1 = require("../template.model");
|
|
21
|
+
const template_provider_1 = require("../template.provider");
|
|
19
22
|
exports.fileTemplateProviderConfig = {};
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
template: (0, schema_1.optional)((0, schema_1.string)()),
|
|
23
|
-
templateFile: (0, schema_1.optional)((0, schema_1.string)()),
|
|
24
|
-
options: (0, schema_1.optional)((0, schema_1.unknown)())
|
|
25
|
-
});
|
|
26
|
-
let FileTemplateProvider = class FileTemplateProvider extends file_template_provider_base_1.FileTemplateProviderBase {
|
|
23
|
+
const keyPattern = /^[\w\-/]+$/u;
|
|
24
|
+
let FileTemplateProvider = class FileTemplateProvider extends template_provider_1.TemplateProvider {
|
|
27
25
|
constructor(basePath) {
|
|
28
|
-
super(
|
|
26
|
+
super();
|
|
27
|
+
this.basePath = path.resolve(basePath);
|
|
28
|
+
}
|
|
29
|
+
async get(key) {
|
|
30
|
+
if (!keyPattern.test(key)) {
|
|
31
|
+
throw new bad_request_error_1.BadRequestError('Illegal template key. Only a-z, A-Z, 0-9, _ and - are allowed.');
|
|
32
|
+
}
|
|
33
|
+
const filePath = path.resolve(this.basePath, `${key}.js`);
|
|
34
|
+
if (!filePath.startsWith(this.basePath)) {
|
|
35
|
+
throw new bad_request_error_1.BadRequestError(`Illegal file path. Must be inside "${this.basePath}".`);
|
|
36
|
+
}
|
|
37
|
+
const templateModule = await Promise.resolve().then(() => require(filePath));
|
|
38
|
+
const fileContent = templateModule.default;
|
|
39
|
+
return schema_1.Schema.parse(template_model_1.Template, fileContent);
|
|
29
40
|
}
|
|
30
41
|
};
|
|
31
42
|
FileTemplateProvider = __decorate([
|
|
@@ -40,8 +51,4 @@ function configureFileTemplateProvider(config = {}) {
|
|
|
40
51
|
exports.fileTemplateProviderConfig.basePath = config.basePath ?? exports.fileTemplateProviderConfig.basePath;
|
|
41
52
|
}
|
|
42
53
|
exports.configureFileTemplateProvider = configureFileTemplateProvider;
|
|
43
|
-
|
|
44
|
-
return template;
|
|
45
|
-
}
|
|
46
|
-
exports.fileTemplate = fileTemplate;
|
|
47
|
-
//# sourceMappingURL=file-template.provider.js.map
|
|
54
|
+
//# sourceMappingURL=file.provider-template.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file.provider-template.js","sourceRoot":"","sources":["../../../source/templates/providers/file.provider-template.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,+CAAwE;AACxE,qEAA4D;AAC5D,yCAAkC;AAClC,6BAA6B;AAC7B,sDAA6C;AAC7C,4DAAwD;AAQ3C,QAAA,0BAA0B,GAA+B,EAAE,CAAC;AAEzE,MAAM,UAAU,GAAG,aAAa,CAAC;AAK1B,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,oCAAgB;IAIxD,YAAyB,QAAgB;QACvC,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,GAAW;QACnB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACzB,MAAM,IAAI,mCAAe,CAAC,gEAAgE,CAAC,CAAC;SAC7F;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,GAAG,KAAK,CAAC,CAAC;QAE1D,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YACvC,MAAM,IAAI,mCAAe,CAAC,sCAAsC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC;SACpF;QAED,MAAM,cAAc,GAAG,2CAAa,QAAQ,EAAyB,CAAC;QACtE,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC;QAC3C,OAAO,eAAM,CAAC,KAAK,CAAC,yBAAQ,EAAE,WAAW,CAAC,CAAC;IAC7C,CAAC;CACF,CAAA;AAzBY,oBAAoB;IAHhC,IAAA,qBAAS,EAAC;QACT,uBAAuB,EAAE,GAAG,EAAE,CAAC,kCAA0B,CAAC,QAAQ;KACnE,CAAC;IAKa,WAAA,IAAA,qBAAS,GAAE,CAAA;;GAJb,oBAAoB,CAyBhC;AAzBY,oDAAoB;AA2BjC,SAAgB,6BAA6B,CAAC,SAA8C,EAAE;IAC5F,kCAA0B,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,kCAA0B,CAAC,QAAQ,CAAC;AAC/F,CAAC;AAFD,sEAEC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Template } from '../template.model';
|
|
2
|
+
import { TemplateProvider } from '../template.provider';
|
|
3
|
+
export declare class MemoryTemplateProvider extends TemplateProvider {
|
|
4
|
+
private readonly map;
|
|
5
|
+
constructor();
|
|
6
|
+
add(key: string, template: Template): void;
|
|
7
|
+
get(key: string): Promise<Template>;
|
|
8
|
+
}
|
package/templates/providers/{memory-template.provider.base.js → memory.template-provider.js}
RENAMED
|
@@ -9,11 +9,13 @@ 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
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.
|
|
12
|
+
exports.MemoryTemplateProvider = void 0;
|
|
13
13
|
const container_1 = require("../../container");
|
|
14
14
|
const type_guards_1 = require("../../utils/type-guards");
|
|
15
|
-
|
|
15
|
+
const template_provider_1 = require("../template.provider");
|
|
16
|
+
let MemoryTemplateProvider = class MemoryTemplateProvider extends template_provider_1.TemplateProvider {
|
|
16
17
|
constructor() {
|
|
18
|
+
super();
|
|
17
19
|
this.map = new Map();
|
|
18
20
|
}
|
|
19
21
|
add(key, template) {
|
|
@@ -27,9 +29,9 @@ let MemoryTemplateProviderBase = class MemoryTemplateProviderBase {
|
|
|
27
29
|
return template;
|
|
28
30
|
}
|
|
29
31
|
};
|
|
30
|
-
|
|
32
|
+
MemoryTemplateProvider = __decorate([
|
|
31
33
|
(0, container_1.singleton)(),
|
|
32
34
|
__metadata("design:paramtypes", [])
|
|
33
|
-
],
|
|
34
|
-
exports.
|
|
35
|
-
//# sourceMappingURL=memory-
|
|
35
|
+
], MemoryTemplateProvider);
|
|
36
|
+
exports.MemoryTemplateProvider = MemoryTemplateProvider;
|
|
37
|
+
//# sourceMappingURL=memory.template-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory.template-provider.js","sourceRoot":"","sources":["../../../source/templates/providers/memory.template-provider.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAAwC;AACxC,yDAAkD;AAElD,4DAAwD;AAGjD,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,oCAAgB;IAG1D;QACE,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;IACvB,CAAC;IAED,GAAG,CAAC,GAAW,EAAE,QAAkB;QACjC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,GAAW;QACnB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEnC,IAAI,IAAA,yBAAW,EAAC,QAAQ,CAAC,EAAE;YACzB,MAAM,IAAI,KAAK,CAAC,YAAY,GAAG,iBAAiB,CAAC,CAAC;SACnD;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF,CAAA;AAtBY,sBAAsB;IADlC,IAAA,qBAAS,GAAE;;GACC,sBAAsB,CAsBlC;AAtBY,wDAAsB"}
|
|
@@ -1,11 +1,43 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import
|
|
1
|
+
import type { ObjectLiteral, Record } from "../../types";
|
|
2
|
+
import * as handlebars from 'handlebars';
|
|
3
|
+
import { TemplateResolverProvider } from '../template-resolver.provider';
|
|
4
|
+
import type { TemplateField } from '../template.model';
|
|
5
|
+
import type { TemplateRenderObject } from '../template.renderer';
|
|
3
6
|
import { TemplateRenderer } from '../template.renderer';
|
|
4
|
-
export declare type
|
|
7
|
+
export declare type HandlebarsTemplateHelperOptionsLocationItem = {
|
|
8
|
+
line: number;
|
|
9
|
+
column: number;
|
|
10
|
+
};
|
|
11
|
+
export declare type HandlebarsTemplateHelperOptionsLocation = {
|
|
12
|
+
start: HandlebarsTemplateHelperOptionsLocationItem;
|
|
13
|
+
end: HandlebarsTemplateHelperOptionsLocationItem;
|
|
14
|
+
};
|
|
15
|
+
export declare type HandlebarsTemplateHelperOptions = {
|
|
16
|
+
name: string;
|
|
17
|
+
location?: HandlebarsTemplateHelperOptionsLocation;
|
|
18
|
+
data?: Record<string>;
|
|
19
|
+
hash: Record<string>;
|
|
20
|
+
lookupProperty: (object: ObjectLiteral, propertyName: string) => unknown;
|
|
21
|
+
fn?: handlebars.TemplateDelegate;
|
|
22
|
+
inverse?: handlebars.TemplateDelegate;
|
|
23
|
+
};
|
|
24
|
+
export declare type HandlebarsTemplateHelper = (context: unknown, args: unknown[], options: HandlebarsTemplateHelperOptions) => any;
|
|
25
|
+
export declare type HandlebarsTemplateHelpersObject = Record<string, HandlebarsTemplateHelper>;
|
|
26
|
+
export declare type HandlebarsTemplatePartial = string | TemplateField<string, 'handlebars', HandlebarsRendererOptions> | handlebars.TemplateDelegate;
|
|
27
|
+
export declare type HandlebarsTemplatePartialsObject = Record<string, HandlebarsTemplatePartial>;
|
|
28
|
+
export declare type HandlebarsRendererOptions = {
|
|
5
29
|
strict?: boolean;
|
|
30
|
+
preventIndent?: boolean;
|
|
31
|
+
helpers?: HandlebarsTemplateHelpersObject;
|
|
32
|
+
partials?: HandlebarsTemplatePartialsObject;
|
|
6
33
|
};
|
|
7
|
-
export declare type
|
|
8
|
-
export declare class HandlebarsTemplateRenderer extends TemplateRenderer<
|
|
34
|
+
export declare type HandlebarsTemplateRenderObject = TemplateRenderObject<'handlebars', HandlebarsRendererOptions>;
|
|
35
|
+
export declare class HandlebarsTemplateRenderer extends TemplateRenderer<'handlebars', HandlebarsRendererOptions> {
|
|
36
|
+
private readonly templateResolverProvider;
|
|
37
|
+
private readonly compileHandlebarsTemplate;
|
|
38
|
+
constructor(templateResolverProvider: TemplateResolverProvider);
|
|
9
39
|
canHandleType(type: string): boolean;
|
|
10
|
-
|
|
40
|
+
_render(renderObject: HandlebarsTemplateRenderObject, context?: object): Promise<string>;
|
|
41
|
+
private _compileHandlebarsTemplate;
|
|
42
|
+
private normalizePartial;
|
|
11
43
|
}
|
|
@@ -5,22 +5,89 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
6
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
7
|
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
8
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
12
|
exports.HandlebarsTemplateRenderer = void 0;
|
|
10
13
|
const container_1 = require("../../container");
|
|
14
|
+
const memoize_1 = require("../../utils/function/memoize");
|
|
15
|
+
const object_1 = require("../../utils/object/object");
|
|
16
|
+
const type_guards_1 = require("../../utils/type-guards");
|
|
11
17
|
const handlebars = require("handlebars");
|
|
18
|
+
const template_resolver_provider_1 = require("../template-resolver.provider");
|
|
12
19
|
const template_renderer_1 = require("../template.renderer");
|
|
20
|
+
const wrapHandlebarsTemplateHelper = (0, memoize_1.memoizeSingle)(_wrapHandlebarsTemplateHelper, { weak: true });
|
|
13
21
|
let HandlebarsTemplateRenderer = class HandlebarsTemplateRenderer extends template_renderer_1.TemplateRenderer {
|
|
22
|
+
constructor(templateResolverProvider) {
|
|
23
|
+
super();
|
|
24
|
+
this.templateResolverProvider = templateResolverProvider;
|
|
25
|
+
this.compileHandlebarsTemplate = (0, memoize_1.memoizeSingle)(this._compileHandlebarsTemplate, { weak: true }); // eslint-disable-line @typescript-eslint/unbound-method
|
|
26
|
+
}
|
|
14
27
|
canHandleType(type) {
|
|
15
28
|
return type == 'handlebars';
|
|
16
29
|
}
|
|
17
|
-
async
|
|
18
|
-
const renderer =
|
|
30
|
+
async _render(renderObject, context) {
|
|
31
|
+
const renderer = await this.compileHandlebarsTemplate(renderObject);
|
|
19
32
|
return renderer(context);
|
|
20
33
|
}
|
|
34
|
+
async _compileHandlebarsTemplate(renderObject) {
|
|
35
|
+
const { template, options = {} } = renderObject;
|
|
36
|
+
const allHelpers = getAllPartialHelpersDeep(renderObject);
|
|
37
|
+
const renderer = handlebars.compile(template, {
|
|
38
|
+
strict: options.strict ?? true,
|
|
39
|
+
preventIndent: options.preventIndent,
|
|
40
|
+
knownHelpers: (0, type_guards_1.isDefined)(allHelpers) ? (0, object_1.mapObjectValues)(allHelpers, () => true) : undefined,
|
|
41
|
+
knownHelpersOnly: true
|
|
42
|
+
});
|
|
43
|
+
const wrappedHelpers = (0, type_guards_1.isDefined)(allHelpers) ? (0, object_1.mapObjectValues)(allHelpers, wrapHandlebarsTemplateHelper) : undefined;
|
|
44
|
+
const normalizedPartials = (0, type_guards_1.isDefined)(options.partials) ? await (0, object_1.mapObjectValuesAsync)(options.partials, async (partial) => this.normalizePartial(partial)) : undefined;
|
|
45
|
+
return (context, runtimeOptions) => renderer(context, { helpers: wrappedHelpers, partials: normalizedPartials, ...runtimeOptions });
|
|
46
|
+
}
|
|
47
|
+
async normalizePartial(partial) {
|
|
48
|
+
if ((0, type_guards_1.isString)(partial) || (0, type_guards_1.isFunction)(partial)) {
|
|
49
|
+
return partial;
|
|
50
|
+
}
|
|
51
|
+
const resolver = this.templateResolverProvider.get(partial.resolver);
|
|
52
|
+
return resolver.resolve(partial);
|
|
53
|
+
}
|
|
21
54
|
};
|
|
22
55
|
HandlebarsTemplateRenderer = __decorate([
|
|
23
|
-
(0, container_1.singleton)()
|
|
56
|
+
(0, container_1.singleton)(),
|
|
57
|
+
__metadata("design:paramtypes", [template_resolver_provider_1.TemplateResolverProvider])
|
|
24
58
|
], HandlebarsTemplateRenderer);
|
|
25
59
|
exports.HandlebarsTemplateRenderer = HandlebarsTemplateRenderer;
|
|
60
|
+
function _wrapHandlebarsTemplateHelper(helper) {
|
|
61
|
+
const wrapperName = `wrapped${helper.name.slice(0, 1).toUpperCase()}${helper.name.slice(1)}`;
|
|
62
|
+
const wrapper = {
|
|
63
|
+
[wrapperName](context, ...argsAndOptions) {
|
|
64
|
+
const args = argsAndOptions.slice(0, -1);
|
|
65
|
+
const options = argsAndOptions[argsAndOptions.length - 1];
|
|
66
|
+
return helper(context, args, options);
|
|
67
|
+
}
|
|
68
|
+
}[wrapperName];
|
|
69
|
+
return wrapper;
|
|
70
|
+
}
|
|
71
|
+
function getAllPartialHelpersDeep(field) {
|
|
72
|
+
const allHelpers = getPartialHelpersDeep(field);
|
|
73
|
+
const helpers = {};
|
|
74
|
+
if (allHelpers.length == 0) {
|
|
75
|
+
return undefined;
|
|
76
|
+
}
|
|
77
|
+
for (const [key, helper] of allHelpers) {
|
|
78
|
+
if ((0, object_1.hasOwnProperty)(helpers, key) && helpers[key] != helper) {
|
|
79
|
+
throw new Error(`Template and partials reference different versions of helper "${key}".`);
|
|
80
|
+
}
|
|
81
|
+
helpers[key] = helper;
|
|
82
|
+
}
|
|
83
|
+
return helpers;
|
|
84
|
+
}
|
|
85
|
+
function getPartialHelpersDeep(partial) {
|
|
86
|
+
if ((0, type_guards_1.isString)(partial) || (0, type_guards_1.isFunction)(partial)) {
|
|
87
|
+
return [];
|
|
88
|
+
}
|
|
89
|
+
const entries = Object.entries(partial.options?.helpers ?? {});
|
|
90
|
+
const childEntries = Object.values(partial.options?.partials ?? {}).flatMap(getPartialHelpersDeep);
|
|
91
|
+
return [...entries, ...childEntries];
|
|
92
|
+
}
|
|
26
93
|
//# sourceMappingURL=handlebars.template-renderer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlebars.template-renderer.js","sourceRoot":"","sources":["../../../source/templates/renderers/handlebars.template-renderer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"handlebars.template-renderer.js","sourceRoot":"","sources":["../../../source/templates/renderers/handlebars.template-renderer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import type { MJMLParsingOptions } from 'mjml-core';
|
|
2
2
|
import { TemplateRendererProvider } from '../template-renderer.provider';
|
|
3
|
-
import type {
|
|
4
|
-
import type { TemplateRenderResult } from '../template.renderer';
|
|
3
|
+
import type { TemplateRenderObject, TemplateRenderResult } from '../template.renderer';
|
|
5
4
|
import { TemplateRenderer } from '../template.renderer';
|
|
6
|
-
export declare type
|
|
5
|
+
export declare type MjmlRendererOptions = Pick<MJMLParsingOptions, 'fonts' | 'keepComments' | 'validationLevel'> & {
|
|
7
6
|
preprocessorOptions?: any;
|
|
8
7
|
};
|
|
9
|
-
export declare type
|
|
10
|
-
export declare
|
|
8
|
+
export declare type MjmlRendererString = 'mjml' | `mjml-${string}`;
|
|
9
|
+
export declare type MjmlTemplateRenderObject = TemplateRenderObject<MjmlRendererString, MjmlRendererOptions>;
|
|
10
|
+
export declare class MjmlTemplateRenderer extends TemplateRenderer<MjmlRendererString, MjmlRendererOptions> {
|
|
11
11
|
private readonly rendererProvider;
|
|
12
12
|
constructor(rendererProvider: TemplateRendererProvider);
|
|
13
13
|
canHandleType(type: string): boolean;
|
|
14
|
-
|
|
14
|
+
_render({ renderer, template, options }: MjmlTemplateRenderObject, context?: object): Promise<TemplateRenderResult>;
|
|
15
15
|
}
|
|
@@ -33,19 +33,18 @@ let MjmlTemplateRenderer = class MjmlTemplateRenderer extends template_renderer_
|
|
|
33
33
|
const parent = type.slice(5);
|
|
34
34
|
return this.rendererProvider.has(parent);
|
|
35
35
|
}
|
|
36
|
-
async
|
|
37
|
-
if (
|
|
38
|
-
const parent =
|
|
39
|
-
const
|
|
40
|
-
const result = await
|
|
36
|
+
async _render({ renderer, template, options }, context) {
|
|
37
|
+
if (renderer.length > 4) {
|
|
38
|
+
const parent = renderer.slice(5);
|
|
39
|
+
const parentRenderer = this.rendererProvider.get(parent);
|
|
40
|
+
const result = await parentRenderer.render({ template, renderer: parent, options: options?.preprocessorOptions }, context);
|
|
41
41
|
const preprocessedTemplate = {
|
|
42
|
-
|
|
43
|
-
type: 'mjml',
|
|
42
|
+
renderer: 'mjml',
|
|
44
43
|
template: result
|
|
45
44
|
};
|
|
46
|
-
return this.
|
|
45
|
+
return this._render(preprocessedTemplate);
|
|
47
46
|
}
|
|
48
|
-
return mjml2html(template
|
|
47
|
+
return mjml2html(template).html;
|
|
49
48
|
}
|
|
50
49
|
};
|
|
51
50
|
MjmlTemplateRenderer = __decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mjml.template-renderer.js","sourceRoot":"","sources":["../../../source/templates/renderers/mjml.template-renderer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,+CAAoD;AACpD,8CAA8C;AAC9C,kCAAkC;AAElC,8EAAyE;
|
|
1
|
+
{"version":3,"file":"mjml.template-renderer.js","sourceRoot":"","sources":["../../../source/templates/renderers/mjml.template-renderer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,+CAAoD;AACpD,8CAA8C;AAC9C,kCAAkC;AAElC,8EAAyE;AAEzE,4DAAwD;AAWjD,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,oCAAyD;IAGjG,YAAwD,gBAA0C;QAChG,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;IAED,aAAa,CAAC,IAAY;QACxB,IAAI,IAAI,IAAI,MAAM,EAAE;YAClB,OAAO,IAAI,CAAC;SACb;QAED,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;YAC7B,OAAO,KAAK,CAAC;SACd;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAA4B,EAAE,OAAgB;QACvF,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YACvB,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACjC,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAEzD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,mBAAmB,EAAE,EAAE,OAAO,CAAC,CAAC;YAE3H,MAAM,oBAAoB,GAA6B;gBACrD,QAAQ,EAAE,MAAM;gBAChB,QAAQ,EAAE,MAAM;aACjB,CAAC;YAEF,OAAO,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;SAC3C;QAED,OAAO,SAAS,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC;IAClC,CAAC;CACF,CAAA;AAvCY,oBAAoB;IADhC,IAAA,qBAAS,GAAE;IAIG,WAAA,IAAA,sBAAU,EAAC,GAAG,EAAE,CAAC,qDAAwB,CAAC,CAAA;qCAAmB,qDAAwB;GAHvF,oBAAoB,CAuChC;AAvCY,oDAAoB"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { TemplateRenderObject, TemplateRenderResult } from '../template.renderer';
|
|
2
|
+
import { TemplateRenderer } from '../template.renderer';
|
|
3
|
+
export declare type StringTemplateRenderObject = TemplateRenderObject<'string', undefined>;
|
|
4
|
+
export declare class StringTemplateRenderer extends TemplateRenderer<'string', undefined> {
|
|
5
|
+
constructor();
|
|
6
|
+
canHandleType(type: string): boolean;
|
|
7
|
+
_render({ template }: StringTemplateRenderObject, _context?: object): Promise<TemplateRenderResult>;
|
|
8
|
+
}
|
|
@@ -9,17 +9,23 @@ 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
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.
|
|
12
|
+
exports.StringTemplateRenderer = void 0;
|
|
13
13
|
const container_1 = require("../../container");
|
|
14
|
-
const
|
|
15
|
-
let
|
|
14
|
+
const template_renderer_1 = require("../template.renderer");
|
|
15
|
+
let StringTemplateRenderer = class StringTemplateRenderer extends template_renderer_1.TemplateRenderer {
|
|
16
16
|
constructor() {
|
|
17
17
|
super();
|
|
18
18
|
}
|
|
19
|
+
canHandleType(type) {
|
|
20
|
+
return (type == 'string');
|
|
21
|
+
}
|
|
22
|
+
async _render({ template }, _context) {
|
|
23
|
+
return template;
|
|
24
|
+
}
|
|
19
25
|
};
|
|
20
|
-
|
|
26
|
+
StringTemplateRenderer = __decorate([
|
|
21
27
|
(0, container_1.singleton)(),
|
|
22
28
|
__metadata("design:paramtypes", [])
|
|
23
|
-
],
|
|
24
|
-
exports.
|
|
25
|
-
//# sourceMappingURL=
|
|
29
|
+
], StringTemplateRenderer);
|
|
30
|
+
exports.StringTemplateRenderer = StringTemplateRenderer;
|
|
31
|
+
//# sourceMappingURL=string.template-renderer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"string.template-renderer.js","sourceRoot":"","sources":["../../../source/templates/renderers/string.template-renderer.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAAwC;AAExC,4DAAwD;AAKjD,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,oCAAqC;IAC/E;QACE,KAAK,EAAE,CAAC;IACV,CAAC;IAED,aAAa,CAAC,IAAY;QACxB,OAAO,CAAC,IAAI,IAAI,QAAQ,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,EAAE,QAAQ,EAA8B,EAAE,QAAiB;QACvE,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF,CAAA;AAZY,sBAAsB;IADlC,IAAA,qBAAS,GAAE;;GACC,sBAAsB,CAYlC;AAZY,wDAAsB"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { Injectable } from "../../container";
|
|
2
|
+
import { resolveArgumentType } from "../../container";
|
|
3
|
+
import { TypedOmit } from "../../types";
|
|
4
|
+
import { TemplateField } from '../template.model';
|
|
5
|
+
import { TemplateRenderer, TemplateRendererOptions, TemplateRendererString } from '../template.renderer';
|
|
6
|
+
import { TemplateResolver } from '../template.resolver';
|
|
7
|
+
export declare type FileTemplateProviderConfig = {
|
|
8
|
+
basePath?: string;
|
|
9
|
+
};
|
|
10
|
+
export declare type FileTemplateProviderArgument = string;
|
|
11
|
+
export declare const fileTemplateProviderConfig: FileTemplateProviderConfig;
|
|
12
|
+
export declare class FileTemplateField<Renderer extends string = string, Options = any> extends TemplateField<'file', Renderer, Options> {
|
|
13
|
+
templateFile: string;
|
|
14
|
+
}
|
|
15
|
+
export declare class FileTemplateResolver extends TemplateResolver<FileTemplateField> implements Injectable<FileTemplateProviderArgument> {
|
|
16
|
+
private readonly basePath;
|
|
17
|
+
readonly [resolveArgumentType]: FileTemplateProviderArgument;
|
|
18
|
+
constructor(basePath: string);
|
|
19
|
+
canHandle(resolver: string): boolean;
|
|
20
|
+
resolve(field: FileTemplateField): Promise<string>;
|
|
21
|
+
}
|
|
22
|
+
export declare function fileTemplateField<Renderer extends TemplateRenderer>(field: TypedOmit<FileTemplateField<Renderer[TemplateRendererString], Renderer[TemplateRendererOptions]>, 'resolver'>): FileTemplateField<Renderer[TemplateRendererString], Renderer[TemplateRendererOptions]>;
|
|
23
|
+
export declare function configureFileTemplateResolver(config?: Partial<FileTemplateProviderConfig>): void;
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.configureFileTemplateResolver = exports.fileTemplateField = exports.FileTemplateResolver = exports.FileTemplateField = exports.fileTemplateProviderConfig = void 0;
|
|
16
|
+
const container_1 = require("../../container");
|
|
17
|
+
const bad_request_error_1 = require("../../error/bad-request.error");
|
|
18
|
+
const schema_1 = require("../../schema");
|
|
19
|
+
const fs = require("fs/promises");
|
|
20
|
+
const path = require("path");
|
|
21
|
+
const template_model_1 = require("../template.model");
|
|
22
|
+
const template_resolver_1 = require("../template.resolver");
|
|
23
|
+
exports.fileTemplateProviderConfig = {};
|
|
24
|
+
class FileTemplateField extends template_model_1.TemplateField {
|
|
25
|
+
}
|
|
26
|
+
__decorate([
|
|
27
|
+
(0, schema_1.Property)(),
|
|
28
|
+
__metadata("design:type", String)
|
|
29
|
+
], FileTemplateField.prototype, "templateFile", void 0);
|
|
30
|
+
exports.FileTemplateField = FileTemplateField;
|
|
31
|
+
let FileTemplateResolver = class FileTemplateResolver extends template_resolver_1.TemplateResolver {
|
|
32
|
+
constructor(basePath) {
|
|
33
|
+
super();
|
|
34
|
+
this.basePath = path.resolve(basePath);
|
|
35
|
+
}
|
|
36
|
+
canHandle(resolver) {
|
|
37
|
+
return (resolver == 'file');
|
|
38
|
+
}
|
|
39
|
+
async resolve(field) {
|
|
40
|
+
const filePath = path.resolve(this.basePath, field.templateFile);
|
|
41
|
+
if (!filePath.startsWith(this.basePath)) {
|
|
42
|
+
throw new bad_request_error_1.BadRequestError(`Illegal file path. Must be inside "${this.basePath}".`);
|
|
43
|
+
}
|
|
44
|
+
return fs.readFile(filePath, { encoding: 'utf8' });
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
FileTemplateResolver = __decorate([
|
|
48
|
+
(0, container_1.singleton)({
|
|
49
|
+
defaultArgumentProvider: () => exports.fileTemplateProviderConfig.basePath
|
|
50
|
+
}),
|
|
51
|
+
__param(0, (0, container_1.injectArg)()),
|
|
52
|
+
__metadata("design:paramtypes", [String])
|
|
53
|
+
], FileTemplateResolver);
|
|
54
|
+
exports.FileTemplateResolver = FileTemplateResolver;
|
|
55
|
+
function fileTemplateField(field) {
|
|
56
|
+
return { resolver: 'file', ...field };
|
|
57
|
+
}
|
|
58
|
+
exports.fileTemplateField = fileTemplateField;
|
|
59
|
+
function configureFileTemplateResolver(config = {}) {
|
|
60
|
+
exports.fileTemplateProviderConfig.basePath = config.basePath ?? exports.fileTemplateProviderConfig.basePath;
|
|
61
|
+
}
|
|
62
|
+
exports.configureFileTemplateResolver = configureFileTemplateResolver;
|
|
63
|
+
//# sourceMappingURL=file.template-resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file.template-resolver.js","sourceRoot":"","sources":["../../../source/templates/resolvers/file.template-resolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,+CAAwE;AACxE,qEAA4D;AAC5D,yCAAoC;AAEpC,kCAAkC;AAClC,6BAA6B;AAC7B,sDAAkD;AAElD,4DAAwD;AAQ3C,QAAA,0BAA0B,GAA+B,EAAE,CAAC;AAEzE,MAAa,iBAAmE,SAAQ,8BAAwC;CAG/H;AAFC;IAAC,IAAA,iBAAQ,GAAE;;uDACU;AAFvB,8CAGC;AAKM,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,oCAAmC;IAI3E,YAAyB,QAAgB;QACvC,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED,SAAS,CAAC,QAAgB;QACxB,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAAwB;QACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;QAEjE,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YACvC,MAAM,IAAI,mCAAe,CAAC,sCAAsC,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC;SACpF;QAED,OAAO,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IACrD,CAAC;CACF,CAAA;AAvBY,oBAAoB;IAHhC,IAAA,qBAAS,EAAC;QACT,uBAAuB,EAAE,GAAG,EAAE,CAAC,kCAA0B,CAAC,QAAQ;KACnE,CAAC;IAKa,WAAA,IAAA,qBAAS,GAAE,CAAA;;GAJb,oBAAoB,CAuBhC;AAvBY,oDAAoB;AAyBjC,SAAgB,iBAAiB,CAAoC,KAAoH;IACvL,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;AACxC,CAAC;AAFD,8CAEC;AAED,SAAgB,6BAA6B,CAAC,SAA8C,EAAE;IAC5F,kCAA0B,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,kCAA0B,CAAC,QAAQ,CAAC;AAC/F,CAAC;AAFD,sEAEC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { TypedOmit } from "../../types";
|
|
2
|
+
import { TemplateField } from '../template.model';
|
|
3
|
+
import type { TemplateRenderer, TemplateRendererOptions, TemplateRendererString } from '../template.renderer';
|
|
4
|
+
import { TemplateResolver } from '../template.resolver';
|
|
5
|
+
export declare class StringTemplateField<Renderer extends string = string, Options = any> extends TemplateField<'string', Renderer, Options> {
|
|
6
|
+
template: string;
|
|
7
|
+
}
|
|
8
|
+
export declare class StringTemplateResolver extends TemplateResolver<StringTemplateField> {
|
|
9
|
+
constructor();
|
|
10
|
+
canHandle(resolver: string): boolean;
|
|
11
|
+
resolve(field: StringTemplateField): Promise<string>;
|
|
12
|
+
}
|
|
13
|
+
export declare function stringTemplateField<Renderer extends TemplateRenderer>(field: TypedOmit<StringTemplateField<Renderer[TemplateRendererString], Renderer[TemplateRendererOptions]>, 'resolver'>): StringTemplateField<Renderer[TemplateRendererString], Renderer[TemplateRendererOptions]>;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.stringTemplateField = exports.StringTemplateResolver = exports.StringTemplateField = void 0;
|
|
13
|
+
const container_1 = require("../../container");
|
|
14
|
+
const schema_1 = require("../../schema");
|
|
15
|
+
const template_model_1 = require("../template.model");
|
|
16
|
+
const template_resolver_1 = require("../template.resolver");
|
|
17
|
+
class StringTemplateField extends template_model_1.TemplateField {
|
|
18
|
+
}
|
|
19
|
+
__decorate([
|
|
20
|
+
(0, schema_1.Property)(),
|
|
21
|
+
__metadata("design:type", String)
|
|
22
|
+
], StringTemplateField.prototype, "template", void 0);
|
|
23
|
+
exports.StringTemplateField = StringTemplateField;
|
|
24
|
+
let StringTemplateResolver = class StringTemplateResolver extends template_resolver_1.TemplateResolver {
|
|
25
|
+
constructor() {
|
|
26
|
+
super();
|
|
27
|
+
}
|
|
28
|
+
canHandle(resolver) {
|
|
29
|
+
return (resolver == 'string');
|
|
30
|
+
}
|
|
31
|
+
async resolve(field) {
|
|
32
|
+
return field.template;
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
StringTemplateResolver = __decorate([
|
|
36
|
+
(0, container_1.singleton)(),
|
|
37
|
+
__metadata("design:paramtypes", [])
|
|
38
|
+
], StringTemplateResolver);
|
|
39
|
+
exports.StringTemplateResolver = StringTemplateResolver;
|
|
40
|
+
function stringTemplateField(field) {
|
|
41
|
+
return { resolver: 'string', ...field };
|
|
42
|
+
}
|
|
43
|
+
exports.stringTemplateField = stringTemplateField;
|
|
44
|
+
//# sourceMappingURL=string.template-resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"string.template-resolver.js","sourceRoot":"","sources":["../../../source/templates/resolvers/string.template-resolver.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+CAAwC;AACxC,yCAAoC;AAEpC,sDAAkD;AAElD,4DAAwD;AAGxD,MAAa,mBAAqE,SAAQ,8BAA0C;CAGnI;AAFC;IAAC,IAAA,iBAAQ,GAAE;;qDACM;AAFnB,kDAGC;AAGM,IAAM,sBAAsB,GAA5B,MAAM,sBAAuB,SAAQ,oCAAqC;IAC/E;QACE,KAAK,EAAE,CAAC;IACV,CAAC;IAED,SAAS,CAAC,QAAgB;QACxB,OAAO,CAAC,QAAQ,IAAI,QAAQ,CAAC,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,KAA0B;QACtC,OAAO,KAAK,CAAC,QAAQ,CAAC;IACxB,CAAC;CACF,CAAA;AAZY,sBAAsB;IADlC,IAAA,qBAAS,GAAE;;GACC,sBAAsB,CAYlC;AAZY,wDAAsB;AAcnC,SAAgB,mBAAmB,CAAoC,KAAsH;IAC3L,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,CAAC;AAC1C,CAAC;AAFD,kDAEC"}
|
|
@@ -8,12 +8,14 @@ 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
|
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
13
|
+
};
|
|
12
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
15
|
exports.TemplateRendererProvider = void 0;
|
|
14
16
|
const container_1 = require("../container");
|
|
15
17
|
const tokens_1 = require("./tokens");
|
|
16
|
-
let TemplateRendererProvider =
|
|
18
|
+
let TemplateRendererProvider = class TemplateRendererProvider {
|
|
17
19
|
constructor(renderers) {
|
|
18
20
|
this.renderers = new Set(renderers);
|
|
19
21
|
}
|
|
@@ -37,23 +39,9 @@ let TemplateRendererProvider = TemplateRendererProvider_1 = class TemplateRender
|
|
|
37
39
|
throw new Error(`No renderer for ${type} registered.`);
|
|
38
40
|
}
|
|
39
41
|
};
|
|
40
|
-
TemplateRendererProvider =
|
|
41
|
-
(0, container_1.singleton)(
|
|
42
|
-
|
|
43
|
-
useFactory: (_, context) => {
|
|
44
|
-
if (context.isAsync) {
|
|
45
|
-
return (async () => {
|
|
46
|
-
const types = await context.resolveAsync(tokens_1.TEMPLATE_RENDERERS);
|
|
47
|
-
const renderers = await Promise.all(types.map(async (type) => context.resolveAsync(type)));
|
|
48
|
-
return new TemplateRendererProvider_1(renderers);
|
|
49
|
-
})();
|
|
50
|
-
}
|
|
51
|
-
const types = context.resolve(tokens_1.TEMPLATE_RENDERERS);
|
|
52
|
-
const renderers = types.map((type) => context.resolve(type));
|
|
53
|
-
return new TemplateRendererProvider_1(renderers);
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
}),
|
|
42
|
+
TemplateRendererProvider = __decorate([
|
|
43
|
+
(0, container_1.singleton)(),
|
|
44
|
+
__param(0, (0, container_1.inject)(tokens_1.TEMPLATE_RENDERERS)),
|
|
57
45
|
__metadata("design:paramtypes", [Array])
|
|
58
46
|
], TemplateRendererProvider);
|
|
59
47
|
exports.TemplateRendererProvider = TemplateRendererProvider;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"template-renderer.provider.js","sourceRoot":"","sources":["../../source/templates/template-renderer.provider.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"template-renderer.provider.js","sourceRoot":"","sources":["../../source/templates/template-renderer.provider.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4CAAgD;AAEhD,qCAA8C;AAGvC,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IAGnC,YAAwC,SAA6B;QACnE,IAAI,CAAC,SAAS,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC;IAED,QAAQ,CAAC,QAA0B;QACjC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IAED,GAAG,CAAC,IAAY;QACd,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE;YACrC,IAAI,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE;gBAChC,OAAO,IAAI,CAAC;aACb;SACF;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,GAAG,CAAC,IAAY;QACd,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE;YACrC,IAAI,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE;gBAChC,OAAO,QAAQ,CAAC;aACjB;SACF;QAED,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,cAAc,CAAC,CAAC;IACzD,CAAC;CACF,CAAA;AA9BY,wBAAwB;IADpC,IAAA,qBAAS,GAAE;IAIG,WAAA,IAAA,kBAAM,EAAC,2BAAkB,CAAC,CAAA;;GAH5B,wBAAwB,CA8BpC;AA9BY,4DAAwB"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { TemplateResolver } from './template.resolver';
|
|
2
|
+
export declare class TemplateResolverProvider {
|
|
3
|
+
private readonly resolvers;
|
|
4
|
+
constructor(resolvers: TemplateResolver[]);
|
|
5
|
+
register(renderer: TemplateResolver): void;
|
|
6
|
+
has(type: string): boolean;
|
|
7
|
+
get(type: string): TemplateResolver;
|
|
8
|
+
}
|