Skip to content

5.x changelog

Greg Douglas edited this page Nov 26, 2024 · 243 revisions

November 26, 2024

@blueprintjs/[email protected]

  • #7070 feat(Checkbox/Radio): Add improved RTL support
  • #6940 feat(RadioGroup): Include aria "radiogroup" role

@blueprintjs/[email protected]

  • #7080 feat(DateRangeInput3): Improve keyboard accessibility

@blueprintjs/[email protected]

  • #7083 Add new icons: "filter-sort-asc" and "filter-sort-desc"
  • #7067 Add new icons: "th-add", "th-list-add", "th-virtual", and "th-virtual-add"

November 18, 2024

@blueprintjs/[email protected]

  • #6711 feat: Darken dark theme colors
  • #7073 fix(Tag): Mark tag as interactive when onClick is set
  • #7069 fix(Tag): Prevent active from being passed as html prop

@blueprintjs/[email protected]

  • #7068 Fix focus hang on MultiSelect/Suggest inputs in Firefox

November 13, 2024

@blueprintjs/[email protected]

  • #7060 fix(Tag) Fix interactive tags not being accessible via keyboard interactions
  • #7063 fix(KeyComboTag) Fix a regression to the styling of the minimal state
  • #7049 fix(OverlayToaster) Toasts no longer get cut off when shown too quickly
  • #7048 fix(OverlayToaster) Fixed an issue where excess toasts would be dismissed when an existing toast was updated when maxToasts is set.

November 6, 2024

@blueprintjs/[email protected]

  • Reverted #7036 feat(Select) Improved type support for readonly item arrays in select components due to unexpected typing breaks

November 5, 2024

@blueprintjs/[email protected]

  • #7025 fix(KeyComboTag) Improved rendering on non-Mac operating systems to match native rendering of key combos
  • #7024 fix(EditableText) Prevent toggling edit mode when pressing the escape key during IME composition
  • #7021 fix(EditableText) Fixed an issue with IME composition
  • #6985 feat(Breadcrumbs): Added new overflowButtonProps prop to the Breadcrumbs component.
  • #7007 feat(Breadcumbs): Switched the element for the breadcrumb list to use ol instead of ul

@blueprintjs/[email protected]

  • #7006 chore(Colors): Updated the red colors to have the !default tag

@blueprintjs/[email protected]

  • #7039 Add new icons: "rotate-cw" and "rotate-ccw"
  • #7038 Add new icon: "arrows-arc"
  • #7018 Add new icon: "british-pound"
  • #7023 Add new icon: "linked-squares"
  • #7014 Add new icon: "fighter-jet"
  • #7010 Add new icon: "cube-edit"
  • #7008 Add new icon: "globe-network-add"

@blueprintjs/[email protected]

  • #7028 fix(QueryList) Fixed an issue with IME composition
  • #7036 feat(Select) Improved type support for readonly item arrays in select components

@blueprintjs/[email protected], @blueprintjs/[email protected]

  • #7033 fix(DateRangePicker) The popover can now be closed via the escape key

October 2, 2024

@blueprintjs/[email protected]

  • #7002 Revert: Fix border overlap between Buttons in outlined ButtonGroup

September 19, 2024

@blueprintjs/[email protected]

  • #6974 fix(Icon): Support null tagName prop
  • #6966 fix(ButtonGroup): Remove border overlap between outlined Buttons in group
  • #6959 fix(Toast): Ensure max width does not exceed screen size on mobile devices
  • #6691 feat(SegmentedControl): Change role to radiogroup
  • #6973 feat(EntityTitle): Add fill prop
  • #6894 fix(Tabs): Remove extra space added after a TabsExpander component
  • #6962 fix(Checkbox): Reduce disabled checkbox indicator style opacity
  • #6950 fix(FileInput): Add focus styles
  • #6947 fix(Dialog): Respect icon intent color

@blueprintjs/[email protected]

  • #6975 Add new icon: "panel"
  • #6961 Add new icons:
    • "block-promote" "cubes" "hexagon" "package" "pill" "server-install" "server" "tag-add" "tag-promote" "tag-refresh" "tag-undo" "tags" "wrench-redo" "wrench-snooze"

