memos/web/tests
johnnyjoygh c031b77c83 chore: add a quiet button variant and one ring-free focus for kit
buttons

The calendar shipped its own "quiet control" grammar as a page-local set
of class strings: 28px tall, 13px text, muted ink that darkens under a
light hover wash, ring-free outline focus, and the accent fill reserved
for a pressed or current state. The same look was hand-rolled elsewhere
with drifting values (/65 ink, /50 washes, ring focus) as className
overrides on the kit's Button, against the kit policy.

The grammar now lives in the kit as `variant="quiet"`, with the accent
fill keyed off `aria-pressed`, `aria-current` and `data-popup-open`, so
a
control that is on, current, or holding a popup open fills itself. A
`size="icon-compact"` names the 28px square the sidebar already used for
its compose control; `sm` already had the height for labelled chips.

Kit buttons had no focus treatment of their own, so sites that needed
one
bolted `focus-visible:ring-*` overrides onto the Button. The base now
carries a 2px inset outline from a new `ui/focus.ts` constant that raw
controls (calendar grid cells, the reaction chip) import too, and the
calendar's controls.ts goes away.

With both in place the hand-rolled sites collapse onto the variant: the
calendar's header, month picker and day panel; the statistics month
navigator; the sidebar's section actions and compose and mobile menu
controls; the memo card's trailing actions and its action menu, which no
longer takes a className; the share-image dialog's footer; the memo
outline; and the inactive underline tab. The month title fills while its
picker is open and the outline's current heading fills like every other
current thing. Tests follow the classes they assert.
2026-09-06 22:43:21 +08:00
..
about-page.test.tsx feat(web): add a global memo composer to the sidebar (#6219) 2026-08-21 21:14:28 +08:00
activity-calendar-tooltip.test.ts feat(activity-calendar): aggregate by ViewContext.timeBasis 2026-05-02 00:26:53 +08:00
app-sidebar-context.test.tsx feat(sidebar): redesign memo detail navigation (#6261) 2026-09-02 20:20:22 +08:00
app-sidebar-logo.test.tsx chore: add a quiet button variant and one ring-free focus for kit 2026-09-06 22:43:21 +08:00
app-sidebar-routes.test.ts feat(web): add a calendar view of your memos (#6277) 2026-09-05 12:51:39 +08:00
attachment-inline-placement.test.tsx feat: insert attachment images into memo content (#6172) 2026-08-10 22:53:07 +08:00
attachment-library-source-link.test.tsx feat(spaces): unify collection scope across resource pages 2026-08-26 09:16:28 +08:00
attachment-library-stats.test.ts feat(spaces): unify collection scope across resource pages 2026-08-26 09:16:28 +08:00
attachment-urls.test.ts fix(storage): proxy S3 attachments through authenticated routes (#6210) 2026-08-18 23:38:35 +08:00
auth-context-initialization.test.tsx feat(web): add a global memo composer to the sidebar (#6219) 2026-08-21 21:14:28 +08:00
auth-page-layout.test.tsx feat(instance): persist access mode independently of URL (#6225) 2026-08-22 14:15:31 +08:00
auth-redirect.test.ts refactor(web/routing): guard-based auth flow, migrate tests to Vitest (#5848) 2026-04-18 01:06:54 +08:00
calendar-cell-empty-clickable.test.tsx feat(sidebar): separate checked filters from current rows 2026-09-02 22:50:29 +08:00
calendar-day-model.test.ts feat(web): calendar day panel refinements (#6280) 2026-09-06 13:15:17 +08:00
calendar-grid-rows.test.ts feat(web): add a calendar view of your memos (#6277) 2026-09-05 12:51:39 +08:00
calendar-month-days.test.ts refactor(calendar): collapse the activity calendar to the month grid 2026-09-02 22:55:51 +08:00
calendar-paths.test.ts feat(web): add a calendar view of your memos (#6277) 2026-09-05 12:51:39 +08:00
calendar-today-path.test.ts feat(web): calendar day panel refinements (#6280) 2026-09-06 13:15:17 +08:00
column-count.test.ts feat(web): add max-columns memo feed layout 2026-07-06 23:55:36 +08:00
column-grid-planner.test.ts fix(web): stabilize multi-column memo layout 2026-07-09 20:56:35 +08:00
column-grid.test.tsx chore(web): compact user profile header and in-place views on profiles 2026-09-05 00:22:05 +08:00
create-access-token-dialog.test.tsx test(release): cover 0.30.0 changelog promises 2026-07-26 22:21:19 +08:00
create-space-dialog.test.tsx feat(space): add client-defined UIDs and identity cues 2026-08-28 00:33:09 +08:00
create-webhook-dialog.test.tsx test(release): cover 0.30.0 changelog promises 2026-07-26 22:21:19 +08:00
date-filter-navigation.test.tsx feat(web): unify navigation in a route-aware sidebar (#6144) 2026-08-05 09:05:57 +08:00
derive-default-create-time.test.ts feat(memo): create memos on the selected calendar date (#5925) 2026-05-02 11:53:50 +08:00
dropdown-menu-size.test.tsx fix(web): correct RTL layout behavior (#6215) 2026-08-19 21:14:51 +08:00
editor-controller.test.ts chore: add global quick-create entry 2026-07-29 08:57:04 +08:00
editor-decorations.test.ts fix(markdown): support word-internal apostrophes in tags (#6135) 2026-08-02 21:08:57 +08:00
editor-formatting.test.ts test(release): cover 0.30.0 changelog promises 2026-07-26 22:21:19 +08:00
editor-heading-decorations.test.ts refactor: rebuild the editor on CodeMirror as decorated source 2026-06-28 22:59:14 +08:00
editor-inline-image-validation.test.ts feat: insert attachment images into memo content (#6172) 2026-08-10 22:53:07 +08:00
editor-keys.test.ts feat(editor): add Markdown formatting shortcuts (#6258) 2026-09-01 21:54:55 +08:00
editor-tag-autocomplete.test.ts fix(editor): match tag autocomplete on path segments 2026-08-16 22:09:04 +08:00
editor-upload-anchor.test.ts feat: insert attachment images into memo content (#6172) 2026-08-10 22:53:07 +08:00
editor.test.tsx fix(editor): enable native mobile text assistance (#6248) 2026-08-30 11:59:16 +08:00
error.test.ts fix(api): show clean RPC error messages 2026-07-18 11:20:15 +08:00
filtered-memo-stats.test.ts feat(spaces): unify collection scope across resource pages 2026-08-26 09:16:28 +08:00
formatting-toolbar.test.tsx fix(editor): scope view toggles to inline presentations (#6227) 2026-08-23 16:26:17 +08:00
gfm-email.test.ts feat(markdown): unify tag syntax and recognition (#6132) 2026-08-02 14:46:04 +08:00
gfm-url.test.ts feat(markdown): unify tag syntax and recognition (#6132) 2026-08-02 14:46:04 +08:00
global-memo-editor.test.tsx feat(editor): autofocus Home on initial desktop load (#6275) 2026-09-05 07:43:20 +08:00
guards.test.tsx feat(web): add a global memo composer to the sidebar (#6219) 2026-08-21 21:14:28 +08:00
hoist-new-memo.test.ts feat: surface newly created memo above pinned list 2026-06-21 14:11:46 +08:00
home-loading-boundary.test.tsx feat(editor): autofocus Home on initial desktop load (#6275) 2026-09-05 07:43:20 +08:00
hooks.test.tsx refactor(frontend): remove react-use dependency 2026-05-31 18:32:17 +08:00
i18n-document-direction.test.ts fix(web): correct RTL layout behavior (#6215) 2026-08-19 21:14:51 +08:00
i18n-locale-search.test.ts chore: add Hebrew language support (#6203) 2026-08-18 21:24:27 +08:00
inline-image-upload-files.test.ts feat(web): add a global memo composer to the sidebar (#6219) 2026-08-21 21:14:28 +08:00
insert-menu.test.tsx feat(spaces): add space-aware UI and filtering (#6230) 2026-08-24 23:13:55 +08:00
instance-access-query.test.tsx feat(instance): persist access mode independently of URL (#6225) 2026-08-22 14:15:31 +08:00
instance-section-access.test.tsx chore: prioritize access policies in system settings 2026-09-01 23:30:43 +08:00
invite-space-member-dialog.test.tsx feat(space): add client-defined UIDs and identity cues 2026-08-28 00:33:09 +08:00
live-memo-refresh.test.tsx feat(spaces): deliver invitations to the inbox (#6266) 2026-09-04 08:58:49 +08:00
locale-picker.test.tsx feat(i18n): add searchable locale picker 2026-06-09 09:33:17 +08:00
location-display-view.test.tsx test(release): cover 0.30.0 changelog promises 2026-07-26 22:21:19 +08:00
location-picker.test.tsx fix(map): restore keyless OpenStreetMap tiles (#6242) 2026-08-28 22:41:36 +08:00
managed-attachment.test.ts feat(web): add a global memo composer to the sidebar (#6219) 2026-08-21 21:14:28 +08:00
map-utils.test.tsx fix(map): restore keyless OpenStreetMap tiles (#6242) 2026-08-28 22:41:36 +08:00
markdown-manipulation.test.ts fix(web): restore sidebar and outline behavior (#6161) 2026-08-08 08:58:07 +08:00
markdown-task-actions.test.ts feat(web): add a global memo composer to the sidebar (#6219) 2026-08-21 21:14:28 +08:00
media-item-preview-metadata.test.ts feat: persist and display client media metadata (#6180) 2026-08-11 23:47:21 +08:00
media-loading.test.tsx feat(web): add a global memo composer to the sidebar (#6219) 2026-08-21 21:14:28 +08:00
media-metadata-display.test.ts feat: persist and display client media metadata (#6180) 2026-08-11 23:47:21 +08:00
media-metadata-exif-fixture.test.ts feat: persist and display client media metadata (#6180) 2026-08-11 23:47:21 +08:00
media-metadata-service.test.ts feat: persist and display client media metadata (#6180) 2026-08-11 23:47:21 +08:00
memo-action-menu.test.tsx chore: add a quiet button variant and one ring-free focus for kit 2026-09-06 22:43:21 +08:00
memo-action-navigation.test.tsx feat(sidebar): redesign memo detail navigation (#6261) 2026-09-02 20:20:22 +08:00
memo-body-compact.test.tsx chore: scope memo providers to authenticated routes 2026-07-30 23:42:37 +08:00
memo-card-height.test.ts feat(web): add a global memo composer to the sidebar (#6219) 2026-08-21 21:14:28 +08:00
memo-comment-section.test.tsx feat(sidebar): redesign memo detail navigation (#6261) 2026-09-02 20:20:22 +08:00
memo-comments-pagination.test.tsx feat(web): add a global memo composer to the sidebar (#6219) 2026-08-21 21:14:28 +08:00
memo-content-footnotes.test.tsx feat(spaces): unify collection scope across resource pages 2026-08-26 09:16:28 +08:00
memo-content-lazy-renderers.test.tsx feat(web): add a global memo composer to the sidebar (#6219) 2026-08-21 21:14:28 +08:00
memo-content-link-preview.test.tsx feat(web): add link preview view setting 2026-06-25 20:45:51 +08:00
memo-content-list.test.tsx fix(web): correct RTL layout behavior (#6215) 2026-08-19 21:14:51 +08:00
memo-content-paragraph.test.tsx feat(stats): support filtered all-user stats 2026-05-09 09:11:04 +08:00
memo-content-security.test.tsx fix(markdown): avoid parsing currency as inline math (#6216) 2026-08-20 19:47:10 +08:00
memo-detail-sidebar.test.tsx feat(sidebar): redesign memo detail navigation (#6261) 2026-09-02 20:20:22 +08:00
memo-display-setting-menu.test.tsx chore: add a quiet button variant and one ring-free focus for kit 2026-09-06 22:43:21 +08:00
memo-editor-cache.test.ts feat: insert attachment images into memo content (#6172) 2026-08-10 22:53:07 +08:00
memo-editor-extensions.test.ts feat: insert attachment images into memo content (#6172) 2026-08-10 22:53:07 +08:00
memo-editor-relations.test.ts feat(spaces): add space-aware UI and filtering (#6230) 2026-08-24 23:13:55 +08:00
memo-filter-context.test.tsx feat(search): add expression mode to Quick Find (#6276) 2026-09-05 09:14:08 +08:00
memo-header-navigation.test.tsx chore: add a quiet button variant and one ring-free focus for kit 2026-09-06 22:43:21 +08:00
memo-markdown-extension.test.ts fix(markdown): avoid parsing currency as inline math (#6216) 2026-08-20 19:47:10 +08:00
memo-markdown-memoization.test.tsx perf(web): reduce memo feed startup and rendering work 2026-07-20 00:15:26 +08:00
memo-outline-headings.test.tsx feat(sidebar): redesign memo detail navigation (#6261) 2026-09-02 20:20:22 +08:00
memo-related-settings.test.tsx fix(settings): validate memo content length limit 2026-08-24 23:35:32 +08:00
memo-search-queries.test.tsx feat(search): add expression mode to Quick Find (#6276) 2026-09-05 09:14:08 +08:00
memo-share-image.test.ts feat(web): add a global memo composer to the sidebar (#6219) 2026-08-21 21:14:28 +08:00
memo-space-badge.test.tsx fix(ui): refine space labels and sidebar menus 2026-08-28 01:01:01 +08:00
memo-tag-navigation.test.tsx feat(spaces): unify collection scope across resource pages 2026-08-26 09:16:28 +08:00
memo-view-locales.test.ts refactor(memo-views): replace shortcuts with saved views (#6167) 2026-08-09 20:27:27 +08:00
memo-view-navigation.test.ts fix(web): make archived independent of space scope 2026-08-26 23:43:05 +08:00
memo-views.test.ts feat(web): add a calendar view of your memos (#6277) 2026-09-05 12:51:39 +08:00
mermaid-block.test.tsx perf: lazy load heavy first-screen dependencies (#5947) 2026-05-12 20:11:39 +08:00
month-navigator.test.tsx refactor(memo-views): replace shortcuts with saved views (#6167) 2026-08-09 20:27:27 +08:00
near-viewport.test.tsx feat(web): add a global memo composer to the sidebar (#6219) 2026-08-21 21:14:28 +08:00
oauth.test.ts feat(auth): add SSO user identity linkage (#5883) 2026-04-23 08:51:45 +08:00
overflow-title.test.tsx refactor(sidebar): reduce tooltip noise and refine tags 2026-08-05 23:52:13 +08:00
paged-memo-list.test.tsx feat(search): add expression mode to Quick Find (#6276) 2026-09-05 09:14:08 +08:00
password-sign-in-form.test.tsx chore(demo): harden SSO-only demo experience 2026-07-13 00:31:15 +08:00
placeholder-component.test.tsx feat(frontend): add pixel bird tilemaps 2026-05-14 00:03:21 +08:00
placeholder-pool.test.ts feat(web): add a global memo composer to the sidebar (#6219) 2026-08-21 21:14:28 +08:00
preferences-media-metadata.test.tsx feat: persist and display client media metadata (#6180) 2026-08-11 23:47:21 +08:00
preview-image-dialog.test.tsx feat: persist and display client media metadata (#6180) 2026-08-11 23:47:21 +08:00
query-deduplication.test.tsx feat(web): add a global memo composer to the sidebar (#6219) 2026-08-21 21:14:28 +08:00
quick-find-navigation.test.tsx feat(search): add expression mode to Quick Find (#6276) 2026-09-05 09:14:08 +08:00
quick-find.test.ts feat(search): add expression mode to Quick Find (#6276) 2026-09-05 09:14:08 +08:00
reaction-selector.test.tsx chore: add a quiet button variant and one ring-free focus for kit 2026-09-06 22:43:21 +08:00
redirect-safety.test.ts feat(auth): add private instance mode derived from instance_url 2026-07-05 22:48:00 +08:00
remark-mention.test.ts feat(user): define username format and mention syntax (#6134) 2026-08-02 19:57:16 +08:00
remark-tag.test.tsx fix(markdown): avoid parsing currency as inline math (#6216) 2026-08-20 19:47:10 +08:00
root-layout-global-editor.test.tsx feat(spaces): add space-aware UI and filtering (#6230) 2026-08-24 23:13:55 +08:00
router-config.test.tsx feat(web): add a calendar view of your memos (#6277) 2026-09-05 12:51:39 +08:00
scroll-restoration.test.tsx feat(web): add a global memo composer to the sidebar (#6219) 2026-08-21 21:14:28 +08:00
select.test.tsx fix(web): correct RTL layout behavior (#6215) 2026-08-19 21:14:51 +08:00
setup.ts refactor: rebuild the editor on CodeMirror as decorated source 2026-06-28 22:59:14 +08:00
sidebar-resize-handle.test.tsx fix(web): correct RTL layout behavior (#6215) 2026-08-19 21:14:51 +08:00
sidebar-row-grammar.test.tsx chore: add a quiet button variant and one ring-free focus for kit 2026-09-06 22:43:21 +08:00
sidebar-row-state.test.tsx chore: add a quiet button variant and one ring-free focus for kit 2026-09-06 22:43:21 +08:00
sidebar-width.test.tsx feat(sidebar): make the desktop rail resizable (#6148) 2026-08-06 19:18:38 +08:00
sign-in-page.test.tsx feat(instance): persist access mode independently of URL (#6225) 2026-08-22 14:15:31 +08:00
space-context.test.tsx feat(space): add client-defined UIDs and identity cues 2026-08-28 00:33:09 +08:00
space-display.test.ts feat(space): add client-defined UIDs and identity cues 2026-08-28 00:33:09 +08:00
space-feed-pages.test.tsx fix(web): make archived independent of space scope 2026-08-26 23:43:05 +08:00
space-invitation-message.test.tsx feat(spaces): deliver invitations to the inbox (#6266) 2026-09-04 08:58:49 +08:00
space-queries.test.tsx feat(space): add client-defined UIDs and identity cues 2026-08-28 00:33:09 +08:00
space-settings-shell.test.ts feat(space): add client-defined UIDs and identity cues 2026-08-28 00:33:09 +08:00
space-switcher.test.tsx test(sidebar): align compact navigation assertions 2026-09-03 21:33:10 +08:00
spaces-section.test.tsx feat(space): add client-defined UIDs and identity cues 2026-08-28 00:33:09 +08:00
switch.test.tsx fix(web): correct RTL layout behavior (#6215) 2026-08-19 21:14:51 +08:00
tag-grammar.test.ts fix(markdown): support word-internal apostrophes in tags (#6135) 2026-08-02 21:08:57 +08:00
tag-tree-render.test.tsx chore(web): unify sidebar rows on a shared row grammar 2026-08-31 23:40:47 +08:00
tag-tree.test.ts chore(sidebar): improve view and tag controls 2026-08-05 23:12:49 +08:00
tag-unicode-parity.test.ts feat(markdown): unify tag syntax and recognition (#6132) 2026-08-02 14:46:04 +08:00
tag.test.ts feat(web): add a global memo composer to the sidebar (#6219) 2026-08-21 21:14:28 +08:00
tags-section.test.tsx chore: add a quiet button variant and one ring-free focus for kit 2026-09-06 22:43:21 +08:00
task-list-item-check-all.test.tsx fix(web): keep task checkboxes controlled so check-all updates render 2026-08-06 09:09:37 +08:00
toolbar-compact-width.test.ts feat(editor): add focus-mode formatting toolbar 2026-06-21 11:57:45 +08:00
upload-media-metadata.test.ts feat: persist and display client media metadata (#6180) 2026-08-11 23:47:21 +08:00
use-auto-save.test.tsx feat: insert attachment images into memo content (#6172) 2026-08-10 22:53:07 +08:00
use-inline-image-upload.test.tsx feat: persist and display client media metadata (#6180) 2026-08-11 23:47:21 +08:00
use-memo-init.test.tsx feat(editor): autofocus Home on initial desktop load (#6275) 2026-09-05 07:43:20 +08:00
use-memo-save.test.tsx chore(editor): name the commit action by host and surface its shortcut 2026-09-05 10:19:22 +08:00
user-locale-direction.test.tsx fix(web): correct RTL layout behavior (#6215) 2026-08-19 21:14:51 +08:00
user-memo-map.test.tsx fix(map): restore keyless OpenStreetMap tiles (#6242) 2026-08-28 22:41:36 +08:00
user-menu.test.tsx fix(sidebar): flatten account footer surface 2026-09-02 20:45:43 +08:00
user-stats-filter-queries.test.tsx feat(spaces): unify collection scope across resource pages 2026-08-26 09:16:28 +08:00
username.test.ts feat(user): define username format and mention syntax (#6134) 2026-08-02 19:57:16 +08:00
video-poster.test.tsx feat(web): add a global memo composer to the sidebar (#6219) 2026-08-21 21:14:28 +08:00
view-context-columns.test.tsx chore(sidebar): improve view and tag controls 2026-08-05 23:12:49 +08:00
visibility-selector.test.tsx feat(spaces): unify collection scope across resource pages 2026-08-26 09:16:28 +08:00
visibility-space.test.tsx feat(spaces): unify collection scope across resource pages 2026-08-26 09:16:28 +08:00