@elliemae/ds-page-header 2.2.0-alpha.4 → 3.0.0-next.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.
- package/cjs/DSPageHeader.js +21 -36
- package/cjs/index.js +26 -43
- package/cjs/v1/DSPageHeader.js +120 -93
- package/cjs/v1/DropdownTitle.js +35 -49
- package/cjs/v1/EditableTitle.js +54 -68
- package/cjs/v1/PageHeaderImpl.js +116 -122
- package/cjs/v1/Title.js +24 -42
- package/cjs/v1/TitleWrapper.js +8 -37
- package/cjs/v2/PageHeader.js +89 -104
- package/cjs/v2/components/PageHeaderBack/PageHeaderBack.js +36 -38
- package/cjs/v2/components/PageHeaderEditableTitle/PageHeaderEditableTitle.js +101 -87
- package/cjs/v2/components/PageHeaderMenu/PageHeaderMenu.js +36 -38
- package/cjs/v2/components/PageHeaderSummary/PageHeaderSummary.js +57 -50
- package/cjs/v2/components/PageHeaderTitle/PageHeaderTitle.js +60 -51
- package/cjs/v2/components/PageHeaderToolbar/PageHeaderToolbar.js +36 -38
- package/cjs/v2/components/blocks.js +24 -48
- package/cjs/v2/props.js +32 -44
- package/esm/DSPageHeader.js +6 -7
- package/esm/index.js +6 -14
- package/esm/v1/DSPageHeader.js +109 -65
- package/esm/v1/DropdownTitle.js +27 -20
- package/esm/v1/EditableTitle.js +42 -35
- package/esm/v1/PageHeaderImpl.js +110 -95
- package/esm/v1/Title.js +17 -13
- package/esm/v1/TitleWrapper.js +6 -8
- package/esm/v2/PageHeader.js +70 -72
- package/esm/v2/components/PageHeaderBack/PageHeaderBack.js +27 -9
- package/esm/v2/components/PageHeaderEditableTitle/PageHeaderEditableTitle.js +83 -53
- package/esm/v2/components/PageHeaderMenu/PageHeaderMenu.js +27 -9
- package/esm/v2/components/PageHeaderSummary/PageHeaderSummary.js +46 -21
- package/esm/v2/components/PageHeaderTitle/PageHeaderTitle.js +47 -22
- package/esm/v2/components/PageHeaderToolbar/PageHeaderToolbar.js +27 -9
- package/esm/v2/components/blocks.js +13 -20
- package/esm/v2/props.js +27 -15
- package/package.json +11 -11
- package/cjs/DSPageHeader.js.map +0 -7
- package/cjs/index.js.map +0 -7
- package/cjs/v1/DSPageHeader.js.map +0 -7
- package/cjs/v1/DropdownTitle.js.map +0 -7
- package/cjs/v1/EditableTitle.js.map +0 -7
- package/cjs/v1/PageHeaderImpl.js.map +0 -7
- package/cjs/v1/Title.js.map +0 -7
- package/cjs/v1/TitleWrapper.js.map +0 -7
- package/cjs/v2/PageHeader.js.map +0 -7
- package/cjs/v2/components/PageHeaderBack/PageHeaderBack.js.map +0 -7
- package/cjs/v2/components/PageHeaderEditableTitle/PageHeaderEditableTitle.js.map +0 -7
- package/cjs/v2/components/PageHeaderMenu/PageHeaderMenu.js.map +0 -7
- package/cjs/v2/components/PageHeaderSummary/PageHeaderSummary.js.map +0 -7
- package/cjs/v2/components/PageHeaderTitle/PageHeaderTitle.js.map +0 -7
- package/cjs/v2/components/PageHeaderToolbar/PageHeaderToolbar.js.map +0 -7
- package/cjs/v2/components/blocks.js.map +0 -7
- package/cjs/v2/props.js.map +0 -7
- package/cjs/v2/tests/utils.js +0 -123
- package/cjs/v2/tests/utils.js.map +0 -7
- package/esm/DSPageHeader.js.map +0 -7
- package/esm/index.js.map +0 -7
- package/esm/v1/DSPageHeader.js.map +0 -7
- package/esm/v1/DropdownTitle.js.map +0 -7
- package/esm/v1/EditableTitle.js.map +0 -7
- package/esm/v1/PageHeaderImpl.js.map +0 -7
- package/esm/v1/Title.js.map +0 -7
- package/esm/v1/TitleWrapper.js.map +0 -7
- package/esm/v2/PageHeader.js.map +0 -7
- package/esm/v2/components/PageHeaderBack/PageHeaderBack.js.map +0 -7
- package/esm/v2/components/PageHeaderEditableTitle/PageHeaderEditableTitle.js.map +0 -7
- package/esm/v2/components/PageHeaderMenu/PageHeaderMenu.js.map +0 -7
- package/esm/v2/components/PageHeaderSummary/PageHeaderSummary.js.map +0 -7
- package/esm/v2/components/PageHeaderTitle/PageHeaderTitle.js.map +0 -7
- package/esm/v2/components/PageHeaderToolbar/PageHeaderToolbar.js.map +0 -7
- package/esm/v2/components/blocks.js.map +0 -7
- package/esm/v2/props.js.map +0 -7
- package/esm/v2/tests/utils.js +0 -94
- package/esm/v2/tests/utils.js.map +0 -7
package/esm/v1/PageHeaderImpl.js
CHANGED
|
@@ -1,106 +1,121 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
1
|
+
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
2
|
+
import _jsx from '@babel/runtime/helpers/esm/jsx';
|
|
3
|
+
import 'core-js/modules/esnext.async-iterator.map.js';
|
|
4
|
+
import 'core-js/modules/esnext.iterator.map.js';
|
|
5
|
+
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
6
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
7
|
+
import 'core-js/modules/esnext.iterator.filter.js';
|
|
8
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
9
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
10
|
+
import 'react';
|
|
11
|
+
import { isFunction } from '@elliemae/ds-utilities';
|
|
12
|
+
import { aggregatedClasses } from '@elliemae/ds-classnames';
|
|
13
|
+
import { ChevronLeft } from '@elliemae/ds-icons';
|
|
14
|
+
import DSBreadcrumb from '@elliemae/ds-breadcrumb';
|
|
15
|
+
import { DSIconSizes } from '@elliemae/ds-icon';
|
|
16
|
+
import EditableTitle from './EditableTitle.js';
|
|
17
|
+
import Title from './Title.js';
|
|
18
|
+
import DropdownTitle from './DropdownTitle.js';
|
|
19
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
20
|
+
|
|
21
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
22
|
+
|
|
23
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
24
|
+
const blockName = 'page-header';
|
|
25
|
+
const PageHeaderContainer = aggregatedClasses('div')(blockName, null, _ref => {
|
|
26
|
+
let {
|
|
27
|
+
withBottomSeparator,
|
|
28
|
+
subtitle
|
|
29
|
+
} = _ref;
|
|
30
|
+
return {
|
|
31
|
+
'with-bottom-separator': withBottomSeparator,
|
|
32
|
+
'with-subtitle': subtitle
|
|
33
|
+
};
|
|
34
|
+
});
|
|
35
|
+
const PageHeaderMainSection = aggregatedClasses('div')("".concat(blockName, "-main-section"));
|
|
36
|
+
const PageHeaderTitleSection = aggregatedClasses('div')("".concat(blockName, "-title-section"));
|
|
37
|
+
const PageHeaderToolbar = aggregatedClasses('div')("".concat(blockName, "-toolbar"), null, () => ({
|
|
38
|
+
'ie-flex-basis-auto': true
|
|
15
39
|
}));
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
function HeaderTitle({
|
|
26
|
-
title = "",
|
|
27
|
-
options = [],
|
|
28
|
-
optionsMinWidth,
|
|
29
|
-
onSelectOption = () => null,
|
|
30
|
-
selection,
|
|
31
|
-
subtitle = "",
|
|
32
|
-
editable = false,
|
|
33
|
-
editing = false,
|
|
34
|
-
titleInputProps,
|
|
35
|
-
zIndex
|
|
36
|
-
}) {
|
|
37
|
-
const titleComponent = editable ? /* @__PURE__ */ React2.createElement(EditableTitle, {
|
|
38
|
-
editing,
|
|
39
|
-
titleInputProps
|
|
40
|
-
}, title) : /* @__PURE__ */ React2.createElement(Title, null, title);
|
|
41
|
-
return /* @__PURE__ */ React2.createElement(PageHeaderTitle, null, options.length ? /* @__PURE__ */ React2.createElement(DropdownTitle, {
|
|
42
|
-
onSelectOption,
|
|
43
|
-
options,
|
|
40
|
+
const PageHeaderBreadcrumb = aggregatedClasses(DSBreadcrumb)("".concat(blockName, "-breadcrumb"));
|
|
41
|
+
const PageHeaderTitle = aggregatedClasses('div')("".concat(blockName, "-title"));
|
|
42
|
+
const Subtitle = aggregatedClasses('div')("".concat(blockName, "-title"), 'subtitle');
|
|
43
|
+
const BackArrow = aggregatedClasses(ChevronLeft)("".concat(blockName, "-backarrow"));
|
|
44
|
+
|
|
45
|
+
function HeaderTitle(_ref2) {
|
|
46
|
+
let {
|
|
47
|
+
title = '',
|
|
48
|
+
options = [],
|
|
44
49
|
optionsMinWidth,
|
|
50
|
+
onSelectOption = () => null,
|
|
45
51
|
selection,
|
|
46
|
-
|
|
52
|
+
subtitle = '',
|
|
53
|
+
editable = false,
|
|
54
|
+
editing = false,
|
|
55
|
+
titleInputProps,
|
|
47
56
|
zIndex
|
|
48
|
-
}
|
|
57
|
+
} = _ref2;
|
|
58
|
+
const titleComponent = editable ? /*#__PURE__*/_jsx(EditableTitle, {
|
|
59
|
+
editing: editing,
|
|
60
|
+
titleInputProps: titleInputProps
|
|
61
|
+
}, void 0, title) : /*#__PURE__*/_jsx(Title, {}, void 0, title);
|
|
62
|
+
return /*#__PURE__*/_jsx(PageHeaderTitle, {}, void 0, options.length ? /*#__PURE__*/_jsx(DropdownTitle, {
|
|
63
|
+
onSelectOption: onSelectOption,
|
|
64
|
+
options: options,
|
|
65
|
+
optionsMinWidth: optionsMinWidth,
|
|
66
|
+
selection: selection,
|
|
67
|
+
titleComponent: titleComponent,
|
|
68
|
+
zIndex: zIndex
|
|
69
|
+
}) : titleComponent, subtitle && /*#__PURE__*/_jsx(Subtitle, {}, void 0, subtitle));
|
|
49
70
|
}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
titleOptions,
|
|
55
|
-
renderToolbar,
|
|
56
|
-
breadcrumbs = [],
|
|
57
|
-
previousPage,
|
|
58
|
-
onGoToPreviousPage = () => null,
|
|
59
|
-
subtitle = "",
|
|
60
|
-
withBottomSeparator,
|
|
61
|
-
onSelectOption,
|
|
62
|
-
optionsSelection,
|
|
63
|
-
optionsMinWidth,
|
|
64
|
-
editable = false,
|
|
65
|
-
titleInputProps,
|
|
66
|
-
editing = void 0,
|
|
67
|
-
zIndex
|
|
68
|
-
}) {
|
|
69
|
-
const hasBreadcrumbs = !!breadcrumbs.length;
|
|
70
|
-
return /* @__PURE__ */ React2.createElement(PageHeaderContainer, {
|
|
71
|
-
...containerProps,
|
|
71
|
+
|
|
72
|
+
function PageHeaderImpl(_ref3) {
|
|
73
|
+
let {
|
|
74
|
+
containerProps,
|
|
72
75
|
className,
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
}), /* @__PURE__ */ React2.createElement(PageHeaderMainSection, null, hasBreadcrumbs && /* @__PURE__ */ React2.createElement(PageHeaderBreadcrumb, null, breadcrumbs.map((breadcrumb) => /* @__PURE__ */ React2.createElement(DSBreadcrumb.Item, {
|
|
82
|
-
key: breadcrumb.label,
|
|
83
|
-
...breadcrumb
|
|
84
|
-
}))), previousPage && /* @__PURE__ */ React2.createElement(PageHeaderBreadcrumb, null, /* @__PURE__ */ React2.createElement(DSBreadcrumb.Item, {
|
|
85
|
-
key: previousPage.id,
|
|
86
|
-
label: previousPage.title,
|
|
87
|
-
onClick: previousPage.onClick,
|
|
88
|
-
...previousPage
|
|
89
|
-
})), /* @__PURE__ */ React2.createElement(PageHeaderTitleSection, null, /* @__PURE__ */ React2.createElement(HeaderTitle, {
|
|
90
|
-
editable,
|
|
91
|
-
editing,
|
|
76
|
+
title,
|
|
77
|
+
titleOptions,
|
|
78
|
+
renderToolbar,
|
|
79
|
+
breadcrumbs = [],
|
|
80
|
+
previousPage,
|
|
81
|
+
onGoToPreviousPage = () => null,
|
|
82
|
+
subtitle = '',
|
|
83
|
+
withBottomSeparator,
|
|
92
84
|
onSelectOption,
|
|
93
|
-
|
|
85
|
+
optionsSelection,
|
|
94
86
|
optionsMinWidth,
|
|
95
|
-
|
|
96
|
-
subtitle,
|
|
97
|
-
title,
|
|
87
|
+
editable = false,
|
|
98
88
|
titleInputProps,
|
|
89
|
+
editing = undefined,
|
|
99
90
|
zIndex
|
|
100
|
-
}
|
|
91
|
+
} = _ref3;
|
|
92
|
+
const hasBreadcrumbs = !!breadcrumbs.length;
|
|
93
|
+
return /*#__PURE__*/jsxs(PageHeaderContainer, _objectSpread(_objectSpread({}, containerProps), {}, {
|
|
94
|
+
className: className,
|
|
95
|
+
classProps: {
|
|
96
|
+
withBottomSeparator,
|
|
97
|
+
subtitle
|
|
98
|
+
},
|
|
99
|
+
children: [previousPage && /*#__PURE__*/_jsx(BackArrow, {
|
|
100
|
+
"data-testid": "back-arrow",
|
|
101
|
+
onClick: onGoToPreviousPage,
|
|
102
|
+
size: DSIconSizes.M
|
|
103
|
+
}), /*#__PURE__*/_jsx(PageHeaderMainSection, {}, void 0, hasBreadcrumbs && /*#__PURE__*/_jsx(PageHeaderBreadcrumb, {}, void 0, breadcrumbs.map(breadcrumb => /*#__PURE__*/jsx(DSBreadcrumb.Item, _objectSpread({}, breadcrumb), breadcrumb.label))), previousPage && /*#__PURE__*/_jsx(PageHeaderBreadcrumb, {}, void 0, /*#__PURE__*/jsx(DSBreadcrumb.Item, _objectSpread({
|
|
104
|
+
label: previousPage.title,
|
|
105
|
+
onClick: previousPage.onClick
|
|
106
|
+
}, previousPage), previousPage.id)), /*#__PURE__*/_jsx(PageHeaderTitleSection, {}, void 0, /*#__PURE__*/_jsx(HeaderTitle, {
|
|
107
|
+
editable: editable,
|
|
108
|
+
editing: editing,
|
|
109
|
+
onSelectOption: onSelectOption,
|
|
110
|
+
options: titleOptions,
|
|
111
|
+
optionsMinWidth: optionsMinWidth,
|
|
112
|
+
selection: optionsSelection,
|
|
113
|
+
subtitle: subtitle,
|
|
114
|
+
title: title,
|
|
115
|
+
titleInputProps: titleInputProps,
|
|
116
|
+
zIndex: zIndex
|
|
117
|
+
}), isFunction(renderToolbar) && /*#__PURE__*/_jsx(PageHeaderToolbar, {}, void 0, renderToolbar())))]
|
|
118
|
+
}));
|
|
101
119
|
}
|
|
102
|
-
|
|
103
|
-
export {
|
|
104
|
-
PageHeaderImpl_default as default
|
|
105
|
-
};
|
|
106
|
-
//# sourceMappingURL=PageHeaderImpl.js.map
|
|
120
|
+
|
|
121
|
+
export { PageHeaderImpl as default };
|
package/esm/v1/Title.js
CHANGED
|
@@ -1,14 +1,18 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import { aggregatedClasses } from
|
|
4
|
-
import DSTruncatedTooltipText from
|
|
5
|
-
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
1
|
+
import _jsx from '@babel/runtime/helpers/esm/jsx';
|
|
2
|
+
import 'react';
|
|
3
|
+
import { aggregatedClasses } from '@elliemae/ds-classnames';
|
|
4
|
+
import DSTruncatedTooltipText from '@elliemae/ds-truncated-tooltip-text';
|
|
5
|
+
|
|
6
|
+
const blockName = 'page-header';
|
|
7
|
+
const TitleWrapper = aggregatedClasses(DSTruncatedTooltipText)("".concat(blockName, "-title"), 'title');
|
|
8
|
+
|
|
9
|
+
const Title = _ref => {
|
|
10
|
+
let {
|
|
11
|
+
children
|
|
12
|
+
} = _ref;
|
|
13
|
+
return /*#__PURE__*/_jsx(TitleWrapper, {
|
|
14
|
+
value: children
|
|
15
|
+
});
|
|
13
16
|
};
|
|
14
|
-
|
|
17
|
+
|
|
18
|
+
export { Title as default };
|
package/esm/v1/TitleWrapper.js
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
const blockName =
|
|
4
|
-
var
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
};
|
|
8
|
-
//# sourceMappingURL=TitleWrapper.js.map
|
|
1
|
+
import { aggregatedClasses } from '@elliemae/ds-classnames';
|
|
2
|
+
|
|
3
|
+
const blockName = 'page-header';
|
|
4
|
+
var TitleWrapper = aggregatedClasses('span')("".concat(blockName, "-title-wrapper"));
|
|
5
|
+
|
|
6
|
+
export { TitleWrapper as default };
|
package/esm/v2/PageHeader.js
CHANGED
|
@@ -1,77 +1,75 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import
|
|
12
|
-
import {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
const
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
1
|
+
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
2
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
3
|
+
import 'core-js/modules/esnext.iterator.filter.js';
|
|
4
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
5
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
6
|
+
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
7
|
+
import _jsx from '@babel/runtime/helpers/esm/jsx';
|
|
8
|
+
import 'react';
|
|
9
|
+
import { describe } from 'react-desc';
|
|
10
|
+
import { compact } from 'lodash';
|
|
11
|
+
import styled from 'styled-components';
|
|
12
|
+
import { Grid } from '@elliemae/ds-grid';
|
|
13
|
+
export { PageHeaderTitle } from './components/PageHeaderTitle/PageHeaderTitle.js';
|
|
14
|
+
export { PageHeaderEditableTitle } from './components/PageHeaderEditableTitle/PageHeaderEditableTitle.js';
|
|
15
|
+
export { PageHeaderSummary } from './components/PageHeaderSummary/PageHeaderSummary.js';
|
|
16
|
+
import { PageHeaderMenu } from './components/PageHeaderMenu/PageHeaderMenu.js';
|
|
17
|
+
export { PageHeaderMenu } from './components/PageHeaderMenu/PageHeaderMenu.js';
|
|
18
|
+
import { PageHeaderToolbar } from './components/PageHeaderToolbar/PageHeaderToolbar.js';
|
|
19
|
+
import { PageHeaderBack } from './components/PageHeaderBack/PageHeaderBack.js';
|
|
20
|
+
import './components/blocks.js';
|
|
21
|
+
import { navProps, defaultProps } from './props.js';
|
|
22
|
+
import { jsx } from 'react/jsx-runtime';
|
|
23
|
+
import { cssPrefix } from '@elliemae/ds-classnames';
|
|
24
|
+
|
|
25
|
+
var _div;
|
|
26
|
+
|
|
27
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
28
|
+
|
|
29
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
30
|
+
const PageHeaderCustomRenderer = /*#__PURE__*/styled.div.withConfig({
|
|
31
|
+
componentId: "sc-ps4m9w-0"
|
|
32
|
+
})(["width:auto;color:", ";font-style:italic;font-size:0.8rem;"], props => props.theme.colors.brand[800]);
|
|
33
|
+
const Container = /*#__PURE__*/styled.div.withConfig({
|
|
34
|
+
componentId: "sc-ps4m9w-1"
|
|
35
|
+
})(["width:100%;margin-bottom:8px;"]);
|
|
36
|
+
const ContainerWBorder = /*#__PURE__*/styled.div.withConfig({
|
|
37
|
+
componentId: "sc-ps4m9w-2"
|
|
38
|
+
})(["width:100%;padding:12px 0 8px 0;display:grid;align-items:center;height:100%;", ""], props => !props.withBottomSeparator ? '' : "border-bottom: solid 1px ".concat(props.theme.colors.neutral[400], ";"));
|
|
39
|
+
|
|
40
|
+
const DSPageHeaderV2 = _ref => {
|
|
41
|
+
let {
|
|
42
|
+
containerProps,
|
|
43
|
+
breadcrumbs,
|
|
44
|
+
pageTitle,
|
|
45
|
+
backarrow,
|
|
46
|
+
summary,
|
|
47
|
+
toolbar,
|
|
48
|
+
menu,
|
|
49
49
|
withBottomSeparator
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
50
|
+
} = _ref;
|
|
51
|
+
const wrapperRow = ['auto', 1];
|
|
52
|
+
const mainRow = compact([1, 'auto']);
|
|
53
|
+
const pageTitleRow = compact(['auto', menu && '30px', summary && 'auto', 1]);
|
|
54
|
+
return /*#__PURE__*/jsx(Container, _objectSpread(_objectSpread({}, containerProps), {}, {
|
|
55
|
+
children: /*#__PURE__*/_jsx(ContainerWBorder, {
|
|
56
|
+
withBottomSeparator: withBottomSeparator
|
|
57
|
+
}, void 0, /*#__PURE__*/_jsx(Grid, {
|
|
58
|
+
cols: wrapperRow
|
|
59
|
+
}, void 0, /*#__PURE__*/_jsx(Grid, {}, void 0, /*#__PURE__*/_jsx(PageHeaderBack, {}, void 0, backarrow)), /*#__PURE__*/_jsx(Grid, {
|
|
60
|
+
rows: ['auto', 'auto']
|
|
61
|
+
}, void 0, /*#__PURE__*/_jsx(Grid, {
|
|
62
|
+
className: "".concat(cssPrefix, "-page-header-v2-breadcrumb")
|
|
63
|
+
}, void 0, breadcrumbs), /*#__PURE__*/_jsx(Grid, {
|
|
64
|
+
cols: mainRow
|
|
65
|
+
}, void 0, /*#__PURE__*/_jsx(Grid, {
|
|
66
|
+
cols: pageTitleRow
|
|
67
|
+
}, void 0, pageTitle, menu && /*#__PURE__*/_jsx(PageHeaderMenu, {}, void 0, menu), summary, _div || (_div = /*#__PURE__*/_jsx("div", {}))), /*#__PURE__*/_jsx(Grid, {}, void 0, /*#__PURE__*/_jsx(PageHeaderToolbar, {}, void 0, toolbar))))))
|
|
68
|
+
}));
|
|
61
69
|
};
|
|
62
|
-
|
|
70
|
+
|
|
63
71
|
DSPageHeaderV2.defaultProps = defaultProps;
|
|
64
72
|
const DSPageHeaderWithSchema = describe(DSPageHeaderV2);
|
|
65
73
|
DSPageHeaderWithSchema.propTypes = navProps;
|
|
66
|
-
|
|
67
|
-
export {
|
|
68
|
-
DSPageHeaderV2,
|
|
69
|
-
DSPageHeaderWithSchema,
|
|
70
|
-
PageHeaderCustomRenderer,
|
|
71
|
-
PageHeaderEditableTitle,
|
|
72
|
-
PageHeaderMenu,
|
|
73
|
-
PageHeaderSummary,
|
|
74
|
-
PageHeaderTitle,
|
|
75
|
-
PageHeader_default as default
|
|
76
|
-
};
|
|
77
|
-
//# sourceMappingURL=PageHeader.js.map
|
|
74
|
+
|
|
75
|
+
export { DSPageHeaderV2, DSPageHeaderWithSchema, PageHeaderCustomRenderer, DSPageHeaderV2 as default };
|
|
@@ -1,10 +1,28 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
1
|
+
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
2
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
3
|
+
import 'core-js/modules/esnext.iterator.filter.js';
|
|
4
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
5
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
6
|
+
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
7
|
+
import _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';
|
|
8
|
+
import 'react';
|
|
9
|
+
import { PageHeaderBackWrapper } from '../blocks.js';
|
|
10
|
+
import { jsx } from 'react/jsx-runtime';
|
|
11
|
+
|
|
12
|
+
const _excluded = ["children"];
|
|
13
|
+
|
|
14
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
15
|
+
|
|
16
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
17
|
+
const PageHeaderBack = _ref => {
|
|
18
|
+
let {
|
|
19
|
+
children
|
|
20
|
+
} = _ref,
|
|
21
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
22
|
+
|
|
23
|
+
return /*#__PURE__*/jsx(PageHeaderBackWrapper, _objectSpread(_objectSpread({}, rest), {}, {
|
|
24
|
+
children: children
|
|
25
|
+
}));
|
|
9
26
|
};
|
|
10
|
-
|
|
27
|
+
|
|
28
|
+
export { PageHeaderBack };
|
|
@@ -1,78 +1,108 @@
|
|
|
1
|
-
import
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
})
|
|
1
|
+
import _jsx from '@babel/runtime/helpers/esm/jsx';
|
|
2
|
+
import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';
|
|
3
|
+
import _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';
|
|
4
|
+
import 'core-js/modules/web.dom-collections.iterator.js';
|
|
5
|
+
import 'core-js/modules/esnext.async-iterator.filter.js';
|
|
6
|
+
import 'core-js/modules/esnext.iterator.constructor.js';
|
|
7
|
+
import 'core-js/modules/esnext.iterator.filter.js';
|
|
8
|
+
import 'core-js/modules/esnext.async-iterator.for-each.js';
|
|
9
|
+
import 'core-js/modules/esnext.iterator.for-each.js';
|
|
10
|
+
import { useState, useRef } from 'react';
|
|
11
|
+
import { noop } from 'lodash';
|
|
12
|
+
import styled from 'styled-components';
|
|
13
|
+
import { PropTypes, describe } from 'react-desc';
|
|
14
|
+
import { useDerivedStateFromProps, useMeasure } from '@elliemae/ds-utilities';
|
|
15
|
+
import { EditableTitleComponent } from '../blocks.js';
|
|
16
|
+
import { PageHeaderTitle } from '../PageHeaderTitle/PageHeaderTitle.js';
|
|
17
|
+
import { jsx } from 'react/jsx-runtime';
|
|
18
|
+
|
|
19
|
+
const _excluded = ["children", "editing", "onBlur", "onChange", "onFocus", "onMouseOut", "showMarker"];
|
|
20
|
+
|
|
21
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
22
|
+
|
|
23
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
24
|
+
const EditableContainer = /*#__PURE__*/styled.div.withConfig({
|
|
25
|
+
componentId: "sc-v0pkny-0"
|
|
26
|
+
})(["height:32px;position:relative;overflow:hidden;"]);
|
|
27
|
+
const PageHeaderEditableTitle = _ref => {
|
|
28
|
+
let {
|
|
29
|
+
children: value,
|
|
30
|
+
editing: editingProp = false,
|
|
31
|
+
onBlur = noop,
|
|
32
|
+
onChange = noop,
|
|
33
|
+
onFocus = noop,
|
|
34
|
+
onMouseOut = noop,
|
|
35
|
+
showMarker = false
|
|
36
|
+
} = _ref,
|
|
37
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
38
|
+
|
|
24
39
|
const [titleValue, setTitleValue] = useState(value);
|
|
25
40
|
const [hovered, setHovered] = useState(false);
|
|
26
41
|
const [editing, setEditing] = useDerivedStateFromProps(editingProp || false);
|
|
27
42
|
const titleRef = useRef(null);
|
|
28
|
-
const {
|
|
29
|
-
|
|
30
|
-
|
|
43
|
+
const {
|
|
44
|
+
width
|
|
45
|
+
} = useMeasure(titleRef);
|
|
46
|
+
return /*#__PURE__*/_jsx(EditableContainer, {
|
|
47
|
+
className: hovered || editing ? 'editable-title-component' : '',
|
|
31
48
|
onMouseEnter: () => setHovered(true),
|
|
32
49
|
onMouseLeave: () => setHovered(false)
|
|
33
|
-
}, (hovered || editing) &&
|
|
34
|
-
|
|
35
|
-
onBlur: (e) => {
|
|
50
|
+
}, void 0, (hovered || editing) && /*#__PURE__*/jsx(EditableTitleComponent, _objectSpread(_objectSpread({}, rest), {}, {
|
|
51
|
+
onBlur: e => {
|
|
36
52
|
setEditing(false);
|
|
37
53
|
onBlur(e);
|
|
38
54
|
},
|
|
39
|
-
onChange:
|
|
55
|
+
onChange: e => {
|
|
40
56
|
setTitleValue(e.target.value);
|
|
41
57
|
onChange(e);
|
|
42
58
|
},
|
|
43
|
-
onFocus:
|
|
59
|
+
onFocus: e => {
|
|
44
60
|
setEditing(true);
|
|
45
61
|
onFocus(e);
|
|
46
62
|
},
|
|
47
|
-
onMouseOut:
|
|
63
|
+
onMouseOut: e => {
|
|
48
64
|
setHovered(false);
|
|
49
65
|
onMouseOut(e);
|
|
50
66
|
},
|
|
51
|
-
style: {
|
|
67
|
+
style: {
|
|
68
|
+
width: width + 10,
|
|
69
|
+
minWidth: '260px',
|
|
70
|
+
maxWidth: '100%'
|
|
71
|
+
},
|
|
52
72
|
value: titleValue
|
|
53
|
-
}),
|
|
73
|
+
})), /*#__PURE__*/jsx("div", {
|
|
54
74
|
ref: titleRef,
|
|
55
|
-
style: {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
75
|
+
style: {
|
|
76
|
+
width: 'fit-content'
|
|
77
|
+
},
|
|
78
|
+
children: /*#__PURE__*/_jsx(PageHeaderTitle, {
|
|
79
|
+
showMarker: showMarker && !hovered && !editing
|
|
80
|
+
}, void 0, titleValue)
|
|
81
|
+
}));
|
|
59
82
|
};
|
|
60
83
|
const props = {
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
84
|
+
/** The title text */
|
|
85
|
+
children: PropTypes.string.description('The title text'),
|
|
86
|
+
|
|
87
|
+
/** Whether the title is editing or not */
|
|
88
|
+
editing: PropTypes.bool.description('Whether the title is editing or not'),
|
|
89
|
+
|
|
90
|
+
/** Show error marker */
|
|
91
|
+
showMarker: PropTypes.bool.description('Show error marker'),
|
|
92
|
+
|
|
93
|
+
/** blur callback */
|
|
94
|
+
onBlur: PropTypes.func.description('blur callback'),
|
|
95
|
+
|
|
96
|
+
/** on change handler */
|
|
97
|
+
onChange: PropTypes.func.description('on change handler'),
|
|
98
|
+
|
|
99
|
+
/** on focus handler */
|
|
100
|
+
onFocus: PropTypes.func.description('on focus handler'),
|
|
101
|
+
|
|
102
|
+
/** mouse out of component handler */
|
|
103
|
+
onMouseOut: PropTypes.func.description('mouse out of component handler')
|
|
68
104
|
};
|
|
69
|
-
PageHeaderEditableTitle.propTypes = props;
|
|
70
105
|
const DSPageHeaderEditableTitleWithSchema = describe(PageHeaderEditableTitle);
|
|
71
106
|
DSPageHeaderEditableTitleWithSchema.propTypes = props;
|
|
72
|
-
|
|
73
|
-
export {
|
|
74
|
-
DSPageHeaderEditableTitleWithSchema,
|
|
75
|
-
PageHeaderEditableTitle,
|
|
76
|
-
PageHeaderEditableTitle_default as default
|
|
77
|
-
};
|
|
78
|
-
//# sourceMappingURL=PageHeaderEditableTitle.js.map
|
|
107
|
+
|
|
108
|
+
export { DSPageHeaderEditableTitleWithSchema, PageHeaderEditableTitle, PageHeaderEditableTitle as default };
|