@elliemae/ds-page-header-v2 3.60.0-next.4 → 3.60.0-next.40
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/PageHeader.js +25 -11
- package/dist/cjs/PageHeader.js.map +3 -3
- package/dist/cjs/components/page-header-editable-title/PageHeaderEditableTitle.js +33 -21
- package/dist/cjs/components/page-header-editable-title/PageHeaderEditableTitle.js.map +2 -2
- package/dist/cjs/components/page-header-summary/PageHeaderSummary.js +20 -7
- package/dist/cjs/components/page-header-summary/PageHeaderSummary.js.map +2 -2
- package/dist/cjs/components/page-header-title/PageHeaderTitle.js +12 -8
- package/dist/cjs/components/page-header-title/PageHeaderTitle.js.map +2 -2
- package/dist/cjs/components/page-header-title/RequiredMark.js +63 -0
- package/dist/cjs/components/page-header-title/RequiredMark.js.map +7 -0
- package/dist/cjs/components/page-header-title/react-desc-prop-types.js.map +2 -2
- package/dist/cjs/config/usePageHeader.js +5 -1
- package/dist/cjs/config/usePageHeader.js.map +2 -2
- package/dist/cjs/{exported-related/theming.js → constants/index.js} +27 -6
- package/dist/cjs/constants/index.js.map +7 -0
- package/dist/cjs/exported-related/index.js +0 -2
- package/dist/cjs/exported-related/index.js.map +2 -2
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/index.js.map +2 -2
- package/dist/cjs/styled.js +15 -9
- package/dist/cjs/styled.js.map +2 -2
- package/dist/esm/PageHeader.js +26 -11
- package/dist/esm/PageHeader.js.map +3 -3
- package/dist/esm/components/page-header-editable-title/PageHeaderEditableTitle.js +35 -23
- package/dist/esm/components/page-header-editable-title/PageHeaderEditableTitle.js.map +2 -2
- package/dist/esm/components/page-header-summary/PageHeaderSummary.js +19 -6
- package/dist/esm/components/page-header-summary/PageHeaderSummary.js.map +2 -2
- package/dist/esm/components/page-header-title/PageHeaderTitle.js +11 -7
- package/dist/esm/components/page-header-title/PageHeaderTitle.js.map +2 -2
- package/dist/esm/components/page-header-title/RequiredMark.js +33 -0
- package/dist/esm/components/page-header-title/RequiredMark.js.map +7 -0
- package/dist/esm/components/page-header-title/react-desc-prop-types.js.map +2 -2
- package/dist/esm/config/usePageHeader.js +6 -2
- package/dist/esm/config/usePageHeader.js.map +2 -2
- package/dist/esm/constants/index.js +36 -0
- package/dist/esm/constants/index.js.map +7 -0
- package/dist/esm/exported-related/index.js +0 -2
- package/dist/esm/exported-related/index.js.map +2 -2
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +2 -2
- package/dist/esm/styled.js +7 -1
- package/dist/esm/styled.js.map +2 -2
- package/dist/types/components/page-header-title/PageHeaderTitle.d.ts +1 -1
- package/dist/types/components/page-header-title/RequiredMark.d.ts +13 -0
- package/dist/types/components/page-header-title/react-desc-prop-types.d.ts +1 -0
- package/dist/types/config/usePageHeader.d.ts +185 -181
- package/dist/types/constants/index.d.ts +35 -0
- package/dist/types/exported-related/index.d.ts +0 -2
- package/dist/types/index.d.ts +1 -0
- package/dist/types/styled.d.ts +1 -0
- package/package.json +26 -32
- package/dist/cjs/exported-related/data-test-ids.js +0 -41
- package/dist/cjs/exported-related/data-test-ids.js.map +0 -7
- package/dist/cjs/exported-related/theming.js.map +0 -7
- package/dist/esm/exported-related/data-test-ids.js +0 -11
- package/dist/esm/exported-related/data-test-ids.js.map +0 -7
- package/dist/esm/exported-related/theming.js +0 -15
- package/dist/esm/exported-related/theming.js.map +0 -7
- package/dist/types/exported-related/data-test-ids.d.ts +0 -6
- package/dist/types/exported-related/theming.d.ts +0 -9
package/dist/cjs/PageHeader.js
CHANGED
|
@@ -40,7 +40,9 @@ __export(PageHeader_exports, {
|
|
|
40
40
|
module.exports = __toCommonJS(PageHeader_exports);
|
|
41
41
|
var React = __toESM(require("react"));
|
|
42
42
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
43
|
+
var import_react = __toESM(require("react"));
|
|
43
44
|
var import_ds_props_helpers = require("@elliemae/ds-props-helpers");
|
|
45
|
+
var import_ds_hooks_fontsize_media = require("@elliemae/ds-hooks-fontsize-media");
|
|
44
46
|
var import_ds_grid = require("@elliemae/ds-grid");
|
|
45
47
|
var import_styled = require("./styled.js");
|
|
46
48
|
var import_usePageHeader = require("./config/usePageHeader.js");
|
|
@@ -48,10 +50,10 @@ var import_page_header_title = require("./components/page-header-title/index.js"
|
|
|
48
50
|
var import_page_header_editable_title = require("./components/page-header-editable-title/index.js");
|
|
49
51
|
var import_page_header_summary = require("./components/page-header-summary/index.js");
|
|
50
52
|
var import_react_desc_prop_types = require("./react-desc-prop-types.js");
|
|
51
|
-
var
|
|
52
|
-
const MenuRegion = ({ CurrentMenu }) => {
|
|
53
|
+
var import_constants = require("./constants/index.js");
|
|
54
|
+
const MenuRegion = ({ CurrentMenu, ownerProps }) => {
|
|
53
55
|
if (!CurrentMenu) return null;
|
|
54
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.PageHeaderMenu, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CurrentMenu, {}) });
|
|
56
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.PageHeaderMenu, { ...ownerProps, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(CurrentMenu, {}) });
|
|
55
57
|
};
|
|
56
58
|
const DSPageHeaderV2 = (props) => {
|
|
57
59
|
const {
|
|
@@ -66,12 +68,23 @@ const DSPageHeaderV2 = (props) => {
|
|
|
66
68
|
globalAttributes,
|
|
67
69
|
xStyledProps
|
|
68
70
|
} = (0, import_usePageHeader.usePageHeader)(props);
|
|
71
|
+
const fontDetector = (0, import_ds_hooks_fontsize_media.useFontsizeMedia)({
|
|
72
|
+
largeFont: import_constants.FONT_DETECTOR.LARGE,
|
|
73
|
+
mediumFont: import_constants.FONT_DETECTOR.MEDIUM,
|
|
74
|
+
smallFont: import_constants.FONT_DETECTOR.SMALL
|
|
75
|
+
});
|
|
76
|
+
const ownerProps = (0, import_ds_props_helpers.useOwnerProps)(props);
|
|
69
77
|
const { isSkeleton } = props;
|
|
70
78
|
const wrapperRow = ["auto", "1fr"];
|
|
71
|
-
const mainRow =
|
|
79
|
+
const mainRow = import_react.default.useMemo(() => {
|
|
80
|
+
if (fontDetector > import_constants.FONT_DETECTOR.SMALL) {
|
|
81
|
+
return ["auto"];
|
|
82
|
+
}
|
|
83
|
+
return ["1fr", "auto"];
|
|
84
|
+
}, [fontDetector]);
|
|
72
85
|
const pageTitleRow = [
|
|
73
86
|
isSkeleton ? "2fr" : "auto",
|
|
74
|
-
CurrentMenu !== void 0 && "
|
|
87
|
+
CurrentMenu !== void 0 && "auto",
|
|
75
88
|
currentSummary !== void 0 && "auto",
|
|
76
89
|
"1fr"
|
|
77
90
|
].filter((col) => typeof col === "string");
|
|
@@ -81,19 +94,20 @@ const DSPageHeaderV2 = (props) => {
|
|
|
81
94
|
...containerProps,
|
|
82
95
|
...globalAttributes,
|
|
83
96
|
...xStyledProps,
|
|
84
|
-
|
|
97
|
+
...ownerProps,
|
|
98
|
+
"data-testid": import_constants.DSPageHeaderDataTestIds.CONTAINER,
|
|
85
99
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.ContainerWBorder, { withBottomSeparator, children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_ds_grid.Grid, { cols: wrapperRow, children: [
|
|
86
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_grid.Grid, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.PageHeaderBack, { children: currentBackArrow }) }),
|
|
100
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_grid.Grid, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.PageHeaderBack, { ...ownerProps, children: currentBackArrow }) }),
|
|
87
101
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_ds_grid.Grid, { rows: ["auto", "auto"], children: [
|
|
88
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
102
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.PageHeaderBreadCrumb, { className: "em-ds-page-header-v2-breadcrumb", ...ownerProps, children: currentBreadcrumbs }),
|
|
89
103
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_ds_grid.Grid, { cols: mainRow, alignItems: "center", children: [
|
|
90
104
|
/* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_ds_grid.Grid, { cols: pageTitleRow, alignItems: "center", children: [
|
|
91
105
|
currentPageTitle,
|
|
92
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuRegion, { CurrentMenu }),
|
|
106
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(MenuRegion, { CurrentMenu, ownerProps }),
|
|
93
107
|
currentSummary,
|
|
94
108
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {})
|
|
95
109
|
] }),
|
|
96
|
-
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_grid.Grid, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.PageHeaderToolbarWrapper, { children: currentToolbar }) })
|
|
110
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_grid.Grid, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_styled.PageHeaderToolbarWrapper, { ...ownerProps, children: currentToolbar }) })
|
|
97
111
|
] })
|
|
98
112
|
] })
|
|
99
113
|
] }) })
|
|
@@ -101,7 +115,7 @@ const DSPageHeaderV2 = (props) => {
|
|
|
101
115
|
);
|
|
102
116
|
};
|
|
103
117
|
DSPageHeaderV2.defaultProps = import_react_desc_prop_types.defaultProps;
|
|
104
|
-
DSPageHeaderV2.displayName =
|
|
118
|
+
DSPageHeaderV2.displayName = import_constants.DSPageHeaderName;
|
|
105
119
|
const DSPageHeaderWithSchema = (0, import_ds_props_helpers.describe)(DSPageHeaderV2);
|
|
106
120
|
DSPageHeaderWithSchema.propTypes = import_react_desc_prop_types.PageHeaderPropTypes;
|
|
107
121
|
var PageHeader_default = DSPageHeaderV2;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/PageHeader.tsx", "../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
-
"sourcesContent": ["/* eslint-disable complexity */\n/* eslint-disable max-lines */\nimport type { WeakValidationMap } from 'react';\nimport React from 'react';\nimport { describe } from '@elliemae/ds-props-helpers';\nimport { Grid } from '@elliemae/ds-grid';\nimport {\n Container,\n ContainerWBorder,\n PageHeaderCustomRenderer,\n PageHeaderToolbarWrapper,\n PageHeaderMenu,\n PageHeaderBack,\n} from './styled.js';\nimport { usePageHeader } from './config/usePageHeader.js';\nimport { PageHeaderTitle } from './components/page-header-title/index.js';\nimport { PageHeaderEditableTitle } from './components/page-header-editable-title/index.js';\nimport { PageHeaderSummary } from './components/page-header-summary/index.js';\nimport type { DSPageHeaderT } from './react-desc-prop-types.js';\nimport { PageHeaderPropTypes, defaultProps } from './react-desc-prop-types.js';\nimport { DSPageHeaderDataTestIds, DSPageHeaderName } from './
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;
|
|
6
|
-
"names": []
|
|
4
|
+
"sourcesContent": ["/* eslint-disable @typescript-eslint/ban-types */\n/* eslint-disable complexity */\n/* eslint-disable max-lines */\nimport type { WeakValidationMap } from 'react';\nimport React from 'react';\nimport { describe, useOwnerProps } from '@elliemae/ds-props-helpers';\nimport { useFontsizeMedia } from '@elliemae/ds-hooks-fontsize-media';\n\nimport { Grid } from '@elliemae/ds-grid';\nimport {\n Container,\n ContainerWBorder,\n PageHeaderCustomRenderer,\n PageHeaderToolbarWrapper,\n PageHeaderMenu,\n PageHeaderBack,\n PageHeaderBreadCrumb,\n} from './styled.js';\nimport { usePageHeader } from './config/usePageHeader.js';\nimport { PageHeaderTitle } from './components/page-header-title/index.js';\nimport { PageHeaderEditableTitle } from './components/page-header-editable-title/index.js';\nimport { PageHeaderSummary } from './components/page-header-summary/index.js';\nimport type { DSPageHeaderT } from './react-desc-prop-types.js';\nimport { PageHeaderPropTypes, defaultProps } from './react-desc-prop-types.js';\nimport { DSPageHeaderDataTestIds, DSPageHeaderName, FONT_DETECTOR } from './constants/index.js';\n\nconst MenuRegion: React.ComponentType<{\n CurrentMenu?: React.ComponentType;\n ownerProps?: {\n getOwnerProps: () => DSPageHeaderT.Props;\n getOwnerPropsArguments: () => {};\n };\n}> = ({ CurrentMenu, ownerProps }) => {\n if (!CurrentMenu) return null;\n return (\n <PageHeaderMenu {...ownerProps}>\n <CurrentMenu />\n </PageHeaderMenu>\n );\n};\n\nconst DSPageHeaderV2: React.ComponentType<DSPageHeaderT.Props> = (props) => {\n const {\n currentBackArrow,\n CurrentMenu,\n currentBreadcrumbs,\n currentSummary,\n currentToolbar,\n currentPageTitle,\n containerProps,\n withBottomSeparator,\n globalAttributes,\n xStyledProps,\n } = usePageHeader(props);\n\n const fontDetector = useFontsizeMedia({\n largeFont: FONT_DETECTOR.LARGE,\n mediumFont: FONT_DETECTOR.MEDIUM,\n smallFont: FONT_DETECTOR.SMALL,\n });\n\n const ownerProps = useOwnerProps(props);\n const { isSkeleton } = props;\n const wrapperRow = ['auto', '1fr'];\n const mainRow = React.useMemo(() => {\n if (fontDetector > FONT_DETECTOR.SMALL) {\n return ['auto'];\n }\n return ['1fr', 'auto'];\n }, [fontDetector]);\n const pageTitleRow = [\n isSkeleton ? '2fr' : 'auto',\n CurrentMenu !== undefined && 'auto',\n currentSummary !== undefined && 'auto',\n '1fr',\n ].filter((col) => typeof col === 'string');\n\n return (\n <Container\n {...containerProps}\n {...globalAttributes}\n {...xStyledProps}\n {...ownerProps}\n data-testid={DSPageHeaderDataTestIds.CONTAINER}\n >\n <ContainerWBorder withBottomSeparator={withBottomSeparator}>\n <Grid cols={wrapperRow}>\n <Grid>\n <PageHeaderBack {...ownerProps}>{currentBackArrow}</PageHeaderBack>\n </Grid>\n <Grid rows={['auto', 'auto']}>\n <PageHeaderBreadCrumb className=\"em-ds-page-header-v2-breadcrumb\" {...ownerProps}>\n {currentBreadcrumbs}\n </PageHeaderBreadCrumb>\n <Grid cols={mainRow} alignItems=\"center\">\n <Grid cols={pageTitleRow} alignItems=\"center\">\n {currentPageTitle}\n <MenuRegion CurrentMenu={CurrentMenu} ownerProps={ownerProps} />\n {currentSummary}\n <div />\n </Grid>\n <Grid>\n <PageHeaderToolbarWrapper {...ownerProps}>{currentToolbar}</PageHeaderToolbarWrapper>\n </Grid>\n </Grid>\n </Grid>\n </Grid>\n </ContainerWBorder>\n </Container>\n );\n};\n\nDSPageHeaderV2.defaultProps = defaultProps;\nDSPageHeaderV2.displayName = DSPageHeaderName;\nconst DSPageHeaderWithSchema = describe(DSPageHeaderV2);\n\nDSPageHeaderWithSchema.propTypes = PageHeaderPropTypes as WeakValidationMap<unknown>;\n\nexport {\n DSPageHeaderV2,\n PageHeaderTitle,\n PageHeaderEditableTitle,\n PageHeaderSummary,\n PageHeaderMenu,\n PageHeaderCustomRenderer,\n DSPageHeaderWithSchema,\n};\n\nexport default DSPageHeaderV2;\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADoCjB;AAhCN,mBAAkB;AAClB,8BAAwC;AACxC,qCAAiC;AAEjC,qBAAqB;AACrB,oBAQO;AACP,2BAA8B;AAC9B,+BAAgC;AAChC,wCAAwC;AACxC,iCAAkC;AAElC,mCAAkD;AAClD,uBAAyE;AAEzE,MAAM,aAMD,CAAC,EAAE,aAAa,WAAW,MAAM;AACpC,MAAI,CAAC,YAAa,QAAO;AACzB,SACE,4CAAC,gCAAgB,GAAG,YAClB,sDAAC,eAAY,GACf;AAEJ;AAEA,MAAM,iBAA2D,CAAC,UAAU;AAC1E,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,QAAI,oCAAc,KAAK;AAEvB,QAAM,mBAAe,iDAAiB;AAAA,IACpC,WAAW,+BAAc;AAAA,IACzB,YAAY,+BAAc;AAAA,IAC1B,WAAW,+BAAc;AAAA,EAC3B,CAAC;AAED,QAAM,iBAAa,uCAAc,KAAK;AACtC,QAAM,EAAE,WAAW,IAAI;AACvB,QAAM,aAAa,CAAC,QAAQ,KAAK;AACjC,QAAM,UAAU,aAAAA,QAAM,QAAQ,MAAM;AAClC,QAAI,eAAe,+BAAc,OAAO;AACtC,aAAO,CAAC,MAAM;AAAA,IAChB;AACA,WAAO,CAAC,OAAO,MAAM;AAAA,EACvB,GAAG,CAAC,YAAY,CAAC;AACjB,QAAM,eAAe;AAAA,IACnB,aAAa,QAAQ;AAAA,IACrB,gBAAgB,UAAa;AAAA,IAC7B,mBAAmB,UAAa;AAAA,IAChC;AAAA,EACF,EAAE,OAAO,CAAC,QAAQ,OAAO,QAAQ,QAAQ;AAEzC,SACE;AAAA,IAAC;AAAA;AAAA,MACE,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACH,GAAG;AAAA,MACJ,eAAa,yCAAwB;AAAA,MAErC,sDAAC,kCAAiB,qBAChB,uDAAC,uBAAK,MAAM,YACV;AAAA,oDAAC,uBACC,sDAAC,gCAAgB,GAAG,YAAa,4BAAiB,GACpD;AAAA,QACA,6CAAC,uBAAK,MAAM,CAAC,QAAQ,MAAM,GACzB;AAAA,sDAAC,sCAAqB,WAAU,mCAAmC,GAAG,YACnE,8BACH;AAAA,UACA,6CAAC,uBAAK,MAAM,SAAS,YAAW,UAC9B;AAAA,yDAAC,uBAAK,MAAM,cAAc,YAAW,UAClC;AAAA;AAAA,cACD,4CAAC,cAAW,aAA0B,YAAwB;AAAA,cAC7D;AAAA,cACD,4CAAC,SAAI;AAAA,eACP;AAAA,YACA,4CAAC,uBACC,sDAAC,0CAA0B,GAAG,YAAa,0BAAe,GAC5D;AAAA,aACF;AAAA,WACF;AAAA,SACF,GACF;AAAA;AAAA,EACF;AAEJ;AAEA,eAAe,eAAe;AAC9B,eAAe,cAAc;AAC7B,MAAM,6BAAyB,kCAAS,cAAc;AAEtD,uBAAuB,YAAY;AAYnC,IAAO,qBAAQ;",
|
|
6
|
+
"names": ["React"]
|
|
7
7
|
}
|
|
@@ -41,10 +41,13 @@ var import_ds_system = require("@elliemae/ds-system");
|
|
|
41
41
|
var import_ds_props_helpers = require("@elliemae/ds-props-helpers");
|
|
42
42
|
var import_useDerivedStateFromProps = require("./useDerivedStateFromProps.js");
|
|
43
43
|
var import_page_header_title = require("../page-header-title/index.js");
|
|
44
|
-
var
|
|
44
|
+
var import_constants = require("../../constants/index.js");
|
|
45
45
|
var import_react_desc_prop_types = require("./react-desc-prop-types.js");
|
|
46
|
-
const EditableContainer = (0, import_ds_system.styled)("div"
|
|
47
|
-
|
|
46
|
+
const EditableContainer = (0, import_ds_system.styled)("div", {
|
|
47
|
+
name: import_constants.DSPageHeaderName,
|
|
48
|
+
slot: import_constants.DSPageHeaderSlots.HEADER_TITLE
|
|
49
|
+
})`
|
|
50
|
+
min-height: 32px;
|
|
48
51
|
position: relative;
|
|
49
52
|
overflow: hidden;
|
|
50
53
|
&.editable-title-component {
|
|
@@ -54,7 +57,7 @@ const EditableContainer = (0, import_ds_system.styled)("div")`
|
|
|
54
57
|
margin-left: -2px;
|
|
55
58
|
margin-right: -9px;
|
|
56
59
|
& .${import_ds_form_input_text.DSInputTextName}-${import_ds_form_input_text.DSInputTextSlots.INPUT_WRAPPER} {
|
|
57
|
-
height: 32px;
|
|
60
|
+
min-height: 32px;
|
|
58
61
|
}
|
|
59
62
|
& .${import_ds_form_input_text.DSInputTextName}-${import_ds_form_input_text.DSInputTextSlots.INPUT} {
|
|
60
63
|
font-size: ${({ theme }) => theme.fontSizes.title[800]};
|
|
@@ -65,13 +68,23 @@ const EditableContainer = (0, import_ds_system.styled)("div")`
|
|
|
65
68
|
}
|
|
66
69
|
}
|
|
67
70
|
`;
|
|
71
|
+
const StyledInputText = (0, import_ds_system.styled)(import_ds_form_input_text.DSInputText, {
|
|
72
|
+
name: import_constants.DSPageHeaderName,
|
|
73
|
+
slot: import_constants.DSPageHeaderSlots.TITLE_INPUT
|
|
74
|
+
})``;
|
|
68
75
|
const PageHeaderEditableTitle = (props) => {
|
|
69
76
|
const { children: value, editing: editingProp, showMarker, ...rest } = props;
|
|
77
|
+
const ownerProps = (0, import_ds_props_helpers.useOwnerProps)(props);
|
|
70
78
|
const [titleValue, setTitleValue] = (0, import_react.useState)(value);
|
|
71
79
|
const [hovered, setHovered] = (0, import_react.useState)(false);
|
|
72
80
|
const [editing, setEditing] = (0, import_useDerivedStateFromProps.useDerivedStateFromProps)(editingProp || false);
|
|
81
|
+
const [width, setWidth] = (0, import_react.useState)(0);
|
|
73
82
|
const titleRef = (0, import_react.useRef)(null);
|
|
74
|
-
|
|
83
|
+
(0, import_react.useLayoutEffect)(() => {
|
|
84
|
+
if (titleRef.current) {
|
|
85
|
+
setWidth(titleRef.current.offsetWidth);
|
|
86
|
+
}
|
|
87
|
+
}, [titleValue, hovered, editing]);
|
|
75
88
|
const handleOnChange = (0, import_react.useCallback)((e) => {
|
|
76
89
|
setTitleValue(e.target.value);
|
|
77
90
|
}, []);
|
|
@@ -90,27 +103,26 @@ const PageHeaderEditableTitle = (props) => {
|
|
|
90
103
|
onChange: handleOnChange,
|
|
91
104
|
onBlur: handleOnBlur
|
|
92
105
|
});
|
|
93
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.
|
|
106
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
94
107
|
EditableContainer,
|
|
95
108
|
{
|
|
96
109
|
className: hovered || editing ? "editable-title-component" : "",
|
|
97
110
|
onMouseEnter: () => setHovered(true),
|
|
98
111
|
onMouseLeave: () => setHovered(false),
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
]
|
|
112
|
+
...ownerProps,
|
|
113
|
+
"data-testid": import_constants.DSPageHeaderDataTestIds.EDITABLE_HEADER_TITLE,
|
|
114
|
+
children: hovered || editing ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
115
|
+
StyledInputText,
|
|
116
|
+
{
|
|
117
|
+
onChange: handleOnChange,
|
|
118
|
+
...rest,
|
|
119
|
+
...globals,
|
|
120
|
+
placeholder: "",
|
|
121
|
+
style: { width: width + 10, minWidth: "260px", maxWidth: "100%" },
|
|
122
|
+
value: titleValue,
|
|
123
|
+
...ownerProps
|
|
124
|
+
}
|
|
125
|
+
) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { ref: titleRef, style: { width: "fit-content" }, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_page_header_title.PageHeaderTitle, { showMarker: showMarker && !hovered && !editing, children: titleValue }) })
|
|
114
126
|
}
|
|
115
127
|
);
|
|
116
128
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/components/page-header-editable-title/PageHeaderEditableTitle.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
-
"sourcesContent": ["import React, { useRef, useState, useCallback } from 'react';\nimport { DSInputText, DSInputTextName, DSInputTextSlots } from '@elliemae/ds-form-input-text';\nimport { styled } from '@elliemae/ds-system';\nimport { describe, useGetGlobalAttributes, type ValidationMap } from '@elliemae/ds-props-helpers';\nimport { useDerivedStateFromProps } from './useDerivedStateFromProps.js';\nimport { PageHeaderTitle } from '../page-header-title/index.js';\nimport { DSPageHeaderDataTestIds } from '../../
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;
|
|
4
|
+
"sourcesContent": ["import React, { useRef, useState, useCallback, useLayoutEffect } from 'react';\nimport { DSInputText, DSInputTextName, DSInputTextSlots } from '@elliemae/ds-form-input-text';\nimport { styled } from '@elliemae/ds-system';\nimport { describe, useGetGlobalAttributes, type ValidationMap, useOwnerProps } from '@elliemae/ds-props-helpers';\nimport { useDerivedStateFromProps } from './useDerivedStateFromProps.js';\nimport { PageHeaderTitle } from '../page-header-title/index.js';\nimport { DSPageHeaderDataTestIds, DSPageHeaderSlots, DSPageHeaderName } from '../../constants/index.js';\nimport { PageHeaderEditableTitlePropTypes, type PageHeaderEditableTitleT } from './react-desc-prop-types.js';\n\nconst EditableContainer = styled('div', {\n name: DSPageHeaderName,\n slot: DSPageHeaderSlots.HEADER_TITLE,\n})`\n min-height: 32px;\n position: relative;\n overflow: hidden;\n &.editable-title-component {\n position: relative;\n left: -7px;\n top: -1px;\n margin-left: -2px;\n margin-right: -9px;\n & .${DSInputTextName}-${DSInputTextSlots.INPUT_WRAPPER} {\n min-height: 32px;\n }\n & .${DSInputTextName}-${DSInputTextSlots.INPUT} {\n font-size: ${({ theme }) => theme.fontSizes.title[800]};\n line-height: normal;\n color: ${({ theme }) => theme.colors.neutral['700']};\n padding-top: 0px;\n padding-bottom: 0px;\n }\n }\n`;\n\nconst StyledInputText = styled(DSInputText, {\n name: DSPageHeaderName,\n slot: DSPageHeaderSlots.TITLE_INPUT,\n})``;\n\nexport const PageHeaderEditableTitle = (props: PageHeaderEditableTitleT.Props) => {\n const { children: value, editing: editingProp, showMarker, ...rest } = props;\n const ownerProps = useOwnerProps(props);\n const [titleValue, setTitleValue] = useState(value);\n const [hovered, setHovered] = useState(false);\n const [editing, setEditing] = useDerivedStateFromProps(editingProp || false);\n const [width, setWidth] = useState(0);\n\n const titleRef = useRef<HTMLDivElement>(null);\n\n useLayoutEffect(() => {\n if (titleRef.current) {\n setWidth(titleRef.current.offsetWidth);\n }\n }, [titleValue, hovered, editing]);\n\n const handleOnChange: React.ChangeEventHandler<HTMLInputElement> = useCallback((e) => {\n setTitleValue(e.target.value);\n }, []);\n\n const handleOnFocus: React.FocusEventHandler = useCallback(() => {\n setEditing(true);\n }, [setEditing]);\n\n const handleOnBlur: React.FocusEventHandler = useCallback(() => {\n setEditing(false);\n }, [setEditing]);\n\n const handleOnMouseOut: React.MouseEventHandler = useCallback(() => {\n setHovered(false);\n }, []);\n\n const globals = useGetGlobalAttributes(rest, {\n onFocus: handleOnFocus,\n onMouseOut: handleOnMouseOut,\n onChange: handleOnChange,\n onBlur: handleOnBlur,\n });\n\n return (\n <EditableContainer\n className={hovered || editing ? 'editable-title-component' : ''}\n onMouseEnter={() => setHovered(true)}\n onMouseLeave={() => setHovered(false)}\n {...ownerProps}\n data-testid={DSPageHeaderDataTestIds.EDITABLE_HEADER_TITLE}\n >\n {hovered || editing ? (\n <StyledInputText\n onChange={handleOnChange}\n {...rest}\n {...globals}\n placeholder=\"\"\n style={{ width: width + 10, minWidth: '260px', maxWidth: '100%' }}\n value={titleValue}\n {...ownerProps}\n />\n ) : (\n <div ref={titleRef} style={{ width: 'fit-content' }}>\n <PageHeaderTitle showMarker={showMarker && !hovered && !editing}>{titleValue}</PageHeaderTitle>\n </div>\n )}\n </EditableContainer>\n );\n};\n\nPageHeaderEditableTitle.displayName = 'PageHeaderEditableTitle';\nconst DSPageHeaderEditableTitleWithSchema = describe(PageHeaderEditableTitle);\n\nDSPageHeaderEditableTitleWithSchema.propTypes = PageHeaderEditableTitlePropTypes as ValidationMap<unknown>;\n\nexport default PageHeaderEditableTitle;\n\nexport { DSPageHeaderEditableTitleWithSchema };\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADwFf;AAxFR,mBAAsE;AACtE,gCAA+D;AAC/D,uBAAuB;AACvB,8BAAoF;AACpF,sCAAyC;AACzC,+BAAgC;AAChC,uBAA6E;AAC7E,mCAAgF;AAEhF,MAAM,wBAAoB,yBAAO,OAAO;AAAA,EACtC,MAAM;AAAA,EACN,MAAM,mCAAkB;AAC1B,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,SAUQ,yCAAe,IAAI,2CAAiB,aAAa;AAAA;AAAA;AAAA,SAGjD,yCAAe,IAAI,2CAAiB,KAAK;AAAA,mBAC/B,CAAC,EAAE,MAAM,MAAM,MAAM,UAAU,MAAM,GAAG,CAAC;AAAA;AAAA,eAE7C,CAAC,EAAE,MAAM,MAAM,MAAM,OAAO,QAAQ,KAAK,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAOzD,MAAM,sBAAkB,yBAAO,uCAAa;AAAA,EAC1C,MAAM;AAAA,EACN,MAAM,mCAAkB;AAC1B,CAAC;AAEM,MAAM,0BAA0B,CAAC,UAA0C;AAChF,QAAM,EAAE,UAAU,OAAO,SAAS,aAAa,YAAY,GAAG,KAAK,IAAI;AACvE,QAAM,iBAAa,uCAAc,KAAK;AACtC,QAAM,CAAC,YAAY,aAAa,QAAI,uBAAS,KAAK;AAClD,QAAM,CAAC,SAAS,UAAU,QAAI,uBAAS,KAAK;AAC5C,QAAM,CAAC,SAAS,UAAU,QAAI,0DAAyB,eAAe,KAAK;AAC3E,QAAM,CAAC,OAAO,QAAQ,QAAI,uBAAS,CAAC;AAEpC,QAAM,eAAW,qBAAuB,IAAI;AAE5C,oCAAgB,MAAM;AACpB,QAAI,SAAS,SAAS;AACpB,eAAS,SAAS,QAAQ,WAAW;AAAA,IACvC;AAAA,EACF,GAAG,CAAC,YAAY,SAAS,OAAO,CAAC;AAEjC,QAAM,qBAA6D,0BAAY,CAAC,MAAM;AACpF,kBAAc,EAAE,OAAO,KAAK;AAAA,EAC9B,GAAG,CAAC,CAAC;AAEL,QAAM,oBAAyC,0BAAY,MAAM;AAC/D,eAAW,IAAI;AAAA,EACjB,GAAG,CAAC,UAAU,CAAC;AAEf,QAAM,mBAAwC,0BAAY,MAAM;AAC9D,eAAW,KAAK;AAAA,EAClB,GAAG,CAAC,UAAU,CAAC;AAEf,QAAM,uBAA4C,0BAAY,MAAM;AAClE,eAAW,KAAK;AAAA,EAClB,GAAG,CAAC,CAAC;AAEL,QAAM,cAAU,gDAAuB,MAAM;AAAA,IAC3C,SAAS;AAAA,IACT,YAAY;AAAA,IACZ,UAAU;AAAA,IACV,QAAQ;AAAA,EACV,CAAC;AAED,SACE;AAAA,IAAC;AAAA;AAAA,MACC,WAAW,WAAW,UAAU,6BAA6B;AAAA,MAC7D,cAAc,MAAM,WAAW,IAAI;AAAA,MACnC,cAAc,MAAM,WAAW,KAAK;AAAA,MACnC,GAAG;AAAA,MACJ,eAAa,yCAAwB;AAAA,MAEpC,qBAAW,UACV;AAAA,QAAC;AAAA;AAAA,UACC,UAAU;AAAA,UACT,GAAG;AAAA,UACH,GAAG;AAAA,UACJ,aAAY;AAAA,UACZ,OAAO,EAAE,OAAO,QAAQ,IAAI,UAAU,SAAS,UAAU,OAAO;AAAA,UAChE,OAAO;AAAA,UACN,GAAG;AAAA;AAAA,MACN,IAEA,4CAAC,SAAI,KAAK,UAAU,OAAO,EAAE,OAAO,cAAc,GAChD,sDAAC,4CAAgB,YAAY,cAAc,CAAC,WAAW,CAAC,SAAU,sBAAW,GAC/E;AAAA;AAAA,EAEJ;AAEJ;AAEA,wBAAwB,cAAc;AACtC,MAAM,0CAAsC,kCAAS,uBAAuB;AAE5E,oCAAoC,YAAY;AAEhD,IAAO,kCAAQ;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -36,11 +36,11 @@ var React = __toESM(require("react"));
|
|
|
36
36
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
37
37
|
var import_ds_props_helpers = require("@elliemae/ds-props-helpers");
|
|
38
38
|
var import_ds_system = require("@elliemae/ds-system");
|
|
39
|
-
var
|
|
39
|
+
var import_constants = require("../../constants/index.js");
|
|
40
40
|
var import_react_desc_prop_types = require("./react-desc-prop-types.js");
|
|
41
41
|
const PageHeaderSummaryWrapper = (0, import_ds_system.styled)("div", {
|
|
42
|
-
name:
|
|
43
|
-
slot:
|
|
42
|
+
name: import_constants.DSPageHeaderName,
|
|
43
|
+
slot: import_constants.DSPageHeaderSlots.SUMMARY
|
|
44
44
|
})`
|
|
45
45
|
display: flex;
|
|
46
46
|
flex-direction: row;
|
|
@@ -69,12 +69,25 @@ const PageHeaderSummaryWrapper = (0, import_ds_system.styled)("div", {
|
|
|
69
69
|
width: ${({ theme }) => theme.space.l};
|
|
70
70
|
}
|
|
71
71
|
`;
|
|
72
|
+
const StyledSummaryValue = (0, import_ds_system.styled)("div", {
|
|
73
|
+
name: import_constants.DSPageHeaderName,
|
|
74
|
+
slot: import_constants.DSPageHeaderSlots.SUMMARY_VALUE
|
|
75
|
+
})``;
|
|
76
|
+
const StyledSummaryLabel = (0, import_ds_system.styled)("div", {
|
|
77
|
+
name: import_constants.DSPageHeaderName,
|
|
78
|
+
slot: import_constants.DSPageHeaderSlots.SUMMARY_LABEL
|
|
79
|
+
})``;
|
|
80
|
+
const StyledSummarySpace = (0, import_ds_system.styled)("div", {
|
|
81
|
+
name: import_constants.DSPageHeaderName,
|
|
82
|
+
slot: import_constants.DSPageHeaderSlots.SUMMARY_SPACE
|
|
83
|
+
})``;
|
|
72
84
|
const PageHeaderSummary = (props) => {
|
|
73
85
|
const { value = null, label = "", ...rest } = props;
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
86
|
+
const ownerProps = (0, import_ds_props_helpers.useOwnerProps)(props);
|
|
87
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(PageHeaderSummaryWrapper, { ...ownerProps, "data-testid": import_constants.DSPageHeaderDataTestIds.SUMMARY, ...rest, children: [
|
|
88
|
+
(value === 0 || value) && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(StyledSummaryValue, { className: "ph-summary-value", ...ownerProps, children: value }),
|
|
89
|
+
label && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(StyledSummaryLabel, { className: "ph-summary-label", ...ownerProps, children: label }),
|
|
90
|
+
(value === 0 || value || label) && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(StyledSummarySpace, { className: "ph-summary-space", ...ownerProps })
|
|
78
91
|
] });
|
|
79
92
|
};
|
|
80
93
|
PageHeaderSummary.displayName = "PageHeaderSummary";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/components/page-header-summary/PageHeaderSummary.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
-
"sourcesContent": ["import React from 'react';\nimport { describe, type ValidationMap } from '@elliemae/ds-props-helpers';\nimport { styled } from '@elliemae/ds-system';\nimport { DSPageHeaderName, DSPageHeaderSlots, DSPageHeaderDataTestIds } from '../../
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;
|
|
4
|
+
"sourcesContent": ["import React from 'react';\nimport { describe, type ValidationMap, useOwnerProps } from '@elliemae/ds-props-helpers';\nimport { styled } from '@elliemae/ds-system';\nimport { DSPageHeaderName, DSPageHeaderSlots, DSPageHeaderDataTestIds } from '../../constants/index.js';\nimport { PageHeaderSummaryPropTypes, type PageHeaderSummaryT } from './react-desc-prop-types.js';\n\nconst PageHeaderSummaryWrapper = styled('div', {\n name: DSPageHeaderName,\n slot: DSPageHeaderSlots.SUMMARY,\n})`\n display: flex;\n flex-direction: row;\n align-items: center;\n\n margin-left: ${({ theme }) => theme.space.xxxs};\n font-size: ${({ theme }) => theme.fontSizes.title[700]};\n line-height: ${({ theme }) => theme.lineHeights.m};\n font-weight: ${({ theme }) => theme.fontWeights.regular};\n &:before {\n display: block;\n content: '';\n height: 23px;\n background: ${({ theme }) => theme.colors.neutral[600]};\n width: 1px;\n margin-right: ${({ theme }) => theme.space.xxs};\n }\n .ph-summary-value {\n color: ${({ theme }) => theme.colors.neutral[700]};\n padding-right: ${({ theme }) => theme.space.xxs};\n }\n .ph-summary-label {\n color: ${({ theme }) => theme.colors.neutral[600]};\n }\n .ph-summary-space {\n width: ${({ theme }) => theme.space.l};\n }\n`;\n\nconst StyledSummaryValue = styled('div', {\n name: DSPageHeaderName,\n slot: DSPageHeaderSlots.SUMMARY_VALUE,\n})``;\n\nconst StyledSummaryLabel = styled('div', {\n name: DSPageHeaderName,\n slot: DSPageHeaderSlots.SUMMARY_LABEL,\n})``;\n\nconst StyledSummarySpace = styled('div', {\n name: DSPageHeaderName,\n slot: DSPageHeaderSlots.SUMMARY_SPACE,\n})``;\n\nconst PageHeaderSummary = (props: PageHeaderSummaryT.Props) => {\n const { value = null, label = '', ...rest } = props;\n\n const ownerProps = useOwnerProps(props);\n return (\n <PageHeaderSummaryWrapper {...ownerProps} data-testid={DSPageHeaderDataTestIds.SUMMARY} {...rest}>\n {(value === 0 || value) && (\n <StyledSummaryValue className=\"ph-summary-value\" {...ownerProps}>\n {value}\n </StyledSummaryValue>\n )}\n {label && (\n <StyledSummaryLabel className=\"ph-summary-label\" {...ownerProps}>\n {label}\n </StyledSummaryLabel>\n )}\n {(value === 0 || value || label) && <StyledSummarySpace className=\"ph-summary-space\" {...ownerProps} />}\n </PageHeaderSummaryWrapper>\n );\n};\n\nPageHeaderSummary.displayName = 'PageHeaderSummary';\nconst DSPageHeaderSummaryWithSchema = describe(PageHeaderSummary);\n\nDSPageHeaderSummaryWithSchema.propTypes = PageHeaderSummaryPropTypes as ValidationMap<unknown>;\n\nexport { PageHeaderSummary, DSPageHeaderSummaryWithSchema };\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;AD0DnB;AAzDJ,8BAA4D;AAC5D,uBAAuB;AACvB,uBAA6E;AAC7E,mCAAoE;AAEpE,MAAM,+BAA2B,yBAAO,OAAO;AAAA,EAC7C,MAAM;AAAA,EACN,MAAM,mCAAkB;AAC1B,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA,iBAKgB,CAAC,EAAE,MAAM,MAAM,MAAM,MAAM,IAAI;AAAA,eACjC,CAAC,EAAE,MAAM,MAAM,MAAM,UAAU,MAAM,GAAG,CAAC;AAAA,iBACvC,CAAC,EAAE,MAAM,MAAM,MAAM,YAAY,CAAC;AAAA,iBAClC,CAAC,EAAE,MAAM,MAAM,MAAM,YAAY,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,kBAKvC,CAAC,EAAE,MAAM,MAAM,MAAM,OAAO,QAAQ,GAAG,CAAC;AAAA;AAAA,oBAEtC,CAAC,EAAE,MAAM,MAAM,MAAM,MAAM,GAAG;AAAA;AAAA;AAAA,aAGrC,CAAC,EAAE,MAAM,MAAM,MAAM,OAAO,QAAQ,GAAG,CAAC;AAAA,qBAChC,CAAC,EAAE,MAAM,MAAM,MAAM,MAAM,GAAG;AAAA;AAAA;AAAA,aAGtC,CAAC,EAAE,MAAM,MAAM,MAAM,OAAO,QAAQ,GAAG,CAAC;AAAA;AAAA;AAAA,aAGxC,CAAC,EAAE,MAAM,MAAM,MAAM,MAAM,CAAC;AAAA;AAAA;AAIzC,MAAM,yBAAqB,yBAAO,OAAO;AAAA,EACvC,MAAM;AAAA,EACN,MAAM,mCAAkB;AAC1B,CAAC;AAED,MAAM,yBAAqB,yBAAO,OAAO;AAAA,EACvC,MAAM;AAAA,EACN,MAAM,mCAAkB;AAC1B,CAAC;AAED,MAAM,yBAAqB,yBAAO,OAAO;AAAA,EACvC,MAAM;AAAA,EACN,MAAM,mCAAkB;AAC1B,CAAC;AAED,MAAM,oBAAoB,CAAC,UAAoC;AAC7D,QAAM,EAAE,QAAQ,MAAM,QAAQ,IAAI,GAAG,KAAK,IAAI;AAE9C,QAAM,iBAAa,uCAAc,KAAK;AACtC,SACE,6CAAC,4BAA0B,GAAG,YAAY,eAAa,yCAAwB,SAAU,GAAG,MACxF;AAAA,eAAU,KAAK,UACf,4CAAC,sBAAmB,WAAU,oBAAoB,GAAG,YAClD,iBACH;AAAA,IAED,SACC,4CAAC,sBAAmB,WAAU,oBAAoB,GAAG,YAClD,iBACH;AAAA,KAEA,UAAU,KAAK,SAAS,UAAU,4CAAC,sBAAmB,WAAU,oBAAoB,GAAG,YAAY;AAAA,KACvG;AAEJ;AAEA,kBAAkB,cAAc;AAChC,MAAM,oCAAgC,kCAAS,iBAAiB;AAEhE,8BAA8B,YAAY;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -37,13 +37,13 @@ var import_jsx_runtime = require("react/jsx-runtime");
|
|
|
37
37
|
var import_ds_system = require("@elliemae/ds-system");
|
|
38
38
|
var import_ds_props_helpers = require("@elliemae/ds-props-helpers");
|
|
39
39
|
var import_ds_truncated_tooltip_text = require("@elliemae/ds-truncated-tooltip-text");
|
|
40
|
-
var
|
|
41
|
-
var
|
|
40
|
+
var import_RequiredMark = require("./RequiredMark.js");
|
|
41
|
+
var import_constants = require("../../constants/index.js");
|
|
42
42
|
var import_react_desc_prop_types = require("./react-desc-prop-types.js");
|
|
43
43
|
var import_react_desc_prop_types2 = require("./react-desc-prop-types.js");
|
|
44
44
|
const PageHeaderTitleWrapper = (0, import_ds_system.styled)("div", {
|
|
45
|
-
name:
|
|
46
|
-
slot:
|
|
45
|
+
name: import_constants.DSPageHeaderName,
|
|
46
|
+
slot: import_constants.DSPageHeaderSlots.HEADER_TITLE
|
|
47
47
|
})`
|
|
48
48
|
display: grid;
|
|
49
49
|
font-size: ${({ theme }) => theme.fontSizes.title[800]};
|
|
@@ -59,10 +59,14 @@ const PageHeaderTitleWrapper = (0, import_ds_system.styled)("div", {
|
|
|
59
59
|
right: 0;
|
|
60
60
|
}
|
|
61
61
|
`;
|
|
62
|
-
const PageHeaderTitle = (
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
62
|
+
const PageHeaderTitle = (props) => {
|
|
63
|
+
const { children, showMarker, ...rest } = props;
|
|
64
|
+
const ownerProps = (0, import_ds_props_helpers.useOwnerProps)(props);
|
|
65
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(PageHeaderTitleWrapper, { ...rest, ...ownerProps, "data-testid": import_constants.DSPageHeaderDataTestIds.HEADER_TITLE, children: [
|
|
66
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_truncated_tooltip_text.TooltipTextProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_truncated_tooltip_text.DSTruncatedTooltipText, { value: children }) }),
|
|
67
|
+
showMarker && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_RequiredMark.RequiredMark, { required: true, ownerProps })
|
|
68
|
+
] });
|
|
69
|
+
};
|
|
66
70
|
PageHeaderTitle.defaultProps = import_react_desc_prop_types2.defaultProps;
|
|
67
71
|
PageHeaderTitle.displayName = "PageHeaderTitle";
|
|
68
72
|
const DSPageHeaderTitleWithSchema = (0, import_ds_props_helpers.describe)(PageHeaderTitle);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/components/page-header-title/PageHeaderTitle.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
-
"sourcesContent": ["import React from 'react';\nimport { styled } from '@elliemae/ds-system';\nimport { describe, type ValidationMap } from '@elliemae/ds-props-helpers';\nimport { DSTruncatedTooltipText, TooltipTextProvider } from '@elliemae/ds-truncated-tooltip-text';\nimport { RequiredMark } from '
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;
|
|
4
|
+
"sourcesContent": ["import React from 'react';\nimport { styled } from '@elliemae/ds-system';\nimport { describe, type ValidationMap, useOwnerProps } from '@elliemae/ds-props-helpers';\nimport { DSTruncatedTooltipText, TooltipTextProvider } from '@elliemae/ds-truncated-tooltip-text';\nimport { RequiredMark } from './RequiredMark.js';\nimport { DSPageHeaderName, DSPageHeaderSlots, DSPageHeaderDataTestIds } from '../../constants/index.js';\nimport { PageHeaderTitlePropTypes, type PageHeaderTitleT } from './react-desc-prop-types.js';\nimport { defaultProps } from './react-desc-prop-types.js';\n\nconst PageHeaderTitleWrapper = styled('div', {\n name: DSPageHeaderName,\n slot: DSPageHeaderSlots.HEADER_TITLE,\n})`\n display: grid;\n font-size: ${({ theme }) => theme.fontSizes.title[800]};\n color: ${({ theme }) => theme.colors.neutral['700']};\n line-height: normal;\n font-weight: 400;\n margin: 0;\n margin-right: 0.61538rem;\n\n & .em-ds-form-required-mark {\n position: absolute;\n top: 0;\n right: 0;\n }\n`;\n\nconst PageHeaderTitle = (props: PageHeaderTitleT.Props) => {\n const { children, showMarker, ...rest } = props;\n const ownerProps = useOwnerProps(props);\n return (\n <PageHeaderTitleWrapper {...rest} {...ownerProps} data-testid={DSPageHeaderDataTestIds.HEADER_TITLE}>\n <TooltipTextProvider>\n <DSTruncatedTooltipText value={children} />\n </TooltipTextProvider>\n {showMarker && <RequiredMark required ownerProps={ownerProps} />}\n </PageHeaderTitleWrapper>\n );\n};\n\nPageHeaderTitle.defaultProps = defaultProps;\nPageHeaderTitle.displayName = 'PageHeaderTitle';\nconst DSPageHeaderTitleWithSchema = describe(PageHeaderTitle);\n\nDSPageHeaderTitleWithSchema.propTypes = PageHeaderTitlePropTypes as ValidationMap<unknown>;\n\nexport { PageHeaderTitle, DSPageHeaderTitleWithSchema };\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADgCnB;AA/BJ,uBAAuB;AACvB,8BAA4D;AAC5D,uCAA4D;AAC5D,0BAA6B;AAC7B,uBAA6E;AAC7E,mCAAgE;AAChE,IAAAA,gCAA6B;AAE7B,MAAM,6BAAyB,yBAAO,OAAO;AAAA,EAC3C,MAAM;AAAA,EACN,MAAM,mCAAkB;AAC1B,CAAC;AAAA;AAAA,eAEc,CAAC,EAAE,MAAM,MAAM,MAAM,UAAU,MAAM,GAAG,CAAC;AAAA,WAC7C,CAAC,EAAE,MAAM,MAAM,MAAM,OAAO,QAAQ,KAAK,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAarD,MAAM,kBAAkB,CAAC,UAAkC;AACzD,QAAM,EAAE,UAAU,YAAY,GAAG,KAAK,IAAI;AAC1C,QAAM,iBAAa,uCAAc,KAAK;AACtC,SACE,6CAAC,0BAAwB,GAAG,MAAO,GAAG,YAAY,eAAa,yCAAwB,cACrF;AAAA,gDAAC,wDACC,sDAAC,2DAAuB,OAAO,UAAU,GAC3C;AAAA,IACC,cAAc,4CAAC,oCAAa,UAAQ,MAAC,YAAwB;AAAA,KAChE;AAEJ;AAEA,gBAAgB,eAAe;AAC/B,gBAAgB,cAAc;AAC9B,MAAM,kCAA8B,kCAAS,eAAe;AAE5D,4BAA4B,YAAY;",
|
|
6
6
|
"names": ["import_react_desc_prop_types"]
|
|
7
7
|
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var RequiredMark_exports = {};
|
|
30
|
+
__export(RequiredMark_exports, {
|
|
31
|
+
DSRequiredMark: () => RequiredMark,
|
|
32
|
+
RequiredMark: () => RequiredMark,
|
|
33
|
+
default: () => RequiredMark_default
|
|
34
|
+
});
|
|
35
|
+
module.exports = __toCommonJS(RequiredMark_exports);
|
|
36
|
+
var React = __toESM(require("react"));
|
|
37
|
+
var import_jsx_runtime = require("react/jsx-runtime");
|
|
38
|
+
var import_ds_system = require("@elliemae/ds-system");
|
|
39
|
+
var import_constants = require("../../constants/index.js");
|
|
40
|
+
const Mark = (0, import_ds_system.styled)("span", {
|
|
41
|
+
name: import_constants.DSPageHeaderName,
|
|
42
|
+
slot: import_constants.DSPageHeaderSlots.REQUIRED_MARK
|
|
43
|
+
})`
|
|
44
|
+
margin-left: ${({ theme }) => theme?.space?.xxs ?? "4px"};
|
|
45
|
+
position: relative;
|
|
46
|
+
bottom: ${({ theme, $inLegend }) => $inLegend ? "6px" : theme?.space?.xxs ?? "4px"};
|
|
47
|
+
font-size: 0.5rem;
|
|
48
|
+
${({ $variant, theme }) => $variant === "required" ? import_ds_system.css`
|
|
49
|
+
color: ${theme?.colors?.danger?.[900]};
|
|
50
|
+
` : import_ds_system.css`
|
|
51
|
+
color: ${theme?.colors?.brand?.[600]};
|
|
52
|
+
font-weight: 600;
|
|
53
|
+
`};
|
|
54
|
+
`;
|
|
55
|
+
const RequiredMark = ({ required = false, optional = false, ownerProps }) => {
|
|
56
|
+
if (!required && !optional) return null;
|
|
57
|
+
if (required) {
|
|
58
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Mark, { className: "em-ds-form-required-mark", $variant: "required", "aria-hidden": "true", ...ownerProps, children: "\u25CF" });
|
|
59
|
+
}
|
|
60
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Mark, { className: "em-ds-form-optional-mark", $variant: "optional", "aria-hidden": "true", ...ownerProps, children: "\u26AC" });
|
|
61
|
+
};
|
|
62
|
+
var RequiredMark_default = RequiredMark;
|
|
63
|
+
//# sourceMappingURL=RequiredMark.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/components/page-header-title/RequiredMark.tsx", "../../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
+
"sourcesContent": ["/* eslint-disable @typescript-eslint/ban-types */\n// RequiredMark.tsx\nimport React from 'react';\nimport { styled, css } from '@elliemae/ds-system';\nimport type { PageHeaderTitleT } from './react-desc-prop-types.js';\nimport { DSPageHeaderName, DSPageHeaderSlots } from '../../constants/index.js';\nexport type RequiredMarkProps = {\n required?: boolean;\n optional?: boolean;\n ownerProps: {\n getOwnerProps: () => PageHeaderTitleT.Props;\n getOwnerPropsArguments: () => {};\n };\n};\n\nconst Mark = styled('span', {\n name: DSPageHeaderName,\n slot: DSPageHeaderSlots.REQUIRED_MARK,\n})<{\n $variant: 'required' | 'optional';\n $inLegend?: boolean;\n}>`\n margin-left: ${({ theme }) => theme?.space?.xxs ?? '4px'};\n position: relative;\n bottom: ${({ theme, $inLegend }) => ($inLegend ? '6px' : (theme?.space?.xxs ?? '4px'))};\n font-size: 0.5rem;\n ${({ $variant, theme }) =>\n $variant === 'required'\n ? css`\n color: ${theme?.colors?.danger?.[900]};\n `\n : css`\n color: ${theme?.colors?.brand?.[600]};\n font-weight: 600;\n `};\n`;\nconst RequiredMark: React.FC<RequiredMarkProps> = ({ required = false, optional = false, ownerProps }) => {\n if (!required && !optional) return null;\n\n if (required) {\n return (\n <Mark className=\"em-ds-form-required-mark\" $variant=\"required\" aria-hidden=\"true\" {...ownerProps}>\n ●\n </Mark>\n );\n }\n\n return (\n <Mark className=\"em-ds-form-optional-mark\" $variant=\"optional\" aria-hidden=\"true\" {...ownerProps}>\n ⚬\n </Mark>\n );\n};\n\nexport { RequiredMark, RequiredMark as DSRequiredMark };\nexport default RequiredMark;\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADyCjB;AAtCN,uBAA4B;AAE5B,uBAAoD;AAUpD,MAAM,WAAO,yBAAO,QAAQ;AAAA,EAC1B,MAAM;AAAA,EACN,MAAM,mCAAkB;AAC1B,CAAC;AAAA,iBAIgB,CAAC,EAAE,MAAM,MAAM,OAAO,OAAO,OAAO,KAAK;AAAA;AAAA,YAE9C,CAAC,EAAE,OAAO,UAAU,MAAO,YAAY,QAAS,OAAO,OAAO,OAAO,KAAO;AAAA;AAAA,IAEpF,CAAC,EAAE,UAAU,MAAM,MACnB,aAAa,aACT;AAAA,mBACW,OAAO,QAAQ,SAAS,GAAG,CAAC;AAAA,YAEvC;AAAA,mBACW,OAAO,QAAQ,QAAQ,GAAG,CAAC;AAAA;AAAA,SAErC;AAAA;AAET,MAAM,eAA4C,CAAC,EAAE,WAAW,OAAO,WAAW,OAAO,WAAW,MAAM;AACxG,MAAI,CAAC,YAAY,CAAC,SAAU,QAAO;AAEnC,MAAI,UAAU;AACZ,WACE,4CAAC,QAAK,WAAU,4BAA2B,UAAS,YAAW,eAAY,QAAQ,GAAG,YAAY,oBAElG;AAAA,EAEJ;AAEA,SACE,4CAAC,QAAK,WAAU,4BAA2B,UAAS,YAAW,eAAY,QAAQ,GAAG,YAAY,oBAElG;AAEJ;AAGA,IAAO,uBAAQ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/components/page-header-title/react-desc-prop-types.ts", "../../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
-
"sourcesContent": ["import { PropTypes, globalAttributesPropTypes, xstyledPropTypes } from '@elliemae/ds-props-helpers';\nimport type { GlobalAttributesT, XstyledProps } from '@elliemae/ds-props-helpers';\n\nexport declare namespace PageHeaderTitleT {\n export interface DefaultProps {\n children: string;\n showMarker: boolean;\n }\n\n export interface OptionalProps {}\n\n export interface RequiredProps {}\n\n export interface Props\n extends Partial<DefaultProps>,\n OptionalProps,\n RequiredProps,\n Omit<GlobalAttributesT<HTMLElement>, keyof DefaultProps>,\n XstyledProps {}\n\n export interface InternalProps\n extends DefaultProps,\n OptionalProps,\n RequiredProps,\n Omit<GlobalAttributesT<HTMLElement>, keyof DefaultProps>,\n XstyledProps {}\n}\n\nexport const defaultProps: PageHeaderTitleT.DefaultProps = {\n children: '',\n showMarker: false,\n};\n\nexport const PageHeaderTitlePropTypes = {\n ...globalAttributesPropTypes,\n ...xstyledPropTypes,\n /** page header title string */\n children: PropTypes.string.description('Page header title string'),\n /** show required mark */\n showMarker: PropTypes.bool.description('show required mark'),\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,8BAAuE;
|
|
4
|
+
"sourcesContent": ["import { PropTypes, globalAttributesPropTypes, xstyledPropTypes } from '@elliemae/ds-props-helpers';\nimport type { GlobalAttributesT, XstyledProps } from '@elliemae/ds-props-helpers';\n\nexport declare namespace PageHeaderTitleT {\n export interface DefaultProps {\n children: string;\n showMarker: boolean;\n }\n\n export interface OptionalProps {}\n\n export interface RequiredProps {}\n\n export interface Props\n extends Partial<DefaultProps>,\n OptionalProps,\n RequiredProps,\n Omit<GlobalAttributesT<HTMLElement>, keyof DefaultProps>,\n XstyledProps {\n as?: React.ElementType;\n }\n\n export interface InternalProps\n extends DefaultProps,\n OptionalProps,\n RequiredProps,\n Omit<GlobalAttributesT<HTMLElement>, keyof DefaultProps>,\n XstyledProps {}\n}\n\nexport const defaultProps: PageHeaderTitleT.DefaultProps = {\n children: '',\n showMarker: false,\n};\n\nexport const PageHeaderTitlePropTypes = {\n ...globalAttributesPropTypes,\n ...xstyledPropTypes,\n /** page header title string */\n children: PropTypes.string.description('Page header title string'),\n /** show required mark */\n showMarker: PropTypes.bool.description('show required mark'),\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,8BAAuE;AA8BhE,MAAM,eAA8C;AAAA,EACzD,UAAU;AAAA,EACV,YAAY;AACd;AAEO,MAAM,2BAA2B;AAAA,EACtC,GAAG;AAAA,EACH,GAAG;AAAA;AAAA,EAEH,UAAU,kCAAU,OAAO,YAAY,0BAA0B;AAAA;AAAA,EAEjE,YAAY,kCAAU,KAAK,YAAY,oBAAoB;AAC7D;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -36,10 +36,11 @@ var import_jsx_runtime = require("react/jsx-runtime");
|
|
|
36
36
|
var import_react = require("react");
|
|
37
37
|
var import_ds_props_helpers = require("@elliemae/ds-props-helpers");
|
|
38
38
|
var import_react_desc_prop_types = require("../react-desc-prop-types.js");
|
|
39
|
+
var import_constants = require("../constants/index.js");
|
|
39
40
|
var import_exported_related = require("../exported-related/index.js");
|
|
40
41
|
const usePageHeader = (props) => {
|
|
41
42
|
const propsWithDefaults = (0, import_ds_props_helpers.useMemoMergePropsWithDefault)(props, import_react_desc_prop_types.defaultProps);
|
|
42
|
-
(0, import_ds_props_helpers.useValidateTypescriptPropTypes)(propsWithDefaults, import_react_desc_prop_types.PageHeaderPropTypes,
|
|
43
|
+
(0, import_ds_props_helpers.useValidateTypescriptPropTypes)(propsWithDefaults, import_react_desc_prop_types.PageHeaderPropTypes, import_constants.DSPageHeaderName);
|
|
43
44
|
const {
|
|
44
45
|
menu,
|
|
45
46
|
Menu,
|
|
@@ -58,6 +59,7 @@ const usePageHeader = (props) => {
|
|
|
58
59
|
} = props;
|
|
59
60
|
const globalAttributes = (0, import_ds_props_helpers.useGetGlobalAttributes)(propsWithDefaults);
|
|
60
61
|
const xStyledProps = (0, import_ds_props_helpers.useGetXstyledProps)(propsWithDefaults);
|
|
62
|
+
const ownerProps = (0, import_ds_props_helpers.useOwnerProps)(propsWithDefaults);
|
|
61
63
|
const currentBackArrow = (0, import_react.useMemo)(() => {
|
|
62
64
|
if (isSkeleton && (Backarrow || backarrow)) return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_exported_related.BackArrowSkeleton, {});
|
|
63
65
|
if (Backarrow) return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Backarrow, {});
|
|
@@ -105,6 +107,7 @@ const usePageHeader = (props) => {
|
|
|
105
107
|
currentSummary,
|
|
106
108
|
currentToolbar,
|
|
107
109
|
currentPageTitle,
|
|
110
|
+
ownerProps,
|
|
108
111
|
...rest
|
|
109
112
|
}),
|
|
110
113
|
[
|
|
@@ -116,6 +119,7 @@ const usePageHeader = (props) => {
|
|
|
116
119
|
currentSummary,
|
|
117
120
|
currentToolbar,
|
|
118
121
|
globalAttributes,
|
|
122
|
+
ownerProps,
|
|
119
123
|
rest,
|
|
120
124
|
xStyledProps
|
|
121
125
|
]
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/config/usePageHeader.tsx", "../../../../../../scripts/build/transpile/react-shim.js"],
|
|
4
|
-
"sourcesContent": ["/* eslint-disable complexity */\nimport { useMemo } from 'react';\nimport {\n useValidateTypescriptPropTypes,\n useMemoMergePropsWithDefault,\n useGetGlobalAttributes,\n useGetXstyledProps,\n} from '@elliemae/ds-props-helpers';\n\nimport type { DSPageHeaderT } from '../react-desc-prop-types.js';\nimport { PageHeaderPropTypes, defaultProps } from '../react-desc-prop-types.js';\nimport {\n
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;
|
|
4
|
+
"sourcesContent": ["/* eslint-disable complexity */\nimport { useMemo } from 'react';\nimport {\n useValidateTypescriptPropTypes,\n useMemoMergePropsWithDefault,\n useGetGlobalAttributes,\n useGetXstyledProps,\n useOwnerProps,\n} from '@elliemae/ds-props-helpers';\n\nimport type { DSPageHeaderT } from '../react-desc-prop-types.js';\nimport { PageHeaderPropTypes, defaultProps } from '../react-desc-prop-types.js';\nimport { DSPageHeaderName } from '../constants/index.js';\nimport {\n BackArrowSkeleton,\n BreadcrumbSkeleton,\n MenuSkeleton,\n PageTitleSkeleton,\n SummarySkeleton,\n ToolbarSkeleton,\n} from '../exported-related/index.js';\nexport const usePageHeader = (props: DSPageHeaderT.Props) => {\n const propsWithDefaults = useMemoMergePropsWithDefault<DSPageHeaderT.InternalProps>(props, defaultProps);\n useValidateTypescriptPropTypes(propsWithDefaults, PageHeaderPropTypes, DSPageHeaderName);\n\n const {\n menu,\n Menu,\n pageTitle,\n PageTitle,\n toolbar,\n Toolbar,\n summary,\n Summary,\n backarrow,\n Backarrow,\n breadcrumbs,\n Breadcrumbs,\n isSkeleton,\n ...rest\n } = props;\n\n const globalAttributes = useGetGlobalAttributes<DSPageHeaderT.InternalProps, HTMLDivElement>(propsWithDefaults);\n const xStyledProps = useGetXstyledProps(propsWithDefaults);\n\n const ownerProps = useOwnerProps(propsWithDefaults);\n\n const currentBackArrow = useMemo(() => {\n if (isSkeleton && (Backarrow || backarrow)) return <BackArrowSkeleton />;\n if (Backarrow) return <Backarrow />;\n if (backarrow) return backarrow;\n return undefined;\n }, [Backarrow, backarrow, isSkeleton]);\n\n const CurrentMenu = useMemo(() => {\n if (isSkeleton && (Menu || menu)) return MenuSkeleton;\n if (Menu) return Menu;\n if (menu) return () => menu;\n return undefined;\n }, [Menu, menu, isSkeleton]);\n\n const currentBreadcrumbs = useMemo(() => {\n if (isSkeleton && (Breadcrumbs || breadcrumbs)) return <BreadcrumbSkeleton />;\n if (Breadcrumbs) return <Breadcrumbs />;\n if (breadcrumbs) return breadcrumbs;\n return undefined;\n }, [Breadcrumbs, breadcrumbs, isSkeleton]);\n\n const currentSummary = useMemo(() => {\n if (isSkeleton && (Summary || summary)) return <SummarySkeleton />;\n if (Summary) return <Summary />;\n if (summary) return summary;\n return undefined;\n }, [Summary, summary, isSkeleton]);\n\n const currentToolbar = useMemo(() => {\n if (isSkeleton && (Toolbar || toolbar)) return <ToolbarSkeleton />;\n if (Toolbar) return <Toolbar />;\n if (toolbar) return toolbar;\n return undefined;\n }, [Toolbar, toolbar, isSkeleton]);\n\n const currentPageTitle = useMemo(() => {\n if (isSkeleton && (PageTitle || pageTitle)) return <PageTitleSkeleton />;\n if (PageTitle) return <PageTitle />;\n if (pageTitle) return pageTitle;\n return undefined;\n }, [PageTitle, pageTitle, isSkeleton]);\n\n return useMemo(\n () => ({\n propsWithDefaults,\n globalAttributes,\n xStyledProps,\n currentBackArrow,\n CurrentMenu,\n currentBreadcrumbs,\n currentSummary,\n currentToolbar,\n currentPageTitle,\n ownerProps,\n ...rest,\n }),\n [\n propsWithDefaults,\n currentBackArrow,\n currentBreadcrumbs,\n CurrentMenu,\n currentPageTitle,\n currentSummary,\n currentToolbar,\n globalAttributes,\n ownerProps,\n rest,\n xStyledProps,\n ],\n );\n};\n", "import * as React from 'react';\nexport { React };\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADgDgC;AA/CvD,mBAAwB;AACxB,8BAMO;AAGP,mCAAkD;AAClD,uBAAiC;AACjC,8BAOO;AACA,MAAM,gBAAgB,CAAC,UAA+B;AAC3D,QAAM,wBAAoB,sDAA0D,OAAO,yCAAY;AACvG,8DAA+B,mBAAmB,kDAAqB,iCAAgB;AAEvF,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,GAAG;AAAA,EACL,IAAI;AAEJ,QAAM,uBAAmB,gDAAoE,iBAAiB;AAC9G,QAAM,mBAAe,4CAAmB,iBAAiB;AAEzD,QAAM,iBAAa,uCAAc,iBAAiB;AAElD,QAAM,uBAAmB,sBAAQ,MAAM;AACrC,QAAI,eAAe,aAAa,WAAY,QAAO,4CAAC,6CAAkB;AACtE,QAAI,UAAW,QAAO,4CAAC,aAAU;AACjC,QAAI,UAAW,QAAO;AACtB,WAAO;AAAA,EACT,GAAG,CAAC,WAAW,WAAW,UAAU,CAAC;AAErC,QAAM,kBAAc,sBAAQ,MAAM;AAChC,QAAI,eAAe,QAAQ,MAAO,QAAO;AACzC,QAAI,KAAM,QAAO;AACjB,QAAI,KAAM,QAAO,MAAM;AACvB,WAAO;AAAA,EACT,GAAG,CAAC,MAAM,MAAM,UAAU,CAAC;AAE3B,QAAM,yBAAqB,sBAAQ,MAAM;AACvC,QAAI,eAAe,eAAe,aAAc,QAAO,4CAAC,8CAAmB;AAC3E,QAAI,YAAa,QAAO,4CAAC,eAAY;AACrC,QAAI,YAAa,QAAO;AACxB,WAAO;AAAA,EACT,GAAG,CAAC,aAAa,aAAa,UAAU,CAAC;AAEzC,QAAM,qBAAiB,sBAAQ,MAAM;AACnC,QAAI,eAAe,WAAW,SAAU,QAAO,4CAAC,2CAAgB;AAChE,QAAI,QAAS,QAAO,4CAAC,WAAQ;AAC7B,QAAI,QAAS,QAAO;AACpB,WAAO;AAAA,EACT,GAAG,CAAC,SAAS,SAAS,UAAU,CAAC;AAEjC,QAAM,qBAAiB,sBAAQ,MAAM;AACnC,QAAI,eAAe,WAAW,SAAU,QAAO,4CAAC,2CAAgB;AAChE,QAAI,QAAS,QAAO,4CAAC,WAAQ;AAC7B,QAAI,QAAS,QAAO;AACpB,WAAO;AAAA,EACT,GAAG,CAAC,SAAS,SAAS,UAAU,CAAC;AAEjC,QAAM,uBAAmB,sBAAQ,MAAM;AACrC,QAAI,eAAe,aAAa,WAAY,QAAO,4CAAC,6CAAkB;AACtE,QAAI,UAAW,QAAO,4CAAC,aAAU;AACjC,QAAI,UAAW,QAAO;AACtB,WAAO;AAAA,EACT,GAAG,CAAC,WAAW,WAAW,UAAU,CAAC;AAErC,aAAO;AAAA,IACL,OAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA,GAAG;AAAA,IACL;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF;AACF;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
|
@@ -26,20 +26,41 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
26
26
|
mod
|
|
27
27
|
));
|
|
28
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
-
var
|
|
30
|
-
__export(
|
|
29
|
+
var constants_exports = {};
|
|
30
|
+
__export(constants_exports, {
|
|
31
|
+
DSPageHeaderDataTestIds: () => DSPageHeaderDataTestIds,
|
|
31
32
|
DSPageHeaderName: () => DSPageHeaderName,
|
|
32
|
-
DSPageHeaderSlots: () => DSPageHeaderSlots
|
|
33
|
+
DSPageHeaderSlots: () => DSPageHeaderSlots,
|
|
34
|
+
FONT_DETECTOR: () => FONT_DETECTOR
|
|
33
35
|
});
|
|
34
|
-
module.exports = __toCommonJS(
|
|
36
|
+
module.exports = __toCommonJS(constants_exports);
|
|
35
37
|
var React = __toESM(require("react"));
|
|
38
|
+
var import_ds_system = require("@elliemae/ds-system");
|
|
36
39
|
const DSPageHeaderName = "DSPageheader";
|
|
37
40
|
const DSPageHeaderSlots = {
|
|
38
41
|
CONTAINER: "root",
|
|
39
42
|
HEADER_TITLE: "header-title",
|
|
43
|
+
TITLE_INPUT: "title-input",
|
|
40
44
|
TOOLBAR: "toolbar",
|
|
41
45
|
MENU: "menu",
|
|
42
46
|
SUMMARY: "summary",
|
|
43
|
-
|
|
47
|
+
SUMMARY_VALUE: "summary-value",
|
|
48
|
+
SUMMARY_LABEL: "summary-label",
|
|
49
|
+
SUMMARY_SPACE: "summary-space",
|
|
50
|
+
BACK: "back",
|
|
51
|
+
REQUIRED_MARK: "required-mark",
|
|
52
|
+
BREADCRUMB: "breadcrumb"
|
|
44
53
|
};
|
|
45
|
-
|
|
54
|
+
const DSPageHeaderDataTestIds = {
|
|
55
|
+
...(0, import_ds_system.slotObjectToDataTestIds)(DSPageHeaderName, DSPageHeaderSlots),
|
|
56
|
+
CONTAINER: "ds-page-header-container",
|
|
57
|
+
HEADER_TITLE: "ds-page-header-title",
|
|
58
|
+
EDITABLE_HEADER_TITLE: "ds-page-header-editable-title",
|
|
59
|
+
SUMMARY: "ds-page-header-summary"
|
|
60
|
+
};
|
|
61
|
+
const FONT_DETECTOR = {
|
|
62
|
+
SMALL: 1,
|
|
63
|
+
MEDIUM: 2,
|
|
64
|
+
LARGE: 3
|
|
65
|
+
};
|
|
66
|
+
//# sourceMappingURL=index.js.map
|