playbook_ui 14.14.0.pre.alpha.play1872verticaltimelineresponsiveissue6409 → 14.14.0.pre.alpha.revert4339revert4242play1633displaytitle6424
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.
- checksums.yaml +4 -4
- data/app/pb_kits/playbook/pb_timeline/_timeline.scss +2 -2
- data/app/pb_kits/playbook/pb_title/_title.scss +36 -0
- data/app/pb_kits/playbook/pb_title/_title.tsx +10 -1
- data/app/pb_kits/playbook/pb_title/docs/_title_default.html.erb +1 -2
- data/app/pb_kits/playbook/pb_title/docs/_title_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_title/docs/_title_display_size.html.erb +7 -0
- data/app/pb_kits/playbook/pb_title/docs/_title_display_size.jsx +54 -0
- data/app/pb_kits/playbook/pb_title/docs/_title_display_size.md +1 -0
- data/app/pb_kits/playbook/pb_title/docs/example.yml +2 -0
- data/app/pb_kits/playbook/pb_title/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_title/title.rb +10 -1
- data/dist/chunks/{_typeahead-BGTMEmj7.js → _typeahead-_d2af7Id.js} +1 -1
- data/dist/chunks/{_weekday_stacked-De2TduOp.js → _weekday_stacked-BZe1DgW-.js} +1 -1
- data/dist/chunks/vendor.js +1 -1
- data/dist/playbook-doc.js +1 -1
- data/dist/playbook-rails-react-bindings.js +1 -1
- data/dist/playbook-rails.js +1 -1
- data/dist/playbook.css +1 -1
- data/lib/playbook/version.rb +1 -1
- metadata +6 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6dcf227d7cca35e9bb16fb5e8c66f555054b5d1399838effee7faf68fbb99cee
|
4
|
+
data.tar.gz: 2880a15d696fa792dd93347514f071ced6241508dcd1c00298290ccc3c012bf2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8a5d6b23e39f5ec20b4b16938499ad3db31bf57881666d8baf92cbf16b2ed2e5884a57f1940b1c6001e0ea41a120f3bdf1e2107f7390c68d555ea022eb69c04a
|
7
|
+
data.tar.gz: eeda9230fd1a791a65f190e90580b5df2b2e7bd1a3dcd532235b4c9da20de8ac11de21a73b6c3ca9a214e2f1c849ab45bdb277dfd408276240060dc60182692d
|
@@ -243,7 +243,7 @@ $gap_lg: $height_from_top + $space_lg;
|
|
243
243
|
}
|
244
244
|
[class=pb_timeline_item_left_block] {
|
245
245
|
margin-bottom: $space_lg;
|
246
|
-
|
246
|
+
width: $space_lg;
|
247
247
|
}
|
248
248
|
[class=pb_timeline_item_right_block] {
|
249
249
|
@include flex_wrapper(column);
|
@@ -263,7 +263,7 @@ $gap_lg: $height_from_top + $space_lg;
|
|
263
263
|
}
|
264
264
|
[class=pb_timeline_item_left_block] {
|
265
265
|
margin-bottom: $space_lg;
|
266
|
-
|
266
|
+
width: $space_lg;
|
267
267
|
}
|
268
268
|
[class=pb_timeline_item_right_block] {
|
269
269
|
@include flex_wrapper(column);
|
@@ -31,6 +31,42 @@
|
|
31
31
|
@include pb_title_thin;
|
32
32
|
}
|
33
33
|
|
34
|
+
&[class*=_display] {
|
35
|
+
font-size: clamp(
|
36
|
+
24px,
|
37
|
+
calc(24px + (128 - 24) * ((100vw - 320px) / (1920 - 320))),
|
38
|
+
128px
|
39
|
+
);
|
40
|
+
}
|
41
|
+
|
42
|
+
&[class*=_dynamic] {
|
43
|
+
&[class*=_xs] {
|
44
|
+
font-size: min(2vw, 80vw / 16);
|
45
|
+
}
|
46
|
+
|
47
|
+
&[class*=_sm] {
|
48
|
+
font-size: min(2.5vw, 96vw / 16);
|
49
|
+
}
|
50
|
+
|
51
|
+
&[class*=_md] {
|
52
|
+
font-size: min(4vw, 160vw / 16);
|
53
|
+
}
|
54
|
+
|
55
|
+
&[class*=_lg] {
|
56
|
+
font-size: min(5vw, 192vw / 16);
|
57
|
+
}
|
58
|
+
|
59
|
+
&[class*=_xl] {
|
60
|
+
font-size: min(6vw, 224vw / 16);
|
61
|
+
}
|
62
|
+
|
63
|
+
&[class*=_xxl] {
|
64
|
+
font-size: min(8vw, 256vw / 16);
|
65
|
+
}
|
66
|
+
}
|
67
|
+
|
68
|
+
|
69
|
+
|
34
70
|
@each $size, $size_value in $breakpoints_grid {
|
35
71
|
@for $title_size_value from 1 through 4 {
|
36
72
|
$min_size: map-get($size_value, "min");
|
@@ -3,7 +3,7 @@ import classnames from 'classnames'
|
|
3
3
|
import { buildAriaProps, buildCss, buildDataProps, buildHtmlProps } from '../utilities/props'
|
4
4
|
import { deprecatedProps, GlobalProps, globalProps } from '../utilities/globalProps'
|
5
5
|
|
6
|
-
type SizeType = 1 | 2 | 3 | 4 | "1" | "2" | "3" | "4"
|
6
|
+
type SizeType = 1 | 2 | 3 | 4 | "1" | "2" | "3" | "4" | "display"
|
7
7
|
type SizeResponsiveType = {[key: string]: SizeType}
|
8
8
|
|
9
9
|
type TitleProps = {
|
@@ -16,6 +16,7 @@ type TitleProps = {
|
|
16
16
|
htmlOptions?: {[key: string]: string | number | boolean | (() => void)},
|
17
17
|
id?: string,
|
18
18
|
size?: SizeType | SizeResponsiveType,
|
19
|
+
displaySize?: null | "xs" | "sm" | "md" | "lg" | "xl" | "xxl",
|
19
20
|
tag?: "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "div" | "span",
|
20
21
|
text?: string,
|
21
22
|
variant?: null | "link",
|
@@ -32,6 +33,7 @@ const Title = (props: TitleProps): React.ReactElement => {
|
|
32
33
|
htmlOptions = {},
|
33
34
|
id,
|
34
35
|
size = 3,
|
36
|
+
displaySize = null,
|
35
37
|
bold = true,
|
36
38
|
tag = 'h3',
|
37
39
|
text,
|
@@ -56,9 +58,16 @@ const Title = (props: TitleProps): React.ReactElement => {
|
|
56
58
|
return css.trim()
|
57
59
|
}
|
58
60
|
|
61
|
+
const buildDisplaySize = () => {
|
62
|
+
if (displaySize) {
|
63
|
+
return `pb_title_kit_dynamic_${displaySize}`
|
64
|
+
}
|
65
|
+
}
|
66
|
+
|
59
67
|
const classes = classnames(
|
60
68
|
buildCss('pb_title_kit', isSizeNumberOrString ? `size_${size}` : "", variant, color, getBold),
|
61
69
|
globalProps(props),
|
70
|
+
buildDisplaySize(),
|
62
71
|
buildResponsiveSizeCss(),
|
63
72
|
className
|
64
73
|
)
|
@@ -1,10 +1,9 @@
|
|
1
1
|
<%= pb_rails("title", props: {
|
2
|
+
margin_bottom: "md"
|
2
3
|
}) do %>
|
3
4
|
Default Title
|
4
5
|
<% end %>
|
5
6
|
|
6
|
-
<br/>
|
7
|
-
|
8
7
|
<%= pb_rails("title", props: { text: "Title 1", tag: "h1", size: 1 }) %>
|
9
8
|
<%= pb_rails("title", props: { text: "Title 2", tag: "h2", size: 2 }) %>
|
10
9
|
<%= pb_rails("title", props: { text: "Title 3", tag: "h3", size: 3 }) %>
|
@@ -0,0 +1,7 @@
|
|
1
|
+
<%= pb_rails("title", props: { text: "Display Size xs", tag: "h1", display_size: "xs" }) %>
|
2
|
+
<%= pb_rails("title", props: { text: "Display Size sm", tag: "h1", display_size: "sm" }) %>
|
3
|
+
<%= pb_rails("title", props: { text: "Display Size md", tag: "h1", display_size: "md" }) %>
|
4
|
+
<%= pb_rails("title", props: { text: "Display Size lg", tag: "h1", display_size: "lg" }) %>
|
5
|
+
<%= pb_rails("title", props: { text: "Display Size xl", tag: "h1", display_size: "xl" }) %>
|
6
|
+
<%= pb_rails("title", props: { text: "Display Size xxl", tag: "h1", display_size: "xxl" }) %>
|
7
|
+
<%= pb_rails("title", props: { text: "This is a size of display", tag: "h1", size: "display"}) %>
|
@@ -0,0 +1,54 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
|
3
|
+
import Title from '../_title'
|
4
|
+
|
5
|
+
const TitleDisplaySize = (props) => {
|
6
|
+
return (
|
7
|
+
<div>
|
8
|
+
<Title
|
9
|
+
displaySize="xs"
|
10
|
+
tag="h1"
|
11
|
+
text="Display Size xs"
|
12
|
+
{...props}
|
13
|
+
/>
|
14
|
+
<Title
|
15
|
+
displaySize="sm"
|
16
|
+
tag="h1"
|
17
|
+
text="Display Size sm"
|
18
|
+
{...props}
|
19
|
+
/>
|
20
|
+
<Title
|
21
|
+
displaySize="md"
|
22
|
+
tag="h1"
|
23
|
+
text="Display Size md"
|
24
|
+
{...props}
|
25
|
+
/>
|
26
|
+
<Title
|
27
|
+
displaySize="lg"
|
28
|
+
tag="h1"
|
29
|
+
text="Display Size lg"
|
30
|
+
{...props}
|
31
|
+
/>
|
32
|
+
<Title
|
33
|
+
displaySize="xl"
|
34
|
+
tag="h1"
|
35
|
+
text="Display Size xl"
|
36
|
+
{...props}
|
37
|
+
/>
|
38
|
+
<Title
|
39
|
+
displaySize="xxl"
|
40
|
+
tag="h1"
|
41
|
+
text="Display Size xxl"
|
42
|
+
{...props}
|
43
|
+
/>
|
44
|
+
<Title
|
45
|
+
size="display"
|
46
|
+
tag="h1"
|
47
|
+
text="This is a size of display"
|
48
|
+
{...props}
|
49
|
+
/>
|
50
|
+
</div>
|
51
|
+
)
|
52
|
+
}
|
53
|
+
|
54
|
+
export default TitleDisplaySize
|
@@ -0,0 +1 @@
|
|
1
|
+
Responsive sizes for large screens and tablets, perfect for digital signage.
|
@@ -5,6 +5,7 @@ examples:
|
|
5
5
|
- title_colors: Colors
|
6
6
|
- title_responsive: Responsive
|
7
7
|
- title_truncate: Truncate
|
8
|
+
- title_display_size: Display Size
|
8
9
|
|
9
10
|
react:
|
10
11
|
- title_default: Default UI
|
@@ -12,3 +13,4 @@ examples:
|
|
12
13
|
- title_colors: Colors
|
13
14
|
- title_responsive: Responsive
|
14
15
|
- title_truncate: Truncate
|
16
|
+
- title_display_size: Display Size
|
@@ -3,3 +3,4 @@ export { default as TitleLightWeight } from './_title_light_weight.jsx'
|
|
3
3
|
export { default as TitleColors } from './_title_colors.jsx'
|
4
4
|
export { default as TitleResponsive } from './_title_responsive.jsx'
|
5
5
|
export { default as TitleTruncate } from './_title_truncate.jsx'
|
6
|
+
export { default as TitleDisplaySize } from './_title_display_size.jsx'
|
@@ -16,12 +16,15 @@ module Playbook
|
|
16
16
|
default: nil,
|
17
17
|
deprecated: true
|
18
18
|
prop :bold, type: Playbook::Props::Boolean, default: true
|
19
|
+
prop :display_size, type: Playbook::Props::Enum,
|
20
|
+
values: [nil, "xs", "sm", "md", "lg", "xl", "xxl"],
|
21
|
+
default: nil
|
19
22
|
|
20
23
|
def classname
|
21
24
|
if is_size_responsive
|
22
25
|
generate_classname("pb_title_kit", variant, color, is_bold) + generate_responsive_size_classname
|
23
26
|
else
|
24
|
-
generate_classname("pb_title_kit", size, variant, color, is_bold)
|
27
|
+
generate_classname("pb_title_kit", size, variant, color, is_bold) + generate_display_size
|
25
28
|
end
|
26
29
|
end
|
27
30
|
|
@@ -29,6 +32,12 @@ module Playbook
|
|
29
32
|
bold ? nil : "thin"
|
30
33
|
end
|
31
34
|
|
35
|
+
def generate_display_size
|
36
|
+
return "" if display_size.nil?
|
37
|
+
|
38
|
+
" pb_title_kit_dynamic_#{display_size}"
|
39
|
+
end
|
40
|
+
|
32
41
|
def is_size_responsive
|
33
42
|
try(:size).is_a?(::Hash)
|
34
43
|
end
|