playbook_ui 7.14.0 → 7.15.0

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.
Files changed (154) hide show
  1. checksums.yaml +4 -4
  2. data/app/helpers/playbook/pb_sample_helper.rb +1 -1
  3. data/app/pb_kits/playbook/index.js +1 -0
  4. data/app/pb_kits/playbook/pb_background/docs/example.yml +0 -2
  5. data/app/pb_kits/playbook/pb_background/docs/index.js +0 -1
  6. data/app/pb_kits/playbook/pb_date_range_stacked/docs/example.yml +0 -4
  7. data/app/pb_kits/playbook/pb_date_range_stacked/docs/index.js +0 -1
  8. data/app/pb_kits/playbook/pb_date_stacked/docs/example.yml +0 -7
  9. data/app/pb_kits/playbook/pb_date_stacked/docs/index.js +0 -2
  10. data/app/pb_kits/playbook/pb_date_time_stacked/docs/example.yml +0 -4
  11. data/app/pb_kits/playbook/pb_date_time_stacked/docs/index.js +0 -1
  12. data/app/pb_kits/playbook/pb_date_year_stacked/docs/example.yml +0 -2
  13. data/app/pb_kits/playbook/pb_date_year_stacked/docs/index.js +0 -1
  14. data/app/pb_kits/playbook/pb_distribution_bar/_distribution_bar.jsx +9 -4
  15. data/app/pb_kits/playbook/pb_distribution_bar/_distribution_bar.scss +12 -7
  16. data/app/pb_kits/playbook/pb_distribution_bar/distribution_bar.rb +4 -1
  17. data/app/pb_kits/playbook/pb_distribution_bar/docs/_distribution_bar_custom_colors.html.erb +4 -0
  18. data/app/pb_kits/playbook/pb_distribution_bar/docs/_distribution_bar_custom_colors.jsx +18 -0
  19. data/app/pb_kits/playbook/pb_distribution_bar/docs/_distribution_bar_custom_colors.md +1 -0
  20. data/app/pb_kits/playbook/pb_distribution_bar/docs/example.yml +2 -0
  21. data/app/pb_kits/playbook/pb_distribution_bar/docs/index.js +1 -0
  22. data/app/pb_kits/playbook/pb_filter/Filter/CurrentFilters.jsx +12 -1
  23. data/app/pb_kits/playbook/pb_filter/docs/_filter_default.html.erb +41 -0
  24. data/app/pb_kits/playbook/pb_filter/docs/_filter_default.jsx +84 -37
  25. data/app/pb_kits/playbook/pb_filter/templates/_core.html.erb +18 -7
  26. data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/example.yml +0 -5
  27. data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/index.js +0 -2
  28. data/app/pb_kits/playbook/pb_flex/_flex.jsx +25 -9
  29. data/app/pb_kits/playbook/pb_flex/_flex.scss +40 -7
  30. data/app/pb_kits/playbook/pb_flex/_flex_item.jsx +6 -2
  31. data/app/pb_kits/playbook/pb_flex/_flex_item.scss +10 -0
  32. data/app/pb_kits/playbook/pb_flex/docs/_description.md +6 -0
  33. data/app/pb_kits/playbook/pb_flex/docs/_flex_align.html.erb +101 -0
  34. data/app/pb_kits/playbook/pb_flex/docs/{_flex_horizontal.jsx → _flex_align.jsx} +71 -77
  35. data/app/pb_kits/playbook/pb_flex/docs/_flex_align.md +7 -0
  36. data/app/pb_kits/playbook/pb_flex/docs/_flex_default.html.erb +15 -15
  37. data/app/pb_kits/playbook/pb_flex/docs/_flex_default.jsx +17 -15
  38. data/app/pb_kits/playbook/pb_flex/docs/_flex_default.md +3 -1
  39. data/app/pb_kits/playbook/pb_flex/docs/_flex_gap.html.erb +33 -0
  40. data/app/pb_kits/playbook/pb_flex/docs/_flex_gap.jsx +75 -0
  41. data/app/pb_kits/playbook/pb_flex/docs/_flex_gap.md +9 -0
  42. data/app/pb_kits/playbook/pb_flex/docs/_flex_inline.html.erb +8 -8
  43. data/app/pb_kits/playbook/pb_flex/docs/_flex_inline.md +5 -1
  44. data/app/pb_kits/playbook/pb_flex/docs/_flex_item.html.erb +49 -0
  45. data/app/pb_kits/playbook/pb_flex/docs/_flex_item.md +11 -0
  46. data/app/pb_kits/playbook/pb_flex/docs/_flex_item_example.jsx +113 -0
  47. data/app/pb_kits/playbook/pb_flex/docs/{_flex_horizontal.html.erb → _flex_justify.html.erb} +19 -21
  48. data/app/pb_kits/playbook/pb_flex/docs/{_flex_vertical.jsx → _flex_justify.jsx} +41 -99
  49. data/app/pb_kits/playbook/pb_flex/docs/_flex_justify.md +7 -0
  50. data/app/pb_kits/playbook/pb_flex/docs/_flex_reverse.html.erb +9 -9
  51. data/app/pb_kits/playbook/pb_flex/docs/_flex_reverse.jsx +2 -2
  52. data/app/pb_kits/playbook/pb_flex/docs/_flex_reverse.md +5 -0
  53. data/app/pb_kits/playbook/pb_flex/docs/_flex_spacing.html.erb +23 -8
  54. data/app/pb_kits/playbook/pb_flex/docs/_flex_spacing.jsx +4 -4
  55. data/app/pb_kits/playbook/pb_flex/docs/_flex_spacing.md +7 -0
  56. data/app/pb_kits/playbook/pb_flex/docs/_flex_wrap.jsx +1 -1
  57. data/app/pb_kits/playbook/pb_flex/docs/_flex_wrap.md +5 -0
  58. data/app/pb_kits/playbook/pb_flex/docs/example.yml +9 -4
  59. data/app/pb_kits/playbook/pb_flex/docs/index.js +4 -2
  60. data/app/pb_kits/playbook/pb_flex/flex.rb +79 -12
  61. data/app/pb_kits/playbook/pb_flex/flex_item.rb +18 -1
  62. data/app/pb_kits/playbook/pb_form_pill/_form_pill.jsx +7 -1
  63. data/app/pb_kits/playbook/pb_icon/docs/example.yml +1 -2
  64. data/app/pb_kits/playbook/pb_icon/docs/index.js +0 -1
  65. data/app/pb_kits/playbook/pb_icon_circle/docs/example.yml +0 -7
  66. data/app/pb_kits/playbook/pb_icon_circle/docs/index.js +0 -3
  67. data/app/pb_kits/playbook/pb_icon_value/docs/example.yml +0 -5
  68. data/app/pb_kits/playbook/pb_icon_value/docs/index.js +0 -2
  69. data/app/pb_kits/playbook/pb_layout/_layout.scss +9 -9
  70. data/app/pb_kits/playbook/pb_layout/docs/example.yml +0 -4
  71. data/app/pb_kits/playbook/pb_layout/docs/index.js +0 -1
  72. data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_legend.jsx +1 -1
  73. data/app/pb_kits/playbook/pb_popover/docs/example.yml +0 -13
  74. data/app/pb_kits/playbook/pb_popover/docs/index.js +0 -5
  75. data/app/pb_kits/playbook/pb_select/_select.scss +6 -4
  76. data/app/pb_kits/playbook/pb_table/_table.jsx +8 -0
  77. data/app/pb_kits/playbook/pb_table/docs/_table_responsive_table.html.erb +56 -4
  78. data/app/pb_kits/playbook/pb_table/docs/_table_responsive_table.jsx +64 -3
  79. data/app/pb_kits/playbook/pb_table/styles/_all.scss +3 -0
  80. data/app/pb_kits/playbook/pb_table/styles/_desktop_collapse.scss +135 -0
  81. data/app/pb_kits/playbook/pb_table/styles/_mobile_collapse.scss +135 -0
  82. data/app/pb_kits/playbook/pb_table/styles/_tablet_collapse.scss +135 -0
  83. data/app/pb_kits/playbook/pb_table/table.rb +8 -1
  84. data/app/pb_kits/playbook/pb_textarea/_textarea.jsx +10 -2
  85. data/app/pb_kits/playbook/pb_textarea/docs/_textarea_resize.html.erb +2 -2
  86. data/app/pb_kits/playbook/pb_textarea/docs/_textarea_resize.jsx +9 -1
  87. data/app/pb_kits/playbook/pb_textarea/index.js +17 -0
  88. data/app/pb_kits/playbook/pb_textarea/textarea.rb +3 -4
  89. data/app/pb_kits/playbook/pb_timestamp/_timestamp.html.erb +6 -4
  90. data/app/pb_kits/playbook/pb_timestamp/_timestamp.jsx +92 -16
  91. data/app/pb_kits/playbook/pb_timestamp/_timestamp.scss +12 -1
  92. data/app/pb_kits/playbook/pb_timestamp/docs/_description.md +1 -1
  93. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_align.jsx +26 -18
  94. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_default.html.erb +21 -1
  95. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_default.jsx +40 -8
  96. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_elapsed.jsx +12 -4
  97. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_timezones.jsx +26 -18
  98. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_updated.html.erb +0 -21
  99. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_updated.jsx +6 -28
  100. data/app/pb_kits/playbook/pb_timestamp/docs/example.yml +8 -0
  101. data/app/pb_kits/playbook/pb_timestamp/docs/index.js +4 -0
  102. data/app/pb_kits/playbook/pb_timestamp/timestamp.rb +83 -1
  103. data/app/pb_kits/playbook/pb_typeahead/components/MultiValue.jsx +2 -4
  104. data/app/pb_kits/playbook/pb_user_badge/docs/index.js +0 -1
  105. data/app/pb_kits/playbook/vendor.js +3 -0
  106. data/lib/playbook/version.rb +1 -1
  107. metadata +27 -55
  108. data/app/pb_kits/playbook/pb_background/docs/_background_dark.html.erb +0 -3
  109. data/app/pb_kits/playbook/pb_background/docs/_background_dark.jsx +0 -12
  110. data/app/pb_kits/playbook/pb_date_range_stacked/docs/_date_range_stacked_dark.html.erb +0 -1
  111. data/app/pb_kits/playbook/pb_date_range_stacked/docs/_date_range_stacked_dark.jsx +0 -15
  112. data/app/pb_kits/playbook/pb_date_stacked/docs/_date_stacked_dark.html.erb +0 -5
  113. data/app/pb_kits/playbook/pb_date_stacked/docs/_date_stacked_dark.jsx +0 -26
  114. data/app/pb_kits/playbook/pb_date_time_stacked/docs/_date_time_stacked_dark.html.erb +0 -1
  115. data/app/pb_kits/playbook/pb_date_time_stacked/docs/_date_time_stacked_dark.jsx +0 -14
  116. data/app/pb_kits/playbook/pb_date_year_stacked/docs/_date_year_stacked_dark.html.erb +0 -5
  117. data/app/pb_kits/playbook/pb_date_year_stacked/docs/_date_year_stacked_dark.jsx +0 -28
  118. data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_dark.html.erb +0 -21
  119. data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_dark.jsx +0 -43
  120. data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_multi_line_dark.html.erb +0 -5
  121. data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_multi_line_dark.jsx +0 -17
  122. data/app/pb_kits/playbook/pb_flex/docs/_flex_vertical.html.erb +0 -68
  123. data/app/pb_kits/playbook/pb_icon/docs/_icon_default_dark.html.erb +0 -3
  124. data/app/pb_kits/playbook/pb_icon/docs/_icon_default_dark.jsx +0 -18
  125. data/app/pb_kits/playbook/pb_icon_circle/docs/_icon_circle_color_dark.html.erb +0 -42
  126. data/app/pb_kits/playbook/pb_icon_circle/docs/_icon_circle_color_dark.jsx +0 -66
  127. data/app/pb_kits/playbook/pb_icon_circle/docs/_icon_circle_dark.html.erb +0 -4
  128. data/app/pb_kits/playbook/pb_icon_circle/docs/_icon_circle_dark.jsx +0 -17
  129. data/app/pb_kits/playbook/pb_icon_circle/docs/_icon_circle_sizes_dark.html.erb +0 -29
  130. data/app/pb_kits/playbook/pb_icon_circle/docs/_icon_circle_sizes_dark.jsx +0 -38
  131. data/app/pb_kits/playbook/pb_icon_value/docs/_icon_value_align_dark.html.erb +0 -23
  132. data/app/pb_kits/playbook/pb_icon_value/docs/_icon_value_align_dark.jsx +0 -37
  133. data/app/pb_kits/playbook/pb_icon_value/docs/_icon_value_dark.html.erb +0 -21
  134. data/app/pb_kits/playbook/pb_icon_value/docs/_icon_value_dark.jsx +0 -35
  135. data/app/pb_kits/playbook/pb_layout/docs/_layout_sizes_dark.html.erb +0 -32
  136. data/app/pb_kits/playbook/pb_layout/docs/_layout_sizes_dark.jsx +0 -97
  137. data/app/pb_kits/playbook/pb_popover/docs/_popover_close_dark.html.erb +0 -43
  138. data/app/pb_kits/playbook/pb_popover/docs/_popover_close_dark.jsx +0 -105
  139. data/app/pb_kits/playbook/pb_popover/docs/_popover_dark.html.erb +0 -25
  140. data/app/pb_kits/playbook/pb_popover/docs/_popover_dark.jsx +0 -51
  141. data/app/pb_kits/playbook/pb_popover/docs/_popover_list_dark.html.erb +0 -13
  142. data/app/pb_kits/playbook/pb_popover/docs/_popover_list_dark.jsx +0 -54
  143. data/app/pb_kits/playbook/pb_popover/docs/_popover_scroll_height_dark.html.erb +0 -25
  144. data/app/pb_kits/playbook/pb_popover/docs/_popover_scroll_height_dark.jsx +0 -57
  145. data/app/pb_kits/playbook/pb_popover/docs/_popover_z_index_dark.html.erb +0 -14
  146. data/app/pb_kits/playbook/pb_popover/docs/_popover_z_index_dark.jsx +0 -54
  147. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_elapsed_align.html.erb +0 -54
  148. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_elapsed_align.jsx +0 -73
  149. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_timezones_align.html.erb +0 -177
  150. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_timezones_align.jsx +0 -209
  151. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_updated_align.html.erb +0 -123
  152. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_updated_align.jsx +0 -146
  153. data/app/pb_kits/playbook/pb_user_badge/docs/_user_badge_size_dark.html.erb +0 -21
  154. data/app/pb_kits/playbook/pb_user_badge/docs/_user_badge_size_dark.jsx +0 -36
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: afa113290f2904fa0ce5794378b5c8e9ee247d1a213aa5911a339277738e331d
4
- data.tar.gz: 5be3a1822a72e60809e8bc54e777e78bc8130f4be7f776d579d2a47a2987dfd1
3
+ metadata.gz: e9880537826f76dc7f18ff8b57b2172d82daafcb82f24919edfc485d47dc7883
4
+ data.tar.gz: 4d5f0958a3ff10a277ecc5502af44757ded31c7dd47765ede532f14b2deeef80
5
5
  SHA512:
