jazzy 0.13.0 → 0.13.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (111) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +3 -3
  3. data/.gitignore +1 -0
  4. data/CHANGELOG.md +153 -0
  5. data/CONTRIBUTING.md +1 -1
  6. data/Gemfile.lock +49 -38
  7. data/README.md +30 -0
  8. data/Rakefile +30 -0
  9. data/bin/sourcekitten +0 -0
  10. data/images/math.png +0 -0
  11. data/jazzy.gemspec +3 -3
  12. data/js/package-lock.json +39 -0
  13. data/js/package.json +17 -0
  14. data/lib/jazzy/config.rb +40 -2
  15. data/lib/jazzy/doc.rb +4 -0
  16. data/lib/jazzy/doc_builder.rb +47 -17
  17. data/lib/jazzy/docset_builder.rb +2 -0
  18. data/lib/jazzy/docset_builder/info_plist.mustache +8 -0
  19. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_AMS-Regular.ttf +0 -0
  20. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_AMS-Regular.woff +0 -0
  21. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_AMS-Regular.woff2 +0 -0
  22. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Caligraphic-Bold.ttf +0 -0
  23. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Caligraphic-Bold.woff +0 -0
  24. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
  25. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Caligraphic-Regular.ttf +0 -0
  26. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Caligraphic-Regular.woff +0 -0
  27. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
  28. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Fraktur-Bold.ttf +0 -0
  29. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Fraktur-Bold.woff +0 -0
  30. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
  31. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Fraktur-Regular.ttf +0 -0
  32. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Fraktur-Regular.woff +0 -0
  33. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
  34. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Bold.ttf +0 -0
  35. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Bold.woff +0 -0
  36. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Bold.woff2 +0 -0
  37. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-BoldItalic.ttf +0 -0
  38. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-BoldItalic.woff +0 -0
  39. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
  40. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Italic.ttf +0 -0
  41. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Italic.woff +0 -0
  42. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Italic.woff2 +0 -0
  43. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Regular.ttf +0 -0
  44. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Regular.woff +0 -0
  45. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Main-Regular.woff2 +0 -0
  46. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Math-BoldItalic.ttf +0 -0
  47. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Math-BoldItalic.woff +0 -0
  48. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
  49. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Math-Italic.ttf +0 -0
  50. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Math-Italic.woff +0 -0
  51. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Math-Italic.woff2 +0 -0
  52. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Bold.ttf +0 -0
  53. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Bold.woff +0 -0
  54. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
  55. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Italic.ttf +0 -0
  56. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Italic.woff +0 -0
  57. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
  58. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Regular.ttf +0 -0
  59. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Regular.woff +0 -0
  60. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
  61. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Script-Regular.ttf +0 -0
  62. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Script-Regular.woff +0 -0
  63. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Script-Regular.woff2 +0 -0
  64. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size1-Regular.ttf +0 -0
  65. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size1-Regular.woff +0 -0
  66. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size1-Regular.woff2 +0 -0
  67. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size2-Regular.ttf +0 -0
  68. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size2-Regular.woff +0 -0
  69. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size2-Regular.woff2 +0 -0
  70. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size3-Regular.ttf +0 -0
  71. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size3-Regular.woff +0 -0
  72. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size3-Regular.woff2 +0 -0
  73. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size4-Regular.ttf +0 -0
  74. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size4-Regular.woff +0 -0
  75. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Size4-Regular.woff2 +0 -0
  76. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Typewriter-Regular.ttf +0 -0
  77. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Typewriter-Regular.woff +0 -0
  78. data/lib/jazzy/extensions/katex/css/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
  79. data/lib/jazzy/extensions/katex/css/katex.min.css +1 -0
  80. data/lib/jazzy/extensions/katex/js/katex.min.js +1 -0
  81. data/lib/jazzy/gem_version.rb +1 -1
  82. data/lib/jazzy/jazzy_markdown.rb +17 -0
  83. data/lib/jazzy/podspec_documenter.rb +15 -3
  84. data/lib/jazzy/source_declaration.rb +15 -2
  85. data/lib/jazzy/source_declaration/access_control_level.rb +1 -1
  86. data/lib/jazzy/source_declaration/type.rb +34 -0
  87. data/lib/jazzy/source_module.rb +2 -1
  88. data/lib/jazzy/sourcekitten.rb +52 -22
  89. data/lib/jazzy/themes/apple/assets/css/jazzy.css.scss +79 -4
  90. data/lib/jazzy/themes/apple/assets/img/spinner.gif +0 -0
  91. data/lib/jazzy/themes/apple/assets/js/jazzy.js +12 -1
  92. data/lib/jazzy/themes/apple/assets/js/jazzy.search.js +70 -0
  93. data/lib/jazzy/themes/apple/assets/js/jquery.min.js +2 -2
  94. data/lib/jazzy/themes/apple/assets/js/lunr.min.js +6 -0
  95. data/lib/jazzy/themes/apple/assets/js/typeahead.jquery.js +1694 -0
  96. data/lib/jazzy/themes/apple/templates/doc.mustache +41 -0
  97. data/lib/jazzy/themes/apple/templates/header.mustache +7 -0
  98. data/lib/jazzy/themes/apple/templates/task.mustache +3 -3
  99. data/lib/jazzy/themes/fullwidth/assets/css/jazzy.css.scss +3 -1
  100. data/lib/jazzy/themes/fullwidth/assets/js/jazzy.js +12 -1
  101. data/lib/jazzy/themes/fullwidth/assets/js/jquery.min.js +2 -2
  102. data/lib/jazzy/themes/fullwidth/assets/js/lunr.min.js +6 -1
  103. data/lib/jazzy/themes/fullwidth/assets/js/typeahead.jquery.js +34 -14
  104. data/lib/jazzy/themes/fullwidth/templates/doc.mustache +36 -0
  105. data/lib/jazzy/themes/fullwidth/templates/task.mustache +3 -3
  106. data/lib/jazzy/themes/jony/assets/css/jazzy.css.scss +12 -2
  107. data/lib/jazzy/themes/jony/assets/js/jazzy.js +12 -1
  108. data/lib/jazzy/themes/jony/assets/js/jquery.min.js +2 -2
  109. data/lib/jazzy/themes/jony/templates/doc.mustache +36 -0
  110. data/lib/jazzy/themes/jony/templates/task.mustache +3 -3
  111. metadata +75 -5
