@jx3box/jx3box-editor 2.2.48 → 3.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/config/global.js +79 -0
- package/config/global.less +16 -0
- package/index.js +21 -8
- package/package.json +64 -63
- package/readme.md +25 -99
- package/src/Article.vue +96 -57
- package/src/ArticleMarkdown.vue +54 -47
- package/src/BoxResource.vue +67 -42
- package/src/Buff.vue +18 -7
- package/src/GameText.vue +32 -45
- package/src/Item.vue +143 -235
- package/src/ItemSimple.vue +27 -37
- package/src/Markdown.vue +362 -210
- package/src/Npc.vue +51 -30
- package/src/Resource.vue +296 -252
- package/src/Skill.vue +36 -26
- package/src/Tinymce.vue +124 -137
- package/src/Upload.vue +238 -155
- package/src/UploadAlbum.vue +189 -118
- package/{assets → src/assets}/css/article.less +1 -0
- package/src/assets/css/markdown.less +4 -0
- package/{assets → src/assets}/css/module/author.less +4 -3
- package/{assets → src/assets}/css/module/directory.less +23 -32
- package/{assets → src/assets}/css/module/talent.less +2 -2
- package/{assets → src/assets}/css/resource.less +56 -22
- package/src/assets/css/tinymce/_.less +28 -0
- package/src/assets/css/tinymce/a.less +21 -0
- package/{assets → src/assets}/css/tinymce/code.less +1 -1
- package/{assets/css → src/assets/css/tinymce}/combo.less +123 -18
- package/{assets → src/assets}/css/tinymce/fold.less +3 -6
- package/src/assets/css/tinymce/h.less +90 -0
- package/{assets → src/assets}/css/tinymce/latex.less +14 -14
- package/{assets → src/assets}/css/tinymce/macro.less +3 -3
- package/{assets → src/assets}/css/tinymce/pz.less +2 -2
- package/{assets → src/assets}/css/tinymce/table.less +5 -10
- package/{assets → src/assets}/css/tinymce.less +8 -4
- package/src/assets/css/upload.less +195 -0
- package/src/assets/css/upload_album.less +164 -0
- package/src/assets/css/var.less +2 -0
- package/src/assets/img/other/qr-code.svg +1 -0
- package/{assets → src/assets}/js/audio.js +2 -2
- package/{assets → src/assets}/js/directory.js +51 -23
- package/src/assets/js/hljs_languages.js +177 -0
- package/src/assets/js/katex.js +211 -0
- package/src/assets/js/renderImgPreview.js +49 -0
- package/{assets → src/assets}/js/xss.js +48 -5
- package/src/components/Author.vue +32 -13
- package/src/components/Avatar.vue +22 -3
- package/src/components/Combo.vue +118 -72
- package/src/components/PostAuthor.vue +13 -11
- package/src/components/QRcode.vue +136 -0
- package/src/components/SkillMartial.vue +13 -12
- package/src/pages/article.js +14 -0
- package/src/pages/index.js +5 -0
- package/src/pages/markdown.js +14 -0
- package/src/pages/tinymce.js +49 -0
- package/src/pages/upload.js +14 -0
- package/{service → src/service}/author.js +2 -2
- package/{service → src/service}/cms.js +5 -3
- package/{service → src/service}/database.js +4 -2
- package/{service → src/service}/item.js +1 -1
- package/{service → src/service}/node.js +1 -1
- package/{service → src/service}/resource.js +1 -1
- package/src/views/article.vue +72 -0
- package/src/views/index.vue +11 -0
- package/src/views/markdown.vue +58 -0
- package/src/views/tinymce.vue +58 -0
- package/src/views/upload.vue +111 -0
- package/.env +0 -2
- package/.vscode/settings.json +0 -5
- package/assets/css/katex-fix.css +0 -20
- package/assets/css/tinymce/_.less +0 -30
- package/assets/css/tinymce/a.less +0 -30
- package/assets/css/tinymce/combo.less +0 -111
- package/assets/css/tinymce/h.less +0 -58
- package/assets/css/upload.less +0 -105
- package/assets/js/katex.js +0 -191
- package/assets/js/renderImgPreview.js +0 -25
- package/babel.config.js +0 -3
- package/docs/markdown.md +0 -16
- package/jsconfig.json +0 -9
- package/public/article.html +0 -15
- package/public/css/article.css +0 -2481
- package/public/css/article.less +0 -3
- package/public/favicon.ico +0 -0
- package/public/tinymce.html +0 -33
- package/src/Equip.vue +0 -301
- package/src/components/LetterDemo.vue +0 -93
- package/src/components/medal.vue +0 -43
- package/test-audio.html +0 -121
- package/vue.config.js +0 -147
- /package/{assets → src/assets}/css/markdown/_.less +0 -0
- /package/{assets → src/assets}/css/markdown/macro.less +0 -0
- /package/{assets/css/article_markdown.less → src/assets/css/markdown/markdown-article.less} +0 -0
- /package/{assets/css/markdown.less → src/assets/css/markdown/markdown-editor.less} +0 -0
- /package/{assets → src/assets}/css/markdown/talent.less +0 -0
- /package/{assets → src/assets}/css/markdown/video.less +0 -0
- /package/{assets → src/assets}/css/module/buff.less +0 -0
- /package/{assets → src/assets}/css/module/icon.less +0 -0
- /package/{assets → src/assets}/css/module/item.less +0 -0
- /package/{assets → src/assets}/css/module/item_simple.less +0 -0
- /package/{assets → src/assets}/css/module/jx3_element.less +0 -0
- /package/{assets → src/assets}/css/module/macro.less +0 -0
- /package/{assets → src/assets}/css/module/npc.less +0 -0
- /package/{assets → src/assets}/css/module/resource.less +0 -0
- /package/{assets → src/assets}/css/module/skill.less +0 -0
- /package/{assets → src/assets}/css/tinymce/hr.less +0 -0
- /package/{assets → src/assets}/css/tinymce/img.less +0 -0
- /package/{assets → src/assets}/css/tinymce/imgpreview.less +0 -0
- /package/{assets → src/assets}/css/tinymce/list.less +0 -0
- /package/{assets → src/assets}/css/tinymce/nextpage.less +0 -0
- /package/{assets → src/assets}/css/tinymce/p.less +0 -0
- /package/{assets → src/assets}/css/tinymce/plugin.less +0 -0
- /package/{assets → src/assets}/css/tinymce/qixue.less +0 -0
- /package/{assets → src/assets}/css/tinymce/quote.less +0 -0
- /package/{assets → src/assets}/css/tinymce/video.less +0 -0
- /package/{assets → src/assets}/css/tinymce/voice.less +0 -0
- /package/{assets → src/assets}/data/detach_type.json +0 -0
- /package/{assets → src/assets}/data/game_font.json +0 -0
- /package/{assets → src/assets}/data/markdown_whitelist.json +0 -0
- /package/{assets → src/assets}/data/weapon_type.json +0 -0
- /package/{assets → src/assets}/img/buff.svg +0 -0
- /package/{assets → src/assets}/img/equip_bg.png +0 -0
- /package/{assets → src/assets}/img/file.svg +0 -0
- /package/{assets → src/assets}/img/icons.svg +0 -0
- /package/{assets → src/assets}/img/item/pve.png +0 -0
- /package/{assets → src/assets}/img/item/pvp.png +0 -0
- /package/{assets → src/assets}/img/item/pvx.png +0 -0
- /package/{assets → src/assets}/img/item/std.png +0 -0
- /package/{assets → src/assets}/img/item/wujie.png +0 -0
- /package/{assets → src/assets}/img/item.svg +0 -0
- /package/{assets → src/assets}/img/jx3.svg +0 -0
- /package/{assets → src/assets}/img/jx3box.svg +0 -0
- /package/{assets → src/assets}/img/npc/attack.svg +0 -0
- /package/{assets → src/assets}/img/npc/buff.svg +0 -0
- /package/{assets → src/assets}/img/npc/energy.svg +0 -0
- /package/{assets → src/assets}/img/npc/miss.svg +0 -0
- /package/{assets → src/assets}/img/npc/npc.svg +0 -0
- /package/{assets → src/assets}/img/npc/radar.svg +0 -0
- /package/{assets → src/assets}/img/npc/shield.svg +0 -0
- /package/{assets → src/assets}/img/npc/sight.svg +0 -0
- /package/{assets → src/assets}/img/npc/skull.svg +0 -0
- /package/{assets → src/assets}/img/npc/target.svg +0 -0
- /package/{assets → src/assets}/img/skill.svg +0 -0
- /package/{assets → src/assets}/img/skillset.png +0 -0
- /package/{assets → src/assets}/js/a.js +0 -0
- /package/{assets → src/assets}/js/code.js +0 -0
- /package/{assets → src/assets}/js/combo.js +0 -0
- /package/{assets → src/assets}/js/drag.js +0 -0
- /package/{assets → src/assets}/js/filter2.js +0 -0
- /package/{assets → src/assets}/js/fold.js +0 -0
- /package/{assets → src/assets}/js/gallery.js +0 -0
- /package/{assets → src/assets}/js/iframe.js +0 -0
- /package/{assets → src/assets}/js/img.js +0 -0
- /package/{assets → src/assets}/js/item/attribute_percent.js +0 -0
- /package/{assets → src/assets}/js/item/bind.js +0 -0
- /package/{assets → src/assets}/js/item/border.js +0 -0
- /package/{assets → src/assets}/js/item/border_quest.js +0 -0
- /package/{assets → src/assets}/js/item/color.js +0 -0
- /package/{assets → src/assets}/js/item/hljs_languages.js +0 -0
- /package/{assets → src/assets}/js/item/icon_url.js +0 -0
- /package/{assets → src/assets}/js/item/second_format.js +0 -0
- /package/{assets → src/assets}/js/jx3_element.js +0 -0
- /package/{assets → src/assets}/js/macro.js +0 -0
- /package/{assets → src/assets}/js/nextpage.js +0 -0
- /package/{assets → src/assets}/js/pswp.js +0 -0
- /package/{assets → src/assets}/js/pswp_template.js +0 -0
- /package/{assets → src/assets}/js/pz_iframe.js +0 -0
- /package/{assets → src/assets}/js/qixue.js +0 -0
- /package/{assets → src/assets}/js/script.js +0 -0
- /package/{assets → src/assets}/js/talent2.js +0 -0
- /package/{assets → src/assets}/js/tex-mml-chtml.js +0 -0
- /package/{service → src/service}/enum/CollectionPublic.js +0 -0
- /package/{service → src/service}/enum/EquipPosition.js +0 -0
- /package/{service → src/service}/enum/EquipType.js +0 -0
package/src/Npc.vue
CHANGED
|
@@ -27,43 +27,43 @@
|
|
|
27
27
|
</div>
|
|
28
28
|
<div class="u-primary">
|
|
29
29
|
<div class="u-life">
|
|
30
|
-
<img class="u-descicon u-descicon-life" svg-inline src="
|
|
30
|
+
<img class="u-descicon u-descicon-life" svg-inline src="./assets/img/npc/energy.svg" />
|
|
31
31
|
<b>血量</b>
|
|
32
32
|
<em>MaxLife</em>
|
|
33
33
|
<strong>{{ data.MaxLife }}</strong>
|
|
34
34
|
</div>
|
|
35
35
|
<div class="u-mana">
|
|
36
|
-
<img class="u-descicon u-descicon-mana" svg-inline src="
|
|
36
|
+
<img class="u-descicon u-descicon-mana" svg-inline src="./assets/img/npc/energy.svg" />
|
|
37
37
|
<b>内力</b>
|
|
38
38
|
<em>MaxMana</em>
|
|
39
39
|
<strong>{{ data.MaxMana }}</strong>
|
|
40
40
|
</div>
|
|
41
41
|
<div class="u-touch" v-if="data.TouchRange">
|
|
42
|
-
<img class="u-descicon u-descicon-touch" svg-inline src="
|
|
42
|
+
<img class="u-descicon u-descicon-touch" svg-inline src="./assets/img/npc/radar.svg" />
|
|
43
43
|
<b>范围</b>
|
|
44
44
|
<em>TouchRange</em>
|
|
45
45
|
<strong>{{ data.TouchRange }}</strong>
|
|
46
46
|
</div>
|
|
47
47
|
<div class="u-sense" v-if="data.Sense">
|
|
48
|
-
<img class="u-descicon u-descicon-sense" svg-inline src="
|
|
48
|
+
<img class="u-descicon u-descicon-sense" svg-inline src="./assets/img/npc/sight.svg" />
|
|
49
49
|
<b>识破</b>
|
|
50
50
|
<em>Sense</em>
|
|
51
51
|
<strong>{{ data.Sense }}</strong>
|
|
52
52
|
</div>
|
|
53
53
|
<div class="u-dodge" v-if="data.Dodge">
|
|
54
|
-
<img class="u-descicon u-descicon-dodge" svg-inline src="
|
|
54
|
+
<img class="u-descicon u-descicon-dodge" svg-inline src="./assets/img/npc/miss.svg" />
|
|
55
55
|
<b>闪避</b>
|
|
56
56
|
<em>Dodge</em>
|
|
57
57
|
<strong>{{ data.Dodge }}</strong>
|
|
58
58
|
</div>
|
|
59
59
|
<div class="u-dodge" v-if="data.Parry">
|
|
60
|
-
<img class="u-descicon u-descicon-dodge" svg-inline src="
|
|
60
|
+
<img class="u-descicon u-descicon-dodge" svg-inline src="./assets/img/npc/miss.svg" />
|
|
61
61
|
<b>招架</b>
|
|
62
62
|
<em>Parry</em>
|
|
63
63
|
<strong>{{ data.ParryValue }}</strong>
|
|
64
64
|
</div>
|
|
65
65
|
<div class="u-shield">
|
|
66
|
-
<img class="u-descicon u-descicon-shield" svg-inline src="
|
|
66
|
+
<img class="u-descicon u-descicon-shield" svg-inline src="./assets/img/npc/shield.svg" />
|
|
67
67
|
<b>防御</b>
|
|
68
68
|
<em>Shield</em>
|
|
69
69
|
<span class="u-sitem">
|
|
@@ -93,7 +93,7 @@
|
|
|
93
93
|
</span>
|
|
94
94
|
</div>
|
|
95
95
|
<div class="u-critical">
|
|
96
|
-
<img class="u-descicon u-descicon-attack" svg-inline src="
|
|
96
|
+
<img class="u-descicon u-descicon-attack" svg-inline src="./assets/img/npc/attack.svg" />
|
|
97
97
|
<b>会心</b>
|
|
98
98
|
<em>Critical</em>
|
|
99
99
|
<span class="u-sitem">
|
|
@@ -123,7 +123,7 @@
|
|
|
123
123
|
</span>
|
|
124
124
|
</div>
|
|
125
125
|
<div class="u-attack">
|
|
126
|
-
<img class="u-descicon u-descicon-attack" svg-inline src="
|
|
126
|
+
<img class="u-descicon u-descicon-attack" svg-inline src="./assets/img/npc/target.svg" />
|
|
127
127
|
<b>命中</b>
|
|
128
128
|
<em>Attack</em>
|
|
129
129
|
<span class="u-sitem">
|
|
@@ -153,9 +153,7 @@
|
|
|
153
153
|
</span>
|
|
154
154
|
</div>
|
|
155
155
|
</div>
|
|
156
|
-
<div class="u-id">
|
|
157
|
-
ID : {{id}}
|
|
158
|
-
</div>
|
|
156
|
+
<div class="u-id">ID : {{ id }}</div>
|
|
159
157
|
</div>
|
|
160
158
|
</div>
|
|
161
159
|
</div>
|
|
@@ -163,48 +161,71 @@
|
|
|
163
161
|
</template>
|
|
164
162
|
|
|
165
163
|
<script>
|
|
166
|
-
import { getNpc } from "
|
|
164
|
+
import { getNpc } from "./service/database.js";
|
|
167
165
|
import { iconLink } from "@jx3box/jx3box-common/js/utils";
|
|
168
166
|
export default {
|
|
169
167
|
name: "Npc",
|
|
170
|
-
props:
|
|
168
|
+
props: {
|
|
169
|
+
client: {
|
|
170
|
+
type: String,
|
|
171
|
+
default: "std",
|
|
172
|
+
},
|
|
173
|
+
id: {
|
|
174
|
+
type: [String, Number],
|
|
175
|
+
default: "",
|
|
176
|
+
},
|
|
177
|
+
},
|
|
171
178
|
data: () => ({
|
|
172
179
|
data: null,
|
|
180
|
+
requestVersion: 0,
|
|
173
181
|
}),
|
|
174
182
|
computed: {
|
|
175
|
-
params: function() {
|
|
183
|
+
params: function () {
|
|
176
184
|
return [this.client, this.id];
|
|
177
185
|
},
|
|
178
186
|
},
|
|
179
187
|
watch: {
|
|
180
188
|
params: {
|
|
181
189
|
immediate: true,
|
|
182
|
-
deep: true,
|
|
183
190
|
handler(val) {
|
|
191
|
+
this.requestVersion += 1;
|
|
192
|
+
const currentVersion = this.requestVersion;
|
|
193
|
+
|
|
184
194
|
if (val) {
|
|
185
195
|
let [client, id] = val;
|
|
196
|
+
if (!id) {
|
|
197
|
+
this.data = null;
|
|
198
|
+
return;
|
|
199
|
+
}
|
|
200
|
+
|
|
186
201
|
// 读取本地数据
|
|
187
202
|
const cache = sessionStorage.getItem(`npc-${client}-${id}`);
|
|
188
203
|
if (cache) {
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
if (!data) data = null;
|
|
196
|
-
this.data = data;
|
|
197
|
-
|
|
198
|
-
// 将数据放入 sessionStorage
|
|
199
|
-
sessionStorage.setItem(`npc-${client}-${id}`, JSON.stringify(data));
|
|
200
|
-
});
|
|
204
|
+
try {
|
|
205
|
+
this.data = JSON.parse(cache);
|
|
206
|
+
return;
|
|
207
|
+
} catch (e) {
|
|
208
|
+
console.log(e, "[Npc]无法解析本地缓存");
|
|
209
|
+
}
|
|
201
210
|
}
|
|
211
|
+
|
|
212
|
+
// 没有缓存则发起请求获取数据
|
|
213
|
+
getNpc(client, id).then((res) => {
|
|
214
|
+
if (currentVersion !== this.requestVersion) return;
|
|
215
|
+
|
|
216
|
+
let data = res.data?.list?.[0];
|
|
217
|
+
if (!data) data = null;
|
|
218
|
+
this.data = data;
|
|
219
|
+
|
|
220
|
+
// 将数据放入 sessionStorage
|
|
221
|
+
sessionStorage.setItem(`npc-${client}-${id}`, JSON.stringify(data));
|
|
222
|
+
});
|
|
202
223
|
}
|
|
203
224
|
},
|
|
204
225
|
},
|
|
205
226
|
},
|
|
206
227
|
methods: {
|
|
207
|
-
iconLink: function(id) {
|
|
228
|
+
iconLink: function (id) {
|
|
208
229
|
return iconLink(id, this.client);
|
|
209
230
|
},
|
|
210
231
|
},
|
|
@@ -212,5 +233,5 @@ export default {
|
|
|
212
233
|
</script>
|
|
213
234
|
|
|
214
235
|
<style lang="less">
|
|
215
|
-
@import "
|
|
236
|
+
@import "./assets/css/module/npc.less";
|
|
216
237
|
</style>
|