playbook_ui 14.7.0.pre.rc.17 → 14.7.0.pre.rc.19

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/_playbook.scss +1 -1
  3. data/app/pb_kits/playbook/pb_card/_card.tsx +11 -4
  4. data/app/pb_kits/playbook/pb_dialog/_dialog.tsx +5 -1
  5. data/app/pb_kits/playbook/pb_flex/_flex.tsx +3 -1
  6. data/app/pb_kits/playbook/pb_flex/_flex_item.tsx +8 -2
  7. data/app/pb_kits/playbook/pb_flex/flex_item.html.erb +3 -6
  8. data/app/pb_kits/playbook/pb_flex/flex_item.rb +7 -2
  9. data/app/pb_kits/playbook/pb_popover/_popover.tsx +1 -1
  10. data/app/pb_kits/playbook/pb_skeleton_loading/_skeleton_loading.scss +37 -0
  11. data/app/pb_kits/playbook/pb_skeleton_loading/_skeleton_loading.tsx +67 -0
  12. data/app/pb_kits/playbook/pb_skeleton_loading/_skeleton_loading_mixins.scss +40 -0
  13. data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_border_radius.jsx +51 -0
  14. data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_border_radius.md +1 -0
  15. data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_color.jsx +26 -0
  16. data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_color.md +1 -0
  17. data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_default.html.erb +1 -0
  18. data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_default.jsx +11 -0
  19. data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_height_width.jsx +59 -0
  20. data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_height_width.md +3 -0
  21. data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_layout.jsx +20 -0
  22. data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_layout.md +3 -0
  23. data/app/pb_kits/playbook/pb_skeleton_loading/docs/example.yml +13 -0
  24. data/app/pb_kits/playbook/pb_skeleton_loading/docs/index.js +5 -0
  25. data/app/pb_kits/playbook/pb_skeleton_loading/skeleton_loading.html.erb +12 -0
  26. data/app/pb_kits/playbook/pb_skeleton_loading/skeleton_loading.rb +8 -0
  27. data/app/pb_kits/playbook/pb_skeleton_loading/skeleton_loading.test.jsx +81 -0
  28. data/app/pb_kits/playbook/utilities/globalPropNames.mjs +3 -0
  29. data/app/pb_kits/playbook/utilities/globalProps.ts +39 -2
  30. data/dist/chunks/_typeahead-DhLic2Fe.js +22 -0
  31. data/dist/chunks/_weekday_stacked-Mx8TYP5I.js +45 -0
  32. data/dist/chunks/vendor.js +1 -1
  33. data/dist/menu.yml +4 -1
  34. data/dist/playbook-doc.js +1 -1
  35. data/dist/playbook-rails-react-bindings.js +1 -1
  36. data/dist/playbook-rails.js +1 -1
  37. data/dist/playbook.css +1 -1
  38. data/lib/playbook/kit_base.rb +43 -5
  39. data/lib/playbook/version.rb +1 -1
  40. metadata +22 -4
  41. data/dist/chunks/_typeahead-5m7Pr_Rh.js +0 -22
  42. data/dist/chunks/_weekday_stacked-B4YQ6Z-d.js +0 -45
@@ -73,15 +73,15 @@ module Playbook
73
73
  prop :aria, type: Playbook::Props::HashProp, default: {}
74
74
  prop :html_options, type: Playbook::Props::HashProp, default: {}
75
75
  prop :children, type: Playbook::Props::Proc
76
+ prop :style, type: Playbook::Props::HashProp, default: {}
77
+ prop :height
78
+ prop :min_height
79
+ prop :max_height
76
80
 
77
81
  def object
78
82
  self
79
83
  end
80
84
 
81
- def combined_html_options
82
- default_html_options.merge(html_options.deep_merge(data_attributes))
83
- end
84
-
85
85
  # rubocop:disable Layout/CommentIndentation
86
86
  # pb_content_tag information (potentially to be abstracted into its own dev doc in the future)
87
87
  # The pb_content_tag generates HTML content tags for rails kits with flexible options.
@@ -110,15 +110,48 @@ module Playbook
110
110
  end
111
111
  # rubocop:enable Style/OptionalBooleanParameter
112
112
 
113
+ def combined_html_options
114
+ merged = default_html_options.dup
115
+
116
+ html_options.each do |key, value|
117
+ if key == :style && value.is_a?(Hash)
118
+ # Convert style hash to CSS string
119
+ merged[:style] = value.map { |k, v| "#{k.to_s.gsub('_', '-')}: #{v}" }.join("; ")
120
+ else
121
+ merged[key] = value
122
+ end
123
+ end
124
+
125
+ inline_styles = dynamic_inline_props
126
+ merged[:style] = if inline_styles.present?
127
+ merged[:style].present? ? "#{merged[:style]}; #{inline_styles}" : inline_styles
128
+ end
129
+
130
+ merged.deep_merge(data_attributes)
131
+ end
132
+
133
+ def global_inline_props
134
+ {
135
+ height: height,
136
+ min_height: min_height,
137
+ max_height: max_height,
138
+ }.compact
139
+ end
140
+
113
141
  private
