@pluv/types 0.40.1 → 0.41.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.40.1 build /home/runner/work/pluv/pluv/packages/types
2
+ > @pluv/types@0.41.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
@@ -9,10 +9,10 @@
9
9
  ESM Build start
10
10
  CJS Build start
11
11
  CJS dist/index.js 758.00 B
12
- CJS ⚡️ Build success in 39ms
12
+ CJS ⚡️ Build success in 35ms
13
13
  ESM dist/index.mjs 0 B
14
- ESM ⚡️ Build success in 41ms
14
+ ESM ⚡️ Build success in 35ms
15
15
  DTS Build start
16
- DTS ⚡️ Build success in 708ms
17
- DTS dist/index.d.mts 7.10 KB
18
- DTS dist/index.d.ts 7.10 KB
16
+ DTS ⚡️ Build success in 745ms
17
+ DTS dist/index.d.mts 7.47 KB
18
+ DTS dist/index.d.ts 7.47 KB
package/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # @pluv/types
2
2
 
3
+ ## 0.41.0
4
+
5
+ ## 0.40.2
6
+
3
7
  ## 0.40.1
4
8
 
5
9
  ## 0.40.0
package/dist/index.d.mts CHANGED
@@ -66,14 +66,20 @@ interface BaseIOAuthorizeEventRecord<TAuthorize extends IOAuthorize<any, any>> {
66
66
  connectionId: string;
67
67
  presence: JsonObject | null;
68
68
  room: string | null;
69
+ timers: {
70
+ presence: number | null;
71
+ };
69
72
  user: Id<InferIOAuthorizeUser<TAuthorize>>;
70
73
  };
71
74
  };
72
75
  };
73
76
  $userJoined: {
74
77
  connectionId: string;
75
- user: NonNullable<Id<InferIOAuthorizeUser<TAuthorize>>>;
76
78
  presence: JsonObject;
79
+ timers: {
80
+ presence: number | null;
81
+ };
82
+ user: NonNullable<Id<InferIOAuthorizeUser<TAuthorize>>>;
77
83
  };
78
84
  }
79
85
  type BaseIOEventRecord<TAuthorize extends IOAuthorize<any, any>> = BaseIOAuthorizeEventRecord<TAuthorize> & {
@@ -87,9 +93,16 @@ type BaseIOEventRecord<TAuthorize extends IOAuthorize<any, any>> = BaseIOAuthori
87
93
  $pong: {};
88
94
  $presenceUpdated: {
89
95
  presence: JsonObject;
96
+ timers: {
97
+ presence: number | null;
98
+ };
90
99
  };
91
100
  $registered: {
101
+ presence: JsonObject | null;
92
102
  sessionId: string;
103
+ timers: {
104
+ presence: number | null;
105
+ };
93
106
  };
94
107
  $storageReceived: {
95
108
  state: string;
@@ -109,9 +122,14 @@ type GetEventMessage<T extends EventRecord<string, any>, TEvent extends keyof T>
109
122
  type InferIOAuthorize<TIO extends IOLike<any, any>> = TIO extends IOLike<infer IAuthorize> ? IAuthorize : never;
110
123
  type InferIOAuthorizeUser<TAuthorize extends IOAuthorize<any, any> | null> = TAuthorize extends IOAuthorize<infer IUser, any> ? IUser : null;
111
124
  type InputZodLike<TData extends JsonObject> = {
112
- _input: TData;
113
125
  parse: (data: unknown) => TData;
114
- };
126
+ } & ({
127
+ _input: TData;
128
+ } | {
129
+ _zod: {
130
+ input: TData;
131
+ };
132
+ });
115
133
  type IOAuthorize<TUser extends BaseUser | null = any, TContext extends Record<string, unknown> = {}> = (TUser extends BaseUser ? {
116
134
  secret?: string;
117
135
  user: InputZodLike<TUser>;
package/dist/index.d.ts CHANGED
@@ -66,14 +66,20 @@ interface BaseIOAuthorizeEventRecord<TAuthorize extends IOAuthorize<any, any>> {
66
66
  connectionId: string;
67
67
  presence: JsonObject | null;
68
68
  room: string | null;
69
+ timers: {
70
+ presence: number | null;
71
+ };
69
72
  user: Id<InferIOAuthorizeUser<TAuthorize>>;
70
73
  };
71
74
  };
72
75
  };
73
76
  $userJoined: {
74
77
  connectionId: string;
75
- user: NonNullable<Id<InferIOAuthorizeUser<TAuthorize>>>;
76
78
  presence: JsonObject;
79
+ timers: {
80
+ presence: number | null;
81
+ };
82
+ user: NonNullable<Id<InferIOAuthorizeUser<TAuthorize>>>;
77
83
  };
78
84
  }
