gitextract_n612u4xs/ ├── .editorconfig ├── .eslintignore ├── .eslintrc.js ├── .gitattributes ├── .github/ │ └── workflows/ │ ├── publish.yml │ └── test.yml ├── .gitignore ├── .husky/ │ └── pre-commit ├── .vscode/ │ ├── extensions.json │ ├── launch.json │ ├── settings.json │ └── tasks.json ├── .yarn/ │ ├── patches/ │ │ ├── @uiw-codemirror-extensions-basic-setup-npm-4.23.10-953e998a73.patch │ │ └── @uiw-react-codemirror-npm-4.23.10-2db625ca86.patch │ └── releases/ │ └── yarn-4.2.1.cjs ├── .yarnrc.yml ├── cypress/ │ ├── e2e/ │ │ └── Playground.cy.ts │ ├── fixtures/ │ │ └── example.json │ ├── support/ │ │ ├── commands.ts │ │ ├── component-index.html │ │ ├── component.ts │ │ └── e2e.ts │ └── tsconfig.json ├── cypress.config.ts ├── drawio/ │ ├── node-process.drawio │ └── observabilty-improvements.drawio ├── package.json ├── packages/ │ ├── core/ │ │ ├── .gitignore │ │ ├── package.json │ │ ├── src/ │ │ │ ├── Application.test.ts │ │ │ ├── Application.ts │ │ │ ├── ComputerFactory.test.ts │ │ │ ├── ComputerFactory.ts │ │ │ ├── Diagram.test.ts │ │ │ ├── Diagram.ts │ │ │ ├── DiagramBuilder.test.ts │ │ │ ├── DiagramBuilder.ts │ │ │ ├── DiagramQuery.ts │ │ │ ├── ExecutableDiagram.ts │ │ │ ├── ExecutionMemory.test.ts │ │ │ ├── ExecutionMemory.ts │ │ │ ├── ExecutionMemoryFactory.test.ts │ │ │ ├── ExecutionMemoryFactory.ts │ │ │ ├── ExecutionResult.ts │ │ │ ├── Executor.test.ts │ │ │ ├── Executor.ts │ │ │ ├── ExecutorFactory.ts │ │ │ ├── InputDevice.test.ts │ │ │ ├── InputDevice.ts │ │ │ ├── ItemWithParams/ │ │ │ │ ├── ItemWithParams.test.ts │ │ │ │ ├── ItemWithParams.ts │ │ │ │ ├── JSTransform.ts │ │ │ │ ├── ParamEvaluator.ts │ │ │ │ ├── StringableParamEvaluator.ts │ │ │ │ └── index.ts │ │ │ ├── LinkGuesser.ts │ │ │ ├── NodeDescriptionFactory.test.ts │ │ │ ├── NodeDescriptionFactory.ts │ │ │ ├── NodeRunError.ts │ │ │ ├── NodeRunnerContext.ts │ │ │ ├── ObserverController.test.ts │ │ │ ├── ObserverController.ts │ │ │ ├── OutputDevice.test.ts │ │ │ ├── OutputDevice.ts │ │ │ ├── Param/ │ │ │ │ ├── Cast.ts │ │ │ │ ├── Evaluation.ts │ │ │ │ ├── Param.ts │ │ │ │ ├── casts/ │ │ │ │ │ ├── numberCast.ts │ │ │ │ │ └── stringCast.ts │ │ │ │ ├── evaluations/ │ │ │ │ │ ├── jsExpressionEvaluation.ts │ │ │ │ │ ├── jsFunctionEvaluation.ts │ │ │ │ │ ├── jsonEvaluation.ts │ │ │ │ │ └── stringListEvaluation.ts │ │ │ │ └── index.ts │ │ │ ├── PositionGuesser.ts │ │ │ ├── Registry.ts │ │ │ ├── computers/ │ │ │ │ ├── Aggregate.ts │ │ │ │ ├── Anonymize.ts │ │ │ │ ├── Await.test.ts │ │ │ │ ├── Await.ts │ │ │ │ ├── Clone.test.ts │ │ │ │ ├── Clone.ts │ │ │ │ ├── Comment.test.ts │ │ │ │ ├── Comment.ts │ │ │ │ ├── ConsoleLog.test.ts │ │ │ │ ├── ConsoleLog.ts │ │ │ │ ├── Create.test.ts │ │ │ │ ├── Create.ts │ │ │ │ ├── Describe.test.ts │ │ │ │ ├── Describe.ts │ │ │ │ ├── Fake.ts │ │ │ │ ├── FilterMap.ts │ │ │ │ ├── FlatMap.ts │ │ │ │ ├── If.ts │ │ │ │ ├── Ignore.test.ts │ │ │ │ ├── Ignore.ts │ │ │ │ ├── Input.test.ts │ │ │ │ ├── Input.ts │ │ │ │ ├── InstantThrow.test.ts │ │ │ │ ├── InstantThrow.ts │ │ │ │ ├── Log.test.ts │ │ │ │ ├── Log.ts │ │ │ │ ├── LoopBack.ts │ │ │ │ ├── LoopStart.ts │ │ │ │ ├── MakeSet.ts │ │ │ │ ├── Map.test.ts │ │ │ │ ├── Map.ts │ │ │ │ ├── Merge.test.ts │ │ │ │ ├── Merge.ts │ │ │ │ ├── Output.test.ts │ │ │ │ ├── Output.ts │ │ │ │ ├── Pass.test.ts │ │ │ │ ├── Pass.ts │ │ │ │ ├── RemoveProperties.ts │ │ │ │ ├── Request.test.ts │ │ │ │ ├── Request.ts │ │ │ │ ├── RequestLoopByOffset.ts │ │ │ │ ├── RequestLoopByToken.ts │ │ │ │ ├── Router.ts │ │ │ │ ├── Sample.test.ts │ │ │ │ ├── Sample.ts │ │ │ │ ├── Signal.test.ts │ │ │ │ ├── Signal.ts │ │ │ │ ├── Sleep.test.ts │ │ │ │ ├── Sleep.ts │ │ │ │ ├── Table.ts │ │ │ │ ├── Throw.test.ts │ │ │ │ ├── Throw.ts │ │ │ │ ├── Unique.test.ts │ │ │ │ ├── Unique.ts │ │ │ │ └── index.ts │ │ │ ├── core.ts │ │ │ ├── coreNodeProvider.ts │ │ │ ├── createExecutableDiagram.test.ts │ │ │ ├── createExecutableDiagram.ts │ │ │ ├── index.ts │ │ │ ├── remoteNodeProvider.ts │ │ │ ├── storage/ │ │ │ │ └── inMemoryObserverStorage.ts │ │ │ ├── support/ │ │ │ │ ├── benchmark.ts │ │ │ │ ├── computerTester/ │ │ │ │ │ ├── ComputerTester.ts │ │ │ │ │ ├── TestStep.ts │ │ │ │ │ └── testSteps/ │ │ │ │ │ ├── doRun.ts │ │ │ │ │ ├── expectDone.ts │ │ │ │ │ ├── expectError.ts │ │ │ │ │ ├── expectHooks.ts │ │ │ │ │ ├── expectOutput.ts │ │ │ │ │ ├── expectOutputs.ts │ │ │ │ │ ├── getsInput.ts │ │ │ │ │ ├── getsInputs.ts │ │ │ │ │ └── index.ts │ │ │ │ └── diagramExecutionTester/ │ │ │ │ ├── DiagramExecutionTester.test.ts │ │ │ │ └── DiagramExecutionTester.ts │ │ │ ├── syncPortSchemas.test.ts │ │ │ ├── syncPortSchemas.ts │ │ │ ├── testTools.ts │ │ │ ├── types/ │ │ │ │ ├── Computer.ts │ │ │ │ ├── Errors.ts │ │ │ │ ├── ExecutionFailure.ts │ │ │ │ ├── ExecutionObserver.ts │ │ │ │ ├── ExecutionUpdate.ts │ │ │ │ ├── GetDataFromStorageParams.ts │ │ │ │ ├── Hook.ts │ │ │ │ ├── HooksDevice.ts │ │ │ │ ├── InputObserveConfig.ts │ │ │ │ ├── InputObserver.ts │ │ │ │ ├── ItemValue.ts │ │ │ │ ├── Link.ts │ │ │ │ ├── LinkItemsUpdate.ts │ │ │ │ ├── LinksCountUpdate.ts │ │ │ │ ├── Node.ts │ │ │ │ ├── NodeDescription.ts │ │ │ │ ├── NodeStatuses.ts │ │ │ │ ├── NotifyObserversCallback.ts │ │ │ │ ├── ObjectLike.ts │ │ │ │ ├── ObserverStorage.ts │ │ │ │ ├── ParamsDevice.ts │ │ │ │ ├── ParamsValueEvaluator.ts │ │ │ │ ├── Port.ts │ │ │ │ ├── PortId.ts │ │ │ │ ├── PortLinkMap.ts │ │ │ │ ├── ReportCallback.ts │ │ │ │ ├── SerializedDiagram.ts │ │ │ │ └── ServiceProvider.ts │ │ │ └── utils/ │ │ │ ├── anonymize.ts │ │ │ ├── arrayToRecord.ts │ │ │ ├── asArray.test.ts │ │ │ ├── asArray.ts │ │ │ ├── batchLimit.ts │ │ │ ├── buildNestedObject.test.ts │ │ │ ├── buildNestedObject.ts │ │ │ ├── createDataStoryId.ts │ │ │ ├── debounce.ts │ │ │ ├── evalMath.ts │ │ │ ├── flattenObjectOneLevel.test.ts │ │ │ ├── flattenObjectOneLevel.ts │ │ │ ├── get.test.ts │ │ │ ├── get.ts │ │ │ ├── isFinished.test.ts │ │ │ ├── isFinished.ts │ │ │ ├── isJson.ts │ │ │ ├── isPromise.ts │ │ │ ├── isStringableParam.ts │ │ │ ├── logWithTime.ts │ │ │ ├── mapToRecord.test.ts │ │ │ ├── mapToRecord.ts │ │ │ ├── merge.test.ts │ │ │ ├── merge.ts │ │ │ ├── multiline.test.ts │ │ │ ├── multiline.ts │ │ │ ├── parseStringList.test.ts │ │ │ ├── parseStringList.ts │ │ │ ├── pascalToSentenceCase.test.ts │ │ │ ├── pascalToSentenceCase.ts │ │ │ ├── serializeError.ts │ │ │ ├── sleep.test.ts │ │ │ ├── sleep.ts │ │ │ ├── snakeCaseToTitleCase.ts │ │ │ ├── stringifyError.ts │ │ │ ├── toLookup.test.ts │ │ │ ├── toLookup.ts │ │ │ ├── withNodeExecutionErrorHandling.test.ts │ │ │ └── withNodeExecutionErrorHandling.ts │ │ ├── tsconfig.build.esm.json │ │ ├── tsconfig.build.json │ │ ├── tsconfig.json │ │ ├── turbo.json │ │ ├── vite.config.esm.ts │ │ ├── vite.config.js │ │ └── vitest.config.ts │ ├── docs/ │ │ ├── .gitignore │ │ ├── LICENSE │ │ ├── README.md │ │ ├── components/ │ │ │ ├── Playground.tsx │ │ │ ├── Toast.tsx │ │ │ ├── demos/ │ │ │ │ ├── DocsFlow.tsx │ │ │ │ ├── HeroFlow.tsx │ │ │ │ ├── NodeDemo.tsx │ │ │ │ ├── ObserversDemo.tsx │ │ │ │ ├── TableDemo.tsx │ │ │ │ ├── TinkerDemo.tsx │ │ │ │ ├── Tree/ │ │ │ │ │ ├── CustomActivityBar.tsx │ │ │ │ │ ├── Empty.tsx │ │ │ │ │ ├── Loading.tsx │ │ │ │ │ ├── MultipleDiagram.tsx │ │ │ │ │ └── SingleDiagram.tsx │ │ │ │ ├── UnfoldingDemo.tsx │ │ │ │ └── VisualizeDemo.tsx │ │ │ ├── hooks/ │ │ │ │ ├── useDiagram.tsx │ │ │ │ └── useRequestApp.tsx │ │ │ ├── logo.tsx │ │ │ └── splash/ │ │ │ ├── CustomizeJSClient.tsx │ │ │ ├── FullScreenHeroSection.tsx │ │ │ ├── HeroSection.tsx │ │ │ ├── SecondarySection.tsx │ │ │ ├── StatsSection.tsx │ │ │ └── ThirdSection.tsx │ │ ├── const.ts │ │ ├── globals.css │ │ ├── hooks/ │ │ │ └── useWindowDimensions.ts │ │ ├── next-env.d.ts │ │ ├── next.config.mjs │ │ ├── package.json │ │ ├── pages/ │ │ │ ├── Observers.mdx │ │ │ ├── Unfolding.mdx │ │ │ ├── _app.tsx │ │ │ ├── _meta.ts │ │ │ ├── contributing.mdx │ │ │ ├── customize.mdx │ │ │ ├── getting-started.mdx │ │ │ ├── hotkeys.mdx │ │ │ ├── index.mdx │ │ │ ├── playground-node.mdx │ │ │ ├── playground.mdx │ │ │ ├── splash.tsx.sketch │ │ │ ├── table.mdx │ │ │ └── tinker.mdx │ │ ├── postcss.config.js │ │ ├── tailwind.config.js │ │ ├── theme.config.tsx │ │ ├── tree/ │ │ │ ├── .gitkeep │ │ │ ├── main.json │ │ │ ├── nodes/ │ │ │ │ └── stamper.json │ │ │ └── secondary.json │ │ ├── tsconfig.json │ │ └── turbo.json │ ├── ds-ext/ │ │ ├── .gitignore │ │ ├── .vscode-test.mjs │ │ ├── .vscodeignore │ │ ├── .yarnrc │ │ ├── .yarnrc.yml │ │ ├── CHANGELOG.md │ │ ├── README.md │ │ ├── esbuild.extension.config.mjs │ │ ├── eslint.config.mjs │ │ ├── language-configuration.json │ │ ├── package.json │ │ ├── scripts/ │ │ │ ├── download-duckdb-bindings.mjs │ │ │ ├── ds-server-utils.mjs │ │ │ ├── prepare-ds-server.mjs │ │ │ ├── scripts-prelude.mjs │ │ │ └── watch-ds-server.mjs │ │ ├── src/ │ │ │ ├── AbstractServer.ts │ │ │ ├── DataStoryServerStatusBarItem.ts │ │ │ ├── DiagramDocument.ts │ │ │ ├── DiagramEditorProvider.ts │ │ │ ├── ExternalProcessServer.ts │ │ │ ├── InProcessServer.ts │ │ │ ├── JsonReadonlyProvider.ts │ │ │ ├── MessageHandler.ts │ │ │ ├── app/ │ │ │ │ ├── DiagramApp.tsx │ │ │ │ ├── TableApp.tsx │ │ │ │ ├── VsCodeToast.tsx │ │ │ │ ├── createAndBootApp.ts │ │ │ │ ├── createSocketClient.ts │ │ │ │ ├── createVsCodeClient.ts │ │ │ │ ├── dsExtensionInitialData.ts │ │ │ │ ├── fixCodeMirrorCopyPaste.ts │ │ │ │ ├── index.css │ │ │ │ ├── index.tsx │ │ │ │ ├── onDrop.ts │ │ │ │ ├── tsconfig.json │ │ │ │ └── types/ │ │ │ │ └── global.d.ts │ │ │ ├── cjs-shim.ts │ │ │ ├── commands/ │ │ │ │ ├── createDataStoryDBPath.ts │ │ │ │ ├── createDemosDirectory.ts │ │ │ │ ├── demos/ │ │ │ │ │ ├── create_to_json_file_write.ts │ │ │ │ │ ├── empty.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── json_file_read_to_table.ts │ │ │ │ │ ├── signal_to_table.ts │ │ │ │ │ └── signal_to_table_1m_instant_items.ts │ │ │ │ ├── getDemoApp.ts │ │ │ │ └── makeDensityDatasets.ts │ │ │ ├── dsServerHealthChecker.ts │ │ │ ├── extension.ts │ │ │ ├── messageHandlers/ │ │ │ │ ├── onEdgeDoubleClick.ts │ │ │ │ └── onToast.ts │ │ │ ├── serverLauncher.ts │ │ │ ├── test/ │ │ │ │ └── extension.test.ts │ │ │ ├── utils/ │ │ │ │ ├── DsExtConfig.ts │ │ │ │ ├── loadWorkspaceEnv.ts │ │ │ │ └── vscode-rxjs.ts │ │ │ └── vscode-commands.ts │ │ ├── themes/ │ │ │ └── file-icon-theme.json │ │ ├── tsconfig.json │ │ ├── turbo.json │ │ ├── vite.config.js │ │ └── vsc-extension-quickstart.md │ ├── hubspot/ │ │ ├── .gitignore │ │ ├── package.json │ │ ├── src/ │ │ │ ├── computers/ │ │ │ │ ├── Companies.ts │ │ │ │ ├── Contacts.ts │ │ │ │ ├── Deals.ts │ │ │ │ └── index.ts │ │ │ ├── crm/ │ │ │ │ └── entity/ │ │ │ │ ├── CrmEntityName.ts │ │ │ │ ├── EntityPage.ts │ │ │ │ ├── archive.ts │ │ │ │ ├── batchArchive.ts │ │ │ │ ├── batchCreate.ts │ │ │ │ ├── batchUpdate.ts │ │ │ │ ├── create.ts │ │ │ │ ├── getAll.ts │ │ │ │ └── update.ts │ │ │ ├── hubspotProvider.ts │ │ │ └── index.ts │ │ ├── tsconfig.json │ │ └── vitest.config.ts │ ├── nodejs/ │ │ ├── .gitignore │ │ ├── data-story-tree/ │ │ │ └── 1.json │ │ ├── ds-server.ts │ │ ├── package.json │ │ ├── scripts/ │ │ │ └── build-server.js │ │ ├── src/ │ │ │ ├── computers/ │ │ │ │ ├── CsvFileRead/ │ │ │ │ │ ├── CsvFileRead.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── CsvFileWrite/ │ │ │ │ │ ├── CsvFileWrite.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── JsonFileRead/ │ │ │ │ │ ├── JsonFileRead.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── JsonFileWrite/ │ │ │ │ │ ├── JsonFileWrite.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── ListFiles/ │ │ │ │ │ ├── ListFiles.test.ts │ │ │ │ │ ├── ListFiles.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── ReadFiles/ │ │ │ │ │ ├── ReadFiles.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── RunCommand/ │ │ │ │ │ ├── RunCommand.ts │ │ │ │ │ ├── execAsync.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── WriteFile/ │ │ │ │ │ ├── WriteFile.ts │ │ │ │ │ └── index.ts │ │ │ │ └── index.ts │ │ │ ├── index.ts │ │ │ ├── nodeJsProvider.ts │ │ │ ├── server/ │ │ │ │ ├── Message.ts │ │ │ │ ├── MessageHandler.ts │ │ │ │ ├── SocketServer.ts │ │ │ │ ├── ds-server.http │ │ │ │ ├── getWorkingDirConfig.ts │ │ │ │ ├── healthCheck.ts │ │ │ │ └── messageHandlers/ │ │ │ │ ├── abortExecution.ts │ │ │ │ ├── cancelObservation.ts │ │ │ │ ├── getDataFromStorage.ts │ │ │ │ ├── getDiagram.test.ts │ │ │ │ ├── getDiagram.ts │ │ │ │ ├── getNodeDescriptions.ts │ │ │ │ ├── index.ts │ │ │ │ ├── observeLinkCounts.ts │ │ │ │ ├── observeLinkItems.ts │ │ │ │ ├── observeLinkUpdate.ts │ │ │ │ ├── observeNodeStatus.ts │ │ │ │ ├── run.ts │ │ │ │ └── updateDiagram.ts │ │ │ └── storage/ │ │ │ ├── createStorage.ts │ │ │ ├── duckDBStorage.test.ts │ │ │ ├── duckDBStorage.ts │ │ │ └── jsonObserverStorage.ts │ │ ├── tsconfig.json │ │ ├── turbo.json │ │ └── vitest.config.ts │ └── ui/ │ ├── .gitignore │ ├── README.md │ ├── cypress-vite.config.ts │ ├── cypress.d.ts │ ├── package.json │ ├── postcss.config.js │ ├── src/ │ │ ├── SerializedReactFlow.ts │ │ ├── components/ │ │ │ ├── DataStory/ │ │ │ │ ├── DataStory.cy.tsx │ │ │ │ ├── DataStory.tsx │ │ │ │ ├── DataStoryCanvas.tsx │ │ │ │ ├── Form/ │ │ │ │ │ ├── StringableInput.tsx │ │ │ │ │ ├── UseFormField.tsx │ │ │ │ │ └── nodeSettingsForm.tsx │ │ │ │ ├── clients/ │ │ │ │ │ ├── ClientBuffer.ts │ │ │ │ │ ├── WebSocketHandleResponseMiddleware.ts │ │ │ │ │ ├── WorkspaceApiClient.ts │ │ │ │ │ ├── WorkspaceApiClientImplement.ts │ │ │ │ │ ├── createJSClient.ts │ │ │ │ │ ├── createSocketClient.ts │ │ │ │ │ ├── createTransport.ts │ │ │ │ │ └── utils.ts │ │ │ │ ├── common/ │ │ │ │ │ ├── clipboard.ts │ │ │ │ │ ├── loadingMask.tsx │ │ │ │ │ ├── method.ts │ │ │ │ │ └── placeholder.tsx │ │ │ │ ├── controls/ │ │ │ │ │ ├── AddNodeControl.tsx │ │ │ │ │ ├── ConfigControl.tsx │ │ │ │ │ ├── CopyAsJsonControl.tsx │ │ │ │ │ ├── DataStoryControls.tsx │ │ │ │ │ ├── RunControl.tsx │ │ │ │ │ ├── SaveControl.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── useRunControl.ts │ │ │ │ ├── events/ │ │ │ │ │ ├── dataStoryEventType.ts │ │ │ │ │ └── eventManager.ts │ │ │ │ ├── getNodesWithNewSelection.test.ts │ │ │ │ ├── getNodesWithNewSelection.ts │ │ │ │ ├── hooks/ │ │ │ │ │ └── useEscapeKey.ts │ │ │ │ ├── icons/ │ │ │ │ │ ├── abortIcon.tsx │ │ │ │ │ ├── addNodeIcon.tsx │ │ │ │ │ ├── backIcon.tsx │ │ │ │ │ ├── chevronDown.tsx │ │ │ │ │ ├── chevronRight.tsx │ │ │ │ │ ├── closeIcon.tsx │ │ │ │ │ ├── collapseIcon.tsx │ │ │ │ │ ├── configIcon.tsx │ │ │ │ │ ├── copyAsJsonIcon.tsx │ │ │ │ │ ├── diagramIcon.tsx │ │ │ │ │ ├── dragIcon.tsx │ │ │ │ │ ├── explorer.tsx │ │ │ │ │ ├── export.tsx │ │ │ │ │ ├── fileIcon.tsx │ │ │ │ │ ├── helpIcon.tsx │ │ │ │ │ ├── importIcon.tsx │ │ │ │ │ ├── loadingIcon.tsx │ │ │ │ │ ├── logoIcon.tsx │ │ │ │ │ ├── lookingForIcon.tsx │ │ │ │ │ ├── nodeIcon.tsx │ │ │ │ │ ├── openIcon.tsx │ │ │ │ │ ├── portIcon.tsx │ │ │ │ │ ├── runIcon.tsx │ │ │ │ │ ├── saveIcon.tsx │ │ │ │ │ └── tableIcon.tsx │ │ │ │ ├── index.tsx │ │ │ │ ├── keyManager.ts │ │ │ │ ├── mockJSServer/ │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── messageHandlers.ts │ │ │ │ │ └── storeDiagram.ts │ │ │ │ ├── modal.tsx │ │ │ │ ├── modals/ │ │ │ │ │ ├── addNodeForm.tsx │ │ │ │ │ ├── nodeSettingsModal/ │ │ │ │ │ │ ├── nodeSettingsModal.tsx │ │ │ │ │ │ └── tabs/ │ │ │ │ │ │ ├── InputSchemas.tsx │ │ │ │ │ │ ├── Params/ │ │ │ │ │ │ │ ├── Params.tsx │ │ │ │ │ │ │ ├── ParamsComponentFactory.tsx │ │ │ │ │ │ │ ├── StringableWithConfig.tsx │ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ └── outputSchemas/ │ │ │ │ │ │ ├── common.ts │ │ │ │ │ │ ├── dataStoryOutputTable.tsx │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ └── outputSchemas.tsx │ │ │ │ │ ├── runForm.cy.tsx │ │ │ │ │ └── runModal/ │ │ │ │ │ ├── DefineMode.tsx │ │ │ │ │ ├── FillMode.tsx │ │ │ │ │ └── runForm.tsx │ │ │ │ ├── onDropDefault.ts │ │ │ │ ├── sidebar/ │ │ │ │ │ ├── activityBar.tsx │ │ │ │ │ ├── addNode.tsx │ │ │ │ │ ├── config.tsx │ │ │ │ │ ├── run.tsx │ │ │ │ │ ├── sidebar.tsx │ │ │ │ │ └── sidebarWrap.tsx │ │ │ │ ├── store/ │ │ │ │ │ └── store.tsx │ │ │ │ ├── types.ts │ │ │ │ ├── useCopyPaste.ts │ │ │ │ ├── useDragNode.tsx │ │ │ │ └── useHotkeys.tsx │ │ │ ├── DropDown/ │ │ │ │ └── index.tsx │ │ │ ├── Node/ │ │ │ │ ├── CommentNodeComponent.tsx │ │ │ │ ├── ConsoleNodeComponent.cy.tsx │ │ │ │ ├── ConsoleNodeComponent.tsx │ │ │ │ ├── CustomHandle.tsx │ │ │ │ ├── InputNodeComponent.tsx │ │ │ │ ├── LoopBackComponent.tsx │ │ │ │ ├── LoopStartComponent.tsx │ │ │ │ ├── NodeComponent.tsx │ │ │ │ ├── OutputNodeComponent.tsx │ │ │ │ ├── ReactFlowNode.ts │ │ │ │ └── table/ │ │ │ │ ├── CellsMatrix.ts │ │ │ │ ├── GetFormatterOnlyAndDropParam.ts │ │ │ │ ├── ItemCollection.test.ts │ │ │ │ ├── ItemCollection.ts │ │ │ │ ├── LoadingComponent.tsx │ │ │ │ ├── MemoizedTableBody.tsx │ │ │ │ ├── MemoizedTableHeader.tsx │ │ │ │ ├── StandaloneTable.tsx │ │ │ │ ├── TableCell.tsx │ │ │ │ ├── TableNodeComponent.cy.tsx │ │ │ │ ├── TableNodeComponent.tsx │ │ │ │ ├── UseObserverTable.tsx │ │ │ │ └── mock.ts │ │ │ └── forms/ │ │ │ └── inputs/ │ │ │ ├── interpolatable/ │ │ │ │ └── InterpolatableTextarea.tsx │ │ │ ├── json.tsx │ │ │ ├── number.tsx │ │ │ ├── select.tsx │ │ │ ├── string.tsx │ │ │ └── text.tsx │ │ ├── factories/ │ │ │ ├── DiagramFactory.ts │ │ │ ├── NodeFactory.ts │ │ │ └── ReactFlowFactory.ts │ │ ├── index.ts │ │ ├── reactFlowToDiagram.ts │ │ ├── styles/ │ │ │ ├── dataStoryCanvasStyle.css │ │ │ └── globals.css │ │ └── withResolversPolyfill.ts │ ├── tailwind.config.js │ ├── tsconfig.json │ ├── tsconfig.lib.json │ ├── tsconfig.test.json │ ├── turbo.json │ ├── vitest.config.ts │ └── webpack.config.js ├── readme.md ├── scripts/ │ └── addNodesToDocs.ts ├── turbo.json ├── vercel.json ├── vitest.config.ts └── yarn.config.cjs