madness 1.2.4 → 1.2.5

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.
@@ -2,6 +2,7 @@ module Madness
2
2
  # Represents a directory with markdown file sand subflders.
3
3
  class Directory
4
4
  include ServerHelper
5
+
5
6
  using ArrayRefinements
6
7
  using StringRefinements
7
8
 
@@ -2,6 +2,7 @@ module Madness
2
2
  # Handle a single document path.
3
3
  class Document
4
4
  include ServerHelper
5
+
5
6
  using StringRefinements
6
7
 
7
8
  attr_reader :base, :path, :type, :file, :dir, :title
@@ -2,6 +2,7 @@ module Madness
2
2
  # Generate a markdown Table of Contents for a single document
3
3
  class InlineTableOfContents
4
4
  include ServerHelper
5
+
5
6
  using StringRefinements
6
7
 
7
8
  attr_reader :text
data/lib/madness/item.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  module Madness
2
2
  class Item
3
3
  include ServerHelper
4
+
4
5
  using StringRefinements
5
6
 
6
7
  attr_reader :path, :type
@@ -4,6 +4,7 @@ module Madness
4
4
  # Handle a pure markdown document.
5
5
  class MarkdownDocument
6
6
  include ServerHelper
7
+
7
8
  using StringRefinements
8
9
 
9
10
  attr_reader :markdown, :title
@@ -2,6 +2,7 @@ module Madness
2
2
  # Handle the navigation links for a given directory
3
3
  class Navigation
4
4
  include ServerHelper
5
+
5
6
  using ArrayRefinements
6
7
  using StringRefinements
7
8
 
@@ -3,6 +3,7 @@ require 'shellwords'
3
3
  module Madness
4
4
  class Search
5
5
  include ServerHelper
6
+
6
7
  using StringRefinements
7
8
 
8
9
  def initialize(path = nil)
@@ -42,7 +42,7 @@ module Madness
42
42
  nav = Navigation.new dir
43
43
  breadcrumbs = Breadcrumbs.new(path).links
44
44
 
45
- if (nav.links.count == 1) && (doc.type == :empty)
45
+ if nav.links.one? && doc.type == :empty
46
46
  redirect to(nav.links.first.href)
47
47
  end
48
48
 
@@ -9,7 +9,6 @@ module Madness
9
9
  # 3. Any override provided later (for example, by the CommandLine class)
10
10
  class Settings
11
11
  include Singleton
12
- using HashRefinements
13
12
 
14
13
  def initialize
15
14
  reset
@@ -64,7 +63,7 @@ module Madness
64
63
  auto_nav: true,
65
64
  auto_toc: true,
66
65
  highlighter: true,
67
- mermaid: false,
66
+ mermaid: true,
68
67
  copy_code: true,
69
68
  shortlinks: false,
70
69
  source_link: nil,
@@ -84,7 +83,7 @@ module Madness
84
83
 
85
84
  def file_data
86
85
  result = if file_exist?
87
- ExtendedYAML.load(filename)&.symbolize_keys
86
+ ExtendedYAML.load(filename)&.transform_keys(&:to_sym)
88
87
  else
89
88
  {}
90
89
  end
@@ -43,8 +43,8 @@ auto_toc: true
43
43
  highlighter: true
44
44
 
45
45
  # enable mermaid diagramming and charting
46
- # put your diagram code inside <div class='mermaid'>...</div>
47
- mermaid: false
46
+ # put your diagram code inside ```mermaid ... ``` code fence
47
+ mermaid: true
48
48
 
49
49
  # enable the copy to clipboard icon for code snippets
50
50
  copy_code: true
@@ -1,3 +1,3 @@
1
1
  module Madness
2
- VERSION = '1.2.4'
2
+ VERSION = '1.2.5'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: madness
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.4
4
+ version: 1.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Danny Ben Shitrit
@@ -111,22 +111,16 @@ dependencies:
111
111
  name: puma
112
112
  requirement: !ruby/object:Gem::Requirement
113
113
  requirements:
114
- - - ">="
115
- - !ruby/object:Gem::Version
116
- version: '5.1'
117
- - - "<"
114
+ - - "~>"
118
115
  - !ruby/object:Gem::Version
119
- version: '7'
116
+ version: '7.1'
120
117
  type: :runtime
121
118
  prerelease: false
122
119
  version_requirements: !ruby/object:Gem::Requirement
123
120
  requirements:
124
- - - ">="
125
- - !ruby/object:Gem::Version
126
- version: '5.1'
127
- - - "<"
121
+ - - "~>"
128
122
  - !ruby/object:Gem::Version
129
- version: '7'
123
+ version: '7.1'
130
124
  - !ruby/object:Gem::Dependency
131
125
  name: rackup
132
126
  requirement: !ruby/object:Gem::Requirement
@@ -289,7 +283,6 @@ files:
289
283
  - lib/madness/markdown_document.rb
290
284
  - lib/madness/navigation.rb
291
285
  - lib/madness/refinements/array_refinements.rb
292
- - lib/madness/refinements/hash_refinements.rb
293
286
  - lib/madness/refinements/string_refinements.rb
294
287
  - lib/madness/rendering/handler.rb
295
288
  - lib/madness/rendering/pandoc.rb
@@ -320,14 +313,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
320
313
  requirements:
321
314
  - - ">="
322
315
  - !ruby/object:Gem::Version
323
- version: '3.1'
316
+ version: '3.2'
324
317
  required_rubygems_version: !ruby/object:Gem::Requirement
325
318
  requirements:
326
319
  - - ">="
327
320
  - !ruby/object:Gem::Version
328
321
  version: '0'
329
322
  requirements: []
330
- rubygems_version: 3.6.9
323
+ rubygems_version: 4.0.0
331
324
  specification_version: 4
332
325
  summary: Instant Markdown Server
333
326
  test_files: []
@@ -1,14 +0,0 @@
1
- module Madness
2
- module HashRefinements
3
- refine Hash do
4
- def symbolize_keys
5
- clone.symbolize_keys!
6
- end
7
-
8
- def symbolize_keys!
9
- keys.each { |key| self[(key.to_sym rescue key) || key] = delete key }
10
- self
11
- end
12
- end
13
- end
14
- end