ts-prorm-orm 1.1.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +83 -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 +711 -0
- package/dist/index.js +19 -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
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Update query builder for the ORM
|
|
3
|
+
* Handles UPDATE queries with partial updates
|
|
4
|
+
*/
|
|
5
|
+
import { WhereOptions } from '../types';
|
|
6
|
+
export interface UpdateQueryResult {
|
|
7
|
+
sql: string;
|
|
8
|
+
values: unknown[];
|
|
9
|
+
}
|
|
10
|
+
export interface UpdateBuilderOptions {
|
|
11
|
+
limit?: number;
|
|
12
|
+
returning?: boolean | string[];
|
|
13
|
+
dialect?: {
|
|
14
|
+
escape: (value: unknown) => string;
|
|
15
|
+
escapeId: (identifier: string) => string;
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* UpdateBuilder class for building UPDATE queries
|
|
20
|
+
*/
|
|
21
|
+
export declare class UpdateBuilder {
|
|
22
|
+
private options;
|
|
23
|
+
private whereBuilder;
|
|
24
|
+
constructor(options?: UpdateBuilderOptions);
|
|
25
|
+
/**
|
|
26
|
+
* Build an UPDATE query
|
|
27
|
+
*/
|
|
28
|
+
build(tableName: string, values: Record<string, unknown>, where: WhereOptions): UpdateQueryResult;
|
|
29
|
+
/**
|
|
30
|
+
* Build a partial UPDATE query (only specified fields)
|
|
31
|
+
*/
|
|
32
|
+
buildPartial(tableName: string, values: Record<string, unknown>, where: WhereOptions, fields?: string[]): UpdateQueryResult;
|
|
33
|
+
/**
|
|
34
|
+
* Build an UPDATE query with increment/decrement operations
|
|
35
|
+
*/
|
|
36
|
+
buildWithOperations(tableName: string, operations: Record<string, {
|
|
37
|
+
op: '+' | '-' | '*' | '/' | 'SET';
|
|
38
|
+
value: number;
|
|
39
|
+
}>, where: WhereOptions): UpdateQueryResult;
|
|
40
|
+
/**
|
|
41
|
+
* Build a batch UPDATE query (for bulk updates)
|
|
42
|
+
*/
|
|
43
|
+
buildBatch(tableName: string, records: Array<{
|
|
44
|
+
values: Record<string, unknown>;
|
|
45
|
+
where: WhereOptions;
|
|
46
|
+
}>): UpdateQueryResult[];
|
|
47
|
+
/**
|
|
48
|
+
* Build the RETURNING clause
|
|
49
|
+
*/
|
|
50
|
+
private buildReturningClause;
|
|
51
|
+
/**
|
|
52
|
+
* Escape an identifier
|
|
53
|
+
*/
|
|
54
|
+
private escapeId;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Create an UpdateBuilder instance
|
|
58
|
+
*/
|
|
59
|
+
export declare function createUpdateBuilder(options?: UpdateBuilderOptions): UpdateBuilder;
|
|
60
|
+
/**
|
|
61
|
+
* Quick helper to build an UPDATE query
|
|
62
|
+
*/
|
|
63
|
+
export declare function buildUpdateQuery(tableName: string, values: Record<string, unknown>, where: WhereOptions, options?: UpdateBuilderOptions): UpdateQueryResult;
|
|
64
|
+
/**
|
|
65
|
+
* Quick helper to build an UPDATE query with increment/decrement
|
|
66
|
+
*/
|
|
67
|
+
export declare function buildUpdateWithOperations(tableName: string, operations: Record<string, {
|
|
68
|
+
op: '+' | '-' | '*' | '/' | 'SET';
|
|
69
|
+
value: number;
|
|
70
|
+
}>, where: WhereOptions, options?: UpdateBuilderOptions): UpdateQueryResult;
|
|
71
|
+
export default UpdateBuilder;
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* View Builder
|
|
3
|
+
* Provides an ORM-like way to create database views
|
|
4
|
+
*/
|
|
5
|
+
import { WhereOptions, AttributesOptions, Order } from '../types';
|
|
6
|
+
export interface ViewColumn {
|
|
7
|
+
/** Column name in the view */
|
|
8
|
+
name: string;
|
|
9
|
+
/** Expression or column reference */
|
|
10
|
+
expression: string | {
|
|
11
|
+
model: string;
|
|
12
|
+
column: string;
|
|
13
|
+
};
|
|
14
|
+
/** Alias for the column */
|
|
15
|
+
alias?: string;
|
|
16
|
+
}
|
|
17
|
+
export interface ViewJoin {
|
|
18
|
+
/** Model or table name to join */
|
|
19
|
+
model: string | {
|
|
20
|
+
tableName?: string;
|
|
21
|
+
name?: string;
|
|
22
|
+
};
|
|
23
|
+
/** Join type */
|
|
24
|
+
type: 'INNER' | 'LEFT' | 'RIGHT' | 'FULL';
|
|
25
|
+
/** Join condition */
|
|
26
|
+
on: Record<string, any>;
|
|
27
|
+
/** Alias for the joined model */
|
|
28
|
+
as?: string;
|
|
29
|
+
}
|
|
30
|
+
export interface ViewSelectOptions {
|
|
31
|
+
/** Model name or table to select from */
|
|
32
|
+
model: string | {
|
|
33
|
+
tableName?: string;
|
|
34
|
+
name?: string;
|
|
35
|
+
};
|
|
36
|
+
/** Columns to include */
|
|
37
|
+
columns?: AttributesOptions;
|
|
38
|
+
/** Join specifications */
|
|
39
|
+
joins?: ViewJoin[];
|
|
40
|
+
/** Where conditions */
|
|
41
|
+
where?: WhereOptions;
|
|
42
|
+
/** Group by */
|
|
43
|
+
group?: string | string[];
|
|
44
|
+
/** Having conditions */
|
|
45
|
+
having?: WhereOptions;
|
|
46
|
+
/** Order by */
|
|
47
|
+
order?: Order;
|
|
48
|
+
/** Limit */
|
|
49
|
+
limit?: number;
|
|
50
|
+
/** Offset */
|
|
51
|
+
offset?: number;
|
|
52
|
+
/** Distinct */
|
|
53
|
+
distinct?: boolean;
|
|
54
|
+
}
|
|
55
|
+
export interface ViewOptions {
|
|
56
|
+
/** View name */
|
|
57
|
+
name: string;
|
|
58
|
+
/** Schema for the view */
|
|
59
|
+
schema?: string;
|
|
60
|
+
/** Comment for the view */
|
|
61
|
+
comment?: string;
|
|
62
|
+
/** Replace if exists */
|
|
63
|
+
replace?: boolean;
|
|
64
|
+
}
|
|
65
|
+
export interface MaterializedViewOptions extends ViewOptions {
|
|
66
|
+
/** Columns to cluster on */
|
|
67
|
+
clusterOn?: string[];
|
|
68
|
+
/** Storage parameters */
|
|
69
|
+
storageParams?: Record<string, string>;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Builder for creating database views
|
|
73
|
+
*/
|
|
74
|
+
export declare class ViewBuilder {
|
|
75
|
+
private columns;
|
|
76
|
+
private fromModel?;
|
|
77
|
+
private joins;
|
|
78
|
+
private whereConditions?;
|
|
79
|
+
private groupByClause?;
|
|
80
|
+
private havingConditions?;
|
|
81
|
+
private orderByClause?;
|
|
82
|
+
private limitVal?;
|
|
83
|
+
private offsetVal?;
|
|
84
|
+
private distinctVal?;
|
|
85
|
+
private viewOptions?;
|
|
86
|
+
/**
|
|
87
|
+
* Set the primary model to select from
|
|
88
|
+
* Accepts model class or table name string
|
|
89
|
+
* @example
|
|
90
|
+
* .from(User)
|
|
91
|
+
* .from('users')
|
|
92
|
+
*/
|
|
93
|
+
from(model: string | {
|
|
94
|
+
tableName?: string;
|
|
95
|
+
name?: string;
|
|
96
|
+
}): ViewBuilder;
|
|
97
|
+
/**
|
|
98
|
+
* Add a column to select
|
|
99
|
+
*/
|
|
100
|
+
selectColumn(column: string, opts?: {
|
|
101
|
+
alias?: string;
|
|
102
|
+
expression?: string;
|
|
103
|
+
}): ViewBuilder;
|
|
104
|
+
/**
|
|
105
|
+
* Add multiple columns at once
|
|
106
|
+
*/
|
|
107
|
+
selectColumns(columns: string[]): ViewBuilder;
|
|
108
|
+
/**
|
|
109
|
+
* Add all columns from a model
|
|
110
|
+
*/
|
|
111
|
+
selectAll(model: string | {
|
|
112
|
+
tableName?: string;
|
|
113
|
+
name?: string;
|
|
114
|
+
}, opts?: {
|
|
115
|
+
prefix?: string;
|
|
116
|
+
}): ViewBuilder;
|
|
117
|
+
/**
|
|
118
|
+
* Add a join to the view
|
|
119
|
+
* @example
|
|
120
|
+
* .join({ model: Post, type: 'LEFT', on: { userId: 'users.id' } })
|
|
121
|
+
* .join({ model: 'posts', type: 'LEFT', on: { userId: 'users.id' } })
|
|
122
|
+
*/
|
|
123
|
+
join(opts: {
|
|
124
|
+
model: string | {
|
|
125
|
+
tableName?: string;
|
|
126
|
+
name?: string;
|
|
127
|
+
};
|
|
128
|
+
type?: ViewJoin['type'];
|
|
129
|
+
on: Record<string, any>;
|
|
130
|
+
as?: string;
|
|
131
|
+
}): ViewBuilder;
|
|
132
|
+
/**
|
|
133
|
+
* Add WHERE conditions
|
|
134
|
+
*/
|
|
135
|
+
where(conditions: WhereOptions): ViewBuilder;
|
|
136
|
+
/**
|
|
137
|
+
* Add GROUP BY
|
|
138
|
+
*/
|
|
139
|
+
groupBy(columns: string | string[]): ViewBuilder;
|
|
140
|
+
/**
|
|
141
|
+
* Add HAVING conditions
|
|
142
|
+
*/
|
|
143
|
+
having(conditions: WhereOptions): ViewBuilder;
|
|
144
|
+
/**
|
|
145
|
+
* Add ORDER BY
|
|
146
|
+
*/
|
|
147
|
+
orderBy(order: Order): ViewBuilder;
|
|
148
|
+
/**
|
|
149
|
+
* Add LIMIT
|
|
150
|
+
*/
|
|
151
|
+
limit(limit: number): ViewBuilder;
|
|
152
|
+
/**
|
|
153
|
+
* Add OFFSET
|
|
154
|
+
*/
|
|
155
|
+
offset(offset: number): ViewBuilder;
|
|
156
|
+
/**
|
|
157
|
+
* Add DISTINCT
|
|
158
|
+
*/
|
|
159
|
+
distinct(): ViewBuilder;
|
|
160
|
+
/**
|
|
161
|
+
* Set view options
|
|
162
|
+
*/
|
|
163
|
+
options(opts: Partial<ViewOptions>): ViewBuilder;
|
|
164
|
+
/**
|
|
165
|
+
* Get the view options
|
|
166
|
+
*/
|
|
167
|
+
getOptions(): Partial<ViewOptions>;
|
|
168
|
+
/**
|
|
169
|
+
* Build the SELECT query for the view
|
|
170
|
+
*/
|
|
171
|
+
toSelectQuery(): ViewSelectOptions;
|
|
172
|
+
/**
|
|
173
|
+
* Build and return the SQL string
|
|
174
|
+
*/
|
|
175
|
+
toSQL(dialect: any): string;
|
|
176
|
+
/**
|
|
177
|
+
* Reset the builder
|
|
178
|
+
*/
|
|
179
|
+
reset(): void;
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Create a new view builder
|
|
183
|
+
*/
|
|
184
|
+
export declare function createViewBuilder(): ViewBuilder;
|
|
185
|
+
declare const _default: {
|
|
186
|
+
ViewBuilder: typeof ViewBuilder;
|
|
187
|
+
createViewBuilder: typeof createViewBuilder;
|
|
188
|
+
};
|
|
189
|
+
export default _default;
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WHERE clause builder for the ORM
|
|
3
|
+
* Handles complex WHERE conditions with all supported operators
|
|
4
|
+
*/
|
|
5
|
+
import { WhereOptions } from '../types';
|
|
6
|
+
/**
|
|
7
|
+
* Result of building a WHERE clause: the SQL fragment (with `?` placeholders) and its bound values
|
|
8
|
+
*/
|
|
9
|
+
export interface WhereClauseResult {
|
|
10
|
+
sql: string;
|
|
11
|
+
values: unknown[];
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Options controlling how a WhereBuilder generates SQL
|
|
15
|
+
*/
|
|
16
|
+
export interface WhereBuilderOptions {
|
|
17
|
+
replacements?: Record<string, unknown>;
|
|
18
|
+
model?: unknown;
|
|
19
|
+
dialect?: {
|
|
20
|
+
escape: (value: unknown) => string;
|
|
21
|
+
escapeId: (identifier: string) => string;
|
|
22
|
+
};
|
|
23
|
+
/** Dialect name for dialect-specific SQL generation (e.g., 'sqlite', 'mysql', 'postgres') */
|
|
24
|
+
dialectName?: string;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* WhereBuilder class for building WHERE clauses
|
|
28
|
+
*/
|
|
29
|
+
export declare class WhereBuilder {
|
|
30
|
+
private options;
|
|
31
|
+
constructor(options?: WhereBuilderOptions);
|
|
32
|
+
/**
|
|
33
|
+
* Build a WHERE clause from WhereOptions
|
|
34
|
+
*/
|
|
35
|
+
build(where: WhereOptions): WhereClauseResult;
|
|
36
|
+
/**
|
|
37
|
+
* Build a condition (can be nested)
|
|
38
|
+
*/
|
|
39
|
+
private buildCondition;
|
|
40
|
+
/**
|
|
41
|
+
* Check if the object has Op.not as a key (can be string or Symbol)
|
|
42
|
+
*/
|
|
43
|
+
private hasOpNotKey;
|
|
44
|
+
/**
|
|
45
|
+
* Build a condition with Op.not - { [Op.not]: { ... } } or { not: { ... } }
|
|
46
|
+
*/
|
|
47
|
+
private buildOpNotCondition;
|
|
48
|
+
/**
|
|
49
|
+
* Build a $where condition with column reference
|
|
50
|
+
* { $col: 'user.id', $eq: 1 } => "user"."id" = ?
|
|
51
|
+
*/
|
|
52
|
+
private buildWhereCondition;
|
|
53
|
+
/**
|
|
54
|
+
* Build a single where operator condition
|
|
55
|
+
* Handles special value types like $col (column references) and $literal (raw SQL)
|
|
56
|
+
*/
|
|
57
|
+
private buildSingleWhereOperator;
|
|
58
|
+
/**
|
|
59
|
+
* Check if the object has Op.and, Op.or, or Op.not as keys (Symbol-based logical operators)
|
|
60
|
+
*/
|
|
61
|
+
private hasLogicalOperatorSymbols;
|
|
62
|
+
/**
|
|
63
|
+
* Check if the object is a logical operator container
|
|
64
|
+
*/
|
|
65
|
+
private isLogicalOperator;
|
|
66
|
+
/**
|
|
67
|
+
* Build logical conditions ($and, $or, $not) or Symbol-based (Op.and, Op.or, Op.not)
|
|
68
|
+
*/
|
|
69
|
+
private buildLogicalCondition;
|
|
70
|
+
/**
|
|
71
|
+
* Check if a key is a JSON path Symbol created by Op.json
|
|
72
|
+
* JSON path symbols have descriptions like "json:$.path" or "json:path"
|
|
73
|
+
*/
|
|
74
|
+
private isJsonPathSymbol;
|
|
75
|
+
/**
|
|
76
|
+
* Extract the JSON path from a Symbol created by Op.json
|
|
77
|
+
* The path is stored in the Symbol's description after "json:"
|
|
78
|
+
*/
|
|
79
|
+
private extractJsonPath;
|
|
80
|
+
/**
|
|
81
|
+
* Build field-level conditions
|
|
82
|
+
*/
|
|
83
|
+
private buildFieldConditions;
|
|
84
|
+
/**
|
|
85
|
+
* Build condition for a specific operator
|
|
86
|
+
*/
|
|
87
|
+
private buildOperatorCondition;
|
|
88
|
+
/**
|
|
89
|
+
* Escape an identifier (column/table name)
|
|
90
|
+
*/
|
|
91
|
+
private escapeId;
|
|
92
|
+
/**
|
|
93
|
+
* Escape a value for use in a query
|
|
94
|
+
*/
|
|
95
|
+
private escapeValue;
|
|
96
|
+
/**
|
|
97
|
+
* Build a PostgreSQL array literal from an array value
|
|
98
|
+
* e.g., ['a', 'b'] => ARRAY['a', 'b']
|
|
99
|
+
*/
|
|
100
|
+
private buildArrayLiteral;
|
|
101
|
+
/**
|
|
102
|
+
* Build a JSON extraction expression based on the dialect
|
|
103
|
+
* SQLite/MySQL: json_extract(column, '$.path')
|
|
104
|
+
* PostgreSQL: column->>'path' or #>>'{path}'
|
|
105
|
+
*
|
|
106
|
+
* @param field - The JSON/JSONB column name
|
|
107
|
+
* @param path - The JSON path to extract (e.g., 'settings.theme' or '$.settings.theme')
|
|
108
|
+
* @returns SQL fragment for JSON extraction
|
|
109
|
+
*/
|
|
110
|
+
private buildJsonExtract;
|
|
111
|
+
/**
|
|
112
|
+
* Build a JSON path query - alias for buildJsonExtract for compatibility
|
|
113
|
+
*/
|
|
114
|
+
private jsonExtract;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Create a WhereBuilder instance with default options
|
|
118
|
+
*/
|
|
119
|
+
export declare function createWhereBuilder(options?: WhereBuilderOptions): WhereBuilder;
|
|
120
|
+
/**
|
|
121
|
+
* Quick helper to build a WHERE clause
|
|
122
|
+
*/
|
|
123
|
+
export declare function buildWhereClause(where: WhereOptions, options?: WhereBuilderOptions): WhereClauseResult;
|
|
124
|
+
export default WhereBuilder;
|