playbook_ui 17.1.0.pre.rc.3 → 17.1.0.pre.rc.4

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 (30) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/pb_avatar/avatar.test.js +0 -1
  3. data/app/pb_kits/playbook/pb_background/_background.scss +24 -18
  4. data/app/pb_kits/playbook/pb_background/_background.tsx +0 -1
  5. data/app/pb_kits/playbook/pb_background/background.rb +1 -1
  6. data/app/pb_kits/playbook/pb_background/docs/_background_image.html.erb +3 -2
  7. data/app/pb_kits/playbook/pb_background/docs/_background_image.jsx +1 -1
  8. data/app/pb_kits/playbook/pb_background/docs/_background_image.md +1 -1
  9. data/app/pb_kits/playbook/pb_background/docs/_background_overlay.jsx +1 -1
  10. data/app/pb_kits/playbook/pb_background/docs/_background_responsive.jsx +2 -2
  11. data/app/pb_kits/playbook/pb_background/docs/_background_size.jsx +3 -3
  12. data/app/pb_kits/playbook/pb_image/_image.scss +22 -16
  13. data/app/pb_kits/playbook/pb_image/_image.tsx +0 -2
  14. data/app/pb_kits/playbook/pb_image/docs/_playground.json +1 -1
  15. data/app/pb_kits/playbook/pb_image/docs/_playground.overrides.json +1 -1
  16. data/app/pb_kits/playbook/pb_image/docs/_transition_image.html.erb +3 -2
  17. data/app/pb_kits/playbook/pb_image/docs/_transition_image.jsx +4 -4
  18. data/app/pb_kits/playbook/pb_image/image.html.erb +1 -1
  19. data/app/pb_kits/playbook/pb_image/image.rb +1 -1
  20. data/app/pb_kits/playbook/pb_image/image.test.js +4 -4
  21. data/dist/chunks/_typeahead-DeIqOMbJ.js +1 -0
  22. data/dist/chunks/time_picker_helper-BZutIzB3.js +1 -0
  23. data/dist/chunks/vendor.js +1 -1
  24. data/dist/playbook-rails-react-bindings.js +1 -1
  25. data/dist/playbook-rails.js +1 -1
  26. data/dist/playbook.css +1 -1
  27. data/lib/playbook/version.rb +1 -1
  28. metadata +3 -3
  29. data/dist/chunks/_typeahead-sT6HFKNd.js +0 -1
  30. data/dist/chunks/time_picker_helper-CN-3p6mx.js +0 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 02b1ea72561f3498a21c3cf0595c72212fd2e04ba63539688d7239ba7261d6f9
4
- data.tar.gz: 412dec4b2daa3b7371785dd21701dec9872a188e36418ac13c969025f7c49812
3
+ metadata.gz: f2e1ded496c095c99e8ee8e474bb7609582dc8953949549e7e3fe5ef93e4de2b
4
+ data.tar.gz: df2ce1c6ae5c85a67a961aebe95b1981f836ad605fa6886411d8043d8f64fdcf
5
5
  SHA512:
6
- metadata.gz: b4ba91e8ba28694803157c76d2cf93d1e204de9bebe3cd02c470889a38e6e38f78f57f8d0f9019c1e864f4d20fefd0873a051b7e6e90bf0124e1a93125b98d24
7
- data.tar.gz: d1a34a60dbb2f1b2ce9125e08773d9176d23a4208d57dfbd0a35a1983df2920702fe17343cfed9510b82d1e7ceaf2d2207b91c9d6cb4a10945c364e7578405d4
6
+ metadata.gz: 4b367423e0711ecbca373b4d3e195ba2f36997bfb3fc00f3c7477eceb2fa0a4bb76ecbb6a169f09d3fe865a343f1eaedef1547f1a12539670d05c0474d531a99
7
+ data.tar.gz: 547658843ad64464e8a86c74447bf63b4746181c668042e6ad8027b57eb9b184a392bc954184d29449ce2e21c137db066f88f2f6a46f2b0c41a616fcab744a56
@@ -24,7 +24,6 @@ test('loads the given image url and name', () => {
24
24
 
25
25
  expect(kit).toHaveClass('pb_avatar_kit_size_md')
26
26
  expect(kit).toHaveAttribute('data-initials', initials)
27
- expect(image).toHaveAttribute('data-src', imageUrl)
28
27
  expect(image).toHaveAttribute('src', imageUrl)
29
28
  expect(image).toHaveAttribute('alt', imageAlt)
30
29
  })
