@tinybigui/react 0.11.2 → 0.12.0

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/README.md CHANGED
@@ -12,7 +12,7 @@ A modern, accessible React component library implementing Google's Material Desi
12
12
 
13
13
  ## ✅ Status
14
14
 
15
- > **Latest Release: v0.11.2** (2026-06-09)
15
+ > **Latest Release: v0.12.0** (2026-06-09)
16
16
  >
17
17
  > **29 MD3 components** published to npm with full TypeScript support and WCAG 2.1 AA accessibility.
18
18
  >
@@ -170,15 +170,15 @@ See [THEMING.md](./THEMING.md) for the full customization guide.
170
170
 
171
171
  ### Phase 4: Data Display ✅
172
172
 
173
- | Component | Status | Description |
174
- | ------------ | ------ | -------------------------------------------------------------------- |
175
- | `Card` | ✅ | MD3 motion tier, media aspect-ratio fix, CVA export parity (v0.11.1) |
176
- | `List` | ✅ | Static and interactive list items |
177
- | `Chip` | ✅ | MD3 expressive slot architecture, elevated surface (v0.9.0) |
178
- | `Badge` | ✅ | MD3 expressive dot/count badges, icon-corner anchoring (v0.8.0) |
179
- | `Divider` | ✅ | Horizontal/vertical, inset variants |
180
- | `DatePicker` | ✅ | Docked, modal, and input variants |
181
- | `TimePicker` | ✅ | 12h/24h clock dial, range selection |
173
+ | Component | Status | Description |
174
+ | ------------ | ------ | ------------------------------------------------------------------------ |
175
+ | `Card` | ✅ | MD3 motion tier, media aspect-ratio fix, CVA export parity (v0.11.1) |
176
+ | `List` | ✅ | Static and interactive list items |
177
+ | `Chip` | ✅ | MD3 expressive slot architecture, elevated surface (v0.9.0) |
178
+ | `Badge` | ✅ | MD3 expressive dot/count badges, icon-corner anchoring (v0.8.0) |
179
+ | `Divider` | ✅ | MD3 expressive slot CVA, CSS-var thickness, logical RTL insets (v0.12.0) |
180
+ | `DatePicker` | ✅ | Docked, modal, and input variants |
181
+ | `TimePicker` | ✅ | 12h/24h clock dial, range selection |
182
182
 
183
183
  ### Planned
184
184
 
package/dist/index.cjs CHANGED
@@ -4718,13 +4718,21 @@ var HeadlessDrawerItem = React.forwardRef(
4718
4718
  );
4719
4719
  HeadlessDrawerItem.displayName = "HeadlessDrawerItem";
