tramway-admin 3.0 → 4.0.0.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9a386a68e9e5d73e44283c9afbc5607e23a6dc39c059510eb039e4480c059694
4
- data.tar.gz: b8e50c30673e2ac8f4f4448a099a84334b2c8d6656a08cd8b8cc715ece2dfbeb
3
+ metadata.gz: 5c198a3b0d6fad90c8de0c064e53843dc4c7471087f8ef379aeb28e37e1ee446
4
+ data.tar.gz: f0aa47073c3a211e5396179b06499cdf2f5782f255c017c83723e7e50dfeadc4
5
5
  SHA512:
6
- metadata.gz: 0075433e4129c8f0369b243c1dc8be32b0f4a6cb7808551d3e134649b432ff4c1e64596caa7b943643dd08a6b10fd27dc2bd32607d0bed7045a18283abdaf9b6
7
- data.tar.gz: a5a8a08c04c108544845ef70895c71027ecaff90a7b164192b1294d3f5b758144a25d3390983b542bffc6fc8854466127dd0b4539b5a157741bba060e89692e3
6
+ metadata.gz: 380e8552c48f0afc1f70700bd792af2718d9c4bdd486e0fb8a774a07dac46cc9b0a0ae679bffce7b8be8924ea745ebcda4b6b7d3ded34bdc7ecbf1994dcb59db
7
+ data.tar.gz: 9dc264f0b6310b6945932894171e780a6cc88da295fe9f0c01b16adb7f69571b10005d1ea7534150c74fae86a1d59fdd5341fe026b7700327ef1ae1920dd735c
data/README.md CHANGED
@@ -48,7 +48,6 @@ end
48
48
  #### 5. And then execute:
49
49
 
50
50
  ```bash
51
- $ bundle
52
51
  $ rails g tramway:user:install
53
52
  $ rails db:migrate
54
53
  ```
@@ -11,8 +11,9 @@
11
11
  .container
12
12
  padding-top: 2rem
13
13
 
14
- td.actions
15
- width: 8rem
14
+ td
15
+ &.actions
16
+ width: 8rem
16
17
 
17
18
  .icon-in-navbar
18
19
  font-size: 15pt
@@ -3,34 +3,35 @@
3
3
  - if ::Tramway::Admin.customized_admin_navbar.present?
4
4
  = ::Tramway::Admin.customized_admin_navbar
5
5
  - else
6
- = link_to @application&.try(:title) || @application&.public_name || t('aplication.title'), ::Tramway::Admin::Engine.routes.url_helpers.root_path, class: 'navbar-brand'
7
- %button.navbar-toggler.collapsed{ aria: { controls: :navbar, expanded: "false", label: 'Toggle Navigation' }, data: { target: "#navbar", toggle: :collapse }, type: :button }
8
- %span.navbar-toggler-icon
9
- .navbar-collapse.collapse#navbar
10
- - if current_admin
11
- %ul.navbar-nav
12
- - ::Tramway::Admin.navbar_items_for(@application_engine || @application.name, role: current_admin.role)&.each do |item|
13
- - case item.keys.first
14
- - when Class, String
15
- - model = item.keys.first.is_a?(String) ? item.keys.first.constantize : item.keys.first
16
- - case item.values.first
17
- - when :singleton
18
- = model_menu_item model: model, route: ::Tramway::Admin::Engine.routes.url_helpers.singleton_path(model: model)
19
- - when :record
20
- = model_menu_item model: model, route: ::Tramway::Admin::Engine.routes.url_helpers.records_path(model: model, scope: decorator_class(model).collections.first), pluralize: plural(model.model_name).capitalize
21
- - when Symbol, String
22
- = dropdown t("admin.navbar.links.#{item.keys.first}") do
23
- - item.values.first.each do |sub_item|
24
- - if sub_item == :divider
25
- = dropdown_divider
26
- - else
27
- - model = sub_item.keys.first
28
- - if sub_item.values.first == :singleton
29
- = dropdown_model_item model: model, route: ::Tramway::Admin::Engine.routes.url_helpers.singleton_path(model: model)
30
- - if sub_item.values.first == :record
31
- = dropdown_model_item model: model, route: ::Tramway::Admin::Engine.routes.url_helpers.records_path(model: model, scope: decorator_class(model).collections.first), pluralize: plural(model.constantize.model_name).capitalize
6
+ .container-fluid
7
+ = link_to @application&.try(:title) || @application&.public_name || t('aplication.title'), ::Tramway::Admin::Engine.routes.url_helpers.root_path, class: 'navbar-brand'
8
+ %button.navbar-toggler.collapsed{ aria: { controls: :navbar, expanded: "false", label: 'Toggle Navigation' }, data: { target: "#navbar", toggle: :collapse }, type: :button }
9
+ %span.navbar-toggler-icon
10
+ .navbar-collapse.collapse#navbar
11
+ - if current_admin
12
+ %ul.navbar-nav
13
+ - ::Tramway::Admin.navbar_items_for(@application_engine || @application.name, role: current_admin.role)&.each do |item|
14
+ - case item.keys.first
15
+ - when Class, String
16
+ - model = item.keys.first.is_a?(String) ? item.keys.first.constantize : item.keys.first
17
+ - case item.values.first
18
+ - when :singleton
19
+ = model_menu_item model: model, route: ::Tramway::Admin::Engine.routes.url_helpers.singleton_path(model: model)
20
+ - when :record
21
+ = model_menu_item model: model, route: ::Tramway::Admin::Engine.routes.url_helpers.records_path(model: model, scope: decorator_class(model).collections.first), pluralize: plural(model.model_name).capitalize
22
+ - when Symbol, String
23
+ = dropdown t("admin.navbar.links.#{item.keys.first}") do
24
+ - item.values.first.each do |sub_item|
25
+ - if sub_item == :divider
26
+ = dropdown_divider
27
+ - else
28
+ - model = sub_item.keys.first
29
+ - if sub_item.values.first == :singleton
30
+ = dropdown_model_item model: model, route: ::Tramway::Admin::Engine.routes.url_helpers.singleton_path(model: model)
31
+ - if sub_item.values.first == :record
32
+ = dropdown_model_item model: model, route: ::Tramway::Admin::Engine.routes.url_helpers.records_path(model: model, scope: decorator_class(model).collections.first), pluralize: plural(model.constantize.model_name).capitalize
32
33
 
