From 9a1e1eef92b1cdb47503e98c376af54a27f25bf5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Szcz=C4=99=C5=9Bniak?= Date: Mon, 20 May 2024 14:27:21 +0200 Subject: [PATCH 01/12] Migration reflected from package-generator to support NIM. --- .eslintrc.js => .eslintrc.cjs | 6 +++ .gitignore | 3 +- package.json | 40 +++++++------- sample/ckeditor.js | 22 ++++---- scripts/build-dist.mjs | 61 ++++++++++++++++++++++ src/commands/insertMermaidCommand.js | 2 +- src/commands/mermaidPreviewCommand.js | 4 +- src/commands/mermaidSourceViewCommand.js | 4 +- src/commands/mermaidSplitViewCommand.js | 4 +- src/index.js | 2 +- src/mermaid.js | 8 +-- src/mermaidediting.js | 14 ++--- src/mermaidtoolbar.js | 4 +- src/mermaidui.js | 4 +- tests/commands/insertMermaidCommand.js | 10 ++-- tests/commands/mermaidPreviewCommand.js | 10 ++-- tests/commands/mermaidSourceViewCommand.js | 10 ++-- tests/commands/mermaidSplitViewCommand.js | 10 ++-- tests/index.js | 4 +- tests/manual/markdown.js | 24 ++++----- tests/manual/mermaid.js | 22 ++++---- tests/mermaid.js | 12 ++--- tests/mermaidediting.js | 16 +++--- tests/mermaidtoolbar.js | 16 +++--- tests/mermaidui.js | 8 +-- 25 files changed, 198 insertions(+), 122 deletions(-) rename .eslintrc.js => .eslintrc.cjs (86%) create mode 100644 scripts/build-dist.mjs diff --git a/.eslintrc.js b/.eslintrc.cjs similarity index 86% rename from .eslintrc.js rename to .eslintrc.cjs index 96255cb44..61d6e053c 100644 --- a/.eslintrc.js +++ b/.eslintrc.cjs @@ -21,5 +21,11 @@ module.exports = { 'ckeditor5-rules/ckeditor-imports': 'off' } } + ], + ignorePatterns: [ + // Ignore the entire `build/` (the DLL build). + 'build/**', + // Ignore the entire `dist/`. + 'dist/**' ] }; diff --git a/.gitignore b/.gitignore index 249e13209..c9c1cc85e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,8 @@ .nyc_output/ coverage/ +dist/ node_modules/ yarn.lock tmp/ build/ -yarn.error \ No newline at end of file +yarn.error diff --git a/package.json b/package.json index cdd584bb2..3a4645053 100644 --- a/package.json +++ b/package.json @@ -11,16 +11,18 @@ "ckeditor5-plugin", "ckeditor5-mermaid" ], + "type": "module", "main": "src/index.js", "license": "SEE LICENSE IN LICENSE.md", "author": "CKSource (https://cksource.com/)", "homepage": "https://github.com/ckeditor/ckeditor5-mermaid", "bugs": "https://github.com/ckeditor/ckeditor5-mermaid/issues", "engines": { - "node": ">=14.0.0", + "node": ">=18.0.0", "npm": ">=5.7.1" }, "files": [ + "dist", "lang", "src", "theme", @@ -35,23 +37,24 @@ "ckeditor5": "*" }, "devDependencies": { - "@ckeditor/ckeditor5-basic-styles": "^35.0.1", - "@ckeditor/ckeditor5-clipboard": "^35.0.1", - "@ckeditor/ckeditor5-code-block": "^35.0.1", - "@ckeditor/ckeditor5-editor-classic": "^35.0.1", - "@ckeditor/ckeditor5-engine": "^35.0.1", - "@ckeditor/ckeditor5-enter": "^35.0.1", - "@ckeditor/ckeditor5-essentials": "^35.0.1", - "@ckeditor/ckeditor5-heading": "^35.0.1", + "@ckeditor/ckeditor5-basic-styles": "^41.4.2", + "@ckeditor/ckeditor5-clipboard": "^41.4.2", + "@ckeditor/ckeditor5-code-block": "^41.4.2", + "@ckeditor/ckeditor5-dev-build-tools": "^40.0.0", + "@ckeditor/ckeditor5-editor-classic": "^41.4.2", + "@ckeditor/ckeditor5-engine": "^41.4.2", + "@ckeditor/ckeditor5-enter": "^41.4.2", + "@ckeditor/ckeditor5-essentials": "^41.4.2", + "@ckeditor/ckeditor5-heading": "^41.4.2", "@ckeditor/ckeditor5-inspector": "^4.0.0", - "@ckeditor/ckeditor5-link": "^35.0.1", - "@ckeditor/ckeditor5-markdown-gfm": "^35.0.1", - "@ckeditor/ckeditor5-paragraph": "^35.0.1", - "@ckeditor/ckeditor5-typing": "^35.0.1", - "@ckeditor/ckeditor5-undo": "^35.0.1", - "@ckeditor/ckeditor5-widget": "^35.0.1", - "@ckeditor/ckeditor5-package-tools": "^1.0.0-beta.4", - "@ckeditor/ckeditor5-theme-lark": "^35.0.1", + "@ckeditor/ckeditor5-link": "^41.4.2", + "@ckeditor/ckeditor5-markdown-gfm": "^41.4.2", + "@ckeditor/ckeditor5-paragraph": "^41.4.2", + "@ckeditor/ckeditor5-typing": "^41.4.2", + "@ckeditor/ckeditor5-undo": "^41.4.2", + "@ckeditor/ckeditor5-widget": "^41.4.2", + "@ckeditor/ckeditor5-package-tools": "file:/Users/piotrszczesniak/Dev/ckeditor5-package-generator/packages/ckeditor5-package-tools", + "@ckeditor/ckeditor5-theme-lark": "^41.4.2", "eslint": "^7.32.0", "eslint-config-ckeditor5": ">=3.1.1", "http-server": "^14.1.0", @@ -64,11 +67,12 @@ "scripts": { "dll:build": "ckeditor5-package-tools dll:build", "dll:serve": "http-server ./ -o sample/dll.html", + "build:dist": "node ./scripts/build-dist.mjs", "lint": "eslint \"**/*.js\" --quiet --ignore-pattern \"build/\"", "start": "ckeditor5-package-tools start", "stylelint": "stylelint --quiet --allow-empty-input 'theme/*.css'", "test": "ckeditor5-package-tools test", - "prepare": "yarn run dll:build", + "prepare": "yarn run dll:build && yarn run build:dist", "prepublishOnly": "yarn run dll:build", "translations:collect": "ckeditor5-package-tools translations:collect", "translations:download": "ckeditor5-package-tools translations:download", diff --git a/sample/ckeditor.js b/sample/ckeditor.js index 288d3229b..16606bdbd 100644 --- a/sample/ckeditor.js +++ b/sample/ckeditor.js @@ -5,19 +5,19 @@ /* globals console, window, document */ -import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor'; -import Typing from '@ckeditor/ckeditor5-typing/src/typing'; -import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph'; -import Undo from '@ckeditor/ckeditor5-undo/src/undo'; -import Enter from '@ckeditor/ckeditor5-enter/src/enter'; -import Clipboard from '@ckeditor/ckeditor5-clipboard/src/clipboard'; -import Link from '@ckeditor/ckeditor5-link/src/link'; -import Bold from '@ckeditor/ckeditor5-basic-styles/src/bold'; -import Italic from '@ckeditor/ckeditor5-basic-styles/src/italic'; +import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; +import Typing from '@ckeditor/ckeditor5-typing/src/typing.js'; +import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph.js'; +import Undo from '@ckeditor/ckeditor5-undo/src/undo.js'; +import Enter from '@ckeditor/ckeditor5-enter/src/enter.js'; +import Clipboard from '@ckeditor/ckeditor5-clipboard/src/clipboard.js'; +import Link from '@ckeditor/ckeditor5-link/src/link.js'; +import Bold from '@ckeditor/ckeditor5-basic-styles/src/bold.js'; +import Italic from '@ckeditor/ckeditor5-basic-styles/src/italic.js'; import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; -import CodeBlock from '@ckeditor/ckeditor5-code-block/src/codeblock'; -import Mermaid from '../src/mermaid'; +import CodeBlock from '@ckeditor/ckeditor5-code-block/src/codeblock.js'; +import Mermaid from '../src/mermaid.js'; ClassicEditor .create( document.querySelector( '#editor' ), { diff --git a/scripts/build-dist.mjs b/scripts/build-dist.mjs new file mode 100644 index 000000000..545346da4 --- /dev/null +++ b/scripts/build-dist.mjs @@ -0,0 +1,61 @@ +#!/usr/bin/env node + +/** + * @license Copyright (c) 2020-2024, CKSource Holding sp. z o.o. All rights reserved. + * For licensing, see LICENSE.md. + */ + +/* eslint-env node */ + +import { createRequire } from 'module'; +import upath from 'upath'; +import chalk from 'chalk'; +import { build } from '@ckeditor/ckeditor5-dev-build-tools'; + +function dist( path ) { + return upath.join( 'dist', path ); +} + +( async () => { + /** + * Step 1 + */ + console.log( chalk.cyan( '1/2: Generating NPM build...' ) ); + + const require = createRequire( import.meta.url ); + const pkg = require( upath.resolve( process.cwd(), './package.json' ) ); + + await build( { + input: 'src/index.js', + output: dist( './index.js' ), + external: [ + 'ckeditor5', + 'ckeditor5-premium-features', + ...Object.keys( { + ...pkg.dependencies, + ...pkg.peerDependencies + } ) + ], + clean: true, + sourceMap: true, + translations: '**/*.po' + } ); + + /** + * Step 2 + */ + console.log( chalk.cyan( '2/2: Generating browser build...' ) ); + + await build( { + input: 'src/index.js', + output: dist( 'browser/index.js' ), + sourceMap: true, + minify: true, + browser: true, + name: '<%= formattedNames.plugin.lowerCaseMerged %>', + external: [ + 'ckeditor5', + 'ckeditor5-premium-features' + ] + } ); +} )(); diff --git a/src/commands/insertMermaidCommand.js b/src/commands/insertMermaidCommand.js index 65382d493..8fbf52a90 100644 --- a/src/commands/insertMermaidCommand.js +++ b/src/commands/insertMermaidCommand.js @@ -2,7 +2,7 @@ * @module mermaid/insertmermaidcommand */ -import { Command } from 'ckeditor5/src/core'; +import { Command } from 'ckeditor5/src/core.js'; const MOCK_MERMAID_MARKUP = `flowchart TB A --> B diff --git a/src/commands/mermaidPreviewCommand.js b/src/commands/mermaidPreviewCommand.js index d1e57ad24..0fc0b15ec 100644 --- a/src/commands/mermaidPreviewCommand.js +++ b/src/commands/mermaidPreviewCommand.js @@ -2,9 +2,9 @@ * @module mermaid/mermaidpreviewcommand */ -import { Command } from 'ckeditor5/src/core'; +import { Command } from 'ckeditor5/src/core.js'; -import { checkIsOn } from '../utils'; +import { checkIsOn } from '../utils.js'; /** * The mermaid preview command. diff --git a/src/commands/mermaidSourceViewCommand.js b/src/commands/mermaidSourceViewCommand.js index d8df2a1a3..043490154 100644 --- a/src/commands/mermaidSourceViewCommand.js +++ b/src/commands/mermaidSourceViewCommand.js @@ -2,9 +2,9 @@ * @module mermaid/mermaidsourceviewcommand */ -import { Command } from 'ckeditor5/src/core'; +import { Command } from 'ckeditor5/src/core.js'; -import { checkIsOn } from '../utils'; +import { checkIsOn } from '../utils.js'; /** * The mermaid source view command. diff --git a/src/commands/mermaidSplitViewCommand.js b/src/commands/mermaidSplitViewCommand.js index bb808b7da..c5f77dd21 100644 --- a/src/commands/mermaidSplitViewCommand.js +++ b/src/commands/mermaidSplitViewCommand.js @@ -2,9 +2,9 @@ * @module mermaid/mermaidsplitviewcommand */ -import { Command } from 'ckeditor5/src/core'; +import { Command } from 'ckeditor5/src/core.js'; -import { checkIsOn } from '../utils'; +import { checkIsOn } from '../utils.js'; /** * The mermaid split view command. diff --git a/src/index.js b/src/index.js index 963d53929..6b37848d8 100644 --- a/src/index.js +++ b/src/index.js @@ -8,7 +8,7 @@ import previewModeIcon from './../theme/icons/preview-mode.svg'; import splitModeIcon from './../theme/icons/split-mode.svg'; import sourceModeIcon from './../theme/icons/source-mode.svg'; -export { default as Mermaid } from './mermaid'; +export { default as Mermaid } from './mermaid.js'; export const icons = { infoIcon, diff --git a/src/mermaid.js b/src/mermaid.js index 16782c739..0a8aec3b6 100644 --- a/src/mermaid.js +++ b/src/mermaid.js @@ -2,11 +2,11 @@ * @module mermaid/mermaid */ -import { Plugin } from 'ckeditor5/src/core'; +import { Plugin } from 'ckeditor5/src/core.js'; -import MermaidEditing from './mermaidediting'; -import MermaidToolbar from './mermaidtoolbar'; -import MermaidUI from './mermaidui'; +import MermaidEditing from './mermaidediting.js'; +import MermaidToolbar from './mermaidtoolbar.js'; +import MermaidUI from './mermaidui.js'; import '../theme/mermaid.css'; diff --git a/src/mermaidediting.js b/src/mermaidediting.js index dc6acb5e4..f4c94ca26 100644 --- a/src/mermaidediting.js +++ b/src/mermaidediting.js @@ -2,17 +2,17 @@ * @module mermaid/mermaidediting */ -import { Plugin } from 'ckeditor5/src/core'; -import { toWidget } from 'ckeditor5/src/widget'; +import { Plugin } from 'ckeditor5/src/core.js'; +import { toWidget } from 'ckeditor5/src/widget.js'; -import mermaid from 'mermaid/dist/mermaid'; +import mermaid from 'mermaid/dist/mermaid.js'; import { debounce } from 'lodash-es'; -import MermaidPreviewCommand from './commands/mermaidPreviewCommand'; -import MermaidSourceViewCommand from './commands/mermaidSourceViewCommand'; -import MermaidSplitViewCommand from './commands/mermaidSplitViewCommand'; -import InsertMermaidCommand from './commands/insertMermaidCommand'; +import MermaidPreviewCommand from './commands/mermaidPreviewCommand.js'; +import MermaidSourceViewCommand from './commands/mermaidSourceViewCommand.js'; +import MermaidSplitViewCommand from './commands/mermaidSplitViewCommand.js'; +import InsertMermaidCommand from './commands/insertMermaidCommand.js'; // Time in milliseconds. const DEBOUNCE_TIME = 300; diff --git a/src/mermaidtoolbar.js b/src/mermaidtoolbar.js index f537793a8..dd7940743 100644 --- a/src/mermaidtoolbar.js +++ b/src/mermaidtoolbar.js @@ -2,8 +2,8 @@ * @module mermaid/mermaidtoolbar */ -import { Plugin } from 'ckeditor5/src/core'; -import { WidgetToolbarRepository } from 'ckeditor5/src/widget'; +import { Plugin } from 'ckeditor5/src/core.js'; +import { WidgetToolbarRepository } from 'ckeditor5/src/widget.js'; export default class MermaidToolbar extends Plugin { /** diff --git a/src/mermaidui.js b/src/mermaidui.js index 9f3f3c2ef..419e46f44 100644 --- a/src/mermaidui.js +++ b/src/mermaidui.js @@ -2,8 +2,8 @@ * @module mermaid/mermaidui */ -import { Plugin } from 'ckeditor5/src/core'; -import { ButtonView } from 'ckeditor5/src/ui'; +import { Plugin } from 'ckeditor5/src/core.js'; +import { ButtonView } from 'ckeditor5/src/ui.js'; import insertMermaidIcon from '../theme/icons/insert.svg'; import previewModeIcon from '../theme/icons/preview-mode.svg'; diff --git a/tests/commands/insertMermaidCommand.js b/tests/commands/insertMermaidCommand.js index f5ca83b03..a9b637411 100644 --- a/tests/commands/insertMermaidCommand.js +++ b/tests/commands/insertMermaidCommand.js @@ -1,9 +1,9 @@ -import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor'; -import { getData as getModelData, setData as setModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model'; -import { Paragraph } from '@ckeditor/ckeditor5-paragraph'; +import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; +import { getData as getModelData, setData as setModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model.js'; +import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph.js'; -import InsertMermaidCommand from '../../src/commands/insertMermaidCommand'; -import MermaidEditing from '../../src/mermaidediting'; +import InsertMermaidCommand from '../../src/commands/insertMermaidCommand.js'; +import MermaidEditing from '../../src/mermaidediting.js'; /* global document */ diff --git a/tests/commands/mermaidPreviewCommand.js b/tests/commands/mermaidPreviewCommand.js index 9835a77b5..9236f4c10 100644 --- a/tests/commands/mermaidPreviewCommand.js +++ b/tests/commands/mermaidPreviewCommand.js @@ -1,9 +1,9 @@ -import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor'; -import { getData as getModelData, setData as setModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model'; -import { Paragraph } from '@ckeditor/ckeditor5-paragraph'; +import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; +import { getData as getModelData, setData as setModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model.js'; +import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph.js'; -import MermaidPreviewCommand from '../../src/commands/mermaidPreviewCommand'; -import MermaidEditing from '../../src/mermaidediting'; +import MermaidPreviewCommand from '../../src/commands/mermaidPreviewCommand.js'; +import MermaidEditing from '../../src/mermaidediting.js'; /* global document */ diff --git a/tests/commands/mermaidSourceViewCommand.js b/tests/commands/mermaidSourceViewCommand.js index cc3582ffe..f4fa0efb2 100644 --- a/tests/commands/mermaidSourceViewCommand.js +++ b/tests/commands/mermaidSourceViewCommand.js @@ -1,9 +1,9 @@ -import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor'; -import { getData as getModelData, setData as setModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model'; -import { Paragraph } from '@ckeditor/ckeditor5-paragraph'; +import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; +import { getData as getModelData, setData as setModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model.js'; +import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph.js'; -import MermaidSourceViewCommand from '../../src/commands/mermaidSourceViewCommand'; -import MermaidEditing from '../../src/mermaidediting'; +import MermaidSourceViewCommand from '../../src/commands/mermaidSourceViewCommand.js'; +import MermaidEditing from '../../src/mermaidediting.js'; /* global document */ diff --git a/tests/commands/mermaidSplitViewCommand.js b/tests/commands/mermaidSplitViewCommand.js index 8c6fb5323..1b2f7be57 100644 --- a/tests/commands/mermaidSplitViewCommand.js +++ b/tests/commands/mermaidSplitViewCommand.js @@ -1,9 +1,9 @@ -import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor'; -import { getData as getModelData, setData as setModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model'; -import { Paragraph } from '@ckeditor/ckeditor5-paragraph'; +import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; +import { getData as getModelData, setData as setModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model.js'; +import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph.js'; -import MermaidSplitViewCommand from '../../src/commands/mermaidSplitViewCommand'; -import MermaidEditing from '../../src/mermaidediting'; +import MermaidSplitViewCommand from '../../src/commands/mermaidSplitViewCommand.js'; +import MermaidEditing from '../../src/mermaidediting.js'; /* global document */ diff --git a/tests/index.js b/tests/index.js index 9f33b05cd..b234b0905 100644 --- a/tests/index.js +++ b/tests/index.js @@ -1,5 +1,5 @@ -import { Mermaid as MermaidDll, icons } from '../src'; -import Mermaid from '../src/mermaid'; +import { Mermaid as MermaidDll, icons } from '../src/index.js'; +import Mermaid from '../src/mermaid.js'; import infoIcon from './../theme/icons/info.svg'; import insertMermaidIcon from './../theme/icons/insert.svg'; diff --git a/tests/manual/markdown.js b/tests/manual/markdown.js index 3514b27d8..af95f5da8 100644 --- a/tests/manual/markdown.js +++ b/tests/manual/markdown.js @@ -5,19 +5,19 @@ /* globals console, window, document */ -import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor'; -import Typing from '@ckeditor/ckeditor5-typing/src/typing'; -import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph'; -import Undo from '@ckeditor/ckeditor5-undo/src/undo'; -import Enter from '@ckeditor/ckeditor5-enter/src/enter'; -import Clipboard from '@ckeditor/ckeditor5-clipboard/src/clipboard'; -import Link from '@ckeditor/ckeditor5-link/src/link'; -import Bold from '@ckeditor/ckeditor5-basic-styles/src/bold'; -import Italic from '@ckeditor/ckeditor5-basic-styles/src/italic'; -import Markdown from '@ckeditor/ckeditor5-markdown-gfm/src/markdown'; +import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; +import Typing from '@ckeditor/ckeditor5-typing/src/typing.js'; +import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph.js'; +import Undo from '@ckeditor/ckeditor5-undo/src/undo.js'; +import Enter from '@ckeditor/ckeditor5-enter/src/enter.js'; +import Clipboard from '@ckeditor/ckeditor5-clipboard/src/clipboard.js'; +import Link from '@ckeditor/ckeditor5-link/src/link.js'; +import Bold from '@ckeditor/ckeditor5-basic-styles/src/bold.js'; +import Italic from '@ckeditor/ckeditor5-basic-styles/src/italic.js'; +import Markdown from '@ckeditor/ckeditor5-markdown-gfm/src/markdown.js'; +import CodeBlock from '@ckeditor/ckeditor5-code-block/src/codeblock.js'; -import CodeBlock from '@ckeditor/ckeditor5-code-block/src/codeblock'; -import Mermaid from '../../src/mermaid'; +import Mermaid from '../../src/mermaid.js'; ClassicEditor .create( document.querySelector( '#editor' ), { diff --git a/tests/manual/mermaid.js b/tests/manual/mermaid.js index 308b3298e..da0f3d3e8 100644 --- a/tests/manual/mermaid.js +++ b/tests/manual/mermaid.js @@ -5,18 +5,18 @@ /* globals console, window, document */ -import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor'; -import Typing from '@ckeditor/ckeditor5-typing/src/typing'; -import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph'; -import Undo from '@ckeditor/ckeditor5-undo/src/undo'; -import Enter from '@ckeditor/ckeditor5-enter/src/enter'; -import Clipboard from '@ckeditor/ckeditor5-clipboard/src/clipboard'; -import Link from '@ckeditor/ckeditor5-link/src/link'; -import Bold from '@ckeditor/ckeditor5-basic-styles/src/bold'; -import Italic from '@ckeditor/ckeditor5-basic-styles/src/italic'; +import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; +import Typing from '@ckeditor/ckeditor5-typing/src/typing.js'; +import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph.js'; +import Undo from '@ckeditor/ckeditor5-undo/src/undo.js'; +import Enter from '@ckeditor/ckeditor5-enter/src/enter.js'; +import Clipboard from '@ckeditor/ckeditor5-clipboard/src/clipboard.js'; +import Link from '@ckeditor/ckeditor5-link/src/link.js'; +import Bold from '@ckeditor/ckeditor5-basic-styles/src/bold.js'; +import Italic from '@ckeditor/ckeditor5-basic-styles/src/italic.js'; +import CodeBlock from '@ckeditor/ckeditor5-code-block/src/codeblock.js'; -import CodeBlock from '@ckeditor/ckeditor5-code-block/src/codeblock'; -import Mermaid from '../../src/mermaid'; +import Mermaid from '../../src/mermaid.js'; ClassicEditor .create( document.querySelector( '#editor' ), { diff --git a/tests/mermaid.js b/tests/mermaid.js index 22396f526..12b747342 100644 --- a/tests/mermaid.js +++ b/tests/mermaid.js @@ -1,10 +1,10 @@ -import Essentials from '@ckeditor/ckeditor5-essentials/src/essentials'; -import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph'; -import Heading from '@ckeditor/ckeditor5-heading/src/heading'; -import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor'; -import Mermaid from '../src/mermaid'; +import Essentials from '@ckeditor/ckeditor5-essentials/src/essentials.js'; +import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph.js'; +import Heading from '@ckeditor/ckeditor5-heading/src/heading.js'; +import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; +import Mermaid from '../src/mermaid.js'; -import { setData as setModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model'; +import { setData as setModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model.js'; /* global document */ diff --git a/tests/mermaidediting.js b/tests/mermaidediting.js index 1823afa4c..8aabf851f 100644 --- a/tests/mermaidediting.js +++ b/tests/mermaidediting.js @@ -1,11 +1,11 @@ -import Essentials from '@ckeditor/ckeditor5-essentials/src/essentials'; -import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph'; -import Heading from '@ckeditor/ckeditor5-heading/src/heading'; -import { setData as setModelData, getData as getModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model'; -import { getData as getViewData } from '@ckeditor/ckeditor5-engine/src/dev-utils/view'; -import CodeBlockEditing from '@ckeditor/ckeditor5-code-block/src/codeblockediting'; -import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor'; -import MermaidEditing from '../src/mermaidediting'; +import Essentials from '@ckeditor/ckeditor5-essentials/src/essentials.js'; +import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph.js'; +import Heading from '@ckeditor/ckeditor5-heading/src/heading.js'; +import { setData as setModelData, getData as getModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model.js'; +import { getData as getViewData } from '@ckeditor/ckeditor5-engine/src/dev-utils/view.js'; +import CodeBlockEditing from '@ckeditor/ckeditor5-code-block/src/codeblockediting.js'; +import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; +import MermaidEditing from '../src/mermaidediting.js'; /* global document */ diff --git a/tests/mermaidtoolbar.js b/tests/mermaidtoolbar.js index 237c8dc63..c8ea8eff8 100644 --- a/tests/mermaidtoolbar.js +++ b/tests/mermaidtoolbar.js @@ -1,12 +1,12 @@ -import ClassicTestEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor'; +import ClassicTestEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; import { setData -} from '@ckeditor/ckeditor5-engine/src/dev-utils/model'; -import WidgetToolbarRepository from '@ckeditor/ckeditor5-widget/src/widgettoolbarrepository'; -import Essentials from '@ckeditor/ckeditor5-essentials/src/essentials'; -import { Paragraph } from '@ckeditor/ckeditor5-paragraph'; +} from '@ckeditor/ckeditor5-engine/src/dev-utils/model.js'; +import WidgetToolbarRepository from '@ckeditor/ckeditor5-widget/src/widgettoolbarrepository.js'; +import Essentials from '@ckeditor/ckeditor5-essentials/src/essentials.js'; +import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph.js'; -import Mermaid from '../src/mermaid'; +import Mermaid from '../src/mermaid.js'; /* global document */ @@ -38,6 +38,10 @@ describe( 'MermaidToolbar', () => { describe( 'toolbar', () => { it( 'should be initialized with expected buttons', () => { + editor.ui.focusTracker.isFocused = true; + + setData( model, '[]' ); + expect( toolbar.items ).to.have.length( 5 ); expect( toolbar.items.get( 0 ).label ).to.equal( 'Source view' ); expect( toolbar.items.get( 1 ).label ).to.equal( 'Split view' ); diff --git a/tests/mermaidui.js b/tests/mermaidui.js index 957d9945b..2a857991e 100644 --- a/tests/mermaidui.js +++ b/tests/mermaidui.js @@ -1,8 +1,8 @@ -import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor'; -import { setData as setModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model'; +import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; +import { setData as setModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model.js'; -import Mermaid from '../src/mermaid'; -import MermaidUI from '../src/mermaidui'; +import Mermaid from '../src/mermaid.js'; +import MermaidUI from '../src/mermaidui.js'; /* global document */ From 10dfcca9b2762dde86ab9f1fdd4a5bb848225b79 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Szcz=C4=99=C5=9Bniak?= Date: Mon, 20 May 2024 14:33:26 +0200 Subject: [PATCH 02/12] Change ckeditor5-package-tools version. --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 3a4645053..9cdd17bcd 100644 --- a/package.json +++ b/package.json @@ -53,7 +53,7 @@ "@ckeditor/ckeditor5-typing": "^41.4.2", "@ckeditor/ckeditor5-undo": "^41.4.2", "@ckeditor/ckeditor5-widget": "^41.4.2", - "@ckeditor/ckeditor5-package-tools": "file:/Users/piotrszczesniak/Dev/ckeditor5-package-generator/packages/ckeditor5-package-tools", + "@ckeditor/ckeditor5-package-tools": "^1.1.0", "@ckeditor/ckeditor5-theme-lark": "^41.4.2", "eslint": "^7.32.0", "eslint-config-ckeditor5": ">=3.1.1", From dc82d019dc2e3bcfc9e5b467d7d952abfd3223cf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Szcz=C4=99=C5=9Bniak?= Date: Mon, 20 May 2024 15:14:56 +0200 Subject: [PATCH 03/12] Fix imports in sample. --- sample/ckeditor.js | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/sample/ckeditor.js b/sample/ckeditor.js index 16606bdbd..623196c31 100644 --- a/sample/ckeditor.js +++ b/sample/ckeditor.js @@ -5,18 +5,18 @@ /* globals console, window, document */ -import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; -import Typing from '@ckeditor/ckeditor5-typing/src/typing.js'; -import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph.js'; -import Undo from '@ckeditor/ckeditor5-undo/src/undo.js'; -import Enter from '@ckeditor/ckeditor5-enter/src/enter.js'; -import Clipboard from '@ckeditor/ckeditor5-clipboard/src/clipboard.js'; -import Link from '@ckeditor/ckeditor5-link/src/link.js'; -import Bold from '@ckeditor/ckeditor5-basic-styles/src/bold.js'; -import Italic from '@ckeditor/ckeditor5-basic-styles/src/italic.js'; +import { ClassicEditor } from '@ckeditor/ckeditor5-editor-classic'; +import { Typing } from '@ckeditor/ckeditor5-typing'; +import { Paragraph } from '@ckeditor/ckeditor5-paragraph'; +import { Undo } from '@ckeditor/ckeditor5-undo'; +import { Enter } from '@ckeditor/ckeditor5-enter'; +import { Clipboard } from '@ckeditor/ckeditor5-clipboard'; +import { Link } from '@ckeditor/ckeditor5-link'; +import { Bold, Italic } from '@ckeditor/ckeditor5-basic-styles'; +import { CodeBlock } from '@ckeditor/ckeditor5-code-block'; + import CKEditorInspector from '@ckeditor/ckeditor5-inspector'; -import CodeBlock from '@ckeditor/ckeditor5-code-block/src/codeblock.js'; import Mermaid from '../src/mermaid.js'; ClassicEditor From d8a5ceebbc2197d0d2cba38be85bedbd93766e5c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Szcz=C4=99=C5=9Bniak?= Date: Tue, 21 May 2024 12:45:05 +0200 Subject: [PATCH 04/12] Add proper package name for UMD build. --- scripts/build-dist.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/build-dist.mjs b/scripts/build-dist.mjs index 545346da4..55ef3099d 100644 --- a/scripts/build-dist.mjs +++ b/scripts/build-dist.mjs @@ -52,7 +52,7 @@ function dist( path ) { sourceMap: true, minify: true, browser: true, - name: '<%= formattedNames.plugin.lowerCaseMerged %>', + name: '@ckeditor/ckeditor5-mermaid', external: [ 'ckeditor5', 'ckeditor5-premium-features' From 31eab85acee3d95c0880ab052485cb4e456a627a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Szcz=C4=99=C5=9Bniak?= Date: Tue, 4 Jun 2024 09:00:39 +0200 Subject: [PATCH 05/12] Update dependecies in package.json. --- package.json | 27 ++++++--------------------- 1 file changed, 6 insertions(+), 21 deletions(-) diff --git a/package.json b/package.json index 9cdd17bcd..e16847ff1 100644 --- a/package.json +++ b/package.json @@ -30,31 +30,14 @@ "ckeditor5-metadata.json" ], "dependencies": { - "mermaid": "9.1.7", + "mermaid": "^9.1.4", "lodash-es": "^4.17.15" }, - "peerDependencies": { - "ckeditor5": "*" - }, "devDependencies": { - "@ckeditor/ckeditor5-basic-styles": "^41.4.2", - "@ckeditor/ckeditor5-clipboard": "^41.4.2", - "@ckeditor/ckeditor5-code-block": "^41.4.2", - "@ckeditor/ckeditor5-dev-build-tools": "^40.0.0", - "@ckeditor/ckeditor5-editor-classic": "^41.4.2", - "@ckeditor/ckeditor5-engine": "^41.4.2", - "@ckeditor/ckeditor5-enter": "^41.4.2", - "@ckeditor/ckeditor5-essentials": "^41.4.2", - "@ckeditor/ckeditor5-heading": "^41.4.2", + "@ckeditor/ckeditor5-dev-build-tools": "^40.2.0", "@ckeditor/ckeditor5-inspector": "^4.0.0", - "@ckeditor/ckeditor5-link": "^41.4.2", - "@ckeditor/ckeditor5-markdown-gfm": "^41.4.2", - "@ckeditor/ckeditor5-paragraph": "^41.4.2", - "@ckeditor/ckeditor5-typing": "^41.4.2", - "@ckeditor/ckeditor5-undo": "^41.4.2", - "@ckeditor/ckeditor5-widget": "^41.4.2", "@ckeditor/ckeditor5-package-tools": "^1.1.0", - "@ckeditor/ckeditor5-theme-lark": "^41.4.2", + "ckeditor5": "nightly", "eslint": "^7.32.0", "eslint-config-ckeditor5": ">=3.1.1", "http-server": "^14.1.0", @@ -63,7 +46,9 @@ "stylelint": "^13.13.1", "stylelint-config-ckeditor5": ">=2.0.1" }, - + "peerDependencies": { + "ckeditor5": ">=42.0.0 || ^0.0.0-nightly" + }, "scripts": { "dll:build": "ckeditor5-package-tools dll:build", "dll:serve": "http-server ./ -o sample/dll.html", From 9a8a2920d90f90ecdd49b561addd984672839a8e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Szcz=C4=99=C5=9Bniak?= Date: Tue, 4 Jun 2024 09:40:40 +0200 Subject: [PATCH 06/12] Change version to 0.0.3. --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index e16847ff1..e94e22419 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@ckeditor/ckeditor5-mermaid", - "version": "0.0.2", + "version": "0.0.3", "description": "Mermaid widget for CKEditor 5.", "private": true, "keywords": [ From 0fd6547e53a3d5638f80001b5e6f69f7055124cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Szcz=C4=99=C5=9Bniak?= Date: Tue, 4 Jun 2024 09:55:03 +0200 Subject: [PATCH 07/12] Change version of @ckeditor/ckeditor5-package-tools to alpha. --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index e94e22419..114052625 100644 --- a/package.json +++ b/package.json @@ -36,7 +36,7 @@ "devDependencies": { "@ckeditor/ckeditor5-dev-build-tools": "^40.2.0", "@ckeditor/ckeditor5-inspector": "^4.0.0", - "@ckeditor/ckeditor5-package-tools": "^1.1.0", + "@ckeditor/ckeditor5-package-tools": "^2.0.0-alpha.0", "ckeditor5": "nightly", "eslint": "^7.32.0", "eslint-config-ckeditor5": ">=3.1.1", From ed2f428e77126616fb4049ddb8205fc4d10e0e55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Szcz=C4=99=C5=9Bniak?= Date: Fri, 7 Jun 2024 15:46:40 +0200 Subject: [PATCH 08/12] Unify imports paths. --- tests/commands/insertMermaidCommand.js | 9 ++++++--- tests/commands/mermaidPreviewCommand.js | 9 ++++++--- tests/commands/mermaidSourceViewCommand.js | 9 ++++++--- tests/commands/mermaidSplitViewCommand.js | 9 ++++++--- tests/manual/markdown.js | 21 ++++++++++----------- tests/manual/mermaid.js | 19 +++++++++---------- tests/mermaid.js | 12 ++++++------ tests/mermaidediting.js | 17 ++++++++++------- tests/mermaidtoolbar.js | 12 +++++------- tests/mermaidui.js | 4 ++-- 10 files changed, 66 insertions(+), 55 deletions(-) diff --git a/tests/commands/insertMermaidCommand.js b/tests/commands/insertMermaidCommand.js index a9b637411..f210adcd7 100644 --- a/tests/commands/insertMermaidCommand.js +++ b/tests/commands/insertMermaidCommand.js @@ -1,6 +1,9 @@ -import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; -import { getData as getModelData, setData as setModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model.js'; -import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph.js'; +import { ClassicEditor } from '@ckeditor/ckeditor5-editor-classic'; +import { Paragraph } from '@ckeditor/ckeditor5-paragraph'; +import { + _setModelData as setModelData, + _getModelData as getModelData +} from '@ckeditor/ckeditor5-engine'; import InsertMermaidCommand from '../../src/commands/insertMermaidCommand.js'; import MermaidEditing from '../../src/mermaidediting.js'; diff --git a/tests/commands/mermaidPreviewCommand.js b/tests/commands/mermaidPreviewCommand.js index 9236f4c10..3de865799 100644 --- a/tests/commands/mermaidPreviewCommand.js +++ b/tests/commands/mermaidPreviewCommand.js @@ -1,6 +1,9 @@ -import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; -import { getData as getModelData, setData as setModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model.js'; -import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph.js'; +import { ClassicEditor } from '@ckeditor/ckeditor5-editor-classic'; +import { Paragraph } from '@ckeditor/ckeditor5-paragraph'; +import { + _setModelData as setModelData, + _getModelData as getModelData +} from '@ckeditor/ckeditor5-engine'; import MermaidPreviewCommand from '../../src/commands/mermaidPreviewCommand.js'; import MermaidEditing from '../../src/mermaidediting.js'; diff --git a/tests/commands/mermaidSourceViewCommand.js b/tests/commands/mermaidSourceViewCommand.js index f4fa0efb2..ec32aadb0 100644 --- a/tests/commands/mermaidSourceViewCommand.js +++ b/tests/commands/mermaidSourceViewCommand.js @@ -1,6 +1,9 @@ -import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; -import { getData as getModelData, setData as setModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model.js'; -import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph.js'; +import { ClassicEditor } from '@ckeditor/ckeditor5-editor-classic'; +import { Paragraph } from '@ckeditor/ckeditor5-paragraph'; +import { + _setModelData as setModelData, + _getModelData as getModelData +} from '@ckeditor/ckeditor5-engine'; import MermaidSourceViewCommand from '../../src/commands/mermaidSourceViewCommand.js'; import MermaidEditing from '../../src/mermaidediting.js'; diff --git a/tests/commands/mermaidSplitViewCommand.js b/tests/commands/mermaidSplitViewCommand.js index 1b2f7be57..ddc43a32c 100644 --- a/tests/commands/mermaidSplitViewCommand.js +++ b/tests/commands/mermaidSplitViewCommand.js @@ -1,6 +1,9 @@ -import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; -import { getData as getModelData, setData as setModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model.js'; -import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph.js'; +import { ClassicEditor } from '@ckeditor/ckeditor5-editor-classic'; +import { Paragraph } from '@ckeditor/ckeditor5-paragraph'; +import { + _setModelData as setModelData, + _getModelData as getModelData +} from '@ckeditor/ckeditor5-engine'; import MermaidSplitViewCommand from '../../src/commands/mermaidSplitViewCommand.js'; import MermaidEditing from '../../src/mermaidediting.js'; diff --git a/tests/manual/markdown.js b/tests/manual/markdown.js index af95f5da8..8f1f26f9e 100644 --- a/tests/manual/markdown.js +++ b/tests/manual/markdown.js @@ -5,17 +5,16 @@ /* globals console, window, document */ -import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; -import Typing from '@ckeditor/ckeditor5-typing/src/typing.js'; -import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph.js'; -import Undo from '@ckeditor/ckeditor5-undo/src/undo.js'; -import Enter from '@ckeditor/ckeditor5-enter/src/enter.js'; -import Clipboard from '@ckeditor/ckeditor5-clipboard/src/clipboard.js'; -import Link from '@ckeditor/ckeditor5-link/src/link.js'; -import Bold from '@ckeditor/ckeditor5-basic-styles/src/bold.js'; -import Italic from '@ckeditor/ckeditor5-basic-styles/src/italic.js'; -import Markdown from '@ckeditor/ckeditor5-markdown-gfm/src/markdown.js'; -import CodeBlock from '@ckeditor/ckeditor5-code-block/src/codeblock.js'; +import { ClassicEditor } from '@ckeditor/ckeditor5-editor-classic'; +import { Typing } from '@ckeditor/ckeditor5-typing'; +import { Paragraph } from '@ckeditor/ckeditor5-paragraph'; +import { Undo } from '@ckeditor/ckeditor5-undo'; +import { Enter } from '@ckeditor/ckeditor5-enter'; +import { Clipboard } from '@ckeditor/ckeditor5-clipboard'; +import { Link } from '@ckeditor/ckeditor5-link'; +import { Bold, Italic } from '@ckeditor/ckeditor5-basic-styles'; +import { Markdown } from '@ckeditor/ckeditor5-markdown-gfm'; +import { CodeBlock } from '@ckeditor/ckeditor5-code-block'; import Mermaid from '../../src/mermaid.js'; diff --git a/tests/manual/mermaid.js b/tests/manual/mermaid.js index da0f3d3e8..de9f7832b 100644 --- a/tests/manual/mermaid.js +++ b/tests/manual/mermaid.js @@ -5,16 +5,15 @@ /* globals console, window, document */ -import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; -import Typing from '@ckeditor/ckeditor5-typing/src/typing.js'; -import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph.js'; -import Undo from '@ckeditor/ckeditor5-undo/src/undo.js'; -import Enter from '@ckeditor/ckeditor5-enter/src/enter.js'; -import Clipboard from '@ckeditor/ckeditor5-clipboard/src/clipboard.js'; -import Link from '@ckeditor/ckeditor5-link/src/link.js'; -import Bold from '@ckeditor/ckeditor5-basic-styles/src/bold.js'; -import Italic from '@ckeditor/ckeditor5-basic-styles/src/italic.js'; -import CodeBlock from '@ckeditor/ckeditor5-code-block/src/codeblock.js'; +import { ClassicEditor } from '@ckeditor/ckeditor5-editor-classic'; +import { Typing } from '@ckeditor/ckeditor5-typing'; +import { Paragraph } from '@ckeditor/ckeditor5-paragraph'; +import { Undo } from '@ckeditor/ckeditor5-undo'; +import { Enter } from '@ckeditor/ckeditor5-enter'; +import { Clipboard } from '@ckeditor/ckeditor5-clipboard'; +import { Link } from '@ckeditor/ckeditor5-link'; +import { Bold, Italic } from '@ckeditor/ckeditor5-basic-styles'; +import { CodeBlock } from '@ckeditor/ckeditor5-code-block'; import Mermaid from '../../src/mermaid.js'; diff --git a/tests/mermaid.js b/tests/mermaid.js index 12b747342..7a629848b 100644 --- a/tests/mermaid.js +++ b/tests/mermaid.js @@ -1,10 +1,10 @@ -import Essentials from '@ckeditor/ckeditor5-essentials/src/essentials.js'; -import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph.js'; -import Heading from '@ckeditor/ckeditor5-heading/src/heading.js'; -import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; -import Mermaid from '../src/mermaid.js'; +import { ClassicEditor } from '@ckeditor/ckeditor5-editor-classic'; +import { Essentials } from '@ckeditor/ckeditor5-essentials'; +import { Paragraph } from '@ckeditor/ckeditor5-paragraph'; +import { Heading } from '@ckeditor/ckeditor5-heading'; +import { _setModelData as setModelData } from '@ckeditor/ckeditor5-engine'; -import { setData as setModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model.js'; +import Mermaid from '../src/mermaid.js'; /* global document */ diff --git a/tests/mermaidediting.js b/tests/mermaidediting.js index 8aabf851f..44e8daed3 100644 --- a/tests/mermaidediting.js +++ b/tests/mermaidediting.js @@ -1,10 +1,13 @@ -import Essentials from '@ckeditor/ckeditor5-essentials/src/essentials.js'; -import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph.js'; -import Heading from '@ckeditor/ckeditor5-heading/src/heading.js'; -import { setData as setModelData, getData as getModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model.js'; -import { getData as getViewData } from '@ckeditor/ckeditor5-engine/src/dev-utils/view.js'; -import CodeBlockEditing from '@ckeditor/ckeditor5-code-block/src/codeblockediting.js'; -import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; +import { ClassicEditor } from '@ckeditor/ckeditor5-editor-classic'; +import { Essentials } from '@ckeditor/ckeditor5-essentials'; +import { Paragraph } from '@ckeditor/ckeditor5-paragraph'; +import { Heading } from '@ckeditor/ckeditor5-heading'; +import { CodeBlockEditing } from '@ckeditor/ckeditor5-code-block'; +import { + _setModelData as setModelData, + _getModelData as getModelData, + _getViewData as getViewData +} from '@ckeditor/ckeditor5-engine'; import MermaidEditing from '../src/mermaidediting.js'; /* global document */ diff --git a/tests/mermaidtoolbar.js b/tests/mermaidtoolbar.js index c8ea8eff8..2bf0a9550 100644 --- a/tests/mermaidtoolbar.js +++ b/tests/mermaidtoolbar.js @@ -1,10 +1,8 @@ -import ClassicTestEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; -import { - setData -} from '@ckeditor/ckeditor5-engine/src/dev-utils/model.js'; -import WidgetToolbarRepository from '@ckeditor/ckeditor5-widget/src/widgettoolbarrepository.js'; -import Essentials from '@ckeditor/ckeditor5-essentials/src/essentials.js'; -import Paragraph from '@ckeditor/ckeditor5-paragraph/src/paragraph.js'; +import { ClassicEditor as ClassicTestEditor } from '@ckeditor/ckeditor5-editor-classic'; +import { Essentials } from '@ckeditor/ckeditor5-essentials'; +import { Paragraph } from '@ckeditor/ckeditor5-paragraph'; +import { WidgetToolbarRepository } from '@ckeditor/ckeditor5-widget'; +import { _setModelData as setData } from '@ckeditor/ckeditor5-engine'; import Mermaid from '../src/mermaid.js'; diff --git a/tests/mermaidui.js b/tests/mermaidui.js index 2a857991e..73ef1fd7f 100644 --- a/tests/mermaidui.js +++ b/tests/mermaidui.js @@ -1,5 +1,5 @@ -import ClassicEditor from '@ckeditor/ckeditor5-editor-classic/src/classiceditor.js'; -import { setData as setModelData } from '@ckeditor/ckeditor5-engine/src/dev-utils/model.js'; +import { ClassicEditor } from '@ckeditor/ckeditor5-editor-classic'; +import { _setModelData as setModelData } from '@ckeditor/ckeditor5-engine'; import Mermaid from '../src/mermaid.js'; import MermaidUI from '../src/mermaidui.js'; From e28e5d23e2743a95d4785a0ca41b0ae3708befa6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Szcz=C4=99=C5=9Bniak?= Date: Tue, 18 Jun 2024 13:14:21 +0200 Subject: [PATCH 09/12] Update eslint rules. --- .eslintrc.cjs | 24 +++++++++++++++++------- package.json | 2 +- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/.eslintrc.cjs b/.eslintrc.cjs index 61d6e053c..d39acda4f 100644 --- a/.eslintrc.cjs +++ b/.eslintrc.cjs @@ -5,12 +5,28 @@ module.exports = { extends: 'ckeditor5', root: true, + ignorePatterns: [ + // Ignore the entire `build/` (the DLL build). + 'build/**', + // Ignore the entire `dist/`. + 'dist/**' + ], rules: { // This rule disallows importing core DLL packages directly. Imports should be done using the `ckeditor5` package. // Also, importing non-DLL packages is not allowed. If the package requires other features to work, they should be // specified as soft-requirements. // Read more: https://ckeditor.com/docs/ckeditor5/latest/builds/guides/migration/migration-to-26.html#soft-requirements. - 'ckeditor5-rules/ckeditor-imports': 'error' + 'ckeditor5-rules/ckeditor-imports': 'error', + // This rule disallows importing from any path other than the package main entrypoint. + 'ckeditor5-rules/allow-imports-only-from-main-package-entry-point': 'error', + // As required by the ECMAScript (ESM) standard, all imports must include a file extension. + // If the import does not include it, this rule will try to automatically detect the correct file extension. + 'ckeditor5-rules/require-file-extensions-in-imports': [ + 'error', + { + extensions: [ '.ts', '.js', '.json' ] + } + ] }, overrides: [ { @@ -21,11 +37,5 @@ module.exports = { 'ckeditor5-rules/ckeditor-imports': 'off' } } - ], - ignorePatterns: [ - // Ignore the entire `build/` (the DLL build). - 'build/**', - // Ignore the entire `dist/`. - 'dist/**' ] }; diff --git a/package.json b/package.json index 114052625..6fe911ac6 100644 --- a/package.json +++ b/package.json @@ -39,7 +39,7 @@ "@ckeditor/ckeditor5-package-tools": "^2.0.0-alpha.0", "ckeditor5": "nightly", "eslint": "^7.32.0", - "eslint-config-ckeditor5": ">=3.1.1", + "eslint-config-ckeditor5": "^6.0.0", "http-server": "^14.1.0", "husky": "^4.2.5", "lint-staged": "^10.2.6", From 421a431f9a1925f5ea24bf7b4a686db375ba6fd1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Szcz=C4=99=C5=9Bniak?= Date: Tue, 25 Jun 2024 11:52:28 +0200 Subject: [PATCH 10/12] Change devDependency version of ckeditor5 from nightly to latest. --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 6fe911ac6..7350130fc 100644 --- a/package.json +++ b/package.json @@ -37,7 +37,7 @@ "@ckeditor/ckeditor5-dev-build-tools": "^40.2.0", "@ckeditor/ckeditor5-inspector": "^4.0.0", "@ckeditor/ckeditor5-package-tools": "^2.0.0-alpha.0", - "ckeditor5": "nightly", + "ckeditor5": "latest", "eslint": "^7.32.0", "eslint-config-ckeditor5": "^6.0.0", "http-server": "^14.1.0", From 8d9b5bc0b4c7655b9d061d7550b23c0b72734d27 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Szcz=C4=99=C5=9Bniak?= Date: Wed, 26 Jun 2024 11:20:55 +0200 Subject: [PATCH 11/12] Change 'devDependencies' version of '@ckeditor/ckeditor5-package-tools' from alpha to latest v2.0.0. --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 7350130fc..1babb1ed1 100644 --- a/package.json +++ b/package.json @@ -36,7 +36,7 @@ "devDependencies": { "@ckeditor/ckeditor5-dev-build-tools": "^40.2.0", "@ckeditor/ckeditor5-inspector": "^4.0.0", - "@ckeditor/ckeditor5-package-tools": "^2.0.0-alpha.0", + "@ckeditor/ckeditor5-package-tools": "^2.0.0", "ckeditor5": "latest", "eslint": "^7.32.0", "eslint-config-ckeditor5": "^6.0.0", @@ -51,7 +51,7 @@ }, "scripts": { "dll:build": "ckeditor5-package-tools dll:build", - "dll:serve": "http-server ./ -o sample/dll.html", + "dll:serve": "http-server ./ -o sample/index.html", "build:dist": "node ./scripts/build-dist.mjs", "lint": "eslint \"**/*.js\" --quiet --ignore-pattern \"build/\"", "start": "ckeditor5-package-tools start", From a950380af5b48e2ef7c6fefec9430b812880aa07 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Szcz=C4=99=C5=9Bniak?= Date: Wed, 26 Jun 2024 11:21:57 +0200 Subject: [PATCH 12/12] Fixed DLL sample to work as expected. --- sample/index.html | 99 ++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 98 insertions(+), 1 deletion(-) diff --git a/sample/index.html b/sample/index.html index e48cbba5c..7b8ac8fd3 100644 --- a/sample/index.html +++ b/sample/index.html @@ -17,6 +17,103 @@
- + + + + + + + + + + + + + + + + + + + + + +