Commit graph

47 commits

Author SHA1 Message Date
Tilman Vatteroth
9497726a7c feat(frontend): show indicator in document title for background changes
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2023-03-29 01:16:43 +02:00
Erik Michelson
336e621bc4 fix(cursor): cursor text being hidden when at start of line
Addiotionally, the cursor's font was not defined and therefore was styled in the browser's default font

Signed-off-by: Erik Michelson <github@erik.michelson.eu>
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2023-03-29 01:16:09 +02:00
Tilman Vatteroth
972ec8c9c5 feat(realtime): disconnect user on user login status change
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2023-03-28 21:05:12 +02:00
Tilman Vatteroth
9b9eafc948 feature: add button to open cheatsheet in a new tab
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2023-03-28 20:38:25 +02:00
Philip Molares
8e57188ab5 refactor(common): extract frontmatter code into commons
Signed-off-by: Philip Molares <philip.molares@udo.edu>
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2023-03-26 14:58:38 +02:00
Philip Molares
8bd7fd1be8 refactor(common): extract frontmatter code into commons
Signed-off-by: Philip Molares <philip.molares@udo.edu>
2023-03-26 14:58:38 +02:00
Tilman Vatteroth
b4f73c0f49 fix: convert realtime connection dialog into alert
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2023-03-25 16:41:25 +01:00
Erik Michelson
97389fe0c4 fix: useTranslation hook in react components
Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2023-03-25 16:14:03 +01:00
Philip Molares
8d497bcfc5 feat(frontend): show own user in UsersOnlineSidebarMenu
Signed-off-by: Philip Molares <philip.molares@udo.edu>
2023-03-25 15:27:38 +01:00
Erik Michelson
61032cb745 feat(editor): add basic codemirror autocompletion suggestions
Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2023-03-25 15:13:24 +01:00
Philip Molares
4956a99ced refactor(frontend/commons): rename .test files to .spec
Signed-off-by: Philip Molares <philip.molares@udo.edu>
2023-03-25 15:02:29 +01:00
Tilman Vatteroth
24b7514e25 feat: submit own style index on realtime user state set
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2023-03-25 13:11:40 +01:00
Philip Molares
e7e81cf670 feat(frontend): deactivate permissions buttons if user is not owner
These buttons and their functionality only work if the user is the owner, so it doesn't make sense to make it possible to press them otherwise…

Signed-off-by: Philip Molares <philip.molares@udo.edu>
2023-03-25 12:59:58 +01:00
Philip Molares
09e56a418e feat(frontend): deactivate alias buttons if user is not owner
These buttons and their functionality only work if the user is the owner, so it doesn't make sense to make it possible to press them otherwise…

Signed-off-by: Philip Molares <philip.molares@udo.edu>
2023-03-25 12:59:58 +01:00
Tilman Vatteroth
a826677225 refactor: save ydoc state in the database, so it can be restored easier
By storing the ydoc state in the database we can reconnect lost clients easier
and enable offline editing because we continue using the crdt data that has been
used by the client before the connection loss.

Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2023-03-24 16:03:55 +01:00
Tilman Vatteroth
c1a816be36 fix: prevent splitter panels from being selected when resizing
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2023-03-24 14:45:57 +01:00
Tilman Vatteroth
e97a426680 refactor: split avatar component to handle displaynames
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2023-03-24 14:06:03 +01:00
Tilman Vatteroth
3a06f84af1 refactor: reimplement realtime-communication
This commit refactors a lot of things that are not easy to separate.
It replaces the binary protocol of y-protocols with json.
It introduces event based message processing.
It implements our own code mirror plugins for synchronisation of content and remote cursors

Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2023-03-24 14:06:03 +01:00
Tilman Vatteroth
083da302af fix: fix missing key in meta og:title
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2023-03-19 21:00:54 +01:00
Tilman Vatteroth
24b0070909 fix(cheatsheet): refactor cheatsheet to use app extensions as source
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2023-03-16 17:51:21 +01:00
Tilman Vatteroth
aa6bd2a884 fix: deduplicate different buttons
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2023-03-08 21:23:48 +01:00
Tilman Vatteroth
11b48edca1 fix(frontend): extract codemirror extension for ref update into hook
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2023-03-08 18:30:10 +01:00
Tilman Vatteroth
a50ac40ae6 feat(editor): extract the spell check codemirror extension into separate hook
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2023-03-08 17:43:34 +01:00
Philip Molares
1c16e25e14 feat(frontend): replace forkawesome with bootstrap icons
These icon replace fork awesome. A linter informs the user about the deprecation.

See https://github.com/hedgedoc/hedgedoc/issues/2929

