Skip to content

Changelog

All notable changes to @certara/certara-ui are documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

  • <certara-breadcrumb> plain variant. New variant="plain" removes the background and bottom border for a lighter-weight breadcrumb (PR #821).
  • <certara-dropdown> animation. New animated prop applies an open/close transition to the menu (PR #839).
  • Checkbox label layout. .form-check__label now grows to fill available width, so consuming apps can lay out trailing content (e.g. badges) in the label slot without reaching into component internals (PR #847).
  • Handsontable styles. Back-filled legacy and vendor Handsontable style overrides from in-product edits made in P21 ENT (PR #846).
  • Astro Sass build. Astro now compiles its own Sass 1.99 stylesheet instead of consuming certara-ui’s legacy custom.css, removing drift between the two (PR #837).
  • Docs navigation. Fixed the top navbar selected-state and added a changelog docs page sourced from this file (PR #841).
  • certara-code docs. Added /dev documentation page in Astro (PR #836).
  • <certara-breadcrumb> margins. Removed harmful default negative margins (PR #844).
  • <certara-breadcrumb> font weight. Fixed active font weight not propagating into nested dropdowns.
  • <certara-badge> orange color. Updated background color to match Figma and resolve a WCAG color-contrast violation (PR #833).
  • Sidebar dropdown arrow. Allowed affordance space for the right-facing dropdown arrow (PR #842).
  • Checkbox/radio aria-checked. Fixed a latent bug where aria-checked was not being set.
  • <certara-card-footer> a11y. Removed role="contentinfo" to fix an accessibility violation.
  • Sass file watcher. Scoped file-watching to source Sass only, reducing watcher memory/heap pressure (PR #845).
  • Broad a11y test backfill across many components (badge, button, card, chip, dropdown, form, input, link, list, loader, modal, popover, radio, sidebar, toast, and more).
  • Visual-regression baselines updated for badge, breadcrumb, checkbox, and progress-indeterminate.
  • CSS compilation. CMD and P21-react stylesheet compilation entry points (PR #828).
  • Table styles. Simple table permutation (.table--simple) alongside migrated base table tokens (PR #828).
  • Base tables. Migrated table Sass variables to CSS custom properties for color, spacing, and borders (PR #828).
  • Docs Astro icons. Moved icon SVG handling and replaced <Icon /> usage with certara-icon (PRs #826, #827).
  • Docs Astro startup. Avoid processing every icon during the Astro dev server startup (PR #826).
  • <certara-table> CSV/download. Escape cell contents so multi-value fields become subsequent CSV values instead of breaking the file (PR #830).
  • <certara-table> copy. Flatten newlines in copied cells and replace them with a pipe character (PR #830).
  • List styles. Add list styles to the global CSS scope (PR #830).
  • <certara-progress>. Correct warning progress background color and related spacing (PR #828).
  • <certara-table> e2e. Harden row-selection waits so select-all no longer races Grid.js store readiness (PRs #828, #830).
  • Visual-regression baselines updated for table and related UI changes.
  • Hover utilities. Map-driven semantic hover classes for text, background, border, and icon colors (.hover-text-*, .hover-bg-*, .hover-border-*, .hover-icon-*), including .border-transparent and .hover-border-transparent (PR #817).
  • Hover shadow utilities. .hover-shadow and .hover-shadow-100 through .hover-shadow-600, plus .hover-shadow-100-brand (PR #817).
  • Transition utilities. Base transition classes for composable hover effects: .transition-shadow, .transition-color, .transition-transform, and .transition-hover (PR #817).
  • <certara-table> export data. Copy, print, and download actions read cell values from row data with fallback to element id (PR #824).
  • <certara-dropdown>. open prop for controlled open state (PR #811).
  • HR border utilities. Border-width utilities now affect <hr> sizing (PR #817).
  • Design docs. Datepicker documentation and feedback updates (PRs #799, #819, #820); state management guide (PR #808); divider and border utility doc links.
  • Docs Astro performance. Build and runtime performance improvements (PR #816).
  • CI. E2e test exploration in CI and docs-deploy step in certara-ui deploy flow (PR #736).
  • Core color utilities. Refactored text, background, and border semantic utilities to generate from a shared $core-color-utilities map (PR #817).
  • <certara-datepicker>. Follow-up styling and behavior updates from PD-1167 feedback (PRs #799, #819).
  • CI configuration. Pipeline config updates (PR #823).
  • <certara-datepicker>. Restored broken spec tests (PR #812).
  • Docs Astro. Miscellaneous documentation fixes (PR #810).
  • Visual-regression baselines updated for color and hover utility changes (PR #818).
  • Changelog reconciliation and generated demo file updates (PR #813).
  • Icon sprite publishing. Updated sprite build and publishing workflow; icon counts on the docs site; Font Awesome 7 sprite on Docs Astro (PRs #800, #806).
  • Docs Astro sitemap. Enabled sitemap generation for the design documentation site (PR #802).
  • Component descriptions. Added descriptions to all components and synced generated readmes (PR #804).
  • Design docs. Carousel, dropdown, and related documentation updates (PRs #794, #805).
  • <certara-close-button>. Refactored close button styles with mask-based icon rendering and centered sizing (PR #807).
  • <certara-tabs>. Updated tab navigation styling and behavior (PRs #797, #798).
  • Icon sizing. Dialed in icon sizing controls and e2e coverage (PR #807).
  • Rich text editor. Removed rich text editor partial from certara-ui; moved to TFL project (PR #803).
  • Lock/unlock icons. Updated lock and unlock SVG sprites across regular, solid, thin, and light variants.
  • <certara-form-group>. Corrected horizontal form-group sub-element order to match Figma spec (PR #795).
  • Scrollbar gutter. Prevented key scrollbars gutter from showing when there is no overflow.
  • TFL styles. Restored TFL sidebar submenu overrides and related fixes (PR #796).
  • CAD CSS. Minor certara-admin stylesheet fixes.
  • Demo pages. Fixed global stylesheet paths in component demo HTML files.
  • Visual-regression baselines updated for close button, icon, and related changes.
  • Added Certara UI agent skill and unit-testing skill to the repo tooling.
  • <certara-carousel>. Carousel component styles and enhancements for light-DOM usage (PR #781, PD-1068).
  • Disabled dropdown item. <certara-dropdown-item> supports a disabled prop with matching styles and keyboard behavior (PR #787, PD-1198).
  • Disabled link-variant select. Styling for disabled link-style <certara-select> controls (PR #790).
  • Monaco editor errors. P21-specific Monaco editor error-state styling.
  • Design docs. Numeric input, select, radio, and vocabulary documentation updates (PRs #772, #778, #788; PD-1176, PD-851, PD-1053).
  • Sass module migration. Migrated sass-utils and global entry points from @import to @use / meta.load-css(), added layer bundles for large stylesheets, and migrated WC wrapper partials to configurable load-css (PR #780).
  • Sass build tooling. Bumped @stencil/sass and sass so Stencil builds support modern Sass APIs such as color.channel() (PR #780).
  • TFL styles. Moved TFL plot styles to the TFL project; restored TFL sidebar submenu overrides and select2 partial wiring.
  • Popover co-location. Additional popover CSS co-located with the component (PR #779).
  • Link-variant select. Removed incorrect underline and hover effects on non-link selects (PR #790).
  • Carousel Sass import. Fixed carousel stylesheet import path (PR #786).
  • Docs build on Linux. Fixed Astro docs copy/build path for Linux CI (PR #783).
  • Checkbox label alignment. Nudged checkbox label spacing (PR #785, PD-1197).
  • TFL export. Re-added TFL stylesheet export fix.
  • Visual-regression baselines updated for carousel, popover, and related changes.
  • Removed chips documentation page (PR #789, PD-972).
  • Progress stepper. New wizard/progress stepper partials and styles for CMD workflows (PR #753, PD-1176).
  • Layout column variables. .layout--l-sm supports --column-width-min and --column-width-max for configurable left-column sizing; --gap override on .layout (PR #774).
  • Fade-out animation. Added .fadeOut / .fade-out animation utilities (PR #774).
  • Design docs. Expanded Astro design documentation for components and patterns (PR #770, PD-1006).
  • Modal dialog scroll lock. Prevents body scrolling while dialogs are open; restores universal padding fix for Safari (PR #775).
  • Panel scrollbars. Thin scrollbars for descendants of .layout-panels (PR #774).
  • Animation utilities. Split fade-in/fade-out keyframes into dedicated partials (PR #774).
  • Nested disclosure arrow. Correct open-state styling for nested <certara-disclosure> elements (PR #776).
  • <certara-popover> opened prop. Fixed controlled open-state handling (PR #771).
  • Datepicker navigation test. Pinned calendar viewOffset in tests to avoid date-dependent failures (PR #774).
  • Removed unused legacy .details-arrow partial from global styles (PR #774).
  • Radio/select documentation updates (PR #773, PD-851).
  • Modal visual-regression baselines updated (PR #774).
  • <certara-popover> close flash. Removed the spurious link animation that caused a visual flash when closing the popover (PR #768).
  • Popover click handling. Fixed popover closing when the click target unmounts mid-event; hide slot content at the host root during close (<certara-popover>, PR #766).
  • Link styles. Removed an unnecessary transition from links that caused visual issues (PR #766).
  • TFL layout. Restored the close button and fixed DataTables 2 footer font weight (PR #765).
  • <certara-datepicker> component. New date/time picker with a compact popover, footer, preset options, time picker, prev/next navigation, and min/max/step support (<certara-datepicker>, PR #756, PD-1167).
  • Hover utilities. New hover utility classes for common interaction affordances (PR #760).
  • DataTables 2 paging. Added paging support to DataTables 2 (used in the React settings), alongside a bundled row-selection plugin and Grid.js type definitions (PRs #759, #758, #755).
  • Wizard partials. New wizard partials wired into CMD and CAD.
  • Sass @use migration. Migrated sass-utils and the main bundles from @import to @use, created shared config, deprecated the p21-specific variables file and the p21-in-CSS branding approach, removed the deprecated darken(), and fixed mixed-declaration warnings (PRs #752, #754).
  • Astro docs preview. Allowed iframe usage in the preview box and updated the design sidebar to resolve layout clashes (PR #757).
  • xxxl breakpoint. New extra-extra-large container breakpoint class (PR #750).
  • FOUC prevention. Added stronger FOUC guards for the sidebar and breadcrumb during initial page load (PR #750).
  • .d-contents utility class for display-contents layout (PR #745).
  • CMD and P21 styles. CMD theme partial and P21 Handsontable table styles (PR #744).
  • Demo cross-publishing. Component demos cross-published to the Astro design site with READMEs included (PRs #738, #739).
  • <certara-select> outside-click detection. Improved outside-click detection to prevent menus from closing when they should stay open (PR #746, TFL-5353).
  • <certara-page-header> long headlines. Better visual affordance for very long page titles (PR #748).
  • <certara-checkbox> / <certara-radio> inputType prop. Restored inputType to the public API after it was inadvertently hidden (PR #747, PD-1174).
  • <certara-disclosure> and select menu min-width. Improved min-width handling and radio/disclosure interactions (PR #745).
  • <certara-sidebar> interaction bugs. Fixed localStorage override on the collapsed prop, submenu restore timer reopening closed groups, flyout click-dismiss guard flakiness, Escape key not returning focus to the group trigger, tooltip placement, and a spurious width transition on load (PR #743, PD-1050).
  • <certara-tabs> scrollable panel tablist. Fixed tablist layout when panels are scrollable (PR #738, PD-1161).
  • DataTables sort icons. Revamped sort icon implementation so icons do not push columns out of alignment (PR #744).
  • ENT fixes. Fixed overflow on properties page (ENT-22386), adjusted measurements for the validation history and reference data properties tables (ENT-22475), and removed legacy hidden overflow overrides (ENT-22592).
  • <certara-sidebar> JSDoc comments added and READMEs regenerated (PRs #740, #741).
  • <certara-sidebar> design documentation page added (PR #742).
  • Keyboard-only focus styles. New focus mixin that limits the :focus-visible ring to keyboard navigation only, suppressing it on mouse/touch interactions (PR #715, PD-1142).
  • <certara-tabs> keyboard interaction. Arrow-key navigation between tabs and improved accessibility support for the scrollable tabs pattern (PR #715, PD-1142).
  • CI deploy. Fixed the deploy_to_s3 workflow to reference the correct build_core job (PR #737).
  • Internal props (inputType, selectedTab) hidden from generated READMEs via @internal JSDoc flags (PR #715).
  • <certara-select> renderOptionHtml prop. Custom render function for option HTML, returning a plain string injected into each select option (<certara-select>, PR #717).
  • Container sizes xs and xxxl. New breakpoint container classes for extra-small and extra-extra-large viewports (PR #713).
  • Grid and layout system. Deprecated Stencil <certara-grid>, <certara-layout>, and related components in favor of native HTML with global stylesheet classes; grid and layout SCSS partials moved back to global CSS; deprecated container-fluid and the $prefix variable from grid/layout partials (PR #713).
  • Disabled rich text editor. Updated shared RTE styles for the disabled state (<certara-rich-text-editor>, PR #711).
  • Full-screen layout. Restored mouseoff behavior on the Define full-screen layout (ENT-19826).
  • Tooltip accessibility. <certara-tooltip> now associates its trigger element with aria-describedby after load, excluding the internal focus handle (<certara-tooltip>, PR #712).
  • Grid container xs. Removed the non-functional xs grid container size (PR #713).
  • CI/build pipeline updates: streamlined CircleCI config, release tagging scripts, and release Cursor skill (PR #714).
  • Docs: reorganized component examples, added PreviewBox, and documented dynamic select options with renderOptionHtml (PR #717).
  • Visual regression: fixed container/grid/layout Backstop spec paths and updated reference screenshots; moved pattern demo pages to index.html routes (PR #720).
  • <certara-disclosure> full-width layout (PR #709, PD-934). Adds flex: 1 to the inner summary label so the disclosure header spans the full available width.
  • Test stability: cleaned up a webfonts 404 in the e2e console (PR #708), fixed checkbox/switch e2e specs for the new non-bubbling events and a toast-manager timing issue (PR #707), and reduced table visual-regression flakiness (PR #706). The VR script now accepts a --filter RegExp (e.g. npm run vr:test -- --filter="Disclosure").
  • <certara-disclosure> description prop (PR #698, PD-1107) for a top-aligned description in the disclosure header, reconciled with the latest design.
  • Sidebar demo icon weight. Sidebar group icons in the demo now use variant="regular" instead of variant="solid" (PR #701).
  • Disclosure focus styles (PR #704). Fixed a malformed SCSS declaration in _disclosure.scss (--padding-inline / --padding-block) and reordered the :focus-visible rules.
  • Angular build. Resolved a TypeScript error in the Angular CertaraSidebar wrapper (PR #703) and forced a package version bump (--force-publish, skipLibCheck for Grid.js TS errors) to bring the Angular build versions back in sync (PR #702).
  • Revised <certara-disclosure> docs to surface the new props/slots (PR #700).
  • <certara-switch> id generation (PR #697, PD-1137). Updated how the internal id is generated to avoid collisions.
  • React 16 compatibility. @certara/certara-ui-react no longer imports react-dom/client in gridjsReactCell, restoring support for React 16 (PR #695).
  • <certara-button-group> component (PR #610, PD-1006). New button group component with docs, specs, and generated build files.
  • Avatar loading pattern and additional avatar sizes for <certara-avatar>.
  • <certara-popover> no longer uses the native Popover API (PR #688, PD-1121). Reimplemented to better handle the programmatically-opened state, with simplified internals and updated aria-hidden handling (dropped the role attribute).
  • Non-bubbling form events (PR #693, PD-1128). <certara-radio>, <certara-checkbox>, and <certara-switch> now emit their change events with bubbles: false.
  • Icon rendering tweaks (<certara-icon>).
  • FOUC mitigation. New global pattern in globalStyles/base/_root.scss keeps body hidden until all custom elements are defined or 200ms elapses (whichever comes first), via a --wc-loaded registered custom property and a load-body keyframe. Includes a shared --animation-custom-element-load token for content-heavy components.
  • Sidebar loading pattern (sidebar-loading-pattern, PR #689) tying sidebar reveal into the new FOUC pattern.
  • <certara-dropdown-checkbox> hide-menu-on-click prop (default true) and internal certaraDropdownItemClick event so consumers can opt into menus that stay open after a checkbox is toggled.
  • <link rel="modulepreload"> hints on demo pages to reduce custom element registration latency.
  • .animation-duration-100 utility class.
  • <certara-radio> event surface (PR #680, PD-1065). <certara-radio> now subscribes to its internal <certara-checkbox>’s certaraChange, stops propagation, and re-emits with the correct radio state — so consumers see one consistent certaraChange from the radio element.
  • Grid.js re-exports. src/index.ts now does export * from 'gridjs' instead of the previous tableCellHtml / tableCellVdom aliases. Breaking for direct users of those aliases — migrate to Grid.js names (still importable from @certara/certara-ui):
    • tableCellHtml → html
    • tableCellVdom → h
  • Animation utility classes (.animation-duration-*, .animation-delay-*) now use !important so utility overrides reliably beat component-defined animation declarations.
  • Sidebar styles no longer included via globalStyles/certara.scss. Apps relying on the transitive include must import components/sidebar themselves.
  • <certara-checkbox> radio change handling. toggleChecked no longer early-returns for inputType="radio"; it reads the native input state and emits certaraChange with the correct value.
  • Sidebar popover menus. Hidden [hidden] items use display: none (dropped !important) and the popover transition was tightened to a single opacity 0.25s ease.
  • Icon sizing. <certara-icon> / <certara-icon-cdn> SVG uses display: inline-block !important to prevent ancestor display overrides from collapsing icons.
  • <certara-table> actions and methods. Added actions-column example, copy/download methods that include row headers, and JSDoc for table methods (PR #681, PD-1117).
  • React hydration. @certara/certara-ui-react registers components via the Stencil loader so the .hydrated class is applied correctly.
  • Sidebar popover menu text. Restored max-width on button menu text in popover menus after a revert cycle.
  • <certara-sidebar> follow-up fixes for layout and interaction edge cases (PR #684).
  • <certara-table> paginationSummaryOnly prop to show only the pagination summary without page controls.
  • <certara-disclosure> options (PR #664, PD-1103). Expanded disclosure configuration surface.
  • AOW layout refactor. Deprecated wrapper flexbox in favor of CSS grid for add-object wizards (ENT-19698).
  • <certara-table> actions examples in docs (PR #677).
  • <certara-sidebar> fixes for navigation and layout (PR #678).
  • <certara-toast-manager> component (PR #634). Centralized toast notification management.
  • Inter variable font (PR #614, PD-1049). Replaced static font files with Inter variable font.
  • Icon sprite system (PR #670, PD-1008). Sprite-based icon loading with VR coverage.
  • <certara-sidebar> component (PR #663, PD-1050). New sidebar navigation component with docs and specs.
  • Pragmatic drag-and-drop styles for P21/TFL themes (PR #657).
  • Grid.js HTML export support (PR #643).
  • Skeleton chart loader component and docs (PR #652).
  • .text-truncate-vertical utility class for multi-line truncation (PR #651, PD-1087).
  • <certara-card> footer className prop (PR #648, PD-1081).
  • <certara-select> in modals (PR #641, PD-1034). React Select dropdown now renders correctly inside modal dialogs.
  • Monaco editor overflow scrolling (PR #646, ENT-17715).
  • Miller columns viewport overflow (PR #645, ENT-18024). Added min-height: 0 on flex children.
  • <certara-form-group> help slot (PR #639, PD-1083).
  • <certara-select> menuWidth prop renamed from maxMenuWidth (PR #631, PD-1076).
  • Inverse text utility class (PR #642, CAD-4670).
  • P21 theme fixes (PR #636, ENT-17186).
  • <certara-select> default value. Component now accepts and renders a default selected value (PR #630).
  • Resizable rich text editor SCSS (PR #619).
  • <certara-tabs> refactor (PR #607). Restructured tab components for scrollable containers and vertical tab panels.
  • P21 datatables pagination and form select visual updates (PR #613, ENT-17632).
  • Vertical tab panel selector (PR #624).
  • <certara-show-loader-button> docs (PR #608, PD-1028).
  • <certara-tabs> scrollable containers. Deprecated per-panel scroll in favor of container-level scrolling; added scroll prototypes (PR #607).
  • .resizable utility class (PR #601).
  • <certara-select> HTML rendering. renderSelectedValue() now renders HTML content when available, matching <certara-select-option> behavior (PR #600).
  • Handsontable cell styling migration to latest API (PR #604).
  • <certara-form-group> container queries (PR #597, #594). Fixed fieldset/legend spacing and form spacing moved into form-group globally.
  • Font size normalization across form components.
  • Rich text editor styles and <certara-icon> rounded variant (PR #592, PD-1047/PD-1048).
  • <certara-popover> hasPadding prop.
  • <certara-modal> persistent option and close-disabled attribute (PR #588).
  • Router tabs support (PR #586). Tabs can integrate with client-side routing.
  • <certara-switch> alignment prop with deprecated left alignment (PR #589).
  • Prepare script and spec tests for cross-platform installs (PR #583).
  • <certara-form-group> isOptional prop (PR #580).
  • <certara-dropdown> opener toggle. Dropdown opener now toggles the menu open/closed (PR #577, INTG-7110).
  • Nested tabs. Parent tab styles no longer affect nested tab instances (PR #579).
  • <certara-form-group> CSS updates (PR #581).
  • Asset prepare script. Changed script type so the prepare script only runs locally on Mac, not when Windows users install as a dependency (PR #576).
  • Split panel SVG paths (PR #575, ENT-17470).
  • Form error placement. Moved errors from labels to <certara-form-group>. Form-group now included in base certara styles.
  • Pre-release build fixes for icon sprite pipeline (PR #573).
  • Stale icon sprite references removed from build output (PR #572).
  • <certara-icon> sprite fork (PR #569, PD-1033). Icons now load from SVG sprites instead of individual CDN requests.
  • CAD drag-and-drop component fixes (PR #568, CAD-4440).
  • <certara-select> creatable mode (PR #565, INTG-6912).
  • Drag-and-drop CSS for CAD theme (PR #566).
  • <certara-table> columns prop now accepts object definitions (PR #562, PD-1020).
  • <certara-show-loader-button> spin state (PR #567).
  • Icon sprite build. Extracted resetSpriteState to a separate file to satisfy Stencil single-export requirement (PR #559).
  • Icon sprite tests (PR #558).
  • Concurrent sprite loads. Prevented multiple simultaneous sprite fetches (PR #554).
  • Forms documentation (PR #547).
  • P21 loader styles (PR #548).
  • CAD carousel updates (PR #550, CAD-3937).
  • CDN icon pipeline (PR #542, PD-998).
  • Form spacing normalization (PR #544).
  • <certara-modal> visibility. Modal uses display: none when not shown (PR #540).
  • <certara-idle> component updated to contain content properly (PR #539).
  • P21 theme hot refactoring (PR #537, ENT-17279).
  • <certara-table> cell alignment. Added vertical-align: top to table cells (PR #530).
  • <certara-chip> state docs (PR #528, PD-997).
  • Angular SelectValueAccessor import location (PR #520).
  • Auto-refresh utility restored with improved implementation (PR #526).
  • TFL range slider icons (PR #525, TFL-4123).
  • <certara-table> rendering (PR #519, PD-992).
  • Periwinkle accent colors (PR #518).
  • Icon sprite loading (PR #522).
  • Automatic React and Angular code examples in Astro docs (PR #494).
  • Framework toggle and React code preview in design site (PR #477, PD-946/PD-945).
  • Font Awesome 7 icon library upgrade (PR #515).
  • <certara-card> header/footer. Removed class prop in favor of slots (PR #503).
  • <certara-dropdown> updates (PR #505).
  • Design site updates with framework select/component preview pattern (PR #495/PR #500, PD-949).
  • <certara-select> component initial implementation (PR #481, PD-930).
  • Removed warning button variant and styles (PR #478).
  • TFL CSS layering updated to work with TFL layout (PR #482, TFL-4023).
  • Icon sprite system initial implementation (PR #479).
  • Framework toggle for design site docs (PR #477, PD-946/PD-945).
  • <certara-widget-box> updates (PR #465, PD-936).
  • Angular package deployment to design site (PR #461).
  • <certara-idle> regression (PR #460).
  • Numbered lists for CAD theme (PR #458, CAD-3240).
  • @certara/certara-ui-angular package (PR #456, PD-921). Angular wrappers for certara-ui components.
  • Component updates (PR #449, PD-929).
  • <certara-idle> CSS variables renamed for clarity (PR #454).
  • <certara-table> header layout (PR #452).
  • <certara-table> re-rendering performance (PR #450).
  • <certara-idle> component (PR #440). Session idle timeout overlay.
  • Periwinkle accent colors (PR #442).
  • P21 Handsontable dropdown styling to match design system (PR #443, FS-264).
  • <certara-pagination> design reconciliation (PR #435, PD-918).
  • Inline checkbox variant (PR #433).
  • Search bar styles updated to match designs (PR #434).
  • P21 theme fixes (PR #431, ENT-16848).
  • <certara-code> component (PR #423).
  • Skeleton mixin utility for loading states (PR #424).
  • Brand spinner/loader updated (PR #429, PD-910).
  • P21 form styles relocated to theme (PR #428, ENT-16788).
  • Empty state overflow when no data is present (PR #427, ENT-15055).
  • <certara-checkbox> standalone mode (PR #418, PD-904).
  • <certara-table> row selection example (PR #419, PD-742).
  • <certara-tabs> keyboard accessibility (PR #421, TFL-3797).
  • Disabled React Select text color (PR #415).
  • Utility classes from TFL design tokens (PR #390, TFL-2345).
  • Font Awesome 7 upgrade (PR #413, PD-900).
  • React Select and Select2 unification (PR #399, TFL-3587).
  • Sidebar submenu styles moved from JavaScript to CSS (PR #398, TFL-3686).
  • Avatar aspect ratio (PR #410, TFL-3788).
  • P21 datatables block display removed (PR #404, ENT-15526).
  • Dark mode updates for TFL theme.
  • Base layout scaffolding split into legacy and new components (PR #378, TFL-3686).
  • TFL plot aspect ratios (PR #373).
  • <certara-link> component updates with spacing, size prop, and inner-class-name (PR #374, PD-888).
  • Builder submenu z-index (PR #371, ENT-16131).
  • Dropdown typo in unified dropdown refactor (PR #366, TFL-3608).
  • Dropdown unification. Merged duplicate dropdown implementations into a single <certara-dropdown> with extra content variants and active prop (PR #364, TFL-3608).
  • React Select error border when parent has .has-error (PR #360, PD-874).
  • <certara-modal> close-on-click-outside (PR #356).
  • Disabled React Select no longer shows caret or placeholder (PR #355).
  • <certara-skeleton-loader> testing coverage (PR #350, PD-635).
  • <certara-page-header> follow-up (PR #346, PD-618).
  • <certara-page-header> eyebrow prop (PR #348, PD-872).
  • React Select and HoT dropdown styling normalization (PR #347/#345, TFL-3448/TFL-3467).
  • Placeholder color token for form controls (PR #343).
  • File type and accept attribute for file inputs (PR #338).
  • Search input and table toolbar updates (PR #337, TFL-3442).
  • Dropdown focus management. Removed auto-focus on first dropdown item (PR #339, TFL-3458).
  • Yalc local linking instructions for consuming apps (PR #328).
  • CAD carousel cards for Integral/Phoenix Cloud (PR #327, CAD-2939).
  • <certara-form-group> label slot (PR #320, PD-854).
  • Modal classname modifiers (PR #322, TFL-2623).
  • React Select grouping headers and option group borders (PR #324, TFL-3376).
  • ResizeObserver guardrails to prevent memory leaks (PR #325, TFL-3388).
  • aria-hidden toggle on interactive elements (PR #317).
  • <certara-chip> test coverage follow-up (PR #307, PD-825).
  • Layout card autofill styles (PR #315, TFL-2618).
  • Panel layouts and full-screen modal for change requests (PR #312, ENT-15622).
  • Modal header class support and sidebar offset for modals (PR #310, TFL-2499).
  • Sidebar CSS variables moved to global root scope.
  • New accent and background utility colors (PR #308, TFL-2663).
  • <certara-popover> show/hide methods (PR #306, PD-848).
  • Modal sidebar permutations (PR #305, PD-824).
  • <certara-popover> and <certara-tooltip> positioning. Added Floating UI autoUpdate middleware; updated arrow sizing, border-radius, and default width (PR #300, PD-843).
  • Variable data drag-and-drop layout refactor (PR #297, TFL-2574).
  • <certara-card>, <certara-empty-state>, and <certara-widget-box> slot and layout updates (PR #291, PD-832).
  • <certara-dropdown> show-opener-caret prop (PR #292, PD-837).
  • Scatter chart loader styles (PR #289).
  • Grid.js cell alignment deprecated custom declarations in favor of library-specific classes (PR #288, TFL-2460).
  • <certara-chip> component (PR #283, PD-825). New chip/tag component with shadow DOM and BEM naming.
  • <certara-input-group> component (PR #238, PD-492).
  • <certara-page-header> docs and component updates (PR #263, PD-693).
  • Dual range slider, query/fragment tab navigation, and certaraTabsWillLeave event (merged from 0.2.x maintenance line).
  • <certara-popover> updates (PR #262, TFL-2288).
  • Asset relocation. Dist assets moved to peer directory of certara-ui in dist (PR #242, PD-776). Breaking for apps referencing the old asset path.
  • Range slider spin buttons on Chrome and Firefox (PR #250/#247).
  • Tab selection and error-notification attribute on tab items (PR #270/#258).
  • Search form control autocomplete Chrome background fix (PR #259, TFL-2294).
  • Initial 0.3.x release. Branch point from the 0.2.x maintenance line; cleanup of build warnings.

Parallel maintenance line that predates and overlaps with 0.3.x. Most changes were merged forward into 0.3.1.

  • <certara-dual-range-slider> component (PR #228).
  • Query and fragment tab navigation for <certara-tabs> (PR #235).
  • certaraTabsWillLeave event on tabs (PR #239).
  • <certara-input-group> component (PR #238, PD-492).
  • Utility classes for spacing, layout, and form controls (PR #204).
  • <certara-popover> updates (PR #262, TFL-2288).
  • <certara-page-header> docs and component (PR #263, PD-693).
  • Asset relocation in dist output (PR #242, PD-776).
  • TFL CSS updates for plots, tables, Handsontable keyboard highlight, and panel layouts (PRs #224, #212, #231).
  • Range slider spin buttons on Chrome and Firefox (PRs #250, #247).
  • Tab selection and error-notification attribute on tab items (PRs #270, #258).
  • Search form control autocomplete Chrome background (PR #259, TFL-2294).
  • P21 miller columns Select2 alignment (PR #249, ENT-15267).
  • <certara-hexagon> component (PR #201, PD-731).
  • Panel layout refactor for TFL with toggle button (PR #192, TFL-2151).
  • Drag-and-drop styles and list/file tree styles (PR #183, TFL-2060).
  • Legacy cruft removed and relocated to Product Design repo (PR #199, PD-726).
  • P21 and TFL theme updates across modals, spacing, and layout tokens (PRs #198, #179, #178).
  • Initial @certara/certara-ui package with Stencil web components, global styles, and design tokens.
  • <certara-form-group> component (PR #138).
  • <certara-layout-grid> component (PR #173, PD-379).
  • <certara-textarea> component (PR #136, PD-376).
  • Astro documentation site with component docs and live previews (PRs #164, #161, PD-644).
  • @certara/certara-ui-react package with ESM and CJS outputs (PRs #90, #95, PD-542).
  • React Select, Select2, and Handsontable theme integration for P21 and TFL products.
  • Drag-and-drop, modal, pagination, tab notification, and landmark layout styles (PRs #85, #128, PD-528).
  • Landmark layout reconciliation — header, navigation, footer, and sidebar CSS (PR #128, PD-574).
  • Style layer componentization for TFL plots and legends (PR #156, TFL-1935).
  • React Select disabled state matched to Select2/CDS (PR #155, ENT-14285).
  • Copy-to-clipboard React components and Astro version (PR #104, PD-548).
  • Button form attribute handling (PR #166).
  • HR design tokens for CAD theme (PR #146, CAD-2489).
  • Server validation form error display (PR #129).