data/Rakefile CHANGED
@@ -109,6 +109,36 @@ begin
109
109
  FileUtils.cp_r "#{sk_dir}/.build/release/sourcekitten", 'bin'
110
110
  end
111
111
 
112
+ #-- Theme Dependencies -----------------------------------------------------#
113
+
114
+ THEME_FILES = {
115
+ 'jquery/dist/jquery.min.js' => [
116
+ 'themes/apple/assets/js',
117
+ 'themes/fullwidth/assets/js',
118
+ 'themes/jony/assets/js'
119
+ ],
120
+ 'lunr/lunr.min.js' => [
121
+ 'themes/apple/assets/js',
122
+ 'themes/fullwidth/assets/js'
123
+ ],
124
+ 'corejs-typeahead/dist/typeahead.jquery.js' => [
125
+ 'themes/apple/assets/js',
126
+ 'themes/fullwidth/assets/js'
127
+ ],
128
+ 'katex/dist/katex.min.css' => ['extensions/katex/css'],
129
+ 'katex/dist/fonts' => ['extensions/katex/css'],
130
+ 'katex/dist/katex.min.js' => ['extensions/katex/js']
131
+ }
132
+
133
+ desc 'Copies theme dependencies (`npm update/install` by hand first)'
134
+ task :theme_deps do
135
+ THEME_FILES.each_pair do |src, dsts|
136
+ dsts.each do |dst|
137
+ FileUtils.cp_r "js/node_modules/#{src}", "lib/jazzy/#{dst}"
138
+ end
139
+ end
140
+ end
141
+
112
142
  rescue LoadError, NameError => e
113
143
  $stderr.puts "\033[0;31m" \
114
144
  '[!] Some Rake tasks haven been disabled because the environment' \
Binary file
Binary file
@@ -5,8 +5,8 @@ require File.expand_path('lib/jazzy/gem_version.rb', File.dirname(__FILE__))
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = 'jazzy'
7
7
  spec.version = Jazzy::VERSION
8
- spec.authors = ['JP Simard', 'Tim Anglade', 'Samuel Giddins']
9
- spec.email = ['jp@realm.io']
8
+ spec.authors = ['JP Simard', 'Tim Anglade', 'Samuel Giddins', 'John Fairhurst']
9
+ spec.email = ['jp@jpsim.com']
10
10
  spec.summary = 'Soulful docs for Swift & Objective-C.'
11
11
  spec.description = 'Soulful docs for Swift & Objective-C. ' \
12
12
  "Run in your Xcode project's root directory for " \