33
- %ul.nav.navbar-nav.ml-auto
34
+ %ul.nav.navbar-nav.ml-auto.justify-content-end
34
35
  - if current_admin
35
36
  %li.nav-item
36
37
  %span.nav-link
@@ -12,7 +12,7 @@
12
12
  - @record_form.properties.each do |property, type|
13
13
  = render 'tramway/core/shared/input', property: property, object: :record, type: type, form: f, destination: :admin, value: value_from_params(model_class: model_class, property: property, type: type)
14
14
  = hidden_field_tag :redirect, params[:redirect]
15
- = f.button :submit, t('helpers.links.save'), class: 'btn-success'
15
+ = f.button :submit, t('helpers.links.save'), class: 'btn btn-success'
16
16
  = link_to t('helpers.links.back'), current_model_records_path, class: 'btn btn-secondary'
17
17
 
18
18
  -# NOTES
@@ -1,29 +1,30 @@
1
1
  = paginate @records, theme: 'twitter-bootstrap-4'
2
- %table.table.table-striped.table-bordered
2
+ %table.table.table-striped.table-hover
3
3
  %thead
4
4
  %tr
5
- %th= model_class.human_attribute_name(:id)
6
- %th= model_class.human_attribute_name(:name)
5
+ %th{ scope: :col }
6
+ = model_class.human_attribute_name(:id)
7
+ %th{ scope: :col }
8
+ = model_class.human_attribute_name(:name)
7
9
  - decorator_class.list_attributes.each do |attribute|
8
- %th= model_class.human_attribute_name attribute
9
- %th= t 'helpers.links.actions'
10
+ %th{ scope: :col }
11
+ = model_class.human_attribute_name attribute
12
+ %th{ scope: :col }
13
+ = t 'helpers.links.actions'
10
14
  %tbody
11
15
  - @records.each_with_index do |record, index|
12
16
  %tr
13
- %td
17
+ %th{ scope: :row }
14
18
  = link_to record.id, current_model_record_path(record.id)
15
- %td
19
+ %td.link{ data: { href: current_model_record_path(record.id) } }
16
20
  = link_to record.name, current_model_record_path(record.id)
17
21
  - decorator_class.list_attributes.each do |attribute|
18
22
  %td
19
23
  = record.send attribute
20
24
  %td.actions
