@nshiab/simple-data-analysis-core 1.0.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1528) hide show
  1. package/README.md +166 -14
  2. package/esm/_dnt.polyfills.d.ts +7 -0
  3. package/esm/_dnt.polyfills.d.ts.map +1 -0
  4. package/esm/_dnt.polyfills.js +1 -0
  5. package/esm/class/SDAError.d.ts +63 -0
  6. package/esm/class/SDAError.d.ts.map +1 -0
  7. package/esm/class/SDAError.js +83 -0
  8. package/esm/class/Simple.d.ts +40 -22
  9. package/esm/class/Simple.d.ts.map +1 -1
  10. package/esm/class/Simple.js +33 -20
  11. package/esm/class/SimpleDB.d.ts +247 -103
  12. package/esm/class/SimpleDB.d.ts.map +1 -1
  13. package/esm/class/SimpleDB.js +483 -298
  14. package/esm/class/SimpleTable.d.ts +1804 -940
  15. package/esm/class/SimpleTable.d.ts.map +1 -1
  16. package/esm/class/SimpleTable.js +1946 -1825
  17. package/esm/helpers/assertColumnsExist.d.ts +16 -0
  18. package/esm/helpers/assertColumnsExist.d.ts.map +1 -0
  19. package/esm/helpers/assertColumnsExist.js +21 -0
  20. package/esm/helpers/assertNewColumns.d.ts +17 -0
  21. package/esm/helpers/assertNewColumns.d.ts.map +1 -0
  22. package/esm/helpers/assertNewColumns.js +22 -0
  23. package/esm/helpers/assertSameDatabase.d.ts +11 -0
  24. package/esm/helpers/assertSameDatabase.d.ts.map +1 -0
  25. package/esm/helpers/assertSameDatabase.js +13 -0
  26. package/esm/helpers/asyncOperationContext.d.ts +19 -0
  27. package/esm/helpers/asyncOperationContext.d.ts.map +1 -0
  28. package/esm/helpers/asyncOperationContext.js +38 -0
  29. package/esm/helpers/buildFuzzyMatchSql.d.ts +9 -0
  30. package/esm/helpers/buildFuzzyMatchSql.d.ts.map +1 -0
  31. package/esm/helpers/buildFuzzyMatchSql.js +17 -0
  32. package/esm/helpers/cacheDatabase.d.ts +5 -0
  33. package/esm/helpers/cacheDatabase.d.ts.map +1 -0
  34. package/esm/helpers/cacheDatabase.js +110 -0
  35. package/esm/helpers/cacheDiagnostics.d.ts +4 -0
  36. package/esm/helpers/cacheDiagnostics.d.ts.map +1 -0
  37. package/esm/helpers/cacheDiagnostics.js +21 -0
  38. package/esm/helpers/cacheTableDependencies.d.ts +19 -0
  39. package/esm/helpers/cacheTableDependencies.d.ts.map +1 -0
  40. package/esm/helpers/cacheTableDependencies.js +117 -0
  41. package/esm/helpers/cleanCache.js +1 -1
  42. package/esm/helpers/createDirectory.d.ts +13 -0
  43. package/esm/helpers/createDirectory.d.ts.map +1 -1
  44. package/esm/helpers/createDirectory.js +13 -0
  45. package/esm/helpers/ensureSpatial.d.ts +7 -0
  46. package/esm/helpers/ensureSpatial.d.ts.map +1 -0
  47. package/esm/helpers/ensureSpatial.js +17 -0
  48. package/esm/helpers/extractTypes.d.ts +1 -1
  49. package/esm/helpers/extractTypes.d.ts.map +1 -1
  50. package/esm/helpers/extractZipEntryToFile.d.ts +3 -0
  51. package/esm/helpers/extractZipEntryToFile.d.ts.map +1 -0
  52. package/esm/helpers/extractZipEntryToFile.js +226 -0
  53. package/esm/helpers/fileCache.d.ts +15 -0
  54. package/esm/helpers/fileCache.d.ts.map +1 -0
  55. package/esm/helpers/fileCache.js +128 -0
  56. package/esm/helpers/findGeoColumn.d.ts +13 -1
  57. package/esm/helpers/findGeoColumn.d.ts.map +1 -1
  58. package/esm/helpers/findGeoColumn.js +15 -17
  59. package/esm/helpers/findGeoColumnFromSchema.d.ts +20 -0
  60. package/esm/helpers/findGeoColumnFromSchema.d.ts.map +1 -0
  61. package/esm/helpers/findGeoColumnFromSchema.js +28 -0
  62. package/esm/helpers/flushAllTables.d.ts +23 -0
  63. package/esm/helpers/flushAllTables.d.ts.map +1 -0
  64. package/esm/helpers/flushAllTables.js +411 -0
  65. package/esm/helpers/formatMissingTables.d.ts +19 -0
  66. package/esm/helpers/formatMissingTables.d.ts.map +1 -0
  67. package/esm/helpers/formatMissingTables.js +29 -0
  68. package/esm/helpers/getCurrentDatabase.d.ts +3 -0
  69. package/esm/helpers/getCurrentDatabase.d.ts.map +1 -0
  70. package/esm/helpers/getCurrentDatabase.js +7 -0
  71. package/esm/helpers/getDbFileType.d.ts +2 -0
  72. package/esm/helpers/getDbFileType.d.ts.map +1 -0
  73. package/esm/helpers/getDbFileType.js +9 -0
  74. package/esm/helpers/getDbIndexes.d.ts +4 -0
  75. package/esm/helpers/getDbIndexes.d.ts.map +1 -0
  76. package/esm/helpers/getDbIndexes.js +4 -0
  77. package/esm/helpers/getStatExpression.d.ts +10 -0
  78. package/esm/helpers/getStatExpression.d.ts.map +1 -0
  79. package/esm/helpers/getStatExpression.js +75 -0
  80. package/esm/helpers/index.d.ts +3 -0
  81. package/esm/helpers/index.d.ts.map +1 -1
  82. package/esm/helpers/index.js +3 -0
  83. package/esm/helpers/indexDefinitions.d.ts +30 -0
  84. package/esm/helpers/indexDefinitions.d.ts.map +1 -0
  85. package/esm/helpers/indexDefinitions.js +7 -0
  86. package/esm/helpers/indexQueries.d.ts +3 -0
  87. package/esm/helpers/indexQueries.d.ts.map +1 -0
  88. package/esm/helpers/indexQueries.js +36 -0
  89. package/esm/helpers/keepNumericalColumns.d.ts.map +1 -1
  90. package/esm/helpers/keepNumericalColumns.js +4 -5
  91. package/esm/helpers/loadOsmFile.d.ts +10 -0
  92. package/esm/helpers/loadOsmFile.d.ts.map +1 -0
  93. package/esm/helpers/loadOsmFile.js +28 -0
  94. package/esm/helpers/logData.d.ts +2 -2
  95. package/esm/helpers/logData.d.ts.map +1 -1
  96. package/esm/helpers/logData.js +6 -6
  97. package/esm/helpers/mergeOptions.d.ts +47 -15
  98. package/esm/helpers/mergeOptions.d.ts.map +1 -1
  99. package/esm/helpers/mergeOptions.js +35 -5
  100. package/esm/helpers/observeQuery.d.ts +9 -0
  101. package/esm/helpers/observeQuery.d.ts.map +1 -0
  102. package/esm/helpers/observeQuery.js +49 -0
  103. package/esm/helpers/osmCache.d.ts +16 -0
  104. package/esm/helpers/osmCache.d.ts.map +1 -0
  105. package/esm/helpers/osmCache.js +41 -0
  106. package/esm/helpers/osmFiles.d.ts +9 -0
  107. package/esm/helpers/osmFiles.d.ts.map +1 -0
  108. package/esm/helpers/osmFiles.js +52 -0
  109. package/esm/helpers/parseDuckDBType.d.ts +1 -1
  110. package/esm/helpers/parseValue.d.ts +16 -0
  111. package/esm/helpers/parseValue.d.ts.map +1 -1
  112. package/esm/helpers/parseValue.js +17 -1
  113. package/esm/helpers/pendingOps.d.ts +151 -0
  114. package/esm/helpers/pendingOps.d.ts.map +1 -0
  115. package/esm/helpers/pendingOps.js +1 -0
  116. package/esm/helpers/prepareDbExtensions.d.ts +4 -0
  117. package/esm/helpers/prepareDbExtensions.d.ts.map +1 -0
  118. package/esm/helpers/prepareDbExtensions.js +22 -0
  119. package/esm/helpers/prepareValueFilters.d.ts +11 -0
  120. package/esm/helpers/prepareValueFilters.d.ts.map +1 -0
  121. package/esm/helpers/prepareValueFilters.js +12 -0
  122. package/esm/helpers/queryDB.d.ts +43 -8
  123. package/esm/helpers/queryDB.d.ts.map +1 -1
  124. package/esm/helpers/queryDB.js +55 -36
  125. package/esm/helpers/queryDbFile.d.ts +8 -0
  126. package/esm/helpers/queryDbFile.d.ts.map +1 -0
  127. package/esm/helpers/queryDbFile.js +12 -0
  128. package/esm/helpers/queueAsyncBarrier.d.ts +47 -0
  129. package/esm/helpers/queueAsyncBarrier.d.ts.map +1 -0
  130. package/esm/helpers/queueAsyncBarrier.js +45 -0
  131. package/esm/helpers/queueOp.d.ts +18 -0
  132. package/esm/helpers/queueOp.d.ts.map +1 -0
  133. package/esm/helpers/queueOp.js +70 -0
  134. package/esm/helpers/quoteIdentifier.d.ts +16 -0
  135. package/esm/helpers/quoteIdentifier.d.ts.map +1 -0
  136. package/esm/helpers/quoteIdentifier.js +17 -0
  137. package/esm/helpers/quoteQualifiedIdentifier.d.ts +18 -0
  138. package/esm/helpers/quoteQualifiedIdentifier.d.ts.map +1 -0
  139. package/esm/helpers/quoteQualifiedIdentifier.js +20 -0
  140. package/esm/helpers/readDbMetadata.d.ts +5 -0
  141. package/esm/helpers/readDbMetadata.d.ts.map +1 -0
  142. package/esm/helpers/readDbMetadata.js +55 -0
  143. package/esm/helpers/removeColumnsNow.d.ts +8 -0
  144. package/esm/helpers/removeColumnsNow.d.ts.map +1 -0
  145. package/esm/helpers/removeColumnsNow.js +15 -0
  146. package/esm/helpers/resolveOutputTable.d.ts +9 -0
  147. package/esm/helpers/resolveOutputTable.d.ts.map +1 -0
  148. package/esm/helpers/resolveOutputTable.js +14 -0
  149. package/esm/helpers/runQuery.d.ts +11 -8
  150. package/esm/helpers/runQuery.d.ts.map +1 -1
  151. package/esm/helpers/runQuery.js +118 -15
  152. package/esm/helpers/serializeCacheInputs.d.ts +8 -0
  153. package/esm/helpers/serializeCacheInputs.d.ts.map +1 -0
  154. package/esm/helpers/serializeCacheInputs.js +113 -0
  155. package/esm/helpers/setDbProps.d.ts +4 -1
  156. package/esm/helpers/setDbProps.d.ts.map +1 -1
  157. package/esm/helpers/setDbProps.js +17 -15
  158. package/esm/helpers/statCanCache.d.ts +6 -0
  159. package/esm/helpers/statCanCache.d.ts.map +1 -0
  160. package/esm/helpers/statCanCache.js +38 -0
  161. package/esm/helpers/stringToArray.d.ts +14 -0
  162. package/esm/helpers/stringToArray.d.ts.map +1 -1
  163. package/esm/helpers/stringToArray.js +15 -1
  164. package/esm/helpers/tableGeneration.d.ts +18 -0
  165. package/esm/helpers/tableGeneration.d.ts.map +1 -0
  166. package/esm/helpers/tableGeneration.js +29 -0
  167. package/esm/helpers/tableRegistry.d.ts +9 -0
  168. package/esm/helpers/tableRegistry.d.ts.map +1 -0
  169. package/esm/helpers/tableRegistry.js +46 -0
  170. package/esm/helpers/toDuckDBValue.d.ts +4 -0
  171. package/esm/helpers/toDuckDBValue.d.ts.map +1 -0
  172. package/esm/helpers/toDuckDBValue.js +15 -0
  173. package/esm/helpers/unifyColumns.d.ts +5 -0
  174. package/esm/helpers/unifyColumns.d.ts.map +1 -1
  175. package/esm/helpers/unifyColumns.js +20 -4
  176. package/esm/helpers/validateNumericalAnalysis.d.ts +25 -0
  177. package/esm/helpers/validateNumericalAnalysis.d.ts.map +1 -0
  178. package/esm/helpers/validateNumericalAnalysis.js +49 -0
  179. package/esm/helpers/writeDbMetadata.d.ts +4 -0
  180. package/esm/helpers/writeDbMetadata.d.ts.map +1 -0
  181. package/esm/helpers/writeDbMetadata.js +9 -0
  182. package/esm/helpers/writeGeoData.d.ts.map +1 -1
  183. package/esm/helpers/writeGeoData.js +128 -41
  184. package/esm/helpers/writeZip.d.ts +15 -0
  185. package/esm/helpers/writeZip.d.ts.map +1 -0
  186. package/esm/helpers/writeZip.js +257 -0
  187. package/esm/index.d.ts +8 -4
  188. package/esm/index.d.ts.map +1 -1
  189. package/esm/index.js +8 -4
  190. package/esm/methods/accumulate.d.ts +5 -0
  191. package/esm/methods/accumulate.d.ts.map +1 -0
  192. package/esm/methods/accumulate.js +37 -0
  193. package/esm/methods/addBoundingBox.d.ts +6 -0
  194. package/esm/methods/addBoundingBox.d.ts.map +1 -0
  195. package/esm/methods/addBoundingBox.js +26 -0
  196. package/esm/methods/addColumn.d.ts +3 -0
  197. package/esm/methods/addColumn.d.ts.map +1 -0
  198. package/esm/methods/addColumn.js +24 -0
  199. package/esm/methods/addGeoClosedStatus.d.ts +5 -0
  200. package/esm/methods/addGeoClosedStatus.d.ts.map +1 -0
  201. package/esm/methods/addGeoClosedStatus.js +21 -0
  202. package/esm/methods/addGeoType.d.ts +5 -0
  203. package/esm/methods/addGeoType.d.ts.map +1 -0
  204. package/esm/methods/addGeoType.js +21 -0
  205. package/esm/methods/addGeoValidity.d.ts +5 -0
  206. package/esm/methods/addGeoValidity.d.ts.map +1 -0
  207. package/esm/methods/addGeoValidity.js +21 -0
  208. package/esm/methods/addRowNumber.d.ts +5 -0
  209. package/esm/methods/addRowNumber.d.ts.map +1 -0
  210. package/esm/methods/addRowNumber.js +26 -0
  211. package/esm/methods/addSummaryRows.d.ts +14 -0
  212. package/esm/methods/addSummaryRows.d.ts.map +1 -0
  213. package/esm/methods/addSummaryRows.js +122 -0
  214. package/esm/methods/addVertexCount.d.ts +5 -0
  215. package/esm/methods/addVertexCount.d.ts.map +1 -0
  216. package/esm/methods/addVertexCount.js +21 -0
  217. package/esm/methods/aggregateGeo.d.ts +7 -0
  218. package/esm/methods/aggregateGeo.d.ts.map +1 -0
  219. package/esm/methods/aggregateGeo.js +69 -0
  220. package/esm/methods/area.d.ts +7 -0
  221. package/esm/methods/area.d.ts.map +1 -0
  222. package/esm/methods/area.js +25 -0
  223. package/esm/methods/bins.d.ts +5 -0
  224. package/esm/methods/bins.d.ts.map +1 -0
  225. package/esm/methods/bins.js +87 -0
  226. package/esm/methods/bm25.d.ts +2 -2
  227. package/esm/methods/bm25.d.ts.map +1 -1
  228. package/esm/methods/bm25.js +28 -13
  229. package/esm/methods/buffer.d.ts +5 -0
  230. package/esm/methods/buffer.d.ts.map +1 -0
  231. package/esm/methods/buffer.js +24 -0
  232. package/esm/methods/cache.d.ts +2 -1
  233. package/esm/methods/cache.d.ts.map +1 -1
  234. package/esm/methods/cache.js +228 -71
  235. package/esm/methods/capitalize.d.ts +3 -0
  236. package/esm/methods/capitalize.d.ts.map +1 -0
  237. package/esm/methods/capitalize.js +15 -0
  238. package/esm/methods/centroid.d.ts +5 -0
  239. package/esm/methods/centroid.d.ts.map +1 -0
  240. package/esm/methods/centroid.js +24 -0
  241. package/esm/methods/clone.d.ts +9 -0
  242. package/esm/methods/clone.d.ts.map +1 -0
  243. package/esm/methods/clone.js +35 -0
  244. package/esm/methods/cloneColumn.d.ts +2 -3
  245. package/esm/methods/cloneColumn.d.ts.map +1 -1
  246. package/esm/methods/cloneColumn.js +17 -12
  247. package/esm/methods/cloneColumnWithOffset.d.ts +6 -0
  248. package/esm/methods/cloneColumnWithOffset.d.ts.map +1 -0
  249. package/esm/methods/cloneColumnWithOffset.js +35 -0
  250. package/esm/methods/columnProportions.d.ts +6 -0
  251. package/esm/methods/columnProportions.d.ts.map +1 -0
  252. package/esm/methods/columnProportions.js +23 -0
  253. package/esm/methods/concatenate.d.ts +5 -0
  254. package/esm/methods/concatenate.d.ts.map +1 -0
  255. package/esm/methods/concatenate.js +25 -0
  256. package/esm/methods/convert.d.ts +13 -0
  257. package/esm/methods/convert.d.ts.map +1 -0
  258. package/esm/methods/convert.js +112 -0
  259. package/esm/methods/correlations.d.ts +3 -3
  260. package/esm/methods/correlations.d.ts.map +1 -1
  261. package/esm/methods/correlations.js +70 -24
  262. package/esm/methods/coveredBy.d.ts +3 -0
  263. package/esm/methods/coveredBy.d.ts.map +1 -0
  264. package/esm/methods/coveredBy.js +16 -0
  265. package/esm/methods/createFtsIndex.d.ts +15 -2
  266. package/esm/methods/createFtsIndex.d.ts.map +1 -1
  267. package/esm/methods/createFtsIndex.js +52 -13
  268. package/esm/methods/createPoints.d.ts +5 -0
  269. package/esm/methods/createPoints.d.ts.map +1 -0
  270. package/esm/methods/createPoints.js +23 -0
  271. package/esm/methods/createVssIndex.d.ts +1 -1
  272. package/esm/methods/createVssIndex.d.ts.map +1 -1
  273. package/esm/methods/createVssIndex.js +34 -13
  274. package/esm/methods/crossJoin.d.ts +5 -0
  275. package/esm/methods/crossJoin.d.ts.map +1 -0
  276. package/esm/methods/crossJoin.js +35 -0
  277. package/esm/methods/difference.d.ts +3 -0
  278. package/esm/methods/difference.d.ts.map +1 -0
  279. package/esm/methods/difference.js +19 -0
  280. package/esm/methods/distance.d.ts +7 -0
  281. package/esm/methods/distance.d.ts.map +1 -0
  282. package/esm/methods/distance.js +48 -0
  283. package/esm/methods/extractDatePart.d.ts +7 -0
  284. package/esm/methods/extractDatePart.d.ts.map +1 -0
  285. package/esm/methods/extractDatePart.js +38 -0
  286. package/esm/methods/extractLatLon.d.ts +3 -0
  287. package/esm/methods/extractLatLon.d.ts.map +1 -0
  288. package/esm/methods/extractLatLon.js +16 -0
  289. package/esm/methods/fill.d.ts +2 -2
  290. package/esm/methods/fill.d.ts.map +1 -1
  291. package/esm/methods/fill.js +41 -44
  292. package/esm/methods/fillHoles.d.ts +3 -0
  293. package/esm/methods/fillHoles.d.ts.map +1 -0
  294. package/esm/methods/fillHoles.js +19 -0
  295. package/esm/methods/filter.d.ts +3 -0
  296. package/esm/methods/filter.d.ts.map +1 -0
  297. package/esm/methods/filter.js +14 -0
  298. package/esm/methods/firstChars.d.ts +3 -0
  299. package/esm/methods/firstChars.d.ts.map +1 -0
  300. package/esm/methods/firstChars.js +11 -0
  301. package/esm/methods/fixGeo.d.ts +3 -0
  302. package/esm/methods/fixGeo.d.ts.map +1 -0
  303. package/esm/methods/fixGeo.js +22 -0
  304. package/esm/methods/flipCoordinates.d.ts +3 -0
  305. package/esm/methods/flipCoordinates.d.ts.map +1 -0
  306. package/esm/methods/flipCoordinates.js +22 -0
  307. package/esm/methods/fuzzyClean.d.ts +3 -3
  308. package/esm/methods/fuzzyClean.d.ts.map +1 -1
  309. package/esm/methods/fuzzyClean.js +55 -55
  310. package/esm/methods/fuzzyJoin.d.ts +2 -2
  311. package/esm/methods/fuzzyJoin.d.ts.map +1 -1
  312. package/esm/methods/fuzzyJoin.js +60 -19
  313. package/esm/methods/getBottom.d.ts +1 -1
  314. package/esm/methods/getBottom.d.ts.map +1 -1
  315. package/esm/methods/getBottom.js +4 -3
  316. package/esm/methods/getBoundingBox.d.ts +3 -0
  317. package/esm/methods/getBoundingBox.d.ts.map +1 -0
  318. package/esm/methods/getBoundingBox.js +19 -0
  319. package/esm/methods/getCharacterCount.d.ts +3 -0
  320. package/esm/methods/getCharacterCount.d.ts.map +1 -0
  321. package/esm/methods/getCharacterCount.js +17 -0
  322. package/esm/methods/getColumns.d.ts.map +1 -1
  323. package/esm/methods/getColumns.js +4 -3
  324. package/esm/methods/getData.d.ts +9 -0
  325. package/esm/methods/getData.d.ts.map +1 -0
  326. package/esm/methods/getData.js +23 -0
  327. package/esm/methods/getDescription.d.ts.map +1 -1
  328. package/esm/methods/getDescription.js +15 -10
  329. package/esm/methods/getFirstRow.d.ts +1 -1
  330. package/esm/methods/getFirstRow.d.ts.map +1 -1
  331. package/esm/methods/getFirstRow.js +5 -4
  332. package/esm/methods/getGeoData.d.ts +1 -1
  333. package/esm/methods/getGeoData.d.ts.map +1 -1
  334. package/esm/methods/getGeoData.js +5 -3
  335. package/esm/methods/getHash.d.ts +3 -0
  336. package/esm/methods/getHash.d.ts.map +1 -0
  337. package/esm/methods/getHash.js +39 -0
  338. package/esm/methods/getLastRow.d.ts +2 -2
  339. package/esm/methods/getLastRow.d.ts.map +1 -1
  340. package/esm/methods/getLastRow.js +7 -3
  341. package/esm/methods/getMax.d.ts +1 -1
  342. package/esm/methods/getMax.d.ts.map +1 -1
  343. package/esm/methods/getMax.js +10 -10
  344. package/esm/methods/getMean.d.ts.map +1 -1
  345. package/esm/methods/getMean.js +7 -4
  346. package/esm/methods/getMedian.d.ts.map +1 -1
  347. package/esm/methods/getMedian.js +7 -4
  348. package/esm/methods/getMin.d.ts +1 -1
  349. package/esm/methods/getMin.d.ts.map +1 -1
  350. package/esm/methods/getMin.js +10 -10
  351. package/esm/methods/getQuantile.d.ts.map +1 -1
  352. package/esm/methods/getQuantile.js +7 -4
  353. package/esm/methods/getRowCount.d.ts +5 -0
  354. package/esm/methods/getRowCount.d.ts.map +1 -0
  355. package/esm/methods/getRowCount.js +16 -0
  356. package/esm/methods/getSchema.d.ts +5 -0
  357. package/esm/methods/getSchema.d.ts.map +1 -0
  358. package/esm/methods/getSchema.js +12 -0
  359. package/esm/methods/getSkew.d.ts.map +1 -1
  360. package/esm/methods/getSkew.js +7 -4
  361. package/esm/methods/getStdDev.d.ts.map +1 -1
  362. package/esm/methods/getStdDev.js +7 -4
  363. package/esm/methods/getSum.d.ts.map +1 -1
  364. package/esm/methods/getSum.js +6 -3
  365. package/esm/methods/getTableNames.js +2 -2
  366. package/esm/methods/getTop.d.ts +1 -1
  367. package/esm/methods/getTop.d.ts.map +1 -1
  368. package/esm/methods/getTop.js +3 -2
  369. package/esm/methods/getTypes.d.ts.map +1 -1
  370. package/esm/methods/getTypes.js +3 -2
  371. package/esm/methods/getUniques.d.ts +1 -1
  372. package/esm/methods/getUniques.d.ts.map +1 -1
  373. package/esm/methods/getUniques.js +6 -3
  374. package/esm/methods/getValues.d.ts +1 -1
  375. package/esm/methods/getValues.d.ts.map +1 -1
  376. package/esm/methods/getValues.js +5 -3
  377. package/esm/methods/getVariance.d.ts +5 -0
  378. package/esm/methods/getVariance.d.ts.map +1 -0
  379. package/esm/methods/getVariance.js +20 -0
  380. package/esm/methods/indexValues.d.ts +27 -0
  381. package/esm/methods/indexValues.d.ts.map +1 -0
  382. package/esm/methods/indexValues.js +281 -0
  383. package/esm/methods/insertRows.d.ts +5 -0
  384. package/esm/methods/insertRows.d.ts.map +1 -0
  385. package/esm/methods/insertRows.js +41 -0
  386. package/esm/methods/insertTables.d.ts +5 -0
  387. package/esm/methods/insertTables.d.ts.map +1 -0
  388. package/esm/methods/insertTables.js +99 -0
  389. package/esm/methods/intersection.d.ts +3 -0
  390. package/esm/methods/intersection.d.ts.map +1 -0
  391. package/esm/methods/intersection.js +19 -0
  392. package/esm/methods/intersects.d.ts +3 -0
  393. package/esm/methods/intersects.d.ts.map +1 -0
  394. package/esm/methods/intersects.js +16 -0
  395. package/esm/methods/join.d.ts +2 -2
  396. package/esm/methods/join.d.ts.map +1 -1
  397. package/esm/methods/join.js +77 -28
  398. package/esm/methods/joinGeo.d.ts +6 -4
  399. package/esm/methods/joinGeo.d.ts.map +1 -1
  400. package/esm/methods/joinGeo.js +127 -44
  401. package/esm/methods/keepValues.d.ts +5 -0
  402. package/esm/methods/keepValues.d.ts.map +1 -0
  403. package/esm/methods/keepValues.js +35 -0
  404. package/esm/methods/lastChars.d.ts +3 -0
  405. package/esm/methods/lastChars.d.ts.map +1 -0
  406. package/esm/methods/lastChars.js +11 -0
  407. package/esm/methods/length.d.ts +7 -0
  408. package/esm/methods/length.d.ts.map +1 -0
  409. package/esm/methods/length.js +25 -0
  410. package/esm/methods/linearRegressions.d.ts +3 -3
  411. package/esm/methods/linearRegressions.d.ts.map +1 -1
  412. package/esm/methods/linearRegressions.js +78 -24
  413. package/esm/methods/linesToPolygons.d.ts +3 -0
  414. package/esm/methods/linesToPolygons.d.ts.map +1 -0
  415. package/esm/methods/linesToPolygons.js +17 -0
  416. package/esm/methods/loadArray.d.ts +14 -2
  417. package/esm/methods/loadArray.d.ts.map +1 -1
  418. package/esm/methods/loadArray.js +52 -32
  419. package/esm/methods/loadDB.d.ts +3 -0
  420. package/esm/methods/loadDB.d.ts.map +1 -0
  421. package/esm/methods/loadDB.js +70 -0
  422. package/esm/methods/loadData.d.ts +52 -0
  423. package/esm/methods/loadData.d.ts.map +1 -0
  424. package/esm/methods/loadData.js +148 -0
  425. package/esm/methods/loadGeoData.d.ts +9 -0
  426. package/esm/methods/loadGeoData.d.ts.map +1 -0
  427. package/esm/methods/loadGeoData.js +104 -0
  428. package/esm/methods/loadOSM.d.ts +17 -0
  429. package/esm/methods/loadOSM.d.ts.map +1 -0
  430. package/esm/methods/loadOSM.js +194 -0
  431. package/esm/methods/loadSample.d.ts +1 -1
  432. package/esm/methods/loadSample.d.ts.map +1 -1
  433. package/esm/methods/loadSample.js +5 -4
  434. package/esm/methods/loadStatCanData.d.ts +10 -0
  435. package/esm/methods/loadStatCanData.d.ts.map +1 -0
  436. package/esm/methods/loadStatCanData.js +130 -0
  437. package/esm/methods/longer.d.ts +3 -0
  438. package/esm/methods/longer.d.ts.map +1 -0
  439. package/esm/methods/longer.js +23 -0
  440. package/esm/methods/lower.d.ts +3 -0
  441. package/esm/methods/lower.d.ts.map +1 -0
  442. package/esm/methods/lower.js +14 -0
  443. package/esm/methods/nest.d.ts +3 -0
  444. package/esm/methods/nest.d.ts.map +1 -0
  445. package/esm/methods/nest.js +23 -0
  446. package/esm/methods/normalize.d.ts +7 -0
  447. package/esm/methods/normalize.d.ts.map +1 -0
  448. package/esm/methods/normalize.js +41 -0
  449. package/esm/methods/normalizeString.d.ts +1 -1
  450. package/esm/methods/normalizeString.d.ts.map +1 -1
  451. package/esm/methods/normalizeString.js +15 -18
  452. package/esm/methods/outliersIQR.d.ts +5 -0
  453. package/esm/methods/outliersIQR.d.ts.map +1 -0
  454. package/esm/methods/outliersIQR.js +37 -0
  455. package/esm/methods/pad.d.ts +6 -0
  456. package/esm/methods/pad.d.ts.map +1 -0
  457. package/esm/methods/pad.js +55 -0
  458. package/esm/methods/perimeter.d.ts +7 -0
  459. package/esm/methods/perimeter.d.ts.map +1 -0
  460. package/esm/methods/perimeter.js +25 -0
  461. package/esm/methods/quantiles.d.ts +5 -0
  462. package/esm/methods/quantiles.d.ts.map +1 -0
  463. package/esm/methods/quantiles.js +22 -0
  464. package/esm/methods/randomPoint.d.ts +6 -0
  465. package/esm/methods/randomPoint.d.ts.map +1 -0
  466. package/esm/methods/randomPoint.js +105 -0
  467. package/esm/methods/ranks.d.ts +7 -0
  468. package/esm/methods/ranks.d.ts.map +1 -0
  469. package/esm/methods/ranks.js +22 -0
  470. package/esm/methods/reducePrecision.d.ts +5 -0
  471. package/esm/methods/reducePrecision.d.ts.map +1 -0
  472. package/esm/methods/reducePrecision.js +24 -0
  473. package/esm/methods/removeColumns.d.ts +3 -0
  474. package/esm/methods/removeColumns.d.ts.map +1 -0
  475. package/esm/methods/removeColumns.js +13 -0
  476. package/esm/methods/removeDuplicates.d.ts +5 -0
  477. package/esm/methods/removeDuplicates.d.ts.map +1 -0
  478. package/esm/methods/removeDuplicates.js +17 -0
  479. package/esm/methods/removeMissing.d.ts +1 -1
  480. package/esm/methods/removeMissing.d.ts.map +1 -1
  481. package/esm/methods/removeMissing.js +70 -11
  482. package/esm/methods/removeRows.d.ts +3 -0
  483. package/esm/methods/removeRows.d.ts.map +1 -0
  484. package/esm/methods/removeRows.js +14 -0
  485. package/esm/methods/removeTable.d.ts +3 -0
  486. package/esm/methods/removeTable.d.ts.map +1 -0
  487. package/esm/methods/removeTable.js +12 -0
  488. package/esm/methods/removeTables.d.ts +4 -0
  489. package/esm/methods/removeTables.d.ts.map +1 -0
  490. package/esm/methods/removeTables.js +21 -0
  491. package/esm/methods/removeValues.d.ts +5 -0
  492. package/esm/methods/removeValues.d.ts.map +1 -0
  493. package/esm/methods/removeValues.js +35 -0
  494. package/esm/methods/renameColumns.d.ts +7 -0
  495. package/esm/methods/renameColumns.d.ts.map +1 -0
  496. package/esm/methods/renameColumns.js +27 -0
  497. package/esm/methods/renameTable.d.ts +3 -0
  498. package/esm/methods/renameTable.d.ts.map +1 -0
  499. package/esm/methods/renameTable.js +12 -0
  500. package/esm/methods/repeatRows.d.ts +5 -0
  501. package/esm/methods/repeatRows.d.ts.map +1 -0
  502. package/esm/methods/repeatRows.js +19 -0
  503. package/esm/methods/replace.d.ts +8 -0
  504. package/esm/methods/replace.d.ts.map +1 -0
  505. package/esm/methods/replace.js +69 -0
  506. package/esm/methods/replaceNulls.d.ts +3 -0
  507. package/esm/methods/replaceNulls.d.ts.map +1 -0
  508. package/esm/methods/replaceNulls.js +36 -0
  509. package/esm/methods/reproject.d.ts +5 -0
  510. package/esm/methods/reproject.d.ts.map +1 -0
  511. package/esm/methods/reproject.js +21 -0
  512. package/esm/methods/rolling.d.ts +6 -0
  513. package/esm/methods/rolling.d.ts.map +1 -0
  514. package/esm/methods/rolling.js +42 -0
  515. package/esm/methods/round.d.ts +6 -0
  516. package/esm/methods/round.d.ts.map +1 -0
  517. package/esm/methods/round.js +22 -0
  518. package/esm/methods/rowProportions.d.ts +6 -0
  519. package/esm/methods/rowProportions.d.ts.map +1 -0
  520. package/esm/methods/rowProportions.js +30 -0
  521. package/esm/methods/rowRanks.d.ts +9 -0
  522. package/esm/methods/rowRanks.d.ts.map +1 -0
  523. package/esm/methods/rowRanks.js +113 -0
  524. package/esm/methods/rowToText.d.ts +3 -0
  525. package/esm/methods/rowToText.d.ts.map +1 -0
  526. package/esm/methods/rowToText.js +27 -0
  527. package/esm/methods/sample.d.ts +5 -0
  528. package/esm/methods/sample.d.ts.map +1 -0
  529. package/esm/methods/sample.js +16 -0
  530. package/esm/methods/selectColumns.d.ts +3 -0
  531. package/esm/methods/selectColumns.d.ts.map +1 -0
  532. package/esm/methods/selectColumns.js +19 -0
  533. package/esm/methods/selectRows.d.ts +6 -0
  534. package/esm/methods/selectRows.d.ts.map +1 -0
  535. package/esm/methods/selectRows.js +34 -0
  536. package/esm/methods/selectTables.d.ts +4 -0
  537. package/esm/methods/selectTables.d.ts.map +1 -0
  538. package/esm/methods/selectTables.js +25 -0
  539. package/esm/methods/setTypes.d.ts +5 -0
  540. package/esm/methods/setTypes.d.ts.map +1 -0
  541. package/esm/methods/setTypes.js +30 -0
  542. package/esm/methods/simplify.d.ts +6 -0
  543. package/esm/methods/simplify.d.ts.map +1 -0
  544. package/esm/methods/simplify.js +38 -0
  545. package/esm/methods/skip.d.ts +3 -0
  546. package/esm/methods/skip.d.ts.map +1 -0
  547. package/esm/methods/skip.js +11 -0
  548. package/esm/methods/sort.d.ts +9 -0
  549. package/esm/methods/sort.d.ts.map +1 -0
  550. package/esm/methods/sort.js +35 -0
  551. package/esm/methods/splitExtract.d.ts +3 -0
  552. package/esm/methods/splitExtract.d.ts.map +1 -0
  553. package/esm/methods/splitExtract.js +21 -0
  554. package/esm/methods/splitSpread.d.ts +2 -2
  555. package/esm/methods/splitSpread.d.ts.map +1 -1
  556. package/esm/methods/splitSpread.js +58 -35
  557. package/esm/methods/stream.d.ts +8 -0
  558. package/esm/methods/stream.d.ts.map +1 -0
  559. package/esm/methods/stream.js +59 -0
  560. package/esm/methods/summarize.d.ts +10 -8
  561. package/esm/methods/summarize.d.ts.map +1 -1
  562. package/esm/methods/summarize.js +135 -48
  563. package/esm/methods/trim.d.ts +6 -0
  564. package/esm/methods/trim.d.ts.map +1 -0
  565. package/esm/methods/trim.js +30 -0
  566. package/esm/methods/truncate.d.ts +3 -0
  567. package/esm/methods/truncate.d.ts.map +1 -0
  568. package/esm/methods/truncate.js +11 -0
  569. package/esm/methods/union.d.ts +3 -0
  570. package/esm/methods/union.d.ts.map +1 -0
  571. package/esm/methods/union.js +19 -0
  572. package/esm/methods/unnest.d.ts +3 -0
  573. package/esm/methods/unnest.d.ts.map +1 -0
  574. package/esm/methods/unnest.js +15 -0
  575. package/esm/methods/unnestGeo.d.ts +3 -0
  576. package/esm/methods/unnestGeo.d.ts.map +1 -0
  577. package/esm/methods/unnestGeo.js +18 -0
  578. package/esm/methods/updateColumn.d.ts +3 -0
  579. package/esm/methods/updateColumn.d.ts.map +1 -0
  580. package/esm/methods/updateColumn.js +15 -0
  581. package/esm/methods/updateWithJS.d.ts +11 -0
  582. package/esm/methods/updateWithJS.d.ts.map +1 -0
  583. package/esm/methods/updateWithJS.js +95 -0
  584. package/esm/methods/upper.d.ts +3 -0
  585. package/esm/methods/upper.d.ts.map +1 -0
  586. package/esm/methods/upper.js +14 -0
  587. package/esm/methods/wider.d.ts +5 -0
  588. package/esm/methods/wider.d.ts.map +1 -0
  589. package/esm/methods/wider.js +23 -0
  590. package/esm/methods/writeDB.d.ts +6 -0
  591. package/esm/methods/writeDB.d.ts.map +1 -0
  592. package/esm/methods/writeDB.js +99 -0
  593. package/esm/methods/writeData.d.ts +7 -0
  594. package/esm/methods/writeData.d.ts.map +1 -0
  595. package/esm/methods/writeData.js +80 -0
  596. package/esm/methods/zScore.d.ts +6 -0
  597. package/esm/methods/zScore.d.ts.map +1 -0
  598. package/esm/methods/zScore.js +29 -0
  599. package/llm.md +7925 -0
  600. package/llms.txt +19 -0
  601. package/package.json +18 -3
  602. package/script/_dnt.polyfills.d.ts +7 -0
  603. package/script/_dnt.polyfills.d.ts.map +1 -0
  604. package/script/_dnt.polyfills.js +2 -0
  605. package/script/class/SDAError.d.ts +63 -0
  606. package/script/class/SDAError.d.ts.map +1 -0
  607. package/script/class/SDAError.js +86 -0
  608. package/script/class/Simple.d.ts +40 -22
  609. package/script/class/Simple.d.ts.map +1 -1
  610. package/script/class/Simple.js +33 -20
  611. package/script/class/SimpleDB.d.ts +247 -103
  612. package/script/class/SimpleDB.d.ts.map +1 -1
  613. package/script/class/SimpleDB.js +514 -297
  614. package/script/class/SimpleTable.d.ts +1804 -940
  615. package/script/class/SimpleTable.d.ts.map +1 -1
  616. package/script/class/SimpleTable.js +1943 -1823
  617. package/script/helpers/assertColumnsExist.d.ts +16 -0
  618. package/script/helpers/assertColumnsExist.d.ts.map +1 -0
  619. package/script/helpers/assertColumnsExist.js +27 -0
  620. package/script/helpers/assertNewColumns.d.ts +17 -0
  621. package/script/helpers/assertNewColumns.d.ts.map +1 -0
  622. package/script/helpers/assertNewColumns.js +28 -0
  623. package/script/helpers/assertSameDatabase.d.ts +11 -0
  624. package/script/helpers/assertSameDatabase.d.ts.map +1 -0
  625. package/script/helpers/assertSameDatabase.js +16 -0
  626. package/script/helpers/asyncOperationContext.d.ts +19 -0
  627. package/script/helpers/asyncOperationContext.d.ts.map +1 -0
  628. package/script/helpers/asyncOperationContext.js +45 -0
  629. package/script/helpers/buildFuzzyMatchSql.d.ts +9 -0
  630. package/script/helpers/buildFuzzyMatchSql.d.ts.map +1 -0
  631. package/script/helpers/buildFuzzyMatchSql.js +20 -0
  632. package/script/helpers/cacheDatabase.d.ts +5 -0
  633. package/script/helpers/cacheDatabase.d.ts.map +1 -0
  634. package/script/helpers/cacheDatabase.js +117 -0
  635. package/script/helpers/cacheDiagnostics.d.ts +4 -0
  636. package/script/helpers/cacheDiagnostics.d.ts.map +1 -0
  637. package/script/helpers/cacheDiagnostics.js +29 -0
  638. package/script/helpers/cacheTableDependencies.d.ts +19 -0
  639. package/script/helpers/cacheTableDependencies.d.ts.map +1 -0
  640. package/script/helpers/cacheTableDependencies.js +125 -0
  641. package/script/helpers/cleanCache.js +1 -1
  642. package/script/helpers/createDirectory.d.ts +13 -0
  643. package/script/helpers/createDirectory.d.ts.map +1 -1
  644. package/script/helpers/createDirectory.js +13 -0
  645. package/script/helpers/ensureSpatial.d.ts +7 -0
  646. package/script/helpers/ensureSpatial.d.ts.map +1 -0
  647. package/script/helpers/ensureSpatial.js +23 -0
  648. package/script/helpers/extractTypes.d.ts +1 -1
  649. package/script/helpers/extractTypes.d.ts.map +1 -1
  650. package/script/helpers/extractZipEntryToFile.d.ts +3 -0
  651. package/script/helpers/extractZipEntryToFile.d.ts.map +1 -0
  652. package/script/helpers/extractZipEntryToFile.js +229 -0
  653. package/script/helpers/fileCache.d.ts +15 -0
  654. package/script/helpers/fileCache.d.ts.map +1 -0
  655. package/script/helpers/fileCache.js +135 -0
  656. package/script/helpers/findGeoColumn.d.ts +13 -1
  657. package/script/helpers/findGeoColumn.d.ts.map +1 -1
  658. package/script/helpers/findGeoColumn.js +18 -17
  659. package/script/helpers/findGeoColumnFromSchema.d.ts +20 -0
  660. package/script/helpers/findGeoColumnFromSchema.d.ts.map +1 -0
  661. package/script/helpers/findGeoColumnFromSchema.js +34 -0
  662. package/script/helpers/flushAllTables.d.ts +23 -0
  663. package/script/helpers/flushAllTables.d.ts.map +1 -0
  664. package/script/helpers/flushAllTables.js +418 -0
  665. package/script/helpers/formatMissingTables.d.ts +19 -0
  666. package/script/helpers/formatMissingTables.d.ts.map +1 -0
  667. package/script/helpers/formatMissingTables.js +35 -0
  668. package/script/helpers/getCurrentDatabase.d.ts +3 -0
  669. package/script/helpers/getCurrentDatabase.d.ts.map +1 -0
  670. package/script/helpers/getCurrentDatabase.js +13 -0
  671. package/script/helpers/getDbFileType.d.ts +2 -0
  672. package/script/helpers/getDbFileType.d.ts.map +1 -0
  673. package/script/helpers/getDbFileType.js +12 -0
  674. package/script/helpers/getDbIndexes.d.ts +4 -0
  675. package/script/helpers/getDbIndexes.d.ts.map +1 -0
  676. package/script/helpers/getDbIndexes.js +7 -0
  677. package/script/helpers/getStatExpression.d.ts +10 -0
  678. package/script/helpers/getStatExpression.d.ts.map +1 -0
  679. package/script/helpers/getStatExpression.js +80 -0
  680. package/script/helpers/index.d.ts +3 -0
  681. package/script/helpers/index.d.ts.map +1 -1
  682. package/script/helpers/index.js +10 -5
  683. package/script/helpers/indexDefinitions.d.ts +30 -0
  684. package/script/helpers/indexDefinitions.d.ts.map +1 -0
  685. package/script/helpers/indexDefinitions.js +10 -0
  686. package/script/helpers/indexQueries.d.ts +3 -0
  687. package/script/helpers/indexQueries.d.ts.map +1 -0
  688. package/script/helpers/indexQueries.js +42 -0
  689. package/script/helpers/keepNumericalColumns.d.ts.map +1 -1
  690. package/script/helpers/keepNumericalColumns.js +4 -5
  691. package/script/helpers/loadOsmFile.d.ts +10 -0
  692. package/script/helpers/loadOsmFile.d.ts.map +1 -0
  693. package/script/helpers/loadOsmFile.js +34 -0
  694. package/script/helpers/logData.d.ts +2 -2
  695. package/script/helpers/logData.d.ts.map +1 -1
  696. package/script/helpers/logData.js +6 -6
  697. package/script/helpers/mergeOptions.d.ts +47 -15
  698. package/script/helpers/mergeOptions.d.ts.map +1 -1
  699. package/script/helpers/mergeOptions.js +35 -5
  700. package/script/helpers/observeQuery.d.ts +9 -0
  701. package/script/helpers/observeQuery.d.ts.map +1 -0
  702. package/script/helpers/observeQuery.js +52 -0
  703. package/script/helpers/osmCache.d.ts +16 -0
  704. package/script/helpers/osmCache.d.ts.map +1 -0
  705. package/script/helpers/osmCache.js +81 -0
  706. package/script/helpers/osmFiles.d.ts +9 -0
  707. package/script/helpers/osmFiles.d.ts.map +1 -0
  708. package/script/helpers/osmFiles.js +60 -0
  709. package/script/helpers/parseDuckDBType.d.ts +1 -1
  710. package/script/helpers/parseValue.d.ts +16 -0
  711. package/script/helpers/parseValue.d.ts.map +1 -1
  712. package/script/helpers/parseValue.js +17 -1
  713. package/script/helpers/pendingOps.d.ts +151 -0
  714. package/script/helpers/pendingOps.d.ts.map +1 -0
  715. package/script/helpers/pendingOps.js +2 -0
  716. package/script/helpers/prepareDbExtensions.d.ts +4 -0
  717. package/script/helpers/prepareDbExtensions.d.ts.map +1 -0
  718. package/script/helpers/prepareDbExtensions.js +28 -0
  719. package/script/helpers/prepareValueFilters.d.ts +11 -0
  720. package/script/helpers/prepareValueFilters.d.ts.map +1 -0
  721. package/script/helpers/prepareValueFilters.js +18 -0
  722. package/script/helpers/queryDB.d.ts +43 -8
  723. package/script/helpers/queryDB.d.ts.map +1 -1
  724. package/script/helpers/queryDB.js +55 -36
  725. package/script/helpers/queryDbFile.d.ts +8 -0
  726. package/script/helpers/queryDbFile.d.ts.map +1 -0
  727. package/script/helpers/queryDbFile.js +18 -0
  728. package/script/helpers/queueAsyncBarrier.d.ts +47 -0
  729. package/script/helpers/queueAsyncBarrier.d.ts.map +1 -0
  730. package/script/helpers/queueAsyncBarrier.js +51 -0
  731. package/script/helpers/queueOp.d.ts +18 -0
  732. package/script/helpers/queueOp.d.ts.map +1 -0
  733. package/script/helpers/queueOp.js +74 -0
  734. package/script/helpers/quoteIdentifier.d.ts +16 -0
  735. package/script/helpers/quoteIdentifier.d.ts.map +1 -0
  736. package/script/helpers/quoteIdentifier.js +20 -0
  737. package/script/helpers/quoteQualifiedIdentifier.d.ts +18 -0
  738. package/script/helpers/quoteQualifiedIdentifier.d.ts.map +1 -0
  739. package/script/helpers/quoteQualifiedIdentifier.js +26 -0
  740. package/script/helpers/readDbMetadata.d.ts +5 -0
  741. package/script/helpers/readDbMetadata.d.ts.map +1 -0
  742. package/script/helpers/readDbMetadata.js +61 -0
  743. package/script/helpers/removeColumnsNow.d.ts +8 -0
  744. package/script/helpers/removeColumnsNow.d.ts.map +1 -0
  745. package/script/helpers/removeColumnsNow.js +21 -0
  746. package/script/helpers/resolveOutputTable.d.ts +9 -0
  747. package/script/helpers/resolveOutputTable.d.ts.map +1 -0
  748. package/script/helpers/resolveOutputTable.js +17 -0
  749. package/script/helpers/runQuery.d.ts +11 -8
  750. package/script/helpers/runQuery.d.ts.map +1 -1
  751. package/script/helpers/runQuery.js +119 -15
  752. package/script/helpers/serializeCacheInputs.d.ts +8 -0
  753. package/script/helpers/serializeCacheInputs.d.ts.map +1 -0
  754. package/script/helpers/serializeCacheInputs.js +120 -0
  755. package/script/helpers/setDbProps.d.ts +4 -1
  756. package/script/helpers/setDbProps.d.ts.map +1 -1
  757. package/script/helpers/setDbProps.js +17 -15
  758. package/script/helpers/statCanCache.d.ts +6 -0
  759. package/script/helpers/statCanCache.d.ts.map +1 -0
  760. package/script/helpers/statCanCache.js +78 -0
  761. package/script/helpers/stringToArray.d.ts +14 -0
  762. package/script/helpers/stringToArray.d.ts.map +1 -1
  763. package/script/helpers/stringToArray.js +15 -1
  764. package/script/helpers/tableGeneration.d.ts +18 -0
  765. package/script/helpers/tableGeneration.d.ts.map +1 -0
  766. package/script/helpers/tableGeneration.js +39 -0
  767. package/script/helpers/tableRegistry.d.ts +9 -0
  768. package/script/helpers/tableRegistry.d.ts.map +1 -0
  769. package/script/helpers/tableRegistry.js +54 -0
  770. package/script/helpers/toDuckDBValue.d.ts +4 -0
  771. package/script/helpers/toDuckDBValue.d.ts.map +1 -0
  772. package/script/helpers/toDuckDBValue.js +18 -0
  773. package/script/helpers/unifyColumns.d.ts +5 -0
  774. package/script/helpers/unifyColumns.d.ts.map +1 -1
  775. package/script/helpers/unifyColumns.js +23 -4
  776. package/script/helpers/validateNumericalAnalysis.d.ts +25 -0
  777. package/script/helpers/validateNumericalAnalysis.d.ts.map +1 -0
  778. package/script/helpers/validateNumericalAnalysis.js +55 -0
  779. package/script/helpers/writeDbMetadata.d.ts +4 -0
  780. package/script/helpers/writeDbMetadata.d.ts.map +1 -0
  781. package/script/helpers/writeDbMetadata.js +15 -0
  782. package/script/helpers/writeGeoData.d.ts.map +1 -1
  783. package/script/helpers/writeGeoData.js +127 -40
  784. package/script/helpers/writeZip.d.ts +15 -0
  785. package/script/helpers/writeZip.d.ts.map +1 -0
  786. package/script/helpers/writeZip.js +293 -0
  787. package/script/index.d.ts +8 -4
  788. package/script/index.d.ts.map +1 -1
  789. package/script/index.js +14 -9
  790. package/script/methods/accumulate.d.ts +5 -0
  791. package/script/methods/accumulate.d.ts.map +1 -0
  792. package/script/methods/accumulate.js +43 -0
  793. package/script/methods/addBoundingBox.d.ts +6 -0
  794. package/script/methods/addBoundingBox.d.ts.map +1 -0
  795. package/script/methods/addBoundingBox.js +32 -0
  796. package/script/methods/addColumn.d.ts +3 -0
  797. package/script/methods/addColumn.d.ts.map +1 -0
  798. package/script/methods/addColumn.js +30 -0
  799. package/script/methods/addGeoClosedStatus.d.ts +5 -0
  800. package/script/methods/addGeoClosedStatus.d.ts.map +1 -0
  801. package/script/methods/addGeoClosedStatus.js +27 -0
  802. package/script/methods/addGeoType.d.ts +5 -0
  803. package/script/methods/addGeoType.d.ts.map +1 -0
  804. package/script/methods/addGeoType.js +27 -0
  805. package/script/methods/addGeoValidity.d.ts +5 -0
  806. package/script/methods/addGeoValidity.d.ts.map +1 -0
  807. package/script/methods/addGeoValidity.js +27 -0
  808. package/script/methods/addRowNumber.d.ts +5 -0
  809. package/script/methods/addRowNumber.d.ts.map +1 -0
  810. package/script/methods/addRowNumber.js +32 -0
  811. package/script/methods/addSummaryRows.d.ts +14 -0
  812. package/script/methods/addSummaryRows.d.ts.map +1 -0
  813. package/script/methods/addSummaryRows.js +161 -0
  814. package/script/methods/addVertexCount.d.ts +5 -0
  815. package/script/methods/addVertexCount.d.ts.map +1 -0
  816. package/script/methods/addVertexCount.js +27 -0
  817. package/script/methods/aggregateGeo.d.ts +7 -0
  818. package/script/methods/aggregateGeo.d.ts.map +1 -0
  819. package/script/methods/aggregateGeo.js +75 -0
  820. package/script/methods/area.d.ts +7 -0
  821. package/script/methods/area.d.ts.map +1 -0
  822. package/script/methods/area.js +31 -0
  823. package/script/methods/bins.d.ts +5 -0
  824. package/script/methods/bins.d.ts.map +1 -0
  825. package/script/methods/bins.js +93 -0
  826. package/script/methods/bm25.d.ts +2 -2
  827. package/script/methods/bm25.d.ts.map +1 -1
  828. package/script/methods/bm25.js +28 -13
  829. package/script/methods/buffer.d.ts +5 -0
  830. package/script/methods/buffer.d.ts.map +1 -0
  831. package/script/methods/buffer.js +30 -0
  832. package/script/methods/cache.d.ts +2 -1
  833. package/script/methods/cache.d.ts.map +1 -1
  834. package/script/methods/cache.js +260 -70
  835. package/script/methods/capitalize.d.ts +3 -0
  836. package/script/methods/capitalize.d.ts.map +1 -0
  837. package/script/methods/capitalize.js +21 -0
  838. package/script/methods/centroid.d.ts +5 -0
  839. package/script/methods/centroid.d.ts.map +1 -0
  840. package/script/methods/centroid.js +30 -0
  841. package/script/methods/clone.d.ts +9 -0
  842. package/script/methods/clone.d.ts.map +1 -0
  843. package/script/methods/clone.js +41 -0
  844. package/script/methods/cloneColumn.d.ts +2 -3
  845. package/script/methods/cloneColumn.d.ts.map +1 -1
  846. package/script/methods/cloneColumn.js +21 -13
  847. package/script/methods/cloneColumnWithOffset.d.ts +6 -0
  848. package/script/methods/cloneColumnWithOffset.d.ts.map +1 -0
  849. package/script/methods/cloneColumnWithOffset.js +41 -0
  850. package/script/methods/columnProportions.d.ts +6 -0
  851. package/script/methods/columnProportions.d.ts.map +1 -0
  852. package/script/methods/columnProportions.js +29 -0
  853. package/script/methods/concatenate.d.ts +5 -0
  854. package/script/methods/concatenate.d.ts.map +1 -0
  855. package/script/methods/concatenate.js +31 -0
  856. package/script/methods/convert.d.ts +13 -0
  857. package/script/methods/convert.d.ts.map +1 -0
  858. package/script/methods/convert.js +119 -0
  859. package/script/methods/correlations.d.ts +3 -3
  860. package/script/methods/correlations.d.ts.map +1 -1
  861. package/script/methods/correlations.js +70 -24
  862. package/script/methods/coveredBy.d.ts +3 -0
  863. package/script/methods/coveredBy.d.ts.map +1 -0
  864. package/script/methods/coveredBy.js +22 -0
  865. package/script/methods/createFtsIndex.d.ts +15 -2
  866. package/script/methods/createFtsIndex.d.ts.map +1 -1
  867. package/script/methods/createFtsIndex.js +53 -13
  868. package/script/methods/createPoints.d.ts +5 -0
  869. package/script/methods/createPoints.d.ts.map +1 -0
  870. package/script/methods/createPoints.js +29 -0
  871. package/script/methods/createVssIndex.d.ts +1 -1
  872. package/script/methods/createVssIndex.d.ts.map +1 -1
  873. package/script/methods/createVssIndex.js +34 -13
  874. package/script/methods/crossJoin.d.ts +5 -0
  875. package/script/methods/crossJoin.d.ts.map +1 -0
  876. package/script/methods/crossJoin.js +41 -0
  877. package/script/methods/difference.d.ts +3 -0
  878. package/script/methods/difference.d.ts.map +1 -0
  879. package/script/methods/difference.js +25 -0
  880. package/script/methods/distance.d.ts +7 -0
  881. package/script/methods/distance.d.ts.map +1 -0
  882. package/script/methods/distance.js +54 -0
  883. package/script/methods/extractDatePart.d.ts +7 -0
  884. package/script/methods/extractDatePart.d.ts.map +1 -0
  885. package/script/methods/extractDatePart.js +44 -0
  886. package/script/methods/extractLatLon.d.ts +3 -0
  887. package/script/methods/extractLatLon.d.ts.map +1 -0
  888. package/script/methods/extractLatLon.js +22 -0
  889. package/script/methods/fill.d.ts +2 -2
  890. package/script/methods/fill.d.ts.map +1 -1
  891. package/script/methods/fill.js +41 -44
  892. package/script/methods/fillHoles.d.ts +3 -0
  893. package/script/methods/fillHoles.d.ts.map +1 -0
  894. package/script/methods/fillHoles.js +25 -0
  895. package/script/methods/filter.d.ts +3 -0
  896. package/script/methods/filter.d.ts.map +1 -0
  897. package/script/methods/filter.js +20 -0
  898. package/script/methods/firstChars.d.ts +3 -0
  899. package/script/methods/firstChars.d.ts.map +1 -0
  900. package/script/methods/firstChars.js +17 -0
  901. package/script/methods/fixGeo.d.ts +3 -0
  902. package/script/methods/fixGeo.d.ts.map +1 -0
  903. package/script/methods/fixGeo.js +28 -0
  904. package/script/methods/flipCoordinates.d.ts +3 -0
  905. package/script/methods/flipCoordinates.d.ts.map +1 -0
  906. package/script/methods/flipCoordinates.js +28 -0
  907. package/script/methods/fuzzyClean.d.ts +3 -3
  908. package/script/methods/fuzzyClean.d.ts.map +1 -1
  909. package/script/methods/fuzzyClean.js +55 -55
  910. package/script/methods/fuzzyJoin.d.ts +2 -2
  911. package/script/methods/fuzzyJoin.d.ts.map +1 -1
  912. package/script/methods/fuzzyJoin.js +60 -19
  913. package/script/methods/getBottom.d.ts +1 -1
  914. package/script/methods/getBottom.d.ts.map +1 -1
  915. package/script/methods/getBottom.js +4 -3
  916. package/script/methods/getBoundingBox.d.ts +3 -0
  917. package/script/methods/getBoundingBox.d.ts.map +1 -0
  918. package/script/methods/getBoundingBox.js +25 -0
  919. package/script/methods/getCharacterCount.d.ts +3 -0
  920. package/script/methods/getCharacterCount.d.ts.map +1 -0
  921. package/script/methods/getCharacterCount.js +23 -0
  922. package/script/methods/getColumns.d.ts.map +1 -1
  923. package/script/methods/getColumns.js +4 -3
  924. package/script/methods/getData.d.ts +9 -0
  925. package/script/methods/getData.d.ts.map +1 -0
  926. package/script/methods/getData.js +29 -0
  927. package/script/methods/getDescription.d.ts.map +1 -1
  928. package/script/methods/getDescription.js +15 -10
  929. package/script/methods/getFirstRow.d.ts +1 -1
  930. package/script/methods/getFirstRow.d.ts.map +1 -1
  931. package/script/methods/getFirstRow.js +5 -4
  932. package/script/methods/getGeoData.d.ts +1 -1
  933. package/script/methods/getGeoData.d.ts.map +1 -1
  934. package/script/methods/getGeoData.js +5 -3
  935. package/script/methods/getHash.d.ts +3 -0
  936. package/script/methods/getHash.d.ts.map +1 -0
  937. package/script/methods/getHash.js +45 -0
  938. package/script/methods/getLastRow.d.ts +2 -2
  939. package/script/methods/getLastRow.d.ts.map +1 -1
  940. package/script/methods/getLastRow.js +7 -3
  941. package/script/methods/getMax.d.ts +1 -1
  942. package/script/methods/getMax.d.ts.map +1 -1
  943. package/script/methods/getMax.js +10 -10
  944. package/script/methods/getMean.d.ts.map +1 -1
  945. package/script/methods/getMean.js +7 -4
  946. package/script/methods/getMedian.d.ts.map +1 -1
  947. package/script/methods/getMedian.js +7 -4
  948. package/script/methods/getMin.d.ts +1 -1
  949. package/script/methods/getMin.d.ts.map +1 -1
  950. package/script/methods/getMin.js +10 -10
  951. package/script/methods/getQuantile.d.ts.map +1 -1
  952. package/script/methods/getQuantile.js +7 -4
  953. package/script/methods/getRowCount.d.ts +5 -0
  954. package/script/methods/getRowCount.d.ts.map +1 -0
  955. package/script/methods/getRowCount.js +22 -0
  956. package/script/methods/getSchema.d.ts +5 -0
  957. package/script/methods/getSchema.d.ts.map +1 -0
  958. package/script/methods/getSchema.js +18 -0
  959. package/script/methods/getSkew.d.ts.map +1 -1
  960. package/script/methods/getSkew.js +7 -4
  961. package/script/methods/getStdDev.d.ts.map +1 -1
  962. package/script/methods/getStdDev.js +7 -4
  963. package/script/methods/getSum.d.ts.map +1 -1
  964. package/script/methods/getSum.js +6 -3
  965. package/script/methods/getTableNames.js +2 -2
  966. package/script/methods/getTop.d.ts +1 -1
  967. package/script/methods/getTop.d.ts.map +1 -1
  968. package/script/methods/getTop.js +3 -2
  969. package/script/methods/getTypes.d.ts.map +1 -1
  970. package/script/methods/getTypes.js +3 -2
  971. package/script/methods/getUniques.d.ts +1 -1
  972. package/script/methods/getUniques.d.ts.map +1 -1
  973. package/script/methods/getUniques.js +6 -3
  974. package/script/methods/getValues.d.ts +1 -1
  975. package/script/methods/getValues.d.ts.map +1 -1
  976. package/script/methods/getValues.js +5 -3
  977. package/script/methods/getVariance.d.ts +5 -0
  978. package/script/methods/getVariance.d.ts.map +1 -0
  979. package/script/methods/getVariance.js +26 -0
  980. package/script/methods/indexValues.d.ts +27 -0
  981. package/script/methods/indexValues.d.ts.map +1 -0
  982. package/script/methods/indexValues.js +287 -0
  983. package/script/methods/insertRows.d.ts +5 -0
  984. package/script/methods/insertRows.d.ts.map +1 -0
  985. package/script/methods/insertRows.js +47 -0
  986. package/script/methods/insertTables.d.ts +5 -0
  987. package/script/methods/insertTables.d.ts.map +1 -0
  988. package/script/methods/insertTables.js +105 -0
  989. package/script/methods/intersection.d.ts +3 -0
  990. package/script/methods/intersection.d.ts.map +1 -0
  991. package/script/methods/intersection.js +25 -0
  992. package/script/methods/intersects.d.ts +3 -0
  993. package/script/methods/intersects.d.ts.map +1 -0
  994. package/script/methods/intersects.js +22 -0
  995. package/script/methods/join.d.ts +2 -2
  996. package/script/methods/join.d.ts.map +1 -1
  997. package/script/methods/join.js +77 -28
  998. package/script/methods/joinGeo.d.ts +6 -4
  999. package/script/methods/joinGeo.d.ts.map +1 -1
  1000. package/script/methods/joinGeo.js +125 -42
  1001. package/script/methods/keepValues.d.ts +5 -0
  1002. package/script/methods/keepValues.d.ts.map +1 -0
  1003. package/script/methods/keepValues.js +41 -0
  1004. package/script/methods/lastChars.d.ts +3 -0
  1005. package/script/methods/lastChars.d.ts.map +1 -0
  1006. package/script/methods/lastChars.js +17 -0
  1007. package/script/methods/length.d.ts +7 -0
  1008. package/script/methods/length.d.ts.map +1 -0
  1009. package/script/methods/length.js +31 -0
  1010. package/script/methods/linearRegressions.d.ts +3 -3
  1011. package/script/methods/linearRegressions.d.ts.map +1 -1
  1012. package/script/methods/linearRegressions.js +78 -24
  1013. package/script/methods/linesToPolygons.d.ts +3 -0
  1014. package/script/methods/linesToPolygons.d.ts.map +1 -0
  1015. package/script/methods/linesToPolygons.js +23 -0
  1016. package/script/methods/loadArray.d.ts +14 -2
  1017. package/script/methods/loadArray.d.ts.map +1 -1
  1018. package/script/methods/loadArray.js +54 -32
  1019. package/script/methods/loadDB.d.ts +3 -0
  1020. package/script/methods/loadDB.d.ts.map +1 -0
  1021. package/script/methods/loadDB.js +76 -0
  1022. package/script/methods/loadData.d.ts +52 -0
  1023. package/script/methods/loadData.d.ts.map +1 -0
  1024. package/script/methods/loadData.js +155 -0
  1025. package/script/methods/loadGeoData.d.ts +9 -0
  1026. package/script/methods/loadGeoData.d.ts.map +1 -0
  1027. package/script/methods/loadGeoData.js +110 -0
  1028. package/script/methods/loadOSM.d.ts +17 -0
  1029. package/script/methods/loadOSM.d.ts.map +1 -0
  1030. package/script/methods/loadOSM.js +201 -0
  1031. package/script/methods/loadSample.d.ts +1 -1
  1032. package/script/methods/loadSample.d.ts.map +1 -1
  1033. package/script/methods/loadSample.js +5 -4
  1034. package/script/methods/loadStatCanData.d.ts +10 -0
  1035. package/script/methods/loadStatCanData.d.ts.map +1 -0
  1036. package/script/methods/loadStatCanData.js +137 -0
  1037. package/script/methods/longer.d.ts +3 -0
  1038. package/script/methods/longer.d.ts.map +1 -0
  1039. package/script/methods/longer.js +29 -0
  1040. package/script/methods/lower.d.ts +3 -0
  1041. package/script/methods/lower.d.ts.map +1 -0
  1042. package/script/methods/lower.js +20 -0
  1043. package/script/methods/nest.d.ts +3 -0
  1044. package/script/methods/nest.d.ts.map +1 -0
  1045. package/script/methods/nest.js +29 -0
  1046. package/script/methods/normalize.d.ts +7 -0
  1047. package/script/methods/normalize.d.ts.map +1 -0
  1048. package/script/methods/normalize.js +47 -0
  1049. package/script/methods/normalizeString.d.ts +1 -1
  1050. package/script/methods/normalizeString.d.ts.map +1 -1
  1051. package/script/methods/normalizeString.js +15 -18
  1052. package/script/methods/outliersIQR.d.ts +5 -0
  1053. package/script/methods/outliersIQR.d.ts.map +1 -0
  1054. package/script/methods/outliersIQR.js +43 -0
  1055. package/script/methods/pad.d.ts +6 -0
  1056. package/script/methods/pad.d.ts.map +1 -0
  1057. package/script/methods/pad.js +61 -0
  1058. package/script/methods/perimeter.d.ts +7 -0
  1059. package/script/methods/perimeter.d.ts.map +1 -0
  1060. package/script/methods/perimeter.js +31 -0
  1061. package/script/methods/quantiles.d.ts +5 -0
  1062. package/script/methods/quantiles.d.ts.map +1 -0
  1063. package/script/methods/quantiles.js +28 -0
  1064. package/script/methods/randomPoint.d.ts +6 -0
  1065. package/script/methods/randomPoint.d.ts.map +1 -0
  1066. package/script/methods/randomPoint.js +111 -0
  1067. package/script/methods/ranks.d.ts +7 -0
  1068. package/script/methods/ranks.d.ts.map +1 -0
  1069. package/script/methods/ranks.js +28 -0
  1070. package/script/methods/reducePrecision.d.ts +5 -0
  1071. package/script/methods/reducePrecision.d.ts.map +1 -0
  1072. package/script/methods/reducePrecision.js +30 -0
  1073. package/script/methods/removeColumns.d.ts +3 -0
  1074. package/script/methods/removeColumns.d.ts.map +1 -0
  1075. package/script/methods/removeColumns.js +19 -0
  1076. package/script/methods/removeDuplicates.d.ts +5 -0
  1077. package/script/methods/removeDuplicates.d.ts.map +1 -0
  1078. package/script/methods/removeDuplicates.js +23 -0
  1079. package/script/methods/removeMissing.d.ts +1 -1
  1080. package/script/methods/removeMissing.d.ts.map +1 -1
  1081. package/script/methods/removeMissing.js +70 -11
  1082. package/script/methods/removeRows.d.ts +3 -0
  1083. package/script/methods/removeRows.d.ts.map +1 -0
  1084. package/script/methods/removeRows.js +20 -0
  1085. package/script/methods/removeTable.d.ts +3 -0
  1086. package/script/methods/removeTable.d.ts.map +1 -0
  1087. package/script/methods/removeTable.js +18 -0
  1088. package/script/methods/removeTables.d.ts +4 -0
  1089. package/script/methods/removeTables.d.ts.map +1 -0
  1090. package/script/methods/removeTables.js +27 -0
  1091. package/script/methods/removeValues.d.ts +5 -0
  1092. package/script/methods/removeValues.d.ts.map +1 -0
  1093. package/script/methods/removeValues.js +41 -0
  1094. package/script/methods/renameColumns.d.ts +7 -0
  1095. package/script/methods/renameColumns.d.ts.map +1 -0
  1096. package/script/methods/renameColumns.js +33 -0
  1097. package/script/methods/renameTable.d.ts +3 -0
  1098. package/script/methods/renameTable.d.ts.map +1 -0
  1099. package/script/methods/renameTable.js +18 -0
  1100. package/script/methods/repeatRows.d.ts +5 -0
  1101. package/script/methods/repeatRows.d.ts.map +1 -0
  1102. package/script/methods/repeatRows.js +25 -0
  1103. package/script/methods/replace.d.ts +8 -0
  1104. package/script/methods/replace.d.ts.map +1 -0
  1105. package/script/methods/replace.js +75 -0
  1106. package/script/methods/replaceNulls.d.ts +3 -0
  1107. package/script/methods/replaceNulls.d.ts.map +1 -0
  1108. package/script/methods/replaceNulls.js +42 -0
  1109. package/script/methods/reproject.d.ts +5 -0
  1110. package/script/methods/reproject.d.ts.map +1 -0
  1111. package/script/methods/reproject.js +27 -0
  1112. package/script/methods/rolling.d.ts +6 -0
  1113. package/script/methods/rolling.d.ts.map +1 -0
  1114. package/script/methods/rolling.js +48 -0
  1115. package/script/methods/round.d.ts +6 -0
  1116. package/script/methods/round.d.ts.map +1 -0
  1117. package/script/methods/round.js +28 -0
  1118. package/script/methods/rowProportions.d.ts +6 -0
  1119. package/script/methods/rowProportions.d.ts.map +1 -0
  1120. package/script/methods/rowProportions.js +36 -0
  1121. package/script/methods/rowRanks.d.ts +9 -0
  1122. package/script/methods/rowRanks.d.ts.map +1 -0
  1123. package/script/methods/rowRanks.js +119 -0
  1124. package/script/methods/rowToText.d.ts +3 -0
  1125. package/script/methods/rowToText.d.ts.map +1 -0
  1126. package/script/methods/rowToText.js +33 -0
  1127. package/script/methods/sample.d.ts +5 -0
  1128. package/script/methods/sample.d.ts.map +1 -0
  1129. package/script/methods/sample.js +22 -0
  1130. package/script/methods/selectColumns.d.ts +3 -0
  1131. package/script/methods/selectColumns.d.ts.map +1 -0
  1132. package/script/methods/selectColumns.js +25 -0
  1133. package/script/methods/selectRows.d.ts +6 -0
  1134. package/script/methods/selectRows.d.ts.map +1 -0
  1135. package/script/methods/selectRows.js +40 -0
  1136. package/script/methods/selectTables.d.ts +4 -0
  1137. package/script/methods/selectTables.d.ts.map +1 -0
  1138. package/script/methods/selectTables.js +31 -0
  1139. package/script/methods/setTypes.d.ts +5 -0
  1140. package/script/methods/setTypes.d.ts.map +1 -0
  1141. package/script/methods/setTypes.js +36 -0
  1142. package/script/methods/simplify.d.ts +6 -0
  1143. package/script/methods/simplify.d.ts.map +1 -0
  1144. package/script/methods/simplify.js +44 -0
  1145. package/script/methods/skip.d.ts +3 -0
  1146. package/script/methods/skip.d.ts.map +1 -0
  1147. package/script/methods/skip.js +17 -0
  1148. package/script/methods/sort.d.ts +9 -0
  1149. package/script/methods/sort.d.ts.map +1 -0
  1150. package/script/methods/sort.js +41 -0
  1151. package/script/methods/splitExtract.d.ts +3 -0
  1152. package/script/methods/splitExtract.d.ts.map +1 -0
  1153. package/script/methods/splitExtract.js +27 -0
  1154. package/script/methods/splitSpread.d.ts +2 -2
  1155. package/script/methods/splitSpread.d.ts.map +1 -1
  1156. package/script/methods/splitSpread.js +58 -35
  1157. package/script/methods/stream.d.ts +8 -0
  1158. package/script/methods/stream.d.ts.map +1 -0
  1159. package/script/methods/stream.js +65 -0
  1160. package/script/methods/summarize.d.ts +10 -8
  1161. package/script/methods/summarize.d.ts.map +1 -1
  1162. package/script/methods/summarize.js +165 -45
  1163. package/script/methods/trim.d.ts +6 -0
  1164. package/script/methods/trim.d.ts.map +1 -0
  1165. package/script/methods/trim.js +36 -0
  1166. package/script/methods/truncate.d.ts +3 -0
  1167. package/script/methods/truncate.d.ts.map +1 -0
  1168. package/script/methods/truncate.js +17 -0
  1169. package/script/methods/union.d.ts +3 -0
  1170. package/script/methods/union.d.ts.map +1 -0
  1171. package/script/methods/union.js +25 -0
  1172. package/script/methods/unnest.d.ts +3 -0
  1173. package/script/methods/unnest.d.ts.map +1 -0
  1174. package/script/methods/unnest.js +21 -0
  1175. package/script/methods/unnestGeo.d.ts +3 -0
  1176. package/script/methods/unnestGeo.d.ts.map +1 -0
  1177. package/script/methods/unnestGeo.js +24 -0
  1178. package/script/methods/updateColumn.d.ts +3 -0
  1179. package/script/methods/updateColumn.d.ts.map +1 -0
  1180. package/script/methods/updateColumn.js +21 -0
  1181. package/script/methods/updateWithJS.d.ts +11 -0
  1182. package/script/methods/updateWithJS.d.ts.map +1 -0
  1183. package/script/methods/updateWithJS.js +101 -0
  1184. package/script/methods/upper.d.ts +3 -0
  1185. package/script/methods/upper.d.ts.map +1 -0
  1186. package/script/methods/upper.js +20 -0
  1187. package/script/methods/wider.d.ts +5 -0
  1188. package/script/methods/wider.d.ts.map +1 -0
  1189. package/script/methods/wider.js +29 -0
  1190. package/script/methods/writeDB.d.ts +6 -0
  1191. package/script/methods/writeDB.d.ts.map +1 -0
  1192. package/script/methods/writeDB.js +105 -0
  1193. package/script/methods/writeData.d.ts +7 -0
  1194. package/script/methods/writeData.d.ts.map +1 -0
  1195. package/script/methods/writeData.js +86 -0
  1196. package/script/methods/zScore.d.ts +6 -0
  1197. package/script/methods/zScore.d.ts.map +1 -0
  1198. package/script/methods/zScore.js +35 -0
  1199. package/esm/helpers/accumulateQuery.d.ts +0 -4
  1200. package/esm/helpers/accumulateQuery.d.ts.map +0 -1
  1201. package/esm/helpers/accumulateQuery.js +0 -15
  1202. package/esm/helpers/checkVssIndexes.d.ts +0 -2
  1203. package/esm/helpers/checkVssIndexes.d.ts.map +0 -1
  1204. package/esm/helpers/checkVssIndexes.js +0 -16
  1205. package/esm/helpers/concatenateRowQuery.d.ts +0 -2
  1206. package/esm/helpers/concatenateRowQuery.d.ts.map +0 -1
  1207. package/esm/helpers/concatenateRowQuery.js +0 -9
  1208. package/esm/helpers/convertForJS.d.ts +0 -6
  1209. package/esm/helpers/convertForJS.d.ts.map +0 -1
  1210. package/esm/helpers/convertForJS.js +0 -41
  1211. package/esm/helpers/getName.d.ts +0 -2
  1212. package/esm/helpers/getName.d.ts.map +0 -1
  1213. package/esm/helpers/getName.js +0 -14
  1214. package/esm/helpers/nestQuery.d.ts +0 -2
  1215. package/esm/helpers/nestQuery.d.ts.map +0 -1
  1216. package/esm/helpers/nestQuery.js +0 -13
  1217. package/esm/helpers/repeatRowsQuery.d.ts +0 -4
  1218. package/esm/helpers/repeatRowsQuery.d.ts.map +0 -1
  1219. package/esm/helpers/repeatRowsQuery.js +0 -8
  1220. package/esm/helpers/unnestQuery.d.ts +0 -2
  1221. package/esm/helpers/unnestQuery.d.ts.map +0 -1
  1222. package/esm/helpers/unnestQuery.js +0 -8
  1223. package/esm/helpers/writeIndexes.d.ts +0 -3
  1224. package/esm/helpers/writeIndexes.d.ts.map +0 -1
  1225. package/esm/helpers/writeIndexes.js +0 -16
  1226. package/esm/methods/aggregateGeoQuery.d.ts +0 -5
  1227. package/esm/methods/aggregateGeoQuery.d.ts.map +0 -1
  1228. package/esm/methods/aggregateGeoQuery.js +0 -25
  1229. package/esm/methods/binsQuery.d.ts +0 -5
  1230. package/esm/methods/binsQuery.d.ts.map +0 -1
  1231. package/esm/methods/binsQuery.js +0 -40
  1232. package/esm/methods/boundingBoxQuery.d.ts +0 -4
  1233. package/esm/methods/boundingBoxQuery.d.ts.map +0 -1
  1234. package/esm/methods/boundingBoxQuery.js +0 -21
  1235. package/esm/methods/capitalizeQuery.d.ts +0 -2
  1236. package/esm/methods/capitalizeQuery.d.ts.map +0 -1
  1237. package/esm/methods/capitalizeQuery.js +0 -8
  1238. package/esm/methods/cloneQuery.d.ts +0 -6
  1239. package/esm/methods/cloneQuery.d.ts.map +0 -1
  1240. package/esm/methods/cloneQuery.js +0 -6
  1241. package/esm/methods/concatenateQuery.d.ts +0 -4
  1242. package/esm/methods/concatenateQuery.d.ts.map +0 -1
  1243. package/esm/methods/concatenateQuery.js +0 -13
  1244. package/esm/methods/convertQuery.d.ts +0 -7
  1245. package/esm/methods/convertQuery.d.ts.map +0 -1
  1246. package/esm/methods/convertQuery.js +0 -78
  1247. package/esm/methods/correlationsQuery.d.ts +0 -5
  1248. package/esm/methods/correlationsQuery.d.ts.map +0 -1
  1249. package/esm/methods/correlationsQuery.js +0 -26
  1250. package/esm/methods/crossJoinQuery.d.ts +0 -4
  1251. package/esm/methods/crossJoinQuery.d.ts.map +0 -1
  1252. package/esm/methods/crossJoinQuery.js +0 -3
  1253. package/esm/methods/distanceQuery.d.ts +0 -6
  1254. package/esm/methods/distanceQuery.d.ts.map +0 -1
  1255. package/esm/methods/distanceQuery.js +0 -44
  1256. package/esm/methods/fuzzyJoinQuery.d.ts +0 -2
  1257. package/esm/methods/fuzzyJoinQuery.d.ts.map +0 -1
  1258. package/esm/methods/fuzzyJoinQuery.js +0 -29
  1259. package/esm/methods/getNbCharacters.d.ts +0 -3
  1260. package/esm/methods/getNbCharacters.d.ts.map +0 -1
  1261. package/esm/methods/getNbCharacters.js +0 -15
  1262. package/esm/methods/getNbRows.d.ts +0 -5
  1263. package/esm/methods/getNbRows.d.ts.map +0 -1
  1264. package/esm/methods/getNbRows.js +0 -15
  1265. package/esm/methods/getVar.d.ts +0 -5
  1266. package/esm/methods/getVar.d.ts.map +0 -1
  1267. package/esm/methods/getVar.js +0 -17
  1268. package/esm/methods/insertRowsQuery.d.ts +0 -4
  1269. package/esm/methods/insertRowsQuery.d.ts.map +0 -1
  1270. package/esm/methods/insertRowsQuery.js +0 -11
  1271. package/esm/methods/joinGeoQuery.d.ts +0 -2
  1272. package/esm/methods/joinGeoQuery.d.ts.map +0 -1
  1273. package/esm/methods/joinGeoQuery.js +0 -55
  1274. package/esm/methods/joinQuery.d.ts +0 -2
  1275. package/esm/methods/joinQuery.d.ts.map +0 -1
  1276. package/esm/methods/joinQuery.js +0 -21
  1277. package/esm/methods/keepQuery.d.ts +0 -4
  1278. package/esm/methods/keepQuery.d.ts.map +0 -1
  1279. package/esm/methods/keepQuery.js +0 -15
  1280. package/esm/methods/linearRegressionQuery.d.ts +0 -5
  1281. package/esm/methods/linearRegressionQuery.d.ts.map +0 -1
  1282. package/esm/methods/linearRegressionQuery.js +0 -37
  1283. package/esm/methods/loadDataQuery.d.ts +0 -24
  1284. package/esm/methods/loadDataQuery.d.ts.map +0 -1
  1285. package/esm/methods/loadDataQuery.js +0 -85
  1286. package/esm/methods/lowerQuery.d.ts +0 -2
  1287. package/esm/methods/lowerQuery.d.ts.map +0 -1
  1288. package/esm/methods/lowerQuery.js +0 -7
  1289. package/esm/methods/normalizeQuery.d.ts +0 -5
  1290. package/esm/methods/normalizeQuery.d.ts.map +0 -1
  1291. package/esm/methods/normalizeQuery.js +0 -22
  1292. package/esm/methods/outliersIQRQuery.d.ts +0 -4
  1293. package/esm/methods/outliersIQRQuery.d.ts.map +0 -1
  1294. package/esm/methods/outliersIQRQuery.js +0 -31
  1295. package/esm/methods/padQuery.d.ts +0 -5
  1296. package/esm/methods/padQuery.d.ts.map +0 -1
  1297. package/esm/methods/padQuery.js +0 -14
  1298. package/esm/methods/proportionsHorizontalQuery.d.ts +0 -5
  1299. package/esm/methods/proportionsHorizontalQuery.d.ts.map +0 -1
  1300. package/esm/methods/proportionsHorizontalQuery.js +0 -15
  1301. package/esm/methods/proportionsVerticalQuery.d.ts +0 -5
  1302. package/esm/methods/proportionsVerticalQuery.d.ts.map +0 -1
  1303. package/esm/methods/proportionsVerticalQuery.js +0 -19
  1304. package/esm/methods/quantilesQuery.d.ts +0 -4
  1305. package/esm/methods/quantilesQuery.d.ts.map +0 -1
  1306. package/esm/methods/quantilesQuery.js +0 -12
  1307. package/esm/methods/randomPointQuery.d.ts +0 -2
  1308. package/esm/methods/randomPointQuery.d.ts.map +0 -1
  1309. package/esm/methods/randomPointQuery.js +0 -66
  1310. package/esm/methods/ranksQuery.d.ts +0 -6
  1311. package/esm/methods/ranksQuery.d.ts.map +0 -1
  1312. package/esm/methods/ranksQuery.js +0 -12
  1313. package/esm/methods/removeDuplicatesQuery.d.ts +0 -4
  1314. package/esm/methods/removeDuplicatesQuery.d.ts.map +0 -1
  1315. package/esm/methods/removeDuplicatesQuery.js +0 -12
  1316. package/esm/methods/removeMissingQuery.d.ts +0 -7
  1317. package/esm/methods/removeMissingQuery.d.ts.map +0 -1
  1318. package/esm/methods/removeMissingQuery.js +0 -43
  1319. package/esm/methods/removeQuery.d.ts +0 -4
  1320. package/esm/methods/removeQuery.d.ts.map +0 -1
  1321. package/esm/methods/removeQuery.js +0 -15
  1322. package/esm/methods/renameColumnQuery.d.ts +0 -2
  1323. package/esm/methods/renameColumnQuery.d.ts.map +0 -1
  1324. package/esm/methods/renameColumnQuery.js +0 -7
  1325. package/esm/methods/replaceNullsQuery.d.ts +0 -2
  1326. package/esm/methods/replaceNullsQuery.d.ts.map +0 -1
  1327. package/esm/methods/replaceNullsQuery.js +0 -10
  1328. package/esm/methods/replaceQuery.d.ts +0 -5
  1329. package/esm/methods/replaceQuery.d.ts.map +0 -1
  1330. package/esm/methods/replaceQuery.js +0 -24
  1331. package/esm/methods/rollingQuery.d.ts +0 -5
  1332. package/esm/methods/rollingQuery.d.ts.map +0 -1
  1333. package/esm/methods/rollingQuery.js +0 -33
  1334. package/esm/methods/roundQuery.d.ts +0 -5
  1335. package/esm/methods/roundQuery.d.ts.map +0 -1
  1336. package/esm/methods/roundQuery.js +0 -16
  1337. package/esm/methods/selectRowsQuery.d.ts +0 -5
  1338. package/esm/methods/selectRowsQuery.d.ts.map +0 -1
  1339. package/esm/methods/selectRowsQuery.js +0 -3
  1340. package/esm/methods/sortQuery.d.ts +0 -8
  1341. package/esm/methods/sortQuery.d.ts.map +0 -1
  1342. package/esm/methods/sortQuery.js +0 -18
  1343. package/esm/methods/summarizeQuery.d.ts +0 -7
  1344. package/esm/methods/summarizeQuery.d.ts.map +0 -1
  1345. package/esm/methods/summarizeQuery.js +0 -112
  1346. package/esm/methods/trimQuery.d.ts +0 -5
  1347. package/esm/methods/trimQuery.d.ts.map +0 -1
  1348. package/esm/methods/trimQuery.js +0 -29
  1349. package/esm/methods/truncateQuery.d.ts +0 -2
  1350. package/esm/methods/truncateQuery.d.ts.map +0 -1
  1351. package/esm/methods/truncateQuery.js +0 -3
  1352. package/esm/methods/upperQuery.d.ts +0 -2
  1353. package/esm/methods/upperQuery.d.ts.map +0 -1
  1354. package/esm/methods/upperQuery.js +0 -7
  1355. package/esm/methods/writeDataQuery.d.ts +0 -5
  1356. package/esm/methods/writeDataQuery.d.ts.map +0 -1
  1357. package/esm/methods/writeDataQuery.js +0 -44
  1358. package/esm/methods/writeGeoDataQuery.d.ts +0 -4
  1359. package/esm/methods/writeGeoDataQuery.d.ts.map +0 -1
  1360. package/esm/methods/writeGeoDataQuery.js +0 -19
  1361. package/esm/methods/zScoreQuery.d.ts +0 -5
  1362. package/esm/methods/zScoreQuery.d.ts.map +0 -1
  1363. package/esm/methods/zScoreQuery.js +0 -23
  1364. package/script/helpers/accumulateQuery.d.ts +0 -4
  1365. package/script/helpers/accumulateQuery.d.ts.map +0 -1
  1366. package/script/helpers/accumulateQuery.js +0 -21
  1367. package/script/helpers/checkVssIndexes.d.ts +0 -2
  1368. package/script/helpers/checkVssIndexes.d.ts.map +0 -1
  1369. package/script/helpers/checkVssIndexes.js +0 -19
  1370. package/script/helpers/concatenateRowQuery.d.ts +0 -2
  1371. package/script/helpers/concatenateRowQuery.d.ts.map +0 -1
  1372. package/script/helpers/concatenateRowQuery.js +0 -12
  1373. package/script/helpers/convertForJS.d.ts +0 -6
  1374. package/script/helpers/convertForJS.d.ts.map +0 -1
  1375. package/script/helpers/convertForJS.js +0 -44
  1376. package/script/helpers/getName.d.ts +0 -2
  1377. package/script/helpers/getName.d.ts.map +0 -1
  1378. package/script/helpers/getName.js +0 -17
  1379. package/script/helpers/nestQuery.d.ts +0 -2
  1380. package/script/helpers/nestQuery.d.ts.map +0 -1
  1381. package/script/helpers/nestQuery.js +0 -19
  1382. package/script/helpers/repeatRowsQuery.d.ts +0 -4
  1383. package/script/helpers/repeatRowsQuery.d.ts.map +0 -1
  1384. package/script/helpers/repeatRowsQuery.js +0 -11
  1385. package/script/helpers/unnestQuery.d.ts +0 -2
  1386. package/script/helpers/unnestQuery.d.ts.map +0 -1
  1387. package/script/helpers/unnestQuery.js +0 -11
  1388. package/script/helpers/writeIndexes.d.ts +0 -3
  1389. package/script/helpers/writeIndexes.d.ts.map +0 -1
  1390. package/script/helpers/writeIndexes.js +0 -19
  1391. package/script/methods/aggregateGeoQuery.d.ts +0 -5
  1392. package/script/methods/aggregateGeoQuery.d.ts.map +0 -1
  1393. package/script/methods/aggregateGeoQuery.js +0 -31
  1394. package/script/methods/binsQuery.d.ts +0 -5
  1395. package/script/methods/binsQuery.d.ts.map +0 -1
  1396. package/script/methods/binsQuery.js +0 -43
  1397. package/script/methods/boundingBoxQuery.d.ts +0 -4
  1398. package/script/methods/boundingBoxQuery.d.ts.map +0 -1
  1399. package/script/methods/boundingBoxQuery.js +0 -24
  1400. package/script/methods/capitalizeQuery.d.ts +0 -2
  1401. package/script/methods/capitalizeQuery.d.ts.map +0 -1
  1402. package/script/methods/capitalizeQuery.js +0 -11
  1403. package/script/methods/cloneQuery.d.ts +0 -6
  1404. package/script/methods/cloneQuery.d.ts.map +0 -1
  1405. package/script/methods/cloneQuery.js +0 -9
  1406. package/script/methods/concatenateQuery.d.ts +0 -4
  1407. package/script/methods/concatenateQuery.d.ts.map +0 -1
  1408. package/script/methods/concatenateQuery.js +0 -16
  1409. package/script/methods/convertQuery.d.ts +0 -7
  1410. package/script/methods/convertQuery.d.ts.map +0 -1
  1411. package/script/methods/convertQuery.js +0 -84
  1412. package/script/methods/correlationsQuery.d.ts +0 -5
  1413. package/script/methods/correlationsQuery.d.ts.map +0 -1
  1414. package/script/methods/correlationsQuery.js +0 -32
  1415. package/script/methods/crossJoinQuery.d.ts +0 -4
  1416. package/script/methods/crossJoinQuery.d.ts.map +0 -1
  1417. package/script/methods/crossJoinQuery.js +0 -6
  1418. package/script/methods/distanceQuery.d.ts +0 -6
  1419. package/script/methods/distanceQuery.d.ts.map +0 -1
  1420. package/script/methods/distanceQuery.js +0 -47
  1421. package/script/methods/fuzzyJoinQuery.d.ts +0 -2
  1422. package/script/methods/fuzzyJoinQuery.d.ts.map +0 -1
  1423. package/script/methods/fuzzyJoinQuery.js +0 -32
  1424. package/script/methods/getNbCharacters.d.ts +0 -3
  1425. package/script/methods/getNbCharacters.d.ts.map +0 -1
  1426. package/script/methods/getNbCharacters.js +0 -21
  1427. package/script/methods/getNbRows.d.ts +0 -5
  1428. package/script/methods/getNbRows.d.ts.map +0 -1
  1429. package/script/methods/getNbRows.js +0 -21
  1430. package/script/methods/getVar.d.ts +0 -5
  1431. package/script/methods/getVar.d.ts.map +0 -1
  1432. package/script/methods/getVar.js +0 -23
  1433. package/script/methods/insertRowsQuery.d.ts +0 -4
  1434. package/script/methods/insertRowsQuery.d.ts.map +0 -1
  1435. package/script/methods/insertRowsQuery.js +0 -17
  1436. package/script/methods/joinGeoQuery.d.ts +0 -2
  1437. package/script/methods/joinGeoQuery.d.ts.map +0 -1
  1438. package/script/methods/joinGeoQuery.js +0 -58
  1439. package/script/methods/joinQuery.d.ts +0 -2
  1440. package/script/methods/joinQuery.d.ts.map +0 -1
  1441. package/script/methods/joinQuery.js +0 -24
  1442. package/script/methods/keepQuery.d.ts +0 -4
  1443. package/script/methods/keepQuery.d.ts.map +0 -1
  1444. package/script/methods/keepQuery.js +0 -21
  1445. package/script/methods/linearRegressionQuery.d.ts +0 -5
  1446. package/script/methods/linearRegressionQuery.d.ts.map +0 -1
  1447. package/script/methods/linearRegressionQuery.js +0 -43
  1448. package/script/methods/loadDataQuery.d.ts +0 -24
  1449. package/script/methods/loadDataQuery.d.ts.map +0 -1
  1450. package/script/methods/loadDataQuery.js +0 -91
  1451. package/script/methods/lowerQuery.d.ts +0 -2
  1452. package/script/methods/lowerQuery.d.ts.map +0 -1
  1453. package/script/methods/lowerQuery.js +0 -10
  1454. package/script/methods/normalizeQuery.d.ts +0 -5
  1455. package/script/methods/normalizeQuery.d.ts.map +0 -1
  1456. package/script/methods/normalizeQuery.js +0 -28
  1457. package/script/methods/outliersIQRQuery.d.ts +0 -4
  1458. package/script/methods/outliersIQRQuery.d.ts.map +0 -1
  1459. package/script/methods/outliersIQRQuery.js +0 -37
  1460. package/script/methods/padQuery.d.ts +0 -5
  1461. package/script/methods/padQuery.d.ts.map +0 -1
  1462. package/script/methods/padQuery.js +0 -17
  1463. package/script/methods/proportionsHorizontalQuery.d.ts +0 -5
  1464. package/script/methods/proportionsHorizontalQuery.d.ts.map +0 -1
  1465. package/script/methods/proportionsHorizontalQuery.js +0 -18
  1466. package/script/methods/proportionsVerticalQuery.d.ts +0 -5
  1467. package/script/methods/proportionsVerticalQuery.d.ts.map +0 -1
  1468. package/script/methods/proportionsVerticalQuery.js +0 -25
  1469. package/script/methods/quantilesQuery.d.ts +0 -4
  1470. package/script/methods/quantilesQuery.d.ts.map +0 -1
  1471. package/script/methods/quantilesQuery.js +0 -18
  1472. package/script/methods/randomPointQuery.d.ts +0 -2
  1473. package/script/methods/randomPointQuery.d.ts.map +0 -1
  1474. package/script/methods/randomPointQuery.js +0 -69
  1475. package/script/methods/ranksQuery.d.ts +0 -6
  1476. package/script/methods/ranksQuery.d.ts.map +0 -1
  1477. package/script/methods/ranksQuery.js +0 -18
  1478. package/script/methods/removeDuplicatesQuery.d.ts +0 -4
  1479. package/script/methods/removeDuplicatesQuery.d.ts.map +0 -1
  1480. package/script/methods/removeDuplicatesQuery.js +0 -18
  1481. package/script/methods/removeMissingQuery.d.ts +0 -7
  1482. package/script/methods/removeMissingQuery.d.ts.map +0 -1
  1483. package/script/methods/removeMissingQuery.js +0 -46
  1484. package/script/methods/removeQuery.d.ts +0 -4
  1485. package/script/methods/removeQuery.d.ts.map +0 -1
  1486. package/script/methods/removeQuery.js +0 -21
  1487. package/script/methods/renameColumnQuery.d.ts +0 -2
  1488. package/script/methods/renameColumnQuery.d.ts.map +0 -1
  1489. package/script/methods/renameColumnQuery.js +0 -10
  1490. package/script/methods/replaceNullsQuery.d.ts +0 -2
  1491. package/script/methods/replaceNullsQuery.d.ts.map +0 -1
  1492. package/script/methods/replaceNullsQuery.js +0 -16
  1493. package/script/methods/replaceQuery.d.ts +0 -5
  1494. package/script/methods/replaceQuery.d.ts.map +0 -1
  1495. package/script/methods/replaceQuery.js +0 -27
  1496. package/script/methods/rollingQuery.d.ts +0 -5
  1497. package/script/methods/rollingQuery.d.ts.map +0 -1
  1498. package/script/methods/rollingQuery.js +0 -39
  1499. package/script/methods/roundQuery.d.ts +0 -5
  1500. package/script/methods/roundQuery.d.ts.map +0 -1
  1501. package/script/methods/roundQuery.js +0 -19
  1502. package/script/methods/selectRowsQuery.d.ts +0 -5
  1503. package/script/methods/selectRowsQuery.d.ts.map +0 -1
  1504. package/script/methods/selectRowsQuery.js +0 -6
  1505. package/script/methods/sortQuery.d.ts +0 -8
  1506. package/script/methods/sortQuery.d.ts.map +0 -1
  1507. package/script/methods/sortQuery.js +0 -21
  1508. package/script/methods/summarizeQuery.d.ts +0 -7
  1509. package/script/methods/summarizeQuery.d.ts.map +0 -1
  1510. package/script/methods/summarizeQuery.js +0 -115
  1511. package/script/methods/trimQuery.d.ts +0 -5
  1512. package/script/methods/trimQuery.d.ts.map +0 -1
  1513. package/script/methods/trimQuery.js +0 -32
  1514. package/script/methods/truncateQuery.d.ts +0 -2
  1515. package/script/methods/truncateQuery.d.ts.map +0 -1
  1516. package/script/methods/truncateQuery.js +0 -6
  1517. package/script/methods/upperQuery.d.ts +0 -2
  1518. package/script/methods/upperQuery.d.ts.map +0 -1
  1519. package/script/methods/upperQuery.js +0 -10
  1520. package/script/methods/writeDataQuery.d.ts +0 -5
  1521. package/script/methods/writeDataQuery.d.ts.map +0 -1
  1522. package/script/methods/writeDataQuery.js +0 -50
  1523. package/script/methods/writeGeoDataQuery.d.ts +0 -4
  1524. package/script/methods/writeGeoDataQuery.d.ts.map +0 -1
  1525. package/script/methods/writeGeoDataQuery.js +0 -25
  1526. package/script/methods/zScoreQuery.d.ts +0 -5
  1527. package/script/methods/zScoreQuery.d.ts.map +0 -1
  1528. package/script/methods/zScoreQuery.js +0 -29
