kysely 0.16.0 → 0.16.4

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.
Files changed (230) hide show
  1. package/README.md +4 -4
  2. package/dist/cjs/dialect/mysql/mysql-dialect-config.d.ts +205 -0
  3. package/dist/cjs/dialect/mysql/mysql-dialect-config.js +2 -0
  4. package/dist/cjs/dialect/mysql/mysql-dialect.d.ts +1 -205
  5. package/dist/cjs/dialect/mysql/mysql-driver.d.ts +1 -1
  6. package/dist/cjs/dialect/mysql/mysql-driver.js +10 -2
  7. package/dist/cjs/dialect/postgres/postgres-dialect-config.d.ts +103 -0
  8. package/dist/cjs/dialect/postgres/postgres-dialect-config.js +2 -0
  9. package/dist/cjs/dialect/postgres/postgres-dialect.d.ts +1 -103
  10. package/dist/cjs/dialect/postgres/postgres-driver.d.ts +1 -1
  11. package/dist/cjs/dialect/postgres/postgres-driver.js +11 -2
  12. package/dist/cjs/dialect/sqlite/sqlite-dialect-config.d.ts +43 -0
  13. package/dist/cjs/dialect/sqlite/sqlite-dialect-config.js +2 -0
  14. package/dist/cjs/dialect/sqlite/sqlite-dialect.d.ts +1 -43
  15. package/dist/cjs/dialect/sqlite/sqlite-driver.d.ts +1 -1
  16. package/dist/cjs/dialect/sqlite/sqlite-driver.js +10 -2
  17. package/dist/cjs/index.d.ts +3 -0
  18. package/dist/cjs/index.js +3 -0
  19. package/dist/cjs/operation-node/constraint-node.d.ts +4 -4
  20. package/dist/cjs/plugin/camel-case/camel-case-plugin.js +1 -1
  21. package/dist/cjs/query-builder/expression-builder.d.ts +42 -0
  22. package/dist/cjs/query-builder/expression-builder.js +48 -0
  23. package/dist/cjs/query-builder/insert-query-builder.d.ts +16 -0
  24. package/dist/cjs/query-builder/insert-query-builder.js +16 -0
  25. package/dist/cjs/query-builder/on-conflict-builder.d.ts +5 -3
  26. package/dist/cjs/query-creator.d.ts +1 -1
  27. package/dist/cjs/util/object-utils.d.ts +1 -1
  28. package/dist/cjs/util/object-utils.js +8 -8
  29. package/dist/esm/dialect/database-introspector.js +1 -0
  30. package/dist/esm/dialect/dialect-adapter-base.js +1 -0
  31. package/dist/esm/dialect/dialect-adapter.js +1 -0
  32. package/dist/esm/dialect/dialect.js +1 -0
  33. package/dist/esm/dialect/mysql/mysql-adapter.js +1 -0
  34. package/dist/esm/dialect/mysql/mysql-dialect-config.d.ts +205 -0
  35. package/dist/esm/dialect/mysql/mysql-dialect-config.js +2 -0
  36. package/dist/esm/dialect/mysql/mysql-dialect.d.ts +1 -205
  37. package/dist/esm/dialect/mysql/mysql-dialect.js +1 -0
  38. package/dist/esm/dialect/mysql/mysql-driver.d.ts +1 -1
  39. package/dist/esm/dialect/mysql/mysql-driver.js +12 -3
  40. package/dist/esm/dialect/mysql/mysql-introspector.js +1 -0
  41. package/dist/esm/dialect/mysql/mysql-query-compiler.js +1 -0
  42. package/dist/esm/dialect/postgres/postgres-adapter.js +1 -0
  43. package/dist/esm/dialect/postgres/postgres-dialect-config.d.ts +103 -0
  44. package/dist/esm/dialect/postgres/postgres-dialect-config.js +2 -0
  45. package/dist/esm/dialect/postgres/postgres-dialect.d.ts +1 -103
  46. package/dist/esm/dialect/postgres/postgres-dialect.js +1 -0
  47. package/dist/esm/dialect/postgres/postgres-driver.d.ts +1 -1
  48. package/dist/esm/dialect/postgres/postgres-driver.js +12 -2
  49. package/dist/esm/dialect/postgres/postgres-introspector.js +1 -0
  50. package/dist/esm/dialect/postgres/postgres-query-compiler.js +1 -0
  51. package/dist/esm/dialect/sqlite/sqlite-adapter.js +1 -0
  52. package/dist/esm/dialect/sqlite/sqlite-dialect-config.d.ts +43 -0
  53. package/dist/esm/dialect/sqlite/sqlite-dialect-config.js +2 -0
  54. package/dist/esm/dialect/sqlite/sqlite-dialect.d.ts +1 -43
  55. package/dist/esm/dialect/sqlite/sqlite-dialect.js +1 -0
  56. package/dist/esm/dialect/sqlite/sqlite-driver.d.ts +1 -1
  57. package/dist/esm/dialect/sqlite/sqlite-driver.js +11 -2
  58. package/dist/esm/dialect/sqlite/sqlite-introspector.js +1 -0
  59. package/dist/esm/dialect/sqlite/sqlite-query-compiler.js +1 -0
  60. package/dist/esm/driver/connection-provider.js +1 -0
  61. package/dist/esm/driver/database-connection.js +1 -0
  62. package/dist/esm/driver/default-connection-provider.js +1 -0
  63. package/dist/esm/driver/driver.js +1 -0
  64. package/dist/esm/driver/runtime-driver.js +1 -0
  65. package/dist/esm/driver/single-connection-provider.js +1 -0
  66. package/dist/esm/dynamic/dynamic-reference-builder.js +1 -0
  67. package/dist/esm/dynamic/dynamic.js +1 -0
  68. package/dist/esm/index-nodeless.js +1 -0
  69. package/dist/esm/index.d.ts +3 -0
  70. package/dist/esm/index.js +4 -0
  71. package/dist/esm/kysely.js +1 -0
  72. package/dist/esm/migration/file-migration-provider.js +1 -0
  73. package/dist/esm/migration/migrator.js +1 -0
  74. package/dist/esm/operation-node/add-column-node.js +1 -0
  75. package/dist/esm/operation-node/add-constraint-node.js +1 -0
  76. package/dist/esm/operation-node/alias-node.js +1 -0
  77. package/dist/esm/operation-node/alter-column-node.js +1 -0
  78. package/dist/esm/operation-node/alter-table-node.js +1 -0
  79. package/dist/esm/operation-node/and-node.js +1 -0
  80. package/dist/esm/operation-node/check-constraint-node.js +1 -0
  81. package/dist/esm/operation-node/column-definition-node.js +1 -0
  82. package/dist/esm/operation-node/column-node.js +1 -0
  83. package/dist/esm/operation-node/column-update-node.js +1 -0
  84. package/dist/esm/operation-node/common-table-expression-name-node.js +1 -0
  85. package/dist/esm/operation-node/common-table-expression-node.js +1 -0
  86. package/dist/esm/operation-node/constraint-node.d.ts +4 -4
  87. package/dist/esm/operation-node/constraint-node.js +1 -0
  88. package/dist/esm/operation-node/create-index-node.js +1 -0
  89. package/dist/esm/operation-node/create-schema-node.js +1 -0
  90. package/dist/esm/operation-node/create-table-node.js +1 -0
  91. package/dist/esm/operation-node/create-view-node.js +1 -0
  92. package/dist/esm/operation-node/data-type-node.js +1 -0
  93. package/dist/esm/operation-node/default-value-node.js +1 -0
  94. package/dist/esm/operation-node/delete-query-node.js +1 -0
  95. package/dist/esm/operation-node/drop-column-node.js +1 -0
  96. package/dist/esm/operation-node/drop-constraint-node.js +1 -0
  97. package/dist/esm/operation-node/drop-index-node.js +1 -0
  98. package/dist/esm/operation-node/drop-schema-node.js +1 -0
  99. package/dist/esm/operation-node/drop-table-node.js +1 -0
  100. package/dist/esm/operation-node/drop-view-node.js +1 -0
  101. package/dist/esm/operation-node/filter-node.js +1 -0
  102. package/dist/esm/operation-node/foreign-key-constraint-node.js +1 -0
  103. package/dist/esm/operation-node/from-node.js +1 -0
  104. package/dist/esm/operation-node/generated-node.js +1 -0
  105. package/dist/esm/operation-node/group-by-item-node.js +1 -0
  106. package/dist/esm/operation-node/group-by-node.js +1 -0
  107. package/dist/esm/operation-node/having-node.js +1 -0
  108. package/dist/esm/operation-node/identifier-node.js +1 -0
  109. package/dist/esm/operation-node/insert-query-node.js +1 -0
  110. package/dist/esm/operation-node/join-node.js +1 -0
  111. package/dist/esm/operation-node/limit-node.js +1 -0
  112. package/dist/esm/operation-node/list-node.js +1 -0
  113. package/dist/esm/operation-node/modify-column-node.js +1 -0
  114. package/dist/esm/operation-node/offset-node.js +1 -0
  115. package/dist/esm/operation-node/on-conflict-node.js +1 -0
  116. package/dist/esm/operation-node/on-duplicate-key-node.js +1 -0
  117. package/dist/esm/operation-node/on-node.js +1 -0
  118. package/dist/esm/operation-node/operation-node-source.js +1 -0
  119. package/dist/esm/operation-node/operation-node-transformer.js +1 -0
  120. package/dist/esm/operation-node/operation-node-utils.js +1 -0
  121. package/dist/esm/operation-node/operation-node-visitor.js +1 -0
  122. package/dist/esm/operation-node/operation-node.js +1 -0
  123. package/dist/esm/operation-node/operator-node.js +1 -0
  124. package/dist/esm/operation-node/or-node.js +1 -0
  125. package/dist/esm/operation-node/order-by-item-node.js +1 -0
  126. package/dist/esm/operation-node/order-by-node.js +1 -0
  127. package/dist/esm/operation-node/parens-node.js +1 -0
  128. package/dist/esm/operation-node/primary-constraint-node.js +1 -0
  129. package/dist/esm/operation-node/primitive-value-list-node.js +1 -0
  130. package/dist/esm/operation-node/query-node.js +1 -0
  131. package/dist/esm/operation-node/raw-node.js +1 -0
  132. package/dist/esm/operation-node/reference-node.js +1 -0
  133. package/dist/esm/operation-node/references-node.js +1 -0
  134. package/dist/esm/operation-node/rename-column-node.js +1 -0
  135. package/dist/esm/operation-node/returning-node.js +1 -0
  136. package/dist/esm/operation-node/select-all-node.js +1 -0
  137. package/dist/esm/operation-node/select-query-node.js +1 -0
  138. package/dist/esm/operation-node/selection-node.js +1 -0
  139. package/dist/esm/operation-node/table-node.js +1 -0
  140. package/dist/esm/operation-node/union-node.js +1 -0
  141. package/dist/esm/operation-node/unique-constraint-node.js +1 -0
  142. package/dist/esm/operation-node/update-query-node.js +1 -0
  143. package/dist/esm/operation-node/value-list-node.js +1 -0
  144. package/dist/esm/operation-node/value-node.js +1 -0
  145. package/dist/esm/operation-node/values-node.js +1 -0
  146. package/dist/esm/operation-node/where-node.js +1 -0
  147. package/dist/esm/operation-node/with-node.js +1 -0
  148. package/dist/esm/parser/complex-expression-parser.js +1 -0
  149. package/dist/esm/parser/data-type-parser.js +1 -0
  150. package/dist/esm/parser/default-value-parser.js +1 -0
  151. package/dist/esm/parser/filter-parser.js +1 -0
  152. package/dist/esm/parser/group-by-parser.js +1 -0
  153. package/dist/esm/parser/insert-values-parser.js +1 -0
  154. package/dist/esm/parser/join-parser.js +1 -0
  155. package/dist/esm/parser/order-by-parser.js +1 -0
  156. package/dist/esm/parser/parse-context.js +1 -0
  157. package/dist/esm/parser/reference-parser.js +1 -0
  158. package/dist/esm/parser/returning-parser.js +1 -0
  159. package/dist/esm/parser/select-parser.js +1 -0
  160. package/dist/esm/parser/table-parser.js +1 -0
  161. package/dist/esm/parser/union-parser.js +1 -0
  162. package/dist/esm/parser/update-set-parser.js +1 -0
  163. package/dist/esm/parser/value-parser.js +1 -0
  164. package/dist/esm/parser/with-parser.js +1 -0
  165. package/dist/esm/plugin/camel-case/camel-case-plugin.js +3 -2
  166. package/dist/esm/plugin/camel-case/camel-case-transformer.js +1 -0
  167. package/dist/esm/plugin/camel-case/camel-case.js +1 -0
  168. package/dist/esm/plugin/immediate-value.ts/immediate-value-plugin.js +1 -0
  169. package/dist/esm/plugin/immediate-value.ts/immediate-value-transformer.js +1 -0
  170. package/dist/esm/plugin/kysely-plugin.js +1 -0
  171. package/dist/esm/plugin/with-schema/with-schema-plugin.js +1 -0
  172. package/dist/esm/plugin/with-schema/with-schema-transformer.js +1 -0
  173. package/dist/esm/query-builder/delete-query-builder.js +1 -0
  174. package/dist/esm/query-builder/delete-result.js +1 -0
  175. package/dist/esm/query-builder/expression-builder.d.ts +42 -0
  176. package/dist/esm/query-builder/expression-builder.js +49 -0
  177. package/dist/esm/query-builder/function-builder.js +1 -0
  178. package/dist/esm/query-builder/having-interface.js +1 -0
  179. package/dist/esm/query-builder/insert-query-builder.d.ts +16 -0
  180. package/dist/esm/query-builder/insert-query-builder.js +17 -0
  181. package/dist/esm/query-builder/insert-result.js +1 -0
  182. package/dist/esm/query-builder/join-builder.js +1 -0
  183. package/dist/esm/query-builder/join-interface.js +1 -0
  184. package/dist/esm/query-builder/no-result-error.js +1 -0
  185. package/dist/esm/query-builder/on-conflict-builder.d.ts +5 -3
  186. package/dist/esm/query-builder/on-conflict-builder.js +1 -0
  187. package/dist/esm/query-builder/returning-interface.js +1 -0
  188. package/dist/esm/query-builder/select-query-builder.js +1 -0
  189. package/dist/esm/query-builder/update-query-builder.js +1 -0
  190. package/dist/esm/query-builder/update-result.js +1 -0
  191. package/dist/esm/query-builder/where-interface.js +1 -0
  192. package/dist/esm/query-compiler/compiled-query.js +1 -0
  193. package/dist/esm/query-compiler/default-query-compiler.js +1 -0
  194. package/dist/esm/query-compiler/query-compiler.js +1 -0
  195. package/dist/esm/query-creator.d.ts +1 -1
  196. package/dist/esm/query-creator.js +1 -0
  197. package/dist/esm/query-executor/default-query-executor.js +1 -0
  198. package/dist/esm/query-executor/noop-query-executor.js +1 -0
  199. package/dist/esm/query-executor/query-executor.js +1 -0
  200. package/dist/esm/raw-builder/raw-builder.js +1 -0
  201. package/dist/esm/schema/alter-table-builder.js +1 -0
  202. package/dist/esm/schema/column-definition-builder.js +1 -0
  203. package/dist/esm/schema/create-index-builder.js +1 -0
  204. package/dist/esm/schema/create-schema-builder.js +1 -0
  205. package/dist/esm/schema/create-table-builder.js +1 -0
  206. package/dist/esm/schema/create-view-builder.js +1 -0
  207. package/dist/esm/schema/drop-index-builder.js +1 -0
  208. package/dist/esm/schema/drop-schema-builder.js +1 -0
  209. package/dist/esm/schema/drop-table-builder.js +1 -0
  210. package/dist/esm/schema/drop-view-builder.js +1 -0
  211. package/dist/esm/schema/foreign-key-constraint-builder.js +1 -0
  212. package/dist/esm/schema/schema.js +1 -0
  213. package/dist/esm/util/assert.js +1 -0
  214. package/dist/esm/util/column-type.js +1 -0
  215. package/dist/esm/util/compilable.js +1 -0
  216. package/dist/esm/util/log.js +1 -0
  217. package/dist/esm/util/object-utils.d.ts +1 -1
  218. package/dist/esm/util/object-utils.js +7 -6
  219. package/dist/esm/util/performance-now.js +1 -0
  220. package/dist/esm/util/prevent-await.js +1 -0
  221. package/dist/esm/util/private-symbols.js +1 -0
  222. package/dist/esm/util/query-id.js +1 -0
  223. package/dist/esm/util/random-string.js +1 -0
  224. package/dist/esm/util/type-utils.js +1 -0
  225. package/package.json +3 -2
  226. package/.prettierignore +0 -1
  227. package/dist/cjs/util/dynamic-import.d.ts +0 -2
  228. package/dist/cjs/util/dynamic-import.js +0 -32
  229. package/dist/esm/util/dynamic-import.d.ts +0 -2
  230. package/dist/esm/util/dynamic-import.js +0 -27
