fis-component 0.1.8 → 0.1.10
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.js +109 -88
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/src/components/Select/index.d.ts +2 -2
- package/dist/cjs/types/src/components/Select/types.d.ts +4 -0
- package/dist/cjs/types/src/components/Switch/Switch.stories.d.ts +2 -2
- package/dist/cjs/types/src/components/Switch/index.d.ts +4 -0
- package/dist/cjs/types/src/components/Switch/styles.d.ts +1 -0
- package/dist/cjs/types/src/components/Table/ColumnCell/index.d.ts +4 -0
- package/dist/cjs/types/src/components/Table/HeaderCell/index.d.ts +1 -0
- package/dist/cjs/types/src/components/Tooltip/index.d.ts +1 -1
- package/dist/esm/index.js +109 -88
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/src/components/Select/index.d.ts +2 -2
- package/dist/esm/types/src/components/Select/types.d.ts +4 -0
- package/dist/esm/types/src/components/Switch/Switch.stories.d.ts +2 -2
- package/dist/esm/types/src/components/Switch/index.d.ts +4 -0
- package/dist/esm/types/src/components/Switch/styles.d.ts +1 -0
- package/dist/esm/types/src/components/Table/ColumnCell/index.d.ts +4 -0
- package/dist/esm/types/src/components/Table/HeaderCell/index.d.ts +1 -0
- package/dist/esm/types/src/components/Tooltip/index.d.ts +1 -1
- package/dist/index.d.ts +15 -2
- package/package.json +1 -1
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { SelectProps } from "./types";
|
|
2
|
-
declare const FISSelect: import("react").ForwardRefExoticComponent<SelectProps<string | number> & import("react").RefAttributes<
|
|
1
|
+
import { FISSelectRef, SelectProps } from "./types";
|
|
2
|
+
declare const FISSelect: import("react").ForwardRefExoticComponent<SelectProps<string | number> & import("react").RefAttributes<FISSelectRef>>;
|
|
3
3
|
export default FISSelect;
|
|
@@ -43,4 +43,8 @@ export type MultiSelectProps<T extends string | number> = BaseSelectProps<T> & {
|
|
|
43
43
|
displayValue?: (items: SelectOptionItem<T>[]) => string;
|
|
44
44
|
};
|
|
45
45
|
export type SelectProps<T extends string | number> = SingleSelectProps<T> | MultiSelectProps<T>;
|
|
46
|
+
export interface FISSelectRef {
|
|
47
|
+
focus: () => void;
|
|
48
|
+
openDropdown: () => void;
|
|
49
|
+
}
|
|
46
50
|
export {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { Meta, StoryObj } from
|
|
2
|
-
import FISSwitch from
|
|
1
|
+
import type { Meta, StoryObj } from "@storybook/react";
|
|
2
|
+
import FISSwitch from ".";
|
|
3
3
|
declare const meta: Meta<typeof FISSwitch>;
|
|
4
4
|
export default meta;
|
|
5
5
|
type Story = StoryObj<typeof FISSwitch>;
|
|
@@ -46,6 +46,10 @@ interface SwitchProps {
|
|
|
46
46
|
* - Used to update the `isOn` state.
|
|
47
47
|
*/
|
|
48
48
|
onToggle: () => void;
|
|
49
|
+
textLabel?: string;
|
|
50
|
+
required?: boolean;
|
|
51
|
+
iconLabel?: React.ReactNode;
|
|
52
|
+
onClickIconLabel?: () => void;
|
|
49
53
|
}
|
|
50
54
|
declare const FISSwitch: React.ForwardRefExoticComponent<SwitchProps & React.RefAttributes<HTMLDivElement>>;
|
|
51
55
|
export default FISSwitch;
|
|
@@ -13,6 +13,7 @@ export declare const DivSwitchKnobSC: import("styled-components/dist/types").ISt
|
|
|
13
13
|
$isOn: boolean;
|
|
14
14
|
$size: SwitchSize;
|
|
15
15
|
}>> & string;
|
|
16
|
+
export declare const DivWrapperSC: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
|
|
16
17
|
export declare const DivSwitchContainerSC: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
|
|
17
18
|
$size: SwitchSize;
|
|
18
19
|
$isOn: boolean;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { DetailedHTMLProps, HTMLAttributes, ReactElement } from "react";
|
|
2
|
+
import { TooltipPlacement } from "antd/es/tooltip";
|
|
2
3
|
interface ColumnCellProps extends Omit<DetailedHTMLProps<HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref" | "content"> {
|
|
3
4
|
className?: string;
|
|
4
5
|
textAlign?: string;
|
|
@@ -9,6 +10,9 @@ interface ColumnCellProps extends Omit<DetailedHTMLProps<HTMLAttributes<HTMLDivE
|
|
|
9
10
|
icon?: ReactElement;
|
|
10
11
|
disabled?: boolean;
|
|
11
12
|
hasBorder?: boolean;
|
|
13
|
+
tooltip?: boolean;
|
|
14
|
+
placement?: TooltipPlacement;
|
|
15
|
+
variantTooltip?: "primary" | "secondary";
|
|
12
16
|
}
|
|
13
17
|
declare const FISTableCell: import("react").ForwardRefExoticComponent<ColumnCellProps & import("react").RefAttributes<HTMLLabelElement>>;
|
|
14
18
|
export default FISTableCell;
|
|
@@ -9,6 +9,7 @@ interface HeaderCellProps extends Omit<DetailedHTMLProps<HTMLAttributes<HTMLDivE
|
|
|
9
9
|
hasRightDivider?: boolean;
|
|
10
10
|
hasTruncateLabel?: boolean;
|
|
11
11
|
onlyIcon?: boolean;
|
|
12
|
+
required?: boolean;
|
|
12
13
|
}
|
|
13
14
|
declare const FISTableHeaderCell: import("react").ForwardRefExoticComponent<HeaderCellProps & import("react").RefAttributes<HTMLLabelElement>>;
|
|
14
15
|
export default FISTableHeaderCell;
|
|
@@ -16,7 +16,7 @@ interface TooltipProps extends Omit<TooltipPropsAntd, "variant" | "title"> {
|
|
|
16
16
|
/** Additional class names to apply to the tooltip*/
|
|
17
17
|
className?: string | undefined;
|
|
18
18
|
/** The color of the tooltip */
|
|
19
|
-
variant
|
|
19
|
+
variant?: TooltipColor;
|
|
20
20
|
/** The tooltip title, which can be a custom object or a React node */
|
|
21
21
|
title: TooltipTitleCustom | React.ReactNode;
|
|
22
22
|
/** The size of the tooltip (optional) */
|
package/dist/esm/index.js
CHANGED
|
@@ -61873,6 +61873,11 @@ function SeparatorIcon(props) {
|
|
|
61873
61873
|
return (jsx("svg", { width: width, height: height, viewBox: "0 0 12 12", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest, children: jsx("path", { d: "M3.5 11L8.5 1", stroke: "currentColor", strokeWidth: "1.3", strokeLinecap: "round", strokeLinejoin: "round" }) }));
|
|
61874
61874
|
}
|
|
61875
61875
|
|
|
61876
|
+
function HomeIcon(props) {
|
|
61877
|
+
const { width = 16, height = 16, ...rest } = props;
|
|
61878
|
+
return (jsx("svg", { width: width, height: height, viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest, children: jsx("path", { d: "M5.33333 11.3333H10.6667M7.34513 1.84267L2.82359 5.35942C2.52135 5.5945 2.37022 5.71204 2.26135 5.85925C2.16491 5.98964 2.09307 6.13653 2.04935 6.29271C2 6.46902 2 6.66047 2 7.04338V11.8667C2 12.6134 2 12.9868 2.14532 13.272C2.27316 13.5229 2.47713 13.7268 2.72801 13.8547C3.01323 14 3.3866 14 4.13333 14H11.8667C12.6134 14 12.9868 14 13.272 13.8547C13.5229 13.7268 13.7268 13.5229 13.8547 13.272C14 12.9868 14 12.6134 14 11.8667V7.04338C14 6.66047 14 6.46902 13.9506 6.29271C13.9069 6.13653 13.8351 5.98964 13.7386 5.85925C13.6298 5.71204 13.4787 5.5945 13.1764 5.35942L8.65487 1.84267C8.42065 1.6605 8.30354 1.56942 8.17423 1.53441C8.06013 1.50351 7.93987 1.50351 7.82577 1.53441C7.69646 1.56942 7.57935 1.6605 7.34513 1.84267Z", stroke: "currentColor", "stroke-linecap": "round", "stroke-linejoin": "round" }) }));
|
|
61879
|
+
}
|
|
61880
|
+
|
|
61876
61881
|
function CloseIcon(props) {
|
|
61877
61882
|
const { width = 16, height = 16, ...rest } = props;
|
|
61878
61883
|
return (jsx("svg", { width: width, height: height, viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest, children: jsx("path", { d: "M12.6671 3.33325L3.33374 12.6666M3.33374 3.33325L12.6671 12.6666", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round" }) }));
|
|
@@ -63122,6 +63127,12 @@ const DivSwitchKnobSC = styled.div `
|
|
|
63122
63127
|
left: ${getTheme("com/switch/item/size-md/left-padding")};
|
|
63123
63128
|
`}
|
|
63124
63129
|
`;
|
|
63130
|
+
const DivWrapperSC$6 = styled.div `
|
|
63131
|
+
display: flex;
|
|
63132
|
+
flex-direction: column;
|
|
63133
|
+
gap: ${getTheme("com/input/vertical-gap")};
|
|
63134
|
+
width: fit-content;
|
|
63135
|
+
`;
|
|
63125
63136
|
const DivSwitchContainerSC = styled.div `
|
|
63126
63137
|
display: flex;
|
|
63127
63138
|
align-items: flex-start;
|
|
@@ -63189,9 +63200,29 @@ const DivSwitchContainerSC = styled.div `
|
|
|
63189
63200
|
`}
|
|
63190
63201
|
`;
|
|
63191
63202
|
|
|
63192
|
-
const
|
|
63203
|
+
const DivLabelSC = styled.div `
|
|
63204
|
+
width: 100%;
|
|
63205
|
+
display: flex;
|
|
63206
|
+
align-items: center;
|
|
63207
|
+
`;
|
|
63208
|
+
const LabelTextSC = styled.label `
|
|
63209
|
+
${getTheme("Label/Sm")}
|
|
63210
|
+
color: ${getTheme("com/input/label/label/color-text")};
|
|
63211
|
+
`;
|
|
63212
|
+
const SpanRequiredSC = styled.span `
|
|
63213
|
+
${getTheme("Label/Sm")}
|
|
63214
|
+
color: ${getTheme("com/input/label/required-mark/color-text")};
|
|
63215
|
+
`;
|
|
63216
|
+
|
|
63217
|
+
const FISInputLabel = (props) => {
|
|
63218
|
+
const { textLabel, required, iconLabel, onClickIconLabel } = props;
|
|
63219
|
+
return (jsxs(DivLabelSC, { children: [jsxs(LabelTextSC, { children: [textLabel, required && jsx(SpanRequiredSC, { children: "\u00A0*" })] }), iconLabel && (jsx(FISIconButton, { size: "xs", variant: "tertiary-invisible", icon: iconLabel, onClick: onClickIconLabel }))] }));
|
|
63220
|
+
};
|
|
63221
|
+
FISInputLabel.displayName = "FISInputLabel";
|
|
63222
|
+
|
|
63223
|
+
const FISSwitch = forwardRef(({ isOn, disabled = false, size = "md", label, subLabel, onToggle, textLabel = "", required, iconLabel, onClickIconLabel, ...props }, ref) => {
|
|
63193
63224
|
const labelContent = label || subLabel ? (jsxs(DivSwitchLabelContainerSC, { children: [label && jsx(SpanLabelSC$2, { "$size": size, children: label }), subLabel && jsx(SpanSubLabelSC$1, { "$size": size, children: subLabel })] })) : null;
|
|
63194
|
-
return (jsxs(DivSwitchContainerSC, { ref: ref, "$size": size, "$isOn": isOn, "$disabled": disabled,
|
|
63225
|
+
return (jsxs(DivWrapperSC$6, { ...props, onClick: () => !disabled && onToggle(), children: [(textLabel || iconLabel) && (jsx(FISInputLabel, { textLabel: textLabel, required: required, iconLabel: iconLabel, onClickIconLabel: onClickIconLabel })), jsxs(DivSwitchContainerSC, { ref: ref, "$size": size, "$isOn": isOn, "$disabled": disabled, children: [jsx(DivSwitchTrackSC, { "$isOn": isOn, children: jsx(DivSwitchKnobSC, { "$isOn": isOn, "$size": size }) }), labelContent] })] }));
|
|
63195
63226
|
});
|
|
63196
63227
|
// Add display name for better debugging experience
|
|
63197
63228
|
FISSwitch.displayName = "FISSwitch";
|
|
@@ -64210,7 +64241,7 @@ const BreadcrumbEllipsis = () => (jsxs(Fragment, { children: [jsx(DivIconDotSC,
|
|
|
64210
64241
|
const FISBreadcrumb = ({ items, className }) => {
|
|
64211
64242
|
if (items.length === 0)
|
|
64212
64243
|
return null;
|
|
64213
|
-
return (jsxs(DivContainerSC$9, { className: className, children: [
|
|
64244
|
+
return (jsxs(DivContainerSC$9, { className: className, children: [jsxs(Fragment, { children: [jsx(FISIconButton, { size: "xs", icon: items?.[0]?.icon ?? jsx(HomeIcon, {}), variant: "tertiary-invisible", onClick: items[0].onClick }), jsx(DivSeparatorIconSC$1, { children: jsx(SeparatorIcon, {}) })] }), items.length > MAX_VISIBLE_ITEMS ? (jsxs(Fragment, { children: [items.slice(1, 2).map((item, index) => (jsxs(React__default.Fragment, { children: [jsx(BreadcrumbItem, { ...item }), jsx(DivSeparatorIconSC$1, { children: jsx(SeparatorIcon, {}) })] }, index))), jsx(BreadcrumbEllipsis, {}), items.slice(-2).map((item, index) => (jsxs(React__default.Fragment, { children: [jsx(BreadcrumbItem, { ...item }), jsx(DivSeparatorIconSC$1, { children: jsx(SeparatorIcon, {}) })] }, `end-${index}`)))] })) : (jsx(Fragment, { children: items.slice(1).map((item, index) => (jsxs(React__default.Fragment, { children: [jsx(BreadcrumbItem, { ...item }), jsx(DivSeparatorIconSC$1, { children: jsx(SeparatorIcon, {}) })] }, index))) }))] }));
|
|
64214
64245
|
};
|
|
64215
64246
|
FISBreadcrumb.displayName = "FISBreadcrumb";
|
|
64216
64247
|
|
|
@@ -65285,26 +65316,6 @@ const SpanHintSC$3 = styled.span `
|
|
|
65285
65316
|
}
|
|
65286
65317
|
`;
|
|
65287
65318
|
|
|
65288
|
-
const DivLabelSC = styled.div `
|
|
65289
|
-
width: 100%;
|
|
65290
|
-
display: flex;
|
|
65291
|
-
align-items: center;
|
|
65292
|
-
`;
|
|
65293
|
-
const LabelTextSC = styled.label `
|
|
65294
|
-
${getTheme("Label/Sm")}
|
|
65295
|
-
color: ${getTheme("com/input/label/label/color-text")};
|
|
65296
|
-
`;
|
|
65297
|
-
const SpanRequiredSC = styled.span `
|
|
65298
|
-
${getTheme("Label/Sm")}
|
|
65299
|
-
color: ${getTheme("com/input/label/required-mark/color-text")};
|
|
65300
|
-
`;
|
|
65301
|
-
|
|
65302
|
-
const FISInputLabel = (props) => {
|
|
65303
|
-
const { textLabel, required, iconLabel, onClickIconLabel } = props;
|
|
65304
|
-
return (jsxs(DivLabelSC, { children: [jsxs(LabelTextSC, { children: [textLabel, required && jsx(SpanRequiredSC, { children: "\u00A0*" })] }), iconLabel && (jsx(FISIconButton, { size: "xs", variant: "tertiary-invisible", icon: iconLabel, onClick: onClickIconLabel }))] }));
|
|
65305
|
-
};
|
|
65306
|
-
FISInputLabel.displayName = "FISInputLabel";
|
|
65307
|
-
|
|
65308
65319
|
/**
|
|
65309
65320
|
* A utility function to merge multiple React refs into a single callback function.
|
|
65310
65321
|
* This function accepts any number of refs as arguments and returns a callback function.
|
|
@@ -66493,13 +66504,13 @@ const FISInputArea = forwardRef((props, ref) => {
|
|
|
66493
66504
|
"input-area-icon": iconSuffix,
|
|
66494
66505
|
}) }), iconSuffix && (jsx(DivIconSC$1, { className: classNames({
|
|
66495
66506
|
"input-area-lg": size === "lg",
|
|
66496
|
-
}), children: jsx(FISIconButton, { variant: "tertiary-invisible", size: "sm", icon: iconSuffix, onClick: onClickIconSuffix }) })), jsx(DivResizeSC, { id: "resizeHandle", onMouseDown: handleResize, children: jsx(ResizeIcon, {}) })] }), jsxs(DivBottomSC, { children: [jsx(SpanHintSC$2, { className: classNames({
|
|
66507
|
+
}), children: jsx(FISIconButton, { variant: "tertiary-invisible", size: "sm", icon: iconSuffix, onClick: onClickIconSuffix }) })), jsx(DivResizeSC, { id: "resizeHandle", onMouseDown: handleResize, children: jsx(ResizeIcon, {}) })] }), (!!message || (showCount && maxLength > 0)) && (jsxs(DivBottomSC, { children: [jsx(SpanHintSC$2, { className: classNames({
|
|
66497
66508
|
disabled,
|
|
66498
66509
|
negative,
|
|
66499
66510
|
positive,
|
|
66500
66511
|
}), children: message ? message : "" }), jsx(DivCountSC, { children: showCount && maxLength > 0 && (jsxs("span", { className: classNames("text-area__count", {
|
|
66501
66512
|
negative: getCurrentValue()?.length > maxLength,
|
|
66502
|
-
}), children: [getCurrentValue()?.length, "/", maxLength] })) })] })] }));
|
|
66513
|
+
}), children: [getCurrentValue()?.length, "/", maxLength] })) })] }))] }));
|
|
66503
66514
|
});
|
|
66504
66515
|
FISInputArea.displayName = "FISInputArea";
|
|
66505
66516
|
|
|
@@ -72554,28 +72565,36 @@ const DivHeaderCellContainerSC = styled.div `
|
|
|
72554
72565
|
justify-content: ${(props) => props.$textAlign === "right" ? "flex-end" : "space-between"};
|
|
72555
72566
|
width: 100%;
|
|
72556
72567
|
gap: ${getTheme("com/table/title-cell/default/label/vertical-gap")};
|
|
72568
|
+
.label-container {
|
|
72569
|
+
display: flex;
|
|
72570
|
+
gap: 4px;
|
|
72557
72571
|
|
|
72558
|
-
|
|
72559
|
-
|
|
72560
|
-
|
|
72561
|
-
|
|
72562
|
-
|
|
72563
|
-
|
|
72572
|
+
.label {
|
|
72573
|
+
${getTheme("Label/XS")};
|
|
72574
|
+
width: 100%;
|
|
72575
|
+
display: inline-block;
|
|
72576
|
+
${(props) => (props.$textAlign === "right" ? "text-align: end" : "")};
|
|
72577
|
+
color: ${(props) => getTheme(`com/table/title-cell/${props?.$disabled ? "disable" : "default"}/label/color-text`)};
|
|
72564
72578
|
|
|
72565
|
-
|
|
72579
|
+
${(props) => {
|
|
72566
72580
|
if (props.$hasTruncateLabel) {
|
|
72567
72581
|
return css `
|
|
72568
|
-
|
|
72569
|
-
|
|
72570
|
-
|
|
72571
|
-
|
|
72582
|
+
white-space: nowrap;
|
|
72583
|
+
overflow: hidden;
|
|
72584
|
+
text-overflow: ellipsis;
|
|
72585
|
+
`;
|
|
72572
72586
|
}
|
|
72573
72587
|
else {
|
|
72574
72588
|
return css `
|
|
72575
|
-
|
|
72576
|
-
|
|
72589
|
+
white-space: pre-wrap;
|
|
72590
|
+
`;
|
|
72577
72591
|
}
|
|
72578
72592
|
}};
|
|
72593
|
+
}
|
|
72594
|
+
.required-asterisk {
|
|
72595
|
+
${getTheme("Label/XS")};
|
|
72596
|
+
color: #D92D20;
|
|
72597
|
+
}
|
|
72579
72598
|
}
|
|
72580
72599
|
|
|
72581
72600
|
.right-component-father {
|
|
@@ -72609,8 +72628,8 @@ const DivHeaderCellContainerSC = styled.div `
|
|
|
72609
72628
|
}
|
|
72610
72629
|
`;
|
|
72611
72630
|
|
|
72612
|
-
const FISTableHeaderCell = forwardRef(({ className, label, description, rightComponent, disabled, hasRightDivider = true, hasTruncateLabel = false, onlyIcon = false, textAlign = "left", ...rest }, ref) => {
|
|
72613
|
-
return (jsx(DivHeaderCellContainerSC, { ref: ref, className: classNames("header-cell-container", className), "$textAlign": textAlign, "$disabled": disabled, "$hasTruncateLabel": hasTruncateLabel, "$hasRightDivider": hasRightDivider, "$onlyIcon": onlyIcon, ...rest, children: jsxs("div", { className: "header-cell-content", children: [jsxs("div", { className: "cell-content title", children: [label && jsx("div", { className: "label", children: label }), rightComponent && (jsx("div", { className: "right-component-father", children: rightComponent }))] }), description && (jsx("div", { className: "cell-content", children: jsx("div", { className: "description", children: description }) }))] }) }));
|
|
72631
|
+
const FISTableHeaderCell = forwardRef(({ className, label, description, rightComponent, disabled, hasRightDivider = true, hasTruncateLabel = false, onlyIcon = false, textAlign = "left", required, ...rest }, ref) => {
|
|
72632
|
+
return (jsx(DivHeaderCellContainerSC, { ref: ref, className: classNames("header-cell-container", className), "$textAlign": textAlign, "$disabled": disabled, "$hasTruncateLabel": hasTruncateLabel, "$hasRightDivider": hasRightDivider, "$onlyIcon": onlyIcon, ...rest, children: jsxs("div", { className: "header-cell-content", children: [jsxs("div", { className: "cell-content title", children: [label && (jsxs("div", { className: "label-container", children: [jsx("div", { className: "label", children: label }), required && jsx("div", { className: "required-asterisk", children: "*" })] })), rightComponent && (jsx("div", { className: "right-component-father", children: rightComponent }))] }), description && (jsx("div", { className: "cell-content", children: jsx("div", { className: "description", children: description }) }))] }) }));
|
|
72614
72633
|
});
|
|
72615
72634
|
FISTableHeaderCell.displayName = "FISTableHeaderCell";
|
|
72616
72635
|
|
|
@@ -72910,8 +72929,8 @@ const DivIconSC = styled.div `
|
|
|
72910
72929
|
}}
|
|
72911
72930
|
`;
|
|
72912
72931
|
|
|
72913
|
-
const FISTableCell = forwardRef(({ className, textAlign, variant = COLUMN_VARIANT.PRIMARY, content, description, icon, disabled, hasBorder, onChange, contentWrapText = false, ...rest }, ref) => {
|
|
72914
|
-
return (jsx(DivColumnCellContainerSC, { "$hasBorder": hasBorder, "$disabled": disabled, "$variant": variant, "$textAlign": textAlign, "$contentWrapText": contentWrapText, "$hasContent": content ? "true" : undefined, "$hasDescription": description, ref: ref, className: classNames("column-cell-container", className), ...rest, children: textAlign === COLUMN_TEXT_ALIGN.SINGLE_LINE ? (jsxs("div", { className: "single-line-content", children: [icon && (jsx("div", { className: "icon-box", children: jsx(DivIconSC, { "$textAlign": textAlign, "$variant": variant, "$disabled": disabled, "$hasContent": content ? "true" : undefined, "$hasDescription": description, children: icon }) })), (content || description) && (jsxs("div", { className: "content-box", children: [content && jsx("div", { className: "content", children: content }), description && (jsx("div", { className: "description", children: description }))] }))] })) : (jsxs("div", { className: "left-right-content", children: [(icon || content) && (jsxs("div", { className: "content-box", children: [icon && (jsx(DivIconSC, { "$textAlign": textAlign, "$variant": variant, "$disabled": disabled, "$hasContent": content ? "true" : undefined, "$hasDescription": description, children: icon })), content && jsx("div", { className: "content", children: content })] })), description && jsx("div", { className: "description", children: description })] })) }));
|
|
72932
|
+
const FISTableCell = forwardRef(({ className, textAlign, variant = COLUMN_VARIANT.PRIMARY, content, description, icon, disabled, hasBorder, onChange, contentWrapText = false, tooltip = false, placement = "top", variantTooltip = "primary", ...rest }, ref) => {
|
|
72933
|
+
return (jsx(FISTooltip, { variant: variantTooltip, placement: placement, title: tooltip ? content || "" : undefined, children: jsx(DivColumnCellContainerSC, { "$hasBorder": hasBorder, "$disabled": disabled, "$variant": variant, "$textAlign": textAlign, "$contentWrapText": contentWrapText, "$hasContent": content ? "true" : undefined, "$hasDescription": description, ref: ref, className: classNames("column-cell-container", className), ...rest, children: textAlign === COLUMN_TEXT_ALIGN.SINGLE_LINE ? (jsxs("div", { className: "single-line-content", children: [icon && (jsx("div", { className: "icon-box", children: jsx(DivIconSC, { "$textAlign": textAlign, "$variant": variant, "$disabled": disabled, "$hasContent": content ? "true" : undefined, "$hasDescription": description, children: icon }) })), (content || description) && (jsxs("div", { className: "content-box", children: [content && jsx("div", { className: "content", children: content }), description && (jsx("div", { className: "description", children: description }))] }))] })) : (jsxs("div", { className: "left-right-content", children: [(icon || content) && (jsxs("div", { className: "content-box", children: [icon && (jsx(DivIconSC, { "$textAlign": textAlign, "$variant": variant, "$disabled": disabled, "$hasContent": content ? "true" : undefined, "$hasDescription": description, children: icon })), content && jsx("div", { className: "content", children: content })] })), description && jsx("div", { className: "description", children: description })] })) }) }));
|
|
72915
72934
|
});
|
|
72916
72935
|
FISTableCell.displayName = "FISTableCell";
|
|
72917
72936
|
|
|
@@ -74324,48 +74343,6 @@ const FISSplitButton = forwardRef((props, ref) => {
|
|
|
74324
74343
|
});
|
|
74325
74344
|
FISSplitButton.displayName = "FISSplitButton";
|
|
74326
74345
|
|
|
74327
|
-
const DivWrapperSC$1 = styled.div `
|
|
74328
|
-
width: 100%;
|
|
74329
|
-
display: flex;
|
|
74330
|
-
flex-direction: column;
|
|
74331
|
-
gap: ${getTheme("com/input/vertical-gap")};
|
|
74332
|
-
`;
|
|
74333
|
-
const preventSelection = css `
|
|
74334
|
-
user-select: none !important;
|
|
74335
|
-
-webkit-user-select: none !important;
|
|
74336
|
-
-moz-user-select: none !important;
|
|
74337
|
-
-ms-user-select: none !important;
|
|
74338
|
-
cursor: pointer !important;
|
|
74339
|
-
`;
|
|
74340
|
-
const DivInputWrapperSC = styled.div `
|
|
74341
|
-
position: relative;
|
|
74342
|
-
display: inline-block;
|
|
74343
|
-
width: 100%;
|
|
74344
|
-
|
|
74345
|
-
${(props) => props.$hasValue &&
|
|
74346
|
-
css `
|
|
74347
|
-
${preventSelection}
|
|
74348
|
-
|
|
74349
|
-
input {
|
|
74350
|
-
${preventSelection}
|
|
74351
|
-
pointer-events: none;
|
|
74352
|
-
}
|
|
74353
|
-
`}
|
|
74354
|
-
`;
|
|
74355
|
-
const DivDropdownMenuSC = styled.div `
|
|
74356
|
-
margin-top: ${getTheme("com/select/vertical-gap")};
|
|
74357
|
-
`;
|
|
74358
|
-
const SelectedTagsWrapper = styled.div `
|
|
74359
|
-
display: flex;
|
|
74360
|
-
flex-wrap: wrap;
|
|
74361
|
-
gap: ${getTheme("com/combo-box/selected-data/horizontal-gap")};
|
|
74362
|
-
width: 100%;
|
|
74363
|
-
max-height: calc(
|
|
74364
|
-
2 * ${getTheme("com/chips-button/size-xs/height")} +
|
|
74365
|
-
${getTheme("com/combo-box/selected-data/horizontal-gap")}
|
|
74366
|
-
);
|
|
74367
|
-
`;
|
|
74368
|
-
|
|
74369
74346
|
const InputSC = styled.input `
|
|
74370
74347
|
width: 100%;
|
|
74371
74348
|
cursor: pointer;
|
|
@@ -74443,7 +74420,7 @@ const InputSC = styled.input `
|
|
|
74443
74420
|
}
|
|
74444
74421
|
}
|
|
74445
74422
|
`;
|
|
74446
|
-
const DivWrapperSC = styled.div `
|
|
74423
|
+
const DivWrapperSC$1 = styled.div `
|
|
74447
74424
|
width: 100%;
|
|
74448
74425
|
display: flex;
|
|
74449
74426
|
align-items: center;
|
|
@@ -74647,10 +74624,52 @@ const FISSelectItem = forwardRef((props, ref) => {
|
|
|
74647
74624
|
iconPrefix: iconPrefix,
|
|
74648
74625
|
negative: negative,
|
|
74649
74626
|
activeDropdown: activeDropdown,
|
|
74650
|
-
}), "$size": size, "$activeDropdown": activeDropdown, children: jsxs(DivWrapperSC, { children: [iconPrefix && (jsx(DivIconPrefixSC, { "$size": size, children: iconPrefix })), jsx(InputSC, { ...rest, ref: ref, disabled: disabled, "$size": size, autoComplete: "off" }), iconSuffix && (jsx(DivIconSuffixSC, { "$size": size, "$disabled": disabled, children: iconSuffix }))] }) }));
|
|
74627
|
+
}), "$size": size, "$activeDropdown": activeDropdown, children: jsxs(DivWrapperSC$1, { children: [iconPrefix && (jsx(DivIconPrefixSC, { "$size": size, children: iconPrefix })), jsx(InputSC, { ...rest, ref: ref, disabled: disabled, "$size": size, autoComplete: "off" }), iconSuffix && (jsx(DivIconSuffixSC, { "$size": size, "$disabled": disabled, children: iconSuffix }))] }) }));
|
|
74651
74628
|
});
|
|
74652
74629
|
FISSelectItem.displayName = "FISSelectItem";
|
|
74653
74630
|
|
|
74631
|
+
const DivWrapperSC = styled.div `
|
|
74632
|
+
width: 100%;
|
|
74633
|
+
display: flex;
|
|
74634
|
+
flex-direction: column;
|
|
74635
|
+
gap: ${getTheme("com/input/vertical-gap")};
|
|
74636
|
+
`;
|
|
74637
|
+
const preventSelection = css `
|
|
74638
|
+
user-select: none !important;
|
|
74639
|
+
-webkit-user-select: none !important;
|
|
74640
|
+
-moz-user-select: none !important;
|
|
74641
|
+
-ms-user-select: none !important;
|
|
74642
|
+
cursor: pointer !important;
|
|
74643
|
+
`;
|
|
74644
|
+
const DivInputWrapperSC = styled.div `
|
|
74645
|
+
position: relative;
|
|
74646
|
+
display: inline-block;
|
|
74647
|
+
width: 100%;
|
|
74648
|
+
|
|
74649
|
+
${(props) => props.$hasValue &&
|
|
74650
|
+
css `
|
|
74651
|
+
${preventSelection}
|
|
74652
|
+
|
|
74653
|
+
input {
|
|
74654
|
+
${preventSelection}
|
|
74655
|
+
pointer-events: none;
|
|
74656
|
+
}
|
|
74657
|
+
`}
|
|
74658
|
+
`;
|
|
74659
|
+
const DivDropdownMenuSC = styled.div `
|
|
74660
|
+
margin-top: ${getTheme("com/select/vertical-gap")};
|
|
74661
|
+
`;
|
|
74662
|
+
const SelectedTagsWrapper = styled.div `
|
|
74663
|
+
display: flex;
|
|
74664
|
+
flex-wrap: wrap;
|
|
74665
|
+
gap: ${getTheme("com/combo-box/selected-data/horizontal-gap")};
|
|
74666
|
+
width: 100%;
|
|
74667
|
+
max-height: calc(
|
|
74668
|
+
2 * ${getTheme("com/chips-button/size-xs/height")} +
|
|
74669
|
+
${getTheme("com/combo-box/selected-data/horizontal-gap")}
|
|
74670
|
+
);
|
|
74671
|
+
`;
|
|
74672
|
+
|
|
74654
74673
|
function isMenuSize(value) {
|
|
74655
74674
|
return value === "sm" || value === "md";
|
|
74656
74675
|
}
|
|
@@ -74664,7 +74683,9 @@ const FISSelect = forwardRef(({ className, style, size = "md", options, value, d
|
|
|
74664
74683
|
const inputRef = useRef(null);
|
|
74665
74684
|
// Expose focus and openDropdown methods via ref
|
|
74666
74685
|
useImperativeHandle(ref, () => ({
|
|
74667
|
-
|
|
74686
|
+
focus: () => {
|
|
74687
|
+
inputRef.current?.focus();
|
|
74688
|
+
},
|
|
74668
74689
|
openDropdown: () => {
|
|
74669
74690
|
if (!disabled && !isOpen) {
|
|
74670
74691
|
setIsOpen(true);
|
|
@@ -74845,7 +74866,7 @@ const FISSelect = forwardRef(({ className, style, size = "md", options, value, d
|
|
|
74845
74866
|
}
|
|
74846
74867
|
return selectInput;
|
|
74847
74868
|
};
|
|
74848
|
-
return (jsxs(DivWrapperSC
|
|
74869
|
+
return (jsxs(DivWrapperSC, { className: className, style: style, children: [(textLabel || iconLabel) && (jsx(FISInputLabel, { textLabel: textLabel, required: required, iconLabel: iconLabel, onClickIconLabel: onClickIconLabel })), renderSelectInput(), message && (jsx(SpanHintSC$3, { className: classNames({ disabled, negative, positive }), children: message })), multi && !hideChip && Array.isArray(value) && value.length > 0 && (jsx(SelectedTagsWrapper, { children: jsx(MultipleValue, { options: selectedItems, onRemove: handleOptionRemove }) })), isOpen && (jsx(Portal, { portal: portal, children: jsx(DivDropdownMenuSC, { ref: setPopperElement, style: {
|
|
74849
74870
|
...styles.popper,
|
|
74850
74871
|
width: referenceElement?.offsetWidth,
|
|
74851
74872
|
zIndex: 9999,
|