Note: demo-app, docs-app, docs-data, and landing-app were all updated from 5.11.1 to 5.13.0 (5.12.0 was skipped). This was due to the packages being mistakingly marked as patch version in the previous release.

August 28, 2024

@blueprintjs/[email protected]

  • #6952 feat(Callout): Add minimal prop to Callout

@blueprintjs/[email protected]

  • #6929 feat: Add range-ring icon

@blueprintjs/[email protected]

  • #6882 fix(Table/Table2): Keep focused cell visible on click or keyboard navigation

July 25, 2024

@blueprintjs/[email protected]

  • #6854 impr: Update focus outline colors to meet WCAG 2.2 contrast standards
  • #6788 feat(ButtonGroup) Add outlined prop to ButtonGroup
  • #6874 feat(Overlay2) Fix Overlay2 calling stale onClose callback
  • #6896 feat(Tabs) Export TabPanel component used by Tabs

@blueprintjs/[email protected]

  • #6921 feat: Add database-search icon
  • #6913 feat: Update CSSStyle icon and add TableSync icon
  • #6922 feat: Add output icon and update input icon style to match

@blueprintjs/[email protected]

This should have been a minor version but was mistakenly released as a patch introducing the feature below.

  • #6915 feat(MultiSelect) Add customTarget option to MultiSelect

July 3, 2024

@blueprintjs/[email protected]

  • #6885 Remove large gap between vertical Tabs children - fixes regression introduced in 5.10.4

@blueprintjs/[email protected]

  • #6858 Fix end time selection before selecting end date

June 28, 2024

@blueprintjs/[email protected]

⚠️ Warning

If you overrode the Blueprint tab spacing style with custom CSS, you may notice an increase in space between tabs in this version. To fix this, preferably do not override Blueprint CSS styles, or in this case, remove the custom style overriding the margin-right on bp5-tab-list children, and instead override the gap property on bp5-tab-list.

Warning: This version includes an accidental breaking change that introduced spacing between vertical tabs. This was not intentional and will be fixed in the next patch release.

  • #6851 fix(Popover): Do not set tabIndex when no Popover will show
  • #6846 fix(Alert): Use "alertdialog" role
  • #6847 fix(PanelStack2): Prevent PanelStack2 from opening in the wrong direction in React 18
  • #6804 fix(Select): Remove scrollbar in select menu with dividers
  • #6853 fix(Slider): Don't show slider fill before value equal to initial value
  • #6832 fix(Overlay): Fix rendering in Safari 15.2
  • #6803 fix(Table): Avoid trapping focus in table
  • #6834 fix(Tabs): Fix tabs spacing for direction: rtl
  • #6812 fix(Dialog): Constrain DialogFooter width to avoid overflow
  • #6811 fix(FormGroup): Fix sub label color in dark theme
  • #6810 fix(FormGroup): Do not color sub label based on intent

@blueprintjs/[email protected]

  • #6751 chore: Remove dependency on lodash

@blueprintjs/[email protected]

  • #6751 chore: Remove dependency on lodash
  • #6868 chore: Re-export TimePicker and other useful types from datetime

@blueprintjs/[email protected]

  • #6861 fix: Fix docs crashing if using hotkeys to navigate to node in navigatorExclude

@blueprintjs/[email protected]

  • #6867 feat: Add CSSStyle, DataSync and Excavator icons
  • #6705 feat: Add interface layout icons
  • #6813 feat: Add Vector icon
  • #6764 fix: Remove non-existent clip-path from "playbook"

@blueprintjs/[email protected]

  • #6877 feat(Select): Expose placeholder prop of underlying filter text input

May 15, 2024

@blueprintjs/core 5.10.3

  • #6783 fix(OverlayToaster): Fix toasters closing immediately on hover if timeout is set to 0

April 19, 2024

@blueprintjs/core 5.10.2

  • #6771 fix(ControlCard): Fix internal state consistency of control cards in controlled mode
  • #6753 fix(Overlay2): Fix Overlay2 cleanup on redirects
  • #6767 fix(TagInput): Don't add tag when "Enter" is pressed while composing in an IME
  • #6762 fix(Hotkeys): Fix hotkeys dialog having two scrollbars
  • #6713 fix(PanelStack2): Prevent extra render due to updated previous panel

March 20, 2024

