@cedarjs/api 3.0.0-canary.13523 → 3.0.0-canary.13526

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.
@@ -133,8 +133,8 @@ interface CustomValidatorOptions extends WithOptionalMessage {
133
133
  */
134
134
  with: () => void;
135
135
  }
136
- interface UniquenessValidatorOptions extends WithOptionalMessage {
137
- db?: UniquenessDb;
136
+ interface UniquenessValidatorOptions<TDb extends UniquenessDb = UniquenessDb> extends WithOptionalMessage {
137
+ db?: TDb;
138
138
  }
139
139
  type UniquenessWhere = Record<'AND' | 'NOT', Record<string, unknown>[]>;
140
140
  export type UniquenessTransactionClient = Record<string, {
@@ -142,9 +142,12 @@ export type UniquenessTransactionClient = Record<string, {
142
142
  where: UniquenessWhere;
143
143
  }) => Promise<unknown>;
144
144
  }>;
145
- type UniquenessDb = {
146
- $transaction: <T>(callback: (tx: UniquenessTransactionClient) => Promise<T>) => Promise<T>;
147
- };
145
+ interface UniquenessDb {
146
+ $transaction: (...args: any[]) => Promise<any>;
147
+ }
148
+ type TxClientOf<TDb extends UniquenessDb> = TDb extends {
149
+ $transaction: (callback: (tx: infer TTx) => any, ...args: any[]) => any;
150
+ } ? TTx : never;
148
151
  interface ValidationRecipe {
149
152
  /**
150
153
  * Requires that a field NOT be present, meaning it must be `null` or `undefined`.
@@ -226,7 +229,7 @@ export declare function validate(value: unknown, labelOrRecipe: ValidationWithMe
226
229
  export declare function validate(value: unknown, labelOrRecipe: string, recipe: ValidationRecipe): void;
227
230
  export declare const validateWithSync: (func: () => void) => void;
228
231
  export declare const validateWith: (func: () => Promise<any>) => Promise<void>;
229
- export declare function validateUniqueness(model: string, fields: Record<string, unknown>, optionsOrCallback: (tx: UniquenessTransactionClient) => Promise<any>, callback?: never): Promise<any>;
230
- export declare function validateUniqueness(model: string, fields: Record<string, unknown>, optionsOrCallback: UniquenessValidatorOptions, callback?: (tx: UniquenessTransactionClient) => Promise<any>): Promise<any>;
232
+ export declare function validateUniqueness<TDb extends UniquenessDb = UniquenessDb>(model: string, fields: Record<string, unknown>, optionsOrCallback: (tx: TxClientOf<TDb>) => Promise<any>, callback?: never): Promise<any>;
233
+ export declare function validateUniqueness<TDb extends UniquenessDb = UniquenessDb>(model: string, fields: Record<string, unknown>, optionsOrCallback: UniquenessValidatorOptions<TDb>, callback?: (tx: TxClientOf<TDb>) => Promise<any>): Promise<any>;
231
234
  export {};
232
235
  //# sourceMappingURL=validations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validations.d.ts","sourceRoot":"","sources":["../../../src/validations/validations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validations.d.ts","sourceRoot":"","sources":["../../../src/validations/validations.ts"],"names":[],"mappings":"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"}
@@ -313,9 +313,11 @@ async function validateUniqueness(model, fields, optionsOrCallback, callback) {
313
313
  let validCallback;
314
314
  if (typeof optionsOrCallback === "function") {
315
315
  validCallback = optionsOrCallback;
316
- } else {
316
+ } else if (callback) {
317
317
  options = optionsOrCallback;
318
318
  validCallback = callback;
319
+ } else {
320
+ throw new Error("validateUniqueness requires a callback function");
319
321
  }
320
322
  const { db: _db, ...restOptions } = options;
321
323
  const db = options.db || new import_client.PrismaClient();
@@ -133,8 +133,8 @@ interface CustomValidatorOptions extends WithOptionalMessage {
133
133
  */
134
134
  with: () => void;
135
135
  }
