@cntyclub/ui-react 0.7.0 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1233,20 +1233,16 @@ interface PipelineProps extends React$1.ComponentProps<"div"> {
1233
1233
  /** Ordered funnel stages, left to right. */
1234
1234
  stages: PipelineStage[];
1235
1235
  /**
1236
- * Conversion markers shown between consecutive stages (length =
1237
- * `stages.length - 1`). Typically a percentage string; any node works.
1236
+ * Conversion markers shown after each stage (length = `stages.length - 1`).
1237
+ * Typically a percentage string; any node works.
1238
1238
  */
1239
1239
  conversions?: React$1.ReactNode[];
1240
1240
  }
1241
1241
  /**
1242
- * A horizontal conversion funnel — a row of headline stages with the
1243
- * step-to-step conversion shown between them.
1244
- *
1245
- * Self-contained responsive: the component establishes its own container, so
1246
- * it lays out as a horizontal funnel when it has room and stacks vertically
1247
- * when narrow (e.g. beside a docked panel). When stacked, each conversion sits
1248
- * attached to the stage number it converts from; when wide, it sits between
1249
- * the two stages with a chevron.
1242
+ * A horizontal conversion funnel — a row of headline stages, each with the
1243
+ * step-to-step conversion pill sitting right beside its number. The row wraps
1244
+ * onto multiple lines when space is tight (e.g. beside a docked panel), so it
1245
+ * stays readable without stretching the stages apart.
1250
1246
  */
1251
1247
  declare function Pipeline({ stages, conversions, className, ...props }: PipelineProps): React$1.JSX.Element;
1252
1248
  /** The small pill that carries a stage-to-stage conversion value. */
package/dist/index.js CHANGED
@@ -6,7 +6,7 @@ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
6
6
  import { cva } from 'class-variance-authority';
7
7
  import { AlertDialog as AlertDialog$1 } from '@base-ui/react/alert-dialog';
8
8
  import * as React17 from 'react';
9
- import { createContext, memo, forwardRef, useRef, useState, useMemo, useContext, useEffect, useCallback, Fragment as Fragment$1, useSyncExternalStore, isValidElement, useLayoutEffect } from 'react';
9
+ import { createContext, memo, forwardRef, useRef, useState, useMemo, useContext, useEffect, useCallback, useSyncExternalStore, isValidElement, useLayoutEffect } from 'react';
10
10
  import { flushSync } from 'react-dom';
11
11
  import { mergeProps } from '@base-ui/react/merge-props';
12
12
  import { useRender } from '@base-ui/react/use-render';
@@ -7406,51 +7406,33 @@ function StepperSeparator({ className, ...props }) {
7406
7406
  );
7407
7407
  }
7408
7408
  function Pipeline({ stages, conversions = [], className, ...props }) {
7409
- return /* @__PURE__ */ jsx("div", { className: cn("@container", className), "data-slot": "pipeline", ...props, children: /* @__PURE__ */ jsx("div", { className: "flex flex-col gap-1 @min-[640px]:flex-row @min-[640px]:items-start", children: stages.map((stage, i) => {
7410
- const conv = i < stages.length - 1 ? conversions[i] : void 0;
7411
- return /* @__PURE__ */ jsxs(Fragment$1, { children: [
7412
- /* @__PURE__ */ jsxs(
7413
- "div",
7414
- {
7415
- className: "min-w-0 py-1.5 @min-[640px]:flex-1 @min-[640px]:px-2 @min-[640px]:py-0",
7416
- "data-slot": "pipeline-stage",
7417
- children: [
7418
- /* @__PURE__ */ jsxs("div", { className: "flex items-baseline gap-2", children: [
7419
- /* @__PURE__ */ jsx(
7420
- "span",
7421
- {
7422
- className: cn(
7423
- "font-semibold text-2xl text-foreground leading-none tabular-nums tracking-tight",
7424
- stage.accent && "text-primary"
7425
- ),
7426
- children: stage.value
7427
- }
7428
- ),
7429
- conv != null ? /* @__PURE__ */ jsx(PipelineConversion, { className: "@min-[640px]:hidden", children: conv }) : null
7430
- ] }),
7431
- /* @__PURE__ */ jsx("div", { className: "mt-1 text-muted-foreground text-xs leading-snug", children: stage.label })
7432
- ]
7433
- }
7434
- ),
7435
- conv != null ? /* @__PURE__ */ jsxs(
7436
- "div",
7437
- {
7438
- className: "hidden flex-col items-center justify-center gap-1 self-center px-1 @min-[640px]:flex",
7439
- "data-slot": "pipeline-connector",
7440
- children: [
7441
- /* @__PURE__ */ jsx(PipelineConversion, { children: conv }),
7409
+ return /* @__PURE__ */ jsx(
7410
+ "div",
7411
+ {
7412
+ className: cn("flex flex-wrap items-start gap-x-5 gap-y-4", className),
7413
+ "data-slot": "pipeline",
7414
+ ...props,
7415
+ children: stages.map((stage, i) => {
7416
+ const conv = i < stages.length - 1 ? conversions[i] : void 0;
7417
+ return /* @__PURE__ */ jsxs("div", { "data-slot": "pipeline-stage", children: [
7418
+ /* @__PURE__ */ jsxs("div", { className: "flex items-baseline gap-2", children: [
7442
7419
  /* @__PURE__ */ jsx(
7443
- ChevronRightIcon,
7420
+ "span",
7444
7421
  {
7445
- className: "size-3.5 text-muted-foreground/50",
7446
- strokeWidth: 2
7422
+ className: cn(
7423
+ "font-sans font-semibold text-3xl text-foreground leading-none tabular-nums tracking-tight",
7424
+ stage.accent && "text-primary"
7425
+ ),
7426
+ children: stage.value
7447
7427
  }
7448
- )
7449
- ]
7450
- }
7451
- ) : null
7452
- ] }, i);
7453
- }) }) });
7428
+ ),
7429
+ conv != null ? /* @__PURE__ */ jsx(PipelineConversion, { children: conv }) : null
7430
+ ] }),
7431
+ /* @__PURE__ */ jsx("div", { className: "mt-1.5 text-muted-foreground text-xs leading-snug", children: stage.label })
7432
+ ] }, i);
7433
+ })
7434
+ }
7435
+ );
7454
7436
  }
7455
7437
  function PipelineConversion({
7456
7438
  className,