@tomorrowevening/hermes 0.1.3 → 0.1.5

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.1.3",
10
+ "version": "0.1.5",
11
11
  "homepage": "https://github.com/tomorrowevening/hermes#readme",
12
12
  "bugs": {
13
13
  "url": "https://github.com/tomorrowevening/hermes/issues"
@@ -1,27 +1,27 @@
1
- import { Clock, Group, Scene, WebGLRenderTarget } from 'three';
2
- export default class BaseScene extends Scene {
3
- clock: Clock;
4
- protected cameras: Group;
5
- protected lights: Group;
6
- protected world: Group;
7
- constructor(name: string);
8
- init(): Promise<void>;
9
- protected setupLights(): Promise<void>;
10
- protected setupCameras(): Promise<void>;
11
- protected setupWorld(): Promise<void>;
12
- protected setupPost(): Promise<void>;
13
- protected setupAnimation(): Promise<void>;
14
- protected setupDebug(): Promise<void>;
15
- dispose(): void;
16
- update(): void;
17
- draw(renderTarget: WebGLRenderTarget | null): void;
18
- postDraw(): void;
19
- resize(width: number, height: number, updateStyle: boolean): void;
20
- show(): void;
21
- protected showComplete(): void;
22
- hide(): void;
23
- protected hideComplete(): void;
24
- protected enable(): void;
25
- protected disable(): void;
26
- get deltaTime(): number;
27
- }
1
+ import { Clock, Group, Scene, WebGLRenderTarget } from 'three';
2
+ export default class BaseScene extends Scene {
3
+ clock: Clock;
4
+ protected cameras: Group;
5
+ protected lights: Group;
6
+ protected world: Group;
7
+ constructor(name: string);
8
+ init(): Promise<void>;
9
+ protected setupLights(): Promise<void>;
10
+ protected setupCameras(): Promise<void>;
11
+ protected setupWorld(): Promise<void>;
12
+ protected setupPost(): Promise<void>;
13
+ protected setupAnimation(): Promise<void>;
14
+ protected setupDebug(): Promise<void>;
15
+ dispose(): void;
16
+ update(): void;
17
+ draw(renderTarget: WebGLRenderTarget | null): void;
18
+ postDraw(): void;
19
+ resize(width: number, height: number, updateStyle: boolean): void;
20
+ show(): void;
21
+ protected showComplete(): void;
22
+ hide(): void;
23
+ protected hideComplete(): void;
24
+ protected enable(): void;
25
+ protected disable(): void;
26
+ get deltaTime(): number;
27
+ }
@@ -1,15 +1,15 @@
1
- import type { BroadcastData } from '../types';
2
- export default class BaseRemote {
3
- name: string;
4
- protected _debug: boolean;
5
- protected _editor: boolean;
6
- protected broadcastChannel?: BroadcastChannel;
7
- constructor(name: string, debug?: boolean, editor?: boolean);
8
- dispose(): void;
9
- get debug(): boolean;
10
- get editor(): boolean;
11
- protected send(data: BroadcastData): void;
12
- protected messageHandler(evt: MessageEvent): void;
13
- protected handleApp(msg: BroadcastData): void;
14
- protected handleEditor(msg: BroadcastData): void;
15
- }
1
+ import type { BroadcastData } from '../types';
2
+ export default class BaseRemote {
3
+ name: string;
4
+ protected _debug: boolean;
5
+ protected _editor: boolean;
6
+ protected broadcastChannel?: BroadcastChannel;
7
+ constructor(name: string, debug?: boolean, editor?: boolean);
8
+ dispose(): void;
9
+ get debug(): boolean;
10
+ get editor(): boolean;
11
+ protected send(data: BroadcastData): void;
12
+ protected messageHandler(evt: MessageEvent): void;
13
+ protected handleApp(msg: BroadcastData): void;
14
+ protected handleEditor(msg: BroadcastData): void;
15
+ }
@@ -17,6 +17,7 @@ export default class RemoteTheatre extends BaseRemote {
17
17
  studio: any;
18
18
  constructor(debug?: boolean, editor?: boolean);
19
19
  dispose(): void;
20
+ loadProject(id: string, state?: any): Promise<void>;
20
21
  getSheetInstance(name: string, instanceId?: string): string;
21
22
  sheet(name: string, instanceId?: string): ISheet | undefined;
22
23
  playSheet(name: string, params?: any, instanceId?: string): Promise<boolean>;
@@ -28,6 +29,7 @@ export default class RemoteTheatre extends BaseRemote {
28
29
  unsubscribe(sheetObject: ISheetObject): undefined;
29
30
  protected handleApp(msg: BroadcastData): void;
30
31
  protected handleEditor(msg: BroadcastData): void;
32
+ getSheetNames(): string[];
31
33
  handleEditorApp(): void;
32
34
  }
33
35
  export {};
@@ -1,78 +1,78 @@
1
- import { Camera, Curve, EventDispatcher, EventListener, Object3D, RenderTargetOptions, Scene, WebGLRenderTarget } from 'three';
2
- import BaseRemote from './BaseRemote';
3
- import { BroadcastData, GroupData } 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
- SET_OBJECT = "ToolEvents::setObject",
13
- CLEAR_OBJECT = "ToolEvents::clearObject",
14
- ADD_CAMERA = "ToolEvents::addCamera",
15
- REMOVE_CAMERA = "ToolEvents::removeCamera",
16
- ADD_GROUP = "ToolEvents::addGroup",
17
- REMOVE_GROUP = "ToolEvents::removeGroup",
18
- ADD_SPLINE = "ToolEvents::addSpline",
19
- ADD_RENDERER = "ToolEvents::addRenderer",
20
- UPDATE_RENDERER = "ToolEvents::updateRenderer"
21
- }
22
- export type ToolEvent = {
23
- [key in ToolEvents]: {
24
- value?: unknown;
25
- };
26
- };
27
- export default class RemoteThree extends BaseRemote implements EventDispatcher<ToolEvent> {
28
- name: string;
29
- canvas: HTMLCanvasElement | null;
30
- inputElement: any;
31
- scene?: Scene;
32
- scenes: Map<string, Scene>;
33
- renderer?: any;
34
- renderTargets: Map<string, WebGLRenderTarget>;
35
- private renderTargetsResize;
36
- private groups;
37
- private _listeners;
38
- constructor(name: string, debug?: boolean, editor?: boolean);
39
- dispose(): void;
40
- addEventListener<T extends ToolEvents>(type: T, listener: EventListener<ToolEvent[T], T, this>): void;
41
- hasEventListener<T extends ToolEvents>(type: T, listener: EventListener<ToolEvent[T], T, this>): boolean;
42
- removeEventListener<T extends ToolEvents>(type: T, listener: EventListener<ToolEvent[T], T, this>): void;
43
- dispatchEvent<T extends ToolEvents>(event: ToolEvent[T] & {
44
- type: T;
45
- }): void;
46
- getObjectByUUID(uuid: string): Object3D | undefined;
47
- getObject(uuid: string): void;
48
- setObject(value: any): void;
49
- requestMethod(uuid: string, key: string, value?: any, subitem?: string): void;
50
- updateObject(uuid: string, key: string, value: any): void;
51
- createTexture(uuid: string, key: string, value: any): void;
52
- private onUpdateObject;
53
- private onCreateTexture;
54
- addGroup(data: GroupData): void;
55
- removeGroup(name: string): void;
56
- updateGroup(group: string, prop: string, value: any): void;
57
- addSpline(spline: Curve<any>): void;
58
- setRenderer(value: any, inputElement?: any): void;
59
- updateRenderer(data: any): void;
60
- addScene(value: Scene): void;
61
- refreshScene(value: string): void;
62
- removeScene(value: Scene): void;
63
- removeAllScenes(): void;
64
- getScene(uuid: string): Scene | null;
65
- setScene(value: Scene): void;
66
- addCamera(camera: Camera): void;
67
- removeCamera(camera: Camera): void;
68
- handleApp(msg: BroadcastData): void;
69
- handleEditor(msg: BroadcastData): void;
70
- protected messageHandler(evt: MessageEvent): void;
71
- addRT(name: string, resize?: boolean, params?: RenderTargetOptions): void;
72
- removeRT(name: string): void;
73
- resize(width: number, height: number): void;
74
- set dpr(value: number);
75
- get dpr(): number;
76
- get width(): number;
77
- get height(): number;
78
- }
1
+ import { Camera, Curve, EventDispatcher, EventListener, Object3D, RenderTargetOptions, Scene, WebGLRenderTarget } from 'three';
2
+ import BaseRemote from './BaseRemote';
3
+ import { BroadcastData, GroupData } 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
+ SET_OBJECT = "ToolEvents::setObject",
13
+ CLEAR_OBJECT = "ToolEvents::clearObject",
14
+ ADD_CAMERA = "ToolEvents::addCamera",
15
+ REMOVE_CAMERA = "ToolEvents::removeCamera",
16
+ ADD_GROUP = "ToolEvents::addGroup",
17
+ REMOVE_GROUP = "ToolEvents::removeGroup",
18
+ ADD_SPLINE = "ToolEvents::addSpline",
19
+ ADD_RENDERER = "ToolEvents::addRenderer",
20
+ UPDATE_RENDERER = "ToolEvents::updateRenderer"
21
+ }
22
+ export type ToolEvent = {
23
+ [key in ToolEvents]: {
24
+ value?: unknown;
25
+ };
26
+ };
27
+ export default class RemoteThree extends BaseRemote implements EventDispatcher<ToolEvent> {
28
+ name: string;
29
+ canvas: HTMLCanvasElement | null;
30
+ inputElement: any;
31
+ scene?: Scene;
32
+ scenes: Map<string, Scene>;
33
+ renderer?: any;
34
+ renderTargets: Map<string, WebGLRenderTarget>;
35
+ private renderTargetsResize;
36
+ private groups;
37
+ private _listeners;
38
+ constructor(name: string, debug?: boolean, editor?: boolean);
39
+ dispose(): void;
40
+ addEventListener<T extends ToolEvents>(type: T, listener: EventListener<ToolEvent[T], T, this>): void;
41
+ hasEventListener<T extends ToolEvents>(type: T, listener: EventListener<ToolEvent[T], T, this>): boolean;
42
+ removeEventListener<T extends ToolEvents>(type: T, listener: EventListener<ToolEvent[T], T, this>): void;
43
+ dispatchEvent<T extends ToolEvents>(event: ToolEvent[T] & {
44
+ type: T;
45
+ }): void;
46
+ getObjectByUUID(uuid: string): Object3D | undefined;
47
+ getObject(uuid: string): void;
48
+ setObject(value: any): void;
49
+ requestMethod(uuid: string, key: string, value?: any, subitem?: string): void;
50
+ updateObject(uuid: string, key: string, value: any): void;
51
+ createTexture(uuid: string, key: string, value: any): void;
52
+ private onUpdateObject;
53
+ private onCreateTexture;
54
+ addGroup(data: GroupData): void;
55
+ removeGroup(name: string): void;
56
+ updateGroup(group: string, prop: string, value: any): void;
57
+ addSpline(spline: Curve<any>): void;
58
+ setRenderer(value: any, inputElement?: any): void;
59
+ updateRenderer(data: any): void;
60
+ addScene(value: Scene): void;
61
+ refreshScene(value: string): void;
62
+ removeScene(value: Scene): void;
63
+ removeAllScenes(): void;
64
+ getScene(uuid: string): Scene | null;
65
+ setScene(value: Scene): void;
66
+ addCamera(camera: Camera): void;
67
+ removeCamera(camera: Camera): void;
68
+ handleApp(msg: BroadcastData): void;
69
+ handleEditor(msg: BroadcastData): void;
70
+ protected messageHandler(evt: MessageEvent): void;
71
+ addRT(name: string, resize?: boolean, params?: RenderTargetOptions): void;
72
+ removeRT(name: string): void;
73
+ resize(width: number, height: number): void;
74
+ set dpr(value: number);
75
+ get dpr(): number;
76
+ get width(): number;
77
+ get height(): number;
78
+ }
@@ -1,40 +1,40 @@
1
- import { InspectorFieldType } from '../editor/sidePanel/inspector/InspectorField';
2
- export interface BroadcastData {
3
- target: ApplicationMode;
4
- event: EditorEvent;
5
- data?: any;
6
- }
7
- export type OptionInfo = {
8
- title: string;
9
- value: any;
10
- };
11
- export interface GroupItemData {
12
- type: InspectorFieldType;
13
- prop: string;
14
- title?: string;
15
- value?: any;
16
- min?: number;
17
- max?: number;
18
- step?: number;
19
- disabled?: boolean;
20
- options?: OptionInfo[];
21
- }
22
- export interface GroupData {
23
- title: string;
24
- expanded?: boolean;
25
- items: GroupItemData[];
26
- onUpdate: (prop: string, value: any) => void;
27
- }
28
- export interface GroupCallback {
29
- title: string;
30
- onUpdate: (prop: string, value: any) => void;
31
- }
32
- export type ApplicationMode = 'app' | 'editor';
33
- export type VoidCallback = () => void;
34
- export type DataUpdateCallback = (data: any) => void;
35
- export type EditorEvent = 'custom' | 'setSheet' | 'setSheetObject' | 'updateSheetObject' | 'updateTimeline' | 'playSheet' | 'pauseSheet' | 'updateObject' | 'addScene' | 'refreshScene' | 'removeScene' | 'setScene' | 'createTexture' | 'addCamera' | 'removeCamera' | 'addSpline' | 'addRenderer' | 'updateRenderer' | 'addFolder' | 'bindObject' | 'updateBind' | 'addButton' | 'clickButton' | 'addGroup' | 'removeGroup' | 'updateGroup';
36
- export type VoidFunc = () => void;
37
- export type BroadcastCallback = (data: BroadcastData) => void;
38
- export type TheatreUpdateCallback = (data: any) => void;
39
- export declare const noop: () => void;
40
- export declare const defaultTheatreCallback: TheatreUpdateCallback;
1
+ import { InspectorFieldType } from '../editor/sidePanel/inspector/InspectorField';
2
+ export interface BroadcastData {
3
+ target: ApplicationMode;
4
+ event: EditorEvent;
5
+ data?: any;
6
+ }
7
+ export type OptionInfo = {
8
+ title: string;
9
+ value: any;
10
+ };
11
+ export interface GroupItemData {
12
+ type: InspectorFieldType;
13
+ prop: string;
14
+ title?: string;
15
+ value?: any;
16
+ min?: number;
17
+ max?: number;
18
+ step?: number;
19
+ disabled?: boolean;
20
+ options?: OptionInfo[];
21
+ }
22
+ export interface GroupData {
23
+ title: string;
24
+ expanded?: boolean;
25
+ items: GroupItemData[];
26
+ onUpdate: (prop: string, value: any) => void;
27
+ }
28
+ export interface GroupCallback {
29
+ title: string;
30
+ onUpdate: (prop: string, value: any) => void;
31
+ }
32
+ export type ApplicationMode = 'app' | 'editor';
33
+ export type VoidCallback = () => void;
34
+ export type DataUpdateCallback = (data: any) => void;
35
+ export type EditorEvent = 'custom' | 'setSheet' | 'setSheetObject' | 'updateSheetObject' | 'updateTimeline' | 'playSheet' | 'pauseSheet' | 'updateObject' | 'addScene' | 'refreshScene' | 'removeScene' | 'setScene' | 'createTexture' | 'addCamera' | 'removeCamera' | 'addSpline' | 'addRenderer' | 'updateRenderer' | 'addFolder' | 'bindObject' | 'updateBind' | 'addButton' | 'clickButton' | 'addGroup' | 'removeGroup' | 'updateGroup';
36
+ export type VoidFunc = () => void;
37
+ export type BroadcastCallback = (data: BroadcastData) => void;
38
+ export type TheatreUpdateCallback = (data: any) => void;
39
+ export declare const noop: () => void;
40
+ export declare const defaultTheatreCallback: TheatreUpdateCallback;
@@ -1,5 +1,5 @@
1
- import RemoteThree from '../../../core/remote/RemoteThree';
2
- export interface SceneInspectorProps {
3
- three: RemoteThree;
4
- }
5
- export default function SceneInspector(props: SceneInspectorProps): null;
1
+ import RemoteThree from '../../../core/remote/RemoteThree';
2
+ export interface SceneInspectorProps {
3
+ three: RemoteThree;
4
+ }
5
+ export default function SceneInspector(props: SceneInspectorProps): null;
package/types/index.d.ts CHANGED
@@ -1,32 +1,31 @@
1
- export * from './core/types';
2
- export * from './editor/utils';
3
- export * from './utils/detectSettings';
4
- export * from './utils/math';
5
- export * from './utils/three';
6
- export * from './utils/post';
7
- export * from './webworkers/types';
8
- export * from './webworkers/EventHandling';
9
- export * from './webworkers/ProxyManager';
10
- export * from './core/Application';
11
- export { default as AppRunner } from './core/AppRunner';
12
- export { default as BaseScene } from './core/BaseScene';
13
- export { default as BaseRemote } from './core/remote/BaseRemote';
14
- export * from './editor/theatreUtils';
15
- export { default as RemoteTheatre } from './core/remote/RemoteTheatre';
16
- export { default as RemoteThree } from './core/remote/RemoteThree';
17
- export { default as NavButton } from './editor/components/NavButton';
18
- export { default as DraggableItem } from './editor/components/DraggableItem';
19
- export { default as Draggable } from './editor/components/Draggable';
20
- export { default as DropdownItem } from './editor/components/DropdownItem';
21
- export { default as Dropdown } from './editor/components/Dropdown';
22
- export { default as SidePanel } from './editor/sidePanel/SidePanel';
23
- export { default as Accordion } from './editor/sidePanel/Accordion';
24
- export { default as ChildObject } from './editor/sidePanel/ChildObject';
25
- export { default as ContainerObject } from './editor/sidePanel/ContainerObject';
26
- export { default as Inspector } from './editor/sidePanel/inspector/Inspector';
27
- export { default as MultiView } from './editor/multiView/MultiView';
28
- export { default as Editor } from './editor/Editor';
29
- export { default as ThreeEditor } from './editor/ThreeEditor';
30
- export { default as Transform } from './editor/tools/Transform';
31
- export { default as Spline } from './editor/tools/splineEditor/Spline';
32
- export { default as SplineEditor } from './editor/tools/splineEditor';
1
+ export * from './core/types';
2
+ export * from './editor/utils';
3
+ export * from './utils/detectSettings';
4
+ export * from './utils/math';
5
+ export * from './utils/three';
6
+ export * from './utils/post';
7
+ export * from './webworkers/types';
8
+ export * from './webworkers/EventHandling';
9
+ export * from './webworkers/ProxyManager';
10
+ export * from './core/Application';
11
+ export { default as AppRunner } from './core/AppRunner';
12
+ export { default as BaseRemote } from './core/remote/BaseRemote';
13
+ export * from './editor/theatreUtils';
14
+ export { default as RemoteTheatre } from './core/remote/RemoteTheatre';
15
+ export { default as RemoteThree } from './core/remote/RemoteThree';
16
+ export { default as NavButton } from './editor/components/NavButton';
17
+ export { default as DraggableItem } from './editor/components/DraggableItem';
18
+ export { default as Draggable } from './editor/components/Draggable';
19
+ export { default as DropdownItem } from './editor/components/DropdownItem';
20
+ export { default as Dropdown } from './editor/components/Dropdown';
21
+ export { default as SidePanel } from './editor/sidePanel/SidePanel';
22
+ export { default as Accordion } from './editor/sidePanel/Accordion';
23
+ export { default as ChildObject } from './editor/sidePanel/ChildObject';
24
+ export { default as ContainerObject } from './editor/sidePanel/ContainerObject';
25
+ export { default as Inspector } from './editor/sidePanel/inspector/Inspector';
26
+ export { default as MultiView } from './editor/multiView/MultiView';
27
+ export { default as Editor } from './editor/Editor';
28
+ export { default as ThreeEditor } from './editor/ThreeEditor';
29
+ export { default as Transform } from './editor/tools/Transform';
30
+ export { default as Spline } from './editor/tools/splineEditor/Spline';
31
+ export { default as SplineEditor } from './editor/tools/splineEditor';
@@ -1,5 +1,6 @@
1
- import RemoteThree from '../core/remote/RemoteThree';
2
1
  import { PerspectiveCamera, WebGLRenderer } from 'three';
2
+ import RemoteThree from '../core/remote/RemoteThree';
3
+ export declare function inspectComposerPass(pass: any, three: RemoteThree): void;
3
4
  export declare function inspectComposer(composer: any, three: RemoteThree): void;
4
5
  export declare function clearComposerGroups(three: RemoteThree): void;
5
6
  export declare function generateCubemap(renderer: WebGLRenderer, camera: PerspectiveCamera, composer: any, size?: number): Promise<void>;