@adsgency_npm/adsgency-ads-ui 0.1.0-alpha.23 → 0.1.0-alpha.25

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.cjs CHANGED
@@ -48,6 +48,7 @@ __export(src_exports, {
48
48
  AdsAlertDialogTrigger: () => AdsAlertDialogTrigger,
49
49
  AdsAlertTitle: () => AlertTitle2,
50
50
  AdsBadge: () => AdsBadge,
51
+ AdsBarChart: () => AdsBarChart,
51
52
  AdsBreadcrumb: () => AdsBreadcrumb,
52
53
  AdsBreadcrumbEllipsis: () => AdsBreadcrumbEllipsis,
53
54
  AdsBreadcrumbItem: () => AdsBreadcrumbItem,
@@ -69,6 +70,7 @@ __export(src_exports, {
69
70
  AdsDatePicker: () => AdsDatePicker,
70
71
  AdsDateTimePicker: () => AdsDateTimePicker,
71
72
  AdsDialog: () => AdsDialog,
73
+ AdsDialogBody: () => AdsDialogBody,
72
74
  AdsDialogClose: () => AdsDialogClose,
73
75
  AdsDialogContent: () => AdsDialogContent,
74
76
  AdsDialogDescription: () => AdsDialogDescription,
@@ -124,6 +126,7 @@ __export(src_exports, {
124
126
  AdsPopoverTitle: () => AdsPopoverTitle,
125
127
  AdsPopoverTrigger: () => AdsPopoverTrigger,
126
128
  AdsProgress: () => AdsProgress,
129
+ AdsRadialProgressChart: () => AdsRadialProgressChart,
127
130
  AdsRadioGroup: () => AdsRadioGroup,
128
131
  AdsRadioGroupCardOption: () => AdsRadioGroupCardOption,
129
132
  AdsRadioGroupOption: () => AdsRadioGroupOption,
@@ -141,7 +144,9 @@ __export(src_exports, {
141
144
  AdsSeparator: () => AdsSeparator,
142
145
  AdsSkeleton: () => AdsSkeleton,
143
146
  AdsSlider: () => AdsSlider,
147
+ AdsSparklineChart: () => AdsSparklineChart,
144
148
  AdsSpinner: () => AdsSpinner,
149
+ AdsStackedBarChart: () => AdsStackedBarChart,
145
150
  AdsSwitch: () => AdsSwitch,
146
151
  AdsTable: () => AdsTable,
147
152
  AdsTableBody: () => AdsTableBody,
@@ -5869,14 +5874,458 @@ var AdsProgress = React46.forwardRef(
5869
5874
  );
5870
5875
  AdsProgress.displayName = "AdsProgress";
5871
5876
 
5872
- // src/components/AdsSlider/index.tsx
5877
+ // src/components/AdsRadialProgressChart/index.tsx
5878
+ var import_recharts2 = require("recharts");
5879
+
5880
+ // src/primitives/chart.tsx
5881
+ var React47 = __toESM(require("react"), 1);
5882
+ var import_recharts = require("recharts");
5883
+ var import_jsx_runtime53 = require("react/jsx-runtime");
5884
+ var chartContext = React47.createContext(null);
5885
+ var ChartContainer = React47.forwardRef(
5886
+ ({ children, className, config, height = 240, style, ...props }, ref) => {
5887
+ const chartStyle = Object.entries(config).reduce((variables, [key, item]) => {
5888
+ if (item.color) {
5889
+ variables[`--color-${key}`] = item.color;
5890
+ }
5891
+ return variables;
5892
+ }, {});
5893
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(chartContext.Provider, { value: config, children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
5894
+ "div",
5895
+ {
5896
+ className: cn("relative w-full text-xs", className),
5897
+ "data-slot": "chart",
5898
+ ref,
5899
+ style: { height, ...chartStyle, ...style },
5900
+ ...props,
5901
+ children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_recharts.ResponsiveContainer, { height: "100%", width: "100%", children })
5902
+ }
5903
+ ) });
5904
+ }
5905
+ );
5906
+ ChartContainer.displayName = "ChartContainer";
5907
+
5908
+ // src/components/AdsRadialProgressChart/index.tsx
5909
+ var import_jsx_runtime54 = require("react/jsx-runtime");
5910
+ var DEFAULT_SIZE = 160;
5911
+ var DEFAULT_STROKE_WIDTH = 14;
5912
+ var tooltipContentStyle = {
5913
+ backgroundColor: "var(--popover)",
5914
+ border: "1px solid var(--border)",
5915
+ borderRadius: 6,
5916
+ color: "var(--popover-foreground)",
5917
+ padding: "8px 12px"
5918
+ };
5919
+ function clamp(value, min, max) {
5920
+ return Math.min(Math.max(value, min), max);
5921
+ }
5922
+ function AdsRadialProgressChart({
5923
+ ariaLabel,
5924
+ className,
5925
+ color = "var(--primary)",
5926
+ label,
5927
+ max = 100,
5928
+ size = DEFAULT_SIZE,
5929
+ showTooltip = true,
5930
+ strokeWidth = DEFAULT_STROKE_WIDTH,
5931
+ trackColor = "color-mix(in srgb, var(--primary) 20%, transparent)",
5932
+ value
5933
+ }) {
5934
+ const safeMax = Number.isFinite(max) && max > 0 ? max : 0;
5935
+ const safeValue = Number.isFinite(value) && safeMax > 0 ? clamp(value, 0, safeMax) : 0;
5936
+ const percentage = safeMax > 0 ? Math.round(safeValue / safeMax * 100) : 0;
5937
+ const safeSize = Number.isFinite(size) && size > 0 ? size : DEFAULT_SIZE;
5938
+ const safeStrokeWidth = clamp(
5939
+ Number.isFinite(strokeWidth) && strokeWidth > 0 ? strokeWidth : DEFAULT_STROKE_WIDTH,
5940
+ 1,
5941
+ safeSize / 2
5942
+ );
5943
+ const chartData = [{ value: safeValue }];
5944
+ return /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(
5945
+ "div",
5946
+ {
5947
+ "aria-label": ariaLabel ?? `${percentage}%`,
5948
+ className: cn(
5949
+ "relative inline-grid place-items-center",
5950
+ className
5951
+ ),
5952
+ "data-testid": "ads-radial-progress-chart",
5953
+ role: "img",
5954
+ style: {
5955
+ "--ads-radial-chart-size": `${safeSize}px`,
5956
+ height: safeSize,
5957
+ width: safeSize
5958
+ },
5959
+ children: [
5960
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
5961
+ ChartContainer,
5962
+ {
5963
+ "aria-hidden": "true",
5964
+ className: "absolute inset-0",
5965
+ config: { value: { color } },
5966
+ height: "100%",
5967
+ children: /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(
5968
+ import_recharts2.RadialBarChart,
5969
+ {
5970
+ accessibilityLayer: true,
5971
+ data: chartData,
5972
+ endAngle: -270,
5973
+ innerRadius: safeSize / 2 - safeStrokeWidth,
5974
+ outerRadius: safeSize / 2,
5975
+ startAngle: 90,
5976
+ children: [
5977
+ showTooltip && /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_recharts2.Tooltip, { contentStyle: tooltipContentStyle, cursor: false }),
5978
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
5979
+ import_recharts2.PolarAngleAxis,
5980
+ {
5981
+ axisLine: false,
5982
+ dataKey: "value",
5983
+ domain: [0, Math.max(safeMax, 1)],
5984
+ tick: false,
5985
+ type: "number"
5986
+ }
5987
+ ),
5988
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
5989
+ import_recharts2.RadialBar,
5990
+ {
5991
+ background: { fill: trackColor },
5992
+ cornerRadius: safeStrokeWidth / 2,
5993
+ dataKey: "value",
5994
+ fill: "var(--color-value)",
5995
+ isAnimationActive: false
5996
+ }
5997
+ )
5998
+ ]
5999
+ }
6000
+ )
6001
+ }
6002
+ ),
6003
+ /* @__PURE__ */ (0, import_jsx_runtime54.jsx)("span", { className: "pointer-events-none absolute inset-0 flex items-center justify-center text-center", children: label ?? `${percentage}%` })
6004
+ ]
6005
+ }
6006
+ );
6007
+ }
6008
+
6009
+ // src/components/AdsSparklineChart/index.tsx
6010
+ var import_recharts3 = require("recharts");
6011
+ var import_jsx_runtime55 = require("react/jsx-runtime");
6012
+ var DEFAULT_HEIGHT = 40;
6013
+ var tooltipContentStyle2 = {
6014
+ backgroundColor: "var(--popover)",
6015
+ border: "1px solid var(--border)",
6016
+ borderRadius: 6,
6017
+ color: "var(--popover-foreground)",
6018
+ padding: "8px 12px"
6019
+ };
6020
+ function getSafeHeight(height) {
6021
+ return Number.isFinite(height) && height && height > 0 ? height : DEFAULT_HEIGHT;
6022
+ }
6023
+ function getSafeValue(value) {
6024
+ return typeof value === "number" && Number.isFinite(value) ? Math.max(value, 0) : 0;
6025
+ }
6026
+ function AdsSparklineChart({
6027
+ ariaLabel,
6028
+ className,
6029
+ color = "var(--chart-1)",
6030
+ data,
6031
+ dataKey,
6032
+ height,
6033
+ showTooltip = true,
6034
+ xKey
6035
+ }) {
6036
+ const chartData = data.map((datum) => ({
6037
+ ...datum,
6038
+ [xKey]: datum[xKey],
6039
+ [dataKey]: getSafeValue(datum[dataKey])
6040
+ }));
6041
+ const safeHeight = getSafeHeight(height);
6042
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
6043
+ "div",
6044
+ {
6045
+ "aria-label": ariaLabel ?? "Trend chart",
6046
+ className: cn("w-full", className),
6047
+ "data-testid": "ads-sparkline-chart",
6048
+ role: "img",
6049
+ style: { height: safeHeight },
6050
+ children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
6051
+ ChartContainer,
6052
+ {
6053
+ "aria-hidden": "true",
6054
+ className: "h-full",
6055
+ config: { value: { color } },
6056
+ height: "100%",
6057
+ children: /* @__PURE__ */ (0, import_jsx_runtime55.jsxs)(import_recharts3.LineChart, { data: chartData, margin: { bottom: 1, left: 1, right: 1, top: 1 }, children: [
6058
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_recharts3.XAxis, { dataKey: xKey, hide: true, type: "category" }),
6059
+ showTooltip && /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(import_recharts3.Tooltip, { contentStyle: tooltipContentStyle2, cursor: false }),
6060
+ /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
6061
+ import_recharts3.Line,
6062
+ {
6063
+ activeDot: false,
6064
+ dataKey,
6065
+ dot: false,
6066
+ isAnimationActive: false,
6067
+ stroke: "var(--color-value)",
6068
+ strokeWidth: 2,
6069
+ type: "monotone"
6070
+ }
6071
+ )
6072
+ ] })
6073
+ }
6074
+ )
6075
+ }
6076
+ );
6077
+ }
6078
+
6079
+ // src/components/AdsStackedBarChart/index.tsx
6080
+ var React50 = __toESM(require("react"), 1);
6081
+
6082
+ // src/components/AdsTooltip/index.tsx
6083
+ var React49 = __toESM(require("react"), 1);
6084
+
6085
+ // src/primitives/tooltip.tsx
5873
6086
  var React48 = __toESM(require("react"), 1);
