playbook_ui 2.9.1 → 2.9.2
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/index.js +51 -9
- data/app/pb_kits/playbook/{packs → kits}/pb_avatar.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_badge.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_bar_graph.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_body.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_button.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_caption.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_card.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_checkbox.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_currency.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_dashboard_value.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_date.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_date_range_inline.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_date_year_stacked.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_distribution_bar.js +1 -1
- data/app/pb_kits/playbook/kits/pb_fixed_confirmation_toast.js +4 -0
- data/app/pb_kits/playbook/kits/pb_hashtag.js +4 -0
- data/app/pb_kits/playbook/{packs → kits}/pb_home_address_street.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_icon.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_icon_circle.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_icon_value.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_image.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_input.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_label_pill.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_label_value.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_layout.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_line_graph.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_list.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_loading_inline.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_message.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_online_status.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_owner.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_owner_phone.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_phone.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_pill.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_progress_simple.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_section_separator.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_source.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_star_rating.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_stat_change.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_stat_value.js +1 -1
- data/app/pb_kits/playbook/kits/pb_table.js +16 -0
- data/app/pb_kits/playbook/{packs → kits}/pb_time.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_timestamp.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_title.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_title_count.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_title_detail.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_toggle.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_user.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_user_badge.js +1 -1
- data/app/pb_kits/playbook/{packs → kits}/pb_vertical_nav.js +1 -1
- data/app/pb_kits/playbook/packs/examples.js +3 -0
- data/app/pb_kits/playbook/packs/kits.js +49 -48
- data/app/pb_kits/playbook/packs/site_styles/_kit_style_index.scss +1 -0
- data/app/pb_kits/playbook/pb_avatar/_avatar.jsx +1 -1
- data/app/pb_kits/playbook/pb_avatar/docs/_avatar_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_avatar/docs/_avatar_monogram.jsx +1 -1
- data/app/pb_kits/playbook/pb_badge/_badge.html.erb +1 -1
- data/app/pb_kits/playbook/pb_badge/badge.rb +12 -50
- data/app/pb_kits/playbook/pb_badge/docs/_badge_colors.html.erb +0 -1
- data/app/pb_kits/playbook/pb_bar_graph/_bar_graph.jsx +1 -1
- data/app/pb_kits/playbook/pb_bar_graph/barGraphSettings.js +26 -19
- data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_body/docs/_body_block.jsx +1 -1
- data/app/pb_kits/playbook/pb_body/docs/_body_dark.jsx +1 -1
- data/app/pb_kits/playbook/pb_body/docs/_body_light.jsx +1 -1
- data/app/pb_kits/playbook/pb_button/_button.html.erb +5 -2
- data/app/pb_kits/playbook/pb_button/_button.jsx +10 -1
- data/app/pb_kits/playbook/pb_button/button.rb +14 -0
- data/app/pb_kits/playbook/pb_button/docs/_button_accessibility.jsx +1 -1
- data/app/pb_kits/playbook/pb_button/docs/_button_block_content.jsx +1 -1
- data/app/pb_kits/playbook/pb_button/docs/_button_default.jsx +2 -2
- data/app/pb_kits/playbook/pb_button/docs/_button_default_dark.jsx +2 -2
- data/app/pb_kits/playbook/pb_button/docs/_button_full_width.jsx +1 -1
- data/app/pb_kits/playbook/pb_button/docs/_button_link.jsx +1 -1
- data/app/pb_kits/playbook/pb_button/docs/_button_loading.jsx +1 -1
- data/app/pb_kits/playbook/pb_button/docs/_button_options.html.erb +1 -0
- data/app/pb_kits/playbook/pb_button/docs/_button_options.jsx +14 -0
- data/app/pb_kits/playbook/pb_button/docs/example.yml +3 -1
- data/app/pb_kits/playbook/pb_button/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_caption/caption.rb +3 -12
- data/app/pb_kits/playbook/pb_caption/docs/_caption_dark.jsx +1 -1
- data/app/pb_kits/playbook/pb_caption/docs/_caption_light.jsx +1 -1
- data/app/pb_kits/playbook/pb_card/_card.html.erb +4 -2
- data/app/pb_kits/playbook/pb_card/card.rb +17 -62
- data/app/pb_kits/playbook/pb_card/card_body.rb +8 -47
- data/app/pb_kits/playbook/pb_card/child_kits/_card_body.html.erb +2 -2
- data/app/pb_kits/playbook/pb_card/docs/_card_content.jsx +1 -1
- data/app/pb_kits/playbook/pb_card/docs/_card_padding.jsx +1 -1
- data/app/pb_kits/playbook/pb_card/docs/_card_shadow.jsx +1 -1
- data/app/pb_kits/playbook/pb_checkbox/_checkbox.html.erb +8 -9
- data/app/pb_kits/playbook/pb_checkbox/checkbox.rb +15 -73
- data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_checked.html.erb +7 -0
- data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_dark.html.erb +5 -1
- data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_dark.jsx +17 -0
- data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_default.html.erb +6 -1
- data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_default.jsx +4 -5
- data/app/pb_kits/playbook/pb_checkbox/docs/example.yml +5 -4
- data/app/pb_kits/playbook/pb_checkbox/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_currency/_currency.jsx +5 -3
- data/app/pb_kits/playbook/pb_currency/docs/_currency_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_currency/docs/_currency_large.jsx +1 -1
- data/app/pb_kits/playbook/pb_dashboard/commonSettings.js +22 -5
- data/app/pb_kits/playbook/pb_dashboard_value/_dashboard_value.jsx +6 -3
- data/app/pb_kits/playbook/pb_dashboard_value/docs/_dashboard_value_align.jsx +1 -1
- data/app/pb_kits/playbook/pb_dashboard_value/docs/_dashboard_value_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_date/docs/_date_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_distribution_bar/_distribution_bar.html.erb +3 -3
- data/app/pb_kits/playbook/pb_distribution_bar/_distribution_bar.jsx +9 -11
- data/app/pb_kits/playbook/pb_distribution_bar/_distribution_bar.scss +1 -1
- data/app/pb_kits/playbook/pb_distribution_bar/distribution_bar.rb +14 -43
- data/app/pb_kits/playbook/pb_distribution_bar/docs/_distribution_bar_default.html.erb +2 -2
- data/app/pb_kits/playbook/pb_distribution_bar/docs/_distribution_bar_default.jsx +2 -2
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/_fixed_confirmation_toast.jsx +5 -2
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_hashtag/_hashtag.html.erb +10 -0
- data/app/pb_kits/playbook/pb_hashtag/_hashtag.jsx +41 -0
- data/app/pb_kits/playbook/pb_hashtag/_hashtag.scss +1 -0
- data/app/pb_kits/playbook/pb_hashtag/docs/_hashtag_default.html.erb +9 -0
- data/app/pb_kits/playbook/pb_hashtag/docs/_hashtag_default.jsx +28 -0
- data/app/pb_kits/playbook/pb_hashtag/docs/example.yml +8 -0
- data/app/pb_kits/playbook/pb_hashtag/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_hashtag/hashtag.rb +76 -0
- data/app/pb_kits/playbook/pb_home_address_street/_home_address_street.jsx +4 -3
- data/app/pb_kits/playbook/pb_home_address_street/docs/_home_address_street_dark.jsx +1 -1
- data/app/pb_kits/playbook/pb_home_address_street/docs/_home_address_street_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_icon/docs/_icon_animate.jsx +1 -1
- data/app/pb_kits/playbook/pb_icon/docs/_icon_border.jsx +1 -1
- data/app/pb_kits/playbook/pb_icon/docs/_icon_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_icon/docs/_icon_default_dark.jsx +1 -1
- data/app/pb_kits/playbook/pb_icon/docs/_icon_flip.jsx +1 -1
- data/app/pb_kits/playbook/pb_icon/docs/_icon_pull.jsx +1 -1
- data/app/pb_kits/playbook/pb_icon/docs/_icon_rotate.jsx +1 -1
- data/app/pb_kits/playbook/pb_icon/docs/_icon_sizes.jsx +1 -1
- data/app/pb_kits/playbook/pb_icon_circle/docs/_icon_circle_default.jsx +2 -2
- data/app/pb_kits/playbook/pb_icon_value/docs/_icon_value_default.jsx +2 -2
- data/app/pb_kits/playbook/pb_image/docs/_default_image.jsx +2 -2
- data/app/pb_kits/playbook/pb_input/_input.jsx +10 -10
- data/app/pb_kits/playbook/pb_input/docs/_input_default.jsx +2 -2
- data/app/pb_kits/playbook/pb_label_pill/docs/_label_pill_default.jsx +2 -2
- data/app/pb_kits/playbook/pb_label_value/_label_value.jsx +5 -5
- data/app/pb_kits/playbook/pb_label_value/docs/_label_value_default.jsx +2 -2
- data/app/pb_kits/playbook/pb_line_graph/_line_graph.jsx +3 -3
- data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_line_graph/lineGraphSettings.js +26 -12
- data/app/pb_kits/playbook/pb_list/docs/_list_default.jsx +4 -2
- data/app/pb_kits/playbook/pb_loading_inline/_loading_inline.jsx +5 -2
- data/app/pb_kits/playbook/pb_loading_inline/docs/_loading_inline_dark.jsx +1 -1
- data/app/pb_kits/playbook/pb_loading_inline/docs/_loading_inline_light.jsx +1 -1
- data/app/pb_kits/playbook/pb_message/docs/_message_default.jsx +2 -2
- data/app/pb_kits/playbook/pb_online_status/docs/_online_status_default.jsx +2 -2
- data/app/pb_kits/playbook/pb_owner/docs/_owner_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_owner_phone/docs/_owner_phone_default.jsx +2 -2
- data/app/pb_kits/playbook/pb_phone/docs/_phone_default.jsx +2 -2
- data/app/pb_kits/playbook/pb_progress_simple/docs/_progress_simple_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_source/docs/_source_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_star_rating/docs/_star_rating_default.jsx +2 -2
- data/app/pb_kits/playbook/pb_stat_change/_stat_change.jsx +5 -2
- data/app/pb_kits/playbook/pb_stat_change/docs/_stat_change_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_stat_value/_stat_value.jsx +1 -1
- data/app/pb_kits/playbook/pb_stat_value/docs/_stat_value_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_table/_table.jsx +1 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_container.jsx +1 -1
- data/app/pb_kits/playbook/pb_table/docs/_table_container_dark.jsx +1 -1
- data/app/pb_kits/playbook/pb_table/docs/_table_dark.jsx +1 -1
- data/app/pb_kits/playbook/pb_table/docs/_table_disable_hover.jsx +1 -1
- data/app/pb_kits/playbook/pb_table/docs/_table_lg.jsx +1 -1
- data/app/pb_kits/playbook/pb_table/docs/_table_md.jsx +1 -1
- data/app/pb_kits/playbook/pb_table/docs/_table_multiline.jsx +1 -1
- data/app/pb_kits/playbook/pb_table/docs/_table_single_line.jsx +1 -1
- data/app/pb_kits/playbook/pb_table/docs/_table_sm.jsx +1 -1
- data/app/pb_kits/playbook/pb_table/docs/example.yml +10 -10
- data/app/pb_kits/playbook/pb_time/docs/_time_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_default.jsx +2 -2
- data/app/pb_kits/playbook/pb_title/docs/_title_dark.jsx +1 -1
- data/app/pb_kits/playbook/pb_title/docs/_title_light.jsx +1 -1
- data/app/pb_kits/playbook/pb_title_count/docs/_title_count_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_title_detail/docs/_title_detail_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_toggle/docs/_toggle_default.jsx +2 -2
- data/app/pb_kits/playbook/pb_user/docs/_user_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_user_badge/docs/_user_badge_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_vertical_nav/_vertical_nav.jsx +9 -9
- data/app/pb_kits/playbook/pb_vertical_nav/docs/_default_nav.jsx +1 -1
- data/app/pb_kits/playbook/props.rb +18 -3
- data/app/pb_kits/playbook/props/enum.rb +2 -0
- data/app/pb_kits/playbook/props/number_array.rb +14 -0
- data/app/pb_kits/playbook/tokens/_colors.scss +2 -2
- data/lib/generators/kit/kit_generator.rb +1 -1
- data/lib/generators/kit/templates/kit_example_react.erb.tt +2 -2
- data/lib/generators/kit/templates/kit_jsx.erb.tt +5 -0
- data/lib/generators/kit/templates/kit_pack.erb.tt +1 -1
- data/lib/playbook/version.rb +1 -1
- metadata +65 -51
- data/app/pb_kits/playbook/packs/pb_fixed_confirmation_toast.js +0 -4
- data/app/pb_kits/playbook/packs/pb_table.js +0 -16
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import {Checkbox} from '../../'
|
|
3
|
+
|
|
4
|
+
function CheckboxDark() {
|
|
5
|
+
return (
|
|
6
|
+
<div>
|
|
7
|
+
<Checkbox
|
|
8
|
+
dark
|
|
9
|
+
label='Checkbox label'
|
|
10
|
+
name='default name'
|
|
11
|
+
value='default value'
|
|
12
|
+
/>
|
|
13
|
+
</div>
|
|
14
|
+
)
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export default CheckboxDark;
|
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
import React from
|
|
2
|
-
import Checkbox from
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import {Checkbox} from '../../'
|
|
3
3
|
|
|
4
4
|
function CheckboxDefault() {
|
|
5
5
|
return (
|
|
6
6
|
<div>
|
|
7
7
|
<Checkbox
|
|
8
|
-
|
|
9
8
|
label='Checkbox label'
|
|
10
|
-
name=
|
|
11
|
-
value=
|
|
9
|
+
name='default name'
|
|
10
|
+
value='default value'
|
|
12
11
|
/>
|
|
13
12
|
</div>
|
|
14
13
|
)
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
examples:
|
|
2
|
-
|
|
3
2
|
rails:
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
- checkbox_default: Default
|
|
4
|
+
- checkbox_checked: Load as checked
|
|
5
|
+
- checkbox_dark: Dark
|
|
6
6
|
|
|
7
7
|
react:
|
|
8
|
-
|
|
8
|
+
- checkbox_default: Default
|
|
9
|
+
- checkbox_dark: Dark
|
|
@@ -3,9 +3,11 @@
|
|
|
3
3
|
import React from 'react'
|
|
4
4
|
import classnames from 'classnames'
|
|
5
5
|
|
|
6
|
-
import
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
import {
|
|
7
|
+
Body,
|
|
8
|
+
Caption,
|
|
9
|
+
Title,
|
|
10
|
+
} from '../'
|
|
9
11
|
|
|
10
12
|
type CurrencyProps = {
|
|
11
13
|
align?: 'left' | 'center' | 'right',
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import colors from "../tokens/_colors.scss"
|
|
2
2
|
import typography from "../tokens/_typography.scss";
|
|
3
3
|
|
|
4
|
-
const
|
|
5
|
-
|
|
4
|
+
const applyCustomSeriesColors = function(highchart) {
|
|
5
|
+
const data_colors = [
|
|
6
6
|
colors.data_1,
|
|
7
7
|
colors.data_2,
|
|
8
8
|
colors.data_3,
|
|
@@ -13,10 +13,27 @@ const applyCustomColors = function(highchart) {
|
|
|
13
13
|
];
|
|
14
14
|
|
|
15
15
|
highchart.series.forEach(function(item, index) {
|
|
16
|
-
|
|
16
|
+
const selected_color = data_colors[index];
|
|
17
17
|
item.color = selected_color;
|
|
18
|
+
|
|
18
19
|
item.data.forEach(function(data_item) {
|
|
19
|
-
data_item.color
|
|
20
|
+
if(data_item.color){
|
|
21
|
+
data_item.color = selected_color;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
if(!data_item.marker) return;
|
|
25
|
+
|
|
26
|
+
if(data_item.marker.lineColor){
|
|
27
|
+
data_item.marker.lineColor = selected_color;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
if(data_item.marker.states.hover !== undefined){
|
|
31
|
+
data_item.marker.states.hover.lineColor = selected_color;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
if(data_item.marker.states.select.lineColor){
|
|
35
|
+
data_item.marker.states.select.lineColor = selected_color;
|
|
36
|
+
}
|
|
20
37
|
});
|
|
21
38
|
});
|
|
22
39
|
};
|
|
@@ -75,7 +92,7 @@ const styleLegend = function(highchart) {
|
|
|
75
92
|
|
|
76
93
|
// Exportable Global Styles Function
|
|
77
94
|
const commonSettings = function(highchart) {
|
|
78
|
-
|
|
95
|
+
applyCustomSeriesColors(highchart);
|
|
79
96
|
styleAxis(highchart);
|
|
80
97
|
styleChartContainer(highchart);
|
|
81
98
|
styleLegend(highchart);
|
|
@@ -2,9 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
import React from 'react'
|
|
4
4
|
import classnames from 'classnames'
|
|
5
|
-
|
|
6
|
-
import
|
|
7
|
-
|
|
5
|
+
|
|
6
|
+
import {
|
|
7
|
+
Body,
|
|
8
|
+
StatChange,
|
|
9
|
+
StatValue,
|
|
10
|
+
} from '../'
|
|
8
11
|
|
|
9
12
|
type DashboardValueProps = {
|
|
10
13
|
align?: 'left' | 'center' | 'right',
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
<%= content_tag(:figure,
|
|
2
2
|
id: object.id,
|
|
3
3
|
data: object.data,
|
|
4
|
-
class: object.classname
|
|
5
|
-
<% object.
|
|
6
|
-
<div class="
|
|
4
|
+
class: object.classname) do %>
|
|
5
|
+
<% object.widths_to_percentages.each do |percentage| %>
|
|
6
|
+
<div class="pb_distribution_width" style="width:<%= percentage %>%"></div>
|
|
7
7
|
<% end %>
|
|
8
8
|
<% end %>
|
|
@@ -8,39 +8,37 @@ type DistributionBarProps = {
|
|
|
8
8
|
data?: String,
|
|
9
9
|
id?: String,
|
|
10
10
|
size?: 'lg' | 'sm',
|
|
11
|
-
|
|
11
|
+
widths?: Array<Number>,
|
|
12
12
|
}
|
|
13
13
|
|
|
14
|
-
const normalizeCharacters = (
|
|
15
|
-
return
|
|
16
|
-
return parseInt(
|
|
14
|
+
const normalizeCharacters = (widths) => {
|
|
15
|
+
return widths.map(width => {
|
|
16
|
+
return parseInt(width.toString().replace(/[^0-9.]/gi, ''))
|
|
17
17
|
})
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
const barValues = (normalizedValues) => {
|
|
21
21
|
let arrSum = value => value.reduce((a,b) => (a + b), 0)
|
|
22
|
-
let
|
|
22
|
+
let widthSum = arrSum(normalizedValues)
|
|
23
23
|
return normalizedValues.map((value,i) => {
|
|
24
24
|
return(
|
|
25
25
|
<div
|
|
26
26
|
key={i}
|
|
27
|
-
className={`
|
|
28
|
-
style={{width:`${value*100/
|
|
27
|
+
className={`pb_distribution_width`}
|
|
28
|
+
style={{width:`${value*100/widthSum}%`}}
|
|
29
29
|
/>
|
|
30
30
|
)
|
|
31
31
|
})
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
|
|
35
|
-
|
|
36
34
|
const DistributionBar = ({
|
|
37
35
|
className,
|
|
38
36
|
data,
|
|
39
37
|
id,
|
|
40
38
|
size='lg',
|
|
41
|
-
|
|
39
|
+
widths=[1]
|
|
42
40
|
}: DistributionBarProps) => {
|
|
43
|
-
const normalizedValues = normalizeCharacters(
|
|
41
|
+
const normalizedValues = normalizeCharacters(widths)
|
|
44
42
|
|
|
45
43
|
return(
|
|
46
44
|
<div className={`pb_distribution_bar_${size}`}>
|
|
@@ -2,54 +2,25 @@
|
|
|
2
2
|
|
|
3
3
|
module Playbook
|
|
4
4
|
module PbDistributionBar
|
|
5
|
-
class DistributionBar
|
|
6
|
-
|
|
7
|
-
configured_data
|
|
8
|
-
configured_id
|
|
9
|
-
configured_size
|
|
10
|
-
configured_values].freeze
|
|
5
|
+
class DistributionBar
|
|
6
|
+
include Playbook::Props
|
|
11
7
|
|
|
12
|
-
|
|
13
|
-
data: default_configuration,
|
|
14
|
-
id: default_configuration,
|
|
15
|
-
size: default_configuration,
|
|
16
|
-
values: default_configuration)
|
|
17
|
-
self.configured_classname = classname
|
|
18
|
-
self.configured_data = data
|
|
19
|
-
self.configured_id = id
|
|
20
|
-
self.configured_size = size
|
|
21
|
-
self.configured_values = values
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
def size
|
|
25
|
-
size_options = %w[lg sm]
|
|
26
|
-
one_of_value(configured_size, size_options, "lg")
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
def values
|
|
30
|
-
default_value(values_to_percents, [1])
|
|
31
|
-
end
|
|
8
|
+
partial "pb_distribution_bar/distribution_bar"
|
|
32
9
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
DEFAULT = Object.new
|
|
40
|
-
private_constant :DEFAULT
|
|
41
|
-
def default_configuration
|
|
42
|
-
DEFAULT
|
|
43
|
-
end
|
|
44
|
-
attr_accessor(*PROPS)
|
|
10
|
+
prop :size, type: Playbook::Props::Enum,
|
|
11
|
+
values: %w[lg sm],
|
|
12
|
+
default: "lg"
|
|
13
|
+
prop :widths, type: Playbook::Props::NumberArray,
|
|
14
|
+
default: [1]
|
|
45
15
|
|
|
46
|
-
def
|
|
47
|
-
|
|
16
|
+
def classname
|
|
17
|
+
generate_classname("pb_distribution_bar", size)
|
|
48
18
|
end
|
|
49
19
|
|
|
50
|
-
def
|
|
51
|
-
|
|
52
|
-
|
|
20
|
+
def widths_to_percentages
|
|
21
|
+
widths.map do |width|
|
|
22
|
+
(width.to_f * 100 / widths.sum).round(2)
|
|
23
|
+
end
|
|
53
24
|
end
|
|
54
25
|
end
|
|
55
26
|
end
|
|
@@ -6,7 +6,7 @@ function DistributionBarDefault() {
|
|
|
6
6
|
<React.Fragment>
|
|
7
7
|
<div>
|
|
8
8
|
<DistributionBar
|
|
9
|
-
|
|
9
|
+
widths={[1,2,3,4,5,3,3,7]}
|
|
10
10
|
/>
|
|
11
11
|
</div>
|
|
12
12
|
<br/>
|
|
@@ -14,7 +14,7 @@ function DistributionBarDefault() {
|
|
|
14
14
|
<div>
|
|
15
15
|
<DistributionBar
|
|
16
16
|
size='sm'
|
|
17
|
-
|
|
17
|
+
widths={[1,2,3,4,5,3,3,7]}
|
|
18
18
|
/>
|
|
19
19
|
</div>
|
|
20
20
|
</React.Fragment>
|
|
@@ -3,8 +3,11 @@
|
|
|
3
3
|
|
|
4
4
|
import React from 'react'
|
|
5
5
|
import classnames from 'classnames'
|
|
6
|
-
|
|
7
|
-
import
|
|
6
|
+
|
|
7
|
+
import {
|
|
8
|
+
Icon,
|
|
9
|
+
Title,
|
|
10
|
+
} from '../'
|
|
8
11
|
|
|
9
12
|
type FixedConfirmationToastProps = {
|
|
10
13
|
className?: String,
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/* @flow */
|
|
2
|
+
/* eslint-disable react/no-multi-comp, flowtype/space-before-type-colon */
|
|
3
|
+
|
|
4
|
+
import React from 'react'
|
|
5
|
+
import {Badge} from '../'
|
|
6
|
+
|
|
7
|
+
type HashtagProps = {
|
|
8
|
+
className?: String,
|
|
9
|
+
data?: String,
|
|
10
|
+
id?: String,
|
|
11
|
+
text?: String,
|
|
12
|
+
type: 'default' | 'home' | 'project',
|
|
13
|
+
url?: String,
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
const HashType = {
|
|
18
|
+
"home": "H#",
|
|
19
|
+
"project": "P#",
|
|
20
|
+
"default": "#"
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
const Hashtag = ({
|
|
24
|
+
className,
|
|
25
|
+
data,
|
|
26
|
+
id,
|
|
27
|
+
text,
|
|
28
|
+
type,
|
|
29
|
+
url
|
|
30
|
+
} : HashtagProps) => (
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
<div className={`pb_hashtag_kit_${type}`}>
|
|
35
|
+
<a href={url}>
|
|
36
|
+
<Badge variant="primary" text={HashType[type] + text}></Badge>
|
|
37
|
+
</a>
|
|
38
|
+
</div>
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
export default Hashtag
|