@fps-games/editor 0.1.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/authoring-apply.d.ts +21 -0
- package/dist/authoring-apply.d.ts.map +1 -0
- package/dist/authoring-apply.js +45 -0
- package/dist/authoring-apply.js.map +1 -0
- package/dist/index.d.ts +85 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +539 -0
- package/dist/index.js.map +1 -0
- package/dist/local-editor-harness.d.ts +173 -0
- package/dist/local-editor-harness.d.ts.map +1 -0
- package/dist/local-editor-harness.js +969 -0
- package/dist/local-editor-harness.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/camera-controller.d.ts +20 -0
- package/node_modules/@fps-games/editor-babylon/dist/camera-controller.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/camera-controller.js +239 -0
- package/node_modules/@fps-games/editor-babylon/dist/camera-controller.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/edit-session.d.ts +30 -0
- package/node_modules/@fps-games/editor-babylon/dist/edit-session.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/edit-session.js +297 -0
- package/node_modules/@fps-games/editor-babylon/dist/edit-session.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/editor-world.d.ts +30 -0
- package/node_modules/@fps-games/editor-babylon/dist/editor-world.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/editor-world.js +67 -0
- package/node_modules/@fps-games/editor-babylon/dist/editor-world.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/event-guard.d.ts +13 -0
- package/node_modules/@fps-games/editor-babylon/dist/event-guard.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/event-guard.js +101 -0
- package/node_modules/@fps-games/editor-babylon/dist/event-guard.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/index.d.ts +19 -0
- package/node_modules/@fps-games/editor-babylon/dist/index.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/index.js +18 -0
- package/node_modules/@fps-games/editor-babylon/dist/index.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/input-controller.d.ts +3 -0
- package/node_modules/@fps-games/editor-babylon/dist/input-controller.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/input-controller.js +182 -0
- package/node_modules/@fps-games/editor-babylon/dist/input-controller.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/inspector-adapter.d.ts +13 -0
- package/node_modules/@fps-games/editor-babylon/dist/inspector-adapter.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/inspector-adapter.js +94 -0
- package/node_modules/@fps-games/editor-babylon/dist/inspector-adapter.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/inspector-host.d.ts +43 -0
- package/node_modules/@fps-games/editor-babylon/dist/inspector-host.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/inspector-host.js +510 -0
- package/node_modules/@fps-games/editor-babylon/dist/inspector-host.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/legacy-runtime.d.ts +5 -0
- package/node_modules/@fps-games/editor-babylon/dist/legacy-runtime.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/legacy-runtime.js +5 -0
- package/node_modules/@fps-games/editor-babylon/dist/legacy-runtime.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/material-property-adapter.d.ts +22 -0
- package/node_modules/@fps-games/editor-babylon/dist/material-property-adapter.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/material-property-adapter.js +408 -0
- package/node_modules/@fps-games/editor-babylon/dist/material-property-adapter.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/monitor.d.ts +39 -0
- package/node_modules/@fps-games/editor-babylon/dist/monitor.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/monitor.js +780 -0
- package/node_modules/@fps-games/editor-babylon/dist/monitor.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/outline-adapter.d.ts +37 -0
- package/node_modules/@fps-games/editor-babylon/dist/outline-adapter.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/outline-adapter.js +268 -0
- package/node_modules/@fps-games/editor-babylon/dist/outline-adapter.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/projection-selection-controller.d.ts +34 -0
- package/node_modules/@fps-games/editor-babylon/dist/projection-selection-controller.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/projection-selection-controller.js +221 -0
- package/node_modules/@fps-games/editor-babylon/dist/projection-selection-controller.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/projection.d.ts +90 -0
- package/node_modules/@fps-games/editor-babylon/dist/projection.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/projection.js +479 -0
- package/node_modules/@fps-games/editor-babylon/dist/projection.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/runtime-globals.d.ts +3 -0
- package/node_modules/@fps-games/editor-babylon/dist/runtime-globals.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/runtime-globals.js +7 -0
- package/node_modules/@fps-games/editor-babylon/dist/runtime-globals.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.d.ts +18 -0
- package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.js +213 -0
- package/node_modules/@fps-games/editor-babylon/dist/scene-view-camera-controller.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/scene-view-input-controller.d.ts +36 -0
- package/node_modules/@fps-games/editor-babylon/dist/scene-view-input-controller.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/scene-view-input-controller.js +272 -0
- package/node_modules/@fps-games/editor-babylon/dist/scene-view-input-controller.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/selection-controller.d.ts +27 -0
- package/node_modules/@fps-games/editor-babylon/dist/selection-controller.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/selection-controller.js +308 -0
- package/node_modules/@fps-games/editor-babylon/dist/selection-controller.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/tool-controller.d.ts +17 -0
- package/node_modules/@fps-games/editor-babylon/dist/tool-controller.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/tool-controller.js +83 -0
- package/node_modules/@fps-games/editor-babylon/dist/tool-controller.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/transform-gizmo-controller.d.ts +47 -0
- package/node_modules/@fps-games/editor-babylon/dist/transform-gizmo-controller.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/transform-gizmo-controller.js +689 -0
- package/node_modules/@fps-games/editor-babylon/dist/transform-gizmo-controller.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/types.d.ts +111 -0
- package/node_modules/@fps-games/editor-babylon/dist/types.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-babylon/dist/types.js +2 -0
- package/node_modules/@fps-games/editor-babylon/dist/types.js.map +1 -0
- package/node_modules/@fps-games/editor-babylon/package.json +25 -0
- package/node_modules/@fps-games/editor-browser/dist/index.d.ts +28 -0
- package/node_modules/@fps-games/editor-browser/dist/index.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/index.js +54 -0
- package/node_modules/@fps-games/editor-browser/dist/index.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-input-router.d.ts +12 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-input-router.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-input-router.js +80 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-input-router.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panel-registry.d.ts +11 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panel-registry.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panel-registry.js +33 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panel-registry.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.d.ts +9 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.js +444 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-panels.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-primitives.d.ts +21 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-primitives.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-primitives.js +103 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-primitives.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shared.d.ts +12 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shared.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shared.js +123 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shared.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shortcuts.d.ts +2 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shortcuts.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shortcuts.js +115 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-shortcuts.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-theme.d.ts +3 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-theme.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-theme.js +68 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-theme.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.d.ts +183 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.js +2 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-types.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-workbench.d.ts +58 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-workbench.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-workbench.js +136 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui-workbench.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.d.ts +4 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.js +589 -0
- package/node_modules/@fps-games/editor-browser/dist/local-editor-ui.js.map +1 -0
- package/node_modules/@fps-games/editor-browser/package.json +16 -0
- package/node_modules/@fps-games/editor-core/dist/authoring-source.d.ts +211 -0
- package/node_modules/@fps-games/editor-core/dist/authoring-source.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/authoring-source.js +511 -0
- package/node_modules/@fps-games/editor-core/dist/authoring-source.js.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/editor-session.d.ts +132 -0
- package/node_modules/@fps-games/editor-core/dist/editor-session.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/editor-session.js +265 -0
- package/node_modules/@fps-games/editor-core/dist/editor-session.js.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/host-services.d.ts +24 -0
- package/node_modules/@fps-games/editor-core/dist/host-services.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/host-services.js +2 -0
- package/node_modules/@fps-games/editor-core/dist/host-services.js.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/index.d.ts +106 -0
- package/node_modules/@fps-games/editor-core/dist/index.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/index.js +217 -0
- package/node_modules/@fps-games/editor-core/dist/index.js.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/scene-graph.d.ts +44 -0
- package/node_modules/@fps-games/editor-core/dist/scene-graph.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/scene-graph.js +86 -0
- package/node_modules/@fps-games/editor-core/dist/scene-graph.js.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/scene-view-input.d.ts +41 -0
- package/node_modules/@fps-games/editor-core/dist/scene-view-input.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/scene-view-input.js +2 -0
- package/node_modules/@fps-games/editor-core/dist/scene-view-input.js.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/serialized-object.d.ts +53 -0
- package/node_modules/@fps-games/editor-core/dist/serialized-object.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/serialized-object.js +32 -0
- package/node_modules/@fps-games/editor-core/dist/serialized-object.js.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/transform-gizmo.d.ts +48 -0
- package/node_modules/@fps-games/editor-core/dist/transform-gizmo.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-core/dist/transform-gizmo.js +2 -0
- package/node_modules/@fps-games/editor-core/dist/transform-gizmo.js.map +1 -0
- package/node_modules/@fps-games/editor-core/package.json +19 -0
- package/node_modules/@fps-games/editor-forge-play/dist/index.d.ts +46 -0
- package/node_modules/@fps-games/editor-forge-play/dist/index.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-forge-play/dist/index.js +156 -0
- package/node_modules/@fps-games/editor-forge-play/dist/index.js.map +1 -0
- package/node_modules/@fps-games/editor-forge-play/package.json +19 -0
- package/node_modules/@fps-games/editor-protocol/dist/index.d.ts +239 -0
- package/node_modules/@fps-games/editor-protocol/dist/index.d.ts.map +1 -0
- package/node_modules/@fps-games/editor-protocol/dist/index.js +54 -0
- package/node_modules/@fps-games/editor-protocol/dist/index.js.map +1 -0
- package/node_modules/@fps-games/editor-protocol/package.json +16 -0
- package/package.json +40 -0
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
import { type AuthoringSourceDescriptor, type DocumentCommand, type EditorTransformBatchCommit, type EditorTransformSnapshot, type EditorTransformSpace, type EditorTransformTool, type SceneGraphCreateGroupIntent, type SceneGraphDeleteIntent, type SceneGraphDropIntent, type SceneGraphRenameIntent, type SceneGraphValidationResult, type SerializedMultiObject, type SerializedObject, type EditorHostServices, type ProjectAuthoringHost } from '@fps-games/editor-core';
|
|
2
|
+
import { type LocalEditorBrowserUiAssetItem, type LocalEditorBrowserUiHierarchyItem } from '@fps-games/editor-browser';
|
|
3
|
+
import { type BabylonEditorProjectionImportContext, type BabylonEditorProjectionImportResult, type BabylonEditorProjectionNode, type BabylonRuntimeGlobal } from '@fps-games/editor-babylon';
|
|
4
|
+
export type LocalEditorHarnessMode = 'game' | 'editor';
|
|
5
|
+
type LocalEditorMaybePromise<T> = T | Promise<T>;
|
|
6
|
+
export interface LocalEditorHarnessAssetItem {
|
|
7
|
+
id: string;
|
|
8
|
+
label: string;
|
|
9
|
+
meta?: string;
|
|
10
|
+
placeable?: boolean;
|
|
11
|
+
raw?: unknown;
|
|
12
|
+
}
|
|
13
|
+
export interface LocalEditorHarnessPropertyInput<TDocument = unknown> {
|
|
14
|
+
document: TDocument;
|
|
15
|
+
targetId: string;
|
|
16
|
+
targetIds?: string[];
|
|
17
|
+
path: string;
|
|
18
|
+
value: number | string | boolean;
|
|
19
|
+
}
|
|
20
|
+
export interface LocalEditorHarnessMultiPropertyInput<TDocument = unknown> {
|
|
21
|
+
document: TDocument;
|
|
22
|
+
targetIds: string[];
|
|
23
|
+
activeId: string | null;
|
|
24
|
+
path: string;
|
|
25
|
+
value: number | string | boolean;
|
|
26
|
+
}
|
|
27
|
+
export interface LocalEditorHarnessTransformInput<TDocument = unknown> {
|
|
28
|
+
document: TDocument;
|
|
29
|
+
targetId: string;
|
|
30
|
+
tool: Exclude<EditorTransformTool, 'select'>;
|
|
31
|
+
space: EditorTransformSpace;
|
|
32
|
+
before: EditorTransformSnapshot;
|
|
33
|
+
after: EditorTransformSnapshot;
|
|
34
|
+
}
|
|
35
|
+
export interface LocalEditorHarnessTransformBatchInput<TDocument = unknown> extends EditorTransformBatchCommit {
|
|
36
|
+
document: TDocument;
|
|
37
|
+
}
|
|
38
|
+
export interface LocalEditorHarnessSceneGraphRenamePatch<TPatch> {
|
|
39
|
+
patch: TPatch;
|
|
40
|
+
label?: string;
|
|
41
|
+
changedId?: string;
|
|
42
|
+
}
|
|
43
|
+
export interface LocalEditorHarnessSceneGraphCreateGroupPatch<TPatch> {
|
|
44
|
+
patch: TPatch;
|
|
45
|
+
label?: string;
|
|
46
|
+
createdId: string;
|
|
47
|
+
}
|
|
48
|
+
export interface LocalEditorHarnessSceneGraphDeletePatch<TPatch> {
|
|
49
|
+
patch: TPatch;
|
|
50
|
+
label?: string;
|
|
51
|
+
deletedIds?: string[];
|
|
52
|
+
fallbackSelectionId?: string | null;
|
|
53
|
+
}
|
|
54
|
+
export interface LocalEditorHarnessSceneGraphDropPatch<TPatch> {
|
|
55
|
+
patch: TPatch;
|
|
56
|
+
label?: string;
|
|
57
|
+
changedIds?: string[];
|
|
58
|
+
}
|
|
59
|
+
export interface LocalEditorHarnessDocumentAdapter<TDocument, TPatch, TAsset = LocalEditorHarnessAssetItem> {
|
|
60
|
+
cloneDocument?(document: TDocument): TDocument;
|
|
61
|
+
compareDocuments?(left: TDocument, right: TDocument): boolean;
|
|
62
|
+
prepareDocument?(document: TDocument, assets: TAsset[]): TDocument;
|
|
63
|
+
reduceDocument(document: TDocument, command: DocumentCommand<TDocument, TPatch>): TDocument;
|
|
64
|
+
getSerializedObject(document: TDocument, activeId: string): SerializedObject<TDocument> | null;
|
|
65
|
+
getSerializedMultiObject?(document: TDocument, selectedIds: string[], activeId: string | null): SerializedMultiObject<TDocument> | null;
|
|
66
|
+
getHierarchyItems(document: TDocument): LocalEditorBrowserUiHierarchyItem[];
|
|
67
|
+
getProjectionNodes(document: TDocument): BabylonEditorProjectionNode[];
|
|
68
|
+
getProjectionNode(document: TDocument, id: string): BabylonEditorProjectionNode | null;
|
|
69
|
+
isSelectable?(document: TDocument, id: string): boolean;
|
|
70
|
+
isLocked?(document: TDocument, id: string): boolean;
|
|
71
|
+
createPatchFromAsset(asset: TAsset): {
|
|
72
|
+
patch: TPatch;
|
|
73
|
+
label?: string;
|
|
74
|
+
};
|
|
75
|
+
findCreatedId?(beforeDocument: TDocument, afterDocument: TDocument): string | null;
|
|
76
|
+
createSerializedPropertyPatch(input: LocalEditorHarnessPropertyInput<TDocument>): {
|
|
77
|
+
patch: TPatch;
|
|
78
|
+
label?: string;
|
|
79
|
+
changedId?: string;
|
|
80
|
+
changedIds?: string[];
|
|
81
|
+
} | null;
|
|
82
|
+
createSerializedMultiPropertyPatch?(input: LocalEditorHarnessMultiPropertyInput<TDocument>): {
|
|
83
|
+
patch: TPatch;
|
|
84
|
+
label?: string;
|
|
85
|
+
changedIds?: string[];
|
|
86
|
+
} | null;
|
|
87
|
+
createTransformPatch?(input: LocalEditorHarnessTransformInput<TDocument>): {
|
|
88
|
+
patch: TPatch;
|
|
89
|
+
label?: string;
|
|
90
|
+
changedId?: string;
|
|
91
|
+
changedIds?: string[];
|
|
92
|
+
} | null;
|
|
93
|
+
createTransformBatchPatch?(input: LocalEditorHarnessTransformBatchInput<TDocument>): {
|
|
94
|
+
patch: TPatch;
|
|
95
|
+
label?: string;
|
|
96
|
+
changedIds?: string[];
|
|
97
|
+
} | null;
|
|
98
|
+
validateSceneGraphDrop?(document: TDocument, intent: SceneGraphDropIntent): SceneGraphValidationResult;
|
|
99
|
+
createSceneGraphRenamePatch?(document: TDocument, intent: SceneGraphRenameIntent): LocalEditorHarnessSceneGraphRenamePatch<TPatch> | null;
|
|
100
|
+
createSceneGraphCreateGroupPatch?(document: TDocument, intent: SceneGraphCreateGroupIntent): LocalEditorHarnessSceneGraphCreateGroupPatch<TPatch> | null;
|
|
101
|
+
createSceneGraphDeletePatch?(document: TDocument, intent: SceneGraphDeleteIntent): LocalEditorHarnessSceneGraphDeletePatch<TPatch> | null;
|
|
102
|
+
createSceneGraphDropPatch?(document: TDocument, intent: SceneGraphDropIntent): LocalEditorHarnessSceneGraphDropPatch<TPatch> | null;
|
|
103
|
+
summarize?(document: TDocument): string;
|
|
104
|
+
}
|
|
105
|
+
export interface LocalEditorHarnessPersistenceAdapter<TDocument, TAsset = LocalEditorHarnessAssetItem> {
|
|
106
|
+
loadAuthoringSource?(): LocalEditorMaybePromise<{
|
|
107
|
+
source: AuthoringSourceDescriptor;
|
|
108
|
+
document: TDocument;
|
|
109
|
+
assets?: TAsset[];
|
|
110
|
+
summary?: string;
|
|
111
|
+
}>;
|
|
112
|
+
loadDocument?(): LocalEditorMaybePromise<TDocument>;
|
|
113
|
+
loadAssets(): LocalEditorMaybePromise<TAsset[]>;
|
|
114
|
+
saveAuthoringSource?(input: {
|
|
115
|
+
source: AuthoringSourceDescriptor;
|
|
116
|
+
document: TDocument;
|
|
117
|
+
}): LocalEditorMaybePromise<{
|
|
118
|
+
source: AuthoringSourceDescriptor;
|
|
119
|
+
document: TDocument;
|
|
120
|
+
summary?: string;
|
|
121
|
+
}>;
|
|
122
|
+
saveDocument?(document: TDocument): LocalEditorMaybePromise<{
|
|
123
|
+
document: TDocument;
|
|
124
|
+
summary?: string;
|
|
125
|
+
}>;
|
|
126
|
+
runGame(): LocalEditorMaybePromise<void>;
|
|
127
|
+
}
|
|
128
|
+
export interface LocalEditorHarnessWorldAdapter<TAsset = LocalEditorHarnessAssetItem> {
|
|
129
|
+
disposeGameWorld(): LocalEditorMaybePromise<void>;
|
|
130
|
+
getCanvas(): HTMLCanvasElement | null;
|
|
131
|
+
loadBabylon(): LocalEditorMaybePromise<BabylonRuntimeGlobal & Record<string, any>>;
|
|
132
|
+
createEngine(babylon: BabylonRuntimeGlobal & Record<string, any>, canvas: HTMLCanvasElement): any;
|
|
133
|
+
importProjectionModel(context: BabylonEditorProjectionImportContext): Promise<BabylonEditorProjectionImportResult | null>;
|
|
134
|
+
toBrowserAssetItem?(asset: TAsset): LocalEditorBrowserUiAssetItem;
|
|
135
|
+
resolveAssetId?(asset: TAsset): string;
|
|
136
|
+
}
|
|
137
|
+
export interface LocalEditorHarnessOptions<TDocument, TPatch, TAsset = LocalEditorHarnessAssetItem> {
|
|
138
|
+
root?: HTMLElement;
|
|
139
|
+
authoringHost?: ProjectAuthoringHost;
|
|
140
|
+
hostServices?: EditorHostServices;
|
|
141
|
+
documentAdapter: LocalEditorHarnessDocumentAdapter<TDocument, TPatch, TAsset>;
|
|
142
|
+
persistenceAdapter: LocalEditorHarnessPersistenceAdapter<TDocument, TAsset>;
|
|
143
|
+
worldAdapter: LocalEditorHarnessWorldAdapter<TAsset>;
|
|
144
|
+
world?: {
|
|
145
|
+
cameraTarget?: {
|
|
146
|
+
x: number;
|
|
147
|
+
y: number;
|
|
148
|
+
z: number;
|
|
149
|
+
};
|
|
150
|
+
cameraRadius?: number;
|
|
151
|
+
clearColor?: {
|
|
152
|
+
r: number;
|
|
153
|
+
g: number;
|
|
154
|
+
b: number;
|
|
155
|
+
a: number;
|
|
156
|
+
};
|
|
157
|
+
useRightHandedSystem?: boolean;
|
|
158
|
+
};
|
|
159
|
+
createGrid?: (babylon: BabylonRuntimeGlobal & Record<string, any>, scene: unknown) => void;
|
|
160
|
+
}
|
|
161
|
+
export interface LocalEditorHarness<TDocument = unknown> {
|
|
162
|
+
render(): void;
|
|
163
|
+
getHostServices(): EditorHostServices | null;
|
|
164
|
+
getWorkingDocument(): TDocument | null;
|
|
165
|
+
enterEditor(): Promise<void>;
|
|
166
|
+
saveScene(): Promise<boolean>;
|
|
167
|
+
saveAndRunGame(): Promise<boolean>;
|
|
168
|
+
discardAndRunGame(): Promise<void>;
|
|
169
|
+
dispose(): void;
|
|
170
|
+
}
|
|
171
|
+
export declare function createLocalEditorHarness<TDocument, TPatch, TAsset = LocalEditorHarnessAssetItem>(options: LocalEditorHarnessOptions<TDocument, TPatch, TAsset>): LocalEditorHarness<TDocument>;
|
|
172
|
+
export {};
|
|
173
|
+
//# sourceMappingURL=local-editor-harness.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-editor-harness.d.ts","sourceRoot":"","sources":["../src/local-editor-harness.ts"],"names":[],"mappings":"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"}
|