playbook_ui 10.18.2 → 10.20.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (93) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/_playbook.scss +1 -0
  3. data/app/pb_kits/playbook/pb_body/_body.jsx +4 -2
  4. data/app/pb_kits/playbook/pb_body/_body_mixins.scss +2 -1
  5. data/app/pb_kits/playbook/pb_body/body.rb +1 -1
  6. data/app/pb_kits/playbook/pb_body/body.test.js +29 -0
  7. data/app/pb_kits/playbook/pb_body/docs/_body_light.html.erb +5 -0
  8. data/app/pb_kits/playbook/pb_body/docs/_body_light.jsx +5 -0
  9. data/app/pb_kits/playbook/pb_body/docs/_body_light.md +6 -0
  10. data/app/pb_kits/playbook/pb_caption/_caption.jsx +5 -4
  11. data/app/pb_kits/playbook/pb_caption/_caption.scss +11 -15
  12. data/app/pb_kits/playbook/pb_caption/_caption_mixin.scss +13 -3
  13. data/app/pb_kits/playbook/pb_caption/caption.rb +3 -2
  14. data/app/pb_kits/playbook/pb_caption/caption.test.js +29 -0
  15. data/app/pb_kits/playbook/pb_caption/docs/_caption_colors.html.erb +3 -0
  16. data/app/pb_kits/playbook/pb_caption/docs/_caption_colors.jsx +25 -0
  17. data/app/pb_kits/playbook/pb_caption/docs/_caption_colors.md +6 -0
  18. data/app/pb_kits/playbook/pb_caption/docs/example.yml +2 -2
  19. data/app/pb_kits/playbook/pb_caption/docs/index.js +1 -2
  20. data/app/pb_kits/playbook/pb_date/_date.jsx +1 -1
  21. data/app/pb_kits/playbook/pb_date/date.html.erb +1 -1
  22. data/app/pb_kits/playbook/pb_date_picker/_date_picker.jsx +3 -0
  23. data/app/pb_kits/playbook/pb_date_picker/_date_picker.scss +1 -0
  24. data/app/pb_kits/playbook/pb_date_picker/date_picker.rb +3 -0
  25. data/app/pb_kits/playbook/pb_date_picker/date_picker_helper.js +10 -1
  26. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_month_and_year.html.erb +5 -0
  27. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_month_and_year.jsx +18 -0
  28. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_month_and_year.md +1 -0
  29. data/app/pb_kits/playbook/pb_date_picker/docs/example.yml +2 -0
  30. data/app/pb_kits/playbook/pb_date_picker/docs/index.js +1 -0
  31. data/app/pb_kits/playbook/pb_date_picker/sass_partials/_month_and_year_styles.scss +127 -0
  32. data/app/pb_kits/playbook/pb_image/_image.jsx +12 -14
  33. data/app/pb_kits/playbook/pb_image/docs/_custom_error_image.html.erb +1 -0
  34. data/app/pb_kits/playbook/pb_image/docs/_default_image.jsx +48 -35
  35. data/app/pb_kits/playbook/pb_image/docs/_rounded_image.jsx +46 -35
  36. data/app/pb_kits/playbook/pb_legend/_legend.jsx +1 -7
  37. data/app/pb_kits/playbook/pb_legend/_legend.scss +6 -2
  38. data/app/pb_kits/playbook/pb_legend/docs/_legend_colors.html.erb +4 -0
  39. data/app/pb_kits/playbook/pb_legend/docs/_legend_colors.jsx +29 -0
  40. data/app/pb_kits/playbook/pb_legend/docs/_legend_colors.md +2 -0
  41. data/app/pb_kits/playbook/pb_legend/docs/_legend_default.html.erb +2 -2
  42. data/app/pb_kits/playbook/pb_legend/docs/_legend_default.jsx +1 -1
  43. data/app/pb_kits/playbook/pb_legend/docs/example.yml +4 -4
  44. data/app/pb_kits/playbook/pb_legend/docs/index.js +1 -0
  45. data/app/pb_kits/playbook/pb_legend/legend.rb +1 -2
  46. data/app/pb_kits/playbook/pb_legend/legend.test.js +29 -0
  47. data/app/pb_kits/playbook/pb_nav/_bold_mixin.scss +22 -0
  48. data/app/pb_kits/playbook/pb_nav/_horizontal_nav.scss +17 -1
  49. data/app/pb_kits/playbook/pb_nav/_vertical_nav.scss +9 -2
  50. data/app/pb_kits/playbook/pb_nav/docs/_bold_horizontal_nav.html.erb +6 -0
  51. data/app/pb_kits/playbook/pb_nav/docs/_bold_horizontal_nav.jsx +39 -0
  52. data/app/pb_kits/playbook/pb_nav/docs/_bold_vertical_nav.html.erb +6 -0
  53. data/app/pb_kits/playbook/pb_nav/docs/_bold_vertical_nav.jsx +39 -0
  54. data/app/pb_kits/playbook/pb_nav/docs/_horizontal_nav.html.erb +1 -1
  55. data/app/pb_kits/playbook/pb_nav/docs/_subtle_nav.html.erb +1 -1
  56. data/app/pb_kits/playbook/pb_nav/docs/example.yml +4 -0
  57. data/app/pb_kits/playbook/pb_nav/docs/index.js +2 -0
  58. data/app/pb_kits/playbook/pb_nav/nav.rb +1 -1
  59. data/app/pb_kits/playbook/pb_popover/docs/_popover_scroll_height.jsx +3 -0
  60. data/app/pb_kits/playbook/pb_popover/docs/_popover_z_index.jsx +1 -0
  61. data/app/pb_kits/playbook/pb_section_separator/_section_separator.scss +6 -2
  62. data/app/pb_kits/playbook/pb_section_separator/_section_separator_mixin.scss +0 -2
  63. data/app/pb_kits/playbook/pb_text_input/_text_input.scss +62 -13
  64. data/app/pb_kits/playbook/pb_text_input/docs/_text_input_error.html.erb +21 -2
  65. data/app/pb_kits/playbook/pb_text_input/docs/_text_input_error.jsx +12 -3
  66. data/app/pb_kits/playbook/pb_title/_title.jsx +6 -3
  67. data/app/pb_kits/playbook/pb_title/_title.scss +5 -5
  68. data/app/pb_kits/playbook/pb_title/_title_mixin.scss +17 -0
  69. data/app/pb_kits/playbook/pb_title/docs/_title_colors.html.erb +4 -0
  70. data/app/pb_kits/playbook/pb_title/docs/_title_colors.jsx +37 -0
  71. data/app/pb_kits/playbook/pb_title/docs/_title_colors.md +6 -0
  72. data/app/pb_kits/playbook/pb_title/docs/_title_light.md +3 -0
  73. data/app/pb_kits/playbook/pb_title/docs/example.yml +2 -2
  74. data/app/pb_kits/playbook/pb_title/docs/index.js +1 -1
  75. data/app/pb_kits/playbook/pb_title/title.html.erb +2 -3
  76. data/app/pb_kits/playbook/pb_title/title.rb +6 -2
  77. data/app/pb_kits/playbook/pb_title/title.test.js +29 -0
  78. data/app/pb_kits/playbook/utilities/_line_height.scss +11 -0
  79. data/app/pb_kits/playbook/utilities/globalProps.js +7 -1
  80. data/lib/playbook/classnames.rb +1 -0
  81. data/lib/playbook/kit_base.rb +2 -0
  82. data/lib/playbook/line_height.rb +29 -0
  83. data/lib/playbook/version.rb +2 -2
  84. metadata +28 -11
  85. data/app/pb_kits/playbook/pb_caption/docs/_caption_example.html.erb +0 -3
  86. data/app/pb_kits/playbook/pb_caption/docs/_caption_example.jsx +0 -27
  87. data/app/pb_kits/playbook/pb_caption/docs/_caption_example.md +0 -1
  88. data/app/pb_kits/playbook/pb_caption/docs/_caption_variants.html.erb +0 -1
  89. data/app/pb_kits/playbook/pb_caption/docs/_caption_variants.jsx +0 -17
  90. data/app/pb_kits/playbook/pb_caption/docs/_caption_variants.md +0 -3
  91. data/app/pb_kits/playbook/pb_title/docs/_title_variants.html.erb +0 -1
  92. data/app/pb_kits/playbook/pb_title/docs/_title_variants.jsx +0 -19
  93. data/app/pb_kits/playbook/pb_title/docs/_title_variants.md +0 -3
