@flighthq/scene-document 0.4.1-next.37.ff47e13 → 0.4.1-next.515.b0834fe
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/README.md +2 -2
- package/dist/contract.d.ts +2 -1
- package/dist/contract.d.ts.map +1 -1
- package/dist/contract.js +2 -1
- package/dist/contract.js.map +1 -1
- package/dist/flightDocumentText.d.ts +5 -0
- package/dist/flightDocumentText.d.ts.map +1 -0
- package/dist/flightDocumentText.js +617 -0
- package/dist/flightDocumentText.js.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/sceneDocumentMaterializationSelection.d.ts +13 -0
- package/dist/sceneDocumentMaterializationSelection.d.ts.map +1 -0
- package/dist/sceneDocumentMaterializationSelection.js +55 -0
- package/dist/sceneDocumentMaterializationSelection.js.map +1 -0
- package/dist/sceneDocumentRefusal.d.ts +6 -0
- package/dist/sceneDocumentRefusal.d.ts.map +1 -0
- package/dist/sceneDocumentRefusal.js +60 -0
- package/dist/sceneDocumentRefusal.js.map +1 -0
- package/dist/sceneDocumentScene2DMaterialization.d.ts +4 -5
- package/dist/sceneDocumentScene2DMaterialization.d.ts.map +1 -1
- package/dist/sceneDocumentScene2DMaterialization.js +81 -277
- package/dist/sceneDocumentScene2DMaterialization.js.map +1 -1
- package/dist/sceneDocumentScene3DMaterialization.d.ts +4 -4
- package/dist/sceneDocumentScene3DMaterialization.d.ts.map +1 -1
- package/dist/sceneDocumentScene3DMaterialization.js +145 -291
- package/dist/sceneDocumentScene3DMaterialization.js.map +1 -1
- package/dist/sceneDocumentYamlSubset.d.ts +3 -1
- package/dist/sceneDocumentYamlSubset.d.ts.map +1 -1
- package/dist/sceneDocumentYamlSubset.js.map +1 -1
- package/package.json +10 -9
- package/src/flightDocumentText.test.ts +179 -0
- package/src/sceneDocumentMaterializationSelection.test.ts +56 -0
- package/src/sceneDocumentMultiSceneMaterialization.test.ts +209 -0
- package/src/sceneDocumentRefusal.test.ts +143 -0
- package/src/sceneDocumentScene2DMaterialization.test.ts +188 -62
- package/src/sceneDocumentScene3DMaterialization.test.ts +485 -159
- package/src/sceneDocumentYamlSubset.test.ts +8 -0
|
@@ -1,158 +1,155 @@
|
|
|
1
|
-
import { createCamera3D } from '@flighthq/camera/contract';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { addNodeChild, getNodeChildren } from '@flighthq/node/contract';
|
|
1
|
+
import { createCamera3D, setCamera3DViewMatrix4FromMatrix4 } from '@flighthq/camera/contract';
|
|
2
|
+
import { getEntityRuntime } from '@flighthq/entity/contract';
|
|
3
|
+
import { acquireMatrix4, composeMatrix4FromTransform3D, createTransform3D, decomposeMatrix4ToTransform3D, inverseMatrix4, releaseMatrix4, } from '@flighthq/geometry/contract';
|
|
4
|
+
import { addNodeChild, getNodeChildren, getNodeWorldMatrix4 } from '@flighthq/node/contract';
|
|
5
5
|
import { getRegistryTableEntry } from '@flighthq/registry/contract';
|
|
6
|
-
import { createScene3D } from '@flighthq/scene3d/contract';
|
|
7
|
-
import { AmbientLightKind, DirectionalLightKind, FlightDocumentRefusalReason } from '@flighthq/types/contract';
|
|
8
|
-
import {
|
|
6
|
+
import { createScene3D, createScene3DLightsFromDocument } from '@flighthq/scene3d/contract';
|
|
7
|
+
import { AmbientLightKind, DirectionalLightKind, FlightDocumentRefusalReason, Node3DTraitsKey, } from '@flighthq/types/contract';
|
|
8
|
+
import { explainFlightDocumentText, parseFlightDocumentText } from './flightDocumentText';
|
|
9
|
+
import { selectFlightDocumentScene } from './sceneDocumentMaterializationSelection';
|
|
10
|
+
import { checkUnregisteredNodeKinds, createSceneRefusal } from './sceneDocumentRefusal';
|
|
9
11
|
export function createFlightDocumentFromScene3D(source, cameras, lights, schemas) {
|
|
10
12
|
return {
|
|
11
13
|
cameras: cameras.map((c) => ({ ...c })),
|
|
12
14
|
kind: 'Scene3D',
|
|
13
15
|
lights: lights.map((l) => ({ ...l })),
|
|
14
|
-
resources: [],
|
|
15
16
|
scene: writeNode(source.root, schemas),
|
|
16
|
-
version: 1,
|
|
17
17
|
};
|
|
18
18
|
}
|
|
19
|
-
export function createFlightDocumentScene3DMaterialization(document, schemas, resolvers) {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
if (document.version !== 1)
|
|
19
|
+
export function createFlightDocumentScene3DMaterialization(document, schemas, resolvers, sceneIndex = document.defaultScene) {
|
|
20
|
+
const selection = selectFlightDocumentScene(document, 'Scene3D', sceneIndex);
|
|
21
|
+
if (selection.refusal !== null || selection.scene.kind !== 'Scene3D')
|
|
23
22
|
return null;
|
|
24
|
-
const
|
|
23
|
+
const documentScene = selection.scene;
|
|
24
|
+
const duplicateRefusal = checkDuplicateLights(documentScene.lights, selection.sceneIndex);
|
|
25
25
|
if (duplicateRefusal !== null)
|
|
26
26
|
return null;
|
|
27
|
+
const unregisteredRefusal = checkUnregisteredNodeKinds(documentScene.scene, schemas, selection.sceneIndex, 'scene');
|
|
28
|
+
if (unregisteredRefusal !== null)
|
|
29
|
+
return null;
|
|
27
30
|
const scene = createScene3D();
|
|
28
31
|
const resources = resolveResources(document.resources, resolvers);
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
+
// Same defect as 2D: the authored root's kind and fields were dropped because only its children were
|
|
33
|
+
// materialized, while the writer captured them.
|
|
34
|
+
if (!adoptDocumentRoot3D(scene, documentScene.scene, schemas, resources))
|
|
35
|
+
return null;
|
|
36
|
+
materializeChildren(scene.root, documentScene.scene.children, schemas, resources);
|
|
37
|
+
const materializedNodes = getMaterializedNodes(scene.root);
|
|
38
|
+
const cameras = materializeCameras(documentScene.cameras, materializedNodes);
|
|
39
|
+
const lights = materializeLights(documentScene.lights, materializedNodes);
|
|
32
40
|
return { cameras, lights, scene };
|
|
33
41
|
}
|
|
34
|
-
export function createFlightDocumentScene3DMaterializationFromText(text, schemas, resolvers) {
|
|
35
|
-
const document =
|
|
42
|
+
export function createFlightDocumentScene3DMaterializationFromText(text, schemas, resolvers, sceneIndex) {
|
|
43
|
+
const document = parseFlightDocumentText(text);
|
|
36
44
|
if (document === null)
|
|
37
45
|
return null;
|
|
38
|
-
return createFlightDocumentScene3DMaterialization(document, schemas, resolvers);
|
|
39
|
-
}
|
|
40
|
-
export function explainFlightDocumentScene3DRefusal(document) {
|
|
41
|
-
if (document.kind !== 'Scene3D') {
|
|
42
|
-
return createRefusal(FlightDocumentRefusalReason.StructureInvalid, 'kind');
|
|
43
|
-
}
|
|
44
|
-
if (document.version !== 1) {
|
|
45
|
-
return {
|
|
46
|
-
...createRefusal(FlightDocumentRefusalReason.VersionUnsupported, 'version'),
|
|
47
|
-
version: document.version,
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
return checkDuplicateLights(document.lights);
|
|
46
|
+
return createFlightDocumentScene3DMaterialization(document, schemas, resolvers, sceneIndex);
|
|
51
47
|
}
|
|
52
|
-
export function
|
|
53
|
-
const
|
|
54
|
-
if (
|
|
55
|
-
return
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
}
|
|
72
|
-
const mapping = value;
|
|
73
|
-
const version = mapping['flight'];
|
|
74
|
-
if (typeof version !== 'number') {
|
|
75
|
-
return createRefusal(FlightDocumentRefusalReason.StructureInvalid, 'flight');
|
|
76
|
-
}
|
|
77
|
-
if (version !== 1) {
|
|
78
|
-
return {
|
|
79
|
-
...createRefusal(FlightDocumentRefusalReason.VersionUnsupported, 'version'),
|
|
80
|
-
version,
|
|
81
|
-
};
|
|
82
|
-
}
|
|
83
|
-
const kind = mapping['kind'];
|
|
84
|
-
if (kind !== 'Scene3D') {
|
|
85
|
-
return createRefusal(FlightDocumentRefusalReason.StructureInvalid, 'kind');
|
|
86
|
-
}
|
|
87
|
-
return checkDuplicateLightsFromRaw(mapping['lights']);
|
|
48
|
+
export function explainFlightDocumentScene3DRefusal(document, schemas, sceneIndex = document.defaultScene) {
|
|
49
|
+
const selection = selectFlightDocumentScene(document, 'Scene3D', sceneIndex);
|
|
50
|
+
if (selection.refusal !== null)
|
|
51
|
+
return selection.refusal;
|
|
52
|
+
if (selection.scene.kind !== 'Scene3D')
|
|
53
|
+
return null;
|
|
54
|
+
const lightRefusal = checkDuplicateLights(selection.scene.lights, selection.sceneIndex);
|
|
55
|
+
if (lightRefusal !== null)
|
|
56
|
+
return lightRefusal;
|
|
57
|
+
const unregistered = checkUnregisteredNodeKinds(selection.scene.scene, schemas, selection.sceneIndex, 'scene');
|
|
58
|
+
if (unregistered !== null)
|
|
59
|
+
return unregistered;
|
|
60
|
+
return checkRootKindDimension3D(selection.scene.scene, schemas, selection.sceneIndex);
|
|
61
|
+
}
|
|
62
|
+
export function explainFlightDocumentScene3DRefusalFromText(text, schemas, sceneIndex) {
|
|
63
|
+
const document = parseFlightDocumentText(text);
|
|
64
|
+
if (document === null)
|
|
65
|
+
return explainFlightDocumentText(text);
|
|
66
|
+
return explainFlightDocumentScene3DRefusal(document, schemas, sceneIndex);
|
|
88
67
|
}
|
|
89
|
-
function checkDuplicateLights(lights) {
|
|
68
|
+
function checkDuplicateLights(lights, sceneIndex) {
|
|
90
69
|
let ambientCount = 0;
|
|
91
70
|
let directionalCount = 0;
|
|
92
71
|
for (const light of lights) {
|
|
93
72
|
if (light.descriptor.kind === AmbientLightKind) {
|
|
94
73
|
ambientCount++;
|
|
95
74
|
if (ambientCount > 1) {
|
|
96
|
-
return
|
|
75
|
+
return createSceneRefusal(FlightDocumentRefusalReason.DuplicateAmbientLight, sceneIndex, 'lights');
|
|
97
76
|
}
|
|
98
77
|
}
|
|
99
78
|
if (light.descriptor.kind === DirectionalLightKind) {
|
|
100
79
|
directionalCount++;
|
|
101
80
|
if (directionalCount > 1) {
|
|
102
|
-
return
|
|
81
|
+
return createSceneRefusal(FlightDocumentRefusalReason.DuplicateDirectionalLight, sceneIndex, 'lights');
|
|
103
82
|
}
|
|
104
83
|
}
|
|
105
84
|
}
|
|
106
85
|
return null;
|
|
107
86
|
}
|
|
108
|
-
function
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
if (ambientCount > 1) {
|
|
124
|
-
return createRefusal(FlightDocumentRefusalReason.DuplicateAmbientLight, 'lights');
|
|
125
|
-
}
|
|
87
|
+
function materializeCameras(cameras, materializedNodes) {
|
|
88
|
+
const placement = acquireMatrix4();
|
|
89
|
+
const view = acquireMatrix4();
|
|
90
|
+
const out = [];
|
|
91
|
+
for (const source of cameras) {
|
|
92
|
+
const camera = createCamera3D({
|
|
93
|
+
far: source.far,
|
|
94
|
+
near: source.near,
|
|
95
|
+
projection: source.projection,
|
|
96
|
+
});
|
|
97
|
+
const boundNode = getBoundMaterializedNode(source.node, materializedNodes);
|
|
98
|
+
if (boundNode === null) {
|
|
99
|
+
composeMatrix4FromTransform3D(placement, source.transform);
|
|
100
|
+
if (inverseMatrix4(view, placement))
|
|
101
|
+
setCamera3DViewMatrix4FromMatrix4(camera, view);
|
|
126
102
|
}
|
|
127
|
-
if (
|
|
128
|
-
|
|
129
|
-
if (directionalCount > 1) {
|
|
130
|
-
return createRefusal(FlightDocumentRefusalReason.DuplicateDirectionalLight, 'lights');
|
|
131
|
-
}
|
|
103
|
+
else if (inverseMatrix4(view, getNodeWorldMatrix4(boundNode))) {
|
|
104
|
+
setCamera3DViewMatrix4FromMatrix4(camera, view);
|
|
132
105
|
}
|
|
106
|
+
out.push(camera);
|
|
133
107
|
}
|
|
134
|
-
|
|
108
|
+
releaseMatrix4(view);
|
|
109
|
+
releaseMatrix4(placement);
|
|
110
|
+
return out;
|
|
135
111
|
}
|
|
136
|
-
function
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
kind: null,
|
|
141
|
-
limit: null,
|
|
142
|
-
line: null,
|
|
143
|
-
offset: null,
|
|
144
|
-
path,
|
|
145
|
-
reason,
|
|
146
|
-
resourceKey: null,
|
|
147
|
-
version: null,
|
|
148
|
-
};
|
|
112
|
+
function getBoundMaterializedNode(index, materializedNodes) {
|
|
113
|
+
if (index === undefined || !Number.isInteger(index) || index < 0)
|
|
114
|
+
return null;
|
|
115
|
+
return materializedNodes[index] ?? null;
|
|
149
116
|
}
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
117
|
+
// Scene3DDocument binding indices address a flat node table. A Flight document stores the same logical
|
|
118
|
+
// population as a nested tree, so flatten it in the binary format's depth-first order, including the scene
|
|
119
|
+
// root at index zero. Keeping this derivation separate from node creation lets the root materializer own how
|
|
120
|
+
// that root is instantiated without creating a second placement model here.
|
|
121
|
+
function getMaterializedNodes(root) {
|
|
122
|
+
const out = [];
|
|
123
|
+
appendMaterializedNodes(out, root);
|
|
124
|
+
return out;
|
|
125
|
+
}
|
|
126
|
+
function appendMaterializedNodes(out, node) {
|
|
127
|
+
out.push(node);
|
|
128
|
+
for (const child of getNodeChildren(node))
|
|
129
|
+
appendMaterializedNodes(out, child);
|
|
130
|
+
}
|
|
131
|
+
function materializeLights(lights, materializedNodes) {
|
|
132
|
+
const resolvedLights = lights.map((source) => {
|
|
133
|
+
const boundNode = getBoundMaterializedNode(source.node, materializedNodes);
|
|
134
|
+
if (boundNode === null)
|
|
135
|
+
return { ...source };
|
|
136
|
+
const transform = createTransform3D();
|
|
137
|
+
decomposeMatrix4ToTransform3D(transform, getNodeWorldMatrix4(boundNode));
|
|
138
|
+
return { ...source, transform };
|
|
139
|
+
});
|
|
140
|
+
const document = {
|
|
141
|
+
animations: [],
|
|
142
|
+
cameras: [],
|
|
143
|
+
lights: resolvedLights,
|
|
144
|
+
materials: [],
|
|
145
|
+
meshes: [],
|
|
146
|
+
metadata: null,
|
|
147
|
+
nodes: [],
|
|
148
|
+
resources: [],
|
|
149
|
+
scenes: [],
|
|
150
|
+
skins: [],
|
|
151
|
+
};
|
|
152
|
+
return createScene3DLightsFromDocument(document);
|
|
156
153
|
}
|
|
157
154
|
function materializeChildren(parent, children, schemas, resources) {
|
|
158
155
|
for (const child of children) {
|
|
@@ -166,183 +163,6 @@ function materializeChildren(parent, children, schemas, resources) {
|
|
|
166
163
|
materializeChildren(node, child.children, schemas, resources);
|
|
167
164
|
}
|
|
168
165
|
}
|
|
169
|
-
function materializeLights(lights) {
|
|
170
|
-
const ambientEntry = lights.find((l) => l.descriptor.kind === AmbientLightKind);
|
|
171
|
-
const directionalEntry = lights.find((l) => l.descriptor.kind === DirectionalLightKind);
|
|
172
|
-
return createScene3DLights({
|
|
173
|
-
ambient: ambientEntry !== undefined ? ambientEntry.descriptor : null,
|
|
174
|
-
directional: directionalEntry !== undefined ? directionalEntry.descriptor : null,
|
|
175
|
-
});
|
|
176
|
-
}
|
|
177
|
-
function parseFlightDocumentFromText(text) {
|
|
178
|
-
const result = parseSceneDocumentYamlSubset(text);
|
|
179
|
-
if (!result.ok)
|
|
180
|
-
return null;
|
|
181
|
-
const value = result.value;
|
|
182
|
-
if (value === null || typeof value !== 'object' || Array.isArray(value))
|
|
183
|
-
return null;
|
|
184
|
-
const mapping = value;
|
|
185
|
-
const version = mapping['flight'];
|
|
186
|
-
if (version !== 1)
|
|
187
|
-
return null;
|
|
188
|
-
const kind = mapping['kind'];
|
|
189
|
-
if (kind !== 'Scene3D')
|
|
190
|
-
return null;
|
|
191
|
-
const sceneRaw = mapping['scene'];
|
|
192
|
-
const scene = parseDocumentNode(sceneRaw) ?? { children: [], fields: {}, kind: 'Node3D' };
|
|
193
|
-
const resources = parseResources(mapping['resources']);
|
|
194
|
-
const cameras = parseCameras(mapping['cameras']);
|
|
195
|
-
const documentLights = parseLights(mapping['lights']);
|
|
196
|
-
return {
|
|
197
|
-
cameras,
|
|
198
|
-
kind: 'Scene3D',
|
|
199
|
-
lights: documentLights,
|
|
200
|
-
resources,
|
|
201
|
-
scene,
|
|
202
|
-
version: 1,
|
|
203
|
-
};
|
|
204
|
-
}
|
|
205
|
-
function parseCameras(value) {
|
|
206
|
-
if (!Array.isArray(value))
|
|
207
|
-
return [];
|
|
208
|
-
const out = [];
|
|
209
|
-
for (const item of value) {
|
|
210
|
-
if (item === null || typeof item !== 'object' || Array.isArray(item))
|
|
211
|
-
continue;
|
|
212
|
-
const mapping = item;
|
|
213
|
-
const far = mapping['far'];
|
|
214
|
-
const near = mapping['near'];
|
|
215
|
-
const projection = mapping['projection'];
|
|
216
|
-
if (typeof far !== 'number' || typeof near !== 'number')
|
|
217
|
-
continue;
|
|
218
|
-
if (projection === null || projection === undefined || typeof projection !== 'object')
|
|
219
|
-
continue;
|
|
220
|
-
const transform = parseTransform3D(mapping['transform']);
|
|
221
|
-
const cam = {
|
|
222
|
-
far,
|
|
223
|
-
near,
|
|
224
|
-
projection: projection,
|
|
225
|
-
transform,
|
|
226
|
-
};
|
|
227
|
-
const name = mapping['name'];
|
|
228
|
-
if (typeof name === 'string')
|
|
229
|
-
cam.name = name;
|
|
230
|
-
out.push(cam);
|
|
231
|
-
}
|
|
232
|
-
return out;
|
|
233
|
-
}
|
|
234
|
-
function parseLights(value) {
|
|
235
|
-
if (!Array.isArray(value))
|
|
236
|
-
return [];
|
|
237
|
-
const out = [];
|
|
238
|
-
for (const item of value) {
|
|
239
|
-
if (item === null || typeof item !== 'object' || Array.isArray(item))
|
|
240
|
-
continue;
|
|
241
|
-
const mapping = item;
|
|
242
|
-
const descriptorRaw = mapping['descriptor'];
|
|
243
|
-
if (descriptorRaw === null || descriptorRaw === undefined || typeof descriptorRaw !== 'object')
|
|
244
|
-
continue;
|
|
245
|
-
const descriptor = descriptorRaw;
|
|
246
|
-
if (typeof descriptor.kind !== 'string')
|
|
247
|
-
continue;
|
|
248
|
-
const transform = parseTransform3D(mapping['transform']);
|
|
249
|
-
const light = { descriptor, transform };
|
|
250
|
-
const name = mapping['name'];
|
|
251
|
-
if (typeof name === 'string')
|
|
252
|
-
light.name = name;
|
|
253
|
-
out.push(light);
|
|
254
|
-
}
|
|
255
|
-
return out;
|
|
256
|
-
}
|
|
257
|
-
function parseDocumentNode(value) {
|
|
258
|
-
if (value === null || value === undefined || typeof value !== 'object' || Array.isArray(value)) {
|
|
259
|
-
return null;
|
|
260
|
-
}
|
|
261
|
-
const mapping = value;
|
|
262
|
-
const kind = mapping['kind'];
|
|
263
|
-
if (typeof kind !== 'string')
|
|
264
|
-
return null;
|
|
265
|
-
const childrenRaw = mapping['children'];
|
|
266
|
-
const children = [];
|
|
267
|
-
if (Array.isArray(childrenRaw)) {
|
|
268
|
-
for (const item of childrenRaw) {
|
|
269
|
-
const child = parseDocumentNode(item);
|
|
270
|
-
if (child !== null)
|
|
271
|
-
children.push(child);
|
|
272
|
-
}
|
|
273
|
-
}
|
|
274
|
-
const fields = {};
|
|
275
|
-
for (const key of Object.keys(mapping)) {
|
|
276
|
-
if (key === 'kind' || key === 'children')
|
|
277
|
-
continue;
|
|
278
|
-
fields[key] = mapping[key];
|
|
279
|
-
}
|
|
280
|
-
return { children, fields, kind };
|
|
281
|
-
}
|
|
282
|
-
function parseResources(value) {
|
|
283
|
-
if (!Array.isArray(value))
|
|
284
|
-
return [];
|
|
285
|
-
const out = [];
|
|
286
|
-
for (const item of value) {
|
|
287
|
-
if (item === null || typeof item !== 'object' || Array.isArray(item))
|
|
288
|
-
continue;
|
|
289
|
-
const mapping = item;
|
|
290
|
-
const kind = mapping['kind'];
|
|
291
|
-
const key = mapping['key'];
|
|
292
|
-
if (typeof kind !== 'string' || typeof key !== 'string')
|
|
293
|
-
continue;
|
|
294
|
-
const fields = {};
|
|
295
|
-
for (const k of Object.keys(mapping)) {
|
|
296
|
-
if (k === 'kind' || k === 'key')
|
|
297
|
-
continue;
|
|
298
|
-
fields[k] = mapping[k];
|
|
299
|
-
}
|
|
300
|
-
out.push({ fields, key, kind });
|
|
301
|
-
}
|
|
302
|
-
return out;
|
|
303
|
-
}
|
|
304
|
-
function parseTransform3D(value) {
|
|
305
|
-
const identity = createTransform3D();
|
|
306
|
-
if (value === null || value === undefined || typeof value !== 'object' || Array.isArray(value)) {
|
|
307
|
-
return identity;
|
|
308
|
-
}
|
|
309
|
-
const mapping = value;
|
|
310
|
-
const out = createTransform3D();
|
|
311
|
-
parseVector3Into(out.position, mapping['position']);
|
|
312
|
-
parseQuaternionInto(out.rotation, mapping['rotation']);
|
|
313
|
-
parseVector3Into(out.scale, mapping['scale'], identity.scale);
|
|
314
|
-
return out;
|
|
315
|
-
}
|
|
316
|
-
function parseVector3Into(out, value, fallback) {
|
|
317
|
-
if (value === null || value === undefined || typeof value !== 'object' || Array.isArray(value)) {
|
|
318
|
-
if (fallback !== undefined) {
|
|
319
|
-
out.x = fallback.x;
|
|
320
|
-
out.y = fallback.y;
|
|
321
|
-
out.z = fallback.z;
|
|
322
|
-
}
|
|
323
|
-
return;
|
|
324
|
-
}
|
|
325
|
-
const mapping = value;
|
|
326
|
-
if (typeof mapping['x'] === 'number')
|
|
327
|
-
out.x = mapping['x'];
|
|
328
|
-
if (typeof mapping['y'] === 'number')
|
|
329
|
-
out.y = mapping['y'];
|
|
330
|
-
if (typeof mapping['z'] === 'number')
|
|
331
|
-
out.z = mapping['z'];
|
|
332
|
-
}
|
|
333
|
-
function parseQuaternionInto(out, value) {
|
|
334
|
-
if (value === null || value === undefined || typeof value !== 'object' || Array.isArray(value))
|
|
335
|
-
return;
|
|
336
|
-
const mapping = value;
|
|
337
|
-
if (typeof mapping['w'] === 'number')
|
|
338
|
-
out.w = mapping['w'];
|
|
339
|
-
if (typeof mapping['x'] === 'number')
|
|
340
|
-
out.x = mapping['x'];
|
|
341
|
-
if (typeof mapping['y'] === 'number')
|
|
342
|
-
out.y = mapping['y'];
|
|
343
|
-
if (typeof mapping['z'] === 'number')
|
|
344
|
-
out.z = mapping['z'];
|
|
345
|
-
}
|
|
346
166
|
function resolveResources(descriptors, resolvers) {
|
|
347
167
|
const out = {};
|
|
348
168
|
if (resolvers === undefined)
|
|
@@ -378,4 +198,38 @@ function writeFieldsWithDefaults(out, source, schema) {
|
|
|
378
198
|
}
|
|
379
199
|
}
|
|
380
200
|
}
|
|
201
|
+
// Replaces the scene's default root with the authored one, carrying its kind and fields. Returns false
|
|
202
|
+
// when the root cannot serve as a 3D root — checked structurally by reading the built node's traits key,
|
|
203
|
+
// so a registered kind of the wrong dimension is caught rather than installed.
|
|
204
|
+
function adoptDocumentRoot3D(scene, documentRoot, schemas, resources) {
|
|
205
|
+
const schema = getRegistryTableEntry(schemas.nodeSchemas, documentRoot.kind);
|
|
206
|
+
if (schema === null)
|
|
207
|
+
return true;
|
|
208
|
+
const root = schema.createNode(documentRoot.fields, resources);
|
|
209
|
+
if (root === null)
|
|
210
|
+
return false;
|
|
211
|
+
const runtime = getEntityRuntime(root);
|
|
212
|
+
if (runtime?.traits !== Node3DTraitsKey)
|
|
213
|
+
return false;
|
|
214
|
+
scene.root = root;
|
|
215
|
+
return true;
|
|
216
|
+
}
|
|
217
|
+
// The 3D half of the wrong-dimension root refusal.
|
|
218
|
+
function checkRootKindDimension3D(documentRoot, schemas, sceneIndex) {
|
|
219
|
+
const schema = getRegistryTableEntry(schemas.nodeSchemas, documentRoot.kind);
|
|
220
|
+
if (schema === null)
|
|
221
|
+
return null;
|
|
222
|
+
const probe = schema.createNode(documentRoot.fields, {
|
|
223
|
+
resolve: () => null,
|
|
224
|
+
});
|
|
225
|
+
if (probe === null)
|
|
226
|
+
return null;
|
|
227
|
+
const runtime = getEntityRuntime(probe);
|
|
228
|
+
if (runtime?.traits === Node3DTraitsKey)
|
|
229
|
+
return null;
|
|
230
|
+
return {
|
|
231
|
+
...createSceneRefusal(FlightDocumentRefusalReason.RootKindMismatch, sceneIndex, 'scene'),
|
|
232
|
+
kind: documentRoot.kind,
|
|
233
|
+
};
|
|
234
|
+
}
|
|
381
235
|
//# sourceMappingURL=sceneDocumentScene3DMaterialization.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sceneDocumentScene3DMaterialization.js","sourceRoot":"","sources":["../src/sceneDocumentScene3DMaterialization.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sceneDocumentScene3DMaterialization.js","sourceRoot":"","sources":["../src/sceneDocumentScene3DMaterialization.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { FlightDocumentRefusalReason } from '@flighthq/types/contract';
|
|
1
2
|
type SceneDocumentYamlSubsetValue = null | boolean | number | string | SceneDocumentYamlSubsetValue[] | SceneDocumentYamlSubsetMapping;
|
|
2
3
|
interface SceneDocumentYamlSubsetMapping {
|
|
3
4
|
[key: string]: SceneDocumentYamlSubsetValue;
|
|
@@ -8,7 +9,7 @@ interface SceneDocumentYamlSubsetSuccess {
|
|
|
8
9
|
}
|
|
9
10
|
interface SceneDocumentYamlSubsetRefusal {
|
|
10
11
|
readonly ok: false;
|
|
11
|
-
readonly kind:
|
|
12
|
+
readonly kind: SceneDocumentYamlSubsetRefusalReason;
|
|
12
13
|
readonly limit: number | null;
|
|
13
14
|
readonly actual: number | null;
|
|
14
15
|
readonly offset: number;
|
|
@@ -16,6 +17,7 @@ interface SceneDocumentYamlSubsetRefusal {
|
|
|
16
17
|
readonly column: number;
|
|
17
18
|
}
|
|
18
19
|
type SceneDocumentYamlSubsetResult = SceneDocumentYamlSubsetSuccess | SceneDocumentYamlSubsetRefusal;
|
|
20
|
+
type SceneDocumentYamlSubsetRefusalReason = Extract<FlightDocumentRefusalReason, 'flight-document.limit.collection-entries' | 'flight-document.limit.document-code-units' | 'flight-document.limit.key-code-units' | 'flight-document.limit.nesting-depth' | 'flight-document.limit.scalar-code-units' | 'flight-document.limit.total-nodes' | 'flight-document.scalar.number-out-of-range' | 'flight-document.syntax.duplicate-key' | 'flight-document.syntax.expected-flow-delimiter' | 'flight-document.syntax.expected-mapping-entry' | 'flight-document.syntax.expected-mapping-key' | 'flight-document.syntax.expected-scalar' | 'flight-document.syntax.expected-value' | 'flight-document.syntax.invalid-document' | 'flight-document.syntax.invalid-escape' | 'flight-document.syntax.mixed-collection' | 'flight-document.syntax.multiple-root-values' | 'flight-document.syntax.root-indentation' | 'flight-document.syntax.tab-character' | 'flight-document.syntax.trailing-flow-comma' | 'flight-document.syntax.trailing-flow-content' | 'flight-document.syntax.unexpected-indentation' | 'flight-document.syntax.unexpected-token' | 'flight-document.syntax.unterminated-flow-mapping' | 'flight-document.syntax.unterminated-quoted-scalar' | 'flight-document.unsupported.alias' | 'flight-document.unsupported.anchor' | 'flight-document.unsupported.block-scalar' | 'flight-document.unsupported.document-separator' | 'flight-document.unsupported.flow-sequence' | 'flight-document.unsupported.tag'>;
|
|
19
21
|
/**
|
|
20
22
|
* Parses the deliberately closed YAML subset that will underlie Flight document text. The module is
|
|
21
23
|
* private because it yields syntax values only; it does not claim or materialize a scene schema.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sceneDocumentYamlSubset.d.ts","sourceRoot":"","sources":["../src/sceneDocumentYamlSubset.ts"],"names":[],"mappings":"AAAA,KAAK,4BAA4B,GAC7B,IAAI,GACJ,OAAO,GACP,MAAM,GACN,MAAM,GACN,4BAA4B,EAAE,GAC9B,8BAA8B,CAAC;AAEnC,UAAU,8BAA8B;IACtC,CAAC,GAAG,EAAE,MAAM,GAAG,4BAA4B,CAAC;CAC7C;AAED,UAAU,8BAA8B;IACtC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,KAAK,EAAE,4BAA4B,CAAC;CAC9C;AAED,UAAU,8BAA8B;IACtC,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,QAAQ,CAAC,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"sceneDocumentYamlSubset.d.ts","sourceRoot":"","sources":["../src/sceneDocumentYamlSubset.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAE5E,KAAK,4BAA4B,GAC7B,IAAI,GACJ,OAAO,GACP,MAAM,GACN,MAAM,GACN,4BAA4B,EAAE,GAC9B,8BAA8B,CAAC;AAEnC,UAAU,8BAA8B;IACtC,CAAC,GAAG,EAAE,MAAM,GAAG,4BAA4B,CAAC;CAC7C;AAED,UAAU,8BAA8B;IACtC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,KAAK,EAAE,4BAA4B,CAAC;CAC9C;AAED,UAAU,8BAA8B;IACtC,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,QAAQ,CAAC,IAAI,EAAE,oCAAoC,CAAC;IACpD,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,KAAK,6BAA6B,GAAG,8BAA8B,GAAG,8BAA8B,CAAC;AAKrG,KAAK,oCAAoC,GAAG,OAAO,CACjD,2BAA2B,EACzB,0CAA0C,GAC1C,2CAA2C,GAC3C,sCAAsC,GACtC,qCAAqC,GACrC,yCAAyC,GACzC,mCAAmC,GACnC,4CAA4C,GAC5C,sCAAsC,GACtC,gDAAgD,GAChD,+CAA+C,GAC/C,6CAA6C,GAC7C,wCAAwC,GACxC,uCAAuC,GACvC,yCAAyC,GACzC,uCAAuC,GACvC,yCAAyC,GACzC,6CAA6C,GAC7C,yCAAyC,GACzC,sCAAsC,GACtC,4CAA4C,GAC5C,8CAA8C,GAC9C,+CAA+C,GAC/C,yCAAyC,GACzC,kDAAkD,GAClD,mDAAmD,GACnD,mCAAmC,GACnC,oCAAoC,GACpC,0CAA0C,GAC1C,gDAAgD,GAChD,2CAA2C,GAC3C,iCAAiC,CACpC,CAAC;AA+CF;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,MAAM,GAAG,6BAA6B,CAc1F"}
|