@decaf-ts/integrations 0.3.11 → 0.3.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/integrations.cjs +1649 -2
- package/dist/integrations.js +1885 -2
- package/lib/cjs/blob/azure/AzureBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/azure/index.cjs +2 -2
- package/lib/cjs/blob/core/BlobErrors.cjs +2 -2
- package/lib/cjs/blob/core/BlobKey.cjs +2 -2
- package/lib/cjs/blob/core/BlobStoreFactory.cjs +2 -2
- package/lib/cjs/blob/core/BlobStoreService.cjs +2 -2
- package/lib/cjs/blob/core/BlobTypes.cjs +2 -2
- package/lib/cjs/blob/core/BlobValue.cjs +2 -2
- package/lib/cjs/blob/core/index.cjs +2 -2
- package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/gcp/index.cjs +2 -2
- package/lib/cjs/blob/index.cjs +2 -2
- package/lib/cjs/blob/ipfs/IpfsBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/ipfs/IpfsKeyIndex.cjs +2 -2
- package/lib/cjs/blob/ipfs/LocalJsonIpfsKeyIndex.cjs +2 -2
- package/lib/cjs/blob/ipfs/MemoryIpfsKeyIndex.cjs +2 -2
- package/lib/cjs/blob/ipfs/PostgresIpfsKeyIndex.cjs +2 -2
- package/lib/cjs/blob/ipfs/index.cjs +2 -2
- package/lib/cjs/blob/local/LocalBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/local/index.cjs +2 -2
- package/lib/cjs/blob/memory/MemoryBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/memory/index.cjs +2 -2
- package/lib/cjs/blob/s3/MinioBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/s3/R2BlobStoreService.cjs +2 -2
- package/lib/cjs/blob/s3/S3BlobStoreService.cjs +2 -2
- package/lib/cjs/blob/s3/index.cjs +2 -2
- package/lib/cjs/docker/DockerComposeService.cjs +2 -2
- package/lib/cjs/docker/index.cjs +2 -2
- package/lib/cjs/graph/engine/constants.cjs +2 -2
- package/lib/cjs/graph/engine/decorators.cjs +2 -2
- package/lib/cjs/graph/engine/errors/GraphCycleError.cjs +2 -2
- package/lib/cjs/graph/engine/errors/GraphExecutionError.cjs +2 -2
- package/lib/cjs/graph/engine/errors/GraphInputError.cjs +2 -2
- package/lib/cjs/graph/engine/errors/GraphLoopLimitError.cjs +2 -2
- package/lib/cjs/graph/engine/errors/GraphPinningError.cjs +2 -2
- package/lib/cjs/graph/engine/errors/GraphPortError.cjs +2 -2
- package/lib/cjs/graph/engine/errors/GraphStoreError.cjs +2 -2
- package/lib/cjs/graph/engine/errors/GraphTopologyError.cjs +2 -2
- package/lib/cjs/graph/engine/errors/index.cjs +2 -2
- package/lib/cjs/graph/engine/events/GraphExecutionEvent.cjs +2 -2
- package/lib/cjs/graph/engine/events/GraphExecutionEventEmitter.cjs +2 -2
- package/lib/cjs/graph/engine/events/GraphExecutionEventFactory.cjs +2 -2
- package/lib/cjs/graph/engine/events/GraphExecutionObserver.cjs +2 -2
- package/lib/cjs/graph/engine/events/index.cjs +2 -2
- package/lib/cjs/graph/engine/execution/CodeGraphNodeExecutor.cjs +28 -31
- package/lib/cjs/graph/engine/execution/CodeSandboxEvaluator.cjs +2 -2
- package/lib/cjs/graph/engine/execution/GraphExecutionContext.cjs +2 -2
- package/lib/cjs/graph/engine/execution/GraphExecutionEngine.cjs +22 -3
- package/lib/cjs/graph/engine/execution/GraphExecutionFrame.cjs +2 -2
- package/lib/cjs/graph/engine/execution/GraphExecutionResult.cjs +2 -2
- package/lib/cjs/graph/engine/execution/GraphNodeExecutor.cjs +2 -2
- package/lib/cjs/graph/engine/execution/IsolatedVmCodeSandboxEvaluator.cjs +128 -2
- package/lib/cjs/graph/engine/execution/LogGraphNodeExecutor.cjs +19 -0
- package/lib/cjs/graph/engine/execution/SwitchGraphNodeExecutor.cjs +23 -6
- package/lib/cjs/graph/engine/execution/index.cjs +3 -2
- package/lib/cjs/graph/engine/index.cjs +3 -2
- package/lib/cjs/graph/engine/loops/ConditionExpressionEvaluator.cjs +2 -2
- package/lib/cjs/graph/engine/loops/ForeachGraphNodeExecutor.cjs +3 -2
- package/lib/cjs/graph/engine/loops/GraphConditionEvaluator.cjs +2 -2
- package/lib/cjs/graph/engine/loops/GraphLoopExecutionContext.cjs +2 -2
- package/lib/cjs/graph/engine/loops/UntilGraphNodeExecutor.cjs +2 -2
- package/lib/cjs/graph/engine/loops/WhileGraphNodeExecutor.cjs +2 -2
- package/lib/cjs/graph/engine/loops/index.cjs +2 -2
- package/lib/cjs/graph/engine/pinning/GraphPinningDependencyResolver.cjs +2 -2
- package/lib/cjs/graph/engine/pinning/GraphPinningMetadata.cjs +2 -2
- package/lib/cjs/graph/engine/pinning/GraphPinningPolicy.cjs +2 -2
- package/lib/cjs/graph/engine/pinning/GraphPinningService.cjs +2 -2
- package/lib/cjs/graph/engine/pinning/index.cjs +2 -2
- package/lib/cjs/graph/engine/planning/GraphExecutionPlan.cjs +2 -2
- package/lib/cjs/graph/engine/planning/GraphExecutionPlanEdge.cjs +2 -2
- package/lib/cjs/graph/engine/planning/GraphExecutionPlanLayer.cjs +2 -2
- package/lib/cjs/graph/engine/planning/GraphExecutionPlanNode.cjs +2 -2
- package/lib/cjs/graph/engine/planning/GraphExecutionPlanner.cjs +2 -2
- package/lib/cjs/graph/engine/planning/GraphRelationResolver.cjs +2 -2
- package/lib/cjs/graph/engine/planning/GraphTopology.cjs +2 -2
- package/lib/cjs/graph/engine/planning/index.cjs +2 -2
- package/lib/cjs/graph/engine/registry/GraphNodeExecutorRegistry.cjs +2 -2
- package/lib/cjs/graph/engine/registry/GraphNodeExecutorResolver.cjs +2 -2
- package/lib/cjs/graph/engine/registry/index.cjs +2 -2
- package/lib/cjs/graph/engine/snapshots/GraphExecutionSnapshotMapper.cjs +2 -2
- package/lib/cjs/graph/engine/snapshots/index.cjs +2 -2
- package/lib/cjs/graph/engine/store/GraphCachedValue.cjs +2 -2
- package/lib/cjs/graph/engine/store/GraphValueKey.cjs +2 -2
- package/lib/cjs/graph/engine/store/GraphValueStore.cjs +2 -2
- package/lib/cjs/graph/engine/store/GraphValueStoreAdapter.cjs +2 -2
- package/lib/cjs/graph/engine/store/InMemoryGraphValueStoreAdapter.cjs +2 -2
- package/lib/cjs/graph/engine/store/index.cjs +2 -2
- package/lib/cjs/graph/engine/types.cjs +2 -2
- package/lib/cjs/graph/engine/validation/GraphDefinitionValidator.cjs +2 -2
- package/lib/cjs/graph/engine/validation/GraphPortSchemaResolver.cjs +2 -2
- package/lib/cjs/graph/engine/validation/GraphValueValidator.cjs +2 -2
- package/lib/cjs/graph/engine/validation/index.cjs +2 -2
- package/lib/cjs/graph/index.cjs +2 -2
- package/lib/cjs/graph/shared/constants.cjs +2 -2
- package/lib/cjs/graph/shared/index.cjs +2 -2
- package/lib/cjs/graph/shared/nodes/agent.cjs +2 -2
- package/lib/cjs/graph/shared/nodes/base.cjs +2 -2
- package/lib/cjs/graph/shared/nodes/category-styles.cjs +2 -2
- package/lib/cjs/graph/shared/nodes/flow-control.cjs +92 -11
- package/lib/cjs/graph/shared/nodes/index.cjs +2 -2
- package/lib/cjs/graph/shared/nodes/triggers.cjs +2 -2
- package/lib/cjs/graph/shared/types.cjs +2 -2
- package/lib/cjs/index.cjs +5 -5
- package/lib/cjs/keycloak/index.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakAuthService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakClientService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakIdentityProviderService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakRealmService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakRoleService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakUserService.cjs +2 -2
- package/lib/cjs/keycloak/services/index.cjs +2 -2
- package/lib/cjs/keycloak/services/runtime.cjs +2 -2
- package/lib/cjs/keycloak/types.cjs +2 -2
- package/lib/cjs/kibana/helpers.cjs +2 -2
- package/lib/cjs/kibana/index.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaAuthService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaDashboardService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaDataViewService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaRoleService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaSpaceService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaUserService.cjs +2 -2
- package/lib/cjs/kibana/services/index.cjs +2 -2
- package/lib/cjs/kibana/services/runtime.cjs +2 -2
- package/lib/cjs/kibana/types.cjs +2 -2
- package/lib/cjs/namespaces/index.cjs +2 -2
- package/lib/cjs/namespaces/models/authorization-model.cjs +2 -2
- package/lib/cjs/namespaces/models/effective-permission.model.cjs +2 -2
- package/lib/cjs/namespaces/models/group-membership.model.cjs +2 -2
- package/lib/cjs/namespaces/models/group.model.cjs +2 -2
- package/lib/cjs/namespaces/models/index.cjs +2 -2
- package/lib/cjs/namespaces/models/inheritance-block.model.cjs +2 -2
- package/lib/cjs/namespaces/models/org-unit-closure.model.cjs +2 -2
- package/lib/cjs/namespaces/models/org-unit-membership.model.cjs +2 -2
- package/lib/cjs/namespaces/models/org-unit-profile.model.cjs +2 -2
- package/lib/cjs/namespaces/models/org-unit.model.cjs +2 -2
- package/lib/cjs/namespaces/models/permission.model.cjs +2 -2
- package/lib/cjs/namespaces/models/principal.model.cjs +2 -2
- package/lib/cjs/namespaces/models/protected-resource.model.cjs +2 -2
- package/lib/cjs/namespaces/models/resource-grant.model.cjs +2 -2
- package/lib/cjs/namespaces/models/role-assignment.model.cjs +2 -2
- package/lib/cjs/namespaces/models/role-permission.model.cjs +2 -2
- package/lib/cjs/namespaces/models/role.model.cjs +2 -2
- package/lib/cjs/namespaces/models/storage-binding.model.cjs +2 -2
- package/lib/cjs/namespaces/models/tenant-membership.model.cjs +2 -2
- package/lib/cjs/namespaces/models/tenant-profile.model.cjs +2 -2
- package/lib/cjs/namespaces/models/tenant.model.cjs +2 -2
- package/lib/cjs/namespaces/models/user.model.cjs +2 -2
- package/lib/cjs/namespaces/org-based-authorization-system.cjs +2 -2
- package/lib/cjs/namespaces/org-based-authorization-system.models.cjs +2 -2
- package/lib/cjs/namespaces/org-based-authorization-system.services.cjs +2 -2
- package/lib/cjs/namespaces/services/authz.service.cjs +2 -2
- package/lib/cjs/namespaces/services/bootstrap.service.cjs +2 -2
- package/lib/cjs/namespaces/services/effective-permission.service.cjs +2 -2
- package/lib/cjs/namespaces/services/group-membership.service.cjs +2 -2
- package/lib/cjs/namespaces/services/group.service.cjs +2 -2
- package/lib/cjs/namespaces/services/index.cjs +2 -2
- package/lib/cjs/namespaces/services/inheritance-block.service.cjs +2 -2
- package/lib/cjs/namespaces/services/org-unit-closure.service.cjs +2 -2
- package/lib/cjs/namespaces/services/org-unit-membership.service.cjs +2 -2
- package/lib/cjs/namespaces/services/org-unit-profile.service.cjs +2 -2
- package/lib/cjs/namespaces/services/org-unit.service.cjs +2 -2
- package/lib/cjs/namespaces/services/permission.service.cjs +2 -2
- package/lib/cjs/namespaces/services/principal.service.cjs +2 -2
- package/lib/cjs/namespaces/services/protected-resource.service.cjs +2 -2
- package/lib/cjs/namespaces/services/resource-grant.service.cjs +2 -2
- package/lib/cjs/namespaces/services/resource-lifecycle.service.cjs +2 -2
- package/lib/cjs/namespaces/services/role-assignment.service.cjs +2 -2
- package/lib/cjs/namespaces/services/role-permission.service.cjs +2 -2
- package/lib/cjs/namespaces/services/role.service.cjs +2 -2
- package/lib/cjs/namespaces/services/storage-binding.service.cjs +2 -2
- package/lib/cjs/namespaces/services/system-management.service.cjs +2 -2
- package/lib/cjs/namespaces/services/tenant-membership.service.cjs +2 -2
- package/lib/cjs/namespaces/services/tenant-profile.service.cjs +2 -2
- package/lib/cjs/namespaces/services/tenant.service.cjs +2 -2
- package/lib/cjs/namespaces/services/user.service.cjs +2 -2
- package/lib/cjs/namespaces/types.cjs +2 -2
- package/lib/cjs/namespaces/utils.cjs +2 -2
- package/lib/cjs/nest/authService.cjs +2 -2
- package/lib/cjs/nest/graph/GraphExecutionController.cjs +41 -52
- package/lib/cjs/nest/graph/GraphExecutionModule.cjs +47 -42
- package/lib/cjs/nest/graph/GraphExecutionResultModel.cjs +2 -20
- package/lib/cjs/nest/graph/GraphExecutorRegistryFactory.cjs +13 -48
- package/lib/cjs/nest/graph/GraphResultService.cjs +54 -0
- package/lib/cjs/nest/graph/GraphWorkflowModel.cjs +44 -0
- package/lib/cjs/nest/graph/GraphWorkflowService.cjs +62 -0
- package/lib/cjs/nest/graph/index.cjs +5 -8
- package/lib/cjs/nest/graph/main.cjs +3 -3
- package/lib/cjs/nest/index.cjs +2 -2
- package/lib/cjs/nest/keycloakAuthHandler.cjs +2 -2
- package/lib/cjs/nest/keycloakModule.cjs +2 -2
- package/lib/cjs/nest/logging.cjs +2 -2
- package/lib/cjs/nest/types.cjs +2 -2
- package/lib/cjs/nest/utils.cjs +2 -2
- package/lib/cjs/secrets/aws/AwsSecretService.cjs +2 -2
- package/lib/cjs/secrets/aws/AwsSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/aws/index.cjs +2 -2
- package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs +2 -2
- package/lib/cjs/secrets/azure/AzureKeyVaultSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/azure/index.cjs +2 -2
- package/lib/cjs/secrets/core/SecretErrors.cjs +2 -2
- package/lib/cjs/secrets/core/SecretName.cjs +2 -2
- package/lib/cjs/secrets/core/SecretReference.cjs +2 -2
- package/lib/cjs/secrets/core/SecretSerialization.cjs +2 -2
- package/lib/cjs/secrets/core/SecretService.cjs +2 -2
- package/lib/cjs/secrets/core/SecretTypes.cjs +2 -2
- package/lib/cjs/secrets/core/index.cjs +2 -2
- package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs +2 -2
- package/lib/cjs/secrets/gcp/GcpSecretManagerServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/gcp/index.cjs +2 -2
- package/lib/cjs/secrets/index.cjs +2 -2
- package/lib/cjs/secrets/model/ModelSecretCrypto.cjs +2 -2
- package/lib/cjs/secrets/model/ModelSecretService.cjs +2 -2
- package/lib/cjs/secrets/model/ModelSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/model/Secret.cjs +2 -2
- package/lib/cjs/secrets/model/index.cjs +2 -2
- package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs +2 -2
- package/lib/cjs/secrets/onepassword/OnePasswordSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/onepassword/index.cjs +2 -2
- package/lib/cjs/secrets/vault/VaultSecretService.cjs +2 -2
- package/lib/cjs/secrets/vault/VaultSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/vault/index.cjs +2 -2
- package/lib/cjs/shared/runtime.cjs +2 -2
- package/lib/cjs/utils.cjs +2 -2
- package/lib/esm/blob/azure/AzureBlobStoreService.js +1 -1
- package/lib/esm/blob/azure/index.js +1 -1
- package/lib/esm/blob/core/BlobErrors.js +1 -1
- package/lib/esm/blob/core/BlobKey.js +1 -1
- package/lib/esm/blob/core/BlobStoreFactory.js +1 -1
- package/lib/esm/blob/core/BlobStoreService.js +1 -1
- package/lib/esm/blob/core/BlobTypes.js +1 -1
- package/lib/esm/blob/core/BlobValue.js +1 -1
- package/lib/esm/blob/core/index.js +1 -1
- package/lib/esm/blob/gcp/GcsBlobStoreService.js +1 -1
- package/lib/esm/blob/gcp/index.js +1 -1
- package/lib/esm/blob/index.js +1 -1
- package/lib/esm/blob/ipfs/IpfsBlobStoreService.js +1 -1
- package/lib/esm/blob/ipfs/IpfsKeyIndex.js +1 -1
- package/lib/esm/blob/ipfs/LocalJsonIpfsKeyIndex.js +1 -1
- package/lib/esm/blob/ipfs/MemoryIpfsKeyIndex.js +1 -1
- package/lib/esm/blob/ipfs/PostgresIpfsKeyIndex.js +1 -1
- package/lib/esm/blob/ipfs/index.js +1 -1
- package/lib/esm/blob/local/LocalBlobStoreService.js +1 -1
- package/lib/esm/blob/local/index.js +1 -1
- package/lib/esm/blob/memory/MemoryBlobStoreService.js +1 -1
- package/lib/esm/blob/memory/index.js +1 -1
- package/lib/esm/blob/s3/MinioBlobStoreService.js +1 -1
- package/lib/esm/blob/s3/R2BlobStoreService.js +1 -1
- package/lib/esm/blob/s3/S3BlobStoreService.js +1 -1
- package/lib/esm/blob/s3/index.js +1 -1
- package/lib/esm/docker/DockerComposeService.js +1 -1
- package/lib/esm/docker/index.js +1 -1
- package/lib/esm/graph/engine/constants.js +1 -1
- package/lib/esm/graph/engine/decorators.js +1 -1
- package/lib/esm/graph/engine/errors/GraphCycleError.js +1 -1
- package/lib/esm/graph/engine/errors/GraphExecutionError.js +1 -1
- package/lib/esm/graph/engine/errors/GraphInputError.js +1 -1
- package/lib/esm/graph/engine/errors/GraphLoopLimitError.js +1 -1
- package/lib/esm/graph/engine/errors/GraphPinningError.js +1 -1
- package/lib/esm/graph/engine/errors/GraphPortError.js +1 -1
- package/lib/esm/graph/engine/errors/GraphStoreError.js +1 -1
- package/lib/esm/graph/engine/errors/GraphTopologyError.js +1 -1
- package/lib/esm/graph/engine/errors/index.js +1 -1
- package/lib/esm/graph/engine/events/GraphExecutionEvent.js +1 -1
- package/lib/esm/graph/engine/events/GraphExecutionEventEmitter.js +1 -1
- package/lib/esm/graph/engine/events/GraphExecutionEventFactory.js +1 -1
- package/lib/esm/graph/engine/events/GraphExecutionObserver.js +1 -1
- package/lib/esm/graph/engine/events/index.js +1 -1
- package/lib/esm/graph/engine/execution/CodeGraphNodeExecutor.js +27 -30
- package/lib/esm/graph/engine/execution/CodeSandboxEvaluator.js +1 -1
- package/lib/esm/graph/engine/execution/GraphExecutionContext.js +1 -1
- package/lib/esm/graph/engine/execution/GraphExecutionEngine.js +21 -2
- package/lib/esm/graph/engine/execution/GraphExecutionFrame.js +1 -1
- package/lib/esm/graph/engine/execution/GraphExecutionResult.js +1 -1
- package/lib/esm/graph/engine/execution/GraphNodeExecutor.js +1 -1
- package/lib/esm/graph/engine/execution/IsolatedVmCodeSandboxEvaluator.js +127 -1
- package/lib/esm/graph/engine/execution/LogGraphNodeExecutor.js +14 -0
- package/lib/esm/graph/engine/execution/SwitchGraphNodeExecutor.js +22 -5
- package/lib/esm/graph/engine/execution/index.js +2 -1
- package/lib/esm/graph/engine/index.js +2 -1
- package/lib/esm/graph/engine/loops/ConditionExpressionEvaluator.js +1 -1
- package/lib/esm/graph/engine/loops/ForeachGraphNodeExecutor.js +2 -1
- package/lib/esm/graph/engine/loops/GraphConditionEvaluator.js +1 -1
- package/lib/esm/graph/engine/loops/GraphLoopExecutionContext.js +1 -1
- package/lib/esm/graph/engine/loops/UntilGraphNodeExecutor.js +1 -1
- package/lib/esm/graph/engine/loops/WhileGraphNodeExecutor.js +1 -1
- package/lib/esm/graph/engine/loops/index.js +1 -1
- package/lib/esm/graph/engine/pinning/GraphPinningDependencyResolver.js +1 -1
- package/lib/esm/graph/engine/pinning/GraphPinningMetadata.js +1 -1
- package/lib/esm/graph/engine/pinning/GraphPinningPolicy.js +1 -1
- package/lib/esm/graph/engine/pinning/GraphPinningService.js +1 -1
- package/lib/esm/graph/engine/pinning/index.js +1 -1
- package/lib/esm/graph/engine/planning/GraphExecutionPlan.js +1 -1
- package/lib/esm/graph/engine/planning/GraphExecutionPlanEdge.js +1 -1
- package/lib/esm/graph/engine/planning/GraphExecutionPlanLayer.js +1 -1
- package/lib/esm/graph/engine/planning/GraphExecutionPlanNode.js +1 -1
- package/lib/esm/graph/engine/planning/GraphExecutionPlanner.js +1 -1
- package/lib/esm/graph/engine/planning/GraphRelationResolver.js +1 -1
- package/lib/esm/graph/engine/planning/GraphTopology.js +1 -1
- package/lib/esm/graph/engine/planning/index.js +1 -1
- package/lib/esm/graph/engine/registry/GraphNodeExecutorRegistry.js +1 -1
- package/lib/esm/graph/engine/registry/GraphNodeExecutorResolver.js +1 -1
- package/lib/esm/graph/engine/registry/index.js +1 -1
- package/lib/esm/graph/engine/snapshots/GraphExecutionSnapshotMapper.js +1 -1
- package/lib/esm/graph/engine/snapshots/index.js +1 -1
- package/lib/esm/graph/engine/store/GraphCachedValue.js +1 -1
- package/lib/esm/graph/engine/store/GraphValueKey.js +1 -1
- package/lib/esm/graph/engine/store/GraphValueStore.js +1 -1
- package/lib/esm/graph/engine/store/GraphValueStoreAdapter.js +1 -1
- package/lib/esm/graph/engine/store/InMemoryGraphValueStoreAdapter.js +1 -1
- package/lib/esm/graph/engine/store/index.js +1 -1
- package/lib/esm/graph/engine/types.js +1 -1
- package/lib/esm/graph/engine/validation/GraphDefinitionValidator.js +1 -1
- package/lib/esm/graph/engine/validation/GraphPortSchemaResolver.js +1 -1
- package/lib/esm/graph/engine/validation/GraphValueValidator.js +1 -1
- package/lib/esm/graph/engine/validation/index.js +1 -1
- package/lib/esm/graph/index.js +1 -1
- package/lib/esm/graph/shared/constants.js +1 -1
- package/lib/esm/graph/shared/index.js +1 -1
- package/lib/esm/graph/shared/nodes/agent.js +1 -1
- package/lib/esm/graph/shared/nodes/base.js +1 -1
- package/lib/esm/graph/shared/nodes/category-styles.js +1 -1
- package/lib/esm/graph/shared/nodes/flow-control.js +91 -10
- package/lib/esm/graph/shared/nodes/index.js +1 -1
- package/lib/esm/graph/shared/nodes/triggers.js +1 -1
- package/lib/esm/graph/shared/types.js +1 -1
- package/lib/esm/index.js +4 -4
- package/lib/esm/keycloak/index.js +1 -1
- package/lib/esm/keycloak/services/KeycloakAuthService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakClientService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakIdentityProviderService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakRealmService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakRoleService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakUserService.js +1 -1
- package/lib/esm/keycloak/services/index.js +1 -1
- package/lib/esm/keycloak/services/runtime.js +1 -1
- package/lib/esm/keycloak/types.js +1 -1
- package/lib/esm/kibana/helpers.js +1 -1
- package/lib/esm/kibana/index.js +1 -1
- package/lib/esm/kibana/services/KibanaAuthService.js +1 -1
- package/lib/esm/kibana/services/KibanaDashboardService.js +1 -1
- package/lib/esm/kibana/services/KibanaDataViewService.js +1 -1
- package/lib/esm/kibana/services/KibanaRoleService.js +1 -1
- package/lib/esm/kibana/services/KibanaService.js +1 -1
- package/lib/esm/kibana/services/KibanaSpaceService.js +1 -1
- package/lib/esm/kibana/services/KibanaUserService.js +1 -1
- package/lib/esm/kibana/services/index.js +1 -1
- package/lib/esm/kibana/services/runtime.js +1 -1
- package/lib/esm/kibana/types.js +1 -1
- package/lib/esm/namespaces/index.js +1 -1
- package/lib/esm/namespaces/models/authorization-model.js +1 -1
- package/lib/esm/namespaces/models/effective-permission.model.js +1 -1
- package/lib/esm/namespaces/models/group-membership.model.js +1 -1
- package/lib/esm/namespaces/models/group.model.js +1 -1
- package/lib/esm/namespaces/models/index.js +1 -1
- package/lib/esm/namespaces/models/inheritance-block.model.js +1 -1
- package/lib/esm/namespaces/models/org-unit-closure.model.js +1 -1
- package/lib/esm/namespaces/models/org-unit-membership.model.js +1 -1
- package/lib/esm/namespaces/models/org-unit-profile.model.js +1 -1
- package/lib/esm/namespaces/models/org-unit.model.js +1 -1
- package/lib/esm/namespaces/models/permission.model.js +1 -1
- package/lib/esm/namespaces/models/principal.model.js +1 -1
- package/lib/esm/namespaces/models/protected-resource.model.js +1 -1
- package/lib/esm/namespaces/models/resource-grant.model.js +1 -1
- package/lib/esm/namespaces/models/role-assignment.model.js +1 -1
- package/lib/esm/namespaces/models/role-permission.model.js +1 -1
- package/lib/esm/namespaces/models/role.model.js +1 -1
- package/lib/esm/namespaces/models/storage-binding.model.js +1 -1
- package/lib/esm/namespaces/models/tenant-membership.model.js +1 -1
- package/lib/esm/namespaces/models/tenant-profile.model.js +1 -1
- package/lib/esm/namespaces/models/tenant.model.js +1 -1
- package/lib/esm/namespaces/models/user.model.js +1 -1
- package/lib/esm/namespaces/org-based-authorization-system.js +1 -1
- package/lib/esm/namespaces/org-based-authorization-system.models.js +1 -1
- package/lib/esm/namespaces/org-based-authorization-system.services.js +1 -1
- package/lib/esm/namespaces/services/authz.service.js +1 -1
- package/lib/esm/namespaces/services/bootstrap.service.js +1 -1
- package/lib/esm/namespaces/services/effective-permission.service.js +1 -1
- package/lib/esm/namespaces/services/group-membership.service.js +1 -1
- package/lib/esm/namespaces/services/group.service.js +1 -1
- package/lib/esm/namespaces/services/index.js +1 -1
- package/lib/esm/namespaces/services/inheritance-block.service.js +1 -1
- package/lib/esm/namespaces/services/org-unit-closure.service.js +1 -1
- package/lib/esm/namespaces/services/org-unit-membership.service.js +1 -1
- package/lib/esm/namespaces/services/org-unit-profile.service.js +1 -1
- package/lib/esm/namespaces/services/org-unit.service.js +1 -1
- package/lib/esm/namespaces/services/permission.service.js +1 -1
- package/lib/esm/namespaces/services/principal.service.js +1 -1
- package/lib/esm/namespaces/services/protected-resource.service.js +1 -1
- package/lib/esm/namespaces/services/resource-grant.service.js +1 -1
- package/lib/esm/namespaces/services/resource-lifecycle.service.js +1 -1
- package/lib/esm/namespaces/services/role-assignment.service.js +1 -1
- package/lib/esm/namespaces/services/role-permission.service.js +1 -1
- package/lib/esm/namespaces/services/role.service.js +1 -1
- package/lib/esm/namespaces/services/storage-binding.service.js +1 -1
- package/lib/esm/namespaces/services/system-management.service.js +1 -1
- package/lib/esm/namespaces/services/tenant-membership.service.js +1 -1
- package/lib/esm/namespaces/services/tenant-profile.service.js +1 -1
- package/lib/esm/namespaces/services/tenant.service.js +1 -1
- package/lib/esm/namespaces/services/user.service.js +1 -1
- package/lib/esm/namespaces/types.js +1 -1
- package/lib/esm/namespaces/utils.js +1 -1
- package/lib/esm/nest/authService.js +1 -1
- package/lib/esm/nest/graph/GraphExecutionController.js +40 -51
- package/lib/esm/nest/graph/GraphExecutionModule.js +12 -40
- package/lib/esm/nest/graph/GraphExecutionResultModel.js +1 -19
- package/lib/esm/nest/graph/GraphExecutorRegistryFactory.js +13 -48
- package/lib/esm/nest/graph/GraphResultService.js +45 -0
- package/lib/esm/nest/graph/GraphWorkflowModel.js +35 -0
- package/lib/esm/nest/graph/GraphWorkflowService.js +53 -0
- package/lib/esm/nest/graph/index.js +4 -7
- package/lib/esm/nest/graph/main.js +2 -2
- package/lib/esm/nest/index.js +1 -1
- package/lib/esm/nest/keycloakAuthHandler.js +1 -1
- package/lib/esm/nest/keycloakModule.js +1 -1
- package/lib/esm/nest/logging.js +1 -1
- package/lib/esm/nest/types.js +1 -1
- package/lib/esm/nest/utils.js +1 -1
- package/lib/esm/secrets/aws/AwsSecretService.js +1 -1
- package/lib/esm/secrets/aws/AwsSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/aws/index.js +1 -1
- package/lib/esm/secrets/azure/AzureKeyVaultSecretService.js +1 -1
- package/lib/esm/secrets/azure/AzureKeyVaultSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/azure/index.js +1 -1
- package/lib/esm/secrets/core/SecretErrors.js +1 -1
- package/lib/esm/secrets/core/SecretName.js +1 -1
- package/lib/esm/secrets/core/SecretReference.js +1 -1
- package/lib/esm/secrets/core/SecretSerialization.js +1 -1
- package/lib/esm/secrets/core/SecretService.js +1 -1
- package/lib/esm/secrets/core/SecretTypes.js +1 -1
- package/lib/esm/secrets/core/index.js +1 -1
- package/lib/esm/secrets/gcp/GcpSecretManagerService.js +1 -1
- package/lib/esm/secrets/gcp/GcpSecretManagerServiceConfig.js +1 -1
- package/lib/esm/secrets/gcp/index.js +1 -1
- package/lib/esm/secrets/index.js +1 -1
- package/lib/esm/secrets/model/ModelSecretCrypto.js +1 -1
- package/lib/esm/secrets/model/ModelSecretService.js +1 -1
- package/lib/esm/secrets/model/ModelSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/model/Secret.js +1 -1
- package/lib/esm/secrets/model/index.js +1 -1
- package/lib/esm/secrets/onepassword/OnePasswordSecretService.js +1 -1
- package/lib/esm/secrets/onepassword/OnePasswordSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/onepassword/index.js +1 -1
- package/lib/esm/secrets/vault/VaultSecretService.js +1 -1
- package/lib/esm/secrets/vault/VaultSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/vault/index.js +1 -1
- package/lib/esm/shared/runtime.js +1 -1
- package/lib/esm/utils.js +1 -1
- package/lib/types/graph/engine/execution/CodeGraphNodeExecutor.d.cts +17 -17
- package/lib/types/graph/engine/execution/CodeGraphNodeExecutor.d.mts +17 -17
- package/lib/types/graph/engine/execution/CodeSandboxEvaluator.d.cts +23 -0
- package/lib/types/graph/engine/execution/CodeSandboxEvaluator.d.mts +23 -0
- package/lib/types/graph/engine/execution/GraphExecutionEngine.d.cts +6 -0
- package/lib/types/graph/engine/execution/GraphExecutionEngine.d.mts +6 -0
- package/lib/types/graph/engine/execution/IsolatedVmCodeSandboxEvaluator.d.cts +18 -0
- package/lib/types/graph/engine/execution/IsolatedVmCodeSandboxEvaluator.d.mts +18 -0
- package/lib/types/graph/engine/execution/LogGraphNodeExecutor.d.cts +19 -0
- package/lib/types/graph/engine/execution/LogGraphNodeExecutor.d.mts +19 -0
- package/lib/types/graph/engine/execution/SwitchGraphNodeExecutor.d.cts +3 -2
- package/lib/types/graph/engine/execution/SwitchGraphNodeExecutor.d.mts +3 -2
- package/lib/types/graph/engine/execution/index.d.cts +1 -0
- package/lib/types/graph/engine/execution/index.d.mts +1 -0
- package/lib/types/graph/engine/index.d.cts +1 -0
- package/lib/types/graph/engine/index.d.mts +1 -0
- package/lib/types/graph/shared/nodes/flow-control.d.cts +29 -3
- package/lib/types/graph/shared/nodes/flow-control.d.mts +29 -3
- package/lib/types/graph/shared/types.d.cts +6 -0
- package/lib/types/graph/shared/types.d.mts +6 -0
- package/lib/types/index.d.cts +2 -2
- package/lib/types/index.d.mts +2 -2
- package/lib/types/nest/graph/GraphExecutionController.d.cts +11 -42
- package/lib/types/nest/graph/GraphExecutionController.d.mts +11 -42
- package/lib/types/nest/graph/GraphExecutionModule.d.cts +9 -29
- package/lib/types/nest/graph/GraphExecutionModule.d.mts +9 -29
- package/lib/types/nest/graph/GraphExecutionResultModel.d.cts +0 -34
- package/lib/types/nest/graph/GraphExecutionResultModel.d.mts +0 -34
- package/lib/types/nest/graph/GraphExecutorRegistryFactory.d.cts +9 -9
- package/lib/types/nest/graph/GraphExecutorRegistryFactory.d.mts +9 -9
- package/lib/types/nest/graph/GraphResultService.d.cts +8 -0
- package/lib/types/nest/graph/GraphResultService.d.mts +8 -0
- package/lib/types/nest/graph/GraphWorkflowModel.d.cts +7 -0
- package/lib/types/nest/graph/GraphWorkflowModel.d.mts +7 -0
- package/lib/types/nest/graph/GraphWorkflowService.d.cts +7 -0
- package/lib/types/nest/graph/GraphWorkflowService.d.mts +7 -0
- package/lib/types/nest/graph/index.d.cts +3 -6
- package/lib/types/nest/graph/index.d.mts +3 -6
- package/package.json +1 -1
- package/dist/integrations.cjs.map +0 -1
- package/dist/integrations.js.map +0 -1
- package/lib/cjs/blob/azure/AzureBlobStoreService.cjs.map +0 -1
- package/lib/cjs/blob/azure/index.cjs.map +0 -1
- package/lib/cjs/blob/core/BlobErrors.cjs.map +0 -1
- package/lib/cjs/blob/core/BlobKey.cjs.map +0 -1
- package/lib/cjs/blob/core/BlobStoreFactory.cjs.map +0 -1
- package/lib/cjs/blob/core/BlobStoreService.cjs.map +0 -1
- package/lib/cjs/blob/core/BlobTypes.cjs.map +0 -1
- package/lib/cjs/blob/core/BlobValue.cjs.map +0 -1
- package/lib/cjs/blob/core/index.cjs.map +0 -1
- package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs.map +0 -1
- package/lib/cjs/blob/gcp/index.cjs.map +0 -1
- package/lib/cjs/blob/index.cjs.map +0 -1
- package/lib/cjs/blob/ipfs/IpfsBlobStoreService.cjs.map +0 -1
- package/lib/cjs/blob/ipfs/IpfsKeyIndex.cjs.map +0 -1
- package/lib/cjs/blob/ipfs/LocalJsonIpfsKeyIndex.cjs.map +0 -1
- package/lib/cjs/blob/ipfs/MemoryIpfsKeyIndex.cjs.map +0 -1
- package/lib/cjs/blob/ipfs/PostgresIpfsKeyIndex.cjs.map +0 -1
- package/lib/cjs/blob/ipfs/index.cjs.map +0 -1
- package/lib/cjs/blob/local/LocalBlobStoreService.cjs.map +0 -1
- package/lib/cjs/blob/local/index.cjs.map +0 -1
- package/lib/cjs/blob/memory/MemoryBlobStoreService.cjs.map +0 -1
- package/lib/cjs/blob/memory/index.cjs.map +0 -1
- package/lib/cjs/blob/s3/MinioBlobStoreService.cjs.map +0 -1
- package/lib/cjs/blob/s3/R2BlobStoreService.cjs.map +0 -1
- package/lib/cjs/blob/s3/S3BlobStoreService.cjs.map +0 -1
- package/lib/cjs/blob/s3/index.cjs.map +0 -1
- package/lib/cjs/docker/DockerComposeService.cjs.map +0 -1
- package/lib/cjs/docker/index.cjs.map +0 -1
- package/lib/cjs/graph/engine/constants.cjs.map +0 -1
- package/lib/cjs/graph/engine/decorators.cjs.map +0 -1
- package/lib/cjs/graph/engine/errors/GraphCycleError.cjs.map +0 -1
- package/lib/cjs/graph/engine/errors/GraphExecutionError.cjs.map +0 -1
- package/lib/cjs/graph/engine/errors/GraphInputError.cjs.map +0 -1
- package/lib/cjs/graph/engine/errors/GraphLoopLimitError.cjs.map +0 -1
- package/lib/cjs/graph/engine/errors/GraphPinningError.cjs.map +0 -1
- package/lib/cjs/graph/engine/errors/GraphPortError.cjs.map +0 -1
- package/lib/cjs/graph/engine/errors/GraphStoreError.cjs.map +0 -1
- package/lib/cjs/graph/engine/errors/GraphTopologyError.cjs.map +0 -1
- package/lib/cjs/graph/engine/errors/index.cjs.map +0 -1
- package/lib/cjs/graph/engine/events/GraphExecutionEvent.cjs.map +0 -1
- package/lib/cjs/graph/engine/events/GraphExecutionEventEmitter.cjs.map +0 -1
- package/lib/cjs/graph/engine/events/GraphExecutionEventFactory.cjs.map +0 -1
- package/lib/cjs/graph/engine/events/GraphExecutionObserver.cjs.map +0 -1
- package/lib/cjs/graph/engine/events/index.cjs.map +0 -1
- package/lib/cjs/graph/engine/execution/CodeGraphNodeExecutor.cjs.map +0 -1
- package/lib/cjs/graph/engine/execution/CodeSandboxEvaluator.cjs.map +0 -1
- package/lib/cjs/graph/engine/execution/GraphExecutionContext.cjs.map +0 -1
- package/lib/cjs/graph/engine/execution/GraphExecutionEngine.cjs.map +0 -1
- package/lib/cjs/graph/engine/execution/GraphExecutionFrame.cjs.map +0 -1
- package/lib/cjs/graph/engine/execution/GraphExecutionResult.cjs.map +0 -1
- package/lib/cjs/graph/engine/execution/GraphNodeExecutor.cjs.map +0 -1
- package/lib/cjs/graph/engine/execution/IsolatedVmCodeSandboxEvaluator.cjs.map +0 -1
- package/lib/cjs/graph/engine/execution/SwitchGraphNodeExecutor.cjs.map +0 -1
- package/lib/cjs/graph/engine/execution/index.cjs.map +0 -1
- package/lib/cjs/graph/engine/index.cjs.map +0 -1
- package/lib/cjs/graph/engine/loops/ConditionExpressionEvaluator.cjs.map +0 -1
- package/lib/cjs/graph/engine/loops/ForeachGraphNodeExecutor.cjs.map +0 -1
- package/lib/cjs/graph/engine/loops/GraphConditionEvaluator.cjs.map +0 -1
- package/lib/cjs/graph/engine/loops/GraphLoopExecutionContext.cjs.map +0 -1
- package/lib/cjs/graph/engine/loops/UntilGraphNodeExecutor.cjs.map +0 -1
- package/lib/cjs/graph/engine/loops/WhileGraphNodeExecutor.cjs.map +0 -1
- package/lib/cjs/graph/engine/loops/index.cjs.map +0 -1
- package/lib/cjs/graph/engine/pinning/GraphPinningDependencyResolver.cjs.map +0 -1
- package/lib/cjs/graph/engine/pinning/GraphPinningMetadata.cjs.map +0 -1
- package/lib/cjs/graph/engine/pinning/GraphPinningPolicy.cjs.map +0 -1
- package/lib/cjs/graph/engine/pinning/GraphPinningService.cjs.map +0 -1
- package/lib/cjs/graph/engine/pinning/index.cjs.map +0 -1
- package/lib/cjs/graph/engine/planning/GraphExecutionPlan.cjs.map +0 -1
- package/lib/cjs/graph/engine/planning/GraphExecutionPlanEdge.cjs.map +0 -1
- package/lib/cjs/graph/engine/planning/GraphExecutionPlanLayer.cjs.map +0 -1
- package/lib/cjs/graph/engine/planning/GraphExecutionPlanNode.cjs.map +0 -1
- package/lib/cjs/graph/engine/planning/GraphExecutionPlanner.cjs.map +0 -1
- package/lib/cjs/graph/engine/planning/GraphRelationResolver.cjs.map +0 -1
- package/lib/cjs/graph/engine/planning/GraphTopology.cjs.map +0 -1
- package/lib/cjs/graph/engine/planning/index.cjs.map +0 -1
- package/lib/cjs/graph/engine/registry/GraphNodeExecutorRegistry.cjs.map +0 -1
- package/lib/cjs/graph/engine/registry/GraphNodeExecutorResolver.cjs.map +0 -1
- package/lib/cjs/graph/engine/registry/index.cjs.map +0 -1
- package/lib/cjs/graph/engine/snapshots/GraphExecutionSnapshotMapper.cjs.map +0 -1
- package/lib/cjs/graph/engine/snapshots/index.cjs.map +0 -1
- package/lib/cjs/graph/engine/store/GraphCachedValue.cjs.map +0 -1
- package/lib/cjs/graph/engine/store/GraphValueKey.cjs.map +0 -1
- package/lib/cjs/graph/engine/store/GraphValueStore.cjs.map +0 -1
- package/lib/cjs/graph/engine/store/GraphValueStoreAdapter.cjs.map +0 -1
- package/lib/cjs/graph/engine/store/InMemoryGraphValueStoreAdapter.cjs.map +0 -1
- package/lib/cjs/graph/engine/store/index.cjs.map +0 -1
- package/lib/cjs/graph/engine/types.cjs.map +0 -1
- package/lib/cjs/graph/engine/validation/GraphDefinitionValidator.cjs.map +0 -1
- package/lib/cjs/graph/engine/validation/GraphPortSchemaResolver.cjs.map +0 -1
- package/lib/cjs/graph/engine/validation/GraphValueValidator.cjs.map +0 -1
- package/lib/cjs/graph/engine/validation/index.cjs.map +0 -1
- package/lib/cjs/graph/index.cjs.map +0 -1
- package/lib/cjs/graph/shared/constants.cjs.map +0 -1
- package/lib/cjs/graph/shared/index.cjs.map +0 -1
- package/lib/cjs/graph/shared/nodes/agent.cjs.map +0 -1
- package/lib/cjs/graph/shared/nodes/base.cjs.map +0 -1
- package/lib/cjs/graph/shared/nodes/category-styles.cjs.map +0 -1
- package/lib/cjs/graph/shared/nodes/flow-control.cjs.map +0 -1
- package/lib/cjs/graph/shared/nodes/index.cjs.map +0 -1
- package/lib/cjs/graph/shared/nodes/triggers.cjs.map +0 -1
- package/lib/cjs/graph/shared/types.cjs.map +0 -1
- package/lib/cjs/index.cjs.map +0 -1
- package/lib/cjs/keycloak/index.cjs.map +0 -1
- package/lib/cjs/keycloak/services/KeycloakAuthService.cjs.map +0 -1
- package/lib/cjs/keycloak/services/KeycloakClientService.cjs.map +0 -1
- package/lib/cjs/keycloak/services/KeycloakIdentityProviderService.cjs.map +0 -1
- package/lib/cjs/keycloak/services/KeycloakRealmService.cjs.map +0 -1
- package/lib/cjs/keycloak/services/KeycloakRoleService.cjs.map +0 -1
- package/lib/cjs/keycloak/services/KeycloakService.cjs.map +0 -1
- package/lib/cjs/keycloak/services/KeycloakUserService.cjs.map +0 -1
- package/lib/cjs/keycloak/services/index.cjs.map +0 -1
- package/lib/cjs/keycloak/services/runtime.cjs.map +0 -1
- package/lib/cjs/keycloak/types.cjs.map +0 -1
- package/lib/cjs/kibana/helpers.cjs.map +0 -1
- package/lib/cjs/kibana/index.cjs.map +0 -1
- package/lib/cjs/kibana/services/KibanaAuthService.cjs.map +0 -1
- package/lib/cjs/kibana/services/KibanaDashboardService.cjs.map +0 -1
- package/lib/cjs/kibana/services/KibanaDataViewService.cjs.map +0 -1
- package/lib/cjs/kibana/services/KibanaRoleService.cjs.map +0 -1
- package/lib/cjs/kibana/services/KibanaService.cjs.map +0 -1
- package/lib/cjs/kibana/services/KibanaSpaceService.cjs.map +0 -1
- package/lib/cjs/kibana/services/KibanaUserService.cjs.map +0 -1
- package/lib/cjs/kibana/services/index.cjs.map +0 -1
- package/lib/cjs/kibana/services/runtime.cjs.map +0 -1
- package/lib/cjs/kibana/types.cjs.map +0 -1
- package/lib/cjs/namespaces/index.cjs.map +0 -1
- package/lib/cjs/namespaces/models/authorization-model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/effective-permission.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/group-membership.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/group.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/index.cjs.map +0 -1
- package/lib/cjs/namespaces/models/inheritance-block.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/org-unit-closure.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/org-unit-membership.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/org-unit-profile.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/org-unit.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/permission.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/principal.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/protected-resource.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/resource-grant.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/role-assignment.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/role-permission.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/role.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/storage-binding.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/tenant-membership.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/tenant-profile.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/tenant.model.cjs.map +0 -1
- package/lib/cjs/namespaces/models/user.model.cjs.map +0 -1
- package/lib/cjs/namespaces/org-based-authorization-system.cjs.map +0 -1
- package/lib/cjs/namespaces/org-based-authorization-system.models.cjs.map +0 -1
- package/lib/cjs/namespaces/org-based-authorization-system.services.cjs.map +0 -1
- package/lib/cjs/namespaces/services/authz.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/bootstrap.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/effective-permission.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/group-membership.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/group.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/index.cjs.map +0 -1
- package/lib/cjs/namespaces/services/inheritance-block.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/org-unit-closure.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/org-unit-membership.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/org-unit-profile.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/org-unit.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/permission.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/principal.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/protected-resource.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/resource-grant.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/resource-lifecycle.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/role-assignment.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/role-permission.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/role.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/storage-binding.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/system-management.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/tenant-membership.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/tenant-profile.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/tenant.service.cjs.map +0 -1
- package/lib/cjs/namespaces/services/user.service.cjs.map +0 -1
- package/lib/cjs/namespaces/types.cjs.map +0 -1
- package/lib/cjs/namespaces/utils.cjs.map +0 -1
- package/lib/cjs/nest/authService.cjs.map +0 -1
- package/lib/cjs/nest/graph/GraphExecutionController.cjs.map +0 -1
- package/lib/cjs/nest/graph/GraphExecutionModule.cjs.map +0 -1
- package/lib/cjs/nest/graph/GraphExecutionResultModel.cjs.map +0 -1
- package/lib/cjs/nest/graph/GraphExecutionResultRepository.cjs +0 -66
- package/lib/cjs/nest/graph/GraphExecutionResultRepository.cjs.map +0 -1
- package/lib/cjs/nest/graph/GraphExecutorRegistryFactory.cjs.map +0 -1
- package/lib/cjs/nest/graph/index.cjs.map +0 -1
- package/lib/cjs/nest/graph/main.cjs.map +0 -1
- package/lib/cjs/nest/index.cjs.map +0 -1
- package/lib/cjs/nest/keycloakAuthHandler.cjs.map +0 -1
- package/lib/cjs/nest/keycloakModule.cjs.map +0 -1
- package/lib/cjs/nest/logging.cjs.map +0 -1
- package/lib/cjs/nest/types.cjs.map +0 -1
- package/lib/cjs/nest/utils.cjs.map +0 -1
- package/lib/cjs/secrets/aws/AwsSecretService.cjs.map +0 -1
- package/lib/cjs/secrets/aws/AwsSecretServiceConfig.cjs.map +0 -1
- package/lib/cjs/secrets/aws/index.cjs.map +0 -1
- package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs.map +0 -1
- package/lib/cjs/secrets/azure/AzureKeyVaultSecretServiceConfig.cjs.map +0 -1
- package/lib/cjs/secrets/azure/index.cjs.map +0 -1
- package/lib/cjs/secrets/core/SecretErrors.cjs.map +0 -1
- package/lib/cjs/secrets/core/SecretName.cjs.map +0 -1
- package/lib/cjs/secrets/core/SecretReference.cjs.map +0 -1
- package/lib/cjs/secrets/core/SecretSerialization.cjs.map +0 -1
- package/lib/cjs/secrets/core/SecretService.cjs.map +0 -1
- package/lib/cjs/secrets/core/SecretTypes.cjs.map +0 -1
- package/lib/cjs/secrets/core/index.cjs.map +0 -1
- package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs.map +0 -1
- package/lib/cjs/secrets/gcp/GcpSecretManagerServiceConfig.cjs.map +0 -1
- package/lib/cjs/secrets/gcp/index.cjs.map +0 -1
- package/lib/cjs/secrets/index.cjs.map +0 -1
- package/lib/cjs/secrets/model/ModelSecretCrypto.cjs.map +0 -1
- package/lib/cjs/secrets/model/ModelSecretService.cjs.map +0 -1
- package/lib/cjs/secrets/model/ModelSecretServiceConfig.cjs.map +0 -1
- package/lib/cjs/secrets/model/Secret.cjs.map +0 -1
- package/lib/cjs/secrets/model/index.cjs.map +0 -1
- package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs.map +0 -1
- package/lib/cjs/secrets/onepassword/OnePasswordSecretServiceConfig.cjs.map +0 -1
- package/lib/cjs/secrets/onepassword/index.cjs.map +0 -1
- package/lib/cjs/secrets/vault/VaultSecretService.cjs.map +0 -1
- package/lib/cjs/secrets/vault/VaultSecretServiceConfig.cjs.map +0 -1
- package/lib/cjs/secrets/vault/index.cjs.map +0 -1
- package/lib/cjs/shared/runtime.cjs.map +0 -1
- package/lib/cjs/utils.cjs.map +0 -1
- package/lib/esm/blob/azure/AzureBlobStoreService.js.map +0 -1
- package/lib/esm/blob/azure/index.js.map +0 -1
- package/lib/esm/blob/core/BlobErrors.js.map +0 -1
- package/lib/esm/blob/core/BlobKey.js.map +0 -1
- package/lib/esm/blob/core/BlobStoreFactory.js.map +0 -1
- package/lib/esm/blob/core/BlobStoreService.js.map +0 -1
- package/lib/esm/blob/core/BlobTypes.js.map +0 -1
- package/lib/esm/blob/core/BlobValue.js.map +0 -1
- package/lib/esm/blob/core/index.js.map +0 -1
- package/lib/esm/blob/gcp/GcsBlobStoreService.js.map +0 -1
- package/lib/esm/blob/gcp/index.js.map +0 -1
- package/lib/esm/blob/index.js.map +0 -1
- package/lib/esm/blob/ipfs/IpfsBlobStoreService.js.map +0 -1
- package/lib/esm/blob/ipfs/IpfsKeyIndex.js.map +0 -1
- package/lib/esm/blob/ipfs/LocalJsonIpfsKeyIndex.js.map +0 -1
- package/lib/esm/blob/ipfs/MemoryIpfsKeyIndex.js.map +0 -1
- package/lib/esm/blob/ipfs/PostgresIpfsKeyIndex.js.map +0 -1
- package/lib/esm/blob/ipfs/index.js.map +0 -1
- package/lib/esm/blob/local/LocalBlobStoreService.js.map +0 -1
- package/lib/esm/blob/local/index.js.map +0 -1
- package/lib/esm/blob/memory/MemoryBlobStoreService.js.map +0 -1
- package/lib/esm/blob/memory/index.js.map +0 -1
- package/lib/esm/blob/s3/MinioBlobStoreService.js.map +0 -1
- package/lib/esm/blob/s3/R2BlobStoreService.js.map +0 -1
- package/lib/esm/blob/s3/S3BlobStoreService.js.map +0 -1
- package/lib/esm/blob/s3/index.js.map +0 -1
- package/lib/esm/docker/DockerComposeService.js.map +0 -1
- package/lib/esm/docker/index.js.map +0 -1
- package/lib/esm/graph/engine/constants.js.map +0 -1
- package/lib/esm/graph/engine/decorators.js.map +0 -1
- package/lib/esm/graph/engine/errors/GraphCycleError.js.map +0 -1
- package/lib/esm/graph/engine/errors/GraphExecutionError.js.map +0 -1
- package/lib/esm/graph/engine/errors/GraphInputError.js.map +0 -1
- package/lib/esm/graph/engine/errors/GraphLoopLimitError.js.map +0 -1
- package/lib/esm/graph/engine/errors/GraphPinningError.js.map +0 -1
- package/lib/esm/graph/engine/errors/GraphPortError.js.map +0 -1
- package/lib/esm/graph/engine/errors/GraphStoreError.js.map +0 -1
- package/lib/esm/graph/engine/errors/GraphTopologyError.js.map +0 -1
- package/lib/esm/graph/engine/errors/index.js.map +0 -1
- package/lib/esm/graph/engine/events/GraphExecutionEvent.js.map +0 -1
- package/lib/esm/graph/engine/events/GraphExecutionEventEmitter.js.map +0 -1
- package/lib/esm/graph/engine/events/GraphExecutionEventFactory.js.map +0 -1
- package/lib/esm/graph/engine/events/GraphExecutionObserver.js.map +0 -1
- package/lib/esm/graph/engine/events/index.js.map +0 -1
- package/lib/esm/graph/engine/execution/CodeGraphNodeExecutor.js.map +0 -1
- package/lib/esm/graph/engine/execution/CodeSandboxEvaluator.js.map +0 -1
- package/lib/esm/graph/engine/execution/GraphExecutionContext.js.map +0 -1
- package/lib/esm/graph/engine/execution/GraphExecutionEngine.js.map +0 -1
- package/lib/esm/graph/engine/execution/GraphExecutionFrame.js.map +0 -1
- package/lib/esm/graph/engine/execution/GraphExecutionResult.js.map +0 -1
- package/lib/esm/graph/engine/execution/GraphNodeExecutor.js.map +0 -1
- package/lib/esm/graph/engine/execution/IsolatedVmCodeSandboxEvaluator.js.map +0 -1
- package/lib/esm/graph/engine/execution/SwitchGraphNodeExecutor.js.map +0 -1
- package/lib/esm/graph/engine/execution/index.js.map +0 -1
- package/lib/esm/graph/engine/index.js.map +0 -1
- package/lib/esm/graph/engine/loops/ConditionExpressionEvaluator.js.map +0 -1
- package/lib/esm/graph/engine/loops/ForeachGraphNodeExecutor.js.map +0 -1
- package/lib/esm/graph/engine/loops/GraphConditionEvaluator.js.map +0 -1
- package/lib/esm/graph/engine/loops/GraphLoopExecutionContext.js.map +0 -1
- package/lib/esm/graph/engine/loops/UntilGraphNodeExecutor.js.map +0 -1
- package/lib/esm/graph/engine/loops/WhileGraphNodeExecutor.js.map +0 -1
- package/lib/esm/graph/engine/loops/index.js.map +0 -1
- package/lib/esm/graph/engine/pinning/GraphPinningDependencyResolver.js.map +0 -1
- package/lib/esm/graph/engine/pinning/GraphPinningMetadata.js.map +0 -1
- package/lib/esm/graph/engine/pinning/GraphPinningPolicy.js.map +0 -1
- package/lib/esm/graph/engine/pinning/GraphPinningService.js.map +0 -1
- package/lib/esm/graph/engine/pinning/index.js.map +0 -1
- package/lib/esm/graph/engine/planning/GraphExecutionPlan.js.map +0 -1
- package/lib/esm/graph/engine/planning/GraphExecutionPlanEdge.js.map +0 -1
- package/lib/esm/graph/engine/planning/GraphExecutionPlanLayer.js.map +0 -1
- package/lib/esm/graph/engine/planning/GraphExecutionPlanNode.js.map +0 -1
- package/lib/esm/graph/engine/planning/GraphExecutionPlanner.js.map +0 -1
- package/lib/esm/graph/engine/planning/GraphRelationResolver.js.map +0 -1
- package/lib/esm/graph/engine/planning/GraphTopology.js.map +0 -1
- package/lib/esm/graph/engine/planning/index.js.map +0 -1
- package/lib/esm/graph/engine/registry/GraphNodeExecutorRegistry.js.map +0 -1
- package/lib/esm/graph/engine/registry/GraphNodeExecutorResolver.js.map +0 -1
- package/lib/esm/graph/engine/registry/index.js.map +0 -1
- package/lib/esm/graph/engine/snapshots/GraphExecutionSnapshotMapper.js.map +0 -1
- package/lib/esm/graph/engine/snapshots/index.js.map +0 -1
- package/lib/esm/graph/engine/store/GraphCachedValue.js.map +0 -1
- package/lib/esm/graph/engine/store/GraphValueKey.js.map +0 -1
- package/lib/esm/graph/engine/store/GraphValueStore.js.map +0 -1
- package/lib/esm/graph/engine/store/GraphValueStoreAdapter.js.map +0 -1
- package/lib/esm/graph/engine/store/InMemoryGraphValueStoreAdapter.js.map +0 -1
- package/lib/esm/graph/engine/store/index.js.map +0 -1
- package/lib/esm/graph/engine/types.js.map +0 -1
- package/lib/esm/graph/engine/validation/GraphDefinitionValidator.js.map +0 -1
- package/lib/esm/graph/engine/validation/GraphPortSchemaResolver.js.map +0 -1
- package/lib/esm/graph/engine/validation/GraphValueValidator.js.map +0 -1
- package/lib/esm/graph/engine/validation/index.js.map +0 -1
- package/lib/esm/graph/index.js.map +0 -1
- package/lib/esm/graph/shared/constants.js.map +0 -1
- package/lib/esm/graph/shared/index.js.map +0 -1
- package/lib/esm/graph/shared/nodes/agent.js.map +0 -1
- package/lib/esm/graph/shared/nodes/base.js.map +0 -1
- package/lib/esm/graph/shared/nodes/category-styles.js.map +0 -1
- package/lib/esm/graph/shared/nodes/flow-control.js.map +0 -1
- package/lib/esm/graph/shared/nodes/index.js.map +0 -1
- package/lib/esm/graph/shared/nodes/triggers.js.map +0 -1
- package/lib/esm/graph/shared/types.js.map +0 -1
- package/lib/esm/index.js.map +0 -1
- package/lib/esm/keycloak/index.js.map +0 -1
- package/lib/esm/keycloak/services/KeycloakAuthService.js.map +0 -1
- package/lib/esm/keycloak/services/KeycloakClientService.js.map +0 -1
- package/lib/esm/keycloak/services/KeycloakIdentityProviderService.js.map +0 -1
- package/lib/esm/keycloak/services/KeycloakRealmService.js.map +0 -1
- package/lib/esm/keycloak/services/KeycloakRoleService.js.map +0 -1
- package/lib/esm/keycloak/services/KeycloakService.js.map +0 -1
- package/lib/esm/keycloak/services/KeycloakUserService.js.map +0 -1
- package/lib/esm/keycloak/services/index.js.map +0 -1
- package/lib/esm/keycloak/services/runtime.js.map +0 -1
- package/lib/esm/keycloak/types.js.map +0 -1
- package/lib/esm/kibana/helpers.js.map +0 -1
- package/lib/esm/kibana/index.js.map +0 -1
- package/lib/esm/kibana/services/KibanaAuthService.js.map +0 -1
- package/lib/esm/kibana/services/KibanaDashboardService.js.map +0 -1
- package/lib/esm/kibana/services/KibanaDataViewService.js.map +0 -1
- package/lib/esm/kibana/services/KibanaRoleService.js.map +0 -1
- package/lib/esm/kibana/services/KibanaService.js.map +0 -1
- package/lib/esm/kibana/services/KibanaSpaceService.js.map +0 -1
- package/lib/esm/kibana/services/KibanaUserService.js.map +0 -1
- package/lib/esm/kibana/services/index.js.map +0 -1
- package/lib/esm/kibana/services/runtime.js.map +0 -1
- package/lib/esm/kibana/types.js.map +0 -1
- package/lib/esm/namespaces/index.js.map +0 -1
- package/lib/esm/namespaces/models/authorization-model.js.map +0 -1
- package/lib/esm/namespaces/models/effective-permission.model.js.map +0 -1
- package/lib/esm/namespaces/models/group-membership.model.js.map +0 -1
- package/lib/esm/namespaces/models/group.model.js.map +0 -1
- package/lib/esm/namespaces/models/index.js.map +0 -1
- package/lib/esm/namespaces/models/inheritance-block.model.js.map +0 -1
- package/lib/esm/namespaces/models/org-unit-closure.model.js.map +0 -1
- package/lib/esm/namespaces/models/org-unit-membership.model.js.map +0 -1
- package/lib/esm/namespaces/models/org-unit-profile.model.js.map +0 -1
- package/lib/esm/namespaces/models/org-unit.model.js.map +0 -1
- package/lib/esm/namespaces/models/permission.model.js.map +0 -1
- package/lib/esm/namespaces/models/principal.model.js.map +0 -1
- package/lib/esm/namespaces/models/protected-resource.model.js.map +0 -1
- package/lib/esm/namespaces/models/resource-grant.model.js.map +0 -1
- package/lib/esm/namespaces/models/role-assignment.model.js.map +0 -1
- package/lib/esm/namespaces/models/role-permission.model.js.map +0 -1
- package/lib/esm/namespaces/models/role.model.js.map +0 -1
- package/lib/esm/namespaces/models/storage-binding.model.js.map +0 -1
- package/lib/esm/namespaces/models/tenant-membership.model.js.map +0 -1
- package/lib/esm/namespaces/models/tenant-profile.model.js.map +0 -1
- package/lib/esm/namespaces/models/tenant.model.js.map +0 -1
- package/lib/esm/namespaces/models/user.model.js.map +0 -1
- package/lib/esm/namespaces/org-based-authorization-system.js.map +0 -1
- package/lib/esm/namespaces/org-based-authorization-system.models.js.map +0 -1
- package/lib/esm/namespaces/org-based-authorization-system.services.js.map +0 -1
- package/lib/esm/namespaces/services/authz.service.js.map +0 -1
- package/lib/esm/namespaces/services/bootstrap.service.js.map +0 -1
- package/lib/esm/namespaces/services/effective-permission.service.js.map +0 -1
- package/lib/esm/namespaces/services/group-membership.service.js.map +0 -1
- package/lib/esm/namespaces/services/group.service.js.map +0 -1
- package/lib/esm/namespaces/services/index.js.map +0 -1
- package/lib/esm/namespaces/services/inheritance-block.service.js.map +0 -1
- package/lib/esm/namespaces/services/org-unit-closure.service.js.map +0 -1
- package/lib/esm/namespaces/services/org-unit-membership.service.js.map +0 -1
- package/lib/esm/namespaces/services/org-unit-profile.service.js.map +0 -1
- package/lib/esm/namespaces/services/org-unit.service.js.map +0 -1
- package/lib/esm/namespaces/services/permission.service.js.map +0 -1
- package/lib/esm/namespaces/services/principal.service.js.map +0 -1
- package/lib/esm/namespaces/services/protected-resource.service.js.map +0 -1
- package/lib/esm/namespaces/services/resource-grant.service.js.map +0 -1
- package/lib/esm/namespaces/services/resource-lifecycle.service.js.map +0 -1
- package/lib/esm/namespaces/services/role-assignment.service.js.map +0 -1
- package/lib/esm/namespaces/services/role-permission.service.js.map +0 -1
- package/lib/esm/namespaces/services/role.service.js.map +0 -1
- package/lib/esm/namespaces/services/storage-binding.service.js.map +0 -1
- package/lib/esm/namespaces/services/system-management.service.js.map +0 -1
- package/lib/esm/namespaces/services/tenant-membership.service.js.map +0 -1
- package/lib/esm/namespaces/services/tenant-profile.service.js.map +0 -1
- package/lib/esm/namespaces/services/tenant.service.js.map +0 -1
- package/lib/esm/namespaces/services/user.service.js.map +0 -1
- package/lib/esm/namespaces/types.js.map +0 -1
- package/lib/esm/namespaces/utils.js.map +0 -1
- package/lib/esm/nest/authService.js.map +0 -1
- package/lib/esm/nest/graph/GraphExecutionController.js.map +0 -1
- package/lib/esm/nest/graph/GraphExecutionModule.js.map +0 -1
- package/lib/esm/nest/graph/GraphExecutionResultModel.js.map +0 -1
- package/lib/esm/nest/graph/GraphExecutionResultRepository.js +0 -60
- package/lib/esm/nest/graph/GraphExecutionResultRepository.js.map +0 -1
- package/lib/esm/nest/graph/GraphExecutorRegistryFactory.js.map +0 -1
- package/lib/esm/nest/graph/index.js.map +0 -1
- package/lib/esm/nest/graph/main.js.map +0 -1
- package/lib/esm/nest/index.js.map +0 -1
- package/lib/esm/nest/keycloakAuthHandler.js.map +0 -1
- package/lib/esm/nest/keycloakModule.js.map +0 -1
- package/lib/esm/nest/logging.js.map +0 -1
- package/lib/esm/nest/types.js.map +0 -1
- package/lib/esm/nest/utils.js.map +0 -1
- package/lib/esm/secrets/aws/AwsSecretService.js.map +0 -1
- package/lib/esm/secrets/aws/AwsSecretServiceConfig.js.map +0 -1
- package/lib/esm/secrets/aws/index.js.map +0 -1
- package/lib/esm/secrets/azure/AzureKeyVaultSecretService.js.map +0 -1
- package/lib/esm/secrets/azure/AzureKeyVaultSecretServiceConfig.js.map +0 -1
- package/lib/esm/secrets/azure/index.js.map +0 -1
- package/lib/esm/secrets/core/SecretErrors.js.map +0 -1
- package/lib/esm/secrets/core/SecretName.js.map +0 -1
- package/lib/esm/secrets/core/SecretReference.js.map +0 -1
- package/lib/esm/secrets/core/SecretSerialization.js.map +0 -1
- package/lib/esm/secrets/core/SecretService.js.map +0 -1
- package/lib/esm/secrets/core/SecretTypes.js.map +0 -1
- package/lib/esm/secrets/core/index.js.map +0 -1
- package/lib/esm/secrets/gcp/GcpSecretManagerService.js.map +0 -1
- package/lib/esm/secrets/gcp/GcpSecretManagerServiceConfig.js.map +0 -1
- package/lib/esm/secrets/gcp/index.js.map +0 -1
- package/lib/esm/secrets/index.js.map +0 -1
- package/lib/esm/secrets/model/ModelSecretCrypto.js.map +0 -1
- package/lib/esm/secrets/model/ModelSecretService.js.map +0 -1
- package/lib/esm/secrets/model/ModelSecretServiceConfig.js.map +0 -1
- package/lib/esm/secrets/model/Secret.js.map +0 -1
- package/lib/esm/secrets/model/index.js.map +0 -1
- package/lib/esm/secrets/onepassword/OnePasswordSecretService.js.map +0 -1
- package/lib/esm/secrets/onepassword/OnePasswordSecretServiceConfig.js.map +0 -1
- package/lib/esm/secrets/onepassword/index.js.map +0 -1
- package/lib/esm/secrets/vault/VaultSecretService.js.map +0 -1
- package/lib/esm/secrets/vault/VaultSecretServiceConfig.js.map +0 -1
- package/lib/esm/secrets/vault/index.js.map +0 -1
- package/lib/esm/shared/runtime.js.map +0 -1
- package/lib/esm/utils.js.map +0 -1
- package/lib/types/nest/graph/GraphExecutionResultRepository.d.cts +0 -38
- package/lib/types/nest/graph/GraphExecutionResultRepository.d.mts +0 -38
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GraphExecutionController =
|
|
3
|
+
exports.GraphExecutionController = void 0;
|
|
4
4
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
5
5
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
6
6
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
@@ -18,33 +18,19 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
18
18
|
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
19
19
|
return function (target, key) { decorator(target, key, paramIndex); };
|
|
20
20
|
};
|
|
21
|
-
/**
|
|
22
|
-
* @module integrations/nest/graph/GraphExecutionController
|
|
23
|
-
* @summary NestJS controller bridging the graph execution engine to REST + SSE.
|
|
24
|
-
* @description Exposes three endpoints:
|
|
25
|
-
* - `POST /graph/execute` — triggers {@link GraphExecutionEngine.execute}, persists the result via a Decaf repository, and returns `{ runId, status, outputs }`.
|
|
26
|
-
* - `GET /graph/events` — SSE endpoint streaming {@link GraphExecutionEvent}s as `[modelName, operation, id, payload]` tuples (compatible with for-http's `ServerEventConnector`).
|
|
27
|
-
* - `GET /graph/results/:runId` — retrieves a persisted {@link GraphExecutionResultModel} from the repository.
|
|
28
|
-
*
|
|
29
|
-
* This is the production pattern: for-nest hosts the engine, for-angular consumes events over the network via SSE and fetches persisted results via REST.
|
|
30
|
-
*/
|
|
31
21
|
const common_1 = require("@nestjs/common");
|
|
32
22
|
const rxjs_1 = require("rxjs");
|
|
33
23
|
const operators_1 = require("rxjs/operators");
|
|
34
24
|
const index_js_1 = require("./../../graph/index.cjs");
|
|
35
|
-
const
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
*/
|
|
39
|
-
exports.GRAPH_RESULT_REPOSITORY = "GRAPH_RESULT_REPOSITORY";
|
|
40
|
-
/**
|
|
41
|
-
* NestJS controller that hosts the graph execution engine server-side,
|
|
42
|
-
* streams events via SSE, and persists results for later retrieval.
|
|
43
|
-
*/
|
|
25
|
+
const for_nest_1 = require("@decaf-ts/for-nest");
|
|
26
|
+
const GraphResultService_js_1 = require("./GraphResultService.cjs");
|
|
27
|
+
const GraphWorkflowService_js_1 = require("./GraphWorkflowService.cjs");
|
|
44
28
|
let GraphExecutionController = class GraphExecutionController {
|
|
45
|
-
constructor(engine,
|
|
29
|
+
constructor(engine, resultService, workflowService, requestContext) {
|
|
46
30
|
this.engine = engine;
|
|
47
|
-
this.
|
|
31
|
+
this.resultService = resultService;
|
|
32
|
+
this.workflowService = workflowService;
|
|
33
|
+
this.requestContext = requestContext;
|
|
48
34
|
this.eventSubject = new rxjs_1.Subject();
|
|
49
35
|
this.engine.observe({
|
|
50
36
|
refresh: async (event) => {
|
|
@@ -52,14 +38,10 @@ let GraphExecutionController = class GraphExecutionController {
|
|
|
52
38
|
},
|
|
53
39
|
});
|
|
54
40
|
}
|
|
55
|
-
/**
|
|
56
|
-
* Triggers graph execution server-side, persists the result, and returns
|
|
57
|
-
* a summary containing the `runId`, `status`, and `outputs`.
|
|
58
|
-
*/
|
|
59
41
|
async execute(body) {
|
|
60
42
|
const result = await this.engine.execute(body.workflow, body.inputs ?? {});
|
|
61
43
|
try {
|
|
62
|
-
await this.
|
|
44
|
+
await this.resultService.saveResult(result, this.requestContext);
|
|
63
45
|
}
|
|
64
46
|
catch {
|
|
65
47
|
// persistence failures must not mask a successful execution result
|
|
@@ -70,12 +52,6 @@ let GraphExecutionController = class GraphExecutionController {
|
|
|
70
52
|
outputs: result.outputs,
|
|
71
53
|
};
|
|
72
54
|
}
|
|
73
|
-
/**
|
|
74
|
-
* SSE endpoint that streams graph execution events.
|
|
75
|
-
*
|
|
76
|
-
* Events are serialized as `[modelName, operation, id, payload]` to match
|
|
77
|
-
* the format expected by for-http's `ServerEventConnector`.
|
|
78
|
-
*/
|
|
79
55
|
events() {
|
|
80
56
|
return this.eventSubject.asObservable().pipe((0, operators_1.map)((event) => ({
|
|
81
57
|
type: "message",
|
|
@@ -103,24 +79,25 @@ let GraphExecutionController = class GraphExecutionController {
|
|
|
103
79
|
]),
|
|
104
80
|
})));
|
|
105
81
|
}
|
|
106
|
-
/**
|
|
107
|
-
* Retrieves a persisted graph execution result by its `runId`.
|
|
108
|
-
*
|
|
109
|
-
* @throws {NotFoundException} when no result is stored for the given `runId`.
|
|
110
|
-
*/
|
|
111
82
|
async getResult(runId) {
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
model = (await this.resultRepository.read(runId));
|
|
115
|
-
}
|
|
116
|
-
catch {
|
|
117
|
-
model = null;
|
|
118
|
-
}
|
|
119
|
-
const result = (0, GraphExecutionResultRepository_js_1.fromResultModel)(model);
|
|
120
|
-
if (!result) {
|
|
83
|
+
const model = await this.resultService.findByRunId(runId, this.requestContext);
|
|
84
|
+
if (!model) {
|
|
121
85
|
throw new common_1.NotFoundException(`No graph execution result found for runId '${runId}'`);
|
|
122
86
|
}
|
|
123
|
-
return
|
|
87
|
+
return {
|
|
88
|
+
runId: model.runId,
|
|
89
|
+
workflowId: model.workflowId,
|
|
90
|
+
status: model.status,
|
|
91
|
+
inputs: model.inputs,
|
|
92
|
+
outputs: model.outputs,
|
|
93
|
+
nodeResults: model.nodeResults,
|
|
94
|
+
startedAt: model.startedAt,
|
|
95
|
+
finishedAt: model.finishedAt,
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
async saveWorkflow(id, snapshot) {
|
|
99
|
+
const model = await this.workflowService.saveSnapshot(id, snapshot, this.requestContext);
|
|
100
|
+
return { workflowId: id, savedAt: model.updatedAt.toISOString() };
|
|
124
101
|
}
|
|
125
102
|
};
|
|
126
103
|
exports.GraphExecutionController = GraphExecutionController;
|
|
@@ -144,10 +121,22 @@ __decorate([
|
|
|
144
121
|
__metadata("design:paramtypes", [String]),
|
|
145
122
|
__metadata("design:returntype", Promise)
|
|
146
123
|
], GraphExecutionController.prototype, "getResult", null);
|
|
124
|
+
__decorate([
|
|
125
|
+
(0, common_1.Put)("workflow/:id"),
|
|
126
|
+
__param(0, (0, common_1.Param)("id")),
|
|
127
|
+
__param(1, (0, common_1.Body)()),
|
|
128
|
+
__metadata("design:type", Function),
|
|
129
|
+
__metadata("design:paramtypes", [String, Object]),
|
|
130
|
+
__metadata("design:returntype", Promise)
|
|
131
|
+
], GraphExecutionController.prototype, "saveWorkflow", null);
|
|
147
132
|
exports.GraphExecutionController = GraphExecutionController = __decorate([
|
|
148
133
|
(0, common_1.Controller)("graph"),
|
|
149
|
-
__param(
|
|
150
|
-
|
|
134
|
+
__param(3, (0, common_1.Optional)()),
|
|
135
|
+
__param(3, (0, common_1.Inject)(for_nest_1.DecafRequestContext)),
|
|
136
|
+
__metadata("design:paramtypes", [index_js_1.GraphExecutionEngine,
|
|
137
|
+
GraphResultService_js_1.GraphResultService,
|
|
138
|
+
GraphWorkflowService_js_1.GraphWorkflowService,
|
|
139
|
+
for_nest_1.DecafRequestContext])
|
|
151
140
|
], GraphExecutionController);
|
|
152
|
-
//# sourceMappingURL=
|
|
153
|
-
//# sourceMappingURL=GraphExecutionController.cjs.map
|
|
141
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhFeGVjdXRpb25Db250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL25lc3QvZ3JhcGgvR3JhcGhFeGVjdXRpb25Db250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFDTCxVQUFVLEVBQ1YsSUFBSSxFQUNKLEdBQUcsRUFDSCxHQUFHLEVBQ0gsSUFBSSxFQUNKLEtBQUssRUFDTCxHQUFHLEVBRUgsUUFBUSxFQUNSLE1BQU0sRUFDTixpQkFBaUIsR0FDbEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckMsT0FBTyxFQUNMLG9CQUFvQixHQUdyQiwrQkFBb0I7QUFFckIsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFekQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGdDQUE2QjtBQUMxRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsa0NBQStCO0FBY3ZELElBQU0sd0JBQXdCLEdBQTlCLE1BQU0sd0JBQXdCO0lBR25DLFlBQ21CLE1BQTRCLEVBQzVCLGFBQWlDLEVBQ2pDLGVBQXFDLEVBQ2IsY0FBcUQ7UUFIN0UsV0FBTSxHQUFOLE1BQU0sQ0FBc0I7UUFDNUIsa0JBQWEsR0FBYixhQUFhLENBQW9CO1FBQ2pDLG9CQUFlLEdBQWYsZUFBZSxDQUFzQjtRQUNJLG1CQUFjLEdBQWQsY0FBYyxDQUFzQjtRQU4vRSxpQkFBWSxHQUFHLElBQUksT0FBTyxFQUF1QixDQUFDO1FBUWpFLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDO1lBQ2xCLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUU7Z0JBQ3ZCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2hDLENBQUM7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBR0ssQUFBTixLQUFLLENBQUMsT0FBTyxDQUNILElBQXlCO1FBRWpDLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRTNFLElBQUksQ0FBQztZQUNILE1BQU0sSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNuRSxDQUFDO1FBQUMsTUFBTSxDQUFDO1lBQ1AsbUVBQW1FO1FBQ3JFLENBQUM7UUFFRCxPQUFPO1lBQ0wsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLO1lBQ25CLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTTtZQUNyQixPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU87U0FDeEIsQ0FBQztJQUNKLENBQUM7SUFHRCxNQUFNO1FBQ0osT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FDMUMsR0FBRyxDQUNELENBQUMsS0FBMEIsRUFBZ0IsRUFBRSxDQUFDLENBQUM7WUFDN0MsSUFBSSxFQUFFLFNBQVM7WUFDZixJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQztnQkFDbkIsT0FBTztnQkFDUCxLQUFLLENBQUMsSUFBSTtnQkFDVixLQUFLLENBQUMsS0FBSztnQkFDWDtvQkFDRSxFQUFFLEVBQUUsS0FBSyxDQUFDLEVBQUU7b0JBQ1osUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRO29CQUN4QixJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7b0JBQ2hCLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSztvQkFDbEIsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO29CQUM5QixVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVU7b0JBQzVCLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTtvQkFDcEIsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNO29CQUNwQixJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7b0JBQ2hCLFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBUztvQkFDMUIsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJO29CQUNoQixNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07b0JBQ3BCLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTztvQkFDdEIsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO29CQUNsQixTQUFTLEVBQUUsS0FBSyxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUU7aUJBQ3pDO2FBQ0YsQ0FBQztTQUNILENBQUMsQ0FDSCxDQUNGLENBQUM7SUFDSixDQUFDO0lBR0ssQUFBTixLQUFLLENBQUMsU0FBUyxDQUFpQixLQUFhO1FBQzNDLE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMvRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDWCxNQUFNLElBQUksaUJBQWlCLENBQ3pCLDhDQUE4QyxLQUFLLEdBQUcsQ0FDdkQsQ0FBQztRQUNKLENBQUM7UUFDRCxPQUFPO1lBQ0wsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO1lBQ2xCLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVTtZQUM1QixNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07WUFDcEIsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNO1lBQ3BCLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTztZQUN0QixXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7WUFDOUIsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTO1lBQzFCLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVTtTQUM3QixDQUFDO0lBQ0osQ0FBQztJQUdLLEFBQU4sS0FBSyxDQUFDLFlBQVksQ0FDSCxFQUFVLEVBQ2YsUUFBaUM7UUFFekMsTUFBTSxLQUFLLEdBQUcsTUFBTSxJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN6RixPQUFPLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDO0lBQ3BFLENBQUM7Q0FDRixDQUFBO0FBL0VPO0lBREwsSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUViLFdBQUEsSUFBSSxFQUFFLENBQUE7Ozs7dURBZVI7QUFHRDtJQURDLEdBQUcsQ0FBQyxRQUFRLENBQUM7OztvQ0FDSixVQUFVO3NEQThCbkI7QUFHSztJQURMLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQztJQUNMLFdBQUEsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFBOzs7O3lEQWlCOUI7QUFHSztJQURMLEdBQUcsQ0FBQyxjQUFjLENBQUM7SUFFakIsV0FBQSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDWCxXQUFBLElBQUksRUFBRSxDQUFBOzs7OzREQUlSO0FBL0ZVLHdCQUF3QjtJQURwQyxVQUFVLENBQUMsT0FBTyxDQUFDO0lBUWYsV0FBQSxRQUFRLEVBQUUsQ0FBQTtJQUFFLFdBQUEsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUE7cUNBSGYsb0JBQW9CO1FBQ2Isa0JBQWtCO1FBQ2hCLG9CQUFvQjtRQUNxQixtQkFBbUI7R0FQckYsd0JBQXdCLENBZ0dwQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbnRyb2xsZXIsXG4gIFBvc3QsXG4gIFB1dCxcbiAgR2V0LFxuICBCb2R5LFxuICBQYXJhbSxcbiAgU3NlLFxuICBNZXNzYWdlRXZlbnQsXG4gIE9wdGlvbmFsLFxuICBJbmplY3QsXG4gIE5vdEZvdW5kRXhjZXB0aW9uLFxufSBmcm9tIFwiQG5lc3Rqcy9jb21tb25cIjtcbmltcG9ydCB7IFN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XG5cbmltcG9ydCB7XG4gIEdyYXBoRXhlY3V0aW9uRW5naW5lLFxuICB0eXBlIEdyYXBoRXhlY3V0aW9uRXZlbnQsXG4gIHR5cGUgR3JhcGhFeGVjdXRpb25WYWx1ZXMsXG59IGZyb20gXCIuLi8uLi9ncmFwaFwiO1xuaW1wb3J0IHR5cGUgeyBHcmFwaFdvcmtmbG93RGVmaW5pdGlvbiB9IGZyb20gXCJAZGVjYWYtdHMvdWktZGVjb3JhdG9ycy9ncmFwaFwiO1xuaW1wb3J0IHsgRGVjYWZSZXF1ZXN0Q29udGV4dCB9IGZyb20gXCJAZGVjYWYtdHMvZm9yLW5lc3RcIjtcblxuaW1wb3J0IHsgR3JhcGhSZXN1bHRTZXJ2aWNlIH0gZnJvbSBcIi4vR3JhcGhSZXN1bHRTZXJ2aWNlXCI7XG5pbXBvcnQgeyBHcmFwaFdvcmtmbG93U2VydmljZSB9IGZyb20gXCIuL0dyYXBoV29ya2Zsb3dTZXJ2aWNlXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgR3JhcGhFeGVjdXRlUGF5bG9hZCB7XG4gIHdvcmtmbG93OiBHcmFwaFdvcmtmbG93RGVmaW5pdGlvbjtcbiAgaW5wdXRzOiBHcmFwaEV4ZWN1dGlvblZhbHVlcztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHcmFwaEV4ZWN1dGVSZXNwb25zZSB7XG4gIHJ1bklkOiBzdHJpbmc7XG4gIHN0YXR1czogc3RyaW5nO1xuICBvdXRwdXRzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbn1cblxuQENvbnRyb2xsZXIoXCJncmFwaFwiKVxuZXhwb3J0IGNsYXNzIEdyYXBoRXhlY3V0aW9uQ29udHJvbGxlciB7XG4gIHByaXZhdGUgcmVhZG9ubHkgZXZlbnRTdWJqZWN0ID0gbmV3IFN1YmplY3Q8R3JhcGhFeGVjdXRpb25FdmVudD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVuZ2luZTogR3JhcGhFeGVjdXRpb25FbmdpbmUsXG4gICAgcHJpdmF0ZSByZWFkb25seSByZXN1bHRTZXJ2aWNlOiBHcmFwaFJlc3VsdFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSB3b3JrZmxvd1NlcnZpY2U6IEdyYXBoV29ya2Zsb3dTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoRGVjYWZSZXF1ZXN0Q29udGV4dCkgcHJpdmF0ZSByZWFkb25seSByZXF1ZXN0Q29udGV4dD86IERlY2FmUmVxdWVzdENvbnRleHQsXG4gICkge1xuICAgIHRoaXMuZW5naW5lLm9ic2VydmUoe1xuICAgICAgcmVmcmVzaDogYXN5bmMgKGV2ZW50KSA9PiB7XG4gICAgICAgIHRoaXMuZXZlbnRTdWJqZWN0Lm5leHQoZXZlbnQpO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIEBQb3N0KFwiZXhlY3V0ZVwiKVxuICBhc3luYyBleGVjdXRlKFxuICAgIEBCb2R5KCkgYm9keTogR3JhcGhFeGVjdXRlUGF5bG9hZFxuICApOiBQcm9taXNlPEdyYXBoRXhlY3V0ZVJlc3BvbnNlPiB7XG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGhpcy5lbmdpbmUuZXhlY3V0ZShib2R5LndvcmtmbG93LCBib2R5LmlucHV0cyA/PyB7fSk7XG5cbiAgICB0cnkge1xuICAgICAgYXdhaXQgdGhpcy5yZXN1bHRTZXJ2aWNlLnNhdmVSZXN1bHQocmVzdWx0LCB0aGlzLnJlcXVlc3RDb250ZXh0KTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIC8vIHBlcnNpc3RlbmNlIGZhaWx1cmVzIG11c3Qgbm90IG1hc2sgYSBzdWNjZXNzZnVsIGV4ZWN1dGlvbiByZXN1bHRcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgcnVuSWQ6IHJlc3VsdC5ydW5JZCxcbiAgICAgIHN0YXR1czogcmVzdWx0LnN0YXR1cyxcbiAgICAgIG91dHB1dHM6IHJlc3VsdC5vdXRwdXRzLFxuICAgIH07XG4gIH1cblxuICBAU3NlKFwiZXZlbnRzXCIpXG4gIGV2ZW50cygpOiBPYnNlcnZhYmxlPE1lc3NhZ2VFdmVudD4ge1xuICAgIHJldHVybiB0aGlzLmV2ZW50U3ViamVjdC5hc09ic2VydmFibGUoKS5waXBlKFxuICAgICAgbWFwKFxuICAgICAgICAoZXZlbnQ6IEdyYXBoRXhlY3V0aW9uRXZlbnQpOiBNZXNzYWdlRXZlbnQgPT4gKHtcbiAgICAgICAgICB0eXBlOiBcIm1lc3NhZ2VcIixcbiAgICAgICAgICBkYXRhOiBKU09OLnN0cmluZ2lmeShbXG4gICAgICAgICAgICBcImdyYXBoXCIsXG4gICAgICAgICAgICBldmVudC50eXBlLFxuICAgICAgICAgICAgZXZlbnQucnVuSWQsXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGlkOiBldmVudC5pZCxcbiAgICAgICAgICAgICAgc2VxdWVuY2U6IGV2ZW50LnNlcXVlbmNlLFxuICAgICAgICAgICAgICB0eXBlOiBldmVudC50eXBlLFxuICAgICAgICAgICAgICBydW5JZDogZXZlbnQucnVuSWQsXG4gICAgICAgICAgICAgIHBhcmVudFJ1bklkOiBldmVudC5wYXJlbnRSdW5JZCxcbiAgICAgICAgICAgICAgd29ya2Zsb3dJZDogZXZlbnQud29ya2Zsb3dJZCxcbiAgICAgICAgICAgICAgbm9kZUlkOiBldmVudC5ub2RlSWQsXG4gICAgICAgICAgICAgIGVkZ2VJZDogZXZlbnQuZWRnZUlkLFxuICAgICAgICAgICAgICBwb3J0OiBldmVudC5wb3J0LFxuICAgICAgICAgICAgICBpdGVyYXRpb246IGV2ZW50Lml0ZXJhdGlvbixcbiAgICAgICAgICAgICAgcGF0aDogZXZlbnQucGF0aCxcbiAgICAgICAgICAgICAgc3RhdHVzOiBldmVudC5zdGF0dXMsXG4gICAgICAgICAgICAgIHBheWxvYWQ6IGV2ZW50LnBheWxvYWQsXG4gICAgICAgICAgICAgIGVycm9yOiBldmVudC5lcnJvcixcbiAgICAgICAgICAgICAgdGltZXN0YW1wOiBldmVudC50aW1lc3RhbXAudG9JU09TdHJpbmcoKSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgXSksXG4gICAgICAgIH0pXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIEBHZXQoXCJyZXN1bHRzLzpydW5JZFwiKVxuICBhc3luYyBnZXRSZXN1bHQoQFBhcmFtKFwicnVuSWRcIikgcnVuSWQ6IHN0cmluZyk6IFByb21pc2U8dW5rbm93bj4ge1xuICAgIGNvbnN0IG1vZGVsID0gYXdhaXQgdGhpcy5yZXN1bHRTZXJ2aWNlLmZpbmRCeVJ1bklkKHJ1bklkLCB0aGlzLnJlcXVlc3RDb250ZXh0KTtcbiAgICBpZiAoIW1vZGVsKSB7XG4gICAgICB0aHJvdyBuZXcgTm90Rm91bmRFeGNlcHRpb24oXG4gICAgICAgIGBObyBncmFwaCBleGVjdXRpb24gcmVzdWx0IGZvdW5kIGZvciBydW5JZCAnJHtydW5JZH0nYFxuICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgIHJ1bklkOiBtb2RlbC5ydW5JZCxcbiAgICAgIHdvcmtmbG93SWQ6IG1vZGVsLndvcmtmbG93SWQsXG4gICAgICBzdGF0dXM6IG1vZGVsLnN0YXR1cyxcbiAgICAgIGlucHV0czogbW9kZWwuaW5wdXRzLFxuICAgICAgb3V0cHV0czogbW9kZWwub3V0cHV0cyxcbiAgICAgIG5vZGVSZXN1bHRzOiBtb2RlbC5ub2RlUmVzdWx0cyxcbiAgICAgIHN0YXJ0ZWRBdDogbW9kZWwuc3RhcnRlZEF0LFxuICAgICAgZmluaXNoZWRBdDogbW9kZWwuZmluaXNoZWRBdCxcbiAgICB9O1xuICB9XG5cbiAgQFB1dChcIndvcmtmbG93LzppZFwiKVxuICBhc3luYyBzYXZlV29ya2Zsb3coXG4gICAgQFBhcmFtKFwiaWRcIikgaWQ6IHN0cmluZyxcbiAgICBAQm9keSgpIHNuYXBzaG90OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICApOiBQcm9taXNlPHsgd29ya2Zsb3dJZDogc3RyaW5nOyBzYXZlZEF0OiBzdHJpbmcgfT4ge1xuICAgIGNvbnN0IG1vZGVsID0gYXdhaXQgdGhpcy53b3JrZmxvd1NlcnZpY2Uuc2F2ZVNuYXBzaG90KGlkLCBzbmFwc2hvdCwgdGhpcy5yZXF1ZXN0Q29udGV4dCk7XG4gICAgcmV0dXJuIHsgd29ya2Zsb3dJZDogaWQsIHNhdmVkQXQ6IG1vZGVsLnVwZGF0ZWRBdC50b0lTT1N0cmluZygpIH07XG4gIH1cbn1cbiJdfQ==
|
|
142
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhFeGVjdXRpb25Db250cm9sbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiR3JhcGhFeGVjdXRpb25Db250cm9sbGVyLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLElBQUksVUFBVSxHQUFHLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxVQUFVLFVBQVUsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUk7SUFDakYsSUFBSSxDQUFDLEdBQUcsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM3SCxJQUFJLE9BQU8sT0FBTyxLQUFLLFFBQVEsSUFBSSxPQUFPLE9BQU8sQ0FBQyxRQUFRLEtBQUssVUFBVTtRQUFFLENBQUMsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDOztRQUMxSCxLQUFLLElBQUksQ0FBQyxHQUFHLFVBQVUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFO1lBQUUsSUFBSSxDQUFDLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQztnQkFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFD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ZWNvcmF0ZSkgfHwgZnVuY3Rpb24gKGRlY29yYXRvcnMsIHRhcmdldCwga2V5LCBkZXNjKSB7XG4gICAgdmFyIGMgPSBhcmd1bWVudHMubGVuZ3RoLCByID0gYyA8IDMgPyB0YXJnZXQgOiBkZXNjID09PSBudWxsID8gZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodGFyZ2V0LCBrZXkpIDogZGVzYywgZDtcbiAgICBpZiAodHlwZW9mIFJlZmxlY3QgPT09IFwib2JqZWN0XCIgJiYgdHlwZW9mIFJlZmxlY3QuZGVjb3JhdGUgPT09IFwiZnVuY3Rpb25cIikgciA9IFJlZmxlY3QuZGVjb3JhdGUoZGVjb3JhdG9ycywgdGFyZ2V0LCBrZXksIGRlc2MpO1xuICAgIGVsc2UgZm9yICh2YXIgaSA9IGRlY29yYXRvcnMubGVuZ3RoIC0gMTsgaSA+PSAwOyBpLS0pIGlmIChkID0gZGVjb3JhdG9yc1tpXSkgciA9IChjIDwgMyA/IGQocikgOiBjID4gMyA/IGQodGFyZ2V0LCBrZXksIHIpIDogZCh0YXJnZXQsIGtleSkpIHx8IHI7XG4gICAgcmV0dXJuIGMgPiAzICYmIHIgJiYgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwga2V5LCByKSwgcjtcbn07XG52YXIgX19tZXRhZGF0YSA9ICh0aGlzICYmIHRoaXMuX19tZXRhZGF0YSkgfHwgZnVuY3Rpb24gKGssIHYpIHtcbiAgICBpZiAodHlwZW9mIFJlZmxlY3QgPT09IFwib2JqZWN0XCIgJiYgdHlwZW9mIFJlZmxlY3QubWV0YWRhdGEgPT09IFwiZnVuY3Rpb25cIikgcmV0dXJuIFJlZmxlY3QubWV0YWRhdGEoaywgdik7XG59O1xudmFyIF9fcGFyYW0gPSAodGhpcyAmJiB0aGlzLl9fcGFyYW0pIHx8IGZ1bmN0aW9uIChwYXJhbUluZGV4LCBkZWNvcmF0b3IpIHtcbiAgICByZXR1cm4gZnVuY3Rpb24gKHRhcmdldCwga2V5KSB7IGRlY29yYXRvcih0YXJnZXQsIGtleSwgcGFyYW1JbmRleCk7IH1cbn07XG5pbXBvcnQgeyBDb250cm9sbGVyLCBQb3N0LCBQdXQsIEdldCwgQm9keSwgUGFyYW0sIFNzZSwgT3B0aW9uYWwsIEluamVjdCwgTm90Rm91bmRFeGNlcHRpb24sIH0gZnJvbSBcIkBuZXN0anMvY29tbW9uXCI7XG5pbXBvcnQgeyBTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IG1hcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgR3JhcGhFeGVjdXRpb25FbmdpbmUsIH0gZnJvbSBcIi4vLi4vLi4vZ3JhcGgvaW5kZXguanNcIjtcbmltcG9ydCB7IERlY2FmUmVxdWVzdENvbnRleHQgfSBmcm9tIFwiQGRlY2FmLXRzL2Zvci1uZXN0XCI7XG5pbXBvcnQgeyBHcmFwaFJlc3VsdFNlcnZpY2UgfSBmcm9tIFwiLi9HcmFwaFJlc3VsdFNlcnZpY2UuanNcIjtcbmltcG9ydCB7IEdyYXBoV29ya2Zsb3dTZXJ2aWNlIH0gZnJvbSBcIi4vR3JhcGhXb3JrZmxvd1NlcnZpY2UuanNcIjtcbmxldCBHcmFwaEV4ZWN1dGlvbkNvbnRyb2xsZXIgPSBjbGFzcyBHcmFwaEV4ZWN1dGlvbkNvbnRyb2xsZXIge1xuICAgIGNvbnN0cnVjdG9yKGVuZ2luZSwgcmVzdWx0U2VydmljZSwgd29ya2Zsb3dTZXJ2aWNlLCByZXF1ZXN0Q29udGV4dCkge1xuICAgICAgICB0aGlzLmVuZ2luZSA9IGVuZ2luZTtcbiAgICAgICAgdGhpcy5yZXN1bHRTZXJ2aWNlID0gcmVzdWx0U2VydmljZTtcbiAgICAgICAgdGhpcy53b3JrZmxvd1NlcnZpY2UgPSB3b3JrZmxvd1NlcnZpY2U7XG4gICAgICAgIHRoaXMucmVxdWVzdENvbnRleHQgPSByZXF1ZXN0Q29udGV4dDtcbiAgICAgICAgdGhpcy5ldmVudFN1YmplY3QgPSBuZXcgU3ViamVjdCgpO1xuICAgICAgICB0aGlzLmVuZ2luZS5vYnNlcnZlKHtcbiAgICAgICAgICAgIHJlZnJlc2g6IGFzeW5jIChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZXZlbnRTdWJqZWN0Lm5leHQoZXZlbnQpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGFzeW5jIGV4ZWN1dGUoYm9keSkge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0aGlzLmVuZ2luZS5leGVjdXRlKGJvZHkud29ya2Zsb3csIGJvZHkuaW5wdXRzID8/IHt9KTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGF3YWl0IHRoaXMucmVzdWx0U2VydmljZS5zYXZlUmVzdWx0KHJlc3VsdCwgdGhpcy5yZXF1ZXN0Q29udGV4dCk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2gge1xuICAgICAgICAgICAgLy8gcGVyc2lzdGVuY2UgZmFpbHVyZXMgbXVzdCBub3QgbWFzayBhIHN1Y2Nlc3NmdWwgZXhlY3V0aW9uIHJlc3VsdFxuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBydW5JZDogcmVzdWx0LnJ1bklkLFxuICAgICAgICAgICAgc3RhdHVzOiByZXN1bHQuc3RhdHVzLFxuICAgICAgICAgICAgb3V0cHV0czogcmVzdWx0Lm91dHB1dHMsXG4gICAgICAgIH07XG4gICAgfVxuICAgIGV2ZW50cygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZXZlbnRTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpLnBpcGUobWFwKChldmVudCkgPT4gKHtcbiAgICAgICAgICAgIHR5cGU6IFwibWVzc2FnZVwiLFxuICAgICAgICAgICAgZGF0YTogSlNPTi5zdHJpbmdpZnkoW1xuICAgICAgICAgICAgICAgIFwiZ3JhcGhcIixcbiAgICAgICAgICAgICAgICBldmVudC50eXBlLFxuICAgICAgICAgICAgICAgIGV2ZW50LnJ1bklkLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgaWQ6IGV2ZW50LmlkLFxuICAgICAgICAgICAgICAgICAgICBzZXF1ZW5jZTogZXZlbnQuc2VxdWVuY2UsXG4gICAgICAgICAgICAgICAgICAgIHR5cGU6IGV2ZW50LnR5cGUsXG4gICAgICAgICAgICAgICAgICAgIHJ1bklkOiBldmVudC5ydW5JZCxcbiAgICAgICAgICAgICAgICAgICAgcGFyZW50UnVuSWQ6IGV2ZW50LnBhcmVudFJ1bklkLFxuICAgICAgICAgICAgICAgICAgICB3b3JrZmxvd0lkOiBldmVudC53b3JrZmxvd0lkLFxuICAgICAgICAgICAgICAgICAgICBub2RlSWQ6IGV2ZW50Lm5vZGVJZCxcbiAgICAgICAgICAgICAgICAgICAgZWRnZUlkOiBldmVudC5lZGdlSWQsXG4gICAgICAgICAgICAgICAgICAgIHBvcnQ6IGV2ZW50LnBvcnQsXG4gICAgICAgICAgICAgICAgICAgIGl0ZXJhdGlvbjogZXZlbnQuaXRlcmF0aW9uLFxuICAgICAgICAgICAgICAgICAgICBwYXRoOiBldmVudC5wYXRoLFxuICAgICAgICAgICAgICAgICAgICBzdGF0dXM6IGV2ZW50LnN0YXR1cyxcbiAgICAgICAgICAgICAgICAgICAgcGF5bG9hZDogZXZlbnQucGF5bG9hZCxcbiAgICAgICAgICAgICAgICAgICAgZXJyb3I6IGV2ZW50LmVycm9yLFxuICAgICAgICAgICAgICAgICAgICB0aW1lc3RhbXA6IGV2ZW50LnRpbWVzdGFtcC50b0lTT1N0cmluZygpLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgfSkpKTtcbiAgICB9XG4gICAgYXN5bmMgZ2V0UmVzdWx0KHJ1bklkKSB7XG4gICAgICAgIGNvbnN0IG1vZGVsID0gYXdhaXQgdGhpcy5yZXN1bHRTZXJ2aWNlLmZpbmRCeVJ1bklkKHJ1bklkLCB0aGlzLnJlcXVlc3RDb250ZXh0KTtcbiAgICAgICAgaWYgKCFtb2RlbCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IE5vdEZvdW5kRXhjZXB0aW9uKGBObyBncmFwaCBleGVjdXRpb24gcmVzdWx0IGZvdW5kIGZvciBydW5JZCAnJHtydW5JZH0nYCk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHJ1bklkOiBtb2RlbC5ydW5JZCxcbiAgICAgICAgICAgIHdvcmtmbG93SWQ6IG1vZGVsLndvcmtmbG93SWQsXG4gICAgICAgICAgICBzdGF0dXM6IG1vZGVsLnN0YXR1cyxcbiAgICAgICAgICAgIGlucHV0czogbW9kZWwuaW5wdXRzLFxuICAgICAgICAgICAgb3V0cHV0czogbW9kZWwub3V0cHV0cyxcbiAgICAgICAgICAgIG5vZGVSZXN1bHRzOiBtb2RlbC5ub2RlUmVzdWx0cyxcbiAgICAgICAgICAgIHN0YXJ0ZWRBdDogbW9kZWwuc3RhcnRlZEF0LFxuICAgICAgICAgICAgZmluaXNoZWRBdDogbW9kZWwuZmluaXNoZWRBdCxcbiAgICAgICAgfTtcbiAgICB9XG4gICAgYXN5bmMgc2F2ZVdvcmtmbG93KGlkLCBzbmFwc2hvdCkge1xuICAgICAgICBjb25zdCBtb2RlbCA9IGF3YWl0IHRoaXMud29ya2Zsb3dTZXJ2aWNlLnNhdmVTbmFwc2hvdChpZCwgc25hcHNob3QsIHRoaXMucmVxdWVzdENvbnRleHQpO1xuICAgICAgICByZXR1cm4geyB3b3JrZmxvd0lkOiBpZCwgc2F2ZWRBdDogbW9kZWwudXBkYXRlZEF0LnRvSVNPU3RyaW5nKCkgfTtcbiAgICB9XG59O1xuX19kZWNvcmF0ZShbXG4gICAgUG9zdChcImV4ZWN1dGVcIiksXG4gICAgX19wYXJhbSgwLCBCb2R5KCkpLFxuICAgIF9fbWV0YWRhdGEoXCJkZXNpZ246dHlwZVwiLCBGdW5jdGlvbiksXG4gICAgX19tZXRhZGF0YShcImRlc2lnbjpwYXJhbXR5cGVzXCIsIFtPYmplY3RdKSxcbiAgICBfX21ldGFkYXRhKFwiZGVzaWduOnJldHVybnR5cGVcIiwgUHJvbWlzZSlcbl0sIEdyYXBoRXhlY3V0aW9uQ29udHJvbGxlci5wcm90b3R5cGUsIFwiZXhlY3V0ZVwiLCBudWxsKTtcbl9fZGVjb3JhdGUoW1xuICAgIFNzZShcImV2ZW50c1wiKSxcbiAgICBfX21ldGFkYXRhKFwiZGVzaWduOnR5cGVcIiwgRnVuY3Rpb24pLFxuICAgIF9fbWV0YWRhdGEoXCJkZXNpZ246cGFyYW10eXBlc1wiLCBbXSksXG4gICAgX19tZXRhZGF0YShcImRlc2lnbjpyZXR1cm50eXBlXCIsIE9ic2VydmFibGUpXG5dLCBHcmFwaEV4ZWN1dGlvbkNvbnRyb2xsZXIucHJvdG90eXBlLCBcImV2ZW50c1wiLCBudWxsKTtcbl9fZGVjb3JhdGUoW1xuICAgIEdldChcInJlc3VsdHMvOnJ1bklkXCIpLFxuICAgIF9fcGFyYW0oMCwgUGFyYW0oXCJydW5JZFwiKSksXG4gICAgX19tZXRhZGF0YShcImRlc2lnbjp0eXBlXCIsIEZ1bmN0aW9uKSxcbiAgICBfX21ldGFkYXRhKFwiZGVzaWduOnBhcmFtdHlwZXNcIiwgW1N0cmluZ10pLFxuICAgIF9fbWV0YWRhdGEoXCJkZXNpZ246cmV0dXJudHlwZVwiLCBQcm9taXNlKVxuXSwgR3JhcGhFeGVjdXRpb25Db250cm9sbGVyLnByb3RvdHlwZSwgXCJnZXRSZXN1bHRcIiwgbnVsbCk7XG5fX2RlY29yYXRlKFtcbiAgICBQdXQoXCJ3b3JrZmxvdy86aWRcIiksXG4gICAgX19wYXJhbSgwLCBQYXJhbShcImlkXCIpKSxcbiAgICBfX3BhcmFtKDEsIEJvZHkoKSksXG4gICAgX19tZXRhZGF0YShcImRlc2lnbjp0eXBlXCIsIEZ1bmN0aW9uKSxcbiAgICBfX21ldGFkYXRhKFwiZGVzaWduOnBhcmFtdHlwZXNcIiwgW1N0cmluZywgT2JqZWN0XSksXG4gICAgX19tZXRhZGF0YShcImRlc2lnbjpyZXR1cm50eXBlXCIsIFByb21pc2UpXG5dLCBHcmFwaEV4ZWN1dGlvbkNvbnRyb2xsZXIucHJvdG90eXBlLCBcInNhdmVXb3JrZmxvd1wiLCBudWxsKTtcbkdyYXBoRXhlY3V0aW9uQ29udHJvbGxlciA9IF9fZGVjb3JhdGUoW1xuICAgIENvbnRyb2xsZXIoXCJncmFwaFwiKSxcbiAgICBfX3BhcmFtKDMsIE9wdGlvbmFsKCkpLFxuICAgIF9fcGFyYW0oMywgSW5qZWN0KERlY2FmUmVxdWVzdENvbnRleHQpKSxcbiAgICBfX21ldGFkYXRhKFwiZGVzaWduOnBhcmFtdHlwZXNcIiwgW0dyYXBoRXhlY3V0aW9uRW5naW5lLFxuICAgICAgICBHcmFwaFJlc3VsdFNlcnZpY2UsXG4gICAgICAgIEdyYXBoV29ya2Zsb3dTZXJ2aWNlLFxuICAgICAgICBEZWNhZlJlcXVlc3RDb250ZXh0XSlcbl0sIEdyYXBoRXhlY3V0aW9uQ29udHJvbGxlcik7XG5leHBvcnQgeyBHcmFwaEV4ZWN1dGlvbkNvbnRyb2xsZXIgfTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaVIzSmhjR2hGZUdWamRYUnBiMjVEYjI1MGNtOXNiR1Z5TG1weklpd2ljMjkxY21ObFVtOXZkQ0k2SWlJc0luTnZkWEpqWlhNaU9sc2lMaTR2TGk0dkxpNHZMaTR2YzNKakwyNWxjM1F2WjNKaGNHZ3ZSM0poY0doRmVHVmpkWFJwYjI1RGIyNTBjbTlzYkdWeUxuUnpJbDBzSW01aGJXVnpJanBiWFN3aWJXRndjR2x1WjNNaU9pSTdPenM3T3pzN096czdPenRCUVVGQkxFOUJRVThzUlVGRFRDeFZRVUZWTEVWQlExWXNTVUZCU1N4RlFVTktMRWRCUVVjc1JVRkRTQ3hIUVVGSExFVkJRMGdzU1VGQlNTeEZRVU5LTEV0QlFVc3NSVUZEVEN4SFFVRkhMRVZCUlVnc1VVRkJVU3hGUVVOU0xFMUJRVTBzUlVGRFRpeHBRa0ZCYVVJc1IwRkRiRUlzVFVGQlRTeG5Ra0ZCWjBJc1EwRkJRenRCUVVONFFpeFBRVUZQTEVWQlFVVXNUMEZCVHl4RlFVRkZMRlZCUVZVc1JVRkJSU3hOUVVGTkxFMUJRVTBzUTBGQlF6dEJRVU16UXl4UFFVRlBMRVZCUVVVc1IwRkJSeXhGUVVGRkxFMUJRVTBzWjBKQlFXZENMRU5CUVVNN1FVRkZja01zVDBGQlR5eEZRVU5NTEc5Q1FVRnZRaXhIUVVkeVFpd3JRa0ZCYjBJN1FVRkZja0lzVDBGQlR5eEZRVUZGTEcxQ1FVRnRRaXhGUVVGRkxFMUJRVTBzYjBKQlFXOUNMRU5CUVVNN1FVRkZla1FzVDBGQlR5eEZRVUZGTEd0Q1FVRnJRaXhGUVVGRkxHZERRVUUyUWp0QlFVTXhSQ3hQUVVGUExFVkJRVVVzYjBKQlFXOUNMRVZCUVVVc2EwTkJRU3RDTzBGQlkzWkVMRWxCUVUwc2QwSkJRWGRDTEVkQlFUbENMRTFCUVUwc2QwSkJRWGRDTzBsQlIyNURMRmxCUTIxQ0xFMUJRVFJDTEVWQlF6VkNMR0ZCUVdsRExFVkJRMnBETEdWQlFYRkRMRVZCUTJJc1kwRkJjVVE3VVVGSU4wVXNWMEZCVFN4SFFVRk9MRTFCUVUwc1EwRkJjMEk3VVVGRE5VSXNhMEpCUVdFc1IwRkJZaXhoUVVGaExFTkJRVzlDTzFGQlEycERMRzlDUVVGbExFZEJRV1lzWlVGQlpTeERRVUZ6UWp0UlFVTkpMRzFDUVVGakxFZEJRV1FzWTBGQll5eERRVUZ6UWp0UlFVNHZSU3hwUWtGQldTeEhRVUZITEVsQlFVa3NUMEZCVHl4RlFVRjFRaXhEUVVGRE8xRkJVV3BGTEVsQlFVa3NRMEZCUXl4TlFVRk5MRU5CUVVNc1QwRkJUeXhEUVVGRE8xbEJRMnhDTEU5QlFVOHNSVUZCUlN4TFFVRkxMRVZCUVVVc1MwRkJTeXhGUVVGRkxFVkJRVVU3WjBKQlEzWkNMRWxCUVVrc1EwRkJReXhaUVVGWkxFTkJRVU1zU1VGQlNTeERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRPMWxCUTJoRExFTkJRVU03VTBGRFJpeERRVUZETEVOQlFVTTdTVUZEVEN4RFFVRkRPMGxCUjBzc1FVRkJUaXhMUVVGTExFTkJRVU1zVDBGQlR5eERRVU5JTEVsQlFYbENPMUZCUldwRExFMUJRVTBzVFVGQlRTeEhRVUZITEUxQlFVMHNTVUZCU1N4RFFVRkRMRTFCUVUwc1EwRkJReXhQUVVGUExFTkJRVU1zU1VGQlNTeERRVUZETEZGQlFWRXNSVUZCUlN4SlFVRkpMRU5CUVVNc1RVRkJUU3hKUVVGSkxFVkJRVVVzUTBGQlF5eERRVUZETzFGQlJUTkZMRWxCUVVrc1EwRkJRenRaUVVOSUxFMUJRVTBzU1VGQlNTeERRVUZETEdGQlFXRXNRMEZCUXl4VlFVRlZMRU5CUVVNc1RVRkJUU3hGUVVGRkxFbEJRVWtzUTBGQlF5eGpRVUZqTEVOQlFVTXNRMEZCUXp0UlFVTnVSU3hEUVVGRE8xRkJRVU1zVFVGQlRTeERRVUZETzFsQlExQXNiVVZCUVcxRk8xRkJRM0pGTEVOQlFVTTdVVUZGUkN4UFFVRlBPMWxCUTB3c1MwRkJTeXhGUVVGRkxFMUJRVTBzUTBGQlF5eExRVUZMTzFsQlEyNUNMRTFCUVUwc1JVRkJSU3hOUVVGTkxFTkJRVU1zVFVGQlRUdFpRVU55UWl4UFFVRlBMRVZCUVVVc1RVRkJUU3hEUVVGRExFOUJRVTg3VTBGRGVFSXNRMEZCUXp0SlFVTktMRU5CUVVNN1NVRkhSQ3hOUVVGTk8xRkJRMG9zVDBGQlR5eEpRVUZKTEVOQlFVTXNXVUZCV1N4RFFVRkRMRmxCUVZrc1JVRkJSU3hEUVVGRExFbEJRVWtzUTBGRE1VTXNSMEZCUnl4RFFVTkVMRU5CUVVNc1MwRkJNRUlzUlVGQlowSXNSVUZCUlN4RFFVRkRMRU5CUVVNN1dVRkROME1zU1VGQlNTeEZRVUZGTEZOQlFWTTdXVUZEWml4SlFVRkpMRVZCUVVVc1NVRkJTU3hEUVVGRExGTkJRVk1zUTBGQlF6dG5Ra0ZEYmtJc1QwRkJUenRuUWtGRFVDeExRVUZMTEVOQlFVTXNTVUZCU1R0blFrRkRWaXhMUVVGTExFTkJRVU1zUzBGQlN6dG5Ra0ZEV0R0dlFrRkRSU3hGUVVGRkxFVkJRVVVzUzBGQlN5eERRVUZETEVWQlFVVTdiMEpCUTFvc1VVRkJVU3hGUVVGRkxFdEJRVXNzUTBGQlF5eFJRVUZSTzI5Q1FVTjRRaXhKUVVGSkxFVkJRVVVzUzBGQlN5eERRVUZETEVsQlFVazdiMEpCUTJoQ0xFdEJRVXNzUlVGQlJTeExRVUZMTEVOQlFVTXNTMEZCU3p0dlFrRkRiRUlzVjBGQlZ5eEZRVUZGTEV0QlFVc3NRMEZCUXl4WFFVRlhPMjlDUVVNNVFpeFZRVUZWTEVWQlFVVXNTMEZCU3l4RFFVRkRMRlZCUVZVN2IwSkJRelZDTEUxQlFVMHNSVUZCUlN4TFFVRkxMRU5CUVVNc1RVRkJUVHR2UWtGRGNFSXNUVUZCVFN4RlFVRkZMRXRCUVVzc1EwRkJReXhOUVVGTk8yOUNRVU53UWl4SlFVRkpMRVZCUVVVc1MwRkJTeXhEUVVGRExFbEJRVWs3YjBKQlEyaENMRk5CUVZNc1JVRkJSU3hMUVVGTExFTkJRVU1zVTBGQlV6dHZRa0ZETVVJc1NVRkJTU3hGUVVGRkxFdEJRVXNzUTBGQlF5eEpRVUZKTzI5Q1FVTm9RaXhOUVVGTkxFVkJRVVVzUzBGQlN5eERRVUZETEUxQlFVMDdiMEpCUTNCQ0xFOUJRVThzUlVGQlJTeExRVUZMTEVOQlFVTXNUMEZCVHp0dlFrRkRkRUlzUzBGQlN5eEZRVUZGTEV0QlFVc3NRMEZCUXl4TFFVRkxPMjlDUVVOc1FpeFRRVUZUTEVWQlFVVXNTMEZCU3l4RFFVRkRMRk5CUVZNc1EwRkJReXhYUVVGWExFVkJRVVU3YVVKQlEzcERPMkZCUTBZc1EwRkJRenRUUVVOSUxFTkJRVU1zUTBGRFNDeERRVU5HTEVOQlFVTTdTVUZEU2l4RFFVRkRPMGxCUjBzc1FVRkJUaXhMUVVGTExFTkJRVU1zVTBGQlV5eERRVUZwUWl4TFFVRmhPMUZCUXpORExFMUJRVTBzUzBGQlN5eEhRVUZITEUxQlFVMHNTVUZCU1N4RFFVRkRMR0ZCUVdFc1EwRkJReXhYUVVGWExFTkJRVU1zUzBGQlN5eEZRVUZGTEVsQlFVa3NRMEZCUXl4alFVRmpMRU5CUVVNc1EwRkJRenRSUVVNdlJTeEpRVUZKTEVOQlFVTXNTMEZCU3l4RlFVRkZMRU5CUVVNN1dVRkRXQ3hOUVVGTkxFbEJRVWtzYVVKQlFXbENMRU5CUTNwQ0xEaERRVUU0UXl4TFFVRkxMRWRCUVVjc1EwRkRka1FzUTBGQlF6dFJRVU5LTEVOQlFVTTdVVUZEUkN4UFFVRlBPMWxCUTB3c1MwRkJTeXhGUVVGRkxFdEJRVXNzUTBGQlF5eExRVUZMTzFsQlEyeENMRlZCUVZVc1JVRkJSU3hMUVVGTExFTkJRVU1zVlVGQlZUdFpRVU0xUWl4TlFVRk5MRVZCUVVVc1MwRkJTeXhEUVVGRExFMUJRVTA3V1VGRGNFSXNUVUZCVFN4RlFVRkZMRXRCUVVzc1EwRkJReXhOUVVGTk8xbEJRM0JDTEU5QlFVOHNSVUZCUlN4TFFVRkxMRU5CUVVNc1QwRkJUenRaUVVOMFFpeFhRVUZYTEVWQlFVVXNTMEZCU3l4RFFVRkRMRmRCUVZjN1dVRkRPVUlzVTBGQlV5eEZRVUZGTEV0QlFVc3NRMEZCUXl4VFFVRlRPMWxCUXpGQ0xGVkJRVlVzUlVGQlJTeExRVUZMTEVOQlFVTXNWVUZCVlR0VFFVTTNRaXhEUVVGRE8wbEJRMG9zUTBGQlF6dEpRVWRMTEVGQlFVNHNTMEZCU3l4RFFVRkRMRmxCUVZrc1EwRkRTQ3hGUVVGVkxFVkJRMllzVVVGQmFVTTdVVUZGZWtNc1RVRkJUU3hMUVVGTExFZEJRVWNzVFVGQlRTeEpRVUZKTEVOQlFVTXNaVUZCWlN4RFFVRkRMRmxCUVZrc1EwRkJReXhGUVVGRkxFVkJRVVVzVVVGQlVTeEZRVUZGTEVsQlFVa3NRMEZCUXl4alFVRmpMRU5CUVVNc1EwRkJRenRSUVVONlJpeFBRVUZQTEVWQlFVVXNWVUZCVlN4RlFVRkZMRVZCUVVVc1JVRkJSU3hQUVVGUExFVkJRVVVzUzBGQlN5eERRVUZETEZOQlFWTXNRMEZCUXl4WFFVRlhMRVZCUVVVc1JVRkJSU3hEUVVGRE8wbEJRM0JGTEVOQlFVTTdRMEZEUml4RFFVRkJPMEZCTDBWUE8wbEJSRXdzU1VGQlNTeERRVUZETEZOQlFWTXNRMEZCUXp0SlFVVmlMRmRCUVVFc1NVRkJTU3hGUVVGRkxFTkJRVUU3T3pzN2RVUkJaVkk3UVVGSFJEdEpRVVJETEVkQlFVY3NRMEZCUXl4UlFVRlJMRU5CUVVNN096dHZRMEZEU2l4VlFVRlZPM05FUVRoQ2JrSTdRVUZIU3p0SlFVUk1MRWRCUVVjc1EwRkJReXhuUWtGQlowSXNRMEZCUXp0SlFVTk1MRmRCUVVFc1MwRkJTeXhEUVVGRExFOUJRVThzUTBGQlF5eERRVUZCT3pzN08zbEVRV2xDT1VJN1FVRkhTenRKUVVSTUxFZEJRVWNzUTBGQlF5eGpRVUZqTEVOQlFVTTdTVUZGYWtJc1YwRkJRU3hMUVVGTExFTkJRVU1zU1VGQlNTeERRVUZETEVOQlFVRTdTVUZEV0N4WFFVRkJMRWxCUVVrc1JVRkJSU3hEUVVGQk96czdPelJFUVVsU08wRkJMMFpWTEhkQ1FVRjNRanRKUVVSd1F5eFZRVUZWTEVOQlFVTXNUMEZCVHl4RFFVRkRPMGxCVVdZc1YwRkJRU3hSUVVGUkxFVkJRVVVzUTBGQlFUdEpRVUZGTEZkQlFVRXNUVUZCVFN4RFFVRkRMRzFDUVVGdFFpeERRVUZETEVOQlFVRTdjVU5CU0dZc2IwSkJRVzlDTzFGQlEySXNhMEpCUVd0Q08xRkJRMmhDTEc5Q1FVRnZRanRSUVVOeFFpeHRRa0ZCYlVJN1IwRlFja1lzZDBKQlFYZENMRU5CWjBkd1F5SXNJbk52ZFhKalpYTkRiMjUwWlc1MElqcGJJbWx0Y0c5eWRDQjdYRzRnSUVOdmJuUnliMnhzWlhJc1hHNGdJRkJ2YzNRc1hHNGdJRkIxZEN4Y2JpQWdSMlYwTEZ4dUlDQkNiMlI1TEZ4dUlDQlFZWEpoYlN4Y2JpQWdVM05sTEZ4dUlDQk5aWE56WVdkbFJYWmxiblFzWEc0Z0lFOXdkR2x2Ym1Gc0xGeHVJQ0JKYm1wbFkzUXNYRzRnSUU1dmRFWnZkVzVrUlhoalpYQjBhVzl1TEZ4dWZTQm1jbTl0SUZ3aVFHNWxjM1JxY3k5amIyMXRiMjVjSWp0Y2JtbHRjRzl5ZENCN0lGTjFZbXBsWTNRc0lFOWljMlZ5ZG1GaWJHVWdmU0JtY205dElGd2ljbmhxYzF3aU8xeHVhVzF3YjNKMElIc2diV0Z3SUgwZ1puSnZiU0JjSW5KNGFuTXZiM0JsY21GMGIzSnpYQ0k3WEc1Y2JtbHRjRzl5ZENCN1hHNGdJRWR5WVhCb1JYaGxZM1YwYVc5dVJXNW5hVzVsTEZ4dUlDQjBlWEJsSUVkeVlYQm9SWGhsWTNWMGFXOXVSWFpsYm5Rc1hHNGdJSFI1Y0dVZ1IzSmhjR2hGZUdWamRYUnBiMjVXWVd4MVpYTXNYRzU5SUdaeWIyMGdYQ0l1TGk4dUxpOW5jbUZ3YUZ3aU8xeHVhVzF3YjNKMElIUjVjR1VnZXlCSGNtRndhRmR2Y210bWJHOTNSR1ZtYVc1cGRHbHZiaUI5SUdaeWIyMGdYQ0pBWkdWallXWXRkSE12ZFdrdFpHVmpiM0poZEc5eWN5OW5jbUZ3YUZ3aU8xeHVhVzF3YjNKMElIc2dSR1ZqWVdaU1pYRjFaWE4wUTI5dWRHVjRkQ0I5SUdaeWIyMGdYQ0pBWkdWallXWXRkSE12Wm05eUxXNWxjM1JjSWp0Y2JseHVhVzF3YjNKMElIc2dSM0poY0doU1pYTjFiSFJUWlhKMmFXTmxJSDBnWm5KdmJTQmNJaTR2UjNKaGNHaFNaWE4xYkhSVFpYSjJhV05sWENJN1hHNXBiWEJ2Y25RZ2V5QkhjbUZ3YUZkdmNtdG1iRzkzVTJWeWRtbGpaU0I5SUdaeWIyMGdYQ0l1TDBkeVlYQm9WMjl5YTJac2IzZFRaWEoyYVdObFhDSTdYRzVjYm1WNGNHOXlkQ0JwYm5SbGNtWmhZMlVnUjNKaGNHaEZlR1ZqZFhSbFVHRjViRzloWkNCN1hHNGdJSGR2Y210bWJHOTNPaUJIY21Gd2FGZHZjbXRtYkc5M1JHVm1hVzVwZEdsdmJqdGNiaUFnYVc1d2RYUnpPaUJIY21Gd2FFVjRaV04xZEdsdmJsWmhiSFZsY3p0Y2JuMWNibHh1Wlhod2IzSjBJR2x1ZEdWeVptRmpaU0JIY21Gd2FFVjRaV04xZEdWU1pYTndiMjV6WlNCN1hHNGdJSEoxYmtsa09pQnpkSEpwYm1jN1hHNGdJSE4wWVhSMWN6b2djM1J5YVc1bk8xeHVJQ0J2ZFhSd2RYUnpPaUJTWldOdmNtUThjM1J5YVc1bkxDQjFibXR1YjNkdVBqdGNibjFjYmx4dVFFTnZiblJ5YjJ4c1pYSW9YQ0puY21Gd2FGd2lLVnh1Wlhod2IzSjBJR05zWVhOeklFZHlZWEJvUlhobFkzVjBhVzl1UTI5dWRISnZiR3hsY2lCN1hHNGdJSEJ5YVhaaGRHVWdjbVZoWkc5dWJIa2daWFpsYm5SVGRXSnFaV04wSUQwZ2JtVjNJRk4xWW1wbFkzUThSM0poY0doRmVHVmpkWFJwYjI1RmRtVnVkRDRvS1R0Y2JseHVJQ0JqYjI1emRISjFZM1J2Y2loY2JpQWdJQ0J3Y21sMllYUmxJSEpsWVdSdmJteDVJR1Z1WjJsdVpUb2dSM0poY0doRmVHVmpkWFJwYjI1RmJtZHBibVVzWEc0Z0lDQWdjSEpwZG1GMFpTQnlaV0ZrYjI1c2VTQnlaWE4xYkhSVFpYSjJhV05sT2lCSGNtRndhRkpsYzNWc2RGTmxjblpwWTJVc1hHNGdJQ0FnY0hKcGRtRjBaU0J5WldGa2IyNXNlU0IzYjNKclpteHZkMU5sY25acFkyVTZJRWR5WVhCb1YyOXlhMlpzYjNkVFpYSjJhV05sTEZ4dUlDQWdJRUJQY0hScGIyNWhiQ2dwSUVCSmJtcGxZM1FvUkdWallXWlNaWEYxWlhOMFEyOXVkR1Y0ZENrZ2NISnBkbUYwWlNCeVpXRmtiMjVzZVNCeVpYRjFaWE4wUTI5dWRHVjRkRDg2SUVSbFkyRm1VbVZ4ZFdWemRFTnZiblJsZUhRc1hHNGdJQ2tnZTF4dUlDQWdJSFJvYVhNdVpXNW5hVzVsTG05aWMyVnlkbVVvZTF4dUlDQWdJQ0FnY21WbWNtVnphRG9nWVhONWJtTWdLR1YyWlc1MEtTQTlQaUI3WEc0Z0lDQWdJQ0FnSUhSb2FYTXVaWFpsYm5SVGRXSnFaV04wTG01bGVIUW9aWFpsYm5RcE8xeHVJQ0FnSUNBZ2ZTeGNiaUFnSUNCOUtUdGNiaUFnZlZ4dVhHNGdJRUJRYjNOMEtGd2laWGhsWTNWMFpWd2lLVnh1SUNCaGMzbHVZeUJsZUdWamRYUmxLRnh1SUNBZ0lFQkNiMlI1S0NrZ1ltOWtlVG9nUjNKaGNHaEZlR1ZqZFhSbFVHRjViRzloWkZ4dUlDQXBPaUJRY205dGFYTmxQRWR5WVhCb1JYaGxZM1YwWlZKbGMzQnZibk5sUGlCN1hHNGdJQ0FnWTI5dWMzUWdjbVZ6ZFd4MElEMGdZWGRoYVhRZ2RHaHBjeTVsYm1kcGJtVXVaWGhsWTNWMFpTaGliMlI1TG5kdmNtdG1iRzkzTENCaWIyUjVMbWx1Y0hWMGN5QS9QeUI3ZlNrN1hHNWNiaUFnSUNCMGNua2dlMXh1SUNBZ0lDQWdZWGRoYVhRZ2RHaHBjeTV5WlhOMWJIUlRaWEoyYVdObExuTmhkbVZTWlhOMWJIUW9jbVZ6ZFd4MExDQjBhR2x6TG5KbGNYVmxjM1JEYjI1MFpYaDBLVHRjYmlBZ0lDQjlJR05oZEdOb0lIdGNiaUFnSUNBZ0lDOHZJSEJsY25OcGMzUmxibU5sSUdaaGFXeDFjbVZ6SUcxMWMzUWdibTkwSUcxaGMyc2dZU0J6ZFdOalpYTnpablZzSUdWNFpXTjFkR2x2YmlCeVpYTjFiSFJjYmlBZ0lDQjlYRzVjYmlBZ0lDQnlaWFIxY200Z2UxeHVJQ0FnSUNBZ2NuVnVTV1E2SUhKbGMzVnNkQzV5ZFc1SlpDeGNiaUFnSUNBZ0lITjBZWFIxY3pvZ2NtVnpkV3gwTG5OMFlYUjFjeXhjYmlBZ0lDQWdJRzkxZEhCMWRITTZJSEpsYzNWc2RDNXZkWFJ3ZFhSekxGeHVJQ0FnSUgwN1hHNGdJSDFjYmx4dUlDQkFVM05sS0Z3aVpYWmxiblJ6WENJcFhHNGdJR1YyWlc1MGN5Z3BPaUJQWW5ObGNuWmhZbXhsUEUxbGMzTmhaMlZGZG1WdWRENGdlMXh1SUNBZ0lISmxkSFZ5YmlCMGFHbHpMbVYyWlc1MFUzVmlhbVZqZEM1aGMwOWljMlZ5ZG1GaWJHVW9LUzV3YVhCbEtGeHVJQ0FnSUNBZ2JXRndLRnh1SUNBZ0lDQWdJQ0FvWlhabGJuUTZJRWR5WVhCb1JYaGxZM1YwYVc5dVJYWmxiblFwT2lCTlpYTnpZV2RsUlhabGJuUWdQVDRnS0h0Y2JpQWdJQ0FnSUNBZ0lDQjBlWEJsT2lCY0ltMWxjM05oWjJWY0lpeGNiaUFnSUNBZ0lDQWdJQ0JrWVhSaE9pQktVMDlPTG5OMGNtbHVaMmxtZVNoYlhHNGdJQ0FnSUNBZ0lDQWdJQ0JjSW1keVlYQm9YQ0lzWEc0Z0lDQWdJQ0FnSUNBZ0lDQmxkbVZ1ZEM1MGVYQmxMRnh1SUNBZ0lDQWdJQ0FnSUNBZ1pYWmxiblF1Y25WdVNXUXNYRzRnSUNBZ0lDQWdJQ0FnSUNCN1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUdsa09pQmxkbVZ1ZEM1cFpDeGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ2MyVnhkV1Z1WTJVNklHVjJaVzUwTG5ObGNYVmxibU5sTEZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0IwZVhCbE9pQmxkbVZ1ZEM1MGVYQmxMRnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQnlkVzVKWkRvZ1pYWmxiblF1Y25WdVNXUXNYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lIQmhjbVZ1ZEZKMWJrbGtPaUJsZG1WdWRDNXdZWEpsYm5SU2RXNUpaQ3hjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdkMjl5YTJac2IzZEpaRG9nWlhabGJuUXVkMjl5YTJac2IzZEpaQ3hjYmlBZ0lDQWdJQ0FnSUNBZ0lDQWdibTlrWlVsa09pQmxkbVZ1ZEM1dWIyUmxTV1FzWEc0Z0lDQWdJQ0FnSUNBZ0lDQWdJR1ZrWjJWSlpEb2daWFpsYm5RdVpXUm5aVWxrTEZ4dUlDQWdJQ0FnSUNBZ0lDQWdJQ0J3YjNKME9pQmxkbVZ1ZEM1d2IzSjBMRnh1SUNBZ0lDQWdJQ0FnSUNBZ0lDQnBkR1Z5WVhScGIyNDZJR1YyWlc1MExtbDBaWEpoZEdsdmJpeGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ2NHRjBhRG9nWlhabGJuUXVjR0YwYUN4Y2JpQWdJQ0FnSUNBZ0lDQWdJQ0FnYzNSaGRIVnpPaUJsZG1WdWRDNXpkR0YwZFhNc1hHNGdJQ0FnSUNBZ0lDQWdJQ0FnSUhCaGVXeHZZV1E2SUdWMlpXNTBMbkJoZVd4dllXUXNYRzRnSUNBZ0lDQWdJQ0FnSUNBZ0lHVnljbTl5T2lCbGRtVnVkQzVsY25KdmNpeGNiaUFnSUNBZ0lDQWdJQ0FnSUNBZ2RHbHRaWE4wWVcxd09pQmxkbVZ1ZEM1MGFXMWxjM1JoYlhBdWRHOUpVMDlUZEhKcGJtY29LU3hjYmlBZ0lDQWdJQ0FnSUNBZ0lIMHNYRzRnSUNBZ0lDQWdJQ0FnWFNrc1hHNGdJQ0FnSUNBZ0lIMHBYRzRnSUNBZ0lDQXBYRzRnSUNBZ0tUdGNiaUFnZlZ4dVhHNGdJRUJIWlhRb1hDSnlaWE4xYkhSekx6cHlkVzVKWkZ3aUtWeHVJQ0JoYzNsdVl5Qm5aWFJTWlhOMWJIUW9RRkJoY21GdEtGd2ljblZ1U1dSY0lpa2djblZ1U1dRNklITjBjbWx1WnlrNklGQnliMjFwYzJVOGRXNXJibTkzYmo0Z2UxeHVJQ0FnSUdOdmJuTjBJRzF2WkdWc0lEMGdZWGRoYVhRZ2RHaHBjeTV5WlhOMWJIUlRaWEoyYVdObExtWnBibVJDZVZKMWJrbGtLSEoxYmtsa0xDQjBhR2x6TG5KbGNYVmxjM1JEYjI1MFpYaDBLVHRjYmlBZ0lDQnBaaUFvSVcxdlpHVnNLU0I3WEc0Z0lDQWdJQ0IwYUhKdmR5QnVaWGNnVG05MFJtOTFibVJGZUdObGNIUnBiMjRvWEc0Z0lDQWdJQ0FnSUdCT2J5Qm5jbUZ3YUNCbGVHVmpkWFJwYjI0Z2NtVnpkV3gwSUdadmRXNWtJR1p2Y2lCeWRXNUpaQ0FuSkh0eWRXNUpaSDBuWUZ4dUlDQWdJQ0FnS1R0Y2JpQWdJQ0I5WEc0Z0lDQWdjbVYwZFhKdUlIdGNiaUFnSUNBZ0lISjFia2xrT2lCdGIyUmxiQzV5ZFc1SlpDeGNiaUFnSUNBZ0lIZHZjbXRtYkc5M1NXUTZJRzF2WkdWc0xuZHZjbXRtYkc5M1NXUXNYRzRnSUNBZ0lDQnpkR0YwZFhNNklHMXZaR1ZzTG5OMFlYUjFjeXhjYmlBZ0lDQWdJR2x1Y0hWMGN6b2diVzlrWld3dWFXNXdkWFJ6TEZ4dUlDQWdJQ0FnYjNWMGNIVjBjem9nYlc5a1pXd3ViM1YwY0hWMGN5eGNiaUFnSUNBZ0lHNXZaR1ZTWlhOMWJIUnpPaUJ0YjJSbGJDNXViMlJsVW1WemRXeDBjeXhjYmlBZ0lDQWdJSE4wWVhKMFpXUkJkRG9nYlc5a1pXd3VjM1JoY25SbFpFRjBMRnh1SUNBZ0lDQWdabWx1YVhOb1pXUkJkRG9nYlc5a1pXd3VabWx1YVhOb1pXUkJkQ3hjYmlBZ0lDQjlPMXh1SUNCOVhHNWNiaUFnUUZCMWRDaGNJbmR2Y210bWJHOTNMenBwWkZ3aUtWeHVJQ0JoYzNsdVl5QnpZWFpsVjI5eWEyWnNiM2NvWEc0Z0lDQWdRRkJoY21GdEtGd2lhV1JjSWlrZ2FXUTZJSE4wY21sdVp5eGNiaUFnSUNCQVFtOWtlU2dwSUhOdVlYQnphRzkwT2lCU1pXTnZjbVE4YzNSeWFXNW5MQ0IxYm10dWIzZHVQbHh1SUNBcE9pQlFjbTl0YVhObFBIc2dkMjl5YTJac2IzZEpaRG9nYzNSeWFXNW5PeUJ6WVhabFpFRjBPaUJ6ZEhKcGJtY2dmVDRnZTF4dUlDQWdJR052Ym5OMElHMXZaR1ZzSUQwZ1lYZGhhWFFnZEdocGN5NTNiM0pyWm14dmQxTmxjblpwWTJVdWMyRjJaVk51WVhCemFHOTBLR2xrTENCemJtRndjMmh2ZEN3Z2RHaHBjeTV5WlhGMVpYTjBRMjl1ZEdWNGRDazdYRzRnSUNBZ2NtVjBkWEp1SUhzZ2QyOXlhMlpzYjNkSlpEb2dhV1FzSUhOaGRtVmtRWFE2SUcxdlpHVnNMblZ3WkdGMFpXUkJkQzUwYjBsVFQxTjBjbWx1WnlncElIMDdYRzRnSUgxY2JuMWNiaUpkZlE9PSJdfQ==
|
|
@@ -1,4 +1,37 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
36
|
exports.GraphExecutionModule = void 0;
|
|
4
37
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
@@ -12,43 +45,26 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
12
45
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
13
46
|
};
|
|
14
47
|
var GraphExecutionModule_1;
|
|
15
|
-
/**
|
|
16
|
-
* @module integrations/nest/graph/GraphExecutionModule
|
|
17
|
-
* @summary NestJS DynamicModule hosting the graph execution engine.
|
|
18
|
-
* @description Wires the {@link GraphExecutionEngine}, a demo executor registry, a RamAdapter-backed result repository, and the {@link GraphExecutionController} into a single NestJS module. Use `GraphExecutionModule.forRoot()` to register it in the application.
|
|
19
|
-
*/
|
|
20
48
|
const common_1 = require("@nestjs/common");
|
|
21
|
-
const core_1 = require("@decaf-ts/core");
|
|
22
|
-
const ram_1 = require("@decaf-ts/core/ram");
|
|
23
49
|
const index_js_1 = require("./../../graph/index.cjs");
|
|
24
50
|
const GraphExecutorRegistryFactory_js_1 = require("./GraphExecutorRegistryFactory.cjs");
|
|
25
|
-
const GraphExecutionResultModel_js_1 = require("./GraphExecutionResultModel.cjs");
|
|
26
51
|
const GraphExecutionController_js_1 = require("./GraphExecutionController.cjs");
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
*
|
|
30
|
-
* Provides:
|
|
31
|
-
* - {@link GraphExecutionEngine} — singleton engine with a demo executor registry.
|
|
32
|
-
* - `GRAPH_RESULT_REPOSITORY` — Decaf repository for {@link GraphExecutionResultModel} backed by RamAdapter.
|
|
33
|
-
* - {@link GraphExecutionController} — REST + SSE controller.
|
|
34
|
-
*/
|
|
52
|
+
const GraphResultService_js_1 = require("./GraphResultService.cjs");
|
|
53
|
+
const GraphWorkflowService_js_1 = require("./GraphWorkflowService.cjs");
|
|
35
54
|
let GraphExecutionModule = GraphExecutionModule_1 = class GraphExecutionModule {
|
|
36
|
-
/**
|
|
37
|
-
* Creates a configured {@link DynamicModule} for the graph execution backend.
|
|
38
|
-
*
|
|
39
|
-
* @param options - Module configuration options.
|
|
40
|
-
* @returns A NestJS `DynamicModule` ready for import.
|
|
41
|
-
*/
|
|
42
55
|
static forRoot(options = {}) {
|
|
43
|
-
const user = options.adapterUser ?? "graph-engine";
|
|
44
56
|
const initAdapter = options.initAdapter ?? true;
|
|
57
|
+
const adapterUser = options.adapterUser ?? "graph-engine";
|
|
45
58
|
const providers = [
|
|
46
59
|
{
|
|
47
60
|
provide: index_js_1.GraphExecutionEngine,
|
|
48
|
-
useFactory: () => {
|
|
61
|
+
useFactory: async () => {
|
|
49
62
|
if (initAdapter) {
|
|
50
|
-
|
|
51
|
-
|
|
63
|
+
const { RamAdapter, RamFlavour } = await Promise.resolve().then(() => __importStar(require("@decaf-ts/core/ram")));
|
|
64
|
+
const { Adapter } = await Promise.resolve().then(() => __importStar(require("@decaf-ts/core")));
|
|
65
|
+
RamAdapter.decoration();
|
|
66
|
+
Adapter.setCurrent(RamFlavour);
|
|
67
|
+
new RamAdapter({ user: adapterUser });
|
|
52
68
|
}
|
|
53
69
|
const config = (0, GraphExecutorRegistryFactory_js_1.createDemoEngineConfig)();
|
|
54
70
|
const engine = new index_js_1.GraphExecutionEngine(config);
|
|
@@ -56,25 +72,14 @@ let GraphExecutionModule = GraphExecutionModule_1 = class GraphExecutionModule {
|
|
|
56
72
|
return engine;
|
|
57
73
|
},
|
|
58
74
|
},
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
useFactory: () => {
|
|
62
|
-
if (initAdapter) {
|
|
63
|
-
ram_1.RamAdapter.decoration();
|
|
64
|
-
core_1.Adapter.setCurrent(ram_1.RamFlavour);
|
|
65
|
-
}
|
|
66
|
-
// Creating the adapter ensures a Ram-flavoured instance is available
|
|
67
|
-
// for Repository.forModel. The adapter user is used by audit handlers.
|
|
68
|
-
new ram_1.RamAdapter({ user });
|
|
69
|
-
return core_1.Repository.forModel(GraphExecutionResultModel_js_1.GraphExecutionResultModel);
|
|
70
|
-
},
|
|
71
|
-
},
|
|
75
|
+
GraphResultService_js_1.GraphResultService,
|
|
76
|
+
GraphWorkflowService_js_1.GraphWorkflowService,
|
|
72
77
|
];
|
|
73
78
|
return {
|
|
74
79
|
module: GraphExecutionModule_1,
|
|
75
80
|
controllers: [GraphExecutionController_js_1.GraphExecutionController],
|
|
76
81
|
providers,
|
|
77
|
-
exports: [index_js_1.GraphExecutionEngine,
|
|
82
|
+
exports: [index_js_1.GraphExecutionEngine, GraphResultService_js_1.GraphResultService, GraphWorkflowService_js_1.GraphWorkflowService],
|
|
78
83
|
};
|
|
79
84
|
}
|
|
80
85
|
};
|
|
@@ -82,5 +87,5 @@ exports.GraphExecutionModule = GraphExecutionModule;
|
|
|
82
87
|
exports.GraphExecutionModule = GraphExecutionModule = GraphExecutionModule_1 = __decorate([
|
|
83
88
|
(0, common_1.Module)({})
|
|
84
89
|
], GraphExecutionModule);
|
|
85
|
-
//# sourceMappingURL=
|
|
86
|
-
//# sourceMappingURL=GraphExecutionModule.cjs.map
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhFeGVjdXRpb25Nb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbmVzdC9ncmFwaC9HcmFwaEV4ZWN1dGlvbk1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsT0FBTyxFQUFpQixNQUFNLEVBQVksTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsK0JBQW9CO0FBQ25ELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSwwQ0FBdUM7QUFDeEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLHNDQUFtQztBQUN0RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsZ0NBQTZCO0FBQzFELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxrQ0FBK0I7QUFtQnZELElBQU0sb0JBQW9CLDRCQUExQixNQUFNLG9CQUFvQjtJQUMvQixNQUFNLENBQUMsT0FBTyxDQUNaLFVBQXVDLEVBQUU7UUFFekMsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUM7UUFDaEQsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsSUFBSSxjQUFjLENBQUM7UUFFMUQsTUFBTSxTQUFTLEdBQWU7WUFDNUI7Z0JBQ0UsT0FBTyxFQUFFLG9CQUFvQjtnQkFDN0IsVUFBVSxFQUFFLEtBQUssSUFBSSxFQUFFO29CQUNyQixJQUFJLFdBQVcsRUFBRSxDQUFDO3dCQUNoQixNQUFNLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxHQUFHLE1BQU0sTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7d0JBQ3RFLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxNQUFNLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO3dCQUNuRCxVQUFVLENBQUMsVUFBVSxFQUFFLENBQUM7d0JBQ3hCLE9BQU8sQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7d0JBQy9CLElBQUksVUFBVSxDQUFDLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRSxDQUFDLENBQUM7b0JBQ3hDLENBQUM7b0JBQ0QsTUFBTSxNQUFNLEdBQUcsc0JBQXNCLEVBQUUsQ0FBQztvQkFDeEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDaEQsTUFBTSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDL0IsT0FBTyxNQUFNLENBQUM7Z0JBQ2hCLENBQUM7YUFDRjtZQUNELGtCQUFrQjtZQUNsQixvQkFBb0I7U0FDckIsQ0FBQztRQUVGLE9BQU87WUFDTCxNQUFNLEVBQUUsc0JBQW9CO1lBQzVCLFdBQVcsRUFBRSxDQUFDLHdCQUF3QixDQUFDO1lBQ3ZDLFNBQVM7WUFDVCxPQUFPLEVBQUUsQ0FBQyxvQkFBb0IsRUFBRSxrQkFBa0IsRUFBRSxvQkFBb0IsQ0FBQztTQUMxRSxDQUFDO0lBQ0osQ0FBQztDQUNGLENBQUE7QUFuQ1ksb0JBQW9CO0lBRGhDLE1BQU0sQ0FBQyxFQUFFLENBQUM7R0FDRSxvQkFBb0IsQ0FtQ2hDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRHluYW1pY01vZHVsZSwgTW9kdWxlLCBQcm92aWRlciB9IGZyb20gXCJAbmVzdGpzL2NvbW1vblwiO1xuXG5pbXBvcnQgeyBHcmFwaEV4ZWN1dGlvbkVuZ2luZSB9IGZyb20gXCIuLi8uLi9ncmFwaFwiO1xuaW1wb3J0IHsgY3JlYXRlRGVtb0VuZ2luZUNvbmZpZyB9IGZyb20gXCIuL0dyYXBoRXhlY3V0b3JSZWdpc3RyeUZhY3RvcnlcIjtcbmltcG9ydCB7IEdyYXBoRXhlY3V0aW9uQ29udHJvbGxlciB9IGZyb20gXCIuL0dyYXBoRXhlY3V0aW9uQ29udHJvbGxlclwiO1xuaW1wb3J0IHsgR3JhcGhSZXN1bHRTZXJ2aWNlIH0gZnJvbSBcIi4vR3JhcGhSZXN1bHRTZXJ2aWNlXCI7XG5pbXBvcnQgeyBHcmFwaFdvcmtmbG93U2VydmljZSB9IGZyb20gXCIuL0dyYXBoV29ya2Zsb3dTZXJ2aWNlXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgR3JhcGhFeGVjdXRpb25Nb2R1bGVPcHRpb25zIHtcbiAgLyoqXG4gICAqIFdoZW4gYHRydWVgLCB0aGUgbW9kdWxlIGJvb3RzdHJhcHMgYSBkZWZhdWx0IFJhbUFkYXB0ZXIgZm9yIHN0YW5kYWxvbmVcbiAgICogZGV2ZWxvcG1lbnQuIFdoZW4gYGZhbHNlYCwgdGhlIGhvc3QgYXBwbGljYXRpb24gaXMgZXhwZWN0ZWQgdG8gaGF2ZVxuICAgKiBhbHJlYWR5IGNvbmZpZ3VyZWQgYSBEZWNhZiBhZGFwdGVyIHZpYSBgRGVjYWZNb2R1bGUuZm9yUm9vdCguLi4pYC5cbiAgICogRGVmYXVsdHMgdG8gYHRydWVgIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS5cbiAgICovXG4gIGluaXRBZGFwdGVyPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEFkYXB0ZXIgdXNlciBpZGVudGlmaWVyIHBhc3NlZCB0byBgUmFtQWRhcHRlcmAgd2hlbiBgaW5pdEFkYXB0ZXJgIGlzXG4gICAqIGB0cnVlYC4gSWdub3JlZCB3aGVuIGBpbml0QWRhcHRlcmAgaXMgYGZhbHNlYC5cbiAgICogRGVmYXVsdHMgdG8gYFwiZ3JhcGgtZW5naW5lXCJgLlxuICAgKi9cbiAgYWRhcHRlclVzZXI/OiBzdHJpbmc7XG59XG5cbkBNb2R1bGUoe30pXG5leHBvcnQgY2xhc3MgR3JhcGhFeGVjdXRpb25Nb2R1bGUge1xuICBzdGF0aWMgZm9yUm9vdChcbiAgICBvcHRpb25zOiBHcmFwaEV4ZWN1dGlvbk1vZHVsZU9wdGlvbnMgPSB7fVxuICApOiBEeW5hbWljTW9kdWxlIHtcbiAgICBjb25zdCBpbml0QWRhcHRlciA9IG9wdGlvbnMuaW5pdEFkYXB0ZXIgPz8gdHJ1ZTtcbiAgICBjb25zdCBhZGFwdGVyVXNlciA9IG9wdGlvbnMuYWRhcHRlclVzZXIgPz8gXCJncmFwaC1lbmdpbmVcIjtcblxuICAgIGNvbnN0IHByb3ZpZGVyczogUHJvdmlkZXJbXSA9IFtcbiAgICAgIHtcbiAgICAgICAgcHJvdmlkZTogR3JhcGhFeGVjdXRpb25FbmdpbmUsXG4gICAgICAgIHVzZUZhY3Rvcnk6IGFzeW5jICgpID0+IHtcbiAgICAgICAgICBpZiAoaW5pdEFkYXB0ZXIpIHtcbiAgICAgICAgICAgIGNvbnN0IHsgUmFtQWRhcHRlciwgUmFtRmxhdm91ciB9ID0gYXdhaXQgaW1wb3J0KFwiQGRlY2FmLXRzL2NvcmUvcmFtXCIpO1xuICAgICAgICAgICAgY29uc3QgeyBBZGFwdGVyIH0gPSBhd2FpdCBpbXBvcnQoXCJAZGVjYWYtdHMvY29yZVwiKTtcbiAgICAgICAgICAgIFJhbUFkYXB0ZXIuZGVjb3JhdGlvbigpO1xuICAgICAgICAgICAgQWRhcHRlci5zZXRDdXJyZW50KFJhbUZsYXZvdXIpO1xuICAgICAgICAgICAgbmV3IFJhbUFkYXB0ZXIoeyB1c2VyOiBhZGFwdGVyVXNlciB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgY29uc3QgY29uZmlnID0gY3JlYXRlRGVtb0VuZ2luZUNvbmZpZygpO1xuICAgICAgICAgIGNvbnN0IGVuZ2luZSA9IG5ldyBHcmFwaEV4ZWN1dGlvbkVuZ2luZShjb25maWcpO1xuICAgICAgICAgIGNvbmZpZy5vbkVuZ2luZUNyZWF0ZWQoZW5naW5lKTtcbiAgICAgICAgICByZXR1cm4gZW5naW5lO1xuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIEdyYXBoUmVzdWx0U2VydmljZSxcbiAgICAgIEdyYXBoV29ya2Zsb3dTZXJ2aWNlLFxuICAgIF07XG5cbiAgICByZXR1cm4ge1xuICAgICAgbW9kdWxlOiBHcmFwaEV4ZWN1dGlvbk1vZHVsZSxcbiAgICAgIGNvbnRyb2xsZXJzOiBbR3JhcGhFeGVjdXRpb25Db250cm9sbGVyXSxcbiAgICAgIHByb3ZpZGVycyxcbiAgICAgIGV4cG9ydHM6IFtHcmFwaEV4ZWN1dGlvbkVuZ2luZSwgR3JhcGhSZXN1bHRTZXJ2aWNlLCBHcmFwaFdvcmtmbG93U2VydmljZV0sXG4gICAgfTtcbiAgfVxufVxuIl19
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhFeGVjdXRpb25Nb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJHcmFwaEV4ZWN1dGlvbk1vZHVsZS5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxJQUFJLFVBQVUsR0FBRyxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksVUFBVSxVQUFVLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxJQUFJO0lBQ2pGLElBQUksQ0FBQyxHQUFHLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFDN0gsSUFBSSxPQUFPLE9BQU8sS0FBSyxRQUFRLElBQUksT0FBTyxPQUFPLENBQUMsUUFBUSxLQUFLLFVBQVU7UUFBRSxDQUFDLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQzs7UUFDMUgsS0FBSyxJQUFJLENBQUMsR0FBRyxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRTtZQUFFLElBQUksQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUM7Z0JBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsSixPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDbEUsQ0FBQyxDQUFDO0FBQ0YsSUFBSSxzQkFBc0IsQ0FBQztBQUMzQiwyQ0FBd0M7QUFDeEMscURBQThEO0FBQzlELHVGQUEyRTtBQUMzRSwrRUFBeUU7QUFDekUsbUVBQTZEO0FBQzdELHVFQUFpRTtBQUNqRSxJQUFJLG9CQUFvQixHQUFHLHNCQUFzQixHQUFHLE1BQU0sb0JBQW9CO0lBQzFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxHQUFHLEVBQUU7UUFDdkIsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUM7UUFDaEQsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsSUFBSSxjQUFjLENBQUM7UUFDMUQsTUFBTSxTQUFTLEdBQUc7WUFDZDtnQkFDSSxPQUFPLEVBQUUsK0JBQW9CO2dCQUM3QixVQUFVLEVBQUUsS0FBSyxJQUFJLEVBQUU7b0JBQ25CLElBQUksV0FBVyxFQUFFLENBQUM7d0JBQ2QsTUFBTSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsR0FBRyx3REFBYSxvQkFBb0IsR0FBQyxDQUFDO3dCQUN0RSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsd0RBQWEsZ0JBQWdCLEdBQUMsQ0FBQzt3QkFDbkQsVUFBVSxDQUFDLFVBQVUsRUFBRSxDQUFDO3dCQUN4QixPQUFPLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDO3dCQUMvQixJQUFJLFVBQVUsQ0FBQyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO29CQUMxQyxDQUFDO29CQUNELE1BQU0sTUFBTSxHQUFHLElBQUEsd0RBQXNCLEdBQUUsQ0FBQztvQkFDeEMsTUFBTSxNQUFNLEdBQUcsSUFBSSwrQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDaEQsTUFBTSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDL0IsT0FBTyxNQUFNLENBQUM7Z0JBQ2xCLENBQUM7YUFDSjtZQUNELDBDQUFrQjtZQUNsQiw4Q0FBb0I7U0FDdkIsQ0FBQztRQUNGLE9BQU87WUFDSCxNQUFNLEVBQUUsc0JBQXNCO1lBQzlCLFdBQVcsRUFBRSxDQUFDLHNEQUF3QixDQUFDO1lBQ3ZDLFNBQVM7WUFDVCxPQUFPLEVBQUUsQ0FBQywrQkFBb0IsRUFBRSwwQ0FBa0IsRUFBRSw4Q0FBb0IsQ0FBQztTQUM1RSxDQUFDO0lBQ04sQ0FBQztDQUNKLENBQUM7QUFJTyxvREFBb0I7QUFIN0IsK0JBQUEsb0JBQW9CLEdBQUcsc0JBQXNCLEdBQUcsVUFBVSxDQUFDO0lBQ3ZELElBQUEsZUFBTSxFQUFDLEVBQUUsQ0FBQztDQUNiLEVBQUUsb0JBQW9CLENBQUMsQ0FBQztBQUV6Qiw4c0pBQThzSiIsInNvdXJjZXNDb250ZW50IjpbInZhciBfX2RlY29yYXRlID0gKHRoaXMgJiYgdGhpcy5fX2RlY29yYXRlKSB8fCBmdW5jdGlvbiAoZGVjb3JhdG9ycywgdGFyZ2V0LCBrZXksIGRlc2MpIHtcbiAgICB2YXIgYyA9IGFyZ3VtZW50cy5sZW5ndGgsIHIgPSBjIDwgMyA/IHRhcmdldCA6IGRlc2MgPT09IG51bGwgPyBkZXNjID0gT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0YXJnZXQsIGtleSkgOiBkZXNjLCBkO1xuICAgIGlmICh0eXBlb2YgUmVmbGVjdCA9PT0gXCJvYmplY3RcIiAmJiB0eXBlb2YgUmVmbGVjdC5kZWNvcmF0ZSA9PT0gXCJmdW5jdGlvblwiKSByID0gUmVmbGVjdC5kZWNvcmF0ZShkZWNvcmF0b3JzLCB0YXJnZXQsIGtleSwgZGVzYyk7XG4gICAgZWxzZSBmb3IgKHZhciBpID0gZGVjb3JhdG9ycy5sZW5ndGggLSAxOyBpID49IDA7IGktLSkgaWYgKGQgPSBkZWNvcmF0b3JzW2ldKSByID0gKGMgPCAzID8gZChyKSA6IGMgPiAzID8gZCh0YXJnZXQsIGtleSwgcikgOiBkKHRhcmdldCwga2V5KSkgfHwgcjtcbiAgICByZXR1cm4gYyA+IDMgJiYgciAmJiBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIHIpLCByO1xufTtcbnZhciBHcmFwaEV4ZWN1dGlvbk1vZHVsZV8xO1xuaW1wb3J0IHsgTW9kdWxlIH0gZnJvbSBcIkBuZXN0anMvY29tbW9uXCI7XG5pbXBvcnQgeyBHcmFwaEV4ZWN1dGlvbkVuZ2luZSB9IGZyb20gXCIuLy4uLy4uL2dyYXBoL2luZGV4LmpzXCI7XG5pbXBvcnQgeyBjcmVhdGVEZW1vRW5naW5lQ29uZmlnIH0gZnJvbSBcIi4vR3JhcGhFeGVjdXRvclJlZ2lzdHJ5RmFjdG9yeS5qc1wiO1xuaW1wb3J0IHsgR3JhcGhFeGVjdXRpb25Db250cm9sbGVyIH0gZnJvbSBcIi4vR3JhcGhFeGVjdXRpb25Db250cm9sbGVyLmpzXCI7XG5pbXBvcnQgeyBHcmFwaFJlc3VsdFNlcnZpY2UgfSBmcm9tIFwiLi9HcmFwaFJlc3VsdFNlcnZpY2UuanNcIjtcbmltcG9ydCB7IEdyYXBoV29ya2Zsb3dTZXJ2aWNlIH0gZnJvbSBcIi4vR3JhcGhXb3JrZmxvd1NlcnZpY2UuanNcIjtcbmxldCBHcmFwaEV4ZWN1dGlvbk1vZHVsZSA9IEdyYXBoRXhlY3V0aW9uTW9kdWxlXzEgPSBjbGFzcyBHcmFwaEV4ZWN1dGlvbk1vZHVsZSB7XG4gICAgc3RhdGljIGZvclJvb3Qob3B0aW9ucyA9IHt9KSB7XG4gICAgICAgIGNvbnN0IGluaXRBZGFwdGVyID0gb3B0aW9ucy5pbml0QWRhcHRlciA/PyB0cnVlO1xuICAgICAgICBjb25zdCBhZGFwdGVyVXNlciA9IG9wdGlvbnMuYWRhcHRlclVzZXIgPz8gXCJncmFwaC1lbmdpbmVcIjtcbiAgICAgICAgY29uc3QgcHJvdmlkZXJzID0gW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHByb3ZpZGU6IEdyYXBoRXhlY3V0aW9uRW5naW5lLFxuICAgICAgICAgICAgICAgIHVzZUZhY3Rvcnk6IGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGluaXRBZGFwdGVyKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB7IFJhbUFkYXB0ZXIsIFJhbUZsYXZvdXIgfSA9IGF3YWl0IGltcG9ydChcIkBkZWNhZi10cy9jb3JlL3JhbVwiKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgQWRhcHRlciB9ID0gYXdhaXQgaW1wb3J0KFwiQGRlY2FmLXRzL2NvcmVcIik7XG4gICAgICAgICAgICAgICAgICAgICAgICBSYW1BZGFwdGVyLmRlY29yYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIEFkYXB0ZXIuc2V0Q3VycmVudChSYW1GbGF2b3VyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBSYW1BZGFwdGVyKHsgdXNlcjogYWRhcHRlclVzZXIgfSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY29uZmlnID0gY3JlYXRlRGVtb0VuZ2luZUNvbmZpZygpO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBlbmdpbmUgPSBuZXcgR3JhcGhFeGVjdXRpb25FbmdpbmUoY29uZmlnKTtcbiAgICAgICAgICAgICAgICAgICAgY29uZmlnLm9uRW5naW5lQ3JlYXRlZChlbmdpbmUpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZW5naW5lO1xuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgR3JhcGhSZXN1bHRTZXJ2aWNlLFxuICAgICAgICAgICAgR3JhcGhXb3JrZmxvd1NlcnZpY2UsXG4gICAgICAgIF07XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBtb2R1bGU6IEdyYXBoRXhlY3V0aW9uTW9kdWxlXzEsXG4gICAgICAgICAgICBjb250cm9sbGVyczogW0dyYXBoRXhlY3V0aW9uQ29udHJvbGxlcl0sXG4gICAgICAgICAgICBwcm92aWRlcnMsXG4gICAgICAgICAgICBleHBvcnRzOiBbR3JhcGhFeGVjdXRpb25FbmdpbmUsIEdyYXBoUmVzdWx0U2VydmljZSwgR3JhcGhXb3JrZmxvd1NlcnZpY2VdLFxuICAgICAgICB9O1xuICAgIH1cbn07XG5HcmFwaEV4ZWN1dGlvbk1vZHVsZSA9IEdyYXBoRXhlY3V0aW9uTW9kdWxlXzEgPSBfX2RlY29yYXRlKFtcbiAgICBNb2R1bGUoe30pXG5dLCBHcmFwaEV4ZWN1dGlvbk1vZHVsZSk7XG5leHBvcnQgeyBHcmFwaEV4ZWN1dGlvbk1vZHVsZSB9O1xuLy8jIHNvdXJjZU1hcHBpbmdVUkw9ZGF0YTphcHBsaWNhdGlvbi9qc29uO2Jhc2U2NCxleUoyWlhKemFXOXVJam96TENKbWFXeGxJam9pUjNKaGNHaEZlR1ZqZFhScGIyNU5iMlIxYkdVdWFuTWlMQ0p6YjNWeVkyVlNiMjkwSWpvaUlpd2ljMjkxY21ObGN5STZXeUl1TGk4dUxpOHVMaTh1TGk5emNtTXZibVZ6ZEM5bmNtRndhQzlIY21Gd2FFVjRaV04xZEdsdmJrMXZaSFZzWlM1MGN5SmRMQ0p1WVcxbGN5STZXMTBzSW0xaGNIQnBibWR6SWpvaU96czdPenM3TzBGQlFVRXNUMEZCVHl4RlFVRnBRaXhOUVVGTkxFVkJRVmtzVFVGQlRTeG5Ra0ZCWjBJc1EwRkJRenRCUVVWcVJTeFBRVUZQTEVWQlFVVXNiMEpCUVc5Q0xFVkJRVVVzSzBKQlFXOUNPMEZCUTI1RUxFOUJRVThzUlVGQlJTeHpRa0ZCYzBJc1JVRkJSU3d3UTBGQmRVTTdRVUZEZUVVc1QwRkJUeXhGUVVGRkxIZENRVUYzUWl4RlFVRkZMSE5EUVVGdFF6dEJRVU4wUlN4UFFVRlBMRVZCUVVVc2EwSkJRV3RDTEVWQlFVVXNaME5CUVRaQ08wRkJRekZFTEU5QlFVOHNSVUZCUlN4dlFrRkJiMElzUlVGQlJTeHJRMEZCSzBJN1FVRnRRblpFTEVsQlFVMHNiMEpCUVc5Q0xEUkNRVUV4UWl4TlFVRk5MRzlDUVVGdlFqdEpRVU12UWl4TlFVRk5MRU5CUVVNc1QwRkJUeXhEUVVOYUxGVkJRWFZETEVWQlFVVTdVVUZGZWtNc1RVRkJUU3hYUVVGWExFZEJRVWNzVDBGQlR5eERRVUZETEZkQlFWY3NTVUZCU1N4SlFVRkpMRU5CUVVNN1VVRkRhRVFzVFVGQlRTeFhRVUZYTEVkQlFVY3NUMEZCVHl4RFFVRkRMRmRCUVZjc1NVRkJTU3hqUVVGakxFTkJRVU03VVVGRk1VUXNUVUZCVFN4VFFVRlRMRWRCUVdVN1dVRkROVUk3WjBKQlEwVXNUMEZCVHl4RlFVRkZMRzlDUVVGdlFqdG5Ra0ZETjBJc1ZVRkJWU3hGUVVGRkxFdEJRVXNzU1VGQlNTeEZRVUZGTzI5Q1FVTnlRaXhKUVVGSkxGZEJRVmNzUlVGQlJTeERRVUZETzNkQ1FVTm9RaXhOUVVGTkxFVkJRVVVzVlVGQlZTeEZRVUZGTEZWQlFWVXNSVUZCUlN4SFFVRkhMRTFCUVUwc1RVRkJUU3hEUVVGRExHOUNRVUZ2UWl4RFFVRkRMRU5CUVVNN2QwSkJRM1JGTEUxQlFVMHNSVUZCUlN4UFFVRlBMRVZCUVVVc1IwRkJSeXhOUVVGTkxFMUJRVTBzUTBGQlF5eG5Ra0ZCWjBJc1EwRkJReXhEUVVGRE8zZENRVU51UkN4VlFVRlZMRU5CUVVNc1ZVRkJWU3hGUVVGRkxFTkJRVU03ZDBKQlEzaENMRTlCUVU4c1EwRkJReXhWUVVGVkxFTkJRVU1zVlVGQlZTeERRVUZETEVOQlFVTTdkMEpCUXk5Q0xFbEJRVWtzVlVGQlZTeERRVUZETEVWQlFVVXNTVUZCU1N4RlFVRkZMRmRCUVZjc1JVRkJSU3hEUVVGRExFTkJRVU03YjBKQlEzaERMRU5CUVVNN2IwSkJRMFFzVFVGQlRTeE5RVUZOTEVkQlFVY3NjMEpCUVhOQ0xFVkJRVVVzUTBGQlF6dHZRa0ZEZUVNc1RVRkJUU3hOUVVGTkxFZEJRVWNzU1VGQlNTeHZRa0ZCYjBJc1EwRkJReXhOUVVGTkxFTkJRVU1zUTBGQlF6dHZRa0ZEYUVRc1RVRkJUU3hEUVVGRExHVkJRV1VzUTBGQlF5eE5RVUZOTEVOQlFVTXNRMEZCUXp0dlFrRkRMMElzVDBGQlR5eE5RVUZOTEVOQlFVTTdaMEpCUTJoQ0xFTkJRVU03WVVGRFJqdFpRVU5FTEd0Q1FVRnJRanRaUVVOc1FpeHZRa0ZCYjBJN1UwRkRja0lzUTBGQlF6dFJRVVZHTEU5QlFVODdXVUZEVEN4TlFVRk5MRVZCUVVVc2MwSkJRVzlDTzFsQlF6VkNMRmRCUVZjc1JVRkJSU3hEUVVGRExIZENRVUYzUWl4RFFVRkRPMWxCUTNaRExGTkJRVk03V1VGRFZDeFBRVUZQTEVWQlFVVXNRMEZCUXl4dlFrRkJiMElzUlVGQlJTeHJRa0ZCYTBJc1JVRkJSU3h2UWtGQmIwSXNRMEZCUXp0VFFVTXhSU3hEUVVGRE8wbEJRMG9zUTBGQlF6dERRVU5HTEVOQlFVRTdRVUZ1UTFrc2IwSkJRVzlDTzBsQlJHaERMRTFCUVUwc1EwRkJReXhGUVVGRkxFTkJRVU03UjBGRFJTeHZRa0ZCYjBJc1EwRnRRMmhESWl3aWMyOTFjbU5sYzBOdmJuUmxiblFpT2xzaWFXMXdiM0owSUhzZ1JIbHVZVzFwWTAxdlpIVnNaU3dnVFc5a2RXeGxMQ0JRY205MmFXUmxjaUI5SUdaeWIyMGdYQ0pBYm1WemRHcHpMMk52YlcxdmJsd2lPMXh1WEc1cGJYQnZjblFnZXlCSGNtRndhRVY0WldOMWRHbHZia1Z1WjJsdVpTQjlJR1p5YjIwZ1hDSXVMaTh1TGk5bmNtRndhRndpTzF4dWFXMXdiM0owSUhzZ1kzSmxZWFJsUkdWdGIwVnVaMmx1WlVOdmJtWnBaeUI5SUdaeWIyMGdYQ0l1TDBkeVlYQm9SWGhsWTNWMGIzSlNaV2RwYzNSeWVVWmhZM1J2Y25sY0lqdGNibWx0Y0c5eWRDQjdJRWR5WVhCb1JYaGxZM1YwYVc5dVEyOXVkSEp2Ykd4bGNpQjlJR1p5YjIwZ1hDSXVMMGR5WVhCb1JYaGxZM1YwYVc5dVEyOXVkSEp2Ykd4bGNsd2lPMXh1YVcxd2IzSjBJSHNnUjNKaGNHaFNaWE4xYkhSVFpYSjJhV05sSUgwZ1puSnZiU0JjSWk0dlIzSmhjR2hTWlhOMWJIUlRaWEoyYVdObFhDSTdYRzVwYlhCdmNuUWdleUJIY21Gd2FGZHZjbXRtYkc5M1UyVnlkbWxqWlNCOUlHWnliMjBnWENJdUwwZHlZWEJvVjI5eWEyWnNiM2RUWlhKMmFXTmxYQ0k3WEc1Y2JtVjRjRzl5ZENCcGJuUmxjbVpoWTJVZ1IzSmhjR2hGZUdWamRYUnBiMjVOYjJSMWJHVlBjSFJwYjI1eklIdGNiaUFnTHlvcVhHNGdJQ0FxSUZkb1pXNGdZSFJ5ZFdWZ0xDQjBhR1VnYlc5a2RXeGxJR0p2YjNSemRISmhjSE1nWVNCa1pXWmhkV3gwSUZKaGJVRmtZWEIwWlhJZ1ptOXlJSE4wWVc1a1lXeHZibVZjYmlBZ0lDb2daR1YyWld4dmNHMWxiblF1SUZkb1pXNGdZR1poYkhObFlDd2dkR2hsSUdodmMzUWdZWEJ3YkdsallYUnBiMjRnYVhNZ1pYaHdaV04wWldRZ2RHOGdhR0YyWlZ4dUlDQWdLaUJoYkhKbFlXUjVJR052Ym1acFozVnlaV1FnWVNCRVpXTmhaaUJoWkdGd2RHVnlJSFpwWVNCZ1JHVmpZV1pOYjJSMWJHVXVabTl5VW05dmRDZ3VMaTRwWUM1Y2JpQWdJQ29nUkdWbVlYVnNkSE1nZEc4Z1lIUnlkV1ZnSUdadmNpQmlZV05yZDJGeVpITWdZMjl0Y0dGMGFXSnBiR2wwZVM1Y2JpQWdJQ292WEc0Z0lHbHVhWFJCWkdGd2RHVnlQem9nWW05dmJHVmhianRjYmlBZ0x5b3FYRzRnSUNBcUlFRmtZWEIwWlhJZ2RYTmxjaUJwWkdWdWRHbG1hV1Z5SUhCaGMzTmxaQ0IwYnlCZ1VtRnRRV1JoY0hSbGNtQWdkMmhsYmlCZ2FXNXBkRUZrWVhCMFpYSmdJR2x6WEc0Z0lDQXFJR0IwY25WbFlDNGdTV2R1YjNKbFpDQjNhR1Z1SUdCcGJtbDBRV1JoY0hSbGNtQWdhWE1nWUdaaGJITmxZQzVjYmlBZ0lDb2dSR1ZtWVhWc2RITWdkRzhnWUZ3aVozSmhjR2d0Wlc1bmFXNWxYQ0pnTGx4dUlDQWdLaTljYmlBZ1lXUmhjSFJsY2xWelpYSS9PaUJ6ZEhKcGJtYzdYRzU5WEc1Y2JrQk5iMlIxYkdVb2UzMHBYRzVsZUhCdmNuUWdZMnhoYzNNZ1IzSmhjR2hGZUdWamRYUnBiMjVOYjJSMWJHVWdlMXh1SUNCemRHRjBhV01nWm05eVVtOXZkQ2hjYmlBZ0lDQnZjSFJwYjI1ek9pQkhjbUZ3YUVWNFpXTjFkR2x2YmsxdlpIVnNaVTl3ZEdsdmJuTWdQU0I3ZlZ4dUlDQXBPaUJFZVc1aGJXbGpUVzlrZFd4bElIdGNiaUFnSUNCamIyNXpkQ0JwYm1sMFFXUmhjSFJsY2lBOUlHOXdkR2x2Ym5NdWFXNXBkRUZrWVhCMFpYSWdQejhnZEhKMVpUdGNiaUFnSUNCamIyNXpkQ0JoWkdGd2RHVnlWWE5sY2lBOUlHOXdkR2x2Ym5NdVlXUmhjSFJsY2xWelpYSWdQejhnWENKbmNtRndhQzFsYm1kcGJtVmNJanRjYmx4dUlDQWdJR052Ym5OMElIQnliM1pwWkdWeWN6b2dVSEp2ZG1sa1pYSmJYU0E5SUZ0Y2JpQWdJQ0FnSUh0Y2JpQWdJQ0FnSUNBZ2NISnZkbWxrWlRvZ1IzSmhjR2hGZUdWamRYUnBiMjVGYm1kcGJtVXNYRzRnSUNBZ0lDQWdJSFZ6WlVaaFkzUnZjbms2SUdGemVXNWpJQ2dwSUQwK0lIdGNiaUFnSUNBZ0lDQWdJQ0JwWmlBb2FXNXBkRUZrWVhCMFpYSXBJSHRjYmlBZ0lDQWdJQ0FnSUNBZ0lHTnZibk4wSUhzZ1VtRnRRV1JoY0hSbGNpd2dVbUZ0Um14aGRtOTFjaUI5SUQwZ1lYZGhhWFFnYVcxd2IzSjBLRndpUUdSbFkyRm1MWFJ6TDJOdmNtVXZjbUZ0WENJcE8xeHVJQ0FnSUNBZ0lDQWdJQ0FnWTI5dWMzUWdleUJCWkdGd2RHVnlJSDBnUFNCaGQyRnBkQ0JwYlhCdmNuUW9YQ0pBWkdWallXWXRkSE12WTI5eVpWd2lLVHRjYmlBZ0lDQWdJQ0FnSUNBZ0lGSmhiVUZrWVhCMFpYSXVaR1ZqYjNKaGRHbHZiaWdwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdRV1JoY0hSbGNpNXpaWFJEZFhKeVpXNTBLRkpoYlVac1lYWnZkWElwTzF4dUlDQWdJQ0FnSUNBZ0lDQWdibVYzSUZKaGJVRmtZWEIwWlhJb2V5QjFjMlZ5T2lCaFpHRndkR1Z5VlhObGNpQjlLVHRjYmlBZ0lDQWdJQ0FnSUNCOVhHNGdJQ0FnSUNBZ0lDQWdZMjl1YzNRZ1kyOXVabWxuSUQwZ1kzSmxZWFJsUkdWdGIwVnVaMmx1WlVOdmJtWnBaeWdwTzF4dUlDQWdJQ0FnSUNBZ0lHTnZibk4wSUdWdVoybHVaU0E5SUc1bGR5QkhjbUZ3YUVWNFpXTjFkR2x2YmtWdVoybHVaU2hqYjI1bWFXY3BPMXh1SUNBZ0lDQWdJQ0FnSUdOdmJtWnBaeTV2YmtWdVoybHVaVU55WldGMFpXUW9aVzVuYVc1bEtUdGNiaUFnSUNBZ0lDQWdJQ0J5WlhSMWNtNGdaVzVuYVc1bE8xeHVJQ0FnSUNBZ0lDQjlMRnh1SUNBZ0lDQWdmU3hjYmlBZ0lDQWdJRWR5WVhCb1VtVnpkV3gwVTJWeWRtbGpaU3hjYmlBZ0lDQWdJRWR5WVhCb1YyOXlhMlpzYjNkVFpYSjJhV05sTEZ4dUlDQWdJRjA3WEc1Y2JpQWdJQ0J5WlhSMWNtNGdlMXh1SUNBZ0lDQWdiVzlrZFd4bE9pQkhjbUZ3YUVWNFpXTjFkR2x2YmsxdlpIVnNaU3hjYmlBZ0lDQWdJR052Ym5SeWIyeHNaWEp6T2lCYlIzSmhjR2hGZUdWamRYUnBiMjVEYjI1MGNtOXNiR1Z5WFN4Y2JpQWdJQ0FnSUhCeWIzWnBaR1Z5Y3l4Y2JpQWdJQ0FnSUdWNGNHOXlkSE02SUZ0SGNtRndhRVY0WldOMWRHbHZia1Z1WjJsdVpTd2dSM0poY0doU1pYTjFiSFJUWlhKMmFXTmxMQ0JIY21Gd2FGZHZjbXRtYkc5M1UyVnlkbWxqWlYwc1hHNGdJQ0FnZlR0Y2JpQWdmVnh1ZlZ4dUlsMTkiXX0=
|
|
@@ -15,25 +15,8 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
15
15
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
|
|
16
16
|
return Reflect.metadata(k, v);
|
|
17
17
|
};
|
|
18
|
-
/**
|
|
19
|
-
* @module integrations/nest/graph/GraphExecutionResultModel
|
|
20
|
-
* @summary Decaf model for persisting graph execution results.
|
|
21
|
-
* @description Serializes a {@link GraphExecutionResult} for storage in a Decaf persistence adapter (e.g. RamAdapter). Stores the run id, workflow id, status, inputs, outputs, per-node results, and timing information so clients can retrieve a completed run's full state via `GET /graph/results/:runId`.
|
|
22
|
-
*/
|
|
23
18
|
const decorator_validation_1 = require("@decaf-ts/decorator-validation");
|
|
24
19
|
const core_1 = require("@decaf-ts/core");
|
|
25
|
-
const decoration_1 = require("@decaf-ts/decoration");
|
|
26
|
-
/**
|
|
27
|
-
* Ram flavour identifier. Duplicated here to avoid the side-effect import of
|
|
28
|
-
* `@decaf-ts/core/ram` (which calls `RamAdapter.decoration()` at module load
|
|
29
|
-
* time and can interfere with other modules' metadata initialisation).
|
|
30
|
-
*/
|
|
31
|
-
const RAM_FLAVOUR = "ram";
|
|
32
|
-
/**
|
|
33
|
-
* Persisted representation of a completed graph execution run.
|
|
34
|
-
*
|
|
35
|
-
* Stored in the `graph_execution_result` table and keyed by `runId`.
|
|
36
|
-
*/
|
|
37
20
|
let GraphExecutionResultModel = class GraphExecutionResultModel extends decorator_validation_1.Model {
|
|
38
21
|
constructor(arg) {
|
|
39
22
|
super(arg);
|
|
@@ -73,10 +56,9 @@ __decorate([
|
|
|
73
56
|
__metadata("design:type", Date)
|
|
74
57
|
], GraphExecutionResultModel.prototype, "finishedAt", void 0);
|
|
75
58
|
exports.GraphExecutionResultModel = GraphExecutionResultModel = __decorate([
|
|
76
|
-
(0, decoration_1.uses)(RAM_FLAVOUR),
|
|
77
59
|
(0, core_1.table)("graph_execution_result"),
|
|
78
60
|
(0, decorator_validation_1.model)(),
|
|
79
61
|
__metadata("design:paramtypes", [Object])
|
|
80
62
|
], GraphExecutionResultModel);
|
|
81
|
-
//# sourceMappingURL=
|
|
82
|
-
//# sourceMappingURL=
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhFeGVjdXRpb25SZXN1bHRNb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9uZXN0L2dyYXBoL0dyYXBoRXhlY3V0aW9uUmVzdWx0TW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQWlCLE1BQU0sZ0NBQWdDLENBQUM7QUFDN0UsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJNUMsSUFBTSx5QkFBeUIsR0FBL0IsTUFBTSx5QkFBMEIsU0FBUSxLQUFLO0lBeUJsRCxZQUFZLEdBQXlDO1FBQ25ELEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNiLENBQUM7Q0FDRixDQUFBO0FBMUJDO0lBREMsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLENBQUM7O3dEQUN4QjtBQUdmO0lBREMsTUFBTSxFQUFFOzs2REFDVztBQUdwQjtJQURDLE1BQU0sRUFBRTs7eURBQ087QUFHaEI7SUFEQyxNQUFNLEVBQUU7O3lEQUN3QjtBQUdqQztJQURDLE1BQU0sRUFBRTs7MERBQ3lCO0FBR2xDO0lBREMsTUFBTSxFQUFFOzs4REFDNkI7QUFHdEM7SUFEQyxNQUFNLEVBQUU7OEJBQ0csSUFBSTs0REFBQztBQUdqQjtJQURDLE1BQU0sRUFBRTs4QkFDSSxJQUFJOzZEQUFDO0FBdkJQLHlCQUF5QjtJQUZyQyxLQUFLLENBQUMsd0JBQXdCLENBQUM7SUFDL0IsS0FBSyxFQUFFOztHQUNLLHlCQUF5QixDQTRCckMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2RlbCwgbW9kZWwsIHR5cGUgTW9kZWxBcmcgfSBmcm9tIFwiQGRlY2FmLXRzL2RlY29yYXRvci12YWxpZGF0aW9uXCI7XG5pbXBvcnQgeyBjb2x1bW4sIHBrLCB0YWJsZSB9IGZyb20gXCJAZGVjYWYtdHMvY29yZVwiO1xuXG5AdGFibGUoXCJncmFwaF9leGVjdXRpb25fcmVzdWx0XCIpXG5AbW9kZWwoKVxuZXhwb3J0IGNsYXNzIEdyYXBoRXhlY3V0aW9uUmVzdWx0TW9kZWwgZXh0ZW5kcyBNb2RlbCB7XG4gIEBwayh7IHR5cGU6IFN0cmluZywgZ2VuZXJhdGVkOiBmYWxzZSB9KVxuICBydW5JZCE6IHN0cmluZztcblxuICBAY29sdW1uKClcbiAgd29ya2Zsb3dJZCE6IHN0cmluZztcblxuICBAY29sdW1uKClcbiAgc3RhdHVzITogc3RyaW5nO1xuXG4gIEBjb2x1bW4oKVxuICBpbnB1dHMhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcblxuICBAY29sdW1uKClcbiAgb3V0cHV0cyE6IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuXG4gIEBjb2x1bW4oKVxuICBub2RlUmVzdWx0cyE6IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuXG4gIEBjb2x1bW4oKVxuICBzdGFydGVkQXQhOiBEYXRlO1xuXG4gIEBjb2x1bW4oKVxuICBmaW5pc2hlZEF0PzogRGF0ZTtcblxuICBjb25zdHJ1Y3Rvcihhcmc/OiBNb2RlbEFyZzxHcmFwaEV4ZWN1dGlvblJlc3VsdE1vZGVsPikge1xuICAgIHN1cGVyKGFyZyk7XG4gIH1cbn1cbiJdfQ==
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhFeGVjdXRpb25SZXN1bHRNb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIkdyYXBoRXhlY3V0aW9uUmVzdWx0TW9kZWwuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsSUFBSSxVQUFVLEdBQUcsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLFVBQVUsVUFBVSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsSUFBSTtJQUNqRixJQUFJLENBQUMsR0FBRyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsd0JBQXdCLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzdILElBQUksT0FBTyxPQUFPLEtBQUssUUFBUSxJQUFJLE9BQU8sT0FBTyxDQUFDLFFBQVEsS0FBSyxVQUFVO1FBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsVUFBVSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7O1FBQzFILEtBQUssSUFBSSxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUU7WUFBRSxJQUFJLENBQUMsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDO2dCQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENB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NUMsRUFBRSx5QkFBeUIsQ0FBQyxDQUFDO0FBRTlCLDgvREFBOC9EIiwic291cmNlc0NvbnRlbnQiOlsidmFyIF9fZGVjb3JhdGUgPSAodGhpcyAmJiB0aGlzLl9fZGVjb3JhdGUpIHx8IGZ1bmN0aW9uIChkZWNvcmF0b3JzLCB0YXJnZXQsIGtleSwgZGVzYykge1xuICAgIHZhciBjID0gYXJndW1lbnRzLmxlbmd0aCwgciA9IGMgPCAzID8gdGFyZ2V0IDogZGVzYyA9PT0gbnVsbCA/IGRlc2MgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHRhcmdldCwga2V5KSA6IGRlc2MsIGQ7XG4gICAgaWYgKHR5cGVvZiBSZWZsZWN0ID09PSBcIm9iamVjdFwiICYmIHR5cGVvZiBSZWZsZWN0LmRlY29yYXRlID09PSBcImZ1bmN0aW9uXCIpIHIgPSBSZWZsZWN0LmRlY29yYXRlKGRlY29yYXRvcnMsIHRhcmdldCwga2V5LCBkZXNjKTtcbiAgICBlbHNlIGZvciAodmFyIGkgPSBkZWNvcmF0b3JzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSBpZiAoZCA9IGRlY29yYXRvcnNbaV0pIHIgPSAoYyA8IDMgPyBkKHIpIDogYyA+IDMgPyBkKHRhcmdldCwga2V5LCByKSA6IGQodGFyZ2V0LCBrZXkpKSB8fCByO1xuICAgIHJldHVybiBjID4gMyAmJiByICYmIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGtleSwgciksIHI7XG59O1xudmFyIF9fbWV0YWRhdGEgPSAodGhpcyAmJiB0aGlzLl9fbWV0YWRhdGEpIHx8IGZ1bmN0aW9uIChrLCB2KSB7XG4gICAgaWYgKHR5cGVvZiBSZWZsZWN0ID09PSBcIm9iamVjdFwiICYmIHR5cGVvZiBSZWZsZWN0Lm1ldGFkYXRhID09PSBcImZ1bmN0aW9uXCIpIHJldHVybiBSZWZsZWN0Lm1ldGFkYXRhKGssIHYpO1xufTtcbmltcG9ydCB7IE1vZGVsLCBtb2RlbCB9IGZyb20gXCJAZGVjYWYtdHMvZGVjb3JhdG9yLXZhbGlkYXRpb25cIjtcbmltcG9ydCB7IGNvbHVtbiwgcGssIHRhYmxlIH0gZnJvbSBcIkBkZWNhZi10cy9jb3JlXCI7XG5sZXQgR3JhcGhFeGVjdXRpb25SZXN1bHRNb2RlbCA9IGNsYXNzIEdyYXBoRXhlY3V0aW9uUmVzdWx0TW9kZWwgZXh0ZW5kcyBNb2RlbCB7XG4gICAgY29uc3RydWN0b3IoYXJnKSB7XG4gICAgICAgIHN1cGVyKGFyZyk7XG4gICAgfVxufTtcbl9fZGVjb3JhdGUoW1xuICAgIHBrKHsgdHlwZTogU3RyaW5nLCBnZW5lcmF0ZWQ6IGZhbHNlIH0pLFxuICAgIF9fbWV0YWRhdGEoXCJkZXNpZ246dHlwZVwiLCBTdHJpbmcpXG5dLCBHcmFwaEV4ZWN1dGlvblJlc3VsdE1vZGVsLnByb3RvdHlwZSwgXCJydW5JZFwiLCB2b2lkIDApO1xuX19kZWNvcmF0ZShbXG4gICAgY29sdW1uKCksXG4gICAgX19tZXRhZGF0YShcImRlc2lnbjp0eXBlXCIsIFN0cmluZylcbl0sIEdyYXBoRXhlY3V0aW9uUmVzdWx0TW9kZWwucHJvdG90eXBlLCBcIndvcmtmbG93SWRcIiwgdm9pZCAwKTtcbl9fZGVjb3JhdGUoW1xuICAgIGNvbHVtbigpLFxuICAgIF9fbWV0YWRhdGEoXCJkZXNpZ246dHlwZVwiLCBTdHJpbmcpXG5dLCBHcmFwaEV4ZWN1dGlvblJlc3VsdE1vZGVsLnByb3RvdHlwZSwgXCJzdGF0dXNcIiwgdm9pZCAwKTtcbl9fZGVjb3JhdGUoW1xuICAgIGNvbHVtbigpLFxuICAgIF9fbWV0YWRhdGEoXCJkZXNpZ246dHlwZVwiLCBPYmplY3QpXG5dLCBHcmFwaEV4ZWN1dGlvblJlc3VsdE1vZGVsLnByb3RvdHlwZSwgXCJpbnB1dHNcIiwgdm9pZCAwKTtcbl9fZGVjb3JhdGUoW1xuICAgIGNvbHVtbigpLFxuICAgIF9fbWV0YWRhdGEoXCJkZXNpZ246dHlwZVwiLCBPYmplY3QpXG5dLCBHcmFwaEV4ZWN1dGlvblJlc3VsdE1vZGVsLnByb3RvdHlwZSwgXCJvdXRwdXRzXCIsIHZvaWQgMCk7XG5fX2RlY29yYXRlKFtcbiAgICBjb2x1bW4oKSxcbiAgICBfX21ldGFkYXRhKFwiZGVzaWduOnR5cGVcIiwgT2JqZWN0KVxuXSwgR3JhcGhFeGVjdXRpb25SZXN1bHRNb2RlbC5wcm90b3R5cGUsIFwibm9kZVJlc3VsdHNcIiwgdm9pZCAwKTtcbl9fZGVjb3JhdGUoW1xuICAgIGNvbHVtbigpLFxuICAgIF9fbWV0YWRhdGEoXCJkZXNpZ246dHlwZVwiLCBEYXRlKVxuXSwgR3JhcGhFeGVjdXRpb25SZXN1bHRNb2RlbC5wcm90b3R5cGUsIFwic3RhcnRlZEF0XCIsIHZvaWQgMCk7XG5fX2RlY29yYXRlKFtcbiAgICBjb2x1bW4oKSxcbiAgICBfX21ldGFkYXRhKFwiZGVzaWduOnR5cGVcIiwgRGF0ZSlcbl0sIEdyYXBoRXhlY3V0aW9uUmVzdWx0TW9kZWwucHJvdG90eXBlLCBcImZpbmlzaGVkQXRcIiwgdm9pZCAwKTtcbkdyYXBoRXhlY3V0aW9uUmVzdWx0TW9kZWwgPSBfX2RlY29yYXRlKFtcbiAgICB0YWJsZShcImdyYXBoX2V4ZWN1dGlvbl9yZXN1bHRcIiksXG4gICAgbW9kZWwoKSxcbiAgICBfX21ldGFkYXRhKFwiZGVzaWduOnBhcmFtdHlwZXNcIiwgW09iamVjdF0pXG5dLCBHcmFwaEV4ZWN1dGlvblJlc3VsdE1vZGVsKTtcbmV4cG9ydCB7IEdyYXBoRXhlY3V0aW9uUmVzdWx0TW9kZWwgfTtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWRhdGE6YXBwbGljYXRpb24vanNvbjtiYXNlNjQsZXlKMlpYSnphVzl1SWpvekxDSm1hV3hsSWpvaVIzSmhjR2hGZUdWamRYUnBiMjVTWlhOMWJIUk5iMlJsYkM1cWN5SXNJbk52ZFhKalpWSnZiM1FpT2lJaUxDSnpiM1Z5WTJWeklqcGJJaTR1THk0dUx5NHVMeTR1TDNOeVl5OXVaWE4wTDJkeVlYQm9MMGR5WVhCb1JYaGxZM1YwYVc5dVVtVnpkV3gwVFc5a1pXd3VkSE1pWFN3aWJtRnRaWE1pT2x0ZExDSnRZWEJ3YVc1bmN5STZJanM3T3pzN096czdPMEZCUVVFc1QwRkJUeXhGUVVGRkxFdEJRVXNzUlVGQlJTeExRVUZMTEVWQlFXbENMRTFCUVUwc1owTkJRV2RETEVOQlFVTTdRVUZETjBVc1QwRkJUeXhGUVVGRkxFMUJRVTBzUlVGQlJTeEZRVUZGTEVWQlFVVXNTMEZCU3l4RlFVRkZMRTFCUVUwc1owSkJRV2RDTEVOQlFVTTdRVUZKTlVNc1NVRkJUU3g1UWtGQmVVSXNSMEZCTDBJc1RVRkJUU3g1UWtGQk1FSXNVMEZCVVN4TFFVRkxPMGxCZVVKc1JDeFpRVUZaTEVkQlFYbERPMUZCUTI1RUxFdEJRVXNzUTBGQlF5eEhRVUZITEVOQlFVTXNRMEZCUXp0SlFVTmlMRU5CUVVNN1EwRkRSaXhEUVVGQk8wRkJNVUpETzBsQlJFTXNSVUZCUlN4RFFVRkRMRVZCUVVVc1NVRkJTU3hGUVVGRkxFMUJRVTBzUlVGQlJTeFRRVUZUTEVWQlFVVXNTMEZCU3l4RlFVRkZMRU5CUVVNN08zZEVRVU40UWp0QlFVZG1PMGxCUkVNc1RVRkJUU3hGUVVGRk96czJSRUZEVnp0QlFVZHdRanRKUVVSRExFMUJRVTBzUlVGQlJUczdlVVJCUTA4N1FVRkhhRUk3U1VGRVF5eE5RVUZOTEVWQlFVVTdPM2xFUVVOM1FqdEJRVWRxUXp0SlFVUkRMRTFCUVUwc1JVRkJSVHM3TUVSQlEzbENPMEZCUjJ4RE8wbEJSRU1zVFVGQlRTeEZRVUZGT3pzNFJFRkROa0k3UVVGSGRFTTdTVUZFUXl4TlFVRk5MRVZCUVVVN09FSkJRMGNzU1VGQlNUczBSRUZCUXp0QlFVZHFRanRKUVVSRExFMUJRVTBzUlVGQlJUczRRa0ZEU1N4SlFVRkpPelpFUVVGRE8wRkJka0pRTEhsQ1FVRjVRanRKUVVaeVF5eExRVUZMTEVOQlFVTXNkMEpCUVhkQ0xFTkJRVU03U1VGREwwSXNTMEZCU3l4RlFVRkZPenRIUVVOTExIbENRVUY1UWl4RFFUUkNja01pTENKemIzVnlZMlZ6UTI5dWRHVnVkQ0k2V3lKcGJYQnZjblFnZXlCTmIyUmxiQ3dnYlc5a1pXd3NJSFI1Y0dVZ1RXOWtaV3hCY21jZ2ZTQm1jbTl0SUZ3aVFHUmxZMkZtTFhSekwyUmxZMjl5WVhSdmNpMTJZV3hwWkdGMGFXOXVYQ0k3WEc1cGJYQnZjblFnZXlCamIyeDFiVzRzSUhCckxDQjBZV0pzWlNCOUlHWnliMjBnWENKQVpHVmpZV1l0ZEhNdlkyOXlaVndpTzF4dVhHNUFkR0ZpYkdVb1hDSm5jbUZ3YUY5bGVHVmpkWFJwYjI1ZmNtVnpkV3gwWENJcFhHNUFiVzlrWld3b0tWeHVaWGh3YjNKMElHTnNZWE56SUVkeVlYQm9SWGhsWTNWMGFXOXVVbVZ6ZFd4MFRXOWtaV3dnWlhoMFpXNWtjeUJOYjJSbGJDQjdYRzRnSUVCd2F5aDdJSFI1Y0dVNklGTjBjbWx1Wnl3Z1oyVnVaWEpoZEdWa09pQm1ZV3h6WlNCOUtWeHVJQ0J5ZFc1SlpDRTZJSE4wY21sdVp6dGNibHh1SUNCQVkyOXNkVzF1S0NsY2JpQWdkMjl5YTJac2IzZEpaQ0U2SUhOMGNtbHVaenRjYmx4dUlDQkFZMjlzZFcxdUtDbGNiaUFnYzNSaGRIVnpJVG9nYzNSeWFXNW5PMXh1WEc0Z0lFQmpiMngxYlc0b0tWeHVJQ0JwYm5CMWRITWhPaUJTWldOdmNtUThjM1J5YVc1bkxDQjFibXR1YjNkdVBqdGNibHh1SUNCQVkyOXNkVzF1S0NsY2JpQWdiM1YwY0hWMGN5RTZJRkpsWTI5eVpEeHpkSEpwYm1jc0lIVnVhMjV2ZDI0K08xeHVYRzRnSUVCamIyeDFiVzRvS1Z4dUlDQnViMlJsVW1WemRXeDBjeUU2SUZKbFkyOXlaRHh6ZEhKcGJtY3NJSFZ1YTI1dmQyNCtPMXh1WEc0Z0lFQmpiMngxYlc0b0tWeHVJQ0J6ZEdGeWRHVmtRWFFoT2lCRVlYUmxPMXh1WEc0Z0lFQmpiMngxYlc0b0tWeHVJQ0JtYVc1cGMyaGxaRUYwUHpvZ1JHRjBaVHRjYmx4dUlDQmpiMjV6ZEhKMVkzUnZjaWhoY21jL09pQk5iMlJsYkVGeVp6eEhjbUZ3YUVWNFpXTjFkR2x2YmxKbGMzVnNkRTF2WkdWc1Bpa2dlMXh1SUNBZ0lITjFjR1Z5S0dGeVp5azdYRzRnSUgxY2JuMWNiaUpkZlE9PSJdfQ==
|
|
@@ -7,56 +7,20 @@ exports.createDemoEngineConfig = createDemoEngineConfig;
|
|
|
7
7
|
* @summary Factory that builds a populated {@link GraphNodeExecutorRegistry}.
|
|
8
8
|
* @description Creates a registry pre-loaded with the demo executors used by
|
|
9
9
|
* the graph execution backend's sample workflows. The executors cover the
|
|
10
|
-
*
|
|
11
|
-
* the loop kinds. Additional executors can be registered
|
|
12
|
-
* registry before it is handed to the
|
|
10
|
+
* flow-control kinds (including Code, Log, and Switch with code conditions),
|
|
11
|
+
* the agent kind, and the loop kinds. Additional executors can be registered
|
|
12
|
+
* on the returned registry before it is handed to the
|
|
13
|
+
* {@link GraphExecutionEngine}.
|
|
13
14
|
*/
|
|
14
15
|
const index_js_1 = require("./../../graph/index.cjs");
|
|
15
16
|
const executorMap = {
|
|
16
17
|
"math.add": (input) => ({ sum: Number(input.a) + Number(input.b) }),
|
|
17
18
|
"math.multiply": (input) => ({ product: Number(input.x) * 2 }),
|
|
18
|
-
"graph-intake-workflow": (input) => ({
|
|
19
|
-
brief: `[Normalized brief] ${String(input["request"] ?? "")}`,
|
|
20
|
-
}),
|
|
21
|
-
"graph-planning-pipeline": (input) => ({
|
|
22
|
-
plan: `[Plan] Steps derived from: ${String(input["brief"] ?? "")}`,
|
|
23
|
-
}),
|
|
24
|
-
"graph-draft-node": (input) => ({
|
|
25
|
-
draft: `[Draft] ${String(input["plan"] ?? "")}`,
|
|
26
|
-
}),
|
|
27
|
-
"graph-review-node": (input) => ({
|
|
28
|
-
approved: `[Approved] ${String(input["draft"] ?? "")}`,
|
|
29
|
-
}),
|
|
30
|
-
"graph-publish-workflow": (input) => ({
|
|
31
|
-
artifact: `[Published] ${String(input["approved"] ?? "")}`,
|
|
32
|
-
}),
|
|
33
19
|
"core.flow.map": (input) => ({ result: { mapped: input["value"] ?? input } }),
|
|
34
20
|
"core.flow.delay": (input) => ({ valueOut: input["value"] ?? input }),
|
|
35
21
|
"core.flow.return": (input) => ({ result: input["value"] ?? input }),
|
|
36
22
|
"core.flow.merge": (input) => ({ merged: input["values"] ?? input }),
|
|
37
23
|
"core.flow.if": (input) => ({ then: input["value"] ?? input }),
|
|
38
|
-
"core.flow.switch": (input, context) => {
|
|
39
|
-
const meta = context.node.graph?.metadata?.["switch"];
|
|
40
|
-
const inputValue = input["value"] ?? input;
|
|
41
|
-
if (!meta || !meta.cases || meta.cases.length === 0) {
|
|
42
|
-
return { [meta?.defaultPort ?? "default"]: inputValue };
|
|
43
|
-
}
|
|
44
|
-
const evaluator = new index_js_1.ConditionExpressionEvaluator();
|
|
45
|
-
for (const c of meta.cases) {
|
|
46
|
-
const cond = c.condition;
|
|
47
|
-
if ("op" in cond) {
|
|
48
|
-
try {
|
|
49
|
-
if (evaluator.evaluate(cond, inputValue)) {
|
|
50
|
-
return { [c.outputPort]: inputValue };
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
catch {
|
|
54
|
-
// skip unparseable conditions in demo
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
return { [meta.defaultPort ?? "default"]: inputValue };
|
|
59
|
-
},
|
|
60
24
|
"core.flow.parallel": (input) => ({ branches: [input["value"] ?? input] }),
|
|
61
25
|
"core.flow.errorBoundary": (input) => ({ result: input["value"] ?? input }),
|
|
62
26
|
"core.flow.humanApproval": (input) => ({ approved: input["value"] ?? input }),
|
|
@@ -75,12 +39,11 @@ const executorMap = {
|
|
|
75
39
|
*
|
|
76
40
|
* Registered kinds:
|
|
77
41
|
* - `math.add`, `math.multiply` — arithmetic demo executors.
|
|
78
|
-
* - `
|
|
79
|
-
*
|
|
80
|
-
*
|
|
81
|
-
*
|
|
82
|
-
*
|
|
83
|
-
* because it needs the engine's `codeSandboxEvaluator`.
|
|
42
|
+
* - `core.flow.*` — flow-control kinds (map, delay, return, merge, if,
|
|
43
|
+
* parallel, errorBoundary, humanApproval). The `core.flow.code`,
|
|
44
|
+
* `core.flow.log`, and `core.flow.switch` kinds are registered in
|
|
45
|
+
* `onEngineCreated` via their real executors because Code and Switch
|
|
46
|
+
* need the engine's `codeSandboxEvaluator`.
|
|
84
47
|
* - `core.agent` — agent node.
|
|
85
48
|
* - `core.loop.foreach`, `core.loop.while`, `core.loop.until` — loop executors
|
|
86
49
|
* (registered after the engine is created via `onEngineCreated`).
|
|
@@ -122,8 +85,10 @@ function createDemoEngineConfig() {
|
|
|
122
85
|
registry.register("core.loop.while", new index_js_1.WhileGraphNodeExecutor(engine));
|
|
123
86
|
registry.register("core.loop.until", new index_js_1.UntilGraphNodeExecutor(engine));
|
|
124
87
|
registry.register("core.flow.code", new index_js_1.CodeGraphNodeExecutor(engine));
|
|
88
|
+
registry.register("core.flow.log", new index_js_1.LogGraphNodeExecutor());
|
|
89
|
+
registry.register("core.flow.switch", new index_js_1.SwitchGraphNodeExecutor(engine));
|
|
125
90
|
},
|
|
126
91
|
};
|
|
127
92
|
}
|
|
128
|
-
//# sourceMappingURL=GraphExecutorRegistryFactory.js.map
|
|
129
|
-
//# sourceMappingURL=GraphExecutorRegistryFactory.cjs.map
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhFeGVjdXRvclJlZ2lzdHJ5RmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9uZXN0L2dyYXBoL0dyYXBoRXhlY3V0b3JSZWdpc3RyeUZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7OztHQVNHO0FBQ0gsT0FBTyxFQUNMLHlCQUF5QixFQUt6Qix3QkFBd0IsRUFDeEIsc0JBQXNCLEVBQ3RCLHNCQUFzQixFQUN0QixxQkFBcUIsRUFDckIsb0JBQW9CLEVBQ3BCLHVCQUF1QixFQUN2Qiw4QkFBOEIsR0FDL0IsK0JBQW9CO0FBT3JCLE1BQU0sV0FBVyxHQUErQjtJQUM5QyxVQUFVLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDbkUsZUFBZSxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7SUFDOUQsZUFBZSxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxLQUFLLEVBQUUsRUFBRSxDQUFDO0lBQzdFLGlCQUFpQixFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQztJQUNyRSxrQkFBa0IsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksS0FBSyxFQUFF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LGtCQUFrQixFQUFFLElBQUksdUJBQXVCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUM3RSxDQUFDO0tBQ0YsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBtb2R1bGUgaW50ZWdyYXRpb25zL25lc3QvZ3JhcGgvR3JhcGhFeGVjdXRvclJlZ2lzdHJ5RmFjdG9yeVxuICogQHN1bW1hcnkgRmFjdG9yeSB0aGF0IGJ1aWxkcyBhIHBvcHVsYXRlZCB7QGxpbmsgR3JhcGhOb2RlRXhlY3V0b3JSZWdpc3RyeX0uXG4gKiBAZGVzY3JpcHRpb24gQ3JlYXRlcyBhIHJlZ2lzdHJ5IHByZS1sb2FkZWQgd2l0aCB0aGUgZGVtbyBleGVjdXRvcnMgdXNlZCBieVxuICogdGhlIGdyYXBoIGV4ZWN1dGlvbiBiYWNrZW5kJ3Mgc2FtcGxlIHdvcmtmbG93cy4gVGhlIGV4ZWN1dG9ycyBjb3ZlciB0aGVcbiAqIGZsb3ctY29udHJvbCBraW5kcyAoaW5jbHVkaW5nIENvZGUsIExvZywgYW5kIFN3aXRjaCB3aXRoIGNvZGUgY29uZGl0aW9ucyksXG4gKiB0aGUgYWdlbnQga2luZCwgYW5kIHRoZSBsb29wIGtpbmRzLiBBZGRpdGlvbmFsIGV4ZWN1dG9ycyBjYW4gYmUgcmVnaXN0ZXJlZFxuICogb24gdGhlIHJldHVybmVkIHJlZ2lzdHJ5IGJlZm9yZSBpdCBpcyBoYW5kZWQgdG8gdGhlXG4gKiB7QGxpbmsgR3JhcGhFeGVjdXRpb25FbmdpbmV9LlxuICovXG5pbXBvcnQge1xuICBHcmFwaE5vZGVFeGVjdXRvclJlZ2lzdHJ5LFxuICBHcmFwaEV4ZWN1dGlvbkVuZ2luZSxcbiAgdHlwZSBHcmFwaE5vZGVFeGVjdXRvcixcbiAgdHlwZSBHcmFwaEV4ZWN1dGlvbkNvbnRleHQsXG4gIHR5cGUgR3JhcGhFeGVjdXRpb25WYWx1ZXMsXG4gIEZvcmVhY2hHcmFwaE5vZGVFeGVjdXRvcixcbiAgV2hpbGVHcmFwaE5vZGVFeGVjdXRvcixcbiAgVW50aWxHcmFwaE5vZGVFeGVjdXRvcixcbiAgQ29kZUdyYXBoTm9kZUV4ZWN1dG9yLFxuICBMb2dHcmFwaE5vZGVFeGVjdXRvcixcbiAgU3dpdGNoR3JhcGhOb2RlRXhlY3V0b3IsXG4gIElzb2xhdGVkVm1Db2RlU2FuZGJveEV2YWx1YXRvcixcbn0gZnJvbSBcIi4uLy4uL2dyYXBoXCI7XG5cbnR5cGUgRXhlY3V0b3JGbiA9IChcbiAgaW5wdXQ6IEdyYXBoRXhlY3V0aW9uVmFsdWVzLFxuICBjb250ZXh0OiBHcmFwaEV4ZWN1dGlvbkNvbnRleHQsXG4pID0+IEdyYXBoRXhlY3V0aW9uVmFsdWVzIHwgUHJvbWlzZTxHcmFwaEV4ZWN1dGlvblZhbHVlcz47XG5cbmNvbnN0IGV4ZWN1dG9yTWFwOiBSZWNvcmQ8c3RyaW5nLCBFeGVjdXRvckZuPiA9IHtcbiAgXCJtYXRoLmFkZFwiOiAoaW5wdXQpID0+ICh7IHN1bTogTnVtYmVyKGlucHV0LmEpICsgTnVtYmVyKGlucHV0LmIpIH0pLFxuICBcIm1hdGgubXVsdGlwbHlcIjogKGlucHV0KSA9PiAoeyBwcm9kdWN0OiBOdW1iZXIoaW5wdXQueCkgKiAyIH0pLFxuICBcImNvcmUuZmxvdy5tYXBcIjogKGlucHV0KSA9PiAoeyByZXN1bHQ6IHsgbWFwcGVkOiBpbnB1dFtcInZhbHVlXCJdID8/IGlucHV0IH0gfSksXG4gIFwiY29yZS5mbG93LmRlbGF5XCI6IChpbnB1dCkgPT4gKHsgdmFsdWVPdXQ6IGlucHV0W1widmFsdWVcIl0gPz8gaW5wdXQgfSksXG4gIFwiY29yZS5mbG93LnJldHVyblwiOiAoaW5wdXQpID0+ICh7IHJlc3VsdDogaW5wdXRbXCJ2YWx1ZVwiXSA/PyBpbnB1dCB9KSxcbiAgXCJjb3JlLmZsb3cubWVyZ2VcIjogKGlucHV0KSA9PiAoeyBtZXJnZWQ6IGlucHV0W1widmFsdWVzXCJdID8/IGlucHV0IH0pLFxuICBcImNvcmUuZmxvdy5pZlwiOiAoaW5wdXQpID0+ICh7IHRoZW46IGlucHV0W1widmFsdWVcIl0gPz8gaW5wdXQgfSksXG4gIFwiY29yZS5mbG93LnBhcmFsbGVsXCI6IChpbnB1dCkgPT4gKHsgYnJhbmNoZXM6IFtpbnB1dFtcInZhbHVlXCJdID8/IGlucHV0XSB9KSxcbiAgXCJjb3JlLmZsb3cuZXJyb3JCb3VuZGFyeVwiOiAoaW5wdXQpID0+ICh7IHJlc3VsdDogaW5wdXRbXCJ2YWx1ZVwiXSA/PyBpbnB1dCB9KSxcbiAgXCJjb3JlLmZsb3cuaHVtYW5BcHByb3ZhbFwiOiAoaW5wdXQpID0+ICh7IGFwcHJvdmVkOiBpbnB1dFtcInZhbHVlXCJdID8/IGlucHV0IH0pLFxuICBcImNvcmUuYWdlbnRcIjogKGlucHV0KSA9PiAoe1xuICAgIHJlc3BvbnNlOiBgW0FnZW50IHJlc3BvbnNlXSAke1N0cmluZyhpbnB1dFtcInByb21wdFwiXSA/PyBcIlwiKX1gLFxuICAgIGFjdGlvbnM6IFtdLFxuICB9KSxcbn07XG5cbi8qKlxuICogQnVpbGRzIGEge0BsaW5rIEdyYXBoTm9kZUV4ZWN1dG9yUmVnaXN0cnl9IHBvcHVsYXRlZCB3aXRoIHRoZSBkZW1vIGV4ZWN1dG9ycy5cbiAqXG4gKiBFeGVjdXRvcnMgYXJlIHJlZ2lzdGVyZWQgYnkgKipub2RlIGtpbmQqKiAodGhlIHNhbWUga2V5IHRoZSBlbmdpbmUgdXNlcyB0b1xuICogcmVzb2x2ZSBleGVjdXRvcnMgYXQgcnVudGltZSkuIFRoZSBmb3ItYW5ndWxhciBkZW1vIG5vZGVzIHVzZSB0aGUga2luZCBhc1xuICogdGhlaXIgdGFnLCBzbyB0aGUgc2FtZSBrZXkgd29ya3MgZm9yIGJvdGggZGlzcGF0Y2gtYnkta2luZCBhbmRcbiAqIGRpc3BhdGNoLWJ5LXRhZy5cbiAqXG4gKiBSZWdpc3RlcmVkIGtpbmRzOlxuICogLSBgbWF0aC5hZGRgLCBgbWF0aC5tdWx0aXBseWAg4oCUIGFyaXRobWV0aWMgZGVtbyBleGVjdXRvcnMuXG4gKiAtIGBjb3JlLmZsb3cuKmAg4oCUIGZsb3ctY29udHJvbCBraW5kcyAobWFwLCBkZWxheSwgcmV0dXJuLCBtZXJnZSwgaWYsXG4gKiAgIHBhcmFsbGVsLCBlcnJvckJvdW5kYXJ5LCBodW1hbkFwcHJvdmFsKS4gVGhlIGBjb3JlLmZsb3cuY29kZWAsXG4gKiAgIGBjb3JlLmZsb3cubG9nYCwgYW5kIGBjb3JlLmZsb3cuc3dpdGNoYCBraW5kcyBhcmUgcmVnaXN0ZXJlZCBpblxuICogICBgb25FbmdpbmVDcmVhdGVkYCB2aWEgdGhlaXIgcmVhbCBleGVjdXRvcnMgYmVjYXVzZSBDb2RlIGFuZCBTd2l0Y2hcbiAqICAgbmVlZCB0aGUgZW5naW5lJ3MgYGNvZGVTYW5kYm94RXZhbHVhdG9yYC5cbiAqIC0gYGNvcmUuYWdlbnRgIOKAlCBhZ2VudCBub2RlLlxuICogLSBgY29yZS5sb29wLmZvcmVhY2hgLCBgY29yZS5sb29wLndoaWxlYCwgYGNvcmUubG9vcC51bnRpbGAg4oCUIGxvb3AgZXhlY3V0b3JzXG4gKiAgIChyZWdpc3RlcmVkIGFmdGVyIHRoZSBlbmdpbmUgaXMgY3JlYXRlZCB2aWEgYG9uRW5naW5lQ3JlYXRlZGApLlxuICpcbiAqIEBwYXJhbSBleHRyYSAtIEFkZGl0aW9uYWwgZXhlY3V0b3JzIHRvIG1lcmdlIGludG8gdGhlIHJlZ2lzdHJ5LlxuICogQHJldHVybnMgQSBwb3B1bGF0ZWQgcmVnaXN0cnkgcmVhZHkgZm9yIHVzZSB3aXRoIHtAbGluayBHcmFwaEV4ZWN1dGlvbkVuZ2luZX0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVHcmFwaEV4ZWN1dG9yUmVnaXN0cnkoXG4gIGV4dHJhPzogUmVjb3JkPHN0cmluZywgR3JhcGhOb2RlRXhlY3V0b3I+LFxuKTogR3JhcGhOb2RlRXhlY3V0b3JSZWdpc3RyeSB7XG4gIGNvbnN0IHJlZ2lzdHJ5ID0gbmV3IEdyYXBoTm9kZUV4ZWN1dG9yUmVnaXN0cnkoKTtcblxuICBmb3IgKGNvbnN0IFtraW5kLCBmbl0gb2YgT2JqZWN0LmVudHJpZXMoZXhlY3V0b3JNYXApKSB7XG4gICAgcmVnaXN0cnkucmVnaXN0ZXIoa2luZCwgeyBleGVjdXRlOiBmbiB9KTtcbiAgfVxuXG4gIGlmIChleHRyYSkge1xuICAgIGZvciAoY29uc3QgW2tpbmQsIGV4ZWN1dG9yXSBvZiBPYmplY3QuZW50cmllcyhleHRyYSkpIHtcbiAgICAgIHJlZ2lzdHJ5LnJlZ2lzdGVyKGtpbmQsIGV4ZWN1dG9yKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gcmVnaXN0cnk7XG59XG5cbi8qKlxuICogQnVpbGRzIGEge0BsaW5rIEdyYXBoRXhlY3V0aW9uRW5naW5lQ29uZmlnfSBwb3B1bGF0ZWQgd2l0aCBhbGwgZGVtbyBleGVjdXRvcnNcbiAqIGluY2x1ZGluZyBsb29wIGV4ZWN1dG9ycyB0aGF0IG5lZWQgYSBiYWNrLXJlZmVyZW5jZSB0byB0aGUgZW5naW5lIGFuZCB0aGVcbiAqIENvZGUgbm9kZSBleGVjdXRvciB0aGF0IG5lZWRzIHRoZSBlbmdpbmUncyBgY29kZVNhbmRib3hFdmFsdWF0b3JgLlxuICpcbiAqIFRoZSBjb25maWcgd2lyZXMgYW4ge0BsaW5rIElzb2xhdGVkVm1Db2RlU2FuZGJveEV2YWx1YXRvcn0gKGJhY2tlZCBieVxuICogYGlzb2xhdGVkLXZtYCkgc28gdGhlIENvZGUgTm9kZSBydW5zIGluIGEgdHJ1bHkgaXNvbGF0ZWQgVjggc2FuZGJveC5cbiAqXG4gKiBAcmV0dXJucyBBIGNvbmZpZyBvYmplY3QgcmVhZHkgZm9yIGBuZXcgR3JhcGhFeGVjdXRpb25FbmdpbmUoY29uZmlnKWAuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVEZW1vRW5naW5lQ29uZmlnKCk6IHtcbiAgcmVnaXN0cnk6IEdyYXBoTm9kZUV4ZWN1dG9yUmVnaXN0cnk7XG4gIGRlZmF1bHRPcHRpb25zOiB7IGZhaWxGYXN0OiBib29sZWFuIH07XG4gIGNvZGVTYW5kYm94RXZhbHVhdG9yOiBJc29sYXRlZFZtQ29kZVNhbmRib3hFdmFsdWF0b3I7XG4gIG9uRW5naW5lQ3JlYXRlZDogKGVuZ2luZTogR3JhcGhFeGVjdXRpb25FbmdpbmUpID0+IHZvaWQ7XG59IHtcbiAgY29uc3QgcmVnaXN0cnkgPSBjcmVhdGVHcmFwaEV4ZWN1dG9yUmVnaXN0cnkoKTtcbiAgY29uc3QgY29kZVNhbmRib3hFdmFsdWF0b3IgPSBuZXcgSXNvbGF0ZWRWbUNvZGVTYW5kYm94RXZhbHVhdG9yKCk7XG5cbiAgcmV0dXJuIHtcbiAgICByZWdpc3RyeSxcbiAgICBkZWZhdWx0T3B0aW9uczogeyBmYWlsRmFzdDogZmFsc2UgfSxcbiAgICBjb2RlU2FuZGJveEV2YWx1YXRvcixcbiAgICBvbkVuZ2luZUNyZWF0ZWQ6IChlbmdpbmU6IEdyYXBoRXhlY3V0aW9uRW5naW5lKSA9PiB7XG4gICAgICByZWdpc3RyeS5yZWdpc3RlcihcImNvcmUubG9vcC5mb3JlYWNoXCIsIG5ldyBGb3JlYWNoR3JhcGhOb2RlRXhlY3V0b3IoZW5naW5lKSk7XG4gICAgICByZWdpc3RyeS5yZWdpc3RlcihcImNvcmUubG9vcC53aGlsZVwiLCBuZXcgV2hpbGVHcmFwaE5vZGVFeGVjdXRvcihlbmdpbmUpKTtcbiAgICAgIHJlZ2lzdHJ5LnJlZ2lzdGVyKFwiY29yZS5sb29wLnVudGlsXCIsIG5ldyBVbnRpbEdyYXBoTm9kZUV4ZWN1dG9yKGVuZ2luZSkpO1xuICAgICAgcmVnaXN0cnkucmVnaXN0ZXIoXCJjb3JlLmZsb3cuY29kZVwiLCBuZXcgQ29kZUdyYXBoTm9kZUV4ZWN1dG9yKGVuZ2luZSkpO1xuICAgICAgcmVnaXN0cnkucmVnaXN0ZXIoXCJjb3JlLmZsb3cubG9nXCIsIG5ldyBMb2dHcmFwaE5vZGVFeGVjdXRvcigpKTtcbiAgICAgIHJlZ2lzdHJ5LnJlZ2lzdGVyKFwiY29yZS5mbG93LnN3aXRjaFwiLCBuZXcgU3dpdGNoR3JhcGhOb2RlRXhlY3V0b3IoZW5naW5lKSk7XG4gICAgfSxcbiAgfTtcbn1cbiJdfQ==
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhFeGVjdXRvclJlZ2lzdHJ5RmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIkdyYXBoRXhlY3V0b3JSZWdpc3RyeUZhY3RvcnkuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFpREEsa0VBV0M7QUFXRCx3REFnQkM7QUF2RkQ7Ozs7Ozs7OztHQVNHO0FBQ0gscURBQW9QO0FBQ3BQLE1BQU0sV0FBVyxHQUFHO0lBQ2hCLFVBQVUsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNuRSxlQUFlLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztJQUM5RCxlQUFlLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEtBQUssRUFBRSxFQUFFLENBQUM7SUFDN0UsaUJBQWlCLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEtBQUssRUFBRSxDQUFDO0lBQ3JFLGtCQUFrQixFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxLQUFLLEVBQUUsQ0FBQztJQUNwRSxpQkFBaUIsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksS0FBSyxFQUFFLENBQUM7SUFDcEUs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ZHVsZSBpbnRlZ3JhdGlvbnMvbmVzdC9ncmFwaC9HcmFwaEV4ZWN1dG9yUmVnaXN0cnlGYWN0b3J5XG4gKiBAc3VtbWFyeSBGYWN0b3J5IHRoYXQgYnVpbGRzIGEgcG9wdWxhdGVkIHtAbGluayBHcmFwaE5vZGVFeGVjdXRvclJlZ2lzdHJ5fS5cbiAqIEBkZXNjcmlwdGlvbiBDcmVhdGVzIGEgcmVnaXN0cnkgcHJlLWxvYWRlZCB3aXRoIHRoZSBkZW1vIGV4ZWN1dG9ycyB1c2VkIGJ5XG4gKiB0aGUgZ3JhcGggZXhlY3V0aW9uIGJhY2tlbmQncyBzYW1wbGUgd29ya2Zsb3dzLiBUaGUgZXhlY3V0b3JzIGNvdmVyIHRoZVxuICogZmxvdy1jb250cm9sIGtpbmRzIChpbmNsdWRpbmcgQ29kZSwgTG9nLCBhbmQgU3dpdGNoIHdpdGggY29kZSBjb25kaXRpb25zKSxcbiAqIHRoZSBhZ2VudCBraW5kLCBhbmQgdGhlIGxvb3Aga2luZHMuIEFkZGl0aW9uYWwgZXhlY3V0b3JzIGNhbiBiZSByZWdpc3RlcmVkXG4gKiBvbiB0aGUgcmV0dXJuZWQgcmVnaXN0cnkgYmVmb3JlIGl0IGlzIGhhbmRlZCB0byB0aGVcbiAqIHtAbGluayBHcmFwaEV4ZWN1dGlvbkVuZ2luZX0uXG4gKi9cbmltcG9ydCB7IEdyYXBoTm9kZUV4ZWN1dG9yUmVnaXN0cnksIEZvcmVhY2hHcmFwaE5vZGVFeGVjdXRvciwgV2hpbGVHcmFwaE5vZGVFeGVjdXRvciwgVW50aWxHcmFwaE5vZGVFeGVjdXRvciwgQ29kZUdyYXBoTm9kZUV4ZWN1dG9yLCBMb2dHcmFwaE5vZGVFeGVjdXRvciwgU3dpdGNoR3JhcGhOb2RlRXhlY3V0b3IsIElzb2xhdGVkVm1Db2RlU2FuZGJveEV2YWx1YXRvciwgfSBmcm9tIFwiLi8uLi8uLi9ncmFwaC9pbmRleC5qc1wiO1xuY29uc3QgZXhlY3V0b3JNYXAgPSB7XG4gICAgXCJtYXRoLmFkZFwiOiAoaW5wdXQpID0+ICh7IHN1bTogTnVtYmVyKGlucHV0LmEpICsgTnVtYmVyKGlucHV0LmIpIH0pLFxuICAgIFwibWF0aC5tdWx0aXBseVwiOiAoaW5wdXQpID0+ICh7IHByb2R1Y3Q6IE51bWJlcihpbnB1dC54KSAqIDIgfSksXG4gICAgXCJjb3JlLmZsb3cubWFwXCI6IChpbnB1dCkgPT4gKHsgcmVzdWx0OiB7IG1hcHBlZDogaW5wdXRbXCJ2YWx1ZVwiXSA/PyBpbnB1dCB9IH0pLFxuICAgIFwiY29yZS5mbG93LmRlbGF5XCI6IChpbnB1dCkgPT4gKHsgdmFsdWVPdXQ6IGlucHV0W1widmFsdWVcIl0gPz8gaW5wdXQgfSksXG4gICAgXCJjb3JlLmZsb3cucmV0dXJuXCI6IChpbnB1dCkgPT4gKHsgcmVzdWx0OiBpbnB1dFtcInZhbHVlXCJdID8/IGlucHV0IH0pLFxuICAgIFwiY29yZS5mbG93Lm1lcmdlXCI6IChpbnB1dCkgPT4gKHsgbWVyZ2VkOiBpbnB1dFtcInZhbHVlc1wiXSA/PyBpbnB1dCB9KSxcbiAgICBcImNvcmUuZmxvdy5pZlwiOiAoaW5wdXQpID0+ICh7IHRoZW46IGlucHV0W1widmFsdWVcIl0gPz8gaW5wdXQgfSksXG4gICAgXCJjb3JlLmZsb3cucGFyYWxsZWxcIjogKGlucHV0KSA9PiAoeyBicmFuY2hlczogW2lucHV0W1widmFsdWVcIl0gPz8gaW5wdXRdIH0pLFxuICAgIFwiY29yZS5mbG93LmVycm9yQm91bmRhcnlcIjogKGlucHV0KSA9PiAoeyByZXN1bHQ6IGlucHV0W1widmFsdWVcIl0gPz8gaW5wdXQgfSksXG4gICAgXCJjb3JlLmZsb3cuaHVtYW5BcHByb3ZhbFwiOiAoaW5wdXQpID0+ICh7IGFwcHJvdmVkOiBpbnB1dFtcInZhbHVlXCJdID8/IGlucHV0IH0pLFxuICAgIFwiY29yZS5hZ2VudFwiOiAoaW5wdXQpID0+ICh7XG4gICAgICAgIHJlc3BvbnNlOiBgW0FnZW50IHJlc3BvbnNlXSAke1N0cmluZyhpbnB1dFtcInByb21wdFwiXSA/PyBcIlwiKX1gLFxuICAgICAgICBhY3Rpb25zOiBbXSxcbiAgICB9KSxcbn07XG4vKipcbiAqIEJ1aWxkcyBhIHtAbGluayBHcmFwaE5vZGVFeGVjdXRvclJlZ2lzdHJ5fSBwb3B1bGF0ZWQgd2l0aCB0aGUgZGVtbyBleGVjdXRvcnMuXG4gKlxuICogRXhlY3V0b3JzIGFyZSByZWdpc3RlcmVkIGJ5ICoqbm9kZSBraW5kKiogKHRoZSBzYW1lIGtleSB0aGUgZW5naW5lIHVzZXMgdG9cbiAqIHJlc29sdmUgZXhlY3V0b3JzIGF0IHJ1bnRpbWUpLiBUaGUgZm9yLWFuZ3VsYXIgZGVtbyBub2RlcyB1c2UgdGhlIGtpbmQgYXNcbiAqIHRoZWlyIHRhZywgc28gdGhlIHNhbWUga2V5IHdvcmtzIGZvciBib3RoIGRpc3BhdGNoLWJ5LWtpbmQgYW5kXG4gKiBkaXNwYXRjaC1ieS10YWcuXG4gKlxuICogUmVnaXN0ZXJlZCBraW5kczpcbiAqIC0gYG1hdGguYWRkYCwgYG1hdGgubXVsdGlwbHlgIOKAlCBhcml0aG1ldGljIGRlbW8gZXhlY3V0b3JzLlxuICogLSBgY29yZS5mbG93LipgIOKAlCBmbG93LWNvbnRyb2wga2luZHMgKG1hcCwgZGVsYXksIHJldHVybiwgbWVyZ2UsIGlmLFxuICogICBwYXJhbGxlbCwgZXJyb3JCb3VuZGFyeSwgaHVtYW5BcHByb3ZhbCkuIFRoZSBgY29yZS5mbG93LmNvZGVgLFxuICogICBgY29yZS5mbG93LmxvZ2AsIGFuZCBgY29yZS5mbG93LnN3aXRjaGAga2luZHMgYXJlIHJlZ2lzdGVyZWQgaW5cbiAqICAgYG9uRW5naW5lQ3JlYXRlZGAgdmlhIHRoZWlyIHJlYWwgZXhlY3V0b3JzIGJlY2F1c2UgQ29kZSBhbmQgU3dpdGNoXG4gKiAgIG5lZWQgdGhlIGVuZ2luZSdzIGBjb2RlU2FuZGJveEV2YWx1YXRvcmAuXG4gKiAtIGBjb3JlLmFnZW50YCDigJQgYWdlbnQgbm9kZS5cbiAqIC0gYGNvcmUubG9vcC5mb3JlYWNoYCwgYGNvcmUubG9vcC53aGlsZWAsIGBjb3JlLmxvb3AudW50aWxgIOKAlCBsb29wIGV4ZWN1dG9yc1xuICogICAocmVnaXN0ZXJlZCBhZnRlciB0aGUgZW5naW5lIGlzIGNyZWF0ZWQgdmlhIGBvbkVuZ2luZUNyZWF0ZWRgKS5cbiAqXG4gKiBAcGFyYW0gZXh0cmEgLSBBZGRpdGlvbmFsIGV4ZWN1dG9ycyB0byBtZXJnZSBpbnRvIHRoZSByZWdpc3RyeS5cbiAqIEByZXR1cm5zIEEgcG9wdWxhdGVkIHJlZ2lzdHJ5IHJlYWR5IGZvciB1c2Ugd2l0aCB7QGxpbmsgR3JhcGhFeGVjdXRpb25FbmdpbmV9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlR3JhcGhFeGVjdXRvclJlZ2lzdHJ5KGV4dHJhKSB7XG4gICAgY29uc3QgcmVnaXN0cnkgPSBuZXcgR3JhcGhOb2RlRXhlY3V0b3JSZWdpc3RyeSgpO1xuICAgIGZvciAoY29uc3QgW2tpbmQsIGZuXSBvZiBPYmplY3QuZW50cmllcyhleGVjdXRvck1hcCkpIHtcbiAgICAgICAgcmVnaXN0cnkucmVnaXN0ZXIoa2luZCwgeyBleGVjdXRlOiBmbiB9KTtcbiAgICB9XG4gICAgaWYgKGV4dHJhKSB7XG4gICAgICAgIGZvciAoY29uc3QgW2tpbmQsIGV4ZWN1dG9yXSBvZiBPYmplY3QuZW50cmllcyhleHRyYSkpIHtcbiAgICAgICAgICAgIHJlZ2lzdHJ5LnJlZ2lzdGVyKGtpbmQsIGV4ZWN1dG9yKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gcmVnaXN0cnk7XG59XG4vKipcbiAqIEJ1aWxkcyBhIHtAbGluayBHcmFwaEV4ZWN1dGlvbkVuZ2luZUNvbmZpZ30gcG9wdWxhdGVkIHdpdGggYWxsIGRlbW8gZXhlY3V0b3JzXG4gKiBpbmNsdWRpbmcgbG9vcCBleGVjdXRvcnMgdGhhdCBuZWVkIGEgYmFjay1yZWZlcmVuY2UgdG8gdGhlIGVuZ2luZSBhbmQgdGhlXG4gKiBDb2RlIG5vZGUgZXhlY3V0b3IgdGhhdCBuZWVkcyB0aGUgZW5naW5lJ3MgYGNvZGVTYW5kYm94RXZhbHVhdG9yYC5cbiAqXG4gKiBUaGUgY29uZmlnIHdpcmVzIGFuIHtAbGluayBJc29sYXRlZFZtQ29kZVNhbmRib3hFdmFsdWF0b3J9IChiYWNrZWQgYnlcbiAqIGBpc29sYXRlZC12bWApIHNvIHRoZSBDb2RlIE5vZGUgcnVucyBpbiBhIHRydWx5IGlzb2xhdGVkIFY4IHNhbmRib3guXG4gKlxuICogQHJldHVybnMgQSBjb25maWcgb2JqZWN0IHJlYWR5IGZvciBgbmV3IEdyYXBoRXhlY3V0aW9uRW5naW5lKGNvbmZpZylgLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRGVtb0VuZ2luZUNvbmZpZygpIHtcbiAgICBjb25zdCByZWdpc3RyeSA9IGNyZWF0ZUdyYXBoRXhlY3V0b3JSZWdpc3RyeSgpO1xuICAgIGNvbnN0IGNvZGVTYW5kYm94RXZhbHVhdG9yID0gbmV3IElzb2xhdGVkVm1Db2RlU2FuZGJveEV2YWx1YXRvcigpO1xuICAgIHJldHVybiB7XG4gICAgICAgIHJlZ2lzdHJ5LFxuICAgICAgICBkZWZhdWx0T3B0aW9uczogeyBmYWlsRmFzdDogZmFsc2UgfSxcbiAgICAgICAgY29kZVNhbmRib3hFdmFsdWF0b3IsXG4gICAgICAgIG9uRW5naW5lQ3JlYXRlZDogKGVuZ2luZSkgPT4ge1xuICAgICAgICAgICAgcmVnaXN0cnkucmVnaXN0ZXIoXCJjb3JlLmxvb3AuZm9yZWFjaFwiLCBuZXcgRm9yZWFjaEdyYXBoTm9kZUV4ZWN1dG9yKGVuZ2luZSkpO1xuICAgICAgICAgICAgcmVnaXN0cnkucmVnaXN0ZXIoXCJjb3JlLmxvb3Aud2hpbGVcIiwgbmV3IFdoaWxlR3JhcGhOb2RlRXhlY3V0b3IoZW5naW5lKSk7XG4gICAgICAgICAgICByZWdpc3RyeS5yZWdpc3RlcihcImNvcmUubG9vcC51bnRpbFwiLCBuZXcgVW50aWxHcmFwaE5vZGVFeGVjdXRvcihlbmdpbmUpKTtcbiAgICAgICAgICAgIHJlZ2lzdHJ5LnJlZ2lzdGVyKFwiY29yZS5mbG93LmNvZGVcIiwgbmV3IENvZGVHcmFwaE5vZGVFeGVjdXRvcihlbmdpbmUpKTtcbiAgICAgICAgICAgIHJlZ2lzdHJ5LnJlZ2lzdGVyKFwiY29yZS5mbG93LmxvZ1wiLCBuZXcgTG9nR3JhcGhOb2RlRXhlY3V0b3IoKSk7XG4gICAgICAgICAgICByZWdpc3RyeS5yZWdpc3RlcihcImNvcmUuZmxvdy5zd2l0Y2hcIiwgbmV3IFN3aXRjaEdyYXBoTm9kZUV4ZWN1dG9yKGVuZ2luZSkpO1xuICAgICAgICB9LFxuICAgIH07XG59XG4vLyMgc291cmNlTWFwcGluZ1VSTD1kYXRhOmFwcGxpY2F0aW9uL2pzb247YmFzZTY0LGV5SjJaWEp6YVc5dUlqb3pMQ0ptYVd4bElqb2lSM0poY0doRmVHVmpkWFJ2Y2xKbFoybHpkSEo1Um1GamRHOXllUzVxY3lJc0luTnZkWEpqWlZKdmIzUWlPaUlpTENKemIzVnlZMlZ6SWpwYklpNHVMeTR1THk0dUx5NHVMM055WXk5dVpYTjBMMmR5WVhCb0wwZHlZWEJvUlhobFkzVjBiM0pTWldkcGMzUnllVVpoWTNSdmNua3VkSE1pWFN3aWJtRnRaWE1pT2x0ZExDSnRZWEJ3YVc1bmN5STZJa0ZCUVVFN096czdPenM3T3p0SFFWTkhPMEZCUTBnc1QwRkJUeXhGUVVOTUxIbENRVUY1UWl4RlFVdDZRaXgzUWtGQmQwSXNSVUZEZUVJc2MwSkJRWE5DTEVWQlEzUkNMSE5DUVVGelFpeEZRVU4wUWl4eFFrRkJjVUlzUlVGRGNrSXNiMEpCUVc5Q0xFVkJRM0JDTEhWQ1FVRjFRaXhGUVVOMlFpdzRRa0ZCT0VJc1IwRkRMMElzSzBKQlFXOUNPMEZCVDNKQ0xFMUJRVTBzVjBGQlZ5eEhRVUVyUWp0SlFVTTVReXhWUVVGVkxFVkJRVVVzUTBGQlF5eExRVUZMTEVWQlFVVXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hIUVVGSExFVkJRVVVzVFVGQlRTeERRVUZETEV0QlFVc3NRMEZCUXl4RFFVRkRMRU5CUVVNc1IwRkJSeXhOUVVGTkxFTkJRVU1zUzBGQlN5eERRVUZETEVOQlFVTXNRMEZCUXl4RlFVRkZMRU5CUVVNN1NVRkRia1VzWlVGQlpTeEZRVUZGTEVOQlFVTXNTMEZCU3l4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzVDBGQlR5eEZRVUZGTEUxQlFVMHNRMEZCUXl4TFFVRkxMRU5CUVVNc1EwRkJReXhEUVVGRExFZEJRVWNzUTBGQlF5eEZRVUZGTEVOQlFVTTdTVUZET1VRc1pVRkJaU3hGUVVGRkxFTkJRVU1zUzBGQlN5eEZRVUZGTEVWQlFVVXNRMEZCUXl4RFFVRkRMRVZCUVVVc1RVRkJUU3hGUVVGRkxFVkJRVVVzVFVGQlRTeEZRVUZGTEV0QlFVc3NRMEZCUXl4UFFVRlBMRU5CUVVNc1NVRkJTU3hMUVVGTExFVkJRVVVzUlVGQlJTeERRVUZETzBsQlF6ZEZMR2xDUVVGcFFpeEZRVUZGTEVOQlFVTXNTMEZCU3l4RlFVRkZMRVZCUVVVc1EwRkJReXhEUVVGRExFVkJRVVVzVVVGQlVTeEZRVUZGTEV0QlFVc3NRMEZCUXl4UFFVRlBMRU5CUVVNc1NVRkJTU3hMUVVGTExFVkJRVVVzUTBGQlF6dEpRVU55UlN4clFrRkJhMElzUlVGQlJTeERRVUZETEV0QlFVc3NSVUZCUlN4RlFVRkZMRU5CUVVNc1EwRkJReXhGUVVGRkxFMUJRVTBzUlVGQlJTeExRVUZMTEVOQlFVTXNUMEZCVHl4RFFVRkRMRWxCUVVrc1MwRkJTeXhGUVVGRkxFTkJRVU03U1VGRGNFVXNhVUpCUVdsQ0xFVkJRVVVzUTBGQlF5eExRVUZMTEVWQlFVVXNSVUZCUlN4RFFVRkRMRU5CUVVNc1JVRkJSU3hOUVVGTkxFVkJRVVVzUzBGQlN5eERRVUZETEZGQlFWRXNRMEZCUXl4SlFVRkpMRXRCUVVzc1JVRkJSU3hEUVVGRE8wbEJRM0JGTEdOQlFXTXNSVUZCUlN4RFFVRkRMRXRCUVVzc1JVRkJSU3hGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEVsQlFVa3NSVUZCUlN4TFFVRkxMRU5CUVVNc1QwRkJUeXhEUVVGRExFbEJRVWtzUzBGQlN5eEZRVUZGTEVOQlFVTTdTVUZET1VRc2IwSkJRVzlDTEVWQlFVVXNRMEZCUXl4TFFVRkxMRVZCUVVVc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeFJRVUZSTEVWQlFVVXNRMEZCUXl4TFFVRkxMRU5CUVVNc1QwRkJUeXhEUVVGRExFbEJRVWtzUzBGQlN5eERRVUZETEVWQlFVVXNRMEZCUXp0SlFVTXhSU3g1UWtGQmVVSXNSVUZCUlN4RFFVRkRMRXRCUVVzc1JVRkJSU3hGUVVGRkxFTkJRVU1zUTBGQlF5eEZRVUZGTEUxQlFVMHNSVUZCUlN4TFFVRkxMRU5CUVVNc1QwRkJUeXhEUVVGRExFbEJRVWtzUzBGQlN5eEZRVUZGTEVOQlFVTTdTVUZETTBVc2VVSkJRWGxDTEVWQlFVVXNRMEZCUXl4TFFVRkxMRVZCUVVVc1JVRkJSU3hEUVVGRExFTkJRVU1zUlVGQlJTeFJRVUZSTEVWQlFVVXNTMEZCU3l4RFFVRkRMRTlCUVU4c1EwRkJReXhKUVVGSkxFdEJRVXNzUlVGQlJTeERRVUZETzBsQlF6ZEZMRmxCUVZrc1JVRkJSU3hEUVVGRExFdEJRVXNzUlVGQlJTeEZRVUZGTEVOQlFVTXNRMEZCUXp0UlFVTjRRaXhSUVVGUkxFVkJRVVVzYjBKQlFXOUNMRTFCUVUwc1EwRkJReXhMUVVGTExFTkJRVU1zVVVGQlVTeERRVUZETEVsQlFVa3NSVUZCUlN4RFFVRkRMRVZCUVVVN1VVRkROMFFzVDBGQlR5eEZRVUZGTEVWQlFVVTdTMEZEV2l4RFFVRkRPME5CUTBnc1EwRkJRenRCUVVWR096czdPenM3T3pzN096czdPenM3T3pzN096czdSMEZ4UWtjN1FVRkRTQ3hOUVVGTkxGVkJRVlVzTWtKQlFUSkNMRU5CUTNwRExFdEJRWGxETzBsQlJYcERMRTFCUVUwc1VVRkJVU3hIUVVGSExFbEJRVWtzZVVKQlFYbENMRVZCUVVVc1EwRkJRenRKUVVWcVJDeExRVUZMTEUxQlFVMHNRMEZCUXl4SlFVRkpMRVZCUVVVc1JVRkJSU3hEUVVGRExFbEJRVWtzVFVGQlRTeERRVUZETEU5QlFVOHNRMEZCUXl4WFFVRlhMRU5CUVVNc1JVRkJSU3hEUVVGRE8xRkJRM0pFTEZGQlFWRXNRMEZCUXl4UlFVRlJMRU5CUVVNc1NVRkJTU3hGUVVGRkxFVkJRVVVzVDBGQlR5eEZRVUZGTEVWQlFVVXNSVUZCUlN4RFFVRkRMRU5CUVVNN1NVRkRNME1zUTBGQlF6dEpRVVZFTEVsQlFVa3NTMEZCU3l4RlFVRkZMRU5CUVVNN1VVRkRWaXhMUVVGTExFMUJRVTBzUTBGQlF5eEpRVUZKTEVWQlFVVXNVVUZCVVN4RFFVRkRMRWxCUVVrc1RVRkJUU3hEUVVGRExFOUJRVThzUTBGQlF5eExRVUZMTEVOQlFVTXNSVUZCUlN4RFFVRkRPMWxCUTNKRUxGRkJRVkVzUTBGQlF5eFJRVUZSTEVOQlFVTXNTVUZCU1N4RlFVRkZMRkZCUVZFc1EwRkJReXhEUVVGRE8xRkJRM0JETEVOQlFVTTdTVUZEU0N4RFFVRkRPMGxCUlVRc1QwRkJUeXhSUVVGUkxFTkJRVU03UVVGRGJFSXNRMEZCUXp0QlFVVkVPenM3T3pzN096czdSMEZUUnp0QlFVTklMRTFCUVUwc1ZVRkJWU3h6UWtGQmMwSTdTVUZOY0VNc1RVRkJUU3hSUVVGUkxFZEJRVWNzTWtKQlFUSkNMRVZCUVVVc1EwRkJRenRKUVVNdlF5eE5RVUZOTEc5Q1FVRnZRaXhIUVVGSExFbEJRVWtzT0VKQlFUaENMRVZCUVVVc1EwRkJRenRKUVVWc1JTeFBRVUZQTzFGQlEwd3NVVUZCVVR0UlFVTlNMR05CUVdNc1JVRkJSU3hGUVVGRkxGRkJRVkVzUlVGQlJTeExRVUZMTEVWQlFVVTdVVUZEYmtNc2IwSkJRVzlDTzFGQlEzQkNMR1ZCUVdVc1JVRkJSU3hEUVVGRExFMUJRVFJDTEVWQlFVVXNSVUZCUlR0WlFVTm9SQ3hSUVVGUkxFTkJRVU1zVVVGQlVTeERRVUZETEcxQ1FVRnRRaXhGUVVGRkxFbEJRVWtzZDBKQlFYZENMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF6dFpRVU0zUlN4UlFVRlJMRU5CUVVNc1VVRkJVU3hEUVVGRExHbENRVUZwUWl4RlFVRkZMRWxCUVVrc2MwSkJRWE5DTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJRenRaUVVONlJTeFJRVUZSTEVOQlFVTXNVVUZCVVN4RFFVRkRMR2xDUVVGcFFpeEZRVUZGTEVsQlFVa3NjMEpCUVhOQ0xFTkJRVU1zVFVGQlRTeERRVUZETEVOQlFVTXNRMEZCUXp0WlFVTjZSU3hSUVVGUkxFTkJRVU1zVVVGQlVTeERRVUZETEdkQ1FVRm5RaXhGUVVGRkxFbEJRVWtzY1VKQlFYRkNMRU5CUVVNc1RVRkJUU3hEUVVGRExFTkJRVU1zUTBGQlF6dFpRVU4yUlN4UlFVRlJMRU5CUVVNc1VVRkJVU3hEUVVGRExHVkJRV1VzUlVGQlJTeEpRVUZKTEc5Q1FVRnZRaXhGUVVGRkxFTkJRVU1zUTBGQlF6dFpRVU12UkN4UlFVRlJMRU5CUVVNc1VVRkJVU3hEUVVGRExHdENRVUZyUWl4RlFVRkZMRWxCUVVrc2RVSkJRWFZDTEVOQlFVTXNUVUZCVFN4RFFVRkRMRU5CUVVNc1EwRkJRenRSUVVNM1JTeERRVUZETzB0QlEwWXNRMEZCUXp0QlFVTktMRU5CUVVNaUxDSnpiM1Z5WTJWelEyOXVkR1Z1ZENJNld5SXZLaXBjYmlBcUlFQnRiMlIxYkdVZ2FXNTBaV2R5WVhScGIyNXpMMjVsYzNRdlozSmhjR2d2UjNKaGNHaEZlR1ZqZFhSdmNsSmxaMmx6ZEhKNVJtRmpkRzl5ZVZ4dUlDb2dRSE4xYlcxaGNua2dSbUZqZEc5eWVTQjBhR0YwSUdKMWFXeGtjeUJoSUhCdmNIVnNZWFJsWkNCN1FHeHBibXNnUjNKaGNHaE9iMlJsUlhobFkzVjBiM0pTWldkcGMzUnllWDB1WEc0Z0tpQkFaR1Z6WTNKcGNIUnBiMjRnUTNKbFlYUmxjeUJoSUhKbFoybHpkSEo1SUhCeVpTMXNiMkZrWldRZ2QybDBhQ0IwYUdVZ1pHVnRieUJsZUdWamRYUnZjbk1nZFhObFpDQmllVnh1SUNvZ2RHaGxJR2R5WVhCb0lHVjRaV04xZEdsdmJpQmlZV05yWlc1a0ozTWdjMkZ0Y0d4bElIZHZjbXRtYkc5M2N5NGdWR2hsSUdWNFpXTjFkRzl5Y3lCamIzWmxjaUIwYUdWY2JpQXFJR1pzYjNjdFkyOXVkSEp2YkNCcmFXNWtjeUFvYVc1amJIVmthVzVuSUVOdlpHVXNJRXh2Wnl3Z1lXNWtJRk4zYVhSamFDQjNhWFJvSUdOdlpHVWdZMjl1WkdsMGFXOXVjeWtzWEc0Z0tpQjBhR1VnWVdkbGJuUWdhMmx1WkN3Z1lXNWtJSFJvWlNCc2IyOXdJR3RwYm1SekxpQkJaR1JwZEdsdmJtRnNJR1Y0WldOMWRHOXljeUJqWVc0Z1ltVWdjbVZuYVhOMFpYSmxaRnh1SUNvZ2IyNGdkR2hsSUhKbGRIVnlibVZrSUhKbFoybHpkSEo1SUdKbFptOXlaU0JwZENCcGN5Qm9ZVzVrWldRZ2RHOGdkR2hsWEc0Z0tpQjdRR3hwYm1zZ1IzSmhjR2hGZUdWamRYUnBiMjVGYm1kcGJtVjlMbHh1SUNvdlhHNXBiWEJ2Y25RZ2UxeHVJQ0JIY21Gd2FFNXZaR1ZGZUdWamRYUnZjbEpsWjJsemRISjVMRnh1SUNCSGNtRndhRVY0WldOMWRHbHZia1Z1WjJsdVpTeGNiaUFnZEhsd1pTQkhjbUZ3YUU1dlpHVkZlR1ZqZFhSdmNpeGNiaUFnZEhsd1pTQkhjbUZ3YUVWNFpXTjFkR2x2YmtOdmJuUmxlSFFzWEc0Z0lIUjVjR1VnUjNKaGNHaEZlR1ZqZFhScGIyNVdZV3gxWlhNc1hHNGdJRVp2Y21WaFkyaEhjbUZ3YUU1dlpHVkZlR1ZqZFhSdmNpeGNiaUFnVjJocGJHVkhjbUZ3YUU1dlpHVkZlR1ZqZFhSdmNpeGNiaUFnVlc1MGFXeEhjbUZ3YUU1dlpHVkZlR1ZqZFhSdmNpeGNiaUFnUTI5a1pVZHlZWEJvVG05a1pVVjRaV04xZEc5eUxGeHVJQ0JNYjJkSGNtRndhRTV2WkdWRmVHVmpkWFJ2Y2l4Y2JpQWdVM2RwZEdOb1IzSmhjR2hPYjJSbFJYaGxZM1YwYjNJc1hHNGdJRWx6YjJ4aGRHVmtWbTFEYjJSbFUyRnVaR0p2ZUVWMllXeDFZWFJ2Y2l4Y2JuMGdabkp2YlNCY0lpNHVMeTR1TDJkeVlYQm9YQ0k3WEc1Y2JuUjVjR1VnUlhobFkzVjBiM0pHYmlBOUlDaGNiaUFnYVc1d2RYUTZJRWR5WVhCb1JYaGxZM1YwYVc5dVZtRnNkV1Z6TEZ4dUlDQmpiMjUwWlhoME9pQkhjbUZ3YUVWNFpXTjFkR2x2YmtOdmJuUmxlSFFzWEc0cElEMCtJRWR5WVhCb1JYaGxZM1YwYVc5dVZtRnNkV1Z6SUh3Z1VISnZiV2x6WlR4SGNtRndhRVY0WldOMWRHbHZibFpoYkhWbGN6NDdYRzVjYm1OdmJuTjBJR1Y0WldOMWRHOXlUV0Z3T2lCU1pXTnZjbVE4YzNSeWFXNW5MQ0JGZUdWamRYUnZja1p1UGlBOUlIdGNiaUFnWENKdFlYUm9MbUZrWkZ3aU9pQW9hVzV3ZFhRcElEMCtJQ2g3SUhOMWJUb2dUblZ0WW1WeUtHbHVjSFYwTG1FcElDc2dUblZ0WW1WeUtHbHVjSFYwTG1JcElIMHBMRnh1SUNCY0ltMWhkR2d1YlhWc2RHbHdiSGxjSWpvZ0tHbHVjSFYwS1NBOVBpQW9leUJ3Y205a2RXTjBPaUJPZFcxaVpYSW9hVzV3ZFhRdWVDa2dLaUF5SUgwcExGeHVJQ0JjSW1OdmNtVXVabXh2ZHk1dFlYQmNJam9nS0dsdWNIVjBLU0E5UGlBb2V5QnlaWE4xYkhRNklIc2diV0Z3Y0dWa09pQnBibkIxZEZ0Y0luWmhiSFZsWENKZElEOC9JR2x1Y0hWMElIMGdmU2tzWEc0Z0lGd2lZMjl5WlM1bWJHOTNMbVJsYkdGNVhDSTZJQ2hwYm5CMWRDa2dQVDRnS0hzZ2RtRnNkV1ZQZFhRNklHbHVjSFYwVzF3aWRtRnNkV1ZjSWwwZ1B6OGdhVzV3ZFhRZ2ZTa3NYRzRnSUZ3aVkyOXlaUzVtYkc5M0xuSmxkSFZ5Ymx3aU9pQW9hVzV3ZFhRcElEMCtJQ2g3SUhKbGMzVnNkRG9nYVc1d2RYUmJYQ0oyWVd4MVpWd2lYU0EvUHlCcGJuQjFkQ0I5S1N4Y2JpQWdYQ0pqYjNKbExtWnNiM2N1YldWeVoyVmNJam9nS0dsdWNIVjBLU0E5UGlBb2V5QnRaWEpuWldRNklHbHVjSFYwVzF3aWRtRnNkV1Z6WENKZElEOC9JR2x1Y0hWMElIMHBMRnh1SUNCY0ltTnZjbVV1Wm14dmR5NXBabHdpT2lBb2FXNXdkWFFwSUQwK0lDaDdJSFJvWlc0NklHbHVjSFYwVzF3aWRtRnNkV1ZjSWwwZ1B6OGdhVzV3ZFhRZ2ZTa3NYRzRnSUZ3aVkyOXlaUzVtYkc5M0xuQmhjbUZzYkdWc1hDSTZJQ2hwYm5CMWRDa2dQVDRnS0hzZ1luSmhibU5vWlhNNklGdHBibkIxZEZ0Y0luWmhiSFZsWENKZElEOC9JR2x1Y0hWMFhTQjlLU3hjYmlBZ1hDSmpiM0psTG1ac2IzY3VaWEp5YjNKQ2IzVnVaR0Z5ZVZ3aU9pQW9hVzV3ZFhRcElEMCtJQ2g3SUhKbGMzVnNkRG9nYVc1d2RYUmJYQ0oyWVd4MVpWd2lYU0EvUHlCcGJuQjFkQ0I5S1N4Y2JpQWdYQ0pqYjNKbExtWnNiM2N1YUhWdFlXNUJjSEJ5YjNaaGJGd2lPaUFvYVc1d2RYUXBJRDArSUNoN0lHRndjSEp2ZG1Wa09pQnBibkIxZEZ0Y0luWmhiSFZsWENKZElEOC9JR2x1Y0hWMElIMHBMRnh1SUNCY0ltTnZjbVV1WVdkbGJuUmNJam9nS0dsdWNIVjBLU0E5UGlBb2UxeHVJQ0FnSUhKbGMzQnZibk5sT2lCZ1cwRm5aVzUwSUhKbGMzQnZibk5sWFNBa2UxTjBjbWx1WnlocGJuQjFkRnRjSW5CeWIyMXdkRndpWFNBL1B5QmNJbHdpS1gxZ0xGeHVJQ0FnSUdGamRHbHZibk02SUZ0ZExGeHVJQ0I5S1N4Y2JuMDdYRzVjYmk4cUtseHVJQ29nUW5WcGJHUnpJR0VnZTBCc2FXNXJJRWR5WVhCb1RtOWtaVVY0WldOMWRHOXlVbVZuYVhOMGNubDlJSEJ2Y0hWc1lYUmxaQ0IzYVhSb0lIUm9aU0JrWlcxdklHVjRaV04xZEc5eWN5NWNiaUFxWEc0Z0tpQkZlR1ZqZFhSdmNuTWdZWEpsSUhKbFoybHpkR1Z5WldRZ1lua2dLaXB1YjJSbElHdHBibVFxS2lBb2RHaGxJSE5oYldVZ2EyVjVJSFJvWlNCbGJtZHBibVVnZFhObGN5QjBiMXh1SUNvZ2NtVnpiMngyWlNCbGVHVmpkWFJ2Y25NZ1lYUWdjblZ1ZEdsdFpTa3VJRlJvWlNCbWIzSXRZVzVuZFd4aGNpQmtaVzF2SUc1dlpHVnpJSFZ6WlNCMGFHVWdhMmx1WkNCaGMxeHVJQ29nZEdobGFYSWdkR0ZuTENCemJ5QjBhR1VnYzJGdFpTQnJaWGtnZDI5eWEzTWdabTl5SUdKdmRHZ2daR2x6Y0dGMFkyZ3RZbmt0YTJsdVpDQmhibVJjYmlBcUlHUnBjM0JoZEdOb0xXSjVMWFJoWnk1Y2JpQXFYRzRnS2lCU1pXZHBjM1JsY21Wa0lHdHBibVJ6T2x4dUlDb2dMU0JnYldGMGFDNWhaR1JnTENCZ2JXRjBhQzV0ZFd4MGFYQnNlV0FnNG9DVUlHRnlhWFJvYldWMGFXTWdaR1Z0YnlCbGVHVmpkWFJ2Y25NdVhHNGdLaUF0SUdCamIzSmxMbVpzYjNjdUttQWc0b0NVSUdac2IzY3RZMjl1ZEhKdmJDQnJhVzVrY3lBb2JXRndMQ0JrWld4aGVTd2djbVYwZFhKdUxDQnRaWEpuWlN3Z2FXWXNYRzRnS2lBZ0lIQmhjbUZzYkdWc0xDQmxjbkp2Y2tKdmRXNWtZWEo1TENCb2RXMWhia0Z3Y0hKdmRtRnNLUzRnVkdobElHQmpiM0psTG1ac2IzY3VZMjlrWldBc1hHNGdLaUFnSUdCamIzSmxMbVpzYjNjdWJHOW5ZQ3dnWVc1a0lHQmpiM0psTG1ac2IzY3VjM2RwZEdOb1lDQnJhVzVrY3lCaGNtVWdjbVZuYVhOMFpYSmxaQ0JwYmx4dUlDb2dJQ0JnYjI1RmJtZHBibVZEY21WaGRHVmtZQ0IyYVdFZ2RHaGxhWElnY21WaGJDQmxlR1ZqZFhSdmNuTWdZbVZqWVhWelpTQkRiMlJsSUdGdVpDQlRkMmwwWTJoY2JpQXFJQ0FnYm1WbFpDQjBhR1VnWlc1bmFXNWxKM01nWUdOdlpHVlRZVzVrWW05NFJYWmhiSFZoZEc5eVlDNWNiaUFxSUMwZ1lHTnZjbVV1WVdkbGJuUmdJT0tBbENCaFoyVnVkQ0J1YjJSbExseHVJQ29nTFNCZ1kyOXlaUzVzYjI5d0xtWnZjbVZoWTJoZ0xDQmdZMjl5WlM1c2IyOXdMbmRvYVd4bFlDd2dZR052Y21VdWJHOXZjQzUxYm5ScGJHQWc0b0NVSUd4dmIzQWdaWGhsWTNWMGIzSnpYRzRnS2lBZ0lDaHlaV2RwYzNSbGNtVmtJR0ZtZEdWeUlIUm9aU0JsYm1kcGJtVWdhWE1nWTNKbFlYUmxaQ0IyYVdFZ1lHOXVSVzVuYVc1bFEzSmxZWFJsWkdBcExseHVJQ3BjYmlBcUlFQndZWEpoYlNCbGVIUnlZU0F0SUVGa1pHbDBhVzl1WVd3Z1pYaGxZM1YwYjNKeklIUnZJRzFsY21kbElHbHVkRzhnZEdobElISmxaMmx6ZEhKNUxseHVJQ29nUUhKbGRIVnlibk1nUVNCd2IzQjFiR0YwWldRZ2NtVm5hWE4wY25rZ2NtVmhaSGtnWm05eUlIVnpaU0IzYVhSb0lIdEFiR2x1YXlCSGNtRndhRVY0WldOMWRHbHZia1Z1WjJsdVpYMHVYRzRnS2k5Y2JtVjRjRzl5ZENCbWRXNWpkR2x2YmlCamNtVmhkR1ZIY21Gd2FFVjRaV04xZEc5eVVtVm5hWE4wY25rb1hHNGdJR1Y0ZEhKaFB6b2dVbVZqYjNKa1BITjBjbWx1Wnl3Z1IzSmhjR2hPYjJSbFJYaGxZM1YwYjNJK0xGeHVLVG9nUjNKaGNHaE9iMlJsUlhobFkzVjBiM0pTWldkcGMzUnllU0I3WEc0Z0lHTnZibk4wSUhKbFoybHpkSEo1SUQwZ2JtVjNJRWR5WVhCb1RtOWtaVVY0WldOMWRHOXlVbVZuYVhOMGNua29LVHRjYmx4dUlDQm1iM0lnS0dOdmJuTjBJRnRyYVc1a0xDQm1ibDBnYjJZZ1QySnFaV04wTG1WdWRISnBaWE1vWlhobFkzVjBiM0pOWVhBcEtTQjdYRzRnSUNBZ2NtVm5hWE4wY25rdWNtVm5hWE4wWlhJb2EybHVaQ3dnZXlCbGVHVmpkWFJsT2lCbWJpQjlLVHRjYmlBZ2ZWeHVYRzRnSUdsbUlDaGxlSFJ5WVNrZ2UxeHVJQ0FnSUdadmNpQW9ZMjl1YzNRZ1cydHBibVFzSUdWNFpXTjFkRzl5WFNCdlppQlBZbXBsWTNRdVpXNTBjbWxsY3lobGVIUnlZU2twSUh0Y2JpQWdJQ0FnSUhKbFoybHpkSEo1TG5KbFoybHpkR1Z5S0d0cGJtUXNJR1Y0WldOMWRHOXlLVHRjYmlBZ0lDQjlYRzRnSUgxY2JseHVJQ0J5WlhSMWNtNGdjbVZuYVhOMGNuazdYRzU5WEc1Y2JpOHFLbHh1SUNvZ1FuVnBiR1J6SUdFZ2UwQnNhVzVySUVkeVlYQm9SWGhsWTNWMGFXOXVSVzVuYVc1bFEyOXVabWxuZlNCd2IzQjFiR0YwWldRZ2QybDBhQ0JoYkd3Z1pHVnRieUJsZUdWamRYUnZjbk5jYmlBcUlHbHVZMngxWkdsdVp5QnNiMjl3SUdWNFpXTjFkRzl5Y3lCMGFHRjBJRzVsWldRZ1lTQmlZV05yTFhKbFptVnlaVzVqWlNCMGJ5QjBhR1VnWlc1bmFXNWxJR0Z1WkNCMGFHVmNiaUFxSUVOdlpHVWdibTlrWlNCbGVHVmpkWFJ2Y2lCMGFHRjBJRzVsWldSeklIUm9aU0JsYm1kcGJtVW5jeUJnWTI5a1pWTmhibVJpYjNoRmRtRnNkV0YwYjNKZ0xseHVJQ3BjYmlBcUlGUm9aU0JqYjI1bWFXY2dkMmx5WlhNZ1lXNGdlMEJzYVc1cklFbHpiMnhoZEdWa1ZtMURiMlJsVTJGdVpHSnZlRVYyWVd4MVlYUnZjbjBnS0dKaFkydGxaQ0JpZVZ4dUlDb2dZR2x6YjJ4aGRHVmtMWFp0WUNrZ2MyOGdkR2hsSUVOdlpHVWdUbTlrWlNCeWRXNXpJR2x1SUdFZ2RISjFiSGtnYVhOdmJHRjBaV1FnVmpnZ2MyRnVaR0p2ZUM1Y2JpQXFYRzRnS2lCQWNtVjBkWEp1Y3lCQklHTnZibVpwWnlCdlltcGxZM1FnY21WaFpIa2dabTl5SUdCdVpYY2dSM0poY0doRmVHVmpkWFJwYjI1RmJtZHBibVVvWTI5dVptbG5LV0F1WEc0Z0tpOWNibVY0Y0c5eWRDQm1kVzVqZEdsdmJpQmpjbVZoZEdWRVpXMXZSVzVuYVc1bFEyOXVabWxuS0NrNklIdGNiaUFnY21WbmFYTjBjbms2SUVkeVlYQm9UbTlrWlVWNFpXTjFkRzl5VW1WbmFYTjBjbms3WEc0Z0lHUmxabUYxYkhSUGNIUnBiMjV6T2lCN0lHWmhhV3hHWVhOME9pQmliMjlzWldGdUlIMDdYRzRnSUdOdlpHVlRZVzVrWW05NFJYWmhiSFZoZEc5eU9pQkpjMjlzWVhSbFpGWnRRMjlrWlZOaGJtUmliM2hGZG1Gc2RXRjBiM0k3WEc0Z0lHOXVSVzVuYVc1bFEzSmxZWFJsWkRvZ0tHVnVaMmx1WlRvZ1IzSmhjR2hGZUdWamRYUnBiMjVGYm1kcGJtVXBJRDArSUhadmFXUTdYRzU5SUh0Y2JpQWdZMjl1YzNRZ2NtVm5hWE4wY25rZ1BTQmpjbVZoZEdWSGNtRndhRVY0WldOMWRHOXlVbVZuYVhOMGNua29LVHRjYmlBZ1kyOXVjM1FnWTI5a1pWTmhibVJpYjNoRmRtRnNkV0YwYjNJZ1BTQnVaWGNnU1hOdmJHRjBaV1JXYlVOdlpHVlRZVzVrWW05NFJYWmhiSFZoZEc5eUtDazdYRzVjYmlBZ2NtVjBkWEp1SUh0Y2JpQWdJQ0J5WldkcGMzUnllU3hjYmlBZ0lDQmtaV1poZFd4MFQzQjBhVzl1Y3pvZ2V5Qm1ZV2xzUm1GemREb2dabUZzYzJVZ2ZTeGNiaUFnSUNCamIyUmxVMkZ1WkdKdmVFVjJZV3gxWVhSdmNpeGNiaUFnSUNCdmJrVnVaMmx1WlVOeVpXRjBaV1E2SUNobGJtZHBibVU2SUVkeVlYQm9SWGhsWTNWMGFXOXVSVzVuYVc1bEtTQTlQaUI3WEc0Z0lDQWdJQ0J5WldkcGMzUnllUzV5WldkcGMzUmxjaWhjSW1OdmNtVXViRzl2Y0M1bWIzSmxZV05vWENJc0lHNWxkeUJHYjNKbFlXTm9SM0poY0doT2IyUmxSWGhsWTNWMGIzSW9aVzVuYVc1bEtTazdYRzRnSUNBZ0lDQnlaV2RwYzNSeWVTNXlaV2RwYzNSbGNpaGNJbU52Y21VdWJHOXZjQzUzYUdsc1pWd2lMQ0J1WlhjZ1YyaHBiR1ZIY21Gd2FFNXZaR1ZGZUdWamRYUnZjaWhsYm1kcGJtVXBLVHRjYmlBZ0lDQWdJSEpsWjJsemRISjVMbkpsWjJsemRHVnlLRndpWTI5eVpTNXNiMjl3TG5WdWRHbHNYQ0lzSUc1bGR5QlZiblJwYkVkeVlYQm9UbTlrWlVWNFpXTjFkRzl5S0dWdVoybHVaU2twTzF4dUlDQWdJQ0FnY21WbmFYTjBjbmt1Y21WbmFYTjBaWElvWENKamIzSmxMbVpzYjNjdVkyOWtaVndpTENCdVpYY2dRMjlrWlVkeVlYQm9UbTlrWlVWNFpXTjFkRzl5S0dWdVoybHVaU2twTzF4dUlDQWdJQ0FnY21WbmFYTjBjbmt1Y21WbmFYTjBaWElvWENKamIzSmxMbVpzYjNjdWJHOW5YQ0lzSUc1bGR5Qk1iMmRIY21Gd2FFNXZaR1ZGZUdWamRYUnZjaWdwS1R0Y2JpQWdJQ0FnSUhKbFoybHpkSEo1TG5KbFoybHpkR1Z5S0Z3aVkyOXlaUzVtYkc5M0xuTjNhWFJqYUZ3aUxDQnVaWGNnVTNkcGRHTm9SM0poY0doT2IyUmxSWGhsWTNWMGIzSW9aVzVuYVc1bEtTazdYRzRnSUNBZ2ZTeGNiaUFnZlR0Y2JuMWNiaUpkZlE9PSJdfQ==
|