6
- metadata.gz: dcdb7c84e58b1835cdefd80e7d5e8bfdd29e08a2a16a107ebba9ac66a6b3f704c0eeef5df64db523605bb5cd80167dd17c1691ee5371271ed38e692f92b0fbdc
7
- data.tar.gz: b0570e9d26ca5cba15edeece70de4db71384a916164f773f48631c6fe4c4389016142b4dd4a8c33e41092f91f778a2a690a069ab95e200892b42b52c58cfdf75
6
+ metadata.gz: '036039217060cb4201c7fd673b9365738fe913cb9ca0863fd785ae3467d21b80dbf75124305179f7d8daef047fc4bd610339e200ef7962369be50049e082e961'
7
+ data.tar.gz: be21f0886b1254b9129b1777e95513925e7afbdad13a9654c414246b654465468e6accb23a1c4342c8ac5c930fcc030a59f7e0263326f725bd0bedb3e5b8e6a9
@@ -4,7 +4,7 @@ module Playbook
4
4
  module PbSampleHelper
5
5
  def kits_used(sample)
6
6
  code = get_raw_code(sample, "rails")
7
- kits_array = code.scan(/pb_rails\("(\w+)(?:"|\/)/)
7
+ kits_array = code.scan(%r{pb_rails\("(\w+)(?:"|/)})
8
8
  kits_array.uniq
