pulse_view_components 0.3.0 → 0.4.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 +4 -4
- data/CHANGELOG.md +114 -1
- data/README.md +26 -0
- data/app/assets/builds/js/pulse_view_components.js +3 -3
- data/app/assets/builds/js/pulse_view_components.js.map +1 -1
- data/app/assets/builds/pulse_view_components.css +2 -1
- data/app/assets/stylesheets/pulse_view_components/application.tailwind.css +44 -4
- data/app/assets/stylesheets/pulse_view_components/tokens.primitives.css +68 -0
- data/app/assets/stylesheets/pulse_view_components/tokens.system.css +95 -0
- data/app/components/pulse/action_list/divider.rb +13 -4
- data/app/components/pulse/action_list/form_wrapper.rb +2 -0
- data/app/components/pulse/action_list/heading.html.slim +7 -0
- data/app/components/pulse/action_list/heading.rb +2 -0
- data/app/components/pulse/action_list/item.html.slim +6 -6
- data/app/components/pulse/action_list/item.rb +11 -9
- data/app/components/pulse/action_list.css +109 -82
- data/app/components/pulse/action_list.html.slim +11 -0
- data/app/components/pulse/action_list.rb +5 -0
- data/app/components/pulse/badge.rb +20 -16
- data/app/components/pulse/base_component.rb +25 -1
- data/app/components/pulse/blank_slate.rb +4 -2
- data/app/components/pulse/border_box/header.rb +5 -3
- data/app/components/pulse/border_box.rb +21 -17
- data/app/components/pulse/box.rb +2 -0
- data/app/components/pulse/breadcrumb_item.rb +3 -1
- data/app/components/pulse/breadcrumbs.html.slim +2 -2
- data/app/components/pulse/breadcrumbs.rb +2 -0
- data/app/components/pulse/button.rb +28 -25
- data/app/components/pulse/component.rb +2 -1
- data/app/components/pulse/conditional_wrapper.rb +2 -0
- data/app/components/pulse/content.rb +2 -0
- data/app/components/pulse/counter.css +3 -3
- data/app/components/pulse/counter.rb +4 -0
- data/app/components/pulse/flash.rb +10 -6
- data/app/components/pulse/forms/error_explanation.html.slim +3 -3
- data/app/components/pulse/forms/error_explanation.rb +30 -13
- data/app/components/pulse/forms/error_explanation.yml +4 -0
- data/app/components/pulse/icon.rb +2 -0
- data/app/components/pulse/label.rb +5 -3
- data/app/components/pulse/layout.css +53 -52
- data/app/components/pulse/layout.rb +14 -6
- data/app/components/pulse/link.rb +10 -8
- data/app/components/pulse/modal.html.slim +20 -20
- data/app/components/pulse/modal.rb +10 -8
- data/app/components/pulse/modal_controller.js +3 -3
- data/app/components/pulse/nav_link.html.slim +7 -7
- data/app/components/pulse/nav_link.rb +4 -2
- data/app/components/pulse/nav_list/heading.rb +3 -1
- data/app/components/pulse/nav_list/item.html.slim +8 -0
- data/app/components/pulse/nav_list/item.rb +2 -2
- data/app/components/pulse/nav_list.rb +5 -0
- data/app/components/pulse/popover.html.slim +1 -1
- data/app/components/pulse/popover.rb +65 -26
- data/app/components/pulse/progress_bar.html.slim +2 -2
- data/app/components/pulse/progress_bar.rb +5 -3
- data/app/components/pulse/table/cell.html.slim +2 -2
- data/app/components/pulse/table/cell.rb +14 -10
- data/app/components/pulse/table/column.rb +2 -0
- data/app/components/pulse/table.html.slim +3 -3
- data/app/components/pulse/table.rb +19 -16
- data/app/components/pulse/text.rb +26 -24
- data/app/components/pulse/toast.html.slim +8 -8
- data/app/components/pulse/toast.rb +25 -23
- data/app/lib/pulse/status.rb +48 -0
- data/lib/pulse/view_components/engine.rb +4 -0
- data/lib/pulse/view_components/version.rb +2 -2
- data/previews/foundations/colors_preview/palettes.html.slim +12 -0
- data/previews/foundations/colors_preview/semantic.html.slim +16 -0
- data/previews/foundations/colors_preview.rb +55 -0
- data/previews/pulse/action_list_preview.rb +77 -0
- data/previews/pulse/border_box_preview.rb +1 -1
- data/previews/pulse/counter_preview.rb +1 -1
- data/previews/pulse/flash_preview.rb +1 -1
- data/previews/pulse/forms/error_explanation_preview.rb +49 -0
- data/previews/pulse/layout_preview.rb +5 -5
- data/previews/pulse/nav_list_preview.rb +1 -1
- data/previews/pulse/popover_preview.rb +48 -22
- data/previews/pulse/progress_bar_preview.rb +1 -1
- data/previews/pulse/table_preview.rb +6 -6
- metadata +53 -7
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Pulse
|
|
4
|
+
# @label ActionList (alpha)
|
|
5
|
+
class ActionListPreview < ViewComponent::Preview
|
|
6
|
+
# @label Playground
|
|
7
|
+
#
|
|
8
|
+
# @param title text
|
|
9
|
+
# @param subtitle text
|
|
10
|
+
# @param heading_level select [1, 2, 3, 4, 5, 6]
|
|
11
|
+
# @param show_dividers toggle
|
|
12
|
+
def default(title: 'Account', subtitle: nil, heading_level: 3,
|
|
13
|
+
show_dividers: false)
|
|
14
|
+
render(Pulse::ActionList.new(show_dividers:)) do |list|
|
|
15
|
+
list.with_heading(title:, subtitle: subtitle.presence,
|
|
16
|
+
heading_level: heading_level.to_i)
|
|
17
|
+
list.with_item(label: 'Profile', href: '#')
|
|
18
|
+
list.with_item(label: 'Notifications', href: '#')
|
|
19
|
+
list.with_item(label: 'Security', href: '#')
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
# @label Leading visuals
|
|
24
|
+
def leading_visuals
|
|
25
|
+
render(Pulse::ActionList.new) do |list|
|
|
26
|
+
list.with_item(label: 'Profile', href: '#') do |item|
|
|
27
|
+
item.with_leading_visual_icon(icon: :person)
|
|
28
|
+
end
|
|
29
|
+
list.with_item(label: 'Notifications', href: '#') do |item|
|
|
30
|
+
item.with_leading_visual_icon(icon: :bell)
|
|
31
|
+
end
|
|
32
|
+
list.with_item(label: 'Security', href: '#') do |item|
|
|
33
|
+
item.with_leading_visual_icon(icon: :key)
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
# @label Trailing visuals
|
|
39
|
+
def trailing_visuals
|
|
40
|
+
render(Pulse::ActionList.new) do |list|
|
|
41
|
+
list.with_item(label: 'Members', href: '#') do |item|
|
|
42
|
+
item.with_trailing_visual_counter(count: 12)
|
|
43
|
+
end
|
|
44
|
+
list.with_item(label: 'Starred', href: '#') do |item|
|
|
45
|
+
item.with_trailing_visual_icon(icon: :star)
|
|
46
|
+
end
|
|
47
|
+
list.with_item(label: 'Search', href: '#') do |item|
|
|
48
|
+
item.with_trailing_visual_text('⌘K')
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
# @label Descriptions
|
|
54
|
+
def descriptions
|
|
55
|
+
render(Pulse::ActionList.new) do |list|
|
|
56
|
+
list.with_item(label: 'Edit', href: '#') do |item|
|
|
57
|
+
item.with_leading_visual_icon(icon: :pencil)
|
|
58
|
+
item.with_description { 'Change the name and details' }
|
|
59
|
+
end
|
|
60
|
+
list.with_item(label: 'Archive', href: '#') do |item|
|
|
61
|
+
item.with_leading_visual_icon(icon: :archive)
|
|
62
|
+
item.with_description { 'Hide from the main list' }
|
|
63
|
+
end
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
# @label Dividers
|
|
68
|
+
def dividers
|
|
69
|
+
render(Pulse::ActionList.new) do |list|
|
|
70
|
+
list.with_item(label: 'Profile', href: '#')
|
|
71
|
+
list.with_item(label: 'Notifications', href: '#')
|
|
72
|
+
list.with_divider
|
|
73
|
+
list.with_item(label: 'Sign out', href: '#')
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
end
|
|
77
|
+
end
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Pulse
|
|
4
|
+
module Forms
|
|
5
|
+
# @label ErrorExplanation
|
|
6
|
+
class ErrorExplanationPreview < ViewComponent::Preview
|
|
7
|
+
# Previews ship in the gem, so they can't use a host app model.
|
|
8
|
+
class SampleRecord
|
|
9
|
+
include ActiveModel::Model
|
|
10
|
+
|
|
11
|
+
attr_accessor :title, :description
|
|
12
|
+
|
|
13
|
+
validates :title, presence: true
|
|
14
|
+
validates :description, length: { minimum: 20 }
|
|
15
|
+
|
|
16
|
+
def self.model_name
|
|
17
|
+
ActiveModel::Name.new(self, nil, 'Project')
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
# @label Playground
|
|
22
|
+
#
|
|
23
|
+
# The component renders nothing once both fields are valid.
|
|
24
|
+
#
|
|
25
|
+
# @param title text
|
|
26
|
+
# @param description text
|
|
27
|
+
def default(title: '', description: 'Too short')
|
|
28
|
+
render(Pulse::Forms::ErrorExplanation.new(
|
|
29
|
+
resource: invalid_record(title:, description:)
|
|
30
|
+
))
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
# @label Single error
|
|
34
|
+
def single_error
|
|
35
|
+
render(Pulse::Forms::ErrorExplanation.new(
|
|
36
|
+
resource: invalid_record(
|
|
37
|
+
title: '', description: 'A description that is long enough'
|
|
38
|
+
)
|
|
39
|
+
))
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
private
|
|
43
|
+
|
|
44
|
+
def invalid_record(**attributes)
|
|
45
|
+
SampleRecord.new(**attributes).tap(&:validate)
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
end
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
3
|
module Pulse
|
|
4
|
-
# @label Layout
|
|
4
|
+
# @label Layout (beta)
|
|
5
5
|
class LayoutPreview < ViewComponent::Preview
|
|
6
6
|
# @label Playground
|
|
7
7
|
# @param first_in_source [Symbol] select [sidebar, main]
|
|
@@ -10,10 +10,10 @@ module Pulse
|
|
|
10
10
|
render(
|
|
11
11
|
Pulse::Layout.new(gutter:, first_in_source:)
|
|
12
12
|
) do |component|
|
|
13
|
-
component.with_main(classes: 'pulse
|
|
13
|
+
component.with_main(classes: 'pulse:bg-blue-50') do
|
|
14
14
|
'Main content'
|
|
15
15
|
end
|
|
16
|
-
component.with_sidebar(classes: 'pulse
|
|
16
|
+
component.with_sidebar(classes: 'pulse:bg-neutral-50') do
|
|
17
17
|
'Sidebar content'
|
|
18
18
|
end
|
|
19
19
|
end
|
|
@@ -22,10 +22,10 @@ module Pulse
|
|
|
22
22
|
# @label Default
|
|
23
23
|
def default
|
|
24
24
|
render(Pulse::Layout.new) do |component|
|
|
25
|
-
component.with_main(classes: 'pulse
|
|
25
|
+
component.with_main(classes: 'pulse:bg-blue-50') do
|
|
26
26
|
'Main content'
|
|
27
27
|
end
|
|
28
|
-
component.with_sidebar(classes: 'pulse
|
|
28
|
+
component.with_sidebar(classes: 'pulse:bg-neutral-50') do
|
|
29
29
|
'Sidebar content'
|
|
30
30
|
end
|
|
31
31
|
end
|
|
@@ -5,7 +5,7 @@ module Pulse
|
|
|
5
5
|
class PopoverPreview < ViewComponent::Preview
|
|
6
6
|
# @label Playground
|
|
7
7
|
#
|
|
8
|
-
# @param caret [Symbol] select
|
|
8
|
+
# @param caret [Symbol] select {{ Pulse::Popover::CARET_OPTIONS }}
|
|
9
9
|
def playground(caret: :top)
|
|
10
10
|
render Pulse::Popover.new do |component|
|
|
11
11
|
component.with_heading do
|
|
@@ -19,7 +19,7 @@ module Pulse
|
|
|
19
19
|
|
|
20
20
|
# @label Default
|
|
21
21
|
#
|
|
22
|
-
# @param caret [Symbol] select
|
|
22
|
+
# @param caret [Symbol] select {{ Pulse::Popover::CARET_OPTIONS }}
|
|
23
23
|
def default(caret: :top)
|
|
24
24
|
render Pulse::Popover.new do |component|
|
|
25
25
|
component.with_heading do
|
|
@@ -41,37 +41,63 @@ module Pulse
|
|
|
41
41
|
end
|
|
42
42
|
|
|
43
43
|
# @!group Directions
|
|
44
|
-
def
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
44
|
+
def top
|
|
45
|
+
popover_with_caret(:top)
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
def top_left
|
|
49
|
+
popover_with_caret(:top_left)
|
|
50
50
|
end
|
|
51
51
|
|
|
52
52
|
def top_right
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
53
|
+
popover_with_caret(:top_right)
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
def bottom
|
|
57
|
+
popover_with_caret(:bottom)
|
|
58
58
|
end
|
|
59
59
|
|
|
60
60
|
def bottom_left
|
|
61
|
-
|
|
62
|
-
component.with_body(caret: :bottom_left) do
|
|
63
|
-
'This is the Popover body.'
|
|
64
|
-
end
|
|
65
|
-
end
|
|
61
|
+
popover_with_caret(:bottom_left)
|
|
66
62
|
end
|
|
67
63
|
|
|
68
|
-
def
|
|
69
|
-
|
|
70
|
-
|
|
64
|
+
def bottom_right
|
|
65
|
+
popover_with_caret(:bottom_right)
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
def left
|
|
69
|
+
popover_with_caret(:left)
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
def left_top
|
|
73
|
+
popover_with_caret(:left_top)
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
def left_bottom
|
|
77
|
+
popover_with_caret(:left_bottom)
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
def right
|
|
81
|
+
popover_with_caret(:right)
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
def right_top
|
|
85
|
+
popover_with_caret(:right_top)
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
def right_bottom
|
|
89
|
+
popover_with_caret(:right_bottom)
|
|
90
|
+
end
|
|
91
|
+
# @!endgroup
|
|
92
|
+
|
|
93
|
+
private
|
|
94
|
+
|
|
95
|
+
def popover_with_caret(caret)
|
|
96
|
+
render Pulse::Popover.new(classes: 'pulse:m-8') do |component|
|
|
97
|
+
component.with_body(caret:) do
|
|
71
98
|
'This is the Popover body.'
|
|
72
99
|
end
|
|
73
100
|
end
|
|
74
101
|
end
|
|
75
|
-
# @!endgroup
|
|
76
102
|
end
|
|
77
103
|
end
|
|
@@ -6,7 +6,7 @@ module Pulse
|
|
|
6
6
|
# @label Playground
|
|
7
7
|
#
|
|
8
8
|
# @display wrapper true
|
|
9
|
-
# @display wrapper_classes 'flex justify-center items-center p-4 bg-
|
|
9
|
+
# @display wrapper_classes 'flex justify-center items-center p-4 bg-neutral-50 h-10 w-24'
|
|
10
10
|
# @param percentage number
|
|
11
11
|
# @param title text
|
|
12
12
|
def playground(percentage: 50, title: nil)
|
|
@@ -74,7 +74,7 @@ module Pulse
|
|
|
74
74
|
end
|
|
75
75
|
|
|
76
76
|
def custom_table_classes
|
|
77
|
-
render(Pulse::Table.new(COLLECTION, classes: 'pulse
|
|
77
|
+
render(Pulse::Table.new(COLLECTION, classes: 'pulse:mt-4')) do |c|
|
|
78
78
|
c.with_column(title: 'Column 1') do |row|
|
|
79
79
|
row[:column1]
|
|
80
80
|
end
|
|
@@ -89,7 +89,7 @@ module Pulse
|
|
|
89
89
|
|
|
90
90
|
def custom_head_classes
|
|
91
91
|
render(
|
|
92
|
-
Pulse::Table.new(COLLECTION, head_classes: 'pulse
|
|
92
|
+
Pulse::Table.new(COLLECTION, head_classes: 'pulse:bg-secondary-100')
|
|
93
93
|
) do |c|
|
|
94
94
|
c.with_column(title: 'Column 1') do |row|
|
|
95
95
|
row[:column1]
|
|
@@ -105,7 +105,7 @@ module Pulse
|
|
|
105
105
|
|
|
106
106
|
def custom_row_classes
|
|
107
107
|
render(
|
|
108
|
-
Pulse::Table.new(COLLECTION, row_classes: 'pulse
|
|
108
|
+
Pulse::Table.new(COLLECTION, row_classes: 'pulse:bg-secondary-50')
|
|
109
109
|
) do |c|
|
|
110
110
|
c.with_column(title: 'Column 1') do |row|
|
|
111
111
|
row[:column1]
|
|
@@ -124,13 +124,13 @@ module Pulse
|
|
|
124
124
|
Pulse::Table.new(COLLECTION)
|
|
125
125
|
) do |c|
|
|
126
126
|
c.with_column(title: 'Column 1',
|
|
127
|
-
classes: 'pulse
|
|
127
|
+
classes: 'pulse:bg-secondary-50') do |row|
|
|
128
128
|
row[:column1]
|
|
129
129
|
end
|
|
130
|
-
c.with_column(title: 'Column 2', classes: 'pulse
|
|
130
|
+
c.with_column(title: 'Column 2', classes: 'pulse:text-primary') do |row|
|
|
131
131
|
row[:column2]
|
|
132
132
|
end
|
|
133
|
-
c.with_column(classes: 'pulse
|
|
133
|
+
c.with_column(classes: 'pulse:font-bold') do |row|
|
|
134
134
|
row[:column3]
|
|
135
135
|
end
|
|
136
136
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: pulse_view_components
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.4.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Nick Coyne
|
|
@@ -44,6 +44,9 @@ dependencies:
|
|
|
44
44
|
- - ">="
|
|
45
45
|
- !ruby/object:Gem::Version
|
|
46
46
|
version: 8.1.0
|
|
47
|
+
- - "<"
|
|
48
|
+
- !ruby/object:Gem::Version
|
|
49
|
+
version: '9'
|
|
47
50
|
type: :runtime
|
|
48
51
|
prerelease: false
|
|
49
52
|
version_requirements: !ruby/object:Gem::Requirement
|
|
@@ -51,26 +54,57 @@ dependencies:
|
|
|
51
54
|
- - ">="
|
|
52
55
|
- !ruby/object:Gem::Version
|
|
53
56
|
version: 8.1.0
|
|
57
|
+
- - "<"
|
|
58
|
+
- !ruby/object:Gem::Version
|
|
59
|
+
version: '9'
|
|
54
60
|
- !ruby/object:Gem::Dependency
|
|
55
|
-
name:
|
|
61
|
+
name: slim
|
|
56
62
|
requirement: !ruby/object:Gem::Requirement
|
|
57
63
|
requirements:
|
|
58
64
|
- - ">="
|
|
59
65
|
- !ruby/object:Gem::Version
|
|
60
|
-
version: 0
|
|
66
|
+
version: '5.0'
|
|
61
67
|
- - "<"
|
|
62
68
|
- !ruby/object:Gem::Version
|
|
63
|
-
version:
|
|
69
|
+
version: '6'
|
|
64
70
|
type: :runtime
|
|
65
71
|
prerelease: false
|
|
66
72
|
version_requirements: !ruby/object:Gem::Requirement
|
|
67
73
|
requirements:
|
|
68
74
|
- - ">="
|
|
69
75
|
- !ruby/object:Gem::Version
|
|
70
|
-
version: 0
|
|
76
|
+
version: '5.0'
|
|
71
77
|
- - "<"
|
|
72
78
|
- !ruby/object:Gem::Version
|
|
73
|
-
version:
|
|
79
|
+
version: '6'
|
|
80
|
+
- !ruby/object:Gem::Dependency
|
|
81
|
+
name: tailwind_merge
|
|
82
|
+
requirement: !ruby/object:Gem::Requirement
|
|
83
|
+
requirements:
|
|
84
|
+
- - "~>"
|
|
85
|
+
- !ruby/object:Gem::Version
|
|
86
|
+
version: '1.5'
|
|
87
|
+
type: :runtime
|
|
88
|
+
prerelease: false
|
|
89
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
90
|
+
requirements:
|
|
91
|
+
- - "~>"
|
|
92
|
+
- !ruby/object:Gem::Version
|
|
93
|
+
version: '1.5'
|
|
94
|
+
- !ruby/object:Gem::Dependency
|
|
95
|
+
name: turbo-rails
|
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
|
97
|
+
requirements:
|
|
98
|
+
- - ">="
|
|
99
|
+
- !ruby/object:Gem::Version
|
|
100
|
+
version: '2.0'
|
|
101
|
+
type: :runtime
|
|
102
|
+
prerelease: false
|
|
103
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
104
|
+
requirements:
|
|
105
|
+
- - ">="
|
|
106
|
+
- !ruby/object:Gem::Version
|
|
107
|
+
version: '2.0'
|
|
74
108
|
- !ruby/object:Gem::Dependency
|
|
75
109
|
name: view_component
|
|
76
110
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -220,11 +254,15 @@ files:
|
|
|
220
254
|
- app/assets/images/pulse_view_components/icons/zap.svg
|
|
221
255
|
- app/assets/javascripts/pulse_view_components.js
|
|
222
256
|
- app/assets/stylesheets/pulse_view_components/application.tailwind.css
|
|
257
|
+
- app/assets/stylesheets/pulse_view_components/tokens.primitives.css
|
|
258
|
+
- app/assets/stylesheets/pulse_view_components/tokens.system.css
|
|
223
259
|
- app/components/pulse/action_list.css
|
|
260
|
+
- app/components/pulse/action_list.html.slim
|
|
224
261
|
- app/components/pulse/action_list.rb
|
|
225
262
|
- app/components/pulse/action_list/divider.rb
|
|
226
263
|
- app/components/pulse/action_list/form_wrapper.html.slim
|
|
227
264
|
- app/components/pulse/action_list/form_wrapper.rb
|
|
265
|
+
- app/components/pulse/action_list/heading.html.slim
|
|
228
266
|
- app/components/pulse/action_list/heading.rb
|
|
229
267
|
- app/components/pulse/action_list/item.html.slim
|
|
230
268
|
- app/components/pulse/action_list/item.rb
|
|
@@ -251,6 +289,7 @@ files:
|
|
|
251
289
|
- app/components/pulse/flash.rb
|
|
252
290
|
- app/components/pulse/forms/error_explanation.html.slim
|
|
253
291
|
- app/components/pulse/forms/error_explanation.rb
|
|
292
|
+
- app/components/pulse/forms/error_explanation.yml
|
|
254
293
|
- app/components/pulse/icon.rb
|
|
255
294
|
- app/components/pulse/label.html.slim
|
|
256
295
|
- app/components/pulse/label.rb
|
|
@@ -270,6 +309,7 @@ files:
|
|
|
270
309
|
- app/components/pulse/nav_list/group.html.slim
|
|
271
310
|
- app/components/pulse/nav_list/group.rb
|
|
272
311
|
- app/components/pulse/nav_list/heading.rb
|
|
312
|
+
- app/components/pulse/nav_list/item.html.slim
|
|
273
313
|
- app/components/pulse/nav_list/item.rb
|
|
274
314
|
- app/components/pulse/popover.html.slim
|
|
275
315
|
- app/components/pulse/popover.rb
|
|
@@ -291,12 +331,17 @@ files:
|
|
|
291
331
|
- app/javascript/pulse_view_components/application.js
|
|
292
332
|
- app/lib/pulse/attributes_helper.rb
|
|
293
333
|
- app/lib/pulse/fetch_or_fallback_helper.rb
|
|
334
|
+
- app/lib/pulse/status.rb
|
|
294
335
|
- app/lib/pulse/svg_helper.rb
|
|
295
336
|
- lib/pulse/view_components.rb
|
|
296
337
|
- lib/pulse/view_components/engine.rb
|
|
297
338
|
- lib/pulse/view_components/version.rb
|
|
298
339
|
- lib/pulse_view_components.rb
|
|
299
340
|
- lib/tasks/pulse_view_components_tasks.rake
|
|
341
|
+
- previews/foundations/colors_preview.rb
|
|
342
|
+
- previews/foundations/colors_preview/palettes.html.slim
|
|
343
|
+
- previews/foundations/colors_preview/semantic.html.slim
|
|
344
|
+
- previews/pulse/action_list_preview.rb
|
|
300
345
|
- previews/pulse/badge_preview.rb
|
|
301
346
|
- previews/pulse/blank_slate_preview.rb
|
|
302
347
|
- previews/pulse/border_box_preview.rb
|
|
@@ -304,6 +349,7 @@ files:
|
|
|
304
349
|
- previews/pulse/button_preview.rb
|
|
305
350
|
- previews/pulse/counter_preview.rb
|
|
306
351
|
- previews/pulse/flash_preview.rb
|
|
352
|
+
- previews/pulse/forms/error_explanation_preview.rb
|
|
307
353
|
- previews/pulse/icon_preview.rb
|
|
308
354
|
- previews/pulse/label_preview.rb
|
|
309
355
|
- previews/pulse/layout_preview.rb
|
|
@@ -338,7 +384,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
338
384
|
- !ruby/object:Gem::Version
|
|
339
385
|
version: '0'
|
|
340
386
|
requirements: []
|
|
341
|
-
rubygems_version:
|
|
387
|
+
rubygems_version: 3.6.9
|
|
342
388
|
specification_version: 4
|
|
343
389
|
summary: ViewComponents for the 100Years Pulse Design System
|
|
344
390
|
test_files: []
|