@@ -44,20 +44,18 @@ const Image = (props: ImageProps) => {
44
44
  const dataProps = buildDataProps(data)
45
45
 
46
46
  return (
47
- <div>
48
- <img
49
- {...ariaProps}
50
- {...dataProps}
51
- alt={alt}
52
- className={classes}
53
- data-src={url}
54
- id={id}
55
- onError={onError}
56
- rounded={+rounded}
57
- src={url}
58
- transition={transition}
59
- />
60
- </div>
47
+ <img
48
+ {...ariaProps}
49
+ {...dataProps}
50
+ alt={alt}
51
+ className={classes}
52
+ data-src={url}
53
+ id={id}
54
+ onError={onError}
55
+ rounded={+rounded}
56
+ src={url}
57
+ transition={transition}
58
+ />
61
59
  )
62
60
  }
63
61
 
@@ -49,6 +49,7 @@
49
49
  props: {
50
50
  alt: "This is the alt text!",
51
51
  on_error: "this.classList.add('image-error')",
52
+ padding_x: "none",
52
53
  rounded: true,
53
54
  size: "xs",
54
55
  url: "not_a_picture"
@@ -5,41 +5,54 @@ import Image from '../_image'
5
5
  const DefaultImage = (props) => {
6
6
  return (
7
7
  <>
8
- <Image
9
- alt="picture of a misty forest"
10
- size="xs"
11
- url="https://unsplash.it/500/400/?image=634"
12
- {...props}
13
- />
14
- <Image
15
- alt="picture of a misty forest"
16
- size="sm"
17
- url="https://unsplash.it/500/400/?image=634"
18
- {...props}
19
- />
20
- <Image
21
- alt="picture of a misty forest"
22
- size="md"
23
- url="https://unsplash.it/500/400/?image=634"
24
- {...props}
25
- />
26
- <Image
27
- alt="picture of a misty forest"
28
- size="lg"
29
- url="https://unsplash.it/500/400/?image=634"
30
- {...props}
31
- />
32
- <Image
33
- alt="picture of a misty forest"
34
- size="xl"
35
- url="https://unsplash.it/500/400/?image=634"
36
- {...props}
37
- />
38
- <Image
39
- alt="picture of a misty forest"
40
- url="https://unsplash.it/500/400/?image=634"
41
- {...props}
42
- />
8
+ <br />
9
+ <div>
10
+ <Image
11
+ alt="picture of a misty forest"
12
+ size="xs"
13
+ url="https://unsplash.it/500/400/?image=634"
14
+ {...props}
15
+ />
16
+ </div>
17
+ <div>
18
+ <Image
19
+ alt="picture of a misty forest"
20
+ size="sm"
21
+ url="https://unsplash.it/500/400/?image=634"
22
+ {...props}
23
+ />
24
+ </div>
25
+ <div>
26
+ <Image
27
+ alt="picture of a misty forest"
28
+ size="md"
29
+ url="https://unsplash.it/500/400/?image=634"
30
+ {...props}
31
+ />
32
+ </div>
33
+ <div>
34
+ <Image
35
+ alt="picture of a misty forest"
36
+ size="lg"
37
+ url="https://unsplash.it/500/400/?image=634"
38
+ {...props}
39
+ />
40
+ </div>
41
+ <div>
42
+ <Image
43
+ alt="picture of a misty forest"
44
+ size="xl"
45
+ url="https://unsplash.it/500/400/?image=634"
46
+ {...props}
47
+ />
48
+ </div>
49
+ <div>
50
+ <Image
51
+ alt="picture of a misty forest"
52
+ url="https://unsplash.it/500/400/?image=634"
53
+ {...props}
54
+ />
55
+ </div>
43
56
  </>
44
57
  )
45
58
  }
@@ -5,41 +5,52 @@ import Image from '../_image'
5
5
  const RoundedImage = (props) => {
6
6
  return (
7
7
  <>
8
- <Image
9
- alt=""
10
- rounded
11
- size="xs"
12
- url="https://unsplash.it/500/400/?image=634"
13
- {...props}
14
- />
15
- <Image
16
- alt=""
17
- rounded
18
- size="sm"
19
- url="https://unsplash.it/500/400/?image=634"
20
- {...props}
21
- />
22
- <Image
23
- alt=""
24
- rounded
25
- size="md"
26
- url="https://unsplash.it/500/400/?image=634"
27
- {...props}
28
- />
29
- <Image
30
- alt=""
31
- rounded
32
- size="lg"
33
- url="https://unsplash.it/500/400/?image=634"
34
- {...props}
35
- />
36
- <Image
37
- alt=""
38
- rounded
39
- size="xl"
40
- url="https://unsplash.it/500/400/?image=634"
41
- {...props}
42
- />
8
+ <br />
9
+ <div>
10
+ <Image
11
+ alt=""
12
+ rounded
13
+ size="xs"
14
+ url="https://unsplash.it/500/400/?image=634"
15
+ {...props}
16
+ />
17
+ </div>
18
+ <div>
19
+ <Image
20
+ alt=""
21
+ rounded
22
+ size="sm"
23
+ url="https://unsplash.it/500/400/?image=634"
24
+ {...props}
25
+ />
26
+ </div>
27
+ <div>
28
+ <Image
29
+ alt=""
30
+ rounded
31
+ size="md"
32
+ url="https://unsplash.it/500/400/?image=634"
33
+ {...props}
34
+ />
35
+ </div>
36
+ <div>
37
+ <Image
38
+ alt=""
39
+ rounded
40
+ size="lg"
41
+ url="https://unsplash.it/500/400/?image=634"
42
+ {...props}
43
+ />
44
+ </div>
45
+ <div>
46
+ <Image
47
+ alt=""
48
+ rounded
49
+ size="xl"
50
+ url="https://unsplash.it/500/400/?image=634"
51
+ {...props}
52
+ />
53
+ </div>
43
54
  </>
44
55
  )
45
56
  }
@@ -12,13 +12,7 @@ import Title from '../pb_title/_title'
12
12
  type LegendProps = {
13
13
  aria?: object,
14
14
  className?: string,
15
- color?: | "data_1"
16
- | "data_2"
17
- | "data_3"
18
- | "data_4"
19
- | "data_5"
20
- | "data_6"
21
- | "data_7",
15
+ color?: string,
22
16
  dark?: boolean,
23
17
  data?: object,
24
18
  id?: string,
@@ -20,5 +20,9 @@
20
20
  }
21
21
 
22
22
  [class^=pb_legend_kit] {
23
- @include indicator-colors($data_colors)
24
- }
23
+ @include indicator-colors($data_colors);
24
+ @include indicator-colors($status_colors);
25
+ @include indicator-colors($product_colors);
26
+ @include indicator-colors($category_colors)
27
+
28
+ }
@@ -0,0 +1,4 @@
1
+ <%= pb_rails("legend", props: { color: "data_8", text: "Windows" }) %>
2
+ <%= pb_rails("legend", props: { color: "warning", text: "Windows" }) %>
3
+ <%= pb_rails("legend", props: { color: "windows", text: "Windows" }) %>
4
+ <%= pb_rails("legend", props: { color: "category_7", text: "Windows" }) %>
@@ -0,0 +1,29 @@
1
+ import React from 'react'
2
+ import { Legend } from '../..'
3
+
4
+ const LegendColors = (props) => (
5
+ <div>
6
+ <Legend
7
+ color="data_8"
8
+ text="Windows"
9
+ {...props}
10
+ />
11
+ <Legend
12
+ color="warning"
13
+ text="Windows"
14
+ {...props}
15
+ />
16
+ <Legend
17
+ color="windows"
18
+ text="Windows"
19
+ {...props}
20
+ />
21
+ <Legend
22
+ color="category_7"
23
+ text="Windows"
24
+ {...props}
25
+ />
26
+ </div>
27
+ )
28
+
29
+ export default LegendColors
@@ -0,0 +1,2 @@
1
+ By default legend kit uses `data_1` color.
2
+ Pass the color prop and use any desired value from `$data_colors`, `$status_colors`, `$product_colors` and `$category_colors` list.
@@ -1,5 +1,5 @@
1
1
  <% labels = %W[Windows Doors Roofing Siding Solar Gutters Insulation Other] %>
