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 | 1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
1×
| (function(global){global.wrappers['/Users/lqez/Dev/summernote/test/base/editing/style.spec.js']=[function(require,module,exports,__dirname,__filename){ "use strict";
/**
* Style.spec.js
* (c) 2015~ Summernote Team
* summernote may be freely distributed under the MIT license./
*/
exports.__esModule = true;
var chai_1 = require("chai");
var jquery_1 = require("jquery");
var range_1 = require("../../../src/js/base/core/range");
var Style_1 = require("../../../src/js/base/editing/Style");
var expect = chai_1["default"].expect;
describe('base:editing.Style', function () {
var style = new Style_1["default"]();
describe('styleNodes', function () {
it('should wrap selected text with span', function () {
var $cont = jquery_1["default"]('<div class="note-editable"><p>text</p></div>');
var $p = $cont.find('p');
var rng = range_1["default"].create($p[0].firstChild, 0, $p[0].firstChild, 4);
style.styleNodes(rng);
expect($cont.html()).to.deep.equal('<p><span>text</span></p>');
});
it('should split text and wrap selected text with span', function () {
var $cont = jquery_1["default"]('<div class="note-editable"><p>text</p></div>');
var $p = $cont.find('p');
var rng = range_1["default"].create($p[0].firstChild, 1, $p[0].firstChild, 3);
style.styleNodes(rng);
expect($cont.html()).to.deep.equal('<p>t<span>ex</span>t</p>');
});
it('should split text and insert span', function () {
var $cont = jquery_1["default"]('<div class="note-editable"><p>text</p></div>');
var $p = $cont.find('p');
var rng = range_1["default"].create($p[0].firstChild, 2, $p[0].firstChild, 2);
style.styleNodes(rng);
expect($cont.html()).to.deep.equal('<p>te<span></span>xt</p>');
});
it('should just return a parent span', function () {
var $cont = jquery_1["default"]('<div class="note-editable"><p><span>text</span></p></div>');
var $span = $cont.find('span');
var rng = range_1["default"].create($span[0].firstChild, 0, $span[0].firstChild, 4);
style.styleNodes(rng);
expect($cont.html()).to.deep.equal('<p><span>text</span></p>');
});
it('should wrap each texts with span', function () {
var $cont = jquery_1["default"]('<div class="note-editable"><p><b>bold</b><span>span</span></p></div>');
var $b = $cont.find('b');
var $span = $cont.find('span');
var rng = range_1["default"].create($b[0].firstChild, 2, $span[0].firstChild, 2);
style.styleNodes(rng);
expect($cont.html()).to.deep.equal('<p><b>bo<span>ld</span></b><span><span>sp</span>an</span></p>');
});
it('should wrap each texts with span except not a single blood line', function () {
var $cont = jquery_1["default"]('<div class="note-editable"><p><b>bold</b><span>span</span></p></div>');
var $b = $cont.find('b');
var $span = $cont.find('span');
var rng = range_1["default"].create($b[0].firstChild, 2, $span[0].firstChild, 4);
style.styleNodes(rng);
expect($cont.html()).to.deep.equal('<p><b>bo<span>ld</span></b><span>span</span></p>');
});
it('should expand b tag when providing the expandClosestSibling option', function () {
var $cont = jquery_1["default"]('<div class="note-editable"><p>text<b>bold</b></p></div>');
var $p = $cont.find('p');
var rng = range_1["default"].create($p[0].firstChild, 0, $p[0].firstChild, 4);
style.styleNodes(rng, { nodeName: 'B', expandClosestSibling: true });
expect($cont.html()).to.deep.equal('<p><b>textbold</b></p>');
});
it('should not expand b tag when providing the onlyPartialContains option', function () {
var $cont = jquery_1["default"]('<div class="note-editable"><p>text<b>bold</b></p></div>');
var $p = $cont.find('p');
var rng = range_1["default"].create($p[0].firstChild, 0, $p[0].firstChild, 4);
style.styleNodes(rng, { nodeName: 'B', expandClosestSibling: true, onlyPartialContains: true });
expect($cont.html()).to.deep.equal('<p><b>text</b><b>bold</b></p>');
});
});
});
},'test/base/editing/style.spec.js',{"chai":"/Users/lqez/Dev/summernote/node_modules/chai/index.js","jquery":"/Users/lqez/Dev/summernote/node_modules/jquery/dist/jquery.js","../../../src/js/base/core/range":"/Users/lqez/Dev/summernote/src/js/base/core/range.js","../../../src/js/base/editing/Style":"/Users/lqez/Dev/summernote/src/js/base/editing/Style.js"}];})(this);
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuc3BlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInN0eWxlLnNwZWMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7O0dBSUc7O0FBRUgsNkJBQXdCO0FBQ3hCLGlDQUF1QjtBQUN2Qix5REFBb0Q7QUFDcEQsNERBQXVEO0FBRXZELElBQUksTUFBTSxHQUFHLGlCQUFJLENBQUMsTUFBTSxDQUFDO0FBRXpCLFFBQVEsQ0FBQyxvQkFBb0IsRUFBRTtJQUM3QixJQUFJLEtBQUssR0FBRyxJQUFJLGtCQUFLLEVBQUUsQ0FBQztJQUV4QixRQUFRLENBQUMsWUFBWSxFQUFFO1FBQ3JCLEVBQUUsQ0FBQyxxQ0FBcUMsRUFBRTtZQUN4QyxJQUFJLEtBQUssR0FBRyxtQkFBQyxDQUFDLDhDQUE4QyxDQUFDLENBQUM7WUFDOUQsSUFBSSxFQUFFLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN6QixJQUFJLEdBQUcsR0FBRyxrQkFBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ2pFLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7WUFFdEIsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLDBCQUEwQixDQUFDLENBQUM7UUFDakUsQ0FBQyxDQUFDLENBQUM7UUFFSCxFQUFFLENBQUMsb0RBQW9ELEVBQUU7WUFDdkQsSUFBSSxLQUFLLEdBQUcsbUJBQUMsQ0FBQyw4Q0FBOEMsQ0FBQyxDQUFDO1lBQzlELElBQUksRUFBRSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDekIsSUFBSSxHQUFHLEdBQUcsa0JBQUssQ0FBQyxNQUFN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QUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ2pFLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxvQkFBb0IsRUFBRSxJQUFJLEVBQUUsbUJBQW1CLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUVoRyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsK0JBQStCLENBQUMsQ0FBQztRQUN0RSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFN0eWxlLnNwZWMuanNcbiAqIChjKSAyMDE1fiBTdW1tZXJub3RlIFRlYW1cbiAqIHN1bW1lcm5vdGUgbWF5IGJlIGZyZWVseSBkaXN0cmlidXRlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UuL1xuICovXG5cbmltcG9ydCBjaGFpIGZyb20gJ2NoYWknO1xuaW1wb3J0ICQgZnJvbSAnanF1ZXJ5JztcbmltcG9ydCByYW5nZSBmcm9tICcuLi8uLi8uLi9zcmMvanMvYmFzZS9jb3JlL3JhbmdlJztcbmltcG9ydCBTdHlsZSBmcm9tICcuLi8uLi8uLi9zcmMvanMvYmFzZS9lZGl0aW5nL1N0eWxlJztcblxudmFyIGV4cGVjdCA9IGNoYWkuZXhwZWN0O1xuXG5kZXNjcmliZSgnYmFzZTplZGl0aW5nLlN0eWxlJywgKCkgPT4ge1xuICB2YXIgc3R5bGUgPSBuZXcgU3R5bGUoKTtcblxuICBkZXNjcmliZSgnc3R5bGVOb2RlcycsICgpID0+IHtcbiAgICBpdCgnc2hvdWxkIHdyYXAgc2VsZWN0ZWQgdGV4dCB3aXRoIHNwYW4nLCAoKSA9PiB7XG4gICAgICB2YXIgJGNvbnQgPSAkKCc8ZGl2IGNsYXNzPVwibm90ZS1lZGl0YWJsZVwiPjxwPnRleHQ8L3A+PC9kaXY+Jyk7XG4gICAgICB2YXIgJHAgPSAkY29udC5maW5kKCdwJyk7XG4gICAgICB2YXIgcm5nID0gcmFuZ2UuY3JlYXRlKCRwWzBdLmZpcnN0Q2hpbGQsIDAsICRwWzBdLmZpcnN0Q2hpbGQsIDQpO1xuICAgICAgc3R5bGUuc3R5bGVOb2RlcyhybmcpO1xuXG4gICAgICBleHBlY3QoJGNvbnQuaHRtbCgpKS50by5kZWVwLmVxdWFsKCc8cD48c3Bhbj50ZXh0PC9zcGFuPjwvcD4nKTtcbiAgICB9KTtcblxuICAgIGl0KCdzaG91bGQgc3BsaXQgdGV4dCBhbmQgd3JhcCBzZWxlY3RlZCB0ZXh0IHdpdGggc3BhbicsICgpID0+IHtcbiAgICAgIHZhciAkY29udCA9ICQoJzxkaXYgY2xhc3M9XCJub3RlLWVkaXRhYmxlXCI+PHA+dGV4dDwvcD48L2Rpdj4nKTtcbiAgICAgIHZhciAkcCA9ICRjb250LmZpbmQoJ3AnKTtcbiAgICAgIHZhciBybmcgPSByYW5nZS5jcmVhdGUoJHBbMF0uZmlyc3RDaGlsZCwgMSwgJHBbMF0uZmlyc3RDaGlsZCwgMyk7XG4gICAgICBzdHlsZS5zdHlsZU5vZGVzKHJuZyk7XG5cbiAgICAgIGV4cGVjdCgkY29udC5odG1sKCkpLnRvLmRlZXAuZXF1YWwoJzxwPnQ8c3Bhbj5leDwvc3Bhbj50PC9wPicpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBzcGxpdCB0ZXh0IGFuZCBpbnNlcnQgc3BhbicsICgpID0+IHtcbiAgICAgIHZhciAkY29udCA9ICQoJzxkaXYgY2xhc3M9XCJub3RlLWVkaXRhYmxlXCI+PHA+dGV4dDwvcD48L2Rpdj4nKTtcbiAgICAgIHZhciAkcCA9ICRjb250LmZpbmQoJ3AnKTtcbiAgICAgIHZhciBybmcgPSByYW5nZS5jcmVhdGUoJHBbMF0uZmlyc3RDaGlsZCwgMiwgJHBbMF0uZmlyc3RDaGlsZCwgMik7XG4gICAgICBzdHlsZS5zdHlsZU5vZGVzKHJuZyk7XG5cbiAgICAgIGV4cGVjdCgkY29udC5odG1sKCkpLnRvLmRlZXAuZXF1YWwoJzxwPnRlPHNwYW4+PC9zcGFuPnh0PC9wPicpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBqdXN0IHJldHVybiBhIHBhcmVudCBzcGFuJywgKCkgPT4ge1xuICAgICAgdmFyICRjb250ID0gJCgnPGRpdiBjbGFzcz1cIm5vdGUtZWRpdGFibGVcIj48cD48c3Bhbj50ZXh0PC9zcGFuPjwvcD48L2Rpdj4nKTtcbiAgICAgIHZhciAkc3BhbiA9ICRjb250LmZpbmQoJ3NwYW4nKTtcbiAgICAgIHZhciBybmcgPSByYW5nZS5jcmVhdGUoJHNwYW5bMF0uZmlyc3RDaGlsZCwgMCwgJHNwYW5bMF0uZmlyc3RDaGlsZCwgNCk7XG4gICAgICBzdHlsZS5zdHlsZU5vZGVzKHJuZyk7XG5cbiAgICAgIGV4cGVjdCgkY29udC5odG1sKCkpLnRvLmRlZXAuZXF1YWwoJzxwPjxzcGFuPnRleHQ8L3NwYW4+PC9wPicpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCB3cmFwIGVhY2ggdGV4dHMgd2l0aCBzcGFuJywgKCkgPT4ge1xuICAgICAgdmFyICRjb250ID0gJCgnPGRpdiBjbGFzcz1cIm5vdGUtZWRpdGFibGVcIj48cD48Yj5ib2xkPC9iPjxzcGFuPnNwYW48L3NwYW4+PC9wPjwvZGl2PicpO1xuICAgICAgdmFyICRiID0gJGNvbnQuZmluZCgnYicpO1xuICAgICAgdmFyICRzcGFuID0gJGNvbnQuZmluZCgnc3BhbicpO1xuICAgICAgdmFyIHJuZyA9IHJhbmdlLmNyZWF0ZSgkYlswXS5maXJzdENoaWxkLCAyLCAkc3BhblswXS5maXJzdENoaWxkLCAyKTtcbiAgICAgIHN0eWxlLnN0eWxlTm9kZXMocm5nKTtcblxuICAgICAgZXhwZWN0KCRjb250Lmh0bWwoKSkudG8uZGVlcC5lcXVhbCgnPHA+PGI+Ym88c3Bhbj5sZDwvc3Bhbj48L2I+PHNwYW4+PHNwYW4+c3A8L3NwYW4+YW48L3NwYW4+PC9wPicpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCB3cmFwIGVhY2ggdGV4dHMgd2l0aCBzcGFuIGV4Y2VwdCBub3QgYSBzaW5nbGUgYmxvb2QgbGluZScsICgpID0+IHtcbiAgICAgIHZhciAkY29udCA9ICQoJzxkaXYgY2xhc3M9XCJub3RlLWVkaXRhYmxlXCI+PHA+PGI+Ym9sZDwvYj48c3Bhbj5zcGFuPC9zcGFuPjwvcD48L2Rpdj4nKTtcbiAgICAgIHZhciAkYiA9ICRjb250LmZpbmQoJ2InKTtcbiAgICAgIHZhciAkc3BhbiA9ICRjb250LmZpbmQoJ3NwYW4nKTtcbiAgICAgIHZhciBybmcgPSByYW5nZS5jcmVhdGUoJGJbMF0uZmlyc3RDaGlsZCwgMiwgJHNwYW5bMF0uZmlyc3RDaGlsZCwgNCk7XG4gICAgICBzdHlsZS5zdHlsZU5vZGVzKHJuZyk7XG5cbiAgICAgIGV4cGVjdCgkY29udC5odG1sKCkpLnRvLmRlZXAuZXF1YWwoJzxwPjxiPmJvPHNwYW4+bGQ8L3NwYW4+PC9iPjxzcGFuPnNwYW48L3NwYW4+PC9wPicpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3Nob3VsZCBleHBhbmQgYiB0YWcgd2hlbiBwcm92aWRpbmcgdGhlIGV4cGFuZENsb3Nlc3RTaWJsaW5nIG9wdGlvbicsICgpID0+IHtcbiAgICAgIHZhciAkY29udCA9ICQoJzxkaXYgY2xhc3M9XCJub3RlLWVkaXRhYmxlXCI+PHA+dGV4dDxiPmJvbGQ8L2I+PC9wPjwvZGl2PicpO1xuICAgICAgdmFyICRwID0gJGNvbnQuZmluZCgncCcpO1xuICAgICAgdmFyIHJuZyA9IHJhbmdlLmNyZWF0ZSgkcFswXS5maXJzdENoaWxkLCAwLCAkcFswXS5maXJzdENoaWxkLCA0KTtcbiAgICAgIHN0eWxlLnN0eWxlTm9kZXMocm5nLCB7IG5vZGVOYW1lOiAnQicsIGV4cGFuZENsb3Nlc3RTaWJsaW5nOiB0cnVlIH0pO1xuXG4gICAgICBleHBlY3QoJGNvbnQuaHRtbCgpKS50by5kZWVwLmVxdWFsKCc8cD48Yj50ZXh0Ym9sZDwvYj48L3A+Jyk7XG4gICAgfSk7XG5cbiAgICBpdCgnc2hvdWxkIG5vdCBleHBhbmQgYiB0YWcgd2hlbiBwcm92aWRpbmcgdGhlIG9ubHlQYXJ0aWFsQ29udGFpbnMgb3B0aW9uJywgKCkgPT4ge1xuICAgICAgdmFyICRjb250ID0gJCgnPGRpdiBjbGFzcz1cIm5vdGUtZWRpdGFibGVcIj48cD50ZXh0PGI+Ym9sZDwvYj48L3A+PC9kaXY+Jyk7XG4gICAgICB2YXIgJHAgPSAkY29udC5maW5kKCdwJyk7XG4gICAgICB2YXIgcm5nID0gcmFuZ2UuY3JlYXRlKCRwWzBdLmZpcnN0Q2hpbGQsIDAsICRwWzBdLmZpcnN0Q2hpbGQsIDQpO1xuICAgICAgc3R5bGUuc3R5bGVOb2RlcyhybmcsIHsgbm9kZU5hbWU6ICdCJywgZXhwYW5kQ2xvc2VzdFNpYmxpbmc6IHRydWUsIG9ubHlQYXJ0aWFsQ29udGFpbnM6IHRydWUgfSk7XG5cbiAgICAgIGV4cGVjdCgkY29udC5odG1sKCkpLnRvLmRlZXAuZXF1YWwoJzxwPjxiPnRleHQ8L2I+PGI+Ym9sZDwvYj48L3A+Jyk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
|