spacedocs 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (41) hide show
  1. data/README.md +6 -2
  2. data/{source → lib}/class.html.haml +1 -4
  3. data/{source → lib}/index.html.haml +2 -2
  4. data/{dox → lib/node_modules/dox}/History.md +0 -0
  5. data/{dox → lib/node_modules/dox}/Makefile +0 -0
  6. data/{dox → lib/node_modules/dox}/Readme.md +0 -0
  7. data/{dox → lib/node_modules/dox}/bin/dox +0 -0
  8. data/{dox → lib/node_modules/dox}/index.js +0 -0
  9. data/{dox → lib/node_modules/dox}/lib/dox.js +1 -10
  10. data/{dox → lib/node_modules/dox}/lib/utils.js +0 -0
  11. data/lib/node_modules/dox/node_modules/commander/History.md +99 -0
  12. data/lib/node_modules/dox/node_modules/commander/Makefile +7 -0
  13. data/lib/node_modules/dox/node_modules/commander/Readme.md +263 -0
  14. data/lib/node_modules/dox/node_modules/commander/index.js +2 -0
  15. data/lib/node_modules/dox/node_modules/commander/lib/commander.js +992 -0
  16. data/lib/node_modules/dox/node_modules/commander/package.json +38 -0
  17. data/lib/node_modules/dox/node_modules/github-flavored-markdown/README.md +17 -0
  18. data/lib/node_modules/dox/node_modules/github-flavored-markdown/_config.yml +3 -0
  19. data/lib/node_modules/dox/node_modules/github-flavored-markdown/_layouts/default.html +77 -0
  20. data/lib/node_modules/dox/node_modules/github-flavored-markdown/code.rb +67 -0
  21. data/lib/node_modules/dox/node_modules/github-flavored-markdown/images/gfm.png +0 -0
  22. data/lib/node_modules/dox/node_modules/github-flavored-markdown/index.md +78 -0
  23. data/lib/node_modules/dox/node_modules/github-flavored-markdown/package.json +27 -0
  24. data/lib/node_modules/dox/node_modules/github-flavored-markdown/preview.md +27 -0
  25. data/lib/node_modules/dox/node_modules/github-flavored-markdown/sample_content.html +169 -0
  26. data/lib/node_modules/dox/node_modules/github-flavored-markdown/scripts/preview.js +18 -0
  27. data/lib/node_modules/dox/node_modules/github-flavored-markdown/scripts/showdown.js +1414 -0
  28. data/lib/node_modules/dox/node_modules/github-flavored-markdown/stylesheets/screen.css +20 -0
  29. data/lib/node_modules/dox/package.json +43 -0
  30. data/lib/spacedocs.rb +42 -53
  31. data/lib/{assets/stylesheets/spacedocs/docs.css.sass → spacedocs.sass} +0 -0
  32. data/lib/spacedocs/version.rb +1 -1
  33. metadata +116 -25
  34. data/dox/package.json +0 -16
  35. data/dox/test/dox.test.js +0 -287
  36. data/dox/test/fixtures/a.js +0 -12
  37. data/dox/test/fixtures/b.js +0 -26
  38. data/dox/test/fixtures/c.js +0 -266
  39. data/dox/test/fixtures/d.js +0 -15
  40. data/dox/test/fixtures/titles.js +0 -14
  41. data/lib/spacedocs/engine.rb +0 -6
