@tmagic/editor 1.0.0-beta.13 → 1.0.0-beta.14
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/coverage/clover.xml +646 -550
- package/coverage/coverage-final.json +19 -18
- package/coverage/lcov-report/index.html +55 -55
- package/coverage/lcov-report/src/Editor.vue.html +1 -1
- package/coverage/lcov-report/{layouts/sidebar/LayerMenu.vue.html → src/components/ContentMenu.vue.html} +137 -95
- package/coverage/lcov-report/src/components/Icon.vue.html +5 -5
- package/coverage/lcov-report/src/components/ScrollViewer.vue.html +1 -1
- package/coverage/lcov-report/src/components/ToolButton.vue.html +180 -63
- package/coverage/lcov-report/src/components/index.html +34 -19
- package/coverage/lcov-report/src/index.html +1 -1
- package/coverage/lcov-report/src/layouts/AddPageBox.vue.html +1 -1
- package/coverage/lcov-report/src/layouts/Framework.vue.html +13 -13
- package/coverage/lcov-report/src/layouts/NavMenu.vue.html +1 -1
- package/coverage/lcov-report/src/layouts/PropsPanel.vue.html +1 -1
- package/coverage/lcov-report/src/layouts/Resizer.vue.html +1 -1
- package/coverage/lcov-report/src/layouts/index.html +15 -15
- package/coverage/lcov-report/src/layouts/sidebar/ComponentListPanel.vue.html +78 -12
- package/coverage/lcov-report/src/layouts/sidebar/LayerMenu.vue.html +149 -92
- package/coverage/lcov-report/src/layouts/sidebar/LayerPanel.vue.html +43 -121
- package/coverage/lcov-report/src/layouts/sidebar/Sidebar.vue.html +1 -1
- package/coverage/lcov-report/src/layouts/sidebar/index.html +40 -40
- package/coverage/lcov-report/src/layouts/workspace/PageBar.vue.html +99 -12
- package/coverage/lcov-report/src/layouts/workspace/Stage.vue.html +86 -95
- package/coverage/lcov-report/src/layouts/workspace/ViewerMenu.vue.html +208 -97
- package/coverage/lcov-report/src/layouts/workspace/Workspace.vue.html +3 -3
- package/coverage/lcov-report/src/layouts/workspace/index.html +35 -35
- package/coverage/lcov-report/src/services/BaseService.ts.html +11 -11
- package/coverage/lcov-report/src/services/componentList.ts.html +1 -1
- package/coverage/lcov-report/src/services/editor.ts.html +102 -9
- package/coverage/lcov-report/src/services/events.ts.html +1 -1
- package/coverage/lcov-report/src/services/history.ts.html +29 -8
- package/coverage/lcov-report/src/services/index.html +25 -25
- package/coverage/lcov-report/src/services/props.ts.html +4 -7
- package/coverage/lcov-report/src/services/ui.ts.html +1 -1
- package/coverage/lcov-report/src/type.ts.html +8 -14
- package/coverage/lcov-report/src/utils/compose.ts.html +4 -4
- package/coverage/lcov-report/src/utils/config.ts.html +1 -1
- package/coverage/lcov-report/src/utils/editor.ts.html +2 -2
- package/coverage/lcov-report/src/utils/index.html +1 -1
- package/coverage/lcov-report/src/utils/index.ts.html +1 -1
- package/coverage/lcov-report/src/utils/logger.ts.html +1 -1
- package/coverage/lcov-report/src/utils/props.ts.html +59 -2
- package/coverage/lcov-report/src/utils/scroll-viewer.ts.html +1 -1
- package/coverage/lcov-report/src/utils/undo-redo.ts.html +1 -1
- package/coverage/lcov.info +1623 -1354
- package/dist/style.css +39 -18
- package/dist/tmagic-editor.es.js +598 -412
- package/dist/tmagic-editor.es.js.map +1 -1
- package/dist/tmagic-editor.umd.js +595 -408
- package/dist/tmagic-editor.umd.js.map +1 -1
- package/dist/types/src/Editor.vue.d.ts +1 -1
- package/dist/types/src/components/ToolButton.vue.d.ts +12 -1
- package/dist/types/src/index.d.ts +1 -0
- package/dist/types/src/layouts/sidebar/ComponentListPanel.vue.d.ts +1 -0
- package/dist/types/src/layouts/workspace/PageBar.vue.d.ts +2 -0
- package/dist/types/src/services/history.d.ts +1 -0
- package/dist/types/src/services/props.d.ts +2 -2
- package/dist/types/src/type.d.ts +6 -8
- package/dist/types/src/utils/polyfills.d.ts +0 -0
- package/package.json +8 -7
- package/src/components/ContentMenu.vue +107 -0
- package/src/components/ToolButton.vue +66 -27
- package/src/index.ts +2 -0
- package/src/layouts/Framework.vue +6 -6
- package/src/layouts/sidebar/ComponentListPanel.vue +23 -1
- package/src/layouts/sidebar/LayerMenu.vue +91 -72
- package/src/layouts/sidebar/LayerPanel.vue +23 -49
- package/src/layouts/workspace/PageBar.vue +35 -6
- package/src/layouts/workspace/Stage.vue +41 -44
- package/src/layouts/workspace/ViewerMenu.vue +104 -67
- package/src/layouts/workspace/Workspace.vue +2 -2
- package/src/services/editor.ts +32 -1
- package/src/services/history.ts +7 -0
- package/src/services/props.ts +2 -3
- package/src/theme/common/var.scss +1 -0
- package/src/theme/component-list-panel.scss +2 -0
- package/src/theme/content-menu.scss +33 -26
- package/src/theme/layer-panel.scss +1 -1
- package/src/theme/page-bar.scss +22 -1
- package/src/type.ts +6 -8
- package/src/utils/editor.ts +1 -1
- package/src/utils/polyfills.ts +22 -0
- package/src/utils/props.ts +19 -0
- package/coverage/lcov-report/Icon.vue.html +0 -172
- package/coverage/lcov-report/ToolButton.vue.html +0 -655
- package/coverage/lcov-report/layouts/sidebar/index.html +0 -116
- package/coverage/lcov-report/utils/index.html +0 -116
- package/coverage/lcov-report/utils/undo-redo.ts.html +0 -313
- package/dist/types/src/layouts/sidebar/LayerPanel.vue.d.ts +0 -980
- package/dist/types/src/layouts/workspace/Stage.vue.d.ts +0 -188
- package/dist/types/src/layouts/workspace/ViewerMenu.vue.d.ts +0 -18
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">69.33% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>52/75</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">47.
|
|
33
|
+
<span class="strong">47.41% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>55/116</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">69.56% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>16/23</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">80.64% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>50/62</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -253,7 +253,46 @@
|
|
|
253
253
|
<a name='L188'></a><a href='#L188'>188</a>
|
|
254
254
|
<a name='L189'></a><a href='#L189'>189</a>
|
|
255
255
|
<a name='L190'></a><a href='#L190'>190</a>
|
|
256
|
-
<a name='L191'></a><a href='#L191'>191</a
|
|
256
|
+
<a name='L191'></a><a href='#L191'>191</a>
|
|
257
|
+
<a name='L192'></a><a href='#L192'>192</a>
|
|
258
|
+
<a name='L193'></a><a href='#L193'>193</a>
|
|
259
|
+
<a name='L194'></a><a href='#L194'>194</a>
|
|
260
|
+
<a name='L195'></a><a href='#L195'>195</a>
|
|
261
|
+
<a name='L196'></a><a href='#L196'>196</a>
|
|
262
|
+
<a name='L197'></a><a href='#L197'>197</a>
|
|
263
|
+
<a name='L198'></a><a href='#L198'>198</a>
|
|
264
|
+
<a name='L199'></a><a href='#L199'>199</a>
|
|
265
|
+
<a name='L200'></a><a href='#L200'>200</a>
|
|
266
|
+
<a name='L201'></a><a href='#L201'>201</a>
|
|
267
|
+
<a name='L202'></a><a href='#L202'>202</a>
|
|
268
|
+
<a name='L203'></a><a href='#L203'>203</a>
|
|
269
|
+
<a name='L204'></a><a href='#L204'>204</a>
|
|
270
|
+
<a name='L205'></a><a href='#L205'>205</a>
|
|
271
|
+
<a name='L206'></a><a href='#L206'>206</a>
|
|
272
|
+
<a name='L207'></a><a href='#L207'>207</a>
|
|
273
|
+
<a name='L208'></a><a href='#L208'>208</a>
|
|
274
|
+
<a name='L209'></a><a href='#L209'>209</a>
|
|
275
|
+
<a name='L210'></a><a href='#L210'>210</a>
|
|
276
|
+
<a name='L211'></a><a href='#L211'>211</a>
|
|
277
|
+
<a name='L212'></a><a href='#L212'>212</a>
|
|
278
|
+
<a name='L213'></a><a href='#L213'>213</a>
|
|
279
|
+
<a name='L214'></a><a href='#L214'>214</a>
|
|
280
|
+
<a name='L215'></a><a href='#L215'>215</a>
|
|
281
|
+
<a name='L216'></a><a href='#L216'>216</a>
|
|
282
|
+
<a name='L217'></a><a href='#L217'>217</a>
|
|
283
|
+
<a name='L218'></a><a href='#L218'>218</a>
|
|
284
|
+
<a name='L219'></a><a href='#L219'>219</a>
|
|
285
|
+
<a name='L220'></a><a href='#L220'>220</a>
|
|
286
|
+
<a name='L221'></a><a href='#L221'>221</a>
|
|
287
|
+
<a name='L222'></a><a href='#L222'>222</a>
|
|
288
|
+
<a name='L223'></a><a href='#L223'>223</a>
|
|
289
|
+
<a name='L224'></a><a href='#L224'>224</a>
|
|
290
|
+
<a name='L225'></a><a href='#L225'>225</a>
|
|
291
|
+
<a name='L226'></a><a href='#L226'>226</a>
|
|
292
|
+
<a name='L227'></a><a href='#L227'>227</a>
|
|
293
|
+
<a name='L228'></a><a href='#L228'>228</a>
|
|
294
|
+
<a name='L229'></a><a href='#L229'>229</a>
|
|
295
|
+
<a name='L230'></a><a href='#L230'>230</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
257
296
|
<span class="cline-any cline-neutral"> </span>
|
|
258
297
|
<span class="cline-any cline-neutral"> </span>
|
|
259
298
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -293,15 +332,28 @@
|
|
|
293
332
|
<span class="cline-any cline-neutral"> </span>
|
|
294
333
|
<span class="cline-any cline-neutral"> </span>
|
|
295
334
|
<span class="cline-any cline-neutral"> </span>
|
|
296
|
-
<span class="cline-any cline-yes">2x</span>
|
|
297
|
-
<span class="cline-any cline-yes">2x</span>
|
|
298
335
|
<span class="cline-any cline-neutral"> </span>
|
|
299
|
-
<span class="cline-any cline-yes">2x</span>
|
|
300
336
|
<span class="cline-any cline-neutral"> </span>
|
|
301
|
-
<span class="cline-any cline-yes">2x</span>
|
|
302
337
|
<span class="cline-any cline-neutral"> </span>
|
|
303
338
|
<span class="cline-any cline-neutral"> </span>
|
|
304
|
-
<span class="cline-any cline-
|
|
339
|
+
<span class="cline-any cline-neutral"> </span>
|
|
340
|
+
<span class="cline-any cline-neutral"> </span>
|
|
341
|
+
<span class="cline-any cline-neutral"> </span>
|
|
342
|
+
<span class="cline-any cline-neutral"> </span>
|
|
343
|
+
<span class="cline-any cline-neutral"> </span>
|
|
344
|
+
<span class="cline-any cline-neutral"> </span>
|
|
345
|
+
<span class="cline-any cline-neutral"> </span>
|
|
346
|
+
<span class="cline-any cline-neutral"> </span>
|
|
347
|
+
<span class="cline-any cline-neutral"> </span>
|
|
348
|
+
<span class="cline-any cline-yes">4x</span>
|
|
349
|
+
<span class="cline-any cline-yes">4x</span>
|
|
350
|
+
<span class="cline-any cline-neutral"> </span>
|
|
351
|
+
<span class="cline-any cline-yes">4x</span>
|
|
352
|
+
<span class="cline-any cline-neutral"> </span>
|
|
353
|
+
<span class="cline-any cline-yes">4x</span>
|
|
354
|
+
<span class="cline-any cline-neutral"> </span>
|
|
355
|
+
<span class="cline-any cline-neutral"> </span>
|
|
356
|
+
<span class="cline-any cline-yes">4x</span>
|
|
305
357
|
<span class="cline-any cline-neutral"> </span>
|
|
306
358
|
<span class="cline-any cline-neutral"> </span>
|
|
307
359
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -316,19 +368,24 @@
|
|
|
316
368
|
<span class="cline-any cline-neutral"> </span>
|
|
317
369
|
<span class="cline-any cline-neutral"> </span>
|
|
318
370
|
<span class="cline-any cline-neutral"> </span>
|
|
319
|
-
<span class="cline-any cline-yes">12x</span>
|
|
320
|
-
<span class="cline-any cline-yes">12x</span>
|
|
321
371
|
<span class="cline-any cline-neutral"> </span>
|
|
322
|
-
<span class="cline-any cline-yes">12x</span>
|
|
323
|
-
<span class="cline-any cline-yes">12x</span>
|
|
324
|
-
<span class="cline-any cline-yes">12x</span>
|
|
325
372
|
<span class="cline-any cline-neutral"> </span>
|
|
326
|
-
<span class="cline-any cline-yes">12x</span>
|
|
327
|
-
<span class="cline-any cline-yes">12x</span>
|
|
328
373
|
<span class="cline-any cline-neutral"> </span>
|
|
329
|
-
<span class="cline-any cline-
|
|
330
|
-
<span class="cline-any cline-
|
|
331
|
-
<span class="cline-any cline-yes">
|
|
374
|
+
<span class="cline-any cline-neutral"> </span>
|
|
375
|
+
<span class="cline-any cline-neutral"> </span>
|
|
376
|
+
<span class="cline-any cline-yes">45x</span>
|
|
377
|
+
<span class="cline-any cline-yes">45x</span>
|
|
378
|
+
<span class="cline-any cline-neutral"> </span>
|
|
379
|
+
<span class="cline-any cline-yes">45x</span>
|
|
380
|
+
<span class="cline-any cline-yes">45x</span>
|
|
381
|
+
<span class="cline-any cline-yes">45x</span>
|
|
382
|
+
<span class="cline-any cline-neutral"> </span>
|
|
383
|
+
<span class="cline-any cline-yes">45x</span>
|
|
384
|
+
<span class="cline-any cline-yes">45x</span>
|
|
385
|
+
<span class="cline-any cline-neutral"> </span>
|
|
386
|
+
<span class="cline-any cline-yes">45x</span>
|
|
387
|
+
<span class="cline-any cline-yes">45x</span>
|
|
388
|
+
<span class="cline-any cline-yes">39x</span>
|
|
332
389
|
<span class="cline-any cline-neutral"> </span>
|
|
333
390
|
<span class="cline-any cline-yes">6x</span>
|
|
334
391
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -399,29 +456,36 @@
|
|
|
399
456
|
<span class="cline-any cline-neutral"> </span>
|
|
400
457
|
<span class="cline-any cline-neutral"> </span>
|
|
401
458
|
<span class="cline-any cline-neutral"> </span>
|
|
402
|
-
<span class="cline-any cline-yes">
|
|
403
|
-
<span class="cline-any cline-yes">
|
|
404
|
-
<span class="cline-any cline-yes">
|
|
405
|
-
<span class="cline-any cline-yes">
|
|
459
|
+
<span class="cline-any cline-yes">45x</span>
|
|
460
|
+
<span class="cline-any cline-yes">30x</span>
|
|
461
|
+
<span class="cline-any cline-yes">30x</span>
|
|
462
|
+
<span class="cline-any cline-yes">30x</span>
|
|
406
463
|
<span class="cline-any cline-yes">3x</span>
|
|
407
464
|
<span class="cline-any cline-neutral"> </span>
|
|
465
|
+
<span class="cline-any cline-yes">27x</span>
|
|
466
|
+
<span class="cline-any cline-neutral"> </span>
|
|
467
|
+
<span class="cline-any cline-neutral"> </span>
|
|
468
|
+
<span class="cline-any cline-yes">45x</span>
|
|
469
|
+
<span class="cline-any cline-yes">5x</span>
|
|
470
|
+
<span class="cline-any cline-yes">5x</span>
|
|
408
471
|
<span class="cline-any cline-yes">5x</span>
|
|
409
472
|
<span class="cline-any cline-neutral"> </span>
|
|
410
473
|
<span class="cline-any cline-neutral"> </span>
|
|
411
|
-
<span class="cline-any cline-yes">12x</span>
|
|
412
474
|
<span class="cline-any cline-neutral"> </span>
|
|
475
|
+
<span class="cline-any cline-yes">45x</span>
|
|
413
476
|
<span class="cline-any cline-neutral"> </span>
|
|
414
477
|
<span class="cline-any cline-neutral"> </span>
|
|
415
478
|
<span class="cline-any cline-neutral"> </span>
|
|
416
479
|
<span class="cline-any cline-neutral"> </span>
|
|
417
480
|
<span class="cline-any cline-neutral"> </span>
|
|
418
481
|
<span class="cline-any cline-neutral"> </span>
|
|
419
|
-
<span class="cline-any cline-yes">12x</span>
|
|
420
|
-
<span class="cline-any cline-yes">12x</span>
|
|
421
|
-
<span class="cline-any cline-yes">12x</span>
|
|
422
|
-
<span class="cline-any cline-yes">1x</span>
|
|
423
482
|
<span class="cline-any cline-neutral"> </span>
|
|
424
|
-
<span class="cline-any cline-yes">
|
|
483
|
+
<span class="cline-any cline-yes">45x</span>
|
|
484
|
+
<span class="cline-any cline-yes">45x</span>
|
|
485
|
+
<span class="cline-any cline-yes">45x</span>
|
|
486
|
+
<span class="cline-any cline-yes">22x</span>
|
|
487
|
+
<span class="cline-any cline-neutral"> </span>
|
|
488
|
+
<span class="cline-any cline-yes">23x</span>
|
|
425
489
|
<span class="cline-any cline-neutral"> </span>
|
|
426
490
|
<span class="cline-any cline-neutral"> </span>
|
|
427
491
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -441,29 +505,56 @@
|
|
|
441
505
|
<span class="cline-any cline-neutral"> </span>
|
|
442
506
|
<span class="cline-any cline-neutral"> </span>
|
|
443
507
|
<span class="cline-any cline-neutral"> </span>
|
|
508
|
+
<span class="cline-any cline-no"> </span>
|
|
509
|
+
<span class="cline-any cline-no"> </span>
|
|
510
|
+
<span class="cline-any cline-no"> </span>
|
|
511
|
+
<span class="cline-any cline-neutral"> </span>
|
|
512
|
+
<span class="cline-any cline-neutral"> </span>
|
|
513
|
+
<span class="cline-any cline-neutral"> </span>
|
|
514
|
+
<span class="cline-any cline-neutral"> </span>
|
|
515
|
+
<span class="cline-any cline-no"> </span>
|
|
516
|
+
<span class="cline-any cline-no"> </span>
|
|
517
|
+
<span class="cline-any cline-no"> </span>
|
|
518
|
+
<span class="cline-any cline-neutral"> </span>
|
|
519
|
+
<span class="cline-any cline-neutral"> </span>
|
|
520
|
+
<span class="cline-any cline-neutral"> </span>
|
|
521
|
+
<span class="cline-any cline-neutral"> </span>
|
|
444
522
|
<span class="cline-any cline-neutral"> </span>
|
|
445
523
|
<span class="cline-any cline-neutral"> </span>
|
|
446
524
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"><template>
|
|
447
|
-
<div
|
|
448
|
-
|
|
525
|
+
<div
|
|
526
|
+
v-if="display"
|
|
527
|
+
class="menu-item"
|
|
528
|
+
:class="item.type"
|
|
529
|
+
@click="clickHandler(item, $event)"
|
|
530
|
+
@mousedown="mousedownHandler(item, $event)"
|
|
531
|
+
@mouseup="mouseupHandler(item, $event)"
|
|
532
|
+
>
|
|
533
|
+
<el-divider v-if="item.type === 'divider'" :direction="item.direction || 'vertical'"></el-divider>
|
|
449
534
|
<div v-else-if="item.type === 'text'" class="menu-item-text">{{ item.text }}</div>
|
|
450
535
|
|
|
451
536
|
<template v-else-if="item.type === 'zoom'">
|
|
452
|
-
<
|
|
537
|
+
<tool-button
|
|
538
|
+
:data="{ type: 'button', icon: ZoomIn, handler: zoomInHandler, tooltip: '放大' }"
|
|
539
|
+
:event-type="eventType"
|
|
540
|
+
></tool-button>
|
|
453
541
|
<span class="menu-item-text" style="margin: 0 5px">{{ parseInt(`${zoom * 100}`, 10) }}%</span>
|
|
454
|
-
<
|
|
542
|
+
<tool-button
|
|
543
|
+
:data="{ type: 'button', icon: ZoomOut, handler: zoomOutHandler, tooltip: '缩小' }"
|
|
544
|
+
:event-type="eventType"
|
|
545
|
+
></tool-button>
|
|
455
546
|
</template>
|
|
456
547
|
|
|
457
|
-
<
|
|
458
|
-
v-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
<el-button size="small" type="text" :disabled="disabled"
|
|
464
|
-
><m-icon :icon="item.icon"></m-icon><span>{{ item.text }}</span></el-button
|
|
548
|
+
<template v-else-if="item.type === 'button'">
|
|
549
|
+
<el-tooltip v-if="item.tooltip" effect="dark" placement="bottom-start" :content="item.tooltip">
|
|
550
|
+
<el-button size="small" type="text" :disabled="disabled"
|
|
551
|
+
><m-icon v-if="item.icon" :icon="item.icon"></m-icon><span>{{ item.text }}</span></el-button
|
|
552
|
+
>
|
|
553
|
+
</el-tooltip>
|
|
554
|
+
<el-button v-else size="small" type="text" :disabled="disabled"
|
|
555
|
+
><m-icon v-if="item.icon" :icon="item.icon"></m-icon><span>{{ item.text }}</span></el-button
|
|
465
556
|
>
|
|
466
|
-
</
|
|
557
|
+
</template>
|
|
467
558
|
|
|
468
559
|
<el-dropdown v-else-if="item.type === 'dropdown'" trigger="click" :disabled="disabled" @command="dropdownHandler">
|
|
469
560
|
<span class="el-dropdown-link menubar-menu-button">
|
|
@@ -483,7 +574,7 @@
|
|
|
483
574
|
</template>
|
|
484
575
|
|
|
485
576
|
<script lang="ts">
|
|
486
|
-
import { computed, defineComponent, inject, PropType } from 'vue';
|
|
577
|
+
import { computed, defineComponent, inject, markRaw, PropType } from 'vue';
|
|
487
578
|
import { ArrowDown, Back, Delete, Grid, Right, ScaleToOriginal, ZoomIn, ZoomOut } from '@element-plus/icons';
|
|
488
579
|
|
|
489
580
|
import { NodeType } from '@tmagic/schema';
|
|
@@ -503,11 +594,16 @@ export default defineComponent({
|
|
|
503
594
|
display: false,
|
|
504
595
|
}),
|
|
505
596
|
},
|
|
597
|
+
|
|
598
|
+
eventType: {
|
|
599
|
+
type: String as PropType<'mousedown' | 'mouseup' | 'click'>,
|
|
600
|
+
default: 'click',
|
|
601
|
+
},
|
|
506
602
|
},
|
|
507
603
|
|
|
508
604
|
setup(props) {
|
|
509
605
|
const services = inject<Services>('services');
|
|
510
|
-
const uiService = services
|
|
606
|
+
const uiService = services?.uiService;
|
|
511
607
|
|
|
512
608
|
const zoom = computed(<span class="fstat-no" title="function not covered" >(): number => <span class="cstat-no" title="statement not covered" >u</span>iService?</span>.get<number>('zoom') ?? 1);
|
|
513
609
|
const showGuides = computed(<span class="fstat-no" title="function not covered" >(): boolean => <span class="cstat-no" title="statement not covered" >u</span>iService?</span>.get<boolean>('showGuides') ?? true);
|
|
@@ -532,7 +628,7 @@ export default defineComponent({
|
|
|
532
628
|
case 'delete':
|
|
533
629
|
return {
|
|
534
630
|
type: 'button',
|
|
535
|
-
icon: Delete,
|
|
631
|
+
icon: markRaw(Delete),
|
|
536
632
|
tooltip: '刪除',
|
|
537
633
|
disabled: () => services<span class="branch-0 cbranch-no" title="branch not covered" >?.e</span>ditorService.get('node')<span class="branch-0 cbranch-no" title="branch not covered" >?.t</span>ype === NodeType.PAGE,
|
|
538
634
|
handler: () => services<span class="branch-0 cbranch-no" title="branch not covered" >?.e</span>ditorService.remove(services<span class="branch-0 cbranch-no" title="branch not covered" >?.e</span>ditorService.get('node')),
|
|
@@ -540,7 +636,7 @@ export default defineComponent({
|
|
|
540
636
|
case 'undo':
|
|
541
637
|
return {
|
|
542
638
|
type: 'button',
|
|
543
|
-
icon: Back,
|
|
639
|
+
icon: markRaw(Back),
|
|
544
640
|
tooltip: '后退',
|
|
545
641
|
disabled: () => !services<span class="branch-0 cbranch-no" title="branch not covered" >?.h</span>istoryService.state.canUndo,
|
|
546
642
|
handler: () => services<span class="branch-0 cbranch-no" title="branch not covered" >?.e</span>ditorService.undo(),
|
|
@@ -548,7 +644,7 @@ export default defineComponent({
|
|
|
548
644
|
case 'redo':
|
|
549
645
|
return {
|
|
550
646
|
type: 'button',
|
|
551
|
-
icon: Right,
|
|
647
|
+
icon: markRaw(Right),
|
|
552
648
|
tooltip: '前进',
|
|
553
649
|
disabled: () => !services<span class="branch-0 cbranch-no" title="branch not covered" >?.h</span>istoryService.state.canRedo,
|
|
554
650
|
handler: () => services<span class="branch-0 cbranch-no" title="branch not covered" >?.e</span>ditorService.redo(),
|
|
@@ -556,28 +652,28 @@ export default defineComponent({
|
|
|
556
652
|
case 'zoom-in':
|
|
557
653
|
return {
|
|
558
654
|
type: 'button',
|
|
559
|
-
icon: ZoomIn,
|
|
655
|
+
icon: markRaw(ZoomIn),
|
|
560
656
|
tooltip: '放大',
|
|
561
657
|
handler: zoomInHandler,
|
|
562
658
|
};
|
|
563
659
|
case 'zoom-out':
|
|
564
660
|
return {
|
|
565
661
|
type: 'button',
|
|
566
|
-
icon: ZoomOut,
|
|
662
|
+
icon: markRaw(ZoomOut),
|
|
567
663
|
tooltip: '縮小',
|
|
568
664
|
handler: zoomOutHandler,
|
|
569
665
|
};
|
|
570
666
|
<span class="branch-7 cbranch-no" title="branch not covered" > case 'rule':</span>
|
|
571
667
|
<span class="cstat-no" title="statement not covered" > return {</span>
|
|
572
668
|
type: 'button',
|
|
573
|
-
icon: ScaleToOriginal,
|
|
669
|
+
icon: markRaw(ScaleToOriginal),
|
|
574
670
|
tooltip: showRule.value ? '隐藏标尺' : '显示标尺',
|
|
575
671
|
handler: <span class="fstat-no" title="function not covered" >() => <span class="cstat-no" title="statement not covered" >u</span>iService?</span>.set('showRule', !showRule.value),
|
|
576
672
|
};
|
|
577
673
|
<span class="branch-8 cbranch-no" title="branch not covered" > case 'guides':</span>
|
|
578
674
|
<span class="cstat-no" title="statement not covered" > return {</span>
|
|
579
675
|
type: 'button',
|
|
580
|
-
icon: Grid,
|
|
676
|
+
icon: markRaw(Grid),
|
|
581
677
|
tooltip: showGuides.value ? '隐藏参考线' : '显示参考线',
|
|
582
678
|
handler: <span class="fstat-no" title="function not covered" >() => <span class="cstat-no" title="statement not covered" >u</span>iService?</span>.set('showGuides', !showGuides.value),
|
|
583
679
|
};
|
|
@@ -597,10 +693,17 @@ export default defineComponent({
|
|
|
597
693
|
}
|
|
598
694
|
return item.value.disabled;
|
|
599
695
|
});
|
|
696
|
+
|
|
697
|
+
const buttonHandler = (item: MenuButton | MenuComponent, event: MouseEvent) => {
|
|
698
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (disabled.value) <span class="cstat-no" title="statement not covered" >return;</span>
|
|
699
|
+
if (typeof (item as MenuButton).handler === 'function' && services) {
|
|
700
|
+
(item as MenuButton).handler<span class="branch-0 cbranch-no" title="branch not covered" >?.(s</span>ervices, event);
|
|
701
|
+
}
|
|
702
|
+
};
|
|
600
703
|
|
|
601
704
|
return {
|
|
602
|
-
ZoomIn,
|
|
603
|
-
ZoomOut,
|
|
705
|
+
ZoomIn: markRaw(ZoomIn),
|
|
706
|
+
ZoomOut: markRaw(ZoomOut),
|
|
604
707
|
|
|
605
708
|
item,
|
|
606
709
|
zoom,
|
|
@@ -623,10 +726,24 @@ export default defineComponent({
|
|
|
623
726
|
}
|
|
624
727
|
},
|
|
625
728
|
|
|
626
|
-
|
|
627
|
-
<span class="missing-if-branch" title="if path not taken" >I</span>if (
|
|
628
|
-
if (
|
|
629
|
-
(item
|
|
729
|
+
clickHandler(item: MenuButton | MenuComponent, event: MouseEvent) {
|
|
730
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (props.eventType !== 'click') <span class="cstat-no" title="statement not covered" >return;</span>
|
|
731
|
+
if (item.type === 'button') {
|
|
732
|
+
buttonHandler(item, event);
|
|
733
|
+
}
|
|
734
|
+
},
|
|
735
|
+
|
|
736
|
+
<span class="fstat-no" title="function not covered" > mousedownHandler(</span>item: MenuButton | MenuComponent, event: MouseEvent) {
|
|
737
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (props.eventType !== 'mousedown') <span class="cstat-no" title="statement not covered" >return;</span></span>
|
|
738
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (item.type === 'button') {</span>
|
|
739
|
+
<span class="cstat-no" title="statement not covered" > buttonHandler(</span>item, event);
|
|
740
|
+
}
|
|
741
|
+
},
|
|
742
|
+
|
|
743
|
+
<span class="fstat-no" title="function not covered" > mouseupHandler(</span>item: MenuButton | MenuComponent, event: MouseEvent) {
|
|
744
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (props.eventType !== 'mouseup') <span class="cstat-no" title="statement not covered" >return;</span></span>
|
|
745
|
+
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (item.type === 'button') {</span>
|
|
746
|
+
<span class="cstat-no" title="statement not covered" > buttonHandler(</span>item, event);
|
|
630
747
|
}
|
|
631
748
|
},
|
|
632
749
|
};
|
|
@@ -640,7 +757,7 @@ export default defineComponent({
|
|
|
640
757
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
641
758
|
Code coverage generated by
|
|
642
759
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
643
|
-
at
|
|
760
|
+
at Sat May 07 2022 17:04:32 GMT+0800 (China Standard Time)
|
|
644
761
|
</div>
|
|
645
762
|
<script src="../../prettify.js"></script>
|
|
646
763
|
<script>
|
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">64.8% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>81/125</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">40.97% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>59/144</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">60.52% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>23/38</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">71.17% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>79/111</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -79,6 +79,21 @@
|
|
|
79
79
|
</tr>
|
|
80
80
|
</thead>
|
|
81
81
|
<tbody><tr>
|
|
82
|
+
<td class="file low" data-value="ContentMenu.vue"><a href="ContentMenu.vue.html">ContentMenu.vue</a></td>
|
|
83
|
+
<td data-value="40" class="pic low">
|
|
84
|
+
<div class="chart"><div class="cover-fill" style="width: 40%"></div><div class="cover-empty" style="width: 60%"></div></div>
|
|
85
|
+
</td>
|
|
86
|
+
<td data-value="40" class="pct low">40%</td>
|
|
87
|
+
<td data-value="30" class="abs low">12/30</td>
|
|
88
|
+
<td data-value="0" class="pct low">0%</td>
|
|
89
|
+
<td data-value="23" class="abs low">0/23</td>
|
|
90
|
+
<td data-value="25" class="pct low">25%</td>
|
|
91
|
+
<td data-value="8" class="abs low">2/8</td>
|
|
92
|
+
<td data-value="40" class="pct low">40%</td>
|
|
93
|
+
<td data-value="30" class="abs low">12/30</td>
|
|
94
|
+
</tr>
|
|
95
|
+
|
|
96
|
+
<tr>
|
|
82
97
|
<td class="file high" data-value="Icon.vue"><a href="Icon.vue.html">Icon.vue</a></td>
|
|
83
98
|
<td data-value="100" class="pic high">
|
|
84
99
|
<div class="chart"><div class="cover-fill cover-full" style="width: 100%"></div><div class="cover-empty" style="width: 0%"></div></div>
|
|
@@ -110,17 +125,17 @@
|
|
|
110
125
|
|
|
111
126
|
<tr>
|
|
112
127
|
<td class="file medium" data-value="ToolButton.vue"><a href="ToolButton.vue.html">ToolButton.vue</a></td>
|
|
113
|
-
<td data-value="
|
|
114
|
-
<div class="chart"><div class="cover-fill" style="width:
|
|
128
|
+
<td data-value="69.33" class="pic medium">
|
|
129
|
+
<div class="chart"><div class="cover-fill" style="width: 69%"></div><div class="cover-empty" style="width: 31%"></div></div>
|
|
115
130
|
</td>
|
|
116
|
-
<td data-value="
|
|
117
|
-
<td data-value="
|
|
118
|
-
<td data-value="47.
|
|
119
|
-
<td data-value="
|
|
120
|
-
<td data-value="
|
|
121
|
-
<td data-value="
|
|
122
|
-
<td data-value="
|
|
123
|
-
<td data-value="
|
|
131
|
+
<td data-value="69.33" class="pct medium">69.33%</td>
|
|
132
|
+
<td data-value="75" class="abs medium">52/75</td>
|
|
133
|
+
<td data-value="47.41" class="pct low">47.41%</td>
|
|
134
|
+
<td data-value="116" class="abs low">55/116</td>
|
|
135
|
+
<td data-value="69.56" class="pct medium">69.56%</td>
|
|
136
|
+
<td data-value="23" class="abs medium">16/23</td>
|
|
137
|
+
<td data-value="80.64" class="pct high">80.64%</td>
|
|
138
|
+
<td data-value="62" class="abs high">50/62</td>
|
|
124
139
|
</tr>
|
|
125
140
|
|
|
126
141
|
</tbody>
|
|
@@ -131,7 +146,7 @@
|
|
|
131
146
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
132
147
|
Code coverage generated by
|
|
133
148
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
134
|
-
at
|
|
149
|
+
at Sat May 07 2022 17:04:32 GMT+0800 (China Standard Time)
|
|
135
150
|
</div>
|
|
136
151
|
<script src="../../prettify.js"></script>
|
|
137
152
|
<script>
|
|
@@ -116,7 +116,7 @@
|
|
|
116
116
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
117
117
|
Code coverage generated by
|
|
118
118
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
119
|
-
at
|
|
119
|
+
at Sat May 07 2022 17:04:32 GMT+0800 (China Standard Time)
|
|
120
120
|
</div>
|
|
121
121
|
<script src="../prettify.js"></script>
|
|
122
122
|
<script>
|
|
@@ -199,7 +199,7 @@ export default defineComponent({
|
|
|
199
199
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
200
200
|
Code coverage generated by
|
|
201
201
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
202
|
-
at
|
|
202
|
+
at Sat May 07 2022 17:04:32 GMT+0800 (China Standard Time)
|
|
203
203
|
</div>
|
|
204
204
|
<script src="../../prettify.js"></script>
|
|
205
205
|
<script>
|
|
@@ -23,23 +23,23 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">75% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>12/16</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">45.83% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>
|
|
35
|
+
<span class='fraction'>11/24</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">66.66% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>
|
|
42
|
+
<span class='fraction'>4/6</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
@@ -260,20 +260,20 @@ export default defineComponent({
|
|
|
260
260
|
},
|
|
261
261
|
|
|
262
262
|
setup() {
|
|
263
|
-
const
|
|
263
|
+
const { editorService, uiService } = inject<Services>('services') || <span class="branch-1 cbranch-no" title="branch not covered" >{};</span>
|
|
264
264
|
|
|
265
|
-
const root = computed(() =>
|
|
265
|
+
const root = computed(<span class="fstat-no" title="function not covered" >() => <span class="cstat-no" title="statement not covered" >e</span>ditorService?</span>.get<MApp>('root'));
|
|
266
266
|
|
|
267
267
|
return {
|
|
268
268
|
root,
|
|
269
|
-
pageLength: computed(() =>
|
|
270
|
-
showSrc: computed(() =>
|
|
271
|
-
columnWidth: computed(() =>
|
|
269
|
+
pageLength: computed(() => editorService<span class="branch-0 cbranch-no" title="branch not covered" >?.g</span>et<number>('pageLength') || <span class="branch-1 cbranch-no" title="branch not covered" >0)</span>,
|
|
270
|
+
showSrc: computed(() => uiService<span class="branch-0 cbranch-no" title="branch not covered" >?.g</span>et<boolean>('showSrc')),
|
|
271
|
+
columnWidth: computed(() => uiService<span class="branch-0 cbranch-no" title="branch not covered" >?.g</span>et<GetColumnWidth>('columnWidth')),
|
|
272
272
|
|
|
273
273
|
<span class="fstat-no" title="function not covered" > saveCode(</span>value: string) {
|
|
274
274
|
<span class="cstat-no" title="statement not covered" > try {</span>
|
|
275
275
|
// eslint-disable-next-line no-eval
|
|
276
|
-
<span class="cstat-no" title="statement not covered" >
|
|
276
|
+
<span class="cstat-no" title="statement not covered" > editorService?</span>.set('root', eval(value));
|
|
277
277
|
} catch (e: any) {
|
|
278
278
|
<span class="cstat-no" title="statement not covered" > console.</span>error(e);
|
|
279
279
|
}
|
|
@@ -289,7 +289,7 @@ export default defineComponent({
|
|
|
289
289
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
290
290
|
Code coverage generated by
|
|
291
291
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
292
|
-
at
|
|
292
|
+
at Sat May 07 2022 17:04:32 GMT+0800 (China Standard Time)
|
|
293
293
|
</div>
|
|
294
294
|
<script src="../../prettify.js"></script>
|
|
295
295
|
<script>
|
|
@@ -193,7 +193,7 @@ export default defineComponent({
|
|
|
193
193
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
194
194
|
Code coverage generated by
|
|
195
195
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
196
|
-
at
|
|
196
|
+
at Sat May 07 2022 17:04:32 GMT+0800 (China Standard Time)
|
|
197
197
|
</div>
|
|
198
198
|
<script src="../../prettify.js"></script>
|
|
199
199
|
<script>
|
|
@@ -301,7 +301,7 @@ export default defineComponent({
|
|
|
301
301
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
302
302
|
Code coverage generated by
|
|
303
303
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
304
|
-
at
|
|
304
|
+
at Sat May 07 2022 17:04:32 GMT+0800 (China Standard Time)
|
|
305
305
|
</div>
|
|
306
306
|
<script src="../../prettify.js"></script>
|
|
307
307
|
<script>
|