6087
+ var TooltipPrimitive = __toESM(require("@radix-ui/react-tooltip"), 1);
6088
+ var import_jsx_runtime56 = require("react/jsx-runtime");
6089
+ var TooltipProvider = TooltipPrimitive.Provider;
6090
+ var Tooltip3 = TooltipPrimitive.Root;
6091
+ var TooltipTrigger = TooltipPrimitive.Trigger;
6092
+ var TooltipArrow = TooltipPrimitive.Arrow;
6093
+ var TooltipContent = React48.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(TooltipPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
6094
+ TooltipPrimitive.Content,
6095
+ {
6096
+ className: cn(
6097
+ "z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md outline-none data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-tooltip-content-transform-origin]",
6098
+ className
6099
+ ),
6100
+ ref,
6101
+ sideOffset,
6102
+ ...props
6103
+ }
6104
+ ) }));
6105
+ TooltipContent.displayName = TooltipPrimitive.Content.displayName;
6106
+
6107
+ // src/components/AdsTooltip/index.tsx
6108
+ var import_jsx_runtime57 = require("react/jsx-runtime");
6109
+ var tooltipContentClassName = "z-50 rounded-[6px] border-0 bg-[#844fff] px-3 py-2 text-sm font-normal leading-5 text-[#fdfdfd] shadow-[0px_8px_24px_rgba(0,0,0,0.22)]";
6110
+ var AdsTooltipProvider = TooltipProvider;
6111
+ var AdsTooltip = Tooltip3;
6112
+ var AdsTooltipTrigger = TooltipTrigger;
6113
+ var AdsTooltipContent = React49.forwardRef(({ align = "center", className, sideOffset = 10, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
6114
+ TooltipContent,
6115
+ {
6116
+ align,
6117
+ className: cn(tooltipContentClassName, className),
6118
+ ref,
6119
+ sideOffset,
6120
+ ...props
6121
+ }
6122
+ ));
6123
+ AdsTooltipContent.displayName = "AdsTooltipContent";
6124
+ var AdsTooltipArrow = React49.forwardRef(({ className, height = 5, width = 10, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
6125
+ TooltipArrow,
6126
+ {
6127
+ className: cn("fill-[#844fff]", className),
6128
+ height,
6129
+ ref,
6130
+ width,
6131
+ ...props
6132
+ }
6133
+ ));
6134
+ AdsTooltipArrow.displayName = "AdsTooltipArrow";
6135
+
6136
+ // src/components/AdsStackedBarChart/index.tsx
6137
+ var import_jsx_runtime58 = require("react/jsx-runtime");
6138
+ var DEFAULT_HEIGHT2 = 20;
6139
+ var DEFAULT_SEGMENT_COLOR = "var(--chart-1)";
6140
+ function getSafeHeight2(height) {
6141
+ return Number.isFinite(height) && height && height > 0 ? height : DEFAULT_HEIGHT2;
6142
+ }
6143
+ function formatPercentage(percentage) {
6144
+ return `${Number(percentage.toFixed(2))}%`;
6145
+ }
6146
+ function AdsStackedBarChart({
6147
+ ariaLabel,
6148
+ className,
6149
+ height,
6150
+ showTooltip = true,
6151
+ segments
6152
+ }) {
6153
+ const descriptionId = React50.useId();
6154
+ const validSegments = segments.reduce((items, segment, index) => {
6155
+ const value = Number.isFinite(segment.value) ? Math.max(segment.value, 0) : 0;
6156
+ if (value > 0) {
6157
+ items.push({
6158
+ color: segment.color ?? DEFAULT_SEGMENT_COLOR,
6159
+ label: segment.label ?? `Segment ${index + 1}`,
6160
+ value
6161
+ });
6162
+ }
6163
+ return items;
6164
+ }, []);
6165
+ const normalizationBase = validSegments.reduce(
6166
+ (maximum, segment) => Math.max(maximum, segment.value),
6167
+ 0
6168
+ );
6169
+ const normalizedTotal = normalizationBase > 0 ? validSegments.reduce((sum, segment) => sum + segment.value / normalizationBase, 0) : 0;
6170
+ const hasData = normalizedTotal > 0 && Number.isFinite(normalizedTotal);
6171
+ const getPercentage = (value) => value / normalizationBase / normalizedTotal * 100;
6172
+ const summary = hasData ? validSegments.map((segment) => `${segment.label}: ${formatPercentage(getPercentage(segment.value))}`).join(", ") : "No data";
6173
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(
6174
+ "div",
6175
+ {
6176
+ "aria-label": ariaLabel ?? summary,
6177
+ "aria-describedby": ariaLabel ? descriptionId : void 0,
6178
+ className: cn("overflow-hidden rounded-full bg-muted", className),
6179
+ "data-testid": "ads-stacked-bar-chart",
6180
+ role: "img",
6181
+ style: { height: getSafeHeight2(height) },
6182
+ children: [
6183
+ ariaLabel && /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("span", { className: "sr-only", id: descriptionId, children: summary }),
6184
+ hasData && /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(AdsTooltipProvider, { delayDuration: 100, children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: "flex size-full", children: validSegments.map((segment, index) => {
6185
+ const percentage = getPercentage(segment.value);
6186
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(AdsTooltip, { children: [
6187
+ /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(AdsTooltipTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
6188
+ "div",
6189
+ {
6190
+ "aria-label": `${segment.label}: ${segment.value}`,
6191
+ "data-testid": "ads-stacked-bar-chart-segment",
6192
+ role: "img",
6193
+ style: { backgroundColor: segment.color, width: `${percentage}%` },
6194
+ tabIndex: showTooltip ? 0 : -1
6195
+ }
6196
+ ) }),
6197
+ showTooltip && /* @__PURE__ */ (0, import_jsx_runtime58.jsxs)(AdsTooltipContent, { children: [
6198
+ segment.label,
6199
+ ": ",
6200
+ segment.value
6201
+ ] })
6202
+ ] }, `${segment.label}-${index}`);
6203
+ }) }) })
6204
+ ]
6205
+ }
6206
+ );
6207
+ }
6208
+
6209
+ // src/components/AdsBarChart/index.tsx
6210
+ var import_recharts4 = require("recharts");
6211
+ var import_jsx_runtime59 = require("react/jsx-runtime");
6212
+ var DEFAULT_HEIGHT3 = 160;
6213
+ var DEFAULT_HIGHLIGHT_COLOR = "var(--chart-2)";
6214
+ var DEFAULT_RADIUS = 4;
6215
+ var tooltipContentStyle3 = {
6216
+ backgroundColor: "var(--popover)",
6217
+ border: "1px solid var(--border)",
6218
+ borderRadius: 6,
6219
+ color: "var(--popover-foreground)",
6220
+ padding: "8px 12px"
6221
+ };
6222
+ function getSafeHeight3(height) {
6223
+ return Number.isFinite(height) && height && height > 0 ? height : DEFAULT_HEIGHT3;
6224
+ }
6225
+ function getSafeRadius(radius) {
6226
+ return Number.isFinite(radius) && radius !== void 0 && radius >= 0 ? radius : DEFAULT_RADIUS;
6227
+ }
6228
+ function getSafeValue2(value) {
6229
+ return typeof value === "number" && Number.isFinite(value) ? Math.max(value, 0) : 0;
6230
+ }
6231
+ function AdsBarChart({
6232
+ ariaLabel,
6233
+ barRadius,
6234
+ barSize,
6235
+ className,
6236
+ color = "var(--chart-1)",
6237
+ data,
6238
+ dataKey,
6239
+ height,
6240
+ highlightColor,
6241
+ highlightIndex,
6242
+ showTooltip = true,
6243
+ xAxis,
6244
+ xKey,
6245
+ yAxis
6246
+ }) {
6247
+ const chartData = data.map((datum) => ({
6248
+ ...datum,
6249
+ [xKey]: datum[xKey],
6250
+ [dataKey]: getSafeValue2(datum[dataKey])
6251
+ }));
6252
+ const safeHeight = getSafeHeight3(height);
6253
+ const safeRadius = getSafeRadius(barRadius);
6254
+ const safeHighlightIndex = Number.isInteger(highlightIndex) ? highlightIndex : -1;
6255
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
6256
+ "div",
6257
+ {
6258
+ "aria-label": ariaLabel ?? "Bar chart",
6259
+ className: cn("w-full", className),
6260
+ "data-testid": "ads-bar-chart",
6261
+ role: "img",
6262
+ style: { height: safeHeight },
6263
+ children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
6264
+ ChartContainer,
6265
+ {
6266
+ "aria-hidden": "true",
6267
+ className: "h-full",
6268
+ config: { value: { color } },
6269
+ height: "100%",
6270
+ children: /* @__PURE__ */ (0, import_jsx_runtime59.jsxs)(import_recharts4.BarChart, { data: chartData, margin: { bottom: 0, left: 0, right: 0, top: 0 }, children: [
6271
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
6272
+ import_recharts4.XAxis,
6273
+ {
6274
+ axisLine: xAxis?.axisLine ?? false,
6275
+ dataKey: xKey,
6276
+ hide: xAxis?.hide ?? true,
6277
+ tick: xAxis?.tick ?? true,
6278
+ tickLine: xAxis?.tickLine ?? false,
6279
+ tickMargin: xAxis?.tickMargin,
6280
+ type: "category"
6281
+ }
6282
+ ),
6283
+ yAxis && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
6284
+ import_recharts4.YAxis,
6285
+ {
6286
+ axisLine: yAxis.axisLine ?? false,
6287
+ domain: yAxis.domain,
6288
+ tick: yAxis.tick ?? true,
6289
+ tickCount: yAxis.tickCount,
6290
+ tickLine: yAxis.tickLine ?? false,
6291
+ tickMargin: yAxis.tickMargin,
6292
+ ticks: yAxis.ticks,
6293
+ width: yAxis.width
6294
+ }
6295
+ ),
6296
+ showTooltip && /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(import_recharts4.Tooltip, { contentStyle: tooltipContentStyle3, cursor: { fill: "transparent" } }),
6297
+ /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
6298
+ import_recharts4.Bar,
6299
+ {
6300
+ barSize,
6301
+ dataKey,
6302
+ fill: "var(--color-value)",
6303
+ isAnimationActive: false,
6304
+ radius: safeRadius,
6305
+ children: chartData.map((_, index) => /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
6306
+ import_recharts4.Cell,
6307
+ {
6308
+ fill: index === safeHighlightIndex ? highlightColor ?? DEFAULT_HIGHLIGHT_COLOR : "var(--color-value)"
6309
+ },
6310
+ index
6311
+ ))
6312
+ }
6313
+ )
6314
+ ] })
6315
+ }
6316
+ )
6317
+ }
6318
+ );
6319
+ }
6320
+
6321
+ // src/components/AdsSlider/index.tsx
6322
+ var React52 = __toESM(require("react"), 1);
5874
6323
 