@@ -1,12 +0,0 @@
1
-
2
- /*!
3
- * A
4
- * Copyright (c) 2010 Author Name <Author Email>
5
- * MIT Licensed
6
- */
7
-
8
- /**
9
- * Library version.
10
- */
11
-
12
- exports.version = '0.0.1';
@@ -1,26 +0,0 @@
1
-
2
- /**
3
- * Library version.
4
- *
5
- * @type {String}
6
- * @api public
7
- */
8
-
9
- exports.version = '0.0.1';
10
-
11
- /**
12
- * Parse the given `str`.
13
- *
14
- * Examples:
15
- *
16
- * parse(str)
17
- * // => "wahoo"
18
- *
19
- * @param {String|Buffer} str to parse
20
- * @return {String}
21
- * @api public
22
- */
23
-
24
- exports.parse = function(str) {
25
- return "wahoo";
26
- }
@@ -1,266 +0,0 @@
1
-
2
- /*!
3
- * Dox
4
- * Copyright (c) 2010 TJ Holowaychuk <tj@vision-media.ca>
5
- * MIT Licensed
6
- */
7
-
8
- /**
9
- * Module dependencies.
10
- */
11
-
12
- var markdown = require('github-flavored-markdown').parse;
13
-
14
- /**
15
- * Library version.
16
- */
17
-
18
- exports.version = '0.0.5';
19
-
20
- /**
21
- * Parse comments in the given string of `js`.
22
- *
23
- * @param {String} js
24
- * @return {Array}
25
- * @see exports.parseComment
26
- * @api public
27
- */
28
-
29
- exports.parseComments = function(js){
30
- var comments = []
31
- , comment
32
- , buf = ''
33
- , ignore
34
- , within
35
- , code;
36
-
37
- for (var i = 0, len = js.length; i < len; ++i) {
38
- // start comment
39
- if ('/' == js[i] && '*' == js[i+1]) {
40
- // code following previous comment
41
- if (buf.trim().length) {
42
- comment = comments[comments.length - 1];
43
- comment.code = code = buf.trim();
44
- comment.ctx = exports.parseCodeContext(code);
45
- buf = '';
46
- }
47
- i += 2;
48
- within = true;
49
- ignore = '!' == js[i];
50
- // end comment
51
- } else if ('*' == js[i] && '/' == js[i+1]) {
52
- i += 2;
53
- buf = buf.replace(/^ *\* ?/gm, '');
54
- var comment = exports.parseComment(buf);
55
- comment.ignore = ignore;
56
- comments.push(comment);
57
- within = ignore = false;
58
- buf = '';
59
- // buffer comment or code
60
- } else {
61
- buf += js[i];
62
- }
63
- }
64
-
65
- // trailing code
66
- if (buf.trim().length) {
67
- comment = comments[comments.length - 1];
68
- code = buf.trim();
69
- comment.code = code;
70
- }
71
-
72
- return comments;
73
- };
74
-
75
- /**
76
- * Parse the given comment `str`.
77
- *
78
- * The comment object returned contains the following:
79
- *
80
- * - `tags` array of tag objects
81
- * - `description` the first line of the comment
82
- * - `body` lines following the description
83
- * - `content` both the description and the body
84
- * - `isPrivate` true when "@api private" is used
85
- *
86
- * @param {String} str
87
- * @return {Object}
88
- * @see exports.parseTag
89
- * @api public
90
- */
91
-
92
- exports.parseComment = function(str) {
93
- str = str.trim();
94
- var comment = { tags: [] }
95
- , description = {};
96
-
97
- // parse comment body
98
- description.full = str.split('@')[0].replace(/^([\w ]+):/gm, '## $1');
99
- description.summary = description.full.split('\n\n')[0];
100
- description.body = description.full.split('\n\n').slice(1).join('\n\n');
101
- comment.description = description;
102
-
103
- // parse tags
104
- if (~str.indexOf('@')) {
105
- var tags = '@' + str.split('@').slice(1).join('@');
106
- comment.tags = tags.split('\n').map(exports.parseTag);
107
- comment.isPrivate = comment.tags.some(function(tag){
108
- return 'api' == tag.type && 'private' == tag.visibility;
109
- })
110
- }
111
-
112
- // markdown
113
- description.full = markdown(escape(description.full));
114
- description.summary = markdown(escape(description.summary));
115
- description.body = markdown(escape(description.body));
116
-
117
- return comment;
118
- }
119
-
120
- /**
121
- * Parse tag string "@param {Array} name description" etc.
122
- *
123
- * @param {String}
124
- * @return {Object}
125
- * @api public
126
- */
127
-
128
- exports.parseTag = function(str) {
129
- var tag = {}
130
- , parts = str.split(/ +/)
131
- , type = tag.type = parts.shift().replace('@', '');
132
-
133
- /* shouldn't fail */
134
- switch (type) { // asfasdfasdf /** /////
135
- case 'param':
136
- tag.types = exports.parseTagTypes(parts.shift());
137
- tag.name = parts.shift() || '';
138
- tag.description = parts.join(' ');
139
- break;
140
- case 'return':
141
- tag.types = exports.parseTagTypes(parts.shift());
142
- tag.description = parts.join(' ');
143
- break;
144
- case 'see':
145
- if (~str.indexOf('http')) {
146
- tag.title = parts.length > 1
147
- ? parts.shift()
148
- : '';
149
- tag.url = parts.join(' ');
150
- } else {
151
- tag.local = parts.join(' ');
152
- }
153
- case 'api':
154
- tag.visibility = parts.shift();
155
- break;
156
- case 'type':
157
- tag.types = exports.parseTagTypes(parts.shift());
158
- break;
159
- }
160
-
161
- return tag;
162
- }
163
-
164
- /**
165
- * Parse tag type string "{Array|Object}" etc.
166
- *
167
- * @param {String} str
168
- * @return {Array}
169
- * @api public
170
- */
171
-
172
- exports.parseTagTypes = function(str) {
173
- return str
174
- .replace(/[{}]/g, '')
175
- .split(/ *[|,\/] */);
176
- };
177
-
178
- /**
179
- * Parse the context from the given `str` of js.
180
- *
181
- * This method attempts to discover the context
182
- * for the comment based on it's code. Currently
183
- * supports:
184
- *
185
- * - function statements
186
- * - function expressions
187
- * - prototype methods
188
- * - prototype properties
189
- * - methods
190
- * - properties
191
- * - declarations
192
- *
193
- * @param {String} str
194
- * @return {Object}
195
- * @api public
196
- */
197
-
198
- exports.parseCodeContext = function(str){
199
- var str = str.split('\n')[0];
200
-
201
- // function statement
202
- if (/^function (\w+)\(/.exec(str)) {
203
- return {
204
- type: 'function'
205
- , name: RegExp.$1
206
- };
207
- // function expression
208
- } else if (/^var *(\w+) *= *function/.exec(str)) {
209
- return {
210
- type: 'function'
211
- , name: RegExp.$1
212
- };
213
- // prototype method
214
- } else if (/^(\w+)\.prototype\.(\w+) *= *function/.exec(str)) {
215
- return {
216
- type: 'method'
217
- , constructor: RegExp.$1
218
- , name: RegExp.$2
219
- };
220
- // prototype property
221
- } else if (/^(\w+)\.prototype\.(\w+) *= *([^\n;]+)/.exec(str)) {
222
- return {
223
- type: 'property'
224
- , constructor: RegExp.$1
225
- , name: RegExp.$2
226
- , value: RegExp.$3
227
- };
228
- // method
229
- } else if (/^(\w+)\.(\w+) *= *function/.exec(str)) {
230
- return {
231
- type: 'method'
232
- , receiver: RegExp.$1
233
- , name: RegExp.$2
234
- };
235
- // property
236
- } else if (/^(\w+)\.(\w+) *= *([^\n;]+)/.exec(str)) {
237
- return {
238
- type: 'property'
239
- , receiver: RegExp.$1
240
- , name: RegExp.$2
241
- , value: RegExp.$3
242
- };
243
- // declaration
244
- } else if (/^var +(\w+) *= *([^\n;]+)/.exec(str)) {
245
- return {
246
- type: 'declaration'
247
- , name: RegExp.$1
248
- , value: RegExp.$2
249
- };
250
- }
251
- };
252
-
253
- /**
254
- * Escape the given `html`.
255
- *
256
- * @param {String} html
257
- * @return {String}
258
- * @api private
259
- */
260
-
261
- function escape(html){
262
- return String(html)
263
- .replace(/&(?!\w+;)/g, '&amp;')
264
- .replace(/</g, '&lt;')
265
- .replace(/>/g, '&gt;');
266
- }
@@ -1,15 +0,0 @@
1
-
2
- /**
3
- * Parse tag type string "{Array|Object}" etc.
4
- *
5
- * @name is arbitrary
6
- * @param {String} str
7
- * @return {Array}
8
- * @api public
9
- */
10
-
11
- exports.parseTagTypes = function(str) {
12
- return str
13
- .replace(/[{}]/g, '')
14
- .split(/ *[|,\/] */);
15
- };
@@ -1,14 +0,0 @@
1
-
2
- /**
3
- * Description.
4
- *
5
- * Some examples:
6
- *
7
- * foo
8
- *
9
- * Some longer thing
10
- * for example:
11
- *
12
- * bar
13
- *
14
- */
@@ -1,6 +0,0 @@
1
- module Spacedocs
2
- class Engine < Rails::Engine
3
- # tells rails to add the project's app/assets, lib/assets,
4
- # and vendor/assets to the asset load path.
5
- end
6
- end