@noya-app/noya-multiplayer-react 0.1.49 → 0.1.51

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/index.d.mts CHANGED
@@ -1,9 +1,10 @@
1
1
  import * as _noya_app_state_manager from '@noya-app/state-manager';
2
- import { ConnectedUsersManager, EphemeralUserDataManager, NoyaManager, StateManager, StateManagerOptions, MultiplayerStateManagerOptions, SyncAdapter, TSchema, Static, MultiplayerStateManager, ReconnectingWebSocketState, ClientToServerMessage, ServerToClientMessage, MultiplayerStateManagerError } from '@noya-app/state-manager';
2
+ import { ConnectedUsersManager, EphemeralUserDataManager, NoyaManager, StateManager, StateManagerOptions, MultiplayerStateManagerOptions, SyncAdapter, TSchema, Static, CreateParams, MultiplayerStateManager, ReconnectingWebSocketState, ClientToServerMessage, ServerToClientMessage, MultiplayerStateManagerError } from '@noya-app/state-manager';
3
3
  export * from '@noya-app/state-manager';
4
4
  import React, { SetStateAction } from 'react';
5
5
  import { GetAtPath, ObservableOptions, PathKey, Observable } from '@noya-app/observable';
6
6
  import { MenuItem } from '@noya-app/noya-designsystem';
7
+ import { OutputTransform, Input } from '@noya-app/noya-schemas';
7
8
 
