playbook_ui 7.7.0 → 7.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (108) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/images/{sample_screenshot.svg → full_page_samples.svg} +0 -0
  3. data/app/pb_kits/playbook/_playbook.scss +3 -1
  4. data/app/pb_kits/playbook/data/menu.yml +3 -0
  5. data/app/pb_kits/playbook/index.js +4 -1
  6. data/app/pb_kits/playbook/pb_avatar/_avatar.jsx +1 -1
  7. data/app/pb_kits/playbook/pb_avatar/avatar.test.js +27 -0
  8. data/app/pb_kits/playbook/pb_filter/Filter/CurrentFilters.jsx +8 -2
  9. data/app/pb_kits/playbook/pb_filter/Filter/FilterBackground.jsx +9 -2
  10. data/app/pb_kits/playbook/pb_filter/Filter/FilterDouble.jsx +17 -6
  11. data/app/pb_kits/playbook/pb_filter/Filter/FilterSingle.jsx +15 -5
  12. data/app/pb_kits/playbook/pb_filter/Filter/FiltersPopover.jsx +2 -1
  13. data/app/pb_kits/playbook/pb_filter/Filter/ResultsCount.jsx +4 -1
  14. data/app/pb_kits/playbook/pb_filter/Filter/SortMenu.jsx +9 -4
  15. data/app/pb_kits/playbook/pb_filter/Filter/index.jsx +0 -1
  16. data/app/pb_kits/playbook/pb_filter/_filter.scss +44 -23
  17. data/app/pb_kits/playbook/pb_filter/docs/_filter_default.html.erb +3 -2
  18. data/app/pb_kits/playbook/pb_filter/docs/_filter_default.jsx +5 -4
  19. data/app/pb_kits/playbook/pb_filter/docs/_filter_no_background.html.erb +6 -4
  20. data/app/pb_kits/playbook/pb_filter/docs/_filter_no_background.jsx +73 -28
  21. data/app/pb_kits/playbook/pb_filter/docs/_filter_only.jsx +3 -7
  22. data/app/pb_kits/playbook/pb_filter/docs/_filter_single.jsx +4 -3
  23. data/app/pb_kits/playbook/pb_filter/docs/_sort_only.html.erb +1 -2
  24. data/app/pb_kits/playbook/pb_filter/docs/_sort_only.jsx +3 -3
  25. data/app/pb_kits/playbook/pb_filter/docs/example.yml +4 -5
  26. data/app/pb_kits/playbook/pb_form_group/_form_group.html.erb +7 -0
  27. data/app/pb_kits/playbook/pb_form_group/_form_group.jsx +41 -0
  28. data/app/pb_kits/playbook/pb_form_group/_form_group.scss +123 -0
  29. data/app/pb_kits/playbook/pb_form_group/docs/_form_group_button.html.erb +12 -0
  30. data/app/pb_kits/playbook/pb_form_group/docs/_form_group_button.jsx +39 -0
  31. data/app/pb_kits/playbook/pb_form_group/docs/_form_group_date_picker.html.erb +6 -0
  32. data/app/pb_kits/playbook/pb_form_group/docs/_form_group_date_picker.jsx +21 -0
  33. data/app/pb_kits/playbook/pb_form_group/docs/_form_group_default.html.erb +7 -0
  34. data/app/pb_kits/playbook/pb_form_group/docs/_form_group_default.jsx +26 -0
  35. data/app/pb_kits/playbook/pb_form_group/docs/_form_group_select.html.erb +19 -0
  36. data/app/pb_kits/playbook/pb_form_group/docs/_form_group_select.jsx +35 -0
  37. data/app/pb_kits/playbook/pb_form_group/docs/_form_group_selectable_card.html.erb +21 -0
  38. data/app/pb_kits/playbook/pb_form_group/docs/_form_group_selectable_card.jsx +42 -0
  39. data/app/pb_kits/playbook/pb_form_group/docs/_form_group_selectable_card_icon.html.erb +19 -0
  40. data/app/pb_kits/playbook/pb_form_group/docs/_form_group_selectable_card_icon.jsx +35 -0
  41. data/app/pb_kits/playbook/pb_form_group/docs/_form_group_typeahead.html.erb +42 -0
  42. data/app/pb_kits/playbook/pb_form_group/docs/_form_group_typeahead.jsx +31 -0
  43. data/app/pb_kits/playbook/pb_form_group/docs/example.yml +20 -0
  44. data/app/pb_kits/playbook/pb_form_group/docs/index.js +7 -0
  45. data/app/pb_kits/playbook/pb_form_group/form_group.rb +15 -0
  46. data/app/pb_kits/playbook/pb_icon_stat_value/_icon_stat_value.html.erb +24 -0
  47. data/app/pb_kits/playbook/pb_icon_stat_value/_icon_stat_value.jsx +105 -0
  48. data/app/pb_kits/playbook/pb_icon_stat_value/_icon_stat_value.scss +64 -0
  49. data/app/pb_kits/playbook/pb_icon_stat_value/docs/_icon_stat_value_color.html.erb +49 -0
  50. data/app/pb_kits/playbook/pb_icon_stat_value/docs/_icon_stat_value_color.jsx +67 -0
  51. data/app/pb_kits/playbook/pb_icon_stat_value/docs/_icon_stat_value_default.html.erb +11 -0
  52. data/app/pb_kits/playbook/pb_icon_stat_value/docs/_icon_stat_value_default.jsx +25 -0
  53. data/app/pb_kits/playbook/pb_icon_stat_value/docs/_icon_stat_value_sizes.html.erb +20 -0
  54. data/app/pb_kits/playbook/pb_icon_stat_value/docs/_icon_stat_value_sizes.jsx +35 -0
  55. data/app/pb_kits/playbook/pb_icon_stat_value/docs/_icon_stat_value_vertical.html.erb +7 -0
  56. data/app/pb_kits/playbook/pb_icon_stat_value/docs/_icon_stat_value_vertical.jsx +19 -0
  57. data/app/pb_kits/playbook/pb_icon_stat_value/docs/example.yml +15 -0
  58. data/app/pb_kits/playbook/pb_icon_stat_value/docs/index.js +4 -0
  59. data/app/pb_kits/playbook/pb_icon_stat_value/icon_stat_value.rb +52 -0
  60. data/app/pb_kits/playbook/pb_rich_text_editor/_rich_text_editor.html.erb +1 -0
  61. data/app/pb_kits/playbook/pb_rich_text_editor/_rich_text_editor.jsx +123 -0
  62. data/app/pb_kits/playbook/pb_rich_text_editor/_rich_text_editor.scss +216 -0
  63. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_default.html.erb +1 -0
  64. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_default.jsx +10 -0
  65. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_focus.html.erb +3 -0
  66. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_focus.jsx +11 -0
  67. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_simple.html.erb +1 -0
  68. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_simple.jsx +10 -0
  69. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_sticky.html.erb +1 -0
  70. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_sticky.jsx +14 -0
  71. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_templates.html.erb +115 -0
  72. data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_templates.jsx +39 -0
  73. data/app/pb_kits/playbook/pb_rich_text_editor/docs/example.yml +15 -0
  74. data/app/pb_kits/playbook/pb_rich_text_editor/docs/index.js +5 -0
  75. data/app/pb_kits/playbook/pb_rich_text_editor/docs/templates.js +75 -0
  76. data/app/pb_kits/playbook/pb_rich_text_editor/rich_text_editor.rb +55 -0
  77. data/app/pb_kits/playbook/pb_rich_text_editor/useFocus.js +20 -0
  78. data/app/pb_kits/playbook/pb_table/_table.scss +45 -13
  79. data/app/pb_kits/playbook/pb_table/docs/_description.md +1 -0
  80. data/app/pb_kits/playbook/pb_table/docs/_table_alignment_column.html.erb +34 -0
  81. data/app/pb_kits/playbook/pb_table/docs/_table_alignment_column.jsx +43 -0
  82. data/app/pb_kits/playbook/pb_table/docs/_table_alignment_column.md +2 -0
  83. data/app/pb_kits/playbook/pb_table/docs/_table_alignment_row.html.erb +34 -0
  84. data/app/pb_kits/playbook/pb_table/docs/_table_alignment_row.jsx +43 -0
  85. data/app/pb_kits/playbook/pb_table/docs/_table_alignment_row.md +2 -0
  86. data/app/pb_kits/playbook/pb_table/docs/_table_alignment_shift_data.html.erb +63 -0
  87. data/app/pb_kits/playbook/pb_table/docs/_table_alignment_shift_data.jsx +70 -0
  88. data/app/pb_kits/playbook/pb_table/docs/_table_alignment_shift_data.md +2 -0
  89. data/app/pb_kits/playbook/pb_table/docs/_table_alignment_shift_row.html.erb +52 -0
  90. data/app/pb_kits/playbook/pb_table/docs/_table_alignment_shift_row.jsx +61 -0
  91. data/app/pb_kits/playbook/pb_table/docs/example.yml +9 -1
  92. data/app/pb_kits/playbook/pb_table/docs/index.js +4 -1
  93. data/app/pb_kits/playbook/pb_time_stacked/_time_stacked.html.erb +3 -6
  94. data/app/pb_kits/playbook/pb_time_stacked/_time_stacked.jsx +15 -21
  95. data/app/pb_kits/playbook/pb_time_stacked/_time_stacked.scss +0 -17
  96. data/app/pb_kits/playbook/pb_time_stacked/docs/_time_stacked_default.html.erb +4 -1
  97. data/app/pb_kits/playbook/pb_time_stacked/docs/_time_stacked_default.jsx +12 -1
  98. data/app/pb_kits/playbook/pb_time_stacked/docs/example.yml +1 -4
  99. data/app/pb_kits/playbook/pb_time_stacked/docs/index.js +0 -1
  100. data/app/pb_kits/playbook/pb_time_stacked/time_stacked.rb +7 -11
  101. data/app/pb_kits/playbook/react_rails_kits.js +1 -0
  102. data/app/pb_kits/playbook/utilities/globalProps.js +9 -0
  103. data/app/pb_kits/playbook/utilities/test-utils.js +24 -0
  104. data/app/pb_kits/playbook/vendor.js +2 -0
  105. data/lib/playbook/version.rb +1 -1
  106. metadata +72 -10
  107. data/app/pb_kits/playbook/pb_time_stacked/docs/_time_stacked_caption.html.erb +0 -2
  108. data/app/pb_kits/playbook/pb_time_stacked/docs/_time_stacked_caption.jsx +0 -15
