* Added TOC support and anchors for headings
* Moved @types/markdown-it-anchor from devDependencies to dependencies
* Add subnode renderer
Signed-off-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
* Added node-replacer for toc generation
ul lists may not be nested inside a p element. Therefore replaces this replacer every p that has a div.table-of-contents inside of it with the div directly.
* Add index to replacer function
Signed-off-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
* Add TOC to example code
Signed-off-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
* Remove unused import
Signed-off-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
* Removed unnecessary div wrapper of toc
* Fixed toc-renderer
Co-authored-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
this makes it possible to use abbreviations like these
```
*[HTML]: Hyper Text Markup Language
*[W3C]: World Wide Web Consortium
The HTML specification
is maintained by the W3C.
```
Co-authored-by: Philip Molares <philip@mauricedoepke.de>
this makes it possible to use definition lists like
```
Term 1
: Definition 1
with lazy continuation.
Term 2 with *inline markup*
: Definition 2
{ some code, part of Definition 2 }
Third paragraph of definition 2.
_Compact style:_
Term 1
~ Definition 1
Term 2
~ Definition 2a
~ Definition 2b
```
Co-authored-by: Philip Molares <philip@mauricedoepke.de>
* Add basic markdown it rendering
* Add markdown preview
* Add embedings for vimeo, youtube, gist
* Add support for legacy shortcodes and link detection
* Set "both" as editor default
* Add markdown-it-task-lists
* Add twemoji
* Changed SlideShare short-code behaviour from embedding to generating a link
* Extract markdown it parser debugger into separate component
* Deactivate markdown it linkify for now
* Add link safety attributes
* Add one-click-embedding component and use it
* Added embedding changes and deprecations to CHANGELOG.md
Signed-off-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
Co-authored-by: Philip Molares <philip@mauricedoepke.de>
Co-authored-by: Erik Michelson <github@erik.michelson.eu>
* added info-banner component to show the banner.text, we got from the backend config. This banner is shown on top of the landing page (intro, history, login/signup and profile) and also on top of the editor and links to `/n/banner`
* added banner to backendConfig Redux state
* added BannerState to the ApplicationState with that the showing of the banner is globally controlled, the banner text is given to the banner component and the timestamp to acknowledge a banner was read by the user
* the timestamp of a dismissed note is saved in the browsers localStorage to determine in the future if the banner should be shown
Signed-off-by: Philip Molares <philip.molares@udo.edu>
Co-authored-by: Erik Michelson <github@erik.michelson.eu>
* Added Link objects around history-cards and the title in table-view
This commit adds one Link element wrapping the title of a note in the table view and one Link element wrapping the whole card of a note in cards view.
This behaviour currently doesn't work completely correct as other buttons on the card become unclickable and needs to be fixed in another commit before merging this branch.
* Fixed Link behaviour for card view
The cards aren't wrapped inside a Link element anymore but the middle column of a card (where the title and tags are located) is now wrapped inside the Link element.
With this approach not the whole card is clickable anymore, but it's enough clickable space anyway. The positive aspect is that we don't have to deal with "position: absolute"-elements that may break responsiveness.
* added redirector component
* it will redirect every request to /$something that is not handled otherwise (/intro, /login and such) to /n/$something
* added getNote API Call
* added NotFound component
* added LandingLayout around the NotFound component, so users can easily navigate away from the component
Signed-off-by: Philip Molares <philip.molares@udo.edu>
- added entry-menu
- added subsection in entry-menu with the location of the history entry and the action to remove an entry from history
- added uploadAll functionality
- show uploadAll Button in history only if the user is logged in
- added deleteNote api call
Signed-off-by: Philip Molares <philip.molares@udo.edu>
* set text direction on language load and change to rtl if arabic is chosen
see https://www.w3schools.com/tags/att_global_dir.asp
* minor fixes to make rtl-mode look good:
- margins not only on the right, but on both sides
- fix bootstrap ToggleButtonGroup to always be ltr
* removed console.log statements
* fixed margin on the name in the user-avatar
* '$Icon CodiMD' on the intro page now always uses ftr text direction, since we don't translate the same of the software
* fixed import
* removed setHTMLDirection function
* added toplevel div with dir='auto'
some elements got dir='auto' if they contain potentially not translated or intended english text
* added text-align: start to the user-dropdown
* moved toplevel dir='auto'
* moved shortenLanguageCode to language-picker
* Changed mr-2 to mx-2 for profile buttons
Co-authored-by: Erik Michelson <github@erik.michelson.eu>
* Move common components to the `common` directory
* rename style directory
* Move ForkAwesome to common
* Move initializers and restructure application-loader.tsx
We discussed whether the minor-version is relevant for the API base-path and came to the conclusion, that it's not really needed as breaking API changes need a new major version anyway.
This commit also removes the trailing slash from the URL which is returned by `getBackendUrl`. This is needed as we composed the API routes in our implementation always with a starting slash thus leading to double slashes.
Example of old behaviour:
getBackendUrl() + '/config'
=> example.com/api/v2.0//config
Example of new behaviuor:
getBackendUrl() + '/config'
=> example.com/api/v2/config
* Hide "Sign-in via ..." box if no provider is enabled
* Show sign-in buttons only if auth-providers exist
* Rebase fixes
* Replaced ternary operators with ShowIf
* Added ShowIf on two other code positions
* added history toolbar functionality
* export now adds a version number
* renamed OldHistoryEntry to V0HistoryEntry
Signed-off-by: Philip Molares <philip.molares@udo.edu>
Signed-off-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
Co-authored-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
* removed css from body
* added internal-link and translated-internal-link
* icon in links are always fixedWidth
* added help button
Signed-off-by: Philip Molares <philip.molares@udo.edu>
Co-authored-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
* Add new format for translation files
Co-authored-by: Philip Molares <philip.molares@udo.edu>
Signed-off-by: Tilman Vatteroth <tilman.vatteroth@tu-dortmund.de>
* Card-ify login components
* Fix lint warnings
* Replace HTML with react-bootstrap components
* Remove now obsolete flex div
* Apply fixed width to fa-icons
* Reset sign-in buttons to normal size
* using saml and oauth2 customAuthNames in login
* add saml and oauth2 customAuthNames to backend config
* changed default name of oauth button
Signed-off-by: Philip Molares <philip.molares@udo.edu>
* convert the old localStorage["notehistory"] to the new history format, if there is no new history in localStorage
fixes#20
Signed-off-by: Philip Molares <philip.molares@udo.edu>
* used toDate instead of fromUnixTime
Signed-off-by: Philip Molares <philip.molares@udo.edu>
* extracted OldHistoryEntry interface
Signed-off-by: Philip Molares <philip.molares@udo.edu>
polished via-email component
used state to track email and password.
explicitly did not put email and password in value of the appropriate input fields because that is not necessary nor do we want to write the clear text password into the dom
Signed-off-by: Philip Molares <philip.molares@udo.edu>
(cherry picked from commit c5f5956b8d8bb02553f85443f8b04acbf0c31f2b)