playbook_ui 14.3.0.pre.rc.5 → 14.3.0.pre.rc.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8205b5da496dd90411aeaba19b3d8dbcb8122881ca11fabf23fe8d6e405bad0d
4
- data.tar.gz: b60380ac478a4a1619aa7f5e129d16c4d2d5d91c3d726d195b5c1294f9c053ba
3
+ metadata.gz: f08ee6b3c1cf56f7a628f3fa3ee11218dd3fdcda5e2e12ca73d2b13d3a401fad
4
+ data.tar.gz: c587fcfdecb60eb4c836201b9472280bdaa22b8a31ac828f46c7d8688c1b6e8a
5
5
  SHA512:
6
- metadata.gz: a3d39740e2d29b1f5594e08ef75264369fafcca12edce4b3038ebdcc616b67f3cc04606932f981d2d1901549865d9aa6506a121cdfc4aa041501ac1357a87ef0
7
- data.tar.gz: b49210fbeb5368472d9b6616b43167f9fa3bd67452bbaa41d9c1ab144537fbc6618de55d85dd34188a0d2cc53b7a0a9c8482bb295260eb6c59e33829a5426fb6
6
+ metadata.gz: 16b3ea6e2f90b7b3e4bb963c739d6b546d9147d7cc2032ba72039f8c2773c5eb602ddac15a28a0edaad1bcdccea7c1528c7b9b450696913a55fed23f738a6167
7
+ data.tar.gz: 005b4ef041123ae223e186e59c7e7f83f7cce628fc5a1a45ad4fd43a5b12012d6da62926b8fef0ce2c0fca065333f536c29fbef43933fb0b97ac62f9a46d3965
@@ -45,7 +45,9 @@ const CollapsibleIcon = ({
45
45
  const color = colorMap[iconColor];
46
46
 
47
47
  const showIcon = (icon: string | string[]) => {
48
- if (typeof icon === "string") {
48
+ if (icon === "none") {
49
+ return []
50
+ } else if (typeof icon === "string") {
49
51
  return [icon, icon];
50
52
  }
51
53
  return icon;
@@ -60,30 +62,34 @@ const CollapsibleIcon = ({
60
62
 
61
63
  return (
62
64
  <>
63
- {collapsed ? (
64
- <div
65
- className="icon_wrapper"
66
- key={icon ? showIcon(icon)[0] : "chevron-down"}
67
- onClick={(e) => handleIconClick(e)}
68
- style={{ verticalAlign: "middle", color: color }}
69
- >
70
- <Icon
71
- icon={icon ? showIcon(icon)[0] : "chevron-down"}
72
- size={iconSize}
73
- />
74
- </div>
65
+ {(icon !== "none") ? (
66
+ collapsed ? (
67
+ <div
68
+ className="icon_wrapper"
69
+ key={icon ? showIcon(icon)[0] : "chevron-down"}
70
+ onClick={(e) => handleIconClick(e)}
71
+ style={{ verticalAlign: "middle", color: color }}
72
+ >
73
+ <Icon
74
+ icon={icon ? showIcon(icon)[0] : "chevron-down"}
75
+ size={iconSize}
76
+ />
77
+ </div>
78
+ ) : (
79
+ <div
80
+ className="icon_wrapper"
81
+ key={icon ? showIcon(icon)[1] : "chevron-up"}
82
+ onClick={(e) => handleIconClick(e)}
83
+ style={{ verticalAlign: "middle", color: color }}
84
+ >
85
+ <Icon
86
+ icon={icon ? showIcon(icon)[1] : "chevron-up"}
87
+ size={iconSize}
88
+ />
89
+ </div>
90
+ )
75
91
  ) : (
76
- <div
77
- className="icon_wrapper"
78
- key={icon ? showIcon(icon)[1] : "chevron-up"}
79
- onClick={(e) => handleIconClick(e)}
80
- style={{ verticalAlign: "middle", color: color }}
81
- >
82
- <Icon
83
- icon={icon ? showIcon(icon)[1] : "chevron-up"}
84
- size={iconSize}
85
- />
86
- </div>
92
+ <div/>
87
93
  )}
88
94
  </>
89
95
  );
@@ -5,15 +5,19 @@
5
5
  <%= content.presence %>
6
6
  <% end %>
7
7
  <%= pb_rails("flex/flex_item") do %>
8
- <div style="color: <%= object.icon_color %>" class="icon_wrapper" >
9
- <% if object.icon.present? %>
10
- <%= pb_rails("icon", props: { icon: object.show_icon(object.icon)[0], id:"collapsible_open_icon", size: object.size }) %>
11
- <%= pb_rails("icon", props: { icon: object.show_icon(object.icon)[1], id:"collapsible_close_icon", size: object.size }) %>
8
+ <% if object.icon == "none" %>
9
+ <div></div>
12
10
  <% else %>
13
- <%= pb_rails("icon", props: { icon: "chevron-down", id:"collapsible_open_icon", size: object.size }) %>
14
- <%= pb_rails("icon", props: { icon: "chevron-up", id:"collapsible_close_icon", size: object.size }) %>
11
+ <div style="color: <%= object.icon_color %>" class="icon_wrapper" >
12
+ <% if object.icon.present? %>
13
+ <%= pb_rails("icon", props: { icon: object.show_icon(object.icon)[0], id:"collapsible_open_icon", size: object.size }) %>
14
+ <%= pb_rails("icon", props: { icon: object.show_icon(object.icon)[1], id:"collapsible_close_icon", size: object.size }) %>
15
+ <% else %>
16
+ <%= pb_rails("icon", props: { icon: "chevron-down", id:"collapsible_open_icon", size: object.size }) %>
17
+ <%= pb_rails("icon", props: { icon: "chevron-up", id:"collapsible_close_icon", size: object.size }) %>
18
+ <% end %>
19
+ </div>
15
20
  <% end %>
16
- </div>
17
21
  <% end %>
18
22
  <% end %>
19
23
  <% end %>
@@ -20,6 +20,8 @@ module Playbook
20
20
 
21
21
  def show_icon(icon)
22
22
  case icon
23
+ when "none"
24
+ []
23
25
  when ::String
24
26
  [icon, icon]
25
27
  when ::Array
@@ -0,0 +1,10 @@
1
+ <%= pb_rails("collapsible", props: { name: "no-icon-example" }) do %>
2
+ <%= pb_rails("collapsible/collapsible_main", props: { padding: "md", name: "no-icon-main", icon: "none" }) do %>
3
+ <%= pb_rails("body", props: { text: "Main Section"}) %>
4
+ <% end %>
5
+ <%= pb_rails("collapsible/collapsible_content", props: { padding: "md" }) do %>
6
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec iaculis, risus a fringilla luctus, sapien eros sodales ex, quis molestie est nulla non turpis. Vestibulum aliquet at ipsum eget posuere. Morbi sed laoreet erat. Sed commodo posuere lectus, at porta nulla ornare a. Suspendisse quam est, sollicitudin ut enim sit amet, commodo placerat enim. Donec laoreet metus ac mauris pellentesque mattis. Pellentesque luctus vel mauris non aliquam. Mauris hendrerit mattis porttitor. Curabitur vehicula justo non ex consectetur commodo. Quisque posuere aliquet quam. Maecenas malesuada magna mauris, ac tempor metus euismod at.
7
+ <br><br>
8
+ Cras ornare fermentum magna mollis efficitur. Sed vitae nulla vel purus ultrices mollis. Maecenas id nulla id libero faucibus feugiat quis sit amet turpis. In commodo pellentesque risus at fringilla. Integer non interdum leo, non commodo ante. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut mi augue, dignissim at orci vel, egestas aliquam mi. Proin finibus aliquet tempor. Integer cursus, ex quis gravida rhoncus, nisi elit viverra ipsum, non efficitur est ex ac tortor. Praesent vitae odio massa.
9
+ <% end %>
10
+ <% end %>
@@ -0,0 +1,21 @@
1
+ import React from 'react'
2
+ import { Collapsible } from 'playbook-ui'
3
+
4
+ const CollapsibleNoIcon = (props) => (
5
+ <Collapsible
6
+ icon="none"
7
+ >
8
+ <Collapsible.Main {...props}>
9
+ <div>{'Main Section'}</div>
10
+ </Collapsible.Main>
11
+ <Collapsible.Content>
12
+ <div>
13
+ {
14
+ 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. In vel erat sed purus hendrerit viverra. Duis et vestibulum metus. Sed consequat ut ante non vehicula. Etiam nunc massa, pharetra vel quam id, posuere rhoncus quam. Quisque imperdiet arcu enim, nec aliquet justo auctor eget. Curabitur in metus nec nunc rhoncus faucibus vitae ac elit. Nulla facilisi. Vestibulum quis pretium nulla. Nulla ut accumsan velit. Duis varius urna sed sem tempor, sit amet fermentum nibh auctor. Praesent lorem arcu, egestas non ante quis, placerat pellentesque lectus.Vestibulum lacinia ipsum quis venenatis tristique. Vivamus suscipit, libero eu fringilla egestas, orci urna commodo arcu, vel gravida turpis ipsum molestie nibh. Donec cursus eu ante sagittis ultrices. Phasellus id sagittis risus. Mauris dapibus neque faucibus, tempor ligula vel, cursus ante. Donec faucibus gravida porta. Nullam egestas est quis aliquam feugiat. Sed eget metus diam. Cras eget placerat libero.'
15
+ }
16
+ </div>
17
+ </Collapsible.Content>
18
+ </Collapsible>
19
+ )
20
+
21
+ export default CollapsibleNoIcon
@@ -9,6 +9,7 @@ examples:
9
9
  - collapsible_external_controls_multiple: Toggle All Collapsibles With One Control
10
10
  - collapsible_custom_main_rails: Custom Main Section
11
11
  - collapsible_custom_main_with_icon_rails: Custom Main Section With Icon
12
+ - collapsible_no_icon: No Icon
12
13
 
13
14
 
14
15
  react:
@@ -19,6 +20,7 @@ examples:
19
20
  - collapsible_state: useCollapsible Hook
20
21
  - collapsible_custom_main: Custom Main Section
21
22
  - collapsible_custom_main_with_icon: Custom Main Section With Icon
23
+ - collapsible_no_icon: No Icon
22
24
 
23
25
 
24
26
 
@@ -4,4 +4,5 @@ export { default as CollapsibleColor } from './_collapsible_color.jsx'
4
4
  export { default as CollapsibleIcons } from './_collapsible_icons.jsx'
5
5
  export { default as CollapsibleState } from './_collapsible_state.jsx'
6
6
  export { default as CollapsibleCustomMain } from './_collapsible_custom_main.jsx'
7
- export { default as CollapsibleCustomMainWithIcon } from './_collapsible_custom_main_with_icon.jsx'
7
+ export { default as CollapsibleCustomMainWithIcon } from './_collapsible_custom_main_with_icon.jsx'
8
+ export { default as CollapsibleNoIcon } from './_collapsible_no_icon.jsx'
@@ -0,0 +1,24 @@
1
+ <%= pb_rails("nav", props: { variant: "bold" }) do %>
2
+ <%= pb_rails("nav/item", props: { text: "Overview", link: "#", collapsible: true, icon_left:"city", collapsed: false, icon_right: "none" }) do %>
3
+ <%= pb_rails("nav", props: { variant: "bold" }) do %>
4
+ <%= pb_rails("nav/item", props: { text: "City", link: "#" }) %>
5
+ <%= pb_rails("nav/item", props: { text: "People", link: "#" }) %>
6
+ <%= pb_rails("nav/item", props: { text: "Business", link: "#" }) %>
7
+ <% end %>
8
+ <% end %>
9
+ <%= pb_rails("nav/item", props: { text: "Albums", link: "#", active: true, collapsible: true, icon_left: "theater-masks", icon_right: "none" }) do %>
10
+ <%= pb_rails("nav", props: { variant: "bold" }) do %>
11
+ <%= pb_rails("nav/item", props: { text: "Entertainment", link: "#" }) %>
12
+ <%= pb_rails("nav/item", props: { text: "Food", link: "#" }) %>
13
+ <%= pb_rails("nav/item", props: { text: "Style", link: "#" }) %>
14
+ <% end %>
15
+ <% end %>
16
+ <%= pb_rails("nav/item", props: { text: "Similar Artists", link: "#", collapsible: true, icon_left: "city", icon_right: "none" }) do %>
17
+ <%= pb_rails("nav", props: { variant: "bold" }) do %>
18
+ <%= pb_rails("nav/item", props: { text: "City", link: "#" }) %>
19
+ <%= pb_rails("nav/item", props: { text: "People", link: "#" }) %>
20
+ <%= pb_rails("nav/item", props: { text: "Business", link: "#" }) %>
21
+ <% end %>
22
+ <% end %>
23
+ <% end %>
24
+
@@ -0,0 +1,88 @@
1
+ import React from "react";
2
+ import { Nav, NavItem } from 'playbook-ui'
3
+
4
+ const CollapsibleNavNoIcon = (props) => {
5
+ return (
6
+ <Nav
7
+ variant="bold"
8
+ {...props}
9
+ >
10
+ <NavItem
11
+ active
12
+ collapsed={false}
13
+ collapsible
14
+ iconLeft="city"
15
+ iconRight="none"
16
+ link="#"
17
+ text="Overview"
18
+ {...props}
19
+ >
20
+ <NavItem
21
+ link="#"
22
+ text="City"
23
+ {...props}
24
+ />
25
+ <NavItem
26
+ link="#"
27
+ text="People"
28
+ {...props}
29
+ />
30
+ <NavItem
31
+ link="#"
32
+ text="Business"
33
+ {...props}
34
+ />
35
+ </NavItem>
36
+ <NavItem
37
+ collapsible
38
+ iconLeft="theater-masks"
39
+ iconRight="none"
40
+ link="#"
41
+ text="Albums"
42
+ {...props}
43
+ >
44
+ <NavItem
45
+ link="#"
46
+ text="Entertainment"
47
+ {...props}
48
+ />
49
+ <NavItem
50
+ link="#"
51
+ text="Food"
52
+ {...props}
53
+ />
54
+ <NavItem
55
+ link="#"
56
+ text="Style"
57
+ {...props}
58
+ />
59
+ </NavItem>
60
+ <NavItem
61
+ collapsible
62
+ iconLeft="city"
63
+ iconRight="none"
64
+ link="#"
65
+ text="Similar Artists"
66
+ {...props}
67
+ >
68
+ <NavItem
69
+ link="#"
70
+ text="City"
71
+ {...props}
72
+ />
73
+ <NavItem
74
+ link="#"
75
+ text="People"
76
+ {...props}
77
+ />
78
+ <NavItem
79
+ link="#"
80
+ text="Business"
81
+ {...props}
82
+ />
83
+ </NavItem>
84
+ </Nav>
85
+ );
86
+ };
87
+
88
+ export default CollapsibleNavNoIcon
@@ -0,0 +1 @@
1
+ Optionally remove the expand/collapse icon(s) from any collapsible nav item by passing "none" to the `icon_right` prop on that nav item.
@@ -0,0 +1 @@
1
+ Optionally remove the expand/collapse icon(s) from any collapsible nav item by passing "none" to the `iconRight` prop on that nav item.
@@ -13,6 +13,7 @@ examples:
13
13
  - nav_with_font_control: Nav With Font Control
14
14
  - collapsible_nav: Collapsible Nav
15
15
  - collapsible_nav_with_all_options: Collapsible Nav With Options
16
+ - collapsible_nav_no_icon: Collapsible Nav No Icon
16
17
  - horizontal_nav: Horizontal Nav
17
18
  - subtle_horizontal_nav: Subtle Horizontal Nav
18
19
  - bold_horizontal_nav: Bold Horizontal Nav
@@ -37,6 +38,7 @@ examples:
37
38
  - collapsible_nav_with_all_options: Collapsible Nav With Options
38
39
  - collapsible_nav_item_spacing: Collapsible Nav With ItemSpacing
39
40
  - collapsible_nav_custom: Collapsible Nav With Custom Toggling
41
+ - collapsible_nav_no_icon: Collapsible Nav No Icon
40
42
  - horizontal_nav: Horizontal Nav
41
43
  - subtle_horizontal_nav: Subtle Horizontal Nav
42
44
  - bold_horizontal_nav: Bold Horizontal Nav
@@ -15,7 +15,8 @@ export { default as BoldHorizontalNav } from './_bold_horizontal_nav.jsx'
15
15
  export { default as BoldVerticalNav } from './_bold_vertical_nav.jsx'
16
16
  export { default as CollapsibleNav } from './_collapsible_nav.jsx'
17
17
  export { default as CollapsibleNavCustom } from './_collapsible_nav_custom.jsx'
18
- export {default as CollapsibleNavWithAllOptions} from "./_collapsible_nav_with_all_options.jsx"
18
+ export { default as CollapsibleNavWithAllOptions} from "./_collapsible_nav_with_all_options.jsx"
19
19
  export { default as NavWithFontControl } from "./_nav_with_font_control.jsx"
20
- export {default as NavWithSpacingControl } from "./_nav_with_spacing_control.jsx"
21
- export {default as CollapsibleNavItemSpacing } from "./_collapsible_nav_item_spacing.jsx"
20
+ export { default as NavWithSpacingControl } from "./_nav_with_spacing_control.jsx"
21
+ export { default as CollapsibleNavItemSpacing } from "./_collapsible_nav_item_spacing.jsx"
22
+ export { default as CollapsibleNavNoIcon } from "./_collapsible_nav_no_icon.jsx"