@harperfast/harper 5.2.10 → 5.3.0-alpha.1
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/agent/mcpTools.ts +1 -1
- package/agent/session.ts +25 -14
- package/bin/cliOperations.ts +46 -9
- package/bin/copyDb.ts +282 -59
- package/bin/deploySetup.ts +16 -5
- package/bin/harper.ts +1 -1
- package/bin/help.ts +4 -1
- package/bin/lite.ts +4 -1
- package/bin/restart.ts +59 -3
- package/bin/run.ts +6 -11
- package/bin/upgrade.js +7 -3
- package/bin/workloadIdentity.ts +119 -0
- package/components/Application.ts +2414 -242
- package/components/ApplicationScope.ts +8 -0
- package/components/EntryHandler.ts +59 -39
- package/components/OptionsWatcher.ts +150 -74
- package/components/RuntimeModuleTracker.ts +38 -7
- package/components/Scope.ts +37 -15
- package/components/awaitRestart.ts +84 -0
- package/components/componentLoader.ts +340 -30
- package/components/componentPreparationLock.ts +16 -5
- package/components/mcp/adapters/harperHttp.ts +4 -0
- package/components/mcp/listChanged.ts +4 -0
- package/components/mcp/toolRegistry.ts +2 -0
- package/components/mcp/tools/operations.ts +9 -0
- package/components/mcp/tools/schemas/operationDescriptions.ts +2 -2
- package/components/operations.js +270 -78
- package/components/operationsValidation.js +49 -1
- package/components/status/ComponentStatusRegistry.ts +59 -0
- package/config/RootConfigWatcher.ts +80 -34
- package/config/configUtils.ts +291 -34
- package/config/harperConfigEnvVars.ts +170 -27
- package/config-root.schema.json +29 -0
- package/dataLayer/blobBackup.ts +160 -50
- package/dataLayer/delete.ts +6 -1
- package/dataLayer/harperBridge/ResourceBridge.ts +52 -8
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.js +3 -1
- package/dataLayer/hdbInfoController.ts +34 -1
- package/dataLayer/insert.ts +44 -1
- package/dataLayer/rocksdbBackup.ts +53 -10
- package/dataLayer/schema.ts +11 -1
- package/dataLayer/schemaDescribe.ts +8 -1
- package/dist/agent/mcpTools.js +1 -1
- package/dist/agent/mcpTools.js.map +1 -1
- package/dist/agent/session.d.ts +22 -0
- package/dist/agent/session.js +26 -15
- package/dist/agent/session.js.map +1 -1
- package/dist/bin/cliOperations.js +48 -9
- package/dist/bin/cliOperations.js.map +1 -1
- package/dist/bin/copyDb.d.ts +12 -1
- package/dist/bin/copyDb.js +248 -60
- package/dist/bin/copyDb.js.map +1 -1
- package/dist/bin/deploySetup.d.ts +2 -0
- package/dist/bin/deploySetup.js +11 -3
- package/dist/bin/deploySetup.js.map +1 -1
- package/dist/bin/harper.js +1 -1
- package/dist/bin/harper.js.map +1 -1
- package/dist/bin/help.js +4 -1
- package/dist/bin/help.js.map +1 -1
- package/dist/bin/lite.js +4 -1
- package/dist/bin/lite.js.map +1 -1
- package/dist/bin/restart.js +54 -5
- package/dist/bin/restart.js.map +1 -1
- package/dist/bin/run.js +4 -10
- package/dist/bin/run.js.map +1 -1
- package/dist/bin/upgrade.js +4 -3
- package/dist/bin/upgrade.js.map +1 -1
- package/dist/bin/workloadIdentity.d.ts +18 -0
- package/dist/bin/workloadIdentity.js +100 -0
- package/dist/bin/workloadIdentity.js.map +1 -0
- package/dist/components/Application.d.ts +139 -16
- package/dist/components/Application.js +2215 -267
- package/dist/components/Application.js.map +1 -1
- package/dist/components/ApplicationScope.d.ts +8 -0
- package/dist/components/ApplicationScope.js +7 -0
- package/dist/components/ApplicationScope.js.map +1 -1
- package/dist/components/EntryHandler.js +26 -10
- package/dist/components/EntryHandler.js.map +1 -1
- package/dist/components/OptionsWatcher.d.ts +1 -0
- package/dist/components/OptionsWatcher.js +141 -74
- package/dist/components/OptionsWatcher.js.map +1 -1
- package/dist/components/RuntimeModuleTracker.js +40 -6
- package/dist/components/RuntimeModuleTracker.js.map +1 -1
- package/dist/components/Scope.js +38 -13
- package/dist/components/Scope.js.map +1 -1
- package/dist/components/awaitRestart.d.ts +33 -0
- package/dist/components/awaitRestart.js +61 -0
- package/dist/components/awaitRestart.js.map +1 -0
- package/dist/components/componentLoader.d.ts +38 -1
- package/dist/components/componentLoader.js +279 -22
- package/dist/components/componentLoader.js.map +1 -1
- package/dist/components/componentPreparationLock.d.ts +5 -0
- package/dist/components/componentPreparationLock.js +14 -6
- package/dist/components/componentPreparationLock.js.map +1 -1
- package/dist/components/mcp/adapters/harperHttp.js +4 -0
- package/dist/components/mcp/adapters/harperHttp.js.map +1 -1
- package/dist/components/mcp/listChanged.js +5 -0
- package/dist/components/mcp/listChanged.js.map +1 -1
- package/dist/components/mcp/toolRegistry.d.ts +1 -0
- package/dist/components/mcp/toolRegistry.js.map +1 -1
- package/dist/components/mcp/tools/operations.d.ts +5 -0
- package/dist/components/mcp/tools/operations.js +9 -0
- package/dist/components/mcp/tools/operations.js.map +1 -1
- package/dist/components/mcp/tools/schemas/operationDescriptions.js +2 -2
- package/dist/components/mcp/tools/schemas/operationDescriptions.js.map +1 -1
- package/dist/components/operations.js +231 -77
- package/dist/components/operations.js.map +1 -1
- package/dist/components/operationsValidation.js +49 -1
- package/dist/components/operationsValidation.js.map +1 -1
- package/dist/components/status/ComponentStatusRegistry.d.ts +0 -4
- package/dist/components/status/ComponentStatusRegistry.js +63 -0
- package/dist/components/status/ComponentStatusRegistry.js.map +1 -1
- package/dist/config/RootConfigWatcher.d.ts +7 -1
- package/dist/config/RootConfigWatcher.js +64 -27
- package/dist/config/RootConfigWatcher.js.map +1 -1
- package/dist/config/configUtils.d.ts +9 -1
- package/dist/config/configUtils.js +254 -33
- package/dist/config/configUtils.js.map +1 -1
- package/dist/config/harperConfigEnvVars.d.ts +16 -0
- package/dist/config/harperConfigEnvVars.js +162 -25
- package/dist/config/harperConfigEnvVars.js.map +1 -1
- package/dist/dataLayer/blobBackup.d.ts +49 -20
- package/dist/dataLayer/blobBackup.js +139 -50
- package/dist/dataLayer/blobBackup.js.map +1 -1
- package/dist/dataLayer/delete.js +1 -1
- package/dist/dataLayer/delete.js.map +1 -1
- package/dist/dataLayer/harperBridge/ResourceBridge.d.ts +14 -1
- package/dist/dataLayer/harperBridge/ResourceBridge.js +51 -10
- package/dist/dataLayer/harperBridge/ResourceBridge.js.map +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.d.ts +3 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.js +3 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.js.map +1 -1
- package/dist/dataLayer/hdbInfoController.d.ts +10 -0
- package/dist/dataLayer/hdbInfoController.js +30 -1
- package/dist/dataLayer/hdbInfoController.js.map +1 -1
- package/dist/dataLayer/insert.d.ts +9 -1
- package/dist/dataLayer/insert.js +30 -0
- package/dist/dataLayer/insert.js.map +1 -1
- package/dist/dataLayer/rocksdbBackup.d.ts +2 -2
- package/dist/dataLayer/rocksdbBackup.js +45 -8
- package/dist/dataLayer/rocksdbBackup.js.map +1 -1
- package/dist/dataLayer/schema.js +8 -0
- package/dist/dataLayer/schema.js.map +1 -1
- package/dist/dataLayer/schemaDescribe.js +8 -1
- package/dist/dataLayer/schemaDescribe.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js.map +1 -1
- package/dist/json/systemSchema.json +52 -0
- package/dist/resources/DatabaseTransaction.d.ts +55 -3
- package/dist/resources/DatabaseTransaction.js +460 -134
- package/dist/resources/DatabaseTransaction.js.map +1 -1
- package/dist/resources/LMDBTransaction.js +22 -4
- package/dist/resources/LMDBTransaction.js.map +1 -1
- package/dist/resources/PrimaryRocksDatabase.d.ts +1 -0
- package/dist/resources/PrimaryRocksDatabase.js +30 -2
- package/dist/resources/PrimaryRocksDatabase.js.map +1 -1
- package/dist/resources/RecordEncoder.d.ts +20 -0
- package/dist/resources/RecordEncoder.js +94 -9
- package/dist/resources/RecordEncoder.js.map +1 -1
- package/dist/resources/RequestTarget.d.ts +2 -0
- package/dist/resources/RequestTarget.js.map +1 -1
- package/dist/resources/Resource.js +20 -11
- package/dist/resources/Resource.js.map +1 -1
- package/dist/resources/ResourceInterface.d.ts +20 -1
- package/dist/resources/ResourceInterface.js.map +1 -1
- package/dist/resources/RocksIndexStore.d.ts +6 -1
- package/dist/resources/RocksIndexStore.js +24 -10
- package/dist/resources/RocksIndexStore.js.map +1 -1
- package/dist/resources/RocksTransactionLogStore.d.ts +14 -1
- package/dist/resources/RocksTransactionLogStore.js +57 -17
- package/dist/resources/RocksTransactionLogStore.js.map +1 -1
- package/dist/resources/Table.d.ts +112 -8
- package/dist/resources/Table.js +1071 -197
- package/dist/resources/Table.js.map +1 -1
- package/dist/resources/auditStore.d.ts +11 -2
- package/dist/resources/auditStore.js +183 -18
- package/dist/resources/auditStore.js.map +1 -1
- package/dist/resources/blob.d.ts +129 -9
- package/dist/resources/blob.js +992 -114
- package/dist/resources/blob.js.map +1 -1
- package/dist/resources/branchDatabase.d.ts +48 -0
- package/dist/resources/branchDatabase.js +892 -0
- package/dist/resources/branchDatabase.js.map +1 -0
- package/dist/resources/crdt.js +50 -12
- package/dist/resources/crdt.js.map +1 -1
- package/dist/resources/databases.d.ts +150 -9
- package/dist/resources/databases.js +1247 -525
- package/dist/resources/databases.js.map +1 -1
- package/dist/resources/defineTable.d.ts +10 -2
- package/dist/resources/defineTable.js +9 -1
- package/dist/resources/defineTable.js.map +1 -1
- package/dist/resources/graphql.d.ts +1 -1
- package/dist/resources/graphql.js +50 -15
- package/dist/resources/graphql.js.map +1 -1
- package/dist/resources/indexes/HierarchicalNavigableSmallWorld.d.ts +1 -0
- package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js +6 -2
- package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js.map +1 -1
- package/dist/resources/longLivedTransactions.d.ts +71 -0
- package/dist/resources/longLivedTransactions.js +358 -0
- package/dist/resources/longLivedTransactions.js.map +1 -0
- package/dist/resources/models/backendRegistry.d.ts +26 -0
- package/dist/resources/models/backendRegistry.js +60 -2
- package/dist/resources/models/backendRegistry.js.map +1 -1
- package/dist/resources/models/bootstrap.d.ts +33 -1
- package/dist/resources/models/bootstrap.js +416 -31
- package/dist/resources/models/bootstrap.js.map +1 -1
- package/dist/resources/recordLock.d.ts +80 -0
- package/dist/resources/recordLock.js +184 -0
- package/dist/resources/recordLock.js.map +1 -0
- package/dist/resources/replayLogs.d.ts +14 -1
- package/dist/resources/replayLogs.js +152 -24
- package/dist/resources/replayLogs.js.map +1 -1
- package/dist/resources/replayLogsGuards.d.ts +94 -7
- package/dist/resources/replayLogsGuards.js +111 -7
- package/dist/resources/replayLogsGuards.js.map +1 -1
- package/dist/resources/search.js +158 -32
- package/dist/resources/search.js.map +1 -1
- package/dist/resources/transactionBroadcast.d.ts +1 -1
- package/dist/resources/transactionBroadcast.js +2 -2
- package/dist/resources/transactionBroadcast.js.map +1 -1
- package/dist/security/auth.js +61 -30
- package/dist/security/auth.js.map +1 -1
- package/dist/security/authn/oidc/claims.d.ts +22 -0
- package/dist/security/authn/oidc/claims.js +71 -0
- package/dist/security/authn/oidc/claims.js.map +1 -0
- package/dist/security/authn/oidc/identityToken.d.ts +27 -0
- package/dist/security/authn/oidc/identityToken.js +111 -0
- package/dist/security/authn/oidc/identityToken.js.map +1 -0
- package/dist/security/authn/oidc/jwks.d.ts +25 -0
- package/dist/security/authn/oidc/jwks.js +261 -0
- package/dist/security/authn/oidc/jwks.js.map +1 -0
- package/dist/security/authn/oidc/providers/generic.d.ts +13 -0
- package/dist/security/authn/oidc/providers/generic.js +34 -0
- package/dist/security/authn/oidc/providers/generic.js.map +1 -0
- package/dist/security/authn/oidc/providers/githubActions.d.ts +11 -0
- package/dist/security/authn/oidc/providers/githubActions.js +129 -0
- package/dist/security/authn/oidc/providers/githubActions.js.map +1 -0
- package/dist/security/authn/oidc/providers/index.d.ts +37 -0
- package/dist/security/authn/oidc/providers/index.js +24 -0
- package/dist/security/authn/oidc/providers/index.js.map +1 -0
- package/dist/security/authn/oidc/tokenExchange.d.ts +12 -0
- package/dist/security/authn/oidc/tokenExchange.js +306 -0
- package/dist/security/authn/oidc/tokenExchange.js.map +1 -0
- package/dist/security/authn/oidc/trustPolicyOperations.d.ts +49 -0
- package/dist/security/authn/oidc/trustPolicyOperations.js +358 -0
- package/dist/security/authn/oidc/trustPolicyOperations.js.map +1 -0
- package/dist/security/authn/oidc/types.d.ts +38 -0
- package/dist/security/authn/oidc/types.js +6 -0
- package/dist/security/authn/oidc/types.js.map +1 -0
- package/dist/security/certificateVerification/index.js +40 -11
- package/dist/security/certificateVerification/index.js.map +1 -1
- package/dist/security/certificateVerification/trustedIssuers.d.ts +24 -0
- package/dist/security/certificateVerification/trustedIssuers.js +79 -0
- package/dist/security/certificateVerification/trustedIssuers.js.map +1 -0
- package/dist/security/certificateVerification/types.d.ts +1 -0
- package/dist/security/credentialProvenance.d.ts +35 -0
- package/dist/security/credentialProvenance.js +51 -0
- package/dist/security/credentialProvenance.js.map +1 -0
- package/dist/security/credentialRejection.d.ts +4 -0
- package/dist/security/credentialRejection.js +24 -0
- package/dist/security/credentialRejection.js.map +1 -0
- package/dist/security/deferredAuthentication.d.ts +36 -0
- package/dist/security/deferredAuthentication.js +70 -0
- package/dist/security/deferredAuthentication.js.map +1 -0
- package/dist/security/impersonation.d.ts +21 -0
- package/dist/security/impersonation.js +108 -9
- package/dist/security/impersonation.js.map +1 -1
- package/dist/security/jsLoader.d.ts +6 -0
- package/dist/security/jsLoader.js +75 -15
- package/dist/security/jsLoader.js.map +1 -1
- package/dist/security/keys.js +301 -71
- package/dist/security/keys.js.map +1 -1
- package/dist/security/operationScope.d.ts +21 -0
- package/dist/security/operationScope.js +36 -0
- package/dist/security/operationScope.js.map +1 -0
- package/dist/security/permissionsTranslator.js +21 -0
- package/dist/security/permissionsTranslator.js.map +1 -1
- package/dist/security/tokenAuthentication.d.ts +19 -1
- package/dist/security/tokenAuthentication.js +191 -10
- package/dist/security/tokenAuthentication.js.map +1 -1
- package/dist/security/user.js +4 -3
- package/dist/security/user.js.map +1 -1
- package/dist/server/DurableSubscriptionsSession.d.ts +2 -2
- package/dist/server/DurableSubscriptionsSession.js +67 -10
- package/dist/server/DurableSubscriptionsSession.js.map +1 -1
- package/dist/server/REST.js +73 -0
- package/dist/server/REST.js.map +1 -1
- package/dist/server/graphqlQuerying.js +4 -0
- package/dist/server/graphqlQuerying.js.map +1 -1
- package/dist/server/http.d.ts +11 -0
- package/dist/server/http.js +88 -15
- package/dist/server/http.js.map +1 -1
- package/dist/server/itc/serverHandlers.js +8 -1
- package/dist/server/itc/serverHandlers.js.map +1 -1
- package/dist/server/jobs/jobProcess.js +6 -2
- package/dist/server/jobs/jobProcess.js.map +1 -1
- package/dist/server/jobs/jobs.js +4 -1
- package/dist/server/jobs/jobs.js.map +1 -1
- package/dist/server/liveSubscriptionAuth.d.ts +26 -4
- package/dist/server/liveSubscriptionAuth.js +105 -39
- package/dist/server/liveSubscriptionAuth.js.map +1 -1
- package/dist/server/loadRootComponents.js +49 -10
- package/dist/server/loadRootComponents.js.map +1 -1
- package/dist/server/mqtt.d.ts +2 -0
- package/dist/server/mqtt.js +165 -30
- package/dist/server/mqtt.js.map +1 -1
- package/dist/server/nodeName.d.ts +2 -0
- package/dist/server/nodeName.js +107 -23
- package/dist/server/nodeName.js.map +1 -1
- package/dist/server/serverHelpers/Headers.d.ts +25 -0
- package/dist/server/serverHelpers/Headers.js +139 -1
- package/dist/server/serverHelpers/Headers.js.map +1 -1
- package/dist/server/serverHelpers/contentTypes.d.ts +9 -0
- package/dist/server/serverHelpers/contentTypes.js +32 -25
- package/dist/server/serverHelpers/contentTypes.js.map +1 -1
- package/dist/server/serverHelpers/deployValidationState.d.ts +3 -0
- package/dist/server/serverHelpers/deployValidationState.js +9 -19
- package/dist/server/serverHelpers/deployValidationState.js.map +1 -1
- package/dist/server/serverHelpers/operationAuthorizationState.d.ts +12 -0
- package/dist/server/serverHelpers/operationAuthorizationState.js +24 -2
- package/dist/server/serverHelpers/operationAuthorizationState.js.map +1 -1
- package/dist/server/serverHelpers/registeredOperations.d.ts +5 -4
- package/dist/server/serverHelpers/registeredOperations.js +74 -21
- package/dist/server/serverHelpers/registeredOperations.js.map +1 -1
- package/dist/server/serverHelpers/requestSanitization.d.ts +11 -0
- package/dist/server/serverHelpers/requestSanitization.js +20 -0
- package/dist/server/serverHelpers/requestSanitization.js.map +1 -0
- package/dist/server/serverHelpers/serverHandlers.js +6 -3
- package/dist/server/serverHelpers/serverHandlers.js.map +1 -1
- package/dist/server/serverHelpers/serverUtilities.d.ts +18 -0
- package/dist/server/serverHelpers/serverUtilities.js +90 -20
- package/dist/server/serverHelpers/serverUtilities.js.map +1 -1
- package/dist/server/serverHelpers/sharedMessageEncoding.d.ts +67 -0
- package/dist/server/serverHelpers/sharedMessageEncoding.js +280 -0
- package/dist/server/serverHelpers/sharedMessageEncoding.js.map +1 -0
- package/dist/server/serverHelpers/uwsServer.js +19 -1
- package/dist/server/serverHelpers/uwsServer.js.map +1 -1
- package/dist/server/static.js +24 -28
- package/dist/server/static.js.map +1 -1
- package/dist/server/storageReclamation.d.ts +5 -0
- package/dist/server/storageReclamation.js +16 -0
- package/dist/server/storageReclamation.js.map +1 -1
- package/dist/server/threads/itc.d.ts +7 -2
- package/dist/server/threads/itc.js +5 -1
- package/dist/server/threads/itc.js.map +1 -1
- package/dist/server/threads/manageThreads.d.ts +26 -4
- package/dist/server/threads/manageThreads.js +517 -72
- package/dist/server/threads/manageThreads.js.map +1 -1
- package/dist/server/threads/socketRouter.js +89 -26
- package/dist/server/threads/socketRouter.js.map +1 -1
- package/dist/server/threads/threadHeapMemory.d.ts +2 -0
- package/dist/server/threads/threadHeapMemory.js +31 -0
- package/dist/server/threads/threadHeapMemory.js.map +1 -0
- package/dist/server/threads/threadServer.js +46 -15
- package/dist/server/threads/threadServer.js.map +1 -1
- package/dist/sqlEngine/config.d.ts +1 -3
- package/dist/sqlEngine/config.js +19 -16
- package/dist/sqlEngine/config.js.map +1 -1
- package/dist/sqlTranslator/index.d.ts +1 -1
- package/dist/sqlTranslator/index.js +30 -7
- package/dist/sqlTranslator/index.js.map +1 -1
- package/dist/upgrade/directives/5-3-0.d.ts +7 -0
- package/dist/upgrade/directives/5-3-0.js +148 -0
- package/dist/upgrade/directives/5-3-0.js.map +1 -0
- package/dist/upgrade/directives/directivesController.js +2 -1
- package/dist/upgrade/directives/directivesController.js.map +1 -1
- package/dist/utility/OperationFunctionCaller.js +2 -1
- package/dist/utility/OperationFunctionCaller.js.map +1 -1
- package/dist/utility/common_utils.d.ts +16 -0
- package/dist/utility/common_utils.js +32 -6
- package/dist/utility/common_utils.js.map +1 -1
- package/dist/utility/componentNames.d.ts +8 -0
- package/dist/utility/componentNames.js +12 -1
- package/dist/utility/componentNames.js.map +1 -1
- package/dist/utility/environment/environmentManager.js +3 -6
- package/dist/utility/environment/environmentManager.js.map +1 -1
- package/dist/utility/environment/systemInformation.d.ts +1 -0
- package/dist/utility/environment/systemInformation.js +1 -0
- package/dist/utility/environment/systemInformation.js.map +1 -1
- package/dist/utility/errors/commonErrors.d.ts +2 -0
- package/dist/utility/errors/commonErrors.js +2 -0
- package/dist/utility/errors/commonErrors.js.map +1 -1
- package/dist/utility/errors/hdbError.d.ts +17 -0
- package/dist/utility/errors/hdbError.js +30 -1
- package/dist/utility/errors/hdbError.js.map +1 -1
- package/dist/utility/globalSchema.d.ts +18 -0
- package/dist/utility/hdbTerms.d.ts +16 -0
- package/dist/utility/hdbTerms.js +18 -2
- package/dist/utility/hdbTerms.js.map +1 -1
- package/dist/utility/logging/harper_logger.d.ts +2 -0
- package/dist/utility/logging/harper_logger.js +91 -14
- package/dist/utility/logging/harper_logger.js.map +1 -1
- package/dist/utility/logging/logRotator.js +76 -49
- package/dist/utility/logging/logRotator.js.map +1 -1
- package/dist/utility/nodeIdentity.d.ts +9 -0
- package/dist/utility/nodeIdentity.js +58 -0
- package/dist/utility/nodeIdentity.js.map +1 -0
- package/dist/utility/npmUtilities.js +9 -7
- package/dist/utility/npmUtilities.js.map +1 -1
- package/dist/utility/operationPermissions.d.ts +3 -1
- package/dist/utility/operationPermissions.js +16 -1
- package/dist/utility/operationPermissions.js.map +1 -1
- package/dist/utility/operation_authorization.d.ts +10 -7
- package/dist/utility/operation_authorization.js +212 -41
- package/dist/utility/operation_authorization.js.map +1 -1
- package/dist/utility/watchPath.d.ts +29 -0
- package/dist/utility/watchPath.js +68 -0
- package/dist/utility/watchPath.js.map +1 -0
- package/dist/utility/watcherFallback.d.ts +86 -0
- package/dist/utility/watcherFallback.js +278 -1
- package/dist/utility/watcherFallback.js.map +1 -1
- package/dist/validation/configValidator.d.ts +12 -0
- package/dist/validation/configValidator.js +199 -72
- package/dist/validation/configValidator.js.map +1 -1
- package/dist/validation/installValidator.js +12 -0
- package/dist/validation/installValidator.js.map +1 -1
- package/dist/validation/validationWrapper.d.ts +11 -0
- package/dist/validation/validationWrapper.js +16 -3
- package/dist/validation/validationWrapper.js.map +1 -1
- package/index.ts +2 -0
- package/json/systemSchema.json +52 -0
- package/npm-shrinkwrap.json +235 -233
- package/package.json +8 -7
- package/resources/DESIGN.md +114 -52
- package/resources/DatabaseTransaction.ts +522 -130
- package/resources/LMDBTransaction.ts +26 -4
- package/resources/PrimaryRocksDatabase.ts +29 -3
- package/resources/RecordEncoder.ts +103 -8
- package/resources/RequestTarget.ts +2 -0
- package/resources/Resource.ts +17 -9
- package/resources/ResourceInterface.ts +23 -0
- package/resources/RocksIndexStore.ts +30 -10
- package/resources/RocksTransactionLogStore.ts +78 -21
- package/resources/Table.ts +1107 -164
- package/resources/auditStore.ts +187 -21
- package/resources/blob.ts +1029 -110
- package/resources/branchDatabase.ts +941 -0
- package/resources/crdt.ts +76 -12
- package/resources/databases.ts +1354 -522
- package/resources/defineTable.ts +18 -2
- package/resources/graphql.ts +70 -16
- package/resources/indexes/HierarchicalNavigableSmallWorld.ts +6 -2
- package/resources/longLivedTransactions.ts +360 -0
- package/resources/models/backendRegistry.ts +84 -2
- package/resources/models/bootstrap.ts +473 -28
- package/resources/recordLock.ts +253 -0
- package/resources/replayLogs.ts +147 -26
- package/resources/replayLogsGuards.ts +171 -8
- package/resources/search.ts +154 -32
- package/resources/transactionBroadcast.ts +3 -3
- package/security/auth.ts +68 -29
- package/security/authn/oidc/claims.ts +72 -0
- package/security/authn/oidc/identityToken.ts +129 -0
- package/security/authn/oidc/jwks.ts +260 -0
- package/security/authn/oidc/providers/generic.ts +40 -0
- package/security/authn/oidc/providers/githubActions.ts +137 -0
- package/security/authn/oidc/providers/index.ts +52 -0
- package/security/authn/oidc/tokenExchange.ts +300 -0
- package/security/authn/oidc/trustPolicyOperations.ts +343 -0
- package/security/authn/oidc/types.ts +41 -0
- package/security/certificateVerification/index.ts +54 -13
- package/security/certificateVerification/trustedIssuers.ts +76 -0
- package/security/certificateVerification/types.ts +1 -0
- package/security/credentialProvenance.ts +47 -0
- package/security/credentialRejection.ts +22 -0
- package/security/deferredAuthentication.ts +71 -0
- package/security/impersonation.ts +117 -12
- package/security/jsLoader.ts +81 -18
- package/security/keys.ts +298 -72
- package/security/operationScope.ts +33 -0
- package/security/permissionsTranslator.js +23 -0
- package/security/tokenAuthentication.ts +233 -12
- package/security/user.ts +4 -3
- package/server/DESIGN.md +183 -16
- package/server/DurableSubscriptionsSession.ts +71 -11
- package/server/REST.ts +79 -1
- package/server/graphqlQuerying.ts +4 -0
- package/server/http.ts +99 -18
- package/server/itc/serverHandlers.js +8 -1
- package/server/jobs/jobProcess.ts +8 -2
- package/server/jobs/jobs.ts +4 -1
- package/server/liveSubscriptionAuth.ts +129 -46
- package/server/loadRootComponents.js +50 -8
- package/server/mqtt.ts +179 -38
- package/server/nodeName.ts +103 -21
- package/server/serverHelpers/Headers.ts +131 -0
- package/server/serverHelpers/contentTypes.ts +29 -21
- package/server/serverHelpers/deployValidationState.ts +24 -13
- package/server/serverHelpers/operationAuthorizationState.ts +34 -3
- package/server/serverHelpers/registeredOperations.ts +79 -22
- package/server/serverHelpers/requestSanitization.ts +15 -0
- package/server/serverHelpers/serverHandlers.js +6 -3
- package/server/serverHelpers/serverUtilities.ts +104 -31
- package/server/serverHelpers/sharedMessageEncoding.ts +307 -0
- package/server/serverHelpers/uwsServer.ts +17 -2
- package/server/static.ts +23 -29
- package/server/storageReclamation.ts +13 -0
- package/server/threads/itc.js +11 -1
- package/server/threads/manageThreads.js +526 -63
- package/server/threads/socketRouter.ts +81 -26
- package/server/threads/threadHeapMemory.ts +26 -0
- package/server/threads/threadServer.js +43 -15
- package/sqlTranslator/index.ts +31 -8
- package/studio/web/assets/{Chat-Br06zdMA.js → Chat-BnCBegQz.js} +1 -1
- package/studio/web/assets/{FloatingChat-BWImX5fA.js → FloatingChat-CoDW1ySS.js} +3 -3
- package/studio/web/assets/{apiToken-DN0nmDsq.js → apiToken-Bwk5BLXW.js} +1 -1
- package/studio/web/assets/{applications-kSxVoyeU.js → applications-DHxGi7JH.js} +1 -1
- package/studio/web/assets/{cssMode-C1JeufH5.js → cssMode-s0cWI-_M.js} +1 -1
- package/studio/web/assets/{editor-qoo9CrGO.js → editor-DNcRHK54.js} +1 -1
- package/studio/web/assets/{html-Dt4IIy04.js → html-Bdssedlg.js} +1 -1
- package/studio/web/assets/{htmlMode-DXgKKr4C.js → htmlMode-CoDlJ3fw.js} +1 -1
- package/studio/web/assets/{index-6onkYFOG.js → index-D6sxmFLR.js} +5 -5
- package/studio/web/assets/{index.lazy-BrCFnpNJ.js → index.lazy-tmU5BS8s.js} +1 -1
- package/studio/web/assets/{javascript-DNCQGUBc.js → javascript-B8meVSTH.js} +1 -1
- package/studio/web/assets/{jsonMode-CR6HWruP.js → jsonMode-DpIPd35T.js} +1 -1
- package/studio/web/assets/{languageServices-BM4fI4rS.js → languageServices-C_5FMJzQ.js} +1 -1
- package/studio/web/assets/{lspLanguageFeatures-DSa1ttcD.js → lspLanguageFeatures-BIzNBzPK.js} +1 -1
- package/studio/web/assets/{notifications-BHXLnh6x.js → notifications-CQf18QKb.js} +1 -1
- package/studio/web/assets/{notifications-CUmtIA6z.js → notifications-CvZivSbh.js} +1 -1
- package/studio/web/assets/{profile-8BeFSF3j.js → profile-DdOwtntb.js} +1 -1
- package/studio/web/assets/{regions-C8qR0HhD.js → regions-n69fwagr.js} +1 -1
- package/studio/web/assets/{register-B4n5i0SD.js → register-PfWTCXWB.js} +2 -2
- package/studio/web/assets/{setComponentFile-g0_B0lgX.js → setComponentFile-Bg6O7X0S.js} +1 -1
- package/studio/web/assets/{setup-B0CTj_Q5.js → setup-CUx_aUDl.js} +2 -2
- package/studio/web/assets/{status-C6Yib7-K.js → status-D7BVKqX9.js} +1 -1
- package/studio/web/assets/{toggleHighContrast-Dgta7bVi.js → toggleHighContrast-DBSyXzMr.js} +1 -1
- package/studio/web/assets/{tsMode-CH_jHvU-.js → tsMode-BByKCjBS.js} +1 -1
- package/studio/web/assets/{typescript-Co9LCXd5.js → typescript-DDLnLpw9.js} +1 -1
- package/studio/web/assets/{useEntityRestURL-wKC8NsC_.js → useEntityRestURL-31CHGaHk.js} +1 -1
- package/studio/web/assets/{workers-CWeLxCXA.js → workers-pR3jRY9D.js} +1 -1
- package/studio/web/assets/{xml-BadC-0Rk.js → xml-2iRnMhQO.js} +1 -1
- package/studio/web/assets/{yaml-BiUfxPbC.js → yaml-Bf92gJpd.js} +1 -1
- package/studio/web/index.html +1 -1
- package/upgrade/directives/5-3-0.ts +132 -0
- package/upgrade/directives/directivesController.ts +2 -1
- package/utility/OperationFunctionCaller.ts +2 -1
- package/utility/common_utils.ts +30 -5
- package/utility/componentNames.ts +12 -0
- package/utility/environment/environmentManager.ts +3 -7
- package/utility/environment/systemInformation.ts +7 -0
- package/utility/errors/commonErrors.ts +4 -0
- package/utility/errors/hdbError.ts +29 -0
- package/utility/hdbTerms.ts +17 -0
- package/utility/logging/harper_logger.ts +87 -14
- package/utility/logging/logRotator.ts +72 -45
- package/utility/nodeIdentity.ts +45 -0
- package/utility/npmUtilities.ts +10 -8
- package/utility/operationPermissions.ts +18 -1
- package/utility/operation_authorization.ts +231 -42
- package/utility/watchPath.ts +63 -0
- package/utility/watcherFallback.ts +270 -0
- package/validation/configValidator.ts +209 -72
- package/validation/installValidator.ts +15 -0
- package/validation/validationWrapper.ts +18 -4
|
@@ -5,6 +5,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.blobsRootDir = blobsRootDir;
|
|
7
7
|
exports.blobSnapshotDir = blobSnapshotDir;
|
|
8
|
+
exports.copyTree = copyTree;
|
|
9
|
+
exports.copyBlobRootsByIndex = copyBlobRootsByIndex;
|
|
8
10
|
exports.snapshotBlobs = snapshotBlobs;
|
|
9
11
|
exports.blobsReadmeContent = blobsReadmeContent;
|
|
10
12
|
exports.writeBlobsReadme = writeBlobsReadme;
|
|
@@ -17,6 +19,7 @@ const promises_1 = require("node:fs/promises");
|
|
|
17
19
|
const node_path_1 = require("node:path");
|
|
18
20
|
const hdbError_ts_1 = require("../utility/errors/hdbError.js");
|
|
19
21
|
const harper_logger_ts_1 = __importDefault(require("../utility/logging/harper_logger.js"));
|
|
22
|
+
const blob_ts_1 = require("../resources/blob.js");
|
|
20
23
|
/**
|
|
21
24
|
* Managed-backup snapshotting of a database's file-backed blobs.
|
|
22
25
|
*
|
|
@@ -32,17 +35,17 @@ const harper_logger_ts_1 = __importDefault(require("../utility/logging/harper_lo
|
|
|
32
35
|
* possible (cheap, no extra space on the same filesystem) and copied otherwise (never symlinked, so
|
|
33
36
|
* a snapshot is a standalone set of files that survives independent of the live blob).
|
|
34
37
|
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
38
|
+
* Harper does not freeze blob writes for a backup, and a blob is written in place at its final path,
|
|
39
|
+
* so the walk can meet one that is still growing. Hard-linking that inode would put bytes in the
|
|
40
|
+
* snapshot that keep changing after it was taken. Every entry returned by the walk is therefore
|
|
41
|
+
* classified (`captureBlobFile`): a complete blob is linked, and one that becomes unavailable or is
|
|
42
|
+
* not yet complete is replaced by a marker rather than dropped. This closes the classify-to-capture
|
|
43
|
+
* race and keeps that file id reserved; a file reclaimed before its parent directory is read remains
|
|
44
|
+
* outside the snapshot.
|
|
40
45
|
*
|
|
41
|
-
*
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
* bytes alive even after the live blob is deleted, and no in-place overwrite can retroactively alter
|
|
45
|
-
* a snapshot.
|
|
46
|
+
* Past that gate, hard-linking is safe against later mutation: each write takes a fresh monotonic
|
|
47
|
+
* file id, and an update, delete, or in-place repair replaces or unlinks the path rather than
|
|
48
|
+
* rewriting the inode.
|
|
46
49
|
*/
|
|
47
50
|
/** Directory holding all blob snapshots for a backup repository. */
|
|
48
51
|
function blobsRootDir(backupDir) {
|
|
@@ -54,19 +57,19 @@ function blobSnapshotDir(backupDir, backupId) {
|
|
|
54
57
|
}
|
|
55
58
|
/**
|
|
56
59
|
* Hard-link `src` to `dest`, falling back to a copy when the two are on different filesystems (or
|
|
57
|
-
* the filesystem does not support additional hard links). Never creates a symlink.
|
|
58
|
-
*
|
|
60
|
+
* the filesystem does not support additional hard links). Never creates a symlink. Returns false
|
|
61
|
+
* when the source vanishes so the caller can substitute a marker for it. `counts.copied` is what a
|
|
62
|
+
* caller on a latency budget needs: the fallback turns a constant-time clone into an O(bytes) one.
|
|
59
63
|
*/
|
|
60
|
-
async function linkOrCopy(src, dest) {
|
|
64
|
+
async function linkOrCopy(src, dest, counts) {
|
|
61
65
|
await (0, promises_1.mkdir)((0, node_path_1.dirname)(dest), { recursive: true });
|
|
62
66
|
try {
|
|
63
67
|
await (0, promises_1.link)(src, dest);
|
|
64
68
|
}
|
|
65
69
|
catch (error) {
|
|
66
70
|
if (error.code === 'ENOENT') {
|
|
67
|
-
// src disappeared (concurrent delete) — nothing to snapshot
|
|
68
71
|
if (!(0, node_fs_1.existsSync)(src))
|
|
69
|
-
return;
|
|
72
|
+
return false; // vanished since it was classified
|
|
70
73
|
throw error;
|
|
71
74
|
}
|
|
72
75
|
if (error.code === 'EXDEV' || // cross-device link
|
|
@@ -74,24 +77,74 @@ async function linkOrCopy(src, dest) {
|
|
|
74
77
|
error.code === 'EPERM' || // filesystem forbids hard links
|
|
75
78
|
error.code === 'ENOTSUP' ||
|
|
76
79
|
error.code === 'EOPNOTSUPP') {
|
|
77
|
-
|
|
78
|
-
|
|
80
|
+
try {
|
|
81
|
+
await (0, promises_1.copyFile)(src, dest);
|
|
82
|
+
}
|
|
83
|
+
catch (copyError) {
|
|
84
|
+
if (copyError.code === 'ENOENT')
|
|
85
|
+
return false;
|
|
86
|
+
throw copyError;
|
|
87
|
+
}
|
|
88
|
+
if (counts)
|
|
89
|
+
counts.copied++;
|
|
90
|
+
return true;
|
|
79
91
|
}
|
|
80
92
|
if (error.code === 'EEXIST') {
|
|
81
93
|
await (0, promises_1.unlink)(dest);
|
|
82
|
-
|
|
83
|
-
return;
|
|
94
|
+
return linkOrCopy(src, dest, counts);
|
|
84
95
|
}
|
|
85
96
|
throw error;
|
|
86
97
|
}
|
|
98
|
+
return true;
|
|
99
|
+
}
|
|
100
|
+
const BACKUP_MARKER_REASONS = {
|
|
101
|
+
gone: 'blob was deleted while this backup was being taken',
|
|
102
|
+
pending: 'blob was not yet complete when this backup was taken',
|
|
103
|
+
};
|
|
104
|
+
/** Put one blob file into the destination, returning how the entry was captured. */
|
|
105
|
+
async function captureBlobFile(srcPath, destPath, reasons = BACKUP_MARKER_REASONS, counts) {
|
|
106
|
+
let disposition;
|
|
107
|
+
try {
|
|
108
|
+
disposition = await (0, blob_ts_1.classifyBlobFileForCapture)(srcPath);
|
|
109
|
+
}
|
|
110
|
+
catch (error) {
|
|
111
|
+
// This rethrow is unverified: only the membership of SYSTEMIC_IO_ERRORS is tested, because
|
|
112
|
+
// reaching it needs a real host-level fault no test here can produce.
|
|
113
|
+
if ((0, blob_ts_1.isSystemicIoError)(error))
|
|
114
|
+
throw error;
|
|
115
|
+
// Fall back to what this walk did before it classified anything. `link()` needs no read permission
|
|
116
|
+
// on the source, so a blob this failed to *read* may still be perfectly capturable; substituting
|
|
117
|
+
// here would turn an unreadable-but-valid root into a backup of nothing but stubs.
|
|
118
|
+
harper_logger_ts_1.default.warn(`Could not verify blob ${srcPath} for snapshot; capturing it unverified`, error);
|
|
119
|
+
disposition = 'capture';
|
|
120
|
+
}
|
|
121
|
+
if (disposition === 'skip')
|
|
122
|
+
return disposition;
|
|
123
|
+
if (disposition === 'capture') {
|
|
124
|
+
if (await linkOrCopy(srcPath, destPath, counts))
|
|
125
|
+
return disposition;
|
|
126
|
+
disposition = 'gone';
|
|
127
|
+
}
|
|
128
|
+
await (0, promises_1.mkdir)((0, node_path_1.dirname)(destPath), { recursive: true });
|
|
129
|
+
await (0, promises_1.writeFile)(destPath, (0, blob_ts_1.createCaptureMarker)(disposition, disposition === 'gone' ? reasons.gone : reasons.pending));
|
|
130
|
+
return disposition;
|
|
87
131
|
}
|
|
88
132
|
/**
|
|
89
133
|
* Recursively copy every file under `srcRoot` into `destRoot` (hard-link-else-copy), preserving the
|
|
90
134
|
* relative directory structure. Missing `srcRoot` is a no-op (a database with no blobs yet).
|
|
135
|
+
*
|
|
136
|
+
* `classify` substitutes a marker for a file that is mid-write or already gone, so the destination
|
|
137
|
+
* fails loudly on that blob rather than carrying a truncated one. It belongs to the capture direction
|
|
138
|
+
* only; restore must replace exactly what the snapshot holds.
|
|
139
|
+
*
|
|
140
|
+
* Also used by branch materialization (harper#644), which clones a base's blob roots into the
|
|
141
|
+
* branch's own so the OS inode refcount does the reference counting. Its walk runs inside a window
|
|
142
|
+
* other threads wait on, which is what `onProgress` is for.
|
|
91
143
|
*/
|
|
92
|
-
async function copyTree(srcRoot, destRoot) {
|
|
144
|
+
async function copyTree(srcRoot, destRoot, classify = false, reasons, onProgress) {
|
|
145
|
+
const counts = { substituted: 0, captured: 0, copied: 0 };
|
|
93
146
|
if (!(0, node_fs_1.existsSync)(srcRoot))
|
|
94
|
-
return;
|
|
147
|
+
return counts;
|
|
95
148
|
const stack = [srcRoot];
|
|
96
149
|
while (stack.length > 0) {
|
|
97
150
|
const dir = stack.pop();
|
|
@@ -110,61 +163,95 @@ async function copyTree(srcRoot, destRoot) {
|
|
|
110
163
|
stack.push(srcPath);
|
|
111
164
|
}
|
|
112
165
|
else if (entry.isFile()) {
|
|
113
|
-
|
|
166
|
+
const destPath = (0, node_path_1.join)(destRoot, (0, node_path_1.relative)(srcRoot, srcPath));
|
|
167
|
+
if (classify) {
|
|
168
|
+
const disposition = await captureBlobFile(srcPath, destPath, reasons, counts);
|
|
169
|
+
if (disposition === 'pending' || disposition === 'gone')
|
|
170
|
+
counts.substituted++;
|
|
171
|
+
else if (disposition === 'capture')
|
|
172
|
+
counts.captured++;
|
|
173
|
+
}
|
|
174
|
+
else {
|
|
175
|
+
await linkOrCopy(srcPath, destPath, counts);
|
|
176
|
+
}
|
|
177
|
+
onProgress?.();
|
|
114
178
|
}
|
|
115
179
|
// symlinks/other node types in a blob root are not expected and are intentionally skipped
|
|
116
180
|
}
|
|
117
181
|
}
|
|
182
|
+
return counts;
|
|
118
183
|
}
|
|
119
184
|
/**
|
|
120
|
-
*
|
|
121
|
-
* and atomically renames into place so a
|
|
122
|
-
*
|
|
123
|
-
*
|
|
185
|
+
* Copy every blob root into `destDir` as `<rootIndex>/<relpath>`, hard-linking where possible.
|
|
186
|
+
* Writes to a temporary sibling and atomically renames into place so a run that fails mid-copy never
|
|
187
|
+
* leaves a partial directory a later restore would trust, and replaces any pre-existing `destDir`.
|
|
188
|
+
* Shared by managed-backup snapshots and `copy-db`'s standalone blob copy (harper#2048).
|
|
124
189
|
*/
|
|
125
|
-
async function
|
|
126
|
-
const
|
|
127
|
-
const tempDir = (0, node_path_1.join)(blobsRootDir(backupDir), `.tmp-${backupId}`);
|
|
190
|
+
async function copyBlobRootsByIndex(destDir, blobRoots) {
|
|
191
|
+
const tempDir = destDir + '.tmp';
|
|
128
192
|
await (0, promises_1.rm)(tempDir, { recursive: true, force: true });
|
|
129
193
|
await (0, promises_1.mkdir)(tempDir, { recursive: true });
|
|
130
194
|
try {
|
|
195
|
+
let substituted = 0;
|
|
196
|
+
let captured = 0;
|
|
131
197
|
for (let index = 0; index < blobRoots.length; index++) {
|
|
132
|
-
await copyTree(blobRoots[index], (0, node_path_1.join)(tempDir, String(index)));
|
|
198
|
+
const counts = await copyTree(blobRoots[index], (0, node_path_1.join)(tempDir, String(index)), true);
|
|
199
|
+
substituted += counts.substituted;
|
|
200
|
+
captured += counts.captured;
|
|
201
|
+
}
|
|
202
|
+
if (substituted > 0) {
|
|
203
|
+
harper_logger_ts_1.default.warn(`Blob copy into ${destDir} substituted ${substituted} of ${substituted + captured} blob ` +
|
|
204
|
+
`file(s) with PENDING or ERROR markers because they were not capturable whole.`);
|
|
133
205
|
}
|
|
134
|
-
await (0, promises_1.rm)(
|
|
135
|
-
await (0, promises_1.rename)(tempDir,
|
|
206
|
+
await (0, promises_1.rm)(destDir, { recursive: true, force: true });
|
|
207
|
+
await (0, promises_1.rename)(tempDir, destDir);
|
|
136
208
|
}
|
|
137
209
|
catch (error) {
|
|
138
210
|
await (0, promises_1.rm)(tempDir, { recursive: true, force: true }).catch(() => { });
|
|
139
211
|
throw error;
|
|
140
212
|
}
|
|
213
|
+
}
|
|
214
|
+
/**
|
|
215
|
+
* Snapshot a database's blob roots into a backup's blob directory. Overwrites any pre-existing
|
|
216
|
+
* snapshot for the same id (create_backup always produces a fresh id, so this only matters on a
|
|
217
|
+
* retried offline run).
|
|
218
|
+
*/
|
|
219
|
+
async function snapshotBlobs(backupDir, backupId, blobRoots) {
|
|
220
|
+
await copyBlobRootsByIndex(blobSnapshotDir(backupDir, backupId), blobRoots);
|
|
141
221
|
await writeBlobsReadme(backupDir, blobRoots);
|
|
142
222
|
}
|
|
143
223
|
/**
|
|
144
224
|
* Build the `blobs/README.md` documenting the blob snapshot layout, so an operator inspecting or
|
|
145
|
-
* hand-recovering a backup can decode the numeric directories.
|
|
146
|
-
* - managed (default): a create_backup repository, where snapshots are keyed by backup id
|
|
225
|
+
* hand-recovering a backup can decode the numeric directories. Three variants:
|
|
226
|
+
* - `managed` (default): a create_backup repository, where snapshots are keyed by backup id
|
|
147
227
|
* (`<backupId>/<rootIndex>/…`) and restore is automatic via `restore_backup`.
|
|
148
|
-
* -
|
|
149
|
-
*
|
|
228
|
+
* - `archive`: a downloaded `get_backup` tar, which holds a single snapshot with no backup-id level
|
|
229
|
+
* (`<rootIndex>/…`) and is restored by extracting the files back into the roots.
|
|
230
|
+
* - `copy`: the companion directory `copy-db` writes beside a database copy, restored by hand.
|
|
150
231
|
*/
|
|
151
|
-
function blobsReadmeContent(blobRoots, {
|
|
232
|
+
function blobsReadmeContent(blobRoots, { variant = 'managed' } = {}) {
|
|
152
233
|
const rootMapping = blobRoots.length > 0 ? blobRoots.map((root, index) => ` ${index} -> ${root}`).join('\n') : ' (none)';
|
|
153
|
-
const layout =
|
|
154
|
-
? '<rootIndex>/<shard1>/<shard2>/<fileId>'
|
|
155
|
-
: '<
|
|
156
|
-
const intro =
|
|
157
|
-
? `This directory holds
|
|
234
|
+
const layout = variant === 'managed'
|
|
235
|
+
? '<backupId>/<rootIndex>/<shard1>/<shard2>/<fileId>'
|
|
236
|
+
: '<rootIndex>/<shard1>/<shard2>/<fileId>';
|
|
237
|
+
const intro = variant === 'copy'
|
|
238
|
+
? `This directory holds the file-backed blobs of a \`copy-db\` database copy; the database file itself
|
|
239
|
+
is the sibling \`.mdb\` this directory is named after. Blobs are addressed by database NAME and the
|
|
240
|
+
configured blob roots — never by the database file's path — so a copy is only restorable with these
|
|
241
|
+
files: put each \`<rootIndex>/\` tree into the matching blob root of whatever database name you
|
|
242
|
+
restore the copy as (mapping below).`
|
|
243
|
+
: variant === 'archive'
|
|
244
|
+
? `This directory holds this database's file-backed blobs within a downloaded \`get_backup\` archive.
|
|
158
245
|
To restore them, extract each \`<rootIndex>/\` tree back into the matching blob root (see the mapping
|
|
159
246
|
below and ../README.md).`
|
|
160
|
-
|
|
247
|
+
: `This directory holds point-in-time snapshots of this database's file-backed blobs, captured
|
|
161
248
|
alongside each RocksDB managed backup. You do not restore these by hand — \`restore_backup\` puts
|
|
162
249
|
them back automatically (see ../README.md); this file just documents the layout.`;
|
|
163
|
-
const backupIdBullet =
|
|
164
|
-
?
|
|
165
|
-
: `- **<backupId>** matches the RocksDB backup id (\`harper list_backups\`). Each id is a full,
|
|
250
|
+
const backupIdBullet = variant === 'managed'
|
|
251
|
+
? `- **<backupId>** matches the RocksDB backup id (\`harper list_backups\`). Each id is a full,
|
|
166
252
|
independent snapshot (not incremental).
|
|
167
|
-
|
|
253
|
+
`
|
|
254
|
+
: '';
|
|
168
255
|
return `# Harper blob snapshots
|
|
169
256
|
|
|
170
257
|
${intro}
|
|
@@ -175,7 +262,7 @@ ${intro}
|
|
|
175
262
|
|
|
176
263
|
${backupIdBullet}- **<rootIndex>** is which of the database's blob roots the file came from — the index into
|
|
177
264
|
\`storage.blobPaths[n]\`. When \`storage.blobPaths\` is not configured there is a single default root
|
|
178
|
-
(\`<rootPath>/blobs/<db>\`) at index 0. Current mapping
|
|
265
|
+
(\`<rootPath>/blobs/<db>\`) at index 0. Current mapping:
|
|
179
266
|
|
|
180
267
|
${rootMapping}
|
|
181
268
|
|
|
@@ -184,8 +271,10 @@ ${rootMapping}
|
|
|
184
271
|
4096 entries per directory). E.g. a blob with id \`0x12345678\` lives at \`12/345/678\`; a short id
|
|
185
272
|
like \`0xc1a\` lives at \`0/0/c1a\`.
|
|
186
273
|
|
|
187
|
-
|
|
188
|
-
otherwise.
|
|
274
|
+
Complete blobs are hard links to the live blobs when the destination is on the same filesystem, and
|
|
275
|
+
copies otherwise. A blob that was not capturable whole is stored as a marker instead: header type
|
|
276
|
+
\`0xfe\` is retryable (PENDING), while \`0xff\` is terminal (ERROR). The marker preserves the file id
|
|
277
|
+
but does not contain the original blob bytes.
|
|
189
278
|
`;
|
|
190
279
|
}
|
|
191
280
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blobBackup.js","sourceRoot":"","sources":["../../dataLayer/blobBackup.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;
|
|
1
|
+
{"version":3,"file":"blobBackup.js","sourceRoot":"","sources":["../../dataLayer/blobBackup.ts"],"names":[],"mappings":"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"}
|
package/dist/dataLayer/delete.js
CHANGED
|
@@ -108,7 +108,7 @@ async function deleteAuditLogsBefore(deleteObj) {
|
|
|
108
108
|
await pGlobalSchema(deleteObj.schema, deleteObj.table);
|
|
109
109
|
harper_logger_ts_1.default.info(`Finished deleting audit logs before ${deleteObj.timestamp}`);
|
|
110
110
|
// `deleteTransactionLogsBefore` returns `entries_deleted`; the legacy result exposes it as `transactions_deleted`.
|
|
111
|
-
return new DeleteAuditLogsBeforeResults_js_1.default(results.start_timestamp, results.end_timestamp, results.entries_deleted);
|
|
111
|
+
return new DeleteAuditLogsBeforeResults_js_1.default(results.start_timestamp, results.end_timestamp, results.entries_deleted, results.log_files_deleted);
|
|
112
112
|
}
|
|
113
113
|
/**
|
|
114
114
|
* Calls the harper bridge to delete records.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../dataLayer/delete.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6Bb,8CAsCC;AASD,
|
|
1
|
+
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../dataLayer/delete.ts"],"names":[],"mappings":"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"}
|
|
@@ -42,7 +42,20 @@ export declare class ResourceBridge extends BridgeMethods {
|
|
|
42
42
|
new_attributes: any;
|
|
43
43
|
skipped_hashes: any[];
|
|
44
44
|
}>;
|
|
45
|
-
|
|
45
|
+
/**
|
|
46
|
+
* Create-or-replace: the stored record becomes exactly the submitted one, so an attribute the
|
|
47
|
+
* request omits is REMOVED rather than kept. `update`/`upsert` merge (`Table.patch`), which is the
|
|
48
|
+
* v4-compatible behaviour every existing client depends on and is why this is a separate operation
|
|
49
|
+
* rather than a flag on those. Equivalent to REST `PUT /Table/id` — same `Table.put`, so the same
|
|
50
|
+
* audit type, replication shape, and retained `__createdtime__`.
|
|
51
|
+
*/
|
|
52
|
+
putRecords(putObj: any): Promise<{
|
|
53
|
+
txn_time: any;
|
|
54
|
+
written_hashes: any[];
|
|
55
|
+
new_attributes: any;
|
|
56
|
+
skipped_hashes: any[];
|
|
57
|
+
}>;
|
|
58
|
+
upsertRecords(upsertObj: any, fullRecord?: boolean): Promise<{
|
|
46
59
|
txn_time: any;
|
|
47
60
|
written_hashes: any[];
|
|
48
61
|
new_attributes: any;
|
|
@@ -197,9 +197,33 @@ class ResourceBridge extends BridgeMethods_ts_1.BridgeMethods {
|
|
|
197
197
|
updateObj.requires_no_existing = true;
|
|
198
198
|
return this.upsertRecords(updateObj);
|
|
199
199
|
}
|
|
200
|
-
|
|
200
|
+
/**
|
|
201
|
+
* Create-or-replace: the stored record becomes exactly the submitted one, so an attribute the
|
|
202
|
+
* request omits is REMOVED rather than kept. `update`/`upsert` merge (`Table.patch`), which is the
|
|
203
|
+
* v4-compatible behaviour every existing client depends on and is why this is a separate operation
|
|
204
|
+
* rather than a flag on those. Equivalent to REST `PUT /Table/id` — same `Table.put`, so the same
|
|
205
|
+
* audit type, replication shape, and retained `__createdtime__`.
|
|
206
|
+
*/
|
|
207
|
+
async putRecords(putObj) {
|
|
208
|
+
return this.upsertRecords(putObj, true);
|
|
209
|
+
}
|
|
210
|
+
async upsertRecords(upsertObj, fullRecord = false) {
|
|
201
211
|
const { attributes } = (0, insertUpdateValidate_js_1.default)(upsertObj);
|
|
202
212
|
let new_attributes;
|
|
213
|
+
// `fullRecord` arrives as an ARGUMENT, never as a field on the request. Reading it off
|
|
214
|
+
// `upsertObj` would let a client send `full_record: true` with an `update` and get a replace —
|
|
215
|
+
// which makes the operation name stop describing the write, and bypasses the attribute-scoped
|
|
216
|
+
// `put` denial in `verifyPerms`, since that is keyed on the operation.
|
|
217
|
+
//
|
|
218
|
+
// Without it a write over an existing record merges (`Table.patch`), so an attribute the caller
|
|
219
|
+
// omitted keeps its stored value and `null` stores a null. That merge is the v4-compatible
|
|
220
|
+
// behaviour `update`/`upsert` must keep; HarperFast/studio#1643 is the removal case it cannot
|
|
221
|
+
// serve, and `put` is the operation that can.
|
|
222
|
+
//
|
|
223
|
+
// A put is also one operation where a client emulating removal needs two: the record is never
|
|
224
|
+
// absent between them, subscribers see a single write rather than a delete followed by an
|
|
225
|
+
// insert, and `__createdtime__` survives (`Table._writeUpdate` retains the stored created time
|
|
226
|
+
// on a full update and only stamps a new one for a new entry).
|
|
203
227
|
const Table = (0, databases_ts_1.getDatabases)()[upsertObj.schema][upsertObj.table];
|
|
204
228
|
const context = {
|
|
205
229
|
user: upsertObj.hdb_user,
|
|
@@ -255,9 +279,14 @@ class ResourceBridge extends BridgeMethods_ts_1.BridgeMethods {
|
|
|
255
279
|
}
|
|
256
280
|
}
|
|
257
281
|
}
|
|
282
|
+
// Keyed on whether there IS a record to remove from, not on which operation asked. Guarding
|
|
283
|
+
// the insert flag alone left `upsert` with no primary key reaching the same silent partial
|
|
284
|
+
// write one branch over: `insertUpdateValidate` requires a hash attribute only for
|
|
285
|
+
// `update`, so such a record takes the `id == undefined → Table.create` path and stored an
|
|
286
|
+
// auto-keyed record with the named attributes stripped, returning 200.
|
|
258
287
|
await (id == undefined
|
|
259
288
|
? Table.create(record, context)
|
|
260
|
-
: existingRecord
|
|
289
|
+
: existingRecord && !fullRecord
|
|
261
290
|
? Table.patch(record, context)
|
|
262
291
|
: Table.put(record, context));
|
|
263
292
|
keys.push(record[Table.primaryKey]);
|
|
@@ -511,12 +540,12 @@ class ResourceBridge extends BridgeMethods_ts_1.BridgeMethods {
|
|
|
511
540
|
// get the history of each record
|
|
512
541
|
for (const id of readAuditLogObj.search_values) {
|
|
513
542
|
histories[id] = (await table.getHistoryOfRecord(id)).map((auditRecord) => {
|
|
514
|
-
let operation = auditRecord.operation
|
|
515
|
-
if (operation === 'put')
|
|
516
|
-
operation = 'upsert';
|
|
543
|
+
let operation = normalizeHistoryOperation(auditRecord.operation, auditRecord.type);
|
|
517
544
|
return {
|
|
518
545
|
operation,
|
|
519
|
-
|
|
546
|
+
// the transaction's position in the log, which is what this field has always
|
|
547
|
+
// reported on RocksDB and what groups an atomic transaction (harper#2412)
|
|
548
|
+
timestamp: auditRecord.localTime,
|
|
520
549
|
user_name: auditRecord.user,
|
|
521
550
|
ids: [id],
|
|
522
551
|
records: [auditRecord.value],
|
|
@@ -695,10 +724,8 @@ async function* groupRecordsInHistory(table, start, end, limit) {
|
|
|
695
724
|
let enqueued;
|
|
696
725
|
let count = 0;
|
|
697
726
|
for await (const entry of table.getHistory(start, end)) {
|
|
698
|
-
let operation = entry.operation
|
|
699
|
-
|
|
700
|
-
operation = 'upsert';
|
|
701
|
-
const { id, version: timestamp, value } = entry;
|
|
727
|
+
let operation = normalizeHistoryOperation(entry.operation, entry.type);
|
|
728
|
+
const { id, localTime: timestamp, value } = entry;
|
|
702
729
|
if (enqueued?.timestamp === timestamp) {
|
|
703
730
|
enqueued.ids.push(id);
|
|
704
731
|
enqueued.records.push(value);
|
|
@@ -724,4 +751,18 @@ async function* groupRecordsInHistory(table, start, end, limit) {
|
|
|
724
751
|
if (enqueued)
|
|
725
752
|
yield enqueued;
|
|
726
753
|
}
|
|
754
|
+
/**
|
|
755
|
+
* Which operation a history entry should report: the originating operation when one was recorded,
|
|
756
|
+
* otherwise the physical write type.
|
|
757
|
+
*
|
|
758
|
+
* A recorded `put` is reported as `put`, so replication catch-up replays it as a replace. Only a
|
|
759
|
+
* LEGACY physical put — one with no originating operation, written before `put` existed — is still
|
|
760
|
+
* normalized to `upsert`, which is what produced a physical put back then. Normalizing both would
|
|
761
|
+
* make catch-up patch the replica and retain attributes the source removed.
|
|
762
|
+
*/
|
|
763
|
+
function normalizeHistoryOperation(originatingOperation, physicalType) {
|
|
764
|
+
if (originatingOperation !== undefined)
|
|
765
|
+
return originatingOperation;
|
|
766
|
+
return physicalType === 'put' ? 'upsert' : physicalType;
|
|
767
|
+
}
|
|
727
768
|
//# sourceMappingURL=ResourceBridge.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResourceBridge.js","sourceRoot":"","sources":["../../../dataLayer/harperBridge/ResourceBridge.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6FAAkE;AAClE,kEAA0F;AAC1F,+DAAuG;AACvG,sGAA2E;AAE3E,2DAKmC;AACnC,wEAA0D;AAC1D,wDAA6D;AAC7D,mEAAgE;AAChE,mEAA6D;AAU7D,2DAA0D;AAC1D,6EAAuE;AACvE,uDAAuD;AACvD,yDAAmD;AACnD,iGAAsE;AACtE,0DAAiF;AACjF,mGAA6F;AAG7F,MAAM,EAAE,cAAc,EAAE,GAAG,uBAAS,CAAC;AACrC,MAAM,gBAAgB,GAAG,MAAM,CAAC;AAChC,MAAM,YAAY,GAAG,KAAK,CAAC;AAC3B,MAAM,eAAe,GAAG,EAAE,CAAC;AAY3B;;;;GAIG;AACH,MAAa,cAAe,SAAQ,gCAAa;IAChD,KAAK,CAAC,kBAAkB,CAAC,YAAuC;QAC/D,IAAI,YAAY,CAAC,MAAM,KAAK,SAAS;YAAE,YAAY,CAAC,cAAc,GAAG,YAAY,CAAC,MAAM,CAAC;QAEzF,MAAM,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;QACrC,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,MAAM,IAAI,yBAAW,CAAC,SAAS,YAAY,CAAC,KAAK,YAAY,CAAC,CAAC;QAChE,CAAC;QAED,YAAY,CAAC,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACpE,SAAS,YAAY,CAAC,SAAoB;YACzC,IAAI,YAAY,IAAI,SAAS,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;gBACvD,SAAS,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBAC9D,OAAO,SAAS,CAAC;YAClB,CAAC;iBAAM,CAAC;gBACP,MAAM,CAAC,GAAG,SAA4B,CAAC;gBACvC,OAAO;oBACN,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,gBAAgB;oBAC5C,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,WAAW;oBACzC,KAAK,EAAE,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,sBAAsB;iBAC/E,CAAC;YACH,CAAC;QACF,CAAC;QAED,MAAM,eAAe,GAAG,IAAA,4BAAe,EAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QACpE,IAAI,eAAe,EAAE,CAAC;YACrB,MAAM,IAAA,4BAAc,EAAC,eAAe,EAAE,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QACjG,CAAC;QAED,OAAO,KAAK,CAAC,MAAM,CAClB;YACC,UAAU,EAAE,YAAY,CAAC,UAAU;YACnC,+DAA+D;YAC/D,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAE,YAAY,CAAC,QAAgB,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS;YAC1F,KAAK,EAAE,YAAY,CAAC,KAAK;YACzB,MAAM,EAAE,YAAY,CAAC,MAAM;YAC3B,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,MAAM,EAAE,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC;YACtC,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,aAAa,EAAE,IAAI,EAAE,8FAA8F;SAC5G,EACR;YACC,YAAY,EAAE,YAAY,CAAC,YAAY;YACvC,YAAY,EAAE,YAAY,CAAC,YAAY;YACvC,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,aAAa,EAAE,YAAY,CAAC,aAAa;SACzC,CACD,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,WAAW,CAAC,eAAe,EAAE,cAAc;QAChD,IAAI,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC;QAC3C,MAAM,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;QAC1C,MAAM,cAAc,GAAG,cAAc,CAAC,WAAW,IAAI,cAAc,CAAC,cAAc,CAAC;QACnF,IAAI,UAAU,EAAE,CAAC;YAChB,sGAAsG;YACtG,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;gBACpC,IAAI,SAAS,CAAC,cAAc,EAAE,CAAC;oBAC9B,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC;oBAC9B,OAAO,SAAS,CAAC,cAAc,CAAC;gBACjC,CAAC;qBAAM,IAAI,SAAS,CAAC,IAAI,KAAK,cAAc,IAAI,cAAc;oBAAE,SAAS,CAAC,YAAY,GAAG,IAAI,CAAC;YAC/F,CAAC;QACF,CAAC;aAAM,CAAC;YACP,qFAAqF;YACrF,IAAI,CAAC,cAAc;gBAClB,MAAM,IAAI,yBAAW,CAAC,oFAAoF,CAAC,CAAC;YAC7G,UAAU,GAAG;gBACZ,EAAE,IAAI,EAAE,cAAc,EAAE,YAAY,EAAE,IAAI,EAAE;gBAC5C,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,IAAI,EAAE;gBAC1C,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,IAAI,EAAE;aAC1C,CAAC;QACH,CAAC;QACD,IAAA,oBAAK,EAAC;YACL,QAAQ,EAAE,cAAc,CAAC,QAAQ,IAAI,cAAc,CAAC,MAAM;YAC1D,KAAK,EAAE,cAAc,CAAC,KAAK;YAC3B,UAAU;YACV,aAAa;YACb,UAAU,EAAE,cAAc,CAAC,UAAU;YACrC,KAAK,EAAE,cAAc,CAAC,KAAK;SAC3B,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,kBAAkB;QACvC,MAAM,QAAQ,CAAC,kBAAkB,CAAC,CAAC,aAAa,CAAC;YAChD;gBACC,IAAI,EAAE,kBAAkB,CAAC,SAAS;gBAClC,OAAO,EAAE,kBAAkB,CAAC,OAAO,IAAI,IAAI;aACpC;SACR,CAAC,CAAC;QACH,OAAO,aAAa,kBAAkB,CAAC,MAAM,IAAI,kBAAkB,CAAC,KAAK,IAAI,kBAAkB,CAAC,SAAS,wBAAwB,CAAC;IACnI,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,gBAAgB;QACnC,MAAM,KAAK,GAAG,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QACzC,MAAM,KAAK,CAAC,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC;QAC3D,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;YAC1B,sDAAsD;YACtD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,SAAS,CAAC;YAC5C,IAAI,UAAU,CAAC;YACf,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAiB,EAAE;gBAC5D,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;gBACvB,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACxB,OAAO,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YACrD,CAAC,CAAC;YACF,KAAK,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;gBAC5G,UAAU,GAAG,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;gBAChD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC;YACvD,CAAC;YACD,MAAM,UAAU,CAAC;QAClB,CAAC;QACD,OAAO,wBAAwB,gBAAgB,CAAC,MAAM,IAAI,gBAAgB,CAAC,KAAK,IAAI,gBAAgB,CAAC,SAAS,EAAE,CAAC;IAClH,CAAC;IAED,SAAS,CAAC,eAAe;QACxB,OAAO,QAAQ,CAAC,eAAe,CAAC,CAAC,SAAS,EAAE,CAAC;IAC9C,CAAC;IAED,YAAY,CAAC,eAAe;QAC3B,IAAA,uBAAQ,EAAC;YACR,QAAQ,EAAE,eAAe,CAAC,MAAM;YAChC,KAAK,EAAE,IAAI;SACX,CAAC,CAAC;QACH,OAAO,UAAU,CAAC,kBAAkB,CACnC,IAAI,uBAAc,CAAC,OAAO,CAAC,GAAG,EAAE,6BAAe,CAAC,aAAa,EAAE,eAAe,CAAC,MAAM,CAAC,CACtF,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,aAAa;QAC7B,MAAM,IAAA,2BAAY,EAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACzC,UAAU,CAAC,kBAAkB,CAAC,IAAI,uBAAc,CAAC,OAAO,CAAC,GAAG,EAAE,6BAAe,CAAC,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;IACnH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAS;QAC5B,SAAS,CAAC,iBAAiB,GAAG,IAAI,CAAC;QACnC,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAS;QAC5B,SAAS,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACtC,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IACtC,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAS;QAC5B,MAAM,EAAE,UAAU,EAAE,GAAG,IAAA,iCAAoB,EAAC,SAAS,CAAC,CAAC;QAEvD,IAAI,cAAc,CAAC;QACnB,MAAM,KAAK,GAAG,IAAA,2BAAY,GAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAChE,MAAM,OAAO,GAAY;YACxB,IAAI,EAAE,SAAS,CAAC,QAAQ;YACxB,SAAS,EAAE,SAAS,CAAC,SAAS;YAC9B,oBAAoB,EAAE,SAAS,CAAC,SAAS;SACzC,CAAC;QACF,IAAI,SAAS,CAAC,WAAW;YAAE,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC;QACvE,IAAI,SAAS,CAAC,sBAAsB;YAAE,OAAO,CAAC,sBAAsB,GAAG,SAAS,CAAC,sBAAsB,CAAC;QACxG,OAAO,IAAA,4BAAW,EAAC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE;YACjD,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;gBAC1B,cAAc,GAAG,EAAE,CAAC;gBACpB,KAAK,MAAM,cAAc,IAAI,UAAU,EAAE,CAAC;oBACzC,MAAM,iBAAiB,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAC9C,CAAC,iBAAiB,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,IAAI,cAAc,CAC/D,CAAC;oBACF,IAAI,CAAC,iBAAiB,EAAE,CAAC;wBACxB,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;oBACrC,CAAC;gBACF,CAAC;gBACD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC/B,MAAM,KAAK,CAAC,aAAa,CACxB,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBAC7B,IAAI;wBACJ,OAAO,EAAE,IAAI;qBACb,CAAC,CAAC,CACH,CAAC;gBACH,CAAC;YACF,CAAC;YAED,MAAM,IAAI,GAAG,EAAE,CAAC;YAChB,MAAM,OAAO,GAAG,EAAE,CAAC;YACnB,KAAK,MAAM,MAAM,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;gBACxC,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;gBACpC,IAAI,cAAc,GAAG,EAAE,IAAI,SAAS,IAAI,CAAC,MAAM,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;gBACvE,IAAI,CAAC,SAAS,CAAC,iBAAiB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,oBAAoB,IAAI,cAAc,CAAC,EAAE,CAAC;oBAC5G,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;oBACvC,SAAS;gBACV,CAAC;gBACD,IAAI,cAAc;oBAAE,cAAc,GAAG,IAAA,yBAAY,EAAC,cAAc,CAAC,CAAC;gBAClE,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;oBAC1B,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC;wBACvD,IAAI,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;wBACxB,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;4BACjC,IAAI,CAAC;gCACJ,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;gCAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;oCACjC,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;oCACjC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;gCACrB,CAAC;4BACF,CAAC;4BAAC,OAAO,KAAK,EAAE,CAAC;gCAChB,KAAK,CAAC,OAAO,IAAI,oBAAoB,GAAG,GAAG,GAAG,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gCACpF,MAAM,KAAK,CAAC;4BACb,CAAC;wBACF,CAAC;oBACF,CAAC;gBACF,CAAC;gBACD,MAAM,CAAC,EAAE,IAAI,SAAS;oBACrB,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;oBAC/B,CAAC,CAAC,cAAc;wBACf,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC;wBAC9B,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;gBAChC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;YACrC,CAAC;YACD,OAAO;gBACN,QAAQ,EAAG,WAAmB,CAAC,SAAS;gBACxC,cAAc,EAAE,IAAI;gBACpB,cAAc;gBACd,cAAc,EAAE,OAAO;aACvB,CAAC;QACH,CAAC,CAAC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAS;QAC5B,MAAM,KAAK,GAAG,IAAA,2BAAY,GAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAChE,MAAM,OAAO,GAAY,EAAE,IAAI,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC;QACtD,IAAI,SAAS,CAAC,WAAW;YAAE,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC;QACvE,IAAI,SAAS,CAAC,sBAAsB;YAAE,OAAO,CAAC,sBAAsB,GAAG,SAAS,CAAC,sBAAsB,CAAC;QACxG,OAAO,IAAA,4BAAW,EAAC,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE;YACjD,MAAM,GAAG,GACR,SAAS,CAAC,GAAG,IAAI,SAAS,CAAC,WAAW,IAAI,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;YACvG,6FAA6F;YAC7F,6FAA6F;YAC7F,wFAAwF;YACxF,+EAA+E;YAC/E,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;gBACtB,IAAI,EAAE,IAAI,IAAI;oBAAE,MAAM,IAAI,yBAAW,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;YAC3E,CAAC;YACD,MAAM,OAAO,GAAG,EAAE,CAAC;YACnB,MAAM,OAAO,GAAG,EAAE,CAAC;YACnB,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;gBACtB,IAAI,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC;oBAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;;oBACjD,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACvB,CAAC;YACD,OAAO,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAG,WAAmB,CAAC,SAAS,CAAC,CAAC;QAC/E,CAAC,CAAC,CAAC;IACJ,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,mBAAmB,CAAC,SAAS;QAClC,MAAM,KAAK,GAAG,IAAA,2BAAY,GAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAChE,IAAI,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;YAChC,MAAM,IAAI,yBAAW,CACpB,2GAA2G,CAC3G,CAAC;QACH,CAAC;QAED,MAAM,eAAe,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC;YAC1C,UAAU,EAAE;gBACX;oBACC,SAAS,EAAE,KAAK,CAAC,mBAAmB,CAAC,IAAI;oBACzC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC;oBACjC,UAAU,EAAE,sCAAwB,CAAC,IAAI;iBACzC;aACD;SACM,CAAC,CAAC;QAEV,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,MAAM,UAAU,GAAG,EAAE,CAAC;QACtB,MAAM,UAAU,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,MAAM,WAAW,GAAG,KAAK,IAAI,EAAE;YAC9B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC;gBAC1C,MAAM,EAAE,SAAS,CAAC,MAAM;gBACxB,KAAK,EAAE,SAAS,CAAC,KAAK;gBACtB,GAAG;aACH,CAAC,CAAC;YACH,UAAU,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC;YAC7C,UAAU,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC;YAC7C,MAAM,IAAA,iCAAe,EAAC,eAAe,CAAC,CAAC;YACvC,GAAG,GAAG,EAAE,CAAC;YACT,YAAY,GAAG,IAAI,CAAC;QACrB,CAAC,CAAC;QAEF,IAAI,KAAK,EAAE,MAAM,OAAO,IAAI,eAAe,EAAE,CAAC;YAC7C,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;YACpC,CAAC,EAAE,CAAC;YACJ,IAAI,CAAC,GAAG,YAAY,KAAK,CAAC,EAAE,CAAC;gBAC5B,MAAM,WAAW,EAAE,CAAC;YACrB,CAAC;QACF,CAAC;QAED,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,WAAW,EAAE,CAAC;QAExC,IAAI,CAAC,YAAY,EAAE,CAAC;YACnB,OAAO,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC;QAClD,CAAC;QAED,OAAO,oBAAoB,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;IAChE,CAAC;IAED;;;OAGG;IACH,YAAY,CAAC,YAAY;QACxB,IAAI,YAAY,CAAC,MAAM,KAAK,SAAS;YAAE,YAAY,CAAC,cAAc,GAAG,YAAY,CAAC,MAAM,CAAC;QACzF,MAAM,eAAe,GAAG,IAAA,4BAAe,EAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;QAChE,IAAI,eAAe,EAAE,CAAC;YACrB,MAAM,eAAe,CAAC;QACvB,CAAC;QACD,OAAO,UAAU,CAAC,YAAY,CAAC,CAAC;IACjC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,aAAa,CAAC,YAAY;QAC/B,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;QACtB,YAAY,CAAC,eAAe,GAAG,IAAI,CAAC;QACpC,IAAI,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,UAAU,CAAC,YAAY,EAAE,IAAI,CAAQ,EAAE,CAAC;YAC1E,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACrB,CAAC;QACD,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,aAAa,CAAC,YAA0B,EAAE,UAAmB;QAC5D,IAAI,UAAU,IAAI,qDAAuC,CAAC,UAAU,CAAC,KAAK,SAAS,EAAE,CAAC;YACrF,MAAM,IAAI,KAAK,CAAC,6BAA6B,UAAU,iBAAiB,CAAC,CAAC;QAC3E,CAAC;QACD,MAAM,GAAG,GAAG,YAAmB,CAAC;QAChC,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS;YAAE,GAAG,CAAC,cAAc,GAAG,GAAG,CAAC,MAAM,CAAC;QAC9D,IAAI,GAAG,CAAC,gBAAgB,KAAK,SAAS;YAAE,GAAG,CAAC,SAAS,GAAG,GAAG,CAAC,gBAAgB,CAAC;QAC7E,IAAI,GAAG,CAAC,YAAY,KAAK,SAAS;YAAE,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC;QAEjE,MAAM,eAAe,GAAG,IAAA,4BAAe,EAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAC/D,IAAI,eAAe,EAAE,CAAC;YACrB,MAAM,eAAe,CAAC;QACvB,CAAC;QAED,MAAM,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;QACrC,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,MAAM,IAAI,yBAAW,CAAC,SAAS,YAAY,CAAC,KAAK,YAAY,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,KAAK,GAAQ,YAAY,CAAC,KAAK,CAAC;QACpC,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC3B,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBACzB,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;wBACnB,UAAU,GAAG,UAAU,CAAC;wBACxB,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;oBAC5B,CAAC;gBACF,CAAC;qBAAM,CAAC;oBACP,UAAU,GAAG,WAAW,CAAC;oBACzB,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACxB,CAAC;YACF,CAAC;iBAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAChC,UAAU,GAAG,aAAa,CAAC;gBAC3B,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAC5B,CAAC;QACF,CAAC;QACD,IAAI,UAAU,KAAK,sCAAwB,CAAC,OAAO;YAAE,KAAK,GAAG,CAAC,KAAK,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;QAC7F,MAAM,UAAU,GACf,KAAK,KAAK,GAAG;YACZ,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC;gBACA;oBACC,SAAS,EAAE,YAAY,CAAC,SAAS;oBACjC,KAAK;oBACL,UAAU;iBACV;aACD,CAAC;QAEL,OAAO,KAAK,CAAC,MAAM,CAClB;YACC,UAAU;YACV,aAAa,EAAE,IAAI;YACnB,KAAK,EAAE,YAAY,CAAC,KAAK;YACzB,MAAM,EAAE,YAAY,CAAC,MAAM;YAC3B,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,IAAI,EAAG,YAAoB,CAAC,IAAI;YAChC,MAAM,EAAE,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC;SAC/B,EACR;YACC,YAAY,EAAG,YAAoB,CAAC,YAAY;YAChD,YAAY,EAAG,YAAoB,CAAC,YAAY;YAChD,OAAO,EAAG,YAAoB,CAAC,OAAO;YACtC,aAAa,EAAG,YAAoB,CAAC,aAAa;SAClD,CACD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,YAA0B,EAAE,UAAmB;QACnE,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;QACtB,MAAM,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,YAAY,CAAC,cAAoC,CAAC;QAChE,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG;YACjE,8DAA8D;YAC9D,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC9B,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,UAAU,CAAC,EAAE,CAAC;YACzE,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,YAAY,CAAC,MAAM,EAAE,KAAK;QACzB,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,YAAY,CAAC,YAAY,EAAE,EAAE,CAAC;IAC5D,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,2BAA2B,CAAC,SAMjC;QACA,IAAI,YAAY,GAAG,IAAI,0EAAkC,EAAE,CAAC;QAC5D,MAAM,MAAM,GACX,SAAS,CAAC,SAAS,YAAY,IAAI;YAClC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE;YAC/B,CAAC,CAAC,OAAO,SAAS,CAAC,SAAS,KAAK,QAAQ;gBACxC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,SAAS,CAAC;gBACtC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC;QACzB,MAAM,YAAY,GAAG,SAAS,CAAC,QAAQ,IAAI,SAAS,CAAC,MAAM,IAAI,gBAAgB,CAAC;QAChF,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;QAClC,2FAA2F;QAC3F,uFAAuF;QACvF,iGAAiG;QACjG,IAAI,SAAS,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK;YACpC,MAAM,IAAA,4BAAc,EACnB,IAAI,KAAK,EAAE,EACX,cAAc,CAAC,eAAe,CAAC,YAAY,EAAE,SAAS,CAAC,KAAK,CAAC,EAC7D,GAAG,EACH,SAAS,EACT,SAAS,EACT,IAAI,CACJ,CAAC;QACH,IAAI,CAAC,KAAK,EAAE,CAAC;YACZ,mDAAmD;YACnD,kFAAkF;YAClF,yBAAyB;YACzB,MAAM,MAAM,GAAG,IAAA,2BAAY,GAAE,CAAC,YAAY,CAAC,CAAC;YAC5C,IAAI,MAAM,EAAE,CAAC;gBACZ,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC3C,IAAI,KAAK,CAAC,YAAY,YAAY,0BAAa,EAAE,CAAC;wBACjD,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC;wBACnF,YAAY,CAAC,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC;wBACjD,YAAY,CAAC,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;wBACrF,MAAM;oBACP,CAAC;gBACF,CAAC;YACF,CAAC;QACF,CAAC;aAAM,IAAI,KAAK,CAAC,YAAY,YAAY,0BAAa,EAAE,CAAC;YACxD,qFAAqF;YACrF,6FAA6F;YAC7F,MAAM,IAAA,4BAAc,EACnB,IAAI,KAAK,EAAE,EACX,uLAAuL,YAAY,qFAAqF,EACxR,GAAG,EACH,SAAS,EACT,SAAS,EACT,IAAI,CACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACP,YAAY,CAAC,eAAe,IAAI,MAAM,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC,uBAAuB,CAAC,CAAC;QACtG,CAAC;QACD,OAAO,YAAY,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,eAAe;QACjC,MAAM,KAAK,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC;QACxC,MAAM,SAAS,GAAG,EAAE,CAAC;QACrB,QAAQ,eAAe,CAAC,WAAW,EAAE,CAAC;YACrC,KAAK,8CAAgC,CAAC,UAAU;gBAC/C,iCAAiC;gBACjC,KAAK,MAAM,EAAE,IAAI,eAAe,CAAC,aAAa,EAAE,CAAC;oBAChD,SAAS,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;wBACxE,IAAI,SAAS,GAAG,WAAW,CAAC,SAAS,IAAI,WAAW,CAAC,IAAI,CAAC;wBAC1D,IAAI,SAAS,KAAK,KAAK;4BAAE,SAAS,GAAG,QAAQ,CAAC;wBAC9C,OAAO;4BACN,SAAS;4BACT,SAAS,EAAE,WAAW,CAAC,OAAO;4BAC9B,SAAS,EAAE,WAAW,CAAC,IAAI;4BAC3B,GAAG,EAAE,CAAC,EAAE,CAAC;4BACT,OAAO,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC;yBAC5B,CAAC;oBACH,CAAC,CAAC,CAAC;gBACJ,CAAC;gBACD,OAAO,SAAS,CAAC;YAClB,KAAK,8CAAgC,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAChD,MAAM,KAAK,GAAG,eAAe,CAAC,aAAa,CAAC;gBAC5C,qDAAqD;gBACrD,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,qBAAqB,CAAC,KAAK,CAAC,EAAE,CAAC;oBACxD,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;wBACrC,MAAM,cAAc,GAAG,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC;wBACvF,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC5B,CAAC;gBACF,CAAC;gBACD,OAAO,SAAS,CAAC;YAClB,CAAC;YACD;gBACC,OAAO,qBAAqB,CAC3B,KAAK,EACL,eAAe,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,kBAAkB;gBACtD,eAAe,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,gBAAgB;gBACpD,eAAe,CAAC,KAAK,CACrB,CAAC;QACJ,CAAC;IACF,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,YAQf;QACA,MAAM,YAAY,GAAG,YAAY,CAAC,QAAQ,IAAI,YAAY,CAAC,MAAM,IAAI,MAAM,CAAC;QAC5E,MAAM,QAAQ,GAAG,IAAA,2BAAY,GAAE,CAAC,YAAY,CAAC,CAAC;QAC9C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACf,MAAM,IAAI,yBAAW,CAAC,aAAa,YAAY,kBAAkB,EAAE,GAAG,CAAC,CAAC;QACzE,CAAC;QACD,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACtD,IAAI,CAAC,UAAU,EAAE,CAAC;YACjB,MAAM,IAAI,yBAAW,CAAC,aAAa,YAAY,4BAA4B,CAAC,CAAC;QAC9E,CAAC;QACD,IAAI,UAAU,CAAC,YAAY,CAAC,SAAS,YAAY,0BAAa,EAAE,CAAC;YAChE,iFAAiF;YACjF,oFAAoF;YACpF,IAAI,YAAY,CAAC,MAAM,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC;gBAC/C,MAAM,IAAI,yBAAW,CAAC,mFAAmF,CAAC,CAAC;YAC5G,CAAC;YACD,IAAI,YAAY,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;gBAC9C,MAAM,IAAI,yBAAW,CACpB,4FAA4F,CAC5F,CAAC;YACH,CAAC;YACD,IAAI,YAAY,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,YAAY,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC/E,MAAM,IAAI,yBAAW,CAAC,0BAA0B,CAAC,CAAC;YACnD,CAAC;YACD,IAAI,YAAY,CAAC,aAAa,KAAK,SAAS,IAAI,OAAO,YAAY,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;gBACjG,MAAM,IAAI,yBAAW,CAAC,mCAAmC,CAAC,CAAC;YAC5D,CAAC;YACD,MAAM,SAAS,GAAG,IAAA,yCAAsB,EAAC,YAAY,CAAC,CAAC;YACvD,oFAAoF;YACpF,gFAAgF;YAChF,OAAO,IAAA,qCAAkB,EACxB,SAAS,EACT,YAAY,EACZ,YAAY,CAAC,IAAI,KAAK,KAAK,EAC3B,YAAY,CAAC,aAAa,KAAK,IAAI,CACnC,CAAC;QACH,CAAC;QACD,IAAI,YAAY,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACrC,MAAM,IAAI,yBAAW,CAAC,0FAA0F,CAAC,CAAC;QACnH,CAAC;QACD,OAAO,IAAA,0BAAa,EAAC,YAAY,CAAC,CAAC;IACpC,CAAC;CACD;AAlkBD,wCAkkBC;AAED,SAAS,SAAS,CAAC,EAAE,cAAc,EAAO,EAAE,KAAU;IACrD,IAAI,cAAc,EAAE,CAAC;QACpB,IAAI,cAAc,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YAC/B,IAAI,KAAK,CAAC,aAAa;gBAAE,OAAO;;gBAC3B,cAAc,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC3E,CAAC;QACD,cAAc,CAAC,UAAU,GAAG,IAAI,CAAC;QACjC,OAAO,cAAc,CAAC;IACvB,CAAC;AACF,CAAC;AACD;;GAEG;AACH,SAAS,UAAU,CAAC,YAAY,EAAE,cAAe;IAChD,MAAM,KAAK,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IAC9C,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,MAAM,IAAI,yBAAW,CAAC,SAAS,YAAY,CAAC,KAAK,YAAY,CAAC,CAAC;IAChE,CAAC;IACD,IAAI,IAAI,CAAC;IACT,IAAI,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,IAAI,GAAG,IAAI,CAAC;IAC5F,2FAA2F;IAC3F,mBAAmB;IACnB,MAAM,OAAO,GAAG;QACf,IAAI,EAAE,YAAY,CAAC,QAAQ;QAC3B,YAAY,EAAE,YAAY,CAAC,YAAY;QACvC,YAAY,EAAE,YAAY,CAAC,YAAY;QACvC,OAAO,EAAE,YAAY,CAAC,OAAO;QAC7B,aAAa,EAAE,YAAY,CAAC,aAAa;KACzC,CAAC;IACF,IAAI,iBAAiB,CAAC;IACtB,IAAA,4BAAW,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,iBAAiB,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACpF,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,IAAI,YAAY,CAAC,WAAW,CAAC;IACzD,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO;QACN,CAAC,MAAM,CAAC,aAAa,CAAC;YACrB,OAAO;gBACN,KAAK,CAAC,IAAI;oBACT,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC;wBACpB,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;wBACpB,IAAI,MAAM,CAAC;wBACX,IAAI,CAAC;4BACJ,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAS,EAAE,OAAO,CAAC,CAAC;4BAC/D,MAAM,GAAG,MAAM,IAAI,IAAA,yBAAY,EAAC,MAAM,CAAC,CAAC;wBACzC,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BAChB,MAAM,GAAG;gCACR,OAAO,EAAE,IAAA,gCAAa,EAAC,KAAK,CAAC;6BAC7B,CAAC;wBACH,CAAC;wBACD,IAAI,cAAc;4BACjB,OAAO;gCACN,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;6BACjC,CAAC;;4BACE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;oBAC/B,CAAC;yBAAM,CAAC;wBACP,iBAAiB,EAAE,CAAC;wBACpB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;oBACvB,CAAC;gBACF,CAAC;gBACD,MAAM,CAAC,KAAK;oBACX,iBAAiB,EAAE,CAAC;oBACpB,OAAO;wBACN,KAAK;wBACL,IAAI,EAAE,IAAI;qBACV,CAAC;gBACH,CAAC;gBACD,0CAA0C;gBAC1C,KAAK,CAAC,KAAK;oBACV,iBAAiB,EAAE,CAAC;oBACpB,OAAO;wBACN,IAAI,EAAE,IAAI;qBACV,CAAC;gBACH,CAAC;aACD,CAAC;QACH,CAAC;KACD,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,QAAQ,CAAC,eAAuE;IACxF,MAAM,YAAY,GAAG,eAAe,CAAC,QAAQ,IAAI,eAAe,CAAC,MAAM,IAAI,gBAAgB,CAAC;IAC5F,MAAM,MAAM,GAAG,IAAA,2BAAY,GAAE,CAAC,YAAY,CAAC,CAAC;IAC5C,IAAI,CAAC,MAAM;QAAE,MAAM,IAAA,4BAAc,EAAC,IAAI,KAAK,EAAE,EAAE,cAAc,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE,GAAG,CAAC,CAAC;IACnG,4FAA4F;IAC5F,OAAO,eAAe,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAClF,CAAC;AAED;;;;;;GAMG;AACH,SAAS,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO;IACtD,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC9C,MAAM,MAAM,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IAElD,OAAO;QACN,OAAO,EAAE,GAAG,OAAO,CAAC,MAAM,OAAO,KAAK,IAAI,MAAM,uBAAuB;QACvE,cAAc,EAAE,OAAO;QACvB,cAAc,EAAE,OAAO;QACvB,QAAQ,EAAE,OAAO;KACjB,CAAC;AACH,CAAC;AAED,KAAK,SAAS,CAAC,CAAC,qBAAqB,CAAC,KAAK,EAAE,KAAM,EAAE,GAAI,EAAE,KAAM;IAChE,IAAI,QAAQ,CAAC;IACb,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;QACxD,IAAI,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,IAAI,CAAC;QAC9C,IAAI,SAAS,KAAK,KAAK;YAAE,SAAS,GAAG,QAAQ,CAAC;QAC9C,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;QAChD,IAAI,QAAQ,EAAE,SAAS,KAAK,SAAS,EAAE,CAAC;YACvC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACtB,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;aAAM,CAAC;YACP,IAAI,QAAQ,EAAE,CAAC;gBACd,MAAM,QAAQ,CAAC;gBACf,KAAK,EAAE,CAAC;gBACR,IAAI,KAAK,IAAI,KAAK,IAAI,KAAK,EAAE,CAAC;oBAC7B,QAAQ,GAAG,SAAS,CAAC;oBACrB,MAAM;gBACP,CAAC;YACF,CAAC;YACD,QAAQ,GAAG;gBACV,SAAS;gBACT,SAAS,EAAE,KAAK,CAAC,IAAI;gBACrB,SAAS;gBACT,GAAG,EAAE,CAAC,EAAE,CAAC;gBACT,OAAO,EAAE,CAAC,KAAK,CAAC;aAChB,CAAC;QACH,CAAC;IACF,CAAC;IACD,IAAI,QAAQ;QAAE,MAAM,QAAQ,CAAC;AAC9B,CAAC"}
|
|
1
|
+
{"version":3,"file":"ResourceBridge.js","sourceRoot":"","sources":["../../../dataLayer/harperBridge/ResourceBridge.ts"],"names":[],"mappings":"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"}
|
package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.d.ts
CHANGED
|
@@ -7,10 +7,12 @@ declare class DeleteAuditLogsBeforeResults {
|
|
|
7
7
|
* @param {number} startTimestamp
|
|
8
8
|
* @param {number} endTimestamp
|
|
9
9
|
* @param {number} transactionsDeleted
|
|
10
|
+
* @param {number} logFilesDeleted
|
|
10
11
|
*/
|
|
11
|
-
constructor(startTimestamp?: number, endTimestamp?: number, transactionsDeleted?: number);
|
|
12
|
+
constructor(startTimestamp?: number, endTimestamp?: number, transactionsDeleted?: number, logFilesDeleted?: number);
|
|
12
13
|
start_timestamp: number;
|
|
13
14
|
end_timestamp: number;
|
|
14
15
|
transactions_deleted: number;
|
|
16
|
+
log_files_deleted: number;
|
|
15
17
|
deprecated: string;
|
|
16
18
|
}
|