playbook_ui 14.25.0.pre.alpha.PLAY2361datepickerarrownav9708 → 14.25.0.pre.alpha.testingcss9713

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 (186) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/_playbook.scss +0 -1
  3. data/app/pb_kits/playbook/pb_advanced_table/_advanced_table.scss +6 -6
  4. data/app/pb_kits/playbook/pb_advanced_table/advanced_table.test.jsx +1 -1
  5. data/app/pb_kits/playbook/pb_avatar/_avatar.scss +60 -65
  6. data/app/pb_kits/playbook/pb_background/_background.scss +3 -3
  7. data/app/pb_kits/playbook/pb_badge/_badge.scss +30 -32
  8. data/app/pb_kits/playbook/pb_bread_crumbs/_bread_crumbs.scss +1 -1
  9. data/app/pb_kits/playbook/pb_button/_button.scss +13 -13
  10. data/app/pb_kits/playbook/pb_button/_button_mixins.scss +1 -1
  11. data/app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.scss +19 -19
  12. data/app/pb_kits/playbook/pb_button_toolbar/_button_toolbar_dark.scss +15 -15
  13. data/app/pb_kits/playbook/pb_caption/_caption.scss +1 -1
  14. data/app/pb_kits/playbook/pb_card/_card.scss +79 -68
  15. data/app/pb_kits/playbook/pb_card/_card_mixin.scss +4 -4
  16. data/app/pb_kits/playbook/pb_checkbox/_checkbox.scss +1 -1
  17. data/app/pb_kits/playbook/pb_circle_icon_button/_circle_icon_button.scss +5 -5
  18. data/app/pb_kits/playbook/pb_collapsible/__snapshots__/collapsible.test.js.snap +1 -1
  19. data/app/pb_kits/playbook/pb_collapsible/_collapsible.scss +3 -3
  20. data/app/pb_kits/playbook/pb_currency/_currency.scss +30 -30
  21. data/app/pb_kits/playbook/pb_dashboard_value/_dashboard_value.scss +1 -1
  22. data/app/pb_kits/playbook/pb_date/_date.scss +5 -5
  23. data/app/pb_kits/playbook/pb_date_picker/_date_picker.scss +1 -1
  24. data/app/pb_kits/playbook/pb_date_picker/_date_picker.tsx +19 -0
  25. data/app/pb_kits/playbook/pb_date_picker/date_picker.html.erb +1 -0
  26. data/app/pb_kits/playbook/pb_date_picker/date_picker_helper.ts +3 -15
  27. data/app/pb_kits/playbook/pb_date_picker/sass_partials/_inline_styles.scss +2 -2
  28. data/app/pb_kits/playbook/pb_date_picker/sass_partials/_input_styles.scss +2 -2
  29. data/app/pb_kits/playbook/pb_date_picker/sass_partials/_time_selection_styles.scss +5 -5
  30. data/app/pb_kits/playbook/pb_date_range_inline/_date_range_inline.scss +13 -13
  31. data/app/pb_kits/playbook/pb_date_range_stacked/_date_range_stacked.scss +1 -1
  32. data/app/pb_kits/playbook/pb_date_stacked/_date_stacked.scss +13 -13
  33. data/app/pb_kits/playbook/pb_date_time/_date_time.scss +6 -6
  34. data/app/pb_kits/playbook/pb_date_time_stacked/_date_time_stacked.scss +6 -6
  35. data/app/pb_kits/playbook/pb_date_year_stacked/_date_year_stacked.scss +7 -7
  36. data/app/pb_kits/playbook/pb_detail/_detail.scss +2 -2
  37. data/app/pb_kits/playbook/pb_dialog/_dialog.scss +61 -252
  38. data/app/pb_kits/playbook/pb_distribution_bar/_distribution_bar.scss +3 -3
  39. data/app/pb_kits/playbook/pb_dropdown/_dropdown.scss +1 -1
  40. data/app/pb_kits/playbook/pb_filter/_filter.scss +7 -7
  41. data/app/pb_kits/playbook/pb_fixed_confirmation_toast/_fixed_confirmation_toast.scss +2 -2
  42. data/app/pb_kits/playbook/pb_flex/_flex.scss +106 -100
  43. data/app/pb_kits/playbook/pb_flex/_flex.tsx +38 -28
  44. data/app/pb_kits/playbook/pb_flex/_flex_item.scss +146 -51
  45. data/app/pb_kits/playbook/pb_flex/_flex_item.tsx +19 -8
  46. data/app/pb_kits/playbook/pb_flex/docs/_flex_gap.html.erb +12 -1
  47. data/app/pb_kits/playbook/pb_flex/docs/_flex_gap.jsx +26 -1
  48. data/app/pb_kits/playbook/pb_flex/docs/_flex_gap_rails.md +11 -0
  49. data/app/pb_kits/playbook/pb_flex/docs/_flex_gap_react.md +11 -0
  50. data/app/pb_kits/playbook/pb_flex/flex.rb +73 -39
  51. data/app/pb_kits/playbook/pb_flex/flex_item.rb +51 -6
  52. data/app/pb_kits/playbook/pb_form_group/_error_state_mixin.scss +1 -1
  53. data/app/pb_kits/playbook/pb_form_group/_form_group.scss +47 -47
  54. data/app/pb_kits/playbook/pb_form_pill/_form_pill.scss +5 -5
  55. data/app/pb_kits/playbook/pb_gauge/_gauge.scss +5 -5
  56. data/app/pb_kits/playbook/pb_hashtag/_hashtag.scss +1 -1
  57. data/app/pb_kits/playbook/pb_highlight/_highlight.scss +1 -1
  58. data/app/pb_kits/playbook/pb_icon/_icon.scss +4 -0
  59. data/app/pb_kits/playbook/pb_icon_circle/_icon_circle.scss +2 -2
  60. data/app/pb_kits/playbook/pb_icon_stat_value/_icon_stat_value.scss +15 -15
  61. data/app/pb_kits/playbook/pb_icon_value/_icon_value.scss +6 -6
  62. data/app/pb_kits/playbook/pb_image/_image.scss +1 -1
  63. data/app/pb_kits/playbook/pb_label_pill/_label_pill.scss +1 -1
  64. data/app/pb_kits/playbook/pb_label_value/_label_value.scss +2 -2
  65. data/app/pb_kits/playbook/pb_layout/_layout.scss +330 -305
  66. data/app/pb_kits/playbook/pb_layout/_layout.tsx +14 -11
  67. data/app/pb_kits/playbook/pb_layout/body.rb +1 -1
  68. data/app/pb_kits/playbook/pb_layout/footer.rb +1 -1
  69. data/app/pb_kits/playbook/pb_layout/header.rb +1 -1
  70. data/app/pb_kits/playbook/pb_layout/item.rb +1 -7
  71. data/app/pb_kits/playbook/pb_layout/layout.rb +16 -25
  72. data/app/pb_kits/playbook/pb_layout/layout.test.js +3 -3
  73. data/app/pb_kits/playbook/pb_layout/sidebar.rb +1 -1
  74. data/app/pb_kits/playbook/pb_legend/_legend.scss +1 -1
  75. data/app/pb_kits/playbook/pb_link/_link.scss +4 -4
  76. data/app/pb_kits/playbook/pb_list/_list.scss +8 -8
  77. data/app/pb_kits/playbook/pb_loading_inline/_loading_inline.scss +4 -4
  78. data/app/pb_kits/playbook/pb_message/_message.scss +4 -4
  79. data/app/pb_kits/playbook/pb_message/_message_mixins.scss +2 -2
  80. data/app/pb_kits/playbook/pb_multi_level_select/_multi_level_select.scss +2 -2
  81. data/app/pb_kits/playbook/pb_multiple_users/_multiple_users.scss +2 -2
  82. data/app/pb_kits/playbook/pb_multiple_users_stacked/_multiple_users_stacked.scss +9 -9
  83. data/app/pb_kits/playbook/pb_nav/_bold_mixin.scss +8 -8
  84. data/app/pb_kits/playbook/pb_online_status/_online_status.scss +2 -2
  85. data/app/pb_kits/playbook/pb_overlay/_overlay.scss +2 -2
  86. data/app/pb_kits/playbook/pb_passphrase/_passphrase.scss +1 -1
  87. data/app/pb_kits/playbook/pb_person/_person.scss +1 -1
  88. data/app/pb_kits/playbook/pb_pill/_pill.scss +3 -3
  89. data/app/pb_kits/playbook/pb_progress_pills/_progress_pills.scss +7 -7
  90. data/app/pb_kits/playbook/pb_progress_simple/_progress_simple.scss +10 -10
  91. data/app/pb_kits/playbook/pb_progress_step/_progress_step.scss +36 -36
  92. data/app/pb_kits/playbook/pb_rich_text_editor/_rich_text_editor.scss +4 -4
  93. data/app/pb_kits/playbook/pb_section_separator/_section_separator.scss +12 -12
  94. data/app/pb_kits/playbook/pb_select/_select.scss +3 -3
  95. data/app/pb_kits/playbook/pb_selectable_card/_selectable_card.scss +1 -1
  96. data/app/pb_kits/playbook/pb_selectable_card_icon/_selectable_card_icon.scss +7 -7
  97. data/app/pb_kits/playbook/pb_selectable_icon/_selectable_icon.scss +2 -2
  98. data/app/pb_kits/playbook/pb_selectable_list/_selectable_list.scss +5 -5
  99. data/app/pb_kits/playbook/pb_source/_source.scss +7 -7
  100. data/app/pb_kits/playbook/pb_star_rating/_star_rating.scss +1 -1
  101. data/app/pb_kits/playbook/pb_stat_value/_stat_value.scss +2 -2
  102. data/app/pb_kits/playbook/pb_table/styles/_alignment.scss +1 -1
  103. data/app/pb_kits/playbook/pb_table/styles/_content.scss +1 -1
  104. data/app/pb_kits/playbook/pb_table/styles/_desktop_collapse.scss +1 -1
  105. data/app/pb_kits/playbook/pb_table/styles/_headers.scss +1 -1
  106. data/app/pb_kits/playbook/pb_table/styles/_hover.scss +1 -1
  107. data/app/pb_kits/playbook/pb_table/styles/_mobile.scss +1 -1
  108. data/app/pb_kits/playbook/pb_table/styles/_mobile_collapse.scss +1 -1
  109. data/app/pb_kits/playbook/pb_table/styles/_outer_padding.scss +1 -1
  110. data/app/pb_kits/playbook/pb_table/styles/_reset.scss +1 -1
  111. data/app/pb_kits/playbook/pb_table/styles/_scroll.scss +12 -12
  112. data/app/pb_kits/playbook/pb_table/styles/_side_highlight.scss +2 -2
  113. data/app/pb_kits/playbook/pb_table/styles/_single-line.scss +1 -1
  114. data/app/pb_kits/playbook/pb_table/styles/_striped.scss +1 -1
  115. data/app/pb_kits/playbook/pb_table/styles/_structure.scss +1 -1
  116. data/app/pb_kits/playbook/pb_table/styles/_table-card.scss +1 -1
  117. data/app/pb_kits/playbook/pb_table/styles/_table-dark.scss +2 -2
  118. data/app/pb_kits/playbook/pb_table/styles/_table_header.scss +4 -4
  119. data/app/pb_kits/playbook/pb_table/styles/_tablet_collapse.scss +1 -1
  120. data/app/pb_kits/playbook/pb_table/styles/_vertical_border.scss +1 -1
  121. data/app/pb_kits/playbook/pb_text_input/_text_input.scss +1 -1
  122. data/app/pb_kits/playbook/pb_text_input/text_input.rb +15 -0
  123. data/app/pb_kits/playbook/pb_textarea/_textarea.scss +3 -3
  124. data/app/pb_kits/playbook/pb_time/_time.scss +5 -5
  125. data/app/pb_kits/playbook/pb_time_range_inline/_time_range_inline.scss +13 -13
  126. data/app/pb_kits/playbook/pb_time_stacked/_time_stacked.scss +3 -3
  127. data/app/pb_kits/playbook/pb_timeline/_timeline.scss +41 -41
  128. data/app/pb_kits/playbook/pb_timestamp/_timestamp.scss +4 -4
  129. data/app/pb_kits/playbook/pb_title/_title.scss +14 -14
  130. data/app/pb_kits/playbook/pb_title_count/_title_count.scss +3 -3
  131. data/app/pb_kits/playbook/pb_title_detail/_title_detail.scss +7 -7
  132. data/app/pb_kits/playbook/pb_toggle/_toggle.scss +1 -1
  133. data/app/pb_kits/playbook/pb_tooltip/_tooltip.scss +1 -1
  134. data/app/pb_kits/playbook/pb_typeahead/_typeahead.scss +10 -10
  135. data/app/pb_kits/playbook/pb_user/_user.scss +13 -13
  136. data/app/pb_kits/playbook/pb_user_badge/_user_badge.scss +1 -1
  137. data/app/pb_kits/playbook/utilities/_gap.scss +12 -24
  138. data/app/pb_kits/playbook/utilities/globalPropNames.mjs +2 -0
  139. data/app/pb_kits/playbook/utilities/globalProps.ts +28 -4
  140. data/dist/chunks/{_line_graph-Ccznc59K.js → _line_graph-0Y0wuiB9.js} +1 -1
  141. data/dist/chunks/_typeahead-B2gV75O0.js +6 -0
  142. data/dist/chunks/_weekday_stacked-Dblcf2V8.js +37 -0
  143. data/dist/chunks/{lib-C43ywQsO.js → lib-CY5ZPzic.js} +1 -1
  144. data/dist/chunks/{pb_form_validation-Cqj3itLG.js → pb_form_validation-D3b0JKHH.js} +1 -1
  145. data/dist/chunks/vendor.js +1 -1
  146. data/dist/menu.yml +0 -6
  147. data/dist/playbook-doc.js +2 -2
  148. data/dist/playbook-rails-react-bindings.js +1 -1
  149. data/dist/playbook-rails.js +1 -1
  150. data/dist/playbook.css +1 -1
  151. data/lib/playbook/classnames.rb +2 -0
  152. data/lib/playbook/spacing.rb +53 -1
  153. data/lib/playbook/version.rb +1 -1
  154. metadata +8 -36
  155. data/app/pb_kits/playbook/pb_drawer/_close_icon.tsx +0 -25
  156. data/app/pb_kits/playbook/pb_drawer/_drawer.scss +0 -381
  157. data/app/pb_kits/playbook/pb_drawer/_drawer.tsx +0 -231
  158. data/app/pb_kits/playbook/pb_drawer/_drawer_context.tsx +0 -3
  159. data/app/pb_kits/playbook/pb_drawer/context.ts +0 -11
  160. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_behavior.html.erb +0 -8
  161. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_behavior.jsx +0 -41
  162. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_borders.html.erb +0 -33
  163. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_borders.jsx +0 -78
  164. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_breakpoints.html.erb +0 -3
  165. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_breakpoints.jsx +0 -26
  166. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_default.html.erb +0 -20
  167. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_default.jsx +0 -59
  168. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_menu.html.erb +0 -24
  169. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_menu.jsx +0 -61
  170. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_menu.md +0 -24
  171. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_overlay.html.erb +0 -21
  172. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_overlay.jsx +0 -54
  173. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_overlay.md +0 -1
  174. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_sizes.html.erb +0 -49
  175. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_sizes.jsx +0 -99
  176. data/app/pb_kits/playbook/pb_drawer/docs/example.yml +0 -20
  177. data/app/pb_kits/playbook/pb_drawer/docs/index.js +0 -7
  178. data/app/pb_kits/playbook/pb_drawer/drawer.html.erb +0 -20
  179. data/app/pb_kits/playbook/pb_drawer/drawer.rb +0 -56
  180. data/app/pb_kits/playbook/pb_drawer/drawer.test.jsx +0 -81
  181. data/app/pb_kits/playbook/pb_drawer/hooks/useBreakpoint.tsx +0 -60
  182. data/app/pb_kits/playbook/pb_drawer/hooks/useDrawerAnimation.tsx +0 -21
  183. data/app/pb_kits/playbook/pb_drawer/index.js +0 -257
  184. data/app/pb_kits/playbook/pb_flex/docs/_flex_gap.md +0 -9
  185. data/dist/chunks/_typeahead-QdrWudzd.js +0 -6
  186. data/dist/chunks/_weekday_stacked-DG1VCDDN.js +0 -37
