pg_rails 7.0.8.pre.alpha.17 → 7.0.8.pre.alpha.18
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/pg_associable/index.js +6 -2
- data/pg_engine/app/decorators/pg_engine/base_decorator.rb +25 -25
- data/pg_engine/app/views/pg_engine/base/index.html.slim +3 -4
- data/pg_engine/config/locales/es.yml +2 -0
- data/pg_engine/spec/lib/pg_engine/utils/pg_engine/pg_logger_spec.rb +6 -0
- data/pg_layout/app/javascript/controllers/application.js +4 -1
- data/pg_rails/lib/version.rb +1 -1
- metadata +1 -1
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: fe2517c50a77409c6c90dc4378588e7b5bfc8cfa227859bdd7a163979c1b8e0d
         | 
| 4 | 
            +
              data.tar.gz: dd5da55fffc24abb9bbb4942a2e6de0a7e52184cca97e54ec16500afb556f043
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: c3d214ad9f2a591590582d92b8c409a593ef5d5a6b0a3bc207aca5dc37944ab0be4f72ad785d119beb1c56fc954ef74c43d7da8418b06a45688330127ff4c6ff
         | 
| 7 | 
            +
              data.tar.gz: be03f50c19c74783a6c2bce2d371ed9b58a41eefa87addeecfddbb79e5999906a9e6456017b1a318e8d2c4f492d1b488e9f6d9aba9215f0a3eb9b31d4c183e38
         | 
    
        data/pg_associable/index.js
    CHANGED
    
    | @@ -1,5 +1,9 @@ | |
| 1 1 | 
             
            import AsociableController from './app/javascript/asociable_controller'
         | 
| 2 2 | 
             
            import ModalController from './app/javascript/modal_controller'
         | 
| 3 3 |  | 
| 4 | 
            -
            window.Stimulus | 
