tiny-record 1.1.0 → 1.1.1
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 +5 -5
 - data/Gemfile.lock +1 -1
 - data/lib/tiny/record.rb +18 -10
 - data/lib/tiny/record/version.rb +1 -1
 - metadata +3 -4
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 2 
     | 
    
         
            +
            SHA256:
         
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: bd7ba4e437f4589089876cd1c3865c4a9adb144cea14b884d60157d054b7a717
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 2a6e1bd618b2235d1b747869eb5cff9c15c03ca399210140414c6cfc6187af61
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: f010a41b376356af14238cb677afa499a2b0bd2fb617d7b16e092c2e1f9005e05aec03dac57d56358c96b571da07054031c21e1f1045ded90be2e66af3419903
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: da4fb982ad5f2a37cc295bb042e5eb0dae37458fd76d675dcac9a644c3b0ac425f835f7e494e8d2b6e9e9741a049cf2633efa5adb8563c2883dea65e177cbdae
         
     | 
    
        data/Gemfile.lock
    CHANGED
    
    
    
        data/lib/tiny/record.rb
    CHANGED
    
    | 
         @@ -1,37 +1,45 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            require "tiny/record/version"
         
     | 
| 
       2 
     | 
    
         
            -
             
     | 
| 
       3 
2 
     | 
    
         
             
            module TinyRecord
         
     | 
| 
       4 
3 
     | 
    
         
             
              def self.included(base)
         
     | 
| 
       5 
4 
     | 
    
         
             
                base.extend ClassMethods
         
     | 
| 
       6 
5 
     | 
    
         
             
              end
         
     | 
| 
       7 
6 
     | 
    
         
             
              module ClassMethods
         
     | 
| 
       8 
     | 
    
         
            -
                @@with_columns = []
         
     | 
| 
       9 
7 
     | 
    
         | 
| 
       10 
8 
     | 
    
         
             
                def tiny_columns(*args)
         
     | 
| 
       11 
     | 
    
         
            -
                   
     | 
| 
      
 9 
     | 
    
         
            +
                  @default_tiny_columns = *args
         
     | 
| 
       12 
10 
     | 
    
         
             
                end
         
     | 
| 
       13 
11 
     | 
    
         | 
| 
       14 
     | 
    
         
            -
                def fetch(id, with:  
     | 
| 
       15 
     | 
    
         
            -
                   
     | 
| 
      
 12 
     | 
    
         
            +
                def fetch(id, with: nil)
         
     | 
| 
      
 13 
     | 
    
         
            +
                  _get_records(_primary_lookup(id), with).take!
         
     | 
| 
       16 
14 
     | 
    
         
             
                end
         
     | 
| 
       17 
15 
     | 
    
         | 
| 
       18 
16 
     | 
    
         
             
                def fetch_by(columns = {})
         
     | 
| 
       19 
17 
     | 
    
         
             
                  with = columns.delete(:with)
         
     | 
| 
       20 
     | 
    
         
            -
                   
     | 
| 
      
 18 
     | 
    
         
            +
                  _get_records(columns, with).take
         
     | 
| 
       21 
19 
     | 
    
         
             
                end
         
     | 
| 
       22 
20 
     | 
    
         | 
| 
       23 
21 
     | 
    
         
             
                def fetch_where(columns = {})
         
     | 
| 
       24 
22 
     | 
    
         
             
                  with = columns.delete(:with)
         
     | 
| 
       25 
     | 
    
         
            -
                   
     | 
| 
      
 23 
     | 
    
         
            +
                  _get_records(columns, with)
         
     | 
| 
       26 
24 
     | 
    
         
             
                end
         
     | 
| 
       27 
25 
     | 
    
         | 
| 
       28 
     | 
    
         
            -
                def  
     | 
| 
      
 26 
     | 
    
         
            +
                def _get_records(by_columns, with_columns)
         
     | 
| 
       29 
27 
     | 
    
         
             
                  collection = where(by_columns)
         
     | 
| 
       30 
     | 
    
         
            -
                  collection = collection 
     | 
| 
      
 28 
     | 
    
         
            +
                  collection = _retrieve_selective_columns(collection,with_columns)
         
     | 
| 
      
 29 
     | 
    
         
            +
                  collection
         
     | 
| 
      
 30 
     | 
    
         
            +
                end
         
     | 
| 
      
 31 
     | 
    
         
            +
             
     | 
| 
      
 32 
     | 
    
         
            +
                def _retrieve_selective_columns(collection, requested_columns)
         
     | 
| 
      
 33 
     | 
    
         
            +
                  target_columns = requested_columns && requested_columns.present? ? requested_columns : _default_tiny_columns
         
     | 
| 
      
 34 
     | 
    
         
            +
                  collection = collection.select(target_columns) if collection.present?
         
     | 
| 
       31 
35 
     | 
    
         
             
                  collection
         
     | 
| 
       32 
36 
     | 
    
         
             
                end
         
     | 
| 
       33 
37 
     | 
    
         | 
| 
       34 
     | 
    
         
            -
                def  
     | 
| 
      
 38 
     | 
    
         
            +
                def _default_tiny_columns
         
     | 
| 
      
 39 
     | 
    
         
            +
                  @default_tiny_columns
         
     | 
| 
      
 40 
     | 
    
         
            +
                end
         
     | 
| 
      
 41 
     | 
    
         
            +
             
     | 
| 
      
 42 
     | 
    
         
            +
                def _primary_lookup(lookup_id)
         
     | 
| 
       35 
43 
     | 
    
         
             
                  { primary_key => lookup_id }
         
     | 
| 
       36 
44 
     | 
    
         
             
                end
         
     | 
| 
       37 
45 
     | 
    
         
             
              end
         
     | 
    
        data/lib/tiny/record/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: tiny-record
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 1.1. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 1.1.1
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Vikas Verma
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: exe
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date: 2019- 
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2019-12-30 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: bundler
         
     | 
| 
         @@ -136,8 +136,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement 
     | 
|
| 
       136 
136 
     | 
    
         
             
                - !ruby/object:Gem::Version
         
     | 
| 
       137 
137 
     | 
    
         
             
                  version: '0'
         
     | 
| 
       138 
138 
     | 
    
         
             
            requirements: []
         
     | 
| 
       139 
     | 
    
         
            -
             
     | 
| 
       140 
     | 
    
         
            -
            rubygems_version: 2.6.14
         
     | 
| 
      
 139 
     | 
    
         
            +
            rubygems_version: 3.0.6
         
     | 
| 
       141 
140 
     | 
    
         
             
            signing_key: 
         
     | 
| 
       142 
141 
     | 
    
         
             
            specification_version: 4
         
     | 
| 
       143 
142 
     | 
    
         
             
            summary: target columns when querying for active record objects
         
     |