@blueprintjs/icons 5.9.0

  • #6738 feat: new icon "bullseye"
  • #6731 feat: new icon "cloud-server"
  • #6730 feat: new icon "clipboard-file"
  • #6740 feat: new icons "backward-10" and "forward-10"

February 26, 2024

@blueprintjs/core 5.10.0

  • #6701 feat(Sass API): export compound tag styling mixins

  • #6724 feat(Sass API): export more app-level color aliases (these are intended to help with the transition to darker dark theme colors coming in the next minor version of @blueprintjs/core)

    • $pt-app-secondary-background-color
    • $pt-dark-app-secondary-background-color
    • $pt-app-elevated-background-color
    • $pt-dark-app-elevated-background-color
  • #6699 feat(Tree): compact styling variant & interactive hover styles on caret icon

    image

  • #6621 feat(Tabs): allow panel prop to be specified as a render function

  • #6697 fix(MenuItem): prevent scrolling on space key press

  • #6718 fix(EditableText): update dimensions on placeholder change

@blueprintjs/docs-theme 5.3.2

  • #6724 fix: slightly darker background color for docs content in dark theme, using the correct semantic color alias ($pt-dark-app-background-color) for better symmetry with the light theme

@blueprintjs/icons 5.8.0

  • #6696 feat: new icons "binary-number", "curly-braces"

    image image

February 1, 2024

@blueprintjs/core 5.9.1

  • #6692 feat(BlueprintProvider): new composite context provider
  • #6689 fix(OverlayToaster): correct type for createAsync() domRenderer callback
  • #6690 fix(TooltipContext): stabilize context value to avoid unnecessary re-renders
  • #6647 fix(Popover): set the default value of aria-haspopup to "menu" for improved clarity (this is equivalent to the previous value of true, see docs)

January 31, 2024

@blueprintjs/colors 5.1.0

  • #6668 fix Sass variable values for $cerulean colors

@blueprintjs/core 5.9.0

  • #6686 feat: new CompoundTag component

    image

  • #6680 ⚠️ break(Portal): stop using legacy context API in React 18

    • This component was backwards-compatible with React's legacy context API. It continues to be so when used with React 16 or 17, but for React 18 consumers, who we assume are not using legacy APIs, <Portal> will no longer attempt to use the legacy API (this resolves a React development warning in strict mode)
  • #6656 feat: new Overlay2 component, now compatible with React 18 strict mode

    • all overlay-based components have been migrated to use Overlay2, including:
      • Dialog
      • Popover
      • Drawer
      • OverlayToaster
    • see the new Overlay2 migration guide
  • #6656 feat: new Toast2 component which forwards its DOM ref and is compatible with Overlay2

  • #6592 feat(Callout): new compact modifier prop for reduced visual padding

    image

  • #6685 feat(ContextMenuPopover): support configuration of DOM mounting / unmounting methods in imperative showContextMenu / hideContextMenu APIs

  • #6399 fix(Overlay2): compared to Overlay, the new component correctly gains focus upon first render when lazy={true}

  • #6656 ⚠️ deprecation: Overlay and Toast (use "v2" variants instead)

@blueprintjs/datetime 2.3.0

  • #6656 feat: all overlay-based components now use Overlay2

@blueprintjs/datetime2 2.3.0

  • #6656 feat: all overlay-based components now use Overlay2

@blueprintjs/node-build-scripts 9.1.0

  • #6671 feat: upgrade to prettier v3.2.x, sass v1.70.x

@blueprintjs/select 5.1.0

  • #6656 feat: all overlay-based components now use Overlay2

@blueprintjs/webpack-build-scripts 6.2.0

  • #6671 feat: upgrade dependencies

January 12, 2024

@blueprintjs/core 5.8.2

  • #6646 fix(ControlGroup): apply role="group" attribute by default for accessibility
  • #6650 fix(Drawer): allow interacting with overlaid contents when hasBackdrop={false}
    • ⚠️ this fix comes with a small breaking change to <Dialog> prop types: hasBackdrop now is of type never, since this overlay prop is unsupported on the <Dialog> component
  • #6651 fix(Popover): resolve React warning by persisting the synthetic event which triggers the popover to open/close when we defer the action (usually due to hoverOpenDelay or hoverCloseDelay)
  • #6652 fix(HotkeysProvider): memoize context value to avoid unnecessary re-renders of subtree

