@nshiab/simple-data-analysis-core 1.0.1 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +124 -14
- package/esm/_dnt.polyfills.d.ts +7 -0
- package/esm/_dnt.polyfills.d.ts.map +1 -0
- package/esm/_dnt.polyfills.js +1 -0
- package/esm/class/SDAError.d.ts +63 -0
- package/esm/class/SDAError.d.ts.map +1 -0
- package/esm/class/SDAError.js +83 -0
- package/esm/class/Simple.d.ts +40 -22
- package/esm/class/Simple.d.ts.map +1 -1
- package/esm/class/Simple.js +33 -20
- package/esm/class/SimpleDB.d.ts +247 -103
- package/esm/class/SimpleDB.d.ts.map +1 -1
- package/esm/class/SimpleDB.js +483 -298
- package/esm/class/SimpleTable.d.ts +1804 -940
- package/esm/class/SimpleTable.d.ts.map +1 -1
- package/esm/class/SimpleTable.js +1946 -1825
- package/esm/helpers/assertColumnsExist.d.ts +16 -0
- package/esm/helpers/assertColumnsExist.d.ts.map +1 -0
- package/esm/helpers/assertColumnsExist.js +21 -0
- package/esm/helpers/assertNewColumns.d.ts +17 -0
- package/esm/helpers/assertNewColumns.d.ts.map +1 -0
- package/esm/helpers/assertNewColumns.js +22 -0
- package/esm/helpers/assertSameDatabase.d.ts +11 -0
- package/esm/helpers/assertSameDatabase.d.ts.map +1 -0
- package/esm/helpers/assertSameDatabase.js +13 -0
- package/esm/helpers/asyncOperationContext.d.ts +19 -0
- package/esm/helpers/asyncOperationContext.d.ts.map +1 -0
- package/esm/helpers/asyncOperationContext.js +38 -0
- package/esm/helpers/buildFuzzyMatchSql.d.ts +9 -0
- package/esm/helpers/buildFuzzyMatchSql.d.ts.map +1 -0
- package/esm/helpers/buildFuzzyMatchSql.js +17 -0
- package/esm/helpers/cacheDatabase.d.ts +5 -0
- package/esm/helpers/cacheDatabase.d.ts.map +1 -0
- package/esm/helpers/cacheDatabase.js +110 -0
- package/esm/helpers/cacheDiagnostics.d.ts +4 -0
- package/esm/helpers/cacheDiagnostics.d.ts.map +1 -0
- package/esm/helpers/cacheDiagnostics.js +21 -0
- package/esm/helpers/cacheTableDependencies.d.ts +19 -0
- package/esm/helpers/cacheTableDependencies.d.ts.map +1 -0
- package/esm/helpers/cacheTableDependencies.js +117 -0
- package/esm/helpers/cleanCache.js +1 -1
- package/esm/helpers/createDirectory.d.ts +13 -0
- package/esm/helpers/createDirectory.d.ts.map +1 -1
- package/esm/helpers/createDirectory.js +13 -0
- package/esm/helpers/ensureSpatial.d.ts +7 -0
- package/esm/helpers/ensureSpatial.d.ts.map +1 -0
- package/esm/helpers/ensureSpatial.js +17 -0
- package/esm/helpers/extractTypes.d.ts +1 -1
- package/esm/helpers/extractTypes.d.ts.map +1 -1
- package/esm/helpers/extractZipEntryToFile.d.ts +3 -0
- package/esm/helpers/extractZipEntryToFile.d.ts.map +1 -0
- package/esm/helpers/extractZipEntryToFile.js +226 -0
- package/esm/helpers/fileCache.d.ts +15 -0
- package/esm/helpers/fileCache.d.ts.map +1 -0
- package/esm/helpers/fileCache.js +128 -0
- package/esm/helpers/findGeoColumn.d.ts +13 -1
- package/esm/helpers/findGeoColumn.d.ts.map +1 -1
- package/esm/helpers/findGeoColumn.js +15 -17
- package/esm/helpers/findGeoColumnFromSchema.d.ts +20 -0
- package/esm/helpers/findGeoColumnFromSchema.d.ts.map +1 -0
- package/esm/helpers/findGeoColumnFromSchema.js +28 -0
- package/esm/helpers/flushAllTables.d.ts +23 -0
- package/esm/helpers/flushAllTables.d.ts.map +1 -0
- package/esm/helpers/flushAllTables.js +411 -0
- package/esm/helpers/formatMissingTables.d.ts +19 -0
- package/esm/helpers/formatMissingTables.d.ts.map +1 -0
- package/esm/helpers/formatMissingTables.js +29 -0
- package/esm/helpers/getCurrentDatabase.d.ts +3 -0
- package/esm/helpers/getCurrentDatabase.d.ts.map +1 -0
- package/esm/helpers/getCurrentDatabase.js +7 -0
- package/esm/helpers/getDbFileType.d.ts +2 -0
- package/esm/helpers/getDbFileType.d.ts.map +1 -0
- package/esm/helpers/getDbFileType.js +9 -0
- package/esm/helpers/getDbIndexes.d.ts +4 -0
- package/esm/helpers/getDbIndexes.d.ts.map +1 -0
- package/esm/helpers/getDbIndexes.js +4 -0
- package/esm/helpers/getStatExpression.d.ts +10 -0
- package/esm/helpers/getStatExpression.d.ts.map +1 -0
- package/esm/helpers/getStatExpression.js +75 -0
- package/esm/helpers/index.d.ts +3 -0
- package/esm/helpers/index.d.ts.map +1 -1
- package/esm/helpers/index.js +3 -0
- package/esm/helpers/indexDefinitions.d.ts +30 -0
- package/esm/helpers/indexDefinitions.d.ts.map +1 -0
- package/esm/helpers/indexDefinitions.js +7 -0
- package/esm/helpers/indexQueries.d.ts +3 -0
- package/esm/helpers/indexQueries.d.ts.map +1 -0
- package/esm/helpers/indexQueries.js +36 -0
- package/esm/helpers/keepNumericalColumns.d.ts.map +1 -1
- package/esm/helpers/keepNumericalColumns.js +4 -5
- package/esm/helpers/loadOsmFile.d.ts +10 -0
- package/esm/helpers/loadOsmFile.d.ts.map +1 -0
- package/esm/helpers/loadOsmFile.js +28 -0
- package/esm/helpers/logData.d.ts +2 -2
- package/esm/helpers/logData.d.ts.map +1 -1
- package/esm/helpers/logData.js +6 -6
- package/esm/helpers/mergeOptions.d.ts +47 -15
- package/esm/helpers/mergeOptions.d.ts.map +1 -1
- package/esm/helpers/mergeOptions.js +35 -5
- package/esm/helpers/observeQuery.d.ts +9 -0
- package/esm/helpers/observeQuery.d.ts.map +1 -0
- package/esm/helpers/observeQuery.js +49 -0
- package/esm/helpers/osmCache.d.ts +16 -0
- package/esm/helpers/osmCache.d.ts.map +1 -0
- package/esm/helpers/osmCache.js +41 -0
- package/esm/helpers/osmFiles.d.ts +9 -0
- package/esm/helpers/osmFiles.d.ts.map +1 -0
- package/esm/helpers/osmFiles.js +52 -0
- package/esm/helpers/parseDuckDBType.d.ts +1 -1
- package/esm/helpers/parseValue.d.ts +16 -0
- package/esm/helpers/parseValue.d.ts.map +1 -1
- package/esm/helpers/parseValue.js +17 -1
- package/esm/helpers/pendingOps.d.ts +151 -0
- package/esm/helpers/pendingOps.d.ts.map +1 -0
- package/esm/helpers/pendingOps.js +1 -0
- package/esm/helpers/prepareDbExtensions.d.ts +4 -0
- package/esm/helpers/prepareDbExtensions.d.ts.map +1 -0
- package/esm/helpers/prepareDbExtensions.js +22 -0
- package/esm/helpers/prepareValueFilters.d.ts +11 -0
- package/esm/helpers/prepareValueFilters.d.ts.map +1 -0
- package/esm/helpers/prepareValueFilters.js +12 -0
- package/esm/helpers/queryDB.d.ts +43 -8
- package/esm/helpers/queryDB.d.ts.map +1 -1
- package/esm/helpers/queryDB.js +55 -36
- package/esm/helpers/queryDbFile.d.ts +8 -0
- package/esm/helpers/queryDbFile.d.ts.map +1 -0
- package/esm/helpers/queryDbFile.js +12 -0
- package/esm/helpers/queueAsyncBarrier.d.ts +47 -0
- package/esm/helpers/queueAsyncBarrier.d.ts.map +1 -0
- package/esm/helpers/queueAsyncBarrier.js +45 -0
- package/esm/helpers/queueOp.d.ts +18 -0
- package/esm/helpers/queueOp.d.ts.map +1 -0
- package/esm/helpers/queueOp.js +70 -0
- package/esm/helpers/quoteIdentifier.d.ts +16 -0
- package/esm/helpers/quoteIdentifier.d.ts.map +1 -0
- package/esm/helpers/quoteIdentifier.js +17 -0
- package/esm/helpers/quoteQualifiedIdentifier.d.ts +18 -0
- package/esm/helpers/quoteQualifiedIdentifier.d.ts.map +1 -0
- package/esm/helpers/quoteQualifiedIdentifier.js +20 -0
- package/esm/helpers/readDbMetadata.d.ts +5 -0
- package/esm/helpers/readDbMetadata.d.ts.map +1 -0
- package/esm/helpers/readDbMetadata.js +55 -0
- package/esm/helpers/removeColumnsNow.d.ts +8 -0
- package/esm/helpers/removeColumnsNow.d.ts.map +1 -0
- package/esm/helpers/removeColumnsNow.js +15 -0
- package/esm/helpers/resolveOutputTable.d.ts +9 -0
- package/esm/helpers/resolveOutputTable.d.ts.map +1 -0
- package/esm/helpers/resolveOutputTable.js +14 -0
- package/esm/helpers/runQuery.d.ts +11 -8
- package/esm/helpers/runQuery.d.ts.map +1 -1
- package/esm/helpers/runQuery.js +118 -15
- package/esm/helpers/serializeCacheInputs.d.ts +8 -0
- package/esm/helpers/serializeCacheInputs.d.ts.map +1 -0
- package/esm/helpers/serializeCacheInputs.js +113 -0
- package/esm/helpers/setDbProps.d.ts +4 -1
- package/esm/helpers/setDbProps.d.ts.map +1 -1
- package/esm/helpers/setDbProps.js +17 -15
- package/esm/helpers/statCanCache.d.ts +6 -0
- package/esm/helpers/statCanCache.d.ts.map +1 -0
- package/esm/helpers/statCanCache.js +38 -0
- package/esm/helpers/stringToArray.d.ts +14 -0
- package/esm/helpers/stringToArray.d.ts.map +1 -1
- package/esm/helpers/stringToArray.js +15 -1
- package/esm/helpers/tableGeneration.d.ts +18 -0
- package/esm/helpers/tableGeneration.d.ts.map +1 -0
- package/esm/helpers/tableGeneration.js +29 -0
- package/esm/helpers/tableRegistry.d.ts +9 -0
- package/esm/helpers/tableRegistry.d.ts.map +1 -0
- package/esm/helpers/tableRegistry.js +46 -0
- package/esm/helpers/toDuckDBValue.d.ts +4 -0
- package/esm/helpers/toDuckDBValue.d.ts.map +1 -0
- package/esm/helpers/toDuckDBValue.js +15 -0
- package/esm/helpers/unifyColumns.d.ts +5 -0
- package/esm/helpers/unifyColumns.d.ts.map +1 -1
- package/esm/helpers/unifyColumns.js +20 -4
- package/esm/helpers/validateNumericalAnalysis.d.ts +25 -0
- package/esm/helpers/validateNumericalAnalysis.d.ts.map +1 -0
- package/esm/helpers/validateNumericalAnalysis.js +49 -0
- package/esm/helpers/writeDbMetadata.d.ts +4 -0
- package/esm/helpers/writeDbMetadata.d.ts.map +1 -0
- package/esm/helpers/writeDbMetadata.js +9 -0
- package/esm/helpers/writeGeoData.d.ts.map +1 -1
- package/esm/helpers/writeGeoData.js +128 -41
- package/esm/helpers/writeZip.d.ts +15 -0
- package/esm/helpers/writeZip.d.ts.map +1 -0
- package/esm/helpers/writeZip.js +257 -0
- package/esm/index.d.ts +8 -4
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +8 -4
- package/esm/methods/accumulate.d.ts +5 -0
- package/esm/methods/accumulate.d.ts.map +1 -0
- package/esm/methods/accumulate.js +37 -0
- package/esm/methods/addBoundingBox.d.ts +6 -0
- package/esm/methods/addBoundingBox.d.ts.map +1 -0
- package/esm/methods/addBoundingBox.js +26 -0
- package/esm/methods/addColumn.d.ts +3 -0
- package/esm/methods/addColumn.d.ts.map +1 -0
- package/esm/methods/addColumn.js +24 -0
- package/esm/methods/addGeoClosedStatus.d.ts +5 -0
- package/esm/methods/addGeoClosedStatus.d.ts.map +1 -0
- package/esm/methods/addGeoClosedStatus.js +21 -0
- package/esm/methods/addGeoType.d.ts +5 -0
- package/esm/methods/addGeoType.d.ts.map +1 -0
- package/esm/methods/addGeoType.js +21 -0
- package/esm/methods/addGeoValidity.d.ts +5 -0
- package/esm/methods/addGeoValidity.d.ts.map +1 -0
- package/esm/methods/addGeoValidity.js +21 -0
- package/esm/methods/addRowNumber.d.ts +5 -0
- package/esm/methods/addRowNumber.d.ts.map +1 -0
- package/esm/methods/addRowNumber.js +26 -0
- package/esm/methods/addSummaryRows.d.ts +14 -0
- package/esm/methods/addSummaryRows.d.ts.map +1 -0
- package/esm/methods/addSummaryRows.js +122 -0
- package/esm/methods/addVertexCount.d.ts +5 -0
- package/esm/methods/addVertexCount.d.ts.map +1 -0
- package/esm/methods/addVertexCount.js +21 -0
- package/esm/methods/aggregateGeo.d.ts +7 -0
- package/esm/methods/aggregateGeo.d.ts.map +1 -0
- package/esm/methods/aggregateGeo.js +69 -0
- package/esm/methods/area.d.ts +7 -0
- package/esm/methods/area.d.ts.map +1 -0
- package/esm/methods/area.js +25 -0
- package/esm/methods/bins.d.ts +5 -0
- package/esm/methods/bins.d.ts.map +1 -0
- package/esm/methods/bins.js +87 -0
- package/esm/methods/bm25.d.ts +2 -2
- package/esm/methods/bm25.d.ts.map +1 -1
- package/esm/methods/bm25.js +28 -13
- package/esm/methods/buffer.d.ts +5 -0
- package/esm/methods/buffer.d.ts.map +1 -0
- package/esm/methods/buffer.js +24 -0
- package/esm/methods/cache.d.ts +2 -1
- package/esm/methods/cache.d.ts.map +1 -1
- package/esm/methods/cache.js +228 -71
- package/esm/methods/capitalize.d.ts +3 -0
- package/esm/methods/capitalize.d.ts.map +1 -0
- package/esm/methods/capitalize.js +15 -0
- package/esm/methods/centroid.d.ts +5 -0
- package/esm/methods/centroid.d.ts.map +1 -0
- package/esm/methods/centroid.js +24 -0
- package/esm/methods/clone.d.ts +9 -0
- package/esm/methods/clone.d.ts.map +1 -0
- package/esm/methods/clone.js +35 -0
- package/esm/methods/cloneColumn.d.ts +2 -3
- package/esm/methods/cloneColumn.d.ts.map +1 -1
- package/esm/methods/cloneColumn.js +17 -12
- package/esm/methods/cloneColumnWithOffset.d.ts +6 -0
- package/esm/methods/cloneColumnWithOffset.d.ts.map +1 -0
- package/esm/methods/cloneColumnWithOffset.js +35 -0
- package/esm/methods/columnProportions.d.ts +6 -0
- package/esm/methods/columnProportions.d.ts.map +1 -0
- package/esm/methods/columnProportions.js +23 -0
- package/esm/methods/concatenate.d.ts +5 -0
- package/esm/methods/concatenate.d.ts.map +1 -0
- package/esm/methods/concatenate.js +25 -0
- package/esm/methods/convert.d.ts +13 -0
- package/esm/methods/convert.d.ts.map +1 -0
- package/esm/methods/convert.js +112 -0
- package/esm/methods/correlations.d.ts +3 -3
- package/esm/methods/correlations.d.ts.map +1 -1
- package/esm/methods/correlations.js +70 -24
- package/esm/methods/coveredBy.d.ts +3 -0
- package/esm/methods/coveredBy.d.ts.map +1 -0
- package/esm/methods/coveredBy.js +16 -0
- package/esm/methods/createFtsIndex.d.ts +15 -2
- package/esm/methods/createFtsIndex.d.ts.map +1 -1
- package/esm/methods/createFtsIndex.js +52 -13
- package/esm/methods/createPoints.d.ts +5 -0
- package/esm/methods/createPoints.d.ts.map +1 -0
- package/esm/methods/createPoints.js +23 -0
- package/esm/methods/createVssIndex.d.ts +1 -1
- package/esm/methods/createVssIndex.d.ts.map +1 -1
- package/esm/methods/createVssIndex.js +34 -13
- package/esm/methods/crossJoin.d.ts +5 -0
- package/esm/methods/crossJoin.d.ts.map +1 -0
- package/esm/methods/crossJoin.js +35 -0
- package/esm/methods/difference.d.ts +3 -0
- package/esm/methods/difference.d.ts.map +1 -0
- package/esm/methods/difference.js +19 -0
- package/esm/methods/distance.d.ts +7 -0
- package/esm/methods/distance.d.ts.map +1 -0
- package/esm/methods/distance.js +48 -0
- package/esm/methods/extractDatePart.d.ts +7 -0
- package/esm/methods/extractDatePart.d.ts.map +1 -0
- package/esm/methods/extractDatePart.js +38 -0
- package/esm/methods/extractLatLon.d.ts +3 -0
- package/esm/methods/extractLatLon.d.ts.map +1 -0
- package/esm/methods/extractLatLon.js +16 -0
- package/esm/methods/fill.d.ts +2 -2
- package/esm/methods/fill.d.ts.map +1 -1
- package/esm/methods/fill.js +41 -44
- package/esm/methods/fillHoles.d.ts +3 -0
- package/esm/methods/fillHoles.d.ts.map +1 -0
- package/esm/methods/fillHoles.js +19 -0
- package/esm/methods/filter.d.ts +3 -0
- package/esm/methods/filter.d.ts.map +1 -0
- package/esm/methods/filter.js +14 -0
- package/esm/methods/firstChars.d.ts +3 -0
- package/esm/methods/firstChars.d.ts.map +1 -0
- package/esm/methods/firstChars.js +11 -0
- package/esm/methods/fixGeo.d.ts +3 -0
- package/esm/methods/fixGeo.d.ts.map +1 -0
- package/esm/methods/fixGeo.js +22 -0
- package/esm/methods/flipCoordinates.d.ts +3 -0
- package/esm/methods/flipCoordinates.d.ts.map +1 -0
- package/esm/methods/flipCoordinates.js +22 -0
- package/esm/methods/fuzzyClean.d.ts +3 -3
- package/esm/methods/fuzzyClean.d.ts.map +1 -1
- package/esm/methods/fuzzyClean.js +55 -55
- package/esm/methods/fuzzyJoin.d.ts +2 -2
- package/esm/methods/fuzzyJoin.d.ts.map +1 -1
- package/esm/methods/fuzzyJoin.js +60 -19
- package/esm/methods/getBottom.d.ts +1 -1
- package/esm/methods/getBottom.d.ts.map +1 -1
- package/esm/methods/getBottom.js +4 -3
- package/esm/methods/getBoundingBox.d.ts +3 -0
- package/esm/methods/getBoundingBox.d.ts.map +1 -0
- package/esm/methods/getBoundingBox.js +19 -0
- package/esm/methods/getCharacterCount.d.ts +3 -0
- package/esm/methods/getCharacterCount.d.ts.map +1 -0
- package/esm/methods/getCharacterCount.js +17 -0
- package/esm/methods/getColumns.d.ts.map +1 -1
- package/esm/methods/getColumns.js +4 -3
- package/esm/methods/getData.d.ts +9 -0
- package/esm/methods/getData.d.ts.map +1 -0
- package/esm/methods/getData.js +23 -0
- package/esm/methods/getDescription.d.ts.map +1 -1
- package/esm/methods/getDescription.js +15 -10
- package/esm/methods/getFirstRow.d.ts +1 -1
- package/esm/methods/getFirstRow.d.ts.map +1 -1
- package/esm/methods/getFirstRow.js +5 -4
- package/esm/methods/getGeoData.d.ts +1 -1
- package/esm/methods/getGeoData.d.ts.map +1 -1
- package/esm/methods/getGeoData.js +5 -3
- package/esm/methods/getHash.d.ts +3 -0
- package/esm/methods/getHash.d.ts.map +1 -0
- package/esm/methods/getHash.js +39 -0
- package/esm/methods/getLastRow.d.ts +2 -2
- package/esm/methods/getLastRow.d.ts.map +1 -1
- package/esm/methods/getLastRow.js +7 -3
- package/esm/methods/getMax.d.ts +1 -1
- package/esm/methods/getMax.d.ts.map +1 -1
- package/esm/methods/getMax.js +10 -10
- package/esm/methods/getMean.d.ts.map +1 -1
- package/esm/methods/getMean.js +7 -4
- package/esm/methods/getMedian.d.ts.map +1 -1
- package/esm/methods/getMedian.js +7 -4
- package/esm/methods/getMin.d.ts +1 -1
- package/esm/methods/getMin.d.ts.map +1 -1
- package/esm/methods/getMin.js +10 -10
- package/esm/methods/getQuantile.d.ts.map +1 -1
- package/esm/methods/getQuantile.js +7 -4
- package/esm/methods/getRowCount.d.ts +5 -0
- package/esm/methods/getRowCount.d.ts.map +1 -0
- package/esm/methods/getRowCount.js +16 -0
- package/esm/methods/getSchema.d.ts +5 -0
- package/esm/methods/getSchema.d.ts.map +1 -0
- package/esm/methods/getSchema.js +12 -0
- package/esm/methods/getSkew.d.ts.map +1 -1
- package/esm/methods/getSkew.js +7 -4
- package/esm/methods/getStdDev.d.ts.map +1 -1
- package/esm/methods/getStdDev.js +7 -4
- package/esm/methods/getSum.d.ts.map +1 -1
- package/esm/methods/getSum.js +6 -3
- package/esm/methods/getTableNames.js +2 -2
- package/esm/methods/getTop.d.ts +1 -1
- package/esm/methods/getTop.d.ts.map +1 -1
- package/esm/methods/getTop.js +3 -2
- package/esm/methods/getTypes.d.ts.map +1 -1
- package/esm/methods/getTypes.js +3 -2
- package/esm/methods/getUniques.d.ts +1 -1
- package/esm/methods/getUniques.d.ts.map +1 -1
- package/esm/methods/getUniques.js +6 -3
- package/esm/methods/getValues.d.ts +1 -1
- package/esm/methods/getValues.d.ts.map +1 -1
- package/esm/methods/getValues.js +5 -3
- package/esm/methods/getVariance.d.ts +5 -0
- package/esm/methods/getVariance.d.ts.map +1 -0
- package/esm/methods/getVariance.js +20 -0
- package/esm/methods/indexValues.d.ts +27 -0
- package/esm/methods/indexValues.d.ts.map +1 -0
- package/esm/methods/indexValues.js +281 -0
- package/esm/methods/insertRows.d.ts +5 -0
- package/esm/methods/insertRows.d.ts.map +1 -0
- package/esm/methods/insertRows.js +41 -0
- package/esm/methods/insertTables.d.ts +5 -0
- package/esm/methods/insertTables.d.ts.map +1 -0
- package/esm/methods/insertTables.js +99 -0
- package/esm/methods/intersection.d.ts +3 -0
- package/esm/methods/intersection.d.ts.map +1 -0
- package/esm/methods/intersection.js +19 -0
- package/esm/methods/intersects.d.ts +3 -0
- package/esm/methods/intersects.d.ts.map +1 -0
- package/esm/methods/intersects.js +16 -0
- package/esm/methods/join.d.ts +2 -2
- package/esm/methods/join.d.ts.map +1 -1
- package/esm/methods/join.js +77 -28
- package/esm/methods/joinGeo.d.ts +6 -4
- package/esm/methods/joinGeo.d.ts.map +1 -1
- package/esm/methods/joinGeo.js +127 -44
- package/esm/methods/keepValues.d.ts +5 -0
- package/esm/methods/keepValues.d.ts.map +1 -0
- package/esm/methods/keepValues.js +35 -0
- package/esm/methods/lastChars.d.ts +3 -0
- package/esm/methods/lastChars.d.ts.map +1 -0
- package/esm/methods/lastChars.js +11 -0
- package/esm/methods/length.d.ts +7 -0
- package/esm/methods/length.d.ts.map +1 -0
- package/esm/methods/length.js +25 -0
- package/esm/methods/linearRegressions.d.ts +3 -3
- package/esm/methods/linearRegressions.d.ts.map +1 -1
- package/esm/methods/linearRegressions.js +78 -24
- package/esm/methods/linesToPolygons.d.ts +3 -0
- package/esm/methods/linesToPolygons.d.ts.map +1 -0
- package/esm/methods/linesToPolygons.js +17 -0
- package/esm/methods/loadArray.d.ts +14 -2
- package/esm/methods/loadArray.d.ts.map +1 -1
- package/esm/methods/loadArray.js +52 -32
- package/esm/methods/loadDB.d.ts +3 -0
- package/esm/methods/loadDB.d.ts.map +1 -0
- package/esm/methods/loadDB.js +70 -0
- package/esm/methods/loadData.d.ts +52 -0
- package/esm/methods/loadData.d.ts.map +1 -0
- package/esm/methods/loadData.js +148 -0
- package/esm/methods/loadGeoData.d.ts +9 -0
- package/esm/methods/loadGeoData.d.ts.map +1 -0
- package/esm/methods/loadGeoData.js +104 -0
- package/esm/methods/loadOSM.d.ts +17 -0
- package/esm/methods/loadOSM.d.ts.map +1 -0
- package/esm/methods/loadOSM.js +194 -0
- package/esm/methods/loadSample.d.ts +1 -1
- package/esm/methods/loadSample.d.ts.map +1 -1
- package/esm/methods/loadSample.js +5 -4
- package/esm/methods/loadStatCanData.d.ts +10 -0
- package/esm/methods/loadStatCanData.d.ts.map +1 -0
- package/esm/methods/loadStatCanData.js +130 -0
- package/esm/methods/longer.d.ts +3 -0
- package/esm/methods/longer.d.ts.map +1 -0
- package/esm/methods/longer.js +23 -0
- package/esm/methods/lower.d.ts +3 -0
- package/esm/methods/lower.d.ts.map +1 -0
- package/esm/methods/lower.js +14 -0
- package/esm/methods/nest.d.ts +3 -0
- package/esm/methods/nest.d.ts.map +1 -0
- package/esm/methods/nest.js +23 -0
- package/esm/methods/normalize.d.ts +7 -0
- package/esm/methods/normalize.d.ts.map +1 -0
- package/esm/methods/normalize.js +41 -0
- package/esm/methods/normalizeString.d.ts +1 -1
- package/esm/methods/normalizeString.d.ts.map +1 -1
- package/esm/methods/normalizeString.js +15 -18
- package/esm/methods/outliersIQR.d.ts +5 -0
- package/esm/methods/outliersIQR.d.ts.map +1 -0
- package/esm/methods/outliersIQR.js +37 -0
- package/esm/methods/pad.d.ts +6 -0
- package/esm/methods/pad.d.ts.map +1 -0
- package/esm/methods/pad.js +55 -0
- package/esm/methods/perimeter.d.ts +7 -0
- package/esm/methods/perimeter.d.ts.map +1 -0
- package/esm/methods/perimeter.js +25 -0
- package/esm/methods/quantiles.d.ts +5 -0
- package/esm/methods/quantiles.d.ts.map +1 -0
- package/esm/methods/quantiles.js +22 -0
- package/esm/methods/randomPoint.d.ts +6 -0
- package/esm/methods/randomPoint.d.ts.map +1 -0
- package/esm/methods/randomPoint.js +105 -0
- package/esm/methods/ranks.d.ts +7 -0
- package/esm/methods/ranks.d.ts.map +1 -0
- package/esm/methods/ranks.js +22 -0
- package/esm/methods/reducePrecision.d.ts +5 -0
- package/esm/methods/reducePrecision.d.ts.map +1 -0
- package/esm/methods/reducePrecision.js +24 -0
- package/esm/methods/removeColumns.d.ts +3 -0
- package/esm/methods/removeColumns.d.ts.map +1 -0
- package/esm/methods/removeColumns.js +13 -0
- package/esm/methods/removeDuplicates.d.ts +5 -0
- package/esm/methods/removeDuplicates.d.ts.map +1 -0
- package/esm/methods/removeDuplicates.js +17 -0
- package/esm/methods/removeMissing.d.ts +1 -1
- package/esm/methods/removeMissing.d.ts.map +1 -1
- package/esm/methods/removeMissing.js +70 -11
- package/esm/methods/removeRows.d.ts +3 -0
- package/esm/methods/removeRows.d.ts.map +1 -0
- package/esm/methods/removeRows.js +14 -0
- package/esm/methods/removeTable.d.ts +3 -0
- package/esm/methods/removeTable.d.ts.map +1 -0
- package/esm/methods/removeTable.js +12 -0
- package/esm/methods/removeTables.d.ts +4 -0
- package/esm/methods/removeTables.d.ts.map +1 -0
- package/esm/methods/removeTables.js +21 -0
- package/esm/methods/removeValues.d.ts +5 -0
- package/esm/methods/removeValues.d.ts.map +1 -0
- package/esm/methods/removeValues.js +35 -0
- package/esm/methods/renameColumns.d.ts +7 -0
- package/esm/methods/renameColumns.d.ts.map +1 -0
- package/esm/methods/renameColumns.js +27 -0
- package/esm/methods/renameTable.d.ts +3 -0
- package/esm/methods/renameTable.d.ts.map +1 -0
- package/esm/methods/renameTable.js +12 -0
- package/esm/methods/repeatRows.d.ts +5 -0
- package/esm/methods/repeatRows.d.ts.map +1 -0
- package/esm/methods/repeatRows.js +19 -0
- package/esm/methods/replace.d.ts +8 -0
- package/esm/methods/replace.d.ts.map +1 -0
- package/esm/methods/replace.js +69 -0
- package/esm/methods/replaceNulls.d.ts +3 -0
- package/esm/methods/replaceNulls.d.ts.map +1 -0
- package/esm/methods/replaceNulls.js +36 -0
- package/esm/methods/reproject.d.ts +5 -0
- package/esm/methods/reproject.d.ts.map +1 -0
- package/esm/methods/reproject.js +21 -0
- package/esm/methods/rolling.d.ts +6 -0
- package/esm/methods/rolling.d.ts.map +1 -0
- package/esm/methods/rolling.js +42 -0
- package/esm/methods/round.d.ts +6 -0
- package/esm/methods/round.d.ts.map +1 -0
- package/esm/methods/round.js +22 -0
- package/esm/methods/rowProportions.d.ts +6 -0
- package/esm/methods/rowProportions.d.ts.map +1 -0
- package/esm/methods/rowProportions.js +30 -0
- package/esm/methods/rowRanks.d.ts +9 -0
- package/esm/methods/rowRanks.d.ts.map +1 -0
- package/esm/methods/rowRanks.js +113 -0
- package/esm/methods/rowToText.d.ts +3 -0
- package/esm/methods/rowToText.d.ts.map +1 -0
- package/esm/methods/rowToText.js +27 -0
- package/esm/methods/sample.d.ts +5 -0
- package/esm/methods/sample.d.ts.map +1 -0
- package/esm/methods/sample.js +16 -0
- package/esm/methods/selectColumns.d.ts +3 -0
- package/esm/methods/selectColumns.d.ts.map +1 -0
- package/esm/methods/selectColumns.js +19 -0
- package/esm/methods/selectRows.d.ts +6 -0
- package/esm/methods/selectRows.d.ts.map +1 -0
- package/esm/methods/selectRows.js +34 -0
- package/esm/methods/selectTables.d.ts +4 -0
- package/esm/methods/selectTables.d.ts.map +1 -0
- package/esm/methods/selectTables.js +25 -0
- package/esm/methods/setTypes.d.ts +5 -0
- package/esm/methods/setTypes.d.ts.map +1 -0
- package/esm/methods/setTypes.js +30 -0
- package/esm/methods/simplify.d.ts +6 -0
- package/esm/methods/simplify.d.ts.map +1 -0
- package/esm/methods/simplify.js +38 -0
- package/esm/methods/skip.d.ts +3 -0
- package/esm/methods/skip.d.ts.map +1 -0
- package/esm/methods/skip.js +11 -0
- package/esm/methods/sort.d.ts +9 -0
- package/esm/methods/sort.d.ts.map +1 -0
- package/esm/methods/sort.js +35 -0
- package/esm/methods/splitExtract.d.ts +3 -0
- package/esm/methods/splitExtract.d.ts.map +1 -0
- package/esm/methods/splitExtract.js +21 -0
- package/esm/methods/splitSpread.d.ts +2 -2
- package/esm/methods/splitSpread.d.ts.map +1 -1
- package/esm/methods/splitSpread.js +58 -35
- package/esm/methods/stream.d.ts +8 -0
- package/esm/methods/stream.d.ts.map +1 -0
- package/esm/methods/stream.js +59 -0
- package/esm/methods/summarize.d.ts +10 -8
- package/esm/methods/summarize.d.ts.map +1 -1
- package/esm/methods/summarize.js +135 -48
- package/esm/methods/trim.d.ts +6 -0
- package/esm/methods/trim.d.ts.map +1 -0
- package/esm/methods/trim.js +30 -0
- package/esm/methods/truncate.d.ts +3 -0
- package/esm/methods/truncate.d.ts.map +1 -0
- package/esm/methods/truncate.js +11 -0
- package/esm/methods/union.d.ts +3 -0
- package/esm/methods/union.d.ts.map +1 -0
- package/esm/methods/union.js +19 -0
- package/esm/methods/unnest.d.ts +3 -0
- package/esm/methods/unnest.d.ts.map +1 -0
- package/esm/methods/unnest.js +15 -0
- package/esm/methods/unnestGeo.d.ts +3 -0
- package/esm/methods/unnestGeo.d.ts.map +1 -0
- package/esm/methods/unnestGeo.js +18 -0
- package/esm/methods/updateColumn.d.ts +3 -0
- package/esm/methods/updateColumn.d.ts.map +1 -0
- package/esm/methods/updateColumn.js +15 -0
- package/esm/methods/updateWithJS.d.ts +11 -0
- package/esm/methods/updateWithJS.d.ts.map +1 -0
- package/esm/methods/updateWithJS.js +95 -0
- package/esm/methods/upper.d.ts +3 -0
- package/esm/methods/upper.d.ts.map +1 -0
- package/esm/methods/upper.js +14 -0
- package/esm/methods/wider.d.ts +5 -0
- package/esm/methods/wider.d.ts.map +1 -0
- package/esm/methods/wider.js +23 -0
- package/esm/methods/writeDB.d.ts +6 -0
- package/esm/methods/writeDB.d.ts.map +1 -0
- package/esm/methods/writeDB.js +99 -0
- package/esm/methods/writeData.d.ts +7 -0
- package/esm/methods/writeData.d.ts.map +1 -0
- package/esm/methods/writeData.js +80 -0
- package/esm/methods/zScore.d.ts +6 -0
- package/esm/methods/zScore.d.ts.map +1 -0
- package/esm/methods/zScore.js +29 -0
- package/llm.md +7925 -0
- package/llms.txt +19 -0
- package/package.json +18 -3
- package/script/_dnt.polyfills.d.ts +7 -0
- package/script/_dnt.polyfills.d.ts.map +1 -0
- package/script/_dnt.polyfills.js +2 -0
- package/script/class/SDAError.d.ts +63 -0
- package/script/class/SDAError.d.ts.map +1 -0
- package/script/class/SDAError.js +86 -0
- package/script/class/Simple.d.ts +40 -22
- package/script/class/Simple.d.ts.map +1 -1
- package/script/class/Simple.js +33 -20
- package/script/class/SimpleDB.d.ts +247 -103
- package/script/class/SimpleDB.d.ts.map +1 -1
- package/script/class/SimpleDB.js +514 -297
- package/script/class/SimpleTable.d.ts +1804 -940
- package/script/class/SimpleTable.d.ts.map +1 -1
- package/script/class/SimpleTable.js +1943 -1823
- package/script/helpers/assertColumnsExist.d.ts +16 -0
- package/script/helpers/assertColumnsExist.d.ts.map +1 -0
- package/script/helpers/assertColumnsExist.js +27 -0
- package/script/helpers/assertNewColumns.d.ts +17 -0
- package/script/helpers/assertNewColumns.d.ts.map +1 -0
- package/script/helpers/assertNewColumns.js +28 -0
- package/script/helpers/assertSameDatabase.d.ts +11 -0
- package/script/helpers/assertSameDatabase.d.ts.map +1 -0
- package/script/helpers/assertSameDatabase.js +16 -0
- package/script/helpers/asyncOperationContext.d.ts +19 -0
- package/script/helpers/asyncOperationContext.d.ts.map +1 -0
- package/script/helpers/asyncOperationContext.js +45 -0
- package/script/helpers/buildFuzzyMatchSql.d.ts +9 -0
- package/script/helpers/buildFuzzyMatchSql.d.ts.map +1 -0
- package/script/helpers/buildFuzzyMatchSql.js +20 -0
- package/script/helpers/cacheDatabase.d.ts +5 -0
- package/script/helpers/cacheDatabase.d.ts.map +1 -0
- package/script/helpers/cacheDatabase.js +117 -0
- package/script/helpers/cacheDiagnostics.d.ts +4 -0
- package/script/helpers/cacheDiagnostics.d.ts.map +1 -0
- package/script/helpers/cacheDiagnostics.js +29 -0
- package/script/helpers/cacheTableDependencies.d.ts +19 -0
- package/script/helpers/cacheTableDependencies.d.ts.map +1 -0
- package/script/helpers/cacheTableDependencies.js +125 -0
- package/script/helpers/cleanCache.js +1 -1
- package/script/helpers/createDirectory.d.ts +13 -0
- package/script/helpers/createDirectory.d.ts.map +1 -1
- package/script/helpers/createDirectory.js +13 -0
- package/script/helpers/ensureSpatial.d.ts +7 -0
- package/script/helpers/ensureSpatial.d.ts.map +1 -0
- package/script/helpers/ensureSpatial.js +23 -0
- package/script/helpers/extractTypes.d.ts +1 -1
- package/script/helpers/extractTypes.d.ts.map +1 -1
- package/script/helpers/extractZipEntryToFile.d.ts +3 -0
- package/script/helpers/extractZipEntryToFile.d.ts.map +1 -0
- package/script/helpers/extractZipEntryToFile.js +229 -0
- package/script/helpers/fileCache.d.ts +15 -0
- package/script/helpers/fileCache.d.ts.map +1 -0
- package/script/helpers/fileCache.js +135 -0
- package/script/helpers/findGeoColumn.d.ts +13 -1
- package/script/helpers/findGeoColumn.d.ts.map +1 -1
- package/script/helpers/findGeoColumn.js +18 -17
- package/script/helpers/findGeoColumnFromSchema.d.ts +20 -0
- package/script/helpers/findGeoColumnFromSchema.d.ts.map +1 -0
- package/script/helpers/findGeoColumnFromSchema.js +34 -0
- package/script/helpers/flushAllTables.d.ts +23 -0
- package/script/helpers/flushAllTables.d.ts.map +1 -0
- package/script/helpers/flushAllTables.js +418 -0
- package/script/helpers/formatMissingTables.d.ts +19 -0
- package/script/helpers/formatMissingTables.d.ts.map +1 -0
- package/script/helpers/formatMissingTables.js +35 -0
- package/script/helpers/getCurrentDatabase.d.ts +3 -0
- package/script/helpers/getCurrentDatabase.d.ts.map +1 -0
- package/script/helpers/getCurrentDatabase.js +13 -0
- package/script/helpers/getDbFileType.d.ts +2 -0
- package/script/helpers/getDbFileType.d.ts.map +1 -0
- package/script/helpers/getDbFileType.js +12 -0
- package/script/helpers/getDbIndexes.d.ts +4 -0
- package/script/helpers/getDbIndexes.d.ts.map +1 -0
- package/script/helpers/getDbIndexes.js +7 -0
- package/script/helpers/getStatExpression.d.ts +10 -0
- package/script/helpers/getStatExpression.d.ts.map +1 -0
- package/script/helpers/getStatExpression.js +80 -0
- package/script/helpers/index.d.ts +3 -0
- package/script/helpers/index.d.ts.map +1 -1
- package/script/helpers/index.js +10 -5
- package/script/helpers/indexDefinitions.d.ts +30 -0
- package/script/helpers/indexDefinitions.d.ts.map +1 -0
- package/script/helpers/indexDefinitions.js +10 -0
- package/script/helpers/indexQueries.d.ts +3 -0
- package/script/helpers/indexQueries.d.ts.map +1 -0
- package/script/helpers/indexQueries.js +42 -0
- package/script/helpers/keepNumericalColumns.d.ts.map +1 -1
- package/script/helpers/keepNumericalColumns.js +4 -5
- package/script/helpers/loadOsmFile.d.ts +10 -0
- package/script/helpers/loadOsmFile.d.ts.map +1 -0
- package/script/helpers/loadOsmFile.js +34 -0
- package/script/helpers/logData.d.ts +2 -2
- package/script/helpers/logData.d.ts.map +1 -1
- package/script/helpers/logData.js +6 -6
- package/script/helpers/mergeOptions.d.ts +47 -15
- package/script/helpers/mergeOptions.d.ts.map +1 -1
- package/script/helpers/mergeOptions.js +35 -5
- package/script/helpers/observeQuery.d.ts +9 -0
- package/script/helpers/observeQuery.d.ts.map +1 -0
- package/script/helpers/observeQuery.js +52 -0
- package/script/helpers/osmCache.d.ts +16 -0
- package/script/helpers/osmCache.d.ts.map +1 -0
- package/script/helpers/osmCache.js +81 -0
- package/script/helpers/osmFiles.d.ts +9 -0
- package/script/helpers/osmFiles.d.ts.map +1 -0
- package/script/helpers/osmFiles.js +60 -0
- package/script/helpers/parseDuckDBType.d.ts +1 -1
- package/script/helpers/parseValue.d.ts +16 -0
- package/script/helpers/parseValue.d.ts.map +1 -1
- package/script/helpers/parseValue.js +17 -1
- package/script/helpers/pendingOps.d.ts +151 -0
- package/script/helpers/pendingOps.d.ts.map +1 -0
- package/script/helpers/pendingOps.js +2 -0
- package/script/helpers/prepareDbExtensions.d.ts +4 -0
- package/script/helpers/prepareDbExtensions.d.ts.map +1 -0
- package/script/helpers/prepareDbExtensions.js +28 -0
- package/script/helpers/prepareValueFilters.d.ts +11 -0
- package/script/helpers/prepareValueFilters.d.ts.map +1 -0
- package/script/helpers/prepareValueFilters.js +18 -0
- package/script/helpers/queryDB.d.ts +43 -8
- package/script/helpers/queryDB.d.ts.map +1 -1
- package/script/helpers/queryDB.js +55 -36
- package/script/helpers/queryDbFile.d.ts +8 -0
- package/script/helpers/queryDbFile.d.ts.map +1 -0
- package/script/helpers/queryDbFile.js +18 -0
- package/script/helpers/queueAsyncBarrier.d.ts +47 -0
- package/script/helpers/queueAsyncBarrier.d.ts.map +1 -0
- package/script/helpers/queueAsyncBarrier.js +51 -0
- package/script/helpers/queueOp.d.ts +18 -0
- package/script/helpers/queueOp.d.ts.map +1 -0
- package/script/helpers/queueOp.js +74 -0
- package/script/helpers/quoteIdentifier.d.ts +16 -0
- package/script/helpers/quoteIdentifier.d.ts.map +1 -0
- package/script/helpers/quoteIdentifier.js +20 -0
- package/script/helpers/quoteQualifiedIdentifier.d.ts +18 -0
- package/script/helpers/quoteQualifiedIdentifier.d.ts.map +1 -0
- package/script/helpers/quoteQualifiedIdentifier.js +26 -0
- package/script/helpers/readDbMetadata.d.ts +5 -0
- package/script/helpers/readDbMetadata.d.ts.map +1 -0
- package/script/helpers/readDbMetadata.js +61 -0
- package/script/helpers/removeColumnsNow.d.ts +8 -0
- package/script/helpers/removeColumnsNow.d.ts.map +1 -0
- package/script/helpers/removeColumnsNow.js +21 -0
- package/script/helpers/resolveOutputTable.d.ts +9 -0
- package/script/helpers/resolveOutputTable.d.ts.map +1 -0
- package/script/helpers/resolveOutputTable.js +17 -0
- package/script/helpers/runQuery.d.ts +11 -8
- package/script/helpers/runQuery.d.ts.map +1 -1
- package/script/helpers/runQuery.js +119 -15
- package/script/helpers/serializeCacheInputs.d.ts +8 -0
- package/script/helpers/serializeCacheInputs.d.ts.map +1 -0
- package/script/helpers/serializeCacheInputs.js +120 -0
- package/script/helpers/setDbProps.d.ts +4 -1
- package/script/helpers/setDbProps.d.ts.map +1 -1
- package/script/helpers/setDbProps.js +17 -15
- package/script/helpers/statCanCache.d.ts +6 -0
- package/script/helpers/statCanCache.d.ts.map +1 -0
- package/script/helpers/statCanCache.js +78 -0
- package/script/helpers/stringToArray.d.ts +14 -0
- package/script/helpers/stringToArray.d.ts.map +1 -1
- package/script/helpers/stringToArray.js +15 -1
- package/script/helpers/tableGeneration.d.ts +18 -0
- package/script/helpers/tableGeneration.d.ts.map +1 -0
- package/script/helpers/tableGeneration.js +39 -0
- package/script/helpers/tableRegistry.d.ts +9 -0
- package/script/helpers/tableRegistry.d.ts.map +1 -0
- package/script/helpers/tableRegistry.js +54 -0
- package/script/helpers/toDuckDBValue.d.ts +4 -0
- package/script/helpers/toDuckDBValue.d.ts.map +1 -0
- package/script/helpers/toDuckDBValue.js +18 -0
- package/script/helpers/unifyColumns.d.ts +5 -0
- package/script/helpers/unifyColumns.d.ts.map +1 -1
- package/script/helpers/unifyColumns.js +23 -4
- package/script/helpers/validateNumericalAnalysis.d.ts +25 -0
- package/script/helpers/validateNumericalAnalysis.d.ts.map +1 -0
- package/script/helpers/validateNumericalAnalysis.js +55 -0
- package/script/helpers/writeDbMetadata.d.ts +4 -0
- package/script/helpers/writeDbMetadata.d.ts.map +1 -0
- package/script/helpers/writeDbMetadata.js +15 -0
- package/script/helpers/writeGeoData.d.ts.map +1 -1
- package/script/helpers/writeGeoData.js +127 -40
- package/script/helpers/writeZip.d.ts +15 -0
- package/script/helpers/writeZip.d.ts.map +1 -0
- package/script/helpers/writeZip.js +293 -0
- package/script/index.d.ts +8 -4
- package/script/index.d.ts.map +1 -1
- package/script/index.js +14 -9
- package/script/methods/accumulate.d.ts +5 -0
- package/script/methods/accumulate.d.ts.map +1 -0
- package/script/methods/accumulate.js +43 -0
- package/script/methods/addBoundingBox.d.ts +6 -0
- package/script/methods/addBoundingBox.d.ts.map +1 -0
- package/script/methods/addBoundingBox.js +32 -0
- package/script/methods/addColumn.d.ts +3 -0
- package/script/methods/addColumn.d.ts.map +1 -0
- package/script/methods/addColumn.js +30 -0
- package/script/methods/addGeoClosedStatus.d.ts +5 -0
- package/script/methods/addGeoClosedStatus.d.ts.map +1 -0
- package/script/methods/addGeoClosedStatus.js +27 -0
- package/script/methods/addGeoType.d.ts +5 -0
- package/script/methods/addGeoType.d.ts.map +1 -0
- package/script/methods/addGeoType.js +27 -0
- package/script/methods/addGeoValidity.d.ts +5 -0
- package/script/methods/addGeoValidity.d.ts.map +1 -0
- package/script/methods/addGeoValidity.js +27 -0
- package/script/methods/addRowNumber.d.ts +5 -0
- package/script/methods/addRowNumber.d.ts.map +1 -0
- package/script/methods/addRowNumber.js +32 -0
- package/script/methods/addSummaryRows.d.ts +14 -0
- package/script/methods/addSummaryRows.d.ts.map +1 -0
- package/script/methods/addSummaryRows.js +161 -0
- package/script/methods/addVertexCount.d.ts +5 -0
- package/script/methods/addVertexCount.d.ts.map +1 -0
- package/script/methods/addVertexCount.js +27 -0
- package/script/methods/aggregateGeo.d.ts +7 -0
- package/script/methods/aggregateGeo.d.ts.map +1 -0
- package/script/methods/aggregateGeo.js +75 -0
- package/script/methods/area.d.ts +7 -0
- package/script/methods/area.d.ts.map +1 -0
- package/script/methods/area.js +31 -0
- package/script/methods/bins.d.ts +5 -0
- package/script/methods/bins.d.ts.map +1 -0
- package/script/methods/bins.js +93 -0
- package/script/methods/bm25.d.ts +2 -2
- package/script/methods/bm25.d.ts.map +1 -1
- package/script/methods/bm25.js +28 -13
- package/script/methods/buffer.d.ts +5 -0
- package/script/methods/buffer.d.ts.map +1 -0
- package/script/methods/buffer.js +30 -0
- package/script/methods/cache.d.ts +2 -1
- package/script/methods/cache.d.ts.map +1 -1
- package/script/methods/cache.js +260 -70
- package/script/methods/capitalize.d.ts +3 -0
- package/script/methods/capitalize.d.ts.map +1 -0
- package/script/methods/capitalize.js +21 -0
- package/script/methods/centroid.d.ts +5 -0
- package/script/methods/centroid.d.ts.map +1 -0
- package/script/methods/centroid.js +30 -0
- package/script/methods/clone.d.ts +9 -0
- package/script/methods/clone.d.ts.map +1 -0
- package/script/methods/clone.js +41 -0
- package/script/methods/cloneColumn.d.ts +2 -3
- package/script/methods/cloneColumn.d.ts.map +1 -1
- package/script/methods/cloneColumn.js +21 -13
- package/script/methods/cloneColumnWithOffset.d.ts +6 -0
- package/script/methods/cloneColumnWithOffset.d.ts.map +1 -0
- package/script/methods/cloneColumnWithOffset.js +41 -0
- package/script/methods/columnProportions.d.ts +6 -0
- package/script/methods/columnProportions.d.ts.map +1 -0
- package/script/methods/columnProportions.js +29 -0
- package/script/methods/concatenate.d.ts +5 -0
- package/script/methods/concatenate.d.ts.map +1 -0
- package/script/methods/concatenate.js +31 -0
- package/script/methods/convert.d.ts +13 -0
- package/script/methods/convert.d.ts.map +1 -0
- package/script/methods/convert.js +119 -0
- package/script/methods/correlations.d.ts +3 -3
- package/script/methods/correlations.d.ts.map +1 -1
- package/script/methods/correlations.js +70 -24
- package/script/methods/coveredBy.d.ts +3 -0
- package/script/methods/coveredBy.d.ts.map +1 -0
- package/script/methods/coveredBy.js +22 -0
- package/script/methods/createFtsIndex.d.ts +15 -2
- package/script/methods/createFtsIndex.d.ts.map +1 -1
- package/script/methods/createFtsIndex.js +53 -13
- package/script/methods/createPoints.d.ts +5 -0
- package/script/methods/createPoints.d.ts.map +1 -0
- package/script/methods/createPoints.js +29 -0
- package/script/methods/createVssIndex.d.ts +1 -1
- package/script/methods/createVssIndex.d.ts.map +1 -1
- package/script/methods/createVssIndex.js +34 -13
- package/script/methods/crossJoin.d.ts +5 -0
- package/script/methods/crossJoin.d.ts.map +1 -0
- package/script/methods/crossJoin.js +41 -0
- package/script/methods/difference.d.ts +3 -0
- package/script/methods/difference.d.ts.map +1 -0
- package/script/methods/difference.js +25 -0
- package/script/methods/distance.d.ts +7 -0
- package/script/methods/distance.d.ts.map +1 -0
- package/script/methods/distance.js +54 -0
- package/script/methods/extractDatePart.d.ts +7 -0
- package/script/methods/extractDatePart.d.ts.map +1 -0
- package/script/methods/extractDatePart.js +44 -0
- package/script/methods/extractLatLon.d.ts +3 -0
- package/script/methods/extractLatLon.d.ts.map +1 -0
- package/script/methods/extractLatLon.js +22 -0
- package/script/methods/fill.d.ts +2 -2
- package/script/methods/fill.d.ts.map +1 -1
- package/script/methods/fill.js +41 -44
- package/script/methods/fillHoles.d.ts +3 -0
- package/script/methods/fillHoles.d.ts.map +1 -0
- package/script/methods/fillHoles.js +25 -0
- package/script/methods/filter.d.ts +3 -0
- package/script/methods/filter.d.ts.map +1 -0
- package/script/methods/filter.js +20 -0
- package/script/methods/firstChars.d.ts +3 -0
- package/script/methods/firstChars.d.ts.map +1 -0
- package/script/methods/firstChars.js +17 -0
- package/script/methods/fixGeo.d.ts +3 -0
- package/script/methods/fixGeo.d.ts.map +1 -0
- package/script/methods/fixGeo.js +28 -0
- package/script/methods/flipCoordinates.d.ts +3 -0
- package/script/methods/flipCoordinates.d.ts.map +1 -0
- package/script/methods/flipCoordinates.js +28 -0
- package/script/methods/fuzzyClean.d.ts +3 -3
- package/script/methods/fuzzyClean.d.ts.map +1 -1
- package/script/methods/fuzzyClean.js +55 -55
- package/script/methods/fuzzyJoin.d.ts +2 -2
- package/script/methods/fuzzyJoin.d.ts.map +1 -1
- package/script/methods/fuzzyJoin.js +60 -19
- package/script/methods/getBottom.d.ts +1 -1
- package/script/methods/getBottom.d.ts.map +1 -1
- package/script/methods/getBottom.js +4 -3
- package/script/methods/getBoundingBox.d.ts +3 -0
- package/script/methods/getBoundingBox.d.ts.map +1 -0
- package/script/methods/getBoundingBox.js +25 -0
- package/script/methods/getCharacterCount.d.ts +3 -0
- package/script/methods/getCharacterCount.d.ts.map +1 -0
- package/script/methods/getCharacterCount.js +23 -0
- package/script/methods/getColumns.d.ts.map +1 -1
- package/script/methods/getColumns.js +4 -3
- package/script/methods/getData.d.ts +9 -0
- package/script/methods/getData.d.ts.map +1 -0
- package/script/methods/getData.js +29 -0
- package/script/methods/getDescription.d.ts.map +1 -1
- package/script/methods/getDescription.js +15 -10
- package/script/methods/getFirstRow.d.ts +1 -1
- package/script/methods/getFirstRow.d.ts.map +1 -1
- package/script/methods/getFirstRow.js +5 -4
- package/script/methods/getGeoData.d.ts +1 -1
- package/script/methods/getGeoData.d.ts.map +1 -1
- package/script/methods/getGeoData.js +5 -3
- package/script/methods/getHash.d.ts +3 -0
- package/script/methods/getHash.d.ts.map +1 -0
- package/script/methods/getHash.js +45 -0
- package/script/methods/getLastRow.d.ts +2 -2
- package/script/methods/getLastRow.d.ts.map +1 -1
- package/script/methods/getLastRow.js +7 -3
- package/script/methods/getMax.d.ts +1 -1
- package/script/methods/getMax.d.ts.map +1 -1
- package/script/methods/getMax.js +10 -10
- package/script/methods/getMean.d.ts.map +1 -1
- package/script/methods/getMean.js +7 -4
- package/script/methods/getMedian.d.ts.map +1 -1
- package/script/methods/getMedian.js +7 -4
- package/script/methods/getMin.d.ts +1 -1
- package/script/methods/getMin.d.ts.map +1 -1
- package/script/methods/getMin.js +10 -10
- package/script/methods/getQuantile.d.ts.map +1 -1
- package/script/methods/getQuantile.js +7 -4
- package/script/methods/getRowCount.d.ts +5 -0
- package/script/methods/getRowCount.d.ts.map +1 -0
- package/script/methods/getRowCount.js +22 -0
- package/script/methods/getSchema.d.ts +5 -0
- package/script/methods/getSchema.d.ts.map +1 -0
- package/script/methods/getSchema.js +18 -0
- package/script/methods/getSkew.d.ts.map +1 -1
- package/script/methods/getSkew.js +7 -4
- package/script/methods/getStdDev.d.ts.map +1 -1
- package/script/methods/getStdDev.js +7 -4
- package/script/methods/getSum.d.ts.map +1 -1
- package/script/methods/getSum.js +6 -3
- package/script/methods/getTableNames.js +2 -2
- package/script/methods/getTop.d.ts +1 -1
- package/script/methods/getTop.d.ts.map +1 -1
- package/script/methods/getTop.js +3 -2
- package/script/methods/getTypes.d.ts.map +1 -1
- package/script/methods/getTypes.js +3 -2
- package/script/methods/getUniques.d.ts +1 -1
- package/script/methods/getUniques.d.ts.map +1 -1
- package/script/methods/getUniques.js +6 -3
- package/script/methods/getValues.d.ts +1 -1
- package/script/methods/getValues.d.ts.map +1 -1
- package/script/methods/getValues.js +5 -3
- package/script/methods/getVariance.d.ts +5 -0
- package/script/methods/getVariance.d.ts.map +1 -0
- package/script/methods/getVariance.js +26 -0
- package/script/methods/indexValues.d.ts +27 -0
- package/script/methods/indexValues.d.ts.map +1 -0
- package/script/methods/indexValues.js +287 -0
- package/script/methods/insertRows.d.ts +5 -0
- package/script/methods/insertRows.d.ts.map +1 -0
- package/script/methods/insertRows.js +47 -0
- package/script/methods/insertTables.d.ts +5 -0
- package/script/methods/insertTables.d.ts.map +1 -0
- package/script/methods/insertTables.js +105 -0
- package/script/methods/intersection.d.ts +3 -0
- package/script/methods/intersection.d.ts.map +1 -0
- package/script/methods/intersection.js +25 -0
- package/script/methods/intersects.d.ts +3 -0
- package/script/methods/intersects.d.ts.map +1 -0
- package/script/methods/intersects.js +22 -0
- package/script/methods/join.d.ts +2 -2
- package/script/methods/join.d.ts.map +1 -1
- package/script/methods/join.js +77 -28
- package/script/methods/joinGeo.d.ts +6 -4
- package/script/methods/joinGeo.d.ts.map +1 -1
- package/script/methods/joinGeo.js +125 -42
- package/script/methods/keepValues.d.ts +5 -0
- package/script/methods/keepValues.d.ts.map +1 -0
- package/script/methods/keepValues.js +41 -0
- package/script/methods/lastChars.d.ts +3 -0
- package/script/methods/lastChars.d.ts.map +1 -0
- package/script/methods/lastChars.js +17 -0
- package/script/methods/length.d.ts +7 -0
- package/script/methods/length.d.ts.map +1 -0
- package/script/methods/length.js +31 -0
- package/script/methods/linearRegressions.d.ts +3 -3
- package/script/methods/linearRegressions.d.ts.map +1 -1
- package/script/methods/linearRegressions.js +78 -24
- package/script/methods/linesToPolygons.d.ts +3 -0
- package/script/methods/linesToPolygons.d.ts.map +1 -0
- package/script/methods/linesToPolygons.js +23 -0
- package/script/methods/loadArray.d.ts +14 -2
- package/script/methods/loadArray.d.ts.map +1 -1
- package/script/methods/loadArray.js +54 -32
- package/script/methods/loadDB.d.ts +3 -0
- package/script/methods/loadDB.d.ts.map +1 -0
- package/script/methods/loadDB.js +76 -0
- package/script/methods/loadData.d.ts +52 -0
- package/script/methods/loadData.d.ts.map +1 -0
- package/script/methods/loadData.js +155 -0
- package/script/methods/loadGeoData.d.ts +9 -0
- package/script/methods/loadGeoData.d.ts.map +1 -0
- package/script/methods/loadGeoData.js +110 -0
- package/script/methods/loadOSM.d.ts +17 -0
- package/script/methods/loadOSM.d.ts.map +1 -0
- package/script/methods/loadOSM.js +201 -0
- package/script/methods/loadSample.d.ts +1 -1
- package/script/methods/loadSample.d.ts.map +1 -1
- package/script/methods/loadSample.js +5 -4
- package/script/methods/loadStatCanData.d.ts +10 -0
- package/script/methods/loadStatCanData.d.ts.map +1 -0
- package/script/methods/loadStatCanData.js +137 -0
- package/script/methods/longer.d.ts +3 -0
- package/script/methods/longer.d.ts.map +1 -0
- package/script/methods/longer.js +29 -0
- package/script/methods/lower.d.ts +3 -0
- package/script/methods/lower.d.ts.map +1 -0
- package/script/methods/lower.js +20 -0
- package/script/methods/nest.d.ts +3 -0
- package/script/methods/nest.d.ts.map +1 -0
- package/script/methods/nest.js +29 -0
- package/script/methods/normalize.d.ts +7 -0
- package/script/methods/normalize.d.ts.map +1 -0
- package/script/methods/normalize.js +47 -0
- package/script/methods/normalizeString.d.ts +1 -1
- package/script/methods/normalizeString.d.ts.map +1 -1
- package/script/methods/normalizeString.js +15 -18
- package/script/methods/outliersIQR.d.ts +5 -0
- package/script/methods/outliersIQR.d.ts.map +1 -0
- package/script/methods/outliersIQR.js +43 -0
- package/script/methods/pad.d.ts +6 -0
- package/script/methods/pad.d.ts.map +1 -0
- package/script/methods/pad.js +61 -0
- package/script/methods/perimeter.d.ts +7 -0
- package/script/methods/perimeter.d.ts.map +1 -0
- package/script/methods/perimeter.js +31 -0
- package/script/methods/quantiles.d.ts +5 -0
- package/script/methods/quantiles.d.ts.map +1 -0
- package/script/methods/quantiles.js +28 -0
- package/script/methods/randomPoint.d.ts +6 -0
- package/script/methods/randomPoint.d.ts.map +1 -0
- package/script/methods/randomPoint.js +111 -0
- package/script/methods/ranks.d.ts +7 -0
- package/script/methods/ranks.d.ts.map +1 -0
- package/script/methods/ranks.js +28 -0
- package/script/methods/reducePrecision.d.ts +5 -0
- package/script/methods/reducePrecision.d.ts.map +1 -0
- package/script/methods/reducePrecision.js +30 -0
- package/script/methods/removeColumns.d.ts +3 -0
- package/script/methods/removeColumns.d.ts.map +1 -0
- package/script/methods/removeColumns.js +19 -0
- package/script/methods/removeDuplicates.d.ts +5 -0
- package/script/methods/removeDuplicates.d.ts.map +1 -0
- package/script/methods/removeDuplicates.js +23 -0
- package/script/methods/removeMissing.d.ts +1 -1
- package/script/methods/removeMissing.d.ts.map +1 -1
- package/script/methods/removeMissing.js +70 -11
- package/script/methods/removeRows.d.ts +3 -0
- package/script/methods/removeRows.d.ts.map +1 -0
- package/script/methods/removeRows.js +20 -0
- package/script/methods/removeTable.d.ts +3 -0
- package/script/methods/removeTable.d.ts.map +1 -0
- package/script/methods/removeTable.js +18 -0
- package/script/methods/removeTables.d.ts +4 -0
- package/script/methods/removeTables.d.ts.map +1 -0
- package/script/methods/removeTables.js +27 -0
- package/script/methods/removeValues.d.ts +5 -0
- package/script/methods/removeValues.d.ts.map +1 -0
- package/script/methods/removeValues.js +41 -0
- package/script/methods/renameColumns.d.ts +7 -0
- package/script/methods/renameColumns.d.ts.map +1 -0
- package/script/methods/renameColumns.js +33 -0
- package/script/methods/renameTable.d.ts +3 -0
- package/script/methods/renameTable.d.ts.map +1 -0
- package/script/methods/renameTable.js +18 -0
- package/script/methods/repeatRows.d.ts +5 -0
- package/script/methods/repeatRows.d.ts.map +1 -0
- package/script/methods/repeatRows.js +25 -0
- package/script/methods/replace.d.ts +8 -0
- package/script/methods/replace.d.ts.map +1 -0
- package/script/methods/replace.js +75 -0
- package/script/methods/replaceNulls.d.ts +3 -0
- package/script/methods/replaceNulls.d.ts.map +1 -0
- package/script/methods/replaceNulls.js +42 -0
- package/script/methods/reproject.d.ts +5 -0
- package/script/methods/reproject.d.ts.map +1 -0
- package/script/methods/reproject.js +27 -0
- package/script/methods/rolling.d.ts +6 -0
- package/script/methods/rolling.d.ts.map +1 -0
- package/script/methods/rolling.js +48 -0
- package/script/methods/round.d.ts +6 -0
- package/script/methods/round.d.ts.map +1 -0
- package/script/methods/round.js +28 -0
- package/script/methods/rowProportions.d.ts +6 -0
- package/script/methods/rowProportions.d.ts.map +1 -0
- package/script/methods/rowProportions.js +36 -0
- package/script/methods/rowRanks.d.ts +9 -0
- package/script/methods/rowRanks.d.ts.map +1 -0
- package/script/methods/rowRanks.js +119 -0
- package/script/methods/rowToText.d.ts +3 -0
- package/script/methods/rowToText.d.ts.map +1 -0
- package/script/methods/rowToText.js +33 -0
- package/script/methods/sample.d.ts +5 -0
- package/script/methods/sample.d.ts.map +1 -0
- package/script/methods/sample.js +22 -0
- package/script/methods/selectColumns.d.ts +3 -0
- package/script/methods/selectColumns.d.ts.map +1 -0
- package/script/methods/selectColumns.js +25 -0
- package/script/methods/selectRows.d.ts +6 -0
- package/script/methods/selectRows.d.ts.map +1 -0
- package/script/methods/selectRows.js +40 -0
- package/script/methods/selectTables.d.ts +4 -0
- package/script/methods/selectTables.d.ts.map +1 -0
- package/script/methods/selectTables.js +31 -0
- package/script/methods/setTypes.d.ts +5 -0
- package/script/methods/setTypes.d.ts.map +1 -0
- package/script/methods/setTypes.js +36 -0
- package/script/methods/simplify.d.ts +6 -0
- package/script/methods/simplify.d.ts.map +1 -0
- package/script/methods/simplify.js +44 -0
- package/script/methods/skip.d.ts +3 -0
- package/script/methods/skip.d.ts.map +1 -0
- package/script/methods/skip.js +17 -0
- package/script/methods/sort.d.ts +9 -0
- package/script/methods/sort.d.ts.map +1 -0
- package/script/methods/sort.js +41 -0
- package/script/methods/splitExtract.d.ts +3 -0
- package/script/methods/splitExtract.d.ts.map +1 -0
- package/script/methods/splitExtract.js +27 -0
- package/script/methods/splitSpread.d.ts +2 -2
- package/script/methods/splitSpread.d.ts.map +1 -1
- package/script/methods/splitSpread.js +58 -35
- package/script/methods/stream.d.ts +8 -0
- package/script/methods/stream.d.ts.map +1 -0
- package/script/methods/stream.js +65 -0
- package/script/methods/summarize.d.ts +10 -8
- package/script/methods/summarize.d.ts.map +1 -1
- package/script/methods/summarize.js +165 -45
- package/script/methods/trim.d.ts +6 -0
- package/script/methods/trim.d.ts.map +1 -0
- package/script/methods/trim.js +36 -0
- package/script/methods/truncate.d.ts +3 -0
- package/script/methods/truncate.d.ts.map +1 -0
- package/script/methods/truncate.js +17 -0
- package/script/methods/union.d.ts +3 -0
- package/script/methods/union.d.ts.map +1 -0
- package/script/methods/union.js +25 -0
- package/script/methods/unnest.d.ts +3 -0
- package/script/methods/unnest.d.ts.map +1 -0
- package/script/methods/unnest.js +21 -0
- package/script/methods/unnestGeo.d.ts +3 -0
- package/script/methods/unnestGeo.d.ts.map +1 -0
- package/script/methods/unnestGeo.js +24 -0
- package/script/methods/updateColumn.d.ts +3 -0
- package/script/methods/updateColumn.d.ts.map +1 -0
- package/script/methods/updateColumn.js +21 -0
- package/script/methods/updateWithJS.d.ts +11 -0
- package/script/methods/updateWithJS.d.ts.map +1 -0
- package/script/methods/updateWithJS.js +101 -0
- package/script/methods/upper.d.ts +3 -0
- package/script/methods/upper.d.ts.map +1 -0
- package/script/methods/upper.js +20 -0
- package/script/methods/wider.d.ts +5 -0
- package/script/methods/wider.d.ts.map +1 -0
- package/script/methods/wider.js +29 -0
- package/script/methods/writeDB.d.ts +6 -0
- package/script/methods/writeDB.d.ts.map +1 -0
- package/script/methods/writeDB.js +105 -0
- package/script/methods/writeData.d.ts +7 -0
- package/script/methods/writeData.d.ts.map +1 -0
- package/script/methods/writeData.js +86 -0
- package/script/methods/zScore.d.ts +6 -0
- package/script/methods/zScore.d.ts.map +1 -0
- package/script/methods/zScore.js +35 -0
- package/esm/helpers/accumulateQuery.d.ts +0 -4
- package/esm/helpers/accumulateQuery.d.ts.map +0 -1
- package/esm/helpers/accumulateQuery.js +0 -15
- package/esm/helpers/checkVssIndexes.d.ts +0 -2
- package/esm/helpers/checkVssIndexes.d.ts.map +0 -1
- package/esm/helpers/checkVssIndexes.js +0 -16
- package/esm/helpers/concatenateRowQuery.d.ts +0 -2
- package/esm/helpers/concatenateRowQuery.d.ts.map +0 -1
- package/esm/helpers/concatenateRowQuery.js +0 -9
- package/esm/helpers/convertForJS.d.ts +0 -6
- package/esm/helpers/convertForJS.d.ts.map +0 -1
- package/esm/helpers/convertForJS.js +0 -41
- package/esm/helpers/getName.d.ts +0 -2
- package/esm/helpers/getName.d.ts.map +0 -1
- package/esm/helpers/getName.js +0 -14
- package/esm/helpers/nestQuery.d.ts +0 -2
- package/esm/helpers/nestQuery.d.ts.map +0 -1
- package/esm/helpers/nestQuery.js +0 -13
- package/esm/helpers/repeatRowsQuery.d.ts +0 -4
- package/esm/helpers/repeatRowsQuery.d.ts.map +0 -1
- package/esm/helpers/repeatRowsQuery.js +0 -8
- package/esm/helpers/unnestQuery.d.ts +0 -2
- package/esm/helpers/unnestQuery.d.ts.map +0 -1
- package/esm/helpers/unnestQuery.js +0 -8
- package/esm/helpers/writeIndexes.d.ts +0 -3
- package/esm/helpers/writeIndexes.d.ts.map +0 -1
- package/esm/helpers/writeIndexes.js +0 -16
- package/esm/methods/aggregateGeoQuery.d.ts +0 -5
- package/esm/methods/aggregateGeoQuery.d.ts.map +0 -1
- package/esm/methods/aggregateGeoQuery.js +0 -25
- package/esm/methods/binsQuery.d.ts +0 -5
- package/esm/methods/binsQuery.d.ts.map +0 -1
- package/esm/methods/binsQuery.js +0 -40
- package/esm/methods/boundingBoxQuery.d.ts +0 -4
- package/esm/methods/boundingBoxQuery.d.ts.map +0 -1
- package/esm/methods/boundingBoxQuery.js +0 -21
- package/esm/methods/capitalizeQuery.d.ts +0 -2
- package/esm/methods/capitalizeQuery.d.ts.map +0 -1
- package/esm/methods/capitalizeQuery.js +0 -8
- package/esm/methods/cloneQuery.d.ts +0 -6
- package/esm/methods/cloneQuery.d.ts.map +0 -1
- package/esm/methods/cloneQuery.js +0 -6
- package/esm/methods/concatenateQuery.d.ts +0 -4
- package/esm/methods/concatenateQuery.d.ts.map +0 -1
- package/esm/methods/concatenateQuery.js +0 -13
- package/esm/methods/convertQuery.d.ts +0 -7
- package/esm/methods/convertQuery.d.ts.map +0 -1
- package/esm/methods/convertQuery.js +0 -78
- package/esm/methods/correlationsQuery.d.ts +0 -5
- package/esm/methods/correlationsQuery.d.ts.map +0 -1
- package/esm/methods/correlationsQuery.js +0 -26
- package/esm/methods/crossJoinQuery.d.ts +0 -4
- package/esm/methods/crossJoinQuery.d.ts.map +0 -1
- package/esm/methods/crossJoinQuery.js +0 -3
- package/esm/methods/distanceQuery.d.ts +0 -6
- package/esm/methods/distanceQuery.d.ts.map +0 -1
- package/esm/methods/distanceQuery.js +0 -44
- package/esm/methods/fuzzyJoinQuery.d.ts +0 -2
- package/esm/methods/fuzzyJoinQuery.d.ts.map +0 -1
- package/esm/methods/fuzzyJoinQuery.js +0 -29
- package/esm/methods/getNbCharacters.d.ts +0 -3
- package/esm/methods/getNbCharacters.d.ts.map +0 -1
- package/esm/methods/getNbCharacters.js +0 -15
- package/esm/methods/getNbRows.d.ts +0 -5
- package/esm/methods/getNbRows.d.ts.map +0 -1
- package/esm/methods/getNbRows.js +0 -15
- package/esm/methods/getVar.d.ts +0 -5
- package/esm/methods/getVar.d.ts.map +0 -1
- package/esm/methods/getVar.js +0 -17
- package/esm/methods/insertRowsQuery.d.ts +0 -4
- package/esm/methods/insertRowsQuery.d.ts.map +0 -1
- package/esm/methods/insertRowsQuery.js +0 -11
- package/esm/methods/joinGeoQuery.d.ts +0 -2
- package/esm/methods/joinGeoQuery.d.ts.map +0 -1
- package/esm/methods/joinGeoQuery.js +0 -55
- package/esm/methods/joinQuery.d.ts +0 -2
- package/esm/methods/joinQuery.d.ts.map +0 -1
- package/esm/methods/joinQuery.js +0 -21
- package/esm/methods/keepQuery.d.ts +0 -4
- package/esm/methods/keepQuery.d.ts.map +0 -1
- package/esm/methods/keepQuery.js +0 -15
- package/esm/methods/linearRegressionQuery.d.ts +0 -5
- package/esm/methods/linearRegressionQuery.d.ts.map +0 -1
- package/esm/methods/linearRegressionQuery.js +0 -37
- package/esm/methods/loadDataQuery.d.ts +0 -24
- package/esm/methods/loadDataQuery.d.ts.map +0 -1
- package/esm/methods/loadDataQuery.js +0 -85
- package/esm/methods/lowerQuery.d.ts +0 -2
- package/esm/methods/lowerQuery.d.ts.map +0 -1
- package/esm/methods/lowerQuery.js +0 -7
- package/esm/methods/normalizeQuery.d.ts +0 -5
- package/esm/methods/normalizeQuery.d.ts.map +0 -1
- package/esm/methods/normalizeQuery.js +0 -22
- package/esm/methods/outliersIQRQuery.d.ts +0 -4
- package/esm/methods/outliersIQRQuery.d.ts.map +0 -1
- package/esm/methods/outliersIQRQuery.js +0 -31
- package/esm/methods/padQuery.d.ts +0 -5
- package/esm/methods/padQuery.d.ts.map +0 -1
- package/esm/methods/padQuery.js +0 -14
- package/esm/methods/proportionsHorizontalQuery.d.ts +0 -5
- package/esm/methods/proportionsHorizontalQuery.d.ts.map +0 -1
- package/esm/methods/proportionsHorizontalQuery.js +0 -15
- package/esm/methods/proportionsVerticalQuery.d.ts +0 -5
- package/esm/methods/proportionsVerticalQuery.d.ts.map +0 -1
- package/esm/methods/proportionsVerticalQuery.js +0 -19
- package/esm/methods/quantilesQuery.d.ts +0 -4
- package/esm/methods/quantilesQuery.d.ts.map +0 -1
- package/esm/methods/quantilesQuery.js +0 -12
- package/esm/methods/randomPointQuery.d.ts +0 -2
- package/esm/methods/randomPointQuery.d.ts.map +0 -1
- package/esm/methods/randomPointQuery.js +0 -66
- package/esm/methods/ranksQuery.d.ts +0 -6
- package/esm/methods/ranksQuery.d.ts.map +0 -1
- package/esm/methods/ranksQuery.js +0 -12
- package/esm/methods/removeDuplicatesQuery.d.ts +0 -4
- package/esm/methods/removeDuplicatesQuery.d.ts.map +0 -1
- package/esm/methods/removeDuplicatesQuery.js +0 -12
- package/esm/methods/removeMissingQuery.d.ts +0 -7
- package/esm/methods/removeMissingQuery.d.ts.map +0 -1
- package/esm/methods/removeMissingQuery.js +0 -43
- package/esm/methods/removeQuery.d.ts +0 -4
- package/esm/methods/removeQuery.d.ts.map +0 -1
- package/esm/methods/removeQuery.js +0 -15
- package/esm/methods/renameColumnQuery.d.ts +0 -2
- package/esm/methods/renameColumnQuery.d.ts.map +0 -1
- package/esm/methods/renameColumnQuery.js +0 -7
- package/esm/methods/replaceNullsQuery.d.ts +0 -2
- package/esm/methods/replaceNullsQuery.d.ts.map +0 -1
- package/esm/methods/replaceNullsQuery.js +0 -10
- package/esm/methods/replaceQuery.d.ts +0 -5
- package/esm/methods/replaceQuery.d.ts.map +0 -1
- package/esm/methods/replaceQuery.js +0 -24
- package/esm/methods/rollingQuery.d.ts +0 -5
- package/esm/methods/rollingQuery.d.ts.map +0 -1
- package/esm/methods/rollingQuery.js +0 -33
- package/esm/methods/roundQuery.d.ts +0 -5
- package/esm/methods/roundQuery.d.ts.map +0 -1
- package/esm/methods/roundQuery.js +0 -16
- package/esm/methods/selectRowsQuery.d.ts +0 -5
- package/esm/methods/selectRowsQuery.d.ts.map +0 -1
- package/esm/methods/selectRowsQuery.js +0 -3
- package/esm/methods/sortQuery.d.ts +0 -8
- package/esm/methods/sortQuery.d.ts.map +0 -1
- package/esm/methods/sortQuery.js +0 -18
- package/esm/methods/summarizeQuery.d.ts +0 -7
- package/esm/methods/summarizeQuery.d.ts.map +0 -1
- package/esm/methods/summarizeQuery.js +0 -112
- package/esm/methods/trimQuery.d.ts +0 -5
- package/esm/methods/trimQuery.d.ts.map +0 -1
- package/esm/methods/trimQuery.js +0 -29
- package/esm/methods/truncateQuery.d.ts +0 -2
- package/esm/methods/truncateQuery.d.ts.map +0 -1
- package/esm/methods/truncateQuery.js +0 -3
- package/esm/methods/upperQuery.d.ts +0 -2
- package/esm/methods/upperQuery.d.ts.map +0 -1
- package/esm/methods/upperQuery.js +0 -7
- package/esm/methods/writeDataQuery.d.ts +0 -5
- package/esm/methods/writeDataQuery.d.ts.map +0 -1
- package/esm/methods/writeDataQuery.js +0 -44
- package/esm/methods/writeGeoDataQuery.d.ts +0 -4
- package/esm/methods/writeGeoDataQuery.d.ts.map +0 -1
- package/esm/methods/writeGeoDataQuery.js +0 -19
- package/esm/methods/zScoreQuery.d.ts +0 -5
- package/esm/methods/zScoreQuery.d.ts.map +0 -1
- package/esm/methods/zScoreQuery.js +0 -23
- package/script/helpers/accumulateQuery.d.ts +0 -4
- package/script/helpers/accumulateQuery.d.ts.map +0 -1
- package/script/helpers/accumulateQuery.js +0 -21
- package/script/helpers/checkVssIndexes.d.ts +0 -2
- package/script/helpers/checkVssIndexes.d.ts.map +0 -1
- package/script/helpers/checkVssIndexes.js +0 -19
- package/script/helpers/concatenateRowQuery.d.ts +0 -2
- package/script/helpers/concatenateRowQuery.d.ts.map +0 -1
- package/script/helpers/concatenateRowQuery.js +0 -12
- package/script/helpers/convertForJS.d.ts +0 -6
- package/script/helpers/convertForJS.d.ts.map +0 -1
- package/script/helpers/convertForJS.js +0 -44
- package/script/helpers/getName.d.ts +0 -2
- package/script/helpers/getName.d.ts.map +0 -1
- package/script/helpers/getName.js +0 -17
- package/script/helpers/nestQuery.d.ts +0 -2
- package/script/helpers/nestQuery.d.ts.map +0 -1
- package/script/helpers/nestQuery.js +0 -19
- package/script/helpers/repeatRowsQuery.d.ts +0 -4
- package/script/helpers/repeatRowsQuery.d.ts.map +0 -1
- package/script/helpers/repeatRowsQuery.js +0 -11
- package/script/helpers/unnestQuery.d.ts +0 -2
- package/script/helpers/unnestQuery.d.ts.map +0 -1
- package/script/helpers/unnestQuery.js +0 -11
- package/script/helpers/writeIndexes.d.ts +0 -3
- package/script/helpers/writeIndexes.d.ts.map +0 -1
- package/script/helpers/writeIndexes.js +0 -19
- package/script/methods/aggregateGeoQuery.d.ts +0 -5
- package/script/methods/aggregateGeoQuery.d.ts.map +0 -1
- package/script/methods/aggregateGeoQuery.js +0 -31
- package/script/methods/binsQuery.d.ts +0 -5
- package/script/methods/binsQuery.d.ts.map +0 -1
- package/script/methods/binsQuery.js +0 -43
- package/script/methods/boundingBoxQuery.d.ts +0 -4
- package/script/methods/boundingBoxQuery.d.ts.map +0 -1
- package/script/methods/boundingBoxQuery.js +0 -24
- package/script/methods/capitalizeQuery.d.ts +0 -2
- package/script/methods/capitalizeQuery.d.ts.map +0 -1
- package/script/methods/capitalizeQuery.js +0 -11
- package/script/methods/cloneQuery.d.ts +0 -6
- package/script/methods/cloneQuery.d.ts.map +0 -1
- package/script/methods/cloneQuery.js +0 -9
- package/script/methods/concatenateQuery.d.ts +0 -4
- package/script/methods/concatenateQuery.d.ts.map +0 -1
- package/script/methods/concatenateQuery.js +0 -16
- package/script/methods/convertQuery.d.ts +0 -7
- package/script/methods/convertQuery.d.ts.map +0 -1
- package/script/methods/convertQuery.js +0 -84
- package/script/methods/correlationsQuery.d.ts +0 -5
- package/script/methods/correlationsQuery.d.ts.map +0 -1
- package/script/methods/correlationsQuery.js +0 -32
- package/script/methods/crossJoinQuery.d.ts +0 -4
- package/script/methods/crossJoinQuery.d.ts.map +0 -1
- package/script/methods/crossJoinQuery.js +0 -6
- package/script/methods/distanceQuery.d.ts +0 -6
- package/script/methods/distanceQuery.d.ts.map +0 -1
- package/script/methods/distanceQuery.js +0 -47
- package/script/methods/fuzzyJoinQuery.d.ts +0 -2
- package/script/methods/fuzzyJoinQuery.d.ts.map +0 -1
- package/script/methods/fuzzyJoinQuery.js +0 -32
- package/script/methods/getNbCharacters.d.ts +0 -3
- package/script/methods/getNbCharacters.d.ts.map +0 -1
- package/script/methods/getNbCharacters.js +0 -21
- package/script/methods/getNbRows.d.ts +0 -5
- package/script/methods/getNbRows.d.ts.map +0 -1
- package/script/methods/getNbRows.js +0 -21
- package/script/methods/getVar.d.ts +0 -5
- package/script/methods/getVar.d.ts.map +0 -1
- package/script/methods/getVar.js +0 -23
- package/script/methods/insertRowsQuery.d.ts +0 -4
- package/script/methods/insertRowsQuery.d.ts.map +0 -1
- package/script/methods/insertRowsQuery.js +0 -17
- package/script/methods/joinGeoQuery.d.ts +0 -2
- package/script/methods/joinGeoQuery.d.ts.map +0 -1
- package/script/methods/joinGeoQuery.js +0 -58
- package/script/methods/joinQuery.d.ts +0 -2
- package/script/methods/joinQuery.d.ts.map +0 -1
- package/script/methods/joinQuery.js +0 -24
- package/script/methods/keepQuery.d.ts +0 -4
- package/script/methods/keepQuery.d.ts.map +0 -1
- package/script/methods/keepQuery.js +0 -21
- package/script/methods/linearRegressionQuery.d.ts +0 -5
- package/script/methods/linearRegressionQuery.d.ts.map +0 -1
- package/script/methods/linearRegressionQuery.js +0 -43
- package/script/methods/loadDataQuery.d.ts +0 -24
- package/script/methods/loadDataQuery.d.ts.map +0 -1
- package/script/methods/loadDataQuery.js +0 -91
- package/script/methods/lowerQuery.d.ts +0 -2
- package/script/methods/lowerQuery.d.ts.map +0 -1
- package/script/methods/lowerQuery.js +0 -10
- package/script/methods/normalizeQuery.d.ts +0 -5
- package/script/methods/normalizeQuery.d.ts.map +0 -1
- package/script/methods/normalizeQuery.js +0 -28
- package/script/methods/outliersIQRQuery.d.ts +0 -4
- package/script/methods/outliersIQRQuery.d.ts.map +0 -1
- package/script/methods/outliersIQRQuery.js +0 -37
- package/script/methods/padQuery.d.ts +0 -5
- package/script/methods/padQuery.d.ts.map +0 -1
- package/script/methods/padQuery.js +0 -17
- package/script/methods/proportionsHorizontalQuery.d.ts +0 -5
- package/script/methods/proportionsHorizontalQuery.d.ts.map +0 -1
- package/script/methods/proportionsHorizontalQuery.js +0 -18
- package/script/methods/proportionsVerticalQuery.d.ts +0 -5
- package/script/methods/proportionsVerticalQuery.d.ts.map +0 -1
- package/script/methods/proportionsVerticalQuery.js +0 -25
- package/script/methods/quantilesQuery.d.ts +0 -4
- package/script/methods/quantilesQuery.d.ts.map +0 -1
- package/script/methods/quantilesQuery.js +0 -18
- package/script/methods/randomPointQuery.d.ts +0 -2
- package/script/methods/randomPointQuery.d.ts.map +0 -1
- package/script/methods/randomPointQuery.js +0 -69
- package/script/methods/ranksQuery.d.ts +0 -6
- package/script/methods/ranksQuery.d.ts.map +0 -1
- package/script/methods/ranksQuery.js +0 -18
- package/script/methods/removeDuplicatesQuery.d.ts +0 -4
- package/script/methods/removeDuplicatesQuery.d.ts.map +0 -1
- package/script/methods/removeDuplicatesQuery.js +0 -18
- package/script/methods/removeMissingQuery.d.ts +0 -7
- package/script/methods/removeMissingQuery.d.ts.map +0 -1
- package/script/methods/removeMissingQuery.js +0 -46
- package/script/methods/removeQuery.d.ts +0 -4
- package/script/methods/removeQuery.d.ts.map +0 -1
- package/script/methods/removeQuery.js +0 -21
- package/script/methods/renameColumnQuery.d.ts +0 -2
- package/script/methods/renameColumnQuery.d.ts.map +0 -1
- package/script/methods/renameColumnQuery.js +0 -10
- package/script/methods/replaceNullsQuery.d.ts +0 -2
- package/script/methods/replaceNullsQuery.d.ts.map +0 -1
- package/script/methods/replaceNullsQuery.js +0 -16
- package/script/methods/replaceQuery.d.ts +0 -5
- package/script/methods/replaceQuery.d.ts.map +0 -1
- package/script/methods/replaceQuery.js +0 -27
- package/script/methods/rollingQuery.d.ts +0 -5
- package/script/methods/rollingQuery.d.ts.map +0 -1
- package/script/methods/rollingQuery.js +0 -39
- package/script/methods/roundQuery.d.ts +0 -5
- package/script/methods/roundQuery.d.ts.map +0 -1
- package/script/methods/roundQuery.js +0 -19
- package/script/methods/selectRowsQuery.d.ts +0 -5
- package/script/methods/selectRowsQuery.d.ts.map +0 -1
- package/script/methods/selectRowsQuery.js +0 -6
- package/script/methods/sortQuery.d.ts +0 -8
- package/script/methods/sortQuery.d.ts.map +0 -1
- package/script/methods/sortQuery.js +0 -21
- package/script/methods/summarizeQuery.d.ts +0 -7
- package/script/methods/summarizeQuery.d.ts.map +0 -1
- package/script/methods/summarizeQuery.js +0 -115
- package/script/methods/trimQuery.d.ts +0 -5
- package/script/methods/trimQuery.d.ts.map +0 -1
- package/script/methods/trimQuery.js +0 -32
- package/script/methods/truncateQuery.d.ts +0 -2
- package/script/methods/truncateQuery.d.ts.map +0 -1
- package/script/methods/truncateQuery.js +0 -6
- package/script/methods/upperQuery.d.ts +0 -2
- package/script/methods/upperQuery.d.ts.map +0 -1
- package/script/methods/upperQuery.js +0 -10
- package/script/methods/writeDataQuery.d.ts +0 -5
- package/script/methods/writeDataQuery.d.ts.map +0 -1
- package/script/methods/writeDataQuery.js +0 -50
- package/script/methods/writeGeoDataQuery.d.ts +0 -4
- package/script/methods/writeGeoDataQuery.d.ts.map +0 -1
- package/script/methods/writeGeoDataQuery.js +0 -25
- package/script/methods/zScoreQuery.d.ts +0 -5
- package/script/methods/zScoreQuery.d.ts.map +0 -1
- package/script/methods/zScoreQuery.js +0 -29
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.default = splitExtract;
|
|
7
|
+
const quoteIdentifier_js_1 = __importDefault(require("../helpers/quoteIdentifier.js"));
|
|
8
|
+
const assertNewColumns_js_1 = __importDefault(require("../helpers/assertNewColumns.js"));
|
|
9
|
+
const queueOp_js_1 = __importDefault(require("../helpers/queueOp.js"));
|
|
10
|
+
function splitExtract(simpleTable, column, separator, index, newColumn) {
|
|
11
|
+
(0, queueOp_js_1.default)(simpleTable, {
|
|
12
|
+
kind: "fusable",
|
|
13
|
+
method: "splitExtract()",
|
|
14
|
+
parameters: { column, separator, index, newColumn },
|
|
15
|
+
values: [separator],
|
|
16
|
+
needsSchema: true,
|
|
17
|
+
buildSelect: (input, types) => {
|
|
18
|
+
// Writing back to the split column itself is allowed (in-place); any
|
|
19
|
+
// other existing column is a duplicate, like v1's ALTER TABLE ADD.
|
|
20
|
+
(0, assertNewColumns_js_1.default)(types, [newColumn], "splitExtract()", [column]);
|
|
21
|
+
const expression = `SPLIT_PART(${(0, quoteIdentifier_js_1.default)(column)}, ?, ${index + 1})`;
|
|
22
|
+
return column === newColumn
|
|
23
|
+
? `SELECT * REPLACE (${expression} AS ${(0, quoteIdentifier_js_1.default)(newColumn)}) FROM ${input}`
|
|
24
|
+
: `SELECT *, ${expression} AS ${(0, quoteIdentifier_js_1.default)(newColumn)} FROM ${input}`;
|
|
25
|
+
},
|
|
26
|
+
});
|
|
27
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type SimpleTable from "../class/SimpleTable.js";
|
|
2
2
|
export default function splitSpread(simpleTable: SimpleTable, column: string, separator: string, newColumns: string[], options?: {
|
|
3
|
-
|
|
4
|
-
}):
|
|
3
|
+
strict?: boolean;
|
|
4
|
+
}): void;
|
|
5
5
|
//# sourceMappingURL=splitSpread.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"splitSpread.d.ts","sourceRoot":"","sources":["../../src/methods/splitSpread.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"splitSpread.d.ts","sourceRoot":"","sources":["../../src/methods/splitSpread.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,WAAW,MAAM,yBAAyB,CAAC;AAEvD,MAAM,CAAC,OAAO,UAAU,WAAW,CACjC,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAAE,EACpB,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,OAAO,CAAC;CACb,QAkBP"}
|
|
@@ -4,64 +4,87 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.default = splitSpread;
|
|
7
|
+
const quoteIdentifier_js_1 = __importDefault(require("../helpers/quoteIdentifier.js"));
|
|
8
|
+
const assertNewColumns_js_1 = __importDefault(require("../helpers/assertNewColumns.js"));
|
|
7
9
|
const mergeOptions_js_1 = __importDefault(require("../helpers/mergeOptions.js"));
|
|
8
10
|
const queryDB_js_1 = __importDefault(require("../helpers/queryDB.js"));
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
const queueOp_js_1 = __importDefault(require("../helpers/queueOp.js"));
|
|
12
|
+
function splitSpread(simpleTable, column, separator, newColumns, options = {}) {
|
|
13
|
+
newColumns = [...newColumns];
|
|
14
|
+
if (newColumns.length === 0) {
|
|
15
|
+
throw new Error("splitSpread() newColumns must contain at least one column.");
|
|
16
|
+
}
|
|
17
|
+
options = structuredClone(options);
|
|
18
|
+
// The pre-validation queries the data, so splitSpread can't be expressed
|
|
19
|
+
// as a single SELECT over its input: it executes as a barrier.
|
|
20
|
+
(0, queueOp_js_1.default)(simpleTable, {
|
|
21
|
+
kind: "barrier",
|
|
22
|
+
method: "splitSpread()",
|
|
23
|
+
parameters: { column, separator, newColumns, options },
|
|
24
|
+
execute: () => executeSplitSpread(simpleTable, column, separator, newColumns, options),
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
async function executeSplitSpread(simpleTable, column, separator, newColumns, options) {
|
|
28
|
+
const partCount = newColumns.length;
|
|
29
|
+
const strict = options.strict !== false;
|
|
30
|
+
// A SELECT *, expr AS col colliding with an existing column would be
|
|
31
|
+
// silently renamed by DuckDB (col -> col_1) instead of erroring, unlike
|
|
32
|
+
// the ALTER TABLE ADD this used to run.
|
|
33
|
+
(0, assertNewColumns_js_1.default)(await simpleTable.getTypes(), newColumns, "splitSpread()");
|
|
34
|
+
if (strict) {
|
|
35
|
+
// Both bounds come from the same scan instead of one query each.
|
|
36
|
+
const partsResult = await (0, queryDB_js_1.default)(simpleTable, `SELECT
|
|
37
|
+
MAX(ARRAY_LENGTH(STRING_SPLIT(${(0, quoteIdentifier_js_1.default)(column)}, ?))) AS max_parts,
|
|
38
|
+
MIN(ARRAY_LENGTH(STRING_SPLIT(${(0, quoteIdentifier_js_1.default)(column)}, ?))) AS min_parts
|
|
39
|
+
FROM ${(0, quoteIdentifier_js_1.default)(simpleTable.name)}`, (0, mergeOptions_js_1.default)(simpleTable, {
|
|
14
40
|
table: simpleTable.name,
|
|
15
41
|
method: "splitSpread()",
|
|
16
42
|
parameters: { column, separator, newColumns },
|
|
17
|
-
|
|
43
|
+
returnData: true,
|
|
44
|
+
values: [separator, separator],
|
|
18
45
|
}));
|
|
19
|
-
if (
|
|
20
|
-
const maxParts =
|
|
21
|
-
|
|
46
|
+
if (partsResult && partsResult.length > 0) {
|
|
47
|
+
const maxParts = partsResult[0].max_parts;
|
|
48
|
+
const minParts = partsResult[0].min_parts;
|
|
49
|
+
if (maxParts > partCount) {
|
|
22
50
|
// Get the first 5 rows with more parts than expected
|
|
23
|
-
const problematicRows = await (0, queryDB_js_1.default)(simpleTable, `SELECT
|
|
24
|
-
FROM
|
|
25
|
-
WHERE ARRAY_LENGTH(STRING_SPLIT(
|
|
51
|
+
const problematicRows = await (0, queryDB_js_1.default)(simpleTable, `SELECT ${(0, quoteIdentifier_js_1.default)(column)}
|
|
52
|
+
FROM ${(0, quoteIdentifier_js_1.default)(simpleTable.name)}
|
|
53
|
+
WHERE ARRAY_LENGTH(STRING_SPLIT(${(0, quoteIdentifier_js_1.default)(column)}, ?)) > ${partCount}
|
|
26
54
|
LIMIT 5`, (0, mergeOptions_js_1.default)(simpleTable, {
|
|
27
55
|
table: simpleTable.name,
|
|
28
56
|
method: "splitSpread()",
|
|
29
57
|
parameters: { column, separator, newColumns },
|
|
30
|
-
|
|
58
|
+
returnData: true,
|
|
59
|
+
values: [separator],
|
|
31
60
|
}));
|
|
32
61
|
const exampleRows = problematicRows
|
|
33
62
|
? problematicRows.map((row) => row[column]).join("\n - ")
|
|
34
63
|
: "";
|
|
35
|
-
throw new Error(`Some rows contain more values after splitting (${maxParts}) than the number of new columns specified (${
|
|
36
|
-
When splitting by '${separator}', each row must produce at most ${
|
|
64
|
+
throw new Error(`Some rows contain more values after splitting (${maxParts}) than the number of new columns specified (${partCount}).
|
|
65
|
+
When splitting by '${separator}', each row must produce at most ${partCount} value(s) to fit in the columns: ${newColumns.join(", ")}.
|
|
37
66
|
|
|
38
67
|
First 5 rows with too many values:\n - ${exampleRows}`);
|
|
39
68
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
const minPartsResult = await (0, queryDB_js_1.default)(simpleTable, `SELECT MIN(ARRAY_LENGTH(STRING_SPLIT("${column}", '${separator}'))) as min_parts FROM "${simpleTable.name}"`, (0, mergeOptions_js_1.default)(simpleTable, {
|
|
43
|
-
table: simpleTable.name,
|
|
44
|
-
method: "splitSpread()",
|
|
45
|
-
parameters: { column, separator, newColumns },
|
|
46
|
-
returnDataFrom: "query",
|
|
47
|
-
}));
|
|
48
|
-
if (minPartsResult && minPartsResult.length > 0) {
|
|
49
|
-
const minParts = minPartsResult[0].min_parts;
|
|
50
|
-
if (minParts < nbParts) {
|
|
51
|
-
console.warn(`splitSpread() warning: Some rows contain fewer values after splitting (${minParts}) than the number of new columns (${nbParts}). Empty strings will be used for missing values.`);
|
|
69
|
+
if (minParts < partCount) {
|
|
70
|
+
console.warn(`splitSpread() warning: Some rows contain fewer values after splitting (${minParts}) than the number of new columns (${partCount}). Empty strings will be used for missing values.`);
|
|
52
71
|
}
|
|
53
72
|
}
|
|
54
73
|
}
|
|
55
|
-
const
|
|
56
|
-
|
|
57
|
-
.join("\n");
|
|
58
|
-
const updateStatements = newColumns
|
|
59
|
-
.map((col, i) => `UPDATE "${simpleTable.name}" SET "${col}" = SPLIT_PART("${column}", '${separator}', ${i + 1});`)
|
|
60
|
-
.join("\n");
|
|
61
|
-
await (0, queryDB_js_1.default)(simpleTable, `${alterStatements}
|
|
62
|
-
${updateStatements}`, (0, mergeOptions_js_1.default)(simpleTable, {
|
|
74
|
+
const split = splitSpreadQuery(simpleTable.name, column, separator, newColumns);
|
|
75
|
+
await (0, queryDB_js_1.default)(simpleTable, split.query, (0, mergeOptions_js_1.default)(simpleTable, {
|
|
63
76
|
table: simpleTable.name,
|
|
64
77
|
method: "splitSpread()",
|
|
65
78
|
parameters: { column, separator, newColumns },
|
|
79
|
+
values: split.values,
|
|
66
80
|
}));
|
|
67
81
|
}
|
|
82
|
+
function splitSpreadQuery(table, column, separator, newColumns) {
|
|
83
|
+
// All columns are added in a single rewrite, so the table is scanned once
|
|
84
|
+
// instead of once per ALTER + once per UPDATE.
|
|
85
|
+
const splitColumns = newColumns
|
|
86
|
+
.map((col, i) => `SPLIT_PART(${(0, quoteIdentifier_js_1.default)(column)}, ?, ${i + 1}) AS ${(0, quoteIdentifier_js_1.default)(col)}`)
|
|
87
|
+
.join(", ");
|
|
88
|
+
const query = `CREATE OR REPLACE TABLE ${(0, quoteIdentifier_js_1.default)(table)} AS SELECT *, ${splitColumns} FROM ${(0, quoteIdentifier_js_1.default)(table)}`;
|
|
89
|
+
return { query, values: newColumns.map(() => separator) };
|
|
90
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type SimpleTable from "../class/SimpleTable.js";
|
|
2
|
+
export default function stream(simpleTable: SimpleTable, options?: {
|
|
3
|
+
columns?: string | string[];
|
|
4
|
+
conditions?: string;
|
|
5
|
+
}): AsyncGenerator<{
|
|
6
|
+
[key: string]: unknown;
|
|
7
|
+
}, void, undefined>;
|
|
8
|
+
//# sourceMappingURL=stream.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../src/methods/stream.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,WAAW,MAAM,yBAAyB,CAAC;AAGvD,wBAA+B,MAAM,CACnC,WAAW,EAAE,WAAW,EACxB,OAAO,GAAE;IACP,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;CAChB,GACL,cAAc,CAAC;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,EAAE,IAAI,EAAE,SAAS,CAAC,CAmE7D"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.default = stream;
|
|
7
|
+
const quoteIdentifier_js_1 = __importDefault(require("../helpers/quoteIdentifier.js"));
|
|
8
|
+
const runQuery_js_1 = require("../helpers/runQuery.js");
|
|
9
|
+
const SDAError_js_1 = __importDefault(require("../class/SDAError.js"));
|
|
10
|
+
const flushAllTables_js_1 = __importDefault(require("../helpers/flushAllTables.js"));
|
|
11
|
+
const observeQuery_js_1 = __importDefault(require("../helpers/observeQuery.js"));
|
|
12
|
+
async function* stream(simpleTable, options = {}) {
|
|
13
|
+
if (simpleTable.connection === undefined) {
|
|
14
|
+
await simpleTable.sdb.start();
|
|
15
|
+
simpleTable.db = simpleTable.sdb.db;
|
|
16
|
+
simpleTable.connection = simpleTable.sdb.connection;
|
|
17
|
+
}
|
|
18
|
+
// stream() reads directly from the connection instead of going through
|
|
19
|
+
// queryDB, so it must flush the pending chains itself before yielding.
|
|
20
|
+
await (0, flushAllTables_js_1.default)(simpleTable.sdb);
|
|
21
|
+
const columns = options.columns
|
|
22
|
+
? (typeof options.columns === "string"
|
|
23
|
+
? [options.columns]
|
|
24
|
+
: options.columns)
|
|
25
|
+
: undefined;
|
|
26
|
+
const query = `SELECT ${columns ? columns.map((d) => `${(0, quoteIdentifier_js_1.default)(d)}`).join(", ") : "*"} FROM ${(0, quoteIdentifier_js_1.default)(simpleTable.name)}${options.conditions ? ` WHERE ${options.conditions}` : ""};`;
|
|
27
|
+
try {
|
|
28
|
+
await (0, observeQuery_js_1.default)(simpleTable.connection, query, [], {
|
|
29
|
+
logSQL: simpleTable.sdb.logSQL,
|
|
30
|
+
explainSQL: simpleTable.sdb.explainSQL,
|
|
31
|
+
});
|
|
32
|
+
const result = await simpleTable.connection.stream(query);
|
|
33
|
+
const columnNames = result.deduplicatedColumnNames();
|
|
34
|
+
const columnTypes = result.columnTypes();
|
|
35
|
+
if (columnTypes.some((type) => type.toString().toLowerCase().includes("geometry"))) {
|
|
36
|
+
throw new Error("The query returns geometry columns. Use getGeoData() instead.");
|
|
37
|
+
}
|
|
38
|
+
const converters = columnTypes.map((type, i) => (0, runQuery_js_1.makeConverter)(type, columnNames[i], simpleTable.name));
|
|
39
|
+
const columnCount = columnNames.length;
|
|
40
|
+
while (true) {
|
|
41
|
+
const chunk = await result.fetchChunk();
|
|
42
|
+
if (!chunk || chunk.rowCount === 0) {
|
|
43
|
+
break;
|
|
44
|
+
}
|
|
45
|
+
for (const rawRow of chunk.getRows()) {
|
|
46
|
+
const row = {};
|
|
47
|
+
for (let i = 0; i < columnCount; i++) {
|
|
48
|
+
row[columnNames[i]] = converters[i](rawRow[i]);
|
|
49
|
+
}
|
|
50
|
+
yield row;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
catch (error) {
|
|
55
|
+
if (error instanceof SDAError_js_1.default) {
|
|
56
|
+
throw error;
|
|
57
|
+
}
|
|
58
|
+
throw new SDAError_js_1.default({
|
|
59
|
+
method: "stream()",
|
|
60
|
+
parameters: { options },
|
|
61
|
+
query,
|
|
62
|
+
cause: error,
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
|
+
import { type Stat } from "../helpers/getStatExpression.js";
|
|
1
2
|
import type SimpleTable from "../class/SimpleTable.js";
|
|
2
|
-
|
|
3
|
+
type SummarizeOptions = {
|
|
3
4
|
outputTable?: string | boolean;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
[key: string]:
|
|
5
|
+
columns?: string | string[];
|
|
6
|
+
by?: string | string[];
|
|
7
|
+
stats?: Stat | Stat[] | {
|
|
8
|
+
[key: string]: Stat;
|
|
8
9
|
};
|
|
9
10
|
decimals?: number;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
datesToMs?: boolean;
|
|
12
|
+
};
|
|
13
|
+
export default function summarize(simpleTable: SimpleTable, options?: SummarizeOptions): SimpleTable;
|
|
14
|
+
export {};
|
|
13
15
|
//# sourceMappingURL=summarize.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"summarize.d.ts","sourceRoot":"","sources":["../../src/methods/summarize.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"summarize.d.ts","sourceRoot":"","sources":["../../src/methods/summarize.ts"],"names":[],"mappings":"AACA,OAA0B,EAGxB,KAAK,IAAI,EACV,MAAM,iCAAiC,CAAC;AAOzC,OAAO,KAAK,WAAW,MAAM,yBAAyB,CAAC;AAGvD,KAAK,gBAAgB,GAAG;IACtB,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC5B,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IAChD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,SAAS,CAC/B,WAAW,EAAE,WAAW,EACxB,OAAO,GAAE,gBAAqB,GAC7B,WAAW,CA6Cb"}
|
|
@@ -1,66 +1,186 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
37
|
};
|
|
5
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
39
|
exports.default = summarize;
|
|
40
|
+
const quoteIdentifier_js_1 = __importDefault(require("../helpers/quoteIdentifier.js"));
|
|
41
|
+
const getStatExpression_js_1 = __importStar(require("../helpers/getStatExpression.js"));
|
|
7
42
|
const mergeOptions_js_1 = __importDefault(require("../helpers/mergeOptions.js"));
|
|
8
43
|
const queryDB_js_1 = __importDefault(require("../helpers/queryDB.js"));
|
|
44
|
+
const queueOp_js_1 = __importDefault(require("../helpers/queueOp.js"));
|
|
45
|
+
const resolveOutputTable_js_1 = __importDefault(require("../helpers/resolveOutputTable.js"));
|
|
9
46
|
const stringToArray_js_1 = __importDefault(require("../helpers/stringToArray.js"));
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
47
|
+
function summarize(simpleTable, options = {}) {
|
|
48
|
+
options = structuredClone(options);
|
|
49
|
+
options.outputTable = (0, resolveOutputTable_js_1.default)(simpleTable, options.outputTable);
|
|
50
|
+
const columns = getSummarizeColumns(options);
|
|
51
|
+
const boundColumns = columns.length > 1 ? columns : [];
|
|
52
|
+
if (typeof options.outputTable === "string") {
|
|
53
|
+
// The output table instance is created at call time so it can be
|
|
54
|
+
// returned synchronously and chained on right away.
|
|
55
|
+
const outputTable = simpleTable.sdb.newTable(options.outputTable);
|
|
56
|
+
(0, queueOp_js_1.default)(outputTable, {
|
|
57
|
+
kind: "barrier",
|
|
58
|
+
method: "summarize()",
|
|
59
|
+
parameters: { options },
|
|
60
|
+
execute: async () => {
|
|
61
|
+
await (0, queryDB_js_1.default)(simpleTable, `CREATE OR REPLACE TABLE ${(0, quoteIdentifier_js_1.default)(outputTable.name)} AS ${summarizeSelect(`${(0, quoteIdentifier_js_1.default)(simpleTable.name)}`, await simpleTable.getTypes(), options)}`, (0, mergeOptions_js_1.default)(simpleTable, {
|
|
62
|
+
table: outputTable.name,
|
|
63
|
+
method: "summarize()",
|
|
64
|
+
parameters: { options },
|
|
65
|
+
values: boundColumns,
|
|
66
|
+
}));
|
|
67
|
+
},
|
|
68
|
+
});
|
|
69
|
+
return outputTable;
|
|
70
|
+
}
|
|
71
|
+
(0, queueOp_js_1.default)(simpleTable, {
|
|
72
|
+
kind: "fusable",
|
|
73
|
+
method: "summarize()",
|
|
74
|
+
parameters: { options },
|
|
75
|
+
needsSchema: true,
|
|
76
|
+
values: boundColumns,
|
|
77
|
+
buildSelect: (input, types) => summarizeSelect(input, types, options),
|
|
78
|
+
});
|
|
79
|
+
return simpleTable;
|
|
80
|
+
}
|
|
81
|
+
function getSummarizeColumns(options) {
|
|
82
|
+
const by = options.by ? (0, stringToArray_js_1.default)(options.by) : [];
|
|
83
|
+
return [
|
|
84
|
+
...new Set((options.columns ? (0, stringToArray_js_1.default)(options.columns) : []).filter((column) => !by.includes(column))),
|
|
85
|
+
];
|
|
86
|
+
}
|
|
87
|
+
function summarizeSelect(input, types, options) {
|
|
88
|
+
const by = options.by ? (0, stringToArray_js_1.default)(options.by) : [];
|
|
89
|
+
// Duplicated columns would duplicate rows now that the branches are combined
|
|
90
|
+
// with UNION ALL instead of a deduplicating UNION.
|
|
91
|
+
const columns = getSummarizeColumns(options);
|
|
92
|
+
let stats;
|
|
93
|
+
let outputColumns;
|
|
94
|
+
if (options.stats === undefined) {
|
|
95
|
+
stats = columns.length === 0 ? ["count"] : [...getStatExpression_js_1.allStats];
|
|
96
|
+
}
|
|
97
|
+
else if (typeof options.stats === "string") {
|
|
98
|
+
stats = [options.stats];
|
|
19
99
|
}
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
100
|
+
else if (Array.isArray(options.stats)) {
|
|
101
|
+
stats = options.stats.length === 0 ? [...getStatExpression_js_1.allStats] : options.stats;
|
|
102
|
+
}
|
|
103
|
+
else {
|
|
104
|
+
const entries = Object.entries(options.stats);
|
|
105
|
+
outputColumns = entries.map((d) => d[0]);
|
|
106
|
+
stats = entries.map((d) => d[1]);
|
|
107
|
+
}
|
|
108
|
+
// The `column` output column is a row key that distinguishes rows for
|
|
109
|
+
// different input columns, so it appears only when there is more than one.
|
|
110
|
+
const columnColumn = columns.length > 1;
|
|
111
|
+
// With datesToMs, dates are converted to milliseconds inside the aggregate
|
|
112
|
+
// expressions (same conversions as convert()), so the input table is left
|
|
113
|
+
// untouched instead of being rewritten.
|
|
114
|
+
const references = {};
|
|
115
|
+
const effectiveTypes = {};
|
|
116
|
+
for (const column of columns) {
|
|
117
|
+
const type = types[column];
|
|
118
|
+
if (options.datesToMs === true &&
|
|
119
|
+
typeof type === "string" &&
|
|
120
|
+
(type.includes("TIME") || type.includes("DATE"))) {
|
|
121
|
+
references[column] = type.includes("TIME")
|
|
122
|
+
? `(date_part('epoch', ${(0, quoteIdentifier_js_1.default)(column)}) * 1000)`
|
|
123
|
+
: `(epoch(${(0, quoteIdentifier_js_1.default)(column)}) * 1000)`;
|
|
124
|
+
effectiveTypes[column] = "BIGINT";
|
|
28
125
|
}
|
|
29
126
|
else {
|
|
30
|
-
|
|
127
|
+
references[column] = `${(0, quoteIdentifier_js_1.default)(column)}`;
|
|
128
|
+
effectiveTypes[column] = type;
|
|
31
129
|
}
|
|
32
130
|
}
|
|
33
|
-
|
|
34
|
-
|
|
131
|
+
const columnTypes = columns.map((d) => effectiveTypes[d]);
|
|
132
|
+
const doubleAndDate = columnTypes.includes("DOUBLE") &&
|
|
133
|
+
columnTypes.some(getStatExpression_js_1.isTemporalStatType);
|
|
134
|
+
if (doubleAndDate) {
|
|
135
|
+
throw new Error("You are trying to summarize numbers and timestamps/dates/times. You can specify columns in the options (just numbers or just timestamps/dates/times) or convert your timestamps/dates/times to the number of ms since 1970-01-01 00:00:00 by passing the option { datesToMs: true }.");
|
|
35
136
|
}
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
137
|
+
const bySelect = by.map((d) => `${(0, quoteIdentifier_js_1.default)(d)}`).join(", ");
|
|
138
|
+
const groupBy = by.length > 0 ? `\nGROUP BY ${bySelect}` : "";
|
|
139
|
+
// With no columns, the only meaningful statistic is the row count, which
|
|
140
|
+
// doesn't need an input-column label (or any temporary column) at all.
|
|
141
|
+
if (columns.length === 0) {
|
|
142
|
+
const statColumns = stats.map((stat, i) => {
|
|
143
|
+
const name = outputColumns ? outputColumns[i] : stat;
|
|
144
|
+
return stat === "count"
|
|
145
|
+
? `CAST(COUNT(*) AS INTEGER) AS ${(0, quoteIdentifier_js_1.default)(name)}`
|
|
146
|
+
: `NULL AS ${(0, quoteIdentifier_js_1.default)(name)}`;
|
|
147
|
+
});
|
|
148
|
+
const orderBy = by.length > 0
|
|
149
|
+
? `\nORDER BY ${by.map((d) => `${(0, quoteIdentifier_js_1.default)(d)} ASC`).join(", ")}`
|
|
150
|
+
: "";
|
|
151
|
+
return `SELECT ${[
|
|
152
|
+
...by.map((d) => `${(0, quoteIdentifier_js_1.default)(d)}`),
|
|
153
|
+
...statColumns,
|
|
154
|
+
].join(", ")}\nFROM ${input}${groupBy}${orderBy}`;
|
|
40
155
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
156
|
+
// One UNION ALL branch per input column. DuckDB runs the branches as
|
|
157
|
+
// concurrent pipelines, which parallelizes the expensive aggregates
|
|
158
|
+
// (medians, distinct counts) better than computing them all in one scan.
|
|
159
|
+
const branches = [];
|
|
160
|
+
for (const column of columns) {
|
|
161
|
+
let hasAggregate = false;
|
|
162
|
+
const projections = stats.map((stat, j) => {
|
|
163
|
+
const name = outputColumns ? outputColumns[j] : stat;
|
|
164
|
+
const expression = (0, getStatExpression_js_1.default)(stat, effectiveTypes[column], references[column], options.decimals);
|
|
165
|
+
if (expression === null) {
|
|
166
|
+
return `NULL AS ${(0, quoteIdentifier_js_1.default)(name)}`;
|
|
48
167
|
}
|
|
168
|
+
hasAggregate = true;
|
|
169
|
+
return `${expression} AS ${(0, quoteIdentifier_js_1.default)(name)}`;
|
|
170
|
+
});
|
|
171
|
+
const select = `SELECT ${columnColumn ? `? AS ${(0, quoteIdentifier_js_1.default)("column")}, ` : ""}${bySelect === "" ? "" : `${bySelect}, `}${projections.join(", ")}`;
|
|
172
|
+
if (by.length === 0 && !hasAggregate) {
|
|
173
|
+
// Every statistic is NULL and there is nothing to group by: the branch
|
|
174
|
+
// is a single constant row, so the input is not even scanned.
|
|
175
|
+
branches.push(select);
|
|
49
176
|
}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
options.values = options.values.filter((d) => !options.categories?.includes(d));
|
|
53
|
-
await (0, queryDB_js_1.default)(SimpleTable, (0, summarizeQuery_js_1.default)(SimpleTable.name, types, outputTable, options.values, options.categories, options.summaries, options, columns), (0, mergeOptions_js_1.default)(SimpleTable, {
|
|
54
|
-
table: outputTable,
|
|
55
|
-
method: "summarize()",
|
|
56
|
-
parameters: {
|
|
57
|
-
options,
|
|
58
|
-
},
|
|
59
|
-
}));
|
|
60
|
-
if (options.values.includes("rowNumberToSummarizeQuerySDA")) {
|
|
61
|
-
if (await SimpleTable.hasColumn("rowNumberToSummarizeQuerySDA")) {
|
|
62
|
-
await SimpleTable.removeColumns("rowNumberToSummarizeQuerySDA");
|
|
177
|
+
else {
|
|
178
|
+
branches.push(`${select}\nFROM ${input}${groupBy}`);
|
|
63
179
|
}
|
|
64
|
-
SimpleTable.sdb.customQuery(`ALTER TABLE "${outputTable}" DROP COLUMN value;`);
|
|
65
180
|
}
|
|
181
|
+
const orderByColumns = columnColumn ? ["column", ...by] : by;
|
|
182
|
+
const orderBy = orderByColumns.length > 0
|
|
183
|
+
? `\nORDER BY ${orderByColumns.map((d) => `${(0, quoteIdentifier_js_1.default)(d)} ASC`).join(", ")}`
|
|
184
|
+
: "";
|
|
185
|
+
return `${branches.join("\nUNION ALL\n")}${orderBy}`;
|
|
66
186
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trim.d.ts","sourceRoot":"","sources":["../../src/methods/trim.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,WAAW,MAAM,yBAAyB,CAAC;AAEvD,MAAM,CAAC,OAAO,UAAU,IAAI,CAC1B,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,EAC1B,OAAO,GAAE;IACP,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;CAC7B,QAuCP"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.default = trim;
|
|
7
|
+
const quoteIdentifier_js_1 = __importDefault(require("../helpers/quoteIdentifier.js"));
|
|
8
|
+
const stringToArray_js_1 = __importDefault(require("../helpers/stringToArray.js"));
|
|
9
|
+
const queueOp_js_1 = __importDefault(require("../helpers/queueOp.js"));
|
|
10
|
+
function trim(simpleTable, columns, options = {}) {
|
|
11
|
+
const cols = (0, stringToArray_js_1.default)(columns);
|
|
12
|
+
const side = options.side ?? "both";
|
|
13
|
+
const fn = side === "left"
|
|
14
|
+
? "LTRIM"
|
|
15
|
+
: side === "right"
|
|
16
|
+
? "RTRIM"
|
|
17
|
+
: side === "both"
|
|
18
|
+
? "TRIM"
|
|
19
|
+
: null;
|
|
20
|
+
if (fn === null) {
|
|
21
|
+
throw new Error(`trim() options.side must be "left", "right", or "both". Received ${JSON.stringify(options.side)}.`);
|
|
22
|
+
}
|
|
23
|
+
const specialCharacter = typeof options.character === "string" ? ", ?" : "";
|
|
24
|
+
(0, queueOp_js_1.default)(simpleTable, {
|
|
25
|
+
kind: "fusable",
|
|
26
|
+
method: "trim()",
|
|
27
|
+
parameters: { columns, options },
|
|
28
|
+
values: typeof options.character === "string"
|
|
29
|
+
? cols.map(() => options.character)
|
|
30
|
+
: undefined,
|
|
31
|
+
needsSchema: false,
|
|
32
|
+
buildSelect: (input) => `SELECT * REPLACE (${cols
|
|
33
|
+
.map((c) => `${fn}(${(0, quoteIdentifier_js_1.default)(c)}${specialCharacter}) AS ${(0, quoteIdentifier_js_1.default)(c)}`)
|
|
34
|
+
.join(", ")}) FROM ${input}`,
|
|
35
|
+
});
|
|
36
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"truncate.d.ts","sourceRoot":"","sources":["../../src/methods/truncate.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,WAAW,MAAM,yBAAyB,CAAC;AAEvD,MAAM,CAAC,OAAO,UAAU,QAAQ,CAC9B,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,QAYf"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.default = truncate;
|
|
7
|
+
const quoteIdentifier_js_1 = __importDefault(require("../helpers/quoteIdentifier.js"));
|
|
8
|
+
const queueOp_js_1 = __importDefault(require("../helpers/queueOp.js"));
|
|
9
|
+
function truncate(simpleTable, column, length) {
|
|
10
|
+
(0, queueOp_js_1.default)(simpleTable, {
|
|
11
|
+
kind: "fusable",
|
|
12
|
+
method: "truncate()",
|
|
13
|
+
parameters: { column, length },
|
|
14
|
+
needsSchema: false,
|
|
15
|
+
buildSelect: (input) => `SELECT * REPLACE (LEFT(${(0, quoteIdentifier_js_1.default)(column)}, ${length}) AS ${(0, quoteIdentifier_js_1.default)(column)}) FROM ${input}`,
|
|
16
|
+
});
|
|
17
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"union.d.ts","sourceRoot":"","sources":["../../src/methods/union.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,WAAW,MAAM,yBAAyB,CAAC;AAEvD,MAAM,CAAC,OAAO,UAAU,KAAK,CAC3B,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,QAuBlB"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.default = union;
|
|
7
|
+
const quoteIdentifier_js_1 = __importDefault(require("../helpers/quoteIdentifier.js"));
|
|
8
|
+
const queueOp_js_1 = __importDefault(require("../helpers/queueOp.js"));
|
|
9
|
+
function union(simpleTable, column1, column2, newColumn) {
|
|
10
|
+
(0, queueOp_js_1.default)(simpleTable, {
|
|
11
|
+
kind: "fusable",
|
|
12
|
+
method: "union()",
|
|
13
|
+
parameters: { column1, column2, newColumn },
|
|
14
|
+
needsSchema: true,
|
|
15
|
+
needsSpatial: true,
|
|
16
|
+
buildSelect: (input, types) => {
|
|
17
|
+
// The schema type carries the projection (e.g. GEOMETRY('EPSG:4326')),
|
|
18
|
+
// so the cast keeps it on the new geometries.
|
|
19
|
+
const expression = `ST_Union(${(0, quoteIdentifier_js_1.default)(column1)}, ${(0, quoteIdentifier_js_1.default)(column2)})::${types[column1]}`;
|
|
20
|
+
return Object.keys(types).includes(newColumn)
|
|
21
|
+
? `SELECT * REPLACE (${expression} AS ${(0, quoteIdentifier_js_1.default)(newColumn)}) FROM ${input}`
|
|
22
|
+
: `SELECT *, ${expression} AS ${(0, quoteIdentifier_js_1.default)(newColumn)} FROM ${input}`;
|
|
23
|
+
},
|
|
24
|
+
});
|
|
25
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unnest.d.ts","sourceRoot":"","sources":["../../src/methods/unnest.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,WAAW,MAAM,yBAAyB,CAAC;AAEvD,MAAM,CAAC,OAAO,UAAU,MAAM,CAC5B,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,QAgBlB"}
|