79
85
  type BaseIOEventRecord<TAuthorize extends IOAuthorize<any, any>> = BaseIOAuthorizeEventRecord<TAuthorize> & {
@@ -87,9 +93,16 @@ type BaseIOEventRecord<TAuthorize extends IOAuthorize<any, any>> = BaseIOAuthori
87
93
  $pong: {};
88
94
  $presenceUpdated: {
89
95
  presence: JsonObject;
96
+ timers: {
97
+ presence: number | null;
98
+ };
90
99
  };
91
100
  $registered: {
101
+ presence: JsonObject | null;
92
102
  sessionId: string;
103
+ timers: {
104
+ presence: number | null;
105
+ };
93
106
  };
94
107
  $storageReceived: {
95
108
  state: string;
@@ -109,9 +122,14 @@ type GetEventMessage<T extends EventRecord<string, any>, TEvent extends keyof T>
109
122
  type InferIOAuthorize<TIO extends IOLike<any, any>> = TIO extends IOLike<infer IAuthorize> ? IAuthorize : never;
110
123
  type InferIOAuthorizeUser<TAuthorize extends IOAuthorize<any, any> | null> = TAuthorize extends IOAuthorize<infer IUser, any> ? IUser : null;
111
124
  type InputZodLike<TData extends JsonObject> = {
112
- _input: TData;
113
125
  parse: (data: unknown) => TData;
114
- };
126
+ } & ({
127
+ _input: TData;
128
+ } | {
129
+ _zod: {
130
+ input: TData;
131
+ };
132
+ });
115
133
  type IOAuthorize<TUser extends BaseUser | null = any, TContext extends Record<string, unknown> = {}> = (TUser extends BaseUser ? {
116
134
  secret?: string;
117
135
  user: InputZodLike<TUser>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pluv/types",
3
- "version": "0.40.1",
3
+ "version": "0.41.0",
4
4
  "description": "@pluv/io shared types",
5
5
  "author": "leedavidcs",
6
6
  "license": "MIT",
@@ -16,16 +16,16 @@
16
16
  "access": "public"
17
17
  },
18
18
  "devDependencies": {
19
- "eslint": "^9.24.0",
19
+ "eslint": "^9.25.0",
20
20
  "tsup": "^8.4.0",
21
21
  "typescript": "^5.8.3",
22
- "@pluv/tsconfig": "^0.40.1",
23
- "eslint-config-pluv": "^0.40.1"
22
+ "@pluv/tsconfig": "^0.41.0",
23
+ "eslint-config-pluv": "^0.41.0"
24
24
  },
25
25
  "scripts": {
26
26
  "build": "tsup src/index.ts --format esm,cjs --dts",
27
27
  "dev": "tsup src/index.ts --format esm,cjs --watch --dts",
28
- "lint": "eslint src/**/*.ts* --fix --max-warnings 0",
28
+ "lint": "eslint \"src/**/*.ts*\" --fix --max-warnings 0",
29
29
  "clean": "rm -rf .turbo && rm -rf node_modules && rm -rf dist"
30
30
  }
31
31
  }
package/src/pluv.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { Id, JsonObject, MaybePromise, NonNilProps, UnionToIntersection } from "./general";
1
+ import type { Id, JsonObject, MaybePromise, UnionToIntersection } from "./general";
2
2
 
3
3
  export type BaseUser = {
4
4
  id: string;
@@ -29,14 +29,16 @@ export interface BaseIOAuthorizeEventRecord<TAuthorize extends IOAuthorize<any,
29
29
  connectionId: string;
30
30
  presence: JsonObject | null;
31
31
  room: string | null;
32
+ timers: { presence: number | null };
32
33
  user: Id<InferIOAuthorizeUser<TAuthorize>>;
33
34
  };
34
35
  };
35
36
  };
36
37
  $userJoined: {
37
38
  connectionId: string;
38
- user: NonNullable<Id<InferIOAuthorizeUser<TAuthorize>>>;
39
39
  presence: JsonObject;
40
+ timers: { presence: number | null };
41
+ user: NonNullable<Id<InferIOAuthorizeUser<TAuthorize>>>;
40
42
  };
41
43
  }
42
44
 
@@ -51,9 +53,12 @@ export type BaseIOEventRecord<TAuthorize extends IOAuthorize<any, any>> = BaseIO
51
53
  $pong: {};
52
54
  $presenceUpdated: {
53
55
  presence: JsonObject;
56
+ timers: { presence: number | null };
54
57
  };
55
58
  $registered: {
59
+ presence: JsonObject | null;
56
60
  sessionId: string;
61
+ timers: { presence: number | null };
57
62
  };
58
63
  $storageReceived: {
59
64
  state: string;
@@ -82,9 +87,8 @@ export type InferIOAuthorizeUser<TAuthorize extends IOAuthorize<any, any> | null
82
87
  TAuthorize extends IOAuthorize<infer IUser, any> ? IUser : null;
83
88
 
84
89
  export type InputZodLike<TData extends JsonObject> = {
85
- _input: TData;
86
90
  parse: (data: unknown) => TData;
87
- };
91
+ } & ({ _input: TData } | { _zod: { input: TData } });
88
92
 
89
93
  export type IOAuthorize<TUser extends BaseUser | null = any, TContext extends Record<string, unknown> = {}> =
90
94
  | (TUser extends BaseUser