9
9
  end
10
10
 
@@ -112,3 +112,4 @@ export PbTypeahead from './pb_typeahead'
112
112
  export PbPopover from './pb_popover'
113
113
  export PbTable from './pb_table'
114
114
  export PbTooltip from './pb_tooltip'
115
+ export PbTextarea from './pb_textarea'
@@ -3,13 +3,11 @@ examples:
3
3
  rails:
4
4
  - background_light: Light
5
5
  - background_white: White
6
- - background_dark: Dark
7
6
  - background_gradient: Gradient
8
7
  - background_image: Image
9
8
 
10
9
  react:
11
10
  - background_light: Light
12
11
  - background_white: White
13
- - background_dark: Dark
14
12
  - background_gradient: Gradient
15
13
  - background_image: Image
@@ -1,6 +1,5 @@
1
1
  export { default as BackgroundLight } from './_background_light.jsx'
2
2
  export { default as BackgroundWhite } from './_background_white.jsx'
3
- export { default as BackgroundDark } from './_background_dark.jsx'
4
3
  export { default as BackgroundGradient } from './_background_gradient.jsx'
5
4
  export { default as BackgroundImage } from './_background_image.jsx'
6
5
 
@@ -2,10 +2,6 @@ examples:
2
2
 
3
3
  rails:
4
4
  - date_range_stacked_default: Default
5
- - date_range_stacked_dark: Dark
6
-
7
5
 
8
6
  react:
9
7
  - date_range_stacked_default: Default
10
- - date_range_stacked_dark: Dark
11
-
@@ -1,2 +1 @@
1
1
  export { default as DateRangeStackedDefault } from './_date_range_stacked_default.jsx'
2
- export { default as DateRangeStackedDark } from './_date_range_stacked_dark.jsx'
@@ -6,9 +6,6 @@ examples:
6
6
  - date_stacked_reverse: Day & Month Reverse
7
7
  - date_stacked_sizes: Sizes
8
8
  - date_stacked_align: Alignment
9
- - date_stacked_dark: Dark
10
-
11
-
12
9
 
13
10
  react:
14
11
  - date_stacked_default: Default
@@ -16,7 +13,3 @@ examples:
16
13
  - date_stacked_reverse: Day & Month Reverse
17
14
  - date_stacked_sizes: Sizes
18
15
  - date_stacked_align: Alignment
19
- - date_stacked_dark: Dark
20
-
21
-
22
-
@@ -3,5 +3,3 @@ export { default as DateStackedNotCurrentYear } from './_date_stacked_not_curren
3
3
  export { default as DateStackedReverse } from './_date_stacked_reverse.jsx'
