Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/text.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-03-14💄 (#2184): paragraph adjustsVinicius Reis
Signed-off-by: Vinicius Reis <vinicius.reis@nextcloud.com>
2022-03-14📦️ (#2184): add compiled assetsVinicius Reis
Signed-off-by: Vinicius Reis <vinicius.reis@nextcloud.com>
2022-03-09performance: fetch content during session creationMax
Signed-off-by: Max <max@nextcloud.com> Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2022-03-08refactor: extract logic into computedperformance/postpone/rendering-menubarMax
Also rename `initialLoading` in `EditorWrapper` to `contentLoaded`. This flag is set during the `initialLoading` state change. It does indicates that the loading happened Use the past tense to indicate that. The editor wrapper is now loading in different steps. The menus will load after the content. So `content` seems more fitting then `initial`. Signed-off-by: Max <max@nextcloud.com>
2022-03-07display content first and then load menusMax
Rendering the menubar and menububble takes a significant amount of time. First display the content and then render the menus. Signed-off-by: Max <max@nextcloud.com>
2022-03-02fix: indicator of the task list.Max
See #2018. Use tiptap TaskList and TaskItem. Markdown-it happily mixes tasks and bullet points in the same list. Tiptap lists are strictly separated. Split bullet and tasks into BulletList and TaskList in markdown-io. Just like this will turn into three different lists: * one - two + three This will now also turn into three different lists with the middle one being a task list: * first list * [ ] todo * [x] done * third list Signed-off-by: Max <max@nextcloud.com>
2022-03-02fix: do not try to send steps to a read only docMax
Cypress tests were failing because they triggered editor.focus on a read only doc. Focus seems to cause sendable steps - maybe because the current cursor changes. Prevent this on various levels: * Do not autofocus read only docs. * Do not send steps to read only docs. * Handle server response with 403 without content gracefully when sending steps. The last originated here: https://github.com/nextcloud/text/blob/master/lib/Service/ApiService.php#L158 So wither the session was not valid or the document read only. Not entirely sure what best to do in this situation. Logging to console.error for now. Signed-off-by: Max <max@nextcloud.com>
2022-03-01Merge branch 'fix/master/image_data_urls' of ↵Max
https://github.com/DerpgonCz/text into DerpgonCz-fix/master/image_data_urls
2022-03-01lint: fix errors from @nextcloud/eslint-config@7Max
* Autofix `vue/first-attribute-linebreak`. * Explicitely import `Store` from `vuex`. * Allow importing default with the same name as named for tiptap extensions. This is the way used in tiptap documentation: `import Document from '@tiptap/extension-document'` Disable `import/no-named-as-default` - but only for the lines in question. Signed-off-by: Max <max@nextcloud.com>
2022-03-01Append a whitespace to inserted emojisJonas
Signed-off-by: Jonas <jonas@freesources.org> Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2022-03-01Autoscroll suggestion list when navigating the emoji suggestionsJonas
Navigating the suggestion list via arrow up/down keys is handled in javascript, so we have to handle the scrolling in javascript too. Only scrolls if the new selected item has not visible before. At ArrowDown, scroll bottom of visible area to lower border of item. At ArrowUp, scroll top of visible area to upper border of item. Signed-off-by: Jonas <jonas@freesources.org>
2022-03-01Add emoji autocompletion (#987)Jonas
Adds emoji autocompletion by typing `:<search_string>`. It utilizes the emoji functions from nextcloud-vue[1] and the TipTap suggestions extension. [1] https://github.com/nextcloud/nextcloud-vue/pull/1474 Signed-off-by: Jonas <jonas@freesources.org>
2022-02-21fix: only apply bullet style to ul > liMax
* Make list items in ordered lists still show numbers. * Use the same bullets on second and third level when first level is ol. Signed-off-by: Max <max@nextcloud.com>
2022-02-14fix: bring back horizontal ruleMax
Also drop @tiptap/starter-kit as we are not using it anymore. Signed-off-by: Max <max@nextcloud.com>
2022-02-09fix: adjust keyboard shortcuts and help modalMax
Tiptap v2 changed some defaults for the keyboard shortcuts. * use new default ctrl+shift+X for strike through. Old ctrl+d is used to create bookmarks in firefox. * Keep old ctrl+shift+1 ... ctrl+shift+6 for headings. No reason to change as far as i can tell. Also more consistent with lists (ctrl+shift+7/8). * Change ordered lists to ctrl+shift+7. New default from tiptap. This way it comes right after the headings. Signed-off-by: Max <max@nextcloud.com>
2022-02-09fix: use tiptap.commands to focusMax
Either handle network errors or the response. There are three ways to handle errors and responses with axios: ``` axios.post(...).then(...).catch(...) axios.post(...).catch(...).then(...) axios.post(...).then(onResponse, onErr) ``` Use the last one. First one will catch errors triggered by the emits in the happy path with the network error handling. Second one will handle the response, even if errors have been caught. Signed-off-by: Max <max@nextcloud.com>
2022-02-09fix: use tiptap v2 prop deleteNode to delete imageMax
Signed-off-by: Max <max@nextcloud.com>
2022-02-09fix: use same lowlight version as tiptapMax
Lowlight 2.4.1 was causing failures with jest. Jest was unhappy with it being an ESM module: https://github.com/nextcloud/text/runs/5089748945 Do not hand around the lowlight global between EditorFactory and EditorWrapper. Tiptaps CodeBlockLowLight does not need it anyway. Signed-off-by: Max <max@nextcloud.com>
2022-02-09fix: scroll image into view once it has been loadedMax
Signed-off-by: Max <max@nextcloud.com>
2022-02-09upgrade: syntax highlighting with tiptap2Azul
Signed-off-by: Max <max@nextcloud.com>
2022-02-09upgrade: tiptap v2Azul
Migrate the entire editor to tiptap v2. Some changes were introduces that go beyond just using the new tiptap API: *Collaboration* Port tiptap1 collaboration. We still want to use our session and sync mechanism. *Serialization* Add Markdown extension to handle serialization. Tiptap config extensions are not automatically added to the prosemirror schema anymore. The extension adds the `toMarkdown` config value to the prosemirror schema. With the new naming scheme tiptap nodes for a number of elements do not match the prosemirror names. Camelcase the marks and nodes from `defaultMarkdownSerializer` so they match the tiptap names. *Menubar* * Specify args for isActive function directly rather than setting a function. * Make use of the editor instance inside the MenuBar component. * Use the editor rather than slots for command, focused etc. * disable icons based on editor.can * Show menubar as long as submenus are open. When opening a submenu of the menubar keep track of the open menu even for the image and the remaining action menu. Also refocus the editor whenever a submenu is closed. *MenuBubble* Let tippy handle the positioning Tippy is really good at positioning the menu bubble. Remove all our workarounds and let it do its thing. In order for this to work the content of the MenuBubble actually needs to live inside the tippy-content. Tippy bases its calculations on the width of tippy-content. So if we have the content hanging in a separate div with absolute positioning tippy-content will be 0x0 px and not represent the actual width of the menu bubble. *Upgrade image node and ImageView.* Quite a bit of the syntax changed. We now need a wrapping `<node-view-wrapper>` element. Pretty good docs at https://tiptap.dev/guide/node-views/vue#render-a-vue-component We also need to handle the async action. It will run the action on it's own. So in `clickIcon()` we need to test if the action returned anything. Tiptap v1 had inline images. v2 keeps them outside of paragraphs by default. Configure Image node to use inline images as markdownit creates inline images right now. *Trailing Node* Tiptap v2 does not ship the trailing node extension anymore. Included the one from the demos and turned it from typescript into javascript. *Tests* In order to isolate some problems tests were added. The tests in Undeline.spec.js were green right from the beginning. They are not related to the fix and only helped isolate the problem. Also introduced a cypress test for Lists that tests the editor without rendering the page and logging in. It is very fast and fairly easy to write. *Refactorings* * Split marks into separate files. Signed-off-by: Max <max@nextcloud.com>
2022-02-07[master] Prevents race condition when loading imagesMichal Junek
Signed-off-by: Michal Junek <michal@junek.pw>
2022-02-07[master] Render data URL images as-isMichal Junek
Signed-off-by: Michal Junek <michal@junek.pw>
2022-02-03Add key bindings for uppercase letters for bold, italic underlineJonas
This way, key bindings 'Mod-B', 'Mod-I' and 'Mod-U' with active caps lock have the same effect as their lowercase siblings. This is supposed to be fixed in Tiptap v2 upstream: https://github.com/ueberdosis/tiptap/issues/2426 https://github.com/ueberdosis/tiptap/pull/2478 Fixes: #2050 Signed-off-by: Jonas <jonas@freesources.org>
2022-01-24handle __ as underline when loading markdown filesMax
Signed-off-by: Max <max@nextcloud.com>
2022-01-24refactor: move markdownit to its own directoryMax
Signed-off-by: Max <max@nextcloud.com>
2022-01-24Support underline - use `____` in markdownAzul
Fixes: #75. Signed-off-by: Azul <azul@riseup.net>
2022-01-24ui: use Avatars in 44px for the setssion listMax
Signed-off-by: Max <max@nextcloud.com>
2022-01-24ui: vertical center avatar and save status in menu barMax
Signed-off-by: Max <max@nextcloud.com>
2022-01-24fix feedbackLuka Trovic
Signed-off-by: Luka Trovic <luka@nextcloud.com> Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2022-01-22Bump @nextcloud/webpack-vue-config from 4.3.0 to 4.3.2dependabot[bot]
Bumps [@nextcloud/webpack-vue-config](https://github.com/nextcloud/webpack-vue-config) from 4.3.0 to 4.3.2. - [Release notes](https://github.com/nextcloud/webpack-vue-config/releases) - [Changelog](https://github.com/nextcloud/webpack-vue-config/blob/master/CHANGELOG.md) - [Commits](https://github.com/nextcloud/webpack-vue-config/compare/v4.3.0...v4.3.2) --- updated-dependencies: - dependency-name: "@nextcloud/webpack-vue-config" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2022-01-18fix: vue warning about invalid prop typeMax
* Fixes #2103. * Targets master. Signed-off-by: Max <max@nextcloud.com>
2022-01-13hand the content wrapper to the menububble explicitlyAzul
Signed-off-by: Azul <azul@riseup.net> Signed-off-by: Julien Veyssier <eneiluj@posteo.net>
2022-01-13update offline state message when savingLuka Trovic
Signed-off-by: Luka Trovic <luka@nextcloud.com>
2022-01-13Bump @nextcloud/webpack-vue-config from 4.2.0 to 4.3.0dependabot[bot]
Bumps [@nextcloud/webpack-vue-config](https://github.com/nextcloud/webpack-vue-config) from 4.2.0 to 4.3.0. - [Release notes](https://github.com/nextcloud/webpack-vue-config/releases) - [Changelog](https://github.com/nextcloud/webpack-vue-config/blob/master/CHANGELOG.md) - [Commits](https://github.com/nextcloud/webpack-vue-config/compare/v4.2.0...v4.3.0) --- updated-dependencies: - dependency-name: "@nextcloud/webpack-vue-config" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2022-01-12declare missing getPos prop in <ImageView>Julien Veyssier
Signed-off-by: Julien Veyssier <eneiluj@posteo.net>
2022-01-11Bump @cypress/browserify-preprocessor from 3.0.1 to 3.0.2dependabot[bot]
Bumps [@cypress/browserify-preprocessor](https://github.com/cypress-io/cypress-browserify-preprocessor) from 3.0.1 to 3.0.2. - [Release notes](https://github.com/cypress-io/cypress-browserify-preprocessor/releases) - [Commits](https://github.com/cypress-io/cypress-browserify-preprocessor/compare/v3.0.1...v3.0.2) --- updated-dependencies: - dependency-name: "@cypress/browserify-preprocessor" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2022-01-10refs #1900 fix image serving in direct editing, avoid passing empty ↵Julien Veyssier
shareToken, use the edition session to get the user ID Signed-off-by: Julien Veyssier <eneiluj@posteo.net>
2022-01-07refs #2049 do a proper image check with file name returned in request responseJulien Veyssier
Signed-off-by: Julien Veyssier <eneiluj@posteo.net>
2022-01-03fix some psalm false positivesJulien Veyssier
Signed-off-by: Julien Veyssier <eneiluj@posteo.net> Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2021-12-30fix stylelint config and one css importJulien Veyssier
Signed-off-by: Julien Veyssier <eneiluj@posteo.net>
2021-12-28fix landscape image issueLuka Trovic
Signed-off-by: Luka Trovic <luka@nextcloud.com> Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2021-12-28Fix autofocus on empty documents without a node (Fixes: #1974)Jonas Meurer
Signed-off-by: Jonas Meurer <jonas@freesources.org>
2021-12-16l10n: Change to a capital letterValdnet
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com> Signed-off-by: nextcloud-command <nextcloud-command@users.noreply.github.com>
2021-12-15Further wording and layout improvementsJonas Meurer
Signed-off-by: Jonas Meurer <jonas@freesources.org>
2021-12-14Fix modal height and improve wording (both on mobile)Jonas Meurer
Signed-off-by: Jonas Meurer <jonas@freesources.org>
2021-12-14Remove emoji documentation and minor wording improvementsJonas Meurer
Signed-off-by: Jonas Meurer <jonas@freesources.org>
2021-12-14Make modal full-screen on mobileJonas Meurer
Signed-off-by: Jonas Meurer <jonas@freesources.org>
2021-12-14Make info icon the last item of the formatting barJonas Meurer
Signed-off-by: Jonas Meurer <jonas@freesources.org>
2021-12-13Add formatting help modal (Fixes: #1941)Jonas Meurer
Signed-off-by: Jonas Meurer <jonas@freesources.org>