playbook_ui 7.4.0.pre.alpha2 → 7.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (126) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/images/github-brands.svg +1 -0
  3. data/app/assets/images/landing-background.svg +36 -0
  4. data/app/assets/images/landing-image.svg +203 -0
  5. data/app/assets/images/{pb.logo.svg → pb-logo.svg} +2 -2
  6. data/app/assets/images/pb-white-logo.svg +15 -0
  7. data/app/pb_kits/playbook/_playbook.scss +3 -1
  8. data/app/pb_kits/playbook/data/menu.yml +2 -2
  9. data/app/pb_kits/playbook/index.js +2 -1
  10. data/app/pb_kits/playbook/pb_background/_background.html.erb +14 -0
  11. data/app/pb_kits/playbook/pb_background/_background.jsx +63 -0
  12. data/app/pb_kits/playbook/pb_background/_background.scss +35 -0
  13. data/app/pb_kits/playbook/pb_background/background.rb +35 -0
  14. data/app/pb_kits/playbook/pb_background/docs/_background_dark.html.erb +3 -0
  15. data/app/pb_kits/playbook/pb_background/docs/_background_dark.jsx +13 -0
  16. data/app/pb_kits/playbook/pb_background/docs/_background_gradient.html.erb +3 -0
  17. data/app/pb_kits/playbook/pb_background/docs/_background_gradient.jsx +13 -0
  18. data/app/pb_kits/playbook/pb_background/docs/_background_image.html.erb +13 -0
  19. data/app/pb_kits/playbook/pb_background/docs/_background_image.jsx +30 -0
  20. data/app/pb_kits/playbook/pb_background/docs/_background_light.html.erb +3 -0
  21. data/app/pb_kits/playbook/pb_background/docs/_background_light.jsx +13 -0
  22. data/app/pb_kits/playbook/pb_background/docs/_background_white.html.erb +3 -0
  23. data/app/pb_kits/playbook/pb_background/docs/_background_white.jsx +14 -0
  24. data/app/pb_kits/playbook/pb_background/docs/_description.md +1 -0
  25. data/app/pb_kits/playbook/pb_background/docs/example.yml +15 -0
  26. data/app/pb_kits/playbook/pb_background/docs/index.js +6 -0
  27. data/app/pb_kits/playbook/pb_date/_date.html.erb +64 -8
  28. data/app/pb_kits/playbook/pb_date/_date.jsx +115 -66
  29. data/app/pb_kits/playbook/pb_date/_date.scss +30 -0
  30. data/app/pb_kits/playbook/pb_date/date.rb +20 -9
  31. data/app/pb_kits/playbook/pb_date/docs/_date_alignment.html.erb +24 -0
  32. data/app/pb_kits/playbook/pb_date/docs/_date_alignment.jsx +35 -0
  33. data/app/pb_kits/playbook/pb_date/docs/_date_default.html.erb +21 -6
  34. data/app/pb_kits/playbook/pb_date/docs/_date_default.jsx +43 -12
  35. data/app/pb_kits/playbook/pb_date/docs/_date_variants.html.erb +27 -0
  36. data/app/pb_kits/playbook/pb_date/docs/_date_variants.jsx +43 -0
  37. data/app/pb_kits/playbook/pb_date/docs/example.yml +4 -0
  38. data/app/pb_kits/playbook/pb_date/docs/index.js +2 -0
  39. data/app/pb_kits/playbook/pb_date_picker/_date_picker.html.erb +19 -14
  40. data/app/pb_kits/playbook/pb_date_time/_date_time.html.erb +31 -0
  41. data/app/pb_kits/playbook/pb_date_time/_date_time.jsx +73 -0
  42. data/app/pb_kits/playbook/pb_date_time/_date_time.scss +26 -0
  43. data/app/pb_kits/playbook/pb_date_time/date_time.rb +29 -0
  44. data/app/pb_kits/playbook/pb_date_time/docs/_date_time_align.html.erb +17 -0
  45. data/app/pb_kits/playbook/pb_date_time/docs/_date_time_align.jsx +35 -0
  46. data/app/pb_kits/playbook/pb_date_time/docs/_date_time_default.html.erb +20 -0
  47. data/app/pb_kits/playbook/pb_date_time/docs/_date_time_default.jsx +38 -0
  48. data/app/pb_kits/playbook/pb_date_time/docs/_date_time_size.html.erb +26 -0
  49. data/app/pb_kits/playbook/pb_date_time/docs/_date_time_size.jsx +75 -0
  50. data/app/pb_kits/playbook/pb_date_time/docs/_description.md +1 -0
  51. data/app/pb_kits/playbook/pb_date_time/docs/example.yml +11 -0
  52. data/app/pb_kits/playbook/pb_date_time/docs/index.js +3 -0
  53. data/app/pb_kits/playbook/pb_flex/_flex.jsx +1 -1
  54. data/app/pb_kits/playbook/pb_flex/_flex.scss +4 -0
  55. data/app/pb_kits/playbook/pb_flex/flex.rb +1 -1
  56. data/app/pb_kits/playbook/pb_form/docs/_form_form_with.html.erb +52 -1
  57. data/app/pb_kits/playbook/pb_form/docs/_form_form_with_validate.html.erb +1 -1
  58. data/app/pb_kits/playbook/pb_form/docs/_form_simple_form.html.erb +1 -1
  59. data/app/pb_kits/playbook/pb_form/docs/_form_simple_form_validate.html.erb +1 -1
  60. data/app/pb_kits/playbook/pb_form/form_builder/date_picker_field.rb +19 -1
  61. data/app/pb_kits/playbook/pb_home_address_street/home_address_street.rb +1 -1
  62. data/app/pb_kits/playbook/pb_progress_step/_progress_step.jsx +3 -1
  63. data/app/pb_kits/playbook/pb_progress_step/_progress_step.scss +13 -4
  64. data/app/pb_kits/playbook/pb_progress_step/_progress_step_item.html.erb +1 -1
  65. data/app/pb_kits/playbook/pb_progress_step/_progress_step_item.jsx +5 -7
  66. data/app/pb_kits/playbook/pb_progress_step/docs/_progress_step_custom_icon.html.erb +12 -0
  67. data/app/pb_kits/playbook/pb_progress_step/docs/_progress_step_tracker_click_events.jsx +48 -0
  68. data/app/pb_kits/playbook/pb_progress_step/docs/example.yml +2 -0
  69. data/app/pb_kits/playbook/pb_progress_step/docs/index.js +1 -0
  70. data/app/pb_kits/playbook/pb_progress_step/progress_step.rb +5 -3
  71. data/app/pb_kits/playbook/pb_progress_step/progress_step_item.rb +6 -0
  72. data/app/pb_kits/playbook/pb_timestamp/_timestamp.html.erb +13 -1
  73. data/app/pb_kits/playbook/pb_timestamp/_timestamp.jsx +96 -20
  74. data/app/pb_kits/playbook/pb_timestamp/_timestamp.scss +12 -1
  75. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_align.html.erb +69 -0
  76. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_align.jsx +91 -0
  77. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_default.html.erb +21 -1
  78. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_default.jsx +31 -4
  79. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_elapsed.html.erb +14 -0
  80. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_elapsed.jsx +27 -0
  81. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_elapsed_align.html.erb +54 -0
  82. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_elapsed_align.jsx +73 -0
  83. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_timezones.html.erb +59 -0
  84. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_timezones.jsx +74 -0
  85. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_timezones_align.html.erb +177 -0
  86. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_timezones_align.jsx +209 -0
  87. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_updated.html.erb +35 -0
  88. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_updated.jsx +51 -0
  89. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_updated_align.html.erb +123 -0
  90. data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_updated_align.jsx +146 -0
  91. data/app/pb_kits/playbook/pb_timestamp/docs/example.yml +14 -0
  92. data/app/pb_kits/playbook/pb_timestamp/docs/index.js +7 -0
  93. data/app/pb_kits/playbook/pb_timestamp/timestamp.rb +67 -1
  94. data/app/pb_kits/playbook/pb_tooltip/_tooltip.scss +46 -19
  95. data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_default.html.erb +46 -10
  96. data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_white.html.erb +4 -4
  97. data/app/pb_kits/playbook/pb_tooltip/tooltip.rb +3 -2
  98. data/app/pb_kits/playbook/pb_typeahead/_typeahead.jsx +14 -2
  99. data/app/pb_kits/playbook/pb_typeahead/components/ClearIndicator.jsx +20 -0
  100. data/app/pb_kits/playbook/pb_typeahead/components/MultiValue.jsx +8 -15
  101. data/app/pb_kits/playbook/pb_typeahead/components/Option.jsx +1 -6
  102. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills.html.erb +10 -4
  103. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills.md +20 -4
  104. data/app/pb_kits/playbook/pb_typeahead/typeahead.rb +4 -0
  105. data/app/pb_kits/playbook/vendor.js +0 -3
  106. data/lib/playbook/version.rb +2 -1
  107. metadata +60 -24
  108. data/app/assets/images/clark.jpg +0 -0
  109. data/app/assets/images/giant.jpg +0 -0
  110. data/app/pb_kits/playbook/pb_collapsible/_collapsible.html.erb +0 -9
  111. data/app/pb_kits/playbook/pb_collapsible/_collapsible.jsx +0 -77
  112. data/app/pb_kits/playbook/pb_collapsible/_collapsible.scss +0 -17
  113. data/app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.jsx +0 -40
  114. data/app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleMain.jsx +0 -58
  115. data/app/pb_kits/playbook/pb_collapsible/child_kits/_collapsible_content.html.erb +0 -7
  116. data/app/pb_kits/playbook/pb_collapsible/child_kits/_collapsible_main.html.erb +0 -16
  117. data/app/pb_kits/playbook/pb_collapsible/collapsible.rb +0 -15
  118. data/app/pb_kits/playbook/pb_collapsible/collapsible_content.rb +0 -21
  119. data/app/pb_kits/playbook/pb_collapsible/collapsible_main.rb +0 -24
  120. data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_dark.html.erb +0 -10
  121. data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_dark.jsx +0 -17
  122. data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_default.html.erb +0 -10
  123. data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_default.jsx +0 -19
  124. data/app/pb_kits/playbook/pb_collapsible/docs/example.yml +0 -9
  125. data/app/pb_kits/playbook/pb_collapsible/docs/index.js +0 -2
  126. data/app/pb_kits/playbook/pb_collapsible/index.js +0 -82
