utopia-project 0.15.0 → 0.15.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.
- checksums.yaml +4 -4
- data/lib/utopia/project/base.rb +2 -2
- data/lib/utopia/project/document.rb +2 -2
- data/lib/utopia/project/version.rb +1 -1
- data/pages/_header.xnode +1 -1
- data/pages/index.xnode +5 -1
- data/pages/source/_pragmas.xnode +17 -0
- data/pages/source/index.xnode +9 -5
- data/pages/source/show.xnode +3 -0
- data/public/.nojekyll +0 -0
- data/public/_static/links.js +1 -1
- data/public/_static/site.css +52 -0
- metadata +26 -39
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2b57a18176afa9434511f28f02302fee700be285f2b758619354753af53577a3
|
4
|
+
data.tar.gz: 6ae9b2ef4860fcf69a94fa374f45e593398888e14410b0dc646e0823f9b4feee
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 63d9424f566e31010506ab7cef1dacd28495967d86ac08c29dec93bb11158c4c43fd7751e3adb920e4df1f4d14d3e941d9dce612530dc62ba37640098d520dd4
|
7
|
+
data.tar.gz: cca320d9ebdb86b78e6b8f655028ef0e3978776f2df6f300dd4f693b0225e447a81a28c3eb1f1601fae58eef2962afcde674b13b3bb4de899a2a36d53c1d94d1
|
data/lib/utopia/project/base.rb
CHANGED
@@ -133,7 +133,7 @@ module Utopia
|
|
133
133
|
# Format the given text in the context of the given definition and language.
|
134
134
|
# See {document} for details.
|
135
135
|
# @returns [Trenni::MarkupString]
|
136
|
-
def format(text, definition = nil, language: definition&.language)
|
136
|
+
def format(text, definition = nil, language: definition&.language, **options)
|
137
137
|
case text
|
138
138
|
when Enumerable
|
139
139
|
text = text.to_a.join("\n")
|
@@ -143,7 +143,7 @@ module Utopia
|
|
143
143
|
|
144
144
|
if document = self.document(text, definition, language: language)
|
145
145
|
return Trenni::MarkupString.raw(
|
146
|
-
document.to_html
|
146
|
+
document.to_html(**options)
|
147
147
|
)
|
148
148
|
end
|
149
149
|
end
|
@@ -68,8 +68,8 @@ module Utopia
|
|
68
68
|
end
|
69
69
|
end
|
70
70
|
|
71
|
-
def to_html(node = self.root)
|
72
|
-
renderer = Markly::HTMLRenderer.new(ids: true, flags: Markly::UNSAFE)
|
71
|
+
def to_html(node = self.root, **options)
|
72
|
+
renderer = Markly::HTMLRenderer.new(ids: true, flags: Markly::UNSAFE, **options)
|
73
73
|
Trenni::MarkupString.raw(renderer.render(node))
|
74
74
|
end
|
75
75
|
|
data/pages/_header.xnode
CHANGED
data/pages/index.xnode
CHANGED
@@ -14,7 +14,11 @@
|
|
14
14
|
when :image
|
15
15
|
self.document.attributes[:title] ||= title.to_plaintext
|
16
16
|
|
17
|
-
|
17
|
+
if title.url =~ /\.svg/
|
18
|
+
?><h1 style="text-align: center"><object type="image/svg+xml" data="#{title.url}"></object></h1><?r
|
19
|
+
else
|
20
|
+
?><h1 style="text-align: center"><img src="#{title.url}" /></h1><?r
|
21
|
+
end
|
18
22
|
else
|
19
23
|
?><content:heading>Project</content:heading><?r
|
20
24
|
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
<?r
|
2
|
+
base = self[:base]
|
3
|
+
|
4
|
+
symbol = attributes[:symbol]
|
5
|
+
documentation = symbol.documentation
|
6
|
+
|
7
|
+
pragmas = documentation&.filter(Decode::Comment::Pragma).to_a
|
8
|
+
|
9
|
+
if pragmas&.any? ?>
|
10
|
+
<ul class="pragmas #{attributes[:class]}">
|
11
|
+
<?r pragmas.each do |pragma| ?>
|
12
|
+
<li class="pragma #{pragma.directive}">
|
13
|
+
<span class="directive">#{pragma.directive}</span>
|
14
|
+
</li>
|
15
|
+
<?r end ?>
|
16
|
+
</ul>
|
17
|
+
<?r end ?>
|
data/pages/source/index.xnode
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
<content:page>
|
2
|
-
<content:heading>
|
2
|
+
<content:heading>Overview</content:heading>
|
3
3
|
|
4
4
|
<?r
|
5
5
|
base = controller[:base]
|
@@ -11,10 +11,14 @@
|
|
11
11
|
|
12
12
|
if documentation = symbol.documentation or symbol.container?
|
13
13
|
?><li>
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
#{
|
14
|
+
<?r if symbol.container? ?>
|
15
|
+
<a href="#{base.link_for(symbol)}"><code class="language-#{symbol.language.name}">#{symbol.long_form}</code></a>
|
16
|
+
|
17
|
+
#{partial 'content:pragmas', symbol: symbol, class: 'inline'}
|
18
|
+
|
19
|
+
<?r if documentation and text = documentation.text ?>
|
20
|
+
#{base.format(text.first, symbol)}
|
21
|
+
<?r end ?>
|
18
22
|
<?r end ?>
|
19
23
|
|
20
24
|
<?r if symbol.container?
|
data/pages/source/show.xnode
CHANGED
@@ -6,6 +6,8 @@
|
|
6
6
|
?>
|
7
7
|
<content:heading><code class="language-#{symbol.language.name}">#{symbol.qualified_name}</code></content:heading>
|
8
8
|
|
9
|
+
#{partial 'content:signature', symbol: symbol}
|
10
|
+
|
9
11
|
<?r
|
10
12
|
if document = base.document_for(symbol)
|
11
13
|
?>#{document.to_html}<?r
|
@@ -42,6 +44,7 @@
|
|
42
44
|
?><section id="#{base.id_for(symbol)}"><h3><code class="language-#{symbol.language.name}">#{symbol.long_form}</code></h3><?r
|
43
45
|
|
44
46
|
if documentation = symbol.documentation
|
47
|
+
?>#{partial 'content:pragmas', symbol: symbol}<?r
|
45
48
|
?>#{base.format(documentation.text, symbol)}<?r
|
46
49
|
?>#{partial 'content:signature', symbol: symbol}<?r
|
47
50
|
end
|
data/public/.nojekyll
ADDED
File without changes
|
data/public/_static/links.js
CHANGED
@@ -6,11 +6,11 @@ jQuery(function() {
|
|
6
6
|
document.createTextNode("¶")
|
7
7
|
);
|
8
8
|
|
9
|
-
anchor.title = element.innerText;
|
10
9
|
anchor.href = "#" + element.id;
|
11
10
|
anchor.className = "self";
|
12
11
|
|
13
12
|
let heading = element.firstChild;
|
13
|
+
anchor.title = heading.innerText;
|
14
14
|
|
15
15
|
heading.appendChild(
|
16
16
|
document.createTextNode(' ')
|
data/public/_static/site.css
CHANGED
@@ -6,6 +6,8 @@ html {
|
|
6
6
|
/* Fix odd text-size in `display: flex` elements on Safari iOS */
|
7
7
|
text-size-adjust: 100%;
|
8
8
|
-webkit-text-size-adjust: 100%;
|
9
|
+
|
10
|
+
line-height: 1.5;
|
9
11
|
}
|
10
12
|
|
11
13
|
@media (min-width: 40em) {
|
@@ -257,3 +259,53 @@ table thead {
|
|
257
259
|
table tr:hover {
|
258
260
|
background-color: var(--header-color);
|
259
261
|
}
|
262
|
+
|
263
|
+
ul.pragmas {
|
264
|
+
margin: 0 1rem;
|
265
|
+
padding: 0;
|
266
|
+
|
267
|
+
font-size: 80%;
|
268
|
+
}
|
269
|
+
|
270
|
+
ul.pragmas.inline {
|
271
|
+
display: inline;
|
272
|
+
}
|
273
|
+
|
274
|
+
ul.pragmas .directive {
|
275
|
+
font-weight: bold;
|
276
|
+
}
|
277
|
+
|
278
|
+
ul.pragmas li {
|
279
|
+
list-style: none;
|
280
|
+
|
281
|
+
border: 1px solid #ccf;
|
282
|
+
border-radius: 0.5em;
|
283
|
+
|
284
|
+
box-shadow: 0 0 2px #eee;
|
285
|
+
padding: 0.1rem 0.2rem;
|
286
|
+
|
287
|
+
display: inline-block;
|
288
|
+
}
|
289
|
+
|
290
|
+
ul.pragmas li + li {
|
291
|
+
margin-left: 0.5rem;
|
292
|
+
}
|
293
|
+
|
294
|
+
ul.pragmas li.public {
|
295
|
+
border-color: #8CFF00;
|
296
|
+
box-shadow: 0 0 0.3rem #8CFF00;
|
297
|
+
color: #8CFF00;
|
298
|
+
}
|
299
|
+
|
300
|
+
ul.pragmas li.private,
|
301
|
+
ul.pragmas li.deprecated {
|
302
|
+
border-color: #FF8C00;
|
303
|
+
box-shadow: 0 0 0.3rem #FF8C00;
|
304
|
+
color: #FF8C00;
|
305
|
+
}
|
306
|
+
|
307
|
+
ul.pragmas li.asynchronous {
|
308
|
+
border-color: #8C00FF;
|
309
|
+
box-shadow: 0 0 0.3rem #8C00FF;
|
310
|
+
color: #8C00FF;
|
311
|
+
}
|
metadata
CHANGED
@@ -1,57 +1,57 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: utopia-project
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.15.
|
4
|
+
version: 0.15.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Samuel Williams
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-07-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
14
|
+
name: decode
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '0.17'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '0.17'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
28
|
+
name: falcon
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - "
|
31
|
+
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '0
|
33
|
+
version: '0'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - "
|
38
|
+
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '0
|
40
|
+
version: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
42
|
+
name: markly
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '0.
|
47
|
+
version: '0.6'
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '0.
|
54
|
+
version: '0.6'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: rackula
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -67,7 +67,7 @@ dependencies:
|
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
70
|
+
name: thread-local
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - ">="
|
@@ -81,19 +81,19 @@ dependencies:
|
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '0'
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
|
-
name:
|
84
|
+
name: utopia
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- - "
|
87
|
+
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: '
|
89
|
+
version: '2.14'
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- - "
|
94
|
+
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: '
|
96
|
+
version: '2.14'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: async-rspec
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -109,7 +109,7 @@ dependencies:
|
|
109
109
|
- !ruby/object:Gem::Version
|
110
110
|
version: '0'
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
|
-
name:
|
112
|
+
name: bundler
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
115
|
- - ">="
|
@@ -137,7 +137,7 @@ dependencies:
|
|
137
137
|
- !ruby/object:Gem::Version
|
138
138
|
version: '0'
|
139
139
|
- !ruby/object:Gem::Dependency
|
140
|
-
name:
|
140
|
+
name: rack-test
|
141
141
|
requirement: !ruby/object:Gem::Requirement
|
142
142
|
requirements:
|
143
143
|
- - ">="
|
@@ -164,23 +164,8 @@ dependencies:
|
|
164
164
|
- - ">="
|
165
165
|
- !ruby/object:Gem::Version
|
166
166
|
version: '0'
|
167
|
-
- !ruby/object:Gem::Dependency
|
168
|
-
name: bake-bundler
|
169
|
-
requirement: !ruby/object:Gem::Requirement
|
170
|
-
requirements:
|
171
|
-
- - ">="
|
172
|
-
- !ruby/object:Gem::Version
|
173
|
-
version: '0'
|
174
|
-
type: :development
|
175
|
-
prerelease: false
|
176
|
-
version_requirements: !ruby/object:Gem::Requirement
|
177
|
-
requirements:
|
178
|
-
- - ">="
|
179
|
-
- !ruby/object:Gem::Version
|
180
|
-
version: '0'
|
181
167
|
description:
|
182
168
|
email:
|
183
|
-
- samuel.williams@oriontransfer.co.nz
|
184
169
|
executables: []
|
185
170
|
extensions: []
|
186
171
|
extra_rdoc_files: []
|
@@ -208,10 +193,12 @@ files:
|
|
208
193
|
- pages/guides/show.xnode
|
209
194
|
- pages/index.xnode
|
210
195
|
- pages/links.yaml
|
196
|
+
- pages/source/_pragmas.xnode
|
211
197
|
- pages/source/_signature.xnode
|
212
198
|
- pages/source/controller.rb
|
213
199
|
- pages/source/index.xnode
|
214
200
|
- pages/source/show.xnode
|
201
|
+
- public/.nojekyll
|
215
202
|
- public/_components/jquery-litebox/jquery.litebox.css
|
216
203
|
- public/_components/jquery-litebox/jquery.litebox.gallery.css
|
217
204
|
- public/_components/jquery-litebox/jquery.litebox.js
|
@@ -295,15 +282,15 @@ homepage: https://socketry.github.io/utopia-project/
|
|
295
282
|
licenses:
|
296
283
|
- MIT
|
297
284
|
metadata:
|
298
|
-
source_code_uri: https://github.com/socketry/utopia-project/
|
299
285
|
funding_uri: https://github.com/sponsors/ioquatix/
|
286
|
+
source_code_uri: https://github.com/socketry/utopia-project/
|
300
287
|
post_install_message:
|
301
288
|
rdoc_options: []
|
302
289
|
require_paths:
|
303
290
|
- lib
|
304
291
|
required_ruby_version: !ruby/object:Gem::Requirement
|
305
292
|
requirements:
|
306
|
-
- - "
|
293
|
+
- - ">="
|
307
294
|
- !ruby/object:Gem::Version
|
308
295
|
version: '2.5'
|
309
296
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
@@ -312,7 +299,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
312
299
|
- !ruby/object:Gem::Version
|
313
300
|
version: '0'
|
314
301
|
requirements: []
|
315
|
-
rubygems_version: 3.
|
302
|
+
rubygems_version: 3.2.22
|
316
303
|
signing_key:
|
317
304
|
specification_version: 4
|
318
305
|
summary: A project documentation tool based on Utopia.
|