From 78e0cf8945231595eccb4240aad159e91dab0a6b Mon Sep 17 00:00:00 2001 From: Fuma Nama Date: Tue, 30 Dec 2025 16:49:34 +0800 Subject: [PATCH] Chore: migrate to oxfmt --- .github/contributing.md | 8 +- .github/workflows/lint.yml | 2 +- .oxfmtrc.jsonc | 29 +++ .prettierignore | 29 --- .vscode/settings.json | 3 +- .../app/(home)/blog/[slug]/page.client.tsx | 6 +- apps/docs/app/(home)/blog/[slug]/page.tsx | 10 +- apps/docs/app/(home)/blog/page.tsx | 4 +- apps/docs/app/(home)/docs/page.tsx | 69 ------ apps/docs/app/(home)/icons.tsx | 24 +- apps/docs/app/(home)/layout.tsx | 21 +- apps/docs/app/(home)/marquee.tsx | 4 +- apps/docs/app/(home)/page.client.tsx | 42 ++-- apps/docs/app/(home)/page.tsx | 211 +++++------------- apps/docs/app/(home)/showcase/page.tsx | 20 +- apps/docs/app/(home)/sponsors/data.tsx | 6 +- apps/docs/app/(home)/sponsors/page.tsx | 52 +---- apps/docs/app/(home)/uwu.tsx | 17 +- .../docs/{[...slug] => [[...slug]]}/page.tsx | 41 +--- .../{[...slug] => [[...slug]]}/suggestions.ts | 0 apps/docs/app/docs/layout.tsx | 14 +- apps/docs/app/global.css | 15 +- apps/docs/app/layout.client.tsx | 22 +- apps/docs/app/layout.tsx | 6 +- apps/docs/app/llms.mdx/[...slug]/route.ts | 5 +- apps/docs/app/og/[...slug]/generate.tsx | 15 +- apps/docs/app/og/[...slug]/route.tsx | 10 +- apps/docs/app/provider.tsx | 5 +- apps/docs/app/static.json/route.ts | 4 +- apps/docs/components/ai/markdown.tsx | 5 +- apps/docs/components/ai/page-actions.tsx | 18 +- apps/docs/components/ai/search.tsx | 30 +-- apps/docs/components/contributor-count.tsx | 5 +- apps/docs/components/feedback.tsx | 5 +- apps/docs/components/graph-view.tsx | 13 +- apps/docs/components/mdx/mermaid.tsx | 9 +- apps/docs/components/not-found.tsx | 6 +- .../components/preview/dynamic-codeblock.tsx | 6 +- apps/docs/components/preview/index.tsx | 20 +- apps/docs/components/preview/installation.tsx | 11 +- apps/docs/components/preview/lazy.ts | 8 +- apps/docs/components/registry.ts | 14 +- apps/docs/components/search.tsx | 18 +- apps/docs/components/ui/hover-card.tsx | 4 +- apps/docs/content/docs/ui/search/algolia.tsx | 7 +- apps/docs/content/docs/ui/search/fetch.tsx | 7 +- .../content/docs/ui/search/mixedbread.tsx | 7 +- .../content/docs/ui/search/orama-cloud.tsx | 7 +- apps/docs/content/docs/ui/search/static.tsx | 7 +- apps/docs/lib/get-contributors.ts | 3 +- apps/docs/lib/get-llm-text.rsc.ts | 5 +- apps/docs/lib/get-sponsors.ts | 20 +- apps/docs/lib/github.ts | 32 +-- apps/docs/lib/metadata.ts | 3 +- apps/docs/lib/og/mono.tsx | 7 +- apps/docs/lib/orama/client.ts | 7 +- apps/docs/lib/source/navigation.ts | 13 ++ apps/docs/scalar.yaml | 12 +- apps/docs/scripts/build-registry.ts | 6 +- apps/docs/scripts/lint.ts | 32 +-- apps/docs/source.config.ts | 19 +- apps/docs/tsconfig.json | 8 +- examples/astro/package.json | 2 +- examples/astro/src/components/search.tsx | 7 +- examples/astro/src/pages/api/search.ts | 4 +- .../app/docs/[[...slug]]/page.tsx | 15 +- examples/i18n/app/[lang]/(home)/layout.tsx | 5 +- .../i18n/app/[lang]/docs/[[...slug]]/page.tsx | 11 +- examples/i18n/app/[lang]/docs/layout.tsx | 5 +- examples/i18n/app/[lang]/layout.tsx | 5 +- examples/marble-cms/app/(home)/page.tsx | 5 +- .../marble-cms/app/docs/[[...slug]]/page.tsx | 11 +- examples/marble-cms/lib/layout.shared.tsx | 8 +- examples/marble-cms/lib/source.ts | 7 +- .../next-mdx/app/docs/[[...slug]]/page.tsx | 11 +- .../next-mdx/app/og/docs/[...slug]/route.tsx | 11 +- examples/next-mdx/source.config.ts | 7 +- .../next-min/app/docs/[[...slug]]/page.tsx | 11 +- .../obsidian/app/docs/[[...slug]]/page.tsx | 11 +- examples/obsidian/source.config.ts | 6 +- .../openapi/app/docs-og/[...slug]/route.ts | 5 +- .../openapi/app/docs/[[...slug]]/page.tsx | 15 +- examples/openapi/app/layout.tsx | 6 +- examples/openapi/content/docs/meta.json | 8 +- examples/openapi/openapi.yaml | 46 +--- examples/python/app/(home)/page.tsx | 5 +- examples/python/app/docs/[[...slug]]/page.tsx | 15 +- examples/react-router-i18n/app/docs/page.tsx | 7 +- examples/react-router-i18n/app/root.tsx | 4 +- examples/react-router-i18n/bunfig.toml | 2 +- .../react-router-i18n/react-router.config.ts | 4 +- examples/react-router-i18n/tsconfig.json | 7 +- examples/react-router-rsc/app/docs/page.tsx | 7 +- examples/react-router-rsc/app/root.tsx | 4 +- examples/react-router-rsc/tsconfig.json | 7 +- .../app/components/search.tsx | 7 +- examples/react-router-spa/app/docs/page.tsx | 7 +- examples/react-router-spa/app/root.tsx | 4 +- examples/react-router-spa/tsconfig.json | 7 +- examples/react-router/app/docs/page.tsx | 7 +- examples/react-router/app/root.tsx | 4 +- examples/react-router/tsconfig.json | 7 +- examples/remote-mdx/app/api/search/route.ts | 5 +- .../remote-mdx/app/docs/[[...slug]]/page.tsx | 11 +- examples/remote-mdx/tsconfig.json | 8 +- examples/tanstack-start-i18n/package.json | 2 +- .../src/components/not-found.tsx | 4 +- .../src/lib/layout.shared.tsx | 4 +- .../tanstack-start-i18n/src/routeTree.gen.ts | 122 +++++----- .../src/routes/$lang/docs/$.tsx | 7 +- .../src/routes/$lang/index.tsx | 4 +- .../tanstack-start-i18n/src/routes/__root.tsx | 8 +- examples/tanstack-start-spa/package.json | 2 +- .../src/components/not-found.tsx | 4 +- .../src/components/search.tsx | 7 +- .../tanstack-start-spa/src/routeTree.gen.ts | 122 +++++----- .../tanstack-start-spa/src/routes/__root.tsx | 7 +- .../tanstack-start-spa/src/routes/docs/$.tsx | 7 +- examples/tanstack-start/package.json | 2 +- .../src/components/not-found.tsx | 4 +- examples/tanstack-start/src/routeTree.gen.ts | 122 +++++----- examples/tanstack-start/src/routes/__root.tsx | 7 +- examples/tanstack-start/src/routes/docs/$.tsx | 7 +- examples/tanstack-start/src/routes/index.tsx | 4 +- examples/waku-i18n/package.json | 2 +- .../waku-i18n/src/components/provider.tsx | 6 +- .../src/pages/[lang]/docs/[...slugs].tsx | 16 +- examples/waku/package.json | 2 +- examples/waku/src/pages/docs/[...slugs].tsx | 11 +- package.json | 11 +- packages/base-ui/package.json | 84 +++---- packages/base-ui/src/components/accordion.tsx | 14 +- packages/base-ui/src/components/banner.tsx | 7 +- packages/base-ui/src/components/callout.tsx | 33 +-- packages/base-ui/src/components/card.tsx | 9 +- packages/base-ui/src/components/codeblock.tsx | 27 +-- .../src/components/dialog/search-algolia.tsx | 16 +- .../src/components/dialog/search-default.tsx | 11 +- .../src/components/dialog/search-orama.tsx | 16 +- .../base-ui/src/components/dialog/search.tsx | 54 +---- .../src/components/dynamic-codeblock.tsx | 26 +-- packages/base-ui/src/components/files.tsx | 28 +-- packages/base-ui/src/components/heading.tsx | 5 +- .../base-ui/src/components/image-zoom.tsx | 15 +- .../base-ui/src/components/inline-toc.tsx | 6 +- .../base-ui/src/components/sidebar/base.tsx | 79 ++----- .../src/components/sidebar/link-item.tsx | 7 +- .../src/components/sidebar/page-tree.tsx | 28 +-- .../src/components/sidebar/tabs/dropdown.tsx | 14 +- .../src/components/sidebar/tabs/index.tsx | 10 +- packages/base-ui/src/components/tabs.tsx | 13 +- .../base-ui/src/components/type-table.tsx | 27 +-- .../base-ui/src/components/ui/accordion.tsx | 10 +- .../src/components/ui/navigation-menu.tsx | 7 +- .../base-ui/src/components/ui/popover.tsx | 7 +- .../base-ui/src/components/ui/scroll-area.tsx | 10 +- packages/base-ui/src/components/ui/tabs.tsx | 5 +- packages/base-ui/src/layouts/docs/client.tsx | 27 +-- packages/base-ui/src/layouts/docs/index.tsx | 88 ++------ .../base-ui/src/layouts/docs/page/client.tsx | 56 +---- .../base-ui/src/layouts/docs/page/index.tsx | 52 +---- packages/base-ui/src/layouts/docs/sidebar.tsx | 41 +--- packages/base-ui/src/layouts/home/client.tsx | 76 ++----- packages/base-ui/src/layouts/home/index.tsx | 15 +- packages/base-ui/src/layouts/home/navbar.tsx | 10 +- .../base-ui/src/layouts/notebook/client.tsx | 55 +---- .../base-ui/src/layouts/notebook/index.tsx | 68 +----- .../src/layouts/notebook/page/client.tsx | 56 +---- .../src/layouts/notebook/page/index.tsx | 52 +---- .../base-ui/src/layouts/notebook/sidebar.tsx | 25 +-- .../src/layouts/shared/language-toggle.tsx | 10 +- .../src/layouts/shared/search-toggle.tsx | 3 +- .../src/layouts/shared/theme-toggle.tsx | 26 +-- packages/base-ui/src/mdx.server.tsx | 7 +- packages/base-ui/src/mdx.tsx | 40 +--- packages/base-ui/src/page.tsx | 24 +- packages/base-ui/src/provider/base.tsx | 19 +- packages/cli/package.json | 28 +-- packages/cli/src/build/compiler.ts | 44 +--- packages/cli/src/build/index.ts | 6 +- packages/cli/src/commands/add.ts | 23 +- packages/cli/src/commands/customise.ts | 9 +- packages/cli/src/config.ts | 8 +- packages/cli/src/index.ts | 42 +--- .../cli/src/registry/installer/dep-manager.ts | 14 +- packages/cli/src/registry/installer/index.ts | 13 +- packages/cli/src/registry/schema.ts | 9 +- packages/cli/src/utils/ast.ts | 9 +- packages/cli/src/utils/cache.ts | 5 +- packages/cli/tsconfig.json | 8 +- packages/content-collections/package.json | 48 ++-- .../content-collections/src/configuration.ts | 21 +- packages/content-collections/src/index.ts | 5 +- .../src/resolve-plugins.ts | 7 +- packages/core/package.json | 204 ++++++++--------- packages/core/src/breadcrumb.tsx | 27 +-- packages/core/src/content/github.ts | 18 +- .../core/src/content/mdx/preset-bundler.ts | 14 +- .../core/src/content/mdx/preset-runtime.ts | 19 +- packages/core/src/content/mdx/util.ts | 10 +- packages/core/src/framework/index.tsx | 11 +- packages/core/src/framework/react-router.tsx | 8 +- packages/core/src/framework/tanstack.tsx | 7 +- packages/core/src/highlight/shiki.ts | 30 +-- packages/core/src/i18n/middleware.ts | 5 +- packages/core/src/link.tsx | 8 +- .../core/src/mdx-plugins/codeblock-utils.ts | 8 +- packages/core/src/mdx-plugins/mdast-utils.ts | 3 +- packages/core/src/mdx-plugins/rehype-code.ts | 17 +- packages/core/src/mdx-plugins/rehype-toc.ts | 8 +- .../core/src/mdx-plugins/remark-admonition.ts | 8 +- .../core/src/mdx-plugins/remark-code-tab.ts | 19 +- .../remark-directive-admonition.ts | 7 +- packages/core/src/mdx-plugins/remark-gfm.ts | 5 +- .../core/src/mdx-plugins/remark-heading.ts | 4 +- packages/core/src/mdx-plugins/remark-image.ts | 24 +- .../core/src/mdx-plugins/remark-mdx-files.ts | 4 +- .../src/mdx-plugins/remark-mdx-mermaid.ts | 4 +- packages/core/src/mdx-plugins/remark-npm.ts | 11 +- packages/core/src/mdx-plugins/remark-steps.ts | 6 +- .../core/src/mdx-plugins/remark-structure.ts | 28 +-- packages/core/src/negotiation/index.ts | 4 +- packages/core/src/page-tree/utils.ts | 3 +- packages/core/src/search/algolia.ts | 22 +- packages/core/src/search/client.ts | 3 +- packages/core/src/search/client/algolia.ts | 3 +- packages/core/src/search/client/fetch.ts | 3 +- packages/core/src/search/client/mixedbread.ts | 8 +- packages/core/src/search/client/static.ts | 8 +- packages/core/src/search/orama-cloud.ts | 17 +- .../src/search/orama/create-from-source.ts | 9 +- packages/core/src/search/orama/create-i18n.ts | 21 +- .../core/src/search/orama/search/advanced.ts | 5 +- .../core/src/search/orama/search/simple.ts | 9 +- packages/core/src/search/server.ts | 12 +- packages/core/src/source/client/index.tsx | 4 +- packages/core/src/source/loader.ts | 60 ++--- packages/core/src/source/page-tree/builder.ts | 55 ++--- packages/core/src/source/path.ts | 5 +- packages/core/src/source/plugins/index.ts | 17 +- packages/core/src/source/plugins/slugs.ts | 7 +- packages/core/src/source/source.ts | 12 +- packages/core/src/source/storage/content.ts | 16 +- packages/core/src/toc.tsx | 30 +-- packages/core/src/utils/merge-refs.ts | 4 +- packages/core/src/utils/use-effect-event.ts | 9 +- packages/core/test/highlight.test.ts | 3 +- packages/core/test/index.test.ts | 37 ++- packages/core/test/loader.test.ts | 26 +-- packages/core/test/mdx-plugins.test.ts | 44 +--- packages/core/test/negotiation.test.ts | 3 +- packages/create-app/package.json | 32 +-- packages/create-app/src/bin.ts | 9 +- packages/create-app/src/index.ts | 27 +-- packages/create-app/src/plugins/biome.ts | 8 +- .../create-app/src/plugins/orama-cloud.ts | 20 +- packages/create-app/src/transform/index.ts | 23 +- .../create-app/src/transform/react-router.ts | 10 +- .../src/transform/tanstack-start.ts | 17 +- packages/create-app/src/utils.ts | 29 +-- .../app/docs/[[...slug]]/page.tsx | 11 +- .../app/og/docs/[...slug]/route.tsx | 11 +- .../+next+fuma-docs-mdx/source.config.ts | 7 +- .../+orama-cloud/@app/components/search.tsx | 7 +- .../app/components/search.tsx | 7 +- .../react-router-spa/app/docs/page.tsx | 7 +- .../template/react-router-spa/app/root.tsx | 4 +- .../template/react-router-spa/tsconfig.json | 7 +- .../template/react-router/app/docs/page.tsx | 7 +- .../template/react-router/app/root.tsx | 4 +- .../template/react-router/tsconfig.json | 7 +- .../template/tanstack-start-spa/package.json | 2 +- .../src/components/not-found.tsx | 4 +- .../src/components/search.tsx | 7 +- .../tanstack-start-spa/src/routes/__root.tsx | 7 +- .../tanstack-start-spa/src/routes/docs/$.tsx | 7 +- .../template/tanstack-start/package.json | 2 +- .../src/components/not-found.tsx | 4 +- .../tanstack-start/src/routes/__root.tsx | 7 +- .../tanstack-start/src/routes/docs/$.tsx | 7 +- .../tanstack-start/src/routes/index.tsx | 4 +- .../create-app/template/waku/package.json | 2 +- .../waku/src/pages/docs/[...slugs].tsx | 11 +- packages/create-app/test/index.test.ts | 14 +- packages/doc-gen/package.json | 32 +-- packages/doc-gen/src/remark-docgen.ts | 9 +- packages/doc-gen/src/remark-show.ts | 16 +- packages/doc-gen/src/remark-ts2js.ts | 12 +- packages/doc-gen/src/utils.ts | 11 +- packages/eslint-config-custom/package.json | 4 +- packages/mdx-remote/package.json | 38 ++-- packages/mdx-remote/src/compile.ts | 52 +---- packages/mdx-remote/src/index.ts | 6 +- packages/mdx-remote/src/render.ts | 4 +- packages/mdx-remote/src/utils.ts | 4 +- packages/mdx/loader-mdx.cjs | 4 +- packages/mdx/loader-meta.cjs | 4 +- packages/mdx/package.json | 60 ++--- packages/mdx/src/config/build.ts | 40 +--- packages/mdx/src/config/define.ts | 16 +- packages/mdx/src/config/index.ts | 5 +- packages/mdx/src/config/load-from-file.ts | 9 +- packages/mdx/src/config/preset.ts | 15 +- packages/mdx/src/core.ts | 43 +--- packages/mdx/src/loaders/mdx/build-mdx.ts | 18 +- packages/mdx/src/loaders/mdx/index.ts | 24 +- packages/mdx/src/loaders/mdx/mdast-utils.ts | 3 +- .../mdx/src/loaders/mdx/remark-include.ts | 15 +- .../mdx/src/loaders/mdx/remark-unravel.ts | 10 +- packages/mdx/src/next/index.ts | 5 +- packages/mdx/src/node/loader.ts | 4 +- packages/mdx/src/plugins/index-file.ts | 49 +--- packages/mdx/src/plugins/json-schema.ts | 4 +- packages/mdx/src/plugins/last-modified.ts | 21 +- packages/mdx/src/runtime/browser.ts | 17 +- packages/mdx/src/runtime/dynamic.ts | 18 +- packages/mdx/src/runtime/server.ts | 45 +--- packages/mdx/src/utils/codegen.ts | 14 +- packages/mdx/src/utils/validation.ts | 8 +- packages/mdx/src/vite/index.ts | 13 +- packages/mdx/test/index.test.ts | 23 +- packages/mdx/test/remark-include.test.ts | 13 +- packages/obsidian/package.json | 42 ++-- packages/obsidian/src/build-storage.ts | 3 +- packages/obsidian/src/index.ts | 11 +- packages/obsidian/src/mdx/index.ts | 5 +- packages/obsidian/src/read-vaults.ts | 4 +- packages/obsidian/src/remark/index.ts | 5 +- .../obsidian/src/remark/remark-block-id.ts | 3 +- .../obsidian/src/remark/remark-convert.ts | 4 +- .../obsidian/src/remark/remark-wikilinks.ts | 28 +-- packages/obsidian/src/ui/icons.tsx | 14 +- packages/obsidian/src/ui/index.tsx | 16 +- packages/obsidian/src/utils/flatten-node.ts | 3 +- packages/obsidian/src/utils/get-refs.ts | 6 +- packages/openapi/package.json | 54 ++--- packages/openapi/src/generate-file.ts | 19 +- packages/openapi/src/playground/client.tsx | 127 +++-------- .../src/playground/components/inputs.tsx | 82 ++----- .../playground/components/oauth-dialog.tsx | 58 +++-- .../playground/components/server-select.tsx | 15 +- packages/openapi/src/playground/fetcher.ts | 12 +- .../src/playground/get-default-values.ts | 3 +- packages/openapi/src/playground/index.tsx | 15 +- packages/openapi/src/playground/schema.tsx | 14 +- .../openapi/src/requests/generators/csharp.ts | 7 +- .../openapi/src/requests/generators/curl.ts | 3 +- .../openapi/src/requests/generators/go.ts | 4 +- .../openapi/src/requests/generators/java.ts | 8 +- .../src/requests/generators/javascript.ts | 4 +- .../openapi/src/requests/media/adapter.ts | 18 +- packages/openapi/src/requests/media/encode.ts | 3 +- packages/openapi/src/requests/string-utils.ts | 3 +- .../openapi/src/requests/to-python-object.ts | 3 +- packages/openapi/src/scalar/client.tsx | 14 +- packages/openapi/src/scalar/index.tsx | 8 +- packages/openapi/src/server/create.tsx | 20 +- packages/openapi/src/server/proxy.ts | 25 +-- packages/openapi/src/types.ts | 3 +- packages/openapi/src/ui/api-page.tsx | 35 +-- packages/openapi/src/ui/client/index.tsx | 4 +- packages/openapi/src/ui/client/storage-key.ts | 5 +- .../openapi/src/ui/components/accordion.tsx | 24 +- packages/openapi/src/ui/components/dialog.tsx | 25 +-- .../src/ui/components/method-label.tsx | 7 +- packages/openapi/src/ui/components/select.tsx | 7 +- packages/openapi/src/ui/contexts/api.tsx | 18 +- packages/openapi/src/ui/operation/client.tsx | 26 +-- packages/openapi/src/ui/operation/index.tsx | 85 ++----- .../openapi/src/ui/operation/request-tabs.tsx | 33 +-- .../src/ui/operation/response-tabs.tsx | 14 +- .../src/ui/operation/usage-tabs/client.tsx | 41 +--- .../src/ui/operation/usage-tabs/index.tsx | 9 +- packages/openapi/src/ui/schema/client.tsx | 86 ++----- packages/openapi/src/ui/schema/index.tsx | 45 +--- packages/openapi/src/utils/deep-equal.ts | 5 +- packages/openapi/src/utils/lazy.tsx | 4 +- packages/openapi/src/utils/merge-schema.ts | 14 +- packages/openapi/src/utils/pages/builder.ts | 23 +- .../openapi/src/utils/pages/preset-auto.ts | 36 +-- .../openapi/src/utils/pages/to-static-data.ts | 4 +- packages/openapi/src/utils/pages/to-text.ts | 8 +- .../openapi/src/utils/schema-to-string.ts | 6 +- packages/openapi/src/utils/schema.ts | 13 +- packages/openapi/src/utils/url.ts | 10 +- packages/openapi/test/code-sample.test.ts | 16 +- packages/openapi/test/fixtures/unkey.json | 29 +-- packages/openapi/test/index.test.ts | 24 +- .../test/media-adapter-resolve.test.ts | 26 +-- packages/openapi/test/schema-ui.test.ts | 3 +- packages/openapi/test/utils.test.ts | 103 +++------ packages/press/package.json | 72 +++--- packages/press/src/config/content.ts | 7 +- packages/press/src/config/global.ts | 4 +- packages/press/src/constants.ts | 5 +- packages/press/src/entry.browser.tsx | 8 +- packages/press/src/entry.rsc.tsx | 4 +- packages/press/src/entry.ssr.tsx | 22 +- packages/press/src/lib/get-config.ts | 8 +- packages/press/src/routes/docs/page.tsx | 11 +- packages/press/src/routes/root/client.tsx | 8 +- packages/press/src/vite/index.ts | 18 +- packages/python/package.json | 44 ++-- packages/python/pyproject.toml | 10 +- packages/python/src/components/index.tsx | 66 ++---- packages/python/src/convert.ts | 34 +-- packages/radix-ui/css/preset.css | 6 +- packages/radix-ui/package.json | 88 ++++---- .../radix-ui/src/components/accordion.tsx | 21 +- packages/radix-ui/src/components/banner.tsx | 7 +- packages/radix-ui/src/components/callout.tsx | 33 +-- packages/radix-ui/src/components/card.tsx | 9 +- .../radix-ui/src/components/codeblock.tsx | 32 +-- .../src/components/dialog/search-algolia.tsx | 16 +- .../src/components/dialog/search-default.tsx | 11 +- .../src/components/dialog/search-orama.tsx | 16 +- .../radix-ui/src/components/dialog/search.tsx | 70 ++---- .../src/components/dynamic-codeblock.tsx | 26 +-- packages/radix-ui/src/components/files.tsx | 28 +-- packages/radix-ui/src/components/heading.tsx | 5 +- .../radix-ui/src/components/image-zoom.tsx | 15 +- .../radix-ui/src/components/inline-toc.tsx | 6 +- .../radix-ui/src/components/sidebar/base.tsx | 80 ++----- .../src/components/sidebar/link-item.tsx | 7 +- .../src/components/sidebar/page-tree.tsx | 28 +-- .../src/components/sidebar/tabs/dropdown.tsx | 14 +- .../src/components/sidebar/tabs/index.tsx | 10 +- packages/radix-ui/src/components/tabs.tsx | 13 +- .../radix-ui/src/components/type-table.tsx | 27 +-- .../radix-ui/src/components/ui/accordion.tsx | 5 +- .../src/components/ui/navigation-menu.tsx | 6 +- .../src/components/ui/scroll-area.tsx | 13 +- packages/radix-ui/src/components/ui/tabs.tsx | 5 +- packages/radix-ui/src/layouts/docs/client.tsx | 27 +-- packages/radix-ui/src/layouts/docs/index.tsx | 88 ++------ .../radix-ui/src/layouts/docs/page/client.tsx | 56 +---- .../radix-ui/src/layouts/docs/page/index.tsx | 52 +---- .../radix-ui/src/layouts/docs/sidebar.tsx | 31 +-- packages/radix-ui/src/layouts/home/client.tsx | 62 ++--- packages/radix-ui/src/layouts/home/index.tsx | 15 +- packages/radix-ui/src/layouts/home/navbar.tsx | 5 +- .../radix-ui/src/layouts/notebook/client.tsx | 55 +---- .../radix-ui/src/layouts/notebook/index.tsx | 68 +----- .../src/layouts/notebook/page/client.tsx | 56 +---- .../src/layouts/notebook/page/index.tsx | 52 +---- .../radix-ui/src/layouts/notebook/sidebar.tsx | 47 +--- .../src/layouts/shared/language-toggle.tsx | 10 +- .../src/layouts/shared/search-toggle.tsx | 3 +- .../src/layouts/shared/theme-toggle.tsx | 26 +-- packages/radix-ui/src/mdx.server.tsx | 7 +- packages/radix-ui/src/mdx.tsx | 40 +--- packages/radix-ui/src/page.tsx | 24 +- packages/radix-ui/src/provider/base.tsx | 19 +- packages/twoslash/package.json | 52 ++--- packages/twoslash/src/index.ts | 25 +-- packages/twoslash/src/ui/popup.tsx | 71 +++--- packages/typescript/package.json | 42 ++-- packages/typescript/src/cache/fs-cache.ts | 14 +- packages/typescript/src/lib/base.ts | 36 +-- .../typescript/src/lib/get-simple-form.ts | 5 +- .../src/lib/remark-auto-type-table.ts | 28 +-- packages/typescript/src/lib/type-table.ts | 5 +- packages/typescript/src/markdown.ts | 10 +- .../typescript/src/ui/auto-type-table.tsx | 26 +-- packages/typescript/test/index.test.ts | 3 +- packages/typescript/test/type-gen.test.ts | 7 +- packages/ui/css/colors/ocean.css | 6 +- packages/ui/css/colors/vitepress.css | 18 +- packages/ui/package.json | 30 +-- packages/ui/src/_registry/index.ts | 20 +- packages/ui/src/_registry/layout/docs-min.tsx | 28 +-- packages/ui/src/_registry/layout/page-min.tsx | 16 +- packages/ui/src/components/toc/clerk.tsx | 11 +- packages/ui/src/components/toc/default.tsx | 5 +- packages/ui/src/components/toc/index.tsx | 19 +- packages/ui/src/contexts/i18n.tsx | 8 +- packages/ui/src/contexts/search.tsx | 6 +- packages/ui/src/contexts/tree.tsx | 13 +- packages/ui/src/hooks/use-copy-button.ts | 8 +- packages/ui/src/link-item.tsx | 12 +- packages/ui/src/merge-refs.ts | 4 +- packages/ui/src/og/next.tsx | 14 +- packages/ui/src/typography/index.ts | 27 +-- packages/ui/src/typography/styles.ts | 6 +- packages/ui/src/urls.ts | 9 +- pnpm-lock.yaml | 136 +++++++---- prettier.config.mjs | 6 - renovate.json | 6 +- 488 files changed, 2527 insertions(+), 6846 deletions(-) create mode 100644 .oxfmtrc.jsonc delete mode 100644 .prettierignore delete mode 100644 apps/docs/app/(home)/docs/page.tsx rename apps/docs/app/docs/{[...slug] => [[...slug]]}/page.tsx (82%) rename apps/docs/app/docs/{[...slug] => [[...slug]]}/suggestions.ts (100%) create mode 100644 apps/docs/lib/source/navigation.ts delete mode 100644 prettier.config.mjs diff --git a/.github/contributing.md b/.github/contributing.md index 9b9863d7a..47a3056c9 100644 --- a/.github/contributing.md +++ b/.github/contributing.md @@ -6,12 +6,12 @@ Before submitting a pull request, there are some guidelines you should notice. ### Guidelines This project is a monorepo using Turborepo, pnpm and -[Changesets](https://github.com/changesets/changesets). +[Changesets](https://github.com/changesets/changesets). #### Before Submitting - Check if there's other similar PRs. -- Format your code with `pnpm run prettier`. +- Format your code with `pnpm run format`. - Add changesets with `pnpm changeset`, which documents the changes you've made. - Run unit tests with `pnpm test` and update snapshots if necessary. @@ -27,7 +27,7 @@ OR open a bug report and link it in your PR. #### Docs -Contributing to the docs is relatively easier, make sure to check the typos and grammatical mistakes before submitting. +Contributing to the docs is relatively easier, make sure to check the typos and grammatical mistakes before submitting. ### New to contributing? @@ -37,4 +37,4 @@ it is located in `/apps/docs/content/docs`. To run the docs site in dev mode, build the dependencies with `pnpm run build --filter=./packages/*` and run `pnpm run dev --filter=docs` to start the dev server. -You don't need any extra environment variables to run this project. \ No newline at end of file +You don't need any extra environment variables to run this project. diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 0101f22dd..79c629815 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -23,7 +23,7 @@ jobs: run: pnpm i --frozen-lockfile - name: Lint Format - run: pnpm lint:prettier + run: pnpm lint:format - name: Check Types run: pnpm build --filter=./packages/* && pnpm i --frozen-lockfile && pnpm types:check diff --git a/.oxfmtrc.jsonc b/.oxfmtrc.jsonc new file mode 100644 index 000000000..d222feed2 --- /dev/null +++ b/.oxfmtrc.jsonc @@ -0,0 +1,29 @@ +{ + "$schema": "./node_modules/oxfmt/configuration_schema.json", + "singleQuote": true, + "ignorePatterns": [ + "CHANGELOG.md", + "pnpm-lock.yaml", + ".github/**/*.md", + + "packages/create-app/versions.json", + + "**/test/out/**/*", + "**/test/fixtures/**/*.output.*", + "**/test/fixtures/**/*.out.*", + + "out", + ".content-collections", + + "examples/obsidian/content/docs/vault/**/*", + "examples/obsidian/obsidian/Obsidian Vault", + + ".content-collections/**/*", + + "packages/mdx-remote/test/fixtures/**/*.js", + "packages/mdx-remote/test/fixtures/**/*.json", + "packages/core/test/fixtures/page-trees/**/*.json", + + "routeTree.gen.ts", + ], +} diff --git a/.prettierignore b/.prettierignore deleted file mode 100644 index dd7adc1d1..000000000 --- a/.prettierignore +++ /dev/null @@ -1,29 +0,0 @@ -CHANGELOG.md -pnpm-lock.yaml -.github/**/*.md - -packages/create-app/versions.json - -**/test/out/**/* -**/test/fixtures/**/*.output.* -**/test/fixtures/**/*.out.* - -out -.content-collections - -apps/docs/content/docs/ui/museum/*.mdx -!apps/docs/content/docs/ui/museum/index.mdx - -examples/openapi/content/docs/(api)/**/*.mdx -!examples/openapi/content/docs/(api)/index.mdx - -examples/obsidian/content/docs/vault/**/* -examples/obsidian/obsidian/Obsidian Vault - -.content-collections/**/* - -packages/mdx-remote/test/fixtures/**/*.js -packages/mdx-remote/test/fixtures/**/*.json -packages/core/test/fixtures/page-trees/**/*.json - -routeTree.gen.ts \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json index e57d18142..eb4eaa36f 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -11,6 +11,5 @@ "files.associations": { "**/packages/create-app/template/**/*": "plaintext" }, - "oxc.enable": false, - "editor.defaultFormatter": "esbenp.prettier-vscode" + "editor.defaultFormatter": "oxc.oxc-vscode" } diff --git a/apps/docs/app/(home)/blog/[slug]/page.client.tsx b/apps/docs/app/(home)/blog/[slug]/page.client.tsx index b1cf7a773..a04715215 100644 --- a/apps/docs/app/(home)/blog/[slug]/page.client.tsx +++ b/apps/docs/app/(home)/blog/[slug]/page.client.tsx @@ -10,11 +10,7 @@ export function ShareButton({ url }: { url: string }) { }); return ( - diff --git a/apps/docs/app/(home)/blog/[slug]/page.tsx b/apps/docs/app/(home)/blog/[slug]/page.tsx index d1c5f3e60..2bf58f642 100644 --- a/apps/docs/app/(home)/blog/[slug]/page.tsx +++ b/apps/docs/app/(home)/blog/[slug]/page.tsx @@ -28,8 +28,7 @@ export default async function Page(props: PageProps<'/blog/[slug]'>) {