@@ -0,0 +1,123 @@
1
+ <%= pb_rails("timestamp", props: {
2
+ timestamp: DateTime.now,
3
+ variant: "updated",
4
+ align: "left",
5
+ show_user: true,
6
+ text: "Maricris Nonato"
7
+ }) %>
8
+
9
+ <br>
10
+
11
+ <%= pb_rails("timestamp", props: {
12
+ timestamp: DateTime.now,
13
+ variant: "updated",
14
+ align: "left",
15
+ show_user: false
16
+ }) %>
17
+
18
+ <br>
19
+
20
+ <%= pb_rails("timestamp", props: {
21
+ timestamp: DateTime.now,
22
+ variant: "updated",
23
+ align: "left",
24
+ show_user: true,
25
+ show_timezone: true,
26
+ text: "Maricris Nonato",
27
+ timezone: "America/New_York"
28
+ }) %>
29
+
30
+ <br>
31
+
32
+ <%= pb_rails("timestamp", props: {
33
+ timestamp: DateTime.now,
34
+ variant: "updated",
35
+ align: "left",
36
+ show_user: false,
37
+ show_timezone: true,
38
+ timezone: "America/New_York"
39
+ }) %>
40
+
41
+ <br><br>
42
+
43
+ <%= pb_rails("timestamp", props: {
44
+ timestamp: DateTime.now,
45
+ variant: "updated",
46
+ align: "center",
47
+ show_user: true,
48
+ text: "Maricris Nonato"
49
+ }) %>
50
+
51
+ <br>
52
+
53
+ <%= pb_rails("timestamp", props: {
54
+ timestamp: DateTime.now,
55
+ variant: "updated",
56
+ align: "center",
57
+ show_user: false
58
+ }) %>
59
+
60
+ <br>
61
+
62
+ <%= pb_rails("timestamp", props: {
63
+ timestamp: DateTime.now,
64
+ variant: "updated",
65
+ align: "center",
66
+ show_user: true,
67
+ show_timezone: true,
68
+ text: "Maricris Nonato",
69
+ timezone: "America/New_York"
70
+ }) %>
71
+
72
+ <br>
73
+
74
+ <%= pb_rails("timestamp", props: {
75
+ timestamp: DateTime.now,
76
+ variant: "updated",
77
+ align: "center",
78
+ show_user: false,
79
+ show_timezone: true,
80
+ timezone: "America/New_York"
81
+ }) %>
82
+
83
+ <br><br>
84
+
85
+ <%= pb_rails("timestamp", props: {
86
+ timestamp: DateTime.now,
87
+ variant: "updated",
88
+ align: "right",
89
+ show_user: true,
90
+ text: "Maricris Nonato"
91
+ }) %>
92
+
93
+ <br>
94
+
95
+ <%= pb_rails("timestamp", props: {
96
+ timestamp: DateTime.now,
97
+ variant: "updated",
98
+ align: "right",
99
+ show_user: false
100
+ }) %>
101
+
102
+ <br>
103
+
104
+ <%= pb_rails("timestamp", props: {
105
+ timestamp: DateTime.now,
106
+ variant: "updated",
107
+ align: "right",
108
+ show_user: true,
109
+ show_timezone: true,
110
+ text: "Maricris Nonato",
111
+ timezone: "America/New_York"
112
+ }) %>
113
+
114
+ <br>
115
+
116
+ <%= pb_rails("timestamp", props: {
117
+ timestamp: DateTime.now,
118
+ variant: "updated",
119
+ align: "right",
120
+ show_user: false,
121
+ show_timezone: true,
122
+ timezone: "America/New_York"
123
+ }) %>
@@ -0,0 +1,146 @@
1
+ import React from 'react'
2
+ import Timestamp from '../_timestamp.jsx'
3
+
4
+ const TimestampUpdatedAlign = (props) => {
5
+ return (
6
+ <div>
7
+ <Timestamp
8
+ align="left"
9
+ showUser="true"
10
+ text="Maricris Nonato"
11
+ timestamp={new Date().getTime()}
12
+ variant="updated"
13
+ {...props}
14
+ />
15
+
16
+ <br />
17
+
18
+ <Timestamp
19
+ align="left"
20
+ showUser="false"
21
+ timestamp={new Date().getTime()}
22
+ variant="updated"
23
+ {...props}
24
+ />
25
+
26
+ <br />
27
+
28
+ <Timestamp
29
+ showTimezone="true"
30
+ showUser="true"
31
+ text="Maricris Nonato"
32
+ timestamp={new Date().getTime()}
33
+ timezone="America/New_York"
34
+ variant="updated"
35
+ {...props}
36
+ />
37
+
38
+ <br />
39
+
40
+ <Timestamp
41
+ showTimezone="true"
42
+ showUser="false"
43
+ timestamp={new Date().getTime()}
44
+ timezone="America/New_York"
45
+ variant="updated"
46
+ {...props}
47
+ />
48
+
49
+ <br />
50
+ <br />
51
+
52
+ <Timestamp
53
+ align="center"
54
+ showUser="true"
55
+ text="Maricris Nonato"
56
+ timestamp={new Date().getTime()}
57
+ variant="updated"
58
+ {...props}
59
+ />
60
+
61
+ <br />
62
+
63
+ <Timestamp
64
+ align="center"
65
+ showUser="false"
66
+ timestamp={new Date().getTime()}
67
+ variant="updated"
68
+ {...props}
69
+ />
70
+
71
+ <br />
72
+
73
+ <Timestamp
74
+ align="center"
75
+ showTimezone="true"
76
+ showUser="true"
77
+ text="Maricris Nonato"
78
+ timestamp={new Date().getTime()}
79
+ timezone="America/New_York"
80
+ variant="updated"
81
+ {...props}
82
+ />
83
+
84
+ <br />
85
+
86
+ <Timestamp
87
+ align="center"
88
+ showTimezone="true"
89
+ showUser="false"
90
+ timestamp={new Date().getTime()}
91
+ timezone="America/New_York"
92
+ variant="updated"
93
+ {...props}
94
+ />
95
+
96
+ <br />
97
+ <br />
98
+
99
+ <Timestamp
100
+ align="right"
101
+ showUser="true"
102
+ text="Maricris Nonato"
103
+ timestamp={new Date().getTime()}
104
+ variant="updated"
105
+ {...props}
106
+ />
107
+
108
+ <br />
109
+
110
+ <Timestamp
111
+ align="right"
112
+ showUser="false"
113
+ timestamp={new Date().getTime()}
114
+ variant="updated"
115
+ {...props}
116
+ />
117
+
118
+ <br />
119
+
120
+ <Timestamp
121
+ align="right"
122
+ showTimezone="true"
123
+ showUser="true"
124
+ text="Maricris Nonato"
125
+ timestamp={new Date().getTime()}
126
+ timezone="America/New_York"
127
+ variant="updated"
128
+ {...props}
129
+ />
130
+
131
+ <br />
132
+
133
+ <Timestamp
134
+ align="right"
135
+ showTimezone="true"
136
+ showUser="false"
137
+ timestamp={new Date().getTime()}
138
+ timezone="America/New_York"
139
+ variant="updated"
140
+ {...props}
141
+ />
142
+ </div>
143
+ )
144
+ }
145
+
146
+ export default TimestampUpdatedAlign
@@ -2,6 +2,20 @@ examples:
2
2
 
