From e0be21ff6e0b19eb8e247f7fd8db73305c27e025 Mon Sep 17 00:00:00 2001 From: js87zz Date: Wed, 7 Jul 2021 15:29:05 +0900 Subject: [PATCH 1/3] chore: change chart, color-picker, uml bundle to umd for compatiblity of the webpack4 --- plugins/chart/webpack.config.js | 14 +++++--------- plugins/color-syntax/webpack.config.js | 9 +++++---- plugins/uml/webpack.config.js | 14 +++++--------- 3 files changed, 15 insertions(+), 22 deletions(-) diff --git a/plugins/chart/webpack.config.js b/plugins/chart/webpack.config.js index 441ad4721d..412edb7b68 100644 --- a/plugins/chart/webpack.config.js +++ b/plugins/chart/webpack.config.js @@ -9,6 +9,11 @@ const ESLintPlugin = require('eslint-webpack-plugin'); function getOutputConfig(isProduction, isCDN, minify) { const filename = `toastui-${name.replace(/@toast-ui\//, '')}`; const defaultConfig = { + library: { + name: ['toastui', 'Editor', 'plugin', 'chart'], + export: 'default', + type: 'umd', + }, environment: { arrowFunction: false, const: false, @@ -18,11 +23,6 @@ function getOutputConfig(isProduction, isCDN, minify) { if (!isProduction || isCDN) { const config = { ...defaultConfig, - library: { - name: ['toastui', 'Editor', 'plugin', 'chart'], - export: 'default', - type: 'umd', - }, path: path.resolve(__dirname, 'dist/cdn'), filename: `${filename}${minify ? '.min' : ''}.js`, }; @@ -36,10 +36,6 @@ function getOutputConfig(isProduction, isCDN, minify) { return { ...defaultConfig, - library: { - export: 'default', - type: 'commonjs2', - }, path: path.resolve(__dirname, 'dist'), filename: `${filename}.js`, }; diff --git a/plugins/color-syntax/webpack.config.js b/plugins/color-syntax/webpack.config.js index df507295ff..9d4ef3fcd1 100644 --- a/plugins/color-syntax/webpack.config.js +++ b/plugins/color-syntax/webpack.config.js @@ -11,6 +11,11 @@ const filename = `toastui-${name.replace(/@toast-ui\//, '')}`; function getOutputConfig(isProduction, isCDN, minify) { const defaultConfig = { + library: { + name: ['toastui', 'Editor', 'plugin', 'uml'], + export: 'default', + type: 'umd', + }, environment: { arrowFunction: false, const: false, @@ -38,10 +43,6 @@ function getOutputConfig(isProduction, isCDN, minify) { return { ...defaultConfig, - library: { - export: 'default', - type: 'commonjs2', - }, path: path.resolve(__dirname, 'dist'), filename: `${filename}.js`, }; diff --git a/plugins/uml/webpack.config.js b/plugins/uml/webpack.config.js index 81bd378eeb..caaedf31de 100644 --- a/plugins/uml/webpack.config.js +++ b/plugins/uml/webpack.config.js @@ -9,6 +9,11 @@ const ESLintPlugin = require('eslint-webpack-plugin'); function getOutputConfig(isProduction, isCDN, minify) { const filename = `toastui-${name.replace(/@toast-ui\//, '')}`; const defaultConfig = { + library: { + name: ['toastui', 'Editor', 'plugin', 'uml'], + export: 'default', + type: 'umd', + }, environment: { arrowFunction: false, const: false, @@ -18,11 +23,6 @@ function getOutputConfig(isProduction, isCDN, minify) { if (!isProduction || isCDN) { const config = { ...defaultConfig, - library: { - name: ['toastui', 'Editor', 'plugin', 'uml'], - export: 'default', - type: 'umd', - }, path: path.resolve(__dirname, 'dist/cdn'), filename: `${filename}${minify ? '.min' : ''}.js`, }; @@ -36,10 +36,6 @@ function getOutputConfig(isProduction, isCDN, minify) { return { ...defaultConfig, - library: { - export: 'default', - type: 'commonjs2', - }, path: path.resolve(__dirname, 'dist'), filename: `${filename}.js`, }; From 7002304d4e30798c340cf662941b84ee36be2eed Mon Sep 17 00:00:00 2001 From: js87zz Date: Wed, 7 Jul 2021 15:47:44 +0900 Subject: [PATCH 2/3] env: add rollup plugin dev dependencies --- apps/editor/package.json | 4 +- package-lock.json | 214 +++++++++++++++++++++++++++++++++++++-- package.json | 5 + 3 files changed, 213 insertions(+), 10 deletions(-) diff --git a/apps/editor/package.json b/apps/editor/package.json index 17c4ea7c5c..0bde41fb27 100644 --- a/apps/editor/package.json +++ b/apps/editor/package.json @@ -70,9 +70,7 @@ }, "devDependencies": { "@toast-ui/release-notes": "^2.0.1", - "cross-env": "^6.0.3", - "rollup": "2.52.0", - "@rollup/plugin-typescript": "8.2.1" + "cross-env": "^6.0.3" }, "dependencies": { "prosemirror-commands": "^1.1.9", diff --git a/package-lock.json b/package-lock.json index 4fb39c2570..99f0268295 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,6 +14,10 @@ "@babel/core": "^7.8.3", "@babel/plugin-proposal-class-properties": "^7.8.3", "@babel/preset-env": "^7.8.3", + "@rollup/plugin-commonjs": "^19.0.0", + "@rollup/plugin-json": "^4.1.0", + "@rollup/plugin-node-resolve": "^13.0.0", + "@rollup/plugin-typescript": "^8.2.1", "@testing-library/jest-dom": "^5.11.9", "@types/common-tags": "^1.8.0", "@types/jest": "^26.0.20", @@ -48,6 +52,7 @@ "lerna": "^3.20.2", "mini-css-extract-plugin": "^1.3.9", "prettier": "^2.1.2", + "rollup": "^2.52.0", "snowpack": "^3.0.13", "style-loader": "^2.0.0", "terser-webpack-plugin": "^5.1.1", @@ -81,10 +86,8 @@ "prosemirror-view": "^1.18.7" }, "devDependencies": { - "@rollup/plugin-typescript": "8.2.1", "@toast-ui/release-notes": "^2.0.1", - "cross-env": "^6.0.3", - "rollup": "2.52.0" + "cross-env": "^6.0.3" } }, "apps/react-editor": { @@ -120,7 +123,7 @@ }, "apps/vue-editor": { "name": "@toast-ui/vue-editor", - "version": "3.0.0", + "version": "3.0.1", "license": "MIT", "dependencies": { "@toast-ui/editor": "^3.0.0" @@ -5539,6 +5542,59 @@ "integrity": "sha512-6RglhutqrGFMO1MNUXp95RBuYIuc8wTnMAV5MUhLmjTOy78ncwOw7RgeQ/HeymkKXRhZd0s2DNrM1rL7unk3MQ==", "dev": true }, + "node_modules/@rollup/plugin-commonjs": { + "version": "19.0.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-19.0.0.tgz", + "integrity": "sha512-adTpD6ATGbehdaQoZQ6ipDFhdjqsTgpOAhFiPwl+dzre4pPshsecptDPyEFb61JMJ1+mGljktaC4jI8ARMSNyw==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^3.1.0", + "commondir": "^1.0.1", + "estree-walker": "^2.0.1", + "glob": "^7.1.6", + "is-reference": "^1.2.1", + "magic-string": "^0.25.7", + "resolve": "^1.17.0" + }, + "engines": { + "node": ">= 8.0.0" + }, + "peerDependencies": { + "rollup": "^2.38.3" + } + }, + "node_modules/@rollup/plugin-json": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-4.1.0.tgz", + "integrity": "sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^3.0.8" + }, + "peerDependencies": { + "rollup": "^1.20.0 || ^2.0.0" + } + }, + "node_modules/@rollup/plugin-node-resolve": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.0.0.tgz", + "integrity": "sha512-41X411HJ3oikIDivT5OKe9EZ6ud6DXudtfNrGbC4nniaxx2esiWjkLOzgnZsWq1IM8YIeL2rzRGLZLBjlhnZtQ==", + "dev": true, + "dependencies": { + "@rollup/pluginutils": "^3.1.0", + "@types/resolve": "1.17.1", + "builtin-modules": "^3.1.0", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "peerDependencies": { + "rollup": "^2.42.0" + } + }, "node_modules/@rollup/plugin-typescript": { "version": "8.2.1", "resolved": "https://registry.npmjs.org/@rollup/plugin-typescript/-/plugin-typescript-8.2.1.tgz", @@ -6056,6 +6112,15 @@ "csstype": "^3.0.2" } }, + "node_modules/@types/resolve": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", + "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/scheduler": { "version": "0.16.1", "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.1.tgz", @@ -7717,6 +7782,18 @@ "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", "dev": true }, + "node_modules/builtin-modules": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.2.0.tgz", + "integrity": "sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA==", + "dev": true, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/builtins": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", @@ -11806,6 +11883,12 @@ "node": ">=4.0" } }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true + }, "node_modules/esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", @@ -15062,6 +15145,12 @@ "node": ">=0.10.0" } }, + "node_modules/is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=", + "dev": true + }, "node_modules/is-negative-zero": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", @@ -15170,6 +15259,15 @@ "integrity": "sha1-DFLlS8yjkbssSUsh6GJtczbG45c=", "dev": true }, + "node_modules/is-reference": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", + "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", + "dev": true, + "dependencies": { + "@types/estree": "*" + } + }, "node_modules/is-regex": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.2.tgz", @@ -17712,6 +17810,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/magic-string": { + "version": "0.25.7", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", + "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", + "dev": true, + "dependencies": { + "sourcemap-codec": "^1.4.4" + } + }, "node_modules/make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", @@ -24406,6 +24513,12 @@ "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", "dev": true }, + "node_modules/sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "dev": true + }, "node_modules/spdx-correct": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", @@ -32693,6 +32806,44 @@ "integrity": "sha512-6RglhutqrGFMO1MNUXp95RBuYIuc8wTnMAV5MUhLmjTOy78ncwOw7RgeQ/HeymkKXRhZd0s2DNrM1rL7unk3MQ==", "dev": true }, + "@rollup/plugin-commonjs": { + "version": "19.0.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-19.0.0.tgz", + "integrity": "sha512-adTpD6ATGbehdaQoZQ6ipDFhdjqsTgpOAhFiPwl+dzre4pPshsecptDPyEFb61JMJ1+mGljktaC4jI8ARMSNyw==", + "dev": true, + "requires": { + "@rollup/pluginutils": "^3.1.0", + "commondir": "^1.0.1", + "estree-walker": "^2.0.1", + "glob": "^7.1.6", + "is-reference": "^1.2.1", + "magic-string": "^0.25.7", + "resolve": "^1.17.0" + } + }, + "@rollup/plugin-json": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-json/-/plugin-json-4.1.0.tgz", + "integrity": "sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw==", + "dev": true, + "requires": { + "@rollup/pluginutils": "^3.0.8" + } + }, + "@rollup/plugin-node-resolve": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.0.0.tgz", + "integrity": "sha512-41X411HJ3oikIDivT5OKe9EZ6ud6DXudtfNrGbC4nniaxx2esiWjkLOzgnZsWq1IM8YIeL2rzRGLZLBjlhnZtQ==", + "dev": true, + "requires": { + "@rollup/pluginutils": "^3.1.0", + "@types/resolve": "1.17.1", + "builtin-modules": "^3.1.0", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.19.0" + } + }, "@rollup/plugin-typescript": { "version": "8.2.1", "resolved": "https://registry.npmjs.org/@rollup/plugin-typescript/-/plugin-typescript-8.2.1.tgz", @@ -32821,7 +32972,6 @@ "@toast-ui/editor": { "version": "file:apps/editor", "requires": { - "@rollup/plugin-typescript": "8.2.1", "@toast-ui/release-notes": "^2.0.1", "cross-env": "^6.0.3", "prosemirror-commands": "^1.1.9", @@ -32830,8 +32980,7 @@ "prosemirror-keymap": "^1.1.4", "prosemirror-model": "^1.14.1", "prosemirror-state": "^1.3.4", - "prosemirror-view": "^1.18.7", - "rollup": "2.52.0" + "prosemirror-view": "^1.18.7" } }, "@toast-ui/editor-plugin-chart": { @@ -33269,6 +33418,15 @@ "csstype": "^3.0.2" } }, + "@types/resolve": { + "version": "1.17.1", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz", + "integrity": "sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, "@types/scheduler": { "version": "0.16.1", "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.1.tgz", @@ -34579,6 +34737,12 @@ "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", "dev": true }, + "builtin-modules": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-3.2.0.tgz", + "integrity": "sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA==", + "dev": true + }, "builtins": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/builtins/-/builtins-1.0.3.tgz", @@ -37819,6 +37983,12 @@ "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "dev": true }, + "estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true + }, "esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", @@ -40427,6 +40597,12 @@ "is-extglob": "^2.1.1" } }, + "is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=", + "dev": true + }, "is-negative-zero": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", @@ -40501,6 +40677,15 @@ "integrity": "sha1-DFLlS8yjkbssSUsh6GJtczbG45c=", "dev": true }, + "is-reference": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", + "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", + "dev": true, + "requires": { + "@types/estree": "*" + } + }, "is-regex": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.2.tgz", @@ -42464,6 +42649,15 @@ "integrity": "sha512-H/QHeBIN1fIGJX517pvK8IEK53yQOW7YcEI55oYtgjDdoCQQz7eJS94qt5kNrscReEyuD/JcdFCm2XBEcGOITg==", "dev": true }, + "magic-string": { + "version": "0.25.7", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", + "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", + "dev": true, + "requires": { + "sourcemap-codec": "^1.4.4" + } + }, "make-dir": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", @@ -47805,6 +47999,12 @@ "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", "dev": true }, + "sourcemap-codec": { + "version": "1.4.8", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz", + "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==", + "dev": true + }, "spdx-correct": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", diff --git a/package.json b/package.json index f9f50fc570..c7a8a1d842 100644 --- a/package.json +++ b/package.json @@ -5,6 +5,10 @@ "@babel/core": "^7.8.3", "@babel/plugin-proposal-class-properties": "^7.8.3", "@babel/preset-env": "^7.8.3", + "@rollup/plugin-commonjs": "^19.0.0", + "@rollup/plugin-json": "^4.1.0", + "@rollup/plugin-node-resolve": "^13.0.0", + "@rollup/plugin-typescript": "^8.2.1", "@testing-library/jest-dom": "^5.11.9", "@types/common-tags": "^1.8.0", "@types/jest": "^26.0.20", @@ -39,6 +43,7 @@ "lerna": "^3.20.2", "mini-css-extract-plugin": "^1.3.9", "prettier": "^2.1.2", + "rollup": "^2.52.0", "snowpack": "^3.0.13", "style-loader": "^2.0.0", "terser-webpack-plugin": "^5.1.1", From 942f7cf4f8edec06524c756620fdfcf736f847cd Mon Sep 17 00:00:00 2001 From: js87zz Date: Wed, 7 Jul 2021 15:48:01 +0900 Subject: [PATCH 3/3] docs: fix the serve process --- CONTRIBUTING.md | 9 +++++---- README.md | 1 + 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 44dc14ef3c..c0a04ea9f8 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -42,14 +42,15 @@ Unsure where to begin contributing to TOAST UI? You can start by looking through ### Development WorkFlow - Set up your development environment - Make change from a right branch -- Be sure the code passes `npm run lint`, `npm run test` +- Be sure the code passes `npm run lint:all`, `npm run test:types:all`, `npm run test:all` - Make a pull request ### Development environment - Prepare your machine node and it's packages installed. - Checkout our repository -- Install dependencies by `npm install && bower install` -- Start webpack-dev-server by `npm run serve` +- Install dependencies by `npm install` +- Build toastmark by `npm run build toastmark` +- Start snowpack-dev-server by `npm run serve` ### Make changes #### Checkout a branch @@ -61,7 +62,7 @@ Unsure where to begin contributing to TOAST UI? You can start by looking through Run `npm run eslint` and make sure all the tests pass. #### Test -Run `npm run test` and verify all the tests pass. +Run `npm run test:all` and verify all the tests pass. If you are adding new commands or features, they must include tests. If you are changing functionality, update the tests if you need to. diff --git a/README.md b/README.md index 66b42e8f3e..1bf4c743cf 100644 --- a/README.md +++ b/README.md @@ -131,6 +131,7 @@ Fork `main` branch into your personal repository. Clone it to local computer. In ```sh $ git clone https://github.com/{your-personal-repo}/tui.editor.git $ npm install +$ npm run build toastmark $ npm run test editor ```