@@ -0,0 +1,151 @@
1
+ import type { DuckDBValue } from "@duckdb/node-api";
2
+ /**
3
+ * The types of a table's schema, as returned by DESCRIBE: column names mapped
4
+ * to DuckDB types (e.g., { name: "VARCHAR", salary: "BIGINT" }).
5
+ */
6
+ export type TableSchema = {
7
+ [column: string]: string;
8
+ };
9
+ /**
10
+ * A queued operation that can be expressed as a single SELECT over its input.
11
+ * At flush time, consecutive fusable operations on the same table are
12
+ * composed as CTEs into one statement.
13
+ */
14
+ export type FusableOp = {
15
+ kind: "fusable";
16
+ /** The SDA method that queued the operation (e.g., "filter()"). */
17
+ method: string;
18
+ /** The parameters passed to the method, for error reporting. */
19
+ parameters: {
20
+ [key: string]: unknown;
21
+ } | null;
22
+ /**
23
+ * The operation's position in program order across all tables of the
24
+ * database, stamped by queueOp.
25
+ */
26
+ sequence: number;
27
+ /**
28
+ * Whether buildSelect needs the schema of its input relation. When `false`,
29
+ * the flush compiler skips the DESCRIBE round-trip and passes an empty
30
+ * schema.
31
+ */
32
+ needsSchema: boolean;
33
+ /**
34
+ * Whether the SELECT uses spatial functions. The flush compiler loads the
35
+ * spatial extension once per connection before executing such operations.
36
+ */
37
+ needsSpatial?: boolean;
38
+ /**
39
+ * The user-supplied SQL fragments embedded verbatim in the SELECT (e.g.,
40
+ * filter conditions, addColumn definitions). Such SQL can reference tables
41
+ * by name, and names don't follow a fused chain: a subquery on the
42
+ * operation's own table would read the pre-chain state instead of the
43
+ * previous step's output. The flush compiler scans these fragments and
44
+ * executes the operation against materialized tables when they reference
45
+ * one.
46
+ */
47
+ rawSQL?: string[];
48
+ /**
49
+ * Whether the operation's fused segment must be rooted in a materialized
50
+ * table rather than an external source. Used when DuckDB's source execution
51
+ * shape affects an observable result such as deterministic sampled-row
52
+ * order.
53
+ */
54
+ requiresMaterializedInput?: boolean;
55
+ /** Data values bound to placeholders in this operation's SELECT. */
56
+ values?: DuckDBValue[] | ((schema: TableSchema) => DuckDBValue[]);
57
+ /**
58
+ * Whether the SELECT returns exactly the schema of its input (same columns,
59
+ * same types), like `SELECT * REPLACE` with type-preserving expressions.
60
+ * The flush compiler reuses the schema across consecutive
61
+ * schema-preserving operations instead of running a DESCRIBE per step.
62
+ */
63
+ preservesSchema?: boolean;
64
+ /**
65
+ * Derives the output schema from a known input schema without another
66
+ * DESCRIBE query. Used by projections and explicit casts whose output types
67
+ * are fully determined by their arguments.
68
+ */
69
+ outputSchema?: (input: TableSchema) => TableSchema;
70
+ /**
71
+ * Returns a single SELECT statement over `input`, which is either the
72
+ * quoted table name or the alias of the previous CTE in the fused chain.
73
+ */
74
+ buildSelect: (input: string, schema: TableSchema) => string;
75
+ };
76
+ /**
77
+ * A queued operation that starts a fused segment from an external relational
78
+ * source instead of consuming the target table's current contents.
79
+ */
80
+ export type SourceOp = {
81
+ kind: "source";
82
+ /** The SDA method that queued the source (e.g., "loadData()"). */
83
+ method: string;
84
+ /** The parameters passed to the method, for error reporting. */
85
+ parameters: {
86
+ [key: string]: unknown;
87
+ } | null;
88
+ /** The operation's position in database-wide program order. */
89
+ sequence: number;
90
+ /**
91
+ * User-supplied SQL fragments or table names read by the source. They close
92
+ * pending segments for those tables before the source executes.
93
+ */
94
+ rawSQL?: string[];
95
+ /** A schema known from explicit source options, when inference is unnecessary. */
96
+ schema?: TableSchema;
97
+ /** Returns the source as a single composable SELECT statement. */
98
+ buildSelect: () => string;
99
+ };
100
+ /** A relational operation that can participate in a fused segment. */
101
+ export type RelationalOp = SourceOp | FusableOp;
102
+ /**
103
+ * A queued operation that is multi-statement by nature (or otherwise cannot
104
+ * be expressed as a single SELECT). Barriers execute in order between fused
105
+ * segments.
106
+ */
107
+ export type BarrierOp = {
108
+ kind: "barrier";
109
+ /** The SDA method that queued the operation (e.g., "loadData()"). */
110
+ method: string;
111
+ /** The parameters passed to the method, for error reporting. */
112
+ parameters: {
113
+ [key: string]: unknown;
114
+ } | null;
115
+ /**
116
+ * The operation's position in program order across all tables of the
117
+ * database, stamped by queueOp.
118
+ */
119
+ sequence: number;
120
+ /** Executes the operation. */
121
+ execute: () => Promise<void>;
122
+ };
123
+ /**
124
+ * An asynchronous extension barrier whose callback can queue builder methods.
125
+ * Nested operations drain before the callback observes the database and before
126
+ * the original chain continues.
127
+ */
128
+ export type AsyncBarrierOp = {
129
+ kind: "asyncBarrier";
130
+ /** The extension method that queued the operation. */
131
+ method: string;
132
+ /** The parameters passed to the extension method, for error reporting. */
133
+ parameters: {
134
+ [key: string]: unknown;
135
+ } | null;
136
+ /** The operation's position in database-wide program order. */
137
+ sequence: number;
138
+ /** Executes the asynchronous extension operation. */
139
+ execute: () => Promise<void>;
140
+ };
141
+ /**
142
+ * An operation queued by a sync builder or extension method, executed when
143
+ * the pending chains are flushed at an observation point.
144
+ */
145
+ export type PendingOp = RelationalOp | BarrierOp | AsyncBarrierOp;
146
+ /**
147
+ * A pending operation as built by a sync builder or extension method, before
148
+ * queueOp stamps it with its program-order sequence.
149
+ */
150
+ export type PendingOpInput = Omit<FusableOp, "sequence"> | Omit<SourceOp, "sequence"> | Omit<BarrierOp, "sequence"> | Omit<AsyncBarrierOp, "sequence">;
151
+ //# sourceMappingURL=pendingOps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pendingOps.d.ts","sourceRoot":"","sources":["../../src/helpers/pendingOps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG;IAAE,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC;AAEvD;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,SAAS,CAAC;IAChB,mEAAmE;IACnE,MAAM,EAAE,MAAM,CAAC;IACf,gEAAgE;IAChE,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IAC9C;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,WAAW,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB;;;;;OAKG;IACH,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,oEAAoE;IACpE,MAAM,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,KAAK,WAAW,EAAE,CAAC,CAAC;IAClE;;;;;OAKG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,WAAW,CAAC;IACnD;;;OAGG;IACH,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,KAAK,MAAM,CAAC;CAC7D,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,EAAE,QAAQ,CAAC;IACf,kEAAkE;IAClE,MAAM,EAAE,MAAM,CAAC;IACf,gEAAgE;IAChE,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IAC9C,+DAA+D;IAC/D,QAAQ,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,kFAAkF;IAClF,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,kEAAkE;IAClE,WAAW,EAAE,MAAM,MAAM,CAAC;CAC3B,CAAC;AAEF,sEAAsE;AACtE,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEhD;;;;GAIG;AACH,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,SAAS,CAAC;IAChB,qEAAqE;IACrE,MAAM,EAAE,MAAM,CAAC;IACf,gEAAgE;IAChE,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IAC9C;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB,8BAA8B;IAC9B,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,cAAc,CAAC;IACrB,sDAAsD;IACtD,MAAM,EAAE,MAAM,CAAC;IACf,0EAA0E;IAC1E,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IAC9C,+DAA+D;IAC/D,QAAQ,EAAE,MAAM,CAAC;IACjB,qDAAqD;IACrD,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,SAAS,GAAG,YAAY,GAAG,SAAS,GAAG,cAAc,CAAC;AAElE;;;GAGG;AACH,MAAM,MAAM,cAAc,GACtB,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,GAC3B,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,GAC1B,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,GAC3B,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,4 @@
1
+ import type SimpleDB from "../class/SimpleDB.js";
2
+ import type { IndexDefinition } from "./indexDefinitions.js";
3
+ export default function prepareDbExtensions(sdb: SimpleDB, database: string, indexes: Record<string, IndexDefinition[]>): Promise<void>;
4
+ //# sourceMappingURL=prepareDbExtensions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prepareDbExtensions.d.ts","sourceRoot":"","sources":["../../src/helpers/prepareDbExtensions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAC;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAG7D,wBAA8B,mBAAmB,CAC/C,GAAG,EAAE,QAAQ,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,GACzC,OAAO,CAAC,IAAI,CAAC,CAiDf"}
@@ -0,0 +1,22 @@
1
+ import queryDbFile from "./queryDbFile.js";
2
+ import parseValue from "./parseValue.js";
3
+ export default async function prepareDbExtensions(sdb, database, indexes) {
4
+ const definitions = Object.values(indexes).flat();
5
+ const physicalIndexes = await queryDbFile(sdb, `SELECT sql FROM duckdb_indexes() WHERE database_name = ${parseValue(database)};`, { returnData: true });
6
+ if (definitions.some((index) => index.kind === "vss") ||
7
+ physicalIndexes.some((index) => /\bUSING\s+HNSW\b/i.test(String(index.sql)))) {
8
+ await queryDbFile(sdb, "INSTALL vss; LOAD vss; SET hnsw_enable_experimental_persistence = true;");
9
+ }
10
+ const ftsSchemas = await queryDbFile(sdb, `SELECT schema_name FROM duckdb_schemas() WHERE database_name = ${parseValue(database)} AND starts_with(schema_name, 'fts_');`, { returnData: true });
11
+ if (definitions.some((index) => index.kind === "fts") || ftsSchemas.length > 0) {
12
+ await queryDbFile(sdb, "INSTALL fts; LOAD fts;");
13
+ }
14
+ if (!sdb.spatialLoaded) {
15
+ const geometryColumns = await queryDbFile(sdb, `SELECT column_name FROM duckdb_columns()
16
+ WHERE database_name = ${parseValue(database)} AND data_type ILIKE '%GEOMETRY%' LIMIT 1;`, { returnData: true });
17
+ if (geometryColumns.length > 0) {
18
+ await queryDbFile(sdb, "INSTALL spatial; LOAD spatial; SET geometry_always_xy = true;");
19
+ sdb.spatialLoaded = true;
20
+ }
21
+ }
22
+ }
@@ -0,0 +1,11 @@
1
+ import type { DuckDBValue } from "@duckdb/node-api";
2
+ export type ValueFilter = {
3
+ column: string;
4
+ values: DuckDBValue[];
5
+ includesNull: boolean;
6
+ };
7
+ /** Converts column filter values to bindable values while tracking nulls. */
8
+ export default function prepareValueFilters(columnsAndValues: {
9
+ [key: string]: unknown;
10
+ }): ValueFilter[];
11
+ //# sourceMappingURL=prepareValueFilters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prepareValueFilters.d.ts","sourceRoot":"","sources":["../../src/helpers/prepareValueFilters.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAGpD,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF,6EAA6E;AAC7E,MAAM,CAAC,OAAO,UAAU,mBAAmB,CACzC,gBAAgB,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,GAC3C,WAAW,EAAE,CAWf"}
@@ -0,0 +1,12 @@
1
+ import toDuckDBValue from "./toDuckDBValue.js";
2
+ /** Converts column filter values to bindable values while tracking nulls. */
3
+ export default function prepareValueFilters(columnsAndValues) {
4
+ return Object.entries(columnsAndValues).map(([column, value]) => {
5
+ const boundValues = (Array.isArray(value) ? value : [value]).map(toDuckDBValue);
6
+ return {
7
+ column,
8
+ values: boundValues.filter((boundValue) => boundValue !== null),
9
+ includesNull: boundValues.some((boundValue) => boundValue === null),
10
+ };
11
+ });
12
+ }
@@ -1,19 +1,54 @@
1
+ import type { DuckDBValue as NativeDuckDBValue } from "@duckdb/node-api";
1
2
  import SimpleTable from "../class/SimpleTable.js";
