sag_components 2.0.0-beta107 → 2.0.0-beta109
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/index.d.ts +3 -8
- package/dist/index.esm.js +349 -1241
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +349 -1241
- package/dist/index.js.map +1 -1
- package/dist/types/components/DropdownMultiNew/DropdownMultiNew.d.ts +0 -60
- package/dist/types/components/DropdownSingleNew/DropdownSingleNew.d.ts +0 -57
- package/dist/types/components/ItemManagerPanel/ItemManagerPanel.d.ts +3 -8
- package/dist/types/components/ItemManagerPanel/ItemManagerPanel.stories.d.ts +15 -5
- package/dist/types/components/OverlayDropdown/OverlayTemplateDialog.d.ts +1 -0
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -2202,7 +2202,9 @@ const Tooltip$2 = props => {
|
|
|
2202
2202
|
content = 'Tooltip content',
|
|
2203
2203
|
direction = 'top',
|
|
2204
2204
|
delay = '400',
|
|
2205
|
-
topFactor = -1.8
|
|
2205
|
+
topFactor = -1.8,
|
|
2206
|
+
hideTooltip = false,
|
|
2207
|
+
className
|
|
2206
2208
|
} = props;
|
|
2207
2209
|
let timeout;
|
|
2208
2210
|
const [active, setActive] = React$1.useState(false);
|
|
@@ -2216,12 +2218,12 @@ const Tooltip$2 = props => {
|
|
|
2216
2218
|
setActive(false);
|
|
2217
2219
|
};
|
|
2218
2220
|
return /*#__PURE__*/React__default["default"].createElement(TooltipContainer$4, {
|
|
2219
|
-
className:
|
|
2221
|
+
className: className
|
|
2220
2222
|
}, /*#__PURE__*/React__default["default"].createElement(TooltipWrapper$2, {
|
|
2221
2223
|
className: "tooltip-wrapper",
|
|
2222
2224
|
onMouseEnter: showTip,
|
|
2223
2225
|
onMouseLeave: hideTip
|
|
2224
|
-
}, children, active && /*#__PURE__*/React__default["default"].createElement(TooltipTip$1, {
|
|
2226
|
+
}, children, active && !hideTooltip && /*#__PURE__*/React__default["default"].createElement(TooltipTip$1, {
|
|
2225
2227
|
className: `controls ${direction || 'top'}`,
|
|
2226
2228
|
topFactor: topFactor
|
|
2227
2229
|
}, content)));
|
|
@@ -8518,6 +8520,16 @@ const DropdownWrapper$2 = styled__default["default"].div`
|
|
|
8518
8520
|
font-weight: 400;
|
|
8519
8521
|
font-size: 14px;
|
|
8520
8522
|
border-radius: 10px;
|
|
8523
|
+
&::before {
|
|
8524
|
+
content: '';
|
|
8525
|
+
position: absolute;
|
|
8526
|
+
top: 100%;
|
|
8527
|
+
left: 0;
|
|
8528
|
+
right: 0;
|
|
8529
|
+
height: 2px; // Creates invisible bridge for hover
|
|
8530
|
+
z-index: 99;
|
|
8531
|
+
pointer-events: none;
|
|
8532
|
+
}
|
|
8521
8533
|
`;
|
|
8522
8534
|
const Label$7 = styled__default["default"].label`
|
|
8523
8535
|
font-size: ${props => props.isFocused || props.hasValue ? '14px' : '14px'};
|
|
@@ -8602,23 +8614,28 @@ const StyledInput$8 = styled__default["default"].input`
|
|
|
8602
8614
|
`;
|
|
8603
8615
|
const OptionsContainer$7 = styled__default["default"].div`
|
|
8604
8616
|
margin: 0;
|
|
8605
|
-
|
|
8617
|
+
position: absolute;
|
|
8618
|
+
${props => props.showabove ? `
|
|
8619
|
+
bottom: 100%;
|
|
8620
|
+
` : `
|
|
8621
|
+
top: 100%;
|
|
8622
|
+
`}
|
|
8606
8623
|
left: 0;
|
|
8607
8624
|
z-index: 100;
|
|
8608
|
-
width: 100%;
|
|
8625
|
+
width: 100%;
|
|
8609
8626
|
background-color: #fff;
|
|
8610
8627
|
display: ${props => props.showoptions && props.filteredoptions?.length > 0 ? 'block' : 'none'};
|
|
8611
8628
|
`;
|
|
8612
8629
|
const OptionsSubContainer$3 = styled__default["default"].ul`
|
|
8630
|
+
position: relative;
|
|
8631
|
+
z-index: 101;
|
|
8632
|
+
top: 100%;
|
|
8633
|
+
/* left: 0; */
|
|
8613
8634
|
${scrollableStyles$d}
|
|
8614
8635
|
list-style: none;
|
|
8615
8636
|
font-weight: 400;
|
|
8616
8637
|
margin: 0;
|
|
8617
8638
|
padding: 8px 12px;
|
|
8618
|
-
position: absolute;
|
|
8619
|
-
top: 100%;
|
|
8620
|
-
left: 0;
|
|
8621
|
-
z-index: 101;
|
|
8622
8639
|
width: calc(100% - 23px);
|
|
8623
8640
|
border-radius: 4px;
|
|
8624
8641
|
background-color: white;
|
|
@@ -8657,7 +8674,6 @@ const IconContainer$5 = styled__default["default"].div`
|
|
|
8657
8674
|
cursor: pointer;
|
|
8658
8675
|
`;
|
|
8659
8676
|
|
|
8660
|
-
/* eslint-disable react/prop-types */
|
|
8661
8677
|
const DropdownSingleNew = ({
|
|
8662
8678
|
label,
|
|
8663
8679
|
labelEmptyValue,
|
|
@@ -8678,6 +8694,7 @@ const DropdownSingleNew = ({
|
|
|
8678
8694
|
}) => {
|
|
8679
8695
|
const [isFocused, setIsFocused] = React$1.useState(false);
|
|
8680
8696
|
const [showOptions, setShowOptions] = React$1.useState(false);
|
|
8697
|
+
const [showAbove, setShowAbove] = React$1.useState(false);
|
|
8681
8698
|
const [inputValue, setInputValue] = React$1.useState("");
|
|
8682
8699
|
const [selectedOptions, setSelectedOptions] = React$1.useState([]);
|
|
8683
8700
|
const [hoverInputContainer, setHoverInputContainer] = React$1.useState(false);
|
|
@@ -8701,6 +8718,22 @@ const DropdownSingleNew = ({
|
|
|
8701
8718
|
}
|
|
8702
8719
|
break;
|
|
8703
8720
|
}
|
|
8721
|
+
|
|
8722
|
+
// Calculate position when showOptions changes
|
|
8723
|
+
React$1.useEffect(() => {
|
|
8724
|
+
if (showOptions && containerRef.current) {
|
|
8725
|
+
const rect = containerRef.current.getBoundingClientRect();
|
|
8726
|
+
const windowHeight = window.innerHeight;
|
|
8727
|
+
const dropdownHeight = Math.min(filteredOptions.length * 40 + 20, 240); // Estimate dropdown height
|
|
8728
|
+
|
|
8729
|
+
// Check if dropdown would go off-screen at bottom
|
|
8730
|
+
const spaceBelow = windowHeight - rect.bottom;
|
|
8731
|
+
const spaceAbove = rect.top;
|
|
8732
|
+
|
|
8733
|
+
// Show above if there's not enough space below and there's more space above
|
|
8734
|
+
setShowAbove(spaceBelow < dropdownHeight && spaceAbove > spaceBelow);
|
|
8735
|
+
}
|
|
8736
|
+
}, [showOptions, filteredOptions.length]);
|
|
8704
8737
|
React$1.useEffect(() => {
|
|
8705
8738
|
if (selectedValue) {
|
|
8706
8739
|
setSelectedOptions(selectedValue);
|
|
@@ -8712,11 +8745,15 @@ const DropdownSingleNew = ({
|
|
|
8712
8745
|
}
|
|
8713
8746
|
}, [isFocused]);
|
|
8714
8747
|
React$1.useEffect(() => {
|
|
8715
|
-
|
|
8716
|
-
|
|
8717
|
-
|
|
8718
|
-
|
|
8719
|
-
|
|
8748
|
+
// Add a small delay to prevent dropdown from closing when moving between input and options
|
|
8749
|
+
const timer = setTimeout(() => {
|
|
8750
|
+
if (!hoverInputContainer && !hoverOptionsContainer && !isFocused) {
|
|
8751
|
+
setShowOptions(false);
|
|
8752
|
+
}
|
|
8753
|
+
}, 100); // 100ms delay allows smooth transition
|
|
8754
|
+
|
|
8755
|
+
return () => clearTimeout(timer);
|
|
8756
|
+
}, [hoverInputContainer, hoverOptionsContainer, isFocused]);
|
|
8720
8757
|
const toggleOption = option => {
|
|
8721
8758
|
if (disabled) return;
|
|
8722
8759
|
const newDropdownedOptions = [option];
|
|
@@ -8859,11 +8896,13 @@ const DropdownSingleNew = ({
|
|
|
8859
8896
|
onMouseEnter: () => setHoverOptionsContainer(true),
|
|
8860
8897
|
onMouseLeave: () => setHoverOptionsContainer(false),
|
|
8861
8898
|
showoptions: showOptions,
|
|
8899
|
+
showabove: showAbove,
|
|
8862
8900
|
disabled: disabled,
|
|
8863
8901
|
filteredoptions: filteredOptions
|
|
8864
8902
|
}, /*#__PURE__*/React__default["default"].createElement(OptionsSubContainer$3, {
|
|
8865
8903
|
className: "OptionsSubContainer",
|
|
8866
8904
|
showoptions: showOptions,
|
|
8905
|
+
showabove: showAbove,
|
|
8867
8906
|
disabled: disabled,
|
|
8868
8907
|
filteredoptions: filteredOptions
|
|
8869
8908
|
}, filteredOptions.map(option => /*#__PURE__*/React__default["default"].createElement(OptionItem$3, {
|
|
@@ -8873,46 +8912,6 @@ const DropdownSingleNew = ({
|
|
|
8873
8912
|
selected: isDropdowned(option)
|
|
8874
8913
|
}, option.label)))));
|
|
8875
8914
|
};
|
|
8876
|
-
DropdownSingleNew.propTypes = {
|
|
8877
|
-
placeHolder: PropTypes.string,
|
|
8878
|
-
label: PropTypes.string,
|
|
8879
|
-
labelEmptyValue: PropTypes.string,
|
|
8880
|
-
labelColor: PropTypes.string,
|
|
8881
|
-
required: PropTypes.bool,
|
|
8882
|
-
width: PropTypes.string,
|
|
8883
|
-
disabled: PropTypes.bool,
|
|
8884
|
-
error: PropTypes.bool,
|
|
8885
|
-
errorMessage: "",
|
|
8886
|
-
options: PropTypes.arrayOf(PropTypes.shape({
|
|
8887
|
-
value: PropTypes.string,
|
|
8888
|
-
label: PropTypes.string
|
|
8889
|
-
})),
|
|
8890
|
-
selectedValue: PropTypes.arrayOf(PropTypes.shape({
|
|
8891
|
-
value: PropTypes.string,
|
|
8892
|
-
label: PropTypes.string
|
|
8893
|
-
})),
|
|
8894
|
-
xIconShow: PropTypes.bool,
|
|
8895
|
-
onChange: PropTypes.func,
|
|
8896
|
-
showLabelOnTop: PropTypes.bool
|
|
8897
|
-
};
|
|
8898
|
-
DropdownSingleNew.defaultProps = {
|
|
8899
|
-
placeHolder: "Type To Search",
|
|
8900
|
-
label: "Label",
|
|
8901
|
-
labelEmptyValue: "All Labels",
|
|
8902
|
-
labelColor: "#066768",
|
|
8903
|
-
required: true,
|
|
8904
|
-
width: "300px",
|
|
8905
|
-
disabled: false,
|
|
8906
|
-
error: false,
|
|
8907
|
-
errorMessage: "",
|
|
8908
|
-
options: [],
|
|
8909
|
-
selectedValue: [],
|
|
8910
|
-
xIconShow: true,
|
|
8911
|
-
onChange: () => {},
|
|
8912
|
-
showLabelOnTop: true,
|
|
8913
|
-
orderBy: "asc",
|
|
8914
|
-
elementType: "number"
|
|
8915
|
-
};
|
|
8916
8915
|
|
|
8917
8916
|
const CheckBoxCheckedIcon = ({
|
|
8918
8917
|
clicked,
|
|
@@ -8980,6 +8979,16 @@ const DropdownWrapper$1 = styled__default["default"].div`
|
|
|
8980
8979
|
font-weight: 400;
|
|
8981
8980
|
font-size: 14px;
|
|
8982
8981
|
border-radius: 10px;
|
|
8982
|
+
&::before {
|
|
8983
|
+
content: '';
|
|
8984
|
+
position: absolute;
|
|
8985
|
+
top: 100%;
|
|
8986
|
+
left: 0;
|
|
8987
|
+
right: 0;
|
|
8988
|
+
height: 2px; // Creates invisible bridge for hover
|
|
8989
|
+
z-index: 99;
|
|
8990
|
+
pointer-events: none;
|
|
8991
|
+
}
|
|
8983
8992
|
`;
|
|
8984
8993
|
const Label$6 = styled__default["default"].label`
|
|
8985
8994
|
font-size: ${props => props.isFocused || props.hasValue ? '14px' : '14px'};
|
|
@@ -9065,7 +9074,12 @@ const StyledInput$7 = styled__default["default"].input`
|
|
|
9065
9074
|
`;
|
|
9066
9075
|
const OptionsContainer$6 = styled__default["default"].div`
|
|
9067
9076
|
margin: 0;
|
|
9068
|
-
|
|
9077
|
+
position: absolute;
|
|
9078
|
+
${props => props.showabove ? `
|
|
9079
|
+
bottom: 100%;
|
|
9080
|
+
` : `
|
|
9081
|
+
top: 100%;
|
|
9082
|
+
`}
|
|
9069
9083
|
left: 0;
|
|
9070
9084
|
z-index: 100;
|
|
9071
9085
|
width: 100%;
|
|
@@ -9073,17 +9087,16 @@ const OptionsContainer$6 = styled__default["default"].div`
|
|
|
9073
9087
|
display: ${props => props.showoptions && props.filteredoptions?.length > 0 ? 'block' : 'none'};
|
|
9074
9088
|
`;
|
|
9075
9089
|
const OptionsSubContainer$2 = styled__default["default"].ul`
|
|
9090
|
+
position: relative;
|
|
9091
|
+
z-index: 101;
|
|
9092
|
+
top: 100%;
|
|
9093
|
+
/* left: 0; */
|
|
9076
9094
|
${scrollableStyles$c}
|
|
9077
9095
|
list-style: none;
|
|
9078
9096
|
font-weight: 400;
|
|
9079
9097
|
margin: 0;
|
|
9080
9098
|
padding: 8px 12px;
|
|
9081
|
-
position: absolute;
|
|
9082
|
-
top: 100%;
|
|
9083
|
-
left: 0;
|
|
9084
|
-
z-index: 101;
|
|
9085
9099
|
width: calc(100% - 23px);
|
|
9086
|
-
font-family: Poppins;
|
|
9087
9100
|
border-radius: 4px;
|
|
9088
9101
|
background-color: #fff;
|
|
9089
9102
|
display: ${props => props.showoptions && props.filteredoptions?.length > 0 ? 'block' : 'none'};
|
|
@@ -9100,7 +9113,6 @@ const OptionItem$2 = styled__default["default"].li`
|
|
|
9100
9113
|
padding: 10px;
|
|
9101
9114
|
cursor: pointer;
|
|
9102
9115
|
color: #212121;
|
|
9103
|
-
font-family: Poppins;
|
|
9104
9116
|
font-size: 14px;
|
|
9105
9117
|
font-style: normal;
|
|
9106
9118
|
font-weight: 400;
|
|
@@ -9172,6 +9184,7 @@ const DropdownMultiNew = ({
|
|
|
9172
9184
|
}) => {
|
|
9173
9185
|
const [isFocused, setIsFocused] = React$1.useState(false);
|
|
9174
9186
|
const [showOptions, setShowOptions] = React$1.useState(false);
|
|
9187
|
+
const [showAbove, setShowAbove] = React$1.useState(false);
|
|
9175
9188
|
const [inputValue, setInputValue] = React$1.useState("");
|
|
9176
9189
|
const [selectedOptions, setSelectedOptions] = React$1.useState([]);
|
|
9177
9190
|
const [hoverInputContainer, setHoverInputContainer] = React$1.useState(false);
|
|
@@ -9195,6 +9208,22 @@ const DropdownMultiNew = ({
|
|
|
9195
9208
|
}
|
|
9196
9209
|
break;
|
|
9197
9210
|
}
|
|
9211
|
+
|
|
9212
|
+
// Calculate position when showOptions changes
|
|
9213
|
+
React$1.useEffect(() => {
|
|
9214
|
+
if (showOptions && containerRef.current) {
|
|
9215
|
+
const rect = containerRef.current.getBoundingClientRect();
|
|
9216
|
+
const windowHeight = window.innerHeight;
|
|
9217
|
+
const dropdownHeight = Math.min(filteredOptions.length * 40 + 20, 240); // Estimate dropdown height
|
|
9218
|
+
|
|
9219
|
+
// Check if dropdown would go off-screen at bottom
|
|
9220
|
+
const spaceBelow = windowHeight - rect.bottom;
|
|
9221
|
+
const spaceAbove = rect.top;
|
|
9222
|
+
|
|
9223
|
+
// Show above if there's not enough space below and there's more space above
|
|
9224
|
+
setShowAbove(spaceBelow < dropdownHeight && spaceAbove > spaceBelow);
|
|
9225
|
+
}
|
|
9226
|
+
}, [showOptions, filteredOptions.length]);
|
|
9198
9227
|
React$1.useEffect(() => {
|
|
9199
9228
|
if (selectedValue) {
|
|
9200
9229
|
setSelectedOptions(selectedValue);
|
|
@@ -9377,11 +9406,13 @@ const DropdownMultiNew = ({
|
|
|
9377
9406
|
onMouseEnter: () => setHoverOptionsContainer(true),
|
|
9378
9407
|
onMouseLeave: () => setHoverOptionsContainer(false),
|
|
9379
9408
|
showoptions: showOptions,
|
|
9409
|
+
showabove: showAbove,
|
|
9380
9410
|
disabled: disabled,
|
|
9381
9411
|
filteredoptions: filteredOptions
|
|
9382
9412
|
}, /*#__PURE__*/React__default["default"].createElement(OptionsSubContainer$2, {
|
|
9383
9413
|
className: "OptionsSubContainer",
|
|
9384
9414
|
showoptions: showOptions,
|
|
9415
|
+
showabove: showAbove,
|
|
9385
9416
|
disabled: disabled,
|
|
9386
9417
|
filteredoptions: filteredOptions
|
|
9387
9418
|
}, filteredOptions.map(option => /*#__PURE__*/React__default["default"].createElement(OptionItem$2, {
|
|
@@ -9401,48 +9432,6 @@ const DropdownMultiNew = ({
|
|
|
9401
9432
|
color: disabled ? "#888" : "#212121"
|
|
9402
9433
|
})), option.label)))));
|
|
9403
9434
|
};
|
|
9404
|
-
DropdownMultiNew.propTypes = {
|
|
9405
|
-
placeHolder: PropTypes.string,
|
|
9406
|
-
label: PropTypes.string,
|
|
9407
|
-
labelEmptyValue: PropTypes.string,
|
|
9408
|
-
labelColor: PropTypes.string,
|
|
9409
|
-
checkBoxColor: PropTypes.string,
|
|
9410
|
-
required: PropTypes.bool,
|
|
9411
|
-
width: PropTypes.string,
|
|
9412
|
-
disabled: PropTypes.bool,
|
|
9413
|
-
error: PropTypes.bool,
|
|
9414
|
-
errorMessage: "",
|
|
9415
|
-
options: PropTypes.arrayOf(PropTypes.shape({
|
|
9416
|
-
value: PropTypes.string,
|
|
9417
|
-
label: PropTypes.string
|
|
9418
|
-
})),
|
|
9419
|
-
selectedValue: PropTypes.arrayOf(PropTypes.shape({
|
|
9420
|
-
value: PropTypes.string,
|
|
9421
|
-
label: PropTypes.string
|
|
9422
|
-
})),
|
|
9423
|
-
onChange: PropTypes.func,
|
|
9424
|
-
xIconShow: PropTypes.bool,
|
|
9425
|
-
showLabelOnTop: PropTypes.bool
|
|
9426
|
-
};
|
|
9427
|
-
DropdownMultiNew.defaultProps = {
|
|
9428
|
-
placeHolder: "Type To Search",
|
|
9429
|
-
label: "Label",
|
|
9430
|
-
labelEmptyValue: "All Labels",
|
|
9431
|
-
labelColor: "#066768",
|
|
9432
|
-
checkBoxColor: "#229E38",
|
|
9433
|
-
required: true,
|
|
9434
|
-
width: "300px",
|
|
9435
|
-
disabled: false,
|
|
9436
|
-
error: false,
|
|
9437
|
-
errorMessage: "",
|
|
9438
|
-
options: [],
|
|
9439
|
-
selectedValue: [],
|
|
9440
|
-
xIconShow: true,
|
|
9441
|
-
onChange: () => {},
|
|
9442
|
-
showLabelOnTop: true,
|
|
9443
|
-
orderBy: "asc",
|
|
9444
|
-
elementType: "number"
|
|
9445
|
-
};
|
|
9446
9435
|
|
|
9447
9436
|
const DropdownMain = styled__default["default"].div`
|
|
9448
9437
|
position: relative;
|
|
@@ -23914,21 +23903,22 @@ const DeleteIcon = styled__default["default"].div`
|
|
|
23914
23903
|
position: absolute;
|
|
23915
23904
|
`;
|
|
23916
23905
|
|
|
23917
|
-
const QuickFilterDropdownSingle =
|
|
23918
|
-
|
|
23919
|
-
|
|
23920
|
-
|
|
23921
|
-
|
|
23922
|
-
|
|
23923
|
-
|
|
23924
|
-
|
|
23925
|
-
|
|
23926
|
-
|
|
23927
|
-
|
|
23928
|
-
|
|
23929
|
-
|
|
23930
|
-
|
|
23931
|
-
|
|
23906
|
+
const QuickFilterDropdownSingle = _ref => {
|
|
23907
|
+
let {
|
|
23908
|
+
label,
|
|
23909
|
+
hoverColor,
|
|
23910
|
+
options,
|
|
23911
|
+
selectedValue,
|
|
23912
|
+
placeHolder,
|
|
23913
|
+
onChange,
|
|
23914
|
+
disabled,
|
|
23915
|
+
width,
|
|
23916
|
+
error,
|
|
23917
|
+
errorMessage,
|
|
23918
|
+
xIconShow,
|
|
23919
|
+
labelColor,
|
|
23920
|
+
showLabelOnTop
|
|
23921
|
+
} = _ref;
|
|
23932
23922
|
const [isFocused, setIsFocused] = React$1.useState(false);
|
|
23933
23923
|
const [showOptions, setShowOptions] = React$1.useState(false);
|
|
23934
23924
|
const [inputValue, setInputValue] = React$1.useState("");
|
|
@@ -41546,6 +41536,11 @@ const ButtonContainer$1 = styled__default["default"].div`
|
|
|
41546
41536
|
flex-direction: column;
|
|
41547
41537
|
gap: 5px;
|
|
41548
41538
|
margin-top: 16px;
|
|
41539
|
+
.ButtonContainer {
|
|
41540
|
+
label {
|
|
41541
|
+
white-space: nowrap;
|
|
41542
|
+
}
|
|
41543
|
+
}
|
|
41549
41544
|
`;
|
|
41550
41545
|
const Container$1 = styled__default["default"].div`
|
|
41551
41546
|
display: flex;
|
|
@@ -41562,6 +41557,11 @@ const Trash$1 = styled__default["default"].div`
|
|
|
41562
41557
|
height: 24px;
|
|
41563
41558
|
padding: 0 12px;
|
|
41564
41559
|
cursor: pointer;
|
|
41560
|
+
|
|
41561
|
+
svg {
|
|
41562
|
+
pointer-events: none;
|
|
41563
|
+
}
|
|
41564
|
+
|
|
41565
41565
|
svg path {
|
|
41566
41566
|
fill: white;
|
|
41567
41567
|
}
|
|
@@ -41843,8 +41843,8 @@ const AddButtonContainer = styled__default["default"].div`
|
|
|
41843
41843
|
`;
|
|
41844
41844
|
const Container = styled__default["default"].div`
|
|
41845
41845
|
display: flex;
|
|
41846
|
+
gap: 16px;
|
|
41846
41847
|
align-items: center;
|
|
41847
|
-
justify-content: space-between;
|
|
41848
41848
|
width: 100%;
|
|
41849
41849
|
`;
|
|
41850
41850
|
const Item$1 = styled__default["default"].div`
|
|
@@ -41864,14 +41864,11 @@ const Item$1 = styled__default["default"].div`
|
|
|
41864
41864
|
const Title$2 = styled__default["default"].div`
|
|
41865
41865
|
overflow: hidden;
|
|
41866
41866
|
color: #000;
|
|
41867
|
-
|
|
41868
|
-
font-feature-settings: 'liga' off;
|
|
41869
41867
|
text-overflow: ellipsis;
|
|
41868
|
+
margin-right: auto;
|
|
41870
41869
|
/* Content/P2 Regular */
|
|
41871
41870
|
font-size: 14px;
|
|
41872
|
-
font-style: normal;
|
|
41873
41871
|
font-weight: 400;
|
|
41874
|
-
line-height: normal;
|
|
41875
41872
|
`;
|
|
41876
41873
|
const ComponentContainer = styled__default["default"].div`
|
|
41877
41874
|
border-radius: 48px;
|
|
@@ -41904,6 +41901,11 @@ const Trash = styled__default["default"].div`
|
|
|
41904
41901
|
height: 24px;
|
|
41905
41902
|
padding: 0 8px;
|
|
41906
41903
|
cursor: pointer;
|
|
41904
|
+
|
|
41905
|
+
svg {
|
|
41906
|
+
pointer-events: none;
|
|
41907
|
+
}
|
|
41908
|
+
|
|
41907
41909
|
svg path {
|
|
41908
41910
|
fill: white;
|
|
41909
41911
|
}
|
|
@@ -41918,14 +41920,27 @@ const Trash = styled__default["default"].div`
|
|
|
41918
41920
|
const NewSubitemList = props => {
|
|
41919
41921
|
const {
|
|
41920
41922
|
vendor,
|
|
41921
|
-
setSelectedPackage,
|
|
41922
41923
|
onBack,
|
|
41923
41924
|
handleSubitemDetail,
|
|
41924
41925
|
itemAndPackage,
|
|
41925
|
-
|
|
41926
|
+
setSelectedPackage,
|
|
41927
|
+
setItemAndPackage,
|
|
41926
41928
|
linkColor
|
|
41927
41929
|
} = props;
|
|
41928
41930
|
const vendorItems = itemAndPackage.find(i => i.name === vendor.name).packages || [];
|
|
41931
|
+
const onDeletePackage = item => {
|
|
41932
|
+
const updatedPackages = vendorItems.filter(pkg => pkg.brands !== item.brands);
|
|
41933
|
+
const updatedItemAndPackage = itemAndPackage.map(v => v.name === vendor.name ? {
|
|
41934
|
+
...v,
|
|
41935
|
+
packages: updatedPackages
|
|
41936
|
+
} : v);
|
|
41937
|
+
setItemAndPackage(updatedItemAndPackage);
|
|
41938
|
+
};
|
|
41939
|
+
// useEffect(() => {
|
|
41940
|
+
// console.log("Vendor items updated:", vendorItems);
|
|
41941
|
+
// console.log("Props:", props);
|
|
41942
|
+
// }, [vendorItems]);
|
|
41943
|
+
|
|
41929
41944
|
return /*#__PURE__*/React__default["default"].createElement(NewSubitemContainer$1, null, /*#__PURE__*/React__default["default"].createElement(Header$1, null, /*#__PURE__*/React__default["default"].createElement(BackButton$1, {
|
|
41930
41945
|
onClick: onBack
|
|
41931
41946
|
}, /*#__PURE__*/React__default["default"].createElement(ArrowLeftIcon, null)), /*#__PURE__*/React__default["default"].createElement(BackTitle$1, null, "All Vendors")), /*#__PURE__*/React__default["default"].createElement(SelectionTitle$1, null, vendor.name), /*#__PURE__*/React__default["default"].createElement(AddButtonContainer, null, /*#__PURE__*/React__default["default"].createElement(LinkButton, {
|
|
@@ -41937,15 +41952,16 @@ const NewSubitemList = props => {
|
|
|
41937
41952
|
text: "Add Package",
|
|
41938
41953
|
type: "primary"
|
|
41939
41954
|
})), /*#__PURE__*/React__default["default"].createElement(List, null, vendorItems.map((item, idx) => /*#__PURE__*/React__default["default"].createElement(Item$1, {
|
|
41955
|
+
key: idx
|
|
41956
|
+
}, /*#__PURE__*/React__default["default"].createElement(PaperPlane, null), /*#__PURE__*/React__default["default"].createElement(Container, {
|
|
41940
41957
|
onClick: e => {
|
|
41941
41958
|
setSelectedPackage(item);
|
|
41942
41959
|
handleSubitemDetail(item);
|
|
41943
|
-
}
|
|
41944
|
-
|
|
41945
|
-
}, /*#__PURE__*/React__default["default"].createElement(PaperPlane, null), /*#__PURE__*/React__default["default"].createElement(Container, null, item.brands && /*#__PURE__*/React__default["default"].createElement(Title$2, null, item.brands), item.component && /*#__PURE__*/React__default["default"].createElement(ComponentContainer, null, item.component[0])), /*#__PURE__*/React__default["default"].createElement(Chevron, null, /*#__PURE__*/React__default["default"].createElement(ArrowRightFullIcon, null)), /*#__PURE__*/React__default["default"].createElement(Trash, {
|
|
41960
|
+
}
|
|
41961
|
+
}, item.brands && /*#__PURE__*/React__default["default"].createElement(Title$2, null, item.brands), item.component && /*#__PURE__*/React__default["default"].createElement(ComponentContainer, null, item.component[0]), /*#__PURE__*/React__default["default"].createElement(Chevron, null, /*#__PURE__*/React__default["default"].createElement(ArrowRightFullIcon, null))), /*#__PURE__*/React__default["default"].createElement(Trash, {
|
|
41946
41962
|
className: "trash-icon",
|
|
41947
41963
|
onClick: e => {
|
|
41948
|
-
|
|
41964
|
+
onDeletePackage(item);
|
|
41949
41965
|
}
|
|
41950
41966
|
}, /*#__PURE__*/React__default["default"].createElement("svg", {
|
|
41951
41967
|
width: "14",
|
|
@@ -42092,11 +42108,9 @@ const NegotiatedTextarea = styled__default["default"].textarea`
|
|
|
42092
42108
|
width: 90%;
|
|
42093
42109
|
min-height: 220px;
|
|
42094
42110
|
margin-top: 8px;
|
|
42095
|
-
|
|
42096
42111
|
border: 1px solid #e3e4e5;
|
|
42097
42112
|
border-radius: 12px;
|
|
42098
42113
|
padding: 16px;
|
|
42099
|
-
font-family: Poppins;
|
|
42100
42114
|
font-size: 15px;
|
|
42101
42115
|
resize: vertical;
|
|
42102
42116
|
background: #fff;
|
|
@@ -42124,7 +42138,7 @@ const NewSubitem = ({
|
|
|
42124
42138
|
const [negotiatedComponent, setNegotiatedComponent] = React$1.useState("Scale");
|
|
42125
42139
|
|
|
42126
42140
|
// Form state
|
|
42127
|
-
const isApplyEnabled = negotiatedBrands.trim().length >
|
|
42141
|
+
const isApplyEnabled = negotiatedBrands.trim().length > 2;
|
|
42128
42142
|
React$1.useEffect(() => {
|
|
42129
42143
|
if (!packageObject) return;
|
|
42130
42144
|
if (!packageObject.brands) return;
|
|
@@ -42161,13 +42175,7 @@ const NewSubitem = ({
|
|
|
42161
42175
|
onChange: e => setNegotiatedBrands(e.target.value),
|
|
42162
42176
|
required: true,
|
|
42163
42177
|
placeholder: "Specify by text the participated brands, divided by commas"
|
|
42164
|
-
})), /*#__PURE__*/React__default["default"].createElement(NegotiatedContainer, null, /*#__PURE__*/React__default["default"].createElement(AddNegotiatedBrand, {
|
|
42165
|
-
style: {
|
|
42166
|
-
fontWeight: 500,
|
|
42167
|
-
fontFamily: "Poppins",
|
|
42168
|
-
fontSize: 15
|
|
42169
|
-
}
|
|
42170
|
-
}, "Component ", /*#__PURE__*/React__default["default"].createElement("span", {
|
|
42178
|
+
})), /*#__PURE__*/React__default["default"].createElement(NegotiatedContainer, null, /*#__PURE__*/React__default["default"].createElement(AddNegotiatedBrand, null, "Component ", /*#__PURE__*/React__default["default"].createElement("span", {
|
|
42171
42179
|
style: {
|
|
42172
42180
|
color: "red"
|
|
42173
42181
|
}
|
|
@@ -50854,1038 +50862,18 @@ const ItemManagerPanel = _ref => {
|
|
|
50854
50862
|
height = "100%",
|
|
50855
50863
|
onSendForms = () => {},
|
|
50856
50864
|
editMode = true,
|
|
50857
|
-
|
|
50858
|
-
|
|
50859
|
-
packages: [{
|
|
50860
|
-
brands: "Pepssi, Cola",
|
|
50861
|
-
component: "Scale"
|
|
50862
|
-
}]
|
|
50863
|
-
}, {
|
|
50864
|
-
name: "4C FOODS CORP",
|
|
50865
|
-
packages: [{
|
|
50866
|
-
brands: "Tide, Ariel",
|
|
50867
|
-
component: "Scale"
|
|
50868
|
-
}]
|
|
50869
|
-
}, {
|
|
50870
|
-
name: "8 TRACK FOODS INC",
|
|
50871
|
-
packages: null
|
|
50872
|
-
}, {
|
|
50873
|
-
name: "88 ACRES",
|
|
50874
|
-
packages: null
|
|
50875
|
-
}, {
|
|
50876
|
-
name: "8TH AVENUE FOOD & PROVISIONS INC",
|
|
50877
|
-
packages: null
|
|
50878
|
-
}, {
|
|
50879
|
-
name: "A GAME BEVERAGES LLC",
|
|
50880
|
-
packages: null
|
|
50881
|
-
}, {
|
|
50882
|
-
name: "A LOACKER LTD",
|
|
50883
|
-
packages: null
|
|
50884
|
-
}, {
|
|
50885
|
-
name: "A P DEAUVILLE",
|
|
50886
|
-
packages: null
|
|
50887
|
-
}, {
|
|
50888
|
-
name: "AB WORLD FOODS",
|
|
50889
|
-
packages: null
|
|
50890
|
-
}, {
|
|
50891
|
-
name: "ABBOTT LABS INC",
|
|
50892
|
-
packages: null
|
|
50893
|
-
}, {
|
|
50894
|
-
name: "ABBVIE",
|
|
50895
|
-
packages: null
|
|
50896
|
-
}, {
|
|
50897
|
-
name: "ABF",
|
|
50898
|
-
packages: null
|
|
50899
|
-
}, {
|
|
50900
|
-
name: "AC FOODS",
|
|
50901
|
-
packages: null
|
|
50902
|
-
}, {
|
|
50903
|
-
name: "ACH FOODS",
|
|
50904
|
-
packages: null
|
|
50905
|
-
}, {
|
|
50906
|
-
name: "ACME SMOKED FISH",
|
|
50907
|
-
packages: null
|
|
50908
|
-
}, {
|
|
50909
|
-
name: "ADVANCEPIERRE FOODS",
|
|
50910
|
-
packages: null
|
|
50911
|
-
}, {
|
|
50912
|
-
name: "ADVANTAGE SOLUTIONS",
|
|
50913
|
-
packages: null
|
|
50914
|
-
}, {
|
|
50915
|
-
name: "AGRI MARK FARMERS CO OP",
|
|
50916
|
-
packages: null
|
|
50917
|
-
}, {
|
|
50918
|
-
name: "AGROS NOVA LTD",
|
|
50919
|
-
packages: null
|
|
50920
|
-
}, {
|
|
50921
|
-
name: "AHIMSA COMPANIES",
|
|
50922
|
-
packages: null
|
|
50923
|
-
}, {
|
|
50924
|
-
name: "AINSWORTH",
|
|
50925
|
-
packages: null
|
|
50926
|
-
}, {
|
|
50927
|
-
name: "AJ LETIZIO-TWO RIVERS",
|
|
50928
|
-
packages: null
|
|
50929
|
-
}, {
|
|
50930
|
-
name: "AJINOMOTO CO INC",
|
|
50931
|
-
packages: null
|
|
50932
|
-
}, {
|
|
50933
|
-
name: "ALANRIC FOOD DIST INC",
|
|
50934
|
-
packages: null
|
|
50935
|
-
}, {
|
|
50936
|
-
name: "ALBANESE CONFECTIONERY GRP INC",
|
|
50937
|
-
packages: null
|
|
50938
|
-
}, {
|
|
50939
|
-
name: "ALCON EYE CARE",
|
|
50940
|
-
packages: null
|
|
50941
|
-
}, {
|
|
50942
|
-
name: "ALEN USA",
|
|
50943
|
-
packages: null
|
|
50944
|
-
}, {
|
|
50945
|
-
name: "ALEXIA FOODS",
|
|
50946
|
-
packages: null
|
|
50947
|
-
}, {
|
|
50948
|
-
name: "ALFRED RITTER GMBH & CO KG",
|
|
50949
|
-
packages: null
|
|
50950
|
-
}, {
|
|
50951
|
-
name: "ALKALINE88 LLC",
|
|
50952
|
-
packages: null
|
|
50953
|
-
}, {
|
|
50954
|
-
name: "ALOHA",
|
|
50955
|
-
packages: null
|
|
50956
|
-
}, {
|
|
50957
|
-
name: "ALPHA FOODS INC",
|
|
50958
|
-
packages: null
|
|
50959
|
-
}, {
|
|
50960
|
-
name: "ALTER ECO",
|
|
50961
|
-
packages: null
|
|
50962
|
-
}, {
|
|
50963
|
-
name: "ALWAYS FRESH FARMS",
|
|
50964
|
-
packages: null
|
|
50965
|
-
}, {
|
|
50966
|
-
name: "AMERICAN BEVERAGE MARKETERS",
|
|
50967
|
-
packages: null
|
|
50968
|
-
}, {
|
|
50969
|
-
name: "AMERICAN GREETINGS CORP",
|
|
50970
|
-
packages: null
|
|
50971
|
-
}, {
|
|
50972
|
-
name: "AMERICAN HALAL CO INC",
|
|
50973
|
-
packages: null
|
|
50974
|
-
}, {
|
|
50975
|
-
name: "AMERICAN LICORICE CO",
|
|
50976
|
-
packages: null
|
|
50977
|
-
}, {
|
|
50978
|
-
name: "AMERICAN PET NUTRITION INC",
|
|
50979
|
-
packages: null
|
|
50980
|
-
}, {
|
|
50981
|
-
name: "AMOROSOS BAKERY",
|
|
50982
|
-
packages: null
|
|
50983
|
-
}, {
|
|
50984
|
-
name: "AMPLIFY SNACKS",
|
|
50985
|
-
packages: null
|
|
50986
|
-
}, {
|
|
50987
|
-
name: "AMYS KITCHEN INC",
|
|
50988
|
-
packages: null
|
|
50989
|
-
}, {
|
|
50990
|
-
name: "ANDERSON MAPLE SYRUP CO",
|
|
50991
|
-
packages: null
|
|
50992
|
-
}, {
|
|
50993
|
-
name: "ANDRE PROST INC",
|
|
50994
|
-
packages: null
|
|
50995
|
-
}, {
|
|
50996
|
-
name: "ANDROS FOODS USA INC",
|
|
50997
|
-
packages: null
|
|
50998
|
-
}, {
|
|
50999
|
-
name: "ANDYS SEASONING INC",
|
|
51000
|
-
packages: null
|
|
51001
|
-
}, {
|
|
51002
|
-
name: "ANIMATED BRANDS",
|
|
51003
|
-
packages: null
|
|
51004
|
-
}, {
|
|
51005
|
-
name: "APPLE & EVE INC",
|
|
51006
|
-
packages: null
|
|
51007
|
-
}, {
|
|
51008
|
-
name: "AQUA VITEA LLC",
|
|
51009
|
-
packages: null
|
|
51010
|
-
}, {
|
|
51011
|
-
name: "ARCA CONTINENTAL",
|
|
51012
|
-
packages: null
|
|
51013
|
-
}, {
|
|
51014
|
-
name: "ARIZONA BEVERAGES",
|
|
51015
|
-
packages: null
|
|
51016
|
-
}, {
|
|
51017
|
-
name: "ARIZONA CANNING",
|
|
51018
|
-
packages: null
|
|
51019
|
-
}, {
|
|
51020
|
-
name: "ARTISAN CHEF MANUFACTURING CO",
|
|
51021
|
-
packages: null
|
|
51022
|
-
}, {
|
|
51023
|
-
name: "ARTISAN TROPIC",
|
|
51024
|
-
packages: null
|
|
51025
|
-
}, {
|
|
51026
|
-
name: "ASHOC",
|
|
51027
|
-
packages: null
|
|
51028
|
-
}, {
|
|
51029
|
-
name: "ASPIRE BVRG CO",
|
|
51030
|
-
packages: null
|
|
51031
|
-
}, {
|
|
51032
|
-
name: "ASR GRP",
|
|
51033
|
-
packages: null
|
|
51034
|
-
}, {
|
|
51035
|
-
name: "ASSOCIATED BRITISH FOODS PLC",
|
|
51036
|
-
packages: null
|
|
51037
|
-
}, {
|
|
51038
|
-
name: "ATEECO INC",
|
|
51039
|
-
packages: null
|
|
51040
|
-
}, {
|
|
51041
|
-
name: "ATHENS BAKING CO LLC",
|
|
51042
|
-
packages: null
|
|
51043
|
-
}, {
|
|
51044
|
-
name: "ATK FOODS",
|
|
51045
|
-
packages: null
|
|
51046
|
-
}, {
|
|
51047
|
-
name: "ATLANTIC NATURAL FOODS LLC",
|
|
51048
|
-
packages: null
|
|
51049
|
-
}, {
|
|
51050
|
-
name: "AUGUSTAS CREATIONS",
|
|
51051
|
-
packages: null
|
|
51052
|
-
}, {
|
|
51053
|
-
name: "AUNT KITTYS FOODS",
|
|
51054
|
-
packages: null
|
|
51055
|
-
}, {
|
|
51056
|
-
name: "AUNT SUES RAW HONEY",
|
|
51057
|
-
packages: null
|
|
51058
|
-
}, {
|
|
51059
|
-
name: "AVOCADOS FROM MEXICO",
|
|
51060
|
-
packages: null
|
|
51061
|
-
}, {
|
|
51062
|
-
name: "B&B PECAN PROCESSORS",
|
|
51063
|
-
packages: null
|
|
51064
|
-
}, {
|
|
51065
|
-
name: "B&G FOODS INC",
|
|
51066
|
-
packages: null
|
|
51067
|
-
}, {
|
|
51068
|
-
name: "B.S.A. INTERNATIONAL S.A.",
|
|
51069
|
-
packages: null
|
|
51070
|
-
}, {
|
|
51071
|
-
name: "B2Z PRODS INC",
|
|
51072
|
-
packages: null
|
|
51073
|
-
}, {
|
|
51074
|
-
name: "BACHANS SPECIALTY FOODS LLC",
|
|
51075
|
-
packages: null
|
|
51076
|
-
}, {
|
|
51077
|
-
name: "BACK TO NATURE",
|
|
51078
|
-
packages: null
|
|
51079
|
-
}, {
|
|
51080
|
-
name: "BADIA SPICES INC",
|
|
51081
|
-
packages: null
|
|
51082
|
-
}, {
|
|
51083
|
-
name: "BAKER MILLS",
|
|
51084
|
-
packages: null
|
|
51085
|
-
}, {
|
|
51086
|
-
name: "BALL CORP",
|
|
51087
|
-
packages: null
|
|
51088
|
-
}, {
|
|
51089
|
-
name: "BANG ENERGY",
|
|
51090
|
-
packages: null
|
|
51091
|
-
}, {
|
|
51092
|
-
name: "BANTAM BAGELS",
|
|
51093
|
-
packages: null
|
|
51094
|
-
}, {
|
|
51095
|
-
name: "BARCEL",
|
|
51096
|
-
packages: null
|
|
51097
|
-
}, {
|
|
51098
|
-
name: "BARD VALLEY MEDJOOL DATE",
|
|
51099
|
-
packages: null
|
|
51100
|
-
}, {
|
|
51101
|
-
name: "BARILLA AMERICA INC BARILLA GER FRATELLI",
|
|
51102
|
-
packages: null
|
|
51103
|
-
}, {
|
|
51104
|
-
name: "BARKMAN HONEY LLC",
|
|
51105
|
-
packages: null
|
|
51106
|
-
}, {
|
|
51107
|
-
name: "BARNIES COFFEE KITCHEN",
|
|
51108
|
-
packages: null
|
|
51109
|
-
}, {
|
|
51110
|
-
name: "BAR-S FOODS",
|
|
51111
|
-
packages: null
|
|
51112
|
-
}, {
|
|
51113
|
-
name: "BAY VALLEY FOODS",
|
|
51114
|
-
packages: null
|
|
51115
|
-
}, {
|
|
51116
|
-
name: "BAYER AG",
|
|
51117
|
-
packages: null
|
|
51118
|
-
}, {
|
|
51119
|
-
name: "BAZOOKA CANDY BRANDS",
|
|
51120
|
-
packages: null
|
|
51121
|
-
}, {
|
|
51122
|
-
name: "BEANITOS",
|
|
51123
|
-
packages: null
|
|
51124
|
-
}, {
|
|
51125
|
-
name: "BEECH-NUT",
|
|
51126
|
-
packages: null
|
|
51127
|
-
}, {
|
|
51128
|
-
name: "BEIERSDORF INC",
|
|
51129
|
-
packages: null
|
|
51130
|
-
}, {
|
|
51131
|
-
name: "BEL BRANDS",
|
|
51132
|
-
packages: null
|
|
51133
|
-
}, {
|
|
51134
|
-
name: "BELGIOIOSO CHEESE",
|
|
51135
|
-
packages: null
|
|
51136
|
-
}, {
|
|
51137
|
-
name: "BELL & EVANS CO",
|
|
51138
|
-
packages: null
|
|
51139
|
-
}, {
|
|
51140
|
-
name: "BELL CARTER FOODS INC",
|
|
51141
|
-
packages: null
|
|
51142
|
-
}, {
|
|
51143
|
-
name: "BELLISIO FOODS",
|
|
51144
|
-
packages: null
|
|
51145
|
-
}, {
|
|
51146
|
-
name: "BERKSHIRE HATHAWAY INC",
|
|
51147
|
-
packages: null
|
|
51148
|
-
}, {
|
|
51149
|
-
name: "BERNATELLOS PIZZA INC",
|
|
51150
|
-
packages: null
|
|
51151
|
-
}, {
|
|
51152
|
-
name: "BETTER FOODS JEYER LLC",
|
|
51153
|
-
packages: null
|
|
51154
|
-
}, {
|
|
51155
|
-
name: "BETTYS & TAYLORS OF HARROGATE",
|
|
51156
|
-
packages: null
|
|
51157
|
-
}, {
|
|
51158
|
-
name: "BEVCO",
|
|
51159
|
-
packages: null
|
|
51160
|
-
}, {
|
|
51161
|
-
name: "BEYOND BETTER FOODS LLC",
|
|
51162
|
-
packages: null
|
|
51163
|
-
}, {
|
|
51164
|
-
name: "BEYOND MEAT INC",
|
|
51165
|
-
packages: null
|
|
51166
|
-
}, {
|
|
51167
|
-
name: "BIC USA INC",
|
|
51168
|
-
packages: null
|
|
51169
|
-
}, {
|
|
51170
|
-
name: "BIC WORLD",
|
|
51171
|
-
packages: null
|
|
51172
|
-
}, {
|
|
51173
|
-
name: "BIG EASY BLENDS LLC",
|
|
51174
|
-
packages: null
|
|
51175
|
-
}, {
|
|
51176
|
-
name: "BIG HEART PET",
|
|
51177
|
-
packages: null
|
|
51178
|
-
}, {
|
|
51179
|
-
name: "BIG MOZZ INC",
|
|
51180
|
-
packages: null
|
|
51181
|
-
}, {
|
|
51182
|
-
name: "BIG RUSS BEER CHEESE",
|
|
51183
|
-
packages: null
|
|
51184
|
-
}, {
|
|
51185
|
-
name: "BIG SHOW FOODS INC",
|
|
51186
|
-
packages: null
|
|
51187
|
-
}, {
|
|
51188
|
-
name: "BIG TREE FARMS",
|
|
51189
|
-
packages: null
|
|
51190
|
-
}, {
|
|
51191
|
-
name: "BING BEVERAGE",
|
|
51192
|
-
packages: null
|
|
51193
|
-
}, {
|
|
51194
|
-
name: "BIOSTEEL",
|
|
51195
|
-
packages: null
|
|
51196
|
-
}, {
|
|
51197
|
-
name: "BITCHIN SAUCE",
|
|
51198
|
-
packages: null
|
|
51199
|
-
}, {
|
|
51200
|
-
name: "BLACK RIFLE COFFEE CO",
|
|
51201
|
-
packages: null
|
|
51202
|
-
}, {
|
|
51203
|
-
name: "BLACKBEARD BEVERAGE",
|
|
51204
|
-
packages: null
|
|
51205
|
-
}, {
|
|
51206
|
-
name: "BLACKHAWK",
|
|
51207
|
-
packages: null
|
|
51208
|
-
}, {
|
|
51209
|
-
name: "BLUE DIAMOND GROWERS",
|
|
51210
|
-
packages: null
|
|
51211
|
-
}, {
|
|
51212
|
-
name: "BLUE DOG BAKERY",
|
|
51213
|
-
packages: null
|
|
51214
|
-
}, {
|
|
51215
|
-
name: "BLUE NORTHERN FOODS",
|
|
51216
|
-
packages: null
|
|
51217
|
-
}, {
|
|
51218
|
-
name: "BLUE RHINO",
|
|
51219
|
-
packages: null
|
|
51220
|
-
}, {
|
|
51221
|
-
name: "BLUEBERRY COUNCIL",
|
|
51222
|
-
packages: null
|
|
51223
|
-
}, {
|
|
51224
|
-
name: "BLUETRITON BRANDS",
|
|
51225
|
-
packages: null
|
|
51226
|
-
}, {
|
|
51227
|
-
name: "BNRG",
|
|
51228
|
-
packages: null
|
|
51229
|
-
}, {
|
|
51230
|
-
name: "BOARDWALK FROZEN TREATS LLC",
|
|
51231
|
-
packages: null
|
|
51232
|
-
}, {
|
|
51233
|
-
name: "BOBS RED MILL NTRL FOODS",
|
|
51234
|
-
packages: null
|
|
51235
|
-
}, {
|
|
51236
|
-
name: "BODYARMOR",
|
|
51237
|
-
packages: null
|
|
51238
|
-
}, {
|
|
51239
|
-
name: "BOLTHOUSE",
|
|
51240
|
-
packages: null
|
|
51241
|
-
}, {
|
|
51242
|
-
name: "BONA",
|
|
51243
|
-
packages: null
|
|
51244
|
-
}, {
|
|
51245
|
-
name: "BONOLIO",
|
|
51246
|
-
packages: null
|
|
51247
|
-
}, {
|
|
51248
|
-
name: "BORDEN",
|
|
51249
|
-
packages: null
|
|
51250
|
-
}, {
|
|
51251
|
-
name: "BORGES USA STAR FINE FOODS INC",
|
|
51252
|
-
packages: null
|
|
51253
|
-
}, {
|
|
51254
|
-
name: "BOTANICAL FOODS CO",
|
|
51255
|
-
packages: null
|
|
51256
|
-
}, {
|
|
51257
|
-
name: "BOTTICELLI FOOD CORP",
|
|
51258
|
-
packages: null
|
|
51259
|
-
}, {
|
|
51260
|
-
name: "BOWERY FARMING",
|
|
51261
|
-
packages: null
|
|
51262
|
-
}, {
|
|
51263
|
-
name: "BOWMAN ANDROS",
|
|
51264
|
-
packages: null
|
|
51265
|
-
}, {
|
|
51266
|
-
name: "BOYLAN BOTTLING CO INC",
|
|
51267
|
-
packages: null
|
|
51268
|
-
}, {
|
|
51269
|
-
name: "BRADSHAW HOME",
|
|
51270
|
-
packages: null
|
|
51271
|
-
}, {
|
|
51272
|
-
name: "BRAGG LIVE FOOD PRODS INC",
|
|
51273
|
-
packages: null
|
|
51274
|
-
}, {
|
|
51275
|
-
name: "BRASWELL FOODS",
|
|
51276
|
-
packages: null
|
|
51277
|
-
}, {
|
|
51278
|
-
name: "BREW DR",
|
|
51279
|
-
packages: null
|
|
51280
|
-
}, {
|
|
51281
|
-
name: "BRIDGFORD FOODS CORP",
|
|
51282
|
-
packages: null
|
|
51283
|
-
}, {
|
|
51284
|
-
name: "BRIGHT FARMS INC",
|
|
51285
|
-
packages: null
|
|
51286
|
-
}, {
|
|
51287
|
-
name: "BRITVIC WORLDWIDE BRANDS LTD",
|
|
51288
|
-
packages: null
|
|
51289
|
-
}, {
|
|
51290
|
-
name: "BROWNE DRUG COMPANY",
|
|
51291
|
-
packages: null
|
|
51292
|
-
}, {
|
|
51293
|
-
name: "BROWNIE BRITTLE",
|
|
51294
|
-
packages: null
|
|
51295
|
-
}, {
|
|
51296
|
-
name: "BRU BOTTLING INC",
|
|
51297
|
-
packages: null
|
|
51298
|
-
}, {
|
|
51299
|
-
name: "BRYNWOOD PARTNERS",
|
|
51300
|
-
packages: null
|
|
51301
|
-
}, {
|
|
51302
|
-
name: "BS GRILLIN COMPANY",
|
|
51303
|
-
packages: null
|
|
51304
|
-
}, {
|
|
51305
|
-
name: "BUBBAS SWEET NECTAR",
|
|
51306
|
-
packages: null
|
|
51307
|
-
}, {
|
|
51308
|
-
name: "BUDDY FRUITS",
|
|
51309
|
-
packages: null
|
|
51310
|
-
}, {
|
|
51311
|
-
name: "BUMBLE BEE SEAFOOD CO.",
|
|
51312
|
-
packages: null
|
|
51313
|
-
}, {
|
|
51314
|
-
name: "BUONA FOODS INC",
|
|
51315
|
-
packages: null
|
|
51316
|
-
}, {
|
|
51317
|
-
name: "BUSH BROTHERS & CO",
|
|
51318
|
-
packages: null
|
|
51319
|
-
}, {
|
|
51320
|
-
name: "BUTLER HOME PRODUCTS",
|
|
51321
|
-
packages: null
|
|
51322
|
-
}, {
|
|
51323
|
-
name: "BUTTERBALL",
|
|
51324
|
-
packages: null
|
|
51325
|
-
}, {
|
|
51326
|
-
name: "BUTTERFLY EQUITY",
|
|
51327
|
-
packages: null
|
|
51328
|
-
}, {
|
|
51329
|
-
name: "CA FORTUNE",
|
|
51330
|
-
packages: null
|
|
51331
|
-
}, {
|
|
51332
|
-
name: "CA WALNUT COUNCIL",
|
|
51333
|
-
packages: null
|
|
51334
|
-
}, {
|
|
51335
|
-
name: "CAB ENTERPRISES",
|
|
51336
|
-
packages: null
|
|
51337
|
-
}, {
|
|
51338
|
-
name: "CABOT CREAMERY INC",
|
|
51339
|
-
packages: null
|
|
51340
|
-
}, {
|
|
51341
|
-
name: "CACIQUE FOODS LLC",
|
|
51342
|
-
packages: null
|
|
51343
|
-
}, {
|
|
51344
|
-
name: "CALABRO CHEESE CORP",
|
|
51345
|
-
packages: null
|
|
51346
|
-
}, {
|
|
51347
|
-
name: "CALBEE NORTH AMERICA LLC",
|
|
51348
|
-
packages: null
|
|
51349
|
-
}, {
|
|
51350
|
-
name: "CALICO BRANDS INC",
|
|
51351
|
-
packages: null
|
|
51352
|
-
}, {
|
|
51353
|
-
name: "CALIFIA FARMS LLC",
|
|
51354
|
-
packages: null
|
|
51355
|
-
}, {
|
|
51356
|
-
name: "CALIFORNIA GRAPE COMMISSION",
|
|
51357
|
-
packages: null
|
|
51358
|
-
}, {
|
|
51359
|
-
name: "CALIFORNIA OLIVE RANCH INC",
|
|
51360
|
-
packages: null
|
|
51361
|
-
}, {
|
|
51362
|
-
name: "CALIFORNIA TABLE GRAPE COMMISSION",
|
|
51363
|
-
packages: null
|
|
51364
|
-
}, {
|
|
51365
|
-
name: "CALISE SONS BAKERY INC",
|
|
51366
|
-
packages: null
|
|
51367
|
-
}, {
|
|
51368
|
-
name: "CAMELLIA",
|
|
51369
|
-
packages: null
|
|
51370
|
-
}, {
|
|
51371
|
-
name: "CAMERONS COFFEE",
|
|
51372
|
-
packages: null
|
|
51373
|
-
}, {
|
|
51374
|
-
name: "CAMPBELL SOUP CO",
|
|
51375
|
-
packages: null
|
|
51376
|
-
}, {
|
|
51377
|
-
name: "CAPE COD CAFE",
|
|
51378
|
-
packages: null
|
|
51379
|
-
}, {
|
|
51380
|
-
name: "CAPE COD SELECT",
|
|
51381
|
-
packages: null
|
|
51382
|
-
}, {
|
|
51383
|
-
name: "CAPITAL CITY PRODUCE",
|
|
51384
|
-
packages: null
|
|
51385
|
-
}, {
|
|
51386
|
-
name: "CARBONE FINE FOOD LLC",
|
|
51387
|
-
packages: null
|
|
51388
|
-
}, {
|
|
51389
|
-
name: "CARGILL INC",
|
|
51390
|
-
packages: null
|
|
51391
|
-
}, {
|
|
51392
|
-
name: "CARL BUDDIG & CO",
|
|
51393
|
-
packages: null
|
|
51394
|
-
}, {
|
|
51395
|
-
name: "CARLYLE GROUP LP",
|
|
51396
|
-
packages: null
|
|
51397
|
-
}, {
|
|
51398
|
-
name: "CARMICHAELS HONEY LLC",
|
|
51399
|
-
packages: null
|
|
51400
|
-
}, {
|
|
51401
|
-
name: "CAROLINA BREWERY",
|
|
51402
|
-
packages: null
|
|
51403
|
-
}, {
|
|
51404
|
-
name: "CAROLINA NUT COMPANY",
|
|
51405
|
-
packages: null
|
|
51406
|
-
}, {
|
|
51407
|
-
name: "CARTERS",
|
|
51408
|
-
packages: null
|
|
51409
|
-
}, {
|
|
51410
|
-
name: "CASA VISCO",
|
|
51411
|
-
packages: null
|
|
51412
|
-
}, {
|
|
51413
|
-
name: "CASARO",
|
|
51414
|
-
packages: null
|
|
51415
|
-
}, {
|
|
51416
|
-
name: "CASCADIAN",
|
|
51417
|
-
packages: null
|
|
51418
|
-
}, {
|
|
51419
|
-
name: "CASPERS ICE CREAM CO INC",
|
|
51420
|
-
packages: null
|
|
51421
|
-
}, {
|
|
51422
|
-
name: "CATALINA SNACKS INC",
|
|
51423
|
-
packages: null
|
|
51424
|
-
}, {
|
|
51425
|
-
name: "CAULIPOWER",
|
|
51426
|
-
packages: null
|
|
51427
|
-
}, {
|
|
51428
|
-
name: "CEC ENTERTAINMENT INC",
|
|
51429
|
-
packages: null
|
|
51430
|
-
}, {
|
|
51431
|
-
name: "CEDARS MEDITERRANEAN FOODS INC",
|
|
51432
|
-
packages: null
|
|
51433
|
-
}, {
|
|
51434
|
-
name: "CELSIUS HOLDINGS",
|
|
51435
|
-
packages: null
|
|
51436
|
-
}, {
|
|
51437
|
-
name: "CENTRAL GARDEN & PET",
|
|
51438
|
-
packages: null
|
|
51439
|
-
}, {
|
|
51440
|
-
name: "CENTURY SNACKS LLC",
|
|
51441
|
-
packages: null
|
|
51442
|
-
}, {
|
|
51443
|
-
name: "CERELIA BAKERY USA",
|
|
51444
|
-
packages: null
|
|
51445
|
-
}, {
|
|
51446
|
-
name: "CEVES BEVERAGES",
|
|
51447
|
-
packages: null
|
|
51448
|
-
}, {
|
|
51449
|
-
name: "CF SAUER COMPANY",
|
|
51450
|
-
packages: null
|
|
51451
|
-
}, {
|
|
51452
|
-
name: "CHALLENGE DAIRY PRODS INC",
|
|
51453
|
-
packages: null
|
|
51454
|
-
}, {
|
|
51455
|
-
name: "CHAMELEON COLD BREW LLC",
|
|
51456
|
-
packages: null
|
|
51457
|
-
}, {
|
|
51458
|
-
name: "CHARLES & ALICE INC",
|
|
51459
|
-
packages: null
|
|
51460
|
-
}, {
|
|
51461
|
-
name: "CHARLESTON BVRG CO LLC",
|
|
51462
|
-
packages: null
|
|
51463
|
-
}, {
|
|
51464
|
-
name: "CHAROEN POKPHAND",
|
|
51465
|
-
packages: null
|
|
51466
|
-
}, {
|
|
51467
|
-
name: "CHATTEM",
|
|
51468
|
-
packages: null
|
|
51469
|
-
}, {
|
|
51470
|
-
name: "CHEDDIES",
|
|
51471
|
-
packages: null
|
|
51472
|
-
}, {
|
|
51473
|
-
name: "CHEFLER FOODS",
|
|
51474
|
-
packages: null
|
|
51475
|
-
}, {
|
|
51476
|
-
name: "CHELSEA MILLING CO",
|
|
51477
|
-
packages: null
|
|
51478
|
-
}, {
|
|
51479
|
-
name: "CHERIBUNDI INC",
|
|
51480
|
-
packages: null
|
|
51481
|
-
}, {
|
|
51482
|
-
name: "CHICKEN OF THE SEA",
|
|
51483
|
-
packages: null
|
|
51484
|
-
}, {
|
|
51485
|
-
name: "CHILEAN CHERRIES",
|
|
51486
|
-
packages: null
|
|
51487
|
-
}, {
|
|
51488
|
-
name: "CHIQUITA BRANDS LLC",
|
|
51489
|
-
packages: null
|
|
51490
|
-
}, {
|
|
51491
|
-
name: "CHO AMERICA",
|
|
51492
|
-
packages: null
|
|
51493
|
-
}, {
|
|
51494
|
-
name: "CHOBANI INC",
|
|
51495
|
-
packages: null
|
|
51496
|
-
}, {
|
|
51497
|
-
name: "CHOCOLAT FREY AG",
|
|
51498
|
-
packages: null
|
|
51499
|
-
}, {
|
|
51500
|
-
name: "CHOICE CANNING CO",
|
|
51501
|
-
packages: null
|
|
51502
|
-
}, {
|
|
51503
|
-
name: "CHOLULA BRANDS",
|
|
51504
|
-
packages: null
|
|
51505
|
-
}, {
|
|
51506
|
-
name: "CHURCH & DWIGHT CO INC",
|
|
51507
|
-
packages: null
|
|
51508
|
-
}, {
|
|
51509
|
-
name: "CINCINNATI SEAFOOD IMP",
|
|
51510
|
-
packages: null
|
|
51511
|
-
}, {
|
|
51512
|
-
name: "CITRUS WORLD INC",
|
|
51513
|
-
packages: null
|
|
51514
|
-
}, {
|
|
51515
|
-
name: "CJ CHEILJEDANG CORP",
|
|
51516
|
-
packages: null
|
|
51517
|
-
}, {
|
|
51518
|
-
name: "CJ FOODS INC",
|
|
51519
|
-
packages: null
|
|
51520
|
-
}, {
|
|
51521
|
-
name: "CLASSIC COOKING INC",
|
|
51522
|
-
packages: null
|
|
51523
|
-
}, {
|
|
51524
|
-
name: "CLAVEL CORP",
|
|
51525
|
-
packages: null
|
|
51526
|
-
}, {
|
|
51527
|
-
name: "CLEAN CAUSE",
|
|
51528
|
-
packages: null
|
|
51529
|
-
}, {
|
|
51530
|
-
name: "CLEARLY CANADIAN BVRG CORP",
|
|
51531
|
-
packages: null
|
|
51532
|
-
}, {
|
|
51533
|
-
name: "CLEMENS FOOD GRP",
|
|
51534
|
-
packages: null
|
|
51535
|
-
}, {
|
|
51536
|
-
name: "CLEVELAND KITCHEN",
|
|
51537
|
-
packages: null
|
|
51538
|
-
}, {
|
|
51539
|
-
name: "CLIF BAR & CO",
|
|
51540
|
-
packages: null
|
|
51541
|
-
}, {
|
|
51542
|
-
name: "CLOROX CO",
|
|
51543
|
-
packages: null
|
|
51544
|
-
}, {
|
|
51545
|
-
name: "COBRAM ESTATE PTY LTD",
|
|
51546
|
-
packages: null
|
|
51547
|
-
}, {
|
|
51548
|
-
name: "COCA COLA CO",
|
|
51549
|
-
packages: null
|
|
51550
|
-
}, {
|
|
51551
|
-
name: "COLAVITA USA",
|
|
51552
|
-
packages: null
|
|
51553
|
-
}, {
|
|
51554
|
-
name: "COLGATE PALMOLIVE CO",
|
|
51555
|
-
packages: null
|
|
51556
|
-
}, {
|
|
51557
|
-
name: "COMBE INC",
|
|
51558
|
-
packages: null
|
|
51559
|
-
}, {
|
|
51560
|
-
name: "COMMUNITY COFFEE CO INC",
|
|
51561
|
-
packages: null
|
|
51562
|
-
}, {
|
|
51563
|
-
name: "COMPLETELY FRESH FOODS",
|
|
51564
|
-
packages: null
|
|
51565
|
-
}, {
|
|
51566
|
-
name: "CONAGRA BRANDS",
|
|
51567
|
-
packages: null
|
|
51568
|
-
}, {
|
|
51569
|
-
name: "CONAIR CORP",
|
|
51570
|
-
packages: null
|
|
51571
|
-
}, {
|
|
51572
|
-
name: "CONCORD PREMIUM MEATS",
|
|
51573
|
-
packages: null
|
|
51574
|
-
}, {
|
|
51575
|
-
name: "CONGO BRANDS",
|
|
51576
|
-
packages: null
|
|
51577
|
-
}, {
|
|
51578
|
-
name: "CONSERVE ITALIA",
|
|
51579
|
-
packages: null
|
|
51580
|
-
}, {
|
|
51581
|
-
name: "CONSORZIO CASALASCO DEL POMODORO",
|
|
51582
|
-
packages: null
|
|
51583
|
-
}, {
|
|
51584
|
-
name: "CONSTELLATION BRANDS INC",
|
|
51585
|
-
packages: null
|
|
51586
|
-
}, {
|
|
51587
|
-
name: "CONTINENTAL MILLS",
|
|
51588
|
-
packages: null
|
|
51589
|
-
}, {
|
|
51590
|
-
name: "COOPER STREET COOKIES LLC",
|
|
51591
|
-
packages: null
|
|
51592
|
-
}, {
|
|
51593
|
-
name: "COPPER MOON COFFEE LLC",
|
|
51594
|
-
packages: null
|
|
51595
|
-
}, {
|
|
51596
|
-
name: "CORE NUTRITION LLC",
|
|
51597
|
-
packages: null
|
|
51598
|
-
}, {
|
|
51599
|
-
name: "CORMAN USA INC",
|
|
51600
|
-
packages: null
|
|
51601
|
-
}, {
|
|
51602
|
-
name: "COTY",
|
|
51603
|
-
packages: null
|
|
51604
|
-
}, {
|
|
51605
|
-
name: "CR BRANDS INC",
|
|
51606
|
-
packages: null
|
|
51607
|
-
}, {
|
|
51608
|
-
name: "CRAVE BETTER FOODS LLC",
|
|
51609
|
-
packages: null
|
|
51610
|
-
}, {
|
|
51611
|
-
name: "CREATIVE SNACKS",
|
|
51612
|
-
packages: null
|
|
51613
|
-
}, {
|
|
51614
|
-
name: "CRISPY GREEN INC",
|
|
51615
|
-
packages: null
|
|
51616
|
-
}, {
|
|
51617
|
-
name: "CROFTERS FOOD LTD",
|
|
51618
|
-
packages: null
|
|
51619
|
-
}, {
|
|
51620
|
-
name: "CROSSINGWELL CONSUMER HEALTH",
|
|
51621
|
-
packages: null
|
|
51622
|
-
}, {
|
|
51623
|
-
name: "CRYSTAL FARMS",
|
|
51624
|
-
packages: null
|
|
51625
|
-
}, {
|
|
51626
|
-
name: "CSM BAKERY PRODS NORTH AMERICA",
|
|
51627
|
-
packages: null
|
|
51628
|
-
}, {
|
|
51629
|
-
name: "CUMBERLAND PACKING CORP",
|
|
51630
|
-
packages: null
|
|
51631
|
-
}, {
|
|
51632
|
-
name: "CURATION FOODS INC",
|
|
51633
|
-
packages: null
|
|
51634
|
-
}, {
|
|
51635
|
-
name: "CUSTOM BAKEHOUSE",
|
|
51636
|
-
packages: null
|
|
51637
|
-
}, {
|
|
51638
|
-
name: "CVC CAPITAL PARTNERS",
|
|
51639
|
-
packages: null
|
|
51640
|
-
}, {
|
|
51641
|
-
name: "DAILY HARVEST",
|
|
51642
|
-
packages: null
|
|
51643
|
-
}, {
|
|
51644
|
-
name: "DAIRY FARMERS OF AMERICA",
|
|
51645
|
-
packages: null
|
|
51646
|
-
}, {
|
|
51647
|
-
name: "DAISY BRAND",
|
|
51648
|
-
packages: null
|
|
51649
|
-
}, {
|
|
51650
|
-
name: "DAIYA FOODS INC",
|
|
51651
|
-
packages: null
|
|
51652
|
-
}, {
|
|
51653
|
-
name: "DAKOTA GROWERS PASTA COMPANY",
|
|
51654
|
-
packages: null
|
|
51655
|
-
}, {
|
|
51656
|
-
name: "DAN OS SEASONING",
|
|
51657
|
-
packages: null
|
|
51658
|
-
}, {
|
|
51659
|
-
name: "DANSONS INC",
|
|
51660
|
-
packages: null
|
|
51661
|
-
}, {
|
|
51662
|
-
name: "DAYKA & HACKETT LLC",
|
|
51663
|
-
packages: null
|
|
51664
|
-
}, {
|
|
51665
|
-
name: "DD & B SOLUTIONS LLC",
|
|
51666
|
-
packages: null
|
|
51667
|
-
}, {
|
|
51668
|
-
name: "DE NIGRIS",
|
|
51669
|
-
packages: null
|
|
51670
|
-
}, {
|
|
51671
|
-
name: "DEAN FOODS",
|
|
51672
|
-
packages: null
|
|
51673
|
-
}, {
|
|
51674
|
-
name: "DECAS CRANBERRY PRODS INC",
|
|
51675
|
-
packages: null
|
|
51676
|
-
}, {
|
|
51677
|
-
name: "DECAS FARMS",
|
|
51678
|
-
packages: null
|
|
51679
|
-
}, {
|
|
51680
|
-
name: "DEEP FOODS INC",
|
|
51681
|
-
packages: null
|
|
51682
|
-
}, {
|
|
51683
|
-
name: "DEL GROSSO FOODS INC",
|
|
51684
|
-
packages: null
|
|
51685
|
-
}, {
|
|
51686
|
-
name: "DEL MONTE FRESH PRODUCE INC",
|
|
51687
|
-
packages: null
|
|
51688
|
-
}, {
|
|
51689
|
-
name: "DEL REAL FOODS",
|
|
51690
|
-
packages: null
|
|
51691
|
-
}, {
|
|
51692
|
-
name: "DEL SOL FOOD CO",
|
|
51693
|
-
packages: null
|
|
51694
|
-
}, {
|
|
51695
|
-
name: "DELIZZA PATISSERIE NV",
|
|
51696
|
-
packages: null
|
|
51697
|
-
}, {
|
|
51698
|
-
name: "DEMAKES ENT INC",
|
|
51699
|
-
packages: null
|
|
51700
|
-
}, {
|
|
51701
|
-
name: "DEMETS",
|
|
51702
|
-
packages: null
|
|
51703
|
-
}, {
|
|
51704
|
-
name: "DEOLEO",
|
|
51705
|
-
packages: null
|
|
51706
|
-
}, {
|
|
51707
|
-
name: "DEWAFLEBAKKERS",
|
|
51708
|
-
packages: null
|
|
51709
|
-
}, {
|
|
51710
|
-
name: "DEWEYS BAKERY",
|
|
51711
|
-
packages: null
|
|
51712
|
-
}, {
|
|
51713
|
-
name: "DIABOLO BEVERAGES",
|
|
51714
|
-
packages: null
|
|
51715
|
-
}, {
|
|
51716
|
-
name: "DIAMOND FOODS LLC",
|
|
51717
|
-
packages: null
|
|
51718
|
-
}, {
|
|
51719
|
-
name: "DIANAS BANANAS INC",
|
|
51720
|
-
packages: null
|
|
51721
|
-
}, {
|
|
51722
|
-
name: "DIANES KITCHEN",
|
|
51723
|
-
packages: null
|
|
51724
|
-
}, {
|
|
51725
|
-
name: "DIEFFENBACHS POTATO CHIPS INC",
|
|
51726
|
-
packages: null
|
|
51727
|
-
}, {
|
|
51728
|
-
name: "DIETZ & WATSON INC",
|
|
51729
|
-
packages: null
|
|
51730
|
-
}, {
|
|
51731
|
-
name: "DOLE FOOD CO INC",
|
|
51732
|
-
packages: null
|
|
51733
|
-
}, {
|
|
51734
|
-
name: "DOLE INTL HOLDINGS INC",
|
|
51735
|
-
packages: null
|
|
51736
|
-
}, {
|
|
51737
|
-
name: "DONGWON IND",
|
|
51738
|
-
packages: null
|
|
51739
|
-
}, {
|
|
51740
|
-
name: "DOT FOODS",
|
|
51741
|
-
packages: null
|
|
51742
|
-
}, {
|
|
51743
|
-
name: "DR BRONNERS MAGIC SOAPS",
|
|
51744
|
-
packages: null
|
|
51745
|
-
}, {
|
|
51746
|
-
name: "DR HAROLD KATZ LLC",
|
|
51747
|
-
packages: null
|
|
51748
|
-
}, {
|
|
51749
|
-
name: "DR OETKER USA",
|
|
51750
|
-
packages: null
|
|
51751
|
-
}, {
|
|
51752
|
-
name: "DR PRAEGERS SENSIBLE FOODS",
|
|
51753
|
-
packages: null
|
|
51754
|
-
}, {
|
|
51755
|
-
name: "DRIP DROP INC",
|
|
51756
|
-
packages: null
|
|
51757
|
-
}, {
|
|
51758
|
-
name: "DRISCOLL STRAWBERRY ASSN INC",
|
|
51759
|
-
packages: null
|
|
51760
|
-
}, {
|
|
51761
|
-
name: "DUBRETON INC",
|
|
51762
|
-
packages: null
|
|
51763
|
-
}, {
|
|
51764
|
-
name: "DUDA FARM FRESH FOODS",
|
|
51765
|
-
packages: null
|
|
51766
|
-
}, {
|
|
51767
|
-
name: "DUDE PRODS",
|
|
51768
|
-
packages: null
|
|
51769
|
-
}, {
|
|
51770
|
-
name: "DUKE FOODS",
|
|
51771
|
-
packages: null
|
|
51772
|
-
}, {
|
|
51773
|
-
name: "DURACELL",
|
|
51774
|
-
packages: null
|
|
51775
|
-
}, {
|
|
51776
|
-
name: "DURAFLAME INC",
|
|
51777
|
-
packages: null
|
|
51778
|
-
}, {
|
|
51779
|
-
name: "DYLA LLC",
|
|
51780
|
-
packages: null
|
|
51781
|
-
}, {
|
|
51782
|
-
name: "EAGLE BRANDS",
|
|
51783
|
-
packages: null
|
|
51784
|
-
}, {
|
|
51785
|
-
name: "EAGLE FAMILY FOODS INC",
|
|
51786
|
-
packages: null
|
|
51787
|
-
}, {
|
|
51788
|
-
name: "EARTHLY TREATS",
|
|
51789
|
-
packages: null
|
|
51790
|
-
}, {
|
|
51791
|
-
name: "EARTHS OWN FOOD",
|
|
51792
|
-
packages: null
|
|
51793
|
-
}, {
|
|
51794
|
-
name: "EAST COAST FRESH CUTS",
|
|
51795
|
-
packages: null
|
|
51796
|
-
}, {
|
|
51797
|
-
name: "EAST WEST TEA CO LLC",
|
|
51798
|
-
packages: null
|
|
51799
|
-
}, {
|
|
51800
|
-
name: "EAT THE CHANGE INC",
|
|
51801
|
-
packages: null
|
|
51802
|
-
}, {
|
|
51803
|
-
name: "EBRO FOODS INC",
|
|
51804
|
-
packages: null
|
|
51805
|
-
}, {
|
|
51806
|
-
name: "ECO SOUL",
|
|
51807
|
-
packages: null
|
|
51808
|
-
}, {
|
|
51809
|
-
name: "EDGEWELL PERSONAL CARE",
|
|
51810
|
-
packages: null
|
|
51811
|
-
}, {
|
|
51812
|
-
name: "EGGLANDS BEST LLC",
|
|
51813
|
-
packages: null
|
|
51814
|
-
}, {
|
|
51815
|
-
name: "EGGLIFE FOODS",
|
|
51816
|
-
packages: null
|
|
51817
|
-
}, {
|
|
51818
|
-
name: "EGGLIFE LLC",
|
|
51819
|
-
packages: null
|
|
51820
|
-
}, {
|
|
51821
|
-
name: "EKATERRA",
|
|
51822
|
-
packages: null
|
|
51823
|
-
}, {
|
|
51824
|
-
name: "EL TERRIFICO TAMALE",
|
|
51825
|
-
packages: null
|
|
51826
|
-
}, {
|
|
51827
|
-
name: "ELEEO BRANDS LLC",
|
|
51828
|
-
packages: null
|
|
51829
|
-
}, {
|
|
51830
|
-
name: "ELIDA",
|
|
51831
|
-
packages: null
|
|
51832
|
-
}, {
|
|
51833
|
-
name: "EMERGY INC",
|
|
51834
|
-
packages: null
|
|
51835
|
-
}, {
|
|
51836
|
-
name: "EMERSON HEALTHCARE",
|
|
51837
|
-
packages: null
|
|
51838
|
-
}, {
|
|
51839
|
-
name: "EMPIRE",
|
|
51840
|
-
packages: null
|
|
51841
|
-
}, {
|
|
51842
|
-
name: "EMPRESAS TAJIN",
|
|
51843
|
-
packages: null
|
|
51844
|
-
}, {
|
|
51845
|
-
name: "ENDANGERED SPECIES CHOCOLATE LLC",
|
|
51846
|
-
packages: null
|
|
51847
|
-
}, {
|
|
51848
|
-
name: "ENERGIZER HOLDINGS INC",
|
|
51849
|
-
packages: null
|
|
51850
|
-
}, {
|
|
51851
|
-
name: "ENJOY LIFE",
|
|
51852
|
-
packages: null
|
|
51853
|
-
}, {
|
|
51854
|
-
name: "ENVIROCON TECH INC",
|
|
51855
|
-
packages: null
|
|
51856
|
-
}, {
|
|
51857
|
-
name: "EPICUREAN",
|
|
51858
|
-
packages: null
|
|
51859
|
-
}, {
|
|
51860
|
-
name: "EQT",
|
|
51861
|
-
packages: null
|
|
51862
|
-
}, {
|
|
51863
|
-
name: "ETERNAL BVRG",
|
|
51864
|
-
packages: null
|
|
51865
|
-
}, {
|
|
51866
|
-
name: "EVANS FOOD GROUP LTD",
|
|
51867
|
-
packages: null
|
|
51868
|
-
}, {
|
|
51869
|
-
name: "EVERGREEN ENT INC",
|
|
51870
|
-
packages: null
|
|
51871
|
-
}, {
|
|
51872
|
-
name: "EVIVE",
|
|
51873
|
-
packages: null
|
|
51874
|
-
}, {
|
|
51875
|
-
name: "EZAKI GLICO USA - POCKY",
|
|
51876
|
-
packages: null
|
|
51877
|
-
}],
|
|
50865
|
+
disabledSendForms = false,
|
|
50866
|
+
itemAndPackage = [],
|
|
51878
50867
|
setItemAndPackage,
|
|
51879
50868
|
linkColor = "#212121",
|
|
51880
50869
|
backgroundColor = 'white',
|
|
51881
50870
|
onDelete = () => {}
|
|
51882
50871
|
} = _ref;
|
|
51883
|
-
const [screen, setScreen] = React$1.useState(
|
|
50872
|
+
const [screen, setScreen] = React$1.useState("initial");
|
|
51884
50873
|
const [selectedVendor, setSelectedVendor] = React$1.useState(null);
|
|
51885
50874
|
const [selectedPackage, setSelectedPackage] = React$1.useState(null);
|
|
51886
|
-
const handleShowVendorSelection = () => setScreen("list");
|
|
51887
|
-
const handleBackToList = () => setScreen("subitem");
|
|
51888
50875
|
const handleVendorClick = vendor => {
|
|
50876
|
+
// console.log("Vendor clicked:", vendor);
|
|
51889
50877
|
setSelectedVendor(vendor);
|
|
51890
50878
|
setScreen("subitem");
|
|
51891
50879
|
};
|
|
@@ -51915,8 +50903,12 @@ const ItemManagerPanel = _ref => {
|
|
|
51915
50903
|
const handleBackToDefault = () => {
|
|
51916
50904
|
setScreen("");
|
|
51917
50905
|
};
|
|
51918
|
-
const
|
|
51919
|
-
|
|
50906
|
+
const onDeleteVendor = vendor => {
|
|
50907
|
+
const updatedItemAndPackage = itemAndPackage.filter(item => item.name !== vendor.name);
|
|
50908
|
+
setItemAndPackage([...updatedItemAndPackage, {
|
|
50909
|
+
name: vendor.name,
|
|
50910
|
+
packages: null
|
|
50911
|
+
}]);
|
|
51920
50912
|
};
|
|
51921
50913
|
if (screen === "subitem") {
|
|
51922
50914
|
return /*#__PURE__*/React__default["default"].createElement(Card, {
|
|
@@ -51926,10 +50918,12 @@ const ItemManagerPanel = _ref => {
|
|
|
51926
50918
|
}, /*#__PURE__*/React__default["default"].createElement(NewSubitemList, {
|
|
51927
50919
|
linkColor: linkColor,
|
|
51928
50920
|
setSelectedPackage: setSelectedPackage,
|
|
50921
|
+
setItemAndPackage: setItemAndPackage,
|
|
51929
50922
|
vendor: selectedVendor,
|
|
51930
50923
|
itemAndPackage: itemAndPackage,
|
|
51931
|
-
onBack:
|
|
51932
|
-
|
|
50924
|
+
onBack: () => setScreen("initial"),
|
|
50925
|
+
onTrashClick: () => onDeleteInner(selectedVendor),
|
|
50926
|
+
handleSubitemDetail: () => setScreen("subitemdetail")
|
|
51933
50927
|
}));
|
|
51934
50928
|
}
|
|
51935
50929
|
if (screen === "confirmation") {
|
|
@@ -51969,7 +50963,7 @@ const ItemManagerPanel = _ref => {
|
|
|
51969
50963
|
vendor: selectedVendor,
|
|
51970
50964
|
itemAndPackage: itemAndPackage,
|
|
51971
50965
|
addNewPackage: addNewPackage,
|
|
51972
|
-
onBack:
|
|
50966
|
+
onBack: () => setScreen("subitem")
|
|
51973
50967
|
}));
|
|
51974
50968
|
}
|
|
51975
50969
|
if (screen === "list") {
|
|
@@ -51983,47 +50977,49 @@ const ItemManagerPanel = _ref => {
|
|
|
51983
50977
|
onVendorClick: handleVendorClick
|
|
51984
50978
|
}));
|
|
51985
50979
|
}
|
|
51986
|
-
|
|
51987
|
-
|
|
51988
|
-
|
|
51989
|
-
|
|
51990
|
-
|
|
51991
|
-
|
|
51992
|
-
|
|
51993
|
-
|
|
51994
|
-
|
|
51995
|
-
|
|
51996
|
-
|
|
51997
|
-
|
|
51998
|
-
|
|
51999
|
-
|
|
52000
|
-
|
|
52001
|
-
|
|
52002
|
-
|
|
52003
|
-
|
|
52004
|
-
|
|
52005
|
-
|
|
52006
|
-
|
|
52007
|
-
|
|
52008
|
-
|
|
52009
|
-
|
|
52010
|
-
|
|
52011
|
-
|
|
52012
|
-
|
|
52013
|
-
|
|
52014
|
-
|
|
52015
|
-
|
|
52016
|
-
|
|
52017
|
-
|
|
52018
|
-
|
|
52019
|
-
|
|
52020
|
-
|
|
52021
|
-
|
|
52022
|
-
|
|
52023
|
-
|
|
52024
|
-
|
|
52025
|
-
|
|
52026
|
-
|
|
50980
|
+
if (screen === "initial") {
|
|
50981
|
+
return /*#__PURE__*/React__default["default"].createElement(Card, {
|
|
50982
|
+
width: width,
|
|
50983
|
+
height: height,
|
|
50984
|
+
backgroundColor: backgroundColor
|
|
50985
|
+
}, /*#__PURE__*/React__default["default"].createElement(Container$1, null, /*#__PURE__*/React__default["default"].createElement(TitleContainer, null, /*#__PURE__*/React__default["default"].createElement(SectionTitle$1, null, "Vendors"), /*#__PURE__*/React__default["default"].createElement(SubtitleContainer, null, /*#__PURE__*/React__default["default"].createElement(Subtitle$1, null, itemAndPackage.filter(item => item.packages !== null).length.toString(), " ", "Vendors", " "), /*#__PURE__*/React__default["default"].createElement("span", null, "\xB7"), /*#__PURE__*/React__default["default"].createElement(Subtitle$1, null, itemAndPackage.filter(item => item.packages !== null).reduce((acc, item) => acc + (item.packages ? item.packages.length : 0), 0), " ", "Packages"))), editMode && /*#__PURE__*/React__default["default"].createElement(ButtonContainer$1, null, /*#__PURE__*/React__default["default"].createElement(Button$1, {
|
|
50986
|
+
leftIcon: "Fly",
|
|
50987
|
+
onClick: () => setScreen("confirmation"),
|
|
50988
|
+
rightIcon: "none",
|
|
50989
|
+
disabled: disabledSendForms,
|
|
50990
|
+
size: "small",
|
|
50991
|
+
text: "Send Forms",
|
|
50992
|
+
type: "secondary",
|
|
50993
|
+
borderRadius: "8px"
|
|
50994
|
+
}), /*#__PURE__*/React__default["default"].createElement(Subtitle$1, null, itemAndPackage.filter(item => item.packages !== null).length.toString(), " ", "Vendors", " "))), /*#__PURE__*/React__default["default"].createElement(AddButtonContainer$1, null, /*#__PURE__*/React__default["default"].createElement(LinkButton, {
|
|
50995
|
+
leftIcon: "Plus",
|
|
50996
|
+
onClick: () => setScreen("list"),
|
|
50997
|
+
rightIcon: "none",
|
|
50998
|
+
size: "small",
|
|
50999
|
+
text: "First Vendor",
|
|
51000
|
+
type: "primary",
|
|
51001
|
+
textColor: linkColor
|
|
51002
|
+
})), /*#__PURE__*/React__default["default"].createElement(VendorList$2, null, itemAndPackage.filter(item => item.packages !== null).map((item, idx) => /*#__PURE__*/React__default["default"].createElement(VendorItem$1, {
|
|
51003
|
+
key: idx
|
|
51004
|
+
}, /*#__PURE__*/React__default["default"].createElement(DotContainer, null, item.packages.length === 0 && /*#__PURE__*/React__default["default"].createElement(RedDot, null)), /*#__PURE__*/React__default["default"].createElement(LineContainer, {
|
|
51005
|
+
onClick: e => {
|
|
51006
|
+
handleVendorClick(item);
|
|
51007
|
+
}
|
|
51008
|
+
}, /*#__PURE__*/React__default["default"].createElement(VendorNameAndPackagesContainer$1, null, /*#__PURE__*/React__default["default"].createElement(VendorName$2, null, item.name), item.packages.length === 0 && /*#__PURE__*/React__default["default"].createElement(Subtitle$1, null, "No Packages"), item.packages.length > 0 && /*#__PURE__*/React__default["default"].createElement(Subtitle$1, null, item.packages.length, " Packages Sent")), /*#__PURE__*/React__default["default"].createElement(VendorChevron$1, null, /*#__PURE__*/React__default["default"].createElement(ArrowRightFullIcon, null))), /*#__PURE__*/React__default["default"].createElement(Trash$1, {
|
|
51009
|
+
className: "trash-icon",
|
|
51010
|
+
onClick: () => {
|
|
51011
|
+
onDeleteVendor(item);
|
|
51012
|
+
}
|
|
51013
|
+
}, /*#__PURE__*/React__default["default"].createElement("svg", {
|
|
51014
|
+
width: "14",
|
|
51015
|
+
height: "18",
|
|
51016
|
+
viewBox: "0 0 14 18",
|
|
51017
|
+
fill: "none",
|
|
51018
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
51019
|
+
}, /*#__PURE__*/React__default["default"].createElement("path", {
|
|
51020
|
+
d: "M1 16C1 17.1 1.9 18 3 18H11C12.1 18 13 17.1 13 16V4H1V16ZM14 1H10.5L9.5 0H4.5L3.5 1H0V3H14V1Z"
|
|
51021
|
+
})))))));
|
|
51022
|
+
}
|
|
52027
51023
|
};
|
|
52028
51024
|
|
|
52029
51025
|
const Overlay = styled__default["default"].div`
|
|
@@ -52108,13 +51104,13 @@ const scrollableStyles = `
|
|
|
52108
51104
|
const DropdownContainer = styled__default["default"].div`
|
|
52109
51105
|
position: relative;
|
|
52110
51106
|
width: ${props => props.width || '100%'};
|
|
52111
|
-
min-width: 320px;
|
|
51107
|
+
/* min-width: 320px; */
|
|
52112
51108
|
max-width: 600px;
|
|
52113
51109
|
font-family: "Poppins", sans-serif;
|
|
52114
51110
|
`;
|
|
52115
51111
|
const DropdownButton = styled__default["default"].button`
|
|
52116
51112
|
width: 100%;
|
|
52117
|
-
min-width: 320px;
|
|
51113
|
+
/* min-width: 320px; */
|
|
52118
51114
|
max-width: 600px;
|
|
52119
51115
|
background: #fff;
|
|
52120
51116
|
border: 1px solid #8B8989;
|
|
@@ -52140,7 +51136,7 @@ const DropdownList = styled__default["default"].ul`
|
|
|
52140
51136
|
margin: 0;
|
|
52141
51137
|
padding: 8px 0;
|
|
52142
51138
|
width: ${props => props.width || '100%'};
|
|
52143
|
-
min-width: 320px;
|
|
51139
|
+
/* min-width: 320px; */
|
|
52144
51140
|
max-width: 600px;
|
|
52145
51141
|
max-height: ${props => props.dropdownMaxHeight || '400px'};
|
|
52146
51142
|
overflow-y: auto;
|
|
@@ -52205,7 +51201,7 @@ styled__default["default"].div`
|
|
|
52205
51201
|
box-shadow: 0 2px 12px rgba(0,0,0,0.12);
|
|
52206
51202
|
padding: 8px 12px;
|
|
52207
51203
|
font-size: 13px;
|
|
52208
|
-
max-width: 320px;
|
|
51204
|
+
/* max-width: 320px; */
|
|
52209
51205
|
white-space: pre-line;
|
|
52210
51206
|
`;
|
|
52211
51207
|
|
|
@@ -52246,17 +51242,17 @@ const FieldRow = styled__default["default"].div`
|
|
|
52246
51242
|
border-bottom: 1px solid #D9D9D9;
|
|
52247
51243
|
`;
|
|
52248
51244
|
const Label = styled__default["default"].label`
|
|
52249
|
-
font-size:
|
|
52250
|
-
color: #
|
|
52251
|
-
min-width: 38px;
|
|
51245
|
+
font-size: 14px;
|
|
51246
|
+
color: #212121;
|
|
52252
51247
|
`;
|
|
52253
51248
|
const Input = styled__default["default"].input`
|
|
52254
|
-
width:
|
|
51249
|
+
width: 64px;
|
|
52255
51250
|
padding: 7px 8px;
|
|
52256
51251
|
border-radius: 7px;
|
|
52257
|
-
border:
|
|
52258
|
-
font-size:
|
|
51252
|
+
border: 1px solid #ccc;
|
|
51253
|
+
font-size: 14px;
|
|
52259
51254
|
outline: none;
|
|
51255
|
+
box-sizing: border-box;
|
|
52260
51256
|
background-color: #F7F8FA;
|
|
52261
51257
|
transition: border 0.18s;
|
|
52262
51258
|
${props => props.error && `
|
|
@@ -52315,7 +51311,10 @@ const OverlayTemplateDialog = ({
|
|
|
52315
51311
|
const [touched, setTouched] = React$1.useState(() => params.map(() => false));
|
|
52316
51312
|
if (!open) return null;
|
|
52317
51313
|
const errors = fields.map((val, idx) => touched[idx] ? validateField(val, params[idx]) : null);
|
|
52318
|
-
|
|
51314
|
+
|
|
51315
|
+
// Check if all fields are filled and valid
|
|
51316
|
+
const allFieldsFilled = fields.every(field => field !== '' && field !== null && field !== undefined);
|
|
51317
|
+
const isValid = allFieldsFilled && errors.every(e => !e);
|
|
52319
51318
|
const handleChange = (idx, val) => {
|
|
52320
51319
|
setFields(prev => prev.map((f, i) => i === idx ? val : f));
|
|
52321
51320
|
};
|
|
@@ -52339,10 +51338,16 @@ const OverlayTemplateDialog = ({
|
|
|
52339
51338
|
if (isValid) onApply(fields);
|
|
52340
51339
|
}
|
|
52341
51340
|
}, /*#__PURE__*/React__default["default"].createElement(FieldRow, null, params.map((param, idx) => /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, {
|
|
52342
|
-
key: param.label
|
|
51341
|
+
key: `${param.label}-${idx}`
|
|
52343
51342
|
}, /*#__PURE__*/React__default["default"].createElement(Label, {
|
|
52344
51343
|
htmlFor: `param-${idx}`
|
|
52345
|
-
}, param.label), /*#__PURE__*/React__default["default"].createElement(
|
|
51344
|
+
}, param.label), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
51345
|
+
style: {
|
|
51346
|
+
display: 'flex',
|
|
51347
|
+
alignItems: 'center',
|
|
51348
|
+
gap: '4px'
|
|
51349
|
+
}
|
|
51350
|
+
}, /*#__PURE__*/React__default["default"].createElement(Input, {
|
|
52346
51351
|
id: `param-${idx}`,
|
|
52347
51352
|
type: "number",
|
|
52348
51353
|
value: fields[idx],
|
|
@@ -52351,6 +51356,20 @@ const OverlayTemplateDialog = ({
|
|
|
52351
51356
|
onBlur: () => handleBlur(idx),
|
|
52352
51357
|
min: 0,
|
|
52353
51358
|
max: param.type === 'percent' ? 100 : undefined
|
|
51359
|
+
}), param.suffix && /*#__PURE__*/React__default["default"].createElement("span", {
|
|
51360
|
+
style: {
|
|
51361
|
+
color: '#212121',
|
|
51362
|
+
fontSize: '14px',
|
|
51363
|
+
whiteSpace: 'nowrap'
|
|
51364
|
+
}
|
|
51365
|
+
}, param.suffix)), errors[idx] && /*#__PURE__*/React__default["default"].createElement("span", {
|
|
51366
|
+
style: {
|
|
51367
|
+
color: 'red',
|
|
51368
|
+
fontSize: '12px',
|
|
51369
|
+
gridColumn: '1 / -1',
|
|
51370
|
+
marginTop: '-8px',
|
|
51371
|
+
marginBottom: '8px'
|
|
51372
|
+
}
|
|
52354
51373
|
})))), /*#__PURE__*/React__default["default"].createElement(Actions, null, /*#__PURE__*/React__default["default"].createElement(Button$1, {
|
|
52355
51374
|
text: "Cancel",
|
|
52356
51375
|
borderRadius: "8px",
|
|
@@ -52365,15 +51384,13 @@ const OverlayTemplateDialog = ({
|
|
|
52365
51384
|
}), /*#__PURE__*/React__default["default"].createElement(Button$1, {
|
|
52366
51385
|
text: "Apply",
|
|
52367
51386
|
borderRadius: "8px",
|
|
52368
|
-
backgroundColor:
|
|
51387
|
+
backgroundColor: buttonColor,
|
|
52369
51388
|
textColor: "#fff",
|
|
52370
|
-
borderColor:
|
|
51389
|
+
borderColor: buttonColor,
|
|
52371
51390
|
hoverTextColor: "#fff",
|
|
52372
|
-
hoverBackgroundColor:
|
|
52373
|
-
hoverBorderColor:
|
|
51391
|
+
hoverBackgroundColor: buttonHoverColor,
|
|
51392
|
+
hoverBorderColor: buttonHoverColor,
|
|
52374
51393
|
disabledTextColor: "#fff",
|
|
52375
|
-
disabledBackgroundColor: buttonColor,
|
|
52376
|
-
disabledBorderColor: buttonColor,
|
|
52377
51394
|
fontSize: "16px",
|
|
52378
51395
|
padding: "8px 22px",
|
|
52379
51396
|
disabled: !isValid,
|
|
@@ -52389,7 +51406,8 @@ OverlayTemplateDialog.propTypes = {
|
|
|
52389
51406
|
template: PropTypes.object,
|
|
52390
51407
|
params: PropTypes.arrayOf(PropTypes.shape({
|
|
52391
51408
|
label: PropTypes.string.isRequired,
|
|
52392
|
-
type: PropTypes.oneOf(['number', 'percent']).isRequired
|
|
51409
|
+
type: PropTypes.oneOf(['number', 'percent']).isRequired,
|
|
51410
|
+
suffix: PropTypes.string
|
|
52393
51411
|
})).isRequired,
|
|
52394
51412
|
buttonColor: PropTypes.string,
|
|
52395
51413
|
buttonHoverColor: PropTypes.string
|
|
@@ -52415,6 +51433,7 @@ const OverlayDropdown = _ref => {
|
|
|
52415
51433
|
const [hoveredText, setHoveredText] = React$1.useState(null);
|
|
52416
51434
|
const [templateDialog, setTemplateDialog] = React$1.useState(null);
|
|
52417
51435
|
const [dropdownPosition, setDropdownPosition] = React$1.useState('below');
|
|
51436
|
+
const [lastDefinedGroup, setLastDefinedGroup] = React$1.useState(null);
|
|
52418
51437
|
const buttonRef = React$1.useRef(null);
|
|
52419
51438
|
const dropdownRef = React$1.useRef(null);
|
|
52420
51439
|
const containerRef = React$1.useRef(null);
|
|
@@ -52457,9 +51476,19 @@ const OverlayDropdown = _ref => {
|
|
|
52457
51476
|
}
|
|
52458
51477
|
}, [open, dropdownMaxHeight]);
|
|
52459
51478
|
|
|
51479
|
+
// Combine original data with "Last defined by you" group
|
|
51480
|
+
const getDataWithLastDefined = () => {
|
|
51481
|
+
const combinedData = [...data];
|
|
51482
|
+
if (lastDefinedGroup) {
|
|
51483
|
+
combinedData.unshift(lastDefinedGroup);
|
|
51484
|
+
}
|
|
51485
|
+
return combinedData;
|
|
51486
|
+
};
|
|
51487
|
+
|
|
52460
51488
|
// Find selected item across all groups
|
|
52461
51489
|
const findSelectedItem = () => {
|
|
52462
|
-
|
|
51490
|
+
const allData = getDataWithLastDefined();
|
|
51491
|
+
for (const group of allData) {
|
|
52463
51492
|
if (group.items) {
|
|
52464
51493
|
const found = group.items.find(item => item.value === value);
|
|
52465
51494
|
if (found) return found;
|
|
@@ -52475,33 +51504,112 @@ const OverlayDropdown = _ref => {
|
|
|
52475
51504
|
if (text.length > 66) return text.slice(0, 66) + '...';
|
|
52476
51505
|
return text;
|
|
52477
51506
|
};
|
|
52478
|
-
|
|
52479
|
-
// Template parameters for templateType === 2
|
|
52480
51507
|
const getTemplateParams = label => {
|
|
51508
|
+
if (!label) return [];
|
|
51509
|
+
|
|
51510
|
+
// Pattern 1: "Buy X & Get Y% Off" - X and Y must be standalone capital letters
|
|
51511
|
+
// Using word boundaries for better browser compatibility
|
|
51512
|
+
const buyGetOffPattern = /^(.*?)\bX\b(.*?)\bY\b(.*)$/;
|
|
51513
|
+
const buyGetOffMatch = label.match(buyGetOffPattern);
|
|
51514
|
+
if (buyGetOffMatch) {
|
|
51515
|
+
const [, beforeX, betweenXY, afterY] = buyGetOffMatch;
|
|
51516
|
+
return [{
|
|
51517
|
+
label: beforeX.trim(),
|
|
51518
|
+
// "Buy "
|
|
51519
|
+
type: 'number',
|
|
51520
|
+
suffix: ''
|
|
51521
|
+
}, {
|
|
51522
|
+
label: betweenXY.trim(),
|
|
51523
|
+
// " & Get "
|
|
51524
|
+
type: 'number',
|
|
51525
|
+
suffix: afterY.trim() // " % Off"
|
|
51526
|
+
}];
|
|
51527
|
+
}
|
|
51528
|
+
|
|
51529
|
+
// Pattern 2: Single variable patterns - X or Y must be standalone capital letters
|
|
51530
|
+
const singleVariablePattern = /^(.*?)\b([XY])\b(.*)$/;
|
|
51531
|
+
const singleVariableMatch = label.match(singleVariablePattern);
|
|
51532
|
+
if (singleVariableMatch) {
|
|
51533
|
+
const [, beforeVar, variable, afterVar] = singleVariableMatch;
|
|
51534
|
+
return [{
|
|
51535
|
+
label: beforeVar.trim(),
|
|
51536
|
+
// "Buy "
|
|
51537
|
+
type: 'number',
|
|
51538
|
+
suffix: afterVar.trim() // " of item(s), Get Free Item"
|
|
51539
|
+
}];
|
|
51540
|
+
}
|
|
51541
|
+
|
|
51542
|
+
// Fallback: if no pattern matches, treat as single input
|
|
52481
51543
|
return [{
|
|
52482
|
-
label: 'Value
|
|
52483
|
-
type: 'number'
|
|
52484
|
-
|
|
52485
|
-
label: 'Value 2',
|
|
52486
|
-
type: 'number'
|
|
51544
|
+
label: 'Value',
|
|
51545
|
+
type: 'number',
|
|
51546
|
+
suffix: ''
|
|
52487
51547
|
}];
|
|
52488
51548
|
};
|
|
51549
|
+
const generateFinalSentence = (template, values) => {
|
|
51550
|
+
let sentence = template.label;
|
|
51551
|
+
|
|
51552
|
+
// Pattern 1: "Buy X & Get Y% Off" - X and Y must be standalone capital letters
|
|
51553
|
+
const buyGetOffPattern = /^(.*?)\bX\b(.*?)\bY\b(.*)$/;
|
|
51554
|
+
const buyGetOffMatch = sentence.match(buyGetOffPattern);
|
|
51555
|
+
if (buyGetOffMatch && values.length >= 2) {
|
|
51556
|
+
const [, beforeX, betweenXY, afterY] = buyGetOffMatch;
|
|
51557
|
+
return beforeX + values[0] + betweenXY + values[1] + afterY;
|
|
51558
|
+
}
|
|
51559
|
+
|
|
51560
|
+
// Pattern 2: Single variable patterns - X or Y must be standalone capital letters
|
|
51561
|
+
const singleVariablePattern = /^(.*?)\b([XY])\b(.*)$/;
|
|
51562
|
+
const singleVariableMatch = sentence.match(singleVariablePattern);
|
|
51563
|
+
if (singleVariableMatch && values.length >= 1) {
|
|
51564
|
+
const [, beforeVar, variable, afterVar] = singleVariableMatch;
|
|
51565
|
+
return beforeVar + values[0] + afterVar;
|
|
51566
|
+
}
|
|
51567
|
+
|
|
51568
|
+
// Fallback
|
|
51569
|
+
return sentence;
|
|
51570
|
+
};
|
|
52489
51571
|
const handleTemplateApply = fields => {
|
|
52490
51572
|
if (templateDialog && onSelectClick) {
|
|
52491
|
-
const
|
|
51573
|
+
const finalSentence = generateFinalSentence(templateDialog.item, fields);
|
|
51574
|
+
|
|
51575
|
+
// Create new item for "Last defined by you" group
|
|
51576
|
+
const newItem = {
|
|
52492
51577
|
...templateDialog.item,
|
|
51578
|
+
label: finalSentence,
|
|
51579
|
+
value: `last_defined_${Date.now()}`,
|
|
51580
|
+
// Unique value
|
|
52493
51581
|
overlayCode: templateDialog.group.overlayCode,
|
|
52494
51582
|
overlayName: templateDialog.group.overlayName,
|
|
52495
51583
|
templateType: templateDialog.group.templateType,
|
|
52496
51584
|
appliedValues: fields
|
|
52497
51585
|
};
|
|
51586
|
+
|
|
51587
|
+
// Update "Last defined by you" group - add to existing or create new
|
|
51588
|
+
if (lastDefinedGroup) {
|
|
51589
|
+
// Add to existing group
|
|
51590
|
+
setLastDefinedGroup({
|
|
51591
|
+
...lastDefinedGroup,
|
|
51592
|
+
items: [newItem, ...lastDefinedGroup.items] // Add new item at the beginning
|
|
51593
|
+
});
|
|
51594
|
+
} else {
|
|
51595
|
+
// Create new group
|
|
51596
|
+
setLastDefinedGroup({
|
|
51597
|
+
overlayCode: 'last_defined',
|
|
51598
|
+
overlayName: 'Last defined by you',
|
|
51599
|
+
templateType: 1,
|
|
51600
|
+
items: [newItem]
|
|
51601
|
+
});
|
|
51602
|
+
}
|
|
52498
51603
|
setTemplateDialog(null);
|
|
52499
|
-
|
|
51604
|
+
|
|
51605
|
+
// Select the new item
|
|
51606
|
+
onSelectClick(newItem);
|
|
52500
51607
|
}
|
|
52501
51608
|
};
|
|
52502
51609
|
const toggleDropdown = () => {
|
|
52503
51610
|
setOpen(prev => !prev);
|
|
52504
51611
|
};
|
|
51612
|
+
const dataToRender = getDataWithLastDefined();
|
|
52505
51613
|
return /*#__PURE__*/React__default["default"].createElement(DropdownContainer, {
|
|
52506
51614
|
width: width,
|
|
52507
51615
|
ref: containerRef
|
|
@@ -52532,7 +51640,7 @@ const OverlayDropdown = _ref => {
|
|
|
52532
51640
|
dropdownMaxHeight: dropdownMaxHeight,
|
|
52533
51641
|
width: width,
|
|
52534
51642
|
position: dropdownPosition
|
|
52535
|
-
},
|
|
51643
|
+
}, dataToRender.map((group, groupIndex) => group.items && group.items.length > 0 && /*#__PURE__*/React__default["default"].createElement("div", {
|
|
52536
51644
|
key: group.overlayCode
|
|
52537
51645
|
}, /*#__PURE__*/React__default["default"].createElement(SectionTitle, null, group.overlayName), group.items.map(item => /*#__PURE__*/React__default["default"].createElement(DropdownItem, {
|
|
52538
51646
|
key: item.value,
|