@@ -27,7 +27,7 @@ Gem::Specification.new do |spec|
27
27
  spec.add_runtime_dependency 'xcinvoke', '~> 0.3.0'
28
28
 
29
29
  spec.add_development_dependency 'bundler', '~> 1.7'
30
- spec.add_development_dependency 'rake', '~> 10.3'
30
+ spec.add_development_dependency 'rake', '~> 13.0'
31
31
 
32
32
  spec.required_ruby_version = '>= 2.0.0'
33
33
  end
@@ -0,0 +1,39 @@
1
+ {
2
+ "name": "jazzy-js",
3
+ "version": "1.0.0",
4
+ "lockfileVersion": 1,
5
+ "requires": true,
6
+ "dependencies": {
7
+ "commander": {
8
+ "version": "2.20.3",
9
+ "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
10
+ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ=="
11
+ },
12
+ "corejs-typeahead": {
13
+ "version": "1.3.1",
14
+ "resolved": "https://registry.npmjs.org/corejs-typeahead/-/corejs-typeahead-1.3.1.tgz",
15
+ "integrity": "sha512-fyNlBNWJNL6EQUnJyAunEzBzRcwR2cEHtZXBi2pndHPOJ/wpOf3wbS+/Oh+kYYS5sKowQcs0LFwMSl6Y2Xeqkw==",
16
+ "requires": {
17
+ "jquery": ">=1.11"
18
+ }
19
+ },
20
+ "jquery": {
21
+ "version": "3.5.1",
22
+ "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.5.1.tgz",
23
+ "integrity": "sha512-XwIBPqcMn57FxfT+Go5pzySnm4KWkT1Tv7gjrpT1srtf8Weynl6R273VJ5GjkRb51IzMp5nbaPjJXMWeju2MKg=="
24
+ },
25
+ "katex": {
26
+ "version": "0.11.1",
27
+ "resolved": "https://registry.npmjs.org/katex/-/katex-0.11.1.tgz",
28
+ "integrity": "sha512-5oANDICCTX0NqYIyAiFCCwjQ7ERu3DQG2JFHLbYOf+fXaMoH8eg/zOq5WSYJsKMi/QebW+Eh3gSM+oss1H/bww==",
29
+ "requires": {
30
+ "commander": "^2.19.0"
31
+ }
32
+ },
33
+ "lunr": {
34
+ "version": "2.3.8",
35
+ "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.8.tgz",
36
+ "integrity": "sha512-oxMeX/Y35PNFuZoHp+jUj5OSEmLCaIH4KTFJh7a93cHBoFmpw2IoPs22VIz7vyO2YUnx2Tn9dzIwO2P/4quIRg=="
37
+ }
38
+ }
39
+ }
@@ -0,0 +1,17 @@
1
+ {
2
+ "name": "jazzy-js",
3
+ "version": "1.0.0",
4
+ "description": "Jazzy theme dependencies",
5
+ "main": "index.js",
6
+ "scripts": {
7
+ "test": "echo \"Error: no test specified\" && exit 1"
8
+ },
9
+ "author": "",
10
+ "license": "MIT",
11
+ "dependencies": {
12
+ "corejs-typeahead": "^1.3.1",
13
+ "jquery": "^3.5.1",
14
+ "katex": "^0.11.1",
15
+ "lunr": "^2.3.8"
16
+ }
17
+ }
@@ -59,7 +59,7 @@ module Jazzy
59
59
 
60
60
  def full_command_line_name
61
61
  long_option_names = command_line.map do |opt|
