@bitblit/ratchet-epsilon-common 4.0.116-alpha → 4.0.119-alpha
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/lib/background/background-handler.d.ts +1 -1
- package/lib/background/background-http-adapter-handler.d.ts +1 -1
- package/lib/background/background-validator.d.ts +1 -1
- package/lib/build/ratchet-epsilon-common-info.d.ts +1 -1
- package/lib/built-in/http/built-in-auth-filters.d.ts +1 -1
- package/lib/cli/ratchet-cli-handler.d.ts +2 -2
- package/lib/config/epsilon-logger-config.d.ts +2 -2
- package/lib/config/http/filter-chain-context.d.ts +1 -1
- package/lib/config/http/http-config.d.ts +1 -1
- package/lib/epsilon-global-handler.d.ts +1 -1
- package/lib/epsilon-instance.d.ts +1 -1
- package/lib/epsilon-logging-extension-processor.d.ts +2 -2
- package/lib/http/auth/auth0-web-token-manipulator.d.ts +1 -1
- package/lib/http/auth/google-web-token-manipulator.d.ts +1 -1
- package/lib/http/auth/jwt-ratchet-local-web-token-manipulator.d.ts +2 -2
- package/lib/http/auth/local-web-token-manipulator.d.ts +3 -3
- package/lib/http/auth/web-token-manipulator.d.ts +1 -1
- package/lib/http/event-util.d.ts +1 -1
- package/lib/http/response-util.d.ts +1 -1
- package/lib/http/route/epsilon-router.d.ts +1 -1
- package/lib/http/route/router-util.d.ts +2 -2
- package/lib/index.d.ts +132 -1
- package/lib/index.mjs +344 -0
- package/lib/index.mjs.map +1 -0
- package/lib/local-container-server.d.ts +1 -1
- package/lib/local-server.d.ts +1 -1
- package/lib/sample/test-error-server.d.ts +1 -1
- package/lib/util/epsilon-config-parser.d.ts +1 -1
- package/package.json +18 -19
- package/lib/background/background-dynamo-log-table-handler.js +0 -38
- package/lib/background/background-dynamo-log-table-handler.js.map +0 -1
- package/lib/background/background-entry.js +0 -2
- package/lib/background/background-entry.js.map +0 -1
- package/lib/background/background-execution-event-type.js +0 -9
- package/lib/background/background-execution-event-type.js.map +0 -1
- package/lib/background/background-execution-event.js +0 -2
- package/lib/background/background-execution-event.js.map +0 -1
- package/lib/background/background-execution-listener.js +0 -2
- package/lib/background/background-execution-listener.js.map +0 -1
- package/lib/background/background-handler.js +0 -274
- package/lib/background/background-handler.js.map +0 -1
- package/lib/background/background-http-adapter-handler.js +0 -129
- package/lib/background/background-http-adapter-handler.js.map +0 -1
- package/lib/background/background-meta-response-internal.js +0 -2
- package/lib/background/background-meta-response-internal.js.map +0 -1
- package/lib/background/background-process-handling.js +0 -6
- package/lib/background/background-process-handling.js.map +0 -1
- package/lib/background/background-process-log-table-entry.js +0 -2
- package/lib/background/background-process-log-table-entry.js.map +0 -1
- package/lib/background/background-queue-response-internal.js +0 -2
- package/lib/background/background-queue-response-internal.js.map +0 -1
- package/lib/background/background-validator.js +0 -87
- package/lib/background/background-validator.js.map +0 -1
- package/lib/background/epsilon-background-process-error.js +0 -95
- package/lib/background/epsilon-background-process-error.js.map +0 -1
- package/lib/background/internal-background-entry.js +0 -2
- package/lib/background/internal-background-entry.js.map +0 -1
- package/lib/background/manager/abstract-background-manager.js +0 -90
- package/lib/background/manager/abstract-background-manager.js.map +0 -1
- package/lib/background/manager/aws-sqs-sns-background-manager.js +0 -154
- package/lib/background/manager/aws-sqs-sns-background-manager.js.map +0 -1
- package/lib/background/manager/background-manager-like.js +0 -2
- package/lib/background/manager/background-manager-like.js.map +0 -1
- package/lib/background/manager/background-manager.spec.js +0 -74
- package/lib/background/manager/background-manager.spec.js.map +0 -1
- package/lib/background/manager/single-thread-local-background-manager.js +0 -46
- package/lib/background/manager/single-thread-local-background-manager.js.map +0 -1
- package/lib/background/s3-background-transaction-logger.js +0 -53
- package/lib/background/s3-background-transaction-logger.js.map +0 -1
- package/lib/build/ratchet-epsilon-common-info.js +0 -15
- package/lib/build/ratchet-epsilon-common-info.js.map +0 -1
- package/lib/built-in/background/echo-processor.js +0 -17
- package/lib/built-in/background/echo-processor.js.map +0 -1
- package/lib/built-in/background/log-and-enqueue-echo-processor.js +0 -13
- package/lib/built-in/background/log-and-enqueue-echo-processor.js.map +0 -1
- package/lib/built-in/background/log-message-background-error-processor.js +0 -7
- package/lib/built-in/background/log-message-background-error-processor.js.map +0 -1
- package/lib/built-in/background/no-op-processor.js +0 -10
- package/lib/built-in/background/no-op-processor.js.map +0 -1
- package/lib/built-in/background/retry-processor.js +0 -42
- package/lib/built-in/background/retry-processor.js.map +0 -1
- package/lib/built-in/background/sample-delay-processor.js +0 -14
- package/lib/built-in/background/sample-delay-processor.js.map +0 -1
- package/lib/built-in/background/sample-input-validated-processor-data.js +0 -2
- package/lib/built-in/background/sample-input-validated-processor-data.js.map +0 -1
- package/lib/built-in/background/sample-input-validated-processor.js +0 -13
- package/lib/built-in/background/sample-input-validated-processor.js.map +0 -1
- package/lib/built-in/built-in-trace-id-generators.js +0 -22
- package/lib/built-in/built-in-trace-id-generators.js.map +0 -1
- package/lib/built-in/daemon/daemon-authorizer-function.js +0 -2
- package/lib/built-in/daemon/daemon-authorizer-function.js.map +0 -1
- package/lib/built-in/daemon/daemon-config.js +0 -2
- package/lib/built-in/daemon/daemon-config.js.map +0 -1
- package/lib/built-in/daemon/daemon-group-selection-function.js +0 -2
- package/lib/built-in/daemon/daemon-group-selection-function.js.map +0 -1
- package/lib/built-in/daemon/daemon-handler.js +0 -61
- package/lib/built-in/daemon/daemon-handler.js.map +0 -1
- package/lib/built-in/daemon/daemon-process-state-list.js +0 -2
- package/lib/built-in/daemon/daemon-process-state-list.js.map +0 -1
- package/lib/built-in/http/apollo-filter.js +0 -60
- package/lib/built-in/http/apollo-filter.js.map +0 -1
- package/lib/built-in/http/built-in-auth-filters.js +0 -108
- package/lib/built-in/http/built-in-auth-filters.js.map +0 -1
- package/lib/built-in/http/built-in-authorizers.js +0 -40
- package/lib/built-in/http/built-in-authorizers.js.map +0 -1
- package/lib/built-in/http/built-in-filters.js +0 -210
- package/lib/built-in/http/built-in-filters.js.map +0 -1
- package/lib/built-in/http/built-in-handlers.js +0 -70
- package/lib/built-in/http/built-in-handlers.js.map +0 -1
- package/lib/built-in/http/log-level-manipulation-filter.js +0 -18
- package/lib/built-in/http/log-level-manipulation-filter.js.map +0 -1
- package/lib/built-in/http/run-handler-as-filter.js +0 -61
- package/lib/built-in/http/run-handler-as-filter.js.map +0 -1
- package/lib/built-in/http/run-handler-as-filter.spec.js +0 -41
- package/lib/built-in/http/run-handler-as-filter.spec.js.map +0 -1
- package/lib/cli/ratchet-cli-handler.js +0 -21
- package/lib/cli/ratchet-cli-handler.js.map +0 -1
- package/lib/cli/run-background-process-from-command-line.js +0 -23
- package/lib/cli/run-background-process-from-command-line.js.map +0 -1
- package/lib/config/background/background-aws-config.js +0 -2
- package/lib/config/background/background-aws-config.js.map +0 -1
- package/lib/config/background/background-config.js +0 -2
- package/lib/config/background/background-config.js.map +0 -1
- package/lib/config/background/background-error-processor.js +0 -2
- package/lib/config/background/background-error-processor.js.map +0 -1
- package/lib/config/background/background-processor.js +0 -2
- package/lib/config/background/background-processor.js.map +0 -1
- package/lib/config/background/background-transaction-log.js +0 -2
- package/lib/config/background/background-transaction-log.js.map +0 -1
- package/lib/config/background/background-transaction-logger.js +0 -2
- package/lib/config/background/background-transaction-logger.js.map +0 -1
- package/lib/config/cron/abstract-cron-entry.js +0 -2
- package/lib/config/cron/abstract-cron-entry.js.map +0 -1
- package/lib/config/cron/cron-background-entry.js +0 -2
- package/lib/config/cron/cron-background-entry.js.map +0 -1
- package/lib/config/cron/cron-config.js +0 -2
- package/lib/config/cron/cron-config.js.map +0 -1
- package/lib/config/dynamo-db-config.js +0 -2
- package/lib/config/dynamo-db-config.js.map +0 -1
- package/lib/config/epsilon-config.js +0 -2
- package/lib/config/epsilon-config.js.map +0 -1
- package/lib/config/epsilon-lambda-event-handler.js +0 -2
- package/lib/config/epsilon-lambda-event-handler.js.map +0 -1
- package/lib/config/epsilon-logger-config.js +0 -2
- package/lib/config/epsilon-logger-config.js.map +0 -1
- package/lib/config/generic-aws-event-handler-function.js +0 -2
- package/lib/config/generic-aws-event-handler-function.js.map +0 -1
- package/lib/config/http/authorizer-function.js +0 -2
- package/lib/config/http/authorizer-function.js.map +0 -1
- package/lib/config/http/epsilon-authorization-context.js +0 -2
- package/lib/config/http/epsilon-authorization-context.js.map +0 -1
- package/lib/config/http/extended-api-gateway-event.js +0 -2
- package/lib/config/http/extended-api-gateway-event.js.map +0 -1
- package/lib/config/http/filter-chain-context.js +0 -2
- package/lib/config/http/filter-chain-context.js.map +0 -1
- package/lib/config/http/filter-function.js +0 -2
- package/lib/config/http/filter-function.js.map +0 -1
- package/lib/config/http/handler-function.js +0 -2
- package/lib/config/http/handler-function.js.map +0 -1
- package/lib/config/http/http-config.js +0 -2
- package/lib/config/http/http-config.js.map +0 -1
- package/lib/config/http/http-processing-config.js +0 -2
- package/lib/config/http/http-processing-config.js.map +0 -1
- package/lib/config/http/mapped-http-processing-config.js +0 -2
- package/lib/config/http/mapped-http-processing-config.js.map +0 -1
- package/lib/config/http/null-returned-object-handling.js +0 -7
- package/lib/config/http/null-returned-object-handling.js.map +0 -1
- package/lib/config/inter-api/inter-api-aws-config.js +0 -2
- package/lib/config/inter-api/inter-api-aws-config.js.map +0 -1
- package/lib/config/inter-api/inter-api-config.js +0 -2
- package/lib/config/inter-api/inter-api-config.js.map +0 -1
- package/lib/config/inter-api/inter-api-process-mapping.js +0 -2
- package/lib/config/inter-api/inter-api-process-mapping.js.map +0 -1
- package/lib/config/logging-trace-id-generator.js +0 -2
- package/lib/config/logging-trace-id-generator.js.map +0 -1
- package/lib/config/open-api/open-api-document-components.js +0 -2
- package/lib/config/open-api/open-api-document-components.js.map +0 -1
- package/lib/config/open-api/open-api-document-path.js +0 -2
- package/lib/config/open-api/open-api-document-path.js.map +0 -1
- package/lib/config/open-api/open-api-document.js +0 -2
- package/lib/config/open-api/open-api-document.js.map +0 -1
- package/lib/config/s3-config.js +0 -2
- package/lib/config/s3-config.js.map +0 -1
- package/lib/config/sns-config.js +0 -2
- package/lib/config/sns-config.js.map +0 -1
- package/lib/epsilon-build-properties.js +0 -25
- package/lib/epsilon-build-properties.js.map +0 -1
- package/lib/epsilon-constants.js +0 -48
- package/lib/epsilon-constants.js.map +0 -1
- package/lib/epsilon-global-handler.js +0 -156
- package/lib/epsilon-global-handler.js.map +0 -1
- package/lib/epsilon-instance.js +0 -2
- package/lib/epsilon-instance.js.map +0 -1
- package/lib/epsilon-logging-extension-processor.js +0 -16
- package/lib/epsilon-logging-extension-processor.js.map +0 -1
- package/lib/http/auth/api-gateway-adapter-authentication-handler.js +0 -73
- package/lib/http/auth/api-gateway-adapter-authentication-handler.js.map +0 -1
- package/lib/http/auth/auth0-web-token-manipulator.js +0 -62
- package/lib/http/auth/auth0-web-token-manipulator.js.map +0 -1
- package/lib/http/auth/basic-auth-token.js +0 -2
- package/lib/http/auth/basic-auth-token.js.map +0 -1
- package/lib/http/auth/google-web-token-manipulator.js +0 -72
- package/lib/http/auth/google-web-token-manipulator.js.map +0 -1
- package/lib/http/auth/google-web-token-manipulator.spec.js +0 -11
- package/lib/http/auth/google-web-token-manipulator.spec.js.map +0 -1
- package/lib/http/auth/jwt-ratchet-local-web-token-manipulator.js +0 -28
- package/lib/http/auth/jwt-ratchet-local-web-token-manipulator.js.map +0 -1
- package/lib/http/auth/local-web-token-manipulator.js +0 -75
- package/lib/http/auth/local-web-token-manipulator.js.map +0 -1
- package/lib/http/auth/local-web-token-manipulator.spec.js +0 -25
- package/lib/http/auth/local-web-token-manipulator.spec.js.map +0 -1
- package/lib/http/auth/web-token-manipulator.js +0 -2
- package/lib/http/auth/web-token-manipulator.js.map +0 -1
- package/lib/http/error/bad-gateway.js +0 -10
- package/lib/http/error/bad-gateway.js.map +0 -1
- package/lib/http/error/bad-request-error.js +0 -10
- package/lib/http/error/bad-request-error.js.map +0 -1
- package/lib/http/error/conflict-error.js +0 -10
- package/lib/http/error/conflict-error.js.map +0 -1
- package/lib/http/error/epsilon-http-error.js +0 -135
- package/lib/http/error/epsilon-http-error.js.map +0 -1
- package/lib/http/error/epsilon-http-error.spec.js +0 -12
- package/lib/http/error/epsilon-http-error.spec.js.map +0 -1
- package/lib/http/error/forbidden-error.js +0 -10
- package/lib/http/error/forbidden-error.js.map +0 -1
- package/lib/http/error/gateway-timeout.js +0 -10
- package/lib/http/error/gateway-timeout.js.map +0 -1
- package/lib/http/error/method-not-allowed-error.js +0 -10
- package/lib/http/error/method-not-allowed-error.js.map +0 -1
- package/lib/http/error/misconfigured-error.js +0 -10
- package/lib/http/error/misconfigured-error.js.map +0 -1
- package/lib/http/error/not-found-error.js +0 -10
- package/lib/http/error/not-found-error.js.map +0 -1
- package/lib/http/error/not-implemented.js +0 -10
- package/lib/http/error/not-implemented.js.map +0 -1
- package/lib/http/error/request-timeout-error.js +0 -10
- package/lib/http/error/request-timeout-error.js.map +0 -1
- package/lib/http/error/service-unavailable.js +0 -10
- package/lib/http/error/service-unavailable.js.map +0 -1
- package/lib/http/error/too-many-requests-error.js +0 -10
- package/lib/http/error/too-many-requests-error.js.map +0 -1
- package/lib/http/error/unauthorized-error.js +0 -10
- package/lib/http/error/unauthorized-error.js.map +0 -1
- package/lib/http/event-util.js +0 -177
- package/lib/http/event-util.js.map +0 -1
- package/lib/http/event-util.spec.js +0 -162
- package/lib/http/event-util.spec.js.map +0 -1
- package/lib/http/response-util.js +0 -142
- package/lib/http/response-util.js.map +0 -1
- package/lib/http/response-util.spec.js +0 -93
- package/lib/http/response-util.spec.js.map +0 -1
- package/lib/http/route/epsilon-router.js +0 -2
- package/lib/http/route/epsilon-router.js.map +0 -1
- package/lib/http/route/extended-auth-response-context.js +0 -2
- package/lib/http/route/extended-auth-response-context.js.map +0 -1
- package/lib/http/route/route-mapping.js +0 -2
- package/lib/http/route/route-mapping.js.map +0 -1
- package/lib/http/route/route-validator-config.js +0 -2
- package/lib/http/route/route-validator-config.js.map +0 -1
- package/lib/http/route/router-util.js +0 -234
- package/lib/http/route/router-util.js.map +0 -1
- package/lib/http/route/router-util.spec.js +0 -24
- package/lib/http/route/router-util.spec.js.map +0 -1
- package/lib/http/web-handler.js +0 -119
- package/lib/http/web-handler.js.map +0 -1
- package/lib/http/web-handler.spec.js +0 -33
- package/lib/http/web-handler.spec.js.map +0 -1
- package/lib/http/web-v2-handler.js +0 -23
- package/lib/http/web-v2-handler.js.map +0 -1
- package/lib/index.js +0 -2
- package/lib/index.js.map +0 -1
- package/lib/inter-api/inter-api-entry.js +0 -2
- package/lib/inter-api/inter-api-entry.js.map +0 -1
- package/lib/inter-api/inter-api-util.js +0 -60
- package/lib/inter-api/inter-api-util.js.map +0 -1
- package/lib/inter-api/inter-api-util.spec.js +0 -62
- package/lib/inter-api/inter-api-util.spec.js.map +0 -1
- package/lib/inter-api-manager.js +0 -66
- package/lib/inter-api-manager.js.map +0 -1
- package/lib/lambda-event-handler/cron-epsilon-lambda-event-handler.js +0 -74
- package/lib/lambda-event-handler/cron-epsilon-lambda-event-handler.js.map +0 -1
- package/lib/lambda-event-handler/cron-epsilon-lambda-event-handler.spec.js +0 -51
- package/lib/lambda-event-handler/cron-epsilon-lambda-event-handler.spec.js.map +0 -1
- package/lib/lambda-event-handler/dynamo-epsilon-lambda-event-handler.js +0 -34
- package/lib/lambda-event-handler/dynamo-epsilon-lambda-event-handler.js.map +0 -1
- package/lib/lambda-event-handler/generic-sns-epsilon-lambda-event-handler.js +0 -30
- package/lib/lambda-event-handler/generic-sns-epsilon-lambda-event-handler.js.map +0 -1
- package/lib/lambda-event-handler/inter-api-epsilon-lambda-event-handler.js +0 -24
- package/lib/lambda-event-handler/inter-api-epsilon-lambda-event-handler.js.map +0 -1
- package/lib/lambda-event-handler/s3-epsilon-lambda-event-handler.js +0 -42
- package/lib/lambda-event-handler/s3-epsilon-lambda-event-handler.js.map +0 -1
- package/lib/local-container-server.js +0 -77
- package/lib/local-container-server.js.map +0 -1
- package/lib/local-server-cert.js +0 -69
- package/lib/local-server-cert.js.map +0 -1
- package/lib/local-server.js +0 -163
- package/lib/local-server.js.map +0 -1
- package/lib/open-api-util/open-api-doc-modifications.js +0 -2
- package/lib/open-api-util/open-api-doc-modifications.js.map +0 -1
- package/lib/open-api-util/open-api-doc-modifier.js +0 -80
- package/lib/open-api-util/open-api-doc-modifier.js.map +0 -1
- package/lib/open-api-util/open-api-doc-modifier.spec.js +0 -17
- package/lib/open-api-util/open-api-doc-modifier.spec.js.map +0 -1
- package/lib/open-api-util/yaml-combiner.js +0 -28
- package/lib/open-api-util/yaml-combiner.js.map +0 -1
- package/lib/open-api-util/yaml-combiner.spec.js +0 -23
- package/lib/open-api-util/yaml-combiner.spec.js.map +0 -1
- package/lib/sample/sample-server-components.js +0 -186
- package/lib/sample/sample-server-components.js.map +0 -1
- package/lib/sample/sample-server-static-files.js +0 -595
- package/lib/sample/sample-server-static-files.js.map +0 -1
- package/lib/sample/test-error-server.js +0 -45
- package/lib/sample/test-error-server.js.map +0 -1
- package/lib/util/aws-util.js +0 -66
- package/lib/util/aws-util.js.map +0 -1
- package/lib/util/context-util.js +0 -103
- package/lib/util/context-util.js.map +0 -1
- package/lib/util/cron-util.js +0 -69
- package/lib/util/cron-util.js.map +0 -1
- package/lib/util/cron-util.spec.js +0 -125
- package/lib/util/cron-util.spec.js.map +0 -1
- package/lib/util/epsilon-config-parser.js +0 -66
- package/lib/util/epsilon-config-parser.js.map +0 -1
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { S3CacheRatchet } from '@bitblit/ratchet-aws';
|
|
2
|
-
import { AbstractBackgroundManager } from './manager/abstract-background-manager.js';
|
|
3
|
-
import { ErrorRatchet } from '@bitblit/ratchet-common/lib/lang/error-ratchet.js';
|
|
4
|
-
import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
|
|
5
|
-
export class S3BackgroundTransactionLogger {
|
|
6
|
-
cfg;
|
|
7
|
-
s3TransactionLogCacheRatchet;
|
|
8
|
-
constructor(cfg) {
|
|
9
|
-
this.cfg = cfg;
|
|
10
|
-
const err = S3BackgroundTransactionLogger.validateConfig(cfg);
|
|
11
|
-
if (err.length) {
|
|
12
|
-
ErrorRatchet.throwFormattedErr('Invalid S3BackgroundTransactionLogger config : %j', err);
|
|
13
|
-
}
|
|
14
|
-
this.s3TransactionLogCacheRatchet = new S3CacheRatchet(this.cfg.s3, this.cfg.bucket);
|
|
15
|
-
}
|
|
16
|
-
async logTransaction(txLog) {
|
|
17
|
-
if (txLog) {
|
|
18
|
-
if (txLog.request?.guid) {
|
|
19
|
-
await this.s3TransactionLogCacheRatchet.writeObjectToCacheFile(AbstractBackgroundManager.backgroundGuidToPath(this.cfg.prefix, txLog.request.guid), txLog);
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
22
|
-
Logger.warn('Could not write transaction record - no guid defined : %j', txLog);
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
else {
|
|
26
|
-
Logger.silly('Skipping write of null log');
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
async readTransactionLog(txGuid) {
|
|
30
|
-
const path = AbstractBackgroundManager.backgroundGuidToPath(this.cfg.prefix, txGuid);
|
|
31
|
-
const log = await this.s3TransactionLogCacheRatchet.fetchCacheFileAsObject(path);
|
|
32
|
-
return log;
|
|
33
|
-
}
|
|
34
|
-
static validateConfig(cfg) {
|
|
35
|
-
const rval = [];
|
|
36
|
-
if (cfg) {
|
|
37
|
-
if (!cfg.s3) {
|
|
38
|
-
rval.push('You must supply an S3 object');
|
|
39
|
-
}
|
|
40
|
-
if (!cfg.bucket) {
|
|
41
|
-
rval.push('You must supply a bucket');
|
|
42
|
-
}
|
|
43
|
-
if (!cfg.timeToLiveDays) {
|
|
44
|
-
rval.push('You must supply a timeToLiveDays');
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
else {
|
|
48
|
-
rval.push('No config defined');
|
|
49
|
-
}
|
|
50
|
-
return rval;
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
//# sourceMappingURL=s3-background-transaction-logger.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"s3-background-transaction-logger.js","sourceRoot":"","sources":["../../src/background/s3-background-transaction-logger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EAAE,YAAY,EAAE,MAAM,mDAAmD,CAAC;AACjF,OAAO,EAAE,MAAM,EAAE,MAAM,8CAA8C,CAAC;AAGtE,MAAM,OAAO,6BAA6B;IAGpB;IAFZ,4BAA4B,CAAiB;IAErD,YAAoB,GAAyC;QAAzC,QAAG,GAAH,GAAG,CAAsC;QAC3D,MAAM,GAAG,GAAa,6BAA6B,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QACxE,IAAI,GAAG,CAAC,MAAM,EAAE;YACd,YAAY,CAAC,iBAAiB,CAAC,mDAAmD,EAAE,GAAG,CAAC,CAAC;SAC1F;QACD,IAAI,CAAC,4BAA4B,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACvF,CAAC;IAEM,KAAK,CAAC,cAAc,CAAC,KAA+B;QACzD,IAAI,KAAK,EAAE;YACT,IAAI,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE;gBACvB,MAAM,IAAI,CAAC,4BAA4B,CAAC,sBAAsB,CAC5D,yBAAyB,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EACnF,KAAK,CACN,CAAC;aACH;iBAAM;gBACL,MAAM,CAAC,IAAI,CAAC,2DAA2D,EAAE,KAAK,CAAC,CAAC;aACjF;SACF;aAAM;YACL,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;SAC5C;IACH,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAAC,MAAc;QAC5C,MAAM,IAAI,GAAW,yBAAyB,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC7F,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,sBAAsB,CAA2B,IAAI,CAAC,CAAC;QAC3G,OAAO,GAAG,CAAC;IACb,CAAC;IAEM,MAAM,CAAC,cAAc,CAAC,GAAyC;QACpE,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,IAAI,GAAG,EAAE;YACP,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;gBACX,IAAI,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;aAC3C;YACD,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE;gBACf,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;aACvC;YACD,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE;gBACvB,IAAI,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;aAC/C;SACF;aAAM;YACL,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;SAChC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
export class RatchetEpsilonCommonInfo {
|
|
2
|
-
constructor() { }
|
|
3
|
-
static buildInformation() {
|
|
4
|
-
const val = {
|
|
5
|
-
version: 'LOCAL-SNAPSHOT',
|
|
6
|
-
hash: 'LOCAL-HASH',
|
|
7
|
-
branch: 'LOCAL-BRANCH',
|
|
8
|
-
tag: 'LOCAL-TAG',
|
|
9
|
-
timeBuiltISO: 'LOCAL-TIME-ISO',
|
|
10
|
-
notes: 'LOCAL-NOTES',
|
|
11
|
-
};
|
|
12
|
-
return val;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=ratchet-epsilon-common-info.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ratchet-epsilon-common-info.js","sourceRoot":"","sources":["../../src/build/ratchet-epsilon-common-info.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,wBAAwB;IAGnC,gBAAuB,CAAC;IAEjB,MAAM,CAAC,gBAAgB;QAC5B,MAAM,GAAG,GAAqB;YAC5B,OAAO,EAAE,gBAAgB;YACzB,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,cAAc;YACtB,GAAG,EAAE,WAAW;YAChB,YAAY,EAAE,gBAAgB;YAC9B,KAAK,EAAE,aAAa;SACrB,CAAC;QACF,OAAO,GAAG,CAAC;IACb,CAAC;CACF"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { ErrorRatchet } from '@bitblit/ratchet-common/lib/lang/error-ratchet.js';
|
|
2
|
-
import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
|
|
3
|
-
import { StringRatchet } from '@bitblit/ratchet-common/lib/lang/string-ratchet.js';
|
|
4
|
-
class EchoProcessor {
|
|
5
|
-
static TYPE_NAME = 'EpsilonEcho';
|
|
6
|
-
get typeName() {
|
|
7
|
-
return EchoProcessor.TYPE_NAME;
|
|
8
|
-
}
|
|
9
|
-
async handleEvent(data, mgr) {
|
|
10
|
-
Logger.info('Echo processing : %j', data);
|
|
11
|
-
if (data && StringRatchet.trimToNull(data['error'])) {
|
|
12
|
-
ErrorRatchet.throwFormattedErr('Forced error : %s', data['error']);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
export { EchoProcessor };
|
|
17
|
-
//# sourceMappingURL=echo-processor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"echo-processor.js","sourceRoot":"","sources":["../../../src/built-in/background/echo-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mDAAmD,CAAC;AACjF,OAAO,EAAE,MAAM,EAAE,MAAM,8CAA8C,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAGnF,MAAa,aAAa;IACjB,MAAM,CAAC,SAAS,GAAW,aAAa,CAAC;IAChD,IAAW,QAAQ;QACjB,OAAO,aAAa,CAAC,SAAS,CAAC;IACjC,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,IAAS,EAAE,GAA2B;QAC7D,MAAM,CAAC,IAAI,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAC;QAC1C,IAAI,IAAI,IAAI,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE;YACnD,YAAY,CAAC,iBAAiB,CAAC,mBAAmB,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;SACpE;IACH,CAAC;;SAXU,aAAa"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
|
|
2
|
-
import { EchoProcessor } from './echo-processor.js';
|
|
3
|
-
export class LogAndEnqueueEchoProcessor {
|
|
4
|
-
get typeName() {
|
|
5
|
-
return 'EpsilonLogAndEnqueueEcho';
|
|
6
|
-
}
|
|
7
|
-
async handleEvent(data, cfg) {
|
|
8
|
-
Logger.info('LogAndEnqueueEchoProcessor : %j', data);
|
|
9
|
-
await cfg.fireImmediateProcessRequestByParts(EchoProcessor.TYPE_NAME, { upstream: data });
|
|
10
|
-
Logger.info('Completed : LogAndEnqueueEchoProcessor');
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=log-and-enqueue-echo-processor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"log-and-enqueue-echo-processor.js","sourceRoot":"","sources":["../../../src/built-in/background/log-and-enqueue-echo-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,8CAA8C,CAAC;AAEtE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGpD,MAAM,OAAO,0BAA0B;IACrC,IAAW,QAAQ;QACjB,OAAO,0BAA0B,CAAC;IACpC,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,IAAS,EAAE,GAA0B;QAC5D,MAAM,CAAC,IAAI,CAAC,iCAAiC,EAAE,IAAI,CAAC,CAAC;QACrD,MAAM,GAAG,CAAC,kCAAkC,CAAC,aAAa,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1F,MAAM,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;IACxD,CAAC;CACF"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
|
|
2
|
-
export class LogMessageBackgroundErrorProcessor {
|
|
3
|
-
async handleError(submission, error) {
|
|
4
|
-
Logger.error('-------- ERROR PROCESSED : %j : %s----', submission, error);
|
|
5
|
-
}
|
|
6
|
-
}
|
|
7
|
-
//# sourceMappingURL=log-message-background-error-processor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"log-message-background-error-processor.js","sourceRoot":"","sources":["../../../src/built-in/background/log-message-background-error-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,8CAA8C,CAAC;AAKtE,MAAM,OAAO,kCAAkC;IACtC,KAAK,CAAC,WAAW,CAAC,UAAwC,EAAE,KAAY;QAC7E,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;IAC5E,CAAC;CACF"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
|
|
2
|
-
export class NoOpProcessor {
|
|
3
|
-
get typeName() {
|
|
4
|
-
return 'EpsilonNoOp';
|
|
5
|
-
}
|
|
6
|
-
async handleEvent(data, mgr) {
|
|
7
|
-
Logger.silly('Hit the no-op proc');
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=no-op-processor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"no-op-processor.js","sourceRoot":"","sources":["../../../src/built-in/background/no-op-processor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,8CAA8C,CAAC;AAGtE,MAAM,OAAO,aAAa;IACxB,IAAW,QAAQ;QACjB,OAAO,aAAa,CAAC;IACvB,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,IAAS,EAAE,GAA2B;QAE7D,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACrC,CAAC;CACF"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
|
|
2
|
-
import { PromiseRatchet } from '@bitblit/ratchet-common/lib/lang/promise-ratchet.js';
|
|
3
|
-
import { DurationRatchet } from '@bitblit/ratchet-common/lib/lang/duration-ratchet.js';
|
|
4
|
-
import { NumberRatchet } from '@bitblit/ratchet-common/lib/lang/number-ratchet.js';
|
|
5
|
-
import { StringRatchet } from '@bitblit/ratchet-common/lib/lang/string-ratchet.js';
|
|
6
|
-
class RetryProcessor {
|
|
7
|
-
delegate;
|
|
8
|
-
opts;
|
|
9
|
-
static RETRY_FIELD_NAME = '___RetryProcessorTryNumber';
|
|
10
|
-
constructor(delegate, opts) {
|
|
11
|
-
this.delegate = delegate;
|
|
12
|
-
this.opts = opts;
|
|
13
|
-
}
|
|
14
|
-
get typeName() {
|
|
15
|
-
return StringRatchet.trimToEmpty(this.opts?.typePrefix) + this.delegate.typeName + StringRatchet.trimToEmpty(this.opts?.typeSuffix);
|
|
16
|
-
}
|
|
17
|
-
async handleEvent(data, mgr) {
|
|
18
|
-
const tryNumber = data && data[RetryProcessor.RETRY_FIELD_NAME] ? NumberRatchet.safeNumber(data[RetryProcessor.RETRY_FIELD_NAME]) : 1;
|
|
19
|
-
const dataCopy = data ? Object.assign({}, data) : null;
|
|
20
|
-
delete dataCopy[RetryProcessor.RETRY_FIELD_NAME];
|
|
21
|
-
Logger.info('RetryProcessor : %s : Try %d of %d', this.delegate.typeName, tryNumber, this.opts.retryCount);
|
|
22
|
-
try {
|
|
23
|
-
await this.delegate.handleEvent(dataCopy, mgr);
|
|
24
|
-
}
|
|
25
|
-
catch (err) {
|
|
26
|
-
Logger.error('Failed to process : %s', err, err);
|
|
27
|
-
if (tryNumber < this.opts.retryCount) {
|
|
28
|
-
const waitTimeMS = tryNumber * this.opts.baseDelayMS;
|
|
29
|
-
Logger.info('Firing automatic retry after a wait of %s', DurationRatchet.formatMsDuration(waitTimeMS));
|
|
30
|
-
await PromiseRatchet.wait(waitTimeMS);
|
|
31
|
-
const wrapped = dataCopy || {};
|
|
32
|
-
wrapped[RetryProcessor.RETRY_FIELD_NAME] = tryNumber + 1;
|
|
33
|
-
await mgr.fireImmediateProcessRequestByParts(this.typeName, wrapped);
|
|
34
|
-
}
|
|
35
|
-
else {
|
|
36
|
-
Logger.error('That was the last try - giving up');
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
export { RetryProcessor };
|
|
42
|
-
//# sourceMappingURL=retry-processor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"retry-processor.js","sourceRoot":"","sources":["../../../src/built-in/background/retry-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,8CAA8C,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,qDAAqD,CAAC;AACrF,OAAO,EAAE,eAAe,EAAE,MAAM,sDAAsD,CAAC;AACvF,OAAO,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAEnF,OAAO,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AAGnF,MAAa,cAAc;IAGL;IAA4C;IAFxD,MAAM,CAAU,gBAAgB,GAAW,4BAA4B,CAAC;IAEhF,YAAoB,QAAkC,EAAU,IAA2B;QAAvE,aAAQ,GAAR,QAAQ,CAA0B;QAAU,SAAI,GAAJ,IAAI,CAAuB;IAAG,CAAC;IAE/F,IAAW,QAAQ;QACjB,OAAO,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,GAAG,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACtI,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,IAAS,EAAE,GAA0B;QAC5D,MAAM,SAAS,GACb,IAAI,IAAI,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACtH,MAAM,QAAQ,GAAQ,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5D,OAAO,QAAQ,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;QACjD,MAAM,CAAC,IAAI,CAAC,oCAAoC,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC3G,IAAI;YACF,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;SAChD;QAAC,OAAO,GAAG,EAAE;YACZ,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YACjD,IAAI,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBACpC,MAAM,UAAU,GAAW,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;gBAC7D,MAAM,CAAC,IAAI,CAAC,2CAA2C,EAAE,eAAe,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;gBACvG,MAAM,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACtC,MAAM,OAAO,GAAQ,QAAQ,IAAI,EAAE,CAAC;gBACpC,OAAO,CAAC,cAAc,CAAC,gBAAgB,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC;gBACzD,MAAM,GAAG,CAAC,kCAAkC,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;aACtE;iBAAM;gBACL,MAAM,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;aACnD;SACF;IACH,CAAC;;SA9BU,cAAc"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
|
|
2
|
-
import { PromiseRatchet } from '@bitblit/ratchet-common/lib/lang/promise-ratchet.js';
|
|
3
|
-
export class SampleDelayProcessor {
|
|
4
|
-
get typeName() {
|
|
5
|
-
return 'EpsilonSampleDelay';
|
|
6
|
-
}
|
|
7
|
-
async handleEvent(data, mgr) {
|
|
8
|
-
const delayMS = Math.floor(Math.random() * 5000);
|
|
9
|
-
Logger.info('Running sample processor for %d', delayMS);
|
|
10
|
-
await PromiseRatchet.wait(delayMS);
|
|
11
|
-
Logger.info('Sample processor complete');
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=sample-delay-processor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sample-delay-processor.js","sourceRoot":"","sources":["../../../src/built-in/background/sample-delay-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,8CAA8C,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,qDAAqD,CAAC;AAIrF,MAAM,OAAO,oBAAoB;IAC/B,IAAW,QAAQ;QACjB,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,IAAS,EAAE,GAA2B;QAC7D,MAAM,OAAO,GAAW,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC;QACzD,MAAM,CAAC,IAAI,CAAC,iCAAiC,EAAE,OAAO,CAAC,CAAC;QACxD,MAAM,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnC,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IAC3C,CAAC;CACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sample-input-validated-processor-data.js","sourceRoot":"","sources":["../../../src/built-in/background/sample-input-validated-processor-data.ts"],"names":[],"mappings":""}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
|
|
2
|
-
export class SampleInputValidatedProcessor {
|
|
3
|
-
get typeName() {
|
|
4
|
-
return 'EpsilonSampleInputValidated';
|
|
5
|
-
}
|
|
6
|
-
async handleEvent(data, mgr) {
|
|
7
|
-
Logger.info('Running SampleInputValidatedProcessor, data was : %j', data);
|
|
8
|
-
}
|
|
9
|
-
get dataSchemaName() {
|
|
10
|
-
return 'BackgroundSampleInputValidatedProcessorData';
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=sample-input-validated-processor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sample-input-validated-processor.js","sourceRoot":"","sources":["../../../src/built-in/background/sample-input-validated-processor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,8CAA8C,CAAC;AAKtE,MAAM,OAAO,6BAA6B;IACxC,IAAW,QAAQ;QACjB,OAAO,6BAA6B,CAAC;IACvC,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,IAAuC,EAAE,GAA2B;QAC3F,MAAM,CAAC,IAAI,CAAC,sDAAsD,EAAE,IAAI,CAAC,CAAC;IAC5E,CAAC;IAED,IAAW,cAAc;QACvB,OAAO,6CAA6C,CAAC;IACvD,CAAC;CACF"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { StringRatchet } from '@bitblit/ratchet-common/lib/lang/string-ratchet.js';
|
|
2
|
-
import { ContextUtil } from '../util/context-util.js';
|
|
3
|
-
export class BuiltInTraceIdGenerators {
|
|
4
|
-
static fullAwsRequestId() {
|
|
5
|
-
let rval = ContextUtil.currentRequestId();
|
|
6
|
-
rval = rval ?? StringRatchet.createType4Guid();
|
|
7
|
-
return rval;
|
|
8
|
-
}
|
|
9
|
-
static shortAwsRequestId() {
|
|
10
|
-
let rval = BuiltInTraceIdGenerators.fullAwsRequestId();
|
|
11
|
-
if (rval.length > 10) {
|
|
12
|
-
let idx = rval.lastIndexOf('-');
|
|
13
|
-
idx = idx === -1 ? rval.length - 10 : idx;
|
|
14
|
-
rval = rval.substring(idx);
|
|
15
|
-
}
|
|
16
|
-
return rval;
|
|
17
|
-
}
|
|
18
|
-
static fixedLengthHex(length = 10) {
|
|
19
|
-
return StringRatchet.createRandomHexString(length);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
//# sourceMappingURL=built-in-trace-id-generators.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"built-in-trace-id-generators.js","sourceRoot":"","sources":["../../src/built-in/built-in-trace-id-generators.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oDAAoD,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,MAAM,OAAO,wBAAwB;IAC5B,MAAM,CAAC,gBAAgB;QAC5B,IAAI,IAAI,GAAW,WAAW,CAAC,gBAAgB,EAAE,CAAC;QAClD,IAAI,GAAG,IAAI,IAAI,aAAa,CAAC,eAAe,EAAE,CAAC;QAC/C,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,iBAAiB;QAC7B,IAAI,IAAI,GAAW,wBAAwB,CAAC,gBAAgB,EAAE,CAAC;QAC/D,IAAI,IAAI,CAAC,MAAM,GAAG,EAAE,EAAE;YACpB,IAAI,GAAG,GAAW,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YACxC,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;YAC1C,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;SAC5B;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,cAAc,CAAC,SAAiB,EAAE;QAC9C,OAAO,aAAa,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;IACrD,CAAC;CACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"daemon-authorizer-function.js","sourceRoot":"","sources":["../../../src/built-in/daemon/daemon-authorizer-function.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"daemon-config.js","sourceRoot":"","sources":["../../../src/built-in/daemon/daemon-config.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"daemon-group-selection-function.js","sourceRoot":"","sources":["../../../src/built-in/daemon/daemon-group-selection-function.ts"],"names":[],"mappings":""}
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
|
|
2
|
-
import { NotFoundError } from '../../http/error/not-found-error.js';
|
|
3
|
-
import { StringRatchet } from '@bitblit/ratchet-common/lib/lang/string-ratchet.js';
|
|
4
|
-
class DaemonHandler {
|
|
5
|
-
daemon;
|
|
6
|
-
inConfig;
|
|
7
|
-
static ALLOW_EVERYTHING_AUTHORIZER = async (evt, proc) => {
|
|
8
|
-
return true;
|
|
9
|
-
};
|
|
10
|
-
config;
|
|
11
|
-
constructor(daemon, inConfig) {
|
|
12
|
-
this.daemon = daemon;
|
|
13
|
-
this.inConfig = inConfig;
|
|
14
|
-
this.config = inConfig || {};
|
|
15
|
-
this.config.authorizer = this.config.authorizer || DaemonHandler.ALLOW_EVERYTHING_AUTHORIZER;
|
|
16
|
-
this.config.groupSelector = this.config.groupSelector || ((evt) => Promise.resolve(daemon.defaultGroup));
|
|
17
|
-
this.config.fetchDaemonStatusByPublicTokenPathParameter =
|
|
18
|
-
StringRatchet.trimToNull(this.config.fetchDaemonStatusByPublicTokenPathParameter) || 'publicToken';
|
|
19
|
-
this.config.fetchDaemonStatusPathParameter = StringRatchet.trimToNull(this.config.fetchDaemonStatusPathParameter) || 'key';
|
|
20
|
-
}
|
|
21
|
-
async fetchDaemonStatusByPublicToken(evt) {
|
|
22
|
-
const publicToken = evt.pathParameters[this.config.fetchDaemonStatusByPublicTokenPathParameter];
|
|
23
|
-
Logger.info('Fetching daemon status for token: %s', publicToken);
|
|
24
|
-
let rval = await this.daemon.statFromPublicToken(publicToken);
|
|
25
|
-
const canRead = rval ? await this.config.authorizer(evt, rval) : false;
|
|
26
|
-
rval = canRead ? rval : null;
|
|
27
|
-
if (rval === null) {
|
|
28
|
-
throw new NotFoundError('No such token : ' + publicToken);
|
|
29
|
-
}
|
|
30
|
-
return rval;
|
|
31
|
-
}
|
|
32
|
-
async fetchDaemonStatus(evt) {
|
|
33
|
-
const daemonKey = evt.pathParameters[this.config.fetchDaemonStatusPathParameter];
|
|
34
|
-
Logger.info('Fetching daemon status for : %s', daemonKey);
|
|
35
|
-
let rval = await this.daemon.stat(daemonKey);
|
|
36
|
-
const canRead = rval ? await this.config.authorizer(evt, rval) : false;
|
|
37
|
-
rval = canRead ? rval : null;
|
|
38
|
-
if (rval === null) {
|
|
39
|
-
throw new NotFoundError('No such key : ' + daemonKey);
|
|
40
|
-
}
|
|
41
|
-
return rval;
|
|
42
|
-
}
|
|
43
|
-
async listDaemonStatus(evt) {
|
|
44
|
-
const group = await this.config.groupSelector(evt);
|
|
45
|
-
const keys = await this.daemon.list(group);
|
|
46
|
-
const allowed = [];
|
|
47
|
-
for (let i = 0; i < keys.length; i++) {
|
|
48
|
-
const canRead = await this.config.authorizer(evt, keys[i]);
|
|
49
|
-
if (canRead) {
|
|
50
|
-
allowed.push(keys[i]);
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
const rval = {
|
|
54
|
-
results: allowed,
|
|
55
|
-
nextToken: null,
|
|
56
|
-
};
|
|
57
|
-
return rval;
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
export { DaemonHandler };
|
|
61
|
-
//# sourceMappingURL=daemon-handler.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"daemon-handler.js","sourceRoot":"","sources":["../../../src/built-in/daemon/daemon-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"daemon-process-state-list.js","sourceRoot":"","sources":["../../../src/built-in/daemon/daemon-process-state-list.ts"],"names":[],"mappings":""}
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
|
|
2
|
-
import { PromiseRatchet } from '@bitblit/ratchet-common/lib/lang/promise-ratchet.js';
|
|
3
|
-
import { TimeoutToken } from '@bitblit/ratchet-common/lib/lang/timeout-token.js';
|
|
4
|
-
import { RequestTimeoutError } from '../../http/error/request-timeout-error.js';
|
|
5
|
-
import { StringRatchet } from '@bitblit/ratchet-common/lib/lang/string-ratchet.js';
|
|
6
|
-
export class ApolloFilter {
|
|
7
|
-
static CACHE_APOLLO_HANDLER;
|
|
8
|
-
static async handlePathWithApollo(fCtx, apolloPathRegex, apolloServer, createHandlerOptions) {
|
|
9
|
-
if (fCtx.event?.path && apolloPathRegex && apolloPathRegex.test(fCtx.event.path)) {
|
|
10
|
-
fCtx.result = await ApolloFilter.processApolloRequest(fCtx.event, fCtx.context, apolloServer, createHandlerOptions);
|
|
11
|
-
return false;
|
|
12
|
-
}
|
|
13
|
-
else {
|
|
14
|
-
return true;
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
static async processApolloRequest(event, context, apolloServer, createHandlerOptions) {
|
|
18
|
-
Logger.silly('Processing event with apollo: %j', event);
|
|
19
|
-
let rval = null;
|
|
20
|
-
if (!ApolloFilter.CACHE_APOLLO_HANDLER) {
|
|
21
|
-
ApolloFilter.CACHE_APOLLO_HANDLER = apolloServer.createHandler(createHandlerOptions);
|
|
22
|
-
}
|
|
23
|
-
event.multiValueHeaders = event.multiValueHeaders || {};
|
|
24
|
-
Object.keys(event.headers).forEach((k) => {
|
|
25
|
-
event.multiValueHeaders[k] = [event.headers[k]];
|
|
26
|
-
});
|
|
27
|
-
event.httpMethod = event.httpMethod.toUpperCase();
|
|
28
|
-
if (event.isBase64Encoded && !!event.body) {
|
|
29
|
-
event.body = Buffer.from(event.body, 'base64').toString();
|
|
30
|
-
event.isBase64Encoded = false;
|
|
31
|
-
}
|
|
32
|
-
const apolloPromise = ApolloFilter.CACHE_APOLLO_HANDLER(event, context, null) || Promise.resolve(null);
|
|
33
|
-
const timeoutMS = context.getRemainingTimeInMillis() - 500;
|
|
34
|
-
let result = null;
|
|
35
|
-
if (timeoutMS) {
|
|
36
|
-
result = await PromiseRatchet.timeout(apolloPromise, 'Apollo timed out after ' + timeoutMS + ' ms.', timeoutMS);
|
|
37
|
-
}
|
|
38
|
-
else {
|
|
39
|
-
Logger.warn('No timeout set even after defaulting for Apollo');
|
|
40
|
-
result = await apolloPromise;
|
|
41
|
-
}
|
|
42
|
-
if (TimeoutToken.isTimeoutToken(result)) {
|
|
43
|
-
result.writeToLog();
|
|
44
|
-
throw new RequestTimeoutError('Timed out');
|
|
45
|
-
}
|
|
46
|
-
rval = result;
|
|
47
|
-
if (StringRatchet.trimToEmpty(rval?.body).startsWith('<!DOCTYPE html>')) {
|
|
48
|
-
Logger.info('Forcing content type to html');
|
|
49
|
-
rval.headers = rval.headers || {};
|
|
50
|
-
rval.headers['content-type'] = 'text/html';
|
|
51
|
-
}
|
|
52
|
-
return rval;
|
|
53
|
-
}
|
|
54
|
-
static addApolloFilterToList(filters, apolloPathRegex, apolloServer, createHandlerOptions) {
|
|
55
|
-
if (filters) {
|
|
56
|
-
filters.push((fCtx) => ApolloFilter.handlePathWithApollo(fCtx, apolloPathRegex, apolloServer, createHandlerOptions));
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
//# sourceMappingURL=apollo-filter.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"apollo-filter.js","sourceRoot":"","sources":["../../../src/built-in/http/apollo-filter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
import { StringRatchet } from '@bitblit/ratchet-common/lib/lang/string-ratchet.js';
|
|
2
|
-
import { UnauthorizedError } from '../../http/error/unauthorized-error.js';
|
|
3
|
-
import { MisconfiguredError } from '../../http/error/misconfigured-error.js';
|
|
4
|
-
import { ForbiddenError } from '../../http/error/forbidden-error.js';
|
|
5
|
-
import { EventUtil } from '../../http/event-util.js';
|
|
6
|
-
export class BuiltInAuthFilters {
|
|
7
|
-
static async requireAllRolesInCommonJwt(fCtx, requiredRoleAllOf) {
|
|
8
|
-
if (!requiredRoleAllOf || requiredRoleAllOf.length === 0) {
|
|
9
|
-
throw new MisconfiguredError('You must require at least 1 role');
|
|
10
|
-
}
|
|
11
|
-
if (!fCtx.event?.authorization?.auth) {
|
|
12
|
-
throw new UnauthorizedError('May not proceed, not authenticated');
|
|
13
|
-
}
|
|
14
|
-
else {
|
|
15
|
-
const asJwt = fCtx.event.authorization.auth;
|
|
16
|
-
if (!asJwt.roles || asJwt.roles.length === 0) {
|
|
17
|
-
throw new UnauthorizedError('Required role not found');
|
|
18
|
-
}
|
|
19
|
-
else {
|
|
20
|
-
requiredRoleAllOf.forEach((r) => {
|
|
21
|
-
if (!asJwt.roles.includes(r)) {
|
|
22
|
-
throw new UnauthorizedError('Required role not found');
|
|
23
|
-
}
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
return true;
|
|
28
|
-
}
|
|
29
|
-
static async requireAnyRoleInCommonJwt(fCtx, requiredRoleOneOf) {
|
|
30
|
-
if (!requiredRoleOneOf || requiredRoleOneOf.length === 0) {
|
|
31
|
-
throw new MisconfiguredError('You must require at least 1 role');
|
|
32
|
-
}
|
|
33
|
-
if (!fCtx.event?.authorization?.auth) {
|
|
34
|
-
throw new UnauthorizedError('May not proceed, not authenticated');
|
|
35
|
-
}
|
|
36
|
-
else {
|
|
37
|
-
const asJwt = fCtx.event.authorization.auth;
|
|
38
|
-
if (!asJwt.roles || asJwt.roles.length === 0) {
|
|
39
|
-
throw new UnauthorizedError('Required role not found');
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
let found = false;
|
|
43
|
-
requiredRoleOneOf.forEach((r) => {
|
|
44
|
-
if (!found && asJwt.roles.includes(r)) {
|
|
45
|
-
found = true;
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
if (!found) {
|
|
49
|
-
throw new UnauthorizedError('Required role not found');
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
return true;
|
|
54
|
-
}
|
|
55
|
-
static async parseAuthorizationHeader(fCtx, webTokenManipulators) {
|
|
56
|
-
if (!fCtx?.event || !webTokenManipulators || (Array.isArray(webTokenManipulators) && !webTokenManipulators.length)) {
|
|
57
|
-
throw new MisconfiguredError('Cannot continue - missing event or encryption');
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
const tokenString = EventUtil.extractBearerTokenFromEvent(fCtx?.event);
|
|
61
|
-
if (!Array.isArray(webTokenManipulators)) {
|
|
62
|
-
webTokenManipulators = [webTokenManipulators];
|
|
63
|
-
}
|
|
64
|
-
for (let i = 0; i < webTokenManipulators.length && !fCtx?.event?.authorization?.auth; i++) {
|
|
65
|
-
const manipulator = webTokenManipulators[i];
|
|
66
|
-
try {
|
|
67
|
-
const token = await manipulator.extractTokenFromAuthorizationHeader(tokenString);
|
|
68
|
-
fCtx.event.authorization = {
|
|
69
|
-
raw: tokenString,
|
|
70
|
-
auth: token,
|
|
71
|
-
error: null,
|
|
72
|
-
};
|
|
73
|
-
}
|
|
74
|
-
catch (err) {
|
|
75
|
-
fCtx.event.authorization = {
|
|
76
|
-
raw: tokenString,
|
|
77
|
-
auth: null,
|
|
78
|
-
error: err['message'],
|
|
79
|
-
};
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
return true;
|
|
84
|
-
}
|
|
85
|
-
static async applyOpenApiAuthorization(fCtx) {
|
|
86
|
-
if (StringRatchet.trimToNull(fCtx?.routeAndParse?.mapping?.authorizerName)) {
|
|
87
|
-
const authorizer = fCtx?.authenticators?.get(fCtx.routeAndParse.mapping.authorizerName);
|
|
88
|
-
if (authorizer) {
|
|
89
|
-
if (fCtx?.event?.authorization?.auth) {
|
|
90
|
-
const allowed = await authorizer(fCtx.event.authorization, fCtx.event, fCtx.routeAndParse.mapping);
|
|
91
|
-
if (!allowed) {
|
|
92
|
-
throw new ForbiddenError('You lack privileges to see this endpoint');
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
else {
|
|
96
|
-
throw new UnauthorizedError('You need to supply credentials for this endpoint');
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
else {
|
|
100
|
-
throw new MisconfiguredError().withFormattedErrorMessage('Authorizer %s requested but not found', fCtx.routeAndParse.mapping.authorizerName);
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
else {
|
|
104
|
-
}
|
|
105
|
-
return true;
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
//# sourceMappingURL=built-in-auth-filters.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"built-in-auth-filters.js","sourceRoot":"","sources":["../../../src/built-in/http/built-in-auth-filters.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { Logger } from '@bitblit/ratchet-common/lib/logger/logger.js';
|
|
2
|
-
export class BuiltInAuthorizers {
|
|
3
|
-
static async simpleNoAuthenticationLogAccess(authorizationContext, evt) {
|
|
4
|
-
Logger.debug('Auth requested for %s : %j', evt.path, authorizationContext?.auth);
|
|
5
|
-
return true;
|
|
6
|
-
}
|
|
7
|
-
static async simpleLoggedInAuth(authorizationContext, evt) {
|
|
8
|
-
const rval = !!authorizationContext?.auth;
|
|
9
|
-
Logger.silly('SimpleLoggedInAuth returning %s for %s', rval, evt.path);
|
|
10
|
-
return rval;
|
|
11
|
-
}
|
|
12
|
-
static async simpleRoleRouteAuth(authorizationContext, event, route, requiredRoleOneOf = null, requiredRoleAllOf = null) {
|
|
13
|
-
let rval = true;
|
|
14
|
-
const token = authorizationContext?.auth;
|
|
15
|
-
if (token) {
|
|
16
|
-
if (requiredRoleOneOf) {
|
|
17
|
-
requiredRoleOneOf.forEach((r) => {
|
|
18
|
-
rval = rval || token.roles.indexOf(r) > -1;
|
|
19
|
-
});
|
|
20
|
-
if (!rval) {
|
|
21
|
-
Logger.warn('Request to %s failed to find at least one of %j', route.path, requiredRoleOneOf);
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
if (rval && requiredRoleAllOf) {
|
|
25
|
-
requiredRoleAllOf.forEach((r) => {
|
|
26
|
-
rval = rval && token.roles.indexOf(r) > -1;
|
|
27
|
-
});
|
|
28
|
-
if (!rval) {
|
|
29
|
-
Logger.warn('Request to %s failed to find all of %j', route.path, requiredRoleAllOf);
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
Logger.warn('Cannot authenticate - no parsed auth found');
|
|
35
|
-
rval = false;
|
|
36
|
-
}
|
|
37
|
-
return rval;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
//# sourceMappingURL=built-in-authorizers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"built-in-authorizers.js","sourceRoot":"","sources":["../../../src/built-in/http/built-in-authorizers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,8CAA8C,CAAC;AAMtE,MAAM,OAAO,kBAAkB;IACtB,MAAM,CAAC,KAAK,CAAC,+BAA+B,CACjD,oBAAsD,EACtD,GAAoB;QAGpB,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,GAAG,CAAC,IAAI,EAAE,oBAAoB,EAAE,IAAI,CAAC,CAAC;QACjF,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,oBAAsD,EAAE,GAAoB;QAEjH,MAAM,IAAI,GAAY,CAAC,CAAC,oBAAoB,EAAE,IAAI,CAAC;QACnD,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QACvE,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,mBAAmB,CACrC,oBAAsD,EACtD,KAAsB,EACtB,KAAmB,EACnB,oBAA8B,IAAI,EAClC,oBAA8B,IAAI;QAElC,IAAI,IAAI,GAAY,IAAI,CAAC;QACzB,MAAM,KAAK,GAAwB,oBAAoB,EAAE,IAAI,CAAC;QAC9D,IAAI,KAAK,EAAE;YACT,IAAI,iBAAiB,EAAE;gBACrB,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;oBAC9B,IAAI,GAAG,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC7C,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,IAAI,EAAE;oBACT,MAAM,CAAC,IAAI,CAAC,iDAAiD,EAAE,KAAK,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;iBAC/F;aACF;YACD,IAAI,IAAI,IAAI,iBAAiB,EAAE;gBAC7B,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;oBAC9B,IAAI,GAAG,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC7C,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,IAAI,EAAE;oBACT,MAAM,CAAC,IAAI,CAAC,wCAAwC,EAAE,KAAK,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;iBACtF;aACF;SACF;aAAM;YACL,MAAM,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;YAC1D,IAAI,GAAG,KAAK,CAAC;SACd;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
|