[ ] Maintenance (Non-breaking change that updates dependencies)
[ ] Development changes (Changes that do not add new features or fix bugs, but update the project in other ways)
[x] Bug fix (Non-breaking change which fixes an issue)
[ ] Feature (Non-breaking change which adds functionality)
[x] Breaking change (Major bug fix or feature that would cause existing functionality not to work as expected.)
Summary
This is a joint fix of three issues, which were all results of the same core issue.
The fixes are:
Fixed invalid content being shown on new file bug (Despite the local storage still showing the correct content).
Fixed editor ignoring updates unless a new one is pushed on top of it bug.
Fixed presentation preview not reloading with an incoming remote update.
Closes #147
Closes #150
Closes #152
List of Changes
Refactored editor functionality and files into a single folder called @/scripts/editor, where all the logic is now being handled.
Main editor functionality was moved away from Editor.vue and into @/scripts/editor/editor.ts. This now uses a static class to act as a wrapper around the global instance of the monaco editor. (Originally planned as a dynamic instantiable class, but due to Vue bugs monaco broke if used as a class property, so that was scrapped.
Finally added Monaco editor WebWorker optimisations in the form of MonacoEnvironment.getWorker.
What type of change does this PR perform?
Summary
This is a joint fix of three issues, which were all results of the same core issue.
The fixes are:
Closes #147 Closes #150 Closes #152
List of Changes
@/scripts/editor
, where all the logic is now being handled.Editor.vue
and into@/scripts/editor/editor.ts
. This now uses a static class to act as a wrapper around the global instance of the monaco editor. (Originally planned as a dynamic instantiable class, but due to Vue bugs monaco broke if used as a class property, so that was scrapped.MonacoEnvironment.getWorker
.Does this PR create new warnings?
None.
Linked issues or PRs