114
142
 
115
143
  def default_options
116
- {
144
+ options = {
117
145
  id: id,
118
146
  data: data,
119
147
  class: classname,
120
148
  aria: aria,
121
149
  }
150
+
151
+ inline_styles = dynamic_inline_props
152
+ options[:style] = inline_styles if inline_styles.present? && !html_options.key?(:style)
153
+
154
+ options
122
155
  end
123
156
 
124
157
  def default_html_options
@@ -131,5 +164,10 @@ module Playbook
131
164
  aria: aria,
132
165
  }.transform_keys { |key| key.to_s.tr("_", "-").to_sym }
133
166
  end
167
+
168
+ def dynamic_inline_props
169
+ styles = global_inline_props.map { |key, value| "#{key.to_s.gsub('_', '-')}: #{value}" if value.present? }.compact
170
+ styles.join("; ").presence
171
+ end
134
172
  end
135
173
  end
@@ -2,5 +2,5 @@
2
2
 
3
3
  module Playbook
4
4
  PREVIOUS_VERSION = "14.6.2"
5
- VERSION = "14.7.0.pre.rc.17"
5
+ VERSION = "14.7.0.pre.rc.19"
6
6
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: playbook_ui
3
3
  version: !ruby/object:Gem::Version
4
- version: 14.7.0.pre.rc.17
4
+ version: 14.7.0.pre.rc.19
5
5
  platform: ruby
6
6
  authors:
7
7
  - Power UX
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2024-11-07 00:00:00.000000000 Z
12
+ date: 2024-11-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: actionpack
@@ -2433,6 +2433,24 @@ files:
2433
2433
  - app/pb_kits/playbook/pb_selectable_list/selectable_list.test.js
2434
2434
  - app/pb_kits/playbook/pb_selectable_list/selectable_list_item.html.erb
2435
2435
  - app/pb_kits/playbook/pb_selectable_list/selectable_list_item.rb
2436
+ - app/pb_kits/playbook/pb_skeleton_loading/_skeleton_loading.scss
2437
+ - app/pb_kits/playbook/pb_skeleton_loading/_skeleton_loading.tsx
2438
+ - app/pb_kits/playbook/pb_skeleton_loading/_skeleton_loading_mixins.scss
2439
+ - app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_border_radius.jsx
2440
+ - app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_border_radius.md
2441
+ - app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_color.jsx
2442
+ - app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_color.md
2443
+ - app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_default.html.erb
2444
+ - app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_default.jsx
2445
+ - app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_height_width.jsx
2446
+ - app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_height_width.md
2447
+ - app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_layout.jsx
2448
+ - app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_layout.md
2449
+ - app/pb_kits/playbook/pb_skeleton_loading/docs/example.yml
2450
+ - app/pb_kits/playbook/pb_skeleton_loading/docs/index.js
2451
+ - app/pb_kits/playbook/pb_skeleton_loading/skeleton_loading.html.erb
2452
+ - app/pb_kits/playbook/pb_skeleton_loading/skeleton_loading.rb
2453
+ - app/pb_kits/playbook/pb_skeleton_loading/skeleton_loading.test.jsx
2436
2454
  - app/pb_kits/playbook/pb_source/_source.scss
2437
2455
  - app/pb_kits/playbook/pb_source/_source.tsx
2438
2456
  - app/pb_kits/playbook/pb_source/docs/_description.md
@@ -3133,8 +3151,8 @@ files:
3133
3151
  - app/pb_kits/playbook/utilities/test/globalProps/truncate.test.js
3134
3152
  - app/pb_kits/playbook/utilities/text.ts
3135
3153
  - app/pb_kits/playbook/utilities/validEmojiChecker.ts
3136
- - dist/chunks/_typeahead-5m7Pr_Rh.js
3137
- - dist/chunks/_weekday_stacked-B4YQ6Z-d.js
3154
+ - dist/chunks/_typeahead-DhLic2Fe.js
3155
+ - dist/chunks/_weekday_stacked-Mx8TYP5I.js
3138
3156
  - dist/chunks/lazysizes-B7xYodB-.js
3139
3157
  - dist/chunks/lib-D-mTv-kp.js
3140
3158
  - dist/chunks/pb_form_validation-BkWGwJsl.js