sleeping_king_studios-docs 0.1.0 → 0.2.0
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/CHANGELOG.md +13 -0
- data/lib/sleeping_king_studios/docs/data/see_tags/class_method_tag.rb +1 -1
- data/lib/sleeping_king_studios/docs/data/see_tags/constant_tag.rb +1 -1
- data/lib/sleeping_king_studios/docs/data/see_tags/definition_tag.rb +1 -1
- data/lib/sleeping_king_studios/docs/data/see_tags/instance_method_tag.rb +1 -1
- data/lib/sleeping_king_studios/docs/data/see_tags/reference_tag.rb +3 -3
- data/lib/sleeping_king_studios/docs/jekyll/plugins/liquid/filters/anchorize_slug.rb +27 -0
- data/lib/sleeping_king_studios/docs/jekyll/plugins/liquid/filters.rb +11 -0
- data/lib/sleeping_king_studios/docs/jekyll/plugins/liquid.rb +11 -0
- data/lib/sleeping_king_studios/docs/jekyll/plugins/required.rb +10 -0
- data/lib/sleeping_king_studios/docs/jekyll/plugins.rb +11 -0
- data/lib/sleeping_king_studios/docs/jekyll.rb +10 -0
- data/lib/sleeping_king_studios/docs/templates/config.yml.erb +2 -0
- data/lib/sleeping_king_studios/docs/templates/includes/reference/attribute.md +1 -1
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/table-of-contents/class_attributes.md +1 -1
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/table-of-contents/class_methods.md +1 -1
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/table-of-contents/instance_attributes.md +1 -1
- data/lib/sleeping_king_studios/docs/templates/includes/reference/definitions/table-of-contents/instance_methods.md +1 -1
- data/lib/sleeping_king_studios/docs/templates/includes/reference/method.md +1 -1
- data/lib/sleeping_king_studios/docs/version.rb +1 -1
- metadata +9 -3
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 03ca814ce7d3b3f69036b8c1b0329efc653ee3e60a1171256796cb0b01f0b78e
         | 
| 4 | 
            +
              data.tar.gz: a55bcfc03b9e3dcce0d1031f71f1a33eca621cdb8c51310b22b2ecbccac5e0ac
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 144d38bb823272073c5df7d11a97a1a1d9418e9bfda1e2fae6a3504f832b914871feb928b4df7922ba86fc61c6226a183c1e562c1245c4597f9fbd08ffaa3a9c
         | 
| 7 | 
            +
              data.tar.gz: 9cddc82b060467f8021d14c1d0b3086007f6fdd5a464424900ddd1263c965e98f93e0cb7894dce7a213f6dd834639fb281c12a85f1efd883d9e3b4bbe6426ac1
         | 
    
        data/CHANGELOG.md
    CHANGED
    
    | @@ -1,5 +1,18 @@ | |
| 1 1 | 
             
            # Changelog
         | 
| 2 2 |  | 
| 3 | 
            +
            # 0.2.0
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            > **Upgrade Notes**
         | 
| 6 | 
            +
            >
         | 
| 7 | 
            +
            > Add the following to your `_config.yml` files:
         | 
| 8 | 
            +
            >
         | 
| 9 | 
            +
            > ```markdown
         | 
| 10 | 
            +
            > plugins:
         | 
| 11 | 
            +
            >   - sleeping_king_studios/docs/jekyll/plugins/required
         | 
| 12 | 
            +
            > ```
         | 
| 13 | 
            +
             | 
| 14 | 
            +
            - Improved handling of method names with characters that are not valid for HTML anchors, such as `[]`, `=`, and `?`.
         | 
| 15 | 
            +
             | 
| 3 16 | 
             
            # 0.1.0
         | 
| 4 17 |  | 
| 5 18 | 
             
            Initial development release.
         | 
| @@ -51,10 +51,10 @@ module SleepingKingStudios::Docs::Data::SeeTags | |
| 51 51 | 
             
                def absolute_path?
         | 
| 52 52 | 
             
                  return @absolute_path unless @absolute_path.nil?
         | 
| 53 53 |  | 
| 54 | 
            -
                  @absolute_path =  | 
| 54 | 
            +
                  @absolute_path = registry_item_exists?(reference)
         | 