@@ -1,3 +1,4 @@
1
+ /// <reference types="./insert-query-builder.d.ts" />
1
2
  import { parseSelectExpressionOrList, parseSelectAll, } from '../parser/select-parser.js';
2
3
  import { parseInsertObjectOrList, } from '../parser/insert-values-parser.js';
3
4
  import { InsertQueryNode } from '../operation-node/insert-query-node.js';
@@ -245,6 +246,22 @@ export class InsertQueryBuilder {
245
246
  * values ($1, $2)
246
247
  * on conflict ("name") do nothing
247
248
  * ```
249
+ *
250
+ * You can refer to the columns of the virtual `excluded` table
251
+ * in a type-safe way using a callback and the `ref` method of
252
+ * `ExpressionBuilder`:
253
+ *
254
+ * ```ts
255
+ * db.insertInto('person')
256
+ * .values(person)
257
+ * .onConflict(oc => oc
258
+ * .column('id')
259
+ * .doUpdateSet({
260
+ * first_name: (eb) => eb.ref('excluded.first_name'),
261
+ * last_name: (eb) => eb.ref('excluded.last_name')
262
+ * })
263
+ * )
264
+ * ```
248
265
  */
249
266
  onConflict(callback) {
250
267
  return new InsertQueryBuilder({
@@ -1,3 +1,4 @@
1
+ /// <reference types="./insert-result.d.ts" />
1
2
  /**
2
3
  * The result of an insert query.
3
4
  *
@@ -1,3 +1,4 @@
1
+ /// <reference types="./join-builder.d.ts" />
1
2
  import { JoinNode } from '../operation-node/join-node.js';
2
3
  import { parseExistFilter, parseNotExistFilter, parseOnFilter, parseReferenceFilter, } from '../parser/filter-parser.js';
3
4
  import { freeze } from '../util/object-utils.js';
@@ -1 +1,2 @@
1
+ /// <reference types="./join-interface.d.ts" />
1
2
  export {};
@@ -1,3 +1,4 @@
1
+ /// <reference types="./no-result-error.d.ts" />
1
2
  export class NoResultError extends Error {
2
3
  /**
3
4
  * The operation node tree of the query that was executed.
@@ -377,14 +377,16 @@ export declare class OnConflictBuilder<DB, TB extends keyof DB> implements Where
377
377
  * do update set "first_name" = $3
378
378
  * ```
379
379
  */
380
- doUpdateSet(updates: MutationObject<DB, TB>): OnConflictUpdateBuilder<{
381
- [K in keyof DB | 'excluded']: K extends keyof DB ? DB[K] : DB[TB];
382
- }, TB | 'excluded'>;
380
+ doUpdateSet(updates: MutationObject<OnConflictDatabase<DB, TB>, OnConflictTables<TB>>): OnConflictUpdateBuilder<OnConflictDatabase<DB, TB>, OnConflictTables<TB>>;
383
381
  }