62
- Regexp.last_match(1) if opt =~ %r{
62
+ Regexp.last_match(1) if opt.to_s =~ %r{
63
63
  ^-- # starts with double dash
64
64
  (?:\[no-\])? # optional prefix for booleans
65
65
  ([^\s]+) # long option name
@@ -156,6 +156,11 @@ module Jazzy
156
156
  'projects.',
157
157
  default: ''
158
158
 
159
+ config_attr :keep_property_attributes,
160
+ command_line: '--[no-]keep-property-attributes',
161
+ description: 'Include the default Objective-C property attributes.',
162
+ default: false
163
+
159
164
  config_attr :config_file,
160
165
  command_line: '--config PATH',
161
166
  description: ['Configuration file (.yaml or .json)',
@@ -284,6 +289,14 @@ module Jazzy
284
289
  parse: ->(ps) { PodspecDocumenter.create_podspec(Pathname(ps)) if ps },
285
290
  default: Dir['*.podspec{,.json}'].first
286
291
 
292
+ config_attr :pod_sources,
293
+ command_line: ['--pod-sources url1,url2,…urlN', Array],
294
+ description: 'A list of sources to find pod dependencies. Used only '\
295
+ 'with --podspec when the podspec contains references to '\
296
+ 'privately hosted pods. You must include the default pod '\
297
+ 'source if public pods are also used.',
298
+ default: []
299
+
287
300
  config_attr :docset_icon,
288
301
  command_line: '--docset-icon FILEPATH',
289
302
  parse: ->(di) { expand_path(di) }
@@ -297,7 +310,8 @@ module Jazzy
297
310
  config_attr :root_url,
298
311
  command_line: ['-r', '--root-url URL'],
299
312
  description: 'Absolute URL root where these docs will be stored',
300
- parse: ->(r) { URI(r) }
313
+ # ensure trailing slash for correct URI.join()
314
+ parse: ->(r) { URI(r.sub(%r{/?$}, '/')) }
301
315
 
302
316
  config_attr :dash_url,
303
317
  command_line: ['-d', '--dash_url URL'],
@@ -316,6 +330,11 @@ module Jazzy
316
330
  description: 'GitHub URL file prefix of this project (e.g. '\
317
331
  'https://github.com/realm/realm-cocoa/tree/v0.87.1)'
318
332
 
333
+ config_attr :docset_playground_url,
334
+ command_line: '--docset-playground-url URL',
335
+ description: 'URL of an interactive playground to demonstrate the '\
336
+ 'framework, linked to from the docset.'
337
+
319
338
  # ──────── Doc generation options ────────
320
339
  config_attr :disable_search,
321
340
  command_line: '--disable-search',
@@ -355,6 +374,18 @@ module Jazzy
355
374
  'Example: https://git.io/v4Bcp'],
356
375
  default: []
357
376
 
377
+ config_attr :custom_categories_unlisted_prefix,
378
+ description: "Prefix for navigation section names that aren't "\
379
+ 'explicitly listed in `custom_categories`.',
380
+ default: 'Other '
381
+
382
+ config_attr :hide_unlisted_documentation,
383
+ command_line: '--[no-]hide-unlisted-documentation',
384
+ description: "Don't include documentation in the sidebar from the "\
385
+ "`documentation` config value that aren't explicitly "\
386
+ 'listed in `custom_categories`.',
387
+ default: false
388
+
358
389
  config_attr :custom_head,
359
390
  command_line: '--head HTML',
360
391
  description: 'Custom HTML to inject into <head></head>.',
@@ -406,6 +437,13 @@ module Jazzy
406
437
  'is "Undocumented", put "" if no text is required',
407
438
  default: 'Undocumented'
408
439
 
440
+ config_attr :separate_global_declarations,
441
+ command_line: '--[no-]separate-global-declarations',
442
+ description: 'Create separate pages for all global declarations '\
443
+ "(classes, structures, enums etc.) even if they don't "\
444
+ 'have children.',
445
+ default: false
446
+
409
447
  # rubocop:enable Style/AlignParameter
410
448
 
411
449
  def initialize
@@ -51,5 +51,9 @@ module Jazzy
51
51
  "#{config.module_name} Docs"
52
52
  end
53
53
  end
54
+
55
+ def enable_katex
56
+ Markdown.has_math
57
+ end
54
58
  end
55
59
  end
@@ -29,23 +29,36 @@ module Jazzy
29
29
  # @return [Array] doc structure comprised of
30
30
  # section names & child names & URLs
31
31
  def self.doc_structure_for_docs(docs)
32
- docs.map do |doc|
33
- children = doc.children
34
- .sort_by { |c| [c.nav_order, c.name, c.usr || ''] }
35
- .flat_map do |child|
36
- # FIXME: include arbitrarily nested extensible types
37
- [{ name: child.name, url: child.url }] +
38
- Array(child.children.select do |sub_child|
39
- sub_child.type.swift_extensible? || sub_child.type.extension?
40
- end).map do |sub_child|
41
- { name: "– #{sub_child.name}", url: sub_child.url }
42
- end
32
+ docs
33
+ .map do |doc|
34
+ children = children_for_doc(doc)
35
+ {
36
+ section: doc.name,
37
+ url: doc.url,
38
+ children: children,
39
+ }
43
40
  end
44
- {
45
- section: doc.name,
46
- url: doc.url,
47
- children: children,
48
- }
41
+ .select do |structure|
42
+ if Config.instance.hide_unlisted_documentation
43
+ unlisted_prefix = Config.instance.custom_categories_unlisted_prefix
44
+ structure[:section] != "#{unlisted_prefix}Guides"
45
+ else
46
+ true
47
+ end
48
+ end
49
+ end
50
+
51
+ def self.children_for_doc(doc)
52
+ doc.children
53
+ .sort_by { |c| [c.nav_order, c.name, c.usr || ''] }
54
+ .flat_map do |child|
55
+ # FIXME: include arbitrarily nested extensible types
56
+ [{ name: child.name, url: child.url }] +
57
+ Array(child.children.select do |sub_child|
58
+ sub_child.type.swift_extensible? || sub_child.type.extension?
59
+ end).map do |sub_child|
60
+ { name: "– #{sub_child.name}", url: sub_child.url }
61
+ end
49
62
  end
50
63
  end
51
64
 
@@ -117,6 +130,7 @@ module Jazzy
117
130
  end
118
131
 
119
132
  copy_assets(output_dir)
133
+ copy_extensions(output_dir)
120
134
 
121
135
  DocsetBuilder.new(output_dir, source_module).build!
122
136
 
@@ -197,6 +211,15 @@ module Jazzy
197
211
  end
198
212
  end
199
213
 
214
+ def self.copy_extensions(destination)
215
+ copy_extension('katex', destination) if Markdown.has_math
216
+ end
217
+
218
+ def self.copy_extension(name, destination)
219
+ ext_directory = Pathname(__FILE__).parent + 'extensions/' + name
220
+ FileUtils.cp_r(ext_directory.children, destination)
221
+ end
222
+
200
223
  def self.render(doc_model, markdown)
201
224
  html = Markdown.render(markdown)
202
225
  SourceKitten.autolink_document(html, doc_model)
@@ -328,6 +351,7 @@ module Jazzy
328
351
  abstract = (item.abstract || '') + (item.discussion || '')
329
352
  {
330
353
  name: item.name,
354
+ name_html: item.name.gsub(':', ':<wbr>'),
331
355
  abstract: abstract,
332
356
  declaration: item.display_declaration,
333
357
  language: item.display_language,
@@ -354,7 +378,7 @@ module Jazzy
354
378
  {
355
379
  name: mark.name,
356
380
  name_html: (render(doc_model, mark.name) if mark.name),
357
- uid: URI.encode(uid),
381
+ uid: ERB::Util.url_encode(uid),
358
382
  items: items,
359
383
  pre_separator: mark.has_start_dash,
360
384
  post_separator: mark.has_end_dash,
@@ -408,12 +432,18 @@ module Jazzy
408
432
  doc[:kind] = doc_model.type.name
409
433
  doc[:dash_type] = doc_model.type.dash_type
410
434
  doc[:declaration] = doc_model.display_declaration
435
+ doc[:language] = doc_model.display_language
436
+ doc[:other_language_declaration] =
437
+ doc_model.display_other_language_declaration
411
438
  doc[:overview] = overview
439
+ doc[:parameters] = doc_model.parameters
440
+ doc[:return] = doc_model.return
412
441
  doc[:structure] = source_module.doc_structure
413
442
  doc[:tasks] = render_tasks(source_module, doc_model.children)
414
443
  doc[:module_name] = source_module.name
415
444
  doc[:author_name] = source_module.author_name
416
445
  doc[:github_url] = source_module.github_url
446
+ doc[:github_token_url] = gh_token_url(doc_model, source_module)
417
447
  doc[:dash_url] = source_module.dash_url
418
448
  doc[:path_to_root] = path_to_root
419
449
  doc[:deprecation_message] = doc_model.deprecation_message
@@ -43,6 +43,8 @@ module Jazzy
43
43
  template.read,
44
44
  lowercase_name: source_module.name.downcase,
45
45
  name: source_module.name,
46
+ root_url: config.root_url,
47
+ playground_url: config.docset_playground_url,
46
48
  )
47
49
  end
48
50
  end
@@ -16,5 +16,13 @@
16
16
  <true/>
17
17
  <key>DashDocSetFamily</key>
18
18
  <string>dashtoc</string>
19
+ {{#root_url}}
20
+ <key>DashDocSetFallbackURL</key>
21
+ <string>{{{.}}}</string>
22
+ {{/root_url}}
23
+ {{#playground_url}}
24
+ <key>DashDocSetPlayURL</key>
25
+ <string>{{{.}}}</string>
26
+ {{/playground_url}}
19
27
  </dict>
20
28
  </plist>