playbook_ui 14.18.0.pre.alpha.play2087emptystatekitbuildrails7533 → 14.18.0.pre.alpha.play2149overlaykitdynamicbug7619

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 (68) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/pb_card/card.html.erb +1 -1
  3. data/app/pb_kits/playbook/pb_card/card.rb +12 -0
  4. data/app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones.html.erb +22 -1
  5. data/app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones_line.html.erb +55 -0
  6. data/app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones_line_rails.md +5 -0
  7. data/app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones_rails.md +5 -0
  8. data/app/pb_kits/playbook/pb_draggable/docs/_draggable_event_listeners.jsx +59 -0
  9. data/app/pb_kits/playbook/pb_draggable/docs/_draggable_event_listeners_react.md +1 -0
  10. data/app/pb_kits/playbook/pb_draggable/docs/example.yml +2 -0
  11. data/app/pb_kits/playbook/pb_draggable/docs/index.js +2 -1
  12. data/app/pb_kits/playbook/pb_draggable/draggable_container.rb +11 -1
  13. data/app/pb_kits/playbook/pb_draggable/draggable_item.rb +11 -1
  14. data/app/pb_kits/playbook/pb_draggable/index.js +4 -2
  15. data/app/pb_kits/playbook/pb_draggable/subcomponents/DraggableItem.tsx +33 -5
  16. data/app/pb_kits/playbook/pb_dropdown/_dropdown.scss +5 -0
  17. data/app/pb_kits/playbook/pb_dropdown/_dropdown.tsx +5 -16
  18. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_autocomplete.html.erb +28 -0
  19. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_autocomplete.jsx +17 -64
  20. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_autocomplete_with_subcomponents.html.erb +58 -0
  21. data/app/pb_kits/playbook/pb_dropdown/docs/{_dropdown_with_autocomplete_and_custom_display.jsx → _dropdown_with_autocomplete_with_subcomponents.jsx} +11 -25
  22. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_autocomplete_with_subcomponents.md +1 -0
  23. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_external_control.md +1 -0
  24. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_search.jsx +61 -0
  25. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_search.md +2 -0
  26. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_search_rails.html.erb +52 -0
  27. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_search_rails.md +2 -0
  28. data/app/pb_kits/playbook/pb_dropdown/docs/example.yml +7 -4
  29. data/app/pb_kits/playbook/pb_dropdown/docs/index.js +2 -2
  30. data/app/pb_kits/playbook/pb_dropdown/dropdown.html.erb +2 -2
  31. data/app/pb_kits/playbook/pb_dropdown/dropdown.rb +4 -0
  32. data/app/pb_kits/playbook/pb_dropdown/dropdown.test.jsx +45 -1
  33. data/app/pb_kits/playbook/pb_dropdown/dropdown_container.html.erb +10 -0
  34. data/app/pb_kits/playbook/pb_dropdown/dropdown_container.rb +3 -0
  35. data/app/pb_kits/playbook/pb_dropdown/dropdown_trigger.html.erb +12 -2
  36. data/app/pb_kits/playbook/pb_dropdown/dropdown_trigger.rb +3 -1
  37. data/app/pb_kits/playbook/pb_dropdown/index.js +57 -0
  38. data/app/pb_kits/playbook/pb_dropdown/keyboard_accessibility.js +26 -0
  39. data/app/pb_kits/playbook/pb_dropdown/subcomponents/DropdownContainer.tsx +1 -2
  40. data/app/pb_kits/playbook/pb_dropdown/subcomponents/DropdownTrigger.tsx +4 -4
  41. data/app/pb_kits/playbook/pb_empty_state/_empty_state.scss +1 -7
  42. data/app/pb_kits/playbook/pb_empty_state/docs/example.yml +1 -5
  43. data/app/pb_kits/playbook/pb_overlay/_overlay.scss +2 -1
  44. data/app/pb_kits/playbook/pb_overlay/docs/_overlay_vertical_dynamic_multi_directional.jsx +1 -1
  45. data/app/pb_kits/playbook/pb_overlay/subcomponents/_overlay_token.tsx +5 -4
  46. data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_custom_click.jsx +7 -7
  47. data/app/pb_kits/playbook/pb_table/subcomponents/_table_row.tsx +5 -5
  48. data/dist/chunks/{_typeahead-D8CsVBZO.js → _typeahead-Bc1SPP0-.js} +2 -2
  49. data/dist/chunks/_weekday_stacked-DDrCiip0.js +45 -0
  50. data/dist/chunks/vendor.js +1 -1
  51. data/dist/menu.yml +1 -1
  52. data/dist/playbook-doc.js +1 -1
  53. data/dist/playbook-rails-react-bindings.js +1 -1
  54. data/dist/playbook-rails.js +1 -1
  55. data/dist/playbook.css +1 -1
  56. data/lib/playbook/version.rb +1 -1
  57. metadata +20 -15
  58. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_autocomplete_and_custom_display.md +0 -1
  59. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_hook.jsx +0 -79
  60. data/app/pb_kits/playbook/pb_empty_state/docs/_empty_state_alignment.html.erb +0 -30
  61. data/app/pb_kits/playbook/pb_empty_state/docs/_empty_state_default.html.erb +0 -8
  62. data/app/pb_kits/playbook/pb_empty_state/docs/_empty_state_orientation.html.erb +0 -13
  63. data/app/pb_kits/playbook/pb_empty_state/docs/_empty_state_size.html.erb +0 -23
  64. data/app/pb_kits/playbook/pb_empty_state/empty_state.html.erb +0 -24
  65. data/app/pb_kits/playbook/pb_empty_state/empty_state.rb +0 -123
  66. data/dist/chunks/_weekday_stacked-D3oLTSkH.js +0 -45
  67. /data/app/pb_kits/playbook/pb_draggable/docs/{_draggable_drop_zones_line.md → _draggable_drop_zones_line_react.md} +0 -0
  68. /data/app/pb_kits/playbook/pb_draggable/docs/{_draggable_event_listeners.md → _draggable_event_listeners_rails.md} +0 -0
