playbook_ui 14.9.0.pre.alpha.PLAY1660reactdropzone5020 → 14.9.0.pre.alpha.PLAY1731inputmasking4866
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/pb_bar_graph/docs/_bar_graph_custom.jsx +49 -53
- data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_custom_rails.html.erb +36 -29
- data/app/pb_kits/playbook/pb_collapsible/_collapsible.tsx +4 -9
- data/app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleContent.tsx +2 -2
- data/app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleMain.tsx +2 -2
- data/app/pb_kits/playbook/pb_drawer/_drawer.tsx +2 -2
- data/app/pb_kits/playbook/pb_file_upload/_file_upload.tsx +15 -24
- data/app/pb_kits/playbook/pb_file_upload/docs/_file_upload_accept.jsx +1 -3
- data/app/pb_kits/playbook/pb_file_upload/docs/_file_upload_custom_description.jsx +1 -4
- data/app/pb_kits/playbook/pb_file_upload/docs/_file_upload_max_size.jsx +1 -1
- data/app/pb_kits/playbook/pb_layout/_layout.tsx +11 -30
- data/app/pb_kits/playbook/pb_link/_link.scss +3 -3
- data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_height_width.jsx +0 -2
- data/app/pb_kits/playbook/pb_skeleton_loading/docs/example.yml +1 -2
- data/app/pb_kits/playbook/pb_skeleton_loading/docs/index.js +0 -2
- data/app/pb_kits/playbook/pb_table/docs/example.yml +0 -5
- data/app/pb_kits/playbook/pb_table/docs/index.js +0 -5
- data/app/pb_kits/playbook/pb_table/index.ts +26 -100
- data/app/pb_kits/playbook/pb_table/styles/_all.scss +1 -2
- data/app/pb_kits/playbook/pb_table/subcomponents/_table_row.tsx +1 -106
- data/app/pb_kits/playbook/pb_table/table.html.erb +1 -1
- data/app/pb_kits/playbook/pb_table/table.rb +2 -17
- data/app/pb_kits/playbook/pb_text_input/inputMask.ts +1 -1
- data/dist/chunks/_typeahead-Cx7J1O_I.js +22 -0
- data/dist/chunks/_weekday_stacked-Z6CSak-K.js +45 -0
- data/dist/chunks/{lib-CuCy3_xO.js → lib-SyD3buPZ.js} +3 -3
- data/dist/chunks/{pb_form_validation-D37k10a0.js → pb_form_validation-Dt8UJgrJ.js} +1 -1
- data/dist/chunks/vendor.js +1 -1
- data/dist/menu.yml +1 -1
- data/dist/playbook-doc.js +1 -1
- 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/version.rb +1 -1
- metadata +6 -20
- data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_filter.jsx +0 -166
- data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_user.jsx +0 -89
- data/app/pb_kits/playbook/pb_table/docs/_table_sticky_left_columns.html.erb +0 -95
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible.jsx +0 -75
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible.md +0 -1
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_custom_click.jsx +0 -108
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_custom_click.md +0 -2
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_custom_content.jsx +0 -94
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_custom_content.md +0 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_nested_rows.jsx +0 -83
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_nested_rows.md +0 -3
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_nested_table.jsx +0 -120
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_nested_table.md +0 -1
- data/app/pb_kits/playbook/pb_table/styles/_collapsible.scss +0 -35
- data/dist/chunks/_typeahead-CZ_5SxHq.js +0 -36
- data/dist/chunks/_weekday_stacked-D345GDEZ.js +0 -45
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 71e703352563ce0fb52caedb2eba872eba96f75bcd991faaed515abe278d1df7
|
4
|
+
data.tar.gz: fc3cbb93afcf9e263fc39540acff9bfe76451b72ce9f9294af869da2672127cf
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f340f0c2aacd8f7658a5a6540fd1669524f4baadc3de1ab267e6b9d6e0c916a4cecbcbeea08e1470e37fd34b601113c59285da65b30c1f8580e82c2e5f39c590
|
7
|
+
data.tar.gz: e5968d978b4da333993b3d8d2075213d88046e0d8aa6186e7f3511c9a51b4d0c714a0bd92972331ce4f8da9118ca9bd11cb54b367bdc10ed616ad3d63f6f339e
|
@@ -1,70 +1,66 @@
|
|
1
1
|
import React from 'react'
|
2
|
-
import ReactDOMServer from 'react-dom/server'
|
3
|
-
import BarGraph from '../_bar_graph'
|
4
|
-
import Icon from '../../pb_icon/_icon'
|
5
2
|
|
6
|
-
|
7
|
-
{
|
8
|
-
name: 'Role',
|
9
|
-
data: [0, 200, 300, 654, 656],
|
10
|
-
},
|
11
|
-
{
|
12
|
-
name: 'Company',
|
13
|
-
data: [150, 524, 320, 440, 500],
|
14
|
-
},
|
15
|
-
]
|
3
|
+
import BarGraph from '../_bar_graph'
|
16
4
|
|
17
|
-
const
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
}
|
5
|
+
const chartData = [{
|
6
|
+
name: 'Installation',
|
7
|
+
data: [1475, 200, 3000, 654, 656],
|
8
|
+
}, {
|
9
|
+
name: 'Manufacturing',
|
10
|
+
data: [4434, 524, 2320, 440, 500],
|
11
|
+
}, {
|
12
|
+
name: 'Sales & Distribution',
|
13
|
+
data: [3387, 743, 1344, 434, 440],
|
14
|
+
}, {
|
15
|
+
name: 'Project Development',
|
16
|
+
data: [3227, 878, 999, 780, 1000],
|
17
|
+
}, {
|
18
|
+
name: 'Other',
|
19
|
+
data: [1111, 677, 3245, 500, 200],
|
20
|
+
}]
|
24
21
|
|
25
22
|
const barGraphOptions = {
|
26
|
-
|
27
|
-
|
23
|
+
subtitle: {
|
24
|
+
text: "Overwritten subtitle",
|
25
|
+
style: {
|
26
|
+
color: "red"
|
27
|
+
}
|
28
28
|
},
|
29
29
|
xAxis: {
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
}
|
49
|
-
|
50
|
-
fontSize: '1.4em',
|
51
|
-
},
|
52
|
-
y: 42,
|
53
|
-
},
|
54
|
-
},
|
55
|
-
legend: {
|
56
|
-
itemMarginTop: 62,
|
57
|
-
},
|
30
|
+
labels: {
|
31
|
+
useHTML: true,
|
32
|
+
formatter: function() {
|
33
|
+
switch (this.value) {
|
34
|
+
case 'Jan':
|
35
|
+
return `<i class="far fa-apple-whole"></i> ${this.value}`
|
36
|
+
case 'Feb':
|
37
|
+
return `<i class="far fa-strawberry"></i> ${this.value}`
|
38
|
+
case 'Mar':
|
39
|
+
return `<i class="far fa-lemon"></i> ${this.value}`
|
40
|
+
case 'Apr':
|
41
|
+
return `<i class="far fa-pear"></i> ${this.value}`
|
42
|
+
case 'May':
|
43
|
+
return `<i class="far fa-peach"></i> ${this.value}`
|
44
|
+
default:
|
45
|
+
return ''
|
46
|
+
}
|
47
|
+
}
|
48
|
+
}
|
49
|
+
}
|
58
50
|
}
|
59
51
|
|
60
|
-
const BarGraphCustom = () => (
|
52
|
+
const BarGraphCustom = (props) => (
|
61
53
|
<div>
|
62
54
|
<BarGraph
|
55
|
+
axisTitle="Number of Employees"
|
63
56
|
chartData={chartData}
|
64
57
|
customOptions={barGraphOptions}
|
65
|
-
id="
|
66
|
-
|
58
|
+
id="bar-custom"
|
59
|
+
subTitle="Subtitle to replace"
|
67
60
|
title="Bar Graph with Custom Overrides"
|
61
|
+
xAxisCategories={['Jan', 'Feb', 'Mar', 'Apr', 'May']}
|
62
|
+
yAxisMin={0}
|
63
|
+
{...props}
|
68
64
|
/>
|
69
65
|
</div>
|
70
66
|
)
|
@@ -1,42 +1,49 @@
|
|
1
1
|
<% data = [{
|
2
|
-
|
3
|
-
|
2
|
+
name: 'Installation',
|
3
|
+
data: [1475,200,3000,654,656]
|
4
4
|
}, {
|
5
|
-
|
6
|
-
|
5
|
+
name: 'Manufacturing',
|
6
|
+
data: [4434,524,2320,440,500]
|
7
|
+
}, {
|
8
|
+
name: 'Sales & Distribution',
|
9
|
+
data: [3387,743,1344,434,440,]
|
10
|
+
}, {
|
11
|
+
name: 'Project Development',
|
12
|
+
data: [3227,878,999,780,1000]
|
13
|
+
}, {
|
14
|
+
name: 'Other',
|
15
|
+
data: [1111,677,3245,500,200]
|
7
16
|
}] %>
|
8
17
|
|
9
18
|
<% bar_graph_options = {
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
raw(pb_rails("icon", props: { icon: "frown", color: "error", size: "2x" })),
|
17
|
-
raw(pb_rails("icon", props: { icon: "frown", color: "warning", size: "2x" })),
|
18
|
-
raw(pb_rails("icon", props: { icon: "frown-open", color: "neutral", size: "2x" })),
|
19
|
-
raw(pb_rails("icon", props: { icon: "smile", color: "category_7", size: "2x" })),
|
20
|
-
raw(pb_rails("icon", props: { icon: "smile-beam", color: "success", size: "2x" }))
|
21
|
-
],
|
22
|
-
labels: {
|
23
|
-
useHTML: true,
|
24
|
-
sytle: {
|
25
|
-
fontSize: '1.4em',
|
19
|
+
customOptions: {
|
20
|
+
subtitle: {
|
21
|
+
text: "Overwritten subtitle",
|
22
|
+
style: {
|
23
|
+
color: "red"
|
24
|
+
}
|
26
25
|
},
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
26
|
+
xAxis: {
|
27
|
+
categories: [
|
28
|
+
'<i class="far fa-apple-whole"></i> Jan',
|
29
|
+
'<i class="far fa-strawberry"></i> Feb',
|
30
|
+
'<i class="far fa-lemon"></i> Mar',
|
31
|
+
'<i class="far fa-pear"></i> Apr',
|
32
|
+
'<i class="far fa-peach"></i> May'
|
33
|
+
],
|
34
|
+
labels: {
|
35
|
+
useHTML: true,
|
36
|
+
}
|
37
|
+
}
|
38
|
+
}
|
34
39
|
} %>
|
35
40
|
|
36
41
|
<%= pb_rails("bar_graph", props: {
|
42
|
+
axis_title: 'Number of Employees',
|
37
43
|
chart_data: data,
|
38
44
|
id: "bar-default",
|
39
|
-
|
45
|
+
y_axis_min: 0,
|
46
|
+
subtitle: 'Subtitle to replace',
|
40
47
|
title: 'Bar Graph with Custom Overrides',
|
41
48
|
custom_options: bar_graph_options
|
42
|
-
}) %>
|
49
|
+
}) %>
|
@@ -2,7 +2,7 @@ import React, { useEffect, ReactElement } from 'react'
|
|
2
2
|
import classnames from 'classnames'
|
3
3
|
import useCollapsible from './useCollapsible'
|
4
4
|
|
5
|
-
import { globalProps, globalInlineProps
|
5
|
+
import { globalProps, globalInlineProps } from '../utilities/globalProps'
|
6
6
|
import { buildAriaProps, buildCss, buildDataProps, buildHtmlProps } from '../utilities/props'
|
7
7
|
|
8
8
|
import CollapsibleContent from './child_kits/CollapsibleContent'
|
@@ -32,7 +32,6 @@ type CollapsibleProps = {
|
|
32
32
|
onClick?: ()=> void,
|
33
33
|
htmlOptions?: {[key: string]: string | number | boolean | (() => void)},
|
34
34
|
id?: string,
|
35
|
-
tag?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'p' | 'span' | 'div' | 'tr' | 'th' | 'td' | 'thead' | 'col',
|
36
35
|
}
|
37
36
|
|
38
37
|
const Collapsible = ({
|
@@ -48,9 +47,8 @@ const Collapsible = ({
|
|
48
47
|
onIconClick,
|
49
48
|
onClick,
|
50
49
|
id,
|
51
|
-
tag = 'div',
|
52
50
|
...props
|
53
|
-
}: CollapsibleProps
|
51
|
+
}: CollapsibleProps): React.ReactElement => {
|
54
52
|
const [isCollapsed, toggle, setIsCollapsed] = useCollapsible(collapsed)
|
55
53
|
|
56
54
|
useEffect(()=> {
|
@@ -78,12 +76,9 @@ const Collapsible = ({
|
|
78
76
|
className
|
79
77
|
)
|
80
78
|
const dynamicInlineProps = globalInlineProps(props)
|
81
|
-
|
82
|
-
const Tag: React.ReactElement | any = `${tag}`;
|
83
|
-
|
84
79
|
return (
|
85
80
|
<CollapsibleContext.Provider value={{ collapsed: isCollapsed, toggle, icon, iconSize, iconColor, onIconClick, onClick }}>
|
86
|
-
<
|
81
|
+
<div
|
87
82
|
{...ariaProps}
|
88
83
|
{...dataProps}
|
89
84
|
{...htmlProps}
|
@@ -101,7 +96,7 @@ const Collapsible = ({
|
|
101
96
|
<CollapsibleContent {...contentProps}>
|
102
97
|
{contentChildren}
|
103
98
|
</CollapsibleContent>
|
104
|
-
</
|
99
|
+
</div>
|
105
100
|
</CollapsibleContext.Provider>
|
106
101
|
)
|
107
102
|
}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import classnames from 'classnames'
|
2
2
|
import React, { useContext, useRef, useEffect } from 'react'
|
3
3
|
import { buildCss } from '../../utilities/props'
|
4
|
-
import { globalProps
|
4
|
+
import { globalProps } from '../../utilities/globalProps'
|
5
5
|
import { hideElement, showElement } from '../_helper_functions'
|
6
6
|
|
7
7
|
import CollapsibleContext from '../context'
|
@@ -15,7 +15,7 @@ const CollapsibleContent = ({
|
|
15
15
|
children,
|
16
16
|
className,
|
17
17
|
...props
|
18
|
-
}: CollapsibleContentProps
|
18
|
+
}: CollapsibleContentProps): React.ReactElement => {
|
19
19
|
const context: {[key: string]: boolean | string} = useContext(CollapsibleContext)
|
20
20
|
const contentCSS = buildCss('pb_collapsible_content_kit')
|
21
21
|
const contentSpacing = globalProps(props)
|
@@ -3,7 +3,7 @@
|
|
3
3
|
import classnames from 'classnames'
|
4
4
|
import React, { useContext } from 'react'
|
5
5
|
import { buildCss } from '../../utilities/props'
|
6
|
-
import { globalProps
|
6
|
+
import { globalProps } from '../../utilities/globalProps'
|
7
7
|
|
8
8
|
import Flex from '../../pb_flex/_flex'
|
9
9
|
import FlexItem from '../../pb_flex/_flex_item'
|
@@ -25,7 +25,7 @@ const CollapsibleMain = ({
|
|
25
25
|
className,
|
26
26
|
cursor = 'pointer',
|
27
27
|
...props
|
28
|
-
}: CollapsibleMainProps
|
28
|
+
}: CollapsibleMainProps): React.ReactElement=> {
|
29
29
|
const {collapsed, toggle, icon, iconSize, iconColor, onIconClick, onClick}: any = useContext(CollapsibleContext)
|
30
30
|
const mainCSS = buildCss('pb_collapsible_main_kit')
|
31
31
|
const mainSpacing = globalProps(props, { cursor })
|
@@ -287,6 +287,7 @@ const Drawer = (props: DrawerProps): React.ReactElement => {
|
|
287
287
|
{...ariaProps}
|
288
288
|
{...dataProps}
|
289
289
|
{...htmlProps}
|
290
|
+
style={dynamicInlineProps}
|
290
291
|
className={classnames(drawerClassNames.base, {
|
291
292
|
[drawerClassNames.afterOpen]:
|
292
293
|
animationState === "afterOpen",
|
@@ -295,7 +296,6 @@ const Drawer = (props: DrawerProps): React.ReactElement => {
|
|
295
296
|
})}
|
296
297
|
id={id}
|
297
298
|
onClick={(e) => e.stopPropagation()}
|
298
|
-
style={dynamicInlineProps}
|
299
299
|
>
|
300
300
|
{children}
|
301
301
|
</div>
|
@@ -306,6 +306,7 @@ const Drawer = (props: DrawerProps): React.ReactElement => {
|
|
306
306
|
{...dataProps}
|
307
307
|
{...htmlProps}
|
308
308
|
className={classes}
|
309
|
+
style={dynamicInlineProps}
|
309
310
|
>
|
310
311
|
{isModalVisible && (
|
311
312
|
<div
|
@@ -326,7 +327,6 @@ const Drawer = (props: DrawerProps): React.ReactElement => {
|
|
326
327
|
animationState === "beforeClose",
|
327
328
|
})}
|
328
329
|
onClick={(e) => e.stopPropagation()}
|
329
|
-
style={dynamicInlineProps}
|
330
330
|
>
|
331
331
|
{children}
|
332
332
|
</div>
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import React, { useEffect, useCallback, useRef } from 'react'
|
2
|
-
import { useDropzone, DropzoneInputProps, DropzoneRootProps
|
2
|
+
import { useDropzone, DropzoneInputProps, DropzoneRootProps } from 'react-dropzone'
|
3
3
|
import classnames from 'classnames'
|
4
4
|
|
5
5
|
import { buildCss, buildDataProps, noop, buildHtmlProps } from '../utilities/props'
|
@@ -9,10 +9,8 @@ import type { Callback } from '../types'
|
|
9
9
|
import Body from '../pb_body/_body'
|
10
10
|
import Card from '../pb_card/_card'
|
11
11
|
|
12
|
-
import { isEmpty } from '../utilities/object'
|
13
|
-
|
14
12
|
type FileUploadProps = {
|
15
|
-
accept?:
|
13
|
+
accept?: string[],
|
16
14
|
className?: string,
|
17
15
|
customMessage?: string,
|
18
16
|
dark?: boolean,
|
@@ -21,7 +19,7 @@ type FileUploadProps = {
|
|
21
19
|
acceptedFilesDescription?: string,
|
22
20
|
maxSize?: number,
|
23
21
|
onFilesAccepted: Callback<File, File>,
|
24
|
-
onFilesRejected: (error: string, files:
|
22
|
+
onFilesRejected: (error: string, files: File[]) => void,
|
25
23
|
}
|
26
24
|
|
27
25
|
const getFormattedFileSize = (fileSize: number): string => {
|
@@ -30,7 +28,7 @@ const getFormattedFileSize = (fileSize: number): string => {
|
|
30
28
|
|
31
29
|
const FileUpload = (props: FileUploadProps): React.ReactElement => {
|
32
30
|
const {
|
33
|
-
accept =
|
31
|
+
accept = null,
|
34
32
|
acceptedFilesDescription = '',
|
35
33
|
className,
|
36
34
|
customMessage,
|
@@ -50,37 +48,30 @@ const FileUpload = (props: FileUploadProps): React.ReactElement => {
|
|
50
48
|
getRootProps: () => DropzoneRootProps & any;
|
51
49
|
getInputProps: () => DropzoneInputProps & any;
|
52
50
|
isDragActive: boolean;
|
53
|
-
|
51
|
+
rejectedFiles: File[];
|
54
52
|
}
|
55
53
|
|
56
|
-
const { getRootProps, getInputProps, isDragActive,
|
54
|
+
const { getRootProps, getInputProps, isDragActive, rejectedFiles }: DropZoneProps = useDropzone({
|
57
55
|
accept,
|
58
56
|
maxSize,
|
59
57
|
onDrop,
|
60
58
|
})
|
61
59
|
|
62
|
-
const prevRejected = useRef<
|
60
|
+
const prevRejected = useRef<File[] | null>(null);
|
63
61
|
|
64
|
-
|
65
|
-
if (maxSize !== undefined) {
|
66
|
-
maxFileSizeText = `Max file size is ${getFormattedFileSize(maxSize)}.`
|
67
|
-
}
|
62
|
+
const maxFileSizeText = `Max file size is ${getFormattedFileSize(maxSize)}.`
|
68
63
|
|
69
64
|
useEffect(() => {
|
70
|
-
if (
|
71
|
-
const isFileTooLarge = maxSize &&
|
65
|
+
if (rejectedFiles === prevRejected.current) return
|
66
|
+
const isFileTooLarge = maxSize && rejectedFiles.length > 0 && rejectedFiles[0].size > maxSize;
|
72
67
|
if (isFileTooLarge) {
|
73
|
-
onFilesRejected(`File size is too large! ${maxFileSizeText}`,
|
68
|
+
onFilesRejected(`File size is too large! ${maxFileSizeText}`, rejectedFiles)
|
74
69
|
}
|
75
|
-
prevRejected.current =
|
76
|
-
}, [maxFileSizeText, maxSize, onFilesRejected,
|
70
|
+
prevRejected.current = rejectedFiles
|
71
|
+
}, [maxFileSizeText, maxSize, onFilesRejected, rejectedFiles])
|
77
72
|
|
78
73
|
const acceptedFileTypes = () => {
|
79
|
-
|
80
|
-
return []
|
81
|
-
}
|
82
|
-
|
83
|
-
return Object.keys(accept).map((fileType) => {
|
74
|
+
return accept.map((fileType) => {
|
84
75
|
if (fileType.startsWith('image/')) {
|
85
76
|
return fileType.replace('image/', ' ')
|
86
77
|
} else {
|
@@ -95,7 +86,7 @@ const FileUpload = (props: FileUploadProps): React.ReactElement => {
|
|
95
86
|
const getDescription = () => {
|
96
87
|
return customMessage
|
97
88
|
? customMessage
|
98
|
-
: `Choose a file or drag it here.${
|
89
|
+
: `Choose a file or drag it here.${accept === null ? '' : ` The accepted file types are: ${acceptedFilesDescription || acceptedFileTypes()}.`}${maxSize ? ` ${maxFileSizeText}` : ''}`;
|
99
90
|
}
|
100
91
|
|
101
92
|
return (
|
@@ -25,10 +25,7 @@ const FileUploadCustomDescription = (props) => {
|
|
25
25
|
{...props}
|
26
26
|
/>
|
27
27
|
<FileUpload
|
28
|
-
accept={
|
29
|
-
"application/pdf": [".pdf"],
|
30
|
-
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": [".xlsx"],
|
31
|
-
}}
|
28
|
+
accept={['application/pdf','application/vnd.openxmlformats-officedocument.spreadsheetml.sheet']}
|
32
29
|
acceptedFilesDescription="Adobe (.pdf) and Microsoft (.xslx)"
|
33
30
|
onFilesAccepted={handleOnFilesAccepted}
|
34
31
|
{...props}
|
@@ -18,7 +18,7 @@ const AcceptedFilesList = ({ files }) => (
|
|
18
18
|
const RejectedFilesList = ({ files }) => (
|
19
19
|
<List>
|
20
20
|
{files.map((file) => (
|
21
|
-
<ListItem key={file.
|
21
|
+
<ListItem key={file.name}><Body color="error">{`${file.name} (file too large)`}</Body></ListItem>
|
22
22
|
))}
|
23
23
|
</List>
|
24
24
|
)
|
@@ -24,37 +24,34 @@ type LayoutPropTypes = {
|
|
24
24
|
type LayoutSideProps = {
|
25
25
|
children: React.ReactNode[] | React.ReactNode,
|
26
26
|
className?: string,
|
27
|
-
}
|
27
|
+
}
|
28
28
|
|
29
29
|
type LayoutBodyProps = {
|
30
30
|
children: React.ReactNode[] | React.ReactNode,
|
31
31
|
className?: string,
|
32
|
-
}
|
32
|
+
}
|
33
33
|
|
34
34
|
type LayoutItemProps = {
|
35
35
|
children: React.ReactNode[] | React.ReactNode,
|
36
36
|
className?: string,
|
37
37
|
size?: "sm" | "md" | "lg"
|
38
|
-
}
|
38
|
+
}
|
39
39
|
|
40
40
|
type LayoutHeaderProps = {
|
41
41
|
children: React.ReactNode[] | React.ReactNode,
|
42
42
|
className?: string,
|
43
|
-
}
|
43
|
+
}
|
44
44
|
|
45
45
|
type LayoutFooterProps = {
|
46
46
|
children: React.ReactNode[] | React.ReactNode,
|
47
47
|
className?: string,
|
48
|
-
}
|
48
|
+
}
|
49
49
|
|
50
|
+
// Side component
|
50
51
|
const Side = (props: LayoutSideProps) => {
|
51
52
|
const { children, className } = props
|
52
|
-
const dynamicInlineProps = globalInlineProps(props)
|
53
53
|
return (
|
54
|
-
<div
|
55
|
-
className={classnames('layout_sidebar', globalProps(props), className)}
|
56
|
-
style={dynamicInlineProps}
|
57
|
-
>
|
54
|
+
<div className={classnames('layout_sidebar', globalProps(props), className)}>
|
58
55
|
{children}
|
59
56
|
</div>
|
60
57
|
)
|
@@ -63,12 +60,8 @@ const Side = (props: LayoutSideProps) => {
|
|
63
60
|
// Body component
|
64
61
|
const Body = (props: LayoutBodyProps) => {
|
65
62
|
const { children, className } = props
|
66
|
-
const dynamicInlineProps = globalInlineProps(props)
|
67
63
|
return (
|
68
|
-
<div
|
69
|
-
className={classnames('layout_body', globalProps(props), className)}
|
70
|
-
style={dynamicInlineProps}
|
71
|
-
>
|
64
|
+
<div className={classnames('layout_body', globalProps(props), className)}>
|
72
65
|
{children}
|
73
66
|
</div>
|
74
67
|
)
|
@@ -78,12 +71,8 @@ const Body = (props: LayoutBodyProps) => {
|
|
78
71
|
const Item = (props: LayoutItemProps) => {
|
79
72
|
const { children, className, size = 'sm' } = props
|
80
73
|
const sizeClass = `size_${size}`
|
81
|
-
const dynamicInlineProps = globalInlineProps(props)
|
82
74
|
return (
|
83
|
-
<div
|
84
|
-
className={classnames('layout_item', sizeClass, globalProps(props), className)}
|
85
|
-
style={dynamicInlineProps}
|
86
|
-
>
|
75
|
+
<div className={classnames('layout_item', sizeClass, globalProps(props), className)}>
|
87
76
|
{children}
|
88
77
|
</div>
|
89
78
|
)
|
@@ -92,12 +81,8 @@ const Item = (props: LayoutItemProps) => {
|
|
92
81
|
// Header component
|
93
82
|
const Header = (props: LayoutHeaderProps) => {
|
94
83
|
const { children, className } = props
|
95
|
-
const dynamicInlineProps = globalInlineProps(props)
|
96
84
|
return (
|
97
|
-
<div
|
98
|
-
className={classnames('layout_header', globalProps(props), className)}
|
99
|
-
style={dynamicInlineProps}
|
100
|
-
>
|
85
|
+
<div className={classnames('layout_header', globalProps(props), className)}>
|
101
86
|
{children}
|
102
87
|
</div>
|
103
88
|
)
|
@@ -106,12 +91,8 @@ const Header = (props: LayoutHeaderProps) => {
|
|
106
91
|
// Footer component
|
107
92
|
const Footer = (props: LayoutFooterProps) => {
|
108
93
|
const { children, className } = props
|
109
|
-
const dynamicInlineProps = globalInlineProps(props)
|
110
94
|
return (
|
111
|
-
<div
|
112
|
-
className={classnames('layout_footer', globalProps(props), className)}
|
113
|
-
style={dynamicInlineProps}
|
114
|
-
>
|
95
|
+
<div className={classnames('layout_footer', globalProps(props), className)}>
|
115
96
|
{children}
|
116
97
|
</div>
|
117
98
|
)
|
@@ -17,7 +17,7 @@
|
|
17
17
|
outline-offset: 2px;
|
18
18
|
}
|
19
19
|
&:visited {
|
20
|
-
color:
|
20
|
+
color: $data_3;
|
21
21
|
}
|
22
22
|
&.dark {
|
23
23
|
@include pb_link($active_dark);
|
@@ -34,7 +34,7 @@
|
|
34
34
|
}
|
35
35
|
|
36
36
|
&:visited {
|
37
|
-
color:
|
37
|
+
color: $data_3;
|
38
38
|
}
|
39
39
|
}
|
40
40
|
}
|
@@ -48,7 +48,7 @@
|
|
48
48
|
}
|
49
49
|
|
50
50
|
&:visited {
|
51
|
-
color:
|
51
|
+
color: $data_3;
|
52
52
|
}
|
53
53
|
}
|
54
54
|
}
|
@@ -20,7 +20,6 @@ const SkeletonLoadingHeightWidth = (props) => (
|
|
20
20
|
<Card htmlOptions={{ style: { height: '200px', width: '100%' }}}
|
21
21
|
marginBottom="md"
|
22
22
|
padding="none"
|
23
|
-
{...props}
|
24
23
|
>
|
25
24
|
<SkeletonLoading
|
26
25
|
borderRadius="md"
|
@@ -32,7 +31,6 @@ const SkeletonLoadingHeightWidth = (props) => (
|
|
32
31
|
</Card>
|
33
32
|
<Card htmlOptions={{ style: { height: '200px', width: '100%' }}}
|
34
33
|
padding="none"
|
35
|
-
{...props}
|
36
34
|
>
|
37
35
|
<SkeletonLoading
|
38
36
|
borderRadius="md"
|
@@ -3,5 +3,3 @@ export { default as SkeletonLoadingColor } from './_skeleton_loading_color.jsx'
|
|
3
3
|
export { default as SkeletonLoadingLayout } from './_skeleton_loading_layout.jsx'
|
4
4
|
export { default as SkeletonLoadingBorderRadius } from './_skeleton_loading_border_radius.jsx'
|
5
5
|
export { default as SkeletonLoadingHeightWidth } from './_skeleton_loading_height_width.jsx'
|
6
|
-
export { default as SkeletonLoadingUser } from './_skeleton_loading_user.jsx'
|
7
|
-
export { default as SkeletonLoadingFilter } from './_skeleton_loading_filter.jsx'
|
@@ -55,8 +55,3 @@ examples:
|
|
55
55
|
- table_with_subcomponents: Table with Sub Components (Table Elements)
|
56
56
|
- table_with_subcomponents_as_divs: Table with Sub Components (Divs)
|
57
57
|
- table_outer_padding: Outer Padding
|
58
|
-
- table_with_collapsible: Table with Collapsible
|
59
|
-
- table_with_collapsible_with_custom_click: Table with Collapsible with Custom Click
|
60
|
-
- table_with_collapsible_with_custom_content: Table with Collapsible with Custom Content
|
61
|
-
- table_with_collapsible_with_nested_rows: Table with Collapsible with Nested Rows
|
62
|
-
- table_with_collapsible_with_nested_table: Table with Collapsible with Nested Table
|
@@ -26,8 +26,3 @@ export { default as TableWithSubcomponents } from './_table_with_subcomponents.j
|
|
26
26
|
export { default as TableWithSubcomponentsAsDivs } from './_table_with_subcomponents_as_divs.jsx'
|
27
27
|
export { default as TableOuterPadding } from './_table_outer_padding.jsx'
|
28
28
|
export { default as TableStickyLeftColumns } from './_table_sticky_left_columns.jsx'
|
29
|
-
export { default as TableWithCollapsible } from './_table_with_collapsible.jsx'
|
30
|
-
export { default as TableWithCollapsibleWithCustomContent } from './_table_with_collapsible_with_custom_content.jsx'
|
31
|
-
export { default as TableWithCollapsibleWithNestedTable } from './_table_with_collapsible_with_nested_table.jsx'
|
32
|
-
export { default as TableWithCollapsibleWithNestedRows } from './_table_with_collapsible_with_nested_rows.jsx'
|
33
|
-
export { default as TableWithCollapsibleWithCustomClick } from './_table_with_collapsible_with_custom_click.jsx'
|