2
3
  import SimpleDB from "../class/SimpleDB.js";
4
+ /** @internal DuckDB owns this type; retain its exact binding contract without re-exporting it. */
5
+ type DuckDBValue = NativeDuckDBValue;
6
+ /**
7
+ * Executes SQL for a table or database after flushing all queued operations.
8
+ * Starts the database on first use and applies its SQL logging settings.
9
+ * Extension authors can construct `options` with `mergeOptions()`.
10
+ *
11
+ * @param simple - The table or database that owns the query.
12
+ * @param query - The SQL statement to execute.
13
+ * @param options - Query execution and diagnostic settings.
14
+ * @param options.table - The table name used for diagnostics, or `null`.
15
+ * @param options.method - The calling method used for diagnostics, or `null`.
16
+ * @param options.parameters - Arguments included in error diagnostics, or `null`.
17
+ * @param options.rowsToLog - The caller's row-display limit, retained for compatibility.
18
+ * @param options.charsToLog - The caller's per-cell display limit, retained for compatibility.
19
+ * @param options.returnData - Whether to convert and return the result rows.
20
+ * @param options.values - DuckDB-native values bound to SQL placeholders, in order.
21
+ * @param options.noClean - Whether to preserve the SQL text without cleaning it.
22
+ * @returns Converted rows when `returnData` is true, otherwise `null`.
23
+ *
24
+ * @example
25
+ * ```ts
26
+ * import { mergeOptions, queryDB, quoteIdentifier } from "@nshiab/simple-data-analysis-core/helpers";
27
+ *
28
+ * await table.loadArray([{ answer: 0 }]).run();
29
+ * const query = `UPDATE ${quoteIdentifier(table.name)} SET answer = ?`;
30
+ * await queryDB(table, query, mergeOptions(table, {
31
+ * table: table.name,
32
+ * method: "example()",
33
+ * parameters: null,
34
+ * values: [42],
35
+ * }));
36
+ * await table.log();
37
+ * ```
38
+ */
3
39
  export default function queryDB(simple: SimpleTable | SimpleDB, query: string, options: {
4
40
  table: string | null;
5
41
  method: string | null;
6
42
  parameters: {
7
43
  [key: string]: unknown;
8
44
  } | null;
9
- nbRowsToLog: number;
10
- nbCharactersToLog: number | undefined;
11
- returnDataFrom: "query" | "none";
12
- debug: boolean;
13
- types?: {
14
- [key: string]: string;
15
- };
45
+ rowsToLog: number;
46
+ charsToLog: number | undefined;
47
+ returnData: boolean;
48
+ values?: DuckDBValue[];
49
+ noClean?: boolean;
16
50
  }): Promise<{
17
- [key: string]: string | number | boolean | Date | null;
51
+ [key: string]: unknown;
18
52
  }[] | null>;