4
4
  export { default as DateStackedSizes } from './_date_stacked_sizes.jsx'
5
5
  export { default as DateStackedAlign } from './_date_stacked_align.jsx'
6
- export { default as DateStackedDark } from './_date_stacked_dark.jsx'
7
-
@@ -2,10 +2,6 @@ examples:
2
2
 
3
3
  rails:
4
4
  - date_time_stacked_default: Default
5
- - date_time_stacked_dark: Dark
6
-
7
5
 
8
6
  react:
9
7
  - date_time_stacked_default: Default
10
- - date_time_stacked_dark: Dark
11
-
@@ -1,2 +1 @@
1
1
  export { default as DateTimeStackedDefault } from './_date_time_stacked_default.jsx'
2
- export { default as DateTimeStackedDark } from './_date_time_stacked_dark.jsx'
@@ -2,8 +2,6 @@ examples:
2
2
 
3
3
  rails:
4
4
  - date_year_stacked_default: Default
5
- - date_year_stacked_dark: Dark
6
5
 
7
6
  react:
8
7
  - date_year_stacked_default: Default
9
- - date_year_stacked_dark: Dark
@@ -1,2 +1 @@
1
1
  export { default as DateYearStackedDefault } from './_date_year_stacked_default.jsx'
2
- export { default as DateYearStackedDark } from './_date_year_stacked_dark.jsx'
@@ -6,6 +6,7 @@ import { globalProps } from '../utilities/globalProps.js'
6
6
 
