jekyll-attendease 0.4.3 → 0.4.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/jekyll-attendease.rb +40 -7
 - data/templates/_includes/attendease/presenters/presenter.html +5 -2
 - data/templates/_includes/attendease/schedule/session.html +22 -4
 - data/templates/_includes/attendease/schedule/sessions.html +3 -2
 - data/templates/_includes/attendease/venues/index.html +3 -2
 - metadata +18 -3
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA1:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 4f867f34c0e4cc4dabc62736cce3090ff8704f69
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 3762e813ed104e03303573e54c66e811bc01b79c
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: ff901e6c108f5552659bdb976d175833ba5d3b064c74310705290188e2cb4b43be28b195ed5a29376b787fd25818b645af088093d0bff430b4e233ab2ad1fbcb
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 58a84db46c4bff9098325473b0da0f9f47d16364209b97d5426d45005edac6bcf9250d1a9c060a62f0e88db6776f0e7c49011eedf8828ea110c661d825f90a67
         
     | 
    
        data/lib/jekyll-attendease.rb
    CHANGED
    
    | 
         @@ -1,5 +1,6 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            require 'httparty'
         
     | 
| 
       2 
2 
     | 
    
         
             
            require 'json'
         
     | 
| 
      
 3 
     | 
    
         
            +
            require 'i18n'
         
     | 
| 
       3 
4 
     | 
    
         | 
| 
       4 
5 
     | 
    
         
             
            module Jekyll
         
     | 
| 
       5 
6 
     | 
    
         
             
              module Attendease
         
     | 
| 
         @@ -35,7 +36,7 @@ module Jekyll 
     | 
|
| 
       35 
36 
     | 
    
         | 
| 
       36 
37 
     | 
    
         
             
                        FileUtils.mkdir_p(@attendease_data_path)
         
     | 
| 
       37 
38 
     | 
    
         | 
| 
       38 
     | 
    
         
            -
                        data_files = ['site.json', 'event.json', 'sessions.json', 'presenters.json', 'rooms.json', 'filters.json', 'venues.json']
         
     | 
| 
      
 39 
     | 
    
         
            +
                        data_files = ['site.json', 'event.json', 'sessions.json', 'presenters.json', 'rooms.json', 'filters.json', 'venues.json', 'lingo.json', 'lingo.yml']
         
     | 
| 
       39 
40 
     | 
    
         | 
| 
       40 
41 
     | 
    
         
             
                        data_files.each do |file_name|
         
     | 
| 
       41 
42 
     | 
    
         
             
                          update_data = true
         
     | 
| 
         @@ -44,9 +45,13 @@ module Jekyll 
     | 
|
| 
       44 
45 
     | 
    
         
             
                            if (Time.now.to_i - File.mtime("#{@attendease_data_path}/#{file_name}").to_i) <= (@attendease_config['cache_expiry'].nil? ? 30 : @attendease_config['cache_expiry'])  # file is less than 30 seconds old
         
     | 
| 
       45 
46 
     | 
    
         
             
                              update_data = false
         
     | 
| 
       46 
47 
     | 
    
         | 
| 
       47 
     | 
    
         
            -
                               
     | 
| 
      
 48 
     | 
    
         
            +
                              if file_name.match(/json$/)
         
     | 
| 
      
 49 
     | 
    
         
            +
                                json = File.read("#{@attendease_data_path}/#{file_name}")
         
     | 
| 
       48 
50 
     | 
    
         | 
| 
       49 
     | 
    
         
            -
             
     | 
| 
      
 51 
     | 
    
         
            +
                                data = JSON.parse(json)
         
     | 
| 
      
 52 
     | 
    
         
            +
                              else
         
     | 
| 
      
 53 
     | 
    
         
            +
                                data = File.read("#{@attendease_data_path}/#{file_name}")
         
     | 
| 
      
 54 
     | 
    
         
            +
                              end
         
     | 
| 
       50 