@blueprintjs/select 5.0.23

  • #6653 fix(MultiSelect): avoid mutating props.tagInputProps object

January 10, 2024

@blueprintjs/core 5.8.1

  • #6636 fix(AnchorButton): don't show text underline on hover
    • this fixes a regression introduced in core v5.8.0
  • #6638 chore: upgrade @popperjs/core dependency from v2.11.7 to v2.11.8

@blueprintjs/icons 5.7.0

  • #6635 feat: new icons "crop", "endnote", "bring-forward", "send-backward"

image image image image

  • #6639 fix: restore transform-origin style in static component SVG markup
    • this fixes a regression introduced in icons v5.6.0 for users of static icon component modules which were not importing blueprint-icons.css

January 8, 2024

@blueprintjs/core 5.8.0

  • #6590 feat: new EntityTitle component which encapsulates a common UI pattern consisting of a title, icon, subtitle, and tag

  • #6599 feat: add new OverlayToaster.createAsync() to support React 18

  • #6611 feat(NonIdealState): new iconMuted prop allows displaying non-muted icons when set to false (it is true by default for backwards-compatibility)

  • #5086 feat: allow dialog background color to be overridden as Sass variable $dialog-background-color

  • #6634 feat: upgrade @types/react dependency to ^16.14.41

  • #6600 fix(Button, AnchorButton): omit 'ellipsizeText' prop from HTML attributes

  • #6604 fix(Popover): apply aria-expanded and aria-haspopup a11y attributes to child target element instead of wrapper

  • #6629 fix(KeyComboTag): use static icon component imports

  • #6632 ⚠️ deprecate Portal stopPropagationEvents and Overlay portalStopPropagationEvents

    • Note that the implementation for this feature does not work in React 17+

@blueprintjs/eslint-config 6.0.0

  • #6624 ❗ break: configure react-hooks/exhaustive-deps rule to report as "error" instead of "warn"
  • #6631 feat: update copyright year in header/header rule template

@blueprintjs/eslint-plugin 6.1.0

@blueprintjs/icons 5.6.0

  • #6625, #6227 feat: new icons "team", "trophy", "soccer-ball", "sports-stadium", "cloud-tick"

    image image image image image
  • #6594 fix invalid DOM attribute warning for transform-origin

@blueprintjs/node-build-scripts 9.1.0

  • #6620 feat: upgrade to typescript v5.3

@blueprintjs/test-commons 3.0.0

  • #6634 ❗ break: migrate package to ESM, add "exports" field in package.json

December 7, 2023

@blueprintjs/core 5.7.2

  • #6565 fix(Popover): add aria-expanded attribute to target element
  • #6579 fix(Popover): support lazy prop correctly by forwarding the value to Overlay
  • #6587 fix(Popover): improve keyboard a11y: always return focus to target element when an ESC keypress closes the popover
  • #6567 fix(Icon): allow aria-hidden to be overridden via props

@blueprintjs/datetime 5.2.8

  • #6568 fix(TimePicker): use type="number" input, improve markup a11y
  • #6568 fix(DateInput): improve popover markup a11y by adding role="combobox" and aria-controls attributes

@blueprintjs/datetime2 2.2.7

  • #6568 fix(DateInput3): improve popover markup a11y by adding role="combobox" and aria-controls attributes

@blueprintjs/icons 5.5.0

  • #6589 feat: new icons "generate" and "explain"

    image image
  • #6573 feat: new icons "group-item" and "input"

    image image

  • #6567 fix(SVGIconContainer): allow aria-hidden to be overridden via props

@blueprintjs/node-build-scripts 9.0.2

  • #6563 fix(sass-compile, css-dist): add shebang to allow easier CLI usage

November 17, 2023

@blueprintjs/core 5.7.0

  • #6454 feat: new SegmentedControl component

    Light theme Dark theme
    image image
  • #6544 feat: new RadioCard component

    image

  • #6543 feat(Button, AnchorButton): new ellipsizeText prop which truncates long text that does not fit into a single line

    • This feature utilizes the <Text> component to detect overflow and render a native HTML tooltip to display the full overflowing text upon hover interaction image
  • #6516 feat(Button, AnchorButton): new textClassName prop

  • #6506 feat(Section): new titleRenderer prop allows custom title elements; added various aria-* HTML attributes for enhanced a11y

  • #6525 fix(Slider, AnchorButton, MultiStepDialog, MenuItem): add aria-disabled attribute to improve a11y markup

  • #6521 fix(PanelStack2): fix compatibility of Panel interface with latest React.FC return type

