playbook_ui 15.0.0.pre.alpha.PLAY2316advancedtablerightsidedoubleborder10545 → 15.0.0.pre.alpha.PLAY2316advancedtablerightsidedoubleborder10726
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.
- checksums.yaml +4 -4
- data/app/pb_kits/playbook/_playbook.scss +2 -0
- data/app/pb_kits/playbook/pb_advanced_table/Components/RegularTableView.tsx +11 -11
- data/app/pb_kits/playbook/pb_advanced_table/Components/VirtualizedTableView.tsx +7 -7
- data/app/pb_kits/playbook/pb_advanced_table/Utilities/RowUtils.ts +7 -2
- data/app/pb_kits/playbook/pb_advanced_table/_advanced_table.scss +67 -13
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_column_headers_vertical_border.html.erb +4 -2
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_column_headers_vertical_border.jsx +12 -9
- data/app/pb_kits/playbook/pb_card/_card.scss +12 -4
- data/app/pb_kits/playbook/pb_card/_card.tsx +3 -3
- data/app/pb_kits/playbook/pb_card/_card_mixin.scss +10 -0
- data/app/pb_kits/playbook/pb_card/docs/_card_highlight.html.erb +3 -0
- data/app/pb_kits/playbook/pb_card/docs/_card_highlight.jsx +8 -0
- data/app/pb_kits/playbook/pb_contact/_contact.tsx +5 -0
- data/app/pb_kits/playbook/pb_contact/contact.rb +4 -0
- data/app/pb_kits/playbook/pb_contact/contact.test.js +21 -1
- data/app/pb_kits/playbook/pb_contact/docs/_contact_default.html.erb +16 -1
- data/app/pb_kits/playbook/pb_contact/docs/_contact_default.jsx +15 -0
- data/app/pb_kits/playbook/pb_contact/docs/_contact_default.md +5 -0
- data/app/pb_kits/playbook/pb_contact/docs/_contact_with_detail.html.erb +6 -0
- data/app/pb_kits/playbook/pb_contact/docs/_contact_with_detail.jsx +6 -0
- data/app/pb_kits/playbook/pb_icon_button/_icon_button.tsx +1 -0
- data/app/pb_kits/playbook/pb_icon_button/icon_button.html.erb +2 -1
- data/app/pb_kits/playbook/pb_nav/_item.tsx +19 -5
- data/app/pb_kits/playbook/pb_nav/item.html.erb +6 -2
- data/app/pb_kits/playbook/pb_passphrase/docs/_passphrase_breached.html.erb +3 -3
- data/app/pb_kits/playbook/pb_passphrase/docs/_passphrase_common.html.erb +3 -3
- data/app/pb_kits/playbook/pb_passphrase/docs/_passphrase_confirmation.html.erb +3 -3
- data/app/pb_kits/playbook/pb_passphrase/docs/_passphrase_meter_settings.html.erb +3 -3
- data/app/pb_kits/playbook/pb_passphrase/docs/_passphrase_strength_change.html.erb +3 -3
- data/app/pb_kits/playbook/pb_pb_circle_chart/_pb_circle_chart.scss +3 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/_pb_circle_chart.tsx +62 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_block_content.html.erb +31 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_block_content.jsx +81 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_color_overrides.html.erb +25 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_color_overrides.jsx +40 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_color_overrides.md +5 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_custom_tooltip.html.erb +27 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_custom_tooltip.jsx +39 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_custom_tooltip.md +5 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_data_legend_position.html.erb +93 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_data_legend_position.jsx +131 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_data_legend_position.md +14 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_data_with_labels.html.erb +42 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_data_with_labels.jsx +58 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_data_with_legend.html.erb +24 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_data_with_legend.jsx +38 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_default.html.erb +22 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_default.jsx +33 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_inner_sizes.html.erb +118 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_inner_sizes.jsx +144 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_live_data.jsx +60 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_rounded.html.erb +24 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_rounded.jsx +42 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_with_title.html.erb +38 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_pb_circle_chart_with_title.jsx +52 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/example.yml +29 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/index.js +11 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/pbCircleChartTheme.ts +88 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/pb_circle_chart.html.erb +1 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/pb_circle_chart.rb +28 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/pb_circle_chart.test.jsx +51 -0
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_preview.html.erb +2 -2
- data/app/pb_kits/playbook/pb_section_separator/_section_separator.scss +13 -5
- data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_children.html.erb +23 -0
- data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_children.jsx +45 -7
- data/app/pb_kits/playbook/pb_section_separator/section_separator.html.erb +4 -1
- data/app/pb_kits/playbook/pb_section_separator/section_separator.test.js +165 -0
- data/app/pb_kits/playbook/pb_timestamp/_timestamp.tsx +24 -8
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_align.html.erb +0 -10
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_align.jsx +0 -9
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_align.md +1 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_default.html.erb +3 -17
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_default.jsx +0 -15
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_default.md +1 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_elapsed.html.erb +0 -2
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_elapsed.jsx +0 -2
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_elapsed.md +5 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_show_current_year.html.erb +12 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_show_current_year.jsx +25 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_show_current_year.md +1 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_show_date.html.erb +4 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_show_date.jsx +17 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_show_date.md +1 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_show_time.html.erb +18 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_show_time.jsx +44 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_show_time.md +1 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_timezones.html.erb +0 -14
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_timezones.jsx +0 -14
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_timezones.md +1 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_unstyled.html.erb +0 -4
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_unstyled.jsx +0 -4
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_updated.jsx +0 -1
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_updated.md +5 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_updated_show_current_year.html.erb +16 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_updated_show_current_year.jsx +30 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_updated_show_current_year.md +1 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_updated_show_date.html.erb +16 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_updated_show_date.jsx +30 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_updated_show_date.md +1 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_updated_show_time.html.erb +26 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_updated_show_time.jsx +41 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_updated_show_time.md +1 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/example.yml +18 -6
- data/app/pb_kits/playbook/pb_timestamp/docs/index.js +6 -0
- data/app/pb_kits/playbook/pb_timestamp/timestamp.rb +29 -7
- data/app/pb_kits/playbook/pb_timestamp/timestamp.test.js +69 -4
- data/dist/chunks/{_line_graph-BBny-YYZ.js → _line_graph-DeH7NK-i.js} +1 -1
- data/dist/chunks/{_typeahead-CeyJ6-GF.js → _typeahead-CCGp0OQe.js} +2 -2
- data/dist/chunks/{_weekday_stacked-XMCI3y-W.js → _weekday_stacked-Dy1jab6x.js} +3 -3
- data/dist/chunks/componentRegistry-DzmmLR2x.js +1 -0
- data/dist/chunks/{lib-BTs5acfO.js → lib-QZuu1ltS.js} +1 -1
- data/dist/chunks/{pb_form_validation-CKkaQFX3.js → pb_form_validation-CleM960_.js} +1 -1
- data/dist/chunks/vendor.js +1 -1
- data/dist/menu.yml +6 -0
- data/dist/playbook-doc.js +2 -2
- data/dist/playbook-rails-react-bindings.js +1 -1
- data/dist/playbook-rails.js +1 -1
- data/dist/playbook.css +1 -1
- data/lib/playbook/engine.rb +0 -1
- data/lib/playbook/forms/builder/form_field_builder.rb +28 -1
- data/lib/playbook/kit_base.rb +23 -2
- data/lib/playbook/version.rb +1 -1
- metadata +70 -27
- data/app/pb_kits/playbook/pb_timestamp/docs/_time_stamp_default.md +0 -1
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { PbCircleChart } from "playbook-ui";
|
|
3
|
+
|
|
4
|
+
const data= [
|
|
5
|
+
{
|
|
6
|
+
name: "Waiting for Calls",
|
|
7
|
+
y: 41,
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
name: "On Call",
|
|
11
|
+
y: 49,
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
name: "After Call",
|
|
15
|
+
y: 10,
|
|
16
|
+
},
|
|
17
|
+
]
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
const PbCircleChartRounded = (props) => {
|
|
21
|
+
const chartOptions = {
|
|
22
|
+
series: [{ data: data }],
|
|
23
|
+
plotOptions: {
|
|
24
|
+
pie: {
|
|
25
|
+
borderColor: null,
|
|
26
|
+
borderWidth: 20,
|
|
27
|
+
innerSize: '100%',
|
|
28
|
+
},
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
return (
|
|
33
|
+
<div>
|
|
34
|
+
<PbCircleChart
|
|
35
|
+
options={chartOptions}
|
|
36
|
+
{...props}
|
|
37
|
+
/>
|
|
38
|
+
</div>
|
|
39
|
+
);
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
export default PbCircleChartRounded;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
<% data = [
|
|
2
|
+
{
|
|
3
|
+
name: 'Facebook',
|
|
4
|
+
y: 2498,
|
|
5
|
+
},
|
|
6
|
+
{
|
|
7
|
+
name: 'YouTube',
|
|
8
|
+
y: 2000,
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
name: 'WhatsApp',
|
|
12
|
+
y: 2000,
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
name: 'Facebook Messenger',
|
|
16
|
+
y: 1300,
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
name: 'WeChat',
|
|
20
|
+
y: 1165,
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
name: 'Instagram',
|
|
24
|
+
y: 1000,
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
name: 'Tik Tok',
|
|
28
|
+
y: 800,
|
|
29
|
+
},
|
|
30
|
+
] %>
|
|
31
|
+
|
|
32
|
+
<% chart_options = {
|
|
33
|
+
series: [{ data: data }],
|
|
34
|
+
title: { text: "Active Users on Social Media" },
|
|
35
|
+
} %>
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
<%= pb_rails("pb_circle_chart", props: { options: chart_options }) %>
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { PbCircleChart } from "playbook-ui";
|
|
3
|
+
|
|
4
|
+
const data= [
|
|
5
|
+
{
|
|
6
|
+
name: 'Facebook',
|
|
7
|
+
y: 2498,
|
|
8
|
+
},
|
|
9
|
+
{
|
|
10
|
+
name: 'YouTube',
|
|
11
|
+
y: 2000,
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
name: 'WhatsApp',
|
|
15
|
+
y: 2000,
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
name: 'Facebook Messenger',
|
|
19
|
+
y: 1300,
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
name: 'WeChat',
|
|
23
|
+
y: 1165,
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
name: 'Instagram',
|
|
27
|
+
y: 1000,
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
name: 'Tik Tok',
|
|
31
|
+
y: 800,
|
|
32
|
+
},
|
|
33
|
+
]
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
const PbCircleChartWithTitle = (props) => {
|
|
37
|
+
const chartOptions = {
|
|
38
|
+
title: { text: "Active Users on Social Media" },
|
|
39
|
+
series: [{ data: data }],
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
return (
|
|
43
|
+
<div>
|
|
44
|
+
<PbCircleChart
|
|
45
|
+
options={chartOptions}
|
|
46
|
+
{...props}
|
|
47
|
+
/>
|
|
48
|
+
</div>
|
|
49
|
+
);
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
export default PbCircleChartWithTitle;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
examples:
|
|
2
|
+
|
|
3
|
+
rails:
|
|
4
|
+
- pb_circle_chart_default: Default
|
|
5
|
+
- pb_circle_chart_rounded: Rounded Corners
|
|
6
|
+
- pb_circle_chart_block_content: Accepts Any Block
|
|
7
|
+
- pb_circle_chart_color_overrides: Color Overrides
|
|
8
|
+
- pb_circle_chart_data_with_labels: Data with Labels
|
|
9
|
+
- pb_circle_chart_data_with_legend: Data with Legend
|
|
10
|
+
- pb_circle_chart_data_legend_position: Legend Position
|
|
11
|
+
- pb_circle_chart_with_title: With Title
|
|
12
|
+
- pb_circle_chart_inner_sizes: Inner Circle Size Options
|
|
13
|
+
- pb_circle_chart_custom_tooltip: Tooltip Customization
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
react:
|
|
17
|
+
- pb_circle_chart_default: Default
|
|
18
|
+
- pb_circle_chart_live_data: Live Data
|
|
19
|
+
- pb_circle_chart_rounded: Rounded Corners
|
|
20
|
+
- pb_circle_chart_block_content: Accepts Any Block
|
|
21
|
+
- pb_circle_chart_color_overrides: Color Overrides
|
|
22
|
+
- pb_circle_chart_data_with_labels: Data with Labels
|
|
23
|
+
- pb_circle_chart_data_with_legend: Data with Legend
|
|
24
|
+
- pb_circle_chart_data_legend_position: Legend Position
|
|
25
|
+
- pb_circle_chart_with_title: With Title
|
|
26
|
+
- pb_circle_chart_inner_sizes: Inner Circle Size Options
|
|
27
|
+
- pb_circle_chart_custom_tooltip: Tooltip Customization
|
|
28
|
+
|
|
29
|
+
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export { default as PbCircleChartDefault } from './_pb_circle_chart_default.jsx'
|
|
2
|
+
export { default as PbCircleChartLiveData } from './_pb_circle_chart_live_data.jsx'
|
|
3
|
+
export { default as PbCircleChartRounded } from './_pb_circle_chart_rounded.jsx'
|
|
4
|
+
export { default as PbCircleChartBlockContent } from './_pb_circle_chart_block_content.jsx'
|
|
5
|
+
export { default as PbCircleChartColorOverrides } from './_pb_circle_chart_color_overrides.jsx'
|
|
6
|
+
export { default as PbCircleChartDataWithLabels } from './_pb_circle_chart_data_with_labels.jsx'
|
|
7
|
+
export { default as PbCircleChartDataWithLegend } from './_pb_circle_chart_data_with_legend.jsx'
|
|
8
|
+
export { default as PbCircleChartDataLegendPosition } from './_pb_circle_chart_data_legend_position.jsx'
|
|
9
|
+
export { default as PbCircleChartWithTitle } from './_pb_circle_chart_with_title.jsx'
|
|
10
|
+
export { default as PbCircleChartInnerSizes } from './_pb_circle_chart_inner_sizes.jsx'
|
|
11
|
+
export { default as PbCircleChartCustomTooltip } from './_pb_circle_chart_custom_tooltip.jsx'
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import colors from '../tokens/exports/_colors.module.scss'
|
|
2
|
+
import typography from '../tokens/exports/_typography.module.scss'
|
|
3
|
+
|
|
4
|
+
const pbCircleChartTheme = {
|
|
5
|
+
title: {
|
|
6
|
+
text: "",
|
|
7
|
+
style: {
|
|
8
|
+
color: colors.text_lt_default,
|
|
9
|
+
fontFamily: typography.font_family_base,
|
|
10
|
+
fontWeight: typography.bold,
|
|
11
|
+
fontSize: typography.heading_3,
|
|
12
|
+
},
|
|
13
|
+
},
|
|
14
|
+
chart: {
|
|
15
|
+
type: "pie",
|
|
16
|
+
},
|
|
17
|
+
tooltip: {
|
|
18
|
+
backgroundColor: {
|
|
19
|
+
linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },
|
|
20
|
+
stops: [
|
|
21
|
+
[0, colors.bg_dark],
|
|
22
|
+
[1, colors.bg_dark],
|
|
23
|
+
],
|
|
24
|
+
},
|
|
25
|
+
pointFormat:
|
|
26
|
+
'<span style="font-weight: bold; color:{point.color};">●</span>{point.name}: ' +
|
|
27
|
+
"<b>{point.y}</b>",
|
|
28
|
+
followPointer: true,
|
|
29
|
+
shadow: false,
|
|
30
|
+
borderWidth: 0,
|
|
31
|
+
borderRadius: 10,
|
|
32
|
+
style: {
|
|
33
|
+
fontFamily: typography.font_family_base,
|
|
34
|
+
color: colors.text_dk_default,
|
|
35
|
+
fontWeight: typography.regular,
|
|
36
|
+
fontSize: typography.text_smaller,
|
|
37
|
+
},
|
|
38
|
+
},
|
|
39
|
+
plotOptions: {
|
|
40
|
+
pie: {
|
|
41
|
+
dataLabels: {
|
|
42
|
+
enabled: false,
|
|
43
|
+
connectorShape: "straight",
|
|
44
|
+
connectorWidth: 3,
|
|
45
|
+
format: "<div>{point.name}</div>",
|
|
46
|
+
style: {
|
|
47
|
+
fontFamily: typography.font_family_base,
|
|
48
|
+
fontSize: typography.text_smaller,
|
|
49
|
+
color: colors.text_lt_light,
|
|
50
|
+
fontWeight: typography.regular,
|
|
51
|
+
textOutline: '2px $white',
|
|
52
|
+
},
|
|
53
|
+
},
|
|
54
|
+
innerSize: '50%',
|
|
55
|
+
borderColor: "",
|
|
56
|
+
borderWidth: null as number | null,
|
|
57
|
+
colors: [
|
|
58
|
+
colors.data_1,
|
|
59
|
+
colors.data_2,
|
|
60
|
+
colors.data_3,
|
|
61
|
+
colors.data_4,
|
|
62
|
+
colors.data_5,
|
|
63
|
+
colors.data_6,
|
|
64
|
+
colors.data_7,
|
|
65
|
+
],
|
|
66
|
+
},
|
|
67
|
+
},
|
|
68
|
+
legend: {
|
|
69
|
+
layout: 'horizontal',
|
|
70
|
+
align: 'center',
|
|
71
|
+
verticalAlign: 'bottom',
|
|
72
|
+
itemStyle: {
|
|
73
|
+
fontFamily: typography.font_family_base,
|
|
74
|
+
color: colors.text_lt_light,
|
|
75
|
+
fontWeight: typography.regular,
|
|
76
|
+
fontSize: typography.text_smaller,
|
|
77
|
+
},
|
|
78
|
+
itemHoverStyle: {
|
|
79
|
+
color: colors.text_lt_default,
|
|
80
|
+
},
|
|
81
|
+
itemHiddenStyle: {
|
|
82
|
+
color: colors.text_lt_lighter,
|
|
83
|
+
},
|
|
84
|
+
},
|
|
85
|
+
credits: { enabled: false }
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
export default pbCircleChartTheme;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<%= react_component('PbCircleChart', object.react_props) %>
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Playbook
|
|
4
|
+
module PbPbCircleChart
|
|
5
|
+
class PbCircleChart < ::Playbook::KitBase
|
|
6
|
+
prop :options, default: {}
|
|
7
|
+
prop :container_props, default: {}
|
|
8
|
+
|
|
9
|
+
def react_props
|
|
10
|
+
{
|
|
11
|
+
options: options,
|
|
12
|
+
containerProps: container_props_hash,
|
|
13
|
+
}
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def container_props_hash
|
|
17
|
+
container_props.merge({
|
|
18
|
+
id: id,
|
|
19
|
+
className: classname,
|
|
20
|
+
}).compact
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def classname
|
|
24
|
+
generate_classname("pb_pb_circle_chart")
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import { render, screen } from '../utilities/test-utils'
|
|
3
|
+
|
|
4
|
+
import { PbCircleChart } from 'playbook-ui'
|
|
5
|
+
|
|
6
|
+
beforeEach(() => {
|
|
7
|
+
// Silences error logs within the test suite.
|
|
8
|
+
jest.spyOn(console, 'error');
|
|
9
|
+
jest.spyOn(console, 'warn');
|
|
10
|
+
console.error.mockImplementation(() => {});
|
|
11
|
+
console.warn.mockImplementation(() => {});
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
afterEach(() => {
|
|
15
|
+
console.error.mockRestore();
|
|
16
|
+
console.warn.mockRestore();
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
const chartOptions = {
|
|
20
|
+
series: [
|
|
21
|
+
{
|
|
22
|
+
data: [
|
|
23
|
+
{
|
|
24
|
+
name: "Waiting for Calls",
|
|
25
|
+
y: 41,
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
name: "On Call",
|
|
29
|
+
y: 49,
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
name: "After Call",
|
|
33
|
+
y: 10,
|
|
34
|
+
},
|
|
35
|
+
],
|
|
36
|
+
},
|
|
37
|
+
],
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
const testId = 'pbcirclechart1';
|
|
41
|
+
|
|
42
|
+
test('Kit to exist', () => {
|
|
43
|
+
render(
|
|
44
|
+
<PbCircleChart
|
|
45
|
+
data={{testid: testId}}
|
|
46
|
+
options={chartOptions}
|
|
47
|
+
/>
|
|
48
|
+
)
|
|
49
|
+
expect(screen.getByTestId(testId)).toBeInTheDocument()
|
|
50
|
+
})
|
|
51
|
+
|
|
@@ -13,8 +13,8 @@
|
|
|
13
13
|
<script>
|
|
14
14
|
document.addEventListener('DOMContentLoaded', () => {
|
|
15
15
|
function handleButtonClick() {
|
|
16
|
-
const editorContainer = [...document.querySelectorAll('[data-react-props]')]
|
|
17
|
-
.find(element => element.getAttribute('data-react-props')?.includes('"id":"content-preview-editor"'))
|
|
16
|
+
const editorContainer = [...document.querySelectorAll('[data-pb-react-props]')]
|
|
17
|
+
.find(element => element.getAttribute('data-pb-react-props')?.includes('"id":"content-preview-editor"'))
|
|
18
18
|
|
|
19
19
|
const editorElement = editorContainer?.querySelector('trix-editor')
|
|
20
20
|
const inputId = editorElement?.getAttribute('input')
|
|
@@ -53,10 +53,13 @@ $section_colors_dark: (
|
|
|
53
53
|
.pb_section_separator_vertical {
|
|
54
54
|
margin-left: $space_xs;
|
|
55
55
|
margin-right: $space_xs;
|
|
56
|
+
flex-direction: column;
|
|
56
57
|
&::before {
|
|
57
|
-
|
|
58
|
+
flex: 1;
|
|
59
|
+
@include section_separator_vertical(false);
|
|
58
60
|
}
|
|
59
61
|
&::after {
|
|
62
|
+
flex: 1;
|
|
60
63
|
@include section_separator_vertical(false);
|
|
61
64
|
}
|
|
62
65
|
}
|
|
@@ -87,7 +90,7 @@ $section_colors_dark: (
|
|
|
87
90
|
background: none;
|
|
88
91
|
}
|
|
89
92
|
&.pb_section_separator_vertical {
|
|
90
|
-
&::after {
|
|
93
|
+
&::before, &::after {
|
|
91
94
|
border: 1px dashed $color_value;
|
|
92
95
|
background: none;
|
|
93
96
|
}
|
|
@@ -106,7 +109,7 @@ $section_colors_dark: (
|
|
|
106
109
|
}
|
|
107
110
|
|
|
108
111
|
&.pb_section_separator_vertical {
|
|
109
|
-
&::after {
|
|
112
|
+
&::before, &::after {
|
|
110
113
|
@include section_separator_vertical(true);
|
|
111
114
|
}
|
|
112
115
|
}
|
|
@@ -115,6 +118,11 @@ $section_colors_dark: (
|
|
|
115
118
|
&::before, &::after {
|
|
116
119
|
@include section_separator_dashed(true);
|
|
117
120
|
}
|
|
121
|
+
&.pb_section_separator_vertical {
|
|
122
|
+
&::before, &::after {
|
|
123
|
+
@include section_separator_dashed(true);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
118
126
|
}
|
|
119
127
|
}
|
|
120
128
|
|
|
@@ -126,7 +134,7 @@ $section_colors_dark: (
|
|
|
126
134
|
}
|
|
127
135
|
|
|
128
136
|
&.pb_section_separator_vertical {
|
|
129
|
-
&::after {
|
|
137
|
+
&::before, &::after {
|
|
130
138
|
@include section_separator_vertical(false);
|
|
131
139
|
background: $color_value;
|
|
132
140
|
}
|
|
@@ -138,7 +146,7 @@ $section_colors_dark: (
|
|
|
138
146
|
background: none;
|
|
139
147
|
}
|
|
140
148
|
&.pb_section_separator_vertical {
|
|
141
|
-
&::after {
|
|
149
|
+
&::before, &::after {
|
|
142
150
|
border: 1px dashed $color_value;
|
|
143
151
|
background: none;
|
|
144
152
|
}
|
|
@@ -11,4 +11,27 @@
|
|
|
11
11
|
padding_right: "xs"
|
|
12
12
|
}) %>
|
|
13
13
|
<% end %>
|
|
14
|
+
<% end %>
|
|
15
|
+
|
|
16
|
+
<%= pb_rails("flex", props: { classname: "flex-container", margin_top: "lg", vertical: "stretch" }) do %>
|
|
17
|
+
<%= pb_rails("body", props: { classname: "flex-item" }) do %>
|
|
18
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua
|
|
19
|
+
<% end %>
|
|
20
|
+
<%= pb_rails("section_separator", props: { orientation: "vertical" }) do %>
|
|
21
|
+
<%= pb_rails("card", props: {
|
|
22
|
+
border_radius: "rounded",
|
|
23
|
+
justify_content: "center",
|
|
24
|
+
padding: "none"
|
|
25
|
+
}) do %>
|
|
26
|
+
<%= pb_rails("caption", props: {
|
|
27
|
+
text: "TODAY",
|
|
28
|
+
size: "xs",
|
|
29
|
+
padding_left: "xs",
|
|
30
|
+
padding_right: "xs"
|
|
31
|
+
}) %>
|
|
32
|
+
<% end %>
|
|
33
|
+
<% end %>
|
|
34
|
+
<%= pb_rails("body", props: { classname: "flex-item" }) do %>
|
|
35
|
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua
|
|
36
|
+
<% end %>
|
|
14
37
|
<% end %>
|
|
@@ -2,8 +2,25 @@ import React from 'react'
|
|
|
2
2
|
import Card from '../../pb_card/_card'
|
|
3
3
|
import Caption from '../../pb_caption/_caption'
|
|
4
4
|
import SectionSeparator from '../../pb_section_separator/_section_separator'
|
|
5
|
+
import Flex from '../../pb_flex/_flex'
|
|
6
|
+
import FlexItem from '../../pb_flex/_flex_item'
|
|
5
7
|
|
|
6
|
-
const
|
|
8
|
+
const childrenHorizontal = (
|
|
9
|
+
<Card
|
|
10
|
+
borderRadius="rounded"
|
|
11
|
+
justifyContent="center"
|
|
12
|
+
padding="none"
|
|
13
|
+
>
|
|
14
|
+
<Caption
|
|
15
|
+
paddingLeft="xs"
|
|
16
|
+
paddingRight="xs"
|
|
17
|
+
size="xs"
|
|
18
|
+
text="TODAY"
|
|
19
|
+
/>
|
|
20
|
+
</Card>
|
|
21
|
+
)
|
|
22
|
+
|
|
23
|
+
const childrenVertical = (
|
|
7
24
|
<Card
|
|
8
25
|
borderRadius="rounded"
|
|
9
26
|
justifyContent="center"
|
|
@@ -20,12 +37,33 @@ const children = (
|
|
|
20
37
|
|
|
21
38
|
const SectionSeparatorChildren = (props) => {
|
|
22
39
|
return (
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
40
|
+
<>
|
|
41
|
+
<SectionSeparator
|
|
42
|
+
{...props}
|
|
43
|
+
lineStyle='dashed'
|
|
44
|
+
>
|
|
45
|
+
{childrenHorizontal}
|
|
46
|
+
</SectionSeparator>
|
|
47
|
+
<Flex
|
|
48
|
+
inline="flex-container"
|
|
49
|
+
marginTop="lg"
|
|
50
|
+
vertical="stretch"
|
|
51
|
+
>
|
|
52
|
+
<FlexItem>
|
|
53
|
+
{'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua'}
|
|
54
|
+
</FlexItem>
|
|
55
|
+
<SectionSeparator
|
|
56
|
+
orientation="vertical"
|
|
57
|
+
{...props}
|
|
58
|
+
>
|
|
59
|
+
{childrenVertical}
|
|
60
|
+
</SectionSeparator>
|
|
61
|
+
<FlexItem>
|
|
62
|
+
{'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua'}
|
|
63
|
+
</FlexItem>
|
|
64
|
+
</Flex>
|
|
65
|
+
</>
|
|
66
|
+
|
|
29
67
|
)
|
|
30
68
|
}
|
|
31
69
|
|
|
@@ -7,7 +7,10 @@
|
|
|
7
7
|
<% end %>
|
|
8
8
|
<% end %>
|
|
9
9
|
<% if object.orientation === 'vertical' %>
|
|
10
|
-
|
|
10
|
+
<% if content %>
|
|
11
|
+
<%= content %>
|
|
12
|
+
<% elsif object.text %>
|
|
13
|
+
<span><%= pb_rails("caption", props: { text: object.text }) %></span>
|
|
11
14
|
<% end %>
|
|
12
15
|
<%end%>
|
|
13
16
|
<% end %>
|