playbook_ui 12.30.1.pre.alpha.play846responsivespacingglobalpropsneedsdefault924 → 12.31.0.pre.alpha.PLAY814removemomentjs933

Sign up to get free protection for your applications and to get access to all the features.
Files changed (88) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/_playbook.scss +2 -0
  3. data/app/pb_kits/playbook/pb_badge/_badge.scss +5 -0
  4. data/app/pb_kits/playbook/pb_badge/_badge.tsx +1 -1
  5. data/app/pb_kits/playbook/pb_badge/badge.rb +1 -1
  6. data/app/pb_kits/playbook/pb_badge/badge.test.js +13 -0
  7. data/app/pb_kits/playbook/pb_badge/docs/_badge_notification.html.erb +12 -0
  8. data/app/pb_kits/playbook/pb_badge/docs/_badge_notification.jsx +25 -0
  9. data/app/pb_kits/playbook/pb_badge/docs/example.yml +2 -1
  10. data/app/pb_kits/playbook/pb_badge/docs/index.js +1 -0
  11. data/app/pb_kits/playbook/pb_button/docs/_button_hover.jsx +40 -0
  12. data/app/pb_kits/playbook/pb_button/docs/example.yml +1 -0
  13. data/app/pb_kits/playbook/pb_button/docs/index.js +1 -0
  14. data/app/pb_kits/playbook/pb_card/_card.scss +0 -3
  15. data/app/pb_kits/playbook/pb_card/_card.tsx +6 -5
  16. data/app/pb_kits/playbook/pb_card/card.html.erb +3 -1
  17. data/app/pb_kits/playbook/pb_card/card.rb +96 -0
  18. data/app/pb_kits/playbook/pb_card/card_body.rb +1 -93
  19. data/app/pb_kits/playbook/pb_collapsible/_collapsible.scss +0 -11
  20. data/app/pb_kits/playbook/pb_collapsible/_collapsible.tsx +3 -1
  21. data/app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx +3 -1
  22. data/app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleMain.tsx +3 -1
  23. data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_default.jsx +1 -1
  24. data/app/pb_kits/playbook/pb_date/_date.tsx +7 -8
  25. data/app/pb_kits/playbook/pb_date_range_inline/_date_range_inline.tsx +45 -31
  26. data/app/pb_kits/playbook/pb_date_range_stacked/_date_range_stacked.tsx +5 -3
  27. data/app/pb_kits/playbook/pb_date_stacked/_date_stacked.tsx +24 -21
  28. data/app/pb_kits/playbook/pb_date_time/_date_time.tsx +1 -1
  29. data/app/pb_kits/playbook/pb_date_time/dateTime.test.js +1 -1
  30. data/app/pb_kits/playbook/pb_date_time_stacked/_date_time_stacked.tsx +2 -2
  31. data/app/pb_kits/playbook/pb_date_time_stacked/date_time_stacked.test.js +1 -1
  32. data/app/pb_kits/playbook/pb_date_year_stacked/_date_year_stacked.tsx +6 -8
  33. data/app/pb_kits/playbook/pb_dialog/_dialog.scss +0 -12
  34. data/app/pb_kits/playbook/pb_dialog/child_kits/_dialog_body.tsx +2 -2
  35. data/app/pb_kits/playbook/pb_dialog/child_kits/_dialog_footer.tsx +4 -1
  36. data/app/pb_kits/playbook/pb_dialog/child_kits/_dialog_header.tsx +2 -1
  37. data/app/pb_kits/playbook/pb_kit/dateTime.ts +139 -67
  38. data/app/pb_kits/playbook/pb_label_value/_label_value.tsx +52 -31
  39. data/app/pb_kits/playbook/pb_message/_message.tsx +25 -25
  40. data/app/pb_kits/playbook/pb_message/docs/_message_default.jsx +33 -45
  41. data/app/pb_kits/playbook/pb_message/docs/_message_hover.jsx +41 -0
  42. data/app/pb_kits/playbook/pb_message/docs/example.yml +1 -0
  43. data/app/pb_kits/playbook/pb_message/docs/index.js +2 -0
  44. data/app/pb_kits/playbook/pb_multi_level_select/_helper_functions.tsx +4 -1
  45. data/app/pb_kits/playbook/pb_multi_level_select/_multi_level_select.tsx +8 -3
  46. data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_selected_ids.html.erb +76 -0
  47. data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_selected_ids.jsx +88 -0
  48. data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_selected_ids.md +5 -0
  49. data/app/pb_kits/playbook/pb_multi_level_select/docs/example.yml +2 -0
  50. data/app/pb_kits/playbook/pb_multi_level_select/docs/index.js +2 -1
  51. data/app/pb_kits/playbook/pb_multi_level_select/multi_level_select.rb +3 -0
  52. data/app/pb_kits/playbook/pb_section_separator/_section_separator.scss +7 -0
  53. data/app/pb_kits/playbook/pb_section_separator/_section_separator.tsx +12 -7
  54. data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_children.html.erb +14 -0
  55. data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_children.jsx +30 -0
  56. data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_children.md +3 -0
  57. data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_dashed.html.erb +1 -0
  58. data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_dashed.jsx +13 -0
  59. data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_text.html.erb +1 -1
  60. data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_text.jsx +1 -1
  61. data/app/pb_kits/playbook/pb_section_separator/docs/example.yml +6 -3
  62. data/app/pb_kits/playbook/pb_section_separator/docs/index.js +2 -0
  63. data/app/pb_kits/playbook/pb_section_separator/section_separator.html.erb +4 -2
  64. data/app/pb_kits/playbook/pb_section_separator/section_separator.rb +4 -1
  65. data/app/pb_kits/playbook/pb_time/_time.tsx +9 -11
  66. data/app/pb_kits/playbook/pb_time_range_inline/_time_range_inline.tsx +46 -49
  67. data/app/pb_kits/playbook/pb_time_stacked/_time_stacked.tsx +4 -6
  68. data/app/pb_kits/playbook/pb_timestamp/_timestamp.tsx +13 -12
  69. data/app/pb_kits/playbook/pb_title/_title.scss +18 -0
  70. data/app/pb_kits/playbook/pb_title/_title.tsx +20 -2
  71. data/app/pb_kits/playbook/pb_title/docs/_title_responsive.html.erb +1 -0
  72. data/app/pb_kits/playbook/pb_title/docs/_title_responsive.jsx +16 -0
  73. data/app/pb_kits/playbook/pb_title/docs/_title_responsive.md +1 -0
  74. data/app/pb_kits/playbook/pb_title/docs/example.yml +2 -0
  75. data/app/pb_kits/playbook/pb_title/docs/index.js +1 -0
  76. data/app/pb_kits/playbook/pb_title/title.rb +21 -4
  77. data/app/pb_kits/playbook/pb_title/title.test.js +42 -29
  78. data/app/pb_kits/playbook/pb_weekday_stacked/_weekday_stacked.tsx +8 -11
  79. data/app/pb_kits/playbook/tokens/_scale.scss +9 -0
  80. data/app/pb_kits/playbook/tokens/exports/_scale.scss +13 -0
  81. data/app/pb_kits/playbook/utilities/_border_radius.scss +31 -0
  82. data/app/pb_kits/playbook/utilities/_colors.scss +3 -0
  83. data/app/pb_kits/playbook/utilities/_hover.scss +47 -0
  84. data/app/pb_kits/playbook/utilities/globalProps.ts +22 -2
  85. data/dist/playbook-rails.js +7 -7
  86. data/lib/playbook/version.rb +2 -2
  87. metadata +21 -3
  88. data/app/pb_kits/playbook/pb_logistic/_logistic.jsx +0 -120
