@harperfast/harper 5.0.25 → 5.1.0-beta.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.
Files changed (1121) hide show
  1. package/README.md +11 -10
  2. package/agent/agent.ts +203 -0
  3. package/agent/loop.ts +205 -0
  4. package/agent/operations.ts +148 -0
  5. package/agent/session.ts +187 -0
  6. package/agent/tools/fsTools.ts +276 -0
  7. package/agent/tools/httpFetchTool.ts +112 -0
  8. package/agent/tools/scheduleTool.ts +68 -0
  9. package/agent/toolset.ts +43 -0
  10. package/agent/types.ts +85 -0
  11. package/bin/{BinObjects.js → BinObjects.ts} +4 -5
  12. package/bin/cliCredentials.ts +133 -0
  13. package/bin/cliOperations.ts +339 -0
  14. package/bin/copyDb.ts +10 -10
  15. package/bin/deployRenderer.ts +196 -0
  16. package/bin/{harper.js → harper.ts} +43 -19
  17. package/bin/{install.js → install.ts} +3 -3
  18. package/bin/lite.ts +2 -0
  19. package/bin/login.ts +168 -0
  20. package/bin/logout.ts +11 -0
  21. package/bin/mcp/client.ts +407 -0
  22. package/bin/mcp/doctor.ts +189 -0
  23. package/bin/mcp/index.ts +80 -0
  24. package/bin/mcp/options.ts +122 -0
  25. package/bin/mcp/printConfig.ts +89 -0
  26. package/bin/multipartBuilder.ts +74 -0
  27. package/bin/{restart.js → restart.ts} +27 -28
  28. package/bin/{run.js → run.ts} +41 -30
  29. package/bin/sseConsumer.ts +126 -0
  30. package/bin/{status.js → status.ts} +10 -10
  31. package/bin/{stop.js → stop.ts} +5 -5
  32. package/bin/upgrade.js +6 -6
  33. package/components/Application.ts +144 -18
  34. package/components/ApplicationScope.ts +2 -2
  35. package/components/ComponentV1.ts +2 -2
  36. package/components/EntryHandler.ts +159 -9
  37. package/components/OptionsWatcher.ts +75 -11
  38. package/components/Scope.ts +125 -15
  39. package/components/anthropic/index.ts +547 -0
  40. package/components/bedrock/index.ts +823 -0
  41. package/components/componentLoader.ts +63 -32
  42. package/components/deployLifecycle.ts +161 -0
  43. package/components/deploymentOperations.ts +173 -0
  44. package/components/deploymentRecorder.ts +402 -0
  45. package/components/deriveURLPath.ts +4 -4
  46. package/components/mcp/adapters/fastify.ts +87 -0
  47. package/components/mcp/adapters/harperHttp.ts +103 -0
  48. package/components/mcp/audit.ts +75 -0
  49. package/components/mcp/index.ts +134 -0
  50. package/components/mcp/jsonrpc.ts +134 -0
  51. package/components/mcp/lifecycle.ts +105 -0
  52. package/components/mcp/listChanged.ts +270 -0
  53. package/components/mcp/rateLimit.ts +217 -0
  54. package/components/mcp/resources.ts +593 -0
  55. package/components/mcp/session.ts +151 -0
  56. package/components/mcp/sessionRegistry.ts +140 -0
  57. package/components/mcp/toolRegistry.ts +292 -0
  58. package/components/mcp/tools/application.ts +603 -0
  59. package/components/mcp/tools/operations.ts +283 -0
  60. package/components/mcp/tools/schemas/derive.ts +256 -0
  61. package/components/mcp/tools/schemas/operations.ts +245 -0
  62. package/components/mcp/transport.ts +517 -0
  63. package/components/ollama/index.ts +316 -0
  64. package/components/openai/index.ts +563 -0
  65. package/components/operations.js +211 -60
  66. package/components/operationsValidation.js +3 -3
  67. package/components/packageComponent.ts +97 -29
  68. package/components/requestRestart.ts +17 -2
  69. package/components/status/crossThread.ts +14 -5
  70. package/components/status/errors.ts +1 -1
  71. package/config/RootConfigWatcher.ts +56 -2
  72. package/config/configUtils.js +29 -8
  73. package/config/harperConfigEnvVars.ts +1 -1
  74. package/config-root.schema.json +74 -0
  75. package/dataLayer/{CreateAttributeObject.js → CreateAttributeObject.ts} +4 -3
  76. package/dataLayer/{CreateTableObject.js → CreateTableObject.ts} +2 -1
  77. package/dataLayer/{DataLayerObjects.js → DataLayerObjects.ts} +17 -9
  78. package/dataLayer/{DeleteBeforeObject.js → DeleteBeforeObject.ts} +2 -1
  79. package/dataLayer/{DeleteObject.js → DeleteObject.ts} +3 -2
  80. package/dataLayer/{DropAttributeObject.js → DropAttributeObject.ts} +2 -1
  81. package/dataLayer/{GetBackupObject.js → GetBackupObject.ts} +3 -2
  82. package/dataLayer/{InsertObject.js → InsertObject.ts} +3 -2
  83. package/dataLayer/{ReadAuditLogObject.js → ReadAuditLogObject.ts} +3 -2
  84. package/dataLayer/{SQLSearch.js → SQLSearch.ts} +97 -43
  85. package/dataLayer/{SearchByConditionsObject.js → SearchByConditionsObject.ts} +5 -6
  86. package/dataLayer/{SearchByHashObject.js → SearchByHashObject.ts} +2 -1
  87. package/dataLayer/{SearchObject.js → SearchObject.ts} +2 -1
  88. package/dataLayer/{SqlSearchObject.js → SqlSearchObject.ts} +2 -1
  89. package/dataLayer/{UpdateObject.js → UpdateObject.ts} +3 -2
  90. package/dataLayer/{UpsertObject.js → UpsertObject.ts} +3 -2
  91. package/dataLayer/{bulkLoad.js → bulkLoad.ts} +40 -49
  92. package/dataLayer/{delete.js → delete.ts} +21 -26
  93. package/dataLayer/{export.js → export.ts} +22 -26
  94. package/dataLayer/{getBackup.js → getBackup.ts} +7 -9
  95. package/dataLayer/harperBridge/BridgeMethods.ts +102 -0
  96. package/dataLayer/harperBridge/ResourceBridge.ts +27 -26
  97. package/dataLayer/harperBridge/TableSizeObject.ts +1 -0
  98. package/dataLayer/harperBridge/bridgeUtility/insertUpdateValidate.js +4 -4
  99. package/dataLayer/harperBridge/{harperBridge.js → harperBridge.ts} +3 -3
  100. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateAttribute.js +8 -6
  101. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateRecords.js +4 -4
  102. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateSchema.js +1 -1
  103. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateTable.js +6 -4
  104. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDeleteAuditLogsBefore.js +5 -4
  105. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDeleteRecords.js +4 -4
  106. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropAttribute.js +6 -5
  107. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropSchema.js +5 -4
  108. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropTable.js +5 -5
  109. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbFlush.js +1 -1
  110. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetBackup.js +3 -3
  111. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetDataByHash.js +1 -1
  112. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetDataByValue.js +3 -2
  113. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbReadAuditLog.js +5 -5
  114. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByConditions.js +10 -8
  115. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByHash.js +1 -1
  116. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByValue.js +4 -3
  117. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbUpdateRecords.js +3 -3
  118. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbUpsertRecords.js +6 -5
  119. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBCreateAttributeObject.js +2 -1
  120. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializeHashSearch.js +3 -2
  121. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializePaths.js +2 -2
  122. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCheckForNewAttributes.js +5 -4
  123. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCreateTransactionsAuditEnvironment.js +6 -3
  124. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbGetTableSize.ts +1 -1
  125. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbProcessRows.js +4 -4
  126. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbSearch.js +5 -5
  127. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbWriteTransaction.js +4 -4
  128. package/dataLayer/{hdbInfoController.js → hdbInfoController.ts} +20 -26
  129. package/dataLayer/{insert.js → insert.ts} +24 -24
  130. package/dataLayer/{readAuditLog.js → readAuditLog.ts} +8 -10
  131. package/dataLayer/{schema.js → schema.ts} +32 -44
  132. package/dataLayer/{schemaDescribe.js → schemaDescribe.ts} +23 -26
  133. package/dataLayer/{search.js → search.ts} +9 -15
  134. package/dataLayer/{transaction.js → transaction.ts} +2 -5
  135. package/dataLayer/{update.js → update.ts} +19 -22
  136. package/dist/agent/agent.d.ts +35 -0
  137. package/dist/agent/agent.js +175 -0
  138. package/dist/agent/agent.js.map +1 -0
  139. package/dist/agent/loop.d.ts +34 -0
  140. package/dist/agent/loop.js +176 -0
  141. package/dist/agent/loop.js.map +1 -0
  142. package/dist/agent/operations.d.ts +17 -0
  143. package/dist/agent/operations.js +137 -0
  144. package/dist/agent/operations.js.map +1 -0
  145. package/dist/agent/session.d.ts +36 -0
  146. package/dist/agent/session.js +182 -0
  147. package/dist/agent/session.js.map +1 -0
  148. package/dist/agent/tools/fsTools.d.ts +19 -0
  149. package/dist/agent/tools/fsTools.js +286 -0
  150. package/dist/agent/tools/fsTools.js.map +1 -0
  151. package/dist/agent/tools/httpFetchTool.d.ts +9 -0
  152. package/dist/agent/tools/httpFetchTool.js +116 -0
  153. package/dist/agent/tools/httpFetchTool.js.map +1 -0
  154. package/dist/agent/tools/scheduleTool.d.ts +22 -0
  155. package/dist/agent/tools/scheduleTool.js +54 -0
  156. package/dist/agent/tools/scheduleTool.js.map +1 -0
  157. package/dist/agent/toolset.d.ts +24 -0
  158. package/dist/agent/toolset.js +33 -0
  159. package/dist/agent/toolset.js.map +1 -0
  160. package/dist/agent/types.d.ts +75 -0
  161. package/dist/agent/types.js +10 -0
  162. package/dist/agent/types.js.map +1 -0
  163. package/dist/bin/BinObjects.d.ts +2 -2
  164. package/dist/bin/BinObjects.js +6 -3
  165. package/dist/bin/BinObjects.js.map +1 -1
  166. package/dist/bin/cliCredentials.d.ts +27 -0
  167. package/dist/bin/cliCredentials.js +130 -0
  168. package/dist/bin/cliCredentials.js.map +1 -0
  169. package/dist/bin/cliOperations.d.ts +7 -7
  170. package/dist/bin/cliOperations.js +251 -37
  171. package/dist/bin/cliOperations.js.map +1 -1
  172. package/dist/bin/copyDb.js +16 -16
  173. package/dist/bin/copyDb.js.map +1 -1
  174. package/dist/bin/deployRenderer.d.ts +47 -0
  175. package/dist/bin/deployRenderer.js +185 -0
  176. package/dist/bin/deployRenderer.js.map +1 -0
  177. package/dist/bin/harper.d.ts +2 -1
  178. package/dist/bin/harper.js +87 -26
  179. package/dist/bin/harper.js.map +1 -1
  180. package/dist/bin/install.d.ts +1 -1
  181. package/dist/bin/install.js +41 -4
  182. package/dist/bin/install.js.map +1 -1
  183. package/dist/bin/lite.js +3 -4
  184. package/dist/bin/lite.js.map +1 -1
  185. package/dist/bin/login.d.ts +4 -0
  186. package/dist/bin/login.js +158 -0
  187. package/dist/bin/login.js.map +1 -0
  188. package/dist/bin/logout.d.ts +4 -0
  189. package/dist/bin/logout.js +16 -0
  190. package/dist/bin/logout.js.map +1 -0
  191. package/dist/bin/mcp/client.d.ts +34 -0
  192. package/dist/bin/mcp/client.js +395 -0
  193. package/dist/bin/mcp/client.js.map +1 -0
  194. package/dist/bin/mcp/doctor.d.ts +11 -0
  195. package/dist/bin/mcp/doctor.js +193 -0
  196. package/dist/bin/mcp/doctor.js.map +1 -0
  197. package/dist/bin/mcp/index.d.ts +10 -0
  198. package/dist/bin/mcp/index.js +81 -0
  199. package/dist/bin/mcp/index.js.map +1 -0
  200. package/dist/bin/mcp/options.d.ts +33 -0
  201. package/dist/bin/mcp/options.js +113 -0
  202. package/dist/bin/mcp/options.js.map +1 -0
  203. package/dist/bin/mcp/printConfig.d.ts +14 -0
  204. package/dist/bin/mcp/printConfig.js +85 -0
  205. package/dist/bin/mcp/printConfig.js.map +1 -0
  206. package/dist/bin/multipartBuilder.d.ts +26 -0
  207. package/dist/bin/multipartBuilder.js +55 -0
  208. package/dist/bin/multipartBuilder.js.map +1 -0
  209. package/dist/bin/restart.d.ts +3 -2
  210. package/dist/bin/restart.js +82 -45
  211. package/dist/bin/restart.js.map +1 -1
  212. package/dist/bin/run.d.ts +13 -9
  213. package/dist/bin/run.js +111 -65
  214. package/dist/bin/run.js.map +1 -1
  215. package/dist/bin/sseConsumer.d.ts +24 -0
  216. package/dist/bin/sseConsumer.js +127 -0
  217. package/dist/bin/sseConsumer.js.map +1 -0
  218. package/dist/bin/status.d.ts +1 -1
  219. package/dist/bin/status.js +48 -11
  220. package/dist/bin/status.js.map +1 -1
  221. package/dist/bin/stop.d.ts +1 -1
  222. package/dist/bin/stop.js +43 -6
  223. package/dist/bin/stop.js.map +1 -1
  224. package/dist/bin/upgrade.js +6 -6
  225. package/dist/components/Application.d.ts +29 -17
  226. package/dist/components/Application.js +134 -28
  227. package/dist/components/Application.js.map +1 -1
  228. package/dist/components/ApplicationScope.js +2 -2
  229. package/dist/components/ComponentV1.d.ts +1 -1
  230. package/dist/components/ComponentV1.js +5 -5
  231. package/dist/components/ComponentV1.js.map +1 -1
  232. package/dist/components/EntryHandler.d.ts +26 -3
  233. package/dist/components/EntryHandler.js +153 -13
  234. package/dist/components/EntryHandler.js.map +1 -1
  235. package/dist/components/OptionsWatcher.d.ts +7 -2
  236. package/dist/components/OptionsWatcher.js +72 -10
  237. package/dist/components/OptionsWatcher.js.map +1 -1
  238. package/dist/components/Scope.d.ts +11 -6
  239. package/dist/components/Scope.js +105 -9
  240. package/dist/components/Scope.js.map +1 -1
  241. package/dist/components/anthropic/index.d.ts +40 -0
  242. package/dist/components/anthropic/index.js +428 -0
  243. package/dist/components/anthropic/index.js.map +1 -0
  244. package/dist/components/bedrock/index.d.ts +79 -0
  245. package/dist/components/bedrock/index.js +734 -0
  246. package/dist/components/bedrock/index.js.map +1 -0
  247. package/dist/components/componentLoader.d.ts +29 -0
  248. package/dist/components/componentLoader.js +63 -38
  249. package/dist/components/componentLoader.js.map +1 -1
  250. package/dist/components/deployLifecycle.d.ts +39 -0
  251. package/dist/components/deployLifecycle.js +156 -0
  252. package/dist/components/deployLifecycle.js.map +1 -0
  253. package/dist/components/deploymentOperations.d.ts +19 -0
  254. package/dist/components/deploymentOperations.js +185 -0
  255. package/dist/components/deploymentOperations.js.map +1 -0
  256. package/dist/components/deploymentRecorder.d.ts +81 -0
  257. package/dist/components/deploymentRecorder.js +401 -0
  258. package/dist/components/deploymentRecorder.js.map +1 -0
  259. package/dist/components/deriveURLPath.d.ts +2 -2
  260. package/dist/components/deriveURLPath.js +2 -2
  261. package/dist/components/deriveURLPath.js.map +1 -1
  262. package/dist/components/mcp/adapters/fastify.d.ts +35 -0
  263. package/dist/components/mcp/adapters/fastify.js +66 -0
  264. package/dist/components/mcp/adapters/fastify.js.map +1 -0
  265. package/dist/components/mcp/adapters/harperHttp.d.ts +38 -0
  266. package/dist/components/mcp/adapters/harperHttp.js +78 -0
  267. package/dist/components/mcp/adapters/harperHttp.js.map +1 -0
  268. package/dist/components/mcp/audit.d.ts +27 -0
  269. package/dist/components/mcp/audit.js +73 -0
  270. package/dist/components/mcp/audit.js.map +1 -0
  271. package/dist/components/mcp/index.d.ts +47 -0
  272. package/dist/components/mcp/index.js +109 -0
  273. package/dist/components/mcp/index.js.map +1 -0
  274. package/dist/components/mcp/jsonrpc.d.ts +71 -0
  275. package/dist/components/mcp/jsonrpc.js +93 -0
  276. package/dist/components/mcp/jsonrpc.js.map +1 -0
  277. package/dist/components/mcp/lifecycle.d.ts +69 -0
  278. package/dist/components/mcp/lifecycle.js +79 -0
  279. package/dist/components/mcp/lifecycle.js.map +1 -0
  280. package/dist/components/mcp/listChanged.d.ts +24 -0
  281. package/dist/components/mcp/listChanged.js +257 -0
  282. package/dist/components/mcp/listChanged.js.map +1 -0
  283. package/dist/components/mcp/rateLimit.d.ts +25 -0
  284. package/dist/components/mcp/rateLimit.js +226 -0
  285. package/dist/components/mcp/rateLimit.js.map +1 -0
  286. package/dist/components/mcp/resources.d.ts +90 -0
  287. package/dist/components/mcp/resources.js +515 -0
  288. package/dist/components/mcp/resources.js.map +1 -0
  289. package/dist/components/mcp/session.d.ts +36 -0
  290. package/dist/components/mcp/session.js +170 -0
  291. package/dist/components/mcp/session.js.map +1 -0
  292. package/dist/components/mcp/sessionRegistry.d.ts +63 -0
  293. package/dist/components/mcp/sessionRegistry.js +124 -0
  294. package/dist/components/mcp/sessionRegistry.js.map +1 -0
  295. package/dist/components/mcp/toolRegistry.d.ts +150 -0
  296. package/dist/components/mcp/toolRegistry.js +176 -0
  297. package/dist/components/mcp/toolRegistry.js.map +1 -0
  298. package/dist/components/mcp/tools/application.d.ts +58 -0
  299. package/dist/components/mcp/tools/application.js +549 -0
  300. package/dist/components/mcp/tools/application.js.map +1 -0
  301. package/dist/components/mcp/tools/operations.d.ts +23 -0
  302. package/dist/components/mcp/tools/operations.js +303 -0
  303. package/dist/components/mcp/tools/operations.js.map +1 -0
  304. package/dist/components/mcp/tools/schemas/derive.d.ts +36 -0
  305. package/dist/components/mcp/tools/schemas/derive.js +216 -0
  306. package/dist/components/mcp/tools/schemas/derive.js.map +1 -0
  307. package/dist/components/mcp/tools/schemas/operations.d.ts +27 -0
  308. package/dist/components/mcp/tools/schemas/operations.js +243 -0
  309. package/dist/components/mcp/tools/schemas/operations.js.map +1 -0
  310. package/dist/components/mcp/transport.d.ts +38 -0
  311. package/dist/components/mcp/transport.js +467 -0
  312. package/dist/components/mcp/transport.js.map +1 -0
  313. package/dist/components/ollama/index.d.ts +46 -0
  314. package/dist/components/ollama/index.js +239 -0
  315. package/dist/components/ollama/index.js.map +1 -0
  316. package/dist/components/openai/index.d.ts +51 -0
  317. package/dist/components/openai/index.js +475 -0
  318. package/dist/components/openai/index.js.map +1 -0
  319. package/dist/components/operations.d.ts +6 -6
  320. package/dist/components/operations.js +198 -52
  321. package/dist/components/operations.js.map +1 -1
  322. package/dist/components/operationsValidation.d.ts +2 -2
  323. package/dist/components/operationsValidation.js +3 -3
  324. package/dist/components/packageComponent.d.ts +28 -6
  325. package/dist/components/packageComponent.js +87 -26
  326. package/dist/components/packageComponent.js.map +1 -1
  327. package/dist/components/requestRestart.d.ts +1 -0
  328. package/dist/components/requestRestart.js +12 -1
  329. package/dist/components/requestRestart.js.map +1 -1
  330. package/dist/components/status/crossThread.d.ts +5 -1
  331. package/dist/components/status/crossThread.js +12 -5
  332. package/dist/components/status/crossThread.js.map +1 -1
  333. package/dist/components/status/errors.js +7 -7
  334. package/dist/config/RootConfigWatcher.d.ts +3 -0
  335. package/dist/config/RootConfigWatcher.js +52 -1
  336. package/dist/config/RootConfigWatcher.js.map +1 -1
  337. package/dist/config/configUtils.js +31 -8
  338. package/dist/config/configUtils.js.map +1 -1
  339. package/dist/config/harperConfigEnvVars.js +1 -1
  340. package/dist/config/harperConfigEnvVars.js.map +1 -1
  341. package/dist/dataLayer/CreateAttributeObject.d.ts +3 -7
  342. package/dist/dataLayer/CreateAttributeObject.js +4 -3
  343. package/dist/dataLayer/CreateAttributeObject.js.map +1 -1
  344. package/dist/dataLayer/CreateTableObject.d.ts +2 -4
  345. package/dist/dataLayer/CreateTableObject.js +2 -1
  346. package/dist/dataLayer/CreateTableObject.js.map +1 -1
  347. package/dist/dataLayer/DataLayerObjects.d.ts +17 -16
  348. package/dist/dataLayer/DataLayerObjects.js +19 -5
  349. package/dist/dataLayer/DataLayerObjects.js.map +1 -1
  350. package/dist/dataLayer/DeleteBeforeObject.d.ts +3 -5
  351. package/dist/dataLayer/DeleteBeforeObject.js +2 -1
  352. package/dist/dataLayer/DeleteBeforeObject.js.map +1 -1
  353. package/dist/dataLayer/DeleteObject.d.ts +3 -7
  354. package/dist/dataLayer/DeleteObject.js +4 -3
  355. package/dist/dataLayer/DeleteObject.js.map +1 -1
  356. package/dist/dataLayer/DropAttributeObject.d.ts +2 -4
  357. package/dist/dataLayer/DropAttributeObject.js +2 -1
  358. package/dist/dataLayer/DropAttributeObject.js.map +1 -1
  359. package/dist/dataLayer/GetBackupObject.d.ts +3 -5
  360. package/dist/dataLayer/GetBackupObject.js +4 -3
  361. package/dist/dataLayer/GetBackupObject.js.map +1 -1
  362. package/dist/dataLayer/InsertObject.d.ts +3 -8
  363. package/dist/dataLayer/InsertObject.js +4 -3
  364. package/dist/dataLayer/InsertObject.js.map +1 -1
  365. package/dist/dataLayer/ReadAuditLogObject.d.ts +3 -7
  366. package/dist/dataLayer/ReadAuditLogObject.js +4 -3
  367. package/dist/dataLayer/ReadAuditLogObject.js.map +1 -1
  368. package/dist/dataLayer/SQLSearch.d.ts +68 -38
  369. package/dist/dataLayer/SQLSearch.js +140 -78
  370. package/dist/dataLayer/SQLSearch.js.map +1 -1
  371. package/dist/dataLayer/SearchByConditionsObject.d.ts +10 -58
  372. package/dist/dataLayer/SearchByConditionsObject.js +5 -7
  373. package/dist/dataLayer/SearchByConditionsObject.js.map +1 -1
  374. package/dist/dataLayer/SearchByHashObject.d.ts +3 -6
  375. package/dist/dataLayer/SearchByHashObject.js +2 -1
  376. package/dist/dataLayer/SearchByHashObject.js.map +1 -1
  377. package/dist/dataLayer/SearchObject.d.ts +3 -12
  378. package/dist/dataLayer/SearchObject.js +2 -1
  379. package/dist/dataLayer/SearchObject.js.map +1 -1
  380. package/dist/dataLayer/SqlSearchObject.d.ts +2 -4
  381. package/dist/dataLayer/SqlSearchObject.js +2 -1
  382. package/dist/dataLayer/SqlSearchObject.js.map +1 -1
  383. package/dist/dataLayer/UpdateObject.d.ts +3 -7
  384. package/dist/dataLayer/UpdateObject.js +4 -3
  385. package/dist/dataLayer/UpdateObject.js.map +1 -1
  386. package/dist/dataLayer/UpsertObject.d.ts +3 -7
  387. package/dist/dataLayer/UpsertObject.js +4 -3
  388. package/dist/dataLayer/UpsertObject.js.map +1 -1
  389. package/dist/dataLayer/bulkLoad.d.ts +4 -4
  390. package/dist/dataLayer/bulkLoad.js +122 -88
  391. package/dist/dataLayer/bulkLoad.js.map +1 -1
  392. package/dist/dataLayer/delete.d.ts +10 -11
  393. package/dist/dataLayer/delete.js +74 -39
  394. package/dist/dataLayer/delete.js.map +1 -1
  395. package/dist/dataLayer/export.d.ts +8 -8
  396. package/dist/dataLayer/export.js +90 -55
  397. package/dist/dataLayer/export.js.map +1 -1
  398. package/dist/dataLayer/getBackup.d.ts +4 -3
  399. package/dist/dataLayer/getBackup.js +43 -11
  400. package/dist/dataLayer/getBackup.js.map +1 -1
  401. package/dist/dataLayer/harperBridge/BridgeMethods.d.ts +39 -21
  402. package/dist/dataLayer/harperBridge/BridgeMethods.js +41 -20
  403. package/dist/dataLayer/harperBridge/BridgeMethods.js.map +1 -1
  404. package/dist/dataLayer/harperBridge/ResourceBridge.d.ts +2 -2
  405. package/dist/dataLayer/harperBridge/ResourceBridge.js +26 -25
  406. package/dist/dataLayer/harperBridge/ResourceBridge.js.map +1 -1
  407. package/dist/dataLayer/harperBridge/TableSizeObject.d.ts +1 -0
  408. package/dist/dataLayer/harperBridge/TableSizeObject.js.map +1 -1
  409. package/dist/dataLayer/harperBridge/bridgeUtility/insertUpdateValidate.d.ts +4 -4
  410. package/dist/dataLayer/harperBridge/bridgeUtility/insertUpdateValidate.js +4 -4
  411. package/dist/dataLayer/harperBridge/harperBridge.d.ts +2 -3
  412. package/dist/dataLayer/harperBridge/harperBridge.js +38 -4
  413. package/dist/dataLayer/harperBridge/harperBridge.js.map +1 -1
  414. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateAttribute.d.ts +1 -2
  415. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateAttribute.js +7 -6
  416. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateAttribute.js.map +1 -1
  417. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateRecords.d.ts +1 -2
  418. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateRecords.js +4 -4
  419. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateRecords.js.map +1 -1
  420. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateSchema.js +1 -1
  421. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateSchema.js.map +1 -1
  422. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateTable.js +5 -4
  423. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateTable.js.map +1 -1
  424. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDeleteAuditLogsBefore.d.ts +1 -2
  425. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDeleteAuditLogsBefore.js +4 -4
  426. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDeleteAuditLogsBefore.js.map +1 -1
  427. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDeleteRecords.js +4 -4
  428. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropAttribute.d.ts +1 -2
  429. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropAttribute.js +5 -5
  430. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropAttribute.js.map +1 -1
  431. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropSchema.js +4 -4
  432. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropSchema.js.map +1 -1
  433. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropTable.js +5 -5
  434. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropTable.js.map +1 -1
  435. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbFlush.js +1 -1
  436. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetBackup.js +3 -3
  437. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetDataByHash.js +1 -1
  438. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetDataByValue.js +2 -2
  439. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetDataByValue.js.map +1 -1
  440. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbReadAuditLog.js +5 -5
  441. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByConditions.d.ts +1 -2
  442. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByConditions.js +8 -8
  443. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByConditions.js.map +1 -1
  444. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByHash.d.ts +1 -1
  445. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByHash.js +1 -1
  446. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByValue.d.ts +1 -2
  447. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByValue.js +3 -3
  448. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByValue.js.map +1 -1
  449. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbUpdateRecords.js +3 -3
  450. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbUpsertRecords.d.ts +1 -2
  451. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbUpsertRecords.js +5 -5
  452. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbUpsertRecords.js.map +1 -1
  453. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBCreateAttributeObject.d.ts +1 -2
  454. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBCreateAttributeObject.js +1 -1
  455. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBCreateAttributeObject.js.map +1 -1
  456. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializeHashSearch.js +2 -2
  457. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializeHashSearch.js.map +1 -1
  458. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializePaths.js +2 -2
  459. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCheckForNewAttributes.js +4 -4
  460. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCheckForNewAttributes.js.map +1 -1
  461. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCreateTransactionsAuditEnvironment.d.ts +1 -2
  462. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCreateTransactionsAuditEnvironment.js +5 -3
  463. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCreateTransactionsAuditEnvironment.js.map +1 -1
  464. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbGetTableSize.js +2 -2
  465. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbProcessRows.d.ts +1 -2
  466. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbProcessRows.js +4 -4
  467. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbProcessRows.js.map +1 -1
  468. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbSearch.js +5 -5
  469. package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbWriteTransaction.js +4 -4
  470. package/dist/dataLayer/hdbInfoController.d.ts +4 -8
  471. package/dist/dataLayer/hdbInfoController.js +66 -31
  472. package/dist/dataLayer/hdbInfoController.js.map +1 -1
  473. package/dist/dataLayer/insert.d.ts +14 -26
  474. package/dist/dataLayer/insert.js +63 -28
  475. package/dist/dataLayer/insert.js.map +1 -1
  476. package/dist/dataLayer/readAuditLog.d.ts +1 -3
  477. package/dist/dataLayer/readAuditLog.js +45 -13
  478. package/dist/dataLayer/readAuditLog.js.map +1 -1
  479. package/dist/dataLayer/schema.d.ts +10 -10
  480. package/dist/dataLayer/schema.js +124 -89
  481. package/dist/dataLayer/schema.js.map +1 -1
  482. package/dist/dataLayer/schemaDescribe.d.ts +4 -4
  483. package/dist/dataLayer/schemaDescribe.js +78 -41
  484. package/dist/dataLayer/schemaDescribe.js.map +1 -1
  485. package/dist/dataLayer/search.d.ts +4 -4
  486. package/dist/dataLayer/search.js +12 -13
  487. package/dist/dataLayer/search.js.map +1 -1
  488. package/dist/dataLayer/transaction.d.ts +1 -1
  489. package/dist/dataLayer/transaction.js +3 -4
  490. package/dist/dataLayer/transaction.js.map +1 -1
  491. package/dist/dataLayer/update.d.ts +2 -8
  492. package/dist/dataLayer/update.js +53 -18
  493. package/dist/dataLayer/update.js.map +1 -1
  494. package/dist/globals.d.ts +1 -1
  495. package/dist/globals.js +1 -0
  496. package/dist/globals.js.map +1 -1
  497. package/dist/index.d.ts +4 -0
  498. package/dist/index.js +4 -1
  499. package/dist/index.js.map +1 -1
  500. package/dist/json/systemSchema.json +65 -0
  501. package/dist/launchServiceScripts/launchHarperDB.d.ts +1 -0
  502. package/dist/launchServiceScripts/launchHarperDB.js +3 -0
  503. package/dist/launchServiceScripts/launchHarperDB.js.map +1 -0
  504. package/dist/launchServiceScripts/utility/checkNodeVersion.js +3 -0
  505. package/dist/launchServiceScripts/utility/checkNodeVersion.js.map +1 -1
  506. package/dist/resources/DatabaseTransaction.d.ts +14 -6
  507. package/dist/resources/DatabaseTransaction.js +39 -15
  508. package/dist/resources/DatabaseTransaction.js.map +1 -1
  509. package/dist/resources/ErrorResource.d.ts +1 -1
  510. package/dist/resources/ErrorResource.js +3 -1
  511. package/dist/resources/ErrorResource.js.map +1 -1
  512. package/dist/resources/LMDBTransaction.d.ts +10 -13
  513. package/dist/resources/LMDBTransaction.js +18 -7
  514. package/dist/resources/LMDBTransaction.js.map +1 -1
  515. package/dist/resources/RecordEncoder.d.ts +7 -1
  516. package/dist/resources/RecordEncoder.js +5 -2
  517. package/dist/resources/RecordEncoder.js.map +1 -1
  518. package/dist/resources/RequestTarget.d.ts +1 -0
  519. package/dist/resources/RequestTarget.js.map +1 -1
  520. package/dist/resources/Resource.d.ts +9 -5
  521. package/dist/resources/Resource.js +37 -10
  522. package/dist/resources/Resource.js.map +1 -1
  523. package/dist/resources/ResourceInterface.d.ts +24 -5
  524. package/dist/resources/ResourceInterface.js +20 -0
  525. package/dist/resources/ResourceInterface.js.map +1 -1
  526. package/dist/resources/Resources.d.ts +3 -4
  527. package/dist/resources/Resources.js +7 -6
  528. package/dist/resources/Resources.js.map +1 -1
  529. package/dist/resources/RocksIndexStore.js +3 -0
  530. package/dist/resources/RocksIndexStore.js.map +1 -1
  531. package/dist/resources/RocksTransactionLogStore.d.ts +1 -1
  532. package/dist/resources/RocksTransactionLogStore.js +46 -27
  533. package/dist/resources/RocksTransactionLogStore.js.map +1 -1
  534. package/dist/resources/Table.d.ts +59 -329
  535. package/dist/resources/Table.js +267 -107
  536. package/dist/resources/Table.js.map +1 -1
  537. package/dist/resources/analytics/metadata.d.ts +1 -0
  538. package/dist/resources/analytics/metadata.js +1 -0
  539. package/dist/resources/analytics/metadata.js.map +1 -1
  540. package/dist/resources/analytics/read.d.ts +5 -0
  541. package/dist/resources/analytics/read.js +16 -5
  542. package/dist/resources/analytics/read.js.map +1 -1
  543. package/dist/resources/analytics/write.d.ts +28 -0
  544. package/dist/resources/analytics/write.js +232 -20
  545. package/dist/resources/analytics/write.js.map +1 -1
  546. package/dist/resources/auditStore.d.ts +18 -13
  547. package/dist/resources/auditStore.js +13 -8
  548. package/dist/resources/auditStore.js.map +1 -1
  549. package/dist/resources/blob.d.ts +16 -27
  550. package/dist/resources/blob.js +8 -8
  551. package/dist/resources/blob.js.map +1 -1
  552. package/dist/resources/dataLoader.d.ts +1 -1
  553. package/dist/resources/dataLoader.js +13 -13
  554. package/dist/resources/databases.d.ts +13 -0
  555. package/dist/resources/databases.js +160 -52
  556. package/dist/resources/databases.js.map +1 -1
  557. package/dist/resources/graphql.d.ts +1 -7
  558. package/dist/resources/graphql.js +224 -174
  559. package/dist/resources/graphql.js.map +1 -1
  560. package/dist/resources/indexes/HierarchicalNavigableSmallWorld.d.ts +16 -1
  561. package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js +308 -59
  562. package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js.map +1 -1
  563. package/dist/resources/indexes/vector.d.ts +1 -0
  564. package/dist/resources/indexes/vector.js +14 -0
  565. package/dist/resources/indexes/vector.js.map +1 -1
  566. package/dist/resources/loadEnv.d.ts +2 -5
  567. package/dist/resources/loadEnv.js +21 -18
  568. package/dist/resources/loadEnv.js.map +1 -1
  569. package/dist/resources/login.d.ts +2 -3
  570. package/dist/resources/login.js +5 -4
  571. package/dist/resources/login.js.map +1 -1
  572. package/dist/resources/models/Models.d.ts +45 -0
  573. package/dist/resources/models/Models.js +265 -0
  574. package/dist/resources/models/Models.js.map +1 -0
  575. package/dist/resources/models/TestBackend.d.ts +15 -0
  576. package/dist/resources/models/TestBackend.js +71 -0
  577. package/dist/resources/models/TestBackend.js.map +1 -0
  578. package/dist/resources/models/agentLoop.d.ts +125 -0
  579. package/dist/resources/models/agentLoop.js +746 -0
  580. package/dist/resources/models/agentLoop.js.map +1 -0
  581. package/dist/resources/models/analyticsTable.d.ts +65 -0
  582. package/dist/resources/models/analyticsTable.js +166 -0
  583. package/dist/resources/models/analyticsTable.js.map +1 -0
  584. package/dist/resources/models/backendHelpers.d.ts +57 -0
  585. package/dist/resources/models/backendHelpers.js +109 -0
  586. package/dist/resources/models/backendHelpers.js.map +1 -0
  587. package/dist/resources/models/backendRegistry.d.ts +36 -0
  588. package/dist/resources/models/backendRegistry.js +54 -0
  589. package/dist/resources/models/backendRegistry.js.map +1 -0
  590. package/dist/resources/models/bootstrap.d.ts +24 -0
  591. package/dist/resources/models/bootstrap.js +112 -0
  592. package/dist/resources/models/bootstrap.js.map +1 -0
  593. package/dist/resources/models/embedHook.d.ts +33 -0
  594. package/dist/resources/models/embedHook.js +127 -0
  595. package/dist/resources/models/embedHook.js.map +1 -0
  596. package/dist/resources/models/types.d.ts +301 -0
  597. package/dist/resources/models/types.js +11 -0
  598. package/dist/resources/models/types.js.map +1 -0
  599. package/dist/resources/replayLogs.js +7 -1
  600. package/dist/resources/replayLogs.js.map +1 -1
  601. package/dist/resources/roles.d.ts +1 -7
  602. package/dist/resources/roles.js +67 -71
  603. package/dist/resources/roles.js.map +1 -1
  604. package/dist/resources/search.d.ts +18 -1
  605. package/dist/resources/search.js +349 -140
  606. package/dist/resources/search.js.map +1 -1
  607. package/dist/resources/tracked.d.ts +1 -1
  608. package/dist/resources/tracked.js +14 -14
  609. package/dist/resources/tracked.js.map +1 -1
  610. package/dist/resources/transaction.d.ts +1 -1
  611. package/dist/resources/transaction.js +1 -1
  612. package/dist/resources/transaction.js.map +1 -1
  613. package/dist/resources/transactionBroadcast.d.ts +1 -1
  614. package/dist/resources/transactionBroadcast.js.map +1 -1
  615. package/dist/security/auth.d.ts +1 -5
  616. package/dist/security/auth.js +34 -25
  617. package/dist/security/auth.js.map +1 -1
  618. package/dist/security/certificateVerification/crlVerification.js +7 -1
  619. package/dist/security/certificateVerification/crlVerification.js.map +1 -1
  620. package/dist/security/cryptoHash.d.ts +2 -2
  621. package/dist/security/cryptoHash.js +37 -5
  622. package/dist/security/cryptoHash.js.map +1 -1
  623. package/dist/security/data_objects/PermissionAttributeResponseObject.d.ts +3 -4
  624. package/dist/security/data_objects/PermissionAttributeResponseObject.js +4 -1
  625. package/dist/security/data_objects/PermissionAttributeResponseObject.js.map +1 -1
  626. package/dist/security/data_objects/PermissionResponseObject.d.ts +9 -9
  627. package/dist/security/data_objects/PermissionResponseObject.js +15 -8
  628. package/dist/security/data_objects/PermissionResponseObject.js.map +1 -1
  629. package/dist/security/data_objects/PermissionTableResponseObject.d.ts +5 -6
  630. package/dist/security/data_objects/PermissionTableResponseObject.js +6 -1
  631. package/dist/security/data_objects/PermissionTableResponseObject.js.map +1 -1
  632. package/dist/security/fastifyAuth.d.ts +2 -2
  633. package/dist/security/fastifyAuth.js +131 -22
  634. package/dist/security/fastifyAuth.js.map +1 -1
  635. package/dist/security/impersonation.js +15 -15
  636. package/dist/security/jsLoader.js +18 -5
  637. package/dist/security/jsLoader.js.map +1 -1
  638. package/dist/security/keys.d.ts +45 -48
  639. package/dist/security/keys.js +160 -114
  640. package/dist/security/keys.js.map +1 -1
  641. package/dist/security/permissionsTranslator.js +2 -2
  642. package/dist/security/role.d.ts +5 -5
  643. package/dist/security/role.js +70 -35
  644. package/dist/security/role.js.map +1 -1
  645. package/dist/security/tokenAuthentication.d.ts +13 -0
  646. package/dist/security/tokenAuthentication.js +57 -27
  647. package/dist/security/tokenAuthentication.js.map +1 -1
  648. package/dist/security/user.js +74 -38
  649. package/dist/security/user.js.map +1 -1
  650. package/dist/server/DurableSubscriptionsSession.d.ts +4 -2
  651. package/dist/server/DurableSubscriptionsSession.js +71 -55
  652. package/dist/server/DurableSubscriptionsSession.js.map +1 -1
  653. package/dist/server/REST.d.ts +1 -8
  654. package/dist/server/REST.js +17 -16
  655. package/dist/server/REST.js.map +1 -1
  656. package/dist/server/Server.d.ts +23 -4
  657. package/dist/server/Server.js +1 -1
  658. package/dist/server/Server.js.map +1 -1
  659. package/dist/server/fastifyRoutes/helpers/getCORSOptions.js +1 -1
  660. package/dist/server/fastifyRoutes/helpers/getHeaderTimeoutConfig.js +1 -1
  661. package/dist/server/fastifyRoutes/helpers/getServerOptions.js +1 -1
  662. package/dist/server/fastifyRoutes.d.ts +1 -4
  663. package/dist/server/fastifyRoutes.js +34 -30
  664. package/dist/server/fastifyRoutes.js.map +1 -1
  665. package/dist/server/graphqlQuerying.d.ts +1 -1
  666. package/dist/server/graphqlQuerying.js +8 -7
  667. package/dist/server/graphqlQuerying.js.map +1 -1
  668. package/dist/server/http.d.ts +9 -4
  669. package/dist/server/http.js +523 -47
  670. package/dist/server/http.js.map +1 -1
  671. package/dist/server/itc/serverHandlers.js +66 -15
  672. package/dist/server/itc/serverHandlers.js.map +1 -1
  673. package/dist/server/jobs/JobObject.d.ts +3 -3
  674. package/dist/server/jobs/JobObject.js +53 -7
  675. package/dist/server/jobs/JobObject.js.map +1 -1
  676. package/dist/server/jobs/jobProcess.js +64 -24
  677. package/dist/server/jobs/jobProcess.js.map +1 -1
  678. package/dist/server/jobs/jobRunner.d.ts +7 -6
  679. package/dist/server/jobs/jobRunner.js +68 -30
  680. package/dist/server/jobs/jobRunner.js.map +1 -1
  681. package/dist/server/jobs/jobs.d.ts +18 -7
  682. package/dist/server/jobs/jobs.js +93 -61
  683. package/dist/server/jobs/jobs.js.map +1 -1
  684. package/dist/server/loadRootComponents.js +1 -1
  685. package/dist/server/middlewareChain.d.ts +80 -0
  686. package/dist/server/middlewareChain.js +252 -0
  687. package/dist/server/middlewareChain.js.map +1 -0
  688. package/dist/server/mqtt.d.ts +1 -8
  689. package/dist/server/mqtt.js +22 -17
  690. package/dist/server/mqtt.js.map +1 -1
  691. package/dist/server/nodeName.js +44 -13
  692. package/dist/server/nodeName.js.map +1 -1
  693. package/dist/server/operationsServer.d.ts +2 -2
  694. package/dist/server/operationsServer.js +106 -33
  695. package/dist/server/operationsServer.js.map +1 -1
  696. package/dist/server/serverHelpers/Headers.d.ts +4 -4
  697. package/dist/server/serverHelpers/Headers.js +2 -0
  698. package/dist/server/serverHelpers/Headers.js.map +1 -1
  699. package/dist/server/serverHelpers/JSONStream.d.ts +7 -1
  700. package/dist/server/serverHelpers/JSONStream.js +12 -3
  701. package/dist/server/serverHelpers/JSONStream.js.map +1 -1
  702. package/dist/server/serverHelpers/Request.d.ts +106 -8
  703. package/dist/server/serverHelpers/Request.js +370 -9
  704. package/dist/server/serverHelpers/Request.js.map +1 -1
  705. package/dist/server/serverHelpers/contentTypes.d.ts +1 -1
  706. package/dist/server/serverHelpers/contentTypes.js +36 -7
  707. package/dist/server/serverHelpers/contentTypes.js.map +1 -1
  708. package/dist/server/serverHelpers/multipartParser.d.ts +21 -0
  709. package/dist/server/serverHelpers/multipartParser.js +142 -0
  710. package/dist/server/serverHelpers/multipartParser.js.map +1 -0
  711. package/dist/server/serverHelpers/progressEmitter.d.ts +25 -0
  712. package/dist/server/serverHelpers/progressEmitter.js +103 -0
  713. package/dist/server/serverHelpers/progressEmitter.js.map +1 -0
  714. package/dist/server/serverHelpers/serverHandlers.d.ts +1 -1
  715. package/dist/server/serverHelpers/serverHandlers.js +38 -7
  716. package/dist/server/serverHelpers/serverHandlers.js.map +1 -1
  717. package/dist/server/serverHelpers/serverUtilities.d.ts +4 -2
  718. package/dist/server/serverHelpers/serverUtilities.js +97 -93
  719. package/dist/server/serverHelpers/serverUtilities.js.map +1 -1
  720. package/dist/server/static.js +8 -5
  721. package/dist/server/static.js.map +1 -1
  722. package/dist/server/status/index.js +3 -3
  723. package/dist/server/storageReclamation.d.ts +10 -0
  724. package/dist/server/storageReclamation.js +68 -9
  725. package/dist/server/storageReclamation.js.map +1 -1
  726. package/dist/server/threads/itc.js +7 -4
  727. package/dist/server/threads/itc.js.map +1 -1
  728. package/dist/server/threads/manageThreads.d.ts +1 -1
  729. package/dist/server/threads/manageThreads.js +110 -26
  730. package/dist/server/threads/manageThreads.js.map +1 -1
  731. package/dist/server/threads/socketRouter.d.ts +0 -1
  732. package/dist/server/threads/socketRouter.js +8 -271
  733. package/dist/server/threads/socketRouter.js.map +1 -1
  734. package/dist/server/threads/threadServer.d.ts +1 -0
  735. package/dist/server/threads/threadServer.js +360 -118
  736. package/dist/server/threads/threadServer.js.map +1 -1
  737. package/dist/server/threads/workerProcessGuard.d.ts +42 -0
  738. package/dist/server/threads/workerProcessGuard.js +114 -0
  739. package/dist/server/threads/workerProcessGuard.js.map +1 -0
  740. package/dist/server/throttle.js +17 -0
  741. package/dist/server/throttle.js.map +1 -1
  742. package/dist/sqlTranslator/SelectValidator.d.ts +21 -24
  743. package/dist/sqlTranslator/SelectValidator.js +86 -47
  744. package/dist/sqlTranslator/SelectValidator.js.map +1 -1
  745. package/dist/sqlTranslator/alasqlFunctionImporter.d.ts +6 -2
  746. package/dist/sqlTranslator/alasqlFunctionImporter.js +40 -3
  747. package/dist/sqlTranslator/alasqlFunctionImporter.js.map +1 -1
  748. package/dist/sqlTranslator/deleteTranslator.d.ts +4 -7
  749. package/dist/sqlTranslator/deleteTranslator.js +48 -14
  750. package/dist/sqlTranslator/deleteTranslator.js.map +1 -1
  751. package/dist/sqlTranslator/index.d.ts +10 -9
  752. package/dist/sqlTranslator/index.js +69 -30
  753. package/dist/sqlTranslator/index.js.map +1 -1
  754. package/dist/sqlTranslator/sql_statement_bucket.d.ts +10 -10
  755. package/dist/sqlTranslator/sql_statement_bucket.js +55 -13
  756. package/dist/sqlTranslator/sql_statement_bucket.js.map +1 -1
  757. package/dist/upgrade/UpgradeObjects.d.ts +2 -3
  758. package/dist/upgrade/UpgradeObjects.js +37 -4
  759. package/dist/upgrade/UpgradeObjects.js.map +1 -1
  760. package/dist/upgrade/directives/5-2-0.d.ts +6 -0
  761. package/dist/upgrade/directives/5-2-0.js +77 -0
  762. package/dist/upgrade/directives/5-2-0.js.map +1 -0
  763. package/dist/upgrade/directives/directivesController.d.ts +10 -10
  764. package/dist/upgrade/directives/directivesController.js +52 -11
  765. package/dist/upgrade/directives/directivesController.js.map +1 -1
  766. package/dist/upgrade/directivesManager.d.ts +1 -1
  767. package/dist/upgrade/directivesManager.js +53 -18
  768. package/dist/upgrade/directivesManager.js.map +1 -1
  769. package/dist/upgrade/upgradePrompt.d.ts +3 -3
  770. package/dist/upgrade/upgradePrompt.js +65 -30
  771. package/dist/upgrade/upgradePrompt.js.map +1 -1
  772. package/dist/upgrade/upgradeUtilities.d.ts +1 -1
  773. package/dist/upgrade/upgradeUtilities.js +37 -5
  774. package/dist/upgrade/upgradeUtilities.js.map +1 -1
  775. package/dist/utility/OperationFunctionCaller.d.ts +1 -1
  776. package/dist/utility/OperationFunctionCaller.js +45 -10
  777. package/dist/utility/OperationFunctionCaller.js.map +1 -1
  778. package/dist/utility/assignCmdEnvVariables.d.ts +1 -2
  779. package/dist/utility/assignCmdEnvVariables.js +8 -4
  780. package/dist/utility/assignCmdEnvVariables.js.map +1 -1
  781. package/dist/utility/common_utils.d.ts +80 -77
  782. package/dist/utility/common_utils.js +140 -79
  783. package/dist/utility/common_utils.js.map +1 -1
  784. package/dist/utility/environment/environmentManager.d.ts +12 -11
  785. package/dist/utility/environment/environmentManager.js +75 -29
  786. package/dist/utility/environment/environmentManager.js.map +1 -1
  787. package/dist/utility/environment/systemInformation.d.ts +4 -0
  788. package/dist/utility/environment/systemInformation.js +27 -16
  789. package/dist/utility/environment/systemInformation.js.map +1 -1
  790. package/dist/utility/errors/commonErrors.d.ts +192 -168
  791. package/dist/utility/errors/commonErrors.js +49 -18
  792. package/dist/utility/errors/commonErrors.js.map +1 -1
  793. package/dist/utility/errors/hdbError.d.ts +37 -51
  794. package/dist/utility/errors/hdbError.js +65 -26
  795. package/dist/utility/errors/hdbError.js.map +1 -1
  796. package/dist/utility/expandEnvVar.d.ts +61 -0
  797. package/dist/utility/expandEnvVar.js +113 -0
  798. package/dist/utility/expandEnvVar.js.map +1 -0
  799. package/dist/utility/functions/geo.js +2 -2
  800. package/dist/utility/functions/sql/alaSQLExtension.js +1 -1
  801. package/dist/utility/globalSchema.d.ts +13 -4
  802. package/dist/utility/globalSchema.js +14 -11
  803. package/dist/utility/globalSchema.js.map +1 -1
  804. package/dist/utility/hdbTerms.d.ts +56 -0
  805. package/dist/utility/hdbTerms.js +56 -0
  806. package/dist/utility/hdbTerms.js.map +1 -1
  807. package/dist/utility/install/checkJWTTokensExist.js +1 -1
  808. package/dist/utility/install/installer.d.ts +9 -12
  809. package/dist/utility/install/installer.js +87 -51
  810. package/dist/utility/install/installer.js.map +1 -1
  811. package/dist/utility/installation.js +3 -3
  812. package/dist/utility/lmdb/DBIDefinition.d.ts +4 -4
  813. package/dist/utility/lmdb/DBIDefinition.js +5 -1
  814. package/dist/utility/lmdb/DBIDefinition.js.map +1 -1
  815. package/dist/utility/lmdb/DeleteRecordsResponseObject.d.ts +3 -6
  816. package/dist/utility/lmdb/DeleteRecordsResponseObject.js +2 -1
  817. package/dist/utility/lmdb/DeleteRecordsResponseObject.js.map +1 -1
  818. package/dist/utility/lmdb/InsertRecordsResponseObject.d.ts +3 -5
  819. package/dist/utility/lmdb/InsertRecordsResponseObject.js +2 -1
  820. package/dist/utility/lmdb/InsertRecordsResponseObject.js.map +1 -1
  821. package/dist/utility/lmdb/OpenDBIObject.d.ts +11 -15
  822. package/dist/utility/lmdb/OpenDBIObject.js +54 -6
  823. package/dist/utility/lmdb/OpenDBIObject.js.map +1 -1
  824. package/dist/utility/lmdb/OpenEnvironmentObject.d.ts +5 -8
  825. package/dist/utility/lmdb/OpenEnvironmentObject.js +52 -4
  826. package/dist/utility/lmdb/OpenEnvironmentObject.js.map +1 -1
  827. package/dist/utility/lmdb/UpdateRecordsResponseObject.d.ts +3 -6
  828. package/dist/utility/lmdb/UpdateRecordsResponseObject.js +2 -1
  829. package/dist/utility/lmdb/UpdateRecordsResponseObject.js.map +1 -1
  830. package/dist/utility/lmdb/UpsertRecordsResponseObject.d.ts +3 -5
  831. package/dist/utility/lmdb/UpsertRecordsResponseObject.js +2 -1
  832. package/dist/utility/lmdb/UpsertRecordsResponseObject.js.map +1 -1
  833. package/dist/utility/lmdb/cleanLMDBMap.d.ts +1 -1
  834. package/dist/utility/lmdb/cleanLMDBMap.js +44 -7
  835. package/dist/utility/lmdb/cleanLMDBMap.js.map +1 -1
  836. package/dist/utility/lmdb/commonUtility.d.ts +8 -9
  837. package/dist/utility/lmdb/commonUtility.js +46 -17
  838. package/dist/utility/lmdb/commonUtility.js.map +1 -1
  839. package/dist/utility/lmdb/deleteUtility.d.ts +2 -3
  840. package/dist/utility/lmdb/deleteUtility.js +51 -16
  841. package/dist/utility/lmdb/deleteUtility.js.map +1 -1
  842. package/dist/utility/lmdb/environmentUtility.d.ts +69 -36
  843. package/dist/utility/lmdb/environmentUtility.js +91 -51
  844. package/dist/utility/lmdb/environmentUtility.js.map +1 -1
  845. package/dist/utility/lmdb/searchCursorFunctions.d.ts +19 -19
  846. package/dist/utility/lmdb/searchCursorFunctions.js +46 -14
  847. package/dist/utility/lmdb/searchCursorFunctions.js.map +1 -1
  848. package/dist/utility/lmdb/searchUtility.d.ts +142 -73
  849. package/dist/utility/lmdb/searchUtility.js +91 -55
  850. package/dist/utility/lmdb/searchUtility.js.map +1 -1
  851. package/dist/utility/lmdb/terms.d.ts +34 -34
  852. package/dist/utility/lmdb/terms.js +12 -22
  853. package/dist/utility/lmdb/terms.js.map +1 -1
  854. package/dist/utility/lmdb/writeUtility.d.ts +3 -6
  855. package/dist/utility/lmdb/writeUtility.js +61 -28
  856. package/dist/utility/lmdb/writeUtility.js.map +1 -1
  857. package/dist/utility/logging/harper_logger.d.ts +87 -103
  858. package/dist/utility/logging/harper_logger.js +176 -81
  859. package/dist/utility/logging/harper_logger.js.map +1 -1
  860. package/dist/utility/logging/logRotator.d.ts +2 -10
  861. package/dist/utility/logging/logRotator.js +65 -28
  862. package/dist/utility/logging/logRotator.js.map +1 -1
  863. package/dist/utility/logging/logger.js +4 -4
  864. package/dist/utility/logging/readLog.d.ts +1 -1
  865. package/dist/utility/logging/readLog.js +54 -17
  866. package/dist/utility/logging/readLog.js.map +1 -1
  867. package/dist/utility/logging/transactionLog.d.ts +2 -2
  868. package/dist/utility/logging/transactionLog.js +51 -16
  869. package/dist/utility/logging/transactionLog.js.map +1 -1
  870. package/dist/utility/mount_hdb.d.ts +1 -2
  871. package/dist/utility/mount_hdb.js +54 -17
  872. package/dist/utility/mount_hdb.js.map +1 -1
  873. package/dist/utility/npmUtilities.d.ts +1 -1
  874. package/dist/utility/npmUtilities.js +54 -19
  875. package/dist/utility/npmUtilities.js.map +1 -1
  876. package/dist/utility/operation_authorization.d.ts +36 -9
  877. package/dist/utility/operation_authorization.js +135 -86
  878. package/dist/utility/operation_authorization.js.map +1 -1
  879. package/dist/utility/packageUtils.d.ts +0 -2
  880. package/dist/utility/packageUtils.js +7 -17
  881. package/dist/utility/packageUtils.js.map +1 -1
  882. package/dist/utility/password.js +2 -2
  883. package/dist/utility/processManagement/processManagement.js +2 -2
  884. package/dist/utility/processManagement/servicesConfig.js +1 -1
  885. package/dist/utility/signalling.d.ts +2 -2
  886. package/dist/utility/signalling.js +51 -16
  887. package/dist/utility/signalling.js.map +1 -1
  888. package/dist/utility/watcherFallback.d.ts +36 -0
  889. package/dist/utility/watcherFallback.js +73 -0
  890. package/dist/utility/watcherFallback.js.map +1 -0
  891. package/dist/validation/analyticsValidator.d.ts +1 -0
  892. package/dist/validation/analyticsValidator.js +79 -0
  893. package/dist/validation/analyticsValidator.js.map +1 -0
  894. package/dist/validation/bulkDeleteValidator.d.ts +1 -2
  895. package/dist/validation/bulkDeleteValidator.js +49 -11
  896. package/dist/validation/bulkDeleteValidator.js.map +1 -1
  897. package/dist/validation/check_permissions.d.ts +1 -2
  898. package/dist/validation/check_permissions.js +38 -3
  899. package/dist/validation/check_permissions.js.map +1 -1
  900. package/dist/validation/common_validators.d.ts +20 -20
  901. package/dist/validation/common_validators.js +62 -31
  902. package/dist/validation/common_validators.js.map +1 -1
  903. package/dist/validation/configValidator.d.ts +4 -4
  904. package/dist/validation/configValidator.js +189 -54
  905. package/dist/validation/configValidator.js.map +1 -1
  906. package/dist/validation/deleteValidator.d.ts +1 -2
  907. package/dist/validation/deleteValidator.js +49 -11
  908. package/dist/validation/deleteValidator.js.map +1 -1
  909. package/dist/validation/fileLoadValidator.d.ts +4 -4
  910. package/dist/validation/fileLoadValidator.js +67 -32
  911. package/dist/validation/fileLoadValidator.js.map +1 -1
  912. package/dist/validation/insertValidator.d.ts +1 -2
  913. package/dist/validation/insertValidator.js +48 -10
  914. package/dist/validation/insertValidator.js.map +1 -1
  915. package/dist/validation/installValidator.d.ts +2 -2
  916. package/dist/validation/installValidator.js +47 -10
  917. package/dist/validation/installValidator.js.map +1 -1
  918. package/dist/validation/readLogValidator.d.ts +1 -2
  919. package/dist/validation/readLogValidator.js +60 -22
  920. package/dist/validation/readLogValidator.js.map +1 -1
  921. package/dist/validation/role_validation.d.ts +3 -3
  922. package/dist/validation/role_validation.js +55 -19
  923. package/dist/validation/role_validation.js.map +1 -1
  924. package/dist/validation/schemaMetadataValidator.d.ts +3 -4
  925. package/dist/validation/schemaMetadataValidator.js +11 -12
  926. package/dist/validation/schemaMetadataValidator.js.map +1 -1
  927. package/dist/validation/searchValidator.d.ts +1 -2
  928. package/dist/validation/searchValidator.js +82 -43
  929. package/dist/validation/searchValidator.js.map +1 -1
  930. package/dist/validation/statusValidator.d.ts +1 -1
  931. package/dist/validation/transactionLogValidator.d.ts +3 -3
  932. package/dist/validation/transactionLogValidator.js +52 -17
  933. package/dist/validation/transactionLogValidator.js.map +1 -1
  934. package/dist/validation/user_validation.d.ts +3 -3
  935. package/dist/validation/user_validation.js +38 -6
  936. package/dist/validation/user_validation.js.map +1 -1
  937. package/dist/validation/validationWrapper.d.ts +3 -3
  938. package/dist/validation/validationWrapper.js +4 -5
  939. package/dist/validation/validationWrapper.js.map +1 -1
  940. package/index.ts +5 -0
  941. package/json/systemSchema.json +65 -0
  942. package/launchServiceScripts/utility/checkNodeVersion.js +2 -0
  943. package/package.json +37 -22
  944. package/resources/DESIGN.md +98 -0
  945. package/resources/DatabaseTransaction.ts +58 -30
  946. package/resources/ErrorResource.ts +2 -1
  947. package/resources/LMDBTransaction.ts +38 -29
  948. package/resources/RecordEncoder.ts +12 -4
  949. package/resources/RequestTarget.ts +2 -0
  950. package/resources/Resource.ts +89 -56
  951. package/resources/ResourceInterface.ts +44 -21
  952. package/resources/Resources.ts +8 -8
  953. package/resources/RocksIndexStore.ts +3 -0
  954. package/resources/RocksTransactionLogStore.ts +47 -28
  955. package/resources/Table.ts +386 -214
  956. package/resources/analytics/metadata.ts +1 -0
  957. package/resources/analytics/read.ts +24 -6
  958. package/resources/analytics/write.ts +240 -17
  959. package/resources/auditStore.ts +28 -19
  960. package/resources/blob.ts +53 -53
  961. package/resources/dataLoader.ts +4 -4
  962. package/resources/databases.ts +190 -71
  963. package/resources/graphql.ts +227 -164
  964. package/resources/indexes/HierarchicalNavigableSmallWorld.ts +294 -65
  965. package/resources/indexes/vector.ts +17 -0
  966. package/resources/loadEnv.ts +21 -17
  967. package/resources/login.ts +5 -3
  968. package/resources/models/Models.ts +304 -0
  969. package/resources/models/TestBackend.ts +83 -0
  970. package/resources/models/agentLoop.ts +895 -0
  971. package/resources/models/analyticsTable.ts +199 -0
  972. package/resources/models/backendHelpers.ts +116 -0
  973. package/resources/models/backendRegistry.ts +66 -0
  974. package/resources/models/bootstrap.ts +135 -0
  975. package/resources/models/embedHook.ts +138 -0
  976. package/resources/models/types.ts +296 -0
  977. package/resources/replayLogs.ts +15 -7
  978. package/resources/roles.ts +62 -67
  979. package/resources/search.ts +355 -135
  980. package/resources/tracked.ts +8 -8
  981. package/resources/transaction.ts +8 -8
  982. package/resources/transactionBroadcast.ts +3 -3
  983. package/security/auth.ts +35 -26
  984. package/security/certificateVerification/crlVerification.ts +11 -4
  985. package/security/{cryptoHash.js → cryptoHash.ts} +3 -8
  986. package/security/data_objects/{PermissionAttributeResponseObject.js → PermissionAttributeResponseObject.ts} +4 -4
  987. package/security/data_objects/{PermissionResponseObject.js → PermissionResponseObject.ts} +12 -11
  988. package/security/data_objects/{PermissionTableResponseObject.js → PermissionTableResponseObject.ts} +6 -4
  989. package/security/{fastifyAuth.js → fastifyAuth.ts} +93 -20
  990. package/security/impersonation.ts +3 -3
  991. package/security/jsLoader.ts +22 -8
  992. package/security/{keys.js → keys.ts} +113 -121
  993. package/security/permissionsTranslator.js +2 -2
  994. package/security/{role.js → role.ts} +26 -33
  995. package/security/tokenAuthentication.ts +34 -7
  996. package/security/user.ts +26 -22
  997. package/server/DESIGN.md +139 -0
  998. package/server/DurableSubscriptionsSession.ts +67 -50
  999. package/server/REST.ts +120 -107
  1000. package/server/Server.ts +31 -12
  1001. package/server/fastifyRoutes/helpers/getCORSOptions.js +1 -1
  1002. package/server/fastifyRoutes/helpers/getHeaderTimeoutConfig.js +1 -1
  1003. package/server/fastifyRoutes/helpers/getServerOptions.js +1 -1
  1004. package/server/fastifyRoutes.ts +37 -33
  1005. package/server/graphqlQuerying.ts +6 -5
  1006. package/server/http.ts +517 -26
  1007. package/server/itc/serverHandlers.js +75 -14
  1008. package/server/jobs/{JobObject.js → JobObject.ts} +13 -6
  1009. package/server/jobs/{jobProcess.js → jobProcess.ts} +20 -16
  1010. package/server/jobs/{jobRunner.js → jobRunner.ts} +20 -21
  1011. package/server/jobs/{jobs.js → jobs.ts} +41 -44
  1012. package/server/loadRootComponents.js +1 -1
  1013. package/server/middlewareChain.ts +270 -0
  1014. package/server/mqtt.ts +35 -26
  1015. package/server/nodeName.ts +2 -1
  1016. package/server/operationsServer.ts +85 -10
  1017. package/server/serverHelpers/Headers.ts +10 -8
  1018. package/server/serverHelpers/JSONStream.ts +15 -5
  1019. package/server/serverHelpers/Request.ts +370 -13
  1020. package/server/serverHelpers/contentTypes.ts +42 -11
  1021. package/server/serverHelpers/multipartParser.ts +152 -0
  1022. package/server/serverHelpers/progressEmitter.ts +110 -0
  1023. package/server/serverHelpers/serverHandlers.js +43 -7
  1024. package/server/serverHelpers/serverUtilities.ts +40 -30
  1025. package/server/static.ts +9 -6
  1026. package/server/status/index.ts +2 -2
  1027. package/server/storageReclamation.ts +39 -2
  1028. package/server/threads/itc.js +7 -4
  1029. package/server/threads/manageThreads.js +100 -26
  1030. package/server/threads/socketRouter.ts +12 -275
  1031. package/server/threads/threadServer.js +345 -105
  1032. package/server/threads/workerProcessGuard.ts +93 -0
  1033. package/server/throttle.ts +18 -0
  1034. package/sqlTranslator/{SelectValidator.js → SelectValidator.ts} +41 -49
  1035. package/sqlTranslator/{alasqlFunctionImporter.js → alasqlFunctionImporter.ts} +5 -5
  1036. package/sqlTranslator/{deleteTranslator.js → deleteTranslator.ts} +13 -18
  1037. package/sqlTranslator/{index.js → index.ts} +30 -33
  1038. package/sqlTranslator/{sql_statement_bucket.js → sql_statement_bucket.ts} +49 -20
  1039. package/static/README.md +10 -9
  1040. package/studio/web/assets/{index-CmtPP0YO.js → index-COfIkCT-.js} +5 -5
  1041. package/studio/web/assets/index-COfIkCT-.js.map +1 -0
  1042. package/studio/web/assets/{index.lazy-C8jvGtlu.js → index.lazy-CIvl7Fj9.js} +2 -2
  1043. package/studio/web/assets/{index.lazy-C8jvGtlu.js.map → index.lazy-CIvl7Fj9.js.map} +1 -1
  1044. package/studio/web/assets/{profile-O0DYlJUv.js → profile-B2ZVB--r.js} +2 -2
  1045. package/studio/web/assets/{profile-O0DYlJUv.js.map → profile-B2ZVB--r.js.map} +1 -1
  1046. package/studio/web/assets/{status-BIlJkJby.js → status-Db6WBmhf.js} +2 -2
  1047. package/studio/web/assets/{status-BIlJkJby.js.map → status-Db6WBmhf.js.map} +1 -1
  1048. package/studio/web/index.html +1 -1
  1049. package/upgrade/{UpgradeObjects.js → UpgradeObjects.ts} +3 -6
  1050. package/upgrade/directives/5-2-0.ts +49 -0
  1051. package/upgrade/directives/{directivesController.js → directivesController.ts} +16 -16
  1052. package/upgrade/{directivesManager.js → directivesManager.ts} +7 -11
  1053. package/upgrade/{upgradePrompt.js → upgradePrompt.ts} +8 -14
  1054. package/upgrade/{upgradeUtilities.js → upgradeUtilities.ts} +3 -7
  1055. package/utility/{OperationFunctionCaller.js → OperationFunctionCaller.ts} +7 -7
  1056. package/utility/{assignCmdEnvVariables.js → assignCmdEnvVariables.ts} +6 -8
  1057. package/utility/{common_utils.js → common_utils.ts} +113 -139
  1058. package/utility/environment/{environmentManager.js → environmentManager.ts} +34 -33
  1059. package/utility/environment/systemInformation.ts +18 -4
  1060. package/utility/errors/{commonErrors.js → commonErrors.ts} +9 -9
  1061. package/utility/errors/{hdbError.js → hdbError.ts} +39 -45
  1062. package/utility/expandEnvVar.ts +110 -0
  1063. package/utility/functions/geo.js +2 -2
  1064. package/utility/functions/sql/alaSQLExtension.js +1 -1
  1065. package/utility/globalSchema.ts +30 -0
  1066. package/utility/hdbTerms.ts +56 -0
  1067. package/utility/install/checkJWTTokensExist.js +1 -1
  1068. package/utility/install/{installer.js → installer.ts} +38 -39
  1069. package/utility/installation.ts +2 -2
  1070. package/utility/lmdb/{DBIDefinition.js → DBIDefinition.ts} +4 -1
  1071. package/utility/lmdb/{DeleteRecordsResponseObject.js → DeleteRecordsResponseObject.ts} +2 -1
  1072. package/utility/lmdb/{InsertRecordsResponseObject.js → InsertRecordsResponseObject.ts} +2 -1
  1073. package/utility/lmdb/OpenDBIObject.ts +43 -0
  1074. package/utility/lmdb/{OpenEnvironmentObject.js → OpenEnvironmentObject.ts} +19 -6
  1075. package/utility/lmdb/{UpdateRecordsResponseObject.js → UpdateRecordsResponseObject.ts} +2 -1
  1076. package/utility/lmdb/{UpsertRecordsResponseObject.js → UpsertRecordsResponseObject.ts} +2 -1
  1077. package/utility/lmdb/{cleanLMDBMap.js → cleanLMDBMap.ts} +5 -5
  1078. package/utility/lmdb/{commonUtility.js → commonUtility.ts} +13 -21
  1079. package/utility/lmdb/{deleteUtility.js → deleteUtility.ts} +8 -12
  1080. package/utility/lmdb/{environmentUtility.js → environmentUtility.ts} +43 -52
  1081. package/utility/lmdb/{searchCursorFunctions.js → searchCursorFunctions.ts} +12 -26
  1082. package/utility/lmdb/{searchUtility.js → searchUtility.ts} +75 -64
  1083. package/utility/lmdb/{terms.js → terms.ts} +10 -23
  1084. package/utility/lmdb/{writeUtility.js → writeUtility.ts} +37 -22
  1085. package/utility/logging/{harper_logger.js → harper_logger.ts} +136 -89
  1086. package/utility/logging/{logRotator.js → logRotator.ts} +13 -13
  1087. package/utility/logging/logger.ts +1 -1
  1088. package/utility/logging/{readLog.js → readLog.ts} +19 -19
  1089. package/utility/logging/{transactionLog.js → transactionLog.ts} +10 -14
  1090. package/utility/{mount_hdb.js → mount_hdb.ts} +15 -16
  1091. package/utility/{npmUtilities.js → npmUtilities.ts} +14 -17
  1092. package/utility/{operation_authorization.js → operation_authorization.ts} +173 -124
  1093. package/utility/packageUtils.js +7 -16
  1094. package/utility/password.ts +1 -1
  1095. package/utility/processManagement/processManagement.js +2 -2
  1096. package/utility/processManagement/servicesConfig.js +1 -1
  1097. package/utility/{signalling.js → signalling.ts} +6 -11
  1098. package/utility/watcherFallback.ts +74 -0
  1099. package/validation/analyticsValidator.ts +43 -0
  1100. package/validation/{bulkDeleteValidator.js → bulkDeleteValidator.ts} +5 -5
  1101. package/validation/{check_permissions.js → check_permissions.ts} +3 -3
  1102. package/validation/{common_validators.js → common_validators.ts} +12 -24
  1103. package/validation/{configValidator.js → configValidator.ts} +114 -18
  1104. package/validation/{deleteValidator.js → deleteValidator.ts} +5 -5
  1105. package/validation/{fileLoadValidator.js → fileLoadValidator.ts} +12 -19
  1106. package/validation/{insertValidator.js → insertValidator.ts} +5 -5
  1107. package/validation/{installValidator.js → installValidator.ts} +8 -8
  1108. package/validation/{readLogValidator.js → readLogValidator.ts} +10 -10
  1109. package/validation/{role_validation.js → role_validation.ts} +26 -32
  1110. package/validation/{schemaMetadataValidator.js → schemaMetadataValidator.ts} +5 -11
  1111. package/validation/{searchValidator.js → searchValidator.ts} +12 -11
  1112. package/validation/statusValidator.ts +1 -1
  1113. package/validation/{transactionLogValidator.js → transactionLogValidator.ts} +4 -9
  1114. package/validation/{user_validation.js → user_validation.ts} +4 -10
  1115. package/validation/{validationWrapper.js → validationWrapper.ts} +3 -9
  1116. package/bin/cliOperations.js +0 -159
  1117. package/bin/lite.js +0 -5
  1118. package/dataLayer/harperBridge/BridgeMethods.js +0 -85
  1119. package/studio/web/assets/index-CmtPP0YO.js.map +0 -1
  1120. package/utility/globalSchema.js +0 -35
  1121. package/utility/lmdb/OpenDBIObject.js +0 -31