55 
     | 
    
         
             
                            end
         
     | 
| 
       51 
56 
     | 
    
         
             
                          end
         
     | 
| 
       52 
57 
     | 
    
         | 
| 
         @@ -54,15 +59,22 @@ module Jekyll 
     | 
|
| 
       54 
59 
     | 
    
         
             
                            options = {}
         
     | 
| 
       55 
60 
     | 
    
         
             
                            options.merge!(:headers => {'X-Event-Token' => @attendease_config['access_token']}) if @attendease_config['access_token']
         
     | 
| 
       56 
61 
     | 
    
         | 
| 
       57 
     | 
    
         
            -
                             
     | 
| 
      
 62 
     | 
    
         
            +
                            request_filename = file_name.gsub(/yml$/, 'yaml')
         
     | 
| 
      
 63 
     | 
    
         
            +
                            data = get("#{@attendease_config['api_host']}api/#{request_filename}", options)
         
     | 
| 
       58 
64 
     | 
    
         | 
| 
       59 
     | 
    
         
            -
                            if (data.is_a?(Hash) && !data['error']) || data.is_a?(Array)
         
     | 
| 
      
 65 
     | 
    
         
            +
                            #if (file_name.match(/yaml$/) || data.is_a?(Hash) && !data['error']) || data.is_a?(Array)
         
     | 
| 
      
 66 
     | 
    
         
            +
                            if (data.response.is_a?(Net::HTTPOK))
         
     | 
| 
       60 
67 
     | 
    
         
             
                              puts "" if file_name == 'site.json' # leading space, that's all.
         
     | 
| 
       61 
68 
     | 
    
         
             
                              puts "                    [Attendease] Saving #{file_name} data..."
         
     | 
| 
       62 
69 
     | 
    
         | 
| 
       63 
     | 
    
         
            -
             
     | 
| 
      
 70 
     | 
    
         
            +
             
     | 
| 
      
 71 
     | 
    
         
            +
                              if file_name.match(/json$/)
         
     | 
| 
      
 72 
     | 
    
         
            +
                                File.open("#{@attendease_data_path}/#{file_name}", 'w+') { |file| file.write(data.parsed_response.to_json) }
         
     | 
| 
      
 73 
     | 
    
         
            +
                              else
         
     | 
| 
      
 74 
     | 
    
         
            +
                                File.open("#{@attendease_data_path}/#{file_name}", 'w+') { |file| file.write(data.body) }
         
     | 
| 
      
 75 
     | 
    
         
            +
                              end
         
     | 
| 
       64 
76 
     | 
    
         
             
                            else
         
     | 
| 
       65 
     | 
    
         
            -
                              raise " 
     | 
| 
      
 77 
     | 
    
         
            +
                              raise "Request failed for #{@attendease_config['api_host']}api/#{request_filename}. Is your Attendease api_host site properly in _config.yml?"
         
     | 
| 
       66 
78 
     | 
    
         
             
                            end
         
     | 
| 
       67 
79 
     | 
    
         
             
                          end
         
     | 
| 
       68 
80 
     | 
    
         | 
| 
         @@ -150,6 +162,26 @@ module Jekyll 
     | 
|
| 
       150 
162 
     | 
    
         
             
                  end
         
     | 
| 
       151 
163 
     | 
    
         
             
                end
         
     | 
| 
       152 
164 
     | 
    
         | 
| 
      
 165 
     | 
    
         
            +
                class AttendeaseTranslateTag < Liquid::Tag
         
     | 
| 
      
 166 
     | 
    
         
            +
                  def initialize(tag_name, params, tokens)
         
     | 
| 
      
 167 
     | 
    
         
            +
                    super
         
     | 
| 
      
 168 
     | 
    
         
            +
                    @args = split_params(params)
         
     | 
| 
      
 169 
     | 
    
         
            +
                  end
         
     | 
| 
      
 170 
     | 
    
         
            +
             
     | 
