@warlock.js/core 4.0.48 → 4.0.59
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/esm/application.d.ts +27 -0
- package/esm/application.d.ts.map +1 -0
- package/esm/bootstrap/setup.d.ts +2 -0
- package/esm/bootstrap/setup.d.ts.map +1 -0
- package/esm/bootstrap/setup.js +14 -0
- package/esm/bootstrap/setup.js.map +1 -0
- package/esm/bootstrap.d.ts +2 -0
- package/esm/bootstrap.d.ts.map +1 -0
- package/esm/bootstrap.js +5 -0
- package/esm/bootstrap.js.map +1 -0
- package/esm/cache/database-cache-driver.d.ts +56 -0
- package/esm/cache/database-cache-driver.d.ts.map +1 -0
- package/esm/cache/database-cache-driver.js +112 -0
- package/esm/cache/database-cache-driver.js.map +1 -0
- package/esm/cache/index.d.ts +3 -0
- package/esm/cache/index.d.ts.map +1 -0
- package/esm/cache/index.js +1 -0
- package/esm/cache/index.js.map +1 -0
- package/esm/cli/cli-command.d.ts +115 -0
- package/esm/cli/cli-command.d.ts.map +1 -0
- package/esm/cli/cli-command.js +227 -0
- package/esm/cli/cli-command.js.map +1 -0
- package/esm/cli/cli-commands.manager.d.ts +71 -0
- package/esm/cli/cli-commands.manager.d.ts.map +1 -0
- package/esm/cli/cli-commands.manager.js +348 -0
- package/esm/cli/cli-commands.manager.js.map +1 -0
- package/esm/cli/cli-commands.utils.d.ts +73 -0
- package/esm/cli/cli-commands.utils.d.ts.map +1 -0
- package/esm/cli/cli-commands.utils.js +195 -0
- package/esm/cli/cli-commands.utils.js.map +1 -0
- package/esm/cli/commands/add.command.d.ts +2 -0
- package/esm/cli/commands/add.command.d.ts.map +1 -0
- package/esm/cli/commands/add.command.js +15 -0
- package/esm/cli/commands/add.command.js.map +1 -0
- package/esm/cli/commands/build.command.d.ts +2 -0
- package/esm/cli/commands/build.command.d.ts.map +1 -0
- package/esm/cli/commands/build.command.js +8 -0
- package/esm/cli/commands/build.command.js.map +1 -0
- package/esm/cli/commands/dev-server.command.d.ts +2 -0
- package/esm/cli/commands/dev-server.command.d.ts.map +1 -0
- package/esm/cli/commands/dev-server.command.js +16 -0
- package/esm/cli/commands/dev-server.command.js.map +1 -0
- package/esm/cli/commands/migrate.command.d.ts +2 -0
- package/esm/cli/commands/migrate.command.d.ts.map +1 -0
- package/esm/cli/commands/migrate.command.js +37 -0
- package/esm/cli/commands/migrate.command.js.map +1 -0
- package/esm/cli/commands/seed.command.d.ts +2 -0
- package/esm/cli/commands/seed.command.d.ts.map +1 -0
- package/esm/cli/commands/seed.command.js +17 -0
- package/esm/cli/commands/seed.command.js.map +1 -0
- package/esm/cli/commands/start-production.command.d.ts +2 -0
- package/esm/cli/commands/start-production.command.d.ts.map +1 -0
- package/esm/cli/commands/start-production.command.js +65 -0
- package/esm/cli/commands/start-production.command.js.map +1 -0
- package/esm/cli/commands/typings-generator.command.d.ts +2 -0
- package/esm/cli/commands/typings-generator.command.d.ts.map +1 -0
- package/esm/cli/commands/typings-generator.command.js +37 -0
- package/esm/cli/commands/typings-generator.command.js.map +1 -0
- package/esm/cli/commands-loader.d.ts +18 -0
- package/esm/cli/commands-loader.d.ts.map +1 -0
- package/esm/cli/commands-loader.js +45 -0
- package/esm/cli/commands-loader.js.map +1 -0
- package/esm/cli/framework-cli-commands.d.ts +2 -0
- package/esm/cli/framework-cli-commands.d.ts.map +1 -0
- package/esm/cli/framework-cli-commands.js +11 -0
- package/esm/cli/framework-cli-commands.js.map +1 -0
- package/esm/cli/index.d.ts +3 -0
- package/esm/cli/index.d.ts.map +1 -0
- package/esm/cli/index.js +1 -4
- package/esm/cli/index.js.map +1 -1
- package/esm/cli/parse-cli-args.d.ts +18 -0
- package/esm/cli/parse-cli-args.d.ts.map +1 -0
- package/esm/cli/parse-cli-args.js +82 -0
- package/esm/cli/parse-cli-args.js.map +1 -0
- package/esm/cli/start.d.ts +2 -0
- package/esm/cli/start.d.ts.map +1 -0
- package/esm/cli/start.js +2 -6
- package/esm/cli/start.js.map +1 -1
- package/esm/cli/string-similarity.d.ts +44 -0
- package/esm/cli/string-similarity.d.ts.map +1 -0
- package/esm/cli/string-similarity.js +57 -0
- package/esm/cli/string-similarity.js.map +1 -0
- package/esm/cli/types.d.ts +206 -0
- package/esm/cli/types.d.ts.map +1 -0
- package/esm/config/config-getter.d.ts +35 -0
- package/esm/config/config-getter.d.ts.map +1 -0
- package/esm/config/config-getter.js +21 -0
- package/esm/config/config-getter.js.map +1 -0
- package/esm/config/config-handlers.d.ts +19 -0
- package/esm/config/config-handlers.d.ts.map +1 -0
- package/esm/config/config-handlers.js +47 -0
- package/esm/config/config-handlers.js.map +1 -0
- package/esm/config/config-loader.d.ts +37 -0
- package/esm/config/config-loader.d.ts.map +1 -0
- package/esm/config/config-loader.js +85 -0
- package/esm/config/config-loader.js.map +1 -0
- package/esm/config/config-manager.d.ts +22 -0
- package/esm/config/config-manager.d.ts.map +1 -0
- package/esm/config/config-manager.js +25 -0
- package/esm/config/config-manager.js.map +1 -0
- package/esm/config/config-special-handlers.d.ts +17 -0
- package/esm/config/config-special-handlers.d.ts.map +1 -0
- package/esm/config/config-special-handlers.js +23 -0
- package/esm/config/config-special-handlers.js.map +1 -0
- package/esm/config/index.d.ts +5 -0
- package/esm/config/index.d.ts.map +1 -0
- package/esm/config/load-config-files.d.ts +6 -0
- package/esm/config/load-config-files.d.ts.map +1 -0
- package/esm/config/load-config-files.js +19 -0
- package/esm/config/load-config-files.js.map +1 -0
- package/esm/config/types.d.ts +52 -0
- package/esm/config/types.d.ts.map +1 -0
- package/esm/database/index.d.ts +4 -0
- package/esm/database/index.d.ts.map +1 -0
- package/esm/database/migrate-action.d.ts +8 -0
- package/esm/database/migrate-action.d.ts.map +1 -0
- package/esm/database/migrate-action.js +95 -0
- package/esm/database/migrate-action.js.map +1 -0
- package/esm/database/models/database-log/database-log.d.ts +16 -0
- package/esm/database/models/database-log/database-log.d.ts.map +1 -0
- package/esm/database/models/database-log/database-log.js +17 -0
- package/esm/database/models/database-log/database-log.js.map +1 -0
- package/esm/database/models/database-log/index.d.ts +2 -0
- package/esm/database/models/database-log/index.d.ts.map +1 -0
- package/esm/database/seed-command-action.d.ts +3 -0
- package/esm/database/seed-command-action.d.ts.map +1 -0
- package/esm/database/seed-command-action.js +36 -0
- package/esm/database/seed-command-action.js.map +1 -0
- package/esm/database/seeds/index.d.ts +3 -0
- package/esm/database/seeds/index.d.ts.map +1 -0
- package/esm/database/seeds/seeder.d.ts +36 -0
- package/esm/database/seeds/seeder.d.ts.map +1 -0
- package/esm/database/seeds/seeder.js +6 -0
- package/esm/database/seeds/seeder.js.map +1 -0
- package/esm/database/seeds/seeders.manager.d.ts +47 -0
- package/esm/database/seeds/seeders.manager.d.ts.map +1 -0
- package/esm/database/seeds/seeders.manager.js +137 -0
- package/esm/database/seeds/seeders.manager.js.map +1 -0
- package/esm/database/seeds/seeds-table-migration.d.ts +8 -0
- package/esm/database/seeds/seeds-table-migration.d.ts.map +1 -0
- package/esm/database/seeds/seeds-table-migration.js +18 -0
- package/esm/database/seeds/seeds-table-migration.js.map +1 -0
- package/esm/database/seeds/types.d.ts +13 -0
- package/esm/database/seeds/types.d.ts.map +1 -0
- package/esm/database/seeds/utils.d.ts +2 -0
- package/esm/database/seeds/utils.d.ts.map +1 -0
- package/esm/database/seeds/utils.js +1 -0
- package/esm/database/seeds/utils.js.map +1 -0
- package/esm/database/utils.d.ts +18 -0
- package/esm/database/utils.d.ts.map +1 -0
- package/esm/database/utils.js +30 -0
- package/esm/database/utils.js.map +1 -0
- package/esm/dev2-server/connectors/base-connector.d.ts +49 -0
- package/esm/dev2-server/connectors/base-connector.d.ts.map +1 -0
- package/esm/dev2-server/connectors/base-connector.js +48 -0
- package/esm/dev2-server/connectors/base-connector.js.map +1 -0
- package/esm/dev2-server/connectors/cache-connector.d.ts +23 -0
- package/esm/dev2-server/connectors/cache-connector.d.ts.map +1 -0
- package/esm/dev2-server/connectors/cache-connector.js +35 -0
- package/esm/dev2-server/connectors/cache-connector.js.map +1 -0
- package/esm/dev2-server/connectors/connectors-manager.d.ts +38 -0
- package/esm/dev2-server/connectors/connectors-manager.d.ts.map +1 -0
- package/esm/dev2-server/connectors/connectors-manager.js +81 -0
- package/esm/dev2-server/connectors/connectors-manager.js.map +1 -0
- package/esm/dev2-server/connectors/database-connector.d.ts +23 -0
- package/esm/dev2-server/connectors/database-connector.d.ts.map +1 -0
- package/esm/dev2-server/connectors/database-connector.js +51 -0
- package/esm/dev2-server/connectors/database-connector.js.map +1 -0
- package/esm/dev2-server/connectors/http-connector.d.ts +29 -0
- package/esm/dev2-server/connectors/http-connector.d.ts.map +1 -0
- package/esm/dev2-server/connectors/http-connector.js +69 -0
- package/esm/dev2-server/connectors/http-connector.js.map +1 -0
- package/esm/dev2-server/connectors/index.d.ts +12 -0
- package/esm/dev2-server/connectors/index.d.ts.map +1 -0
- package/esm/dev2-server/connectors/storage.connector.d.ts +23 -0
- package/esm/dev2-server/connectors/storage.connector.d.ts.map +1 -0
- package/esm/dev2-server/connectors/storage.connector.js +29 -0
- package/esm/dev2-server/connectors/storage.connector.js.map +1 -0
- package/esm/dev2-server/connectors/types.d.ts +51 -0
- package/esm/dev2-server/connectors/types.d.ts.map +1 -0
- package/esm/dev2-server/connectors/types.js +10 -0
- package/esm/dev2-server/connectors/types.js.map +1 -0
- package/esm/dev2-server/create-worker.d.ts +34 -0
- package/esm/dev2-server/create-worker.d.ts.map +1 -0
- package/esm/dev2-server/create-worker.js +37 -0
- package/esm/dev2-server/create-worker.js.map +1 -0
- package/esm/dev2-server/dependency-graph.d.ts +93 -0
- package/esm/dev2-server/dependency-graph.d.ts.map +1 -0
- package/esm/dev2-server/dependency-graph.js +266 -0
- package/esm/dev2-server/dependency-graph.js.map +1 -0
- package/esm/dev2-server/dev-logger.d.ts +14 -0
- package/esm/dev2-server/dev-logger.d.ts.map +1 -0
- package/esm/dev2-server/dev-logger.js +130 -0
- package/esm/dev2-server/dev-logger.js.map +1 -0
- package/esm/dev2-server/development-server.d.ts +47 -0
- package/esm/dev2-server/development-server.d.ts.map +1 -0
- package/esm/dev2-server/development-server.js +149 -0
- package/esm/dev2-server/development-server.js.map +1 -0
- package/esm/dev2-server/events.d.ts +5 -0
- package/esm/dev2-server/events.d.ts.map +1 -0
- package/esm/dev2-server/events.js +4 -0
- package/esm/dev2-server/events.js.map +1 -0
- package/esm/dev2-server/export-analyzer.d.ts +84 -0
- package/esm/dev2-server/export-analyzer.d.ts.map +1 -0
- package/esm/dev2-server/export-analyzer.js +206 -0
- package/esm/dev2-server/export-analyzer.js.map +1 -0
- package/esm/dev2-server/file-event-handler.d.ts +156 -0
- package/esm/dev2-server/file-event-handler.d.ts.map +1 -0
- package/esm/dev2-server/file-event-handler.js +300 -0
- package/esm/dev2-server/file-event-handler.js.map +1 -0
- package/esm/dev2-server/file-manager.d.ts +385 -0
- package/esm/dev2-server/file-manager.d.ts.map +1 -0
- package/esm/dev2-server/file-manager.js +580 -0
- package/esm/dev2-server/file-manager.js.map +1 -0
- package/esm/dev2-server/file-operations.d.ts +203 -0
- package/esm/dev2-server/file-operations.d.ts.map +1 -0
- package/esm/dev2-server/file-operations.js +365 -0
- package/esm/dev2-server/file-operations.js.map +1 -0
- package/esm/dev2-server/files-orchestrator.d.ts +146 -0
- package/esm/dev2-server/files-orchestrator.d.ts.map +1 -0
- package/esm/dev2-server/files-orchestrator.js +314 -0
- package/esm/dev2-server/files-orchestrator.js.map +1 -0
- package/esm/dev2-server/files-watcher.d.ts +67 -0
- package/esm/dev2-server/files-watcher.d.ts.map +1 -0
- package/esm/dev2-server/files-watcher.js +95 -0
- package/esm/dev2-server/files-watcher.js.map +1 -0
- package/esm/dev2-server/flags.d.ts +10 -0
- package/esm/dev2-server/flags.d.ts.map +1 -0
- package/esm/dev2-server/flags.js +9 -0
- package/esm/dev2-server/flags.js.map +1 -0
- package/esm/dev2-server/health-checker/checkers/base-health-checker.d.ts +52 -0
- package/esm/dev2-server/health-checker/checkers/base-health-checker.d.ts.map +1 -0
- package/esm/dev2-server/health-checker/checkers/base-health-checker.js +71 -0
- package/esm/dev2-server/health-checker/checkers/base-health-checker.js.map +1 -0
- package/esm/dev2-server/health-checker/checkers/eslint-health-checker.d.ts +40 -0
- package/esm/dev2-server/health-checker/checkers/eslint-health-checker.d.ts.map +1 -0
- package/esm/dev2-server/health-checker/checkers/eslint-health-checker.js +217 -0
- package/esm/dev2-server/health-checker/checkers/eslint-health-checker.js.map +1 -0
- package/esm/dev2-server/health-checker/checkers/typescript-health-checker.d.ts +56 -0
- package/esm/dev2-server/health-checker/checkers/typescript-health-checker.d.ts.map +1 -0
- package/esm/dev2-server/health-checker/checkers/typescript-health-checker.js +279 -0
- package/esm/dev2-server/health-checker/checkers/typescript-health-checker.js.map +1 -0
- package/esm/dev2-server/health-checker/file-health-checker.contract.d.ts +59 -0
- package/esm/dev2-server/health-checker/file-health-checker.contract.d.ts.map +1 -0
- package/esm/dev2-server/health-checker/file-health-result.d.ts +68 -0
- package/esm/dev2-server/health-checker/file-health-result.d.ts.map +1 -0
- package/esm/dev2-server/health-checker/file-health-result.js +40 -0
- package/esm/dev2-server/health-checker/file-health-result.js.map +1 -0
- package/esm/dev2-server/health-checker/files-healthcare.manager.d.ts +115 -0
- package/esm/dev2-server/health-checker/files-healthcare.manager.d.ts.map +1 -0
- package/esm/dev2-server/health-checker/files-healthcare.manager.js +422 -0
- package/esm/dev2-server/health-checker/files-healthcare.manager.js.map +1 -0
- package/esm/dev2-server/health-checker/index.d.ts +6 -0
- package/esm/dev2-server/health-checker/index.d.ts.map +1 -0
- package/esm/dev2-server/health-checker/workers/eslint-health.worker.d.ts +2 -0
- package/esm/dev2-server/health-checker/workers/eslint-health.worker.d.ts.map +1 -0
- package/esm/dev2-server/health-checker/workers/eslint-health.worker.js +214 -0
- package/esm/dev2-server/health-checker/workers/eslint-health.worker.js.map +1 -0
- package/esm/dev2-server/health-checker/workers/ts-health.worker.d.ts +2 -0
- package/esm/dev2-server/health-checker/workers/ts-health.worker.d.ts.map +1 -0
- package/esm/dev2-server/health-checker/workers/ts-health.worker.js +261 -0
- package/esm/dev2-server/health-checker/workers/ts-health.worker.js.map +1 -0
- package/esm/dev2-server/import-transformer.d.ts +17 -0
- package/esm/dev2-server/import-transformer.d.ts.map +1 -0
- package/esm/dev2-server/import-transformer.js +280 -0
- package/esm/dev2-server/import-transformer.js.map +1 -0
- package/esm/dev2-server/index.d.ts +1 -0
- package/esm/dev2-server/index.d.ts.map +1 -0
- package/esm/dev2-server/layer-executor.d.ts +61 -0
- package/esm/dev2-server/layer-executor.d.ts.map +1 -0
- package/esm/dev2-server/layer-executor.js +314 -0
- package/esm/dev2-server/layer-executor.js.map +1 -0
- package/esm/dev2-server/manifest-manager.d.ts +80 -0
- package/esm/dev2-server/manifest-manager.d.ts.map +1 -0
- package/esm/dev2-server/manifest-manager.js +107 -0
- package/esm/dev2-server/manifest-manager.js.map +1 -0
- package/esm/dev2-server/module-loader.d.ts +108 -0
- package/esm/dev2-server/module-loader.d.ts.map +1 -0
- package/esm/dev2-server/module-loader.js +266 -0
- package/esm/dev2-server/module-loader.js.map +1 -0
- package/esm/dev2-server/package-json-manager.d.ts +16 -0
- package/esm/dev2-server/package-json-manager.d.ts.map +1 -0
- package/esm/dev2-server/package-json-manager.js +20 -0
- package/esm/dev2-server/package-json-manager.js.map +1 -0
- package/esm/dev2-server/parse-imports.d.ts +13 -0
- package/esm/dev2-server/parse-imports.d.ts.map +1 -0
- package/esm/dev2-server/parse-imports.js +329 -0
- package/esm/dev2-server/parse-imports.js.map +1 -0
- package/esm/dev2-server/path.d.ts +39 -0
- package/esm/dev2-server/path.d.ts.map +1 -0
- package/esm/dev2-server/path.js +56 -0
- package/esm/dev2-server/path.js.map +1 -0
- package/esm/dev2-server/runtime-import-helper.d.ts +8 -0
- package/esm/dev2-server/runtime-import-helper.d.ts.map +1 -0
- package/esm/dev2-server/runtime-import-helper.js +157 -0
- package/esm/dev2-server/runtime-import-helper.js.map +1 -0
- package/esm/dev2-server/special-files-collector.d.ts +114 -0
- package/esm/dev2-server/special-files-collector.d.ts.map +1 -0
- package/esm/dev2-server/special-files-collector.js +212 -0
- package/esm/dev2-server/special-files-collector.js.map +1 -0
- package/esm/dev2-server/start-development-server.d.ts +7 -0
- package/esm/dev2-server/start-development-server.d.ts.map +1 -0
- package/esm/dev2-server/start-development-server.js +21 -0
- package/esm/dev2-server/start-development-server.js.map +1 -0
- package/esm/dev2-server/transpile-file.d.ts +11 -0
- package/esm/dev2-server/transpile-file.d.ts.map +1 -0
- package/esm/dev2-server/transpile-file.js +21 -0
- package/esm/dev2-server/transpile-file.js.map +1 -0
- package/esm/dev2-server/tsconfig-manager.d.ts +45 -0
- package/esm/dev2-server/tsconfig-manager.d.ts.map +1 -0
- package/esm/dev2-server/tsconfig-manager.js +107 -0
- package/esm/dev2-server/tsconfig-manager.js.map +1 -0
- package/esm/dev2-server/type-generator.d.ts +115 -0
- package/esm/dev2-server/type-generator.d.ts.map +1 -0
- package/esm/dev2-server/type-generator.js +566 -0
- package/esm/dev2-server/type-generator.js.map +1 -0
- package/esm/dev2-server/types.d.ts +30 -0
- package/esm/dev2-server/types.d.ts.map +1 -0
- package/esm/dev2-server/utils.d.ts +15 -0
- package/esm/dev2-server/utils.d.ts.map +1 -0
- package/esm/dev2-server/utils.js +40 -0
- package/esm/dev2-server/utils.js.map +1 -0
- package/esm/generations/add-command.action.d.ts +3 -0
- package/esm/generations/add-command.action.d.ts.map +1 -0
- package/esm/generations/add-command.action.js +154 -0
- package/esm/generations/add-command.action.js.map +1 -0
- package/esm/http/config.d.ts +10 -0
- package/esm/http/config.d.ts.map +1 -0
- package/esm/http/config.js +22 -0
- package/esm/http/config.js.map +1 -0
- package/esm/http/context/request-context.d.ts +47 -0
- package/esm/http/context/request-context.d.ts.map +1 -0
- package/esm/http/context/request-context.js +52 -0
- package/esm/http/context/request-context.js.map +1 -0
- package/esm/http/createHttpApplication.d.ts +3 -0
- package/esm/http/createHttpApplication.d.ts.map +1 -0
- package/esm/http/createHttpApplication.js +28 -0
- package/esm/http/createHttpApplication.js.map +1 -0
- package/esm/http/database/RequestLog.d.ts +16 -0
- package/esm/http/database/RequestLog.d.ts.map +1 -0
- package/esm/http/database/RequestLog.js +26 -0
- package/esm/http/database/RequestLog.js.map +1 -0
- package/esm/http/errors/index.d.ts +2 -0
- package/esm/http/errors/index.d.ts.map +1 -0
- package/esm/http/errors/resource-not-found.error.d.ts +21 -0
- package/esm/http/errors/resource-not-found.error.d.ts.map +1 -0
- package/esm/http/errors/resource-not-found.error.js +40 -0
- package/esm/http/errors/resource-not-found.error.js.map +1 -0
- package/esm/http/events.d.ts +4 -0
- package/esm/http/events.d.ts.map +1 -0
- package/esm/http/events.js +26 -0
- package/esm/http/events.js.map +1 -0
- package/esm/http/index.d.ts +17 -0
- package/esm/http/index.d.ts.map +1 -0
- package/esm/http/middleware/cache-response-middleware.d.ts +34 -0
- package/esm/http/middleware/cache-response-middleware.d.ts.map +1 -0
- package/esm/http/middleware/cache-response-middleware.js +45 -0
- package/esm/http/middleware/cache-response-middleware.js.map +1 -0
- package/esm/http/middleware/index.d.ts +3 -0
- package/esm/http/middleware/index.d.ts.map +1 -0
- package/esm/http/middleware/inject-request-context.d.ts +21 -0
- package/esm/http/middleware/inject-request-context.d.ts.map +1 -0
- package/esm/http/middleware/inject-request-context.js +105 -0
- package/esm/http/middleware/inject-request-context.js.map +1 -0
- package/esm/http/plugins/index.d.ts +3 -0
- package/esm/http/plugins/index.d.ts.map +1 -0
- package/esm/http/plugins.d.ts +3 -0
- package/esm/http/plugins.d.ts.map +1 -0
- package/esm/http/plugins.js +31 -0
- package/esm/http/plugins.js.map +1 -0
- package/esm/http/request-controller.d.ts +11 -0
- package/esm/http/request-controller.d.ts.map +1 -0
- package/esm/http/request-controller.js +9 -0
- package/esm/http/request-controller.js.map +1 -0
- package/esm/http/request.d.ts +380 -0
- package/esm/http/request.d.ts.map +1 -0
- package/esm/http/request.js +733 -0
- package/esm/http/request.js.map +1 -0
- package/esm/http/response.js +914 -0
- package/esm/http/response.js.map +1 -0
- package/esm/http/server.d.ts +8 -0
- package/esm/http/server.d.ts.map +1 -0
- package/esm/http/server.js +15 -0
- package/esm/http/server.js.map +1 -0
- package/esm/http/types.d.ts +174 -0
- package/esm/http/types.d.ts.map +1 -0
- package/esm/http/uploaded-file.d.ts +459 -0
- package/esm/http/uploaded-file.d.ts.map +1 -0
- package/esm/http/uploaded-file.js +709 -0
- package/esm/http/uploaded-file.js.map +1 -0
- package/esm/http/uploads-config.d.ts +26 -0
- package/esm/http/uploads-config.d.ts.map +1 -0
- package/esm/http/uploads-config.js +35 -0
- package/esm/http/uploads-config.js.map +1 -0
- package/esm/http/uploads-types.d.ts +236 -0
- package/esm/http/uploads-types.d.ts.map +1 -0
- package/esm/image/image.d.ts +388 -0
- package/esm/image/image.d.ts.map +1 -0
- package/esm/image/image.js +602 -0
- package/esm/image/image.js.map +1 -0
- package/esm/image/index.d.ts +2 -0
- package/esm/image/index.d.ts.map +1 -0
- package/esm/index.d.ts +28 -0
- package/esm/index.d.ts.map +1 -0
- package/esm/index.js +1 -28
- package/esm/index.js.map +1 -1
- package/esm/logger/index.d.ts +3 -0
- package/esm/logger/index.d.ts.map +1 -0
- package/esm/logger/logger.d.ts +3 -0
- package/esm/logger/logger.d.ts.map +1 -0
- package/esm/logger/logger.js +16 -0
- package/esm/logger/logger.js.map +1 -0
- package/esm/logger/types.d.ts +39 -0
- package/esm/logger/types.d.ts.map +1 -0
- package/esm/mail/config.d.ts +83 -0
- package/esm/mail/config.d.ts.map +1 -0
- package/esm/mail/config.js +152 -0
- package/esm/mail/config.js.map +1 -0
- package/esm/mail/events.d.ts +96 -0
- package/esm/mail/events.d.ts.map +1 -0
- package/esm/mail/events.js +123 -0
- package/esm/mail/events.js.map +1 -0
- package/esm/mail/index.d.ts +10 -0
- package/esm/mail/index.d.ts.map +1 -0
- package/esm/mail/mail.d.ts +175 -0
- package/esm/mail/mail.d.ts.map +1 -0
- package/esm/mail/mail.js +286 -0
- package/esm/mail/mail.js.map +1 -0
- package/esm/mail/mailer-pool.d.ts +27 -0
- package/esm/mail/mailer-pool.d.ts.map +1 -0
- package/esm/mail/mailer-pool.js +143 -0
- package/esm/mail/mailer-pool.js.map +1 -0
- package/esm/mail/react-mail.d.ts +9 -0
- package/esm/mail/react-mail.d.ts.map +1 -0
- package/esm/mail/react-mail.js +28 -0
- package/esm/mail/react-mail.js.map +1 -0
- package/esm/mail/send-mail.d.ts +33 -0
- package/esm/mail/send-mail.d.ts.map +1 -0
- package/esm/mail/send-mail.js +309 -0
- package/esm/mail/send-mail.js.map +1 -0
- package/esm/mail/test-mailbox.d.ts +110 -0
- package/esm/mail/test-mailbox.d.ts.map +1 -0
- package/esm/mail/test-mailbox.js +143 -0
- package/esm/mail/test-mailbox.js.map +1 -0
- package/esm/mail/types.d.ts +245 -0
- package/esm/mail/types.d.ts.map +1 -0
- package/esm/mail/types.js +13 -0
- package/esm/mail/types.js.map +1 -0
- package/esm/manifest/manifest-manager.d.ts +74 -0
- package/esm/manifest/manifest-manager.d.ts.map +1 -0
- package/esm/manifest/manifest-manager.js +88 -0
- package/esm/manifest/manifest-manager.js.map +1 -0
- package/esm/production/build-app-production.d.ts +6 -0
- package/esm/production/build-app-production.d.ts.map +1 -0
- package/esm/production/build-app-production.js +8 -0
- package/esm/production/build-app-production.js.map +1 -0
- package/esm/production/esbuild-plugins.d.ts +5 -0
- package/esm/production/esbuild-plugins.d.ts.map +1 -0
- package/esm/production/esbuild-plugins.js +23 -0
- package/esm/production/esbuild-plugins.js.map +1 -0
- package/esm/production/production-builder.d.ts +76 -0
- package/esm/production/production-builder.d.ts.map +1 -0
- package/esm/production/production-builder.js +247 -0
- package/esm/production/production-builder.js.map +1 -0
- package/esm/react/index.d.ts +14 -0
- package/esm/react/index.d.ts.map +1 -0
- package/esm/react/index.js +65 -0
- package/esm/react/index.js.map +1 -0
- package/esm/repositories/adapters/cascade/cascade-adapter.d.ts +85 -0
- package/esm/repositories/adapters/cascade/cascade-adapter.d.ts.map +1 -0
- package/esm/repositories/adapters/cascade/cascade-adapter.js +179 -0
- package/esm/repositories/adapters/cascade/cascade-adapter.js.map +1 -0
- package/esm/repositories/adapters/cascade/cascade-query-builder.d.ts +124 -0
- package/esm/repositories/adapters/cascade/cascade-query-builder.d.ts.map +1 -0
- package/esm/repositories/adapters/cascade/cascade-query-builder.js +267 -0
- package/esm/repositories/adapters/cascade/cascade-query-builder.js.map +1 -0
- package/esm/repositories/adapters/cascade/filter-applicator.d.ts +62 -0
- package/esm/repositories/adapters/cascade/filter-applicator.d.ts.map +1 -0
- package/esm/repositories/adapters/cascade/filter-applicator.js +423 -0
- package/esm/repositories/adapters/cascade/filter-applicator.js.map +1 -0
- package/esm/repositories/adapters/cascade/index.d.ts +7 -0
- package/esm/repositories/adapters/cascade/index.d.ts.map +1 -0
- package/esm/repositories/contracts/index.d.ts +8 -0
- package/esm/repositories/contracts/index.d.ts.map +1 -0
- package/esm/repositories/contracts/query-builder.contract.d.ts +279 -0
- package/esm/repositories/contracts/query-builder.contract.d.ts.map +1 -0
- package/esm/repositories/contracts/repository-adapter.contract.d.ts +183 -0
- package/esm/repositories/contracts/repository-adapter.contract.d.ts.map +1 -0
- package/esm/repositories/contracts/types.d.ts +278 -0
- package/esm/repositories/contracts/types.d.ts.map +1 -0
- package/esm/repositories/index.d.ts +8 -0
- package/esm/repositories/index.d.ts.map +1 -0
- package/esm/repositories/repository.manager.d.ts +619 -0
- package/esm/repositories/repository.manager.d.ts.map +1 -0
- package/esm/repositories/repository.manager.js +978 -0
- package/esm/repositories/repository.manager.js.map +1 -0
- package/esm/resource/define-resource.js +58 -0
- package/esm/resource/define-resource.js.map +1 -0
- package/esm/resource/index.d.ts +5 -0
- package/esm/resource/index.d.ts.map +1 -0
- package/esm/resource/resource-field-builder.d.ts +83 -0
- package/esm/resource/resource-field-builder.d.ts.map +1 -0
- package/esm/resource/resource-field-builder.js +189 -0
- package/esm/resource/resource-field-builder.js.map +1 -0
- package/esm/resource/resource.d.ts +105 -0
- package/esm/resource/resource.d.ts.map +1 -0
- package/esm/resource/resource.js +231 -0
- package/esm/resource/resource.js.map +1 -0
- package/esm/resource/types.d.ts +40 -0
- package/esm/resource/types.d.ts.map +1 -0
- package/esm/restful/index.d.ts +2 -0
- package/esm/restful/index.d.ts.map +1 -0
- package/esm/restful/restful.d.ts +110 -0
- package/esm/restful/restful.d.ts.map +1 -0
- package/esm/restful/restful.js +317 -0
- package/esm/restful/restful.js.map +1 -0
- package/esm/router/index.d.ts +4 -0
- package/esm/router/index.d.ts.map +1 -0
- package/esm/router/route-registry.d.ts +30 -0
- package/esm/router/route-registry.d.ts.map +1 -0
- package/esm/router/route-registry.js +67 -0
- package/esm/router/route-registry.js.map +1 -0
- package/esm/router/route.d.ts +34 -0
- package/esm/router/route.d.ts.map +1 -0
- package/esm/router/router.d.ts +169 -0
- package/esm/router/router.d.ts.map +1 -0
- package/esm/router/router.js +578 -0
- package/esm/router/router.js.map +1 -0
- package/esm/router/types.d.ts +267 -0
- package/esm/router/types.d.ts.map +1 -0
- package/esm/router/utils.d.ts +5 -0
- package/esm/router/utils.d.ts.map +1 -0
- package/esm/router/utils.js +6 -0
- package/esm/router/utils.js.map +1 -0
- package/esm/storage/config.d.ts +15 -0
- package/esm/storage/config.d.ts.map +1 -0
- package/esm/storage/config.js +32 -0
- package/esm/storage/config.js.map +1 -0
- package/esm/storage/context/storage-driver-context.d.ts +69 -0
- package/esm/storage/context/storage-driver-context.d.ts.map +1 -0
- package/esm/storage/context/storage-driver-context.js +80 -0
- package/esm/storage/context/storage-driver-context.js.map +1 -0
- package/esm/storage/drivers/cloud-driver.d.ts +196 -0
- package/esm/storage/drivers/cloud-driver.d.ts.map +1 -0
- package/esm/storage/drivers/cloud-driver.js +697 -0
- package/esm/storage/drivers/cloud-driver.js.map +1 -0
- package/esm/storage/drivers/do-spaces-driver.d.ts +43 -0
- package/esm/storage/drivers/do-spaces-driver.d.ts.map +1 -0
- package/esm/storage/drivers/do-spaces-driver.js +50 -0
- package/esm/storage/drivers/do-spaces-driver.js.map +1 -0
- package/esm/storage/drivers/local-driver.d.ts +151 -0
- package/esm/storage/drivers/local-driver.d.ts.map +1 -0
- package/esm/storage/drivers/local-driver.js +448 -0
- package/esm/storage/drivers/local-driver.js.map +1 -0
- package/esm/storage/drivers/r2-driver.d.ts +47 -0
- package/esm/storage/drivers/r2-driver.d.ts.map +1 -0
- package/esm/storage/drivers/r2-driver.js +60 -0
- package/esm/storage/drivers/r2-driver.js.map +1 -0
- package/esm/storage/drivers/s3-driver.d.ts +32 -0
- package/esm/storage/drivers/s3-driver.d.ts.map +1 -0
- package/esm/storage/drivers/s3-driver.js +37 -0
- package/esm/storage/drivers/s3-driver.js.map +1 -0
- package/esm/storage/index.d.ts +13 -0
- package/esm/storage/index.d.ts.map +1 -0
- package/esm/storage/scoped-storage.d.ts +514 -0
- package/esm/storage/scoped-storage.d.ts.map +1 -0
- package/esm/storage/scoped-storage.js +656 -0
- package/esm/storage/scoped-storage.js.map +1 -0
- package/esm/storage/storage-file.d.ts +216 -0
- package/esm/storage/storage-file.d.ts.map +1 -0
- package/esm/storage/storage-file.js +358 -0
- package/esm/storage/storage-file.js.map +1 -0
- package/esm/storage/storage.d.ts +583 -0
- package/esm/storage/storage.d.ts.map +1 -0
- package/esm/storage/storage.js +945 -0
- package/esm/storage/storage.js.map +1 -0
- package/esm/storage/types.d.ts +909 -0
- package/esm/storage/types.d.ts.map +1 -0
- package/esm/storage/utils/mime.d.ts +33 -0
- package/esm/storage/utils/mime.d.ts.map +1 -0
- package/esm/storage/utils/mime.js +45 -0
- package/esm/storage/utils/mime.js.map +1 -0
- package/esm/store/index.d.ts +25 -0
- package/esm/store/index.d.ts.map +1 -0
- package/esm/store/index.js +52 -0
- package/esm/store/index.js.map +1 -0
- package/esm/utils/app-log.d.ts +8 -0
- package/esm/utils/app-log.d.ts.map +1 -0
- package/esm/utils/app-log.js +7 -0
- package/esm/utils/app-log.js.map +1 -0
- package/esm/utils/cleanup-temp-files.d.ts +5 -0
- package/esm/utils/cleanup-temp-files.d.ts.map +1 -0
- package/esm/utils/database-log.d.ts +25 -0
- package/esm/utils/database-log.d.ts.map +1 -0
- package/esm/utils/database-log.js +43 -0
- package/esm/utils/database-log.js.map +1 -0
- package/esm/utils/download-file.d.ts +3 -0
- package/esm/utils/download-file.d.ts.map +1 -0
- package/esm/utils/environment.d.ts +4 -0
- package/esm/utils/environment.d.ts.map +1 -0
- package/esm/utils/environment.js +6 -0
- package/esm/utils/environment.js.map +1 -0
- package/esm/utils/get-localized.d.ts +10 -0
- package/esm/utils/get-localized.d.ts.map +1 -0
- package/esm/utils/get-localized.js +15 -0
- package/esm/utils/get-localized.js.map +1 -0
- package/esm/utils/index.d.ts +12 -0
- package/esm/utils/index.d.ts.map +1 -0
- package/esm/utils/internal.d.ts +4 -0
- package/esm/utils/internal.d.ts.map +1 -0
- package/esm/utils/paths.d.ts +55 -0
- package/esm/utils/paths.d.ts.map +1 -0
- package/esm/utils/paths.js +89 -0
- package/esm/utils/paths.js.map +1 -0
- package/esm/utils/promise-all-object.d.ts +8 -0
- package/esm/utils/promise-all-object.d.ts.map +1 -0
- package/esm/utils/promise-all-object.js +12 -0
- package/esm/utils/promise-all-object.js.map +1 -0
- package/esm/utils/queue.d.ts +49 -0
- package/esm/utils/queue.d.ts.map +1 -0
- package/esm/utils/queue.js +89 -0
- package/esm/utils/queue.js.map +1 -0
- package/esm/utils/sleep.d.ts +2 -0
- package/esm/utils/sleep.d.ts.map +1 -0
- package/esm/utils/sleep.js +3 -0
- package/esm/utils/sleep.js.map +1 -0
- package/esm/utils/sluggable.d.ts +5 -0
- package/esm/utils/sluggable.d.ts.map +1 -0
- package/esm/utils/sluggable.js +15 -0
- package/esm/utils/sluggable.js.map +1 -0
- package/esm/utils/to-json.d.ts +2 -0
- package/esm/utils/to-json.d.ts.map +1 -0
- package/esm/utils/to-json.js +26 -0
- package/esm/utils/to-json.js.map +1 -0
- package/esm/utils/types.d.ts +22 -0
- package/esm/utils/types.d.ts.map +1 -0
- package/esm/utils/urls.d.ts +21 -0
- package/esm/utils/urls.d.ts.map +1 -0
- package/esm/utils/urls.js +31 -0
- package/esm/utils/urls.js.map +1 -0
- package/esm/validation/database/exists-except-current-id.d.ts +7 -0
- package/esm/validation/database/exists-except-current-id.d.ts.map +1 -0
- package/esm/validation/database/exists-except-current-id.js +23 -0
- package/esm/validation/database/exists-except-current-id.js.map +1 -0
- package/esm/validation/database/exists-except-current-user.d.ts +7 -0
- package/esm/validation/database/exists-except-current-user.d.ts.map +1 -0
- package/esm/validation/database/exists-except-current-user.js +25 -0
- package/esm/validation/database/exists-except-current-user.js.map +1 -0
- package/esm/validation/database/exists.d.ts +7 -0
- package/esm/validation/database/exists.d.ts.map +1 -0
- package/esm/validation/database/exists.js +21 -0
- package/esm/validation/database/exists.js.map +1 -0
- package/esm/validation/database/index.d.ts +12 -0
- package/esm/validation/database/index.d.ts.map +1 -0
- package/esm/validation/database/types.d.ts +68 -0
- package/esm/validation/database/types.d.ts.map +1 -0
- package/esm/validation/database/unique-except-current-id.d.ts +7 -0
- package/esm/validation/database/unique-except-current-id.d.ts.map +1 -0
- package/esm/validation/database/unique-except-current-id.js +23 -0
- package/esm/validation/database/unique-except-current-id.js.map +1 -0
- package/esm/validation/database/unique-except-current-user.d.ts +7 -0
- package/esm/validation/database/unique-except-current-user.d.ts.map +1 -0
- package/esm/validation/database/unique-except-current-user.js +25 -0
- package/esm/validation/database/unique-except-current-user.js.map +1 -0
- package/esm/validation/database/unique.d.ts +7 -0
- package/esm/validation/database/unique.d.ts.map +1 -0
- package/esm/validation/database/unique.js +30 -0
- package/esm/validation/database/unique.js.map +1 -0
- package/esm/validation/file/file.d.ts +22 -0
- package/esm/validation/file/file.d.ts.map +1 -0
- package/esm/validation/file/file.js +60 -0
- package/esm/validation/file/file.js.map +1 -0
- package/esm/validation/file/index.d.ts +6 -0
- package/esm/validation/file/index.d.ts.map +1 -0
- package/esm/validation/index.d.ts +16 -0
- package/esm/validation/index.d.ts.map +1 -0
- package/esm/validation/init.d.ts +7 -0
- package/esm/validation/init.d.ts.map +1 -0
- package/esm/validation/init.js +36 -0
- package/esm/validation/init.js.map +1 -0
- package/esm/validation/plugins/database-plugin.d.ts +14 -0
- package/esm/validation/plugins/database-plugin.d.ts.map +1 -0
- package/esm/validation/plugins/database-plugin.js +95 -0
- package/esm/validation/plugins/database-plugin.js.map +1 -0
- package/esm/validation/plugins/file-plugin.d.ts +11 -0
- package/esm/validation/plugins/file-plugin.d.ts.map +1 -0
- package/esm/validation/plugins/file-plugin.js +17 -0
- package/esm/validation/plugins/file-plugin.js.map +1 -0
- package/esm/validation/plugins/index.d.ts +9 -0
- package/esm/validation/plugins/index.d.ts.map +1 -0
- package/esm/validation/plugins/localized-plugin.d.ts +11 -0
- package/esm/validation/plugins/localized-plugin.d.ts.map +1 -0
- package/esm/validation/plugins/localized-plugin.js +19 -0
- package/esm/validation/plugins/localized-plugin.js.map +1 -0
- package/esm/validation/types.d.ts +87 -0
- package/esm/validation/types.d.ts.map +1 -0
- package/esm/validation/validateAll.d.ts +7 -0
- package/esm/validation/validateAll.d.ts.map +1 -0
- package/esm/validation/validateAll.js +60 -0
- package/esm/validation/validateAll.js.map +1 -0
- package/esm/validation/validators/file-validator.d.ts +46 -0
- package/esm/validation/validators/file-validator.d.ts.map +1 -0
- package/esm/validation/validators/file-validator.js +112 -0
- package/esm/validation/validators/file-validator.js.map +1 -0
- package/esm/validation/validators/index.d.ts +7 -0
- package/esm/validation/validators/index.d.ts.map +1 -0
- package/esm/warlock-config/default-configurations.d.ts +3 -0
- package/esm/warlock-config/default-configurations.d.ts.map +1 -0
- package/esm/warlock-config/default-configurations.js +8 -0
- package/esm/warlock-config/default-configurations.js.map +1 -0
- package/esm/warlock-config/define-config.d.ts +3 -0
- package/esm/warlock-config/define-config.d.ts.map +1 -0
- package/esm/warlock-config/define-config.js +3 -0
- package/esm/warlock-config/define-config.js.map +1 -0
- package/esm/warlock-config/index.d.ts +4 -0
- package/esm/warlock-config/index.d.ts.map +1 -0
- package/esm/warlock-config/types.d.ts +79 -0
- package/esm/warlock-config/types.d.ts.map +1 -0
- package/esm/warlock-config/warlock-config.manager.d.ts +83 -0
- package/esm/warlock-config/warlock-config.manager.d.ts.map +1 -0
- package/esm/warlock-config/warlock-config.manager.js +141 -0
- package/esm/warlock-config/warlock-config.manager.js.map +1 -0
- package/package.json +66 -71
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import type React from "react";
|
|
3
|
+
import type { MailAddress, MailAttachment, MailConfigurations, MailEvents, MailOptions, MailPriority, MailResult } from "./types";
|
|
4
|
+
/**
|
|
5
|
+
* Fluent Mail Builder
|
|
6
|
+
*
|
|
7
|
+
* Provides a chainable API for building and sending emails.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```typescript
|
|
11
|
+
* await Mail.to("user@example.com")
|
|
12
|
+
* .subject("Welcome!")
|
|
13
|
+
* .component(<WelcomeEmail name="John" />)
|
|
14
|
+
* .send();
|
|
15
|
+
*
|
|
16
|
+
* // With attachments
|
|
17
|
+
* await Mail.to("user@example.com")
|
|
18
|
+
* .cc("manager@example.com")
|
|
19
|
+
* .subject("Invoice")
|
|
20
|
+
* .component(<InvoiceEmail order={order} />)
|
|
21
|
+
* .attach(pdfBuffer, "invoice.pdf")
|
|
22
|
+
* .send();
|
|
23
|
+
*
|
|
24
|
+
* // Multi-tenant
|
|
25
|
+
* await Mail.config(tenant.mailSettings)
|
|
26
|
+
* .to("user@example.com")
|
|
27
|
+
* .subject("Hello")
|
|
28
|
+
* .html("<p>World</p>")
|
|
29
|
+
* .send();
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
export declare class Mail {
|
|
33
|
+
private options;
|
|
34
|
+
/**
|
|
35
|
+
* Private constructor - use static factory methods
|
|
36
|
+
*/
|
|
37
|
+
private constructor();
|
|
38
|
+
/**
|
|
39
|
+
* Create a new mail with recipient
|
|
40
|
+
*/
|
|
41
|
+
static to(recipient: string | string[]): Mail;
|
|
42
|
+
/**
|
|
43
|
+
* Create a new mail with custom configuration (multi-tenant)
|
|
44
|
+
*/
|
|
45
|
+
static config(config: MailConfigurations): Mail;
|
|
46
|
+
/**
|
|
47
|
+
* Create a new mail with named mailer
|
|
48
|
+
*/
|
|
49
|
+
static mailer(name: string): Mail;
|
|
50
|
+
/**
|
|
51
|
+
* Set recipient(s)
|
|
52
|
+
*/
|
|
53
|
+
to(recipient: string | string[]): this;
|
|
54
|
+
/**
|
|
55
|
+
* Set CC recipient(s)
|
|
56
|
+
*/
|
|
57
|
+
cc(recipient: string | string[]): this;
|
|
58
|
+
/**
|
|
59
|
+
* Set BCC recipient(s)
|
|
60
|
+
*/
|
|
61
|
+
bcc(recipient: string | string[]): this;
|
|
62
|
+
/**
|
|
63
|
+
* Set reply-to address
|
|
64
|
+
*/
|
|
65
|
+
replyTo(address: string): this;
|
|
66
|
+
/**
|
|
67
|
+
* Set from address
|
|
68
|
+
*/
|
|
69
|
+
from(address: MailAddress): this;
|
|
70
|
+
/**
|
|
71
|
+
* Set subject
|
|
72
|
+
*/
|
|
73
|
+
subject(subject: string): this;
|
|
74
|
+
/**
|
|
75
|
+
* Set HTML content
|
|
76
|
+
*/
|
|
77
|
+
html(content: string): this;
|
|
78
|
+
/**
|
|
79
|
+
* Set plain text content
|
|
80
|
+
*/
|
|
81
|
+
text(content: string): this;
|
|
82
|
+
/**
|
|
83
|
+
* Set React component as content
|
|
84
|
+
*/
|
|
85
|
+
component(element: React.ReactElement): this;
|
|
86
|
+
/**
|
|
87
|
+
* Add attachment
|
|
88
|
+
*/
|
|
89
|
+
attach(content: Buffer | string, filename: string, contentType?: string): this;
|
|
90
|
+
/**
|
|
91
|
+
* Add multiple attachments
|
|
92
|
+
*/
|
|
93
|
+
attachments(attachments: MailAttachment[]): this;
|
|
94
|
+
/**
|
|
95
|
+
* Attach a file by path
|
|
96
|
+
*
|
|
97
|
+
* The file will be read automatically when the email is sent.
|
|
98
|
+
*
|
|
99
|
+
* @param path Path to the file
|
|
100
|
+
* @param filename Optional custom filename (defaults to basename of path)
|
|
101
|
+
* @param contentType Optional MIME type
|
|
102
|
+
*
|
|
103
|
+
* @example
|
|
104
|
+
* ```typescript
|
|
105
|
+
* Mail.to("user@example.com")
|
|
106
|
+
* .subject("Invoice")
|
|
107
|
+
* .html("<p>Please see attached</p>")
|
|
108
|
+
* .attachFile("./invoices/2024-001.pdf")
|
|
109
|
+
* .attachFile("./terms.pdf", "terms-and-conditions.pdf")
|
|
110
|
+
* .send();
|
|
111
|
+
* ```
|
|
112
|
+
*/
|
|
113
|
+
attachFile(path: string, filename?: string, contentType?: string): this;
|
|
114
|
+
/**
|
|
115
|
+
* Set priority
|
|
116
|
+
*/
|
|
117
|
+
priority(level: MailPriority): this;
|
|
118
|
+
/**
|
|
119
|
+
* Set custom headers
|
|
120
|
+
*/
|
|
121
|
+
headers(headers: Record<string, string>): this;
|
|
122
|
+
/**
|
|
123
|
+
* Add a custom header
|
|
124
|
+
*/
|
|
125
|
+
header(name: string, value: string): this;
|
|
126
|
+
/**
|
|
127
|
+
* Set tags for categorization
|
|
128
|
+
*/
|
|
129
|
+
tags(tags: string[]): this;
|
|
130
|
+
/**
|
|
131
|
+
* Add a tag
|
|
132
|
+
*/
|
|
133
|
+
tag(tag: string): this;
|
|
134
|
+
/**
|
|
135
|
+
* Set correlation ID for tracking
|
|
136
|
+
*/
|
|
137
|
+
correlationId(id: string): this;
|
|
138
|
+
/**
|
|
139
|
+
* Set configuration (multi-tenant)
|
|
140
|
+
*/
|
|
141
|
+
withConfig(config: MailConfigurations): this;
|
|
142
|
+
/**
|
|
143
|
+
* Set named mailer
|
|
144
|
+
*/
|
|
145
|
+
withMailer(name: string): this;
|
|
146
|
+
/**
|
|
147
|
+
* Set beforeSending event handler
|
|
148
|
+
*/
|
|
149
|
+
beforeSending(handler: MailEvents["beforeSending"]): this;
|
|
150
|
+
/**
|
|
151
|
+
* Set onSent event handler
|
|
152
|
+
*/
|
|
153
|
+
onSent(handler: MailEvents["onSent"]): this;
|
|
154
|
+
/**
|
|
155
|
+
* Set onSuccess event handler
|
|
156
|
+
*/
|
|
157
|
+
onSuccess(handler: MailEvents["onSuccess"]): this;
|
|
158
|
+
/**
|
|
159
|
+
* Set onError event handler
|
|
160
|
+
*/
|
|
161
|
+
onError(handler: MailEvents["onError"]): this;
|
|
162
|
+
/**
|
|
163
|
+
* Get the built options (for debugging)
|
|
164
|
+
*/
|
|
165
|
+
getOptions(): Partial<MailOptions>;
|
|
166
|
+
/**
|
|
167
|
+
* Validate the mail before sending
|
|
168
|
+
*/
|
|
169
|
+
private validate;
|
|
170
|
+
/**
|
|
171
|
+
* Send the email
|
|
172
|
+
*/
|
|
173
|
+
send(): Promise<MailResult>;
|
|
174
|
+
}
|
|
175
|
+
//# sourceMappingURL=mail.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mail.d.ts","sourceRoot":"","sources":["../../src/mail/mail.ts"],"names":[],"mappings":"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"}
|
package/esm/mail/mail.js
ADDED
|
@@ -0,0 +1,286 @@
|
|
|
1
|
+
import {sendMail}from'./send-mail.js';/**
|
|
2
|
+
* Fluent Mail Builder
|
|
3
|
+
*
|
|
4
|
+
* Provides a chainable API for building and sending emails.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```typescript
|
|
8
|
+
* await Mail.to("user@example.com")
|
|
9
|
+
* .subject("Welcome!")
|
|
10
|
+
* .component(<WelcomeEmail name="John" />)
|
|
11
|
+
* .send();
|
|
12
|
+
*
|
|
13
|
+
* // With attachments
|
|
14
|
+
* await Mail.to("user@example.com")
|
|
15
|
+
* .cc("manager@example.com")
|
|
16
|
+
* .subject("Invoice")
|
|
17
|
+
* .component(<InvoiceEmail order={order} />)
|
|
18
|
+
* .attach(pdfBuffer, "invoice.pdf")
|
|
19
|
+
* .send();
|
|
20
|
+
*
|
|
21
|
+
* // Multi-tenant
|
|
22
|
+
* await Mail.config(tenant.mailSettings)
|
|
23
|
+
* .to("user@example.com")
|
|
24
|
+
* .subject("Hello")
|
|
25
|
+
* .html("<p>World</p>")
|
|
26
|
+
* .send();
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
class Mail {
|
|
30
|
+
options = {};
|
|
31
|
+
/**
|
|
32
|
+
* Private constructor - use static factory methods
|
|
33
|
+
*/
|
|
34
|
+
constructor() { }
|
|
35
|
+
/**
|
|
36
|
+
* Create a new mail with recipient
|
|
37
|
+
*/
|
|
38
|
+
static to(recipient) {
|
|
39
|
+
const mail = new Mail();
|
|
40
|
+
mail.options.to = recipient;
|
|
41
|
+
return mail;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Create a new mail with custom configuration (multi-tenant)
|
|
45
|
+
*/
|
|
46
|
+
static config(config) {
|
|
47
|
+
const mail = new Mail();
|
|
48
|
+
mail.options.config = config;
|
|
49
|
+
return mail;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Create a new mail with named mailer
|
|
53
|
+
*/
|
|
54
|
+
static mailer(name) {
|
|
55
|
+
const mail = new Mail();
|
|
56
|
+
mail.options.mailer = name;
|
|
57
|
+
return mail;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Set recipient(s)
|
|
61
|
+
*/
|
|
62
|
+
to(recipient) {
|
|
63
|
+
this.options.to = recipient;
|
|
64
|
+
return this;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Set CC recipient(s)
|
|
68
|
+
*/
|
|
69
|
+
cc(recipient) {
|
|
70
|
+
this.options.cc = recipient;
|
|
71
|
+
return this;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Set BCC recipient(s)
|
|
75
|
+
*/
|
|
76
|
+
bcc(recipient) {
|
|
77
|
+
this.options.bcc = recipient;
|
|
78
|
+
return this;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Set reply-to address
|
|
82
|
+
*/
|
|
83
|
+
replyTo(address) {
|
|
84
|
+
this.options.replyTo = address;
|
|
85
|
+
return this;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Set from address
|
|
89
|
+
*/
|
|
90
|
+
from(address) {
|
|
91
|
+
this.options.from = address;
|
|
92
|
+
return this;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Set subject
|
|
96
|
+
*/
|
|
97
|
+
subject(subject) {
|
|
98
|
+
this.options.subject = subject;
|
|
99
|
+
return this;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Set HTML content
|
|
103
|
+
*/
|
|
104
|
+
html(content) {
|
|
105
|
+
this.options.html = content;
|
|
106
|
+
return this;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Set plain text content
|
|
110
|
+
*/
|
|
111
|
+
text(content) {
|
|
112
|
+
this.options.text = content;
|
|
113
|
+
return this;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Set React component as content
|
|
117
|
+
*/
|
|
118
|
+
component(element) {
|
|
119
|
+
this.options.component = element;
|
|
120
|
+
return this;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Add attachment
|
|
124
|
+
*/
|
|
125
|
+
attach(content, filename, contentType) {
|
|
126
|
+
if (!this.options.attachments) {
|
|
127
|
+
this.options.attachments = [];
|
|
128
|
+
}
|
|
129
|
+
this.options.attachments.push({
|
|
130
|
+
filename,
|
|
131
|
+
content,
|
|
132
|
+
contentType,
|
|
133
|
+
});
|
|
134
|
+
return this;
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Add multiple attachments
|
|
138
|
+
*/
|
|
139
|
+
attachments(attachments) {
|
|
140
|
+
this.options.attachments = [...(this.options.attachments || []), ...attachments];
|
|
141
|
+
return this;
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Attach a file by path
|
|
145
|
+
*
|
|
146
|
+
* The file will be read automatically when the email is sent.
|
|
147
|
+
*
|
|
148
|
+
* @param path Path to the file
|
|
149
|
+
* @param filename Optional custom filename (defaults to basename of path)
|
|
150
|
+
* @param contentType Optional MIME type
|
|
151
|
+
*
|
|
152
|
+
* @example
|
|
153
|
+
* ```typescript
|
|
154
|
+
* Mail.to("user@example.com")
|
|
155
|
+
* .subject("Invoice")
|
|
156
|
+
* .html("<p>Please see attached</p>")
|
|
157
|
+
* .attachFile("./invoices/2024-001.pdf")
|
|
158
|
+
* .attachFile("./terms.pdf", "terms-and-conditions.pdf")
|
|
159
|
+
* .send();
|
|
160
|
+
* ```
|
|
161
|
+
*/
|
|
162
|
+
attachFile(path, filename, contentType) {
|
|
163
|
+
if (!this.options.attachments) {
|
|
164
|
+
this.options.attachments = [];
|
|
165
|
+
}
|
|
166
|
+
// Extract filename from path if not provided
|
|
167
|
+
const resolvedFilename = filename || path.split(/[/\\]/).pop() || "attachment";
|
|
168
|
+
this.options.attachments.push({
|
|
169
|
+
path,
|
|
170
|
+
filename: resolvedFilename,
|
|
171
|
+
contentType,
|
|
172
|
+
});
|
|
173
|
+
return this;
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Set priority
|
|
177
|
+
*/
|
|
178
|
+
priority(level) {
|
|
179
|
+
this.options.priority = level;
|
|
180
|
+
return this;
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Set custom headers
|
|
184
|
+
*/
|
|
185
|
+
headers(headers) {
|
|
186
|
+
this.options.headers = { ...this.options.headers, ...headers };
|
|
187
|
+
return this;
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Add a custom header
|
|
191
|
+
*/
|
|
192
|
+
header(name, value) {
|
|
193
|
+
this.options.headers = { ...this.options.headers, [name]: value };
|
|
194
|
+
return this;
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Set tags for categorization
|
|
198
|
+
*/
|
|
199
|
+
tags(tags) {
|
|
200
|
+
this.options.tags = tags;
|
|
201
|
+
return this;
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Add a tag
|
|
205
|
+
*/
|
|
206
|
+
tag(tag) {
|
|
207
|
+
this.options.tags = [...(this.options.tags || []), tag];
|
|
208
|
+
return this;
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Set correlation ID for tracking
|
|
212
|
+
*/
|
|
213
|
+
correlationId(id) {
|
|
214
|
+
this.options.correlationId = id;
|
|
215
|
+
return this;
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Set configuration (multi-tenant)
|
|
219
|
+
*/
|
|
220
|
+
withConfig(config) {
|
|
221
|
+
this.options.config = config;
|
|
222
|
+
return this;
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* Set named mailer
|
|
226
|
+
*/
|
|
227
|
+
withMailer(name) {
|
|
228
|
+
this.options.mailer = name;
|
|
229
|
+
return this;
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* Set beforeSending event handler
|
|
233
|
+
*/
|
|
234
|
+
beforeSending(handler) {
|
|
235
|
+
this.options.beforeSending = handler;
|
|
236
|
+
return this;
|
|
237
|
+
}
|
|
238
|
+
/**
|
|
239
|
+
* Set onSent event handler
|
|
240
|
+
*/
|
|
241
|
+
onSent(handler) {
|
|
242
|
+
this.options.onSent = handler;
|
|
243
|
+
return this;
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* Set onSuccess event handler
|
|
247
|
+
*/
|
|
248
|
+
onSuccess(handler) {
|
|
249
|
+
this.options.onSuccess = handler;
|
|
250
|
+
return this;
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Set onError event handler
|
|
254
|
+
*/
|
|
255
|
+
onError(handler) {
|
|
256
|
+
this.options.onError = handler;
|
|
257
|
+
return this;
|
|
258
|
+
}
|
|
259
|
+
/**
|
|
260
|
+
* Get the built options (for debugging)
|
|
261
|
+
*/
|
|
262
|
+
getOptions() {
|
|
263
|
+
return { ...this.options };
|
|
264
|
+
}
|
|
265
|
+
/**
|
|
266
|
+
* Validate the mail before sending
|
|
267
|
+
*/
|
|
268
|
+
validate() {
|
|
269
|
+
if (!this.options.to) {
|
|
270
|
+
throw new Error("Mail recipient (to) is required");
|
|
271
|
+
}
|
|
272
|
+
if (!this.options.subject) {
|
|
273
|
+
throw new Error("Mail subject is required");
|
|
274
|
+
}
|
|
275
|
+
if (!this.options.html && !this.options.text && !this.options.component) {
|
|
276
|
+
throw new Error("Mail content (html, text, or component) is required");
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* Send the email
|
|
281
|
+
*/
|
|
282
|
+
async send() {
|
|
283
|
+
this.validate();
|
|
284
|
+
return sendMail(this.options);
|
|
285
|
+
}
|
|
286
|
+
}export{Mail};//# sourceMappingURL=mail.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mail.js","sources":["../../src/mail/mail.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { Transporter } from "nodemailer";
|
|
2
|
+
import type { MailConfigurations } from "./types";
|
|
3
|
+
/**
|
|
4
|
+
* Get or create a mailer transporter from the pool
|
|
5
|
+
* Nodemailer is eagerly loaded at import time
|
|
6
|
+
*/
|
|
7
|
+
export declare function getMailer(config: MailConfigurations): Transporter;
|
|
8
|
+
/**
|
|
9
|
+
* Verify a mailer connection
|
|
10
|
+
*/
|
|
11
|
+
export declare function verifyMailer(config: MailConfigurations): Promise<boolean>;
|
|
12
|
+
/**
|
|
13
|
+
* Close a specific mailer connection
|
|
14
|
+
*/
|
|
15
|
+
export declare function closeMailer(config: MailConfigurations): void;
|
|
16
|
+
/**
|
|
17
|
+
* Close all mailer connections
|
|
18
|
+
*/
|
|
19
|
+
export declare function closeAllMailers(): void;
|
|
20
|
+
/**
|
|
21
|
+
* Get pool statistics
|
|
22
|
+
*/
|
|
23
|
+
export declare function getPoolStats(): {
|
|
24
|
+
size: number;
|
|
25
|
+
hashes: string[];
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=mailer-pool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mailer-pool.d.ts","sourceRoot":"","sources":["../../src/mail/mailer-pool.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAkFlD;;;GAGG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,kBAAkB,GAAG,WAAW,CAgCjE;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,CAS/E;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAS5D;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAOtC;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAKjE"}
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import {log}from'@warlock.js/logger';// ============================================================
|
|
2
|
+
// Eager-loaded Nodemailer Module
|
|
3
|
+
// ============================================================
|
|
4
|
+
/**
|
|
5
|
+
* Installation instructions for nodemailer
|
|
6
|
+
*/
|
|
7
|
+
const NODEMAILER_INSTALL_INSTRUCTIONS = `
|
|
8
|
+
Email functionality requires the nodemailer package.
|
|
9
|
+
Install it with:
|
|
10
|
+
|
|
11
|
+
warlock add mailer
|
|
12
|
+
|
|
13
|
+
Or manually:
|
|
14
|
+
|
|
15
|
+
npm install nodemailer
|
|
16
|
+
pnpm add nodemailer
|
|
17
|
+
yarn add nodemailer
|
|
18
|
+
`.trim();
|
|
19
|
+
/**
|
|
20
|
+
* Module availability flag
|
|
21
|
+
*/
|
|
22
|
+
let moduleExists = null;
|
|
23
|
+
/**
|
|
24
|
+
* Cached nodemailer module (loaded at import time)
|
|
25
|
+
*/
|
|
26
|
+
let nodemailerModule;
|
|
27
|
+
/**
|
|
28
|
+
* Eagerly load nodemailer module at import time
|
|
29
|
+
*/
|
|
30
|
+
async function loadNodemailerModule() {
|
|
31
|
+
try {
|
|
32
|
+
const module = await import('nodemailer');
|
|
33
|
+
nodemailerModule = module.default;
|
|
34
|
+
moduleExists = true;
|
|
35
|
+
}
|
|
36
|
+
catch {
|
|
37
|
+
moduleExists = false;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
// Kick off eager loading immediately
|
|
41
|
+
loadNodemailerModule();
|
|
42
|
+
// ============================================================
|
|
43
|
+
// Mailer Pool
|
|
44
|
+
// ============================================================
|
|
45
|
+
/**
|
|
46
|
+
* Mailer pool for connection reuse
|
|
47
|
+
* Maps config hash to transporter instance
|
|
48
|
+
*/
|
|
49
|
+
const mailerPool = new Map();
|
|
50
|
+
/**
|
|
51
|
+
* Create a hash from mail configuration for pooling
|
|
52
|
+
*/
|
|
53
|
+
function createConfigHash(config) {
|
|
54
|
+
const key = JSON.stringify({
|
|
55
|
+
host: config.host,
|
|
56
|
+
port: config.port,
|
|
57
|
+
secure: config.secure,
|
|
58
|
+
auth: config.auth,
|
|
59
|
+
username: config.username,
|
|
60
|
+
password: config.password,
|
|
61
|
+
});
|
|
62
|
+
// Simple hash function
|
|
63
|
+
let hash = 0;
|
|
64
|
+
for (let i = 0; i < key.length; i++) {
|
|
65
|
+
const char = key.charCodeAt(i);
|
|
66
|
+
hash = (hash << 5) - hash + char;
|
|
67
|
+
hash = hash & hash;
|
|
68
|
+
}
|
|
69
|
+
return `mailer_${hash}`;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Get or create a mailer transporter from the pool
|
|
73
|
+
* Nodemailer is eagerly loaded at import time
|
|
74
|
+
*/
|
|
75
|
+
function getMailer(config) {
|
|
76
|
+
if (moduleExists === false) {
|
|
77
|
+
throw new Error(`nodemailer is not installed.\n\n${NODEMAILER_INSTALL_INSTRUCTIONS}`);
|
|
78
|
+
}
|
|
79
|
+
const hash = createConfigHash(config);
|
|
80
|
+
// Return existing transporter if available
|
|
81
|
+
const existingTransporter = mailerPool.get(hash);
|
|
82
|
+
if (existingTransporter) {
|
|
83
|
+
return existingTransporter;
|
|
84
|
+
}
|
|
85
|
+
// Create new transporter
|
|
86
|
+
log.info("mail", "pool", `Creating new mailer transport (pool size: ${mailerPool.size + 1})`);
|
|
87
|
+
const { auth, username, password, requireTLS, tls, ...transportConfig } = config;
|
|
88
|
+
const transporter = nodemailerModule.createTransport({
|
|
89
|
+
requireTLS: requireTLS ?? tls,
|
|
90
|
+
auth: auth ?? {
|
|
91
|
+
user: username,
|
|
92
|
+
pass: password,
|
|
93
|
+
},
|
|
94
|
+
...transportConfig,
|
|
95
|
+
});
|
|
96
|
+
// Store in pool
|
|
97
|
+
mailerPool.set(hash, transporter);
|
|
98
|
+
return transporter;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Verify a mailer connection
|
|
102
|
+
*/
|
|
103
|
+
async function verifyMailer(config) {
|
|
104
|
+
const transporter = getMailer(config);
|
|
105
|
+
try {
|
|
106
|
+
await transporter.verify();
|
|
107
|
+
return true;
|
|
108
|
+
}
|
|
109
|
+
catch {
|
|
110
|
+
return false;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Close a specific mailer connection
|
|
115
|
+
*/
|
|
116
|
+
function closeMailer(config) {
|
|
117
|
+
const hash = createConfigHash(config);
|
|
118
|
+
const transporter = mailerPool.get(hash);
|
|
119
|
+
if (transporter) {
|
|
120
|
+
transporter.close();
|
|
121
|
+
mailerPool.delete(hash);
|
|
122
|
+
log.info("mail", "pool", `Closed mailer transport (pool size: ${mailerPool.size})`);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Close all mailer connections
|
|
127
|
+
*/
|
|
128
|
+
function closeAllMailers() {
|
|
129
|
+
for (const [hash, transporter] of mailerPool) {
|
|
130
|
+
transporter.close();
|
|
131
|
+
mailerPool.delete(hash);
|
|
132
|
+
}
|
|
133
|
+
log.info("mail", "pool", "Closed all mailer transports");
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Get pool statistics
|
|
137
|
+
*/
|
|
138
|
+
function getPoolStats() {
|
|
139
|
+
return {
|
|
140
|
+
size: mailerPool.size,
|
|
141
|
+
hashes: Array.from(mailerPool.keys()),
|
|
142
|
+
};
|
|
143
|
+
}export{closeAllMailers,closeMailer,getMailer,getPoolStats,verifyMailer};//# sourceMappingURL=mailer-pool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mailer-pool.js","sources":["../../src/mail/mailer-pool.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type React from "react";
|
|
2
|
+
/**
|
|
3
|
+
* Render a React element to HTML for email
|
|
4
|
+
*
|
|
5
|
+
* **Note:** This function requires React packages to be installed.
|
|
6
|
+
* Install them with: `warlock add react` or `npm install react react-dom`
|
|
7
|
+
*/
|
|
8
|
+
export declare function renderReactMail(element: React.ReactElement | React.ComponentType): string;
|
|
9
|
+
//# sourceMappingURL=react-mail.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"react-mail.d.ts","sourceRoot":"","sources":["../../src/mail/react-mail.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAwB/B;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC,aAAa,GAAG,MAAM,CAIzF"}
|