playbook_ui 4.18.1.pre.alpha1 → 5.1.0.pre.alpha2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +2 -2
- data/app/helpers/playbook/pb_sample_helper.rb +1 -1
- data/app/pb_kits/playbook/_playbook.scss +1 -1
- data/app/pb_kits/playbook/index.js +4 -0
- data/app/pb_kits/playbook/pb_caption/_caption.jsx +21 -4
- data/app/pb_kits/playbook/pb_card/_card.scss +1 -72
- data/app/pb_kits/playbook/pb_card/_card_mixin.scss +72 -0
- data/app/pb_kits/playbook/pb_filter/Filter/FiltersPopover.jsx +0 -1
- data/app/pb_kits/playbook/pb_filter/Filter/SortMenu.jsx +1 -1
- data/app/pb_kits/playbook/pb_filter/templates/_default.html.erb +2 -2
- data/app/pb_kits/playbook/pb_installer/_installer.html.erb +16 -0
- data/app/pb_kits/playbook/pb_installer/_installer.jsx +54 -0
- data/app/pb_kits/playbook/pb_installer/_installer.scss +7 -0
- data/app/pb_kits/playbook/pb_installer/docs/_installer_default.html.erb +8 -0
- data/app/pb_kits/playbook/pb_installer/docs/_installer_default.jsx +16 -0
- data/app/pb_kits/playbook/pb_installer/docs/example.yml +9 -0
- data/app/pb_kits/playbook/pb_installer/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_installer/installer.rb +18 -0
- data/app/pb_kits/playbook/pb_layout/_body.html.erb +1 -1
- data/app/pb_kits/playbook/pb_layout/_column.html.erb +7 -0
- data/app/pb_kits/playbook/pb_layout/_layout.jsx +31 -13
- data/app/pb_kits/playbook/pb_layout/_layout.scss +54 -0
- data/app/pb_kits/playbook/pb_layout/body.rb +4 -0
- data/app/pb_kits/playbook/pb_layout/docs/_layout_kanban.html.erb +140 -0
- data/app/pb_kits/playbook/pb_layout/docs/_layout_kanban.jsx +1234 -0
- data/app/pb_kits/playbook/pb_layout/docs/_layout_kanban_responsive.html.erb +57 -0
- data/app/pb_kits/playbook/pb_layout/docs/_layout_kanban_responsive.jsx +46 -0
- data/app/pb_kits/playbook/pb_layout/docs/example.yml +3 -0
- data/app/pb_kits/playbook/pb_layout/docs/index.js +2 -0
- data/app/pb_kits/playbook/pb_layout/layout.rb +12 -4
- data/app/pb_kits/playbook/pb_list/_item.html.erb +3 -2
- data/app/pb_kits/playbook/pb_list/_list.html.erb +3 -3
- data/app/pb_kits/playbook/pb_list/_list.jsx +55 -10
- data/app/pb_kits/playbook/pb_list/_list_item.jsx +41 -18
- data/app/pb_kits/playbook/pb_list/docs/_list_borderless.jsx +21 -0
- data/app/pb_kits/playbook/pb_list/docs/_list_dark.jsx +0 -5
- data/app/pb_kits/playbook/pb_list/docs/_list_dark_borderless.jsx +22 -0
- data/app/pb_kits/playbook/pb_list/docs/_list_dark_lg.jsx +22 -0
- data/app/pb_kits/playbook/pb_list/docs/_list_dark_ordered.jsx +22 -0
- data/app/pb_kits/playbook/pb_list/docs/_list_dark_xpadding.jsx +22 -0
- data/app/pb_kits/playbook/pb_list/docs/_list_layout_left.jsx +75 -0
- data/app/pb_kits/playbook/pb_list/docs/_list_layout_right.jsx +75 -0
- data/app/pb_kits/playbook/pb_list/docs/_list_lg.jsx +21 -0
- data/app/pb_kits/playbook/pb_list/docs/_list_ordered.jsx +21 -0
- data/app/pb_kits/playbook/pb_list/docs/_list_xpadding.jsx +21 -0
- data/app/pb_kits/playbook/pb_list/docs/example.yml +12 -1
- data/app/pb_kits/playbook/pb_list/docs/index.js +11 -0
- data/app/pb_kits/playbook/pb_popover/_popover.html.erb +4 -4
- data/app/pb_kits/playbook/pb_popover/_popover.jsx +41 -8
- data/app/pb_kits/playbook/pb_popover/_popover.scss +41 -2
- data/app/pb_kits/playbook/pb_popover/docs/_popover_close.html.erb +42 -0
- data/app/pb_kits/playbook/pb_popover/docs/_popover_close.jsx +99 -0
- data/app/pb_kits/playbook/pb_popover/docs/_popover_default.html.erb +19 -7
- data/app/pb_kits/playbook/pb_popover/docs/_popover_default.jsx +22 -6
- data/app/pb_kits/playbook/pb_popover/docs/_popover_list.html.erb +11 -10
- data/app/pb_kits/playbook/pb_popover/docs/_popover_list.jsx +22 -18
- data/app/pb_kits/playbook/pb_popover/docs/_popover_list.md +1 -0
- data/app/pb_kits/playbook/pb_popover/docs/_popover_scroll_height.html.erb +24 -0
- data/app/pb_kits/playbook/pb_popover/docs/_popover_scroll_height.jsx +56 -0
- data/app/pb_kits/playbook/pb_popover/docs/_popover_z_index.html.erb +14 -0
- data/app/pb_kits/playbook/pb_popover/docs/_popover_z_index.jsx +50 -0
- data/app/pb_kits/playbook/pb_popover/docs/example.yml +12 -8
- data/app/pb_kits/playbook/pb_popover/docs/index.js +3 -3
- data/app/pb_kits/playbook/pb_popover/index.js +13 -9
- data/app/pb_kits/playbook/pb_popover/popover.rb +26 -2
- data/app/pb_kits/playbook/pb_title/_title.html.erb +1 -0
- data/app/pb_kits/playbook/pb_title/_title.jsx +24 -17
- data/app/pb_kits/playbook/props.rb +7 -0
- data/app/pb_kits/playbook/tokens/index.scss +12 -0
- data/lib/playbook/version.rb +1 -1
- data/lib/tasks/pb_release.rake +3 -0
- metadata +34 -76
- data/app/assets/images/clark.jpg +0 -0
- data/app/assets/images/giant.jpg +0 -0
- data/app/assets/images/pb-caret.svg +0 -1
- data/app/assets/images/pb-check.svg +0 -11
- data/app/assets/images/pb.logo.svg +0 -28
- data/app/controllers/playbook/application_controller.rb +0 -13
- data/app/controllers/playbook/guides_controller.rb +0 -11
- data/app/controllers/playbook/pages_controller.rb +0 -79
- data/app/controllers/playbook/samples_controller.rb +0 -40
- data/app/pb_kits/playbook/config/_kit_example.html.erb +0 -9
- data/app/pb_kits/playbook/config/_kit_samples_list.html.erb +0 -3
- data/app/pb_kits/playbook/config/_kit_ui.html.erb +0 -40
- data/app/pb_kits/playbook/config/_pb_kit_api.html.erb +0 -18
- data/app/pb_kits/playbook/data/menu.yml +0 -91
- data/app/pb_kits/playbook/packs/application.js +0 -55
- data/app/pb_kits/playbook/packs/examples.js +0 -172
- data/app/pb_kits/playbook/packs/main.scss +0 -12
- data/app/pb_kits/playbook/packs/samples.js +0 -17
- data/app/pb_kits/playbook/packs/site_styles/_samples.scss +0 -72
- data/app/pb_kits/playbook/packs/site_styles/_scaffold.scss +0 -43
- data/app/pb_kits/playbook/packs/site_styles/_site-style.scss +0 -135
- data/app/pb_kits/playbook/packs/site_styles/docs/_all.scss +0 -9
- data/app/pb_kits/playbook/packs/site_styles/docs/_code_snippet.scss +0 -531
- data/app/pb_kits/playbook/packs/site_styles/docs/_color_utilities.scss +0 -92
- data/app/pb_kits/playbook/packs/site_styles/docs/_flex_examples.scss +0 -15
- data/app/pb_kits/playbook/packs/site_styles/docs/_kit_doc.scss +0 -190
- data/app/pb_kits/playbook/packs/site_styles/docs/_kits_examples.scss +0 -18
- data/app/pb_kits/playbook/packs/site_styles/docs/_markdown.scss +0 -82
- data/app/pb_kits/playbook/packs/site_styles/docs/_spacing_tokens.scss +0 -72
- data/app/pb_kits/playbook/pb_popover/docs/_popover_click_any.html.erb +0 -19
- data/app/pb_kits/playbook/pb_popover/docs/_popover_click_any.jsx +0 -40
- data/app/pb_kits/playbook/pb_popover/docs/_popover_click_inside.html.erb +0 -14
- data/app/pb_kits/playbook/pb_popover/docs/_popover_click_inside.jsx +0 -40
- data/app/pb_kits/playbook/pb_popover/docs/_popover_click_outside.html.erb +0 -14
- data/app/pb_kits/playbook/pb_popover/docs/_popover_click_outside.jsx +0 -40
- data/app/pb_kits/playbook/pb_popover/docs/_popover_with_button.jsx +0 -34
- data/app/pb_kits/playbook/pb_popover/docs/_popover_with_circle.html.erb +0 -5
- data/app/views/layouts/playbook/_mobile_hamburger.html.erb +0 -2
- data/app/views/layouts/playbook/_nav.html.erb +0 -13
- data/app/views/layouts/playbook/_sidebar.html.erb +0 -52
- data/app/views/layouts/playbook/application.html.slim +0 -22
- data/app/views/layouts/playbook/fullscreen.html.slim +0 -10
- data/app/views/layouts/playbook/grid.html.slim +0 -10
- data/app/views/layouts/playbook/samples.html.erb +0 -18
- data/app/views/playbook/guides/create_kit.html.slim +0 -16
- data/app/views/playbook/guides/create_kit/_file_naming.html.md +0 -2
- data/app/views/playbook/guides/create_kit/_generator.html.md +0 -6
- data/app/views/playbook/guides/create_kit/_kit_examples.html.md +0 -2
- data/app/views/playbook/guides/create_kit/_kit_rails.html.md +0 -2
- data/app/views/playbook/guides/create_kit/_kit_react.html.md +0 -2
- data/app/views/playbook/guides/create_kit/_layout.html.md +0 -2
- data/app/views/playbook/guides/create_kit/_view_objects.html.md +0 -2
- data/app/views/playbook/guides/create_kit/_writing_sass.md +0 -10
- data/app/views/playbook/guides/use_nitro.html.slim +0 -6
- data/app/views/playbook/guides/use_nitro/_local.html.md +0 -2
- data/app/views/playbook/guides/use_nitro/_nitro_components.html.md +0 -2
- data/app/views/playbook/guides/use_nitro/_versions.html.md +0 -2
- data/app/views/playbook/pages/fullscreen.html.slim +0 -10
- data/app/views/playbook/pages/grid.html.slim +0 -2
- data/app/views/playbook/pages/home.html.slim +0 -4
- data/app/views/playbook/pages/kit_category_show.html.erb +0 -14
- data/app/views/playbook/pages/kit_show.html.erb +0 -33
- data/app/views/playbook/pages/kits.html.erb +0 -12
- data/app/views/playbook/pages/principals/_getting_started.html.md +0 -30
- data/app/views/playbook/pages/principles.html.slim +0 -3
- data/app/views/playbook/pages/tokens.html.slim +0 -15
- data/app/views/playbook/pages/tokens/_pb_doc_spacing.html.slim +0 -17
- data/app/views/playbook/pages/utilities.html.slim +0 -116
- data/app/views/playbook/pages/utilities/_pb_doc_color.html.slim +0 -15
- data/app/views/playbook/samples/dashboards/index.html.erb +0 -81
- data/app/views/playbook/samples/dashboards/index.jsx +0 -130
- data/app/views/playbook/samples/registration/index.html.erb +0 -316
- data/app/views/playbook/samples/registration/index.jsx +0 -476
- data/app/views/playbook/samples/sample_show.html.erb +0 -36
@@ -0,0 +1,42 @@
|
|
1
|
+
<%= pb_rails("flex", props: {classname: "flex-container", spacing: "between"}) do %>
|
2
|
+
<span>
|
3
|
+
<%= pb_rails("button", props: { text: "Click Inside", variant: "secondary", id: 'inside-popover-1' }) %>
|
4
|
+
<%= pb_rails("popover", props: {
|
5
|
+
close_on_click: "inside",
|
6
|
+
trigger_element_id: "inside-popover-1",
|
7
|
+
tooltip_id: "inside-tooltip-1",
|
8
|
+
position: 'bottom',
|
9
|
+
offset: true
|
10
|
+
}) do %>
|
11
|
+
Click on me!
|
12
|
+
<% end %>
|
13
|
+
</span>
|
14
|
+
<span>
|
15
|
+
<%= pb_rails("button", props: { text: "Click Outside", variant: "secondary", id: 'outside-popover-1' }) %>
|
16
|
+
<%= pb_rails("popover", props: {
|
17
|
+
close_on_click: "outside",
|
18
|
+
trigger_element_id: "outside-popover-1",
|
19
|
+
tooltip_id: "outside-tooltip-1",
|
20
|
+
position: 'left',
|
21
|
+
offset: true
|
22
|
+
}) do %>
|
23
|
+
Click anywhere but me!
|
24
|
+
<% end %>
|
25
|
+
</span>
|
26
|
+
<span>
|
27
|
+
<%= pb_rails("button", props: {
|
28
|
+
text: "Click Anywhere",
|
29
|
+
variant: "secondary",
|
30
|
+
id: 'any-popover-1'
|
31
|
+
}) %>
|
32
|
+
<%= pb_rails("popover", props: {
|
33
|
+
close_on_click: "any",
|
34
|
+
trigger_element_id: "any-popover-1",
|
35
|
+
tooltip_id: "any-tooltip-1",
|
36
|
+
position: 'top',
|
37
|
+
offset: true
|
38
|
+
}) do %>
|
39
|
+
Click anything!
|
40
|
+
<% end %>
|
41
|
+
</span>
|
42
|
+
<% end %>
|
@@ -0,0 +1,99 @@
|
|
1
|
+
import React, { useState } from 'react'
|
2
|
+
import {
|
3
|
+
Button,
|
4
|
+
Flex,
|
5
|
+
PbReactPopover,
|
6
|
+
} from '../..'
|
7
|
+
|
8
|
+
const PopoverClose = () => {
|
9
|
+
const [showInsidePopover, setInsideShowPopover] = useState(false)
|
10
|
+
const [showOutsidePopover, setOutsideShowPopover] = useState(false)
|
11
|
+
const [showAnyPopover, setAnyShowPopover] = useState(false)
|
12
|
+
|
13
|
+
const handleInsideShouldClosePopover = (shouldClosePopover) => {
|
14
|
+
setInsideShowPopover(!shouldClosePopover)
|
15
|
+
}
|
16
|
+
|
17
|
+
const handleInsideTogglePopover = () => {
|
18
|
+
setInsideShowPopover(!showInsidePopover)
|
19
|
+
}
|
20
|
+
|
21
|
+
const handleOutsideShouldClosePopover = (shouldClosePopover) => {
|
22
|
+
setOutsideShowPopover(!shouldClosePopover)
|
23
|
+
}
|
24
|
+
|
25
|
+
const handleOutsideTogglePopover = () => {
|
26
|
+
setOutsideShowPopover(!showOutsidePopover)
|
27
|
+
}
|
28
|
+
|
29
|
+
const handleAnyShouldClosePopover = (shouldClosePopover) => {
|
30
|
+
setAnyShowPopover(!shouldClosePopover)
|
31
|
+
}
|
32
|
+
|
33
|
+
const handleAnyTogglePopover = () => {
|
34
|
+
setAnyShowPopover(!showOutsidePopover)
|
35
|
+
}
|
36
|
+
|
37
|
+
const insidePopoverTrigger = (
|
38
|
+
<Button
|
39
|
+
onClick={handleInsideTogglePopover}
|
40
|
+
text="Click Inside"
|
41
|
+
variant="secondary"
|
42
|
+
/>
|
43
|
+
)
|
44
|
+
|
45
|
+
const outsidePopoverTrigger = (
|
46
|
+
<Button
|
47
|
+
onClick={handleOutsideTogglePopover}
|
48
|
+
text="Click Outside"
|
49
|
+
variant="secondary"
|
50
|
+
/>
|
51
|
+
)
|
52
|
+
|
53
|
+
const anyPopoverTrigger = (
|
54
|
+
<Button
|
55
|
+
onClick={handleAnyTogglePopover}
|
56
|
+
text="Click Anywhere"
|
57
|
+
variant="secondary"
|
58
|
+
/>
|
59
|
+
)
|
60
|
+
|
61
|
+
return (
|
62
|
+
<Flex spacing="between">
|
63
|
+
<PbReactPopover
|
64
|
+
closeOnClick="inside"
|
65
|
+
offset
|
66
|
+
placement="bottom"
|
67
|
+
reference={insidePopoverTrigger}
|
68
|
+
shouldClosePopover={handleInsideShouldClosePopover}
|
69
|
+
show={showInsidePopover}
|
70
|
+
>
|
71
|
+
{'Click on me!'}
|
72
|
+
</PbReactPopover>
|
73
|
+
|
74
|
+
<PbReactPopover
|
75
|
+
closeOnClick="outside"
|
76
|
+
offset
|
77
|
+
placement="top"
|
78
|
+
reference={outsidePopoverTrigger}
|
79
|
+
shouldClosePopover={handleOutsideShouldClosePopover}
|
80
|
+
show={showOutsidePopover}
|
81
|
+
>
|
82
|
+
{'Click anywhere but me!'}
|
83
|
+
</PbReactPopover>
|
84
|
+
|
85
|
+
<PbReactPopover
|
86
|
+
closeOnClick="any"
|
87
|
+
offset
|
88
|
+
placement="right"
|
89
|
+
reference={anyPopoverTrigger}
|
90
|
+
shouldClosePopover={handleAnyShouldClosePopover}
|
91
|
+
show={showAnyPopover}
|
92
|
+
>
|
93
|
+
{'Click anything!'}
|
94
|
+
</PbReactPopover>
|
95
|
+
</Flex>
|
96
|
+
)
|
97
|
+
}
|
98
|
+
|
99
|
+
export default PopoverClose
|
@@ -1,8 +1,20 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
1
|
+
<%= pb_rails("flex", props: {
|
2
|
+
orientation: "row",
|
3
|
+
vertical: "center"
|
4
|
+
}) do %>
|
5
|
+
<%= pb_rails("body", props: { text: "Click info for more details" }) %>
|
6
|
+
|
7
|
+
<%= pb_rails("circle_icon_button", props: {
|
8
|
+
variant: "secondary",
|
9
|
+
icon: "info",
|
10
|
+
id: "regular-popover-1"
|
11
|
+
}) %>
|
12
|
+
<%= pb_rails("popover", props: {
|
13
|
+
trigger_element_id: "regular-popover-1",
|
14
|
+
tooltip_id: "tooltip-1",
|
15
|
+
offset: true,
|
16
|
+
position: "top"
|
17
|
+
}) do %>
|
18
|
+
I'm a popover. I can show content of any size.
|
19
|
+
<% end %>
|
4
20
|
<% end %>
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
@@ -1,5 +1,8 @@
|
|
1
1
|
import React, { useState } from 'react'
|
2
2
|
import {
|
3
|
+
Body,
|
4
|
+
CircleIconButton,
|
5
|
+
Flex,
|
3
6
|
PbReactPopover,
|
4
7
|
} from '../..'
|
5
8
|
|
@@ -10,16 +13,29 @@ const PopoverDefault = () => {
|
|
10
13
|
setShowPopover(!showPopover)
|
11
14
|
}
|
12
15
|
const popoverReference = (
|
13
|
-
<
|
16
|
+
<CircleIconButton
|
17
|
+
icon="info"
|
18
|
+
onClick={handleTogglePopover}
|
19
|
+
variant="secondary"
|
20
|
+
/>
|
14
21
|
)
|
15
22
|
|
16
23
|
return (
|
17
|
-
<
|
18
|
-
|
19
|
-
|
24
|
+
<Flex
|
25
|
+
orientation="row"
|
26
|
+
vertical="center"
|
20
27
|
>
|
21
|
-
|
22
|
-
|
28
|
+
<Body text="Click info for more details" />
|
29
|
+
|
30
|
+
<PbReactPopover
|
31
|
+
offset
|
32
|
+
placement="top"
|
33
|
+
reference={popoverReference}
|
34
|
+
show={showPopover}
|
35
|
+
>
|
36
|
+
{'I\'m a popover. I can show content of any size.'}
|
37
|
+
</PbReactPopover>
|
38
|
+
</Flex>
|
23
39
|
)
|
24
40
|
}
|
25
41
|
|
@@ -1,12 +1,13 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
<%= pb_rails("
|
4
|
-
|
5
|
-
|
6
|
-
<%= pb_rails("list
|
7
|
-
|
8
|
-
|
9
|
-
|
1
|
+
<%= pb_rails("button", props: { variant: "secondary", id: 'list' }) do %>
|
2
|
+
Filter By
|
3
|
+
<%= pb_rails("icon", props: { icon: "angle-down"}) %>
|
4
|
+
<% end %>
|
5
|
+
<%= pb_rails("popover", props: {trigger_element_id: "list", tooltip_id: "list-tooltip", position: 'bottom', padding: "none"}) do %>
|
6
|
+
<%= pb_rails("list", props: {ordered: false, dark: false, borderless: false, xpadding: true}) do %>
|
7
|
+
<%= pb_rails("list/item") do %><a>Popularity</a><% end %>
|
8
|
+
<%= pb_rails("list/item") do %><a>Title</a><% end %>
|
9
|
+
<%= pb_rails("list/item") do %><a>Duration</a><% end %>
|
10
|
+
<%= pb_rails("list/item") do %><a>Date Started</a><% end %>
|
11
|
+
<%= pb_rails("list/item") do %><a>Date Ended </a><% end %>
|
10
12
|
<% end %>
|
11
13
|
<% end %>
|
12
|
-
</div>
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import React, { useState } from 'react'
|
2
2
|
import {
|
3
3
|
Button,
|
4
|
+
Icon,
|
4
5
|
List,
|
5
6
|
ListItem,
|
6
7
|
PbReactPopover,
|
@@ -16,28 +17,31 @@ const PopoverWithButton = () => {
|
|
16
17
|
const popoverReference = (
|
17
18
|
<Button
|
18
19
|
onClick={handleTogglePopover}
|
19
|
-
text="Button Secondary"
|
20
20
|
variant="secondary"
|
21
|
-
|
21
|
+
>
|
22
|
+
{'Filter By'}
|
23
|
+
<Icon
|
24
|
+
fixedWidth
|
25
|
+
icon="angle-down"
|
26
|
+
/>
|
27
|
+
</Button>
|
22
28
|
)
|
23
29
|
|
24
30
|
return (
|
25
|
-
<
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
>
|
32
|
-
<
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
</PbReactPopover>
|
40
|
-
</div>
|
31
|
+
<PbReactPopover
|
32
|
+
padding="none"
|
33
|
+
placement="bottom"
|
34
|
+
reference={popoverReference}
|
35
|
+
show={showPopover}
|
36
|
+
>
|
37
|
+
<List xpadding>
|
38
|
+
<ListItem>{'Popularity'}</ListItem>
|
39
|
+
<ListItem>{'Title'}</ListItem>
|
40
|
+
<ListItem>{'Duration'}</ListItem>
|
41
|
+
<ListItem>{'Date Started'}</ListItem>
|
42
|
+
<ListItem>{'Date Ended'}</ListItem>
|
43
|
+
</List>
|
44
|
+
</PbReactPopover>
|
41
45
|
)
|
42
46
|
}
|
43
47
|
|
@@ -0,0 +1 @@
|
|
1
|
+
Notice `offset` is not set so the popover is flush with the content.
|
@@ -0,0 +1,24 @@
|
|
1
|
+
<%= pb_rails("button", props: { variant: "secondary", id: 'scroll-height', text: "Click Me" }) %>
|
2
|
+
<%= pb_rails("popover", props: {
|
3
|
+
trigger_element_id: "scroll-height",
|
4
|
+
tooltip_id: "scroll-height-1",
|
5
|
+
position: 'top',
|
6
|
+
close_on_click: "any",
|
7
|
+
max_height: "150px",
|
8
|
+
max_width: "240px",
|
9
|
+
offset: true
|
10
|
+
}) do %>
|
11
|
+
<%= pb_rails("body", props: {
|
12
|
+
margin_bottom: "sm",
|
13
|
+
text: "So many people live within unhappy circumstances and yet will
|
14
|
+
not take the initiative to change their situation because they are
|
15
|
+
conditioned to a life of security, conformity, and conservation, all of
|
16
|
+
which may appear to give one peace of mind, but in reality, nothing is
|
17
|
+
more damaging to the adventurous spirit."
|
18
|
+
}) %>
|
19
|
+
<%= pb_rails("title", props: {
|
20
|
+
size: 4,
|
21
|
+
text: "- Christopher McCandless"
|
22
|
+
}) %>
|
23
|
+
<% end %>
|
24
|
+
|
@@ -0,0 +1,56 @@
|
|
1
|
+
import React, { useState } from 'react'
|
2
|
+
import {
|
3
|
+
Body,
|
4
|
+
Button,
|
5
|
+
PbReactPopover,
|
6
|
+
Title,
|
7
|
+
} from '../..'
|
8
|
+
|
9
|
+
const PopoverScrollHeight = () => {
|
10
|
+
const [showPopover, setShowPopover] = useState(false)
|
11
|
+
|
12
|
+
const handleTogglePopover = () => {
|
13
|
+
setShowPopover(!showPopover)
|
14
|
+
}
|
15
|
+
|
16
|
+
const handleShouldClosePopover = (shouldClosePopover) => {
|
17
|
+
setShowPopover(!shouldClosePopover)
|
18
|
+
}
|
19
|
+
|
20
|
+
const popoverTrigger = (
|
21
|
+
<Button
|
22
|
+
onClick={handleTogglePopover}
|
23
|
+
text="Click Me"
|
24
|
+
variant="secondary"
|
25
|
+
/>
|
26
|
+
)
|
27
|
+
|
28
|
+
return (
|
29
|
+
<PbReactPopover
|
30
|
+
closeOnClick="any"
|
31
|
+
maxHeight="150px"
|
32
|
+
maxWidth="240px"
|
33
|
+
offset
|
34
|
+
placement="top"
|
35
|
+
reference={popoverTrigger}
|
36
|
+
shouldClosePopover={handleShouldClosePopover}
|
37
|
+
show={showPopover}
|
38
|
+
>
|
39
|
+
<Body
|
40
|
+
marginBottom="sm"
|
41
|
+
text="So many people live within unhappy circumstances and yet will
|
42
|
+
not take the initiative to change their situation because they are
|
43
|
+
conditioned to a life of security, conformity, and conservation, all of
|
44
|
+
which may appear to give one peace of mind, but in reality, nothing is
|
45
|
+
more damaging to the adventurous spirit."
|
46
|
+
/>
|
47
|
+
<Title
|
48
|
+
size={4}
|
49
|
+
text="- Christopher McCandless"
|
50
|
+
/>
|
51
|
+
|
52
|
+
</PbReactPopover>
|
53
|
+
)
|
54
|
+
}
|
55
|
+
|
56
|
+
export default PopoverScrollHeight
|
@@ -0,0 +1,14 @@
|
|
1
|
+
<div style="position: relative; z-index: 2">
|
2
|
+
<%= pb_rails("body", props: {text: "I've got a z-index of 2", margin_bottom: "md"}) %>
|
3
|
+
</div>
|
4
|
+
<%= pb_rails("button", props: { variant: "secondary", id: 'tooltip-z-index-1', text: "Click Me", }) %>
|
5
|
+
<%= pb_rails("popover", props: {
|
6
|
+
trigger_element_id: "tooltip-z-index-1",
|
7
|
+
tooltip_id: "tooltip-z-index",
|
8
|
+
position: 'top',
|
9
|
+
z_index: "3",
|
10
|
+
offset: true
|
11
|
+
}) do %>
|
12
|
+
I've got a z-index of 3
|
13
|
+
<% end %>
|
14
|
+
|
@@ -0,0 +1,50 @@
|
|
1
|
+
import React, { useState } from 'react'
|
2
|
+
import {
|
3
|
+
Body,
|
4
|
+
Button,
|
5
|
+
PbReactPopover,
|
6
|
+
} from '../..'
|
7
|
+
|
8
|
+
const PopoverZIndex = () => {
|
9
|
+
const [showPopover, setShowPopover] = useState(false)
|
10
|
+
|
11
|
+
const handleTogglePopover = () => {
|
12
|
+
setShowPopover(!showPopover)
|
13
|
+
}
|
14
|
+
|
15
|
+
const handleShouldClosePopover = (shouldClosePopover) => {
|
16
|
+
setShowPopover(!shouldClosePopover)
|
17
|
+
}
|
18
|
+
|
19
|
+
const popoverTrigger = (
|
20
|
+
<Button
|
21
|
+
onClick={handleTogglePopover}
|
22
|
+
text="Click Me"
|
23
|
+
variant="secondary"
|
24
|
+
/>
|
25
|
+
)
|
26
|
+
|
27
|
+
return (
|
28
|
+
<>
|
29
|
+
<div style={{ position: 'relative', zIndex: 2 }}>
|
30
|
+
<Body
|
31
|
+
marginBottom="md"
|
32
|
+
text="I've got a z-index of 2"
|
33
|
+
/>
|
34
|
+
</div>
|
35
|
+
<PbReactPopover
|
36
|
+
closeOnClick="outside"
|
37
|
+
offset
|
38
|
+
placement="top"
|
39
|
+
reference={popoverTrigger}
|
40
|
+
shouldClosePopover={handleShouldClosePopover}
|
41
|
+
show={showPopover}
|
42
|
+
zIndex={3}
|
43
|
+
>
|
44
|
+
{'I have a custom z-index of 3'}
|
45
|
+
</PbReactPopover>
|
46
|
+
</>
|
47
|
+
)
|
48
|
+
}
|
49
|
+
|
50
|
+
export default PopoverZIndex
|