@blueprintjs/icons 5.4.0

  • #6538 feat: migrate to @twbs/fantasticon v2.x
    • This migration & upgrade of icon build tooling is not expected to have any impact on end users, but please do flag regressions if they occur.

@blueprintjs/node-build-scripts 9.0.0

  • #6520 ⚠️ break: migrate css-dist and sass-compile from shell to Node.js scripts to improve compatibility with latest Yarn package manager

November 15, 2023

@blueprintjs/datetime2 2.2.4

  • #6548 fix(DateRangePicker3): display left/right calendars correctly when the selectable range of days is <2 months and the current day or the midpoint between min & max dates lands on the right calendar

October 31, 2023

Note: Blueprint's build system was upgraded to TypeScript v5.2 via #6476, which may have resulted in minor changes to transpiled JavaScript in the output modules. Please file an issue if you experience regressions in type definitions.

@blueprintjs/core 5.6.0

  • #6472 feat(FormGroup): add support for "fill" modifier prop
  • #6472 docs(FormGroup): improve docs for "intent" prop

@blueprintjs/docs-theme 5.2.0

@blueprintjs/icons 5.3.0

  • #6477 feat: new icons "phone-call", "phone-forward", "paste-variable"

    image image image

  • #6502 feat: new icon "new-shield"

    image

@blueprintjs/eslint-config 5.0.0

  • #6478 ⚠️ break: enable @typescript-eslint/consistent-type-imports and @typescript-eslint/consistent-type-exports rules

@blueprintjs/eslint-plugin 6.0.0

  • #6474 ⚠️ break(no-deprecated-components): check usage of deprecated components from @blueprintjs/[email protected]
  • #6474 ⚠️ break(no-deprecated-components): check usage of deprecated components from @blueprintjs/[email protected]
  • #6479 ⚠️ break(no-deprecated-components): check usage of deprecated components from @blueprintjs/[email protected]
  • #6474 feat(no-deprecated-popover2-components): new lint rule
  • #6475 feat(no-deprecated-select-components): check usage of MultiSelect2, Select2, and Suggest2 components
  • #6479 feat(no-deprecated-table-components): check usage of ColumnHeaderCell2, JSONFormat2, and RowHeaderCell2, and TruncatedFormat2 components

@blueprintjs/node-build-scripts 8.1.0

  • #6476 feat: upgrade to TypeScript v5.2

@blueprintjs/tslint-config 4.1.0

  • #6476 feat: upgrade to TypeScript v5.2

@blueprintjs/webpack-build-scripts 6.1.0

  • #6476 feat: upgrade to TypeScript v5.2

October 23, 2023

@blueprintjs/datetime2 2.2.2

  • #6490 fix(DateRangePicker3): accept custom month/year formatters for non-contiguous pickers (contiguousCalendarMonths={false})

October 16, 2023

@blueprintjs/core 5.5.1

  • #6467 fix(API): restore PopoverPosition value export
  • #6468 fix(ResizeSensor): restore feature detection for ResizeObserver API

October 12, 2023

@blueprintjs/core 5.5.0

  • #6444 feat(Card, ControlCard): new "selected" modifier prop renders the card with a blue selection border (ControlCard behavior may be modified with the showAsSelectedWhenChecked prop)

    image

  • #6455 feat: new CheckboxCard component

    image

  • #6455 feat(ControlCard): add support for alignIndicator prop

    • Note: by default, this is set to "left" for CheckboxCard and "right" for SwitchCard
  • #6444 fix(Checkbox, Switch, Radio): use correct type for onChange event handler prop

    • 🔥 warning: this fix can be a slight break for user code which expects the onChange event to explicitly be a React.MouseEvent instead of a React.ChangeEvent
  • #6343 fix: reduce visual weight of input borders

    Before After
    Screenshot 2023-08-29 at 11 39 17 Screenshot 2023-08-29 at 11 39 31
    Screenshot 2023-08-29 at 11 39 21 Screenshot 2023-08-29 at 11 39 28
  • #6459 fix(Popover): adjust target element ref behavior to work around react-popper innerRef bug, fixing React 18 strict mode compatibility

  • #6457 fix(MenuDivider): remove tabIndex attribute to resolve accessibility failure

