@homebound/beam 3.56.1 → 3.58.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Css.json +1 -0
- package/dist/index.cjs +336 -110
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +88 -1
- package/dist/index.d.ts +88 -1
- package/dist/index.js +324 -104
- package/dist/index.js.map +1 -1
- package/dist/truss.css +4 -4
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -3870,6 +3870,10 @@ var CssBuilder = class _CssBuilder {
|
|
|
3870
3870
|
get transitionTop() {
|
|
3871
3871
|
return this.add("transition", "top 200ms cubic-bezier(0.4, 0, 0.2, 1)");
|
|
3872
3872
|
}
|
|
3873
|
+
/** Sets `transition: "all 200ms cubic-bezier(0.4, 0, 0.2, 1)"`. */
|
|
3874
|
+
get transitionAll() {
|
|
3875
|
+
return this.add("transition", "all 200ms cubic-bezier(0.4, 0, 0.2, 1)");
|
|
3876
|
+
}
|
|
3873
3877
|
// buttonBase
|
|
3874
3878
|
/** Sets `fontWeight: 600; fontSize: "14px"; lineHeight: "20px"; outline: 0; borderRadius: "8px"; display: "inline-flex"; alignItems: "center"; whiteSpace: "nowrap"; transition: "background-color 200ms cubic-bezier(0.4, 0, 0.2, 1), border-color 200ms cubic-bezier(0.4, 0, 0.2, 1), box-shadow 200ms cubic-bezier(0.4, 0, 0.2, 1), left 200ms cubic-bezier(0.4, 0, 0.2, 1), right 200ms cubic-bezier(0.4, 0, 0.2, 1), margin 200ms cubic-bezier(0.4, 0, 0.2, 1), width 200ms cubic-bezier(0.4, 0, 0.2, 1), opacity 200ms cubic-bezier(0.4, 0, 0.2, 1)"`. */
|
|
3875
3879
|
get buttonBase() {
|
|
@@ -5995,6 +5999,7 @@ var beamLayoutViewportWidthVar = "--beam-layout-viewport-width";
|
|
|
5995
5999
|
var beamLayoutViewportHeightVar = "--beam-layout-viewport-height";
|
|
5996
6000
|
var beamSideNavLayoutWidthVar = "--beam-side-nav-layout-width";
|
|
5997
6001
|
var beamTableActionsHeightVar = "--beam-table-actions-height";
|
|
6002
|
+
var beamWorkflowLayoutFooterHeightVar = "--beam-workflow-layout-footer-height";
|
|
5998
6003
|
function documentScrollChromeLeft() {
|
|
5999
6004
|
return `var(${beamSideNavLayoutWidthVar}, 0px)`;
|
|
6000
6005
|
}
|
|
@@ -6010,6 +6015,9 @@ function stickyNavAndHeaderOffset(basePx = 0) {
|
|
|
6010
6015
|
function stickyTableHeaderOffset(basePx = 0) {
|
|
6011
6016
|
return `calc(${basePx}px + var(${beamEnvironmentBannerLayoutHeightVar}, 0px) + var(${beamNavbarLayoutHeightVar}, 0px) + var(${beamPageHeaderLayoutHeightVar}, 0px) + var(${beamTableActionsHeightVar}, 0px))`;
|
|
6012
6017
|
}
|
|
6018
|
+
function getFloatingBottomOffset(basePx = 0) {
|
|
6019
|
+
return `calc(${basePx}px + var(${beamWorkflowLayoutFooterHeightVar}, 0px))`;
|
|
6020
|
+
}
|
|
6013
6021
|
|
|
6014
6022
|
// src/utils/zIndices.ts
|
|
6015
6023
|
var zIndices = {
|
|
@@ -6026,6 +6034,8 @@ var zIndices = {
|
|
|
6026
6034
|
superDrawerScrim: 55,
|
|
6027
6035
|
modalUnderlay: 60,
|
|
6028
6036
|
pageStickyHeader: 70,
|
|
6037
|
+
// Sticky mobile action footer (WorkflowLayout) — same tier as pageStickyHeader; header and footer never overlap on screen.
|
|
6038
|
+
pageStickyFooter: 70,
|
|
6029
6039
|
dragHandle: 80,
|
|
6030
6040
|
// Side-nav layer. Mobile rail overlays page content when expanded; sits below
|
|
6031
6041
|
// snackbar so toasts still land on top.
|
|
@@ -8956,7 +8966,7 @@ function RowImpl(props) {
|
|
|
8956
8966
|
"--width": maybeCssVar13(__maybeInc6(`calc(${columnSizes.slice(columnIndex, columnIndex + currentColspan).join(" + ")}${applyFirstContentColumnStyles && levelIndent ? ` - ${levelIndent}px` : ""})`))
|
|
8957
8967
|
}]
|
|
8958
8968
|
},
|
|
8959
|
-
// Gutter columns are budgeted at
|
|
8969
|
+
// Gutter columns are budgeted at pageContentGutterPx; strip cell padding so flex min-content does not exceed that width.
|
|
8960
8970
|
...column2.isLayoutGutter && {
|
|
8961
8971
|
paddingLeft: "pl0",
|
|
8962
8972
|
paddingRight: "pr0",
|
|
@@ -15420,6 +15430,22 @@ function SelectToggle({ id, disabled }) {
|
|
|
15420
15430
|
);
|
|
15421
15431
|
}
|
|
15422
15432
|
|
|
15433
|
+
// src/layouts/layoutSpacing.ts
|
|
15434
|
+
var pageContentGutterPx = 12;
|
|
15435
|
+
var pageContentPaddingX = {
|
|
15436
|
+
paddingLeft: "pl3",
|
|
15437
|
+
paddingRight: "pr3"
|
|
15438
|
+
};
|
|
15439
|
+
function headerContentPaddingX(compact = false) {
|
|
15440
|
+
return compact ? {
|
|
15441
|
+
paddingLeft: "pl1",
|
|
15442
|
+
paddingRight: "pr1"
|
|
15443
|
+
} : {
|
|
15444
|
+
paddingLeft: "pl1 mdandup_pl5",
|
|
15445
|
+
paddingRight: "pr1 mdandup_pr5"
|
|
15446
|
+
};
|
|
15447
|
+
}
|
|
15448
|
+
|
|
15423
15449
|
// src/components/Table/utils/columns.tsx
|
|
15424
15450
|
import { jsx as jsx90 } from "react/jsx-runtime";
|
|
15425
15451
|
function column(columnDef) {
|
|
@@ -15526,7 +15552,6 @@ function pinColumn(columnDef) {
|
|
|
15526
15552
|
});
|
|
15527
15553
|
});
|
|
15528
15554
|
}
|
|
15529
|
-
var columnGutterPx = 12;
|
|
15530
15555
|
var layoutGutterLeftColumnId = "beamLayoutGutterLeft";
|
|
15531
15556
|
var layoutGutterRightColumnId = "beamLayoutGutterRight";
|
|
15532
15557
|
function isContentColumn(column2) {
|
|
@@ -15538,7 +15563,7 @@ function layoutGutterColumn(side) {
|
|
|
15538
15563
|
...nonKindDefaults(),
|
|
15539
15564
|
id,
|
|
15540
15565
|
clientSideSort: false,
|
|
15541
|
-
w: `${
|
|
15566
|
+
w: `${pageContentGutterPx}px`,
|
|
15542
15567
|
wrapAction: false,
|
|
15543
15568
|
isLayoutGutter: true,
|
|
15544
15569
|
canHide: false,
|
|
@@ -16316,6 +16341,9 @@ import { createContext as createContext6, useCallback as useCallback20, useConte
|
|
|
16316
16341
|
import { useCallback as useCallback19, useEffect as useEffect19, useState as useState30 } from "react";
|
|
16317
16342
|
import { trussProps as trussProps55, maybeCssVar as maybeCssVar30 } from "@homebound/truss/runtime";
|
|
16318
16343
|
import { jsx as jsx91 } from "react/jsx-runtime";
|
|
16344
|
+
var __maybeInc10 = (inc) => {
|
|
16345
|
+
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
16346
|
+
};
|
|
16319
16347
|
function DocumentScrollToTopButton({
|
|
16320
16348
|
viewportHeight
|
|
16321
16349
|
}) {
|
|
@@ -16344,7 +16372,7 @@ function DocumentScrollToTopButton({
|
|
|
16344
16372
|
...{
|
|
16345
16373
|
position: "fixed",
|
|
16346
16374
|
bottom: ["bottom_var", {
|
|
16347
|
-
"--bottom":
|
|
16375
|
+
"--bottom": maybeCssVar30(__maybeInc10(getFloatingBottomOffset(scrollToTopOffsetPx)))
|
|
16348
16376
|
}],
|
|
16349
16377
|
right: ["right_var", {
|
|
16350
16378
|
"--right": `${scrollToTopOffsetPx}px`
|
|
@@ -16432,7 +16460,7 @@ import { useMemo as useMemo27 } from "react";
|
|
|
16432
16460
|
import { Link as Link4 } from "react-router-dom";
|
|
16433
16461
|
import { trussProps as trussProps56, mergeProps as mergeProps20, maybeCssVar as maybeCssVar31 } from "@homebound/truss/runtime";
|
|
16434
16462
|
import { jsx as jsx93, jsxs as jsxs50 } from "react/jsx-runtime";
|
|
16435
|
-
var
|
|
16463
|
+
var __maybeInc11 = (inc) => {
|
|
16436
16464
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
16437
16465
|
};
|
|
16438
16466
|
function TableCard(props) {
|
|
@@ -16563,7 +16591,7 @@ function TableCardView(props) {
|
|
|
16563
16591
|
borderRadius: "br4",
|
|
16564
16592
|
backgroundColor: "bgBlue500",
|
|
16565
16593
|
width: ["w_var", {
|
|
16566
|
-
"--width": maybeCssVar31(
|
|
16594
|
+
"--width": maybeCssVar31(__maybeInc11(`${progressValue}%`))
|
|
16567
16595
|
}]
|
|
16568
16596
|
}) }) }),
|
|
16569
16597
|
/* @__PURE__ */ jsxs50("span", { ...tid.progressValue, children: [
|
|
@@ -16602,7 +16630,7 @@ function GridTableEmptyState(props) {
|
|
|
16602
16630
|
import { trussProps as trussProps57, mergeProps as mergeProps21, maybeCssVar as maybeCssVar32 } from "@homebound/truss/runtime";
|
|
16603
16631
|
import { jsx as jsx95, jsxs as jsxs52 } from "react/jsx-runtime";
|
|
16604
16632
|
import { createElement as createElement2 } from "react";
|
|
16605
|
-
var
|
|
16633
|
+
var __maybeInc12 = (inc) => {
|
|
16606
16634
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
16607
16635
|
};
|
|
16608
16636
|
var runningInJest = false;
|
|
@@ -16932,7 +16960,7 @@ function renderDiv(style, id, columns, visibleDataRows, keptSelectedRows, pinned
|
|
|
16932
16960
|
position: "sticky",
|
|
16933
16961
|
transition: "transitionTop",
|
|
16934
16962
|
top: ["top_var", {
|
|
16935
|
-
"--top": maybeCssVar32(
|
|
16963
|
+
"--top": maybeCssVar32(__maybeInc12(stickyTableHeaderOffset(stickyOffset)))
|
|
16936
16964
|
}],
|
|
16937
16965
|
zIndex: ["z_var", {
|
|
16938
16966
|
"--zIndex": maybeCssVar32(zIndices.tableStickyHeader)
|
|
@@ -16976,7 +17004,7 @@ function renderTable(style, id, columns, visibleDataRows, keptSelectedRows, pinn
|
|
|
16976
17004
|
position: "sticky",
|
|
16977
17005
|
transition: "transitionTop",
|
|
16978
17006
|
top: ["top_var", {
|
|
16979
|
-
"--top": maybeCssVar32(
|
|
17007
|
+
"--top": maybeCssVar32(__maybeInc12(stickyTableHeaderOffset(stickyOffset)))
|
|
16980
17008
|
}],
|
|
16981
17009
|
zIndex: ["z_var", {
|
|
16982
17010
|
"--zIndex": maybeCssVar32(zIndices.tableStickyHeader)
|
|
@@ -17320,7 +17348,7 @@ import { useCallback as useCallback21, useEffect as useEffect21, useMemo as useM
|
|
|
17320
17348
|
import { useFocusRing as useFocusRing11 } from "react-aria";
|
|
17321
17349
|
import { trussProps as trussProps60, maybeCssVar as maybeCssVar33 } from "@homebound/truss/runtime";
|
|
17322
17350
|
import { jsx as jsx98, jsxs as jsxs54 } from "react/jsx-runtime";
|
|
17323
|
-
var
|
|
17351
|
+
var __maybeInc13 = (inc) => {
|
|
17324
17352
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
17325
17353
|
};
|
|
17326
17354
|
function Accordion(props) {
|
|
@@ -17467,7 +17495,7 @@ function Accordion(props) {
|
|
|
17467
17495
|
/* @__PURE__ */ jsx98("div", { ...tid.details, id, "aria-hidden": !expanded, ...trussProps60({
|
|
17468
17496
|
overflow: "oh",
|
|
17469
17497
|
height: ["h_var", {
|
|
17470
|
-
"--height": maybeCssVar33(
|
|
17498
|
+
"--height": maybeCssVar33(__maybeInc13(contentHeight))
|
|
17471
17499
|
}],
|
|
17472
17500
|
transition: "transition_height_250ms_ease_in_out"
|
|
17473
17501
|
}), children: expanded && /* @__PURE__ */ jsx98("div", { ...trussProps60({
|
|
@@ -18979,7 +19007,7 @@ function BoundTreeSelectField(props) {
|
|
|
18979
19007
|
import { Children, cloneElement } from "react";
|
|
18980
19008
|
import { trussProps as trussProps66, maybeCssVar as maybeCssVar37 } from "@homebound/truss/runtime";
|
|
18981
19009
|
import { jsx as jsx127 } from "react/jsx-runtime";
|
|
18982
|
-
var
|
|
19010
|
+
var __maybeInc14 = (inc) => {
|
|
18983
19011
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
18984
19012
|
};
|
|
18985
19013
|
function FormLines(props) {
|
|
@@ -19017,13 +19045,13 @@ function FormLines(props) {
|
|
|
19017
19045
|
display: "df",
|
|
19018
19046
|
flexDirection: "fdc",
|
|
19019
19047
|
gap: ["gap_var", {
|
|
19020
|
-
"--gap": maybeCssVar37(
|
|
19048
|
+
"--gap": maybeCssVar37(__maybeInc14(gap))
|
|
19021
19049
|
}],
|
|
19022
19050
|
paddingBottom: ["pb_var", {
|
|
19023
|
-
"--paddingBottom": maybeCssVar37(
|
|
19051
|
+
"--paddingBottom": maybeCssVar37(__maybeInc14(gap))
|
|
19024
19052
|
}],
|
|
19025
19053
|
width: ["w_var", {
|
|
19026
|
-
"--width": maybeCssVar37(
|
|
19054
|
+
"--width": maybeCssVar37(__maybeInc14(sizes[width2]))
|
|
19027
19055
|
}]
|
|
19028
19056
|
}), children: Children.map(children, (child) => {
|
|
19029
19057
|
if (child && typeof child === "object" && "type" in child && child.type.isFormHeading) {
|
|
@@ -19903,7 +19931,7 @@ function useActiveSection(sectionsWithRefs) {
|
|
|
19903
19931
|
// src/components/Layout/FullBleed.tsx
|
|
19904
19932
|
import { mergeProps as mergeProps23, maybeCssVar as maybeCssVar41 } from "@homebound/truss/runtime";
|
|
19905
19933
|
import { cloneElement as cloneElement3 } from "react";
|
|
19906
|
-
var
|
|
19934
|
+
var __maybeInc15 = (inc) => {
|
|
19907
19935
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
19908
19936
|
};
|
|
19909
19937
|
function FullBleed({
|
|
@@ -19934,17 +19962,17 @@ function FullBleed({
|
|
|
19934
19962
|
// inverts that padding with negative margins before re-applying it to the child.
|
|
19935
19963
|
{
|
|
19936
19964
|
marginLeft: ["ml_var", {
|
|
19937
|
-
"--marginLeft": maybeCssVar41(
|
|
19965
|
+
"--marginLeft": maybeCssVar41(__maybeInc15(invertSpacing(paddingLeft)))
|
|
19938
19966
|
}],
|
|
19939
19967
|
marginRight: ["mr_var", {
|
|
19940
|
-
"--marginRight": maybeCssVar41(
|
|
19968
|
+
"--marginRight": maybeCssVar41(__maybeInc15(invertSpacing(paddingRight)))
|
|
19941
19969
|
}],
|
|
19942
19970
|
...!omitPadding ? {
|
|
19943
19971
|
paddingLeft: ["pl_var", {
|
|
19944
|
-
"--paddingLeft": maybeCssVar41(
|
|
19972
|
+
"--paddingLeft": maybeCssVar41(__maybeInc15(paddingLeft))
|
|
19945
19973
|
}],
|
|
19946
19974
|
paddingRight: ["pr_var", {
|
|
19947
|
-
"--paddingRight": maybeCssVar41(
|
|
19975
|
+
"--paddingRight": maybeCssVar41(__maybeInc15(paddingRight))
|
|
19948
19976
|
}]
|
|
19949
19977
|
} : {}
|
|
19950
19978
|
}
|
|
@@ -20828,12 +20856,7 @@ function FilterPanelOpen({
|
|
|
20828
20856
|
...{
|
|
20829
20857
|
flexWrap: "mdandup_fww"
|
|
20830
20858
|
},
|
|
20831
|
-
...
|
|
20832
|
-
...inDocumentScrollLayout ? {
|
|
20833
|
-
paddingLeft: "pl3",
|
|
20834
|
-
paddingRight: "pr3"
|
|
20835
|
-
} : {}
|
|
20836
|
-
}
|
|
20859
|
+
...inDocumentScrollLayout ? pageContentPaddingX : void 0
|
|
20837
20860
|
}), children: [
|
|
20838
20861
|
groupBy && /* @__PURE__ */ jsx156(GroupByField, { ...groupBy }),
|
|
20839
20862
|
filterControls,
|
|
@@ -20966,14 +20989,13 @@ function GridTableLayoutActionsComponent(props) {
|
|
|
20966
20989
|
} : {}
|
|
20967
20990
|
}), children: [
|
|
20968
20991
|
/* @__PURE__ */ jsxs75("div", { ...trussProps78({
|
|
20969
|
-
|
|
20970
|
-
|
|
20971
|
-
|
|
20972
|
-
|
|
20973
|
-
|
|
20974
|
-
|
|
20975
|
-
|
|
20976
|
-
} : {}
|
|
20992
|
+
...{
|
|
20993
|
+
display: "df",
|
|
20994
|
+
gap: "gap1",
|
|
20995
|
+
justifyContent: "jcsb",
|
|
20996
|
+
paddingTop: "pt3"
|
|
20997
|
+
},
|
|
20998
|
+
...inDocumentScrollLayout ? pageContentPaddingX : void 0
|
|
20977
20999
|
}), children: [
|
|
20978
21000
|
/* @__PURE__ */ jsxs75("div", { className: "df gap_12px aic", children: [
|
|
20979
21001
|
!sm && hasSearch && /* @__PURE__ */ jsx157("div", { className: "w_244px", children: searchTextField }),
|
|
@@ -20993,7 +21015,7 @@ function GridTableLayoutActionsComponent(props) {
|
|
|
20993
21015
|
} })
|
|
20994
21016
|
] })
|
|
20995
21017
|
] }),
|
|
20996
|
-
sm && showSearch && /* @__PURE__ */ jsx157("div", {
|
|
21018
|
+
sm && showSearch && /* @__PURE__ */ jsx157("div", { ...trussProps78(pageContentPaddingX), children: searchTextField }),
|
|
20997
21019
|
hasFilterControls && !showInlineControl && /* @__PURE__ */ jsx157(FilterPanel, { isOpen: showFilters, groupBy, filterImpls, filter, setFilter, onClear: clearFilters })
|
|
20998
21020
|
] });
|
|
20999
21021
|
}
|
|
@@ -21114,7 +21136,7 @@ function parseStoredTableView(raw) {
|
|
|
21114
21136
|
// src/components/Layout/GridTableLayout/GridTableLayout.tsx
|
|
21115
21137
|
import { trussProps as trussProps80, maybeCssVar as maybeCssVar44 } from "@homebound/truss/runtime";
|
|
21116
21138
|
import { Fragment as Fragment36, jsx as jsx160, jsxs as jsxs77 } from "react/jsx-runtime";
|
|
21117
|
-
var
|
|
21139
|
+
var __maybeInc16 = (inc) => {
|
|
21118
21140
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
21119
21141
|
};
|
|
21120
21142
|
function GridTableLayoutComponent(props) {
|
|
@@ -21173,13 +21195,13 @@ function GridTableLayoutComponent(props) {
|
|
|
21173
21195
|
transition: "transitionTop",
|
|
21174
21196
|
position: "sticky",
|
|
21175
21197
|
top: ["top_var", {
|
|
21176
|
-
"--top": maybeCssVar44(
|
|
21198
|
+
"--top": maybeCssVar44(__maybeInc16(stickyNavAndHeaderOffset()))
|
|
21177
21199
|
}],
|
|
21178
21200
|
left: ["left_var", {
|
|
21179
|
-
"--left": maybeCssVar44(
|
|
21201
|
+
"--left": maybeCssVar44(__maybeInc16(documentScrollChromeLeft()))
|
|
21180
21202
|
}],
|
|
21181
21203
|
width: ["w_var", {
|
|
21182
|
-
"--width": maybeCssVar44(
|
|
21204
|
+
"--width": maybeCssVar44(__maybeInc16(documentScrollChromeWidth()))
|
|
21183
21205
|
}],
|
|
21184
21206
|
zIndex: ["z_var", {
|
|
21185
21207
|
"--zIndex": maybeCssVar44(zIndices.tableActions)
|
|
@@ -21352,7 +21374,7 @@ import { AnimatePresence as AnimatePresence3, motion as motion3 } from "framer-m
|
|
|
21352
21374
|
import { useEffect as useEffect29 } from "react";
|
|
21353
21375
|
import { trussProps as trussProps81, maybeCssVar as maybeCssVar45 } from "@homebound/truss/runtime";
|
|
21354
21376
|
import { Fragment as Fragment37, jsx as jsx163, jsxs as jsxs78 } from "react/jsx-runtime";
|
|
21355
|
-
var
|
|
21377
|
+
var __maybeInc17 = (inc) => {
|
|
21356
21378
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
21357
21379
|
};
|
|
21358
21380
|
function RightPaneLayout(props) {
|
|
@@ -21373,7 +21395,7 @@ function RightPaneLayout(props) {
|
|
|
21373
21395
|
/* @__PURE__ */ jsx163("div", { ...trussProps81({
|
|
21374
21396
|
...{
|
|
21375
21397
|
width: ["w_var", {
|
|
21376
|
-
"--width": maybeCssVar45(
|
|
21398
|
+
"--width": maybeCssVar45(__maybeInc17(`calc(100% - ${paneWidth + 24}px)`))
|
|
21377
21399
|
}],
|
|
21378
21400
|
transition: "transition_width_2s_linear",
|
|
21379
21401
|
height: "h100",
|
|
@@ -21389,7 +21411,7 @@ function RightPaneLayout(props) {
|
|
|
21389
21411
|
...{
|
|
21390
21412
|
...!!defaultPaneContent ? {
|
|
21391
21413
|
width: ["w_var", {
|
|
21392
|
-
"--width": maybeCssVar45(
|
|
21414
|
+
"--width": maybeCssVar45(__maybeInc17(`calc(100% - ${paneWidth + 24}px)`))
|
|
21393
21415
|
}],
|
|
21394
21416
|
marginRight: "mr3"
|
|
21395
21417
|
} : {}
|
|
@@ -22555,7 +22577,17 @@ function EnvironmentBanner(props) {
|
|
|
22555
22577
|
}), role: "banner", ...tid, children: [
|
|
22556
22578
|
getInvertedCorner("left", bgColorVar),
|
|
22557
22579
|
getInvertedCorner("right", bgColorVar),
|
|
22558
|
-
/* @__PURE__ */ jsxs86("div", {
|
|
22580
|
+
/* @__PURE__ */ jsxs86("div", { ...trussProps89({
|
|
22581
|
+
...{
|
|
22582
|
+
position: "relative",
|
|
22583
|
+
zIndex: "z2",
|
|
22584
|
+
display: "df",
|
|
22585
|
+
alignItems: "aic",
|
|
22586
|
+
justifyContent: "jcsb",
|
|
22587
|
+
height: "h100"
|
|
22588
|
+
},
|
|
22589
|
+
...headerContentPaddingX()
|
|
22590
|
+
}), ...tid.content, children: [
|
|
22559
22591
|
/* @__PURE__ */ jsxs86("span", { className: "df aic gap2 fg1 mh0 oh", ...tid.left, children: [
|
|
22560
22592
|
/* @__PURE__ */ jsx176(Tag, { text: badgeLabel, xss: {
|
|
22561
22593
|
backgroundColor: "bgColor_FFFFFF90"
|
|
@@ -22744,7 +22776,7 @@ function ResponsiveGridItem(props) {
|
|
|
22744
22776
|
// src/components/Grid/useResponsiveGrid.ts
|
|
22745
22777
|
import { useMemo as useMemo47 } from "react";
|
|
22746
22778
|
import { maybeCssVar as maybeCssVar48 } from "@homebound/truss/runtime";
|
|
22747
|
-
var
|
|
22779
|
+
var __maybeInc18 = (inc) => {
|
|
22748
22780
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
22749
22781
|
};
|
|
22750
22782
|
function useResponsiveGrid(props) {
|
|
@@ -22766,7 +22798,7 @@ function useResponsiveGrid(props) {
|
|
|
22766
22798
|
}],
|
|
22767
22799
|
containerType: "ctis",
|
|
22768
22800
|
gap: ["gap_var", {
|
|
22769
|
-
"--gap": maybeCssVar48(
|
|
22801
|
+
"--gap": maybeCssVar48(__maybeInc18(gridGap))
|
|
22770
22802
|
}]
|
|
22771
22803
|
};
|
|
22772
22804
|
}, [minColumnWidth, gap, columns]);
|
|
@@ -22891,7 +22923,7 @@ function HbSpinnerProvider({
|
|
|
22891
22923
|
// src/components/HomeboundLogo.tsx
|
|
22892
22924
|
import { trussProps as trussProps92, maybeCssVar as maybeCssVar49 } from "@homebound/truss/runtime";
|
|
22893
22925
|
import { jsx as jsx180 } from "react/jsx-runtime";
|
|
22894
|
-
var
|
|
22926
|
+
var __maybeInc19 = (inc) => {
|
|
22895
22927
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
22896
22928
|
};
|
|
22897
22929
|
function HomeboundLogo(props) {
|
|
@@ -22905,10 +22937,10 @@ function HomeboundLogo(props) {
|
|
|
22905
22937
|
"--fill": maybeCssVar49(fill)
|
|
22906
22938
|
}],
|
|
22907
22939
|
width: ["w_var", {
|
|
22908
|
-
"--width": maybeCssVar49(
|
|
22940
|
+
"--width": maybeCssVar49(__maybeInc19(width2))
|
|
22909
22941
|
}],
|
|
22910
22942
|
height: ["h_var", {
|
|
22911
|
-
"--height": maybeCssVar49(
|
|
22943
|
+
"--height": maybeCssVar49(__maybeInc19(height))
|
|
22912
22944
|
}]
|
|
22913
22945
|
}), children: /* @__PURE__ */ jsx180("path", { d: "M158.1,97.6H0.2L0,39.7L76.8,0l68,38.7l-3.1,5.3l-65-37L6.2,43.4l0.2,48h151.7V97.6z" }) });
|
|
22914
22946
|
}
|
|
@@ -23273,7 +23305,7 @@ function useAppNavGroupExpanded(linkGroup) {
|
|
|
23273
23305
|
// src/components/AppNav/AppNavGroup.tsx
|
|
23274
23306
|
import { trussProps as trussProps96, maybeCssVar as maybeCssVar51 } from "@homebound/truss/runtime";
|
|
23275
23307
|
import { Fragment as Fragment41, jsx as jsx184, jsxs as jsxs90 } from "react/jsx-runtime";
|
|
23276
|
-
var
|
|
23308
|
+
var __maybeInc20 = (inc) => {
|
|
23277
23309
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
23278
23310
|
};
|
|
23279
23311
|
function AppNavGroupView(props) {
|
|
@@ -23320,7 +23352,7 @@ function AppNavGroupDisclosure(props) {
|
|
|
23320
23352
|
overflow: "oh",
|
|
23321
23353
|
transition: "transitionHeight",
|
|
23322
23354
|
height: ["h_var", {
|
|
23323
|
-
"--height": maybeCssVar51(
|
|
23355
|
+
"--height": maybeCssVar51(__maybeInc20(contentHeight))
|
|
23324
23356
|
}]
|
|
23325
23357
|
}), ...tid.panel, ...!expanded ? {
|
|
23326
23358
|
inert: "true"
|
|
@@ -23552,24 +23584,36 @@ function NavbarMobileDrawer({
|
|
|
23552
23584
|
duration: 0.2
|
|
23553
23585
|
}, onClick: (e) => e.stopPropagation(), ...tid.mobileMenuDrawer, children: [
|
|
23554
23586
|
/* @__PURE__ */ jsx189("div", { ...trussProps98({
|
|
23555
|
-
|
|
23556
|
-
|
|
23557
|
-
|
|
23558
|
-
|
|
23559
|
-
|
|
23560
|
-
|
|
23561
|
-
|
|
23562
|
-
|
|
23563
|
-
|
|
23564
|
-
|
|
23565
|
-
|
|
23566
|
-
|
|
23567
|
-
}
|
|
23587
|
+
...{
|
|
23588
|
+
display: "df",
|
|
23589
|
+
alignItems: "aic",
|
|
23590
|
+
justifyContent: "jcfe",
|
|
23591
|
+
paddingTop: "pt_12px",
|
|
23592
|
+
paddingBottom: "pb_12px",
|
|
23593
|
+
flexShrink: "fs0",
|
|
23594
|
+
borderBottomStyle: "bbs_solid",
|
|
23595
|
+
borderBottomWidth: "bbw_1px",
|
|
23596
|
+
borderColor: ["bc_var", {
|
|
23597
|
+
"--borderColor": "var(--b-surface-separator)"
|
|
23598
|
+
}]
|
|
23599
|
+
},
|
|
23600
|
+
...pageContentPaddingX
|
|
23568
23601
|
}), children: /* @__PURE__ */ jsx189(IconButton, { icon: "x", color: "--b-on-surface-muted" /* OnSurfaceMuted */, label: "Close navigation", onClick: onClose, ...tid.mobileMenuClose }) }),
|
|
23569
23602
|
/* @__PURE__ */ jsx189(
|
|
23570
23603
|
"nav",
|
|
23571
23604
|
{
|
|
23572
|
-
|
|
23605
|
+
...trussProps98({
|
|
23606
|
+
...{
|
|
23607
|
+
flexGrow: "fg1",
|
|
23608
|
+
overflowY: "oya",
|
|
23609
|
+
paddingBottom: "pb3",
|
|
23610
|
+
paddingTop: "pt2",
|
|
23611
|
+
display: "df",
|
|
23612
|
+
flexDirection: "fdc",
|
|
23613
|
+
gap: "gap_4px"
|
|
23614
|
+
},
|
|
23615
|
+
...pageContentPaddingX
|
|
23616
|
+
}),
|
|
23573
23617
|
onClickCapture: (e) => {
|
|
23574
23618
|
if (e.target.closest("a")) {
|
|
23575
23619
|
onClose();
|
|
@@ -23605,23 +23649,20 @@ function Navbar(props) {
|
|
|
23605
23649
|
} = useContentOverflow(!sm);
|
|
23606
23650
|
const showMobile = sm || overflows;
|
|
23607
23651
|
return /* @__PURE__ */ jsx190(ContrastScope, { children: /* @__PURE__ */ jsxs93("nav", { ...trussProps99({
|
|
23608
|
-
|
|
23609
|
-
|
|
23610
|
-
|
|
23611
|
-
|
|
23612
|
-
|
|
23613
|
-
|
|
23614
|
-
|
|
23615
|
-
|
|
23616
|
-
|
|
23617
|
-
|
|
23618
|
-
|
|
23619
|
-
|
|
23620
|
-
|
|
23621
|
-
|
|
23622
|
-
paddingLeft: "pl5",
|
|
23623
|
-
paddingRight: "pr5"
|
|
23624
|
-
} : {}
|
|
23652
|
+
...{
|
|
23653
|
+
backgroundColor: ["bgColor_var", {
|
|
23654
|
+
"--backgroundColor": "var(--b-surface-raised)"
|
|
23655
|
+
}],
|
|
23656
|
+
flexShrink: "fs0",
|
|
23657
|
+
display: "df",
|
|
23658
|
+
alignItems: "aic",
|
|
23659
|
+
justifyContent: "jcsb",
|
|
23660
|
+
whiteSpace: "wsnw",
|
|
23661
|
+
paddingTop: "pt1",
|
|
23662
|
+
paddingBottom: "pb1",
|
|
23663
|
+
gap: "gap2"
|
|
23664
|
+
},
|
|
23665
|
+
...headerContentPaddingX(showMobile)
|
|
23625
23666
|
}), ...tid, children: [
|
|
23626
23667
|
/* @__PURE__ */ jsxs93("div", { className: "df aic gap3 fg1 mw0", children: [
|
|
23627
23668
|
/* @__PURE__ */ jsxs93("div", { className: "df aic fs0 gap2", children: [
|
|
@@ -24061,7 +24102,7 @@ import { useButton as useButton12, useFocusRing as useFocusRing17, useHover as u
|
|
|
24061
24102
|
import { trussProps as trussProps102, maybeCssVar as maybeCssVar54 } from "@homebound/truss/runtime";
|
|
24062
24103
|
import { jsx as jsx195, jsxs as jsxs97 } from "react/jsx-runtime";
|
|
24063
24104
|
import { createElement as createElement5 } from "react";
|
|
24064
|
-
var
|
|
24105
|
+
var __maybeInc21 = (inc) => {
|
|
24065
24106
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
24066
24107
|
};
|
|
24067
24108
|
function Stepper(props) {
|
|
@@ -24117,7 +24158,7 @@ function Stepper(props) {
|
|
|
24117
24158
|
transition: "transition_width_200ms",
|
|
24118
24159
|
height: "h100",
|
|
24119
24160
|
width: ["w_var", {
|
|
24120
|
-
"--width": maybeCssVar54(
|
|
24161
|
+
"--width": maybeCssVar54(__maybeInc21(`${(lastCompletedStep + 1) / steps.length * 100}%`))
|
|
24121
24162
|
}]
|
|
24122
24163
|
}) }) })
|
|
24123
24164
|
] });
|
|
@@ -24338,7 +24379,9 @@ var stepperTabStyles = {
|
|
|
24338
24379
|
fontSize: "fz_14px",
|
|
24339
24380
|
lineHeight: "lh_20px",
|
|
24340
24381
|
overflow: "oh",
|
|
24341
|
-
textAlign: "tal"
|
|
24382
|
+
textAlign: "tal",
|
|
24383
|
+
height: "h_48px",
|
|
24384
|
+
transition: "transitionAll"
|
|
24342
24385
|
},
|
|
24343
24386
|
hoverStyles: {
|
|
24344
24387
|
backgroundColor: "bgGray100"
|
|
@@ -24363,12 +24406,14 @@ function StepperTabs(props) {
|
|
|
24363
24406
|
const {
|
|
24364
24407
|
steps,
|
|
24365
24408
|
currentStep,
|
|
24366
|
-
onChange
|
|
24409
|
+
onChange,
|
|
24410
|
+
collapsed: forceCollapsed
|
|
24367
24411
|
} = props;
|
|
24368
24412
|
const tid = useTestIds(props, "stepperTabs");
|
|
24369
24413
|
const {
|
|
24370
|
-
sm:
|
|
24414
|
+
sm: isMobile
|
|
24371
24415
|
} = useBreakpoint();
|
|
24416
|
+
const collapsed = isMobile || !!forceCollapsed;
|
|
24372
24417
|
const capWidth = steps.length <= 3;
|
|
24373
24418
|
return /* @__PURE__ */ jsx197("nav", { "aria-label": "steps", className: "w100", ...tid, children: /* @__PURE__ */ jsx197("ol", { ...trussProps104({
|
|
24374
24419
|
padding: "p_0",
|
|
@@ -25005,7 +25050,7 @@ function useToast() {
|
|
|
25005
25050
|
// src/layouts/SideNavLayout/SideNavLayout.tsx
|
|
25006
25051
|
import { trussProps as trussProps107, mergeProps as mergeProps33, maybeCssVar as maybeCssVar57 } from "@homebound/truss/runtime";
|
|
25007
25052
|
import { jsx as jsx204, jsxs as jsxs104 } from "react/jsx-runtime";
|
|
25008
|
-
var
|
|
25053
|
+
var __maybeInc22 = (inc) => {
|
|
25009
25054
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
25010
25055
|
};
|
|
25011
25056
|
function SideNavLayout(props) {
|
|
@@ -25060,11 +25105,11 @@ function SideNavLayoutContent(props) {
|
|
|
25060
25105
|
"--zIndex": maybeCssVar57(zIndices.sideNav)
|
|
25061
25106
|
}],
|
|
25062
25107
|
top: ["top_var", {
|
|
25063
|
-
"--top": maybeCssVar57(
|
|
25108
|
+
"--top": maybeCssVar57(__maybeInc22(navTop))
|
|
25064
25109
|
}],
|
|
25065
25110
|
alignSelf: "asfs",
|
|
25066
25111
|
height: ["h_var", {
|
|
25067
|
-
"--height": maybeCssVar57(
|
|
25112
|
+
"--height": maybeCssVar57(__maybeInc22(railViewportHeight))
|
|
25068
25113
|
}],
|
|
25069
25114
|
width: ["w_var", {
|
|
25070
25115
|
"--width": `${collapsed ? railCollapsedWidthPx : railWidthPx}px`
|
|
@@ -25074,7 +25119,7 @@ function SideNavLayoutContent(props) {
|
|
|
25074
25119
|
position: "fixed",
|
|
25075
25120
|
left: "left0",
|
|
25076
25121
|
top: ["top_var", {
|
|
25077
|
-
"--top": maybeCssVar57(
|
|
25122
|
+
"--top": maybeCssVar57(__maybeInc22(navTop))
|
|
25078
25123
|
}],
|
|
25079
25124
|
bottom: "bottom0",
|
|
25080
25125
|
zIndex: ["z_var", {
|
|
@@ -25119,7 +25164,7 @@ function SideNavLayoutContent(props) {
|
|
|
25119
25164
|
// src/layouts/EnvironmentBannerLayout/EnvironmentBannerLayout.tsx
|
|
25120
25165
|
import { trussProps as trussProps108, mergeProps as mergeProps34, maybeCssVar as maybeCssVar58 } from "@homebound/truss/runtime";
|
|
25121
25166
|
import { jsx as jsx205, jsxs as jsxs105 } from "react/jsx-runtime";
|
|
25122
|
-
var
|
|
25167
|
+
var __maybeInc23 = (inc) => {
|
|
25123
25168
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
25124
25169
|
};
|
|
25125
25170
|
function EnvironmentBannerLayout(props) {
|
|
@@ -25153,7 +25198,7 @@ function EnvironmentBannerLayout(props) {
|
|
|
25153
25198
|
"--zIndex": maybeCssVar58(zIndices.environmentBanner)
|
|
25154
25199
|
}],
|
|
25155
25200
|
width: ["w_var", {
|
|
25156
|
-
"--width": maybeCssVar58(
|
|
25201
|
+
"--width": maybeCssVar58(__maybeInc23(innerWidth))
|
|
25157
25202
|
}]
|
|
25158
25203
|
}), ...tid.bannerSticky, children: /* @__PURE__ */ jsx205(EnvironmentBanner, { ...environmentBanner, ...tid.environmentBanner }) }) }),
|
|
25159
25204
|
children
|
|
@@ -25284,7 +25329,7 @@ function useNavbarLayoutHeight() {
|
|
|
25284
25329
|
|
|
25285
25330
|
// src/layouts/NavbarLayout/NavbarLayout.tsx
|
|
25286
25331
|
import { jsx as jsx207, jsxs as jsxs106 } from "react/jsx-runtime";
|
|
25287
|
-
var
|
|
25332
|
+
var __maybeInc24 = (inc) => {
|
|
25288
25333
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
25289
25334
|
};
|
|
25290
25335
|
function NavbarLayout(props) {
|
|
@@ -25315,7 +25360,7 @@ function NavbarLayout(props) {
|
|
|
25315
25360
|
"--zIndex": maybeCssVar59(zIndices.navbar)
|
|
25316
25361
|
}],
|
|
25317
25362
|
width: ["w_var", {
|
|
25318
|
-
"--width": maybeCssVar59(
|
|
25363
|
+
"--width": maybeCssVar59(__maybeInc24(innerWidth))
|
|
25319
25364
|
}]
|
|
25320
25365
|
}
|
|
25321
25366
|
) : (
|
|
@@ -25327,7 +25372,7 @@ function NavbarLayout(props) {
|
|
|
25327
25372
|
"--zIndex": maybeCssVar59(zIndices.navbar)
|
|
25328
25373
|
}],
|
|
25329
25374
|
width: ["w_var", {
|
|
25330
|
-
"--width": maybeCssVar59(
|
|
25375
|
+
"--width": maybeCssVar59(__maybeInc24(innerWidth))
|
|
25331
25376
|
}],
|
|
25332
25377
|
transition: "transitionTop"
|
|
25333
25378
|
}
|
|
@@ -25389,10 +25434,9 @@ function BaseHeader(props) {
|
|
|
25389
25434
|
display: "df",
|
|
25390
25435
|
justifyContent: "jcsb",
|
|
25391
25436
|
width: "w100",
|
|
25392
|
-
gap: "gap1"
|
|
25393
|
-
paddingLeft: "pl3",
|
|
25394
|
-
paddingRight: "pr3"
|
|
25437
|
+
gap: "gap1"
|
|
25395
25438
|
},
|
|
25439
|
+
...pageContentPaddingX,
|
|
25396
25440
|
...{
|
|
25397
25441
|
...!bottomSlot ? {
|
|
25398
25442
|
marginBottom: "mb2"
|
|
@@ -25410,6 +25454,7 @@ function BaseHeader(props) {
|
|
|
25410
25454
|
}
|
|
25411
25455
|
|
|
25412
25456
|
// src/components/Headers/PageHeader.tsx
|
|
25457
|
+
import { trussProps as trussProps110 } from "@homebound/truss/runtime";
|
|
25413
25458
|
import { jsx as jsx209 } from "react/jsx-runtime";
|
|
25414
25459
|
function PageHeader2(props) {
|
|
25415
25460
|
const {
|
|
@@ -25417,7 +25462,7 @@ function PageHeader2(props) {
|
|
|
25417
25462
|
...otherProps
|
|
25418
25463
|
} = props;
|
|
25419
25464
|
const tid = useTestIds(otherProps, "header");
|
|
25420
|
-
return /* @__PURE__ */ jsx209(BaseHeader, { ...otherProps, bottomSlot: tabs && /* @__PURE__ */ jsx209("div", {
|
|
25465
|
+
return /* @__PURE__ */ jsx209(BaseHeader, { ...otherProps, bottomSlot: tabs && /* @__PURE__ */ jsx209("div", { ...trussProps110(pageContentPaddingX), children: /* @__PURE__ */ jsx209(Tabs, { ...tabs, ...tid.tabs }) }) });
|
|
25421
25466
|
}
|
|
25422
25467
|
|
|
25423
25468
|
// src/layouts/useBannerAndNavbarHeight.ts
|
|
@@ -25428,7 +25473,7 @@ function useBannerAndNavbarHeight() {
|
|
|
25428
25473
|
// src/layouts/PageHeaderLayout/PageHeaderLayout.tsx
|
|
25429
25474
|
import { mergeProps as mergeProps36, maybeCssVar as maybeCssVar60 } from "@homebound/truss/runtime";
|
|
25430
25475
|
import { jsx as jsx210, jsxs as jsxs108 } from "react/jsx-runtime";
|
|
25431
|
-
var
|
|
25476
|
+
var __maybeInc25 = (inc) => {
|
|
25432
25477
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
25433
25478
|
};
|
|
25434
25479
|
function PageHeaderLayout(props) {
|
|
@@ -25458,10 +25503,10 @@ function PageHeaderLayout(props) {
|
|
|
25458
25503
|
const innerCss = autoHideState === "static" ? {
|
|
25459
25504
|
position: "sticky",
|
|
25460
25505
|
left: ["left_var", {
|
|
25461
|
-
"--left": maybeCssVar60(
|
|
25506
|
+
"--left": maybeCssVar60(__maybeInc25(headerLeft))
|
|
25462
25507
|
}],
|
|
25463
25508
|
width: ["w_var", {
|
|
25464
|
-
"--width": maybeCssVar60(
|
|
25509
|
+
"--width": maybeCssVar60(__maybeInc25(headerWidth))
|
|
25465
25510
|
}],
|
|
25466
25511
|
zIndex: ["z_var", {
|
|
25467
25512
|
"--zIndex": maybeCssVar60(zIndices.pageStickyHeader)
|
|
@@ -25469,10 +25514,10 @@ function PageHeaderLayout(props) {
|
|
|
25469
25514
|
} : {
|
|
25470
25515
|
position: "fixed",
|
|
25471
25516
|
left: ["left_var", {
|
|
25472
|
-
"--left": maybeCssVar60(
|
|
25517
|
+
"--left": maybeCssVar60(__maybeInc25(headerLeft))
|
|
25473
25518
|
}],
|
|
25474
25519
|
width: ["w_var", {
|
|
25475
|
-
"--width": maybeCssVar60(
|
|
25520
|
+
"--width": maybeCssVar60(__maybeInc25(headerWidth))
|
|
25476
25521
|
}],
|
|
25477
25522
|
zIndex: ["z_var", {
|
|
25478
25523
|
"--zIndex": maybeCssVar60(zIndices.pageStickyHeader)
|
|
@@ -25497,6 +25542,175 @@ function PageHeaderLayout(props) {
|
|
|
25497
25542
|
/* @__PURE__ */ jsx210("div", { className: "df fdc fg1 mh0 w100", ...tid.body, children })
|
|
25498
25543
|
] }) });
|
|
25499
25544
|
}
|
|
25545
|
+
|
|
25546
|
+
// src/layouts/WorkflowLayout/WorkflowLayout.tsx
|
|
25547
|
+
import { useCallback as useCallback40, useLayoutEffect as useLayoutEffect10, useRef as useRef67, useState as useState59 } from "react";
|
|
25548
|
+
|
|
25549
|
+
// src/components/Headers/WorkflowHeader.tsx
|
|
25550
|
+
import { jsx as jsx211 } from "react/jsx-runtime";
|
|
25551
|
+
function WorkflowHeader(props) {
|
|
25552
|
+
const { stepperTabs, ...otherProps } = props;
|
|
25553
|
+
const tid = useTestIds(otherProps, "header");
|
|
25554
|
+
return /* @__PURE__ */ jsx211(BaseHeader, { ...otherProps, bottomSlot: /* @__PURE__ */ jsx211(StepperTabs, { ...stepperTabs, ...tid.stepperTabs }) });
|
|
25555
|
+
}
|
|
25556
|
+
|
|
25557
|
+
// src/layouts/WorkflowLayout/WorkflowActions.tsx
|
|
25558
|
+
import { jsx as jsx212, jsxs as jsxs109 } from "react/jsx-runtime";
|
|
25559
|
+
function WorkflowActions(props) {
|
|
25560
|
+
const {
|
|
25561
|
+
isFirstStep,
|
|
25562
|
+
isLastStep,
|
|
25563
|
+
isMobile,
|
|
25564
|
+
onBack,
|
|
25565
|
+
onCancel,
|
|
25566
|
+
onSaveAndExit,
|
|
25567
|
+
completeLabel,
|
|
25568
|
+
onComplete,
|
|
25569
|
+
onContinue,
|
|
25570
|
+
primaryDisabled
|
|
25571
|
+
} = props;
|
|
25572
|
+
return /* @__PURE__ */ jsxs109("div", { className: "df aic jcsb sm_w100", children: [
|
|
25573
|
+
/* @__PURE__ */ jsx212("div", { className: "df aic", children: !isFirstStep && (isMobile ? /* @__PURE__ */ jsx212(IconButton, { icon: "arrowBack", label: "Back", onClick: onBack }) : /* @__PURE__ */ jsx212(Button, { label: "Back", icon: "chevronLeft", variant: "tertiary", onClick: onBack })) }),
|
|
25574
|
+
/* @__PURE__ */ jsxs109("div", { className: "df aic gap1", children: [
|
|
25575
|
+
/* @__PURE__ */ jsx212(Button, { label: "Cancel", variant: "quaternary", onClick: onCancel }),
|
|
25576
|
+
onSaveAndExit && /* @__PURE__ */ jsx212(Button, { label: "Save & Exit", variant: "secondary", onClick: onSaveAndExit }),
|
|
25577
|
+
isLastStep ? /* @__PURE__ */ jsx212(Button, { label: completeLabel, variant: "primary", onClick: onComplete, disabled: primaryDisabled }) : /* @__PURE__ */ jsx212(Button, { label: "Continue", variant: "primary", onClick: onContinue, disabled: primaryDisabled })
|
|
25578
|
+
] })
|
|
25579
|
+
] });
|
|
25580
|
+
}
|
|
25581
|
+
|
|
25582
|
+
// src/layouts/WorkflowLayout/WorkflowLayout.tsx
|
|
25583
|
+
import { trussProps as trussProps111, mergeProps as mergeProps37, maybeCssVar as maybeCssVar61 } from "@homebound/truss/runtime";
|
|
25584
|
+
import { jsx as jsx213, jsxs as jsxs110 } from "react/jsx-runtime";
|
|
25585
|
+
var __maybeInc26 = (inc) => {
|
|
25586
|
+
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
25587
|
+
};
|
|
25588
|
+
function WorkflowLayout(props) {
|
|
25589
|
+
const {
|
|
25590
|
+
steps,
|
|
25591
|
+
defaultStep,
|
|
25592
|
+
onCancel,
|
|
25593
|
+
completeLabel,
|
|
25594
|
+
onComplete,
|
|
25595
|
+
onSaveAndExit,
|
|
25596
|
+
...headerProps
|
|
25597
|
+
} = props;
|
|
25598
|
+
const tabSteps = steps.map((step) => ({
|
|
25599
|
+
...step,
|
|
25600
|
+
value: defaultTestId(step.label)
|
|
25601
|
+
}));
|
|
25602
|
+
const [currentStep, setCurrentStep] = useState59(() => getInitialStep(tabSteps, defaultStep));
|
|
25603
|
+
const tid = useTestIds(props, "workflowLayout");
|
|
25604
|
+
const {
|
|
25605
|
+
sm: isMobile
|
|
25606
|
+
} = useBreakpoint();
|
|
25607
|
+
const bannerAndNavbarHeight = useBannerAndNavbarHeight();
|
|
25608
|
+
const bannerAndNavbarHeightRef = useRef67(bannerAndNavbarHeight);
|
|
25609
|
+
bannerAndNavbarHeightRef.current = bannerAndNavbarHeight;
|
|
25610
|
+
const getBannerAndNavbarHeight = useCallback40(() => bannerAndNavbarHeightRef.current, []);
|
|
25611
|
+
const headerMetricsRef = useRef67(null);
|
|
25612
|
+
const spacerRef = useRef67(null);
|
|
25613
|
+
const headerHeight = useMeasuredHeight(headerMetricsRef, true);
|
|
25614
|
+
const {
|
|
25615
|
+
state: scrollState
|
|
25616
|
+
} = useAutoHideOnScroll(spacerRef, true, getBannerAndNavbarHeight);
|
|
25617
|
+
const collapsed = scrollState === "hidden";
|
|
25618
|
+
const headerWidth = documentScrollChromeWidth();
|
|
25619
|
+
const outerTop = bannerAndNavbarChromeTop();
|
|
25620
|
+
const cssVars = headerHeight > 0 ? {
|
|
25621
|
+
[beamPageHeaderLayoutHeightVar]: `${headerHeight}px`
|
|
25622
|
+
} : void 0;
|
|
25623
|
+
const currentIndex = isValidStep(tabSteps, currentStep) ? tabSteps.findIndex((step) => step.value === currentStep) : 0;
|
|
25624
|
+
const isFirstStep = currentIndex <= 0;
|
|
25625
|
+
const isLastStep = currentIndex === tabSteps.length - 1;
|
|
25626
|
+
const activeStep = tabSteps[currentIndex];
|
|
25627
|
+
const buttons = /* @__PURE__ */ jsx213(WorkflowActions, { isFirstStep, isLastStep, isMobile, onBack: () => setCurrentStep(tabSteps[currentIndex - 1].value), onCancel, onSaveAndExit, completeLabel, onComplete, primaryDisabled: !activeStep?.completed, onContinue: () => setCurrentStep(tabSteps[currentIndex + 1].value) });
|
|
25628
|
+
const showFooter = isMobile;
|
|
25629
|
+
useLayoutEffect10(() => {
|
|
25630
|
+
const root = document.documentElement;
|
|
25631
|
+
const previous = root.style.getPropertyValue(beamWorkflowLayoutFooterHeightVar);
|
|
25632
|
+
root.style.setProperty(beamWorkflowLayoutFooterHeightVar, showFooter ? `${mobileFooterHeightPx}px` : "0px");
|
|
25633
|
+
return () => {
|
|
25634
|
+
if (previous) {
|
|
25635
|
+
root.style.setProperty(beamWorkflowLayoutFooterHeightVar, previous);
|
|
25636
|
+
} else {
|
|
25637
|
+
root.style.removeProperty(beamWorkflowLayoutFooterHeightVar);
|
|
25638
|
+
}
|
|
25639
|
+
};
|
|
25640
|
+
}, [showFooter]);
|
|
25641
|
+
const headerEl = /* @__PURE__ */ jsx213(WorkflowHeader, { ...headerProps, rightSlot: isMobile ? void 0 : buttons, stepperTabs: {
|
|
25642
|
+
steps: tabSteps,
|
|
25643
|
+
currentStep,
|
|
25644
|
+
onChange: setCurrentStep,
|
|
25645
|
+
collapsed
|
|
25646
|
+
} });
|
|
25647
|
+
return /* @__PURE__ */ jsx213(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ jsxs110("div", { ...mergeProps37(void 0, cssVars, {
|
|
25648
|
+
display: "df",
|
|
25649
|
+
flexDirection: "fdc",
|
|
25650
|
+
width: "w100"
|
|
25651
|
+
}), ...tid, children: [
|
|
25652
|
+
/* @__PURE__ */ jsx213("div", { ref: spacerRef, ...mergeProps37(void 0, {
|
|
25653
|
+
height: headerHeight
|
|
25654
|
+
}, {
|
|
25655
|
+
flexShrink: "fs0",
|
|
25656
|
+
width: "w100"
|
|
25657
|
+
}), ...tid.spacer, children: /* @__PURE__ */ jsx213("div", { ref: headerMetricsRef, ...trussProps111({
|
|
25658
|
+
position: "fixed",
|
|
25659
|
+
width: ["w_var", {
|
|
25660
|
+
"--width": maybeCssVar61(__maybeInc26(headerWidth))
|
|
25661
|
+
}],
|
|
25662
|
+
zIndex: ["z_var", {
|
|
25663
|
+
"--zIndex": maybeCssVar61(zIndices.pageStickyHeader)
|
|
25664
|
+
}],
|
|
25665
|
+
top: ["top_var", {
|
|
25666
|
+
"--top": maybeCssVar61(__maybeInc26(outerTop))
|
|
25667
|
+
}]
|
|
25668
|
+
}), ...tid.header, children: headerEl }) }),
|
|
25669
|
+
/* @__PURE__ */ jsx213("div", { className: "df fdc fg1 mh0 w100", ...tid.body, children: activeStep?.content }),
|
|
25670
|
+
showFooter && /* @__PURE__ */ jsx213("div", { ...trussProps111({
|
|
25671
|
+
flexShrink: "fs0",
|
|
25672
|
+
width: "w100",
|
|
25673
|
+
height: ["h_var", {
|
|
25674
|
+
"--height": `${mobileFooterHeightPx}px`
|
|
25675
|
+
}]
|
|
25676
|
+
}) }),
|
|
25677
|
+
showFooter && /* @__PURE__ */ jsx213("div", { ...trussProps111({
|
|
25678
|
+
...{
|
|
25679
|
+
position: "fixed",
|
|
25680
|
+
bottom: "bottom0",
|
|
25681
|
+
width: ["w_var", {
|
|
25682
|
+
"--width": maybeCssVar61(__maybeInc26(headerWidth))
|
|
25683
|
+
}],
|
|
25684
|
+
height: ["h_var", {
|
|
25685
|
+
"--height": `${mobileFooterHeightPx}px`
|
|
25686
|
+
}],
|
|
25687
|
+
zIndex: ["z_var", {
|
|
25688
|
+
"--zIndex": maybeCssVar61(zIndices.pageStickyFooter)
|
|
25689
|
+
}],
|
|
25690
|
+
display: "df",
|
|
25691
|
+
alignItems: "aic",
|
|
25692
|
+
justifyContent: "jcfe",
|
|
25693
|
+
gap: "gap1",
|
|
25694
|
+
borderTopStyle: "bts_solid",
|
|
25695
|
+
borderTopWidth: "btw_1px",
|
|
25696
|
+
borderColor: ["bc_var", {
|
|
25697
|
+
"--borderColor": "var(--b-surface-separator)"
|
|
25698
|
+
}],
|
|
25699
|
+
backgroundColor: ["bgColor_var", {
|
|
25700
|
+
"--backgroundColor": "var(--b-surface)"
|
|
25701
|
+
}]
|
|
25702
|
+
},
|
|
25703
|
+
...pageContentPaddingX
|
|
25704
|
+
}), ...tid.footer, children: buttons })
|
|
25705
|
+
] }) });
|
|
25706
|
+
}
|
|
25707
|
+
var mobileFooterHeightPx = 80;
|
|
25708
|
+
function isValidStep(steps, value) {
|
|
25709
|
+
return steps.some((step) => step.value === value);
|
|
25710
|
+
}
|
|
25711
|
+
function getInitialStep(steps, defaultStep) {
|
|
25712
|
+
return defaultStep !== void 0 && isValidStep(steps, defaultStep) ? defaultStep : steps[0]?.value;
|
|
25713
|
+
}
|
|
25500
25714
|
export {
|
|
25501
25715
|
ASC,
|
|
25502
25716
|
Accordion,
|
|
@@ -25664,6 +25878,7 @@ export {
|
|
|
25664
25878
|
Tooltip,
|
|
25665
25879
|
TreeSelectField,
|
|
25666
25880
|
ViewToggleButton,
|
|
25881
|
+
WorkflowLayout,
|
|
25667
25882
|
actionColumn,
|
|
25668
25883
|
applyRowFn,
|
|
25669
25884
|
assignDefaultColumnIds,
|
|
@@ -25675,6 +25890,7 @@ export {
|
|
|
25675
25890
|
beamPageHeaderLayoutHeightVar,
|
|
25676
25891
|
beamSideNavLayoutWidthVar,
|
|
25677
25892
|
beamTableActionsHeightVar,
|
|
25893
|
+
beamWorkflowLayoutFooterHeightVar,
|
|
25678
25894
|
booleanFilter,
|
|
25679
25895
|
boundCheckboxField,
|
|
25680
25896
|
boundCheckboxGroupField,
|
|
@@ -25737,10 +25953,12 @@ export {
|
|
|
25737
25953
|
getColumnBorderCss,
|
|
25738
25954
|
getDateFormat,
|
|
25739
25955
|
getFirstOrLastCellCss,
|
|
25956
|
+
getFloatingBottomOffset,
|
|
25740
25957
|
getJustification,
|
|
25741
25958
|
getNavLinkStyles,
|
|
25742
25959
|
getTableRefWidthStyles,
|
|
25743
25960
|
getTableStyles,
|
|
25961
|
+
headerContentPaddingX,
|
|
25744
25962
|
headerRenderFn,
|
|
25745
25963
|
hoverStyles,
|
|
25746
25964
|
increment,
|
|
@@ -25770,6 +25988,8 @@ export {
|
|
|
25770
25988
|
nonKindGridColumnKeys,
|
|
25771
25989
|
numberRangeFilter,
|
|
25772
25990
|
numericColumn,
|
|
25991
|
+
pageContentGutterPx,
|
|
25992
|
+
pageContentPaddingX,
|
|
25773
25993
|
parseDate,
|
|
25774
25994
|
parseDateRange,
|
|
25775
25995
|
parseWidthToPx,
|