@pluv/types 0.21.1 → 0.23.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.
@@ -1,5 +1,5 @@
1
1
 
2
- > @pluv/types@0.21.1 build /home/runner/work/pluv/pluv/packages/types
2
+ > @pluv/types@0.23.0 build /home/runner/work/pluv/pluv/packages/types
3
3
  > tsup src/index.ts --format esm,cjs --dts
4
4
 
5
5
  CLI Building entry: src/index.ts
@@ -8,11 +8,11 @@
8
8
  CLI Target: es6
9
9
  ESM Build start
10
10
  CJS Build start
11
- CJS dist/index.js 754.00 B
12
- CJS ⚡️ Build success in 25ms
13
11
  ESM dist/index.mjs 0 B
14
- ESM ⚡️ Build success in 26ms
12
+ ESM ⚡️ Build success in 31ms
13
+ CJS dist/index.js 754.00 B
14
+ CJS ⚡️ Build success in 33ms
15
15
  DTS Build start
16
- DTS ⚡️ Build success in 823ms
17
- DTS dist/index.d.mts 7.35 KB
18
- DTS dist/index.d.ts 7.35 KB
16
+ DTS ⚡️ Build success in 889ms
17
+ DTS dist/index.d.mts 7.61 KB
18
+ DTS dist/index.d.ts 7.61 KB
package/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # @pluv/types
2
2
 
3
+ ## 0.23.0
4
+
5
+ ## 0.22.0
6
+
3
7
  ## 0.21.1
4
8
 
5
9
  ## 0.21.0
package/dist/index.d.mts CHANGED
@@ -143,17 +143,19 @@ interface IORouterLike<TEvents extends Record<string, ProcedureLike<any, any>> =
143
143
  interface IOLike<TAuthorize extends IOAuthorize<any, any, any> = IOAuthorize<any, any, any>, TEvents extends Record<string, ProcedureLike<any, any>> = {}> extends IORouterLike<TEvents> {
144
144
  _authorize: TAuthorize | null;
145
145
  }
146
- type InferIOInput<TRouter extends IORouterLike<any>> = TRouter extends IORouterLike<infer IEvents> ? {
147
- [P in keyof IEvents]: IEvents[P] extends ProcedureLike<infer IInput, any> ? IInput : never;
148
- } : never;
149
- type InferIOOutput<TRouter extends IORouterLike<any>> = TRouter extends IORouterLike<infer IEvents> ? UnionToIntersection<{
150
- [P in keyof IEvents]: IEvents[P] extends ProcedureLike<any, infer IOutput> ? IOutput : never;
151
- }[keyof IEvents]> : never;
152
- type InferEventMessage<TEvents extends EventRecord<string, any> = EventRecord<string, any>, TEvent extends keyof TEvents = keyof TEvents> = {
146
+ type InferEventsInput<TEvents extends Record<string, ProcedureLike<any, any>>> = {
147
+ [P in keyof TEvents]: TEvents[P] extends ProcedureLike<infer IInput, any> ? IInput : never;
148
+ };
149
+ type InferEventsOutput<TEvents extends Record<string, ProcedureLike<any, any>>> = UnionToIntersection<{
150
+ [P in keyof TEvents]: TEvents[P] extends ProcedureLike<any, infer IOutput> ? IOutput : never;
151
+ }[keyof TEvents]>;
152
+ type InferIOInput<TRouter extends IORouterLike<any>> = TRouter extends IORouterLike<infer IEvents> ? InferEventsInput<IEvents> : never;
153
+ type InferIOOutput<TRouter extends IORouterLike<any>> = TRouter extends IORouterLike<infer IEvents> ? InferEventsOutput<IEvents> : never;
154
+ type InferEventMessage<TEvents = EventRecord<string, any>, TEvent extends keyof TEvents = keyof TEvents> = TEvents extends EventRecord<string, any> ? {
153
155
  [P in TEvent]: P extends string ? Id<EventMessage<P, TEvents[P]>> : never;
154
- }[TEvent];
156
+ }[TEvent] : never;
155
157
  type IOEventMessage<TIO extends IOLike<any>, TEvent extends keyof InferIOOutput<TIO> = keyof InferIOOutput<TIO>> = Id<{
156
158
  room: string;
157
159
  } & InferEventMessage<InferIOOutput<TIO>, TEvent> & (InferEventMessage<InferIOOutput<TIO>, TEvent>["type"] extends "$ERROR" ? IOAuthorizeOptionalEventMessage<TIO> : IOAuthorizeEventMessage<TIO>)>;
158
160
 