53
+ export {};
19
54
  //# sourceMappingURL=queryDB.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"queryDB.d.ts","sourceRoot":"","sources":["../../src/helpers/queryDB.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,yBAAyB,CAAC;AAClD,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAG5C,wBAA8B,OAAO,CACnC,MAAM,EAAE,WAAW,GAAG,QAAQ,EAC9B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE;IACP,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IAC9C,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,cAAc,EAAE,OAAO,GAAG,MAAM,CAAC;IACjC,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CACnC,GACA,OAAO,CACN;IACA,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC;CACxD,EAAE,GACD,IAAI,CACP,CA+DA"}
1
+ {"version":3,"file":"queryDB.d.ts","sourceRoot":"","sources":["../../src/helpers/queryDB.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,IAAI,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,WAAW,MAAM,yBAAyB,CAAC;AAClD,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAK5C,kGAAkG;AAClG,KAAK,WAAW,GAAG,iBAAiB,CAAC;AAErC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAA8B,OAAO,CACnC,MAAM,EAAE,WAAW,GAAG,QAAQ,EAC9B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE;IACP,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IAC9C,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,GACA,OAAO,CACN;IACA,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB,EAAE,GACD,IAAI,CACP,CAuDA"}
@@ -1,7 +1,49 @@
1
1
  import SimpleTable from "../class/SimpleTable.js";
2
2
  import SimpleDB from "../class/SimpleDB.js";
3
3
  import cleanSQL from "./cleanSQL.js";
4
+ import flushAllTables from "./flushAllTables.js";
5
+ import { recordCacheTableAccess } from "./cacheTableDependencies.js";
6
+ /**
7
+ * Executes SQL for a table or database after flushing all queued operations.
8
+ * Starts the database on first use and applies its SQL logging settings.
9
+ * Extension authors can construct `options` with `mergeOptions()`.
10
+ *
11
+ * @param simple - The table or database that owns the query.
12
+ * @param query - The SQL statement to execute.
13
+ * @param options - Query execution and diagnostic settings.
14
+ * @param options.table - The table name used for diagnostics, or `null`.
15
+ * @param options.method - The calling method used for diagnostics, or `null`.
16
+ * @param options.parameters - Arguments included in error diagnostics, or `null`.
17
+ * @param options.rowsToLog - The caller's row-display limit, retained for compatibility.
18
+ * @param options.charsToLog - The caller's per-cell display limit, retained for compatibility.
19
+ * @param options.returnData - Whether to convert and return the result rows.
20
+ * @param options.values - DuckDB-native values bound to SQL placeholders, in order.
21
+ * @param options.noClean - Whether to preserve the SQL text without cleaning it.
22
+ * @returns Converted rows when `returnData` is true, otherwise `null`.
23
+ *
24
+ * @example
25
+ * ```ts
26
+ * import { mergeOptions, queryDB, quoteIdentifier } from "@nshiab/simple-data-analysis-core/helpers";
27
+ *
28
+ * await table.loadArray([{ answer: 0 }]).run();
29
+ * const query = `UPDATE ${quoteIdentifier(table.name)} SET answer = ?`;
30
+ * await queryDB(table, query, mergeOptions(table, {
31
+ * table: table.name,
32
+ * method: "example()",
33
+ * parameters: null,
34
+ * values: [42],
35
+ * }));
36
+ * await table.log();
37
+ * ```
38
+ */
4
39
  export default async function queryDB(simple, query, options) {
40
+ if (simple instanceof SimpleTable) {
41
+ recordCacheTableAccess(simple);
42
+ }
43
+ const sdb = simple instanceof SimpleTable ? simple.sdb : simple;
44
+ if (sdb.lifecycleState === "closed") {
45
+ throw new Error(`${options.method ?? "The query"} cannot run because its SimpleDB is closed.`);
46
+ }
5
47
  if (simple instanceof SimpleDB && simple.connection === undefined) {
6
48
  await simple.start();
7
49
  }
@@ -14,49 +56,26 @@ export default async function queryDB(simple, query, options) {
14
56
  if (simple.connection === undefined) {
15
57
  throw new Error("simple.connection is undefined");
16
58
  }
17
- query = cleanSQL(query);
18
- if (options.debug) {
19
- // We beautify it a little bit
20
- if (query.at(-1) !== ";") {
21
- query += ";";
22
- }
23
- if (query.includes("\n")) {
24
- query = query
25
- .trim()
26
- .split("\n")
27
- .map((line) => line.trim())
28
- .filter((line) => line !== "" && line !== ";")
29
- .join("\n");
30
- }
31
- console.log(query);
32
- }
33
- let data = null;
34
- if (options.returnDataFrom === "none") {
35
- await simple.runQuery(query, simple.connection, false, options);
36
- }
37
- else if (options.returnDataFrom === "query") {
38
- data = await simple.runQuery(query, simple.connection, true, {
39
- ...options,
40
- // To convert dates and bigInts to numbers
41
- types: options.method !== "getTypes()"
42
- ? options.types
43
- ? options.types
44
- : simple instanceof SimpleTable
45
- ? await simple.getTypes()
46
- : undefined
47
- : undefined,
48
- });
49
- }
50
- else {
51
- throw new Error(`Unknown ${options.returnDataFrom} options.returnDataFrom`);
59
+ // Observing executes: any query touching the database first flushes the
60
+ // operations queued by sync builder methods, preserving program order.
61
+ await flushAllTables(simple instanceof SimpleTable ? simple.sdb : simple);
62
+ if (options.noClean !== true) {
63
+ query = cleanSQL(query);
52
64
  }
53
- if (options.returnDataFrom === "query") {
65
+ const executionOptions = {
66
+ ...options,
67
+ logSQL: sdb.logSQL,
68
+ explainSQL: sdb.explainSQL,
69
+ };
70
+ if (options.returnData) {
71
+ const data = await simple.runQuery(query, simple.connection, true, executionOptions);
54
72
  if (data === null) {
55
73
  throw new Error("data is null");
56
74
  }
57
75
  return data;
58
76
  }
59
77
  else {
78
+ await simple.runQuery(query, simple.connection, false, executionOptions);
60
79
  return null;
61
80
  }
62
81
  }
@@ -0,0 +1,8 @@
1
+ import type SimpleDB from "../class/SimpleDB.js";
2
+ /** Executes generated database-file SQL without rewriting paths or metadata. */
3
+ export default function queryDbFile(sdb: SimpleDB, sql: string, options?: {
4
+ returnData?: boolean;
5
+ }): Promise<{
6
+ [key: string]: unknown;
7
+ }[] | null>;
8
+ //# sourceMappingURL=queryDbFile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queryDbFile.d.ts","sourceRoot":"","sources":["../../src/helpers/queryDbFile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAC;AAIjD,gFAAgF;AAChF,MAAM,CAAC,OAAO,UAAU,WAAW,CACjC,GAAG,EAAE,QAAQ,EACb,GAAG,EAAE,MAAM,EACX,OAAO,GAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAO;;YAavC"}
@@ -0,0 +1,12 @@
1
+ import queryDB from "./queryDB.js";
2
+ import mergeOptions from "./mergeOptions.js";
3
+ /** Executes generated database-file SQL without rewriting paths or metadata. */
4
+ export default function queryDbFile(sdb, sql, options = {}) {
5
+ return queryDB(sdb, sql, mergeOptions(sdb, {
6
+ table: null,
7
+ method: "database file operation",
8
+ parameters: null,
9
+ returnData: options.returnData,
10
+ noClean: true,
11
+ }));
12
+ }
@@ -0,0 +1,47 @@
1
+ import type SimpleTable from "../class/SimpleTable.js";
2
+ /**
3
+ * Queues asynchronous extension work as one ordered table-builder step.
4
+ * Builder operations queued by `execute` are scoped to the barrier and drain
5
+ * before its observer queries and before later chained operations.
6
+ *
7
+ * `execute` must await all asynchronous work that can queue table operations.
8
+ * Detached work is outside the barrier's program-order scope.
9
+ *
10
+ * If `execute` rejects, captured builder operations that have not already
11
+ * drained are discarded. Operations drained by an observer inside `execute`
12
+ * remain applied; an asynchronous barrier does not provide database rollback.
13
+ *
14
+ * @param simpleTable - The table whose chain owns the asynchronous work.
15
+ * @param operation - The asynchronous extension operation to queue.
16
+ * @param operation.method - The public method name used for diagnostics.
17
+ * @param operation.parameters - A snapshot of the public method parameters used for diagnostics.
18
+ * @param operation.execute - The asynchronous work to run at the barrier's position in the chain.
19
+ * @returns Nothing. The public builder should return its target table.
20
+ *
21
+ * @example
22
+ * ```ts
23
+ * import type { SimpleTable } from "@nshiab/simple-data-analysis-core";
24
+ * import { queueAsyncBarrier } from "@nshiab/simple-data-analysis-core/helpers";
25
+ *
26
+ * function loadRemote(table: SimpleTable, url: string): SimpleTable {
27
+ * queueAsyncBarrier(table, {
28
+ * method: "loadRemote()",
29
+ * parameters: { url },
30
+ * execute: async () => {
31
+ * const rows = await fetch(url).then((response) => response.json()) as
32
+ * { [key: string]: unknown }[];
33
+ * table.loadArray(rows);
34
+ * },
35
+ * });
36
+ * return table;
37
+ * }
38
+ * ```
39
+ */
40
+ export default function queueAsyncBarrier(simpleTable: SimpleTable, operation: {
41
+ method: string;
42
+ parameters: {
43
+ [key: string]: unknown;
44
+ } | null;
45
+ execute: () => Promise<void>;
46
+ }): void;
47
+ //# sourceMappingURL=queueAsyncBarrier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queueAsyncBarrier.d.ts","sourceRoot":"","sources":["../../src/helpers/queueAsyncBarrier.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,yBAAyB,CAAC;AAGvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAM,CAAC,OAAO,UAAU,iBAAiB,CACvC,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE;IACT,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IAC9C,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B,GACA,IAAI,CAKN"}
@@ -0,0 +1,45 @@
1
+ import queueOp from "./queueOp.js";
2
+ /**
3
+ * Queues asynchronous extension work as one ordered table-builder step.
4
+ * Builder operations queued by `execute` are scoped to the barrier and drain
5
+ * before its observer queries and before later chained operations.
6
+ *
7
+ * `execute` must await all asynchronous work that can queue table operations.
8
+ * Detached work is outside the barrier's program-order scope.
9
+ *
10
+ * If `execute` rejects, captured builder operations that have not already
11
+ * drained are discarded. Operations drained by an observer inside `execute`
12
+ * remain applied; an asynchronous barrier does not provide database rollback.
13
+ *
14
+ * @param simpleTable - The table whose chain owns the asynchronous work.
15
+ * @param operation - The asynchronous extension operation to queue.
16
+ * @param operation.method - The public method name used for diagnostics.
17
+ * @param operation.parameters - A snapshot of the public method parameters used for diagnostics.
18
+ * @param operation.execute - The asynchronous work to run at the barrier's position in the chain.
19
+ * @returns Nothing. The public builder should return its target table.
20
+ *
21
+ * @example
22
+ * ```ts
23
+ * import type { SimpleTable } from "@nshiab/simple-data-analysis-core";
24
+ * import { queueAsyncBarrier } from "@nshiab/simple-data-analysis-core/helpers";
25
+ *
26
+ * function loadRemote(table: SimpleTable, url: string): SimpleTable {
27
+ * queueAsyncBarrier(table, {
28
+ * method: "loadRemote()",
29
+ * parameters: { url },
30
+ * execute: async () => {
31
+ * const rows = await fetch(url).then((response) => response.json()) as
32
+ * { [key: string]: unknown }[];
33
+ * table.loadArray(rows);
34
+ * },
35
+ * });
36
+ * return table;
37
+ * }
38
+ * ```
39
+ */
40
+ export default function queueAsyncBarrier(simpleTable, operation) {
41
+ queueOp(simpleTable, {
42
+ kind: "asyncBarrier",
43
+ ...operation,
44
+ });
45
+ }
@@ -0,0 +1,18 @@
1
+ import type SimpleDB from "../class/SimpleDB.js";
2
+ import type SimpleTable from "../class/SimpleTable.js";
3
+ import type { PendingOpInput } from "./pendingOps.js";
4
+ /**
5
+ * Queues an internal relational operation, barrier, or asynchronous barrier.
6
+ *
7
+ * @internal
8
+ */
9
+ export default function queueOp(simpleTable: SimpleTable, op: PendingOpInput): void;
10
+ /**
11
+ * Empties every table's pending queue without executing it and returns what
12
+ * was dropped, so close() can report forgotten work after cleaning up.
13
+ */
14
+ export declare function discardAllPending(sdb: SimpleDB): {
15
+ table: SimpleTable;
16
+ methods: string[];
17
+ }[];
18
+ //# sourceMappingURL=queueOp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queueOp.d.ts","sourceRoot":"","sources":["../../src/helpers/queueOp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAC;AACjD,OAAO,KAAK,WAAW,MAAM,yBAAyB,CAAC;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAMtD;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,OAAO,CAC7B,WAAW,EAAE,WAAW,EACxB,EAAE,EAAE,cAAc,GACjB,IAAI,CA8CN;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,QAAQ,GACZ;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,EAAE,CAa7C"}
@@ -0,0 +1,70 @@
1
+ import { ensureTableRegistered, getRegisteredTables } from "./tableRegistry.js";
2
+ import { markTableChanged } from "./tableGeneration.js";
3
+ import { recordCacheTableReferences } from "./cacheTableDependencies.js";
4
+ import { captureAsyncOperation } from "./asyncOperationContext.js";
5
+ /**
6
+ * Queues an internal relational operation, barrier, or asynchronous barrier.
7
+ *
8
+ * @internal
9
+ */
10
+ export default function queueOp(simpleTable, op) {
11
+ const sdb = simpleTable.sdb;
12
+ if (sdb.lifecycleState !== "open") {
13
+ throw new Error(`${op.method} cannot queue work because its SimpleDB is ${sdb.lifecycleState}.`);
14
+ }
15
+ let capturedOp = {
16
+ ...op,
17
+ parameters: op.parameters === null ? null : structuredClone(op.parameters),
18
+ };
19
+ if (capturedOp.kind === "fusable" || capturedOp.kind === "source") {
20
+ capturedOp = {
21
+ ...capturedOp,
22
+ rawSQL: capturedOp.rawSQL === undefined
23
+ ? undefined
24
+ : [...capturedOp.rawSQL],
25
+ };
26
+ if (capturedOp.rawSQL !== undefined) {
27
+ recordCacheTableReferences(simpleTable, capturedOp.rawSQL);
28
+ }
29
+ }
30
+ if (capturedOp.kind === "fusable" &&
31
+ capturedOp.values !== undefined &&
32
+ typeof capturedOp.values !== "function") {
33
+ capturedOp = {
34
+ ...capturedOp,
35
+ values: [...capturedOp.values],
36
+ };
37
+ }
38
+ // A table de-registered by removeTable()/removeTables()/selectTables() that
39
+ // queues new work comes back under the flush's responsibility, like v1
40
+ // methods recreating a removed table.
41
+ ensureTableRegistered(sdb, simpleTable);
42
+ markTableChanged(simpleTable);
43
+ const queuedOp = {
44
+ ...capturedOp,
45
+ sequence: sdb.opSequence++,
46
+ };
47
+ if (captureAsyncOperation(sdb, { table: simpleTable, op: queuedOp })) {
48
+ return;
49
+ }
50
+ simpleTable.pendingOps.push(queuedOp);
51
+ sdb.pendingCount++;
52
+ }
53
+ /**
54
+ * Empties every table's pending queue without executing it and returns what
55
+ * was dropped, so close() can report forgotten work after cleaning up.
56
+ */
57
+ export function discardAllPending(sdb) {
58
+ const discarded = [];
59
+ for (const table of getRegisteredTables(sdb)) {
60
+ if (table.pendingOps.length > 0) {
61
+ discarded.push({
62
+ table,
63
+ methods: table.pendingOps.map((op) => op.method),
64
+ });
65
+ sdb.pendingCount -= table.pendingOps.length;
66
+ table.pendingOps.length = 0;
67
+ }
68
+ }
69
+ return discarded;
70
+ }
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Quotes one SQL identifier and escapes embedded double quotes.
3
+ * Use this for library-generated table, column, schema, database, and alias
4
+ * names. User-authored SQL expressions must remain unmodified.
5
+ *
6
+ * @param identifier - The identifier to quote.
7
+ * @returns The identifier wrapped in double quotes with embedded quotes doubled.
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * quoteIdentifier('people "archive"');
12
+ * // '"people ""archive"""'
13
+ * ```
14
+ */
15
+ export default function quoteIdentifier(identifier: string): string;
16
+ //# sourceMappingURL=quoteIdentifier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quoteIdentifier.d.ts","sourceRoot":"","sources":["../../src/helpers/quoteIdentifier.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAElE"}