@@ -30,30 +30,15 @@ $background_colors: map-merge($additional_colors, $merge_kits7);
30
30
  }
31
31
 
32
32
  &.fade {
33
- opacity: 0;
34
- &.lazyloaded {
35
- opacity: 1;
36
- transition: opacity 400ms ease-in;
37
- }
33
+ animation: pb_background_fade 400ms ease-in forwards;
38
34
  }
39
35
 
40
36
  &.blur {
41
- filter: blur(5px);
42
- &.lazyloaded {
43
- -webkit-filter: blur(0);
44
- filter: blur(0);
45
- transition: filter 400ms ease-in;
46
- }
37
+ animation: pb_background_blur 400ms ease-in forwards;
47
38
  }
48
39
 
49
40
  &.scale {
50
- opacity: 0;
51
- transform: scale(0.9);
52
- &.lazyloaded {
53
- opacity: 1;
54
- transform: scale(1);
55
- transition: 700ms ease-in;
56
- }
41
+ animation: pb_background_scale 700ms ease-in forwards;
57
42
  }
58
43
 
59
44
  &.imageoverlay {
@@ -82,3 +67,24 @@ $background_colors: map-merge($additional_colors, $merge_kits7);
82
67
  }
83
68
  }
84
69
  }
70
+
71
+ @keyframes pb_background_fade {
72
+ from { opacity: 0; }
73
+ to { opacity: 1; }
74
+ }
75
+
76
+ @keyframes pb_background_blur {
77
+ from { filter: blur(5px); }
78
+ to { filter: blur(0); }
79
+ }
80
+
81
+ @keyframes pb_background_scale {
82
+ from {
83
+ opacity: 0;
84
+ transform: scale(0.9);
85
+ }
86
+ to {
87
+ opacity: 1;
88
+ transform: scale(1);
89
+ }
90
+ }
@@ -127,7 +127,6 @@ const Background = (props: BackgroundProps): React.ReactElement => {
127
127
  // Build CSS classes and styles using responsive values.
128
128
  const classes = classnames(
129
129
  buildCss('pb_background_kit'),
130
- 'lazyload',
131
130
  globalProps(props),
132
131
  transition,
133
132
  {
@@ -115,7 +115,7 @@ module Playbook
115
115
 
116
116
  def image_classname
117
117
  background_class = custom_color.present? ? "pb_background_custom_color" : "pb_background_color_#{background_color}"
118
- background_class_lazy = image_url.present? ? " lazyload #{transition}" : ""
118
+ background_class_lazy = image_url.present? && transition.present? ? " #{transition}" : ""
119
119
  "#{background_class}#{background_class_lazy}"
120
120
  end
121
121
  end
@@ -51,8 +51,9 @@
51
51
 
52
52
  const updateTransition = (transition) => {
53
53
  const imageTransition = document.querySelector('.background-image')
54
- imageTransition.classList.remove("fade", "blur", "scale", "lazyloaded")
55
- imageTransition.classList.add(transition, "lazyload")
54
+ imageTransition.classList.remove("fade", "blur", "scale")
55
+ void imageTransition.offsetWidth
56
+ imageTransition.classList.add(transition)
56
57
  }
57
58
  (transitionDropdown).addEventListener('change', function() {
58
59
  updateTransition(option)
@@ -29,7 +29,7 @@ const BackgroundImage = (props) => {
29
29
  <>
30
30
  <Background
31
31
  alt="colorful background"
32
- className="background lazyload"
32
+ className="background"
33
33
  imageUrl="https://images.unsplash.com/photo-1528459801416-a9e53bbf4e17?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1000&q=80"
34
34
  transition={transition}
35
35
  {...props}
@@ -1 +1 @@
1
- To add a lazyload on the background image simply use the `transition` prop and one of the three string options `"fade"`, `"blur"`, or `"scale"`.
1
+ To add a transition on the background image, use the `transition` prop with `"fade"`, `"blur"`, or `"scale"`.
@@ -9,7 +9,7 @@ const BackgroundOverlay = (props) => {
9
9
  <Background
10
10
  alt="colorful background"
11
11
  backgroundColor="category_21"
12
- className="background lazyload"
12
+ className="background"
13
13
  imageOverlay="opacity_2"
14
14
  imageUrl="https://unsplash.it/500/400/?image=633"
15
15
  {...props}
@@ -6,14 +6,14 @@ const BackgroundResponsive = (props) => (
6
6
  <Background
7
7
  alt="colorful background"
8
8
  backgroundColor={{ xs: "primary", sm: "warning", md: "success", lg: "error", xl: "category_1" }}
9
- className="background lazyload"
9
+ className="background"
10
10
  padding="xl"
11
11
  {...props}
12
12
  />
13
13
  <br/>
14
14
  <Background
15
15
  alt="colorful background"
16
- className="background lazyload"
16
+ className="background"
17
17
  imageUrl={{
18
18
  xs: "https://unsplash.it/500/400/?image=633",
19
19
  sm: "https://images.unsplash.com/photo-1528459801416-a9e53bbf4e17?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1000&q=80",
@@ -6,7 +6,7 @@ const BackgroundSize = (props) => (
6
6
  <Background
7
7
  alt="colorful background"
8
8
  backgroundSize="auto"
9
- className="background lazyload"
9
+ className="background"
10
10
  imageUrl="https://images.unsplash.com/photo-1528459801416-a9e53bbf4e17?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1000&q=80"
11
11
  padding="xl"
12
12
  {...props}
@@ -15,7 +15,7 @@ const BackgroundSize = (props) => (
15
15
  <Background
16
16
  alt="colorful background"
17
17
  backgroundSize="cover"
18
- className="background lazyload"
18
+ className="background"
19
19
  imageUrl="https://images.unsplash.com/photo-1528459801416-a9e53bbf4e17?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1000&q=80"
20
20
  padding="xl"
21
21
  {...props}
@@ -25,7 +25,7 @@ const BackgroundSize = (props) => (
25
25
  alt="colorful background"
26
26
  backgroundRepeat="no-repeat"
27
27
  backgroundSize="contain"
28
- className="background lazyload"
28
+ className="background"
29
29
  imageUrl="https://images.unsplash.com/photo-1528459801416-a9e53bbf4e17?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=1000&q=80"
30
30
  padding="xl"
31
31
  {...props}
@@ -23,30 +23,36 @@ $image-sizes: (
23
23
  }
24
24
 
25
25
  &.fade {
26
- opacity: 0;
27
- &.lazyloaded {
28
- opacity: 1;
29
- transition: opacity 300ms ease-in;
30
- }
26
+ animation: pb_image_fade 300ms ease-in forwards;
31
27
  }
32
28
 
33
29
  &.blur {
34
- filter: blur(5px);
35
- &.lazyloaded {
36
- -webkit-filter: blur(0);
37
- filter: blur(0);
38
- transition: filter 300ms ease-in;
39
- }
30
+ animation: pb_image_blur 300ms ease-in forwards;
40
31
  }
41
32
 
42
33
  &.scale {
34
+ animation: pb_image_scale 700ms ease-in forwards;
35
+ }
36
+ }
37
+
38
+ @keyframes pb_image_fade {
39
+ from { opacity: 0; }
40
+ to { opacity: 1; }
41
+ }
42
+
43
+ @keyframes pb_image_blur {
44
+ from { filter: blur(5px); }
45
+ to { filter: blur(0); }
46
+ }
47
+
48
+ @keyframes pb_image_scale {
49
+ from {
43
50
  opacity: 0;
44
51
  transform: scale(0.9);
45
- &.lazyloaded {
46
- opacity: 1;
47
- transform: scale(1);
48
- transition: 700ms ease-in;
49
- }
52
+ }
53
+ to {
54
+ opacity: 1;
55
+ transform: scale(1);
50
56
  }
51
57
  }
52
58
 
@@ -35,7 +35,6 @@ const Image = (props: ImageType): React.ReactElement => {
35
35
  const ariaProps = buildAriaProps(aria)
36
36
  const classes = classnames(
37
37
  buildCss('pb_image_kit', size ? `size_${size}` : null),
38
- 'lazyload',
39
38
  transition,
40
39
  { rounded },
41
40
  globalProps(props),
@@ -53,7 +52,6 @@ const Image = (props: ImageType): React.ReactElement => {
53
52
  {...htmlProps}
54
53
  alt={alt}
55
54
  className={classes}
56
- data-src={url}
57
55
  id={id}
58
56
  onError={onError}
59
57
  src={url}
@@ -80,7 +80,7 @@
80
80
  },
81
81
  "blur_transition": {
82
82
  "presetName": "Blur Transition",
83
- "message": "Use the transition prop to select the lazyload transition class: fade, blur, or scale.",
83
+ "message": "Use the transition prop to select fade, blur, or scale.",
84
84
  "type": "info"
85
85
  },
86
86
  "custom_error_handler": {
@@ -142,7 +142,7 @@
142
142
  },
143
143
  "blur_transition": {
144
144
  "presetName": "Blur Transition",
145
- "message": "Use the transition prop to select the lazyload transition class: fade, blur, or scale.",
145
+ "message": "Use the transition prop to select fade, blur, or scale.",
146
146
  "type": "info"
147
147
  },
148
148
  "custom_error_handler": {
@@ -42,9 +42,10 @@
42
42
  const updateTransition = (transition) => {
43
43
  const imageTransition = document.querySelector('.transition-image')
44
44
  imageTransition.removeAttribute("style")
45
- imageTransition.classList.remove("fade", "blur", "scale", "lazyloaded")
46
- imageTransition.classList.add(transition, "lazyload")
45
+ imageTransition.classList.remove("fade", "blur", "scale")
47
46
  imageTransition.src = "https://unsplash.it/500/400/?image=634"
47
+ void imageTransition.offsetWidth
48
+ imageTransition.classList.add(transition)
48
49
  }
49
50
 
50
51
  button.addEventListener('click', function() {
@@ -12,15 +12,14 @@ const TransitionImage = (props) => {
12
12
  url: '',
13
13
  transition: '',
14
14
  })
15
+ const [playKey, setPlayKey] = useState(0)
15
16
 
16
17
  const loadImage = () => {
17
- document.querySelector('.image').classList.remove(transition, 'lazyloaded')
18
18
  setApply({
19
19
  url: 'https://unsplash.it/500/400/?image=634',
20
20
  transition: transition,
21
- },
22
- document.querySelector('.image').classList.add(transition, 'lazyload')
23
- )
21
+ })
22
+ setPlayKey((key) => key + 1)
24
23
  }
25
24
 
26
25
  const handleTransition = ({ target }) => {
@@ -65,6 +64,7 @@ const TransitionImage = (props) => {
65
64
  <Image
66
65
  alt="picture of a misty forest"
67
66
  className="image"
67
+ key={playKey}
68
68
  transition={apply.transition}
69
69
  url={apply.url}
70
70
  {...props}
@@ -1,6 +1,6 @@
1
1
  <%= tag(:img,
2
2
  id: object.id,
3
- data: object.data.merge(src: object.url),
3
+ data: object.data,
4
4
  class: object.classname,
5
5
  aria: object.aria,
6
6
  src: object.url,
@@ -17,7 +17,7 @@ module Playbook
17
17
  prop :url
18
18
 
19
19
  def classname
20
- generate_classname("pb_image_kit#{size_class} #{transition_class} lazyload") + rounded_class
20
+ generate_classname("pb_image_kit#{size_class} #{transition_class}") + rounded_class
21
21
  end
22
22
 
23
23
  private
@@ -21,20 +21,20 @@ test('alt attribute', () => {
21
21
 
22
22
  test('default classname', () => {
23
23
  const kit = renderKit(Image, props)
24
- expect(kit).toHaveClass('pb_image_kit lazyload')
24
+ expect(kit).toHaveClass('pb_image_kit')
25
25
  })
26
26
 
27
27
  test('size = xs', () => {
28
28
  const kit = renderKit(Image, props, { size: 'xs' })
29
- expect(kit).toHaveClass('pb_image_kit_size_xs lazyload')
29
+ expect(kit).toHaveClass('pb_image_kit_size_xs')
30
30
  })
31
31
 
32
32
  test('transition = blur', () => {
33
33
  const kit = renderKit(Image, props, { transition: 'blur' })
34
- expect(kit).toHaveClass('pb_image_kit lazyload blur')
34
+ expect(kit).toHaveClass('pb_image_kit blur')
35
35
  })
36
36
 
37
37
  test('rounded = true', () => {
38
38
  const kit = renderKit(Image, props, { rounded: true })
39
- expect(kit).toHaveClass('pb_image_kit lazyload rounded')
39
+ expect(kit).toHaveClass('pb_image_kit rounded')
40
40
  })