Skip to content

Commit 08cd6b8

Browse files
committed
Fix webpack
1 parent d1efab9 commit 08cd6b8

File tree

7 files changed

+135
-66
lines changed

7 files changed

+135
-66
lines changed

.after-build.sh

Lines changed: 18 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -2,27 +2,23 @@
22

33
set -e
44

5-
src=dist/MarkdownPalettes.umd.min.js
6-
dist=dist/markdown-palettes.js
7-
vue=https://cdn.jsdelivr.net/npm/[email protected]
5+
cd ./dist/
86

9-
wget $vue -O $dist
10-
echo >> $dist
11-
cat $src >> $dist
12-
cat - >> $dist << EOF
7+
if test -e ./MarkdownPalettesBrowser.umd.min.js
8+
then
9+
mv ./MarkdownPalettesBrowser.umd.min.js ./markdown-palettes.min.js
10+
mv ./MarkdownPalettesBrowser.umd.js ./markdown-palettes.js
11+
mv ./MarkdownPalettesBrowser.css ./markdown-palettes.css
12+
13+
rm -rf ./MarkdownPalettesBrowser.common.*.js
14+
rm -rf ./MarkdownPalettesBrowser.common.js
15+
rm -rf ./MarkdownPalettesBrowser.umd.*.js
16+
fi
17+
18+
if test -e ./MarkdownPalettes.umd.js
19+
then
20+
rm -rf ./MarkdownPalettes.common.*.js
21+
rm -rf ./MarkdownPalettes.umd.js
22+
rm -rf ./MarkdownPalettes.umd.*.js
23+
fi
1324

14-
(function(mp){
15-
'use strict'
16-
class MarkdownPalettes {
17-
constructor (el, config = {}) {
18-
this.config = config
19-
this.editor = new Vue(mp)
20-
this.editor.\$mount(el)
21-
}
22-
getContentParser () {
23-
return this.editor.contentParser
24-
}
25-
}
26-
window.MarkdownPalettes = MarkdownPalettes
27-
})(MarkdownPalettes)
28-
EOF

demo.html

Lines changed: 13 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,18 @@
11
<!DOCTYPE html>
2-
<html>
3-
<head>
4-
<meta charset="utf-8">
5-
<meta http-equiv="X-UA-Compatible" content="IE=edge">
6-
<meta name="viewport" content="width=device-width,initial-scale=1.0">
7-
<title>luogu-markdown-editor</title>
8-
<link rel="stylesheet" href="MarkdownPalettes.css">
9-
</head>
10-
<body>
11-
<div id="editor-container" style="height: 700px;">
12-
<div id="editor"></div>
2+
<html lang="en">
3+
<head>
4+
<meta charset="UTF-8">
5+
<title>Title</title>
6+
<script src="markdown-palettes.min.js"></script>
7+
<link rel="stylesheet" href="markdown-palettes.css">
8+
</head>
9+
<body>
10+
<div style="height: 800px">
11+
<div id="editor"></div>
1312
</div>
14-
<script src="https://cdn.jsdelivr.net/npm/[email protected]"></script>
15-
<script src="MarkdownPalettes.umd.js"></script>
13+
1614
<script>
17-
const app = new Vue({
18-
template: '<markdown-palettes v-model="code"/>',
19-
el: '#editor',
20-
data: {
21-
code: '# Demo'
22-
},
23-
components: {
24-
MarkdownPalettes
25-
}
26-
})
15+
var editor = new MarkdownPalettes('#editor');
2716
</script>
28-
</body>
17+
</body>
2918
</html>