At

{new Date( - page.data.date ?? - path.basename(page.path, path.extname(page.path)), + page.data.date ?? path.basename(page.path, path.extname(page.path)), ).toDateString()}

@@ -61,9 +60,7 @@ export default async function Page(props: PageProps<'/blog/[slug]'>) { ); } -export async function generateMetadata( - props: PageProps<'/blog/[slug]'>, -): Promise { +export async function generateMetadata(props: PageProps<'/blog/[slug]'>): Promise { const params = await props.params; const page = blog.getPage([params.slug]); @@ -71,8 +68,7 @@ export async function generateMetadata( return createMetadata({ title: page.data.title, - description: - page.data.description ?? 'The library for building documentation sites', + description: page.data.description ?? 'The library for building documentation sites', }); } diff --git a/apps/docs/app/(home)/blog/page.tsx b/apps/docs/app/(home)/blog/page.tsx index 6f59cb226..4a9bb8c7c 100644 --- a/apps/docs/app/(home)/blog/page.tsx +++ b/apps/docs/app/(home)/blog/page.tsx @@ -39,9 +39,7 @@ export default function Page() { className="flex flex-col bg-fd-card rounded-2xl border shadow-sm p-4 transition-colors hover:bg-fd-accent hover:text-fd-accent-foreground" >

{post.data.title}

-

- {post.data.description} -

+

{post.data.description}

{new Date(post.data.date ?? getName(post.path)).toDateString()} diff --git a/apps/docs/app/(home)/docs/page.tsx b/apps/docs/app/(home)/docs/page.tsx deleted file mode 100644 index b8b8a880e..000000000 --- a/apps/docs/app/(home)/docs/page.tsx +++ /dev/null @@ -1,69 +0,0 @@ -import { Building2, Library, Pencil } from 'lucide-react'; -import Link, { type LinkProps } from 'next/link'; - -export default function DocsPage() { - return ( -

-

- Getting Started -

-

- Portal to different sections of docs. -

-
- {[ - { - name: 'Fumadocs', - description: - 'The full-powered documentation framework with an excellent UI.', - icon: , - href: '/docs/ui', - }, - { - name: 'Fumadocs Core', - description: 'The core library of Fumadocs.', - icon: , - href: '/docs/headless', - }, - { - name: 'Fumadocs MDX', - description: - 'The library for handling MDX in your React.js framework.', - icon: , - href: '/docs/mdx', - }, - { - name: 'Fumadocs CLI', - description: 'The CLI tool for Fumadocs.', - icon: , - href: '/docs/cli', - }, - ].map((item) => ( - - {item.icon} -

{item.name}

-

- {item.description} -

-
- ))} -
-
- ); -} - -function Icon({ children }: { children: React.ReactNode }) { - return ( -
- {children} -
- ); -} - -function Item(props: LinkProps & { children: React.ReactNode }) { - return ( - - {props.children} - - ); -} diff --git a/apps/docs/app/(home)/icons.tsx b/apps/docs/app/(home)/icons.tsx index 35a1a19fd..0715868a4 100644 --- a/apps/docs/app/(home)/icons.tsx +++ b/apps/docs/app/(home)/icons.tsx @@ -36,13 +36,7 @@ export function NextSVG(props: SVGProps): React.ReactElement { d="M149.508 157.52L69.142 54H54V125.97H66.1136V69.3836L139.999 164.845C143.333 162.614 146.509 160.165 149.508 157.52Z" fill="url(#:R0:paint0_linear_408_134)" /> - + ): React.ReactElement { ); } -export function NetlifyLogo( - props: SVGProps, -): React.ReactElement { +export function NetlifyLogo(props: SVGProps): React.ReactElement { return ( - + , -): React.ReactElement { +export function OpenAPIIcon(props: SVGProps): React.ReactElement { return ( diff --git a/apps/docs/app/(home)/layout.tsx b/apps/docs/app/(home)/layout.tsx index d14526c48..9cfb43542 100644 --- a/apps/docs/app/(home)/layout.tsx +++ b/apps/docs/app/(home)/layout.tsx @@ -49,8 +49,7 @@ export default function Layout({ children }: LayoutProps<'/'>) { alt="Perview" className="rounded-t-lg object-cover" style={{ - maskImage: - 'linear-gradient(to bottom,white 60%,transparent)', + maskImage: 'linear-gradient(to bottom,white 60%,transparent)', }} /> @@ -60,10 +59,7 @@ export default function Layout({ children }: LayoutProps<'/'>) {

- +

Components

@@ -71,22 +67,15 @@ export default function Layout({ children }: LayoutProps<'/'>) {

- +

OpenAPI

- Generate interactive playgrounds and docs for your OpenAPI - schema. + Generate interactive playgrounds and docs for your OpenAPI schema.

- +

Markdown

diff --git a/apps/docs/app/(home)/marquee.tsx b/apps/docs/app/(home)/marquee.tsx index 939b56b01..4a73e91fd 100644 --- a/apps/docs/app/(home)/marquee.tsx +++ b/apps/docs/app/(home)/marquee.tsx @@ -57,9 +57,7 @@ export function Marquee({ key={i} className={cn( 'flex shrink-0 justify-around [gap:var(--gap)]', - vertical - ? 'animate-marquee-vertical flex-col' - : 'animate-marquee flex-row', + vertical ? 'animate-marquee-vertical flex-col' : 'animate-marquee flex-row', pauseOnHover && 'group-hover:[animation-play-state:paused]', reverse && '[animation-direction:reverse]', )} diff --git a/apps/docs/app/(home)/page.client.tsx b/apps/docs/app/(home)/page.client.tsx index 83e8f9762..8acd34daf 100644 --- a/apps/docs/app/(home)/page.client.tsx +++ b/apps/docs/app/(home)/page.client.tsx @@ -127,9 +127,7 @@ export function CreateAppAnimation() { lines.push( {installCmd.substring(0, tick)} - {tick < timeCommandEnter && ( -

- )} + {tick < timeCommandEnter &&
} , ); @@ -176,8 +174,7 @@ export function CreateAppAnimation() { )}
         
- {' '} - Terminal + Terminal
@@ -206,17 +203,14 @@ function LaunchAppWindow(props: HTMLAttributes) { ); } -const previewButtonVariants = cva( - 'w-20 h-8 text-sm font-medium transition-colors rounded-full', - { - variants: { - active: { - true: 'text-fd-primary-foreground', - false: 'text-fd-muted-foreground', - }, +const previewButtonVariants = cva('w-20 h-8 text-sm font-medium transition-colors rounded-full', { + variants: { + active: { + true: 'text-fd-primary-foreground', + false: 'text-fd-muted-foreground', }, }, -); +}); export function PreviewImages(props: ComponentProps<'div'>) { const [active, setActive] = useState(0); const previews = [ @@ -261,9 +255,7 @@ export function PreviewImages(props: ComponentProps<'div'>) { alt="preview" className={cn( 'col-start-1 row-start-1 select-none', - active === i - ? 'animate-in fade-in slide-in-from-bottom-12 duration-800' - : 'invisible', + active === i ? 'animate-in fade-in slide-in-from-bottom-12 duration-800' : 'invisible', )} /> ))} @@ -291,8 +283,7 @@ export function Writing({ }: { tabs: Record<(typeof WritingTabs)[number]['value'], ReactNode>; }) { - const [tab, setTab] = - useState<(typeof WritingTabs)[number]['value']>('writer'); + const [tab, setTab] = useState<(typeof WritingTabs)[number]['value']>('writer'); return (
@@ -300,8 +291,8 @@ export function Writing({ Anybody can write.

- Native support for Markdown & MDX, offering intuitive, convenient and - extensive syntax for non-dev writers, developers, and AI agents. + Native support for Markdown & MDX, offering intuitive, convenient and extensive syntax for + non-dev writers, developers, and AI agents.

{WritingTabs.map((item) => ( @@ -355,9 +346,7 @@ export function AgnosticBackground() { ); } -export function ContentAdoptionBackground( - props: ComponentProps, -) { +export function ContentAdoptionBackground(props: ComponentProps) { const { resolvedTheme } = useTheme(); return ( @@ -376,10 +365,7 @@ export function ContentAdoptionBackground( } let observer: IntersectionObserver; -const observerTargets = new WeakMap< - Element, - (entry: IntersectionObserverEntry) => void ->(); +const observerTargets = new WeakMap void>(); function useIsVisible(ref: RefObject) { const [visible, setVisible] = useState(false); diff --git a/apps/docs/app/(home)/page.tsx b/apps/docs/app/(home)/page.tsx index e0896d764..548ae7045 100644 --- a/apps/docs/app/(home)/page.tsx +++ b/apps/docs/app/(home)/page.tsx @@ -39,8 +39,7 @@ const buttonVariants = cva( variants: { variant: { primary: 'bg-brand text-brand-foreground hover:bg-brand-200', - secondary: - 'border bg-fd-secondary text-fd-secondary-foreground hover:bg-fd-accent', + secondary: 'border bg-fd-secondary text-fd-secondary-foreground hover:bg-fd-accent', }, }, defaultVariants: { @@ -77,20 +76,14 @@ export default function Page() { your style.
- + Getting Started Open CodeSandbox @@ -99,14 +92,11 @@ export default function Page() {

- Fumadocs is a React.js{' '} - documentation framework for{' '} - Developers, - beautifully designed by{' '} - Fuma Nama. Bringing - powerful features for your docs workflows, with high customizability - to fit your preferences, works seamlessly with any React.js framework, - CMS — anything. + Fumadocs is a React.js documentation + framework for Developers, beautifully + designed by Fuma Nama. Bringing powerful + features for your docs workflows, with high customizability to fit your preferences, works + seamlessly with any React.js framework, CMS — anything.

@@ -145,18 +135,13 @@ function Aesthetics() {

-

+

Minimal aesthetics, Maximum customizability.

- Fumadocs offer well-designed themes, with a headless mode to plug your - own UI. -

-

- Pro designer? Customise the theme using Fumadocs CLI. + Fumadocs offer well-designed themes, with a headless mode to plug your own UI.

+

Pro designer? Customise the theme using Fumadocs CLI.

Choose a layout to customise...`} lang="bash" @@ -191,16 +176,11 @@ return 0; lang="mdx" />
-

+

The familiar syntax.

- It is just Markdown, with additional features seamlessly - composing into the syntax. + It is just Markdown, with additional features seamlessly composing into the syntax.