@harperfast/harper 5.0.0-alpha.10
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/CODE_OF_CONDUCT.md +83 -0
- package/LICENSE +201 -0
- package/README.md +54 -0
- package/SECURITY.md +18 -0
- package/SUPPORT.md +26 -0
- package/dist/bin/BinObjects.d.ts +9 -0
- package/dist/bin/BinObjects.js +15 -0
- package/dist/bin/BinObjects.js.map +1 -0
- package/dist/bin/cliOperations.d.ts +12 -0
- package/dist/bin/cliOperations.js +156 -0
- package/dist/bin/cliOperations.js.map +1 -0
- package/dist/bin/copyDb.d.ts +2 -0
- package/dist/bin/copyDb.js +298 -0
- package/dist/bin/copyDb.js.map +1 -0
- package/dist/bin/harper.d.ts +2 -0
- package/dist/bin/harper.js +148 -0
- package/dist/bin/harper.js.map +1 -0
- package/dist/bin/install.d.ts +2 -0
- package/dist/bin/install.js +16 -0
- package/dist/bin/install.js.map +1 -0
- package/dist/bin/lite.d.ts +1 -0
- package/dist/bin/lite.js +6 -0
- package/dist/bin/lite.js.map +1 -0
- package/dist/bin/restart.d.ts +13 -0
- package/dist/bin/restart.js +194 -0
- package/dist/bin/restart.js.map +1 -0
- package/dist/bin/run.d.ts +21 -0
- package/dist/bin/run.js +365 -0
- package/dist/bin/run.js.map +1 -0
- package/dist/bin/status.d.ts +2 -0
- package/dist/bin/status.js +56 -0
- package/dist/bin/status.js.map +1 -0
- package/dist/bin/stop.d.ts +2 -0
- package/dist/bin/stop.js +17 -0
- package/dist/bin/stop.js.map +1 -0
- package/dist/bin/upgrade.d.ts +7 -0
- package/dist/bin/upgrade.js +111 -0
- package/dist/bin/upgrade.js.map +1 -0
- package/dist/components/Application.d.ts +110 -0
- package/dist/components/Application.js +509 -0
- package/dist/components/Application.js.map +1 -0
- package/dist/components/ApplicationScope.d.ts +28 -0
- package/dist/components/ApplicationScope.js +81 -0
- package/dist/components/ApplicationScope.js.map +1 -0
- package/dist/components/Component.d.ts +21 -0
- package/dist/components/Component.js +43 -0
- package/dist/components/Component.js.map +1 -0
- package/dist/components/ComponentV1.d.ts +69 -0
- package/dist/components/ComponentV1.js +263 -0
- package/dist/components/ComponentV1.js.map +1 -0
- package/dist/components/DEFAULT_CONFIG.d.ts +18 -0
- package/dist/components/DEFAULT_CONFIG.js +22 -0
- package/dist/components/DEFAULT_CONFIG.js.map +1 -0
- package/dist/components/EntryHandler.d.ts +61 -0
- package/dist/components/EntryHandler.js +148 -0
- package/dist/components/EntryHandler.js.map +1 -0
- package/dist/components/OptionsWatcher.d.ts +75 -0
- package/dist/components/OptionsWatcher.js +281 -0
- package/dist/components/OptionsWatcher.js.map +1 -0
- package/dist/components/PluginModule.d.ts +5 -0
- package/dist/components/PluginModule.js +3 -0
- package/dist/components/PluginModule.js.map +1 -0
- package/dist/components/Scope.d.ts +49 -0
- package/dist/components/Scope.js +262 -0
- package/dist/components/Scope.js.map +1 -0
- package/dist/components/componentLoader.js +498 -0
- package/dist/components/componentLoader.js.map +1 -0
- package/dist/components/deriveCommonPatternBase.d.ts +1 -0
- package/dist/components/deriveCommonPatternBase.js +34 -0
- package/dist/components/deriveCommonPatternBase.js.map +1 -0
- package/dist/components/deriveGlobOptions.d.ts +13 -0
- package/dist/components/deriveGlobOptions.js +30 -0
- package/dist/components/deriveGlobOptions.js.map +1 -0
- package/dist/components/deriveURLPath.d.ts +3 -0
- package/dist/components/deriveURLPath.js +55 -0
- package/dist/components/deriveURLPath.js.map +1 -0
- package/dist/components/operations.d.ts +97 -0
- package/dist/components/operations.js +556 -0
- package/dist/components/operations.js.map +1 -0
- package/dist/components/operationsValidation.d.ts +44 -0
- package/dist/components/operationsValidation.js +221 -0
- package/dist/components/operationsValidation.js.map +1 -0
- package/dist/components/packageComponent.d.ts +8 -0
- package/dist/components/packageComponent.js +42 -0
- package/dist/components/packageComponent.js.map +1 -0
- package/dist/components/requestRestart.d.ts +3 -0
- package/dist/components/requestRestart.js +27 -0
- package/dist/components/requestRestart.js.map +1 -0
- package/dist/components/resolveBaseURLPath.d.ts +15 -0
- package/dist/components/resolveBaseURLPath.js +38 -0
- package/dist/components/resolveBaseURLPath.js.map +1 -0
- package/dist/components/status/ComponentStatus.d.ts +61 -0
- package/dist/components/status/ComponentStatus.js +102 -0
- package/dist/components/status/ComponentStatus.js.map +1 -0
- package/dist/components/status/ComponentStatusRegistry.d.ts +89 -0
- package/dist/components/status/ComponentStatusRegistry.js +195 -0
- package/dist/components/status/ComponentStatusRegistry.js.map +1 -0
- package/dist/components/status/api.d.ts +104 -0
- package/dist/components/status/api.js +137 -0
- package/dist/components/status/api.js.map +1 -0
- package/dist/components/status/crossThread.d.ts +62 -0
- package/dist/components/status/crossThread.js +343 -0
- package/dist/components/status/crossThread.js.map +1 -0
- package/dist/components/status/errors.d.ts +68 -0
- package/dist/components/status/errors.js +123 -0
- package/dist/components/status/errors.js.map +1 -0
- package/dist/components/status/index.d.ts +35 -0
- package/dist/components/status/index.js +75 -0
- package/dist/components/status/index.js.map +1 -0
- package/dist/components/status/internal.d.ts +40 -0
- package/dist/components/status/internal.js +76 -0
- package/dist/components/status/internal.js.map +1 -0
- package/dist/components/status/registry.d.ts +10 -0
- package/dist/components/status/registry.js +14 -0
- package/dist/components/status/registry.js.map +1 -0
- package/dist/components/status/types.d.ts +94 -0
- package/dist/components/status/types.js +20 -0
- package/dist/components/status/types.js.map +1 -0
- package/dist/config/RootConfigWatcher.d.ts +10 -0
- package/dist/config/RootConfigWatcher.js +59 -0
- package/dist/config/RootConfigWatcher.js.map +1 -0
- package/dist/config/configHelpers.d.ts +6 -0
- package/dist/config/configHelpers.js +47 -0
- package/dist/config/configHelpers.js.map +1 -0
- package/dist/config/configUtils.d.ts +85 -0
- package/dist/config/configUtils.js +801 -0
- package/dist/config/configUtils.js.map +1 -0
- package/dist/config/harperConfigEnvVars.d.ts +46 -0
- package/dist/config/harperConfigEnvVars.js +527 -0
- package/dist/config/harperConfigEnvVars.js.map +1 -0
- package/dist/dataLayer/CreateAttributeObject.d.ts +19 -0
- package/dist/dataLayer/CreateAttributeObject.js +23 -0
- package/dist/dataLayer/CreateAttributeObject.js.map +1 -0
- package/dist/dataLayer/CreateTableObject.d.ts +7 -0
- package/dist/dataLayer/CreateTableObject.js +10 -0
- package/dist/dataLayer/CreateTableObject.js.map +1 -0
- package/dist/dataLayer/DataLayerObjects.d.ts +22 -0
- package/dist/dataLayer/DataLayerObjects.js +33 -0
- package/dist/dataLayer/DataLayerObjects.js.map +1 -0
- package/dist/dataLayer/DeleteBeforeObject.d.ts +18 -0
- package/dist/dataLayer/DeleteBeforeObject.js +21 -0
- package/dist/dataLayer/DeleteBeforeObject.js.map +1 -0
- package/dist/dataLayer/DeleteObject.d.ts +19 -0
- package/dist/dataLayer/DeleteObject.js +23 -0
- package/dist/dataLayer/DeleteObject.js.map +1 -0
- package/dist/dataLayer/DropAttributeObject.d.ts +7 -0
- package/dist/dataLayer/DropAttributeObject.js +10 -0
- package/dist/dataLayer/DropAttributeObject.js.map +1 -0
- package/dist/dataLayer/GetBackupObject.d.ts +16 -0
- package/dist/dataLayer/GetBackupObject.js +20 -0
- package/dist/dataLayer/GetBackupObject.js.map +1 -0
- package/dist/dataLayer/InsertObject.d.ts +20 -0
- package/dist/dataLayer/InsertObject.js +24 -0
- package/dist/dataLayer/InsertObject.js.map +1 -0
- package/dist/dataLayer/ReadAuditLogObject.d.ts +18 -0
- package/dist/dataLayer/ReadAuditLogObject.js +22 -0
- package/dist/dataLayer/ReadAuditLogObject.js.map +1 -0
- package/dist/dataLayer/SQLSearch.d.ts +171 -0
- package/dist/dataLayer/SQLSearch.js +1168 -0
- package/dist/dataLayer/SQLSearch.js.map +1 -0
- package/dist/dataLayer/SearchByConditionsObject.d.ts +85 -0
- package/dist/dataLayer/SearchByConditionsObject.js +57 -0
- package/dist/dataLayer/SearchByConditionsObject.js.map +1 -0
- package/dist/dataLayer/SearchByHashObject.d.ts +17 -0
- package/dist/dataLayer/SearchByHashObject.js +20 -0
- package/dist/dataLayer/SearchByHashObject.js.map +1 -0
- package/dist/dataLayer/SearchObject.d.ts +30 -0
- package/dist/dataLayer/SearchObject.js +33 -0
- package/dist/dataLayer/SearchObject.js.map +1 -0
- package/dist/dataLayer/SqlSearchObject.d.ts +10 -0
- package/dist/dataLayer/SqlSearchObject.js +13 -0
- package/dist/dataLayer/SqlSearchObject.js.map +1 -0
- package/dist/dataLayer/UpdateObject.d.ts +18 -0
- package/dist/dataLayer/UpdateObject.js +22 -0
- package/dist/dataLayer/UpdateObject.js.map +1 -0
- package/dist/dataLayer/UpsertObject.d.ts +18 -0
- package/dist/dataLayer/UpsertObject.js +22 -0
- package/dist/dataLayer/UpsertObject.js.map +1 -0
- package/dist/dataLayer/bulkLoad.d.ts +28 -0
- package/dist/dataLayer/bulkLoad.js +624 -0
- package/dist/dataLayer/bulkLoad.js.map +1 -0
- package/dist/dataLayer/dataObjects/BulkLoadObjects.d.ts +17 -0
- package/dist/dataLayer/dataObjects/BulkLoadObjects.js +25 -0
- package/dist/dataLayer/dataObjects/BulkLoadObjects.js.map +1 -0
- package/dist/dataLayer/dataObjects/UpsertObject.d.ts +18 -0
- package/dist/dataLayer/dataObjects/UpsertObject.js +22 -0
- package/dist/dataLayer/dataObjects/UpsertObject.js.map +1 -0
- package/dist/dataLayer/delete.d.ts +22 -0
- package/dist/dataLayer/delete.js +111 -0
- package/dist/dataLayer/delete.js.map +1 -0
- package/dist/dataLayer/export.d.ts +15 -0
- package/dist/dataLayer/export.js +302 -0
- package/dist/dataLayer/export.js.map +1 -0
- package/dist/dataLayer/getBackup.d.ts +8 -0
- package/dist/dataLayer/getBackup.js +28 -0
- package/dist/dataLayer/getBackup.js.map +1 -0
- package/dist/dataLayer/harperBridge/BridgeMethods.d.ts +24 -0
- package/dist/dataLayer/harperBridge/BridgeMethods.js +62 -0
- package/dist/dataLayer/harperBridge/BridgeMethods.js.map +1 -0
- package/dist/dataLayer/harperBridge/ResourceBridge.d.ts +104 -0
- package/dist/dataLayer/harperBridge/ResourceBridge.js +630 -0
- package/dist/dataLayer/harperBridge/ResourceBridge.js.map +1 -0
- package/dist/dataLayer/harperBridge/bridgeUtility/insertUpdateReturnObj.d.ts +14 -0
- package/dist/dataLayer/harperBridge/bridgeUtility/insertUpdateReturnObj.js +24 -0
- package/dist/dataLayer/harperBridge/bridgeUtility/insertUpdateReturnObj.js.map +1 -0
- package/dist/dataLayer/harperBridge/bridgeUtility/insertUpdateValidate.d.ts +11 -0
- package/dist/dataLayer/harperBridge/bridgeUtility/insertUpdateValidate.js +68 -0
- package/dist/dataLayer/harperBridge/bridgeUtility/insertUpdateValidate.js.map +1 -0
- package/dist/dataLayer/harperBridge/harperBridge.d.ts +2 -0
- package/dist/dataLayer/harperBridge/harperBridge.js +18 -0
- package/dist/dataLayer/harperBridge/harperBridge.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/LMDBBridge.d.ts +47 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/LMDBBridge.js +99 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/LMDBBridge.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.d.ts +15 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.js +18 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateAttribute.d.ts +12 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateAttribute.js +74 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateAttribute.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateRecords.d.ts +13 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateRecords.js +54 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateRecords.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateSchema.d.ts +6 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateSchema.js +23 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateSchema.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateTable.d.ts +8 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateTable.js +62 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateTable.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDeleteAuditLogsBefore.d.ts +8 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDeleteAuditLogsBefore.js +82 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDeleteAuditLogsBefore.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDeleteRecords.d.ts +11 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDeleteRecords.js +76 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDeleteRecords.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropAttribute.d.ts +9 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropAttribute.js +83 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropAttribute.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropSchema.d.ts +6 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropSchema.js +73 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropSchema.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropTable.d.ts +6 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropTable.js +110 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropTable.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbFlush.d.ts +14 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbFlush.js +33 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbFlush.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetBackup.d.ts +7 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetBackup.js +110 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetBackup.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetDataByHash.d.ts +6 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetDataByHash.js +21 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetDataByHash.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetDataByValue.d.ts +14 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetDataByValue.js +25 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetDataByValue.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbReadAuditLog.d.ts +7 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbReadAuditLog.js +180 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbReadAuditLog.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByConditions.d.ts +8 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByConditions.js +134 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByConditions.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByHash.d.ts +6 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByHash.js +14 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByHash.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByValue.d.ts +15 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByValue.js +26 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByValue.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbTransaction.d.ts +8 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbTransaction.js +17 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbTransaction.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbUpdateRecords.d.ts +12 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbUpdateRecords.js +52 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbUpdateRecords.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbUpsertRecords.d.ts +15 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbUpsertRecords.js +56 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbUpsertRecords.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBCreateAttributeObject.d.ts +16 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBCreateAttributeObject.js +20 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBCreateAttributeObject.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBDeleteTransactionObject.d.ts +16 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBDeleteTransactionObject.js +22 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBDeleteTransactionObject.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBInsertTransactionObject.d.ts +16 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBInsertTransactionObject.js +21 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBInsertTransactionObject.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBTransactionObject.d.ts +19 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBTransactionObject.js +22 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBTransactionObject.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBUpdateTransactionObject.d.ts +18 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBUpdateTransactionObject.js +23 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBUpdateTransactionObject.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBUpsertTransactionObject.d.ts +18 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBUpsertTransactionObject.js +23 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBUpsertTransactionObject.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/TableSizeObject.d.ts +21 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/TableSizeObject.js +24 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/TableSizeObject.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializeHashSearch.d.ts +7 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializeHashSearch.js +19 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializeHashSearch.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializePaths.d.ts +22 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializePaths.js +137 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializePaths.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCheckForNewAttributes.d.ts +9 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCheckForNewAttributes.js +73 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCheckForNewAttributes.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCreateTransactionsAuditEnvironment.d.ts +8 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCreateTransactionsAuditEnvironment.js +38 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCreateTransactionsAuditEnvironment.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbGetTableSize.d.ts +8 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbGetTableSize.js +29 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbGetTableSize.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbProcessRows.d.ts +17 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbProcessRows.js +63 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbProcessRows.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbSearch.d.ts +106 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbSearch.js +251 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbSearch.js.map +1 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbWriteTransaction.d.ts +8 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbWriteTransaction.js +66 -0
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbWriteTransaction.js.map +1 -0
- package/dist/dataLayer/hdbInfoController.d.ts +28 -0
- package/dist/dataLayer/hdbInfoController.js +203 -0
- package/dist/dataLayer/hdbInfoController.js.map +1 -0
- package/dist/dataLayer/insert.d.ts +44 -0
- package/dist/dataLayer/insert.js +192 -0
- package/dist/dataLayer/insert.js.map +1 -0
- package/dist/dataLayer/readAuditLog.d.ts +8 -0
- package/dist/dataLayer/readAuditLog.js +37 -0
- package/dist/dataLayer/readAuditLog.js.map +1 -0
- package/dist/dataLayer/schema.d.ts +24 -0
- package/dist/dataLayer/schema.js +225 -0
- package/dist/dataLayer/schema.js.map +1 -0
- package/dist/dataLayer/schemaDescribe.d.ts +26 -0
- package/dist/dataLayer/schemaDescribe.js +265 -0
- package/dist/dataLayer/schemaDescribe.js.map +1 -0
- package/dist/dataLayer/search.d.ts +4 -0
- package/dist/dataLayer/search.js +56 -0
- package/dist/dataLayer/search.js.map +1 -0
- package/dist/dataLayer/transaction.d.ts +8 -0
- package/dist/dataLayer/transaction.js +16 -0
- package/dist/dataLayer/transaction.js.map +1 -0
- package/dist/dataLayer/update.d.ts +15 -0
- package/dist/dataLayer/update.js +107 -0
- package/dist/dataLayer/update.js.map +1 -0
- package/dist/globals.d.ts +7 -0
- package/dist/globals.js +12 -0
- package/dist/globals.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.js +40 -0
- package/dist/index.js.map +1 -0
- package/dist/json/systemSchema.json +373 -0
- package/dist/launchServiceScripts/utility/checkNodeVersion.d.ts +4 -0
- package/dist/launchServiceScripts/utility/checkNodeVersion.js +13 -0
- package/dist/launchServiceScripts/utility/checkNodeVersion.js.map +1 -0
- package/dist/resources/DatabaseTransaction.d.ts +96 -0
- package/dist/resources/DatabaseTransaction.js +354 -0
- package/dist/resources/DatabaseTransaction.js.map +1 -0
- package/dist/resources/ErrorResource.d.ts +26 -0
- package/dist/resources/ErrorResource.js +60 -0
- package/dist/resources/ErrorResource.js.map +1 -0
- package/dist/resources/IterableEventQueue.d.ts +19 -0
- package/dist/resources/IterableEventQueue.js +103 -0
- package/dist/resources/IterableEventQueue.js.map +1 -0
- package/dist/resources/LMDBTransaction.d.ts +43 -0
- package/dist/resources/LMDBTransaction.js +371 -0
- package/dist/resources/LMDBTransaction.js.map +1 -0
- package/dist/resources/RecordEncoder.d.ts +65 -0
- package/dist/resources/RecordEncoder.js +700 -0
- package/dist/resources/RecordEncoder.js.map +1 -0
- package/dist/resources/RequestTarget.d.ts +57 -0
- package/dist/resources/RequestTarget.js +91 -0
- package/dist/resources/RequestTarget.js.map +1 -0
- package/dist/resources/Resource.d.ts +152 -0
- package/dist/resources/Resource.js +727 -0
- package/dist/resources/Resource.js.map +1 -0
- package/dist/resources/ResourceInterface.d.ts +162 -0
- package/dist/resources/ResourceInterface.js +3 -0
- package/dist/resources/ResourceInterface.js.map +1 -0
- package/dist/resources/ResourceInterfaceV2.d.ts +21 -0
- package/dist/resources/ResourceInterfaceV2.js +3 -0
- package/dist/resources/ResourceInterfaceV2.js.map +1 -0
- package/dist/resources/ResourceV2.d.ts +30 -0
- package/dist/resources/ResourceV2.js +27 -0
- package/dist/resources/ResourceV2.js.map +1 -0
- package/dist/resources/Resources.d.ts +36 -0
- package/dist/resources/Resources.js +155 -0
- package/dist/resources/Resources.js.map +1 -0
- package/dist/resources/RocksIndexStore.d.ts +24 -0
- package/dist/resources/RocksIndexStore.js +54 -0
- package/dist/resources/RocksIndexStore.js.map +1 -0
- package/dist/resources/RocksTransactionLogStore.d.ts +60 -0
- package/dist/resources/RocksTransactionLogStore.js +344 -0
- package/dist/resources/RocksTransactionLogStore.js.map +1 -0
- package/dist/resources/Table.d.ts +854 -0
- package/dist/resources/Table.js +4350 -0
- package/dist/resources/Table.js.map +1 -0
- package/dist/resources/analytics/hostnames.d.ts +16 -0
- package/dist/resources/analytics/hostnames.js +72 -0
- package/dist/resources/analytics/hostnames.js.map +1 -0
- package/dist/resources/analytics/metadata.d.ts +9 -0
- package/dist/resources/analytics/metadata.js +12 -0
- package/dist/resources/analytics/metadata.js.map +1 -0
- package/dist/resources/analytics/profile.d.ts +2 -0
- package/dist/resources/analytics/profile.js +144 -0
- package/dist/resources/analytics/profile.js.map +1 -0
- package/dist/resources/analytics/read.d.ts +41 -0
- package/dist/resources/analytics/read.js +189 -0
- package/dist/resources/analytics/read.js.map +1 -0
- package/dist/resources/analytics/write.d.ts +131 -0
- package/dist/resources/analytics/write.js +822 -0
- package/dist/resources/analytics/write.js.map +1 -0
- package/dist/resources/auditStore.d.ts +81 -0
- package/dist/resources/auditStore.js +572 -0
- package/dist/resources/auditStore.js.map +1 -0
- package/dist/resources/blob.d.ts +137 -0
- package/dist/resources/blob.js +1273 -0
- package/dist/resources/blob.js.map +1 -0
- package/dist/resources/crdt.d.ts +19 -0
- package/dist/resources/crdt.js +146 -0
- package/dist/resources/crdt.js.map +1 -0
- package/dist/resources/dataLoader.d.ts +98 -0
- package/dist/resources/dataLoader.js +461 -0
- package/dist/resources/dataLoader.js.map +1 -0
- package/dist/resources/databases.d.ts +131 -0
- package/dist/resources/databases.js +1220 -0
- package/dist/resources/databases.js.map +1 -0
- package/dist/resources/graphql.d.ts +19 -0
- package/dist/resources/graphql.js +223 -0
- package/dist/resources/graphql.js.map +1 -0
- package/dist/resources/indexes/HierarchicalNavigableSmallWorld.d.ts +87 -0
- package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js +598 -0
- package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js.map +1 -0
- package/dist/resources/indexes/customIndexes.d.ts +4 -0
- package/dist/resources/indexes/customIndexes.js +10 -0
- package/dist/resources/indexes/customIndexes.js.map +1 -0
- package/dist/resources/indexes/vector.d.ts +2 -0
- package/dist/resources/indexes/vector.js +40 -0
- package/dist/resources/indexes/vector.js.map +1 -0
- package/dist/resources/jsResource.d.ts +24 -0
- package/dist/resources/jsResource.js +82 -0
- package/dist/resources/jsResource.js.map +1 -0
- package/dist/resources/loadEnv.d.ts +5 -0
- package/dist/resources/loadEnv.js +28 -0
- package/dist/resources/loadEnv.js.map +1 -0
- package/dist/resources/login.d.ts +3 -0
- package/dist/resources/login.js +22 -0
- package/dist/resources/login.js.map +1 -0
- package/dist/resources/openApi.d.ts +27 -0
- package/dist/resources/openApi.js +327 -0
- package/dist/resources/openApi.js.map +1 -0
- package/dist/resources/registrationDeprecated.d.ts +4 -0
- package/dist/resources/registrationDeprecated.js +11 -0
- package/dist/resources/registrationDeprecated.js.map +1 -0
- package/dist/resources/replayLogs.d.ts +2 -0
- package/dist/resources/replayLogs.js +170 -0
- package/dist/resources/replayLogs.js.map +1 -0
- package/dist/resources/roles.d.ts +11 -0
- package/dist/resources/roles.js +102 -0
- package/dist/resources/roles.js.map +1 -0
- package/dist/resources/search.d.ts +39 -0
- package/dist/resources/search.js +1333 -0
- package/dist/resources/search.js.map +1 -0
- package/dist/resources/tracked.d.ts +49 -0
- package/dist/resources/tracked.js +665 -0
- package/dist/resources/tracked.js.map +1 -0
- package/dist/resources/transaction.d.ts +9 -0
- package/dist/resources/transaction.js +89 -0
- package/dist/resources/transaction.js.map +1 -0
- package/dist/resources/transactionBroadcast.d.ts +38 -0
- package/dist/resources/transactionBroadcast.js +263 -0
- package/dist/resources/transactionBroadcast.js.map +1 -0
- package/dist/security/auth.d.ts +9 -0
- package/dist/security/auth.js +408 -0
- package/dist/security/auth.js.map +1 -0
- package/dist/security/certificateVerification/certificateVerificationSource.d.ts +18 -0
- package/dist/security/certificateVerification/certificateVerificationSource.js +78 -0
- package/dist/security/certificateVerification/certificateVerificationSource.js.map +1 -0
- package/dist/security/certificateVerification/configValidation.d.ts +14 -0
- package/dist/security/certificateVerification/configValidation.js +101 -0
- package/dist/security/certificateVerification/configValidation.js.map +1 -0
- package/dist/security/certificateVerification/crlVerification.d.ts +29 -0
- package/dist/security/certificateVerification/crlVerification.js +564 -0
- package/dist/security/certificateVerification/crlVerification.js.map +1 -0
- package/dist/security/certificateVerification/index.d.ts +31 -0
- package/dist/security/certificateVerification/index.js +111 -0
- package/dist/security/certificateVerification/index.js.map +1 -0
- package/dist/security/certificateVerification/ocspVerification.d.ts +23 -0
- package/dist/security/certificateVerification/ocspVerification.js +117 -0
- package/dist/security/certificateVerification/ocspVerification.js.map +1 -0
- package/dist/security/certificateVerification/pkijs-ed25519-patch.d.ts +14 -0
- package/dist/security/certificateVerification/pkijs-ed25519-patch.js +183 -0
- package/dist/security/certificateVerification/pkijs-ed25519-patch.js.map +1 -0
- package/dist/security/certificateVerification/types.d.ts +105 -0
- package/dist/security/certificateVerification/types.js +6 -0
- package/dist/security/certificateVerification/types.js.map +1 -0
- package/dist/security/certificateVerification/verificationConfig.d.ts +29 -0
- package/dist/security/certificateVerification/verificationConfig.js +121 -0
- package/dist/security/certificateVerification/verificationConfig.js.map +1 -0
- package/dist/security/certificateVerification/verificationUtils.d.ts +79 -0
- package/dist/security/certificateVerification/verificationUtils.js +441 -0
- package/dist/security/certificateVerification/verificationUtils.js.map +1 -0
- package/dist/security/cryptoHash.d.ts +2 -0
- package/dist/security/cryptoHash.js +35 -0
- package/dist/security/cryptoHash.js.map +1 -0
- package/dist/security/data_objects/PermissionAttributeResponseObject.d.ts +11 -0
- package/dist/security/data_objects/PermissionAttributeResponseObject.js +14 -0
- package/dist/security/data_objects/PermissionAttributeResponseObject.js.map +1 -0
- package/dist/security/data_objects/PermissionResponseObject.d.ts +57 -0
- package/dist/security/data_objects/PermissionResponseObject.js +105 -0
- package/dist/security/data_objects/PermissionResponseObject.js.map +1 -0
- package/dist/security/data_objects/PermissionTableResponseObject.d.ts +16 -0
- package/dist/security/data_objects/PermissionTableResponseObject.js +19 -0
- package/dist/security/data_objects/PermissionTableResponseObject.js.map +1 -0
- package/dist/security/fastifyAuth.d.ts +2 -0
- package/dist/security/fastifyAuth.js +135 -0
- package/dist/security/fastifyAuth.js.map +1 -0
- package/dist/security/impersonation.d.ts +11 -0
- package/dist/security/impersonation.js +139 -0
- package/dist/security/impersonation.js.map +1 -0
- package/dist/security/jsLoader.d.ts +9 -0
- package/dist/security/jsLoader.js +522 -0
- package/dist/security/jsLoader.js.map +1 -0
- package/dist/security/keys.d.ts +119 -0
- package/dist/security/keys.js +866 -0
- package/dist/security/keys.js.map +1 -0
- package/dist/security/permissionsTranslator.d.ts +9 -0
- package/dist/security/permissionsTranslator.js +269 -0
- package/dist/security/permissionsTranslator.js.map +1 -0
- package/dist/security/role.d.ts +5 -0
- package/dist/security/role.js +160 -0
- package/dist/security/role.js.map +1 -0
- package/dist/security/tokenAuthentication.d.ts +38 -0
- package/dist/security/tokenAuthentication.js +205 -0
- package/dist/security/tokenAuthentication.js.map +1 -0
- package/dist/security/user.d.ts +77 -0
- package/dist/security/user.js +349 -0
- package/dist/security/user.js.map +1 -0
- package/dist/server/DurableSubscriptionsSession.d.ts +74 -0
- package/dist/server/DurableSubscriptionsSession.js +511 -0
- package/dist/server/DurableSubscriptionsSession.js.map +1 -0
- package/dist/server/REST.d.ts +16 -0
- package/dist/server/REST.js +423 -0
- package/dist/server/REST.js.map +1 -0
- package/dist/server/Server.d.ts +62 -0
- package/dist/server/Server.js +27 -0
- package/dist/server/Server.js.map +1 -0
- package/dist/server/fastifyRoutes/helpers/getCORSOptions.d.ts +11 -0
- package/dist/server/fastifyRoutes/helpers/getCORSOptions.js +32 -0
- package/dist/server/fastifyRoutes/helpers/getCORSOptions.js.map +1 -0
- package/dist/server/fastifyRoutes/helpers/getHeaderTimeoutConfig.d.ts +6 -0
- package/dist/server/fastifyRoutes/helpers/getHeaderTimeoutConfig.js +13 -0
- package/dist/server/fastifyRoutes/helpers/getHeaderTimeoutConfig.js.map +1 -0
- package/dist/server/fastifyRoutes/helpers/getServerOptions.d.ts +12 -0
- package/dist/server/fastifyRoutes/helpers/getServerOptions.js +30 -0
- package/dist/server/fastifyRoutes/helpers/getServerOptions.js.map +1 -0
- package/dist/server/fastifyRoutes/plugins/hdbCore.d.ts +2 -0
- package/dist/server/fastifyRoutes/plugins/hdbCore.js +31 -0
- package/dist/server/fastifyRoutes/plugins/hdbCore.js.map +1 -0
- package/dist/server/fastifyRoutes.d.ts +25 -0
- package/dist/server/fastifyRoutes.js +235 -0
- package/dist/server/fastifyRoutes.js.map +1 -0
- package/dist/server/graphqlQuerying.d.ts +1 -0
- package/dist/server/graphqlQuerying.js +630 -0
- package/dist/server/graphqlQuerying.js.map +1 -0
- package/dist/server/http.d.ts +15 -0
- package/dist/server/http.js +650 -0
- package/dist/server/http.js.map +1 -0
- package/dist/server/itc/serverHandlers.d.ts +10 -0
- package/dist/server/itc/serverHandlers.js +153 -0
- package/dist/server/itc/serverHandlers.js.map +1 -0
- package/dist/server/itc/utility/ITCEventObject.d.ts +6 -0
- package/dist/server/itc/utility/ITCEventObject.js +9 -0
- package/dist/server/itc/utility/ITCEventObject.js.map +1 -0
- package/dist/server/jobs/JobObject.d.ts +15 -0
- package/dist/server/jobs/JobObject.js +22 -0
- package/dist/server/jobs/JobObject.js.map +1 -0
- package/dist/server/jobs/jobProcess.d.ts +1 -0
- package/dist/server/jobs/jobProcess.js +66 -0
- package/dist/server/jobs/jobProcess.js.map +1 -0
- package/dist/server/jobs/jobRunner.d.ts +11 -0
- package/dist/server/jobs/jobRunner.js +160 -0
- package/dist/server/jobs/jobRunner.js.map +1 -0
- package/dist/server/jobs/jobs.d.ts +20 -0
- package/dist/server/jobs/jobs.js +267 -0
- package/dist/server/jobs/jobs.js.map +1 -0
- package/dist/server/loadRootComponents.d.ts +5 -0
- package/dist/server/loadRootComponents.js +45 -0
- package/dist/server/loadRootComponents.js.map +1 -0
- package/dist/server/mqtt.d.ts +9 -0
- package/dist/server/mqtt.js +466 -0
- package/dist/server/mqtt.js.map +1 -0
- package/dist/server/nodeName.d.ts +5 -0
- package/dist/server/nodeName.js +84 -0
- package/dist/server/nodeName.js.map +1 -0
- package/dist/server/operationsServer.d.ts +48 -0
- package/dist/server/operationsServer.js +265 -0
- package/dist/server/operationsServer.js.map +1 -0
- package/dist/server/serverHelpers/Headers.d.ts +20 -0
- package/dist/server/serverHelpers/Headers.js +134 -0
- package/dist/server/serverHelpers/Headers.js.map +1 -0
- package/dist/server/serverHelpers/JSONStream.d.ts +14 -0
- package/dist/server/serverHelpers/JSONStream.js +322 -0
- package/dist/server/serverHelpers/JSONStream.js.map +1 -0
- package/dist/server/serverHelpers/OperationFunctionObject.d.ts +9 -0
- package/dist/server/serverHelpers/OperationFunctionObject.js +17 -0
- package/dist/server/serverHelpers/OperationFunctionObject.js.map +1 -0
- package/dist/server/serverHelpers/Request.d.ts +69 -0
- package/dist/server/serverHelpers/Request.js +141 -0
- package/dist/server/serverHelpers/Request.js.map +1 -0
- package/dist/server/serverHelpers/contentTypes.d.ts +57 -0
- package/dist/server/serverHelpers/contentTypes.js +639 -0
- package/dist/server/serverHelpers/contentTypes.js.map +1 -0
- package/dist/server/serverHelpers/requestTimePlugin.d.ts +2 -0
- package/dist/server/serverHelpers/requestTimePlugin.js +56 -0
- package/dist/server/serverHelpers/requestTimePlugin.js.map +1 -0
- package/dist/server/serverHelpers/serverHandlers.d.ts +6 -0
- package/dist/server/serverHelpers/serverHandlers.js +130 -0
- package/dist/server/serverHelpers/serverHandlers.js.map +1 -0
- package/dist/server/serverHelpers/serverUtilities.d.ts +29 -0
- package/dist/server/serverHelpers/serverUtilities.js +356 -0
- package/dist/server/serverHelpers/serverUtilities.js.map +1 -0
- package/dist/server/serverRegistry.d.ts +3 -0
- package/dist/server/serverRegistry.js +11 -0
- package/dist/server/serverRegistry.js.map +1 -0
- package/dist/server/static.d.ts +16 -0
- package/dist/server/static.js +164 -0
- package/dist/server/static.js.map +1 -0
- package/dist/server/status/definitions.d.ts +27 -0
- package/dist/server/status/definitions.js +22 -0
- package/dist/server/status/definitions.js.map +1 -0
- package/dist/server/status/index.d.ts +26 -0
- package/dist/server/status/index.js +89 -0
- package/dist/server/status/index.js.map +1 -0
- package/dist/server/storageReclamation.d.ts +18 -0
- package/dist/server/storageReclamation.js +96 -0
- package/dist/server/storageReclamation.js.map +1 -0
- package/dist/server/threads/itc.d.ts +53 -0
- package/dist/server/threads/itc.js +81 -0
- package/dist/server/threads/itc.js.map +1 -0
- package/dist/server/threads/manageThreads.d.ts +30 -0
- package/dist/server/threads/manageThreads.js +579 -0
- package/dist/server/threads/manageThreads.js.map +1 -0
- package/dist/server/threads/socketRouter.d.ts +6 -0
- package/dist/server/threads/socketRouter.js +395 -0
- package/dist/server/threads/socketRouter.js.map +1 -0
- package/dist/server/threads/threadServer.d.ts +5 -0
- package/dist/server/threads/threadServer.js +288 -0
- package/dist/server/threads/threadServer.js.map +1 -0
- package/dist/server/throttle.d.ts +7 -0
- package/dist/server/throttle.js +71 -0
- package/dist/server/throttle.js.map +1 -0
- package/dist/sqlTranslator/SelectValidator.d.ts +79 -0
- package/dist/sqlTranslator/SelectValidator.js +274 -0
- package/dist/sqlTranslator/SelectValidator.js.map +1 -0
- package/dist/sqlTranslator/alasqlFunctionImporter.d.ts +2 -0
- package/dist/sqlTranslator/alasqlFunctionImporter.js +55 -0
- package/dist/sqlTranslator/alasqlFunctionImporter.js.map +1 -0
- package/dist/sqlTranslator/deleteTranslator.d.ts +2 -0
- package/dist/sqlTranslator/deleteTranslator.js +56 -0
- package/dist/sqlTranslator/deleteTranslator.js.map +1 -0
- package/dist/sqlTranslator/index.d.ts +16 -0
- package/dist/sqlTranslator/index.js +215 -0
- package/dist/sqlTranslator/index.js.map +1 -0
- package/dist/sqlTranslator/sql_statement_bucket.d.ts +46 -0
- package/dist/sqlTranslator/sql_statement_bucket.js +430 -0
- package/dist/sqlTranslator/sql_statement_bucket.js.map +1 -0
- package/dist/upgrade/UpgradeObjects.d.ts +5 -0
- package/dist/upgrade/UpgradeObjects.js +12 -0
- package/dist/upgrade/UpgradeObjects.js.map +1 -0
- package/dist/upgrade/directives/directivesController.d.ts +30 -0
- package/dist/upgrade/directives/directivesController.js +76 -0
- package/dist/upgrade/directives/directivesController.js.map +1 -0
- package/dist/upgrade/directivesManager.d.ts +7 -0
- package/dist/upgrade/directivesManager.js +125 -0
- package/dist/upgrade/directivesManager.js.map +1 -0
- package/dist/upgrade/upgradePrompt.d.ts +13 -0
- package/dist/upgrade/upgradePrompt.js +102 -0
- package/dist/upgrade/upgradePrompt.js.map +1 -0
- package/dist/upgrade/upgradeUtilities.d.ts +10 -0
- package/dist/upgrade/upgradeUtilities.js +26 -0
- package/dist/upgrade/upgradeUtilities.js.map +1 -0
- package/dist/utility/AWS/AWSConnector.d.ts +2 -0
- package/dist/utility/AWS/AWSConnector.js +26 -0
- package/dist/utility/AWS/AWSConnector.js.map +1 -0
- package/dist/utility/OperationFunctionCaller.d.ts +9 -0
- package/dist/utility/OperationFunctionCaller.js +58 -0
- package/dist/utility/OperationFunctionCaller.js.map +1 -0
- package/dist/utility/assignCmdEnvVariables.d.ts +10 -0
- package/dist/utility/assignCmdEnvVariables.js +55 -0
- package/dist/utility/assignCmdEnvVariables.js.map +1 -0
- package/dist/utility/common_utils.d.ts +264 -0
- package/dist/utility/common_utils.js +806 -0
- package/dist/utility/common_utils.js.map +1 -0
- package/dist/utility/environment/environmentManager.d.ts +41 -0
- package/dist/utility/environment/environmentManager.js +179 -0
- package/dist/utility/environment/environmentManager.js.map +1 -0
- package/dist/utility/environment/systemInformation.d.ts +67 -0
- package/dist/utility/environment/systemInformation.js +326 -0
- package/dist/utility/environment/systemInformation.js.map +1 -0
- package/dist/utility/errors/commonErrors.d.ts +171 -0
- package/dist/utility/errors/commonErrors.js +230 -0
- package/dist/utility/errors/commonErrors.js.map +1 -0
- package/dist/utility/errors/hdbError.d.ts +76 -0
- package/dist/utility/errors/hdbError.js +128 -0
- package/dist/utility/errors/hdbError.js.map +1 -0
- package/dist/utility/functions/date/dateFunctions.d.ts +11 -0
- package/dist/utility/functions/date/dateFunctions.js +64 -0
- package/dist/utility/functions/date/dateFunctions.js.map +1 -0
- package/dist/utility/functions/geo.d.ts +74 -0
- package/dist/utility/functions/geo.js +311 -0
- package/dist/utility/functions/geo.js.map +1 -0
- package/dist/utility/functions/sql/alaSQLExtension.d.ts +13 -0
- package/dist/utility/functions/sql/alaSQLExtension.js +96 -0
- package/dist/utility/functions/sql/alaSQLExtension.js.map +1 -0
- package/dist/utility/globalSchema.d.ts +151 -0
- package/dist/utility/globalSchema.js +34 -0
- package/dist/utility/globalSchema.js.map +1 -0
- package/dist/utility/hdbTerms.d.ts +737 -0
- package/dist/utility/hdbTerms.js +756 -0
- package/dist/utility/hdbTerms.js.map +1 -0
- package/dist/utility/install/checkJWTTokensExist.d.ts +5 -0
- package/dist/utility/install/checkJWTTokensExist.js +53 -0
- package/dist/utility/install/checkJWTTokensExist.js.map +1 -0
- package/dist/utility/install/installer.d.ts +17 -0
- package/dist/utility/install/installer.js +569 -0
- package/dist/utility/install/installer.js.map +1 -0
- package/dist/utility/installation.d.ts +12 -0
- package/dist/utility/installation.js +64 -0
- package/dist/utility/installation.js.map +1 -0
- package/dist/utility/lmdb/DBIDefinition.d.ts +16 -0
- package/dist/utility/lmdb/DBIDefinition.js +19 -0
- package/dist/utility/lmdb/DBIDefinition.js.map +1 -0
- package/dist/utility/lmdb/DeleteRecordsResponseObject.d.ts +21 -0
- package/dist/utility/lmdb/DeleteRecordsResponseObject.js +24 -0
- package/dist/utility/lmdb/DeleteRecordsResponseObject.js.map +1 -0
- package/dist/utility/lmdb/InsertRecordsResponseObject.d.ts +18 -0
- package/dist/utility/lmdb/InsertRecordsResponseObject.js +21 -0
- package/dist/utility/lmdb/InsertRecordsResponseObject.js.map +1 -0
- package/dist/utility/lmdb/OpenDBIObject.d.ts +23 -0
- package/dist/utility/lmdb/OpenDBIObject.js +29 -0
- package/dist/utility/lmdb/OpenDBIObject.js.map +1 -0
- package/dist/utility/lmdb/OpenEnvironmentObject.d.ts +22 -0
- package/dist/utility/lmdb/OpenEnvironmentObject.js +40 -0
- package/dist/utility/lmdb/OpenEnvironmentObject.js.map +1 -0
- package/dist/utility/lmdb/UpdateRecordsResponseObject.d.ts +21 -0
- package/dist/utility/lmdb/UpdateRecordsResponseObject.js +24 -0
- package/dist/utility/lmdb/UpdateRecordsResponseObject.js.map +1 -0
- package/dist/utility/lmdb/UpsertRecordsResponseObject.d.ts +18 -0
- package/dist/utility/lmdb/UpsertRecordsResponseObject.js +21 -0
- package/dist/utility/lmdb/UpsertRecordsResponseObject.js.map +1 -0
- package/dist/utility/lmdb/cleanLMDBMap.d.ts +6 -0
- package/dist/utility/lmdb/cleanLMDBMap.js +63 -0
- package/dist/utility/lmdb/cleanLMDBMap.js.map +1 -0
- package/dist/utility/lmdb/commonUtility.d.ts +28 -0
- package/dist/utility/lmdb/commonUtility.js +120 -0
- package/dist/utility/lmdb/commonUtility.js.map +1 -0
- package/dist/utility/lmdb/deleteUtility.d.ts +10 -0
- package/dist/utility/lmdb/deleteUtility.js +115 -0
- package/dist/utility/lmdb/deleteUtility.js.map +1 -0
- package/dist/utility/lmdb/environmentUtility.d.ts +81 -0
- package/dist/utility/lmdb/environmentUtility.js +432 -0
- package/dist/utility/lmdb/environmentUtility.js.map +1 -0
- package/dist/utility/lmdb/searchCursorFunctions.d.ts +93 -0
- package/dist/utility/lmdb/searchCursorFunctions.js +174 -0
- package/dist/utility/lmdb/searchCursorFunctions.js.map +1 -0
- package/dist/utility/lmdb/searchUtility.d.ts +204 -0
- package/dist/utility/lmdb/searchUtility.js +724 -0
- package/dist/utility/lmdb/searchUtility.js.map +1 -0
- package/dist/utility/lmdb/terms.d.ts +34 -0
- package/dist/utility/lmdb/terms.js +52 -0
- package/dist/utility/lmdb/terms.js.map +1 -0
- package/dist/utility/lmdb/writeUtility.d.ts +32 -0
- package/dist/utility/lmdb/writeUtility.js +360 -0
- package/dist/utility/lmdb/writeUtility.js.map +1 -0
- package/dist/utility/logging/harper_logger.d.ts +141 -0
- package/dist/utility/logging/harper_logger.js +862 -0
- package/dist/utility/logging/harper_logger.js.map +1 -0
- package/dist/utility/logging/logRotator.d.ts +19 -0
- package/dist/utility/logging/logRotator.js +146 -0
- package/dist/utility/logging/logRotator.js.map +1 -0
- package/dist/utility/logging/logger.d.ts +11 -0
- package/dist/utility/logging/logger.js +19 -0
- package/dist/utility/logging/logger.js.map +1 -0
- package/dist/utility/logging/readLog.d.ts +8 -0
- package/dist/utility/logging/readLog.js +339 -0
- package/dist/utility/logging/readLog.js.map +1 -0
- package/dist/utility/logging/transactionLog.d.ts +8 -0
- package/dist/utility/logging/transactionLog.js +46 -0
- package/dist/utility/logging/transactionLog.js.map +1 -0
- package/dist/utility/mount_hdb.d.ts +2 -0
- package/dist/utility/mount_hdb.js +51 -0
- package/dist/utility/mount_hdb.js.map +1 -0
- package/dist/utility/npmUtilities.d.ts +6 -0
- package/dist/utility/npmUtilities.js +91 -0
- package/dist/utility/npmUtilities.js.map +1 -0
- package/dist/utility/operationPermissions.d.ts +36 -0
- package/dist/utility/operationPermissions.js +116 -0
- package/dist/utility/operationPermissions.js.map +1 -0
- package/dist/utility/operation_authorization.d.ts +18 -0
- package/dist/utility/operation_authorization.js +667 -0
- package/dist/utility/operation_authorization.js.map +1 -0
- package/dist/utility/packageUtils.d.ts +9 -0
- package/dist/utility/packageUtils.js +52 -0
- package/dist/utility/packageUtils.js.map +1 -0
- package/dist/utility/password.d.ts +20 -0
- package/dist/utility/password.js +119 -0
- package/dist/utility/password.js.map +1 -0
- package/dist/utility/processManagement/processManagement.d.ts +35 -0
- package/dist/utility/processManagement/processManagement.js +188 -0
- package/dist/utility/processManagement/processManagement.js.map +1 -0
- package/dist/utility/processManagement/servicesConfig.d.ts +29 -0
- package/dist/utility/processManagement/servicesConfig.js +52 -0
- package/dist/utility/processManagement/servicesConfig.js.map +1 -0
- package/dist/utility/scripts/restartHdb.d.ts +1 -0
- package/dist/utility/scripts/restartHdb.js +23 -0
- package/dist/utility/scripts/restartHdb.js.map +1 -0
- package/dist/utility/signalling.d.ts +2 -0
- package/dist/utility/signalling.js +35 -0
- package/dist/utility/signalling.js.map +1 -0
- package/dist/utility/terms/certificates.d.ts +46 -0
- package/dist/utility/terms/certificates.js +65 -0
- package/dist/utility/terms/certificates.js.map +1 -0
- package/dist/utility/when.d.ts +3 -0
- package/dist/utility/when.js +18 -0
- package/dist/utility/when.js.map +1 -0
- package/dist/validation/bulkDeleteValidator.d.ts +2 -0
- package/dist/validation/bulkDeleteValidator.js +21 -0
- package/dist/validation/bulkDeleteValidator.js.map +1 -0
- package/dist/validation/check_permissions.d.ts +2 -0
- package/dist/validation/check_permissions.js +20 -0
- package/dist/validation/check_permissions.js.map +1 -0
- package/dist/validation/common_validators.d.ts +19 -0
- package/dist/validation/common_validators.js +76 -0
- package/dist/validation/common_validators.js.map +1 -0
- package/dist/validation/configValidator.d.ts +8 -0
- package/dist/validation/configValidator.js +292 -0
- package/dist/validation/configValidator.js.map +1 -0
- package/dist/validation/deleteValidator.d.ts +2 -0
- package/dist/validation/deleteValidator.js +15 -0
- package/dist/validation/deleteValidator.js.map +1 -0
- package/dist/validation/fileLoadValidator.d.ts +4 -0
- package/dist/validation/fileLoadValidator.js +138 -0
- package/dist/validation/fileLoadValidator.js.map +1 -0
- package/dist/validation/insertValidator.d.ts +2 -0
- package/dist/validation/insertValidator.js +38 -0
- package/dist/validation/insertValidator.js.map +1 -0
- package/dist/validation/installValidator.d.ts +7 -0
- package/dist/validation/installValidator.js +28 -0
- package/dist/validation/installValidator.js.map +1 -0
- package/dist/validation/readLogValidator.d.ts +2 -0
- package/dist/validation/readLogValidator.js +48 -0
- package/dist/validation/readLogValidator.js.map +1 -0
- package/dist/validation/role_validation.d.ts +3 -0
- package/dist/validation/role_validation.js +284 -0
- package/dist/validation/role_validation.js.map +1 -0
- package/dist/validation/schemaMetadataValidator.d.ts +16 -0
- package/dist/validation/schemaMetadataValidator.js +38 -0
- package/dist/validation/schemaMetadataValidator.js.map +1 -0
- package/dist/validation/searchValidator.d.ts +2 -0
- package/dist/validation/searchValidator.js +141 -0
- package/dist/validation/searchValidator.js.map +1 -0
- package/dist/validation/statusValidator.d.ts +19 -0
- package/dist/validation/statusValidator.js +95 -0
- package/dist/validation/statusValidator.js.map +1 -0
- package/dist/validation/transactionLogValidator.d.ts +2 -0
- package/dist/validation/transactionLogValidator.js +28 -0
- package/dist/validation/transactionLogValidator.js.map +1 -0
- package/dist/validation/user_validation.d.ts +3 -0
- package/dist/validation/user_validation.js +52 -0
- package/dist/validation/user_validation.js.map +1 -0
- package/dist/validation/validationWrapper.d.ts +15 -0
- package/dist/validation/validationWrapper.js +95 -0
- package/dist/validation/validationWrapper.js.map +1 -0
- package/package.json +225 -0
- package/static/README.md +13 -0
- package/static/ascii_logo.txt +21 -0
- package/static/defaultConfig.yaml +75 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"databases.js","sourceRoot":"","sources":["../../resources/databases.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This is the entry point for handling GraphQL schemas (and server-side defined queries, eventually). This will be
|
|
3
|
+
* called for schemas, and this will parse the schema (into an AST), and use it to ensure all specified tables and their
|
|
4
|
+
* attributes exist. This is intended to be the default/primary way to define a table in Harper. This supports various
|
|
5
|
+
* directives for configuring indexing, attribute types, table configuration, and more.
|
|
6
|
+
*
|
|
7
|
+
* @param gqlContent
|
|
8
|
+
* @param relativePath
|
|
9
|
+
* @param filePath
|
|
10
|
+
* @param resources
|
|
11
|
+
*/
|
|
12
|
+
export declare function start({ ensureTable }: {
|
|
13
|
+
ensureTable: any;
|
|
14
|
+
}): {
|
|
15
|
+
handleFile: (gqlContent: any, urlPath: any, filePath: any, resources: any) => Promise<void>;
|
|
16
|
+
setupFile: (gqlContent: any, urlPath: any, filePath: any, resources: any) => Promise<void>;
|
|
17
|
+
};
|
|
18
|
+
export declare const startOnMainThread: typeof start;
|
|
19
|
+
export declare const loadGQLSchema: (content: any) => Promise<void>;
|
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.loadGQLSchema = exports.startOnMainThread = void 0;
|
|
4
|
+
exports.start = start;
|
|
5
|
+
const path_1 = require("path");
|
|
6
|
+
const node_vm_1 = require("node:vm");
|
|
7
|
+
const databases_ts_1 = require("./databases.js");
|
|
8
|
+
const manageThreads_js_1 = require("../server/threads/manageThreads.js");
|
|
9
|
+
const Resources_ts_1 = require("./Resources.js");
|
|
10
|
+
const PRIMITIVE_TYPES = ['ID', 'Int', 'Float', 'Long', 'String', 'Boolean', 'Date', 'Bytes', 'Any', 'BigInt', 'Blob'];
|
|
11
|
+
if (!server.knownGraphQLDirectives) {
|
|
12
|
+
server.knownGraphQLDirectives = [];
|
|
13
|
+
}
|
|
14
|
+
server.knownGraphQLDirectives.push('table', 'sealed', 'export', 'primaryKey', 'indexed', 'computed', 'relationship', 'createdTime', 'updatedTime', 'expiresAt', 'allow', 'enumerable');
|
|
15
|
+
/**
|
|
16
|
+
* This is the entry point for handling GraphQL schemas (and server-side defined queries, eventually). This will be
|
|
17
|
+
* called for schemas, and this will parse the schema (into an AST), and use it to ensure all specified tables and their
|
|
18
|
+
* attributes exist. This is intended to be the default/primary way to define a table in Harper. This supports various
|
|
19
|
+
* directives for configuring indexing, attribute types, table configuration, and more.
|
|
20
|
+
*
|
|
21
|
+
* @param gqlContent
|
|
22
|
+
* @param relativePath
|
|
23
|
+
* @param filePath
|
|
24
|
+
* @param resources
|
|
25
|
+
*/
|
|
26
|
+
function start({ ensureTable }) {
|
|
27
|
+
return {
|
|
28
|
+
handleFile,
|
|
29
|
+
setupFile: handleFile,
|
|
30
|
+
};
|
|
31
|
+
async function handleFile(gqlContent, urlPath, filePath, resources) {
|
|
32
|
+
// lazy load the graphql package so we don't load it for users that don't use graphql
|
|
33
|
+
const { parse, Source, Kind } = await import('graphql');
|
|
34
|
+
const ast = parse(new Source(gqlContent.toString(), filePath));
|
|
35
|
+
const types = new Map();
|
|
36
|
+
const tables = [];
|
|
37
|
+
// we begin by iterating through the definitions in the AST to get the types and convert them
|
|
38
|
+
// to a friendly format for table attributes
|
|
39
|
+
for (const definition of ast.definitions) {
|
|
40
|
+
switch (definition.kind) {
|
|
41
|
+
case Kind.OBJECT_TYPE_DEFINITION:
|
|
42
|
+
const typeName = definition.name.value;
|
|
43
|
+
// use type name as the default table
|
|
44
|
+
const properties = [];
|
|
45
|
+
const typeDef = { table: null, database: null, properties };
|
|
46
|
+
types.set(typeName, typeDef);
|
|
47
|
+
resources.allTypes.set(typeName, typeDef);
|
|
48
|
+
for (const directive of definition.directives) {
|
|
49
|
+
const directiveName = directive.name.value;
|
|
50
|
+
if (directiveName === 'table') {
|
|
51
|
+
for (const arg of directive.arguments) {
|
|
52
|
+
typeDef[arg.name.value] = arg.value.value;
|
|
53
|
+
}
|
|
54
|
+
if (typeDef.schema)
|
|
55
|
+
typeDef.database = typeDef.schema;
|
|
56
|
+
if (!typeDef.table)
|
|
57
|
+
typeDef.table = typeName;
|
|
58
|
+
if (typeDef.audit)
|
|
59
|
+
typeDef.audit = typeDef.audit !== 'false';
|
|
60
|
+
typeDef.attributes = typeDef.properties;
|
|
61
|
+
tables.push(typeDef);
|
|
62
|
+
}
|
|
63
|
+
if (directive.name.value === 'sealed')
|
|
64
|
+
typeDef.sealed = true;
|
|
65
|
+
if (directive.name.value === 'splitSegments')
|
|
66
|
+
typeDef.splitSegments = true;
|
|
67
|
+
if (directive.name.value === 'replicate')
|
|
68
|
+
typeDef.replicate = true;
|
|
69
|
+
if (directive.name.value === 'export') {
|
|
70
|
+
typeDef.export = true;
|
|
71
|
+
for (const arg of directive.arguments) {
|
|
72
|
+
if (typeof typeDef.export !== 'object')
|
|
73
|
+
typeDef.export = {};
|
|
74
|
+
typeDef.export[arg.name.value] = arg.value.value;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
let hasPrimaryKey = false;
|
|
79
|
+
function getProperty(type) {
|
|
80
|
+
if (type.kind === 'NonNullType') {
|
|
81
|
+
const property = getProperty(type.type);
|
|
82
|
+
property.nullable = false;
|
|
83
|
+
return property;
|
|
84
|
+
}
|
|
85
|
+
if (type.kind === 'ListType') {
|
|
86
|
+
return {
|
|
87
|
+
type: 'array',
|
|
88
|
+
elements: getProperty(type.type),
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
const typeName = type.name?.value;
|
|
92
|
+
const property = { type: typeName };
|
|
93
|
+
Object.defineProperty(property, 'location', { value: type.loc.startToken });
|
|
94
|
+
return property;
|
|
95
|
+
}
|
|
96
|
+
const attributesObject = {};
|
|
97
|
+
for (const field of definition.fields) {
|
|
98
|
+
const property = getProperty(field.type);
|
|
99
|
+
property.name = field.name.value;
|
|
100
|
+
properties.push(property);
|
|
101
|
+
attributesObject[property.name] = undefined; // this is used as a backup scope for computed properties
|
|
102
|
+
for (const directive of field.directives) {
|
|
103
|
+
const directiveName = directive.name.value;
|
|
104
|
+
if (directiveName === 'primaryKey') {
|
|
105
|
+
if (hasPrimaryKey)
|
|
106
|
+
console.warn('Can not define two attributes as a primary key at', directive.loc);
|
|
107
|
+
else {
|
|
108
|
+
property.isPrimaryKey = true;
|
|
109
|
+
hasPrimaryKey = true;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
else if (directiveName === 'indexed') {
|
|
113
|
+
const indexedDefinition = {};
|
|
114
|
+
// store indexed arguments for configurable indexes.
|
|
115
|
+
for (const arg of directive.arguments || []) {
|
|
116
|
+
indexedDefinition[arg.name.value] = arg.value.value;
|
|
117
|
+
}
|
|
118
|
+
property.indexed = indexedDefinition;
|
|
119
|
+
}
|
|
120
|
+
else if (directiveName === 'computed') {
|
|
121
|
+
for (const arg of directive.arguments || []) {
|
|
122
|
+
if (arg.name.value === 'from') {
|
|
123
|
+
const computedFromExpression = arg.value.value;
|
|
124
|
+
property.computed = {
|
|
125
|
+
from: createComputedFrom(computedFromExpression, arg, attributesObject),
|
|
126
|
+
};
|
|
127
|
+
// if the version is not defined, we use the computed from expression as the version, any changes to the computed from expression will trigger a version change and reindex
|
|
128
|
+
if (property.version == undefined)
|
|
129
|
+
property.version = computedFromExpression;
|
|
130
|
+
}
|
|
131
|
+
else if (arg.name.value === 'version') {
|
|
132
|
+
property.version = arg.value.value;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
property.computed = property.computed || true;
|
|
136
|
+
}
|
|
137
|
+
else if (directiveName === 'relationship') {
|
|
138
|
+
const relationshipDefinition = {};
|
|
139
|
+
for (const arg of directive.arguments) {
|
|
140
|
+
relationshipDefinition[arg.name.value] = arg.value.value;
|
|
141
|
+
}
|
|
142
|
+
property.relationship = relationshipDefinition;
|
|
143
|
+
}
|
|
144
|
+
else if (directiveName === 'createdTime') {
|
|
145
|
+
property.assignCreatedTime = true;
|
|
146
|
+
}
|
|
147
|
+
else if (directiveName === 'updatedTime') {
|
|
148
|
+
property.assignUpdatedTime = true;
|
|
149
|
+
}
|
|
150
|
+
else if (directiveName === 'expiresAt') {
|
|
151
|
+
property.expiresAt = true;
|
|
152
|
+
}
|
|
153
|
+
else if (directiveName === 'enumerable') {
|
|
154
|
+
property.enumerable = true;
|
|
155
|
+
}
|
|
156
|
+
else if (directiveName === 'allow') {
|
|
157
|
+
const authorizedRoles = (property.authorizedRoles = []);
|
|
158
|
+
for (const arg of directive.arguments) {
|
|
159
|
+
if (arg.name.value === 'role') {
|
|
160
|
+
authorizedRoles.push(arg.value.value);
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
else if (server.knownGraphQLDirectives.includes(directiveName)) {
|
|
165
|
+
console.warn(`@${directiveName} is an unknown directive, at`, directive.loc);
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
typeDef.type = typeName;
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
// check the types and if any types reference other types, fill those in.
|
|
173
|
+
function connectPropertyType(property) {
|
|
174
|
+
const targetTypeDef = types.get(property.type);
|
|
175
|
+
if (targetTypeDef) {
|
|
176
|
+
Object.defineProperty(property, 'properties', { value: targetTypeDef.properties });
|
|
177
|
+
Object.defineProperty(property, 'definition', { value: targetTypeDef });
|
|
178
|
+
}
|
|
179
|
+
else if (property.type === 'array')
|
|
180
|
+
connectPropertyType(property.elements);
|
|
181
|
+
else if (!PRIMITIVE_TYPES.includes(property.type)) {
|
|
182
|
+
if ((0, manageThreads_js_1.getWorkerIndex)() === 0)
|
|
183
|
+
console.error(`The type ${property.type} is unknown at line ${property.location.line}, column ${property.location.column}, in ${filePath}`);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
for (const typeDef of types.values()) {
|
|
187
|
+
for (const property of typeDef.properties)
|
|
188
|
+
connectPropertyType(property);
|
|
189
|
+
}
|
|
190
|
+
// any tables that are defined in the schema can now be registered
|
|
191
|
+
for (const typeDef of tables) {
|
|
192
|
+
// with graphql database definitions, this is a declaration that the table should exist and that it
|
|
193
|
+
// should be created if it does not exist
|
|
194
|
+
typeDef.tableClass = ensureTable(typeDef);
|
|
195
|
+
if (typeDef.export) {
|
|
196
|
+
// allow empty string to be used to declare a table on the root path
|
|
197
|
+
if (typeDef.export.name === '')
|
|
198
|
+
resources.set((0, path_1.dirname)(urlPath), typeDef.tableClass);
|
|
199
|
+
else
|
|
200
|
+
resources.set((0, path_1.dirname)(urlPath) + '/' + (typeDef.export.name || typeDef.type), typeDef.tableClass, typeDef.export);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
function createComputedFrom(computedFrom, arg, attributes) {
|
|
204
|
+
// Create a function from a computed "from" directive. This can look like:
|
|
205
|
+
// @computed(from: "fieldOne + fieldTwo")
|
|
206
|
+
// We use Node's built-in Script class to compile the function and run it in the context of the record object, which allows us to specify the source
|
|
207
|
+
const script = new node_vm_1.Script(
|
|
208
|
+
// we use the inner with statement to allow the computed function to access the record object's properties directly as top level names
|
|
209
|
+
// we use the outer with statement with attributes as a fallback so any access to an attribute that isn't defined on the record still returns undefined (instead of a ReferenceError)
|
|
210
|
+
`function computed(attributes) { return function(record) { with(attributes) { with (record) { return ${computedFrom}; } } } } computed;`, {
|
|
211
|
+
filename: filePath, // specify the file path and line position for better error messages/debugging
|
|
212
|
+
lineOffset: arg.loc.startToken.line - 1,
|
|
213
|
+
columnOffset: arg.loc.startToken.column,
|
|
214
|
+
});
|
|
215
|
+
return script.runInThisContext()(attributes); // run the script in the context of the current context/global and return the function we defined
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
exports.startOnMainThread = start;
|
|
220
|
+
// useful for testing
|
|
221
|
+
const loadGQLSchema = (content) => start({ ensureTable: databases_ts_1.table }).handleFile(content, null, null, new Resources_ts_1.Resources());
|
|
222
|
+
exports.loadGQLSchema = loadGQLSchema;
|
|
223
|
+
//# sourceMappingURL=graphql.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graphql.js","sourceRoot":"","sources":["../../resources/graphql.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import type { Id } from '../../resources/ResourceInterface.ts';
|
|
2
|
+
/**
|
|
3
|
+
* Represents a Hierarchical Navigable Small World (HNSW) index for approximate nearest neighbor search.
|
|
4
|
+
* This implementation is based on hierarchical graph navigation to efficiently index and search high-dimensional vectors.
|
|
5
|
+
* A HNSW is basically a multi-dimensional skip list. Each node has (potentially) higher levels that are used for quickly
|
|
6
|
+
* traversing the graph get in the neighborhood of the node, and then lower levels are used to more accurately find the
|
|
7
|
+
* closest neighbors.
|
|
8
|
+
*
|
|
9
|
+
* This implementation is based on the paper "Efficient and Robust Approximate Nearest Neighbor Search in High Dimensions"
|
|
10
|
+
* (mostly influenced AI's contributions)
|
|
11
|
+
*/
|
|
12
|
+
export declare class HierarchicalNavigableSmallWorld {
|
|
13
|
+
static useObjectStore: boolean;
|
|
14
|
+
indexStore: any;
|
|
15
|
+
M: number;
|
|
16
|
+
efConstruction: number;
|
|
17
|
+
efConstructionSearch: number;
|
|
18
|
+
mL: number;
|
|
19
|
+
optimizeRouting: number;
|
|
20
|
+
nodesVisitedCount: number;
|
|
21
|
+
idIncrementer: BigInt64Array | undefined;
|
|
22
|
+
distance: (a: number[], b: number[]) => number;
|
|
23
|
+
constructor(indexStore: any, options: any);
|
|
24
|
+
index(primaryKey: Id, vector: number[], existingVector?: number[], options?: any): void;
|
|
25
|
+
private getEntryPoint;
|
|
26
|
+
/**
|
|
27
|
+
* Search one layer of the skip-list using HNSW algorithm for creating a candidate list and navigating the graph
|
|
28
|
+
* TODO: This should be async, but we can't really do that with lmdb-js's transaction system right now. Should be
|
|
29
|
+
* doable with RocksDB. We could also create an async version for searching.
|
|
30
|
+
* @param queryVector
|
|
31
|
+
* @param entryPointId
|
|
32
|
+
* @param entryPoint
|
|
33
|
+
* @param ef
|
|
34
|
+
* @param level
|
|
35
|
+
* @param distanceFunction
|
|
36
|
+
* @private
|
|
37
|
+
*/
|
|
38
|
+
private searchLayer;
|
|
39
|
+
/**
|
|
40
|
+
* This the main entry from Harper's query functionality, where we actually search for an ordered list of nearest
|
|
41
|
+
* neighbors, using the provided sort/order definition object and performing the multi-layer skip-list search.
|
|
42
|
+
* This returns an iterable of the nearest neighbors to the provided target vector, with nearest ordered first.
|
|
43
|
+
* @param target
|
|
44
|
+
* @param value
|
|
45
|
+
* @param descending
|
|
46
|
+
* @param distance
|
|
47
|
+
* @param comparator
|
|
48
|
+
* @param context
|
|
49
|
+
*/
|
|
50
|
+
search({ target, value, descending, distance, comparator, }: {
|
|
51
|
+
target: number[];
|
|
52
|
+
value: number;
|
|
53
|
+
descending: boolean;
|
|
54
|
+
distance: string;
|
|
55
|
+
comparator: string;
|
|
56
|
+
}): {
|
|
57
|
+
key: string;
|
|
58
|
+
distance: number;
|
|
59
|
+
}[];
|
|
60
|
+
private checkSymmetry;
|
|
61
|
+
private addConnection;
|
|
62
|
+
validateConnectivity(startLevel?: number): {
|
|
63
|
+
isFullyConnected: boolean;
|
|
64
|
+
averageConnections: number;
|
|
65
|
+
};
|
|
66
|
+
get totalNodes(): number;
|
|
67
|
+
/**
|
|
68
|
+
* This is used by the query planner to determine what order to apply conditions. It is our best guess at an estimated count.
|
|
69
|
+
* This unit is typically the number of records that need to be accessed to satisfy the query. We know that we will visit
|
|
70
|
+
* a minimum of efConstructionSearch nodes and a maximum of the total nodes (in absolute worst case).
|
|
71
|
+
* The original paper described the complexity as polylogarithmic. From my testing, the
|
|
72
|
+
* best and simplest guess at the number of nodes that need to be accessed is the geometric mean of the total number of nodes
|
|
73
|
+
* and the efConstruction parameter (for search), which clearly constrains the estimate to the correct range and is
|
|
74
|
+
* similar to polylogarithmic for realistic values.
|
|
75
|
+
*
|
|
76
|
+
* @returns
|
|
77
|
+
*/
|
|
78
|
+
estimateCountAsSort(): number;
|
|
79
|
+
/**
|
|
80
|
+
* This is used to resolve the vector property, which should be resolved to the distance when used in a sort comparator
|
|
81
|
+
* We also want to cache distance calculations so they can be accessed efficently later
|
|
82
|
+
* @param vector
|
|
83
|
+
* @param context
|
|
84
|
+
* @param entry
|
|
85
|
+
*/
|
|
86
|
+
propertyResolver(vector: number[], context: any, entry: any): any;
|
|
87
|
+
}
|