Commit Graph

17 Commits

Author SHA1 Message Date
Sarah Dayan
ec1e71ec2f fix: adjust user menu button height for avatar content (#77)
Override the fixed h-6.5 from Kumo's sm size with h-auto and py-1 so
the button sizes naturally around the avatar. The sm size is still used
for text size, gap, and border-radius — only the height is overridden,
since this is a usage-specific concern (tall content inside a small
button) rather than a design system issue.

Co-authored-by: Matt Kane <mkane@cloudflare.com>
2026-04-06 21:09:12 +01:00
Delowar Hossain
fe74f8a33e Hide preview button unless collection supports preview and content is published (#70)
* Hide preview button unless collection supports preview and content is published

* Remove isPublished check

---------

Co-authored-by: Matt Kane <mkane@cloudflare.com>
2026-04-06 21:07:50 +01:00
Doğu Abaris
ab21f29f71 fix(admin): avoid locally caught exception in PasskeyLogin (#268)
* fix(admin): avoid locally caught exception in PasskeyLogin

Why:

The passkey login flow threw an error when navigator.credentials.get()
returned no credential, but that exception was immediately caught by the
local catch block in the same function. This triggered a
"throw of exception caught locally" warning and made the failure path
less direct.

What:

- Handle the missing credential case inline instead of throwing locally
- Preserve the existing error message shown to the user
- Keep the onError callback behavior unchanged

* Add changeset

---------

Co-authored-by: Matt Kane <m@mk.gg>
Co-authored-by: Matt Kane <mkane@cloudflare.com>
2026-04-06 20:05:16 +00:00
jul
71744fb8b2 align back button position in API Tokens section (#306)
* replace link with button for back navigation

* changeset
2026-04-06 20:43:38 +01:00
Flynsarmy
5f448d1035 Add Back navigation to Security and Domain settings pages (#45)
* Add Back navigation to Security and Domain settings pages

* changeset

---------

Co-authored-by: Matt Kane <mkane@cloudflare.com>
Co-authored-by: Matt Kane <m@mk.gg>
2026-04-06 10:46:22 +00:00
Jonah Foster
de251fc039 Fix drag-and-drop reordering for custom fields in content type editor (#108)
Wire up @dnd-kit sortable integration in ContentTypeEditor and connect the existing reorderFields API. The grab handle icon was visual-only with no drag functionality attached.

Closes #43

Co-authored-by: Matt Kane <mkane@cloudflare.com>
2026-04-06 07:26:41 +00:00
all3f0r1
73b71b4e59 fix(admin): apply data-mode attribute for system theme preference (#97)
When theme is "system", ThemeProvider removed the data-mode attribute
from <html>, expecting color-scheme: light dark to handle dark mode.
However, Tailwind dark: utilities are mapped to [data-mode="dark"] via
@custom-variant and do not respond to color-scheme, so dark mode never
activated for system preference users.

Decouple DOM synchronization from the theme preference by syncing
data-mode with resolvedTheme instead. This ensures data-mode is always
set to "light" or "dark" regardless of whether the user chose explicitly
or follows system preference.

Fixes #96

Co-authored-by: Matt Kane <mkane@cloudflare.com>
2026-04-06 06:54:37 +00:00
seslly
d2114523a5 fix: passkeys behind TLS reverse proxy (#225)
* fix: passkeys behind TLS reverse proxy

Add passkeyPublicOrigin and wire it through passkey routes so origin/rpId match
the browser when dev runs behind nginx. Expose dev-only /_emdash/api/dev/passkey-url,
add admin messaging for insecure WebAuthn contexts, nginx repro under demos/simple,
and direct kysely dependency for the simple demo Node adapter bundle.

Made-with: Cursor

* docs: add passkeyPublicOrigin to configuration reference

Adds the new passkeyPublicOrigin option and reverse proxy guidance
to the public-facing configuration docs as requested in PR review.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* update tests and more docs

* fix: add missing refresh-server-pat fixture and restore docs heading

---------

Co-authored-by: Joseph Eftekhari <jdeftekhari@gmail.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-06 07:41:07 +01:00
Sarah Dayan
28f98fda4f Fix header user menu button shifting on open (#74)
Base UI's PopoverTrigger injects invisible focus guard <span> elements
as siblings when the popover opens. The space-x-2 utility (which uses
> * + *) applied margin to these spans, causing the button to shift.

Replace space-x-2 with gap-2 which is unaffected by DOM changes.

Co-authored-by: Matt Kane <mkane@cloudflare.com>
2026-04-06 07:32:33 +01:00
Filip Ilić
9d10d2791f fix(admin): use collection urlPattern for preview button fallback URL (#181)
* fix(admin): use collection urlPattern for preview button fallback URL

The preview button hardcoded fallback URLs as /${collection}/${slug},
ignoring the collection's urlPattern setting. Collections with custom
URL patterns (e.g. urlPattern: "/biljke/{slug}" on a "biljka" collection)
would open a 404 instead of the correct page.

Thread urlPattern through the manifest and use it in the ContentEditor
preview fallback.

Fixes #167

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

Signed-off-by: Filip Ilic <ilic.filip@gmail.com>

* chore: add changeset for preview URL pattern fix

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

Signed-off-by: Filip Ilic <ilic.filip@gmail.com>

---------

Signed-off-by: Filip Ilic <ilic.filip@gmail.com>
Co-authored-by: Matt Kane <mkane@cloudflare.com>
2026-04-04 19:00:28 +00:00
Matt Kane
8fb4173036 fix: format router.tsx to pass oxfmt check 2026-04-04 16:00:27 +01:00
Foysal Zihak
018be7f1c3 fix(admin): use infinite scroll for content list to support large dat… (#135)
* fix(admin): use infinite scroll for content list to support large datasets

* chore: apply copilot review suggestions and add changeset
2026-04-04 09:02:57 +01:00
Matt Kane
422018aeb2 feat(admin): add proper EmDash logo branding to admin UI (#200)
Replace placeholder text branding ("— EmDash") with actual logo SVGs
from the brand assets. Adds Logo.tsx with LogoIcon (icon mark) and
LogoLockup (icon + wordmark) components.

- Sidebar: gradient icon mark replaces em dash text character
- Login, Signup, Setup: full lockup SVG with currentColor wordmark
- Welcome modal: logo icon replaces Sparkle placeholder
- Favicon: real gradient icon SVG replaces emoji
2026-04-03 22:23:02 +01:00
Matt Kane
ca3c2b77e1 Format 2026-04-01 11:51:57 +01:00
Matt Kane
7262b93a44 branding 2026-04-01 11:44:21 +01:00
Matt Kane
2e863566b3 Fix scope 2026-04-01 10:58:32 +01:00
Matt Kane
43fcb9a131 first commit 2026-04-01 10:44:22 +01:00