159
- export type { BaseClientEventRecord, BaseClientMessage, BaseIOAuthorize, BaseIOAuthorizeEventRecord, BaseIOEventRecord, BaseUser, Constructable, DeepPartial, DeepWriteable, EventMessage, EventRecord, GetEventMessage, IOAuthorize, IOAuthorizeEventMessage, IOAuthorizeOptionalEventMessage, IOAuthorizeRequiredEventMessage, IOEventMessage, IOLike, IORouterLike, Id, InferEventMessage, InferIOAuthorize, InferIOAuthorizeRequired, InferIOAuthorizeUser, InferIOInput, InferIOOutput, InputZodLike, Json, JsonObject, JsonPrimitive, Maybe, MaybePromise, MaybeReadonlyArray, NonNilProps, OptionalProps, ProcedureLike, Spread, SpreadProperties };
161
+ export type { BaseClientEventRecord, BaseClientMessage, BaseIOAuthorize, BaseIOAuthorizeEventRecord, BaseIOEventRecord, BaseUser, Constructable, DeepPartial, DeepWriteable, EventMessage, EventRecord, GetEventMessage, IOAuthorize, IOAuthorizeEventMessage, IOAuthorizeOptionalEventMessage, IOAuthorizeRequiredEventMessage, IOEventMessage, IOLike, IORouterLike, Id, InferEventMessage, InferEventsInput, InferEventsOutput, InferIOAuthorize, InferIOAuthorizeRequired, InferIOAuthorizeUser, InferIOInput, InferIOOutput, InputZodLike, Json, JsonObject, JsonPrimitive, Maybe, MaybePromise, MaybeReadonlyArray, NonNilProps, OptionalProps, ProcedureLike, Spread, SpreadProperties };
package/dist/index.d.ts CHANGED
@@ -143,17 +143,19 @@ interface IORouterLike<TEvents extends Record<string, ProcedureLike<any, any>> =
143
143
  interface IOLike<TAuthorize extends IOAuthorize<any, any, any> = IOAuthorize<any, any, any>, TEvents extends Record<string, ProcedureLike<any, any>> = {}> extends IORouterLike<TEvents> {
144
144
  _authorize: TAuthorize | null;
145
145
  }
146
- type InferIOInput<TRouter extends IORouterLike<any>> = TRouter extends IORouterLike<infer IEvents> ? {
147
- [P in keyof IEvents]: IEvents[P] extends ProcedureLike<infer IInput, any> ? IInput : never;
148
- } : never;
149
- type InferIOOutput<TRouter extends IORouterLike<any>> = TRouter extends IORouterLike<infer IEvents> ? UnionToIntersection<{
150
- [P in keyof IEvents]: IEvents[P] extends ProcedureLike<any, infer IOutput> ? IOutput : never;
151
- }[keyof IEvents]> : never;
152
- type InferEventMessage<TEvents extends EventRecord<string, any> = EventRecord<string, any>, TEvent extends keyof TEvents = keyof TEvents> = {
146
+ type InferEventsInput<TEvents extends Record<string, ProcedureLike<any, any>>> = {
147
+ [P in keyof TEvents]: TEvents[P] extends ProcedureLike<infer IInput, any> ? IInput : never;
148
+ };
149
+ type InferEventsOutput<TEvents extends Record<string, ProcedureLike<any, any>>> = UnionToIntersection<{
150
+ [P in keyof TEvents]: TEvents[P] extends ProcedureLike<any, infer IOutput> ? IOutput : never;
151
+ }[keyof TEvents]>;
152
+ type InferIOInput<TRouter extends IORouterLike<any>> = TRouter extends IORouterLike<infer IEvents> ? InferEventsInput<IEvents> : never;
153
+ type InferIOOutput<TRouter extends IORouterLike<any>> = TRouter extends IORouterLike<infer IEvents> ? InferEventsOutput<IEvents> : never;
154
+ type InferEventMessage<TEvents = EventRecord<string, any>, TEvent extends keyof TEvents = keyof TEvents> = TEvents extends EventRecord<string, any> ? {
153
155
  [P in TEvent]: P extends string ? Id<EventMessage<P, TEvents[P]>> : never;
154
- }[TEvent];
156
+ }[TEvent] : never;
155
157
  type IOEventMessage<TIO extends IOLike<any>, TEvent extends keyof InferIOOutput<TIO> = keyof InferIOOutput<TIO>> = Id<{
156
158
  room: string;
157
159
  } & InferEventMessage<InferIOOutput<TIO>, TEvent> & (InferEventMessage<InferIOOutput<TIO>, TEvent>["type"] extends "$ERROR" ? IOAuthorizeOptionalEventMessage<TIO> : IOAuthorizeEventMessage<TIO>)>;
158
160
 
