nikki 0.5.3 → 0.5.4

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.
data/doc/js/cucumber.js DELETED
@@ -1,305 +0,0 @@
1
- function cucumberKeyboardShortcuts() {
2
- if (window.top.frames.main) return;
3
- $(document).keypress(function(evt) {
4
- if (evt.altKey || evt.ctrlKey || evt.metaKey || evt.shiftKey) return;
5
- if (typeof evt.target !== "undefined" &&
6
- (evt.target.nodeName == "INPUT" ||
7
- evt.target.nodeName == "TEXTAREA")) return;
8
- switch (evt.charCode) {
9
- case 68: case 100: $('#stepdefinition_list_link').click(); break; // 'd'
10
- case 82: case 114: $('#feature_list_link').click(); break; // 'r'
11
- case 83: case 115: $('#step_list_link').click(); break; // 's'
12
- case 84: case 116: $('#tag_list_link').click(); break; // 't'
13
- }
14
- });
15
- }
16
-
17
- $(cucumberKeyboardShortcuts);
18
-
19
- $(function() {
20
-
21
- //
22
- // Feature Page - Scenarios
23
- //
24
- $('.scenario div.title').click(function(eventObject) {
25
- if (typeof eventObject.currentTarget !== "undefined") {
26
- toggleScenario( $($(eventObject.currentTarget).parent()) );
27
- }
28
- });
29
-
30
- //
31
- // Developer View
32
- // Click + Developer View = toggle the expansion of all tags, location, and comments
33
- //
34
- $('#view').click(function(eventObject) {
35
-
36
- if (typeof eventObject.currentTarget !== "undefined") {
37
- var view = eventObject.currentTarget;
38
-
39
- if (view.innerHTML === '[More Detail]') {
40
- $('.developer').show(500);
41
- view.innerHTML = '[Less Detail]';
42
- } else {
43
- $('.developer').hide(500);
44
- // Already hidden elements with .developer sub-elements were not getting message
45
- $('.developer').each(function() {
46
- $(this).css('display','none');
47
- });
48
- view.innerHTML = '[More Detail]';
49
- }
50
- }
51
- });
52
-
53
- //
54
- // Expand/Collapse All
55
- //
56
- $('#expand').click(function(eventObject) {
57
-
58
- if (typeof eventObject.currentTarget !== "undefined") {
59
- if (eventObject.currentTarget.innerHTML === '[Expand All]') {
60
- eventObject.currentTarget.innerHTML = '[Collapse All]';
61
- $('div.scenario > div.details:hidden').each(function() {
62
- toggleScenario( $($(this).parent()) );
63
- });
64
- } else {
65
- eventObject.currentTarget.innerHTML = '[Expand All]';
66
- $('div.scenario > div.details:visible').each(function() {
67
- toggleScenario( $($(this).parent()) );
68
- });
69
- }
70
- }
71
- });
72
-
73
- //
74
- // Expand/Collapse All
75
- //
76
- $('#stepdefinition,#steptransform').click(function(eventObject) {
77
-
78
- if (typeof eventObject.currentTarget !== "undefined") {
79
- if (eventObject.currentTarget.innerHTML === '[Expand All]') {
80
- eventObject.currentTarget.innerHTML = '[Collapse All]';
81
- $('div.' + eventObject.currentTarget.id + ' > div.details:hidden').each(function() {
82
- $(this).show(200);
83
- });
84
- } else {
85
- eventObject.currentTarget.innerHTML = '[Expand All]';
86
- $('div.' + eventObject.currentTarget.id + ' > div.details:visible').each(function() {
87
- $(this).hide(200);
88
- });
89
- }
90
- }
91
- });
92
-
93
-
94
- //
95
- // Scenario Outlines - Toggle Examples
96
- //
97
- $('.outline table tr').click(function(eventObject) {
98
-
99
- if (typeof eventObject.currentTarget !== "undefined") {
100
- var exampleRow = $(eventObject.currentTarget);
101
-
102
- if (eventObject.currentTarget.className.match(/example\d+-\d+/) == null) {
103
- return false;
104
- }
105
-
106
- var exampleClass = eventObject.currentTarget.className.match(/example\d+-\d+/)[0];
107
- var example = exampleRow.closest('div.details').find('.' + exampleClass);
108
-
109
- var currentExample = null;
110
-
111
- $('.outline table tr').each(function() {
112
- $(this).removeClass('selected');
113
- });
114
-
115
- if ( example[0].style.display == 'none' ) {
116
- currentExample = example[0];
117
- exampleRow.addClass('selected');
118
- } else {
119
- currentExample = exampleRow.closest('div.details').find('.steps')[0];
120
- }
121
-
122
- // hide everything
123
- exampleRow.closest('div.details').find('.steps').each(function() {
124
- $(this).hide();
125
- });
126
-
127
- // show the selected
128
- $(currentExample).show();
129
- }
130
- });
131
-
132
-
133
- });
134
-
135
-
136
- function toggleScenario(scenario) {
137
-
138
- var state = scenario.find(".attributes input[name='collapsed']")[0];
139
-
140
- if (state.value === 'true') {
141
- scenario.find("div.details").each(function() {
142
- $(this).show(500);
143
- });
144
- state.value = "false";
145
- scenario.find('a.toggle').each(function() {
146
- this.innerHTML = ' - ';
147
- });
148
-
149
- } else {
150
- scenario.find("div.details").each(function() {
151
- $(this).hide(500);
152
- });
153
- state.value = "true";
154
- scenario.find('a.toggle').each(function() {
155
- this.innerHTML = ' + ';
156
- });
157
- }
158
- }
159
-
160
-
161
- function updateTagFiltering(tagString) {
162
- var formulaTags = determineTagsUsedInFormula(tagString);
163
- displayExampleCommandLine(formulaTags);
164
- displayQualifyingFeaturesAndScenarios(formulaTags);
165
- fixSectionRowAlternations();
166
- }
167
-
168
- function clearTagFiltering() {
169
- updateTagFiltering("");
170
- }
171
-
172
- function determineTagsUsedInFormula(tagString) {
173
-
174
- tagString = tagString.replace(/^(\s+)|(\s+)$/,'').replace(/\s{2,}/,' ');
175
-
176
- var tagGroup = tagString.match(/(?:~)?@\w+(,(?:~)?@\w+)*/g);
177
-
178
- var returnTags = [];
179
-
180
- if (tagGroup) {
181
- tagGroup.forEach(function(tag, index, array) {
182
- console.log("Tag Group: " + tag);
183
- var validTags = removeInvalidTags(tag)
184
- if (validTags != "") {
185
- returnTags.push(validTags);
186
- }
187
- });
188
- }
189
-
190
- return returnTags;
191
- }
192
-
193
- function removeInvalidTags(tagGroup) {
194
- tagGroup.split(",").forEach(function(tag, index, array) {
195
-
196
- baseTag = tag.match(/^~(.+)/) ? tag.match(/^~(.+)/)[1] : tag;
197
-
198
- //console.log("Validating Tag: " + tag)
199
- if (tag_list.indexOf(baseTag) === -1) {
200
- //console.log("Removing Tag: " + tag);
201
- tagGroup = tagGroup.replace(new RegExp(',?' + tag + ',?'),"")
202
- }
203
- });
204
-
205
- return tagGroup;
206
- }
207
-
208
-
209
- function displayExampleCommandLine(tags) {
210
- $("#command_example")[0].innerHTML = "cucumber ";
211
-
212
- if (tags.length > 0) {
213
- $("#command_example")[0].innerHTML += "--tags " + tags.join(" --tags ");
214
- }
215
- }
216
-
217
- function fixSectionRowAlternations() {
218
- $(".feature:visible,.scenario:visible").each(function(index){
219
- $(this).removeClass("odd even").addClass( ((index + 1) % 2 == 0 ? "even" : "odd") );
220
- });
221
- }
222
-
223
- function displayQualifyingFeaturesAndScenarios(tags) {
224
-
225
- if (tags.length > 0) {
226
-
227
- $(".feature,.scenario").each(function(feature){
228
- $(this).hide();
229
- });
230
-
231
- var tagSelectors = generateCssSelectorFromTags(tags);
232
-
233
- tagSelectors.forEach(function(selector,selectorIndex,selectorArray) {
234
- var tags = selector;
235
-
236
- $(".feature." + tags).each(function(index) {
237
- $(this).show();
238
- });
239
- $(".scenario." + tags).each(function(index) {
240
- $(this).show();
241
- $(this).parent().prev().show();
242
- });
243
-
244
- });
245
-
246
- if ( $(".feature:visible,.scenario:visible").length == 0 ) {
247
- $("#features div.undefined").show();
248
- } else {
249
- $("#features div.undefined").hide();
250
- }
251
-
252
-
253
- } else {
254
- $(".feature:hidden,.scenario:hidden").each(function(feature){
255
- $(this).show();
256
- });
257
- }
258
-
259
- }
260
-
261
- function generateCssSelectorFromTags(tagGroups) {
262
-
263
- var tagSelectors = [ "" ];
264
-
265
- tagGroups.forEach(function(tagGroup,index,array) {
266
- var newTagSelectors = [];
267
-
268
- tagSelectors.forEach(function(selector,selectorIndex,selectorArray) {
269
- tagGroup.split(",").forEach(function(tag,tagIndex,tagArray) {
270
-
271
- if ( tag.match(/^~@.+$/) ) {
272
- tag = tag.match(/^~(@.+)$/)[1]
273
- //console.log("selector: " + (selector + " :not(" + tag + ")").trim());
274
- newTagSelectors.push((selector + ":not(." + tag.replace(/@/g,"\\@") +")").trim());
275
- } else {
276
- //console.log("selector: " + (selector + " " + tag).trim());
277
- newTagSelectors.push((selector + "." + tag.replace(/@/g,"\\@")).trim());
278
- }
279
- });
280
-
281
- });
282
-
283
- tagSelectors = newTagSelectors;
284
-
285
- });
286
-
287
-
288
- return tagSelectors;
289
- }
290
-
291
-
292
- function createStepDefinitionLinks() {
293
- // $('.step_instances_list').
294
- // before("<span class='showSteps'>[<a href='#' class='toggleSteps'>View steps</a>]</span>");
295
- $('.toggleSteps').toggle(function() {
296
- $(this).parent().next().slideUp(100);
297
- $(this).text("View " + $(this).attr('alt'));
298
- },
299
- function() {
300
- $(this).parent().next().slideDown(100);
301
- $(this).text("Hide " + $(this).attr('alt'));
302
- });
303
- }
304
-
305
- $(createStepDefinitionLinks);
data/doc/js/full_list.js DELETED
@@ -1,178 +0,0 @@
1
- var inSearch = null;
2
- var searchIndex = 0;
3
- var searchCache = [];
4
- var searchString = '';
5
- var regexSearchString = '';
6
- var caseSensitiveMatch = false;
7
- var ignoreKeyCodeMin = 8;
8
- var ignoreKeyCodeMax = 46;
9
- var commandKey = 91;
10
-
11
- RegExp.escape = function(text) {
12
- return text.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
13
- }
14
-
15
- function fullListSearch() {
16
- // generate cache
17
- searchCache = [];
18
- $('#full_list li').each(function() {
19
- var link = $(this).find('.object_link a');
20
- if (link.length === 0) return;
21
- var fullName = link.attr('title').split(' ')[0];
22
- searchCache.push({name:link.text(), fullName:fullName, node:$(this), link:link});
23
- });
24
-
25
- $('#search input').keyup(function(event) {
26
- if ((event.keyCode > ignoreKeyCodeMin && event.keyCode < ignoreKeyCodeMax)
27
- || event.keyCode == commandKey)
28
- return;
29
- searchString = this.value;
30
- caseSensitiveMatch = searchString.match(/[A-Z]/) != null;
31
- regexSearchString = RegExp.escape(searchString);
32
- if (caseSensitiveMatch) {
33
- regexSearchString += "|" +
34
- $.map(searchString.split(''), function(e) { return RegExp.escape(e); }).
35
- join('.+?');
36
- }
37
- if (searchString === "") {
38
- clearTimeout(inSearch);
39
- inSearch = null;
40
- $('ul .search_uncollapsed').removeClass('search_uncollapsed');
41
- $('#full_list, #content').removeClass('insearch');
42
- $('#full_list li').removeClass('found').each(function() {
43
-
44
- var link = $(this).find('.object_link a');
45
- if (link.length > 0) link.text(link.text());
46
- });
47
- if (clicked) {
48
- clicked.parents('ul').each(function() {
49
- $(this).removeClass('collapsed').prev().removeClass('collapsed');
50
- });
51
- }
52
- highlight();
53
- }
54
- else {
55
- if (inSearch) clearTimeout(inSearch);
56
- searchIndex = 0;
57
- lastRowClass = '';
58
- $('#full_list, #content').addClass('insearch');
59
- $('#noresults').text('');
60
- searchItem();
61
- }
62
- });
63
-
64
- $('#search input').focus();
65
- $('#full_list').after("<div id='noresults'></div>");
66
- }
67
-
68
- var lastRowClass = '';
69
- function searchItem() {
70
- for (var i = 0; i < searchCache.length / 50; i++) {
71
- var item = searchCache[searchIndex];
72
- var searchName = (searchString.indexOf('::') != -1 ? item.fullName : item.name);
73
- var matchString = regexSearchString;
74
- var matchRegexp = new RegExp(matchString, caseSensitiveMatch ? "" : "i");
75
- if (searchName.match(matchRegexp) == null) {
76
- item.node.removeClass('found');
77
- }
78
- else {
79
- item.node.css('padding-left', '10px').addClass('found');
80
- item.node.parents().addClass('search_uncollapsed');
81
- item.node.removeClass(lastRowClass).addClass(lastRowClass == 'r1' ? 'r2' : 'r1');
82
- lastRowClass = item.node.hasClass('r1') ? 'r1' : 'r2';
83
- item.link.html(item.name.replace(matchRegexp, "<strong>$&</strong>"));
84
- }
85
-
86
- if (searchCache.length === searchIndex + 1) {
87
- searchDone();
88
- return;
89
- }
90
- else {
91
- searchIndex++;
92
- }
93
- }
94
- inSearch = setTimeout('searchItem()', 0);
95
- }
96
-
97
- function searchDone() {
98
- highlight(true);
99
- if ($('#full_list li:visible').size() === 0) {
100
- $('#noresults').text('No results were found.').hide().fadeIn();
101
- }
102
- else {
103
- $('#noresults').text('');
104
- }
105
- $('#content').removeClass('insearch');
106
- clearTimeout(inSearch);
107
- inSearch = null;
108
- }
109
-
110
- clicked = null;
111
- function linkList() {
112
- $('#full_list li, #full_list li a:last').click(function(evt) {
113
- if ($(this).hasClass('toggle')) return true;
114
- if (this.tagName.toLowerCase() == "li") {
115
- if ($(this).find('.object_link a').length === 0) {
116
- $(this).children('a.toggle').click();
117
- return false;
118
- }
119
- var toggle = $(this).children('a.toggle');
120
- if (toggle.size() > 0 && evt.pageX < toggle.offset().left) {
121
- toggle.click();
122
- return false;
123
- }
124
- }
125
- if (clicked) clicked.removeClass('clicked');
126
- var win = window.top.frames.main ? window.top.frames.main : window.parent;
127
- if (this.tagName.toLowerCase() == "a") {
128
- clicked = $(this).parents('li').addClass('clicked');
129
- win.location = this.href;
130
- }
131
- else {
132
- clicked = $(this).addClass('clicked');
133
- win.location = $(this).find('a:last').attr('href');
134
- }
135
- return false;
136
- });
137
- }
138
-
139
- function collapse() {
140
- if (!$('#full_list').hasClass('class')) return;
141
- $('#full_list.class a.toggle').click(function() {
142
- $(this).parent().toggleClass('collapsed').next().toggleClass('collapsed');
143
- highlight();
144
- return false;
145
- });
146
- $('#full_list.class ul').each(function() {
147
- $(this).addClass('collapsed').prev().addClass('collapsed');
148
- });
149
- $('#full_list.class').children().removeClass('collapsed');
150
- highlight();
151
- }
152
-
153
- function highlight(no_padding) {
154
- var n = 1;
155
- $('#full_list li:visible').each(function() {
156
- var next = n == 1 ? 2 : 1;
157
- $(this).removeClass("r" + next).addClass("r" + n);
158
- if (!no_padding && $('#full_list').hasClass('class')) {
159
- $(this).css('padding-left', (10 + $(this).parents('ul').size() * 15) + 'px');
160
- }
161
- n = next;
162
- });
163
- }
164
-
165
- function escapeShortcut() {
166
- $(document).keydown(function(evt) {
167
- if (evt.which == 27) {
168
- $('#search_frame', window.top.document).slideUp(100);
169
- $('#search a', window.top.document).removeClass('active inactive');
170
- $(window.top).focus();
171
- }
172
- });
173
- }
174
-
175
- $(escapeShortcut);
176
- $(fullListSearch);
177
- $(linkList);
178
- $(collapse);