| 
      
 171 
     | 
    
         
            +
                  def split_params(params)
         
     | 
| 
      
 172 
     | 
    
         
            +
                    params.split(",").map(&:strip)
         
     | 
| 
      
 173 
     | 
    
         
            +
                  end
         
     | 
| 
      
 174 
     | 
    
         
            +
             
     | 
| 
      
 175 
     | 
    
         
            +
                  def render(context)
         
     | 
| 
      
 176 
     | 
    
         
            +
                    I18n::Backend::Simple.include(I18n::Backend::Pluralization)
         
     | 
| 
      
 177 
     | 
    
         
            +
                    I18n.enforce_available_locales = false
         
     | 
| 
      
 178 
     | 
    
         
            +
                    i18n_path = File.join(context.registers[:site].config['source'], '_attendease_data', 'lingo.yml')
         
     | 
| 
      
 179 
     | 
    
         
            +
                    I18n.load_path << i18n_path unless I18n.load_path.include?(i18n_path)
         
     | 
| 
      
 180 
     | 
    
         
            +
                    I18n.locale = context.registers[:page]['lang'] || context.registers[:site].config['attendease']['lang'] || :en
         
     | 
| 
      
 181 
     | 
    
         
            +
                    I18n.t(@args[0], :count => context['t_size'].nil? ? 0 : context['t_size'].to_i)
         
     | 
| 
      
 182 
     | 
    
         
            +
                  end
         
     | 
| 
      
 183 
     | 
    
         
            +
                end
         
     | 
| 
      
 184 
     | 
    
         
            +
             
     | 
| 
       153 
185 
     | 
    
         
             
                class AttendeaseAuthAccountTag < Liquid::Tag
         
     | 
| 
       154 
186 
     | 
    
         
             
                  def render(context)
         
     | 
| 
       155 
187 
     | 
    
         
             
                    '<div id="attendease-auth-account"></div>'
         
     | 
