playbook_ui 10.19.0 → 10.21.0.pre.alpha.lightbox
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/pb_kits/playbook/_playbook.scss +1 -0
- data/app/pb_kits/playbook/data/menu.yml +1 -0
- data/app/pb_kits/playbook/index.js +2 -1
- data/app/pb_kits/playbook/pb_avatar/_avatar.jsx +1 -1
- data/app/pb_kits/playbook/pb_avatar/_avatar.scss +2 -2
- data/app/pb_kits/playbook/pb_avatar/avatar.rb +1 -1
- data/app/pb_kits/playbook/pb_avatar/avatar.test.js +1 -1
- data/app/pb_kits/playbook/pb_bar_graph/_bar_graph.jsx +4 -0
- data/app/pb_kits/playbook/pb_bar_graph/bar_graph.rb +1 -0
- data/app/pb_kits/playbook/pb_body/_body.jsx +3 -1
- data/app/pb_kits/playbook/pb_button/_button.jsx +3 -3
- data/app/pb_kits/playbook/pb_button/_button.scss +18 -1
- data/app/pb_kits/playbook/pb_button/button.rb +11 -3
- data/app/pb_kits/playbook/pb_button/button.test.js +13 -0
- data/app/pb_kits/playbook/pb_button/docs/_button_size.html.erb +3 -0
- data/app/pb_kits/playbook/pb_button/docs/_button_size.jsx +26 -0
- data/app/pb_kits/playbook/pb_button/docs/_button_size.md +1 -0
- data/app/pb_kits/playbook/pb_button/docs/example.yml +2 -0
- data/app/pb_kits/playbook/pb_button/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_caption/_caption.jsx +2 -1
- data/app/pb_kits/playbook/pb_caption/_caption.scss +7 -0
- data/app/pb_kits/playbook/pb_caption/caption.rb +5 -2
- data/app/pb_kits/playbook/pb_circle_chart/_circle_chart.jsx +3 -0
- data/app/pb_kits/playbook/pb_circle_chart/circle_chart.rb +1 -0
- data/app/pb_kits/playbook/pb_dashboard/pbChartsDarkTheme.js +215 -0
- data/app/pb_kits/playbook/pb_date/_date.jsx +1 -1
- data/app/pb_kits/playbook/pb_date/date.html.erb +1 -1
- data/app/pb_kits/playbook/pb_file_upload/_file_upload.jsx +17 -10
- data/app/pb_kits/playbook/pb_file_upload/fileupload.test.js +40 -0
- data/app/pb_kits/playbook/pb_gauge/_gauge.jsx +3 -0
- data/app/pb_kits/playbook/pb_gauge/gauge.rb +1 -0
- data/app/pb_kits/playbook/pb_image/_image.jsx +1 -1
- data/app/pb_kits/playbook/pb_image/_image.scss +3 -3
- data/app/pb_kits/playbook/pb_image/image.rb +1 -1
- data/app/pb_kits/playbook/pb_image/image.test.js +1 -1
- data/app/pb_kits/playbook/pb_lightbox/Carousel/Slide.jsx +55 -0
- data/app/pb_kits/playbook/pb_lightbox/Carousel/Slides.jsx +54 -0
- data/app/pb_kits/playbook/pb_lightbox/Carousel/Thumbnail.jsx +39 -0
- data/app/pb_kits/playbook/pb_lightbox/Carousel/Thumbnails.jsx +82 -0
- data/app/pb_kits/playbook/pb_lightbox/Carousel/index.jsx +59 -0
- data/app/pb_kits/playbook/pb_lightbox/Carousel/styles.scss +110 -0
- data/app/pb_kits/playbook/pb_lightbox/Carousel/useSlides.js +66 -0
- data/app/pb_kits/playbook/pb_lightbox/_lightbox.jsx +112 -0
- data/app/pb_kits/playbook/pb_lightbox/_lightbox_context.jsx +3 -0
- data/app/pb_kits/playbook/pb_lightbox/_lightbox_header.jsx +71 -0
- data/app/pb_kits/playbook/pb_lightbox/_lightbox_header_icon.jsx +26 -0
- data/app/pb_kits/playbook/pb_lightbox/docs/_lightbox_compound_component.jsx +95 -0
- data/app/pb_kits/playbook/pb_lightbox/docs/_lightbox_default.jsx +64 -0
- data/app/pb_kits/playbook/pb_lightbox/docs/_lightbox_default.md +1 -0
- data/app/pb_kits/playbook/pb_lightbox/docs/_lightbox_multiple.jsx +64 -0
- data/app/pb_kits/playbook/pb_lightbox/docs/example.yml +7 -0
- data/app/pb_kits/playbook/pb_lightbox/docs/index.js +3 -0
- data/app/pb_kits/playbook/pb_lightbox/hooks/useVisibility.js +21 -0
- data/app/pb_kits/playbook/pb_lightbox/hooks/useWindowSize.js +25 -0
- data/app/pb_kits/playbook/pb_lightbox/lightbox.scss +90 -0
- data/app/pb_kits/playbook/pb_lightbox/lightbox.test.jsx +30 -0
- data/app/pb_kits/playbook/pb_line_graph/_line_graph.jsx +4 -0
- data/app/pb_kits/playbook/pb_line_graph/line_graph.rb +1 -0
- data/app/pb_kits/playbook/pb_popover/_popover.jsx +2 -4
- data/app/pb_kits/playbook/pb_popover/docs/_popover_close.html.erb +7 -7
- data/app/pb_kits/playbook/pb_popover/index.js +4 -9
- data/app/pb_kits/playbook/pb_popover/popover.html.erb +1 -1
- data/app/pb_kits/playbook/pb_rich_text_editor/_rich_text_editor.jsx +4 -0
- data/app/pb_kits/playbook/pb_text_input/_text_input.scss +2 -2
- data/app/pb_kits/playbook/pb_text_input/text_input.test.js +14 -0
- data/app/pb_kits/playbook/pb_title/_title.jsx +2 -1
- data/app/pb_kits/playbook/pb_title/title.rb +5 -2
- data/app/pb_kits/playbook/playbook-doc.js +2 -0
- data/app/pb_kits/playbook/plugins/pb_chart.js +8 -4
- data/lib/playbook/version.rb +2 -2
- metadata +30 -4
@@ -1,23 +1,23 @@
|
|
1
1
|
<%= pb_rails("flex", props: {classname: "flex-container", spacing: "between"}) do %>
|
2
2
|
<span>
|
3
|
-
<%= pb_rails("button", props: { text: "Click Inside", variant: "secondary", id:
|
3
|
+
<%= pb_rails("button", props: { text: "Click Inside", variant: "secondary", id: "inside-popover-1" }) %>
|
4
4
|
<%= pb_rails("popover", props: {
|
5
5
|
close_on_click: "inside",
|
6
6
|
trigger_element_id: "inside-popover-1",
|
7
7
|
tooltip_id: "inside-tooltip-1",
|
8
|
-
position:
|
8
|
+
position: "bottom",
|
9
9
|
offset: true
|
10
10
|
}) do %>
|
11
11
|
Click on me!
|
12
12
|
<% end %>
|
13
13
|
</span>
|
14
14
|
<span>
|
15
|
-
<%= pb_rails("button", props: { text: "Click Outside", variant: "secondary", id:
|
15
|
+
<%= pb_rails("button", props: { text: "Click Outside", variant: "secondary", id: "outside-popover-1" }) %>
|
16
16
|
<%= pb_rails("popover", props: {
|
17
17
|
close_on_click: "outside",
|
18
18
|
trigger_element_id: "outside-popover-1",
|
19
19
|
tooltip_id: "outside-tooltip-1",
|
20
|
-
position:
|
20
|
+
position: "left",
|
21
21
|
offset: true
|
22
22
|
}) do %>
|
23
23
|
Click anywhere but me!
|
@@ -27,16 +27,16 @@
|
|
27
27
|
<%= pb_rails("button", props: {
|
28
28
|
text: "Click Anywhere",
|
29
29
|
variant: "secondary",
|
30
|
-
id:
|
30
|
+
id: "any-popover-1"
|
31
31
|
}) %>
|
32
32
|
<%= pb_rails("popover", props: {
|
33
33
|
close_on_click: "any",
|
34
34
|
trigger_element_id: "any-popover-1",
|
35
35
|
tooltip_id: "any-tooltip-1",
|
36
|
-
position:
|
36
|
+
position: "top",
|
37
37
|
offset: true
|
38
38
|
}) do %>
|
39
39
|
Click anything!
|
40
40
|
<% end %>
|
41
41
|
</span>
|
42
|
-
<% end %>
|
42
|
+
<% end %>
|
@@ -36,15 +36,14 @@ export default class PbPopover extends PbEnhancedElement {
|
|
36
36
|
}
|
37
37
|
|
38
38
|
setTimeout(() => {
|
39
|
-
this.popper.update()
|
40
39
|
this.toggleTooltip()
|
40
|
+
this.popper.update()
|
41
41
|
}, 0)
|
42
42
|
})
|
43
43
|
}
|
44
44
|
|
45
45
|
checkCloseTooltip() {
|
46
46
|
document.querySelector('body').addEventListener('click', ({ target }) => {
|
47
|
-
const isTriggerElement = target.closest(`#${this.triggerElementId}`) !== null
|
48
47
|
const isTooltipElement = target.closest(`#${this.tooltipId}`) !== null
|
49
48
|
|
50
49
|
switch (this.closeOnClick) {
|
@@ -52,21 +51,17 @@ export default class PbPopover extends PbEnhancedElement {
|
|
52
51
|
this.hideTooltip()
|
53
52
|
break
|
54
53
|
case 'outside':
|
55
|
-
if (isTooltipElement) {
|
56
|
-
this.checkCloseTooltip()
|
57
|
-
} else {
|
54
|
+
if (!isTooltipElement) {
|
58
55
|
this.hideTooltip()
|
59
56
|
}
|
60
57
|
break
|
61
58
|
case 'inside':
|
62
|
-
if (isTooltipElement
|
59
|
+
if (isTooltipElement) {
|
63
60
|
this.hideTooltip()
|
64
|
-
} else {
|
65
|
-
this.checkCloseTooltip()
|
66
61
|
}
|
67
62
|
break
|
68
63
|
}
|
69
|
-
},
|
64
|
+
}, true)
|
70
65
|
}
|
71
66
|
|
72
67
|
hideTooltip() {
|
@@ -3,7 +3,7 @@
|
|
3
3
|
class: object.classname,
|
4
4
|
data: object.data,
|
5
5
|
id: object.id) do %>
|
6
|
-
<div class="pb_popover_tooltip" id="<%= object.tooltip_id %>" role="tooltip" style="<%= object.z_index_helper %>">
|
6
|
+
<div class="pb_popover_tooltip hide" id="<%= object.tooltip_id %>" role="tooltip" style="<%= object.z_index_helper %>">
|
7
7
|
<div class="pb_popover_body <%= object.width_height_class_helper %> <%= object.popover_spacing_helper %>" style="<%= object.width_height_helper %>">
|
8
8
|
<%= content.presence %>
|
9
9
|
</div>
|
@@ -129,6 +129,10 @@ const RichTextEditor = (props: RichTextEditorProps) => {
|
|
129
129
|
trixRef.current.addEventListener('click', handleClick)
|
130
130
|
}, [])
|
131
131
|
|
132
|
+
useEffect(() => {
|
133
|
+
trixRef.current.editor.loadHTML(value)
|
134
|
+
}, [value])
|
135
|
+
|
132
136
|
const RichTextEditorClass = 'pb_rich_text_editor_kit'
|
133
137
|
const SimpleClass = simple ? 'simple' : ''
|
134
138
|
const FocusClass = focus ? 'focus-editor-targets' : ''
|
@@ -4,12 +4,12 @@
|
|
4
4
|
|
5
5
|
|
6
6
|
[class^=pb_text_input_kit] {
|
7
|
+
margin-bottom: $space_sm;
|
7
8
|
.pb_text_input_kit_label {
|
8
9
|
margin-bottom: $space_xs;
|
9
10
|
display: block;
|
10
11
|
}
|
11
12
|
.text_input_wrapper {
|
12
|
-
margin-bottom: $space_sm;
|
13
13
|
display: block;
|
14
14
|
input::placeholder,
|
15
15
|
.text_input .placeholder {
|
@@ -169,7 +169,7 @@
|
|
169
169
|
&-card {
|
170
170
|
height: 45px;
|
171
171
|
margin: 0;
|
172
|
-
padding: 0
|
172
|
+
padding: 0;
|
173
173
|
align-items: center;
|
174
174
|
justify-content: center;
|
175
175
|
width: 45px;
|
@@ -75,3 +75,17 @@ test('returns additional class name', () => {
|
|
75
75
|
const kit = screen.getByTestId(testId)
|
76
76
|
expect(kit).toHaveClass(`${kitClass} dark error`)
|
77
77
|
})
|
78
|
+
|
79
|
+
test('returns additional class name', () => {
|
80
|
+
render(
|
81
|
+
<TextInput
|
82
|
+
data={{ testid: testId }}
|
83
|
+
label="First Name"
|
84
|
+
marginBottom="lg"
|
85
|
+
placeholder="Enter first name"
|
86
|
+
/>
|
87
|
+
)
|
88
|
+
|
89
|
+
const kit = screen.getByTestId(testId)
|
90
|
+
expect(kit).toHaveClass(`${kitClass} mb_lg`)
|
91
|
+
})
|
@@ -30,12 +30,13 @@ const Title = (props: TitleProps) => {
|
|
30
30
|
size = 3,
|
31
31
|
tag = 'h3',
|
32
32
|
text,
|
33
|
+
variant = null,
|
33
34
|
} = props
|
34
35
|
|
35
36
|
const ariaProps = buildAriaProps(aria)
|
36
37
|
const dataProps = buildDataProps(data)
|
37
38
|
const classes = classnames(
|
38
|
-
buildCss('pb_title_kit', size, color),
|
39
|
+
buildCss('pb_title_kit', size, variant, color),
|
39
40
|
globalProps(props),
|
40
41
|
className,
|
41
42
|
)
|
@@ -13,10 +13,13 @@ module Playbook
|
|
13
13
|
values: %w[h1 h2 h3 h4 h5 h6 p div span],
|
14
14
|
default: "h3"
|
15
15
|
prop :text
|
16
|
-
prop :variant,
|
16
|
+
prop :variant, type: Playbook::Props::Enum,
|
17
|
+
values: [nil, "link"],
|
18
|
+
default: nil,
|
19
|
+
deprecated: true
|
17
20
|
|
18
21
|
def classname
|
19
|
-
generate_classname("pb_title_kit", size, color)
|
22
|
+
generate_classname("pb_title_kit", size, variant, color)
|
20
23
|
end
|
21
24
|
end
|
22
25
|
end
|
@@ -51,6 +51,7 @@ import * as LabelPill from 'pb_label_pill/docs'
|
|
51
51
|
import * as LabelValue from 'pb_label_value/docs'
|
52
52
|
import * as Layout from 'pb_layout/docs'
|
53
53
|
import * as LegendDocs from 'pb_legend/docs'
|
54
|
+
import * as Lightbox from 'pb_lightbox/docs'
|
54
55
|
import * as LineGraphDocs from 'pb_line_graph/docs'
|
55
56
|
import * as List from 'pb_list/docs'
|
56
57
|
import * as LoadingInline from 'pb_loading_inline/docs'
|
@@ -145,6 +146,7 @@ WebpackerReact.setup({
|
|
145
146
|
...LabelValue,
|
146
147
|
...Layout,
|
147
148
|
...LegendDocs,
|
149
|
+
...Lightbox,
|
148
150
|
...LineGraphDocs,
|
149
151
|
...List,
|
150
152
|
...LoadingInline,
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import Highcharts from 'highcharts'
|
2
2
|
|
3
3
|
import { highchartsTheme } from '../pb_dashboard/pbChartsLightTheme'
|
4
|
+
import { highchartsDarkTheme } from '../pb_dashboard/pbChartsDarkTheme'
|
4
5
|
import colors from '../tokens/exports/_colors.scss'
|
5
6
|
|
6
7
|
import pie from 'highcharts/modules/variable-pie'
|
@@ -67,10 +68,14 @@ class pbChart {
|
|
67
68
|
}
|
68
69
|
}
|
69
70
|
|
71
|
+
setupTheme() {
|
72
|
+
this.options.dark ? Highcharts.setOptions(highchartsDarkTheme) : Highcharts.setOptions(highchartsTheme)
|
73
|
+
}
|
74
|
+
|
70
75
|
setupGauge(options) {
|
71
76
|
highchartsMore(Highcharts)
|
72
77
|
solidGauge(Highcharts)
|
73
|
-
|
78
|
+
this.setupTheme()
|
74
79
|
|
75
80
|
Highcharts.chart(this.defaults.id, {
|
76
81
|
chart: {
|
@@ -140,7 +145,7 @@ class pbChart {
|
|
140
145
|
}
|
141
146
|
|
142
147
|
setupPieChart(options) {
|
143
|
-
|
148
|
+
this.setupTheme()
|
144
149
|
Highcharts.chart(this.defaults.id, {
|
145
150
|
title: {
|
146
151
|
text: this.defaults.title,
|
@@ -187,8 +192,7 @@ class pbChart {
|
|
187
192
|
}
|
188
193
|
|
189
194
|
setupChart(options) {
|
190
|
-
|
191
|
-
|
195
|
+
this.setupTheme()
|
192
196
|
const configOptions = {
|
193
197
|
title: {
|
194
198
|
text: this.defaults.title,
|
data/lib/playbook/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: playbook_ui
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 10.
|
4
|
+
version: 10.21.0.pre.alpha.lightbox
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Power UX
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2022-
|
12
|
+
date: 2022-02-15 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: actionpack
|
@@ -426,6 +426,9 @@ files:
|
|
426
426
|
- app/pb_kits/playbook/pb_button/docs/_button_loading.md
|
427
427
|
- app/pb_kits/playbook/pb_button/docs/_button_options.html.erb
|
428
428
|
- app/pb_kits/playbook/pb_button/docs/_button_options.jsx
|
429
|
+
- app/pb_kits/playbook/pb_button/docs/_button_size.html.erb
|
430
|
+
- app/pb_kits/playbook/pb_button/docs/_button_size.jsx
|
431
|
+
- app/pb_kits/playbook/pb_button/docs/_button_size.md
|
429
432
|
- app/pb_kits/playbook/pb_button/docs/_footer.md
|
430
433
|
- app/pb_kits/playbook/pb_button/docs/example.yml
|
431
434
|
- app/pb_kits/playbook/pb_button/docs/index.js
|
@@ -602,6 +605,7 @@ files:
|
|
602
605
|
- app/pb_kits/playbook/pb_currency/docs/example.yml
|
603
606
|
- app/pb_kits/playbook/pb_currency/docs/index.js
|
604
607
|
- app/pb_kits/playbook/pb_dashboard/commonSettings.js
|
608
|
+
- app/pb_kits/playbook/pb_dashboard/pbChartsDarkTheme.js
|
605
609
|
- app/pb_kits/playbook/pb_dashboard/pbChartsLightTheme.js
|
606
610
|
- app/pb_kits/playbook/pb_dashboard_value/_dashboard_value.jsx
|
607
611
|
- app/pb_kits/playbook/pb_dashboard_value/_dashboard_value.scss
|
@@ -804,6 +808,7 @@ files:
|
|
804
808
|
- app/pb_kits/playbook/pb_file_upload/docs/_file_upload_default.jsx
|
805
809
|
- app/pb_kits/playbook/pb_file_upload/docs/example.yml
|
806
810
|
- app/pb_kits/playbook/pb_file_upload/docs/index.js
|
811
|
+
- app/pb_kits/playbook/pb_file_upload/fileupload.test.js
|
807
812
|
- app/pb_kits/playbook/pb_filter/Filter/CurrentFilters.jsx
|
808
813
|
- app/pb_kits/playbook/pb_filter/Filter/FilterBackground.jsx
|
809
814
|
- app/pb_kits/playbook/pb_filter/Filter/FilterDouble.jsx
|
@@ -1176,6 +1181,27 @@ files:
|
|
1176
1181
|
- app/pb_kits/playbook/pb_legend/legend.html.erb
|
1177
1182
|
- app/pb_kits/playbook/pb_legend/legend.rb
|
1178
1183
|
- app/pb_kits/playbook/pb_legend/legend.test.js
|
1184
|
+
- app/pb_kits/playbook/pb_lightbox/Carousel/Slide.jsx
|
1185
|
+
- app/pb_kits/playbook/pb_lightbox/Carousel/Slides.jsx
|
1186
|
+
- app/pb_kits/playbook/pb_lightbox/Carousel/Thumbnail.jsx
|
1187
|
+
- app/pb_kits/playbook/pb_lightbox/Carousel/Thumbnails.jsx
|
1188
|
+
- app/pb_kits/playbook/pb_lightbox/Carousel/index.jsx
|
1189
|
+
- app/pb_kits/playbook/pb_lightbox/Carousel/styles.scss
|
1190
|
+
- app/pb_kits/playbook/pb_lightbox/Carousel/useSlides.js
|
1191
|
+
- app/pb_kits/playbook/pb_lightbox/_lightbox.jsx
|
1192
|
+
- app/pb_kits/playbook/pb_lightbox/_lightbox_context.jsx
|
1193
|
+
- app/pb_kits/playbook/pb_lightbox/_lightbox_header.jsx
|
1194
|
+
- app/pb_kits/playbook/pb_lightbox/_lightbox_header_icon.jsx
|
1195
|
+
- app/pb_kits/playbook/pb_lightbox/docs/_lightbox_compound_component.jsx
|
1196
|
+
- app/pb_kits/playbook/pb_lightbox/docs/_lightbox_default.jsx
|
1197
|
+
- app/pb_kits/playbook/pb_lightbox/docs/_lightbox_default.md
|
1198
|
+
- app/pb_kits/playbook/pb_lightbox/docs/_lightbox_multiple.jsx
|
1199
|
+
- app/pb_kits/playbook/pb_lightbox/docs/example.yml
|
1200
|
+
- app/pb_kits/playbook/pb_lightbox/docs/index.js
|
1201
|
+
- app/pb_kits/playbook/pb_lightbox/hooks/useVisibility.js
|
1202
|
+
- app/pb_kits/playbook/pb_lightbox/hooks/useWindowSize.js
|
1203
|
+
- app/pb_kits/playbook/pb_lightbox/lightbox.scss
|
1204
|
+
- app/pb_kits/playbook/pb_lightbox/lightbox.test.jsx
|
1179
1205
|
- app/pb_kits/playbook/pb_line_graph/_line_graph.jsx
|
1180
1206
|
- app/pb_kits/playbook/pb_line_graph/_line_graph.scss
|
1181
1207
|
- app/pb_kits/playbook/pb_line_graph/docs/_description.md
|
@@ -2130,9 +2156,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
2130
2156
|
version: '0'
|
2131
2157
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
2132
2158
|
requirements:
|
2133
|
-
- - "
|
2159
|
+
- - ">"
|
2134
2160
|
- !ruby/object:Gem::Version
|
2135
|
-
version:
|
2161
|
+
version: 1.3.1
|
2136
2162
|
requirements: []
|
2137
2163
|
rubygems_version: 3.1.6
|
2138
2164
|
signing_key:
|