| 5 | 
            -
            window.Stimulus.register(' | 
| 4 | 
            +
            if (window.Stimulus) {
         | 
| 5 | 
            +
              window.Stimulus.register('asociable', AsociableController)
         | 
| 6 | 
            +
              window.Stimulus.register('modal', ModalController)
         | 
| 7 | 
            +
            } else {
         | 
| 8 | 
            +
              console.error('window.Stimulus must be set')
         | 
| 9 | 
            +
            }
         | 
| @@ -31,58 +31,62 @@ module PgEngine | |
| 31 31 | 
             
                end
         | 
| 32 32 | 
             
                # rubocop:enable Style/MissingRespondToMissing
         | 
| 33 33 |  | 
| 34 | 
            -
                def destroy_link( | 
| 34 | 
            +
                def destroy_link(confirm_text: '¿Estás seguro?', klass: 'btn-light')
         | 
| 35 35 | 
             
                  return unless Pundit.policy!(helpers.send(PgEngine.configuracion.current_user_method), object).destroy?
         | 
| 36 36 |  | 
| 37 37 | 
             
                  helpers.content_tag :span, rel: :tooltip, title: 'Eliminar' do
         | 
| 38 | 
            -
                    helpers.link_to object_url, data: { 'turbo-confirm':  | 
| 39 | 
            -
                                                class: "btn #{ | 
| 40 | 
            -
                      helpers.content_tag :span, nil, class: clase_icono( | 
| 38 | 
            +
                    helpers.link_to object_url, data: { 'turbo-confirm': confirm_text, 'turbo-method': :delete },
         | 
| 39 | 
            +
                                                class: "btn btn-sm #{klass}" do
         | 
| 40 | 
            +
                      helpers.content_tag :span, nil, class: clase_icono('trash-fill')
         | 
| 41 41 | 
             
                    end
         | 
| 42 42 | 
             
                  end
         | 
| 43 43 | 
             
                end
         | 
| 44 44 |  | 
| 45 | 
            -
                def edit_link( | 
| 45 | 
            +
                def edit_link(text: '', klass: 'btn-light')
         | 
| 46 46 | 
             
                  return unless Pundit.policy!(helpers.send(PgEngine.configuracion.current_user_method), object).edit?
         | 
| 47 47 |  | 
| 48 48 | 
             
                  helpers.content_tag :span, rel: :tooltip, title: 'Editar' do
         | 
| 49 49 | 
             
                    helpers.link_to edit_object_url, data: { turbo_frame: :main },
         | 
| 50 | 
            -
                                                     class: "btn #{ | 
| 51 | 
            -
                      helpers.content_tag(:span, nil, class: clase_icono( | 
| 50 | 
            +
                                                     class: "btn btn-sm #{klass}" do
         | 
| 51 | 
            +
                      helpers.content_tag(:span, nil, class: clase_icono('pencil')) + text
         | 
| 52 52 | 
             
                    end
         | 
| 53 53 | 
             
                  end
         | 
| 54 54 | 
             
                end
         | 
| 55 55 |  | 
| 56 | 
            -
                def show_link( | 
| 56 | 
            +
                def show_link(text: '', klass: 'btn-light')
         | 
| 57 57 | 
             
                  return unless Pundit.policy!(helpers.send(PgEngine.configuracion.current_user_method), object).show?
         | 
| 58 58 |  | 
| 59 59 | 
             
                  helpers.content_tag :span, rel: :tooltip, title: 'Ver' do
         | 
| 60 60 | 
             
                    helpers.link_to object_url, data: { turbo_frame: :main },
         | 
| 61 | 
            -
                                                class: "btn #{ | 
| 62 | 
            -
                      helpers.content_tag(:span, nil, class: clase_icono( | 
| 61 | 
            +
                                                class: "btn btn-sm #{klass}" do
         | 
| 62 | 
            +
                      helpers.content_tag(:span, nil, class: clase_icono('eye-fill')) + text
         | 
| 63 63 | 
             
                    end
         | 
| 64 64 | 
             
                  end
         | 
| 65 65 | 
             
                end
         | 
| 66 66 |  | 
| 67 | 
            -
                def export_link(url,  | 
| 68 | 
            -
                  return unless Pundit.policy!(helpers. | 
| 67 | 
            +
                def export_link(url, text: '', klass: 'btn-info')
         | 
| 68 | 
            +
                  return unless Pundit.policy!(helpers.current_user, object).export?
         | 
| 69 69 |  | 
| 70 | 
            -
                  helpers.content_tag :span, rel: :tooltip, title: 'Exportar' do
         | 
| 70 | 
            +
                  helpers.content_tag :span, rel: :tooltip, title: 'Exportar en excel' do
         | 
| 71 71 | 
             
                    helpers.content_tag :a, target: '_blank',
         | 
| 72 | 
            -
                                            class: "btn #{ | 
| 73 | 
            -
                      "#{helpers.content_tag(:span, nil, class: clase_icono('file-earmark-excel-fill'))} #{ | 
| 72 | 
            +
                                            class: "btn btn-sm #{klass}", href: url_change_format(url, 'xlsx') do
         | 
| 73 | 
            +
                      "#{helpers.content_tag(:span, nil, class: clase_icono('file-earmark-excel-fill'))} #{text}".html_safe
         | 
| 74 74 | 
             
                    end
         | 
| 75 75 | 
             
                  end
         | 
| 76 76 | 
             
                end
         | 
| 77 77 |  | 
| 78 | 
            -
                def new_link( | 
| 78 | 
            +
                def new_link(remote: nil, klass: 'btn-warning')
         | 
| 79 79 | 
             
                  return unless Pundit.policy!(helpers.send(PgEngine.configuracion.current_user_method), object).new?
         | 
| 80 80 |  | 
| 81 | 
            -
                   | 
| 82 | 
            -
             | 
| 83 | 
            -
             | 
| 81 | 
            +
                  word_to_create = I18n.t("form.#{object.class.nombre_singular.downcase}.create", default: :'form.create')
         | 
| 82 | 
            +
             | 
| 83 | 
            +
                  full_text = "#{word_to_create} #{object.class.nombre_singular.downcase}"
         | 
| 84 | 
            +
             | 
| 85 | 
            +
                  helpers.content_tag :span, rel: :tooltip, title: word_to_create do
         | 
| 86 | 
            +
                    helpers.link_to(new_object_url, class: "btn btn-sm #{klass}",
         | 
| 87 | 
            +
                                                    remote:) do
         | 
| 84 88 | 
             
                      helpers.content_tag(:span, nil,
         | 
| 85 | 
            -
                                          class: clase_icono('plus').to_s) + "<span class='d-none d-sm-inline'>  | 
| 89 | 
            +
                                          class: clase_icono('plus').to_s) + "<span class='d-none d-sm-inline'> #{full_text}</span>".html_safe
         | 
| 86 90 | 
             
                    end
         | 
| 87 91 | 
             
                  end
         | 
| 88 92 | 
             
                end
         | 
| @@ -109,12 +113,8 @@ module PgEngine | |
| 109 113 |  | 
| 110 114 | 
             
                private
         | 
| 111 115 |  | 
| 112 | 
            -
                def _config
         | 
| 113 | 
            -
                  PgEngine.configuracion
         | 
| 114 | 
            -
                end
         | 
| 115 | 
            -
             | 
| 116 116 | 
             
                def clase_icono(icono)
         | 
| 117 | 
            -
                  " | 
| 117 | 
            +
                  "bi bi-#{icono}"
         | 
| 118 118 | 
             
                end
         | 
| 119 119 | 
             
              end
         | 
| 120 120 | 
             
            end
         | 
| @@ -1,14 +1,13 @@ | |
| 1 1 | 
             
            - content_for(:title, @clase_modelo.nombre_plural)
         | 
| 2 2 | 
             
            - content_for :actions do
         | 
| 3 | 
            -
              button.btn.btn-sm.btn-primary[type="button" data-bs-toggle="collapse"
         | 
| 3 | 
            +
              button.btn.btn-sm.btn-outline-primary[type="button" data-bs-toggle="collapse"
         | 
| 4 4 | 
             
                                            data-bs-target="#filtros" aria-expanded="false"
         | 
| 5 5 | 
             
                                            aria-controls="filtros"]
         | 
| 6 6 | 
             
                span.bi.bi-funnel-fill
         | 
| 7 7 | 
             
                span.d-none.d-sm-inline  Filtrar
         | 
| 8 8 | 
             
              .ms-1
         | 
| 9 9 | 
             
              = @clase_modelo.new.decorate.new_link
         | 
| 10 | 
            -
             | 
| 11 | 
            -
              = @clase_modelo.new.decorate.export_link(request.url)
         | 
| 10 | 
            +
             | 
| 12 11 | 
             
            .collapse.border-bottom#filtros class="#{ 'show' if any_filter? }"
         | 
| 13 12 | 
             
              .d-flex.align-items-center.p-2
         | 
| 14 13 | 
             
                .px-2.d-none.d-sm-inline-block
         | 
| @@ -33,7 +32,7 @@ div | |
| 33 32 | 
             
                      tr
         | 
| 34 33 | 
             
                        - atributos_para_listar.each do |att|
         | 
| 35 34 | 
             
                          th = encabezado att, ordenable: true
         | 
| 36 | 
            -
                        th
         | 
| 35 | 
            +
                        th.text-end = @clase_modelo.new.decorate.export_link(request.url)
         | 
| 37 36 | 
             
                    tbody
         | 
| 38 37 | 
             
                      - @collection.each do |object|
         | 
| 39 38 | 
             
                        - object = object.decorate
         | 
| @@ -11,6 +11,12 @@ describe PgEngine::PgLogger do | |
| 11 11 | 
             
                  end
         | 
| 12 12 | 
             
                end
         | 
| 13 13 |  | 
| 14 | 
            +
                around do |example|
         | 
| 15 | 
            +
                  described_class.raise_errors = false
         | 
| 16 | 
            +
                  example.run
         | 
| 17 | 
            +
                  described_class.raise_errors = true
         | 
| 18 | 
            +
                end
         | 
| 19 | 
            +
             | 
| 14 20 | 
             
                shared_examples 'logger' do |type|
         | 
| 15 21 | 
             
                  it do
         | 
| 16 22 | 
             
                    expect(Rails.logger).to have_received(type).twice
         | 
    
        data/pg_rails/lib/version.rb
    CHANGED