Skip to content

Commit

Permalink
Merge branch 'master' into temp-handlebars
Browse files Browse the repository at this point in the history
  • Loading branch information
jrchudy committed Jul 23, 2018
2 parents 19b69bb + 9a77aab commit 5c8a66f
Show file tree
Hide file tree
Showing 3 changed files with 668 additions and 197 deletions.
12 changes: 11 additions & 1 deletion js/utilities.js
Original file line number Diff line number Diff line change
Expand Up @@ -1956,6 +1956,7 @@

// Build button html and button dropdown html
var classes = [];
var classNotParsed;
var buttonHtml = '<button type="button" ';
var buttonDDHtml = '<button type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" ';

Expand All @@ -1970,7 +1971,16 @@
});
}

buttonHtml += ' class="btn btn-primary ' + classes.join(' ') + '">' + cTokens[1].content + '</button>';
var openBracketLastIndex = cTokens[1].content.lastIndexOf('{');
// '{' index > -1, meaning it exists in the string
// '}' index > '{' index, meaning it exists in the string in the right place (i.e. '{...}')
if (openBracketLastIndex > -1 && cTokens[1].content.lastIndexOf('}') > openBracketLastIndex) {
classNotParsed = cTokens[1].content.slice(0, openBracketLastIndex).trim();
} else {
classNotParsed = cTokens[1].content;
}

buttonHtml += ' class="btn btn-primary ' + classes.join(' ') + '">' + classNotParsed + '</button>';
buttonDDHtml += ' class="btn btn-primary dropdown-toggle ' + classes.join(' ') + '"><span class="caret"></span><span class="sr-only">Toggle Dropdown</span></button>';

// Build unordered list
Expand Down
9 changes: 7 additions & 2 deletions test/specs/print_utils/tests/01.print_utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ exports.execute = function (options) {
.toBe('<figure class="embed-block" style=""><figcaption class="embed-caption" style="">Chaise</figcaption><iframe src="https://dev.isrd.isi.edu/chaise/search" width="800" height="300" ></iframe></figure>');

// Check for iframe tag with a link and caption
var iframeMarkdown = ':::iframe [SOME LINK CAPTION](https://dev.isrd.isi.edu/chaise/search){height=400 link=https://dev.isrd.isi.edu/chaise/search} \n:::';
var iframeMarkdown = '::: iframe [SOME LINK CAPTION](https://dev.isrd.isi.edu/chaise/search){height=400 link=https://dev.isrd.isi.edu/chaise/search} \n:::';
var iframeHTML = '<figure class="embed-block" style=""><figcaption class="embed-caption" style=""><a href="https://dev.isrd.isi.edu/chaise/search" target="_blank">SOME LINK CAPTION</a></figcaption><iframe src="https://dev.isrd.isi.edu/chaise/search" height="400" ></iframe></figure>';
expect(printMarkdown(iframeMarkdown)).toBe(iframeHTML);

Expand All @@ -145,7 +145,7 @@ exports.execute = function (options) {


// Check for dropdown tag
var dropdownMarkdown = ':::dropdown MYCAPTION{.btn-lg} [CAPTION1](https://dev.isrd.isi.edu/chaise/search){.btn .btn-danger} [CAPTION2](https://dev.isrd.isi.edu/chaise/search) [CAPTION3](https://dev.isrd.isi.edu/chaise/search) \n:::';
var dropdownMarkdown = '::: dropdown MYCAPTION{.btn-lg} [CAPTION1](https://dev.isrd.isi.edu/chaise/search){.btn .btn-danger} [CAPTION2](https://dev.isrd.isi.edu/chaise/search) [CAPTION3](https://dev.isrd.isi.edu/chaise/search) \n:::';
var dropdownHTML = '<div class="btn-group markdown-dropdown"><button type="button" class="btn btn-primary btn-lg">MYCAPTION</button><button type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" class="btn btn-primary dropdown-toggle btn-lg"><span class="caret"></span><span class="sr-only">Toggle Dropdown</span></button><ul class="dropdown-menu"><li><a href="https://dev.isrd.isi.edu/chaise/search" class="btn btn-danger" >CAPTION1</a></li><li><a href="https://dev.isrd.isi.edu/chaise/search" >CAPTION2</a></li><li><a href="https://dev.isrd.isi.edu/chaise/search" >CAPTION3</a></li></ul></div>';
expect(printMarkdown(dropdownMarkdown)).toBe(dropdownHTML);

Expand Down Expand Up @@ -209,6 +209,11 @@ exports.execute = function (options) {
expect(printMarkdown(":span:special:/span:{.test}", {inline: true})).toBe('<span class="test">special</span>', "invalid inline span with attrs");
expect(printMarkdown(":span::/span:{.glyph-icon .glyph-danger}", {inline: true})).toBe('<span class="glyph-icon glyph-danger"></span>', "invalid empty inline span with attrs");
});

it("should support table with classname attribute.", function () {
var mkString = "|heading|\n|-|\n|text|\n{.class-name}";
expect(printMarkdown(mkString)).toBe('<table class="class-name">\n<thead>\n<tr>\n<th>heading</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>text</td>\n</tr>\n</tbody>\n</table>\n');
});
});


Expand Down
Loading

0 comments on commit 5c8a66f

Please sign in to comment.