Three stores, three importers and three pickers that differ only in their type are one of each (#85)
Refactoring round one: HttpFontStore/HttpSoundStore/HttpTextureStore collapse into a generic HttpFileStore over a FileStore contract; fontImport/soundImport/textureImport share assetImport with an ImportKind per sort; ImagePicker/FontPicker/SoundPicker sit on FilePicker and describe only their row. The group/comment drag logic leaves GraphCanvas for annotationDrag.ts (with its own unit test), declaredRows.ts replaces the duplicated row build in particles.ts and shaders.ts, and dead code in font/sound/compile/emission/transform/actions is gone. README: asset list, check count 958, the two-job CI, the Scenes wiki page. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
1 parent
15bdfdf07a
commit
cc6db5f350
42 files changed
+1375
-1650
No files matched your search
@@ -34,7 +34,8 @@ import {
|
||||
shaderParamDefs,
|
||||
} from '../../src/core/properties/shaders';
|
||||
import { inlineInputs } from '../../src/core/graph/NodeRegistry';
|
||||
import { compileShader, shaderFingerprint } from '../../src/core/shader/compile';
|
||||
import { graphFingerprint } from '../../src/core/graph/Graph';
|
||||
import { compileShader } from '../../src/core/shader/compile';
|
||||
import {
|
||||
DEFAULT_EDGE,
|
||||
EDGE_PARAM,
|
||||
@@ -720,16 +721,16 @@ describe('the fingerprint the shader library caches on', () => {
|
||||
const f = makeProject();
|
||||
const s = shaderEditor(f);
|
||||
const n = buildAdjustColors(s);
|
||||
const before = shaderFingerprint(s.asset().graph);
|
||||
const before = graphFingerprint(s.asset().graph);
|
||||
f.stack.execute(new MoveNodeCommand(s.id, n.bright, 300, 200));
|
||||
f.stack.execute(new CollapseNodesCommand(s.id, [n.bright, n.luma], true));
|
||||
f.stack.execute(new FoldEdgeCommand(s.id, s.asset().graph.edges[0]!.id, true));
|
||||
expect(s.asset().graph.nodes.find((x) => x.id === n.bright)).toMatchObject({ x: 300, collapsed: true });
|
||||
expect(shaderFingerprint(s.asset().graph)).toBe(before);
|
||||
expect(graphFingerprint(s.asset().graph)).toBe(before);
|
||||
f.stack.execute(new SetNodeParamCommand(s.id, n.shifted, 'b', 0.25));
|
||||
const withParam = shaderFingerprint(s.asset().graph);
|
||||
const withParam = graphFingerprint(s.asset().graph);
|
||||
expect(withParam).not.toBe(before);
|
||||
s.link(n.brightness, 'value', n.output, 'alpha');
|
||||
expect(shaderFingerprint(s.asset().graph)).not.toBe(withParam);
|
||||
expect(graphFingerprint(s.asset().graph)).not.toBe(withParam);
|
||||
});
|
||||
});
|
||||
Reference in new issue
Block a user