@@ -1,100 +1,46 @@
1
1
  @import "card_mixin";
2
2
  @import "../utilities/colors";
3
3
 
4
- [class^=pb_card_kit] {
4
+ // Main card selector - matches all pb_card_kit classes
5
+ [class^="pb_card_kit"] {
5
6
  @include pb_card;
6
7
  padding: $space_md;
7
8
 
8
- &[class*=_selected] {
9
+ // Selected state
10
+ &[class*="_selected"] {
9
11
  @include pb_card_selected;
10
12
  }
11
13
 
14
+ // Dark theme
12
15
  &.dark {
13
16
  @include pb_card_dark;
14
17
 
15
- &[class*=_selected] {
18
+ &[class*="_selected"] {
16
19
  @include pb_card_selected_dark;
17
20
  }
18
21
  }
19
22
 
20
- &[class*=_border_none] {
23
+ // Border none variants
24
+ &[class*="_border_none"] {
21
25
  border-width: 0px;
22
26
  }
23
27
 
24
- @function ends-with($string, $suffix) {
25
- $suffix-length: str-length($suffix);
26
- @if $suffix-length == 0 {
27
- @return true;
28
- }
29
- @return str-slice($string, -$suffix-length) == $suffix;
30
- }
31
-
32
- [class^=pb_card_header_kit] {
33
- flex-grow: 0;
34
- flex-shrink: 0;
35
- flex-basis: auto;
36
- min-height: 1px;
37
- padding: $space_sm;
38
- border: 0;
39
- border-radius: $pb_card_header_border_radius $pb_card_header_border_radius 0px 0px;
40
- @each $color_name, $color_value in $pb_card_header_colors {
41
- @if not ends-with($color_name, '_subtle') {
42
- &[class*="_#{$color_name}"] {
43
- @include pb_card_header_color($color_value);
44
- color: lightenText($color_value);
45
- }
46
- }
47
- }
48
- @each $color_name, $color_value in $pb_card_header_colors {
49
- @if ends-with($color_name, '_subtle') {
50
- &[class*="_#{$color_name}"] {
51
- @include pb_card_header_color($color_value);
52
- color: lightenText($color_value);
53
- }
54
- }
55
- }
56
- @each $color_name, $color_value in $pb_card_header_colors {
57
- &[class*=_#{$color_name}_striped] {
58
- @if ((type-of($color_value) == color)) {
59
- background: repeating-linear-gradient(
60
- 45deg,
61
- $color_value,
62
- $color_value 10px,
63
- lighten( $color_value, 5% ) 10px,
64
- lighten( $color_value, 5% ) 20px
65
- );
66
- }
67
- }
68
- }
69
- &[class*=_white] {
70
- border-bottom: 1px solid $border_light;
71
- }
72
- }
73
-
74
- [class^=pb_card_body_kit] {
75
- flex-grow: 0;
76
- flex-shrink: 0;
77
- flex-basis: auto;
78
- min-height: 1px;
79
- border: 0;
80
- padding: $space_md;
81
- }
82
-
83
- &[class*=_highlight] {
28
+ // Highlight variants
29
+ &[class*="_highlight"] {
84
30
  overflow: hidden;
85
31
  }
86
32
 
87
- &[class*=_highlight_top] {
33
+ &[class*="_highlight_top"] {
88
34
  @each $color_name, $color_value in $pb_card_highlight_colors {
89
- &[class*=_highlight_#{$color_name}]::before {
35
+ &[class*="_highlight_#{$color_name}"]::before {
90
36
  @include pb_card_highlight(100%, $pb_card_highlight_size, $color_value);
91
37
  }
92
38
  }
93
39
  }
94
40
 
95
- &[class*=_highlight_side] {
41
+ &[class*="_highlight_side"] {
96
42
  @each $color_name, $color_value in $pb_card_highlight_colors {
97
- &[class*=_highlight_#{$color_name}]::before {
43
+ &[class*="_highlight_#{$color_name}"]::before {
98
44
  @include pb_card_highlight($pb_card_highlight_size, 100%, $color_value);
99
45
  }
100
46
  }
@@ -105,3 +51,68 @@
105
51
  color: $text_lt_light;
106
52
  }
107
53
  }
54
+
55
+ @function ends-with($string, $suffix) {
56
+ $suffix-length: str-length($suffix);
57
+ @if $suffix-length == 0 {
58
+ @return true;
59
+ }
60
+ @return str-slice($string, -$suffix-length) == $suffix;
61
+ }
62
+
63
+ // Header styles
64
+ [class^="pb_card_header_kit"] {
65
+ flex-grow: 0;
66
+ flex-shrink: 0;
67
+ flex-basis: auto;
68
+ min-height: 1px;
69
+ padding: $space_sm;
70
+ border: 0;
71
+ border-radius: $pb_card_header_border_radius $pb_card_header_border_radius 0px 0px;
72
+
73
+ @each $color_name, $color_value in $pb_card_header_colors {
74
+ @if not ends-with($color_name, '_subtle') {
75
+ &[class*="_#{$color_name}"] {
76
+ @include pb_card_header_color($color_value);
77
+ color: lightenText($color_value);
78
+ }
79
+ }
80
+ }
81
+
82
+ @each $color_name, $color_value in $pb_card_header_colors {
83
+ @if ends-with($color_name, '_subtle') {
84
+ &[class*="_#{$color_name}"] {
85
+ @include pb_card_header_color($color_value);
86
+ color: lightenText($color_value);
87
+ }
88
+ }
89
+ }
90
+
91
+ @each $color_name, $color_value in $pb_card_header_colors {
92
+ &[class*="_#{$color_name}_striped"] {
93
+ @if ((type-of($color_value) == color)) {
94
+ background: repeating-linear-gradient(
95
+ 45deg,
96
+ $color_value,
97
+ $color_value 10px,
98
+ lighten( $color_value, 5% ) 10px,
99
+ lighten( $color_value, 5% ) 20px
100
+ );
101
+ }
102
+ }
103
+ }
104
+
105
+ &[class*="_white"] {
106
+ border-bottom: 1px solid $border_light;
107
+ }
108
+ }
109
+
110
+ // Body styles
111
+ [class^="pb_card_body_kit"] {
112
+ flex-grow: 0;
113
+ flex-shrink: 0;
114
+ flex-basis: auto;
115
+ min-height: 1px;
116
+ border: 0;
117
+ padding: $space_md;
118
+ }
@@ -52,19 +52,19 @@ $pb_card_header_colors: map-merge(map-merge(map-merge($product_colors, $addition
52
52
  background-color: $white;
53
53
 
54
54
  @each $name, $color in $background_colors {
55
- &[class*=background_#{$name}] {
55
+ &[class*="_background_#{$name}"] {
56
56
  background-color: $color;
57
57
  }
58
58
  };
59
59
 
60
60
  @each $name, $shadow in $box_shadows {
61
- &[class^=_#{$name}] {
61
+ &[class*="_#{$name}"] {
62
62
  box-shadow: $shadow;
63
63
  }
64
64
  }
65
65
 
66
66
  @each $name, $radius in $border_radius {
67
- &[class*=_#{$name}] {
67
+ &[class*="_border_radius_#{$name}"] {
68
68
  border-radius: $radius;
69
69
  }
70
70
  }
@@ -89,4 +89,4 @@ $pb_card_header_colors: map-merge(map-merge(map-merge($product_colors, $addition
89
89
 
90
90
  @mixin pb_card_header_color($header_color) {
91
91
  background: $header_color;
92
- }
92
+ }
@@ -3,7 +3,7 @@
3
3
  @import "../tokens/positioning";
4
4
  $transition: $transition_cubic;
5
5
 
6
- [class^=pb_checkbox_kit] {
6
+ .pb_checkbox_kit {
7
7
  cursor: pointer;
8
8
  display: inline-flex;
9
9
  vertical-align: middle;
@@ -37,25 +37,25 @@ $pb_button_styles: (
37
37
  }
38
38
  }
39
39
 
40
- [class^=pb_circle_icon_button_kit] {
40
+ .pb_circle_icon_button_kit {
41
41
  @each $style in $pb_button_styles {
42
- [class^=pb_button_kit][class*=_#{$style}] {
42
+ .pb_button_kit[class*=_#{$style}] {
43
43
  @include pb_circle_icon_button;
44
44
  }
45
45
  }
46
46
  :first-child {
47
- &[class*=_link] {
47
+ &._link {
48
48
  @include pb_circle_icon_button_active;
49
49
  }
50
50
  &.dark {
51
- &[class*=_link] {
51
+ &._link {
52
52
  @include pb_circle_icon_button_active_dark;
53
53
  }
54
54
  }
55
55
  }
56
56
  &.size_small {
57
57
  @each $style in $pb_button_styles {
58
- [class^=pb_button_kit][class*=_#{$style}] {
58
+ .pb_button_kit[class*=_#{$style}] {
59
59
  width: 20px;
60
60
  height: 20px;
61
61
  min-height: 20px;
@@ -11,7 +11,7 @@ exports[`html structure is correct 1`] = `
11
11
  >
12
12
  <div>
13
13
  <div
14
- class="pb_flex_kit_orientation_row_justify_content_left_align_items_center_spacing_between"
14
+ class="pb_flex_kit pb_flex_kit_orientation_row pb_flex_kit_justify_content_left pb_flex_kit_align_items_center pb_flex_kit_spacing_between"
15
15
  >
16
16
  <div
17
17
  class="pb_flex_item_kit"
@@ -1,7 +1,7 @@
1
1
  @import "tokens/colors";
2
2
  @import "tokens/spacing";
3
3
 
4
- [class^=pb_collapsible_kit] {
4
+ .pb_collapsible_kit {
5
5
  padding: $space_md;
6
6
 
7
7
  .toggle-content {
@@ -28,10 +28,10 @@
28
28
  }
29
29
  }
30
30
 
31
- [class^=pb_collapsible_main_kit] {
31
+ .pb_collapsible_main_kit {
32
32
  padding: $space_md;
33
33
  }
34
34
 
35
- [class^=pb_collapsible_content_kit] {
35
+ .pb_collapsible_content_kit {
36
36
  padding: $space_md;
37
37
  }
@@ -1,95 +1,95 @@
1
- [class^=pb_currency_kit] {
2
- &[class*=_center] {
3
- & > [class^=pb_caption],
4
- & > [class^=pb_title],
5
- & > [class^=pb_body] {
1
+ .pb_currency_kit {
2
+ &._center {
3
+ & > .pb_caption,
4
+ & > .pb_title,
5
+ & > .pb_body {
6
6
  text-align: center;
7
7
  }
8
- & > [class*=pb_currency_wrapper] {
8
+ & > .pb_currency_wrapper {
9
9
  justify-content: center;
10
10
  }
11
11
  }
12
12
 
13
- &[class*=_right] {
14
- & > [class^=pb_caption],
15
- & > [class^=pb_title],
16
- & > [class^=pb_body] {
13
+ &._right {
14
+ & > .pb_caption,
15
+ & > .pb_title,
16
+ & > .pb_body {
17
17
  text-align: right;
18
18
  }
19
- & > [class*=pb_currency_wrapper] {
19
+ & > .pb_currency_wrapper {
20
20
  justify-content: flex-end;
21
21
  }
22
22
  }
23
23
 
24
- [class^=pb_currency_wrapper] {
24
+ .pb_currency_wrapper {
25
25
  display: flex;
26
26
  align-items: baseline;
27
27
 
28
- &[class*=_deemphasized] {
29
- [class^=pb_body_kit], [class^=pb_body_kit] {
30
- &:not([class*=dark]) {
28
+ &._deemphasized {
29
+ .pb_body_kit, .pb_body_kit {
30
+ &:not(.dark) {
31
31
  color: $text_lt_default;
32
32
  }
33
33
  }
34
34
 
35
- [class^=pb_body_kit][class*=_light] {
35
+ .pb_body_kit._light {
36
36
  font-weight: $regular;
37
37
  }
38
38
 
39
- [class^=pb_title_kit] {
39
+ .pb_title_kit {
40
40
  font-weight: $lighter;
41
41
  }
42
42
  }
43
43
 
44
- &[class*=_light] {
45
- [class^=pb_body_kit], [class^=pb_title_kit] {
44
+ &._light {
45
+ .pb_body_kit, .pb_title_kit {
46
46
  color: $text_lt_light;
47
47
  font-weight: $regular;
48
48
  }
49
49
 
50
- [class^=pb_title_kit].dark {
50
+ .pb_title_kit.dark {
51
51
  color: $text_dk_light;
52
52
  }
53
53
  }
54
54
 
55
- &[class*=_bold] {
56
- [class^=pb_body_kit], [class^=_light]{
55
+ &._bold {
56
+ .pb_body_kit, ._light{
57
57
  color: $text_lt_default;
58
58
  font-weight: $bolder;
59
59
  }
60
60
  }
61
61
 
62
- & > [class*=dollar_sign] {
62
+ & > .dollar_sign {
63
63
  display: flex;
64
64
  align-self: flex-start;
65
65
  }
66
- & > [class*=unit] {
66
+ & > .unit {
67
67
  display: flex;
68
68
  align-items: flex-end;
69
69
  }
70
70
  }
71
71
 
72
- &[class*=_sm] {
73
- [class^=pb_currency_wrapper][class*=_deemphasized] {
74
- [class^=pb_title_kit] {
72
+ &._sm {
73
+ .pb_currency_wrapper._deemphasized {
74
+ .pb_title_kit {
75
75
  font-weight: $regular;
76
76
  }
77
77
  }
78
78
  }
79
79
 
80
- &[class*=_lg] [class^=pb_currency_wrapper] [class*=pb_currency_value] {
80
+ &._lg .pb_currency_wrapper .pb_currency_value {
81
81
  line-height: .9;
82
82
  padding-left: $space_xs - 7px;
83
83
  padding-right: $space_xs - 7px;
84
84
  }
85
85
 
86
- &[class*=_md] [class^=pb_currency_wrapper] [class*=pb_currency_value] {
86
+ &._md .pb_currency_wrapper .pb_currency_value {
87
87
  line-height: 1.2;
88
88
  padding-left: $space_xs - 7px;
89
89
  padding-right: $space_xs - 7px;
90
90
  }
91
91
 
92
- &[class*=_sm] [class^=pb_currency_wrapper] [class*=pb_currency_value] {
92
+ &._sm .pb_currency_wrapper .pb_currency_value {
93
93
  line-height: 1.4;
94
94
  padding-left: $space_xs - 7px;
95
95
  padding-right: $space_xs - 7px;
@@ -3,7 +3,7 @@
3
3
  @import "../pb_stat_change/stat_change";
4
4
  @import "../pb_body/body";
5
5
 
6
- [class^=pb_dashboard_value_kit]{
6
+ .pb_dashboard_value_kit{
7
7
  @each $align_name, $align_value in $pb_dashboard_value_align {
8
8
  &[class*=_#{$align_name}] {
9
9
  @include pb_dashboard_value($align_value);
@@ -1,7 +1,7 @@
1
1
  @import "../pb_icon/icon";
2
2
  @import "../pb_title/title";
3
3
 
4
- [class^=pb_date_kit] {
4
+ .pb_date_kit {
5
5
  display: flex;
6
6
  flex-direction: row;
7
7
  align-items: center;
@@ -9,7 +9,7 @@
9
9
  margin-right: 4px !important;
10
10
  }
11
11
 
12
- &[class*=_center] {
12
+ &._center {
13
13
  display: flex;
14
14
  flex-direction: row;
15
15
  align-items: center;
@@ -17,7 +17,7 @@
17
17
  margin-right: 4px !important;
18
18
  }
19
19
 
20
- &[class*=_right] {
20
+ &._right {
21
21
  display: flex;
22
22
  flex-direction: row;
23
23
  align-items: center;
@@ -25,10 +25,10 @@
25
25
  margin-left: 4px !important;
26
26
  }
27
27
  &.dark {
28
- [class^=pb_title_kit] {
28
+ .pb_title_kit {
29
29
  color: $text_dk_default !important;
30
30
  }
31
- [class^=pb_body_kit], [class^=pb_caption_kit] {
31
+ .pb_body_kit, .pb_caption_kit {
32
32
  color: $text_dk_light !important;
33
33
  }
34
34
  }
@@ -8,7 +8,7 @@
8
8
  @import "./sass_partials/input_styles";
9
9
  @import "./sass_partials/quick_pick_styles";
10
10
 
11
- [class^=pb_date_picker_kit] {
11
+ .pb_date_picker_kit {
12
12
  .input_wrapper {
13
13
  position: relative;
14
14
 
@@ -4,6 +4,7 @@ import classnames from 'classnames'
4
4
  import { buildAriaProps, buildCss, buildDataProps, buildHtmlProps } from '../utilities/props'
5
5
  import { deprecatedProps, globalProps, GlobalProps } from '../utilities/globalProps'
6
6
  import { getAllIcons } from "../utilities/icons/allicons"
7
+ import { camelToSnakeCase } from '../utilities/text'
7
8
 
8
9
  import datePickerHelper from './date_picker_helper'
9
10
  import Icon from '../pb_icon/_icon'
@@ -114,6 +115,20 @@ const DatePicker = (props: DatePickerProps): React.ReactElement => {
114
115
  const inputAriaProps = buildAriaProps(inputAria)
115
116
  const inputDataProps = buildDataProps(inputData)
116
117
 
118
+ // Convert cursor prop to CSS-style format to apply to input tag below
119
+ const getCursorStyle = (cursor?: string): string => {
120
+ // If input is disabled, always use 'not-allowed'
121
+ if (disableInput) return 'not-allowed'
122
+
123
+ // If cursor prop is provided, convert it to styling format
124
+ if (cursor) {
125
+ return camelToSnakeCase(cursor).replace(/_/g, '-')
126
+ }
127
+
128
+ // Default to 'pointer'
129
+ return 'pointer'
130
+ }
131
+
117
132
  useEffect(() => {
118
133
  datePickerHelper({
119
134
  allowInput,
@@ -149,6 +164,7 @@ const DatePicker = (props: DatePickerProps): React.ReactElement => {
149
164
  required: false,
150
165
  }, scrollContainer)
151
166
  }, initializeOnce ? [] : undefined)
167
+
152
168
  const filteredProps = {...props}
153
169
  if (filteredProps.marginBottom === undefined) {
154
170
  filteredProps.marginBottom = "sm"
@@ -163,6 +179,7 @@ const DatePicker = (props: DatePickerProps): React.ReactElement => {
163
179
  error ? 'error' : null,
164
180
  className
165
181
  )
182
+
166
183
  const iconWrapperClass = () => {
167
184
  let base = 'cal_icon_wrapper'
168
185
  if (dark) {
@@ -176,6 +193,7 @@ const DatePicker = (props: DatePickerProps): React.ReactElement => {
176
193
  }
177
194
  return base
178
195
  }
196
+
179
197
  const angleDown = getAllIcons()["angleDown"].icon as unknown as { [key: string]: SVGElement }
180
198
 
181
199
  return (
@@ -206,6 +224,7 @@ const DatePicker = (props: DatePickerProps): React.ReactElement => {
206
224
  name={name}
207
225
  onChange={inputOnChange}
208
226
  placeholder={placeholder}
227
+ style={{ cursor: getCursorStyle(filteredProps.cursor) }}
209
228
  value={inputValue}
210
229
  />
211
230
 
@@ -10,6 +10,7 @@
10
10
  <%= pb_rails("text_input", props: {
11
11
  aria: object.input_aria,
12
12
  autocomplete: false,
13
+ cursor: object.cursor,
13
14
  dark: object.dark,
14
15
  data: object.input_data,
15
16
  disabled: object.disable_input,
@@ -89,16 +89,6 @@ const datePickerHelper = (config: DatePickerConfig, scrollContainer: string | HT
89
89
  }
90
90
  }
91
91
 
92
- // Helper function to get min/max dates based on yearRange
93
- const getMinMaxDates = () => {
94
- const [minYear, maxYear] = yearRange
95
-
96
- const setMinDate = minDate || `01/01/${minYear}`
97
- const setMaxDate = maxDate || `12/31/${maxYear}`
98
-
99
- return { setMinDate, setMaxDate }
100
- }
101
-
102
92
  const disabledWeekDays = () => {
103
93
  return (
104
94
  [
@@ -211,8 +201,6 @@ const datePickerHelper = (config: DatePickerConfig, scrollContainer: string | HT
211
201
  // | Flatpickr initializer w/ config |
212
202
  // ===========================================================
213
203
 
214
- const { setMinDate, setMaxDate } = getMinMaxDates()
215
-
216
204
  flatpickr(`#${pickerId}`, {
217
205
  allowInput,
218
206
  closeOnSelect,
@@ -224,8 +212,8 @@ const datePickerHelper = (config: DatePickerConfig, scrollContainer: string | HT
224
212
  locale: {
225
213
  rangeSeparator: ' to '
226
214
  },
227
- maxDate: setMaxDate,
228
- minDate: setMinDate,
215
+ maxDate,
216
+ minDate,
229
217
  mode,
230
218
  nextArrow: '<i class="far fa-angle-right"></i>',
231
219
  onOpen: [() => {
@@ -335,7 +323,7 @@ const datePickerHelper = (config: DatePickerConfig, scrollContainer: string | HT
335
323
  }
336
324
  // === End of Automatic Sync Logic ===
337
325
 
338
-
326
+
339
327
  // Adding dropdown icons to year and month select
340
328
  dropdown.insertAdjacentHTML('afterend', `<i class="year-dropdown-icon">${angleDown}</i>`)
341
329
  if (picker.monthElements[0].parentElement) {
@@ -6,7 +6,7 @@
6
6
  Default - display grey caret icon
7
7
  Hover - display blue caret icon
8
8
  */
9
- [class^=pb_date_picker_kit] {
9
+ .pb_date_picker_kit {
10
10
  /*Default - No value in date picker*/
11
11
  &.inline-date-picker {
12
12
  [class^="pb_text_input_kit"] .text_input_wrapper .flatpickr-wrapper input::placeholder,
@@ -95,7 +95,7 @@
95
95
  /*
96
96
  DARK MODE
97
97
  */
98
- [class^=pb_date_picker_kit].dark {
98
+ .pb_date_picker_kit.dark {
99
99
  &.inline-date-picker {
100
100
  &:not(:hover) {
101
101
  .date-picker-inline-angle-down.cal_icon_wrapper {
@@ -1,6 +1,6 @@
1
1
  @import "../../pb_textarea/textarea_mixin";
2
2
 
3
- [class^=pb_date_picker_kit] {
3
+ .pb_date_picker_kit {
4
4
 
5
5
  .pb_date_picker_kit_label {
6
6
  margin-bottom: $space_xs;
@@ -40,7 +40,7 @@
40
40
 
41
41
  &.error {
42
42
  .date_picker_input_wrapper {
43
- [class*=pb_body_kit] {
43
+ .pb_body_kit {
44
44
  margin-top: $space_xs / 2;
45
45
  }
46
46
 
@@ -2,7 +2,7 @@
2
2
  @import "../../tokens/spacing";
3
3
  @import "../../tokens/colors";
4
4
 
5
- [class^=pb_date_picker_kit] {
5
+ .pb_date_picker_kit {
6
6
  .pb_time_selection {
7
7
  color: inherit;
8
8
  text-align: left;
@@ -27,10 +27,10 @@
27
27
  }
28
28
  }
29
29
  }
30
- [class^=pb_caption_kit_md], [class^=pb_caption_kit_xs] {
30
+ .pb_caption_kit_md, .pb_caption_kit_xs {
31
31
  line-height: $text_larger;
32
32
  }
33
- [class^=pb_caption_kit_xs] {
33
+ .pb_caption_kit_xs {
34
34
  clear: both;
35
35
  display: block;
36
36
  }
@@ -41,7 +41,7 @@
41
41
  }
42
42
  }
43
43
  .meridiem {
44
- [class^=pb_form_group_kit] {
44
+ .pb_form_group_kit {
45
45
  margin-left: $space_sm;
46
46
  }
47
47
 
@@ -52,7 +52,7 @@
52
52
  background: transparent;
53
53
  }
54
54
 
55
- [class^=pb_selectable_card_kit] > label {
55
+ .pb_selectable_card_kit > label {
56
56
  padding: 0;
57
57
  margin: 0;
58
58
  width: 60px;