| 55 55 | 
             
                end
         | 
| 56 56 |  | 
| 57 | 
            -
                def  | 
| 57 | 
            +
                def registry_item_exists?(_)
         | 
| 58 58 | 
             
                  false
         | 
| 59 59 | 
             
                end
         | 
| 60 60 |  | 
| @@ -78,7 +78,7 @@ module SleepingKingStudios::Docs::Data::SeeTags | |
| 78 78 |  | 
| 79 79 | 
             
                  return @relative_path = false if parent.root?
         | 
| 80 80 |  | 
| 81 | 
            -
                  @relative_path =  | 
| 81 | 
            +
                  @relative_path = registry_item_exists?(qualified_path)
         | 
| 82 82 | 
             
                end
         | 
| 83 83 |  | 
| 84 84 | 
             
                def slugify_path(path)
         | 
| @@ -0,0 +1,27 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            require 'sleeping_king_studios/docs/jekyll/plugins/liquid/filters'
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            module SleepingKingStudios::Docs::Jekyll::Plugins::Liquid::Filters
         | 
| 6 | 
            +
              # Liquid filter for converting a reference slug to a safe HTML anchor.
         | 
| 7 | 
            +
              module AnchorizeSlug
         | 
| 8 | 
            +
                # Converts the slug to a string usable as an HTML anchor.
         | 
| 9 | 
            +
                #
         | 
| 10 | 
            +
                # Certain characters are valid Ruby identifiers but cause issues when used
         | 
| 11 | 
            +
                # as HTML anchors, such as equals signs, hashes, question marks, and square
         | 
| 12 | 
            +
                # brackets. This method replaces each with a placeholder value.
         | 
| 13 | 
            +
                #
         | 
| 14 | 
            +
                # @param slug [String] the slug to convert.
         | 
| 15 | 
            +
                #
         | 
| 16 | 
            +
                # @return [String] the converted slug.
         | 
| 17 | 
            +
                def anchorize_slug(slug)
         | 
| 18 | 
            +
                  slug
         | 
| 19 | 
            +
                    .to_s
         | 
| 20 | 
            +
                    .gsub('=', '--equals')
         | 
| 21 | 
            +
                    .gsub('?', '--predicate')
         | 
| 22 | 
            +
                    .gsub('[]', '--brackets')
         | 
| 23 | 
            +
                end
         | 
| 24 | 
            +
             | 
| 25 | 
            +
                ::Liquid::Template.register_filter(self) if defined?(::Liquid::Template)
         | 
| 26 | 
            +
              end
         | 
| 27 | 
            +
            end
         | 
| @@ -0,0 +1,11 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            require 'sleeping_king_studios/docs/jekyll/plugins/liquid'
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            module SleepingKingStudios::Docs::Jekyll::Plugins::Liquid
         | 
| 6 | 
            +
              # Filters for extending Liquid template functionality.
         | 
| 7 | 
            +
              module Filters
         | 
| 8 | 
            +
                autoload :AnchorizeSlug,
         | 
| 9 | 
            +
                  'sleeping_king_studios/docs/jekyll/plugins/liquid/filters/anchorize_slug'
         | 
| 10 | 
            +
              end
         | 
| 11 | 
            +
            end
         | 
| @@ -0,0 +1,11 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            require 'sleeping_king_studios/docs/jekyll/plugins'
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            module SleepingKingStudios::Docs::Jekyll::Plugins
         | 
| 6 | 
            +
              # Plugins for extending Liquid template functionality.
         | 
| 7 | 
            +
              module Liquid
         | 
| 8 | 
            +
                autoload :Filters,
         | 
| 9 | 
            +
                  'sleeping_king_studios/docs/jekyll/plugins/liquid/filters'
         | 
| 10 | 
            +
              end
         | 
| 11 | 
            +
            end
         | 
| @@ -0,0 +1,10 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            require 'sleeping_king_studios/docs/jekyll/plugins'
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            module SleepingKingStudios::Docs::Jekyll::Plugins
         | 
| 6 | 
            +
              # Helper module for loading all required Jekyll plugins.
         | 
| 7 | 
            +
              module Required
         | 
