playbook_ui 14.25.0.pre.alpha.testingcss9713 → 14.25.0.pre.alpha.testingcss9751

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 (169) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/pb_avatar/avatar.test.js +1 -1
  3. data/app/pb_kits/playbook/pb_badge/_badge.scss +120 -12
  4. data/app/pb_kits/playbook/pb_body/_body.scss +108 -35
  5. data/app/pb_kits/playbook/pb_body/_body_mixins.scss +1 -1
  6. data/app/pb_kits/playbook/pb_bread_crumbs/_bread_crumbs.scss +16 -29
  7. data/app/pb_kits/playbook/pb_button/_button.scss +39 -31
  8. data/app/pb_kits/playbook/pb_button/_button.tsx +12 -12
  9. data/app/pb_kits/playbook/pb_button/_button_mixins.scss +2 -2
  10. data/app/pb_kits/playbook/pb_button/button.rb +11 -18
  11. data/app/pb_kits/playbook/pb_button/button.test.js +3 -3
  12. data/app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.scss +82 -73
  13. data/app/pb_kits/playbook/pb_button_toolbar/_button_toolbar_dark.scss +32 -33
  14. data/app/pb_kits/playbook/pb_button_toolbar/_button_toolbar_mixins.scss +1 -1
  15. data/app/pb_kits/playbook/pb_button_toolbar/button_toolbar.test.js +2 -2
  16. data/app/pb_kits/playbook/pb_caption/_caption.scss +100 -17
  17. data/app/pb_kits/playbook/pb_caption/_caption_mixin.scss +1 -8
  18. data/app/pb_kits/playbook/pb_checkbox/_checkbox.scss +11 -2
  19. data/app/pb_kits/playbook/pb_circle_icon_button/_circle_icon_button.scss +6 -6
  20. data/app/pb_kits/playbook/pb_circle_icon_button/circle_icon_button.test.js +1 -1
  21. data/app/pb_kits/playbook/pb_collapsible/_collapsible.scss +1 -1
  22. data/app/pb_kits/playbook/pb_copy_button/copy_button.test.jsx +19 -19
  23. data/app/pb_kits/playbook/pb_currency/_currency.scss +118 -33
  24. data/app/pb_kits/playbook/pb_dashboard_value/_dashboard_value.scss +16 -6
  25. data/app/pb_kits/playbook/pb_date/_date.scss +14 -16
  26. data/app/pb_kits/playbook/pb_date_picker/sass_partials/_inline_styles.scss +10 -10
  27. data/app/pb_kits/playbook/pb_date_range_inline/_date_range_inline.scss +25 -19
  28. data/app/pb_kits/playbook/pb_date_range_inline/_date_range_inline.tsx +1 -1
  29. data/app/pb_kits/playbook/pb_date_range_stacked/date_range_stacked.test.js +2 -2
  30. data/app/pb_kits/playbook/pb_date_stacked/_date_stacked.scss +66 -26
  31. data/app/pb_kits/playbook/pb_date_stacked/date_stacked.test.js +2 -2
  32. data/app/pb_kits/playbook/pb_date_time/_date_time.scss +5 -12
  33. data/app/pb_kits/playbook/pb_date_time_stacked/_date_time_stacked.scss +2 -3
  34. data/app/pb_kits/playbook/pb_date_year_stacked/_date_year_stacked.scss +17 -14
  35. data/app/pb_kits/playbook/pb_date_year_stacked/date_year_stacked.test.js +1 -1
  36. data/app/pb_kits/playbook/pb_detail/_detail.scss +86 -21
  37. data/app/pb_kits/playbook/pb_dialog/_dialog.scss +463 -65
  38. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_loading.html.erb +16 -2
  39. data/app/pb_kits/playbook/pb_distribution_bar/_distribution_bar.scss +10 -7
  40. data/app/pb_kits/playbook/pb_dropdown/_dropdown.scss +2 -2
  41. data/app/pb_kits/playbook/pb_dropdown/dropdown.test.jsx +6 -6
  42. data/app/pb_kits/playbook/pb_empty_state/_empty_state.scss +4 -4
  43. data/app/pb_kits/playbook/pb_file_upload/_file_upload.scss +20 -9
  44. data/app/pb_kits/playbook/pb_file_upload/file_upload.html.erb +1 -1
  45. data/app/pb_kits/playbook/pb_filter/_filter.scss +3 -3
  46. data/app/pb_kits/playbook/pb_fixed_confirmation_toast/_fixed_confirmation_toast.scss +65 -29
  47. data/app/pb_kits/playbook/pb_fixed_confirmation_toast/_fixed_confirmation_toast.tsx +1 -2
  48. data/app/pb_kits/playbook/pb_fixed_confirmation_toast/fixed_confirmation_toast.test.js +1 -1
  49. data/app/pb_kits/playbook/pb_flex/_flex_item.tsx +1 -1
  50. data/app/pb_kits/playbook/pb_form_group/_error_state_mixin.scss +1 -1
  51. data/app/pb_kits/playbook/pb_form_group/_form_group.scss +48 -48
  52. data/app/pb_kits/playbook/pb_form_pill/_form_pill.scss +381 -344
  53. data/app/pb_kits/playbook/pb_form_pill/_form_pill.test.jsx +4 -4
  54. data/app/pb_kits/playbook/pb_form_pill/_form_pill.tsx +8 -7
  55. data/app/pb_kits/playbook/pb_form_pill/form_pill.rb +9 -2
  56. data/app/pb_kits/playbook/pb_home_address_street/home_adress_street.test.js +2 -2
  57. data/app/pb_kits/playbook/pb_icon_button/_icon_button.scss +4 -4
  58. data/app/pb_kits/playbook/pb_icon_circle/_icon_circle.scss +40 -39
  59. data/app/pb_kits/playbook/pb_icon_circle/icon_circle.rb +1 -1
  60. data/app/pb_kits/playbook/pb_icon_stat_value/_icon_stat_value.scss +15 -15
  61. data/app/pb_kits/playbook/pb_icon_stat_value/icon_stat_value.test.js +1 -1
  62. data/app/pb_kits/playbook/pb_icon_value/_icon_value.scss +16 -15
  63. data/app/pb_kits/playbook/pb_image/_image.scss +41 -36
  64. data/app/pb_kits/playbook/pb_label_value/_label_value.scss +3 -2
  65. data/app/pb_kits/playbook/pb_label_value/label_value.test.js +2 -2
  66. data/app/pb_kits/playbook/pb_legend/_legend.scss +66 -16
  67. data/app/pb_kits/playbook/pb_legend/legend.test.js +1 -1
  68. data/app/pb_kits/playbook/pb_lightbox/lightbox.scss +4 -4
  69. data/app/pb_kits/playbook/pb_lightbox/lightbox.test.jsx +1 -1
  70. data/app/pb_kits/playbook/pb_link/_link.scss +113 -19
  71. data/app/pb_kits/playbook/pb_list/_list.scss +9 -9
  72. data/app/pb_kits/playbook/pb_loading_inline/_loading_inline.scss +13 -11
  73. data/app/pb_kits/playbook/pb_map/_map.scss +1 -1
  74. data/app/pb_kits/playbook/pb_map/docs/_map_default.jsx +1 -1
  75. data/app/pb_kits/playbook/pb_map/docs/_map_with_custom_button.jsx +1 -1
  76. data/app/pb_kits/playbook/pb_map/docs/_map_with_plugin.jsx +1 -1
  77. data/app/pb_kits/playbook/pb_message/_message.scss +20 -15
  78. data/app/pb_kits/playbook/pb_message/_message.tsx +1 -0
  79. data/app/pb_kits/playbook/pb_message/_message_mixins.scss +5 -12
  80. data/app/pb_kits/playbook/pb_message/message.html.erb +1 -1
  81. data/app/pb_kits/playbook/pb_multi_level_select/_multi_level_select.scss +4 -1
  82. data/app/pb_kits/playbook/pb_multiple_users/_multiple_users.scss +16 -15
  83. data/app/pb_kits/playbook/pb_multiple_users_stacked/_multiple_users_stacked.scss +10 -10
  84. data/app/pb_kits/playbook/pb_nav/_bold_mixin.scss +9 -9
  85. data/app/pb_kits/playbook/pb_nav/_collapsible_nav.scss +1 -1
  86. data/app/pb_kits/playbook/pb_online_status/_online_status.scss +19 -15
  87. data/app/pb_kits/playbook/pb_online_status/_online_status.tsx +1 -1
  88. data/app/pb_kits/playbook/pb_online_status/online_status.rb +5 -4
  89. data/app/pb_kits/playbook/pb_online_status/online_status.test.js +2 -2
  90. data/app/pb_kits/playbook/pb_overlay/_overlay.scss +1 -1
  91. data/app/pb_kits/playbook/pb_overlay/overlay.rb +1 -1
  92. data/app/pb_kits/playbook/pb_passphrase/_passphrase.scss +5 -2
  93. data/app/pb_kits/playbook/pb_phone_number_input/_phone_number_input.scss +1 -1
  94. data/app/pb_kits/playbook/pb_pill/_pill.scss +23 -21
  95. data/app/pb_kits/playbook/pb_progress_pills/_progress_pills.scss +12 -10
  96. data/app/pb_kits/playbook/pb_progress_simple/_progress_simple.scss +106 -31
  97. data/app/pb_kits/playbook/pb_progress_step/_progress_step.scss +37 -37
  98. data/app/pb_kits/playbook/pb_radio/_radio.scss +71 -52
  99. data/app/pb_kits/playbook/pb_radio/_radio.tsx +1 -1
  100. data/app/pb_kits/playbook/pb_radio/docs/_radio_react_hook.jsx +0 -3
  101. data/app/pb_kits/playbook/pb_section_separator/_section_separator.scss +80 -69
  102. data/app/pb_kits/playbook/pb_section_separator/_section_separator.tsx +9 -1
  103. data/app/pb_kits/playbook/pb_section_separator/_section_separator_mixin.scss +1 -1
  104. data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_color.jsx +3 -1
  105. data/app/pb_kits/playbook/pb_section_separator/section_separator.rb +7 -1
  106. data/app/pb_kits/playbook/pb_select/_select.scss +2 -2
  107. data/app/pb_kits/playbook/pb_selectable_card/_selectable_card.scss +6 -2
  108. data/app/pb_kits/playbook/pb_selectable_card_icon/_selectable_card_icon.scss +13 -4
  109. data/app/pb_kits/playbook/pb_selectable_icon/_selectable_icon.scss +39 -29
  110. data/app/pb_kits/playbook/pb_selectable_list/_item.tsx +2 -0
  111. data/app/pb_kits/playbook/pb_selectable_list/_selectable_list.scss +8 -11
  112. data/app/pb_kits/playbook/pb_selectable_list/selectable_list.test.js +24 -25
  113. data/app/pb_kits/playbook/pb_selectable_list/selectable_list_item.html.erb +2 -2
  114. data/app/pb_kits/playbook/pb_source/_source.scss +5 -5
  115. data/app/pb_kits/playbook/pb_star_rating/star_rating.test.js +1 -1
  116. data/app/pb_kits/playbook/pb_stat_value/_stat_value.scss +1 -1
  117. data/app/pb_kits/playbook/pb_table/styles/_alignment.scss +1 -1
  118. data/app/pb_kits/playbook/pb_table/styles/_content.scss +1 -1
  119. data/app/pb_kits/playbook/pb_table/styles/_desktop_collapse.scss +1 -1
  120. data/app/pb_kits/playbook/pb_table/styles/_headers.scss +1 -1
  121. data/app/pb_kits/playbook/pb_table/styles/_hover.scss +1 -1
  122. data/app/pb_kits/playbook/pb_table/styles/_mobile.scss +1 -1
  123. data/app/pb_kits/playbook/pb_table/styles/_mobile_collapse.scss +1 -1
  124. data/app/pb_kits/playbook/pb_table/styles/_outer_padding.scss +1 -1
  125. data/app/pb_kits/playbook/pb_table/styles/_reset.scss +1 -1
  126. data/app/pb_kits/playbook/pb_table/styles/_scroll.scss +12 -12
  127. data/app/pb_kits/playbook/pb_table/styles/_side_highlight.scss +2 -2
  128. data/app/pb_kits/playbook/pb_table/styles/_single-line.scss +1 -1
  129. data/app/pb_kits/playbook/pb_table/styles/_striped.scss +1 -1
  130. data/app/pb_kits/playbook/pb_table/styles/_structure.scss +1 -1
  131. data/app/pb_kits/playbook/pb_table/styles/_table-card.scss +1 -1
  132. data/app/pb_kits/playbook/pb_table/styles/_table-dark.scss +2 -2
  133. data/app/pb_kits/playbook/pb_table/styles/_table_header.scss +4 -4
  134. data/app/pb_kits/playbook/pb_table/styles/_tablet_collapse.scss +1 -1
  135. data/app/pb_kits/playbook/pb_table/styles/_vertical_border.scss +1 -1
  136. data/app/pb_kits/playbook/pb_text_input/_text_input.scss +4 -4
  137. data/app/pb_kits/playbook/pb_textarea/_textarea.scss +5 -5
  138. data/app/pb_kits/playbook/pb_time/_time.scss +43 -16
  139. data/app/pb_kits/playbook/pb_time_range_inline/_time_range_inline.scss +14 -14
  140. data/app/pb_kits/playbook/pb_time_stacked/_time_stacked.scss +5 -8
  141. data/app/pb_kits/playbook/pb_timeline/_timeline.scss +41 -41
  142. data/app/pb_kits/playbook/pb_timestamp/_timestamp.scss +4 -4
  143. data/app/pb_kits/playbook/pb_title/_title.scss +41 -38
  144. data/app/pb_kits/playbook/pb_title/_title.tsx +17 -8
  145. data/app/pb_kits/playbook/pb_title/_title_mixin.scss +2 -2
  146. data/app/pb_kits/playbook/pb_title/title.rb +20 -10
  147. data/app/pb_kits/playbook/pb_title/title.test.js +4 -4
  148. data/app/pb_kits/playbook/pb_title_count/_title_count.scss +19 -8
  149. data/app/pb_kits/playbook/pb_title_detail/_title_detail.scss +10 -11
  150. data/app/pb_kits/playbook/pb_toggle/_toggle.scss +1 -1
  151. data/app/pb_kits/playbook/pb_tooltip/_tooltip.scss +1 -1
  152. data/app/pb_kits/playbook/pb_typeahead/_typeahead.scss +10 -10
  153. data/app/pb_kits/playbook/pb_typeahead/_typeahead.test.jsx +3 -3
  154. data/app/pb_kits/playbook/pb_user/_user.scss +13 -13
  155. data/app/pb_kits/playbook/pb_user/user.test.js +1 -1
  156. data/app/pb_kits/playbook/pb_user_badge/_user_badge.scss +23 -8
  157. data/app/pb_kits/playbook/pb_weekday_stacked/_weekday_stacked.scss +10 -10
  158. data/app/pb_kits/playbook/pb_weekday_stacked/weekday_stacked.test.jsx +3 -3
  159. data/dist/chunks/{_line_graph-0Y0wuiB9.js → _line_graph-Dv_ODxW3.js} +1 -1
  160. data/dist/chunks/_typeahead-CD5RAaaP.js +6 -0
  161. data/dist/chunks/{_weekday_stacked-Dblcf2V8.js → _weekday_stacked-Bv6tOPKC.js} +2 -2
  162. data/dist/chunks/vendor.js +1 -1
  163. data/dist/playbook-doc.js +2 -2
  164. data/dist/playbook-rails-react-bindings.js +1 -1
  165. data/dist/playbook-rails.js +1 -1
  166. data/dist/playbook.css +1 -1
  167. data/lib/playbook/version.rb +1 -1
  168. metadata +5 -5
  169. data/dist/chunks/_typeahead-B2gV75O0.js +0 -6
