tramway 0.5.1.3 → 0.5.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/app/components/tailwinds/form/multiselect/dropdown_container.html.haml +1 -1
- data/app/components/tailwinds/form/submit_button_component.html.haml +1 -1
- data/app/components/tailwinds/form/text_field_component.html.haml +1 -1
- data/app/components/tailwinds/nav/item/button_component.html.haml +1 -1
- data/app/components/tailwinds/nav/item/button_component.rb +1 -2
- data/app/components/tailwinds/nav/item/link_component.html.haml +1 -1
- data/app/components/tailwinds/nav/item/link_component.rb +1 -2
- data/app/components/tailwinds/nav/item_component.rb +16 -0
- data/app/components/tailwinds/navbar_component.html.haml +1 -1
- data/app/components/tailwinds/pagination/first_page_component.html.haml +2 -2
- data/app/components/tailwinds/pagination/gap_component.html.haml +1 -1
- data/app/components/tailwinds/pagination/last_page_component.html.haml +2 -2
- data/app/components/tailwinds/pagination/next_page_component.html.haml +2 -2
- data/app/components/tailwinds/pagination/page_component.html.haml +1 -1
- data/app/components/tailwinds/pagination/prev_page_component.html.haml +2 -2
- data/app/components/tailwinds/table/cell_component.html.haml +1 -1
- data/app/components/tailwinds/table/header_component.html.haml +7 -6
- data/app/components/tailwinds/table/row_component.html.haml +9 -8
- data/app/components/tailwinds/table/row_component.rb +14 -1
- data/app/helpers/tramway/application_helper.rb +1 -1
- data/app/views/tramway/entities/_entity.html.haml +2 -1
- data/app/views/tramway/entities/_list.html.haml +25 -0
- data/app/views/tramway/entities/index.html.haml +1 -25
- data/app/views/tramway/layouts/application.html.haml +1 -1
- data/config/tailwind.config.js +34 -46
- data/lib/tramway/configs/entity.rb +1 -1
- data/lib/tramway/version.rb +1 -1
- metadata +18 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 1a87721a01a922036b8932ac4e7c2f3f74139e1ceb194aaee493634e1b7d7fb0
|
|
4
|
+
data.tar.gz: 585233b30c8a3043a017a570803c6aa252d724f5084e29addaa1f839cbeb44ce
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9bd1d89f32eee53051ed1212a385a778ac5cdb6f0518d59aebed4ad7a457256af910c0461abbda001f7356abf5241a63333613a47d62963f4db5735e30666dd4
|
|
7
|
+
data.tar.gz: 2d32787f70305d1419c643e5562d99fc18379c46855a69a82de60cae951d84602b06d12aa30fcea40e7e31a1927084df5b48d2b1820f32fe1b396c026ee2c877
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
#dropdown.absolute.shadow.top-
|
|
1
|
+
#dropdown.absolute.shadow.top-11.bg-white.z-40.w-full.lef-0.rounded.max-h-select.overflow-y-auto{ data: { action: "click@window->multiselect#closeOnClickOutside" } }
|
|
2
2
|
.flex.flex-col.w-full
|
|
3
3
|
{{content}}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
.flex.items-center.justify-between
|
|
2
|
-
%button.bg-red-500.hover:bg-red-700.text-white.font-bold.py-2.px-4.rounded.focus:outline-none.focus:shadow-outline{ type: :submit, name: :commit, **@options }
|
|
2
|
+
%button.bg-red-500.hover:bg-red-700.text-white.font-bold.py-2.px-4.rounded.focus:outline-none.focus:shadow-outline.cursor-pointer{ type: :submit, name: :commit, **@options }
|
|
3
3
|
= @text
|
|
4
4
|
= @content
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
- if @label
|
|
3
3
|
= component('tailwinds/form/label', for: @for) do
|
|
4
4
|
= @label
|
|
5
|
-
= @input.call @attribute, **@options.merge(class: 'w-full px-3 py-2 border border-gray-300 rounded focus:outline-none focus:border-red-500'), value: @value
|
|
5
|
+
= @input.call @attribute, **@options.merge(class: 'w-full bg-white px-3 py-2 border border-gray-300 rounded focus:outline-none focus:border-red-500 dark:placeholder-gray-400 dark:text-white'), value: @value
|
|
@@ -7,11 +7,10 @@ module Tailwinds
|
|
|
7
7
|
module Item
|
|
8
8
|
# Render button styled with Tailwind using button_to methods
|
|
9
9
|
#
|
|
10
|
-
class ButtonComponent <
|
|
10
|
+
class ButtonComponent < Tailwinds::Nav::ItemComponent
|
|
11
11
|
def initialize(**options)
|
|
12
12
|
@href = options[:href]
|
|
13
13
|
@method = options[:method]
|
|
14
|
-
@style = 'text-white hover:bg-gray-300 hover:text-gray-800 px-4 py-2 rounded whitespace-nowrap'
|
|
15
14
|
@options = options.except(:href, :method)
|
|
16
15
|
end
|
|
17
16
|
end
|
|
@@ -7,10 +7,9 @@ module Tailwinds
|
|
|
7
7
|
module Item
|
|
8
8
|
# Render button styled with Tailwind using link_to methods
|
|
9
9
|
#
|
|
10
|
-
class LinkComponent <
|
|
10
|
+
class LinkComponent < Tailwinds::Nav::ItemComponent
|
|
11
11
|
def initialize(**options)
|
|
12
12
|
@href = options[:href]
|
|
13
|
-
@style = 'text-white hover:bg-gray-300 hover:text-gray-800 px-4 py-2 rounded whitespace-nowrap'
|
|
14
13
|
@options = Rules::TurboHtmlAttributesRules.prepare_turbo_html_attributes(options:)
|
|
15
14
|
end
|
|
16
15
|
end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Tailwinds
|
|
4
|
+
module Nav
|
|
5
|
+
# Base class for all Nav::ItemComponent classes
|
|
6
|
+
#
|
|
7
|
+
class ItemComponent < TailwindComponent
|
|
8
|
+
def style
|
|
9
|
+
@style ||= [
|
|
10
|
+
'text-white', 'hover:bg-gray-300', 'hover:text-gray-800', 'px-4', 'py-2', 'rounded', 'whitespace-nowrap',
|
|
11
|
+
'dark:hover:bg-gray-700', 'dark:hover:text-gray-400'
|
|
12
|
+
].join(' ')
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
= link_to helpers.t('views.pagination.first').html_safe,
|
|
3
3
|
url,
|
|
4
4
|
remote:,
|
|
5
|
-
class: pagination_classes(klass: 'first sm:
|
|
5
|
+
class: pagination_classes(klass: 'first hidden sm:flex')
|
|
6
6
|
|
|
7
7
|
= link_to '⭰',
|
|
8
8
|
url,
|
|
9
9
|
remote:,
|
|
10
|
-
class: pagination_classes(klass: 'first hidden
|
|
10
|
+
class: pagination_classes(klass: 'first sm:hidden flex font-bold')
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
%span.page.gap.px-3.py-2.text-sm.font-medium.text-purple-700.dark:text-white.flex.
|
|
1
|
+
%span.page.gap.px-3.py-2.text-sm.font-medium.text-purple-700.dark:text-white.sm:flex.hidden
|
|
2
2
|
= helpers.t('views.pagination.truncate').html_safe
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
= link_to helpers.t('views.pagination.last').html_safe,
|
|
3
3
|
url,
|
|
4
4
|
remote:,
|
|
5
|
-
class: pagination_classes(klass: 'last sm:
|
|
5
|
+
class: pagination_classes(klass: 'last hidden sm:flex')
|
|
6
6
|
|
|
7
7
|
= link_to '⭲',
|
|
8
8
|
url,
|
|
9
9
|
remote:,
|
|
10
|
-
class: pagination_classes(klass: 'last hidden
|
|
10
|
+
class: pagination_classes(klass: 'last sm:hidden flex font-bold')
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
url,
|
|
4
4
|
rel: 'next',
|
|
5
5
|
remote:,
|
|
6
|
-
class: pagination_classes(klass: 'next sm:
|
|
6
|
+
class: pagination_classes(klass: 'next hidden sm:flex')
|
|
7
7
|
|
|
8
8
|
= link_to '🠖',
|
|
9
9
|
url,
|
|
10
10
|
rel: 'next',
|
|
11
11
|
remote:,
|
|
12
|
-
class: pagination_classes(klass: 'next hidden
|
|
12
|
+
class: pagination_classes(klass: 'next sm:hidden flex font-bold')
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
url,
|
|
4
4
|
rel: 'prev',
|
|
5
5
|
remote:,
|
|
6
|
-
class: pagination_classes(klass: 'prev sm:
|
|
6
|
+
class: pagination_classes(klass: 'prev hidden sm:flex')
|
|
7
7
|
|
|
8
8
|
= link_to '🠔',
|
|
9
9
|
url,
|
|
10
10
|
rel: 'prev',
|
|
11
11
|
remote:,
|
|
12
|
-
class: pagination_classes(klass: 'prev hidden
|
|
12
|
+
class: pagination_classes(klass: 'prev sm:hidden flex font-bold')
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
.div-table-cell.px-6.py-4.font-medium.text-gray-900.whitespace-nowrap.dark:
|
|
1
|
+
.div-table-cell.px-6.py-4.font-medium.text-gray-900.whitespace-nowrap.dark:text-white.text-xs.sm:text-base
|
|
2
2
|
= content
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
.div-table-row.block.grid.text-white.text-small.gap-4.bg-purple-700.dark:bg-gray-700.dark:text-gray-400{ class: "grid-cols-#{headers.count}" }
|
|
2
|
+
- if headers.any?
|
|
3
|
+
- headers.each do |header|
|
|
4
|
+
.div-table-cell.py-4.px-6
|
|
5
|
+
= header
|
|
6
|
+
- else
|
|
7
|
+
= content
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
|
|
2
1
|
- if cells.any?
|
|
3
|
-
- cols = cells.count.times.map { |item| "1fr" }.join(",")
|
|
4
|
-
|
|
5
2
|
-# desktop view
|
|
6
|
-
= row_tag class:
|
|
3
|
+
= row_tag class: desktop_row_classes(cells.count) do
|
|
7
4
|
- cells.each do |(_, value)|
|
|
8
|
-
.div-table-cell.px-6.py-4.font-medium.text-gray-900.whitespace-nowrap.dark:text-white.
|
|
5
|
+
.div-table-cell.px-6.py-4.font-medium.text-gray-900.whitespace-nowrap.dark:text-white.text-xs.sm:text-base
|
|
9
6
|
= value
|
|
10
7
|
|
|
11
8
|
-# mobile view
|
|
@@ -20,7 +17,11 @@
|
|
|
20
17
|
.text-gray-900.dark:text-white.p-4.text-xs.sm:text-base.inline-block.w-auto
|
|
21
18
|
= value
|
|
22
19
|
- else
|
|
23
|
-
-
|
|
20
|
+
- cells = Nokogiri::HTML.fragment(content).children.css('div')
|
|
24
21
|
|
|
25
|
-
|
|
26
|
-
=
|
|
22
|
+
- if href.present?
|
|
23
|
+
= tag.a href:, class: [desktop_row_classes(cells.count), link_row_classes].join(' ') do
|
|
24
|
+
= content
|
|
25
|
+
- else
|
|
26
|
+
= tag.div class: desktop_row_classes(cells.count) do
|
|
27
|
+
= content
|
|
@@ -9,7 +9,7 @@ module Tailwinds
|
|
|
9
9
|
|
|
10
10
|
def row_tag(**options, &)
|
|
11
11
|
if href.present?
|
|
12
|
-
klass = "#{options[:class] || ''}
|
|
12
|
+
klass = "#{options[:class] || ''} #{link_row_classes}"
|
|
13
13
|
|
|
14
14
|
link_to(href, options.merge(class: klass)) do
|
|
15
15
|
yield if block_given?
|
|
@@ -20,6 +20,19 @@ module Tailwinds
|
|
|
20
20
|
end
|
|
21
21
|
end
|
|
22
22
|
end
|
|
23
|
+
|
|
24
|
+
# :reek:UtilityFunction { enabled: false }
|
|
25
|
+
def desktop_row_classes(cells_count)
|
|
26
|
+
[
|
|
27
|
+
'div-table-row', 'grid', 'gap-4', 'bg-white', 'border-b', 'last:border-b-0', 'dark:bg-gray-800',
|
|
28
|
+
'dark:border-gray-700', "grid-cols-#{cells_count}"
|
|
29
|
+
].join(' ')
|
|
30
|
+
end
|
|
31
|
+
# :reek:UtilityFunction { enabled: true }
|
|
32
|
+
|
|
33
|
+
def link_row_classes
|
|
34
|
+
'cursor-pointer hover:bg-gray-100 dark:hover:bg-gray-700'
|
|
35
|
+
end
|
|
23
36
|
end
|
|
24
37
|
end
|
|
25
38
|
end
|
|
@@ -1,2 +1,3 @@
|
|
|
1
1
|
- decorator = decorator_class(entity)
|
|
2
|
-
|
|
2
|
+
- decorated_object = decorator.decorate(entity)
|
|
3
|
+
= component 'tailwinds/table/row', cells: decorator.list_attributes.reduce({}) { |hash, attribute| hash.merge! attribute => decorated_object.public_send(attribute) }, href: decorated_object.show_path
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
- decorator = Tramway::Decorators::NameBuilder.default_decorator_class_name(@model_class)
|
|
2
|
+
- list_attributes = decorator.constantize.list_attributes
|
|
3
|
+
|
|
4
|
+
.mt-8.w-full
|
|
5
|
+
- content_for :title, page_title
|
|
6
|
+
|
|
7
|
+
.flex.justify-between.items-center.md:mt-4.mt-2
|
|
8
|
+
%h1.font-bold.text-4xl.dark:text-white
|
|
9
|
+
= content_for(:title)
|
|
10
|
+
|
|
11
|
+
- if Tramway.config.pagination[:enabled]
|
|
12
|
+
= paginate @entities
|
|
13
|
+
|
|
14
|
+
- if list_attributes.empty?
|
|
15
|
+
%p.text-center.mt-10
|
|
16
|
+
You should fill class-level method `self.list_attributes` inside your
|
|
17
|
+
= decorator
|
|
18
|
+
|
|
19
|
+
= component 'tailwinds/table' do
|
|
20
|
+
= component 'tailwinds/table/header', headers: list_attributes.map { |attribute| @model_class.human_attribute_name(attribute) }
|
|
21
|
+
- @entities.each do |item|
|
|
22
|
+
= render 'tramway/entities/entity', entity: item
|
|
23
|
+
|
|
24
|
+
.flex.mt-4
|
|
25
|
+
= paginate @entities
|
|
@@ -1,25 +1 @@
|
|
|
1
|
-
|
|
2
|
-
- list_attributes = decorator.constantize.list_attributes
|
|
3
|
-
|
|
4
|
-
.mt-8{ class: 'w-2/3' }
|
|
5
|
-
- content_for :title, page_title
|
|
6
|
-
|
|
7
|
-
.flex.justify-between.items-center.md:mt-4.mt-2
|
|
8
|
-
%h1.font-bold.text-4xl.dark:text-white
|
|
9
|
-
= page_title
|
|
10
|
-
|
|
11
|
-
- if Tramway.config.pagination[:enabled]
|
|
12
|
-
= paginate @entities
|
|
13
|
-
|
|
14
|
-
- if list_attributes.empty?
|
|
15
|
-
%p.text-center.mt-10
|
|
16
|
-
You should fill class-level method `self.list_attributes` inside your
|
|
17
|
-
= decorator
|
|
18
|
-
|
|
19
|
-
= component 'tailwinds/table' do
|
|
20
|
-
= component 'tailwinds/table/header', headers: list_attributes.map { |attribute| @model_class.human_attribute_name(attribute) }
|
|
21
|
-
- @entities.each do |item|
|
|
22
|
-
= render 'entity', entity: item
|
|
23
|
-
|
|
24
|
-
.flex.mt-4
|
|
25
|
-
= paginate @entities
|
|
1
|
+
= render 'tramway/entities/list'
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
/ Includes all stylesheet files in app/assets/stylesheets
|
|
20
20
|
= stylesheet_link_tag "tailwind", "data-turbo-track": "reload"
|
|
21
21
|
|
|
22
|
-
%body.bg-gray-100
|
|
22
|
+
%body.bg-gray-100.dark:bg-gray-900.text-gray-900.dark:text-white
|
|
23
23
|
= tramway_navbar title: 'Tramway'
|
|
24
24
|
|
|
25
25
|
.container.mx-auto.p-4.flex.align-center.justify-center
|
data/config/tailwind.config.js
CHANGED
|
@@ -1,21 +1,4 @@
|
|
|
1
|
-
const defaultTheme = require('tailwindcss/defaultTheme');
|
|
2
|
-
|
|
3
1
|
module.exports = {
|
|
4
|
-
darkMode: 'class',
|
|
5
|
-
content: [
|
|
6
|
-
'./public/*.html',
|
|
7
|
-
'./app/components/**/*.html.haml',
|
|
8
|
-
'./app/helpers/**/*.rb',
|
|
9
|
-
'./app/javascript/**/*.js',
|
|
10
|
-
'./app/views/**/*.{erb,haml,html,slim}'
|
|
11
|
-
],
|
|
12
|
-
theme: {
|
|
13
|
-
extend: {
|
|
14
|
-
screens: {
|
|
15
|
-
...defaultTheme.screens,
|
|
16
|
-
},
|
|
17
|
-
},
|
|
18
|
-
},
|
|
19
2
|
safelist: [
|
|
20
3
|
'div-table',
|
|
21
4
|
'div-table-row',
|
|
@@ -25,37 +8,42 @@ module.exports = {
|
|
|
25
8
|
'text-4xl',
|
|
26
9
|
'font-bold',
|
|
27
10
|
'xl:hidden',
|
|
28
|
-
'grid-cols-
|
|
29
|
-
'grid-cols-
|
|
30
|
-
'grid-cols-
|
|
31
|
-
'grid-cols-
|
|
32
|
-
'grid-cols-
|
|
33
|
-
'grid-cols-
|
|
34
|
-
'grid-cols-
|
|
35
|
-
'grid-cols-
|
|
36
|
-
'grid-cols-
|
|
37
|
-
'grid-cols-
|
|
11
|
+
'grid-cols-1',
|
|
12
|
+
'grid-cols-2',
|
|
13
|
+
'grid-cols-3',
|
|
14
|
+
'grid-cols-4',
|
|
15
|
+
'grid-cols-5',
|
|
16
|
+
'grid-cols-6',
|
|
17
|
+
'grid-cols-7',
|
|
18
|
+
'grid-cols-8',
|
|
19
|
+
'grid-cols-9',
|
|
20
|
+
'grid-cols-10',
|
|
38
21
|
'text-right',
|
|
39
22
|
'w-2/3',
|
|
40
23
|
'flex',
|
|
24
|
+
'bg-purple-700',
|
|
25
|
+
'px-6',
|
|
26
|
+
'py-4',
|
|
27
|
+
'dark:placeholder-gray-400',
|
|
28
|
+
'dark:text-white',
|
|
29
|
+
'dark:bg-gray-800',
|
|
30
|
+
'dark:bg-gray-900',
|
|
31
|
+
'dark:hover:bg-gray-700',
|
|
32
|
+
'dark:bg-gray-700',
|
|
33
|
+
'dark:text-gray-400',
|
|
34
|
+
'dark:hover:bg-gray-700',
|
|
35
|
+
'dark:hover:text-gray-400',
|
|
36
|
+
'ml-4',
|
|
37
|
+
'sm:text-base',
|
|
38
|
+
'sm:hidden',
|
|
39
|
+
'sm:flex',
|
|
40
|
+
'last:border-b-0',
|
|
41
|
+
'hover:bg-gray-100',
|
|
42
|
+
'hover:bg-gray-300',
|
|
43
|
+
'hover:text-gray-800',
|
|
44
|
+
// pagination
|
|
45
|
+
'bg-white', 'rounded-md', 'hover:bg-purple-100', 'dark:text-white', 'dark:bg-gray-800', 'dark:hover:bg-gray-700',
|
|
41
46
|
// multiselect styles
|
|
42
|
-
'absolute', 'shadow', 'top-
|
|
43
|
-
{
|
|
44
|
-
pattern: /(text|bg|border)-(purple|blue|gray|yellow|red|white|green)-\d+/,
|
|
45
|
-
variants: ['dark', 'focus', 'hover', 'dark:hover'],
|
|
46
|
-
},
|
|
47
|
-
{
|
|
48
|
-
pattern: /(text|bg)-(purple|blue|gray|yellow|red|white)/,
|
|
49
|
-
variants: ['dark', 'focus', 'hover', 'dark:hover'],
|
|
50
|
-
},
|
|
51
|
-
{
|
|
52
|
-
pattern: /(m|p)(l|r|b|t|x|y)-\d+/
|
|
53
|
-
},
|
|
54
|
-
],
|
|
55
|
-
plugins: [
|
|
56
|
-
require('@tailwindcss/forms'),
|
|
57
|
-
require('@tailwindcss/aspect-ratio'),
|
|
58
|
-
require('@tailwindcss/typography'),
|
|
59
|
-
require('@tailwindcss/container-queries'),
|
|
47
|
+
'absolute', 'shadow', 'top-11', 'z-40', 'w-full', 'lef-0', 'rounded', 'max-h-select', 'overflow-y-auto', 'cursor-pointer', 'rounded-t', 'border-b', 'hover:bg-teal-100', 'items-center', 'border-transparent', 'border-l-2,', 'relative', 'hover:border-teal-100', 'leading-6', 'bg-transparent', 'appearance-none', 'outline-none', 'h-full' , 'justify-center', 'm-1', 'font-medium', 'rounded-full', 'text-teal-700', 'bg-teal-100', 'border', 'border-teal-300', 'text-xs', 'font-normal', 'leading-none', 'max-w-full', 'flex-initial', 'flex-auto', 'flex-row-reverse',, 'flex-col', 'min-w-96', 'w-fit', 'flex-wrap', 'w-8', 'border-l',
|
|
60
48
|
],
|
|
61
|
-
}
|
|
49
|
+
}
|
|
@@ -36,7 +36,7 @@ module Tramway
|
|
|
36
36
|
def pluralized(model_name)
|
|
37
37
|
local_plural = I18n.t("#{name}.many", scope: 'activerecord.plural.models', default: nil)
|
|
38
38
|
|
|
39
|
-
local_plural.
|
|
39
|
+
local_plural.presence || model_name.pluralize
|
|
40
40
|
end
|
|
41
41
|
|
|
42
42
|
def model_class
|
data/lib/tramway/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: tramway
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.5.
|
|
4
|
+
version: 0.5.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- kalashnikovisme
|
|
@@ -9,7 +9,7 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2025-
|
|
12
|
+
date: 2025-02-17 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: anyway_config
|
|
@@ -101,6 +101,20 @@ dependencies:
|
|
|
101
101
|
- - "<"
|
|
102
102
|
- !ruby/object:Gem::Version
|
|
103
103
|
version: '9'
|
|
104
|
+
- !ruby/object:Gem::Dependency
|
|
105
|
+
name: tailwindcss-rails
|
|
106
|
+
requirement: !ruby/object:Gem::Requirement
|
|
107
|
+
requirements:
|
|
108
|
+
- - ">="
|
|
109
|
+
- !ruby/object:Gem::Version
|
|
110
|
+
version: '4.0'
|
|
111
|
+
type: :runtime
|
|
112
|
+
prerelease: false
|
|
113
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
114
|
+
requirements:
|
|
115
|
+
- - ">="
|
|
116
|
+
- !ruby/object:Gem::Version
|
|
117
|
+
version: '4.0'
|
|
104
118
|
- !ruby/object:Gem::Dependency
|
|
105
119
|
name: view_component
|
|
106
120
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -154,6 +168,7 @@ files:
|
|
|
154
168
|
- app/components/tailwinds/nav/item/button_component.rb
|
|
155
169
|
- app/components/tailwinds/nav/item/link_component.html.haml
|
|
156
170
|
- app/components/tailwinds/nav/item/link_component.rb
|
|
171
|
+
- app/components/tailwinds/nav/item_component.rb
|
|
157
172
|
- app/components/tailwinds/navbar_component.html.haml
|
|
158
173
|
- app/components/tailwinds/navbar_component.rb
|
|
159
174
|
- app/components/tailwinds/pagination/base.rb
|
|
@@ -190,6 +205,7 @@ files:
|
|
|
190
205
|
- app/views/kaminari/_paginator.html.haml
|
|
191
206
|
- app/views/kaminari/_prev_page.html.haml
|
|
192
207
|
- app/views/tramway/entities/_entity.html.haml
|
|
208
|
+
- app/views/tramway/entities/_list.html.haml
|
|
193
209
|
- app/views/tramway/entities/index.html.haml
|
|
194
210
|
- app/views/tramway/layouts/application.html.haml
|
|
195
211
|
- config/routes.rb
|