package.json

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,17 @@
11
{
22
"name": "markdown-palettes",
33
"description": "Markdown*Palettes: Markdown editor for the modern web.",
4-
"version": "0.4.7",
4+
"version": "0.4.8-alpha",
55
"author": "Luogu Dev Team",
66
"license": "MIT",
77
"main": "dist/MarkdownPalettes.common.js",
88
"style": "dist/MarkdownPalettes.css",
99
"scripts": {
1010
"dev": "vue-cli-service serve --open",
1111
"prod-test": "vue-cli-service serve --open --mode production",
12-
"build": "vue-cli-service build --name MarkdownPalettes --target lib src/browserModule.js && cp demo.html dist && ./.after-build.sh",
12+
"build": "vue-cli-service build --name MarkdownPalettes --target lib src/module.js && vue-cli-service build --name MarkdownPalettesBrowser --target lib src/browserModule.js --no-clean && ./.after-build.sh && cp demo.html dist/demo.html",
13+
"build-lib": "vue-cli-service build --name MarkdownPalettes --target lib src/module.js && ./.after-build.sh",
14+
"build-browser": "vue-cli-service build --name MarkdownPalettesBrowser --target lib src/browserModule.js && ./.after-build.sh",
1315
"build-dev": "vue-cli-service build --name MarkdownPalettes --target lib src/browserModule.js --mode development",
1416
"lint": "vue-cli-service lint",
1517
"lint-fix": "vue-cli-service lint --fix",
@@ -20,30 +22,28 @@
2022
"@fortawesome/fontawesome-free": "^5.1.0",
2123
"axios": "^0.18.0",
2224
"codemirror": "^5.39.0",
25+
"global": "^4.3.2",
2326
"katex": "^0.9.0",
2427
"lodash": "4.17.10",
2528
"markdown-it": "^8.4.2",
2629
"markdown-it-v": "^1.2.1",
2730
"markdown-it-v-codemirror-highlighter": "1.0.0",
28-
"markdown-it-v-katex": "^1.0.0-alpha.1"
31+
"markdown-it-v-katex": "^1.0.0-alpha.1",
32+
"vue": "^2.5.11"
2933
},
3034
"devDependencies": {
3135
"@babel/plugin-proposal-object-rest-spread": "7.3.1",
3236
"@babel/preset-env": "7.3.1",
33-
"@vue/cli-plugin-babel": "3.4.0",
37+
"@vue/cli-plugin-babel": "^3.4.0",
3438
"@vue/cli-plugin-eslint": "^3.1.5",
3539
"@vue/cli-service": "3.4.0",
3640
"@vue/eslint-config-standard": "^4.0.0",
3741
"babel-plugin-lodash": "^3.3.4",
3842
"http-server": "^0.11.1",
3943
"stylus": "^0.54.5",
4044
"stylus-loader": "^3.0.2",
41-
"vue": "^2.5.11",
4245
"vue-template-compiler": "^2.5.16"
4346
},
44-
"peerDependencies": {
45-
"vue": "^2.5.11"
46-
},
4747
"browserslist": [
4848
"Edge >= 15",
4949
"Firefox >= 53",

src/Editor.vue

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<template>
2+
<div>
3+
<markdown-palettes v-model="value" :config="config"></markdown-palettes>
4+
</div>
5+
</template>
6+
7+
<style scoped lang="stylus">
8+
div
9+
height: 100%
10+
</style>
11+
12+
<script>
13+
import MarkdownPalettes from './MarkdownPalettes'
14+
15+
export default {
16+
components: { MarkdownPalettes },
17+
data: function () {
18+
return {
19+
value: '',
20+
config: {}
21+
}
22+
}
23+
}
24+
</script>

src/browserModule.js

Lines changed: 36 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,36 @@
1-
export { default } from './module.js'
1+
import { defaultContentParser, defaultConfig } from './module.js'
2+
import Editor from './Editor'
3+
import Vue from 'vue/dist/vue'
4+
5+
const MarkdownPalettes = class MarkdownPalettes {
6+
#vueInstance = null
7+
8+
constructor(el, config = defaultConfig) {
9+
this.#vueInstance = new Vue({
10+
...Editor,
11+
data () {
12+
return {
13+
value: MarkdownPalettes.content,
14+
config: config
15+
}
16+
}
17+
})
18+
19+
this.#vueInstance.$mount(el)
20+
}
21+
22+
get content () {
23+
return this.#vueInstance.$data.value
24+
}
25+
26+
set content(value) {
27+
this.#vueInstance.$data.value = value
28+
}
29+
30+
static defaultContentParser(content) {
31+
return defaultContentParser(content);
32+
}
33+
}
34+
35+
window.MarkdownPalettes = MarkdownPalettes
36+