@@ -2,5 +2,5 @@
2
2
 
3
3
  module Playbook
4
4
  PREVIOUS_VERSION = "14.18.0"
5
- VERSION = "14.18.0.pre.alpha.play2087emptystatekitbuildrails7533"
5
+ VERSION = "14.18.0.pre.alpha.play2149overlaykitdynamicbug7619"
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.18.0.pre.alpha.play2087emptystatekitbuildrails7533
4
+ version: 14.18.0.pre.alpha.play2149overlaykitdynamicbug7619
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: 2025-05-06 00:00:00.000000000 Z
12
+ date: 2025-05-07 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: actionpack
@@ -1229,11 +1229,16 @@ files:
1229
1229
  - app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones_colors.jsx
1230
1230
  - app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones_colors_rails.md
1231
1231
  - app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones_colors_react.md
1232
+ - app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones_line.html.erb
1232
1233
  - app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones_line.jsx
1233
- - app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones_line.md
1234
+ - app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones_line_rails.md
1235
+ - app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones_line_react.md
1236
+ - app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones_rails.md
1234
1237
  - app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones_react.md
1235
1238
  - app/pb_kits/playbook/pb_draggable/docs/_draggable_event_listeners.html.erb
1236
- - app/pb_kits/playbook/pb_draggable/docs/_draggable_event_listeners.md
1239
+ - app/pb_kits/playbook/pb_draggable/docs/_draggable_event_listeners.jsx
1240
+ - app/pb_kits/playbook/pb_draggable/docs/_draggable_event_listeners_rails.md
1241
+ - app/pb_kits/playbook/pb_draggable/docs/_draggable_event_listeners_react.md
1237
1242
  - app/pb_kits/playbook/pb_draggable/docs/_draggable_multiple_containers.html.erb
