bulmacomp 1.0.1 → 1.0.2
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/README.md +5 -1
 - data/app/components/bulmacomp/turbo_frame_component.rb +55 -0
 - data/lib/bulmacomp/version.rb +1 -1
 - metadata +3 -2
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 88e7e5ad90eb4c31390ae4c94c074c1bbe32f338fe24ebd177e691c5a911bf46
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: db0492f09910419be900d5d67f9d261581bb9ba25a35ad99e56e40c926d595e0
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: c24b2fefa22d6c0482be54d7695554bde35bc5bb2d2ad25fb96889415f74e2733c61f2b90feb125700044434995095be42ec908104183906257dc681c9812994
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 5246ce53530ceb51d52e27b7e3573bbf0d3c7a2238e0bd70264f6160e2e160b8d59e71db20b7cc0543a3a8db3ea2577e4cfa5152435f654bb7263ae7c69f6fb8
         
     | 
    
        data/README.md
    CHANGED
    
    | 
         @@ -17,7 +17,11 @@ Bulmacomp provide a "view component" for each bulma component: 
     | 
|
| 
       17 
17 
     | 
    
         
             
            * [Navbar](https://bulma.io/documentation/components/navbar/) - [Bulmacomp::NavbarCompoent](https://www.rubydoc.info/github/isprambiente/bulmacomp/Bulmacomp/NavbarComponent)
         
     | 
| 
       18 
18 
     | 
    
         
             
            * [Pagination](https://bulma.io/documentation/components/pagination/) - [Bulmacomp::PaginationComponent](https://www.rubydoc.info/github/isprambiente/bulmacomp/Bulmacomp/PaginationComponent)
         
     | 
| 
       19 
19 
     | 
    
         
             
            * [Panel](https://bulma.io/documentation/components/panel/) - [Bulmacomp::PanelComponent](https://www.rubydoc.info/github/isprambiente/bulmacomp/Bulmacomp/PanelComponent)
         
     | 
| 
       20 
     | 
    
         
            -
            * [Tabs](https://bulma.io/documentation/components/tabs/) - [Bulmacomp::TabsComponent](https://www.rubydoc.info/github/isprambiente/bulmacomp/Bulmacomp/ 
     | 
| 
      
 20 
     | 
    
         
            +
            * [Tabs](https://bulma.io/documentation/components/tabs/) - [Bulmacomp::TabsComponent](https://www.rubydoc.info/github/isprambiente/bulmacomp/Bulmacomp/TabsComponent)
         
     | 
| 
      
 21 
     | 
    
         
            +
             
     | 
| 
      
 22 
     | 
    
         
            +
            and  generic rails components
         
     | 
| 
      
 23 
     | 
    
         
            +
            * [Turbo Frame](https://turbo.hotwired.dev/handbook/frames) - [Bulmacomp::TurboFrameComponent](https://www.rubydoc.info/github/isprambiente/bulmacomp/Bulmacomp/TurboFrameComponent)
         
     | 
| 
      
 24 
     | 
    
         
            +
             
         
     | 
| 
       21 
25 
     | 
    
         | 
| 
       22 
26 
     | 
    
         
             
            ## Installation
         
     | 
| 
       23 
27 
     | 
    
         
             
            Add this line to your application's Gemfile:
         
     | 
| 
         @@ -0,0 +1,55 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            module Bulmacomp
         
     | 
| 
      
 4 
     | 
    
         
            +
              # Make an HTML [turbo Frame](https://turbo.hotwired.dev/handbook/frames) structure.
         
     | 
| 
      
 5 
     | 
    
         
            +
              #
         
     | 
| 
      
 6 
     | 
    
         
            +
              # @example empty turbo frame, on default when the compoent is have't yield content, is added a lod icon
         
     | 
| 
      
 7 
     | 
    
         
            +
              #   = render Layout::TurboFrameComponent.new
         
     | 
| 
      
 8 
     | 
    
         
            +
              #
         
     | 
| 
      
 9 
     | 
    
         
            +
              #   <turbo-frame>
         
     | 
| 
      
 10 
     | 
    
         
            +
              #     <span class="icon"><i class="fas fa-sync fa-spin fa-2x"></i></span>
         
     | 
| 
      
 11 
     | 
    
         
            +
              #   </turbo-frame>
         
     | 
| 
      
 12 
     | 
    
         
            +
              #
         
     | 
| 
      
 13 
     | 
    
         
            +
              # @example with id and src (to load remote content)
         
     | 
| 
      
 14 
     | 
    
         
            +
              #   = render Layout::TurboFrameComponent.new(id: 'nav1', src: books_path )
         
     | 
| 
      
 15 
     | 
    
         
            +
              #
         
     | 
| 
      
 16 
     | 
    
         
            +
              #   <turbo-frame id='nav1' src='/books'>
         
     | 
| 
      
 17 
     | 
    
         
            +
              #     <span class="icon"><i class="fas fa-sync fa-spin fa-2x"></i></span>
         
     | 
| 
      
 18 
     | 
    
         
            +
              #   </turbo-frame>
         
     | 
| 
      
 19 
     | 
    
         
            +
              #
         
     | 
| 
      
 20 
     | 
    
         
            +
              # @example with no icon
         
     | 
| 
      
 21 
     | 
    
         
            +
              #   = render Layout::TurboFrameComponent.new(icon: nil, id: 'nav1', src: books_path )
         
     | 
| 
      
 22 
     | 
    
         
            +
              #
         
     | 
| 
      
 23 
     | 
    
         
            +
              #   <turbo-frame id='nav1' src='/books'></turbo-frame>
         
     | 
| 
      
 24 
     | 
    
         
            +
              #
         
     | 
| 
      
 25 
     | 
    
         
            +
              # @example with yield content
         
     | 
| 
      
 26 
     | 
    
         
            +
              #   = render Layout::TurboFrameComponent.new do
         
     | 
| 
      
 27 
     | 
    
         
            +
              #     some text
         
     | 
| 
      
 28 
     | 
    
         
            +
              #
         
     | 
| 
      
 29 
     | 
    
         
            +
              #   <turbo-frame>some text</turbo-frame>
         
     | 
| 
      
 30 
     | 
    
         
            +
              class TurboFrameComponent < ViewComponent::Base
         
     | 
| 
      
 31 
     | 
    
         
            +
                # @param [Hash] opts
         
     | 
| 
      
 32 
     | 
    
         
            +
                #   options to generate content
         
     | 
| 
      
 33 
     | 
    
         
            +
                # @param [String] icon
         
     | 
| 
      
 34 
     | 
    
         
            +
                #   text to add whe yield content is empty
         
     | 
| 
      
 35 
     | 
    
         
            +
                #   default: [default_icon]
         
     | 
| 
      
 36 
     | 
    
         
            +
                # @option opts [String] :*
         
     | 
| 
      
 37 
     | 
    
         
            +
                #   each other key going as tag option
         
     | 
| 
      
 38 
     | 
    
         
            +
                # @yield [optional] turbo frame content
         
     | 
| 
      
 39 
     | 
    
         
            +
                def initialize(icon: default_icon, **opts)
         
     | 
| 
      
 40 
     | 
    
         
            +
                  super
         
     | 
| 
      
 41 
     | 
    
         
            +
                  @icon = icon
         
     | 
| 
      
 42 
     | 
    
         
            +
                  @opts = opts
         
     | 
| 
      
 43 
     | 
    
         
            +
                end
         
     | 
| 
      
 44 
     | 
    
         
            +
             
     | 
| 
      
 45 
     | 
    
         
            +
                # @return [String] html turbo frame
         
     | 
| 
      
 46 
     | 
    
         
            +
                def call
         
     | 
| 
      
 47 
     | 
    
         
            +
                  content_tag('turbo-frame', (content || @icon), **@opts)
         
     | 
| 
      
 48 
     | 
    
         
            +
                end
         
     | 
| 
      
 49 
     | 
    
         
            +
             
     | 
| 
      
 50 
     | 
    
         
            +
                # default value for icon
         
     | 
| 
      
 51 
     | 
    
         
            +
                def default_icon
         
     | 
| 
      
 52 
     | 
    
         
            +
                  tag.span tag.i(class: 'fas fa-sync fa-spin fa-2x'), class: 'icon'
         
     | 
| 
      
 53 
     | 
    
         
            +
                end
         
     | 
| 
      
 54 
     | 
    
         
            +
              end
         
     | 
| 
      
 55 
     | 
    
         
            +
            end
         
     | 
    
        data/lib/bulmacomp/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: bulmacomp
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 1.0. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 1.0.2
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - MDreW
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire:
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date: 2023-03- 
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2023-03-27 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: rails
         
     | 
| 
         @@ -58,6 +58,7 @@ files: 
     | 
|
| 
       58 
58 
     | 
    
         
             
            - app/components/bulmacomp/pagination_component.rb
         
     | 
| 
       59 
59 
     | 
    
         
             
            - app/components/bulmacomp/panel_component.rb
         
     | 
| 
       60 
60 
     | 
    
         
             
            - app/components/bulmacomp/tabs_component.rb
         
     | 
| 
      
 61 
     | 
    
         
            +
            - app/components/bulmacomp/turbo_frame_component.rb
         
     | 
| 
       61 
62 
     | 
    
         
             
            - lib/bulmacomp.rb
         
     | 
| 
       62 
63 
     | 
    
         
             
            - lib/bulmacomp/engine.rb
         
     | 
| 
       63 
64 
     | 
    
         
             
            - lib/bulmacomp/version.rb
         
     |