Skip to content

Releases: Cratis/Components

Release v2.0.1

01 Jun 13:48
b60f98e

Choose a tag to compare

Changed

  • Move UI runtime libraries (allotment, framer-motion, pixi.js, primeicons, primereact) from peer dependencies to dependencies for package consumers.
  • Keep only framework-level peers (React, Cratis Arc, fundamentals, reflect-metadata, tsyringe) as peer dependencies.

Removed

  • Remove optional peer dependency metadata for libraries now included as runtime dependencies.

Release v2.0.0

30 May 00:11
d310b0c

Choose a tag to compare

Summary

Makes styling in @cratis/components explicit and consumer-controlled. Consumers can use a PrimeReact theme, apply a custom palette on top of a PrimeReact theme, or run fully unstyled with their own pt preset.

Also moves PrimeReact packages to peer dependencies, adds a Cratis provider and token layer, forwards PrimeReact customization props through the wrappers, and updates the documentation around the new setup model.

The token layer is also version-spanning: every --cratis-* token resolves PrimeReact v11 design tokens (@primeuix/themes) first and falls back to v10, so the same build works on PrimeReact 10 and 11 and a 10 → 11 upgrade needs no styling changes. This covers the theming surface only — full PrimeReact 11 component compatibility (prop and pt-slot changes) is a separate follow-up, and the primereact peer stays at ^10.9.0 for now.

Added

  • Added CratisComponentsProvider as the single setup point for PrimeReact global options such as unstyled, pt, ptOptions, locale, ripple, and overlay config.
  • Added a --cratis-* CSS variable token layer for Cratis-owned surfaces, themed out of the box from whichever PrimeReact theme is loaded.
  • Added PrimeReact 10 and 11 compatibility for the token layer — each --cratis-* token resolves the PrimeReact v11 design token (@primeuix/themes) first and falls back to the v10 theme variable, so the same build works across both majors.
  • Added pt, ptOptions, unstyled, and className forwarding on single-widget wrappers.
  • Added per-slot pass-through props on composite wrappers, including dialogPt, tablePt, menubarPt, and paginatorPt.
  • Added root className support on large composites where per-slot forwarding is not practical.
  • Added subpath exports for ObjectContentEditor, ObjectNavigationalBar, SchemaEditor, and tokens.
  • Added Styling documentation for using a PrimeReact theme, applying a custom palette, using fully unstyled mode, combining styling setups, Cratis tokens, and PrimeReact pass-through props.
  • Added a migration guide covering peer dependency changes, visual changes, provider setup, and optional styling capabilities.
  • Added a Storybook Styling toolbar with previews for Lara Dark Blue, Lara Light Blue, Custom palette, Unstyled bare, and Unstyled + Tailwind pt.
  • Added sideEffects: ["**/*.css"] so bundlers can tree-shake unused JS while preserving CSS imports.

Changed

  • Changed primereact and primeicons from runtime dependencies to peer dependencies; consumers must declare them directly after upgrading.
  • Changed pixi.js, framer-motion, and allotment to optional peer dependencies so consumers only install them when using the matching components.
  • Changed FormElement addon styling to use stable Cratis CSS classes and --cratis-* tokens instead of PrimeReact p-inputgroup-addon classes.
  • Changed ObjectNavigationalBar and SchemaEditor bottom borders to render through Cratis CSS instead of PrimeFlex utility classes.
  • Changed internal PrimeReact class hooks such as p-button-text, p-button-sm, p-button-danger, and p-error to typed PrimeReact props or Cratis token-driven styling.
  • Changed the README styling section to describe consumer setup choices instead of internal styling terminology.
  • Changed public component JSDoc to document Arc integration, wrapper behavior, and the exposed PrimeReact customization surface.
  • Changed workspace dependency declarations by removing unused dev dependencies, deduplicating Storybook, and moving @cratis/arc.vite to dev dependencies.

Fixed

  • Fixed the @cratis/components/CommandStepper subpath export so it resolves to the emitted build output.
  • Fixed the documented subpath list by removing @cratis/components/EventModeling, which never existed.
  • Fixed the README pass-through description so it accurately distinguishes single-widget wrappers, multi-slot composites, and large composites.
  • Fixed FormElement documentation that described props the component never had.

Removed

  • Removed unused runtime dependencies on react-router-dom and usehooks-ts.
  • Removed the obsolete Storybook 8 @storybook/addon-storysource registration from the Storybook 10 setup.

Release v1.10.2

22 May 09:19
6d9df33

Choose a tag to compare

Summary

This pull request enhances the theme handling and styling consistency across various components.

Added

  • Introduced dynamic theme switching for PrimeReact components.

Changed

  • Improved styling and class names for better consistency.
  • Updated theme import strategy to support dynamic theming.

Removed

  • Removed unused theme references and imports.

Release v1.10.1

09 May 06:08
6fcef65

Choose a tag to compare

Fixed

  • Moved layout-switch transition behavior into ToolbarLayout so editor layout swaps animate without story-level transition wiring.
  • Updated ToolbarLayout stories to focus on editor scenarios while relying on built-in ToolbarLayout transitions.
  • Fixed Toolbar documentation TOC indentation for the Toolbar Layout entry.

Release v1.10.0

09 May 05:52
0efd18a

Choose a tag to compare

Added

  • Added ToolbarLayout as a transparent, named toolbar region that renders fallback children or slot-contributed content.
  • Added dedicated ToolbarLayout documentation with usage patterns for fallback, multiple contributors, and context-sensitive layouts.

Changed

  • Added ToolbarLayout stories demonstrating default content, injected layouts, multi-contributor composition, and context-sensitive swapping.
  • Exported ToolbarLayout and ToolbarLayoutProps from the Toolbar public API.
  • Updated Toolbar documentation TOC to include the new Toolbar Layout page.

Release v1.9.2

08 May 18:57

Choose a tag to compare

No release notes

Release v1.9.1

07 May 10:15
23b4565

Choose a tag to compare

Fixed

  • CommandStepper no longer allows advancing to a later step — via the Next button or by clicking a later step tab — when the current step has validation errors.

Release v1.9.0

05 May 14:17
b1c2cec

Choose a tag to compare

Added

  • Toolbar groups and slot-based composition for building dynamic toolbar layouts
  • List-mode folder rendering for tool sets that need visible labels
  • Toolbar documentation for groups and slots

Changed

  • Toolbar stories now demonstrate grouped layouts, slot-driven content, and richer context switching examples
  • Toolbar APIs now use title for button labels and tooltip text

Fixed

  • Toolbar section and slot transitions now cross-fade and clip content while the toolbar grows, preventing buttons from floating outside the toolbar bounds during context switches

Release v1.8.2

27 Apr 14:22
f5c5472

Choose a tag to compare

Fixed

  • ToolbarSection no longer stays at its initial (empty) height when toolbar buttons are populated asynchronously from a backend query, preventing overlap with following toolbar groups

Release v1.8.1

26 Apr 14:04
45cad4e

Choose a tag to compare

Fixed

  • Keep ToolbarSection dimensions synchronized with active context content changes after render using ResizeObserver
  • Prevent tooltip clipping inside Toolbar folders by removing the visible-state clip-path constraint