3
3
  rails:
4
4
  - timestamp_default: Default
5
+ - timestamp_align: Alignments
6
+ - timestamp_timezones: Timezones
7
+ - timestamp_timezones_align: Timezones - Alignments
8
+ - timestamp_updated: Last Updated by
9
+ - timestamp_updated_align: Last Updated by - Alignments
10
+ - timestamp_elapsed: Time Ago
11
+ - timestamp_elapsed_align: Time Ago - Alignments
5
12
 
6
13
  react:
7
14
  - timestamp_default: Default
15
+ - timestamp_align: Alignments
16
+ - timestamp_timezones: Timezones
17
+ - timestamp_timezones_align: Timezones - Alignments
18
+ - timestamp_updated: Last Updated by
19
+ - timestamp_updated_align: Last Updated by - Alignments
20
+ - timestamp_elapsed: Time Ago
21
+ - timestamp_elapsed_align: Time Ago - Alignments
@@ -1 +1,8 @@
1
1
  export { default as TimestampDefault } from './_timestamp_default.jsx'
2
+ export { default as TimestampAlign } from './_timestamp_align.jsx'
3
+ export { default as TimestampTimezones } from './_timestamp_timezones.jsx'
4
+ export { default as TimestampTimezonesAlign } from './_timestamp_timezones_align.jsx'
5
+ export { default as TimestampUpdated } from './_timestamp_updated.jsx'
6
+ export { default as TimestampUpdatedAlign } from './_timestamp_updated_align.jsx'
7
+ export { default as TimestampElapsed } from './_timestamp_elapsed.jsx'
8
+ export { default as TimestampElapsedAlign } from './_timestamp_elapsed_align.jsx'
@@ -3,14 +3,80 @@
3
3
  module Playbook
