Skip to content

Commit

Permalink
Simplify + Merge branch 'main' of git@github.com:SYBIOTE/behave-graph…
Browse files Browse the repository at this point in the history
….git
  • Loading branch information
bhouston committed Jul 22, 2023
2 parents 674e129 + 2bb5a96 commit cfe6dbd
Show file tree
Hide file tree
Showing 9 changed files with 34 additions and 92 deletions.
2 changes: 1 addition & 1 deletion apps/export-node-spec/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ export const main = async () => {
console.log({ registry });

const errorList: string[] = [];
errorList.push(...validateNodeRegistry({ registry }));
errorList.push(...validateNodeRegistry(registry));
if (errorList.length > 0) {
Logger.error(`${errorList.length} errors found:`);
errorList.forEach((errorText, errorIndex) => {
Expand Down
1 change: 1 addition & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions packages/flow/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
},
"dependencies": {
"@behave-graph/core": "*",
"@behave-graph/scene": "*",
"@fortawesome/fontawesome-svg-core": "^6.1.2",
"@fortawesome/free-solid-svg-icons": "^6.1.2",
"@fortawesome/react-fontawesome": "^0.2.0",
Expand Down
14 changes: 10 additions & 4 deletions packages/flow/src/components/Flow.tsx
Original file line number Diff line number Diff line change
@@ -1,15 +1,21 @@
import { GraphJSON } from '@behave-graph/core';
import React from 'react';
import {
DefaultLogger,
GraphJSON,
IRegistry,
ManualLifecycleEventEmitter,
registerCoreProfile
} from '@behave-graph/core';
import React, { useMemo } from 'react';
import { Background, BackgroundVariant, ReactFlow } from 'reactflow';

import { useBehaveGraphFlow } from '../hooks/useBehaveGraphFlow.js';
import { useCoreRegistry } from '../hooks/useCoreRegistry.js';
import { useFlowHandlers } from '../hooks/useFlowHandlers.js';
import { useGraphRunner } from '../hooks/useGraphRunner.js';
import { useNodeSpecJson } from '../hooks/useNodeSpecJson.js';
import CustomControls from './Controls.js';
import { Examples } from './modals/LoadModal.js';
import { NodePicker } from './NodePicker.js';
import { useRegistry } from '../hooks/useRegistry.js';

type FlowProps = {
initialGraph: GraphJSON;
Expand All @@ -20,7 +26,7 @@ export const Flow: React.FC<FlowProps> = ({
initialGraph: graph,
examples
}) => {
const registry = useCoreRegistry();
const registry = useRegistry();

const specJson = useNodeSpecJson(registry);

Expand Down
17 changes: 0 additions & 17 deletions packages/flow/src/hooks/useCoreRegistry.ts

This file was deleted.

49 changes: 0 additions & 49 deletions packages/flow/src/hooks/useDependencies.ts

This file was deleted.

35 changes: 18 additions & 17 deletions packages/flow/src/hooks/useRegistry.ts
Original file line number Diff line number Diff line change
@@ -1,25 +1,26 @@
import {
DefaultLogger,
getCoreNodesMap,
getCoreValuesMap,
IRegistry,
ManualLifecycleEventEmitter,
memo
registerCoreProfile
} from '@behave-graph/core';
import { useState } from 'react';

export const createRegistry = memo<IRegistry>(() => {
return {
nodes: getCoreNodesMap(),
values: getCoreValuesMap(),
dependencies: {
logger: new DefaultLogger(),
lifecycleEventEmitter: new ManualLifecycleEventEmitter()
}
};
});
import { DummyScene, registerSceneProfile } from '@behave-graph/scene';
import { useMemo } from 'react';

export const useRegistry = () => {
const [registry] = useState<IRegistry>(() => createRegistry());
return registry;
return useMemo<IRegistry>(
() =>
registerSceneProfile(
registerCoreProfile({
values: {},
nodes: {},
dependencies: {
ILogger: new DefaultLogger(),
ILifecycleEventEmitter: new ManualLifecycleEventEmitter(),
IScene: new DummyScene()
}
})
),
[]
);
};
3 changes: 1 addition & 2 deletions packages/flow/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,9 @@ export * from './hooks/useChangeNodeData.js';
export * from './hooks/useOnPressKey.js';
export * from './hooks/useFlowHandlers.js';
export * from './hooks/useGraphRunner.js';
export * from './hooks/useDependencies.js';
export * from './hooks/useBehaveGraphFlow.js';
export * from './hooks/useNodeSpecJson.js';
export * from './hooks/useCoreRegistry.js';
export * from './hooks/useRegistry.js';
export * from './hooks/useCustomNodeTypes.js';
export * from './hooks/useMergeMap.js';

Expand Down
4 changes: 2 additions & 2 deletions packages/flow/src/util/getNodeSpecJSON.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { memo, NodeSpecJSON, writeNodeSpecsToJSON } from '@behave-graph/core';

import { createRegistry } from '../hooks/useRegistry.js';
import { useRegistry } from '../hooks/useRegistry.js';

export const getNodeSpecJSON = memo<NodeSpecJSON[]>(() =>
writeNodeSpecsToJSON(createRegistry())
writeNodeSpecsToJSON(useRegistry())
);

0 comments on commit cfe6dbd

Please sign in to comment.