@bwp-web/components 1.3.2 → 1.4.1
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/README.md +52 -39
- package/dist/BiampHeader/BiampHeader.d.ts.map +1 -1
- package/dist/BiampSidebar/BiampSidebar.d.ts +8 -2
- package/dist/BiampSidebar/BiampSidebar.d.ts.map +1 -1
- package/dist/index.cjs +199 -60
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +197 -57
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -421,37 +421,137 @@ function BiampWrapper({ children, sx, ...props }) {
|
|
|
421
421
|
import {
|
|
422
422
|
Box,
|
|
423
423
|
ListItemButton,
|
|
424
|
-
Stack as Stack2
|
|
424
|
+
Stack as Stack2,
|
|
425
|
+
Typography
|
|
425
426
|
} from "@mui/material";
|
|
426
|
-
import { BiampLogoIcon } from "@bwp-web/assets";
|
|
427
|
+
import { BiampLogoIcon, SquareRoundedArrowRightIcon } from "@bwp-web/assets";
|
|
428
|
+
import { createContext, useContext, useState } from "react";
|
|
427
429
|
import { jsx as jsx2, jsxs } from "react/jsx-runtime";
|
|
430
|
+
var BiampSidebarContext = createContext({
|
|
431
|
+
expanded: false
|
|
432
|
+
});
|
|
428
433
|
function BiampSidebar({
|
|
429
434
|
children,
|
|
430
435
|
bottomLogoIcon,
|
|
436
|
+
bottomLogoText,
|
|
437
|
+
expandable = true,
|
|
438
|
+
expanded: expandedProp,
|
|
439
|
+
defaultExpanded = false,
|
|
440
|
+
onExpandedChange,
|
|
431
441
|
sx,
|
|
432
442
|
...props
|
|
433
443
|
}) {
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
444
|
+
const [internalExpanded, setInternalExpanded] = useState(defaultExpanded);
|
|
445
|
+
const isControlled = expandedProp !== void 0;
|
|
446
|
+
const expanded = isControlled ? expandedProp : internalExpanded;
|
|
447
|
+
const toggleExpanded = () => {
|
|
448
|
+
const next = !expanded;
|
|
449
|
+
if (!isControlled) setInternalExpanded(next);
|
|
450
|
+
onExpandedChange?.(next);
|
|
451
|
+
};
|
|
452
|
+
const width = expanded ? "240px" : "48px";
|
|
453
|
+
return /* @__PURE__ */ jsx2(BiampSidebarContext.Provider, { value: { expanded }, children: /* @__PURE__ */ jsxs(
|
|
454
|
+
Stack2,
|
|
455
|
+
{
|
|
456
|
+
sx: {
|
|
457
|
+
width,
|
|
458
|
+
minWidth: width,
|
|
459
|
+
height: "100%",
|
|
460
|
+
transition: ({ transitions }) => transitions.create(["width", "min-width"], {
|
|
461
|
+
easing: transitions.easing.sharp,
|
|
462
|
+
duration: expanded ? transitions.duration.enteringScreen : transitions.duration.leavingScreen
|
|
463
|
+
}),
|
|
464
|
+
...sx
|
|
465
|
+
},
|
|
466
|
+
...props,
|
|
467
|
+
children: [
|
|
468
|
+
/* @__PURE__ */ jsx2(Stack2, { sx: { flex: 1, minHeight: 0 }, children }),
|
|
469
|
+
expandable && /* @__PURE__ */ jsx2(
|
|
470
|
+
BiampSidebarIcon,
|
|
471
|
+
{
|
|
472
|
+
icon: /* @__PURE__ */ jsx2(
|
|
473
|
+
SquareRoundedArrowRightIcon,
|
|
474
|
+
{
|
|
475
|
+
sx: {
|
|
476
|
+
transform: expanded ? "rotate(180deg)" : "none",
|
|
477
|
+
transition: ({ transitions }) => transitions.create("transform", {
|
|
478
|
+
duration: transitions.duration.shorter
|
|
479
|
+
})
|
|
480
|
+
}
|
|
481
|
+
}
|
|
482
|
+
),
|
|
483
|
+
name: "Collapse menu",
|
|
484
|
+
onClick: toggleExpanded
|
|
485
|
+
}
|
|
486
|
+
),
|
|
487
|
+
/* @__PURE__ */ jsxs(
|
|
488
|
+
Stack2,
|
|
489
|
+
{
|
|
490
|
+
direction: "row",
|
|
491
|
+
alignItems: "center",
|
|
492
|
+
justifyContent: "space-between",
|
|
493
|
+
sx: { mt: 2, overflow: "hidden" },
|
|
494
|
+
children: [
|
|
495
|
+
bottomLogoIcon ?? /* @__PURE__ */ jsx2(
|
|
496
|
+
BiampLogoIcon,
|
|
497
|
+
{
|
|
498
|
+
sx: { width: "48px", height: "15px", flexShrink: 0 }
|
|
499
|
+
}
|
|
500
|
+
),
|
|
501
|
+
bottomLogoText && /* @__PURE__ */ jsx2(
|
|
502
|
+
Typography,
|
|
503
|
+
{
|
|
504
|
+
variant: "caption",
|
|
505
|
+
fontWeight: 500,
|
|
506
|
+
color: "sidebar.main",
|
|
507
|
+
noWrap: true,
|
|
508
|
+
sx: {
|
|
509
|
+
opacity: expanded ? 1 : 0,
|
|
510
|
+
transition: ({ transitions }) => transitions.create("opacity", {
|
|
511
|
+
duration: expanded ? transitions.duration.enteringScreen : transitions.duration.leavingScreen
|
|
512
|
+
})
|
|
513
|
+
},
|
|
514
|
+
children: `\xA9 ${(/* @__PURE__ */ new Date()).getFullYear()} ${bottomLogoText}`
|
|
515
|
+
}
|
|
516
|
+
)
|
|
517
|
+
]
|
|
518
|
+
}
|
|
519
|
+
)
|
|
520
|
+
]
|
|
521
|
+
}
|
|
522
|
+
) });
|
|
438
523
|
}
|
|
439
524
|
function BiampSidebarIconList({
|
|
440
525
|
children,
|
|
441
526
|
sx,
|
|
442
527
|
...props
|
|
443
528
|
}) {
|
|
444
|
-
return /* @__PURE__ */ jsx2(
|
|
529
|
+
return /* @__PURE__ */ jsx2(
|
|
530
|
+
Stack2,
|
|
531
|
+
{
|
|
532
|
+
sx: {
|
|
533
|
+
flex: 1,
|
|
534
|
+
minHeight: 0,
|
|
535
|
+
gap: "4px",
|
|
536
|
+
overflowY: "auto",
|
|
537
|
+
...sx
|
|
538
|
+
},
|
|
539
|
+
...props,
|
|
540
|
+
children
|
|
541
|
+
}
|
|
542
|
+
);
|
|
445
543
|
}
|
|
446
544
|
function BiampSidebarIcon({
|
|
447
545
|
selected,
|
|
448
546
|
icon,
|
|
449
547
|
selectedIcon,
|
|
548
|
+
name,
|
|
450
549
|
sx,
|
|
451
550
|
...props
|
|
452
551
|
}) {
|
|
552
|
+
const { expanded } = useContext(BiampSidebarContext);
|
|
453
553
|
const displayedSelectedIcon = selectedIcon ?? icon;
|
|
454
|
-
return /* @__PURE__ */
|
|
554
|
+
return /* @__PURE__ */ jsxs(
|
|
455
555
|
ListItemButton,
|
|
456
556
|
{
|
|
457
557
|
selected,
|
|
@@ -459,16 +559,50 @@ function BiampSidebarIcon({
|
|
|
459
559
|
disableRipple: true,
|
|
460
560
|
sx: {
|
|
461
561
|
minWidth: "48px",
|
|
462
|
-
maxWidth: "48px",
|
|
463
562
|
minHeight: "48px",
|
|
464
563
|
maxHeight: "48px",
|
|
465
564
|
borderRadius: "8px",
|
|
466
|
-
justifyContent: "
|
|
565
|
+
justifyContent: "flex-start",
|
|
467
566
|
alignItems: "center",
|
|
567
|
+
padding: 0,
|
|
568
|
+
overflow: "hidden",
|
|
569
|
+
color: "text.secondary",
|
|
468
570
|
...sx
|
|
469
571
|
},
|
|
470
572
|
...props,
|
|
471
|
-
children:
|
|
573
|
+
children: [
|
|
574
|
+
/* @__PURE__ */ jsx2(
|
|
575
|
+
Box,
|
|
576
|
+
{
|
|
577
|
+
sx: {
|
|
578
|
+
width: "48px",
|
|
579
|
+
height: "48px",
|
|
580
|
+
display: "flex",
|
|
581
|
+
alignItems: "center",
|
|
582
|
+
justifyContent: "center",
|
|
583
|
+
flexShrink: 0
|
|
584
|
+
},
|
|
585
|
+
children: selected ? displayedSelectedIcon : icon
|
|
586
|
+
}
|
|
587
|
+
),
|
|
588
|
+
name && /* @__PURE__ */ jsx2(
|
|
589
|
+
Typography,
|
|
590
|
+
{
|
|
591
|
+
variant: "body1",
|
|
592
|
+
fontWeight: 600,
|
|
593
|
+
color: "inherit",
|
|
594
|
+
noWrap: true,
|
|
595
|
+
sx: {
|
|
596
|
+
pr: 2,
|
|
597
|
+
opacity: expanded ? 1 : 0,
|
|
598
|
+
transition: ({ transitions }) => transitions.create("opacity", {
|
|
599
|
+
duration: expanded ? transitions.duration.enteringScreen : transitions.duration.leavingScreen
|
|
600
|
+
})
|
|
601
|
+
},
|
|
602
|
+
children: name
|
|
603
|
+
}
|
|
604
|
+
)
|
|
605
|
+
]
|
|
472
606
|
}
|
|
473
607
|
);
|
|
474
608
|
}
|
|
@@ -507,8 +641,9 @@ import {
|
|
|
507
641
|
Popover,
|
|
508
642
|
Stack as Stack3,
|
|
509
643
|
TextField,
|
|
510
|
-
Typography
|
|
644
|
+
Typography as Typography2
|
|
511
645
|
} from "@mui/material";
|
|
646
|
+
import { Children } from "react";
|
|
512
647
|
import { BiampRedLogo, ExternalLinkIcon, SearchIcon } from "@bwp-web/assets";
|
|
513
648
|
import { jsx as jsx3, jsxs as jsxs2 } from "react/jsx-runtime";
|
|
514
649
|
function BiampHeader({ children, sx, ...props }) {
|
|
@@ -558,8 +693,8 @@ function BiampHeaderTitle({
|
|
|
558
693
|
}
|
|
559
694
|
),
|
|
560
695
|
/* @__PURE__ */ jsxs2(Stack3, { direction: "row", gap: 0.5, children: [
|
|
561
|
-
title && /* @__PURE__ */ jsx3(
|
|
562
|
-
subtitle && /* @__PURE__ */ jsx3(
|
|
696
|
+
title && /* @__PURE__ */ jsx3(Typography2, { variant: "h4", children: title }),
|
|
697
|
+
subtitle && /* @__PURE__ */ jsx3(Typography2, { variant: "h4", color: "text.secondary", children: subtitle })
|
|
563
698
|
] })
|
|
564
699
|
]
|
|
565
700
|
}
|
|
@@ -739,8 +874,8 @@ function BiampBuildAppContentItem({
|
|
|
739
874
|
...props,
|
|
740
875
|
children: [
|
|
741
876
|
/* @__PURE__ */ jsx3(Box2, { sx: { width: 54, height: 54 }, mb: 0.5, children: image }),
|
|
742
|
-
/* @__PURE__ */ jsx3(
|
|
743
|
-
/* @__PURE__ */ jsx3(
|
|
877
|
+
/* @__PURE__ */ jsx3(Typography2, { variant: "caption", fontWeight: 600, mb: 0.5, children: name }),
|
|
878
|
+
/* @__PURE__ */ jsx3(Typography2, { variant: "caption", color: "text.secondary", children: description }),
|
|
744
879
|
button && /* @__PURE__ */ jsx3(Box2, { position: "absolute", top: "12px", right: "12px", children: button })
|
|
745
880
|
]
|
|
746
881
|
}
|
|
@@ -751,12 +886,17 @@ function BiampEndUserAppContent({
|
|
|
751
886
|
sx,
|
|
752
887
|
...props
|
|
753
888
|
}) {
|
|
889
|
+
const isGrid = Children.count(children) > 1;
|
|
754
890
|
return /* @__PURE__ */ jsx3(
|
|
755
891
|
Stack3,
|
|
756
892
|
{
|
|
757
893
|
direction: "column",
|
|
758
894
|
sx: {
|
|
759
895
|
gap: 1.5,
|
|
896
|
+
...isGrid && {
|
|
897
|
+
display: "grid",
|
|
898
|
+
gridTemplateColumns: "1fr 1fr"
|
|
899
|
+
},
|
|
760
900
|
...sx
|
|
761
901
|
},
|
|
762
902
|
...props,
|
|
@@ -797,8 +937,8 @@ function BiampEndUserAppContentItem({
|
|
|
797
937
|
children: [
|
|
798
938
|
/* @__PURE__ */ jsx3(Box2, { sx: { width: 32, height: 32 }, children: image }),
|
|
799
939
|
/* @__PURE__ */ jsxs2(Stack3, { direction: "column", children: [
|
|
800
|
-
/* @__PURE__ */ jsx3(
|
|
801
|
-
/* @__PURE__ */ jsx3(
|
|
940
|
+
/* @__PURE__ */ jsx3(Typography2, { variant: "caption", fontWeight: 600, children: name }),
|
|
941
|
+
/* @__PURE__ */ jsx3(Typography2, { variant: "caption", color: "text.secondary", children: description })
|
|
802
942
|
] }),
|
|
803
943
|
/* @__PURE__ */ jsx3(ExternalLinkIcon, { sx: { width: 16, height: 16, ml: "auto" } })
|
|
804
944
|
]
|
|
@@ -915,7 +1055,7 @@ import { useEffect as useEffect2, useRef as useRef3 } from "react";
|
|
|
915
1055
|
import { NoResultsIcon } from "@bwp-web/assets";
|
|
916
1056
|
|
|
917
1057
|
// src/BiampTable/BiampTableStatusMessage.tsx
|
|
918
|
-
import { Stack as Stack5, Typography as
|
|
1058
|
+
import { Stack as Stack5, Typography as Typography3 } from "@mui/material";
|
|
919
1059
|
import { cloneElement } from "react";
|
|
920
1060
|
import { jsx as jsx4, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
921
1061
|
function BiampTableStatusMessage({
|
|
@@ -930,8 +1070,8 @@ function BiampTableStatusMessage({
|
|
|
930
1070
|
"aria-hidden": true,
|
|
931
1071
|
sx: { width: 56, height: 56, ...icon.props.sx }
|
|
932
1072
|
}),
|
|
933
|
-
/* @__PURE__ */ jsx4(
|
|
934
|
-
description && /* @__PURE__ */ jsx4(
|
|
1073
|
+
/* @__PURE__ */ jsx4(Typography3, { variant: "h2", children: title }),
|
|
1074
|
+
description && /* @__PURE__ */ jsx4(Typography3, { variant: "body1", children: description }),
|
|
935
1075
|
children
|
|
936
1076
|
] });
|
|
937
1077
|
}
|
|
@@ -979,13 +1119,13 @@ import React2 from "react";
|
|
|
979
1119
|
|
|
980
1120
|
// src/BiampTable/BiampTableTruncatedCell.tsx
|
|
981
1121
|
import { Box as Box3, Tooltip } from "@mui/material";
|
|
982
|
-
import { useCallback, useRef, useState } from "react";
|
|
1122
|
+
import { useCallback, useRef, useState as useState2 } from "react";
|
|
983
1123
|
import { jsx as jsx7 } from "react/jsx-runtime";
|
|
984
1124
|
function BiampTableTruncatedCell({
|
|
985
1125
|
children
|
|
986
1126
|
}) {
|
|
987
1127
|
const textRef = useRef(null);
|
|
988
|
-
const [open, setOpen] =
|
|
1128
|
+
const [open, setOpen] = useState2(false);
|
|
989
1129
|
const handleMouseEnter = useCallback(() => {
|
|
990
1130
|
const el = textRef.current;
|
|
991
1131
|
if (el && el.scrollWidth > el.clientWidth) {
|
|
@@ -1392,9 +1532,9 @@ var BiampTableRow = React2.memo(
|
|
|
1392
1532
|
);
|
|
1393
1533
|
|
|
1394
1534
|
// src/BiampTable/useLoadingDelay.ts
|
|
1395
|
-
import { useEffect, useRef as useRef2, useState as
|
|
1535
|
+
import { useEffect, useRef as useRef2, useState as useState3 } from "react";
|
|
1396
1536
|
function useLoadingDelay(loading, { delay = 150, minDuration = 500 } = {}) {
|
|
1397
|
-
const [status, setStatus] =
|
|
1537
|
+
const [status, setStatus] = useState3("idle");
|
|
1398
1538
|
const timeoutRef = useRef2(null);
|
|
1399
1539
|
function clearPending() {
|
|
1400
1540
|
if (timeoutRef.current !== null) {
|
|
@@ -1666,7 +1806,7 @@ import {
|
|
|
1666
1806
|
List,
|
|
1667
1807
|
ListItem,
|
|
1668
1808
|
Popover as Popover2,
|
|
1669
|
-
Typography as
|
|
1809
|
+
Typography as Typography4
|
|
1670
1810
|
} from "@mui/material";
|
|
1671
1811
|
import { jsx as jsx13, jsxs as jsxs7 } from "react/jsx-runtime";
|
|
1672
1812
|
function toVisibilityState(visibility) {
|
|
@@ -1747,7 +1887,7 @@ function BiampTableColumnVisibility({
|
|
|
1747
1887
|
slotProps: { input: { "aria-label": `${showAllLabel} columns` } }
|
|
1748
1888
|
}
|
|
1749
1889
|
),
|
|
1750
|
-
/* @__PURE__ */ jsx13(
|
|
1890
|
+
/* @__PURE__ */ jsx13(Typography4, { variant: "caption", fontWeight: 600, children: showAllLabel })
|
|
1751
1891
|
]
|
|
1752
1892
|
}
|
|
1753
1893
|
),
|
|
@@ -1775,7 +1915,7 @@ function BiampTableColumnVisibility({
|
|
|
1775
1915
|
}
|
|
1776
1916
|
}
|
|
1777
1917
|
),
|
|
1778
|
-
/* @__PURE__ */ jsx13(
|
|
1918
|
+
/* @__PURE__ */ jsx13(Typography4, { variant: "caption", children: columnName })
|
|
1779
1919
|
]
|
|
1780
1920
|
},
|
|
1781
1921
|
column.id
|
|
@@ -1790,7 +1930,7 @@ function BiampTableColumnVisibility({
|
|
|
1790
1930
|
|
|
1791
1931
|
// src/BiampTable/BiampTableToolbarColumnVisibility.tsx
|
|
1792
1932
|
import { ColumnsIcon } from "@bwp-web/assets";
|
|
1793
|
-
import { useState as
|
|
1933
|
+
import { useState as useState4 } from "react";
|
|
1794
1934
|
|
|
1795
1935
|
// src/BiampTable/BiampTableToolbarActionButton.tsx
|
|
1796
1936
|
import {
|
|
@@ -1843,7 +1983,7 @@ function BiampTableToolbarColumnVisibility({
|
|
|
1843
1983
|
showAllLabel,
|
|
1844
1984
|
...actionButtonProps
|
|
1845
1985
|
}) {
|
|
1846
|
-
const [anchorEl, setAnchorEl] =
|
|
1986
|
+
const [anchorEl, setAnchorEl] = useState4(null);
|
|
1847
1987
|
const defaults = defaultColumnVisibility ?? getDefaultColumnVisibility(table);
|
|
1848
1988
|
const dirtyCount = getColumnVisibilityDirtyCount(table, defaults);
|
|
1849
1989
|
return /* @__PURE__ */ jsxs8(Fragment2, { children: [
|
|
@@ -2010,10 +2150,10 @@ import {
|
|
|
2010
2150
|
Divider as Divider2,
|
|
2011
2151
|
Drawer,
|
|
2012
2152
|
IconButton as IconButton4,
|
|
2013
|
-
Typography as
|
|
2153
|
+
Typography as Typography5
|
|
2014
2154
|
} from "@mui/material";
|
|
2015
2155
|
import { CloseIcon, FilterIcon } from "@bwp-web/assets";
|
|
2016
|
-
import { useId, useState as
|
|
2156
|
+
import { useId, useState as useState5 } from "react";
|
|
2017
2157
|
import { Fragment as Fragment3, jsx as jsx20, jsxs as jsxs9 } from "react/jsx-runtime";
|
|
2018
2158
|
function BiampTableToolbarFilters({
|
|
2019
2159
|
activeFilterCount,
|
|
@@ -2028,7 +2168,7 @@ function BiampTableToolbarFilters({
|
|
|
2028
2168
|
buttonLabel = "Filters",
|
|
2029
2169
|
DrawerProps: drawerProps
|
|
2030
2170
|
}) {
|
|
2031
|
-
const [open, setOpen] =
|
|
2171
|
+
const [open, setOpen] = useState5(false);
|
|
2032
2172
|
const titleId = useId();
|
|
2033
2173
|
function handleClose() {
|
|
2034
2174
|
onApply?.();
|
|
@@ -2074,7 +2214,7 @@ function BiampTableToolbarFilters({
|
|
|
2074
2214
|
px: 3.5,
|
|
2075
2215
|
py: 2.5,
|
|
2076
2216
|
children: [
|
|
2077
|
-
/* @__PURE__ */ jsxs9(
|
|
2217
|
+
/* @__PURE__ */ jsxs9(Typography5, { id: titleId, variant: "h2", children: [
|
|
2078
2218
|
title,
|
|
2079
2219
|
/* @__PURE__ */ jsx20(
|
|
2080
2220
|
Badge2,
|
|
@@ -2154,7 +2294,7 @@ import {
|
|
|
2154
2294
|
useMediaQuery
|
|
2155
2295
|
} from "@mui/material";
|
|
2156
2296
|
import { CloseIcon as CloseIcon2, SearchIcon as SearchIcon2 } from "@bwp-web/assets";
|
|
2157
|
-
import { useEffect as useEffect5, useState as
|
|
2297
|
+
import { useEffect as useEffect5, useState as useState6 } from "react";
|
|
2158
2298
|
|
|
2159
2299
|
// src/BiampTable/useDebouncedCallback.ts
|
|
2160
2300
|
import { useCallback as useCallback2, useEffect as useEffect4, useRef as useRef5 } from "react";
|
|
@@ -2206,8 +2346,8 @@ function BiampTableToolbarSearch({
|
|
|
2206
2346
|
...textFieldProps
|
|
2207
2347
|
}) {
|
|
2208
2348
|
const isMobile = useMediaQuery((t) => t.breakpoints.down("md"));
|
|
2209
|
-
const [inputValue, setInputValue] =
|
|
2210
|
-
const [isExpanded, setIsExpanded] =
|
|
2349
|
+
const [inputValue, setInputValue] = useState6(defaultValue);
|
|
2350
|
+
const [isExpanded, setIsExpanded] = useState6(false);
|
|
2211
2351
|
const debouncedOnChange = useDebouncedCallback(onChange, debounceDelay);
|
|
2212
2352
|
useEffect5(() => {
|
|
2213
2353
|
setInputValue(defaultValue);
|
|
@@ -2539,7 +2679,7 @@ function downloadCsv(csvContent, filename) {
|
|
|
2539
2679
|
import {
|
|
2540
2680
|
Box as Box12,
|
|
2541
2681
|
Collapse as Collapse2,
|
|
2542
|
-
Typography as
|
|
2682
|
+
Typography as Typography6
|
|
2543
2683
|
} from "@mui/material";
|
|
2544
2684
|
import {
|
|
2545
2685
|
ErrorStatusIcon,
|
|
@@ -2577,7 +2717,7 @@ function BiampBannerIcon({ severity, children }) {
|
|
|
2577
2717
|
return /* @__PURE__ */ jsx22(Fragment4, { children: severity ? iconMapping[severity] : children });
|
|
2578
2718
|
}
|
|
2579
2719
|
function BiampBannerContent({ children, ...props }) {
|
|
2580
|
-
return /* @__PURE__ */ jsx22(
|
|
2720
|
+
return /* @__PURE__ */ jsx22(Typography6, { textAlign: "center", variant: "h3", ...props, children });
|
|
2581
2721
|
}
|
|
2582
2722
|
function BiampBannerActions({ children, ...props }) {
|
|
2583
2723
|
return /* @__PURE__ */ jsx22(Box12, { display: "flex", gap: 1, alignItems: "center", ...props, children });
|
|
@@ -2646,7 +2786,7 @@ function SegmentedButtonGroup({ children, sx, ...props }) {
|
|
|
2646
2786
|
}
|
|
2647
2787
|
|
|
2648
2788
|
// src/BiampGlobalSearch/BiampGlobalSearch.tsx
|
|
2649
|
-
import { createContext, forwardRef, useContext } from "react";
|
|
2789
|
+
import { createContext as createContext2, forwardRef, useContext as useContext2 } from "react";
|
|
2650
2790
|
import {
|
|
2651
2791
|
Autocomplete,
|
|
2652
2792
|
Box as Box13,
|
|
@@ -2654,11 +2794,11 @@ import {
|
|
|
2654
2794
|
InputAdornment as InputAdornment3,
|
|
2655
2795
|
Paper,
|
|
2656
2796
|
TextField as TextField3,
|
|
2657
|
-
Typography as
|
|
2797
|
+
Typography as Typography7
|
|
2658
2798
|
} from "@mui/material";
|
|
2659
2799
|
import { KeyArrowDownIcon, KeyArrowUpIcon, SearchIcon as SearchIcon3 } from "@bwp-web/assets";
|
|
2660
2800
|
import { Fragment as Fragment5, jsx as jsx25, jsxs as jsxs11 } from "react/jsx-runtime";
|
|
2661
|
-
var SearchContext =
|
|
2801
|
+
var SearchContext = createContext2({
|
|
2662
2802
|
hasOptions: true,
|
|
2663
2803
|
loading: false,
|
|
2664
2804
|
noResultsText: "No results found",
|
|
@@ -2695,10 +2835,10 @@ function KeyCap({
|
|
|
2695
2835
|
}
|
|
2696
2836
|
var BiampGlobalSearchPaper = forwardRef(
|
|
2697
2837
|
function BiampGlobalSearchPaper2({ children, ...props }, ref) {
|
|
2698
|
-
const { hasOptions, loading, noResultsText } =
|
|
2838
|
+
const { hasOptions, loading, noResultsText } = useContext2(SearchContext);
|
|
2699
2839
|
return /* @__PURE__ */ jsxs11(Paper, { ref, ...props, children: [
|
|
2700
2840
|
hasOptions || loading ? children : /* @__PURE__ */ jsx25(
|
|
2701
|
-
|
|
2841
|
+
Typography7,
|
|
2702
2842
|
{
|
|
2703
2843
|
variant: "body2",
|
|
2704
2844
|
color: "text.secondary",
|
|
@@ -2723,7 +2863,7 @@ var BiampGlobalSearchPaper = forwardRef(
|
|
|
2723
2863
|
/* @__PURE__ */ jsx25(KeyCap, { children: /* @__PURE__ */ jsx25(KeyArrowUpIcon, {}) })
|
|
2724
2864
|
] }),
|
|
2725
2865
|
/* @__PURE__ */ jsx25(
|
|
2726
|
-
|
|
2866
|
+
Typography7,
|
|
2727
2867
|
{
|
|
2728
2868
|
variant: "caption",
|
|
2729
2869
|
fontWeight: (theme) => theme.typography.fontWeightMedium,
|
|
@@ -2735,7 +2875,7 @@ var BiampGlobalSearchPaper = forwardRef(
|
|
|
2735
2875
|
/* @__PURE__ */ jsxs11(Box13, { sx: { display: "flex", alignItems: "center", gap: 1 }, children: [
|
|
2736
2876
|
/* @__PURE__ */ jsx25(KeyCap, { variant: "text", children: "Enter" }),
|
|
2737
2877
|
/* @__PURE__ */ jsx25(
|
|
2738
|
-
|
|
2878
|
+
Typography7,
|
|
2739
2879
|
{
|
|
2740
2880
|
variant: "caption",
|
|
2741
2881
|
fontWeight: (theme) => theme.typography.fontWeightMedium,
|
|
@@ -2780,7 +2920,7 @@ function BiampGlobalSearchListItem({
|
|
|
2780
2920
|
option,
|
|
2781
2921
|
props: liProps
|
|
2782
2922
|
}) {
|
|
2783
|
-
const { query } =
|
|
2923
|
+
const { query } = useContext2(SearchContext);
|
|
2784
2924
|
const { key, ...rest } = liProps;
|
|
2785
2925
|
const maxChips = 3;
|
|
2786
2926
|
const chips = option.associatedItems?.slice(0, maxChips) ?? [];
|
|
@@ -2811,9 +2951,9 @@ function BiampGlobalSearchListItem({
|
|
|
2811
2951
|
children: option.icon
|
|
2812
2952
|
}
|
|
2813
2953
|
),
|
|
2814
|
-
/* @__PURE__ */ jsx25(
|
|
2954
|
+
/* @__PURE__ */ jsx25(Typography7, { variant: "body2", noWrap: true, sx: { flexShrink: 0 }, children: /* @__PURE__ */ jsx25(HighlightText, { text: option.title, query }) }),
|
|
2815
2955
|
option.subtitle && /* @__PURE__ */ jsx25(
|
|
2816
|
-
|
|
2956
|
+
Typography7,
|
|
2817
2957
|
{
|
|
2818
2958
|
className: "hoverContent",
|
|
2819
2959
|
variant: "body2",
|
|
@@ -2939,7 +3079,7 @@ function BiampGlobalSearch({
|
|
|
2939
3079
|
loading,
|
|
2940
3080
|
onChange: handleChange,
|
|
2941
3081
|
onInputChange: handleInputChange,
|
|
2942
|
-
loadingText: /* @__PURE__ */ jsx25(
|
|
3082
|
+
loadingText: /* @__PURE__ */ jsx25(Typography7, { variant: "body2", color: "text.secondary", children: "Loading\u2026" }),
|
|
2943
3083
|
freeSolo: true,
|
|
2944
3084
|
filterOptions: (x) => x,
|
|
2945
3085
|
getOptionLabel: (option) => typeof option === "string" ? option : option.title,
|
|
@@ -3004,7 +3144,7 @@ function BiampGlobalSearch({
|
|
|
3004
3144
|
|
|
3005
3145
|
// src/UserInitialsIcon/UserInitialsIcon.tsx
|
|
3006
3146
|
var import_randomcolor = __toESM(require_randomColor(), 1);
|
|
3007
|
-
import { Box as Box14, Typography as
|
|
3147
|
+
import { Box as Box14, Typography as Typography8 } from "@mui/material";
|
|
3008
3148
|
import { darken } from "@mui/material/styles";
|
|
3009
3149
|
import { jsx as jsx26 } from "react/jsx-runtime";
|
|
3010
3150
|
var DEFAULT_SIZE = 40;
|
|
@@ -3039,7 +3179,7 @@ function UserInitialsIcon({
|
|
|
3039
3179
|
sx: { ...sx },
|
|
3040
3180
|
...props,
|
|
3041
3181
|
children: /* @__PURE__ */ jsx26(
|
|
3042
|
-
|
|
3182
|
+
Typography8,
|
|
3043
3183
|
{
|
|
3044
3184
|
variant: "h3",
|
|
3045
3185
|
color: textColor,
|
|
@@ -3062,7 +3202,7 @@ var getInitials = (name) => {
|
|
|
3062
3202
|
|
|
3063
3203
|
// src/DynamicSvgIcon/DynamicSvgIcon.tsx
|
|
3064
3204
|
import { SvgIcon, Skeleton, Box as Box15 } from "@mui/material";
|
|
3065
|
-
import { useEffect as useEffect6, useState as
|
|
3205
|
+
import { useEffect as useEffect6, useState as useState7 } from "react";
|
|
3066
3206
|
import { jsx as jsx27 } from "react/jsx-runtime";
|
|
3067
3207
|
var svgCache = /* @__PURE__ */ new Map();
|
|
3068
3208
|
function clearDynamicSvgIconCache() {
|
|
@@ -3074,16 +3214,16 @@ function applyCurrentColor(svg) {
|
|
|
3074
3214
|
function useDynamicSvgIcon(url, options = {}) {
|
|
3075
3215
|
const { replaceColors = false, onLoad, onError } = options;
|
|
3076
3216
|
const transform = replaceColors ? applyCurrentColor : (s) => s;
|
|
3077
|
-
const [svgContent, setSvgContent] =
|
|
3217
|
+
const [svgContent, setSvgContent] = useState7(() => {
|
|
3078
3218
|
const cached = svgCache.get(url);
|
|
3079
3219
|
return cached ? transform(cached.innerContent) : null;
|
|
3080
3220
|
});
|
|
3081
|
-
const [svgViewBox, setSvgViewBox] =
|
|
3221
|
+
const [svgViewBox, setSvgViewBox] = useState7(() => {
|
|
3082
3222
|
const cached = svgCache.get(url);
|
|
3083
3223
|
return cached?.viewBox ?? null;
|
|
3084
3224
|
});
|
|
3085
|
-
const [loading, setLoading] =
|
|
3086
|
-
const [error, setError] =
|
|
3225
|
+
const [loading, setLoading] = useState7(() => !svgCache.has(url));
|
|
3226
|
+
const [error, setError] = useState7(null);
|
|
3087
3227
|
useEffect6(() => {
|
|
3088
3228
|
if (!url) {
|
|
3089
3229
|
setLoading(false);
|