4
4
  module PbTimestamp
5
5
  class Timestamp
6
+ include ActionView::Helpers::DateHelper
6
7
  include Playbook::Props
7
8
 
8
9
  partial "pb_timestamp/timestamp"
9
10
 
10
11
  prop :text
12
+ prop :timestamp, required: true
13
+
14
+ prop :dark, type: Playbook::Props::Boolean,
15
+ default: false
16
+ prop :align, type: Playbook::Props::Enum,
17
+ values: %w[left center right],
18
+ default: "left"
19
+ prop :show_date, type: Playbook::Props::Boolean,
20
+ default: true
21
+ prop :show_timezone, type: Playbook::Props::Boolean,
22
+ default: false
23
+ prop :show_user, type: Playbook::Props::Boolean,
24
+ default: false
25
+ prop :timezone, default: "America/New_York"
26
+ prop :variant, type: Playbook::Props::Enum,
27
+ values: %w[default elapsed updated],
28
+ default: "default"
11
29
 
12
30
  def classname
13
- generate_classname("pb_timestamp_kit")
31
+ generate_classname("pb_timestamp_kit", variant_class, align)
32
+ end
33
+
34
+ def format_year_string
35
+ pb_date_time.to_year != DateTime.now.year.to_s ? ", #{pb_date_time.to_year}" : ""
36
+ end
37
+
38
+ def format_time_string
39
+ "#{pb_date_time.to_hour}:#{pb_date_time.to_minutes}#{pb_date_time.to_meridian} #{format_timezone_string}".strip
40
+ end
41
+
42
+ def format_timezone_string
43
+ timezone && show_timezone ? pb_date_time.to_timezone.to_s : ""
44
+ end
45
+
46
+ def format_date_string
47
+ "#{pb_date_time.to_month_downcase} #{pb_date_time.to_unpadded_day}#{format_year_string}"
48
+ end
49
+
50
+ def format_datetime_string
51
+ "#{format_date_string} &middot; #{format_time_string}".html_safe
52
+ end
53
+
54
+ def format_updated_string
55
+ user_string = show_user ? " by #{text}" : ""
56
+
57
+ case variant
58
+ when "updated"
59
+ datetime_string = " on #{format_date_string} at #{format_time_string}"
60
+ when "elapsed"
61
+ datetime_string = " #{time_ago_in_words(pb_date_time.convert_to_timestamp)} ago"
62
+ end
63
+
64
+ "Last updated#{user_string}#{datetime_string}"
65
+ end
66
+
67
+ private
68
+
69
+ def pb_date_time
70
+ Playbook::PbKit::PbDateTime.new(timestamp, timezone)
71
+ end
72
+
73
+ def variant_class
74
+ case variant
75
+ when "updated"
76
+ "updated"
77
+ when "elapsed"
78
+ "elapsed"
79
+ end
14
80
  end
