@planningcenter/tapestry-react 1.1.0 → 1.2.0
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.
- package/dist/cjs/Page/PageActions.js +5 -0
- package/dist/cjs/Page/PageHeader.js +17 -21
- package/dist/cjs/Page/PageTab.js +11 -2
- package/dist/cjs/Page/PageTabList.js +5 -10
- package/dist/cjs/Page/PageTitle.js +3 -2
- package/dist/cjs/Page/PageToolbar.js +30 -6
- package/dist/esm/Page/PageActions.js +5 -0
- package/dist/esm/Page/PageHeader.js +17 -18
- package/dist/esm/Page/PageTab.js +10 -2
- package/dist/esm/Page/PageTabList.js +5 -8
- package/dist/esm/Page/PageTitle.js +3 -2
- package/dist/esm/Page/PageToolbar.js +28 -6
- package/package.json +1 -1
- package/src/Page/Page.mdx +56 -1
- package/src/Page/PageActions.js +12 -1
- package/src/Page/PageHeader.js +19 -25
- package/src/Page/PageTab.js +15 -1
- package/src/Page/PageTabList.js +10 -8
- package/src/Page/PageTitle.js +9 -1
- package/src/Page/PageToolbar.js +29 -6
|
@@ -13,7 +13,12 @@ var _StackView = _interopRequireDefault(require("../StackView"));
|
|
|
13
13
|
|
|
14
14
|
function PageActions(props) {
|
|
15
15
|
return /*#__PURE__*/_react["default"].createElement(_StackView["default"], (0, _extends2["default"])({
|
|
16
|
+
alignment: "center",
|
|
17
|
+
alignSelf: "end",
|
|
16
18
|
axis: "horizontal",
|
|
19
|
+
distribution: "end",
|
|
20
|
+
flex: "1",
|
|
21
|
+
paddingBottom: 2,
|
|
17
22
|
spacing: 1
|
|
18
23
|
}, props));
|
|
19
24
|
}
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
|
4
|
-
|
|
5
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
6
4
|
|
|
7
5
|
exports.__esModule = true;
|
|
@@ -11,37 +9,35 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
|
|
|
11
9
|
|
|
12
10
|
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
13
11
|
|
|
14
|
-
var _react =
|
|
12
|
+
var _react = _interopRequireDefault(require("react"));
|
|
15
13
|
|
|
16
14
|
var _system = require("../system");
|
|
17
15
|
|
|
18
16
|
var _StackView = _interopRequireDefault(require("../StackView"));
|
|
19
17
|
|
|
20
|
-
var _PageTabList = require("./PageTabList");
|
|
21
|
-
|
|
22
18
|
function PageHeader(_ref) {
|
|
23
19
|
var children = _ref.children,
|
|
24
20
|
toolbar = _ref.toolbar,
|
|
25
21
|
restProps = (0, _objectWithoutPropertiesLoose2["default"])(_ref, ["children", "toolbar"]);
|
|
26
22
|
var themeProps = (0, _system.useThemeValue)('pageHeader');
|
|
27
|
-
var tabsPresent = toolbar ? _react.Children.toArray(toolbar.props.children).some(function (child) {
|
|
28
|
-
return child && child.type.displayName === _PageTabList.PAGE_TABLIST_DISPLAY_NAME;
|
|
29
|
-
}) : false;
|
|
30
|
-
var childrenToRender = toolbar ? children ? _react.Children.toArray([/*#__PURE__*/_react["default"].createElement(_StackView["default"], {
|
|
31
|
-
axis: "horizontal",
|
|
32
|
-
alignment: "center",
|
|
33
|
-
width: "100%"
|
|
34
|
-
}, children), toolbar]) : toolbar : children;
|
|
35
23
|
return /*#__PURE__*/_react["default"].createElement(_StackView["default"], (0, _extends2["default"])({
|
|
36
24
|
as: "header",
|
|
37
|
-
axis:
|
|
38
|
-
|
|
39
|
-
paddingHorizontal:
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
25
|
+
axis: "vertical",
|
|
26
|
+
backgroundColor: "primary-light",
|
|
27
|
+
paddingHorizontal: 2,
|
|
28
|
+
minHeight: 8,
|
|
29
|
+
mediaQueries: {
|
|
30
|
+
sm: {
|
|
31
|
+
paddingHorizontal: 3
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
spacing: 0
|
|
35
|
+
}, themeProps, restProps), children && /*#__PURE__*/_react["default"].createElement(_StackView["default"], {
|
|
36
|
+
alignment: "center",
|
|
37
|
+
axis: "horizontal",
|
|
38
|
+
paddingTop: 2,
|
|
39
|
+
width: "100%"
|
|
40
|
+
}, children), toolbar);
|
|
45
41
|
}
|
|
46
42
|
|
|
47
43
|
var _default = PageHeader;
|
package/dist/cjs/Page/PageTab.js
CHANGED
|
@@ -11,10 +11,19 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
11
11
|
|
|
12
12
|
var _Tab = _interopRequireDefault(require("../Tab"));
|
|
13
13
|
|
|
14
|
+
var _system = require("../system");
|
|
15
|
+
|
|
14
16
|
function PageTab(props) {
|
|
15
|
-
|
|
17
|
+
var themeProps = (0, _system.useThemeValue)('pageTab');
|
|
18
|
+
return /*#__PURE__*/_react["default"].createElement(_Tab["default"], (0, _extends2["default"])({
|
|
19
|
+
mediaQueries: {
|
|
20
|
+
sm: {
|
|
21
|
+
paddingHorizontal: 3
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
paddingHorizontal: 1.5,
|
|
16
25
|
size: "lg"
|
|
17
|
-
}));
|
|
26
|
+
}, themeProps, props));
|
|
18
27
|
}
|
|
19
28
|
|
|
20
29
|
var _default = PageTab;
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
4
|
|
|
5
5
|
exports.__esModule = true;
|
|
6
|
-
exports["default"] =
|
|
6
|
+
exports["default"] = PageTabList;
|
|
7
7
|
|
|
8
8
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
9
|
|
|
@@ -11,16 +11,11 @@ var _react = _interopRequireDefault(require("react"));
|
|
|
11
11
|
|
|
12
12
|
var _StackView = _interopRequireDefault(require("../StackView"));
|
|
13
13
|
|
|
14
|
-
var PAGE_TABLIST_DISPLAY_NAME = 'PageTabList';
|
|
15
|
-
exports.PAGE_TABLIST_DISPLAY_NAME = PAGE_TABLIST_DISPLAY_NAME;
|
|
16
|
-
|
|
17
14
|
function PageTabList(props) {
|
|
18
15
|
return /*#__PURE__*/_react["default"].createElement(_StackView["default"], (0, _extends2["default"])({
|
|
19
16
|
axis: "horizontal",
|
|
20
|
-
|
|
17
|
+
paddingTop: 2,
|
|
18
|
+
spacing: 0.5,
|
|
19
|
+
alignSelf: "end"
|
|
21
20
|
}, props));
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
PageTabList.displayName = PAGE_TABLIST_DISPLAY_NAME;
|
|
25
|
-
var _default = PageTabList;
|
|
26
|
-
exports["default"] = _default;
|
|
21
|
+
}
|
|
@@ -16,8 +16,9 @@ var _Heading = _interopRequireDefault(require("../Heading"));
|
|
|
16
16
|
function PageTitle(props) {
|
|
17
17
|
var themeProps = (0, _system.useThemeValue)('pageTitle');
|
|
18
18
|
return /*#__PURE__*/_react["default"].createElement(_Heading["default"], (0, _extends2["default"])({
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
color: "white",
|
|
20
|
+
fontSize: "25px",
|
|
21
|
+
level: 2
|
|
21
22
|
}, themeProps, props));
|
|
22
23
|
}
|
|
23
24
|
|
|
@@ -5,18 +5,42 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
exports.__esModule = true;
|
|
6
6
|
exports["default"] = void 0;
|
|
7
7
|
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
|
|
10
|
+
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
11
|
+
|
|
8
12
|
var _react = _interopRequireDefault(require("react"));
|
|
9
13
|
|
|
10
14
|
var _StackView = _interopRequireDefault(require("../StackView"));
|
|
11
15
|
|
|
16
|
+
var _system = require("../system");
|
|
17
|
+
|
|
12
18
|
function PageToolbar(_ref) {
|
|
13
|
-
var
|
|
14
|
-
|
|
15
|
-
|
|
19
|
+
var _mediaQueries;
|
|
20
|
+
|
|
21
|
+
var stackBelow = _ref.stackBelow,
|
|
22
|
+
restProps = (0, _objectWithoutPropertiesLoose2["default"])(_ref, ["stackBelow"]);
|
|
23
|
+
var themeBreakpoints = (0, _system.useThemeValue)('breakpoints');
|
|
24
|
+
var breakpoint = Object.keys(themeBreakpoints).includes(stackBelow) ? stackBelow : 'sm';
|
|
25
|
+
var stackProps = stackBelow ? {
|
|
26
|
+
axis: 'vertical',
|
|
27
|
+
alignment: 'stretch',
|
|
28
|
+
spacing: 2,
|
|
29
|
+
mediaQueries: (_mediaQueries = {}, _mediaQueries[breakpoint] = {
|
|
30
|
+
axis: 'horizontal',
|
|
31
|
+
alignment: 'center',
|
|
32
|
+
paddingBottom: 0,
|
|
33
|
+
spacing: 0
|
|
34
|
+
}, _mediaQueries)
|
|
35
|
+
} : null;
|
|
36
|
+
return /*#__PURE__*/_react["default"].createElement(_StackView["default"], (0, _extends2["default"])({
|
|
37
|
+
alignment: "center",
|
|
16
38
|
axis: "horizontal",
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
39
|
+
distribution: "space-between",
|
|
40
|
+
flex: 1,
|
|
41
|
+
spacing: 2,
|
|
42
|
+
width: "100%"
|
|
43
|
+
}, stackProps, restProps));
|
|
20
44
|
}
|
|
21
45
|
|
|
22
46
|
var _default = PageToolbar;
|
|
@@ -4,7 +4,12 @@ import StackView from '../StackView';
|
|
|
4
4
|
|
|
5
5
|
function PageActions(props) {
|
|
6
6
|
return /*#__PURE__*/React.createElement(StackView, _extends({
|
|
7
|
+
alignment: "center",
|
|
8
|
+
alignSelf: "end",
|
|
7
9
|
axis: "horizontal",
|
|
10
|
+
distribution: "end",
|
|
11
|
+
flex: "1",
|
|
12
|
+
paddingBottom: 2,
|
|
8
13
|
spacing: 1
|
|
9
14
|
}, props));
|
|
10
15
|
}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
|
-
import React
|
|
3
|
+
import React from 'react';
|
|
4
4
|
import { useThemeValue } from '../system';
|
|
5
5
|
import StackView from '../StackView';
|
|
6
|
-
import { PAGE_TABLIST_DISPLAY_NAME } from './PageTabList';
|
|
7
6
|
|
|
8
7
|
function PageHeader(_ref) {
|
|
9
8
|
var children = _ref.children,
|
|
@@ -11,24 +10,24 @@ function PageHeader(_ref) {
|
|
|
11
10
|
restProps = _objectWithoutPropertiesLoose(_ref, ["children", "toolbar"]);
|
|
12
11
|
|
|
13
12
|
var themeProps = useThemeValue('pageHeader');
|
|
14
|
-
var tabsPresent = toolbar ? Children.toArray(toolbar.props.children).some(function (child) {
|
|
15
|
-
return child && child.type.displayName === PAGE_TABLIST_DISPLAY_NAME;
|
|
16
|
-
}) : false;
|
|
17
|
-
var childrenToRender = toolbar ? children ? Children.toArray([/*#__PURE__*/React.createElement(StackView, {
|
|
18
|
-
axis: "horizontal",
|
|
19
|
-
alignment: "center",
|
|
20
|
-
width: "100%"
|
|
21
|
-
}, children), toolbar]) : toolbar : children;
|
|
22
13
|
return /*#__PURE__*/React.createElement(StackView, _extends({
|
|
23
14
|
as: "header",
|
|
24
|
-
axis:
|
|
25
|
-
|
|
26
|
-
paddingHorizontal:
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
15
|
+
axis: "vertical",
|
|
16
|
+
backgroundColor: "primary-light",
|
|
17
|
+
paddingHorizontal: 2,
|
|
18
|
+
minHeight: 8,
|
|
19
|
+
mediaQueries: {
|
|
20
|
+
sm: {
|
|
21
|
+
paddingHorizontal: 3
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
spacing: 0
|
|
25
|
+
}, themeProps, restProps), children && /*#__PURE__*/React.createElement(StackView, {
|
|
26
|
+
alignment: "center",
|
|
27
|
+
axis: "horizontal",
|
|
28
|
+
paddingTop: 2,
|
|
29
|
+
width: "100%"
|
|
30
|
+
}, children), toolbar);
|
|
32
31
|
}
|
|
33
32
|
|
|
34
33
|
export default PageHeader;
|
package/dist/esm/Page/PageTab.js
CHANGED
|
@@ -1,11 +1,19 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import Tab from '../Tab';
|
|
4
|
+
import { useThemeValue } from '../system';
|
|
4
5
|
|
|
5
6
|
function PageTab(props) {
|
|
6
|
-
|
|
7
|
+
var themeProps = useThemeValue('pageTab');
|
|
8
|
+
return /*#__PURE__*/React.createElement(Tab, _extends({
|
|
9
|
+
mediaQueries: {
|
|
10
|
+
sm: {
|
|
11
|
+
paddingHorizontal: 3
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
paddingHorizontal: 1.5,
|
|
7
15
|
size: "lg"
|
|
8
|
-
}));
|
|
16
|
+
}, themeProps, props));
|
|
9
17
|
}
|
|
10
18
|
|
|
11
19
|
export default PageTab;
|
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import StackView from '../StackView';
|
|
4
|
-
export
|
|
5
|
-
|
|
6
|
-
function PageTabList(props) {
|
|
4
|
+
export default function PageTabList(props) {
|
|
7
5
|
return /*#__PURE__*/React.createElement(StackView, _extends({
|
|
8
6
|
axis: "horizontal",
|
|
9
|
-
|
|
7
|
+
paddingTop: 2,
|
|
8
|
+
spacing: 0.5,
|
|
9
|
+
alignSelf: "end"
|
|
10
10
|
}, props));
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
PageTabList.displayName = PAGE_TABLIST_DISPLAY_NAME;
|
|
14
|
-
export default PageTabList;
|
|
11
|
+
}
|
|
@@ -6,8 +6,9 @@ import Heading from '../Heading';
|
|
|
6
6
|
function PageTitle(props) {
|
|
7
7
|
var themeProps = useThemeValue('pageTitle');
|
|
8
8
|
return /*#__PURE__*/React.createElement(Heading, _extends({
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
color: "white",
|
|
10
|
+
fontSize: "25px",
|
|
11
|
+
level: 2
|
|
11
12
|
}, themeProps, props));
|
|
12
13
|
}
|
|
13
14
|
|
|
@@ -1,14 +1,36 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
1
3
|
import React from 'react';
|
|
2
4
|
import StackView from '../StackView';
|
|
5
|
+
import { useThemeValue } from '../system';
|
|
3
6
|
|
|
4
7
|
function PageToolbar(_ref) {
|
|
5
|
-
var
|
|
6
|
-
|
|
7
|
-
|
|
8
|
+
var _mediaQueries;
|
|
9
|
+
|
|
10
|
+
var stackBelow = _ref.stackBelow,
|
|
11
|
+
restProps = _objectWithoutPropertiesLoose(_ref, ["stackBelow"]);
|
|
12
|
+
|
|
13
|
+
var themeBreakpoints = useThemeValue('breakpoints');
|
|
14
|
+
var breakpoint = Object.keys(themeBreakpoints).includes(stackBelow) ? stackBelow : 'sm';
|
|
15
|
+
var stackProps = stackBelow ? {
|
|
16
|
+
axis: 'vertical',
|
|
17
|
+
alignment: 'stretch',
|
|
18
|
+
spacing: 2,
|
|
19
|
+
mediaQueries: (_mediaQueries = {}, _mediaQueries[breakpoint] = {
|
|
20
|
+
axis: 'horizontal',
|
|
21
|
+
alignment: 'center',
|
|
22
|
+
paddingBottom: 0,
|
|
23
|
+
spacing: 0
|
|
24
|
+
}, _mediaQueries)
|
|
25
|
+
} : null;
|
|
26
|
+
return /*#__PURE__*/React.createElement(StackView, _extends({
|
|
27
|
+
alignment: "center",
|
|
8
28
|
axis: "horizontal",
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
29
|
+
distribution: "space-between",
|
|
30
|
+
flex: 1,
|
|
31
|
+
spacing: 2,
|
|
32
|
+
width: "100%"
|
|
33
|
+
}, stackProps, restProps));
|
|
12
34
|
}
|
|
13
35
|
|
|
14
36
|
export default PageToolbar;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@planningcenter/tapestry-react",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.0",
|
|
4
4
|
"description": "A collection of flexible React components to help you build resilient, accessible user interfaces quickly and effectively.",
|
|
5
5
|
"author": "Front End Systems Engineering <frontend@pco.bz>",
|
|
6
6
|
"main": "dist/cjs/index.js",
|
package/src/Page/Page.mdx
CHANGED
|
@@ -4,6 +4,27 @@ category: General
|
|
|
4
4
|
summary: Page specific components.
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
+
```jsx live
|
|
8
|
+
render(
|
|
9
|
+
<Box width="100%">
|
|
10
|
+
<PageHeader>
|
|
11
|
+
<PageTitle>People</PageTitle>
|
|
12
|
+
</PageHeader>
|
|
13
|
+
<PageBody
|
|
14
|
+
sidebar={
|
|
15
|
+
<Sidebar grow={0}>
|
|
16
|
+
<Sidebar.Item active>Item 1</Sidebar.Item>
|
|
17
|
+
<Sidebar.Item>Item 2</Sidebar.Item>
|
|
18
|
+
<Sidebar.Item>Item 3</Sidebar.Item>
|
|
19
|
+
</Sidebar>
|
|
20
|
+
}
|
|
21
|
+
>
|
|
22
|
+
Regular body
|
|
23
|
+
</PageBody>
|
|
24
|
+
</Box>
|
|
25
|
+
)
|
|
26
|
+
```
|
|
27
|
+
|
|
7
28
|
```jsx live
|
|
8
29
|
render(
|
|
9
30
|
<Box width="100%">
|
|
@@ -33,6 +54,40 @@ render(
|
|
|
33
54
|
)
|
|
34
55
|
```
|
|
35
56
|
|
|
57
|
+
```jsx live
|
|
58
|
+
render(
|
|
59
|
+
<Box width="100%">
|
|
60
|
+
<PageHeader
|
|
61
|
+
toolbar={
|
|
62
|
+
<PageToolbar>
|
|
63
|
+
<PageTabList>
|
|
64
|
+
<PageTab active>My Schedule</PageTab>
|
|
65
|
+
<PageTab>All Plans</PageTab>
|
|
66
|
+
</PageTabList>
|
|
67
|
+
<PageActions>
|
|
68
|
+
<PageButton title="One" />
|
|
69
|
+
<PageButton title="Two" />
|
|
70
|
+
</PageActions>
|
|
71
|
+
</PageToolbar>
|
|
72
|
+
}
|
|
73
|
+
>
|
|
74
|
+
<PageTitle>People</PageTitle>
|
|
75
|
+
</PageHeader>
|
|
76
|
+
<PageBody
|
|
77
|
+
sidebar={
|
|
78
|
+
<Sidebar grow={0}>
|
|
79
|
+
<Sidebar.Item active>Item 1</Sidebar.Item>
|
|
80
|
+
<Sidebar.Item>Item 2</Sidebar.Item>
|
|
81
|
+
<Sidebar.Item>Item 3</Sidebar.Item>
|
|
82
|
+
</Sidebar>
|
|
83
|
+
}
|
|
84
|
+
>
|
|
85
|
+
Regular body
|
|
86
|
+
</PageBody>
|
|
87
|
+
</Box>
|
|
88
|
+
)
|
|
89
|
+
```
|
|
90
|
+
|
|
36
91
|
```jsx live
|
|
37
92
|
render(
|
|
38
93
|
<Box width="100%">
|
|
@@ -74,7 +129,7 @@ render(
|
|
|
74
129
|
|
|
75
130
|
## Theming
|
|
76
131
|
|
|
77
|
-
Use theme keys `pageBody`, `pageButton`, `pageDropdown`, and `pageTitle` to override `Page` component props.
|
|
132
|
+
Use theme keys `pageBody`, `pageButton`, `pageDropdown`, `pageHeader`, and `pageTitle` to override `Page` component props.
|
|
78
133
|
|
|
79
134
|
```jsx live
|
|
80
135
|
render(
|
package/src/Page/PageActions.js
CHANGED
|
@@ -3,7 +3,18 @@ import React from 'react'
|
|
|
3
3
|
import StackView from '../StackView'
|
|
4
4
|
|
|
5
5
|
function PageActions(props) {
|
|
6
|
-
return
|
|
6
|
+
return (
|
|
7
|
+
<StackView
|
|
8
|
+
alignment="center"
|
|
9
|
+
alignSelf="end"
|
|
10
|
+
axis="horizontal"
|
|
11
|
+
distribution="end"
|
|
12
|
+
flex="1"
|
|
13
|
+
paddingBottom={2}
|
|
14
|
+
spacing={1}
|
|
15
|
+
{...props}
|
|
16
|
+
/>
|
|
17
|
+
)
|
|
7
18
|
}
|
|
8
19
|
|
|
9
20
|
export default PageActions
|
package/src/Page/PageHeader.js
CHANGED
|
@@ -1,41 +1,35 @@
|
|
|
1
|
-
import React
|
|
1
|
+
import React from 'react'
|
|
2
2
|
|
|
3
3
|
import { useThemeValue } from '../system'
|
|
4
4
|
import StackView from '../StackView'
|
|
5
5
|
|
|
6
|
-
import { PAGE_TABLIST_DISPLAY_NAME } from './PageTabList'
|
|
7
|
-
|
|
8
6
|
function PageHeader({ children, toolbar, ...restProps }) {
|
|
9
7
|
const themeProps = useThemeValue('pageHeader')
|
|
10
|
-
const tabsPresent = toolbar
|
|
11
|
-
? Children.toArray(toolbar.props.children).some(
|
|
12
|
-
(child) => child && child.type.displayName === PAGE_TABLIST_DISPLAY_NAME
|
|
13
|
-
)
|
|
14
|
-
: false
|
|
15
|
-
const childrenToRender = toolbar
|
|
16
|
-
? children
|
|
17
|
-
? Children.toArray([
|
|
18
|
-
<StackView axis="horizontal" alignment="center" width="100%">
|
|
19
|
-
{children}
|
|
20
|
-
</StackView>,
|
|
21
|
-
toolbar,
|
|
22
|
-
])
|
|
23
|
-
: toolbar
|
|
24
|
-
: children
|
|
25
8
|
return (
|
|
26
9
|
<StackView
|
|
27
10
|
as="header"
|
|
28
|
-
axis=
|
|
29
|
-
alignment={children && toolbar ? 'start' : 'center'}
|
|
30
|
-
paddingHorizontal={3}
|
|
31
|
-
paddingTop={1.5}
|
|
32
|
-
paddingBottom={tabsPresent ? null : 1.5}
|
|
33
|
-
spacing={1.5}
|
|
11
|
+
axis="vertical"
|
|
34
12
|
backgroundColor="primary-light"
|
|
13
|
+
paddingHorizontal={2}
|
|
14
|
+
minHeight={8}
|
|
15
|
+
mediaQueries={{
|
|
16
|
+
sm: { paddingHorizontal: 3 },
|
|
17
|
+
}}
|
|
18
|
+
spacing={0}
|
|
35
19
|
{...themeProps}
|
|
36
20
|
{...restProps}
|
|
37
21
|
>
|
|
38
|
-
{
|
|
22
|
+
{children && (
|
|
23
|
+
<StackView
|
|
24
|
+
alignment="center"
|
|
25
|
+
axis="horizontal"
|
|
26
|
+
paddingTop={2}
|
|
27
|
+
width="100%"
|
|
28
|
+
>
|
|
29
|
+
{children}
|
|
30
|
+
</StackView>
|
|
31
|
+
)}
|
|
32
|
+
{toolbar}
|
|
39
33
|
</StackView>
|
|
40
34
|
)
|
|
41
35
|
}
|
package/src/Page/PageTab.js
CHANGED
|
@@ -1,9 +1,23 @@
|
|
|
1
1
|
import React from 'react'
|
|
2
2
|
|
|
3
3
|
import Tab from '../Tab'
|
|
4
|
+
import { useThemeValue } from '../system'
|
|
4
5
|
|
|
5
6
|
function PageTab(props) {
|
|
6
|
-
|
|
7
|
+
const themeProps = useThemeValue('pageTab')
|
|
8
|
+
return (
|
|
9
|
+
<Tab
|
|
10
|
+
mediaQueries={{
|
|
11
|
+
sm: {
|
|
12
|
+
paddingHorizontal: 3,
|
|
13
|
+
},
|
|
14
|
+
}}
|
|
15
|
+
paddingHorizontal={1.5}
|
|
16
|
+
size="lg"
|
|
17
|
+
{...themeProps}
|
|
18
|
+
{...props}
|
|
19
|
+
/>
|
|
20
|
+
)
|
|
7
21
|
}
|
|
8
22
|
|
|
9
23
|
export default PageTab
|
package/src/Page/PageTabList.js
CHANGED
|
@@ -2,12 +2,14 @@ import React from 'react'
|
|
|
2
2
|
|
|
3
3
|
import StackView from '../StackView'
|
|
4
4
|
|
|
5
|
-
export
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
export default function PageTabList(props) {
|
|
6
|
+
return (
|
|
7
|
+
<StackView
|
|
8
|
+
axis="horizontal"
|
|
9
|
+
paddingTop={2}
|
|
10
|
+
spacing={0.5}
|
|
11
|
+
alignSelf="end"
|
|
12
|
+
{...props}
|
|
13
|
+
/>
|
|
14
|
+
)
|
|
9
15
|
}
|
|
10
|
-
|
|
11
|
-
PageTabList.displayName = PAGE_TABLIST_DISPLAY_NAME
|
|
12
|
-
|
|
13
|
-
export default PageTabList
|
package/src/Page/PageTitle.js
CHANGED
|
@@ -5,7 +5,15 @@ import Heading from '../Heading'
|
|
|
5
5
|
|
|
6
6
|
function PageTitle(props) {
|
|
7
7
|
const themeProps = useThemeValue('pageTitle')
|
|
8
|
-
return
|
|
8
|
+
return (
|
|
9
|
+
<Heading
|
|
10
|
+
color="white"
|
|
11
|
+
fontSize="25px"
|
|
12
|
+
level={2}
|
|
13
|
+
{...themeProps}
|
|
14
|
+
{...props}
|
|
15
|
+
/>
|
|
16
|
+
)
|
|
9
17
|
}
|
|
10
18
|
|
|
11
19
|
export default PageTitle
|
package/src/Page/PageToolbar.js
CHANGED
|
@@ -1,17 +1,40 @@
|
|
|
1
1
|
import React from 'react'
|
|
2
2
|
|
|
3
3
|
import StackView from '../StackView'
|
|
4
|
+
import { useThemeValue } from '../system'
|
|
5
|
+
|
|
6
|
+
function PageToolbar({ stackBelow, ...restProps }) {
|
|
7
|
+
const themeBreakpoints = useThemeValue('breakpoints')
|
|
8
|
+
const breakpoint = Object.keys(themeBreakpoints).includes(stackBelow)
|
|
9
|
+
? stackBelow
|
|
10
|
+
: 'sm'
|
|
11
|
+
const stackProps = stackBelow
|
|
12
|
+
? {
|
|
13
|
+
axis: 'vertical',
|
|
14
|
+
alignment: 'stretch',
|
|
15
|
+
spacing: 2,
|
|
16
|
+
mediaQueries: {
|
|
17
|
+
[breakpoint]: {
|
|
18
|
+
axis: 'horizontal',
|
|
19
|
+
alignment: 'center',
|
|
20
|
+
paddingBottom: 0,
|
|
21
|
+
spacing: 0,
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
}
|
|
25
|
+
: null
|
|
4
26
|
|
|
5
|
-
function PageToolbar({ children }) {
|
|
6
27
|
return (
|
|
7
28
|
<StackView
|
|
8
|
-
|
|
29
|
+
alignment="center"
|
|
9
30
|
axis="horizontal"
|
|
10
|
-
alignment="start"
|
|
11
31
|
distribution="space-between"
|
|
12
|
-
|
|
13
|
-
{
|
|
14
|
-
|
|
32
|
+
flex={1}
|
|
33
|
+
spacing={2}
|
|
34
|
+
width="100%"
|
|
35
|
+
{...stackProps}
|
|
36
|
+
{...restProps}
|
|
37
|
+
/>
|
|
15
38
|
)
|
|
16
39
|
}
|
|
17
40
|
|