@@ -1,17 +1,15 @@
1
1
  'use strict';
2
2
 
3
3
  const { mkdirpSync, copySync } = require('fs-extra');
4
- const path = require('path');
5
- const terms = require('../utility/hdbTerms.ts');
6
- const hdbLogger = require('../utility/logging/harper_logger.js');
7
- const bridge = require('../dataLayer/harperBridge/harperBridge.js');
8
- const systemSchema = require('../json/systemSchema.json');
9
- const initPaths = require('../dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializePaths.js');
10
- const { PACKAGE_ROOT } = require('../utility/packageUtils');
11
-
12
- module.exports = mountHdb;
13
-
14
- async function mountHdb(hdbPath) {
4
+ import * as path from 'path';
5
+ import * as terms from '../utility/hdbTerms.ts';
6
+ import hdbLogger from '../utility/logging/harper_logger.ts';
7
+ import bridge from '../dataLayer/harperBridge/harperBridge.ts';
8
+ import systemSchema from '../json/systemSchema.json';
9
+ import * as initPaths from '../dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializePaths.js';
10
+ import { PACKAGE_ROOT } from '../utility/packageUtils.js';
11
+
12
+ export default async function mountHdb(hdbPath: string) {
15
13
  hdbLogger.trace('Mounting Harper');
16
14
 
17
15
  makeDirectory(hdbPath);
@@ -30,16 +28,17 @@ async function mountHdb(hdbPath) {
30
28
  * @returns {Promise<void>}
31
29
  */
32
30
  async function createTables() {
33
- const CreateTableObject = require('../dataLayer/CreateTableObject.js');
31
+ const CreateTableObject =
32
+ require('../dataLayer/CreateTableObject').default || require('../dataLayer/CreateTableObject');
34
33
 
35
34
  let tables = Object.keys(systemSchema);
36
35
 
37
36
  for (const tableName of tables) {
38
- let hash_attribute = systemSchema[tableName].hash_attribute;
37
+ let hash_attribute = (systemSchema as any)[tableName].hash_attribute;
39
38
  try {
40
39
  initPaths.initSystemSchemaPaths(terms.SYSTEM_SCHEMA_NAME, tableName);
41
- let createTable = new CreateTableObject(terms.SYSTEM_SCHEMA_NAME, tableName, hash_attribute);
42
- createTable.attributes = systemSchema[tableName].attributes;
40
+ let createTable = new (CreateTableObject as any)(terms.SYSTEM_SCHEMA_NAME, tableName, hash_attribute);
41
+ createTable.attributes = (systemSchema as any)[tableName].attributes;
43
42
  let primaryKeyAttribute = createTable.attributes.find(({ attribute }) => attribute === hash_attribute);
44
43
  primaryKeyAttribute.isPrimaryKey = true;
45
44
 
@@ -53,7 +52,7 @@ async function createTables() {
53
52
  }
54
53
  }
55
54
 
56
- function makeDirectory(targetDir) {
55
+ function makeDirectory(targetDir: string) {
57
56
  mkdirpSync(targetDir, { mode: terms.HDB_FILE_PERMISSIONS });
58
57
  hdbLogger.info(`Directory ${targetDir} created`);
59
58
  }
@@ -1,28 +1,25 @@
1
1
  'use strict';
2
2
 
3
- const Joi = require('joi');
4
- const path = require('path');
3
+ import Joi from 'joi';
4
+ import * as path from 'path';
5
5
 
6
- const { handleHDBError, hdbErrors } = require('./errors/hdbError.js');
7
- const { HTTP_STATUS_CODES } = hdbErrors;
6
+ import { handleHDBError, hdbErrors } from './errors/hdbError.ts';
8
7
 
9
- const validator = require('../validation/validationWrapper.js');
10
- const harperLogger = require('./logging/harper_logger.js');
8
+ const { HTTP_STATUS_CODES } = hdbErrors;
11
9
 
12
- module.exports = {
13
- installModules,
14
- };
10
+ import * as validator from '../validation/validationWrapper.ts';
11
+ import harperLogger from './logging/harper_logger.ts';
15
12
 
16
- const { CONFIG_PARAMS } = require('./hdbTerms.ts');
17
- const { getConfigPath } = require('../config/configUtils.js');
18
- const { nonInteractiveSpawn } = require('../components/Application.ts');
13
+ import { CONFIG_PARAMS } from './hdbTerms.ts';
14
+ import { getConfigPath } from '../config/configUtils.js';
15
+ import { nonInteractiveSpawn } from '../components/Application.ts';
19
16
 
20
17
  /**
21
18
  * Executes npm install against specified custom function projects
22
19
  * @param {Object} req
23
20
  * @returns {Promise<{}>}
24
21
  */
25
- async function installModules(req) {
22
+ export async function installModules(req: any) {
26
23
  const deprecationWarning =
27
24
  'install_node_modules is deprecated. Dependencies are automatically installed on' +
28
25
  ' deploy, and install_node_modules can lead to inconsistent behavior';
@@ -36,7 +33,7 @@ async function installModules(req) {
36
33
 
37
34
  const componentsRootDirPath = getConfigPath(CONFIG_PARAMS.COMPONENTSROOT);
38
35
 
39
- const responseObject = {};
36
+ const responseObject: any = {};
40
37
 
41
38
  const args = ['install', '--force', '--omit=dev', '--json'];
42
39
  if (dryRun) args.push('--dry-run');
@@ -45,7 +42,7 @@ async function installModules(req) {
45
42
  responseObject[project] = { npm_output: null, npm_error: null };
46
43
  const projectPath = path.join(componentsRootDirPath, project);
47
44
  try {
48
- let { stdout, stderr } = nonInteractiveSpawn(project, 'npm', args, projectPath);
45
+ let { stdout, stderr } = await nonInteractiveSpawn(project, 'npm', args, projectPath);
49
46
  stdout = stdout ? stdout.replace('\n', '') : null;
50
47
  stderr = stderr ? stderr.replace('\n', '') : null;
51
48
 
@@ -75,7 +72,7 @@ async function installModules(req) {
75
72
  return responseObject;
76
73
  }
77
74
 
78
- function parseNPMStdErr(stderr) {
75
+ function parseNPMStdErr(stderr: string) {
79
76
  //npm returns errors inconsistently, on 6 it returns json, on 8 it returns json stringified inside of a larger string
80
77
  let startSearchString = '"error": {';
81
78
  let start = stderr.indexOf('"error": {');
@@ -92,7 +89,7 @@ function parseNPMStdErr(stderr) {
92
89
  * @param {Object} req
93
90
  * @returns {*}
94
91
  */
95
- function modulesValidator(req) {
92
+ function modulesValidator(req: any) {
96
93
  const funcSchema = Joi.object({
97
94
  projects: Joi.array().min(1).items(Joi.string()).required(),
98
95
  dry_run: Joi.boolean().default(false),
@@ -10,35 +10,37 @@
10
10
  * The requiredPermissions member contains the permissions needed for each operation. Any new operations added to
11
11
  * Harper need to have operations specified in here or they will never pass the permissions checks.
12
12
  * */
13
- const write = require('../dataLayer/insert.js');
14
- const search = require('../dataLayer/search.js');
15
- const schema = require('../dataLayer/schema.js');
16
- const schemaDescribe = require('../dataLayer/schemaDescribe.js');
17
- const delete_ = require('../dataLayer/delete.js');
18
- const readAuditLog = require('../dataLayer/readAuditLog.js');
19
- const getBackup = require('../dataLayer/getBackup.js');
20
- const user = require('../security/user.ts');
21
- const role = require('../security/role.js');
22
- const harperLogger = require('../utility/logging/harper_logger.js');
23
- const readLog = require('../utility/logging/readLog.js');
24
- const commonUtils = require('./common_utils.js');
25
- const restart = require('../bin/restart.js');
26
- const terms = require('./hdbTerms.ts');
27
- const { expandOperationsPerms } = require('./operationPermissions.ts');
28
- const permsTranslator = require('../security/permissionsTranslator.js');
29
- const { systemInformation } = require('../utility/environment/systemInformation.ts');
30
- const tokenAuthentication = require('../security/tokenAuthentication.ts');
31
- const auth = require('../security/auth.ts');
32
- const configUtils = require('../config/configUtils.js');
33
- const functionsOperations = require('../components/operations.js');
34
- const transactionLog = require('../utility/logging/transactionLog.js');
35
- const npmUtilities = require('./npmUtilities.js');
36
- const analytics = require('../resources/analytics/read.ts');
37
- const status = require('../server/status/index.ts');
38
- const PermissionResponseObject = require('../security/data_objects/PermissionResponseObject.js');
39
- const { handleHDBError, hdbErrors } = require('../utility/errors/hdbError.js');
40
- const { HDB_ERROR_MSGS, HTTP_STATUS_CODES } = hdbErrors;
41
- const regDeprecated = require('../resources/registrationDeprecated.ts');
13
+ import * as write from '../dataLayer/insert.ts';
14
+ import { HDB_ERROR_MSGS, HTTP_STATUS_CODES } from './errors/commonErrors.ts';
15
+ import * as search from '../dataLayer/search.ts';
16
+ import * as schema from '../dataLayer/schema.ts';
17
+ import * as schemaDescribe from '../dataLayer/schemaDescribe.ts';
18
+ import * as delete_ from '../dataLayer/delete.ts';
19
+ import readAuditLog from '../dataLayer/readAuditLog.ts';
20
+ import getBackup from '../dataLayer/getBackup.ts';
21
+ import * as user from '../security/user.ts';
22
+ import * as role from '../security/role.ts';
23
+ import harperLogger from '../utility/logging/harper_logger.ts';
24
+ import readLog from '../utility/logging/readLog.ts';
25
+ import * as commonUtils from './common_utils.ts';
26
+ import * as restart from '../bin/restart.ts';
27
+ import * as terms from './hdbTerms.ts';
28
+ import { expandOperationsPerms } from './operationPermissions.ts';
29
+ import * as permsTranslator from '../security/permissionsTranslator.js';
30
+ import { systemInformation } from '../utility/environment/systemInformation.ts';
31
+ import * as tokenAuthentication from '../security/tokenAuthentication.ts';
32
+ import * as auth from '../security/auth.ts';
33
+ import * as configUtils from '../config/configUtils.js';
34
+ import * as functionsOperations from '../components/operations.js';
35
+ import * as transactionLog from '../utility/logging/transactionLog.ts';
36
+ import * as npmUtilities from './npmUtilities.ts';
37
+ import * as analytics from '../resources/analytics/read.ts';
38
+ import * as status from '../server/status/index.ts';
39
+ import PermissionResponseObject from '../security/data_objects/PermissionResponseObject.ts';
40
+ import { handleHDBError, hdbErrors } from '../utility/errors/hdbError.ts';
41
+
42
+ import * as regDeprecated from '../resources/registrationDeprecated.ts';
43
+ import * as deploymentOperations from '../components/deploymentOperations.ts';
42
44
 
43
45
  const requiredPermissions = new Map();
44
46
  const DELETE_PERM = 'delete';
@@ -94,6 +96,9 @@ const DATA_EXPORT = {
94
96
  };
95
97
 
96
98
  class permission {
99
+ requires_su: boolean;
100
+ perms: any;
101
+ api_name: string;
97
102
  constructor(requiresSu, perms, apiName) {
98
103
  this.requires_su = requiresSu;
99
104
  this.perms = perms;
@@ -103,161 +108,196 @@ class permission {
103
108
  }
104
109
  }
105
110
 
106
- requiredPermissions.set(write.insert.name, new permission(false, [INSERT_PERM], terms.OPERATIONS_ENUM.INSERT));
107
- requiredPermissions.set(write.update.name, new permission(false, [UPDATE_PERM], terms.OPERATIONS_ENUM.UPDATE));
111
+ requiredPermissions.set(write.insert.name, new (permission as any)(false, [INSERT_PERM], terms.OPERATIONS_ENUM.INSERT));
112
+ requiredPermissions.set(write.update.name, new (permission as any)(false, [UPDATE_PERM], terms.OPERATIONS_ENUM.UPDATE));
108
113
  requiredPermissions.set(
109
114
  write.upsert.name,
110
- new permission(false, [INSERT_PERM, UPDATE_PERM], terms.OPERATIONS_ENUM.UPSERT)
115
+ new (permission as any)(false, [INSERT_PERM, UPDATE_PERM], terms.OPERATIONS_ENUM.UPSERT)
111
116
  );
112
117
  requiredPermissions.set(
113
118
  search.searchByConditions.name,
114
- new permission(false, [READ_PERM], terms.OPERATIONS_ENUM.SEARCH_BY_CONDITIONS)
119
+ new (permission as any)(false, [READ_PERM], terms.OPERATIONS_ENUM.SEARCH_BY_CONDITIONS)
115
120
  );
116
121
  requiredPermissions.set(
117
122
  search.searchByHash.name,
118
- new permission(false, [READ_PERM], terms.OPERATIONS_ENUM.SEARCH_BY_HASH)
123
+ new (permission as any)(false, [READ_PERM], terms.OPERATIONS_ENUM.SEARCH_BY_HASH)
119
124
  );
120
125
  requiredPermissions.set(
121
126
  search.searchByValue.name,
122
- new permission(false, [READ_PERM], terms.OPERATIONS_ENUM.SEARCH_BY_VALUE)
127
+ new (permission as any)(false, [READ_PERM], terms.OPERATIONS_ENUM.SEARCH_BY_VALUE)
123
128
  );
124
- requiredPermissions.set(search.search.name, new permission(false, [READ_PERM], terms.OPERATIONS_ENUM.SEARCH));
125
- requiredPermissions.set(schema.createSchema.name, new permission(true, [], terms.OPERATIONS_ENUM.CREATE_DATABASE));
126
- requiredPermissions.set(schema.createTable.name, new permission(true, [], terms.OPERATIONS_ENUM.CREATE_TABLE));
129
+ requiredPermissions.set(search.search.name, new (permission as any)(false, [READ_PERM], terms.OPERATIONS_ENUM.SEARCH));
130
+ requiredPermissions.set(
131
+ schema.createSchema.name,
132
+ new (permission as any)(true, [], terms.OPERATIONS_ENUM.CREATE_DATABASE)
133
+ );
134
+ requiredPermissions.set(schema.createTable.name, new (permission as any)(true, [], terms.OPERATIONS_ENUM.CREATE_TABLE));
127
135
  requiredPermissions.set(
128
136
  schema.createAttribute.name,
129
- new permission(false, [INSERT_PERM], terms.OPERATIONS_ENUM.CREATE_ATTRIBUTE)
137
+ new (permission as any)(false, [INSERT_PERM], terms.OPERATIONS_ENUM.CREATE_ATTRIBUTE)
138
+ );
139
+ requiredPermissions.set(schema.dropSchema.name, new (permission as any)(true, [], terms.OPERATIONS_ENUM.DROP_DATABASE));
140
+ requiredPermissions.set(schema.dropTable.name, new (permission as any)(true, [], terms.OPERATIONS_ENUM.DROP_TABLE));
141
+ requiredPermissions.set(
142
+ schema.dropAttribute.name,
143
+ new (permission as any)(true, [], terms.OPERATIONS_ENUM.DROP_ATTRIBUTE)
130
144
  );
131
- requiredPermissions.set(schema.dropSchema.name, new permission(true, [], terms.OPERATIONS_ENUM.DROP_DATABASE));
132
- requiredPermissions.set(schema.dropTable.name, new permission(true, [], terms.OPERATIONS_ENUM.DROP_TABLE));
133
- requiredPermissions.set(schema.dropAttribute.name, new permission(true, [], terms.OPERATIONS_ENUM.DROP_ATTRIBUTE));
134
145
  requiredPermissions.set(
135
146
  schemaDescribe.describeSchema.name,
136
- new permission(false, [READ_PERM], terms.OPERATIONS_ENUM.DESCRIBE_SCHEMA)
147
+ new (permission as any)(false, [READ_PERM], terms.OPERATIONS_ENUM.DESCRIBE_SCHEMA)
137
148
  );
138
149
  requiredPermissions.set(
139
150
  schemaDescribe.describeTable.name,
140
- new permission(false, [READ_PERM], terms.OPERATIONS_ENUM.DESCRIBE_TABLE)
141
- );
142
- requiredPermissions.set(delete_.deleteRecord.name, new permission(false, [DELETE_PERM], terms.OPERATIONS_ENUM.DELETE));
143
- requiredPermissions.set(user.addUser.name, new permission(true, [], terms.OPERATIONS_ENUM.ADD_USER));
144
- requiredPermissions.set(user.alterUser.name, new permission(true, [], terms.OPERATIONS_ENUM.ALTER_USER));
145
- requiredPermissions.set(user.dropUser.name, new permission(true, [], terms.OPERATIONS_ENUM.DROP_USER));
146
- requiredPermissions.set(user.listUsersExternal.name, new permission(true, [], terms.OPERATIONS_ENUM.LIST_USERS));
147
- requiredPermissions.set(role.listRoles.name, new permission(true, [], terms.OPERATIONS_ENUM.LIST_ROLES));
148
- requiredPermissions.set(role.addRole.name, new permission(true, [], terms.OPERATIONS_ENUM.ADD_ROLE));
149
- requiredPermissions.set(role.alterRole.name, new permission(true, [], terms.OPERATIONS_ENUM.ALTER_ROLE));
150
- requiredPermissions.set(role.dropRole.name, new permission(true, [], terms.OPERATIONS_ENUM.DROP_ROLE));
151
- requiredPermissions.set(readLog.name, new permission(true, [], terms.OPERATIONS_ENUM.READ_LOG));
152
- requiredPermissions.set(configUtils.setConfiguration.name, new permission(true, []));
153
- requiredPermissions.set(delete_.deleteFilesBefore.name, new permission(true, []));
154
- requiredPermissions.set(delete_.deleteAuditLogsBefore.name, new permission(true, []));
155
- requiredPermissions.set(restart.restart.name, new permission(true, [], terms.OPERATIONS_ENUM.RESTART));
156
- requiredPermissions.set(restart.restartService.name, new permission(true, []));
157
- requiredPermissions.set(readAuditLog.name, new permission(true, [], terms.OPERATIONS_ENUM.READ_AUDIT_LOG));
158
- requiredPermissions.set(getBackup.name, new permission(true, [READ_PERM]));
159
- requiredPermissions.set(schema.cleanupOrphanBlobs.name, new permission(true, []));
160
- requiredPermissions.set(systemInformation.name, new permission(true, [], terms.OPERATIONS_ENUM.SYSTEM_INFORMATION));
151
+ new (permission as any)(false, [READ_PERM], terms.OPERATIONS_ENUM.DESCRIBE_TABLE)
152
+ );
153
+ requiredPermissions.set(
154
+ delete_.deleteRecord.name,
155
+ new (permission as any)(false, [DELETE_PERM], terms.OPERATIONS_ENUM.DELETE)
156
+ );
157
+ requiredPermissions.set(user.addUser.name, new (permission as any)(true, [], terms.OPERATIONS_ENUM.ADD_USER));
158
+ requiredPermissions.set(user.alterUser.name, new (permission as any)(true, [], terms.OPERATIONS_ENUM.ALTER_USER));
159
+ requiredPermissions.set(user.dropUser.name, new (permission as any)(true, [], terms.OPERATIONS_ENUM.DROP_USER));
160
+ requiredPermissions.set(
161
+ user.listUsersExternal.name,
162
+ new (permission as any)(true, [], terms.OPERATIONS_ENUM.LIST_USERS)
163
+ );
164
+ requiredPermissions.set(role.listRoles.name, new (permission as any)(true, [], terms.OPERATIONS_ENUM.LIST_ROLES));
165
+ requiredPermissions.set(role.addRole.name, new (permission as any)(true, [], terms.OPERATIONS_ENUM.ADD_ROLE));
166
+ requiredPermissions.set(role.alterRole.name, new (permission as any)(true, [], terms.OPERATIONS_ENUM.ALTER_ROLE));
167
+ requiredPermissions.set(role.dropRole.name, new (permission as any)(true, [], terms.OPERATIONS_ENUM.DROP_ROLE));
168
+ requiredPermissions.set(readLog.name, new (permission as any)(true, [], terms.OPERATIONS_ENUM.READ_LOG));
169
+ requiredPermissions.set(configUtils.setConfiguration.name, new (permission as any)(true, []));
170
+ requiredPermissions.set(delete_.deleteFilesBefore.name, new (permission as any)(true, []));
171
+ requiredPermissions.set(delete_.deleteAuditLogsBefore.name, new (permission as any)(true, []));
172
+ requiredPermissions.set(restart.restart.name, new (permission as any)(true, [], terms.OPERATIONS_ENUM.RESTART));
173
+ requiredPermissions.set(restart.restartService.name, new (permission as any)(true, []));
174
+ requiredPermissions.set(readAuditLog.name, new (permission as any)(true, [], terms.OPERATIONS_ENUM.READ_AUDIT_LOG));
175
+ requiredPermissions.set(getBackup.name, new (permission as any)(true, [READ_PERM]));
176
+ requiredPermissions.set(schema.cleanupOrphanBlobs.name, new (permission as any)(true, []));
177
+ requiredPermissions.set(
178
+ systemInformation.name,
179
+ new (permission as any)(true, [], terms.OPERATIONS_ENUM.SYSTEM_INFORMATION)
180
+ );
161
181
  requiredPermissions.set(
162
182
  configUtils.getConfiguration.name,
163
- new permission(true, [], terms.OPERATIONS_ENUM.GET_CONFIGURATION)
183
+ new (permission as any)(true, [], terms.OPERATIONS_ENUM.GET_CONFIGURATION)
184
+ );
185
+ requiredPermissions.set(transactionLog.readTransactionLog.name, new (permission as any)(true, []));
186
+ requiredPermissions.set(transactionLog.deleteTransactionLogsBefore.name, new (permission as any)(true, []));
187
+ requiredPermissions.set(npmUtilities.installModules.name, new (permission as any)(true, []));
188
+ requiredPermissions.set(
189
+ analytics.getOp.name,
190
+ new (permission as any)(false, [READ_PERM], terms.OPERATIONS_ENUM.GET_ANALYTICS)
164
191
  );
165
- requiredPermissions.set(transactionLog.readTransactionLog.name, new permission(true, []));
166
- requiredPermissions.set(transactionLog.deleteTransactionLogsBefore.name, new permission(true, []));
167
- requiredPermissions.set(npmUtilities.installModules.name, new permission(true, []));
168
- requiredPermissions.set(analytics.getOp.name, new permission(false, [READ_PERM], terms.OPERATIONS_ENUM.GET_ANALYTICS));
169
192
  requiredPermissions.set(
170
193
  analytics.listMetricsOp.name,
171
- new permission(false, [READ_PERM], terms.OPERATIONS_ENUM.LIST_METRICS)
194
+ new (permission as any)(false, [READ_PERM], terms.OPERATIONS_ENUM.LIST_METRICS)
172
195
  );
173
196
  requiredPermissions.set(
174
197
  analytics.describeMetricOp.name,
175
- new permission(false, [READ_PERM], terms.OPERATIONS_ENUM.DESCRIBE_METRIC)
198
+ new (permission as any)(false, [READ_PERM], terms.OPERATIONS_ENUM.DESCRIBE_METRIC)
176
199
  );
177
- requiredPermissions.set(status.clear.name, new permission(true, []));
178
- requiredPermissions.set(status.get.name, new permission(true, []));
179
- requiredPermissions.set(status.set.name, new permission(true, []));
200
+ requiredPermissions.set(status.clear.name, new (permission as any)(true, []));
201
+ requiredPermissions.set(status.get.name, new (permission as any)(true, []));
202
+ requiredPermissions.set(status.set.name, new (permission as any)(true, []));
180
203
 
181
204
  //this operation must be available to all users so they can create authentication tokens and login
182
205
  requiredPermissions.set(
183
206
  tokenAuthentication.createTokens.name,
184
- new permission(false, [], terms.OPERATIONS_ENUM.CREATE_AUTHENTICATION_TOKENS)
207
+ new (permission as any)(false, [], terms.OPERATIONS_ENUM.CREATE_AUTHENTICATION_TOKENS)
185
208
  );
186
209
  requiredPermissions.set(
187
210
  tokenAuthentication.refreshOperationToken.name,
188
- new permission(false, [], terms.OPERATIONS_ENUM.REFRESH_OPERATION_TOKEN)
211
+ new (permission as any)(false, [], terms.OPERATIONS_ENUM.REFRESH_OPERATION_TOKEN)
189
212
  );
190
- requiredPermissions.set(auth.login.name, new permission(false, []));
191
- requiredPermissions.set(auth.logout.name, new permission(false, []));
213
+ requiredPermissions.set(auth.login.name, new (permission as any)(false, []));
214
+ requiredPermissions.set(auth.logout.name, new (permission as any)(false, []));
192
215
 
193
216
  //Operations specific to HDB Functions
194
217
  requiredPermissions.set(
195
218
  functionsOperations.customFunctionsStatus.name,
196
- new permission(true, [], terms.OPERATIONS_ENUM.CUSTOM_FUNCTIONS_STATUS)
219
+ new (permission as any)(true, [], terms.OPERATIONS_ENUM.CUSTOM_FUNCTIONS_STATUS)
197
220
  );
198
221
  requiredPermissions.set(
199
222
  functionsOperations.getCustomFunctions.name,
200
- new permission(true, [], terms.OPERATIONS_ENUM.GET_CUSTOM_FUNCTIONS)
223
+ new (permission as any)(true, [], terms.OPERATIONS_ENUM.GET_CUSTOM_FUNCTIONS)
201
224
  );
202
225
  requiredPermissions.set(
203
226
  functionsOperations.getComponents.name,
204
- new permission(true, [], terms.OPERATIONS_ENUM.GET_COMPONENTS)
227
+ new (permission as any)(true, [], terms.OPERATIONS_ENUM.GET_COMPONENTS)
205
228
  );
206
229
  requiredPermissions.set(
207
230
  functionsOperations.getComponentFile.name,
208
- new permission(true, [], terms.OPERATIONS_ENUM.GET_COMPONENT_FILE)
231
+ new (permission as any)(true, [], terms.OPERATIONS_ENUM.GET_COMPONENT_FILE)
209
232
  );
210
- requiredPermissions.set(functionsOperations.setComponentFile.name, new permission(true, []));
211
- requiredPermissions.set(functionsOperations.dropComponent.name, new permission(true, []));
233
+ requiredPermissions.set(functionsOperations.setComponentFile.name, new (permission as any)(true, []));
234
+ requiredPermissions.set(functionsOperations.dropComponent.name, new (permission as any)(true, []));
212
235
  requiredPermissions.set(
213
236
  functionsOperations.getCustomFunction.name,
214
- new permission(true, [], terms.OPERATIONS_ENUM.GET_CUSTOM_FUNCTION)
237
+ new (permission as any)(true, [], terms.OPERATIONS_ENUM.GET_CUSTOM_FUNCTION)
238
+ );
239
+ requiredPermissions.set(functionsOperations.setCustomFunction.name, new (permission as any)(true, []));
240
+ requiredPermissions.set(functionsOperations.dropCustomFunction.name, new (permission as any)(true, []));
241
+ requiredPermissions.set(functionsOperations.addComponent.name, new (permission as any)(true, []));
242
+ requiredPermissions.set(functionsOperations.dropCustomFunctionProject.name, new (permission as any)(true, []));
243
+ requiredPermissions.set(functionsOperations.packageComponent.name, new (permission as any)(true, []));
244
+ requiredPermissions.set(functionsOperations.deployComponent.name, new (permission as any)(true, []));
245
+ requiredPermissions.set(
246
+ deploymentOperations.handleListDeployments.name,
247
+ new (permission as any)(true, [], terms.OPERATIONS_ENUM.LIST_DEPLOYMENTS)
248
+ );
249
+ requiredPermissions.set(
250
+ deploymentOperations.handleGetDeployment.name,
251
+ new (permission as any)(true, [], terms.OPERATIONS_ENUM.GET_DEPLOYMENT)
215
252
  );
216
- requiredPermissions.set(functionsOperations.setCustomFunction.name, new permission(true, []));
217
- requiredPermissions.set(functionsOperations.dropCustomFunction.name, new permission(true, []));
218
- requiredPermissions.set(functionsOperations.addComponent.name, new permission(true, []));
219
- requiredPermissions.set(functionsOperations.dropCustomFunctionProject.name, new permission(true, []));
220
- requiredPermissions.set(functionsOperations.packageComponent.name, new permission(true, []));
221
- requiredPermissions.set(functionsOperations.deployComponent.name, new permission(true, []));
222
253
 
223
254
  //Below are functions that are currently open to all roles
224
- requiredPermissions.set(regDeprecated.getRegistrationInfo.name, new permission(false, []));
225
- requiredPermissions.set(user.userInfo.name, new permission(false, [], terms.OPERATIONS_ENUM.USER_INFO));
255
+ requiredPermissions.set(regDeprecated.getRegistrationInfo.name, new (permission as any)(false, []));
256
+ requiredPermissions.set(user.userInfo.name, new (permission as any)(false, [], terms.OPERATIONS_ENUM.USER_INFO));
226
257
  //DescribeAll will only return the schema values a user has permissions for
227
- requiredPermissions.set(schemaDescribe.describeAll.name, new permission(false, [], terms.OPERATIONS_ENUM.DESCRIBE_ALL));
258
+ requiredPermissions.set(
259
+ schemaDescribe.describeAll.name,
260
+ new (permission as any)(false, [], terms.OPERATIONS_ENUM.DESCRIBE_ALL)
261
+ );
228
262
 
229
263
  //Below function names are hardcoded b/c of circular dependency issues
230
- requiredPermissions.set(HANDLE_GET_JOB, new permission(false, [], terms.OPERATIONS_ENUM.GET_JOB));
231
- requiredPermissions.set(HANDLE_GET_JOB_BY_START_DATE, new permission(true, []));
232
- requiredPermissions.set(CATCHUP, new permission(true, []));
264
+ requiredPermissions.set(HANDLE_GET_JOB, new (permission as any)(false, [], terms.OPERATIONS_ENUM.GET_JOB));
265
+ requiredPermissions.set(HANDLE_GET_JOB_BY_START_DATE, new (permission as any)(true, []));
266
+ requiredPermissions.set(CATCHUP, new (permission as any)(true, []));
233
267
  requiredPermissions.set(
234
268
  BULK_OPS.CSV_DATA_LOAD,
235
- new permission(false, [INSERT_PERM, UPDATE_PERM], terms.OPERATIONS_ENUM.CSV_DATA_LOAD)
269
+ new (permission as any)(false, [INSERT_PERM, UPDATE_PERM], terms.OPERATIONS_ENUM.CSV_DATA_LOAD)
236
270
  );
237
271
  requiredPermissions.set(
238
272
  BULK_OPS.CSV_URL_LOAD,
239
- new permission(false, [INSERT_PERM, UPDATE_PERM], terms.OPERATIONS_ENUM.CSV_URL_LOAD)
273
+ new (permission as any)(false, [INSERT_PERM, UPDATE_PERM], terms.OPERATIONS_ENUM.CSV_URL_LOAD)
240
274
  );
241
275
  requiredPermissions.set(
242
276
  BULK_OPS.CSV_FILE_LOAD,
243
- new permission(false, [INSERT_PERM, UPDATE_PERM], terms.OPERATIONS_ENUM.CSV_FILE_LOAD)
277
+ new (permission as any)(false, [INSERT_PERM, UPDATE_PERM], terms.OPERATIONS_ENUM.CSV_FILE_LOAD)
244
278
  );
245
279
  requiredPermissions.set(
246
280
  BULK_OPS.IMPORT_FROM_S3,
247
- new permission(false, [INSERT_PERM, UPDATE_PERM], terms.OPERATIONS_ENUM.IMPORT_FROM_S3)
281
+ new (permission as any)(false, [INSERT_PERM, UPDATE_PERM], terms.OPERATIONS_ENUM.IMPORT_FROM_S3)
282
+ );
283
+ requiredPermissions.set(
284
+ DATA_EXPORT.EXPORT_TO_S3,
285
+ new (permission as any)(true, [], terms.OPERATIONS_ENUM.EXPORT_TO_S3)
286
+ );
287
+ requiredPermissions.set(
288
+ DATA_EXPORT.EXPORT_LOCAL,
289
+ new (permission as any)(true, [], terms.OPERATIONS_ENUM.EXPORT_LOCAL)
248
290
  );
249
- requiredPermissions.set(DATA_EXPORT.EXPORT_TO_S3, new permission(true, [], terms.OPERATIONS_ENUM.EXPORT_TO_S3));
250
- requiredPermissions.set(DATA_EXPORT.EXPORT_LOCAL, new permission(true, [], terms.OPERATIONS_ENUM.EXPORT_LOCAL));
251
291
 
252
292
  // SQL operations are distinct from operations above, so we need to store required perms for both.
253
- requiredPermissions.set(terms.VALID_SQL_OPS_ENUM.DELETE, new permission(false, [DELETE_PERM]));
254
- requiredPermissions.set(terms.VALID_SQL_OPS_ENUM.SELECT, new permission(false, [READ_PERM]));
255
- requiredPermissions.set(terms.VALID_SQL_OPS_ENUM.INSERT, new permission(false, [INSERT_PERM]));
256
- requiredPermissions.set(terms.VALID_SQL_OPS_ENUM.UPDATE, new permission(false, [UPDATE_PERM]));
293
+ requiredPermissions.set(terms.VALID_SQL_OPS_ENUM.DELETE, new (permission as any)(false, [DELETE_PERM]));
294
+ requiredPermissions.set(terms.VALID_SQL_OPS_ENUM.SELECT, new (permission as any)(false, [READ_PERM]));
295
+ requiredPermissions.set(terms.VALID_SQL_OPS_ENUM.INSERT, new (permission as any)(false, [INSERT_PERM]));
296
+ requiredPermissions.set(terms.VALID_SQL_OPS_ENUM.UPDATE, new (permission as any)(false, [UPDATE_PERM]));
257
297
 
258
298
  module.exports = {
259
299
  verifyPerms,
260
- verifyPermsAst,
300
+ verifyPermsAST,
261
301
  verifyBulkLoadAttributePerms,
262
302
  };
263
303
 
@@ -268,7 +308,7 @@ module.exports = {
268
308
  * @param operation - The operation specified in the call.
269
309
  * @returns {null | PermissionResponseObject} - null if permissions match, errors returned in the PermissionResponseObject
270
310
  */
271
- function verifyPermsAst(ast, userObject, operation) {
311
+ export function verifyPermsAST(ast, userObject, operation) {
272
312
  //TODO - update these validation checks to use validate.js
273
313
  if (commonUtils.isEmptyOrZeroLength(ast)) {
274
314
  harperLogger.info('verify_perms_ast has an empty user parameter');
@@ -283,7 +323,8 @@ function verifyPermsAst(ast, userObject, operation) {
283
323
  throw handleHDBError(new Error());
284
324
  }
285
325
  try {
286
- const bucket = require('../sqlTranslator/sql_statement_bucket.js');
326
+ const bucket =
327
+ require('../sqlTranslator/sql_statement_bucket').default || require('../sqlTranslator/sql_statement_bucket');
287
328
  const alasql = require('alasql');
288
329
 
289
330
  const permsResponse = new PermissionResponseObject();
@@ -294,7 +335,7 @@ function verifyPermsAst(ast, userObject, operation) {
294
335
  // Should not continue if there are no schemas defined and there are table columns defined.
295
336
  // This is defined so we can do calc selects like : SELECT ABS(-12)
296
337
  if ((!schemas || schemas.length === 0) && parsedAst.affected_attributes && parsedAst.affected_attributes.size > 0) {
297
- harperLogger.info(`No schemas defined in verifyPermsAst(), will not continue.`);
338
+ harperLogger.info(`No schemas defined in verifyPermsAST(), will not continue.`);
298
339
  throw handleHDBError(new Error());
299
340
  }
300
341
  // set to true if this operation affects a system table. Only su can read from system tables, but can't update/delete.
@@ -327,7 +368,7 @@ function verifyPermsAst(ast, userObject, operation) {
327
368
  }
328
369
  }
329
370
 
330
- let tablePermRestriction = hasPermissions(userObject, operation, schemaTableMap, permsResponse); //NOSONAR;
371
+ let tablePermRestriction = hasPermissions(userObject, operation, schemaTableMap, permsResponse, undefined); //NOSONAR;
331
372
  if (tablePermRestriction) {
332
373
  return tablePermRestriction;
333
374
  }
@@ -336,7 +377,15 @@ function verifyPermsAst(ast, userObject, operation) {
336
377
  for (let t = 0; t < tables.length; t++) {
337
378
  let attributes = parsedAst.getAttributesBySchemaTableName(schemaKey, tables[t]);
338
379
  const attribute_permissions = getAttributePermissions(userObject.role.permission, schemaKey, tables[t]);
339
- checkAttributePerms(attributes, attribute_permissions, operation, tables[t], schemaKey, permsResponse);
380
+ checkAttributePerms(
381
+ attributes,
382
+ attribute_permissions,
383
+ operation,
384
+ tables[t],
385
+ schemaKey,
386
+ permsResponse,
387
+ undefined
388
+ );
340
389
  }
341
390
  });
342
391
 
@@ -353,7 +402,7 @@ function verifyPermsAst(ast, userObject, operation) {
353
402
  * @param operation - The name of the operation specified in the request.
354
403
  * @returns { null | PermissionResponseObject } - null if permissions match, errors are consolidated into PermissionResponseObj.
355
404
  */
356
- function verifyPerms(requestJson, operation) {
405
+ export function verifyPerms(requestJson: any, operation: any, _options?: any) {
357
406
  if (
358
407
  requestJson === null ||
359
408
  operation === null ||
@@ -477,22 +526,22 @@ function verifyPerms(requestJson, operation) {
477
526
  if (requestJson.hdb_user?.role) requestJson.hdb_user.role.permission = fullRolePerms;
478
527
 
479
528
  if (op === DESCRIBE_SCHEMA_KEY || op === DESCRIBE_TABLE_KEY) {
480
- if (!fullRolePerms.super_user) {
529
+ if (!(fullRolePerms as any).super_user) {
481
530
  if (operationSchema === terms.SYSTEM_SCHEMA_NAME) {
482
531
  return permsResponse.handleUnauthorizedItem(HDB_ERROR_MSGS.SCHEMA_PERM_ERROR(operationSchema));
483
532
  }
484
533
 
485
534
  if (op === DESCRIBE_SCHEMA_KEY) {
486
- if (!fullRolePerms[operationSchema] || !fullRolePerms[operationSchema][DESCRIBE_PERM]) {
535
+ if (!(fullRolePerms as any)[operationSchema] || !(fullRolePerms as any)[operationSchema][DESCRIBE_PERM]) {
487
536
  return permsResponse.handleInvalidItem(HDB_ERROR_MSGS.SCHEMA_NOT_FOUND(operationSchema));
488
537
  }
489
538
  }
490
539
 
491
540
  if (
492
541
  op === DESCRIBE_TABLE_KEY &&
493
- (!fullRolePerms[operationSchema] ||
494
- !fullRolePerms[operationSchema].tables[table] ||
495
- !fullRolePerms[operationSchema].tables[table][DESCRIBE_PERM])
542
+ (!(fullRolePerms as any)[operationSchema] ||
543
+ !(fullRolePerms as any)[operationSchema].tables[table] ||
544
+ !(fullRolePerms as any)[operationSchema].tables[table][DESCRIBE_PERM])
496
545
  ) {
497
546
  return permsResponse.handleInvalidItem(HDB_ERROR_MSGS.TABLE_NOT_FOUND(operationSchema, table));
498
547
  }
@@ -513,7 +562,7 @@ function verifyPerms(requestJson, operation) {
513
562
  //we will convert the * to the specific attributes the user has READ permissions for via their role.
514
563
  if (!isSuperUser && requestJson.get_attributes && terms.SEARCH_WILDCARDS.includes(requestJson.get_attributes[0])) {
515
564
  let finalGetAttrs = [];
516
- const table_perms = fullRolePerms[operationSchema].tables[table];
565
+ const table_perms = (fullRolePerms as any)[operationSchema].tables[table];
517
566
 
518
567
  if (table_perms[terms.PERMS_CRUD_ENUM.READ]) {
519
568
  if (table_perms.attribute_permissions.length > 0) {
@@ -544,7 +593,7 @@ function verifyPerms(requestJson, operation) {
544
593
  * @param schemaTableMap - A map in the format [schemaKey, [tables]].
545
594
  * @returns {PermissionResponseObject | null} - null value if permissions match, PermissionResponseObject if not.
546
595
  */
547
- function hasPermissions(userObject, op, schemaTableMap, permsResponse, action) {
596
+ export function hasPermissions(userObject, op, schemaTableMap, permsResponse, action) {
548
597
  if (commonUtils.arrayHasEmptyValues([userObject, op, schemaTableMap])) {
549
598
  harperLogger.info(`hasPermissions has an invalid parameter`);
550
599
  throw handleHDBError(new Error());
@@ -650,7 +699,7 @@ function hasPermissions(userObject, op, schemaTableMap, permsResponse, action) {
650
699
  * @param permsResponse - PermissionResponseObject instance being used to track permissions issues to return in response, if necessary
651
700
  * @returns {} - this function does not return a value - it updates the permsResponse which is checked later
652
701
  */
653
- function checkAttributePerms(
702
+ export function checkAttributePerms(
654
703
  recordAttributes,
655
704
  roleAttributePermissions,
656
705
  operation,
@@ -792,7 +841,7 @@ function getRecordAttributes(json) {
792
841
  * @param table - The table specified.
793
842
  * @returns {Map} A Map of attribute permissions of the form [attribute_name, attributePermission];
794
843
  */
795
- function getAttributePermissions(rolePerms, operationSchema, table) {
844
+ export function getAttributePermissions(rolePerms, operationSchema, table) {
796
845
  let roleAttributePermissions = new Map();
797
846
  if (commonUtils.isEmpty(rolePerms)) {
798
847
  harperLogger.info(`no hdb_user specified in getAttributePermissions`);
@@ -818,7 +867,7 @@ function getAttributePermissions(rolePerms, operationSchema, table) {
818
867
  return roleAttributePermissions;
819
868
  }
820
869
 
821
- function verifyBulkLoadAttributePerms(
870
+ export function verifyBulkLoadAttributePerms(
822
871
  rolePerms,
823
872
  op,
824
873
  action,