@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.
Files changed (60) hide show
  1. package/dist/cjs/PageHeader.js +25 -11
  2. package/dist/cjs/PageHeader.js.map +3 -3
  3. package/dist/cjs/components/page-header-editable-title/PageHeaderEditableTitle.js +33 -21
  4. package/dist/cjs/components/page-header-editable-title/PageHeaderEditableTitle.js.map +2 -2
  5. package/dist/cjs/components/page-header-summary/PageHeaderSummary.js +20 -7
  6. package/dist/cjs/components/page-header-summary/PageHeaderSummary.js.map +2 -2
  7. package/dist/cjs/components/page-header-title/PageHeaderTitle.js +12 -8
  8. package/dist/cjs/components/page-header-title/PageHeaderTitle.js.map +2 -2
  9. package/dist/cjs/components/page-header-title/RequiredMark.js +63 -0
  10. package/dist/cjs/components/page-header-title/RequiredMark.js.map +7 -0
  11. package/dist/cjs/components/page-header-title/react-desc-prop-types.js.map +2 -2
  12. package/dist/cjs/config/usePageHeader.js +5 -1
  13. package/dist/cjs/config/usePageHeader.js.map +2 -2
  14. package/dist/cjs/{exported-related/theming.js → constants/index.js} +27 -6
  15. package/dist/cjs/constants/index.js.map +7 -0
  16. package/dist/cjs/exported-related/index.js +0 -2
  17. package/dist/cjs/exported-related/index.js.map +2 -2
  18. package/dist/cjs/index.js +1 -0
  19. package/dist/cjs/index.js.map +2 -2
  20. package/dist/cjs/styled.js +15 -9
  21. package/dist/cjs/styled.js.map +2 -2
  22. package/dist/esm/PageHeader.js +26 -11
  23. package/dist/esm/PageHeader.js.map +3 -3
  24. package/dist/esm/components/page-header-editable-title/PageHeaderEditableTitle.js +35 -23
  25. package/dist/esm/components/page-header-editable-title/PageHeaderEditableTitle.js.map +2 -2
  26. package/dist/esm/components/page-header-summary/PageHeaderSummary.js +19 -6
  27. package/dist/esm/components/page-header-summary/PageHeaderSummary.js.map +2 -2
  28. package/dist/esm/components/page-header-title/PageHeaderTitle.js +11 -7
  29. package/dist/esm/components/page-header-title/PageHeaderTitle.js.map +2 -2
  30. package/dist/esm/components/page-header-title/RequiredMark.js +33 -0
  31. package/dist/esm/components/page-header-title/RequiredMark.js.map +7 -0
  32. package/dist/esm/components/page-header-title/react-desc-prop-types.js.map +2 -2
  33. package/dist/esm/config/usePageHeader.js +6 -2
  34. package/dist/esm/config/usePageHeader.js.map +2 -2
  35. package/dist/esm/constants/index.js +36 -0
  36. package/dist/esm/constants/index.js.map +7 -0
  37. package/dist/esm/exported-related/index.js +0 -2
  38. package/dist/esm/exported-related/index.js.map +2 -2
  39. package/dist/esm/index.js +1 -0
  40. package/dist/esm/index.js.map +2 -2
  41. package/dist/esm/styled.js +7 -1
  42. package/dist/esm/styled.js.map +2 -2
  43. package/dist/types/components/page-header-title/PageHeaderTitle.d.ts +1 -1
  44. package/dist/types/components/page-header-title/RequiredMark.d.ts +13 -0
  45. package/dist/types/components/page-header-title/react-desc-prop-types.d.ts +1 -0
  46. package/dist/types/config/usePageHeader.d.ts +185 -181
  47. package/dist/types/constants/index.d.ts +35 -0
  48. package/dist/types/exported-related/index.d.ts +0 -2
  49. package/dist/types/index.d.ts +1 -0
  50. package/dist/types/styled.d.ts +1 -0
  51. package/package.json +26 -32
  52. package/dist/cjs/exported-related/data-test-ids.js +0 -41
  53. package/dist/cjs/exported-related/data-test-ids.js.map +0 -7
  54. package/dist/cjs/exported-related/theming.js.map +0 -7
  55. package/dist/esm/exported-related/data-test-ids.js +0 -11
  56. package/dist/esm/exported-related/data-test-ids.js.map +0 -7
  57. package/dist/esm/exported-related/theming.js +0 -15
  58. package/dist/esm/exported-related/theming.js.map +0 -7
  59. package/dist/types/exported-related/data-test-ids.d.ts +0 -6
  60. package/dist/types/exported-related/theming.d.ts +0 -9
