Nic Luckie
ea3b6a7c77
refactor(ui): remove Markdown rendering from ConfirmDialog component
...
- Removed Markdown rendering capability from ConfirmDialog component
- Removed marked library dependency from package.json and lockfile
- Updated all component usages to use plain text descriptions
- Converted irreversible action warnings from Markdown to plain text
- Simplified component API by removing descriptionMarkdown prop
- Updated ConfirmDialog README to reflect simplified implementation
- Retained DOMPurify dependency for other components that need it
- Updated en.json translations to remove Markdown formatting
2025-09-24 11:47:55 -04:00
Nic Luckie
30795d1d9c
feat(web): introduce accessible ConfirmDialog and migrate confirmations; add Markdown-safe descriptions
...
Why
- window.confirm is not supported on Brave Mobile for iOS, which blocked destructive actions like deleting memos. Replacing it with an accessible, app-native dialog restores mobile functionality and improves UX.
What changed
- New ConfirmDialog component
- Replaces window.confirm usage across the app.
- Props: open/onOpenChange, title, description or descriptionMarkdown, confirm/cancel labels, onConfirm, confirmVariant.
- Prevents double-submit and accidental dismiss while confirming (loading state).
- Markdown support for dialog descriptions
- descriptionMarkdown renders via marked and is sanitized with DOMPurify before injection.
- Keeps translations readable (Markdown) and safe (sanitized HTML).
- Member management flows
- Updated archive/delete dialogs to use ConfirmDialog.
- Added toast notifications for archive, restore, and delete actions.
- i18n: added/updated relevant translation keys (en).
Accessibility and mobile
- Dialog buttons are touch-friendly.
- Escape and outside-click behavior matches expectations.
Manual Tests - Verified in Brave desktop (v1.82.166) and Brave for iOS (v1.81 (134))
- Memos:
- Archive → confirm archival and shows success toast.
- Restore (only when archived) → confirm restoration and shows success toast.
- Delete → destructive dialog → confirm deletion and shows success toast.
- Shortcuts: create → menu → Delete → dialog appears; cancel keeps; confirm deletes and list refreshes.
- Access tokens: Settings → Access Tokens → Delete → dialog title shows masked token; confirm deletes.
- Members: Settings → Members → non-current user:
- Archive → warning dialog → confirm archives.
- Delete (only when archived) → destructive dialog → confirm deletes.
- Sessions: Settings → Sessions → Revoke non-current session → dialog appears; confirm revokes; current session remains disabled.
- Webhooks: Settings → Webhooks → Delete → dialog appears; confirm deletes and list refreshes.
- Mobile/accessibility: focus trap, inert background, tappable buttons, Escape/outside-click behavior verified.
Notes / follow-ups
- Deleting a member currently removes the account but does not cascade-delete the member’s content. Not sure if this is intended or not, so I left the warning description more general for now.
2025-09-20 12:08:07 -04:00
Steven
7ab57f8ed2
chore: upgrade frontend dependencies
2025-09-17 21:51:58 +08:00
Steven
383553d3c8
feat: add DOMPurify for sanitizing HTML content in CodeBlock component
2025-09-10 20:52:51 +08:00
dependabot[bot]
3be1b3a1e3
chore: bump @radix-ui/react-checkbox from 1.3.2 to 1.3.3 in /web ( #5062 )
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-03 22:57:34 +08:00
dependabot[bot]
fb8a997248
chore: bump @radix-ui/react-dropdown-menu from 2.1.15 to 2.1.16 in /web ( #5063 )
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-03 22:57:11 +08:00
dependabot[bot]
b2a259d0ff
chore: bump react-router-dom from 7.7.1 to 7.8.2 in /web ( #5061 )
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-03 21:01:44 +08:00
dependabot[bot]
b8fe953833
chore: bump @radix-ui/react-select from 2.2.5 to 2.2.6 in /web ( #5065 )
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-03 21:01:34 +08:00
dependabot[bot]
0c516c83bd
chore: bump nice-grpc-web from 3.3.7 to 3.3.8 in /web ( #5056 )
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-02 22:56:34 +08:00
dependabot[bot]
9c67bbbbba
chore: bump tw-animate-css from 1.3.6 to 1.3.7 in /web ( #5053 )
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-02 22:56:23 +08:00
dependabot[bot]
fdbcd20ad1
chore: bump react-hot-toast from 2.5.2 to 2.6.0 in /web ( #5051 )
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-02 22:55:57 +08:00
dependabot[bot]
56fd9fd7d5
chore: bump @bufbuild/protobuf from 2.6.2 to 2.7.0 in /web ( #5057 )
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-02 22:21:47 +08:00
dependabot[bot]
9c456c3b72
chore: bump i18next from 25.3.2 to 25.4.2 in /web ( #5058 )
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-02 22:21:34 +08:00
Johnny
3ba3f610c9
chore: upgrade typescript-eslint
2025-08-27 19:54:17 +08:00
Sara Vieira
1f1add1a48
fix: add mime type check for file types ( #4981 )
2025-08-08 20:39:16 +08:00
dependabot[bot]
a5711e893a
chore: bump code-inspector-plugin from 0.18.3 to 1.0.4 in /web ( #4954 )
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-03 19:05:17 +08:00
johnnyjoy
b2a2151eaf
chore: bump frontend dependencies
2025-08-03 18:17:21 +08:00
dependabot[bot]
9b06275f4c
chore: bump vite from 7.0.1 to 7.0.6 in /web ( #4957 )
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-03 12:46:05 +08:00
Johnny
35928ce5ba
chore: unify colors
2025-07-06 13:55:08 +08:00
dependabot[bot]
b164c15976
chore: bump @types/node from 22.15.34 to 24.0.8 in /web ( #4802 )
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-03 22:55:35 +08:00
dependabot[bot]
f8fa0985fb
chore: bump tailwind-merge from 2.6.0 to 3.3.1 in /web ( #4801 )
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-03 22:39:25 +08:00
dependabot[bot]
1e09bf9a4f
chore: bump vite from 6.3.5 to 7.0.0 in /web ( #4805 )
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-03 22:39:10 +08:00
Steven
fda19c2d73
chore: update
2025-07-03 22:33:31 +08:00
Johnny
493832aeb4
refactor: unify components
2025-07-01 19:29:48 +08:00
Johnny
f5c64849d2
chore: upgrade tailwindcss to v4
2025-06-07 10:15:12 +08:00
Johnny
663e56747f
chore: replace switch kit
2025-06-02 01:01:29 +08:00
dependabot[bot]
7c9215b513
chore: bump i18next from 24.2.3 to 25.2.1 in /web ( #4742 )
...
Bumps [i18next](https://github.com/i18next/i18next ) from 24.2.3 to 25.2.1.
- [Release notes](https://github.com/i18next/i18next/releases )
- [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md )
- [Commits](https://github.com/i18next/i18next/compare/v24.2.3...v25.2.1 )
---
updated-dependencies:
- dependency-name: i18next
dependency-version: 25.2.1
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-02 00:32:27 +08:00
Johnny
d4425a6aa1
chore: upgrade dependencies
2025-06-02 00:27:35 +08:00
Johnny
2595e32f83
chore: simplify date editor
2025-05-31 11:14:47 +08:00
Steven
f1b365f928
refactor: clean packages
2025-05-29 21:44:43 +08:00
Steven
c23aebd648
refactor: memo filter store
2025-05-27 21:14:18 +08:00
Steven
606924b4c9
chore: unify form styles
2025-05-15 22:15:01 +08:00
johnnyjoy
733f16816b
chore: bump mui
2025-05-13 23:28:15 +08:00
dependabot[bot]
c3273f8f97
chore: bump @vitejs/plugin-legacy from 6.0.2 to 6.1.1 in /web ( #4661 )
...
Bumps [@vitejs/plugin-legacy](https://github.com/vitejs/vite/tree/HEAD/packages/plugin-legacy ) from 6.0.2 to 6.1.1.
- [Release notes](https://github.com/vitejs/vite/releases )
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/plugin-legacy/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite/commits/v6.1.1/packages/plugin-legacy )
---
updated-dependencies:
- dependency-name: "@vitejs/plugin-legacy"
dependency-version: 6.1.1
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-03 16:15:21 +08:00
dependabot[bot]
24650140b2
chore: bump @types/node from 22.13.10 to 22.15.3 in /web ( #4660 )
...
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node ) from 22.13.10 to 22.15.3.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node )
---
updated-dependencies:
- dependency-name: "@types/node"
dependency-version: 22.15.3
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-03 16:10:17 +08:00
dependabot[bot]
f6b5b26cda
chore: bump eslint from 9.23.0 to 9.25.1 in /web ( #4663 )
...
Bumps [eslint](https://github.com/eslint/eslint ) from 9.23.0 to 9.25.1.
- [Release notes](https://github.com/eslint/eslint/releases )
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md )
- [Commits](https://github.com/eslint/eslint/compare/v9.23.0...v9.25.1 )
---
updated-dependencies:
- dependency-name: eslint
dependency-version: 9.25.1
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-03 16:10:08 +08:00
dependabot[bot]
0ab7082c7c
chore: bump mobx from 6.13.6 to 6.13.7 in /web ( #4662 )
...
Bumps [mobx](https://github.com/mobxjs/mobx ) from 6.13.6 to 6.13.7.
- [Release notes](https://github.com/mobxjs/mobx/releases )
- [Commits](https://github.com/mobxjs/mobx/compare/mobx@6.13.6...mobx@6.13.7 )
---
updated-dependencies:
- dependency-name: mobx
dependency-version: 6.13.7
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-03 14:27:06 +08:00
Steven
1a121e350b
chore: update gitignore
2025-04-17 23:11:36 +08:00
Steven
aa272670ce
chore: upgrade buf
2025-04-16 23:00:11 +08:00
dependabot[bot]
c43762a9b6
chore: bump lucide-react from 0.453.0 to 0.486.0 in /web ( #4590 )
...
Bumps [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react ) from 0.453.0 to 0.486.0.
- [Release notes](https://github.com/lucide-icons/lucide/releases )
- [Commits](https://github.com/lucide-icons/lucide/commits/0.486.0/packages/lucide-react )
---
updated-dependencies:
- dependency-name: lucide-react
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-02 18:15:58 +08:00
dependabot[bot]
28074c1404
chore: bump nice-grpc-web from 3.3.6 to 3.3.7 in /web ( #4591 )
...
Bumps [nice-grpc-web](https://github.com/deeplay-io/nice-grpc ) from 3.3.6 to 3.3.7.
- [Release notes](https://github.com/deeplay-io/nice-grpc/releases )
- [Commits](https://github.com/deeplay-io/nice-grpc/compare/nice-grpc-web@3.3.6...nice-grpc-web@3.3.7 )
---
updated-dependencies:
- dependency-name: nice-grpc-web
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-02 18:15:46 +08:00
dependabot[bot]
2458bc98f2
chore: bump i18next from 24.2.2 to 24.2.3 in /web ( #4592 )
...
Bumps [i18next](https://github.com/i18next/i18next ) from 24.2.2 to 24.2.3.
- [Release notes](https://github.com/i18next/i18next/releases )
- [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md )
- [Commits](https://github.com/i18next/i18next/compare/v24.2.2...v24.2.3 )
---
updated-dependencies:
- dependency-name: i18next
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-02 18:15:03 +08:00
dependabot[bot]
d98520acba
chore: bump @trivago/prettier-plugin-sort-imports from 4.3.0 to 5.2.2 in /web ( #4593 )
...
chore: bump @trivago/prettier-plugin-sort-imports in /web
Bumps [@trivago/prettier-plugin-sort-imports](https://github.com/trivago/prettier-plugin-sort-imports ) from 4.3.0 to 5.2.2.
- [Release notes](https://github.com/trivago/prettier-plugin-sort-imports/releases )
- [Changelog](https://github.com/trivago/prettier-plugin-sort-imports/blob/main/CHANGELOG.md )
- [Commits](https://github.com/trivago/prettier-plugin-sort-imports/compare/v4.3.0...v5.2.2 )
---
updated-dependencies:
- dependency-name: "@trivago/prettier-plugin-sort-imports"
dependency-type: direct:development
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-02 18:14:46 +08:00
dependabot[bot]
3dac75f48c
chore: bump react-datepicker from 7.6.0 to 8.2.1 in /web ( #4594 )
...
Bumps [react-datepicker](https://github.com/Hacker0x01/react-datepicker ) from 7.6.0 to 8.2.1.
- [Release notes](https://github.com/Hacker0x01/react-datepicker/releases )
- [Commits](https://github.com/Hacker0x01/react-datepicker/compare/v7.6.0...v8.2.1 )
---
updated-dependencies:
- dependency-name: react-datepicker
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-02 09:44:20 +08:00
Steven
4f39e00868
chore: fix lint
2025-04-01 20:06:54 +08:00
Johnny
b770042a8a
refactor: migrate eslint
2025-04-01 00:04:43 +08:00
Johnny
3349311b51
chore: update frontend dependencies
2025-03-12 21:05:32 +08:00
Johnny
ff13e0f353
chore: add legacy plugin
2025-03-10 18:57:48 +08:00
Johnny
92a44e26b9
chore: remove emoji regex
2025-03-04 22:56:46 +08:00
Johnny
32da704be6
chore: update frontend dependencies
2025-03-02 21:55:55 +08:00