1238
1243
  - app/pb_kits/playbook/pb_draggable/docs/_draggable_multiple_containers.jsx
1239
1244
  - app/pb_kits/playbook/pb_draggable/docs/_draggable_multiple_containers_rails.md
@@ -1318,10 +1323,12 @@ files:
1318
1323
  - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_subtle_variant.html.erb
1319
1324
  - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_subtle_variant.jsx
1320
1325
  - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_subtle_variant.md
1326
+ - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_autocomplete.html.erb
1321
1327
  - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_autocomplete.jsx
1322
1328
  - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_autocomplete.md
1323
- - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_autocomplete_and_custom_display.jsx
1324
- - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_autocomplete_and_custom_display.md
1329
+ - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_autocomplete_with_subcomponents.html.erb
1330
+ - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_autocomplete_with_subcomponents.jsx
1331
+ - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_autocomplete_with_subcomponents.md
1325
1332
  - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_display.jsx
1326
1333
  - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_display.md
1327
1334
  - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_display_rails.html.erb
@@ -1338,10 +1345,14 @@ files:
1338
1345
  - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_trigger_rails.html.erb
1339
1346
  - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_trigger_rails.md
1340
1347
  - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_external_control.jsx
1341
- - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_hook.jsx
1348
+ - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_external_control.md
1342
1349
  - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_label.html.erb
1343
1350
  - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_label.jsx
1344
1351
  - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_label.md
1352
+ - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_search.jsx
1353
+ - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_search.md
1354
+ - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_search_rails.html.erb
1355
+ - app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_search_rails.md
1345
1356
  - app/pb_kits/playbook/pb_dropdown/docs/example.yml
1346
1357
  - app/pb_kits/playbook/pb_dropdown/docs/index.js
1347
1358
  - app/pb_kits/playbook/pb_dropdown/dropdown.html.erb
@@ -1366,20 +1377,14 @@ files:
1366
1377
  - app/pb_kits/playbook/pb_dropdown/utilities/subComponentHelper.tsx
1367
1378
  - app/pb_kits/playbook/pb_empty_state/_empty_state.scss
1368
1379
  - app/pb_kits/playbook/pb_empty_state/_empty_state.tsx
1369
- - app/pb_kits/playbook/pb_empty_state/docs/_empty_state_alignment.html.erb
1370
1380
  - app/pb_kits/playbook/pb_empty_state/docs/_empty_state_alignment.jsx
1371
- - app/pb_kits/playbook/pb_empty_state/docs/_empty_state_default.html.erb
1372
1381
  - app/pb_kits/playbook/pb_empty_state/docs/_empty_state_default.jsx
1373
- - app/pb_kits/playbook/pb_empty_state/docs/_empty_state_orientation.html.erb
1374
1382
  - app/pb_kits/playbook/pb_empty_state/docs/_empty_state_orientation.jsx
1375
- - app/pb_kits/playbook/pb_empty_state/docs/_empty_state_size.html.erb
1376
1383
  - app/pb_kits/playbook/pb_empty_state/docs/_empty_state_size.jsx
1377
1384
  - app/pb_kits/playbook/pb_empty_state/docs/default_image/computer_fly_no_branding.svg
1378
1385
  - app/pb_kits/playbook/pb_empty_state/docs/default_image/utils.tsx
1379
1386
  - app/pb_kits/playbook/pb_empty_state/docs/example.yml
1380
1387
  - app/pb_kits/playbook/pb_empty_state/docs/index.js
1381
- - app/pb_kits/playbook/pb_empty_state/empty_state.html.erb
1382
- - app/pb_kits/playbook/pb_empty_state/empty_state.rb
1383
1388
  - app/pb_kits/playbook/pb_empty_state/empty_state.test.jsx
1384
1389
  - app/pb_kits/playbook/pb_enhanced_element/element_observer.ts