Co-authored-by: Philip Molares <philip.molares@udo.edu>
Co-authored-by: Tilman Vatteroth <git@tilmanvatteroth.de>
Signed-off-by: Philip Molares <philip.molares@udo.edu>
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2023-02-24 14:31:17 +01:00
Tilman Vatteroth
eac2a7b23e fix(frontend): use "action" prop in revisions list
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2023-02-21 11:17:48 +01:00
Philip Molares
7fb02c96e6 refactor(frontend): title for common modal via titleI18nKey or title prop
This is mainly needed because we use the common modal to show image light boxes and the title is then the title or alt text of the image

Signed-off-by: Philip Molares <philip.molares@udo.edu>
2023-02-19 22:04:40 +01:00
Erik Michelson
cf34df21b7 feat: add license frontmatter field for link header
This commit adds the "license" frontmatter property which sets a link with the "license" relation in the head of the HTML page.
Furthermore, this commit restructures the other head elements for a note altogether into a single component that can be used to inject all head elements at once.

Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2023-02-13 18:10:51 +01:00
Tilman Vatteroth
caa53e3556 feat: add patch to add generic types to eventemitter2
EventEmitter2 has types, but they're very basic and not very type safe.
I created this patch, because my improved types haven't been merged into the official package.

Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2023-02-09 21:58:41 +01:00
Tilman Vatteroth
11c2f57e4b fix(commons): extract name of markdown content yjs channel into the commons package
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2023-02-09 15:43:59 +01:00
Erik Michelson
5a7a37a241 fix: use modern in syntax instead of Object.prototype.hasOwnProperty
Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2023-02-05 22:54:32 +01:00
Erik Michelson
09c2eaba9d feat(opengraph): add opengraph support
Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2023-02-05 22:54:32 +01:00
Philip Molares
16b1065a51 feat(frontend): add fork awesome linter
This linter will tell users that their fork awesome icon is deprecated and will stop working in the future and that they should replace it with a new bootstrap icon.

Signed-off-by: Philip Molares <philip.molares@udo.edu>
2023-01-16 00:05:33 +01:00
Philip Molares
e2c4e2eccf feat(frontend): add fork awesome linter
This linter will tell users that their fork awesome icon is deprecated and will stop working in the future and that they should replace it with a new bootstrap icon.

Signed-off-by: Philip Molares <philip.molares@udo.edu>
2023-01-16 00:05:33 +01:00
Erik Michelson
f16b3c0fe6 fix(redux): avoid state mutation in history redux
When updating the data of a note in the redux, the old state element gets manipulated and will be dispatched again into the state.
Redux is not optimized for external state-mutations and has some weird side-effects in that case and sometimes throws an error.
This commit fixes the problem by using a clone of the entry.

Signed-off-by: Erik Michelson <github@erik.michelson.eu>
2023-01-09 19:52:21 +01:00
Philip Molares
29fd1f39ea fix(frontend): import type from the correct file
Signed-off-by: Philip Molares <philip.molares@udo.edu>
2023-01-08 22:41:41 +01:00
Lukas Mertens
9016116012 fix(i18n): clarify where to find /features for new users
Signed-off-by: Lukas Mertens <git@lukas-mertens.de>
2022-12-30 10:38:58 +01:00
Tilman Vatteroth
caf212045a fix(async-loading): show async loaded components only if value is present
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2022-12-29 13:19:18 +01:00
Tilman Vatteroth
26c1f1bcaa feat(async-loading-boundary): extract custom error component into separate component
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2022-12-29 13:19:18 +01:00
Tilman Vatteroth
b7b0021ff7 fix(frontend): don't send scroll state if window post message communicator isn't ready
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2022-12-28 17:22:40 +01:00
Tilman Vatteroth
9c3858797f fix(frontend): Add generic type to act calls to trigger promise generation
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2022-12-24 14:45:05 +01:00
Tilman Vatteroth
7be4ef6e70 fix(frontend): migrate TOC to @hedgedoc/markdown-it-plugins
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2022-12-11 23:54:17 +01:00
Tilman Vatteroth
c489aacea0 fix(frontend): migrate code to use the commons workspace
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2022-12-11 23:09:10 +01:00
Tilman Vatteroth
f89b28969f fix: Migrate code to next 13 breaking changes
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2022-12-09 20:17:09 +01:00
Tilman Vatteroth
e390c0dd15 fix(frontend): reformat source files
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2022-12-04 20:59:46 +01:00
Tilman Vatteroth
2241a3faea feat(package): adjust packages to workspaces
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2022-12-04 20:59:46 +01:00
Tilman Vatteroth
614374768a fix(frontend): Await act calls in tests
Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2022-11-21 18:23:44 +01:00
Tilman Vatteroth
762a0a850e
fix: Move content into to frontend directory
Doing this BEFORE the merge prevents a lot of merge conflicts.

Signed-off-by: Tilman Vatteroth <git@tilmanvatteroth.de>
2022-11-20 19:48:40 +01:00