playbook_ui 2.9.6 → 2.9.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/pb_kits/playbook/pb_avatar/_avatar.html.erb +1 -1
- data/app/pb_kits/playbook/pb_avatar/avatar.rb +1 -1
- data/app/pb_kits/playbook/pb_avatar/docs/_avatar_default.html.erb +5 -5
- data/app/pb_kits/playbook/pb_avatar/docs/_avatar_status.html.erb +4 -4
- data/app/pb_kits/playbook/pb_button/_button.html.erb +3 -21
- data/app/pb_kits/playbook/pb_button/button.rb +47 -124
- data/app/pb_kits/playbook/pb_caption/caption.rb +1 -1
- data/app/pb_kits/playbook/pb_contact/_contact.html.erb +1 -1
- data/app/pb_kits/playbook/pb_contact/_contact.jsx +18 -8
- data/app/pb_kits/playbook/pb_contact/contact.rb +11 -2
- data/app/pb_kits/playbook/pb_contact/docs/_contact_default.html.erb +4 -1
- data/app/pb_kits/playbook/pb_contact/docs/_contact_default.jsx +3 -0
- data/app/pb_kits/playbook/pb_dashboard_value/_dashboard_value.html.erb +12 -4
- data/app/pb_kits/playbook/pb_dashboard_value/_dashboard_value.jsx +2 -4
- data/app/pb_kits/playbook/pb_dashboard_value/dashboard_value.rb +13 -70
- data/app/pb_kits/playbook/pb_dashboard_value/docs/_dashboard_value_align.html.erb +6 -6
- data/app/pb_kits/playbook/pb_dashboard_value/docs/_dashboard_value_align.jsx +6 -6
- data/app/pb_kits/playbook/pb_dashboard_value/docs/_dashboard_value_default.html.erb +6 -6
- data/app/pb_kits/playbook/pb_dashboard_value/docs/_dashboard_value_default.jsx +6 -6
- data/app/pb_kits/playbook/pb_date_range_inline/_date_range_inline.html.erb +3 -3
- data/app/pb_kits/playbook/pb_date_range_inline/date_range_inline.rb +12 -33
- data/app/pb_kits/playbook/pb_home_address_street/_home_address_street.html.erb +4 -2
- data/app/pb_kits/playbook/pb_home_address_street/docs/_home_address_street_modified.html.erb +0 -1
- data/app/pb_kits/playbook/pb_layout/_body.html.erb +2 -2
- data/app/pb_kits/playbook/pb_layout/_layout.html.erb +2 -2
- data/app/pb_kits/playbook/pb_layout/_sidebar.html.erb +2 -2
- data/app/pb_kits/playbook/pb_layout/body.rb +5 -29
- data/app/pb_kits/playbook/pb_layout/layout.rb +31 -76
- data/app/pb_kits/playbook/pb_layout/sidebar.rb +5 -29
- data/app/pb_kits/playbook/pb_list/_item.html.erb +1 -1
- data/app/pb_kits/playbook/pb_list/_list.html.erb +3 -4
- data/app/pb_kits/playbook/pb_list/item.rb +5 -29
- data/app/pb_kits/playbook/pb_list/list.rb +41 -90
- data/app/pb_kits/playbook/pb_message/_message.html.erb +18 -5
- data/app/pb_kits/playbook/pb_message/docs/_message_default.html.erb +10 -20
- data/app/pb_kits/playbook/pb_message/message.rb +15 -72
- data/app/pb_kits/playbook/pb_person_contact/_person_contact.html.erb +1 -0
- data/app/pb_kits/playbook/pb_person_contact/_person_contact.jsx +2 -1
- data/app/pb_kits/playbook/pb_person_contact/docs/_person_contact_default.html.erb +4 -1
- data/app/pb_kits/playbook/pb_person_contact/docs/_person_contact_default.jsx +4 -1
- data/app/pb_kits/playbook/pb_person_contact/docs/_person_contact_single_person.html.erb +4 -1
- data/app/pb_kits/playbook/pb_person_contact/docs/_person_contact_single_person.jsx +4 -1
- data/app/pb_kits/playbook/pb_section_separator/_section_separator.html.erb +2 -2
- data/app/pb_kits/playbook/pb_section_separator/section_separator.rb +6 -35
- data/app/pb_kits/playbook/pb_star_rating/_star_rating.html.erb +11 -11
- data/app/pb_kits/playbook/pb_star_rating/_star_rating.scss +5 -5
- data/app/pb_kits/playbook/pb_star_rating/star_rating.rb +9 -51
- data/app/pb_kits/playbook/pb_stat_change/_stat_change.html.erb +5 -2
- data/app/pb_kits/playbook/pb_stat_change/_stat_change.jsx +1 -1
- data/app/pb_kits/playbook/pb_stat_change/docs/_stat_change_default.html.erb +3 -3
- data/app/pb_kits/playbook/pb_stat_change/docs/_stat_change_default.jsx +3 -3
- data/app/pb_kits/playbook/pb_stat_change/stat_change.rb +10 -60
- data/app/pb_kits/playbook/pb_timestamp/_timestamp.html.erb +2 -2
- data/app/pb_kits/playbook/pb_timestamp/timestamp.rb +6 -39
- data/app/pb_kits/playbook/pb_toggle/_toggle.jsx +1 -1
- data/app/pb_kits/playbook/pb_user/_user.html.erb +13 -4
- data/app/pb_kits/playbook/pb_user/docs/_user_default.html.erb +3 -6
- data/app/pb_kits/playbook/pb_user/docs/_user_size.html.erb +3 -6
- data/app/pb_kits/playbook/pb_user/docs/_user_vertical_size.html.erb +3 -6
- data/app/pb_kits/playbook/pb_user/user.rb +23 -95
- data/app/pb_kits/playbook/pb_user_badge/_user_badge.html.erb +1 -1
- data/app/pb_kits/playbook/pb_user_badge/user_badge.rb +13 -49
- data/app/pb_kits/playbook/pb_vertical_nav/_item.html.erb +4 -2
- data/app/pb_kits/playbook/pb_vertical_nav/_vertical_nav.html.erb +9 -5
- data/app/pb_kits/playbook/pb_vertical_nav/item.rb +10 -49
- data/app/pb_kits/playbook/pb_vertical_nav/vertical_nav.rb +7 -58
- data/app/pb_kits/playbook/props.rb +1 -0
- data/app/pb_kits/playbook/props/date.rb +11 -0
- data/lib/playbook/version.rb +1 -1
- metadata +3 -2
@@ -2,92 +2,47 @@
|
|
2
2
|
|
3
3
|
module Playbook
|
4
4
|
module PbLayout
|
5
|
-
class Layout
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
self.configured_classname = classname
|
28
|
-
self.configured_collapse = collapse
|
29
|
-
self.configured_dark = dark
|
30
|
-
self.configured_data = data
|
31
|
-
self.configured_full = full
|
32
|
-
self.configured_id = id
|
33
|
-
self.configured_position = position
|
34
|
-
self.configured_transparent = transparent
|
35
|
-
self.configured_size = size
|
36
|
-
self.block = block_given? ? block : nil
|
37
|
-
end
|
38
|
-
|
39
|
-
def position
|
40
|
-
if configured_position == default_configuration
|
41
|
-
"_left"
|
42
|
-
else
|
43
|
-
"_#{configured_position}"
|
44
|
-
end
|
45
|
-
end
|
46
|
-
|
47
|
-
def transparent
|
48
|
-
true_value(configured_transparent, "_transparent", "")
|
49
|
-
end
|
50
|
-
|
51
|
-
def size
|
52
|
-
if configured_size == default_configuration
|
53
|
-
"md"
|
54
|
-
else
|
55
|
-
configured_size
|
56
|
-
end
|
5
|
+
class Layout
|
6
|
+
include Playbook::Props
|
7
|
+
|
8
|
+
partial "pb_layout/layout"
|
9
|
+
|
10
|
+
prop :collapse, type: Playbook::Props::Enum,
|
11
|
+
values: %w[xs sm md lg xl],
|
12
|
+
default: "xs"
|
13
|
+
prop :dark, type: Playbook::Props::Boolean, default: false
|
14
|
+
prop :full, type: Playbook::Props::Boolean, default: false
|
15
|
+
prop :position, type: Playbook::Props::Enum,
|
16
|
+
values: %w[left right],
|
17
|
+
default: "left"
|
18
|
+
prop :transparent, type: Playbook::Props::Boolean, default: false
|
19
|
+
prop :size, type: Playbook::Props::Enum,
|
20
|
+
values: %w[xs sm md lg xl],
|
21
|
+
default: "md"
|
22
|
+
|
23
|
+
def classname
|
24
|
+
first_class = generate_classname("pb_layout", size, position, dark_class, transparent_class)
|
25
|
+
classname = first_class + full_class + collapse_class
|
26
|
+
[first_class, full_class, collapse_class].reject(&:empty?).join(" ")
|
57
27
|
end
|
58
28
|
|
59
|
-
|
60
|
-
if configured_collapse == default_configuration
|
61
|
-
" layout#{position}_collapse_xs"
|
62
|
-
else
|
63
|
-
" layout#{position}_collapse_#{configured_collapse}"
|
64
|
-
end
|
65
|
-
end
|
66
|
-
|
67
|
-
def full
|
68
|
-
true_value(configured_full, " full", "")
|
69
|
-
end
|
29
|
+
private
|
70
30
|
|
71
|
-
def
|
72
|
-
|
31
|
+
def dark_class
|
32
|
+
dark ? "dark" : nil
|
73
33
|
end
|
74
34
|
|
75
|
-
def
|
76
|
-
|
35
|
+
def full_class
|
36
|
+
full ? "full" : ""
|
77
37
|
end
|
78
38
|
|
79
|
-
def
|
80
|
-
"
|
39
|
+
def transparent_class
|
40
|
+
transparent ? "transparent" : nil
|
81
41
|
end
|
82
42
|
|
83
|
-
|
84
|
-
|
85
|
-
DEFAULT = Object.new
|
86
|
-
private_constant :DEFAULT
|
87
|
-
def default_configuration
|
88
|
-
DEFAULT
|
43
|
+
def collapse_class
|
44
|
+
"layout_#{position}_collapse_#{collapse}"
|
89
45
|
end
|
90
|
-
attr_accessor(*PROPS)
|
91
46
|
end
|
92
47
|
end
|
93
48
|
end
|
@@ -2,38 +2,14 @@
|
|
2
2
|
|
3
3
|
module Playbook
|
4
4
|
module PbLayout
|
5
|
-
class Sidebar
|
6
|
-
|
7
|
-
configured_data
|
8
|
-
configured_id
|
9
|
-
block].freeze
|
5
|
+
class Sidebar
|
6
|
+
include Playbook::Props
|
10
7
|
|
11
|
-
|
12
|
-
data: default_configuration,
|
13
|
-
id: default_configuration,
|
14
|
-
&block)
|
15
|
-
self.configured_classname = classname
|
16
|
-
self.configured_data = data
|
17
|
-
self.configured_id = id
|
18
|
-
self.block = block_given? ? block : nil
|
19
|
-
end
|
20
|
-
|
21
|
-
def yield(context:)
|
22
|
-
context.capture(&block)
|
23
|
-
end
|
24
|
-
|
25
|
-
def to_partial_path
|
26
|
-
"pb_layout/sidebar"
|
27
|
-
end
|
28
|
-
|
29
|
-
private
|
8
|
+
partial "pb_layout/sidebar"
|
30
9
|
|
31
|
-
|
32
|
-
|
33
|
-
def default_configuration
|
34
|
-
DEFAULT
|
10
|
+
def classname
|
11
|
+
generate_classname("layout_sidebar")
|
35
12
|
end
|
36
|
-
attr_accessor(*PROPS)
|
37
13
|
end
|
38
14
|
end
|
39
15
|
end
|
@@ -1,9 +1,8 @@
|
|
1
|
-
<%= content_tag(:div,
|
2
|
-
|
3
|
-
<%= content_tag(:"#{object.ordered}",
|
1
|
+
<%= content_tag(:div, class: object.list_classname) do %>
|
2
|
+
<%= content_tag(:"#{object.ordered_class}",
|
4
3
|
id: object.id,
|
5
4
|
data: object.data,
|
6
5
|
class: object.classname) do %>
|
7
|
-
<%= object.
|
6
|
+
<%= capture(&object.children) %>
|
8
7
|
<% end %>
|
9
8
|
<% end %>
|
@@ -2,38 +2,14 @@
|
|
2
2
|
|
3
3
|
module Playbook
|
4
4
|
module PbList
|
5
|
-
class Item
|
6
|
-
|
7
|
-
configured_data
|
8
|
-
configured_id
|
9
|
-
block].freeze
|
5
|
+
class Item
|
6
|
+
include Playbook::Props
|
10
7
|
|
11
|
-
|
12
|
-
data: default_configuration,
|
13
|
-
id: default_configuration,
|
14
|
-
&block)
|
15
|
-
self.configured_classname = classname
|
16
|
-
self.configured_data = data
|
17
|
-
self.configured_id = id
|
18
|
-
self.block = block_given? ? block : nil
|
19
|
-
end
|
20
|
-
|
21
|
-
def to_partial_path
|
22
|
-
"pb_list/item"
|
23
|
-
end
|
24
|
-
|
25
|
-
def yield(context:)
|
26
|
-
context.capture(&block)
|
27
|
-
end
|
28
|
-
|
29
|
-
private
|
8
|
+
partial "pb_list/item"
|
30
9
|
|
31
|
-
|
32
|
-
|
33
|
-
def default_configuration
|
34
|
-
DEFAULT
|
10
|
+
def classname
|
11
|
+
generate_classname("pb_item_kit")
|
35
12
|
end
|
36
|
-
attr_accessor(*PROPS)
|
37
13
|
end
|
38
14
|
end
|
39
15
|
end
|
@@ -2,115 +2,66 @@
|
|
2
2
|
|
3
3
|
module Playbook
|
4
4
|
module PbList
|
5
|
-
class List
|
6
|
-
|
7
|
-
configured_classname
|
8
|
-
configured_dark
|
9
|
-
configured_data
|
10
|
-
configured_id
|
11
|
-
configured_layout
|
12
|
-
configured_size
|
13
|
-
configured_ordered
|
14
|
-
configured_xpadding
|
15
|
-
block].freeze
|
5
|
+
class List
|
6
|
+
include Playbook::Props
|
16
7
|
|
17
|
-
|
18
|
-
classname: default_configuration,
|
19
|
-
dark: default_configuration,
|
20
|
-
data: default_configuration,
|
21
|
-
id: default_configuration,
|
22
|
-
layout: default_configuration,
|
23
|
-
size: default_configuration,
|
24
|
-
ordered: default_configuration,
|
25
|
-
xpadding: default_configuration,
|
26
|
-
&block)
|
27
|
-
self.configured_borderless = borderless
|
28
|
-
self.configured_classname = classname
|
29
|
-
self.configured_dark = dark
|
30
|
-
self.configured_data = data
|
31
|
-
self.configured_id = id
|
32
|
-
self.configured_layout = layout
|
33
|
-
self.configured_size = size
|
34
|
-
self.configured_ordered = ordered
|
35
|
-
self.configured_xpadding = xpadding
|
36
|
-
self.block = block_given? ? block : nil
|
37
|
-
end
|
8
|
+
partial "pb_list/list"
|
38
9
|
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
10
|
+
prop :borderless, type: Playbook::Props::Boolean,
|
11
|
+
default: false
|
12
|
+
prop :dark, type: Playbook::Props::Boolean,
|
13
|
+
default: false
|
14
|
+
prop :layout, type: Playbook::Props::Enum,
|
15
|
+
values: ["left", "right", ""],
|
16
|
+
default: ""
|
17
|
+
prop :size
|
18
|
+
prop :ordered, type: Playbook::Props::Boolean,
|
19
|
+
default: false
|
20
|
+
prop :xpadding, type: Playbook::Props::Boolean,
|
21
|
+
default: false
|
46
22
|
|
47
|
-
def
|
48
|
-
|
49
|
-
""
|
50
|
-
|
51
|
-
|
52
|
-
|
23
|
+
def list_classname
|
24
|
+
[
|
25
|
+
"pb_list_kit",
|
26
|
+
xpadding_class,
|
27
|
+
borderless_class,
|
28
|
+
dark_class,
|
29
|
+
size_class,
|
30
|
+
layout_class,
|
31
|
+
].compact.join("_")
|
53
32
|
end
|
54
33
|
|
55
|
-
def
|
56
|
-
|
57
|
-
""
|
58
|
-
elsif configured_layout == "left"
|
59
|
-
"_layout_left"
|
60
|
-
elsif configured_layout == "right"
|
61
|
-
"_layout_right"
|
62
|
-
end
|
34
|
+
def ordered_class
|
35
|
+
ordered ? "ol" : "ul"
|
63
36
|
end
|
64
37
|
|
65
|
-
|
66
|
-
case configured_size
|
67
|
-
when default_configuration
|
68
|
-
""
|
69
|
-
when "large"
|
70
|
-
"_large"
|
71
|
-
end
|
72
|
-
end
|
38
|
+
private
|
73
39
|
|
74
|
-
def
|
75
|
-
|
76
|
-
"ul"
|
77
|
-
else
|
78
|
-
"ol"
|
79
|
-
end
|
40
|
+
def borderless_class
|
41
|
+
borderless ? "borderless" : nil
|
80
42
|
end
|
81
43
|
|
82
|
-
def
|
83
|
-
|
84
|
-
""
|
85
|
-
elsif configured_xpadding == true
|
86
|
-
"_xpadding"
|
87
|
-
end
|
44
|
+
def dark_class
|
45
|
+
dark ? "dark" : nil
|
88
46
|
end
|
89
47
|
|
90
|
-
def
|
91
|
-
if
|
92
|
-
""
|
48
|
+
def layout_class
|
49
|
+
if layout == "right"
|
50
|
+
"layout_right"
|
51
|
+
elsif layout == "left"
|
52
|
+
"layout_left"
|
93
53
|
else
|
94
|
-
"
|
54
|
+
""
|
95
55
|
end
|
96
56
|
end
|
97
57
|
|
98
|
-
def
|
99
|
-
|
100
|
-
end
|
101
|
-
|
102
|
-
def to_partial_path
|
103
|
-
"pb_list/list"
|
58
|
+
def size_class
|
59
|
+
size ? "large" : nil
|
104
60
|
end
|
105
61
|
|
106
|
-
|
107
|
-
|
108
|
-
DEFAULT = Object.new
|
109
|
-
private_constant :DEFAULT
|
110
|
-
def default_configuration
|
111
|
-
DEFAULT
|
62
|
+
def xpadding_class
|
63
|
+
xpadding ? "xpadding" : nil
|
112
64
|
end
|
113
|
-
attr_accessor(*PROPS)
|
114
65
|
end
|
115
66
|
end
|
116
67
|
end
|
@@ -1,11 +1,24 @@
|
|
1
1
|
<%= content_tag(:div,
|
2
2
|
id: object.id,
|
3
3
|
data: object.data,
|
4
|
-
class: object.classname
|
5
|
-
|
4
|
+
class: object.classname) do %>
|
5
|
+
<% if object.valid? %>
|
6
|
+
<%= pb_rails("avatar", props: {
|
7
|
+
name: object.avatar_name,
|
8
|
+
size: "sm",
|
9
|
+
image_url: object.avatar_url,
|
10
|
+
status: object.avatar_status
|
11
|
+
}) %>
|
12
|
+
<% end %>
|
6
13
|
<div class="content_wrapper">
|
7
|
-
<%=
|
8
|
-
|
9
|
-
|
14
|
+
<%= pb_rails("caption", props: {
|
15
|
+
text: object.label
|
16
|
+
}) %>
|
17
|
+
<%= pb_rails("body", props: {
|
18
|
+
text: object.message
|
19
|
+
}) %>
|
20
|
+
<%= pb_rails("timestamp", props: {
|
21
|
+
text: object.timestamp
|
22
|
+
}) %>
|
10
23
|
</div>
|
11
24
|
<% end %>
|
@@ -2,11 +2,9 @@
|
|
2
2
|
label: "Message",
|
3
3
|
message: "How can we assist you today?",
|
4
4
|
timestamp: "20 seconds ago",
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
status: "online"
|
9
|
-
}
|
5
|
+
avatar_name: "Mike Bishop",
|
6
|
+
avatar_url: "https://randomuser.me/api/portraits/men/50.jpg",
|
7
|
+
avatar_status: "online"
|
10
8
|
}) %>
|
11
9
|
|
12
10
|
<br><br>
|
@@ -15,10 +13,8 @@
|
|
15
13
|
label: "Support",
|
16
14
|
message: "We'll escalate this issue to a Senior Support agent.",
|
17
15
|
timestamp: "9 minutes ago",
|
18
|
-
|
19
|
-
|
20
|
-
image: { url: "https://randomuser.me/api/portraits/men/14.jpg" }
|
21
|
-
}
|
16
|
+
avatar_name:"Wade Winningham",
|
17
|
+
avatar_url: "https://randomuser.me/api/portraits/men/14.jpg"
|
22
18
|
}) %>
|
23
19
|
|
24
20
|
<br><br>
|
@@ -26,10 +22,8 @@
|
|
26
22
|
<%= pb_rails("message", props: {
|
27
23
|
message: "To processs your order, I'll need your full name.",
|
28
24
|
timestamp: "4 hours ago",
|
29
|
-
|
30
|
-
|
31
|
-
image: { url: "https://randomuser.me/api/portraits/women/39.jpg" }
|
32
|
-
}
|
25
|
+
avatar_name: "Lisa Thompson",
|
26
|
+
avatar_url: "https://randomuser.me/api/portraits/women/39.jpg"
|
33
27
|
}) %>
|
34
28
|
|
35
29
|
<br><br>
|
@@ -37,10 +31,8 @@
|
|
37
31
|
<%= pb_rails("message", props: {
|
38
32
|
label: "Application",
|
39
33
|
message: "Application for Kate Smith is waiting for your approval",
|
40
|
-
|
41
|
-
|
42
|
-
image: { url: "https://randomuser.me/api/portraits/women/50.jpg" }
|
43
|
-
}
|
34
|
+
avatar_name: "Becca Jacobs",
|
35
|
+
avatar_url: "https://randomuser.me/api/portraits/women/50.jpg"
|
44
36
|
}) %>
|
45
37
|
|
46
38
|
<br><br>
|
@@ -49,9 +41,7 @@
|
|
49
41
|
label: "Complaint",
|
50
42
|
message: "We're so sorry you had a bad experience!",
|
51
43
|
timestamp: "2 days ago",
|
52
|
-
|
53
|
-
name: "Tim Wenhold"
|
54
|
-
}
|
44
|
+
avatar_name: "Tim Wenhold"
|
55
45
|
}) %>
|
56
46
|
|
57
47
|
<br><br>
|