@@ -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 import_exported_related = require("./exported-related/index.js");
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 = ["1fr", "auto"];
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 && "30px",
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
- "data-testid": import_exported_related.DSPageHeaderDataTestIds.CONTAINER,
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)(import_ds_grid.Grid, { className: "em-ds-page-header-v2-breadcrumb", children: currentBreadcrumbs }),
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 = import_exported_related.DSPageHeaderName;
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 './exported-related/index.js';\n\nconst MenuRegion: React.ComponentType<{ CurrentMenu?: React.ComponentType }> = ({ CurrentMenu }) => {\n if (!CurrentMenu) return null;\n return (\n <PageHeaderMenu>\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 { isSkeleton } = props;\n const wrapperRow = ['auto', '1fr'];\n const mainRow = ['1fr', 'auto'];\n const pageTitleRow = [\n isSkeleton ? '2fr' : 'auto',\n CurrentMenu !== undefined && '30px',\n currentSummary !== undefined && 'auto',\n '1fr',\n ].filter((col) => typeof col === 'string');\n\n return (\n <Container\n {...containerProps}\n {...globalAttributes}\n {...xStyledProps}\n data-testid={DSPageHeaderDataTestIds.CONTAINER}\n >\n <ContainerWBorder withBottomSeparator={withBottomSeparator}>\n <Grid cols={wrapperRow}>\n <Grid>\n <PageHeaderBack>{currentBackArrow}</PageHeaderBack>\n </Grid>\n <Grid rows={['auto', 'auto']}>\n <Grid className=\"em-ds-page-header-v2-breadcrumb\">{currentBreadcrumbs}</Grid>\n <Grid cols={mainRow} alignItems=\"center\">\n <Grid cols={pageTitleRow} alignItems=\"center\">\n {currentPageTitle}\n <MenuRegion CurrentMenu={CurrentMenu} />\n {currentSummary}\n <div />\n </Grid>\n <Grid>\n <PageHeaderToolbarWrapper>{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;AD0BjB;AAtBN,8BAAyB;AACzB,qBAAqB;AACrB,oBAOO;AACP,2BAA8B;AAC9B,+BAAgC;AAChC,wCAAwC;AACxC,iCAAkC;AAElC,mCAAkD;AAClD,8BAA0D;AAE1D,MAAM,aAAyE,CAAC,EAAE,YAAY,MAAM;AAClG,MAAI,CAAC,YAAa,QAAO;AACzB,SACE,4CAAC,gCACC,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,EAAE,WAAW,IAAI;AACvB,QAAM,aAAa,CAAC,QAAQ,KAAK;AACjC,QAAM,UAAU,CAAC,OAAO,MAAM;AAC9B,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,MACJ,eAAa,gDAAwB;AAAA,MAErC,sDAAC,kCAAiB,qBAChB,uDAAC,uBAAK,MAAM,YACV;AAAA,oDAAC,uBACC,sDAAC,gCAAgB,4BAAiB,GACpC;AAAA,QACA,6CAAC,uBAAK,MAAM,CAAC,QAAQ,MAAM,GACzB;AAAA,sDAAC,uBAAK,WAAU,mCAAmC,8BAAmB;AAAA,UACtE,6CAAC,uBAAK,MAAM,SAAS,YAAW,UAC9B;AAAA,yDAAC,uBAAK,MAAM,cAAc,YAAW,UAClC;AAAA;AAAA,cACD,4CAAC,cAAW,aAA0B;AAAA,cACrC;AAAA,cACD,4CAAC,SAAI;AAAA,eACP;AAAA,YACA,4CAAC,uBACC,sDAAC,0CAA0B,0BAAe,GAC5C;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": []
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 import_exported_related = require("../../exported-related/index.js");
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
- height: 32px;
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
- const width = titleRef.current?.offsetWidth || 0;
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.jsxs)(
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
- "data-testid": import_exported_related.DSPageHeaderDataTestIds.EDITABLE_HEADER_TITLE,
100
- children: [
101
- (hovered || editing) && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
102
- import_ds_form_input_text.DSInputText,
103
- {
104
- onChange: handleOnChange,
105
- ...rest,
106
- ...globals,
107
- placeholder: "",
108
- style: { width: width + 10, minWidth: "260px", maxWidth: "100%" },
109
- value: titleValue
110
- }
111
- ),
112
- /* @__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 }) })
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 '../../exported-related/index.js';\nimport { PageHeaderEditableTitlePropTypes, type PageHeaderEditableTitleT } from './react-desc-prop-types.js';\n\nconst EditableContainer = styled('div')`\n 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 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\nexport const PageHeaderEditableTitle = (props: PageHeaderEditableTitleT.Props) => {\n const { children: value, editing: editingProp, showMarker, ...rest } = props;\n const [titleValue, setTitleValue] = useState(value);\n const [hovered, setHovered] = useState(false);\n const [editing, setEditing] = useDerivedStateFromProps(editingProp || false);\n const titleRef = useRef<HTMLDivElement>(null);\n const width = titleRef.current?.offsetWidth || 0;\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 data-testid={DSPageHeaderDataTestIds.EDITABLE_HEADER_TITLE}\n >\n {(hovered || editing) && (\n <DSInputText\n onChange={handleOnChange}\n {...rest}\n {...globals}\n placeholder=\"\"\n style={{ width: width + 10, minWidth: '260px', maxWidth: '100%' }}\n value={titleValue}\n />\n )}\n <div ref={titleRef} style={{ width: 'fit-content' }}>\n <PageHeaderTitle showMarker={showMarker && !hovered && !editing}>{titleValue}</PageHeaderTitle>\n </div>\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;ADgEnB;AAhEJ,mBAAqD;AACrD,gCAA+D;AAC/D,uBAAuB;AACvB,8BAAqE;AACrE,sCAAyC;AACzC,+BAAgC;AAChC,8BAAwC;AACxC,mCAAgF;AAEhF,MAAM,wBAAoB,yBAAO,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,SAU7B,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;AAOlD,MAAM,0BAA0B,CAAC,UAA0C;AAChF,QAAM,EAAE,UAAU,OAAO,SAAS,aAAa,YAAY,GAAG,KAAK,IAAI;AACvE,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,eAAW,qBAAuB,IAAI;AAC5C,QAAM,QAAQ,SAAS,SAAS,eAAe;AAE/C,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,MACpC,eAAa,gDAAwB;AAAA,MAEnC;AAAA,oBAAW,YACX;AAAA,UAAC;AAAA;AAAA,YACC,UAAU;AAAA,YACT,GAAG;AAAA,YACH,GAAG;AAAA,YACJ,aAAY;AAAA,YACZ,OAAO,EAAE,OAAO,QAAQ,IAAI,UAAU,SAAS,UAAU,OAAO;AAAA,YAChE,OAAO;AAAA;AAAA,QACT;AAAA,QAEF,4CAAC,SAAI,KAAK,UAAU,OAAO,EAAE,OAAO,cAAc,GAChD,sDAAC,4CAAgB,YAAY,cAAc,CAAC,WAAW,CAAC,SAAU,sBAAW,GAC/E;AAAA;AAAA;AAAA,EACF;AAEJ;AAEA,wBAAwB,cAAc;AACtC,MAAM,0CAAsC,kCAAS,uBAAuB;AAE5E,oCAAoC,YAAY;AAEhD,IAAO,kCAAQ;",
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 import_exported_related = require("../../exported-related/index.js");
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: import_exported_related.DSPageHeaderName,
43
- slot: import_exported_related.DSPageHeaderSlots.SUMMARY
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
- return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(PageHeaderSummaryWrapper, { "data-testid": import_exported_related.DSPageHeaderDataTestIds.SUMMARY, ...rest, children: [
75
- (value === 0 || value) && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "ph-summary-value", children: value }),
76
- label && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "ph-summary-label", children: label }),
77
- (value === 0 || value || label) && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "ph-summary-space" })
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 '../../exported-related/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 PageHeaderSummary = (props: PageHeaderSummaryT.Props) => {\n const { value = null, label = '', ...rest } = props;\n return (\n <PageHeaderSummaryWrapper data-testid={DSPageHeaderDataTestIds.SUMMARY} {...rest}>\n {(value === 0 || value) && <div className=\"ph-summary-value\">{value}</div>}\n {label && <div className=\"ph-summary-label\">{label}</div>}\n {(value === 0 || value || label) && <div className=\"ph-summary-space\" />}\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;ADyCnB;AAxCJ,8BAA6C;AAC7C,uBAAuB;AACvB,8BAA6E;AAC7E,mCAAoE;AAEpE,MAAM,+BAA2B,yBAAO,OAAO;AAAA,EAC7C,MAAM;AAAA,EACN,MAAM,0CAAkB;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,oBAAoB,CAAC,UAAoC;AAC7D,QAAM,EAAE,QAAQ,MAAM,QAAQ,IAAI,GAAG,KAAK,IAAI;AAC9C,SACE,6CAAC,4BAAyB,eAAa,gDAAwB,SAAU,GAAG,MACxE;AAAA,eAAU,KAAK,UAAU,4CAAC,SAAI,WAAU,oBAAoB,iBAAM;AAAA,IACnE,SAAS,4CAAC,SAAI,WAAU,oBAAoB,iBAAM;AAAA,KACjD,UAAU,KAAK,SAAS,UAAU,4CAAC,SAAI,WAAU,oBAAmB;AAAA,KACxE;AAEJ;AAEA,kBAAkB,cAAc;AAChC,MAAM,oCAAgC,kCAAS,iBAAiB;AAEhE,8BAA8B,YAAY;",
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 import_ds_form = require("@elliemae/ds-form");
41
- var import_exported_related = require("../../exported-related/index.js");
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: import_exported_related.DSPageHeaderName,
46
- slot: import_exported_related.DSPageHeaderSlots.HEADER_TITLE
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 = ({ children = "", showMarker = false, ...rest }) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(PageHeaderTitleWrapper, { ...rest, "data-testid": import_exported_related.DSPageHeaderDataTestIds.HEADER_TITLE, children: [
63
- /* @__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 }) }),
64
- showMarker && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ds_form.RequiredMark, { required: true })
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 '@elliemae/ds-form';\nimport { DSPageHeaderName, DSPageHeaderSlots, DSPageHeaderDataTestIds } from '../../exported-related/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 = ({ children = '', showMarker = false, ...rest }: PageHeaderTitleT.Props) => (\n <PageHeaderTitleWrapper {...rest} data-testid={DSPageHeaderDataTestIds.HEADER_TITLE}>\n <TooltipTextProvider>\n <DSTruncatedTooltipText value={children} />\n </TooltipTextProvider>\n {showMarker && <RequiredMark required />}\n </PageHeaderTitleWrapper>\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;AD6BrB;AA5BF,uBAAuB;AACvB,8BAA6C;AAC7C,uCAA4D;AAC5D,qBAA6B;AAC7B,8BAA6E;AAC7E,mCAAgE;AAChE,IAAAA,gCAA6B;AAE7B,MAAM,6BAAyB,yBAAO,OAAO;AAAA,EAC3C,MAAM;AAAA,EACN,MAAM,0CAAkB;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,EAAE,WAAW,IAAI,aAAa,OAAO,GAAG,KAAK,MACpE,6CAAC,0BAAwB,GAAG,MAAM,eAAa,gDAAwB,cACrE;AAAA,8CAAC,wDACC,sDAAC,2DAAuB,OAAO,UAAU,GAC3C;AAAA,EACC,cAAc,4CAAC,+BAAa,UAAQ,MAAC;AAAA,GACxC;AAGF,gBAAgB,eAAe;AAC/B,gBAAgB,cAAc;AAC9B,MAAM,kCAA8B,kCAAS,eAAe;AAE5D,4BAA4B,YAAY;",
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 &#9679;\n </Mark>\n );\n }\n\n return (\n <Mark className=\"em-ds-form-optional-mark\" $variant=\"optional\" aria-hidden=\"true\" {...ownerProps}>\n &#9900;\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;AA4BhE,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;",
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, import_exported_related.DSPageHeaderName);
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 DSPageHeaderName,\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 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 ...rest,\n }),\n [\n propsWithDefaults,\n currentBackArrow,\n currentBreadcrumbs,\n CurrentMenu,\n currentPageTitle,\n currentSummary,\n currentToolbar,\n globalAttributes,\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;AD6CgC;AA5CvD,mBAAwB;AACxB,8BAKO;AAGP,mCAAkD;AAClD,8BAQO;AACA,MAAM,gBAAgB,CAAC,UAA+B;AAC3D,QAAM,wBAAoB,sDAA0D,OAAO,yCAAY;AACvG,8DAA+B,mBAAmB,kDAAqB,wCAAgB;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,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,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,IACF;AAAA,EACF;AACF;",
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 theming_exports = {};
30
- __export(theming_exports, {
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(theming_exports);
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
- BACK: "back"
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
- //# sourceMappingURL=theming.js.map
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