@wavelengthusaf/components 4.8.0 → 4.11.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/cjs/index.cjs +539 -953
- package/dist/cjs/index.d.cts +57 -50
- package/dist/esm/index.d.ts +57 -50
- package/dist/esm/index.js +809 -1223
- package/package.json +2 -2
package/dist/esm/index.js
CHANGED
|
@@ -206,7 +206,7 @@ var require_react_is_development = __commonJS({
|
|
|
206
206
|
var ContextProvider = REACT_PROVIDER_TYPE;
|
|
207
207
|
var Element = REACT_ELEMENT_TYPE;
|
|
208
208
|
var ForwardRef2 = REACT_FORWARD_REF_TYPE;
|
|
209
|
-
var
|
|
209
|
+
var Fragment16 = REACT_FRAGMENT_TYPE;
|
|
210
210
|
var Lazy = REACT_LAZY_TYPE;
|
|
211
211
|
var Memo2 = REACT_MEMO_TYPE;
|
|
212
212
|
var Portal = REACT_PORTAL_TYPE;
|
|
@@ -265,7 +265,7 @@ var require_react_is_development = __commonJS({
|
|
|
265
265
|
exports.ContextProvider = ContextProvider;
|
|
266
266
|
exports.Element = Element;
|
|
267
267
|
exports.ForwardRef = ForwardRef2;
|
|
268
|
-
exports.Fragment =
|
|
268
|
+
exports.Fragment = Fragment16;
|
|
269
269
|
exports.Lazy = Lazy;
|
|
270
270
|
exports.Memo = Memo2;
|
|
271
271
|
exports.Portal = Portal;
|
|
@@ -3728,568 +3728,89 @@ function WavelengthExampleComponent({ width: width2 = 100, height: height2 = 100
|
|
|
3728
3728
|
WavelengthExampleComponent.displayName = "WavelengthExampleComponent";
|
|
3729
3729
|
|
|
3730
3730
|
// src/components/search/WavelengthSearch.tsx
|
|
3731
|
-
import
|
|
3732
|
-
import
|
|
3733
|
-
|
|
3734
|
-
|
|
3735
|
-
import { useRef as useRef2 } from "react";
|
|
3736
|
-
import ListItem from "@mui/material/ListItem";
|
|
3737
|
-
import Popper from "@mui/material/Popper";
|
|
3738
|
-
import Autocomplete2 from "@mui/material/Autocomplete";
|
|
3739
|
-
import ListItemText from "@mui/material/ListItemText";
|
|
3740
|
-
import styled4 from "styled-components";
|
|
3741
|
-
import { Fragment as Fragment4, jsx as jsx8 } from "react/jsx-runtime";
|
|
3742
|
-
import { createElement } from "react";
|
|
3743
|
-
var CustomPopper = (props) => {
|
|
3744
|
-
return /* @__PURE__ */ jsx8(
|
|
3745
|
-
Popper,
|
|
3746
|
-
{
|
|
3747
|
-
sx: {
|
|
3748
|
-
"&.MuiAutocomplete-popper": {
|
|
3749
|
-
zIndex: 5
|
|
3750
|
-
}
|
|
3751
|
-
},
|
|
3752
|
-
...props,
|
|
3753
|
-
placement: "bottom",
|
|
3754
|
-
disablePortal: true,
|
|
3755
|
-
modifiers: [
|
|
3756
|
-
{
|
|
3757
|
-
name: "flip",
|
|
3758
|
-
enabled: true,
|
|
3759
|
-
options: {
|
|
3760
|
-
altBoundary: true,
|
|
3761
|
-
rootBoundary: "document",
|
|
3762
|
-
padding: 8
|
|
3763
|
-
}
|
|
3764
|
-
},
|
|
3765
|
-
{
|
|
3766
|
-
name: "preventOverflow",
|
|
3767
|
-
enabled: true,
|
|
3768
|
-
options: {
|
|
3769
|
-
altAxis: false,
|
|
3770
|
-
altBoundary: true,
|
|
3771
|
-
tether: true,
|
|
3772
|
-
rootBoundary: "document",
|
|
3773
|
-
padding: 8
|
|
3774
|
-
}
|
|
3775
|
-
}
|
|
3776
|
-
]
|
|
3777
|
-
}
|
|
3778
|
-
);
|
|
3779
|
-
};
|
|
3780
|
-
var AutocompleteCustomEndAdornment = styled4("div")({
|
|
3781
|
-
position: "absolute",
|
|
3782
|
-
right: "12px",
|
|
3783
|
-
top: "50%",
|
|
3784
|
-
transform: "translate(0, -50%)"
|
|
3785
|
-
});
|
|
3786
|
-
function WavelengthSearch({
|
|
3787
|
-
id,
|
|
3788
|
-
mode,
|
|
3789
|
-
type,
|
|
3731
|
+
import { useRef as useRef2, useEffect as useEffect2 } from "react";
|
|
3732
|
+
import { jsx as jsx8 } from "react/jsx-runtime";
|
|
3733
|
+
var WavelengthSearch = ({
|
|
3734
|
+
customStyle: customStyle2,
|
|
3790
3735
|
width: width2,
|
|
3736
|
+
mode,
|
|
3737
|
+
fontSize,
|
|
3791
3738
|
height: height2,
|
|
3792
|
-
|
|
3793
|
-
size,
|
|
3739
|
+
borderWidth,
|
|
3794
3740
|
borderRadius: borderRadius2,
|
|
3795
|
-
children,
|
|
3796
|
-
placeholder,
|
|
3797
|
-
onEnter,
|
|
3798
|
-
onSearchItemSelected,
|
|
3799
|
-
options,
|
|
3800
|
-
onChange,
|
|
3801
3741
|
borderColor: borderColor2,
|
|
3802
|
-
hoverColor,
|
|
3803
|
-
textColor,
|
|
3804
|
-
fontSize,
|
|
3805
3742
|
backgroundColor: backgroundColor2,
|
|
3806
|
-
iconPos
|
|
3807
|
-
|
|
3808
|
-
|
|
3809
|
-
|
|
3810
|
-
|
|
3811
|
-
|
|
3812
|
-
|
|
3813
|
-
|
|
3814
|
-
|
|
3815
|
-
|
|
3816
|
-
|
|
3817
|
-
|
|
3818
|
-
|
|
3819
|
-
|
|
3820
|
-
|
|
3821
|
-
|
|
3822
|
-
|
|
3823
|
-
|
|
3824
|
-
|
|
3825
|
-
if (onSearchItemSelected) onSearchItemSelected(value);
|
|
3826
|
-
}
|
|
3827
|
-
}
|
|
3828
|
-
},
|
|
3829
|
-
disableCloseOnSelect: false,
|
|
3830
|
-
getOptionLabel: (options2) => {
|
|
3831
|
-
const returnVal = typeof options2 === "string" ? options2 : options2.title;
|
|
3832
|
-
return returnVal;
|
|
3833
|
-
},
|
|
3834
|
-
options,
|
|
3835
|
-
sx: {
|
|
3836
|
-
width: width2,
|
|
3837
|
-
"&.MuiAutocomplete-hasClearIcon .MuiOutlinedInput-root": {
|
|
3838
|
-
paddingRight: clearIconMarginRight ? clearIconMarginRight : "45px"
|
|
3839
|
-
}
|
|
3840
|
-
},
|
|
3841
|
-
renderOption: (props, options2) => /* @__PURE__ */ createElement(ListItem, { ...props, key: options2.id }, /* @__PURE__ */ jsx8(ListItemText, { primary: options2.title, secondary: options2.subtitle })),
|
|
3842
|
-
renderInput: (params) => /* @__PURE__ */ jsx8(
|
|
3843
|
-
TextField2,
|
|
3844
|
-
{
|
|
3845
|
-
placeholder,
|
|
3846
|
-
...params,
|
|
3847
|
-
size,
|
|
3848
|
-
InputProps: {
|
|
3849
|
-
...params.InputProps,
|
|
3850
|
-
style: { borderRadius: borderRadius2, color: textColor, backgroundColor: backgroundColor2, height: height2, fontSize },
|
|
3851
|
-
type: "search",
|
|
3852
|
-
endAdornment: /* @__PURE__ */ jsx8(AutocompleteCustomEndAdornment, { children: /* @__PURE__ */ jsx8(IconButton, { sx: { color: "white" }, children }) })
|
|
3853
|
-
},
|
|
3854
|
-
sx: {
|
|
3855
|
-
"& .MuiInputBase-root": {
|
|
3856
|
-
height: height2
|
|
3857
|
-
},
|
|
3858
|
-
"&.MuiTextField-root": {
|
|
3859
|
-
"& label": { color: `${textColor}` },
|
|
3860
|
-
"& label.Mui-focused": {
|
|
3861
|
-
color: `${hoverColor}`
|
|
3862
|
-
},
|
|
3863
|
-
"& .MuiOutlinedInput-root": {
|
|
3864
|
-
"& fieldset": {
|
|
3865
|
-
borderColor: `${borderColor2}`
|
|
3866
|
-
},
|
|
3867
|
-
"&:hover fieldset": {
|
|
3868
|
-
borderColor: `${hoverColor}`
|
|
3869
|
-
},
|
|
3870
|
-
"&.Mui-focused fieldset": {
|
|
3871
|
-
borderColor: `${hoverColor}`
|
|
3872
|
-
}
|
|
3873
|
-
}
|
|
3874
|
-
}
|
|
3875
|
-
},
|
|
3876
|
-
label,
|
|
3877
|
-
onChange
|
|
3878
|
-
}
|
|
3879
|
-
),
|
|
3880
|
-
PopperComponent: CustomPopper
|
|
3881
|
-
}
|
|
3882
|
-
) });
|
|
3883
|
-
} else if (mode === "automatic" && iconPos === "start") {
|
|
3884
|
-
return /* @__PURE__ */ jsx8(Fragment4, { children: /* @__PURE__ */ jsx8(
|
|
3885
|
-
Autocomplete2,
|
|
3886
|
-
{
|
|
3887
|
-
id,
|
|
3888
|
-
filterOptions: (x) => x,
|
|
3889
|
-
loading: true,
|
|
3890
|
-
disableListWrap: true,
|
|
3891
|
-
freeSolo: true,
|
|
3892
|
-
onChange: (e, value) => {
|
|
3893
|
-
if (value !== null) {
|
|
3894
|
-
if (typeof value !== "string") {
|
|
3895
|
-
if (onSearchItemSelected) onSearchItemSelected(value);
|
|
3896
|
-
}
|
|
3897
|
-
}
|
|
3898
|
-
},
|
|
3899
|
-
disableCloseOnSelect: false,
|
|
3900
|
-
getOptionLabel: (options2) => {
|
|
3901
|
-
const returnVal = typeof options2 === "string" ? options2 : options2.title;
|
|
3902
|
-
return returnVal;
|
|
3903
|
-
},
|
|
3904
|
-
options,
|
|
3905
|
-
sx: {
|
|
3906
|
-
width: width2,
|
|
3907
|
-
"&.MuiAutocomplete-hasClearIcon .MuiOutlinedInput-root": {
|
|
3908
|
-
paddingRight: clearIconMarginRight ? clearIconMarginRight : "15px"
|
|
3909
|
-
}
|
|
3910
|
-
},
|
|
3911
|
-
renderOption: (props, results) => /* @__PURE__ */ createElement(ListItem, { ...props, key: results.id }, /* @__PURE__ */ jsx8(ListItemText, { primary: results.title, secondary: results.subtitle })),
|
|
3912
|
-
renderInput: (params) => /* @__PURE__ */ jsx8(
|
|
3913
|
-
TextField2,
|
|
3914
|
-
{
|
|
3915
|
-
placeholder,
|
|
3916
|
-
...params,
|
|
3917
|
-
size,
|
|
3918
|
-
InputProps: {
|
|
3919
|
-
...params.InputProps,
|
|
3920
|
-
style: { borderRadius: borderRadius2, color: textColor, backgroundColor: backgroundColor2, height: height2, fontSize },
|
|
3921
|
-
type: "search",
|
|
3922
|
-
endAdornment: null,
|
|
3923
|
-
startAdornment: /* @__PURE__ */ jsx8(InputAdornment, { position: "start", children: /* @__PURE__ */ jsx8(Icon, { sx: { color: textColor, paddingRight: "0px" }, children }) })
|
|
3924
|
-
},
|
|
3925
|
-
sx: {
|
|
3926
|
-
"& .MuiInputBase-root": {
|
|
3927
|
-
height: height2
|
|
3928
|
-
},
|
|
3929
|
-
"&.MuiTextField-root": {
|
|
3930
|
-
"& label": { color: `${textColor}` },
|
|
3931
|
-
"& label.Mui-focused": {
|
|
3932
|
-
color: `${hoverColor}`
|
|
3933
|
-
},
|
|
3934
|
-
"& .MuiOutlinedInput-root": {
|
|
3935
|
-
"& fieldset": {
|
|
3936
|
-
borderColor: `${borderColor2}`
|
|
3937
|
-
},
|
|
3938
|
-
"&:hover fieldset": {
|
|
3939
|
-
borderColor: `${hoverColor}`
|
|
3940
|
-
},
|
|
3941
|
-
"&.Mui-focused fieldset": {
|
|
3942
|
-
borderColor: `${hoverColor}`
|
|
3943
|
-
}
|
|
3944
|
-
}
|
|
3945
|
-
}
|
|
3946
|
-
},
|
|
3947
|
-
label,
|
|
3948
|
-
onChange
|
|
3949
|
-
}
|
|
3950
|
-
),
|
|
3951
|
-
PopperComponent: CustomPopper
|
|
3952
|
-
}
|
|
3953
|
-
) });
|
|
3954
|
-
} else if (mode === "manual" && iconPos === "end") {
|
|
3955
|
-
const textRef = useRef2();
|
|
3956
|
-
return /* @__PURE__ */ jsx8(Fragment4, { children: /* @__PURE__ */ jsx8(
|
|
3957
|
-
Autocomplete2,
|
|
3958
|
-
{
|
|
3959
|
-
id,
|
|
3960
|
-
filterOptions: (x) => x,
|
|
3961
|
-
loading: true,
|
|
3962
|
-
freeSolo: true,
|
|
3963
|
-
onChange: (e, value) => {
|
|
3964
|
-
if (value !== null) {
|
|
3965
|
-
if (typeof value !== "string") {
|
|
3966
|
-
if (onSearchItemSelected) onSearchItemSelected(value);
|
|
3967
|
-
}
|
|
3968
|
-
}
|
|
3969
|
-
},
|
|
3970
|
-
disableCloseOnSelect: false,
|
|
3971
|
-
getOptionLabel: (options2) => {
|
|
3972
|
-
const returnVal = typeof options2 === "string" ? options2 : options2.title;
|
|
3973
|
-
return returnVal;
|
|
3974
|
-
},
|
|
3975
|
-
options,
|
|
3976
|
-
sx: {
|
|
3977
|
-
width: width2,
|
|
3978
|
-
"&.MuiAutocomplete-hasClearIcon .MuiOutlinedInput-root": {
|
|
3979
|
-
paddingRight: clearIconMarginRight ? clearIconMarginRight : "50px"
|
|
3980
|
-
}
|
|
3981
|
-
},
|
|
3982
|
-
renderOption: (props, options2) => /* @__PURE__ */ createElement(ListItem, { ...props, key: options2.id }, /* @__PURE__ */ jsx8(ListItemText, { primary: options2.title, secondary: options2.subtitle })),
|
|
3983
|
-
renderInput: (params) => /* @__PURE__ */ jsx8(
|
|
3984
|
-
TextField2,
|
|
3985
|
-
{
|
|
3986
|
-
inputRef: textRef,
|
|
3987
|
-
placeholder,
|
|
3988
|
-
onKeyDown: (e) => {
|
|
3989
|
-
if (e.key === "Enter") {
|
|
3990
|
-
if (textRef.current && onEnter) {
|
|
3991
|
-
onEnter(textRef.current.value);
|
|
3992
|
-
}
|
|
3993
|
-
}
|
|
3994
|
-
},
|
|
3995
|
-
...params,
|
|
3996
|
-
size,
|
|
3997
|
-
InputProps: {
|
|
3998
|
-
...params.InputProps,
|
|
3999
|
-
style: { borderRadius: borderRadius2, color: textColor, fontSize },
|
|
4000
|
-
type: "search",
|
|
4001
|
-
endAdornment: /* @__PURE__ */ jsx8(AutocompleteCustomEndAdornment, { children: /* @__PURE__ */ jsx8(
|
|
4002
|
-
IconButton,
|
|
4003
|
-
{
|
|
4004
|
-
sx: { color: textColor },
|
|
4005
|
-
onClick: () => {
|
|
4006
|
-
if (textRef.current && onEnter) {
|
|
4007
|
-
onEnter(textRef.current.value);
|
|
4008
|
-
}
|
|
4009
|
-
},
|
|
4010
|
-
children
|
|
4011
|
-
}
|
|
4012
|
-
) })
|
|
4013
|
-
},
|
|
4014
|
-
sx: {
|
|
4015
|
-
"& .MuiInputBase-root": {
|
|
4016
|
-
height: height2
|
|
4017
|
-
},
|
|
4018
|
-
"&.MuiTextField-root": {
|
|
4019
|
-
"& label": { color: `${textColor}`, verticalAlign: "bottom" },
|
|
4020
|
-
"& label.Mui-focused": {
|
|
4021
|
-
color: `${hoverColor}`
|
|
4022
|
-
},
|
|
4023
|
-
"& .MuiOutlinedInput-root": {
|
|
4024
|
-
"& fieldset": {
|
|
4025
|
-
borderColor: `${borderColor2}`
|
|
4026
|
-
},
|
|
4027
|
-
"&:hover fieldset": {
|
|
4028
|
-
borderColor: `${hoverColor}`
|
|
4029
|
-
},
|
|
4030
|
-
"&.Mui-focused fieldset": {
|
|
4031
|
-
borderColor: `${hoverColor}`
|
|
4032
|
-
}
|
|
4033
|
-
}
|
|
4034
|
-
}
|
|
4035
|
-
},
|
|
4036
|
-
label
|
|
4037
|
-
}
|
|
4038
|
-
)
|
|
4039
|
-
}
|
|
4040
|
-
) });
|
|
4041
|
-
} else if (mode === "manual" && iconPos === "start") {
|
|
4042
|
-
const textRef = useRef2();
|
|
4043
|
-
return /* @__PURE__ */ jsx8(Fragment4, { children: /* @__PURE__ */ jsx8(
|
|
4044
|
-
Autocomplete2,
|
|
4045
|
-
{
|
|
4046
|
-
id,
|
|
4047
|
-
filterOptions: (x) => x,
|
|
4048
|
-
loading: true,
|
|
4049
|
-
freeSolo: true,
|
|
4050
|
-
onChange: (e, value) => {
|
|
4051
|
-
if (value !== null) {
|
|
4052
|
-
if (typeof value !== "string") {
|
|
4053
|
-
if (onSearchItemSelected) onSearchItemSelected(value);
|
|
4054
|
-
}
|
|
4055
|
-
}
|
|
4056
|
-
},
|
|
4057
|
-
disableCloseOnSelect: false,
|
|
4058
|
-
getOptionLabel: (options2) => {
|
|
4059
|
-
const returnVal = typeof options2 === "string" ? options2 : options2.title;
|
|
4060
|
-
return returnVal;
|
|
4061
|
-
},
|
|
4062
|
-
options,
|
|
4063
|
-
sx: {
|
|
4064
|
-
width: width2,
|
|
4065
|
-
"&.MuiAutocomplete-hasClearIcon .MuiOutlinedInput-root": {
|
|
4066
|
-
paddingRight: clearIconMarginRight ? clearIconMarginRight : "15px"
|
|
4067
|
-
}
|
|
4068
|
-
},
|
|
4069
|
-
renderOption: (props, options2) => /* @__PURE__ */ createElement(ListItem, { ...props, key: options2.id }, /* @__PURE__ */ jsx8(ListItemText, { primary: options2.title, secondary: options2.subtitle })),
|
|
4070
|
-
renderInput: (params) => /* @__PURE__ */ jsx8(
|
|
4071
|
-
TextField2,
|
|
4072
|
-
{
|
|
4073
|
-
inputRef: textRef,
|
|
4074
|
-
placeholder,
|
|
4075
|
-
onKeyDown: (e) => {
|
|
4076
|
-
if (e.key === "Enter") {
|
|
4077
|
-
if (textRef.current && onEnter) {
|
|
4078
|
-
onEnter(textRef.current.value);
|
|
4079
|
-
}
|
|
4080
|
-
}
|
|
4081
|
-
},
|
|
4082
|
-
...params,
|
|
4083
|
-
size,
|
|
4084
|
-
InputProps: {
|
|
4085
|
-
...params.InputProps,
|
|
4086
|
-
style: { borderRadius: borderRadius2, color: textColor, fontSize },
|
|
4087
|
-
type: "search",
|
|
4088
|
-
endAdornment: null,
|
|
4089
|
-
startAdornment: /* @__PURE__ */ jsx8(InputAdornment, { position: "start", children: /* @__PURE__ */ jsx8(
|
|
4090
|
-
IconButton,
|
|
4091
|
-
{
|
|
4092
|
-
sx: { color: textColor, paddingRight: "0px" },
|
|
4093
|
-
onClick: () => {
|
|
4094
|
-
if (textRef.current && onEnter) {
|
|
4095
|
-
onEnter(textRef.current.value);
|
|
4096
|
-
}
|
|
4097
|
-
},
|
|
4098
|
-
children
|
|
4099
|
-
}
|
|
4100
|
-
) })
|
|
4101
|
-
},
|
|
4102
|
-
sx: {
|
|
4103
|
-
"& .MuiInputBase-root": {
|
|
4104
|
-
height: height2
|
|
4105
|
-
},
|
|
4106
|
-
"&.MuiTextField-root": {
|
|
4107
|
-
"& label": { color: `${textColor}`, verticalAlign: "bottom" },
|
|
4108
|
-
"& label.Mui-focused": {
|
|
4109
|
-
color: `${hoverColor}`
|
|
4110
|
-
},
|
|
4111
|
-
"& .MuiOutlinedInput-root": {
|
|
4112
|
-
"& fieldset": {
|
|
4113
|
-
borderColor: `${borderColor2}`
|
|
4114
|
-
},
|
|
4115
|
-
"&:hover fieldset": {
|
|
4116
|
-
borderColor: `${hoverColor}`
|
|
4117
|
-
},
|
|
4118
|
-
"&.Mui-focused fieldset": {
|
|
4119
|
-
borderColor: `${hoverColor}`
|
|
4120
|
-
}
|
|
4121
|
-
}
|
|
4122
|
-
}
|
|
4123
|
-
},
|
|
4124
|
-
label
|
|
4125
|
-
}
|
|
4126
|
-
)
|
|
4127
|
-
}
|
|
4128
|
-
) });
|
|
4129
|
-
}
|
|
4130
|
-
} else if (type === "text-box") {
|
|
4131
|
-
if (mode === "automatic") {
|
|
4132
|
-
return /* @__PURE__ */ jsx8(Fragment4, { children: /* @__PURE__ */ jsx8(
|
|
4133
|
-
Autocomplete2,
|
|
4134
|
-
{
|
|
4135
|
-
id,
|
|
4136
|
-
filterOptions: (x) => x,
|
|
4137
|
-
loading: true,
|
|
4138
|
-
disableListWrap: true,
|
|
4139
|
-
freeSolo: true,
|
|
4140
|
-
disableClearable: true,
|
|
4141
|
-
onChange: (e, value) => {
|
|
4142
|
-
if (value !== null) {
|
|
4143
|
-
if (typeof value !== "string") {
|
|
4144
|
-
if (onSearchItemSelected) onSearchItemSelected(value);
|
|
4145
|
-
}
|
|
4146
|
-
}
|
|
4147
|
-
},
|
|
4148
|
-
disableCloseOnSelect: false,
|
|
4149
|
-
getOptionLabel: (options2) => {
|
|
4150
|
-
const returnVal = typeof options2 === "string" ? options2 : options2.title;
|
|
4151
|
-
return returnVal;
|
|
4152
|
-
},
|
|
4153
|
-
options,
|
|
4154
|
-
sx: {
|
|
4155
|
-
width: width2,
|
|
4156
|
-
"&.MuiAutocomplete-hasClearIcon .MuiOutlinedInput-root": {
|
|
4157
|
-
paddingRight: clearIconMarginRight ? clearIconMarginRight : "15px"
|
|
4158
|
-
}
|
|
4159
|
-
},
|
|
4160
|
-
renderOption: (props, results) => /* @__PURE__ */ createElement(ListItem, { ...props, key: results.id }, /* @__PURE__ */ jsx8(ListItemText, { primary: results.title, secondary: results.subtitle })),
|
|
4161
|
-
renderInput: (params) => /* @__PURE__ */ jsx8(
|
|
4162
|
-
TextField2,
|
|
4163
|
-
{
|
|
4164
|
-
placeholder,
|
|
4165
|
-
...params,
|
|
4166
|
-
size,
|
|
4167
|
-
InputProps: {
|
|
4168
|
-
...params.InputProps,
|
|
4169
|
-
style: { borderRadius: borderRadius2, color: textColor, backgroundColor: backgroundColor2, height: height2, fontSize },
|
|
4170
|
-
type: "search"
|
|
4171
|
-
},
|
|
4172
|
-
sx: {
|
|
4173
|
-
"& .MuiInputBase-root": {
|
|
4174
|
-
height: height2
|
|
4175
|
-
},
|
|
4176
|
-
"& .MuiAutocomplete-endAdornment": {
|
|
4177
|
-
display: "none"
|
|
4178
|
-
},
|
|
4179
|
-
"&.MuiTextField-root": {
|
|
4180
|
-
"& label": { color: `${textColor}` },
|
|
4181
|
-
"& label.Mui-focused": {
|
|
4182
|
-
color: `${hoverColor}`
|
|
4183
|
-
},
|
|
4184
|
-
"& .MuiOutlinedInput-root": {
|
|
4185
|
-
"& fieldset": {
|
|
4186
|
-
borderColor: `${borderColor2}`
|
|
4187
|
-
},
|
|
4188
|
-
"&:hover fieldset": {
|
|
4189
|
-
borderColor: `${hoverColor}`
|
|
4190
|
-
},
|
|
4191
|
-
"&.Mui-focused fieldset": {
|
|
4192
|
-
borderColor: `${hoverColor}`
|
|
4193
|
-
}
|
|
4194
|
-
}
|
|
4195
|
-
}
|
|
4196
|
-
},
|
|
4197
|
-
label,
|
|
4198
|
-
onChange
|
|
4199
|
-
}
|
|
4200
|
-
),
|
|
4201
|
-
PopperComponent: CustomPopper
|
|
4202
|
-
}
|
|
4203
|
-
) });
|
|
4204
|
-
} else if (mode === "manual") {
|
|
4205
|
-
const textRef = useRef2();
|
|
4206
|
-
return /* @__PURE__ */ jsx8(Fragment4, { children: /* @__PURE__ */ jsx8(
|
|
4207
|
-
Autocomplete2,
|
|
4208
|
-
{
|
|
4209
|
-
id,
|
|
4210
|
-
filterOptions: (x) => x,
|
|
4211
|
-
loading: true,
|
|
4212
|
-
freeSolo: true,
|
|
4213
|
-
onChange: (e, value) => {
|
|
4214
|
-
if (value !== null) {
|
|
4215
|
-
if (typeof value !== "string") {
|
|
4216
|
-
if (onSearchItemSelected) onSearchItemSelected(value);
|
|
4217
|
-
}
|
|
4218
|
-
}
|
|
4219
|
-
},
|
|
4220
|
-
disableCloseOnSelect: false,
|
|
4221
|
-
getOptionLabel: (options2) => {
|
|
4222
|
-
const returnVal = typeof options2 === "string" ? options2 : options2.title;
|
|
4223
|
-
return returnVal;
|
|
4224
|
-
},
|
|
4225
|
-
options,
|
|
4226
|
-
sx: {
|
|
4227
|
-
width: width2,
|
|
4228
|
-
"&.MuiAutocomplete-hasClearIcon .MuiOutlinedInput-root": {
|
|
4229
|
-
paddingRight: clearIconMarginRight ? clearIconMarginRight : "15px"
|
|
4230
|
-
}
|
|
4231
|
-
},
|
|
4232
|
-
renderOption: (props, options2) => /* @__PURE__ */ createElement(ListItem, { ...props, key: options2.id }, /* @__PURE__ */ jsx8(ListItemText, { primary: options2.title, secondary: options2.subtitle })),
|
|
4233
|
-
renderInput: (params) => /* @__PURE__ */ jsx8(
|
|
4234
|
-
TextField2,
|
|
4235
|
-
{
|
|
4236
|
-
placeholder,
|
|
4237
|
-
inputRef: textRef,
|
|
4238
|
-
onKeyDown: (e) => {
|
|
4239
|
-
if (e.key === "Enter") {
|
|
4240
|
-
if (textRef.current && onEnter) {
|
|
4241
|
-
onEnter(textRef.current.value);
|
|
4242
|
-
}
|
|
4243
|
-
}
|
|
4244
|
-
},
|
|
4245
|
-
...params,
|
|
4246
|
-
size,
|
|
4247
|
-
InputProps: {
|
|
4248
|
-
...params.InputProps,
|
|
4249
|
-
endAdornment: null,
|
|
4250
|
-
style: { borderRadius: borderRadius2, color: textColor, fontSize },
|
|
4251
|
-
type: "search"
|
|
4252
|
-
},
|
|
4253
|
-
sx: {
|
|
4254
|
-
"& .MuiInputBase-root": {
|
|
4255
|
-
height: height2
|
|
4256
|
-
},
|
|
4257
|
-
"&.MuiTextField-root": {
|
|
4258
|
-
"& label": { color: `${textColor}`, verticalAlign: "bottom" },
|
|
4259
|
-
"& label.Mui-focused": {
|
|
4260
|
-
color: `${hoverColor}`
|
|
4261
|
-
},
|
|
4262
|
-
"& .MuiOutlinedInput-root": {
|
|
4263
|
-
"& fieldset": {
|
|
4264
|
-
borderColor: `${borderColor2}`
|
|
4265
|
-
},
|
|
4266
|
-
"&:hover fieldset": {
|
|
4267
|
-
borderColor: `${hoverColor}`
|
|
4268
|
-
},
|
|
4269
|
-
"&.Mui-focused fieldset": {
|
|
4270
|
-
borderColor: `${hoverColor}`
|
|
4271
|
-
}
|
|
4272
|
-
}
|
|
4273
|
-
}
|
|
4274
|
-
},
|
|
4275
|
-
label
|
|
4276
|
-
}
|
|
4277
|
-
)
|
|
4278
|
-
}
|
|
4279
|
-
) });
|
|
3743
|
+
iconPos,
|
|
3744
|
+
hoverColor,
|
|
3745
|
+
options,
|
|
3746
|
+
placeholder,
|
|
3747
|
+
placeholderColor,
|
|
3748
|
+
placeholderFont,
|
|
3749
|
+
inputColor,
|
|
3750
|
+
inputFont,
|
|
3751
|
+
...rest
|
|
3752
|
+
// This rest operator includes className, style, onClick, etc.
|
|
3753
|
+
}) => {
|
|
3754
|
+
const ref = useRef2(null);
|
|
3755
|
+
const syncAttribute = (attribute, value) => {
|
|
3756
|
+
const el = ref.current;
|
|
3757
|
+
if (!el) return;
|
|
3758
|
+
if (value !== void 0) {
|
|
3759
|
+
el.setAttribute(attribute, value);
|
|
3760
|
+
} else {
|
|
3761
|
+
el.removeAttribute(attribute);
|
|
4280
3762
|
}
|
|
4281
|
-
}
|
|
4282
|
-
|
|
4283
|
-
|
|
3763
|
+
};
|
|
3764
|
+
useEffect2(() => {
|
|
3765
|
+
const el = ref.current;
|
|
3766
|
+
if (!el) return;
|
|
3767
|
+
el.customStyles = customStyle2;
|
|
3768
|
+
syncAttribute("width", width2);
|
|
3769
|
+
syncAttribute("mode", mode);
|
|
3770
|
+
syncAttribute("font-size", fontSize);
|
|
3771
|
+
syncAttribute("height", height2);
|
|
3772
|
+
syncAttribute("border-width", borderWidth);
|
|
3773
|
+
syncAttribute("border-radius", borderRadius2);
|
|
3774
|
+
syncAttribute("border-color", borderColor2);
|
|
3775
|
+
syncAttribute("background-color", backgroundColor2);
|
|
3776
|
+
syncAttribute("hover-color", hoverColor);
|
|
3777
|
+
syncAttribute("options", options);
|
|
3778
|
+
syncAttribute("icon-pos", iconPos);
|
|
3779
|
+
syncAttribute("placeholder", placeholder);
|
|
3780
|
+
syncAttribute("placeholder-color", placeholderColor);
|
|
3781
|
+
syncAttribute("placeholder-font", placeholderFont);
|
|
3782
|
+
syncAttribute("input-color", inputColor);
|
|
3783
|
+
syncAttribute("input-font", inputFont);
|
|
3784
|
+
}, [
|
|
3785
|
+
customStyle2,
|
|
3786
|
+
width2,
|
|
3787
|
+
mode,
|
|
3788
|
+
fontSize,
|
|
3789
|
+
height2,
|
|
3790
|
+
borderWidth,
|
|
3791
|
+
borderRadius2,
|
|
3792
|
+
borderColor2,
|
|
3793
|
+
backgroundColor2,
|
|
3794
|
+
iconPos,
|
|
3795
|
+
hoverColor,
|
|
3796
|
+
options,
|
|
3797
|
+
placeholder,
|
|
3798
|
+
placeholderColor,
|
|
3799
|
+
placeholderFont,
|
|
3800
|
+
inputColor,
|
|
3801
|
+
inputFont
|
|
3802
|
+
]);
|
|
3803
|
+
return /* @__PURE__ */ jsx8("wavelength-search", { ref, ...rest });
|
|
3804
|
+
};
|
|
4284
3805
|
WavelengthSearch.displayName = "WavelengthSearch";
|
|
4285
3806
|
|
|
4286
3807
|
// src/components/search/WavelengthSearchTextField.tsx
|
|
4287
|
-
import
|
|
4288
|
-
import
|
|
3808
|
+
import styled4 from "@emotion/styled";
|
|
3809
|
+
import TextField2 from "@mui/material/TextField";
|
|
4289
3810
|
import { jsx as jsx9 } from "react/jsx-runtime";
|
|
4290
3811
|
function WavelengthSearchTextField() {
|
|
4291
3812
|
const palette2 = getPalette();
|
|
4292
|
-
const WavelengthSearchTextField2 =
|
|
3813
|
+
const WavelengthSearchTextField2 = styled4(TextField2)(() => ({
|
|
4293
3814
|
"&.MuiTextField-root": {
|
|
4294
3815
|
"& label.Mui-focused": {
|
|
4295
3816
|
color: `${palette2.primary}`
|
|
@@ -4312,7 +3833,7 @@ function WavelengthSearchTextField() {
|
|
|
4312
3833
|
WavelengthSearchTextField.displayName = "WavelengthSearchTextField";
|
|
4313
3834
|
|
|
4314
3835
|
// src/components/logos/applogo/WavelengthAppLogo.tsx
|
|
4315
|
-
import { Fragment as
|
|
3836
|
+
import { Fragment as Fragment4, jsx as jsx10, jsxs as jsxs5 } from "react/jsx-runtime";
|
|
4316
3837
|
function WavelengthAppLogo({ width: width2, height: height2, name = "", grayscale, id }) {
|
|
4317
3838
|
let logo;
|
|
4318
3839
|
{
|
|
@@ -4749,7 +4270,7 @@ function WavelengthAppLogo({ width: width2, height: height2, name = "", grayscal
|
|
|
4749
4270
|
] }) })
|
|
4750
4271
|
] });
|
|
4751
4272
|
} else {
|
|
4752
|
-
logo = /* @__PURE__ */ jsxs5(
|
|
4273
|
+
logo = /* @__PURE__ */ jsxs5(Fragment4, { children: [
|
|
4753
4274
|
"AIR ",
|
|
4754
4275
|
/* @__PURE__ */ jsx10("br", {}),
|
|
4755
4276
|
" FORCE"
|
|
@@ -4761,13 +4282,13 @@ WavelengthAppLogo.displayName = "WavelengthAppLogo";
|
|
|
4761
4282
|
var WavelengthAppLogo_default = WavelengthAppLogo;
|
|
4762
4283
|
|
|
4763
4284
|
// src/components/PageComponents/WavelengthNotAvailablePage.tsx
|
|
4764
|
-
import { Fragment as
|
|
4285
|
+
import { Fragment as Fragment5, jsx as jsx11, jsxs as jsxs6 } from "react/jsx-runtime";
|
|
4765
4286
|
function WavelengthNotAvailablePage({ WavelengthAppLogoName, errorMessage, backgroundColor: backgroundColor2, buttonText, redirectLink, buttonColorOne, buttonColorTwo, id }) {
|
|
4766
4287
|
backgroundColor2 = backgroundColor2 ? backgroundColor2 : "gray";
|
|
4767
4288
|
WavelengthAppLogoName = WavelengthAppLogoName ? WavelengthAppLogoName : "563rdpatch";
|
|
4768
4289
|
buttonColorOne = buttonColorOne ? buttonColorOne : "white";
|
|
4769
4290
|
buttonColorTwo = buttonColorTwo ? buttonColorTwo : "#0D5288";
|
|
4770
|
-
return /* @__PURE__ */ jsx11(
|
|
4291
|
+
return /* @__PURE__ */ jsx11(Fragment5, { children: /* @__PURE__ */ jsxs6("div", { id, style: { display: "flex", backgroundColor: backgroundColor2, flexDirection: "column", alignItems: "center", height: "100%", justifyContent: "center", gap: 55, padding: "8%" }, children: [
|
|
4771
4292
|
/* @__PURE__ */ jsx11(WavelengthAppLogo_default, { name: WavelengthAppLogoName, width: 300, height: 200, grayscale: true }),
|
|
4772
4293
|
/* @__PURE__ */ jsxs6("div", { style: { display: "flex", flexDirection: "column", alignItems: "center" }, children: [
|
|
4773
4294
|
/* @__PURE__ */ jsx11("p", { style: { textAlign: "center", marginBottom: 45, fontSize: 40, color: "white" }, children: `${errorMessage}` }),
|
|
@@ -4778,10 +4299,10 @@ function WavelengthNotAvailablePage({ WavelengthAppLogoName, errorMessage, backg
|
|
|
4778
4299
|
WavelengthNotAvailablePage.displayName = "WavelengthNotAvailablePage";
|
|
4779
4300
|
|
|
4780
4301
|
// src/components/PageComponents/WavelengthSideBar.tsx
|
|
4781
|
-
import
|
|
4302
|
+
import React5, { useState as useState2 } from "react";
|
|
4782
4303
|
import { useNavigate } from "react-router-dom";
|
|
4783
4304
|
import { KeyboardArrowDownRounded, KeyboardArrowRightRounded } from "@mui/icons-material";
|
|
4784
|
-
import
|
|
4305
|
+
import ListItem from "@mui/material/ListItem";
|
|
4785
4306
|
import Typography from "@mui/material/Typography";
|
|
4786
4307
|
import Collapse from "@mui/material/Collapse";
|
|
4787
4308
|
import List from "@mui/material/List";
|
|
@@ -4814,12 +4335,12 @@ function WavelengthSideBar({ sections, txtColor, bgColor, labelColor, arrowColor
|
|
|
4814
4335
|
borderRadius: "12px",
|
|
4815
4336
|
position: "relative"
|
|
4816
4337
|
},
|
|
4817
|
-
children: /* @__PURE__ */ jsx12(List, { component: "nav", children: sections.map((section, index) => /* @__PURE__ */ jsxs7(
|
|
4818
|
-
/* @__PURE__ */ jsxs7(
|
|
4338
|
+
children: /* @__PURE__ */ jsx12(List, { component: "nav", children: sections.map((section, index) => /* @__PURE__ */ jsxs7(React5.Fragment, { children: [
|
|
4339
|
+
/* @__PURE__ */ jsxs7(ListItem, { button: true, onClick: () => handleToggle(section.title), sx: { flexDirection: "row", alignItems: "center", paddingX: 0.75, paddingY: 0.5 }, children: [
|
|
4819
4340
|
openSections[section.title] ? /* @__PURE__ */ jsx12(KeyboardArrowDownRounded, { sx: { color: arrowColor ? arrowColor : palette2.secondary } }) : /* @__PURE__ */ jsx12(KeyboardArrowRightRounded, { sx: { color: arrowColor ? arrowColor : palette2.secondary } }),
|
|
4820
4341
|
/* @__PURE__ */ jsx12(Typography, { variant: "h6", sx: { fontSize: 16, color: txtColor ? txtColor : palette2.secondary }, children: section.title })
|
|
4821
4342
|
] }),
|
|
4822
|
-
section.subsections?.length && /* @__PURE__ */ jsx12(Collapse, { in: openSections[section.title], timeout: "auto", unmountOnExit: true, children: /* @__PURE__ */ jsx12(List, { component: "div", disablePadding: true, sx: { paddingLeft: 4 }, children: section.subsections.map((subsection, subIndex) => /* @__PURE__ */ jsxs7(
|
|
4343
|
+
section.subsections?.length && /* @__PURE__ */ jsx12(Collapse, { in: openSections[section.title], timeout: "auto", unmountOnExit: true, children: /* @__PURE__ */ jsx12(List, { component: "div", disablePadding: true, sx: { paddingLeft: 4 }, children: section.subsections.map((subsection, subIndex) => /* @__PURE__ */ jsxs7(React5.Fragment, { children: [
|
|
4823
4344
|
/* @__PURE__ */ jsx12(
|
|
4824
4345
|
Typography,
|
|
4825
4346
|
{
|
|
@@ -4834,7 +4355,7 @@ function WavelengthSideBar({ sections, txtColor, bgColor, labelColor, arrowColor
|
|
|
4834
4355
|
}
|
|
4835
4356
|
),
|
|
4836
4357
|
subsection.items && subsection.items.map((item, itemIndex) => /* @__PURE__ */ jsx12(
|
|
4837
|
-
|
|
4358
|
+
ListItem,
|
|
4838
4359
|
{
|
|
4839
4360
|
button: true,
|
|
4840
4361
|
onClick: item.path ? () => navigate(item.path) : item.onClick,
|
|
@@ -4851,12 +4372,12 @@ function WavelengthSideBar({ sections, txtColor, bgColor, labelColor, arrowColor
|
|
|
4851
4372
|
WavelengthSideBar.displayName = "WavelengthSideBar";
|
|
4852
4373
|
|
|
4853
4374
|
// src/components/PageComponents/WavelengthNavBar.tsx
|
|
4854
|
-
import { useRef as useRef3, useEffect as
|
|
4375
|
+
import { useRef as useRef3, useEffect as useEffect3 } from "react";
|
|
4855
4376
|
import "@wavelengthusaf/web-components";
|
|
4856
4377
|
import { jsx as jsx13 } from "react/jsx-runtime";
|
|
4857
4378
|
var WavelengthNavBar = ({ items, bgColor, txtColor, hoverColor, height: height2, padding: padding2, children, ...rest }) => {
|
|
4858
4379
|
const ref = useRef3(null);
|
|
4859
|
-
|
|
4380
|
+
useEffect3(() => {
|
|
4860
4381
|
const el = ref.current;
|
|
4861
4382
|
if (!el) return;
|
|
4862
4383
|
if (items) el.setAttribute("items", JSON.stringify(items));
|
|
@@ -4870,7 +4391,7 @@ var WavelengthNavBar = ({ items, bgColor, txtColor, hoverColor, height: height2,
|
|
|
4870
4391
|
};
|
|
4871
4392
|
|
|
4872
4393
|
// src/components/FileDropZone/WavelengthFileDropZone.tsx
|
|
4873
|
-
import { useEffect as
|
|
4394
|
+
import { useEffect as useEffect4, useRef as useRef4 } from "react";
|
|
4874
4395
|
import "@wavelengthusaf/web-components";
|
|
4875
4396
|
import { jsx as jsx14 } from "react/jsx-runtime";
|
|
4876
4397
|
var WavelengthFileDropZone = ({
|
|
@@ -4920,7 +4441,7 @@ var WavelengthFileDropZone = ({
|
|
|
4920
4441
|
...rest
|
|
4921
4442
|
}) => {
|
|
4922
4443
|
const ref = useRef4(null);
|
|
4923
|
-
|
|
4444
|
+
useEffect4(() => {
|
|
4924
4445
|
const el = ref.current;
|
|
4925
4446
|
if (!el) return;
|
|
4926
4447
|
if (acceptedTypes !== void 0) el.setAttribute("accepted-types", acceptedTypes);
|
|
@@ -4984,7 +4505,7 @@ var WavelengthFileDropZone = ({
|
|
|
4984
4505
|
};
|
|
4985
4506
|
|
|
4986
4507
|
// src/components/SnackBar/WavelengthWebSnackbar.tsx
|
|
4987
|
-
import { useEffect as
|
|
4508
|
+
import { useEffect as useEffect5, useRef as useRef5 } from "react";
|
|
4988
4509
|
import "@wavelengthusaf/web-components";
|
|
4989
4510
|
import { jsx as jsx15 } from "react/jsx-runtime";
|
|
4990
4511
|
var WavelengthWebSnackbar = ({
|
|
@@ -5004,7 +4525,7 @@ var WavelengthWebSnackbar = ({
|
|
|
5004
4525
|
...rest
|
|
5005
4526
|
}) => {
|
|
5006
4527
|
const ref = useRef5(null);
|
|
5007
|
-
|
|
4528
|
+
useEffect5(() => {
|
|
5008
4529
|
const el = ref.current;
|
|
5009
4530
|
if (!el) return;
|
|
5010
4531
|
if (message) {
|
|
@@ -5034,12 +4555,12 @@ var WavelengthWebSnackbar = ({
|
|
|
5034
4555
|
};
|
|
5035
4556
|
|
|
5036
4557
|
// src/components/PageComponents/WavelengthSpinningLogo.tsx
|
|
5037
|
-
import { Fragment as
|
|
4558
|
+
import { Fragment as Fragment6, jsx as jsx16, jsxs as jsxs8 } from "react/jsx-runtime";
|
|
5038
4559
|
function WavelengthSpinningOuterCircle({ size, id, clip, color: color2, gradient, radius }) {
|
|
5039
4560
|
const clip_path = {
|
|
5040
4561
|
third: /* @__PURE__ */ jsx16("clipPath", { id: "clipThird", children: /* @__PURE__ */ jsx16("rect", { x: "0%", y: "0%", width: "60%", height: "50%" }) })
|
|
5041
4562
|
};
|
|
5042
|
-
let svg_color = /* @__PURE__ */ jsx16(
|
|
4563
|
+
let svg_color = /* @__PURE__ */ jsx16(Fragment6, {});
|
|
5043
4564
|
if (gradient && color2 === "blue") {
|
|
5044
4565
|
svg_color = /* @__PURE__ */ jsxs8("linearGradient", { id: `${id}-color`, x1: "0%", y1: "0%", x2: "100%", y2: "0%", children: [
|
|
5045
4566
|
/* @__PURE__ */ jsx16("stop", { offset: "0%", style: { stopColor: "#24AEDF", stopOpacity: 1 } }),
|
|
@@ -5087,9 +4608,9 @@ WavelengthSpinningOuterCircle.displayName = "WavelengthSpinningOuterCircle";
|
|
|
5087
4608
|
var WavelengthSpinningLogo_default = WavelengthSpinningOuterCircle;
|
|
5088
4609
|
|
|
5089
4610
|
// src/components/PageComponents/WavelengthSpinningLogoComponent.tsx
|
|
5090
|
-
import { Fragment as
|
|
4611
|
+
import { Fragment as Fragment7, jsx as jsx17, jsxs as jsxs9 } from "react/jsx-runtime";
|
|
5091
4612
|
function WavelengthSpinningLogo({ svg = /* @__PURE__ */ jsx17("span", { children: "SVG Goes Here" }), size = 200, id = "loading" }) {
|
|
5092
|
-
const loadingSymbol = /* @__PURE__ */ jsx17(
|
|
4613
|
+
const loadingSymbol = /* @__PURE__ */ jsx17(Fragment7, { children: /* @__PURE__ */ jsxs9(
|
|
5093
4614
|
"div",
|
|
5094
4615
|
{
|
|
5095
4616
|
id,
|
|
@@ -5198,12 +4719,12 @@ function WavelengthDragAndDrop({
|
|
|
5198
4719
|
WavelengthDragAndDrop.displayName = "WavelengthDragAndDrop";
|
|
5199
4720
|
|
|
5200
4721
|
// src/components/PageComponents/WavelengthProgressBar.tsx
|
|
5201
|
-
import { useRef as useRef6, useEffect as
|
|
4722
|
+
import { useRef as useRef6, useEffect as useEffect6 } from "react";
|
|
5202
4723
|
import "@wavelengthusaf/web-components";
|
|
5203
4724
|
import { jsx as jsx19 } from "react/jsx-runtime";
|
|
5204
4725
|
var WavelengthProgressBar = ({ name, id, value, width: width2, height: height2, fontSize, fontColor, progressBorder, progressColor, ...rest }) => {
|
|
5205
4726
|
const ref = useRef6(null);
|
|
5206
|
-
|
|
4727
|
+
useEffect6(() => {
|
|
5207
4728
|
if (ref.current) {
|
|
5208
4729
|
if (name !== void 0) ref.current.setAttribute("name", name);
|
|
5209
4730
|
if (id !== void 0) ref.current.setAttribute("id", id);
|
|
@@ -5227,7 +4748,7 @@ import { WavelengthProgressBar as WavelengthProgressBar2 } from "@wavelengthusaf
|
|
|
5227
4748
|
import { useState as useState3 } from "react";
|
|
5228
4749
|
import CheckCircleOutlineIcon from "@mui/icons-material/CheckCircleOutline";
|
|
5229
4750
|
import CheckCircleIcon from "@mui/icons-material/CheckCircle";
|
|
5230
|
-
import { IconButton
|
|
4751
|
+
import { IconButton } from "@mui/material";
|
|
5231
4752
|
import { jsx as jsx20, jsxs as jsxs11 } from "react/jsx-runtime";
|
|
5232
4753
|
function WavelengthCommentDisplay(props) {
|
|
5233
4754
|
const [selected, setSelected] = useState3(false);
|
|
@@ -5252,7 +4773,7 @@ function WavelengthCommentDisplay(props) {
|
|
|
5252
4773
|
/* @__PURE__ */ jsxs11("div", { style: { fontSize: "14px", fontWeight: 600, display: "flex", flexDirection: "row", justifyContent: "space-between", alignItems: "center", padding: 0 }, children: [
|
|
5253
4774
|
props.author,
|
|
5254
4775
|
!selected && /* @__PURE__ */ jsx20(
|
|
5255
|
-
|
|
4776
|
+
IconButton,
|
|
5256
4777
|
{
|
|
5257
4778
|
onClick: (e) => {
|
|
5258
4779
|
setSelected(!selected);
|
|
@@ -5263,7 +4784,7 @@ function WavelengthCommentDisplay(props) {
|
|
|
5263
4784
|
}
|
|
5264
4785
|
),
|
|
5265
4786
|
selected && /* @__PURE__ */ jsx20(
|
|
5266
|
-
|
|
4787
|
+
IconButton,
|
|
5267
4788
|
{
|
|
5268
4789
|
onClick: (e) => {
|
|
5269
4790
|
setSelected(!selected);
|
|
@@ -5283,7 +4804,7 @@ function WavelengthCommentDisplay(props) {
|
|
|
5283
4804
|
WavelengthCommentDisplay.displayName = "WavelengthCommentDisplay";
|
|
5284
4805
|
|
|
5285
4806
|
// src/components/PageComponents/WavelengthPermissionAlert.tsx
|
|
5286
|
-
import { Fragment as
|
|
4807
|
+
import { Fragment as Fragment8, jsx as jsx21, jsxs as jsxs12 } from "react/jsx-runtime";
|
|
5287
4808
|
function WavelengthPermissionAlert({
|
|
5288
4809
|
dataTestId,
|
|
5289
4810
|
height: height2 = "112px",
|
|
@@ -5297,7 +4818,7 @@ function WavelengthPermissionAlert({
|
|
|
5297
4818
|
unit = "No Unit",
|
|
5298
4819
|
id
|
|
5299
4820
|
}) {
|
|
5300
|
-
return /* @__PURE__ */ jsx21(
|
|
4821
|
+
return /* @__PURE__ */ jsx21(Fragment8, { children: /* @__PURE__ */ jsxs12(
|
|
5301
4822
|
"div",
|
|
5302
4823
|
{
|
|
5303
4824
|
id,
|
|
@@ -5487,7 +5008,7 @@ WavelengthAccessAlert.displayName = "WavelengthAccessAlert";
|
|
|
5487
5008
|
|
|
5488
5009
|
// src/components/PageComponents/WavelengthAlert.tsx
|
|
5489
5010
|
import Close from "@mui/icons-material/Close";
|
|
5490
|
-
import { IconButton as
|
|
5011
|
+
import { IconButton as IconButton2, SvgIcon } from "@mui/material";
|
|
5491
5012
|
import NotificationsIcon from "@mui/icons-material/Notifications";
|
|
5492
5013
|
import { jsx as jsx23, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
5493
5014
|
function WavelengthAlert({
|
|
@@ -5556,7 +5077,7 @@ function WavelengthAlert({
|
|
|
5556
5077
|
}
|
|
5557
5078
|
)
|
|
5558
5079
|
] }),
|
|
5559
|
-
onClose && /* @__PURE__ */ jsx23(
|
|
5080
|
+
onClose && /* @__PURE__ */ jsx23(IconButton2, { sx: { padding: "0px", width: "20px" }, onClick: onClose, children: /* @__PURE__ */ jsx23(Close, {}) })
|
|
5560
5081
|
] });
|
|
5561
5082
|
} else if (variant === "basic") {
|
|
5562
5083
|
return /* @__PURE__ */ jsxs14("div", { role: "alert", id, "data-testid": datatestid, style: baseContainerStyle, children: [
|
|
@@ -5566,7 +5087,7 @@ function WavelengthAlert({
|
|
|
5566
5087
|
/* @__PURE__ */ jsx23("div", { style: { fontSize: "16px", fontWeight: 550, lineHeight: "24px" }, children: alertType }),
|
|
5567
5088
|
/* @__PURE__ */ jsx23("div", { style: { fontSize: "14px", lineHeight: "20px", fontWeight: 400 }, children: appName })
|
|
5568
5089
|
] }),
|
|
5569
|
-
onClose && /* @__PURE__ */ jsx23(
|
|
5090
|
+
onClose && /* @__PURE__ */ jsx23(IconButton2, { sx: { padding: "0px", width: "20px" }, onClick: onClose, children: /* @__PURE__ */ jsx23(Close, {}) })
|
|
5570
5091
|
] });
|
|
5571
5092
|
} else {
|
|
5572
5093
|
return /* @__PURE__ */ jsxs14("div", { role: "alert", id, "data-testid": datatestid, style: baseContainerStyle, children: [
|
|
@@ -5589,7 +5110,7 @@ function WavelengthAlert({
|
|
|
5589
5110
|
},
|
|
5590
5111
|
className: "icon-btn-container",
|
|
5591
5112
|
children: [
|
|
5592
|
-
/* @__PURE__ */ jsx23(
|
|
5113
|
+
/* @__PURE__ */ jsx23(IconButton2, { sx: { padding: "3px" }, onClick: onClose, children: /* @__PURE__ */ jsx23(SvgIcon, { children: /* @__PURE__ */ jsx23("svg", { xmlns: "http://www.w3.org/2000/svg", height: "24px", viewBox: "0 -960 960 960", width: "24px", fill: "#4E4E4F", children: /* @__PURE__ */ jsx23("path", { d: "M280-120q-33 0-56.5-23.5T200-200v-520h-40v-80h200v-40h240v40h200v80h-40v520q0 33-23.5 56.5T680-120H280Zm400-600H280v520h400v-520ZM360-280h80v-360h-80v360Zm160 0h80v-360h-80v360ZM280-720v520-520Z" }) }) }) }),
|
|
5593
5114
|
/* @__PURE__ */ jsx23("div", { style: { fontSize: "11px" }, children: "Dismiss" })
|
|
5594
5115
|
]
|
|
5595
5116
|
}
|
|
@@ -5601,7 +5122,7 @@ function WavelengthAlert({
|
|
|
5601
5122
|
WavelengthAlert.displayName = "WavelengthAlert";
|
|
5602
5123
|
|
|
5603
5124
|
// src/components/PageComponents/WavelengthToolTip.tsx
|
|
5604
|
-
import { useRef as useRef7, useEffect as
|
|
5125
|
+
import { useRef as useRef7, useEffect as useEffect7 } from "react";
|
|
5605
5126
|
import { jsx as jsx24 } from "react/jsx-runtime";
|
|
5606
5127
|
var WavelengthToolTip = ({ color: color2, font, direction, children, textColor, textContent, ...rest }) => {
|
|
5607
5128
|
const ref = useRef7(null);
|
|
@@ -5610,7 +5131,7 @@ var WavelengthToolTip = ({ color: color2, font, direction, children, textColor,
|
|
|
5610
5131
|
if (!el) return;
|
|
5611
5132
|
el.setAttribute(attribute, value);
|
|
5612
5133
|
};
|
|
5613
|
-
|
|
5134
|
+
useEffect7(() => {
|
|
5614
5135
|
syncAttribute("color", color2 || "");
|
|
5615
5136
|
syncAttribute("font", font || "");
|
|
5616
5137
|
syncAttribute("direction", direction || "");
|
|
@@ -5626,7 +5147,7 @@ import { Typography as Typography2 } from "@mui/material";
|
|
|
5626
5147
|
import Box from "@mui/material/Box";
|
|
5627
5148
|
import Container from "@mui/material/Container";
|
|
5628
5149
|
import Grid2 from "@mui/material/Grid";
|
|
5629
|
-
import { Fragment as
|
|
5150
|
+
import { Fragment as Fragment9, jsx as jsx25, jsxs as jsxs15 } from "react/jsx-runtime";
|
|
5630
5151
|
function WavelengthFooter({ text, textColor, id }) {
|
|
5631
5152
|
return /* @__PURE__ */ jsx25(
|
|
5632
5153
|
Box,
|
|
@@ -5646,7 +5167,7 @@ function WavelengthFooter({ text, textColor, id }) {
|
|
|
5646
5167
|
backgroundImage: "url(data:image/png;base64,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)"
|
|
5647
5168
|
},
|
|
5648
5169
|
children: /* @__PURE__ */ jsx25(Container, { children: /* @__PURE__ */ jsxs15(Grid2, { container: true, alignItems: "center", justifyContent: "center", spacing: 1, id, children: [
|
|
5649
|
-
text && /* @__PURE__ */ jsxs15(
|
|
5170
|
+
text && /* @__PURE__ */ jsxs15(Fragment9, { children: [
|
|
5650
5171
|
/* @__PURE__ */ jsx25(Grid2, { item: true, children: /* @__PURE__ */ jsx25(Typography2, { variant: "h5", component: "div", sx: { fontSize: "1rem", color: textColor ? textColor : "#FFFFFF" }, children: text }) }),
|
|
5651
5172
|
/* @__PURE__ */ jsx25(Grid2, { item: true, children: /* @__PURE__ */ jsx25(Typography2, { variant: "h5", component: "div", sx: { fontSize: "1.25rem", color: textColor ? textColor : "#FFFFFF" }, children: "/" }) })
|
|
5652
5173
|
] }),
|
|
@@ -5674,12 +5195,12 @@ function WavelengthFooter({ text, textColor, id }) {
|
|
|
5674
5195
|
WavelengthFooter.displayName = "WavelengthFooter";
|
|
5675
5196
|
|
|
5676
5197
|
// src/components/forms/WavelengthForm.tsx
|
|
5677
|
-
import
|
|
5198
|
+
import React12, { useEffect as useEffect8, useImperativeHandle, useRef as useRef8 } from "react";
|
|
5678
5199
|
import "@wavelengthusaf/web-components";
|
|
5679
5200
|
import { jsx as jsx26 } from "react/jsx-runtime";
|
|
5680
5201
|
function useStableCallback(fn) {
|
|
5681
5202
|
const fnRef = useRef8(fn);
|
|
5682
|
-
|
|
5203
|
+
useEffect8(() => {
|
|
5683
5204
|
fnRef.current = fn;
|
|
5684
5205
|
}, [fn]);
|
|
5685
5206
|
return (...args) => fnRef.current?.(...args);
|
|
@@ -5717,7 +5238,7 @@ function WavelengthFormInner(props, ref) {
|
|
|
5717
5238
|
const onCenterStable = useStableCallback(onCenter);
|
|
5718
5239
|
const onRightStable = useStableCallback(onRight);
|
|
5719
5240
|
const onSubmitStable = useStableCallback(onSubmit);
|
|
5720
|
-
|
|
5241
|
+
useEffect8(() => {
|
|
5721
5242
|
const el = hostRef.current;
|
|
5722
5243
|
if (!el) return;
|
|
5723
5244
|
let finalSchema = schema;
|
|
@@ -5750,7 +5271,7 @@ function WavelengthFormInner(props, ref) {
|
|
|
5750
5271
|
if (formWidth !== void 0) el.formWidth = formWidth;
|
|
5751
5272
|
if (layout !== void 0) el.layout = layout;
|
|
5752
5273
|
}, [schema, value, leftButton, centerButton, rightButton, inputProps, idPrefix, title, titleAlign, titleColor, placeholders, formWidth, layout]);
|
|
5753
|
-
|
|
5274
|
+
useEffect8(() => {
|
|
5754
5275
|
const el = hostRef.current;
|
|
5755
5276
|
if (!el) return;
|
|
5756
5277
|
const handleChange = (e) => {
|
|
@@ -5795,7 +5316,7 @@ function WavelengthFormInner(props, ref) {
|
|
|
5795
5316
|
);
|
|
5796
5317
|
return /* @__PURE__ */ jsx26("wavelength-form", { ref: hostRef, className, style: style3 });
|
|
5797
5318
|
}
|
|
5798
|
-
var WavelengthFormForwardRef =
|
|
5319
|
+
var WavelengthFormForwardRef = React12.forwardRef(WavelengthFormInner);
|
|
5799
5320
|
WavelengthFormForwardRef.displayName = "WavelengthForm";
|
|
5800
5321
|
var WavelengthForm = WavelengthFormForwardRef;
|
|
5801
5322
|
|
|
@@ -5803,12 +5324,12 @@ var WavelengthForm = WavelengthFormForwardRef;
|
|
|
5803
5324
|
import { WavelengthForm as WavelengthForm2 } from "@wavelengthusaf/web-components";
|
|
5804
5325
|
|
|
5805
5326
|
// src/components/headers/WavelengthTitleBar/WavelengthTitleBar.tsx
|
|
5806
|
-
import { useEffect as
|
|
5327
|
+
import { useEffect as useEffect9, useRef as useRef9 } from "react";
|
|
5807
5328
|
import "@wavelengthusaf/web-components";
|
|
5808
5329
|
import { jsx as jsx27 } from "react/jsx-runtime";
|
|
5809
5330
|
function WavelengthTitleBar({ titleText, subtitleText, textColor, shadowColor, id, name }) {
|
|
5810
5331
|
const ref = useRef9(null);
|
|
5811
|
-
|
|
5332
|
+
useEffect9(() => {
|
|
5812
5333
|
if (ref.current) {
|
|
5813
5334
|
ref.current.setAttribute("title-text", titleText || "Default Title");
|
|
5814
5335
|
ref.current.setAttribute("subtitle-text", subtitleText || "Default Subtitle");
|
|
@@ -5826,12 +5347,12 @@ WavelengthTitleBar.displayName = "WavelengthTitleBar";
|
|
|
5826
5347
|
import { WavelengthTitleBar as WavelengthTitleBar2 } from "@wavelengthusaf/web-components";
|
|
5827
5348
|
|
|
5828
5349
|
// src/components/headers/WavelengthTitleBar/WavelengthBanner.tsx
|
|
5829
|
-
import { useEffect as
|
|
5350
|
+
import { useEffect as useEffect10, useRef as useRef10 } from "react";
|
|
5830
5351
|
import "@wavelengthusaf/web-components";
|
|
5831
5352
|
import { jsx as jsx28 } from "react/jsx-runtime";
|
|
5832
5353
|
function WavelengthBanner({ bannerText, bannerColor, textColor, opacity = 1, zIndex = 10, id, classification, control, name }) {
|
|
5833
5354
|
const ref = useRef10(null);
|
|
5834
|
-
|
|
5355
|
+
useEffect10(() => {
|
|
5835
5356
|
if (!ref.current) return;
|
|
5836
5357
|
const el = ref.current;
|
|
5837
5358
|
if (bannerText !== void 0) el.setAttribute("banner-text", bannerText);
|
|
@@ -5885,11 +5406,11 @@ function WavelengthDefaultIcon({ width: width2 = "180", height: height2 = 140, i
|
|
|
5885
5406
|
WavelengthDefaultIcon.displayName = "WavelengthDefaultIcon";
|
|
5886
5407
|
|
|
5887
5408
|
// src/components/CSFD/WavelengthManyPlanes.tsx
|
|
5888
|
-
import { useRef as useRef11, useEffect as
|
|
5409
|
+
import { useRef as useRef11, useEffect as useEffect11 } from "react";
|
|
5889
5410
|
import { jsx as jsx30 } from "react/jsx-runtime";
|
|
5890
5411
|
var WavelengthManyPlanes = ({ children, numberOfPlanes, trailDir, opacity, color: color2, gradient, spaced, ...rest }) => {
|
|
5891
5412
|
const ref = useRef11(null);
|
|
5892
|
-
|
|
5413
|
+
useEffect11(() => {
|
|
5893
5414
|
const el = ref.current;
|
|
5894
5415
|
if (!el) return;
|
|
5895
5416
|
if (numberOfPlanes !== void 0) {
|
|
@@ -5916,7 +5437,7 @@ var WavelengthManyPlanes = ({ children, numberOfPlanes, trailDir, opacity, color
|
|
|
5916
5437
|
WavelengthManyPlanes.displayName = "WavelengthManyPlanes";
|
|
5917
5438
|
|
|
5918
5439
|
// src/components/separators/WavelengthPlaneTrail/WavelengthPlaneTrail.tsx
|
|
5919
|
-
import { useRef as useRef12, useEffect as
|
|
5440
|
+
import { useRef as useRef12, useEffect as useEffect12 } from "react";
|
|
5920
5441
|
import "@wavelengthusaf/web-components";
|
|
5921
5442
|
import { jsx as jsx31 } from "react/jsx-runtime";
|
|
5922
5443
|
var WavelengthPlaneTrail = ({
|
|
@@ -5930,7 +5451,7 @@ var WavelengthPlaneTrail = ({
|
|
|
5930
5451
|
// This rest operator includes className, style, onClick, etc.
|
|
5931
5452
|
}) => {
|
|
5932
5453
|
const ref = useRef12(null);
|
|
5933
|
-
|
|
5454
|
+
useEffect12(() => {
|
|
5934
5455
|
const el = ref.current;
|
|
5935
5456
|
if (!el) return;
|
|
5936
5457
|
if (customStyle2 !== void 0) {
|
|
@@ -5992,7 +5513,7 @@ function WavelengthConfirmationModal(props) {
|
|
|
5992
5513
|
WavelengthConfirmationModal.displayName = "WavelengthConfirmationModal";
|
|
5993
5514
|
|
|
5994
5515
|
// src/components/modals/WavelengthContentModal.tsx
|
|
5995
|
-
import { Button as Button3, Dialog, DialogActions, DialogTitle, DialogContent, Typography as Typography3, IconButton as
|
|
5516
|
+
import { Button as Button3, Dialog, DialogActions, DialogTitle, DialogContent, Typography as Typography3, IconButton as IconButton3, Box as Box3 } from "@mui/material";
|
|
5996
5517
|
import CloseIcon from "@mui/icons-material/Close";
|
|
5997
5518
|
import { jsx as jsx33, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
5998
5519
|
function WavelengthContentModal(props) {
|
|
@@ -6003,7 +5524,7 @@ function WavelengthContentModal(props) {
|
|
|
6003
5524
|
return /* @__PURE__ */ jsxs18(Dialog, { "data-testid": "testId-WavelengthContentModal", open: show, onClose: handleClose, "aria-labelledby": "alert-dialog-title", "aria-describedby": "alert-dialog-description", id: props.id, children: [
|
|
6004
5525
|
/* @__PURE__ */ jsx33(DialogTitle, { alignContent: `center`, id: "alert-dialog-title", children: /* @__PURE__ */ jsxs18(Box3, { display: "flex", alignItems: "center", children: [
|
|
6005
5526
|
/* @__PURE__ */ jsx33(Box3, { flexGrow: 1, children: props.textObj?.title }),
|
|
6006
|
-
/* @__PURE__ */ jsx33(Box3, { children: /* @__PURE__ */ jsx33(
|
|
5527
|
+
/* @__PURE__ */ jsx33(Box3, { children: /* @__PURE__ */ jsx33(IconButton3, { onClick: handleClose, children: /* @__PURE__ */ jsx33(CloseIcon, {}) }) })
|
|
6007
5528
|
] }) }),
|
|
6008
5529
|
/* @__PURE__ */ jsx33(DialogContent, { children: /* @__PURE__ */ jsx33(Typography3, { align: "center", children: props.textObj?.dialog }) }),
|
|
6009
5530
|
/* @__PURE__ */ jsx33(DialogActions, { style: { justifyContent: `center` }, children: /* @__PURE__ */ jsx33(Button3, { "data-testid": "testId-WavelengthContentModalConfirmButton", onClick: handleContentModalOnConfirmProp, color: "primary", variant: "contained", autoFocus: true, children: props.textObj?.purpose }) })
|
|
@@ -6012,16 +5533,16 @@ function WavelengthContentModal(props) {
|
|
|
6012
5533
|
WavelengthContentModal.displayName = "WavelengthContentModal";
|
|
6013
5534
|
|
|
6014
5535
|
// src/components/modals/WavelengthPopUpMenu.tsx
|
|
6015
|
-
import
|
|
5536
|
+
import React15 from "react";
|
|
6016
5537
|
import Menu from "@mui/material/Menu";
|
|
6017
5538
|
import MenuItem from "@mui/material/MenuItem";
|
|
6018
5539
|
import Box4 from "@mui/material/Box";
|
|
6019
5540
|
import Slide from "@mui/material/Slide";
|
|
6020
5541
|
import { HelpOutline } from "@mui/icons-material";
|
|
6021
|
-
import
|
|
6022
|
-
import
|
|
5542
|
+
import styled5 from "styled-components";
|
|
5543
|
+
import IconButton4 from "@mui/material/IconButton";
|
|
6023
5544
|
import Divider from "@mui/material/Divider";
|
|
6024
|
-
import { Fragment as
|
|
5545
|
+
import { Fragment as Fragment10, jsx as jsx34, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
6025
5546
|
var customStyle = { marginLeft: 16, marginRight: 16, marginTop: 8, marginBottom: 8 };
|
|
6026
5547
|
var emailStyle = {
|
|
6027
5548
|
marginLeft: 16,
|
|
@@ -6030,7 +5551,7 @@ var emailStyle = {
|
|
|
6030
5551
|
marginBottom: 8
|
|
6031
5552
|
};
|
|
6032
5553
|
function WavelengthPopUpMenu({ menuItems, customIcon = false, width: width2, menuDirection = "top", color: color2, id, border: border2 }) {
|
|
6033
|
-
const Links =
|
|
5554
|
+
const Links = styled5.a`
|
|
6034
5555
|
color: inherit;
|
|
6035
5556
|
text-decoration: none;
|
|
6036
5557
|
|
|
@@ -6042,7 +5563,7 @@ function WavelengthPopUpMenu({ menuItems, customIcon = false, width: width2, men
|
|
|
6042
5563
|
color: ${({ hoverColor }) => hoverColor || "inherit"};
|
|
6043
5564
|
}
|
|
6044
5565
|
`;
|
|
6045
|
-
const [anchorEl, setAnchorEl] =
|
|
5566
|
+
const [anchorEl, setAnchorEl] = React15.useState(null);
|
|
6046
5567
|
const open = Boolean(anchorEl);
|
|
6047
5568
|
let icon;
|
|
6048
5569
|
const handleClick = (event) => {
|
|
@@ -6058,8 +5579,8 @@ function WavelengthPopUpMenu({ menuItems, customIcon = false, width: width2, men
|
|
|
6058
5579
|
}
|
|
6059
5580
|
const anchor = menuDirection === "top" || menuDirection === void 0 ? "top" : "bottom";
|
|
6060
5581
|
const transform = menuDirection === "top" || menuDirection === void 0 ? "bottom" : "top";
|
|
6061
|
-
return /* @__PURE__ */ jsxs19(
|
|
6062
|
-
/* @__PURE__ */ jsx34(
|
|
5582
|
+
return /* @__PURE__ */ jsxs19(Fragment10, { children: [
|
|
5583
|
+
/* @__PURE__ */ jsx34(IconButton4, { onClick: handleClick, children: icon }),
|
|
6063
5584
|
/* @__PURE__ */ jsxs19(
|
|
6064
5585
|
Menu,
|
|
6065
5586
|
{
|
|
@@ -6146,7 +5667,7 @@ function WavelengthPopUpMenu({ menuItems, customIcon = false, width: width2, men
|
|
|
6146
5667
|
WavelengthPopUpMenu.displayName = "WavelengthPopUpMenu";
|
|
6147
5668
|
|
|
6148
5669
|
// src/components/modals/WavelengthDropdown.tsx
|
|
6149
|
-
import { forwardRef, useEffect as
|
|
5670
|
+
import { forwardRef, useEffect as useEffect13, useImperativeHandle as useImperativeHandle2, useRef as useRef13 } from "react";
|
|
6150
5671
|
import { jsx as jsx35 } from "react/jsx-runtime";
|
|
6151
5672
|
var WavelengthDropdown = forwardRef((props, ref) => {
|
|
6152
5673
|
const {
|
|
@@ -6174,7 +5695,7 @@ var WavelengthDropdown = forwardRef((props, ref) => {
|
|
|
6174
5695
|
} = props;
|
|
6175
5696
|
const elementRef = useRef13(null);
|
|
6176
5697
|
useImperativeHandle2(ref, () => elementRef.current);
|
|
6177
|
-
|
|
5698
|
+
useEffect13(() => {
|
|
6178
5699
|
const el = elementRef.current;
|
|
6179
5700
|
if (!el || !onChange) return;
|
|
6180
5701
|
const handler = (e) => {
|
|
@@ -6184,7 +5705,7 @@ var WavelengthDropdown = forwardRef((props, ref) => {
|
|
|
6184
5705
|
el.addEventListener("change", handler);
|
|
6185
5706
|
return () => el.removeEventListener("change", handler);
|
|
6186
5707
|
}, [onChange]);
|
|
6187
|
-
|
|
5708
|
+
useEffect13(() => {
|
|
6188
5709
|
if (value !== void 0 && elementRef.current) {
|
|
6189
5710
|
elementRef.current.value = value;
|
|
6190
5711
|
}
|
|
@@ -6218,7 +5739,7 @@ var WavelengthDropdown = forwardRef((props, ref) => {
|
|
|
6218
5739
|
WavelengthDropdown.displayName = "WavelengthDropdown";
|
|
6219
5740
|
|
|
6220
5741
|
// src/components/modals/WavelengthMenu.tsx
|
|
6221
|
-
import { useRef as useRef14, useEffect as
|
|
5742
|
+
import { useRef as useRef14, useEffect as useEffect14 } from "react";
|
|
6222
5743
|
import { jsx as jsx36 } from "react/jsx-runtime";
|
|
6223
5744
|
var WavelengthMenu = ({
|
|
6224
5745
|
backgroundColor: backgroundColor2,
|
|
@@ -6241,7 +5762,7 @@ var WavelengthMenu = ({
|
|
|
6241
5762
|
if (!el) return;
|
|
6242
5763
|
el.setAttribute(attribute, value);
|
|
6243
5764
|
};
|
|
6244
|
-
|
|
5765
|
+
useEffect14(() => {
|
|
6245
5766
|
const el = ref.current;
|
|
6246
5767
|
if (!el) return;
|
|
6247
5768
|
syncAttribute("background-color", backgroundColor2 || "");
|
|
@@ -6282,31 +5803,395 @@ var WavelengthMenu = ({
|
|
|
6282
5803
|
};
|
|
6283
5804
|
WavelengthMenu.displayName = "WavelengthMenu";
|
|
6284
5805
|
|
|
6285
|
-
// src/components/
|
|
6286
|
-
import
|
|
6287
|
-
import
|
|
6288
|
-
|
|
6289
|
-
|
|
6290
|
-
|
|
6291
|
-
|
|
6292
|
-
|
|
6293
|
-
|
|
5806
|
+
// src/components/modals/WavelengthPagination.tsx
|
|
5807
|
+
import { useRef as useRef15, useEffect as useEffect15 } from "react";
|
|
5808
|
+
import { jsx as jsx37 } from "react/jsx-runtime";
|
|
5809
|
+
var WavelengthPagination = ({
|
|
5810
|
+
testProp,
|
|
5811
|
+
children,
|
|
5812
|
+
// Style argument
|
|
5813
|
+
customStyle: customStyle2,
|
|
5814
|
+
variant,
|
|
5815
|
+
textColor,
|
|
5816
|
+
font,
|
|
5817
|
+
fontSize,
|
|
5818
|
+
border: border2,
|
|
5819
|
+
borderRadius: borderRadius2,
|
|
5820
|
+
padding: padding2,
|
|
5821
|
+
totalPages,
|
|
5822
|
+
currentPage,
|
|
5823
|
+
activeColor,
|
|
5824
|
+
activeTextColor,
|
|
5825
|
+
backgroundColor: backgroundColor2,
|
|
5826
|
+
disabledColor,
|
|
5827
|
+
onPageChange,
|
|
5828
|
+
...rest
|
|
5829
|
+
// This rest operator includes className, style, onClick, etc.
|
|
5830
|
+
}) => {
|
|
5831
|
+
const ref = useRef15(null);
|
|
5832
|
+
const syncAttribute = (attribute, value) => {
|
|
5833
|
+
const el = ref.current;
|
|
5834
|
+
if (!el) return;
|
|
5835
|
+
el.setAttribute(attribute, value);
|
|
6294
5836
|
};
|
|
6295
|
-
|
|
6296
|
-
|
|
6297
|
-
|
|
6298
|
-
|
|
6299
|
-
|
|
6300
|
-
|
|
6301
|
-
|
|
6302
|
-
|
|
5837
|
+
useEffect15(() => {
|
|
5838
|
+
const el = ref.current;
|
|
5839
|
+
if (!el) return;
|
|
5840
|
+
el.customStyles = customStyle2;
|
|
5841
|
+
syncAttribute("variant", variant || "");
|
|
5842
|
+
syncAttribute("text-color", textColor || "");
|
|
5843
|
+
syncAttribute("font", font || "");
|
|
5844
|
+
syncAttribute("font-size", fontSize || "");
|
|
5845
|
+
syncAttribute("border", border2 || "");
|
|
5846
|
+
syncAttribute("border-radius", borderRadius2 || "");
|
|
5847
|
+
syncAttribute("padding", padding2 || "");
|
|
5848
|
+
syncAttribute("active-color", activeColor || "");
|
|
5849
|
+
syncAttribute("active-text-color", activeTextColor || "");
|
|
5850
|
+
syncAttribute("background-color", backgroundColor2 || "");
|
|
5851
|
+
syncAttribute("disabled-color", disabledColor || "");
|
|
5852
|
+
syncAttribute("total-pages", totalPages?.toString() || "");
|
|
5853
|
+
syncAttribute("current-page", currentPage?.toString() || "");
|
|
5854
|
+
const handlePageChange = (e) => {
|
|
5855
|
+
if (onPageChange) {
|
|
5856
|
+
onPageChange(e.detail.page);
|
|
5857
|
+
}
|
|
5858
|
+
};
|
|
5859
|
+
el.addEventListener("page-change", handlePageChange);
|
|
5860
|
+
return () => {
|
|
5861
|
+
el.removeEventListener("page-change", handlePageChange);
|
|
5862
|
+
};
|
|
5863
|
+
}, [testProp, textColor, font, fontSize, border2, borderRadius2, padding2, variant, totalPages, currentPage, activeColor, activeTextColor, backgroundColor2, disabledColor, onPageChange]);
|
|
5864
|
+
return /* @__PURE__ */ jsx37("wavelength-pagination", { ref, variant, "total-pages": totalPages, "current-page": currentPage, ...rest });
|
|
5865
|
+
};
|
|
5866
|
+
WavelengthPagination.displayName = "WavelengthPagination";
|
|
5867
|
+
|
|
5868
|
+
// src/index.ts
|
|
5869
|
+
import { WavelengthPagination as WavelengthPagination2 } from "@wavelengthusaf/web-components";
|
|
5870
|
+
|
|
5871
|
+
// src/components/pagination/WavelengthDefaultPagination.tsx
|
|
5872
|
+
import { useState as useState6, useMemo } from "react";
|
|
5873
|
+
|
|
5874
|
+
// src/components/pagination/WavelengthButtonPagination.tsx
|
|
5875
|
+
import { useState as useState4 } from "react";
|
|
5876
|
+
import Button4 from "@mui/material/Button";
|
|
5877
|
+
import ArrowBackIosNewIcon from "@mui/icons-material/ArrowBackIosNew";
|
|
5878
|
+
import ArrowForwardIosIcon from "@mui/icons-material/ArrowForwardIos";
|
|
5879
|
+
import styled6 from "styled-components";
|
|
5880
|
+
import { jsx as jsx38, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
5881
|
+
var MyDroplistItems = styled6("li")`
|
|
5882
|
+
background-color: white;
|
|
5883
|
+
color: #000000;
|
|
5884
|
+
padding: 10px 30px;
|
|
5885
|
+
textdecoration: none;
|
|
5886
|
+
display: block;
|
|
5887
|
+
width: 80px;
|
|
5888
|
+
|
|
5889
|
+
&:hover {
|
|
5890
|
+
background-color: lightgray;
|
|
5891
|
+
}
|
|
5892
|
+
`;
|
|
5893
|
+
function WavelengthButtonPagination({ totalPages, current, handleChangePage, itemList, firstEllipseList, secondEllipseList, id }) {
|
|
5894
|
+
const [isOpen, setIsOpen] = useState4(false);
|
|
5895
|
+
const [isSecOpen, setIsSecOpen] = useState4(false);
|
|
5896
|
+
const toggleDropdown = (index) => {
|
|
5897
|
+
if (index === 1) {
|
|
5898
|
+
setIsOpen(!isOpen);
|
|
5899
|
+
} else {
|
|
5900
|
+
setIsSecOpen(!isSecOpen);
|
|
5901
|
+
}
|
|
5902
|
+
};
|
|
5903
|
+
const dropstyles = {
|
|
5904
|
+
dropcenter: { position: "relative", left: "-40px", top: "-20px" },
|
|
5905
|
+
mydrop: { position: "absolute", zIndex: "3", maxHeight: "200px", overflow: "scroll" },
|
|
5906
|
+
rangenumbers: { display: "flex" },
|
|
5907
|
+
butPagCompDivStyle: { display: "flex" }
|
|
5908
|
+
};
|
|
5909
|
+
const WLButtonPagStyle = {
|
|
5910
|
+
background: "white",
|
|
5911
|
+
color: "black",
|
|
5912
|
+
border: "none",
|
|
5913
|
+
padding: "1px",
|
|
5914
|
+
fontSize: "16px",
|
|
5915
|
+
height: "55px",
|
|
5916
|
+
width: "40px",
|
|
5917
|
+
boxshadow: "4px 2px 4px darkslategray",
|
|
5918
|
+
borderRadius: "50%",
|
|
5919
|
+
margin: "3px",
|
|
5920
|
+
"&:hover": { background: "#49baf7" },
|
|
5921
|
+
"&:disabled": { background: "rgb(226, 223, 223)" },
|
|
5922
|
+
"&.active": { background: "#8FD8FF" }
|
|
5923
|
+
};
|
|
5924
|
+
return /* @__PURE__ */ jsxs20("div", { style: dropstyles.butPagCompDivStyle, id, children: [
|
|
5925
|
+
/* @__PURE__ */ jsx38(Button4, { onClick: () => handleChangePage(current - 1), disabled: current === 1, sx: WLButtonPagStyle, children: /* @__PURE__ */ jsx38(ArrowBackIosNewIcon, {}) }),
|
|
5926
|
+
/* @__PURE__ */ jsx38("section", { style: dropstyles.rangenumbers, children: itemList.map(
|
|
5927
|
+
(item, index) => item === "..." && index === 1 ? (
|
|
5928
|
+
//first half ellipse with first half dropdown
|
|
5929
|
+
// dropdown
|
|
5930
|
+
// eslint-disable-next-line react/jsx-key
|
|
5931
|
+
/* @__PURE__ */ jsxs20("div", { children: [
|
|
5932
|
+
/* @__PURE__ */ jsx38(Button4, { onClick: () => toggleDropdown(1), className: current === index ? "active" : "", sx: WLButtonPagStyle, children: item }, index),
|
|
5933
|
+
isOpen && /* @__PURE__ */ jsx38("div", { style: dropstyles.dropcenter, children: /* @__PURE__ */ jsx38("ul", { style: dropstyles.mydrop, children: firstEllipseList.map((item2) => /* @__PURE__ */ jsx38(
|
|
5934
|
+
MyDroplistItems,
|
|
5935
|
+
{
|
|
5936
|
+
onClick: () => {
|
|
5937
|
+
handleChangePage(item2), setIsOpen(false);
|
|
5938
|
+
},
|
|
5939
|
+
children: item2
|
|
5940
|
+
},
|
|
5941
|
+
item2
|
|
5942
|
+
)) }) })
|
|
5943
|
+
] })
|
|
5944
|
+
) : item === "..." && index === 5 ? (
|
|
5945
|
+
//second half ellipse with second half dropdown
|
|
5946
|
+
/* @__PURE__ */ jsxs20("div", { children: [
|
|
5947
|
+
/* @__PURE__ */ jsx38(Button4, { onClick: () => toggleDropdown(5), className: current === index ? "active" : "", sx: WLButtonPagStyle, children: item }, index),
|
|
5948
|
+
isSecOpen && /* @__PURE__ */ jsx38("div", { style: dropstyles.dropcenter, children: /* @__PURE__ */ jsx38("ul", { style: dropstyles.mydrop, children: secondEllipseList.map((item2) => /* @__PURE__ */ jsx38(
|
|
5949
|
+
MyDroplistItems,
|
|
5950
|
+
{
|
|
5951
|
+
onClick: () => {
|
|
5952
|
+
handleChangePage(item2), setIsOpen(false);
|
|
5953
|
+
},
|
|
5954
|
+
children: item2
|
|
5955
|
+
},
|
|
5956
|
+
item2
|
|
5957
|
+
)) }) })
|
|
5958
|
+
] })
|
|
5959
|
+
) : /* @__PURE__ */ jsx38(Button4, { onClick: () => handleChangePage(item), className: current === item ? "active" : "", sx: WLButtonPagStyle, children: item }, index)
|
|
5960
|
+
) }),
|
|
5961
|
+
/* @__PURE__ */ jsx38(Button4, { onClick: () => handleChangePage(current + 1), disabled: current === totalPages, sx: WLButtonPagStyle, children: /* @__PURE__ */ jsx38(ArrowForwardIosIcon, {}) })
|
|
5962
|
+
] });
|
|
5963
|
+
}
|
|
5964
|
+
WavelengthButtonPagination.displayName = "WavelengthButtonPagination";
|
|
5965
|
+
var WavelengthButtonPagination_default = WavelengthButtonPagination;
|
|
5966
|
+
|
|
5967
|
+
// src/components/pagination/WavelengthVariationPagination.tsx
|
|
5968
|
+
import { useState as useState5 } from "react";
|
|
5969
|
+
import Button5 from "@mui/material/Button";
|
|
5970
|
+
import ArrowBackIosNewIcon2 from "@mui/icons-material/ArrowBackIosNew";
|
|
5971
|
+
import ArrowForwardIosIcon2 from "@mui/icons-material/ArrowForwardIos";
|
|
5972
|
+
import styled7 from "styled-components";
|
|
5973
|
+
import { jsx as jsx39, jsxs as jsxs21 } from "react/jsx-runtime";
|
|
5974
|
+
function WavelengthVariationPagination({ totalPages, current, variant, handleChangePage, itemList, firstEllipseList, secondEllipseList, id }) {
|
|
5975
|
+
const [isOpen, setIsOpen] = useState5(false);
|
|
5976
|
+
const [isSecOpen, setIsSecOpen] = useState5(false);
|
|
5977
|
+
const MyDroplistItems2 = styled7("li")`
|
|
5978
|
+
background-color: white;
|
|
5979
|
+
color: #000000;
|
|
5980
|
+
padding: 10px 30px;
|
|
5981
|
+
textdecoration: none;
|
|
5982
|
+
display: block;
|
|
5983
|
+
width: 80px;
|
|
5984
|
+
|
|
5985
|
+
&:hover {
|
|
5986
|
+
background-color: lightgray;
|
|
5987
|
+
}
|
|
5988
|
+
`;
|
|
5989
|
+
const dropstyles = {
|
|
5990
|
+
pagination: {
|
|
5991
|
+
display: "flex"
|
|
5992
|
+
},
|
|
5993
|
+
dropcenter: {
|
|
5994
|
+
position: "relative",
|
|
5995
|
+
left: "-40px",
|
|
5996
|
+
top: "-20px"
|
|
5997
|
+
},
|
|
5998
|
+
mydrop: {
|
|
5999
|
+
position: "absolute",
|
|
6000
|
+
zIndex: "3",
|
|
6001
|
+
maxHeight: "200px",
|
|
6002
|
+
overflow: "scroll"
|
|
6003
|
+
},
|
|
6004
|
+
rangenumbers: {
|
|
6005
|
+
display: "flex"
|
|
6006
|
+
}
|
|
6007
|
+
};
|
|
6008
|
+
const toggleDropdown = (index) => {
|
|
6009
|
+
if (index === 1) {
|
|
6010
|
+
setIsOpen(!isOpen);
|
|
6011
|
+
} else {
|
|
6012
|
+
setIsSecOpen(!isSecOpen);
|
|
6013
|
+
}
|
|
6014
|
+
};
|
|
6015
|
+
return /* @__PURE__ */ jsxs21("div", { style: dropstyles.pagination, id, children: [
|
|
6016
|
+
/* @__PURE__ */ jsx39(Button5, { onClick: () => handleChangePage(current - 1), variant, disabled: current === 1, children: /* @__PURE__ */ jsx39(ArrowBackIosNewIcon2, {}) }),
|
|
6017
|
+
/* @__PURE__ */ jsx39("section", { style: dropstyles.rangenumbers, children: itemList.map(
|
|
6018
|
+
(item, index) => item === "..." && index === 1 ? (
|
|
6019
|
+
//first half ellipse with first half dropdown
|
|
6020
|
+
// eslint-disable-next-line react/jsx-key
|
|
6021
|
+
/* @__PURE__ */ jsxs21("div", { children: [
|
|
6022
|
+
/* @__PURE__ */ jsx39(Button5, { onClick: () => toggleDropdown(1), variant, className: current === index ? "active" : "", children: item }, index),
|
|
6023
|
+
isOpen && /* @__PURE__ */ jsx39("div", { style: dropstyles.dropcenter, children: /* @__PURE__ */ jsx39("ul", { style: dropstyles.mydrop, children: firstEllipseList.map((item2) => /* @__PURE__ */ jsx39(
|
|
6024
|
+
MyDroplistItems2,
|
|
6025
|
+
{
|
|
6026
|
+
style: dropstyles.mydroplist,
|
|
6027
|
+
onClick: () => {
|
|
6028
|
+
handleChangePage(item2), setIsOpen(false);
|
|
6029
|
+
},
|
|
6030
|
+
children: item2
|
|
6031
|
+
},
|
|
6032
|
+
item2
|
|
6033
|
+
)) }) })
|
|
6034
|
+
] })
|
|
6035
|
+
) : item === "..." && index === 5 ? (
|
|
6036
|
+
//second half ellipse with second half dropdown
|
|
6037
|
+
/* @__PURE__ */ jsxs21("div", { children: [
|
|
6038
|
+
/* @__PURE__ */ jsx39(Button5, { onClick: () => toggleDropdown(5), variant, className: current === index ? "active" : "", children: item }, index),
|
|
6039
|
+
isSecOpen && /* @__PURE__ */ jsx39("div", { style: dropstyles.dropcenter, children: /* @__PURE__ */ jsx39("ul", { style: dropstyles.mydrop, children: secondEllipseList.map((item2) => /* @__PURE__ */ jsx39(
|
|
6040
|
+
MyDroplistItems2,
|
|
6041
|
+
{
|
|
6042
|
+
style: dropstyles.mydroplist,
|
|
6043
|
+
onClick: () => {
|
|
6044
|
+
handleChangePage(item2), setIsOpen(false);
|
|
6045
|
+
},
|
|
6046
|
+
children: item2
|
|
6047
|
+
},
|
|
6048
|
+
item2
|
|
6049
|
+
)) }) })
|
|
6050
|
+
] })
|
|
6051
|
+
) : /* @__PURE__ */ jsx39(Button5, { onClick: () => handleChangePage(item), className: current === item ? "active" : "", variant, children: item }, index)
|
|
6052
|
+
) }),
|
|
6053
|
+
/* @__PURE__ */ jsx39(Button5, { onClick: () => handleChangePage(current + 1), disabled: current === totalPages, variant, children: /* @__PURE__ */ jsx39(ArrowForwardIosIcon2, {}) })
|
|
6054
|
+
] });
|
|
6055
|
+
}
|
|
6056
|
+
WavelengthVariationPagination.displayName = "WavelengthVariationPagination";
|
|
6057
|
+
var WavelengthVariationPagination_default = WavelengthVariationPagination;
|
|
6058
|
+
|
|
6059
|
+
// src/components/pagination/WavelengthDefaultPagination.tsx
|
|
6060
|
+
import { jsx as jsx40 } from "react/jsx-runtime";
|
|
6061
|
+
var range = (start, end) => {
|
|
6062
|
+
const length = end - start + 1;
|
|
6063
|
+
return Array.from({ length }, (_, i) => start + i);
|
|
6064
|
+
};
|
|
6065
|
+
function ascendingRange(start, end) {
|
|
6066
|
+
const result = [];
|
|
6067
|
+
for (let i = start; i < end; i++) {
|
|
6068
|
+
if (i !== start) {
|
|
6069
|
+
result.push(i);
|
|
6070
|
+
}
|
|
6071
|
+
}
|
|
6072
|
+
return result;
|
|
6073
|
+
}
|
|
6074
|
+
function WavelengthDefaultPagination({ totalPages, currentPageNumber, siblingCount = 1, boundaryCount = 1, style: style3, onPageChange, id }) {
|
|
6075
|
+
const [current, setCurrent] = useState6(currentPageNumber);
|
|
6076
|
+
const startPages = range(1, Math.min(boundaryCount, totalPages));
|
|
6077
|
+
const endPages = range(Math.max(totalPages - boundaryCount + 1, boundaryCount + 1), totalPages);
|
|
6078
|
+
const siblingsStart = Math.max(Math.min(current - siblingCount, totalPages - boundaryCount - siblingCount * 2 - 1), boundaryCount + 2);
|
|
6079
|
+
const siblingsEnd = Math.min(Math.max(current + siblingCount, boundaryCount + siblingCount * 2 + 2), endPages.length > 0 ? endPages[0] - 2 : totalPages - 1);
|
|
6080
|
+
const firstEllipseList = ascendingRange(1, siblingsStart);
|
|
6081
|
+
const secondEllipseList = ascendingRange(siblingsEnd, totalPages);
|
|
6082
|
+
const itemList = useMemo(() => {
|
|
6083
|
+
return [
|
|
6084
|
+
...startPages,
|
|
6085
|
+
...siblingsStart > boundaryCount + 2 ? ["..."] : boundaryCount + 1 < totalPages - boundaryCount ? [boundaryCount + 1] : [],
|
|
6086
|
+
...range(siblingsStart, siblingsEnd),
|
|
6087
|
+
...siblingsEnd < totalPages - boundaryCount - 1 ? ["..."] : totalPages - boundaryCount > boundaryCount ? [totalPages - boundaryCount] : [],
|
|
6088
|
+
...endPages
|
|
6089
|
+
];
|
|
6090
|
+
}, [current, totalPages, boundaryCount, siblingCount, id]);
|
|
6091
|
+
const handleChangePage = (value) => {
|
|
6092
|
+
if (typeof value === "number") {
|
|
6093
|
+
setCurrent(value);
|
|
6094
|
+
onPageChange(value);
|
|
6095
|
+
}
|
|
6096
|
+
};
|
|
6097
|
+
if (style3 === "circular") {
|
|
6098
|
+
return /* @__PURE__ */ jsx40(
|
|
6099
|
+
WavelengthButtonPagination_default,
|
|
6100
|
+
{
|
|
6101
|
+
id,
|
|
6102
|
+
totalPages,
|
|
6103
|
+
current,
|
|
6104
|
+
handleChangePage,
|
|
6105
|
+
itemList,
|
|
6106
|
+
firstEllipseList,
|
|
6107
|
+
secondEllipseList
|
|
6108
|
+
}
|
|
6109
|
+
);
|
|
6110
|
+
} else if (style3 === "text") {
|
|
6111
|
+
return /* @__PURE__ */ jsx40(
|
|
6112
|
+
WavelengthVariationPagination_default,
|
|
6113
|
+
{
|
|
6114
|
+
id,
|
|
6115
|
+
totalPages,
|
|
6116
|
+
current,
|
|
6117
|
+
variant: "text",
|
|
6118
|
+
handleChangePage,
|
|
6119
|
+
itemList,
|
|
6120
|
+
firstEllipseList,
|
|
6121
|
+
secondEllipseList
|
|
6122
|
+
}
|
|
6123
|
+
);
|
|
6124
|
+
} else if (style3 === "outlined") {
|
|
6125
|
+
return /* @__PURE__ */ jsx40(
|
|
6126
|
+
WavelengthVariationPagination_default,
|
|
6127
|
+
{
|
|
6128
|
+
id,
|
|
6129
|
+
totalPages,
|
|
6130
|
+
current,
|
|
6131
|
+
variant: "outlined",
|
|
6132
|
+
handleChangePage,
|
|
6133
|
+
itemList,
|
|
6134
|
+
firstEllipseList,
|
|
6135
|
+
secondEllipseList
|
|
6136
|
+
}
|
|
6137
|
+
);
|
|
6138
|
+
} else if (style3 === "contained") {
|
|
6139
|
+
return /* @__PURE__ */ jsx40(
|
|
6140
|
+
WavelengthVariationPagination_default,
|
|
6141
|
+
{
|
|
6142
|
+
id,
|
|
6143
|
+
totalPages,
|
|
6144
|
+
current,
|
|
6145
|
+
variant: "contained",
|
|
6146
|
+
handleChangePage,
|
|
6147
|
+
itemList,
|
|
6148
|
+
firstEllipseList,
|
|
6149
|
+
secondEllipseList
|
|
6150
|
+
}
|
|
6151
|
+
);
|
|
6152
|
+
} else {
|
|
6153
|
+
return /* @__PURE__ */ jsx40(
|
|
6154
|
+
WavelengthVariationPagination_default,
|
|
6155
|
+
{
|
|
6156
|
+
id,
|
|
6157
|
+
totalPages,
|
|
6158
|
+
current,
|
|
6159
|
+
handleChangePage,
|
|
6160
|
+
itemList,
|
|
6161
|
+
firstEllipseList,
|
|
6162
|
+
secondEllipseList
|
|
6163
|
+
}
|
|
6164
|
+
);
|
|
6165
|
+
}
|
|
6166
|
+
}
|
|
6167
|
+
WavelengthDefaultPagination.displayName = "WavelengthDefaultPagination";
|
|
6168
|
+
var WavelengthDefaultPagination_default = WavelengthDefaultPagination;
|
|
6169
|
+
|
|
6170
|
+
// src/components/snackbars/WavelengthSnackbar.tsx
|
|
6171
|
+
import Snackbar from "@mui/material/Snackbar";
|
|
6172
|
+
import SnackbarContent from "@mui/material/SnackbarContent";
|
|
6173
|
+
import CloseIcon2 from "@mui/icons-material/Close";
|
|
6174
|
+
import { IconButton as IconButton5 } from "@mui/material";
|
|
6175
|
+
import { jsx as jsx41, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
6176
|
+
function WavelengthSnackbar({ show, setShow, closeIcon, message, snackBarColor, textColor, horryAlign, vertyAlign, durationSb, width: width2, icon, id }) {
|
|
6177
|
+
const handleClose = () => {
|
|
6178
|
+
setShow(false);
|
|
6179
|
+
};
|
|
6180
|
+
const defaultIcon = /* @__PURE__ */ jsx41(IconButton5, { size: "small", "aria-label": "close", color: "inherit", children: /* @__PURE__ */ jsx41(CloseIcon2, { fontSize: "small" }) });
|
|
6181
|
+
const palette2 = getPalette();
|
|
6182
|
+
const durationMs = durationSb ? durationSb * 1e3 : 4e3;
|
|
6183
|
+
return /* @__PURE__ */ jsx41(
|
|
6184
|
+
Snackbar,
|
|
6185
|
+
{
|
|
6186
|
+
id,
|
|
6187
|
+
open: show,
|
|
6303
6188
|
onClose: handleClose,
|
|
6304
6189
|
autoHideDuration: durationMs,
|
|
6305
6190
|
anchorOrigin: {
|
|
6306
6191
|
vertical: vertyAlign ? vertyAlign : "bottom",
|
|
6307
6192
|
horizontal: horryAlign ? horryAlign : "center"
|
|
6308
6193
|
},
|
|
6309
|
-
children: /* @__PURE__ */
|
|
6194
|
+
children: /* @__PURE__ */ jsx41(
|
|
6310
6195
|
SnackbarContent,
|
|
6311
6196
|
{
|
|
6312
6197
|
style: {
|
|
@@ -6315,11 +6200,11 @@ function WavelengthSnackbar({ show, setShow, closeIcon, message, snackBarColor,
|
|
|
6315
6200
|
display: "flex",
|
|
6316
6201
|
width: width2
|
|
6317
6202
|
},
|
|
6318
|
-
message: /* @__PURE__ */
|
|
6319
|
-
/* @__PURE__ */
|
|
6320
|
-
/* @__PURE__ */
|
|
6203
|
+
message: /* @__PURE__ */ jsxs22("div", { children: [
|
|
6204
|
+
/* @__PURE__ */ jsx41("span", { children: icon }),
|
|
6205
|
+
/* @__PURE__ */ jsx41("span", { id: "snackbar", children: message ? message : "Insert Message Here" })
|
|
6321
6206
|
] }),
|
|
6322
|
-
action: /* @__PURE__ */
|
|
6207
|
+
action: /* @__PURE__ */ jsx41("div", { style: { display: "flex", justifyContent: "center" }, onClick: handleClose, children: closeIcon ? closeIcon : defaultIcon })
|
|
6323
6208
|
}
|
|
6324
6209
|
)
|
|
6325
6210
|
}
|
|
@@ -6330,7 +6215,7 @@ WavelengthSnackbar.displayName = "WavelengthSnackbar";
|
|
|
6330
6215
|
// src/components/snackbars/WavelengthStandardSnackbar.tsx
|
|
6331
6216
|
import Snackbar2 from "@mui/material/Snackbar";
|
|
6332
6217
|
import SnackbarContent2 from "@mui/material/SnackbarContent";
|
|
6333
|
-
import { jsx as
|
|
6218
|
+
import { jsx as jsx42, jsxs as jsxs23 } from "react/jsx-runtime";
|
|
6334
6219
|
function WavelengthStandardSnackbar({ type, show, icon, horryAlign, vertyAlign, durationSb, width: width2, message, customVertyAlign, toggleShow, closeIcon, id }) {
|
|
6335
6220
|
const handleClose = () => {
|
|
6336
6221
|
toggleShow(false);
|
|
@@ -6345,7 +6230,7 @@ function WavelengthStandardSnackbar({ type, show, icon, horryAlign, vertyAlign,
|
|
|
6345
6230
|
bgColor = "#737373";
|
|
6346
6231
|
}
|
|
6347
6232
|
const sIcon = icon ? icon : "";
|
|
6348
|
-
return /* @__PURE__ */
|
|
6233
|
+
return /* @__PURE__ */ jsx42(
|
|
6349
6234
|
Snackbar2,
|
|
6350
6235
|
{
|
|
6351
6236
|
id,
|
|
@@ -6357,7 +6242,7 @@ function WavelengthStandardSnackbar({ type, show, icon, horryAlign, vertyAlign,
|
|
|
6357
6242
|
vertical: vertyAlign ? vertyAlign : "top",
|
|
6358
6243
|
horizontal: horryAlign ? horryAlign : "center"
|
|
6359
6244
|
},
|
|
6360
|
-
children: /* @__PURE__ */
|
|
6245
|
+
children: /* @__PURE__ */ jsx42(
|
|
6361
6246
|
SnackbarContent2,
|
|
6362
6247
|
{
|
|
6363
6248
|
style: {
|
|
@@ -6366,7 +6251,7 @@ function WavelengthStandardSnackbar({ type, show, icon, horryAlign, vertyAlign,
|
|
|
6366
6251
|
//color: props.textColor ? props.textColor : palette.secondary,
|
|
6367
6252
|
},
|
|
6368
6253
|
sx: { paddingTop: "0px", paddingBottom: "0px" },
|
|
6369
|
-
message: /* @__PURE__ */
|
|
6254
|
+
message: /* @__PURE__ */ jsxs23(
|
|
6370
6255
|
"div",
|
|
6371
6256
|
{
|
|
6372
6257
|
style: {
|
|
@@ -6375,11 +6260,11 @@ function WavelengthStandardSnackbar({ type, show, icon, horryAlign, vertyAlign,
|
|
|
6375
6260
|
width: width2
|
|
6376
6261
|
},
|
|
6377
6262
|
children: [
|
|
6378
|
-
/* @__PURE__ */
|
|
6379
|
-
/* @__PURE__ */
|
|
6380
|
-
/* @__PURE__ */
|
|
6263
|
+
/* @__PURE__ */ jsxs23("div", { style: { gridColumnStart: 2, gridColumnEnd: 5, textAlign: "center", display: "flex", flexDirection: "row", justifyContent: "center", alignItems: "center" }, id: "snackbar", children: [
|
|
6264
|
+
/* @__PURE__ */ jsx42("div", { style: { marginTop: "5px" }, children: sIcon }),
|
|
6265
|
+
/* @__PURE__ */ jsx42("div", { style: { fontSize: "1rem", marginLeft: "10px" }, children: message ? message : "Insert Message Here" })
|
|
6381
6266
|
] }),
|
|
6382
|
-
/* @__PURE__ */
|
|
6267
|
+
/* @__PURE__ */ jsx42("div", { style: { gridColumnStart: 6 }, onClick: handleClose, children: closeIcon })
|
|
6383
6268
|
]
|
|
6384
6269
|
}
|
|
6385
6270
|
)
|
|
@@ -6392,12 +6277,12 @@ WavelengthStandardSnackbar.displayName = "WavelengthStandardSnackbar";
|
|
|
6392
6277
|
|
|
6393
6278
|
// src/components/snackbars/WavelengthTestSnackbar.tsx
|
|
6394
6279
|
import Box5 from "@mui/material/Box";
|
|
6395
|
-
import
|
|
6396
|
-
import { useEffect as
|
|
6397
|
-
import { Fragment as
|
|
6280
|
+
import Button6 from "@mui/material/Button";
|
|
6281
|
+
import { useEffect as useEffect16, useRef as useRef16 } from "react";
|
|
6282
|
+
import { Fragment as Fragment11, jsx as jsx43, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
6398
6283
|
var useOutsideClick = (callback) => {
|
|
6399
|
-
const ref =
|
|
6400
|
-
|
|
6284
|
+
const ref = useRef16(null);
|
|
6285
|
+
useEffect16(() => {
|
|
6401
6286
|
const handleClickOutside = (event) => {
|
|
6402
6287
|
if (ref.current && !ref.current.contains(event.target)) {
|
|
6403
6288
|
callback();
|
|
@@ -6424,7 +6309,7 @@ function WavelengthTestSnackbar({ isPopUpOpen, toggleOpen, type, message, custom
|
|
|
6424
6309
|
} else if (type === "disabled") {
|
|
6425
6310
|
bgColor = "#737373";
|
|
6426
6311
|
}
|
|
6427
|
-
return /* @__PURE__ */
|
|
6312
|
+
return /* @__PURE__ */ jsx43(Fragment11, { children: isPopUpOpen && /* @__PURE__ */ jsxs24(
|
|
6428
6313
|
Box5,
|
|
6429
6314
|
{
|
|
6430
6315
|
id,
|
|
@@ -6444,10 +6329,10 @@ function WavelengthTestSnackbar({ isPopUpOpen, toggleOpen, type, message, custom
|
|
|
6444
6329
|
marginTop: customVertyAlign ? `${customVertyAlign}` : ""
|
|
6445
6330
|
},
|
|
6446
6331
|
children: [
|
|
6447
|
-
/* @__PURE__ */
|
|
6448
|
-
/* @__PURE__ */
|
|
6449
|
-
/* @__PURE__ */
|
|
6450
|
-
|
|
6332
|
+
/* @__PURE__ */ jsx43("div", { style: { backgroundColor: "red" } }),
|
|
6333
|
+
/* @__PURE__ */ jsx43("div", { style: { color: "white", fontSize: "1rem" }, children: message }),
|
|
6334
|
+
/* @__PURE__ */ jsx43(
|
|
6335
|
+
Button6,
|
|
6451
6336
|
{
|
|
6452
6337
|
variant: "text",
|
|
6453
6338
|
onClick: () => {
|
|
@@ -6465,10 +6350,10 @@ WavelengthTestSnackbar.displayName = "WavelengthTestSnackbar";
|
|
|
6465
6350
|
// src/components/sliders/WavelengthSlider.tsx
|
|
6466
6351
|
import Box6 from "@mui/material/Box";
|
|
6467
6352
|
import Slider from "@mui/material/Slider";
|
|
6468
|
-
import { jsx as
|
|
6353
|
+
import { jsx as jsx44 } from "react/jsx-runtime";
|
|
6469
6354
|
function WavelengthSlider({ width: width2 = "300px", color: color2, valueDisplayed, marks, labelColor, value, id, maxVal = 100, minVal, step = 1, labelFunc, handleChange }) {
|
|
6470
6355
|
const on = valueDisplayed ? "on" : "off";
|
|
6471
|
-
return /* @__PURE__ */
|
|
6356
|
+
return /* @__PURE__ */ jsx44(Box6, { sx: { width: width2 }, children: /* @__PURE__ */ jsx44(
|
|
6472
6357
|
Slider,
|
|
6473
6358
|
{
|
|
6474
6359
|
id,
|
|
@@ -6493,8 +6378,8 @@ function WavelengthSlider({ width: width2 = "300px", color: color2, valueDisplay
|
|
|
6493
6378
|
WavelengthSlider.displayName = "WavelengthSlider";
|
|
6494
6379
|
|
|
6495
6380
|
// src/components/carousels/WavelengthDefaultCarousel.tsx
|
|
6496
|
-
import { useState as
|
|
6497
|
-
import
|
|
6381
|
+
import { useState as useState7 } from "react";
|
|
6382
|
+
import IconButton6 from "@mui/material/IconButton";
|
|
6498
6383
|
import NavigateBeforeIcon from "@mui/icons-material/NavigateBefore";
|
|
6499
6384
|
import NavigateNextIcon from "@mui/icons-material/NavigateNext";
|
|
6500
6385
|
import Typography4 from "@mui/material/Typography";
|
|
@@ -6503,9 +6388,9 @@ import Card from "@mui/material/Card";
|
|
|
6503
6388
|
import CardContent from "@mui/material/CardContent";
|
|
6504
6389
|
import CardMedia from "@mui/material/CardMedia";
|
|
6505
6390
|
import CardActionArea from "@mui/material/CardActionArea";
|
|
6506
|
-
import { jsx as
|
|
6391
|
+
import { jsx as jsx45, jsxs as jsxs25 } from "react/jsx-runtime";
|
|
6507
6392
|
var DefaultCarousel = ({ items, buttonSize, imageHeight, imageWidth, cardHeight, cardWidth, id, name }) => {
|
|
6508
|
-
const [currentIndex, setCurrentIndex] =
|
|
6393
|
+
const [currentIndex, setCurrentIndex] = useState7(0);
|
|
6509
6394
|
const adjustButtonSize = buttonSize !== void 0 ? buttonSize : 70;
|
|
6510
6395
|
const adjustImageHeight = imageHeight !== void 0 ? imageHeight : 250;
|
|
6511
6396
|
const adjustImageWidth = imageWidth !== void 0 ? imageWidth : 300;
|
|
@@ -6520,7 +6405,7 @@ var DefaultCarousel = ({ items, buttonSize, imageHeight, imageWidth, cardHeight,
|
|
|
6520
6405
|
const handleClick = () => {
|
|
6521
6406
|
window.open(items[currentIndex].path, "_blank");
|
|
6522
6407
|
};
|
|
6523
|
-
return /* @__PURE__ */
|
|
6408
|
+
return /* @__PURE__ */ jsx45("div", { children: /* @__PURE__ */ jsx45("div", { children: /* @__PURE__ */ jsxs25(
|
|
6524
6409
|
Grid3,
|
|
6525
6410
|
{
|
|
6526
6411
|
container: true,
|
|
@@ -6529,417 +6414,118 @@ var DefaultCarousel = ({ items, buttonSize, imageHeight, imageWidth, cardHeight,
|
|
|
6529
6414
|
alignItems: "center"
|
|
6530
6415
|
},
|
|
6531
6416
|
children: [
|
|
6532
|
-
/* @__PURE__ */
|
|
6533
|
-
/* @__PURE__ */
|
|
6417
|
+
/* @__PURE__ */ jsx45("div", { children: /* @__PURE__ */ jsx45(IconButton6, { onClick: handlePrev, sx: { margin: 1, color: "white" }, children: /* @__PURE__ */ jsx45(NavigateBeforeIcon, { style: { fontSize: adjustButtonSize } }) }) }),
|
|
6418
|
+
/* @__PURE__ */ jsx45(
|
|
6534
6419
|
Card,
|
|
6535
6420
|
{
|
|
6536
6421
|
sx: {
|
|
6537
6422
|
maxWidth: adjustCardWidth,
|
|
6538
6423
|
maxHeight: adjustCardHeight
|
|
6539
6424
|
},
|
|
6540
|
-
children: /* @__PURE__ */
|
|
6541
|
-
/* @__PURE__ */
|
|
6542
|
-
/* @__PURE__ */
|
|
6543
|
-
/* @__PURE__ */
|
|
6544
|
-
/* @__PURE__ */
|
|
6425
|
+
children: /* @__PURE__ */ jsxs25(CardActionArea, { onClick: handleClick, children: [
|
|
6426
|
+
/* @__PURE__ */ jsx45(CardMedia, { sx: { height: adjustImageHeight, width: adjustImageWidth }, image: items[currentIndex].image }),
|
|
6427
|
+
/* @__PURE__ */ jsxs25(CardContent, { children: [
|
|
6428
|
+
/* @__PURE__ */ jsx45(Typography4, { variant: "h4", children: items[currentIndex].title }),
|
|
6429
|
+
/* @__PURE__ */ jsx45(Typography4, { variant: "body1", children: items[currentIndex].description })
|
|
6545
6430
|
] })
|
|
6546
6431
|
] })
|
|
6547
6432
|
}
|
|
6548
6433
|
),
|
|
6549
|
-
/* @__PURE__ */
|
|
6434
|
+
/* @__PURE__ */ jsx45("div", { children: /* @__PURE__ */ jsx45(IconButton6, { onClick: handleNext, sx: { margin: 1, color: "white" }, children: /* @__PURE__ */ jsx45(NavigateNextIcon, { style: { fontSize: adjustButtonSize } }) }) })
|
|
6550
6435
|
]
|
|
6551
6436
|
}
|
|
6552
|
-
) }) });
|
|
6553
|
-
};
|
|
6554
|
-
DefaultCarousel.displayName = "DefaultCarousel";
|
|
6555
|
-
|
|
6556
|
-
// src/components/carousels/WavelengthSliderCarousel.tsx
|
|
6557
|
-
import { useState as
|
|
6558
|
-
import Grid4 from "@mui/material/Grid";
|
|
6559
|
-
import Card2 from "@mui/material/Card";
|
|
6560
|
-
import CardContent2 from "@mui/material/CardContent";
|
|
6561
|
-
import CardMedia2 from "@mui/material/CardMedia";
|
|
6562
|
-
import CardActionArea2 from "@mui/material/CardActionArea";
|
|
6563
|
-
import { jsx as
|
|
6564
|
-
var delay = 2500;
|
|
6565
|
-
var SliderCardCarousel = ({ items, cardHeight, cardWidth, contHeight, contWidth }) => {
|
|
6566
|
-
const [index, setIndex] =
|
|
6567
|
-
const [isHovered, setIsHovered] =
|
|
6568
|
-
|
|
6569
|
-
setTimeout(() => setIndex((prevIndex) => prevIndex === items.length - 1 ? 0 : prevIndex + 1), delay);
|
|
6570
|
-
return () => {
|
|
6571
|
-
};
|
|
6572
|
-
}, [index]);
|
|
6573
|
-
const carouselCardWidth = items.length > 0 ? `calc(35% * ${items.length})` : "200%";
|
|
6574
|
-
const adjustContHeight = contHeight !== void 0 ? contHeight : "100%";
|
|
6575
|
-
const adjustContWidth = contWidth !== void 0 ? contWidth : "200%";
|
|
6576
|
-
const adjustCardHeight = cardHeight !== void 0 ? cardHeight : 120;
|
|
6577
|
-
const adjustCardWith = cardWidth !== void 0 ? cardWidth : 310;
|
|
6578
|
-
const styles = {
|
|
6579
|
-
carouselcontainer: {
|
|
6580
|
-
overflow: "hidden",
|
|
6581
|
-
position: "relative",
|
|
6582
|
-
borderColor: "#4b5563",
|
|
6583
|
-
height: adjustContHeight,
|
|
6584
|
-
width: adjustContWidth,
|
|
6585
|
-
minHeight: "280px",
|
|
6586
|
-
minWidth: "640px",
|
|
6587
|
-
borderRadius: "10px"
|
|
6588
|
-
},
|
|
6589
|
-
carouselTrackStyle: {
|
|
6590
|
-
display: "flex",
|
|
6591
|
-
position: "relative",
|
|
6592
|
-
justifyContent: "center",
|
|
6593
|
-
left: "0",
|
|
6594
|
-
alignItems: "center",
|
|
6595
|
-
gap: "5px",
|
|
6596
|
-
width: carouselCardWidth,
|
|
6597
|
-
height: "100%",
|
|
6598
|
-
transition: "background-color 0.5s ease-in-out"
|
|
6599
|
-
},
|
|
6600
|
-
carouselCard: {
|
|
6601
|
-
transition: "transform 0.3s ease, box-shadow 0.3s ease",
|
|
6602
|
-
transform: isHovered ? "scale(0.9)" : "scale(1)",
|
|
6603
|
-
boxShadow: isHovered ? "5px 5px 8px rgba(222, 222, 222, 0.362), 10px 10px 8px rgba(152, 133, 133, 0.392), 15px 15px 8px rgba(139, 154, 139, 0.303)" : "none"
|
|
6604
|
-
}
|
|
6605
|
-
};
|
|
6606
|
-
return /* @__PURE__ */ jsx42("div", { style: styles.carouselcontainer, children: /* @__PURE__ */ jsx42("div", { className: "my-animation", style: styles.carouselTrackStyle, children: /* @__PURE__ */ jsx42(
|
|
6607
|
-
Grid4,
|
|
6608
|
-
{
|
|
6609
|
-
sx: {
|
|
6610
|
-
display: "flex",
|
|
6611
|
-
justifyContent: "center",
|
|
6612
|
-
alignItems: "center"
|
|
6613
|
-
},
|
|
6614
|
-
container: true,
|
|
6615
|
-
spacing: 0.5,
|
|
6616
|
-
children: items.map((card) => /* @__PURE__ */ jsx42("div", { children: /* @__PURE__ */ jsx42(
|
|
6617
|
-
Card2,
|
|
6618
|
-
{
|
|
6619
|
-
sx: {
|
|
6620
|
-
transition: "transform 0.3s ease, box-shadow 0.3s ease",
|
|
6621
|
-
transform: isHovered ? "scale(0.9)" : "scale(1)",
|
|
6622
|
-
boxShadow: isHovered ? "5px 5px 8px rgba(222, 222, 222, 0.362), 10px 10px 8px rgba(152, 133, 133, 0.392), 15px 15px 8px rgba(139, 154, 139, 0.303)" : "none"
|
|
6623
|
-
},
|
|
6624
|
-
onMouseEnter: () => setIsHovered(true),
|
|
6625
|
-
onMouseLeave: () => setIsHovered(false),
|
|
6626
|
-
children: /* @__PURE__ */ jsxs24(CardActionArea2, { href: card.path, children: [
|
|
6627
|
-
/* @__PURE__ */ jsx42(CardMedia2, { sx: { height: adjustCardHeight, width: adjustCardWith }, image: card.image }),
|
|
6628
|
-
/* @__PURE__ */ jsxs24(CardContent2, { children: [
|
|
6629
|
-
/* @__PURE__ */ jsx42("h3", { children: card.title }),
|
|
6630
|
-
/* @__PURE__ */ jsx42("p", { children: card.description })
|
|
6631
|
-
] })
|
|
6632
|
-
] })
|
|
6633
|
-
}
|
|
6634
|
-
) }, card.title))
|
|
6635
|
-
}
|
|
6636
|
-
) }) });
|
|
6637
|
-
};
|
|
6638
|
-
SliderCardCarousel.displayName = "SliderCardCarousel";
|
|
6639
|
-
|
|
6640
|
-
// src/components/pagination/WavelengthDefaultPagination.tsx
|
|
6641
|
-
import { useState as useState8, useMemo } from "react";
|
|
6642
|
-
|
|
6643
|
-
// src/components/pagination/WavelengthButtonPagination.tsx
|
|
6644
|
-
import { useState as useState6 } from "react";
|
|
6645
|
-
import Button5 from "@mui/material/Button";
|
|
6646
|
-
import ArrowBackIosNewIcon from "@mui/icons-material/ArrowBackIosNew";
|
|
6647
|
-
import ArrowForwardIosIcon from "@mui/icons-material/ArrowForwardIos";
|
|
6648
|
-
import styled7 from "styled-components";
|
|
6649
|
-
import { jsx as jsx43, jsxs as jsxs25 } from "react/jsx-runtime";
|
|
6650
|
-
var MyDroplistItems = styled7("li")`
|
|
6651
|
-
background-color: white;
|
|
6652
|
-
color: #000000;
|
|
6653
|
-
padding: 10px 30px;
|
|
6654
|
-
textdecoration: none;
|
|
6655
|
-
display: block;
|
|
6656
|
-
width: 80px;
|
|
6657
|
-
|
|
6658
|
-
&:hover {
|
|
6659
|
-
background-color: lightgray;
|
|
6660
|
-
}
|
|
6661
|
-
`;
|
|
6662
|
-
function WavelengthButtonPagination({ totalPages, current, handleChangePage, itemList, firstEllipseList, secondEllipseList, id }) {
|
|
6663
|
-
const [isOpen, setIsOpen] = useState6(false);
|
|
6664
|
-
const [isSecOpen, setIsSecOpen] = useState6(false);
|
|
6665
|
-
const toggleDropdown = (index) => {
|
|
6666
|
-
if (index === 1) {
|
|
6667
|
-
setIsOpen(!isOpen);
|
|
6668
|
-
} else {
|
|
6669
|
-
setIsSecOpen(!isSecOpen);
|
|
6670
|
-
}
|
|
6671
|
-
};
|
|
6672
|
-
const dropstyles = {
|
|
6673
|
-
dropcenter: { position: "relative", left: "-40px", top: "-20px" },
|
|
6674
|
-
mydrop: { position: "absolute", zIndex: "3", maxHeight: "200px", overflow: "scroll" },
|
|
6675
|
-
rangenumbers: { display: "flex" },
|
|
6676
|
-
butPagCompDivStyle: { display: "flex" }
|
|
6677
|
-
};
|
|
6678
|
-
const WLButtonPagStyle = {
|
|
6679
|
-
background: "white",
|
|
6680
|
-
color: "black",
|
|
6681
|
-
border: "none",
|
|
6682
|
-
padding: "1px",
|
|
6683
|
-
fontSize: "16px",
|
|
6684
|
-
height: "55px",
|
|
6685
|
-
width: "40px",
|
|
6686
|
-
boxshadow: "4px 2px 4px darkslategray",
|
|
6687
|
-
borderRadius: "50%",
|
|
6688
|
-
margin: "3px",
|
|
6689
|
-
"&:hover": { background: "#49baf7" },
|
|
6690
|
-
"&:disabled": { background: "rgb(226, 223, 223)" },
|
|
6691
|
-
"&.active": { background: "#8FD8FF" }
|
|
6692
|
-
};
|
|
6693
|
-
return /* @__PURE__ */ jsxs25("div", { style: dropstyles.butPagCompDivStyle, id, children: [
|
|
6694
|
-
/* @__PURE__ */ jsx43(Button5, { onClick: () => handleChangePage(current - 1), disabled: current === 1, sx: WLButtonPagStyle, children: /* @__PURE__ */ jsx43(ArrowBackIosNewIcon, {}) }),
|
|
6695
|
-
/* @__PURE__ */ jsx43("section", { style: dropstyles.rangenumbers, children: itemList.map(
|
|
6696
|
-
(item, index) => item === "..." && index === 1 ? (
|
|
6697
|
-
//first half ellipse with first half dropdown
|
|
6698
|
-
// dropdown
|
|
6699
|
-
// eslint-disable-next-line react/jsx-key
|
|
6700
|
-
/* @__PURE__ */ jsxs25("div", { children: [
|
|
6701
|
-
/* @__PURE__ */ jsx43(Button5, { onClick: () => toggleDropdown(1), className: current === index ? "active" : "", sx: WLButtonPagStyle, children: item }, index),
|
|
6702
|
-
isOpen && /* @__PURE__ */ jsx43("div", { style: dropstyles.dropcenter, children: /* @__PURE__ */ jsx43("ul", { style: dropstyles.mydrop, children: firstEllipseList.map((item2) => /* @__PURE__ */ jsx43(
|
|
6703
|
-
MyDroplistItems,
|
|
6704
|
-
{
|
|
6705
|
-
onClick: () => {
|
|
6706
|
-
handleChangePage(item2), setIsOpen(false);
|
|
6707
|
-
},
|
|
6708
|
-
children: item2
|
|
6709
|
-
},
|
|
6710
|
-
item2
|
|
6711
|
-
)) }) })
|
|
6712
|
-
] })
|
|
6713
|
-
) : item === "..." && index === 5 ? (
|
|
6714
|
-
//second half ellipse with second half dropdown
|
|
6715
|
-
/* @__PURE__ */ jsxs25("div", { children: [
|
|
6716
|
-
/* @__PURE__ */ jsx43(Button5, { onClick: () => toggleDropdown(5), className: current === index ? "active" : "", sx: WLButtonPagStyle, children: item }, index),
|
|
6717
|
-
isSecOpen && /* @__PURE__ */ jsx43("div", { style: dropstyles.dropcenter, children: /* @__PURE__ */ jsx43("ul", { style: dropstyles.mydrop, children: secondEllipseList.map((item2) => /* @__PURE__ */ jsx43(
|
|
6718
|
-
MyDroplistItems,
|
|
6719
|
-
{
|
|
6720
|
-
onClick: () => {
|
|
6721
|
-
handleChangePage(item2), setIsOpen(false);
|
|
6722
|
-
},
|
|
6723
|
-
children: item2
|
|
6724
|
-
},
|
|
6725
|
-
item2
|
|
6726
|
-
)) }) })
|
|
6727
|
-
] })
|
|
6728
|
-
) : /* @__PURE__ */ jsx43(Button5, { onClick: () => handleChangePage(item), className: current === item ? "active" : "", sx: WLButtonPagStyle, children: item }, index)
|
|
6729
|
-
) }),
|
|
6730
|
-
/* @__PURE__ */ jsx43(Button5, { onClick: () => handleChangePage(current + 1), disabled: current === totalPages, sx: WLButtonPagStyle, children: /* @__PURE__ */ jsx43(ArrowForwardIosIcon, {}) })
|
|
6731
|
-
] });
|
|
6732
|
-
}
|
|
6733
|
-
WavelengthButtonPagination.displayName = "WavelengthButtonPagination";
|
|
6734
|
-
var WavelengthButtonPagination_default = WavelengthButtonPagination;
|
|
6735
|
-
|
|
6736
|
-
// src/components/pagination/WavelengthVariationPagination.tsx
|
|
6737
|
-
import { useState as useState7 } from "react";
|
|
6738
|
-
import Button6 from "@mui/material/Button";
|
|
6739
|
-
import ArrowBackIosNewIcon2 from "@mui/icons-material/ArrowBackIosNew";
|
|
6740
|
-
import ArrowForwardIosIcon2 from "@mui/icons-material/ArrowForwardIos";
|
|
6741
|
-
import styled8 from "styled-components";
|
|
6742
|
-
import { jsx as jsx44, jsxs as jsxs26 } from "react/jsx-runtime";
|
|
6743
|
-
function WavelengthVariationPagination({ totalPages, current, variant, handleChangePage, itemList, firstEllipseList, secondEllipseList, id }) {
|
|
6744
|
-
const [isOpen, setIsOpen] = useState7(false);
|
|
6745
|
-
const [isSecOpen, setIsSecOpen] = useState7(false);
|
|
6746
|
-
const MyDroplistItems2 = styled8("li")`
|
|
6747
|
-
background-color: white;
|
|
6748
|
-
color: #000000;
|
|
6749
|
-
padding: 10px 30px;
|
|
6750
|
-
textdecoration: none;
|
|
6751
|
-
display: block;
|
|
6752
|
-
width: 80px;
|
|
6753
|
-
|
|
6754
|
-
&:hover {
|
|
6755
|
-
background-color: lightgray;
|
|
6756
|
-
}
|
|
6757
|
-
`;
|
|
6758
|
-
const dropstyles = {
|
|
6759
|
-
pagination: {
|
|
6760
|
-
display: "flex"
|
|
6761
|
-
},
|
|
6762
|
-
dropcenter: {
|
|
6437
|
+
) }) });
|
|
6438
|
+
};
|
|
6439
|
+
DefaultCarousel.displayName = "DefaultCarousel";
|
|
6440
|
+
|
|
6441
|
+
// src/components/carousels/WavelengthSliderCarousel.tsx
|
|
6442
|
+
import { useState as useState8, useEffect as useEffect18 } from "react";
|
|
6443
|
+
import Grid4 from "@mui/material/Grid";
|
|
6444
|
+
import Card2 from "@mui/material/Card";
|
|
6445
|
+
import CardContent2 from "@mui/material/CardContent";
|
|
6446
|
+
import CardMedia2 from "@mui/material/CardMedia";
|
|
6447
|
+
import CardActionArea2 from "@mui/material/CardActionArea";
|
|
6448
|
+
import { jsx as jsx46, jsxs as jsxs26 } from "react/jsx-runtime";
|
|
6449
|
+
var delay = 2500;
|
|
6450
|
+
var SliderCardCarousel = ({ items, cardHeight, cardWidth, contHeight, contWidth }) => {
|
|
6451
|
+
const [index, setIndex] = useState8(0);
|
|
6452
|
+
const [isHovered, setIsHovered] = useState8(false);
|
|
6453
|
+
useEffect18(() => {
|
|
6454
|
+
setTimeout(() => setIndex((prevIndex) => prevIndex === items.length - 1 ? 0 : prevIndex + 1), delay);
|
|
6455
|
+
return () => {
|
|
6456
|
+
};
|
|
6457
|
+
}, [index]);
|
|
6458
|
+
const carouselCardWidth = items.length > 0 ? `calc(35% * ${items.length})` : "200%";
|
|
6459
|
+
const adjustContHeight = contHeight !== void 0 ? contHeight : "100%";
|
|
6460
|
+
const adjustContWidth = contWidth !== void 0 ? contWidth : "200%";
|
|
6461
|
+
const adjustCardHeight = cardHeight !== void 0 ? cardHeight : 120;
|
|
6462
|
+
const adjustCardWith = cardWidth !== void 0 ? cardWidth : 310;
|
|
6463
|
+
const styles = {
|
|
6464
|
+
carouselcontainer: {
|
|
6465
|
+
overflow: "hidden",
|
|
6763
6466
|
position: "relative",
|
|
6764
|
-
|
|
6765
|
-
|
|
6467
|
+
borderColor: "#4b5563",
|
|
6468
|
+
height: adjustContHeight,
|
|
6469
|
+
width: adjustContWidth,
|
|
6470
|
+
minHeight: "280px",
|
|
6471
|
+
minWidth: "640px",
|
|
6472
|
+
borderRadius: "10px"
|
|
6766
6473
|
},
|
|
6767
|
-
|
|
6768
|
-
|
|
6769
|
-
|
|
6770
|
-
|
|
6771
|
-
|
|
6474
|
+
carouselTrackStyle: {
|
|
6475
|
+
display: "flex",
|
|
6476
|
+
position: "relative",
|
|
6477
|
+
justifyContent: "center",
|
|
6478
|
+
left: "0",
|
|
6479
|
+
alignItems: "center",
|
|
6480
|
+
gap: "5px",
|
|
6481
|
+
width: carouselCardWidth,
|
|
6482
|
+
height: "100%",
|
|
6483
|
+
transition: "background-color 0.5s ease-in-out"
|
|
6772
6484
|
},
|
|
6773
|
-
|
|
6774
|
-
|
|
6485
|
+
carouselCard: {
|
|
6486
|
+
transition: "transform 0.3s ease, box-shadow 0.3s ease",
|
|
6487
|
+
transform: isHovered ? "scale(0.9)" : "scale(1)",
|
|
6488
|
+
boxShadow: isHovered ? "5px 5px 8px rgba(222, 222, 222, 0.362), 10px 10px 8px rgba(152, 133, 133, 0.392), 15px 15px 8px rgba(139, 154, 139, 0.303)" : "none"
|
|
6775
6489
|
}
|
|
6776
6490
|
};
|
|
6777
|
-
|
|
6778
|
-
|
|
6779
|
-
|
|
6780
|
-
|
|
6781
|
-
|
|
6491
|
+
return /* @__PURE__ */ jsx46("div", { style: styles.carouselcontainer, children: /* @__PURE__ */ jsx46("div", { className: "my-animation", style: styles.carouselTrackStyle, children: /* @__PURE__ */ jsx46(
|
|
6492
|
+
Grid4,
|
|
6493
|
+
{
|
|
6494
|
+
sx: {
|
|
6495
|
+
display: "flex",
|
|
6496
|
+
justifyContent: "center",
|
|
6497
|
+
alignItems: "center"
|
|
6498
|
+
},
|
|
6499
|
+
container: true,
|
|
6500
|
+
spacing: 0.5,
|
|
6501
|
+
children: items.map((card) => /* @__PURE__ */ jsx46("div", { children: /* @__PURE__ */ jsx46(
|
|
6502
|
+
Card2,
|
|
6503
|
+
{
|
|
6504
|
+
sx: {
|
|
6505
|
+
transition: "transform 0.3s ease, box-shadow 0.3s ease",
|
|
6506
|
+
transform: isHovered ? "scale(0.9)" : "scale(1)",
|
|
6507
|
+
boxShadow: isHovered ? "5px 5px 8px rgba(222, 222, 222, 0.362), 10px 10px 8px rgba(152, 133, 133, 0.392), 15px 15px 8px rgba(139, 154, 139, 0.303)" : "none"
|
|
6508
|
+
},
|
|
6509
|
+
onMouseEnter: () => setIsHovered(true),
|
|
6510
|
+
onMouseLeave: () => setIsHovered(false),
|
|
6511
|
+
children: /* @__PURE__ */ jsxs26(CardActionArea2, { href: card.path, children: [
|
|
6512
|
+
/* @__PURE__ */ jsx46(CardMedia2, { sx: { height: adjustCardHeight, width: adjustCardWith }, image: card.image }),
|
|
6513
|
+
/* @__PURE__ */ jsxs26(CardContent2, { children: [
|
|
6514
|
+
/* @__PURE__ */ jsx46("h3", { children: card.title }),
|
|
6515
|
+
/* @__PURE__ */ jsx46("p", { children: card.description })
|
|
6516
|
+
] })
|
|
6517
|
+
] })
|
|
6518
|
+
}
|
|
6519
|
+
) }, card.title))
|
|
6782
6520
|
}
|
|
6783
|
-
};
|
|
6784
|
-
return /* @__PURE__ */ jsxs26("div", { style: dropstyles.pagination, id, children: [
|
|
6785
|
-
/* @__PURE__ */ jsx44(Button6, { onClick: () => handleChangePage(current - 1), variant, disabled: current === 1, children: /* @__PURE__ */ jsx44(ArrowBackIosNewIcon2, {}) }),
|
|
6786
|
-
/* @__PURE__ */ jsx44("section", { style: dropstyles.rangenumbers, children: itemList.map(
|
|
6787
|
-
(item, index) => item === "..." && index === 1 ? (
|
|
6788
|
-
//first half ellipse with first half dropdown
|
|
6789
|
-
// eslint-disable-next-line react/jsx-key
|
|
6790
|
-
/* @__PURE__ */ jsxs26("div", { children: [
|
|
6791
|
-
/* @__PURE__ */ jsx44(Button6, { onClick: () => toggleDropdown(1), variant, className: current === index ? "active" : "", children: item }, index),
|
|
6792
|
-
isOpen && /* @__PURE__ */ jsx44("div", { style: dropstyles.dropcenter, children: /* @__PURE__ */ jsx44("ul", { style: dropstyles.mydrop, children: firstEllipseList.map((item2) => /* @__PURE__ */ jsx44(
|
|
6793
|
-
MyDroplistItems2,
|
|
6794
|
-
{
|
|
6795
|
-
style: dropstyles.mydroplist,
|
|
6796
|
-
onClick: () => {
|
|
6797
|
-
handleChangePage(item2), setIsOpen(false);
|
|
6798
|
-
},
|
|
6799
|
-
children: item2
|
|
6800
|
-
},
|
|
6801
|
-
item2
|
|
6802
|
-
)) }) })
|
|
6803
|
-
] })
|
|
6804
|
-
) : item === "..." && index === 5 ? (
|
|
6805
|
-
//second half ellipse with second half dropdown
|
|
6806
|
-
/* @__PURE__ */ jsxs26("div", { children: [
|
|
6807
|
-
/* @__PURE__ */ jsx44(Button6, { onClick: () => toggleDropdown(5), variant, className: current === index ? "active" : "", children: item }, index),
|
|
6808
|
-
isSecOpen && /* @__PURE__ */ jsx44("div", { style: dropstyles.dropcenter, children: /* @__PURE__ */ jsx44("ul", { style: dropstyles.mydrop, children: secondEllipseList.map((item2) => /* @__PURE__ */ jsx44(
|
|
6809
|
-
MyDroplistItems2,
|
|
6810
|
-
{
|
|
6811
|
-
style: dropstyles.mydroplist,
|
|
6812
|
-
onClick: () => {
|
|
6813
|
-
handleChangePage(item2), setIsOpen(false);
|
|
6814
|
-
},
|
|
6815
|
-
children: item2
|
|
6816
|
-
},
|
|
6817
|
-
item2
|
|
6818
|
-
)) }) })
|
|
6819
|
-
] })
|
|
6820
|
-
) : /* @__PURE__ */ jsx44(Button6, { onClick: () => handleChangePage(item), className: current === item ? "active" : "", variant, children: item }, index)
|
|
6821
|
-
) }),
|
|
6822
|
-
/* @__PURE__ */ jsx44(Button6, { onClick: () => handleChangePage(current + 1), disabled: current === totalPages, variant, children: /* @__PURE__ */ jsx44(ArrowForwardIosIcon2, {}) })
|
|
6823
|
-
] });
|
|
6824
|
-
}
|
|
6825
|
-
WavelengthVariationPagination.displayName = "WavelengthVariationPagination";
|
|
6826
|
-
var WavelengthVariationPagination_default = WavelengthVariationPagination;
|
|
6827
|
-
|
|
6828
|
-
// src/components/pagination/WavelengthDefaultPagination.tsx
|
|
6829
|
-
import { jsx as jsx45 } from "react/jsx-runtime";
|
|
6830
|
-
var range = (start, end) => {
|
|
6831
|
-
const length = end - start + 1;
|
|
6832
|
-
return Array.from({ length }, (_, i) => start + i);
|
|
6521
|
+
) }) });
|
|
6833
6522
|
};
|
|
6834
|
-
|
|
6835
|
-
const result = [];
|
|
6836
|
-
for (let i = start; i < end; i++) {
|
|
6837
|
-
if (i !== start) {
|
|
6838
|
-
result.push(i);
|
|
6839
|
-
}
|
|
6840
|
-
}
|
|
6841
|
-
return result;
|
|
6842
|
-
}
|
|
6843
|
-
function WavelengthDefaultPagination({ totalPages, currentPageNumber, siblingCount = 1, boundaryCount = 1, style: style3, onPageChange, id }) {
|
|
6844
|
-
const [current, setCurrent] = useState8(currentPageNumber);
|
|
6845
|
-
const startPages = range(1, Math.min(boundaryCount, totalPages));
|
|
6846
|
-
const endPages = range(Math.max(totalPages - boundaryCount + 1, boundaryCount + 1), totalPages);
|
|
6847
|
-
const siblingsStart = Math.max(Math.min(current - siblingCount, totalPages - boundaryCount - siblingCount * 2 - 1), boundaryCount + 2);
|
|
6848
|
-
const siblingsEnd = Math.min(Math.max(current + siblingCount, boundaryCount + siblingCount * 2 + 2), endPages.length > 0 ? endPages[0] - 2 : totalPages - 1);
|
|
6849
|
-
const firstEllipseList = ascendingRange(1, siblingsStart);
|
|
6850
|
-
const secondEllipseList = ascendingRange(siblingsEnd, totalPages);
|
|
6851
|
-
const itemList = useMemo(() => {
|
|
6852
|
-
return [
|
|
6853
|
-
...startPages,
|
|
6854
|
-
...siblingsStart > boundaryCount + 2 ? ["..."] : boundaryCount + 1 < totalPages - boundaryCount ? [boundaryCount + 1] : [],
|
|
6855
|
-
...range(siblingsStart, siblingsEnd),
|
|
6856
|
-
...siblingsEnd < totalPages - boundaryCount - 1 ? ["..."] : totalPages - boundaryCount > boundaryCount ? [totalPages - boundaryCount] : [],
|
|
6857
|
-
...endPages
|
|
6858
|
-
];
|
|
6859
|
-
}, [current, totalPages, boundaryCount, siblingCount, id]);
|
|
6860
|
-
const handleChangePage = (value) => {
|
|
6861
|
-
if (typeof value === "number") {
|
|
6862
|
-
setCurrent(value);
|
|
6863
|
-
onPageChange(value);
|
|
6864
|
-
}
|
|
6865
|
-
};
|
|
6866
|
-
if (style3 === "circular") {
|
|
6867
|
-
return /* @__PURE__ */ jsx45(
|
|
6868
|
-
WavelengthButtonPagination_default,
|
|
6869
|
-
{
|
|
6870
|
-
id,
|
|
6871
|
-
totalPages,
|
|
6872
|
-
current,
|
|
6873
|
-
handleChangePage,
|
|
6874
|
-
itemList,
|
|
6875
|
-
firstEllipseList,
|
|
6876
|
-
secondEllipseList
|
|
6877
|
-
}
|
|
6878
|
-
);
|
|
6879
|
-
} else if (style3 === "text") {
|
|
6880
|
-
return /* @__PURE__ */ jsx45(
|
|
6881
|
-
WavelengthVariationPagination_default,
|
|
6882
|
-
{
|
|
6883
|
-
id,
|
|
6884
|
-
totalPages,
|
|
6885
|
-
current,
|
|
6886
|
-
variant: "text",
|
|
6887
|
-
handleChangePage,
|
|
6888
|
-
itemList,
|
|
6889
|
-
firstEllipseList,
|
|
6890
|
-
secondEllipseList
|
|
6891
|
-
}
|
|
6892
|
-
);
|
|
6893
|
-
} else if (style3 === "outlined") {
|
|
6894
|
-
return /* @__PURE__ */ jsx45(
|
|
6895
|
-
WavelengthVariationPagination_default,
|
|
6896
|
-
{
|
|
6897
|
-
id,
|
|
6898
|
-
totalPages,
|
|
6899
|
-
current,
|
|
6900
|
-
variant: "outlined",
|
|
6901
|
-
handleChangePage,
|
|
6902
|
-
itemList,
|
|
6903
|
-
firstEllipseList,
|
|
6904
|
-
secondEllipseList
|
|
6905
|
-
}
|
|
6906
|
-
);
|
|
6907
|
-
} else if (style3 === "contained") {
|
|
6908
|
-
return /* @__PURE__ */ jsx45(
|
|
6909
|
-
WavelengthVariationPagination_default,
|
|
6910
|
-
{
|
|
6911
|
-
id,
|
|
6912
|
-
totalPages,
|
|
6913
|
-
current,
|
|
6914
|
-
variant: "contained",
|
|
6915
|
-
handleChangePage,
|
|
6916
|
-
itemList,
|
|
6917
|
-
firstEllipseList,
|
|
6918
|
-
secondEllipseList
|
|
6919
|
-
}
|
|
6920
|
-
);
|
|
6921
|
-
} else {
|
|
6922
|
-
return /* @__PURE__ */ jsx45(
|
|
6923
|
-
WavelengthVariationPagination_default,
|
|
6924
|
-
{
|
|
6925
|
-
id,
|
|
6926
|
-
totalPages,
|
|
6927
|
-
current,
|
|
6928
|
-
handleChangePage,
|
|
6929
|
-
itemList,
|
|
6930
|
-
firstEllipseList,
|
|
6931
|
-
secondEllipseList
|
|
6932
|
-
}
|
|
6933
|
-
);
|
|
6934
|
-
}
|
|
6935
|
-
}
|
|
6936
|
-
WavelengthDefaultPagination.displayName = "WavelengthDefaultPagination";
|
|
6937
|
-
var WavelengthDefaultPagination_default = WavelengthDefaultPagination;
|
|
6523
|
+
SliderCardCarousel.displayName = "SliderCardCarousel";
|
|
6938
6524
|
|
|
6939
6525
|
// src/components/TextField/WavelengthInput.tsx
|
|
6940
|
-
import { useRef as
|
|
6526
|
+
import { useRef as useRef17, useEffect as useEffect19, forwardRef as forwardRef2, useImperativeHandle as useImperativeHandle3 } from "react";
|
|
6941
6527
|
import "@wavelengthusaf/web-components";
|
|
6942
|
-
import { jsx as
|
|
6528
|
+
import { jsx as jsx47 } from "react/jsx-runtime";
|
|
6943
6529
|
var WavelengthInput = forwardRef2(
|
|
6944
6530
|
({
|
|
6945
6531
|
id,
|
|
@@ -6976,12 +6562,12 @@ var WavelengthInput = forwardRef2(
|
|
|
6976
6562
|
onBlurCallback,
|
|
6977
6563
|
...rest
|
|
6978
6564
|
}, ref) => {
|
|
6979
|
-
const internalRef =
|
|
6565
|
+
const internalRef = useRef17(null);
|
|
6980
6566
|
useImperativeHandle3(ref, () => ({
|
|
6981
6567
|
...internalRef.current,
|
|
6982
6568
|
validate: () => internalRef.current?.validate?.(true)
|
|
6983
6569
|
}));
|
|
6984
|
-
|
|
6570
|
+
useEffect19(() => {
|
|
6985
6571
|
const el = internalRef.current;
|
|
6986
6572
|
if (!el) return;
|
|
6987
6573
|
const set = (attr, val) => {
|
|
@@ -7052,7 +6638,7 @@ var WavelengthInput = forwardRef2(
|
|
|
7052
6638
|
label,
|
|
7053
6639
|
disabled
|
|
7054
6640
|
]);
|
|
7055
|
-
|
|
6641
|
+
useEffect19(() => {
|
|
7056
6642
|
const el = internalRef.current;
|
|
7057
6643
|
if (!el || !onBlurCallback) return;
|
|
7058
6644
|
const handler = (e) => {
|
|
@@ -7064,7 +6650,7 @@ var WavelengthInput = forwardRef2(
|
|
|
7064
6650
|
el.addEventListener("blur", handler);
|
|
7065
6651
|
return () => el.removeEventListener("blur", handler);
|
|
7066
6652
|
}, [onBlurCallback]);
|
|
7067
|
-
|
|
6653
|
+
useEffect19(() => {
|
|
7068
6654
|
const el = internalRef.current;
|
|
7069
6655
|
if (!el || !onChange) return;
|
|
7070
6656
|
const handler = (e) => {
|
|
@@ -7085,7 +6671,7 @@ var WavelengthInput = forwardRef2(
|
|
|
7085
6671
|
...style3,
|
|
7086
6672
|
...backgroundColor2 ? { ["--wavelength-label-background"]: backgroundColor2 } : {}
|
|
7087
6673
|
};
|
|
7088
|
-
return /* @__PURE__ */
|
|
6674
|
+
return /* @__PURE__ */ jsx47("wavelength-input", { ref: internalRef, style: combinedStyle, ...rest });
|
|
7089
6675
|
}
|
|
7090
6676
|
);
|
|
7091
6677
|
WavelengthInput.displayName = "WavelengthInput";
|
|
@@ -7094,10 +6680,10 @@ WavelengthInput.displayName = "WavelengthInput";
|
|
|
7094
6680
|
import { WavelengthInput as WavelengthInput2 } from "@wavelengthusaf/web-components";
|
|
7095
6681
|
|
|
7096
6682
|
// src/components/DataTable/WavelengthDataTable.tsx
|
|
7097
|
-
import { useEffect as
|
|
7098
|
-
import
|
|
7099
|
-
import { jsx as
|
|
7100
|
-
var ModalInputDiv =
|
|
6683
|
+
import { useEffect as useEffect20, useRef as useRef18, useState as useState9 } from "react";
|
|
6684
|
+
import styled8 from "styled-components";
|
|
6685
|
+
import { jsx as jsx48, jsxs as jsxs27 } from "react/jsx-runtime";
|
|
6686
|
+
var ModalInputDiv = styled8.div`
|
|
7101
6687
|
display: flex;
|
|
7102
6688
|
flex-direction: column; /* Corrected this line */
|
|
7103
6689
|
gap: 3px;
|
|
@@ -7127,7 +6713,7 @@ var ModalInputDiv = styled9.div`
|
|
|
7127
6713
|
}
|
|
7128
6714
|
}
|
|
7129
6715
|
`;
|
|
7130
|
-
var ModalOverlay =
|
|
6716
|
+
var ModalOverlay = styled8.div`
|
|
7131
6717
|
position: fixed;
|
|
7132
6718
|
bottom: 19%;
|
|
7133
6719
|
right: 15%;
|
|
@@ -7139,7 +6725,7 @@ var ModalOverlay = styled9.div`
|
|
|
7139
6725
|
align-items: center;
|
|
7140
6726
|
z-index: 1;
|
|
7141
6727
|
`;
|
|
7142
|
-
var ModalWrapper =
|
|
6728
|
+
var ModalWrapper = styled8.div`
|
|
7143
6729
|
background-color: white;
|
|
7144
6730
|
border-radius: 8px;
|
|
7145
6731
|
padding: 20px;
|
|
@@ -7150,7 +6736,7 @@ var ModalWrapper = styled9.div`
|
|
|
7150
6736
|
display: flex;
|
|
7151
6737
|
align-items: center;
|
|
7152
6738
|
`;
|
|
7153
|
-
var ModalClose =
|
|
6739
|
+
var ModalClose = styled8.button`
|
|
7154
6740
|
position: absolute;
|
|
7155
6741
|
top: 10px;
|
|
7156
6742
|
right: 10px;
|
|
@@ -7160,16 +6746,16 @@ var ModalClose = styled9.button`
|
|
|
7160
6746
|
background: none;
|
|
7161
6747
|
z-index: 2;
|
|
7162
6748
|
`;
|
|
7163
|
-
var TableHeadStyle =
|
|
6749
|
+
var TableHeadStyle = styled8.th`
|
|
7164
6750
|
position: relative;
|
|
7165
6751
|
`;
|
|
7166
|
-
var KebabMenu =
|
|
6752
|
+
var KebabMenu = styled8.div`
|
|
7167
6753
|
display: inline-block;
|
|
7168
6754
|
position: absolute;
|
|
7169
6755
|
right: 0;
|
|
7170
6756
|
top: 2px;
|
|
7171
6757
|
`;
|
|
7172
|
-
var KebabIcon =
|
|
6758
|
+
var KebabIcon = styled8.div`
|
|
7173
6759
|
cursor: pointer;
|
|
7174
6760
|
font-size: 20px;
|
|
7175
6761
|
padding: 5px;
|
|
@@ -7182,7 +6768,7 @@ var KebabIcon = styled9.div`
|
|
|
7182
6768
|
color: #8fd8ff;
|
|
7183
6769
|
}
|
|
7184
6770
|
`;
|
|
7185
|
-
var MenuOptions =
|
|
6771
|
+
var MenuOptions = styled8.ul`
|
|
7186
6772
|
position: absolute;
|
|
7187
6773
|
right: 0;
|
|
7188
6774
|
top: 100%;
|
|
@@ -7205,7 +6791,7 @@ var MenuOptions = styled9.ul`
|
|
|
7205
6791
|
}
|
|
7206
6792
|
}
|
|
7207
6793
|
`;
|
|
7208
|
-
var StyledBoxDiv =
|
|
6794
|
+
var StyledBoxDiv = styled8.div`
|
|
7209
6795
|
background-color: white;
|
|
7210
6796
|
width: 700px;
|
|
7211
6797
|
height: 480px;
|
|
@@ -7213,7 +6799,7 @@ var StyledBoxDiv = styled9.div`
|
|
|
7213
6799
|
border-top-left-radius: 10px;
|
|
7214
6800
|
border-top-right-radius: 10px;
|
|
7215
6801
|
`;
|
|
7216
|
-
var StyledNavBoxDiv =
|
|
6802
|
+
var StyledNavBoxDiv = styled8.div`
|
|
7217
6803
|
background-color: white;
|
|
7218
6804
|
width: 700px;
|
|
7219
6805
|
display: flex; /* Make parent a flex-container */
|
|
@@ -7223,13 +6809,13 @@ var StyledNavBoxDiv = styled9.div`
|
|
|
7223
6809
|
|
|
7224
6810
|
box-shadow: 0.5px 3px 5px black;
|
|
7225
6811
|
`;
|
|
7226
|
-
var StyledTd =
|
|
6812
|
+
var StyledTd = styled8.td`
|
|
7227
6813
|
border-top: 1px solid #c6c7cc;
|
|
7228
6814
|
border-bottom: 1px solid #c6c7cc;
|
|
7229
6815
|
padding: 10px 15px;
|
|
7230
6816
|
vertical-align: middle;
|
|
7231
6817
|
`;
|
|
7232
|
-
var StyledTableTwo =
|
|
6818
|
+
var StyledTableTwo = styled8.table`
|
|
7233
6819
|
width: 95%;
|
|
7234
6820
|
height: 95%;
|
|
7235
6821
|
border-collapse: collapse;
|
|
@@ -7255,7 +6841,7 @@ var StyledTableTwo = styled9.table`
|
|
|
7255
6841
|
}
|
|
7256
6842
|
}
|
|
7257
6843
|
`;
|
|
7258
|
-
var StyledInput =
|
|
6844
|
+
var StyledInput = styled8.input`
|
|
7259
6845
|
height: 100%;
|
|
7260
6846
|
width: 100%;
|
|
7261
6847
|
outline: none;
|
|
@@ -7275,8 +6861,8 @@ var WavelengthDataTable = ({ data, columns, itemsPerPage, totalPages, id }) => {
|
|
|
7275
6861
|
const [currentPage, setCurrentPage] = useState9(1);
|
|
7276
6862
|
const [isOpen, setIsOpen] = useState9(false);
|
|
7277
6863
|
const [editingMenuKey, setEditingMenuKey] = useState9(null);
|
|
7278
|
-
const menuRef =
|
|
7279
|
-
const modalRef =
|
|
6864
|
+
const menuRef = useRef18(null);
|
|
6865
|
+
const modalRef = useRef18(null);
|
|
7280
6866
|
function isNumeric(value) {
|
|
7281
6867
|
return /^\d+$/.test(value);
|
|
7282
6868
|
}
|
|
@@ -7284,7 +6870,7 @@ var WavelengthDataTable = ({ data, columns, itemsPerPage, totalPages, id }) => {
|
|
|
7284
6870
|
setSelectedValue(event.target.value);
|
|
7285
6871
|
setLocalData(copiedArray);
|
|
7286
6872
|
};
|
|
7287
|
-
|
|
6873
|
+
useEffect20(() => {
|
|
7288
6874
|
if (!selectedValue || searchItem === "") {
|
|
7289
6875
|
setLocalData(copiedArray);
|
|
7290
6876
|
setNoRowsOpen(false);
|
|
@@ -7314,7 +6900,7 @@ var WavelengthDataTable = ({ data, columns, itemsPerPage, totalPages, id }) => {
|
|
|
7314
6900
|
const closeModal = () => {
|
|
7315
6901
|
setIsModalOpen(false);
|
|
7316
6902
|
};
|
|
7317
|
-
|
|
6903
|
+
useEffect20(() => {
|
|
7318
6904
|
const handleClickOutside = (event) => {
|
|
7319
6905
|
if (isModalOpen && modalRef.current && !modalRef.current.contains(event.target)) {
|
|
7320
6906
|
closeModal();
|
|
@@ -7374,7 +6960,7 @@ var WavelengthDataTable = ({ data, columns, itemsPerPage, totalPages, id }) => {
|
|
|
7374
6960
|
return /* @__PURE__ */ jsxs27(TableHeadStyle, { children: [
|
|
7375
6961
|
column.title,
|
|
7376
6962
|
/* @__PURE__ */ jsxs27(KebabMenu, { ref: menuRef, children: [
|
|
7377
|
-
/* @__PURE__ */
|
|
6963
|
+
/* @__PURE__ */ jsx48(
|
|
7378
6964
|
KebabIcon,
|
|
7379
6965
|
{
|
|
7380
6966
|
title: `KebabIcon-${index}`,
|
|
@@ -7386,25 +6972,25 @@ var WavelengthDataTable = ({ data, columns, itemsPerPage, totalPages, id }) => {
|
|
|
7386
6972
|
),
|
|
7387
6973
|
isOpen && editingMenuKey === column.key && /* @__PURE__ */ jsxs27(MenuOptions, { children: [
|
|
7388
6974
|
sortOrder === "asc" ? /* @__PURE__ */ jsxs27("li", { title: `MenuListASC-${index}`, onClick: () => handleSort(column.key, "asc"), children: [
|
|
7389
|
-
/* @__PURE__ */
|
|
6975
|
+
/* @__PURE__ */ jsx48("span", { children: "\u2B06" }),
|
|
7390
6976
|
" Sort ASC"
|
|
7391
6977
|
] }) : /* @__PURE__ */ jsxs27("li", { title: `MenuListDES-${index}`, onClick: () => handleSort(column.key, "desc"), children: [
|
|
7392
|
-
/* @__PURE__ */
|
|
6978
|
+
/* @__PURE__ */ jsx48("span", { children: "\u2B07" }),
|
|
7393
6979
|
" Sort DESC"
|
|
7394
6980
|
] }),
|
|
7395
6981
|
/* @__PURE__ */ jsxs27("li", { title: `MenuListFilterButton-${index}`, onClick: openModal, children: [
|
|
7396
|
-
/* @__PURE__ */
|
|
6982
|
+
/* @__PURE__ */ jsx48("span", { children: "\u23F7" }),
|
|
7397
6983
|
" Filter"
|
|
7398
6984
|
] }),
|
|
7399
|
-
isModalOpen && /* @__PURE__ */
|
|
7400
|
-
/* @__PURE__ */
|
|
6985
|
+
isModalOpen && /* @__PURE__ */ jsx48(ModalOverlay, { children: /* @__PURE__ */ jsxs27(ModalWrapper, { ref: modalRef, children: [
|
|
6986
|
+
/* @__PURE__ */ jsx48(ModalClose, { title: `ModalClose-${index}`, onClick: closeModal, children: "\xD7" }),
|
|
7401
6987
|
/* @__PURE__ */ jsxs27(ModalInputDiv, { children: [
|
|
7402
|
-
/* @__PURE__ */
|
|
7403
|
-
/* @__PURE__ */
|
|
6988
|
+
/* @__PURE__ */ jsx48("label", { htmlFor: "filterSelectId", children: "Columns: " }),
|
|
6989
|
+
/* @__PURE__ */ jsx48("select", { title: `filterSelect-${index}`, id: "filterSelectId", value: selectedValue, onChange: handleChange, children: columns.map((item) => /* @__PURE__ */ jsx48("option", { children: item.key }, item.key)) })
|
|
7404
6990
|
] }),
|
|
7405
6991
|
/* @__PURE__ */ jsxs27(ModalInputDiv, { children: [
|
|
7406
|
-
/* @__PURE__ */
|
|
7407
|
-
/* @__PURE__ */
|
|
6992
|
+
/* @__PURE__ */ jsx48("label", { htmlFor: "filterInputId", children: "Values: " }),
|
|
6993
|
+
/* @__PURE__ */ jsx48(
|
|
7408
6994
|
"input",
|
|
7409
6995
|
{
|
|
7410
6996
|
title: `Inputfiltertest-${index}`,
|
|
@@ -7425,8 +7011,8 @@ var WavelengthDataTable = ({ data, columns, itemsPerPage, totalPages, id }) => {
|
|
|
7425
7011
|
] }, index)
|
|
7426
7012
|
] }, `headCell-${index}`);
|
|
7427
7013
|
});
|
|
7428
|
-
const rows = !currentPageData?.length || noRowsOpen ? /* @__PURE__ */
|
|
7429
|
-
return /* @__PURE__ */
|
|
7014
|
+
const rows = !currentPageData?.length || noRowsOpen ? /* @__PURE__ */ jsx48("tr", { children: /* @__PURE__ */ jsx48("td", { title: "NoDataRows", colSpan: columns.length, children: "No data" }) }) : currentPageData?.map((item) => /* @__PURE__ */ jsx48("tr", { children: columns.map((column, index2) => {
|
|
7015
|
+
return /* @__PURE__ */ jsx48(StyledTd, { children: editingId === item.id && editedColumnKey === column.key ? /* @__PURE__ */ jsx48(
|
|
7430
7016
|
StyledInput,
|
|
7431
7017
|
{
|
|
7432
7018
|
title: `styledRow-${item.id}-${column.key}-${index2}`,
|
|
@@ -7443,42 +7029,42 @@ var WavelengthDataTable = ({ data, columns, itemsPerPage, totalPages, id }) => {
|
|
|
7443
7029
|
},
|
|
7444
7030
|
autoFocus: true
|
|
7445
7031
|
}
|
|
7446
|
-
) : /* @__PURE__ */
|
|
7032
|
+
) : /* @__PURE__ */ jsx48("span", { title: `spanRow-${item.id}-${column.key}-${index2}`, onDoubleClick: () => handleEdit(item.id, item[column.key], column.key), children: item[column.key] }) }, index2);
|
|
7447
7033
|
}) }, item.id));
|
|
7448
7034
|
return /* @__PURE__ */ jsxs27("div", { id, children: [
|
|
7449
|
-
/* @__PURE__ */
|
|
7450
|
-
/* @__PURE__ */
|
|
7451
|
-
/* @__PURE__ */
|
|
7035
|
+
/* @__PURE__ */ jsx48(StyledBoxDiv, { title: "StyledBoxDiv", children: /* @__PURE__ */ jsxs27(StyledTableTwo, { title: "StyledTable", children: [
|
|
7036
|
+
/* @__PURE__ */ jsx48("thead", { children: /* @__PURE__ */ jsx48("tr", { children: headers }) }),
|
|
7037
|
+
/* @__PURE__ */ jsx48("tbody", { children: rows })
|
|
7452
7038
|
] }) }),
|
|
7453
|
-
/* @__PURE__ */
|
|
7039
|
+
/* @__PURE__ */ jsx48(StyledNavBoxDiv, { children: /* @__PURE__ */ jsx48(WavelengthDefaultPagination_default, { totalPages, currentPageNumber: currentPage, onPageChange: setCurrentPage, style: "circular" }) })
|
|
7454
7040
|
] });
|
|
7455
7041
|
};
|
|
7456
7042
|
WavelengthDataTable.displayName = "WavelengthDataTable";
|
|
7457
7043
|
|
|
7458
7044
|
// src/components/DataTable/SubRowTable/ChildSubTable.tsx
|
|
7459
|
-
import { useMemo as useMemo3, useState as useState10, Fragment as
|
|
7460
|
-
import
|
|
7461
|
-
import { Fragment as
|
|
7462
|
-
var TableContainer =
|
|
7045
|
+
import { useMemo as useMemo3, useState as useState10, Fragment as Fragment12 } from "react";
|
|
7046
|
+
import styled9 from "styled-components";
|
|
7047
|
+
import { Fragment as Fragment13, jsx as jsx49, jsxs as jsxs28 } from "react/jsx-runtime";
|
|
7048
|
+
var TableContainer = styled9.div`
|
|
7463
7049
|
width: 1200px;
|
|
7464
7050
|
border-radius: 16px;
|
|
7465
7051
|
`;
|
|
7466
|
-
var TableRow =
|
|
7052
|
+
var TableRow = styled9.div`
|
|
7467
7053
|
display: grid;
|
|
7468
7054
|
grid-template-columns: ${({ $amountofColumns }) => `repeat(${$amountofColumns}, 1fr)`};
|
|
7469
7055
|
`;
|
|
7470
|
-
var TablePrimaryRow =
|
|
7056
|
+
var TablePrimaryRow = styled9.div`
|
|
7471
7057
|
display: grid;
|
|
7472
7058
|
grid-template-columns: ${({ $amountofColumns }) => `repeat(${$amountofColumns}, 1fr)`};
|
|
7473
7059
|
`;
|
|
7474
|
-
var BodyRowContainer =
|
|
7060
|
+
var BodyRowContainer = styled9.div`
|
|
7475
7061
|
border: 1px solid black;
|
|
7476
7062
|
background-color: white;
|
|
7477
7063
|
border-radius: 16px;
|
|
7478
7064
|
overflow: hidden;
|
|
7479
7065
|
margin-bottom: 10px;
|
|
7480
7066
|
`;
|
|
7481
|
-
var TableHeaderCell =
|
|
7067
|
+
var TableHeaderCell = styled9.div`
|
|
7482
7068
|
padding-left: 12px;
|
|
7483
7069
|
padding-right: 25px;
|
|
7484
7070
|
height: 60px;
|
|
@@ -7486,7 +7072,7 @@ var TableHeaderCell = styled10.div`
|
|
|
7486
7072
|
display: flex;
|
|
7487
7073
|
align-items: center;
|
|
7488
7074
|
`;
|
|
7489
|
-
var TableBodyCell =
|
|
7075
|
+
var TableBodyCell = styled9.div`
|
|
7490
7076
|
background-color: #fff;
|
|
7491
7077
|
color: black;
|
|
7492
7078
|
position: relative;
|
|
@@ -7495,27 +7081,27 @@ var TableBodyCell = styled10.div`
|
|
|
7495
7081
|
font-size: ${(props) => props.$primaryBoldState ? "24px" : "16px"};
|
|
7496
7082
|
font-weight: ${(props) => props.$primaryBoldState ? "bold" : "normal"};
|
|
7497
7083
|
`;
|
|
7498
|
-
var ButtonStylingRow =
|
|
7084
|
+
var ButtonStylingRow = styled9.div`
|
|
7499
7085
|
display: flex;
|
|
7500
7086
|
flex-direction: row;
|
|
7501
7087
|
`;
|
|
7502
|
-
var BottomArrowBar =
|
|
7088
|
+
var BottomArrowBar = styled9.div`
|
|
7503
7089
|
background-color: #e9e9e9;
|
|
7504
7090
|
text-align: center;
|
|
7505
7091
|
`;
|
|
7506
|
-
var BottomUpArrowBar =
|
|
7092
|
+
var BottomUpArrowBar = styled9.div`
|
|
7507
7093
|
background-color: #e9e9e9;
|
|
7508
7094
|
text-align: center;
|
|
7509
7095
|
position: relative;
|
|
7510
7096
|
`;
|
|
7511
|
-
var SubDataTable =
|
|
7097
|
+
var SubDataTable = styled9.table`
|
|
7512
7098
|
background-color: white;
|
|
7513
7099
|
color: black;
|
|
7514
7100
|
width: 100%;
|
|
7515
7101
|
border-collapse: collapse;
|
|
7516
7102
|
line-height: 1.2;
|
|
7517
7103
|
`;
|
|
7518
|
-
var SubDataTableHeaderRow =
|
|
7104
|
+
var SubDataTableHeaderRow = styled9.tr`
|
|
7519
7105
|
height: 50px;
|
|
7520
7106
|
background-color: #304359;
|
|
7521
7107
|
color: white;
|
|
@@ -7526,10 +7112,10 @@ var SubDataTableHeaderRow = styled10.tr`
|
|
|
7526
7112
|
white-space: nowrap;
|
|
7527
7113
|
}
|
|
7528
7114
|
`;
|
|
7529
|
-
var SubDataTableBodyRow =
|
|
7115
|
+
var SubDataTableBodyRow = styled9.tbody`
|
|
7530
7116
|
font-size: 14px;
|
|
7531
7117
|
`;
|
|
7532
|
-
var SubDataTableBodyRowContainer =
|
|
7118
|
+
var SubDataTableBodyRowContainer = styled9.tr`
|
|
7533
7119
|
td {
|
|
7534
7120
|
padding: 10px 0;
|
|
7535
7121
|
max-width: 100px;
|
|
@@ -7539,13 +7125,13 @@ var SubDataTableBodyRowContainer = styled10.tr`
|
|
|
7539
7125
|
background-color: #96e0e5;
|
|
7540
7126
|
}
|
|
7541
7127
|
`;
|
|
7542
|
-
var SubDataTableCell =
|
|
7128
|
+
var SubDataTableCell = styled9.td`
|
|
7543
7129
|
text-align: center;
|
|
7544
7130
|
`;
|
|
7545
|
-
var SubDataHeaderColumn =
|
|
7131
|
+
var SubDataHeaderColumn = styled9.thead`
|
|
7546
7132
|
background-color: #304359;
|
|
7547
7133
|
`;
|
|
7548
|
-
var SortButton =
|
|
7134
|
+
var SortButton = styled9.button`
|
|
7549
7135
|
font-size: 16px;
|
|
7550
7136
|
font-weight: bold;
|
|
7551
7137
|
color: white;
|
|
@@ -7553,7 +7139,7 @@ var SortButton = styled10.button`
|
|
|
7553
7139
|
border: none;
|
|
7554
7140
|
white-space: nowrap;
|
|
7555
7141
|
`;
|
|
7556
|
-
var DownloadMissionButton =
|
|
7142
|
+
var DownloadMissionButton = styled9.button`
|
|
7557
7143
|
width: 217px;
|
|
7558
7144
|
height: 45px;
|
|
7559
7145
|
padding: 12px 32px 12px 32px;
|
|
@@ -7582,7 +7168,7 @@ var DownloadMissionButton = styled10.button`
|
|
|
7582
7168
|
transition: background-color 0.2s ease;
|
|
7583
7169
|
}
|
|
7584
7170
|
`;
|
|
7585
|
-
var AddButton =
|
|
7171
|
+
var AddButton = styled9.button`
|
|
7586
7172
|
width: 130px;
|
|
7587
7173
|
height: 45px;
|
|
7588
7174
|
border: 1px solid #1a8083;
|
|
@@ -7612,7 +7198,7 @@ var AddButton = styled10.button`
|
|
|
7612
7198
|
transition: background-color 0.2s ease;
|
|
7613
7199
|
}
|
|
7614
7200
|
`;
|
|
7615
|
-
var DownloadArrow =
|
|
7201
|
+
var DownloadArrow = styled9.button`
|
|
7616
7202
|
background-color: transparent;
|
|
7617
7203
|
border: none;
|
|
7618
7204
|
|
|
@@ -7695,18 +7281,18 @@ var ChildDataTable = ({ data, columns, downloadArrowOnClick, downloadMissionOnCl
|
|
|
7695
7281
|
return result;
|
|
7696
7282
|
}, [data, sortKey, sortOrder, sortSubKey, sortSubOrder]);
|
|
7697
7283
|
const renderSortButton = (column, sortOrder2, sortKey2) => {
|
|
7698
|
-
return sortKey2 === column.key ? sortOrder2 === "asc" ? /* @__PURE__ */
|
|
7284
|
+
return sortKey2 === column.key ? sortOrder2 === "asc" ? /* @__PURE__ */ jsx49(Fragment13, { children: /* @__PURE__ */ jsxs28(SortButton, { $sortColor: "black", onClick: () => toggleSortOrder(column.key), children: [
|
|
7699
7285
|
column.title,
|
|
7700
7286
|
" ",
|
|
7701
|
-
/* @__PURE__ */
|
|
7702
|
-
] }) }) : /* @__PURE__ */
|
|
7287
|
+
/* @__PURE__ */ jsx49("svg", { width: "15", height: "10", viewBox: "0 0 15 10", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ jsx49("path", { d: "M13.2375 0.368774L7.5 6.09377L1.7625 0.368774L0 2.13127L7.5 9.63127L15 2.13127L13.2375 0.368774Z", fill: "white" }) })
|
|
7288
|
+
] }) }) : /* @__PURE__ */ jsx49(Fragment13, { children: /* @__PURE__ */ jsxs28(SortButton, { $sortColor: "black", onClick: () => toggleSortOrder(column.key), children: [
|
|
7703
7289
|
column.title,
|
|
7704
7290
|
" ",
|
|
7705
|
-
/* @__PURE__ */
|
|
7706
|
-
] }) }) : /* @__PURE__ */
|
|
7291
|
+
/* @__PURE__ */ jsx49("svg", { width: "15", height: "10", viewBox: "0 0 15 10", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ jsx49("path", { d: "M13.2375 9.2627L7.5 3.5377L1.7625 9.2627L0 7.5002L7.5 0.000196457L15 7.5002L13.2375 9.2627Z", fill: "white" }) })
|
|
7292
|
+
] }) }) : /* @__PURE__ */ jsx49(Fragment13, { children: /* @__PURE__ */ jsxs28(SortButton, { $sortColor: "black", onClick: () => toggleSortOrder(column.key), children: [
|
|
7707
7293
|
column.title,
|
|
7708
7294
|
" ",
|
|
7709
|
-
/* @__PURE__ */
|
|
7295
|
+
/* @__PURE__ */ jsx49("svg", { width: "15", height: "10", viewBox: "0 0 15 10", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ jsx49("path", { d: "M13.2375 0.368774L7.5 6.09377L1.7625 0.368774L0 2.13127L7.5 9.63127L15 2.13127L13.2375 0.368774Z", fill: "white" }) })
|
|
7710
7296
|
] }) });
|
|
7711
7297
|
};
|
|
7712
7298
|
const renderSortSubButton = (column, sortSubOrder2, sortSubKey2) => {
|
|
@@ -7714,26 +7300,26 @@ var ChildDataTable = ({ data, columns, downloadArrowOnClick, downloadMissionOnCl
|
|
|
7714
7300
|
return sortSubKey2 === columnKey ? sortSubOrder2 === "asc" ? /* @__PURE__ */ jsxs28(SortButton, { $sortColor: "white", onClick: () => toggleSubSortOrder(columnKey), children: [
|
|
7715
7301
|
column.title,
|
|
7716
7302
|
" ",
|
|
7717
|
-
/* @__PURE__ */
|
|
7303
|
+
/* @__PURE__ */ jsx49("svg", { width: "15", height: "10", viewBox: "0 0 15 10", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ jsx49("path", { d: "M13.2375 0.368774L7.5 6.09377L1.7625 0.368774L0 2.13127L7.5 9.63127L15 2.13127L13.2375 0.368774Z", fill: "white" }) })
|
|
7718
7304
|
] }) : /* @__PURE__ */ jsxs28(SortButton, { $sortColor: "white", onClick: () => toggleSubSortOrder(columnKey), children: [
|
|
7719
7305
|
column.title,
|
|
7720
7306
|
" ",
|
|
7721
|
-
/* @__PURE__ */
|
|
7307
|
+
/* @__PURE__ */ jsx49("svg", { width: "15", height: "10", viewBox: "0 0 15 10", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ jsx49("path", { d: "M13.2375 9.2627L7.5 3.5377L1.7625 9.2627L0 7.5002L7.5 0.000196457L15 7.5002L13.2375 9.2627Z", fill: "white" }) })
|
|
7722
7308
|
] }) : /* @__PURE__ */ jsxs28(SortButton, { $sortColor: "white", onClick: () => toggleSubSortOrder(columnKey), children: [
|
|
7723
7309
|
column.title,
|
|
7724
7310
|
" ",
|
|
7725
|
-
/* @__PURE__ */
|
|
7311
|
+
/* @__PURE__ */ jsx49("svg", { width: "15", height: "10", viewBox: "0 0 15 10", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ jsx49("path", { d: "M13.2375 0.368774L7.5 6.09377L1.7625 0.368774L0 2.13127L7.5 9.63127L15 2.13127L13.2375 0.368774Z", fill: "white" }) })
|
|
7726
7312
|
] });
|
|
7727
7313
|
};
|
|
7728
7314
|
const headers = HeadColumns.map((column) => {
|
|
7729
|
-
return /* @__PURE__ */
|
|
7315
|
+
return /* @__PURE__ */ jsx49(TableHeaderCell, { children: renderSortButton(column, sortOrder, sortKey) }, `HeaderCell-${column.key}`);
|
|
7730
7316
|
});
|
|
7731
7317
|
const SubDataHeaders = SubDataColumns.map((column, index) => {
|
|
7732
|
-
return /* @__PURE__ */
|
|
7318
|
+
return /* @__PURE__ */ jsx49("th", { children: renderSortSubButton(column, sortSubOrder, sortSubKey) }, `SubHeadCell-${index}`);
|
|
7733
7319
|
});
|
|
7734
7320
|
const subDataRows = (itemId) => {
|
|
7735
|
-
return processedRowData.filter((item) => item.Details?.relationId === itemId).map((item) => /* @__PURE__ */
|
|
7736
|
-
/* @__PURE__ */
|
|
7321
|
+
return processedRowData.filter((item) => item.Details?.relationId === itemId).map((item) => /* @__PURE__ */ jsx49(Fragment12, { children: item.Details?.fileObjects.map((fileItem, index) => /* @__PURE__ */ jsxs28(SubDataTableBodyRowContainer, { children: [
|
|
7322
|
+
/* @__PURE__ */ jsx49("td", { children: /* @__PURE__ */ jsx49(DownloadArrow, { onClick: downloadArrowOnClick, children: /* @__PURE__ */ jsx49("svg", { width: "17", height: "16", viewBox: "0 0 17 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ jsx49(
|
|
7737
7323
|
"path",
|
|
7738
7324
|
{
|
|
7739
7325
|
d: "M8.5 12L3.5 7L4.9 5.55L7.5 8.15V0H9.5V8.15L12.1 5.55L13.5 7L8.5 12ZM2.5 16C1.95 16 1.47917 15.8042 1.0875 15.4125C0.695833 15.0208 0.5 14.55 0.5 14V11H2.5V14H14.5V11H16.5V14C16.5 14.55 16.3042 15.0208 15.9125 15.4125C15.5208 15.8042 15.05 16 14.5 16H2.5Z",
|
|
@@ -7744,45 +7330,45 @@ var ChildDataTable = ({ data, columns, downloadArrowOnClick, downloadMissionOnCl
|
|
|
7744
7330
|
const columnKey = trimBeforePeriod2(column.key);
|
|
7745
7331
|
const value = fileItem[columnKey];
|
|
7746
7332
|
if (value !== void 0) {
|
|
7747
|
-
return /* @__PURE__ */
|
|
7333
|
+
return /* @__PURE__ */ jsx49(SubDataTableCell, { children: /* @__PURE__ */ jsx49("span", { children: value }, `span-${item.Details?.relationId}-${fileItem.id}-${index}-${column.title}`) }, `fileitem-${item}-${item.Details?.relationId}-${fileItem.id}-${index}-${column.title}`);
|
|
7748
7334
|
}
|
|
7749
7335
|
})
|
|
7750
7336
|
] }, `${item}-${item.Details?.relationId}-${fileItem.id}-${index}`)) }, `SDR-${item.id}-${item.Details?.relationId}`));
|
|
7751
7337
|
};
|
|
7752
7338
|
const dataRows = processedRowData?.map((item, index) => /* @__PURE__ */ jsxs28(BodyRowContainer, { children: [
|
|
7753
|
-
/* @__PURE__ */
|
|
7339
|
+
/* @__PURE__ */ jsx49(TableRow, { $amountofColumns: HeadColumns.length, children: HeadColumns.map((column) => /* @__PURE__ */ jsx49(TableBodyCell, { $primaryBoldState: column.PrimaryBoldText, children: item[column.key] }, `TableBodycell-${item.id}-${column.key}`)) }),
|
|
7754
7340
|
/* @__PURE__ */ jsxs28(ButtonStylingRow, { children: [
|
|
7755
|
-
/* @__PURE__ */
|
|
7756
|
-
/* @__PURE__ */
|
|
7341
|
+
/* @__PURE__ */ jsx49(DownloadMissionButton, { onClick: downloadMissionOnClick, children: "Download Mission" }),
|
|
7342
|
+
/* @__PURE__ */ jsx49(AddButton, { onClick: addFilesOnClick, children: "Add files" })
|
|
7757
7343
|
] }),
|
|
7758
|
-
openRow !== item.id && /* @__PURE__ */
|
|
7344
|
+
openRow !== item.id && /* @__PURE__ */ jsx49(BottomArrowBar, { onClick: () => toggleDropdown(item.id), children: /* @__PURE__ */ jsx49("svg", { width: "92", height: "14", viewBox: "0 0 92 14", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ jsx49("path", { d: "M64 0L44 6L24 0H0L44 14L92 0H64Z", fill: "#7A7A7A" }) }) }),
|
|
7759
7345
|
openRow === item.id && /* @__PURE__ */ jsxs28("div", { children: [
|
|
7760
7346
|
/* @__PURE__ */ jsxs28(SubDataTable, { children: [
|
|
7761
|
-
/* @__PURE__ */
|
|
7762
|
-
/* @__PURE__ */
|
|
7347
|
+
/* @__PURE__ */ jsx49(SubDataHeaderColumn, { children: /* @__PURE__ */ jsxs28(SubDataTableHeaderRow, { children: [
|
|
7348
|
+
/* @__PURE__ */ jsx49("th", {}),
|
|
7763
7349
|
SubDataHeaders
|
|
7764
7350
|
] }) }),
|
|
7765
|
-
/* @__PURE__ */
|
|
7351
|
+
/* @__PURE__ */ jsx49(SubDataTableBodyRow, { children: subDataRows(item.id) })
|
|
7766
7352
|
] }),
|
|
7767
|
-
/* @__PURE__ */
|
|
7353
|
+
/* @__PURE__ */ jsx49(BottomUpArrowBar, { onClick: () => toggleUpward(), children: /* @__PURE__ */ jsx49("svg", { width: "92", height: "14", viewBox: "0 0 92 14", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: /* @__PURE__ */ jsx49("path", { d: "M64 14L44 8L24 14H0L44 0L92 14H64Z", fill: "#7A7A7A" }) }) })
|
|
7768
7354
|
] })
|
|
7769
7355
|
] }, `Bodycontainer-${item.id}-${index}`));
|
|
7770
7356
|
return /* @__PURE__ */ jsxs28(TableContainer, { children: [
|
|
7771
|
-
/* @__PURE__ */
|
|
7772
|
-
/* @__PURE__ */
|
|
7357
|
+
/* @__PURE__ */ jsx49(TablePrimaryRow, { $amountofColumns: HeadColumns.length, children: headers }),
|
|
7358
|
+
/* @__PURE__ */ jsx49("div", { title: "tablebodies", children: dataRows })
|
|
7773
7359
|
] });
|
|
7774
7360
|
};
|
|
7775
7361
|
ChildDataTable.displayName = "ChildDataTable";
|
|
7776
7362
|
|
|
7777
7363
|
// src/components/DataTable/SubRowTable/ChildDataTable.tsx
|
|
7778
|
-
import { useRef as
|
|
7364
|
+
import { useRef as useRef19, useEffect as useEffect21 } from "react";
|
|
7779
7365
|
import "@wavelengthusaf/web-components";
|
|
7780
7366
|
import { createRoot } from "react-dom/client";
|
|
7781
|
-
import { jsx as
|
|
7367
|
+
import { jsx as jsx50 } from "react/jsx-runtime";
|
|
7782
7368
|
var ChildDataTable2 = ({ columns, data, dropdownArrowLocation, sortIcon, dropdownButtonIcon, ...rest }) => {
|
|
7783
|
-
const tableRef =
|
|
7784
|
-
const reactDropdownRoots =
|
|
7785
|
-
|
|
7369
|
+
const tableRef = useRef19(null);
|
|
7370
|
+
const reactDropdownRoots = useRef19(/* @__PURE__ */ new Map());
|
|
7371
|
+
useEffect21(() => {
|
|
7786
7372
|
const customChildDataTableElement = tableRef.current;
|
|
7787
7373
|
if (!customChildDataTableElement) return;
|
|
7788
7374
|
if (columns !== void 0) customChildDataTableElement.setColumns = columns;
|
|
@@ -7791,7 +7377,7 @@ var ChildDataTable2 = ({ columns, data, dropdownArrowLocation, sortIcon, dropdow
|
|
|
7791
7377
|
if (sortIcon !== void 0) customChildDataTableElement.setSortIcon = sortIcon;
|
|
7792
7378
|
if (dropdownButtonIcon !== void 0) customChildDataTableElement.setDropdownButtonIcon = dropdownButtonIcon;
|
|
7793
7379
|
}, [columns, data, dropdownArrowLocation, sortIcon, dropdownButtonIcon]);
|
|
7794
|
-
|
|
7380
|
+
useEffect21(() => {
|
|
7795
7381
|
const el = tableRef.current;
|
|
7796
7382
|
if (!el) return;
|
|
7797
7383
|
const handleReactDropdown = (event) => {
|
|
@@ -7828,7 +7414,7 @@ var ChildDataTable2 = ({ columns, data, dropdownArrowLocation, sortIcon, dropdow
|
|
|
7828
7414
|
el.removeEventListener("cleanupDropdown", handleCleanupDropdown);
|
|
7829
7415
|
};
|
|
7830
7416
|
}, [data]);
|
|
7831
|
-
return /* @__PURE__ */
|
|
7417
|
+
return /* @__PURE__ */ jsx50("wavelength-child-data-table", { ref: tableRef, ...rest });
|
|
7832
7418
|
};
|
|
7833
7419
|
ChildDataTable2.displayName = "ChildDataTable";
|
|
7834
7420
|
|
|
@@ -7837,9 +7423,9 @@ import { ChildDataTable as ChildDataTable3 } from "@wavelengthusaf/web-component
|
|
|
7837
7423
|
|
|
7838
7424
|
// src/components/DataTable/NestedDataTable/NestedDataTable.tsx
|
|
7839
7425
|
import { useState as useState11 } from "react";
|
|
7840
|
-
import
|
|
7841
|
-
import { Fragment as
|
|
7842
|
-
var TableStyle =
|
|
7426
|
+
import styled10 from "styled-components";
|
|
7427
|
+
import { Fragment as Fragment14, jsx as jsx51, jsxs as jsxs29 } from "react/jsx-runtime";
|
|
7428
|
+
var TableStyle = styled10.table`
|
|
7843
7429
|
width: 100%;
|
|
7844
7430
|
height: 100%;
|
|
7845
7431
|
border-collapse: collapse;
|
|
@@ -7855,26 +7441,26 @@ var TableStyle = styled11.table`
|
|
|
7855
7441
|
margin-right: auto;
|
|
7856
7442
|
position: absolute;
|
|
7857
7443
|
`;
|
|
7858
|
-
var MainThHeaders =
|
|
7444
|
+
var MainThHeaders = styled10.th`
|
|
7859
7445
|
&:not(:last-child) {
|
|
7860
7446
|
border-right: 1px solid #c6c7cc;
|
|
7861
7447
|
}
|
|
7862
7448
|
`;
|
|
7863
|
-
var SubDataTr =
|
|
7449
|
+
var SubDataTr = styled10.tr`
|
|
7864
7450
|
background-color: white;
|
|
7865
7451
|
|
|
7866
7452
|
&:nth-child(even) {
|
|
7867
7453
|
background-color: #e0ffff;
|
|
7868
7454
|
}
|
|
7869
7455
|
`;
|
|
7870
|
-
var PrimaryTrRows =
|
|
7456
|
+
var PrimaryTrRows = styled10.tr`
|
|
7871
7457
|
background-color: ${(props) => props.$index % 2 === 0 ? "white" : "#e0ffff"};
|
|
7872
7458
|
`;
|
|
7873
|
-
var SubTrRows =
|
|
7459
|
+
var SubTrRows = styled10.tr`
|
|
7874
7460
|
background-color: ${(props) => props.$index % 2 === 0 ? "white" : "#e0ffff"};
|
|
7875
7461
|
height: 120px;
|
|
7876
7462
|
`;
|
|
7877
|
-
var SubTableStyle =
|
|
7463
|
+
var SubTableStyle = styled10.table`
|
|
7878
7464
|
width: 95%;
|
|
7879
7465
|
border-collapse: collapse;
|
|
7880
7466
|
margin-top: -15px;
|
|
@@ -7894,7 +7480,7 @@ var SubTableStyle = styled11.table`
|
|
|
7894
7480
|
}
|
|
7895
7481
|
}
|
|
7896
7482
|
`;
|
|
7897
|
-
var DropdownButton =
|
|
7483
|
+
var DropdownButton = styled10.button`
|
|
7898
7484
|
background-color: transparent;
|
|
7899
7485
|
background-repeat: no-repeat;
|
|
7900
7486
|
border: none;
|
|
@@ -7904,7 +7490,7 @@ var DropdownButton = styled11.button`
|
|
|
7904
7490
|
font-weight: bold; /* This makes the UTF symbols bold */
|
|
7905
7491
|
font-size: 20px;
|
|
7906
7492
|
`;
|
|
7907
|
-
var PrimaryTdSpan =
|
|
7493
|
+
var PrimaryTdSpan = styled10.td`
|
|
7908
7494
|
&:not(:last-child) {
|
|
7909
7495
|
border-right: 1px solid black;
|
|
7910
7496
|
}
|
|
@@ -7925,57 +7511,57 @@ var NestedDataTable = ({ data, columns, id }) => {
|
|
|
7925
7511
|
setPrimaryRowIndex(rowIndex);
|
|
7926
7512
|
};
|
|
7927
7513
|
const headers = HeadColumns.map((column, index) => {
|
|
7928
|
-
return /* @__PURE__ */
|
|
7514
|
+
return /* @__PURE__ */ jsx51(MainThHeaders, { children: column.title }, `headCell-${index}`);
|
|
7929
7515
|
});
|
|
7930
7516
|
const SubDataHeaders = SubDataColumns.map((column, index) => {
|
|
7931
|
-
return /* @__PURE__ */
|
|
7517
|
+
return /* @__PURE__ */ jsx51("th", { children: column.title }, `SubHeadCell-${index}`);
|
|
7932
7518
|
});
|
|
7933
|
-
const subDataRows = !data?.length ? /* @__PURE__ */
|
|
7519
|
+
const subDataRows = !data?.length ? /* @__PURE__ */ jsx51("tr", { children: /* @__PURE__ */ jsx51("td", { title: "NoSubDataRows", colSpan: columns.length, children: "No data" }) }) : data.map((item, index) => /* @__PURE__ */ jsx51(Fragment14, { children: /* @__PURE__ */ jsx51(SubDataTr, { children: SubDataColumns.map((column, colIndex) => {
|
|
7934
7520
|
const columnKey = trimBeforePeriod(column.key);
|
|
7935
7521
|
const value = item.Details?.[columnKey];
|
|
7936
7522
|
console.log("value: ", value);
|
|
7937
7523
|
if (value !== void 0) {
|
|
7938
|
-
return /* @__PURE__ */
|
|
7524
|
+
return /* @__PURE__ */ jsx51("td", { children: /* @__PURE__ */ jsx51("span", { children: value }) }, `Span-${item.id}-${colIndex}`);
|
|
7939
7525
|
}
|
|
7940
7526
|
}) }, `Sub-${item.id}-${index}`) }));
|
|
7941
7527
|
const childRows = /* @__PURE__ */ jsxs29(SubTableStyle, { children: [
|
|
7942
|
-
/* @__PURE__ */
|
|
7943
|
-
/* @__PURE__ */
|
|
7528
|
+
/* @__PURE__ */ jsx51("thead", { children: /* @__PURE__ */ jsx51("tr", { children: SubDataHeaders }) }),
|
|
7529
|
+
/* @__PURE__ */ jsx51("tbody", { children: subDataRows })
|
|
7944
7530
|
] });
|
|
7945
|
-
const rows = !data?.length ? /* @__PURE__ */
|
|
7531
|
+
const rows = !data?.length ? /* @__PURE__ */ jsx51("tr", { children: /* @__PURE__ */ jsx51("td", { title: "NoDataRows", colSpan: columns.length, children: "No data" }) }) : data?.map((item, index) => /* @__PURE__ */ jsxs29(Fragment14, { children: [
|
|
7946
7532
|
/* @__PURE__ */ jsxs29(PrimaryTrRows, { $index: index, children: [
|
|
7947
|
-
/* @__PURE__ */
|
|
7533
|
+
/* @__PURE__ */ jsx51(DropdownButton, { onClick: () => toggleDropdown(index), children: isAscending && isOpen && primaryRowIndex === index ? /* @__PURE__ */ jsx51(Fragment14, { children: "\u2227" }) : /* @__PURE__ */ jsx51(Fragment14, { children: "\u2228" }) }),
|
|
7948
7534
|
HeadColumns.map((column, index2) => {
|
|
7949
|
-
return /* @__PURE__ */
|
|
7535
|
+
return /* @__PURE__ */ jsx51(PrimaryTdSpan, { children: /* @__PURE__ */ jsx51("span", { title: `spanRow-${item.id}-${column.key}-${index2}`, children: item[column.key] }) }, `${item.id}-${index}=${index2}`);
|
|
7950
7536
|
})
|
|
7951
7537
|
] }, index),
|
|
7952
|
-
isOpen && primaryRowIndex === index && /* @__PURE__ */
|
|
7538
|
+
isOpen && primaryRowIndex === index && /* @__PURE__ */ jsx51(SubTrRows, { $index: index, children: /* @__PURE__ */ jsx51("td", { colSpan: HeadColumns.length + 1, children: childRows }) }, index)
|
|
7953
7539
|
] }));
|
|
7954
|
-
return /* @__PURE__ */
|
|
7955
|
-
/* @__PURE__ */
|
|
7956
|
-
/* @__PURE__ */
|
|
7540
|
+
return /* @__PURE__ */ jsx51("div", { id, children: /* @__PURE__ */ jsxs29(TableStyle, { children: [
|
|
7541
|
+
/* @__PURE__ */ jsx51("thead", { children: /* @__PURE__ */ jsxs29("tr", { children: [
|
|
7542
|
+
/* @__PURE__ */ jsx51("th", { title: "dropdownth" }),
|
|
7957
7543
|
headers
|
|
7958
7544
|
] }) }),
|
|
7959
|
-
/* @__PURE__ */
|
|
7545
|
+
/* @__PURE__ */ jsx51("tbody", { children: rows })
|
|
7960
7546
|
] }) });
|
|
7961
7547
|
};
|
|
7962
7548
|
NestedDataTable.displayName = "NestedDataTable";
|
|
7963
7549
|
|
|
7964
7550
|
// src/components/AutoComplete/WavelengthAutoComplete.tsx
|
|
7965
|
-
import { useEffect as
|
|
7966
|
-
import
|
|
7967
|
-
import { Fragment as
|
|
7968
|
-
var AutoContainer =
|
|
7551
|
+
import { useEffect as useEffect22, useRef as useRef21, useState as useState12 } from "react";
|
|
7552
|
+
import styled11 from "styled-components";
|
|
7553
|
+
import { Fragment as Fragment15, jsx as jsx52, jsxs as jsxs30 } from "react/jsx-runtime";
|
|
7554
|
+
var AutoContainer = styled11.div`
|
|
7969
7555
|
//position: relative;
|
|
7970
7556
|
position: relative;
|
|
7971
7557
|
width: ${(props) => props.$inputWidth || "320px"};
|
|
7972
7558
|
height: ${(props) => props.$inputHeight || "51px"};
|
|
7973
7559
|
`;
|
|
7974
|
-
var InputWrapper =
|
|
7560
|
+
var InputWrapper = styled11.div`
|
|
7975
7561
|
width: 100%;
|
|
7976
7562
|
height: 100%;
|
|
7977
7563
|
`;
|
|
7978
|
-
var Label =
|
|
7564
|
+
var Label = styled11.label`
|
|
7979
7565
|
position: absolute;
|
|
7980
7566
|
top: 50%;
|
|
7981
7567
|
left: 10px;
|
|
@@ -7987,7 +7573,7 @@ var Label = styled12.label`
|
|
|
7987
7573
|
padding: 0 5px;
|
|
7988
7574
|
background-color: transparent;
|
|
7989
7575
|
`;
|
|
7990
|
-
var Input =
|
|
7576
|
+
var Input = styled11.input`
|
|
7991
7577
|
width: 100%; //this must be 100%, as width inherit inherits the literal expression, not the value
|
|
7992
7578
|
height: 100%;
|
|
7993
7579
|
padding: 0.5rem 0.75rem;
|
|
@@ -8029,7 +7615,7 @@ var Input = styled12.input`
|
|
|
8029
7615
|
color: ${(props) => props.$defaultLabelColor || "#ccc"};
|
|
8030
7616
|
}
|
|
8031
7617
|
`;
|
|
8032
|
-
var DropDownList =
|
|
7618
|
+
var DropDownList = styled11.ul`
|
|
8033
7619
|
position: absolute;
|
|
8034
7620
|
z-index: 5;
|
|
8035
7621
|
width: 100%;
|
|
@@ -8043,7 +7629,7 @@ var DropDownList = styled12.ul`
|
|
|
8043
7629
|
overflow: scroll; //necessary for limiting scroll options
|
|
8044
7630
|
max-height: 390px; //necessary for limiting scroll options, limit to 10 per view
|
|
8045
7631
|
`;
|
|
8046
|
-
var ActiveListItem =
|
|
7632
|
+
var ActiveListItem = styled11.li`
|
|
8047
7633
|
position: relative;
|
|
8048
7634
|
width: 100%;
|
|
8049
7635
|
z-index: 9999;
|
|
@@ -8060,7 +7646,7 @@ var ActiveListItem = styled12.li`
|
|
|
8060
7646
|
background-color: #d8d8d8;
|
|
8061
7647
|
}
|
|
8062
7648
|
`;
|
|
8063
|
-
var NoHoverListItem =
|
|
7649
|
+
var NoHoverListItem = styled11.li`
|
|
8064
7650
|
position: relative;
|
|
8065
7651
|
z-index: 9999;
|
|
8066
7652
|
padding: 10px;
|
|
@@ -8093,9 +7679,9 @@ var WavelengthAutoComplete = ({
|
|
|
8093
7679
|
placeholder,
|
|
8094
7680
|
onBlurCallback
|
|
8095
7681
|
}) => {
|
|
8096
|
-
const inputRef =
|
|
8097
|
-
const listRef =
|
|
8098
|
-
const noItemListRef =
|
|
7682
|
+
const inputRef = useRef21(null);
|
|
7683
|
+
const listRef = useRef21(null);
|
|
7684
|
+
const noItemListRef = useRef21(null);
|
|
8099
7685
|
const [inputValue, setInputValue] = useState12(placeholder ?? "");
|
|
8100
7686
|
const [suggestions, setSuggestions] = useState12([]);
|
|
8101
7687
|
const [isDropdownVisible, setIsDropdownVisible] = useState12(false);
|
|
@@ -8103,7 +7689,7 @@ var WavelengthAutoComplete = ({
|
|
|
8103
7689
|
const arrayLength = suggestions.length;
|
|
8104
7690
|
const [focusedIndex, setFocusedIndex] = useState12(0);
|
|
8105
7691
|
const idName = id ? id : "auto-comp";
|
|
8106
|
-
|
|
7692
|
+
useEffect22(() => {
|
|
8107
7693
|
const handleClickOutsideList = (event) => {
|
|
8108
7694
|
if (listRef.current && !listRef.current.contains(event.target)) {
|
|
8109
7695
|
setIsDropdownVisible(false);
|
|
@@ -8115,7 +7701,7 @@ var WavelengthAutoComplete = ({
|
|
|
8115
7701
|
};
|
|
8116
7702
|
}, [focusedIndex]);
|
|
8117
7703
|
if (onDataChange !== void 0) {
|
|
8118
|
-
|
|
7704
|
+
useEffect22(() => {
|
|
8119
7705
|
onDataChange(inputValue);
|
|
8120
7706
|
}, [inputValue]);
|
|
8121
7707
|
}
|
|
@@ -8181,9 +7767,9 @@ var WavelengthAutoComplete = ({
|
|
|
8181
7767
|
break;
|
|
8182
7768
|
}
|
|
8183
7769
|
};
|
|
8184
|
-
return /* @__PURE__ */
|
|
7770
|
+
return /* @__PURE__ */ jsx52(Fragment15, { children: /* @__PURE__ */ jsxs30(AutoContainer, { $inputHeight: height2, $inputWidth: width2, children: [
|
|
8185
7771
|
/* @__PURE__ */ jsxs30(InputWrapper, { id: `${idName}-input-wrapper`, $inputHeight: height2, $inputWidth: width2, children: [
|
|
8186
|
-
/* @__PURE__ */
|
|
7772
|
+
/* @__PURE__ */ jsx52(
|
|
8187
7773
|
Input,
|
|
8188
7774
|
{
|
|
8189
7775
|
id: idName,
|
|
@@ -8212,11 +7798,11 @@ var WavelengthAutoComplete = ({
|
|
|
8212
7798
|
autoComplete: "off"
|
|
8213
7799
|
}
|
|
8214
7800
|
),
|
|
8215
|
-
/* @__PURE__ */
|
|
7801
|
+
/* @__PURE__ */ jsx52(Label, { id: `${idName}-label`, htmlFor: idName, children: floatLabel })
|
|
8216
7802
|
] }),
|
|
8217
|
-
isDropdownVisible && /* @__PURE__ */
|
|
7803
|
+
isDropdownVisible && /* @__PURE__ */ jsx52(DropDownList, { id: `${idName}-drop-list`, ref: listRef, $inputWidth: width2, "data-testid": "InputSearchOptionsList", children: suggestHasItems ? (
|
|
8218
7804
|
//suggestions length controls showing the suggestions
|
|
8219
|
-
suggestions.map((item, index) => /* @__PURE__ */
|
|
7805
|
+
suggestions.map((item, index) => /* @__PURE__ */ jsx52(
|
|
8220
7806
|
ActiveListItem,
|
|
8221
7807
|
{
|
|
8222
7808
|
"data-testid": `${idName}-input-search-list-${index + 1}`,
|
|
@@ -8229,16 +7815,16 @@ var WavelengthAutoComplete = ({
|
|
|
8229
7815
|
},
|
|
8230
7816
|
`active-list-item-${item}-${index}`
|
|
8231
7817
|
))
|
|
8232
|
-
) : /* @__PURE__ */
|
|
7818
|
+
) : /* @__PURE__ */ jsx52(NoHoverListItem, { "data-testid": "NoOptionsListitem", ref: noItemListRef, id: "No-Option-List-item", onMouseDown: (e) => e.preventDefault(), children: "No Options found" }) })
|
|
8233
7819
|
] }) });
|
|
8234
7820
|
};
|
|
8235
7821
|
WavelengthAutoComplete.displayName = "WavelengthAutoComplete";
|
|
8236
7822
|
|
|
8237
7823
|
// src/components/inputs/WavelengthDatePicker.tsx
|
|
8238
|
-
import { useEffect as
|
|
8239
|
-
import
|
|
8240
|
-
import { jsx as
|
|
8241
|
-
var Label2 =
|
|
7824
|
+
import { useEffect as useEffect23, useState as useState13 } from "react";
|
|
7825
|
+
import styled12 from "styled-components";
|
|
7826
|
+
import { jsx as jsx53, jsxs as jsxs31 } from "react/jsx-runtime";
|
|
7827
|
+
var Label2 = styled12.label`
|
|
8242
7828
|
position: absolute;
|
|
8243
7829
|
top: 50%;
|
|
8244
7830
|
left: 10px;
|
|
@@ -8250,7 +7836,7 @@ var Label2 = styled13.label`
|
|
|
8250
7836
|
padding: 0 5px;
|
|
8251
7837
|
background-color: transparent;
|
|
8252
7838
|
`;
|
|
8253
|
-
var InputWrapper2 =
|
|
7839
|
+
var InputWrapper2 = styled12.div`
|
|
8254
7840
|
position: relative;
|
|
8255
7841
|
width: ${(props) => props.$inputWidth || "320px"};
|
|
8256
7842
|
height: ${(props) => props.$inputHeight || "51px"};
|
|
@@ -8309,7 +7895,7 @@ var WavelengthDatePicker = ({
|
|
|
8309
7895
|
const [minAdjusted, setMinAdjusted] = useState13("");
|
|
8310
7896
|
const [maxAdjusted, setMaxAdjusted] = useState13("");
|
|
8311
7897
|
const idName = id ? id : "WlDatePick";
|
|
8312
|
-
|
|
7898
|
+
useEffect23(() => {
|
|
8313
7899
|
const minDate = new Date(min || "");
|
|
8314
7900
|
const maxDate = new Date(max || "");
|
|
8315
7901
|
if (inputTimeType === "datetime-local") {
|
|
@@ -8360,7 +7946,7 @@ var WavelengthDatePicker = ({
|
|
|
8360
7946
|
$FocusLabelColor: FocusLabelColor,
|
|
8361
7947
|
$inputBackGroundColor: backgroundColor2,
|
|
8362
7948
|
children: [
|
|
8363
|
-
/* @__PURE__ */
|
|
7949
|
+
/* @__PURE__ */ jsx53(
|
|
8364
7950
|
"input",
|
|
8365
7951
|
{
|
|
8366
7952
|
type: inputType,
|
|
@@ -8381,7 +7967,7 @@ var WavelengthDatePicker = ({
|
|
|
8381
7967
|
max: maxAdjusted
|
|
8382
7968
|
}
|
|
8383
7969
|
),
|
|
8384
|
-
/* @__PURE__ */
|
|
7970
|
+
/* @__PURE__ */ jsx53(Label2, { id: `${idName}-label`, htmlFor: idName, children: floatLabel })
|
|
8385
7971
|
]
|
|
8386
7972
|
}
|
|
8387
7973
|
);
|
|
@@ -8392,9 +7978,9 @@ WavelengthDatePicker.displayName = "WavelengthDatePicker";
|
|
|
8392
7978
|
import { WavelengthDatePicker as WavelengthDatePicker2 } from "@wavelengthusaf/web-components";
|
|
8393
7979
|
|
|
8394
7980
|
// src/components/inputs/WavelengthCheckbox.tsx
|
|
8395
|
-
import { useRef as
|
|
7981
|
+
import { useRef as useRef22, useEffect as useEffect24 } from "react";
|
|
8396
7982
|
import "@wavelengthusaf/web-components";
|
|
8397
|
-
import { jsx as
|
|
7983
|
+
import { jsx as jsx54 } from "react/jsx-runtime";
|
|
8398
7984
|
var WavelengthCheckbox = ({
|
|
8399
7985
|
size,
|
|
8400
7986
|
color: color2,
|
|
@@ -8404,8 +7990,8 @@ var WavelengthCheckbox = ({
|
|
|
8404
7990
|
textSize,
|
|
8405
7991
|
...rest
|
|
8406
7992
|
}) => {
|
|
8407
|
-
const ref =
|
|
8408
|
-
|
|
7993
|
+
const ref = useRef22(null);
|
|
7994
|
+
useEffect24(() => {
|
|
8409
7995
|
const el = ref.current;
|
|
8410
7996
|
if (!el) return;
|
|
8411
7997
|
if (size !== void 0) {
|
|
@@ -8429,13 +8015,13 @@ var WavelengthCheckbox = ({
|
|
|
8429
8015
|
el.setAttribute("text-size", textSize);
|
|
8430
8016
|
}
|
|
8431
8017
|
}, [size, color2, theme, disabled, text, textSize]);
|
|
8432
|
-
return /* @__PURE__ */
|
|
8018
|
+
return /* @__PURE__ */ jsx54("wavelength-checkbox", { ref, ...rest });
|
|
8433
8019
|
};
|
|
8434
8020
|
WavelengthCheckbox.displayName = "WavelengthCheckbox";
|
|
8435
8021
|
|
|
8436
8022
|
// src/components/samples/SampleComponent.tsx
|
|
8437
|
-
import { useRef as
|
|
8438
|
-
import { jsx as
|
|
8023
|
+
import { useRef as useRef23, useEffect as useEffect25 } from "react";
|
|
8024
|
+
import { jsx as jsx55 } from "react/jsx-runtime";
|
|
8439
8025
|
var SampleComponent = ({
|
|
8440
8026
|
testProp,
|
|
8441
8027
|
children,
|
|
@@ -8444,8 +8030,8 @@ var SampleComponent = ({
|
|
|
8444
8030
|
...rest
|
|
8445
8031
|
// This rest operator includes className, style, onClick, etc.
|
|
8446
8032
|
}) => {
|
|
8447
|
-
const ref =
|
|
8448
|
-
|
|
8033
|
+
const ref = useRef23(null);
|
|
8034
|
+
useEffect25(() => {
|
|
8449
8035
|
const el = ref.current;
|
|
8450
8036
|
if (!el) return;
|
|
8451
8037
|
el.customStyles = customStyle2;
|
|
@@ -8453,14 +8039,14 @@ var SampleComponent = ({
|
|
|
8453
8039
|
el.setAttribute("test-prop", testProp);
|
|
8454
8040
|
}
|
|
8455
8041
|
}, [testProp]);
|
|
8456
|
-
return /* @__PURE__ */
|
|
8042
|
+
return /* @__PURE__ */ jsx55("sample-component", { ref, ...rest, children });
|
|
8457
8043
|
};
|
|
8458
8044
|
SampleComponent.displayName = "SampleComponent";
|
|
8459
8045
|
|
|
8460
8046
|
// src/components/NotificationPanel/WavelengthNotificationPanel.tsx
|
|
8461
|
-
import { useRef as
|
|
8047
|
+
import { useRef as useRef24, useEffect as useEffect26 } from "react";
|
|
8462
8048
|
import "@wavelengthusaf/web-components";
|
|
8463
|
-
import { jsx as
|
|
8049
|
+
import { jsx as jsx56 } from "react/jsx-runtime";
|
|
8464
8050
|
var WavelengthNotificationPanel = ({
|
|
8465
8051
|
notifications,
|
|
8466
8052
|
darkMode,
|
|
@@ -8469,8 +8055,8 @@ var WavelengthNotificationPanel = ({
|
|
|
8469
8055
|
...rest
|
|
8470
8056
|
// This rest operator includes className, style, onClick, etc.
|
|
8471
8057
|
}) => {
|
|
8472
|
-
const ref =
|
|
8473
|
-
|
|
8058
|
+
const ref = useRef24(null);
|
|
8059
|
+
useEffect26(() => {
|
|
8474
8060
|
const el = ref.current;
|
|
8475
8061
|
if (!el) return;
|
|
8476
8062
|
if (notifications !== void 0) {
|
|
@@ -8489,18 +8075,18 @@ var WavelengthNotificationPanel = ({
|
|
|
8489
8075
|
el.accountLink = accountLink;
|
|
8490
8076
|
}
|
|
8491
8077
|
}, [notifications, darkMode, rest.onMarkAsRead, rest.onSignOut, accountLink]);
|
|
8492
|
-
return /* @__PURE__ */
|
|
8078
|
+
return /* @__PURE__ */ jsx56("wavelength-notification-panel", { ref, ...rest, children });
|
|
8493
8079
|
};
|
|
8494
8080
|
|
|
8495
8081
|
// src/index.ts
|
|
8496
8082
|
import { SampleComponent as SampleComponent2 } from "@wavelengthusaf/web-components";
|
|
8497
8083
|
|
|
8498
8084
|
// src/components/MultiSelect/WavelengthMultiSelectAutocomplete.tsx
|
|
8499
|
-
import { useEffect as
|
|
8500
|
-
import { jsx as
|
|
8085
|
+
import { useEffect as useEffect27, useRef as useRef25 } from "react";
|
|
8086
|
+
import { jsx as jsx57 } from "react/jsx-runtime";
|
|
8501
8087
|
var WavelengthMultiSelectAutocomplete = ({ options, placeholder = "Select Options", label, name, style: style3, onChange, value, disabled, ...rest }) => {
|
|
8502
|
-
const componentRef =
|
|
8503
|
-
|
|
8088
|
+
const componentRef = useRef25(null);
|
|
8089
|
+
useEffect27(() => {
|
|
8504
8090
|
const component = componentRef.current;
|
|
8505
8091
|
if (!component) return;
|
|
8506
8092
|
const handleValueChange = (event) => {
|
|
@@ -8513,7 +8099,7 @@ var WavelengthMultiSelectAutocomplete = ({ options, placeholder = "Select Option
|
|
|
8513
8099
|
component.removeEventListener("change", handleValueChange);
|
|
8514
8100
|
};
|
|
8515
8101
|
}, [onChange]);
|
|
8516
|
-
|
|
8102
|
+
useEffect27(() => {
|
|
8517
8103
|
const component = componentRef.current;
|
|
8518
8104
|
if (!component) return;
|
|
8519
8105
|
if (placeholder) component.setAttribute("placeholder", placeholder);
|
|
@@ -8523,13 +8109,13 @@ var WavelengthMultiSelectAutocomplete = ({ options, placeholder = "Select Option
|
|
|
8523
8109
|
if (options) component.autocompleteOptions = options;
|
|
8524
8110
|
if (style3) component.customStyles = style3;
|
|
8525
8111
|
}, [options, placeholder, name, label, style3]);
|
|
8526
|
-
|
|
8112
|
+
useEffect27(() => {
|
|
8527
8113
|
const component = componentRef.current;
|
|
8528
8114
|
if (component && value) {
|
|
8529
8115
|
component.value = value;
|
|
8530
8116
|
}
|
|
8531
8117
|
}, [value]);
|
|
8532
|
-
return /* @__PURE__ */
|
|
8118
|
+
return /* @__PURE__ */ jsx57("wavelength-multi-select-autocomplete", { ref: componentRef, ...rest });
|
|
8533
8119
|
};
|
|
8534
8120
|
|
|
8535
8121
|
// src/index.ts
|
|
@@ -8583,6 +8169,8 @@ export {
|
|
|
8583
8169
|
WavelengthNavBar,
|
|
8584
8170
|
WavelengthNotAvailablePage,
|
|
8585
8171
|
WavelengthNotificationPanel,
|
|
8172
|
+
WavelengthPagination,
|
|
8173
|
+
WavelengthPagination2 as WavelengthPaginationElement,
|
|
8586
8174
|
WavelengthPermissionAlert,
|
|
8587
8175
|
WavelengthPlaneTrail,
|
|
8588
8176
|
WavelengthPopUpMenu,
|
|
@@ -8603,10 +8191,8 @@ export {
|
|
|
8603
8191
|
WavelengthToolTip,
|
|
8604
8192
|
WavelengthWebSnackbar,
|
|
8605
8193
|
add,
|
|
8606
|
-
ascendingRange,
|
|
8607
8194
|
concat,
|
|
8608
8195
|
findBestStringMatch,
|
|
8609
|
-
range,
|
|
8610
8196
|
useOutsideClick,
|
|
8611
8197
|
useThemeContext
|
|
8612
8198
|
};
|