Skip to content

Releases: monease/monbits-ui

v0.11.1

Choose a tag to compare

@ibrmad ibrmad released this 15 Apr 19:34
  • fix: soften card shadow for subtler elevation

v0.11.0

Choose a tag to compare

@ibrmad ibrmad released this 31 Mar 12:33

Comprehensive UI quality pass

Hardening

  • Fix URL encoding bug in filter-utils (relative date values with colons)
  • Fix hsl() wrapping OKLCH in sidebar outline variant
  • Fix duplicate @layer base in globals.css
  • Add prefers-reduced-motion global rule
  • Add keyboard accessibility to DataTable clickable rows
  • Standardize focus rings on Dialog/Sheet close buttons
  • Add aria-labels to FilterBuilder, FilterMenu, FilterChip controls
  • Fix calendar overflow in FilterMenu popover
  • Add date value editing to FilterChip (was empty dropdown)
  • Auto-close DateRangePicker when both dates selected
  • Add searchable prop to Combobox
  • Replace span role=button with native button in Combobox badges
  • Replace hand-rolled spinners with Spinner component in dialogs
  • Add entityLabel prop to DeleteConfirmationDialog
  • Expand CopyButton touch target
  • Fix useIsMobile SSR hydration flash
  • Throttle useWindowSize via requestAnimationFrame
  • Alias use-sync-external-store/shim to React 19 native export (fixes Vite 8 / Rolldown require() error)

Normalization

  • Convert Tabs from forwardRef to function declarations + data-slot
  • Convert Descriptions from forwardRef to function components + CSS variable grid
  • Remove "use client" from all library files
  • Standardize icon sizing to size-N across 30+ instances
  • Use Button size="icon-sm" in DataTablePagination
  • Align StatusBadge border-radius with design system (rounded-md)
  • Replace transition-all with specific properties on Button, Switch, Tabs, InputOTP, Sidebar

Color & design

  • Brand-green hover/active states on sidebar items with left-edge indicator
  • Brand-tinted active Tabs trigger, selected table rows, Combobox items
  • Brand-green operator pill on FilterChip
  • Brand-tinted ::selection, thin scrollbars, smooth focus ring transitions
  • More tactile button active state

Responsive

  • Fix useIsMobile breakpoint 768→640 to match Tailwind sm:
  • Responsive grid utility for Descriptions (single column on mobile)
  • DateRangePicker: single month + stacked presets on mobile
  • Touch target expansion on FilterBuilder, FilterMenu, FilterChip, Pagination
  • Responsive padding on menu items, search inputs, SelectItem
  • Popover max-width viewport guard
  • Dialog responsive padding + close button min size
  • DetailRow stacks vertically on mobile

Copy & clarity

  • CopyButton: specific toast messages
  • ConfirmationDialog: default variant changed to non-destructive
  • DeleteConfirmationDialog: fix uppercase ambiguity, clearer label
  • FilterMenu: "Filter..." → "Search...", "Pick a date..." → "Custom date"
  • Sidebar: dynamic aria-label based on open/closed state

Simplification

  • Delete icons.tsx (dead Ant Design migration shim)
  • Remove StatusType danger/purple/cyan/pink
  • Remove FieldTitle (zero usages, data-slot collision)
  • Remove DataTable __chevron__ special-case
  • Rename Loader fullScreen → centered (deprecated alias kept)

Build

  • Upgrade Vite 7 → 8
  • Add use-sync-external-store ESM shim (fixes Rolldown CJS require() error)
  • Move react-hook-form from dependencies to peerDependencies

Docs

  • Add .impeccable.md design context
  • Update CLAUDE.md with design context reference

Breaking changes

  • StatusType removed: danger, purple, cyan, pink — use error or pass className
  • FieldTitle removed — use FieldLabel
  • icons.tsx deleted — import icons from lucide-react directly
  • react-hook-form moved to peerDependencies
  • DetailRow colon removed by default — pass showColon to restore

v0.10.0

Choose a tag to compare

@hathamneh hathamneh released this 31 Jan 18:53
e4b70df

What's Changed

  • feat: add Combobox component with multi-select support by @hathamneh in #2

Full Changelog: v0.9.0...v0.10.0

v0.9.0

Choose a tag to compare

@hathamneh hathamneh released this 25 Jan 20:43
99d4e54

What's Changed

New Contributors

Full Changelog: v0.8.0...v0.9.0

v0.8.0

Choose a tag to compare

@ibrmad ibrmad released this 19 Jan 14:58

What's Changed

Features

  • FilterBuilder: Add showSearch prop to control field search visibility
    • Defaults to false - field search is hidden by default
    • Set showSearch={true} to enable search when filtering by field type
    • Value search for asyncSelect fields always shows (unchanged)
    • Value search for regular selects with >6 options always shows (unchanged)

Full Changelog: v0.7.0...v0.8.0

v0.7.0

Choose a tag to compare

@ibrmad ibrmad released this 18 Jan 18:26

What's New

  • TintedBackgroundIcon component: New component for displaying icons with colored tinted backgrounds
  • Improved button styling: Subtle shadows and hover effects for better visual feedback
  • Filter consistency: Fixed filter chip and menu height/roundness for consistent appearance

v0.6.0

Choose a tag to compare

@ibrmad ibrmad released this 17 Jan 23:51

What's New

  • SearchInput component: New component with URL sync support for search functionality
  • useUrlPagination hook: Improved with better defaults and options
  • useUrlState hook: General improvements
  • FilterBuilder: Updated filter components
  • DataTablePagination: Updates and improvements

v0.5.1

Choose a tag to compare

@ibrmad ibrmad released this 17 Jan 19:05
  • Update documentation with new package name

v0.5.0

Choose a tag to compare

@ibrmad ibrmad released this 17 Jan 19:01

Changes

  • Rename package to @monbits/ui
  • Publish to npm registry
  • Add FilterBuilder component with URL sync

v0.4.1

Choose a tag to compare

@ibrmad ibrmad released this 17 Jan 15:46

Changes

  • Add biome for linting and formatting
  • Add typecheck script for TypeScript checking
  • Move react-hook-form from peerDependencies to regular dependencies
  • Set up GitHub Actions CI/CD workflows
  • Apply biome formatting across codebase