Files
azuredatastudio/src/vs/code/browser/workbench/workbench-dev.html
Hale Rankin 6670289057 Hackathon - Better Markdown Editor (#11540)
* Hackathon - better markdown editor - modified Bold to wrap selection in HTML. Split Image button into two new options: embed and link. Made preview container contentEditable.

* Removed the new dropdown from Image button -- it is not necessary since we are adding a context panel instead.

* Modified preview icons

* Set code-component dimensions so it is not visible. It is still being used to pass markdown changes to however.

* add turndown and save markdown

* update model on UI when source changes

* Added conditional that sets element attribute contentEditable when it is in edit mode.

* Added textView component that can be used for editing.

* update source on MD view not on every keystroke

* Added markdown editor buttons that allow user to swap editor, preview views.

* Cleaning up implementation

* Setting base value of _showPreview to false.

* don't allow html edit on split view

* Update editor automagically

* Add an image picking dialog to notebook toolbar.

* Await transformText()

* revert pushEditOperations to fix cursor issue

* Implemented radio buttons for three view toggles.

* Added new, optional properties to radioButton: name, icon class and tooltip. This allows for display as toggleable icon. Updated styles and theme accordingly.

* Style tweaks.

* Added new ViewAction file where the RadioButton action will reside.

* Removed radio button implementation in exchange for native button instantiation. Adjusted CSS and theme accordingly.

* Styles, component and template changes to handle view toggle between text, markdownn an splitview. Includes reverting of radioButton as this is no longer used.

* WYSIWYG 3 Modes

* Ensure one action active at a time

* Setting Text View button active by default. Cleaned up styles. Moved toolbar element to prevent code cell layout overflow.

* Ensure we respect editMode, add showMarkdown

* hiding overflow on code-cell

* Empty text container needs 100% width. Eliminates weird selection border too.

* Initialize _previewMode

* Actions Compatibility

* Further toolbar enhancements

* Update yarn lock after merge

* Slim down changes

* Remove commented out code

* Added margins around notebook-preview container for more visual space for text

* Add turndown to workbench html

* Tweak import

* Add types/turndown

* Remove workbench.html fix

* Import cjs modules directly for turndown

* Leverage solution from github

* browser umd

* non browser umd

* welp dependency

* Modified updatePreview to insert a p tag only when text cell is empty.

* add listener for undo

* add turndown to remote and web

* Fix workbench, check in plugin

* PR comment

Co-authored-by: maddydev <makoripa@microsoft.com>
Co-authored-by: chlafreniere <hichise@gmail.com>
Co-authored-by: Cory Rivera <corivera@microsoft.com>
Co-authored-by: Lucy Zhang <luczhan@microsoft.com>
2020-09-11 00:22:07 -07:00

111 lines
8.3 KiB
HTML

<!-- Copyright (C) Microsoft Corporation. All rights reserved. -->
<!DOCTYPE html>
<html>
<head>
<script>
globalThis.MonacoPerformanceMarks = globalThis.MonacoPerformanceMarks || [];
globalThis.MonacoPerformanceMarks.push('renderer/started', Date.now());
</script>
<meta charset="utf-8" />
<!-- Disable pinch zooming -->
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no">
<!-- Workbench Configuration -->
<meta id="vscode-workbench-web-configuration" data-settings="{{WORKBENCH_WEB_CONFIGURATION}}">
<!-- Builtin Extensions (running out of sources) -->
<meta id="vscode-workbench-builtin-extensions" data-settings="{{WORKBENCH_BUILTIN_EXTENSIONS}}">
<!-- Workbench Credentials (running out of sources) -->
<meta id="vscode-workbench-credentials" data-settings="{{WORKBENCH_CREDENTIALS}}">
<!-- Workarounds/Hacks (remote user data uri) -->
<meta id="vscode-remote-user-data-uri" data-settings="{{REMOTE_USER_DATA_URI}}">
<!-- Workbench Icon/Manifest/CSS -->
<link rel="icon" href="/favicon.ico" type="image/x-icon" />
<link rel="manifest" href="/manifest.json">
</head>
<body aria-label="">
</body>
<!-- Startup (do not modify order of script tags!) -->
<script>
self.require = {
baseUrl: `${window.location.origin}/static/out`,
recordStats: true,
paths: {
'vscode-textmate': `${window.location.origin}/static/remote/web/node_modules/vscode-textmate/release/main`,
'vscode-oniguruma': `${window.location.origin}/static/remote/web/node_modules/vscode-oniguruma/release/main`,
'xterm': `${window.location.origin}/static/remote/web/node_modules/xterm/lib/xterm.js`,
'xterm-addon-search': `${window.location.origin}/static/remote/web/node_modules/xterm-addon-search/lib/xterm-addon-search.js`,
'xterm-addon-unicode11': `${window.location.origin}/static/remote/web/node_modules/xterm-addon-unicode11/lib/xterm-addon-unicode11.js`,
'xterm-addon-webgl': `${window.location.origin}/static/remote/web/node_modules/xterm-addon-webgl/lib/xterm-addon-webgl.js`,
'semver-umd': `${window.location.origin}/static/remote/web/node_modules/semver-umd/lib/semver-umd.js`,
'@angular/core': `${window.location.origin}/static/remote/web/node_modules/@angular/core/bundles/core.umd.js`,
'@angular/common': `${window.location.origin}/static/remote/web/node_modules/@angular/common/bundles/common.umd.js`,
'@angular/compiler': `${window.location.origin}/static/remote/web/node_modules/@angular/compiler/bundles/compiler.umd.js`,
'@angular/platform-browser': `${window.location.origin}/static/remote/web/node_modules/@angular/platform-browser/bundles/platform-browser.umd.js`,
'@angular/platform-browser-dynamic': `${window.location.origin}/static/remote/web/node_modules/@angular/platform-browser-dynamic/bundles/platform-browser-dynamic.umd.js`,
'@angular/platform-browser/animations': `${window.location.origin}/static/remote/web/node_modules/@angular/platform-browser/bundles/platform-browser-animations.umd.js`,
'@angular/forms': `${window.location.origin}/static/remote/web/node_modules/@angular/forms/bundles/forms.umd.js`,
'@angular/http': `${window.location.origin}/static/remote/web/node_modules/@angular/http/bundles/http.umd.js`,
'@angular/router': `${window.location.origin}/static/remote/web/node_modules/@angular/router/bundles/router.umd.js`,
'@angular/animations': `${window.location.origin}/static/remote/web/node_modules/@angular/animations/bundles/animations.umd.n.js`,
'angular2-grid': `${window.location.origin}/static/remote/web/node_modules/angular2-grid/bundles/NgGrid.umd.js`,
'angular2-slickgrid': `${window.location.origin}/static/remote/web/node_modules/angular2-slickgrid/out/bundles/angular2-slickgrid.umd.js`,
'chart.js': `${window.location.origin}/static/remote/web/node_modules/chart.js/dist/Chart.bundle.min.js`,
'html-query-plan': `${window.location.origin}/static/remote/web/node_modules/html-query-plan/dist/index.min.js`,
'ng2-charts': `${window.location.origin}/static/remote/web/node_modules/ng2-charts/bundles/ng2-charts.umd.js`,
'rxjs/Observable': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?0`,
'rxjs/observable/merge': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?1`,
'rxjs/operator/share': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?2`,
'rxjs/Subject': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?3`,
'rxjs/observable/forkJoin': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?4`,
'rxjs/operator/map': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?5`,
'rxjs/observable/fromPromise': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?6`,
'rxjs/add/observable/fromPromise': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?7`,
'rxjs/BehaviorSubject': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?8`,
'rxjs/observable/from': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?9`,
'rxjs/operator/concatMap': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?10`,
'rxjs/observable/of': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?11`,
'rxjs/operator/every': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?12`,
'rxjs/operator/first': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?13`,
'rxjs/operator/mergeMap': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?14`,
'rxjs/operator/reduce': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?15`,
'rxjs/operator/catch': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?16`,
'rxjs/operator/concatAll': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?17`,
'rxjs/util/EmptyError': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?18`,
'rxjs/operator/last': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?19`,
'rxjs/operator/mergeAll': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?20`,
'rxjs/operator/filter': `${window.location.origin}/static/remote/web/node_modules/rxjs/bundles/Rx.min.js?21`,
'sanitize-html': `${window.location.origin}/static/remote/web/node_modules/sanitize-html/dist/sanitize-html.js`,
'ansi_up': `${window.location.origin}/static/remote/web/node_modules/ansi_up/ansi_up.js`,
'iconv-lite-umd': `${window.location.origin}/static/remote/web/node_modules/iconv-lite-umd/lib/iconv-lite-umd.js`,
'jschardet': `${window.location.origin}/static/remote/web/node_modules/jschardet/dist/jschardet.min.js`,
'turndown': `${window.location.origin}/static/remote/web/node_modules/turndown/lib/turndown.browser.umd.js`,
'mark.js': `${window.location.origin}/static/remote/web/node_modules/mark.js/dist/mark.min.js`
}
};
</script>
<script src="./static/remote/web/node_modules/jquery/dist/jquery.min.js"></script>
<script src="./static/remote/web/node_modules/slickgrid/lib/jquery.event.drag-2.3.0.js"></script>
<script src="./static/remote/web/node_modules/slickgrid/lib/jquery-ui-1.9.2.js"></script>
<script src="./static/remote/web/node_modules/slickgrid/slick.core.js"></script>
<script src="./static/remote/web/node_modules/slickgrid/slick.grid.js"></script>
<script src="./static/remote/web/node_modules/slickgrid/slick.dataview.js"></script>
<script src="./static/remote/web/node_modules/slickgrid/plugins/slick.cellrangedecorator.js"></script>
<script src="./static/remote/web/node_modules/zone.js/dist/zone.min.js"></script>
<script src="./static/remote/web/node_modules/reflect-metadata/Reflect.js"></script>
<script src="./static/out/vs/base/common/performance.js"></script>
<script src="./static/out/vs/loader.js"></script>
<script>
globalThis.MonacoPerformanceMarks.push('willLoadWorkbenchMain', Date.now());
</script>
<script>
require(['vs/code/browser/workbench/workbench'], function() {});
</script>
</html>