verani 0.6.1 → 0.7.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.
package/dist/typed.cjs CHANGED
@@ -1 +1 @@
1
- const require_actor_runtime=require(`./actor-runtime-v4YHMnw9.cjs`);require(`./encode-BYFW_6TI.cjs`);const require_validation=require(`./validation-DvWPGkXK.cjs`);function createTypedSocketEmit(e){let n=((n,r)=>{e.emit(n,r)});return n.to=n=>{let r=e.to(n);return{emit:(e,n)=>r.emit(e,n)}},n}function createTypedActorEmit(e){let n=((n,r)=>e.emit.emit(n,r));return n.to=n=>{let r=e.emit.to(n);return{emit:(e,n)=>r.emit(e,n)}},n}function wrapContext(e){return{actor:Object.assign({},e.actor,{emit:createTypedActorEmit(e.actor)}),ws:e.ws,meta:e.meta,emit:createTypedSocketEmit(e.emit)}}function wrapMessageContext(e){return{...wrapContext(e),frame:e.frame}}function createTypedRoom(r,i){let o=require_actor_runtime.i({name:i.name,websocketPath:i.websocketPath??`/ws`,extractMeta:i.extractMeta,onConnect:i.onConnect?e=>i.onConnect(wrapContext(e)):void 0,onDisconnect:i.onDisconnect?e=>i.onDisconnect(wrapContext(e)):void 0,onError:i.onError?(e,n)=>i.onError(e,wrapContext(n)):void 0,onHibernationRestore:i.onHibernationRestore}),s=require_validation.o(r),c=s?require_validation.a(r):void 0;return{handle(e,i){o.on(e,(a,o)=>{let l=wrapMessageContext(a);if(s){let a=require_validation.r(r,e);if(a){let r=require_validation.s(a,o,e,`client`,c);return r===void 0?void 0:i(l,r)}}return i(l,o)})},off(e,n){o.off(e)},get definition(){return o},contract:r}}exports.createActorHandler=require_actor_runtime.t,exports.createTypedRoom=createTypedRoom,exports.createValidatedHandler=require_validation.t,exports.defineContract=require_validation.l,exports.getClientValidator=require_validation.r,exports.getValidationErrorHandler=require_validation.a,exports.isContract=require_validation.u,exports.isValidatedContract=require_validation.o,exports.payload=require_validation.d,exports.validateData=require_validation.s,exports.withValidation=require_validation.c;
1
+ const require_actor_runtime=require(`./actor-runtime-v4YHMnw9.cjs`);require(`./encode-BYFW_6TI.cjs`);const require_validation=require(`./validation-DvWPGkXK.cjs`);function createTypedSocketEmit(e){let n=((n,r)=>{e.emit(n,r)});return n.to=n=>{let r=e.to(n);return{emit:(e,n)=>r.emit(e,n)}},n}function createTypedActorEmit(e){let n=((n,r)=>e.emit.emit(n,r));return n.to=n=>{let r=e.emit.to(n);return{emit:(e,n)=>r.emit(e,n)}},n}function wrapContext(e){return{actor:Object.assign({},e.actor,{emit:createTypedActorEmit(e.actor)}),ws:e.ws,meta:e.meta,emit:createTypedSocketEmit(e.emit)}}function wrapMessageContext(e){return{...wrapContext(e),frame:e.frame}}function createTypedRoom(r,i){let o=require_actor_runtime.i({name:i.name,websocketPath:i.websocketPath??`/ws`,extractMeta:i.extractMeta,onConnect:i.onConnect?e=>i.onConnect(wrapContext(e)):void 0,onDisconnect:i.onDisconnect?e=>i.onDisconnect(wrapContext(e)):void 0,onError:i.onError?(e,n)=>i.onError(e,wrapContext(n)):void 0,onHibernationRestore:i.onHibernationRestore}),s=require_validation.o(r),c=s?require_validation.a(r):void 0;return{on(e,i){o.on(e,(a,o)=>{let l=wrapMessageContext(a);if(s){let a=require_validation.r(r,e);if(a){let r=require_validation.s(a,o,e,`client`,c);return r===void 0?void 0:i(l,r)}}return i(l,o)})},off(e,n){o.off(e)},get definition(){return o},contract:r}}exports.createActorHandler=require_actor_runtime.t,exports.createTypedRoom=createTypedRoom,exports.createValidatedHandler=require_validation.t,exports.defineContract=require_validation.l,exports.getClientValidator=require_validation.r,exports.getValidationErrorHandler=require_validation.a,exports.isContract=require_validation.u,exports.isValidatedContract=require_validation.o,exports.payload=require_validation.d,exports.validateData=require_validation.s,exports.withValidation=require_validation.c;
package/dist/typed.d.cts CHANGED
@@ -110,7 +110,7 @@ interface TypedRoomConfig<C extends Contract, TMeta extends ConnectionMeta = Con
110
110
  */