| 
         @@ -551,3 +583,4 @@ Liquid::Template.register_tag('attendease_scheduler_script', Jekyll::Attendease: 
     | 
|
| 
       551 
583 
     | 
    
         
             
            Liquid::Template.register_tag('attendease_locales_script', Jekyll::Attendease::AttendeaseLocalesScriptTag)
         
     | 
| 
       552 
584 
     | 
    
         
             
            Liquid::Template.register_tag('attendease_auth_account', Jekyll::Attendease::AttendeaseAuthAccountTag)
         
     | 
| 
       553 
585 
     | 
    
         
             
            Liquid::Template.register_tag('attendease_auth_action', Jekyll::Attendease::AttendeaseAuthActionTag)
         
     | 
| 
      
 586 
     | 
    
         
            +
            Liquid::Template.register_tag('t', Jekyll::Attendease::AttendeaseTranslateTag)
         
     | 
| 
         @@ -23,7 +23,10 @@ 
     | 
|
| 
       23 
23 
     | 
    
         
             
              </div>
         
     | 
| 
       24 
24 
     | 
    
         | 
| 
       25 
25 
     | 
    
         
             
              <div class="attendease-sessions">
         
     | 
| 
       26 
     | 
    
         
            -
                 
     | 
| 
      
 26 
     | 
    
         
            +
                {% if site.attendease.data.event_session_times_heading == true %}
         
     | 
| 
      
 27 
     | 
    
         
            +
                {% assign t_size = page.presenter.sessions.size %}
         
     | 
| 
      
 28 
     | 
    
         
            +
                <h2 class="attendease-sessions-heading">{% t event.lingo.sessions %}</h2>
         
     | 
| 
      
 29 
     | 
    
         
            +
                {% endif %}
         
     | 
| 
       27 
30 
     | 
    
         | 
| 
       28 
31 
     | 
    
         
             
                {% for session in page.presenter.sessions %}
         
     | 
| 
       29 
32 
     | 
    
         
             
                  <div class="attendease-session-and-instances" data-session-id="{{ session.id }}">
         
     | 
| 
         @@ -68,4 +71,4 @@ 
     | 
|
| 
       68 
71 
     | 
    
         
             
                {% endfor %}
         
     | 
| 
       69 
72 
     | 
    
         | 
| 
       70 
73 
     | 
    
         
             
              </div>
         
     | 
| 
       71 
     | 
    
         
            -
            </div>
         
     | 
| 
      
 74 
     | 
    
         
            +
            </div>
         
     | 
| 
         @@ -4,12 +4,17 @@ 
     | 
|
| 
       4 
4 
     | 
    
         
             
                  <h1>{{ page.session.name }}</h1>
         
     | 
| 
       5 
5 
     | 
    
         
             
                </div>
         
     | 
| 
       6 
6 
     | 
    
         | 
| 
      
 7 
     | 
    
         
            +
                {% if site.attendease.data.event_session_description_first == true %}
         
     | 
| 
       7 
8 
     | 
    
         
             
                <div class="attendease-description">
         
     | 
| 
       8 
9 
     | 
    
         
             
                  {{ page.session.description | markdownify }}
         
     | 
| 
       9 
10 
     | 
    
         
             
                </div>
         
     | 
| 
      
 11 
     | 
    
         
            +
                {% endif %}
         
     | 
| 
       10 
12 
     | 
    
         | 
| 
       11 
13 
     | 
    
         
             
                <div class="attendease-instances attendease-meta-item">
         
     | 
| 
       12 
     | 
    
         
            -
                   
     | 
| 
      
 14 
     | 
    
         
            +
                  {% if site.attendease.data.event_session_times_heading == true %}
         
     | 
| 
      
 15 
     | 
    
         
            +
                  {% assign t_size = page.session.instances.size %}
         
     | 
| 
      
 16 
     | 
    
         
            +
                  <h2 class="attendease-times-heading">{% t event.lingo.times %}</h2>
         
     | 
| 
      
 17 
     | 
    
         
            +
                  {% endif %}
         
     | 
| 
       13 
18 
     | 
    
         | 
| 
       14 
19 
     | 
    
         
             
                  {% for instance in page.session.instances %}
         
     | 
| 
       15 
20 
     | 
    
         
             
                    <div class="attendease-instance" data-instance-id="{{ instance.id }}">
         
     | 
| 
         @@ -43,11 +48,21 @@ 
     | 
|
| 
       43 
48 
     | 
    
         
             
                  {% endfor %}
         
     | 
| 
       44 
49 
     | 
    
         | 
| 
       45 
50 
     | 
    
         
             
                </div>
         
     | 
| 
      
 51 
     | 
    
         
            +
             
     | 
| 
      
 52 
     | 
    
         
            +
                {% if site.attendease.data.event_session_description_first != true %}
         
     | 
| 
      
 53 
     | 
    
         
            +
                <div class="attendease-description">
         
     | 
| 
      
 54 
     | 
    
         
            +
                  {{ page.session.description | markdownify }}
         
     | 
| 
      
 55 
     | 
    
         
            +
                </div>
         
     | 
| 
      
 56 
     | 
    
         
            +
                {% endif %}
         
     | 
| 
      
 57 
     | 
    
         
            +
             
     | 
| 
       46 
58 
     | 
    
         
             
              </div>
         
     | 
| 
       47 
59 
     | 
    
         | 
| 
       48 
60 
     | 
    
         
             
              <div class="attendease-session-meta">
         
     | 
| 
       49 
61 
     | 
    
         
             
                <div class="attendease-presenters attendease-meta-item">
         
     | 
| 
       50 
     | 
    
         
            -
                   
     | 
| 
      
 62 
     | 
    
         
            +
                  {% if site.attendease.data.event_session_presenters_heading == true %}
         
     | 
| 
      
 63 
     | 
    
         
            +
                  {% assign t_size = page.session.presenters.size %}
         
     | 
| 
      
 64 
     | 
    
         
            +
                  <h2 class="attendease-presenter-heading">{% t event.lingo.presenters %}</h2>
         
     | 
| 
      
 65 
     | 
    
         
            +
                  {% endif %}
         
     | 
| 
       51 
66 
     | 
    
         | 
| 
       52 
67 
     | 
    
         
             
                  {% for presenter in page.session.presenters %}
         
     | 
| 
       53 
68 
     | 
    
         
             
                    <div class="attendease-presenter" data-presenter-id="{{ presenter.id }}">
         
     | 
| 
         @@ -72,7 +87,10 @@ 
     | 
|
| 
       72 
87 
     | 
    
         
             
                </div>
         
     | 
| 
       73 
88 
     | 
    
         | 
| 
       74 
89 
     | 
    
         
             
                <div class="attendease-filters attendease-meta-item">
         
     | 
| 
       75 
     | 
    
         
            -
                   
     | 
| 
      
 90 
     | 
    
         
            +
                  {% if site.attendease.data.event_session_filters_heading == true %}
         
     | 
| 
      
 91 
     | 
    
         
            +
                  {% assign t_size = page.session.filters.size %}
         
     | 
| 
      
 92 
     | 
    
         
            +
                  <h2 class="attendease-filter-heading">{% t event.lingo.filters %}</h2>
         
     | 
| 
      
 93 
     | 
    
         
            +
                  {% endif %}
         
     | 
| 
       76 
94 
     | 
    
         | 
| 
       77 
95 
     | 
    
         
             
                  {% for filter in page.session.filters %}
         
     | 
| 
       78 
96 
     | 
    
         
             
                    <div class="attendease-filter">
         
     | 
| 
         @@ -90,4 +108,4 @@ 
     | 
|
| 
       90 
108 
     | 
    
         
             
                  {% endfor %}
         
     | 
| 
       91 
109 
     | 
    
         
             
                </div>
         
     | 
| 
       92 
110 
     | 
    
         
             
              </div>
         
     | 
| 
       93 
     | 
    
         
            -
            </div>
         
     | 
| 
      
 111 
     | 
    
         
            +
            </div>
         
     | 
| 
         @@ -1,6 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            <div class="attendease-schedule">
         
     | 
| 
       2 
2 
     | 
    
         
             
              <div class="attendease-header">
         
     | 
| 
       3 
     | 
    
         
            -
                 
     | 
| 
      
 3 
     | 
    
         
            +
                {% assign t_size = page.session.size %}
         
     | 
| 
      
 4 
     | 
    
         
            +
                <h1>{% t event.lingo.sessions %}</h2>
         
     | 
| 
       4 
5 
     | 
    
         
             
              </div>
         
     | 
| 
       5 
6 
     | 
    
         | 
| 
       6 
7 
     | 
    
         
             
              {% for session in page.sessions %}
         
     | 
| 
         @@ -20,4 +21,4 @@ 
     | 
|
| 
       20 
21 
     | 
    
         
             
                </div>
         
     | 
| 
       21 
22 
     | 
    
         
             
              {% endfor %}
         
     | 
| 
       22 
23 
     | 
    
         | 
| 
       23 
     | 
    
         
            -
            </div>
         
     | 
| 
      
 24 
     | 
    
         
            +
            </div>
         
     | 
| 
         @@ -1,6 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            <div class="attendease-venues">
         
     | 
| 
       2 
2 
     | 
    
         
             
              <div class="attendease-header">
         
     | 
| 
       3 
     | 
    
         
            -
                 
     | 
| 
      
 3 
     | 
    
         
            +
                {% assign t_size = page.venues.size %}
         
     | 
| 
      
 4 
     | 
    
         
            +
                <h1>{% t event.lingo.venues %}</h2>
         
     | 
| 
       4 
5 
     | 
    
         
             
              </div>
         
     | 
| 
       5 
6 
     | 
    
         | 
| 
       6 
7 
     | 
    
         
             
              {% for venue in page.venues %}
         
     | 
| 
         @@ -41,4 +42,4 @@ 
     | 
|
| 
       41 
42 
     | 
    
         | 
| 
       42 
43 
     | 
    
         
             
                </div>
         
     | 
| 
       43 
44 
     | 
    
         
             
              {% endfor %}
         
     | 
| 
       44 
     | 
    
         
            -
            </div>
         
     | 
| 
      
 45 
     | 
    
         
            +
            </div>
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: jekyll-attendease
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 0.4. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.4.4
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Michael Wood
         
     | 
| 
         @@ -10,7 +10,7 @@ authors: 
     | 
|
| 
       10 
10 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       11 
11 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       12 
12 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       13 
     | 
    
         
            -
            date: 2014- 
     | 
| 
      
 13 
     | 
    
         
            +
            date: 2014-02-02 00:00:00.000000000 Z
         
     | 
| 
       14 
14 
     | 
    
         
             
            dependencies:
         
     | 
| 
       15 
15 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       16 
16 
     | 
    
         
             
              name: httparty
         
     | 
| 
         @@ -40,6 +40,20 @@ dependencies: 
     | 
|
| 
       40 
40 
     | 
    
         
             
                - - '>='
         
     | 
| 
       41 
41 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       42 
42 
     | 
    
         
             
                    version: '0'
         
     | 
| 
      
 43 
     | 
    
         
            +
            - !ruby/object:Gem::Dependency
         
     | 
| 
      
 44 
     | 
    
         
            +
              name: i18n
         
     | 
| 
      
 45 
     | 
    
         
            +
              requirement: !ruby/object:Gem::Requirement
         
     | 
| 
      
 46 
     | 
    
         
            +
                requirements:
         
     | 
| 
      
 47 
     | 
    
         
            +
                - - '>='
         
     | 
| 
      
 48 
     | 
    
         
            +
                  - !ruby/object:Gem::Version
         
     | 
| 
      
 49 
     | 
    
         
            +
                    version: '0'
         
     | 
| 
      
 50 
     | 
    
         
            +
              type: :runtime
         
     | 
| 
      
 51 
     | 
    
         
            +
              prerelease: false
         
     | 
| 
      
 52 
     | 
    
         
            +
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
      
 53 
     | 
    
         
            +
                requirements:
         
     | 
| 
      
 54 
     | 
    
         
            +
                - - '>='
         
     | 
| 
      
 55 
     | 
    
         
            +
                  - !ruby/object:Gem::Version
         
     | 
| 
      
 56 
     | 
    
         
            +
                    version: '0'
         
     | 
| 
       43 
57 
     | 
    
         
             
            description: Bring your event data into Jekyll for amazing event websites.
         
     | 
| 
       44 
58 
     | 
    
         
             
            email: support@attendease.com
         
     | 
| 
       45 
59 
     | 
    
         
             
            executables: []
         
     | 
| 
         @@ -58,7 +72,8 @@ files: 
     | 
|
| 
       58 
72 
     | 
    
         
             
            - templates/_includes/attendease/venues/index.html
         
     | 
| 
       59 
73 
     | 
    
         
             
            - templates/_includes/attendease/venues/venue.html
         
     | 
| 
       60 
74 
     | 
    
         
             
            homepage: https://attendease.com/
         
     | 
| 
       61 
     | 
    
         
            -
            licenses: 
     | 
| 
      
 75 
     | 
    
         
            +
            licenses:
         
     | 
| 
      
 76 
     | 
    
         
            +
            - MIT
         
     | 
| 
       62 
77 
     | 
    
         
             
            metadata: {}
         
     | 
| 
       63 
78 
     | 
    
         
             
            post_install_message: 
         
     | 
| 
       64 
79 
     | 
    
         
             
            rdoc_options: []
         
     |