noormme 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +727 -0
- package/dist/cjs/cache/cache-manager.d.ts +76 -0
- package/dist/cjs/cache/cache-manager.js +169 -0
- package/dist/cjs/cli/commands/analyze.d.ts +7 -0
- package/dist/cjs/cli/commands/analyze.js +132 -0
- package/dist/cjs/cli/commands/generate.d.ts +7 -0
- package/dist/cjs/cli/commands/generate.js +514 -0
- package/dist/cjs/cli/commands/init.d.ts +7 -0
- package/dist/cjs/cli/commands/init.js +470 -0
- package/dist/cjs/cli/commands/inspect.d.ts +7 -0
- package/dist/cjs/cli/commands/inspect.js +365 -0
- package/dist/cjs/cli/commands/migrate.d.ts +8 -0
- package/dist/cjs/cli/commands/migrate.js +218 -0
- package/dist/cjs/cli/commands/optimize.d.ts +8 -0
- package/dist/cjs/cli/commands/optimize.js +156 -0
- package/dist/cjs/cli/commands/status.d.ts +6 -0
- package/dist/cjs/cli/commands/status.js +267 -0
- package/dist/cjs/cli/commands/watch.d.ts +7 -0
- package/dist/cjs/cli/commands/watch.js +216 -0
- package/dist/cjs/cli/index.d.ts +2 -0
- package/dist/cjs/cli/index.js +157 -0
- package/dist/cjs/dialect/database-introspector.d.ts +61 -0
- package/dist/cjs/dialect/database-introspector.js +85 -0
- package/dist/cjs/dialect/dialect-adapter-base.d.ts +94 -0
- package/dist/cjs/dialect/dialect-adapter-base.js +24 -0
- package/dist/cjs/dialect/dialect-adapter.d.ts +115 -0
- package/dist/cjs/dialect/dialect-adapter.js +2 -0
- package/dist/cjs/dialect/dialect.d.ts +34 -0
- package/dist/cjs/dialect/dialect.js +2 -0
- package/dist/cjs/dialect/sqlite/sqlite-adapter.d.ts +80 -0
- package/dist/cjs/dialect/sqlite/sqlite-adapter.js +23 -0
- package/dist/cjs/dialect/sqlite/sqlite-auto-indexer.d.ts +181 -0
- package/dist/cjs/dialect/sqlite/sqlite-auto-indexer.js +541 -0
- package/dist/cjs/dialect/sqlite/sqlite-auto-optimizer.d.ts +102 -0
- package/dist/cjs/dialect/sqlite/sqlite-auto-optimizer.js +373 -0
- package/dist/cjs/dialect/sqlite/sqlite-dialect-config.d.ts +41 -0
- package/dist/cjs/dialect/sqlite/sqlite-dialect-config.js +2 -0
- package/dist/cjs/dialect/sqlite/sqlite-dialect.d.ts +55 -0
- package/dist/cjs/dialect/sqlite/sqlite-dialect.js +51 -0
- package/dist/cjs/dialect/sqlite/sqlite-driver.d.ts +42 -0
- package/dist/cjs/dialect/sqlite/sqlite-driver.js +152 -0
- package/dist/cjs/dialect/sqlite/sqlite-introspector.d.ts +36 -0
- package/dist/cjs/dialect/sqlite/sqlite-introspector.js +236 -0
- package/dist/cjs/dialect/sqlite/sqlite-query-compiler.d.ts +16 -0
- package/dist/cjs/dialect/sqlite/sqlite-query-compiler.js +43 -0
- package/dist/cjs/driver/connection-provider.d.ts +8 -0
- package/dist/cjs/driver/connection-provider.js +2 -0
- package/dist/cjs/driver/database-connection.d.ts +35 -0
- package/dist/cjs/driver/database-connection.js +2 -0
- package/dist/cjs/driver/default-connection-provider.d.ts +12 -0
- package/dist/cjs/driver/default-connection-provider.js +19 -0
- package/dist/cjs/driver/driver.d.ts +61 -0
- package/dist/cjs/driver/driver.js +22 -0
- package/dist/cjs/driver/dummy-driver.d.ts +75 -0
- package/dist/cjs/driver/dummy-driver.js +83 -0
- package/dist/cjs/driver/runtime-driver.d.ts +47 -0
- package/dist/cjs/driver/runtime-driver.js +165 -0
- package/dist/cjs/driver/single-connection-provider.d.ts +11 -0
- package/dist/cjs/driver/single-connection-provider.js +29 -0
- package/dist/cjs/dynamic/dynamic-reference-builder.d.ts +18 -0
- package/dist/cjs/dynamic/dynamic-reference-builder.js +36 -0
- package/dist/cjs/dynamic/dynamic-table-builder.d.ts +16 -0
- package/dist/cjs/dynamic/dynamic-table-builder.js +46 -0
- package/dist/cjs/dynamic/dynamic.d.ts +124 -0
- package/dist/cjs/dynamic/dynamic.js +132 -0
- package/dist/cjs/errors/NoormError.d.ts +56 -0
- package/dist/cjs/errors/NoormError.js +158 -0
- package/dist/cjs/expression/expression-builder.d.ts +920 -0
- package/dist/cjs/expression/expression-builder.js +128 -0
- package/dist/cjs/expression/expression-wrapper.d.ts +631 -0
- package/dist/cjs/expression/expression-wrapper.js +134 -0
- package/dist/cjs/expression/expression.d.ts +198 -0
- package/dist/cjs/expression/expression.js +15 -0
- package/dist/cjs/helpers/sqlite.d.ts +189 -0
- package/dist/cjs/helpers/sqlite.js +204 -0
- package/dist/cjs/index.d.ts +211 -0
- package/dist/cjs/index.js +223 -0
- package/dist/cjs/kysely.d.ts +848 -0
- package/dist/cjs/kysely.js +924 -0
- package/dist/cjs/logging/logger.d.ts +96 -0
- package/dist/cjs/logging/logger.js +179 -0
- package/dist/cjs/noormme.d.ts +137 -0
- package/dist/cjs/noormme.js +521 -0
- package/dist/cjs/operation-node/add-column-node.d.ts +13 -0
- package/dist/cjs/operation-node/add-column-node.js +18 -0
- package/dist/cjs/operation-node/add-constraint-node.d.ts +13 -0
- package/dist/cjs/operation-node/add-constraint-node.js +18 -0
- package/dist/cjs/operation-node/add-index-node.d.ts +21 -0
- package/dist/cjs/operation-node/add-index-node.js +31 -0
- package/dist/cjs/operation-node/aggregate-function-node.d.ts +27 -0
- package/dist/cjs/operation-node/aggregate-function-node.js +58 -0
- package/dist/cjs/operation-node/alias-node.d.ts +13 -0
- package/dist/cjs/operation-node/alias-node.js +19 -0
- package/dist/cjs/operation-node/alter-column-node.d.ts +21 -0
- package/dist/cjs/operation-node/alter-column-node.js +20 -0
- package/dist/cjs/operation-node/alter-table-node.d.ts +36 -0
- package/dist/cjs/operation-node/alter-table-node.js +32 -0
- package/dist/cjs/operation-node/and-node.d.ts +13 -0
- package/dist/cjs/operation-node/and-node.js +19 -0
- package/dist/cjs/operation-node/binary-operation-node.d.ts +14 -0
- package/dist/cjs/operation-node/binary-operation-node.js +20 -0
- package/dist/cjs/operation-node/case-node.d.ts +19 -0
- package/dist/cjs/operation-node/case-node.js +42 -0
- package/dist/cjs/operation-node/cast-node.d.ts +13 -0
- package/dist/cjs/operation-node/cast-node.js +19 -0
- package/dist/cjs/operation-node/check-constraint-node.d.ts +14 -0
- package/dist/cjs/operation-node/check-constraint-node.js +20 -0
- package/dist/cjs/operation-node/collate-node.d.ts +13 -0
- package/dist/cjs/operation-node/collate-node.js +19 -0
- package/dist/cjs/operation-node/column-definition-node.d.ts +36 -0
- package/dist/cjs/operation-node/column-definition-node.js +42 -0
- package/dist/cjs/operation-node/column-node.d.ts +13 -0
- package/dist/cjs/operation-node/column-node.js +19 -0
- package/dist/cjs/operation-node/column-update-node.d.ts +13 -0
- package/dist/cjs/operation-node/column-update-node.js +19 -0
- package/dist/cjs/operation-node/common-table-expression-name-node.d.ts +15 -0
- package/dist/cjs/operation-node/common-table-expression-name-node.js +23 -0
- package/dist/cjs/operation-node/common-table-expression-node.d.ts +18 -0
- package/dist/cjs/operation-node/common-table-expression-node.js +25 -0
- package/dist/cjs/operation-node/constraint-node.d.ts +5 -0
- package/dist/cjs/operation-node/constraint-node.js +2 -0
- package/dist/cjs/operation-node/create-index-node.d.ts +27 -0
- package/dist/cjs/operation-node/create-index-node.js +31 -0
- package/dist/cjs/operation-node/create-schema-node.d.ts +16 -0
- package/dist/cjs/operation-node/create-schema-node.js +26 -0
- package/dist/cjs/operation-node/create-table-node.d.ts +32 -0
- package/dist/cjs/operation-node/create-table-node.js +56 -0
- package/dist/cjs/operation-node/create-type-node.d.ts +17 -0
- package/dist/cjs/operation-node/create-type-node.js +26 -0
- package/dist/cjs/operation-node/create-view-node.d.ts +24 -0
- package/dist/cjs/operation-node/create-view-node.js +25 -0
- package/dist/cjs/operation-node/data-type-node.d.ts +18 -0
- package/dist/cjs/operation-node/data-type-node.js +86 -0
- package/dist/cjs/operation-node/default-insert-value-node.d.ts +11 -0
- package/dist/cjs/operation-node/default-insert-value-node.js +17 -0
- package/dist/cjs/operation-node/default-value-node.d.ts +12 -0
- package/dist/cjs/operation-node/default-value-node.js +18 -0
- package/dist/cjs/operation-node/delete-query-node.d.ts +46 -0
- package/dist/cjs/operation-node/delete-query-node.js +52 -0
- package/dist/cjs/operation-node/drop-column-node.d.ts +13 -0
- package/dist/cjs/operation-node/drop-column-node.js +19 -0
- package/dist/cjs/operation-node/drop-constraint-node.d.ts +17 -0
- package/dist/cjs/operation-node/drop-constraint-node.js +25 -0
- package/dist/cjs/operation-node/drop-index-node.d.ts +19 -0
- package/dist/cjs/operation-node/drop-index-node.js +26 -0
- package/dist/cjs/operation-node/drop-schema-node.d.ts +17 -0
- package/dist/cjs/operation-node/drop-schema-node.js +26 -0
- package/dist/cjs/operation-node/drop-table-node.d.ts +17 -0
- package/dist/cjs/operation-node/drop-table-node.js +25 -0
- package/dist/cjs/operation-node/drop-type-node.d.ts +16 -0
- package/dist/cjs/operation-node/drop-type-node.js +24 -0
- package/dist/cjs/operation-node/drop-view-node.d.ts +18 -0
- package/dist/cjs/operation-node/drop-view-node.js +25 -0
- package/dist/cjs/operation-node/explain-node.d.ts +14 -0
- package/dist/cjs/operation-node/explain-node.js +19 -0
- package/dist/cjs/operation-node/fetch-node.d.ts +15 -0
- package/dist/cjs/operation-node/fetch-node.js +19 -0
- package/dist/cjs/operation-node/foreign-key-constraint-node.d.ts +33 -0
- package/dist/cjs/operation-node/foreign-key-constraint-node.js +28 -0
- package/dist/cjs/operation-node/from-node.d.ts +13 -0
- package/dist/cjs/operation-node/from-node.js +24 -0
- package/dist/cjs/operation-node/function-node.d.ts +13 -0
- package/dist/cjs/operation-node/function-node.js +19 -0
- package/dist/cjs/operation-node/generated-node.d.ts +19 -0
- package/dist/cjs/operation-node/generated-node.js +31 -0
- package/dist/cjs/operation-node/group-by-item-node.d.ts +12 -0
- package/dist/cjs/operation-node/group-by-item-node.js +18 -0
- package/dist/cjs/operation-node/group-by-node.d.ts +14 -0
- package/dist/cjs/operation-node/group-by-node.js +24 -0
- package/dist/cjs/operation-node/having-node.d.ts +13 -0
- package/dist/cjs/operation-node/having-node.js +28 -0
- package/dist/cjs/operation-node/identifier-node.d.ts +12 -0
- package/dist/cjs/operation-node/identifier-node.js +18 -0
- package/dist/cjs/operation-node/insert-query-node.d.ts +40 -0
- package/dist/cjs/operation-node/insert-query-node.js +31 -0
- package/dist/cjs/operation-node/join-node.d.ts +18 -0
- package/dist/cjs/operation-node/join-node.js +37 -0
- package/dist/cjs/operation-node/json-operator-chain-node.d.ts +16 -0
- package/dist/cjs/operation-node/json-operator-chain-node.js +25 -0
- package/dist/cjs/operation-node/json-path-leg-node.d.ts +14 -0
- package/dist/cjs/operation-node/json-path-leg-node.js +19 -0
- package/dist/cjs/operation-node/json-path-node.d.ts +16 -0
- package/dist/cjs/operation-node/json-path-node.js +25 -0
- package/dist/cjs/operation-node/json-reference-node.d.ts +17 -0
- package/dist/cjs/operation-node/json-reference-node.js +25 -0
- package/dist/cjs/operation-node/limit-node.d.ts +12 -0
- package/dist/cjs/operation-node/limit-node.js +18 -0
- package/dist/cjs/operation-node/list-node.d.ts +12 -0
- package/dist/cjs/operation-node/list-node.js +18 -0
- package/dist/cjs/operation-node/matched-node.d.ts +13 -0
- package/dist/cjs/operation-node/matched-node.js +19 -0
- package/dist/cjs/operation-node/merge-query-node.d.ts +30 -0
- package/dist/cjs/operation-node/merge-query-node.js +45 -0
- package/dist/cjs/operation-node/modify-column-node.d.ts +13 -0
- package/dist/cjs/operation-node/modify-column-node.js +18 -0
- package/dist/cjs/operation-node/offset-node.d.ts +12 -0
- package/dist/cjs/operation-node/offset-node.js +18 -0
- package/dist/cjs/operation-node/on-conflict-node.d.ts +30 -0
- package/dist/cjs/operation-node/on-conflict-node.js +68 -0
- package/dist/cjs/operation-node/on-duplicate-key-node.d.ts +14 -0
- package/dist/cjs/operation-node/on-duplicate-key-node.js +18 -0
- package/dist/cjs/operation-node/on-node.d.ts +13 -0
- package/dist/cjs/operation-node/on-node.js +28 -0
- package/dist/cjs/operation-node/operation-node-source.d.ts +5 -0
- package/dist/cjs/operation-node/operation-node-source.js +7 -0
- package/dist/cjs/operation-node/operation-node-transformer.d.ts +238 -0
- package/dist/cjs/operation-node/operation-node-transformer.js +929 -0
- package/dist/cjs/operation-node/operation-node-visitor.d.ts +201 -0
- package/dist/cjs/operation-node/operation-node-visitor.js +115 -0
- package/dist/cjs/operation-node/operation-node.d.ts +4 -0
- package/dist/cjs/operation-node/operation-node.js +2 -0
- package/dist/cjs/operation-node/operator-node.d.ts +32 -0
- package/dist/cjs/operation-node/operator-node.js +107 -0
- package/dist/cjs/operation-node/or-action-node.d.ts +12 -0
- package/dist/cjs/operation-node/or-action-node.js +18 -0
- package/dist/cjs/operation-node/or-node.d.ts +13 -0
- package/dist/cjs/operation-node/or-node.js +19 -0
- package/dist/cjs/operation-node/order-by-item-node.d.ts +18 -0
- package/dist/cjs/operation-node/order-by-item-node.js +25 -0
- package/dist/cjs/operation-node/order-by-node.d.ts +14 -0
- package/dist/cjs/operation-node/order-by-node.js +24 -0
- package/dist/cjs/operation-node/output-node.d.ts +13 -0
- package/dist/cjs/operation-node/output-node.js +26 -0
- package/dist/cjs/operation-node/over-node.d.ts +19 -0
- package/dist/cjs/operation-node/over-node.js +35 -0
- package/dist/cjs/operation-node/parens-node.d.ts +12 -0
- package/dist/cjs/operation-node/parens-node.js +18 -0
- package/dist/cjs/operation-node/partition-by-item-node.d.ts +13 -0
- package/dist/cjs/operation-node/partition-by-item-node.js +18 -0
- package/dist/cjs/operation-node/partition-by-node.d.ts +14 -0
- package/dist/cjs/operation-node/partition-by-node.js +24 -0
- package/dist/cjs/operation-node/primary-key-constraint-node.d.ts +29 -0
- package/dist/cjs/operation-node/primary-key-constraint-node.js +30 -0
- package/dist/cjs/operation-node/primitive-value-list-node.d.ts +17 -0
- package/dist/cjs/operation-node/primitive-value-list-node.js +18 -0
- package/dist/cjs/operation-node/query-node.d.ts +60 -0
- package/dist/cjs/operation-node/query-node.js +102 -0
- package/dist/cjs/operation-node/raw-node.d.ts +16 -0
- package/dist/cjs/operation-node/raw-node.js +28 -0
- package/dist/cjs/operation-node/reference-node.d.ts +17 -0
- package/dist/cjs/operation-node/reference-node.js +27 -0
- package/dist/cjs/operation-node/references-node.d.ts +22 -0
- package/dist/cjs/operation-node/references-node.js +38 -0
- package/dist/cjs/operation-node/refresh-materialized-view-node.d.ts +17 -0
- package/dist/cjs/operation-node/refresh-materialized-view-node.js +25 -0
- package/dist/cjs/operation-node/rename-column-node.d.ts +14 -0
- package/dist/cjs/operation-node/rename-column-node.js +20 -0
- package/dist/cjs/operation-node/rename-constraint-node.d.ts +14 -0
- package/dist/cjs/operation-node/rename-constraint-node.js +20 -0
- package/dist/cjs/operation-node/returning-node.d.ts +14 -0
- package/dist/cjs/operation-node/returning-node.js +26 -0
- package/dist/cjs/operation-node/schemable-identifier-node.d.ts +15 -0
- package/dist/cjs/operation-node/schemable-identifier-node.js +26 -0
- package/dist/cjs/operation-node/select-all-node.d.ts +11 -0
- package/dist/cjs/operation-node/select-all-node.js +17 -0
- package/dist/cjs/operation-node/select-modifier-node.d.ts +16 -0
- package/dist/cjs/operation-node/select-modifier-node.js +25 -0
- package/dist/cjs/operation-node/select-query-node.d.ts +67 -0
- package/dist/cjs/operation-node/select-query-node.js +129 -0
- package/dist/cjs/operation-node/selection-node.d.ts +20 -0
- package/dist/cjs/operation-node/selection-node.js +32 -0
- package/dist/cjs/operation-node/set-operation-node.d.ts +15 -0
- package/dist/cjs/operation-node/set-operation-node.js +20 -0
- package/dist/cjs/operation-node/simple-reference-expression-node.d.ts +3 -0
- package/dist/cjs/operation-node/simple-reference-expression-node.js +2 -0
- package/dist/cjs/operation-node/table-node.d.ts +14 -0
- package/dist/cjs/operation-node/table-node.js +25 -0
- package/dist/cjs/operation-node/top-node.d.ts +14 -0
- package/dist/cjs/operation-node/top-node.js +19 -0
- package/dist/cjs/operation-node/tuple-node.d.ts +12 -0
- package/dist/cjs/operation-node/tuple-node.js +18 -0
- package/dist/cjs/operation-node/unary-operation-node.d.ts +13 -0
- package/dist/cjs/operation-node/unary-operation-node.js +19 -0
- package/dist/cjs/operation-node/unique-constraint-node.d.ts +20 -0
- package/dist/cjs/operation-node/unique-constraint-node.js +28 -0
- package/dist/cjs/operation-node/update-query-node.d.ts +39 -0
- package/dist/cjs/operation-node/update-query-node.js +50 -0
- package/dist/cjs/operation-node/using-node.d.ts +13 -0
- package/dist/cjs/operation-node/using-node.js +24 -0
- package/dist/cjs/operation-node/value-list-node.d.ts +12 -0
- package/dist/cjs/operation-node/value-list-node.js +18 -0
- package/dist/cjs/operation-node/value-node.d.ts +14 -0
- package/dist/cjs/operation-node/value-node.js +25 -0
- package/dist/cjs/operation-node/values-node.d.ts +15 -0
- package/dist/cjs/operation-node/values-node.js +18 -0
- package/dist/cjs/operation-node/when-node.d.ts +14 -0
- package/dist/cjs/operation-node/when-node.js +24 -0
- package/dist/cjs/operation-node/where-node.d.ts +13 -0
- package/dist/cjs/operation-node/where-node.js +28 -0
- package/dist/cjs/operation-node/with-node.d.ts +16 -0
- package/dist/cjs/operation-node/with-node.js +25 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/parser/binary-operation-parser.d.ts +21 -0
- package/dist/cjs/parser/binary-operation-parser.js +74 -0
- package/dist/cjs/parser/coalesce-parser.d.ts +12 -0
- package/dist/cjs/parser/coalesce-parser.js +2 -0
- package/dist/cjs/parser/collate-parser.d.ts +1 -0
- package/dist/cjs/parser/collate-parser.js +2 -0
- package/dist/cjs/parser/data-type-parser.d.ts +5 -0
- package/dist/cjs/parser/data-type-parser.js +14 -0
- package/dist/cjs/parser/default-value-parser.d.ts +4 -0
- package/dist/cjs/parser/default-value-parser.js +10 -0
- package/dist/cjs/parser/delete-from-parser.d.ts +9 -0
- package/dist/cjs/parser/delete-from-parser.js +2 -0
- package/dist/cjs/parser/expression-parser.d.ts +20 -0
- package/dist/cjs/parser/expression-parser.js +30 -0
- package/dist/cjs/parser/fetch-parser.d.ts +2 -0
- package/dist/cjs/parser/fetch-parser.js +17 -0
- package/dist/cjs/parser/group-by-parser.d.ts +6 -0
- package/dist/cjs/parser/group-by-parser.js +11 -0
- package/dist/cjs/parser/identifier-parser.d.ts +2 -0
- package/dist/cjs/parser/identifier-parser.js +22 -0
- package/dist/cjs/parser/insert-values-parser.d.ts +14 -0
- package/dist/cjs/parser/insert-values-parser.js +64 -0
- package/dist/cjs/parser/join-parser.d.ts +10 -0
- package/dist/cjs/parser/join-parser.js +30 -0
- package/dist/cjs/parser/merge-into-parser.d.ts +7 -0
- package/dist/cjs/parser/merge-into-parser.js +2 -0
- package/dist/cjs/parser/merge-parser.d.ts +9 -0
- package/dist/cjs/parser/merge-parser.js +31 -0
- package/dist/cjs/parser/on-commit-action-parse.d.ts +2 -0
- package/dist/cjs/parser/on-commit-action-parse.js +10 -0
- package/dist/cjs/parser/on-modify-action-parser.d.ts +2 -0
- package/dist/cjs/parser/on-modify-action-parser.js +10 -0
- package/dist/cjs/parser/order-by-parser.d.ts +25 -0
- package/dist/cjs/parser/order-by-parser.js +71 -0
- package/dist/cjs/parser/parse-utils.d.ts +10 -0
- package/dist/cjs/parser/parse-utils.js +38 -0
- package/dist/cjs/parser/partition-by-parser.d.ts +6 -0
- package/dist/cjs/parser/partition-by-parser.js +8 -0
- package/dist/cjs/parser/reference-parser.d.ts +31 -0
- package/dist/cjs/parser/reference-parser.js +104 -0
- package/dist/cjs/parser/returning-parser.d.ts +8 -0
- package/dist/cjs/parser/returning-parser.js +2 -0
- package/dist/cjs/parser/savepoint-parser.d.ts +4 -0
- package/dist/cjs/parser/savepoint-parser.js +11 -0
- package/dist/cjs/parser/select-from-parser.d.ts +6 -0
- package/dist/cjs/parser/select-from-parser.js +2 -0
- package/dist/cjs/parser/select-parser.d.ts +36 -0
- package/dist/cjs/parser/select-parser.js +50 -0
- package/dist/cjs/parser/set-operation-parser.d.ts +5 -0
- package/dist/cjs/parser/set-operation-parser.js +16 -0
- package/dist/cjs/parser/table-parser.d.ts +24 -0
- package/dist/cjs/parser/table-parser.js +54 -0
- package/dist/cjs/parser/top-parser.d.ts +2 -0
- package/dist/cjs/parser/top-parser.js +19 -0
- package/dist/cjs/parser/tuple-parser.d.ts +47 -0
- package/dist/cjs/parser/tuple-parser.js +2 -0
- package/dist/cjs/parser/unary-operation-parser.d.ts +8 -0
- package/dist/cjs/parser/unary-operation-parser.js +17 -0
- package/dist/cjs/parser/update-parser.d.ts +9 -0
- package/dist/cjs/parser/update-parser.js +2 -0
- package/dist/cjs/parser/update-set-parser.d.ts +16 -0
- package/dist/cjs/parser/update-set-parser.js +26 -0
- package/dist/cjs/parser/value-parser.d.ts +13 -0
- package/dist/cjs/parser/value-parser.js +38 -0
- package/dist/cjs/parser/with-parser.d.ts +45 -0
- package/dist/cjs/parser/with-parser.js +33 -0
- package/dist/cjs/performance/query-analyzer.d.ts +89 -0
- package/dist/cjs/performance/query-analyzer.js +263 -0
- package/dist/cjs/plugin/camel-case/camel-case-plugin.d.ts +170 -0
- package/dist/cjs/plugin/camel-case/camel-case-plugin.js +122 -0
- package/dist/cjs/plugin/camel-case/camel-case-transformer.d.ts +9 -0
- package/dist/cjs/plugin/camel-case/camel-case-transformer.js +19 -0
- package/dist/cjs/plugin/camel-case/camel-case.d.ts +15 -0
- package/dist/cjs/plugin/camel-case/camel-case.js +111 -0
- package/dist/cjs/plugin/deduplicate-joins/deduplicate-joins-plugin.d.ts +70 -0
- package/dist/cjs/plugin/deduplicate-joins/deduplicate-joins-plugin.js +19 -0
- package/dist/cjs/plugin/deduplicate-joins/deduplicate-joins-transformer.d.ts +11 -0
- package/dist/cjs/plugin/deduplicate-joins/deduplicate-joins-transformer.js +42 -0
- package/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists-plugin.d.ts +211 -0
- package/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists-plugin.js +162 -0
- package/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists-transformer.d.ts +8 -0
- package/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists-transformer.js +29 -0
- package/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists.d.ts +44 -0
- package/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists.js +66 -0
- package/dist/cjs/plugin/immediate-value/immediate-value-plugin.d.ts +73 -0
- package/dist/cjs/plugin/immediate-value/immediate-value-plugin.js +22 -0
- package/dist/cjs/plugin/immediate-value/immediate-value-transformer.d.ts +15 -0
- package/dist/cjs/plugin/immediate-value/immediate-value-transformer.js +23 -0
- package/dist/cjs/plugin/kysely-plugin.d.ts +72 -0
- package/dist/cjs/plugin/kysely-plugin.js +2 -0
- package/dist/cjs/plugin/noop-plugin.d.ts +64 -0
- package/dist/cjs/plugin/noop-plugin.js +12 -0
- package/dist/cjs/plugin/parse-json-results/parse-json-results-plugin.d.ts +126 -0
- package/dist/cjs/plugin/parse-json-results/parse-json-results-plugin.js +107 -0
- package/dist/cjs/plugin/with-schema/with-schema-plugin.d.ts +66 -0
- package/dist/cjs/plugin/with-schema/with-schema-plugin.js +17 -0
- package/dist/cjs/plugin/with-schema/with-schema-transformer.d.ts +16 -0
- package/dist/cjs/plugin/with-schema/with-schema-transformer.js +181 -0
- package/dist/cjs/query-builder/aggregate-function-builder.d.ts +379 -0
- package/dist/cjs/query-builder/aggregate-function-builder.js +242 -0
- package/dist/cjs/query-builder/case-builder.d.ts +112 -0
- package/dist/cjs/query-builder/case-builder.js +79 -0
- package/dist/cjs/query-builder/cte-builder.d.ts +20 -0
- package/dist/cjs/query-builder/cte-builder.js +37 -0
- package/dist/cjs/query-builder/delete-query-builder.d.ts +1348 -0
- package/dist/cjs/query-builder/delete-query-builder.js +504 -0
- package/dist/cjs/query-builder/delete-result.d.ts +4 -0
- package/dist/cjs/query-builder/delete-result.js +10 -0
- package/dist/cjs/query-builder/function-module.d.ts +592 -0
- package/dist/cjs/query-builder/function-module.js +62 -0
- package/dist/cjs/query-builder/having-interface.d.ts +15 -0
- package/dist/cjs/query-builder/having-interface.js +2 -0
- package/dist/cjs/query-builder/insert-query-builder.d.ts +1235 -0
- package/dist/cjs/query-builder/insert-query-builder.js +1160 -0
- package/dist/cjs/query-builder/insert-result.d.ts +46 -0
- package/dist/cjs/query-builder/insert-result.js +53 -0
- package/dist/cjs/query-builder/join-builder.d.ts +38 -0
- package/dist/cjs/query-builder/join-builder.js +51 -0
- package/dist/cjs/query-builder/json-path-builder.d.ts +294 -0
- package/dist/cjs/query-builder/json-path-builder.js +200 -0
- package/dist/cjs/query-builder/merge-query-builder.d.ts +1001 -0
- package/dist/cjs/query-builder/merge-query-builder.js +630 -0
- package/dist/cjs/query-builder/merge-result.d.ts +4 -0
- package/dist/cjs/query-builder/merge-result.js +10 -0
- package/dist/cjs/query-builder/no-result-error.d.ts +10 -0
- package/dist/cjs/query-builder/no-result-error.js +18 -0
- package/dist/cjs/query-builder/on-conflict-builder.d.ts +872 -0
- package/dist/cjs/query-builder/on-conflict-builder.js +259 -0
- package/dist/cjs/query-builder/order-by-interface.d.ts +158 -0
- package/dist/cjs/query-builder/order-by-interface.js +2 -0
- package/dist/cjs/query-builder/order-by-item-builder.d.ts +43 -0
- package/dist/cjs/query-builder/order-by-item-builder.js +75 -0
- package/dist/cjs/query-builder/output-interface.d.ts +138 -0
- package/dist/cjs/query-builder/output-interface.js +2 -0
- package/dist/cjs/query-builder/over-builder.d.ts +101 -0
- package/dist/cjs/query-builder/over-builder.js +40 -0
- package/dist/cjs/query-builder/returning-interface.d.ts +91 -0
- package/dist/cjs/query-builder/returning-interface.js +2 -0
- package/dist/cjs/query-builder/select-query-builder-expression.d.ts +28 -0
- package/dist/cjs/query-builder/select-query-builder-expression.js +2 -0
- package/dist/cjs/query-builder/select-query-builder.d.ts +2391 -0
- package/dist/cjs/query-builder/select-query-builder.js +376 -0
- package/dist/cjs/query-builder/update-query-builder.d.ts +1392 -0
- package/dist/cjs/query-builder/update-query-builder.js +513 -0
- package/dist/cjs/query-builder/update-result.d.ts +14 -0
- package/dist/cjs/query-builder/update-result.js +21 -0
- package/dist/cjs/query-builder/where-interface.d.ts +382 -0
- package/dist/cjs/query-builder/where-interface.js +2 -0
- package/dist/cjs/query-compiler/compiled-query.d.ts +11 -0
- package/dist/cjs/query-compiler/compiled-query.js +16 -0
- package/dist/cjs/query-compiler/default-query-compiler.d.ts +235 -0
- package/dist/cjs/query-compiler/default-query-compiler.js +1390 -0
- package/dist/cjs/query-compiler/query-compiler.d.ts +24 -0
- package/dist/cjs/query-compiler/query-compiler.js +2 -0
- package/dist/cjs/query-creator.d.ts +592 -0
- package/dist/cjs/query-creator.js +622 -0
- package/dist/cjs/query-executor/default-query-executor.d.ts +50 -0
- package/dist/cjs/query-executor/default-query-executor.js +40 -0
- package/dist/cjs/query-executor/noop-query-executor.d.ts +50 -0
- package/dist/cjs/query-executor/noop-query-executor.js +37 -0
- package/dist/cjs/query-executor/query-executor-base.d.ts +68 -0
- package/dist/cjs/query-executor/query-executor-base.js +62 -0
- package/dist/cjs/query-executor/query-executor-provider.d.ts +8 -0
- package/dist/cjs/query-executor/query-executor-provider.js +2 -0
- package/dist/cjs/query-executor/query-executor.d.ts +74 -0
- package/dist/cjs/query-executor/query-executor.js +2 -0
- package/dist/cjs/raw-builder/raw-builder.d.ts +218 -0
- package/dist/cjs/raw-builder/raw-builder.js +86 -0
- package/dist/cjs/raw-builder/sql.d.ts +366 -0
- package/dist/cjs/raw-builder/sql.js +84 -0
- package/dist/cjs/relationships/relationship-engine.d.ts +59 -0
- package/dist/cjs/relationships/relationship-engine.js +206 -0
- package/dist/cjs/repository/repository-factory.d.ts +54 -0
- package/dist/cjs/repository/repository-factory.js +449 -0
- package/dist/cjs/schema/builders/alter-column-builder.d.ts +53 -0
- package/dist/cjs/schema/builders/alter-column-builder.js +74 -0
- package/dist/cjs/schema/builders/alter-table-add-foreign-key-constraint-builder.d.ts +32 -0
- package/dist/cjs/schema/builders/alter-table-add-foreign-key-constraint-builder.js +67 -0
- package/dist/cjs/schema/builders/alter-table-add-index-builder.d.ts +138 -0
- package/dist/cjs/schema/builders/alter-table-add-index-builder.js +165 -0
- package/dist/cjs/schema/builders/alter-table-builder.d.ts +148 -0
- package/dist/cjs/schema/builders/alter-table-builder.js +267 -0
- package/dist/cjs/schema/builders/alter-table-drop-constraint-builder.d.ts +26 -0
- package/dist/cjs/schema/builders/alter-table-drop-constraint-builder.js +59 -0
- package/dist/cjs/schema/builders/alter-table-executor.d.ts +18 -0
- package/dist/cjs/schema/builders/alter-table-executor.js +20 -0
- package/dist/cjs/schema/builders/check-constraint-builder.d.ts +13 -0
- package/dist/cjs/schema/builders/check-constraint-builder.js +20 -0
- package/dist/cjs/schema/builders/column-definition-builder.d.ts +514 -0
- package/dist/cjs/schema/builders/column-definition-builder.js +600 -0
- package/dist/cjs/schema/builders/create-index-builder.d.ts +173 -0
- package/dist/cjs/schema/builders/create-index-builder.js +202 -0
- package/dist/cjs/schema/builders/create-schema-builder.d.ts +24 -0
- package/dist/cjs/schema/builders/create-schema-builder.js +34 -0
- package/dist/cjs/schema/builders/create-table-builder.d.ts +331 -0
- package/dist/cjs/schema/builders/create-table-builder.js +411 -0
- package/dist/cjs/schema/builders/create-type-builder.d.ts +33 -0
- package/dist/cjs/schema/builders/create-type-builder.js +43 -0
- package/dist/cjs/schema/builders/create-view-builder.d.ts +48 -0
- package/dist/cjs/schema/builders/create-view-builder.js +98 -0
- package/dist/cjs/schema/builders/drop-index-builder.d.ts +30 -0
- package/dist/cjs/schema/builders/drop-index-builder.js +57 -0
- package/dist/cjs/schema/builders/drop-schema-builder.d.ts +25 -0
- package/dist/cjs/schema/builders/drop-schema-builder.js +44 -0
- package/dist/cjs/schema/builders/drop-table-builder.d.ts +25 -0
- package/dist/cjs/schema/builders/drop-table-builder.js +44 -0
- package/dist/cjs/schema/builders/drop-type-builder.d.ts +24 -0
- package/dist/cjs/schema/builders/drop-type-builder.js +36 -0
- package/dist/cjs/schema/builders/drop-view-builder.d.ts +26 -0
- package/dist/cjs/schema/builders/drop-view-builder.js +52 -0
- package/dist/cjs/schema/builders/foreign-key-constraint-builder.d.ts +28 -0
- package/dist/cjs/schema/builders/foreign-key-constraint-builder.js +48 -0
- package/dist/cjs/schema/builders/index.d.ts +22 -0
- package/dist/cjs/schema/builders/index.js +39 -0
- package/dist/cjs/schema/builders/primary-key-constraint-builder.d.ts +17 -0
- package/dist/cjs/schema/builders/primary-key-constraint-builder.js +37 -0
- package/dist/cjs/schema/builders/refresh-materialized-view-builder.d.ts +47 -0
- package/dist/cjs/schema/builders/refresh-materialized-view-builder.js +75 -0
- package/dist/cjs/schema/builders/unique-constraint-builder.d.ts +23 -0
- package/dist/cjs/schema/builders/unique-constraint-builder.js +45 -0
- package/dist/cjs/schema/core/coordinators/schema-discovery.coordinator.d.ts +35 -0
- package/dist/cjs/schema/core/coordinators/schema-discovery.coordinator.js +63 -0
- package/dist/cjs/schema/core/discovery/relationship-discovery.d.ts +36 -0
- package/dist/cjs/schema/core/discovery/relationship-discovery.js +162 -0
- package/dist/cjs/schema/core/discovery/table-metadata-discovery.d.ts +29 -0
- package/dist/cjs/schema/core/discovery/table-metadata-discovery.js +126 -0
- package/dist/cjs/schema/core/discovery/view-discovery.d.ts +36 -0
- package/dist/cjs/schema/core/discovery/view-discovery.js +137 -0
- package/dist/cjs/schema/core/factories/discovery-factory.d.ts +66 -0
- package/dist/cjs/schema/core/factories/discovery-factory.js +122 -0
- package/dist/cjs/schema/core/types/schema-discovery-types.d.ts +43 -0
- package/dist/cjs/schema/core/types/schema-discovery-types.js +3 -0
- package/dist/cjs/schema/core/utils/name-generator.d.ts +21 -0
- package/dist/cjs/schema/core/utils/name-generator.js +55 -0
- package/dist/cjs/schema/core/utils/type-mapper.d.ts +25 -0
- package/dist/cjs/schema/core/utils/type-mapper.js +61 -0
- package/dist/cjs/schema/dialects/sqlite/discovery/sqlite-constraint-discovery.d.ts +97 -0
- package/dist/cjs/schema/dialects/sqlite/discovery/sqlite-constraint-discovery.js +533 -0
- package/dist/cjs/schema/dialects/sqlite/discovery/sqlite-index-discovery.d.ts +32 -0
- package/dist/cjs/schema/dialects/sqlite/discovery/sqlite-index-discovery.js +133 -0
- package/dist/cjs/schema/dialects/sqlite/introspection/sqlite-schema-introspector.d.ts +31 -0
- package/dist/cjs/schema/dialects/sqlite/introspection/sqlite-schema-introspector.js +192 -0
- package/dist/cjs/schema/dialects/sqlite/sqlite-discovery.coordinator.d.ts +51 -0
- package/dist/cjs/schema/dialects/sqlite/sqlite-discovery.coordinator.js +180 -0
- package/dist/cjs/schema/index.d.ts +14 -0
- package/dist/cjs/schema/index.js +49 -0
- package/dist/cjs/schema/schema-discovery.d.ts +23 -0
- package/dist/cjs/schema/schema-discovery.js +33 -0
- package/dist/cjs/schema/schema.d.ts +230 -0
- package/dist/cjs/schema/schema.js +328 -0
- package/dist/cjs/schema/test/basic-schema-test.d.ts +8 -0
- package/dist/cjs/schema/test/basic-schema-test.js +184 -0
- package/dist/cjs/schema/test/dialect-capabilities.test.d.ts +1 -0
- package/dist/cjs/schema/test/dialect-capabilities.test.js +153 -0
- package/dist/cjs/schema/test/discovery-factory.test.d.ts +1 -0
- package/dist/cjs/schema/test/discovery-factory.test.js +151 -0
- package/dist/cjs/schema/test/error-handling.test.d.ts +1 -0
- package/dist/cjs/schema/test/error-handling.test.js +149 -0
- package/dist/cjs/schema/test/integration.test.d.ts +1 -0
- package/dist/cjs/schema/test/integration.test.js +135 -0
- package/dist/cjs/schema/test/schema-discovery-coordinator.test.d.ts +1 -0
- package/dist/cjs/schema/test/schema-discovery-coordinator.test.js +139 -0
- package/dist/cjs/schema/test/simple-schema-test.d.ts +5 -0
- package/dist/cjs/schema/test/simple-schema-test.js +77 -0
- package/dist/cjs/schema/test/sqlite-discovery-coordinator.test.d.ts +1 -0
- package/dist/cjs/schema/test/sqlite-discovery-coordinator.test.js +377 -0
- package/dist/cjs/schema/test/test-runner.d.ts +66 -0
- package/dist/cjs/schema/test/test-runner.js +90 -0
- package/dist/cjs/sqlite-migration/index.d.ts +6 -0
- package/dist/cjs/sqlite-migration/index.js +20 -0
- package/dist/cjs/sqlite-migration/sqlite-migration-manager.d.ts +104 -0
- package/dist/cjs/sqlite-migration/sqlite-migration-manager.js +335 -0
- package/dist/cjs/sqlite-migration/sqlite-migration-provider.d.ts +77 -0
- package/dist/cjs/sqlite-migration/sqlite-migration-provider.js +342 -0
- package/dist/cjs/testing/test-utils.d.ts +110 -0
- package/dist/cjs/testing/test-utils.js +328 -0
- package/dist/cjs/types/index.d.ts +155 -0
- package/dist/cjs/types/index.js +5 -0
- package/dist/cjs/types/type-generator.d.ts +52 -0
- package/dist/cjs/types/type-generator.js +261 -0
- package/dist/cjs/util/assert.d.ts +2 -0
- package/dist/cjs/util/assert.js +14 -0
- package/dist/cjs/util/column-type.d.ts +175 -0
- package/dist/cjs/util/column-type.js +2 -0
- package/dist/cjs/util/compilable.d.ts +5 -0
- package/dist/cjs/util/compilable.js +7 -0
- package/dist/cjs/util/deferred.d.ts +7 -0
- package/dist/cjs/util/deferred.js +28 -0
- package/dist/cjs/util/explainable.d.ts +40 -0
- package/dist/cjs/util/explainable.js +2 -0
- package/dist/cjs/util/infer-result.d.ts +48 -0
- package/dist/cjs/util/infer-result.js +2 -0
- package/dist/cjs/util/json-object-args.d.ts +3 -0
- package/dist/cjs/util/json-object-args.js +34 -0
- package/dist/cjs/util/log-once.d.ts +5 -0
- package/dist/cjs/util/log-once.js +15 -0
- package/dist/cjs/util/log.d.ts +26 -0
- package/dist/cjs/util/log.js +58 -0
- package/dist/cjs/util/object-utils.d.ts +23 -0
- package/dist/cjs/util/object-utils.js +162 -0
- package/dist/cjs/util/performance-now.d.ts +1 -0
- package/dist/cjs/util/performance-now.js +12 -0
- package/dist/cjs/util/provide-controlled-connection.d.ts +7 -0
- package/dist/cjs/util/provide-controlled-connection.js +24 -0
- package/dist/cjs/util/query-id.d.ts +4 -0
- package/dist/cjs/util/query-id.js +16 -0
- package/dist/cjs/util/random-string.d.ts +1 -0
- package/dist/cjs/util/random-string.js +77 -0
- package/dist/cjs/util/require-all-props.d.ts +45 -0
- package/dist/cjs/util/require-all-props.js +41 -0
- package/dist/cjs/util/stack-trace-utils.d.ts +1 -0
- package/dist/cjs/util/stack-trace-utils.js +16 -0
- package/dist/cjs/util/streamable.d.ts +29 -0
- package/dist/cjs/util/streamable.js +2 -0
- package/dist/cjs/util/type-error.d.ts +3 -0
- package/dist/cjs/util/type-error.js +2 -0
- package/dist/cjs/util/type-utils.d.ts +189 -0
- package/dist/cjs/util/type-utils.js +2 -0
- package/dist/cjs/utils/errorHelpers.d.ts +26 -0
- package/dist/cjs/utils/errorHelpers.js +186 -0
- package/dist/cjs/watch/schema-watcher.d.ts +68 -0
- package/dist/cjs/watch/schema-watcher.js +186 -0
- package/dist/esm/cache/cache-manager.d.ts +76 -0
- package/dist/esm/cache/cache-manager.js +166 -0
- package/dist/esm/cli/commands/analyze.d.ts +7 -0
- package/dist/esm/cli/commands/analyze.js +130 -0
- package/dist/esm/cli/commands/generate.d.ts +7 -0
- package/dist/esm/cli/commands/generate.js +512 -0
- package/dist/esm/cli/commands/init.d.ts +7 -0
- package/dist/esm/cli/commands/init.js +468 -0
- package/dist/esm/cli/commands/inspect.d.ts +7 -0
- package/dist/esm/cli/commands/inspect.js +363 -0
- package/dist/esm/cli/commands/migrate.d.ts +8 -0
- package/dist/esm/cli/commands/migrate.js +216 -0
- package/dist/esm/cli/commands/optimize.d.ts +8 -0
- package/dist/esm/cli/commands/optimize.js +154 -0
- package/dist/esm/cli/commands/status.d.ts +6 -0
- package/dist/esm/cli/commands/status.js +265 -0
- package/dist/esm/cli/commands/watch.d.ts +7 -0
- package/dist/esm/cli/commands/watch.js +214 -0
- package/dist/esm/cli/index.d.ts +2 -0
- package/dist/esm/cli/index.js +156 -0
- package/dist/esm/dialect/database-introspector.d.ts +61 -0
- package/dist/esm/dialect/database-introspector.js +82 -0
- package/dist/esm/dialect/dialect-adapter-base.d.ts +94 -0
- package/dist/esm/dialect/dialect-adapter-base.js +21 -0
- package/dist/esm/dialect/dialect-adapter.d.ts +115 -0
- package/dist/esm/dialect/dialect-adapter.js +2 -0
- package/dist/esm/dialect/dialect.d.ts +34 -0
- package/dist/esm/dialect/dialect.js +2 -0
- package/dist/esm/dialect/sqlite/sqlite-adapter.d.ts +80 -0
- package/dist/esm/dialect/sqlite/sqlite-adapter.js +20 -0
- package/dist/esm/dialect/sqlite/sqlite-auto-indexer.d.ts +181 -0
- package/dist/esm/dialect/sqlite/sqlite-auto-indexer.js +538 -0
- package/dist/esm/dialect/sqlite/sqlite-auto-optimizer.d.ts +102 -0
- package/dist/esm/dialect/sqlite/sqlite-auto-optimizer.js +370 -0
- package/dist/esm/dialect/sqlite/sqlite-dialect-config.d.ts +41 -0
- package/dist/esm/dialect/sqlite/sqlite-dialect-config.js +2 -0
- package/dist/esm/dialect/sqlite/sqlite-dialect.d.ts +55 -0
- package/dist/esm/dialect/sqlite/sqlite-dialect.js +48 -0
- package/dist/esm/dialect/sqlite/sqlite-driver.d.ts +42 -0
- package/dist/esm/dialect/sqlite/sqlite-driver.js +149 -0
- package/dist/esm/dialect/sqlite/sqlite-introspector.d.ts +36 -0
- package/dist/esm/dialect/sqlite/sqlite-introspector.js +233 -0
- package/dist/esm/dialect/sqlite/sqlite-query-compiler.d.ts +16 -0
- package/dist/esm/dialect/sqlite/sqlite-query-compiler.js +40 -0
- package/dist/esm/driver/connection-provider.d.ts +8 -0
- package/dist/esm/driver/connection-provider.js +2 -0
- package/dist/esm/driver/database-connection.d.ts +35 -0
- package/dist/esm/driver/database-connection.js +2 -0
- package/dist/esm/driver/default-connection-provider.d.ts +12 -0
- package/dist/esm/driver/default-connection-provider.js +16 -0
- package/dist/esm/driver/driver.d.ts +61 -0
- package/dist/esm/driver/driver.js +19 -0
- package/dist/esm/driver/dummy-driver.d.ts +75 -0
- package/dist/esm/driver/dummy-driver.js +80 -0
- package/dist/esm/driver/runtime-driver.d.ts +47 -0
- package/dist/esm/driver/runtime-driver.js +162 -0
- package/dist/esm/driver/single-connection-provider.d.ts +11 -0
- package/dist/esm/driver/single-connection-provider.js +26 -0
- package/dist/esm/dynamic/dynamic-reference-builder.d.ts +18 -0
- package/dist/esm/dynamic/dynamic-reference-builder.js +32 -0
- package/dist/esm/dynamic/dynamic-table-builder.d.ts +16 -0
- package/dist/esm/dynamic/dynamic-table-builder.js +41 -0
- package/dist/esm/dynamic/dynamic.d.ts +124 -0
- package/dist/esm/dynamic/dynamic.js +129 -0
- package/dist/esm/errors/NoormError.d.ts +56 -0
- package/dist/esm/errors/NoormError.js +150 -0
- package/dist/esm/expression/expression-builder.d.ts +920 -0
- package/dist/esm/expression/expression-builder.js +125 -0
- package/dist/esm/expression/expression-wrapper.d.ts +631 -0
- package/dist/esm/expression/expression-wrapper.js +128 -0
- package/dist/esm/expression/expression.d.ts +198 -0
- package/dist/esm/expression/expression.js +12 -0
- package/dist/esm/helpers/sqlite.d.ts +189 -0
- package/dist/esm/helpers/sqlite.js +200 -0
- package/dist/esm/index.d.ts +211 -0
- package/dist/esm/index.js +203 -0
- package/dist/esm/kysely.d.ts +848 -0
- package/dist/esm/kysely.js +914 -0
- package/dist/esm/logging/logger.d.ts +96 -0
- package/dist/esm/logging/logger.js +176 -0
- package/dist/esm/noormme.d.ts +137 -0
- package/dist/esm/noormme.js +518 -0
- package/dist/esm/operation-node/add-column-node.d.ts +13 -0
- package/dist/esm/operation-node/add-column-node.js +16 -0
- package/dist/esm/operation-node/add-constraint-node.d.ts +13 -0
- package/dist/esm/operation-node/add-constraint-node.js +16 -0
- package/dist/esm/operation-node/add-index-node.d.ts +21 -0
- package/dist/esm/operation-node/add-index-node.js +29 -0
- package/dist/esm/operation-node/aggregate-function-node.d.ts +27 -0
- package/dist/esm/operation-node/aggregate-function-node.js +56 -0
- package/dist/esm/operation-node/alias-node.d.ts +13 -0
- package/dist/esm/operation-node/alias-node.js +17 -0
- package/dist/esm/operation-node/alter-column-node.d.ts +21 -0
- package/dist/esm/operation-node/alter-column-node.js +18 -0
- package/dist/esm/operation-node/alter-table-node.d.ts +36 -0
- package/dist/esm/operation-node/alter-table-node.js +30 -0
- package/dist/esm/operation-node/and-node.d.ts +13 -0
- package/dist/esm/operation-node/and-node.js +17 -0
- package/dist/esm/operation-node/binary-operation-node.d.ts +14 -0
- package/dist/esm/operation-node/binary-operation-node.js +18 -0
- package/dist/esm/operation-node/case-node.d.ts +19 -0
- package/dist/esm/operation-node/case-node.js +40 -0
- package/dist/esm/operation-node/cast-node.d.ts +13 -0
- package/dist/esm/operation-node/cast-node.js +17 -0
- package/dist/esm/operation-node/check-constraint-node.d.ts +14 -0
- package/dist/esm/operation-node/check-constraint-node.js +18 -0
- package/dist/esm/operation-node/collate-node.d.ts +13 -0
- package/dist/esm/operation-node/collate-node.js +17 -0
- package/dist/esm/operation-node/column-definition-node.d.ts +36 -0
- package/dist/esm/operation-node/column-definition-node.js +40 -0
- package/dist/esm/operation-node/column-node.d.ts +13 -0
- package/dist/esm/operation-node/column-node.js +17 -0
- package/dist/esm/operation-node/column-update-node.d.ts +13 -0
- package/dist/esm/operation-node/column-update-node.js +17 -0
- package/dist/esm/operation-node/common-table-expression-name-node.d.ts +15 -0
- package/dist/esm/operation-node/common-table-expression-name-node.js +21 -0
- package/dist/esm/operation-node/common-table-expression-node.d.ts +18 -0
- package/dist/esm/operation-node/common-table-expression-node.js +23 -0
- package/dist/esm/operation-node/constraint-node.d.ts +5 -0
- package/dist/esm/operation-node/constraint-node.js +2 -0
- package/dist/esm/operation-node/create-index-node.d.ts +27 -0
- package/dist/esm/operation-node/create-index-node.js +29 -0
- package/dist/esm/operation-node/create-schema-node.d.ts +16 -0
- package/dist/esm/operation-node/create-schema-node.js +24 -0
- package/dist/esm/operation-node/create-table-node.d.ts +32 -0
- package/dist/esm/operation-node/create-table-node.js +54 -0
- package/dist/esm/operation-node/create-type-node.d.ts +17 -0
- package/dist/esm/operation-node/create-type-node.js +24 -0
- package/dist/esm/operation-node/create-view-node.d.ts +24 -0
- package/dist/esm/operation-node/create-view-node.js +23 -0
- package/dist/esm/operation-node/data-type-node.d.ts +18 -0
- package/dist/esm/operation-node/data-type-node.js +83 -0
- package/dist/esm/operation-node/default-insert-value-node.d.ts +11 -0
- package/dist/esm/operation-node/default-insert-value-node.js +15 -0
- package/dist/esm/operation-node/default-value-node.d.ts +12 -0
- package/dist/esm/operation-node/default-value-node.js +16 -0
- package/dist/esm/operation-node/delete-query-node.d.ts +46 -0
- package/dist/esm/operation-node/delete-query-node.js +50 -0
- package/dist/esm/operation-node/drop-column-node.d.ts +13 -0
- package/dist/esm/operation-node/drop-column-node.js +17 -0
- package/dist/esm/operation-node/drop-constraint-node.d.ts +17 -0
- package/dist/esm/operation-node/drop-constraint-node.js +23 -0
- package/dist/esm/operation-node/drop-index-node.d.ts +19 -0
- package/dist/esm/operation-node/drop-index-node.js +24 -0
- package/dist/esm/operation-node/drop-schema-node.d.ts +17 -0
- package/dist/esm/operation-node/drop-schema-node.js +24 -0
- package/dist/esm/operation-node/drop-table-node.d.ts +17 -0
- package/dist/esm/operation-node/drop-table-node.js +23 -0
- package/dist/esm/operation-node/drop-type-node.d.ts +16 -0
- package/dist/esm/operation-node/drop-type-node.js +22 -0
- package/dist/esm/operation-node/drop-view-node.d.ts +18 -0
- package/dist/esm/operation-node/drop-view-node.js +23 -0
- package/dist/esm/operation-node/explain-node.d.ts +14 -0
- package/dist/esm/operation-node/explain-node.js +17 -0
- package/dist/esm/operation-node/fetch-node.d.ts +15 -0
- package/dist/esm/operation-node/fetch-node.js +17 -0
- package/dist/esm/operation-node/foreign-key-constraint-node.d.ts +33 -0
- package/dist/esm/operation-node/foreign-key-constraint-node.js +26 -0
- package/dist/esm/operation-node/from-node.d.ts +13 -0
- package/dist/esm/operation-node/from-node.js +22 -0
- package/dist/esm/operation-node/function-node.d.ts +13 -0
- package/dist/esm/operation-node/function-node.js +17 -0
- package/dist/esm/operation-node/generated-node.d.ts +19 -0
- package/dist/esm/operation-node/generated-node.js +29 -0
- package/dist/esm/operation-node/group-by-item-node.d.ts +12 -0
- package/dist/esm/operation-node/group-by-item-node.js +16 -0
- package/dist/esm/operation-node/group-by-node.d.ts +14 -0
- package/dist/esm/operation-node/group-by-node.js +22 -0
- package/dist/esm/operation-node/having-node.d.ts +13 -0
- package/dist/esm/operation-node/having-node.js +26 -0
- package/dist/esm/operation-node/identifier-node.d.ts +12 -0
- package/dist/esm/operation-node/identifier-node.js +16 -0
- package/dist/esm/operation-node/insert-query-node.d.ts +40 -0
- package/dist/esm/operation-node/insert-query-node.js +29 -0
- package/dist/esm/operation-node/join-node.d.ts +18 -0
- package/dist/esm/operation-node/join-node.js +35 -0
- package/dist/esm/operation-node/json-operator-chain-node.d.ts +16 -0
- package/dist/esm/operation-node/json-operator-chain-node.js +23 -0
- package/dist/esm/operation-node/json-path-leg-node.d.ts +14 -0
- package/dist/esm/operation-node/json-path-leg-node.js +17 -0
- package/dist/esm/operation-node/json-path-node.d.ts +16 -0
- package/dist/esm/operation-node/json-path-node.js +23 -0
- package/dist/esm/operation-node/json-reference-node.d.ts +17 -0
- package/dist/esm/operation-node/json-reference-node.js +23 -0
- package/dist/esm/operation-node/limit-node.d.ts +12 -0
- package/dist/esm/operation-node/limit-node.js +16 -0
- package/dist/esm/operation-node/list-node.d.ts +12 -0
- package/dist/esm/operation-node/list-node.js +16 -0
- package/dist/esm/operation-node/matched-node.d.ts +13 -0
- package/dist/esm/operation-node/matched-node.js +17 -0
- package/dist/esm/operation-node/merge-query-node.d.ts +30 -0
- package/dist/esm/operation-node/merge-query-node.js +43 -0
- package/dist/esm/operation-node/modify-column-node.d.ts +13 -0
- package/dist/esm/operation-node/modify-column-node.js +16 -0
- package/dist/esm/operation-node/offset-node.d.ts +12 -0
- package/dist/esm/operation-node/offset-node.js +16 -0
- package/dist/esm/operation-node/on-conflict-node.d.ts +30 -0
- package/dist/esm/operation-node/on-conflict-node.js +66 -0
- package/dist/esm/operation-node/on-duplicate-key-node.d.ts +14 -0
- package/dist/esm/operation-node/on-duplicate-key-node.js +16 -0
- package/dist/esm/operation-node/on-node.d.ts +13 -0
- package/dist/esm/operation-node/on-node.js +26 -0
- package/dist/esm/operation-node/operation-node-source.d.ts +5 -0
- package/dist/esm/operation-node/operation-node-source.js +5 -0
- package/dist/esm/operation-node/operation-node-transformer.d.ts +238 -0
- package/dist/esm/operation-node/operation-node-transformer.js +926 -0
- package/dist/esm/operation-node/operation-node-visitor.d.ts +201 -0
- package/dist/esm/operation-node/operation-node-visitor.js +112 -0
- package/dist/esm/operation-node/operation-node.d.ts +4 -0
- package/dist/esm/operation-node/operation-node.js +2 -0
- package/dist/esm/operation-node/operator-node.d.ts +32 -0
- package/dist/esm/operation-node/operator-node.js +100 -0
- package/dist/esm/operation-node/or-action-node.d.ts +12 -0
- package/dist/esm/operation-node/or-action-node.js +16 -0
- package/dist/esm/operation-node/or-node.d.ts +13 -0
- package/dist/esm/operation-node/or-node.js +17 -0
- package/dist/esm/operation-node/order-by-item-node.d.ts +18 -0
- package/dist/esm/operation-node/order-by-item-node.js +23 -0
- package/dist/esm/operation-node/order-by-node.d.ts +14 -0
- package/dist/esm/operation-node/order-by-node.js +22 -0
- package/dist/esm/operation-node/output-node.d.ts +13 -0
- package/dist/esm/operation-node/output-node.js +24 -0
- package/dist/esm/operation-node/over-node.d.ts +19 -0
- package/dist/esm/operation-node/over-node.js +33 -0
- package/dist/esm/operation-node/parens-node.d.ts +12 -0
- package/dist/esm/operation-node/parens-node.js +16 -0
- package/dist/esm/operation-node/partition-by-item-node.d.ts +13 -0
- package/dist/esm/operation-node/partition-by-item-node.js +16 -0
- package/dist/esm/operation-node/partition-by-node.d.ts +14 -0
- package/dist/esm/operation-node/partition-by-node.js +22 -0
- package/dist/esm/operation-node/primary-key-constraint-node.d.ts +29 -0
- package/dist/esm/operation-node/primary-key-constraint-node.js +28 -0
- package/dist/esm/operation-node/primitive-value-list-node.d.ts +17 -0
- package/dist/esm/operation-node/primitive-value-list-node.js +16 -0
- package/dist/esm/operation-node/query-node.d.ts +60 -0
- package/dist/esm/operation-node/query-node.js +100 -0
- package/dist/esm/operation-node/raw-node.d.ts +16 -0
- package/dist/esm/operation-node/raw-node.js +26 -0
- package/dist/esm/operation-node/reference-node.d.ts +17 -0
- package/dist/esm/operation-node/reference-node.js +25 -0
- package/dist/esm/operation-node/references-node.d.ts +22 -0
- package/dist/esm/operation-node/references-node.js +36 -0
- package/dist/esm/operation-node/refresh-materialized-view-node.d.ts +17 -0
- package/dist/esm/operation-node/refresh-materialized-view-node.js +23 -0
- package/dist/esm/operation-node/rename-column-node.d.ts +14 -0
- package/dist/esm/operation-node/rename-column-node.js +18 -0
- package/dist/esm/operation-node/rename-constraint-node.d.ts +14 -0
- package/dist/esm/operation-node/rename-constraint-node.js +18 -0
- package/dist/esm/operation-node/returning-node.d.ts +14 -0
- package/dist/esm/operation-node/returning-node.js +24 -0
- package/dist/esm/operation-node/schemable-identifier-node.d.ts +15 -0
- package/dist/esm/operation-node/schemable-identifier-node.js +24 -0
- package/dist/esm/operation-node/select-all-node.d.ts +11 -0
- package/dist/esm/operation-node/select-all-node.js +15 -0
- package/dist/esm/operation-node/select-modifier-node.d.ts +16 -0
- package/dist/esm/operation-node/select-modifier-node.js +23 -0
- package/dist/esm/operation-node/select-query-node.d.ts +67 -0
- package/dist/esm/operation-node/select-query-node.js +127 -0
- package/dist/esm/operation-node/selection-node.d.ts +20 -0
- package/dist/esm/operation-node/selection-node.js +30 -0
- package/dist/esm/operation-node/set-operation-node.d.ts +15 -0
- package/dist/esm/operation-node/set-operation-node.js +18 -0
- package/dist/esm/operation-node/simple-reference-expression-node.d.ts +3 -0
- package/dist/esm/operation-node/simple-reference-expression-node.js +2 -0
- package/dist/esm/operation-node/table-node.d.ts +14 -0
- package/dist/esm/operation-node/table-node.js +23 -0
- package/dist/esm/operation-node/top-node.d.ts +14 -0
- package/dist/esm/operation-node/top-node.js +17 -0
- package/dist/esm/operation-node/tuple-node.d.ts +12 -0
- package/dist/esm/operation-node/tuple-node.js +16 -0
- package/dist/esm/operation-node/unary-operation-node.d.ts +13 -0
- package/dist/esm/operation-node/unary-operation-node.js +17 -0
- package/dist/esm/operation-node/unique-constraint-node.d.ts +20 -0
- package/dist/esm/operation-node/unique-constraint-node.js +26 -0
- package/dist/esm/operation-node/update-query-node.d.ts +39 -0
- package/dist/esm/operation-node/update-query-node.js +48 -0
- package/dist/esm/operation-node/using-node.d.ts +13 -0
- package/dist/esm/operation-node/using-node.js +22 -0
- package/dist/esm/operation-node/value-list-node.d.ts +12 -0
- package/dist/esm/operation-node/value-list-node.js +16 -0
- package/dist/esm/operation-node/value-node.d.ts +14 -0
- package/dist/esm/operation-node/value-node.js +23 -0
- package/dist/esm/operation-node/values-node.d.ts +15 -0
- package/dist/esm/operation-node/values-node.js +16 -0
- package/dist/esm/operation-node/when-node.d.ts +14 -0
- package/dist/esm/operation-node/when-node.js +22 -0
- package/dist/esm/operation-node/where-node.d.ts +13 -0
- package/dist/esm/operation-node/where-node.js +26 -0
- package/dist/esm/operation-node/with-node.d.ts +16 -0
- package/dist/esm/operation-node/with-node.js +23 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/parser/binary-operation-parser.d.ts +21 -0
- package/dist/esm/parser/binary-operation-parser.js +68 -0
- package/dist/esm/parser/coalesce-parser.d.ts +12 -0
- package/dist/esm/parser/coalesce-parser.js +2 -0
- package/dist/esm/parser/collate-parser.d.ts +1 -0
- package/dist/esm/parser/collate-parser.js +2 -0
- package/dist/esm/parser/data-type-parser.d.ts +5 -0
- package/dist/esm/parser/data-type-parser.js +12 -0
- package/dist/esm/parser/default-value-parser.d.ts +4 -0
- package/dist/esm/parser/default-value-parser.js +8 -0
- package/dist/esm/parser/delete-from-parser.d.ts +9 -0
- package/dist/esm/parser/delete-from-parser.js +2 -0
- package/dist/esm/parser/expression-parser.d.ts +20 -0
- package/dist/esm/parser/expression-parser.js +26 -0
- package/dist/esm/parser/fetch-parser.d.ts +2 -0
- package/dist/esm/parser/fetch-parser.js +15 -0
- package/dist/esm/parser/group-by-parser.d.ts +6 -0
- package/dist/esm/parser/group-by-parser.js +9 -0
- package/dist/esm/parser/identifier-parser.d.ts +2 -0
- package/dist/esm/parser/identifier-parser.js +20 -0
- package/dist/esm/parser/insert-values-parser.d.ts +14 -0
- package/dist/esm/parser/insert-values-parser.js +62 -0
- package/dist/esm/parser/join-parser.d.ts +10 -0
- package/dist/esm/parser/join-parser.js +28 -0
- package/dist/esm/parser/merge-into-parser.d.ts +7 -0
- package/dist/esm/parser/merge-into-parser.js +2 -0
- package/dist/esm/parser/merge-parser.d.ts +9 -0
- package/dist/esm/parser/merge-parser.js +28 -0
- package/dist/esm/parser/on-commit-action-parse.d.ts +2 -0
- package/dist/esm/parser/on-commit-action-parse.js +8 -0
- package/dist/esm/parser/on-modify-action-parser.d.ts +2 -0
- package/dist/esm/parser/on-modify-action-parser.js +8 -0
- package/dist/esm/parser/order-by-parser.d.ts +25 -0
- package/dist/esm/parser/order-by-parser.js +67 -0
- package/dist/esm/parser/parse-utils.d.ts +10 -0
- package/dist/esm/parser/parse-utils.js +33 -0
- package/dist/esm/parser/partition-by-parser.d.ts +6 -0
- package/dist/esm/parser/partition-by-parser.js +6 -0
- package/dist/esm/parser/reference-parser.d.ts +31 -0
- package/dist/esm/parser/reference-parser.js +95 -0
- package/dist/esm/parser/returning-parser.d.ts +8 -0
- package/dist/esm/parser/returning-parser.js +2 -0
- package/dist/esm/parser/savepoint-parser.d.ts +4 -0
- package/dist/esm/parser/savepoint-parser.js +9 -0
- package/dist/esm/parser/select-from-parser.d.ts +6 -0
- package/dist/esm/parser/select-from-parser.js +2 -0
- package/dist/esm/parser/select-parser.d.ts +36 -0
- package/dist/esm/parser/select-parser.js +47 -0
- package/dist/esm/parser/set-operation-parser.d.ts +5 -0
- package/dist/esm/parser/set-operation-parser.js +14 -0
- package/dist/esm/parser/table-parser.d.ts +24 -0
- package/dist/esm/parser/table-parser.js +49 -0
- package/dist/esm/parser/top-parser.d.ts +2 -0
- package/dist/esm/parser/top-parser.js +17 -0
- package/dist/esm/parser/tuple-parser.d.ts +47 -0
- package/dist/esm/parser/tuple-parser.js +2 -0
- package/dist/esm/parser/unary-operation-parser.d.ts +8 -0
- package/dist/esm/parser/unary-operation-parser.js +13 -0
- package/dist/esm/parser/update-parser.d.ts +9 -0
- package/dist/esm/parser/update-parser.js +2 -0
- package/dist/esm/parser/update-set-parser.d.ts +16 -0
- package/dist/esm/parser/update-set-parser.js +23 -0
- package/dist/esm/parser/value-parser.d.ts +13 -0
- package/dist/esm/parser/value-parser.js +33 -0
- package/dist/esm/parser/with-parser.d.ts +45 -0
- package/dist/esm/parser/with-parser.js +31 -0
- package/dist/esm/performance/query-analyzer.d.ts +89 -0
- package/dist/esm/performance/query-analyzer.js +260 -0
- package/dist/esm/plugin/camel-case/camel-case-plugin.d.ts +170 -0
- package/dist/esm/plugin/camel-case/camel-case-plugin.js +119 -0
- package/dist/esm/plugin/camel-case/camel-case-transformer.d.ts +9 -0
- package/dist/esm/plugin/camel-case/camel-case-transformer.js +16 -0
- package/dist/esm/plugin/camel-case/camel-case.d.ts +15 -0
- package/dist/esm/plugin/camel-case/camel-case.js +108 -0
- package/dist/esm/plugin/deduplicate-joins/deduplicate-joins-plugin.d.ts +70 -0
- package/dist/esm/plugin/deduplicate-joins/deduplicate-joins-plugin.js +16 -0
- package/dist/esm/plugin/deduplicate-joins/deduplicate-joins-transformer.d.ts +11 -0
- package/dist/esm/plugin/deduplicate-joins/deduplicate-joins-transformer.js +39 -0
- package/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists-plugin.d.ts +211 -0
- package/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists-plugin.js +159 -0
- package/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists-transformer.d.ts +8 -0
- package/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists-transformer.js +26 -0
- package/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists.d.ts +44 -0
- package/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists.js +63 -0
- package/dist/esm/plugin/immediate-value/immediate-value-plugin.d.ts +73 -0
- package/dist/esm/plugin/immediate-value/immediate-value-plugin.js +19 -0
- package/dist/esm/plugin/immediate-value/immediate-value-transformer.d.ts +15 -0
- package/dist/esm/plugin/immediate-value/immediate-value-transformer.js +20 -0
- package/dist/esm/plugin/kysely-plugin.d.ts +72 -0
- package/dist/esm/plugin/kysely-plugin.js +2 -0
- package/dist/esm/plugin/noop-plugin.d.ts +64 -0
- package/dist/esm/plugin/noop-plugin.js +9 -0
- package/dist/esm/plugin/parse-json-results/parse-json-results-plugin.d.ts +126 -0
- package/dist/esm/plugin/parse-json-results/parse-json-results-plugin.js +104 -0
- package/dist/esm/plugin/with-schema/with-schema-plugin.d.ts +66 -0
- package/dist/esm/plugin/with-schema/with-schema-plugin.js +14 -0
- package/dist/esm/plugin/with-schema/with-schema-transformer.d.ts +16 -0
- package/dist/esm/plugin/with-schema/with-schema-transformer.js +178 -0
- package/dist/esm/query-builder/aggregate-function-builder.d.ts +379 -0
- package/dist/esm/query-builder/aggregate-function-builder.js +238 -0
- package/dist/esm/query-builder/case-builder.d.ts +112 -0
- package/dist/esm/query-builder/case-builder.js +73 -0
- package/dist/esm/query-builder/cte-builder.d.ts +20 -0
- package/dist/esm/query-builder/cte-builder.js +34 -0
- package/dist/esm/query-builder/delete-query-builder.d.ts +1348 -0
- package/dist/esm/query-builder/delete-query-builder.js +501 -0
- package/dist/esm/query-builder/delete-result.d.ts +4 -0
- package/dist/esm/query-builder/delete-result.js +7 -0
- package/dist/esm/query-builder/function-module.d.ts +592 -0
- package/dist/esm/query-builder/function-module.js +60 -0
- package/dist/esm/query-builder/having-interface.d.ts +15 -0
- package/dist/esm/query-builder/having-interface.js +2 -0
- package/dist/esm/query-builder/insert-query-builder.d.ts +1235 -0
- package/dist/esm/query-builder/insert-query-builder.js +1157 -0
- package/dist/esm/query-builder/insert-result.d.ts +46 -0
- package/dist/esm/query-builder/insert-result.js +50 -0
- package/dist/esm/query-builder/join-builder.d.ts +38 -0
- package/dist/esm/query-builder/join-builder.js +48 -0
- package/dist/esm/query-builder/json-path-builder.d.ts +294 -0
- package/dist/esm/query-builder/json-path-builder.js +195 -0
- package/dist/esm/query-builder/merge-query-builder.d.ts +1001 -0
- package/dist/esm/query-builder/merge-query-builder.js +624 -0
- package/dist/esm/query-builder/merge-result.d.ts +4 -0
- package/dist/esm/query-builder/merge-result.js +7 -0
- package/dist/esm/query-builder/no-result-error.d.ts +10 -0
- package/dist/esm/query-builder/no-result-error.js +14 -0
- package/dist/esm/query-builder/on-conflict-builder.d.ts +872 -0
- package/dist/esm/query-builder/on-conflict-builder.js +254 -0
- package/dist/esm/query-builder/order-by-interface.d.ts +158 -0
- package/dist/esm/query-builder/order-by-interface.js +2 -0
- package/dist/esm/query-builder/order-by-item-builder.d.ts +43 -0
- package/dist/esm/query-builder/order-by-item-builder.js +72 -0
- package/dist/esm/query-builder/output-interface.d.ts +138 -0
- package/dist/esm/query-builder/output-interface.js +2 -0
- package/dist/esm/query-builder/over-builder.d.ts +101 -0
- package/dist/esm/query-builder/over-builder.js +37 -0
- package/dist/esm/query-builder/returning-interface.d.ts +91 -0
- package/dist/esm/query-builder/returning-interface.js +2 -0
- package/dist/esm/query-builder/select-query-builder-expression.d.ts +28 -0
- package/dist/esm/query-builder/select-query-builder-expression.js +2 -0
- package/dist/esm/query-builder/select-query-builder.d.ts +2391 -0
- package/dist/esm/query-builder/select-query-builder.js +374 -0
- package/dist/esm/query-builder/update-query-builder.d.ts +1392 -0
- package/dist/esm/query-builder/update-query-builder.js +510 -0
- package/dist/esm/query-builder/update-result.d.ts +14 -0
- package/dist/esm/query-builder/update-result.js +18 -0
- package/dist/esm/query-builder/where-interface.d.ts +382 -0
- package/dist/esm/query-builder/where-interface.js +2 -0
- package/dist/esm/query-compiler/compiled-query.d.ts +11 -0
- package/dist/esm/query-compiler/compiled-query.js +14 -0
- package/dist/esm/query-compiler/default-query-compiler.d.ts +235 -0
- package/dist/esm/query-compiler/default-query-compiler.js +1387 -0
- package/dist/esm/query-compiler/query-compiler.d.ts +24 -0
- package/dist/esm/query-compiler/query-compiler.js +2 -0
- package/dist/esm/query-creator.d.ts +592 -0
- package/dist/esm/query-creator.js +619 -0
- package/dist/esm/query-executor/default-query-executor.d.ts +50 -0
- package/dist/esm/query-executor/default-query-executor.js +37 -0
- package/dist/esm/query-executor/noop-query-executor.d.ts +50 -0
- package/dist/esm/query-executor/noop-query-executor.js +34 -0
- package/dist/esm/query-executor/query-executor-base.d.ts +68 -0
- package/dist/esm/query-executor/query-executor-base.js +59 -0
- package/dist/esm/query-executor/query-executor-provider.d.ts +8 -0
- package/dist/esm/query-executor/query-executor-provider.js +2 -0
- package/dist/esm/query-executor/query-executor.d.ts +74 -0
- package/dist/esm/query-executor/query-executor.js +2 -0
- package/dist/esm/raw-builder/raw-builder.d.ts +218 -0
- package/dist/esm/raw-builder/raw-builder.js +84 -0
- package/dist/esm/raw-builder/sql.d.ts +366 -0
- package/dist/esm/raw-builder/sql.js +82 -0
- package/dist/esm/relationships/relationship-engine.d.ts +59 -0
- package/dist/esm/relationships/relationship-engine.js +203 -0
- package/dist/esm/repository/repository-factory.d.ts +54 -0
- package/dist/esm/repository/repository-factory.js +446 -0
- package/dist/esm/schema/builders/alter-column-builder.d.ts +53 -0
- package/dist/esm/schema/builders/alter-column-builder.js +70 -0
- package/dist/esm/schema/builders/alter-table-add-foreign-key-constraint-builder.d.ts +32 -0
- package/dist/esm/schema/builders/alter-table-add-foreign-key-constraint-builder.js +64 -0
- package/dist/esm/schema/builders/alter-table-add-index-builder.d.ts +138 -0
- package/dist/esm/schema/builders/alter-table-add-index-builder.js +162 -0
- package/dist/esm/schema/builders/alter-table-builder.d.ts +148 -0
- package/dist/esm/schema/builders/alter-table-builder.js +263 -0
- package/dist/esm/schema/builders/alter-table-drop-constraint-builder.d.ts +26 -0
- package/dist/esm/schema/builders/alter-table-drop-constraint-builder.js +56 -0
- package/dist/esm/schema/builders/alter-table-executor.d.ts +18 -0
- package/dist/esm/schema/builders/alter-table-executor.js +17 -0
- package/dist/esm/schema/builders/check-constraint-builder.d.ts +13 -0
- package/dist/esm/schema/builders/check-constraint-builder.js +17 -0
- package/dist/esm/schema/builders/column-definition-builder.d.ts +514 -0
- package/dist/esm/schema/builders/column-definition-builder.js +597 -0
- package/dist/esm/schema/builders/create-index-builder.d.ts +173 -0
- package/dist/esm/schema/builders/create-index-builder.js +199 -0
- package/dist/esm/schema/builders/create-schema-builder.d.ts +24 -0
- package/dist/esm/schema/builders/create-schema-builder.js +31 -0
- package/dist/esm/schema/builders/create-table-builder.d.ts +331 -0
- package/dist/esm/schema/builders/create-table-builder.js +408 -0
- package/dist/esm/schema/builders/create-type-builder.d.ts +33 -0
- package/dist/esm/schema/builders/create-type-builder.js +40 -0
- package/dist/esm/schema/builders/create-view-builder.d.ts +48 -0
- package/dist/esm/schema/builders/create-view-builder.js +95 -0
- package/dist/esm/schema/builders/drop-index-builder.d.ts +30 -0
- package/dist/esm/schema/builders/drop-index-builder.js +54 -0
- package/dist/esm/schema/builders/drop-schema-builder.d.ts +25 -0
- package/dist/esm/schema/builders/drop-schema-builder.js +41 -0
- package/dist/esm/schema/builders/drop-table-builder.d.ts +25 -0
- package/dist/esm/schema/builders/drop-table-builder.js +41 -0
- package/dist/esm/schema/builders/drop-type-builder.d.ts +24 -0
- package/dist/esm/schema/builders/drop-type-builder.js +33 -0
- package/dist/esm/schema/builders/drop-view-builder.d.ts +26 -0
- package/dist/esm/schema/builders/drop-view-builder.js +49 -0
- package/dist/esm/schema/builders/foreign-key-constraint-builder.d.ts +28 -0
- package/dist/esm/schema/builders/foreign-key-constraint-builder.js +45 -0
- package/dist/esm/schema/builders/index.d.ts +22 -0
- package/dist/esm/schema/builders/index.js +24 -0
- package/dist/esm/schema/builders/primary-key-constraint-builder.d.ts +17 -0
- package/dist/esm/schema/builders/primary-key-constraint-builder.js +34 -0
- package/dist/esm/schema/builders/refresh-materialized-view-builder.d.ts +47 -0
- package/dist/esm/schema/builders/refresh-materialized-view-builder.js +72 -0
- package/dist/esm/schema/builders/unique-constraint-builder.d.ts +23 -0
- package/dist/esm/schema/builders/unique-constraint-builder.js +42 -0
- package/dist/esm/schema/core/coordinators/schema-discovery.coordinator.d.ts +35 -0
- package/dist/esm/schema/core/coordinators/schema-discovery.coordinator.js +60 -0
- package/dist/esm/schema/core/discovery/relationship-discovery.d.ts +36 -0
- package/dist/esm/schema/core/discovery/relationship-discovery.js +159 -0
- package/dist/esm/schema/core/discovery/table-metadata-discovery.d.ts +29 -0
- package/dist/esm/schema/core/discovery/table-metadata-discovery.js +123 -0
- package/dist/esm/schema/core/discovery/view-discovery.d.ts +36 -0
- package/dist/esm/schema/core/discovery/view-discovery.js +134 -0
- package/dist/esm/schema/core/factories/discovery-factory.d.ts +66 -0
- package/dist/esm/schema/core/factories/discovery-factory.js +119 -0
- package/dist/esm/schema/core/types/schema-discovery-types.d.ts +43 -0
- package/dist/esm/schema/core/types/schema-discovery-types.js +3 -0
- package/dist/esm/schema/core/utils/name-generator.d.ts +21 -0
- package/dist/esm/schema/core/utils/name-generator.js +52 -0
- package/dist/esm/schema/core/utils/type-mapper.d.ts +25 -0
- package/dist/esm/schema/core/utils/type-mapper.js +58 -0
- package/dist/esm/schema/dialects/sqlite/discovery/sqlite-constraint-discovery.d.ts +97 -0
- package/dist/esm/schema/dialects/sqlite/discovery/sqlite-constraint-discovery.js +530 -0
- package/dist/esm/schema/dialects/sqlite/discovery/sqlite-index-discovery.d.ts +32 -0
- package/dist/esm/schema/dialects/sqlite/discovery/sqlite-index-discovery.js +130 -0
- package/dist/esm/schema/dialects/sqlite/introspection/sqlite-schema-introspector.d.ts +31 -0
- package/dist/esm/schema/dialects/sqlite/introspection/sqlite-schema-introspector.js +189 -0
- package/dist/esm/schema/dialects/sqlite/sqlite-discovery.coordinator.d.ts +51 -0
- package/dist/esm/schema/dialects/sqlite/sqlite-discovery.coordinator.js +177 -0
- package/dist/esm/schema/index.d.ts +14 -0
- package/dist/esm/schema/index.js +21 -0
- package/dist/esm/schema/schema-discovery.d.ts +23 -0
- package/dist/esm/schema/schema-discovery.js +30 -0
- package/dist/esm/schema/schema.d.ts +230 -0
- package/dist/esm/schema/schema.js +325 -0
- package/dist/esm/schema/test/basic-schema-test.d.ts +8 -0
- package/dist/esm/schema/test/basic-schema-test.js +183 -0
- package/dist/esm/schema/test/dialect-capabilities.test.d.ts +1 -0
- package/dist/esm/schema/test/dialect-capabilities.test.js +152 -0
- package/dist/esm/schema/test/discovery-factory.test.d.ts +1 -0
- package/dist/esm/schema/test/discovery-factory.test.js +150 -0
- package/dist/esm/schema/test/error-handling.test.d.ts +1 -0
- package/dist/esm/schema/test/error-handling.test.js +148 -0
- package/dist/esm/schema/test/integration.test.d.ts +1 -0
- package/dist/esm/schema/test/integration.test.js +134 -0
- package/dist/esm/schema/test/schema-discovery-coordinator.test.d.ts +1 -0
- package/dist/esm/schema/test/schema-discovery-coordinator.test.js +138 -0
- package/dist/esm/schema/test/simple-schema-test.d.ts +5 -0
- package/dist/esm/schema/test/simple-schema-test.js +78 -0
- package/dist/esm/schema/test/sqlite-discovery-coordinator.test.d.ts +1 -0
- package/dist/esm/schema/test/sqlite-discovery-coordinator.test.js +376 -0
- package/dist/esm/schema/test/test-runner.d.ts +66 -0
- package/dist/esm/schema/test/test-runner.js +89 -0
- package/dist/esm/sqlite-migration/index.d.ts +6 -0
- package/dist/esm/sqlite-migration/index.js +14 -0
- package/dist/esm/sqlite-migration/sqlite-migration-manager.d.ts +104 -0
- package/dist/esm/sqlite-migration/sqlite-migration-manager.js +332 -0
- package/dist/esm/sqlite-migration/sqlite-migration-provider.d.ts +77 -0
- package/dist/esm/sqlite-migration/sqlite-migration-provider.js +339 -0
- package/dist/esm/testing/test-utils.d.ts +110 -0
- package/dist/esm/testing/test-utils.js +320 -0
- package/dist/esm/types/index.d.ts +155 -0
- package/dist/esm/types/index.js +5 -0
- package/dist/esm/types/type-generator.d.ts +52 -0
- package/dist/esm/types/type-generator.js +258 -0
- package/dist/esm/util/assert.d.ts +2 -0
- package/dist/esm/util/assert.js +11 -0
- package/dist/esm/util/column-type.d.ts +175 -0
- package/dist/esm/util/column-type.js +2 -0
- package/dist/esm/util/compilable.d.ts +5 -0
- package/dist/esm/util/compilable.js +5 -0
- package/dist/esm/util/deferred.d.ts +7 -0
- package/dist/esm/util/deferred.js +25 -0
- package/dist/esm/util/explainable.d.ts +40 -0
- package/dist/esm/util/explainable.js +2 -0
- package/dist/esm/util/infer-result.d.ts +48 -0
- package/dist/esm/util/infer-result.js +2 -0
- package/dist/esm/util/json-object-args.d.ts +3 -0
- package/dist/esm/util/json-object-args.js +32 -0
- package/dist/esm/util/log-once.d.ts +5 -0
- package/dist/esm/util/log-once.js +13 -0
- package/dist/esm/util/log.d.ts +26 -0
- package/dist/esm/util/log.js +55 -0
- package/dist/esm/util/object-utils.d.ts +23 -0
- package/dist/esm/util/object-utils.js +141 -0
- package/dist/esm/util/performance-now.d.ts +1 -0
- package/dist/esm/util/performance-now.js +10 -0
- package/dist/esm/util/provide-controlled-connection.d.ts +7 -0
- package/dist/esm/util/provide-controlled-connection.js +22 -0
- package/dist/esm/util/query-id.d.ts +4 -0
- package/dist/esm/util/query-id.js +14 -0
- package/dist/esm/util/random-string.d.ts +1 -0
- package/dist/esm/util/random-string.js +75 -0
- package/dist/esm/util/require-all-props.d.ts +45 -0
- package/dist/esm/util/require-all-props.js +39 -0
- package/dist/esm/util/stack-trace-utils.d.ts +1 -0
- package/dist/esm/util/stack-trace-utils.js +14 -0
- package/dist/esm/util/streamable.d.ts +29 -0
- package/dist/esm/util/streamable.js +2 -0
- package/dist/esm/util/type-error.d.ts +3 -0
- package/dist/esm/util/type-error.js +2 -0
- package/dist/esm/util/type-utils.d.ts +189 -0
- package/dist/esm/util/type-utils.js +2 -0
- package/dist/esm/utils/errorHelpers.d.ts +26 -0
- package/dist/esm/utils/errorHelpers.js +180 -0
- package/dist/esm/watch/schema-watcher.d.ts +68 -0
- package/dist/esm/watch/schema-watcher.js +183 -0
- package/outdated-typescript.d.ts +5 -0
- package/package.json +152 -0
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
/// <reference types="./sqlite-driver.d.ts" />
|
|
2
|
+
import { SelectQueryNode } from '../../operation-node/select-query-node.js';
|
|
3
|
+
import { parseSavepointCommand } from '../../parser/savepoint-parser.js';
|
|
4
|
+
import { CompiledQuery } from '../../query-compiler/compiled-query.js';
|
|
5
|
+
import { freeze, isFunction } from '../../util/object-utils.js';
|
|
6
|
+
import { createQueryId } from '../../util/query-id.js';
|
|
7
|
+
export class SqliteDriver {
|
|
8
|
+
#config;
|
|
9
|
+
#connectionMutex = new ConnectionMutex();
|
|
10
|
+
#db;
|
|
11
|
+
#connection;
|
|
12
|
+
constructor(config) {
|
|
13
|
+
this.#config = freeze({ ...config });
|
|
14
|
+
}
|
|
15
|
+
async init() {
|
|
16
|
+
this.#db = isFunction(this.#config.database)
|
|
17
|
+
? await this.#config.database()
|
|
18
|
+
: this.#config.database;
|
|
19
|
+
this.#connection = new SqliteConnection(this.#db);
|
|
20
|
+
if (this.#config.onCreateConnection) {
|
|
21
|
+
await this.#config.onCreateConnection(this.#connection);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
async acquireConnection() {
|
|
25
|
+
if (!this.#connection) {
|
|
26
|
+
throw new Error('driver has already been destroyed');
|
|
27
|
+
}
|
|
28
|
+
// SQLite only has one single connection. We use a mutex here to wait
|
|
29
|
+
// until the single connection has been released.
|
|
30
|
+
await this.#connectionMutex.lock();
|
|
31
|
+
return this.#connection;
|
|
32
|
+
}
|
|
33
|
+
async beginTransaction(connection) {
|
|
34
|
+
await connection.executeQuery(CompiledQuery.raw('begin'));
|
|
35
|
+
}
|
|
36
|
+
async commitTransaction(connection) {
|
|
37
|
+
await connection.executeQuery(CompiledQuery.raw('commit'));
|
|
38
|
+
}
|
|
39
|
+
async rollbackTransaction(connection) {
|
|
40
|
+
await connection.executeQuery(CompiledQuery.raw('rollback'));
|
|
41
|
+
}
|
|
42
|
+
async savepoint(connection, savepointName, compileQuery) {
|
|
43
|
+
await connection.executeQuery(compileQuery(parseSavepointCommand('savepoint', savepointName), createQueryId()));
|
|
44
|
+
}
|
|
45
|
+
async rollbackToSavepoint(connection, savepointName, compileQuery) {
|
|
46
|
+
await connection.executeQuery(compileQuery(parseSavepointCommand('rollback to', savepointName), createQueryId()));
|
|
47
|
+
}
|
|
48
|
+
async releaseSavepoint(connection, savepointName, compileQuery) {
|
|
49
|
+
await connection.executeQuery(compileQuery(parseSavepointCommand('release', savepointName), createQueryId()));
|
|
50
|
+
}
|
|
51
|
+
async releaseConnection() {
|
|
52
|
+
this.#connectionMutex.unlock();
|
|
53
|
+
}
|
|
54
|
+
async destroy() {
|
|
55
|
+
if (this.#db) {
|
|
56
|
+
this.#db.close();
|
|
57
|
+
this.#db = undefined;
|
|
58
|
+
this.#connection = undefined;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
class SqliteConnection {
|
|
63
|
+
#db;
|
|
64
|
+
constructor(db) {
|
|
65
|
+
this.#db = db;
|
|
66
|
+
}
|
|
67
|
+
executeQuery(compiledQuery) {
|
|
68
|
+
const { sql, parameters } = compiledQuery;
|
|
69
|
+
// Convert parameters to SQLite-compatible types
|
|
70
|
+
const sqliteParameters = parameters.map(param => {
|
|
71
|
+
if (param === undefined) {
|
|
72
|
+
return null;
|
|
73
|
+
}
|
|
74
|
+
if (typeof param === 'boolean') {
|
|
75
|
+
return param ? 1 : 0;
|
|
76
|
+
}
|
|
77
|
+
if (param instanceof Date) {
|
|
78
|
+
return param.toISOString();
|
|
79
|
+
}
|
|
80
|
+
if (typeof param === 'object' && param !== null) {
|
|
81
|
+
return JSON.stringify(param);
|
|
82
|
+
}
|
|
83
|
+
return param;
|
|
84
|
+
});
|
|
85
|
+
const stmt = this.#db.prepare(sql);
|
|
86
|
+
if (stmt.reader) {
|
|
87
|
+
return Promise.resolve({
|
|
88
|
+
rows: stmt.all(sqliteParameters),
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
const { changes, lastInsertRowid } = stmt.run(sqliteParameters);
|
|
92
|
+
return Promise.resolve({
|
|
93
|
+
numAffectedRows: changes !== undefined && changes !== null ? BigInt(changes) : undefined,
|
|
94
|
+
insertId: lastInsertRowid !== undefined && lastInsertRowid !== null
|
|
95
|
+
? BigInt(lastInsertRowid)
|
|
96
|
+
: undefined,
|
|
97
|
+
rows: [],
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
async *streamQuery(compiledQuery, _chunkSize) {
|
|
101
|
+
const { sql, parameters, query } = compiledQuery;
|
|
102
|
+
// Convert parameters to SQLite-compatible types
|
|
103
|
+
const sqliteParameters = parameters.map(param => {
|
|
104
|
+
if (param === undefined) {
|
|
105
|
+
return null;
|
|
106
|
+
}
|
|
107
|
+
if (typeof param === 'boolean') {
|
|
108
|
+
return param ? 1 : 0;
|
|
109
|
+
}
|
|
110
|
+
if (param instanceof Date) {
|
|
111
|
+
return param.toISOString();
|
|
112
|
+
}
|
|
113
|
+
if (typeof param === 'object' && param !== null) {
|
|
114
|
+
return JSON.stringify(param);
|
|
115
|
+
}
|
|
116
|
+
return param;
|
|
117
|
+
});
|
|
118
|
+
const stmt = this.#db.prepare(sql);
|
|
119
|
+
if (SelectQueryNode.is(query)) {
|
|
120
|
+
const iter = stmt.iterate(sqliteParameters);
|
|
121
|
+
for (const row of iter) {
|
|
122
|
+
yield {
|
|
123
|
+
rows: [row],
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
throw new Error('Sqlite driver only supports streaming of select queries');
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
class ConnectionMutex {
|
|
133
|
+
#promise;
|
|
134
|
+
#resolve;
|
|
135
|
+
async lock() {
|
|
136
|
+
while (this.#promise) {
|
|
137
|
+
await this.#promise;
|
|
138
|
+
}
|
|
139
|
+
this.#promise = new Promise((resolve) => {
|
|
140
|
+
this.#resolve = resolve;
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
unlock() {
|
|
144
|
+
const resolve = this.#resolve;
|
|
145
|
+
this.#promise = undefined;
|
|
146
|
+
this.#resolve = undefined;
|
|
147
|
+
resolve?.();
|
|
148
|
+
}
|
|
149
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { DatabaseIntrospector, DatabaseMetadata, DatabaseMetadataOptions, SchemaMetadata, TableMetadata, ColumnMetadata, IndexMetadata, ForeignKeyMetadata } from '../database-introspector.js';
|
|
2
|
+
import { Kysely } from '../../kysely.js';
|
|
3
|
+
export declare class SqliteIntrospector extends DatabaseIntrospector {
|
|
4
|
+
#private;
|
|
5
|
+
constructor(db: Kysely<any>);
|
|
6
|
+
getSchemas(): Promise<SchemaMetadata[]>;
|
|
7
|
+
/**
|
|
8
|
+
* Get all tables in the database
|
|
9
|
+
*/
|
|
10
|
+
getTables(options?: DatabaseMetadataOptions): Promise<TableMetadata[]>;
|
|
11
|
+
getMetadata(options?: DatabaseMetadataOptions): Promise<DatabaseMetadata>;
|
|
12
|
+
/**
|
|
13
|
+
* Enhanced auto-increment detection for SQLite
|
|
14
|
+
*/
|
|
15
|
+
private detectAutoIncrement;
|
|
16
|
+
/**
|
|
17
|
+
* Extract unique constraints from SQL
|
|
18
|
+
*/
|
|
19
|
+
private extractUniqueConstraints;
|
|
20
|
+
/**
|
|
21
|
+
* Extract check constraints from SQL
|
|
22
|
+
*/
|
|
23
|
+
private extractCheckConstraints;
|
|
24
|
+
/**
|
|
25
|
+
* Get columns for a specific table
|
|
26
|
+
*/
|
|
27
|
+
getColumns(tableName: string): Promise<ColumnMetadata[]>;
|
|
28
|
+
/**
|
|
29
|
+
* Get indexes for a specific table
|
|
30
|
+
*/
|
|
31
|
+
getIndexes(tableName: string): Promise<IndexMetadata[]>;
|
|
32
|
+
/**
|
|
33
|
+
* Get foreign keys for a specific table
|
|
34
|
+
*/
|
|
35
|
+
getForeignKeys(tableName: string): Promise<ForeignKeyMetadata[]>;
|
|
36
|
+
}
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
/// <reference types="./sqlite-introspector.d.ts" />
|
|
2
|
+
import { DatabaseIntrospector, } from '../database-introspector.js';
|
|
3
|
+
// Migration constants - moved from old migration system
|
|
4
|
+
const DEFAULT_MIGRATION_TABLE = 'kysely_migration';
|
|
5
|
+
const DEFAULT_MIGRATION_LOCK_TABLE = 'kysely_migration_lock';
|
|
6
|
+
import { sql } from '../../raw-builder/sql.js';
|
|
7
|
+
export class SqliteIntrospector extends DatabaseIntrospector {
|
|
8
|
+
#db;
|
|
9
|
+
constructor(db) {
|
|
10
|
+
super(db);
|
|
11
|
+
this.#db = db;
|
|
12
|
+
}
|
|
13
|
+
async getSchemas() {
|
|
14
|
+
// Sqlite doesn't support schemas.
|
|
15
|
+
return [];
|
|
16
|
+
}
|
|
17
|
+
async getTables(options = { withInternalKyselyTables: false }) {
|
|
18
|
+
return await this.#getTableMetadata(options);
|
|
19
|
+
}
|
|
20
|
+
async getMetadata(options) {
|
|
21
|
+
return {
|
|
22
|
+
tables: await this.getTables(options),
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
#tablesQuery(qb, options) {
|
|
26
|
+
let tablesQuery = qb
|
|
27
|
+
.selectFrom('sqlite_master')
|
|
28
|
+
.where('type', 'in', ['table', 'view'])
|
|
29
|
+
.where('name', 'not like', 'sqlite_%')
|
|
30
|
+
.select(['name', 'sql', 'type'])
|
|
31
|
+
.orderBy('name');
|
|
32
|
+
if (!options.withInternalKyselyTables) {
|
|
33
|
+
tablesQuery = tablesQuery
|
|
34
|
+
.where('name', '!=', DEFAULT_MIGRATION_TABLE)
|
|
35
|
+
.where('name', '!=', DEFAULT_MIGRATION_LOCK_TABLE);
|
|
36
|
+
}
|
|
37
|
+
return tablesQuery;
|
|
38
|
+
}
|
|
39
|
+
async #getTableMetadata(options) {
|
|
40
|
+
const tablesResult = await this.#tablesQuery(this.#db, options).execute();
|
|
41
|
+
const tableMetadata = await this.#db
|
|
42
|
+
.with('table_list', (qb) => this.#tablesQuery(qb, options))
|
|
43
|
+
.selectFrom([
|
|
44
|
+
'table_list as tl',
|
|
45
|
+
sql `pragma_table_info(tl.name)`.as('p'),
|
|
46
|
+
])
|
|
47
|
+
.select([
|
|
48
|
+
'tl.name as table',
|
|
49
|
+
'p.cid',
|
|
50
|
+
'p.name',
|
|
51
|
+
'p.type',
|
|
52
|
+
'p.notnull',
|
|
53
|
+
'p.dflt_value',
|
|
54
|
+
'p.pk',
|
|
55
|
+
])
|
|
56
|
+
.orderBy('tl.name')
|
|
57
|
+
.orderBy('p.cid')
|
|
58
|
+
.execute();
|
|
59
|
+
const columnsByTable = {};
|
|
60
|
+
for (const row of tableMetadata) {
|
|
61
|
+
columnsByTable[row.table] ??= [];
|
|
62
|
+
columnsByTable[row.table].push(row);
|
|
63
|
+
}
|
|
64
|
+
return tablesResult.map(({ name, sql, type }) => {
|
|
65
|
+
// Enhanced auto-increment detection
|
|
66
|
+
const autoIncrementInfo = this.detectAutoIncrement(sql, columnsByTable[name] ?? []);
|
|
67
|
+
const columns = columnsByTable[name] ?? [];
|
|
68
|
+
return {
|
|
69
|
+
name: name,
|
|
70
|
+
isView: type === 'view',
|
|
71
|
+
columns: columns.map((col) => ({
|
|
72
|
+
name: col.name,
|
|
73
|
+
dataType: col.type,
|
|
74
|
+
isNullable: !col.notnull,
|
|
75
|
+
isAutoIncrementing: autoIncrementInfo.isAutoIncrement && col.name === autoIncrementInfo.columnName,
|
|
76
|
+
hasDefaultValue: col.dflt_value != null,
|
|
77
|
+
comment: undefined,
|
|
78
|
+
// Enhanced SQLite-specific metadata
|
|
79
|
+
isPrimaryKey: col.pk > 0,
|
|
80
|
+
columnIndex: col.cid,
|
|
81
|
+
defaultValue: col.dflt_value,
|
|
82
|
+
autoIncrementType: autoIncrementInfo.type,
|
|
83
|
+
})),
|
|
84
|
+
// Additional table-level metadata
|
|
85
|
+
autoIncrementColumn: autoIncrementInfo.columnName,
|
|
86
|
+
hasAutoIncrement: autoIncrementInfo.isAutoIncrement,
|
|
87
|
+
autoIncrementType: autoIncrementInfo.type,
|
|
88
|
+
primaryKeyColumns: columns.filter(col => col.pk > 0).map(col => col.name),
|
|
89
|
+
uniqueConstraints: this.extractUniqueConstraints(sql),
|
|
90
|
+
checkConstraints: this.extractCheckConstraints(sql),
|
|
91
|
+
};
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Enhanced auto-increment detection for SQLite
|
|
96
|
+
*/
|
|
97
|
+
detectAutoIncrement(sql, columns) {
|
|
98
|
+
if (!sql) {
|
|
99
|
+
return { isAutoIncrement: false, columnName: null, type: 'none' };
|
|
100
|
+
}
|
|
101
|
+
// Method 1: Check for explicit AUTOINCREMENT keyword
|
|
102
|
+
const autoIncrementMatch = sql.match(/(\w+)\s+INTEGER\s+PRIMARY\s+KEY\s+AUTOINCREMENT/i);
|
|
103
|
+
if (autoIncrementMatch) {
|
|
104
|
+
return {
|
|
105
|
+
isAutoIncrement: true,
|
|
106
|
+
columnName: autoIncrementMatch[1].replace(/["`]/g, ''),
|
|
107
|
+
type: 'autoincrement'
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
// Method 2: Check for INTEGER PRIMARY KEY (implicit auto-increment)
|
|
111
|
+
const integerPkMatch = sql.match(/(\w+)\s+INTEGER\s+PRIMARY\s+KEY/i);
|
|
112
|
+
if (integerPkMatch) {
|
|
113
|
+
return {
|
|
114
|
+
isAutoIncrement: true,
|
|
115
|
+
columnName: integerPkMatch[1].replace(/["`]/g, ''),
|
|
116
|
+
type: 'rowid'
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
// Method 3: Check columns for INTEGER PRIMARY KEY
|
|
120
|
+
const pkColumns = columns.filter((col) => col.pk > 0);
|
|
121
|
+
if (pkColumns.length === 1) {
|
|
122
|
+
const pkCol = pkColumns[0];
|
|
123
|
+
if (pkCol.type.toLowerCase() === 'integer') {
|
|
124
|
+
return {
|
|
125
|
+
isAutoIncrement: true,
|
|
126
|
+
columnName: pkCol.name,
|
|
127
|
+
type: 'rowid'
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
// Method 4: Check for rowid usage (SQLite's implicit primary key)
|
|
132
|
+
const hasExplicitPk = columns.some((col) => col.pk > 0);
|
|
133
|
+
if (!hasExplicitPk) {
|
|
134
|
+
return {
|
|
135
|
+
isAutoIncrement: true,
|
|
136
|
+
columnName: 'rowid',
|
|
137
|
+
type: 'rowid'
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
return { isAutoIncrement: false, columnName: null, type: 'none' };
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Extract unique constraints from SQL
|
|
144
|
+
*/
|
|
145
|
+
extractUniqueConstraints(sql) {
|
|
146
|
+
if (!sql)
|
|
147
|
+
return [];
|
|
148
|
+
const constraints = [];
|
|
149
|
+
const uniqueMatches = sql.match(/UNIQUE\s*\(([^)]+)\)/gi);
|
|
150
|
+
if (uniqueMatches) {
|
|
151
|
+
for (const match of uniqueMatches) {
|
|
152
|
+
const columnsMatch = match.match(/\(([^)]+)\)/);
|
|
153
|
+
if (columnsMatch) {
|
|
154
|
+
const columns = columnsMatch[1]
|
|
155
|
+
.split(',')
|
|
156
|
+
.map(col => col.trim().replace(/["`]/g, ''));
|
|
157
|
+
constraints.push(...columns);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
return constraints;
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Extract check constraints from SQL
|
|
165
|
+
*/
|
|
166
|
+
extractCheckConstraints(sql) {
|
|
167
|
+
if (!sql)
|
|
168
|
+
return [];
|
|
169
|
+
const constraints = [];
|
|
170
|
+
const checkMatches = sql.match(/CHECK\s*\(([^)]+)\)/gi);
|
|
171
|
+
if (checkMatches) {
|
|
172
|
+
for (const match of checkMatches) {
|
|
173
|
+
const conditionMatch = match.match(/\(([^)]+)\)/);
|
|
174
|
+
if (conditionMatch) {
|
|
175
|
+
constraints.push(conditionMatch[1]);
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
return constraints;
|
|
180
|
+
}
|
|
181
|
+
async getColumns(tableName) {
|
|
182
|
+
try {
|
|
183
|
+
// SQLite - use raw SQL for pragma_table_info
|
|
184
|
+
const result = await sql `PRAGMA table_info(${sql.lit(tableName)})`.execute(this.#db);
|
|
185
|
+
const sqliteColumns = result.rows;
|
|
186
|
+
return sqliteColumns.map((col) => ({
|
|
187
|
+
name: col.name,
|
|
188
|
+
type: col.type,
|
|
189
|
+
nullable: !col.notnull,
|
|
190
|
+
defaultValue: col.dflt_value,
|
|
191
|
+
isPrimaryKey: !!col.pk,
|
|
192
|
+
isAutoIncrement: col.type.toLowerCase().includes('integer') && col.pk
|
|
193
|
+
}));
|
|
194
|
+
}
|
|
195
|
+
catch (error) {
|
|
196
|
+
console.warn('SQLite column discovery failed:', error);
|
|
197
|
+
return [];
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
async getIndexes(tableName) {
|
|
201
|
+
try {
|
|
202
|
+
// SQLite - use raw SQL for pragma_index_list
|
|
203
|
+
const result = await sql `PRAGMA index_list(${sql.lit(tableName)})`.execute(this.#db);
|
|
204
|
+
const sqliteIndexes = result.rows;
|
|
205
|
+
return sqliteIndexes.map((idx) => ({
|
|
206
|
+
name: idx.name,
|
|
207
|
+
columns: [], // Would need additional query to get column names
|
|
208
|
+
unique: !!idx.unique
|
|
209
|
+
}));
|
|
210
|
+
}
|
|
211
|
+
catch (error) {
|
|
212
|
+
console.warn('SQLite index discovery failed:', error);
|
|
213
|
+
return [];
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
async getForeignKeys(tableName) {
|
|
217
|
+
try {
|
|
218
|
+
// SQLite - use raw SQL for pragma_foreign_key_list
|
|
219
|
+
const result = await sql `PRAGMA foreign_key_list(${sql.lit(tableName)})`.execute(this.#db);
|
|
220
|
+
const sqliteFks = result.rows;
|
|
221
|
+
return sqliteFks.map((fk) => ({
|
|
222
|
+
name: `fk_${tableName}_${fk.from}`,
|
|
223
|
+
column: fk.from,
|
|
224
|
+
referencedTable: fk.table,
|
|
225
|
+
referencedColumn: fk.to
|
|
226
|
+
}));
|
|
227
|
+
}
|
|
228
|
+
catch (error) {
|
|
229
|
+
console.warn('SQLite foreign key discovery failed:', error);
|
|
230
|
+
return [];
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { DefaultInsertValueNode } from '../../operation-node/default-insert-value-node.js';
|
|
2
|
+
import { OrActionNode } from '../../operation-node/or-action-node.js';
|
|
3
|
+
import { DefaultQueryCompiler } from '../../query-compiler/default-query-compiler.js';
|
|
4
|
+
import { ForeignKeyConstraintNode } from '../../operation-node/foreign-key-constraint-node.js';
|
|
5
|
+
export declare class SqliteQueryCompiler extends DefaultQueryCompiler {
|
|
6
|
+
protected visitOrAction(node: OrActionNode): void;
|
|
7
|
+
protected getCurrentParameterPlaceholder(): string;
|
|
8
|
+
protected getLeftExplainOptionsWrapper(): string;
|
|
9
|
+
protected getRightExplainOptionsWrapper(): string;
|
|
10
|
+
protected getLeftIdentifierWrapper(): string;
|
|
11
|
+
protected getRightIdentifierWrapper(): string;
|
|
12
|
+
protected getAutoIncrement(): string;
|
|
13
|
+
protected sanitizeIdentifier(identifier: string): string;
|
|
14
|
+
protected visitDefaultInsertValue(_: DefaultInsertValueNode): void;
|
|
15
|
+
protected visitForeignKeyConstraint(node: ForeignKeyConstraintNode): void;
|
|
16
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/// <reference types="./sqlite-query-compiler.d.ts" />
|
|
2
|
+
import { DefaultQueryCompiler } from '../../query-compiler/default-query-compiler.js';
|
|
3
|
+
const ID_WRAP_REGEX = /"/g;
|
|
4
|
+
export class SqliteQueryCompiler extends DefaultQueryCompiler {
|
|
5
|
+
visitOrAction(node) {
|
|
6
|
+
this.append('or ');
|
|
7
|
+
this.append(node.action);
|
|
8
|
+
}
|
|
9
|
+
getCurrentParameterPlaceholder() {
|
|
10
|
+
return '?';
|
|
11
|
+
}
|
|
12
|
+
getLeftExplainOptionsWrapper() {
|
|
13
|
+
return '';
|
|
14
|
+
}
|
|
15
|
+
getRightExplainOptionsWrapper() {
|
|
16
|
+
return '';
|
|
17
|
+
}
|
|
18
|
+
getLeftIdentifierWrapper() {
|
|
19
|
+
return '"';
|
|
20
|
+
}
|
|
21
|
+
getRightIdentifierWrapper() {
|
|
22
|
+
return '"';
|
|
23
|
+
}
|
|
24
|
+
getAutoIncrement() {
|
|
25
|
+
return 'autoincrement';
|
|
26
|
+
}
|
|
27
|
+
sanitizeIdentifier(identifier) {
|
|
28
|
+
return identifier.replace(ID_WRAP_REGEX, '""');
|
|
29
|
+
}
|
|
30
|
+
visitDefaultInsertValue(_) {
|
|
31
|
+
// sqlite doesn't support the `default` keyword in inserts.
|
|
32
|
+
this.append('null');
|
|
33
|
+
}
|
|
34
|
+
visitForeignKeyConstraint(node) {
|
|
35
|
+
// SQLite doesn't support ALTER TABLE ADD CONSTRAINT for foreign keys
|
|
36
|
+
// Foreign keys must be defined during table creation
|
|
37
|
+
// For now, we'll skip foreign key constraints in ALTER TABLE statements
|
|
38
|
+
throw new Error('SQLite does not support adding foreign key constraints via ALTER TABLE. Foreign keys must be defined during table creation.');
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { DatabaseConnection } from './database-connection.js';
|
|
2
|
+
export interface ConnectionProvider {
|
|
3
|
+
/**
|
|
4
|
+
* Provides a connection for the callback and takes care of disposing
|
|
5
|
+
* the connection after the callback has been run.
|
|
6
|
+
*/
|
|
7
|
+
provideConnection<T>(consumer: (connection: DatabaseConnection) => Promise<T>): Promise<T>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { CompiledQuery } from '../query-compiler/compiled-query.js';
|
|
2
|
+
/**
|
|
3
|
+
* A single connection to the database engine.
|
|
4
|
+
*
|
|
5
|
+
* These are created by an instance of {@link Driver}.
|
|
6
|
+
*/
|
|
7
|
+
export interface DatabaseConnection {
|
|
8
|
+
executeQuery<R>(compiledQuery: CompiledQuery): Promise<QueryResult<R>>;
|
|
9
|
+
streamQuery<R>(compiledQuery: CompiledQuery, chunkSize?: number): AsyncIterableIterator<QueryResult<R>>;
|
|
10
|
+
}
|
|
11
|
+
export interface QueryResult<O> {
|
|
12
|
+
/**
|
|
13
|
+
* This is defined for insert, update, delete and merge queries and contains
|
|
14
|
+
* the number of rows the query inserted/updated/deleted.
|
|
15
|
+
*/
|
|
16
|
+
readonly numAffectedRows?: bigint;
|
|
17
|
+
/**
|
|
18
|
+
* This is defined for update queries and contains the number of rows
|
|
19
|
+
* the query changed.
|
|
20
|
+
*
|
|
21
|
+
* This is **optional** and only provided in dialects such as MySQL.
|
|
22
|
+
* You would probably use {@link numAffectedRows} in most cases.
|
|
23
|
+
*/
|
|
24
|
+
readonly numChangedRows?: bigint;
|
|
25
|
+
/**
|
|
26
|
+
* This is defined for insert queries on dialects that return
|
|
27
|
+
* the auto incrementing primary key from an insert.
|
|
28
|
+
*/
|
|
29
|
+
readonly insertId?: bigint;
|
|
30
|
+
/**
|
|
31
|
+
* The rows returned by the query. This is always defined and is
|
|
32
|
+
* empty if the query returned no rows.
|
|
33
|
+
*/
|
|
34
|
+
readonly rows: O[];
|
|
35
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { DatabaseConnection } from './database-connection.js';
|
|
2
|
+
import { ConnectionProvider } from './connection-provider.js';
|
|
3
|
+
import { Driver } from './driver.js';
|
|
4
|
+
export declare class DefaultConnectionProvider implements ConnectionProvider {
|
|
5
|
+
#private;
|
|
6
|
+
constructor(driver: Driver);
|
|
7
|
+
/**
|
|
8
|
+
* Provides a connection for the callback and takes care of disposing
|
|
9
|
+
* the connection after the callback has been run.
|
|
10
|
+
*/
|
|
11
|
+
provideConnection<T>(consumer: (connection: DatabaseConnection) => Promise<T>): Promise<T>;
|
|
12
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/// <reference types="./default-connection-provider.d.ts" />
|
|
2
|
+
export class DefaultConnectionProvider {
|
|
3
|
+
#driver;
|
|
4
|
+
constructor(driver) {
|
|
5
|
+
this.#driver = driver;
|
|
6
|
+
}
|
|
7
|
+
async provideConnection(consumer) {
|
|
8
|
+
const connection = await this.#driver.acquireConnection();
|
|
9
|
+
try {
|
|
10
|
+
return await consumer(connection);
|
|
11
|
+
}
|
|
12
|
+
finally {
|
|
13
|
+
await this.#driver.releaseConnection(connection);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { QueryCompiler } from '../query-compiler/query-compiler.js';
|
|
2
|
+
import { ArrayItemType } from '../util/type-utils.js';
|
|
3
|
+
import { DatabaseConnection } from './database-connection.js';
|
|
4
|
+
/**
|
|
5
|
+
* A Driver creates and releases {@link DatabaseConnection | database connections}
|
|
6
|
+
* and is also responsible for connection pooling (if the dialect supports pooling).
|
|
7
|
+
*/
|
|
8
|
+
export interface Driver {
|
|
9
|
+
/**
|
|
10
|
+
* Initializes the driver.
|
|
11
|
+
*
|
|
12
|
+
* After calling this method the driver should be usable and `acquireConnection` etc.
|
|
13
|
+
* methods should be callable.
|
|
14
|
+
*/
|
|
15
|
+
init(): Promise<void>;
|
|
16
|
+
/**
|
|
17
|
+
* Acquires a new connection from the pool.
|
|
18
|
+
*/
|
|
19
|
+
acquireConnection(): Promise<DatabaseConnection>;
|
|
20
|
+
/**
|
|
21
|
+
* Begins a transaction.
|
|
22
|
+
*/
|
|
23
|
+
beginTransaction(connection: DatabaseConnection, settings: TransactionSettings): Promise<void>;
|
|
24
|
+
/**
|
|
25
|
+
* Commits a transaction.
|
|
26
|
+
*/
|
|
27
|
+
commitTransaction(connection: DatabaseConnection): Promise<void>;
|
|
28
|
+
/**
|
|
29
|
+
* Rolls back a transaction.
|
|
30
|
+
*/
|
|
31
|
+
rollbackTransaction(connection: DatabaseConnection): Promise<void>;
|
|
32
|
+
/**
|
|
33
|
+
* Establishses a new savepoint within a transaction.
|
|
34
|
+
*/
|
|
35
|
+
savepoint?(connection: DatabaseConnection, savepointName: string, compileQuery: QueryCompiler['compileQuery']): Promise<void>;
|
|
36
|
+
/**
|
|
37
|
+
* Rolls back to a savepoint within a transaction.
|
|
38
|
+
*/
|
|
39
|
+
rollbackToSavepoint?(connection: DatabaseConnection, savepointName: string, compileQuery: QueryCompiler['compileQuery']): Promise<void>;
|
|
40
|
+
/**
|
|
41
|
+
* Releases a savepoint within a transaction.
|
|
42
|
+
*/
|
|
43
|
+
releaseSavepoint?(connection: DatabaseConnection, savepointName: string, compileQuery: QueryCompiler['compileQuery']): Promise<void>;
|
|
44
|
+
/**
|
|
45
|
+
* Releases a connection back to the pool.
|
|
46
|
+
*/
|
|
47
|
+
releaseConnection(connection: DatabaseConnection): Promise<void>;
|
|
48
|
+
/**
|
|
49
|
+
* Destroys the driver and releases all resources.
|
|
50
|
+
*/
|
|
51
|
+
destroy(): Promise<void>;
|
|
52
|
+
}
|
|
53
|
+
export interface TransactionSettings {
|
|
54
|
+
readonly accessMode?: AccessMode;
|
|
55
|
+
readonly isolationLevel?: IsolationLevel;
|
|
56
|
+
}
|
|
57
|
+
export declare const TRANSACTION_ACCESS_MODES: readonly ["read only", "read write"];
|
|
58
|
+
export type AccessMode = ArrayItemType<typeof TRANSACTION_ACCESS_MODES>;
|
|
59
|
+
export declare const TRANSACTION_ISOLATION_LEVELS: readonly ["read uncommitted", "read committed", "repeatable read", "serializable", "snapshot"];
|
|
60
|
+
export type IsolationLevel = ArrayItemType<typeof TRANSACTION_ISOLATION_LEVELS>;
|
|
61
|
+
export declare function validateTransactionSettings(settings: TransactionSettings): void;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/// <reference types="./driver.d.ts" />
|
|
2
|
+
export const TRANSACTION_ACCESS_MODES = ['read only', 'read write'];
|
|
3
|
+
export const TRANSACTION_ISOLATION_LEVELS = [
|
|
4
|
+
'read uncommitted',
|
|
5
|
+
'read committed',
|
|
6
|
+
'repeatable read',
|
|
7
|
+
'serializable',
|
|
8
|
+
'snapshot',
|
|
9
|
+
];
|
|
10
|
+
export function validateTransactionSettings(settings) {
|
|
11
|
+
if (settings.accessMode &&
|
|
12
|
+
!TRANSACTION_ACCESS_MODES.includes(settings.accessMode)) {
|
|
13
|
+
throw new Error(`invalid transaction access mode ${settings.accessMode}`);
|
|
14
|
+
}
|
|
15
|
+
if (settings.isolationLevel &&
|
|
16
|
+
!TRANSACTION_ISOLATION_LEVELS.includes(settings.isolationLevel)) {
|
|
17
|
+
throw new Error(`invalid transaction isolation level ${settings.isolationLevel}`);
|
|
18
|
+
}
|
|
19
|
+
}
|