src/module.js

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
import Editor from './MarkdownPalettes.vue'
2-
3-
import { contentParserFactory } from './parsers/ContentParserFactory'
4-
import { defaultConfig } from './utils/DefaultConfig'
5-
6-
export default Editor
7-
8-
const defaultContentParser = contentParserFactory(defaultConfig.parsers)
9-
10-
export { Editor, defaultContentParser }
1+
import Editor from './MarkdownPalettes.vue'
2+
3+
import { contentParserFactory } from './parsers/ContentParserFactory'
4+
import { defaultConfig } from './utils/DefaultConfig'
5+
6+
export default Editor
7+
8+
const defaultContentParser = contentParserFactory(defaultConfig.parsers)
9+
10+
export { Editor, defaultContentParser, defaultConfig }

yarn.lock

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1181,7 +1181,7 @@
11811181
resolved "http://registry.npm.taobao.org/@vue/cli-overlay/download/@vue/cli-overlay-3.4.0.tgz#7fe7cf41eacbaf1f1579efcad93e23b65d4581db"
11821182
integrity sha1-f+fPQerLrx8Vee/K2T4jtl1Fgds=
11831183

1184-
1184+
"@vue/cli-plugin-babel@^3.4.0":
11851185
version "3.4.0"
11861186
resolved "http://registry.npm.taobao.org/@vue/cli-plugin-babel/download/@vue/cli-plugin-babel-3.4.0.tgz#d6e7967995f860b94204bdfb17900fadd4aea2d9"
11871187
integrity sha1-1ueWeZX4YLlCBL37F5APrdSuotk=
@@ -3115,6 +3115,11 @@ dom-serializer@0:
31153115
domelementtype "~1.1.1"
31163116
entities "~1.1.1"
31173117

3118+
dom-walk@^0.1.0:
3119+
version "0.1.1"
3120+
resolved "http://registry.npm.taobao.org/dom-walk/download/dom-walk-0.1.1.tgz#672226dc74c8f799ad35307df936aba11acd6018"
3121+
integrity sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg=
3122+
31183123
domain-browser@^1.1.1:
31193124
version "1.2.0"
31203125
resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda"
@@ -4062,6 +4067,14 @@ glob@^7.1.1:
40624067
once "^1.3.0"
40634068
path-is-absolute "^1.0.0"
40644069

4070+
global@^4.3.2:
4071+
version "4.3.2"
4072+
resolved "http://registry.npm.taobao.org/global/download/global-4.3.2.tgz#e76989268a6c74c38908b1305b10fc0e394e9d0f"
4073+
integrity sha1-52mJJopsdMOJCLEwWxD8DjlOnQ8=
4074+
dependencies:
4075+
min-document "^2.19.0"
4076+
process "~0.5.1"
4077+
40654078
globals@^11.0.1, globals@^11.1.0:
40664079
version "11.10.0"
40674080
resolved "http://registry.npm.taobao.org/globals/download/globals-11.10.0.tgz#1e09776dffda5e01816b3bb4077c8b59c24eaa50"
@@ -5385,6 +5398,13 @@ mimic-fn@^1.0.0:
53855398
resolved "http://registry.npm.taobao.org/mimic-fn/download/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022"
53865399
integrity sha1-ggyGo5M0ZA6ZUWkovQP8qIBX0CI=
53875400

5401+
min-document@^2.19.0:
5402+
version "2.19.0"
5403+
resolved "http://registry.npm.taobao.org/min-document/download/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685"
5404+
integrity sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=
5405+
dependencies:
5406+
dom-walk "^0.1.0"
5407+
53885408
mini-css-extract-plugin@^0.5.0:
53895409
version "0.5.0"
53905410
resolved "http://registry.npm.taobao.org/mini-css-extract-plugin/download/mini-css-extract-plugin-0.5.0.tgz#ac0059b02b9692515a637115b0cc9fed3a35c7b0"
@@ -6559,6 +6579,11 @@ process@^0.11.10:
65596579
version "0.11.10"
65606580
resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182"
65616581

6582+
process@~0.5.1:
6583+
version "0.5.2"
6584+
resolved "http://registry.npm.taobao.org/process/download/process-0.5.2.tgz#1638d8a8e34c2f440a91db95ab9aeb677fc185cf"
6585+
integrity sha1-FjjYqONML0QKkduVq5rrZ3/Bhc8=
6586+
65626587
progress@^2.0.0:
65636588
version "2.0.3"
65646589
resolved "http://registry.npm.taobao.org/progress/download/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8"

0 commit comments

Comments
 (0)