@decaf-ts/integrations 0.3.12 → 0.4.0
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 +2 -1649
- package/dist/integrations.cjs.map +1 -0
- package/dist/integrations.js +2 -1885
- package/dist/integrations.js.map +1 -0
- package/lib/cjs/blob/azure/AzureBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/azure/AzureBlobStoreService.cjs.map +1 -0
- package/lib/cjs/blob/azure/index.cjs +2 -2
- package/lib/cjs/blob/azure/index.cjs.map +1 -0
- package/lib/cjs/blob/core/BlobErrors.cjs +2 -2
- package/lib/cjs/blob/core/BlobErrors.cjs.map +1 -0
- package/lib/cjs/blob/core/BlobKey.cjs +2 -2
- package/lib/cjs/blob/core/BlobKey.cjs.map +1 -0
- package/lib/cjs/blob/core/BlobStoreFactory.cjs +2 -2
- package/lib/cjs/blob/core/BlobStoreFactory.cjs.map +1 -0
- package/lib/cjs/blob/core/BlobStoreService.cjs +2 -2
- package/lib/cjs/blob/core/BlobStoreService.cjs.map +1 -0
- package/lib/cjs/blob/core/BlobTypes.cjs +2 -2
- package/lib/cjs/blob/core/BlobTypes.cjs.map +1 -0
- package/lib/cjs/blob/core/BlobValue.cjs +2 -2
- package/lib/cjs/blob/core/BlobValue.cjs.map +1 -0
- package/lib/cjs/blob/core/index.cjs +2 -2
- package/lib/cjs/blob/core/index.cjs.map +1 -0
- package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/gcp/GcsBlobStoreService.cjs.map +1 -0
- package/lib/cjs/blob/gcp/index.cjs +2 -2
- package/lib/cjs/blob/gcp/index.cjs.map +1 -0
- package/lib/cjs/blob/index.cjs +2 -2
- package/lib/cjs/blob/index.cjs.map +1 -0
- package/lib/cjs/blob/ipfs/IpfsBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/ipfs/IpfsBlobStoreService.cjs.map +1 -0
- package/lib/cjs/blob/ipfs/IpfsKeyIndex.cjs +2 -2
- package/lib/cjs/blob/ipfs/IpfsKeyIndex.cjs.map +1 -0
- package/lib/cjs/blob/ipfs/LocalJsonIpfsKeyIndex.cjs +2 -2
- package/lib/cjs/blob/ipfs/LocalJsonIpfsKeyIndex.cjs.map +1 -0
- package/lib/cjs/blob/ipfs/MemoryIpfsKeyIndex.cjs +2 -2
- package/lib/cjs/blob/ipfs/MemoryIpfsKeyIndex.cjs.map +1 -0
- package/lib/cjs/blob/ipfs/PostgresIpfsKeyIndex.cjs +2 -2
- package/lib/cjs/blob/ipfs/PostgresIpfsKeyIndex.cjs.map +1 -0
- package/lib/cjs/blob/ipfs/index.cjs +2 -2
- package/lib/cjs/blob/ipfs/index.cjs.map +1 -0
- package/lib/cjs/blob/local/LocalBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/local/LocalBlobStoreService.cjs.map +1 -0
- package/lib/cjs/blob/local/index.cjs +2 -2
- package/lib/cjs/blob/local/index.cjs.map +1 -0
- package/lib/cjs/blob/memory/MemoryBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/memory/MemoryBlobStoreService.cjs.map +1 -0
- package/lib/cjs/blob/memory/index.cjs +2 -2
- package/lib/cjs/blob/memory/index.cjs.map +1 -0
- package/lib/cjs/blob/s3/MinioBlobStoreService.cjs +2 -2
- package/lib/cjs/blob/s3/MinioBlobStoreService.cjs.map +1 -0
- package/lib/cjs/blob/s3/R2BlobStoreService.cjs +2 -2
- package/lib/cjs/blob/s3/R2BlobStoreService.cjs.map +1 -0
- package/lib/cjs/blob/s3/S3BlobStoreService.cjs +2 -2
- package/lib/cjs/blob/s3/S3BlobStoreService.cjs.map +1 -0
- package/lib/cjs/blob/s3/index.cjs +2 -2
- package/lib/cjs/blob/s3/index.cjs.map +1 -0
- package/lib/cjs/docker/DockerComposeService.cjs +2 -2
- package/lib/cjs/docker/DockerComposeService.cjs.map +1 -0
- package/lib/cjs/docker/index.cjs +2 -2
- package/lib/cjs/docker/index.cjs.map +1 -0
- package/lib/cjs/graph/engine/constants.cjs +2 -2
- package/lib/cjs/graph/engine/constants.cjs.map +1 -0
- package/lib/cjs/graph/engine/decorators.cjs +2 -2
- package/lib/cjs/graph/engine/decorators.cjs.map +1 -0
- package/lib/cjs/graph/engine/errors/GraphCycleError.cjs +2 -2
- package/lib/cjs/graph/engine/errors/GraphCycleError.cjs.map +1 -0
- package/lib/cjs/graph/engine/errors/GraphExecutionError.cjs +2 -2
- package/lib/cjs/graph/engine/errors/GraphExecutionError.cjs.map +1 -0
- package/lib/cjs/graph/engine/errors/GraphInputError.cjs +2 -2
- package/lib/cjs/graph/engine/errors/GraphInputError.cjs.map +1 -0
- package/lib/cjs/graph/engine/errors/GraphLoopLimitError.cjs +2 -2
- package/lib/cjs/graph/engine/errors/GraphLoopLimitError.cjs.map +1 -0
- package/lib/cjs/graph/engine/errors/GraphPinningError.cjs +2 -2
- package/lib/cjs/graph/engine/errors/GraphPinningError.cjs.map +1 -0
- package/lib/cjs/graph/engine/errors/GraphPortError.cjs +2 -2
- package/lib/cjs/graph/engine/errors/GraphPortError.cjs.map +1 -0
- package/lib/cjs/graph/engine/errors/GraphStoreError.cjs +2 -2
- package/lib/cjs/graph/engine/errors/GraphStoreError.cjs.map +1 -0
- package/lib/cjs/graph/engine/errors/GraphTopologyError.cjs +2 -2
- package/lib/cjs/graph/engine/errors/GraphTopologyError.cjs.map +1 -0
- package/lib/cjs/graph/engine/errors/index.cjs +2 -2
- package/lib/cjs/graph/engine/errors/index.cjs.map +1 -0
- package/lib/cjs/graph/engine/events/GraphExecutionEvent.cjs +2 -2
- package/lib/cjs/graph/engine/events/GraphExecutionEvent.cjs.map +1 -0
- package/lib/cjs/graph/engine/events/GraphExecutionEventEmitter.cjs +2 -2
- package/lib/cjs/graph/engine/events/GraphExecutionEventEmitter.cjs.map +1 -0
- package/lib/cjs/graph/engine/events/GraphExecutionEventFactory.cjs +2 -2
- package/lib/cjs/graph/engine/events/GraphExecutionEventFactory.cjs.map +1 -0
- package/lib/cjs/graph/engine/events/GraphExecutionObserver.cjs +2 -2
- package/lib/cjs/graph/engine/events/GraphExecutionObserver.cjs.map +1 -0
- package/lib/cjs/graph/engine/events/index.cjs +2 -2
- package/lib/cjs/graph/engine/events/index.cjs.map +1 -0
- package/lib/cjs/graph/engine/execution/CodeGraphNodeExecutor.cjs +2 -2
- package/lib/cjs/graph/engine/execution/CodeGraphNodeExecutor.cjs.map +1 -0
- package/lib/cjs/graph/engine/execution/CodeSandboxEvaluator.cjs +2 -2
- package/lib/cjs/graph/engine/execution/CodeSandboxEvaluator.cjs.map +1 -0
- package/lib/cjs/graph/engine/execution/GraphExecutionContext.cjs +2 -2
- package/lib/cjs/graph/engine/execution/GraphExecutionContext.cjs.map +1 -0
- package/lib/cjs/graph/engine/execution/GraphExecutionEngine.cjs +2 -2
- package/lib/cjs/graph/engine/execution/GraphExecutionEngine.cjs.map +1 -0
- package/lib/cjs/graph/engine/execution/GraphExecutionFrame.cjs +2 -2
- package/lib/cjs/graph/engine/execution/GraphExecutionFrame.cjs.map +1 -0
- package/lib/cjs/graph/engine/execution/GraphExecutionResult.cjs +2 -2
- package/lib/cjs/graph/engine/execution/GraphExecutionResult.cjs.map +1 -0
- package/lib/cjs/graph/engine/execution/GraphNodeExecutor.cjs +2 -2
- package/lib/cjs/graph/engine/execution/GraphNodeExecutor.cjs.map +1 -0
- package/lib/cjs/graph/engine/execution/IsolatedVmCodeSandboxEvaluator.cjs +2 -2
- package/lib/cjs/graph/engine/execution/IsolatedVmCodeSandboxEvaluator.cjs.map +1 -0
- package/lib/cjs/graph/engine/execution/LogGraphNodeExecutor.cjs +2 -2
- package/lib/cjs/graph/engine/execution/LogGraphNodeExecutor.cjs.map +1 -0
- package/lib/cjs/graph/engine/execution/SwitchGraphNodeExecutor.cjs +9 -9
- package/lib/cjs/graph/engine/execution/SwitchGraphNodeExecutor.cjs.map +1 -0
- package/lib/cjs/graph/engine/execution/index.cjs +2 -2
- package/lib/cjs/graph/engine/execution/index.cjs.map +1 -0
- package/lib/cjs/graph/engine/index.cjs +2 -2
- package/lib/cjs/graph/engine/index.cjs.map +1 -0
- package/lib/cjs/graph/engine/loops/ConditionExpressionEvaluator.cjs +2 -2
- package/lib/cjs/graph/engine/loops/ConditionExpressionEvaluator.cjs.map +1 -0
- package/lib/cjs/graph/engine/loops/ForeachGraphNodeExecutor.cjs +2 -2
- package/lib/cjs/graph/engine/loops/ForeachGraphNodeExecutor.cjs.map +1 -0
- package/lib/cjs/graph/engine/loops/GraphConditionEvaluator.cjs +2 -2
- package/lib/cjs/graph/engine/loops/GraphConditionEvaluator.cjs.map +1 -0
- package/lib/cjs/graph/engine/loops/GraphLoopExecutionContext.cjs +2 -2
- package/lib/cjs/graph/engine/loops/GraphLoopExecutionContext.cjs.map +1 -0
- package/lib/cjs/graph/engine/loops/UntilGraphNodeExecutor.cjs +2 -2
- package/lib/cjs/graph/engine/loops/UntilGraphNodeExecutor.cjs.map +1 -0
- package/lib/cjs/graph/engine/loops/WhileGraphNodeExecutor.cjs +2 -2
- package/lib/cjs/graph/engine/loops/WhileGraphNodeExecutor.cjs.map +1 -0
- package/lib/cjs/graph/engine/loops/index.cjs +2 -2
- package/lib/cjs/graph/engine/loops/index.cjs.map +1 -0
- package/lib/cjs/graph/engine/pinning/GraphPinningDependencyResolver.cjs +2 -2
- package/lib/cjs/graph/engine/pinning/GraphPinningDependencyResolver.cjs.map +1 -0
- package/lib/cjs/graph/engine/pinning/GraphPinningMetadata.cjs +2 -2
- package/lib/cjs/graph/engine/pinning/GraphPinningMetadata.cjs.map +1 -0
- package/lib/cjs/graph/engine/pinning/GraphPinningPolicy.cjs +2 -2
- package/lib/cjs/graph/engine/pinning/GraphPinningPolicy.cjs.map +1 -0
- package/lib/cjs/graph/engine/pinning/GraphPinningService.cjs +2 -2
- package/lib/cjs/graph/engine/pinning/GraphPinningService.cjs.map +1 -0
- package/lib/cjs/graph/engine/pinning/index.cjs +2 -2
- package/lib/cjs/graph/engine/pinning/index.cjs.map +1 -0
- package/lib/cjs/graph/engine/planning/GraphExecutionPlan.cjs +2 -2
- package/lib/cjs/graph/engine/planning/GraphExecutionPlan.cjs.map +1 -0
- package/lib/cjs/graph/engine/planning/GraphExecutionPlanEdge.cjs +2 -2
- package/lib/cjs/graph/engine/planning/GraphExecutionPlanEdge.cjs.map +1 -0
- package/lib/cjs/graph/engine/planning/GraphExecutionPlanLayer.cjs +2 -2
- package/lib/cjs/graph/engine/planning/GraphExecutionPlanLayer.cjs.map +1 -0
- package/lib/cjs/graph/engine/planning/GraphExecutionPlanNode.cjs +2 -2
- package/lib/cjs/graph/engine/planning/GraphExecutionPlanNode.cjs.map +1 -0
- package/lib/cjs/graph/engine/planning/GraphExecutionPlanner.cjs +2 -2
- package/lib/cjs/graph/engine/planning/GraphExecutionPlanner.cjs.map +1 -0
- package/lib/cjs/graph/engine/planning/GraphRelationResolver.cjs +2 -2
- package/lib/cjs/graph/engine/planning/GraphRelationResolver.cjs.map +1 -0
- package/lib/cjs/graph/engine/planning/GraphTopology.cjs +2 -2
- package/lib/cjs/graph/engine/planning/GraphTopology.cjs.map +1 -0
- package/lib/cjs/graph/engine/planning/index.cjs +2 -2
- package/lib/cjs/graph/engine/planning/index.cjs.map +1 -0
- package/lib/cjs/graph/engine/registry/GraphNodeExecutorRegistry.cjs +2 -2
- package/lib/cjs/graph/engine/registry/GraphNodeExecutorRegistry.cjs.map +1 -0
- package/lib/cjs/graph/engine/registry/GraphNodeExecutorResolver.cjs +2 -2
- package/lib/cjs/graph/engine/registry/GraphNodeExecutorResolver.cjs.map +1 -0
- package/lib/cjs/graph/engine/registry/index.cjs +2 -2
- package/lib/cjs/graph/engine/registry/index.cjs.map +1 -0
- package/lib/cjs/graph/engine/snapshots/GraphExecutionSnapshotMapper.cjs +2 -2
- package/lib/cjs/graph/engine/snapshots/GraphExecutionSnapshotMapper.cjs.map +1 -0
- package/lib/cjs/graph/engine/snapshots/index.cjs +2 -2
- package/lib/cjs/graph/engine/snapshots/index.cjs.map +1 -0
- package/lib/cjs/graph/engine/store/GraphCachedValue.cjs +2 -2
- package/lib/cjs/graph/engine/store/GraphCachedValue.cjs.map +1 -0
- package/lib/cjs/graph/engine/store/GraphValueKey.cjs +2 -2
- package/lib/cjs/graph/engine/store/GraphValueKey.cjs.map +1 -0
- package/lib/cjs/graph/engine/store/GraphValueStore.cjs +2 -2
- package/lib/cjs/graph/engine/store/GraphValueStore.cjs.map +1 -0
- package/lib/cjs/graph/engine/store/GraphValueStoreAdapter.cjs +2 -2
- package/lib/cjs/graph/engine/store/GraphValueStoreAdapter.cjs.map +1 -0
- package/lib/cjs/graph/engine/store/InMemoryGraphValueStoreAdapter.cjs +2 -2
- package/lib/cjs/graph/engine/store/InMemoryGraphValueStoreAdapter.cjs.map +1 -0
- package/lib/cjs/graph/engine/store/index.cjs +2 -2
- package/lib/cjs/graph/engine/store/index.cjs.map +1 -0
- package/lib/cjs/graph/engine/types.cjs +2 -2
- package/lib/cjs/graph/engine/types.cjs.map +1 -0
- package/lib/cjs/graph/engine/validation/GraphDefinitionValidator.cjs +2 -2
- package/lib/cjs/graph/engine/validation/GraphDefinitionValidator.cjs.map +1 -0
- package/lib/cjs/graph/engine/validation/GraphPortSchemaResolver.cjs +2 -2
- package/lib/cjs/graph/engine/validation/GraphPortSchemaResolver.cjs.map +1 -0
- package/lib/cjs/graph/engine/validation/GraphValueValidator.cjs +2 -2
- package/lib/cjs/graph/engine/validation/GraphValueValidator.cjs.map +1 -0
- package/lib/cjs/graph/engine/validation/index.cjs +2 -2
- package/lib/cjs/graph/engine/validation/index.cjs.map +1 -0
- package/lib/cjs/graph/index.cjs +2 -2
- package/lib/cjs/graph/index.cjs.map +1 -0
- package/lib/cjs/graph/shared/constants.cjs +2 -2
- package/lib/cjs/graph/shared/constants.cjs.map +1 -0
- package/lib/cjs/graph/shared/index.cjs +2 -2
- package/lib/cjs/graph/shared/index.cjs.map +1 -0
- package/lib/cjs/graph/shared/nodes/agent.cjs +2 -2
- package/lib/cjs/graph/shared/nodes/agent.cjs.map +1 -0
- package/lib/cjs/graph/shared/nodes/base.cjs +2 -2
- package/lib/cjs/graph/shared/nodes/base.cjs.map +1 -0
- package/lib/cjs/graph/shared/nodes/category-styles.cjs +2 -2
- package/lib/cjs/graph/shared/nodes/category-styles.cjs.map +1 -0
- package/lib/cjs/graph/shared/nodes/flow-control.cjs +4 -3
- package/lib/cjs/graph/shared/nodes/flow-control.cjs.map +1 -0
- package/lib/cjs/graph/shared/nodes/index.cjs +2 -2
- package/lib/cjs/graph/shared/nodes/index.cjs.map +1 -0
- package/lib/cjs/graph/shared/nodes/triggers.cjs +2 -2
- package/lib/cjs/graph/shared/nodes/triggers.cjs.map +1 -0
- package/lib/cjs/graph/shared/types.cjs +2 -2
- package/lib/cjs/graph/shared/types.cjs.map +1 -0
- package/lib/cjs/index.cjs +5 -5
- package/lib/cjs/index.cjs.map +1 -0
- package/lib/cjs/keycloak/index.cjs +2 -2
- package/lib/cjs/keycloak/index.cjs.map +1 -0
- package/lib/cjs/keycloak/services/KeycloakAuthService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakAuthService.cjs.map +1 -0
- package/lib/cjs/keycloak/services/KeycloakClientService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakClientService.cjs.map +1 -0
- package/lib/cjs/keycloak/services/KeycloakIdentityProviderService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakIdentityProviderService.cjs.map +1 -0
- package/lib/cjs/keycloak/services/KeycloakRealmService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakRealmService.cjs.map +1 -0
- package/lib/cjs/keycloak/services/KeycloakRoleService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakRoleService.cjs.map +1 -0
- package/lib/cjs/keycloak/services/KeycloakService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakService.cjs.map +1 -0
- package/lib/cjs/keycloak/services/KeycloakUserService.cjs +2 -2
- package/lib/cjs/keycloak/services/KeycloakUserService.cjs.map +1 -0
- package/lib/cjs/keycloak/services/index.cjs +2 -2
- package/lib/cjs/keycloak/services/index.cjs.map +1 -0
- package/lib/cjs/keycloak/services/runtime.cjs +2 -2
- package/lib/cjs/keycloak/services/runtime.cjs.map +1 -0
- package/lib/cjs/keycloak/types.cjs +2 -2
- package/lib/cjs/keycloak/types.cjs.map +1 -0
- package/lib/cjs/kibana/helpers.cjs +2 -2
- package/lib/cjs/kibana/helpers.cjs.map +1 -0
- package/lib/cjs/kibana/index.cjs +2 -2
- package/lib/cjs/kibana/index.cjs.map +1 -0
- package/lib/cjs/kibana/services/KibanaAuthService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaAuthService.cjs.map +1 -0
- package/lib/cjs/kibana/services/KibanaDashboardService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaDashboardService.cjs.map +1 -0
- package/lib/cjs/kibana/services/KibanaDataViewService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaDataViewService.cjs.map +1 -0
- package/lib/cjs/kibana/services/KibanaRoleService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaRoleService.cjs.map +1 -0
- package/lib/cjs/kibana/services/KibanaService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaService.cjs.map +1 -0
- package/lib/cjs/kibana/services/KibanaSpaceService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaSpaceService.cjs.map +1 -0
- package/lib/cjs/kibana/services/KibanaUserService.cjs +2 -2
- package/lib/cjs/kibana/services/KibanaUserService.cjs.map +1 -0
- package/lib/cjs/kibana/services/index.cjs +2 -2
- package/lib/cjs/kibana/services/index.cjs.map +1 -0
- package/lib/cjs/kibana/services/runtime.cjs +2 -2
- package/lib/cjs/kibana/services/runtime.cjs.map +1 -0
- package/lib/cjs/kibana/types.cjs +2 -2
- package/lib/cjs/kibana/types.cjs.map +1 -0
- package/lib/cjs/namespaces/index.cjs +2 -2
- package/lib/cjs/namespaces/index.cjs.map +1 -0
- package/lib/cjs/namespaces/models/authorization-model.cjs +2 -2
- package/lib/cjs/namespaces/models/authorization-model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/effective-permission.model.cjs +2 -2
- package/lib/cjs/namespaces/models/effective-permission.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/group-membership.model.cjs +2 -2
- package/lib/cjs/namespaces/models/group-membership.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/group.model.cjs +2 -2
- package/lib/cjs/namespaces/models/group.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/index.cjs +2 -2
- package/lib/cjs/namespaces/models/index.cjs.map +1 -0
- package/lib/cjs/namespaces/models/inheritance-block.model.cjs +2 -2
- package/lib/cjs/namespaces/models/inheritance-block.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/org-unit-closure.model.cjs +2 -2
- package/lib/cjs/namespaces/models/org-unit-closure.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/org-unit-membership.model.cjs +2 -2
- package/lib/cjs/namespaces/models/org-unit-membership.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/org-unit-profile.model.cjs +2 -2
- package/lib/cjs/namespaces/models/org-unit-profile.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/org-unit.model.cjs +2 -2
- package/lib/cjs/namespaces/models/org-unit.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/permission.model.cjs +2 -2
- package/lib/cjs/namespaces/models/permission.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/principal.model.cjs +2 -2
- package/lib/cjs/namespaces/models/principal.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/protected-resource.model.cjs +2 -2
- package/lib/cjs/namespaces/models/protected-resource.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/resource-grant.model.cjs +2 -2
- package/lib/cjs/namespaces/models/resource-grant.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/role-assignment.model.cjs +2 -2
- package/lib/cjs/namespaces/models/role-assignment.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/role-permission.model.cjs +2 -2
- package/lib/cjs/namespaces/models/role-permission.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/role.model.cjs +2 -2
- package/lib/cjs/namespaces/models/role.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/storage-binding.model.cjs +2 -2
- package/lib/cjs/namespaces/models/storage-binding.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/tenant-membership.model.cjs +2 -2
- package/lib/cjs/namespaces/models/tenant-membership.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/tenant-profile.model.cjs +2 -2
- package/lib/cjs/namespaces/models/tenant-profile.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/tenant.model.cjs +2 -2
- package/lib/cjs/namespaces/models/tenant.model.cjs.map +1 -0
- package/lib/cjs/namespaces/models/user.model.cjs +2 -2
- package/lib/cjs/namespaces/models/user.model.cjs.map +1 -0
- package/lib/cjs/namespaces/org-based-authorization-system.cjs +2 -2
- package/lib/cjs/namespaces/org-based-authorization-system.cjs.map +1 -0
- package/lib/cjs/namespaces/org-based-authorization-system.models.cjs +2 -2
- package/lib/cjs/namespaces/org-based-authorization-system.models.cjs.map +1 -0
- package/lib/cjs/namespaces/org-based-authorization-system.services.cjs +2 -2
- package/lib/cjs/namespaces/org-based-authorization-system.services.cjs.map +1 -0
- package/lib/cjs/namespaces/services/authz.service.cjs +2 -2
- package/lib/cjs/namespaces/services/authz.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/bootstrap.service.cjs +2 -2
- package/lib/cjs/namespaces/services/bootstrap.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/effective-permission.service.cjs +2 -2
- package/lib/cjs/namespaces/services/effective-permission.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/group-membership.service.cjs +2 -2
- package/lib/cjs/namespaces/services/group-membership.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/group.service.cjs +2 -2
- package/lib/cjs/namespaces/services/group.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/index.cjs +2 -2
- package/lib/cjs/namespaces/services/index.cjs.map +1 -0
- package/lib/cjs/namespaces/services/inheritance-block.service.cjs +2 -2
- package/lib/cjs/namespaces/services/inheritance-block.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/org-unit-closure.service.cjs +2 -2
- package/lib/cjs/namespaces/services/org-unit-closure.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/org-unit-membership.service.cjs +2 -2
- package/lib/cjs/namespaces/services/org-unit-membership.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/org-unit-profile.service.cjs +2 -2
- package/lib/cjs/namespaces/services/org-unit-profile.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/org-unit.service.cjs +2 -2
- package/lib/cjs/namespaces/services/org-unit.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/permission.service.cjs +2 -2
- package/lib/cjs/namespaces/services/permission.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/principal.service.cjs +2 -2
- package/lib/cjs/namespaces/services/principal.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/protected-resource.service.cjs +2 -2
- package/lib/cjs/namespaces/services/protected-resource.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/resource-grant.service.cjs +2 -2
- package/lib/cjs/namespaces/services/resource-grant.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/resource-lifecycle.service.cjs +2 -2
- package/lib/cjs/namespaces/services/resource-lifecycle.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/role-assignment.service.cjs +2 -2
- package/lib/cjs/namespaces/services/role-assignment.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/role-permission.service.cjs +2 -2
- package/lib/cjs/namespaces/services/role-permission.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/role.service.cjs +2 -2
- package/lib/cjs/namespaces/services/role.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/storage-binding.service.cjs +2 -2
- package/lib/cjs/namespaces/services/storage-binding.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/system-management.service.cjs +2 -2
- package/lib/cjs/namespaces/services/system-management.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/tenant-membership.service.cjs +2 -2
- package/lib/cjs/namespaces/services/tenant-membership.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/tenant-profile.service.cjs +2 -2
- package/lib/cjs/namespaces/services/tenant-profile.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/tenant.service.cjs +2 -2
- package/lib/cjs/namespaces/services/tenant.service.cjs.map +1 -0
- package/lib/cjs/namespaces/services/user.service.cjs +2 -2
- package/lib/cjs/namespaces/services/user.service.cjs.map +1 -0
- package/lib/cjs/namespaces/types.cjs +2 -2
- package/lib/cjs/namespaces/types.cjs.map +1 -0
- package/lib/cjs/namespaces/utils.cjs +2 -2
- package/lib/cjs/namespaces/utils.cjs.map +1 -0
- package/lib/cjs/nest/authService.cjs +2 -2
- package/lib/cjs/nest/authService.cjs.map +1 -0
- package/lib/cjs/nest/graph/GraphExecutionController.cjs +2 -2
- package/lib/cjs/nest/graph/GraphExecutionController.cjs.map +1 -0
- package/lib/cjs/nest/graph/GraphExecutionModule.cjs +2 -2
- package/lib/cjs/nest/graph/GraphExecutionModule.cjs.map +1 -0
- package/lib/cjs/nest/graph/GraphExecutionResultModel.cjs +2 -2
- package/lib/cjs/nest/graph/GraphExecutionResultModel.cjs.map +1 -0
- package/lib/cjs/nest/graph/GraphExecutorRegistryFactory.cjs +2 -2
- package/lib/cjs/nest/graph/GraphExecutorRegistryFactory.cjs.map +1 -0
- package/lib/cjs/nest/graph/GraphResultService.cjs +2 -2
- package/lib/cjs/nest/graph/GraphResultService.cjs.map +1 -0
- package/lib/cjs/nest/graph/GraphWorkflowModel.cjs +2 -2
- package/lib/cjs/nest/graph/GraphWorkflowModel.cjs.map +1 -0
- package/lib/cjs/nest/graph/GraphWorkflowService.cjs +2 -2
- package/lib/cjs/nest/graph/GraphWorkflowService.cjs.map +1 -0
- package/lib/cjs/nest/graph/index.cjs +2 -2
- package/lib/cjs/nest/graph/index.cjs.map +1 -0
- package/lib/cjs/nest/graph/main.cjs +2 -2
- package/lib/cjs/nest/graph/main.cjs.map +1 -0
- package/lib/cjs/nest/index.cjs +2 -2
- package/lib/cjs/nest/index.cjs.map +1 -0
- package/lib/cjs/nest/keycloakAuthHandler.cjs +2 -2
- package/lib/cjs/nest/keycloakAuthHandler.cjs.map +1 -0
- package/lib/cjs/nest/keycloakModule.cjs +2 -2
- package/lib/cjs/nest/keycloakModule.cjs.map +1 -0
- package/lib/cjs/nest/logging.cjs +2 -2
- package/lib/cjs/nest/logging.cjs.map +1 -0
- package/lib/cjs/nest/types.cjs +2 -2
- package/lib/cjs/nest/types.cjs.map +1 -0
- package/lib/cjs/nest/utils.cjs +2 -2
- package/lib/cjs/nest/utils.cjs.map +1 -0
- package/lib/cjs/secrets/aws/AwsSecretService.cjs +2 -2
- package/lib/cjs/secrets/aws/AwsSecretService.cjs.map +1 -0
- package/lib/cjs/secrets/aws/AwsSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/aws/AwsSecretServiceConfig.cjs.map +1 -0
- package/lib/cjs/secrets/aws/index.cjs +2 -2
- package/lib/cjs/secrets/aws/index.cjs.map +1 -0
- package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs +2 -2
- package/lib/cjs/secrets/azure/AzureKeyVaultSecretService.cjs.map +1 -0
- package/lib/cjs/secrets/azure/AzureKeyVaultSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/azure/AzureKeyVaultSecretServiceConfig.cjs.map +1 -0
- package/lib/cjs/secrets/azure/index.cjs +2 -2
- package/lib/cjs/secrets/azure/index.cjs.map +1 -0
- package/lib/cjs/secrets/core/SecretErrors.cjs +2 -2
- package/lib/cjs/secrets/core/SecretErrors.cjs.map +1 -0
- package/lib/cjs/secrets/core/SecretName.cjs +2 -2
- package/lib/cjs/secrets/core/SecretName.cjs.map +1 -0
- package/lib/cjs/secrets/core/SecretReference.cjs +2 -2
- package/lib/cjs/secrets/core/SecretReference.cjs.map +1 -0
- package/lib/cjs/secrets/core/SecretSerialization.cjs +2 -2
- package/lib/cjs/secrets/core/SecretSerialization.cjs.map +1 -0
- package/lib/cjs/secrets/core/SecretService.cjs +2 -2
- package/lib/cjs/secrets/core/SecretService.cjs.map +1 -0
- package/lib/cjs/secrets/core/SecretTypes.cjs +2 -2
- package/lib/cjs/secrets/core/SecretTypes.cjs.map +1 -0
- package/lib/cjs/secrets/core/index.cjs +2 -2
- package/lib/cjs/secrets/core/index.cjs.map +1 -0
- package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs +2 -2
- package/lib/cjs/secrets/gcp/GcpSecretManagerService.cjs.map +1 -0
- package/lib/cjs/secrets/gcp/GcpSecretManagerServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/gcp/GcpSecretManagerServiceConfig.cjs.map +1 -0
- package/lib/cjs/secrets/gcp/index.cjs +2 -2
- package/lib/cjs/secrets/gcp/index.cjs.map +1 -0
- package/lib/cjs/secrets/index.cjs +2 -2
- package/lib/cjs/secrets/index.cjs.map +1 -0
- package/lib/cjs/secrets/model/ModelSecretCrypto.cjs +2 -2
- package/lib/cjs/secrets/model/ModelSecretCrypto.cjs.map +1 -0
- package/lib/cjs/secrets/model/ModelSecretService.cjs +2 -2
- package/lib/cjs/secrets/model/ModelSecretService.cjs.map +1 -0
- package/lib/cjs/secrets/model/ModelSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/model/ModelSecretServiceConfig.cjs.map +1 -0
- package/lib/cjs/secrets/model/Secret.cjs +2 -2
- package/lib/cjs/secrets/model/Secret.cjs.map +1 -0
- package/lib/cjs/secrets/model/index.cjs +2 -2
- package/lib/cjs/secrets/model/index.cjs.map +1 -0
- package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs +2 -2
- package/lib/cjs/secrets/onepassword/OnePasswordSecretService.cjs.map +1 -0
- package/lib/cjs/secrets/onepassword/OnePasswordSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/onepassword/OnePasswordSecretServiceConfig.cjs.map +1 -0
- package/lib/cjs/secrets/onepassword/index.cjs +2 -2
- package/lib/cjs/secrets/onepassword/index.cjs.map +1 -0
- package/lib/cjs/secrets/vault/VaultSecretService.cjs +2 -2
- package/lib/cjs/secrets/vault/VaultSecretService.cjs.map +1 -0
- package/lib/cjs/secrets/vault/VaultSecretServiceConfig.cjs +2 -2
- package/lib/cjs/secrets/vault/VaultSecretServiceConfig.cjs.map +1 -0
- package/lib/cjs/secrets/vault/index.cjs +2 -2
- package/lib/cjs/secrets/vault/index.cjs.map +1 -0
- package/lib/cjs/shared/runtime.cjs +2 -2
- package/lib/cjs/shared/runtime.cjs.map +1 -0
- package/lib/cjs/utils.cjs +2 -2
- package/lib/cjs/utils.cjs.map +1 -0
- package/lib/esm/blob/azure/AzureBlobStoreService.js +1 -1
- package/lib/esm/blob/azure/AzureBlobStoreService.js.map +1 -0
- package/lib/esm/blob/azure/index.js +1 -1
- package/lib/esm/blob/azure/index.js.map +1 -0
- package/lib/esm/blob/core/BlobErrors.js +1 -1
- package/lib/esm/blob/core/BlobErrors.js.map +1 -0
- package/lib/esm/blob/core/BlobKey.js +1 -1
- package/lib/esm/blob/core/BlobKey.js.map +1 -0
- package/lib/esm/blob/core/BlobStoreFactory.js +1 -1
- package/lib/esm/blob/core/BlobStoreFactory.js.map +1 -0
- package/lib/esm/blob/core/BlobStoreService.js +1 -1
- package/lib/esm/blob/core/BlobStoreService.js.map +1 -0
- package/lib/esm/blob/core/BlobTypes.js +1 -1
- package/lib/esm/blob/core/BlobTypes.js.map +1 -0
- package/lib/esm/blob/core/BlobValue.js +1 -1
- package/lib/esm/blob/core/BlobValue.js.map +1 -0
- package/lib/esm/blob/core/index.js +1 -1
- package/lib/esm/blob/core/index.js.map +1 -0
- package/lib/esm/blob/gcp/GcsBlobStoreService.js +1 -1
- package/lib/esm/blob/gcp/GcsBlobStoreService.js.map +1 -0
- package/lib/esm/blob/gcp/index.js +1 -1
- package/lib/esm/blob/gcp/index.js.map +1 -0
- package/lib/esm/blob/index.js +1 -1
- package/lib/esm/blob/index.js.map +1 -0
- package/lib/esm/blob/ipfs/IpfsBlobStoreService.js +1 -1
- package/lib/esm/blob/ipfs/IpfsBlobStoreService.js.map +1 -0
- package/lib/esm/blob/ipfs/IpfsKeyIndex.js +1 -1
- package/lib/esm/blob/ipfs/IpfsKeyIndex.js.map +1 -0
- package/lib/esm/blob/ipfs/LocalJsonIpfsKeyIndex.js +1 -1
- package/lib/esm/blob/ipfs/LocalJsonIpfsKeyIndex.js.map +1 -0
- package/lib/esm/blob/ipfs/MemoryIpfsKeyIndex.js +1 -1
- package/lib/esm/blob/ipfs/MemoryIpfsKeyIndex.js.map +1 -0
- package/lib/esm/blob/ipfs/PostgresIpfsKeyIndex.js +1 -1
- package/lib/esm/blob/ipfs/PostgresIpfsKeyIndex.js.map +1 -0
- package/lib/esm/blob/ipfs/index.js +1 -1
- package/lib/esm/blob/ipfs/index.js.map +1 -0
- package/lib/esm/blob/local/LocalBlobStoreService.js +1 -1
- package/lib/esm/blob/local/LocalBlobStoreService.js.map +1 -0
- package/lib/esm/blob/local/index.js +1 -1
- package/lib/esm/blob/local/index.js.map +1 -0
- package/lib/esm/blob/memory/MemoryBlobStoreService.js +1 -1
- package/lib/esm/blob/memory/MemoryBlobStoreService.js.map +1 -0
- package/lib/esm/blob/memory/index.js +1 -1
- package/lib/esm/blob/memory/index.js.map +1 -0
- package/lib/esm/blob/s3/MinioBlobStoreService.js +1 -1
- package/lib/esm/blob/s3/MinioBlobStoreService.js.map +1 -0
- package/lib/esm/blob/s3/R2BlobStoreService.js +1 -1
- package/lib/esm/blob/s3/R2BlobStoreService.js.map +1 -0
- package/lib/esm/blob/s3/S3BlobStoreService.js +1 -1
- package/lib/esm/blob/s3/S3BlobStoreService.js.map +1 -0
- package/lib/esm/blob/s3/index.js +1 -1
- package/lib/esm/blob/s3/index.js.map +1 -0
- package/lib/esm/docker/DockerComposeService.js +1 -1
- package/lib/esm/docker/DockerComposeService.js.map +1 -0
- package/lib/esm/docker/index.js +1 -1
- package/lib/esm/docker/index.js.map +1 -0
- package/lib/esm/graph/engine/constants.js +1 -1
- package/lib/esm/graph/engine/constants.js.map +1 -0
- package/lib/esm/graph/engine/decorators.js +1 -1
- package/lib/esm/graph/engine/decorators.js.map +1 -0
- package/lib/esm/graph/engine/errors/GraphCycleError.js +1 -1
- package/lib/esm/graph/engine/errors/GraphCycleError.js.map +1 -0
- package/lib/esm/graph/engine/errors/GraphExecutionError.js +1 -1
- package/lib/esm/graph/engine/errors/GraphExecutionError.js.map +1 -0
- package/lib/esm/graph/engine/errors/GraphInputError.js +1 -1
- package/lib/esm/graph/engine/errors/GraphInputError.js.map +1 -0
- package/lib/esm/graph/engine/errors/GraphLoopLimitError.js +1 -1
- package/lib/esm/graph/engine/errors/GraphLoopLimitError.js.map +1 -0
- package/lib/esm/graph/engine/errors/GraphPinningError.js +1 -1
- package/lib/esm/graph/engine/errors/GraphPinningError.js.map +1 -0
- package/lib/esm/graph/engine/errors/GraphPortError.js +1 -1
- package/lib/esm/graph/engine/errors/GraphPortError.js.map +1 -0
- package/lib/esm/graph/engine/errors/GraphStoreError.js +1 -1
- package/lib/esm/graph/engine/errors/GraphStoreError.js.map +1 -0
- package/lib/esm/graph/engine/errors/GraphTopologyError.js +1 -1
- package/lib/esm/graph/engine/errors/GraphTopologyError.js.map +1 -0
- package/lib/esm/graph/engine/errors/index.js +1 -1
- package/lib/esm/graph/engine/errors/index.js.map +1 -0
- package/lib/esm/graph/engine/events/GraphExecutionEvent.js +1 -1
- package/lib/esm/graph/engine/events/GraphExecutionEvent.js.map +1 -0
- package/lib/esm/graph/engine/events/GraphExecutionEventEmitter.js +1 -1
- package/lib/esm/graph/engine/events/GraphExecutionEventEmitter.js.map +1 -0
- package/lib/esm/graph/engine/events/GraphExecutionEventFactory.js +1 -1
- package/lib/esm/graph/engine/events/GraphExecutionEventFactory.js.map +1 -0
- package/lib/esm/graph/engine/events/GraphExecutionObserver.js +1 -1
- package/lib/esm/graph/engine/events/GraphExecutionObserver.js.map +1 -0
- package/lib/esm/graph/engine/events/index.js +1 -1
- package/lib/esm/graph/engine/events/index.js.map +1 -0
- package/lib/esm/graph/engine/execution/CodeGraphNodeExecutor.js +1 -1
- package/lib/esm/graph/engine/execution/CodeGraphNodeExecutor.js.map +1 -0
- package/lib/esm/graph/engine/execution/CodeSandboxEvaluator.js +1 -1
- package/lib/esm/graph/engine/execution/CodeSandboxEvaluator.js.map +1 -0
- package/lib/esm/graph/engine/execution/GraphExecutionContext.js +1 -1
- package/lib/esm/graph/engine/execution/GraphExecutionContext.js.map +1 -0
- package/lib/esm/graph/engine/execution/GraphExecutionEngine.js +1 -1
- package/lib/esm/graph/engine/execution/GraphExecutionEngine.js.map +1 -0
- package/lib/esm/graph/engine/execution/GraphExecutionFrame.js +1 -1
- package/lib/esm/graph/engine/execution/GraphExecutionFrame.js.map +1 -0
- package/lib/esm/graph/engine/execution/GraphExecutionResult.js +1 -1
- package/lib/esm/graph/engine/execution/GraphExecutionResult.js.map +1 -0
- package/lib/esm/graph/engine/execution/GraphNodeExecutor.js +1 -1
- package/lib/esm/graph/engine/execution/GraphNodeExecutor.js.map +1 -0
- package/lib/esm/graph/engine/execution/IsolatedVmCodeSandboxEvaluator.js +1 -1
- package/lib/esm/graph/engine/execution/IsolatedVmCodeSandboxEvaluator.js.map +1 -0
- package/lib/esm/graph/engine/execution/LogGraphNodeExecutor.js +1 -1
- package/lib/esm/graph/engine/execution/LogGraphNodeExecutor.js.map +1 -0
- package/lib/esm/graph/engine/execution/SwitchGraphNodeExecutor.js +8 -8
- package/lib/esm/graph/engine/execution/SwitchGraphNodeExecutor.js.map +1 -0
- package/lib/esm/graph/engine/execution/index.js +1 -1
- package/lib/esm/graph/engine/execution/index.js.map +1 -0
- package/lib/esm/graph/engine/index.js +1 -1
- package/lib/esm/graph/engine/index.js.map +1 -0
- package/lib/esm/graph/engine/loops/ConditionExpressionEvaluator.js +1 -1
- package/lib/esm/graph/engine/loops/ConditionExpressionEvaluator.js.map +1 -0
- package/lib/esm/graph/engine/loops/ForeachGraphNodeExecutor.js +1 -1
- package/lib/esm/graph/engine/loops/ForeachGraphNodeExecutor.js.map +1 -0
- package/lib/esm/graph/engine/loops/GraphConditionEvaluator.js +1 -1
- package/lib/esm/graph/engine/loops/GraphConditionEvaluator.js.map +1 -0
- package/lib/esm/graph/engine/loops/GraphLoopExecutionContext.js +1 -1
- package/lib/esm/graph/engine/loops/GraphLoopExecutionContext.js.map +1 -0
- package/lib/esm/graph/engine/loops/UntilGraphNodeExecutor.js +1 -1
- package/lib/esm/graph/engine/loops/UntilGraphNodeExecutor.js.map +1 -0
- package/lib/esm/graph/engine/loops/WhileGraphNodeExecutor.js +1 -1
- package/lib/esm/graph/engine/loops/WhileGraphNodeExecutor.js.map +1 -0
- package/lib/esm/graph/engine/loops/index.js +1 -1
- package/lib/esm/graph/engine/loops/index.js.map +1 -0
- package/lib/esm/graph/engine/pinning/GraphPinningDependencyResolver.js +1 -1
- package/lib/esm/graph/engine/pinning/GraphPinningDependencyResolver.js.map +1 -0
- package/lib/esm/graph/engine/pinning/GraphPinningMetadata.js +1 -1
- package/lib/esm/graph/engine/pinning/GraphPinningMetadata.js.map +1 -0
- package/lib/esm/graph/engine/pinning/GraphPinningPolicy.js +1 -1
- package/lib/esm/graph/engine/pinning/GraphPinningPolicy.js.map +1 -0
- package/lib/esm/graph/engine/pinning/GraphPinningService.js +1 -1
- package/lib/esm/graph/engine/pinning/GraphPinningService.js.map +1 -0
- package/lib/esm/graph/engine/pinning/index.js +1 -1
- package/lib/esm/graph/engine/pinning/index.js.map +1 -0
- package/lib/esm/graph/engine/planning/GraphExecutionPlan.js +1 -1
- package/lib/esm/graph/engine/planning/GraphExecutionPlan.js.map +1 -0
- package/lib/esm/graph/engine/planning/GraphExecutionPlanEdge.js +1 -1
- package/lib/esm/graph/engine/planning/GraphExecutionPlanEdge.js.map +1 -0
- package/lib/esm/graph/engine/planning/GraphExecutionPlanLayer.js +1 -1
- package/lib/esm/graph/engine/planning/GraphExecutionPlanLayer.js.map +1 -0
- package/lib/esm/graph/engine/planning/GraphExecutionPlanNode.js +1 -1
- package/lib/esm/graph/engine/planning/GraphExecutionPlanNode.js.map +1 -0
- package/lib/esm/graph/engine/planning/GraphExecutionPlanner.js +1 -1
- package/lib/esm/graph/engine/planning/GraphExecutionPlanner.js.map +1 -0
- package/lib/esm/graph/engine/planning/GraphRelationResolver.js +1 -1
- package/lib/esm/graph/engine/planning/GraphRelationResolver.js.map +1 -0
- package/lib/esm/graph/engine/planning/GraphTopology.js +1 -1
- package/lib/esm/graph/engine/planning/GraphTopology.js.map +1 -0
- package/lib/esm/graph/engine/planning/index.js +1 -1
- package/lib/esm/graph/engine/planning/index.js.map +1 -0
- package/lib/esm/graph/engine/registry/GraphNodeExecutorRegistry.js +1 -1
- package/lib/esm/graph/engine/registry/GraphNodeExecutorRegistry.js.map +1 -0
- package/lib/esm/graph/engine/registry/GraphNodeExecutorResolver.js +1 -1
- package/lib/esm/graph/engine/registry/GraphNodeExecutorResolver.js.map +1 -0
- package/lib/esm/graph/engine/registry/index.js +1 -1
- package/lib/esm/graph/engine/registry/index.js.map +1 -0
- package/lib/esm/graph/engine/snapshots/GraphExecutionSnapshotMapper.js +1 -1
- package/lib/esm/graph/engine/snapshots/GraphExecutionSnapshotMapper.js.map +1 -0
- package/lib/esm/graph/engine/snapshots/index.js +1 -1
- package/lib/esm/graph/engine/snapshots/index.js.map +1 -0
- package/lib/esm/graph/engine/store/GraphCachedValue.js +1 -1
- package/lib/esm/graph/engine/store/GraphCachedValue.js.map +1 -0
- package/lib/esm/graph/engine/store/GraphValueKey.js +1 -1
- package/lib/esm/graph/engine/store/GraphValueKey.js.map +1 -0
- package/lib/esm/graph/engine/store/GraphValueStore.js +1 -1
- package/lib/esm/graph/engine/store/GraphValueStore.js.map +1 -0
- package/lib/esm/graph/engine/store/GraphValueStoreAdapter.js +1 -1
- package/lib/esm/graph/engine/store/GraphValueStoreAdapter.js.map +1 -0
- package/lib/esm/graph/engine/store/InMemoryGraphValueStoreAdapter.js +1 -1
- package/lib/esm/graph/engine/store/InMemoryGraphValueStoreAdapter.js.map +1 -0
- package/lib/esm/graph/engine/store/index.js +1 -1
- package/lib/esm/graph/engine/store/index.js.map +1 -0
- package/lib/esm/graph/engine/types.js +1 -1
- package/lib/esm/graph/engine/types.js.map +1 -0
- package/lib/esm/graph/engine/validation/GraphDefinitionValidator.js +1 -1
- package/lib/esm/graph/engine/validation/GraphDefinitionValidator.js.map +1 -0
- package/lib/esm/graph/engine/validation/GraphPortSchemaResolver.js +1 -1
- package/lib/esm/graph/engine/validation/GraphPortSchemaResolver.js.map +1 -0
- package/lib/esm/graph/engine/validation/GraphValueValidator.js +1 -1
- package/lib/esm/graph/engine/validation/GraphValueValidator.js.map +1 -0
- package/lib/esm/graph/engine/validation/index.js +1 -1
- package/lib/esm/graph/engine/validation/index.js.map +1 -0
- package/lib/esm/graph/index.js +1 -1
- package/lib/esm/graph/index.js.map +1 -0
- package/lib/esm/graph/shared/constants.js +1 -1
- package/lib/esm/graph/shared/constants.js.map +1 -0
- package/lib/esm/graph/shared/index.js +1 -1
- package/lib/esm/graph/shared/index.js.map +1 -0
- package/lib/esm/graph/shared/nodes/agent.js +1 -1
- package/lib/esm/graph/shared/nodes/agent.js.map +1 -0
- package/lib/esm/graph/shared/nodes/base.js +1 -1
- package/lib/esm/graph/shared/nodes/base.js.map +1 -0
- package/lib/esm/graph/shared/nodes/category-styles.js +1 -1
- package/lib/esm/graph/shared/nodes/category-styles.js.map +1 -0
- package/lib/esm/graph/shared/nodes/flow-control.js +3 -2
- package/lib/esm/graph/shared/nodes/flow-control.js.map +1 -0
- package/lib/esm/graph/shared/nodes/index.js +1 -1
- package/lib/esm/graph/shared/nodes/index.js.map +1 -0
- package/lib/esm/graph/shared/nodes/triggers.js +1 -1
- package/lib/esm/graph/shared/nodes/triggers.js.map +1 -0
- package/lib/esm/graph/shared/types.js +1 -1
- package/lib/esm/graph/shared/types.js.map +1 -0
- package/lib/esm/index.js +4 -4
- package/lib/esm/index.js.map +1 -0
- package/lib/esm/keycloak/index.js +1 -1
- package/lib/esm/keycloak/index.js.map +1 -0
- package/lib/esm/keycloak/services/KeycloakAuthService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakAuthService.js.map +1 -0
- package/lib/esm/keycloak/services/KeycloakClientService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakClientService.js.map +1 -0
- package/lib/esm/keycloak/services/KeycloakIdentityProviderService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakIdentityProviderService.js.map +1 -0
- package/lib/esm/keycloak/services/KeycloakRealmService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakRealmService.js.map +1 -0
- package/lib/esm/keycloak/services/KeycloakRoleService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakRoleService.js.map +1 -0
- package/lib/esm/keycloak/services/KeycloakService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakService.js.map +1 -0
- package/lib/esm/keycloak/services/KeycloakUserService.js +1 -1
- package/lib/esm/keycloak/services/KeycloakUserService.js.map +1 -0
- package/lib/esm/keycloak/services/index.js +1 -1
- package/lib/esm/keycloak/services/index.js.map +1 -0
- package/lib/esm/keycloak/services/runtime.js +1 -1
- package/lib/esm/keycloak/services/runtime.js.map +1 -0
- package/lib/esm/keycloak/types.js +1 -1
- package/lib/esm/keycloak/types.js.map +1 -0
- package/lib/esm/kibana/helpers.js +1 -1
- package/lib/esm/kibana/helpers.js.map +1 -0
- package/lib/esm/kibana/index.js +1 -1
- package/lib/esm/kibana/index.js.map +1 -0
- package/lib/esm/kibana/services/KibanaAuthService.js +1 -1
- package/lib/esm/kibana/services/KibanaAuthService.js.map +1 -0
- package/lib/esm/kibana/services/KibanaDashboardService.js +1 -1
- package/lib/esm/kibana/services/KibanaDashboardService.js.map +1 -0
- package/lib/esm/kibana/services/KibanaDataViewService.js +1 -1
- package/lib/esm/kibana/services/KibanaDataViewService.js.map +1 -0
- package/lib/esm/kibana/services/KibanaRoleService.js +1 -1
- package/lib/esm/kibana/services/KibanaRoleService.js.map +1 -0
- package/lib/esm/kibana/services/KibanaService.js +1 -1
- package/lib/esm/kibana/services/KibanaService.js.map +1 -0
- package/lib/esm/kibana/services/KibanaSpaceService.js +1 -1
- package/lib/esm/kibana/services/KibanaSpaceService.js.map +1 -0
- package/lib/esm/kibana/services/KibanaUserService.js +1 -1
- package/lib/esm/kibana/services/KibanaUserService.js.map +1 -0
- package/lib/esm/kibana/services/index.js +1 -1
- package/lib/esm/kibana/services/index.js.map +1 -0
- package/lib/esm/kibana/services/runtime.js +1 -1
- package/lib/esm/kibana/services/runtime.js.map +1 -0
- package/lib/esm/kibana/types.js +1 -1
- package/lib/esm/kibana/types.js.map +1 -0
- package/lib/esm/namespaces/index.js +1 -1
- package/lib/esm/namespaces/index.js.map +1 -0
- package/lib/esm/namespaces/models/authorization-model.js +1 -1
- package/lib/esm/namespaces/models/authorization-model.js.map +1 -0
- package/lib/esm/namespaces/models/effective-permission.model.js +1 -1
- package/lib/esm/namespaces/models/effective-permission.model.js.map +1 -0
- package/lib/esm/namespaces/models/group-membership.model.js +1 -1
- package/lib/esm/namespaces/models/group-membership.model.js.map +1 -0
- package/lib/esm/namespaces/models/group.model.js +1 -1
- package/lib/esm/namespaces/models/group.model.js.map +1 -0
- package/lib/esm/namespaces/models/index.js +1 -1
- package/lib/esm/namespaces/models/index.js.map +1 -0
- package/lib/esm/namespaces/models/inheritance-block.model.js +1 -1
- package/lib/esm/namespaces/models/inheritance-block.model.js.map +1 -0
- package/lib/esm/namespaces/models/org-unit-closure.model.js +1 -1
- package/lib/esm/namespaces/models/org-unit-closure.model.js.map +1 -0
- package/lib/esm/namespaces/models/org-unit-membership.model.js +1 -1
- package/lib/esm/namespaces/models/org-unit-membership.model.js.map +1 -0
- package/lib/esm/namespaces/models/org-unit-profile.model.js +1 -1
- package/lib/esm/namespaces/models/org-unit-profile.model.js.map +1 -0
- package/lib/esm/namespaces/models/org-unit.model.js +1 -1
- package/lib/esm/namespaces/models/org-unit.model.js.map +1 -0
- package/lib/esm/namespaces/models/permission.model.js +1 -1
- package/lib/esm/namespaces/models/permission.model.js.map +1 -0
- package/lib/esm/namespaces/models/principal.model.js +1 -1
- package/lib/esm/namespaces/models/principal.model.js.map +1 -0
- package/lib/esm/namespaces/models/protected-resource.model.js +1 -1
- package/lib/esm/namespaces/models/protected-resource.model.js.map +1 -0
- package/lib/esm/namespaces/models/resource-grant.model.js +1 -1
- package/lib/esm/namespaces/models/resource-grant.model.js.map +1 -0
- package/lib/esm/namespaces/models/role-assignment.model.js +1 -1
- package/lib/esm/namespaces/models/role-assignment.model.js.map +1 -0
- package/lib/esm/namespaces/models/role-permission.model.js +1 -1
- package/lib/esm/namespaces/models/role-permission.model.js.map +1 -0
- package/lib/esm/namespaces/models/role.model.js +1 -1
- package/lib/esm/namespaces/models/role.model.js.map +1 -0
- package/lib/esm/namespaces/models/storage-binding.model.js +1 -1
- package/lib/esm/namespaces/models/storage-binding.model.js.map +1 -0
- package/lib/esm/namespaces/models/tenant-membership.model.js +1 -1
- package/lib/esm/namespaces/models/tenant-membership.model.js.map +1 -0
- package/lib/esm/namespaces/models/tenant-profile.model.js +1 -1
- package/lib/esm/namespaces/models/tenant-profile.model.js.map +1 -0
- package/lib/esm/namespaces/models/tenant.model.js +1 -1
- package/lib/esm/namespaces/models/tenant.model.js.map +1 -0
- package/lib/esm/namespaces/models/user.model.js +1 -1
- package/lib/esm/namespaces/models/user.model.js.map +1 -0
- package/lib/esm/namespaces/org-based-authorization-system.js +1 -1
- package/lib/esm/namespaces/org-based-authorization-system.js.map +1 -0
- package/lib/esm/namespaces/org-based-authorization-system.models.js +1 -1
- package/lib/esm/namespaces/org-based-authorization-system.models.js.map +1 -0
- package/lib/esm/namespaces/org-based-authorization-system.services.js +1 -1
- package/lib/esm/namespaces/org-based-authorization-system.services.js.map +1 -0
- package/lib/esm/namespaces/services/authz.service.js +1 -1
- package/lib/esm/namespaces/services/authz.service.js.map +1 -0
- package/lib/esm/namespaces/services/bootstrap.service.js +1 -1
- package/lib/esm/namespaces/services/bootstrap.service.js.map +1 -0
- package/lib/esm/namespaces/services/effective-permission.service.js +1 -1
- package/lib/esm/namespaces/services/effective-permission.service.js.map +1 -0
- package/lib/esm/namespaces/services/group-membership.service.js +1 -1
- package/lib/esm/namespaces/services/group-membership.service.js.map +1 -0
- package/lib/esm/namespaces/services/group.service.js +1 -1
- package/lib/esm/namespaces/services/group.service.js.map +1 -0
- package/lib/esm/namespaces/services/index.js +1 -1
- package/lib/esm/namespaces/services/index.js.map +1 -0
- package/lib/esm/namespaces/services/inheritance-block.service.js +1 -1
- package/lib/esm/namespaces/services/inheritance-block.service.js.map +1 -0
- package/lib/esm/namespaces/services/org-unit-closure.service.js +1 -1
- package/lib/esm/namespaces/services/org-unit-closure.service.js.map +1 -0
- package/lib/esm/namespaces/services/org-unit-membership.service.js +1 -1
- package/lib/esm/namespaces/services/org-unit-membership.service.js.map +1 -0
- package/lib/esm/namespaces/services/org-unit-profile.service.js +1 -1
- package/lib/esm/namespaces/services/org-unit-profile.service.js.map +1 -0
- package/lib/esm/namespaces/services/org-unit.service.js +1 -1
- package/lib/esm/namespaces/services/org-unit.service.js.map +1 -0
- package/lib/esm/namespaces/services/permission.service.js +1 -1
- package/lib/esm/namespaces/services/permission.service.js.map +1 -0
- package/lib/esm/namespaces/services/principal.service.js +1 -1
- package/lib/esm/namespaces/services/principal.service.js.map +1 -0
- package/lib/esm/namespaces/services/protected-resource.service.js +1 -1
- package/lib/esm/namespaces/services/protected-resource.service.js.map +1 -0
- package/lib/esm/namespaces/services/resource-grant.service.js +1 -1
- package/lib/esm/namespaces/services/resource-grant.service.js.map +1 -0
- package/lib/esm/namespaces/services/resource-lifecycle.service.js +1 -1
- package/lib/esm/namespaces/services/resource-lifecycle.service.js.map +1 -0
- package/lib/esm/namespaces/services/role-assignment.service.js +1 -1
- package/lib/esm/namespaces/services/role-assignment.service.js.map +1 -0
- package/lib/esm/namespaces/services/role-permission.service.js +1 -1
- package/lib/esm/namespaces/services/role-permission.service.js.map +1 -0
- package/lib/esm/namespaces/services/role.service.js +1 -1
- package/lib/esm/namespaces/services/role.service.js.map +1 -0
- package/lib/esm/namespaces/services/storage-binding.service.js +1 -1
- package/lib/esm/namespaces/services/storage-binding.service.js.map +1 -0
- package/lib/esm/namespaces/services/system-management.service.js +1 -1
- package/lib/esm/namespaces/services/system-management.service.js.map +1 -0
- package/lib/esm/namespaces/services/tenant-membership.service.js +1 -1
- package/lib/esm/namespaces/services/tenant-membership.service.js.map +1 -0
- package/lib/esm/namespaces/services/tenant-profile.service.js +1 -1
- package/lib/esm/namespaces/services/tenant-profile.service.js.map +1 -0
- package/lib/esm/namespaces/services/tenant.service.js +1 -1
- package/lib/esm/namespaces/services/tenant.service.js.map +1 -0
- package/lib/esm/namespaces/services/user.service.js +1 -1
- package/lib/esm/namespaces/services/user.service.js.map +1 -0
- package/lib/esm/namespaces/types.js +1 -1
- package/lib/esm/namespaces/types.js.map +1 -0
- package/lib/esm/namespaces/utils.js +1 -1
- package/lib/esm/namespaces/utils.js.map +1 -0
- package/lib/esm/nest/authService.js +1 -1
- package/lib/esm/nest/authService.js.map +1 -0
- package/lib/esm/nest/graph/GraphExecutionController.js +1 -1
- package/lib/esm/nest/graph/GraphExecutionController.js.map +1 -0
- package/lib/esm/nest/graph/GraphExecutionModule.js +1 -1
- package/lib/esm/nest/graph/GraphExecutionModule.js.map +1 -0
- package/lib/esm/nest/graph/GraphExecutionResultModel.js +1 -1
- package/lib/esm/nest/graph/GraphExecutionResultModel.js.map +1 -0
- package/lib/esm/nest/graph/GraphExecutorRegistryFactory.js +1 -1
- package/lib/esm/nest/graph/GraphExecutorRegistryFactory.js.map +1 -0
- package/lib/esm/nest/graph/GraphResultService.js +1 -1
- package/lib/esm/nest/graph/GraphResultService.js.map +1 -0
- package/lib/esm/nest/graph/GraphWorkflowModel.js +1 -1
- package/lib/esm/nest/graph/GraphWorkflowModel.js.map +1 -0
- package/lib/esm/nest/graph/GraphWorkflowService.js +1 -1
- package/lib/esm/nest/graph/GraphWorkflowService.js.map +1 -0
- package/lib/esm/nest/graph/index.js +1 -1
- package/lib/esm/nest/graph/index.js.map +1 -0
- package/lib/esm/nest/graph/main.js +1 -1
- package/lib/esm/nest/graph/main.js.map +1 -0
- package/lib/esm/nest/index.js +1 -1
- package/lib/esm/nest/index.js.map +1 -0
- package/lib/esm/nest/keycloakAuthHandler.js +1 -1
- package/lib/esm/nest/keycloakAuthHandler.js.map +1 -0
- package/lib/esm/nest/keycloakModule.js +1 -1
- package/lib/esm/nest/keycloakModule.js.map +1 -0
- package/lib/esm/nest/logging.js +1 -1
- package/lib/esm/nest/logging.js.map +1 -0
- package/lib/esm/nest/types.js +1 -1
- package/lib/esm/nest/types.js.map +1 -0
- package/lib/esm/nest/utils.js +1 -1
- package/lib/esm/nest/utils.js.map +1 -0
- package/lib/esm/secrets/aws/AwsSecretService.js +1 -1
- package/lib/esm/secrets/aws/AwsSecretService.js.map +1 -0
- package/lib/esm/secrets/aws/AwsSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/aws/AwsSecretServiceConfig.js.map +1 -0
- package/lib/esm/secrets/aws/index.js +1 -1
- package/lib/esm/secrets/aws/index.js.map +1 -0
- package/lib/esm/secrets/azure/AzureKeyVaultSecretService.js +1 -1
- package/lib/esm/secrets/azure/AzureKeyVaultSecretService.js.map +1 -0
- package/lib/esm/secrets/azure/AzureKeyVaultSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/azure/AzureKeyVaultSecretServiceConfig.js.map +1 -0
- package/lib/esm/secrets/azure/index.js +1 -1
- package/lib/esm/secrets/azure/index.js.map +1 -0
- package/lib/esm/secrets/core/SecretErrors.js +1 -1
- package/lib/esm/secrets/core/SecretErrors.js.map +1 -0
- package/lib/esm/secrets/core/SecretName.js +1 -1
- package/lib/esm/secrets/core/SecretName.js.map +1 -0
- package/lib/esm/secrets/core/SecretReference.js +1 -1
- package/lib/esm/secrets/core/SecretReference.js.map +1 -0
- package/lib/esm/secrets/core/SecretSerialization.js +1 -1
- package/lib/esm/secrets/core/SecretSerialization.js.map +1 -0
- package/lib/esm/secrets/core/SecretService.js +1 -1
- package/lib/esm/secrets/core/SecretService.js.map +1 -0
- package/lib/esm/secrets/core/SecretTypes.js +1 -1
- package/lib/esm/secrets/core/SecretTypes.js.map +1 -0
- package/lib/esm/secrets/core/index.js +1 -1
- package/lib/esm/secrets/core/index.js.map +1 -0
- package/lib/esm/secrets/gcp/GcpSecretManagerService.js +1 -1
- package/lib/esm/secrets/gcp/GcpSecretManagerService.js.map +1 -0
- package/lib/esm/secrets/gcp/GcpSecretManagerServiceConfig.js +1 -1
- package/lib/esm/secrets/gcp/GcpSecretManagerServiceConfig.js.map +1 -0
- package/lib/esm/secrets/gcp/index.js +1 -1
- package/lib/esm/secrets/gcp/index.js.map +1 -0
- package/lib/esm/secrets/index.js +1 -1
- package/lib/esm/secrets/index.js.map +1 -0
- package/lib/esm/secrets/model/ModelSecretCrypto.js +1 -1
- package/lib/esm/secrets/model/ModelSecretCrypto.js.map +1 -0
- package/lib/esm/secrets/model/ModelSecretService.js +1 -1
- package/lib/esm/secrets/model/ModelSecretService.js.map +1 -0
- package/lib/esm/secrets/model/ModelSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/model/ModelSecretServiceConfig.js.map +1 -0
- package/lib/esm/secrets/model/Secret.js +1 -1
- package/lib/esm/secrets/model/Secret.js.map +1 -0
- package/lib/esm/secrets/model/index.js +1 -1
- package/lib/esm/secrets/model/index.js.map +1 -0
- package/lib/esm/secrets/onepassword/OnePasswordSecretService.js +1 -1
- package/lib/esm/secrets/onepassword/OnePasswordSecretService.js.map +1 -0
- package/lib/esm/secrets/onepassword/OnePasswordSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/onepassword/OnePasswordSecretServiceConfig.js.map +1 -0
- package/lib/esm/secrets/onepassword/index.js +1 -1
- package/lib/esm/secrets/onepassword/index.js.map +1 -0
- package/lib/esm/secrets/vault/VaultSecretService.js +1 -1
- package/lib/esm/secrets/vault/VaultSecretService.js.map +1 -0
- package/lib/esm/secrets/vault/VaultSecretServiceConfig.js +1 -1
- package/lib/esm/secrets/vault/VaultSecretServiceConfig.js.map +1 -0
- package/lib/esm/secrets/vault/index.js +1 -1
- package/lib/esm/secrets/vault/index.js.map +1 -0
- package/lib/esm/shared/runtime.js +1 -1
- package/lib/esm/shared/runtime.js.map +1 -0
- package/lib/esm/utils.js +1 -1
- package/lib/esm/utils.js.map +1 -0
- package/lib/types/graph/engine/execution/SwitchGraphNodeExecutor.d.cts +2 -2
- package/lib/types/graph/engine/execution/SwitchGraphNodeExecutor.d.mts +2 -2
- package/lib/types/graph/shared/types.d.cts +3 -3
- package/lib/types/graph/shared/types.d.mts +3 -3
- package/lib/types/index.d.cts +2 -2
- package/lib/types/index.d.mts +2 -2
- package/package.json +3 -3
|
@@ -424,4 +424,4 @@ export class GraphExecutionEngine {
|
|
|
424
424
|
return { name: "UnknownError", message: String(error) };
|
|
425
425
|
}
|
|
426
426
|
}
|
|
427
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3JhcGhFeGVjdXRpb25FbmdpbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZ3JhcGgvZW5naW5lL2V4ZWN1dGlvbi9HcmFwaEV4ZWN1dGlvbkVuZ2luZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRQSxPQUFPLEVBQ0wseUJBQXlCLEVBQ3pCLHVCQUF1QixHQUN4QiwwQkFBcUI7QUFDdEIsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixvQkFBb0IsR0FDckIsb0NBQStCO0FBQ2hDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSw2QkFBa0I7QUFhaEQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLGtEQUE2QztBQUNsRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsa0RBQTZDO0FBRWxGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSwrQ0FBMEM7QUFJMUUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLHFEQUFnRDtBQUN6RixPQUFPLEVBQUUsZUFBZSxFQUFFLHNDQUFpQztBQUUzRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsNENBQXVDO0FBQ3JFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSwyQ0FBc0M7QUFDbkUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLHVEQUFrRDtBQUMzRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsbUNBQWdDO0FBQ2hFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxpQ0FBOEI7QUFDNUQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLGtDQUErQjtBQTRCbkU7Ozs7Ozs7Ozs7R0FVRztBQUNILE1BQU0sT0FBTyxvQkFBb0I7SUFTL0IsWUFBWSxNQUFrQztRQUM1QyxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxZQUFZLElBQUksSUFBSSwwQkFBMEIsRUFBRSxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDLE9BQU8sSUFBSSxJQUFJLHFCQUFxQixFQUFFLENBQUM7UUFDN0QsSUFBSSxDQUFDLGlCQUFpQjtZ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Ii8qKlxuICogQG1vZHVsZSBpbnRlZ3JhdGlvbnMvZ3JhcGgvZXhlY3V0aW9uL0dyYXBoRXhlY3V0aW9uRW5naW5lXG4gKiBAc3VtbWFyeSBSZWZlcmVuY2UgZ3JhcGggZXhlY3V0aW9uIGVuZ2luZS5cbiAqIEBkZXNjcmlwdGlvbiBFeGVjdXRlcyBncmFwaCB3b3JrZmxvd3MgZGVjbGFyZWQgd2l0aCBgQGRlY2FmLXRzL3VpLWRlY29yYXRvcnMvZ3JhcGhgLCBlbWl0cyBldmVudHMgdGhyb3VnaCBEZWNhZidzIE9ic2VydmFibGUgcGlwZWxpbmUsIHN1cHBvcnRzIHBhcmFsbGVsIG5vZGUgZXhlY3V0aW9uIHdpdGhpbiB0b3BvbG9naWNhbCBsYXllcnMsIGFuZCByZXR1cm5zIGEgY29tcGxldGUgZXhlY3V0aW9uIHJlc3VsdC5cbiAqL1xuaW1wb3J0IHR5cGUgeyBPYnNlcnZhYmxlIH0gZnJvbSBcIkBkZWNhZi10cy9jb3JlXCI7XG5pbXBvcnQgdHlwZSB7IEdyYXBoV29ya2Zsb3dEZWZpbml0aW9uIH0gZnJvbSBcIkBkZWNhZi10cy91aS1kZWNvcmF0b3JzL2dyYXBoXCI7XG5cbmltcG9ydCB7XG4gIEdSQVBIX0RFRkFVTFRfQ09OQ1VSUkVOQ1ksXG4gIEdSQVBIX1dPUktGTE9XX0JPVU5EQVJZLFxufSBmcm9tIFwiLi4vY29uc3RhbnRzXCI7XG5pbXBvcnQge1xuICBHcmFwaEV4ZWN1dGlvbkV2ZW50VHlwZSxcbiAgR3JhcGhFeGVjdXRpb25TdGF0dXMsXG59IGZyb20gXCIuLi8uLi9zaGFyZWQvY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBHcmFwaEV4ZWN1dGlvbkVycm9yIH0gZnJvbSBcIi4uL2Vycm9yc1wiO1xuaW1wb3J0IHR5cGUge1xuICBHcmFwaEV4ZWN1dGlvbkVycm9yUGF5bG9hZCxcbiAgR3JhcGhFeGVjdXRpb25FdmVudCxcbiAgR3JhcGhFeGVjdXRpb25PcHRpb25zLFxuICBHcmFwaEV4ZWN1dGlvblJlc3VsdCxcbiAgR3JhcGhFeGVjdXRpb25WYWx1ZXMsXG4gIEdyYXBoTm9kZUV4ZWN1dGlvblJlc3VsdCxcbiAgR3JhcGhQaW5Ob2RlT3B0aW9ucyxcbiAgR3JhcGhVbnBpbk5vZGVPcHRpb25zLFxuICBHcmFwaFJ1bklkLFxufSBmcm9tIFwiLi4vdHlwZXNcIjtcbmltcG9ydCB0eXBlIHsgR3JhcGhFeGVjdXRpb25PYnNlcnZlciB9IGZyb20gXCIuLi9ldmVudHMvR3JhcGhFeGVjdXRpb25PYnNlcnZlclwiO1xuaW1wb3J0IHsgR3JhcGhFeGVjdXRpb25FdmVudEVtaXR0ZXIgfSBmcm9tIFwiLi4vZXZlbnRzL0dyYXBoRXhlY3V0aW9uRXZlbnRFbWl0dGVyXCI7XG5pbXBvcnQgeyBHcmFwaEV4ZWN1dGlvbkV2ZW50RmFjdG9yeSB9IGZyb20gXCIuLi9ldmVudHMvR3JhcGhFeGVjdXRpb25FdmVudEZhY3RvcnlcIjtcbmltcG9ydCB0eXBlIHsgR3JhcGhOb2RlRXhlY3V0b3JSZWdpc3RyeSB9IGZyb20gXCIuLi9yZWdpc3RyeS9HcmFwaE5vZGVFeGVjdXRvclJlZ2lzdHJ5XCI7XG5pbXBvcnQgeyBHcmFwaEV4ZWN1dGlvblBsYW5uZXIgfSBmcm9tIFwiLi4vcGxhbm5pbmcvR3JhcGhFeGVjdXRpb25QbGFubmVyXCI7XG5pbXBvcnQgdHlwZSB7IEdyYXBoRXhlY3V0aW9uUGxhbiB9IGZyb20gXCIuLi9wbGFubmluZy9HcmFwaEV4ZWN1dGlvblBsYW5cIjtcbmltcG9ydCB0eXBlIHsgR3JhcGhFeGVjdXRpb25QbGFuTm9kZSB9IGZyb20gXCIuLi9wbGFubmluZy9HcmFwaEV4ZWN1dGlvblBsYW5Ob2RlXCI7XG5pbXBvcnQgdHlwZSB7IEdyYXBoVmFsdWVTdG9yZUFkYXB0ZXIgfSBmcm9tIFwiLi4vc3RvcmUvR3JhcGhWYWx1ZVN0b3JlQWRhcHRlclwiO1xuaW1wb3J0IHsgSW5NZW1vcnlHcmFwaFZhbHVlU3RvcmVBZGFwdGVyIH0gZnJvbSBcIi4uL3N0b3JlL0luTWVtb3J5R3JhcGhWYWx1ZVN0b3JlQWRhcHRlclwiO1xuaW1wb3J0IHsgR3JhcGhWYWx1ZVN0b3JlIH0gZnJvbSBcIi4uL3N0b3JlL0dyYXBoVmFsdWVTdG9yZVwiO1xuaW1wb3J0IHR5cGUgeyBHcmFwaENhY2hlZFZhbHVlIH0gZnJvbSBcIi4uL3N0b3JlL0dyYXBoQ2FjaGVkVmFsdWVcIjtcbmltcG9ydCB7IEdyYXBoUGlubmluZ1NlcnZpY2UgfSBmcm9tIFwiLi4vcGlubmluZy9HcmFwaFBpbm5pbmdTZXJ2aWNlXCI7XG5pbXBvcnQgeyBHcmFwaFBpbm5pbmdQb2xpY3kgfSBmcm9tIFwiLi4vcGlubmluZy9HcmFwaFBpbm5pbmdQb2xpY3lcIjtcbmltcG9ydCB7IEdyYXBoUGlubmluZ0RlcGVuZGVuY3lSZXNvbHZlciB9IGZyb20gXCIuLi9waW5uaW5nL0dyYXBoUGlubmluZ0RlcGVuZGVuY3lSZXNvbHZlclwiO1xuaW1wb3J0IHsgR3JhcGhFeGVjdXRpb25Db250ZXh0IH0gZnJvbSBcIi4vR3JhcGhFeGVjdXRpb25Db250ZXh0XCI7XG5pbXBvcnQgeyBHcmFwaEV4ZWN1dGlvbkZyYW1lIH0gZnJvbSBcIi4vR3JhcGhFeGVjdXRpb25GcmFtZVwiO1xuaW1wb3J0IHsgYnVpbGRHcmFwaEV4ZWN1dGlvblJlc3VsdCB9IGZyb20gXCIuL0dyYXBoRXhlY3V0aW9uUmVzdWx0XCI7XG5pbXBvcnQgdHlwZSB7IENvZGVTYW5kYm94RXZhbHVhdG9yIH0gZnJvbSBcIi4vQ29kZVNhbmRib3hFdmFsdWF0b3JcIjtcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGZvciB0aGUge0BsaW5rIEdyYXBoRXhlY3V0aW9uRW5naW5lfS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHcmFwaEV4ZWN1dGlvbkVuZ2luZUNvbmZpZyB7XG4gIHJlZ2lzdHJ5OiBHcmFwaE5vZGVFeGVjdXRvclJlZ2lzdHJ5O1xuICBwbGFubmVyPzogR3JhcGhFeGVjdXRpb25QbGFubmVyO1xuICB2YWx1ZVN0b3JlQWRhcHRlcj86IEdyYXBoVmFsdWVTdG9yZUFkYXB0ZXI7XG4gIGV2ZW50RW1pdHRlcj86IEdyYXBoRXhlY3V0aW9uRXZlbnRFbWl0dGVyO1xuICBkZWZhdWx0T3B0aW9ucz86IFBhcnRpYWw8R3JhcGhFeGVjdXRpb25PcHRpb25zPjtcbiAgLyoqXG4gICAqIE9wdGlvbmFsIHBsdWdnYWJsZSBjb2RlIHNhbmRib3ggZXZhbHVhdG9yIGZvciBjb2RlLWJhc2VkIGNvbmRpdGlvbnNcbiAgICogKERFQ0FGLTMyIMKnMjIuNCkuIFdoZW4gYWJzZW50LCBjb2RlIGNvbmRpdGlvbnMgdGhyb3dcbiAgICogYEdSQVBIX0NPREVfU0FOREJPWF9OT1RfQ09ORklHVVJFRGAuIERvd25zdHJlYW0gcHJvamVjdHMgKGUuZy4gQUxGUkVEKVxuICAgKiBzdXBwbHkgdGhlIGFjdHVhbCBWTSBzYW5kYm94IGltcGxlbWVudGF0aW9uLlxuICAgKi9cbiAgY29kZVNhbmRib3hFdmFsdWF0b3I/OiBDb2RlU2FuZGJveEV2YWx1YXRvcjtcbiAgLyoqXG4gICAqIE9wdGlvbmFsIGNhbGxiYWNrIGludm9rZWQgYXQgdGhlIGVuZCBvZiBlbmdpbmUgY29uc3RydWN0aW9uIHdpdGggdGhlXG4gICAqIGZ1bGx5LWluaXRpYWxpc2VkIGVuZ2luZSBpbnN0YW5jZS4gVXNlIHRoaXMgdG8gcmVnaXN0ZXIgZXhlY3V0b3JzIHRoYXRcbiAgICogbmVlZCBhIGJhY2stcmVmZXJlbmNlIHRvIHRoZSBlbmdpbmUgKGUuZy4gbG9vcCBleGVjdXRvcnMgdGhhdCBleGVjdXRlXG4gICAqIHN1Yi13b3JrZmxvd3MgdGhyb3VnaCB0aGUgc2FtZSBlbmdpbmUpLlxuICAgKi9cbiAgb25FbmdpbmVDcmVhdGVkPzogKGVuZ2luZTogR3JhcGhFeGVjdXRpb25FbmdpbmUpID0+IHZvaWQ7XG59XG5cbi8qKlxuICogUmVmZXJlbmNlIGdyYXBoIGV4ZWN1dGlvbiBlbmdpbmUuXG4gKlxuICogRXhlY3V0ZXMgYSB7QGxpbmsgR3JhcGhXb3JrZmxvd0RlZmluaXRpb259IGJ5OlxuICogMS4gUGxhbm5pbmcgdGhlIHdvcmtmbG93IGludG8gdG9wb2xvZ2ljYWwgbGF5ZXJzLlxuICogMi4gU2VlZGluZyB3b3JrZmxvdyBpbnB1dHMgaW50byB0aGUgdmFsdWUgc3RvcmUuXG4gKiAzLiBFeGVjdXRpbmcgbm9kZXMgbGF5ZXItYnktbGF5ZXIgd2l0aCBjb25maWd1cmFibGUgY29uY3VycmVuY3kuXG4gKiA0LiBSb3V0aW5nIHZhbHVlcyBhbG9uZyBlZGdlcy5cbiAqIDUuIEVtaXR0aW5nIHN0cnVjdHVyZWQgZXZlbnRzIHRocm91Z2ggRGVjYWYncyBPYnNlcnZhYmxlIHBpcGVsaW5lLlxuICogNi4gUmV0dXJuaW5nIGEgY29tcGxldGUge0BsaW5rIEdyYXBoRXhlY3V0aW9uUmVzdWx0fS5cbiAqL1xuZXhwb3J0IGNsYXNzIEdyYXBoRXhlY3V0aW9uRW5naW5lXG4gIGltcGxlbWVudHMgT2JzZXJ2YWJsZTxbR3JhcGhFeGVjdXRpb25PYnNlcnZlcl0sIFtHcmFwaEV4ZWN1dGlvbkV2ZW50XT4ge1xuICBwcml2YXRlIHJlYWRvbmx5IGVtaXR0ZXI6IEdyYXBoRXhlY3V0aW9uRXZlbnRFbWl0dGVyO1xuICBwcml2YXRlIHJlYWRvbmx5IHBsYW5uZXI6IEdyYXBoRXhlY3V0aW9uUGxhbm5lcjtcbiAgcHJpdmF0ZSByZWFkb25seSB2YWx1ZVN0b3JlQWRhcHRlcjogR3JhcGhWYWx1ZVN0b3JlQWRhcHRlcjtcbiAgcHJpdmF0ZSByZWFkb25seSBkZWZhdWx0T3B0aW9uczogUGFydGlhbDxHcmFwaEV4ZWN1dGlvbk9wdGlvbnM+O1xuICAvKiogUGx1Z2dhYmxlIGNvZGUgc2FuZGJveCBldmFsdWF0b3IgKMKnMjIuNCk7IG1heSBiZSB1bmRlZmluZWQuICovXG4gIHJlYWRvbmx5IGNvZGVTYW5kYm94RXZhbHVhdG9yPzogQ29kZVNhbmRib3hFdmFsdWF0b3I7XG5cbiAgY29uc3RydWN0b3IoY29uZmlnOiBHcmFwaEV4ZWN1dGlvbkVuZ2luZUNvbmZpZykge1xuICAgIHRoaXMuZW1pdHRlciA9IGNvbmZpZy5ldmVudEVtaXR0ZXIgPz8gbmV3IEdyYXBoRXhlY3V0aW9uRXZlbnRFbWl0dGVyKCk7XG4gICAgdGhpcy5wbGFubmVyID0gY29uZmlnLnBsYW5uZXIgPz8gbmV3IEdyYXBoRXhlY3V0aW9uUGxhbm5lcigpO1xuICAgIHRoaXMudmFsdWVTdG9yZUFkYXB0ZXIgPVxuICAgICAgY29uZmlnLnZhbHVlU3RvcmVBZGFwdGVyID8/IG5ldyBJbk1lbW9yeUdyYXBoVmFsdWVTdG9yZUFkYXB0ZXIoKTtcbiAgICB0aGlzLmRlZmF1bHRPcHRpb25zID0gY29uZmlnLmRlZmF1bHRPcHRpb25zID8/IHt9O1xuICAgIHRoaXMuY29kZVNhbmRib3hFdmFsdWF0b3IgPSBjb25maWcuY29kZVNhbmRib3hFdmFsdWF0b3I7XG4gICAgdGhpcy5jb25maWcgPSBjb25maWc7XG4gICAgY29uZmlnLm9uRW5naW5lQ3JlYXRlZD8uKHRoaXMpO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBjb25maWc6IEdyYXBoRXhlY3V0aW9uRW5naW5lQ29uZmlnO1xuXG4gIG9ic2VydmUob2JzZXJ2ZXI6IEdyYXBoRXhlY3V0aW9uT2JzZXJ2ZXIpOiAoKSA9PiB2b2lkIHtcbiAgICByZXR1cm4gdGhpcy5lbWl0dGVyLm9ic2VydmUob2JzZXJ2ZXIpO1xuICB9XG5cbiAgdW5PYnNlcnZlKG9ic2VydmVyOiBHcmFwaEV4ZWN1dGlvbk9ic2VydmVyKTogdm9pZCB7XG4gICAgdGhpcy5lbWl0dGVyLnVuT2JzZXJ2ZShvYnNlcnZlcik7XG4gIH1cblxuICBhc3luYyB1cGRhdGVPYnNlcnZlcnMoZXZlbnQ6IEdyYXBoRXhlY3V0aW9uRXZlbnQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLmVtaXR0ZXIudXBkYXRlT2JzZXJ2ZXJzKGV2ZW50KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFeGVjdXRlcyBhIHdvcmtmbG93IHdpdGggdGhlIGdpdmVuIGlucHV0cyBhbmQgb3B0aW9ucy5cbiAgICovXG4gIGFzeW5jIGV4ZWN1dGUoXG4gICAgd29ya2Zsb3c6IEdyYXBoV29ya2Zsb3dEZWZpbml0aW9uLFxuICAgIGlucHV0czogR3JhcGhFeGVjdXRpb25WYWx1ZXMgPSB7fSxcbiAgICBvcHRpb25zOiBHcmFwaEV4ZWN1dGlvbk9wdGlvbnMgPSB7fVxuICApOiBQcm9taXNlPEdyYXBoRXhlY3V0aW9uUmVzdWx0PiB7XG4gICAgY29uc3Qgb3B0cyA9IHRoaXMubWVyZ2VPcHRpb25zKG9wdGlvbnMpO1xuICAgIGNvbnN0IHJ1bklkID0gb3B0cy5ydW5JZCA/PyB0aGlzLmdlbmVyYXRlUnVuSWQoKTtcbiAgICBjb25zdCBwYXRoID0gb3B0cy5wYXRoID8/IFtdO1xuICAgIGNvbnN0IGV2ZW50RmFjdG9yeSA9IG5ldyBHcmFwaEV4ZWN1dGlvbkV2ZW50RmFjdG9yeSgpO1xuICAgIGNvbnN0IHZhbHVlU3RvcmUgPSBuZXcgR3JhcGhWYWx1ZVN0b3JlKHRoaXMudmFsdWVTdG9yZUFkYXB0ZXIpO1xuICAgIHZhbHVlU3RvcmUuc2VlZFdvcmtmbG93SW5wdXRzKGlucHV0cyk7XG5cbiAgICBjb25zdCBwbGFuID0gdGhpcy5wbGFubmVyLnBsYW4od29ya2Zsb3cpO1xuICAgIGNvbnN0IGZyYW1lID0gbmV3IEdyYXBoRXhlY3V0aW9uRnJhbWUoXG4gICAgICBydW5JZCxcbiAgICAgIHBsYW4sXG4gICAgICB2YWx1ZVN0b3JlLFxuICAgICAgZXZlbnRGYWN0b3J5XG4gICAgKTtcblxuICAgIGNvbnN0IGVtaXRGbiA9IGFzeW5jIChwYXJ0aWFsOiBQYXJ0aWFsPEdyYXBoRXhlY3V0aW9uRXZlbnQ+KSA9PiB7XG4gICAgICBhd2FpdCB0aGlzLmVtaXRFdmVudChmcmFtZSwge1xuICAgICAgICB0eXBlOiBwYXJ0aWFsLnR5cGUgPz8gR3JhcGhFeGVjdXRpb25FdmVudFR5cGUuTk9ERV9PVVRQVVQsXG4gICAgICAgIHJ1bklkLFxuICAgICAgICBwYXJlbnRSdW5JZDogb3B0cy5wYXJlbnRSdW5JZCxcbiAgICAgICAgd29ya2Zsb3dJZDogd29ya2Zsb3cubmFtZSxcbiAgICAgICAgbm9kZUlkOiBwYXJ0aWFsLm5vZGVJZCxcbiAgICAgICAgcGF0aDogcGFydGlhbC5wYXRoID8/IHBhdGgsXG4gICAgICAgIC4uLnBhcnRpYWwsXG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgYXdhaXQgdGhpcy5lbWl0RXZlbnQoZnJhbWUsIHtcbiAgICAgIHR5cGU6IEdyYXBoRXhlY3V0aW9uRXZlbnRUeXBlLldPUktGTE9XX1NUQVJURUQsXG4gICAgICBydW5JZCxcbiAgICAgIHBhcmVudFJ1bklkOiBvcHRzLnBhcmVudFJ1bklkLFxuICAgICAgd29ya2Zsb3dJZDogd29ya2Zsb3cubmFtZSxcbiAgICAgIHBhdGgsXG4gICAgICBzdGF0dXM6IEdyYXBoRXhlY3V0aW9uU3RhdHVzLlJVTk5JTkcsXG4gICAgICBwYXlsb2FkOiB7IGlucHV0cyB9LFxuICAgIH0pO1xuXG4gICAgYXdhaXQgdGhpcy5lbWl0RXZlbnQoZnJhbWUsIHtcbiAgICAgIHR5cGU6IEdyYXBoRXhlY3V0aW9uRXZlbnRUeXBlLldPUktGTE9XX1BMQU5ORUQsXG4gICAgICBydW5JZCxcbiAgICAgIHBhcmVudFJ1bklkOiBvcHRzLnBhcmVudFJ1bklkLFxuICAgICAgd29ya2Zsb3dJZDogd29ya2Zsb3cubmFtZSxcbiAgICAgIHBhdGgsXG4gICAgICBzdGF0dXM6IEdyYXBoRXhlY3V0aW9uU3RhdHVzLlBMQU5OSU5HLFxuICAgICAgcGF5bG9hZDogeyBsYXllcnM6IHBsYW4ubGF5ZXJzLmxlbmd0aCwgbm9kZXM6IHBsYW4ubm9kZXMubGVuZ3RoIH0sXG4gICAgfSk7XG5cbiAgICB0cnkge1xuICAgICAgZm9yIChjb25zdCBsYXllciBvZiBwbGFuLmxheWVycykge1xuICAgICAgICBhd2FpdCB0aGlzLmV4ZWN1dGVMYXllcihmcmFtZSwgcGxhbiwgbGF5ZXIubm9kZXMsIG9wdHMsIGVtaXRGbik7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGZpcnN0RmFpbHVyZSA9IFsuLi5mcmFtZS5ub2RlUmVzdWx0cy52YWx1ZXMoKV0uZmluZChcbiAgICAgICAgKHJlc3VsdCkgPT4gcmVzdWx0LnN0YXR1cyA9PT0gR3JhcGhFeGVjdXRpb25TdGF0dXMuRkFJTEVEXG4gICAgICApO1xuICAgICAgaWYgKGZpcnN0RmFpbHVyZT8uZXJyb3IpIHtcbiAgICAgICAgdGhyb3cgbmV3IEdyYXBoRXhlY3V0aW9uRXJyb3IoXG4gICAgICAgICAgZmlyc3RGYWlsdXJlLmVycm9yLm1lc3NhZ2UsXG4gICAgICAgICAgZmlyc3RGYWlsdXJlLmVycm9yLmNvZGUgPz8gXCJHUkFQSF9FWEVDVVRJT05fRVJST1JcIixcbiAgICAgICAgICBmaXJzdEZhaWx1cmUuZXJyb3IuZGV0YWlsc1xuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBmcmFtZS5maW5pc2goKTtcblxuICAgICAgYXdhaXQgdGhpcy5lbWl0RXZlbnQoZnJhbWUsIHtcbiAgICAgICAgdHlwZTogR3JhcGhFeGVjdXRpb25FdmVudFR5cGUuV09SS0ZMT1dfQ09NUExFVEVELFxuICAgICAgICBydW5JZCxcbiAgICAgICAgcGFyZW50UnVuSWQ6IG9wdHMucGFyZW50UnVuSWQsXG4gICAgICAgIHdvcmtmbG93SWQ6IHdvcmtmbG93Lm5hbWUsXG4gICAgICAgIHBhdGgsXG4gICAgICAgIHN0YXR1czogR3JhcGhFeGVjdXRpb25TdGF0dXMuU1VDQ0VFREVELFxuICAgICAgICBwYXlsb2FkOiB7IG91dHB1dHM6IHZhbHVlU3RvcmUuZ2V0V29ya2Zsb3dWYWx1ZXMoKSB9LFxuICAgICAgfSk7XG5cbiAgICAgIHJldHVybiBidWlsZEdyYXBoRXhlY3V0aW9uUmVzdWx0KFxuICAgICAgICBmcmFtZSxcbiAgICAgICAgd29ya2Zsb3csXG4gICAgICAgIGlucHV0cyxcbiAgICAgICAgR3JhcGhFeGVjdXRpb25TdGF0dXMuU1VDQ0VFREVELFxuICAgICAgICBvcHRzLm1ldGFkYXRhXG4gICAgICApO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBmcmFtZS5maW5pc2goKTtcbiAgICAgIGNvbnN0IGVycm9yUGF5bG9hZCA9IHRoaXMudG9FcnJvclBheWxvYWQoZXJyb3IpO1xuXG4gICAgICBhd2FpdCB0aGlzLmVtaXRFdmVudChmcmFtZSwge1xuICAgICAgICB0eXBlOiBHcmFwaEV4ZWN1dGlvbkV2ZW50VHlwZS5XT1JLRkxPV19GQUlMRUQsXG4gICAgICAgIHJ1bklkLFxuICAgICAgICBwYXJlbnRSdW5JZDogb3B0cy5wYXJlbnRSdW5JZCxcbiAgICAgICAgd29ya2Zsb3dJZDogd29ya2Zsb3cubmFtZSxcbiAgICAgICAgcGF0aCxcbiAgICAgICAgc3RhdHVzOiBHcmFwaEV4ZWN1dGlvblN0YXR1cy5GQUlMRUQsXG4gICAgICAgIGVycm9yOiBlcnJvclBheWxvYWQsXG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuIGJ1aWxkR3JhcGhFeGVjdXRpb25SZXN1bHQoXG4gICAgICAgIGZyYW1lLFxuICAgICAgICB3b3JrZmxvdyxcbiAgICAgICAgaW5wdXRzLFxuICAgICAgICBHcmFwaEV4ZWN1dGlvblN0YXR1cy5GQUlMRUQsXG4gICAgICAgIG9wdHMubWV0YWRhdGFcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFBpbnMgYSBub2RlIGFuZCBpdHMgdXBzdHJlYW0gZGVwZW5kZW5jaWVzIGFmdGVyIGEgY29tcGxldGVkIHJ1bi5cbiAgICpcbiAgICogRGVsZWdhdGVzIHRvIHtAbGluayBHcmFwaFBpbm5pbmdTZXJ2aWNlfS4gVGhlIHBsYW4gYW5kIHJlc3VsdCBtdXN0IGNvbWVcbiAgICogZnJvbSBhIHByaW9yIHN1Y2Nlc3NmdWwgZXhlY3V0aW9uIG9mIHRoZSBzYW1lIHdvcmtmbG93LlxuICAgKi9cbiAgYXN5bmMgcGluTm9kZShvcHRpb25zOiBHcmFwaFBpbk5vZGVPcHRpb25zKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3Qgc2VydmljZSA9IHRoaXMuY3JlYXRlUGlubmluZ1NlcnZpY2UoKTtcbiAgICBhd2FpdCBzZXJ2aWNlLnBpbk5vZGUob3B0aW9ucyk7XG4gICAgYXdhaXQgdGhpcy5lbWl0UGlubmluZ0V2ZW50KG9wdGlvbnMubm9kZUlkLCBHcmFwaEV4ZWN1dGlvbkV2ZW50VHlwZS5OT0RFX1BJTk5FRCk7XG4gIH1cblxuICAvKipcbiAgICogVW5waW5zIGEgbm9kZSBieSBpdHMgZmluZ2VycHJpbnQuXG4gICAqL1xuICBhc3luYyB1bnBpbk5vZGUob3B0aW9uczogR3JhcGhVbnBpbk5vZGVPcHRpb25zKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3Qgc2VydmljZSA9IHRoaXMuY3JlYXRlUGlubmluZ1NlcnZpY2UoKTtcbiAgICBhd2FpdCBzZXJ2aWNlLnVucGluTm9kZShvcHRpb25zKTtcbiAgICBhd2FpdCB0aGlzLmVtaXRQaW5uaW5nRXZlbnQob3B0aW9ucy5ub2RlSWQsIEdyYXBoRXhlY3V0aW9uRXZlbnRUeXBlLk5PREVfVU5QSU5ORUQpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSB7QGxpbmsgR3JhcGhQaW5uaW5nU2VydmljZX0gYmFja2VkIGJ5IHRoaXMgZW5naW5lJ3MgdmFsdWUgc3RvcmVcbiAgICogYWRhcHRlci5cbiAgICovXG4gIHByaXZhdGUgY3JlYXRlUGlubmluZ1NlcnZpY2UoKTogR3JhcGhQaW5uaW5nU2VydmljZSB7XG4gICAgY29uc3Qgc3RvcmUgPSBuZXcgR3JhcGhWYWx1ZVN0b3JlKHRoaXMudmFsdWVTdG9yZUFkYXB0ZXIpO1xuICAgIHJldHVybiBuZXcgR3JhcGhQaW5uaW5nU2VydmljZShcbiAgICAgIHN0b3JlLFxuICAgICAgbmV3IEdyYXBoUGlubmluZ1BvbGljeSgpLFxuICAgICAgbmV3IEdyYXBoUGlubmluZ0RlcGVuZGVuY3lSZXNvbHZlcigpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbWl0cyBhIHBpbm5pbmctcmVsYXRlZCBldmVudCB0byBhbGwgb2JzZXJ2ZXJzLlxuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBlbWl0UGlubmluZ0V2ZW50KFxuICAgIG5vZGVJZDogc3RyaW5nLFxuICAgIHR5cGU6IEdyYXBoRXhlY3V0aW9uRXZlbnRUeXBlXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGZhY3RvcnkgPSBuZXcgR3JhcGhFeGVjdXRpb25FdmVudEZhY3RvcnkoKTtcbiAgICBjb25zdCBldmVudCA9IGZhY3RvcnkuY3JlYXRlKHtcbiAgICAgIGlkOiBcIlwiLFxuICAgICAgc2VxdWVuY2U6IDAsXG4gICAgICB0aW1lc3RhbXA6IG5ldyBEYXRlKCksXG4gICAgICBydW5JZDogXCJwaW5uaW5nXCIsXG4gICAgICB3b3JrZmxvd0lkOiBcIlwiLFxuICAgICAgdHlwZSxcbiAgICAgIG5vZGVJZCxcbiAgICAgIHBhdGg6IFtdLFxuICAgIH0gYXMgT21pdDxHcmFwaEV4ZWN1dGlvbkV2ZW50LCBcImlkXCIgfCBcInNlcXVlbmNlXCIgfCBcInRpbWVzdGFtcFwiPik7XG4gICAgYXdhaXQgdGhpcy5lbWl0dGVyLnVwZGF0ZU9ic2VydmVycyhldmVudCk7XG4gIH1cblxuICAvKipcbiAgICogRXhlY3V0ZXMgYSBsYXllciBvZiBub2RlcyB3aXRoIHRoZSBjb25maWd1cmVkIGNvbmN1cnJlbmN5LlxuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBleGVjdXRlTGF5ZXIoXG4gICAgZnJhbWU6IEdyYXBoRXhlY3V0aW9uRnJhbWUsXG4gICAgcGxhbjogR3JhcGhFeGVjdXRpb25QbGFuLFxuICAgIG5vZGVzOiBHcmFwaEV4ZWN1dGlvblBsYW5Ob2RlW10sXG4gICAgb3B0czogR3JhcGhFeGVjdXRpb25PcHRpb25zLFxuICAgIGVtaXRGbjogKGV2ZW50OiBQYXJ0aWFsPEdyYXBoRXhlY3V0aW9uRXZlbnQ+KSA9PiBQcm9taXNlPHZvaWQ+XG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGNvbmN1cnJlbmN5ID0gTWF0aC5tYXgoXG4gICAgICAxLFxuICAgICAgb3B0cy5jb25jdXJyZW5jeSA/PyBHUkFQSF9ERUZBVUxUX0NPTkNVUlJFTkNZXG4gICAgKTtcbiAgICBjb25zdCBxdWV1ZSA9IFsuLi5ub2Rlc107XG5cbiAgICB3aGlsZSAocXVldWUubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgYmF0Y2ggPSBxdWV1ZS5zcGxpY2UoMCwgY29uY3VycmVuY3kpO1xuICAgICAgYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgICAgIGJhdGNoLm1hcCgobm9kZSkgPT4gdGhpcy5leGVjdXRlTm9kZShmcmFtZSwgcGxhbiwgbm9kZSwgb3B0cywgZW1pdEZuKSlcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEV4ZWN1dGVzIGEgc2luZ2xlIG5vZGUuXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIGV4ZWN1dGVOb2RlKFxuICAgIGZyYW1lOiBHcmFwaEV4ZWN1dGlvbkZyYW1lLFxuICAgIHBsYW46IEdyYXBoRXhlY3V0aW9uUGxhbixcbiAgICBwbGFuTm9kZTogR3JhcGhFeGVjdXRpb25QbGFuTm9kZSxcbiAgICBvcHRzOiBHcmFwaEV4ZWN1dGlvbk9wdGlvbnMsXG4gICAgZW1pdEZuOiAoZXZlbnQ6IFBhcnRpYWw8R3JhcGhFeGVjdXRpb25FdmVudD4pID0+IFByb21pc2U8dm9pZD5cbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3Qgc3RhcnRlZEF0ID0gbmV3IERhdGUoKTtcbiAgICBjb25zdCBub2RlUGF0aCA9IFsuLi4ob3B0cy5wYXRoID8/IFtdKSwgcGxhbk5vZGUuaWRdO1xuXG4gICAgYXdhaXQgdGhpcy5lbWl0RXZlbnQoZnJhbWUsIHtcbiAgICAgIHR5cGU6IEdyYXBoRXhlY3V0aW9uRXZlbnRUeXBlLk5PREVfU1RBUlRFRCxcbiAgICAgIHJ1bklkOiBmcmFtZS5ydW5JZCxcbiAgICAgIHdvcmtmbG93SWQ6IHBsYW4ud29ya2Zsb3dJZCxcbiAgICAgIG5vZGVJZDogcGxhbk5vZGUuaWQsXG4gICAgICBwYXRoOiBub2RlUGF0aCxcbiAgICAgIHN0YXR1czogR3JhcGhFeGVjdXRpb25TdGF0dXMuUlVOTklORyxcbiAgICB9KTtcblxuICAgIGNvbnN0IGlucHV0cyA9IHRoaXMucmVzb2x2ZU5vZGVJbnB1dHMoZnJhbWUsIHBsYW4sIHBsYW5Ob2RlKTtcblxuICAgIC8vIENhY2hlLWhpdDogY2hlY2sgZm9yIGEgcGlubmVkIHZhbHVlIGJlZm9yZSBleGVjdXRpbmcgdGhlIG5vZGVcbiAgICBpZiAob3B0cy51c2VQaW5uZWRWYWx1ZXMpIHtcbiAgICAgIGNvbnN0IGNhY2hlZCA9IGF3YWl0IHRoaXMudHJ5UGlubmVkVmFsdWUoZnJhbWUsIHBsYW4sIHBsYW5Ob2RlLCBpbnB1dHMpO1xuICAgICAgaWYgKGNhY2hlZCkge1xuICAgICAgICBmcmFtZS52YWx1ZVN0b3JlLnNldE5vZGVPdXRwdXRzKHBsYW5Ob2RlLmlkLCBjYWNoZWQub3V0cHV0cyk7XG4gICAgICAgIHRoaXMucm91dGVPdXRnb2luZ0VkZ2VzKGZyYW1lLCBwbGFuLCBwbGFuTm9kZSwgY2FjaGVkLm91dHB1dHMpO1xuXG4gICAgICAgIGNvbnN0IGZpbmlzaGVkQXQgPSBuZXcgRGF0ZSgpO1xuICAgICAgICBjb25zdCByZXN1bHQ6IEdyYXBoTm9kZUV4ZWN1dGlvblJlc3VsdCA9IHtcbiAgICAgICAgICBub2RlSWQ6IHBsYW5Ob2RlLmlkLFxuICAgICAgICAgIHN0YXR1czogR3JhcGhFeGVjdXRpb25TdGF0dXMuQ0FDSEVELFxuICAgICAgICAgIGlucHV0cyxcbiAgICAgICAgICBvdXRwdXRzOiBjYWNoZWQub3V0cHV0cyxcbiAgICAgICAgICBzdGFydGVkQXQsXG4gICAgICAgICAgZmluaXNoZWRBdCxcbiAgICAgICAgICBmcm9tQ2FjaGU6IHRydWUsXG4gICAgICAgICAgcGlubmVkOiB0cnVlLFxuICAgICAgICAgIGV2ZW50czogW10sXG4gICAgICAgIH07XG4gICAgICAgIGZyYW1lLnJlY29yZE5vZGVSZXN1bHQocmVzdWx0KTtcblxuICAgICAgICBhd2FpdCB0aGlzLmVtaXRFdmVudChmcmFtZSwge1xuICAgICAgICAgIHR5cGU6IEdyYXBoRXhlY3V0aW9uRXZlbnRUeXBlLk5PREVfQ0FDSEVfSElULFxuICAgICAgICAgIHJ1bklkOiBmcmFtZS5ydW5JZCxcbiAgICAgICAgICB3b3JrZmxvd0lkOiBwbGFuLndvcmtmbG93SWQsXG4gICAgICAgICAgbm9kZUlkOiBwbGFuTm9kZS5pZCxcbiAgICAgICAgICBwYXRoOiBub2RlUGF0aCxcbiAgICAgICAgICBzdGF0dXM6IEdyYXBoRXhlY3V0aW9uU3RhdHVzLkNBQ0hFRCxcbiAgICAgICAgICBwYXlsb2FkOiB7IG91dHB1dHM6IGNhY2hlZC5vdXRwdXRzIH0sXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGF3YWl0IHRoaXMuZW1pdEV2ZW50KGZyYW1lLCB7XG4gICAgICAgICAgdHlwZTogR3JhcGhFeGVjdXRpb25FdmVudFR5cGUuTk9ERV9DT01QTEVURUQsXG4gICAgICAgICAgcnVuSWQ6IGZyYW1lLnJ1bklkLFxuICAgICAgICAgIHdvcmtmbG93SWQ6IHBsYW4ud29ya2Zsb3dJZCxcbiAgICAgICAgICBub2RlSWQ6IHBsYW5Ob2RlLmlkLFxuICAgICAgICAgIHBhdGg6IG5vZGVQYXRoLFxuICAgICAgICAgIHN0YXR1czogR3JhcGhFeGVjdXRpb25TdGF0dXMuU1VDQ0VFREVELFxuICAgICAgICAgIHBheWxvYWQ6IHsgb3V0cHV0czogY2FjaGVkLm91dHB1dHMsIGZyb21DYWNoZTogdHJ1ZSB9LFxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICBjb25zdCBleGVjdXRvciA9IHRoaXMuY29uZmlnLnJlZ2lzdHJ5LnJlc29sdmUocGxhbk5vZGUua2luZCk7XG4gICAgICBjb25zdCBjb250ZXh0ID0gbmV3IEdyYXBoRXhlY3V0aW9uQ29udGV4dChcbiAgICAgICAgZnJhbWUucnVuSWQsXG4gICAgICAgIG9wdHMucGFyZW50UnVuSWQsXG4gICAgICAgIHBsYW4ud29ya2Zsb3csXG4gICAgICAgIHBsYW5Ob2RlLmRlZmluaXRpb24sXG4gICAgICAgIG5vZGVQYXRoLFxuICAgICAgICBlbWl0Rm4sXG4gICAgICAgIG9wdHMubWV0YWRhdGFcbiAgICAgICk7XG5cbiAgICAgIGNvbnN0IG91dHB1dHMgPSBhd2FpdCBleGVjdXRvci5leGVjdXRlKGlucHV0cywgY29udGV4dCk7XG4gICAgICBjb25zdCByZXNvbHZlZE91dHB1dHMgPSBvdXRwdXRzID8/IHt9O1xuXG4gICAgICBmcmFtZS52YWx1ZVN0b3JlLnNldE5vZGVPdXRwdXRzKHBsYW5Ob2RlLmlkLCByZXNvbHZlZE91dHB1dHMpO1xuICAgICAgdGhpcy5yb3V0ZU91dGdvaW5nRWRnZXMoZnJhbWUsIHBsYW4sIHBsYW5Ob2RlLCByZXNvbHZlZE91dHB1dHMpO1xuXG4gICAgICBjb25zdCBmaW5pc2hlZEF0ID0gbmV3IERhdGUoKTtcbiAgICAgIGNvbnN0IHJlc3VsdDogR3JhcGhOb2RlRXhlY3V0aW9uUmVzdWx0ID0ge1xuICAgICAgICBub2RlSWQ6IHBsYW5Ob2RlLmlkLFxuICAgICAgICBzdGF0dXM6IEdyYXBoRXhlY3V0aW9uU3RhdHVzLlNVQ0NFRURFRCxcbiAgICAgICAgaW5wdXRzLFxuICAgICAgICBvdXRwdXRzOiByZXNvbHZlZE91dHB1dHMsXG4gICAgICAgIHN0YXJ0ZWRBdCxcbiAgICAgICAgZmluaXNoZWRBdCxcbiAgICAgICAgZXZlbnRzOiBbXSxcbiAgICAgIH07XG4gICAgICBmcmFtZS5yZWNvcmROb2RlUmVzdWx0KHJlc3VsdCk7XG5cbiAgICAgIGF3YWl0IHRoaXMuZW1pdEV2ZW50KGZyYW1lLCB7XG4gICAgICAgIHR5cGU6IEdyYXBoRXhlY3V0aW9uRXZlbnRUeXBlLk5PREVfQ09NUExFVEVELFxuICAgICAgICBydW5JZDogZnJhbWUucnVuSWQsXG4gICAgICAgIHdvcmtmbG93SWQ6IHBsYW4ud29ya2Zsb3dJZCxcbiAgICAgICAgbm9kZUlkOiBwbGFuTm9kZS5pZCxcbiAgICAgICAgcGF0aDogbm9kZVBhdGgsXG4gICAgICAgIHN0YXR1czogR3JhcGhFeGVjdXRpb25TdGF0dXMuU1VDQ0VFREVELFxuICAgICAgICBwYXlsb2FkOiB7IG91dHB1dHM6IHJlc29sdmVkT3V0cHV0cyB9LFxuICAgICAgfSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnN0IGZpbmlzaGVkQXQgPSBuZXcgRGF0ZSgpO1xuICAgICAgY29uc3QgZXJyb3JQYXlsb2FkID0gdGhpcy50b0Vycm9yUGF5bG9hZChlcnJvcik7XG4gICAgICBjb25zdCByZXN1bHQ6IEdyYXBoTm9kZUV4ZWN1dGlvblJlc3VsdCA9IHtcbiAgICAgICAgbm9kZUlkOiBwbGFuTm9kZS5pZCxcbiAgICAgICAgc3RhdHVzOiBHcmFwaEV4ZWN1dGlvblN0YXR1cy5GQUlMRUQsXG4gICAgICAgIGlucHV0cyxcbiAgICAgICAgZXJyb3I6IGVycm9yUGF5bG9hZCxcbiAgICAgICAgc3RhcnRlZEF0LFxuICAgICAgICBmaW5pc2hlZEF0LFxuICAgICAgICBldmVudHM6IFtdLFxuICAgICAgfTtcbiAgICAgIGZyYW1lLnJlY29yZE5vZGVSZXN1bHQocmVzdWx0KTtcblxuICAgICAgYXdhaXQgdGhpcy5lbWl0RXZlbnQoZnJhbWUsIHtcbiAgICAgICAgdHlwZTogR3JhcGhFeGVjdXRpb25FdmVudFR5cGUuTk9ERV9GQUlMRUQsXG4gICAgICAgIHJ1bklkOiBmcmFtZS5ydW5JZCxcbiAgICAgICAgd29ya2Zsb3dJZDogcGxhbi53b3JrZmxvd0lkLFxuICAgICAgICBub2RlSWQ6IHBsYW5Ob2RlLmlkLFxuICAgICAgICBwYXRoOiBub2RlUGF0aCxcbiAgICAgICAgc3RhdHVzOiBHcmFwaEV4ZWN1dGlvblN0YXR1cy5GQUlMRUQsXG4gICAgICAgIGVycm9yOiBlcnJvclBheWxvYWQsXG4gICAgICB9KTtcblxuICAgICAgaWYgKG9wdHMuZmFpbEZhc3QgPz8gdHJ1ZSkgdGhyb3cgZXJyb3I7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJlc29sdmVzIGEgbm9kZSdzIGlucHV0IHZhbHVlcyBmcm9tIGluY29taW5nIGVkZ2VzLlxuICAgKlxuICAgKiBXaGVuIG11bHRpcGxlIGVkZ2VzIHRhcmdldCB0aGUgc2FtZSBwb3J0LCB0aGVpciB2YWx1ZXMgYXJlIHNwcmVhZCBpbnRvIHRoZVxuICAgKiB0b3AtbGV2ZWwgaW5wdXRzIGtleWVkIGJ5IGVhY2ggZWRnZSdzIGBzb3VyY2VQb3J0YC4gVGhpcyBhbGxvd3MgbXVsdGlwbGVcbiAgICogd29ya2Zsb3cgaW5wdXQgYmFkZ2VzIHRvIGNvbm5lY3QgdG8gYSBzaW5nbGUgcG9ydCAoZS5nLiB0aGUgQ29kZSBub2RlJ3NcbiAgICogYGRhdGFgIHBvcnQpIGFuZCBoYXZlIGFsbCB2YWx1ZXMgYWNjZXNzaWJsZSBkaXJlY3RseSBhc1xuICAgKiBgJGlucHV0Lntzb3VyY2VQb3J0fWAgKGUuZy4gYCRpbnB1dC5jb3VudGAsIGAkaW5wdXQudGV4dGApLlxuICAgKi9cbiAgcHJpdmF0ZSByZXNvbHZlTm9kZUlucHV0cyhcbiAgICBmcmFtZTogR3JhcGhFeGVjdXRpb25GcmFtZSxcbiAgICBwbGFuOiBHcmFwaEV4ZWN1dGlvblBsYW4sXG4gICAgcGxhbk5vZGU6IEdyYXBoRXhlY3V0aW9uUGxhbk5vZGVcbiAgKTogR3JhcGhFeGVjdXRpb25WYWx1ZXMge1xuICAgIGNvbnN0IGlucHV0czogR3JhcGhFeGVjdXRpb25WYWx1ZXMgPSB7fTtcbiAgICBjb25zdCBpbmNvbWluZyA9IHBsYW4uaW5jb21pbmdCeU5vZGUuZ2V0KHBsYW5Ob2RlLmlkKSA/PyBbXTtcblxuICAgIGNvbnN0IGVkZ2VzQnlUYXJnZXQgPSBuZXcgTWFwPHN0cmluZywgdHlwZW9mIGluY29taW5nPigpO1xuICAgIGZvciAoY29uc3QgZWRnZSBvZiBpbmNvbWluZykge1xuICAgICAgY29uc3QgbGlzdCA9IGVkZ2VzQnlUYXJnZXQuZ2V0KGVkZ2UudGFyZ2V0UG9ydCkgPz8gW107XG4gICAgICBsaXN0LnB1c2goZWRnZSk7XG4gICAgICBlZGdlc0J5VGFyZ2V0LnNldChlZGdlLnRhcmdldFBvcnQsIGxpc3QpO1xuICAgIH1cblxuICAgIGZvciAoY29uc3QgW3RhcmdldFBvcnQsIGVkZ2VzXSBvZiBlZGdlc0J5VGFyZ2V0KSB7XG4gICAgICBpZiAoZWRnZXMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgIGlucHV0c1t0YXJnZXRQb3J0XSA9IGZyYW1lLnZhbHVlU3RvcmUuZ2V0UG9ydChcbiAgICAgICAgICBlZGdlc1swXS5zb3VyY2VOb2RlSWQsXG4gICAgICAgICAgZWRnZXNbMF0uc291cmNlUG9ydFxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZm9yIChjb25zdCBlZGdlIG9mIGVkZ2VzKSB7XG4gICAgICAgICAgaW5wdXRzW2VkZ2Uuc291cmNlUG9ydF0gPSBmcmFtZS52YWx1ZVN0b3JlLmdldFBvcnQoXG4gICAgICAgICAgICBlZGdlLnNvdXJjZU5vZGVJZCxcbiAgICAgICAgICAgIGVkZ2Uuc291cmNlUG9ydFxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gaW5wdXRzO1xuICB9XG5cbiAgLyoqXG4gICAqIEF0dGVtcHRzIHRvIHJlYWQgYSBwaW5uZWQgdmFsdWUgZm9yIHRoZSBub2RlLiBSZXR1cm5zIHRoZSBjYWNoZWQgb3V0cHV0c1xuICAgKiB3aGVuIGEgdmFsaWQgcGlubmVkIHZhbHVlIGV4aXN0cywgb3IgYHVuZGVmaW5lZGAgdG8gcHJvY2VlZCB3aXRoIG5vcm1hbFxuICAgKiBleGVjdXRpb24uXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIHRyeVBpbm5lZFZhbHVlKFxuICAgIGZyYW1lOiBHcmFwaEV4ZWN1dGlvbkZyYW1lLFxuICAgIHBsYW46IEdyYXBoRXhlY3V0aW9uUGxhbixcbiAgICBwbGFuTm9kZTogR3JhcGhFeGVjdXRpb25QbGFuTm9kZSxcbiAgICBpbnB1dHM6IEdyYXBoRXhlY3V0aW9uVmFsdWVzXG4gICk6IFByb21pc2U8R3JhcGhDYWNoZWRWYWx1ZSB8IHVuZGVmaW5lZD4ge1xuICAgIGNvbnN0IHBvbGljeSA9IG5ldyBHcmFwaFBpbm5pbmdQb2xpY3koKTtcbiAgICBpZiAoIXBvbGljeS5zaG91bGRVc2VQaW5uZWRWYWx1ZShwbGFuTm9kZSkpIHJldHVybiB1bmRlZmluZWQ7XG5cbiAgICBjb25zdCBzZXJ2aWNlID0gdGhpcy5jcmVhdGVQaW5uaW5nU2VydmljZSgpO1xuICAgIGNvbnN0IGRlcEZpbmdlcnByaW50cyA9IHRoaXMuY29tcHV0ZURlcGVuZGVuY3lGaW5nZXJwcmludHMoZnJhbWUsIHBsYW4sIHBsYW5Ob2RlLmlkKTtcbiAgICByZXR1cm4gc2VydmljZS5yZWFkUGlubmVkVmFsdWUoXG4gICAgICBwbGFuLndvcmtmbG93LFxuICAgICAgcGxhbk5vZGUsXG4gICAgICBpbnB1dHMsXG4gICAgICBkZXBGaW5nZXJwcmludHNcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlY3Vyc2l2ZWx5IGNvbXB1dGVzIGZpbmdlcnByaW50cyBmb3IgYWxsIHVwc3RyZWFtIGRlcGVuZGVuY2llcyBvZiBhIG5vZGVcbiAgICogdXNpbmcgdGhlIHJlc3VsdHMgYWxyZWFkeSBhY2N1bXVsYXRlZCBpbiB0aGUgZnJhbWUuXG4gICAqL1xuICBwcml2YXRlIGNvbXB1dGVEZXBlbmRlbmN5RmluZ2VycHJpbnRzKFxuICAgIGZyYW1lOiBHcmFwaEV4ZWN1dGlvbkZyYW1lLFxuICAgIHBsYW46IEdyYXBoRXhlY3V0aW9uUGxhbixcbiAgICBub2RlSWQ6IHN0cmluZ1xuICApOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+IHtcbiAgICBjb25zdCBzZXJ2aWNlID0gdGhpcy5jcmVhdGVQaW5uaW5nU2VydmljZSgpO1xuICAgIGNvbnN0IGRlcFJlc29sdmVyID0gbmV3IEdyYXBoUGlubmluZ0RlcGVuZGVuY3lSZXNvbHZlcigpO1xuICAgIGNvbnN0IGRlcHMgPSBkZXBSZXNvbHZlci5nZXREZXBlbmRlbmNpZXMocGxhbiwgbm9kZUlkKTtcbiAgICBjb25zdCBmaW5nZXJwcmludHM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcbiAgICBmb3IgKGNvbnN0IGRlcCBvZiBkZXBzKSB7XG4gICAgICBjb25zdCBub2RlID0gcGxhbi5ub2Rlcy5maW5kKChuKSA9PiBuLmlkID09PSBkZXApO1xuICAgICAgaWYgKG5vZGUpIHtcbiAgICAgICAgY29uc3QgZGVwUmVzdWx0ID0gZnJhbWUubm9kZVJlc3VsdHMuZ2V0KGRlcCk7XG4gICAgICAgIGNvbnN0IGlucHV0cyA9IGRlcFJlc3VsdD8uaW5wdXRzID8/IHt9O1xuICAgICAgICBjb25zdCBuZXN0ZWREZXBzID0gdGhpcy5jb21wdXRlRGVwZW5kZW5jeUZpbmdlcnByaW50cyhmcmFtZSwgcGxhbiwgZGVwKTtcbiAgICAgICAgZmluZ2VycHJpbnRzW2RlcF0gPSBzZXJ2aWNlLmNvbXB1dGVGaW5nZXJwcmludChcbiAgICAgICAgICBwbGFuLndvcmtmbG93LFxuICAgICAgICAgIG5vZGUsXG4gICAgICAgICAgaW5wdXRzLFxuICAgICAgICAgIG5lc3RlZERlcHNcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGZpbmdlcnByaW50cztcbiAgfVxuXG4gIC8qKlxuICAgKiBSb3V0ZXMgYSBub2RlJ3Mgb3V0cHV0cyB0byBkb3duc3RyZWFtIGlucHV0cyBhbmQgd29ya2Zsb3cgb3V0cHV0cy5cbiAgICovXG4gIHByaXZhdGUgcm91dGVPdXRnb2luZ0VkZ2VzKFxuICAgIGZyYW1lOiBHcmFwaEV4ZWN1dGlvbkZyYW1lLFxuICAgIHBsYW46IEdyYXBoRXhlY3V0aW9uUGxhbixcbiAgICBwbGFuTm9kZTogR3JhcGhFeGVjdXRpb25QbGFuTm9kZSxcbiAgICBvdXRwdXRzOiBHcmFwaEV4ZWN1dGlvblZhbHVlc1xuICApOiB2b2lkIHtcbiAgICBjb25zdCBvdXRnb2luZyA9IHBsYW4ub3V0Z29pbmdCeU5vZGUuZ2V0KHBsYW5Ob2RlLmlkKSA/PyBbXTtcbiAgICBmb3IgKGNvbnN0IGVkZ2Ugb2Ygb3V0Z29pbmcpIHtcbiAgICAgIGNvbnN0IHZhbHVlID0gb3V0cHV0c1tlZGdlLnNvdXJjZVBvcnRdO1xuICAgICAgaWYgKGVkZ2UudGFyZ2V0Tm9kZUlkID09PSBHUkFQSF9XT1JLRkxPV19CT1VOREFSWSkge1xuICAgICAgICBmcmFtZS52YWx1ZVN0b3JlLnNldFdvcmtmbG93T3V0cHV0KGVkZ2UudGFyZ2V0UG9ydCwgdmFsdWUpO1xuICAgICAgfVxuICAgICAgdGhpcy5lbWl0RXZlbnQoZnJhbWUsIHtcbiAgICAgICAgdHlwZTogR3JhcGhFeGVjdXRpb25FdmVudFR5cGUuRURHRV9WQUxVRV9ST1VURUQsXG4gICAgICAgIHJ1bklkOiBmcmFtZS5ydW5JZCxcbiAgICAgICAgd29ya2Zsb3dJZDogcGxhbi53b3JrZmxvd0lkLFxuICAgICAgICBlZGdlSWQ6IGVkZ2UuaWQsXG4gICAgICAgIG5vZGVJZDogcGxhbk5vZGUuaWQsXG4gICAgICAgIHBhdGg6IFtdLFxuICAgICAgICBwYXlsb2FkOiB7IGVkZ2UsIHZhbHVlIH0sXG4gICAgICB9KS5jYXRjaCgoKSA9PiB7XG4gICAgICAgIC8vIG9ic2VydmVyIGZhaWx1cmVzIG11c3Qgbm90IGNyYXNoXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogRW1pdHMgYW4gZXZlbnQsIHJlY29yZHMgaXQgaW4gdGhlIGZyYW1lLCBhbmQgZGlzcGF0Y2hlcyB0byBvYnNlcnZlcnMuXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIGVtaXRFdmVudChcbiAgICBmcmFtZTogR3JhcGhFeGVjdXRpb25GcmFtZSxcbiAgICBwYXJ0aWFsOiBQYXJ0aWFsPEdyYXBoRXhlY3V0aW9uRXZlbnQ+ICYge1xuICAgICAgdHlwZTogR3JhcGhFeGVjdXRpb25FdmVudFR5cGU7XG4gICAgICBydW5JZDogR3JhcGhSdW5JZDtcbiAgICAgIHdvcmtmbG93SWQ6IHN0cmluZztcbiAgICAgIHBhdGg6IHN0cmluZ1tdO1xuICAgIH1cbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgZXZlbnQgPSBmcmFtZS5ldmVudEZhY3RvcnkuY3JlYXRlKHtcbiAgICAgIGlkOiBcIlwiLFxuICAgICAgc2VxdWVuY2U6IDAsXG4gICAgICB0aW1lc3RhbXA6IG5ldyBEYXRlKCksXG4gICAgICAuLi5wYXJ0aWFsLFxuICAgIH0gYXMgT21pdDxHcmFwaEV4ZWN1dGlvbkV2ZW50LCBcImlkXCIgfCBcInNlcXVlbmNlXCIgfCBcInRpbWVzdGFtcFwiPik7XG4gICAgZnJhbWUuYXBwZW5kRXZlbnQoZXZlbnQpO1xuICAgIGF3YWl0IHRoaXMuZW1pdHRlci51cGRhdGVPYnNlcnZlcnMoZXZlbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIE1lcmdlcyBkZWZhdWx0IG9wdGlvbnMgd2l0aCB0aGUgZ2l2ZW4gb3B0aW9ucy5cbiAgICovXG4gIHByaXZhdGUgbWVyZ2VPcHRpb25zKFxuICAgIG9wdGlvbnM6IEdyYXBoRXhlY3V0aW9uT3B0aW9uc1xuICApOiBHcmFwaEV4ZWN1dGlvbk9wdGlvbnMge1xuICAgIHJldHVybiB7XG4gICAgICBjb25jdXJyZW5jeTogR1JBUEhfREVGQVVMVF9DT05DVVJSRU5DWSxcbiAgICAgIGZhaWxGYXN0OiB0cnVlLFxuICAgICAgdmFsaWRhdGVJbnB1dHM6IHRydWUsXG4gICAgICB2YWxpZGF0ZU91dHB1dHM6IHRydWUsXG4gICAgICB1c2VQaW5uZWRWYWx1ZXM6IHRydWUsXG4gICAgICB3cml0ZVRocm91Z2hDYWNoZTogZmFsc2UsXG4gICAgICBwYXRoOiBbXSxcbiAgICAgIG1ldGFkYXRhOiB7fSxcbiAgICAgIC4uLnRoaXMuZGVmYXVsdE9wdGlvbnMsXG4gICAgICAuLi5vcHRpb25zLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogR2VuZXJhdGVzIGEgdW5pcXVlIHJ1biBpZC5cbiAgICovXG4gIHByaXZhdGUgZ2VuZXJhdGVSdW5JZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiAoXG4gICAgICBnbG9iYWxUaGlzLmNyeXB0bz8ucmFuZG9tVVVJRD8uKCkgPz9cbiAgICAgIGBncmFwaC1ydW4tJHtEYXRlLm5vdygpfS0ke01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnNsaWNlKDIpfWBcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIGFuIGVycm9yIGludG8gYSBzZXJpYWxpemVkIHBheWxvYWQuXG4gICAqL1xuICBwcml2YXRlIHRvRXJyb3JQYXlsb2FkKGVycm9yOiB1bmtub3duKTogR3JhcGhFeGVjdXRpb25FcnJvclBheWxvYWQge1xuICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBuYW1lOiBlcnJvci5uYW1lLFxuICAgICAgICBtZXNzYWdlOiBlcnJvci5tZXNzYWdlLFxuICAgICAgICBzdGFjazogZXJyb3Iuc3RhY2ssXG4gICAgICAgIGNvZGU6XG4gICAgICAgICAgKGVycm9yIGFzIGFueSkuZ3JhcGhDb2RlID8/XG4gICAgICAgICAgKHR5cGVvZiAoZXJyb3IgYXMgYW55KS5jb2RlID09PSBcIm51bWJlclwiXG4gICAgICAgICAgICA/IFN0cmluZygoZXJyb3IgYXMgYW55KS5jb2RlKVxuICAgICAgICAgICAgOiAoZXJyb3IgYXMgYW55KS5jb2RlKSxcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiB7IG5hbWU6IFwiVW5rbm93bkVycm9yXCIsIG1lc3NhZ2U6IFN0cmluZyhlcnJvcikgfTtcbiAgfVxufVxuIl19
|
|
427
|
+
//# sourceMappingURL=GraphExecutionEngine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GraphExecutionEngine.js","sourceRoot":"","sources":["../../../../../src/graph/engine/execution/GraphExecutionEngine.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,4 +24,4 @@ export class GraphExecutionFrame {
|
|
|
24
24
|
this.finishedAt = new Date();
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
|
-
//# sourceMappingURL=
|
|
27
|
+
//# sourceMappingURL=GraphExecutionFrame.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GraphExecutionFrame.js","sourceRoot":"","sources":["../../../../../src/graph/engine/execution/GraphExecutionFrame.ts"],"names":[],"mappings":"AAcA;;GAEG;AACH,MAAM,OAAO,mBAAmB;IAW9B,YACE,KAAiB,EACjB,IAAwB,EACxB,UAA2B,EAC3B,YAAwC;QATjC,gBAAW,GAA0C,IAAI,GAAG,EAAE,CAAC;QAC/D,WAAM,GAA0B,EAAE,CAAC;QAU1C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;IAC9B,CAAC;IAED,uCAAuC;IACvC,gBAAgB,CAAC,MAAgC;QAC/C,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,CAAC;IAED,+CAA+C;IAC/C,WAAW,CAAC,KAA0B;QACpC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;IAED,iCAAiC;IACjC,MAAM;QACJ,IAAI,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;IAC/B,CAAC;CACF"}
|
|
@@ -23,4 +23,4 @@ export function buildGraphExecutionResult(frame, workflow, inputs, status, metad
|
|
|
23
23
|
metadata,
|
|
24
24
|
};
|
|
25
25
|
}
|
|
26
|
-
//# sourceMappingURL=
|
|
26
|
+
//# sourceMappingURL=GraphExecutionResult.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GraphExecutionResult.js","sourceRoot":"","sources":["../../../../../src/graph/engine/execution/GraphExecutionResult.ts"],"names":[],"mappings":"AAUA;;GAEG;AACH,MAAM,UAAU,yBAAyB,CACvC,KAA0B,EAC1B,QAAiC,EACjC,MAA4B,EAC5B,MAA4B,EAC5B,QAAkC;IAElC,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC;IACrD,MAAM,WAAW,GAA6C,EAAE,CAAC;IACjE,KAAK,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QAC7C,WAAW,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC;IAC3B,CAAC;IACD,MAAM,MAAM,GAA0B,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IACxD,MAAM,KAAK,GAAe,KAAK,CAAC,KAAK,CAAC;IAEtC,OAAO;QACL,KAAK;QACL,UAAU,EAAE,QAAQ,CAAC,IAAI;QACzB,MAAM;QACN,QAAQ;QACR,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE;QACrB,OAAO;QACP,WAAW;QACX,MAAM;QACN,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,QAAQ;KACT,CAAC;AACJ,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=
|
|
2
|
+
//# sourceMappingURL=GraphNodeExecutor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GraphNodeExecutor.js","sourceRoot":"","sources":["../../../../../src/graph/engine/execution/GraphNodeExecutor.ts"],"names":[],"mappings":""}
|
|
@@ -437,4 +437,4 @@ export class IsolatedVmCodeSandboxEvaluator {
|
|
|
437
437
|
dispatch.release();
|
|
438
438
|
}
|
|
439
439
|
}
|
|
440
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSXNvbGF0ZWRWbUNvZGVTYW5kYm94RXZhbHVhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2dyYXBoL2VuZ2luZS9leGVjdXRpb24vSXNvbGF0ZWRWbUNvZGVTYW5kYm94RXZhbHVhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQ0c7QUFDSCxPQUFPLEdBQUcsTUFBTSxhQUFhLENBQUM7QUFDOUIsT0FBTyxLQUFLLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDL0IsT0FBTyxLQUFLLElBQUksTUFBTSxZQUFZLENBQUM7QUFDbkMsT0FBTyxLQUFLLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFNakMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLDJDQUFzQztBQUVwRTs7R0FFRztBQUNILE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxDQUFDO0FBRWhDOztHQUVHO0FBQ0gsTUFBTSxpQkFBaUIsR0FBRyxFQUFFLENBQUM7QUFFN0I7O0dBRUc7QUFDSCxNQUFNLGVBQWUsR0FBRyxPQUFPLENBQUM7QUFFaEM7Ozs7OztHQU1HO0FBQ0gsTUFBTSxtQkFBbUIsR0FBd0IsSUFBSSxHQUFHLENBQUM7SUFDdkQsU0FBUztJQUNULFNBQVM7SUFDVCxRQUFRO0lBQ1IsU0FBUztJQUNULFFBQVE7SUFDUixZQUFZO0lBQ1osVUFBVTtJQUNWLE1BQU07SUFDTixPQUFPO0lBQ1AsZ0JBQWdCO0lBQ2hCLFdBQVc7SUFDWCxRQUFRO0lBQ1IsTUFBTTtJQUNOLEtBQUs7SUFDTCxZQUFZO0NBQ2IsQ0FBQyxDQUFDO0FBRUg7Ozs7Ozs7Ozs7R0FVRztBQUNILFNBQVMsbUJBQW1CLENBQzFCLElBQVksRUFDWixRQUFxQztJQUVyQyxJQUFJLFFBQVEsS0FBSyxZQUFZO1FBQUUsT0FBTyxJQUFJLENBQUM7SUFFM0MsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDLGVBQWUsQ0FB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QUFJLENBQUMsQ0FBQztZQUMzQixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBRXZDLE9BQU8sQ0FBQyxRQUFRLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQW9DaEIsQ0FBQyxDQUFDO1FBRUgsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3JCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQG1vZHVsZSBpbnRlZ3JhdGlvbnMvZ3JhcGgvZXhlY3V0aW9uL0lzb2xhdGVkVm1Db2RlU2FuZGJveEV2YWx1YXRvclxuICogQHN1bW1hcnkge0BsaW5rIENvZGVTYW5kYm94RXZhbHVhdG9yfSBiYWNrZWQgYnkgYGlzb2xhdGVkLXZtYCAoQUxGUkVELTUgwqc3KS5cbiAqIEBkZXNjcmlwdGlvbiBQcm92aWRlcyBhIGZ1bGx5IGlzb2xhdGVkIFY4IHNhbmRib3ggZm9yIHRoZSBDb2RlIE5vZGVcbiAqIChERUNBRi0zMiDCpzIyLjQpIGFuZCBjb2RlLWJhc2VkIGNvbmRpdGlvbnMuIFVzZXMgYGlzb2xhdGVkLXZtYCBmb3IgdHJ1ZVxuICogaGVhcCBpc29sYXRpb24gKHVubGlrZSBOb2RlJ3MgYHZtYCBtb2R1bGUgd2hpY2ggc2hhcmVzIHRoZSBob3N0IGhlYXApLFxuICogYGFjb3JuYCArIGBhY29ybi13YWxrYCBmb3IgQVNULWJhc2VkIHN0YXRpYyB2YWxpZGF0aW9uLCBhbmQgYHR5cGVzY3JpcHRgXG4gKiBmb3IgVFMgdHJhbnNwaWxhdGlvbi5cbiAqXG4gKiBSZXN0cmljdGlvbnMgZW5mb3JjZWQgKEFMRlJFRC01IMKnNy4xMOKAkzcuMTIsIERFQ0FGLTM0IMKnNy41KTpcbiAqXG4gKiAtICoqTm8gaW1wb3J0cyoqIOKAlCBgaW1wb3J0YCBkZWNsYXJhdGlvbnMgYXJlIHJlamVjdGVkIGJ5IEFTVCB2YWxpZGF0aW9uLlxuICogLSAqKk5vIHJlcXVpcmVzKiog4oCUIGByZXF1aXJlYCBpcyBpbiB0aGUgYmxvY2tlZC1pZGVudGlmaWVyIHNldCBhbmQgaXMgbm90XG4gKiAgIGV4cG9zZWQgaW4gdGhlIHNhbmRib3ggY29udGV4dC5cbiAqIC0gKipObyBleHBvcnRzKiog4oCUIGBleHBvcnRgIGRlY2xhcmF0aW9ucyBhcmUgcmVqZWN0ZWQgYnkgQVNUIHZhbGlkYXRpb24uXG4gKiAtICoqUHVyZSBmdW5jdGlvbnMgb25seSoqIOKAlCBubyBzeXN0ZW0gQVBJIGFjY2Vzcy4gQmxvY2tlZCBpZGVudGlmaWVyc1xuICogICBpbmNsdWRlIGBwcm9jZXNzYCwgYGdsb2JhbGAsIGBnbG9iYWxUaGlzYCwgYEZ1bmN0aW9uYCwgYGV2YWxgLCBgZmV0Y2hgLFxuICogICBgWE1MSHR0cFJlcXVlc3RgLCBgV2ViU29ja2V0YCwgYFdvcmtlcmAsIGBEZW5vYCwgYEJ1bmAsIGBtb2R1bGVgLFxuICogICBgZXhwb3J0c2AuIFRoZSBzYW5kYm94IGNvbnRleHQgZXhwb3NlcyBvbmx5IHRoZSBkYXRhIHZhcmlhYmxlc1xuICogICAoYCRpbnB1dGAsIGAkdmFyc2AsIGAkaXRlbWAsIGAkaW5kZXhgLCBgJG5vZGVgLCBgJG91dHB1dGApLlxuICogLSAqKk5vIGBldmFsKClgIC8gYG5ldyBGdW5jdGlvbigpYCoqIOKAlCByZWplY3RlZCBieSBBU1QgdmFsaWRhdGlvbi5cbiAqXG4gKiBUaGUgdXNlciBjb2RlIGlzIHRyYW5zcGlsZWQgKFRTIOKGkiBKUykgaWYgbmVlZGVkLCBzdGF0aWNhbGx5IHZhbGlkYXRlZCxcbiAqIHdyYXBwZWQgaW4gYSBzdHJpY3QtbW9kZSBhc3luYyBmdW5jdGlvbiB0aGF0IHJlY2VpdmVzIHRoZSBkYXRhIHZhcmlhYmxlcyBhc1xuICogcGFyYW1ldGVycywgY29tcGlsZWQgaW4gYW4gaXNvbGF0ZWQgVjggaW5zdGFuY2UsIGFuZCBleGVjdXRlZCB3aXRoIGFcbiAqIHRpbWVvdXQgYW5kIG1lbW9yeSBsaW1pdC4gVGhlIHJlc3VsdCBpcyBjb3BpZWQgYmFjayB0byB0aGUgaG9zdCBoZWFwLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0c1xuICogY29uc3QgZXZhbHVhdG9yID0gbmV3IElzb2xhdGVkVm1Db2RlU2FuZGJveEV2YWx1YXRvcigpO1xuICogY29uc3QgcmVzdWx0ID0gYXdhaXQgZXZhbHVhdG9yLmV2YWx1YXRlKHtcbiAqICAgY29kZTogXCJyZXR1cm4gJGlucHV0LmEgKyAkaW5wdXQuYjtcIixcbiAqICAgaW5wdXQ6IHsgYTogMiwgYjogMyB9LFxuICogfSk7XG4gKiAvLyByZXN1bHQgPT09IDVcbiAqIGBgYFxuICovXG5pbXBvcnQgaXZtIGZyb20gXCJpc29sYXRlZC12bVwiO1xuaW1wb3J0ICogYXMgYWNvcm4gZnJvbSBcImFjb3JuXCI7XG5pbXBvcnQgKiBhcyB3YWxrIGZyb20gXCJhY29ybi13YWxrXCI7XG5pbXBvcnQgKiBhcyB0cyBmcm9tIFwidHlwZXNjcmlwdFwiO1xuaW1wb3J0IHR5cGUge1xuICBDb2RlU2FuZGJveEV2YWx1YXRvcixcbiAgQ29kZVNhbmRib3hDb250ZXh0LFxuICBTYW5kYm94TG9nZ2VyLFxufSBmcm9tIFwiLi9Db2RlU2FuZGJveEV2YWx1YXRvclwiO1xuaW1wb3J0IHsgR3JhcGhFeGVjdXRpb25FcnJvciB9IGZyb20gXCIuLi9lcnJvcnMvR3JhcGhFeGVjdXRpb25FcnJvclwiO1xuXG4vKipcbiAqIERlZmF1bHQgc2FuZGJveCBleGVjdXRpb24gdGltZW91dCBpbiBtaWxsaXNlY29uZHMuXG4gKi9cbmNvbnN0IERFRkFVTFRfVElNRU9VVF9NUyA9IDEwMDA7XG5cbi8qKlxuICogRGVmYXVsdCBtZW1vcnkgbGltaXQgZm9yIHRoZSBpc29sYXRlZCBWOCBoZWFwIGluIE1CLlxuICovXG5jb25zdCBERUZBVUxUX01FTU9SWV9NQiA9IDMyO1xuXG4vKipcbiAqIE1heGltdW0gY29kZSBsZW5ndGggKGNoYXJhY3RlcnMpIGFjY2VwdGVkIGJ5IHRoZSBldmFsdWF0b3IuXG4gKi9cbmNvbnN0IE1BWF9DT0RFX0xFTkdUSCA9IDEwMF8wMDA7XG5cbi8qKlxuICogSWRlbnRpZmllcnMgdGhhdCBhcmUgZm9yYmlkZGVuIGluIHNhbmRib3hlZCBjb2RlIChBTEZSRUQtNSDCpzcuMTApLlxuICpcbiAqIEFueSBBU1Qgbm9kZSBvZiB0eXBlIGBJZGVudGlmaWVyYCB3aG9zZSBgbmFtZWAgaXMgaW4gdGhpcyBzZXQgY2F1c2VzIHRoZVxuICogdmFsaWRhdG9yIHRvIHJlamVjdCB0aGUgY29kZS4gVGhpcyBjb3ZlcnMgYm90aCBmcmVlLXN0YW5kaW5nIHJlZmVyZW5jZXNcbiAqIChgcHJvY2Vzcy5lbnZgKSBhbmQgY2FsbCB0YXJnZXRzIChgcmVxdWlyZSguLi4pYCkuXG4gKi9cbmNvbnN0IEJMT0NLRURfSURFTlRJRklFUlM6IFJlYWRvbmx5U2V0PHN0cmluZz4gPSBuZXcgU2V0KFtcbiAgXCJwcm9jZXNzXCIsXG4gIFwicmVxdWlyZVwiLFxuICBcIm1vZHVsZVwiLFxuICBcImV4cG9ydHNcIixcbiAgXCJnbG9iYWxcIixcbiAgXCJnbG9iYWxUaGlzXCIsXG4gIFwiRnVuY3Rpb25cIixcbiAgXCJldmFsXCIsXG4gIFwiZmV0Y2hcIixcbiAgXCJYTUxIdHRwUmVxdWVzdFwiLFxuICBcIldlYlNvY2tldFwiLFxuICBcIldvcmtlclwiLFxuICBcIkRlbm9cIixcbiAgXCJCdW5cIixcbiAgXCJfX2Rpc3BhdGNoXCIsXG5dKTtcblxuLyoqXG4gKiBUcmFuc3BpbGVzIFR5cGVTY3JpcHQgY29kZSB0byBKYXZhU2NyaXB0IChBTEZSRUQtNSDCpzcuNCkuXG4gKlxuICogV2hlbiB0aGUgbGFuZ3VhZ2UgaXMgYCdqYXZhc2NyaXB0J2AgdGhlIGNvZGUgaXMgcmV0dXJuZWQgdW5jaGFuZ2VkLiBGb3JcbiAqIGAndHlwZXNjcmlwdCdgIHRoZSBjb2RlIGlzIHRyYW5zcGlsZWQgdXNpbmcgdGhlIFR5cGVTY3JpcHQgY29tcGlsZXIgd2l0aFxuICogbW9kdWxlIGtpbmQgYE5vbmVgIChubyBpbXBvcnQvZXhwb3J0IGVtaXR0ZWQpIGFuZCB0YXJnZXQgYEVTMjAyMmAuXG4gKlxuICogQHBhcmFtIGNvZGUgLSBUaGUgdXNlci1hdXRob3JlZCBjb2RlLlxuICogQHBhcmFtIGxhbmd1YWdlIC0gVGhlIGNvZGUgbGFuZ3VhZ2UgKGAnamF2YXNjcmlwdCdgIG9yIGAndHlwZXNjcmlwdCdgKS5cbiAqIEByZXR1cm5zIFRyYW5zcGlsZWQgSmF2YVNjcmlwdCBjb2RlLlxuICovXG5mdW5jdGlvbiB0cmFuc3BpbGVUeXBlU2NyaXB0KFxuICBjb2RlOiBzdHJpbmcsXG4gIGxhbmd1YWdlOiBcImphdmFzY3JpcHRcIiB8IFwidHlwZXNjcmlwdFwiXG4pOiBzdHJpbmcge1xuICBpZiAobGFuZ3VhZ2UgPT09IFwiamF2YXNjcmlwdFwiKSByZXR1cm4gY29kZTtcblxuICBjb25zdCByZXN1bHQgPSB0cy50cmFuc3BpbGVNb2R1bGUoY29kZSwge1xuICAgIGNvbXBpbGVyT3B0aW9uczoge1xuICAgICAgdGFyZ2V0OiB0cy5TY3JpcHRUYXJnZXQuRVMyMDIyLFxuICAgICAgbW9kdWxlOiB0cy5Nb2R1bGVLaW5kLk5vbmUsXG4gICAgICBzdHJpY3Q6IHRydWUsXG4gICAgICBub0VtaXRIZWxwZXJzOiB0cnVlLFxuICAgICAgaW1wb3J0SGVscGVyczogZmFsc2UsXG4gICAgfSxcbiAgfSk7XG5cbiAgLy8gU3RyaXAgdGhlIFwidXNlIHN0cmljdFwiOyBkaXJlY3RpdmUgdGhhdCB0cy50cmFuc3BpbGVNb2R1bGUgYWRkcyDigJQgdGhlXG4gIC8vIHNhbmRib3ggd3JhcHBlciBhbHJlYWR5IGVuZm9yY2VzIHN0cmljdCBtb2RlLCBhbmQgdGhlIGRpcmVjdGl2ZSBicmVha3NcbiAgLy8gZXhwcmVzc2lvbi1tb2RlIHdyYXBwaW5nIChyZXR1cm4gKC4uLikpLlxuICByZXR1cm4gcmVzdWx0Lm91dHB1dFRleHQucmVwbGFjZSgvXlwidXNlIHN0cmljdFwiO1xccyovLCBcIlwiKTtcbn1cblxuLyoqXG4gKiBTdGF0aWNhbGx5IHZhbGlkYXRlcyB1c2VyIGNvZGUgdXNpbmcgYW4gQVNUIHdhbGsgKEFMRlJFRC01IMKnNy4xMSkuXG4gKlxuICogUmVqZWN0czpcbiAqIC0gYEltcG9ydERlY2xhcmF0aW9uYCDigJQgbm8gaW1wb3J0cyBhbGxvd2VkLlxuICogLSBgRXhwb3J0TmFtZWREZWNsYXJhdGlvbmAgLyBgRXhwb3J0RGVmYXVsdERlY2xhcmF0aW9uYCDigJQgbm8gZXhwb3J0cy5cbiAqIC0gYElkZW50aWZpZXJgIHdob3NlIG5hbWUgaXMgaW4ge0BsaW5rIEJMT0NLRURfSURFTlRJRklFUlN9LlxuICogLSBgTmV3RXhwcmVzc2lvbmAgd2l0aCBjYWxsZWUgYEZ1bmN0aW9uYCDigJQgbm8gYG5ldyBGdW5jdGlvbigpYC5cbiAqIC0gYENhbGxFeHByZXNzaW9uYCB3aXRoIGNhbGxlZSBgZXZhbGAg4oCUIG5vIGBldmFsKClgLlxuICpcbiAqIEBwYXJhbSBjb2RlIC0gSmF2YVNjcmlwdCBjb2RlIHRvIHZhbGlkYXRlIChhZnRlciBUUyB0cmFuc3BpbGF0aW9uKS5cbiAqIEB0aHJvd3Mge0dyYXBoRXhlY3V0aW9uRXJyb3J9IHdoZW4gYSBmb3JiaWRkZW4gY29uc3RydWN0IGlzIGZvdW5kLlxuICovXG5mdW5jdGlvbiB2YWxpZGF0ZVNhZmVDb2RlKGNvZGU6IHN0cmluZyk6IHZvaWQge1xuICBpZiAoY29kZS5sZW5ndGggPiBNQVhfQ09ERV9MRU5HVEgpIHtcbiAgICB0aHJvdyBuZXcgR3JhcGhFeGVjdXRpb25FcnJvcihcbiAgICAgIGBDb2RlIGV4Y2VlZHMgdGhlIG1heGltdW0gbGVuZ3RoIG9mICR7TUFYX0NPREVfTEVOR1RIfSBjaGFyYWN0ZXJzYCxcbiAgICAgIFwiR1JBUEhfQ09ERV9TQU5EQk9YX0NPREVfVE9PX0xPTkdcIixcbiAgICAgIHsgbGVuZ3RoOiBjb2RlLmxlbmd0aCB9XG4gICAgKTtcbiAgfVxuXG4gIGxldCBhc3Q6IGFjb3JuLkFueU5vZGU7XG4gIHRyeSB7XG4gICAgLy8gRmlyc3QsIHRyeSBwYXJzaW5nIHRoZSBjb2RlIHdyYXBwZWQgaW4gYSBmdW5jdGlvbiB3aXRoIHNvdXJjZVR5cGVcbiAgICAvLyBcInNjcmlwdFwiLiBUaGlzIGhhbmRsZXMgYHJldHVybmAgc3RhdGVtZW50cyAod2hpY2ggYXJlIHZhbGlkIGluc2lkZSBhXG4gICAgLy8gZnVuY3Rpb24pIGFuZCBsZXRzIHVzIGRldGVjdCBibG9ja2VkIGlkZW50aWZpZXJzLCBldmFsKCksIGFuZFxuICAgIC8vIG5ldyBGdW5jdGlvbigpIHZpYSB0aGUgQVNUIHdhbGsuXG4gICAgYXN0ID0gYWNvcm4ucGFyc2UoYGFzeW5jIGZ1bmN0aW9uIF9fdmFsaWRhdGUoKSB7XFxuJHtjb2RlfVxcbn1gLCB7XG4gICAgICBlY21hVmVyc2lvbjogXCJsYXRlc3RcIixcbiAgICAgIHNvdXJjZVR5cGU6IFwic2NyaXB0XCIsXG4gICAgfSkgYXMgYWNvcm4uQW55Tm9kZTtcbiAgfSBjYXRjaCB7XG4gICAgLy8gSWYgdGhlIGZ1bmN0aW9uLXdyYXBwZWQgcGFyc2UgZmFpbHMgKGUuZy4gYmVjYXVzZSB0aGUgY29kZSBoYXNcbiAgICAvLyB0b3AtbGV2ZWwgYGltcG9ydGAgb3IgYGV4cG9ydGAgZGVjbGFyYXRpb25zIHdoaWNoIGFyZSBpbnZhbGlkIGluc2lkZVxuICAgIC8vIGEgZnVuY3Rpb24pLCB0cnkgcGFyc2luZyB0aGUgcmF3IGNvZGUgd2l0aCBzb3VyY2VUeXBlIFwibW9kdWxlXCIgc29cbiAgICAvLyBpbXBvcnQvZXhwb3J0IGRlY2xhcmF0aW9ucyBhcmUgcmVjb2duaXNlZCBhcyBBU1Qgbm9kZXMuXG4gICAgdHJ5IHtcbiAgICAgIGFzdCA9IGFjb3JuLnBhcnNlKGNvZGUsIHtcbiAgICAgICAgZWNtYVZlcnNpb246IFwibGF0ZXN0XCIsXG4gICAgICAgIHNvdXJjZVR5cGU6IFwibW9kdWxlXCIsXG4gICAgICB9KSBhcyBhY29ybi5BbnlOb2RlO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdGhyb3cgbmV3IEdyYXBoRXhlY3V0aW9uRXJyb3IoXG4gICAgICAgIGBDb2RlIGZhaWxlZCB0byBwYXJzZTogJHsoZXJyIGFzIEVycm9yKS5tZXNzYWdlfWAsXG4gICAgICAgIFwiR1JBUEhfQ09ERV9TQU5EQk9YX1BBUlNFX0VSUk9SXCIsXG4gICAgICAgIHsgY29kZSwgZXJyb3I6IChlcnIgYXMgRXJyb3IpLm1lc3NhZ2UgfVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICB3YWxrLmZ1bGwoYXN0IGFzIG5ldmVyLCAobm9kZTogYWNvcm4uQW55Tm9kZSkgPT4ge1xuICAgIGNvbnN0IG4gPSBub2RlIGFzIHVua25vd24gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG5cbiAgICBpZiAobltcInR5cGVcIl0gPT09IFwiSW1wb3J0RGVjbGFyYXRpb25cIikge1xuICAgICAgdGhyb3cgbmV3IEdyYXBoRXhlY3V0aW9uRXJyb3IoXG4gICAgICAgIFwiSW1wb3J0cyBhcmUgbm90IGFsbG93ZWQgaW4gQ29kZSBub2Rlcy5cIixcbiAgICAgICAgXCJHUkFQSF9DT0RFX1NBTkRCT1hfRk9SQklEREVOX1RPS0VOXCIsXG4gICAgICAgIHsgdG9rZW46IFwiaW1wb3J0XCIgfVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICBuW1widHlwZVwiXSA9PT0gXCJFeHBvcnROYW1lZERlY2xhcmF0aW9uXCIgfHxcbiAgICAgIG5bXCJ0eXBlXCJdID09PSBcIkV4cG9ydERlZmF1bHREZWNsYXJhdGlvblwiXG4gICAgKSB7XG4gICAgICB0aHJvdyBuZXcgR3JhcGhFeGVjdXRpb25FcnJvcihcbiAgICAgICAgXCJFeHBvcnRzIGFyZSBub3QgYWxsb3dlZCBpbiBDb2RlIG5vZGVzLlwiLFxuICAgICAgICBcIkdSQVBIX0NPREVfU0FOREJPWF9GT1JCSURERU5fVE9LRU5cIixcbiAgICAgICAgeyB0b2tlbjogXCJleHBvcnRcIiB9XG4gICAgICApO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIG5bXCJ0eXBlXCJdID09PSBcIklkZW50aWZpZXJcIiAmJlxuICAgICAgdHlwZW9mIG5bXCJuYW1lXCJdID09PSBcInN0cmluZ1wiICYmXG4gICAgICBCTE9DS0VEX0lERU5USUZJRVJTLmhhcyhuW1wibmFtZVwiXSlcbiAgICApIHtcbiAgICAgIHRocm93IG5ldyBHcmFwaEV4ZWN1dGlvbkVycm9yKFxuICAgICAgICBgSWRlbnRpZmllciBcIiR7bltcIm5hbWVcIl19XCIgaXMgbm90IGFsbG93ZWQgaW4gQ29kZSBub2Rlcy5gLFxuICAgICAgICBcIkdSQVBIX0NPREVfU0FOREJPWF9GT1JCSURERU5fVE9LRU5cIixcbiAgICAgICAgeyB0b2tlbjogbltcIm5hbWVcIl0gfVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICBuW1widHlwZVwiXSA9PT0gXCJOZXdFeHByZXNzaW9uXCIgJiZcbiAgICAgIChuW1wiY2FsbGVlXCJdIGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+KT8uW1wibmFtZVwiXSA9PT0gXCJGdW5jdGlvblwiXG4gICAgKSB7XG4gICAgICB0aHJvdyBuZXcgR3JhcGhFeGVjdXRpb25FcnJvcihcbiAgICAgICAgXCJuZXcgRnVuY3Rpb24oKSBpcyBub3QgYWxsb3dlZCBpbiBDb2RlIG5vZGVzLlwiLFxuICAgICAgICBcIkdSQVBIX0NPREVfU0FOREJPWF9GT1JCSURERU5fVE9LRU5cIixcbiAgICAgICAgeyB0b2tlbjogXCJGdW5jdGlvblwiIH1cbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKFxuICAgICAgbltcInR5cGVcIl0gPT09IFwiQ2FsbEV4cHJlc3Npb25cIiAmJlxuICAgICAgKG5bXCJjYWxsZWVcIl0gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4pPy5bXCJuYW1lXCJdID09PSBcImV2YWxcIlxuICAgICkge1xuICAgICAgdGhyb3cgbmV3IEdyYXBoRXhlY3V0aW9uRXJyb3IoXG4gICAgICAgIFwiZXZhbCgpIGlzIG5vdCBhbGxvd2VkIGluIENvZGUgbm9kZXMuXCIsXG4gICAgICAgIFwiR1JBUEhfQ09ERV9TQU5EQk9YX0ZPUkJJRERFTl9UT0tFTlwiLFxuICAgICAgICB7IHRva2VuOiBcImV2YWxcIiB9XG4gICAgICApO1xuICAgIH1cbiAgfSk7XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSBnaXZlbiBjb2RlIGNvbnRhaW5zIGEgdG9wLWxldmVsIGByZXR1cm5gIHN0YXRlbWVudC5cbiAqXG4gKiBXaGVuIHRoZSBjb2RlIGhhcyBubyBgcmV0dXJuYCwgaXQgaXMgdHJlYXRlZCBhcyBhIHNpbmdsZSBleHByZXNzaW9uIGFuZFxuICogd3JhcHBlZCBpbiBgcmV0dXJuICguLi4pYCBzbyB0aGUgdXNlciBjYW4gd3JpdGUgYCgkaW5wdXQuYSArICRpbnB1dC5iKWBcbiAqIGluc3RlYWQgb2YgYHJldHVybiAkaW5wdXQuYSArICRpbnB1dC5iYC5cbiAqL1xuZnVuY3Rpb24gaGFzUmV0dXJuU3RhdGVtZW50KGNvZGU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICByZXR1cm4gL1xcYnJldHVyblxcYltcXHM7XS8udGVzdChjb2RlKTtcbn1cblxuLyoqXG4gKiBgaXNvbGF0ZWQtdm1gLWJhY2tlZCB7QGxpbmsgQ29kZVNhbmRib3hFdmFsdWF0b3J9IChBTEZSRUQtNSDCpzcuMTgpLlxuICpcbiAqIFRoaXMgZXZhbHVhdG9yIHByb3ZpZGVzIGEgdHJ1bHkgaXNvbGF0ZWQgVjggc2FuZGJveCDigJQgdGhlIGNvZGUgcnVucyBpbiBhXG4gKiBzZXBhcmF0ZSBpc29sYXRlIHdpdGggaXRzIG93biBoZWFwLCBzZXBhcmF0ZSBmcm9tIHRoZSBob3N0IHByb2Nlc3MuIFRoZVxuICogc2FuZGJveCBjb250ZXh0IGV4cG9zZXMgb25seSB0aGUgZGF0YSB2YXJpYWJsZXMgKGAkaW5wdXRgLCBgJHZhcnNgLCBgJGl0ZW1gLFxuICogYCRpbmRleGAsIGAkbm9kZWAsIGAkb3V0cHV0YCk7IG5vIGhvc3QgZ2xvYmFscyBhcmUgYXZhaWxhYmxlLlxuICpcbiAqIEV4ZWN1dGlvbiBwaXBlbGluZTpcbiAqIDEuICoqVHJhbnNwaWxlKiog4oCUIFR5cGVTY3JpcHQgY29kZSBpcyB0cmFuc3BpbGVkIHRvIEphdmFTY3JpcHQgdmlhXG4gKiAgICBgdHlwZXNjcmlwdC50cmFuc3BpbGVNb2R1bGVgIChBTEZSRUQtNSDCpzcuNCkuXG4gKiAyLiAqKlZhbGlkYXRlKiog4oCUIHRoZSBKYXZhU2NyaXB0IGNvZGUgaXMgcGFyc2VkIHdpdGggYGFjb3JuYCBhbmQgd2Fsa2VkIHdpdGhcbiAqICAgIGBhY29ybi13YWxrYCB0byByZWplY3QgaW1wb3J0cywgZXhwb3J0cywgYmxvY2tlZCBpZGVudGlmaWVycywgYGV2YWwoKWAsXG4gKiAgICBhbmQgYG5ldyBGdW5jdGlvbigpYCAoQUxGUkVELTUgwqc3LjExKS5cbiAqIDMuICoqSXNvbGF0ZSoqIOKAlCBhIG5ldyBgaXNvbGF0ZWQtdm1gIGBJc29sYXRlYCBpcyBjcmVhdGVkIHdpdGggYSBtZW1vcnlcbiAqICAgIGxpbWl0LiBBIGNvbnRleHQgaXMgY3JlYXRlZCBhbmQgdGhlIGRhdGEgdmFyaWFibGVzIGFyZSBjb3BpZWQgaW50byB0aGVcbiAqICAgIGlzb2xhdGUncyBoZWFwIHZpYSBgRXh0ZXJuYWxDb3B5YC5cbiAqIDQuICoqQ29tcGlsZSAmIHJ1bioqIOKAlCB0aGUgd3JhcHBlZCBjb2RlIGlzIGNvbXBpbGVkIGFuZCBleGVjdXRlZCB3aXRoIGFcbiAqICAgIHRpbWVvdXQuIFRoZSByZXN1bHQgaXMgY29waWVkIGJhY2sgdG8gdGhlIGhvc3QgaGVhcC5cbiAqIDUuICoqRGlzcG9zZSoqIOKAlCB0aGUgaXNvbGF0ZSBpcyBhbHdheXMgZGlzcG9zZWQgaW4gYSBgZmluYWxseWAgYmxvY2suXG4gKlxuICogVGhlIHVzZXIgY29kZSBpcyB3cmFwcGVkIGluIGEgc3RyaWN0LW1vZGUgYXN5bmMgZnVuY3Rpb246XG4gKlxuICogYGBganNcbiAqIFwidXNlIHN0cmljdFwiO1xuICogYXN5bmMgZnVuY3Rpb24gX191c2VyRnVuY3Rpb24oJGlucHV0LCAkdmFycywgJGl0ZW0sICRpbmRleCwgJG5vZGUsICRvdXRwdXQpIHtcbiAqICAgPHVzZXIgY29kZT5cbiAqIH1cbiAqIF9fdXNlckZ1bmN0aW9uKCRpbnB1dCwgJHZhcnMsICRpdGVtLCAkaW5kZXgsICRub2RlLCAkb3V0cHV0KTtcbiAqIGBgYFxuICpcbiAqIFdoZW4gdGhlIGNvZGUgaGFzIG5vIGByZXR1cm5gIHN0YXRlbWVudCBpdCBpcyB0cmVhdGVkIGFzIGEgc2luZ2xlIGV4cHJlc3Npb25cbiAqIGFuZCB3cmFwcGVkIGluIGByZXR1cm4gKC4uLilgLlxuICovXG5leHBvcnQgY2xhc3MgSXNvbGF0ZWRWbUNvZGVTYW5kYm94RXZhbHVhdG9yIGltcGxlbWVudHMgQ29kZVNhbmRib3hFdmFsdWF0b3Ige1xuICBwcml2YXRlIHJlYWRvbmx5IGRlZmF1bHRUaW1lb3V0TXM6IG51bWJlcjtcbiAgcHJpdmF0ZSByZWFkb25seSBkZWZhdWx0TWVtb3J5TWI6IG51bWJlcjtcblxuICAvKipcbiAgICogQHBhcmFtIGRlZmF1bHRUaW1lb3V0TXMgLSBEZWZhdWx0IGV4ZWN1dGlvbiB0aW1lb3V0IGluIG1pbGxpc2Vjb25kcy5cbiAgICogQHBhcmFtIGRlZmF1bHRNZW1vcnlNYiAtIERlZmF1bHQgaXNvbGF0ZSBtZW1vcnkgbGltaXQgaW4gTUIuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBkZWZhdWx0VGltZW91dE1zOiBudW1iZXIgPSBERUZBVUxUX1RJTUVPVVRfTVMsXG4gICAgZGVmYXVsdE1lbW9yeU1iOiBudW1iZXIgPSBERUZBVUxUX01FTU9SWV9NQlxuICApIHtcbiAgICB0aGlzLmRlZmF1bHRUaW1lb3V0TXMgPSBkZWZhdWx0VGltZW91dE1zO1xuICAgIHRoaXMuZGVmYXVsdE1lbW9yeU1iID0gZGVmYXVsdE1lbW9yeU1iO1xuICB9XG5cbiAgYXN5bmMgZXZhbHVhdGUoY3R4OiBDb2RlU2FuZGJveENvbnRleHQpOiBQcm9taXNlPHVua25vd24+IHtcbiAgICBjb25zdCBjb2RlID0gY3R4LmNvZGU7XG4gICAgaWYgKCFjb2RlIHx8IHR5cGVvZiBjb2RlICE9PSBcInN0cmluZ1wiIHx8IGNvZGUudHJpbSgpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEdyYXBoRXhlY3V0aW9uRXJyb3IoXG4gICAgICAgIFwiQ29kZSBzYW5kYm94IHJlY2VpdmVkIGVtcHR5IGNvZGVcIixcbiAgICAgICAgXCJHUkFQSF9DT0RFX1NBTkRCT1hfRU1QVFlfQ09ERVwiXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IGxhbmd1YWdlID0gY3R4Lmxhbmd1YWdlID8/IFwiamF2YXNjcmlwdFwiO1xuICAgIGNvbnN0IGpzQ29kZSA9IHRyYW5zcGlsZVR5cGVTY3JpcHQoY29kZSwgbGFuZ3VhZ2UpO1xuXG4gICAgdmFsaWRhdGVTYWZlQ29kZShqc0NvZGUpO1xuXG4gICAgY29uc3QgZXhwcmVzc2lvbk1vZGUgPSAhaGFzUmV0dXJuU3RhdGVtZW50KGpzQ29kZSk7XG4gICAgY29uc3QgY29kZUZvck1vZGUgPSBleHByZXNzaW9uTW9kZVxuICAgICAgPyBqc0NvZGUucmVwbGFjZSgvW1xccztdKyQvLCBcIlwiKVxuICAgICAgOiBqc0NvZGU7XG5cbiAgICBjb25zdCBzYW5kYm94VmFyczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7XG4gICAgICAkaW5wdXQ6IGN0eC5pbnB1dCA/PyB7fSxcbiAgICAgICR2YXJzOiBjdHgudmFycyA/PyB7fSxcbiAgICAgICRpdGVtOiBjdHguaXRlbSxcbiAgICAgICRpbmRleDogY3R4LmluZGV4LFxuICAgICAgJG5vZGU6IGN0eC5ub2RlcyA/PyB7fSxcbiAgICAgICRvdXRwdXQ6IHVuZGVmaW5lZCxcbiAgICB9O1xuXG4gICAgY29uc3QgcGFyYW1OYW1lcyA9IE9iamVjdC5rZXlzKHNhbmRib3hWYXJzKTtcbiAgICAvLyBjb25zdCBwYXJhbVZhbHVlcyA9IE9iamVjdC52YWx1ZXMoc2FuZGJveFZhcnMpO1xuXG4gICAgLy8gQnVpbGQgdGhlIHdyYXBwZWQgc2NyaXB0LiBUaGUgdXNlciBjb2RlIHJ1bnMgaW5zaWRlIGFuIGFzeW5jIGZ1bmN0aW9uXG4gICAgLy8gd2l0aCBuYW1lZCBwYXJhbWV0ZXJzLiBUaGUgcmVzdWx0IGlzIEpTT04tc3RyaW5naWZpZWQgaW5zaWRlIHRoZSBpc29sYXRlXG4gICAgLy8gc28gaXQgY2FuIGJlIHRyYW5zZmVycmVkIGJhY2sgYXMgYSBwbGFpbiBzdHJpbmcgKGlzb2xhdGVkLXZtIGNhbm5vdFxuICAgIC8vIGRlZXAtY29weSBhcmJpdHJhcnkgb2JqZWN0cyB2aWEgYHNjcmlwdC5ydW4oKWAgd2l0aCBgcHJvbWlzZTogdHJ1ZWApLlxuICAgIC8vIFRoZSBzcGVjIHJlcXVpcmVzIEpTT04tc2VyaWFsaXphYmxlIG91dHB1dCwgc28gdGhpcyBpcyBzYWZlLlxuICAgIGNvbnN0IHVzZXJCb2R5ID0gZXhwcmVzc2lvbk1vZGUgPyBgcmV0dXJuICgke2NvZGVGb3JNb2RlfSk7YCA6IGNvZGVGb3JNb2RlO1xuICAgIGNvbnN0IHdyYXBwZWQgPSBgXCJ1c2Ugc3RyaWN0XCI7XFxuYXN5bmMgZnVuY3Rpb24gX191c2VyRnVuY3Rpb24oJHtwYXJhbU5hbWVzLmpvaW4oXCIsIFwiKX0pIHtcXG4ke3VzZXJCb2R5fVxcbn1cXG5fX3VzZXJGdW5jdGlvbigke3BhcmFtTmFtZXMuam9pbihcIiwgXCIpfSkudGhlbihmdW5jdGlvbihfX3IpIHsgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHsgdjogX19yIH0pOyB9KTtgO1xuXG4gICAgY29uc3QgaXNvbGF0ZSA9IG5ldyBpdm0uSXNvbGF0ZSh7IG1lbW9yeUxpbWl0OiB0aGlzLmRlZmF1bHRNZW1vcnlNYiB9KTtcbiAgICBjb25zdCBjb250ZXh0ID0gYXdhaXQgaXNvbGF0ZS5jcmVhdGVDb250ZXh0KCk7XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgamFpbCA9IGNvbnRleHQuZ2xvYmFsO1xuXG4gICAgICAvLyBJbmplY3QgYSBgY29uc29sZWAgb2JqZWN0IGludG8gdGhlIGlzb2xhdGUgd2hvc2UgbWV0aG9kcyBmb3J3YXJkIHRvXG4gICAgICAvLyB0aGUgQ29udGV4dCBsb2dnZXIgKGJvdW5kIHRvIHJ1bklkKS4gVGhlIGxvZ2dlciBpcyBjYWxsZWQgdmlhXG4gICAgICAvLyBgaXZtLlJlZmVyZW5jZWAgc28gdGhlIGlzb2xhdGUgY2FuIGludm9rZSBob3N0IGZ1bmN0aW9ucyB3aXRob3V0XG4gICAgICAvLyBsZWFraW5nIHRoZSBob3N0IGhlYXAuXG4gICAgICBpZiAoY3R4LmxvZ2dlcikge1xuICAgICAgICBhd2FpdCB0aGlzLmluamVjdENvbnNvbGUoamFpbCwgY3R4LmxvZ2dlciwgY29udGV4dCk7XG4gICAgICB9XG5cbiAgICAgIGZvciAoY29uc3QgW25hbWUsIHZhbHVlXSBvZiBPYmplY3QuZW50cmllcyhzYW5kYm94VmFycykpIHtcbiAgICAgICAgYXdhaXQgamFpbC5zZXQoXG4gICAgICAgICAgbmFtZSxcbiAgICAgICAgICBuZXcgaXZtLkV4dGVybmFsQ29weSh2YWx1ZSA9PT0gdW5kZWZpbmVkID8gbnVsbCA6IHZhbHVlKS5jb3B5SW50bygpXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIGxldCBzY3JpcHQ6IGl2bS5TY3JpcHQ7XG4gICAgICB0cnkge1xuICAgICAgICBzY3JpcHQgPSBhd2FpdCBpc29sYXRlLmNvbXBpbGVTY3JpcHQod3JhcHBlZCwge1xuICAgICAgICAgIGZpbGVuYW1lOiBcImdyYXBoLWNvZGUtbm9kZS5qc1wiLFxuICAgICAgICB9KTtcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICBpZiAoZXhwcmVzc2lvbk1vZGUpIHtcbiAgICAgICAgICBjb25zdCBmYWxsYmFja0JvZHkgPSBjb2RlRm9yTW9kZTtcbiAgICAgICAgICBjb25zdCBmYWxsYmFja1dyYXBwZWQgPSBgXCJ1c2Ugc3RyaWN0XCI7XFxuYXN5bmMgZnVuY3Rpb24gX191c2VyRnVuY3Rpb24oJHtwYXJhbU5hbWVzLmpvaW4oXCIsIFwiKX0pIHtcXG4ke2ZhbGxiYWNrQm9keX1cXG59XFxuX191c2VyRnVuY3Rpb24oJHtwYXJhbU5hbWVzLmpvaW4oXCIsIFwiKX0pLnRoZW4oZnVuY3Rpb24oX19yKSB7IHJldHVybiBKU09OLnN0cmluZ2lmeSh7IHY6IF9fciB9KTsgfSk7YDtcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgc2NyaXB0ID0gYXdhaXQgaXNvbGF0ZS5jb21waWxlU2NyaXB0KGZhbGxiYWNrV3JhcHBlZCwge1xuICAgICAgICAgICAgICBmaWxlbmFtZTogXCJncmFwaC1jb2RlLW5vZGUuanNcIixcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0gY2F0Y2ggKGZhbGxiYWNrRXJyKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgR3JhcGhFeGVjdXRpb25FcnJvcihcbiAgICAgICAgICAgICAgYENvZGUgZmFpbGVkIHRvIGNvbXBpbGU6ICR7KGZhbGxiYWNrRXJyIGFzIEVycm9yKS5tZXNzYWdlfWAsXG4gICAgICAgICAgICAgIFwiR1JBUEhfQ09ERV9TQU5EQk9YX0NPTVBJTEVfRVJST1JcIixcbiAgICAgICAgICAgICAgeyBjb2RlOiBqc0NvZGUsIGVycm9yOiAoZmFsbGJhY2tFcnIgYXMgRXJyb3IpLm1lc3NhZ2UgfVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEdyYXBoRXhlY3V0aW9uRXJyb3IoXG4gICAgICAgICAgICBgQ29kZSBmYWlsZWQgdG8gY29tcGlsZTogJHsoZXJyIGFzIEVycm9yKS5tZXNzYWdlfWAsXG4gICAgICAgICAgICBcIkdSQVBIX0NPREVfU0FOREJPWF9DT01QSUxFX0VSUk9SXCIsXG4gICAgICAgICAgICB7IGNvZGU6IGpzQ29kZSwgZXJyb3I6IChlcnIgYXMgRXJyb3IpLm1lc3NhZ2UgfVxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgbGV0IHJhd1Jlc3VsdDogdW5rbm93bjtcbiAgICAgIHRyeSB7XG4gICAgICAgIHJhd1Jlc3VsdCA9IGF3YWl0IHNjcmlwdC5ydW4oY29udGV4dCwge1xuICAgICAgICAgIHRpbWVvdXQ6IHRoaXMuZGVmYXVsdFRpbWVvdXRNcyxcbiAgICAgICAgICBwcm9taXNlOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICBjb25zdCBtc2cgPSAoZXJyIGFzIEVycm9yKS5tZXNzYWdlO1xuICAgICAgICBpZiAobXNnLmluY2x1ZGVzKFwidGltZWQgb3V0XCIpIHx8IG1zZy5pbmNsdWRlcyhcInRpbWVvdXRcIikpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgR3JhcGhFeGVjdXRpb25FcnJvcihcbiAgICAgICAgICAgIGBDb2RlIGV4ZWN1dGlvbiB0aW1lZCBvdXQgYWZ0ZXIgJHt0aGlzLmRlZmF1bHRUaW1lb3V0TXN9IG1zYCxcbiAgICAgICAgICAgIFwiR1JBUEhfQ09ERV9TQU5EQk9YX1RJTUVPVVRcIixcbiAgICAgICAgICAgIHsgdGltZW91dE1zOiB0aGlzLmRlZmF1bHRUaW1lb3V0TXMgfVxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG1zZy5pbmNsdWRlcyhcIm1lbW9yeVwiKSB8fCBtc2cuaW5jbHVkZXMoXCJoZWFwXCIpKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEdyYXBoRXhlY3V0aW9uRXJyb3IoXG4gICAgICAgICAgICBgQ29kZSBleGNlZWRlZCB0aGUgbWVtb3J5IGxpbWl0IG9mICR7dGhpcy5kZWZhdWx0TWVtb3J5TWJ9IE1CYCxcbiAgICAgICAgICAgIFwiR1JBUEhfQ09ERV9TQU5EQk9YX01FTU9SWV9MSU1JVFwiLFxuICAgICAgICAgICAgeyBtZW1vcnlNYjogdGhpcy5kZWZhdWx0TWVtb3J5TWIgfVxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgICAgdGhyb3cgbmV3IEdyYXBoRXhlY3V0aW9uRXJyb3IoXG4gICAgICAgICAgYENvZGUgZXhlY3V0aW9uIGZhaWxlZDogJHttc2d9YCxcbiAgICAgICAgICBcIkdSQVBIX0NPREVfU0FOREJPWF9SVU5USU1FX0VSUk9SXCIsXG4gICAgICAgICAgeyBjb2RlOiBqc0NvZGUsIGVycm9yOiBtc2cgfVxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICAvLyBUaGUgc2NyaXB0IHJldHVybnMgYSBKU09OIHN0cmluZyBge1widlwiOiA8cmVzdWx0Pn1gLiBQYXJzZSBpdCBiYWNrLlxuICAgICAgaWYgKHR5cGVvZiByYXdSZXN1bHQgIT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgdGhyb3cgbmV3IEdyYXBoRXhlY3V0aW9uRXJyb3IoXG4gICAgICAgICAgXCJDb2RlIHNhbmRib3ggcmV0dXJuZWQgYW4gdW5leHBlY3RlZCBub24tc3RyaW5nIHJlc3VsdFwiLFxuICAgICAgICAgIFwiR1JBUEhfQ09ERV9TQU5EQk9YX1VORVhQRUNURURfUkVTVUxUXCIsXG4gICAgICAgICAgeyByZXN1bHQ6IHJhd1Jlc3VsdCB9XG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICByZXR1cm4gSlNPTi5wYXJzZShyYXdSZXN1bHQpLnY7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIGNvbnRleHQucmVsZWFzZSgpO1xuICAgICAgaXNvbGF0ZS5kaXNwb3NlKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEluamVjdHMgYSBgY29uc29sZWAgb2JqZWN0IGludG8gdGhlIGlzb2xhdGUgd2hvc2UgbWV0aG9kcyBmb3J3YXJkIHRvIHRoZVxuICAgKiBDb250ZXh0IGxvZ2dlciAoYm91bmQgdG8gYHJ1bklkYCkuXG4gICAqXG4gICAqIEV2ZXJ5IHN0YW5kYXJkIGBjb25zb2xlLipgIG1ldGhvZCBpcyBzdXBwb3J0ZWQ6XG4gICAqIGBsb2dgLCBgaW5mb2AsIGB3YXJuYCwgYGVycm9yYCwgYGRlYnVnYCwgYHRyYWNlYCwgYGRpcmAsIGBkaXJ4bWxgLFxuICAgKiBgdGFibGVgLCBgZ3JvdXBgLCBgZ3JvdXBDb2xsYXBzZWRgLCBgZ3JvdXBFbmRgLCBgdGltZWAsIGB0aW1lRW5kYCxcbiAgICogYHRpbWVMb2dgLCBgYXNzZXJ0YCwgYGNvdW50YCwgYGNvdW50UmVzZXRgLCBgY2xlYXJgLlxuICAgKlxuICAgKiBBcmd1bWVudHMgYXJlIHNlcmlhbGlzZWQgaW5zaWRlIHRoZSBpc29sYXRlICh2aWEgYEpTT04uc3RyaW5naWZ5YCB3aXRoIGFcbiAgICogc2FmZSBmYWxsYmFjaykgYmVmb3JlIGJlaW5nIHBhc3NlZCBhY3Jvc3MgdGhlIGlzb2xhdGUgYm91bmRhcnksIGJlY2F1c2VcbiAgICogYGlzb2xhdGVkLXZtYCBjYW5ub3QgY29weSBhcmJpdHJhcnkgaG9zdCBvYmplY3RzLlxuICAgKlxuICAgKiBAcGFyYW0gamFpbCAtIFRoZSBpc29sYXRlJ3MgZ2xvYmFsIG9iamVjdC5cbiAgICogQHBhcmFtIGxvZ2dlciAtIFRoZSBDb250ZXh0IGxvZ2dlciB0aGF0IHJlY2VpdmVzIHRoZSBmb3J3YXJkZWQgY2FsbHMuXG4gICAqIEBwYXJhbSBjb250ZXh0IC0gVGhlIGlzb2xhdGUgY29udGV4dCAoZm9yIHJ1bm5pbmcgdGhlIGluaXQgc2NyaXB0KS5cbiAgICovXG4gIHByaXZhdGUgYXN5bmMgaW5qZWN0Q29uc29sZShcbiAgICBqYWlsOiBpdm0uQ29udGV4dFtcImdsb2JhbFwiXSxcbiAgICBsb2dnZXI6IFNhbmRib3hMb2dnZXIsXG4gICAgY29udGV4dDogaXZtLkNvbnRleHRcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgZGlzcGF0Y2ggPSBuZXcgaXZtLlJlZmVyZW5jZShmdW5jdGlvbiAobGV2ZWw6IHN0cmluZywgYXJnc0pzb246IHN0cmluZykge1xuICAgICAgbGV0IHBhcnNlZDogdW5rbm93bltdO1xuICAgICAgdHJ5IHtcbiAgICAgICAgcGFyc2VkID0gSlNPTi5wYXJzZShhcmdzSnNvbikgYXMgdW5rbm93bltdO1xuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIHBhcnNlZCA9IFthcmdzSnNvbl07XG4gICAgICB9XG4gICAgICBjb25zdCBtc2cgPSBwYXJzZWRcbiAgICAgICAgLm1hcCgoYSkgPT4gKHR5cGVvZiBhID09PSBcInN0cmluZ1wiID8gYSA6IEpTT04uc3RyaW5naWZ5KGEpKSlcbiAgICAgICAgLmpvaW4oXCIgXCIpO1xuICAgICAgY29uc3QgbWV0YSA9IHBhcnNlZC5sZW5ndGggPT09IDEgPyBwYXJzZWRbMF0gOiBwYXJzZWQ7XG4gICAgICBzd2l0Y2ggKGxldmVsKSB7XG4gICAgICAgIGNhc2UgXCJsb2dcIjpcbiAgICAgICAgY2FzZSBcImluZm9cIjpcbiAgICAgICAgICBsb2dnZXIuaW5mbyhtc2csIG1ldGEpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIFwid2FyblwiOlxuICAgICAgICAgIGxvZ2dlci53YXJuKG1zZywgbWV0YSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgXCJlcnJvclwiOlxuICAgICAgICAgIGxvZ2dlci5lcnJvcihtc2csIG1ldGEpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIFwiZGVidWdcIjpcbiAgICAgICAgICBsb2dnZXIuZGVidWcobXNnLCBtZXRhKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBcInRyYWNlXCI6XG4gICAgICAgICAgbG9nZ2VyLnRyYWNlKG1zZywgbWV0YSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgXCJkaXJcIjpcbiAgICAgICAgY2FzZSBcImRpcnhtbFwiOlxuICAgICAgICBjYXNlIFwidGFibGVcIjpcbiAgICAgICAgICBsb2dnZXIuZGVidWcobXNnLCBtZXRhKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBcImdyb3VwXCI6XG4gICAgICAgIGNhc2UgXCJncm91cENvbGxhcHNlZFwiOlxuICAgICAgICAgIGxvZ2dlci5kZWJ1ZyhgW2dyb3VwXSAke21zZ31gLCBtZXRhKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBcImdyb3VwRW5kXCI6XG4gICAgICAgICAgbG9nZ2VyLmRlYnVnKFwiW2dyb3VwRW5kXVwiLCB1bmRlZmluZWQpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIFwidGltZVwiOlxuICAgICAgICBjYXNlIFwidGltZUVuZFwiOlxuICAgICAgICBjYXNlIFwidGltZUxvZ1wiOlxuICAgICAgICAgIGxvZ2dlci5kZWJ1ZyhgWyR7bGV2ZWx9XSAke21zZ31gLCBtZXRhKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBcImFzc2VydFwiOlxuICAgICAgICAgIGlmICghcGFyc2VkWzBdKSBsb2dnZXIuZXJyb3IoYEFzc2VydGlvbiBmYWlsZWQ6ICR7bXNnfWAsIG1ldGEpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIFwiY291bnRcIjpcbiAgICAgICAgY2FzZSBcImNvdW50UmVzZXRcIjpcbiAgICAgICAgICBsb2dnZXIuZGVidWcoYFske2xldmVsfV0gJHttc2d9YCwgbWV0YSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgXCJjbGVhclwiOlxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIGxvZ2dlci5pbmZvKG1zZywgbWV0YSk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBhd2FpdCBqYWlsLnNldChcIl9fZGlzcGF0Y2hcIiwgZGlzcGF0Y2gpO1xuXG4gICAgY29udGV4dC5ldmFsU3luYyhgXG4gICAgICBmdW5jdGlvbiBfX3NlcigpIHtcbiAgICAgICAgdmFyIG91dCA9IFtdO1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgIHZhciBhID0gYXJndW1lbnRzW2ldO1xuICAgICAgICAgIHRyeSB7IG91dC5wdXNoKHR5cGVvZiBhID09PSAnb2JqZWN0JyA/IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoYSkpIDogYSk7IH1cbiAgICAgICAgICBjYXRjaCAoZSkgeyBvdXQucHVzaChTdHJpbmcoYSkpOyB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KG91dCk7XG4gICAgICB9XG4gICAgICBmdW5jdGlvbiBfX2NhbGwobGV2ZWwpIHtcbiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKCkge1xuICAgICAgICAgIF9fZGlzcGF0Y2guYXBwbHlTeW5jKHVuZGVmaW5lZCwgW2xldmVsLCBfX3Nlci5hcHBseShudWxsLCBhcmd1bWVudHMpXSk7XG4gICAgICAgIH07XG4gICAgICB9XG4gICAgICBnbG9iYWxUaGlzLmNvbnNvbGUgPSB7XG4gICAgICAgIGxvZzogX19jYWxsKCdsb2cnKSxcbiAgICAgICAgaW5mbzogX19jYWxsKCdpbmZvJyksXG4gICAgICAgIHdhcm46IF9fY2FsbCgnd2FybicpLFxuICAgICAgICBlcnJvcjogX19jYWxsKCdlcnJvcicpLFxuICAgICAgICBkZWJ1ZzogX19jYWxsKCdkZWJ1ZycpLFxuICAgICAgICB0cmFjZTogX19jYWxsKCd0cmFjZScpLFxuICAgICAgICBkaXI6IF9fY2FsbCgnZGlyJyksXG4gICAgICAgIGRpcnhtbDogX19jYWxsKCdkaXJ4bWwnKSxcbiAgICAgICAgdGFibGU6IF9fY2FsbCgndGFibGUnKSxcbiAgICAgICAgZ3JvdXA6IF9fY2FsbCgnZ3JvdXAnKSxcbiAgICAgICAgZ3JvdXBDb2xsYXBzZWQ6IF9fY2FsbCgnZ3JvdXBDb2xsYXBzZWQnKSxcbiAgICAgICAgZ3JvdXBFbmQ6IF9fY2FsbCgnZ3JvdXBFbmQnKSxcbiAgICAgICAgdGltZTogX19jYWxsKCd0aW1lJyksXG4gICAgICAgIHRpbWVFbmQ6IF9fY2FsbCgndGltZUVuZCcpLFxuICAgICAgICB0aW1lTG9nOiBfX2NhbGwoJ3RpbWVMb2cnKSxcbiAgICAgICAgYXNzZXJ0OiBfX2NhbGwoJ2Fzc2VydCcpLFxuICAgICAgICBjb3VudDogX19jYWxsKCdjb3VudCcpLFxuICAgICAgICBjb3VudFJlc2V0OiBfX2NhbGwoJ2NvdW50UmVzZXQnKSxcbiAgICAgICAgY2xlYXI6IF9fY2FsbCgnY2xlYXInKVxuICAgICAgfTtcbiAgICBgKTtcblxuICAgIGRpc3BhdGNoLnJlbGVhc2UoKTtcbiAgfVxufVxuIl19
|
|
440
|
+
//# sourceMappingURL=IsolatedVmCodeSandboxEvaluator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IsolatedVmCodeSandboxEvaluator.js","sourceRoot":"","sources":["../../../../../src/graph/engine/execution/IsolatedVmCodeSandboxEvaluator.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,4 +11,4 @@ export class LogGraphNodeExecutor {
|
|
|
11
11
|
return { logged: value };
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
|
-
//# sourceMappingURL=
|
|
14
|
+
//# sourceMappingURL=LogGraphNodeExecutor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LogGraphNodeExecutor.js","sourceRoot":"","sources":["../../../../../src/graph/engine/execution/LogGraphNodeExecutor.ts"],"names":[],"mappings":"AAWA;;;;;GAKG;AACH,MAAM,OAAO,oBAAoB;IAC/B,KAAK,CAAC,OAAO,CACX,KAA2B,EAC3B,OAA8B;QAE9B,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;QAC7B,MAAM,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACzC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAC3B,CAAC;CACF"}
|
|
@@ -10,15 +10,15 @@ import { ConditionExpressionEvaluator } from "./../loops/ConditionExpressionEval
|
|
|
10
10
|
function readSwitchMetadata(context) {
|
|
11
11
|
const meta = context.node.graph?.metadata;
|
|
12
12
|
if (!meta)
|
|
13
|
-
return { cases: [], defaultPort: "default", hasDefault:
|
|
13
|
+
return { cases: [], defaultPort: "default", hasDefault: false };
|
|
14
14
|
const switchMeta = meta["switch"];
|
|
15
15
|
if (!switchMeta || !Array.isArray(switchMeta.cases)) {
|
|
16
|
-
return { cases: [], defaultPort: "default", hasDefault:
|
|
16
|
+
return { cases: [], defaultPort: "default", hasDefault: false };
|
|
17
17
|
}
|
|
18
18
|
return {
|
|
19
19
|
cases: switchMeta.cases,
|
|
20
20
|
defaultPort: switchMeta.defaultPort ?? "default",
|
|
21
|
-
hasDefault: switchMeta.hasDefault
|
|
21
|
+
hasDefault: switchMeta.hasDefault === true,
|
|
22
22
|
};
|
|
23
23
|
}
|
|
24
24
|
/**
|
|
@@ -44,8 +44,8 @@ function isConditionExpression(cond) {
|
|
|
44
44
|
*
|
|
45
45
|
* Evaluates each case's condition in order and routes the input to the
|
|
46
46
|
* first matching case's output port. When no case matches:
|
|
47
|
-
* - If `hasDefault` is `true
|
|
48
|
-
* - If `hasDefault` is `false
|
|
47
|
+
* - If `hasDefault` is `true`, routes to the `default` output port.
|
|
48
|
+
* - If `hasDefault` is `false` (the default), throws `GRAPH_SWITCH_NO_MATCH`.
|
|
49
49
|
*
|
|
50
50
|
* Condition evaluation:
|
|
51
51
|
* - `ConditionExpression` — evaluated via {@link ConditionExpressionEvaluator}.
|
|
@@ -68,8 +68,8 @@ export class SwitchGraphNodeExecutor {
|
|
|
68
68
|
}
|
|
69
69
|
}
|
|
70
70
|
// No case matched — route to the default port when it is enabled.
|
|
71
|
-
if (meta.hasDefault
|
|
72
|
-
|
|
71
|
+
if (meta.hasDefault !== true) {
|
|
72
|
+
throw new GraphExecutionError("No switch case matched and default port is not enabled", "GRAPH_SWITCH_NO_MATCH", { cases: meta.cases.map((c) => c.id) });
|
|
73
73
|
}
|
|
74
74
|
const defaultPort = meta.defaultPort ?? "default";
|
|
75
75
|
return { [defaultPort]: inputValue };
|
|
@@ -112,4 +112,4 @@ export class SwitchGraphNodeExecutor {
|
|
|
112
112
|
return !!result;
|
|
113
113
|
}
|
|
114
114
|
}
|
|
115
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3dpdGNoR3JhcGhOb2RlRXhlY3V0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvZ3JhcGgvZW5naW5lL2V4ZWN1dGlvbi9Td2l0Y2hHcmFwaE5vZGVFeGVjdXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFrQkEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLDJDQUFzQztBQUNwRSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsbURBQThDO0FBR3JGOzs7Ozs7R0FNRztBQUNILFNBQVMsa0JBQWtCLENBQ3pCLE9BQThCO0lBRTlCLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLFFBRXBCLENBQUM7SUFDZCxJQUFJLENBQUMsSUFBSTtRQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxDQUFDO0lBQzFFLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQW1DLENBQUM7SUFDcEUsSUFBSSxDQUFDLFVBQVUsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDcEQsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDakUsQ0FBQztJQUNELE9BQU87UUFDTCxLQUFLLEVBQUUsVUFBVSxDQUFDLEtBQUs7UUFDdkIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxXQUFXLElBQUksU0FBUztRQUNoRCxVQUFVLEVBQUUsVUFBVSxDQUFDLFVBQVUsS0FBSyxLQUFLO0tBQzVDLENBQUM7QUFDSixDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFTLGVBQWUsQ0FBQyxJQUF5QjtJQUNoRCxPQUFPLENBQ0wsT0FBTyxJQUFJLEtBQUssUUFBUTtRQUN4QixJQUFJLEtBQUss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QUMsUUFBK0MsQ0FBQztRQUVuRSxNQUFNLE1BQU0sR0FBRyxNQUFNLFNBQVMsQ0FBQyxRQUFRLENBQUM7WUFDdEMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJO1lBQ3BCLFFBQVEsRUFBRSxTQUFTLENBQUMsUUFBUTtZQUM1QixLQUFLO1lBQ0wsSUFBSSxFQUFHLEVBQUUsRUFBRSxJQUE0QyxJQUFJLFNBQVM7WUFDcEUsSUFBSSxFQUFFLEVBQUUsRUFBRSxJQUFJO1lBQ2QsS0FBSyxFQUFFLEVBQUUsRUFBRSxLQUEyQjtZQUN0QyxLQUFLLEVBQ0YsRUFBRSxFQUFFLEtBQTZEO2dCQUNsRSxTQUFTO1lBQ1gsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUVIO1NBQ2QsQ0FBQyxDQUFDO1FBRUgsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ2xCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQG1vZHVsZSBpbnRlZ3JhdGlvbnMvZ3JhcGgvZXhlY3V0aW9uL1N3aXRjaEdyYXBoTm9kZUV4ZWN1dG9yXG4gKiBAc3VtbWFyeSBFeGVjdXRvciBmb3IgdGhlIFN3aXRjaCBmbG93LWNvbnRyb2wgbm9kZSAoREVDQUYtMzIgwqcyMi4yLjIpLlxuICogQGRlc2NyaXB0aW9uIEV2YWx1YXRlcyBlYWNoIGNhc2UncyBjb25kaXRpb24gYWdhaW5zdCB0aGUgbm9kZSdzIGlucHV0IGFuZFxuICogcm91dGVzIHRoZSBpbnB1dCB0byB0aGUgZmlyc3QgbWF0Y2hpbmcgY2FzZSdzIG91dHB1dCBwb3J0LiBGYWxscyBiYWNrIHRvXG4gKiB0aGUgYGRlZmF1bHRgIG91dHB1dCB3aGVuIG5vIGNhc2UgbWF0Y2hlcy4gU3VwcG9ydHMgYm90aFxuICoge0BsaW5rIENvbmRpdGlvbkV4cHJlc3Npb259IChncmFwaGljYWwgbW9kZSkgYW5kIHtAbGluayBDb2RlQ29uZGl0aW9ufVxuICogKGNvZGUgbW9kZSB2aWEgdGhlIHBsdWdnYWJsZSB7QGxpbmsgQ29kZVNhbmRib3hFdmFsdWF0b3J9KS5cbiAqL1xuaW1wb3J0IHR5cGUgeyBHcmFwaE5vZGVFeGVjdXRvciB9IGZyb20gXCIuL0dyYXBoTm9kZUV4ZWN1dG9yXCI7XG5pbXBvcnQgdHlwZSB7IEdyYXBoRXhlY3V0aW9uQ29udGV4dCB9IGZyb20gXCIuL0dyYXBoRXhlY3V0aW9uQ29udGV4dFwiO1xuaW1wb3J0IHR5cGUgeyBHcmFwaEV4ZWN1dGlvblZhbHVlcyB9IGZyb20gXCIuLi90eXBlc1wiO1xuaW1wb3J0IHR5cGUge1xuICBTd2l0Y2hDYXNlQ29uZGl0aW9uLFxuICBTd2l0Y2hOb2RlTWV0YWRhdGEsXG4gIENvbmRpdGlvbkV4cHJlc3Npb24sXG4gIENvZGVDb25kaXRpb24sXG59IGZyb20gXCIuLi8uLi9zaGFyZWQvdHlwZXNcIjtcbmltcG9ydCB7IEdyYXBoRXhlY3V0aW9uRXJyb3IgfSBmcm9tIFwiLi4vZXJyb3JzL0dyYXBoRXhlY3V0aW9uRXJyb3JcIjtcbmltcG9ydCB7IENvbmRpdGlvbkV4cHJlc3Npb25FdmFsdWF0b3IgfSBmcm9tIFwiLi4vbG9vcHMvQ29uZGl0aW9uRXhwcmVzc2lvbkV2YWx1YXRvclwiO1xuaW1wb3J0IHR5cGUgeyBDb2RlU2FuZGJveEV2YWx1YXRvciB9IGZyb20gXCIuL0NvZGVTYW5kYm94RXZhbHVhdG9yXCI7XG5cbi8qKlxuICogUmVhZHMgdGhlIFN3aXRjaCBtZXRhZGF0YSBmcm9tIHRoZSBub2RlIGRlZmluaXRpb24ncyBncmFwaCBtZXRhZGF0YS5cbiAqXG4gKiBUaGUgbWV0YWRhdGEgaXMgc3RvcmVkIHVuZGVyIGBncmFwaC5tZXRhZGF0YS5zd2l0Y2hgICh0aGUgbG9jYXRpb24gdXNlZCBieVxuICogc3RhdGljYWxseS1kZWNsYXJlZCBgQG5vZGVgIHdvcmtmbG93cykuIFdoZW4gYWJzZW50LCBmYWxscyBiYWNrIHRvIGFuIGVtcHR5XG4gKiBkZWZhdWx0IHdpdGggdGhlIGBkZWZhdWx0YCBwb3J0IGVuYWJsZWQuXG4gKi9cbmZ1bmN0aW9uIHJlYWRTd2l0Y2hNZXRhZGF0YShcbiAgY29udGV4dDogR3JhcGhFeGVjdXRpb25Db250ZXh0XG4pOiBTd2l0Y2hOb2RlTWV0YWRhdGEge1xuICBjb25zdCBtZXRhID0gY29udGV4dC5ub2RlLmdyYXBoPy5tZXRhZGF0YSBhc1xuICAgIHwgUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICB8IHVuZGVmaW5lZDtcbiAgaWYgKCFtZXRhKSByZXR1cm4geyBjYXNlczogW10sIGRlZmF1bHRQb3J0OiBcImRlZmF1bHRcIiwgaGFzRGVmYXVsdDogdHJ1ZSB9O1xuICBjb25zdCBzd2l0Y2hNZXRhID0gbWV0YVtcInN3aXRjaFwiXSBhcyBTd2l0Y2hOb2RlTWV0YWRhdGEgfCB1bmRlZmluZWQ7XG4gIGlmICghc3dpdGNoTWV0YSB8fCAhQXJyYXkuaXNBcnJheShzd2l0Y2hNZXRhLmNhc2VzKSkge1xuICAgIHJldHVybiB7IGNhc2VzOiBbXSwgZGVmYXVsdFBvcnQ6IFwiZGVmYXVsdFwiLCBoYXNEZWZhdWx0OiB0cnVlIH07XG4gIH1cbiAgcmV0dXJuIHtcbiAgICBjYXNlczogc3dpdGNoTWV0YS5jYXNlcyxcbiAgICBkZWZhdWx0UG9ydDogc3dpdGNoTWV0YS5kZWZhdWx0UG9ydCA/PyBcImRlZmF1bHRcIixcbiAgICBoYXNEZWZhdWx0OiBzd2l0Y2hNZXRhLmhhc0RlZmF1bHQgIT09IGZhbHNlLFxuICB9O1xufVxuXG4vKipcbiAqIERldGVjdHMgd2hldGhlciBhIGNvbmRpdGlvbiBpcyBhIGBDb2RlQ29uZGl0aW9uYCAoaGFzIGB0eXBlOiBcImNvZGVcImApLlxuICovXG5mdW5jdGlvbiBpc0NvZGVDb25kaXRpb24oY29uZDogU3dpdGNoQ2FzZUNvbmRpdGlvbik6IGNvbmQgaXMgQ29kZUNvbmRpdGlvbiB7XG4gIHJldHVybiAoXG4gICAgdHlwZW9mIGNvbmQgPT09IFwib2JqZWN0XCIgJiZcbiAgICBjb25kICE9PSBudWxsICYmXG4gICAgXCJ0eXBlXCIgaW4gY29uZCAmJlxuICAgIGNvbmQudHlwZSA9PT0gXCJjb2RlXCJcbiAgKTtcbn1cblxuLyoqXG4gKiBEZXRlY3RzIHdoZXRoZXIgYSBjb25kaXRpb24gaXMgYSBgQ29uZGl0aW9uRXhwcmVzc2lvbmAgKGhhcyBgb3BgIGZpZWxkKS5cbiAqL1xuZnVuY3Rpb24gaXNDb25kaXRpb25FeHByZXNzaW9uKFxuICBjb25kOiBTd2l0Y2hDYXNlQ29uZGl0aW9uXG4pOiBjb25kIGlzIENvbmRpdGlvbkV4cHJlc3Npb24ge1xuICByZXR1cm4gKFxuICAgIHR5cGVvZiBjb25kID09PSBcIm9iamVjdFwiICYmXG4gICAgY29uZCAhPT0gbnVsbCAmJlxuICAgIFwib3BcIiBpbiBjb25kICYmXG4gICAgdHlwZW9mIGNvbmQub3AgPT09IFwic3RyaW5nXCJcbiAgKTtcbn1cblxuLyoqXG4gKiBFeGVjdXRvciBmb3IgYGNvcmUuZmxvdy5zd2l0Y2hgIG5vZGVzLlxuICpcbiAqIEV2YWx1YXRlcyBlYWNoIGNhc2UncyBjb25kaXRpb24gaW4gb3JkZXIgYW5kIHJvdXRlcyB0aGUgaW5wdXQgdG8gdGhlXG4gKiBmaXJzdCBtYXRjaGluZyBjYXNlJ3Mgb3V0cHV0IHBvcnQuIFdoZW4gbm8gY2FzZSBtYXRjaGVzOlxuICogLSBJZiBgaGFzRGVmYXVsdGAgaXMgYHRydWVgIChvciBvbWl0dGVkKSwgcm91dGVzIHRvIHRoZSBgZGVmYXVsdGAgb3V0cHV0IHBvcnQuXG4gKiAtIElmIGBoYXNEZWZhdWx0YCBpcyBgZmFsc2VgLCByZXR1cm5zIGFuIGVtcHR5IG91dHB1dCAodGhlIGlucHV0IGlzIGRyb3BwZWQpLlxuICpcbiAqIENvbmRpdGlvbiBldmFsdWF0aW9uOlxuICogLSBgQ29uZGl0aW9uRXhwcmVzc2lvbmAg4oCUIGV2YWx1YXRlZCB2aWEge0BsaW5rIENvbmRpdGlvbkV4cHJlc3Npb25FdmFsdWF0b3J9LlxuICogLSBgQ29kZUNvbmRpdGlvbmAg4oCUIGV2YWx1YXRlZCB2aWEgdGhlIHBsdWdnYWJsZSB7QGxpbmsgQ29kZVNhbmRib3hFdmFsdWF0b3J9XG4gKiAgIGZyb20gdGhlIGVuZ2luZSdzIGNvbmZpZy4gVGhyb3dzIGBHUkFQSF9DT0RFX1NBTkRCT1hfTk9UX0NPTkZJR1VSRURgXG4gKiAgIHdoZW4gbm8gZXZhbHVhdG9yIGlzIHJlZ2lzdGVyZWQuXG4gKi9cbmV4cG9ydCBjbGFzcyBTd2l0Y2hHcmFwaE5vZGVFeGVjdXRvciBpbXBsZW1lbnRzIEdyYXBoTm9kZUV4ZWN1dG9yIHtcbiAgcHJpdmF0ZSByZWFkb25seSBleHByZXNzaW9uRXZhbHVhdG9yID0gbmV3IENvbmRpdGlvbkV4cHJlc3Npb25FdmFsdWF0b3IoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVuZ2luZT86IHsgY29kZVNhbmRib3hFdmFsdWF0b3I/OiBDb2RlU2FuZGJveEV2YWx1YXRvciB9XG4gICkge31cblxuICBhc3luYyBleGVjdXRlKFxuICAgIGlucHV0OiBHcmFwaEV4ZWN1dGlvblZhbHVlcyxcbiAgICBjb250ZXh0OiBHcmFwaEV4ZWN1dGlvbkNvbnRleHRcbiAgKTogUHJvbWlzZTxHcmFwaEV4ZWN1dGlvblZhbHVlcz4ge1xuICAgIGNvbnN0IG1ldGEgPSByZWFkU3dpdGNoTWV0YWRhdGEoY29udGV4dCk7XG4gICAgY29uc3QgaW5wdXRWYWx1ZSA9IGlucHV0W1widmFsdWVcIl0gPz8gaW5wdXQ7XG5cbiAgICBmb3IgKGNvbnN0IHN3aXRjaENhc2Ugb2YgbWV0YS5jYXNlcykge1xuICAgICAgY29uc3QgbWF0Y2hlcyA9IGF3YWl0IHRoaXMuZXZhbHVhdGVDb25kaXRpb24oXG4gICAgICAgIHN3aXRjaENhc2UuY29uZGl0aW9uLFxuICAgICAgICBpbnB1dFZhbHVlLFxuICAgICAgICBpbnB1dCxcbiAgICAgICAgY29udGV4dFxuICAgICAgKTtcbiAgICAgIGlmIChtYXRjaGVzKSB7XG4gICAgICAgIHJldHVybiB7IFtzd2l0Y2hDYXNlLm91dHB1dFBvcnRdOiBpbnB1dFZhbHVlIH07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTm8gY2FzZSBtYXRjaGVkIOKAlCByb3V0ZSB0byB0aGUgZGVmYXVsdCBwb3J0IHdoZW4gaXQgaXMgZW5hYmxlZC5cbiAgICBpZiAobWV0YS5oYXNEZWZhdWx0ID09PSBmYWxzZSkge1xuICAgICAgcmV0dXJuIHt9O1xuICAgIH1cbiAgICBjb25zdCBkZWZhdWx0UG9ydCA9IG1ldGEuZGVmYXVsdFBvcnQgPz8gXCJkZWZhdWx0XCI7XG4gICAgcmV0dXJuIHsgW2RlZmF1bHRQb3J0XTogaW5wdXRWYWx1ZSB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEV2YWx1YXRlcyBhIHNpbmdsZSBzd2l0Y2ggY2FzZSBjb25kaXRpb24uXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIGV2YWx1YXRlQ29uZGl0aW9uKFxuICAgIGNvbmRpdGlvbjogU3dpdGNoQ2FzZUNvbmRpdGlvbixcbiAgICBpbnB1dFZhbHVlOiB1bmtub3duLFxuICAgIGZ1bGxJbnB1dDogR3JhcGhFeGVjdXRpb25WYWx1ZXMsXG4gICAgY29udGV4dDogR3JhcGhFeGVjdXRpb25Db250ZXh0XG4gICk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGlmIChpc0NvZGVDb25kaXRpb24oY29uZGl0aW9uKSkge1xuICAgICAgcmV0dXJuIHRoaXMuZXZhbHVhdGVDb2RlQ29uZGl0aW9uKGNvbmRpdGlvbiwgZnVsbElucHV0LCBjb250ZXh0KTtcbiAgICB9XG5cbiAgICBpZiAoaXNDb25kaXRpb25FeHByZXNzaW9uKGNvbmRpdGlvbikpIHtcbiAgICAgIHJldHVybiB0aGlzLmV4cHJlc3Npb25FdmFsdWF0b3IuZXZhbHVhdGUoY29uZGl0aW9uLCBpbnB1dFZhbHVlKTtcbiAgICB9XG5cbiAgICB0aHJvdyBuZXcgR3JhcGhFeGVjdXRpb25FcnJvcihcbiAgICAgIFwiVW5rbm93biBzd2l0Y2ggY2FzZSBjb25kaXRpb24gdHlwZSDigJQgbXVzdCBiZSBDb25kaXRpb25FeHByZXNzaW9uIChvcCkgb3IgQ29kZUNvbmRpdGlvbiAodHlwZTogJ2NvZGUnKVwiLFxuICAgICAgXCJHUkFQSF9VTktOT1dOX1NXSVRDSF9DT05ESVRJT05cIixcbiAgICAgIHsgY29uZGl0aW9uIH1cbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEV2YWx1YXRlcyBhIGNvZGUgY29uZGl0aW9uIHZpYSB0aGUgcGx1Z2dhYmxlIHNhbmRib3ggZXZhbHVhdG9yLlxuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBldmFsdWF0ZUNvZGVDb25kaXRpb24oXG4gICAgY29uZGl0aW9uOiBDb2RlQ29uZGl0aW9uLFxuICAgIGlucHV0OiBHcmFwaEV4ZWN1dGlvblZhbHVlcyxcbiAgICBjb250ZXh0OiBHcmFwaEV4ZWN1dGlvbkNvbnRleHRcbiAgKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgZXZhbHVhdG9yID0gdGhpcy5lbmdpbmU/LmNvZGVTYW5kYm94RXZhbHVhdG9yO1xuICAgIGlmICghZXZhbHVhdG9yKSB7XG4gICAgICB0aHJvdyBuZXcgR3JhcGhFeGVjdXRpb25FcnJvcihcbiAgICAgICAgXCJDb2RlIGNvbmRpdGlvbnMgcmVxdWlyZSBhIENvZGVTYW5kYm94RXZhbHVhdG9yIHRvIGJlIHJlZ2lzdGVyZWQgaW4gR3JhcGhFeGVjdXRpb25FbmdpbmVDb25maWcuY29kZVNhbmRib3hFdmFsdWF0b3JcIixcbiAgICAgICAgXCJHUkFQSF9DT0RFX1NBTkRCT1hfTk9UX0NPTkZJR1VSRURcIixcbiAgICAgICAgeyBjb2RlOiBjb25kaXRpb24uY29kZSB9XG4gICAgICApO1xuICAgIH1cblxuICAgIGF3YWl0IGNvbnRleHQubG9nKGBFdmFsdWF0aW5nIGNvZGUgY29uZGl0aW9uYCwge1xuICAgICAgbGFuZ3VhZ2U6IGNvbmRpdGlvbi5sYW5ndWFnZSA/PyBcImphdmFzY3JpcHRcIixcbiAgICB9KTtcblxuICAgIGNvbnN0IG1kID0gY29udGV4dC5tZXRhZGF0YSBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB8IHVuZGVmaW5lZDtcblxuICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGV2YWx1YXRvci5ldmFsdWF0ZSh7XG4gICAgICBjb2RlOiBjb25kaXRpb24uY29kZSxcbiAgICAgIGxhbmd1YWdlOiBjb25kaXRpb24ubGFuZ3VhZ2UsXG4gICAgICBpbnB1dCxcbiAgICAgIHZhcnM6IChtZD8udmFycyBhcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB8IHVuZGVmaW5lZCkgPz8gdW5kZWZpbmVkLFxuICAgICAgaXRlbTogbWQ/Lml0ZW0sXG4gICAgICBpbmRleDogbWQ/LmluZGV4IGFzIG51bWJlciB8IHVuZGVmaW5lZCxcbiAgICAgIG5vZGVzOlxuICAgICAgICAobWQ/Lm5vZGVzIGFzIFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIHVua25vd24+PiB8IHVuZGVmaW5lZCkgPz9cbiAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgbG9nZ2VyOiBjb250ZXh0LmxvZ2dlciBhcyB1bmtub3duIGFzXG4gICAgICAgIHwgaW1wb3J0KFwiLi9Db2RlU2FuZGJveEV2YWx1YXRvclwiKS5TYW5kYm94TG9nZ2VyXG4gICAgICAgIHwgdW5kZWZpbmVkLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuICEhcmVzdWx0O1xuICB9XG59XG4iXX0=
|
|
115
|
+
//# sourceMappingURL=SwitchGraphNodeExecutor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SwitchGraphNodeExecutor.js","sourceRoot":"","sources":["../../../../../src/graph/engine/execution/SwitchGraphNodeExecutor.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,4 +13,4 @@ export * from "./SwitchGraphNodeExecutor.js";
|
|
|
13
13
|
export * from "./CodeGraphNodeExecutor.js";
|
|
14
14
|
export * from "./LogGraphNodeExecutor.js";
|
|
15
15
|
export * from "./IsolatedVmCodeSandboxEvaluator.js";
|
|
16
|
-
//# sourceMappingURL=
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/graph/engine/execution/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,2CAAwC;AACxC,uCAAoC;AACpC,0CAAuC;AACvC,yCAAsC;AACtC,0CAAuC;AACvC,0CAAuC;AACvC,6CAA0C;AAC1C,2CAAwC;AACxC,0CAAuC;AACvC,oDAAiD"}
|
|
@@ -67,4 +67,4 @@ export * from "./pinning/GraphPinningDependencyResolver.js";
|
|
|
67
67
|
export * from "./pinning/GraphPinningService.js";
|
|
68
68
|
// Snapshots (TASK-219)
|
|
69
69
|
export * from "./snapshots/GraphExecutionSnapshotMapper.js";
|
|
70
|
-
//# sourceMappingURL=
|
|
70
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/graph/engine/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,8EAA8E;AAC9E,qCAA0B;AAE1B,+BAA4B;AAC5B,2BAAwB;AACxB,gCAA6B;AAE7B,gDAA6C;AAC7C,4CAAyC;AACzC,4CAAyC;AACzC,gDAA6C;AAC7C,8CAA2C;AAC3C,2CAAwC;AACxC,4CAAyC;AACzC,+CAA4C;AAE5C,gDAA6C;AAC7C,mDAAgD;AAChD,uDAAoD;AACpD,uDAAoD;AAEpD,qDAAkD;AAClD,iDAA8C;AAC9C,mDAAgD;AAChD,oDAAiD;AACjD,oDAAiD;AACjD,oDAAiD;AACjD,uDAAoD;AACpD,qDAAkD;AAClD,oDAAiD;AACjD,8DAA2D;AAE3D,wDAAqD;AACrD,wDAAqD;AAErD,yCAAsC;AACtC,4CAAyC;AACzC,kDAA+C;AAC/C,0DAAuD;AACvD,2CAAwC;AAExC,qDAAkD;AAClD,qDAAkD;AAClD,sDAAmD;AACnD,iDAA8C;AAC9C,oDAAiD;AACjD,oDAAiD;AACjD,4CAAyC;AAEzC,wBAAwB;AACxB,yDAAsD;AACtD,wDAAqD;AACrD,oDAAiD;AAEjD,mBAAmB;AACnB,mDAAgD;AAChD,wDAAqD;AACrD,qDAAkD;AAClD,oDAAiD;AACjD,kDAA+C;AAC/C,kDAA+C;AAE/C,yBAAyB;AACzB,kDAA+C;AAC/C,gDAA6C;AAC7C,4DAAyD;AACzD,iDAA8C;AAE9C,uBAAuB;AACvB,4DAAyD"}
|
|
@@ -79,4 +79,4 @@ export class ConditionExpressionEvaluator {
|
|
|
79
79
|
return current;
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
|
-
//# sourceMappingURL=
|
|
82
|
+
//# sourceMappingURL=ConditionExpressionEvaluator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConditionExpressionEvaluator.js","sourceRoot":"","sources":["../../../../../src/graph/engine/loops/ConditionExpressionEvaluator.ts"],"names":[],"mappings":"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"}
|
|
@@ -78,4 +78,4 @@ export class ForeachGraphNodeExecutor {
|
|
|
78
78
|
return raw;
|
|
79
79
|
}
|
|
80
80
|
}
|
|
81
|
-
//# sourceMappingURL=
|
|
81
|
+
//# sourceMappingURL=ForeachGraphNodeExecutor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ForeachGraphNodeExecutor.js","sourceRoot":"","sources":["../../../../../src/graph/engine/loops/ForeachGraphNodeExecutor.ts"],"names":[],"mappings":"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"}
|
|
@@ -77,4 +77,4 @@ export class GraphConditionEvaluator {
|
|
|
77
77
|
return typeof condition.op === "string";
|
|
78
78
|
}
|
|
79
79
|
}
|
|
80
|
-
//# sourceMappingURL=
|
|
80
|
+
//# sourceMappingURL=GraphConditionEvaluator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GraphConditionEvaluator.js","sourceRoot":"","sources":["../../../../../src/graph/engine/loops/GraphConditionEvaluator.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,kBAAkB,EAAE,0BAAqB;AAClD,OAAO,EAAE,mBAAmB,EAAE,2CAAsC;AACpE,OAAO,EAAE,4BAA4B,EAAE,0CAAuC;AAE9E;;;GAGG;AACH,MAAM,OAAO,uBAAuB;IAApC;QACmB,wBAAmB,GAAG,IAAI,4BAA4B,EAAE,CAAC;IA8E5E,CAAC;IA5EC;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,SAAyD,EAAE,KAAc;QAChF,IAAI,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC7D,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACtD,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;QAE9B,QAAQ,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,KAAK,kBAAkB,CAAC,MAAM;gBAC5B,OAAO,CAAC,CAAC,IAAI,CAAC;YAChB,KAAK,kBAAkB,CAAC,KAAK;gBAC3B,OAAO,CAAC,IAAI,CAAC;YACf,KAAK,kBAAkB,CAAC,MAAM;gBAC5B,OAAO,IAAI,KAAK,KAAK,CAAC;YACxB,KAAK,kBAAkB,CAAC,UAAU;gBAChC,OAAO,IAAI,KAAK,KAAK,CAAC;YACxB,KAAK,kBAAkB,CAAC,YAAY;gBAClC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YACtC,KAAK,kBAAkB,CAAC,qBAAqB;gBAC3C,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC;YACvC,KAAK,kBAAkB,CAAC,SAAS;gBAC/B,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YACtC,KAAK,kBAAkB,CAAC,kBAAkB;gBACxC,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC;YACvC,KAAK,kBAAkB,CAAC,MAAM;gBAC5B,OAAO,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,CAAC;YAC7C,KAAK,kBAAkB,CAAC,MAAM;gBAC5B,MAAM,IAAI,mBAAmB,CAC3B,qDAAqD,EACrD,oCAAoC,CACrC,CAAC;YACJ;gBACE,MAAM,IAAI,mBAAmB,CAC3B,2BAA2B,SAAS,CAAC,IAAI,GAAG,EAC5C,8BAA8B,EAC9B,EAAE,SAAS,EAAE,CACd,CAAC;QACN,CAAC;IACH,CAAC;IAED;;OAEG;IACK,YAAY,CAAC,IAAwB,EAAE,KAAc;QAC3D,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAC;QACxB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,OAAO,GAAY,KAAK,CAAC;QAC7B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,OAAO,IAAI,IAAI;gBAAE,OAAO,SAAS,CAAC;YACtC,OAAO,GAAI,OAAmC,CAAC,IAAI,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;;OAKG;IACK,qBAAqB,CAAC,SAAyD;QACrF,OAAO,OAAQ,SAAwC,CAAC,EAAE,KAAK,QAAQ,CAAC;IAC1E,CAAC;CACF"}
|
|
@@ -8,4 +8,4 @@ export class GraphLoopExecutionContext {
|
|
|
8
8
|
this.metadata = metadata;
|
|
9
9
|
}
|
|
10
10
|
}
|
|
11
|
-
//# sourceMappingURL=
|
|
11
|
+
//# sourceMappingURL=GraphLoopExecutionContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GraphLoopExecutionContext.js","sourceRoot":"","sources":["../../../../../src/graph/engine/loops/GraphLoopExecutionContext.ts"],"names":[],"mappings":"AAOA;;;GAGG;AACH,MAAM,OAAO,yBAAyB;IAIpC,YAAY,SAAiB,EAAE,QAA2B;QACxD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;CACF"}
|