ts-prorm-orm 1.1.0 → 1.2.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/CHANGELOG.md +95 -0
- package/README.md +194 -72
- package/dist/audit/history-query.d.ts +35 -0
- package/dist/audit/index.d.ts +16 -0
- package/dist/audit/logger.d.ts +126 -0
- package/dist/cache/cache-manager.d.ts +341 -0
- package/dist/cache/index.d.ts +8 -0
- package/dist/cache/redis-cluster-cache.d.ts +164 -0
- package/dist/cache/redis-cluster-cache.js +19 -36
- package/dist/cli/cloud.d.ts +55 -0
- package/dist/cli/cloud.js +318 -0
- package/dist/cli/commands/auth.d.ts +2 -0
- package/dist/cli/commands/auth.js +345 -0
- package/dist/cli/commands/billing.d.ts +2 -0
- package/dist/cli/commands/billing.js +135 -0
- package/dist/cli/commands/code.d.ts +2 -0
- package/dist/cli/commands/code.js +168 -0
- package/dist/cli/commands/config.d.ts +2 -0
- package/dist/cli/commands/config.js +154 -0
- package/dist/cli/commands/db.d.ts +2 -0
- package/dist/cli/commands/db.js +189 -0
- package/dist/cli/commands/index.d.ts +1 -0
- package/dist/cli/commands/index.js +22 -0
- package/dist/cli/commands/keys.d.ts +2 -0
- package/dist/cli/commands/keys.js +100 -0
- package/dist/cli/commands/misc.d.ts +2 -0
- package/dist/cli/commands/misc.js +282 -0
- package/dist/cli/commands/pull.d.ts +2 -0
- package/dist/cli/commands/pull.js +306 -0
- package/dist/cli/commands/runners.d.ts +2 -0
- package/dist/cli/commands/runners.js +218 -0
- package/dist/cli/commands/scaffold.d.ts +2 -0
- package/dist/cli/commands/scaffold.js +383 -0
- package/dist/cli/commands/secrets.d.ts +2 -0
- package/dist/cli/commands/secrets.js +162 -0
- package/dist/cli/commands/store.d.ts +2 -0
- package/dist/cli/commands/store.js +274 -0
- package/dist/cli/commands/system.d.ts +10 -0
- package/dist/cli/commands/system.js +169 -0
- package/dist/cli/commands/teams.d.ts +2 -0
- package/dist/cli/commands/teams.js +189 -0
- package/dist/cli/commands/user.d.ts +2 -0
- package/dist/cli/commands/user.js +171 -0
- package/dist/cli/framework.d.ts +103 -0
- package/dist/cli/framework.js +436 -0
- package/dist/cli/io.d.ts +26 -0
- package/dist/cli/io.js +181 -0
- package/dist/cli/keychain.d.ts +10 -0
- package/dist/cli/keychain.js +101 -0
- package/dist/cli/prompt.d.ts +20 -0
- package/dist/cli/prompt.js +111 -0
- package/dist/cli.d.ts +214 -0
- package/dist/cli.js +72 -5
- package/dist/compliance/audit-trail.d.ts +66 -0
- package/dist/compliance/backup-verification.d.ts +279 -0
- package/dist/compliance/breach-detector.d.ts +197 -0
- package/dist/compliance/consent-record.d.ts +107 -0
- package/dist/compliance/consent-versioning.d.ts +169 -0
- package/dist/compliance/cross-border-log.d.ts +254 -0
- package/dist/compliance/data-classifier.d.ts +127 -0
- package/dist/compliance/data-lineage.d.ts +268 -0
- package/dist/compliance/data-masker.d.ts +110 -0
- package/dist/compliance/data-portability.d.ts +98 -0
- package/dist/compliance/data-retention.d.ts +108 -0
- package/dist/compliance/dsar-workflow.d.ts +175 -0
- package/dist/compliance/field-encryption.d.ts +84 -0
- package/dist/compliance/immutable-record.d.ts +84 -0
- package/dist/compliance/index.d.ts +93 -0
- package/dist/compliance/privacy-impact-assessment.d.ts +196 -0
- package/dist/compliance/pseudonymization.d.ts +96 -0
- package/dist/compliance/query-firewall.d.ts +661 -0
- package/dist/compliance/rate-limiter.d.ts +203 -0
- package/dist/compliance/right-to-erasure.d.ts +96 -0
- package/dist/compliance/row-level-security.d.ts +152 -0
- package/dist/compliance/security-decorator.d.ts +388 -0
- package/dist/compliance/security-monitor.d.ts +170 -0
- package/dist/compliance/sensitive-data-discovery.d.ts +151 -0
- package/dist/compliance/session-isolation.d.ts +286 -0
- package/dist/compliance/tls-enforcer.d.ts +51 -0
- package/dist/compliance/worm-storage.d.ts +225 -0
- package/dist/connection-manager.d.ts +130 -0
- package/dist/connection-pool.d.ts +311 -0
- package/dist/decorators/audit.d.ts +49 -0
- package/dist/decorators/check.d.ts +218 -0
- package/dist/decorators/collate.d.ts +346 -0
- package/dist/decorators/comment.d.ts +51 -0
- package/dist/decorators/database-settings.d.ts +193 -0
- package/dist/decorators/default.d.ts +148 -0
- package/dist/decorators/encryption.d.ts +175 -0
- package/dist/decorators/engine.d.ts +97 -0
- package/dist/decorators/fk-constraints.d.ts +387 -0
- package/dist/decorators/foreign-table.d.ts +57 -0
- package/dist/decorators/generated.d.ts +232 -0
- package/dist/decorators/hstore.d.ts +96 -0
- package/dist/decorators/index.d.ts +57 -0
- package/dist/decorators/index.js +14 -30
- package/dist/decorators/json-column.d.ts +47 -0
- package/dist/decorators/jsonb.d.ts +83 -0
- package/dist/decorators/orm-decorators.d.ts +274 -0
- package/dist/decorators/permissions.d.ts +192 -0
- package/dist/decorators/procedure.d.ts +168 -0
- package/dist/decorators/procedure.js +31 -7
- package/dist/decorators/query-options.d.ts +527 -0
- package/dist/decorators/range.d.ts +122 -0
- package/dist/decorators/set-column.d.ts +43 -0
- package/dist/decorators/spatial.d.ts +60 -0
- package/dist/decorators/storage.d.ts +561 -0
- package/dist/decorators/timezone.d.ts +319 -0
- package/dist/decorators/trigger.d.ts +50 -0
- package/dist/decorators/uuid.d.ts +102 -0
- package/dist/decorators/view.d.ts +213 -0
- package/dist/diagrams/chen-diagram.d.ts +70 -0
- package/dist/diagrams/chen-diagram.js +33 -31
- package/dist/diagrams/class-diagram.d.ts +78 -0
- package/dist/diagrams/class-diagram.js +23 -27
- package/dist/diagrams/dependency-diagram.d.ts +82 -0
- package/dist/diagrams/dependency-diagram.js +18 -9
- package/dist/diagrams/er-diagram.d.ts +82 -0
- package/dist/diagrams/er-diagram.js +174 -231
- package/dist/diagrams/flow-diagram.d.ts +70 -0
- package/dist/diagrams/flow-diagram.js +23 -18
- package/dist/diagrams/gantt-diagram.d.ts +67 -0
- package/dist/diagrams/gantt-diagram.js +20 -18
- package/dist/diagrams/index-diagram.d.ts +61 -0
- package/dist/diagrams/index-diagram.js +36 -31
- package/dist/diagrams/index.d.ts +155 -0
- package/dist/diagrams/index.js +7 -1
- package/dist/diagrams/migration-diagram.d.ts +67 -0
- package/dist/diagrams/migration-diagram.js +45 -57
- package/dist/diagrams/model-diagram.d.ts +85 -0
- package/dist/diagrams/model-diagram.js +225 -287
- package/dist/diagrams/package-diagram.d.ts +69 -0
- package/dist/diagrams/package-diagram.js +30 -32
- package/dist/diagrams/palette.d.ts +138 -0
- package/dist/diagrams/palette.js +134 -25
- package/dist/diagrams/relational-diagram.d.ts +82 -0
- package/dist/diagrams/relational-diagram.js +51 -59
- package/dist/diagrams/schemadoc-diagram.d.ts +57 -0
- package/dist/diagrams/schemadoc-diagram.js +36 -28
- package/dist/diagrams/sequence-diagram.d.ts +61 -0
- package/dist/diagrams/sequence-diagram.js +20 -11
- package/dist/diagrams/state-diagram.d.ts +85 -0
- package/dist/diagrams/state-diagram.js +21 -17
- package/dist/diagrams/svg-dom.d.ts +62 -0
- package/dist/diagrams/svg-dom.js +11 -0
- package/dist/diagrams/tree-diagram.d.ts +47 -0
- package/dist/diagrams/tree-diagram.js +19 -10
- package/dist/dialects/clickhouse/index.d.ts +660 -0
- package/dist/dialects/clickhouse/index.js +107 -2
- package/dist/dialects/cockroachdb/index.d.ts +1708 -0
- package/dist/dialects/cockroachdb/index.js +139 -10
- package/dist/dialects/cratedb/index.d.ts +262 -0
- package/dist/dialects/cratedb/index.js +148 -0
- package/dist/dialects/databricks/index.d.ts +397 -0
- package/dist/dialects/databricks/index.js +233 -11
- package/dist/dialects/db2/index.d.ts +729 -0
- package/dist/dialects/db2/index.js +152 -2
- package/dist/dialects/dialect.d.ts +1653 -0
- package/dist/dialects/duckdb/index.d.ts +440 -0
- package/dist/dialects/duckdb/index.js +21 -37
- package/dist/dialects/exasol/index.d.ts +197 -0
- package/dist/dialects/exasol/index.js +14 -0
- package/dist/dialects/firebird/index.d.ts +286 -0
- package/dist/dialects/firebird/index.js +135 -0
- package/dist/dialects/greenplum/index.d.ts +336 -0
- package/dist/dialects/greenplum/index.js +168 -0
- package/dist/dialects/hana/index.d.ts +512 -0
- package/dist/dialects/hana/index.js +17 -35
- package/dist/dialects/mariadb/index.d.ts +1241 -0
- package/dist/dialects/mariadb/index.js +181 -43
- package/dist/dialects/mssql/index.d.ts +729 -0
- package/dist/dialects/mssql/index.js +76 -7
- package/dist/dialects/mysql/index.d.ts +1233 -0
- package/dist/dialects/mysql/index.js +87 -19
- package/dist/dialects/oracle/index.d.ts +1222 -0
- package/dist/dialects/oracle/index.js +210 -9
- package/dist/dialects/postgres/index.d.ts +1598 -0
- package/dist/dialects/postgres/index.js +34 -13
- package/dist/dialects/query-stream-helper.d.ts +58 -0
- package/dist/dialects/questdb/index.d.ts +430 -0
- package/dist/dialects/questdb/index.js +292 -0
- package/dist/dialects/redshift/index.d.ts +933 -0
- package/dist/dialects/redshift/index.js +17 -5
- package/dist/dialects/singlestore/index.d.ts +233 -0
- package/dist/dialects/singlestore/index.js +53 -0
- package/dist/dialects/snowflake/index.d.ts +727 -0
- package/dist/dialects/snowflake/index.js +154 -5
- package/dist/dialects/spanner/index.d.ts +660 -0
- package/dist/dialects/spanner/index.js +43 -21
- package/dist/dialects/sqlite/index.d.ts +1133 -0
- package/dist/dialects/sqlite/index.js +168 -30
- package/dist/dialects/tidb/index.d.ts +226 -0
- package/dist/dialects/tidb/index.js +10 -0
- package/dist/dialects/timescaledb/index.d.ts +286 -0
- package/dist/dialects/timescaledb/index.js +179 -0
- package/dist/dialects/trino/index.d.ts +230 -0
- package/dist/dialects/trino/index.js +85 -10
- package/dist/dialects/turso/index.d.ts +98 -0
- package/dist/dialects/turso/index.js +10 -0
- package/dist/dialects/vertica/index.d.ts +321 -0
- package/dist/dialects/vertica/index.js +161 -0
- package/dist/dialects/yugabytedb/index.d.ts +276 -0
- package/dist/dialects/yugabytedb/index.js +121 -0
- package/dist/errors/index.d.ts +378 -0
- package/dist/errors/index.js +29 -1
- package/dist/errors/utils.d.ts +53 -0
- package/dist/errors.d.ts +5 -0
- package/dist/extensions/catalog/cloud-warehouse-features.d.ts +27 -0
- package/dist/extensions/catalog/mssql-features.d.ts +20 -0
- package/dist/extensions/catalog/mysql-mariadb-plugins.d.ts +18 -0
- package/dist/extensions/catalog/oracle-db2-features.d.ts +17 -0
- package/dist/extensions/catalog/postgres-extensions.d.ts +15 -0
- package/dist/extensions/index.d.ts +34 -0
- package/dist/extensions/types.d.ts +43 -0
- package/dist/external-fields/adapters.d.ts +50 -0
- package/dist/external-fields/adapters.js +227 -0
- package/dist/external-fields/decorator.d.ts +77 -0
- package/dist/external-fields/decorator.js +80 -0
- package/dist/external-fields/index.d.ts +10 -0
- package/dist/external-fields/index.js +19 -0
- package/dist/external-fields/runtime.d.ts +39 -0
- package/dist/external-fields/runtime.js +221 -0
- package/dist/foreign-data.d.ts +168 -0
- package/dist/graph/base-graph-dialect.d.ts +250 -0
- package/dist/graph/base-graph-dialect.js +539 -0
- package/dist/graph/dgraph/index.d.ts +65 -0
- package/dist/graph/dgraph/index.js +559 -0
- package/dist/graph/gremlin/index.d.ts +59 -0
- package/dist/graph/gremlin/index.js +378 -0
- package/dist/graph/index.d.ts +60 -0
- package/dist/graph/index.js +67 -0
- package/dist/graph/neo4j/index.d.ts +50 -0
- package/dist/graph/neo4j/index.js +462 -0
- package/dist/graph/types.d.ts +213 -0
- package/dist/graph/types.js +234 -0
- package/dist/hooks/hooks-manager.d.ts +189 -0
- package/dist/hooks/index.d.ts +8 -0
- package/dist/index.d.ts +713 -0
- package/dist/index.js +36 -4
- package/dist/logging.d.ts +183 -0
- package/dist/migrations/index.d.ts +9 -0
- package/dist/migrations/migration.d.ts +143 -0
- package/dist/migrations/migrator.d.ts +199 -0
- package/dist/migrations/prormmigration.d.ts +131 -0
- package/dist/migrations/query-interface.d.ts +335 -0
- package/dist/migrations/seeder.d.ts +167 -0
- package/dist/models/associations.d.ts +131 -0
- package/dist/models/associations.js +7 -2
- package/dist/models/constraints.d.ts +175 -0
- package/dist/models/data-types.d.ts +1656 -0
- package/dist/models/decorators.d.ts +328 -0
- package/dist/models/decorators.js +61 -82
- package/dist/models/eager-load.d.ts +86 -0
- package/dist/models/eager-load.js +369 -0
- package/dist/models/index.d.ts +13 -0
- package/dist/models/indexes.d.ts +325 -0
- package/dist/models/methods.d.ts +419 -0
- package/dist/models/model-manager.d.ts +76 -0
- package/dist/models/model.d.ts +820 -0
- package/dist/models/model.js +15 -101
- package/dist/models/operators.d.ts +29 -0
- package/dist/models/scopes.d.ts +71 -0
- package/dist/models/typescript-types.d.ts +177 -0
- package/dist/nosql/aerospike/index.d.ts +126 -0
- package/dist/nosql/allegrograph/index.d.ts +86 -0
- package/dist/nosql/arangodb/index.d.ts +285 -0
- package/dist/nosql/arangodb/index.js +274 -2
- package/dist/nosql/arangodb/where.d.ts +38 -0
- package/dist/nosql/arangodb/where.js +94 -0
- package/dist/nosql/azure-blob/index.d.ts +104 -0
- package/dist/nosql/beanstalkd/index.d.ts +88 -0
- package/dist/nosql/beequeue/index.d.ts +99 -0
- package/dist/nosql/bigchaindb/index.d.ts +113 -0
- package/dist/nosql/bigtable/index.d.ts +144 -0
- package/dist/nosql/blazegraph/index.d.ts +88 -0
- package/dist/nosql/bullmq/index.d.ts +83 -0
- package/dist/nosql/cassandra/index.d.ts +119 -0
- package/dist/nosql/chroma/index.d.ts +151 -0
- package/dist/nosql/cloudflare-kv/index.d.ts +120 -0
- package/dist/nosql/coherence/index.d.ts +91 -0
- package/dist/nosql/cosmosdb/index.d.ts +78 -0
- package/dist/nosql/couchbase/index.d.ts +103 -0
- package/dist/nosql/dax/index.d.ts +118 -0
- package/dist/nosql/deno-kv/index.d.ts +109 -0
- package/dist/nosql/dgraph/index.d.ts +80 -0
- package/dist/nosql/doris/index.d.ts +88 -0
- package/dist/nosql/druid/index.d.ts +95 -0
- package/dist/nosql/dynamodb/index.d.ts +643 -0
- package/dist/nosql/dynamodb/index.js +423 -0
- package/dist/nosql/elasticsearch/index.d.ts +239 -0
- package/dist/nosql/etcd/index.d.ts +243 -0
- package/dist/nosql/eventhubs/index.d.ts +89 -0
- package/dist/nosql/eventstore/index.d.ts +102 -0
- package/dist/nosql/faunadb/index.d.ts +141 -0
- package/dist/nosql/faunadb/index.js +329 -0
- package/dist/nosql/firestore/index.d.ts +67 -0
- package/dist/nosql/fluree/index.d.ts +88 -0
- package/dist/nosql/fuseki/index.d.ts +94 -0
- package/dist/nosql/gcs/index.d.ts +62 -0
- package/dist/nosql/gearman/index.d.ts +77 -0
- package/dist/nosql/geode/index.d.ts +93 -0
- package/dist/nosql/graphdb/index.d.ts +86 -0
- package/dist/nosql/graylog/index.d.ts +118 -0
- package/dist/nosql/gridgain/index.d.ts +78 -0
- package/dist/nosql/hazelcast/index.d.ts +73 -0
- package/dist/nosql/hbase/index.d.ts +123 -0
- package/dist/nosql/ignite/index.d.ts +80 -0
- package/dist/nosql/immudb/index.d.ts +131 -0
- package/dist/nosql/index.d.ts +215 -0
- package/dist/nosql/infinispan/index.d.ts +95 -0
- package/dist/nosql/influxdb/flux-compiler.d.ts +23 -0
- package/dist/nosql/influxdb/flux-compiler.js +170 -0
- package/dist/nosql/influxdb/index.d.ts +300 -0
- package/dist/nosql/influxdb/index.js +0 -0
- package/dist/nosql/kafka/index.d.ts +113 -0
- package/dist/nosql/keyspaces/index.d.ts +122 -0
- package/dist/nosql/kinesis/index.d.ts +121 -0
- package/dist/nosql/leveldb/index.d.ts +112 -0
- package/dist/nosql/leveldb/index.js +103 -1
- package/dist/nosql/lmdb/index.d.ts +76 -0
- package/dist/nosql/loki/index.d.ts +126 -0
- package/dist/nosql/marklogic/index.d.ts +76 -0
- package/dist/nosql/materialize/index.d.ts +91 -0
- package/dist/nosql/meilisearch/index.d.ts +76 -0
- package/dist/nosql/memcached/index.d.ts +138 -0
- package/dist/nosql/milvus/index.d.ts +167 -0
- package/dist/nosql/minio/index.d.ts +122 -0
- package/dist/nosql/momento/index.d.ts +99 -0
- package/dist/nosql/mongodb/index.d.ts +265 -0
- package/dist/nosql/mongodb/index.js +139 -0
- package/dist/nosql/mongodb/where.d.ts +8 -0
- package/dist/nosql/mongodb/where.js +181 -0
- package/dist/nosql/nats/index.d.ts +139 -0
- package/dist/nosql/nedb/index.d.ts +79 -0
- package/dist/nosql/neo4j/index.d.ts +217 -0
- package/dist/nosql/neo4j/index.js +26 -14
- package/dist/nosql/neptune/index.d.ts +234 -0
- package/dist/nosql/neptune/index.js +23 -9
- package/dist/nosql/nsq/index.d.ts +93 -0
- package/dist/nosql/opensearch/index.d.ts +97 -0
- package/dist/nosql/orientdb/index.d.ts +72 -0
- package/dist/nosql/papertrail/index.d.ts +120 -0
- package/dist/nosql/pinecone/index.d.ts +148 -0
- package/dist/nosql/pinot/index.d.ts +90 -0
- package/dist/nosql/pouchdb/index.d.ts +95 -0
- package/dist/nosql/prometheus/index.d.ts +112 -0
- package/dist/nosql/provendb/index.d.ts +143 -0
- package/dist/nosql/provendb/index.js +262 -0
- package/dist/nosql/pubsub/index.d.ts +83 -0
- package/dist/nosql/pulsar/index.d.ts +105 -0
- package/dist/nosql/qdrant/index.d.ts +231 -0
- package/dist/nosql/qldb/index.d.ts +182 -0
- package/dist/nosql/qldb/index.js +302 -1
- package/dist/nosql/r2/index.d.ts +160 -0
- package/dist/nosql/rabbitmq/index.d.ts +131 -0
- package/dist/nosql/ravendb/index.d.ts +138 -0
- package/dist/nosql/ravendb/index.js +323 -9
- package/dist/nosql/ravendb/where.d.ts +38 -0
- package/dist/nosql/ravendb/where.js +94 -0
- package/dist/nosql/redis/index.d.ts +267 -0
- package/dist/nosql/redis/index.js +19 -5
- package/dist/nosql/redpanda/index.d.ts +117 -0
- package/dist/nosql/resque/index.d.ts +91 -0
- package/dist/nosql/rethinkdb/index.d.ts +194 -0
- package/dist/nosql/rethinkdb/index.js +290 -0
- package/dist/nosql/rethinkdb/where.d.ts +38 -0
- package/dist/nosql/rethinkdb/where.js +94 -0
- package/dist/nosql/rocksdb/document-layer.d.ts +162 -0
- package/dist/nosql/rocksdb/document-layer.js +338 -0
- package/dist/nosql/rocksdb/index.d.ts +112 -0
- package/dist/nosql/rocksdb/index.js +103 -1
- package/dist/nosql/rocksdb/where-match.d.ts +21 -0
- package/dist/nosql/rocksdb/where-match.js +238 -0
- package/dist/nosql/rockset/index.d.ts +84 -0
- package/dist/nosql/s3/index.d.ts +170 -0
- package/dist/nosql/scylladb/index.d.ts +117 -0
- package/dist/nosql/signoz/index.d.ts +116 -0
- package/dist/nosql/sns/index.d.ts +99 -0
- package/dist/nosql/solr/index.d.ts +129 -0
- package/dist/nosql/splunk/index.d.ts +125 -0
- package/dist/nosql/sqs/index.d.ts +116 -0
- package/dist/nosql/stardog/index.d.ts +86 -0
- package/dist/nosql/starrocks/index.d.ts +89 -0
- package/dist/nosql/store.d.ts +23 -0
- package/dist/nosql/sumologic/index.d.ts +119 -0
- package/dist/nosql/surrealdb/index.d.ts +156 -0
- package/dist/nosql/surrealdb/index.js +174 -1
- package/dist/nosql/surrealdb/query-compiler.d.ts +26 -0
- package/dist/nosql/surrealdb/query-compiler.js +193 -0
- package/dist/nosql/terminusdb/index.d.ts +95 -0
- package/dist/nosql/tigergraph/index.d.ts +314 -0
- package/dist/nosql/typesense/index.d.ts +82 -0
- package/dist/nosql/unqlite/index.d.ts +68 -0
- package/dist/nosql/upstash/index.d.ts +80 -0
- package/dist/nosql/vercel-kv/index.d.ts +82 -0
- package/dist/nosql/victoriametrics/index.d.ts +129 -0
- package/dist/nosql/virtuoso/index.d.ts +87 -0
- package/dist/nosql/weaviate/index.d.ts +196 -0
- package/dist/operators/index.d.ts +7 -0
- package/dist/operators.d.ts +2947 -0
- package/dist/operators.js +46 -1
- package/dist/prisma-migrate/index.d.ts +28 -0
- package/dist/prisma-migrate/migration-generator.d.ts +21 -0
- package/dist/prisma-migrate/model-generator.d.ts +12 -0
- package/dist/prisma-migrate/relations.d.ts +28 -0
- package/dist/prisma-migrate/schema-parser.d.ts +42 -0
- package/dist/prisma-migrate/type-mapper.d.ts +20 -0
- package/dist/prorm.d.ts +2093 -0
- package/dist/prorm.js +721 -302
- package/dist/query-builders/cte-builder.d.ts +104 -0
- package/dist/query-builders/functions/aggregate.d.ts +199 -0
- package/dist/query-builders/functions/conditional.d.ts +195 -0
- package/dist/query-builders/functions/datetime.d.ts +202 -0
- package/dist/query-builders/functions/fulltext.d.ts +220 -0
- package/dist/query-builders/functions/index.d.ts +17 -0
- package/dist/query-builders/functions/json.d.ts +157 -0
- package/dist/query-builders/functions/math.d.ts +215 -0
- package/dist/query-builders/functions/string.d.ts +233 -0
- package/dist/query-builders/functions/window.d.ts +209 -0
- package/dist/query-builders/include-builder.d.ts +85 -0
- package/dist/query-builders/index-expression-builder.d.ts +153 -0
- package/dist/query-builders/index.d.ts +121 -0
- package/dist/query-builders/index.js +10 -0
- package/dist/query-builders/insert-builder.d.ts +62 -0
- package/dist/query-builders/model-helpers.d.ts +28 -0
- package/dist/query-builders/order-limit-builder.d.ts +84 -0
- package/dist/query-builders/sql-compiler.d.ts +562 -0
- package/dist/query-builders/subquery-builder.d.ts +133 -0
- package/dist/query-builders/update-builder.d.ts +71 -0
- package/dist/query-builders/view-builder.d.ts +189 -0
- package/dist/query-builders/where-builder.d.ts +124 -0
- package/dist/query-interface.d.ts +407 -0
- package/dist/query-interface.js +84 -0
- package/dist/query-optimizers/batch-optimizer.d.ts +175 -0
- package/dist/query-optimizers/explain-plans.d.ts +187 -0
- package/dist/query-optimizers/index.d.ts +27 -0
- package/dist/query-optimizers/prepared-statement-cache.d.ts +252 -0
- package/dist/query-optimizers/query-hints.d.ts +201 -0
- package/dist/query-optimizers/query-optimizer.d.ts +162 -0
- package/dist/query-optimizers/slow-query-logger.d.ts +186 -0
- package/dist/replica-manager.d.ts +235 -0
- package/dist/schema/index.d.ts +7 -0
- package/dist/schema/migration-generator.d.ts +74 -0
- package/dist/schema/schema-differ.d.ts +114 -0
- package/dist/schema/types.d.ts +246 -0
- package/dist/schema-objects.d.ts +78 -0
- package/dist/schema-objects.js +203 -0
- package/dist/sql-constants.d.ts +240 -0
- package/dist/sqlite-advanced.d.ts +572 -0
- package/dist/streams/index.d.ts +5 -0
- package/dist/streams/transforms.d.ts +120 -0
- package/dist/transaction.d.ts +221 -0
- package/dist/types/index.d.ts +3123 -0
- package/dist/user-management.d.ts +141 -0
- package/dist/utils/date.d.ts +149 -0
- package/dist/utils/index.d.ts +359 -0
- package/dist/utils/string.d.ts +88 -0
- package/dist/validators/index.d.ts +7 -0
- package/dist/validators/validator.d.ts +306 -0
- package/package.json +20 -5
|
@@ -25,12 +25,24 @@
|
|
|
25
25
|
* - Auth supports both password auth and key-pair auth (privateKey /
|
|
26
26
|
* privateKeyPath), matching the snowflake-sdk driver's ConnectionOptions.
|
|
27
27
|
*/
|
|
28
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
29
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
30
|
-
};
|
|
31
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
32
29
|
exports.SnowflakeDialect = void 0;
|
|
33
|
-
|
|
30
|
+
// Lazily-loaded `snowflake-sdk` driver. Required only when a connection is
|
|
31
|
+
// opened, so importing this ORM never loads the Snowflake driver.
|
|
32
|
+
let snowflakeModule = null;
|
|
33
|
+
function loadSnowflake() {
|
|
34
|
+
if (!snowflakeModule) {
|
|
35
|
+
try {
|
|
36
|
+
snowflakeModule = require('snowflake-sdk');
|
|
37
|
+
}
|
|
38
|
+
catch (err) {
|
|
39
|
+
throw new Error("The 'snowflake-sdk' package is required to use the Snowflake dialect but could not be loaded. " +
|
|
40
|
+
'Install it with `npm install snowflake-sdk`. Original error: ' +
|
|
41
|
+
(err instanceof Error ? err.message : String(err)));
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
return snowflakeModule;
|
|
45
|
+
}
|
|
34
46
|
const types_1 = require("../../types");
|
|
35
47
|
const query_stream_helper_1 = require("../query-stream-helper");
|
|
36
48
|
const prorm_1 = require("../../prorm");
|
|
@@ -96,7 +108,7 @@ class SnowflakeDialect {
|
|
|
96
108
|
clientSessionKeepAlive: this.config.clientSessionKeepAlive,
|
|
97
109
|
};
|
|
98
110
|
try {
|
|
99
|
-
const conn =
|
|
111
|
+
const conn = loadSnowflake().createConnection(options);
|
|
100
112
|
await new Promise((resolve, reject) => {
|
|
101
113
|
conn.connect((err) => {
|
|
102
114
|
if (err) {
|
|
@@ -2051,6 +2063,143 @@ class SnowflakeDialect {
|
|
|
2051
2063
|
const result = await this.query('SHOW TASKS');
|
|
2052
2064
|
return result.rows?.map((row) => row.name || row.NAME) || [];
|
|
2053
2065
|
}
|
|
2066
|
+
// ---------------------------------------------------------------------------
|
|
2067
|
+
// Materialized views & Dynamic Tables
|
|
2068
|
+
//
|
|
2069
|
+
// Snowflake has two declarative-refresh table objects: classic MATERIALIZED
|
|
2070
|
+
// VIEWs (single-table, auto-maintained) and the newer DYNAMIC TABLEs
|
|
2071
|
+
// (multi-table joins/aggregations refreshed to a TARGET_LAG). Both are
|
|
2072
|
+
// exposed here so callers never hand-write the DDL.
|
|
2073
|
+
// ---------------------------------------------------------------------------
|
|
2074
|
+
/**
|
|
2075
|
+
* `CREATE [OR REPLACE] [SECURE] MATERIALIZED VIEW <name> AS <query>`.
|
|
2076
|
+
* Snowflake materialized views are single-table, automatically maintained by
|
|
2077
|
+
* the service. Pass `secure: true` for a SECURE materialized view (hides the
|
|
2078
|
+
* definition/optimizer internals for data sharing).
|
|
2079
|
+
*/
|
|
2080
|
+
async createMaterializedView(viewName, query, options) {
|
|
2081
|
+
let sql = options?.replace ? 'CREATE OR REPLACE' : 'CREATE';
|
|
2082
|
+
if (options?.secure)
|
|
2083
|
+
sql += ' SECURE';
|
|
2084
|
+
sql += ` MATERIALIZED VIEW ${this.quoteTable(viewName, options?.schema)}`;
|
|
2085
|
+
if (options?.clusterBy && options.clusterBy.length > 0) {
|
|
2086
|
+
sql += ` CLUSTER BY (${options.clusterBy.map((c) => this.escapeId(c)).join(', ')})`;
|
|
2087
|
+
}
|
|
2088
|
+
if (options?.comment)
|
|
2089
|
+
sql += ` COMMENT = '${this.escapeString(options.comment)}'`;
|
|
2090
|
+
sql += ` AS ${query}`;
|
|
2091
|
+
await this.query(sql);
|
|
2092
|
+
}
|
|
2093
|
+
async dropMaterializedView(viewName, options) {
|
|
2094
|
+
let sql = 'DROP MATERIALIZED VIEW';
|
|
2095
|
+
if (options?.ifExists)
|
|
2096
|
+
sql += ' IF EXISTS';
|
|
2097
|
+
sql += ` ${this.quoteTable(viewName, options?.schema)}`;
|
|
2098
|
+
await this.query(sql);
|
|
2099
|
+
}
|
|
2100
|
+
/**
|
|
2101
|
+
* `CREATE [OR REPLACE] DYNAMIC TABLE <name> TARGET_LAG = '...' WAREHOUSE = ...
|
|
2102
|
+
* AS <query>`. Dynamic tables are Snowflake's declarative, automatically
|
|
2103
|
+
* refreshed alternative to materialized views for multi-table
|
|
2104
|
+
* transforms/rollups; `targetLag` (e.g. `'1 minute'` or `'DOWNSTREAM'`) sets
|
|
2105
|
+
* the freshness target and `warehouse` runs the refresh.
|
|
2106
|
+
*/
|
|
2107
|
+
async createDynamicTable(name, query, options) {
|
|
2108
|
+
let sql = options.replace ? 'CREATE OR REPLACE DYNAMIC TABLE' : 'CREATE DYNAMIC TABLE';
|
|
2109
|
+
if (!options.replace && options.ifNotExists)
|
|
2110
|
+
sql += ' IF NOT EXISTS';
|
|
2111
|
+
sql += ` ${this.quoteTable(name, options.schema)}`;
|
|
2112
|
+
sql += ` TARGET_LAG = '${this.escapeString(options.targetLag)}'`;
|
|
2113
|
+
sql += ` WAREHOUSE = ${this.escapeId(options.warehouse)}`;
|
|
2114
|
+
if (options.clusterBy && options.clusterBy.length > 0) {
|
|
2115
|
+
sql += ` CLUSTER BY (${options.clusterBy.map((c) => this.escapeId(c)).join(', ')})`;
|
|
2116
|
+
}
|
|
2117
|
+
if (options.comment)
|
|
2118
|
+
sql += ` COMMENT = '${this.escapeString(options.comment)}'`;
|
|
2119
|
+
sql += ` AS ${query}`;
|
|
2120
|
+
await this.query(sql);
|
|
2121
|
+
}
|
|
2122
|
+
async dropDynamicTable(name, options) {
|
|
2123
|
+
let sql = 'DROP DYNAMIC TABLE';
|
|
2124
|
+
if (options?.ifExists)
|
|
2125
|
+
sql += ' IF EXISTS';
|
|
2126
|
+
sql += ` ${this.quoteTable(name, options?.schema)}`;
|
|
2127
|
+
await this.query(sql);
|
|
2128
|
+
}
|
|
2129
|
+
/** Manually refresh a dynamic table: `ALTER DYNAMIC TABLE <name> REFRESH`. */
|
|
2130
|
+
async refreshDynamicTable(name, schema) {
|
|
2131
|
+
await this.query(`ALTER DYNAMIC TABLE ${this.quoteTable(name, schema)} REFRESH`);
|
|
2132
|
+
}
|
|
2133
|
+
// ---------------------------------------------------------------------------
|
|
2134
|
+
// UNDROP (Time Travel restore) & GET_DDL introspection
|
|
2135
|
+
// ---------------------------------------------------------------------------
|
|
2136
|
+
/**
|
|
2137
|
+
* `UNDROP TABLE <name>` — restore a table dropped within the Time Travel
|
|
2138
|
+
* retention window. Snowflake's counterpart to an accidental-DROP undo; also
|
|
2139
|
+
* available for schemas/databases via {@link undropSchema}/{@link undropDatabase}.
|
|
2140
|
+
*/
|
|
2141
|
+
async undropTable(tableName, schema) {
|
|
2142
|
+
await this.query(`UNDROP TABLE ${this.quoteTable(tableName, schema)}`);
|
|
2143
|
+
}
|
|
2144
|
+
async undropSchema(schema) {
|
|
2145
|
+
await this.query(`UNDROP SCHEMA ${this.escapeId(schema)}`);
|
|
2146
|
+
}
|
|
2147
|
+
async undropDatabase(name) {
|
|
2148
|
+
await this.query(`UNDROP DATABASE ${this.escapeId(name)}`);
|
|
2149
|
+
}
|
|
2150
|
+
/**
|
|
2151
|
+
* Fetch the full `CREATE` DDL for an object via `SELECT GET_DDL(<type>, <name>)`.
|
|
2152
|
+
* Higher fidelity than parsing `DESCRIBE TABLE` rows — returns the exact,
|
|
2153
|
+
* reproducible statement Snowflake would use to recreate the object.
|
|
2154
|
+
*
|
|
2155
|
+
* @param objectType - e.g. `'TABLE'`, `'VIEW'`, `'FUNCTION'`, `'PROCEDURE'`, `'SCHEMA'`.
|
|
2156
|
+
*/
|
|
2157
|
+
async getDdl(objectType, name, schema) {
|
|
2158
|
+
const qualified = schema ? `${schema}.${name}` : name;
|
|
2159
|
+
const result = await this.query(`SELECT GET_DDL('${this.escapeString(objectType.toUpperCase())}', '${this.escapeString(qualified)}') AS DDL`);
|
|
2160
|
+
const row = result.rows?.[0];
|
|
2161
|
+
return (row?.DDL ?? row?.ddl ?? '');
|
|
2162
|
+
}
|
|
2163
|
+
// ---------------------------------------------------------------------------
|
|
2164
|
+
// User-Defined Functions (UDFs) — distinct from stored procedures.
|
|
2165
|
+
// ---------------------------------------------------------------------------
|
|
2166
|
+
/**
|
|
2167
|
+
* `CREATE [OR REPLACE] [SECURE] FUNCTION <name>(args) RETURNS <type>
|
|
2168
|
+
* [LANGUAGE ...] AS $$ <body> $$`. UDFs return a value (scalar or table) and
|
|
2169
|
+
* are callable inline in SQL, unlike stored procedures. `language` defaults to
|
|
2170
|
+
* SQL; JavaScript/Python/Java UDFs pass the matching `language` + `body`.
|
|
2171
|
+
*/
|
|
2172
|
+
async createFunction(name, options) {
|
|
2173
|
+
let sql = options.replace ? 'CREATE OR REPLACE' : 'CREATE';
|
|
2174
|
+
if (options.secure)
|
|
2175
|
+
sql += ' SECURE';
|
|
2176
|
+
sql += ' FUNCTION';
|
|
2177
|
+
const args = (options.args || [])
|
|
2178
|
+
.map((a) => `${this.escapeId(a.name)} ${a.type}`)
|
|
2179
|
+
.join(', ');
|
|
2180
|
+
sql += ` ${this.quoteTable(name, options.schema)}(${args})`;
|
|
2181
|
+
sql += ` RETURNS ${options.returns}`;
|
|
2182
|
+
if (options.language && options.language !== 'SQL') {
|
|
2183
|
+
sql += ` LANGUAGE ${options.language}`;
|
|
2184
|
+
}
|
|
2185
|
+
if (options.immutable)
|
|
2186
|
+
sql += ' IMMUTABLE';
|
|
2187
|
+
if (options.runtimeVersion)
|
|
2188
|
+
sql += ` RUNTIME_VERSION = '${this.escapeString(options.runtimeVersion)}'`;
|
|
2189
|
+
if (options.handler)
|
|
2190
|
+
sql += ` HANDLER = '${this.escapeString(options.handler)}'`;
|
|
2191
|
+
if (options.comment)
|
|
2192
|
+
sql += ` COMMENT = '${this.escapeString(options.comment)}'`;
|
|
2193
|
+
sql += ` AS $$${options.body}$$`;
|
|
2194
|
+
await this.query(sql);
|
|
2195
|
+
}
|
|
2196
|
+
async dropFunction(name, argTypes = [], options) {
|
|
2197
|
+
let sql = 'DROP FUNCTION';
|
|
2198
|
+
if (options?.ifExists)
|
|
2199
|
+
sql += ' IF EXISTS';
|
|
2200
|
+
sql += ` ${this.quoteTable(name, options?.schema)}(${argTypes.join(', ')})`;
|
|
2201
|
+
await this.query(sql);
|
|
2202
|
+
}
|
|
2054
2203
|
/**
|
|
2055
2204
|
* Build an expression to shred a JSON document/array into relational rows.
|
|
2056
2205
|
* Snowflake has no `JSON_TABLE`; its real equivalent is the `FLATTEN` table function
|