384
382
  export interface OnConflictBuilderProps {
385
383
  readonly onConflictNode: OnConflictNode;
386
384
  readonly parseContext: ParseContext;
387
385
  }
386
+ export declare type OnConflictDatabase<DB, TB extends keyof DB> = {
387
+ [K in keyof DB | 'excluded']: K extends keyof DB ? DB[K] : DB[TB];
388
+ };
389
+ export declare type OnConflictTables<TB> = TB | 'excluded';
388
390
  export declare class OnConflictDoNothingBuilder<DB, TB extends keyof DB> implements OperationNodeSource {
389
391
  #private;
390
392
  constructor(props: OnConflictBuilderProps);
@@ -1,3 +1,4 @@
1
+ /// <reference types="./on-conflict-builder.d.ts" />
1
2
  import { ColumnNode } from '../operation-node/column-node.js';
2
3
  import { IdentifierNode } from '../operation-node/identifier-node.js';
3
4
  import { OnConflictNode } from '../operation-node/on-conflict-node.js';
@@ -1 +1,2 @@
1
+ /// <reference types="./returning-interface.d.ts" />
1
2
  export {};
@@ -1,3 +1,4 @@
1
+ /// <reference types="./select-query-builder.d.ts" />
1
2
  import { AliasNode } from '../operation-node/alias-node.js';
2
3
  import { parseJoin, } from '../parser/join-parser.js';
3
4
  import { parseSelectExpressionOrList, parseSelectAll, } from '../parser/select-parser.js';
@@ -1,3 +1,4 @@
1
+ /// <reference types="./update-query-builder.d.ts" />
1
2
  import { parseJoin, } from '../parser/join-parser.js';
2
3
  import { parseSelectExpressionOrList, parseSelectAll, } from '../parser/select-parser.js';
3
4
  import { parseExistFilter, parseReferenceFilter, parseWhereFilter, parseNotExistFilter, } from '../parser/filter-parser.js';
@@ -1,3 +1,4 @@
1
+ /// <reference types="./update-result.d.ts" />
1
2
  export class UpdateResult {
2
3
  #numUpdatedRows;
3
4
  constructor(numUpdatedRows) {
@@ -1 +1,2 @@
1
+ /// <reference types="./where-interface.d.ts" />
1
2
  export {};
@@ -1,3 +1,4 @@
1
+ /// <reference types="./compiled-query.d.ts" />
1
2
  import { RawNode } from '../operation-node/raw-node.js';
2
3
  import { freeze } from '../util/object-utils.js';
3
4
  export const CompiledQuery = freeze({
@@ -1,3 +1,4 @@
1
+ /// <reference types="./default-query-compiler.d.ts" />
1
2
  import { InsertQueryNode } from '../operation-node/insert-query-node.js';
2
3
  import { OperationNodeVisitor } from '../operation-node/operation-node-visitor.js';
3
4
  import { QueryNode } from '../operation-node/query-node.js';
@@ -1 +1,2 @@
1
+ /// <reference types="./query-compiler.d.ts" />
1
2
  export {};
@@ -412,7 +412,7 @@ export declare class QueryCreator<DB> {
412
412
  * @param params - The parameters that will be bound to the `?` and `??` placeholders in
413
413
  * the sql string.
414
414
  */
415
- raw<T = unknown>(sql: string, parameters?: any[]): RawBuilder<T>;
415
+ raw<T = unknown>(sql: string, parameters?: unknown[]): RawBuilder<T>;
416
416
  }
417
417
  export interface QueryCreatorProps {
418
418
  readonly executor: QueryExecutor;
@@ -1,3 +1,4 @@
1
+ /// <reference types="./query-creator.d.ts" />
1
2
  import { SelectQueryBuilder } from './query-builder/select-query-builder.js';
2
3
  import { InsertQueryBuilder } from './query-builder/insert-query-builder.js';
3
4
  import { DeleteQueryBuilder } from './query-builder/delete-query-builder.js';
@@ -1,3 +1,4 @@
1
+ /// <reference types="./default-query-executor.d.ts" />
1
2
  import { QueryExecutor } from './query-executor.js';
2
3
  export class DefaultQueryExecutor extends QueryExecutor {
3
4
  #compiler;
@@ -1,3 +1,4 @@
1
+ /// <reference types="./noop-query-executor.d.ts" />
1
2
  import { QueryExecutor } from './query-executor.js';
2
3
  /**
3
4
  * A {@link QueryExecutor} subclass that can be used when you don't
@@ -1,3 +1,4 @@
1
+ /// <reference types="./query-executor.d.ts" />
1
2
  import { freeze } from '../util/object-utils.js';
2
3
  /**
3
4
  * This class abstracts away the details of how to compile a query into SQL
@@ -1,3 +1,4 @@
1
+ /// <reference types="./raw-builder.d.ts" />
1
2
  import { AliasNode } from '../operation-node/alias-node.js';
2
3
  import { isOperationNodeSource, } from '../operation-node/operation-node-source.js';
3
4
  import { RawNode } from '../operation-node/raw-node.js';
@@ -1,3 +1,4 @@
1
+ /// <reference types="./alter-table-builder.d.ts" />
1
2
  import { AddColumnNode } from '../operation-node/add-column-node.js';
2
3
  import { AlterColumnNode } from '../operation-node/alter-column-node.js';
3
4
  import { AlterTableNode } from '../operation-node/alter-table-node.js';
@@ -1,3 +1,4 @@
1
+ /// <reference types="./column-definition-builder.d.ts" />
1
2
  import { CheckConstraintNode } from '../operation-node/check-constraint-node.js';
2
3
  import { ReferenceNode } from '../operation-node/reference-node.js';
3
4
  import { ReferencesNode, } from '../operation-node/references-node.js';
@@ -1,3 +1,4 @@
1
+ /// <reference types="./create-index-builder.d.ts" />
1
2
  import { CreateIndexNode, } from '../operation-node/create-index-node.js';
2
3
  import { ListNode } from '../operation-node/list-node.js';
3
4
  import { RawNode } from '../operation-node/raw-node.js';
@@ -1,3 +1,4 @@
1
+ /// <reference types="./create-schema-builder.d.ts" />
1
2
  import { CreateSchemaNode } from '../operation-node/create-schema-node.js';
2
3
  import { preventAwait } from '../util/prevent-await.js';
3
4
  import { freeze } from '../util/object-utils.js';
@@ -1,3 +1,4 @@
1
+ /// <reference types="./create-table-builder.d.ts" />
1
2
  import { ColumnDefinitionNode } from '../operation-node/column-definition-node.js';
2
3
  import { CreateTableNode, } from '../operation-node/create-table-node.js';
3
4
  import { preventAwait } from '../util/prevent-await.js';
@@ -1,3 +1,4 @@
1
+ /// <reference types="./create-view-builder.d.ts" />
1
2
  import { preventAwait } from '../util/prevent-await.js';
2
3
  import { freeze } from '../util/object-utils.js';
3
4
  import { CreateViewNode } from '../operation-node/create-view-node.js';
@@ -1,3 +1,4 @@
1
+ /// <reference types="./drop-index-builder.d.ts" />
1
2
  import { DropIndexNode } from '../operation-node/drop-index-node.js';
2
3
  import { preventAwait } from '../util/prevent-await.js';
3
4
  import { parseTable } from '../parser/table-parser.js';
@@ -1,3 +1,4 @@
1
+ /// <reference types="./drop-schema-builder.d.ts" />
1
2
  import { DropSchemaNode } from '../operation-node/drop-schema-node.js';
2
3
  import { preventAwait } from '../util/prevent-await.js';
3
4
  import { freeze } from '../util/object-utils.js';
@@ -1,3 +1,4 @@
1
+ /// <reference types="./drop-table-builder.d.ts" />
1
2
  import { DropTableNode } from '../operation-node/drop-table-node.js';
2
3
  import { preventAwait } from '../util/prevent-await.js';
3
4
  import { freeze } from '../util/object-utils.js';
@@ -1,3 +1,4 @@
1
+ /// <reference types="./drop-view-builder.d.ts" />
1
2
  import { preventAwait } from '../util/prevent-await.js';
2
3
  import { freeze } from '../util/object-utils.js';
3
4
  import { DropViewNode } from '../operation-node/drop-view-node.js';
@@ -1,3 +1,4 @@
1
+ /// <reference types="./foreign-key-constraint-builder.d.ts" />
1
2
  import { ForeignKeyConstraintNode } from '../operation-node/foreign-key-constraint-node.js';
2
3
  import { preventAwait } from '../util/prevent-await.js';
3
4
  export class ForeignKeyConstraintBuilder {
@@ -1,3 +1,4 @@
1
+ /// <reference types="./schema.d.ts" />
1
2
  import { AlterTableNode } from '../operation-node/alter-table-node.js';
2
3
  import { CreateIndexNode } from '../operation-node/create-index-node.js';
3
4
  import { CreateSchemaNode } from '../operation-node/create-schema-node.js';
@@ -1,3 +1,4 @@
1
+ /// <reference types="./assert.d.ts" />
1
2
  export function assertNotNullOrUndefined(value) {
2
3
  if (value === null || value === undefined) {
3
4
  throw new Error(`${value} must not be null or undefined`);
@@ -1 +1,2 @@
1
+ /// <reference types="./column-type.d.ts" />
1
2
  export {};
@@ -1 +1,2 @@
1
+ /// <reference types="./compilable.d.ts" />
1
2
  export {};
@@ -1,3 +1,4 @@
1
+ /// <reference types="./log.d.ts" />
1
2
  import { freeze, isFunction } from './object-utils.js';
2
3
  export const LOG_LEVELS = freeze(['query', 'error']);
3
4
  export class Log {
@@ -6,8 +6,8 @@ export declare function isNumber(obj: unknown): obj is number;
6
6
  export declare function isBoolean(obj: unknown): obj is boolean;
7
7
  export declare function isNull(obj: unknown): obj is null;
8
8
  export declare function isDate(obj: unknown): obj is Date;
9
- export declare function isBuffer(obj: unknown): obj is Buffer;
10
9
  export declare function isBigInt(obj: unknown): obj is BigInt;
10
+ export declare function isBuffer(obj: unknown): obj is Buffer;
11
11
  export declare function isPrimitive(obj: unknown): obj is PrimitiveValue;
12
12
  export declare function isFunction(obj: unknown): obj is Function;
13
13
  export declare function isObject(obj: unknown): obj is Record<string, unknown>;
@@ -1,5 +1,6 @@
1
+ /// <reference types="./object-utils.d.ts" />
1
2
  export function isEmpty(obj) {
2
- if (Array.isArray(obj) || isString(obj) || Buffer.isBuffer(obj)) {
3
+ if (Array.isArray(obj) || isString(obj) || isBuffer(obj)) {
3
4
  return obj.length === 0;
4
5
  }
5
6
  else if (obj) {
@@ -22,20 +23,20 @@ export function isNull(obj) {
22
23
  export function isDate(obj) {
23
24
  return obj instanceof Date;
24
25
  }
25
- export function isBuffer(obj) {
26
- return Buffer.isBuffer(obj);
27
- }
28
26
  export function isBigInt(obj) {
29
27
  return typeof obj === 'bigint';
30
28
  }
29
+ export function isBuffer(obj) {
30
+ return typeof Buffer !== 'undefined' && Buffer.isBuffer(obj);
31
+ }
31
32
  export function isPrimitive(obj) {
32
33
  return (isString(obj) ||
33
34
  isNumber(obj) ||
34
35
  isBoolean(obj) ||
35
36
  isNull(obj) ||
36
37
  isDate(obj) ||
37
- isBuffer(obj) ||
38
- isBigInt(obj));
38
+ isBigInt(obj) ||
39
+ isBuffer(obj));
39
40
  }
40
41
  export function isFunction(obj) {
41
42
  return typeof obj === 'function';
@@ -1,3 +1,4 @@
1
+ /// <reference types="./performance-now.d.ts" />
1
2
  import { isFunction } from './object-utils.js';
2
3
  export function performanceNow() {
3
4
  if (typeof performance !== 'undefined' && isFunction(performance.now)) {
@@ -1,3 +1,4 @@
1
+ /// <reference types="./prevent-await.d.ts" />
1
2
  export function preventAwait(clazz, message) {
2
3
  Object.defineProperties(clazz.prototype, {
3
4
  then: {
@@ -1,3 +1,4 @@
1
+ /// <reference types="./private-symbols.d.ts" />
1
2
  /**
2
3
  * @internal
3
4
  * @private
@@ -1,3 +1,4 @@
1
+ /// <reference types="./query-id.d.ts" />
1
2
  import { freeze } from './object-utils.js';
2
3
  import { randomString } from './random-string.js';
3
4
  export function createQueryId() {
@@ -1,3 +1,4 @@
1
+ /// <reference types="./random-string.d.ts" />
1
2
  const CHARS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
2
3
  export function randomString(length) {
3
4
  let chars = '';
@@ -1 +1,2 @@
1
+ /// <reference types="./type-utils.d.ts" />
1
2
  export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kysely",
3
- "version": "0.16.0",
3
+ "version": "0.16.4",
4
4
  "description": "Type safe SQL query builder",
5
5
  "repository": {
6
6
  "type": "git",
@@ -28,12 +28,13 @@
28
28
  "test:esmimports": "node scripts/check-esm-imports.js",
29
29
  "prettier": "prettier --write src/**/*.ts test/**/*.ts",
30
30
  "build": "npm run clean && npm run build:esm && npm run build:cjs && npm run script:module-fixup && npm run script:copy-interface-doc",
31
- "build:esm": "tsc -p tsconfig.json",
31
+ "build:esm": "tsc -p tsconfig.json && npm run script:add-deno-type-references",
32
32
  "build:cjs": "tsc -p tsconfig-cjs.json",
33
33
  "docs:build": "typedoc --excludePrivate --excludeInternal --customCss ./docs-theme.css src/index.ts && npm run docs:postprocess",
34
34
  "docs:postprocess": "node scripts/post-process-docs.js",
35
35
  "script:module-fixup": "node scripts/module-fixup.js",
36
36
  "script:copy-interface-doc": "node scripts/copy-interface-documentation.js",
37
+ "script:add-deno-type-references": "node scripts/add-deno-type-references.js",
37
38
  "prepublishOnly": "npm run build"
38
39
  },
39
40
  "author": "Sami Koskimäki <sami@jakso.me>",
package/.prettierignore DELETED
@@ -1 +0,0 @@
1
- *.md
@@ -1,2 +0,0 @@
1
- export declare function importFunction<T extends Function>(modulePath: string): Promise<T>;
2
- export declare function importNamedFunction<T extends Function>(modulePath: string, exportName: string): Promise<T>;
@@ -1,32 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.importNamedFunction = exports.importFunction = void 0;
4
- const object_utils_js_1 = require("./object-utils.js");
5
- async function importFunction(modulePath) {
6
- const module = await Promise.resolve().then(() => require(modulePath));
7
- const errorMessage = `module "${modulePath}" doesn't export a function`;
8
- if ((0, object_utils_js_1.isFunction)(module)) {
9
- return module;
10
- }
11
- else if ((0, object_utils_js_1.isObject)(module) && (0, object_utils_js_1.isFunction)(module.default)) {
12
- return module.default;
13
- }
14
- throw new Error(errorMessage);
15
- }
16
- exports.importFunction = importFunction;
17
- async function importNamedFunction(modulePath, exportName) {
18
- const module = await Promise.resolve().then(() => require(modulePath));
19
- const errorMessage = `no function export named "${exportName}" found in module "${modulePath}"`;
20
- if (!(0, object_utils_js_1.isObject)(module)) {
21
- throw new Error(errorMessage);
22
- }
23
- if ((0, object_utils_js_1.isFunction)(module[exportName])) {
24
- return module[exportName];
25
- }
26
- else if ((0, object_utils_js_1.isObject)(module.default) &&
27
- (0, object_utils_js_1.isFunction)(module.default[exportName])) {
28
- return module.default[exportName];
29
- }
30
- throw new Error(errorMessage);
31
- }
32
- exports.importNamedFunction = importNamedFunction;
@@ -1,2 +0,0 @@
1
- export declare function importFunction<T extends Function>(modulePath: string): Promise<T>;
2
- export declare function importNamedFunction<T extends Function>(modulePath: string, exportName: string): Promise<T>;
@@ -1,27 +0,0 @@
1
- import { isFunction, isObject } from './object-utils.js';
2
- export async function importFunction(modulePath) {
3
- const module = await import(modulePath);
4
- const errorMessage = `module "${modulePath}" doesn't export a function`;
5
- if (isFunction(module)) {
6
- return module;
7
- }
8
- else if (isObject(module) && isFunction(module.default)) {
9
- return module.default;
10
- }
11
- throw new Error(errorMessage);
12
- }
13
- export async function importNamedFunction(modulePath, exportName) {
14
- const module = await import(modulePath);
15
- const errorMessage = `no function export named "${exportName}" found in module "${modulePath}"`;
16
- if (!isObject(module)) {
17
- throw new Error(errorMessage);
18
- }
19
- if (isFunction(module[exportName])) {
20
- return module[exportName];
21
- }
22
- else if (isObject(module.default) &&
23
- isFunction(module.default[exportName])) {
24
- return module.default[exportName];
25
- }
26
- throw new Error(errorMessage);
27
- }