8
9
  type Point = {
9
10
  x: number;
@@ -55,7 +56,7 @@ declare function useMultiplayerState<S, M extends object = object, E extends obj
55
56
  assetManager: _noya_app_state_manager.AssetManager;
56
57
  aiManager: _noya_app_state_manager.AIManager;
57
58
  rpcManager: _noya_app_state_manager.RPCManager;
58
- workflowManager: _noya_app_state_manager.WorkflowManager;
59
+ pipelineManager: _noya_app_state_manager.PipelineManager;
59
60
  secretManager: _noya_app_state_manager.SecretManager;
60
61
  menuItemsManager: _noya_app_state_manager.MenuManager<MenuT>;
61
62
  createAsset: (options: _noya_app_state_manager.CreateAssetOptions | Uint8Array | File | Blob) => Promise<_noya_app_state_manager.Asset>;
@@ -135,8 +136,122 @@ declare function useAIManager(): _noya_app_state_manager.AIManager;
135
136
  declare function useSecretManager(): _noya_app_state_manager.SecretManager;
136
137
  declare function useSecrets(): _noya_app_state_manager.Secret[];
137
138
  declare function useSecret(name: string): _noya_app_state_manager.Secret | undefined;
139
+ declare function useInputs(): ({
140
+ required: boolean;
141
+ kind: "file";
142
+ toolId: string | null;
143
+ id: string;
144
+ name: string;
145
+ description: string | null;
146
+ } | {
147
+ required: boolean;
148
+ kind: "data";
149
+ id: string;
150
+ name: string;
151
+ description: string | null;
152
+ schema: {
153
+ default?: string | undefined;
154
+ type: "string";
155
+ _kind: "String";
156
+ } | {
157
+ default?: number | undefined;
158
+ minimum?: number | undefined;
159
+ maximum?: number | undefined;
160
+ type: "number";
161
+ _kind: "Number";
162
+ } | {
163
+ default?: boolean | undefined;
164
+ type: "boolean";
165
+ _kind: "Boolean";
166
+ } | {
167
+ type: "null";
168
+ _kind: "Null";
169
+ } | {
170
+ type: "array";
171
+ _kind: "Array";
172
+ items: {
173
+ default?: string | undefined;
174
+ type: "string";
175
+ _kind: "String";
176
+ } | {
177
+ default?: number | undefined;
178
+ minimum?: number | undefined;
179
+ maximum?: number | undefined;
180
+ type: "number";
181
+ _kind: "Number";
182
+ } | {
183
+ default?: boolean | undefined;
184
+ type: "boolean";
185
+ _kind: "Boolean";
186
+ } | {
187
+ type: "null";
188
+ _kind: "Null";
189
+ } | any | {
190
+ required?: string[] | undefined;
191
+ type: "object";
192
+ properties: {
193
+ [x: string]: {
194
+ default?: string | undefined;
195
+ type: "string";
196
+ _kind: "String";
197
+ } | {
198
+ default?: number | undefined;
199
+ minimum?: number | undefined;
200
+ maximum?: number | undefined;
201
+ type: "number";
202
+ _kind: "Number";
203
+ } | {
204
+ default?: boolean | undefined;
205
+ type: "boolean";
206
+ _kind: "Boolean";
207
+ } | {
208
+ type: "null";
209
+ _kind: "Null";
210
+ } | any | any;
211
+ };
212
+ _kind: "Object";
213
+ };
214
+ } | {
215
+ required?: string[] | undefined;
216
+ type: "object";
217
+ properties: {
218
+ [x: string]: {
219
+ default?: string | undefined;
220
+ type: "string";
221
+ _kind: "String";
222
+ } | {
223
+ default?: number | undefined;
224
+ minimum?: number | undefined;
225
+ maximum?: number | undefined;
226
+ type: "number";
227
+ _kind: "Number";
228
+ } | {
229
+ default?: boolean | undefined;
230
+ type: "boolean";
231
+ _kind: "Boolean";
232
+ } | {
233
+ type: "null";
234
+ _kind: "Null";
235
+ } | any | any;
236
+ };
237
+ _kind: "Object";
238
+ } | null;
239
+ })[];
240
+ declare function useOutputTransforms(): ({
241
+ value: string;
242
+ kind: "script";
243
+ id: string;
244
+ location: "state" | "url";
245
+ order: number;
246
+ } | {
247
+ value: string;
248
+ kind: "jsonPointer";
249
+ id: string;
250
+ order: number;
251
+ })[];
252
+ declare function useIOManager(): _noya_app_state_manager.IOManager;
138
253
  declare function useIsInitialized(): boolean;
139
- declare function useWorkflowManager(): _noya_app_state_manager.WorkflowManager;
254
+ declare function usePipelineManager(): _noya_app_state_manager.PipelineManager;
140
255
  declare const ConnectedUsersContext: React.Context<ConnectedUsersManager | undefined>;
141
256
  declare function useConnectedUsersManager(): ConnectedUsersManager | undefined;
142
257
  declare const AnyEphemeralUserDataManagerContext: React.Context<EphemeralUserDataManager<object> | undefined>;
@@ -146,9 +261,11 @@ declare const FallbackUntilInitialized: ({ children, fallback, }: {
146
261
  children: React.ReactNode;
147
262
  fallback?: React.ReactNode;
148
263
  }) => React.ReactNode;
149
- declare function createNoyaContext<Schema extends TSchema, M extends object = object, E extends object = object, MenuT extends string = string>({ schema, mergeHistoryEntries, }: {
264
+ declare function createNoyaContext<Schema extends TSchema, M extends object = object, E extends object = object, MenuT extends string = string>({ schema, mergeHistoryEntries, outputTransforms, inputs, }: {
150
265
  schema: Schema;
151
266
  mergeHistoryEntries?: StateManagerOptions<Static<Schema>, M>["mergeHistoryEntries"];
267
+ outputTransforms?: CreateParams<OutputTransform>[];
268
+ inputs?: CreateParams<Input>[];
152
269
  }): {
153
270
  Context: React.Context<NoyaManager<Static<Schema>, M, E, string> | undefined>;
154
271
  Provider: ({ children, initialState, ...options }: NoyaStateProviderProps<Static<Schema>, M, E, MenuT>) => React.JSX.Element;
@@ -210,9 +327,7 @@ declare class WebSocketConnection<State> {
210
327
  private url;
211
328
  private options;
212
329
  private ws;
213
- private pingCount;
214
- private pendingPingId?;
215
- private intervalId?;
330
+ private closedForever;
216
331
  constructor(url: URL, options?: ConnectionOptions<State>);
217
332
  connect(): Promise<void>;
218
333
  private handleOpen;
@@ -224,4 +339,4 @@ declare class WebSocketConnection<State> {
224
339
  removeListener(listener: (state: ReconnectingWebSocketState) => void): void;
225
340
  }
226
341
 
227
- export { AnyEphemeralUserDataManagerContext, type AppData, type AppTheme, type AppViewType, ConnectedUsersContext, type ConnectionEvent, type ConnectionOptions, FallbackUntilInitialized, type GetAppDataOptions, type RenderUserPointer, type RenderUserPointerProps, StateInspector, type StateInspectorAnchor, type StateInspectorOptions, type UseMultiplayerStateOptions, type UseNoyaStateOptions, type UseNoyaStateResult, type UserPointerData, UserPointersOverlay, type UserPointersOverlayProps, WebSocketConnection, createDefaultAppData, createNoyaContext, enforceSchema, getAppData, parseAppDataParameter, useAIManager, useAnyEphemeralUserData, useAnyNoyaManager, useAnyNoyaStateContext, useAsset, useAssetManager, useAssets, useColorScheme, useConnectedUsersManager, useCurrentUserId, useIsInitialized, useManagedHistory, useManagedState, useMultiplayerState, useNoyaState, useObservable, useSecret, useSecretManager, useSecrets, useSyncStateManager, useViewType, useWorkflowManager };
342
+ export { AnyEphemeralUserDataManagerContext, type AppData, type AppTheme, type AppViewType, ConnectedUsersContext, type ConnectionEvent, type ConnectionOptions, FallbackUntilInitialized, type GetAppDataOptions, type RenderUserPointer, type RenderUserPointerProps, StateInspector, type StateInspectorAnchor, type StateInspectorOptions, type UseMultiplayerStateOptions, type UseNoyaStateOptions, type UseNoyaStateResult, type UserPointerData, UserPointersOverlay, type UserPointersOverlayProps, WebSocketConnection, createDefaultAppData, createNoyaContext, enforceSchema, getAppData, parseAppDataParameter, useAIManager, useAnyEphemeralUserData, useAnyNoyaManager, useAnyNoyaStateContext, useAsset, useAssetManager, useAssets, useColorScheme, useConnectedUsersManager, useCurrentUserId, useIOManager, useInputs, useIsInitialized, useManagedHistory, useManagedState, useMultiplayerState, useNoyaState, useObservable, useOutputTransforms, usePipelineManager, useSecret, useSecretManager, useSecrets, useSyncStateManager, useViewType };
package/dist/index.d.ts CHANGED
@@ -1,9 +1,10 @@
1
1
  import * as _noya_app_state_manager from '@noya-app/state-manager';
2
- import { ConnectedUsersManager, EphemeralUserDataManager, NoyaManager, StateManager, StateManagerOptions, MultiplayerStateManagerOptions, SyncAdapter, TSchema, Static, MultiplayerStateManager, ReconnectingWebSocketState, ClientToServerMessage, ServerToClientMessage, MultiplayerStateManagerError } from '@noya-app/state-manager';
2
+ import { ConnectedUsersManager, EphemeralUserDataManager, NoyaManager, StateManager, StateManagerOptions, MultiplayerStateManagerOptions, SyncAdapter, TSchema, Static, CreateParams, MultiplayerStateManager, ReconnectingWebSocketState, ClientToServerMessage, ServerToClientMessage, MultiplayerStateManagerError } from '@noya-app/state-manager';
3
3
  export * from '@noya-app/state-manager';
4
4
  import React, { SetStateAction } from 'react';
5
5
  import { GetAtPath, ObservableOptions, PathKey, Observable } from '@noya-app/observable';
6
6
  import { MenuItem } from '@noya-app/noya-designsystem';
7
+ import { OutputTransform, Input } from '@noya-app/noya-schemas';
7
8
 
8
9
  type Point = {
9
10
  x: number;
@@ -55,7 +56,7 @@ declare function useMultiplayerState<S, M extends object = object, E extends obj
55
56
  assetManager: _noya_app_state_manager.AssetManager;
56
57
  aiManager: _noya_app_state_manager.AIManager;
57
58
  rpcManager: _noya_app_state_manager.RPCManager;
58
- workflowManager: _noya_app_state_manager.WorkflowManager;
59
+ pipelineManager: _noya_app_state_manager.PipelineManager;
59
60
  secretManager: _noya_app_state_manager.SecretManager;
60
61
  menuItemsManager: _noya_app_state_manager.MenuManager<MenuT>;
61
62
  createAsset: (options: _noya_app_state_manager.CreateAssetOptions | Uint8Array | File | Blob) => Promise<_noya_app_state_manager.Asset>;
@@ -135,8 +136,122 @@ declare function useAIManager(): _noya_app_state_manager.AIManager;
135
136
  declare function useSecretManager(): _noya_app_state_manager.SecretManager;
136
137
  declare function useSecrets(): _noya_app_state_manager.Secret[];
137
138
  declare function useSecret(name: string): _noya_app_state_manager.Secret | undefined;
139
+ declare function useInputs(): ({
140
+ required: boolean;
141
+ kind: "file";
142
+ toolId: string | null;
143
+ id: string;
144
+ name: string;
145
+ description: string | null;
146
+ } | {
147
+ required: boolean;
148
+ kind: "data";
149
+ id: string;
150
+ name: string;
151
+ description: string | null;
152
+ schema: {
153
+ default?: string | undefined;
154
+ type: "string";
155
+ _kind: "String";
156
+ } | {
157
+ default?: number | undefined;
158
+ minimum?: number | undefined;
159
+ maximum?: number | undefined;
160
+ type: "number";
161
+ _kind: "Number";
162
+ } | {
163
+ default?: boolean | undefined;
164
+ type: "boolean";
165
+ _kind: "Boolean";
166
+ } | {
167
+ type: "null";
168
+ _kind: "Null";
169
+ } | {
170
+ type: "array";
171
+ _kind: "Array";
172
+ items: {
173
+ default?: string | undefined;
174
+ type: "string";
175
+ _kind: "String";
176
+ } | {
177
+ default?: number | undefined;
178
+ minimum?: number | undefined;
179
+ maximum?: number | undefined;
180
+ type: "number";
181
+ _kind: "Number";
182
+ } | {
183
+ default?: boolean | undefined;
184
+ type: "boolean";
185
+ _kind: "Boolean";
186
+ } | {
187
+ type: "null";
188
+ _kind: "Null";
189
+ } | any | {
190
+ required?: string[] | undefined;
191
+ type: "object";
192
+ properties: {
193
+ [x: string]: {
194
+ default?: string | undefined;
195
+ type: "string";
196
+ _kind: "String";
197
+ } | {
198
+ default?: number | undefined;
199
+ minimum?: number | undefined;
200
+ maximum?: number | undefined;
201
+ type: "number";
202
+ _kind: "Number";
203
+ } | {
204
+ default?: boolean | undefined;
205
+ type: "boolean";
206
+ _kind: "Boolean";
207
+ } | {
208
+ type: "null";
209
+ _kind: "Null";
210
+ } | any | any;
211
+ };
212
+ _kind: "Object";
213
+ };
214
+ } | {
215
+ required?: string[] | undefined;
216
+ type: "object";
217
+ properties: {
218
+ [x: string]: {
219
+ default?: string | undefined;
220
+ type: "string";
221
+ _kind: "String";
222
+ } | {
223
+ default?: number | undefined;
224
+ minimum?: number | undefined;
225
+ maximum?: number | undefined;
226
+ type: "number";
227
+ _kind: "Number";
228
+ } | {
229
+ default?: boolean | undefined;
230
+ type: "boolean";
231
+ _kind: "Boolean";
232
+ } | {
233
+ type: "null";
234
+ _kind: "Null";
235
+ } | any | any;
236
+ };
237
+ _kind: "Object";
238
+ } | null;
239
+ })[];
240
+ declare function useOutputTransforms(): ({
241
+ value: string;
242
+ kind: "script";
243
+ id: string;
244
+ location: "state" | "url";
245
+ order: number;
246
+ } | {
247
+ value: string;
248
+ kind: "jsonPointer";
249
+ id: string;
250
+ order: number;
251
+ })[];
252
+ declare function useIOManager(): _noya_app_state_manager.IOManager;
138
253
  declare function useIsInitialized(): boolean;
139
- declare function useWorkflowManager(): _noya_app_state_manager.WorkflowManager;
254
+ declare function usePipelineManager(): _noya_app_state_manager.PipelineManager;
140
255
  declare const ConnectedUsersContext: React.Context<ConnectedUsersManager | undefined>;
141
256
  declare function useConnectedUsersManager(): ConnectedUsersManager | undefined;
142
257
  declare const AnyEphemeralUserDataManagerContext: React.Context<EphemeralUserDataManager<object> | undefined>;
@@ -146,9 +261,11 @@ declare const FallbackUntilInitialized: ({ children, fallback, }: {
146
261
  children: React.ReactNode;
147
262
  fallback?: React.ReactNode;
148
263
  }) => React.ReactNode;
149
- declare function createNoyaContext<Schema extends TSchema, M extends object = object, E extends object = object, MenuT extends string = string>({ schema, mergeHistoryEntries, }: {
264
+ declare function createNoyaContext<Schema extends TSchema, M extends object = object, E extends object = object, MenuT extends string = string>({ schema, mergeHistoryEntries, outputTransforms, inputs, }: {
150
265
  schema: Schema;
151
266
  mergeHistoryEntries?: StateManagerOptions<Static<Schema>, M>["mergeHistoryEntries"];
267
+ outputTransforms?: CreateParams<OutputTransform>[];
268
+ inputs?: CreateParams<Input>[];
152
269
  }): {
153
270
  Context: React.Context<NoyaManager<Static<Schema>, M, E, string> | undefined>;
154
271
  Provider: ({ children, initialState, ...options }: NoyaStateProviderProps<Static<Schema>, M, E, MenuT>) => React.JSX.Element;
@@ -210,9 +327,7 @@ declare class WebSocketConnection<State> {
210
327
  private url;
211
328
  private options;
212
329
  private ws;
213
- private pingCount;
214
- private pendingPingId?;
215
- private intervalId?;
330
+ private closedForever;
216
331
  constructor(url: URL, options?: ConnectionOptions<State>);
217
332
  connect(): Promise<void>;
218
333
  private handleOpen;
@@ -224,4 +339,4 @@ declare class WebSocketConnection<State> {
224
339
  removeListener(listener: (state: ReconnectingWebSocketState) => void): void;
225
340
  }
226
341
 
227
- export { AnyEphemeralUserDataManagerContext, type AppData, type AppTheme, type AppViewType, ConnectedUsersContext, type ConnectionEvent, type ConnectionOptions, FallbackUntilInitialized, type GetAppDataOptions, type RenderUserPointer, type RenderUserPointerProps, StateInspector, type StateInspectorAnchor, type StateInspectorOptions, type UseMultiplayerStateOptions, type UseNoyaStateOptions, type UseNoyaStateResult, type UserPointerData, UserPointersOverlay, type UserPointersOverlayProps, WebSocketConnection, createDefaultAppData, createNoyaContext, enforceSchema, getAppData, parseAppDataParameter, useAIManager, useAnyEphemeralUserData, useAnyNoyaManager, useAnyNoyaStateContext, useAsset, useAssetManager, useAssets, useColorScheme, useConnectedUsersManager, useCurrentUserId, useIsInitialized, useManagedHistory, useManagedState, useMultiplayerState, useNoyaState, useObservable, useSecret, useSecretManager, useSecrets, useSyncStateManager, useViewType, useWorkflowManager };
342
+ export { AnyEphemeralUserDataManagerContext, type AppData, type AppTheme, type AppViewType, ConnectedUsersContext, type ConnectionEvent, type ConnectionOptions, FallbackUntilInitialized, type GetAppDataOptions, type RenderUserPointer, type RenderUserPointerProps, StateInspector, type StateInspectorAnchor, type StateInspectorOptions, type UseMultiplayerStateOptions, type UseNoyaStateOptions, type UseNoyaStateResult, type UserPointerData, UserPointersOverlay, type UserPointersOverlayProps, WebSocketConnection, createDefaultAppData, createNoyaContext, enforceSchema, getAppData, parseAppDataParameter, useAIManager, useAnyEphemeralUserData, useAnyNoyaManager, useAnyNoyaStateContext, useAsset, useAssetManager, useAssets, useColorScheme, useConnectedUsersManager, useCurrentUserId, useIOManager, useInputs, useIsInitialized, useManagedHistory, useManagedState, useMultiplayerState, useNoyaState, useObservable, useOutputTransforms, usePipelineManager, useSecret, useSecretManager, useSecrets, useSyncStateManager, useViewType };