@trackunit/react-components 0.1.135 → 0.1.136

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/index.cjs CHANGED
@@ -1168,7 +1168,10 @@ const cvaCollapse = cssClassVarianceUtilities.cvaMerge([
1168
1168
  "only:m-0",
1169
1169
  ]);
1170
1170
  const cvaCollapseLabel = cssClassVarianceUtilities.cvaMerge(["block", "w-full", "cursor-pointer"]);
1171
- const cvaCollapseLabelContainer = cssClassVarianceUtilities.cvaMerge(["flex", "items-center", "justify-between"]);
1171
+ const cvaCollapseLabelContainer = cssClassVarianceUtilities.cvaMerge(["flex", "items-center"], {
1172
+ defaultVariants: { layout: "fullwidth" },
1173
+ variants: { layout: { fullwidth: "justify-between", compact: "justify-start" } },
1174
+ });
1172
1175
  cssClassVarianceUtilities.cvaMerge(["block", "relative", "w-full", "mt-1", "p-1"]);
1173
1176
  const cvaCollapseAnimated = cssClassVarianceUtilities.cvaMerge(["overflow-y-hidden", "transition-all"]);
1174
1177
  const cvaCollapseIcon = cssClassVarianceUtilities.cvaMerge(["ease-in-out", "duration-200"], {
@@ -1189,7 +1192,7 @@ const cvaCollapseIcon = cssClassVarianceUtilities.cvaMerge(["ease-in-out", "dura
1189
1192
  * @param {CollapseProps} props - The props for the Collapse component
1190
1193
  * @returns {JSX.Element} Collapse component
1191
1194
  */
1192
- const Collapse = ({ id, initialExpanded = false, onToggle, label, children, className, dataTestId, }) => {
1195
+ const Collapse = ({ id, initialExpanded = false, onToggle, label, children, layout = "fullwidth", className, dataTestId, }) => {
1193
1196
  const [expanded, setExpanded] = React__namespace.useState(initialExpanded);
1194
1197
  const handleClick = React__namespace.useCallback((e) => {
1195
1198
  if (onToggle) {
@@ -1197,7 +1200,7 @@ const Collapse = ({ id, initialExpanded = false, onToggle, label, children, clas
1197
1200
  }
1198
1201
  setExpanded(!expanded);
1199
1202
  }, [expanded, onToggle]);
1200
- return (jsxRuntime.jsxs("div", { className: cvaCollapse({ className }), "data-testid": dataTestId, children: [jsxRuntime.jsx("div", { className: cvaCollapseLabel(), role: "button", "aria-expanded": expanded, "aria-controls": id, onClick: handleClick, children: jsxRuntime.jsxs("div", { className: cvaCollapseLabelContainer(), children: [jsxRuntime.jsx(Text, { weight: "bold", children: label }), jsxRuntime.jsx(IconButton, { icon: jsxRuntime.jsx(Icon, { className: cvaCollapseIcon({ expanded }), name: "ChevronDownIcon", size: "small" }), size: "medium", variant: "transparent", color: "secondary" })] }) }), jsxRuntime.jsx(Collapsible, { expanded: expanded, id: id, children: children })] }));
1203
+ return (jsxRuntime.jsxs("div", { className: cvaCollapse({ className }), "data-testid": dataTestId, children: [jsxRuntime.jsx("div", { className: cvaCollapseLabel(), role: "button", "aria-expanded": expanded, "aria-controls": id, onClick: handleClick, children: jsxRuntime.jsxs("div", { className: cvaCollapseLabelContainer({ layout }), children: [jsxRuntime.jsx(Text, { type: "span", weight: "bold", children: label }), jsxRuntime.jsx(IconButton, { icon: jsxRuntime.jsx(Icon, { className: cvaCollapseIcon({ expanded }), name: "ChevronDownIcon", size: "small" }), size: "medium", variant: "transparent", color: "secondary" })] }) }), jsxRuntime.jsx(Collapsible, { expanded: expanded, id: id, children: children })] }));
1201
1204
  };
1202
1205
  const Collapsible = ({ children, expanded, id }) => {
1203
1206
  const [ref, { height }] = useMeasure$1();
package/index.js CHANGED
@@ -1141,7 +1141,10 @@ const cvaCollapse = cvaMerge([
1141
1141
  "only:m-0",
1142
1142
  ]);
1143
1143
  const cvaCollapseLabel = cvaMerge(["block", "w-full", "cursor-pointer"]);
1144
- const cvaCollapseLabelContainer = cvaMerge(["flex", "items-center", "justify-between"]);
1144
+ const cvaCollapseLabelContainer = cvaMerge(["flex", "items-center"], {
1145
+ defaultVariants: { layout: "fullwidth" },
1146
+ variants: { layout: { fullwidth: "justify-between", compact: "justify-start" } },
1147
+ });
1145
1148
  cvaMerge(["block", "relative", "w-full", "mt-1", "p-1"]);
1146
1149
  const cvaCollapseAnimated = cvaMerge(["overflow-y-hidden", "transition-all"]);
1147
1150
  const cvaCollapseIcon = cvaMerge(["ease-in-out", "duration-200"], {
@@ -1162,7 +1165,7 @@ const cvaCollapseIcon = cvaMerge(["ease-in-out", "duration-200"], {
1162
1165
  * @param {CollapseProps} props - The props for the Collapse component
1163
1166
  * @returns {JSX.Element} Collapse component
1164
1167
  */
1165
- const Collapse = ({ id, initialExpanded = false, onToggle, label, children, className, dataTestId, }) => {
1168
+ const Collapse = ({ id, initialExpanded = false, onToggle, label, children, layout = "fullwidth", className, dataTestId, }) => {
1166
1169
  const [expanded, setExpanded] = React.useState(initialExpanded);
1167
1170
  const handleClick = React.useCallback((e) => {
1168
1171
  if (onToggle) {
@@ -1170,7 +1173,7 @@ const Collapse = ({ id, initialExpanded = false, onToggle, label, children, clas
1170
1173
  }
1171
1174
  setExpanded(!expanded);
1172
1175
  }, [expanded, onToggle]);
1173
- return (jsxs("div", { className: cvaCollapse({ className }), "data-testid": dataTestId, children: [jsx("div", { className: cvaCollapseLabel(), role: "button", "aria-expanded": expanded, "aria-controls": id, onClick: handleClick, children: jsxs("div", { className: cvaCollapseLabelContainer(), children: [jsx(Text, { weight: "bold", children: label }), jsx(IconButton, { icon: jsx(Icon, { className: cvaCollapseIcon({ expanded }), name: "ChevronDownIcon", size: "small" }), size: "medium", variant: "transparent", color: "secondary" })] }) }), jsx(Collapsible, { expanded: expanded, id: id, children: children })] }));
1176
+ return (jsxs("div", { className: cvaCollapse({ className }), "data-testid": dataTestId, children: [jsx("div", { className: cvaCollapseLabel(), role: "button", "aria-expanded": expanded, "aria-controls": id, onClick: handleClick, children: jsxs("div", { className: cvaCollapseLabelContainer({ layout }), children: [jsx(Text, { type: "span", weight: "bold", children: label }), jsx(IconButton, { icon: jsx(Icon, { className: cvaCollapseIcon({ expanded }), name: "ChevronDownIcon", size: "small" }), size: "medium", variant: "transparent", color: "secondary" })] }) }), jsx(Collapsible, { expanded: expanded, id: id, children: children })] }));
1174
1177
  };
1175
1178
  const Collapsible = ({ children, expanded, id }) => {
1176
1179
  const [ref, { height }] = useMeasure$1();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trackunit/react-components",
3
- "version": "0.1.135",
3
+ "version": "0.1.136",
4
4
  "repository": "https://github.com/Trackunit/manager",
5
5
  "license": "SEE LICENSE IN LICENSE.txt",
6
6
  "engines": {
@@ -18,6 +18,10 @@ export interface CollapseProps extends CommonProps {
18
18
  * Label to be displayed.
19
19
  */
20
20
  label: React.ReactNode;
21
+ /**
22
+ * layout - The layout of the Collapse component. (full width is default)
23
+ */
24
+ layout?: "fullwidth" | "compact";
21
25
  }
22
26
  /**
23
27
  * The Collapse component is used to condense non-important information.
@@ -25,4 +29,4 @@ export interface CollapseProps extends CommonProps {
25
29
  * @param {CollapseProps} props - The props for the Collapse component
26
30
  * @returns {JSX.Element} Collapse component
27
31
  */
28
- export declare const Collapse: ({ id, initialExpanded, onToggle, label, children, className, dataTestId, }: CollapseProps) => JSX.Element;
32
+ export declare const Collapse: ({ id, initialExpanded, onToggle, label, children, layout, className, dataTestId, }: CollapseProps) => JSX.Element;
@@ -1,6 +1,8 @@
1
1
  export declare const cvaCollapse: (props?: import("class-variance-authority/dist/types").ClassProp | undefined) => string;
2
2
  export declare const cvaCollapseLabel: (props?: import("class-variance-authority/dist/types").ClassProp | undefined) => string;
3
- export declare const cvaCollapseLabelContainer: (props?: import("class-variance-authority/dist/types").ClassProp | undefined) => string;
3
+ export declare const cvaCollapseLabelContainer: (props?: ({
4
+ layout?: "fullwidth" | "compact" | null | undefined;
5
+ } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
4
6
  export declare const cvaCollapsible: (props?: import("class-variance-authority/dist/types").ClassProp | undefined) => string;
5
7
  export declare const cvaCollapseAnimated: (props?: import("class-variance-authority/dist/types").ClassProp | undefined) => string;
6
8
  export declare const cvaCollapseIcon: (props?: ({