@trpc/server 10.16.0 → 10.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -98,7 +98,7 @@ declare class TRPCBuilder<TParams extends PartialRootConfigTypes = object> {
98
98
  };
99
99
  }
100
100
  /**
101
- * Initialize tRPC - be done exactly once per backend
101
+ * Initialize tRPC - done exactly once per backend
102
102
  */
103
103
  export declare const initTRPC: TRPCBuilder<object>;
104
104
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"initTRPC.d.ts","sourceRoot":"","sources":["../../src/core/initTRPC.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EAEpB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EAGvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,EACL,qBAAqB,EACrB,UAAU,EACV,eAAe,EACf,aAAa,EAEd,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAIpE,aAAK,sBAAsB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;AAEvD,aAAK,gCAAgC,CAAC,MAAM,SAAS,sBAAsB,IACzE,qBAAqB,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,eAAe,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC;IAC3E,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,eAAe,CAAC,MAAM,CAAC,GAChD,MAAM,CAAC,MAAM,CAAC,GACd,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;IACjC,WAAW,EAAE,sBAAsB,CAAC;CACrC,CAAC,CAAC;AAEL;;;;;GAKG;AAEH,cAAM,WAAW,CAAC,OAAO,SAAS,sBAAsB,GAAG,MAAM;IAC/D,OAAO,CACL,WAAW,SACP,eAAe,CAAC,KAAK,CAAC,GACtB,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,eAAe,CAAC,KAAK,CAAC,CAAC;aAGpB,OAAO,WAAW,CAAC;;IAGrD,IAAI,CAAC,QAAQ,SAAS,eAAe,CAAC,MAAM,CAAC;cACW,QAAQ;;IAEhE,MAAM,CACJ,QAAQ,SAAS,OAAO,CACtB,aAAa,CAAC,gCAAgC,CAAC,OAAO,CAAC,CAAC,CACzD,EAED,OAAO,CAAC,EACJ,aAAa,CACX,QAAQ,EACR,OAAO,CAAC,aAAa,CAAC,gCAAgC,CAAC,OAAO,CAAC,CAAC,CAAC,CAClE,GACD,SAAS;QAsEX;;;WAGG;;;;;;;QAEH;;WAEG;;;;;;;;;;;;;;;QAEH;;WAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAEH;;WAEG;;;;;;;QAEH;;WAEG;;;CArFR;AAED;;GAEG;AACH,eAAO,MAAM,QAAQ,qBAAoB,CAAC"}
1
+ {"version":3,"file":"initTRPC.d.ts","sourceRoot":"","sources":["../../src/core/initTRPC.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EAEpB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EAGvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,EACL,qBAAqB,EACrB,UAAU,EACV,eAAe,EACf,aAAa,EAEd,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAIpE,aAAK,sBAAsB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;AAEvD,aAAK,gCAAgC,CAAC,MAAM,SAAS,sBAAsB,IACzE,qBAAqB,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,eAAe,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC;IAC3E,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,eAAe,CAAC,MAAM,CAAC,GAChD,MAAM,CAAC,MAAM,CAAC,GACd,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;IACjC,WAAW,EAAE,sBAAsB,CAAC;CACrC,CAAC,CAAC;AAEL;;;;;GAKG;AAEH,cAAM,WAAW,CAAC,OAAO,SAAS,sBAAsB,GAAG,MAAM;IAC/D,OAAO,CACL,WAAW,SACP,eAAe,CAAC,KAAK,CAAC,GACtB,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,eAAe,CAAC,KAAK,CAAC,CAAC;aAEJ,OAAO,WAAW,CAAC;;IAKrE,IAAI,CAAC,QAAQ,SAAS,eAAe,CAAC,MAAM,CAAC;cACM,QAAQ;;IAK3D,MAAM,CACJ,QAAQ,SAAS,OAAO,CACtB,aAAa,CAAC,gCAAgC,CAAC,OAAO,CAAC,CAAC,CACzD,EAED,OAAO,CAAC,EACJ,aAAa,CACX,QAAQ,EACR,OAAO,CAAC,aAAa,CAAC,gCAAgC,CAAC,OAAO,CAAC,CAAC,CAAC,CAClE,GACD,SAAS;QAsEX;;;WAGG;;;;;;;QAEH;;WAEG;;;;;;;;;;;;;;;QAIH;;WAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAEH;;WAEG;;;;;;;QAEH;;WAEG;;;CAvFR;AAED;;GAEG;AACH,eAAO,MAAM,QAAQ,qBAAoB,CAAC"}
@@ -49,6 +49,7 @@ export interface RuntimeConfig<TTypes extends RootConfigTypes> {
49
49
  * @default process.env.NODE_ENV !== 'production'
50
50
  */
51
51
  isDev: boolean;
52
+ defaultMeta?: TTypes['meta'] extends object ? TTypes['meta'] : never;
52
53
  }
53
54
  /**
54
55
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/core/internals/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEhD;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,OAKe,CAAC;AAE9C;;;GAGG;AACH,MAAM,WAAW,aAAa,CAAC,MAAM,SAAS,eAAe;IAC3D;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;IACnC;;;OAGG;IACH,cAAc,EAAE,cAAc,CAC5B,MAAM,CAAC,KAAK,CAAC,EACb,cAAc,CAAC,MAAM,CAAC,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAChD,CAAC;IACF;;;;OAIG;IACH,oBAAoB,EAAE,OAAO,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,oBAAY,qBAAqB,CAAC,SAAS,SAAS,eAAe,IACjE,SAAS,CAAC;AAEZ;;;;GAIG;AACH,MAAM,WAAW,UAAU,CAAC,SAAS,SAAS,eAAe,CAC3D,SAAQ,aAAa,CAAC,SAAS,CAAC;IAChC,MAAM,EAAE,SAAS,CAAC;CACnB;AAED;;GAEG;AACH,oBAAY,aAAa,GAAG,UAAU,CAAC;IACrC,GAAG,EAAE,GAAG,CAAC;IACT,IAAI,EAAE,GAAG,CAAC;IACV,UAAU,EAAE,GAAG,CAAC;IAChB,WAAW,EAAE,GAAG,CAAC;CAClB,CAAC,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/core/internals/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEhD;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,OAKe,CAAC;AAE9C;;;GAGG;AACH,MAAM,WAAW,aAAa,CAAC,MAAM,SAAS,eAAe;IAC3D;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;IACnC;;;OAGG;IACH,cAAc,EAAE,cAAc,CAC5B,MAAM,CAAC,KAAK,CAAC,EACb,cAAc,CAAC,MAAM,CAAC,GAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAChD,CAAC;IACF;;;;OAIG;IACH,oBAAoB,EAAE,OAAO,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,KAAK,EAAE,OAAO,CAAC;IAEf,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;CACtE;AAED;;GAEG;AACH,oBAAY,qBAAqB,CAAC,SAAS,SAAS,eAAe,IACjE,SAAS,CAAC;AAEZ;;;;GAIG;AACH,MAAM,WAAW,UAAU,CAAC,SAAS,SAAS,eAAe,CAC3D,SAAQ,aAAa,CAAC,SAAS,CAAC;IAChC,MAAM,EAAE,SAAS,CAAC;CACnB;AAED;;GAEG;AACH,oBAAY,aAAa,GAAG,UAAU,CAAC;IACrC,GAAG,EAAE,GAAG,CAAC;IACT,IAAI,EAAE,GAAG,CAAC;IACV,UAAU,EAAE,GAAG,CAAC;IAChB,WAAW,EAAE,GAAG,CAAC;CAClB,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"getParseFn.d.ts","sourceRoot":"","sources":["../../../src/core/internals/getParseFn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,oBAAY,OAAO,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,OAAO,KAAK,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;AAExE,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CA6BzE;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAC3C,eAAe,EAAE,MAAM,GAAG,SAAS,GAClC,OAAO,CAAC,KAAK,CAAC,CAKhB"}
1
+ {"version":3,"file":"getParseFn.d.ts","sourceRoot":"","sources":["../../../src/core/internals/getParseFn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,oBAAY,OAAO,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,OAAO,KAAK,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;AAExE,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAqCzE;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAC3C,eAAe,EAAE,MAAM,GAAG,SAAS,GAClC,OAAO,CAAC,KAAK,CAAC,CAKhB"}
@@ -93,7 +93,7 @@ export interface ProcedureBuilder<TParams extends ProcedureParams> {
93
93
  declare type AnyProcedureBuilder = ProcedureBuilder<any>;
94
94
  export declare type ProcedureBuilderMiddleware = MiddlewareFunction<any, any>;
95
95
  export declare type ProcedureBuilderResolver = (opts: ResolveOptions<any>) => Promise<unknown>;
96
- export declare function createBuilder<TConfig extends AnyRootConfig>(initDef?: AnyProcedureBuilderDef): ProcedureBuilder<{
96
+ export declare function createBuilder<TConfig extends AnyRootConfig>(initDef?: Partial<AnyProcedureBuilderDef>): ProcedureBuilder<{
97
97
  _config: TConfig;
98
98
  _ctx_out: TConfig['$types']['ctx'];
99
99
  _input_in: UnsetMarker;
@@ -1 +1 @@
1
- {"version":3,"file":"procedureBuilder.d.ts","sourceRoot":"","sources":["../../../src/core/internals/procedureBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"procedureBuilder.d.ts","sourceRoot":"","sources":["../../../src/core/internals/procedureBuilder.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,10 @@ export declare type ParserCustomValidatorEsque<TInput> = (input: unknown) => TIn
12
12
  export declare type ParserYupEsque<TInput> = {
13
13
  validateSync: (input: unknown) => TInput;
14
14
  };
15
- export declare type ParserWithoutInput<TInput> = ParserYupEsque<TInput> | ParserSuperstructEsque<TInput> | ParserCustomValidatorEsque<TInput> | ParserMyZodEsque<TInput>;
15
+ export declare type ParserScaleEsque<TInput> = {
16
+ assert(value: unknown): asserts value is TInput;
17
+ };
18
+ export declare type ParserWithoutInput<TInput> = ParserYupEsque<TInput> | ParserSuperstructEsque<TInput> | ParserCustomValidatorEsque<TInput> | ParserMyZodEsque<TInput> | ParserScaleEsque<TInput>;
16
19
  export declare type ParserWithInputOutput<TInput, TParsedInput> = ParserZodEsque<TInput, TParsedInput>;
17
20
  export declare type Parser = ParserWithoutInput<any> | ParserWithInputOutput<any, any>;
18
21
  export declare type inferParser<TParser extends Parser> = TParser extends ParserWithInputOutput<infer $TIn, infer $TOut> ? {
@@ -1 +1 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/core/parser.ts"],"names":[],"mappings":"AAAA,oBAAY,cAAc,CAAC,MAAM,EAAE,YAAY,IAAI;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,YAAY,CAAC;CACvB,CAAC;AAEF,oBAAY,gBAAgB,CAAC,MAAM,IAAI;IACrC,KAAK,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,MAAM,CAAC;CAC/B,CAAC;AAEF,oBAAY,sBAAsB,CAAC,MAAM,IAAI;IAC3C,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,CAAC;CACpC,CAAC;AAEF,oBAAY,0BAA0B,CAAC,MAAM,IAAI,CAC/C,KAAK,EAAE,OAAO,KACX,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAE9B,oBAAY,cAAc,CAAC,MAAM,IAAI;IACnC,YAAY,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,CAAC;CAC1C,CAAC;AACF,oBAAY,kBAAkB,CAAC,MAAM,IACjC,cAAc,CAAC,MAAM,CAAC,GACtB,sBAAsB,CAAC,MAAM,CAAC,GAC9B,0BAA0B,CAAC,MAAM,CAAC,GAClC,gBAAgB,CAAC,MAAM,CAAC,CAAC;AAE7B,oBAAY,qBAAqB,CAAC,MAAM,EAAE,YAAY,IAAI,cAAc,CACtE,MAAM,EACN,YAAY,CACb,CAAC;AAEF,oBAAY,MAAM,GAAG,kBAAkB,CAAC,GAAG,CAAC,GAAG,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AAE/E,oBAAY,WAAW,CAAC,OAAO,SAAS,MAAM,IAC5C,OAAO,SAAS,qBAAqB,CAAC,MAAM,IAAI,EAAE,MAAM,KAAK,CAAC,GAC1D;IACE,EAAE,EAAE,IAAI,CAAC;IACT,GAAG,EAAE,KAAK,CAAC;CACZ,GACD,OAAO,SAAS,kBAAkB,CAAC,MAAM,MAAM,CAAC,GAChD;IACE,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;CACb,GACD,KAAK,CAAC"}
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/core/parser.ts"],"names":[],"mappings":"AAAA,oBAAY,cAAc,CAAC,MAAM,EAAE,YAAY,IAAI;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,YAAY,CAAC;CACvB,CAAC;AAEF,oBAAY,gBAAgB,CAAC,MAAM,IAAI;IACrC,KAAK,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,MAAM,CAAC;CAC/B,CAAC;AAEF,oBAAY,sBAAsB,CAAC,MAAM,IAAI;IAC3C,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,CAAC;CACpC,CAAC;AAEF,oBAAY,0BAA0B,CAAC,MAAM,IAAI,CAC/C,KAAK,EAAE,OAAO,KACX,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAE9B,oBAAY,cAAc,CAAC,MAAM,IAAI;IACnC,YAAY,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,CAAC;CAC1C,CAAC;AAEF,oBAAY,gBAAgB,CAAC,MAAM,IAAI;IACrC,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC;CACjD,CAAC;AAEF,oBAAY,kBAAkB,CAAC,MAAM,IACjC,cAAc,CAAC,MAAM,CAAC,GACtB,sBAAsB,CAAC,MAAM,CAAC,GAC9B,0BAA0B,CAAC,MAAM,CAAC,GAClC,gBAAgB,CAAC,MAAM,CAAC,GACxB,gBAAgB,CAAC,MAAM,CAAC,CAAC;AAE7B,oBAAY,qBAAqB,CAAC,MAAM,EAAE,YAAY,IAAI,cAAc,CACtE,MAAM,EACN,YAAY,CACb,CAAC;AAEF,oBAAY,MAAM,GAAG,kBAAkB,CAAC,GAAG,CAAC,GAAG,qBAAqB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AAE/E,oBAAY,WAAW,CAAC,OAAO,SAAS,MAAM,IAC5C,OAAO,SAAS,qBAAqB,CAAC,MAAM,IAAI,EAAE,MAAM,KAAK,CAAC,GAC1D;IACE,EAAE,EAAE,IAAI,CAAC;IACT,GAAG,EAAE,KAAK,CAAC;CACZ,GACD,OAAO,SAAS,kBAAkB,CAAC,MAAM,MAAM,CAAC,GAChD;IACE,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;CACb,GACD,KAAK,CAAC"}
package/dist/index.js CHANGED
@@ -204,6 +204,13 @@ function getParseFn(procedureParser) {
204
204
  // ProcedureParserSuperstructEsque
205
205
  return parser.create.bind(parser);
206
206
  }
207
+ if (typeof parser.assert === 'function') {
208
+ // ParserScaleEsque
209
+ return (value)=>{
210
+ parser.assert(value);
211
+ return value;
212
+ };
213
+ }
207
214
  throw new Error('Could not find a validator fn');
208
215
  }
209
216
  /**
@@ -317,7 +324,7 @@ function isPlainObject(obj) {
317
324
  */ const middlewareMarker = 'middlewareMarker';
318
325
 
319
326
  function createNewBuilder(def1, def2) {
320
- const { middlewares =[] , inputs , ...rest } = def2;
327
+ const { middlewares =[] , inputs , meta , ...rest } = def2;
321
328
  // TODO: maybe have a fn here to warn about calls
322
329
  return createBuilder({
323
330
  ...mergeWithoutOverrides(def1, rest),
@@ -328,13 +335,18 @@ function createNewBuilder(def1, def2) {
328
335
  middlewares: [
329
336
  ...def1.middlewares,
330
337
  ...middlewares
331
- ]
338
+ ],
339
+ meta: def1.meta && meta ? {
340
+ ...def1.meta,
341
+ ...meta
342
+ } : meta ?? def1.meta
332
343
  });
333
344
  }
334
- function createBuilder(initDef) {
335
- const _def = initDef || {
345
+ function createBuilder(initDef = {}) {
346
+ const _def = {
336
347
  inputs: [],
337
- middlewares: []
348
+ middlewares: [],
349
+ ...initDef
338
350
  };
339
351
  return {
340
352
  _def,
@@ -801,7 +813,7 @@ function mergeRouters(...routerList) {
801
813
  }
802
814
  }
803
815
  /**
804
- * Initialize tRPC - be done exactly once per backend
816
+ * Initialize tRPC - done exactly once per backend
805
817
  */ const initTRPC = new TRPCBuilder();
806
818
  function createTRPCInner() {
807
819
  return function initTRPCInner(runtime) {
@@ -833,7 +845,9 @@ function createTRPCInner() {
833
845
  */ _config: config$1,
834
846
  /**
835
847
  * Builder object for creating procedures
836
- */ procedure: createBuilder(),
848
+ */ procedure: createBuilder({
849
+ meta: runtime?.defaultMeta
850
+ }),
837
851
  /**
838
852
  * Create reusable middlewares
839
853
  */ middleware: createMiddlewareFactory(),
package/dist/index.mjs CHANGED
@@ -202,6 +202,13 @@ function getParseFn(procedureParser) {
202
202
  // ProcedureParserSuperstructEsque
203
203
  return parser.create.bind(parser);
204
204
  }
205
+ if (typeof parser.assert === 'function') {
206
+ // ParserScaleEsque
207
+ return (value)=>{
208
+ parser.assert(value);
209
+ return value;
210
+ };
211
+ }
205
212
  throw new Error('Could not find a validator fn');
206
213
  }
207
214
  /**
@@ -315,7 +322,7 @@ function isPlainObject(obj) {
315
322
  */ const middlewareMarker = 'middlewareMarker';
316
323
 
317
324
  function createNewBuilder(def1, def2) {
318
- const { middlewares =[] , inputs , ...rest } = def2;
325
+ const { middlewares =[] , inputs , meta , ...rest } = def2;
319
326
  // TODO: maybe have a fn here to warn about calls
320
327
  return createBuilder({
321
328
  ...mergeWithoutOverrides(def1, rest),
@@ -326,13 +333,18 @@ function createNewBuilder(def1, def2) {
326
333
  middlewares: [
327
334
  ...def1.middlewares,
328
335
  ...middlewares
329
- ]
336
+ ],
337
+ meta: def1.meta && meta ? {
338
+ ...def1.meta,
339
+ ...meta
340
+ } : meta ?? def1.meta
330
341
  });
331
342
  }
332
- function createBuilder(initDef) {
333
- const _def = initDef || {
343
+ function createBuilder(initDef = {}) {
344
+ const _def = {
334
345
  inputs: [],
335
- middlewares: []
346
+ middlewares: [],
347
+ ...initDef
336
348
  };
337
349
  return {
338
350
  _def,
@@ -799,7 +811,7 @@ function mergeRouters(...routerList) {
799
811
  }
800
812
  }
801
813
  /**
802
- * Initialize tRPC - be done exactly once per backend
814
+ * Initialize tRPC - done exactly once per backend
803
815
  */ const initTRPC = new TRPCBuilder();
804
816
  function createTRPCInner() {
805
817
  return function initTRPCInner(runtime) {
@@ -831,7 +843,9 @@ function createTRPCInner() {
831
843
  */ _config: config,
832
844
  /**
833
845
  * Builder object for creating procedures
834
- */ procedure: createBuilder(),
846
+ */ procedure: createBuilder({
847
+ meta: runtime?.defaultMeta
848
+ }),
835
849
  /**
836
850
  * Create reusable middlewares
837
851
  */ middleware: createMiddlewareFactory(),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trpc/server",
3
- "version": "10.16.0",
3
+ "version": "10.18.0",
4
4
  "description": "tRPC Server",
5
5
  "author": "KATT",
6
6
  "license": "MIT",
@@ -157,5 +157,5 @@
157
157
  "yup": "^1.0.0",
158
158
  "zod": "^3.0.0"
159
159
  },
160
- "gitHead": "985022299a955217f7fbb20924c062153d8ec14c"
160
+ "gitHead": "8ec386ff118020356d39c8796b7bb68666abfe4c"
161
161
  }
@@ -50,13 +50,17 @@ class TRPCBuilder<TParams extends PartialRootConfigTypes = object> {
50
50
  | RootConfigTypes['ctx']
51
51
  | ((...args: unknown[]) => RootConfigTypes['ctx']),
52
52
  >() {
53
- return new TRPCBuilder<
54
- FlatOverwrite<TParams, { ctx: Unwrap<TNewContext> }>
55
- >();
53
+ type NextParams = FlatOverwrite<TParams, { ctx: Unwrap<TNewContext> }>;
54
+
55
+ return new TRPCBuilder<NextParams>();
56
56
  }
57
+
57
58
  meta<TNewMeta extends RootConfigTypes['meta']>() {
58
- return new TRPCBuilder<FlatOverwrite<TParams, { meta: TNewMeta }>>();
59
+ type NextParams = FlatOverwrite<TParams, { meta: TNewMeta }>;
60
+
61
+ return new TRPCBuilder<NextParams>();
59
62
  }
63
+
60
64
  create<
61
65
  TOptions extends Partial<
62
66
  RuntimeConfig<CreateRootConfigTypesFromPartial<TParams>>
@@ -74,7 +78,7 @@ class TRPCBuilder<TParams extends PartialRootConfigTypes = object> {
74
78
  }
75
79
 
76
80
  /**
77
- * Initialize tRPC - be done exactly once per backend
81
+ * Initialize tRPC - done exactly once per backend
78
82
  */
79
83
  export const initTRPC = new TRPCBuilder();
80
84
 
@@ -145,7 +149,9 @@ function createTRPCInner<TParams extends PartialRootConfigTypes>() {
145
149
  /**
146
150
  * Builder object for creating procedures
147
151
  */
148
- procedure: createBuilder<$Config>(),
152
+ procedure: createBuilder<$Config>({
153
+ meta: runtime?.defaultMeta,
154
+ }),
149
155
  /**
150
156
  * Create reusable middlewares
151
157
  */
@@ -58,6 +58,8 @@ export interface RuntimeConfig<TTypes extends RootConfigTypes> {
58
58
  * @default process.env.NODE_ENV !== 'production'
59
59
  */
60
60
  isDev: boolean;
61
+
62
+ defaultMeta?: TTypes['meta'] extends object ? TTypes['meta'] : never;
61
63
  }
62
64
 
63
65
  /**
@@ -30,6 +30,14 @@ export function getParseFn<TType>(procedureParser: Parser): ParseFn<TType> {
30
30
  return parser.create.bind(parser);
31
31
  }
32
32
 
33
+ if (typeof parser.assert === 'function') {
34
+ // ParserScaleEsque
35
+ return (value) => {
36
+ parser.assert(value);
37
+ return value as TType;
38
+ };
39
+ }
40
+
33
41
  throw new Error('Could not find a validator fn');
34
42
  }
35
43
 
@@ -192,18 +192,19 @@ function createNewBuilder(
192
192
  def1: AnyProcedureBuilderDef,
193
193
  def2: Partial<AnyProcedureBuilderDef>,
194
194
  ) {
195
- const { middlewares = [], inputs, ...rest } = def2;
195
+ const { middlewares = [], inputs, meta, ...rest } = def2;
196
196
 
197
197
  // TODO: maybe have a fn here to warn about calls
198
198
  return createBuilder({
199
199
  ...mergeWithoutOverrides(def1, rest),
200
200
  inputs: [...def1.inputs, ...(inputs ?? [])],
201
201
  middlewares: [...def1.middlewares, ...middlewares],
202
- } as any);
202
+ meta: def1.meta && meta ? { ...def1.meta, ...meta } : meta ?? def1.meta,
203
+ });
203
204
  }
204
205
 
205
206
  export function createBuilder<TConfig extends AnyRootConfig>(
206
- initDef?: AnyProcedureBuilderDef,
207
+ initDef: Partial<AnyProcedureBuilderDef> = {},
207
208
  ): ProcedureBuilder<{
208
209
  _config: TConfig;
209
210
  _ctx_out: TConfig['$types']['ctx'];
@@ -213,9 +214,10 @@ export function createBuilder<TConfig extends AnyRootConfig>(
213
214
  _output_out: UnsetMarker;
214
215
  _meta: TConfig['$types']['meta'];
215
216
  }> {
216
- const _def: AnyProcedureBuilderDef = initDef || {
217
+ const _def: AnyProcedureBuilderDef = {
217
218
  inputs: [],
218
219
  middlewares: [],
220
+ ...initDef,
219
221
  };
220
222
 
221
223
  return {
@@ -18,11 +18,17 @@ export type ParserCustomValidatorEsque<TInput> = (
18
18
  export type ParserYupEsque<TInput> = {
19
19
  validateSync: (input: unknown) => TInput;
20
20
  };
21
+
22
+ export type ParserScaleEsque<TInput> = {
23
+ assert(value: unknown): asserts value is TInput;
24
+ };
25
+
21
26
  export type ParserWithoutInput<TInput> =
22
27
  | ParserYupEsque<TInput>
23
28
  | ParserSuperstructEsque<TInput>
24
29
  | ParserCustomValidatorEsque<TInput>
25
- | ParserMyZodEsque<TInput>;
30
+ | ParserMyZodEsque<TInput>
31
+ | ParserScaleEsque<TInput>;
26
32
 
27
33
  export type ParserWithInputOutput<TInput, TParsedInput> = ParserZodEsque<
28
34
  TInput,