1385
1390
  - app/pb_kits/playbook/pb_enhanced_element/index.ts
@@ -3545,8 +3550,8 @@ files:
3545
3550
  - app/pb_kits/playbook/utilities/test/globalProps/truncate.test.js
3546
3551
  - app/pb_kits/playbook/utilities/text.ts
3547
3552
  - app/pb_kits/playbook/utilities/validEmojiChecker.ts
3548
- - dist/chunks/_typeahead-D8CsVBZO.js
3549
- - dist/chunks/_weekday_stacked-D3oLTSkH.js
3553
+ - dist/chunks/_typeahead-Bc1SPP0-.js
3554
+ - dist/chunks/_weekday_stacked-DDrCiip0.js
3550
3555
  - dist/chunks/lazysizes-B7xYodB-.js
3551
3556
  - dist/chunks/lib-BmTAc7Nc.js
3552
3557
  - dist/chunks/pb_form_validation-BWjy4bFn.js
@@ -1 +0,0 @@
1
- `autocomplete` prop can also be used in conjunction with the `customDisplay` prop.
@@ -1,79 +0,0 @@
1
- import React, { useRef } from 'react'
2
-
3
- import Dropdown from '../../pb_dropdown/_dropdown'
4
- import useDropdown from '../../pb_dropdown/hooks/useDropdown'
5
- import CircleIconButton from '../../pb_circle_icon_button/_circle_icon_button'
6
- import FlexItem from '../../pb_flex/_flex_item'
7
- import Icon from '../../pb_icon/_icon'
8
- import Body from '../../pb_body/_body'
9
- import Flex from '../../pb_flex/_flex'
10
-
11
- const DropdownWithHook = (props) => {
12
- const [isDropDownClosed, setIsDropdownClosed] = useDropdown(true);
13
- const buttonRef = useRef(null);
14
-
15
- const options = [
16
- {
17
- label: "United States",
18
- value: "United States",
19
- areaCode: "+1",
20
- icon: "🇺🇸",
21
- id: "United-states"
22
- },
23
- {
24
- label: "Canada",
25
- value: "Canada",
26
- areaCode: "+1",
27
- icon: "🇨🇦",
28
- id: "canada"
29
- },
30
- {
31
- label: "Pakistan",
32
- value: "Pakistan",
33
- areaCode: "+92",
34
- icon: "🇵🇰",
35
- id: "pakistan"
36
- }
37
- ];
38
-
39
- return (
40
- <div>
41
- <CircleIconButton
42
- htmlOptions={{ref: buttonRef}}
43
- icon={"flag"}
44
- onClick={() => setIsDropdownClosed(!isDropDownClosed)}
45
- variant="secondary"
46
- />
47
- <Dropdown
48
- isClosed={isDropDownClosed}
49
- options={options}
50
- triggerRef={buttonRef}
51
- {...props}
52
- >
53
- {options.map((option) => (
54
- <Dropdown.Option key={option.id}
55
- option={option}
56
- >
57
- <>
58
- <FlexItem>
59
- <Flex paddingRight='md'>
60
- <Icon icon={option.icon}
61
- paddingRight="xs"
62
- />
63
- <Body text={option.label} />
64
- </Flex>
65
- </FlexItem>
66
- <FlexItem>
67
- <Body color="light"
68
- text={option.areaCode}
69
- />
70
- </FlexItem>
71
- </>
72
- </Dropdown.Option>
73
- ))}
74
- </Dropdown>
75
- </div>
76
- )
77
- }
78
-
79
- export default DropdownWithHook
@@ -1,30 +0,0 @@
1
- <%= pb_rails("flex", props: {align: "center", spacing: "evenly"}) do %>
2
- <%= pb_rails("empty_state", props: {
3
- description: "Body text goes into detail with possible steps for user to take",
4
- header: "Title Explains",
5
- image: "default",
6
- id: "empty_state_default",
7
- primary_button: "Next Action",
8
- primary_button_url: "https://www.playbook.com",
9
- alignment: "left",
10
- }) %>
11
-
12
- <%= pb_rails("empty_state", props: {
13
- description: "Body text goes into detail with possible steps for user to take",
14
- header: "Title Explains",
15
- image: "default",
16
- id: "empty_state_default",
17
- primary_button: "Next Action",
18
- primary_button_url: "https://www.playbook.com",
19
- }) %>
20
-
21
- <%= pb_rails("empty_state", props: {
22
- description: "Body text goes into detail with possible steps for user to take",
23
- header: "Title Explains",
24
- image: "default",
25
- id: "empty_state_default",
26
- primary_button: "Next Action",
27
- primary_button_url: "https://www.playbook.com",
28
- alignment: "right",
29
- }) %>
30
- <% end %>
@@ -1,8 +0,0 @@
1
- <%= pb_rails("flex", props: {align: "center", justify: "center"}) do %>
2
- <%= pb_rails("empty_state", props: {
3
- description: "Body text goes into detail with possible steps for user to take",
4
- header: "Title Explains",
5
- image: "default",
6
- id: "empty_state_default",
7
- }) %>
8
- <% end %>
@@ -1,13 +0,0 @@
1
- <%= pb_rails("flex", props: {align: "center", justify: "center"}) do %>
2
- <%= pb_rails("empty_state", props: {
3
- description: "Body text goes into detail with possible steps for user to take",
4
- header: "Title Explains",
5
- image: "default",
6
- id: "empty_state_default",
7
- orientation:"horizontal",
8
- alignment: "left",
9
- size: "lg",
10
- primary_button: "Next Action",
11
- primary_button_url: "https://www.playbook.com",
12
- }) %>
13
- <% end %>
@@ -1,23 +0,0 @@
1
- <%= pb_rails("flex", props: {align: "center", spacing: "evenly"}) do %>
2
- <%= pb_rails("empty_state", props: {
3
- description: "Body text goes into detail with possible steps for user to take",
4
- header: "Title Explains",
5
- image: "default",
6
- id: "empty_state_default",
7
- primary_button: "Next Action",
8
- primary_button_url: "https://www.playbook.com",
9
- link_button: "Alt Action",
10
- size: "sm",
11
- }) %>
12
-
13
- <%= pb_rails("empty_state", props: {
14
- description: "Body text goes into detail with possible steps for user to take",
15
- header: "Title Explains",
16
- image: "default",
17
- id: "empty_state_default",
18
- primary_button: "Next Action",
19
- primary_button_url: "https://www.playbook.com",
20
- link_button: "Alt Action",
21
- size: "lg",
22
- }) %>
23
- <% end %>
@@ -1,24 +0,0 @@
1
- <%= pb_content_tag(:div,
2
- aria: aria,
3
- class: classname,
4
- data: data,
5
- id: id,
6
- **combined_html_options) do %>
7
- <%= pb_rails("flex", props: { align: flex_align, orientation: config[:flex_direction], padding_left: padding_size, padding_right: padding_size, vertical: "center", classname: config[:scss_class] }) do %>
8
- <%= pb_rails("image", props: { url: image == "default" ? default_image_data_uri : image, alt: "Empty State Image", html_options: { width: config[:image_width], height: "auto", alignment: "start" } }) %>
9
- <%= pb_rails("flex/flex_item") do %>
10
- <%= pb_rails("title", props: { text: object.header, size: config[:title_size], padding_bottom: config[:title_padding], text_align: alignment }) %>
11
- <% if size == "sm" %>
12
- <%= pb_rails("detail", props: { text: object.description, padding_bottom: config[:description_pad], text_align: alignment }) %>
13
- <% else %>
14
- <%= pb_rails("body", props: { text: object.description, padding_bottom: config[:description_pad], text_align: alignment }) %>
15
- <% end %>
16
- <% if primary_button.present? %>
17
- <%= pb_rails("button", props: { text: primary_button, variant: "primary", width: "100%", size: config[:button_size], href: primary_button_url, margin_bottom: config[:button_margin] }) %>
18
- <% end %>
19
- <% if link_button.present? %>
20
- <%= pb_rails("button", props: { text: link_button, variant: "link", size: config[:button_size], href: primary_button_url, width: "100%" }) %>
21
- <% end %>
22
- <% end %>
23
- <% end %>
24
- <% end %>
@@ -1,123 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Playbook
4
- module PbEmptyState
5
- class EmptyState < Playbook::KitBase
6
- prop :alignment, type: Playbook::Props::Enum,
7
- values: %w[center left right],
8
- default: "center"
9
- prop :description
10
- prop :header
11
- prop :image
12
- prop :link_button
13
- prop :link_button_url
14
- prop :orientation, type: Playbook::Props::Enum,
15
- values: %w[horizontal vertical],
16
- default: "vertical"
17
- prop :primary_button
18
- prop :primary_button_url
19
- prop :size, type: Playbook::Props::Enum,
20
- values: %w[sm md lg],
21
- default: "md"
22
-
23
- SIZE_CONFIGS = {
24
- sm: {
25
- vertical: {
26
- image_width: "100px",
27
- title_size: 4,
28
- title_padding: "xxs",
29
- description_pad: "sm",
30
- button_size: "sm",
31
- button_margin: "xs",
32
- scss_class: "sm-state-vertical",
33
- flex_direction: "column",
34
- },
35
- horizontal: {
36
- image_width: "100px",
37
- title_size: 4,
38
- title_padding: "xxs",
39
- description_pad: "sm",
40
- button_size: "sm",
41
- button_margin: "xs",
42
- scss_class: "sm-state-horizontal",
43
- flex_direction: "row",
44
- },
45
- },
46
- md: {
47
- vertical: {
48
- image_width: "140px",
49
- title_size: 3,
50
- title_padding: "xs",
51
- description_pad: "md",
52
- button_size: "md",
53
- button_margin: "sm",
54
- scss_class: "md-state-vertical",
55
- flex_direction: "column",
56
- },
57
- horizontal: {
58
- image_width: "140px",
59
- title_size: 3,
60
- title_padding: "xs",
61
- description_pad: "md",
62
- button_size: "md",
63
- button_margin: "sm",
64
- scss_class: "md-state-horizontal",
65
- flex_direction: "row",
66
- },
67
- },
68
- lg: {
69
- vertical: {
70
- image_width: "100%",
71
- title_size: 1,
72
- title_padding: "sm",
73
- description_pad: "lg",
74
- button_size: "md",
75
- button_margin: "md",
76
- scss_class: "lg-state-vertical",
77
- flex_direction: "column",
78
- },
79
- horizontal: {
80
- image_width: "100%",
81
- title_size: 2,
82
- title_padding: "sm",
83
- description_pad: "lg",
84
- button_size: "md",
85
- button_margin: "md",
86
- scss_class: "lg-state-horizontal",
87
- flex_direction: "row",
88
- },
89
- },
90
- }.freeze
91
-
92
- def classname
93
- generate_classname("pb_empty_state_kit")
94
- end
95
-
96
- def config
97
- SIZE_CONFIGS[size.to_sym][orientation.to_sym]
98
- end
99
-
100
- def default_image_data_uri
101
- svg_path = __dir__.then { |d| File.join(d, "docs", "default_image", "computer_fly_no_branding.svg") }
102
- svg = File.read(svg_path)
103
- encoded = ERB::Util.url_encode(svg)
104
- "data:image/svg+xml,#{encoded}"
105
- end
106
-
107
- def padding_size
108
- size == "sm" ? "xs" : "xl"
109
- end
110
-
111
- def flex_align
112
- case alignment
113
- when "left"
114
- "start"
115
- when "right"
116
- "end"
117
- else
118
- "center"
119
- end
120
- end
121
- end
122
- end
123
- end