21
- .row
22
-    
23
- = link_to fa_icon('pencil-alt'), edit_current_model_record_path(record.id), class: 'btn btn-warning btn-xs'
24
-   
25
- = delete_button url: current_model_record_path(record.id), form_options: { class: :smart_button }, button_options: { class: 'btn btn-xs btn-danger' } do
26
- = fa_icon 'trash-alt'
25
+ = link_to fa_icon('pencil-alt'), edit_current_model_record_path(record.id, redirect: current_model_records_path(record.id)), class: 'btn btn-warning btn-xs'
26
+ = delete_button url: current_model_record_path(record.id), form_options: { class: :smart_button }, button_options: { class: 'btn btn-xs btn-danger' } do
27
+ = fa_icon 'trash-alt'
27
28
  - if tramway_model?(model_class)
28
29
  %br
29
30
  %br
@@ -4,13 +4,14 @@
4
4
  = association_object.id
5
5
  %td
6
6
  = link_to association_object.name, record_path(association_object.id, model: association.options[:class_name])
7
- %td
8
- - association_object.model.class.state_machines_names.each do |state_method|
9
- - unless state_method == 'default'
10
- = state_events_buttons association_object, state_method: state_method, model_param_name: :record, controller: 'tramway/admin/records', action: :update, parameters: { redirect: current_model_record_path(object.id), model: association_object.class.model_name }, button_options: { class: :smart_button }
11
- %td
7
+ - if association_object.model.class.state_machines_names.count > 1
8
+ %td
9
+ - association_object.model.class.state_machines_names.each do |state_method|
10
+ - unless state_method == 'default'
11
+ = state_events_buttons association_object, state_method: state_method, model_param_name: :record, controller: 'tramway/admin/records', action: :update, parameters: { redirect: current_model_record_path(object.id), model: association_object.class.model_name }, button_options: { class: :smart_button }
12
+ %td{ style: 'display: flex; justify-content: space-evenly' }
12
13
  - if update_is_available? association_object, object
13
- = edit_button url: edit_record_path(association_object.id, model: association.options[:class_name], redirect: current_model_record_path(object.id)), button_options: { class: 'btn btn-xs btn-warning edit' } do
14
+ = edit_button url: edit_record_path(association_object.id, model: association.options[:class_name], redirect: current_model_record_path(object.id)), button_options: { class: 'btn btn-xs btn-warning edit', style: 'height: max-content' } do
14
15
  = fa_icon 'pencil-alt'
15
16
  - if destroy_is_available? association_object, object
16
17
  = delete_button url: record_path(association_object.id, model: association.options[:class_name], redirect: current_model_record_path(object.id)), button_options: { class: 'btn btn-xs btn-danger delete' } do
@@ -11,5 +11,5 @@
11
11
  = simple_form_for @singleton_form.model, url: { controller: :singletons, action: action, model: @singleton_form.model.class }, input_html: { class: 'form-horizontal' } do |f|
12
12
  - @singleton_form.properties.each do |property, type|
13
13
  = render 'tramway/core/shared/input', property: property, object: :singleton, type: type, form: f, destination: :admin, value: value_from_params(model_class: model_class, property: property, type: type)
14
- = f.button :submit, t('helpers.links.save'), class: 'btn-success'
14
+ = f.button :submit, t('helpers.links.save'), class: 'btn btn-success'
15
15
  = link_to t('helpers.links.back'), singleton_path, class: 'btn btn-secondary'
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Tramway
4
4
  module Admin
5
- VERSION = '3.0'
5
+ VERSION = '4.0.0.1'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tramway-admin
3
3
  version: !ruby/object:Gem::Version
4
- version: '3.0'
4
+ version: 4.0.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pavel Kalashnikov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-12-19 00:00:00.000000000 Z
11
+ date: 2022-02-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: tramway-core
@@ -180,16 +180,16 @@ dependencies:
180
180
  name: trap
181
181
  requirement: !ruby/object:Gem::Requirement
182
182
  requirements:
183
- - - '='
183
+ - - "~>"
184
184
  - !ruby/object:Gem::Version
185
- version: '3.0'
185
+ version: '4.0'
186
186
  type: :runtime
187
187
  prerelease: false
188
188
  version_requirements: !ruby/object:Gem::Requirement
189
189
  requirements:
190
- - - '='
190
+ - - "~>"
191
191
  - !ruby/object:Gem::Version
192
- version: '3.0'
192
+ version: '4.0'
193
193
  - !ruby/object:Gem::Dependency
194
194
  name: aasm
195
195
  requirement: !ruby/object:Gem::Requirement