@decocms/mesh 1.0.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +412 -0
- package/dist/client/assets/CommitMono-VariableFont-ytizKI8U.woff2 +0 -0
- package/dist/client/assets/alert-dialog-DsYjmjQa.js +7 -0
- package/dist/client/assets/app-name-DQPOjnhR.js +1 -0
- package/dist/client/assets/auth-catchall-vTieIyKZ.js +1 -0
- package/dist/client/assets/auth-dQSMuI_r.js +1 -0
- package/dist/client/assets/avatar-DFNVHH7B.js +1 -0
- package/dist/client/assets/badge-D0svJbIE.js +1 -0
- package/dist/client/assets/button-CB7Gt-Ba.js +1 -0
- package/dist/client/assets/card-BZePxfHz.js +1 -0
- package/dist/client/assets/checkbox-CJwRElzS.js +1 -0
- package/dist/client/assets/chunk-2RRQPJJO-DGhxLrrR.js +1 -0
- package/dist/client/assets/circle-alert-FONBIc_T.js +1 -0
- package/dist/client/assets/collection-detail-CFf2hZjF.js +1 -0
- package/dist/client/assets/collection-display-button-Ccjj22Xn.js +1 -0
- package/dist/client/assets/collection-header-C3vTyWNy.js +1 -0
- package/dist/client/assets/collection-page-BplXISpO.js +1 -0
- package/dist/client/assets/collection-search-BpPEPb0j.js +1 -0
- package/dist/client/assets/collection-table-wrapper-CJdrG443.js +1 -0
- package/dist/client/assets/connection-card-B7VMSnFz.js +1 -0
- package/dist/client/assets/connection-detail-DGFMHZQW.js +1 -0
- package/dist/client/assets/connections-BFxMYtuo.js +1 -0
- package/dist/client/assets/create-organization-dialog-Mq1L8DSD.js +1 -0
- package/dist/client/assets/dialog-DhrfZsqb.js +1 -0
- package/dist/client/assets/dropdown-menu-zoKN8fKM.js +1 -0
- package/dist/client/assets/empty-state-BCgOYCyG.js +1 -0
- package/dist/client/assets/error-boundary-L4NxoU-J.js +1 -0
- package/dist/client/assets/extract-connection-data-mJfi2GDs.js +5 -0
- package/dist/client/assets/form-BmhZau8F.js +1 -0
- package/dist/client/assets/formatDistanceToNow-Ctx6mZEP.js +1 -0
- package/dist/client/assets/gateway-detail-BEN_sL0j.js +1 -0
- package/dist/client/assets/gateways-DPfP8fjF.js +1 -0
- package/dist/client/assets/generate-id-Dyweu44Y.js +1 -0
- package/dist/client/assets/home-RT_Ssleq.js +1 -0
- package/dist/client/assets/icon-Zm7eEeKG.js +1 -0
- package/dist/client/assets/index-BAut7b_p.js +1 -0
- package/dist/client/assets/index-CBL6DTCM.js +32 -0
- package/dist/client/assets/index-CfNAXm02.js +1 -0
- package/dist/client/assets/index-CoeZDSQf.js +1 -0
- package/dist/client/assets/index-VCe1FY3E.js +118 -0
- package/dist/client/assets/index-feMggVqN.css +1 -0
- package/dist/client/assets/input-DWY0hRYC.js +1 -0
- package/dist/client/assets/integration-icon-Dgf9Pzxc.js +1 -0
- package/dist/client/assets/layout-C75gYFRR.js +1 -0
- package/dist/client/assets/lazy-highlighter-V_ETf5s5.js +1 -0
- package/dist/client/assets/localstorage-keys-CdMYd__a.js +1 -0
- package/dist/client/assets/login-CaI2gNh0.js +1 -0
- package/dist/client/assets/members-BD990Z5F.js +1 -0
- package/dist/client/assets/monitoring-s9rrPP3V.js +1 -0
- package/dist/client/assets/monitoring-stats-row-DiSEgwHP.js +42 -0
- package/dist/client/assets/oauth-callback-ChC_4XSg.js +10 -0
- package/dist/client/assets/page-BauA0SPJ.js +1 -0
- package/dist/client/assets/popover-B7GJHYd2.js +1 -0
- package/dist/client/assets/prism-BsII3tZL.js +9 -0
- package/dist/client/assets/registry-utils-ulDDT0d8.js +1 -0
- package/dist/client/assets/resource-tabs-CSRUKxnt.css +1 -0
- package/dist/client/assets/resource-tabs-Djqhz6PB.js +1 -0
- package/dist/client/assets/schema-CJRWBwzd.js +1 -0
- package/dist/client/assets/select-CrueAR2N.js +1 -0
- package/dist/client/assets/settings-85tu13fN.js +1 -0
- package/dist/client/assets/shell-layout-CwcEMEv3.js +124 -0
- package/dist/client/assets/spinner-R42f7AVH.js +1 -0
- package/dist/client/assets/store-app-detail-D89e4NIX.js +1 -0
- package/dist/client/assets/store-zixro3Vs.js +1 -0
- package/dist/client/assets/textarea-CAmjTm6l.js +1 -0
- package/dist/client/assets/tool-set-selector-BfScgRcK.js +1 -0
- package/dist/client/assets/tooltip-BLbXpJcn.js +1 -0
- package/dist/client/assets/upload-CG7PZ6WF.js +1 -0
- package/dist/client/assets/use-binding-CeSgmpzj.js +5 -0
- package/dist/client/assets/use-connection-D5nZyekX.js +2 -0
- package/dist/client/assets/use-gateway-pRk3-ua4.js +1 -0
- package/dist/client/assets/use-list-state-BTIryg2o.js +1 -0
- package/dist/client/assets/use-members-OyBpbFn0.js +1 -0
- package/dist/client/assets/use-mobile-BPQzOCZP.js +1 -0
- package/dist/client/assets/use-organization-settings-CMP1q4u_.js +1 -0
- package/dist/client/assets/use-tool-call-BsMTRGjQ.js +1 -0
- package/dist/client/assets/useQuery-DEUZMq4A.js +1 -0
- package/dist/client/assets/utils-B-QWwgyW.js +1 -0
- package/dist/client/assets/well-known-mcp-Dq2j3ucM.js +1 -0
- package/dist/client/empty-state-cards.png +0 -0
- package/dist/client/empty-state-home.png +0 -0
- package/dist/client/emptystate-mcp.svg +77 -0
- package/dist/client/favicon.svg +5 -0
- package/dist/client/globe.svg +4 -0
- package/dist/client/index.html +12 -0
- package/dist/client/logos/Claude Code.svg +3 -0
- package/dist/client/logos/Windsurf.svg +3 -0
- package/dist/client/logos/cursor.svg +3 -0
- package/dist/client/logos/deco logo.svg +4 -0
- package/dist/client/store-empty-state.svg +362 -0
- package/dist/client/verified-badge.svg +4 -0
- package/dist/server/cli.js +1191 -0
- package/dist/server/migrate.js +1026 -0
- package/dist/server/node_modules/kysely/LICENSE +21 -0
- package/dist/server/node_modules/kysely/README.md +238 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/database-introspector.d.ts +62 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/database-introspector.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/dialect-adapter-base.d.ts +94 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/dialect-adapter-base.js +24 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/dialect-adapter.d.ts +115 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/dialect-adapter.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/dialect.d.ts +34 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/dialect.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mssql/mssql-adapter.d.ts +83 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mssql/mssql-adapter.js +28 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mssql/mssql-dialect-config.d.ts +181 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mssql/mssql-dialect-config.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mssql/mssql-dialect.d.ts +70 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mssql/mssql-dialect.js +65 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mssql/mssql-driver.d.ts +59 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mssql/mssql-driver.js +359 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mssql/mssql-introspector.d.ts +20 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mssql/mssql-introspector.js +110 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mssql/mssql-query-compiler.d.ts +17 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mssql/mssql-query-compiler.js +83 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mysql/mysql-adapter.d.ts +80 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mysql/mysql-adapter.js +28 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mysql/mysql-dialect-config.d.ts +56 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mysql/mysql-dialect-config.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mysql/mysql-dialect.d.ts +61 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mysql/mysql-dialect.js +56 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mysql/mysql-driver.d.ts +52 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mysql/mysql-driver.js +180 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mysql/mysql-introspector.d.ts +20 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mysql/mysql-introspector.js +79 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mysql/mysql-query-compiler.d.ts +13 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/mysql/mysql-query-compiler.js +60 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/postgres/postgres-adapter.d.ts +80 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/postgres/postgres-adapter.js +25 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/postgres/postgres-dialect-config.d.ts +68 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/postgres/postgres-dialect-config.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/postgres/postgres-dialect.d.ts +61 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/postgres/postgres-dialect.js +56 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/postgres/postgres-driver.d.ts +55 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/postgres/postgres-driver.js +134 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/postgres/postgres-introspector.d.ts +20 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/postgres/postgres-introspector.js +100 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/postgres/postgres-query-compiler.d.ts +4 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/postgres/postgres-query-compiler.js +11 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-adapter.d.ts +80 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-adapter.js +23 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-dialect-config.d.ts +41 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-dialect-config.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-dialect.d.ts +55 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-dialect.js +51 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-driver.d.ts +42 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-driver.js +113 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-introspector.d.ts +20 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-introspector.js +94 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-query-compiler.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/cjs/dialect/sqlite/sqlite-query-compiler.js +37 -0
- package/dist/server/node_modules/kysely/dist/cjs/driver/connection-provider.d.ts +8 -0
- package/dist/server/node_modules/kysely/dist/cjs/driver/connection-provider.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/driver/database-connection.d.ts +35 -0
- package/dist/server/node_modules/kysely/dist/cjs/driver/database-connection.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/driver/default-connection-provider.d.ts +12 -0
- package/dist/server/node_modules/kysely/dist/cjs/driver/default-connection-provider.js +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/driver/driver.d.ts +61 -0
- package/dist/server/node_modules/kysely/dist/cjs/driver/driver.js +22 -0
- package/dist/server/node_modules/kysely/dist/cjs/driver/dummy-driver.d.ts +75 -0
- package/dist/server/node_modules/kysely/dist/cjs/driver/dummy-driver.js +83 -0
- package/dist/server/node_modules/kysely/dist/cjs/driver/runtime-driver.d.ts +47 -0
- package/dist/server/node_modules/kysely/dist/cjs/driver/runtime-driver.js +165 -0
- package/dist/server/node_modules/kysely/dist/cjs/driver/single-connection-provider.d.ts +11 -0
- package/dist/server/node_modules/kysely/dist/cjs/driver/single-connection-provider.js +29 -0
- package/dist/server/node_modules/kysely/dist/cjs/dynamic/dynamic-reference-builder.d.ts +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/dynamic/dynamic-reference-builder.js +36 -0
- package/dist/server/node_modules/kysely/dist/cjs/dynamic/dynamic-table-builder.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/dynamic/dynamic-table-builder.js +46 -0
- package/dist/server/node_modules/kysely/dist/cjs/dynamic/dynamic.d.ts +124 -0
- package/dist/server/node_modules/kysely/dist/cjs/dynamic/dynamic.js +132 -0
- package/dist/server/node_modules/kysely/dist/cjs/expression/expression-builder.d.ts +920 -0
- package/dist/server/node_modules/kysely/dist/cjs/expression/expression-builder.js +128 -0
- package/dist/server/node_modules/kysely/dist/cjs/expression/expression-wrapper.d.ts +631 -0
- package/dist/server/node_modules/kysely/dist/cjs/expression/expression-wrapper.js +134 -0
- package/dist/server/node_modules/kysely/dist/cjs/expression/expression.d.ts +198 -0
- package/dist/server/node_modules/kysely/dist/cjs/expression/expression.js +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/helpers/mssql.d.ts +212 -0
- package/dist/server/node_modules/kysely/dist/cjs/helpers/mssql.js +219 -0
- package/dist/server/node_modules/kysely/dist/cjs/helpers/mysql.d.ts +147 -0
- package/dist/server/node_modules/kysely/dist/cjs/helpers/mysql.js +162 -0
- package/dist/server/node_modules/kysely/dist/cjs/helpers/postgres.d.ts +199 -0
- package/dist/server/node_modules/kysely/dist/cjs/helpers/postgres.js +208 -0
- package/dist/server/node_modules/kysely/dist/cjs/helpers/sqlite.d.ts +189 -0
- package/dist/server/node_modules/kysely/dist/cjs/helpers/sqlite.js +204 -0
- package/dist/server/node_modules/kysely/dist/cjs/index.d.ts +224 -0
- package/dist/server/node_modules/kysely/dist/cjs/index.js +231 -0
- package/dist/server/node_modules/kysely/dist/cjs/kysely.d.ts +848 -0
- package/dist/server/node_modules/kysely/dist/cjs/kysely.js +924 -0
- package/dist/server/node_modules/kysely/dist/cjs/migration/file-migration-provider.d.ts +48 -0
- package/dist/server/node_modules/kysely/dist/cjs/migration/file-migration-provider.js +52 -0
- package/dist/server/node_modules/kysely/dist/cjs/migration/migrator.d.ts +395 -0
- package/dist/server/node_modules/kysely/dist/cjs/migration/migrator.js +604 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/add-column-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/add-column-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/add-constraint-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/add-constraint-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/add-index-node.d.ts +23 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/add-index-node.js +31 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/aggregate-function-node.d.ts +29 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/aggregate-function-node.js +58 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/alias-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/alias-node.js +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/alter-column-node.d.ts +23 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/alter-column-node.js +20 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/alter-table-node.d.ts +38 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/alter-table-node.js +32 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/and-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/and-node.js +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/binary-operation-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/binary-operation-node.js +20 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/case-node.d.ts +21 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/case-node.js +42 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/cast-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/cast-node.js +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/check-constraint-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/check-constraint-node.js +22 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/collate-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/collate-node.js +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/column-definition-node.d.ts +38 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/column-definition-node.js +42 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/column-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/column-node.js +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/column-update-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/column-update-node.js +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/common-table-expression-name-node.d.ts +17 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/common-table-expression-name-node.js +23 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/common-table-expression-node.d.ts +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/common-table-expression-node.js +25 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/constraint-node.d.ts +5 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/constraint-node.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/create-index-node.d.ts +29 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/create-index-node.js +31 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/create-schema-node.d.ts +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/create-schema-node.js +26 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/create-table-node.d.ts +34 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/create-table-node.js +56 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/create-type-node.d.ts +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/create-type-node.js +26 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/create-view-node.d.ts +26 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/create-view-node.js +25 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/data-type-node.d.ts +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/data-type-node.js +86 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/default-insert-value-node.d.ts +13 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/default-insert-value-node.js +17 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/default-value-node.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/default-value-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/delete-query-node.d.ts +42 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/delete-query-node.js +52 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/drop-column-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/drop-column-node.js +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/drop-constraint-node.d.ts +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/drop-constraint-node.js +25 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/drop-index-node.d.ts +21 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/drop-index-node.js +26 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/drop-schema-node.d.ts +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/drop-schema-node.js +26 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/drop-table-node.d.ts +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/drop-table-node.js +25 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/drop-type-node.d.ts +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/drop-type-node.js +24 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/drop-view-node.d.ts +20 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/drop-view-node.js +25 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/explain-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/explain-node.js +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/fetch-node.d.ts +17 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/fetch-node.js +20 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/foreign-key-constraint-node.d.ts +26 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/foreign-key-constraint-node.js +30 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/from-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/from-node.js +24 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/function-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/function-node.js +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/generated-node.d.ts +21 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/generated-node.js +31 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/group-by-item-node.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/group-by-item-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/group-by-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/group-by-node.js +24 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/having-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/having-node.js +28 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/identifier-node.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/identifier-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/insert-query-node.d.ts +42 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/insert-query-node.js +31 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/join-node.d.ts +20 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/join-node.js +37 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/json-operator-chain-node.d.ts +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/json-operator-chain-node.js +25 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/json-path-leg-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/json-path-leg-node.js +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/json-path-node.d.ts +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/json-path-node.js +25 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/json-reference-node.d.ts +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/json-reference-node.js +25 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/limit-node.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/limit-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/list-node.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/list-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/matched-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/matched-node.js +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/merge-query-node.d.ts +32 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/merge-query-node.js +45 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/modify-column-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/modify-column-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/offset-node.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/offset-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/on-conflict-node.d.ts +32 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/on-conflict-node.js +68 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/on-duplicate-key-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/on-duplicate-key-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/on-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/on-node.js +28 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/operation-node-source.d.ts +5 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/operation-node-source.js +7 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/operation-node-transformer.d.ts +238 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/operation-node-transformer.js +929 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/operation-node-visitor.d.ts +201 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/operation-node-visitor.js +115 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/operation-node.d.ts +4 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/operation-node.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/operator-node.d.ts +34 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/operator-node.js +107 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/or-action-node.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/or-action-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/or-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/or-node.js +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/order-by-item-node.d.ts +20 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/order-by-item-node.js +25 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/order-by-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/order-by-node.js +24 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/output-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/output-node.js +26 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/over-node.d.ts +21 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/over-node.js +35 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/parens-node.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/parens-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/partition-by-item-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/partition-by-item-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/partition-by-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/partition-by-node.js +24 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/primary-key-constraint-node.d.ts +31 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/primary-key-constraint-node.js +32 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/primitive-value-list-node.d.ts +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/primitive-value-list-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/query-node.d.ts +61 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/query-node.js +102 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/raw-node.d.ts +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/raw-node.js +28 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/reference-node.d.ts +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/reference-node.js +27 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/references-node.d.ts +24 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/references-node.js +38 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/refresh-materialized-view-node.d.ts +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/refresh-materialized-view-node.js +25 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/rename-column-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/rename-column-node.js +20 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/rename-constraint-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/rename-constraint-node.js +20 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/returning-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/returning-node.js +26 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/schemable-identifier-node.d.ts +17 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/schemable-identifier-node.js +26 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/select-all-node.d.ts +13 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/select-all-node.js +17 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/select-modifier-node.d.ts +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/select-modifier-node.js +25 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/select-query-node.d.ts +63 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/select-query-node.js +129 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/selection-node.d.ts +21 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/selection-node.js +32 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/set-operation-node.d.ts +17 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/set-operation-node.js +20 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/simple-reference-expression-node.d.ts +3 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/simple-reference-expression-node.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/table-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/table-node.js +25 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/top-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/top-node.js +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/tuple-node.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/tuple-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/unary-operation-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/unary-operation-node.js +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/unique-constraint-node.d.ts +22 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/unique-constraint-node.js +30 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/update-query-node.d.ts +41 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/update-query-node.js +50 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/using-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/using-node.js +24 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/value-list-node.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/value-list-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/value-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/value-node.js +25 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/values-node.d.ts +17 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/values-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/when-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/when-node.js +24 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/where-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/where-node.js +28 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/with-node.d.ts +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/operation-node/with-node.js +25 -0
- package/dist/server/node_modules/kysely/dist/cjs/package.json +1 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/binary-operation-parser.d.ts +21 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/binary-operation-parser.js +74 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/coalesce-parser.d.ts +12 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/coalesce-parser.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/collate-parser.d.ts +1 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/collate-parser.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/data-type-parser.d.ts +5 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/data-type-parser.js +14 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/default-value-parser.d.ts +4 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/default-value-parser.js +10 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/delete-from-parser.d.ts +9 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/delete-from-parser.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/expression-parser.d.ts +20 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/expression-parser.js +30 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/fetch-parser.d.ts +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/fetch-parser.js +17 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/group-by-parser.d.ts +6 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/group-by-parser.js +11 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/identifier-parser.d.ts +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/identifier-parser.js +22 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/insert-values-parser.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/insert-values-parser.js +64 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/join-parser.d.ts +10 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/join-parser.js +30 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/merge-into-parser.d.ts +7 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/merge-into-parser.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/merge-parser.d.ts +9 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/merge-parser.js +31 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/on-commit-action-parse.d.ts +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/on-commit-action-parse.js +10 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/on-modify-action-parser.d.ts +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/on-modify-action-parser.js +10 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/order-by-parser.d.ts +25 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/order-by-parser.js +71 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/parse-utils.d.ts +10 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/parse-utils.js +38 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/partition-by-parser.d.ts +6 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/partition-by-parser.js +8 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/reference-parser.d.ts +31 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/reference-parser.js +104 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/returning-parser.d.ts +8 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/returning-parser.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/savepoint-parser.d.ts +4 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/savepoint-parser.js +11 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/select-from-parser.d.ts +6 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/select-from-parser.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/select-parser.d.ts +36 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/select-parser.js +50 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/set-operation-parser.d.ts +5 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/set-operation-parser.js +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/table-parser.d.ts +24 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/table-parser.js +54 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/top-parser.d.ts +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/top-parser.js +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/tuple-parser.d.ts +47 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/tuple-parser.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/unary-operation-parser.d.ts +8 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/unary-operation-parser.js +17 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/update-parser.d.ts +9 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/update-parser.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/update-set-parser.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/update-set-parser.js +26 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/value-parser.d.ts +13 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/value-parser.js +38 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/with-parser.d.ts +45 -0
- package/dist/server/node_modules/kysely/dist/cjs/parser/with-parser.js +33 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/camel-case/camel-case-plugin.d.ts +170 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/camel-case/camel-case-plugin.js +122 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/camel-case/camel-case-transformer.d.ts +9 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/camel-case/camel-case-transformer.js +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/camel-case/camel-case.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/camel-case/camel-case.js +111 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/deduplicate-joins/deduplicate-joins-plugin.d.ts +70 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/deduplicate-joins/deduplicate-joins-plugin.js +19 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/deduplicate-joins/deduplicate-joins-transformer.d.ts +11 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/deduplicate-joins/deduplicate-joins-transformer.js +42 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists-plugin.d.ts +211 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists-plugin.js +162 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists-transformer.d.ts +8 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists-transformer.js +29 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists.d.ts +44 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/handle-empty-in-lists/handle-empty-in-lists.js +66 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/immediate-value/immediate-value-plugin.d.ts +73 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/immediate-value/immediate-value-plugin.js +22 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/immediate-value/immediate-value-transformer.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/immediate-value/immediate-value-transformer.js +23 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/kysely-plugin.d.ts +72 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/kysely-plugin.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/noop-plugin.d.ts +64 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/noop-plugin.js +12 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/parse-json-results/parse-json-results-plugin.d.ts +126 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/parse-json-results/parse-json-results-plugin.js +107 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/with-schema/with-schema-plugin.d.ts +66 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/with-schema/with-schema-plugin.js +17 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/with-schema/with-schema-transformer.d.ts +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/plugin/with-schema/with-schema-transformer.js +200 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/aggregate-function-builder.d.ts +379 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/aggregate-function-builder.js +242 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/case-builder.d.ts +112 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/case-builder.js +79 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/cte-builder.d.ts +20 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/cte-builder.js +37 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/delete-query-builder.d.ts +1348 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/delete-query-builder.js +504 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/delete-result.d.ts +4 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/delete-result.js +10 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/function-module.d.ts +592 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/function-module.js +62 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/having-interface.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/having-interface.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/insert-query-builder.d.ts +1235 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/insert-query-builder.js +1160 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/insert-result.d.ts +46 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/insert-result.js +53 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/join-builder.d.ts +38 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/join-builder.js +51 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/json-path-builder.d.ts +294 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/json-path-builder.js +200 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/merge-query-builder.d.ts +1001 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/merge-query-builder.js +630 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/merge-result.d.ts +4 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/merge-result.js +10 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/no-result-error.d.ts +10 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/no-result-error.js +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/on-conflict-builder.d.ts +872 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/on-conflict-builder.js +259 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/order-by-interface.d.ts +158 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/order-by-interface.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/order-by-item-builder.d.ts +43 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/order-by-item-builder.js +75 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/output-interface.d.ts +138 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/output-interface.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/over-builder.d.ts +101 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/over-builder.js +40 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/returning-interface.d.ts +91 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/returning-interface.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/select-query-builder-expression.d.ts +28 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/select-query-builder-expression.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/select-query-builder.d.ts +2391 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/select-query-builder.js +376 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/update-query-builder.d.ts +1392 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/update-query-builder.js +513 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/update-result.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/update-result.js +21 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/where-interface.d.ts +382 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-builder/where-interface.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-compiler/compiled-query.d.ts +13 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-compiler/compiled-query.js +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-compiler/default-query-compiler.d.ts +235 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-compiler/default-query-compiler.js +1396 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-compiler/query-compiler.d.ts +24 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-compiler/query-compiler.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-creator.d.ts +592 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-creator.js +622 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-executor/default-query-executor.d.ts +50 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-executor/default-query-executor.js +40 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-executor/noop-query-executor.d.ts +50 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-executor/noop-query-executor.js +37 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-executor/query-executor-base.d.ts +68 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-executor/query-executor-base.js +62 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-executor/query-executor-provider.d.ts +8 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-executor/query-executor-provider.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-executor/query-executor.d.ts +74 -0
- package/dist/server/node_modules/kysely/dist/cjs/query-executor/query-executor.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/raw-builder/raw-builder.d.ts +218 -0
- package/dist/server/node_modules/kysely/dist/cjs/raw-builder/raw-builder.js +86 -0
- package/dist/server/node_modules/kysely/dist/cjs/raw-builder/sql.d.ts +366 -0
- package/dist/server/node_modules/kysely/dist/cjs/raw-builder/sql.js +84 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/alter-column-builder.d.ts +53 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/alter-column-builder.js +74 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/alter-table-add-foreign-key-constraint-builder.d.ts +32 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/alter-table-add-foreign-key-constraint-builder.js +67 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/alter-table-add-index-builder.d.ts +138 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/alter-table-add-index-builder.js +165 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/alter-table-builder.d.ts +148 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/alter-table-builder.js +267 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/alter-table-drop-constraint-builder.d.ts +26 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/alter-table-drop-constraint-builder.js +59 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/alter-table-executor.d.ts +18 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/alter-table-executor.js +20 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/check-constraint-builder.d.ts +13 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/check-constraint-builder.js +20 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/column-definition-builder.d.ts +514 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/column-definition-builder.js +600 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/create-index-builder.d.ts +173 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/create-index-builder.js +202 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/create-schema-builder.d.ts +24 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/create-schema-builder.js +34 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/create-table-builder.d.ts +331 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/create-table-builder.js +411 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/create-type-builder.d.ts +33 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/create-type-builder.js +43 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/create-view-builder.d.ts +48 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/create-view-builder.js +98 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/drop-index-builder.d.ts +30 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/drop-index-builder.js +57 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/drop-schema-builder.d.ts +25 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/drop-schema-builder.js +44 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/drop-table-builder.d.ts +25 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/drop-table-builder.js +44 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/drop-type-builder.d.ts +24 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/drop-type-builder.js +36 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/drop-view-builder.d.ts +26 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/drop-view-builder.js +52 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/foreign-key-constraint-builder.d.ts +28 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/foreign-key-constraint-builder.js +48 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/primary-key-constraint-builder.d.ts +17 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/primary-key-constraint-builder.js +37 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/refresh-materialized-view-builder.d.ts +47 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/refresh-materialized-view-builder.js +75 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/schema.d.ts +230 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/schema.js +328 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/unique-constraint-builder.d.ts +23 -0
- package/dist/server/node_modules/kysely/dist/cjs/schema/unique-constraint-builder.js +45 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/assert.d.ts +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/assert.js +14 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/column-type.d.ts +175 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/column-type.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/compilable.d.ts +5 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/compilable.js +7 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/deferred.d.ts +7 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/deferred.js +28 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/explainable.d.ts +40 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/explainable.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/infer-result.d.ts +48 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/infer-result.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/json-object-args.d.ts +3 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/json-object-args.js +34 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/log-once.d.ts +5 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/log-once.js +15 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/log.d.ts +28 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/log.js +59 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/object-utils.d.ts +23 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/object-utils.js +162 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/performance-now.d.ts +1 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/performance-now.js +12 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/provide-controlled-connection.d.ts +7 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/provide-controlled-connection.js +24 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/query-id.d.ts +4 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/query-id.js +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/random-string.d.ts +1 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/random-string.js +77 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/require-all-props.d.ts +45 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/require-all-props.js +41 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/stack-trace-utils.d.ts +1 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/stack-trace-utils.js +16 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/streamable.d.ts +29 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/streamable.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/type-error.d.ts +3 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/type-error.js +2 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/type-utils.d.ts +189 -0
- package/dist/server/node_modules/kysely/dist/cjs/util/type-utils.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/database-introspector.d.ts +62 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/database-introspector.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/dialect-adapter-base.d.ts +94 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/dialect-adapter-base.js +21 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/dialect-adapter.d.ts +115 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/dialect-adapter.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/dialect.d.ts +34 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/dialect.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mssql/mssql-adapter.d.ts +83 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mssql/mssql-adapter.js +25 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mssql/mssql-dialect-config.d.ts +181 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mssql/mssql-dialect-config.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mssql/mssql-dialect.d.ts +70 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mssql/mssql-dialect.js +62 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mssql/mssql-driver.d.ts +59 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mssql/mssql-driver.js +356 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mssql/mssql-introspector.d.ts +20 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mssql/mssql-introspector.js +107 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mssql/mssql-query-compiler.d.ts +17 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mssql/mssql-query-compiler.js +80 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mysql/mysql-adapter.d.ts +80 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mysql/mysql-adapter.js +25 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mysql/mysql-dialect-config.d.ts +56 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mysql/mysql-dialect-config.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mysql/mysql-dialect.d.ts +61 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mysql/mysql-dialect.js +53 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mysql/mysql-driver.d.ts +52 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mysql/mysql-driver.js +177 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mysql/mysql-introspector.d.ts +20 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mysql/mysql-introspector.js +76 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mysql/mysql-query-compiler.d.ts +13 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/mysql/mysql-query-compiler.js +57 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/postgres/postgres-adapter.d.ts +80 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/postgres/postgres-adapter.js +22 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/postgres/postgres-dialect-config.d.ts +68 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/postgres/postgres-dialect-config.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/postgres/postgres-dialect.d.ts +61 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/postgres/postgres-dialect.js +53 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/postgres/postgres-driver.d.ts +55 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/postgres/postgres-driver.js +131 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/postgres/postgres-introspector.d.ts +20 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/postgres/postgres-introspector.js +97 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/postgres/postgres-query-compiler.d.ts +4 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/postgres/postgres-query-compiler.js +8 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-adapter.d.ts +80 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-adapter.js +20 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-dialect-config.d.ts +41 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-dialect-config.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-dialect.d.ts +55 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-dialect.js +48 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-driver.d.ts +42 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-driver.js +110 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-introspector.d.ts +20 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-introspector.js +91 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-query-compiler.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/esm/dialect/sqlite/sqlite-query-compiler.js +34 -0
- package/dist/server/node_modules/kysely/dist/esm/driver/connection-provider.d.ts +8 -0
- package/dist/server/node_modules/kysely/dist/esm/driver/connection-provider.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/driver/database-connection.d.ts +35 -0
- package/dist/server/node_modules/kysely/dist/esm/driver/database-connection.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/driver/default-connection-provider.d.ts +12 -0
- package/dist/server/node_modules/kysely/dist/esm/driver/default-connection-provider.js +16 -0
- package/dist/server/node_modules/kysely/dist/esm/driver/driver.d.ts +61 -0
- package/dist/server/node_modules/kysely/dist/esm/driver/driver.js +19 -0
- package/dist/server/node_modules/kysely/dist/esm/driver/dummy-driver.d.ts +75 -0
- package/dist/server/node_modules/kysely/dist/esm/driver/dummy-driver.js +80 -0
- package/dist/server/node_modules/kysely/dist/esm/driver/runtime-driver.d.ts +47 -0
- package/dist/server/node_modules/kysely/dist/esm/driver/runtime-driver.js +162 -0
- package/dist/server/node_modules/kysely/dist/esm/driver/single-connection-provider.d.ts +11 -0
- package/dist/server/node_modules/kysely/dist/esm/driver/single-connection-provider.js +26 -0
- package/dist/server/node_modules/kysely/dist/esm/dynamic/dynamic-reference-builder.d.ts +18 -0
- package/dist/server/node_modules/kysely/dist/esm/dynamic/dynamic-reference-builder.js +32 -0
- package/dist/server/node_modules/kysely/dist/esm/dynamic/dynamic-table-builder.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/esm/dynamic/dynamic-table-builder.js +41 -0
- package/dist/server/node_modules/kysely/dist/esm/dynamic/dynamic.d.ts +124 -0
- package/dist/server/node_modules/kysely/dist/esm/dynamic/dynamic.js +129 -0
- package/dist/server/node_modules/kysely/dist/esm/expression/expression-builder.d.ts +920 -0
- package/dist/server/node_modules/kysely/dist/esm/expression/expression-builder.js +125 -0
- package/dist/server/node_modules/kysely/dist/esm/expression/expression-wrapper.d.ts +631 -0
- package/dist/server/node_modules/kysely/dist/esm/expression/expression-wrapper.js +128 -0
- package/dist/server/node_modules/kysely/dist/esm/expression/expression.d.ts +198 -0
- package/dist/server/node_modules/kysely/dist/esm/expression/expression.js +12 -0
- package/dist/server/node_modules/kysely/dist/esm/helpers/mssql.d.ts +212 -0
- package/dist/server/node_modules/kysely/dist/esm/helpers/mssql.js +215 -0
- package/dist/server/node_modules/kysely/dist/esm/helpers/mysql.d.ts +147 -0
- package/dist/server/node_modules/kysely/dist/esm/helpers/mysql.js +158 -0
- package/dist/server/node_modules/kysely/dist/esm/helpers/postgres.d.ts +199 -0
- package/dist/server/node_modules/kysely/dist/esm/helpers/postgres.js +203 -0
- package/dist/server/node_modules/kysely/dist/esm/helpers/sqlite.d.ts +189 -0
- package/dist/server/node_modules/kysely/dist/esm/helpers/sqlite.js +200 -0
- package/dist/server/node_modules/kysely/dist/esm/index.d.ts +224 -0
- package/dist/server/node_modules/kysely/dist/esm/index.js +212 -0
- package/dist/server/node_modules/kysely/dist/esm/kysely.d.ts +848 -0
- package/dist/server/node_modules/kysely/dist/esm/kysely.js +914 -0
- package/dist/server/node_modules/kysely/dist/esm/migration/file-migration-provider.d.ts +48 -0
- package/dist/server/node_modules/kysely/dist/esm/migration/file-migration-provider.js +49 -0
- package/dist/server/node_modules/kysely/dist/esm/migration/migrator.d.ts +395 -0
- package/dist/server/node_modules/kysely/dist/esm/migration/migrator.js +601 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/add-column-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/add-column-node.js +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/add-constraint-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/add-constraint-node.js +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/add-index-node.d.ts +23 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/add-index-node.js +29 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/aggregate-function-node.d.ts +29 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/aggregate-function-node.js +56 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/alias-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/alias-node.js +17 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/alter-column-node.d.ts +23 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/alter-column-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/alter-table-node.d.ts +38 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/alter-table-node.js +30 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/and-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/and-node.js +17 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/binary-operation-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/binary-operation-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/case-node.d.ts +21 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/case-node.js +40 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/cast-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/cast-node.js +17 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/check-constraint-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/check-constraint-node.js +20 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/collate-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/collate-node.js +17 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/column-definition-node.d.ts +38 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/column-definition-node.js +40 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/column-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/column-node.js +17 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/column-update-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/column-update-node.js +17 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/common-table-expression-name-node.d.ts +17 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/common-table-expression-name-node.js +21 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/common-table-expression-node.d.ts +19 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/common-table-expression-node.js +23 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/constraint-node.d.ts +5 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/constraint-node.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/create-index-node.d.ts +29 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/create-index-node.js +29 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/create-schema-node.d.ts +18 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/create-schema-node.js +24 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/create-table-node.d.ts +34 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/create-table-node.js +54 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/create-type-node.d.ts +19 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/create-type-node.js +24 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/create-view-node.d.ts +26 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/create-view-node.js +23 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/data-type-node.d.ts +19 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/data-type-node.js +83 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/default-insert-value-node.d.ts +13 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/default-insert-value-node.js +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/default-value-node.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/default-value-node.js +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/delete-query-node.d.ts +42 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/delete-query-node.js +50 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/drop-column-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/drop-column-node.js +17 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/drop-constraint-node.d.ts +19 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/drop-constraint-node.js +23 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/drop-index-node.d.ts +21 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/drop-index-node.js +24 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/drop-schema-node.d.ts +19 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/drop-schema-node.js +24 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/drop-table-node.d.ts +19 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/drop-table-node.js +23 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/drop-type-node.d.ts +18 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/drop-type-node.js +22 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/drop-view-node.d.ts +20 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/drop-view-node.js +23 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/explain-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/explain-node.js +17 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/fetch-node.d.ts +17 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/fetch-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/foreign-key-constraint-node.d.ts +26 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/foreign-key-constraint-node.js +28 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/from-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/from-node.js +22 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/function-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/function-node.js +17 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/generated-node.d.ts +21 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/generated-node.js +29 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/group-by-item-node.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/group-by-item-node.js +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/group-by-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/group-by-node.js +22 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/having-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/having-node.js +26 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/identifier-node.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/identifier-node.js +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/insert-query-node.d.ts +42 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/insert-query-node.js +29 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/join-node.d.ts +20 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/join-node.js +35 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/json-operator-chain-node.d.ts +18 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/json-operator-chain-node.js +23 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/json-path-leg-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/json-path-leg-node.js +17 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/json-path-node.d.ts +18 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/json-path-node.js +23 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/json-reference-node.d.ts +19 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/json-reference-node.js +23 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/limit-node.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/limit-node.js +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/list-node.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/list-node.js +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/matched-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/matched-node.js +17 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/merge-query-node.d.ts +32 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/merge-query-node.js +43 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/modify-column-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/modify-column-node.js +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/offset-node.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/offset-node.js +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/on-conflict-node.d.ts +32 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/on-conflict-node.js +66 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/on-duplicate-key-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/on-duplicate-key-node.js +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/on-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/on-node.js +26 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/operation-node-source.d.ts +5 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/operation-node-source.js +5 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/operation-node-transformer.d.ts +238 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/operation-node-transformer.js +926 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/operation-node-visitor.d.ts +201 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/operation-node-visitor.js +112 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/operation-node.d.ts +4 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/operation-node.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/operator-node.d.ts +34 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/operator-node.js +100 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/or-action-node.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/or-action-node.js +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/or-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/or-node.js +17 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/order-by-item-node.d.ts +20 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/order-by-item-node.js +23 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/order-by-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/order-by-node.js +22 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/output-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/output-node.js +24 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/over-node.d.ts +21 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/over-node.js +33 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/parens-node.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/parens-node.js +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/partition-by-item-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/partition-by-item-node.js +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/partition-by-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/partition-by-node.js +22 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/primary-key-constraint-node.d.ts +31 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/primary-key-constraint-node.js +30 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/primitive-value-list-node.d.ts +19 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/primitive-value-list-node.js +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/query-node.d.ts +61 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/query-node.js +100 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/raw-node.d.ts +18 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/raw-node.js +26 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/reference-node.d.ts +19 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/reference-node.js +25 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/references-node.d.ts +24 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/references-node.js +36 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/refresh-materialized-view-node.d.ts +19 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/refresh-materialized-view-node.js +23 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/rename-column-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/rename-column-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/rename-constraint-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/rename-constraint-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/returning-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/returning-node.js +24 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/schemable-identifier-node.d.ts +17 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/schemable-identifier-node.js +24 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/select-all-node.d.ts +13 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/select-all-node.js +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/select-modifier-node.d.ts +18 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/select-modifier-node.js +23 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/select-query-node.d.ts +63 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/select-query-node.js +127 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/selection-node.d.ts +21 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/selection-node.js +30 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/set-operation-node.d.ts +17 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/set-operation-node.js +18 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/simple-reference-expression-node.d.ts +3 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/simple-reference-expression-node.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/table-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/table-node.js +23 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/top-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/top-node.js +17 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/tuple-node.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/tuple-node.js +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/unary-operation-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/unary-operation-node.js +17 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/unique-constraint-node.d.ts +22 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/unique-constraint-node.js +28 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/update-query-node.d.ts +41 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/update-query-node.js +48 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/using-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/using-node.js +22 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/value-list-node.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/value-list-node.js +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/value-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/value-node.js +23 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/values-node.d.ts +17 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/values-node.js +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/when-node.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/when-node.js +22 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/where-node.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/where-node.js +26 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/with-node.d.ts +18 -0
- package/dist/server/node_modules/kysely/dist/esm/operation-node/with-node.js +23 -0
- package/dist/server/node_modules/kysely/dist/esm/package.json +1 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/binary-operation-parser.d.ts +21 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/binary-operation-parser.js +68 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/coalesce-parser.d.ts +12 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/coalesce-parser.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/collate-parser.d.ts +1 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/collate-parser.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/data-type-parser.d.ts +5 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/data-type-parser.js +12 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/default-value-parser.d.ts +4 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/default-value-parser.js +8 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/delete-from-parser.d.ts +9 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/delete-from-parser.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/expression-parser.d.ts +20 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/expression-parser.js +26 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/fetch-parser.d.ts +2 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/fetch-parser.js +15 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/group-by-parser.d.ts +6 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/group-by-parser.js +9 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/identifier-parser.d.ts +2 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/identifier-parser.js +20 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/insert-values-parser.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/insert-values-parser.js +62 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/join-parser.d.ts +10 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/join-parser.js +28 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/merge-into-parser.d.ts +7 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/merge-into-parser.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/merge-parser.d.ts +9 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/merge-parser.js +28 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/on-commit-action-parse.d.ts +2 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/on-commit-action-parse.js +8 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/on-modify-action-parser.d.ts +2 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/on-modify-action-parser.js +8 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/order-by-parser.d.ts +25 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/order-by-parser.js +67 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/parse-utils.d.ts +10 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/parse-utils.js +33 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/partition-by-parser.d.ts +6 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/partition-by-parser.js +6 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/reference-parser.d.ts +31 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/reference-parser.js +95 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/returning-parser.d.ts +8 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/returning-parser.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/savepoint-parser.d.ts +4 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/savepoint-parser.js +9 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/select-from-parser.d.ts +6 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/select-from-parser.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/select-parser.d.ts +36 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/select-parser.js +47 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/set-operation-parser.d.ts +5 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/set-operation-parser.js +14 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/table-parser.d.ts +24 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/table-parser.js +49 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/top-parser.d.ts +2 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/top-parser.js +17 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/tuple-parser.d.ts +47 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/tuple-parser.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/unary-operation-parser.d.ts +8 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/unary-operation-parser.js +13 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/update-parser.d.ts +9 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/update-parser.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/update-set-parser.d.ts +16 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/update-set-parser.js +23 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/value-parser.d.ts +13 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/value-parser.js +33 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/with-parser.d.ts +45 -0
- package/dist/server/node_modules/kysely/dist/esm/parser/with-parser.js +31 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/camel-case/camel-case-plugin.d.ts +170 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/camel-case/camel-case-plugin.js +119 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/camel-case/camel-case-transformer.d.ts +9 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/camel-case/camel-case-transformer.js +16 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/camel-case/camel-case.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/camel-case/camel-case.js +108 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/deduplicate-joins/deduplicate-joins-plugin.d.ts +70 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/deduplicate-joins/deduplicate-joins-plugin.js +16 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/deduplicate-joins/deduplicate-joins-transformer.d.ts +11 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/deduplicate-joins/deduplicate-joins-transformer.js +39 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists-plugin.d.ts +211 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists-plugin.js +159 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists-transformer.d.ts +8 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists-transformer.js +26 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists.d.ts +44 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/handle-empty-in-lists/handle-empty-in-lists.js +63 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/immediate-value/immediate-value-plugin.d.ts +73 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/immediate-value/immediate-value-plugin.js +19 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/immediate-value/immediate-value-transformer.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/immediate-value/immediate-value-transformer.js +20 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/kysely-plugin.d.ts +72 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/kysely-plugin.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/noop-plugin.d.ts +64 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/noop-plugin.js +9 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/parse-json-results/parse-json-results-plugin.d.ts +126 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/parse-json-results/parse-json-results-plugin.js +104 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/with-schema/with-schema-plugin.d.ts +66 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/with-schema/with-schema-plugin.js +14 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/with-schema/with-schema-transformer.d.ts +18 -0
- package/dist/server/node_modules/kysely/dist/esm/plugin/with-schema/with-schema-transformer.js +197 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/aggregate-function-builder.d.ts +379 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/aggregate-function-builder.js +238 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/case-builder.d.ts +112 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/case-builder.js +73 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/cte-builder.d.ts +20 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/cte-builder.js +34 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/delete-query-builder.d.ts +1348 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/delete-query-builder.js +501 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/delete-result.d.ts +4 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/delete-result.js +7 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/function-module.d.ts +592 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/function-module.js +60 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/having-interface.d.ts +15 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/having-interface.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/insert-query-builder.d.ts +1235 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/insert-query-builder.js +1157 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/insert-result.d.ts +46 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/insert-result.js +50 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/join-builder.d.ts +38 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/join-builder.js +48 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/json-path-builder.d.ts +294 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/json-path-builder.js +195 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/merge-query-builder.d.ts +1001 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/merge-query-builder.js +624 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/merge-result.d.ts +4 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/merge-result.js +7 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/no-result-error.d.ts +10 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/no-result-error.js +14 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/on-conflict-builder.d.ts +872 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/on-conflict-builder.js +254 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/order-by-interface.d.ts +158 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/order-by-interface.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/order-by-item-builder.d.ts +43 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/order-by-item-builder.js +72 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/output-interface.d.ts +138 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/output-interface.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/over-builder.d.ts +101 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/over-builder.js +37 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/returning-interface.d.ts +91 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/returning-interface.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/select-query-builder-expression.d.ts +28 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/select-query-builder-expression.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/select-query-builder.d.ts +2391 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/select-query-builder.js +374 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/update-query-builder.d.ts +1392 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/update-query-builder.js +510 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/update-result.d.ts +14 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/update-result.js +18 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/where-interface.d.ts +382 -0
- package/dist/server/node_modules/kysely/dist/esm/query-builder/where-interface.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/query-compiler/compiled-query.d.ts +13 -0
- package/dist/server/node_modules/kysely/dist/esm/query-compiler/compiled-query.js +14 -0
- package/dist/server/node_modules/kysely/dist/esm/query-compiler/default-query-compiler.d.ts +235 -0
- package/dist/server/node_modules/kysely/dist/esm/query-compiler/default-query-compiler.js +1393 -0
- package/dist/server/node_modules/kysely/dist/esm/query-compiler/query-compiler.d.ts +24 -0
- package/dist/server/node_modules/kysely/dist/esm/query-compiler/query-compiler.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/query-creator.d.ts +592 -0
- package/dist/server/node_modules/kysely/dist/esm/query-creator.js +619 -0
- package/dist/server/node_modules/kysely/dist/esm/query-executor/default-query-executor.d.ts +50 -0
- package/dist/server/node_modules/kysely/dist/esm/query-executor/default-query-executor.js +37 -0
- package/dist/server/node_modules/kysely/dist/esm/query-executor/noop-query-executor.d.ts +50 -0
- package/dist/server/node_modules/kysely/dist/esm/query-executor/noop-query-executor.js +34 -0
- package/dist/server/node_modules/kysely/dist/esm/query-executor/query-executor-base.d.ts +68 -0
- package/dist/server/node_modules/kysely/dist/esm/query-executor/query-executor-base.js +59 -0
- package/dist/server/node_modules/kysely/dist/esm/query-executor/query-executor-provider.d.ts +8 -0
- package/dist/server/node_modules/kysely/dist/esm/query-executor/query-executor-provider.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/query-executor/query-executor.d.ts +74 -0
- package/dist/server/node_modules/kysely/dist/esm/query-executor/query-executor.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/raw-builder/raw-builder.d.ts +218 -0
- package/dist/server/node_modules/kysely/dist/esm/raw-builder/raw-builder.js +84 -0
- package/dist/server/node_modules/kysely/dist/esm/raw-builder/sql.d.ts +366 -0
- package/dist/server/node_modules/kysely/dist/esm/raw-builder/sql.js +82 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/alter-column-builder.d.ts +53 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/alter-column-builder.js +70 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/alter-table-add-foreign-key-constraint-builder.d.ts +32 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/alter-table-add-foreign-key-constraint-builder.js +64 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/alter-table-add-index-builder.d.ts +138 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/alter-table-add-index-builder.js +162 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/alter-table-builder.d.ts +148 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/alter-table-builder.js +263 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/alter-table-drop-constraint-builder.d.ts +26 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/alter-table-drop-constraint-builder.js +56 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/alter-table-executor.d.ts +18 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/alter-table-executor.js +17 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/check-constraint-builder.d.ts +13 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/check-constraint-builder.js +17 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/column-definition-builder.d.ts +514 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/column-definition-builder.js +597 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/create-index-builder.d.ts +173 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/create-index-builder.js +199 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/create-schema-builder.d.ts +24 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/create-schema-builder.js +31 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/create-table-builder.d.ts +331 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/create-table-builder.js +408 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/create-type-builder.d.ts +33 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/create-type-builder.js +40 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/create-view-builder.d.ts +48 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/create-view-builder.js +95 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/drop-index-builder.d.ts +30 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/drop-index-builder.js +54 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/drop-schema-builder.d.ts +25 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/drop-schema-builder.js +41 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/drop-table-builder.d.ts +25 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/drop-table-builder.js +41 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/drop-type-builder.d.ts +24 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/drop-type-builder.js +33 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/drop-view-builder.d.ts +26 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/drop-view-builder.js +49 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/foreign-key-constraint-builder.d.ts +28 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/foreign-key-constraint-builder.js +45 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/primary-key-constraint-builder.d.ts +17 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/primary-key-constraint-builder.js +34 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/refresh-materialized-view-builder.d.ts +47 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/refresh-materialized-view-builder.js +72 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/schema.d.ts +230 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/schema.js +325 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/unique-constraint-builder.d.ts +23 -0
- package/dist/server/node_modules/kysely/dist/esm/schema/unique-constraint-builder.js +42 -0
- package/dist/server/node_modules/kysely/dist/esm/util/assert.d.ts +2 -0
- package/dist/server/node_modules/kysely/dist/esm/util/assert.js +11 -0
- package/dist/server/node_modules/kysely/dist/esm/util/column-type.d.ts +175 -0
- package/dist/server/node_modules/kysely/dist/esm/util/column-type.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/util/compilable.d.ts +5 -0
- package/dist/server/node_modules/kysely/dist/esm/util/compilable.js +5 -0
- package/dist/server/node_modules/kysely/dist/esm/util/deferred.d.ts +7 -0
- package/dist/server/node_modules/kysely/dist/esm/util/deferred.js +25 -0
- package/dist/server/node_modules/kysely/dist/esm/util/explainable.d.ts +40 -0
- package/dist/server/node_modules/kysely/dist/esm/util/explainable.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/util/infer-result.d.ts +48 -0
- package/dist/server/node_modules/kysely/dist/esm/util/infer-result.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/util/json-object-args.d.ts +3 -0
- package/dist/server/node_modules/kysely/dist/esm/util/json-object-args.js +32 -0
- package/dist/server/node_modules/kysely/dist/esm/util/log-once.d.ts +5 -0
- package/dist/server/node_modules/kysely/dist/esm/util/log-once.js +13 -0
- package/dist/server/node_modules/kysely/dist/esm/util/log.d.ts +28 -0
- package/dist/server/node_modules/kysely/dist/esm/util/log.js +56 -0
- package/dist/server/node_modules/kysely/dist/esm/util/object-utils.d.ts +23 -0
- package/dist/server/node_modules/kysely/dist/esm/util/object-utils.js +141 -0
- package/dist/server/node_modules/kysely/dist/esm/util/performance-now.d.ts +1 -0
- package/dist/server/node_modules/kysely/dist/esm/util/performance-now.js +10 -0
- package/dist/server/node_modules/kysely/dist/esm/util/provide-controlled-connection.d.ts +7 -0
- package/dist/server/node_modules/kysely/dist/esm/util/provide-controlled-connection.js +22 -0
- package/dist/server/node_modules/kysely/dist/esm/util/query-id.d.ts +4 -0
- package/dist/server/node_modules/kysely/dist/esm/util/query-id.js +14 -0
- package/dist/server/node_modules/kysely/dist/esm/util/random-string.d.ts +1 -0
- package/dist/server/node_modules/kysely/dist/esm/util/random-string.js +75 -0
- package/dist/server/node_modules/kysely/dist/esm/util/require-all-props.d.ts +45 -0
- package/dist/server/node_modules/kysely/dist/esm/util/require-all-props.js +39 -0
- package/dist/server/node_modules/kysely/dist/esm/util/stack-trace-utils.d.ts +1 -0
- package/dist/server/node_modules/kysely/dist/esm/util/stack-trace-utils.js +14 -0
- package/dist/server/node_modules/kysely/dist/esm/util/streamable.d.ts +29 -0
- package/dist/server/node_modules/kysely/dist/esm/util/streamable.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/util/type-error.d.ts +3 -0
- package/dist/server/node_modules/kysely/dist/esm/util/type-error.js +2 -0
- package/dist/server/node_modules/kysely/dist/esm/util/type-utils.d.ts +189 -0
- package/dist/server/node_modules/kysely/dist/esm/util/type-utils.js +2 -0
- package/dist/server/node_modules/kysely/helpers/mssql.d.ts +1 -0
- package/dist/server/node_modules/kysely/helpers/mssql.js +1 -0
- package/dist/server/node_modules/kysely/helpers/mysql.d.ts +1 -0
- package/dist/server/node_modules/kysely/helpers/mysql.js +1 -0
- package/dist/server/node_modules/kysely/helpers/postgres.d.ts +1 -0
- package/dist/server/node_modules/kysely/helpers/postgres.js +1 -0
- package/dist/server/node_modules/kysely/helpers/sqlite.d.ts +1 -0
- package/dist/server/node_modules/kysely/helpers/sqlite.js +1 -0
- package/dist/server/node_modules/kysely/outdated-typescript.d.ts +5 -0
- package/dist/server/node_modules/kysely/package.json +143 -0
- package/dist/server/node_modules/kysely-bun-worker/LICENSE +21 -0
- package/dist/server/node_modules/kysely-bun-worker/README.md +32 -0
- package/dist/server/node_modules/kysely-bun-worker/dist/index.d.mts +35 -0
- package/dist/server/node_modules/kysely-bun-worker/dist/index.d.ts +35 -0
- package/dist/server/node_modules/kysely-bun-worker/dist/index.js +136 -0
- package/dist/server/node_modules/kysely-bun-worker/dist/index.mjs +132 -0
- package/dist/server/node_modules/kysely-bun-worker/dist/worker.d.mts +2 -0
- package/dist/server/node_modules/kysely-bun-worker/dist/worker.d.ts +2 -0
- package/dist/server/node_modules/kysely-bun-worker/dist/worker.js +49 -0
- package/dist/server/node_modules/kysely-bun-worker/dist/worker.mjs +43 -0
- package/dist/server/node_modules/kysely-bun-worker/package.json +43 -0
- package/dist/server/server.js +1152 -0
- package/package.json +128 -0
|
@@ -0,0 +1,2391 @@
|
|
|
1
|
+
import type { CompiledQuery } from '../query-compiler/compiled-query.js';
|
|
2
|
+
import { type JoinCallbackExpression, type JoinReferenceExpression } from '../parser/join-parser.js';
|
|
3
|
+
import { type TableExpression } from '../parser/table-parser.js';
|
|
4
|
+
import { type SelectExpression, type Selection, type AllSelection, type SelectCallback, type CallbackSelection } from '../parser/select-parser.js';
|
|
5
|
+
import { type ReferenceExpression } from '../parser/reference-parser.js';
|
|
6
|
+
import { SelectQueryNode } from '../operation-node/select-query-node.js';
|
|
7
|
+
import { QueryNode } from '../operation-node/query-node.js';
|
|
8
|
+
import type { DrainOuterGeneric, NarrowPartial, Nullable, ShallowRecord, Simplify, SimplifySingleResult, SqlBool } from '../util/type-utils.js';
|
|
9
|
+
import { type DirectedOrderByStringReference, type OrderByExpression, type OrderByModifiers } from '../parser/order-by-parser.js';
|
|
10
|
+
import type { Compilable } from '../util/compilable.js';
|
|
11
|
+
import type { QueryExecutor } from '../query-executor/query-executor.js';
|
|
12
|
+
import type { QueryId } from '../util/query-id.js';
|
|
13
|
+
import { type GroupByArg } from '../parser/group-by-parser.js';
|
|
14
|
+
import type { KyselyPlugin } from '../plugin/kysely-plugin.js';
|
|
15
|
+
import type { WhereInterface } from './where-interface.js';
|
|
16
|
+
import { type NoResultErrorConstructor } from './no-result-error.js';
|
|
17
|
+
import type { HavingInterface } from './having-interface.js';
|
|
18
|
+
import type { Explainable, ExplainFormat } from '../util/explainable.js';
|
|
19
|
+
import { type SetOperandExpression } from '../parser/set-operation-parser.js';
|
|
20
|
+
import type { AliasedExpression, Expression } from '../expression/expression.js';
|
|
21
|
+
import { type ComparisonOperatorExpression, type OperandValueExpressionOrList } from '../parser/binary-operation-parser.js';
|
|
22
|
+
import type { KyselyTypeError } from '../util/type-error.js';
|
|
23
|
+
import type { Selectable } from '../util/column-type.js';
|
|
24
|
+
import type { Streamable } from '../util/streamable.js';
|
|
25
|
+
import type { ExpressionOrFactory } from '../parser/expression-parser.js';
|
|
26
|
+
import { ExpressionWrapper } from '../expression/expression-wrapper.js';
|
|
27
|
+
import type { SelectQueryBuilderExpression } from './select-query-builder-expression.js';
|
|
28
|
+
import { type ValueExpression } from '../parser/value-parser.js';
|
|
29
|
+
import type { FetchModifier } from '../operation-node/fetch-node.js';
|
|
30
|
+
import type { TopModifier } from '../operation-node/top-node.js';
|
|
31
|
+
import type { OrderByInterface } from './order-by-interface.js';
|
|
32
|
+
export interface SelectQueryBuilder<DB, TB extends keyof DB, O> extends WhereInterface<DB, TB>, HavingInterface<DB, TB>, OrderByInterface<DB, TB, O>, SelectQueryBuilderExpression<O>, Compilable<O>, Explainable, Streamable<O> {
|
|
33
|
+
/**
|
|
34
|
+
* Adds a `where` expression to the query.
|
|
35
|
+
*
|
|
36
|
+
* Calling this method multiple times will combine the expressions using `and`.
|
|
37
|
+
*
|
|
38
|
+
* Also see {@link whereRef}
|
|
39
|
+
*
|
|
40
|
+
* ### Examples
|
|
41
|
+
*
|
|
42
|
+
* <!-- siteExample("where", "Simple where clause", 10) -->
|
|
43
|
+
*
|
|
44
|
+
* `where` method calls are combined with `AND`:
|
|
45
|
+
*
|
|
46
|
+
* ```ts
|
|
47
|
+
* const person = await db
|
|
48
|
+
* .selectFrom('person')
|
|
49
|
+
* .selectAll()
|
|
50
|
+
* .where('first_name', '=', 'Jennifer')
|
|
51
|
+
* .where('age', '>', 40)
|
|
52
|
+
* .executeTakeFirst()
|
|
53
|
+
* ```
|
|
54
|
+
*
|
|
55
|
+
* The generated SQL (PostgreSQL):
|
|
56
|
+
*
|
|
57
|
+
* ```sql
|
|
58
|
+
* select * from "person" where "first_name" = $1 and "age" > $2
|
|
59
|
+
* ```
|
|
60
|
+
*
|
|
61
|
+
* Operator can be any supported operator or if the typings don't support it
|
|
62
|
+
* you can always use:
|
|
63
|
+
*
|
|
64
|
+
* ```ts
|
|
65
|
+
* import { sql } from 'kysely'
|
|
66
|
+
*
|
|
67
|
+
* sql`your operator`
|
|
68
|
+
* ```
|
|
69
|
+
*
|
|
70
|
+
* <!-- siteExample("where", "Where in", 20) -->
|
|
71
|
+
*
|
|
72
|
+
* Find multiple items using a list of identifiers:
|
|
73
|
+
*
|
|
74
|
+
* ```ts
|
|
75
|
+
* const persons = await db
|
|
76
|
+
* .selectFrom('person')
|
|
77
|
+
* .selectAll()
|
|
78
|
+
* .where('id', 'in', [1, 2, 3])
|
|
79
|
+
* .execute()
|
|
80
|
+
* ```
|
|
81
|
+
*
|
|
82
|
+
* The generated SQL (PostgreSQL):
|
|
83
|
+
*
|
|
84
|
+
* ```sql
|
|
85
|
+
* select * from "person" where "id" in ($1, $2, $3)
|
|
86
|
+
* ```
|
|
87
|
+
*
|
|
88
|
+
* <!-- siteExample("where", "Object filter", 30) -->
|
|
89
|
+
*
|
|
90
|
+
* You can use the `and` function to create a simple equality
|
|
91
|
+
* filter using an object
|
|
92
|
+
*
|
|
93
|
+
* ```ts
|
|
94
|
+
* const persons = await db
|
|
95
|
+
* .selectFrom('person')
|
|
96
|
+
* .selectAll()
|
|
97
|
+
* .where((eb) => eb.and({
|
|
98
|
+
* first_name: 'Jennifer',
|
|
99
|
+
* last_name: eb.ref('first_name')
|
|
100
|
+
* }))
|
|
101
|
+
* .execute()
|
|
102
|
+
* ```
|
|
103
|
+
*
|
|
104
|
+
* The generated SQL (PostgreSQL):
|
|
105
|
+
*
|
|
106
|
+
* ```sql
|
|
107
|
+
* select *
|
|
108
|
+
* from "person"
|
|
109
|
+
* where (
|
|
110
|
+
* "first_name" = $1
|
|
111
|
+
* and "last_name" = "first_name"
|
|
112
|
+
* )
|
|
113
|
+
* ```
|
|
114
|
+
*
|
|
115
|
+
* <!-- siteExample("where", "OR where", 40) -->
|
|
116
|
+
*
|
|
117
|
+
* To combine conditions using `OR`, you can use the expression builder.
|
|
118
|
+
* There are two ways to create `OR` expressions. Both are shown in this
|
|
119
|
+
* example:
|
|
120
|
+
*
|
|
121
|
+
* ```ts
|
|
122
|
+
* const persons = await db
|
|
123
|
+
* .selectFrom('person')
|
|
124
|
+
* .selectAll()
|
|
125
|
+
* // 1. Using the `or` method on the expression builder:
|
|
126
|
+
* .where((eb) => eb.or([
|
|
127
|
+
* eb('first_name', '=', 'Jennifer'),
|
|
128
|
+
* eb('first_name', '=', 'Sylvester')
|
|
129
|
+
* ]))
|
|
130
|
+
* // 2. Chaining expressions using the `or` method on the
|
|
131
|
+
* // created expressions:
|
|
132
|
+
* .where((eb) =>
|
|
133
|
+
* eb('last_name', '=', 'Aniston').or('last_name', '=', 'Stallone')
|
|
134
|
+
* )
|
|
135
|
+
* .execute()
|
|
136
|
+
* ```
|
|
137
|
+
*
|
|
138
|
+
* The generated SQL (PostgreSQL):
|
|
139
|
+
*
|
|
140
|
+
* ```sql
|
|
141
|
+
* select *
|
|
142
|
+
* from "person"
|
|
143
|
+
* where (
|
|
144
|
+
* ("first_name" = $1 or "first_name" = $2)
|
|
145
|
+
* and
|
|
146
|
+
* ("last_name" = $3 or "last_name" = $4)
|
|
147
|
+
* )
|
|
148
|
+
* ```
|
|
149
|
+
*
|
|
150
|
+
* <!-- siteExample("where", "Conditional where calls", 50) -->
|
|
151
|
+
*
|
|
152
|
+
* You can add expressions conditionally like this:
|
|
153
|
+
*
|
|
154
|
+
* ```ts
|
|
155
|
+
* import { Expression, SqlBool } from 'kysely'
|
|
156
|
+
*
|
|
157
|
+
* const firstName: string | undefined = 'Jennifer'
|
|
158
|
+
* const lastName: string | undefined = 'Aniston'
|
|
159
|
+
* const under18 = true
|
|
160
|
+
* const over60 = true
|
|
161
|
+
*
|
|
162
|
+
* let query = db
|
|
163
|
+
* .selectFrom('person')
|
|
164
|
+
* .selectAll()
|
|
165
|
+
*
|
|
166
|
+
* if (firstName) {
|
|
167
|
+
* // The query builder is immutable. Remember to reassign
|
|
168
|
+
* // the result back to the query variable.
|
|
169
|
+
* query = query.where('first_name', '=', firstName)
|
|
170
|
+
* }
|
|
171
|
+
*
|
|
172
|
+
* if (lastName) {
|
|
173
|
+
* query = query.where('last_name', '=', lastName)
|
|
174
|
+
* }
|
|
175
|
+
*
|
|
176
|
+
* if (under18 || over60) {
|
|
177
|
+
* // Conditional OR expressions can be added like this.
|
|
178
|
+
* query = query.where((eb) => {
|
|
179
|
+
* const ors: Expression<SqlBool>[] = []
|
|
180
|
+
*
|
|
181
|
+
* if (under18) {
|
|
182
|
+
* ors.push(eb('age', '<', 18))
|
|
183
|
+
* }
|
|
184
|
+
*
|
|
185
|
+
* if (over60) {
|
|
186
|
+
* ors.push(eb('age', '>', 60))
|
|
187
|
+
* }
|
|
188
|
+
*
|
|
189
|
+
* return eb.or(ors)
|
|
190
|
+
* })
|
|
191
|
+
* }
|
|
192
|
+
*
|
|
193
|
+
* const persons = await query.execute()
|
|
194
|
+
* ```
|
|
195
|
+
*
|
|
196
|
+
* Both the first and third argument can also be arbitrary expressions like
|
|
197
|
+
* subqueries. An expression can defined by passing a function and calling
|
|
198
|
+
* the methods of the {@link ExpressionBuilder} passed to the callback:
|
|
199
|
+
*
|
|
200
|
+
* ```ts
|
|
201
|
+
* const persons = await db
|
|
202
|
+
* .selectFrom('person')
|
|
203
|
+
* .selectAll()
|
|
204
|
+
* .where(
|
|
205
|
+
* (qb) => qb.selectFrom('pet')
|
|
206
|
+
* .select('pet.name')
|
|
207
|
+
* .whereRef('pet.owner_id', '=', 'person.id')
|
|
208
|
+
* .limit(1),
|
|
209
|
+
* '=',
|
|
210
|
+
* 'Fluffy'
|
|
211
|
+
* )
|
|
212
|
+
* .execute()
|
|
213
|
+
* ```
|
|
214
|
+
*
|
|
215
|
+
* The generated SQL (PostgreSQL):
|
|
216
|
+
*
|
|
217
|
+
* ```sql
|
|
218
|
+
* select *
|
|
219
|
+
* from "person"
|
|
220
|
+
* where (
|
|
221
|
+
* select "pet"."name"
|
|
222
|
+
* from "pet"
|
|
223
|
+
* where "pet"."owner_id" = "person"."id"
|
|
224
|
+
* limit $1
|
|
225
|
+
* ) = $2
|
|
226
|
+
* ```
|
|
227
|
+
*
|
|
228
|
+
* A `where in` query can be built by using the `in` operator and an array
|
|
229
|
+
* of values. The values in the array can also be expressions:
|
|
230
|
+
*
|
|
231
|
+
* ```ts
|
|
232
|
+
* const persons = await db
|
|
233
|
+
* .selectFrom('person')
|
|
234
|
+
* .selectAll()
|
|
235
|
+
* .where('person.id', 'in', [100, 200, 300])
|
|
236
|
+
* .execute()
|
|
237
|
+
* ```
|
|
238
|
+
*
|
|
239
|
+
* The generated SQL (PostgreSQL):
|
|
240
|
+
*
|
|
241
|
+
* ```sql
|
|
242
|
+
* select * from "person" where "id" in ($1, $2, $3)
|
|
243
|
+
* ```
|
|
244
|
+
*
|
|
245
|
+
* <!-- siteExample("where", "Complex where clause", 60) -->
|
|
246
|
+
*
|
|
247
|
+
* For complex `where` expressions you can pass in a single callback and
|
|
248
|
+
* use the `ExpressionBuilder` to build your expression:
|
|
249
|
+
*
|
|
250
|
+
* ```ts
|
|
251
|
+
* const firstName = 'Jennifer'
|
|
252
|
+
* const maxAge = 60
|
|
253
|
+
*
|
|
254
|
+
* const persons = await db
|
|
255
|
+
* .selectFrom('person')
|
|
256
|
+
* .selectAll('person')
|
|
257
|
+
* .where(({ eb, or, and, not, exists, selectFrom }) => and([
|
|
258
|
+
* or([
|
|
259
|
+
* eb('first_name', '=', firstName),
|
|
260
|
+
* eb('age', '<', maxAge)
|
|
261
|
+
* ]),
|
|
262
|
+
* not(exists(
|
|
263
|
+
* selectFrom('pet')
|
|
264
|
+
* .select('pet.id')
|
|
265
|
+
* .whereRef('pet.owner_id', '=', 'person.id')
|
|
266
|
+
* ))
|
|
267
|
+
* ]))
|
|
268
|
+
* .execute()
|
|
269
|
+
* ```
|
|
270
|
+
*
|
|
271
|
+
* The generated SQL (PostgreSQL):
|
|
272
|
+
*
|
|
273
|
+
* ```sql
|
|
274
|
+
* select "person".*
|
|
275
|
+
* from "person"
|
|
276
|
+
* where (
|
|
277
|
+
* (
|
|
278
|
+
* "first_name" = $1
|
|
279
|
+
* or "age" < $2
|
|
280
|
+
* )
|
|
281
|
+
* and not exists (
|
|
282
|
+
* select "pet"."id" from "pet" where "pet"."owner_id" = "person"."id"
|
|
283
|
+
* )
|
|
284
|
+
* )
|
|
285
|
+
* ```
|
|
286
|
+
*
|
|
287
|
+
* If everything else fails, you can always use the {@link sql} tag
|
|
288
|
+
* as any of the arguments, including the operator:
|
|
289
|
+
*
|
|
290
|
+
* ```ts
|
|
291
|
+
* import { sql } from 'kysely'
|
|
292
|
+
*
|
|
293
|
+
* const persons = await db
|
|
294
|
+
* .selectFrom('person')
|
|
295
|
+
* .selectAll()
|
|
296
|
+
* .where(
|
|
297
|
+
* sql<string>`coalesce(first_name, last_name)`,
|
|
298
|
+
* 'like',
|
|
299
|
+
* '%' + name + '%',
|
|
300
|
+
* )
|
|
301
|
+
* .execute()
|
|
302
|
+
* ```
|
|
303
|
+
*
|
|
304
|
+
* The generated SQL (PostgreSQL):
|
|
305
|
+
*
|
|
306
|
+
* ```sql
|
|
307
|
+
* select * from "person"
|
|
308
|
+
* where coalesce(first_name, last_name) like $1
|
|
309
|
+
* ```
|
|
310
|
+
*
|
|
311
|
+
* In all examples above the columns were known at compile time
|
|
312
|
+
* (except for the raw {@link sql} expressions). By default kysely only
|
|
313
|
+
* allows you to refer to columns that exist in the database **and**
|
|
314
|
+
* can be referred to in the current query and context.
|
|
315
|
+
*
|
|
316
|
+
* Sometimes you may want to refer to columns that come from the user
|
|
317
|
+
* input and thus are not available at compile time.
|
|
318
|
+
*
|
|
319
|
+
* You have two options, the {@link sql} tag or `db.dynamic`. The example below
|
|
320
|
+
* uses both:
|
|
321
|
+
*
|
|
322
|
+
* ```ts
|
|
323
|
+
* import { sql } from 'kysely'
|
|
324
|
+
* const { ref } = db.dynamic
|
|
325
|
+
*
|
|
326
|
+
* const columnFromUserInput: string = 'id'
|
|
327
|
+
*
|
|
328
|
+
* const persons = await db
|
|
329
|
+
* .selectFrom('person')
|
|
330
|
+
* .selectAll()
|
|
331
|
+
* .where(ref(columnFromUserInput), '=', 1)
|
|
332
|
+
* .where(sql.id(columnFromUserInput), '=', 2)
|
|
333
|
+
* .execute()
|
|
334
|
+
* ```
|
|
335
|
+
*/
|
|
336
|
+
where<RE extends ReferenceExpression<DB, TB>, VE extends OperandValueExpressionOrList<DB, TB, RE>>(lhs: RE, op: ComparisonOperatorExpression, rhs: VE): SelectQueryBuilder<DB, TB, O>;
|
|
337
|
+
where<E extends ExpressionOrFactory<DB, TB, SqlBool>>(expression: E): SelectQueryBuilder<DB, TB, O>;
|
|
338
|
+
/**
|
|
339
|
+
* Adds a `where` clause where both sides of the operator are references
|
|
340
|
+
* to columns.
|
|
341
|
+
*
|
|
342
|
+
* The normal `where` method treats the right hand side argument as a
|
|
343
|
+
* value by default. `whereRef` treats it as a column reference. This method is
|
|
344
|
+
* expecially useful with joins and correlated subqueries.
|
|
345
|
+
*
|
|
346
|
+
* ### Examples
|
|
347
|
+
*
|
|
348
|
+
* Usage with a join:
|
|
349
|
+
*
|
|
350
|
+
* ```ts
|
|
351
|
+
* db.selectFrom(['person', 'pet'])
|
|
352
|
+
* .selectAll()
|
|
353
|
+
* .whereRef('person.first_name', '=', 'pet.name')
|
|
354
|
+
* ```
|
|
355
|
+
*
|
|
356
|
+
* The generated SQL (PostgreSQL):
|
|
357
|
+
*
|
|
358
|
+
* ```sql
|
|
359
|
+
* select * from "person", "pet" where "person"."first_name" = "pet"."name"
|
|
360
|
+
* ```
|
|
361
|
+
*
|
|
362
|
+
* Usage in a subquery:
|
|
363
|
+
*
|
|
364
|
+
* ```ts
|
|
365
|
+
* const persons = await db
|
|
366
|
+
* .selectFrom('person')
|
|
367
|
+
* .selectAll('person')
|
|
368
|
+
* .select((eb) => eb
|
|
369
|
+
* .selectFrom('pet')
|
|
370
|
+
* .select('name')
|
|
371
|
+
* .whereRef('pet.owner_id', '=', 'person.id')
|
|
372
|
+
* .limit(1)
|
|
373
|
+
* .as('pet_name')
|
|
374
|
+
* )
|
|
375
|
+
* .execute()
|
|
376
|
+
* ```
|
|
377
|
+
*
|
|
378
|
+
* The generated SQL (PostgreSQL):
|
|
379
|
+
*
|
|
380
|
+
* ```sql
|
|
381
|
+
* select "person".*, (
|
|
382
|
+
* select "name"
|
|
383
|
+
* from "pet"
|
|
384
|
+
* where "pet"."owner_id" = "person"."id"
|
|
385
|
+
* limit $1
|
|
386
|
+
* ) as "pet_name"
|
|
387
|
+
* from "person"
|
|
388
|
+
*/
|
|
389
|
+
whereRef<LRE extends ReferenceExpression<DB, TB>, RRE extends ReferenceExpression<DB, TB>>(lhs: LRE, op: ComparisonOperatorExpression, rhs: RRE): SelectQueryBuilder<DB, TB, O>;
|
|
390
|
+
/**
|
|
391
|
+
* Just like {@link WhereInterface.where | where} but adds a `having` statement
|
|
392
|
+
* instead of a `where` statement.
|
|
393
|
+
*/
|
|
394
|
+
having<RE extends ReferenceExpression<DB, TB>, VE extends OperandValueExpressionOrList<DB, TB, RE>>(lhs: RE, op: ComparisonOperatorExpression, rhs: VE): SelectQueryBuilder<DB, TB, O>;
|
|
395
|
+
having<E extends ExpressionOrFactory<DB, TB, SqlBool>>(expression: E): SelectQueryBuilder<DB, TB, O>;
|
|
396
|
+
/**
|
|
397
|
+
* Just like {@link WhereInterface.whereRef | whereRef} but adds a `having` statement
|
|
398
|
+
* instead of a `where` statement.
|
|
399
|
+
*/
|
|
400
|
+
havingRef<LRE extends ReferenceExpression<DB, TB>, RRE extends ReferenceExpression<DB, TB>>(lhs: LRE, op: ComparisonOperatorExpression, rhs: RRE): SelectQueryBuilder<DB, TB, O>;
|
|
401
|
+
/**
|
|
402
|
+
* Adds a select statement to the query.
|
|
403
|
+
*
|
|
404
|
+
* When a column (or any expression) is selected, Kysely adds its type to the return
|
|
405
|
+
* type of the query. Kysely is smart enough to parse the selection names and types
|
|
406
|
+
* from aliased columns, subqueries, raw expressions etc.
|
|
407
|
+
*
|
|
408
|
+
* Kysely only allows you to select columns and expressions that exist and would
|
|
409
|
+
* produce valid SQL. However, Kysely is not perfect and there may be cases where
|
|
410
|
+
* the type inference doesn't work and you need to override it. You can always
|
|
411
|
+
* use the {@link Kysely.dynamic | dynamic} module and the {@link sql} tag
|
|
412
|
+
* to override the types.
|
|
413
|
+
*
|
|
414
|
+
* Select calls are additive. Calling `select('id').select('first_name')` is the
|
|
415
|
+
* same as calling `select(['id', 'first_name'])`.
|
|
416
|
+
*
|
|
417
|
+
* To select all columns of the query or specific tables see the
|
|
418
|
+
* {@link selectAll} method.
|
|
419
|
+
*
|
|
420
|
+
* See the {@link $if} method if you are looking for a way to add selections
|
|
421
|
+
* based on a runtime condition.
|
|
422
|
+
*
|
|
423
|
+
* ### Examples
|
|
424
|
+
*
|
|
425
|
+
* <!-- siteExample("select", "A single column", 10) -->
|
|
426
|
+
*
|
|
427
|
+
* Select a single column:
|
|
428
|
+
*
|
|
429
|
+
* ```ts
|
|
430
|
+
* const persons = await db
|
|
431
|
+
* .selectFrom('person')
|
|
432
|
+
* .select('id')
|
|
433
|
+
* .where('first_name', '=', 'Arnold')
|
|
434
|
+
* .execute()
|
|
435
|
+
* ```
|
|
436
|
+
*
|
|
437
|
+
* The generated SQL (PostgreSQL):
|
|
438
|
+
*
|
|
439
|
+
* ```sql
|
|
440
|
+
* select "id" from "person" where "first_name" = $1
|
|
441
|
+
* ```
|
|
442
|
+
*
|
|
443
|
+
* <!-- siteExample("select", "Column with a table", 20) -->
|
|
444
|
+
*
|
|
445
|
+
* Select a single column and specify a table:
|
|
446
|
+
*
|
|
447
|
+
* ```ts
|
|
448
|
+
* const persons = await db
|
|
449
|
+
* .selectFrom(['person', 'pet'])
|
|
450
|
+
* .select('person.id')
|
|
451
|
+
* .execute()
|
|
452
|
+
* ```
|
|
453
|
+
*
|
|
454
|
+
* The generated SQL (PostgreSQL):
|
|
455
|
+
*
|
|
456
|
+
* ```sql
|
|
457
|
+
* select "person"."id" from "person", "pet"
|
|
458
|
+
* ```
|
|
459
|
+
*
|
|
460
|
+
* <!-- siteExample("select", "Multiple columns", 30) -->
|
|
461
|
+
*
|
|
462
|
+
* Select multiple columns:
|
|
463
|
+
*
|
|
464
|
+
* ```ts
|
|
465
|
+
* const persons = await db
|
|
466
|
+
* .selectFrom('person')
|
|
467
|
+
* .select(['person.id', 'first_name'])
|
|
468
|
+
* .execute()
|
|
469
|
+
* ```
|
|
470
|
+
*
|
|
471
|
+
* The generated SQL (PostgreSQL):
|
|
472
|
+
*
|
|
473
|
+
* ```sql
|
|
474
|
+
* select "person"."id", "first_name" from "person"
|
|
475
|
+
* ```
|
|
476
|
+
*
|
|
477
|
+
* <!-- siteExample("select", "Aliases", 40) -->
|
|
478
|
+
*
|
|
479
|
+
* You can give an alias for selections and tables by appending `as the_alias` to the name:
|
|
480
|
+
*
|
|
481
|
+
* ```ts
|
|
482
|
+
* const persons = await db
|
|
483
|
+
* .selectFrom('person as p')
|
|
484
|
+
* .select([
|
|
485
|
+
* 'first_name as fn',
|
|
486
|
+
* 'p.last_name as ln'
|
|
487
|
+
* ])
|
|
488
|
+
* .execute()
|
|
489
|
+
* ```
|
|
490
|
+
*
|
|
491
|
+
* The generated SQL (PostgreSQL):
|
|
492
|
+
*
|
|
493
|
+
* ```sql
|
|
494
|
+
* select
|
|
495
|
+
* "first_name" as "fn",
|
|
496
|
+
* "p"."last_name" as "ln"
|
|
497
|
+
* from "person" as "p"
|
|
498
|
+
* ```
|
|
499
|
+
*
|
|
500
|
+
* <!-- siteExample("select", "Complex selections", 50) -->
|
|
501
|
+
*
|
|
502
|
+
* You can select arbitrary expression including subqueries and raw sql snippets.
|
|
503
|
+
* When you do that, you need to give a name for the selections using the `as` method:
|
|
504
|
+
*
|
|
505
|
+
* ```ts
|
|
506
|
+
* import { sql } from 'kysely'
|
|
507
|
+
*
|
|
508
|
+
* const persons = await db.selectFrom('person')
|
|
509
|
+
* .select(({ eb, selectFrom, or, val, lit }) => [
|
|
510
|
+
* // Select a correlated subquery
|
|
511
|
+
* selectFrom('pet')
|
|
512
|
+
* .whereRef('person.id', '=', 'pet.owner_id')
|
|
513
|
+
* .select('pet.name')
|
|
514
|
+
* .orderBy('pet.name')
|
|
515
|
+
* .limit(1)
|
|
516
|
+
* .as('first_pet_name'),
|
|
517
|
+
*
|
|
518
|
+
* // Build and select an expression using
|
|
519
|
+
* // the expression builder
|
|
520
|
+
* or([
|
|
521
|
+
* eb('first_name', '=', 'Jennifer'),
|
|
522
|
+
* eb('first_name', '=', 'Arnold')
|
|
523
|
+
* ]).as('is_jennifer_or_arnold'),
|
|
524
|
+
*
|
|
525
|
+
* // Select a raw sql expression
|
|
526
|
+
* sql<string>`concat(first_name, ' ', last_name)`.as('full_name'),
|
|
527
|
+
*
|
|
528
|
+
* // Select a static string value
|
|
529
|
+
* val('Some value').as('string_value'),
|
|
530
|
+
*
|
|
531
|
+
* // Select a literal value
|
|
532
|
+
* lit(42).as('literal_value'),
|
|
533
|
+
* ])
|
|
534
|
+
* .execute()
|
|
535
|
+
* ```
|
|
536
|
+
*
|
|
537
|
+
* The generated SQL (PostgreSQL):
|
|
538
|
+
*
|
|
539
|
+
* ```sql
|
|
540
|
+
* select
|
|
541
|
+
* (
|
|
542
|
+
* select "pet"."name"
|
|
543
|
+
* from "pet"
|
|
544
|
+
* where "person"."id" = "pet"."owner_id"
|
|
545
|
+
* order by "pet"."name"
|
|
546
|
+
* limit $1
|
|
547
|
+
* ) as "pet_name",
|
|
548
|
+
* ("first_name" = $2 or "first_name" = $3) as "jennifer_or_arnold",
|
|
549
|
+
* concat(first_name, ' ', last_name) as "full_name",
|
|
550
|
+
* $4 as "string_value",
|
|
551
|
+
* 42 as "literal_value"
|
|
552
|
+
* from "person"
|
|
553
|
+
* ```
|
|
554
|
+
*
|
|
555
|
+
* In case you use the {@link sql} tag you need to specify the type of the expression
|
|
556
|
+
* (in this example `string`).
|
|
557
|
+
*
|
|
558
|
+
* <!-- siteExample("select", "Not null", 51) -->
|
|
559
|
+
*
|
|
560
|
+
* Sometimes you can be sure something's not null, but Kysely isn't able to infer
|
|
561
|
+
* it. For example calling `where('last_name', 'is not', null)` doesn't make
|
|
562
|
+
* `last_name` not null in the result type, but unless you have other where statements
|
|
563
|
+
* you can be sure it's never null.
|
|
564
|
+
*
|
|
565
|
+
* Kysely has a couple of helpers for dealing with these cases: `$notNull()` and `$narrowType`.
|
|
566
|
+
* Both are used in the following example:
|
|
567
|
+
*
|
|
568
|
+
* ```ts
|
|
569
|
+
* import { NotNull } from 'kysely'
|
|
570
|
+
* import { jsonObjectFrom } from 'kysely/helpers/postgres'
|
|
571
|
+
*
|
|
572
|
+
* const persons = db
|
|
573
|
+
* .selectFrom('person')
|
|
574
|
+
* .select((eb) => [
|
|
575
|
+
* 'last_name',
|
|
576
|
+
* // Let's assume we know the person has at least one
|
|
577
|
+
* // pet. We can use the `.$notNull()` method to make
|
|
578
|
+
* // the expression not null. You could just as well
|
|
579
|
+
* // add `pet` to the `$narrowType` call below.
|
|
580
|
+
* jsonObjectFrom(
|
|
581
|
+
* eb.selectFrom('pet')
|
|
582
|
+
* .selectAll()
|
|
583
|
+
* .limit(1)
|
|
584
|
+
* .whereRef('person.id', '=', 'pet.owner_id')
|
|
585
|
+
* ).$notNull().as('pet')
|
|
586
|
+
* ])
|
|
587
|
+
* .where('last_name', 'is not', null)
|
|
588
|
+
* // $narrowType can be used to narrow the output type.
|
|
589
|
+
* // The special `NotNull` type can be used to make a
|
|
590
|
+
* // selection not null. You could add `pet: NotNull`
|
|
591
|
+
* // here and omit the `$notNull()` call on it.
|
|
592
|
+
* // Use whichever way you prefer.
|
|
593
|
+
* .$narrowType<{ last_name: NotNull }>()
|
|
594
|
+
* .execute()
|
|
595
|
+
* ```
|
|
596
|
+
*
|
|
597
|
+
* All the examples above assume you know the column names at compile time.
|
|
598
|
+
* While it's better to build your code like that (that way you also know
|
|
599
|
+
* the types) sometimes it's not possible or you just prefer to write more
|
|
600
|
+
* dynamic code.
|
|
601
|
+
* <br><br>
|
|
602
|
+
* In this example, we use the `dynamic` module's methods to add selections
|
|
603
|
+
* dynamically:
|
|
604
|
+
*
|
|
605
|
+
* ```ts
|
|
606
|
+
* const { ref } = db.dynamic
|
|
607
|
+
*
|
|
608
|
+
* // Some column name provided by the user. Value not known at compile time.
|
|
609
|
+
* const columnFromUserInput: string = 'first_name';
|
|
610
|
+
*
|
|
611
|
+
* // A type that lists all possible values `columnFromUserInput` can have.
|
|
612
|
+
* // You can use `keyof Person` if any column of an interface is allowed.
|
|
613
|
+
* type PossibleColumns = 'last_name' | 'first_name' | 'birthdate'
|
|
614
|
+
*
|
|
615
|
+
* const people = await db
|
|
616
|
+
* .selectFrom('person')
|
|
617
|
+
* .select([
|
|
618
|
+
* ref<PossibleColumns>(columnFromUserInput),
|
|
619
|
+
* 'id'
|
|
620
|
+
* ])
|
|
621
|
+
* .execute()
|
|
622
|
+
*
|
|
623
|
+
* // The resulting type contains all `PossibleColumns` as optional fields
|
|
624
|
+
* // because we cannot know which field was actually selected before
|
|
625
|
+
* // running the code.
|
|
626
|
+
* const lastName: string | null | undefined = people[0].last_name
|
|
627
|
+
* const firstName: string | undefined = people[0].first_name
|
|
628
|
+
* const birthDate: Date | null | undefined = people[0].birthdate
|
|
629
|
+
*
|
|
630
|
+
* // The result type also contains the compile time selection `id`.
|
|
631
|
+
* people[0].id
|
|
632
|
+
* ```
|
|
633
|
+
*/
|
|
634
|
+
select<SE extends SelectExpression<DB, TB>>(selections: ReadonlyArray<SE>): SelectQueryBuilder<DB, TB, O & Selection<DB, TB, SE>>;
|
|
635
|
+
select<CB extends SelectCallback<DB, TB>>(callback: CB): SelectQueryBuilder<DB, TB, O & CallbackSelection<DB, TB, CB>>;
|
|
636
|
+
select<SE extends SelectExpression<DB, TB>>(selection: SE): SelectQueryBuilder<DB, TB, O & Selection<DB, TB, SE>>;
|
|
637
|
+
/**
|
|
638
|
+
* Adds `distinct on` expressions to the select clause.
|
|
639
|
+
*
|
|
640
|
+
* ### Examples
|
|
641
|
+
*
|
|
642
|
+
* <!-- siteExample("select", "Distinct on", 80) -->
|
|
643
|
+
*
|
|
644
|
+
* ```ts
|
|
645
|
+
* const persons = await db.selectFrom('person')
|
|
646
|
+
* .innerJoin('pet', 'pet.owner_id', 'person.id')
|
|
647
|
+
* .where('pet.name', '=', 'Doggo')
|
|
648
|
+
* .distinctOn('person.id')
|
|
649
|
+
* .selectAll('person')
|
|
650
|
+
* .execute()
|
|
651
|
+
* ```
|
|
652
|
+
*
|
|
653
|
+
* The generated SQL (PostgreSQL):
|
|
654
|
+
*
|
|
655
|
+
* ```sql
|
|
656
|
+
* select distinct on ("person"."id") "person".*
|
|
657
|
+
* from "person"
|
|
658
|
+
* inner join "pet" on "pet"."owner_id" = "person"."id"
|
|
659
|
+
* where "pet"."name" = $1
|
|
660
|
+
* ```
|
|
661
|
+
*/
|
|
662
|
+
distinctOn<RE extends ReferenceExpression<DB, TB>>(selections: ReadonlyArray<RE>): SelectQueryBuilder<DB, TB, O>;
|
|
663
|
+
distinctOn<RE extends ReferenceExpression<DB, TB>>(selection: RE): SelectQueryBuilder<DB, TB, O>;
|
|
664
|
+
/**
|
|
665
|
+
* This can be used to add any additional SQL to the front of the query __after__ the `select` keyword.
|
|
666
|
+
*
|
|
667
|
+
* ### Examples
|
|
668
|
+
*
|
|
669
|
+
* ```ts
|
|
670
|
+
* import { sql } from 'kysely'
|
|
671
|
+
*
|
|
672
|
+
* await db.selectFrom('person')
|
|
673
|
+
* .modifyFront(sql`sql_no_cache`)
|
|
674
|
+
* .select('first_name')
|
|
675
|
+
* .execute()
|
|
676
|
+
* ```
|
|
677
|
+
*
|
|
678
|
+
* The generated SQL (MySQL):
|
|
679
|
+
*
|
|
680
|
+
* ```sql
|
|
681
|
+
* select sql_no_cache `first_name`
|
|
682
|
+
* from `person`
|
|
683
|
+
* ```
|
|
684
|
+
*/
|
|
685
|
+
modifyFront(modifier: Expression<any>): SelectQueryBuilder<DB, TB, O>;
|
|
686
|
+
/**
|
|
687
|
+
* This can be used to add any additional SQL to the end of the query.
|
|
688
|
+
*
|
|
689
|
+
* Also see {@link forUpdate}, {@link forShare}, {@link forKeyShare}, {@link forNoKeyUpdate}
|
|
690
|
+
* {@link skipLocked} and {@link noWait}.
|
|
691
|
+
*
|
|
692
|
+
* ### Examples
|
|
693
|
+
*
|
|
694
|
+
* ```ts
|
|
695
|
+
* import { sql } from 'kysely'
|
|
696
|
+
*
|
|
697
|
+
* await db.selectFrom('person')
|
|
698
|
+
* .select('first_name')
|
|
699
|
+
* .modifyEnd(sql`for update`)
|
|
700
|
+
* .execute()
|
|
701
|
+
* ```
|
|
702
|
+
*
|
|
703
|
+
* The generated SQL (PostgreSQL):
|
|
704
|
+
*
|
|
705
|
+
* ```sql
|
|
706
|
+
* select "first_name"
|
|
707
|
+
* from "person"
|
|
708
|
+
* for update
|
|
709
|
+
* ```
|
|
710
|
+
*/
|
|
711
|
+
modifyEnd(modifier: Expression<any>): SelectQueryBuilder<DB, TB, O>;
|
|
712
|
+
/**
|
|
713
|
+
* Makes the selection distinct.
|
|
714
|
+
*
|
|
715
|
+
* ### Examples
|
|
716
|
+
*
|
|
717
|
+
* <!-- siteExample("select", "Distinct", 70) -->
|
|
718
|
+
*
|
|
719
|
+
* ```ts
|
|
720
|
+
* const persons = await db.selectFrom('person')
|
|
721
|
+
* .select('first_name')
|
|
722
|
+
* .distinct()
|
|
723
|
+
* .execute()
|
|
724
|
+
* ```
|
|
725
|
+
*
|
|
726
|
+
* The generated SQL (PostgreSQL):
|
|
727
|
+
*
|
|
728
|
+
* ```sql
|
|
729
|
+
* select distinct "first_name" from "person"
|
|
730
|
+
* ```
|
|
731
|
+
*/
|
|
732
|
+
distinct(): SelectQueryBuilder<DB, TB, O>;
|
|
733
|
+
/**
|
|
734
|
+
* Adds the `for update` modifier to a select query on supported databases.
|
|
735
|
+
*/
|
|
736
|
+
forUpdate(of?: TableOrList<TB>): SelectQueryBuilder<DB, TB, O>;
|
|
737
|
+
/**
|
|
738
|
+
* Adds the `for share` modifier to a select query on supported databases.
|
|
739
|
+
*/
|
|
740
|
+
forShare(of?: TableOrList<TB>): SelectQueryBuilder<DB, TB, O>;
|
|
741
|
+
/**
|
|
742
|
+
* Adds the `for key share` modifier to a select query on supported databases.
|
|
743
|
+
*/
|
|
744
|
+
forKeyShare(of?: TableOrList<TB>): SelectQueryBuilder<DB, TB, O>;
|
|
745
|
+
/**
|
|
746
|
+
* Adds the `for no key update` modifier to a select query on supported databases.
|
|
747
|
+
*/
|
|
748
|
+
forNoKeyUpdate(of?: TableOrList<TB>): SelectQueryBuilder<DB, TB, O>;
|
|
749
|
+
/**
|
|
750
|
+
* Adds the `skip locked` modifier to a select query on supported databases.
|
|
751
|
+
*/
|
|
752
|
+
skipLocked(): SelectQueryBuilder<DB, TB, O>;
|
|
753
|
+
/**
|
|
754
|
+
* Adds the `nowait` modifier to a select query on supported databases.
|
|
755
|
+
*/
|
|
756
|
+
noWait(): SelectQueryBuilder<DB, TB, O>;
|
|
757
|
+
/**
|
|
758
|
+
* Adds a `select *` or `select table.*` clause to the query.
|
|
759
|
+
*
|
|
760
|
+
* ### Examples
|
|
761
|
+
*
|
|
762
|
+
* <!-- siteExample("select", "All columns", 90) -->
|
|
763
|
+
*
|
|
764
|
+
* The `selectAll` method generates `SELECT *`:
|
|
765
|
+
*
|
|
766
|
+
* ```ts
|
|
767
|
+
* const persons = await db
|
|
768
|
+
* .selectFrom('person')
|
|
769
|
+
* .selectAll()
|
|
770
|
+
* .execute()
|
|
771
|
+
* ```
|
|
772
|
+
*
|
|
773
|
+
* The generated SQL (PostgreSQL):
|
|
774
|
+
*
|
|
775
|
+
* ```sql
|
|
776
|
+
* select * from "person"
|
|
777
|
+
* ```
|
|
778
|
+
*
|
|
779
|
+
* <!-- siteExample("select", "All columns of a table", 100) -->
|
|
780
|
+
*
|
|
781
|
+
* Select all columns of a table:
|
|
782
|
+
*
|
|
783
|
+
* ```ts
|
|
784
|
+
* const persons = await db
|
|
785
|
+
* .selectFrom('person')
|
|
786
|
+
* .selectAll('person')
|
|
787
|
+
* .execute()
|
|
788
|
+
* ```
|
|
789
|
+
*
|
|
790
|
+
* The generated SQL (PostgreSQL):
|
|
791
|
+
*
|
|
792
|
+
* ```sql
|
|
793
|
+
* select "person".* from "person"
|
|
794
|
+
* ```
|
|
795
|
+
*
|
|
796
|
+
* Select all columns of multiple tables:
|
|
797
|
+
*
|
|
798
|
+
* ```ts
|
|
799
|
+
* const personsPets = await db
|
|
800
|
+
* .selectFrom(['person', 'pet'])
|
|
801
|
+
* .selectAll(['person', 'pet'])
|
|
802
|
+
* .execute()
|
|
803
|
+
* ```
|
|
804
|
+
*
|
|
805
|
+
* The generated SQL (PostgreSQL):
|
|
806
|
+
*
|
|
807
|
+
* ```sql
|
|
808
|
+
* select "person".*, "pet".* from "person", "pet"
|
|
809
|
+
* ```
|
|
810
|
+
*/
|
|
811
|
+
selectAll<T extends TB>(table: ReadonlyArray<T>): SelectQueryBuilder<DB, TB, O & AllSelection<DB, T>>;
|
|
812
|
+
selectAll<T extends TB>(table: T): SelectQueryBuilder<DB, TB, O & Selectable<DB[T]>>;
|
|
813
|
+
selectAll(): SelectQueryBuilder<DB, TB, O & AllSelection<DB, TB>>;
|
|
814
|
+
/**
|
|
815
|
+
* Joins another table to the query using an `inner join`.
|
|
816
|
+
*
|
|
817
|
+
* ### Examples
|
|
818
|
+
*
|
|
819
|
+
* <!-- siteExample("join", "Simple inner join", 10) -->
|
|
820
|
+
*
|
|
821
|
+
* Simple `inner join`s can be done by providing a table name and two columns to join:
|
|
822
|
+
*
|
|
823
|
+
* ```ts
|
|
824
|
+
* const result = await db
|
|
825
|
+
* .selectFrom('person')
|
|
826
|
+
* .innerJoin('pet', 'pet.owner_id', 'person.id')
|
|
827
|
+
* // `select` needs to come after the call to `innerJoin` so
|
|
828
|
+
* // that you can select from the joined table.
|
|
829
|
+
* .select(['person.id', 'pet.name as pet_name'])
|
|
830
|
+
* .execute()
|
|
831
|
+
* ```
|
|
832
|
+
*
|
|
833
|
+
* The generated SQL (PostgreSQL):
|
|
834
|
+
*
|
|
835
|
+
* ```sql
|
|
836
|
+
* select "person"."id", "pet"."name" as "pet_name"
|
|
837
|
+
* from "person"
|
|
838
|
+
* inner join "pet"
|
|
839
|
+
* on "pet"."owner_id" = "person"."id"
|
|
840
|
+
* ```
|
|
841
|
+
*
|
|
842
|
+
* <!-- siteExample("join", "Aliased inner join", 20) -->
|
|
843
|
+
*
|
|
844
|
+
* You can give an alias for the joined table like this:
|
|
845
|
+
*
|
|
846
|
+
* ```ts
|
|
847
|
+
* await db.selectFrom('person')
|
|
848
|
+
* .innerJoin('pet as p', 'p.owner_id', 'person.id')
|
|
849
|
+
* .where('p.name', '=', 'Doggo')
|
|
850
|
+
* .selectAll()
|
|
851
|
+
* .execute()
|
|
852
|
+
* ```
|
|
853
|
+
*
|
|
854
|
+
* The generated SQL (PostgreSQL):
|
|
855
|
+
*
|
|
856
|
+
* ```sql
|
|
857
|
+
* select *
|
|
858
|
+
* from "person"
|
|
859
|
+
* inner join "pet" as "p"
|
|
860
|
+
* on "p"."owner_id" = "person"."id"
|
|
861
|
+
* where "p".name" = $1
|
|
862
|
+
* ```
|
|
863
|
+
*
|
|
864
|
+
* <!-- siteExample("join", "Complex join", 30) -->
|
|
865
|
+
*
|
|
866
|
+
* You can provide a function as the second argument to get a join
|
|
867
|
+
* builder for creating more complex joins. The join builder has a
|
|
868
|
+
* bunch of `on*` methods for building the `on` clause of the join.
|
|
869
|
+
* There's basically an equivalent for every `where` method
|
|
870
|
+
* (`on`, `onRef` etc.).
|
|
871
|
+
*
|
|
872
|
+
* You can do all the same things with the
|
|
873
|
+
* `on` method that you can with the corresponding `where` method (like [OR expressions for example](https://kysely.dev/docs/examples/WHERE/or-where)).
|
|
874
|
+
* See the `where` method documentation for more examples.
|
|
875
|
+
*
|
|
876
|
+
* ```ts
|
|
877
|
+
* await db.selectFrom('person')
|
|
878
|
+
* .innerJoin(
|
|
879
|
+
* 'pet',
|
|
880
|
+
* (join) => join
|
|
881
|
+
* .onRef('pet.owner_id', '=', 'person.id')
|
|
882
|
+
* .on('pet.name', '=', 'Doggo')
|
|
883
|
+
* .on((eb) => eb.or([
|
|
884
|
+
* eb('person.age', '>', 18),
|
|
885
|
+
* eb('person.age', '<', 100)
|
|
886
|
+
* ]))
|
|
887
|
+
* )
|
|
888
|
+
* .selectAll()
|
|
889
|
+
* .execute()
|
|
890
|
+
* ```
|
|
891
|
+
*
|
|
892
|
+
* The generated SQL (PostgreSQL):
|
|
893
|
+
*
|
|
894
|
+
* ```sql
|
|
895
|
+
* select *
|
|
896
|
+
* from "person"
|
|
897
|
+
* inner join "pet"
|
|
898
|
+
* on "pet"."owner_id" = "person"."id"
|
|
899
|
+
* and "pet"."name" = $1
|
|
900
|
+
* and (
|
|
901
|
+
* "person"."age" > $2
|
|
902
|
+
* OR "person"."age" < $3
|
|
903
|
+
* )
|
|
904
|
+
* ```
|
|
905
|
+
*
|
|
906
|
+
* <!-- siteExample("join", "Subquery join", 40) -->
|
|
907
|
+
*
|
|
908
|
+
* You can join a subquery by providing two callbacks:
|
|
909
|
+
*
|
|
910
|
+
* ```ts
|
|
911
|
+
* const result = await db.selectFrom('person')
|
|
912
|
+
* .innerJoin(
|
|
913
|
+
* (eb) => eb
|
|
914
|
+
* .selectFrom('pet')
|
|
915
|
+
* .select(['owner_id as owner', 'name'])
|
|
916
|
+
* .where('name', '=', 'Doggo')
|
|
917
|
+
* .as('doggos'),
|
|
918
|
+
* (join) => join
|
|
919
|
+
* .onRef('doggos.owner', '=', 'person.id'),
|
|
920
|
+
* )
|
|
921
|
+
* .selectAll('doggos')
|
|
922
|
+
* .execute()
|
|
923
|
+
* ```
|
|
924
|
+
*
|
|
925
|
+
* The generated SQL (PostgreSQL):
|
|
926
|
+
*
|
|
927
|
+
* ```sql
|
|
928
|
+
* select "doggos".*
|
|
929
|
+
* from "person"
|
|
930
|
+
* inner join (
|
|
931
|
+
* select "owner_id" as "owner", "name"
|
|
932
|
+
* from "pet"
|
|
933
|
+
* where "name" = $1
|
|
934
|
+
* ) as "doggos"
|
|
935
|
+
* on "doggos"."owner" = "person"."id"
|
|
936
|
+
* ```
|
|
937
|
+
*/
|
|
938
|
+
innerJoin<TE extends TableExpression<DB, TB>, K1 extends JoinReferenceExpression<DB, TB, TE>, K2 extends JoinReferenceExpression<DB, TB, TE>>(table: TE, k1: K1, k2: K2): SelectQueryBuilderWithInnerJoin<DB, TB, O, TE>;
|
|
939
|
+
innerJoin<TE extends TableExpression<DB, TB>, FN extends JoinCallbackExpression<DB, TB, TE>>(table: TE, callback: FN): SelectQueryBuilderWithInnerJoin<DB, TB, O, TE>;
|
|
940
|
+
/**
|
|
941
|
+
* Just like {@link innerJoin} but adds a `left join` instead of an `inner join`.
|
|
942
|
+
*/
|
|
943
|
+
leftJoin<TE extends TableExpression<DB, TB>, K1 extends JoinReferenceExpression<DB, TB, TE>, K2 extends JoinReferenceExpression<DB, TB, TE>>(table: TE, k1: K1, k2: K2): SelectQueryBuilderWithLeftJoin<DB, TB, O, TE>;
|
|
944
|
+
leftJoin<TE extends TableExpression<DB, TB>, FN extends JoinCallbackExpression<DB, TB, TE>>(table: TE, callback: FN): SelectQueryBuilderWithLeftJoin<DB, TB, O, TE>;
|
|
945
|
+
/**
|
|
946
|
+
* Just like {@link innerJoin} but adds a `right join` instead of an `inner join`.
|
|
947
|
+
*/
|
|
948
|
+
rightJoin<TE extends TableExpression<DB, TB>, K1 extends JoinReferenceExpression<DB, TB, TE>, K2 extends JoinReferenceExpression<DB, TB, TE>>(table: TE, k1: K1, k2: K2): SelectQueryBuilderWithRightJoin<DB, TB, O, TE>;
|
|
949
|
+
rightJoin<TE extends TableExpression<DB, TB>, FN extends JoinCallbackExpression<DB, TB, TE>>(table: TE, callback: FN): SelectQueryBuilderWithRightJoin<DB, TB, O, TE>;
|
|
950
|
+
/**
|
|
951
|
+
* Just like {@link innerJoin} but adds a `full join` instead of an `inner join`.
|
|
952
|
+
*
|
|
953
|
+
* This is only supported by some dialects like PostgreSQL, MS SQL Server and SQLite.
|
|
954
|
+
*/
|
|
955
|
+
fullJoin<TE extends TableExpression<DB, TB>, K1 extends JoinReferenceExpression<DB, TB, TE>, K2 extends JoinReferenceExpression<DB, TB, TE>>(table: TE, k1: K1, k2: K2): SelectQueryBuilderWithFullJoin<DB, TB, O, TE>;
|
|
956
|
+
fullJoin<TE extends TableExpression<DB, TB>, FN extends JoinCallbackExpression<DB, TB, TE>>(table: TE, callback: FN): SelectQueryBuilderWithFullJoin<DB, TB, O, TE>;
|
|
957
|
+
/**
|
|
958
|
+
* Just like {@link innerJoin} but adds a `cross join` instead of an `inner join`.
|
|
959
|
+
*/
|
|
960
|
+
crossJoin<TE extends TableExpression<DB, TB>>(table: TE): SelectQueryBuilderWithInnerJoin<DB, TB, O, TE>;
|
|
961
|
+
/**
|
|
962
|
+
* Just like {@link innerJoin} but adds a lateral join instead of an inner join.
|
|
963
|
+
*
|
|
964
|
+
* This is only supported by some dialects like PostgreSQL and MySQL.
|
|
965
|
+
*
|
|
966
|
+
* ### Examples
|
|
967
|
+
*
|
|
968
|
+
* ```ts
|
|
969
|
+
* await db.selectFrom('person')
|
|
970
|
+
* .innerJoinLateral(
|
|
971
|
+
* (eb) =>
|
|
972
|
+
* eb.selectFrom('pet')
|
|
973
|
+
* .select('name')
|
|
974
|
+
* .whereRef('pet.owner_id', '=', 'person.id')
|
|
975
|
+
* .as('p'),
|
|
976
|
+
* (join) => join.onTrue()
|
|
977
|
+
* )
|
|
978
|
+
* .select(['first_name', 'p.name'])
|
|
979
|
+
* .orderBy('first_name')
|
|
980
|
+
* .execute()
|
|
981
|
+
* ```
|
|
982
|
+
*
|
|
983
|
+
* The generated SQL (PostgreSQL):
|
|
984
|
+
*
|
|
985
|
+
* ```sql
|
|
986
|
+
* select "person"."first_name", "p"."name"
|
|
987
|
+
* from "person"
|
|
988
|
+
* inner join lateral (
|
|
989
|
+
* select "name"
|
|
990
|
+
* from "pet"
|
|
991
|
+
* where "pet"."owner_id" = "person"."id"
|
|
992
|
+
* ) as "p" on true
|
|
993
|
+
* order by "first_name"
|
|
994
|
+
* ```
|
|
995
|
+
*/
|
|
996
|
+
innerJoinLateral<TE extends TableExpression<DB, TB>, K1 extends JoinReferenceExpression<DB, TB, TE>, K2 extends JoinReferenceExpression<DB, TB, TE>>(table: TE, k1: K1, k2: K2): SelectQueryBuilderWithInnerJoin<DB, TB, O, TE>;
|
|
997
|
+
innerJoinLateral<TE extends TableExpression<DB, TB>, FN extends JoinCallbackExpression<DB, TB, TE>>(table: TE, callback: FN): SelectQueryBuilderWithInnerJoin<DB, TB, O, TE>;
|
|
998
|
+
/**
|
|
999
|
+
* Just like {@link innerJoin} but adds a `left join lateral` instead of an `inner join`.
|
|
1000
|
+
*
|
|
1001
|
+
* This is only supported by some dialects like PostgreSQL and MySQL.
|
|
1002
|
+
*
|
|
1003
|
+
* ### Examples
|
|
1004
|
+
*
|
|
1005
|
+
* ```ts
|
|
1006
|
+
* await db.selectFrom('person')
|
|
1007
|
+
* .leftJoinLateral(
|
|
1008
|
+
* (eb) =>
|
|
1009
|
+
* eb.selectFrom('pet')
|
|
1010
|
+
* .select('name')
|
|
1011
|
+
* .whereRef('pet.owner_id', '=', 'person.id')
|
|
1012
|
+
* .as('p'),
|
|
1013
|
+
* (join) => join.onTrue()
|
|
1014
|
+
* )
|
|
1015
|
+
* .select(['first_name', 'p.name'])
|
|
1016
|
+
* .orderBy('first_name')
|
|
1017
|
+
* .execute()
|
|
1018
|
+
* ```
|
|
1019
|
+
*
|
|
1020
|
+
* The generated SQL (PostgreSQL):
|
|
1021
|
+
*
|
|
1022
|
+
* ```sql
|
|
1023
|
+
* select "person"."first_name", "p"."name"
|
|
1024
|
+
* from "person"
|
|
1025
|
+
* left join lateral (
|
|
1026
|
+
* select "name"
|
|
1027
|
+
* from "pet"
|
|
1028
|
+
* where "pet"."owner_id" = "person"."id"
|
|
1029
|
+
* ) as "p" on true
|
|
1030
|
+
* order by "first_name"
|
|
1031
|
+
* ```
|
|
1032
|
+
*/
|
|
1033
|
+
leftJoinLateral<TE extends TableExpression<DB, TB>, K1 extends JoinReferenceExpression<DB, TB, TE>, K2 extends JoinReferenceExpression<DB, TB, TE>>(table: TE, k1: K1, k2: K2): SelectQueryBuilderWithLeftJoin<DB, TB, O, TE>;
|
|
1034
|
+
leftJoinLateral<TE extends TableExpression<DB, TB>, FN extends JoinCallbackExpression<DB, TB, TE>>(table: TE, callback: FN): SelectQueryBuilderWithLeftJoin<DB, TB, O, TE>;
|
|
1035
|
+
/**
|
|
1036
|
+
* Just like {@link innerJoin} but adds a `cross join lateral` instead of an `inner join`.
|
|
1037
|
+
*
|
|
1038
|
+
* This is only supported by some dialects like PostgreSQL.
|
|
1039
|
+
*
|
|
1040
|
+
* ### Examples
|
|
1041
|
+
*
|
|
1042
|
+
* ```ts
|
|
1043
|
+
* await db.selectFrom('person')
|
|
1044
|
+
* .crossJoinLateral(
|
|
1045
|
+
* (eb) =>
|
|
1046
|
+
* eb.selectFrom('pet')
|
|
1047
|
+
* .select('name')
|
|
1048
|
+
* .whereRef('pet.owner_id', '=', 'person.id')
|
|
1049
|
+
* .as('p')
|
|
1050
|
+
* )
|
|
1051
|
+
* .select(['first_name', 'p.name'])
|
|
1052
|
+
* .orderBy('first_name')
|
|
1053
|
+
* .execute()
|
|
1054
|
+
* ```
|
|
1055
|
+
*
|
|
1056
|
+
* The generated SQL (PostgreSQL):
|
|
1057
|
+
*
|
|
1058
|
+
* ```sql
|
|
1059
|
+
* select "person"."first_name", "p"."name"
|
|
1060
|
+
* from "person"
|
|
1061
|
+
* cross join lateral (
|
|
1062
|
+
* select "name"
|
|
1063
|
+
* from "pet"
|
|
1064
|
+
* where "pet"."owner_id" = "person"."id"
|
|
1065
|
+
* ) as "p"
|
|
1066
|
+
* order by "first_name"
|
|
1067
|
+
* ```
|
|
1068
|
+
*/
|
|
1069
|
+
crossJoinLateral<TE extends TableExpression<DB, TB>>(table: TE): SelectQueryBuilderWithInnerJoin<DB, TB, O, TE>;
|
|
1070
|
+
/**
|
|
1071
|
+
* Joins another table to the query using a `cross apply`.
|
|
1072
|
+
*
|
|
1073
|
+
* This is only supported by some dialects like MS SQL Server.
|
|
1074
|
+
*
|
|
1075
|
+
* ### Examples
|
|
1076
|
+
*
|
|
1077
|
+
* ```ts
|
|
1078
|
+
* await db.selectFrom('person')
|
|
1079
|
+
* .crossApply(
|
|
1080
|
+
* (eb) =>
|
|
1081
|
+
* eb.selectFrom('pet')
|
|
1082
|
+
* .select('name')
|
|
1083
|
+
* .whereRef('pet.owner_id', '=', 'person.id')
|
|
1084
|
+
* .as('p')
|
|
1085
|
+
* )
|
|
1086
|
+
* .select(['first_name', 'p.name'])
|
|
1087
|
+
* .orderBy('first_name')
|
|
1088
|
+
* .execute()
|
|
1089
|
+
* ```
|
|
1090
|
+
*
|
|
1091
|
+
* The generated SQL (MS SQL Server):
|
|
1092
|
+
*
|
|
1093
|
+
* ```sql
|
|
1094
|
+
* select "person"."first_name", "p"."name"
|
|
1095
|
+
* from "person"
|
|
1096
|
+
* cross apply (
|
|
1097
|
+
* select "name"
|
|
1098
|
+
* from "pet"
|
|
1099
|
+
* where "pet"."owner_id" = "person"."id"
|
|
1100
|
+
* ) as "p"
|
|
1101
|
+
* order by "first_name"
|
|
1102
|
+
* ```
|
|
1103
|
+
*/
|
|
1104
|
+
crossApply<TE extends TableExpression<DB, TB>>(table: TE): SelectQueryBuilderWithInnerJoin<DB, TB, O, TE>;
|
|
1105
|
+
/**
|
|
1106
|
+
* Just like {@link crossApply} but adds an `outer apply` instead of a `cross apply`.
|
|
1107
|
+
*
|
|
1108
|
+
* This is only supported by some dialects like MS SQL Server.
|
|
1109
|
+
*/
|
|
1110
|
+
outerApply<TE extends TableExpression<DB, TB>>(table: TE): SelectQueryBuilderWithLeftJoin<DB, TB, O, TE>;
|
|
1111
|
+
/**
|
|
1112
|
+
* Adds a `group by` clause to the query.
|
|
1113
|
+
*
|
|
1114
|
+
* ### Examples
|
|
1115
|
+
*
|
|
1116
|
+
* ```ts
|
|
1117
|
+
* import { sql } from 'kysely'
|
|
1118
|
+
*
|
|
1119
|
+
* await db
|
|
1120
|
+
* .selectFrom('person')
|
|
1121
|
+
* .select([
|
|
1122
|
+
* 'first_name',
|
|
1123
|
+
* sql<string>`max(id)`.as('max_id')
|
|
1124
|
+
* ])
|
|
1125
|
+
* .groupBy('first_name')
|
|
1126
|
+
* .execute()
|
|
1127
|
+
* ```
|
|
1128
|
+
*
|
|
1129
|
+
* The generated SQL (PostgreSQL):
|
|
1130
|
+
*
|
|
1131
|
+
* ```sql
|
|
1132
|
+
* select "first_name", max(id)
|
|
1133
|
+
* from "person"
|
|
1134
|
+
* group by "first_name"
|
|
1135
|
+
* ```
|
|
1136
|
+
*
|
|
1137
|
+
* `groupBy` also accepts an array:
|
|
1138
|
+
*
|
|
1139
|
+
* ```ts
|
|
1140
|
+
* import { sql } from 'kysely'
|
|
1141
|
+
*
|
|
1142
|
+
* await db
|
|
1143
|
+
* .selectFrom('person')
|
|
1144
|
+
* .select([
|
|
1145
|
+
* 'first_name',
|
|
1146
|
+
* 'last_name',
|
|
1147
|
+
* sql<string>`max(id)`.as('max_id')
|
|
1148
|
+
* ])
|
|
1149
|
+
* .groupBy([
|
|
1150
|
+
* 'first_name',
|
|
1151
|
+
* 'last_name'
|
|
1152
|
+
* ])
|
|
1153
|
+
* .execute()
|
|
1154
|
+
* ```
|
|
1155
|
+
*
|
|
1156
|
+
* The generated SQL (PostgreSQL):
|
|
1157
|
+
*
|
|
1158
|
+
* ```sql
|
|
1159
|
+
* select "first_name", "last_name", max(id)
|
|
1160
|
+
* from "person"
|
|
1161
|
+
* group by "first_name", "last_name"
|
|
1162
|
+
* ```
|
|
1163
|
+
*
|
|
1164
|
+
* The group by expressions can also be subqueries or
|
|
1165
|
+
* raw sql expressions:
|
|
1166
|
+
*
|
|
1167
|
+
* ```ts
|
|
1168
|
+
* import { sql } from 'kysely'
|
|
1169
|
+
*
|
|
1170
|
+
* await db
|
|
1171
|
+
* .selectFrom('person')
|
|
1172
|
+
* .select([
|
|
1173
|
+
* 'first_name',
|
|
1174
|
+
* 'last_name',
|
|
1175
|
+
* sql<string>`max(id)`.as('max_id')
|
|
1176
|
+
* ])
|
|
1177
|
+
* .groupBy([
|
|
1178
|
+
* sql<string>`concat(first_name, last_name)`,
|
|
1179
|
+
* (qb) => qb.selectFrom('pet').select('id').limit(1)
|
|
1180
|
+
* ])
|
|
1181
|
+
* .execute()
|
|
1182
|
+
* ```
|
|
1183
|
+
*
|
|
1184
|
+
* `dynamic.ref` can be used to refer to columns not known at
|
|
1185
|
+
* compile time:
|
|
1186
|
+
*
|
|
1187
|
+
* ```ts
|
|
1188
|
+
* async function someQuery(groupBy: string) {
|
|
1189
|
+
* const { ref } = db.dynamic
|
|
1190
|
+
*
|
|
1191
|
+
* return await db
|
|
1192
|
+
* .selectFrom('person')
|
|
1193
|
+
* .select('first_name')
|
|
1194
|
+
* .groupBy(ref(groupBy))
|
|
1195
|
+
* .execute()
|
|
1196
|
+
* }
|
|
1197
|
+
*
|
|
1198
|
+
* someQuery('first_name')
|
|
1199
|
+
* ```
|
|
1200
|
+
*
|
|
1201
|
+
* The generated SQL (PostgreSQL):
|
|
1202
|
+
*
|
|
1203
|
+
* ```sql
|
|
1204
|
+
* select "first_name"
|
|
1205
|
+
* from "person"
|
|
1206
|
+
* group by "first_name"
|
|
1207
|
+
* ```
|
|
1208
|
+
*/
|
|
1209
|
+
groupBy<GE extends GroupByArg<DB, TB, O>>(groupBy: GE): SelectQueryBuilder<DB, TB, O>;
|
|
1210
|
+
/**
|
|
1211
|
+
* Adds an `order by` clause to the query.
|
|
1212
|
+
*
|
|
1213
|
+
* `orderBy` calls are additive. Meaning, additional `orderBy` calls append to
|
|
1214
|
+
* the existing order by clause.
|
|
1215
|
+
*
|
|
1216
|
+
* `orderBy` is supported in select queries on all dialects. In MySQL, you can
|
|
1217
|
+
* also use `orderBy` in update and delete queries.
|
|
1218
|
+
*
|
|
1219
|
+
* In a single call you can add a single column/expression or multiple columns/expressions.
|
|
1220
|
+
*
|
|
1221
|
+
* Single column/expression calls can have 1-2 arguments. The first argument is
|
|
1222
|
+
* the expression to order by, while the second optional argument is the direction
|
|
1223
|
+
* (`asc` or `desc`), a callback that accepts and returns an {@link OrderByItemBuilder}
|
|
1224
|
+
* or an expression.
|
|
1225
|
+
*
|
|
1226
|
+
* See {@link clearOrderBy} to remove the `order by` clause from a query.
|
|
1227
|
+
*
|
|
1228
|
+
* ### Examples
|
|
1229
|
+
*
|
|
1230
|
+
* Single column/expression per call:
|
|
1231
|
+
*
|
|
1232
|
+
* ```ts
|
|
1233
|
+
* await db
|
|
1234
|
+
* .selectFrom('person')
|
|
1235
|
+
* .select('person.first_name as fn')
|
|
1236
|
+
* .orderBy('id')
|
|
1237
|
+
* .orderBy('fn', 'desc')
|
|
1238
|
+
* .execute()
|
|
1239
|
+
* ```
|
|
1240
|
+
*
|
|
1241
|
+
* The generated SQL (PostgreSQL):
|
|
1242
|
+
*
|
|
1243
|
+
* ```sql
|
|
1244
|
+
* select "person"."first_name" as "fn"
|
|
1245
|
+
* from "person"
|
|
1246
|
+
* order by "id", "fn" desc
|
|
1247
|
+
* ```
|
|
1248
|
+
*
|
|
1249
|
+
* Building advanced modifiers:
|
|
1250
|
+
*
|
|
1251
|
+
* ```ts
|
|
1252
|
+
* await db
|
|
1253
|
+
* .selectFrom('person')
|
|
1254
|
+
* .select('person.first_name as fn')
|
|
1255
|
+
* .orderBy('id', (ob) => ob.desc().nullsFirst())
|
|
1256
|
+
* .execute()
|
|
1257
|
+
* ```
|
|
1258
|
+
*
|
|
1259
|
+
* The generated SQL (PostgreSQL):
|
|
1260
|
+
*
|
|
1261
|
+
* ```sql
|
|
1262
|
+
* select "person"."first_name" as "fn"
|
|
1263
|
+
* from "person"
|
|
1264
|
+
* order by "id" desc nulls first
|
|
1265
|
+
* ```
|
|
1266
|
+
*
|
|
1267
|
+
* The order by expression can also be a raw sql expression or a subquery
|
|
1268
|
+
* in addition to column references:
|
|
1269
|
+
*
|
|
1270
|
+
* ```ts
|
|
1271
|
+
* import { sql } from 'kysely'
|
|
1272
|
+
*
|
|
1273
|
+
* await db
|
|
1274
|
+
* .selectFrom('person')
|
|
1275
|
+
* .selectAll()
|
|
1276
|
+
* .orderBy((eb) => eb.selectFrom('pet')
|
|
1277
|
+
* .select('pet.name')
|
|
1278
|
+
* .whereRef('pet.owner_id', '=', 'person.id')
|
|
1279
|
+
* .limit(1)
|
|
1280
|
+
* )
|
|
1281
|
+
* .orderBy(
|
|
1282
|
+
* sql<string>`concat(first_name, last_name) asc`
|
|
1283
|
+
* )
|
|
1284
|
+
* .execute()
|
|
1285
|
+
* ```
|
|
1286
|
+
*
|
|
1287
|
+
* The generated SQL (PostgreSQL):
|
|
1288
|
+
*
|
|
1289
|
+
* ```sql
|
|
1290
|
+
* select *
|
|
1291
|
+
* from "person"
|
|
1292
|
+
* order by
|
|
1293
|
+
* ( select "pet"."name"
|
|
1294
|
+
* from "pet"
|
|
1295
|
+
* where "pet"."owner_id" = "person"."id"
|
|
1296
|
+
* limit $1
|
|
1297
|
+
* ) asc,
|
|
1298
|
+
* concat(first_name, last_name) asc
|
|
1299
|
+
* ```
|
|
1300
|
+
*
|
|
1301
|
+
* `dynamic.ref` can be used to refer to columns not known at
|
|
1302
|
+
* compile time:
|
|
1303
|
+
*
|
|
1304
|
+
* ```ts
|
|
1305
|
+
* async function someQuery(orderBy: string) {
|
|
1306
|
+
* const { ref } = db.dynamic
|
|
1307
|
+
*
|
|
1308
|
+
* return await db
|
|
1309
|
+
* .selectFrom('person')
|
|
1310
|
+
* .select('person.first_name as fn')
|
|
1311
|
+
* .orderBy(ref(orderBy))
|
|
1312
|
+
* .execute()
|
|
1313
|
+
* }
|
|
1314
|
+
*
|
|
1315
|
+
* someQuery('fn')
|
|
1316
|
+
* ```
|
|
1317
|
+
*
|
|
1318
|
+
* The generated SQL (PostgreSQL):
|
|
1319
|
+
*
|
|
1320
|
+
* ```sql
|
|
1321
|
+
* select "person"."first_name" as "fn"
|
|
1322
|
+
* from "person"
|
|
1323
|
+
* order by "fn"
|
|
1324
|
+
* ```
|
|
1325
|
+
*/
|
|
1326
|
+
orderBy<OE extends OrderByExpression<DB, TB, O>>(expr: OE, modifiers?: OrderByModifiers): SelectQueryBuilder<DB, TB, O>;
|
|
1327
|
+
/**
|
|
1328
|
+
* @deprecated It does ~2-2.5x more compile-time instantiations than multiple `orderBy(expr, modifiers?)` calls, and has broken autocompletion.
|
|
1329
|
+
*/
|
|
1330
|
+
orderBy<OE extends OrderByExpression<DB, TB, O> | DirectedOrderByStringReference<DB, TB, O>>(exprs: ReadonlyArray<OE>): SelectQueryBuilder<DB, TB, O>;
|
|
1331
|
+
/**
|
|
1332
|
+
* @deprecated Use orderBy(expr, direction) instead.
|
|
1333
|
+
*/
|
|
1334
|
+
orderBy<OE extends DirectedOrderByStringReference<DB, TB, O>>(expr: OE): SelectQueryBuilder<DB, TB, O>;
|
|
1335
|
+
/**
|
|
1336
|
+
* @deprecated Use `orderBy(expr, (ob) => ...)` instead.
|
|
1337
|
+
*/
|
|
1338
|
+
orderBy<OE extends OrderByExpression<DB, TB, O>>(expr: OE, modifiers: Expression<any>): SelectQueryBuilder<DB, TB, O>;
|
|
1339
|
+
/**
|
|
1340
|
+
* Adds a limit clause to the query.
|
|
1341
|
+
*
|
|
1342
|
+
* Passing a `null` value is only supported by some dialects like PostgreSQL,
|
|
1343
|
+
* and will result in a no-op limit clause.
|
|
1344
|
+
*
|
|
1345
|
+
* ### Examples
|
|
1346
|
+
*
|
|
1347
|
+
* Select the first 10 rows of the result:
|
|
1348
|
+
*
|
|
1349
|
+
* ```ts
|
|
1350
|
+
* await db
|
|
1351
|
+
* .selectFrom('person')
|
|
1352
|
+
* .select('first_name')
|
|
1353
|
+
* .limit(10)
|
|
1354
|
+
* .execute()
|
|
1355
|
+
* ```
|
|
1356
|
+
*
|
|
1357
|
+
* The generated SQL (PostgreSQL):
|
|
1358
|
+
*
|
|
1359
|
+
* ```sql
|
|
1360
|
+
* select "first_name" from "person" limit $1
|
|
1361
|
+
* ```
|
|
1362
|
+
*
|
|
1363
|
+
* Select rows from index 10 to index 19 of the result:
|
|
1364
|
+
*
|
|
1365
|
+
* ```ts
|
|
1366
|
+
* await db
|
|
1367
|
+
* .selectFrom('person')
|
|
1368
|
+
* .select('first_name')
|
|
1369
|
+
* .limit(10)
|
|
1370
|
+
* .offset(10)
|
|
1371
|
+
* .execute()
|
|
1372
|
+
* ```
|
|
1373
|
+
*
|
|
1374
|
+
* The generated SQL (PostgreSQL):
|
|
1375
|
+
*
|
|
1376
|
+
* ```sql
|
|
1377
|
+
* select "first_name" from "person" limit $1 offset $2
|
|
1378
|
+
* ```
|
|
1379
|
+
*/
|
|
1380
|
+
limit(limit: ValueExpression<DB, TB, number | bigint | null>): SelectQueryBuilder<DB, TB, O>;
|
|
1381
|
+
/**
|
|
1382
|
+
* Adds an `offset` clause to the query.
|
|
1383
|
+
*
|
|
1384
|
+
* ### Examples
|
|
1385
|
+
*
|
|
1386
|
+
* Select rows from index 10 to index 19 of the result:
|
|
1387
|
+
*
|
|
1388
|
+
* ```ts
|
|
1389
|
+
* await db
|
|
1390
|
+
* .selectFrom('person')
|
|
1391
|
+
* .select('first_name')
|
|
1392
|
+
* .limit(10)
|
|
1393
|
+
* .offset(10)
|
|
1394
|
+
* .execute()
|
|
1395
|
+
* ```
|
|
1396
|
+
*
|
|
1397
|
+
* The generated SQL (PostgreSQL):
|
|
1398
|
+
*
|
|
1399
|
+
* ```sql
|
|
1400
|
+
* select "first_name" from "person" limit $1 offset $2
|
|
1401
|
+
* ```
|
|
1402
|
+
*/
|
|
1403
|
+
offset(offset: ValueExpression<DB, TB, number | bigint>): SelectQueryBuilder<DB, TB, O>;
|
|
1404
|
+
/**
|
|
1405
|
+
* Adds a `fetch` clause to the query.
|
|
1406
|
+
*
|
|
1407
|
+
* This clause is only supported by some dialects like PostgreSQL or MS SQL Server.
|
|
1408
|
+
*
|
|
1409
|
+
* ### Examples
|
|
1410
|
+
*
|
|
1411
|
+
* ```ts
|
|
1412
|
+
* await db
|
|
1413
|
+
* .selectFrom('person')
|
|
1414
|
+
* .select('first_name')
|
|
1415
|
+
* .orderBy('first_name')
|
|
1416
|
+
* .offset(0)
|
|
1417
|
+
* .fetch(10)
|
|
1418
|
+
* .execute()
|
|
1419
|
+
* ```
|
|
1420
|
+
*
|
|
1421
|
+
* The generated SQL (MS SQL Server):
|
|
1422
|
+
*
|
|
1423
|
+
* ```sql
|
|
1424
|
+
* select "first_name"
|
|
1425
|
+
* from "person"
|
|
1426
|
+
* order by "first_name"
|
|
1427
|
+
* offset 0 rows
|
|
1428
|
+
* fetch next 10 rows only
|
|
1429
|
+
* ```
|
|
1430
|
+
*/
|
|
1431
|
+
fetch(rowCount: number | bigint, modifier?: FetchModifier): SelectQueryBuilder<DB, TB, O>;
|
|
1432
|
+
/**
|
|
1433
|
+
* Adds a `top` clause to the query.
|
|
1434
|
+
*
|
|
1435
|
+
* This clause is only supported by some dialects like MS SQL Server.
|
|
1436
|
+
*
|
|
1437
|
+
* ### Examples
|
|
1438
|
+
*
|
|
1439
|
+
* Select 10 biggest ages:
|
|
1440
|
+
*
|
|
1441
|
+
* ```ts
|
|
1442
|
+
* await db
|
|
1443
|
+
* .selectFrom('person')
|
|
1444
|
+
* .select('age')
|
|
1445
|
+
* .top(10)
|
|
1446
|
+
* .orderBy('age desc')
|
|
1447
|
+
* .execute()
|
|
1448
|
+
* ```
|
|
1449
|
+
*
|
|
1450
|
+
* The generated SQL (MS SQL Server):
|
|
1451
|
+
*
|
|
1452
|
+
* ```sql
|
|
1453
|
+
* select top(10) "age" from "person" order by "age" desc
|
|
1454
|
+
* ```
|
|
1455
|
+
*
|
|
1456
|
+
* Select 10% first rows:
|
|
1457
|
+
*
|
|
1458
|
+
* ```ts
|
|
1459
|
+
* await db
|
|
1460
|
+
* .selectFrom('person')
|
|
1461
|
+
* .selectAll()
|
|
1462
|
+
* .top(10, 'percent')
|
|
1463
|
+
* .execute()
|
|
1464
|
+
* ```
|
|
1465
|
+
*
|
|
1466
|
+
* The generated SQL (MS SQL Server):
|
|
1467
|
+
*
|
|
1468
|
+
* ```sql
|
|
1469
|
+
* select top(10) percent * from "person"
|
|
1470
|
+
* ```
|
|
1471
|
+
*/
|
|
1472
|
+
top(expression: number | bigint, modifiers?: TopModifier): SelectQueryBuilder<DB, TB, O>;
|
|
1473
|
+
/**
|
|
1474
|
+
* Combines another select query or raw expression to this query using `union`.
|
|
1475
|
+
*
|
|
1476
|
+
* The output row type of the combined query must match `this` query.
|
|
1477
|
+
*
|
|
1478
|
+
* ### Examples
|
|
1479
|
+
*
|
|
1480
|
+
* ```ts
|
|
1481
|
+
* await db.selectFrom('person')
|
|
1482
|
+
* .select(['id', 'first_name as name'])
|
|
1483
|
+
* .union(db.selectFrom('pet').select(['id', 'name']))
|
|
1484
|
+
* .orderBy('name')
|
|
1485
|
+
* .execute()
|
|
1486
|
+
* ```
|
|
1487
|
+
*
|
|
1488
|
+
* The generated SQL (PostgreSQL):
|
|
1489
|
+
*
|
|
1490
|
+
* ```sql
|
|
1491
|
+
* select "id", "first_name" as "name"
|
|
1492
|
+
* from "person"
|
|
1493
|
+
* union
|
|
1494
|
+
* select "id", "name"
|
|
1495
|
+
* from "pet"
|
|
1496
|
+
* order by "name"
|
|
1497
|
+
* ```
|
|
1498
|
+
*
|
|
1499
|
+
* You can provide a callback to get an expression builder.
|
|
1500
|
+
* In the following example, this allows us to wrap the query in parentheses:
|
|
1501
|
+
*
|
|
1502
|
+
* ```ts
|
|
1503
|
+
* await db.selectFrom('person')
|
|
1504
|
+
* .select(['id', 'first_name as name'])
|
|
1505
|
+
* .union((eb) => eb.parens(
|
|
1506
|
+
* eb.selectFrom('pet').select(['id', 'name'])
|
|
1507
|
+
* ))
|
|
1508
|
+
* .orderBy('name')
|
|
1509
|
+
* .execute()
|
|
1510
|
+
* ```
|
|
1511
|
+
*
|
|
1512
|
+
* The generated SQL (PostgreSQL):
|
|
1513
|
+
*
|
|
1514
|
+
* ```sql
|
|
1515
|
+
* select "id", "first_name" as "name"
|
|
1516
|
+
* from "person"
|
|
1517
|
+
* union
|
|
1518
|
+
* (
|
|
1519
|
+
* select "id", "name"
|
|
1520
|
+
* from "pet"
|
|
1521
|
+
* )
|
|
1522
|
+
* order by "name"
|
|
1523
|
+
* ```
|
|
1524
|
+
*/
|
|
1525
|
+
union<E extends SetOperandExpression<DB, O>>(expression: E): SelectQueryBuilder<DB, TB, O>;
|
|
1526
|
+
/**
|
|
1527
|
+
* Combines another select query or raw expression to this query using `union all`.
|
|
1528
|
+
*
|
|
1529
|
+
* The output row type of the combined query must match `this` query.
|
|
1530
|
+
*
|
|
1531
|
+
* ### Examples
|
|
1532
|
+
*
|
|
1533
|
+
* ```ts
|
|
1534
|
+
* await db.selectFrom('person')
|
|
1535
|
+
* .select(['id', 'first_name as name'])
|
|
1536
|
+
* .unionAll(db.selectFrom('pet').select(['id', 'name']))
|
|
1537
|
+
* .orderBy('name')
|
|
1538
|
+
* .execute()
|
|
1539
|
+
* ```
|
|
1540
|
+
*
|
|
1541
|
+
* The generated SQL (PostgreSQL):
|
|
1542
|
+
*
|
|
1543
|
+
* ```sql
|
|
1544
|
+
* select "id", "first_name" as "name"
|
|
1545
|
+
* from "person"
|
|
1546
|
+
* union all
|
|
1547
|
+
* select "id", "name"
|
|
1548
|
+
* from "pet"
|
|
1549
|
+
* order by "name"
|
|
1550
|
+
* ```
|
|
1551
|
+
*
|
|
1552
|
+
* You can provide a callback to get an expression builder.
|
|
1553
|
+
* In the following example, this allows us to wrap the query in parentheses:
|
|
1554
|
+
*
|
|
1555
|
+
* ```ts
|
|
1556
|
+
* await db.selectFrom('person')
|
|
1557
|
+
* .select(['id', 'first_name as name'])
|
|
1558
|
+
* .unionAll((eb) => eb.parens(
|
|
1559
|
+
* eb.selectFrom('pet').select(['id', 'name'])
|
|
1560
|
+
* ))
|
|
1561
|
+
* .orderBy('name')
|
|
1562
|
+
* .execute()
|
|
1563
|
+
* ```
|
|
1564
|
+
*
|
|
1565
|
+
* The generated SQL (PostgreSQL):
|
|
1566
|
+
*
|
|
1567
|
+
* ```sql
|
|
1568
|
+
* select "id", "first_name" as "name"
|
|
1569
|
+
* from "person"
|
|
1570
|
+
* union all
|
|
1571
|
+
* (
|
|
1572
|
+
* select "id", "name"
|
|
1573
|
+
* from "pet"
|
|
1574
|
+
* )
|
|
1575
|
+
* order by "name"
|
|
1576
|
+
* ```
|
|
1577
|
+
*/
|
|
1578
|
+
unionAll<E extends SetOperandExpression<DB, O>>(expression: E): SelectQueryBuilder<DB, TB, O>;
|
|
1579
|
+
/**
|
|
1580
|
+
* Combines another select query or raw expression to this query using `intersect`.
|
|
1581
|
+
*
|
|
1582
|
+
* The output row type of the combined query must match `this` query.
|
|
1583
|
+
*
|
|
1584
|
+
* ### Examples
|
|
1585
|
+
*
|
|
1586
|
+
* ```ts
|
|
1587
|
+
* await db.selectFrom('person')
|
|
1588
|
+
* .select(['id', 'first_name as name'])
|
|
1589
|
+
* .intersect(db.selectFrom('pet').select(['id', 'name']))
|
|
1590
|
+
* .orderBy('name')
|
|
1591
|
+
* .execute()
|
|
1592
|
+
* ```
|
|
1593
|
+
*
|
|
1594
|
+
* The generated SQL (PostgreSQL):
|
|
1595
|
+
*
|
|
1596
|
+
* ```sql
|
|
1597
|
+
* select "id", "first_name" as "name"
|
|
1598
|
+
* from "person"
|
|
1599
|
+
* intersect
|
|
1600
|
+
* select "id", "name"
|
|
1601
|
+
* from "pet"
|
|
1602
|
+
* order by "name"
|
|
1603
|
+
* ```
|
|
1604
|
+
*
|
|
1605
|
+
* You can provide a callback to get an expression builder.
|
|
1606
|
+
* In the following example, this allows us to wrap the query in parentheses:
|
|
1607
|
+
*
|
|
1608
|
+
* ```ts
|
|
1609
|
+
* await db.selectFrom('person')
|
|
1610
|
+
* .select(['id', 'first_name as name'])
|
|
1611
|
+
* .intersect((eb) => eb.parens(
|
|
1612
|
+
* eb.selectFrom('pet').select(['id', 'name'])
|
|
1613
|
+
* ))
|
|
1614
|
+
* .orderBy('name')
|
|
1615
|
+
* .execute()
|
|
1616
|
+
* ```
|
|
1617
|
+
*
|
|
1618
|
+
* The generated SQL (PostgreSQL):
|
|
1619
|
+
*
|
|
1620
|
+
* ```sql
|
|
1621
|
+
* select "id", "first_name" as "name"
|
|
1622
|
+
* from "person"
|
|
1623
|
+
* intersect
|
|
1624
|
+
* (
|
|
1625
|
+
* select "id", "name"
|
|
1626
|
+
* from "pet"
|
|
1627
|
+
* )
|
|
1628
|
+
* order by "name"
|
|
1629
|
+
* ```
|
|
1630
|
+
*/
|
|
1631
|
+
intersect<E extends SetOperandExpression<DB, O>>(expression: E): SelectQueryBuilder<DB, TB, O>;
|
|
1632
|
+
/**
|
|
1633
|
+
* Combines another select query or raw expression to this query using `intersect all`.
|
|
1634
|
+
*
|
|
1635
|
+
* The output row type of the combined query must match `this` query.
|
|
1636
|
+
*
|
|
1637
|
+
* ### Examples
|
|
1638
|
+
*
|
|
1639
|
+
* ```ts
|
|
1640
|
+
* await db.selectFrom('person')
|
|
1641
|
+
* .select(['id', 'first_name as name'])
|
|
1642
|
+
* .intersectAll(db.selectFrom('pet').select(['id', 'name']))
|
|
1643
|
+
* .orderBy('name')
|
|
1644
|
+
* .execute()
|
|
1645
|
+
* ```
|
|
1646
|
+
*
|
|
1647
|
+
* The generated SQL (PostgreSQL):
|
|
1648
|
+
*
|
|
1649
|
+
* ```sql
|
|
1650
|
+
* select "id", "first_name" as "name"
|
|
1651
|
+
* from "person"
|
|
1652
|
+
* intersect all
|
|
1653
|
+
* select "id", "name"
|
|
1654
|
+
* from "pet"
|
|
1655
|
+
* order by "name"
|
|
1656
|
+
* ```
|
|
1657
|
+
*
|
|
1658
|
+
* You can provide a callback to get an expression builder.
|
|
1659
|
+
* In the following example, this allows us to wrap the query in parentheses:
|
|
1660
|
+
*
|
|
1661
|
+
* ```ts
|
|
1662
|
+
* await db.selectFrom('person')
|
|
1663
|
+
* .select(['id', 'first_name as name'])
|
|
1664
|
+
* .intersectAll((eb) => eb.parens(
|
|
1665
|
+
* eb.selectFrom('pet').select(['id', 'name'])
|
|
1666
|
+
* ))
|
|
1667
|
+
* .orderBy('name')
|
|
1668
|
+
* .execute()
|
|
1669
|
+
* ```
|
|
1670
|
+
*
|
|
1671
|
+
* The generated SQL (PostgreSQL):
|
|
1672
|
+
*
|
|
1673
|
+
* ```sql
|
|
1674
|
+
* select "id", "first_name" as "name"
|
|
1675
|
+
* from "person"
|
|
1676
|
+
* intersect all
|
|
1677
|
+
* (
|
|
1678
|
+
* select "id", "name"
|
|
1679
|
+
* from "pet"
|
|
1680
|
+
* )
|
|
1681
|
+
* order by "name"
|
|
1682
|
+
* ```
|
|
1683
|
+
*/
|
|
1684
|
+
intersectAll<E extends SetOperandExpression<DB, O>>(expression: E): SelectQueryBuilder<DB, TB, O>;
|
|
1685
|
+
/**
|
|
1686
|
+
* Combines another select query or raw expression to this query using `except`.
|
|
1687
|
+
*
|
|
1688
|
+
* The output row type of the combined query must match `this` query.
|
|
1689
|
+
*
|
|
1690
|
+
* ### Examples
|
|
1691
|
+
*
|
|
1692
|
+
* ```ts
|
|
1693
|
+
* await db.selectFrom('person')
|
|
1694
|
+
* .select(['id', 'first_name as name'])
|
|
1695
|
+
* .except(db.selectFrom('pet').select(['id', 'name']))
|
|
1696
|
+
* .orderBy('name')
|
|
1697
|
+
* .execute()
|
|
1698
|
+
* ```
|
|
1699
|
+
*
|
|
1700
|
+
* The generated SQL (PostgreSQL):
|
|
1701
|
+
*
|
|
1702
|
+
* ```sql
|
|
1703
|
+
* select "id", "first_name" as "name"
|
|
1704
|
+
* from "person"
|
|
1705
|
+
* except
|
|
1706
|
+
* select "id", "name"
|
|
1707
|
+
* from "pet"
|
|
1708
|
+
* order by "name"
|
|
1709
|
+
* ```
|
|
1710
|
+
*
|
|
1711
|
+
* You can provide a callback to get an expression builder.
|
|
1712
|
+
* In the following example, this allows us to wrap the query in parentheses:
|
|
1713
|
+
*
|
|
1714
|
+
* ```ts
|
|
1715
|
+
* await db.selectFrom('person')
|
|
1716
|
+
* .select(['id', 'first_name as name'])
|
|
1717
|
+
* .except((eb) => eb.parens(
|
|
1718
|
+
* eb.selectFrom('pet').select(['id', 'name'])
|
|
1719
|
+
* ))
|
|
1720
|
+
* .orderBy('name')
|
|
1721
|
+
* .execute()
|
|
1722
|
+
* ```
|
|
1723
|
+
*
|
|
1724
|
+
* The generated SQL (PostgreSQL):
|
|
1725
|
+
*
|
|
1726
|
+
* ```sql
|
|
1727
|
+
* select "id", "first_name" as "name"
|
|
1728
|
+
* from "person"
|
|
1729
|
+
* except
|
|
1730
|
+
* (
|
|
1731
|
+
* select "id", "name"
|
|
1732
|
+
* from "pet"
|
|
1733
|
+
* )
|
|
1734
|
+
* order by "name"
|
|
1735
|
+
* ```
|
|
1736
|
+
*/
|
|
1737
|
+
except<E extends SetOperandExpression<DB, O>>(expression: E): SelectQueryBuilder<DB, TB, O>;
|
|
1738
|
+
/**
|
|
1739
|
+
* Combines another select query or raw expression to this query using `except all`.
|
|
1740
|
+
*
|
|
1741
|
+
* The output row type of the combined query must match `this` query.
|
|
1742
|
+
*
|
|
1743
|
+
* ### Examples
|
|
1744
|
+
*
|
|
1745
|
+
* ```ts
|
|
1746
|
+
* await db.selectFrom('person')
|
|
1747
|
+
* .select(['id', 'first_name as name'])
|
|
1748
|
+
* .exceptAll(db.selectFrom('pet').select(['id', 'name']))
|
|
1749
|
+
* .orderBy('name')
|
|
1750
|
+
* .execute()
|
|
1751
|
+
* ```
|
|
1752
|
+
*
|
|
1753
|
+
* The generated SQL (PostgreSQL):
|
|
1754
|
+
*
|
|
1755
|
+
* ```sql
|
|
1756
|
+
* select "id", "first_name" as "name"
|
|
1757
|
+
* from "person"
|
|
1758
|
+
* except all
|
|
1759
|
+
* select "id", "name"
|
|
1760
|
+
* from "pet"
|
|
1761
|
+
* order by "name"
|
|
1762
|
+
* ```
|
|
1763
|
+
*
|
|
1764
|
+
* You can provide a callback to get an expression builder.
|
|
1765
|
+
* In the following example, this allows us to wrap the query in parentheses:
|
|
1766
|
+
*
|
|
1767
|
+
* ```ts
|
|
1768
|
+
* await db.selectFrom('person')
|
|
1769
|
+
* .select(['id', 'first_name as name'])
|
|
1770
|
+
* .exceptAll((eb) => eb.parens(
|
|
1771
|
+
* eb.selectFrom('pet').select(['id', 'name'])
|
|
1772
|
+
* ))
|
|
1773
|
+
* .orderBy('name')
|
|
1774
|
+
* .execute()
|
|
1775
|
+
* ```
|
|
1776
|
+
*
|
|
1777
|
+
* The generated SQL (PostgreSQL):
|
|
1778
|
+
*
|
|
1779
|
+
* ```sql
|
|
1780
|
+
* select "id", "first_name" as "name"
|
|
1781
|
+
* from "person"
|
|
1782
|
+
* except all
|
|
1783
|
+
* (
|
|
1784
|
+
* select "id", "name"
|
|
1785
|
+
* from "pet"
|
|
1786
|
+
* )
|
|
1787
|
+
* order by "name"
|
|
1788
|
+
* ```
|
|
1789
|
+
*/
|
|
1790
|
+
exceptAll<E extends SetOperandExpression<DB, O>>(expression: E): SelectQueryBuilder<DB, TB, O>;
|
|
1791
|
+
/**
|
|
1792
|
+
* Gives an alias for the query. This method is only useful for sub queries.
|
|
1793
|
+
*
|
|
1794
|
+
* ### Examples
|
|
1795
|
+
*
|
|
1796
|
+
* ```ts
|
|
1797
|
+
* const pets = await db.selectFrom('pet')
|
|
1798
|
+
* .selectAll('pet')
|
|
1799
|
+
* .select(
|
|
1800
|
+
* (qb) => qb.selectFrom('person')
|
|
1801
|
+
* .select('first_name')
|
|
1802
|
+
* .whereRef('pet.owner_id', '=', 'person.id')
|
|
1803
|
+
* .as('owner_first_name')
|
|
1804
|
+
* )
|
|
1805
|
+
* .execute()
|
|
1806
|
+
*
|
|
1807
|
+
* pets[0].owner_first_name
|
|
1808
|
+
* ```
|
|
1809
|
+
*
|
|
1810
|
+
* The generated SQL (PostgreSQL):
|
|
1811
|
+
*
|
|
1812
|
+
* ```sql
|
|
1813
|
+
* select "pet".*, (
|
|
1814
|
+
* select "first_name"
|
|
1815
|
+
* from "person"
|
|
1816
|
+
* where "pet"."owner_id" = "person"."id"
|
|
1817
|
+
* ) as "owner_first_name"
|
|
1818
|
+
* from "pet"
|
|
1819
|
+
* ```
|
|
1820
|
+
*/
|
|
1821
|
+
as<A extends string>(alias: A): AliasedSelectQueryBuilder<O, A>;
|
|
1822
|
+
/**
|
|
1823
|
+
* Clears all select clauses from the query.
|
|
1824
|
+
*
|
|
1825
|
+
* ### Examples
|
|
1826
|
+
*
|
|
1827
|
+
* ```ts
|
|
1828
|
+
* await db.selectFrom('person')
|
|
1829
|
+
* .select(['id', 'first_name'])
|
|
1830
|
+
* .clearSelect()
|
|
1831
|
+
* .select(['id', 'gender'])
|
|
1832
|
+
* .execute()
|
|
1833
|
+
* ```
|
|
1834
|
+
*
|
|
1835
|
+
* The generated SQL(PostgreSQL):
|
|
1836
|
+
*
|
|
1837
|
+
* ```sql
|
|
1838
|
+
* select "id", "gender" from "person"
|
|
1839
|
+
* ```
|
|
1840
|
+
*/
|
|
1841
|
+
clearSelect(): SelectQueryBuilder<DB, TB, {}>;
|
|
1842
|
+
/**
|
|
1843
|
+
* Clears all where expressions from the query.
|
|
1844
|
+
*
|
|
1845
|
+
* ### Examples
|
|
1846
|
+
*
|
|
1847
|
+
* ```ts
|
|
1848
|
+
* db.selectFrom('person')
|
|
1849
|
+
* .selectAll()
|
|
1850
|
+
* .where('id','=',42)
|
|
1851
|
+
* .clearWhere()
|
|
1852
|
+
* ```
|
|
1853
|
+
*
|
|
1854
|
+
* The generated SQL(PostgreSQL):
|
|
1855
|
+
*
|
|
1856
|
+
* ```sql
|
|
1857
|
+
* select * from "person"
|
|
1858
|
+
* ```
|
|
1859
|
+
*/
|
|
1860
|
+
clearWhere(): SelectQueryBuilder<DB, TB, O>;
|
|
1861
|
+
/**
|
|
1862
|
+
* Clears limit clause from the query.
|
|
1863
|
+
*
|
|
1864
|
+
* ### Examples
|
|
1865
|
+
*
|
|
1866
|
+
* ```ts
|
|
1867
|
+
* await db.selectFrom('person')
|
|
1868
|
+
* .selectAll()
|
|
1869
|
+
* .limit(10)
|
|
1870
|
+
* .clearLimit()
|
|
1871
|
+
* .execute()
|
|
1872
|
+
* ```
|
|
1873
|
+
*
|
|
1874
|
+
* The generated SQL(PostgreSQL):
|
|
1875
|
+
*
|
|
1876
|
+
* ```sql
|
|
1877
|
+
* select * from "person"
|
|
1878
|
+
* ```
|
|
1879
|
+
*/
|
|
1880
|
+
clearLimit(): SelectQueryBuilder<DB, TB, O>;
|
|
1881
|
+
/**
|
|
1882
|
+
* Clears offset clause from the query.
|
|
1883
|
+
*
|
|
1884
|
+
* ### Examples
|
|
1885
|
+
*
|
|
1886
|
+
* ```ts
|
|
1887
|
+
* await db.selectFrom('person')
|
|
1888
|
+
* .selectAll()
|
|
1889
|
+
* .limit(10)
|
|
1890
|
+
* .offset(20)
|
|
1891
|
+
* .clearOffset()
|
|
1892
|
+
* .execute()
|
|
1893
|
+
* ```
|
|
1894
|
+
*
|
|
1895
|
+
* The generated SQL(PostgreSQL):
|
|
1896
|
+
*
|
|
1897
|
+
* ```sql
|
|
1898
|
+
* select * from "person" limit 10
|
|
1899
|
+
* ```
|
|
1900
|
+
*/
|
|
1901
|
+
clearOffset(): SelectQueryBuilder<DB, TB, O>;
|
|
1902
|
+
/**
|
|
1903
|
+
* Clears all `order by` clauses from the query.
|
|
1904
|
+
*
|
|
1905
|
+
* ### Examples
|
|
1906
|
+
*
|
|
1907
|
+
* ```ts
|
|
1908
|
+
* await db.selectFrom('person')
|
|
1909
|
+
* .selectAll()
|
|
1910
|
+
* .orderBy('id')
|
|
1911
|
+
* .clearOrderBy()
|
|
1912
|
+
* .execute()
|
|
1913
|
+
* ```
|
|
1914
|
+
*
|
|
1915
|
+
* The generated SQL(PostgreSQL):
|
|
1916
|
+
*
|
|
1917
|
+
* ```sql
|
|
1918
|
+
* select * from "person"
|
|
1919
|
+
* ```
|
|
1920
|
+
*/
|
|
1921
|
+
clearOrderBy(): SelectQueryBuilder<DB, TB, O>;
|
|
1922
|
+
/**
|
|
1923
|
+
* Clears `group by` clause from the query.
|
|
1924
|
+
*
|
|
1925
|
+
* ### Examples
|
|
1926
|
+
*
|
|
1927
|
+
* ```ts
|
|
1928
|
+
* await db.selectFrom('person')
|
|
1929
|
+
* .selectAll()
|
|
1930
|
+
* .groupBy('id')
|
|
1931
|
+
* .clearGroupBy()
|
|
1932
|
+
* .execute()
|
|
1933
|
+
* ```
|
|
1934
|
+
*
|
|
1935
|
+
* The generated SQL(PostgreSQL):
|
|
1936
|
+
*
|
|
1937
|
+
* ```sql
|
|
1938
|
+
* select * from "person"
|
|
1939
|
+
* ```
|
|
1940
|
+
*/
|
|
1941
|
+
clearGroupBy(): SelectQueryBuilder<DB, TB, O>;
|
|
1942
|
+
/**
|
|
1943
|
+
* Simply calls the provided function passing `this` as the only argument. `$call` returns
|
|
1944
|
+
* what the provided function returns.
|
|
1945
|
+
*
|
|
1946
|
+
* If you want to conditionally call a method on `this`, see
|
|
1947
|
+
* the {@link $if} method.
|
|
1948
|
+
*
|
|
1949
|
+
* ### Examples
|
|
1950
|
+
*
|
|
1951
|
+
* The next example uses a helper function `log` to log a query:
|
|
1952
|
+
*
|
|
1953
|
+
* ```ts
|
|
1954
|
+
* import type { Compilable } from 'kysely'
|
|
1955
|
+
*
|
|
1956
|
+
* function log<T extends Compilable>(qb: T): T {
|
|
1957
|
+
* console.log(qb.compile())
|
|
1958
|
+
* return qb
|
|
1959
|
+
* }
|
|
1960
|
+
*
|
|
1961
|
+
* await db.selectFrom('person')
|
|
1962
|
+
* .selectAll()
|
|
1963
|
+
* .$call(log)
|
|
1964
|
+
* .execute()
|
|
1965
|
+
* ```
|
|
1966
|
+
*/
|
|
1967
|
+
$call<T>(func: (qb: this) => T): T;
|
|
1968
|
+
/**
|
|
1969
|
+
* Call `func(this)` if `condition` is true.
|
|
1970
|
+
*
|
|
1971
|
+
* NOTE: This method has an impact on TypeScript performance and it should only be used
|
|
1972
|
+
* when necessary. Remember that you can call most methods like `where` conditionally
|
|
1973
|
+
* like this:
|
|
1974
|
+
*
|
|
1975
|
+
* ```ts
|
|
1976
|
+
* async function getPeople(firstName?: string, lastName?: string) {
|
|
1977
|
+
* let query = db.selectFrom('person').selectAll()
|
|
1978
|
+
*
|
|
1979
|
+
* if (firstName) {
|
|
1980
|
+
* query = query.where('first_name', '=', firstName)
|
|
1981
|
+
* }
|
|
1982
|
+
*
|
|
1983
|
+
* if (lastName) {
|
|
1984
|
+
* query = query.where('last_name', '=', lastName)
|
|
1985
|
+
* }
|
|
1986
|
+
*
|
|
1987
|
+
* return await query.execute()
|
|
1988
|
+
* }
|
|
1989
|
+
* ```
|
|
1990
|
+
*
|
|
1991
|
+
* This method is mainly useful with optional selects. Any `select` or `selectAll`
|
|
1992
|
+
* method called inside the callback add optional fields to the result type. This is
|
|
1993
|
+
* because we can't know if those selections were actually made before running the code.
|
|
1994
|
+
*
|
|
1995
|
+
* Also see [this recipe](https://github.com/kysely-org/kysely/blob/master/site/docs/recipes/0005-conditional-selects.md)
|
|
1996
|
+
*
|
|
1997
|
+
* ### Examples
|
|
1998
|
+
*
|
|
1999
|
+
* ```ts
|
|
2000
|
+
* async function getPerson(id: number, withLastName: boolean) {
|
|
2001
|
+
* return await db
|
|
2002
|
+
* .selectFrom('person')
|
|
2003
|
+
* .select(['id', 'first_name'])
|
|
2004
|
+
* .$if(withLastName, (qb) => qb.select('last_name'))
|
|
2005
|
+
* .where('id', '=', id)
|
|
2006
|
+
* .executeTakeFirstOrThrow()
|
|
2007
|
+
* }
|
|
2008
|
+
* ```
|
|
2009
|
+
*
|
|
2010
|
+
* Any selections added inside the `if` callback will be added as optional fields to the
|
|
2011
|
+
* output type since we can't know if the selections were actually made before running
|
|
2012
|
+
* the code. In the example above the return type of the `getPerson` function is:
|
|
2013
|
+
*
|
|
2014
|
+
* ```ts
|
|
2015
|
+
* Promise<{
|
|
2016
|
+
* id: number
|
|
2017
|
+
* first_name: string
|
|
2018
|
+
* last_name?: string
|
|
2019
|
+
* }>
|
|
2020
|
+
* ```
|
|
2021
|
+
*
|
|
2022
|
+
* You can also call any other methods inside the callback:
|
|
2023
|
+
*
|
|
2024
|
+
* ```ts
|
|
2025
|
+
* async function getPeople(firstName?: string, petCountLimit?: number) {
|
|
2026
|
+
* return await db.selectFrom('person')
|
|
2027
|
+
* .select('person.id')
|
|
2028
|
+
* .$if(firstName != null, (qb) => qb.where('first_name', '=', firstName!))
|
|
2029
|
+
* .$if(petCountLimit != null, (qb) => qb
|
|
2030
|
+
* .innerJoin('pet', 'pet.owner_id', 'person.id')
|
|
2031
|
+
* .having((eb) => eb.fn.count('pet.id'), '>', petCountLimit!)
|
|
2032
|
+
* .groupBy('person.id')
|
|
2033
|
+
* )
|
|
2034
|
+
* .execute()
|
|
2035
|
+
* }
|
|
2036
|
+
* ```
|
|
2037
|
+
*/
|
|
2038
|
+
$if<O2>(condition: boolean, func: (qb: this) => SelectQueryBuilder<any, any, O & O2>): SelectQueryBuilder<DB, TB, O & Partial<Omit<O2, keyof O>>>;
|
|
2039
|
+
/**
|
|
2040
|
+
* Change the output type of the query.
|
|
2041
|
+
*
|
|
2042
|
+
* This method call doesn't change the SQL in any way. This methods simply
|
|
2043
|
+
* returns a copy of this `SelectQueryBuilder` with a new output type.
|
|
2044
|
+
*/
|
|
2045
|
+
$castTo<C>(): SelectQueryBuilder<DB, TB, C>;
|
|
2046
|
+
/**
|
|
2047
|
+
* Changes the output type from an object to a tuple.
|
|
2048
|
+
*
|
|
2049
|
+
* This doesn't affect the generated SQL in any way. This function is
|
|
2050
|
+
* just a necessary evil when you need to convert a query's output
|
|
2051
|
+
* record type to a tuple type. Typescript doesn't currently offer
|
|
2052
|
+
* tools to do this automatically (without insane hackery).
|
|
2053
|
+
*
|
|
2054
|
+
* The returned object can no longer be executed. It can only be used
|
|
2055
|
+
* as a subquery.
|
|
2056
|
+
*
|
|
2057
|
+
* ### Examples
|
|
2058
|
+
*
|
|
2059
|
+
* ```ts
|
|
2060
|
+
* const result = await db
|
|
2061
|
+
* .selectFrom('person')
|
|
2062
|
+
* .selectAll('person')
|
|
2063
|
+
* .where(({ eb, refTuple, selectFrom }) => eb(
|
|
2064
|
+
* refTuple('first_name', 'last_name'),
|
|
2065
|
+
* 'in',
|
|
2066
|
+
* selectFrom('pet')
|
|
2067
|
+
* .select(['name', 'species'])
|
|
2068
|
+
* .where('pet.species', '!=', 'cat')
|
|
2069
|
+
* .$asTuple('name', 'species')
|
|
2070
|
+
* ))
|
|
2071
|
+
* .execute()
|
|
2072
|
+
* ```
|
|
2073
|
+
*
|
|
2074
|
+
* The generated SQL(PostgreSQL):
|
|
2075
|
+
*
|
|
2076
|
+
* ```sql
|
|
2077
|
+
* select
|
|
2078
|
+
* "person".*
|
|
2079
|
+
* from
|
|
2080
|
+
* "person"
|
|
2081
|
+
* where
|
|
2082
|
+
* ("first_name", "last_name")
|
|
2083
|
+
* in
|
|
2084
|
+
* (
|
|
2085
|
+
* select "name", "species"
|
|
2086
|
+
* from "pet"
|
|
2087
|
+
* where "pet"."species" != $1
|
|
2088
|
+
* )
|
|
2089
|
+
* ```
|
|
2090
|
+
*/
|
|
2091
|
+
$asTuple<K1 extends keyof O, K2 extends Exclude<keyof O, K1>>(key1: K1, key2: K2): keyof O extends K1 | K2 ? ExpressionWrapper<DB, TB, [O[K1], O[K2]]> : KyselyTypeError<'$asTuple() call failed: All selected columns must be provided as arguments'>;
|
|
2092
|
+
$asTuple<K1 extends keyof O, K2 extends Exclude<keyof O, K1>, K3 extends Exclude<keyof O, K1 | K2>>(key1: K1, key2: K2, key3: K3): keyof O extends K1 | K2 | K3 ? ExpressionWrapper<DB, TB, [O[K1], O[K2], O[K3]]> : KyselyTypeError<'$asTuple() call failed: All selected columns must be provided as arguments'>;
|
|
2093
|
+
$asTuple<K1 extends keyof O, K2 extends Exclude<keyof O, K1>, K3 extends Exclude<keyof O, K1 | K2>, K4 extends Exclude<keyof O, K1 | K2 | K3>>(key1: K1, key2: K2, key3: K3, key4: K4): keyof O extends K1 | K2 | K3 | K4 ? ExpressionWrapper<DB, TB, [O[K1], O[K2], O[K3], O[K4]]> : KyselyTypeError<'$asTuple() call failed: All selected columns must be provided as arguments'>;
|
|
2094
|
+
$asTuple<K1 extends keyof O, K2 extends Exclude<keyof O, K1>, K3 extends Exclude<keyof O, K1 | K2>, K4 extends Exclude<keyof O, K1 | K2 | K3>, K5 extends Exclude<keyof O, K1 | K2 | K3 | K4>>(key1: K1, key2: K2, key3: K3, key4: K4, key5: K5): keyof O extends K1 | K2 | K3 | K4 | K5 ? ExpressionWrapper<DB, TB, [O[K1], O[K2], O[K3], O[K4], O[K5]]> : KyselyTypeError<'$asTuple() call failed: All selected columns must be provided as arguments'>;
|
|
2095
|
+
/**
|
|
2096
|
+
* Plucks the value type of the output record.
|
|
2097
|
+
*
|
|
2098
|
+
* In SQL, any record type that only has one column can be used as a scalar.
|
|
2099
|
+
* For example a query like this works:
|
|
2100
|
+
*
|
|
2101
|
+
* ```sql
|
|
2102
|
+
* select
|
|
2103
|
+
* id,
|
|
2104
|
+
* first_name
|
|
2105
|
+
* from
|
|
2106
|
+
* person as p
|
|
2107
|
+
* where
|
|
2108
|
+
* -- This is ok since the query only selects one row
|
|
2109
|
+
* -- and one column.
|
|
2110
|
+
* (select name from pet where pet.owner_id = p.id limit 1) = 'Doggo'
|
|
2111
|
+
* ```
|
|
2112
|
+
*
|
|
2113
|
+
* In many cases Kysely handles this automatically and picks the correct
|
|
2114
|
+
* scalar type instead of the record type, but sometimes you need to give
|
|
2115
|
+
* Kysely a hint.
|
|
2116
|
+
*
|
|
2117
|
+
* One such case are custom helper functions that take `Expression<T>`
|
|
2118
|
+
* instances as inputs:
|
|
2119
|
+
*
|
|
2120
|
+
* ```ts
|
|
2121
|
+
* import type { Expression } from 'kysely'
|
|
2122
|
+
*
|
|
2123
|
+
* function doStuff(expr: Expression<string>) {
|
|
2124
|
+
* // ...
|
|
2125
|
+
* }
|
|
2126
|
+
*
|
|
2127
|
+
* // Error! This is not ok because the expression type is
|
|
2128
|
+
* // `{ first_name: string }` instead of `string`.
|
|
2129
|
+
* // doStuff(db.selectFrom('person').select('first_name'))
|
|
2130
|
+
*
|
|
2131
|
+
* // Ok! This is ok since we've plucked the `string` type of the
|
|
2132
|
+
* // only column in the output type.
|
|
2133
|
+
* doStuff(db.selectFrom('person').select('first_name').$asScalar())
|
|
2134
|
+
* ```
|
|
2135
|
+
*
|
|
2136
|
+
* This function has absolutely no effect on the generated SQL. It's
|
|
2137
|
+
* purely a type-level helper.
|
|
2138
|
+
*
|
|
2139
|
+
* This method returns an `ExpressionWrapper` instead of a `SelectQueryBuilder`
|
|
2140
|
+
* since the return value should only be used as a part of an expression
|
|
2141
|
+
* and never executed as the main query.
|
|
2142
|
+
*/
|
|
2143
|
+
$asScalar<K extends keyof O = keyof O>(): ExpressionWrapper<DB, TB, O[K]>;
|
|
2144
|
+
/**
|
|
2145
|
+
* Narrows (parts of) the output type of the query.
|
|
2146
|
+
*
|
|
2147
|
+
* Kysely tries to be as type-safe as possible, but in some cases we have to make
|
|
2148
|
+
* compromises for better maintainability and compilation performance. At present,
|
|
2149
|
+
* Kysely doesn't narrow the output type of the query when using {@link where}, {@link having}
|
|
2150
|
+
* or {@link JoinQueryBuilder.on}.
|
|
2151
|
+
*
|
|
2152
|
+
* This utility method is very useful for these situations, as it removes unncessary
|
|
2153
|
+
* runtime assertion/guard code. Its input type is limited to the output type
|
|
2154
|
+
* of the query, so you can't add a column that doesn't exist, or change a column's
|
|
2155
|
+
* type to something that doesn't exist in its union type.
|
|
2156
|
+
*
|
|
2157
|
+
* ### Examples
|
|
2158
|
+
*
|
|
2159
|
+
* Turn this code:
|
|
2160
|
+
*
|
|
2161
|
+
* ```ts
|
|
2162
|
+
* import type { Person } from 'type-editor' // imaginary module
|
|
2163
|
+
*
|
|
2164
|
+
* const person = await db.selectFrom('person')
|
|
2165
|
+
* .where('nullable_column', 'is not', null)
|
|
2166
|
+
* .selectAll()
|
|
2167
|
+
* .executeTakeFirstOrThrow()
|
|
2168
|
+
*
|
|
2169
|
+
* if (isWithNoNullValue(person)) {
|
|
2170
|
+
* functionThatExpectsPersonWithNonNullValue(person)
|
|
2171
|
+
* }
|
|
2172
|
+
*
|
|
2173
|
+
* function isWithNoNullValue(person: Person): person is Person & { nullable_column: string } {
|
|
2174
|
+
* return person.nullable_column != null
|
|
2175
|
+
* }
|
|
2176
|
+
* ```
|
|
2177
|
+
*
|
|
2178
|
+
* Into this:
|
|
2179
|
+
*
|
|
2180
|
+
* ```ts
|
|
2181
|
+
* import type { NotNull } from 'kysely'
|
|
2182
|
+
*
|
|
2183
|
+
* const person = await db.selectFrom('person')
|
|
2184
|
+
* .where('nullable_column', 'is not', null)
|
|
2185
|
+
* .selectAll()
|
|
2186
|
+
* .$narrowType<{ nullable_column: NotNull }>()
|
|
2187
|
+
* .executeTakeFirstOrThrow()
|
|
2188
|
+
*
|
|
2189
|
+
* functionThatExpectsPersonWithNonNullValue(person)
|
|
2190
|
+
* ```
|
|
2191
|
+
*
|
|
2192
|
+
* Giving the explicit narrowed type (`string` in the example above) works fine for
|
|
2193
|
+
* simple types. If the type is complex, for example a JSON column or a subquery,
|
|
2194
|
+
* you can use the special `NotNull` type to make the column not null.
|
|
2195
|
+
*
|
|
2196
|
+
* ```ts
|
|
2197
|
+
* import { NotNull } from 'kysely'
|
|
2198
|
+
*
|
|
2199
|
+
* const person = await db.selectFrom('person')
|
|
2200
|
+
* .where('nullable_column', 'is not', null)
|
|
2201
|
+
* .selectAll()
|
|
2202
|
+
* .$narrowType<{ nullable_column: NotNull }>()
|
|
2203
|
+
* .executeTakeFirstOrThrow()
|
|
2204
|
+
*
|
|
2205
|
+
* functionThatExpectsPersonWithNonNullValue(person)
|
|
2206
|
+
* ```
|
|
2207
|
+
*/
|
|
2208
|
+
$narrowType<T>(): SelectQueryBuilder<DB, TB, NarrowPartial<O, T>>;
|
|
2209
|
+
/**
|
|
2210
|
+
* Asserts that query's output row type equals the given type `T`.
|
|
2211
|
+
*
|
|
2212
|
+
* This method can be used to simplify excessively complex types to make TypeScript happy
|
|
2213
|
+
* and much faster.
|
|
2214
|
+
*
|
|
2215
|
+
* Kysely uses complex type magic to achieve its type safety. This complexity is sometimes too much
|
|
2216
|
+
* for TypeScript and you get errors like this:
|
|
2217
|
+
*
|
|
2218
|
+
* ```
|
|
2219
|
+
* error TS2589: Type instantiation is excessively deep and possibly infinite.
|
|
2220
|
+
* ```
|
|
2221
|
+
*
|
|
2222
|
+
* In these case you can often use this method to help TypeScript a little bit. When you use this
|
|
2223
|
+
* method to assert the output type of a query, Kysely can drop the complex output type that
|
|
2224
|
+
* consists of multiple nested helper types and replace it with the simple asserted type.
|
|
2225
|
+
*
|
|
2226
|
+
* Using this method doesn't reduce type safety at all. You have to pass in a type that is
|
|
2227
|
+
* structurally equal to the current type.
|
|
2228
|
+
*
|
|
2229
|
+
* ### Examples
|
|
2230
|
+
*
|
|
2231
|
+
* ```ts
|
|
2232
|
+
* const result = await db
|
|
2233
|
+
* .with('first_and_last', (qb) => qb
|
|
2234
|
+
* .selectFrom('person')
|
|
2235
|
+
* .select(['first_name', 'last_name'])
|
|
2236
|
+
* .$assertType<{ first_name: string, last_name: string | null }>()
|
|
2237
|
+
* )
|
|
2238
|
+
* .with('age', (qb) => qb
|
|
2239
|
+
* .selectFrom('person')
|
|
2240
|
+
* .select('age')
|
|
2241
|
+
* .$assertType<{ age: number | null }>()
|
|
2242
|
+
* )
|
|
2243
|
+
* .selectFrom(['first_and_last', 'age'])
|
|
2244
|
+
* .selectAll()
|
|
2245
|
+
* .executeTakeFirstOrThrow()
|
|
2246
|
+
* ```
|
|
2247
|
+
*/
|
|
2248
|
+
$assertType<T extends O>(): O extends T ? SelectQueryBuilder<DB, TB, T> : KyselyTypeError<`$assertType() call failed: The type passed in is not equal to the output type of the query.`>;
|
|
2249
|
+
/**
|
|
2250
|
+
* Returns a copy of this SelectQueryBuilder instance with the given plugin installed.
|
|
2251
|
+
*/
|
|
2252
|
+
withPlugin(plugin: KyselyPlugin): SelectQueryBuilder<DB, TB, O>;
|
|
2253
|
+
/**
|
|
2254
|
+
* Creates the OperationNode that describes how to compile this expression into SQL.
|
|
2255
|
+
*
|
|
2256
|
+
* ### Examples
|
|
2257
|
+
*
|
|
2258
|
+
* If you are creating a custom expression, it's often easiest to use the {@link sql}
|
|
2259
|
+
* template tag to build the node:
|
|
2260
|
+
*
|
|
2261
|
+
* ```ts
|
|
2262
|
+
* import { type Expression, type OperationNode, sql } from 'kysely'
|
|
2263
|
+
*
|
|
2264
|
+
* class SomeExpression<T> implements Expression<T> {
|
|
2265
|
+
* get expressionType(): T | undefined {
|
|
2266
|
+
* return undefined
|
|
2267
|
+
* }
|
|
2268
|
+
*
|
|
2269
|
+
* toOperationNode(): OperationNode {
|
|
2270
|
+
* return sql`some sql here`.toOperationNode()
|
|
2271
|
+
* }
|
|
2272
|
+
* }
|
|
2273
|
+
* ```
|
|
2274
|
+
*/
|
|
2275
|
+
toOperationNode(): SelectQueryNode;
|
|
2276
|
+
compile(): CompiledQuery<Simplify<O>>;
|
|
2277
|
+
/**
|
|
2278
|
+
* Executes the query and returns an array of rows.
|
|
2279
|
+
*
|
|
2280
|
+
* Also see the {@link executeTakeFirst} and {@link executeTakeFirstOrThrow} methods.
|
|
2281
|
+
*/
|
|
2282
|
+
execute(): Promise<Simplify<O>[]>;
|
|
2283
|
+
/**
|
|
2284
|
+
* Executes the query and returns the first result or undefined if
|
|
2285
|
+
* the query returned no result.
|
|
2286
|
+
*/
|
|
2287
|
+
executeTakeFirst(): Promise<SimplifySingleResult<O>>;
|
|
2288
|
+
/**
|
|
2289
|
+
* Executes the query and returns the first result or throws if
|
|
2290
|
+
* the query returned no result.
|
|
2291
|
+
*
|
|
2292
|
+
* By default an instance of {@link NoResultError} is thrown, but you can
|
|
2293
|
+
* provide a custom error class, or callback to throw a different
|
|
2294
|
+
* error.
|
|
2295
|
+
*/
|
|
2296
|
+
executeTakeFirstOrThrow(errorConstructor?: NoResultErrorConstructor | ((node: QueryNode) => Error)): Promise<Simplify<O>>;
|
|
2297
|
+
/**
|
|
2298
|
+
* Executes the query and streams the rows.
|
|
2299
|
+
*
|
|
2300
|
+
* The optional argument `chunkSize` defines how many rows to fetch from the database
|
|
2301
|
+
* at a time. It only affects some dialects like PostgreSQL that support it.
|
|
2302
|
+
*
|
|
2303
|
+
* ### Examples
|
|
2304
|
+
*
|
|
2305
|
+
* ```ts
|
|
2306
|
+
* const stream = db
|
|
2307
|
+
* .selectFrom('person')
|
|
2308
|
+
* .select(['first_name', 'last_name'])
|
|
2309
|
+
* .where('gender', '=', 'other')
|
|
2310
|
+
* .stream()
|
|
2311
|
+
*
|
|
2312
|
+
* for await (const person of stream) {
|
|
2313
|
+
* console.log(person.first_name)
|
|
2314
|
+
*
|
|
2315
|
+
* if (person.last_name === 'Something') {
|
|
2316
|
+
* // Breaking or returning before the stream has ended will release
|
|
2317
|
+
* // the database connection and invalidate the stream.
|
|
2318
|
+
* break
|
|
2319
|
+
* }
|
|
2320
|
+
* }
|
|
2321
|
+
* ```
|
|
2322
|
+
*/
|
|
2323
|
+
stream(chunkSize?: number): AsyncIterableIterator<O>;
|
|
2324
|
+
/**
|
|
2325
|
+
* Executes query with `explain` statement before the main query.
|
|
2326
|
+
*
|
|
2327
|
+
* ```ts
|
|
2328
|
+
* const explained = await db
|
|
2329
|
+
* .selectFrom('person')
|
|
2330
|
+
* .where('gender', '=', 'female')
|
|
2331
|
+
* .selectAll()
|
|
2332
|
+
* .explain('json')
|
|
2333
|
+
* ```
|
|
2334
|
+
*
|
|
2335
|
+
* The generated SQL (MySQL):
|
|
2336
|
+
*
|
|
2337
|
+
* ```sql
|
|
2338
|
+
* explain format=json select * from `person` where `gender` = ?
|
|
2339
|
+
* ```
|
|
2340
|
+
*
|
|
2341
|
+
* You can also execute `explain analyze` statements.
|
|
2342
|
+
*
|
|
2343
|
+
* ```ts
|
|
2344
|
+
* import { sql } from 'kysely'
|
|
2345
|
+
*
|
|
2346
|
+
* const explained = await db
|
|
2347
|
+
* .selectFrom('person')
|
|
2348
|
+
* .where('gender', '=', 'female')
|
|
2349
|
+
* .selectAll()
|
|
2350
|
+
* .explain('json', sql`analyze`)
|
|
2351
|
+
* ```
|
|
2352
|
+
*
|
|
2353
|
+
* The generated SQL (PostgreSQL):
|
|
2354
|
+
*
|
|
2355
|
+
* ```sql
|
|
2356
|
+
* explain (analyze, format json) select * from "person" where "gender" = $1
|
|
2357
|
+
* ```
|
|
2358
|
+
*/
|
|
2359
|
+
explain<ER extends Record<string, any> = Record<string, any>>(format?: ExplainFormat, options?: Expression<any>): Promise<ER[]>;
|
|
2360
|
+
}
|
|
2361
|
+
export declare function createSelectQueryBuilder<DB, TB extends keyof DB, O>(props: SelectQueryBuilderProps): SelectQueryBuilder<DB, TB, O>;
|
|
2362
|
+
export interface SelectQueryBuilderProps {
|
|
2363
|
+
readonly queryId: QueryId;
|
|
2364
|
+
readonly queryNode: SelectQueryNode;
|
|
2365
|
+
readonly executor: QueryExecutor;
|
|
2366
|
+
}
|
|
2367
|
+
export interface AliasedSelectQueryBuilder<O = undefined, A extends string = never> extends AliasedExpression<O, A> {
|
|
2368
|
+
get isAliasedSelectQueryBuilder(): true;
|
|
2369
|
+
}
|
|
2370
|
+
export type SelectQueryBuilderWithInnerJoin<DB, TB extends keyof DB, O, TE extends TableExpression<DB, TB>> = TE extends `${infer T} as ${infer A}` ? T extends keyof DB ? InnerJoinedBuilder<DB, TB, O, A, DB[T]> : never : TE extends keyof DB ? SelectQueryBuilder<DB, TB | TE, O> : TE extends AliasedExpression<infer QO, infer QA> ? InnerJoinedBuilder<DB, TB, O, QA, QO> : TE extends (qb: any) => AliasedExpression<infer QO, infer QA> ? InnerJoinedBuilder<DB, TB, O, QA, QO> : never;
|
|
2371
|
+
type InnerJoinedBuilder<DB, TB extends keyof DB, O, A extends string, R> = A extends keyof DB ? SelectQueryBuilder<InnerJoinedDB<DB, A, R>, TB | A, O> : SelectQueryBuilder<DB & ShallowRecord<A, R>, TB | A, O>;
|
|
2372
|
+
type InnerJoinedDB<DB, A extends string, R> = DrainOuterGeneric<{
|
|
2373
|
+
[C in keyof DB | A]: C extends A ? R : C extends keyof DB ? DB[C] : never;
|
|
2374
|
+
}>;
|
|
2375
|
+
export type SelectQueryBuilderWithLeftJoin<DB, TB extends keyof DB, O, TE extends TableExpression<DB, TB>> = TE extends `${infer T} as ${infer A}` ? T extends keyof DB ? LeftJoinedBuilder<DB, TB, O, A, DB[T]> : never : TE extends keyof DB ? LeftJoinedBuilder<DB, TB, O, TE, DB[TE]> : TE extends AliasedExpression<infer QO, infer QA> ? LeftJoinedBuilder<DB, TB, O, QA, QO> : TE extends (qb: any) => AliasedExpression<infer QO, infer QA> ? LeftJoinedBuilder<DB, TB, O, QA, QO> : never;
|
|
2376
|
+
type LeftJoinedBuilder<DB, TB extends keyof DB, O, A extends keyof any, R> = A extends keyof DB ? SelectQueryBuilder<LeftJoinedDB<DB, A, R>, TB | A, O> : SelectQueryBuilder<DB & ShallowRecord<A, Nullable<R>>, TB | A, O>;
|
|
2377
|
+
type LeftJoinedDB<DB, A extends keyof any, R> = DrainOuterGeneric<{
|
|
2378
|
+
[C in keyof DB | A]: C extends A ? Nullable<R> : C extends keyof DB ? DB[C] : never;
|
|
2379
|
+
}>;
|
|
2380
|
+
export type SelectQueryBuilderWithRightJoin<DB, TB extends keyof DB, O, TE extends TableExpression<DB, TB>> = TE extends `${infer T} as ${infer A}` ? T extends keyof DB ? RightJoinedBuilder<DB, TB, O, A, DB[T]> : never : TE extends keyof DB ? RightJoinedBuilder<DB, TB, O, TE, DB[TE]> : TE extends AliasedExpression<infer QO, infer QA> ? RightJoinedBuilder<DB, TB, O, QA, QO> : TE extends (qb: any) => AliasedExpression<infer QO, infer QA> ? RightJoinedBuilder<DB, TB, O, QA, QO> : never;
|
|
2381
|
+
type RightJoinedBuilder<DB, TB extends keyof DB, O, A extends keyof any, R> = SelectQueryBuilder<RightJoinedDB<DB, TB, A, R>, TB | A, O>;
|
|
2382
|
+
type RightJoinedDB<DB, TB extends keyof DB, A extends keyof any, R> = DrainOuterGeneric<{
|
|
2383
|
+
[C in keyof DB | A]: C extends A ? R : C extends TB ? Nullable<DB[C]> : C extends keyof DB ? DB[C] : never;
|
|
2384
|
+
}>;
|
|
2385
|
+
export type SelectQueryBuilderWithFullJoin<DB, TB extends keyof DB, O, TE extends TableExpression<DB, TB>> = TE extends `${infer T} as ${infer A}` ? T extends keyof DB ? OuterJoinedBuilder<DB, TB, O, A, DB[T]> : never : TE extends keyof DB ? OuterJoinedBuilder<DB, TB, O, TE, DB[TE]> : TE extends AliasedExpression<infer QO, infer QA> ? OuterJoinedBuilder<DB, TB, O, QA, QO> : TE extends (qb: any) => AliasedExpression<infer QO, infer QA> ? OuterJoinedBuilder<DB, TB, O, QA, QO> : never;
|
|
2386
|
+
type OuterJoinedBuilder<DB, TB extends keyof DB, O, A extends keyof any, R> = SelectQueryBuilder<OuterJoinedBuilderDB<DB, TB, A, R>, TB | A, O>;
|
|
2387
|
+
type OuterJoinedBuilderDB<DB, TB extends keyof DB, A extends keyof any, R> = DrainOuterGeneric<{
|
|
2388
|
+
[C in keyof DB | A]: C extends A ? Nullable<R> : C extends TB ? Nullable<DB[C]> : C extends keyof DB ? DB[C] : never;
|
|
2389
|
+
}>;
|
|
2390
|
+
type TableOrList<TB extends keyof any> = (TB & string) | ReadonlyArray<TB & string>;
|
|
2391
|
+
export {};
|