Skip to content

The release history is generated from Eufemia releases on GitHub.


v11.15.2#

October 9, 2026 · Patch release

Bug Fixes#

  • Autocomplete: keep opening the list when an onKeyDown or onMouseDown is given (#9641) (399b006)
  • Autocomplete: stop statusProps from replacing the input props (#9651) (0a3a590)
  • Bring: keep the address suggestions and call a given onChange when handlers are given (#9644) (c163d84)
  • DatePicker: keep opening the picker when statusProps has an onSubmit (#9608) (cddbbdc)
  • Dialog, Drawer: keep the min and max width and contained clicks when a style or onClick is given (#9642) (06dcdf2)
  • Dialog: forward closeButtonProps to the close button (#9618) (f6dd1c9), closes #9538
  • Field.PostalCodeAndCity: keep the field classes and default error messages when postalCode or city has a className or errorMessages (#9646) (361b3e7)
  • Field.Upload: wait for slow fileHandler uploads and show thrown errors (#9721) (6996c0a)
  • FieldBlock: keep the width style when a style is given (#9600) (6dd00da)
  • Filter: align header outline with List (#9719) (fb6ec6e)
  • Form.Handler: restore session storage data after hydration (#9724) (5c4fb72), closes #9690 #9690
  • Form.SubmitButton: stop a previously clicked button from hiding the indicator on other buttons (#9636) (064a265), closes #6250
  • Form.SubmitButton: stop a submit blocked by validation errors from hiding the indicator on other buttons (#9639) (223c49b)
  • Form.SubmitConfirmation: stop skipping the confirmation on later submits (#9700) (414824a), closes #5193
  • Forms: keep field event handlers when htmlAttributes has handlers (#9510) (b2e3a00)
  • Forms: keep the built-in button behavior when an onClick is given (#9569) (949b229)
  • Forms: keep the form busy until an async onSubmit is done when an async validator finishes first (#9669) (5d81297)
  • Forms: keep the Wizard.Buttons and Field.PostalCodeAndCity classes when a className is given (#9603) (bd72374)
  • HeightAnimation: keep the first paint style when a style is given (#9599) (4f0f010)
  • HeightAnimation: prevent first-frame content jump (#9696) (f0711c6)
  • HelpButton: call a given onClick and onKeyDown on the inline help button (#9595) (ce8fe6f)
  • InfoCard: keep calling onClose and onAccept when the button props have an onClick (#9622) (bbf99b1), closes #9538 #9538
  • InfoCard: keep the image class when imgProps has a className (#9649) (4fae354)
  • Input: include the clear button in the Safari tab order (#9560) (eea8b6a)
  • Input: keep emitting onSubmit when an onClick is given (#9576) (ffbd0db)
  • Input: keep the given statusProps out of the submit button (#9617) (c99a63c), closes #9609 #9606
  • Input: keep the input class and ref when inputAttributes has a className or ref (#9650) (fd49430)
  • Input: keep the submit button behavior when statusProps has the same props (#9609) (6265ee3)
  • InputMasked: stop Maskito throwing on input without beforeinput (#9513) (352dbf2)
  • List, SkipContent, Wizard.Step, Filter, Upload: keep the internal ref when a ref is given (#9652) (d27da1d)
  • List: keep the accordion toggling when the header has an onClick (#9573) (61d6327)
  • List: keep the Space key activation when an Item.Action link has an onKeyDown (#9596) (e63f8bf)
  • Menu: keep opening the menu when Menu.Button has an onClick, onKeyDown or ref (#9653) (e8ce687)
  • Menu: keep the keyboard navigation when an onKeyDown is given (#9574) (deaec44)
  • Modal: keep closing when closeButtonProps has an onClick (#9571) (1c62653)
  • NumberFormat: keep its classes, hover read-out and tooltip when given a tooltip, mouse handlers or a ref (#9648) (5f31f30)
  • Pagination: keep the content class when a className is given (#9612) (012938f)
  • SegmentedField: avoid shadowing the global KeyboardEvent constructor (#9547) (031b7b1)
  • Skeleton: keep the figure classes when a className is given (#9598) (2e35e32)
  • SkipContent: keep skipping to the target when an onClick is given (#9572) (617bc47)
  • Table: call a given row handler when the row is not clickable (#9583) (30f3376), closes #9575
  • Table: keep the row activation when a Tr has an onKeyDown (#9575) (92f5707)
  • Tabs: keep the content classes and inner space when Tabs.ContentWrapper has a className or style (#9647) (5c574d5)
  • Tabs: keep the inner space padding when the TabsList gets a style (#9613) (8d3709e)
  • Tag: keep removing with Backspace or Delete when an onKeyUp is given (#9604) (2f91475)
  • TermDefinition: keep the trigger toggling when an onClick is given (#9582) (a5d0a14)
  • Textarea: avoid a double autoResize measure after an external value (#9537) (df7815b), closes #9490
  • Timeline: keep the item classes when a className is given (#9597) (c8d128b)
  • Tools.Log: keep the max width when a style is given (#9615) (16c7f31)
  • Tooltip: dismiss on trigger activation (#9697) (f021ece)
  • Tooltip: keep the tooltip open on hover when onMouseEnter or onMouseLeave is given (#9605) (799c48e)
  • Upload: always handle a drop in the Upload it was dropped on (#9637) (6c28759), closes #9626 #9626
  • Upload: keep resetting the file input when an onClick is given (#9601) (5080b72)
  • Upload: keep the button class when buttonProps has a className (#9614) (aaedd16)
  • Upload: make a given onDrop fire, and skip the upload when it returns false (#9626) (0f3f2f7), closes #9622
  • Upload: show a translated message when a handler throws without a message (#9722) (b763553), closes #9721 #9721
  • Wizard.Container: call an async onStepChange that throws only once (#9665) (bcdba86)
  • Wizard.Container: prevent hydration mismatch from the field prerender portal (#9690) (254e942)
  • Wizard.Container: stop an async submit from hanging for 30 seconds when an earlier keepInDOM step was never visited (#9693) (93da139)
  • Wizard.NextButton: show the async indicator on the Next button instead of also on Send (#9681) (7f928fe), closes #9640
  • Wizard.NextButton: show the async indicator on the Next button when going forward with the step indicator (#9683) (610a29c)
  • Wizard.PreviousButton: show the async indicator on the Previous button instead of on Next or Send when going back (#9640) (45f3cde)
  • Wizard.PreviousButton: show the async indicator on the Previous button when going back with the step indicator (#9668) (5439682)

Documentation#


v11.15.1#

September 29, 2026 · Patch release

Bug Fixes#

  • Checkbox, Switch, ToggleButton, Dropdown: call onKeyDown and onKeyUp given as properties (#9523) (9344f62)
  • DatePicker: call onKeyDown when typing in the date input (#9511) (68f1b55)
  • DatePicker: set data and aria-label attributes only once (#9521) (227e564)
  • deps: patch undici and ip-address moderate advisories (#9507) (5d669fd)
  • Field.Slider: announce errors and required state to screen readers (#9526) (58a3112), closes #9524
  • Field.Time, Field.Expiry: set data attributes from htmlAttributes only once (#9525) (c02b067)
  • Radio: skip the change event when the selected radio is pressed again (#9534) (3f6a7ff)
  • Slider: forward event handlers and aria attributes to the focusable input (#9524) (30abe2a)
  • Textarea: apply autoResize changes made after mount (#9508) (b0d2020), closes #9485 #9487 #9490 #9492 #9492
  • Textarea: grow autoResize with a fractional line-height (#9502) (0069e90)
  • Textarea: let autoResize shrink when content is removed (#9485) (4ab234d), closes #9468 #9434
  • Textarea: update the autoResize height when the text size changes (#9517) (afcf7fa), closes #9492
  • Textarea: update the autoResize height when the value is set programmatically (#9490) (91d7e49), closes #9434 #9434
  • ToggleButton: call onChange once per Enter keypress (#9531) (8aae476)
  • update fast-uri security resolution (#9506) (b8c124e)

Documentation#

  • Checkbox, Switch, ToggleButton, Dropdown, Slider: document the onKeyDown and onKeyUp events (#9529) (7e38711), closes #9523 #9524 #9511

v11.15.0#

September 28, 2026 · Feature release

Features#

Bug Fixes#

  • AriaLive: skip announcement timers when there is nothing to announce (#9453) (d04f42b)
  • Filter: use the shared useId helper for the active filters accordion (#9495) (8fafaab), closes #9494
  • Forms: handle invalid dates and proto keys when cloning data in older browsers (#9477) (00336ff)
  • Forms: ship the JSON Schema types the public API exposes (#9461) (966cebd)
  • generate element ids that are valid CSS identifiers on React 19.0 and 19.1 (#9494) (84f2c80)
  • NumberFormat: announce bank account numbers one character at a time (#9436) (6c277e8)
  • SidebarMenu: improve resize handle accessibility (#9435) (d61178e)

Documentation#

  • AI: clarify Forms label semantics in design translation (#9425) (5ccb5c2)
  • document which English spelling to use in code, docs, and translations (#9482) (591d3ae)
  • Portal: document the company logo library (#9395) (246bda3)
  • Portal: document the public asset CDN (#9467) (5915db5)

Dependencies#

  • bump core-js-pure to 3.50.0 for polyfill fixes in the CommonJS build (#9483) (cd26ed1)
  • bump React to 19.3 and fix Theme element typing for Fragment (#9488) (a4235db)
  • bump zod to 4.6.5 for faster validation and stricter string formats (#9484) (258b9aa)

v11.14.1#

September 23, 2026 · Patch release

Bug Fixes#

  • Card: strip script-executing protocols from Card.Action href and to (#9390) (fef79de)
  • ColorSchemeScript: allow a CSP nonce on the color scheme scripts (#9415) (bcf7b35), closes #9409
  • DrawerList: prevent first-open position jumps (#9373) (697aa58)
  • Forms: distinguish label suffixes from label text (#9424) (a4c49a4)
  • Modal: restore focus after controlled dialogs close (#9394) (aeb83b5)
  • SidebarMenu: prevent chevron animation when restoring saved state (#9392) (39528da)
  • Table: draw the outline above the sticky header (#9407) (237ed5a)
  • Table: keep the sticky header bound to the right scroll source (#9416) (8fc3425)
  • Table: reset the sticky header row when sticky is turned off (#9423) (c4d8ddd), closes #9422

v11.14.0#

September 16, 2026 · Feature release

Features#

  • Icons: refactor paths and add add_reaction and solve icons (#9328) (e926424)
  • SidebarMenu: add new menu component as an Eufemia Extension (#8986) (6778f07)

Bug Fixes#

  • analytics: read created_at in the dashboard view model (#9355) (80c512e), closes #9351 #9351
  • Drawer: respect the dynamic viewport height (#9336) (8e7a91c)
  • Element: keep the base class when className ends with it (#9364) (38e5403)
  • Field.MultiSelection: hide popover wrapper outline on keyboard navigation (#9318) (098db07)
  • Forms: clear stale field errors after Wizard navigation (#9341) (083ddce)
  • Icon: let hover animations finish (#9359) (e34670b)
  • MCP: make the local docs server start and rename its entry to mcp-server (#9339) (29f4c9d), closes #9337
  • NumberFormat: normalize minus signs across locales (#9352) (ca81286)
  • Translation: insert formatMessage values literally (#9363) (bb10cff)

Documentation#

  • AI: explain Agent Skills updates and MCP role (#9361) (f649d7f)
  • animate the Portal logo on hover (#9358) (0179813)
  • Portal: fix local MCP docs server setup instructions (#9337) (8c96bc8)

Style Changes#

  • Button: update DNB Carnegie button radius (#9327) (11f6d20)

v11.13.0#

September 10, 2026 · Feature release

Features#

  • Autocomplete, Dropdown, DrawerList, Field.Selection: add virtualized rendering for large data sets (#9293) (ec6b9a8), closes #1100
  • Field.MultiSelection: add virtualized rendering for large data sets (#9303) (16a6b92)
  • Field.Selection, Field.Boolean, Field.Toggle: add radio-button variant (#9288) (767879d)
  • Icon: add opt-in animated icons API and docs (#9308) (4e46996)
  • Layout: add scroll awareness hook (#9278) (ff688a8)
  • MCP: expose Portal content workflow (#9236) (633883f)
  • Tabs: animate active underline (#9283) (66bf6fd)

Bug Fixes#

  • Checkbox, Radio, Switch: soften disabled strokes (#9290) (36ad6d2)
  • Field.Upload: recover a stuck file state via asyncSubmitTimeout (#9254) (89b7e6f), closes #9252 #9241
  • Form.Section: keep fields disabled during pending saves (#9256) (12c7af8)
  • Form.Section: recover from a stuck async onDone via asyncSubmitTimeout (#9241) (3f8dbbe)
  • Forms: clean up submit validation listeners (#9289) (3feca47)
  • Forms: recover a stuck field state via asyncSubmitTimeout (#9252) (aba9096), closes #9241
  • Forms: treat a validator that returns a Promise as async (#9258) (8011546), closes #9252 #9254
  • Icon: smooth transitions between directional icons (#9311) (c2fb233)
  • plugins: make the ESLint and Stylelint color-variable rules ESM-safe (#9307) (a377084)
  • preserve the default iOS root font size (#9286) (cccab68)
  • Tooltip: prevent flicker during rapid pointer re-entry (#9271) (56f3e81)

Documentation#

  • add DNB Animation Principles and Motion guides (#1674) (3086bf2)
  • Flex: recommend the CSS layout engine in examples (#9281) (7b0e66e)
  • Portal: add guided content suggestions via AI (#9235) (93abfb7)
  • Portal: copy heading permalink URLs (#9310) (c4abc84)
  • Portal: fix broken source code links (#9291) (af7b117)

v11.12.1#

September 4, 2026 · Patch release

Bug Fixes#

  • AI: support remote-only content edits via skill (#9231) (2302bee)
  • Anchor: shorten external link tooltip hide delay (#9238) (8e1344c)
  • Field.Selection: keep Autocomplete data stable between renders (#9244) (c256d32)
  • Field.Upload: clear async mode after file handling (#9261) (dcd20cc)
  • Tooltip: stay open when pointer returns to trigger (#9248) (a8ad776)

v11.12.0#

September 3, 2026 · Feature release

Features#

Bug Fixes#

  • Accordion: support openOnFind across variants (#9119) (a2a1dbc)
  • Dialog: prevent scroll jump to top when opening on long pages (#9175) (251800d), closes #8985
  • Form.Section: restore focus after a failed async EditContainer save (#9212) (76782af)
  • Forms: preserve optional fields when editing array items (#9194) (f5ec798)
  • Heading: recalculate dynamic levels (#9199) (383896e), closes #9181
  • Heading: restore level and lifecycle handling (#9181) (0b62a4d)
  • HeightAnimation: hide open-on-find content in unsupported browsers (#9117) (2bed281)
  • HeightAnimation: prevent nested transitions from locking height (#9210) (a5b6848)
  • Icon: preserve inferred size after minification (#9230) (807782a)
  • Img: preserve internal error handling (#9136) (75acc66)
  • InputMasked: prevent update loops from equivalent masks (#9237) (373d0e0)
  • List: inset item borders (#9184) (abf8611)
  • List: keep selection outline visible in Safari (#9178) (b8ed5e4), closes #6520
  • List: scope open-on-find to overflow items (#9139) (6306c0d)
  • Switch: align states with Figma styles (#9202) (3d37962)
  • Switch: use theme radius for knob (#9223) (9feed68)
  • Table: preserve open-on-find content without browser support (#9138) (4b2f414)
  • Theme: correct Carnegie extra-large radius token (#9214) (54596f8)

Documentation#

  • Accessibility: document find-in-page guidance in checklist (#9228) (0998359)
  • AI: recommend building AI tooling on Eufemia (#9205) (f95fce3)
  • Forms: document openOnFind for field help (#9143) (09b84bd)
  • Img: correct the docs about the role usage (#3595) (1fc1c1d)
  • Portal: add GitHub release changelog page (#9162) (706d1b5)
  • Portal: improve heading anchor handling and feedback (#9133) (00c4007)
  • Typography: explain iOS Dynamic Type sizing (#9147) (2a3aa8e)

Refactoring#

  • VisibilityByTheme: add Brand and deprecate Name (#9218) (3a1338e)

Tests#


v11.11.0#

August 25, 2026 · Feature release

Features#

Bug Fixes#

  • Dropdown: change default title from "Valgmeny" to "Velg" (#9063) (296a71f)
  • Field.MultiSelection: place selected items before search (#9077) (c1cbdbf)
  • Field.Upload: reveal required error on submit when validateInitially={false} (#8980) (2e9e854), closes #4989
  • FormStatus: align icon with a Button child (#9042) (2d75b53)
  • input-masked: prevent polynomial ReDoS in numeric value cleanup (#9080) (5cb6821)
  • List: remove open accordion bottom radius (#9018) (48bd2e3)
  • Modal: correct dialogTitle fallback casing and docs (#9067) (f38c2f5)
  • Modal: use sentence case for en-GB dialogTitle (#9070) (c1b61e9), closes #9067
  • renderWithFormatting: prevent polynomial ReDoS in link parsing (#9078) (67cb0f7)
  • StepIndicator: use sentence case for en-GB overviewTitle (#9068) (0451f64)
  • Table: remove top corners inside Card (#9101) (d282680)
  • Tabs: prevent Badge clipping and movement in tab titles (#9030) (08de141)
  • Theme: prevent polynomial ReDoS in query parsing (#9079) (c1e07d2)
  • Upload: wrap long file names when a file click handler is set (#9097) (a73a638)

Documentation#

  • add missing events pages for Card and Field.Indeterminate (#9089) (c859dee)
  • define component ownership boundaries (#9027) (77c5bbd), closes #9023
  • Menu: standardize "customise" to "customize" spelling (#9102) (7a94791)

Style Changes#

  • Field.MultiSelection: remove selected item background (#9093) (efbdd6d)

Refactoring#

Dependencies#

  • bump @navikt/fnrvalidator from 2.1.5 to 2.2.1 - add support for fødselsnummer from 2032 (#9006) (9fd3704)
  • bump ajv from 8.18.0 to 8.20.0 (#9010) (42f1df1)
  • bump date-fns from 4.1.0 to 4.4.0 (#9011) (cbed4a4)
  • bump maskito from 5.1.0 to 5.4.0 (#9009) (0d66dec)

v11.10.1#

August 17, 2026 · Patch release

Bug Fixes#

  • List: center title and end text in List.Item.Action rows (#9001) (571ddbb)

Refactoring#

  • HeightAnimation: deprecate untilFound in favor of openOnFind (#8999) (03fa9f1)
Suggest an edit