7
7
  type DistributionBarProps = {
8
8
  className?: string,
9
+ colors: array,
9
10
  data?: string,
10
11
  id?: string,
11
12
  size?: "lg" | "sm",
@@ -18,13 +19,13 @@ const normalizeCharacters = (widths) => {
18
19
  })
19
20
  }
20
21
 
21
- const barValues = (normalizedValues) => {
22
+ const barValues = (normalizedValues, colors) => {
22
23
  const arrSum = (value) => value.reduce((a, b) => a + b, 0)
23
24
  const widthSum = arrSum(normalizedValues)
24
25
  return normalizedValues.map((value, i) => {
25
26
  return (
26
27
  <div
27
- className="pb_distribution_width"
28
+ className={classnames('pb_distribution_width', colors[i] ? `color_${colors[i]}` : '')}
28
29
  key={i}
29
30
  style={{ width: `${(value * 100) / widthSum}%` }}
30
31
  />
@@ -33,12 +34,16 @@ const barValues = (normalizedValues) => {
33
34
  }
34
35
 
35
36
  const DistributionBar = (props: DistributionBarProps) => {
36
- const { size = 'lg', widths = [1] } = props
37
+ const {
38
+ size = 'lg',
39
+ widths = [1],
40
+ colors = [],
41
+ } = props
37
42
  const normalizedValues = normalizeCharacters(widths)
38
43
 
39
44
  return (
40
45
  <div className={classnames(`pb_distribution_bar_${size}`, globalProps(props))}>
41
- {barValues(normalizedValues)}
46
+ {barValues(normalizedValues, colors)}
42
47
  </div>
43
48
  )
44
49
  }
@@ -5,21 +5,26 @@
5
5
  $small_bar: 8px;
6
6
  $large_bar: 36px;
7
7
  display: flex;
8
+ border-radius: $large_bar;
9
+ overflow: auto;
8
10
  .pb_distribution_width {
9
11
  height: 100%;
10
12
  display: inline-block;
11
- @for $i from 1 through length($bar_colors) {
12
- &:nth-child(#{length($bar_colors)}n+#{$i}) {
13
- background-color: nth($bar_colors, $i);
13
+ @each $name, $color in $data_colors {
14
+ &:nth-child(#{length($data_colors)}n+#{index(($data_colors), ($name $color))}) {
15
+ background-color: $color;
16
+ }
17
+ &.color_#{$name} {
18
+ background-color: $color !important;
14
19
  }
15
20
  }
16
21
  &:first-child {
17
- border-top-left-radius: 18px;
18
- border-bottom-left-radius: 18px;
22
+ border-top-left-radius: $large_bar;
23
+ border-bottom-left-radius: $large_bar;
19
24
  }
20
25
  &:last-child {
21
- border-top-right-radius: 18px;
22
- border-bottom-right-radius: 18px;
26
+ border-top-right-radius: $large_bar;
27
+ border-bottom-right-radius: $large_bar;
23
28
  }
24
29
  }
25
30
  &[class*=_sm] {
@@ -11,7 +11,9 @@ module Playbook
11
11
  values: %w[lg sm],
12
12
  default: "lg"
13
13
  prop :widths, type: Playbook::Props::NumberArray,
14
- default: [1]
14
+ default: [1]
15
+ prop :colors, type: Playbook::Props::Array,
16
+ default: []
15
17
 
16
18
  def classname
17
19
  generate_classname("pb_distribution_bar", size)
@@ -27,6 +29,7 @@ module Playbook
27
29
  {
28
30
  size: size,
29
31
  widths: widths,
32
+ colors: colors,
30
33
  }
31
34
  end
32
35
  end
@@ -0,0 +1,4 @@
1
+ <%= pb_rails("distribution_bar", props: {
2
+ widths: [4,5,3],
3
+ colors: ["data_7", "data_1", "data_6"]
4
+ }) %>
@@ -0,0 +1,18 @@
1
+ import React from 'react'
2
+ import DistributionBar from '../_distribution_bar.jsx'
3
+
4
+ const DistributionBarCustomColors = (props) => {
5
+ return (
6
+ <React.Fragment>
7
+ <div>
8
+ <DistributionBar
9
+ colors={['data_7', 'data_1', 'data_6']}
10
+ widths={[4, 5, 3]}
11
+ {...props}
12
+ />
13
+ </div>
14
+ </React.Fragment>
15
+ )
16
+ }
17
+
18
+ export default DistributionBarCustomColors
@@ -0,0 +1 @@
1
+ You can customize the order of the colors you would like to use by using the `colors` prop. Only the data colors will work for Playbook charts. See the [design page](/visual_guidelines) for reference.
@@ -2,8 +2,10 @@ examples:
2
2
 
3
3
  rails:
4
4
  - distribution_bar_default: Default
5
+ - distribution_bar_custom_colors: Custom Colors
5
6
 
6
7
 
7
8
  react:
8
9
  - distribution_bar_default: Default
10
+ - distribution_bar_custom_colors: Custom Colors
9
11
 
@@ -1 +1,2 @@
1
1
  export { default as DistributionBarDefault } from './_distribution_bar_default.jsx'
2
+ export { default as DistributionBarCustomColors } from './_distribution_bar_custom_colors.jsx'
@@ -2,7 +2,7 @@
2
2
 
3
3
  import React from 'react'
4
4
  import { isEmpty, map, omitBy } from 'lodash'
5
- import { Caption, Title } from '../../'
5
+ import { Body, Caption, Title } from '../../'
6
6
 
7
7
  export type FilterDescription = {
8
8
  [key: string]: ?string | boolean,
@@ -20,6 +20,17 @@ const CurrentFilters = ({ dark, filters }: CurrentFiltersProps) => {
20
20
 
21
21
  return (
22
22
  <div className="maskContainer">
23
+ <If condition={isEmpty(filters)}>
24
+ <div className="filters">
25
+ <Body
26
+ color="light"
27
+ paddingLeft="xs"
28
+ size={4}
29
+ tag="h4"
30
+ text="No Filter Selected"
31
+ />
32
+ </div>
33
+ </If>
23
34
  <If condition={!isEmpty(filters)}>
24
35
  <div className="filters">
25
36
  <div className="left_gradient" />
@@ -38,3 +38,44 @@
38
38
  <% end %>
39
39
  <% end %>
40
40
  <% end %>
41
+
42
+ <br>
43
+ <br>
44
+
45
+ <%=
46
+ pb_rails("filter", props: {
47
+ id: "def2",
48
+
49
+ sort_menu: [
50
+ { item: "Popularity", link: "?q[sorts]=managers_popularity+asc", active: true, direction: "desc" },
51
+ { item: "Mananger's Title", link: "?q[sorts]=managers_title+asc", active: false },
52
+ { item: "Manager's Name", link: "?q[sorts]=managers_name+asc", active: false },
53
+ ],
54
+ template: "default",
55
+ results: 0,
56
+ }) do
57
+ %>
58
+ <%
59
+ example_collection = [
60
+ OpenStruct.new(name: "Alabama", value: 1),
61
+ OpenStruct.new(name: "Alaska", value: 2),
62
+ OpenStruct.new(name: "Arizona", value: 3),
63
+ OpenStruct.new(name: "Arkansas", value: 4),
64
+ OpenStruct.new(name: "California", value: 5),
65
+ OpenStruct.new(name: "Colorado", value: 6),
66
+ OpenStruct.new(name: "Connecticut", value: 7),
67
+ OpenStruct.new(name: "Delaware", value: 8),
68
+ OpenStruct.new(name: "Florida", value: 9),
69
+ OpenStruct.new(name: "Georgia", value: 10),
70
+ ]
71
+ %>
72
+ <%= pb_rails("form", props: { form_system_options: { scope: :example, method: :get } }) do |form| %>
73
+ <%= form.text_field :example_text_field, props: { label: true } %>
74
+ <%= form.collection_select :example_collection_select, example_collection, :value, :name, props: { label: true } %>
75
+
76
+ <%= form.actions do |action| %>
77
+ <%= action.submit props: { text: "Apply", data: { disable_with: "<i class='far fa-spinner fa-spin mr-3'></i>Searching...".html_safe },}%>
78
+ <%= action.button props: { type: "reset", text: "Clear", variant: "secondary" } %>
79
+ <% end %>
80
+ <% end %>
81
+ <% end %>
@@ -10,51 +10,98 @@ const FilterDefault = (props) => {
10
10
  { value: 'A Galaxy Far Far Away Like Really Far Away' },
11
11
  ]
12
12
  return (
13
- <Filter
14
- double
15
- filters={{
16
- 'Full Name': 'John Wick',
17
- 'City': 'San Francisco',
18
- }}
19
- results={1}
20
- sortOptions={{
21
- popularity: 'Popularity',
22
- // eslint-disable-next-line
23
- manager_title: 'Manager\'s Title',
24
- // eslint-disable-next-line
25
- manager_name: 'Manager\'s Name',
26
- }}
27
- sortValue={[{ name: 'popularity', dir: 'desc' }]}
28
- {...props}
29
- >
30
- <TextInput
31
- label="Full Name"
32
- placeholder="Enter name"
33
- {...props}
34
- />
35
13
 
36
- <Select
37
- blankSelection="Select One..."
38
- label="Territory"
39
- name="location"
40
- options={options}
14
+ <>
15
+ <Filter
16
+ double
17
+ filters={{
18
+ 'Full Name': 'John Wick',
19
+ 'City': 'San Francisco',
20
+ }}
21
+ results={1}
22
+ sortOptions={{
23
+ popularity: 'Popularity',
24
+ // eslint-disable-next-line
25
+ manager_title: 'Manager\'s Title',
26
+ // eslint-disable-next-line
27
+ manager_name: 'Manager\'s Name',
28
+ }}
29
+ sortValue={[{ name: 'popularity', dir: 'desc' }]}
41
30
  {...props}
42
- />
43
- <Flex
44
- spacing="between"
31
+ >
32
+ <TextInput
33
+ label="Full Name"
34
+ placeholder="Enter name"
35
+ {...props}
36
+ />
37
+
38
+ <Select
39
+ blankSelection="Select One..."
40
+ label="Territory"
41
+ name="location"
42
+ options={options}
43
+ {...props}
44
+ />
45
+ <Flex
46
+ spacing="between"
47
+ {...props}
48
+ >
49
+ <Button
50
+ text="Apply"
51
+ {...props}
52
+ />
53
+ <Button
54
+ text="Clear"
55
+ variant="secondary"
56
+ {...props}
57
+ />
58
+ </Flex>
59
+ </Filter>
60
+
61
+ <br />
62
+
63
+ <Filter
64
+ double
65
+ results={1}
66
+ sortOptions={{
67
+ popularity: 'Popularity',
68
+ // eslint-disable-next-line
69
+ manager_title: 'Manager\'s Title',
70
+ // eslint-disable-next-line
71
+ manager_name: 'Manager\'s Name',
72
+ }}
73
+ sortValue={[{ name: 'popularity', dir: 'desc' }]}
45
74
  {...props}
46
75
  >
47
- <Button
48
- text="Apply"
76
+ <TextInput
77
+ label="Example Text Field"
78
+ placeholder="Enter Text"
49
79
  {...props}
50
80
  />
51
- <Button
52
- text="Clear"
53
- variant="secondary"
81
+
82
+ <Select
83
+ blankSelection="Select One..."
84
+ label="Example Collection Select"
85
+ name="Collection Select"
86
+ options={options}
54
87
  {...props}
55
88
  />
56
- </Flex>
57
- </Filter>
89
+ <Flex
90
+ spacing="between"
91
+ {...props}
92
+ >
93
+ <Button
94
+ text="Apply"
95
+ {...props}
96
+ />
97
+ <Button
98
+ text="Clear"
99
+ variant="secondary"
100
+ {...props}
101
+ />
102
+ </Flex>
103
+ </Filter>
104
+ </>
58
105
  )
59
106
  }
60
107