playbook_ui 5.3.0.pre.alpha1 → 5.5.1
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 -2
- data/app/pb_kits/playbook/data/menu.yml +3 -3
- data/app/pb_kits/playbook/index.js +0 -1
- data/app/pb_kits/playbook/packs/examples.js +0 -2
- data/app/pb_kits/playbook/packs/samples.js +2 -0
- data/app/pb_kits/playbook/pb_body/_body.html.erb +1 -0
- data/app/pb_kits/playbook/pb_body/_body.jsx +33 -24
- data/app/pb_kits/playbook/pb_body/docs/_body_dark.html.erb +1 -1
- data/app/pb_kits/playbook/pb_body/docs/_body_dark.jsx +0 -2
- data/app/pb_kits/playbook/pb_body/docs/_body_light.html.erb +1 -0
- data/app/pb_kits/playbook/pb_body/docs/_body_light.jsx +3 -7
- data/app/pb_kits/playbook/pb_caption/_caption.scss +2 -2
- data/app/pb_kits/playbook/pb_checkbox/_checkbox.html.erb +2 -1
- data/app/pb_kits/playbook/pb_checkbox/_checkbox.jsx +18 -5
- data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_checked.jsx +17 -0
- data/app/pb_kits/playbook/pb_checkbox/docs/example.yml +1 -0
- data/app/pb_kits/playbook/pb_checkbox/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_circle_icon_button/_circle_icon_button.html.erb +1 -0
- data/app/pb_kits/playbook/pb_circle_icon_button/_circle_icon_button.jsx +17 -1
- data/app/pb_kits/playbook/pb_dashboard/pbChartsLightTheme.js +0 -26
- data/app/pb_kits/playbook/pb_dashboard_value/_dashboard_value.html.erb +3 -2
- data/app/pb_kits/playbook/pb_dashboard_value/_dashboard_value.jsx +15 -12
- data/app/pb_kits/playbook/pb_highlight/docs/_highlight_default.html.erb +1 -1
- data/app/pb_kits/playbook/pb_image/_image.jsx +1 -1
- data/app/pb_kits/playbook/pb_layout/_layout.scss +16 -0
- data/app/pb_kits/playbook/pb_legend/_legend.html.erb +1 -0
- data/app/pb_kits/playbook/pb_legend/_legend.jsx +25 -4
- data/app/pb_kits/playbook/pb_nav/_item.jsx +20 -10
- data/app/pb_kits/playbook/pb_nav/_vertical_nav.scss +3 -0
- data/app/pb_kits/playbook/pb_popover/_popover.html.erb +1 -1
- data/app/pb_kits/playbook/pb_popover/_popover.jsx +3 -1
- data/app/pb_kits/playbook/pb_popover/_popover.scss +4 -0
- data/app/pb_kits/playbook/pb_popover/popover.rb +4 -0
- data/app/pb_kits/playbook/pb_title/_title.jsx +7 -4
- data/app/pb_kits/playbook/pb_title/_title.scss +7 -0
- data/app/pb_kits/playbook/pb_title/_title_mixin.scss +2 -0
- data/app/pb_kits/playbook/pb_title/title.rb +4 -1
- data/app/pb_kits/playbook/plugins/pb_chart.js +0 -71
- data/app/views/layouts/playbook/samples.html.erb +1 -0
- data/app/views/playbook/samples/collection_detail/index.html.erb +169 -0
- data/app/views/playbook/samples/collection_detail/index.jsx +372 -0
- data/lib/generators/kit/kit_generator.rb +6 -3
- data/lib/generators/kit/templates/kit_html.erb.tt +3 -2
- data/lib/generators/kit/templates/kit_jsx.erb.tt +38 -10
- data/lib/playbook/version.rb +1 -1
- metadata +7 -25
- data/app/pb_kits/playbook/pb_gauge/_gauge.html.erb +0 -12
- data/app/pb_kits/playbook/pb_gauge/_gauge.jsx +0 -105
- data/app/pb_kits/playbook/pb_gauge/_gauge.scss +0 -11
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_default.html.erb +0 -11
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_default.jsx +0 -17
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_full_circle.html.erb +0 -14
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_full_circle.jsx +0 -20
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_height.html.erb +0 -15
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_height.jsx +0 -23
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_live_data.jsx +0 -25
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_min_max.html.erb +0 -21
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_min_max.jsx +0 -26
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_sizing.html.erb +0 -33
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_sizing.jsx +0 -42
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_title.html.erb +0 -14
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_title.jsx +0 -20
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_units.html.erb +0 -29
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_units.jsx +0 -29
- data/app/pb_kits/playbook/pb_gauge/docs/example.yml +0 -22
- data/app/pb_kits/playbook/pb_gauge/docs/index.js +0 -8
- data/app/pb_kits/playbook/pb_gauge/gauge.rb +0 -55
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7f4ee46775d0d56664c1a9aca3fe5524b0956af82b1067d79104529064855fae
|
4
|
+
data.tar.gz: 0e36fa5454385af4d344c9cde205c4f9392695f0dbb6e3721eb4447b90871fcd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c490cc3202290171c33bff9a68062bf888f0110c02189550eaeafa1f9b3f9e07c3e04ae9bad665aa78095cd5f8f8a9b2564b4dabb0d6b549b0ad11bd12d0c587
|
7
|
+
data.tar.gz: 5ca5802c390a462833194cb94aaaeaf7dccd10e72174a1abc826b17f19b7c028dab3bb0c7c23c2038e458574f942f826e37a1b742949c376135723196309b565
|
@@ -26,7 +26,6 @@
|
|
26
26
|
@import 'pb_form/form';
|
27
27
|
@import 'pb_form_pill/form_pill';
|
28
28
|
@import 'pb_flex/flex';
|
29
|
-
@import 'pb_gauge/gauge';
|
30
29
|
@import 'pb_hashtag/hashtag';
|
31
30
|
@import 'pb_highlight/highlight';
|
32
31
|
@import 'pb_home_address_street/home_address_street';
|
@@ -81,4 +80,4 @@
|
|
81
80
|
@import 'pb_user_badge/user_badge';
|
82
81
|
@import 'pb_time_stacked/time_stacked';
|
83
82
|
@import 'pb_weekday_stacked/weekday_stacked';
|
84
|
-
@import './utilities/spacing';
|
83
|
+
@import './utilities/spacing';
|
@@ -2,6 +2,7 @@ samples:
|
|
2
2
|
- dashboards
|
3
3
|
- registration
|
4
4
|
- filter_table
|
5
|
+
- collection_detail
|
5
6
|
|
6
7
|
kits:
|
7
8
|
- avatar
|
@@ -14,11 +15,10 @@ kits:
|
|
14
15
|
- checkbox
|
15
16
|
- charts_and_graphs:
|
16
17
|
- bar_graph
|
17
|
-
- circle_chart
|
18
|
-
- distribution_bar
|
19
|
-
- gauge
|
20
18
|
- legend
|
21
19
|
- line_graph
|
20
|
+
- distribution_bar
|
21
|
+
- circle_chart
|
22
22
|
|
23
23
|
- filter
|
24
24
|
- fixed_confirmation_toast
|
@@ -25,7 +25,6 @@ export FixedConfirmationToast from './pb_fixed_confirmation_toast/_fixed_confirm
|
|
25
25
|
export Flex from './pb_flex/_flex.jsx'
|
26
26
|
export FlexItem from './pb_flex/_flex_item.jsx'
|
27
27
|
export FormPill from './pb_form_pill/_form_pill.jsx'
|
28
|
-
export Gauge from './pb_gauge/_gauge.jsx'
|
29
28
|
export Hashtag from './pb_hashtag/_hashtag.jsx'
|
30
29
|
export Highlight from './pb_highlight/_highlight.jsx'
|
31
30
|
export HomeAddressStreet from './pb_home_address_street/_home_address_street.jsx'
|
@@ -38,7 +38,6 @@ import * as Filter from 'pb_filter/docs'
|
|
38
38
|
import * as FixedConfirmationToast from 'pb_fixed_confirmation_toast/docs'
|
39
39
|
import * as Flex from 'pb_flex/docs'
|
40
40
|
import * as FormPill from 'pb_form_pill/docs'
|
41
|
-
import * as Gauge from 'pb_gauge/docs'
|
42
41
|
import * as Hashtag from 'pb_hashtag/docs'
|
43
42
|
import * as Highlight from 'pb_highlight/docs'
|
44
43
|
import * as HomeAddressStreet from 'pb_home_address_street/docs'
|
@@ -119,7 +118,6 @@ WebpackerReact.setup({
|
|
119
118
|
...FixedConfirmationToast,
|
120
119
|
...Flex,
|
121
120
|
...FormPill,
|
122
|
-
...Gauge,
|
123
121
|
...Hashtag,
|
124
122
|
...Highlight,
|
125
123
|
...HomeAddressStreet,
|
@@ -13,7 +13,9 @@ import WebpackerReact from 'webpacker-react'
|
|
13
13
|
import Dashboards from '../../../views/playbook/samples/dashboards/index.jsx'
|
14
14
|
import FilterTable from '../../../views/playbook/samples/filter_table/index.jsx'
|
15
15
|
import Registration from '../../../views/playbook/samples/registration/index.jsx'
|
16
|
+
import CollectionDetail from '../../../views/playbook/samples/collection_detail/index.jsx'
|
16
17
|
|
17
18
|
WebpackerReact.setup({ Dashboards })
|
18
19
|
WebpackerReact.setup({ FilterTable })
|
19
20
|
WebpackerReact.setup({ Registration })
|
21
|
+
WebpackerReact.setup({ CollectionDetail })
|
@@ -2,50 +2,59 @@
|
|
2
2
|
|
3
3
|
import React from 'react'
|
4
4
|
import classnames from 'classnames'
|
5
|
+
import { buildAriaProps, buildCss, buildDataProps } from '../utilities/props'
|
5
6
|
import { Highlight } from '../'
|
6
7
|
import { spacing } from '../utilities/spacing.js'
|
7
8
|
|
8
9
|
type BodyProps = {
|
10
|
+
aria?: object,
|
9
11
|
className?: String,
|
10
12
|
children?: Array<React.ReactChild>,
|
11
|
-
color: 'light' | 'lighter',
|
13
|
+
color: 'dark' | 'default' | 'light' | 'lighter' | 'light_dark' | 'lighter_dark',
|
12
14
|
dark?: Boolean,
|
13
|
-
|
14
|
-
|
15
|
-
text?: String,
|
15
|
+
data?: object,
|
16
|
+
highlightedText?: Array<String>,
|
16
17
|
highlighting?: Boolean,
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
color = '',
|
22
|
-
dark = false,
|
23
|
-
status = '',
|
24
|
-
|
25
|
-
}: BodyProps) => {
|
26
|
-
const colorStyle = color !== '' ? `_${color}` : ''
|
27
|
-
|
28
|
-
const themeStyle = dark === true ? '_dark' : ''
|
29
|
-
|
30
|
-
const statusStyle = status !== '' ? `_${status}` : ''
|
31
|
-
|
32
|
-
return 'pb_body_kit' + colorStyle + themeStyle + statusStyle
|
18
|
+
id?: String,
|
19
|
+
status?: 'negative' | 'neutral' | 'positive',
|
20
|
+
tag?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'p' | 'span' | 'div',
|
21
|
+
text?: String,
|
33
22
|
}
|
34
23
|
|
35
24
|
const Body = (props: BodyProps) => {
|
36
25
|
const {
|
26
|
+
aria = {},
|
37
27
|
className,
|
38
28
|
children,
|
39
|
-
|
40
|
-
|
41
|
-
|
29
|
+
color = '',
|
30
|
+
dark = false,
|
31
|
+
data = {},
|
32
|
+
highlightedText = [],
|
42
33
|
highlighting = false,
|
34
|
+
id,
|
35
|
+
status = '',
|
36
|
+
tag = 'div',
|
37
|
+
text,
|
43
38
|
} = props
|
44
39
|
|
40
|
+
const ariaProps = buildAriaProps(aria)
|
41
|
+
const dataProps = buildDataProps(data)
|
42
|
+
const classes = classnames(
|
43
|
+
buildCss('pb_body_kit', color, status, {
|
44
|
+
dark: dark,
|
45
|
+
}),
|
46
|
+
spacing(props),
|
47
|
+
className
|
48
|
+
)
|
45
49
|
const Tag = `${tag}`
|
46
50
|
|
47
51
|
return (
|
48
|
-
<Tag
|
52
|
+
<Tag
|
53
|
+
{...ariaProps}
|
54
|
+
{...dataProps}
|
55
|
+
className={classes}
|
56
|
+
id={id}
|
57
|
+
>
|
49
58
|
<If condition={highlighting}>
|
50
59
|
<Highlight highlightedText={highlightedText}>{text || children}</Highlight>
|
51
60
|
<Else />
|
@@ -4,7 +4,9 @@ import { Body } from '../../'
|
|
4
4
|
const BodyLight = () => {
|
5
5
|
return (
|
6
6
|
<div>
|
7
|
-
<Body
|
7
|
+
<Body
|
8
|
+
text="I am a body kit (Default)"
|
9
|
+
/>
|
8
10
|
<Body
|
9
11
|
color="light"
|
10
12
|
text="I am a body kit (Light)"
|
@@ -13,8 +15,6 @@ const BodyLight = () => {
|
|
13
15
|
color="lighter"
|
14
16
|
text="I am a body kit (Lighter)"
|
15
17
|
/>
|
16
|
-
<br />
|
17
|
-
<br />
|
18
18
|
<Body
|
19
19
|
status="negative"
|
20
20
|
text="I am a body kit (Status: negative)"
|
@@ -23,10 +23,6 @@ const BodyLight = () => {
|
|
23
23
|
status="positive"
|
24
24
|
text="I am a body kit (Status: positive)"
|
25
25
|
/>
|
26
|
-
<Body
|
27
|
-
status="positive"
|
28
|
-
text="I am a body kit (Status: positive)"
|
29
|
-
/>
|
30
26
|
</div>
|
31
27
|
)
|
32
28
|
}
|
@@ -3,13 +3,18 @@
|
|
3
3
|
import React from 'react'
|
4
4
|
import Body from '../pb_body/_body.jsx'
|
5
5
|
import Icon from '../pb_icon/_icon.jsx'
|
6
|
+
import { buildAriaProps, buildCss, buildDataProps } from '../utilities/props'
|
6
7
|
import classnames from 'classnames'
|
7
8
|
import { spacing } from '../utilities/spacing.js'
|
8
9
|
|
9
10
|
type CheckboxProps = {
|
11
|
+
aria?: object,
|
10
12
|
checked?: Boolean,
|
13
|
+
className?: String,
|
11
14
|
dark?: Boolean,
|
15
|
+
data?: object,
|
12
16
|
error?: Boolean,
|
17
|
+
id?: String,
|
13
18
|
name: String,
|
14
19
|
text: String,
|
15
20
|
value: String,
|
@@ -19,9 +24,13 @@ type CheckboxProps = {
|
|
19
24
|
|
20
25
|
const Checkbox = (props: CheckboxProps) => {
|
21
26
|
const {
|
27
|
+
aria = {},
|
22
28
|
checked = false,
|
29
|
+
className,
|
23
30
|
dark = false,
|
31
|
+
data = {},
|
24
32
|
error = false,
|
33
|
+
id,
|
25
34
|
name = '',
|
26
35
|
text = '',
|
27
36
|
value = '',
|
@@ -29,13 +38,17 @@ const Checkbox = (props: CheckboxProps) => {
|
|
29
38
|
onChange = () => {},
|
30
39
|
} = props
|
31
40
|
|
41
|
+
const dataProps = buildDataProps(data)
|
42
|
+
const ariaProps = buildAriaProps(aria)
|
43
|
+
const classes = classnames(buildCss('pb_checkbox_kit',
|
44
|
+
{ dark: dark, checked: checked, error: error }), className, spacing(props))
|
45
|
+
|
32
46
|
return (
|
33
47
|
<label
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
}
|
48
|
+
{...ariaProps}
|
49
|
+
{...dataProps}
|
50
|
+
className={classes}
|
51
|
+
id={id}
|
39
52
|
>
|
40
53
|
<If condition={children}>
|
41
54
|
{children}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
import { Checkbox } from '../../'
|
3
|
+
|
4
|
+
const CheckboxChecked = () => {
|
5
|
+
return (
|
6
|
+
<div>
|
7
|
+
<Checkbox
|
8
|
+
checked
|
9
|
+
name="checkbox-name"
|
10
|
+
text="Checked Checkbox"
|
11
|
+
value="check-box value"
|
12
|
+
/>
|
13
|
+
</div>
|
14
|
+
)
|
15
|
+
}
|
16
|
+
|
17
|
+
export default CheckboxChecked
|
@@ -3,3 +3,4 @@ export { default as CheckboxDark } from './_checkbox_dark.jsx'
|
|
3
3
|
export { default as CheckboxCustom } from './_checkbox_custom.jsx'
|
4
4
|
export { default as CheckboxError } from './_checkbox_error.jsx'
|
5
5
|
export { default as CheckboxDarkError } from './_checkbox_dark_error.jsx'
|
6
|
+
export { default as CheckboxChecked } from './_checkbox_checked.jsx'
|
@@ -2,6 +2,7 @@
|
|
2
2
|
|
3
3
|
import React from 'react'
|
4
4
|
import classnames from 'classnames'
|
5
|
+
import { buildAriaProps, buildCss, buildDataProps } from '../utilities/props'
|
5
6
|
import { Button, Icon } from '../'
|
6
7
|
|
7
8
|
import type { Callback } from '../types'
|
@@ -13,8 +14,10 @@ import {
|
|
13
14
|
import { spacing } from '../utilities/spacing.js'
|
14
15
|
|
15
16
|
type CircleIconButtonProps = {
|
17
|
+
aria?: object,
|
16
18
|
className?: String,
|
17
19
|
dark?: Boolean,
|
20
|
+
data?: object,
|
18
21
|
disabled?: Boolean,
|
19
22
|
icon: String,
|
20
23
|
id?: String,
|
@@ -27,9 +30,13 @@ type CircleIconButtonProps = {
|
|
27
30
|
|
28
31
|
const CircleIconButton = (props: CircleIconButtonProps) => {
|
29
32
|
const {
|
33
|
+
aria = {},
|
34
|
+
className,
|
30
35
|
dark,
|
36
|
+
data = {},
|
31
37
|
disabled,
|
32
38
|
icon,
|
39
|
+
id,
|
33
40
|
onClick = noop,
|
34
41
|
type,
|
35
42
|
link,
|
@@ -37,8 +44,17 @@ const CircleIconButton = (props: CircleIconButtonProps) => {
|
|
37
44
|
variant,
|
38
45
|
} = props
|
39
46
|
|
47
|
+
const ariaProps = buildAriaProps(aria)
|
48
|
+
const dataProps = buildDataProps(data)
|
49
|
+
const classes = classnames(buildCss('pb_circle_icon_button_kit'), className, spacing(props))
|
50
|
+
|
40
51
|
return (
|
41
|
-
<div
|
52
|
+
<div
|
53
|
+
{...ariaProps}
|
54
|
+
{...dataProps}
|
55
|
+
className={classes}
|
56
|
+
id={id}
|
57
|
+
>
|
42
58
|
<Button
|
43
59
|
dark={dark}
|
44
60
|
disabled={disabled}
|
@@ -124,13 +124,6 @@ const highchartsTheme = {
|
|
124
124
|
fontSize: typography.text_smaller,
|
125
125
|
},
|
126
126
|
},
|
127
|
-
// specific to gauge
|
128
|
-
// unfilled gauge color
|
129
|
-
pane: {
|
130
|
-
background: {
|
131
|
-
borderColor: colors.border_light,
|
132
|
-
},
|
133
|
-
},
|
134
127
|
|
135
128
|
plotOptions: {
|
136
129
|
series: {
|
@@ -151,25 +144,6 @@ const highchartsTheme = {
|
|
151
144
|
threshold: null,
|
152
145
|
},
|
153
146
|
|
154
|
-
// GAUGE STYLES
|
155
|
-
solidgauge: {
|
156
|
-
borderColor: colors.primary,
|
157
|
-
borderWidth: 20,
|
158
|
-
radius: 90,
|
159
|
-
innerRadius: '90%',
|
160
|
-
dataLabels: {
|
161
|
-
borderWidth: 0,
|
162
|
-
color: colors.text_lt_default,
|
163
|
-
enabled: true,
|
164
|
-
style: {
|
165
|
-
fontFamily: typography.font_family_base,
|
166
|
-
fontWeight: typography.regular,
|
167
|
-
fontSize: typography.heading_2,
|
168
|
-
},
|
169
|
-
y: -26,
|
170
|
-
},
|
171
|
-
},
|
172
|
-
|
173
147
|
// PIE STYLES
|
174
148
|
pie: {
|
175
149
|
colors: [
|
@@ -1,7 +1,8 @@
|
|
1
1
|
<%= content_tag(:div,
|
2
|
-
|
2
|
+
aria: object.aria,
|
3
|
+
class: object.classname,
|
3
4
|
data: object.data,
|
4
|
-
|
5
|
+
id: object.id) do %>
|
5
6
|
<% if object.stat_label.present? %>
|
6
7
|
<%= pb_rails("body", props: { color: "light", text: object.stat_label } ) %>
|
7
8
|
<% end %>
|