| 8 | 
            +
                include Liquid::Filters::AnchorizeSlug
         | 
| 9 | 
            +
              end
         | 
| 10 | 
            +
            end
         | 
| @@ -0,0 +1,11 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            require 'sleeping_king_studios/docs/jekyll'
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            module SleepingKingStudios::Docs::Jekyll
         | 
| 6 | 
            +
              # Plugins for extending Jekyll functionality.
         | 
| 7 | 
            +
              module Plugins
         | 
| 8 | 
            +
                autoload :Liquid,   'sleeping_king_studios/docs/jekyll/plugins/liquid'
         | 
| 9 | 
            +
                autoload :Required, 'sleeping_king_studios/docs/jekyll/plugins/required'
         | 
| 10 | 
            +
              end
         | 
| 11 | 
            +
            end
         | 
| @@ -0,0 +1,10 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            require 'sleeping_king_studios/docs'
         | 
| 4 | 
            +
             | 
| 5 | 
            +
            module SleepingKingStudios::Docs
         | 
| 6 | 
            +
              # Namespace for working with Jekyll-specific functionality.
         | 
| 7 | 
            +
              module Jekyll
         | 
| 8 | 
            +
                autoload :Plugins, 'sleeping_king_studios/docs/jekyll/plugins'
         | 
| 9 | 
            +
              end
         | 
| 10 | 
            +
            end
         | 
| @@ -1,6 +1,6 @@ | |
| 1 1 | 
             
            {% assign method = site.methods | where: "data_path", include.attribute.path | where: "version", page.version | first %}
         | 
| 2 2 | 
             
            {% capture prefix %}{{ include.type }}-attribute{% endcapture %}
         | 
