ui_components 0.1.0
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 +7 -0
- data/CHANGELOG.md +5 -0
- data/CODE_OF_CONDUCT.md +132 -0
- data/LICENSE.txt +21 -0
- data/README.md +43 -0
- data/Rakefile +4 -0
- data/app/assets/javascripts/ui_components/controllers/clipboard_controller.js +22 -0
- data/app/components/documentation/body/example_preview_component.rb +24 -0
- data/app/components/documentation/body_component.html.erb +26 -0
- data/app/components/documentation/body_component.rb +41 -0
- data/app/components/documentation_component.rb +20 -0
- data/app/components/ui_components/daisy_ui/action/button_component.rb +83 -0
- data/app/components/ui_components/daisy_ui/action/dropdown/anchor_component.rb +35 -0
- data/app/components/ui_components/daisy_ui/action/dropdown/card_component.rb +41 -0
- data/app/components/ui_components/daisy_ui/action/dropdown/card_item_component.rb +29 -0
- data/app/components/ui_components/daisy_ui/action/dropdown/list_item_component.rb +30 -0
- data/app/components/ui_components/daisy_ui/action/dropdown/menu_component.rb +40 -0
- data/app/components/ui_components/daisy_ui/action/dropdown_component.rb +79 -0
- data/app/components/ui_components/daisy_ui/action/modal/anchor_component.rb +43 -0
- data/app/components/ui_components/daisy_ui/action/modal/dialog/box/action/item_component.rb +33 -0
- data/app/components/ui_components/daisy_ui/action/modal/dialog/box/action_component.rb +42 -0
- data/app/components/ui_components/daisy_ui/action/modal/dialog/box/body_component.rb +31 -0
- data/app/components/ui_components/daisy_ui/action/modal/dialog/box/close_component.rb +33 -0
- data/app/components/ui_components/daisy_ui/action/modal/dialog/box/title_component.rb +31 -0
- data/app/components/ui_components/daisy_ui/action/modal/dialog/box_component.rb +54 -0
- data/app/components/ui_components/daisy_ui/action/modal/dialog_component.rb +58 -0
- data/app/components/ui_components/daisy_ui/action/modal_component.rb +33 -0
- data/app/components/ui_components/daisy_ui/action/swap/off_component.rb +27 -0
- data/app/components/ui_components/daisy_ui/action/swap/on_component.rb +27 -0
- data/app/components/ui_components/daisy_ui/action/swap_component.rb +59 -0
- data/app/components/ui_components/daisy_ui/base_component.rb +41 -0
- data/app/components/ui_components/daisy_ui/data_display/accordion/anchor_component.rb +27 -0
- data/app/components/ui_components/daisy_ui/data_display/accordion/body_component.rb +27 -0
- data/app/components/ui_components/daisy_ui/data_display/accordion/item_component.rb +69 -0
- data/app/components/ui_components/daisy_ui/data_display/accordion_component.rb +32 -0
- data/app/components/ui_components/daisy_ui/data_display/avatar/box_component.rb +61 -0
- data/app/components/ui_components/daisy_ui/data_display/avatar/item_component.rb +62 -0
- data/app/components/ui_components/daisy_ui/data_display/avatar_component.rb +21 -0
- data/app/components/ui_components/daisy_ui/data_display/badge_component.rb +58 -0
- data/app/controllers/ui_components/daisy_ui/action_components_controller.rb +15 -0
- data/app/controllers/ui_components/daisy_ui/application_controller.rb +9 -0
- data/app/controllers/ui_components/daisy_ui/data_display_components_controller.rb +13 -0
- data/app/controllers/ui_components/daisy_ui/home_controller.rb +9 -0
- data/app/helpers/action/button_helper.rb +18 -0
- data/app/helpers/action/dropdown_helper.rb +19 -0
- data/app/helpers/data_display/badge_helper.rb +26 -0
- data/app/views/ui_components/daisy_ui/action_components/button.html.erb +114 -0
- data/app/views/ui_components/daisy_ui/action_components/dropdown.html.erb +117 -0
- data/app/views/ui_components/daisy_ui/action_components/modal.html.erb +73 -0
- data/app/views/ui_components/daisy_ui/action_components/swap.html.erb +97 -0
- data/app/views/ui_components/daisy_ui/data_display_components/accordion.html.erb +205 -0
- data/app/views/ui_components/daisy_ui/data_display_components/avatar.html.erb +261 -0
- data/app/views/ui_components/daisy_ui/data_display_components/badge.html.erb +150 -0
- data/app/views/ui_components/daisy_ui/home/index.html.erb +20 -0
- data/config/routes.rb +22 -0
- data/lib/tasks/ui_components_tasks.rake +55 -0
- data/lib/ui_components/config/daisy_ui_class_names.rb +33 -0
- data/lib/ui_components/config/tailwind_class_names.rb +44 -0
- data/lib/ui_components/config.rb +52 -0
- data/lib/ui_components/engine.rb +12 -0
- data/lib/ui_components/version.rb +5 -0
- data/lib/ui_components.rb +9 -0
- data/sig/ui_components.rbs +4 -0
- metadata +155 -0
@@ -0,0 +1,150 @@
|
|
1
|
+
<% component = UiComponents::DaisyUi::DataDisplay::BadgeComponent %>
|
2
|
+
|
3
|
+
<div class="grid grid-cols gap-16 p-2 mt-6 mb-36">
|
4
|
+
<div class="mb-2">
|
5
|
+
<h1 class="font-bold mb-2"># Data display > Badge</h1>
|
6
|
+
<ul class="bg-base-100 rounded-box shadow-md p-2">
|
7
|
+
<%= link_to "< Avatar", daisy_ui_avatar_path, class: "link link-primary m-2" %>
|
8
|
+
<%= link_to "Home", daisy_ui_path, class: "link link-primary m-2" %>
|
9
|
+
</ul>
|
10
|
+
</div>
|
11
|
+
|
12
|
+
<%= render DocumentationComponent.new do |document| %>
|
13
|
+
<%= document.with_header { "# Badge" } %>
|
14
|
+
<%= document.with_body do |body| %>
|
15
|
+
<%= body.with_preview_example(
|
16
|
+
source: <<~ERB
|
17
|
+
<$= render #{component}.new do $>
|
18
|
+
Default
|
19
|
+
<$ end $>
|
20
|
+
ERB
|
21
|
+
) %>
|
22
|
+
<% end %>
|
23
|
+
<% end %>
|
24
|
+
|
25
|
+
<% sizes = { 'xs' => 'Xsmall', 'sm' => 'Small', 'md' => 'Medium', 'lg' => 'Large', 'xl' => 'Xlarge' } %>
|
26
|
+
|
27
|
+
<%= render DocumentationComponent.new do |document| %>
|
28
|
+
<%= document.with_header { "# Badge sizes" } %>
|
29
|
+
<%= document.with_body do |body| %>
|
30
|
+
<% sizes.each do |key, value| %>
|
31
|
+
<%= body.with_preview_example(
|
32
|
+
source: <<~ERB
|
33
|
+
<$= render #{component}.new(size: "#{key}") do $>
|
34
|
+
#{value}
|
35
|
+
<$ end $>
|
36
|
+
ERB
|
37
|
+
) %>
|
38
|
+
<% end %>
|
39
|
+
<% end %>
|
40
|
+
<% end %>
|
41
|
+
|
42
|
+
<% colors = { 'primary' => 'Primary', 'secondary' => 'Secondary', 'accent' => 'Accent', 'info' => 'Info', 'success' => 'Success', 'warning' => 'Warning', 'error' => 'Error' } %>
|
43
|
+
|
44
|
+
<%= render DocumentationComponent.new do |document| %>
|
45
|
+
<%= document.with_header { "# Badge with colors" } %>
|
46
|
+
<%= document.with_body do |body| %>
|
47
|
+
<% colors.each do |key, value| %>
|
48
|
+
<%= body.with_preview_example(
|
49
|
+
source: <<~ERB
|
50
|
+
<$= render #{component}.new(color: "#{key}") do $>
|
51
|
+
#{value}
|
52
|
+
<$ end $>
|
53
|
+
ERB
|
54
|
+
) %>
|
55
|
+
<% end %>
|
56
|
+
<% end %>
|
57
|
+
<% end %>
|
58
|
+
|
59
|
+
<% kinds = { 'soft' => 'Soft', 'outline' => 'Outline', 'dash' => 'Dash', 'ghost' => 'Ghost' } %>
|
60
|
+
|
61
|
+
<% kinds.each do |kind_key, kind_value| %>
|
62
|
+
<%= render DocumentationComponent.new do |document| %>
|
63
|
+
<%= document.with_header { "# #{kind_value} #{kind_key == "ghost" ? 'badge' : 'badges'}" } %>
|
64
|
+
<%= document.with_body do |body| %>
|
65
|
+
<% colors.each do |color_key, value| %>
|
66
|
+
|
67
|
+
<% next if data_display_badge_skip_kind(kind_key:, color_key:) %>
|
68
|
+
|
69
|
+
<%= body.with_preview_example(
|
70
|
+
source: <<~ERB
|
71
|
+
<$= render #{component}.new(#{data_display_badge_handle_component_params(kind_key:, color_key:)}) do $>
|
72
|
+
#{kind_key == "ghost" ? kind_value : value}
|
73
|
+
<$ end $>
|
74
|
+
ERB
|
75
|
+
) %>
|
76
|
+
<% end %>
|
77
|
+
<% end %>
|
78
|
+
<% end %>
|
79
|
+
<% end %>
|
80
|
+
|
81
|
+
<%= render DocumentationComponent.new do |document| %>
|
82
|
+
<%= document.with_header { "# Empty badge" } %>
|
83
|
+
<%= document.with_body do |body| %>
|
84
|
+
<% sizes.keys.reverse.each do |key| %>
|
85
|
+
<%= body.with_preview_example(
|
86
|
+
source: <<~ERB
|
87
|
+
<$= render #{component}.new(size: "#{key}", color: "primary") $>
|
88
|
+
ERB
|
89
|
+
) %>
|
90
|
+
<% end %>
|
91
|
+
<% end %>
|
92
|
+
<% end %>
|
93
|
+
|
94
|
+
<% badge_with_icon_colors = { 'info' => 'Info', 'success' => 'Success', 'warning' => 'Warning', 'error' => 'Error' } %>
|
95
|
+
|
96
|
+
<%= render DocumentationComponent.new do |document| %>
|
97
|
+
<%= document.with_header { "# Badge with icon" } %>
|
98
|
+
<%= document.with_body do |body| %>
|
99
|
+
<% badge_with_icon_colors.each do |key, value| %>
|
100
|
+
<%= body.with_preview_example(
|
101
|
+
source: <<~ERB
|
102
|
+
<$= render #{component}.new(color: "#{key}") do $>
|
103
|
+
#{data_display_badge_icons[key]}
|
104
|
+
#{value}
|
105
|
+
<$ end $>
|
106
|
+
ERB
|
107
|
+
) %>
|
108
|
+
<% end %>
|
109
|
+
<% end %>
|
110
|
+
<% end %>
|
111
|
+
|
112
|
+
|
113
|
+
<%= render DocumentationComponent.new do |document| %>
|
114
|
+
<%= document.with_header { "# Badge in a text" } %>
|
115
|
+
<%= document.with_body do |body| %>
|
116
|
+
<% sizes.keys.reverse.each_with_index do |key, index| %>
|
117
|
+
<%= body.with_preview_example(
|
118
|
+
source: <<~ERB
|
119
|
+
<h1 class="text-#{key == "md" ? "base" : key} font-semibold">
|
120
|
+
Heading #{index+1}
|
121
|
+
<$= render #{component}.new(size: "#{key}") do $>
|
122
|
+
Badge
|
123
|
+
<$ end $>
|
124
|
+
</h1>
|
125
|
+
ERB
|
126
|
+
) %>
|
127
|
+
<% end %>
|
128
|
+
<% end %>
|
129
|
+
<% end %>
|
130
|
+
|
131
|
+
<% badge_with_button_colors = ["", "secondary"] %>
|
132
|
+
|
133
|
+
<%= render DocumentationComponent.new do |document| %>
|
134
|
+
<%= document.with_header { "# Badge in a button" } %>
|
135
|
+
<%= document.with_body do |body| %>
|
136
|
+
<% badge_with_button_colors.each do |key| %>
|
137
|
+
<%= body.with_preview_example(
|
138
|
+
source: <<~ERB
|
139
|
+
<$= render UiComponents::DaisyUi::Action::ButtonComponent.new do $>
|
140
|
+
Inbox
|
141
|
+
<$= render #{component}.new(size: "sm"#{", color: \"#{key}\"" if key.present?}) do $>
|
142
|
+
+99
|
143
|
+
<$ end $>
|
144
|
+
<$ end $>
|
145
|
+
ERB
|
146
|
+
) %>
|
147
|
+
<% end %>
|
148
|
+
<% end %>
|
149
|
+
<% end %>
|
150
|
+
</div>
|
@@ -0,0 +1,20 @@
|
|
1
|
+
<div class="grid grid-cols gap-16 p-2 mt-6 mb-36">
|
2
|
+
<div class="mb-2">
|
3
|
+
<h1 class="font-bold mb-2"># Actions</h1>
|
4
|
+
<ul class="bg-base-100 rounded-box shadow-md p-2">
|
5
|
+
<%= link_to "Button", daisy_ui_button_path, class: "link link-primary m-2" %>
|
6
|
+
<%= link_to "Dropdown", daisy_ui_dropdown_path, class: "link link-primary m-2" %>
|
7
|
+
<%= link_to "Modal", daisy_ui_modal_path, class: "link link-primary m-2" %>
|
8
|
+
<%= link_to "Swap", daisy_ui_swap_path, class: "link link-primary m-2" %>
|
9
|
+
</ul>
|
10
|
+
</div>
|
11
|
+
|
12
|
+
<div class="mb-2">
|
13
|
+
<h1 class="font-bold mb-2"># Data display</h1>
|
14
|
+
<ul class="bg-base-100 rounded-box shadow-md p-2">
|
15
|
+
<%= link_to "Accordion", daisy_ui_accordion_path, class: "link link-primary m-2" %>
|
16
|
+
<%= link_to "Avatar", daisy_ui_avatar_path, class: "link link-primary m-2" %>
|
17
|
+
<%= link_to "Badge", daisy_ui_badge_path, class: "link link-primary m-2" %>
|
18
|
+
</ul>
|
19
|
+
</div>
|
20
|
+
</div>
|
data/config/routes.rb
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
UiComponents::Engine.routes.draw do
|
2
|
+
scope '/ui_components' do
|
3
|
+
namespace :daisy_ui do
|
4
|
+
get '/', to: "home#index"
|
5
|
+
|
6
|
+
# Actions
|
7
|
+
scope controller: :action_components do
|
8
|
+
get "button"
|
9
|
+
get "dropdown"
|
10
|
+
get "modal"
|
11
|
+
get "swap"
|
12
|
+
end
|
13
|
+
|
14
|
+
# Dara Display
|
15
|
+
scope controller: :data_display_components do
|
16
|
+
get "accordion"
|
17
|
+
get "avatar"
|
18
|
+
get "badge"
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,55 @@
|
|
1
|
+
namespace :ui_components do
|
2
|
+
desc "Initial UiComponents settings"
|
3
|
+
task setup: :environment do
|
4
|
+
# Set config default rails tailwindcss
|
5
|
+
Rake::Task["tailwindcss:install"].invoke
|
6
|
+
|
7
|
+
# Inject data into Procfile.dev file
|
8
|
+
UiComponents::Config.inject_into_file(file_path: Rails.root.join("Procfile.dev"),
|
9
|
+
file_data: "trigger: bin/rails ui_components:trigger")
|
10
|
+
|
11
|
+
# Add DaisyUI
|
12
|
+
system("yarn add daisyui")
|
13
|
+
|
14
|
+
# Inject data into app/assets/tailwind/application.css file
|
15
|
+
UiComponents::Config.inject_into_file(file_path: Rails.root.join("app/assets/tailwind/application.css"),
|
16
|
+
file_data: '@plugin "daisyui";')
|
17
|
+
|
18
|
+
# Creating mandatory tailwindcss classes
|
19
|
+
UiComponents::Config.safelist!
|
20
|
+
|
21
|
+
# Inject data into .gitignore file
|
22
|
+
UiComponents::Config.inject_into_file(file_path: Rails.root.join(".gitignore"),
|
23
|
+
file_data: "safelist.txt")
|
24
|
+
|
25
|
+
# Building tailwindcss assets
|
26
|
+
# Rake::Task["tailwindcss:build"].invoke
|
27
|
+
|
28
|
+
# Add engine for routes.rb
|
29
|
+
UiComponents::Config.inject_into_routes(file_path: Rails.root.join("config/routes.rb"),
|
30
|
+
route_line: 'mount UiComponents::Engine, at: "/"')
|
31
|
+
|
32
|
+
# Inject data into config/importmap.rb file
|
33
|
+
UiComponents::Config.inject_into_file(
|
34
|
+
file_path: Rails.root.join("config/importmap.rb"),
|
35
|
+
file_data: %(pin_all_from UiComponents::Config.js_controllers_path, under: "ui_components/controllers")
|
36
|
+
)
|
37
|
+
|
38
|
+
# Inject data into app/javascript/controllers/index.js file
|
39
|
+
UiComponents::Config.inject_into_file(
|
40
|
+
file_path: Rails.root.join("app/javascript/controllers/index.js"),
|
41
|
+
file_data: %(eagerLoadControllersFrom("ui_components/controllers", application))
|
42
|
+
)
|
43
|
+
end
|
44
|
+
|
45
|
+
desc "Trigger UiComponents tailwindcss classes"
|
46
|
+
task trigger: :environment do
|
47
|
+
sleep 2
|
48
|
+
|
49
|
+
UiComponents::Config.safelist!
|
50
|
+
|
51
|
+
loop do
|
52
|
+
sleep 3600
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module UiComponents
|
4
|
+
module Config
|
5
|
+
module DaisyUiClassNames
|
6
|
+
DAISY_UI_COMPONENTS = {
|
7
|
+
action: %w[button dropdown modal swap],
|
8
|
+
data_display: %w[accordion avatar badge]
|
9
|
+
}.freeze
|
10
|
+
|
11
|
+
class << self
|
12
|
+
def all
|
13
|
+
(
|
14
|
+
DAISY_UI_COMPONENTS.filter_map { |scope, components| get_component_classes(scope:, components:) }.flatten +
|
15
|
+
other_class_names
|
16
|
+
).uniq
|
17
|
+
end
|
18
|
+
|
19
|
+
private
|
20
|
+
|
21
|
+
def other_class_names
|
22
|
+
%w[link link-primary join join-vertical avatar-group -space-x-6 text-info]
|
23
|
+
end
|
24
|
+
|
25
|
+
def get_component_classes(scope:, components:)
|
26
|
+
components.filter_map { |component|
|
27
|
+
"UiComponents::DaisyUi::#{scope.to_s.capitalize.classify}::#{component.to_s.capitalize}Component::CSS_CLASSES".safe_constantize
|
28
|
+
}.flatten
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module UiComponents
|
4
|
+
module Config
|
5
|
+
module TailwindClassNames
|
6
|
+
class << self
|
7
|
+
def all
|
8
|
+
flexbox_and_grid +
|
9
|
+
spacing +
|
10
|
+
sizing +
|
11
|
+
typography +
|
12
|
+
borders +
|
13
|
+
svg
|
14
|
+
end
|
15
|
+
|
16
|
+
private
|
17
|
+
|
18
|
+
def flexbox_and_grid
|
19
|
+
%w[grid grid-cols gap-16]
|
20
|
+
end
|
21
|
+
|
22
|
+
def spacing
|
23
|
+
%w[p-2 m-2 mt-6 mb-36]
|
24
|
+
end
|
25
|
+
|
26
|
+
def sizing
|
27
|
+
%w[w-8 w-10 w-12 w-16 w-20 w-32 h-10]
|
28
|
+
end
|
29
|
+
|
30
|
+
def typography
|
31
|
+
%w[text-xl font-semibold text-center]
|
32
|
+
end
|
33
|
+
|
34
|
+
def borders
|
35
|
+
%w[rounded rounded-xl rounded-full]
|
36
|
+
end
|
37
|
+
|
38
|
+
def svg
|
39
|
+
%w[fill-current]
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,52 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "config/tailwind_class_names"
|
4
|
+
require_relative "config/daisy_ui_class_names"
|
5
|
+
module UiComponents
|
6
|
+
module Config
|
7
|
+
class << self
|
8
|
+
def inject_into_file(file_path:, file_data:)
|
9
|
+
return unless File.exist?(file_path)
|
10
|
+
|
11
|
+
file_content = File.read(file_path)
|
12
|
+
|
13
|
+
return if file_content.include?(file_data)
|
14
|
+
|
15
|
+
File.open(file_path, "a") do |file|
|
16
|
+
file.puts file_data
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
def inject_into_routes(file_path:, route_line:)
|
21
|
+
return unless File.exist?(file_path)
|
22
|
+
|
23
|
+
file_content = File.read(file_path)
|
24
|
+
|
25
|
+
return if file_content.include?(route_line.strip)
|
26
|
+
|
27
|
+
updated_content = file_content.gsub(
|
28
|
+
/Rails\.application\.routes\.draw do\n/,
|
29
|
+
"Rails.application.routes.draw do\n #{route_line}\n"
|
30
|
+
)
|
31
|
+
|
32
|
+
File.open(file_path, "w") { |file| file.write(updated_content) }
|
33
|
+
end
|
34
|
+
|
35
|
+
def js_controllers_path
|
36
|
+
UiComponents::Engine.root.join("app/assets/javascripts/ui_components/controllers")
|
37
|
+
end
|
38
|
+
|
39
|
+
def safelist!
|
40
|
+
file_content =(
|
41
|
+
UiComponents::Config::DaisyUiClassNames.all +
|
42
|
+
UiComponents::Config::TailwindClassNames.all +
|
43
|
+
DocumentationComponent::CSS_CLASSES
|
44
|
+
).uniq.sort.join(" ")
|
45
|
+
|
46
|
+
File.write(Rails.root.join("safelist.txt"), file_content)
|
47
|
+
|
48
|
+
file_content
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "rails/engine"
|
4
|
+
require "view_component"
|
5
|
+
require "tailwindcss-rails"
|
6
|
+
module UiComponents
|
7
|
+
class Engine < ::Rails::Engine
|
8
|
+
isolate_namespace UiComponents
|
9
|
+
|
10
|
+
config.autoload_paths << File.expand_path("app/components", root)
|
11
|
+
end
|
12
|
+
end
|
metadata
ADDED
@@ -0,0 +1,155 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: ui_components
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- jannilsonn
|
8
|
+
bindir: exe
|
9
|
+
cert_chain: []
|
10
|
+
date: 2025-03-29 00:00:00.000000000 Z
|
11
|
+
dependencies:
|
12
|
+
- !ruby/object:Gem::Dependency
|
13
|
+
name: rails
|
14
|
+
requirement: !ruby/object:Gem::Requirement
|
15
|
+
requirements:
|
16
|
+
- - "~>"
|
17
|
+
- !ruby/object:Gem::Version
|
18
|
+
version: 8.0.0
|
19
|
+
type: :runtime
|
20
|
+
prerelease: false
|
21
|
+
version_requirements: !ruby/object:Gem::Requirement
|
22
|
+
requirements:
|
23
|
+
- - "~>"
|
24
|
+
- !ruby/object:Gem::Version
|
25
|
+
version: 8.0.0
|
26
|
+
- !ruby/object:Gem::Dependency
|
27
|
+
name: view_component
|
28
|
+
requirement: !ruby/object:Gem::Requirement
|
29
|
+
requirements:
|
30
|
+
- - "~>"
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '3.21'
|
33
|
+
type: :runtime
|
34
|
+
prerelease: false
|
35
|
+
version_requirements: !ruby/object:Gem::Requirement
|
36
|
+
requirements:
|
37
|
+
- - "~>"
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: '3.21'
|
40
|
+
- !ruby/object:Gem::Dependency
|
41
|
+
name: tailwindcss-rails
|
42
|
+
requirement: !ruby/object:Gem::Requirement
|
43
|
+
requirements:
|
44
|
+
- - "~>"
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: '4.2'
|
47
|
+
type: :runtime
|
48
|
+
prerelease: false
|
49
|
+
version_requirements: !ruby/object:Gem::Requirement
|
50
|
+
requirements:
|
51
|
+
- - "~>"
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '4.2'
|
54
|
+
- !ruby/object:Gem::Dependency
|
55
|
+
name: tailwind_merge
|
56
|
+
requirement: !ruby/object:Gem::Requirement
|
57
|
+
requirements:
|
58
|
+
- - "~>"
|
59
|
+
- !ruby/object:Gem::Version
|
60
|
+
version: '1.1'
|
61
|
+
type: :runtime
|
62
|
+
prerelease: false
|
63
|
+
version_requirements: !ruby/object:Gem::Requirement
|
64
|
+
requirements:
|
65
|
+
- - "~>"
|
66
|
+
- !ruby/object:Gem::Version
|
67
|
+
version: '1.1'
|
68
|
+
executables: []
|
69
|
+
extensions: []
|
70
|
+
extra_rdoc_files: []
|
71
|
+
files:
|
72
|
+
- CHANGELOG.md
|
73
|
+
- CODE_OF_CONDUCT.md
|
74
|
+
- LICENSE.txt
|
75
|
+
- README.md
|
76
|
+
- Rakefile
|
77
|
+
- app/assets/javascripts/ui_components/controllers/clipboard_controller.js
|
78
|
+
- app/components/documentation/body/example_preview_component.rb
|
79
|
+
- app/components/documentation/body_component.html.erb
|
80
|
+
- app/components/documentation/body_component.rb
|
81
|
+
- app/components/documentation_component.rb
|
82
|
+
- app/components/ui_components/daisy_ui/action/button_component.rb
|
83
|
+
- app/components/ui_components/daisy_ui/action/dropdown/anchor_component.rb
|
84
|
+
- app/components/ui_components/daisy_ui/action/dropdown/card_component.rb
|
85
|
+
- app/components/ui_components/daisy_ui/action/dropdown/card_item_component.rb
|
86
|
+
- app/components/ui_components/daisy_ui/action/dropdown/list_item_component.rb
|
87
|
+
- app/components/ui_components/daisy_ui/action/dropdown/menu_component.rb
|
88
|
+
- app/components/ui_components/daisy_ui/action/dropdown_component.rb
|
89
|
+
- app/components/ui_components/daisy_ui/action/modal/anchor_component.rb
|
90
|
+
- app/components/ui_components/daisy_ui/action/modal/dialog/box/action/item_component.rb
|
91
|
+
- app/components/ui_components/daisy_ui/action/modal/dialog/box/action_component.rb
|
92
|
+
- app/components/ui_components/daisy_ui/action/modal/dialog/box/body_component.rb
|
93
|
+
- app/components/ui_components/daisy_ui/action/modal/dialog/box/close_component.rb
|
94
|
+
- app/components/ui_components/daisy_ui/action/modal/dialog/box/title_component.rb
|
95
|
+
- app/components/ui_components/daisy_ui/action/modal/dialog/box_component.rb
|
96
|
+
- app/components/ui_components/daisy_ui/action/modal/dialog_component.rb
|
97
|
+
- app/components/ui_components/daisy_ui/action/modal_component.rb
|
98
|
+
- app/components/ui_components/daisy_ui/action/swap/off_component.rb
|
99
|
+
- app/components/ui_components/daisy_ui/action/swap/on_component.rb
|
100
|
+
- app/components/ui_components/daisy_ui/action/swap_component.rb
|
101
|
+
- app/components/ui_components/daisy_ui/base_component.rb
|
102
|
+
- app/components/ui_components/daisy_ui/data_display/accordion/anchor_component.rb
|
103
|
+
- app/components/ui_components/daisy_ui/data_display/accordion/body_component.rb
|
104
|
+
- app/components/ui_components/daisy_ui/data_display/accordion/item_component.rb
|
105
|
+
- app/components/ui_components/daisy_ui/data_display/accordion_component.rb
|
106
|
+
- app/components/ui_components/daisy_ui/data_display/avatar/box_component.rb
|
107
|
+
- app/components/ui_components/daisy_ui/data_display/avatar/item_component.rb
|
108
|
+
- app/components/ui_components/daisy_ui/data_display/avatar_component.rb
|
109
|
+
- app/components/ui_components/daisy_ui/data_display/badge_component.rb
|
110
|
+
- app/controllers/ui_components/daisy_ui/action_components_controller.rb
|
111
|
+
- app/controllers/ui_components/daisy_ui/application_controller.rb
|
112
|
+
- app/controllers/ui_components/daisy_ui/data_display_components_controller.rb
|
113
|
+
- app/controllers/ui_components/daisy_ui/home_controller.rb
|
114
|
+
- app/helpers/action/button_helper.rb
|
115
|
+
- app/helpers/action/dropdown_helper.rb
|
116
|
+
- app/helpers/data_display/badge_helper.rb
|
117
|
+
- app/views/ui_components/daisy_ui/action_components/button.html.erb
|
118
|
+
- app/views/ui_components/daisy_ui/action_components/dropdown.html.erb
|
119
|
+
- app/views/ui_components/daisy_ui/action_components/modal.html.erb
|
120
|
+
- app/views/ui_components/daisy_ui/action_components/swap.html.erb
|
121
|
+
- app/views/ui_components/daisy_ui/data_display_components/accordion.html.erb
|
122
|
+
- app/views/ui_components/daisy_ui/data_display_components/avatar.html.erb
|
123
|
+
- app/views/ui_components/daisy_ui/data_display_components/badge.html.erb
|
124
|
+
- app/views/ui_components/daisy_ui/home/index.html.erb
|
125
|
+
- config/routes.rb
|
126
|
+
- lib/tasks/ui_components_tasks.rake
|
127
|
+
- lib/ui_components.rb
|
128
|
+
- lib/ui_components/config.rb
|
129
|
+
- lib/ui_components/config/daisy_ui_class_names.rb
|
130
|
+
- lib/ui_components/config/tailwind_class_names.rb
|
131
|
+
- lib/ui_components/engine.rb
|
132
|
+
- lib/ui_components/version.rb
|
133
|
+
- sig/ui_components.rbs
|
134
|
+
licenses:
|
135
|
+
- MIT
|
136
|
+
metadata: {}
|
137
|
+
rdoc_options: []
|
138
|
+
require_paths:
|
139
|
+
- lib
|
140
|
+
- app
|
141
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - ">="
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: 3.1.0
|
146
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
147
|
+
requirements:
|
148
|
+
- - ">="
|
149
|
+
- !ruby/object:Gem::Version
|
150
|
+
version: '0'
|
151
|
+
requirements: []
|
152
|
+
rubygems_version: 3.6.6
|
153
|
+
specification_version: 4
|
154
|
+
summary: UI kit with ViewComponent and DaisyUI
|
155
|
+
test_files: []
|