5875
6324
  // src/primitives/slider.tsx
5876
- var React47 = __toESM(require("react"), 1);
6325
+ var React51 = __toESM(require("react"), 1);
5877
6326
  var SliderPrimitive = __toESM(require("@radix-ui/react-slider"), 1);
5878
- var import_jsx_runtime53 = require("react/jsx-runtime");
5879
- var Slider = React47.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime53.jsxs)(
6327
+ var import_jsx_runtime60 = require("react/jsx-runtime");
6328
+ var Slider = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(
5880
6329
  SliderPrimitive.Root,
5881
6330
  {
5882
6331
  ref,
@@ -5886,10 +6335,10 @@ var Slider = React47.forwardRef(({ className, ...props }, ref) => /* @__PURE__ *
5886
6335
  ),
5887
6336
  ...props,
5888
6337
  children: [
5889
- /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(SliderPrimitive.Track, { className: "relative h-1.5 w-full grow overflow-hidden rounded-full bg-secondary", children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(SliderPrimitive.Range, { className: "absolute h-full bg-primary" }) }),
6338
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(SliderPrimitive.Track, { className: "relative h-1.5 w-full grow overflow-hidden rounded-full bg-secondary", children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(SliderPrimitive.Range, { className: "absolute h-full bg-primary" }) }),
5890
6339
  Array.from({
5891
6340
  length: Array.isArray(props.value) ? props.value.length : Array.isArray(props.defaultValue) ? props.defaultValue.length : 1
5892
- }).map((_, index) => /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
6341
+ }).map((_, index) => /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
5893
6342
  SliderPrimitive.Thumb,
5894
6343
  {
5895
6344
  className: "block h-5 w-5 rounded-full border border-primary bg-background ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50"
@@ -5902,11 +6351,11 @@ var Slider = React47.forwardRef(({ className, ...props }, ref) => /* @__PURE__ *
5902
6351
  Slider.displayName = SliderPrimitive.Root.displayName;
5903
6352
 
5904
6353
  // src/components/AdsSlider/index.tsx
5905
- var import_jsx_runtime54 = require("react/jsx-runtime");
6354
+ var import_jsx_runtime61 = require("react/jsx-runtime");
5906
6355
  var sliderBaseClassName = "py-1";
5907
- var Slider2 = React48.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(Slider, { className: cn(sliderBaseClassName, className), ref, ...props }));
6356
+ var Slider2 = React52.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Slider, { className: cn(sliderBaseClassName, className), ref, ...props }));
5908
6357
  Slider2.displayName = "Slider";
5909
- var AdsSlider = React48.forwardRef(
6358
+ var AdsSlider = React52.forwardRef(
5910
6359
  ({
5911
6360
  className,
5912
6361
  descriptionPlacement = "above",
@@ -5921,12 +6370,12 @@ var AdsSlider = React48.forwardRef(
5921
6370
  helperText,
5922
6371
  id
5923
6372
  });
5924
- const helperNode = helperText ? /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(AdsFieldDescription, { id: description.helperId, children: helperText }) : null;
5925
- const errorNode = errorText ? /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(AdsFieldError, { id: description.errorId, children: errorText }) : null;
5926
- return /* @__PURE__ */ (0, import_jsx_runtime54.jsxs)(AdsFieldItem, { children: [
5927
- label ? /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(AdsFieldLabel, { children: label }) : null,
6373
+ const helperNode = helperText ? /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(AdsFieldDescription, { id: description.helperId, children: helperText }) : null;
6374
+ const errorNode = errorText ? /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(AdsFieldError, { id: description.errorId, children: errorText }) : null;
6375
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)(AdsFieldItem, { children: [
6376
+ label ? /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(AdsFieldLabel, { children: label }) : null,
5928
6377
  descriptionPlacement === "above" ? helperNode : null,
5929
- /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
6378
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
5930
6379
  Slider2,
5931
6380
  {
5932
6381
  "aria-describedby": description.describedBy,
@@ -5943,13 +6392,13 @@ var AdsSlider = React48.forwardRef(
5943
6392
  AdsSlider.displayName = "AdsSlider";
5944
6393
 
5945
6394
  // src/components/AdsSwitch/index.tsx
5946
- var React50 = __toESM(require("react"), 1);
6395
+ var React54 = __toESM(require("react"), 1);
5947
6396
 
5948
6397
  // src/primitives/switch.tsx
5949
- var React49 = __toESM(require("react"), 1);
6398
+ var React53 = __toESM(require("react"), 1);
5950
6399
  var SwitchPrimitives = __toESM(require("@radix-ui/react-switch"), 1);
5951
- var import_jsx_runtime55 = require("react/jsx-runtime");
5952
- var Switch = React49.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
6400
+ var import_jsx_runtime62 = require("react/jsx-runtime");
6401
+ var Switch = React53.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
5953
6402
  SwitchPrimitives.Root,
5954
6403
  {
5955
6404
  className: cn(
@@ -5958,7 +6407,7 @@ var Switch = React49.forwardRef(({ className, ...props }, ref) => /* @__PURE__ *
5958
6407
  ),
5959
6408
  ...props,
5960
6409
  ref,
5961
- children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
6410
+ children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
5962
6411
  SwitchPrimitives.Thumb,
5963
6412
  {
5964
6413
  className: cn(
@@ -5971,15 +6420,15 @@ var Switch = React49.forwardRef(({ className, ...props }, ref) => /* @__PURE__ *
5971
6420
  Switch.displayName = SwitchPrimitives.Root.displayName;
5972
6421
 
5973
6422
  // src/components/AdsSwitch/index.tsx
5974
- var import_jsx_runtime56 = require("react/jsx-runtime");
6423
+ var import_jsx_runtime63 = require("react/jsx-runtime");
5975
6424
  var switchBaseClassName = "h-6 w-11 border border-transparent bg-muted shadow-[0px_1px_2px_rgba(0,0,0,0.1)] focus-visible:ring-[3px] focus-visible:ring-[rgba(161,161,161,0.5)] focus-visible:ring-offset-0 data-[state=checked]:bg-primary data-[state=unchecked]:bg-muted";
5976
- var Switch2 = React50.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(Switch, { className: cn(switchBaseClassName, className), ref, ...props }));
6425
+ var Switch2 = React54.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(Switch, { className: cn(switchBaseClassName, className), ref, ...props }));
5977
6426
  Switch2.displayName = "Switch";
5978
- var AdsSwitch = React50.forwardRef(({ className, description, id, label, switchClassName, wrapperClassName, ...props }, ref) => {
5979
- const generatedId = React50.useId();
6427
+ var AdsSwitch = React54.forwardRef(({ className, description, id, label, switchClassName, wrapperClassName, ...props }, ref) => {
6428
+ const generatedId = React54.useId();
5980
6429
  const inputId = id ?? generatedId;
5981
6430
  if (!label) {
5982
- return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
6431
+ return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
5983
6432
  Switch2,
5984
6433
  {
5985
6434
  className: cn(className, switchClassName),
@@ -5989,12 +6438,12 @@ var AdsSwitch = React50.forwardRef(({ className, description, id, label, switchC
5989
6438
  }
5990
6439
  );
5991
6440
  }
5992
- return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("label", { className: cn("block w-full cursor-pointer", wrapperClassName), htmlFor: inputId, children: /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: "flex w-full items-start gap-3", children: [
5993
- /* @__PURE__ */ (0, import_jsx_runtime56.jsxs)("div", { className: "flex min-w-0 flex-1 flex-col gap-1.5 pt-0.5", children: [
5994
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "text-sm font-medium leading-5 text-foreground", children: label }),
5995
- description ? /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(AdsFieldDescription, { className: "text-sm leading-5", children: description }) : null
6441
+ return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("label", { className: cn("block w-full cursor-pointer", wrapperClassName), htmlFor: inputId, children: /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)("div", { className: "flex w-full items-start gap-3", children: [
6442
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)("div", { className: "flex min-w-0 flex-1 flex-col gap-1.5 pt-0.5", children: [
6443
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: "text-sm font-medium leading-5 text-foreground", children: label }),
6444
+ description ? /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(AdsFieldDescription, { className: "text-sm leading-5", children: description }) : null
5996
6445
  ] }),
5997
- /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
6446
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: "shrink-0", children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
5998
6447
  Switch2,
5999
6448
  {
6000
6449
  className: cn(className, switchClassName),
@@ -6008,14 +6457,14 @@ var AdsSwitch = React50.forwardRef(({ className, description, id, label, switchC
6008
6457
  AdsSwitch.displayName = "AdsSwitch";
6009
6458
 
6010
6459
  // src/components/AdsTabs/index.tsx
6011
- var React52 = __toESM(require("react"), 1);
6460
+ var React56 = __toESM(require("react"), 1);
6012
6461
 
6013
6462
  // src/primitives/tabs.tsx
6014
- var React51 = __toESM(require("react"), 1);
6463
+ var React55 = __toESM(require("react"), 1);
6015
6464
  var TabsPrimitive = __toESM(require("@radix-ui/react-tabs"), 1);
6016
- var import_jsx_runtime57 = require("react/jsx-runtime");
6465
+ var import_jsx_runtime64 = require("react/jsx-runtime");
6017
6466
  var Tabs = TabsPrimitive.Root;
6018
- var TabsList = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
6467
+ var TabsList = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
6019
6468
  TabsPrimitive.List,
6020
6469
  {
6021
6470
  className: cn("inline-flex items-center", className),
@@ -6024,7 +6473,7 @@ var TabsList = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__
6024
6473
  }
6025
6474
  ));
6026
6475
  TabsList.displayName = TabsPrimitive.List.displayName;
6027
- var TabsTrigger = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
6476
+ var TabsTrigger = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
6028
6477
  TabsPrimitive.Trigger,
6029
6478
  {
6030
6479
  className: cn(
@@ -6036,7 +6485,7 @@ var TabsTrigger = React51.forwardRef(({ className, ...props }, ref) => /* @__PUR
6036
6485
  }
6037
6486
  ));
6038
6487
  TabsTrigger.displayName = TabsPrimitive.Trigger.displayName;
6039
- var TabsContent = React51.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
6488
+ var TabsContent = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
6040
6489
  TabsPrimitive.Content,
6041
6490
  {
6042
6491
  className: cn("focus-visible:outline-none", className),
@@ -6047,9 +6496,9 @@ var TabsContent = React51.forwardRef(({ className, ...props }, ref) => /* @__PUR
6047
6496
  TabsContent.displayName = TabsPrimitive.Content.displayName;
6048
6497
 
6049
6498
  // src/components/AdsTabs/index.tsx
6050
- var import_jsx_runtime58 = require("react/jsx-runtime");
6499
+ var import_jsx_runtime65 = require("react/jsx-runtime");
6051
6500
  var AdsTabs = Tabs;
6052
- var AdsTabsList = React52.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
6501
+ var AdsTabsList = React56.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
6053
6502
  TabsList,
6054
6503
  {
6055
6504
  className: cn(
@@ -6061,7 +6510,7 @@ var AdsTabsList = React52.forwardRef(({ className, ...props }, ref) => /* @__PUR
6061
6510
  }
6062
6511
  ));
6063
6512
  AdsTabsList.displayName = "AdsTabsList";
6064
- var AdsTabsTrigger = React52.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
6513
+ var AdsTabsTrigger = React56.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
6065
6514
  TabsTrigger,
6066
6515
  {
6067
6516
  className: cn(
@@ -6073,7 +6522,7 @@ var AdsTabsTrigger = React52.forwardRef(({ className, ...props }, ref) => /* @__
6073
6522
  }
6074
6523
  ));
6075
6524
  AdsTabsTrigger.displayName = "AdsTabsTrigger";
6076
- var AdsTabsContent = React52.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
6525
+ var AdsTabsContent = React56.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
6077
6526
  TabsContent,
6078
6527
  {
6079
6528
  className: cn(
@@ -6087,13 +6536,13 @@ var AdsTabsContent = React52.forwardRef(({ className, ...props }, ref) => /* @__
6087
6536
  AdsTabsContent.displayName = "AdsTabsContent";
6088
6537
 
6089
6538
  // src/components/AdsToggle/index.tsx
6090
- var React54 = __toESM(require("react"), 1);
6539
+ var React58 = __toESM(require("react"), 1);
6091
6540
 
6092
6541
  // src/primitives/toggle.tsx
6093
- var React53 = __toESM(require("react"), 1);
6542
+ var React57 = __toESM(require("react"), 1);
6094
6543
  var TogglePrimitive = __toESM(require("@radix-ui/react-toggle"), 1);
6095
- var import_jsx_runtime59 = require("react/jsx-runtime");
6096
- var Toggle = React53.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
6544
+ var import_jsx_runtime66 = require("react/jsx-runtime");
6545
+ var Toggle = React57.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
6097
6546
  TogglePrimitive.Root,
6098
6547
  {
6099
6548
  className: cn(
@@ -6107,7 +6556,7 @@ var Toggle = React53.forwardRef(({ className, ...props }, ref) => /* @__PURE__ *
6107
6556
  Toggle.displayName = TogglePrimitive.Root.displayName;
6108
6557
 
6109
6558
  // src/components/AdsToggle/index.tsx
6110
- var import_jsx_runtime60 = require("react/jsx-runtime");
6559
+ var import_jsx_runtime67 = require("react/jsx-runtime");
6111
6560
  var sizeClassName3 = {
6112
6561
  sm: "!h-8 px-[6px] text-sm",
6113
6562
  md: "!h-9 px-md text-sm",
@@ -6122,10 +6571,10 @@ var variantClassName = {
6122
6571
  default: "border border-transparent bg-transparent text-foreground shadow-none hover:bg-muted/70 data-[state=on]:bg-muted data-[state=on]:shadow-[0px_1px_1px_rgba(0,0,0,0.1)]",
6123
6572
  outline: "border border-border bg-transparent text-foreground shadow-none hover:bg-muted/70 data-[state=on]:border-transparent data-[state=on]:bg-muted data-[state=on]:shadow-[0px_1px_1px_rgba(0,0,0,0.1)]"
6124
6573
  };
6125
- var AdsToggle = React54.forwardRef(({ children, className, size = "md", variant = "default", ...props }, ref) => {
6126
- const childCount = React54.Children.count(children);
6127
- const isIconOnly = childCount === 1 && React54.isValidElement(children);
6128
- return /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
6574
+ var AdsToggle = React58.forwardRef(({ children, className, size = "md", variant = "default", ...props }, ref) => {
6575
+ const childCount = React58.Children.count(children);
6576
+ const isIconOnly = childCount === 1 && React58.isValidElement(children);
6577
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
6129
6578
  Toggle,
6130
6579
  {
6131
6580
  className: cn(
@@ -6144,13 +6593,13 @@ var AdsToggle = React54.forwardRef(({ children, className, size = "md", variant
6144
6593
  AdsToggle.displayName = "AdsToggle";
6145
6594
 
6146
6595
  // src/components/AdsToggleGroup/index.tsx
6147
- var React56 = __toESM(require("react"), 1);
6596
+ var React60 = __toESM(require("react"), 1);
6148
6597
 
6149
6598
  // src/primitives/toggle-group.tsx
6150
- var React55 = __toESM(require("react"), 1);
6599
+ var React59 = __toESM(require("react"), 1);
6151
6600
  var ToggleGroupPrimitive = __toESM(require("@radix-ui/react-toggle-group"), 1);
6152
- var import_jsx_runtime61 = require("react/jsx-runtime");
6153
- var ToggleGroup = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
6601
+ var import_jsx_runtime68 = require("react/jsx-runtime");
6602
+ var ToggleGroup = React59.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
6154
6603
  ToggleGroupPrimitive.Root,
6155
6604
  {
6156
6605
  className: cn("inline-flex items-center justify-start", className),
@@ -6159,7 +6608,7 @@ var ToggleGroup = React55.forwardRef(({ className, ...props }, ref) => /* @__PUR
6159
6608
  }
6160
6609
  ));
6161
6610
  ToggleGroup.displayName = ToggleGroupPrimitive.Root.displayName;
6162
- var ToggleGroupItem = React55.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
6611
+ var ToggleGroupItem = React59.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
6163
6612
  ToggleGroupPrimitive.Item,
6164
6613
  {
6165
6614
  className: cn(
@@ -6173,7 +6622,7 @@ var ToggleGroupItem = React55.forwardRef(({ className, ...props }, ref) => /* @_
6173
6622
  ToggleGroupItem.displayName = ToggleGroupPrimitive.Item.displayName;
6174
6623
 
6175
6624
  // src/components/AdsToggleGroup/index.tsx
6176
- var import_jsx_runtime62 = require("react/jsx-runtime");
6625
+ var import_jsx_runtime69 = require("react/jsx-runtime");
6177
6626
  var sizeClassName4 = {
6178
6627
  sm: "h-8 min-w-7 px-[6px] text-sm",
6179
6628
  md: "h-9 min-w-[34px] px-md text-sm",
@@ -6183,8 +6632,8 @@ var variantClassName2 = {
6183
6632
  default: "border-transparent bg-transparent text-foreground hover:bg-muted/70 data-[state=on]:bg-muted data-[state=on]:shadow-[0px_1px_1px_rgba(0,0,0,0.1)]",
6184
6633
  outline: "border border-border bg-transparent text-foreground hover:bg-muted/70 data-[state=on]:border-transparent data-[state=on]:bg-muted data-[state=on]:shadow-[0px_1px_1px_rgba(0,0,0,0.1)]"
6185
6634
  };
6186
- var AdsToggleGroupContext = React56.createContext(null);
6187
- var AdsToggleGroup = React56.forwardRef(
6635
+ var AdsToggleGroupContext = React60.createContext(null);
6636
+ var AdsToggleGroup = React60.forwardRef(
6188
6637
  ({
6189
6638
  children,
6190
6639
  className,
@@ -6192,7 +6641,7 @@ var AdsToggleGroup = React56.forwardRef(
6192
6641
  size = "md",
6193
6642
  variant = "default",
6194
6643
  ...props
6195
- }, ref) => /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(AdsToggleGroupContext.Provider, { value: { orientation, size, variant }, children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
6644
+ }, ref) => /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(AdsToggleGroupContext.Provider, { value: { orientation, size, variant }, children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
6196
6645
  ToggleGroup,
6197
6646
  {
6198
6647
  className: cn(
@@ -6208,12 +6657,12 @@ var AdsToggleGroup = React56.forwardRef(
6208
6657
  ) })
6209
6658
  );
6210
6659
  AdsToggleGroup.displayName = "AdsToggleGroup";
6211
- var AdsToggleGroupItem = React56.forwardRef(({ className, size, variant, ...props }, ref) => {
6212
- const context = React56.useContext(AdsToggleGroupContext);
6660
+ var AdsToggleGroupItem = React60.forwardRef(({ className, size, variant, ...props }, ref) => {
6661
+ const context = React60.useContext(AdsToggleGroupContext);
6213
6662
  const resolvedOrientation = context?.orientation ?? "horizontal";
6214
6663
  const resolvedSize = size ?? context?.size ?? "md";
6215
6664
  const resolvedVariant = variant ?? context?.variant ?? "default";
6216
- return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
6665
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
6217
6666
  ToggleGroupItem,
6218
6667
  {
6219
6668
  className: cn(
@@ -6231,10 +6680,10 @@ var AdsToggleGroupItem = React56.forwardRef(({ className, size, variant, ...prop
6231
6680
  AdsToggleGroupItem.displayName = "AdsToggleGroupItem";
6232
6681
 
6233
6682
  // src/components/AdsTextarea/index.tsx
6234
- var React57 = __toESM(require("react"), 1);
6235
- var import_jsx_runtime63 = require("react/jsx-runtime");
6683
+ var React61 = __toESM(require("react"), 1);
6684
+ var import_jsx_runtime70 = require("react/jsx-runtime");
6236
6685
  var textareaBaseClassName = "w-full rounded-radius-md border border-border bg-card px-md py-md text-base leading-6 shadow-[0px_1px_2px_rgba(0,0,0,0.1)] placeholder:text-[var(--muted-foreground)] focus-visible:border-border-focus focus-visible:outline-none focus-visible:ring-[3px] focus-visible:ring-[rgba(161,161,161,0.5)] focus-visible:ring-offset-0 disabled:cursor-not-allowed disabled:opacity-50";
6237
- var AdsTextarea = React57.forwardRef(
6686
+ var AdsTextarea = React61.forwardRef(
6238
6687
  ({
6239
6688
  action,
6240
6689
  className,
@@ -6253,12 +6702,12 @@ var AdsTextarea = React57.forwardRef(
6253
6702
  helperText,
6254
6703
  id
6255
6704
  });
6256
- const helperNode = helperText ? /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(AdsFieldDescription, { id: description.helperId, children: helperText }) : null;
6257
- const errorNode = errorText ? /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(AdsFieldError, { id: description.errorId, children: errorText }) : null;
6258
- return /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(AdsFieldItem, { children: [
6259
- label ? /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(AdsFieldLabel, { htmlFor: description.inputId, children: label }) : null,
6705
+ const helperNode = helperText ? /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(AdsFieldDescription, { id: description.helperId, children: helperText }) : null;
6706
+ const errorNode = errorText ? /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(AdsFieldError, { id: description.errorId, children: errorText }) : null;
6707
+ return /* @__PURE__ */ (0, import_jsx_runtime70.jsxs)(AdsFieldItem, { children: [
6708
+ label ? /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(AdsFieldLabel, { htmlFor: description.inputId, children: label }) : null,
6260
6709
  descriptionPlacement === "above" ? helperNode : null,
6261
- /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(
6710
+ /* @__PURE__ */ (0, import_jsx_runtime70.jsx)(
6262
6711
  Textarea,
6263
6712
  {
6264
6713
  "aria-describedby": description.describedBy,
@@ -6276,7 +6725,7 @@ var AdsTextarea = React57.forwardRef(
6276
6725
  ...props
6277
6726
  }
6278
6727
  ),
6279
- action ? /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: "w-full [&>*]:w-full", children: action }) : null,
6728
+ action ? /* @__PURE__ */ (0, import_jsx_runtime70.jsx)("div", { className: "w-full [&>*]:w-full", children: action }) : null,
6280
6729
  descriptionPlacement === "below" ? helperNode : null,
6281
6730
  errorNode
6282
6731
  ] });
@@ -6284,65 +6733,11 @@ var AdsTextarea = React57.forwardRef(
6284
6733
  );
6285
6734
  AdsTextarea.displayName = "AdsTextarea";
6286
6735
 
6287
- // src/components/AdsTooltip/index.tsx
6288
- var React59 = __toESM(require("react"), 1);
6289
-
6290
- // src/primitives/tooltip.tsx
6291
- var React58 = __toESM(require("react"), 1);
6292
- var TooltipPrimitive = __toESM(require("@radix-ui/react-tooltip"), 1);
6293
- var import_jsx_runtime64 = require("react/jsx-runtime");
6294
- var TooltipProvider = TooltipPrimitive.Provider;
6295
- var Tooltip = TooltipPrimitive.Root;
6296
- var TooltipTrigger = TooltipPrimitive.Trigger;
6297
- var TooltipArrow = TooltipPrimitive.Arrow;
6298
- var TooltipContent = React58.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(TooltipPrimitive.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime64.jsx)(
6299
- TooltipPrimitive.Content,
6300
- {
6301
- className: cn(
6302
- "z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md outline-none data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-tooltip-content-transform-origin]",
6303
- className
6304
- ),
6305
- ref,
6306
- sideOffset,
6307
- ...props
6308
- }
6309
- ) }));
6310
- TooltipContent.displayName = TooltipPrimitive.Content.displayName;
6311
-
6312
- // src/components/AdsTooltip/index.tsx
6313
- var import_jsx_runtime65 = require("react/jsx-runtime");
6314
- var tooltipContentClassName = "z-50 rounded-[6px] border-0 bg-[#844fff] px-3 py-2 text-sm font-normal leading-5 text-[#fdfdfd] shadow-[0px_8px_24px_rgba(0,0,0,0.22)]";
6315
- var AdsTooltipProvider = TooltipProvider;
6316
- var AdsTooltip = Tooltip;
6317
- var AdsTooltipTrigger = TooltipTrigger;
6318
- var AdsTooltipContent = React59.forwardRef(({ align = "center", className, sideOffset = 10, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
6319
- TooltipContent,
6320
- {
6321
- align,
6322
- className: cn(tooltipContentClassName, className),
6323
- ref,
6324
- sideOffset,
6325
- ...props
6326
- }
6327
- ));
6328
- AdsTooltipContent.displayName = "AdsTooltipContent";
6329
- var AdsTooltipArrow = React59.forwardRef(({ className, height = 5, width = 10, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
6330
- TooltipArrow,
6331
- {
6332
- className: cn("fill-[#844fff]", className),
6333
- height,
6334
- ref,
6335
- width,
6336
- ...props
6337
- }
6338
- ));
6339
- AdsTooltipArrow.displayName = "AdsTooltipArrow";
6340
-
6341
6736
  // src/components/AdsToast/index.tsx
6342
- var React60 = __toESM(require("react"), 1);
6737
+ var React62 = __toESM(require("react"), 1);
6343
6738
  var import_lucide_react16 = require("lucide-react");
6344
6739
  var import_sonner = require("sonner");
6345
- var import_jsx_runtime66 = require("react/jsx-runtime");
6740
+ var import_jsx_runtime71 = require("react/jsx-runtime");
6346
6741
  var adsToastIconMap = {
6347
6742
  success: import_lucide_react16.CircleCheck,
6348
6743
  info: import_lucide_react16.Info,
@@ -6358,7 +6753,7 @@ function resolveToastIcon(intent, icon) {
6358
6753
  return null;
6359
6754
  }
6360
6755
  const Icon2 = adsToastIconMap[intent];
6361
- return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
6756
+ return /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
6362
6757
  Icon2,
6363
6758
  {
6364
6759
  "aria-hidden": true,
@@ -6371,7 +6766,7 @@ function resolveToastIcon(intent, icon) {
6371
6766
  }
6372
6767
  );
6373
6768
  }
6374
- var AdsToast = React60.forwardRef(
6769
+ var AdsToast = React62.forwardRef(
6375
6770
  ({
6376
6771
  action,
6377
6772
  className,
@@ -6382,7 +6777,7 @@ var AdsToast = React60.forwardRef(
6382
6777
  ...props
6383
6778
  }, ref) => {
6384
6779
  const resolvedIcon = resolveToastIcon(intent, icon);
6385
- return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(
6780
+ return /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)(
6386
6781
  "div",
6387
6782
  {
6388
6783
  className: cn(
@@ -6397,8 +6792,8 @@ var AdsToast = React60.forwardRef(
6397
6792
  ...props,
6398
6793
  children: [
6399
6794
  resolvedIcon,
6400
- /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "flex min-w-0 flex-1 flex-col gap-0.5", children: [
6401
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
6795
+ /* @__PURE__ */ (0, import_jsx_runtime71.jsxs)("div", { className: "flex min-w-0 flex-1 flex-col gap-0.5", children: [
6796
+ /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
6402
6797
  "p",
6403
6798
  {
6404
6799
  className: cn(
@@ -6408,7 +6803,7 @@ var AdsToast = React60.forwardRef(
6408
6803
  children: title
6409
6804
  }
6410
6805
  ),
6411
- description ? /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
6806
+ description ? /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
6412
6807
  "p",
6413
6808
  {
6414
6809
  className: cn(
@@ -6419,7 +6814,7 @@ var AdsToast = React60.forwardRef(
6419
6814
  }
6420
6815
  ) : null
6421
6816
  ] }),
6422
- action ? /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
6817
+ action ? /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
6423
6818
  AdsButton,
6424
6819
  {
6425
6820
  className: "shrink-0 rounded-radius-lg",
@@ -6445,7 +6840,7 @@ function AdsToaster({
6445
6840
  ...props
6446
6841
  }) {
6447
6842
  const { messages } = useAdsI18n();
6448
- return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
6843
+ return /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
6449
6844
  import_sonner.Toaster,
6450
6845
  {
6451
6846
  closeButton: false,
@@ -6463,7 +6858,7 @@ function AdsToaster({
6463
6858
  );
6464
6859
  }
6465
6860
  function toStageNode(intent, title, options) {
6466
- return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
6861
+ return /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
6467
6862
  AdsToast,
6468
6863
  {
6469
6864
  action: options?.action,
@@ -6477,7 +6872,7 @@ function toStageNode(intent, title, options) {
6477
6872
  function showAdsToast(intent, title, options) {
6478
6873
  const { action, description, icon, ...toastOptions } = options ?? {};
6479
6874
  return import_sonner.toast.custom(
6480
- (id) => /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
6875
+ (id) => /* @__PURE__ */ (0, import_jsx_runtime71.jsx)(
6481
6876
  AdsToast,
6482
6877
  {
6483
6878
  action: action ? {
@@ -6531,10 +6926,10 @@ var AdsToastManager = Object.assign(
6531
6926
  );
6532
6927
 
6533
6928
  // src/components/AdsDialog/index.tsx
6534
- var React61 = __toESM(require("react"), 1);
6929
+ var React63 = __toESM(require("react"), 1);
6535
6930
  var DialogPrimitive = __toESM(require("@radix-ui/react-dialog"), 1);
6536
6931
  var import_lucide_react17 = require("lucide-react");
6537
- var import_jsx_runtime67 = require("react/jsx-runtime");
6932
+ var import_jsx_runtime72 = require("react/jsx-runtime");
6538
6933
  var overlayClassName2 = "fixed inset-0 z-50 bg-black/80 backdrop-blur-[2px] data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0";
6539
6934
  var contentClassName2 = "fixed left-1/2 top-1/2 z-50 flex max-h-[calc(100dvh-2rem)] w-[calc(100%-2rem)] max-w-[423px] -translate-x-1/2 -translate-y-1/2 flex-col gap-lg overflow-hidden rounded-radius-md border border-border bg-card p-xl shadow-[0px_4px_6px_-4px_rgba(0,0,0,0.1),0px_10px_15px_-3px_rgba(0,0,0,0.1)] duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%]";
6540
6935
  var bodyClassName = "min-h-0 flex-1 overflow-y-auto overscroll-contain [scrollbar-gutter:stable]";
@@ -6542,7 +6937,7 @@ var closeButtonClassName = "absolute right-xl top-xl inline-flex h-6 w-6 items-c
6542
6937
  var Dialog = DialogPrimitive.Root;
6543
6938
  var DialogTrigger = DialogPrimitive.Trigger;
6544
6939
  var DialogPortal = DialogPrimitive.Portal;
6545
- var DialogOverlay = React61.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
6940
+ var DialogOverlay = React63.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(
6546
6941
  DialogPrimitive.Overlay,
6547
6942
  {
6548
6943
  className: cn(overlayClassName2, className),
@@ -6551,7 +6946,7 @@ var DialogOverlay = React61.forwardRef(({ className, ...props }, ref) => /* @__P
6551
6946
  }
6552
6947
  ));
6553
6948
  DialogOverlay.displayName = "DialogOverlay";
6554
- var DialogClose = React61.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
6949
+ var DialogClose = React63.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(
6555
6950
  DialogPrimitive.Close,
6556
6951
  {
6557
6952
  className: cn(
@@ -6565,8 +6960,8 @@ var DialogClose = React61.forwardRef(({ className, ...props }, ref) => /* @__PUR
6565
6960
  DialogClose.displayName = "DialogClose";
6566
6961
  function flattenDialogChildren(children) {
6567
6962
  const nodes = [];
6568
- React61.Children.forEach(children, (child) => {
6569
- if (React61.isValidElement(child) && child.type === React61.Fragment) {
6963
+ React63.Children.forEach(children, (child) => {
6964
+ if (React63.isValidElement(child) && child.type === React63.Fragment) {
6570
6965
  nodes.push(...flattenDialogChildren(child.props.children));
6571
6966
  return;
6572
6967
  }
@@ -6575,10 +6970,10 @@ function flattenDialogChildren(children) {
6575
6970
  return nodes;
6576
6971
  }
6577
6972
  function isDialogSlotElement(child, component) {
6578
- return React61.isValidElement(child) && child.type === component;
6973
+ return React63.isValidElement(child) && child.type === component;
6579
6974
  }
6580
- var DialogBody = React61.forwardRef(
6581
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
6975
+ var DialogBody = React63.forwardRef(
6976
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(
6582
6977
  "div",
6583
6978
  {
6584
6979
  className: cn(bodyClassName, className),
@@ -6589,7 +6984,7 @@ var DialogBody = React61.forwardRef(
6589
6984
  )
6590
6985
  );
6591
6986
  DialogBody.displayName = "DialogBody";
6592
- var DialogContent = React61.forwardRef(
6987
+ var DialogContent = React63.forwardRef(
6593
6988
  ({
6594
6989
  children,
6595
6990
  className,
@@ -6646,9 +7041,9 @@ var DialogContent = React61.forwardRef(
6646
7041
  const looseBodyNodes = bodyNodes.filter(
6647
7042
  (child) => !isDialogSlotElement(child, DialogBody)
6648
7043
  );
6649
- return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(NestedDismissableLayerProvider, { coordinator: parentLayer.coordinator, children: /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(DialogPortal, { children: [
6650
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(DialogOverlay, {}),
6651
- /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
7044
+ return /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(NestedDismissableLayerProvider, { coordinator: parentLayer.coordinator, children: /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)(DialogPortal, { children: [
7045
+ /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(DialogOverlay, {}),
7046
+ /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)(
6652
7047
  DialogPrimitive.Content,
6653
7048
  {
6654
7049
  "data-slot": "ads-dialog-content",
@@ -6664,18 +7059,18 @@ var DialogContent = React61.forwardRef(
6664
7059
  ...props,
6665
7060
  children: [
6666
7061
  headerNode,
6667
- headerNode === null && generatedHeaderNodes.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(DialogHeader, { children: generatedHeaderNodes }) : null,
7062
+ headerNode === null && generatedHeaderNodes.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(DialogHeader, { children: generatedHeaderNodes }) : null,
6668
7063
  explicitBodyNodes.length > 0 ? explicitBodyNodes : null,
6669
- looseBodyNodes.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(DialogBody, { children: looseBodyNodes }) : null,
7064
+ looseBodyNodes.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(DialogBody, { children: looseBodyNodes }) : null,
6670
7065
  footerNode,
6671
- !hideCloseButton ? /* @__PURE__ */ (0, import_jsx_runtime67.jsxs)(
7066
+ !hideCloseButton ? /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)(
6672
7067
  DialogPrimitive.Close,
6673
7068
  {
6674
7069
  "aria-label": resolvedCloseLabel,
6675
7070
  className: cn(closeButtonClassName, adsTextColorClassName.card),
6676
7071
  children: [
6677
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_lucide_react17.X, { "aria-hidden": true, className: "h-4 w-4" }),
6678
- /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("span", { className: "sr-only", children: resolvedCloseLabel })
7072
+ /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(import_lucide_react17.X, { "aria-hidden": true, className: "h-4 w-4" }),
7073
+ /* @__PURE__ */ (0, import_jsx_runtime72.jsx)("span", { className: "sr-only", children: resolvedCloseLabel })
6679
7074
  ]
6680
7075
  }
6681
7076
  ) : null
@@ -6686,8 +7081,8 @@ var DialogContent = React61.forwardRef(
6686
7081
  }
6687
7082
  );
6688
7083
  DialogContent.displayName = "DialogContent";
6689
- var DialogHeader = React61.forwardRef(
6690
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
7084
+ var DialogHeader = React63.forwardRef(
7085
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(
6691
7086
  "div",
6692
7087
  {
6693
7088
  "data-slot": "ads-dialog-header",
@@ -6698,8 +7093,8 @@ var DialogHeader = React61.forwardRef(
6698
7093
  )
6699
7094
  );
6700
7095
  DialogHeader.displayName = "DialogHeader";
6701
- var DialogFooter = React61.forwardRef(
6702
- ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
7096
+ var DialogFooter = React63.forwardRef(
7097
+ ({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(
6703
7098
  "div",
6704
7099
  {
6705
7100
  "data-slot": "ads-dialog-footer",
@@ -6713,7 +7108,7 @@ var DialogFooter = React61.forwardRef(
6713
7108
  )
6714
7109
  );
6715
7110
  DialogFooter.displayName = "DialogFooter";
6716
- var DialogTitle = React61.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
7111
+ var DialogTitle = React63.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(
6717
7112
  DialogPrimitive.Title,
6718
7113
  {
6719
7114
  className: cn(
@@ -6726,7 +7121,7 @@ var DialogTitle = React61.forwardRef(({ className, ...props }, ref) => /* @__PUR
6726
7121
  }
6727
7122
  ));
6728
7123
  DialogTitle.displayName = "DialogTitle";
6729
- var DialogDescription = React61.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(
7124
+ var DialogDescription = React63.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(
6730
7125
  DialogPrimitive.Description,
6731
7126
  {
6732
7127
  className: cn("text-sm leading-5", adsTextColorClassName.muted, className),
@@ -6742,13 +7137,14 @@ var AdsDialogOverlay = DialogOverlay;
6742
7137
  var AdsDialogClose = DialogClose;
6743
7138
  var AdsDialogContent = DialogContent;
6744
7139
  var AdsDialogHeader = DialogHeader;
7140
+ var AdsDialogBody = DialogBody;
6745
7141
  var AdsDialogFooter = DialogFooter;
6746
7142
  var AdsDialogTitle = DialogTitle;
6747
7143
  var AdsDialogDescription = DialogDescription;
6748
7144
 
6749
7145
  // src/components/AdsMasonry/index.tsx
6750
7146
  var import_masonic = require("masonic");
6751
- var import_jsx_runtime68 = require("react/jsx-runtime");
7147
+ var import_jsx_runtime73 = require("react/jsx-runtime");
6752
7148
  var DEFAULT_COLUMN_WIDTH = 240;
6753
7149
  var DEFAULT_GAP = 16;
6754
7150
  var DEFAULT_ITEM_HEIGHT_ESTIMATE = 280;
@@ -6784,7 +7180,7 @@ function AdsMasonry({
6784
7180
  { length: loadingItemCount },
6785
7181
  (_, index) => index
6786
7182
  );
6787
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
7183
+ return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
6788
7184
  "div",
6789
7185
  {
6790
7186
  className: cn(
@@ -6796,20 +7192,20 @@ function AdsMasonry({
6796
7192
  const mediaHeight = LOADING_MEDIA_HEIGHT_PATTERN[index % LOADING_MEDIA_HEIGHT_PATTERN.length];
6797
7193
  const titleWidth = LOADING_TITLE_WIDTH_PATTERN[index % LOADING_TITLE_WIDTH_PATTERN.length];
6798
7194
  const bodyWidth = LOADING_BODY_WIDTH_PATTERN[index % LOADING_BODY_WIDTH_PATTERN.length];
6799
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)(
7195
+ return /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)(
6800
7196
  "article",
6801
7197
  {
6802
7198
  className: "overflow-hidden rounded-radius-lg border border-border bg-card shadow-showcase",
6803
7199
  "data-slot": "ads-masonry-loading-card",
6804
7200
  "data-testid": "ads-masonry-loading-card",
6805
7201
  children: [
6806
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
7202
+ /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
6807
7203
  "div",
6808
7204
  {
6809
7205
  className: "border-b border-border/60 bg-surface-inset/50",
6810
7206
  "data-slot": "ads-masonry-skeleton-preview",
6811
7207
  "data-testid": "ads-masonry-skeleton-preview",
6812
- children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
7208
+ children: /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
6813
7209
  AdsSkeleton,
6814
7210
  {
6815
7211
  className: cn("w-full rounded-none", classNames?.skeleton),
@@ -6820,10 +7216,10 @@ function AdsMasonry({
6820
7216
  )
6821
7217
  }
6822
7218
  ),
6823
- /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex flex-col gap-4 p-lg", children: [
6824
- /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex items-start justify-between gap-3", children: [
6825
- /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "flex-1 space-y-2", children: [
6826
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
7219
+ /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)("div", { className: "flex flex-col gap-4 p-lg", children: [
7220
+ /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)("div", { className: "flex items-start justify-between gap-3", children: [
7221
+ /* @__PURE__ */ (0, import_jsx_runtime73.jsxs)("div", { className: "flex-1 space-y-2", children: [
7222
+ /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
6827
7223
  AdsSkeleton,
6828
7224
  {
6829
7225
  className: cn("h-3 w-16 rounded-full", classNames?.skeleton),
@@ -6831,7 +7227,7 @@ function AdsMasonry({
6831
7227
  "data-testid": "ads-masonry-skeleton"
6832
7228
  }
6833
7229
  ),
6834
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
7230
+ /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
6835
7231
  AdsSkeleton,
6836
7232
  {
6837
7233
  className: cn("h-6 rounded-full", classNames?.skeleton),
@@ -6841,7 +7237,7 @@ function AdsMasonry({
6841
7237
  }
6842
7238
  )
6843
7239
  ] }),
6844
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
7240
+ /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
6845
7241
  AdsSkeleton,
6846
7242
  {
6847
7243
  className: cn("h-6 w-16 rounded-full", classNames?.skeleton),
@@ -6850,7 +7246,7 @@ function AdsMasonry({
6850
7246
  }
6851
7247
  )
6852
7248
  ] }),
6853
- /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
7249
+ /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
6854
7250
  AdsSkeleton,
6855
7251
  {
6856
7252
  className: cn("h-4 rounded-full", classNames?.skeleton),
@@ -6869,7 +7265,7 @@ function AdsMasonry({
6869
7265
  );
6870
7266
  }
6871
7267
  if (items.length === 0) {
6872
- return emptyState ? /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
7268
+ return emptyState ? /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
6873
7269
  "div",
6874
7270
  {
6875
7271
  className: cn(rootClassName, classNames?.empty),
@@ -6878,7 +7274,7 @@ function AdsMasonry({
6878
7274
  }
6879
7275
  ) : null;
6880
7276
  }
6881
- return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
7277
+ return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
6882
7278
  import_masonic.Masonry,
6883
7279
  {
6884
7280
  className: rootClassName,
@@ -6890,7 +7286,7 @@ function AdsMasonry({
6890
7286
  maxColumnCount,
6891
7287
  onRender,
6892
7288
  overscanBy,
6893
- render: ({ data, index, width }) => /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
7289
+ render: ({ data, index, width }) => /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
6894
7290
  "div",
6895
7291
  {
6896
7292
  className: cn("pb-0", classNames?.item, itemClassName),
@@ -6990,6 +7386,7 @@ var designTokens = {
6990
7386
  AdsAlertDialogTrigger,
6991
7387
  AdsAlertTitle,
6992
7388
  AdsBadge,
7389
+ AdsBarChart,
6993
7390
  AdsBreadcrumb,
6994
7391
  AdsBreadcrumbEllipsis,
6995
7392
  AdsBreadcrumbItem,
@@ -7011,6 +7408,7 @@ var designTokens = {
7011
7408
  AdsDatePicker,
7012
7409
  AdsDateTimePicker,
7013
7410
  AdsDialog,
7411
+ AdsDialogBody,
7014
7412
  AdsDialogClose,
7015
7413
  AdsDialogContent,
7016
7414
  AdsDialogDescription,
@@ -7066,6 +7464,7 @@ var designTokens = {
7066
7464
  AdsPopoverTitle,
7067
7465
  AdsPopoverTrigger,
7068
7466
  AdsProgress,
7467
+ AdsRadialProgressChart,
7069
7468
  AdsRadioGroup,
7070
7469
  AdsRadioGroupCardOption,
7071
7470
  AdsRadioGroupOption,
@@ -7083,7 +7482,9 @@ var designTokens = {
7083
7482
  AdsSeparator,
7084
7483
  AdsSkeleton,
7085
7484
  AdsSlider,
7485
+ AdsSparklineChart,
7086
7486
  AdsSpinner,
7487
+ AdsStackedBarChart,
7087
7488
  AdsSwitch,
7088
7489
  AdsTable,
7089
7490
  AdsTableBody,