2
2
 
3
- <% (1..7).each do |n, i| %>
4
- <%= pb_rails("legend", props: { color: "data_#{n}", text: "#{labels[n]}" }) %>
3
+ <% (0..7).each do |n, i| %>
4
+ <%= pb_rails("legend", props: { color: "data_#{n + 1}", text: "#{labels[n]}" }) %>
5
5
  <% end %>
@@ -2,7 +2,7 @@ import React from 'react'
2
2
 
3
3
  import Legend from '../_legend'
4
4
 
5
- const products = ['Windows', 'Doors', 'Roofing', 'Siding', 'Solar Gutters', 'Insulation', 'Other']
5
+ const products = ['Windows', 'Doors', 'Roofing', 'Siding', 'Solar', 'Gutters', 'Insulation', 'Other']
6
6
 
7
7
  const LegendDefault = (props) => (
8
8
  <div>
@@ -1,11 +1,11 @@
1
1
  examples:
2
-
2
+
3
3
  rails:
4
4
  - legend_default: Default
5
5
  - legend_prefix: With Prefix Text
6
-
7
-
8
-
6
+ - legend_colors: Colors
7
+
9
8
  react:
10
9
  - legend_default: Default
11
10
  - legend_prefix: With Prefix Text
11
+ - legend_colors: Colors
@@ -1,2 +1,3 @@
1
1
  export { default as LegendDefault } from './_legend_default.jsx'
2
2
  export { default as LegendPrefix } from './_legend_prefix.jsx'
3
+ export { default as LegendColors } from './_legend_colors'
@@ -3,8 +3,7 @@
3
3
  module Playbook
4
4
  module PbLegend
5
5
  class Legend < Playbook::KitBase
6
- prop :color, type: Playbook::Props::Enum,
7
- values: (1..7).map { |n| "data_#{n}" },
6
+ prop :color, type: Playbook::Props::String,
8
7
  default: "data_1"
9
8
  prop :prefix_text
10
9
  prop :text, required: true
@@ -0,0 +1,29 @@
1
+ import React from 'react'
2
+ import { render, screen } from '../utilities/test-utils'
3
+
4
+ import Legend from './_legend'
5
+
6
+ test('returns namespaced class name', () => {
7
+ render(
8
+ <Legend
9
+ data={{ testid: 'primary-test' }}
10
+ text="Test colors"
11
+ />
12
+ )
13
+
14
+ const kit = screen.getByTestId('primary-test')
15
+ expect(kit).toHaveClass('pb_legend_kit_data_1')
16
+ })
17
+
18
+ test('color prop', () => {
19
+ render(
20
+ <Legend
21
+ color="category_17"
22
+ data={{ testid: 'primary-test' }}
23
+ text="Test colors"
24
+ />
25
+ )
26
+
27
+ const kit = screen.getByTestId('primary-test')
28
+ expect(kit).toHaveClass('pb_legend_kit_category_17')
29
+ })
@@ -0,0 +1,22 @@
1
+ @mixin bold {
2
+ @include subtle;
3
+
4
+ [class*=pb_nav_list_kit_item] {
5
+ &[class*=_active] [class*=_link] {
6
+ background-color: $primary;
7
+ color: $white;
8
+ box-shadow: $shadow_deep;
9
+ @media (hover:hover) {
10
+ &:hover {
11
+ background-color: darken($primary, 4%);
12
+ [class*=_text],[class*=_icon] {
13
+ color: $white;
14
+ }
15
+ }
16
+ }
17
+ [class*=_text],[class*=_icon] {
18
+ font-weight: $bolder;
19
+ }
20
+ }
21
+ }
22
+ }
@@ -3,6 +3,8 @@
3
3
  @import "../tokens/animation-curves";
4
4
  @import "../tokens/typography";
5
5
  @import "./subtle_mixin";
6
+ @import "./bold_mixin";
7
+ @import "../tokens/shadows";
6
8
 
7
9
  $selector: ".pb_nav_list";
8
10
 
@@ -92,7 +94,21 @@ $selector: ".pb_nav_list";
92
94
  }
