@gscdump/engine 3.5.0 → 3.6.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 +28 -18
- package/dist/THIRD-PARTY-LICENSES.md +2 -2
- package/dist/adapters/duckdb-node.d.mts +4 -4
- package/dist/adapters/duckdb-node.mjs +103 -77
- package/dist/adapters/filesystem.d.mts +6 -7
- package/dist/adapters/filesystem.mjs +11 -6
- package/dist/adapters/hyparquet.d.mts +9 -10
- package/dist/adapters/hyparquet.mjs +84 -44
- package/dist/adapters/node-harness.d.mts +3 -4
- package/dist/adapters/parquet-attach.d.mts +4 -5
- package/dist/adapters/parquet-attach.mjs +7 -2
- package/dist/adapters/r2-manifest.d.mts +4 -5
- package/dist/adapters/r2.d.mts +2 -3
- package/dist/adapters/snapshot-attach.d.mts +7 -8
- package/dist/adapters/snapshot-attach.mjs +7 -2
- package/dist/analysis-range.d.mts +2 -3
- package/dist/analysis-types.d.mts +4 -5
- package/dist/analyzer/define.d.mts +6 -7
- package/dist/analyzer/dispatch.d.mts +2 -3
- package/dist/analyzer/registry.d.mts +4 -5
- package/dist/analyzer/types.d.mts +11 -12
- package/dist/arrow-utils.d.mts +4 -5
- package/dist/arrow-utils.mjs +10 -0
- package/dist/coerce.d.mts +1 -2
- package/dist/compaction.d.mts +2 -3
- package/dist/drizzle-schema.d.mts +14 -15
- package/dist/duckdb.d.mts +5 -6
- package/dist/duckdb.mjs +9 -5
- package/dist/engine.d.mts +1 -2
- package/dist/entities/empty-types.d.mts +4 -5
- package/dist/entities/indexing-metadata.d.mts +5 -6
- package/dist/entities/inspection.d.mts +9 -10
- package/dist/entities/query-dim.d.mts +7 -7
- package/dist/entities/sitemap-shared.d.mts +26 -27
- package/dist/entities/sitemap-write.d.mts +1 -2
- package/dist/entities/sitemap.d.mts +1 -2
- package/dist/entity-keys.d.mts +28 -29
- package/dist/errors.d.mts +5 -6
- package/dist/iceberg/append-sink.d.mts +2 -3
- package/dist/iceberg/catalog.d.mts +10 -10
- package/dist/iceberg/catalog.mjs +2 -2
- package/dist/iceberg/overwrite-writer.d.mts +17 -18
- package/dist/iceberg/schema.d.mts +16 -16
- package/dist/ingest-accumulator.d.mts +8 -9
- package/dist/ingest.d.mts +15 -12
- package/dist/ingest.mjs +22 -6
- package/dist/layout.d.mts +4 -5
- package/dist/node_modules/.pnpm/hyparquet-writer@0.16.9_patch_hash_d26d002aede61ad95dd633d6557b56897cdcbc45dfc3a5d93fa0e9075ad5425f/node_modules/hyparquet-writer/src/datapage.mjs +1 -1
- package/dist/node_modules/.pnpm/hyparquet-writer@0.16.9_patch_hash_d26d002aede61ad95dd633d6557b56897cdcbc45dfc3a5d93fa0e9075ad5425f/node_modules/hyparquet-writer/src/indexes.mjs +1 -1
- package/dist/node_modules/.pnpm/hyparquet-writer@0.16.9_patch_hash_d26d002aede61ad95dd633d6557b56897cdcbc45dfc3a5d93fa0e9075ad5425f/node_modules/hyparquet-writer/src/metadata.mjs +1 -1
- package/dist/node_modules/.pnpm/hyparquet-writer@0.16.9_patch_hash_d26d002aede61ad95dd633d6557b56897cdcbc45dfc3a5d93fa0e9075ad5425f/node_modules/hyparquet-writer/src/types.d.mts +2 -3
- package/dist/node_modules/.pnpm/hyparquet-writer@0.16.9_patch_hash_d26d002aede61ad95dd633d6557b56897cdcbc45dfc3a5d93fa0e9075ad5425f/node_modules/hyparquet-writer/types/index.d.mts +2 -3
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/assemble.mjs +3 -144
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/bloom.mjs +3 -58
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/column.mjs +8 -129
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/convert.mjs +3 -118
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/datapage.mjs +6 -144
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/delta.mjs +2 -65
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/encoding.mjs +2 -76
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/filter.mjs +4 -212
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/geoparquet.mjs +1 -24
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/index.mjs +3 -3
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/indexes.mjs +5 -32
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/metadata.mjs +7 -241
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/node.mjs +1 -5
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/plain.mjs +1 -79
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/plan.mjs +6 -375
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/read.mjs +6 -77
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/rowgroup.mjs +7 -175
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/scan.mjs +5 -73
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/schema.mjs +1 -22
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/snappy.mjs +1 -68
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/thrift.mjs +1 -86
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/types.d.mts +2 -28
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/utils.mjs +1 -31
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/variant.mjs +3 -228
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/src/wkb.mjs +1 -94
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/types/index.d.mts +2 -52
- package/dist/node_modules/.pnpm/hyparquet@1.29.2/node_modules/hyparquet/types/node.d.mts +2 -2
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/assemble.mjs +144 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/bloom.mjs +124 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/column.mjs +129 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/constants.mjs +80 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/convert.mjs +118 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/datapage.mjs +144 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/delta.mjs +65 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/encoding.mjs +76 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/filter.mjs +212 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/geoparquet.mjs +24 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/index.mjs +8 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/indexes.mjs +32 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/metadata.mjs +241 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/node.mjs +7 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/plain.mjs +79 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/plan.mjs +375 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/query.mjs +3 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/read.mjs +81 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/rowgroup.mjs +175 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/scan.mjs +74 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/schema.mjs +75 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/snappy.mjs +68 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/thrift.mjs +86 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/types.d.mts +25 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/utils.mjs +32 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/variant.mjs +228 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/wkb.mjs +94 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/src/xxhash.mjs +68 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/types/index.d.mts +58 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/types/node.d.mts +3 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/types/scan.d.mts +1 -0
- package/dist/node_modules/.pnpm/hyparquet@1.30.0/node_modules/hyparquet/types/utils.d.mts +1 -0
- package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/index.mjs +1 -1
- package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/read.mjs +1 -1
- package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/sql/icebergDataSource.mjs +1 -1
- package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/sql/icebergQuery.mjs +1 -1
- package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/types.d.mts +17 -18
- package/dist/node_modules/.pnpm/icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/create.d.mts +1 -0
- package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/types/index.d.mts +1 -1
- package/dist/node_modules/.pnpm/icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/manifest.d.mts +1 -0
- package/dist/node_modules/.pnpm/icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/metadata.d.mts +1 -0
- package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/types/read.d.mts +1 -1
- package/dist/node_modules/.pnpm/icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/s3.d.mts +1 -0
- package/dist/node_modules/.pnpm/icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/sql/icebergDataSource.d.mts +2 -0
- package/dist/node_modules/.pnpm/icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/sql/icebergQuery.d.mts +2 -0
- package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/types/write/write.d.mts +2 -3
- package/dist/node_modules/.pnpm/squirreling@0.16.4/node_modules/squirreling/src/ast.d.mts +1 -0
- package/dist/parquet-plan.d.mts +5 -6
- package/dist/period/index.d.mts +8 -8
- package/dist/profile.d.mts +3 -3
- package/dist/report/define.d.mts +1 -2
- package/dist/report/hash.d.mts +3 -4
- package/dist/report/registry.d.mts +3 -4
- package/dist/report/types.d.mts +22 -23
- package/dist/resolver/adapter.d.mts +2 -3
- package/dist/resolver/canonical-source.d.mts +1 -2
- package/dist/resolver/compile.d.mts +12 -8
- package/dist/resolver/compile.mjs +7 -3
- package/dist/resolver/datasets.d.mts +9 -9
- package/dist/resolver/extras-overlay.d.mts +2 -3
- package/dist/resolver/filter-utils.d.mts +7 -7
- package/dist/resolver/fragments.d.mts +3 -4
- package/dist/resolver/pg-adapter.d.mts +7 -8
- package/dist/resolver/run-query.d.mts +16 -17
- package/dist/resolver/run-query.mjs +16 -15
- package/dist/resolver/schema-drift.d.mts +2 -3
- package/dist/resolver/types.d.mts +8 -9
- package/dist/rollups/canonical.d.mts +4 -5
- package/dist/rollups/core.d.mts +12 -13
- package/dist/rollups/defaults.d.mts +2 -3
- package/dist/rollups/hourly.d.mts +3 -4
- package/dist/rollups/indexing.d.mts +5 -6
- package/dist/rollups/traffic.d.mts +5 -6
- package/dist/rollups/windows.d.mts +7 -8
- package/dist/schedule.d.mts +6 -7
- package/dist/schema.d.mts +9 -9
- package/dist/scope.d.mts +6 -7
- package/dist/sink.d.mts +9 -10
- package/dist/sinks/in-memory-sink.d.mts +3 -4
- package/dist/snapshot.d.mts +2 -3
- package/dist/source/attached-table.d.mts +4 -5
- package/dist/source/create-sql-query-source.d.mts +2 -3
- package/dist/source/index.d.mts +6 -6
- package/dist/source/source-types.d.mts +7 -8
- package/dist/sql-bind.d.mts +3 -4
- package/dist/sql-fragments.d.mts +5 -6
- package/dist/storage.d.mts +37 -37
- package/dist/sync-config.d.mts +20 -21
- package/dist/vendor/hysnappy-purejs.d.mts +2 -3
- package/dist/vendor/hysnappy-purejs.mjs +1 -1
- package/package.json +12 -10
- package/dist/node_modules/.pnpm/icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/sql/icebergDataSource.d.mts +0 -2
- package/dist/node_modules/.pnpm/icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/sql/icebergQuery.d.mts +0 -2
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/create.d.mts → hyparquet@1.30.0/node_modules/hyparquet/types/indexes.d.mts} +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird → hyparquet@1.30.0/node_modules/hyparquet}/types/metadata.d.mts +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/manifest.d.mts → hyparquet@1.30.0/node_modules/hyparquet/types/query.d.mts} +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7/node_modules/icebird/types/s3.d.mts → hyparquet@1.30.0/node_modules/hyparquet/types/read.d.mts} +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3/node_modules/squirreling/src/ast.d.mts → hyparquet@1.30.0/node_modules/hyparquet/types/snappy.d.mts} +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/avro/avro.metadata.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/avro/avro.read.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/avro/avro.write.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/catalog/file.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/catalog/loadTable.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/catalog/rest.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/create.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/delete.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/fetch.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/json.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/manifest.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/metadata.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/prune.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/puffin/deletion-vector.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/puffin/puffin.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/puffin/roaring.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/s3.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/schema.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/sigv4.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/sql/whereFilter.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/utils.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/commit.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/conversions.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/delete-file.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/geospatial.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/manifest-list.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/manifest.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/parquet.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/partition.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/rewrite.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/serde.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/snapshot.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/sort.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/stage-deletion-vector.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/stage-position-delete.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/stage.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/stats.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/transform.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/src/write/write.mjs +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/types/catalog/file.d.mts +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/types/catalog/rest.d.mts +0 -0
- /package/dist/node_modules/.pnpm/{icebird@0.8.27_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7 → icebird@0.8.28_patch_hash_651b5cc1b513184638c98e21a0852c4559044ae60f8449fbe9d81a894ea5b4d7}/node_modules/icebird/types/fetch.d.mts +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/backend/batch.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/backend/batchAdapters.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/backend/dataSource.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/accumulator.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/aggregates.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/batchResults.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/batches.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/execute.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/fold.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/join.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/rowScope.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/scanColumn.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/sort.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/streamingAggregate.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/utils.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/window.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/execute/yield.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/expression/alias.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/expression/batch.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/expression/binary.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/expression/date.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/expression/evaluate.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/expression/math.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/expression/regexp.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/expression/scalar.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/expression/strings.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/index.d.mts +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/index.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/parse/expression.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/parse/extractTables.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/parse/functions.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/parse/joins.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/parse/parse.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/parse/primary.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/parse/state.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/parse/tokenize.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/parse/types.d.mts +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/plan/columns.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/plan/plan.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/plan/types.d.mts +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/spatial/bbox.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/spatial/equality.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/spatial/operations.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/spatial/pointRelations.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/spatial/primitives.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/spatial/segments.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/spatial/spatial.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/spatial/wkt.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/types.d.mts +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/validation/aggregates.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/validation/executionErrors.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/validation/functions.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/validation/keywords.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/validation/parseErrors.mjs +0 -0
- /package/dist/node_modules/.pnpm/{squirreling@0.16.3 → squirreling@0.16.4}/node_modules/squirreling/src/validation/tables.mjs +0 -0
|
@@ -8,22 +8,22 @@ import { RollupDef } from "./core.mjs";
|
|
|
8
8
|
* — surfaces GSC's anonymous-query gap so the dashboard can warn users not
|
|
9
9
|
* to trust query-grained breakdowns as comprehensive.
|
|
10
10
|
*/
|
|
11
|
-
declare const dailyTotalsRollup: RollupDef;
|
|
11
|
+
export declare const dailyTotalsRollup: RollupDef;
|
|
12
12
|
/** Weekly totals, ISO week aligned. Cheap and stable for trend widgets. */
|
|
13
|
-
declare const weeklyTotalsRollup: RollupDef;
|
|
13
|
+
export declare const weeklyTotalsRollup: RollupDef;
|
|
14
14
|
/**
|
|
15
15
|
* Top 1000 pages by clicks over the trailing 28-day window. JSON for v1;
|
|
16
16
|
* promote to parquet (`top_pages_28d.parquet`) when the dashboard needs
|
|
17
17
|
* server-side WHERE filtering on this rollup.
|
|
18
18
|
*/
|
|
19
|
-
declare const topPages28dRollup: RollupDef;
|
|
19
|
+
export declare const topPages28dRollup: RollupDef;
|
|
20
20
|
/**
|
|
21
21
|
* Top 250 countries by clicks over the trailing 28-day window. Countries
|
|
22
22
|
* cardinality is bounded (~250 ISO codes), so the list fits in a tiny JSON
|
|
23
23
|
* payload regardless of traffic shape. Powers a geo-overview widget without
|
|
24
24
|
* spinning up DuckDB-WASM.
|
|
25
25
|
*/
|
|
26
|
-
declare const topCountries28dRollup: RollupDef;
|
|
26
|
+
export declare const topCountries28dRollup: RollupDef;
|
|
27
27
|
/**
|
|
28
28
|
* Parquet-format companion to `topKeywords28dRollup`. Same shape, but persists
|
|
29
29
|
* as a parquet object plus JSON sidecar pointer so widgets that need
|
|
@@ -34,5 +34,4 @@ declare const topCountries28dRollup: RollupDef;
|
|
|
34
34
|
* the JSON variant; the runner treats the two as independent ids so they can
|
|
35
35
|
* coexist during a migration.
|
|
36
36
|
*/
|
|
37
|
-
declare const topKeywords28dParquetRollup: RollupDef;
|
|
38
|
-
export { dailyTotalsRollup, topCountries28dRollup, topKeywords28dParquetRollup, topPages28dRollup, weeklyTotalsRollup };
|
|
37
|
+
export declare const topKeywords28dParquetRollup: RollupDef;
|
|
@@ -14,7 +14,7 @@ import { SearchType } from "gscdump/query";
|
|
|
14
14
|
* conservatively below the guard. Re-measure the parquet→IPC ratio against
|
|
15
15
|
* production and raise if headroom allows.
|
|
16
16
|
*/
|
|
17
|
-
declare const WINDOW_BYTE_BUDGET: number;
|
|
17
|
+
export declare const WINDOW_BYTE_BUDGET: number;
|
|
18
18
|
/**
|
|
19
19
|
* Per-page OUTPUT row cap for key-paginated rollups (`runWindowed({ paginate })`
|
|
20
20
|
* and `runPagedQuery`). `planRollupWindows` bounds the *input* parquet bytes a
|
|
@@ -33,15 +33,15 @@ declare const WINDOW_BYTE_BUDGET: number;
|
|
|
33
33
|
* `GROUP_CONCAT` variants string (up to ~10 variants × ~60 chars) the heuristic
|
|
34
34
|
* under-counts, so they page smaller to keep the real IPC payload bounded.
|
|
35
35
|
*/
|
|
36
|
-
declare const ROLLUP_PAGE_ROWS = 50000;
|
|
37
|
-
declare const ROLLUP_PAGE_ROWS_WIDE = 20000;
|
|
38
|
-
declare const ROLLUP_PAGE_ROWS_DAILY = 70000;
|
|
36
|
+
export declare const ROLLUP_PAGE_ROWS = 50000;
|
|
37
|
+
export declare const ROLLUP_PAGE_ROWS_WIDE = 20000;
|
|
38
|
+
export declare const ROLLUP_PAGE_ROWS_DAILY = 70000;
|
|
39
39
|
/**
|
|
40
40
|
* Plan byte-bounded windows over a partition set. Each window names the
|
|
41
41
|
* partitions whose span intersects it; a coarse tier file can land in two
|
|
42
42
|
* windows, so every windowed SQL MUST also date-filter to the window bounds.
|
|
43
43
|
*/
|
|
44
|
-
declare function planRollupWindows(parts: Array<{
|
|
44
|
+
export declare function planRollupWindows(parts: Array<{
|
|
45
45
|
partition: string;
|
|
46
46
|
bytes: number;
|
|
47
47
|
}>, clampRange?: {
|
|
@@ -64,7 +64,7 @@ declare function planRollupWindows(parts: Array<{
|
|
|
64
64
|
* The two are orthogonal and compose. When `paginate` is set, `sqlFor` MUST emit
|
|
65
65
|
* no trailing `ORDER BY`/`LIMIT` and `paginate.orderBy` MUST be a total order.
|
|
66
66
|
*/
|
|
67
|
-
declare function runWindowed(opts: {
|
|
67
|
+
export declare function runWindowed(opts: {
|
|
68
68
|
engine: RollupEngine;
|
|
69
69
|
ctx: TenantCtx;
|
|
70
70
|
table: TableName$1;
|
|
@@ -86,5 +86,4 @@ declare function runWindowed(opts: {
|
|
|
86
86
|
};
|
|
87
87
|
/** Cap each window's day span (output-cardinality bound). See `planRollupWindows`. */
|
|
88
88
|
maxWindowDays?: number;
|
|
89
|
-
}): Promise<Row$1[]>;
|
|
90
|
-
export { ROLLUP_PAGE_ROWS, ROLLUP_PAGE_ROWS_DAILY, ROLLUP_PAGE_ROWS_WIDE, WINDOW_BYTE_BUDGET, planRollupWindows, runWindowed };
|
|
89
|
+
}): Promise<Row$1[]>;
|
package/dist/schedule.d.mts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
interface ScheduleState {
|
|
1
|
+
export interface ScheduleState {
|
|
2
2
|
nextAt: number;
|
|
3
3
|
consecutiveUnchanged: number;
|
|
4
4
|
policyVersion: number;
|
|
5
5
|
}
|
|
6
|
-
interface SchedulePolicy {
|
|
6
|
+
export interface SchedulePolicy {
|
|
7
7
|
readonly version: number;
|
|
8
8
|
initial: (now: number) => ScheduleState;
|
|
9
9
|
observe: (prev: ScheduleState, evt: {
|
|
@@ -12,8 +12,7 @@ interface SchedulePolicy {
|
|
|
12
12
|
}) => ScheduleState;
|
|
13
13
|
isDue: (state: ScheduleState, now: number) => boolean;
|
|
14
14
|
}
|
|
15
|
-
declare const sitemapPolicy: SchedulePolicy;
|
|
16
|
-
type InspectionVerdict = 'PASS' | 'FAIL' | 'NEUTRAL';
|
|
17
|
-
declare function inspectionPolicy(verdict: InspectionVerdict): SchedulePolicy;
|
|
18
|
-
declare function fixedPolicy(intervalMs: number): SchedulePolicy;
|
|
19
|
-
export { InspectionVerdict, SchedulePolicy, ScheduleState, fixedPolicy, inspectionPolicy, sitemapPolicy };
|
|
15
|
+
export declare const sitemapPolicy: SchedulePolicy;
|
|
16
|
+
export type InspectionVerdict = 'PASS' | 'FAIL' | 'NEUTRAL';
|
|
17
|
+
export declare function inspectionPolicy(verdict: InspectionVerdict): SchedulePolicy;
|
|
18
|
+
export declare function fixedPolicy(intervalMs: number): SchedulePolicy;
|
package/dist/schema.d.mts
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import { DrizzleSchema, TABLE_METADATA, countries, dates, drizzleSchema, hourly_pages, page_queries, pages, queries, search_appearance, search_appearance_page_queries, search_appearance_pages, search_appearance_queries } from "./drizzle-schema.mjs";
|
|
2
2
|
import { ColumnDef, ColumnType, Row, TableName, TableSchema, TableSchema as TableSchema$1 } from "@gscdump/contracts";
|
|
3
|
-
declare const SCHEMAS: Record<TableName, TableSchema$1>;
|
|
4
|
-
declare function currentSchemaVersion(table: TableName): number;
|
|
3
|
+
export declare const SCHEMAS: Record<TableName, TableSchema$1>;
|
|
4
|
+
export declare function currentSchemaVersion(table: TableName): number;
|
|
5
5
|
/**
|
|
6
6
|
* DATE column names for a table. The single schema-derived source every read
|
|
7
7
|
* path uses to build the legacy-VARCHAR date canonicalization (see
|
|
8
8
|
* `dateReplaceClause` in `./sql-fragments`), so the engine codec and the CLI
|
|
9
9
|
* `dump`/`export` commands agree on which columns to cast.
|
|
10
10
|
*/
|
|
11
|
-
declare function dateColumnsFor(table: TableName): string[];
|
|
12
|
-
declare function allTables(): readonly TableName[];
|
|
13
|
-
declare function inferTable(dimensions: readonly string[]): TableName;
|
|
11
|
+
export declare function dateColumnsFor(table: TableName): string[];
|
|
12
|
+
export declare function allTables(): readonly TableName[];
|
|
13
|
+
export declare function inferTable(dimensions: readonly string[]): TableName;
|
|
14
14
|
/**
|
|
15
15
|
* Natural-key columns for a table: the `sortKey` dimensions that uniquely
|
|
16
16
|
* identify a metric row (e.g. `['date', 'url']` for `pages`).
|
|
17
17
|
*/
|
|
18
|
-
declare function naturalKeyColumns(table: TableName): readonly string[];
|
|
18
|
+
export declare function naturalKeyColumns(table: TableName): readonly string[];
|
|
19
19
|
/**
|
|
20
20
|
* Collapse rows that share a natural key (see {@link naturalKeyColumns}) to a
|
|
21
21
|
* single survivor.
|
|
@@ -30,6 +30,6 @@ declare function naturalKeyColumns(table: TableName): readonly string[];
|
|
|
30
30
|
* Last occurrence wins. Observed duplicates are byte-identical, so the choice
|
|
31
31
|
* of survivor is immaterial.
|
|
32
32
|
*/
|
|
33
|
-
declare function dedupeByNaturalKey(table: TableName, rows: readonly Row[]): Row[];
|
|
34
|
-
declare function dimensionToColumn(dim: string, _table: TableName): string;
|
|
35
|
-
export { type ColumnDef, type ColumnType, type DrizzleSchema,
|
|
33
|
+
export declare function dedupeByNaturalKey(table: TableName, rows: readonly Row[]): Row[];
|
|
34
|
+
export declare function dimensionToColumn(dim: string, _table: TableName): string;
|
|
35
|
+
export { type ColumnDef, type ColumnType, type DrizzleSchema, TABLE_METADATA, type TableSchema, countries, dates, drizzleSchema, hourly_pages, page_queries, pages, queries, search_appearance, search_appearance_page_queries, search_appearance_pages, search_appearance_queries };
|
package/dist/scope.d.mts
CHANGED
|
@@ -4,12 +4,12 @@ import { SQL } from "drizzle-orm";
|
|
|
4
4
|
* Inlined here to avoid the cross-module type import in this leaf module;
|
|
5
5
|
* any object with `start`/`end` strings (and optional `days`) satisfies it.
|
|
6
6
|
*/
|
|
7
|
-
interface ResolvedWindow {
|
|
7
|
+
export interface ResolvedWindow {
|
|
8
8
|
start: string;
|
|
9
9
|
end: string;
|
|
10
10
|
days?: number;
|
|
11
11
|
}
|
|
12
|
-
interface ScopedRunnerOptions {
|
|
12
|
+
export interface ScopedRunnerOptions {
|
|
13
13
|
siteId?: string;
|
|
14
14
|
window?: ResolvedWindow;
|
|
15
15
|
/** Inclusive lower bound for `date`. Ignored if `window` is supplied. */
|
|
@@ -23,12 +23,12 @@ interface ScopedRunnerOptions {
|
|
|
23
23
|
*/
|
|
24
24
|
grain?: 'day' | 'hour';
|
|
25
25
|
}
|
|
26
|
-
interface TableScope {
|
|
26
|
+
export interface TableScope {
|
|
27
27
|
wherePredicates: SQL[];
|
|
28
28
|
window?: ResolvedWindow;
|
|
29
29
|
siteId?: string;
|
|
30
30
|
}
|
|
31
|
-
declare function mergeScope(scope: TableScope, ...extra: SQL[]): SQL | undefined;
|
|
31
|
+
export declare function mergeScope(scope: TableScope, ...extra: SQL[]): SQL | undefined;
|
|
32
32
|
/**
|
|
33
33
|
* Bind `buildTableScope` + `mergeScope` to a specific drizzle schema. Engine
|
|
34
34
|
* adapters (`engine-sqlite`, `engine-duckdb-wasm`) call this once at module load and
|
|
@@ -36,8 +36,7 @@ declare function mergeScope(scope: TableScope, ...extra: SQL[]): SQL | undefined
|
|
|
36
36
|
* `keyof Schema` table parameter without each adapter re-implementing the
|
|
37
37
|
* pass-through wrapper.
|
|
38
38
|
*/
|
|
39
|
-
declare function createScopedHelpers<S extends Record<string, Record<string, any>>>(schema: S): {
|
|
39
|
+
export declare function createScopedHelpers<S extends Record<string, Record<string, any>>>(schema: S): {
|
|
40
40
|
scopeFor: (table: keyof S, opts: ScopedRunnerOptions) => TableScope;
|
|
41
41
|
mergeScope: typeof mergeScope;
|
|
42
|
-
};
|
|
43
|
-
export { ResolvedWindow, ScopedRunnerOptions, TableScope, createScopedHelpers, mergeScope };
|
|
42
|
+
};
|
package/dist/sink.d.mts
CHANGED
|
@@ -8,7 +8,7 @@ import { CommitRetryOptions, ConnectIcebergOptions, IcebergCatalogConfig } from
|
|
|
8
8
|
* tenant-scoped sinks (local/in-memory); the prod Iceberg table is global
|
|
9
9
|
* and keys only on `siteId`.
|
|
10
10
|
*/
|
|
11
|
-
interface SinkSlice {
|
|
11
|
+
export interface SinkSlice {
|
|
12
12
|
ctx: TenantCtx;
|
|
13
13
|
table: IcebergTableName;
|
|
14
14
|
/** GSC search-type partition. */
|
|
@@ -20,7 +20,7 @@ interface SinkSlice {
|
|
|
20
20
|
* Outcome of a sink write. `rowCount` is the number of rows accepted;
|
|
21
21
|
* `bytes` is best-effort — `IcebergAppendSink` does not report it (undefined there).
|
|
22
22
|
*/
|
|
23
|
-
interface SinkWriteResult {
|
|
23
|
+
export interface SinkWriteResult {
|
|
24
24
|
rowCount: number;
|
|
25
25
|
bytes?: number;
|
|
26
26
|
}
|
|
@@ -29,14 +29,14 @@ interface SinkWriteResult {
|
|
|
29
29
|
* v5 stability-cutoff model. Test and revision-path adapters may expose an
|
|
30
30
|
* overwrite capability explicitly.
|
|
31
31
|
*/
|
|
32
|
-
interface SinkCapabilities {
|
|
32
|
+
export interface SinkCapabilities {
|
|
33
33
|
/** When true, re-emitting a slice accumulates duplicate rows. */
|
|
34
34
|
appendOnly: boolean;
|
|
35
35
|
/** Whether the sink exposes partition overwrite semantics. */
|
|
36
36
|
canOverwrite?: boolean;
|
|
37
37
|
}
|
|
38
38
|
/** Partition-overwrite writer for revision paths. */
|
|
39
|
-
interface SliceOverwriteWriter {
|
|
39
|
+
export interface SliceOverwriteWriter {
|
|
40
40
|
overwriteSlice: (slice: SinkSlice, rows: readonly Row[]) => Promise<SinkWriteResult>;
|
|
41
41
|
}
|
|
42
42
|
/**
|
|
@@ -50,7 +50,7 @@ interface SliceOverwriteWriter {
|
|
|
50
50
|
* leaves its slices un-recorded so the next sync re-emits them. This is what
|
|
51
51
|
* keeps the D1 ledger from ever running ahead of Iceberg.
|
|
52
52
|
*/
|
|
53
|
-
interface SinkCloseResult {
|
|
53
|
+
export interface SinkCloseResult {
|
|
54
54
|
/** Tables whose buffered rows committed durably. */
|
|
55
55
|
flushed: IcebergTableName[];
|
|
56
56
|
/**
|
|
@@ -63,7 +63,7 @@ interface SinkCloseResult {
|
|
|
63
63
|
error: EngineError;
|
|
64
64
|
}[];
|
|
65
65
|
}
|
|
66
|
-
interface Sink {
|
|
66
|
+
export interface Sink {
|
|
67
67
|
readonly capabilities: SinkCapabilities;
|
|
68
68
|
/**
|
|
69
69
|
* Emit the fact rows for one slice. Append semantics — for `IcebergAppendSink`
|
|
@@ -89,7 +89,7 @@ interface Sink {
|
|
|
89
89
|
close: () => Promise<SinkCloseResult>;
|
|
90
90
|
}
|
|
91
91
|
/** Construction options shared by all sink implementations. */
|
|
92
|
-
interface SinkOptions {
|
|
92
|
+
export interface SinkOptions {
|
|
93
93
|
now?: () => number;
|
|
94
94
|
}
|
|
95
95
|
/**
|
|
@@ -97,7 +97,7 @@ interface SinkOptions {
|
|
|
97
97
|
* sink appends to via `icebird`. The catalog config shape (`IcebergCatalogConfig`)
|
|
98
98
|
* is type-only here so this contract file stays implementation-free.
|
|
99
99
|
*/
|
|
100
|
-
interface IcebergAppendSinkOptions extends SinkOptions {
|
|
100
|
+
export interface IcebergAppendSinkOptions extends SinkOptions {
|
|
101
101
|
/** R2 Data Catalog connection config (catalog URI, warehouse, namespace, token, S3 creds). */
|
|
102
102
|
catalog: IcebergCatalogConfig;
|
|
103
103
|
/**
|
|
@@ -121,5 +121,4 @@ interface IcebergAppendSinkOptions extends SinkOptions {
|
|
|
121
121
|
* {@link import('./iceberg/schema').PartitionKeyEncoding}.
|
|
122
122
|
*/
|
|
123
123
|
encoding?: PartitionKeyEncoding;
|
|
124
|
-
}
|
|
125
|
-
export { IcebergAppendSinkOptions, Sink, SinkCapabilities, SinkCloseResult, SinkOptions, SinkSlice, SinkWriteResult, SliceOverwriteWriter };
|
|
124
|
+
}
|
|
@@ -2,11 +2,11 @@ import { Row } from "../storage.mjs";
|
|
|
2
2
|
import { IcebergTableName } from "../iceberg/schema.mjs";
|
|
3
3
|
import { Sink, SinkSlice } from "../sink.mjs";
|
|
4
4
|
/** A row as stored by the fake — data columns plus the injected identity columns. */
|
|
5
|
-
type StoredRow = Row & {
|
|
5
|
+
export type StoredRow = Row & {
|
|
6
6
|
site_id: string;
|
|
7
7
|
search_type: string;
|
|
8
8
|
};
|
|
9
|
-
interface InMemorySink extends Sink {
|
|
9
|
+
export interface InMemorySink extends Sink {
|
|
10
10
|
/** All rows accepted, in partition order. */
|
|
11
11
|
readonly rows: readonly StoredRow[];
|
|
12
12
|
/** Rows for one table. */
|
|
@@ -21,5 +21,4 @@ interface InMemorySink extends Sink {
|
|
|
21
21
|
/**
|
|
22
22
|
* Create an in-memory append-only `Sink`.
|
|
23
23
|
*/
|
|
24
|
-
declare function createInMemorySink(): InMemorySink;
|
|
25
|
-
export { InMemorySink, StoredRow, createInMemorySink };
|
|
24
|
+
export declare function createInMemorySink(): InMemorySink;
|
package/dist/snapshot.d.mts
CHANGED
|
@@ -4,11 +4,10 @@
|
|
|
4
4
|
* via `cold-${yearMonth}.duckdb`; hot is always `hot.duckdb` when
|
|
5
5
|
* `hot: true`.
|
|
6
6
|
*/
|
|
7
|
-
interface SnapshotIndex {
|
|
7
|
+
export interface SnapshotIndex {
|
|
8
8
|
version: 1;
|
|
9
9
|
builtAt: string;
|
|
10
10
|
cold: string[];
|
|
11
11
|
hot: boolean;
|
|
12
12
|
hotDays: number;
|
|
13
|
-
}
|
|
14
|
-
export { SnapshotIndex };
|
|
13
|
+
}
|
|
@@ -3,7 +3,7 @@ import { ResolverAdapter } from "../resolver/types.mjs";
|
|
|
3
3
|
import { AnalysisQuerySource } from "./source-types.mjs";
|
|
4
4
|
import { EngineError } from "../errors.mjs";
|
|
5
5
|
import "../contracts.mjs";
|
|
6
|
-
interface AttachedTableRunner {
|
|
6
|
+
export interface AttachedTableRunner {
|
|
7
7
|
/**
|
|
8
8
|
* Run a query with positional (`?`) bound parameters. Return objects keyed
|
|
9
9
|
* by column name. BIGINT → number coercion is applied by the source factory
|
|
@@ -12,7 +12,7 @@ interface AttachedTableRunner {
|
|
|
12
12
|
*/
|
|
13
13
|
query: (sql: string, params?: unknown[], signal?: AbortSignal) => Promise<Row[]>;
|
|
14
14
|
}
|
|
15
|
-
interface AttachedTableSourceOptions {
|
|
15
|
+
export interface AttachedTableSourceOptions {
|
|
16
16
|
/** Schema name the exported DuckDB file was attached under — e.g. `gsc`. */
|
|
17
17
|
schema: string;
|
|
18
18
|
/**
|
|
@@ -36,10 +36,9 @@ interface AttachedTableSourceOptions {
|
|
|
36
36
|
*/
|
|
37
37
|
adapter?: ResolverAdapter<any>;
|
|
38
38
|
}
|
|
39
|
-
declare class AttachedTableMissingError extends Error {
|
|
39
|
+
export declare class AttachedTableMissingError extends Error {
|
|
40
40
|
readonly missing: readonly string[];
|
|
41
41
|
readonly engineError: EngineError;
|
|
42
42
|
constructor(missing: readonly string[]);
|
|
43
43
|
}
|
|
44
|
-
declare function createAttachedTableSource(runner: AttachedTableRunner, options: AttachedTableSourceOptions): AnalysisQuerySource;
|
|
45
|
-
export { AttachedTableMissingError, AttachedTableRunner, AttachedTableSourceOptions, createAttachedTableSource };
|
|
44
|
+
export declare function createAttachedTableSource(runner: AttachedTableRunner, options: AttachedTableSourceOptions): AnalysisQuerySource;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ResolverAdapter } from "../resolver/types.mjs";
|
|
2
2
|
import { AnalysisQuerySource, AnalysisSourceKind, QueryRow, SourceCapabilities } from "./source-types.mjs";
|
|
3
|
-
interface CreateSqlQuerySourceOptions<TKey extends string> {
|
|
3
|
+
export interface CreateSqlQuerySourceOptions<TKey extends string> {
|
|
4
4
|
/** Debug-only identifier surfaced on the source for error messages. */
|
|
5
5
|
name: string;
|
|
6
6
|
/** Telemetry tag stamped onto analyzer result meta. */
|
|
@@ -20,5 +20,4 @@ interface CreateSqlQuerySourceOptions<TKey extends string> {
|
|
|
20
20
|
/** Additional capability flags merged on top of `adapter.capabilities`. */
|
|
21
21
|
extraCapabilities?: Partial<SourceCapabilities>;
|
|
22
22
|
}
|
|
23
|
-
declare function createSqlQuerySource<TKey extends string>(options: CreateSqlQuerySourceOptions<TKey>): AnalysisQuerySource;
|
|
24
|
-
export { CreateSqlQuerySourceOptions, createSqlQuerySource };
|
|
23
|
+
export declare function createSqlQuerySource<TKey extends string>(options: CreateSqlQuerySourceOptions<TKey>): AnalysisQuerySource;
|
package/dist/source/index.d.mts
CHANGED
|
@@ -12,8 +12,8 @@ import { BuilderState } from "gscdump/query";
|
|
|
12
12
|
* multi-dataset queries belong to the analyzer dispatcher, not the engine's
|
|
13
13
|
* builder-state query path.
|
|
14
14
|
*/
|
|
15
|
-
declare const ENGINE_QUERY_CAPABILITIES: PlannerCapabilities;
|
|
16
|
-
interface EngineQuerySourceOptions {
|
|
15
|
+
export declare const ENGINE_QUERY_CAPABILITIES: PlannerCapabilities;
|
|
16
|
+
export interface EngineQuerySourceOptions {
|
|
17
17
|
engine: StorageEngine;
|
|
18
18
|
ctx: TenantCtx;
|
|
19
19
|
/**
|
|
@@ -31,14 +31,14 @@ interface EngineQuerySourceOptions {
|
|
|
31
31
|
* `engine.runSQL` and requires `opts.fileSets` (with a `FILES` entry so the
|
|
32
32
|
* target table can be resolved for partition lookup).
|
|
33
33
|
*/
|
|
34
|
-
declare function createEngineQuerySource(options: EngineQuerySourceOptions): AnalysisQuerySource;
|
|
34
|
+
export declare function createEngineQuerySource(options: EngineQuerySourceOptions): AnalysisQuerySource;
|
|
35
35
|
/**
|
|
36
36
|
* Convenience: wrap a storage engine + tenant ctx in a source and dispatch.
|
|
37
37
|
* Equivalent to wrapping `createEngineQuerySource`, with omitted searchType
|
|
38
38
|
* defaulted to web at this public helper boundary.
|
|
39
39
|
*/
|
|
40
|
-
declare function runAnalyzerWithEngine(deps: {
|
|
40
|
+
export declare function runAnalyzerWithEngine(deps: {
|
|
41
41
|
engine: StorageEngine;
|
|
42
42
|
}, ctx: TenantCtx, params: AnalysisParams, registry: AnalyzerRegistry): Promise<AnalysisResult>;
|
|
43
|
-
declare function queryRows<TRow = QueryRow>(source: AnalysisQuerySource, state: BuilderState): Promise<TRow[]>;
|
|
44
|
-
export { type AnalysisQuerySource, type AnalysisSourceKind, AttachedTableMissingError, type AttachedTableRunner, type AttachedTableSourceOptions, type CreateSqlQuerySourceOptions,
|
|
43
|
+
export declare function queryRows<TRow = QueryRow>(source: AnalysisQuerySource, state: BuilderState): Promise<TRow[]>;
|
|
44
|
+
export { type AnalysisQuerySource, type AnalysisSourceKind, AttachedTableMissingError, type AttachedTableRunner, type AttachedTableSourceOptions, type CreateSqlQuerySourceOptions, type ExecuteSqlOptions, type FileSet, type QueryRow, type SourceCapabilities, createAttachedTableSource, createSqlQuerySource };
|
|
@@ -2,12 +2,12 @@ import { ResolverAdapter } from "../resolver/types.mjs";
|
|
|
2
2
|
import { PlannerCapabilities } from "gscdump/query/plan";
|
|
3
3
|
import { TableName } from "@gscdump/contracts";
|
|
4
4
|
import { BuilderState } from "gscdump/query";
|
|
5
|
-
type QueryRow = Record<string, unknown>;
|
|
6
|
-
interface FileSet {
|
|
5
|
+
export type QueryRow = Record<string, unknown>;
|
|
6
|
+
export interface FileSet {
|
|
7
7
|
table: TableName;
|
|
8
8
|
partitions: string[];
|
|
9
9
|
}
|
|
10
|
-
interface ExecuteSqlOptions {
|
|
10
|
+
export interface ExecuteSqlOptions {
|
|
11
11
|
fileSets?: Record<string, FileSet>;
|
|
12
12
|
}
|
|
13
13
|
/**
|
|
@@ -15,7 +15,7 @@ interface ExecuteSqlOptions {
|
|
|
15
15
|
* mixed with storage-side flags. SQL execution is not a capability flag —
|
|
16
16
|
* callers probe `typeof source.executeSql === 'function'`.
|
|
17
17
|
*/
|
|
18
|
-
interface SourceCapabilities extends PlannerCapabilities {
|
|
18
|
+
export interface SourceCapabilities extends PlannerCapabilities {
|
|
19
19
|
attachedTables?: boolean;
|
|
20
20
|
fileSets?: boolean;
|
|
21
21
|
/**
|
|
@@ -24,8 +24,8 @@ interface SourceCapabilities extends PlannerCapabilities {
|
|
|
24
24
|
*/
|
|
25
25
|
adapter?: boolean;
|
|
26
26
|
}
|
|
27
|
-
type AnalysisSourceKind = 'local' | 'browser' | 'live' | 'in-memory' | 'composite' | 'attached-table';
|
|
28
|
-
interface AnalysisQuerySource {
|
|
27
|
+
export type AnalysisSourceKind = 'local' | 'browser' | 'live' | 'in-memory' | 'composite' | 'attached-table';
|
|
28
|
+
export interface AnalysisQuerySource {
|
|
29
29
|
name?: string;
|
|
30
30
|
/** Telemetry tag stamped onto analyzer result meta; not used for routing. */
|
|
31
31
|
kind?: AnalysisSourceKind;
|
|
@@ -45,5 +45,4 @@ interface AnalysisQuerySource {
|
|
|
45
45
|
* BigInts to numbers before returning (see Source invariant above).
|
|
46
46
|
*/
|
|
47
47
|
executeSql?: (sql: string, params?: unknown[], opts?: ExecuteSqlOptions) => Promise<QueryRow[]>;
|
|
48
|
-
}
|
|
49
|
-
export { AnalysisQuerySource, AnalysisSourceKind, ExecuteSqlOptions, FileSet, QueryRow, SourceCapabilities };
|
|
48
|
+
}
|
package/dist/sql-bind.d.mts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
/** Escape single quotes for inlining inside a SQL string literal (SQL-standard `''` escaping). */
|
|
2
|
-
declare function sqlEscape(s: string): string;
|
|
3
|
-
declare function formatLiteral(value: unknown): string;
|
|
4
|
-
declare function bindLiterals(sql: string, params: readonly unknown[]): string;
|
|
5
|
-
export { bindLiterals, formatLiteral, sqlEscape };
|
|
2
|
+
export declare function sqlEscape(s: string): string;
|
|
3
|
+
export declare function formatLiteral(value: unknown): string;
|
|
4
|
+
export declare function bindLiterals(sql: string, params: readonly unknown[]): string;
|
package/dist/sql-fragments.d.mts
CHANGED
|
@@ -3,7 +3,7 @@ import { Metric } from "gscdump/query";
|
|
|
3
3
|
* Standard SQL `LIKE` escape. Backslash is the explicit ESCAPE char so
|
|
4
4
|
* literal `%`, `_`, and `\` survive a `contains` predicate unchanged.
|
|
5
5
|
*/
|
|
6
|
-
declare function escapeLike(value: string): string;
|
|
6
|
+
export declare function escapeLike(value: string): string;
|
|
7
7
|
/**
|
|
8
8
|
* Per-metric raw SQL aggregate expression.
|
|
9
9
|
*
|
|
@@ -12,12 +12,12 @@ declare function escapeLike(value: string): string;
|
|
|
12
12
|
* - `position` reverses the ingestion offset (`sum_position = position - 1`
|
|
13
13
|
* summed; divide by impressions and add 1 back).
|
|
14
14
|
*/
|
|
15
|
-
declare const METRIC_EXPR: Record<Metric, string>;
|
|
15
|
+
export declare const METRIC_EXPR: Record<Metric, string>;
|
|
16
16
|
/**
|
|
17
17
|
* Top-level page predicate: matches paths with at most one `/`. Parameterized
|
|
18
18
|
* on the resolved column expression so drizzle can pass a column ref.
|
|
19
19
|
*/
|
|
20
|
-
declare function topLevelPagePredicateSql(pathExpr: string): string;
|
|
20
|
+
export declare function topLevelPagePredicateSql(pathExpr: string): string;
|
|
21
21
|
/**
|
|
22
22
|
* How a canonicalized date column is emitted by {@link dateReplaceClause}:
|
|
23
23
|
* - `'date'` keeps a real `DATE` value (`CAST(col AS DATE)`). Right for views
|
|
@@ -26,7 +26,7 @@ declare function topLevelPagePredicateSql(pathExpr: string): string;
|
|
|
26
26
|
* Right for row materialisation to JSON/CSV/NDJSON, where a `DATE` would
|
|
27
27
|
* serialize as an opaque object / epoch.
|
|
28
28
|
*/
|
|
29
|
-
type DateCanonicalForm = 'date' | 'string';
|
|
29
|
+
export type DateCanonicalForm = 'date' | 'string';
|
|
30
30
|
/**
|
|
31
31
|
* Build a `read_parquet` `REPLACE (…)` clause that canonicalizes legacy `date`
|
|
32
32
|
* columns. `date` lands as VARCHAR in older parquets (BYTE_ARRAY/UTF8, written
|
|
@@ -40,5 +40,4 @@ type DateCanonicalForm = 'date' | 'string';
|
|
|
40
40
|
* table has no DATE columns, so callers can interpolate it unconditionally:
|
|
41
41
|
* `SELECT * ${dateReplaceClause(cols)} FROM read_parquet(…)`.
|
|
42
42
|
*/
|
|
43
|
-
declare function dateReplaceClause(dateColumns: readonly string[], form?: DateCanonicalForm): string;
|
|
44
|
-
export { DateCanonicalForm, METRIC_EXPR, dateReplaceClause, escapeLike, topLevelPagePredicateSql };
|
|
43
|
+
export declare function dateReplaceClause(dateColumns: readonly string[], form?: DateCanonicalForm): string;
|