ariadne_view_components 0.0.81 → 0.0.83
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +12 -0
- data/app/assets/javascripts/ariadne_view_components.js +14 -14
- data/app/assets/javascripts/ariadne_view_components.js.br +0 -0
- data/app/assets/javascripts/ariadne_view_components.js.gz +0 -0
- data/app/assets/javascripts/ariadne_view_components.js.map +1 -1
- data/app/assets/stylesheets/ariadne_view_components.css +1 -1
- data/app/assets/stylesheets/ariadne_view_components.css.br +0 -0
- data/app/assets/stylesheets/ariadne_view_components.css.gz +0 -0
- data/app/components/ariadne/behaviors/captionable.rb +1 -1
- data/app/components/ariadne/behaviors/tooltipable.rb +1 -1
- data/app/components/ariadne/form/group/component.html.erb +0 -2
- data/app/components/ariadne/form/group/component.rb +4 -1
- data/app/components/ariadne/form/radio_button/component.html.erb +1 -1
- data/app/components/ariadne/form/radio_button/component.rb +1 -1
- data/app/components/ariadne/form/select/component.html.erb +10 -0
- data/app/components/ariadne/form/select/component.rb +81 -0
- data/app/components/ariadne/ui/accordion/component.html.erb +7 -0
- data/app/components/ariadne/ui/accordion/component.rb +27 -0
- data/app/components/ariadne/ui/accordion/component.ts +69 -0
- data/app/components/ariadne/ui/accordion/item/component.html.erb +15 -0
- data/app/components/ariadne/ui/accordion/item/component.rb +54 -0
- data/app/components/ariadne/ui/badge/component.html.erb +1 -1
- data/app/components/ariadne/ui/badge/component.rb +0 -1
- data/app/components/ariadne/ui/button/component.html.erb +2 -1
- data/app/components/ariadne/ui/button/component.rb +48 -10
- data/app/components/ariadne/ui/card/component.html.erb +12 -2
- data/app/components/ariadne/ui/card/component.rb +21 -2
- data/app/components/ariadne/ui/card/header/component.html.erb +3 -4
- data/app/components/ariadne/ui/card/header/component.rb +8 -5
- data/app/components/ariadne/ui/combobox/component.rb +4 -2
- data/app/components/ariadne/ui/combobox/component.ts +27 -11
- data/app/components/ariadne/ui/dialog/component.rb +18 -2
- data/app/components/ariadne/ui/flash/component.html.erb +11 -11
- data/app/components/ariadne/ui/flash/component.rb +30 -12
- data/app/components/ariadne/ui/link/component.rb +32 -7
- data/app/components/ariadne/ui/list/component.html.erb +8 -1
- data/app/components/ariadne/ui/list/component.rb +17 -2
- data/app/components/ariadne/ui/popover/component.rb +1 -1
- data/app/components/ariadne/ui/typography/component.rb +5 -0
- data/app/frontend/controllers/form_validity_controller.ts +32 -0
- data/app/lib/ariadne/view_helper.rb +6 -0
- data/lib/ariadne/forms/dsl/badge.rb +2 -2
- data/lib/ariadne/forms/dsl/button_input.rb +2 -1
- data/lib/ariadne/forms/dsl/clipboard_copy_button.rb +34 -0
- data/lib/ariadne/forms/dsl/form_object.rb +1 -1
- data/lib/ariadne/forms/dsl/input.rb +1 -1
- data/lib/ariadne/forms/dsl/input_methods.rb +4 -0
- data/lib/ariadne/forms/dsl/select_input.rb +50 -0
- data/lib/ariadne/view_components/version.rb +1 -1
- metadata +12 -2
@@ -0,0 +1,34 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Ariadne
|
4
|
+
module Forms
|
5
|
+
module Dsl
|
6
|
+
# :nodoc:
|
7
|
+
class ClipboardCopyButton
|
8
|
+
include InputMethods
|
9
|
+
|
10
|
+
attr_reader :builder, :form, :text, :options
|
11
|
+
|
12
|
+
def initialize(builder:, form:, **options)
|
13
|
+
@builder = builder
|
14
|
+
@form = form
|
15
|
+
@options = options
|
16
|
+
|
17
|
+
yield(self) if block_given?
|
18
|
+
end
|
19
|
+
|
20
|
+
def to_component
|
21
|
+
Ariadne::UI::ClipboardCopy::Component.new(text: @text, **@options)
|
22
|
+
end
|
23
|
+
|
24
|
+
def type
|
25
|
+
:clipboard_copy
|
26
|
+
end
|
27
|
+
|
28
|
+
def input?
|
29
|
+
false
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -108,7 +108,7 @@ module Ariadne
|
|
108
108
|
|
109
109
|
@options[:invalid] = "true" if invalid?
|
110
110
|
|
111
|
-
@base_id = Ariadne.generate_id
|
111
|
+
@base_id = ::Ariadne::ViewHelper.generate_id
|
112
112
|
|
113
113
|
@ids = {}.tap do |id_map|
|
114
114
|
id_map[:validation] = "validation-#{@base_id}" if supports_validation?
|
@@ -130,6 +130,10 @@ module Ariadne
|
|
130
130
|
add_input(ButtonInput.new(builder: builder, form: form, **options, &block))
|
131
131
|
end
|
132
132
|
|
133
|
+
def clipboard_copy_button(**options, &block)
|
134
|
+
add_input(ClipboardCopyButton.new(builder: @builder, form: form, **options, &block))
|
135
|
+
end
|
136
|
+
|
133
137
|
# END button input methods
|
134
138
|
|
135
139
|
# @private
|
@@ -0,0 +1,50 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Primer
|
4
|
+
module Forms
|
5
|
+
module Dsl
|
6
|
+
# :nodoc:
|
7
|
+
class SelectInput < Input
|
8
|
+
SELECT_ARGUMENTS = [:multiple, :include_blank, :include_hidden, :prompt].freeze
|
9
|
+
|
10
|
+
attr_reader :name, :label, :options, :select_arguments
|
11
|
+
|
12
|
+
def initialize(name:, label:, **options)
|
13
|
+
@name = name
|
14
|
+
@label = label
|
15
|
+
@options = []
|
16
|
+
|
17
|
+
@select_arguments = {}.tap do |select_args|
|
18
|
+
SELECT_ARGUMENTS.each do |select_arg|
|
19
|
+
select_args[select_arg] = options.delete(select_arg)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
super(**options)
|
24
|
+
|
25
|
+
yield(self) if block_given?
|
26
|
+
end
|
27
|
+
|
28
|
+
def multiple?
|
29
|
+
@select_arguments.fetch(:multiple, false)
|
30
|
+
end
|
31
|
+
|
32
|
+
def to_component
|
33
|
+
Ariadne::Form::Select::Component.new(name:, label:, **@options)
|
34
|
+
end
|
35
|
+
|
36
|
+
# :nocov:
|
37
|
+
def type
|
38
|
+
:select_list
|
39
|
+
end
|
40
|
+
# :nocov:
|
41
|
+
|
42
|
+
# :nocov:
|
43
|
+
def focusable?
|
44
|
+
true
|
45
|
+
end
|
46
|
+
# :nocov:
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ariadne_view_components
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.83
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Garen J. Torikian
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-07-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: tailwind_merge
|
@@ -151,6 +151,8 @@ files:
|
|
151
151
|
- app/components/ariadne/form/radio_button/component.rb
|
152
152
|
- app/components/ariadne/form/radio_button_group/component.html.erb
|
153
153
|
- app/components/ariadne/form/radio_button_group/component.rb
|
154
|
+
- app/components/ariadne/form/select/component.html.erb
|
155
|
+
- app/components/ariadne/form/select/component.rb
|
154
156
|
- app/components/ariadne/form/separator/component.html.erb
|
155
157
|
- app/components/ariadne/form/separator/component.rb
|
156
158
|
- app/components/ariadne/form/text_field/component.html.erb
|
@@ -174,6 +176,11 @@ files:
|
|
174
176
|
- app/components/ariadne/turbo/frame/component.rb
|
175
177
|
- app/components/ariadne/turbo/stream_action/component.html.erb
|
176
178
|
- app/components/ariadne/turbo/stream_action/component.rb
|
179
|
+
- app/components/ariadne/ui/accordion/component.html.erb
|
180
|
+
- app/components/ariadne/ui/accordion/component.rb
|
181
|
+
- app/components/ariadne/ui/accordion/component.ts
|
182
|
+
- app/components/ariadne/ui/accordion/item/component.html.erb
|
183
|
+
- app/components/ariadne/ui/accordion/item/component.rb
|
177
184
|
- app/components/ariadne/ui/badge/component.html.erb
|
178
185
|
- app/components/ariadne/ui/badge/component.rb
|
179
186
|
- app/components/ariadne/ui/blankslate/component.html.erb
|
@@ -234,6 +241,7 @@ files:
|
|
234
241
|
- app/frontend/ariadne/stimulus_app.ts
|
235
242
|
- app/frontend/ariadne/theme.ts
|
236
243
|
- app/frontend/controllers/form_autosubmit_controller.ts
|
244
|
+
- app/frontend/controllers/form_validity_controller.ts
|
237
245
|
- app/frontend/entrypoints/application.ts
|
238
246
|
- app/frontend/stylesheets/ariadne_view_components.css
|
239
247
|
- app/frontend/stylesheets/scrollbar.css
|
@@ -255,6 +263,7 @@ files:
|
|
255
263
|
- lib/ariadne/forms/builder.rb
|
256
264
|
- lib/ariadne/forms/dsl/badge.rb
|
257
265
|
- lib/ariadne/forms/dsl/button_input.rb
|
266
|
+
- lib/ariadne/forms/dsl/clipboard_copy_button.rb
|
258
267
|
- lib/ariadne/forms/dsl/form_object.rb
|
259
268
|
- lib/ariadne/forms/dsl/form_reference_input.rb
|
260
269
|
- lib/ariadne/forms/dsl/hidden_input.rb
|
@@ -263,6 +272,7 @@ files:
|
|
263
272
|
- lib/ariadne/forms/dsl/input_methods.rb
|
264
273
|
- lib/ariadne/forms/dsl/radio_button_group_input.rb
|
265
274
|
- lib/ariadne/forms/dsl/radio_button_input.rb
|
275
|
+
- lib/ariadne/forms/dsl/select_input.rb
|
266
276
|
- lib/ariadne/forms/dsl/submit_button_input.rb
|
267
277
|
- lib/ariadne/forms/dsl/text_field_input.rb
|
268
278
|
- lib/ariadne/forms/utils.rb
|