@@ -3,6 +3,9 @@ import classnames from 'classnames'
3
3
  import { buildAriaProps, buildCss, buildDataProps } 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"
7
+ type SizeResponsiveType = {[key: string]: SizeType}
8
+
6
9
  type TitleProps = {
7
10
  aria?: {[key: string]: string},
8
11
  bold?: boolean,
@@ -11,7 +14,7 @@ type TitleProps = {
11
14
  color?: "default" | "light" | "lighter" | "success" | "error" | "link",
12
15
  data?: {[key: string]: string},
13
16
  id?: string,
14
- size?: 1 | 2| 3| 4 | "1" | "2" | "3" | "4",
17
+ size?: SizeType | SizeResponsiveType,
15
18
  tag?: "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "div" | "span",
16
19
  text?: string,
17
20
  variant?: null | "link",
@@ -36,9 +39,24 @@ const Title = (props: TitleProps): React.ReactElement => {
36
39
  const ariaProps: {[key: string]: string | number} = buildAriaProps(aria)
37
40
  const dataProps: {[key: string]: string | number} = buildDataProps(data)
38
41
  const getBold = bold ? '' : 'thin'
42
+ const isSizeNumberOrString = typeof size === "number" || typeof size === "string"
43
+
44
+ const buildResponsiveSizeCss = () => {
45
+ let css = ''
46
+
47
+ if (!isSizeNumberOrString) {
48
+ Object.entries(size).forEach((sizeObj) => {
49
+ css += `pb_title_kit_${sizeObj[0]}_${sizeObj[1]} `
50
+ })
51
+ }
52
+
53
+ return css.trim()
54
+ }
55
+
39
56
  const classes = classnames(
40
- buildCss('pb_title_kit', `size_${size}`, variant, color, getBold),
57
+ buildCss('pb_title_kit', isSizeNumberOrString ? `size_${size}` : "", variant, color, getBold),
41
58
  globalProps(props),
59
+ buildResponsiveSizeCss(),
42
60
  className
43
61
  )
44
62
  const Tag: React.ReactElement | any = `${tag}`
@@ -0,0 +1 @@
1
+ <%= pb_rails("title", props: { text: "Responsive Title", tag: "h1", size: {xs: 3, sm: 2, md: 1} }) %>
@@ -0,0 +1,16 @@
1
+ import React from 'react'
2
+ import Title from '../_title'
3
+
4
+ const TitleResponsive = (props) => {
5
+ return (
6
+ <>
7
+ <Title
8
+ size={{xs: "3", sm: "2", md: "1"}}
9
+ text="Responsive Title"
10
+ {...props}
11
+ />
12
+ </>
13
+ )
14
+ }
15
+
16
+ export default TitleResponsive
@@ -0,0 +1 @@
1
+ The `size` prop supports responsive sizes. To use them, pass an object to the size prop containing your size values relative to responsive break points (show code below). To test this here, resize your browser window to responsively change this Title's size.
@@ -3,8 +3,10 @@ examples:
3
3
  - title_default: Default UI
4
4
  - title_light_weight: Light Weight UI
5
5
  - title_colors: Colors
6
+ - title_responsive: Responsive
6
7
 
7
8
  react:
8
9
  - title_default: Default UI
9
10
  - title_light_weight: Light Weight UI
10
11
  - title_colors: Colors
12
+ - title_responsive: Responsive
@@ -1,3 +1,4 @@
1
1
  export { default as TitleDefault } from './_title_default.jsx'
2
2
  export { default as TitleLightWeight } from './_title_light_weight.jsx'
3
3
  export { default as TitleColors } from './_title_colors.jsx'
4
+ export { default as TitleResponsive } from './_title_responsive.jsx'
@@ -6,9 +6,7 @@ module Playbook
6
6
  prop :color, type: Playbook::Props::Enum,
7
7
  values: [nil, "default", "light", "lighter", "success", "error", "link"],
8
8
  default: nil
9
- prop :size, type: Playbook::Props::Enum,
10
- values: [1, 2, 3, 4],
11
- default: 3
9
+ prop :size, default: 3
12
10
  prop :tag, type: Playbook::Props::Enum,
13
11
  values: %w[h1 h2 h3 h4 h5 h6 p div span],
14
12
  default: "h3"
@@ -20,12 +18,31 @@ module Playbook
20
18
  prop :bold, type: Playbook::Props::Boolean, default: true
21
19
 
22
20
  def classname
23
- generate_classname("pb_title_kit", size, variant, color, is_bold)
21
+ if is_size_responsive
22
+ generate_classname("pb_title_kit", variant, color, is_bold) + generate_responsive_size_classname
23
+ else
24
+ generate_classname("pb_title_kit", size, variant, color, is_bold)
25
+ end
24
26
  end
25
27
 
26
28
  def is_bold
27
29
  bold ? nil : "thin"
28
30
  end
31
+
32
+ def is_size_responsive
33
+ try(:size).is_a?(::Hash)
34
+ end
35
+
36
+ def generate_responsive_size_classname
37
+ css = ""
38
+ if is_size_responsive
39
+ size.each do |key, value|
40
+ css += " pb_title_kit_#{key}_#{value}"
41
+ end
42
+ end
43
+
44
+ css unless css.blank?
45
+ end
29
46
  end
30
47
  end
31
48
  end
@@ -4,39 +4,52 @@ import { render, screen } from '../utilities/test-utils'
4
4
  import Title from './_title'
5
5
 
6
6
  test('returns namespaced class name', () => {
7
- render(
8
- <Title
9
- data={{ testid: 'primary-test' }}
10
- text="Test colors"
11
- />
12
- )
13
-
14
- const kit = screen.getByTestId('primary-test')
15
- expect(kit).toHaveClass('pb_title_kit_size_3')
7
+ render(
8
+ <Title
9
+ data={{ testid: 'primary-test' }}
10
+ text="Test colors"
11
+ />
12
+ )
13
+
14
+ const kit = screen.getByTestId('primary-test')
15
+ expect(kit).toHaveClass('pb_title_kit_size_3')
16
16
  })
17
17
 
18
18
  test('with thin font weight', () => {
19
- render(
20
- <Title
21
- bold={false}
22
- data={{ testid: 'primary-test' }}
23
- text="Test thin font weight"
24
- />
25
- )
26
-
27
- const kit = screen.getByTestId('primary-test')
28
- expect(kit).toHaveClass('pb_title_kit_size_3_thin')
19
+ render(
20
+ <Title
21
+ bold={false}
22
+ data={{ testid: 'primary-test' }}
23
+ text="Test thin font weight"
24
+ />
25
+ )
26
+
27
+ const kit = screen.getByTestId('primary-test')
28
+ expect(kit).toHaveClass('pb_title_kit_size_3_thin')
29
29
  })
30
30
 
31
31
  test('with colors', () => {
32
- render(
33
- <Title
34
- color="success"
35
- data={{ testid: 'primary-test' }}
36
- text="Test colors"
37
- />
38
- )
39
-
40
- const kit = screen.getByTestId('primary-test')
41
- expect(kit).toHaveClass('pb_title_kit_size_3_success')
32
+ render(
33
+ <Title
34
+ color="success"
35
+ data={{ testid: 'primary-test' }}
36
+ text="Test colors"
37
+ />
38
+ )
39
+
40
+ const kit = screen.getByTestId('primary-test')
41
+ expect(kit).toHaveClass('pb_title_kit_size_3_success')
42
+ })
43
+
44
+ test('with responsive title', () => {
45
+ render(
46
+ <Title
47
+ data={{ testid: 'primary-test' }}
48
+ size={{ xs: "3", sm: "2", md: "1" }}
49
+ text="Responsive Title"
50
+ />
51
+ )
52
+
53
+ const kit = screen.getByTestId('primary-test')
54
+ expect(kit).toHaveClass('pb_title_kit pb_title_kit_xs_3 pb_title_kit_sm_2 pb_title_kit_md_1')
42
55
  })
@@ -7,8 +7,7 @@ import { buildAriaProps, buildCss, buildDataProps } from '../utilities/props'
7
7
 
8
8
  import Caption from '../pb_caption/_caption'
9
9
  import Title from '../pb_title/_title'
10
-
11
- import DateTime from '../pb_kit/dateTime'
10
+ import DateTime from '../pb_kit/dateTime';
12
11
 
13
12
  type WeekdayStackedProps = {
14
13
  align?: "left" | "center" | "right",
@@ -22,22 +21,20 @@ type WeekdayStackedProps = {
22
21
  compact?: boolean,
23
22
  }
24
23
 
25
- const getDayOfWeek = (value: Date | string, compact: boolean) => {
26
- const dateTime = new DateTime({ value })
24
+ const getDayOfWeek = (value: Date, compact: boolean) => {
27
25
  if (compact) {
28
- return dateTime.toDayAbbr()
26
+ return DateTime.toDayAbbr(value)
29
27
  } else {
30
- return dateTime.toWeekday()
28
+ return DateTime.toWeekday(value)
31
29
  }
32
30
  }
33
31
 
34
- const getFormattedDate = (value: Date | string, variant: "day_only" | "month_day" | "expanded") => {
35
- const dateTime = new DateTime({ value })
32
+ const getFormattedDate = (value: Date, variant: "day_only" | "month_day" | "expanded") => {
36
33
  if (variant === 'day_only') {
37
- return dateTime.toDay()
34
+ return DateTime.toDay(value).toString()
38
35
  } else {
39
- const format = variant === 'expanded' ? '%b %-d' : '%-m/%-d'
40
- return dateTime.toCustomFormat(format)
36
+ const format = variant === 'expanded' ? 'expanded' : 'month_day'
37
+ return DateTime.toCustomFormat(value, format)
41
38
  }
42
39
  }
43
40
 
@@ -0,0 +1,9 @@
1
+
2
+ $scale_sm: scale(1.05);
3
+ $scale_md: scale(1.1);
4
+ $scale_lg: scale(1.15);
5
+ $scales: (
6
+ scale_sm: $scale_sm,
7
+ scale_md: $scale_md,
8
+ scale_lg: $scale_lg,
9
+ );
@@ -0,0 +1,13 @@
1
+ @import "../scale";
2
+
3
+ :export {
4
+ @mixin export-hover-scale-classes($scales-list) {
5
+ @each $name, $scale in $scales-list {
6
+ .hover_#{$name}:hover {
7
+ transform: $scale;
8
+ }
9
+ }
10
+ }
11
+
12
+ @include export-hover-scale-classes($scales);
13
+ }
@@ -0,0 +1,31 @@
1
+ @import "../tokens/exports/border_radius";
2
+
3
+ $transition-speed: 0.2s;
4
+
5
+ .border_radius {
6
+ @mixin border-example {
7
+ transition: background-color $transition-speed ease, height $transition-speed ease;
8
+ }
9
+
10
+ &_rounded {
11
+ border-radius: $border_radius_rounded;
12
+ }
13
+ &_xl {
14
+ border-radius: $border_radius_xl;
15
+ }
16
+ &_lg {
17
+ border-radius: $border_radius_lg;
18
+ }
19
+ &_md {
20
+ border-radius: $border_radius_md;
21
+ }
22
+ &_sm {
23
+ border-radius: $border_radius_sm;
24
+ }
25
+ &_xs {
26
+ border-radius: $border_radius_xs;
27
+ }
28
+ &_none {
29
+ border-radius: $border_radius_none;
30
+ }
31
+ }
@@ -1,5 +1,7 @@
1
1
  // Color Helper Utilities
2
2
 
3
+ $transition-speed: 0.2s;
4
+
3
5
  @function shade($color, $percentage) {
4
6
  @return mix($charcoal, $color, $percentage);
5
7
  }
@@ -27,6 +29,7 @@
27
29
  }
28
30
  }
29
31
 
32
+
30
33
  @mixin text-color($colors-list) {
31
34
  @each $name, $color in $colors-list {
32
35
  .#{$name} {
@@ -0,0 +1,47 @@
1
+ @import "../tokens/exports/scale";
2
+
3
+ @mixin hover-color-classes($colors-list) {
4
+ @each $name, $color in $colors-list {
5
+ .bg-hover-#{$name}:hover {
6
+ background-color: $color !important;
7
+ transition: background-color $transition-speed ease;
8
+ }
9
+ }
10
+ }
11
+
12
+ @mixin hover-shadow-classes($shadows-list) {
13
+ @each $name, $shadow in $shadows-list {
14
+ .hover_#{$name}:hover {
15
+ box-shadow: $shadow;
16
+ transition: box-shadow $transition-speed ease;
17
+ }
18
+ }
19
+ }
20
+
21
+ @mixin hover-scale-classes($scales-list) {
22
+ @each $name, $scale in $scales-list {
23
+ .hover_#{$name}:hover {
24
+ transform: $scale;
25
+ transition: transform $transition-speed ease;
26
+ }
27
+ }
28
+ }
29
+
30
+
31
+ @include hover-scale-classes($scales);
32
+ @include hover-shadow-classes($box_shadows);
33
+ @include hover-color-classes($product_colors);
34
+ @include hover-color-classes($status_colors);
35
+ @include hover-color-classes($data_colors);
36
+ @include hover-color-classes($shadow_colors);
37
+ @include hover-color-classes($colors);
38
+ @include hover-color-classes($interface_colors);
39
+ @include hover-color-classes($main_colors);
40
+ @include hover-color-classes($background_colors);
41
+ @include hover-color-classes($card_colors);
42
+ @include hover-color-classes($active_colors);
43
+ @include hover-color-classes($action_colors);
44
+ @include hover-color-classes($hover_colors);
45
+ @include hover-color-classes($border_colors);
46
+ @include hover-color-classes($text_colors);
47
+ @include hover-color-classes($category_colors);
@@ -60,6 +60,11 @@ type FlexWrap = {
60
60
  flexWrap?: "wrap" | "nowrap" | "wrapReverse"
61
61
  }
62
62
 
63
+ type Hover = Shadow & {
64
+ background?: string,
65
+ scale?: "sm" | "md" | "lg"
66
+ }
67
+
63
68
  type JustifyContent = {
64
69
  justifyContent?: Alignment & Space
65
70
  }
@@ -125,7 +130,7 @@ export type GlobalProps = AlignContent & AlignItems & AlignSelf &
125
130
  BorderRadius & Cursor & Dark & Display & DisplaySizes & Flex & FlexDirection &
126
131
  FlexGrow & FlexShrink & FlexWrap & JustifyContent & JustifySelf &
127
132
  LineHeight & Margin & MaxWidth & NumberSpacing & Order & Padding &
128
- Position & Shadow & ZIndex
133
+ Position & Shadow & ZIndex & { hover?: string };
129
134
 
130
135
  const getResponsivePropClasses = (prop: {[key: string]: string}, classPrefix: string) => {
131
136
  const keys: string[] = Object.keys(prop)
@@ -137,6 +142,16 @@ const getResponsivePropClasses = (prop: {[key: string]: string}, classPrefix: st
137
142
 
138
143
  // Prop categories
139
144
  const PROP_CATEGORIES: {[key:string]: (props: {[key: string]: any}) => string} = {
145
+
146
+ hoverProps: ({ hover }: { hover?: Hover }) => {
147
+ let css = '';
148
+ if (!hover) return css;
149
+ css += hover.shadow ? `hover_shadow_${hover.shadow} ` : '';
150
+ css += hover.background ? `bg-hover-${hover.background } ` : '';
151
+ css += hover.scale ? `hover_scale_${hover.scale} ` : '';
152
+ return css;
153
+ },
154
+
140
155
  spacingProps: ({
141
156
  marginRight,
142
157
  marginLeft,
@@ -214,7 +229,11 @@ const PROP_CATEGORIES: {[key:string]: (props: {[key: string]: any}) => string} =
214
229
  });
215
230
  return css.trim();
216
231
  },
217
-
232
+ borderRadiusProps: ({ borderRadius }: BorderRadius) => {
233
+ let css = ''
234
+ css += borderRadius ? `border_radius_${borderRadius} ` : ''
235
+ return css
236
+ },
218
237
  darkProps: ({ dark }: Dark) => dark ? 'dark' : '',
219
238
  numberSpacingProps: ({ numberSpacing }: NumberSpacing) => {
220
239
  let css = ''
@@ -369,6 +388,7 @@ export const globalProps = (props: GlobalProps, defaultProps: DefaultProps = {})
369
388
  }).filter((value) => value?.length > 0).join(" ")
370
389
  }
371
390
 
391
+
372
392
  export const deprecatedProps = (kit: string, props: string[] = []): void => {
373
393
  if (process.env.NODE_ENV === 'development') {
374
394
  /* eslint no-console: ["error", { allow: ["warn", "error"] }] */