@@ -2,7 +2,8 @@
2
2
  pb_rails("filter", props: {
3
3
  id: "1",
4
4
  filters: [
5
- { name: "name", value: "John Wick" }
5
+ { name: "name", value: "John Wick" },
6
+ { name: "city", value: "San Francisco"}
6
7
  ],
7
8
  sort_menu: [
8
9
  { item: "Popularity", link: "?q[sorts]=managers_popularity+asc", active: true, direction: "desc" },
@@ -10,7 +11,7 @@
10
11
  { item: "Manager's Name", link: "?q[sorts]=managers_name+asc", active: false },
11
12
  ],
12
13
  template: "default",
13
- results: 546,
14
+ results: 1,
14
15
  }) do
15
16
  %>
16
17
  <%
@@ -1,7 +1,7 @@
1
1
  import React from 'react'
2
2
  import { Button, Filter, Flex, Select, TextInput } from '../../'
3
3
 
4
- const FilterDefault = () => {
4
+ const FilterDefault = (props) => {
5
5
  const options = [
6
6
  { value: 'USA' },
7
7
  { value: 'Canada' },
@@ -11,12 +11,13 @@ const FilterDefault = () => {
11
11
  ]
12
12
  return (
13
13
  <Filter
14
+ {...props}
14
15
  double
15
16
  filters={{
16
17
  'Full Name': 'John Wick',
17
- 'Territory': 'San Francisco',
18
+ 'City': 'San Francisco',
18
19
  }}
19
- results={256}
20
+ results={1}
20
21
  sortOptions={{
21
22
  popularity: 'Popularity',
22
23
  // eslint-disable-next-line
@@ -24,7 +25,7 @@ const FilterDefault = () => {
24
25
  // eslint-disable-next-line
25
26
  manager_name: 'Manager\'s Name',
26
27
  }}
27
- sortValue={[{ name: 'popularity', dir: 'asc' }]}
28
+ sortValue={[{ name: 'popularity', dir: 'desc' }]}
28
29
  >
29
30
  <TextInput
30
31
  label="Full Name"
@@ -3,14 +3,15 @@
3
3
  id: "3",
4
4
  background: false,
5
5
  filters: [
6
- { name: "name", value: "John Wick" }
6
+ { name: "name", value: "John Wick" },
7
+ { name: "city", value: "Las Vegas"}
7
8
  ],
8
9
  sort_menu: [
9
10
  { item: "Popularity", link: "?q[sorts]=managers_popularity+asc", active: true, direction: "desc" },
10
11
  { item: "Mananger's Title", link: "?q[sorts]=managers_title+asc", active: false },
11
12
  { item: "Manager's Name", link: "?q[sorts]=managers_name+asc", active: false },
12
13
  ],
13
- results: 1,
14
+ results: 3,
14
15
  template: "single"
15
16
  }) do
16
17
  %>
@@ -47,14 +48,15 @@
47
48
  id: "4",
48
49
  background: false,
49
50
  filters: [
50
- { name: "name", value: "John Wick" }
51
+ { name: "name", value: "John Wick" },
52
+ { name: "city", value: "Las Vegas"}
51
53
  ],
52
54
  sort_menu: [
53
55
  { item: "Popularity", link: "?q[sorts]=managers_popularity+asc", active: true, direction: "desc" },
54
56
  { item: "Mananger's Title", link: "?q[sorts]=managers_title+asc", active: false },
55
57
  { item: "Manager's Name", link: "?q[sorts]=managers_name+asc", active: false },
56
58
  ],
57
- results: 546,
59
+ results: 3,
58
60
  }) do
59
61
  %>
60
62
  <%
@@ -1,7 +1,7 @@
1
1
  import React from 'react'
2
2
  import { Button, Filter, Flex, Select, TextInput } from '../../'
3
3
 
4
- const FilterNoBackground = () => {
4
+ const FilterNoBackground = (props) => {
5
5
  const options = [
6
6
  { value: 'USA' },
7
7
  { value: 'Canada' },
@@ -10,45 +10,90 @@ const FilterNoBackground = () => {
10
10
  { value: 'A Galaxy Far Far Away Like Really Far Away' },
11
11
  ]
12
12
  return (
13
- <Filter
14
- background={false}
15
- filters={{
13
+ <>
14
+ <Filter
15
+ {...props}
16
+ background={false}
17
+ filters={{
16
18
  'Full Name': 'John Wick',
17
- 'Territory': 'San Francisco',
19
+ 'City': 'Las Vegas',
18
20
  }}
19
- results={256}
20
- sortOptions={{
21
+ results={3}
22
+ sortOptions={{
21
23
  popularity: 'Popularity',
22
24
  // eslint-disable-next-line
23
25
  manager_title: 'Manager\'s Title',
24
26
  // eslint-disable-next-line
25
27
  manager_name: 'Manager\'s Name',
26
28
  }}
27
- sortValue={[{ name: 'popularity', dir: 'asc' }]}
28
- >
29
- <TextInput
30
- label="Full Name"
31
- placeholder="Enter name"
32
- />
29
+ sortValue={[{ name: 'popularity', dir: 'desc' }]}
30
+ >
31
+ <TextInput
32
+ label="Full Name"
33
+ placeholder="Enter name"
34
+ />
35
+
36
+ <Select
37
+ blankSelection="Select One..."
38
+ label="Territory"
39
+ name="location"
40
+ options={options}
41
+ />
42
+ <Flex
43
+ spacing="between"
44
+ >
45
+ <Button
46
+ text="Apply"
47
+ />
48
+ <Button
49
+ text="Clear"
50
+ variant="secondary"
51
+ />
52
+ </Flex>
53
+ </Filter>
33
54
 
34
- <Select
35
- blankSelection="Select One..."
36
- label="Territory"
37
- name="location"
38
- options={options}
39
- />
40
- <Flex
41
- spacing="between"
55
+ <Filter
56
+ {...props}
57
+ background={false}
58
+ double
59
+ filters={{
60
+ 'Full Name': 'John Wick',
61
+ 'City': 'Las Vegas',
62
+ }}
63
+ results={3}
64
+ sortOptions={{
65
+ popularity: 'Popularity',
66
+ // eslint-disable-next-line
67
+ manager_title: 'Manager\'s Title',
68
+ // eslint-disable-next-line
69
+ manager_name: 'Manager\'s Name',
70
+ }}
71
+ sortValue={[{ name: 'popularity', dir: 'desc' }]}
42
72
  >
43
- <Button
44
- text="Apply"
73
+ <TextInput
74
+ label="Full Name"
75
+ placeholder="Enter name"
45
76
  />
46
- <Button
47
- text="Clear"
48
- variant="secondary"
77
+
78
+ <Select
79
+ blankSelection="Select One..."
80
+ label="Territory"
81
+ name="location"
82
+ options={options}
49
83
  />
50
- </Flex>
51
- </Filter>
84
+ <Flex
85
+ spacing="between"
86
+ >
87
+ <Button
88
+ text="Apply"
89
+ />
90
+ <Button
91
+ text="Clear"
92
+ variant="secondary"
93
+ />
94
+ </Flex>
95
+ </Filter>
96
+ </>
52
97
  )
53
98
  }
54
99
 
@@ -1,7 +1,7 @@
1
1
  import React from 'react'
2
2
  import { Button, Filter, Flex, Select, TextInput } from '../../'
3
3
 
4
- const FilterOnly = () => {
4
+ const FilterOnly = (props) => {
5
5
  const options = [
6
6
  { value: 'USA' },
7
7
  { value: 'Canada' },
@@ -11,12 +11,8 @@ const FilterOnly = () => {
11
11
  ]
12
12
  return (
13
13
  <Filter
14
- background={false}
15
- filters={{
16
- 'Full Name': 'John Wick',
17
- 'Territory': 'San Francisco',
18
- }}
19
- results={256}
14
+ {...props}
15
+ filters={{ 'Full Name': 'John Wick' }}
20
16
  >
21
17
  <TextInput
22
18
  label="Full Name"
@@ -1,7 +1,7 @@
1
1
  import React from 'react'
2
2
  import { Button, Filter, Flex, Select, TextInput } from '../../'
3
3
 
4
- const FilterSingle = () => {
4
+ const FilterSingle = (props) => {
5
5
  const options = [
6
6
  { value: 'USA' },
7
7
  { value: 'Canada' },
@@ -11,10 +11,11 @@ const FilterSingle = () => {
11
11
  ]
12
12
  return (
13
13
  <Filter
14
+ {...props}
14
15
  filters={{
15
16
  'Full Name': 'John Wick',
16
- 'Territory': 'San Francisco',
17
17
  }}
18
+ results={546}
18
19
  sortOptions={{
19
20
  popularity: 'Popularity',
20
21
  // eslint-disable-next-line
@@ -22,7 +23,7 @@ const FilterSingle = () => {
22
23
  // eslint-disable-next-line
23
24
  manager_name: 'Manager\'s Name',
24
25
  }}
25
- sortValue={[{ name: 'popularity', dir: 'asc' }]}
26
+ sortValue={[{ name: 'popularity', dir: 'desc' }]}
26
27
  >
27
28
  <TextInput
28
29
  label="Full Name"
@@ -7,6 +7,5 @@
7
7
  { item: "Manager's Name", link: "?q[sorts]=managers_name+asc", active: false },
8
8
  ],
9
9
  template:"sort_only",
10
- background: false,
11
10
  })
12
- %>
11
+ %>
@@ -1,9 +1,9 @@
1
1
  import React from 'react'
2
2
  import { Filter } from '../../'
3
3
 
4
- const SortOnly = () => (
4
+ const SortOnly = (props) => (
5
5
  <Filter
6
- background={false}
6
+ {...props}
7
7
  sortOptions={{
8
8
  popularity: 'Popularity',
9
9
  // eslint-disable-next-line
@@ -11,7 +11,7 @@ const SortOnly = () => (
11
11
  // eslint-disable-next-line
12
12
  manager_name: 'Manager\'s Name',
13
13
  }}
14
- sortValue={[{ name: 'manager_title', dir: 'desc' }]}
14
+ sortValue={[{ name: 'popularity', dir: 'desc' }]}
15
15
  />
16
16
  )
17
17
 
@@ -1,16 +1,15 @@
1
1
  examples:
2
-
2
+
3
3
  rails:
4
4
  - filter_default: Default
5
- - filter_single: Single
6
5
  - filter_no_background: No Background
6
+ - filter_single: Single
7
7
  - filter_only: Filter Only
8
8
  - sort_only: Sort Only
9
-
9
+
10
10
  react:
11
11
  - filter_default: Default
12
- - filter_single: Single
13
12
  - filter_no_background: No Background
13
+ - filter_single: Single
14
14
  - filter_only: Filter Only
15
15
  - sort_only: Sort Only
16
-
@@ -0,0 +1,7 @@
1
+ <%= content_tag(:div,
2
+ aria: object.aria,
3
+ class: object.classname,
4
+ data: object.data,
5
+ id: object.id) do %>
6
+ <%= capture(&object.children) %>
7
+ <% end %>
@@ -0,0 +1,41 @@
1
+ /* @flow */
2
+
3
+ import React from 'react'
4
+ import classnames from 'classnames'
5
+ import { buildAriaProps, buildCss, buildDataProps } from '../utilities/props'
6
+ import { globalProps } from '../utilities/globalProps.js'
7
+
8
+ type FormGroupProps = {
9
+ aria?: object,
10
+ children?: Node,
11
+ className?: string,
12
+ data?: object,
13
+ id?: string,
14
+ }
15
+
16
+ const FormGroup = (props: FormGroupProps) => {
17
+ const {
18
+ aria = {},
19
+ className,
20
+ data = {},
21
+ id,
22
+ children,
23
+ } = props
24
+
25
+ const ariaProps = buildAriaProps(aria)
26
+ const dataProps = buildDataProps(data)
27
+ const classes = classnames(buildCss('pb_form_group_kit'), globalProps(props), className)
28
+
29
+ return (
30
+ <div
31
+ {...ariaProps}
32
+ {...dataProps}
33
+ className={classes}
34
+ id={id}
35
+ >
36
+ {children}
37
+ </div>
38
+ )
39
+ }
40
+
41
+ export default FormGroup
@@ -0,0 +1,123 @@
1
+ [class^=pb_form_group_kit] {
2
+ display: inline-flex;
3
+ flex-direction: row;
4
+ align-items: flex-end;
5
+ justify-content: flex-start;
6
+
7
+ & [class^=pb_text_input_kit] .text_input_wrapper,
8
+ & [class^=pb_date_picker_kit] .input_wrapper,
9
+ & [class^=pb_select] {
10
+ margin-bottom: 0;
11
+ }
12
+
13
+ [class^=pb_text_input_kit].dark .text_input_wrapper {
14
+ margin-bottom: 0
15
+ }
16
+
17
+ & > [class^=pb_text_input_kit]:not(:last-child) {
18
+ .text_input_wrapper input, [class^=pb_text_input_kit] .text_input_wrapper .text_input {
19
+ border-bottom-right-radius: 0;
20
+ border-top-right-radius: 0;
21
+ border-right-width: 0;
22
+ }
23
+ }
24
+
25
+ & > [class^=pb_text_input_kit]:not(:first-child) {
26
+ .text_input_wrapper input, [class^=pb_text_input_kit] .text_input_wrapper .text_input {
27
+ border-bottom-left-radius: 0;
28
+ border-top-left-radius: 0;
29
+ }
30
+ }
31
+
32
+ & > [class^=pb_button_kit]:not(:last-child) {
33
+ border-bottom-right-radius: 0;
34
+ border-top-right-radius: 0;
35
+ min-height: 45px;
36
+ }
37
+
38
+ & > [class^=pb_button_kit]:not(:first-child) {
39
+ border-bottom-left-radius: 0;
40
+ border-top-left-radius: 0;
41
+ border-left-width: 0;
42
+ min-height: 45px;
43
+ }
44
+
45
+ & > [class^=pb_date_picker_kit]:not(:last-child) {
46
+ .text_input_wrapper input, [class^=pb_text_input_kit] .text_input_wrapper .flatpickr-wrapper {
47
+ border-bottom-right-radius: 0;
48
+ border-top-right-radius: 0;
49
+ border-right-width: 0;
50
+ }
51
+ }
52
+
53
+ & > [class^=pb_date_picker_kit]:not(:first-child) {
54
+ .text_input_wrapper input, [class^=pb_text_input_kit] .text_input_wrapper .flatpickr-wrapper {
55
+ border-bottom-left-radius: 0;
56
+ border-top-left-radius: 0;
57
+ }
58
+ }
59
+
60
+ & > [class^=pb_select]:not(:last-child) {
61
+ margin-bottom: 0px;
62
+ .pb_select_kit_wrapper select {
63
+ border-bottom-right-radius: 0;
64
+ border-top-right-radius: 0;
65
+ border-right-width: 0;
66
+ }
67
+ }
68
+
69
+ & > [class^=pb_select]:not(:first-child) {
70
+ margin-bottom: 0px;
71
+ .pb_select_kit_wrapper select {
72
+ border-bottom-left-radius: 0;
73
+ border-top-left-radius: 0;
74
+ }
75
+ }
76
+
77
+ & > [class^=pb_selectable_card_kit]:not(:last-child) label {
78
+ border-bottom-right-radius: 0;
79
+ border-top-right-radius: 0;
80
+ border-right-width: 0;
81
+ }
82
+
83
+ & > [class^=pb_selectable_card_kit]:not(:first-child) label {
84
+ border-bottom-left-radius: 0;
85
+ border-top-left-radius: 0;
86
+ }
87
+
88
+ & > [class^=pb_selectable_card_icon_kit]:not(:last-child) [class^=pb_selectable_card_kit] label {
89
+ border-bottom-right-radius: 0;
90
+ border-top-right-radius: 0;
91
+ }
92
+
93
+ & > [class^=pb_selectable_card_icon_kit]:not(:first-child) [class^=pb_selectable_card_kit] label {
94
+ border-bottom-left-radius: 0;
95
+ border-top-left-radius: 0;
96
+ }
97
+
98
+ & > [class^=pb_selectable_card_icon_kit]:not(:last-child) {
99
+ [class^=pb_selectable_card_kit] input[type="checkbox"]:not(:checked) ~ label, [class^=pb_selectable_card_kit] input[type="radio"]:not(:checked)~ label {
100
+ border-right-width: 0;
101
+ }
102
+ }
103
+
104
+ & > [class^=pb_typeahead_kit] {
105
+ min-width: 200px;
106
+ }
107
+
108
+ & > [class^=pb_typeahead_kit]:not(:last-child) {
109
+ [class^=pb_text_input_kit] .text_input_wrapper input, [class^=pb_text_input_kit] .text_input_wrapper .text_input {
110
+ border-bottom-right-radius: 0;
111
+ border-top-right-radius: 0;
112
+ border-right-width: 0;
113
+ min-height: 26px;
114
+ }
115
+ }
116
+
117
+ & > [class^=pb_typeahead_kit]:not(:first-child) {
118
+ [class^=pb_text_input_kit] .text_input_wrapper input, [class^=pb_text_input_kit] .text_input_wrapper .text_input {
119
+ border-bottom-left-radius: 0;
120
+ border-top-left-radius: 0;
121
+ }
122
+ }
123
+ }