@tomorrowevening/hermes 0.0.148 → 0.0.149

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/package.json CHANGED
@@ -7,7 +7,7 @@
7
7
  "module": "./dist/hermes.esm.js",
8
8
  "types": "./types/index.d.ts",
9
9
  "type": "module",
10
- "version": "0.0.148",
10
+ "version": "0.0.149",
11
11
  "homepage": "https://github.com/tomorrowevening/hermes#readme",
12
12
  "bugs": {
13
13
  "url": "https://github.com/tomorrowevening/hermes/issues"
@@ -1,62 +1,78 @@
1
- import { EventDispatcher } from 'three';
2
- import BaseRemote from './remote/BaseRemote';
3
- import { ApplicationMode, BroadcastData } from './types';
4
- export declare enum ToolEvents {
5
- CUSTOM = "ToolEvents::custom",
6
- SELECT_DROPDOWN = "ToolEvents::selectDropdown",
7
- DRAG_UPDATE = "ToolEvents::dragUpdate",
8
- ADD_SCENE = "ToolEvents::addScene",
9
- REFRESH_SCENE = "ToolEvents::refreshScene",
10
- REMOVE_SCENE = "ToolEvents::removeScene",
11
- SET_SCENE = "ToolEvents::setScene",
12
- GET_OBJECT = "ToolEvents::getObject",
13
- SET_OBJECT = "ToolEvents::setObject",
14
- UPDATE_OBJECT = "ToolEvents::updateObject",
15
- CREATE_TEXTURE = "ToolEvents::createTexture",
16
- REQUEST_METHOD = "ToolEvents::requestMethod",
17
- ADD_CAMERA = "ToolEvents::addCamera",
18
- REMOVE_CAMERA = "ToolEvents::removeCamera",
19
- ADD_GROUP = "ToolEvents::addGroup",
20
- REMOVE_GROUP = "ToolEvents::removeGroup",
21
- ADD_SPLINE = "ToolEvents::addSpline",
22
- ADD_RENDERER = "ToolEvents::addRenderer",
23
- UPDATE_RENDERER = "ToolEvents::updateRenderer"
24
- }
25
- export type ToolEvent = {
26
- [key in ToolEvents]: {
27
- value?: unknown;
28
- };
29
- };
30
- export type RemoteCallback = (msg: BroadcastData) => void;
31
- export interface RemoteCall {
32
- remote: any;
33
- callback: RemoteCallback;
34
- }
35
- export declare class Application extends EventDispatcher<ToolEvent> {
36
- components: Map<string, any>;
37
- appHandlers: RemoteCall[];
38
- editorHandlers: RemoteCall[];
39
- protected _appID: string;
40
- protected _debugEnabled: boolean;
41
- protected _broadcastChannel?: BroadcastChannel | undefined;
42
- protected _webSocket?: WebSocket | undefined;
43
- protected _mode: ApplicationMode;
44
- protected _connected: boolean;
45
- protected _useBC: boolean;
46
- constructor(id: string, debugEnabled: boolean, editor: boolean, useBC?: boolean);
47
- addComponent(name: string, component: BaseRemote): void;
48
- dispose(): void;
49
- send(data: BroadcastData): void;
50
- private messageHandler;
51
- private handleAppBroadcast;
52
- private handleEditorBroadcast;
53
- private openHandler;
54
- private closeHandler;
55
- get appID(): string;
56
- get connected(): boolean;
57
- get debugEnabled(): boolean;
58
- get mode(): ApplicationMode;
59
- get isApp(): boolean;
60
- get editor(): boolean;
61
- set editor(value: boolean);
62
- }
1
+ import { EventDispatcher } from 'three';
2
+ import BaseRemote from './remote/BaseRemote';
3
+ import { ApplicationMode, BroadcastData } from './types';
4
+ import { AppSettings } from '@/utils/detectSettings';
5
+ export declare enum ToolEvents {
6
+ CUSTOM = "ToolEvents::custom",
7
+ SELECT_DROPDOWN = "ToolEvents::selectDropdown",
8
+ DRAG_UPDATE = "ToolEvents::dragUpdate",
9
+ ADD_SCENE = "ToolEvents::addScene",
10
+ REFRESH_SCENE = "ToolEvents::refreshScene",
11
+ REMOVE_SCENE = "ToolEvents::removeScene",
12
+ SET_SCENE = "ToolEvents::setScene",
13
+ GET_OBJECT = "ToolEvents::getObject",
14
+ SET_OBJECT = "ToolEvents::setObject",
15
+ UPDATE_OBJECT = "ToolEvents::updateObject",
16
+ CREATE_TEXTURE = "ToolEvents::createTexture",
17
+ REQUEST_METHOD = "ToolEvents::requestMethod",
18
+ ADD_CAMERA = "ToolEvents::addCamera",
19
+ REMOVE_CAMERA = "ToolEvents::removeCamera",
20
+ ADD_GROUP = "ToolEvents::addGroup",
21
+ REMOVE_GROUP = "ToolEvents::removeGroup",
22
+ ADD_SPLINE = "ToolEvents::addSpline",
23
+ ADD_RENDERER = "ToolEvents::addRenderer",
24
+ UPDATE_RENDERER = "ToolEvents::updateRenderer"
25
+ }
26
+ export type ToolEvent = {
27
+ [key in ToolEvents]: {
28
+ value?: unknown;
29
+ };
30
+ };
31
+ export type RemoteCallback = (msg: BroadcastData) => void;
32
+ export interface RemoteCall {
33
+ remote: any;
34
+ callback: RemoteCallback;
35
+ }
36
+ export declare class Application extends EventDispatcher<ToolEvent> {
37
+ assets: {
38
+ audio: Map<string, any>;
39
+ image: Map<string, ImageBitmap>;
40
+ json: Map<string, any>;
41
+ model: Map<string, any>;
42
+ video: Map<string, any>;
43
+ };
44
+ components: Map<string, any>;
45
+ settings: AppSettings;
46
+ appHandlers: RemoteCall[];
47
+ editorHandlers: RemoteCall[];
48
+ onUpdateCallback?: () => void;
49
+ protected _appID: string;
50
+ protected _mode: ApplicationMode;
51
+ protected _broadcastChannel?: BroadcastChannel | undefined;
52
+ protected _webSocket?: WebSocket | undefined;
53
+ protected _connected: boolean;
54
+ protected _useBC: boolean;
55
+ protected playing: boolean;
56
+ protected rafID: number;
57
+ constructor(id: string, settings: AppSettings, useBC?: boolean);
58
+ dispose(): void;
59
+ static detectSettings(dev?: boolean, editor?: boolean): Promise<AppSettings>;
60
+ update(): void;
61
+ draw(): void;
62
+ play: () => void;
63
+ pause: () => void;
64
+ private onUpdate;
65
+ addComponent(name: string, component: BaseRemote): void;
66
+ send(data: BroadcastData): void;
67
+ private messageHandler;
68
+ private handleAppBroadcast;
69
+ private handleEditorBroadcast;
70
+ private openHandler;
71
+ private closeHandler;
72
+ get appID(): string;
73
+ get connected(): boolean;
74
+ get debugEnabled(): boolean;
75
+ get mode(): ApplicationMode;
76
+ get isApp(): boolean;
77
+ get editor(): boolean;
78
+ }
@@ -1,32 +1,32 @@
1
- import { IProject, ISheet, ISheetObject } from '@theatre/core';
2
- import BaseRemote from './BaseRemote';
3
- import { BroadcastData, DataUpdateCallback, VoidCallback } from '../types';
4
- type KeyframeVector = {
5
- position: number;
6
- x: number;
7
- y: number;
8
- z: number;
9
- };
10
- export default class RemoteTheatre extends BaseRemote {
11
- project: IProject | undefined;
12
- sheets: Map<string, ISheet>;
13
- sheetObjects: Map<string, ISheetObject>;
14
- sheetObjectCBs: Map<string, DataUpdateCallback>;
15
- sheetObjectUnsubscribe: Map<string, VoidCallback>;
16
- activeSheet: ISheet | undefined;
17
- studio: any;
18
- dispose(): void;
19
- getSheetInstance(name: string, instanceId?: string): string;
20
- sheet(name: string, instanceId?: string): ISheet | undefined;
21
- playSheet(name: string, params?: any, instanceId?: string): Promise<boolean>;
22
- pauseSheet(name: string, instanceId?: string): void;
23
- clearSheetObjects(sheetName: string): void;
24
- sheetObject(sheetName: string, key: string, props: any, onUpdate?: DataUpdateCallback, instanceId?: string): ISheetObject | undefined;
25
- getSheetObjectKeyframes(sheetName: string, sheetObject: string, prop: string): any[];
26
- getSheetObjectVectors(sheetName: string, sheetObject: string): KeyframeVector[];
27
- unsubscribe(sheetObject: ISheetObject): undefined;
28
- handleApp(msg: BroadcastData): void;
29
- handleEditor(msg: BroadcastData): void;
30
- handleEditorApp(): void;
31
- }
32
- export {};
1
+ import { IProject, ISheet, ISheetObject } from '@theatre/core';
2
+ import BaseRemote from './BaseRemote';
3
+ import { BroadcastData, DataUpdateCallback, VoidCallback } from '../types';
4
+ type KeyframeVector = {
5
+ position: number;
6
+ x: number;
7
+ y: number;
8
+ z: number;
9
+ };
10
+ export default class RemoteTheatre extends BaseRemote {
11
+ project: IProject | undefined;
12
+ sheets: Map<string, ISheet>;
13
+ sheetObjects: Map<string, ISheetObject>;
14
+ sheetObjectCBs: Map<string, DataUpdateCallback>;
15
+ sheetObjectUnsubscribe: Map<string, VoidCallback>;
16
+ activeSheet: ISheet | undefined;
17
+ studio: any;
18
+ dispose(): void;
19
+ getSheetInstance(name: string, instanceId?: string): string;
20
+ sheet(name: string, instanceId?: string): ISheet | undefined;
21
+ playSheet(name: string, params?: any, instanceId?: string): Promise<boolean>;
22
+ pauseSheet(name: string, instanceId?: string): void;
23
+ clearSheetObjects(sheetName: string): void;
24
+ sheetObject(sheetName: string, key: string, props: any, onUpdate?: DataUpdateCallback, instanceId?: string): ISheetObject | undefined;
25
+ getSheetObjectKeyframes(sheetName: string, sheetObject: string, prop: string): any[];
26
+ getSheetObjectVectors(sheetName: string, sheetObject: string): KeyframeVector[];
27
+ unsubscribe(sheetObject: ISheetObject): undefined;
28
+ handleApp(msg: BroadcastData): void;
29
+ handleEditor(msg: BroadcastData): void;
30
+ handleEditorApp(): void;
31
+ }
32
+ export {};
@@ -1,43 +1,43 @@
1
- import { Camera, Curve, RenderTargetOptions, Scene, WebGLRenderTarget } from 'three';
2
- import BaseRemote from './BaseRemote';
3
- import { BroadcastData, GroupData } from '../types';
4
- export default class RemoteThree extends BaseRemote {
5
- canvas: HTMLCanvasElement | null;
6
- inputElement: any;
7
- scene?: Scene;
8
- scenes: Map<string, Scene>;
9
- renderer?: any;
10
- renderTargets: Map<string, WebGLRenderTarget>;
11
- private renderTargetsResize;
12
- private groups;
13
- dispose(): void;
14
- getObject(uuid: string): void;
15
- setObject(value: any): void;
16
- requestMethod(uuid: string, key: string, value?: any, subitem?: string): void;
17
- updateObject(uuid: string, key: string, value: any): void;
18
- createTexture(uuid: string, key: string, value: any): void;
19
- addGroup(data: GroupData): void;
20
- removeGroup(name: string): void;
21
- updateGroup(group: string, prop: string, value: any): void;
22
- removeAllGroups(): void;
23
- addSpline(spline: Curve<any>): void;
24
- setRenderer(value: any, inputElement?: any): void;
25
- updateRenderer(data: any): void;
26
- addScene(value: Scene): void;
27
- refreshScene(value: string): void;
28
- removeScene(value: Scene): void;
29
- removeAllScenes(): void;
30
- getScene(uuid: string): Scene | null;
31
- setScene(value: Scene): void;
32
- addCamera(camera: Camera): void;
33
- removeCamera(camera: Camera): void;
34
- handleApp(msg: BroadcastData): void;
35
- handleEditor(msg: BroadcastData): void;
36
- addRT(name: string, resize?: boolean, params?: RenderTargetOptions): void;
37
- removeRT(name: string): void;
38
- resize(width: number, height: number): void;
39
- set dpr(value: number);
40
- get dpr(): number;
41
- get width(): number;
42
- get height(): number;
43
- }
1
+ import { Camera, Curve, RenderTargetOptions, Scene, WebGLRenderTarget } from 'three';
2
+ import BaseRemote from './BaseRemote';
3
+ import { BroadcastData, GroupData } from '../types';
4
+ export default class RemoteThree extends BaseRemote {
5
+ canvas: HTMLCanvasElement | null;
6
+ inputElement: any;
7
+ scene?: Scene;
8
+ scenes: Map<string, Scene>;
9
+ renderer?: any;
10
+ renderTargets: Map<string, WebGLRenderTarget>;
11
+ private renderTargetsResize;
12
+ private groups;
13
+ dispose(): void;
14
+ getObject(uuid: string): void;
15
+ setObject(value: any): void;
16
+ requestMethod(uuid: string, key: string, value?: any, subitem?: string): void;
17
+ updateObject(uuid: string, key: string, value: any): void;
18
+ createTexture(uuid: string, key: string, value: any): void;
19
+ addGroup(data: GroupData): void;
20
+ removeGroup(name: string): void;
21
+ updateGroup(group: string, prop: string, value: any): void;
22
+ removeAllGroups(): void;
23
+ addSpline(spline: Curve<any>): void;
24
+ setRenderer(value: any, inputElement?: any): void;
25
+ updateRenderer(data: any): void;
26
+ addScene(value: Scene): void;
27
+ refreshScene(value: string): void;
28
+ removeScene(value: Scene): void;
29
+ removeAllScenes(): void;
30
+ getScene(uuid: string): Scene | null;
31
+ setScene(value: Scene): void;
32
+ addCamera(camera: Camera): void;
33
+ removeCamera(camera: Camera): void;
34
+ handleApp(msg: BroadcastData): void;
35
+ handleEditor(msg: BroadcastData): void;
36
+ addRT(name: string, resize?: boolean, params?: RenderTargetOptions): void;
37
+ removeRT(name: string): void;
38
+ resize(width: number, height: number): void;
39
+ set dpr(value: number);
40
+ get dpr(): number;
41
+ get width(): number;
42
+ get height(): number;
43
+ }
@@ -1,18 +1,18 @@
1
- export declare enum QualityType {
2
- 'High' = 0,
3
- 'Medium' = 1,
4
- 'Low' = 2
5
- }
6
- export type AppSettings = {
7
- dpr: number;
8
- fps: number;
9
- width: number;
10
- height: number;
11
- mobile: boolean;
12
- supportOffScreenCanvas: boolean;
13
- quality: QualityType;
14
- dev: boolean;
15
- editor: boolean;
16
- };
17
- export declare function detectMaxFrameRate(callback: (fps: number) => void): void;
18
- export declare function detectSettings(canvas: HTMLCanvasElement, dev: boolean, editor: boolean): Promise<AppSettings>;
1
+ export declare enum QualityType {
2
+ 'High' = 0,
3
+ 'Medium' = 1,
4
+ 'Low' = 2
5
+ }
6
+ export type AppSettings = {
7
+ dpr: number;
8
+ fps: number;
9
+ width: number;
10
+ height: number;
11
+ mobile: boolean;
12
+ supportOffScreenCanvas: boolean;
13
+ quality: QualityType;
14
+ dev: boolean;
15
+ editor: boolean;
16
+ };
17
+ export declare function detectMaxFrameRate(callback: (fps: number) => void): void;
18
+ export declare function detectSettings(dev?: boolean, editor?: boolean): Promise<AppSettings>;