@@ -1,73 +1,76 @@
1
1
  @import "../tokens/titles";
2
2
  @import "../tokens/colors";
3
+ @import "../tokens/typography";
3
4
  @import "../tokens/screen_sizes";
4
5
  @import './title_mixin';
5
6
 
6
7
  .pb_title_kit {
7
- &._1 {
8
+ // Base title styles - default to title 3 styling
9
+ @include pb_title_3;
10
+
11
+ // Size-based styles (these will override the base)
12
+ &.pb_title_1 {
8
13
  @include pb_title_1;
9
- @include title_colors;
10
14
  @include pb_title_bold;
11
15
  }
12
16
 
13
- &._2 {
17
+ &.pb_title_2 {
14
18
  @include pb_title_2;
15
- @include title_colors;
16
19
  @include pb_title_bold;
17
20
  }
18
21
 
19
- &._3 {
22
+ &.pb_title_3 {
20
23
  @include pb_title_3;
21
- @include title_colors;
22
24
  @include pb_title_bold;
23
25
  }
24
26
 
25
- &._4 {
27
+ &.pb_title_4 {
26
28
  @include pb_title_4;
27
- @include title_colors;
28
29
  }
29
30
 
30
- &._thin {
31
+ &.pb_title_thin {
31
32
  @include pb_title_thin;
32
33
  }
33
34
 
34
- &._display {
35
+ // Color classes
36
+ @include title_colors;
37
+
38
+ // Display sizes
39
+ &.pb_title_display {
35
40
  font-size: clamp(24px, calc(1.25vw + 5.3vw), 128px);
36
41
  }
37
42
 
38
- &._dynamic {
39
- &._xs {
40
- font-size: min(2vw, 80vw / 16);
41
- }
42
-
43
- &._sm {
44
- font-size: min(2.5vw, 96vw / 16);
45
- }
46
-
47
- &._md {
48
- font-size: min(4vw, 160vw / 16);
49
- }
50
-
51
- &._lg {
52
- font-size: min(5vw, 192vw / 16);
53
- }
54
-
55
- &._xl {
56
- font-size: min(6vw, 224vw / 16);
57
- }
58
-
59
- &._xxl {
60
- font-size: min(8vw, 256vw / 16);
61
- }
43
+ // Dynamic sizes
44
+ &.pb_title_dynamic_xs {
45
+ font-size: min(2vw, 80vw / 16);
46
+ }
47
+
48
+ &.pb_title_dynamic_sm {
49
+ font-size: min(2.5vw, 96vw / 16);
50
+ }
51
+
52
+ &.pb_title_dynamic_md {
53
+ font-size: min(4vw, 160vw / 16);
62
54
  }
63
-
64
55
 
56
+ &.pb_title_dynamic_lg {
57
+ font-size: min(5vw, 192vw / 16);
58
+ }
59
+
60
+ &.pb_title_dynamic_xl {
61
+ font-size: min(6vw, 224vw / 16);
62
+ }
63
+
64
+ &.pb_title_dynamic_xxl {
65
+ font-size: min(8vw, 256vw / 16);
66
+ }
65
67
 
68
+ // Responsive breakpoint classes
66
69
  @each $size, $size_value in $breakpoints_grid {
67
70
  @for $title_size_value from 1 through 4 {
68
71
  $min_size: map-get($size_value, "min");
69
72
  $max_size: map-get($size_value, "max");
70
- &[class*=_#{$size}_#{$title_size_value}] {
73
+ &.pb_title_#{$size}_#{$title_size_value} {
71
74
  @include break_on($min_size, $max_size) {
72
75
  @if $title_size_value == 1 { @include pb_title_1; }
73
76
  @else if $title_size_value == 2 { @include pb_title_2; }
@@ -83,9 +86,9 @@
83
86
  &.dark {
84
87
  @include title_dark;
85
88
  @each $name, $color in $pb_dark_title_colors {
86
- &[class*="_#{$name}"] {
89
+ &.pb_title_#{$name} {
87
90
  color: $color;
88
91
  }
89
92
  }
90
93
  }
91
- }
94
+ }
@@ -43,32 +43,41 @@ const Title = (props: TitleProps): React.ReactElement => {
43
43
  const ariaProps: {[key: string]: string | number} = buildAriaProps(aria)
44
44
  const dataProps: {[key: string]: string | number} = buildDataProps(data)
45
45
  const htmlProps = buildHtmlProps(htmlOptions)
46
- const getBold = bold ? '' : 'thin'
47
46
  const isSizeNumberOrString = typeof size === "number" || typeof size === "string"
48
47
 
49
48
  const buildResponsiveSizeCss = () => {
50
- let css = ''
49
+ const classes: string[] = []
51
50
 
52
51
  if (!isSizeNumberOrString) {
53
52
  Object.entries(size).forEach((sizeObj) => {
54
- css += `pb_title_kit_${sizeObj[0]}_${sizeObj[1]} `
53
+ classes.push(`pb_title_${sizeObj[0]}_${sizeObj[1]}`)
55
54
  })
56
55
  }
57
56
 
58
- return css.trim()
57
+ return classes
59
58
  }
60
59
 
61
60
  const buildDisplaySize = () => {
62
61
  if (displaySize) {
63
- return `pb_title_kit_dynamic_${displaySize}`
62
+ return [`pb_title_dynamic_${displaySize}`]
64
63
  }
64
+ return []
65
65
  }
66
66
 
67
+ const titleClasses = ['pb_title_kit']
68
+
69
+ if (isSizeNumberOrString) {
70
+ titleClasses.push(`pb_title_${size}`)
71
+ }
72
+ if (variant) titleClasses.push(`pb_title_${variant}`)
73
+ if (color) titleClasses.push(`pb_title_${color}`)
74
+ if (!bold) titleClasses.push('pb_title_thin')
75
+ titleClasses.push(...buildDisplaySize())
76
+ titleClasses.push(...buildResponsiveSizeCss())
77
+
67
78
  const classes = classnames(
68
- buildCss('pb_title_kit', isSizeNumberOrString ? `size_${size}` : "", variant, color, getBold),
79
+ titleClasses.join(' '),
69
80
  globalProps(props),
70
- buildDisplaySize(),
71
- buildResponsiveSizeCss(),
72
81
  className
73
82
  )
74
83
  const Tag: React.ReactElement | any = `${tag}`
@@ -20,7 +20,7 @@ $pb_dark_title_colors: (
20
20
 
21
21
  @mixin title_colors {
22
22
  @each $name, $color in $pb_title_colors {
23
- &[class*=_#{$name}] {
23
+ &.pb_title_#{$name} {
24
24
  color: $color
25
25
  }
26
26
  }
@@ -28,4 +28,4 @@ $pb_dark_title_colors: (
28
28
 
29
29
  @mixin title_dark {
30
30
  color: $text_dk_default;
31
- }
31
+ }
@@ -21,36 +21,46 @@ module Playbook
21
21
  default: nil
22
22
 
23
23
  def classname
24
+ title_classes = ["pb_title_kit"]
25
+
24
26
  if is_size_responsive
25
- generate_classname("pb_title_kit", variant, color, is_bold) + generate_responsive_size_classname
27
+ title_classes << "pb_title_#{variant}" if variant.present?
28
+ title_classes << "pb_title_#{color}" if color.present?
29
+ title_classes << "pb_title_#{is_bold}" if is_bold.present?
30
+ title_classes += generate_responsive_size_classes
26
31
  else
27
- generate_classname("pb_title_kit", size, variant, color, is_bold) + generate_display_size
32
+ title_classes << "pb_title_#{size}" if size.present?
33
+ title_classes << "pb_title_#{variant}" if variant.present?
34
+ title_classes << "pb_title_#{color}" if color.present?
35
+ title_classes << "pb_title_#{is_bold}" if is_bold.present?
36
+ title_classes += generate_display_size_classes
28
37
  end
38
+
39
+ generate_classname(title_classes.compact.join(" "), separator: " ")
29
40
  end
30
41
 
31
42
  def is_bold
32
43
  bold ? nil : "thin"
33
44
  end
34
45
 
35
- def generate_display_size
36
- return "" if display_size.nil?
46
+ def generate_display_size_classes
47
+ return [] if display_size.nil?
37
48
 
38
- " pb_title_kit_dynamic_#{display_size}"
49
+ ["pb_title_dynamic_#{display_size}"]
39
50
  end
40
51
 
41
52
  def is_size_responsive
42
53
  try(:size).is_a?(::Hash)
43
54
  end
44
55
 
45
- def generate_responsive_size_classname
46
- css = ""
56
+ def generate_responsive_size_classes
57
+ classes = []
47
58
  if is_size_responsive
48
59
  size.each do |key, value|
49
- css += " pb_title_kit_#{key}_#{value}"
60
+ classes << "pb_title_#{key}_#{value}"
50
61
  end
51
62
  end
52
-
53
- css unless css.blank?
63
+ classes
54
64
  end
55
65
  end
56
66
  end
@@ -12,7 +12,7 @@ test('returns namespaced class name', () => {
12
12
  )
13
13
 
14
14
  const kit = screen.getByTestId('primary-test')
15
- expect(kit).toHaveClass('pb_title_kit_size_3')
15
+ expect(kit).toHaveClass('pb_title_kit pb_title_3')
16
16
  })
17
17
 
18
18
  test('with thin font weight', () => {
@@ -25,7 +25,7 @@ test('with thin font weight', () => {
25
25
  )
26
26
 
27
27
  const kit = screen.getByTestId('primary-test')
28
- expect(kit).toHaveClass('pb_title_kit_size_3_thin')
28
+ expect(kit).toHaveClass('pb_title_kit pb_title_3 pb_title_thin')
29
29
  })
30
30
 
31
31
  test('with colors', () => {
@@ -38,7 +38,7 @@ test('with colors', () => {
38
38
  )
39
39
 
40
40
  const kit = screen.getByTestId('primary-test')
41
- expect(kit).toHaveClass('pb_title_kit_size_3_success')
41
+ expect(kit).toHaveClass('pb_title_kit pb_title_3 pb_title_success')
42
42
  })
43
43
 
44
44
  test('with responsive title', () => {
@@ -51,5 +51,5 @@ test('with responsive title', () => {
51
51
  )
52
52
 
53
53
  const kit = screen.getByTestId('primary-test')
54
- expect(kit).toHaveClass('pb_title_kit pb_title_kit_xs_3 pb_title_kit_sm_2 pb_title_kit_md_1')
54
+ expect(kit).toHaveClass('pb_title_kit pb_title_xs_3 pb_title_sm_2 pb_title_md_1')
55
55
  })
@@ -1,20 +1,31 @@
1
1
  @import "../pb_title/title";
2
2
  @import "../pb_body/body";
3
3
 
4
- .pb_title_count_kit {
4
+ .pb_title_count_kit_left_lg,
5
+ .pb_title_count_kit_left_sm,
6
+ .pb_title_count_kit_center_lg,
7
+ .pb_title_count_kit_center_sm,
8
+ .pb_title_count_kit_right_lg,
9
+ .pb_title_count_kit_right_sm {
5
10
  display: flex;
6
- justify-content: flex-start;
7
11
  align-items: baseline;
8
12
 
9
13
  & > .pb_title_count_text {
10
14
  padding-right: $space-xs;
11
15
  }
16
+ }
12
17
 
13
- &._center {
14
- justify-content: center;
15
- }
18
+ .pb_title_count_kit_left_lg,
19
+ .pb_title_count_kit_left_sm {
20
+ justify-content: flex-start;
21
+ }
16
22
 
17
- &._right {
18
- justify-content: flex-end;
19
- }
23
+ .pb_title_count_kit_center_lg,
24
+ .pb_title_count_kit_center_sm {
25
+ justify-content: center;
20
26
  }
27
+
28
+ .pb_title_count_kit_right_lg,
29
+ .pb_title_count_kit_right_sm {
30
+ justify-content: flex-end;
31
+ }
@@ -1,17 +1,16 @@
1
1
  @import "../pb_title/title";
2
2
  @import "../pb_body/body";
3
3
 
4
- .pb_title_detail_kit{
5
- &._center {
6
- & > .pb_title,
7
- & > .pb_body {
8
- text-align: center;
9
- }
4
+ .pb_title_detail_kit_center {
5
+ & > .pb_title_kit,
6
+ & > .pb_body_kit_light {
7
+ text-align: center;
10
8
  }
11
- &._right {
12
- & > .pb_title,
13
- & > .pb_body {
14
- text-align: right;
15
- }
9
+ }
10
+
11
+ .pb_title_detail_kit_right {
12
+ & > .pb_title_kit,
13
+ & > .pb_body_kit_light {
14
+ text-align: right !important;
16
15
  }
17
16
  }
@@ -5,7 +5,7 @@ $color_checkbox_default: $border_light;
5
5
  $color_disabled: darken($border_light, 20%);
6
6
  $transition: .2s ease-in-out;
7
7
 
8
- .pb_toggle_kit {
8
+ [class^=pb_toggle_kit] {
9
9
  position: relative;
10
10
  $width: 44px;
11
11
  $height: $width / 2;
@@ -104,7 +104,7 @@ $tooltip_shadow: rgba(60, 106, 172, 0.18);
104
104
  }
105
105
 
106
106
  &.dark,
107
- &._dark{
107
+ &[class*=_dark]{
108
108
  ~.tooltip_tooltip,
109
109
  .tooltip_tooltip {
110
110
  //react
@@ -4,7 +4,7 @@
4
4
  @import "../tokens/shadows";
5
5
  @import "../tokens/positioning";
6
6
 
7
- .pb_typeahead_kit {
7
+ [class^=pb_typeahead_kit] {
8
8
  .typeahead-kit-select__option {
9
9
  cursor: pointer;
10
10
  }
@@ -28,7 +28,7 @@
28
28
  transition: opacity .15s ease-in-out;
29
29
  }
30
30
  }
31
- .pb_text_input_kit {
31
+ [class^=pb_text_input_kit] {
32
32
  .text_input_wrapper {
33
33
  .text_input {
34
34
  max-height: none;
@@ -47,7 +47,7 @@
47
47
  }
48
48
  }
49
49
  }
50
- .pb_list_kit {
50
+ [class^=pb_list_kit] {
51
51
  max-height: 18em;
52
52
  overflow-y: auto;
53
53
  overscroll-behavior: contain;
@@ -60,15 +60,15 @@
60
60
  border-radius: $border_rad_heavier;
61
61
  transition: opacity .25s ease-in-out;
62
62
  }
63
- &:focus-within .pb_list_kit {
63
+ &:focus-within [class^=pb_list_kit] {
64
64
  display: block;
65
65
  opacity: 1;
66
66
  }
67
- &:not(:focus-within) .pb_list_kit {
67
+ &:not(:focus-within) [class^=pb_list_kit] {
68
68
  display: none;
69
69
  opacity: 0;
70
70
  }
71
- .pb_list_kit {
71
+ [class^=pb_list_kit] {
72
72
  li {
73
73
  transition: background-color .25s ease-in-out;
74
74
  }
@@ -161,7 +161,7 @@
161
161
  .typeahead-plus-icon {
162
162
  color: $text_lt_lighter;
163
163
  }
164
- .pb_badge_kit span {
164
+ [class^=pb_badge_kit] span {
165
165
  line-height: 16.5px;
166
166
  letter-spacing: normal;
167
167
  }
@@ -176,14 +176,14 @@
176
176
  }
177
177
  }
178
178
 
179
- &.dark {
179
+ &[class*=dark] {
180
180
  .pb_typeahead_wrapper .pb_typeahead_loading_indicator {
181
181
  color: $text_dk_light;
182
182
  }
183
183
  .pb_text_input_kit_label {
184
184
  color: $text_dk_light;
185
185
  }
186
- .pb_text_input_kit.dark .text_input_wrapper .text_input {
186
+ [class^=pb_text_input_kit].dark .text_input_wrapper .text_input {
187
187
  display: inherit !important;
188
188
  }
189
189
  .typeahead-kit-select__menu {
@@ -227,7 +227,7 @@
227
227
  .typeahead-kit-select__option--is-focused {
228
228
  background-color: $active_dark;
229
229
  }
230
- .pb_list_kit {
230
+ [class^=pb_list_kit] {
231
231
  background-color: $bg_dark;
232
232
  }
233
233
  .pb_item_kit {
@@ -63,7 +63,7 @@ test('typeahead with pills', () => {
63
63
  )
64
64
 
65
65
  const kit = screen.getByTestId('pills-test')
66
- const pill = kit.querySelector(".pb_form_pill_kit_primary")
66
+ const pill = kit.querySelector(".pb_form_pill_kit.pb_form_pill_primary")
67
67
  expect(pill).toBeInTheDocument()
68
68
  })
69
69
 
@@ -89,7 +89,7 @@ test('typeahead multi select with badges and small pills', () => {
89
89
  )
90
90
 
91
91
  const kit = screen.getByTestId('small-pill-test')
92
- const badge = kit.querySelector(".pb_form_pill_kit_primary.mr_xs.small")
92
+ const badge = kit.querySelector(".pb_form_pill_kit.pb_form_pill_primary.mr_xs.pb_form_pill_small")
93
93
  expect(badge).toBeInTheDocument()
94
94
  })
95
95
 
@@ -135,6 +135,6 @@ test('typeahead with colored pills', () => {
135
135
  )
136
136
 
137
137
  const kit = screen.getByTestId('pills-color-test')
138
- const pill = kit.querySelector(".pb_form_pill_kit_neutral")
138
+ const pill = kit.querySelector(".pb_form_pill_kit.pb_form_pill_neutral")
139
139
  expect(pill).toBeInTheDocument()
140
140
  })
@@ -3,51 +3,51 @@
3
3
  @import "../pb_avatar/avatar";
4
4
  @import "../tokens/spacing";
5
5
 
6
- .pb_user_kit{
6
+ [class^=pb_user_kit]{
7
7
  display: flex;
8
8
  justify-content: flex-start;
9
9
  align-items: flex-start;
10
10
  flex-direction: row;
11
11
 
12
12
  // Orientation =============
13
- &._vertical {
13
+ &[class*=_vertical] {
14
14
  flex-direction: column;
15
15
 
16
- &._center {
16
+ &[class*=_center] {
17
17
  align-items: center;
18
18
 
19
- .pb_title,
20
- .pb_body {
19
+ [class^=pb_title],
20
+ [class^=pb_body] {
21
21
  text-align: center;
22
22
  }
23
23
  }
24
24
 
25
- &._right {
25
+ &[class*=_right] {
26
26
  align-items: flex-end;
27
27
 
28
- .pb_title,
29
- .pb_body {
28
+ [class^=pb_title],
29
+ [class^=pb_body] {
30
30
  text-align: right;
31
31
  }
32
32
  }
33
33
 
34
- .pb_avatar {
34
+ [class^=pb_avatar] {
35
35
  margin-bottom: $space-xs;
36
36
  }
37
37
  }
38
38
 
39
- &._horizontal {
39
+ &[class*=_horizontal] {
40
40
  align-items: center;
41
41
 
42
- &._center {
42
+ &[class*=_center] {
43
43
  justify-content: center;
44
44
  }
45
45
 
46
- &._right {
46
+ &[class*=_right] {
47
47
  justify-content: flex-end;
48
48
  }
49
49
 
50
- .pb_avatar {
50
+ [class^=pb_avatar] {
51
51
  margin-right: $space-sm;
52
52
  }
53
53
  }
@@ -38,7 +38,7 @@ test('bold prop applies correct styling when false', () => {
38
38
  const titleElement = screen.getByText("Anna Black")
39
39
  expect(titleElement).toBeInTheDocument()
40
40
 
41
- expect(titleElement).toHaveClass('pb_title_kit_size_4_thin')
41
+ expect(titleElement).toHaveClass('pb_title_kit pb_title_4 pb_title_thin')
42
42
  })
43
43
 
44
44
  test('align prop adds desired class', () => {
@@ -4,7 +4,10 @@ $badge-sizes: (
4
4
  "lg": 36px
5
5
  );
6
6
 
7
- .pb_user_badge_kit {
7
+ .pb_user_badge_kit,
8
+ .pb_user_badge_kit_sm,
9
+ .pb_user_badge_kit_md,
10
+ .pb_user_badge_kit_lg {
8
11
  .pb_user_badge_wrapper {
9
12
  svg,
10
13
  img {
@@ -12,13 +15,25 @@ $badge-sizes: (
12
15
  height: 100%;
13
16
  }
14
17
  }
18
+ }
15
19
 
16
- @each $name, $size in $badge-sizes {
17
- &[class*=_#{$name}] {
18
- .pb_user_badge_wrapper {
19
- width: $size;
20
- height: $size;
21
- }
22
- }
20
+ .pb_user_badge_kit_sm {
21
+ .pb_user_badge_wrapper {
22
+ width: 16px;
23
+ height: 16px;
24
+ }
25
+ }
26
+
27
+ .pb_user_badge_kit_md {
28
+ .pb_user_badge_wrapper {
29
+ width: 26px;
30
+ height: 26px;
31
+ }
32
+ }
33
+
34
+ .pb_user_badge_kit_lg {
35
+ .pb_user_badge_wrapper {
36
+ width: 36px;
37
+ height: 36px;
23
38
  }
24
39
  }
@@ -1,11 +1,11 @@
1
- [class^='pb_weekday_stacked'] {
2
- &[class*='_left'] {
3
- text-align: left;
4
- }
5
- &[class*='_center'] {
6
- text-align: center;
7
- }
8
- &[class*='_right'] {
9
- text-align: right;
10
- }
1
+ .pb_weekday_stacked_kit_left {
2
+ text-align: left;
3
+ }
4
+
5
+ .pb_weekday_stacked_kit_center {
6
+ text-align: center;
7
+ }
8
+
9
+ .pb_weekday_stacked_kit_right {
10
+ text-align: right;
11
11
  }
@@ -48,7 +48,7 @@ describe("WeekdayStacked Kit", () => {
48
48
  );
49
49
 
50
50
  const kit = screen.getByTestId(testId);
51
- const text = kit.querySelector(".pb_title_kit_size_4");
51
+ const text = kit.querySelector(".pb_title_kit.pb_title_4");
52
52
  expect(text.textContent).toEqual("1/1")
53
53
  });
54
54
 
@@ -86,7 +86,7 @@ describe("WeekdayStacked Kit", () => {
86
86
  );
87
87
 
88
88
  const kit = screen.getByTestId(testId);
89
- const text = kit.querySelector(".pb_title_kit_size_4");
89
+ const text = kit.querySelector(".pb_title_4");
90
90
  expect(text.textContent).toEqual("1")
91
91
  });
92
92
 
@@ -99,7 +99,7 @@ describe("WeekdayStacked Kit", () => {
99
99
  );
100
100
 
101
101
  const kit = screen.getByTestId(testId);
102
- const text = kit.querySelector(".pb_title_kit_size_4");
102
+ const text = kit.querySelector(".pb_title_4");
103
103
  expect(text.textContent).toEqual("Jan 1")
104
104
  });
105
105
  });