159
- export type { BaseClientEventRecord, BaseClientMessage, BaseIOAuthorize, BaseIOAuthorizeEventRecord, BaseIOEventRecord, BaseUser, Constructable, DeepPartial, DeepWriteable, EventMessage, EventRecord, GetEventMessage, IOAuthorize, IOAuthorizeEventMessage, IOAuthorizeOptionalEventMessage, IOAuthorizeRequiredEventMessage, IOEventMessage, IOLike, IORouterLike, Id, InferEventMessage, InferIOAuthorize, InferIOAuthorizeRequired, InferIOAuthorizeUser, InferIOInput, InferIOOutput, InputZodLike, Json, JsonObject, JsonPrimitive, Maybe, MaybePromise, MaybeReadonlyArray, NonNilProps, OptionalProps, ProcedureLike, Spread, SpreadProperties };
161
+ export type { BaseClientEventRecord, BaseClientMessage, BaseIOAuthorize, BaseIOAuthorizeEventRecord, BaseIOEventRecord, BaseUser, Constructable, DeepPartial, DeepWriteable, EventMessage, EventRecord, GetEventMessage, IOAuthorize, IOAuthorizeEventMessage, IOAuthorizeOptionalEventMessage, IOAuthorizeRequiredEventMessage, IOEventMessage, IOLike, IORouterLike, Id, InferEventMessage, InferEventsInput, InferEventsOutput, InferIOAuthorize, InferIOAuthorizeRequired, InferIOAuthorizeUser, InferIOInput, InferIOOutput, InputZodLike, Json, JsonObject, JsonPrimitive, Maybe, MaybePromise, MaybeReadonlyArray, NonNilProps, OptionalProps, ProcedureLike, Spread, SpreadProperties };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pluv/types",
3
- "version": "0.21.1",
3
+ "version": "0.23.0",
4
4
  "description": "@pluv/io shared types",
5
5
  "author": "leedavidcs",
6
6
  "license": "MIT",
@@ -18,8 +18,8 @@
18
18
  "devDependencies": {
19
19
  "tsup": "^8.2.4",
20
20
  "typescript": "^5.5.4",
21
- "@pluv/tsconfig": "^0.21.1",
22
- "eslint-config-pluv": "^0.21.1"
21
+ "@pluv/tsconfig": "^0.23.0",
22
+ "eslint-config-pluv": "^0.23.0"
23
23
  },
24
24
  "scripts": {
25
25
  "build": "tsup src/index.ts --format esm,cjs --dts",
package/src/index.ts CHANGED
@@ -32,6 +32,8 @@ export type {
32
32
  IOLike,
33
33
  IORouterLike,
34
34
  InferEventMessage,
35
+ InferEventsInput,
36
+ InferEventsOutput,
35
37
  InferIOAuthorize,
36
38
  InferIOAuthorizeRequired,
37
39
  InferIOAuthorizeUser,
package/src/pluv.ts CHANGED
@@ -152,26 +152,26 @@ export interface IOLike<
152
152
  _authorize: TAuthorize | null;
153
153
  }
154
154
 
155
+ export type InferEventsInput<TEvents extends Record<string, ProcedureLike<any, any>>> = {
156
+ [P in keyof TEvents]: TEvents[P] extends ProcedureLike<infer IInput, any> ? IInput : never;
157
+ };
158
+
159
+ export type InferEventsOutput<TEvents extends Record<string, ProcedureLike<any, any>>> = UnionToIntersection<
160
+ {
161
+ [P in keyof TEvents]: TEvents[P] extends ProcedureLike<any, infer IOutput> ? IOutput : never;
162
+ }[keyof TEvents]
163
+ >;
164
+
155
165
  export type InferIOInput<TRouter extends IORouterLike<any>> =
156
- TRouter extends IORouterLike<infer IEvents>
157
- ? { [P in keyof IEvents]: IEvents[P] extends ProcedureLike<infer IInput, any> ? IInput : never }
158
- : never;
166
+ TRouter extends IORouterLike<infer IEvents> ? InferEventsInput<IEvents> : never;
159
167
 
160
168
  export type InferIOOutput<TRouter extends IORouterLike<any>> =
161
- TRouter extends IORouterLike<infer IEvents>
162
- ? UnionToIntersection<
163
- {
164
- [P in keyof IEvents]: IEvents[P] extends ProcedureLike<any, infer IOutput> ? IOutput : never;
165
- }[keyof IEvents]
166
- >
167
- : never;
169
+ TRouter extends IORouterLike<infer IEvents> ? InferEventsOutput<IEvents> : never;
168
170
 
169
- export type InferEventMessage<
170
- TEvents extends EventRecord<string, any> = EventRecord<string, any>,
171
- TEvent extends keyof TEvents = keyof TEvents,
172
- > = {
173
- [P in TEvent]: P extends string ? Id<EventMessage<P, TEvents[P]>> : never;
174
- }[TEvent];
171
+ export type InferEventMessage<TEvents = EventRecord<string, any>, TEvent extends keyof TEvents = keyof TEvents> =
172
+ TEvents extends EventRecord<string, any>
173
+ ? { [P in TEvent]: P extends string ? Id<EventMessage<P, TEvents[P]>> : never }[TEvent]
174
+ : never;
175
175
 
176
176
  export type IOEventMessage<
177
177
  TIO extends IOLike<any>,