136
- interface UniquenessValidatorOptions extends WithOptionalMessage {
137
- db?: UniquenessDb;
136
+ interface UniquenessValidatorOptions<TDb extends UniquenessDb = UniquenessDb> extends WithOptionalMessage {
137
+ db?: TDb;
138
138
  }
139
139
  type UniquenessWhere = Record<'AND' | 'NOT', Record<string, unknown>[]>;
140
140
  export type UniquenessTransactionClient = Record<string, {
@@ -142,9 +142,12 @@ export type UniquenessTransactionClient = Record<string, {
142
142
  where: UniquenessWhere;
143
143
  }) => Promise<unknown>;
144
144
  }>;
145
- type UniquenessDb = {
146
- $transaction: <T>(callback: (tx: UniquenessTransactionClient) => Promise<T>) => Promise<T>;
147
- };
145
+ interface UniquenessDb {
146
+ $transaction: (...args: any[]) => Promise<any>;
147
+ }
148
+ type TxClientOf<TDb extends UniquenessDb> = TDb extends {
149
+ $transaction: (callback: (tx: infer TTx) => any, ...args: any[]) => any;
150
+ } ? TTx : never;
148
151
  interface ValidationRecipe {
149
152
  /**
150
153
  * Requires that a field NOT be present, meaning it must be `null` or `undefined`.
@@ -226,7 +229,7 @@ export declare function validate(value: unknown, labelOrRecipe: ValidationWithMe
226
229
  export declare function validate(value: unknown, labelOrRecipe: string, recipe: ValidationRecipe): void;
227
230
  export declare const validateWithSync: (func: () => void) => void;
228
231
  export declare const validateWith: (func: () => Promise<any>) => Promise<void>;
229
- export declare function validateUniqueness(model: string, fields: Record<string, unknown>, optionsOrCallback: (tx: UniquenessTransactionClient) => Promise<any>, callback?: never): Promise<any>;
230
- export declare function validateUniqueness(model: string, fields: Record<string, unknown>, optionsOrCallback: UniquenessValidatorOptions, callback?: (tx: UniquenessTransactionClient) => Promise<any>): Promise<any>;
232
+ export declare function validateUniqueness<TDb extends UniquenessDb = UniquenessDb>(model: string, fields: Record<string, unknown>, optionsOrCallback: (tx: TxClientOf<TDb>) => Promise<any>, callback?: never): Promise<any>;
233
+ export declare function validateUniqueness<TDb extends UniquenessDb = UniquenessDb>(model: string, fields: Record<string, unknown>, optionsOrCallback: UniquenessValidatorOptions<TDb>, callback?: (tx: TxClientOf<TDb>) => Promise<any>): Promise<any>;
231
234
  export {};
232
235
  //# sourceMappingURL=validations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"validations.d.ts","sourceRoot":"","sources":["../../src/validations/validations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validations.d.ts","sourceRoot":"","sources":["../../src/validations/validations.ts"],"names":[],"mappings":"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"}
@@ -277,9 +277,11 @@ async function validateUniqueness(model, fields, optionsOrCallback, callback) {
277
277
  let validCallback;
278
278
  if (typeof optionsOrCallback === "function") {
279
279
  validCallback = optionsOrCallback;
280
- } else {
280
+ } else if (callback) {
281
281
  options = optionsOrCallback;
282
282
  validCallback = callback;
283
+ } else {
284
+ throw new Error("validateUniqueness requires a callback function");
283
285
  }
284
286
  const { db: _db, ...restOptions } = options;
285
287
  const db = options.db || new PrismaClient();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cedarjs/api",
3
- "version": "3.0.0-canary.13523+56f680267",
3
+ "version": "3.0.0-canary.13526+54c0de119",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/cedarjs/cedar.git",
@@ -97,7 +97,7 @@
97
97
  "title-case": "3.0.3"
98
98
  },
99
99
  "devDependencies": {
100
- "@cedarjs/framework-tools": "3.0.0-canary.13523",
100
+ "@cedarjs/framework-tools": "3.0.0-canary.13526",
101
101
  "@types/aws-lambda": "8.10.161",
102
102
  "@types/jsonwebtoken": "9.0.10",
103
103
  "@types/memjs": "1",
@@ -128,5 +128,5 @@
128
128
  "publishConfig": {
129
129
  "access": "public"
130
130
  },
131
- "gitHead": "56f680267cf5eefe3eadebee41acd064de6d5a61"
131
+ "gitHead": "54c0de11974542c7886d10fe9b94b062e9da883e"
132
132
  }