| 3 | 
            -
            {% capture heading_id %}{{ prefix }}-{{ method.slug |  | 
| 3 | 
            +
            {% capture heading_id %}{{ prefix }}-{{ method.slug | anchorize_slug }}{% endcapture %}
         | 
| 4 4 |  | 
| 5 5 | 
             
            {% include reference/attributes/heading.md attribute=include.attribute heading_id=heading_id method=method type=include.type %}
         | 
| 6 6 |  | 
| @@ -3,7 +3,7 @@ | |
| 3 3 | 
             
              <a href="#class-attributes">Class Attributes</a>
         | 
| 4 4 | 
             
              <ul style="margin-bottom: 0px;">
         | 
| 5 5 | 
             
              {% for attribute in include.definition.class_attributes %}
         | 
| 6 | 
            -
                <li><a href="#class-attribute-{{ attribute.slug |  | 
| 6 | 
            +
                <li><a href="#class-attribute-{{ attribute.slug | anchorize_slug }}">{{ attribute.name }}</a></li>
         | 
| 7 7 | 
             
              {% endfor %}
         | 
| 8 8 | 
             
              </ul>
         | 
| 9 9 | 
             
            </li>
         | 
| @@ -3,7 +3,7 @@ | |
| 3 3 | 
             
              <a href="#class-methods">Class Methods</a>
         | 
| 4 4 | 
             
              <ul style="margin-bottom: 0px;">
         | 
| 5 5 | 
             
              {% for method in include.definition.class_methods %}
         | 
| 6 | 
            -
                <li><a href="#class-method-{{ method.slug |  | 
| 6 | 
            +
                <li><a href="#class-method-{{ method.slug | anchorize_slug }}">{{ method.name }}</a></li>
         | 
| 7 7 | 
             
              {% endfor %}
         | 
| 8 8 | 
             
              </ul>
         | 
| 9 9 | 
             
            </li>
         | 
| @@ -3,7 +3,7 @@ | |
| 3 3 | 
             
              <a href="#instance-attributes">Instance Attributes</a>
         | 
| 4 4 | 
             
              <ul style="margin-bottom: 0px;">
         | 
| 5 5 | 
             
              {% for attribute in include.definition.instance_attributes %}
         | 
| 6 | 
            -
                <li><a href="#instance-attribute-{{ attribute.slug |  | 
| 6 | 
            +
                <li><a href="#instance-attribute-{{ attribute.slug | anchorize_slug }}">{{ attribute.name }}</a></li>
         | 
| 7 7 | 
             
              {% endfor %}
         | 
| 8 8 | 
             
              </ul>
         | 
| 9 9 | 
             
            </li>
         | 
| @@ -3,7 +3,7 @@ | |
| 3 3 | 
             
              <a href="#instance-methods">Instance Methods</a>
         | 
| 4 4 | 
             
              <ul style="margin-bottom: 0px;">
         | 
| 5 5 | 
             
              {% for method in include.definition.instance_methods %}
         | 
| 6 | 
            -
                <li><a href="#instance-method-{{ method.slug |  | 
| 6 | 
            +
                <li><a href="#instance-method-{{ method.slug | anchorize_slug }}">{{ method.name }}</a></li>
         | 
| 7 7 | 
             
              {% endfor %}
         | 
| 8 8 | 
             
              </ul>
         | 
| 9 9 | 
             
            </li>
         | 
| @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            {% assign method = site.methods | where: "data_path", include.path | where: "version", page.version | first %}
         | 
| 2 2 | 
             
            {% if method %}
         | 
| 3 3 | 
             
            {% capture prefix %}{{ include.type }}-method{% endcapture %}
         | 
| 4 | 
            -
            {% capture heading_id %}{{ prefix }}-{{ method.slug |  | 
| 4 | 
            +
            {% capture heading_id %}{{ prefix }}-{{ method.slug | anchorize_slug }}{% endcapture %}
         | 
| 5 5 |  | 
| 6 6 | 
             
            {% include reference/methods/heading.md heading_id=heading_id method=method type=include.type %}
         | 
| 7 7 |  | 
    
        metadata
    CHANGED
    
    | @@ -1,13 +1,13 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: sleeping_king_studios-docs
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0. | 
| 4 | 
            +
              version: 0.2.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Rob "Merlin" Smith
         | 
| 8 8 | 
             
            bindir: bin
         | 
| 9 9 | 
             
            cert_chain: []
         | 
| 10 | 
            -
            date:  | 
| 10 | 
            +
            date: 1980-01-02 00:00:00.000000000 Z
         | 
| 11 11 | 
             
            dependencies:
         | 
| 12 12 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 13 13 | 
             
              name: cuprum
         | 
| @@ -151,6 +151,12 @@ files: | |
| 151 151 | 
             
            - lib/sleeping_king_studios/docs/errors/file_not_found.rb
         | 
| 152 152 | 
             
            - lib/sleeping_king_studios/docs/errors/invalid_directory.rb
         | 
| 153 153 | 
             
            - lib/sleeping_king_studios/docs/errors/invalid_file.rb
         | 
| 154 | 
            +
            - lib/sleeping_king_studios/docs/jekyll.rb
         | 
| 155 | 
            +
            - lib/sleeping_king_studios/docs/jekyll/plugins.rb
         | 
| 156 | 
            +
            - lib/sleeping_king_studios/docs/jekyll/plugins/liquid.rb
         | 
| 157 | 
            +
            - lib/sleeping_king_studios/docs/jekyll/plugins/liquid/filters.rb
         | 
| 158 | 
            +
            - lib/sleeping_king_studios/docs/jekyll/plugins/liquid/filters/anchorize_slug.rb
         | 
| 159 | 
            +
            - lib/sleeping_king_studios/docs/jekyll/plugins/required.rb
         | 
| 154 160 | 
             
            - lib/sleeping_king_studios/docs/registry.rb
         | 
| 155 161 | 
             
            - lib/sleeping_king_studios/docs/registry_query.rb
         | 
| 156 162 | 
             
            - lib/sleeping_king_studios/docs/tasks.rb
         | 
| @@ -237,7 +243,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 237 243 | 
             
                - !ruby/object:Gem::Version
         | 
| 238 244 | 
             
                  version: '0'
         | 
| 239 245 | 
             
            requirements: []
         | 
| 240 | 
            -
            rubygems_version: 3.6. | 
| 246 | 
            +
            rubygems_version: 3.6.9
         | 
| 241 247 | 
             
            specification_version: 4
         | 
| 242 248 | 
             
            summary: Tools for generating a versioned documentation site from YARD docs.
         | 
| 243 249 | 
             
            test_files: []
         |