@blueprintjs/datetime2 2.2.0

  • #6453 feat: new prop dateFnsLocaleLoader on all "V3" components allows users to specify a custom date-fns Locale module loader function

  • #6456 feat(DateRangeInput3): formatDate and parseDate props are now optional. The component will use a date-fns formatter & parser with a format string inferred from the time precision setting.

  • #6456 feat(DateRangeInput3): new dateFnsFormat prop allows users to easily customize the date formatter, parser, and input placeholder without having to write custom formatting & parsing functions

  • #6456 fix(DateInput3): forward locale to DatePicker3 correctly so that month & year dropdown labels are localized

  • #6445 fix(DateRangePicker3): show both start & end time pickers when singleMonthOnly={true}

    image

@blueprintjs/docs-theme 5.1.0

  • #6459 fix: remove unused, long-deprecated highlights.js code markup styles

@blueprintjs/karma-build-scripts 5.1.0

  • #6453 feat: migrate webpack config from ts-loader to swc-loader

@blueprintjs/webpack-build-scripts 6.0.0

  • #6453 feat: migrate from ts-loader to swc-loader
    • 🔥 the change to use SWC for TypeScript transpilation has some breaks due to limitations in SWC and adherence to a stricter module system which more closely resembles "standard" ES modules, see the linked PR for more details

October 6, 2023

@blueprintjs/core 5.4.0

  • #6250 feat: new SwitchCard component

    • This is the first of a series of "Control card" components: interactive Cards with embedded form controls

    image

  • #6432 feat(Card): new compact modifier prop

    image

@blueprintjs/datetime2 2.1.0

  • #6434 feat: export DayPickerProps type
    • This type makes it convenient to attach a typedef to an object which is assignable to the dayPickerProps prop on DatePicker3, DateInput3, DateRangePicker3, and DateRangeInput3.
  • #6435 fix(DateRangeInput3): minor styling issue when hovering on a date outside of the selected range

@blueprintjs/icons 5.2.0

  • #6431 new icons "geotime" and "unlink"

    image image

@blueprintjs/node-build-scripts 8.0.3

  • #6436 chore: upgrade sass to v1.69.0, eslint to v8.50.0

@blueprintjs/webpack-build-scripts 5.0.3

  • #6440 chore: upgrade fork-ts-checker-webpack-plugin to v9.0

October 3, 2023

@blueprintjs/core 5.3.3

  • #6410 fix(Icon): use correct CSS font-size when falling back to icon font implementation

@blueprintjs/datetime2 2.0.2

  • #6421 fix: restore Webpack 4 compatibility by avoiding export * as syntax
  • #6427 fix: allow React 18 as a peer dependency

@blueprintjs/eslint-config 4.3.0

  • #6424 feat: bump minimum version of typescript-eslint to v6.7.4

@blueprintjs/eslint-plugin 5.1.0

  • #6424 feat: bump minimum version of typescript-eslint to v6.7.4
  • #6426 fix(no-deprecated-datetime2-components): export rule definition correctly

September 25, 2023

@blueprintjs/core 5.3.2

  • #6382 fix(NumericInput): fix increment/decrement behavior with very small step sizes by using roundingPriority: "morePrecision" in Intl.NumberFormat options

@blueprintjs/datetime 5.2.0

  • #6402 deprecation(DatePicker, DateInput, DateRangePicker, DateRangeInput): react-day-picker v7.x components are now deprecated in favor of the "v3" components available in @blueprintjs/datetime2 which use react-day-picker v8.x

@blueprintjs/datetime2 2.0.0

🌟 Stable release with changes from v1.1.0-alpha.0

This release doesn't come with any breaking changes to component APIs, but there are small changes related to build tooling which warrant a major version bump:

In addition, there are some new features:

  • #6406 feat(DatePicker3, DateInput3, DateRangePicker3, DateRangeInput3): widen type of locale prop to allow statically-imported date-fns Locale objects in addition to locale codes as strings

