gitextract_0apmokt3/ ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.yml │ │ └── feature_request.yml │ ├── pull_request_template.md │ └── workflows/ │ ├── deploy.yml │ └── pull-request.yml ├── .gitignore ├── .npmrc ├── .vscode/ │ ├── launch.json │ └── tasks.json ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE.md ├── README.md ├── apps/ │ ├── vscode/ │ │ ├── .gitignore │ │ ├── .prettierignore │ │ ├── .prettierrc │ │ ├── .vscodeignore │ │ ├── LICENSE.md │ │ ├── README.md │ │ ├── esbuild.config.mjs │ │ ├── eslint.config.mjs │ │ ├── ext-src/ │ │ │ ├── extension.ts │ │ │ └── webview.ts │ │ ├── index.html │ │ ├── package.json │ │ ├── src/ │ │ │ ├── App.tsx │ │ │ ├── components/ │ │ │ │ └── NodeModal.tsx │ │ │ ├── env.d.ts │ │ │ ├── global.css │ │ │ └── index.tsx │ │ ├── tsconfig.json │ │ └── vite.config.ts │ └── www/ │ ├── .dockerignore │ ├── .gitignore │ ├── .prettierignore │ ├── .prettierrc │ ├── Dockerfile │ ├── LICENSE.md │ ├── docker-compose.yml │ ├── eslint.config.mjs │ ├── next-env.d.ts │ ├── next-sitemap.config.js │ ├── next.config.js │ ├── nginx.conf │ ├── package.json │ ├── public/ │ │ ├── .nojekyll │ │ ├── CNAME │ │ ├── manifest.json │ │ ├── robots.txt │ │ ├── sitemap-0.xml │ │ └── sitemap.xml │ ├── shims/ │ │ └── empty.ts │ ├── src/ │ │ ├── constants/ │ │ │ ├── globalStyle.ts │ │ │ ├── graph.ts │ │ │ ├── seo.ts │ │ │ └── theme.ts │ │ ├── data/ │ │ │ ├── example.json │ │ │ ├── faq.json │ │ │ ├── privacy.json │ │ │ └── terms.json │ │ ├── enums/ │ │ │ ├── file.enum.ts │ │ │ └── viewMode.enum.ts │ │ ├── features/ │ │ │ ├── Banner.tsx │ │ │ ├── editor/ │ │ │ │ ├── BottomBar.tsx │ │ │ │ ├── ExternalMode.tsx │ │ │ │ ├── FullscreenDropzone.tsx │ │ │ │ ├── LiveEditor.tsx │ │ │ │ ├── TextEditor.tsx │ │ │ │ ├── Toolbar/ │ │ │ │ │ ├── FileMenu.tsx │ │ │ │ │ ├── SearchInput.tsx │ │ │ │ │ ├── ThemeToggle.tsx │ │ │ │ │ ├── ToolsMenu.tsx │ │ │ │ │ ├── ViewMenu.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ └── styles.ts │ │ │ │ └── views/ │ │ │ │ ├── GraphView/ │ │ │ │ │ ├── CustomEdge/ │ │ │ │ │ │ └── index.tsx │ │ │ │ │ ├── CustomNode/ │ │ │ │ │ │ ├── ObjectNode.tsx │ │ │ │ │ │ ├── TextNode.tsx │ │ │ │ │ │ ├── TextRenderer.tsx │ │ │ │ │ │ ├── index.tsx │ │ │ │ │ │ └── styles.tsx │ │ │ │ │ ├── NotSupported.tsx │ │ │ │ │ ├── OptionsMenu.tsx │ │ │ │ │ ├── SecureInfo.tsx │ │ │ │ │ ├── ZoomControl.tsx │ │ │ │ │ ├── index.tsx │ │ │ │ │ ├── lib/ │ │ │ │ │ │ ├── jsonParser.ts │ │ │ │ │ │ └── utils/ │ │ │ │ │ │ ├── calculateNodeSize.ts │ │ │ │ │ │ ├── getChildrenEdges.ts │ │ │ │ │ │ └── getOutgoers.ts │ │ │ │ │ └── stores/ │ │ │ │ │ └── useGraph.ts │ │ │ │ └── TreeView/ │ │ │ │ ├── Label.tsx │ │ │ │ ├── Value.tsx │ │ │ │ └── index.tsx │ │ │ └── modals/ │ │ │ ├── DownloadModal/ │ │ │ │ └── index.tsx │ │ │ ├── ImportModal/ │ │ │ │ └── index.tsx │ │ │ ├── JPathModal/ │ │ │ │ └── index.tsx │ │ │ ├── JQModal/ │ │ │ │ └── index.tsx │ │ │ ├── ModalController.tsx │ │ │ ├── NodeModal/ │ │ │ │ └── index.tsx │ │ │ ├── SchemaModal/ │ │ │ │ └── index.tsx │ │ │ ├── TypeModal/ │ │ │ │ └── index.tsx │ │ │ ├── index.ts │ │ │ └── modalTypes.ts │ │ ├── hooks/ │ │ │ ├── useFocusNode.ts │ │ │ └── useJsonQuery.ts │ │ ├── layout/ │ │ │ ├── ConverterLayout/ │ │ │ │ ├── PageLinks.tsx │ │ │ │ ├── ToolPage.tsx │ │ │ │ └── options.ts │ │ │ ├── JSONCrackBrandLogo.tsx │ │ │ ├── Landing/ │ │ │ │ ├── FAQ.tsx │ │ │ │ ├── Features.tsx │ │ │ │ ├── HeroPreview.tsx │ │ │ │ ├── HeroSection.tsx │ │ │ │ ├── Section1.tsx │ │ │ │ ├── Section2.tsx │ │ │ │ └── Section3.tsx │ │ │ ├── PageLayout/ │ │ │ │ ├── Footer.tsx │ │ │ │ ├── Navbar.tsx │ │ │ │ └── index.tsx │ │ │ └── TypeLayout/ │ │ │ ├── PageLinks.tsx │ │ │ └── TypegenWrapper.tsx │ │ ├── lib/ │ │ │ └── utils/ │ │ │ ├── generateType.ts │ │ │ ├── helpers.ts │ │ │ ├── json2go.js │ │ │ ├── jsonAdapter.ts │ │ │ ├── mantineColorScheme.ts │ │ │ └── search.ts │ │ ├── pages/ │ │ │ ├── 404.tsx │ │ │ ├── _app.tsx │ │ │ ├── _document.tsx │ │ │ ├── _error.tsx │ │ │ ├── converter/ │ │ │ │ ├── csv-to-json.tsx │ │ │ │ ├── csv-to-xml.tsx │ │ │ │ ├── csv-to-yaml.tsx │ │ │ │ ├── json-to-csv.tsx │ │ │ │ ├── json-to-xml.tsx │ │ │ │ ├── json-to-yaml.tsx │ │ │ │ ├── xml-to-csv.tsx │ │ │ │ ├── xml-to-json.tsx │ │ │ │ ├── xml-to-yaml.tsx │ │ │ │ ├── yaml-to-csv.tsx │ │ │ │ ├── yaml-to-json.tsx │ │ │ │ └── yaml-to-xml.tsx │ │ │ ├── docs.tsx │ │ │ ├── editor.tsx │ │ │ ├── index.tsx │ │ │ ├── legal/ │ │ │ │ ├── privacy.tsx │ │ │ │ └── terms.tsx │ │ │ ├── tools/ │ │ │ │ └── json-schema.tsx │ │ │ ├── type/ │ │ │ │ ├── csv-to-go.tsx │ │ │ │ ├── csv-to-kotlin.tsx │ │ │ │ ├── csv-to-rust.tsx │ │ │ │ ├── csv-to-typescript.tsx │ │ │ │ ├── json-to-go.tsx │ │ │ │ ├── json-to-kotlin.tsx │ │ │ │ ├── json-to-rust.tsx │ │ │ │ ├── json-to-typescript.tsx │ │ │ │ ├── xml-to-go.tsx │ │ │ │ ├── xml-to-kotlin.tsx │ │ │ │ ├── xml-to-rust.tsx │ │ │ │ ├── xml-to-typescript.tsx │ │ │ │ ├── yaml-to-go.tsx │ │ │ │ ├── yaml-to-kotlin.tsx │ │ │ │ ├── yaml-to-rust.tsx │ │ │ │ └── yaml-to-typescript.tsx │ │ │ └── widget.tsx │ │ ├── store/ │ │ │ ├── useConfig.ts │ │ │ ├── useFile.ts │ │ │ ├── useJson.ts │ │ │ └── useModal.ts │ │ └── types/ │ │ └── styled.d.ts │ └── tsconfig.json ├── package.json ├── packages/ │ └── jsoncrack-react/ │ ├── .gitignore │ ├── .prettierrc │ ├── LICENSE.md │ ├── README.md │ ├── eslint.config.mjs │ ├── package.json │ ├── src/ │ │ ├── JSONCrackComponent.tsx │ │ ├── JSONCrackStyles.module.css │ │ ├── components/ │ │ │ ├── Controls.module.css │ │ │ ├── Controls.tsx │ │ │ ├── CustomEdge.tsx │ │ │ ├── CustomNode.tsx │ │ │ ├── Node.module.css │ │ │ ├── ObjectNode.tsx │ │ │ ├── TextNode.tsx │ │ │ ├── TextRenderer.module.css │ │ │ ├── TextRenderer.tsx │ │ │ └── nodeStyles.ts │ │ ├── css-modules.d.ts │ │ ├── index.ts │ │ ├── parser.ts │ │ ├── theme.ts │ │ ├── types.ts │ │ └── utils/ │ │ └── calculateNodeSize.ts │ ├── tsconfig.build.json │ ├── tsconfig.json │ └── vite.config.ts ├── pnpm-workspace.yaml └── turbo.json