15
81
  end
16
82
  end
@@ -1,6 +1,8 @@
1
1
  @import "../tokens/positioning";
2
2
  @import "../tokens/colors";
3
3
 
4
+ $tooltip_shadow: rgba(60, 106, 172, 0.18);
5
+
4
6
  @keyframes fadeIn {
5
7
  from {
6
8
  opacity: 0;
@@ -33,19 +35,8 @@
33
35
  &.flipped {
34
36
  margin-top: 15px;
35
37
  .arrow {
36
- top: -35%;
37
38
  border-color: transparent transparent $white transparent;
38
- }
39
- }
40
-
41
- &.react {
42
- .arrow {
43
- top: 78%;
44
- }
45
- &.flipped {
46
- .arrow {
47
- top: -8%;
48
- }
39
+ transform: rotate(180deg);
49
40
  }
50
41
  }
51
42
 
@@ -66,7 +57,7 @@
66
57
  z-index: $z_9;
67
58
  margin-bottom: $space_sm;
68
59
  background-color: $white;
69
- padding: $space_xs $space_sm $space_xs $space_sm;
60
+ padding: $space_xs $space_sm;
70
61
  box-shadow: $shadow_deeper;
71
62
  border-radius: $border_rad_light;
72
63
 
@@ -82,10 +73,6 @@
82
73
  .tooltip_tooltip{
83
74
  color: $white;
84
75
  background-color: rgba($black, $opacity_9);
85
-
86
-
87
- &.show {
88
- }
89
76
  .arrow {
90
77
  border-color: $black transparent transparent transparent;
91
78
  opacity: $opacity_9;
@@ -100,6 +87,46 @@
100
87
  }
101
88
  }
102
89
 
103
- .tooltip_tooltip.top {
104
- padding: ($space_xs - 3px) 0;
90
+ // Right
91
+ [class^="pb_tooltip_kit"] .tooltip_tooltip {
92
+
93
+ &[x-placement="right"] {
94
+ box-shadow: -8px 0 28px 0 $tooltip_shadow;
95
+ margin: 0 0 0 $space_sm;
96
+ .arrow {
97
+ left: -#{$space_xs};
98
+ margin-bottom: 0;
99
+ transform: rotate(90deg);
100
+ }
101
+ &.flipped .arrow {
102
+ transform: rotate(270deg);
103
+ }
104
+ }
105
+
106
+ &[x-placement="bottom"] {
107
+ box-shadow: 0 -12px 28px 0 $tooltip_shadow;
108
+ margin: $space_sm 0 0 0;
109
+ .arrow {
110
+ top: -18px;
111
+ margin-bottom: 0;
112
+ transform: rotate(180deg);
113
+ }
114
+ &.flipped .arrow {
115
+ transform: rotate(0deg);
116
+ }
117
+ }
118
+
119
+ &[x-placement="left"] {
120
+ box-shadow: 8px 0 28px 0 $tooltip_shadow;
121
+ margin: 0 $space_sm 0 0;
122
+ .arrow {
123
+ margin-bottom: 0;
124
+ right: -18px;
125
+ left: auto;
126
+ transform: rotate(270deg);
127
+ }
128
+ &.flipped .arrow {
129
+ transform: rotate(90deg);
130
+ }
131
+ }
105
132
  }