* 'master' of https://github.com/mermaid-js/mermaid-live-editor: (50 commits)
  chore: update deps
  chore: update deps
  chore: update deps
  update cache logic
  fix: remove yarn cache
  chore: update deps
  chore: update deps
  chore: update deps
  chore: update deps
  fix: editor undefined issue
  Upgrade of Mermaid to version 8.11.4
  Update mermaid 8.11.3
  Update
  Fix tests
  Update mermaid
  Update deps
  fix: mermaid import
  Typo fix
  Bump autoprefixer from 10.3.0 to 10.3.1
  Bump eslint from 7.29.0 to 7.30.0
  ...
This commit is contained in:
Sidharth Vinod
2021-08-15 19:58:09 +05:30
12 changed files with 2680 additions and 1241 deletions
+8 -5
View File
@@ -17,14 +17,17 @@ jobs:
- name: Checkout - name: Checkout
uses: actions/checkout@v2 uses: actions/checkout@v2
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "::set-output name=dir::$(yarn cache dir)"
- uses: actions/cache@v2 - uses: actions/cache@v2
id: yarn-and-build-cache id: yarn-cache
with: with:
path: | path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
node_modules key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
key: ${{ runner.os }}-node_modules-build-deploy-${{ hashFiles('**/yarn.lock') }}
restore-keys: | restore-keys: |
${{ runner.os }}-node_modules-build-deploy- ${{ runner.os }}-yarn-
- name: Build & Deploy - name: Build & Deploy
run: | run: |
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/sh #!/bin/sh
. "$(dirname "$0")/_/husky.sh" . "$(dirname "$0")/_/husky.sh"
npm run pre-commit yarn pre-commit
+1 -1
View File
@@ -31,7 +31,7 @@ Then open http://localhost:8000
[Volta](https://volta.sh) is used for managing node and yarn versions. [Volta](https://volta.sh) is used for managing node and yarn versions.
This project is set up using [Yarn](https://classic.yarnpkg.com/en/docs/getting-started). : This project is set up using [Yarn](https://classic.yarnpkg.com/en/docs/getting-started):
``` ```
yarn install yarn install
+3 -2
View File
@@ -61,7 +61,7 @@ describe('Site Loads', () => {
it('should prevent setting the "securityLevel" option via URL', () => { it('should prevent setting the "securityLevel" option via URL', () => {
const b64State = toBase64( const b64State = toBase64(
`{"code":"graph TD\\nA[\\"<img src='https://via.placeholder.com/64' width=64/>\\"]","mermaid":"{\\"securityLevel\\": \\"loose\\", \\"theme\\": \\"forest\\"}","updateEditor":true,"autoSync":true,"updateDiagram":true}`, `{"code":"graph TD\\nA[\\"<img src='https://via.placeholder.com/64' width=64 />\\"]","mermaid":"{\\"securityLevel\\": \\"loose\\", \\"theme\\": \\"forest\\"}","updateEditor":true,"autoSync":true,"updateDiagram":true}`,
true true
); );
cy.on('window:confirm', () => true); cy.on('window:confirm', () => true);
@@ -70,7 +70,8 @@ describe('Site Loads', () => {
cy.contains('forest'); cy.contains('forest');
cy.contains('securityLevel').should('not.exist'); cy.contains('securityLevel').should('not.exist');
cy.get('#view').find('img').should('not.exist'); cy.get('#view').find('img').should('not.exist');
cy.get('#view').contains('<img src'); cy.get('#view').contains('<img');
cy.get('#view').contains('src="https://via.placeholder.com/64"');
}); });
it('should allow persisting "securityLevel" using confirm dialogue', () => { it('should allow persisting "securityLevel" using confirm dialogue', () => {
+1 -1
View File
@@ -16,7 +16,7 @@ module.exports = {
"1": "{\"code\":\"graph TD\\n A[Party] -->|Get money| B(Go shopping!!)\\n \",\"mermaid\":\"{\\n \\\"theme\\\": \\\"forest\\\",\\n \\\"test\\\": \\\"hello world\\\"\\n}\",\"updateEditor\":false,\"autoSync\":true,\"updateDiagram\":true,\"loader\":{\"type\":\"files\",\"config\":{\"codeURL\":\"https://gist.githubusercontent.com/sidharthv96/6268a23e673a533dcb198f241fd7012a/raw/4eb03887e6a41397e80bdcdbf94017c498f8f1e2/code.mmd\",\"configURL\":\"https://gist.githubusercontent.com/sidharthv96/6268a23e673a533dcb198f241fd7012a/raw/4eb03887e6a41397e80bdcdbf94017c498f8f1e2/config.json\"}}}" "1": "{\"code\":\"graph TD\\n A[Party] -->|Get money| B(Go shopping!!)\\n \",\"mermaid\":\"{\\n \\\"theme\\\": \\\"forest\\\",\\n \\\"test\\\": \\\"hello world\\\"\\n}\",\"updateEditor\":false,\"autoSync\":true,\"updateDiagram\":true,\"loader\":{\"type\":\"files\",\"config\":{\"codeURL\":\"https://gist.githubusercontent.com/sidharthv96/6268a23e673a533dcb198f241fd7012a/raw/4eb03887e6a41397e80bdcdbf94017c498f8f1e2/code.mmd\",\"configURL\":\"https://gist.githubusercontent.com/sidharthv96/6268a23e673a533dcb198f241fd7012a/raw/4eb03887e6a41397e80bdcdbf94017c498f8f1e2/config.json\"}}}"
} }
}, },
"__version": "7.5.0", "__version": "8.2.0",
"Auto sync tests": { "Auto sync tests": {
"should dim diagram when code is edited": { "should dim diagram when code is edited": {
"1": "{\"code\":\"graph TD\\n A[Christmas] -->|Get money| B(Go shopping)\\n B --> C{Let me think}\\n C -->|One| D[Laptop]\\n C -->|Two| E[iPhone]\\n C -->|Three| F[fa:fa-car Car]\\n C --> Test\",\"mermaid\":\"{\\n \\\"theme\\\": \\\"default\\\"\\n}\",\"updateEditor\":false,\"autoSync\":false,\"updateDiagram\":false}" "1": "{\"code\":\"graph TD\\n A[Christmas] -->|Get money| B(Go shopping)\\n B --> C{Let me think}\\n C -->|One| D[Laptop]\\n C -->|Two| E[iPhone]\\n C -->|Three| F[fa:fa-car Car]\\n C --> Test\",\"mermaid\":\"{\\n \\\"theme\\\": \\\"default\\\"\\n}\",\"updateEditor\":false,\"autoSync\":false,\"updateDiagram\":false}"
+30 -28
View File
@@ -9,50 +9,52 @@
"lint:fix": "prettier --write --plugin-search-dir=. . && eslint --fix --ignore-path .gitignore .", "lint:fix": "prettier --write --plugin-search-dir=. . && eslint --fix --ignore-path .gitignore .",
"format": "prettier --write --plugin-search-dir=. .", "format": "prettier --write --plugin-search-dir=. .",
"pre-commit": "lint-staged", "pre-commit": "lint-staged",
"postinstall": "husky install" "postinstall": "husky install",
"test": "cypress run",
"cy": "cypress open"
}, },
"devDependencies": { "devDependencies": {
"@cypress/snapshot": "^2.1.7", "@cypress/snapshot": "^2.1.7",
"@sveltejs/adapter-static": "1.0.0-next.11", "@sveltejs/adapter-static": "1.0.0-next.16",
"@sveltejs/kit": "^1.0.0-next.109", "@sveltejs/kit": "1.0.0-next.147",
"@types/mermaid": "^8.2.6", "@types/mermaid": "^8.2.7",
"@typescript-eslint/eslint-plugin": "^4.26.1", "@typescript-eslint/eslint-plugin": "^4.29.1",
"@typescript-eslint/parser": "^4.26.1", "@typescript-eslint/parser": "^4.29.1",
"autoprefixer": "^10.2.6", "autoprefixer": "^10.3.1",
"chai": "^4.3.4", "chai": "^4.3.4",
"cssnano": "^5.0.6", "cssnano": "^5.0.7",
"cypress": "^7.5.0", "cypress": "8.2.0",
"cypress-localstorage-commands": "^1.4.5", "cypress-localstorage-commands": "^1.5.0",
"eslint": "^7.28.0", "eslint": "^7.32.0",
"eslint-config-prettier": "^8.1.0", "eslint-config-prettier": "^8.1.0",
"eslint-plugin-cypress": "^2.11.3", "eslint-plugin-cypress": "^2.11.3",
"eslint-plugin-mocha": "^9.0.0", "eslint-plugin-mocha": "^9.0.0",
"eslint-plugin-postcss-modules": "^1.2.1", "eslint-plugin-postcss-modules": "^1.2.1",
"eslint-plugin-svelte3": "^3.2.0", "eslint-plugin-svelte3": "^3.2.0",
"eslint-plugin-tailwindcss": "^1.13.2", "eslint-plugin-tailwindcss": "^1.14.1",
"husky": "^6.0.0", "husky": "^7.0.1",
"lint-staged": "^11.0.0", "lint-staged": "^11.1.2",
"mocha": "^9.0.0", "mocha": "^9.0.2",
"postcss": "^8.3.2", "postcss": "^8.3.6",
"postcss-load-config": "^3.0.1", "postcss-load-config": "^3.1.0",
"prettier": "~2.3.1", "prettier": "~2.3.2",
"prettier-plugin-svelte": "^2.3.0", "prettier-plugin-svelte": "^2.3.1",
"svelte": "^3.34.0", "svelte": "^3.42.1",
"svelte-preprocess": "^4.7.1", "svelte-preprocess": "^4.7.4",
"tailwindcss": "^2.1.4", "tailwindcss": "^2.2.7",
"tslib": "^2.3.0", "tslib": "^2.3.1",
"typescript": "^4.3.2" "typescript": "^4.3.5"
}, },
"type": "module", "type": "module",
"dependencies": { "dependencies": {
"@analytics/google-analytics": "^0.5.3", "@analytics/google-analytics": "^0.5.3",
"@macfja/svelte-persistent-store": "^1.1.1", "@macfja/svelte-persistent-store": "^1.1.1",
"analytics": "^0.7.5", "analytics": "^0.7.13",
"js-base64": "^3.6.1", "js-base64": "^3.6.1",
"mermaid": "^8.10.2", "mermaid": "^8.11.4",
"moment": "^2.29.1", "moment": "^2.29.1",
"monaco-editor": "^0.25.0", "monaco-editor": "^0.25.2",
"random-word-slugs": "^0.0.2" "random-word-slugs": "^0.0.5"
}, },
"lint-staged": { "lint-staged": {
"*.{ts,svelte,js,css,md,json}": [ "*.{ts,svelte,js,css,md,json}": [
+5 -14
View File
@@ -19,38 +19,29 @@
rel="stylesheet" rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.2/css/all.min.css" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.2/css/all.min.css"
/> />
<script
src="https://cdn.jsdelivr.net/npm/mermaid@8.10.2/dist/mermaid.min.js"
integrity="sha256-VCwgPHytr103lKi7COURCy056chJehHMLqvOVKGXBIc="
crossorigin="anonymous"
></script>
<link <link
rel="stylesheet" rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.25.0/min/vs/editor/editor.main.min.css" href="https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.25.2/min/vs/editor/editor.main.min.css"
integrity="sha512-WPobWFyITzoqT5htKutcqZ5EdjusQccR2Nrx/jzLtQsAO0H7wUYTkHr66woHsxH5kGIRGYl6wU1Gz1OEGoPpAg=="
crossorigin="anonymous" crossorigin="anonymous"
referrerpolicy="no-referrer" referrerpolicy="no-referrer"
/> />
<script> <script>
var require = { var require = {
paths: { vs: 'https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.25.0/min/vs' } paths: { vs: 'https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.25.2/min/vs' }
}; };
</script> </script>
<script <script
src="https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.25.0/min/vs/loader.min.js" src="https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.25.2/min/vs/loader.min.js"
integrity="sha512-SExj71Cw3B9C9EE8BC/ad3AKia5zQXDj/2SM4THgkeKh5GIFZhKM/R3uclUG8YZwJrjcVhydAlIHmfNvsBCKZA=="
crossorigin="anonymous" crossorigin="anonymous"
referrerpolicy="no-referrer" referrerpolicy="no-referrer"
></script> ></script>
<script <script
src="https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.25.0/min/vs/editor/editor.main.nls.min.js" src="https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.25.2/min/vs/editor/editor.main.nls.min.js"
integrity="sha512-/Lpr8XyEnghf+eu5/ytlh92qc6gEWUodmPjmxRFKqBG1ZzS0Qif87TFRnRy7BMf6epqv2NdE13JYvnvrSPVAvQ=="
crossorigin="anonymous" crossorigin="anonymous"
referrerpolicy="no-referrer" referrerpolicy="no-referrer"
></script> ></script>
<script <script
src="https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.25.0/min/vs/editor/editor.main.js" src="https://cdnjs.cloudflare.com/ajax/libs/monaco-editor/0.25.2/min/vs/editor/editor.main.js"
integrity="sha512-dkAg1SPTZ4Aw4iUXFUHr0+kVw3MYthWZ8Tu36Ki6aMGb5Uo90it+WogNG05as93dZ0TQhUcPKnYhvGjDikfOew=="
crossorigin="anonymous" crossorigin="anonymous"
referrerpolicy="no-referrer" referrerpolicy="no-referrer"
></script> ></script>
+2 -2
View File
@@ -23,7 +23,7 @@
}; };
export let errorMarkers: monaco.editor.IMarkerData[] = []; export let errorMarkers: monaco.editor.IMarkerData[] = [];
let oldText = text; let oldText = text;
$: Monaco?.editor.setModelLanguage(editor.getModel(), language); $: editor && Monaco?.editor.setModelLanguage(editor.getModel(), language);
$: { $: {
if (text !== oldText) { if (text !== oldText) {
if ($codeStore.updateEditor) { if ($codeStore.updateEditor) {
@@ -31,7 +31,7 @@
} }
oldText = text; oldText = text;
} }
Monaco?.editor.setModelMarkers(editor.getModel(), 'test', errorMarkers); editor && Monaco?.editor.setModelMarkers(editor.getModel(), 'test', errorMarkers);
} }
const dispatch = createEventDispatcher<EditorEvents>(); const dispatch = createEventDispatcher<EditorEvents>();
+1 -2
View File
@@ -3,9 +3,8 @@
import { codeStore } from '$lib/util/state'; import { codeStore } from '$lib/util/state';
import { onMount } from 'svelte'; import { onMount } from 'svelte';
import type { Mermaid } from 'mermaid'; import * as mermaid from 'mermaid';
const mermaid: Mermaid = window.mermaid as unknown as Mermaid;
let code = ''; let code = '';
let config = ''; let config = '';
let container: HTMLDivElement; let container: HTMLDivElement;
+1 -3
View File
@@ -10,13 +10,11 @@
import { initHandler, syncDiagram } from '$lib/util/util'; import { initHandler, syncDiagram } from '$lib/util/util';
import { errorStore } from '$lib/util/error'; import { errorStore } from '$lib/util/error';
import { onMount } from 'svelte'; import { onMount } from 'svelte';
import * as mermaid from 'mermaid';
import type monaco from 'monaco-editor'; import type monaco from 'monaco-editor';
import type { Mermaid } from 'mermaid';
import type { EditorUpdateEvent, State, Tab } from '$lib/types'; import type { EditorUpdateEvent, State, Tab } from '$lib/types';
import { base } from '$app/paths'; import { base } from '$app/paths';
const mermaid: Mermaid = window.mermaid as unknown as Mermaid;
let selectedMode = 'code'; let selectedMode = 'code';
const languageMap = { const languageMap = {
code: 'mermaid', code: 'mermaid',
+4 -2
View File
@@ -10,7 +10,6 @@ const config = {
postcss: true postcss: true
}) })
], ],
kit: { kit: {
adapter: adapter({ adapter: adapter({
pages: `docs${process.env['BETA'] ? '/beta' : ''}` pages: `docs${process.env['BETA'] ? '/beta' : ''}`
@@ -23,7 +22,10 @@ const config = {
ssr: false, ssr: false,
// hydrate the <div id="svelte"> element in src/app.html // hydrate the <div id="svelte"> element in src/app.html
target: '#svelte', target: '#svelte',
trailingSlash: 'ignore' trailingSlash: 'ignore',
vite: {
optimizeDeps: { include: ['mermaid'] }
}
} }
}; };
+2623 -1180
View File
File diff suppressed because it is too large Load Diff