2129 Commits
Author SHA1 Message Date
github-actions[bot]andGitHub d1c19de6a1 Merge pull request #3351 from fuma-nama/changeset-release/dev
Version Packages
2026-06-12 02:49:56 +08:00
Fuma Nama 501728965f chore: bump deps 2026-06-12 02:39:52 +08:00
Fuma Nama 7a777226f1 fix(ui): language display name 2026-06-11 21:14:08 +08:00
Fuma Nama 7974b8655b Version Packages 2026-06-11 01:35:10 +08:00
Fuma Nama 5d981ab540 docs: migration guide for OpenAPI v11 2026-06-11 01:18:26 +08:00
Fuma Nama 0415b4ad6a breaking(openapi): drop other deprecated APIs 2026-06-11 01:18:26 +08:00
SyntaxHQDEVandGitHub 9b9545fd82 Add Fumadocs package bugs metadata (#3347) 2026-06-10 20:21:57 +08:00
Fuma Nama 7285343f90 feat(openapi): keep more legacy options 2026-06-10 16:28:55 +08:00
Fuma Nama e8d6cc3048 feat(openapi): backward compat with <APIPage /> 2026-06-10 14:44:54 +08:00
Fuma Nama 3257e4a382 feat(asyncapi): show traits & bindings correctly 2026-06-09 19:50:48 +08:00
Fuma NamaandFuma Nama 779efff770 fix(openapi + story): better UI + translations 2026-06-08 20:05:08 +08:00
Fuma NamaandFuma Nama a699dcb664 chore(openapi): update test snapshots 2026-06-08 20:05:08 +08:00
Fuma NamaandFuma Nama 74102c5655 feat(asyncapi): implement 2026-06-07 20:08:57 +08:00
Fuma NamaandFuma Nama 0ca9dbe1fe perf(openapi): only dereference at render 2026-06-07 20:08:57 +08:00
Fuma NamaandFuma Nama f0277063d1 breaking(openapi): unify client API 2026-06-07 20:08:57 +08:00
Fuma Nama 0cc1facdac feat(ui): make uiTranslations() optional for translations API 2026-06-05 21:40:39 +08:00
github-actions[bot]GitHubgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2ea0ed0aa8 Version Packages (#3339)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-06-05 17:54:18 +08:00
Fuma Nama 6dc8812030 feat(preview): use waku beta 2 2026-06-05 17:47:24 +08:00
github-actions[bot]andGitHub e714fff621 Merge pull request #3338 from fuma-nama/changeset-release/dev
Version Packages
2026-06-05 17:05:09 +08:00
Fuma Nama 2d65ceb343 feat(mdx): support hot reload in source.config.ts with Vite plugin 2026-06-04 22:56:34 +08:00
github-actions[bot]GitHubgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
6cb229cc4c Version Packages (#3336)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-06-04 18:19:17 +08:00
Fuma Nama 4f22826708 chore: Improve micro-interaction 2026-06-04 17:43:25 +08:00
github-actions[bot]GitHubgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
ec9d4c0875 Version Packages (#3335)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-06-03 21:08:00 +08:00
Fuma Nama 2771e34d70 fix(openapi): reduce package size 2026-06-03 21:00:02 +08:00
github-actions[bot]andGitHub 9335822490 Merge pull request #3334 from fuma-nama/changeset-release/dev
Version Packages
2026-06-03 19:28:10 +08:00
Fuma Nama 8eb7782915 feat(openapi): support components.Heading in client config 2026-06-03 19:12:35 +08:00
github-actions[bot]GitHubgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
c305cca353 Version Packages (#3331)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-06-02 17:54:12 +08:00
Fuma Nama c5d16192ab feat(openapi): better Webhook UI 2026-06-02 17:48:58 +08:00
23055816e6 feat(openapi): anchor links for request/response/parameter properties (#3327)
* feat(openapi): anchor links on schema properties

Each property rendered inline in a request body, response body, or parameter
now gets a stable id and a hover-revealed link icon, enabling deep links to
specific fields from guides. Ids follow:
  - body-<prop> for request bodies
  - response-<status>-<prop> for responses
  - parameters-<location>-<name> for parameters

A new idPrefix option on SchemaUI opts other Schema renderings into the same
behavior. See fuma-nama/fumadocs#3322.

* feat(openapi): deep-link nested schema properties

Extend the property anchor scheme to support hashes that point inside a
popover or below an array's "Show array" collapsible. Schema-internal
segments are joined with `.` so `#body.user.address.street` resolves
unambiguously regardless of dashes in property names.

On hash match, the inline anchor scrolls into view, the matching popover
auto-opens with its breadcrumb pre-navigated, the array collapsible
expands, and oneOf/anyOf tabs switch to the variant containing the
targeted field. The deep target is consumed after the first auto-open,
so subsequent user clicks on the same trigger get the base view; a
different deep hash re-arms it.

The hover anchor is now a copy-link button (matches fumadocs heading
anchors) that writes the full URL to the clipboard and updates the
address bar via history.replaceState (no hashchange, no popover reset).

* address PR review feedback

- Clarified the changeset: split anchor ID rules by context (request/response property paths vs flat parameter anchors) so dots aren't implied to apply to parameters.
- Namespaced anchors by media type when an operation has multiple request-body or response content types: prefix becomes `<media-slug>-body` / `response-<status>-<media-slug>`, and the content-type SelectTabs auto-switches to the targeted tab when a deep link arrives. Single-content-type operations keep the simple `body` / `response-<status>` form.
- Made findUnionPropMatch validate the *full* remaining path (via new pathResolves helper) so two variants that share the first prop name no longer race; the wrong tab can't be selected for a deep hash anymore.
- Reset SchemaUIPopover breadcrumb state when initialPath changes so a fresh deep hash takes effect on an already-open popover.
- Replaced the lossy slugifyPropertyName with encodeURIComponent (plus % encoding for `.`) so property anchors stay collision-safe across case-only differences, punctuation-only differences, and non-ASCII keys, while `.` remains exclusively a path separator.

* address PR review feedback

- Fix potential hydration mismatch in useTabValueFromHash by initializing state with the fallback value and resolving from the URL hash inside useEffect; the deep-linked tab now corrects after hydration on the client.

* fix(openapi): move useTabValueFromHash into a client component

The previous hydration-mismatch fix put `useEffect`/`useState` directly in
`operation/index.tsx`, which is a Server Component — Next refused to compile
because RSC modules can't import client-only React APIs. Extract the
hash-aware tab wrapper into `operation/hash-tabs.tsx` (with `"use client"`)
and switch both body and response sites to `HashAwareSelectTabs`. The parent
tree stays server-side; only the tab wrapper hydrates on the client.

* address PR review feedback

- Wrap decodeURIComponent in try/catch in both deep-link hash parsers so a malformed percent-encoded fragment (e.g. `#body%`) is treated as "no target" instead of throwing URIError and breaking tab / popover resolution.

* address PR review feedback

- Match the URL hash against DOM ids using the raw fragment first, with the fully-decoded form as a fallback, in both DeepLinkProvider and hash-tabs. Property anchors are generated via slugifyPropertyName (which percent-encodes reserved chars like `.`), so DOM ids contain the encoded form; decoding the hash before lookup caused links like `#body.foo%2Ebar` to miss the matching element.

* redesign

* fix types

---------

Co-authored-by: Fuma Nama <[email protected]>
2026-06-02 03:43:01 +08:00
github-actions[bot]GitHubgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
34b75a0cfb Version Packages (#3324)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-05-29 19:49:33 +08:00
Fuma Nama d35d0d6a43 fix(mdx): respect root in Vite config 2026-05-29 18:23:25 +08:00
Fuma Nama 783c048904 fix(preview): fix invalid content type in /img endpoint 2026-05-29 17:48:15 +08:00
Fuma Nama 42f02559da feat(core): support invalidate & revalidate on dynamic loader 2026-05-29 16:47:48 +08:00
Fuma Nama a8077981c6 fix(core): improve source API utils & types 2026-05-29 16:20:57 +08:00
github-actions[bot]GitHubgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
4d5a423c59 Version Packages (#3314)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-05-28 15:43:53 +08:00
Fuma Nama c800347b3b feat(story): support Webpack/Turbopack plugin 2026-05-28 15:14:41 +08:00
Fuma Nama 5836093754 feat(core): expose icon transformer 2026-05-27 19:27:48 +08:00
Fuma Nama 5d579bdfac fix(openapi): improve loader API types 2026-05-27 19:27:48 +08:00
Fuma Nama 84ce691a06 fix(ui): consistent toc size when empty 2026-05-27 19:27:47 +08:00
github-actions[bot]GitHubgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
35bb0efe3b Version Packages (#3309)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-05-26 22:23:32 +08:00
Fuma Nama 5c5d319331 feat(story): New Vite plugin for non-RSC environment 2026-05-26 21:54:05 +08:00
Fuma Nama cd044251d7 feat(mdx): support _fumadocs_skipViteConfig flag for Vite plugin 2026-05-25 17:50:40 +08:00
github-actions[bot]andGitHub 2a1e048826 Merge pull request #3307 from fuma-nama/changeset-release/dev
Version Packages
2026-05-25 13:27:01 +08:00
Fuma Nama 66426c76f6 fix(sanity): sanity peer deps 2026-05-25 13:24:53 +08:00
github-actions[bot]GitHubgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
17493812fb Version Packages (#3304)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-05-23 22:18:29 +08:00
Fuma Nama 511f1b14a6 fix(cli): lower eslint version 2026-05-23 22:15:27 +08:00
github-actions[bot]andGitHub 4aa30828a1 Merge pull request #3301 from fuma-nama/changeset-release/dev
Version Packages
2026-05-23 20:16:25 +08:00
Fuma Nama e77b9b3dea feat(core): Introduce pagesIndex property to explicitly define the index page for folder 2026-05-23 19:41:17 +08:00
Fuma Nama dca5b49929 fix(mdx): fix compatibility with ?raw query string 2026-05-23 00:37:38 +08:00
Fuma Nama 334c8fd190 feat(core): support different orders of preset() calls 2026-05-22 22:08:39 +08:00