93
95
  }
94
96
  }
95
-
97
+
98
+ // Bold Variant
99
+ &[class*=_bold] {
100
+ @include bold;
101
+ // Horizontal Overrides
102
+ [class*=pb_nav_list_kit_item] {
103
+ margin: 0;
104
+ }
105
+ [class*=_active] {
106
+ [class*=_text] {
107
+ color: $white;
108
+ }
109
+ }
110
+ }
111
+
96
112
  &[class*=dark]{
97
113
  [class*=pb_nav_list_kit_item]{
98
114
  [class*=_link]{
@@ -6,6 +6,8 @@
6
6
  @import "../tokens/titles";
7
7
  @import "../pb_body/body_mixins";
8
8
  @import "./subtle_mixin";
9
+ @import "./bold_mixin";
10
+ @import "../tokens/shadows";
9
11
 
10
12
  $selector: ".pb_nav_list";
11
13
 
@@ -87,12 +89,17 @@ $selector: ".pb_nav_list";
87
89
  }
88
90
 
89
91
  // Subtle Variant
90
- &[class*=_subtle] {
92
+ &[class*=_subtle] {
91
93
  @include subtle;
92
94
  }
93
95
 
96
+ // Bold Variant
97
+ &[class*=_bold] {
98
+ @include bold;
99
+ }
100
+
94
101
  // Show Highlight
95
- &[class*=_highlight] {
102
+ &[class*=_highlight] {
96
103
  [class*=_active] {
97
104
  background-color: $active_light;
98
105
  }
@@ -0,0 +1,6 @@
1
+ <%= pb_rails("nav", props: { orientation: "horizontal", variant: "bold" }) do %>
2
+ <%= pb_rails("nav/item", props: { text: "About", link: "#" }) %>
3
+ <%= pb_rails("nav/item", props: { text: "Case Studies", link: "#", active: true }) %>
4
+ <%= pb_rails("nav/item", props: { text: "Service ", link: "#" }) %>
5
+ <%= pb_rails("nav/item", props: { text: "Contacts", link: "#" }) %>
6
+ <% end %>
@@ -0,0 +1,39 @@
1
+ import React from 'react'
2
+
3
+ import Nav from '../_nav'
4
+ import NavItem from '../_item'
5
+
6
+ const BoldHorizontalNav = (props) => {
7
+ return (
8
+ <Nav
9
+ link="#"
10
+ orientation="horizontal"
11
+ variant="bold"
12
+ {...props}
13
+ >
14
+ <NavItem
15
+ link="#"
16
+ text="About"
17
+ {...props}
18
+ />
19
+ <NavItem
20
+ active
21
+ link="#"
22
+ text="Case Studies"
23
+ {...props}
24
+ />
25
+ <NavItem
26
+ link="#"
27
+ text="Service"
28
+ {...props}
29
+ />
30
+ <NavItem
31
+ link="#"
32
+ text="Contacts"
33
+ {...props}
34
+ />
35
+ </Nav>
36
+ )
37
+ }
38
+
39
+ export default BoldHorizontalNav
@@ -0,0 +1,6 @@
1
+ <%= pb_rails("nav", props: { orientation: "vertical", variant: "bold" }) do %>
2
+ <%= pb_rails("nav/item", props: { text: "About", link: "#" }) %>
3
+ <%= pb_rails("nav/item", props: { text: "Case Studies", link: "#", active: true }) %>
4
+ <%= pb_rails("nav/item", props: { text: "Service ", link: "#" }) %>
5
+ <%= pb_rails("nav/item", props: { text: "Contacts", link: "#" }) %>
6
+ <% end %>
@@ -0,0 +1,39 @@
1
+ import React from 'react'
2
+
3
+ import Nav from '../_nav'
4
+ import NavItem from '../_item'
5
+
6
+ const BoldVerticalNav = (props) => {
7
+ return (
8
+ <Nav
9
+ link="#"
10
+ orientation="vertical"
11
+ variant="bold"
12
+ {...props}
13
+ >
14
+ <NavItem
15
+ link="#"
16
+ text="About"
17
+ {...props}
18
+ />
19
+ <NavItem
20
+ active
21
+ link="#"
22
+ text="Case Studies"
23
+ {...props}
24
+ />
25
+ <NavItem
26
+ link="#"
27
+ text="Service"
28
+ {...props}
29
+ />
30
+ <NavItem
31
+ link="#"
32
+ text="Contacts"
33
+ {...props}
34
+ />
35
+ </Nav>
36
+ )
37
+ }
38
+
39
+ export default BoldVerticalNav
@@ -1,4 +1,4 @@
1
- <%= pb_rails("nav", props: { orientation: "horizontal"}) do %>
1
+ <%= pb_rails("nav", props: { orientation: "horizontal" }) do %>
2
2
  <%= pb_rails("nav/item", props: { text: "About", link: "#" }) %>
3
3
  <%= pb_rails("nav/item", props: { text: "Case Studies", link: "#", active: true }) %>
4
4
  <%= pb_rails("nav/item", props: { text: "Service ", link: "#" }) %>
@@ -1,4 +1,4 @@
1
- <%= pb_rails("nav", props: {variant: "subtle"}) do %>
1
+ <%= pb_rails("nav", props: { variant: "subtle" }) do %>
2
2
  <%= pb_rails("nav/item", props: { text: "Overview", link: "#" }) %>
3
3
  <%= pb_rails("nav/item", props: { text: "Albums", link: "#", active: true }) %>
4
4
  <%= pb_rails("nav/item", props: { text: "Similar Artists", link: "#" }) %>
@@ -8,8 +8,10 @@ examples:
8
8
  - subtle_nav: Subtle Variant
9
9
  - subtle_with_icons_nav: Subtle With Icons
10
10
  - subtle_no_highlight_nav: Subtle No Highlight
11
+ - bold_vertical_nav: Bold Variant
11
12
  - horizontal_nav: Horizontal Nav
12
13
  - subtle_horizontal_nav: Subtle Horizontal Nav
14
+ - bold_horizontal_nav: Bold Horizontal Nav
13
15
  - block_nav: Block
14
16
  - block_no_title_nav: Without Title
15
17
  - new_tab: Open in a New Tab
@@ -23,8 +25,10 @@ examples:
23
25
  - subtle_nav: Subtle Variant
24
26
  - subtle_with_icons_nav: Subtle With Icons
25
27
  - subtle_no_highlight_nav: Subtle No Highlight
28
+ - bold_vertical_nav: Bold Variant
26
29
  - horizontal_nav: Horizontal Nav
27
30
  - subtle_horizontal_nav: Subtle Horizontal Nav
31
+ - bold_horizontal_nav: Bold Horizontal Nav
28
32
  - block_nav: Block
29
33
  - block_no_title_nav: Without Title
30
34
  - new_tab: Open in a New Tab
@@ -11,3 +11,5 @@ export { default as WithIconsNav } from './_with_icons_nav.jsx'
11
11
  export { default as SubtleWithIconsNav } from './_subtle_with_icons_nav.jsx'
12
12
  export { default as WithImgNav } from './_with_img_nav.jsx'
13
13
  export { default as NewTab } from './_new_tab.jsx'
14
+ export { default as BoldHorizontalNav } from './_bold_horizontal_nav.jsx'
15
+ export { default as BoldVerticalNav } from './_bold_vertical_nav.jsx'
@@ -9,7 +9,7 @@ module Playbook
9
9
  values: %w[vertical horizontal],
10
10
  default: "vertical"
11
11
  prop :variant, type: Playbook::Props::Enum,
12
- values: %w[normal subtle],
12
+ values: %w[normal subtle bold],
13
13
  default: "normal"
14
14
  prop :highlight, type: Playbook::Props::Boolean, default: true
15
15
  prop :borderless, type: Playbook::Props::Boolean, default: false
@@ -31,6 +31,9 @@ const PopoverScrollHeight = (props) => {
31
31
  maxHeight="150px"
32
32
  maxWidth="240px"
33
33
  offset
34
+ padding="md"
35
+ paddingBottom="sm"
36
+ paddingTop="sm"
34
37
  placement="top"
35
38
  reference={popoverTrigger}
36
39
  shouldClosePopover={handleShouldClosePopover}
@@ -36,6 +36,7 @@ const PopoverZIndex = (props) => {
36
36
  <PbReactPopover
37
37
  closeOnClick="outside"
38
38
  offset
39
+ padding="sm"
39
40
  placement="top"
40
41
  reference={popoverTrigger}
41
42
  shouldClosePopover={handleShouldClosePopover}
@@ -36,13 +36,15 @@ $section_colors_dark: (
36
36
  justify-content: center;
37
37
  }
38
38
  &[class*=_vertical] {
39
+ margin-left: $space_xs;
40
+ margin-right: $space_xs;
39
41
  &::after {
40
42
  @include section_separator_vertical(false);
41
43
  }
42
44
  }
43
-
45
+
44
46
  // Dark =========================
45
-
47
+
46
48
  &.dark {
47
49
  &::after {
48
50
  @include section_separator_horizontal(true);
@@ -59,6 +61,8 @@ $section_colors_dark: (
59
61
  }
60
62
  }
61
63
  &[class*=_vertical] {
64
+ margin-left: $space_xs;
65
+ margin-right: $space_xs;
62
66
  &::after {
63
67
  @include section_separator_vertical(true);
64
68
  }