Commit graph

5808 commits

Author SHA1 Message Date
David Mehren
d462a571d8
RevisionEntity: Change primary key type from UUID to number
The precision of sqlites datetime() timestamp is only one second (see https://www.sqlite.org/lang_datefunc.html). Therefore we could not order revisions of one note that were created in the same second. To remedy this, the primary key was changed to a monotonically increasing number, which solves the ordering problem.

Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-22 20:06:16 +02:00
David Mehren
1abb472621
NotesController: Get text from request body when creating a named note.
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-22 18:31:20 +02:00
David Mehren
cccd52d1b0
Note E2E tests: Set a non-JSON content-type to avoid Nest trying to parse markdown to JSON.
Nest automatically tries to parse incoming requests with application/json as content-type and responds with HTTP 400 if the parsing fails. As our test-note-content is not valid JSON, we need to set another content-type.

Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-22 18:30:22 +02:00
David Mehren
c43448624b
Restructure test setup in Note E2E tests to not load the whole application
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-22 18:27:35 +02:00
David Mehren
8145fc48d1
Update Note E2E tests to use new getNoteDtoByIdOrAlias method
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-22 17:53:17 +02:00
David Mehren
5d1cc6c339
NotesService: Find note by ID or alias in database
This commit also introduces the `getNoteDtoByIdOrAlias` method, that converts a `Note` entity to a `NoteDto`

Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-22 17:34:33 +02:00
David Mehren
21f4cda27c
NoteEntity: Lazy-load revisions relation
Using a `Promise` type in a TypeORM entity automatically enables lazy-loading of that relation.
See https://typeorm.io/#/eager-and-lazy-relations/lazy-relations

Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-22 17:32:35 +02:00
David Mehren
b1cb8025a5
RevisionsService: Implement getLatestRevision and createRevision methods
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-22 17:29:59 +02:00
David Mehren
615bd6496b
UsersService: Add null check to toUserDto() converter
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-22 17:28:57 +02:00
Erik Michelson
23972ffb16
Add webpack-bundle-analyzer as dev-tool (#591)
* Add webpack-bundle-analyzer as dev-tool

* Add README information about bundle analysis
2020-09-20 23:22:37 +02:00
mrdrogdrog
985abe230e
Remove unused prop (#589)
Signed-off-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
2020-09-20 22:55:31 +02:00
mrdrogdrog
cece089a54
fix badges in readme (#588) 2020-09-20 16:28:54 +02:00
renovate[bot]
0cebb29ec6
Pin dependencies (#587)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-09-19 22:28:25 +02:00
Philip Molares
8e8190b800
Add copy-to-clipboard-button to all code blocks (#566)
Signed-off-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>

Co-authored-by: mrdrogdrog <mr.drogdrog@gmail.com>
Co-authored-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
2020-09-19 22:24:49 +02:00
Philip Molares
005c80ff55
added markmap support to the markdown-renderer (#572)
Signed-off-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
Co-authored-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
2020-09-19 20:34:44 +02:00
renovate[bot]
204f2deb5a
Pin dependencies (#585)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-09-19 20:15:33 +02:00
Philip Molares
cac9b7ea37
Expand image button (#570)
added full-screen image modal when clicking on img's

Co-authored-by: Erik Michelson <github@erik.michelson.eu>
2020-09-19 20:12:57 +02:00
Philip Molares
553cd3577d
add vega-lite diagram (#574)
added vega-lite diagrams
Update CHANGELOG.md

Co-authored-by: mrdrogdrog <mr.drogdrog@gmail.com>
2020-09-19 19:34:24 +02:00
David Mehren
9cae7e34dc
NotesService: Get more note metadata from the database
Some previously hardcoded metadata-values are now retrieved from the database.

Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 17:40:50 +02:00
David Mehren
30a0b25094
UsersService: Add toUserDto() converter
This conversion function makes sure that a photo URL exists.

Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 17:33:29 +02:00
David Mehren
eee8668317
NoteUtils: Add methods to parse note metadata
These methods are intended to parse metadata details from YAML tags, but not implemented for now.

Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 17:32:08 +02:00
David Mehren
243fcabcaf
NoteEntity: Always initialize arrays
The `create()` function did not initialize all arrays, which caused them to be `undefined` instead of empty.

Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 17:30:58 +02:00
David Mehren
58e2932c1a
RevisionEntity: Add create() method
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 16:04:30 +02:00
David Mehren
32a6396a50
NotesService: createNote() now saves new notes to the database
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 16:01:32 +02:00
David Mehren
2261b81139
NoteEntity: Move constructor-code to create() method
TypeORM does not like having application code in the constructor (https://github.com/typeorm/typeorm/issues/1772#issuecomment-514787854), therefore that is moved into a new `create() static method. Additionally, the constructor is now `private`, which enforces the use of the new method.

Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 16:00:29 +02:00
David Mehren
bb9e60d5f6
NoteEntity: Formatting fixes
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 15:57:57 +02:00
David Mehren
85fa30b27c
NoteEntity: Enable CASCADE for revision column
This makes creating new Notes easier, as the first Revision is automatically created in the database.

Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 15:57:34 +02:00
David Mehren
56817c3f91
NoteController: Do not use text/markdown as response content-type for createNote
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 15:50:58 +02:00
David Mehren
b174c0b0ab
Reverse cardinality of owner relationship
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 15:48:00 +02:00
David Mehren
c6787ef233
NoteDto: Rename attribute metdata to metadata
Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 14:54:08 +02:00
David Mehren
93cf9c2c56
NotesController: Use custom logic to access raw markdown
NestJS does not support content-types other than application/json.
Therefore we need to directly access the request object to get the raw body content.

Signed-off-by: David Mehren <git@herrmehren.de>
2020-09-19 14:51:12 +02:00
Renovate Bot
0f6ea38140 Update dependency copy-webpack-plugin to v6.1.1 2020-09-19 12:25:29 +02:00
Renovate Bot
70eddded41 Update dependency ts-loader to v8.0.4 2020-09-19 12:12:03 +02:00
Renovate Bot
061193afd1 Update dependency typescript to v4.0.3 2020-09-19 12:11:33 +02:00
Renovate Bot
8ff35058c8 Update dependency moment to v2.28.0 2020-09-19 12:10:02 +02:00
Renovate Bot
b92e0f6f5f Update dependency markdown-it to v11.0.1 2020-09-19 12:09:30 +02:00
Renovate Bot
c944f33c4d Update dependency i18next-http-backend to v1.0.20 2020-09-19 12:08:36 +02:00
Renovate Bot
bb141e58a1 Update dependency cypress to v5.2.0 2020-09-19 12:08:02 +02:00
Renovate Bot
7625ebda3d Update dependency @types/jest to v26.0.14 2020-09-19 12:06:42 +02:00
Renovate Bot
ea8ebfd06e Update JS test packages 2020-09-19 12:05:49 +02:00
Renovate Bot
276e1886fb Pin dependencies 2020-09-19 12:05:10 +02:00
Philip Molares
b772a0ab8f
removed unnecessary export of GeneralLinkProp (#569) 2020-09-16 15:49:15 +02:00
renovate[bot]
d57f6577a5
Update dependency markdown-it-deflist to v2.1.0 (#561)
* Update dependency markdown-it-deflist to v2.1.0

* Include end line number into key

Signed-off-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>

* Update src/components/markdown-renderer/utils/html-react-transformer.tsx

Co-authored-by: Erik Michelson <github@erik.michelson.eu>
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
2020-09-15 21:23:06 +02:00
Erik Michelson
8842fff06f
Add info message on empty toc (#567) 2020-09-15 10:22:49 +02:00
Philip Molares
5972932d33
Feature/d3 graphviz (#564)
added graphviz diagrams via d3-graphviz
added craco and webpack-copy-plugin to copy wasm files

Signed-off-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>

Co-authored-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
2020-09-15 09:26:44 +02:00
mrdrogdrog
e6ee1aff50
Add @types/domhandler (#565)
Co-Authored-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
Signed-off-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>

Co-authored-by: Philip Molares <philip.molares@udo.edu>
2020-09-14 11:25:53 +02:00
Philip Molares
44637c753e
Add dark mode (#554) 2020-09-13 18:04:02 +02:00
Erik Michelson
be2428f22c
Extract URLs in extra file and change riot link to element-link (#551)
* Update matrix chat link to new element URL

* Correct other usages of the element link

* Extracted static external links into separate file
2020-09-13 16:38:53 +02:00
renovate[bot]
ca2bd1d90f
Update dependency @types/codemirror to v0.0.98 (#557)
* Update dependency @types/codemirror to v0.0.98

* Remove cm-full-screen custom types as they're now included in @types

Co-authored-by: Renovate Bot <bot@renovateapp.com>
Co-authored-by: Erik Michelson <github@erik.michelson.eu>
2020-09-12 16:20:56 +02:00
renovate[bot]
574af052ec
Update dependency redux-devtools to v3.7.0 (#562)
Co-authored-by: Renovate Bot <bot@renovateapp.com>
2020-09-12 16:03:01 +02:00