111
111
  type TypedEventHandler<C extends Contract, E extends ClientEventNames<C>, TMeta extends ConnectionMeta = ConnectionMeta, TEnv = unknown> = (ctx: TypedMessageContext<C, TMeta, TEnv>, data: ClientPayload<C, E>) => void | Promise<void>;
112
112
  /**
113
- * Typed room with contract-aware handle method.
113
+ * Typed room with contract-aware event handling (Socket.io-like API).
114
114
  */
115
115
  interface TypedRoom<C extends Contract, TMeta extends ConnectionMeta = ConnectionMeta, E = unknown> {
116
116
  /**
@@ -122,13 +122,13 @@ interface TypedRoom<C extends Contract, TMeta extends ConnectionMeta = Connectio
122
122
  *
123
123
  * @example
124
124
  * ```typescript
125
- * room.handle("message.send", (ctx, data) => {
125
+ * room.on("message.send", (ctx, data) => {
126
126
  * // data: { text: string } - inferred from contract!
127
127
  * ctx.emit("chat.message", { from: ctx.meta.userId, text: data.text });
128
128
  * });
129
129
  * ```
130
130
  */
131
- handle<TEvent extends ClientEventNames<C>>(event: TEvent, handler: TypedEventHandler<C, TEvent, TMeta, E>): void;
131
+ on<TEvent extends ClientEventNames<C>>(event: TEvent, handler: TypedEventHandler<C, TEvent, TMeta, E>): void;
132
132
  /**
133
133
  * Remove an event handler.
134
134
  * @param event - Event name
@@ -148,7 +148,7 @@ interface TypedRoom<C extends Contract, TMeta extends ConnectionMeta = Connectio
148
148
  * Creates a type-safe room based on a contract definition.
149
149
  *
150
150
  * This wraps the base `defineRoom()` function and adds:
151
- * - Typed `handle()` method for registering event handlers
151
+ * - Typed `on()` method for registering event handlers
152
152
  * - Typed `emit` on context for sending server events
153
153
  * - Compile-time validation of event names and payloads
154
154
  *
@@ -174,7 +174,7 @@ interface TypedRoom<C extends Contract, TMeta extends ConnectionMeta = Connectio
174
174
  * },
175
175
  * });
176
176
  *
177
- * room.handle("message.send", (ctx, data) => {
177
+ * room.on("message.send", (ctx, data) => {
178
178
  * ctx.emit("chat.message", { from: ctx.meta.userId, text: data.text });
179
179
  * });
180
180
  *
package/dist/typed.d.mts CHANGED
@@ -110,7 +110,7 @@ interface TypedRoomConfig<C extends Contract, TMeta extends ConnectionMeta = Con
110
110
  */
111
111
  type TypedEventHandler<C extends Contract, E extends ClientEventNames<C>, TMeta extends ConnectionMeta = ConnectionMeta, TEnv = unknown> = (ctx: TypedMessageContext<C, TMeta, TEnv>, data: ClientPayload<C, E>) => void | Promise<void>;
112
112
  /**
113
- * Typed room with contract-aware handle method.
113
+ * Typed room with contract-aware event handling (Socket.io-like API).
114
114
  */
115
115
  interface TypedRoom<C extends Contract, TMeta extends ConnectionMeta = ConnectionMeta, E = unknown> {
116
116
  /**
@@ -122,13 +122,13 @@ interface TypedRoom<C extends Contract, TMeta extends ConnectionMeta = Connectio
122
122
  *
123
123
  * @example
124
124
  * ```typescript
125
- * room.handle("message.send", (ctx, data) => {
125
+ * room.on("message.send", (ctx, data) => {
126
126
  * // data: { text: string } - inferred from contract!
127
127
  * ctx.emit("chat.message", { from: ctx.meta.userId, text: data.text });
128
128
  * });
129
129
  * ```
130
130
  */
131
- handle<TEvent extends ClientEventNames<C>>(event: TEvent, handler: TypedEventHandler<C, TEvent, TMeta, E>): void;
131
+ on<TEvent extends ClientEventNames<C>>(event: TEvent, handler: TypedEventHandler<C, TEvent, TMeta, E>): void;
132
132
  /**
133
133
  * Remove an event handler.
134
134
  * @param event - Event name
@@ -148,7 +148,7 @@ interface TypedRoom<C extends Contract, TMeta extends ConnectionMeta = Connectio
148
148
  * Creates a type-safe room based on a contract definition.
149
149
  *
150
150
  * This wraps the base `defineRoom()` function and adds:
151
- * - Typed `handle()` method for registering event handlers
151
+ * - Typed `on()` method for registering event handlers
152
152
  * - Typed `emit` on context for sending server events
153
153
  * - Compile-time validation of event names and payloads
154
154
  *
@@ -174,7 +174,7 @@ interface TypedRoom<C extends Contract, TMeta extends ConnectionMeta = Connectio
174
174
  * },
175
175
  * });
176
176
  *
177
- * room.handle("message.send", (ctx, data) => {
177
+ * room.on("message.send", (ctx, data) => {
178
178
  * ctx.emit("chat.message", { from: ctx.meta.userId, text: data.text });
179
179
  * });
180
180
  *
package/dist/typed.mjs CHANGED
@@ -1 +1 @@
1
- import{i as defineRoom,t as createActorHandler}from"./actor-runtime-DamIMiBw.mjs";import"./encode-BhJqnsto.mjs";import{a as getValidationErrorHandler,c as withValidation,d as payload,l as defineContract,o as isValidatedContract,r as getClientValidator,s as validateData,t as createValidatedHandler,u as isContract}from"./validation-NB7a2Sf1.mjs";function createTypedSocketEmit(e){let l=((l,u)=>{e.emit(l,u)});return l.to=l=>{let u=e.to(l);return{emit:(e,l)=>u.emit(e,l)}},l}function createTypedActorEmit(e){let l=((l,u)=>e.emit.emit(l,u));return l.to=l=>{let u=e.emit.to(l);return{emit:(e,l)=>u.emit(e,l)}},l}function wrapContext(e){return{actor:Object.assign({},e.actor,{emit:createTypedActorEmit(e.actor)}),ws:e.ws,meta:e.meta,emit:createTypedSocketEmit(e.emit)}}function wrapMessageContext(e){return{...wrapContext(e),frame:e.frame}}function createTypedRoom(l,d){let f=defineRoom({name:d.name,websocketPath:d.websocketPath??`/ws`,extractMeta:d.extractMeta,onConnect:d.onConnect?e=>d.onConnect(wrapContext(e)):void 0,onDisconnect:d.onDisconnect?e=>d.onDisconnect(wrapContext(e)):void 0,onError:d.onError?(e,l)=>d.onError(e,wrapContext(l)):void 0,onHibernationRestore:d.onHibernationRestore}),p=isValidatedContract(l),h=p?getValidationErrorHandler(l):void 0;return{handle(e,u){f.on(e,(d,f)=>{let m=wrapMessageContext(d);if(p){let d=getClientValidator(l,e);if(d){let l=validateData(d,f,e,`client`,h);return l===void 0?void 0:u(m,l)}}return u(m,f)})},off(e,l){f.off(e)},get definition(){return f},contract:l}}export{createActorHandler,createTypedRoom,createValidatedHandler,defineContract,getClientValidator,getValidationErrorHandler,isContract,isValidatedContract,payload,validateData,withValidation};
1
+ import{i as defineRoom,t as createActorHandler}from"./actor-runtime-DamIMiBw.mjs";import"./encode-BhJqnsto.mjs";import{a as getValidationErrorHandler,c as withValidation,d as payload,l as defineContract,o as isValidatedContract,r as getClientValidator,s as validateData,t as createValidatedHandler,u as isContract}from"./validation-NB7a2Sf1.mjs";function createTypedSocketEmit(e){let l=((l,u)=>{e.emit(l,u)});return l.to=l=>{let u=e.to(l);return{emit:(e,l)=>u.emit(e,l)}},l}function createTypedActorEmit(e){let l=((l,u)=>e.emit.emit(l,u));return l.to=l=>{let u=e.emit.to(l);return{emit:(e,l)=>u.emit(e,l)}},l}function wrapContext(e){return{actor:Object.assign({},e.actor,{emit:createTypedActorEmit(e.actor)}),ws:e.ws,meta:e.meta,emit:createTypedSocketEmit(e.emit)}}function wrapMessageContext(e){return{...wrapContext(e),frame:e.frame}}function createTypedRoom(l,d){let f=defineRoom({name:d.name,websocketPath:d.websocketPath??`/ws`,extractMeta:d.extractMeta,onConnect:d.onConnect?e=>d.onConnect(wrapContext(e)):void 0,onDisconnect:d.onDisconnect?e=>d.onDisconnect(wrapContext(e)):void 0,onError:d.onError?(e,l)=>d.onError(e,wrapContext(l)):void 0,onHibernationRestore:d.onHibernationRestore}),p=isValidatedContract(l),h=p?getValidationErrorHandler(l):void 0;return{on(e,u){f.on(e,(d,f)=>{let m=wrapMessageContext(d);if(p){let d=getClientValidator(l,e);if(d){let l=validateData(d,f,e,`client`,h);return l===void 0?void 0:u(m,l)}}return u(m,f)})},off(e,l){f.off(e)},get definition(){return f},contract:l}}export{createActorHandler,createTypedRoom,createValidatedHandler,defineContract,getClientValidator,getValidationErrorHandler,isContract,isValidatedContract,payload,validateData,withValidation};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "verani",
3
- "version": "0.6.1",
3
+ "version": "0.7.0",
4
4
  "description": "A simple, focused realtime SDK for Cloudflare Actors with Socket.io-like semantics",
5
5
  "license": "ISC",
6
6
  "keywords": [