@blueprintjs/eslint-config 4.2.0

  • feat: upgrade to @blueprintjs/eslint-plugin v5.0.0

@blueprintjs/eslint-plugin 5.0.0

  • #6402 break(no-deprecated-components): flag usage of deprecated react-day-picker v7.x components
  • #6402 feat(no-deprecated-datetime2-components): new lint rule to flag usage of deprecated react-day-picker v7.x components

September 21, 2023

@blueprintjs/core 5.3.1

  • #6369 fix(OverlayToaster): declare children prop explicitly to fix compatibility with @types/react v18.x

@blueprintjs/datetime 5.1.0

  • #6391 feat(DateInput): controlled timezone value support

image

  • #6370 feat(DateUtils): add utility functions hasTimeChanged, hasMonthChanged
  • #6375 feat: export Errors, TimezoneNameUtils, DatePickerShortcutMenu in public API
  • #6375 feat(DatePickerUtils): add measureTextWidth utility function
  • #6372 fix(DateInput): use CSS flex layout to display rightElement correctly
  • #6360 chore: upgrade date-fns-tz dependency to v2.0.0

@blueprintjs/datetime2 1.1.0-alpha.0

⭐ new components with react-day-picker v8.x support

⚠️ note that this will cause multiple copies of react-day-picker to be installed, and the newer v8.x types require allowSyntheticDefaultImports to be enabled for TypeScript compilation.

image

image

  • #5935 feat: new DatePicker3 component using react-day-picker v8.x
    • ℹ️ compared to DatePicker, the month navigation layout for this component has changed slightly to align with react-day-picker's native behavior: prev/next month buttons are now adjacent to each other at the top right of the picker
  • #6370 feat: new DateInput3 component using react-day-picker v8.x
    • ℹ️ compared to DateInput, the month navigation layout for this component has changed slightly to align with react-day-picker's native behavior: prev/next month buttons are now adjacent to each other at the top right of the picker
  • #6375 feat: new DateRangePicker3 component using react-day-picker v8.x
  • #6398 feat(DateInput3): simpler date formatting & parsing API
    • formatDate and parseDate props are now optional. The component will use a date-fns formatter & parser with a format string inferred from the time precision setting.
    • new dateFnsFormat prop allows users to easily customize the date formatter, parser, and input placeholder without having to write custom formatting & parsing functions.

@blueprintjs/icons 5.1.7

  • #6393 fix(IconLoader): improve performance of isValidIconName check

@blueprintjs/eslint-config 4.1.0

@blueprintjs/stylelint-plugin 4.1.0

  • #6364 feat: allow stylelint v15 as peer dependency

@blueprintjs/test-commons 2.1.0

  • #5935 feat: add utility functions assertTimeIs, createTimeObject

August 29, 2023

@blueprintjs/core 5.3.0

  • #6331 feat(Text): forward ref to DOM element
  • #6328 feat(Section): add controlled mode support for collapse state
  • #6312 feat(TextArea): add asyncControl prop support (which behaves similarly to <InputGroup asyncControl>)
  • #6319 fix(Popover): pass along portalStopPropagationEvents to underlying Overlay component
  • #6338 fix(RangeSlider): position the handle element correctly upon initial mount when a slider is rendered inside the contents of a <Popover>

@blueprintjs/eslint-config 4.0.0

  • #6339 feat: upgrade to typescript-eslint v6.x

@blueprintjs/eslint-plugin 4.0.0

  • #6339 feat: upgrade to typescript-eslint v6.x

@blueprintjs/node-build-scripts 8.0.2

  • #6353 fix: remove unused dependency on ts-node

August 22, 2023

@blueprintjs/core 5.2.1

  • #6313 fix(Tree): Export TreeNodeProps
  • #6321 fix(Section): Section header should only render if title is provided
  • #6326 fix(Section): defaultIsOpen should behave as expected
    • Previously, there was a bug where defaultIsOpen had the opposite behavior of what was intended

@blueprint/select 5.0.9

  • #6318 fix(Select, MultiSelect): load icons statically

July 28, 2023