4720
4720
  var DividerHeadless = React.forwardRef(
4721
- ({ orientation = "horizontal", className }, ref) => {
4721
+ ({ orientation = "horizontal", className, style }, ref) => {
4722
4722
  const { separatorProps } = reactAria.useSeparator({
4723
4723
  orientation,
4724
4724
  elementType: orientation === "vertical" ? "div" : "hr"
4725
4725
  });
4726
4726
  if (orientation === "vertical") {
4727
- return /* @__PURE__ */ jsxRuntime.jsx("div", { ...separatorProps, ref, className });
4727
+ return /* @__PURE__ */ jsxRuntime.jsx(
4728
+ "div",
4729
+ {
4730
+ ...separatorProps,
4731
+ ref,
4732
+ className,
4733
+ style
4734
+ }
4735
+ );
4728
4736
  }
4729
4737
  return /* @__PURE__ */ jsxRuntime.jsx(
4730
4738
  "hr",
@@ -4732,32 +4740,46 @@ var DividerHeadless = React.forwardRef(
4732
4740
  ...separatorProps,
4733
4741
  "aria-orientation": "horizontal",
4734
4742
  ref,
4735
- className
4743
+ className,
4744
+ style
4736
4745
  }
4737
4746
  );
4738
4747
  }
4739
4748
  );
4740
4749
  DividerHeadless.displayName = "DividerHeadless";
4741
4750
  var dividerVariants = classVarianceAuthority.cva(
4742
- // Base: always apply the MD3 outline-variant color to the border
4743
- "border-outline-variant",
4751
+ [
4752
+ // Zero border — color comes from background fill (matches md-web strategy)
4753
+ "shrink-0 border-0",
4754
+ // MD3 outline-variant color token
4755
+ "bg-outline-variant",
4756
+ // Default thickness — consumers override via the CSS custom property
4757
+ "[--md-divider-thickness:1px]"
4758
+ ],
4744
4759
  {
4745
4760
  variants: {
4746
4761
  /**
4747
4762
  * Controls the axis of the visual rule.
4763
+ *
4764
+ * horizontal — stretches to full inline width; block size is --md-divider-thickness
4765
+ * vertical — self-stretches to the block axis of the flex/grid parent;
4766
+ * inline size is --md-divider-thickness
4748
4767
  */
4749
4768
  orientation: {
4750
- horizontal: "border-t",
4751
- vertical: "border-l h-auto self-stretch"
4769
+ horizontal: "w-full h-[var(--md-divider-thickness)]",
4770
+ vertical: "self-stretch h-auto w-[var(--md-divider-thickness)]"
4752
4771
  },
4753
4772
  /**
4754
- * Inset — which end(s) are offset by 16dp per MD3 spec.
4773
+ * Inset — logical inline offset per MD3 spec (16dp = 1rem = Tailwind spacing-4).
4774
+ *
4775
+ * Uses logical properties (ms-N / me-N) for correct behaviour under RTL
4776
+ * writing modes (Arabic, Hebrew, etc.).
4755
4777
  */
4756
4778
  inset: {
4757
4779
  none: "",
4758
- start: "ml-4",
4759
- end: "mr-4",
4760
- both: "ml-4 mr-4"
4780
+ start: "ms-4",
4781
+ end: "me-4",
4782
+ both: "ms-4 me-4"
4761
4783
  }
4762
4784
  },
4763
4785
  defaultVariants: {
@@ -4767,44 +4789,15 @@ var dividerVariants = classVarianceAuthority.cva(
4767
4789
  }
4768
4790
  );
4769
4791
  var Divider = React.forwardRef(
4770
- ({ orientation = "horizontal", inset = "none", label, className }, ref) => {
4771
- if (label) {
4772
- return /* @__PURE__ */ jsxRuntime.jsxs(
4773
- "div",
4774
- {
4775
- ref,
4776
- role: "group",
4777
- "aria-label": label,
4778
- className: cn("flex items-center gap-4", className),
4779
- children: [
4780
- /* @__PURE__ */ jsxRuntime.jsx(
4781
- DividerHeadless,
4782
- {
4783
- orientation: "horizontal",
4784
- className: cn(dividerVariants({ orientation: "horizontal", inset: "none" }), "flex-1")
4785
- }
4786
- ),
4787
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-on-surface-variant text-label-large whitespace-nowrap", children: label }),
4788
- /* @__PURE__ */ jsxRuntime.jsx(
4789
- DividerHeadless,
4790
- {
4791
- orientation: "horizontal",
4792
- className: cn(dividerVariants({ orientation: "horizontal", inset: "none" }), "flex-1")
4793
- }
4794
- )
4795
- ]
4796
- }
4797
- );
4792
+ ({ orientation = "horizontal", inset = "none", className, style }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
4793
+ DividerHeadless,
4794
+ {
4795
+ ref,
4796
+ orientation,
4797
+ className: cn(dividerVariants({ orientation, inset }), className),
4798
+ ...style !== void 0 && { style }
4798
4799
  }
4799
- return /* @__PURE__ */ jsxRuntime.jsx(
4800
- DividerHeadless,
4801
- {
4802
- ref,
4803
- orientation,
4804
- className: cn(dividerVariants({ orientation, inset }), className)
4805
- }
4806
- );
4807
- }
4800
+ )
4808
4801
  );
4809
4802
  Divider.displayName = "Divider";
4810
4803
  var drawerVariants = classVarianceAuthority.cva(