Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat/prep master #303

Merged
merged 24 commits into from
Jun 18, 2024
Merged

Feat/prep master #303

merged 24 commits into from
Jun 18, 2024

Conversation

SorsOps
Copy link
Member

@SorsOps SorsOps commented Jun 18, 2024

PR Type

Enhancement, Bug fix, Documentation


Description

  • Enhanced NoteNode with Markdown support and edit mode.
  • Refactored CommandPalette to use ReactFlow and simplified event handling.
  • Refactored EditorTab and various hooks to use MobX for state management.
  • Added new design token examples for color scales, dynamic validation, and dynamic naming.
  • Fixed issues with variadic port value setting and node deletion logic.
  • Updated various components and hooks for better readability and maintainability.

Changes walkthrough 📝

Relevant files
Enhancement
12 files
noteNode.tsx
Enhance NoteNode with Markdown support and edit mode.       

packages/graph-editor/src/components/flow/nodes/noteNode.tsx

  • Added Markdown support for note descriptions.
  • Introduced edit mode toggle with an icon button.
  • Updated styles for better UI consistency.
  • +26/-12 
    index.tsx
    Refactor CommandPalette to use ReactFlow and simplify event handling.

    packages/graph-editor/src/components/commandPalette/index.tsx

  • Removed unnecessary reactFlowWrapper prop.
  • Utilized useReactFlow for cursor position.
  • Simplified event listeners for mouse movements.
  • +13/-13 
    index.tsx
    Refactor EditorTab to use MobX and clean up code.               

    packages/ui/src/components/editor/index.tsx

  • Removed unused imports and forwardRef.
  • Updated to use MobX for state management.
  • Cleaned up commented-out code.
  • +13/-16 
    useGetEditor.ts
    Refactor useGetEditor hook to use MobX and simplify example loading.

    packages/ui/src/hooks/useGetEditor.ts

  • Removed Redux dependencies.
  • Refactored to use MobX for state management.
  • Simplified loadExample function.
  • +9/-49   
    index.tsx
    Refactor Index page to use MobX and remove unnecessary props.

    packages/ui/src/pages/index.tsx

  • Removed unnecessary theme prop.
  • Updated to use MobX for state management.
  • +5/-9     
    flatten.ts
    Simplify FlattenNode input schema.                                             

    packages/nodes-design-tokens/src/nodes/flatten.ts

  • Removed variadic schema creation.
  • Updated input type to use array of arrays.
  • +3/-4     
    index.tsx
    Add RefState to MobX global state management.                       

    packages/ui/src/mobx/index.tsx

  • Added RefState class for managing editor references.
  • Updated GlobalState to include refs.
  • +13/-0   
    objectMerge.ts
    Simplify ObjectMergeNode input schema.                                     

    packages/graph-engine/src/nodes/generic/objectMerge.ts

  • Removed variadic schema creation.
  • Updated input type to use array of objects.
  • +3/-3     
    input.ts
    Simplify input node deserialization.                                         

    packages/graph-engine/src/nodes/generic/input.ts

  • Removed unnecessary deserialization of inputs.
  • Simplified input creation logic.
  • +1/-11   
    useCanDeleteNode.ts
    Simplify useCanDeleteNode hook logic.                                       

    packages/graph-editor/src/hooks/useCanDeleteNode.ts

    • Simplified logic for checking if a node can be deleted.
    +2/-4     
    node.tsx
    Make error prop optional in Node wrapper.                               

    packages/graph-editor/src/components/flow/wrapper/node.tsx

    • Made error prop optional.
    +1/-1     
    reactflow.css
    Update handle positions in ReactFlow CSS.                               

    packages/graph-editor/src/css/reactflow.css

  • Updated handle positions to be relative.
  • Added missing top and left properties.
  • +8/-2     
    Documentation
    8 files
    examples.tsx
    Add new design token examples for color scales and dynamic validation.

    packages/ui/src/data/examples/examples.tsx

  • Added new example JSON files for various design token scenarios.
  • Updated the examples array with new entries.
  • +46/-3   
    output.ts
    Add comments and format generic output node.                         

    packages/graph-engine/src/nodes/generic/output.ts

  • Added comments for better code understanding.
  • Minor formatting changes.
  • +3/-2     
    EmptyStateEditor.tsx
    Reorder imports and format EmptyStateEditor.                         

    packages/ui/src/components/EmptyStateEditor.tsx

  • Reordered imports for better readability.
  • Minor formatting changes.
  • +3/-3     
    story.stories.tsx
    Update CommandPalette story to remove unused props.           

    packages/graph-editor/src/components/commandPalette/story.stories.tsx

  • Removed unused reactFlowWrapper prop.
  • Updated story to reflect changes in CommandPalette.
  • +1/-3     
    index.ts
    Reorder imports in Redux selectors.                                           

    packages/ui/src/redux/selectors/index.ts

    • Reordered imports for better readability.
    +1/-1     
    colorCurves.json
    Add color curves example.                                                               

    packages/ui/src/data/examples/colorCurves.json

    • Added new example for color curves.
    +2266/-1
    colorScale.json
    Add color scale example.                                                                 

    packages/ui/src/data/examples/colorScale.json

    • Added new example for color scale.
    +761/-0 
    dynamicNaming.json
    Add dynamic naming example.                                                           

    packages/ui/src/data/examples/dynamicNaming.json

    • Added new example for dynamic naming.
    +377/-0 
    Bug fix
    3 files
    graph.ts
    Fix and enhance variadic port value setting in Graph.       

    packages/graph-engine/src/graph/graph.ts

  • Fixed issue with variadic port value setting.
  • Added type update logic for variadic arrays.
  • +8/-1     
    nodeContextMenu.tsx
    Fix node deletion logic in NodeContextMenu.                           

    packages/graph-editor/src/components/contextMenus/nodeContextMenu.tsx

    • Fixed logic to correctly handle non-deletable nodes.
    +1/-1     
    compare.ts
    Fix missing break statement in compare node.                         

    packages/graph-engine/src/nodes/logic/compare.ts

    • Added missing break statement in switch case.
    +1/-0     
    Dependencies
    1 files
    package.json
    Bump version and add react-markdown dependency.                   

    packages/graph-editor/package.json

    • Bumped version to 2.10.0.
    • Added react-markdown dependency.
    +4/-3     

    💡 PR-Agent usage:
    Comment /help on the PR to get a list of all available PR-Agent tools and their descriptions

    SorsOps and others added 23 commits January 8, 2024 14:18
    * Fix issue with squash node not indexing correctly
    
    * Add changeset
    Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
    Fix typing with the array subgraph
    Allow creating array input types
    …o feat/array-input-support
    
    # Conflicts:
    #	packages/graph-editor/src/components/panels/inputs/dynamicInputs.tsx
    #	packages/graph-engine/src/nodes/array/arraySubgraph.ts
    …o feat/array-input-support
    
    # Conflicts:
    #	packages/graph-editor/src/components/commandPalette/index.tsx
    Fix issues with variadic passing through type for any array.
    Prep for the major overhaul
    Add back in examples
    # Conflicts:
    #	packages/graph-editor/src/components/flow/nodes/output/cssMapNode.tsx
    #	packages/graph-editor/src/components/flow/nodes/sets/squashNode.tsx
    #	packages/graph-editor/src/editor/index.tsx
    #	packages/graph-editor/src/index.css
    #	packages/graph-engine/package.json
    #	packages/graph-engine/src/nodes/color/contrastingFromSet.ts
    #	packages/ui/src/components/editorMenu/index.tsx
    #	yarn.lock
    Copy link

    changeset-bot bot commented Jun 18, 2024

    🦋 Changeset detected

    Latest commit: 35f039c

    The changes in this PR will be included in the next version bump.

    This PR includes changesets to release 4 packages
    Name Type
    @tokens-studio/graph-engine Major
    @tokens-studio/graph-editor Major
    @tokens-studio/graph-engine-nodes-audio Major
    @tokens-studio/graph-engine-nodes-design-tokens Major

    Not sure what this means? Click here to learn what changesets are.

    Click here if you're a maintainer who wants to add another changeset to this PR

    @github-actions github-actions bot added documentation Improvements or additions to documentation enhancement New feature or request Bug fix Review effort [1-5]: 4 labels Jun 18, 2024
    Copy link
    Contributor

    PR Reviewer Guide 🔍

    ⏱️ Estimated effort to review [1-5] 4
    🧪 Relevant tests No
    🔒 Security concerns No
    ⚡ Key issues to review Possible Bug:
    In nodeContextMenu.tsx, the condition for checking if a node is deletable seems to be inverted. The condition if (!isDeletable) should likely be if (isDeletable) to correctly handle the deletion logic.
    Code Consistency:
    In useCanDeleteNode.ts, the condition simplification is good, but ensure it aligns with all use cases where the node's deletability is checked.
    Redundant Code:
    In output.ts of the graph-engine, the comment about creating outputs immediately seems misplaced or outdated. If it's crucial, it should be clarified or updated.
    Performance Concern:
    In graph.ts, the method for setting the value of a variadic port could be optimized. The current implementation might lead to performance issues for large arrays due to the use of concat.

    Copy link
    Contributor

    PR Code Suggestions ✨

    CategorySuggestion                                                                                                                                    Score
    Possible bug
    Use the same function reference for adding and removing event listeners

    Ensure that the useEffect cleanup function correctly removes the event listener by
    referencing the exact function used in addEventListener.

    packages/graph-editor/src/components/commandPalette/index.tsx [106]

    -return () => document.removeEventListener('mousemove', move);
    +const moveHandler = debounce((e) => {
    +  cursorPositionRef.current = {
    +    x: e.clientX,
    +    y: e.clientY,
    +  };
    +}, 100);
    +document.addEventListener('mousemove', moveHandler);
    +return () => document.removeEventListener('mousemove', moveHandler);
     
    Suggestion importance[1-10]: 10

    Why: This suggestion correctly identifies a potential bug and provides a solution to ensure the event listener is properly removed, which is crucial for preventing memory leaks and unexpected behavior.

    10
    Add error handling for null editor instances

    Replace the direct use of globalState.refs.editor.get() with a null check to ensure that
    the editor instance exists before performing operations on it. This will prevent potential
    runtime errors if the editor is not initialized.

    packages/ui/src/hooks/useGetEditor.ts [10-12]

     const editor = globalState.refs.editor.get();
     if (!editor) {
    +  console.error('Editor instance is not available.');
       return;
     }
     
    Suggestion importance[1-10]: 8

    Why: Adding error handling for null editor instances is a good practice to prevent potential runtime errors. The suggestion is contextually accurate and improves the robustness of the code.

    8
    Add null check before setting the editor reference in global state

    Ensure the editor variable is checked for null or undefined before setting it in
    globalState.refs.editor.set(editor). This prevents setting an invalid reference in the
    global state.

    packages/ui/src/pages/index.tsx [30-33]

     const editor = globalState.refs.editor.get();
     const ref = useCallback((editor) => {
    -  globalState.refs.editor.set(editor);
    +  if (editor) {
    +    globalState.refs.editor.set(editor);
    +  } else {
    +    console.error('Invalid editor reference');
    +  }
     }, []);
     
    Suggestion importance[1-10]: 8

    Why: Adding a null check before setting the editor reference in the global state is a good practice to avoid setting invalid references. This suggestion enhances the reliability of the code.

    8
    Performance
    Debounce mousemove event to enhance performance

    Consider debouncing the mousemove event handler to improve performance and reduce the
    number of updates, especially in complex applications.

    packages/graph-editor/src/components/commandPalette/index.tsx [105]

    -document.addEventListener('mousemove', move);
    +import { debounce } from 'lodash';
    +document.addEventListener('mousemove', debounce(move, 100));
     
    Suggestion importance[1-10]: 9

    Why: Debouncing the mousemove event handler is a valuable performance improvement, particularly in complex applications where frequent updates can be costly.

    9
    Possible issue
    Standardize the data types of values in 'points' arrays to prevent type inconsistencies

    Ensure consistent data types for the 'points' arrays across all curve definitions.
    Currently, some 'points' arrays contain integers and others contain numbers. This
    inconsistency can lead to unexpected behavior or errors in data processing. It's
    recommended to standardize on one data type, preferably 'number' to accommodate fractional
    values.

    packages/ui/src/data/examples/colorCurves.json [14-28]

     "points": [
         [
    -        0,
    -        0
    +        0.0,
    +        0.0
         ],
         [
             0.4375,
    -        1
    +        1.0
         ],
         [
    -        1,
    -        0
    +        1.0,
    +        0.0
         ],
         [
    -        1,
    -        1
    +        1.0,
    +        1.0
         ]
     ]
     
    Suggestion importance[1-10]: 9

    Why: The suggestion correctly identifies a potential issue with data type inconsistency in the 'points' arrays, which could lead to unexpected behavior. Standardizing on 'number' is a good practice to ensure consistency and accommodate fractional values.

    9
    Error handling
    Add fallback for position conversion to handle potential errors

    Add error handling for the screenToFlowPosition method to manage cases where the
    conversion might fail or return unexpected results.

    packages/graph-editor/src/components/commandPalette/index.tsx [87]

    -position: reactflow.screenToFlowPosition(cursorPositionRef.current),
    +position: reactflow.screenToFlowPosition(cursorPositionRef.current) || { x: 0, y: 0 },
     
    Suggestion importance[1-10]: 8

    Why: Adding error handling for the screenToFlowPosition method is a good practice to ensure robustness, especially if the conversion might fail or return unexpected results.

    8
    Data integrity
    Add "required" fields to JSON schemas to ensure essential properties are present

    For better data integrity and to avoid potential runtime errors, consider adding
    "required" fields in the JSON schemas where necessary. This ensures that essential
    properties must be present and correctly formatted.

    packages/ui/src/data/examples/colorScale.json [10-13]

     "type": {
         "$id": "https://schemas.tokens.studio/color.json",
         "title": "Color",
    -    "type": "string"
    +    "type": "string",
    +    "required": ["title", "type"]
     }
     
    Suggestion importance[1-10]: 8

    Why: Adding "required" fields to JSON schemas is important for ensuring data integrity and avoiding runtime errors. This suggestion addresses a significant aspect of data validation.

    8
    Enhancement
    Improve type safety with type checking before casting

    Use TypeScript's type assertion to ensure type safety when casting file to
    SerializedGraph. This helps maintain strong typing and reduces potential runtime errors.

    packages/ui/src/hooks/useGetEditor.ts [16]

    -await editor.loadRaw(file as SerializedGraph)
    +if (file instanceof SerializedGraph) {
    +  await editor.loadRaw(file)
    +} else {
    +  console.error('File is not an instance of SerializedGraph');
    +}
     
    Suggestion importance[1-10]: 7

    Why: The suggestion improves type safety by checking the type before casting, which is beneficial. However, the existing code already uses TypeScript's type assertion, which is generally safe if used correctly.

    7
    Standardize the precision of position values in JSON data

    Ensure consistent formatting and precision for the ui.position.x and ui.position.y values
    across different nodes to maintain a uniform layout and avoid minor visual discrepancies.

    packages/ui/src/data/examples/audio.json [35-36]

    -"ui.position.x": -391.3865505270938,
    -"ui.position.y": 194.07456979450214
    +"ui.position.x": -391.39,
    +"ui.position.y": 194.07
     
    Suggestion importance[1-10]: 5

    Why: Standardizing the precision of position values in JSON data can improve visual consistency, but it is a minor enhancement. The suggestion is correct but not crucial.

    5
    Maintainability
    Standardize the naming convention for "id" fields to improve readability

    Consider using a consistent naming convention for the "id" fields. Currently, the "id"
    fields use a mix of UUIDs and more descriptive names. Using a consistent format, either
    all UUIDs or descriptive names, can improve the readability and maintainability of the
    JSON structure.

    packages/ui/src/data/examples/colorScale.json [4-516]

    -"id": "30204297-03c6-480b-82c8-5ba44bdbf06d",
    -"id": "1cb6bbac-107e-4247-9d03-585631c435ad",
    -"id": "17c7dea5-5b17-417b-a93d-cf3246443ef3"
    +"id": "node-1",
    +"id": "node-2",
    +"id": "node-3"
     
    Suggestion importance[1-10]: 7

    Why: Standardizing the naming convention for "id" fields can improve readability and maintainability, but it is not crucial for functionality. The suggestion is valid but not critical.

    7
    Use references for repeated nested objects to reduce redundancy and improve management

    To reduce redundancy and improve data management, consider using references for repeated
    nested objects in the JSON structure. This approach can help manage large JSON files more
    efficiently by reusing existing definitions.

    packages/ui/src/data/examples/colorScale.json [10-33]

    -"type": {
    +"ColorType": {
         "$id": "https://schemas.tokens.studio/color.json",
         "title": "Color",
         "type": "string"
     },
    -"type": {
    +"NumberType": {
         "$id": "https://schemas.tokens.studio/number.json",
         "title": "Number",
         "type": "number"
     }
     
    Suggestion importance[1-10]: 7

    Why: Using references for repeated nested objects can reduce redundancy and improve data management, but it is a moderate improvement and not critical for the current functionality.

    7
    Abstract repeated schema URLs into constants to simplify updates and enhance clarity

    To enhance the maintainability and scalability of the JSON structure, consider abstracting
    repeated schema URLs into a constants section at the top of the file. This change would
    make updates to schema URLs easier and the JSON structure cleaner.

    packages/ui/src/data/examples/colorScale.json [11-235]

    -"$id": "https://schemas.tokens.studio/color.json",
    -"$id": "https://schemas.tokens.studio/number.json",
    -"$id": "https://schemas.tokens.studio/string.json"
    +"$id": "SCHEMA_COLOR",
    +"$id": "SCHEMA_NUMBER",
    +"$id": "SCHEMA_STRING"
     
    Suggestion importance[1-10]: 6

    Why: Abstracting repeated schema URLs into constants can simplify updates and enhance clarity, but it is a minor improvement and not essential for the current functionality.

    6

    @SorsOps SorsOps merged commit bd0527e into major/strong-typing Jun 18, 2024
    2 checks passed
    @SorsOps SorsOps deleted the feat/prep-master branch June 18, 2024 19:48
    SorsOps added a commit that referenced this pull request Jun 18, 2024
    * Stash
    
    * Stash
    
    * WIP
    
    * Cleanup inline nodes and re-enable array nodes
    
    * Add drop panel to show windows
    
    * Remove settings dialog
    
    * Fix bug with values sticking if selecting between two nodes of the same type
    
    * Fix not reinvalidating the node settings
    
    * Fix issue with duplication
    
    * Fix audio source
    
    * Update UI package and simplify dialog
    
    * Cleanup file explorer
    
    * Update files system
    
    * Add support for audio buffer conversions
    
    * Fix changed bufferschema refs in audio pkg
    
    * add ceil and floor nodes
    
    * Subgraphs mostly working
    
    * Cleanup not selecting the correct graph on tab transition
    
    * Cleanup typescript types
    
    * Cleanup UI and fix deserialization of edges
    
    * Additional UI cleanup
    
    * Fix padding on settings
    
    * Minor update on documentation
    
    * Cleanup on styles
    
    * Fix nodenext resolution
    
    * Cleanup ts config
    
    * Cleanup ts import for consistency
    
    * Replace all .ts? imports
    
    * Fix issue with typing
    
    * Add assets for apple touch startup
    
    * Add initial k8s for mailcatcher for local dev
    
    * Add docker-compose for open telemetry for nextjs
    
    * Cleanup styles
    
    * Add postgres for persistence
    
    * Fix circular import
    
    * Fix menu Item boolean value issue
    
    * Remove console log
    
    * Add prometheus and otel config
    
    * Set default to be darktheme
    
    * Cleanup menubar rest render spread
    
    * Move controls for token arrays to the token package
    
    * Cleanup old redux models
    
    * Remove global css usage
    
    * Set darktheme to be the default and remove global css usage
    
    * Remove old output providers from preview. They will need to be reworked to handle routing the data
    
    * Add support for client side storage providers
    
    * Add mailcatcher and postgres to docker-compose
    
    * Add otel instrumentation
    
    * Update packge for otel
    
    * Setup ory kratos, replace mailcatcher with mailslurper
    
    * Add tracing for debugging
    
    * Restyle node (#245)
    
    * restyle node
    
    * restyle node
    
    * restyle node
    
    * remove unused background
    
    * remove unused background
    
    * remove string from import
    
    * fix pointer events on handle
    
    * Fix storybook setup
    
    * add rail
    
    * style graph editor
    
    * update node style to have more contrast
    
    * add exp and sqrt node
    
    * Add initial scaffold for backend
    
    * change icon for type any
    
    * mute down handle background
    
    * fix transparent background on panels
    
    * Fix graph loading
    
    * Swap ui to use scss and remove unnecessary styling
    
    * Add scss support for Marco and fix non .js imports
    
    * fix reference to styles.css to .scss
    
    * Add example of barebones implementation of the graph-editor
    
    * Cleanup file
    
    * Fix issue with zustand not being the same
    
    * Extend color ranges and fix colors showing up correctly in port previews
    
    * Remove console log during graph serialization
    
    * Update backend to use prisma, add in DI, setup ory kratos connection
    
    * Add oathkeeper and kratos setup
    
    * Add next link for rail
    
    * Remove drag initiator styling
    
    * Add generated SDK
    
    * Update backend package
    
    * Remove copied changelog
    
    * Get backend docker build working
    
    * Move docker resources and add a readme entry for running the docker compose
    
    * Remove all icon packages except for iconoir
    
    * Remove import assertion for importing json.  We assume this is unnecessary
    
    * Remove DB, we will assume migration as needed
    
    * Replace graphlib with later version
    
    * Ignore users local db
    
    * Move docker compose env to root
    
    * Graphlib replace
    
    * Optimize icon usage
    
    * Add basic keto client, setup proper documentation
    
    * Add initial controllers
    
    * Update SDK
    
    * Add SDK to UI
    
    * Cleanup docs
    
    * Update edge docs
    
    * Fix oathkeeper origins
    
    * Expand models
    
    * Ignore noisy generated changes
    
    * Ignore noisy files
    
    * Export typing on the serialized graph
    
    * Clean cors
    
    * Remove cors as expected to be handled externally
    
    * Update kratos
    
    * Fix ref
    
    * Untrack generated
    
    * ignore json import which should be external
    
    * Persist dynamic type
    
    * Integrate API
    
    * Remove console log
    
    * Remove prometheus
    
    * Add example for preview
    
    * add preview nodes
    
    * Force generation on build
    
    * add viewport saving, math expression visualisation, default values for number
    
    * add gradient stops and gradient handle positions
    
    * Setup storybook test
    
    * remove gradient handles, add gradient schema
    
    * Export util functions
    
    * Don't require typing on input unless its intentionally dynamic
    
    * Add storybook example
    
    * Add delayed updates to controls, fix issue with choosing a type and not having the control update
    
    * Fix non standard curve change that was breaking preview
    
    * Fix issue with token set controls and expose them correctly
    
    * Fix token saving not serializing correctly
    
    * Remove live update of position annotation, was causing unnecessary recalc
    
    * Clean up hot key usage and first pass at fixing subgraphs
    
    * Add manifest for PWA in the future
    
    * Cleanup UI and start app router migration
    
    * Clean up docs
    
    * Mention initial db setup for prisma
    
    * Setup for gitpod
    
    * Cleanup build type errors
    
    * More gitpod setup
    
    * Additional setup for app router conversion
    
    * Fix for Marco
    
    * Fix style ordering
    
    * Update graph-engine to use tsup over rollup. Remove aliasing as the esbuild does not seem to respect the alias transform
    
    * Finish converting other node packages to use tsup
    
    * Fix missing tsx for tsup
    
    * Fix issue with token preview if undefined
    
    * Fix menu bombing due to nextjs removing svg loader
    
    * Remove old rollup file
    
    * Continued rollup removal
    
    * add new colors for types on handles
    
    * change size of handle icon
    
    * Update tsup configs
    
    * Fix type problem with engine bundling
    
    * Fix build splitting
    
    * Cleanup hotkeys
    
    * Fix external sanitize usage
    
    * add radix ui colors
    
    * Cleanup docker build
    
    * Update dep for design-tokens
    
    * Fix host name on deploy
    
    * Fix for readiness probe
    
    * Stop redirecting on index
    
    * Remove second level domain
    
    * Revert
    
    * Setup lit example of context usage
    
    * Add typograph preview specifics
    
    * Add building the backend and docs to workflow
    
    * Make the docs use the same dev command as everything else
    
    * Fix variadic typing for Marco
    
    * Change build command for documentation
    
    * Allow dynamic inputs for array map subgraph
    
    * Fix issue with subgraph typing for tokens
    
    * Minor fix to display the font size
    
    * Add cypress testing to graph-editor
    
    * Deploy graph docs
    
    * Re add up to date position changes
    
    * Add basic vector 2 support
    
    * Simplify typing on arrays
    
    * Cleanup from changes
    
    * Add setting to hide minimap and to show the title in the subgraph
    
    * Fix finding nodes
    
    * Improve searching
    
    * Add copy value to port
    
    * Stop subgraph from gathering input values every loop
    
    * Add reduce subgraph
    
    * Expose convert color
    
    * Fix poline
    
    * Make series consistent with naming
    
    * Add advanced blending to design tokens
    
    * Cleanup schemas on token arrays
    
    * Fix cases where input is not detected
    
    * Add secret and deployment
    
    * Add alignment and distribution
    
    * Add better support for network messages
    
    * Fix bug where we don't disconnect an edge and minor cleanup in tests
    
    * Complete subgraph creation , convert output to multi output
    
    * Cleanup typing on graph
    
    * Update docs
    
    * Update docs
    
    * Fix issue with subgraph not reconnecting nodes
    
    * Fix grouping
    
    * Start releasing on dockerhub
    
    * Remove tauri
    
    * Update versions
    
    * Fix ignore
    
    * Update Gimlet
    
    * Update deployment for docs and backend
    
    * fix bugs
    
    * rm log
    
    * fix input inputs
    
    * add dimension
    
    * 250: fix shift+k (#251)
    
    * fix(250): Fix quick search triggered in input fields
    Co-authored-by: SorsOps <80043879+sorsOps@users.noreply.github.com>
    
    * Reorder variadic ports (#258)
    
    
    
    ---------
    
    Co-authored-by: SorsOps <80043879+sorsOps@users.noreply.github.com>
    
    * fix color wheel (#261)
    
    * Show value preview in nodes (#257)
    
    * Show value preview in nodes
    
    * Add dot for variadic and other improvements
    
    * Fix edge case with object variadics and allow toggling on and off of inline values
    
    * Merge george's changes
    
    ---------
    
    Co-authored-by: SorsOps <80043879+sorsOps@users.noreply.github.com>
    
    * fix valid check (#263)
    
    * Feat/debugger (#259)
    
    * Add debugger and remove flamegraph
    
    * add xyz65 to color convert
    
    * fix flatten node
    
    * add flatten alpha node
    
    * fix(1013): Subgraph ouput
    
    * Setup alpha and beta deploys (#270)
    
    * Hide unfinished work (#271)
    
    * Setup alpha and beta deploys
    
    * Hide unfinished work
    
    * Fix arrayMap and arrayReduce
    
    * fix(273): Fix input output execution
    
    * Copy type to outputs
    
    * fix(273): Fix input output execution (#274)
    
    * fix(273): Fix input output execution
    
    * Copy type to outputs
    
    * Revert "fix(273): Fix input output execution (#274)" (#275)
    
    This reverts commit 6d14dbc.
    
    * Revert "Fix input output execution" (#277)
    
    * feat: Update input.ts to handle dynamic type changes in Input.setValue()
    
    * Feat/documentation (#279)
    
    * Add script to generate documentation
    Remove 'NodeTypes` in favor of direct values for the node types
    Change input/output nodes to not clear and instead diff values
    Fixed some issues with flexbox of the node wrapper
    Add in an array indicator
    Fixed subgraph to be reactive to additional outputs
    Fix find menu
    
    * add contrast alpha node (#272)
    
    * add contrast alpha node
    
    * Remove console logs
    
    ---------
    
    Co-authored-by: SorsOps <80043879+sorsOps@users.noreply.github.com>
    
    * UI rework (#278)
    
    * add subtitle and style ui
    
    * Fix select and download
    
    * Add constant for graph id
    
    ---------
    
    Co-authored-by: Marco Christian Krenn <marco.krenn@gmail.com>
    
    * prevent delete when annotation is present (#281)
    
    * Fix inputs which are any type to be overridden with new values. (#282)
    
    Fix typing with the array subgraph
    Allow creating array input types
    
    * add colors to legend (#283)
    
    * Feat/token sets (#284)
    
    * Fix inputs which are any type to be overridden with new values.
    Fix typing with the array subgraph
    Allow creating array input types
    
    * Expose additional vars in the array map and add the ability to convert to a token set
    
    * Fix/command k (#287)
    
    * Fix inputs which are any type to be overridden with new values.
    Fix typing with the array subgraph
    Allow creating array input types
    
    * Expose additional vars in the array map and add the ability to convert to a token set
    
    * Fix command palette messing up positions
    
    * Fix contrasting alpha import
    
    * Add markdown support
    
    * Change objectmerge and flatten to not  be variadic
    
    * fix: input bug
    
    * Remove console logs
    
    * Remove console logs
    
    * Fix color wheel (#300)
    
    * fix color wheel calculation
    
    * add changeset
    
    * fix position reference (#298)
    
    * fix pos reference
    
    * spread annotations
    
    * Feat/prep master (#303)
    
    * Fix can delete.
    Fix issues with variadic passing through type for any array.
    Prep for the major overhaul
    Add back in examples
    
    * Setup gimlet for deploys
    
    ---------
    
    Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
    Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
    Co-authored-by: popdrazvan <popdrazvan@gmail.com>
    Co-authored-by: Vaibhav Bhosale <mail2vsbhosale@gmail.com>
    Co-authored-by: Jan Six <six7@github.com>
    Co-authored-by: Jan Six <six.jan@gmail.com>
    
    ---------
    
    Co-authored-by: Marco Christian Krenn <marco.krenn@gmail.com>
    Co-authored-by: popdrazvan <popdrazvan@gmail.com>
    Co-authored-by: georgebuciuman <georgebuciuman@gmail.com>
    Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
    Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
    Co-authored-by: Vaibhav Bhosale <mail2vsbhosale@gmail.com>
    Co-authored-by: Jan Six <six7@github.com>
    Co-authored-by: Jan Six <six.jan@gmail.com>
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Labels
    Bug fix documentation Improvements or additions to documentation enhancement New feature or request Review effort [1-5]: 4
    Projects
    None yet
    Development

    Successfully merging this pull request may close these issues.

    4 participants