@blueprintjs/core 5.2.0

  • #6246 feat: new CardList component

    image
  • #6306 feat(TextArea): new autoResize prop allows input to grow and shrink vertically based as contents change

    2023-07-28 13 44 11

    • ⚠️ the growVertically prop has been deprecated in favor of this new feature which grows and shrinks the textarea.
  • #6290 feat(InputGroup): new prop onValueChange provides direct access to the changed text value

    • This helps avoid common bugs related to React 16 event pooling
  • #6304 feat(typography): muted text modifier class support for headings

  • #6301 fix(HotkeyParser): use event.code property to get physical keys

    • This fixes some regressions in hotkey behavior in v5.0 caused by #6106
  • #6232 fix(Spinner): add default value for aria-label attribute

@blueprintjs/datetime 5.0.8

  • #6302 fix(TimezoneSelect): rename Ukraine timezone label from "Kiev" to "Kyiv"

July 21, 2023

@blueprintjs/core 5.1.5

  • #6297 fix(Callout): remove extra body element (this reverts a DOM breaking change introduced in v5.1.1 which broke some custom styles downstream)
  • #6293 fix: export IconComponent type (previously named GenericIcon) in public API

@blueprintjs/datetime 5.0.7

  • #6295 fix(DatePickerCaption): increase caption dropdown CSS specificity
    • This makes blueprint-datetime.css more robust so that <DatePickerCaption> is styled correctly even when blueprint.css is loaded afterwards on the page

@blueprintjs/icons 5.1.4

  • #6293 fix: export SVGIconContainerComponent type (previously named GenericSVGIconContainer) in public API

July 19, 2023

@blueprintjs/core 5.1.4

  • #6285 fix(Icon): add generic type param which can be used to specify the type of the root element rendered by this component, fixing a props compatibility regression in v5.1.x

July 17, 2023

@blueprintjs/core 5.1.3

  • #6283 fix(IconProps): widen type of HTML attributes (fixing a regression in v5.1.x)
  • #6282 fix(Section): apply collapsed style when children are empty
  • #6277 fix(useHotkeys): avoid using conditional hook (breaking React's Rules of Hooks)

@blueprintjs/eslint-config 3.1.0

  • #6277 feat: install eslint-plugin-react-hooks, enable additional lint rules:
    • "react/self-closing-comp"
    • "react-hooks/rules-of-hooks"
    • "react-hooks/exhaustive-deps" (warn only)

July 13, 2023

@blueprintjs/core 5.1.1

  • #6245 feat(Section): new container component which provides a new way to structure information in a UI. A <Section> may have a title, description, and icon in its header. Its contents may be collapsible and may contain one or more SectionCard children.

    image

  • #6269 Menu component visual design updates

    • feat(MenuItem): new small prop offers a more compact visual design
    • feat(MenuDivider): update visual design to make dividers take up full menu width

    image

  • #6260 feat(Portal): Add portalContainer context option

  • #6268 fix(Icon): avoid breaking rules against conditional React hooks

  • #6273 fix(Icon): use loaded icon paths in initial state if available

  • #6254 fix(Callout): load intent icons statically (avoid using dynamic icon loader when intent prop is defined)

  • #6274 fix(ContextMenu): compatibility with @types/react v18.2.14

  • #6275 fix(HTMLSelect): align caret icon with Button rightIcon

  • #6276 fix(Callout): apply visual margin between title and body when props.children is a simple string type

@blueprintjs/docs-theme 5.0.3

  • #6269 fix(Navigator): apply the default roleStructure="menuitem" to navigator menu items to better reflect their behavior and disable "selectable" appearance

@blueprintjs/icons 5.1.0

  • #6252 feat: new icon "microphone"

    image

@blueprintjs/node-build-scripts 8.0.1

  • #6261 chore: use non-deprecated syntax to import 'sass' package

June 28, 2023

@blueprintjs/core 5.0.1

  • #6253 fix(Icon): restore precedence of iconSize prop over size prop (fixing a regression from v4.x)
  • #6255 fix(EditableText): widen type of elementRef prop to allow ref callbacks (improving compatibility with forwarded refs)

@blueprintjs/table 5.0.1

  • #6255 fix(Draggable): improve resiliency of component by adding defensive checks that ensure that children have a valid DOM ref before attaching DragEvents functionality
  • #6255 fix(EditableName): improve compatibility with <Draggable> by refactoring into a function component and adding ref prop support via React.forwardRef()
Clone this wiki locally