2017-03-02 17:30:55 +08:00

363 lines
12 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html lang="en">
<head>
<title>Code coverage report for packages/dialog/src/dialog.js</title>
<meta charset="utf-8" />
<link rel="stylesheet" href="../../../prettify.css" />
<link rel="stylesheet" href="../../../base.css" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<style type='text/css'>
.coverage-summary .sorter {
background-image: url(../../../sort-arrow-sprite.png);
}
</style>
</head>
<body>
<div class='wrapper'>
<div class='pad1'>
<h1>
<a href="../../../index.html">all files</a> / <a href="index.html">packages/dialog/src/</a> dialog.js
</h1>
<div class='clearfix'>
<div class='fl pad1y space-right2'>
<span class="strong">42.59% </span>
<span class="quiet">Statements</span>
<span class='fraction'>23/54</span>
</div>
<div class='fl pad1y space-right2'>
<span class="strong">15.38% </span>
<span class="quiet">Branches</span>
<span class='fraction'>4/26</span>
</div>
<div class='fl pad1y space-right2'>
<span class="strong">10% </span>
<span class="quiet">Functions</span>
<span class='fraction'>1/10</span>
</div>
<div class='fl pad1y space-right2'>
<span class="strong">32.61% </span>
<span class="quiet">Lines</span>
<span class='fraction'>15/46</span>
</div>
</div>
</div>
<div class='status-line low'></div>
<pre><table class="coverage">
<tr><td class="line-count quiet">1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100</td><td class="line-coverage quiet"><span class="cline-any cline-yes">1×</span>
<span class="cline-any cline-yes">1×</span>
<span class="cline-any cline-yes">1×</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">1×</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">1×</span>
<span class="cline-any cline-yes">1×</span>
<span class="cline-any cline-yes">1×</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">1×</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">1×</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">1×</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">1×</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">1×</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">1×</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-yes">1×</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-no">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span>
<span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import Vue from 'vue';
import Dialog from './dialog.vue';
import merge from 'src/utils/merge';
&nbsp;
const DialogConstructor = Vue.extend(Dialog);
&nbsp;
let currentDialog;
let instance;
let dialogQueue = [];
&nbsp;
const defaultCallback = <span class="fstat-no" title="function not covered" >action =&gt; {</span>
<span class="cstat-no" title="statement not covered" > if (currentDialog) {</span>
<span class="cstat-no" title="statement not covered" > l</span>et callback = currentDialog.callback;
&nbsp;
<span class="cstat-no" title="statement not covered" > if (typeof callback === 'function') {</span>
<span class="cstat-no" title="statement not covered" > c</span>allback(action);
}
&nbsp;
<span class="cstat-no" title="statement not covered" > if (currentDialog.resolve &amp;&amp; action === 'confirm') {</span>
<span class="cstat-no" title="statement not covered" > c</span>urrentDialog.resolve(action);
} else <span class="cstat-no" title="statement not covered" >if (currentDialog.reject &amp;&amp; action === 'cancel') {</span>
<span class="cstat-no" title="statement not covered" > c</span>urrentDialog.reject(action);
}
}
};
&nbsp;
const initInstance = <span class="fstat-no" title="function not covered" >() =&gt; {</span>
<span class="cstat-no" title="statement not covered" > i</span>nstance = new DialogConstructor({
el: document.createElement('div')
});
&nbsp;
<span class="cstat-no" title="statement not covered" > i</span>nstance.callback = defaultCallback;
};
&nbsp;
const showNextDialog = <span class="fstat-no" title="function not covered" >() =&gt; {</span>
<span class="cstat-no" title="statement not covered" > if (!instance) {</span>
<span class="cstat-no" title="statement not covered" > i</span>nitInstance();
}
&nbsp;
<span class="cstat-no" title="statement not covered" > if (!instance.value &amp;&amp; dialogQueue.length &gt; 0) {</span>
<span class="cstat-no" title="statement not covered" > c</span>urrentDialog = dialogQueue.shift();
&nbsp;
<span class="cstat-no" title="statement not covered" > l</span>et options = currentDialog.options;
&nbsp;
<span class="cstat-no" title="statement not covered" > for (let prop in options) {</span>
<span class="cstat-no" title="statement not covered" > if (options.hasOwnProperty(prop)) {</span>
<span class="cstat-no" title="statement not covered" > i</span>nstance[prop] = options[prop];
}
}
&nbsp;
<span class="cstat-no" title="statement not covered" > if (options.callback === undefined) {</span>
<span class="cstat-no" title="statement not covered" > i</span>nstance.callback = defaultCallback;
}
&nbsp;
<span class="cstat-no" title="statement not covered" > d</span>ocument.body.appendChild(instance.$el);
&nbsp;
<span class="cstat-no" title="statement not covered" > V</span>ue.nextTick(<span class="fstat-no" title="function not covered" >() =&gt; {</span>
<span class="cstat-no" title="statement not covered" > i</span>nstance.value = true;
});
}
};
&nbsp;
var DialogBox = <span class="fstat-no" title="function not covered" >options =&gt; {</span>
<span class="cstat-no" title="statement not covered" > r</span>eturn new Promise(<span class="fstat-no" title="function not covered" >(resolve, reject) =&gt; {</span> // eslint-disable-line
<span class="cstat-no" title="statement not covered" > d</span>ialogQueue.push({
options: merge({}, options),
callback: options.callback,
resolve: resolve,
reject: reject
});
&nbsp;
<span class="cstat-no" title="statement not covered" > s</span>howNextDialog();
});
};
&nbsp;
DialogBox.alert = <span class="fstat-no" title="function not covered" >function(options) {</span>
<span class="cstat-no" title="statement not covered" > r</span>eturn DialogBox(merge({
type: 'alert',
closeOnClickOverlay: false,
showCancelButton: false
}, options));
};
&nbsp;
DialogBox.confirm = <span class="fstat-no" title="function not covered" >function(options) {</span>
<span class="cstat-no" title="statement not covered" > r</span>eturn DialogBox(merge({
type: 'confirm',
closeOnClickOverlay: true,
showCancelButton: true
}, options));
};
&nbsp;
DialogBox.close = <span class="fstat-no" title="function not covered" >function() {</span>
<span class="cstat-no" title="statement not covered" > i</span>nstance.value = false;
<span class="cstat-no" title="statement not covered" > d</span>ialogQueue = [];
<span class="cstat-no" title="statement not covered" > c</span>urrentDialog = null;
};
&nbsp;
export default DialogBox;
&nbsp;
&nbsp;</pre></td></tr>
</table></pre>
<div class='push'></div><!-- for sticky footer -->
</div><!-- /wrapper -->
<div class='footer quiet pad2 space-top1 center small'>
Code coverage
generated by <a href="http://istanbul-js.org/" target="_blank">istanbul</a> at Thu Mar 02 2017 17:21:26 GMT+0800 (CST)
</div>
</div>
<script src="../../../prettify.js"></script>
<script>
window.onload = function () {
if (typeof prettyPrint === 'function') {
prettyPrint();
}
};
</script>
<script src="../../../sorter.js"></script>
</body>
</html>