Skip to content

Files

Latest commit

359b73c · Feb 3, 2025

History

History
5072 lines (3453 loc) · 335 KB

CHANGELOG.md

File metadata and controls

5072 lines (3453 loc) · 335 KB

Change Log

All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.

10.11.0 (2025-02-03)

Bug Fixes

  • ui-breadcrumb: add and update aria tags in Breadcrumb and in documentation (e8db0f2)
  • ui-menu: make Menu.Item apply target prop (6c85b31)
  • ui-menu: screenreaders should read the correct number of menu items (0670648)
  • ui-pagination: fix Pagination sometimes displaying non li elements in lists, fix key errors too (1dbe539)
  • ui-time-select: clear input field after setting an empty value (1993282)
  • ui-tooltip: ensure Esc key closes only the Tooltip when inside a Modal (0e6e1e4)

Features

  • shared-types,ui-buttons: add theme variables for default and hover states for buttons (43fde61)
  • ui-filedrop: add inputRef prop to make FileDrop focusable (a3a75e0)
  • ui-icons: add give-award, grid-view, list-view icons (1f37f70)

10.10.0 (2024-12-18)

Bug Fixes

  • ui-date-time-input,ui-form-field: make DateTimeInput compatible with the new error format (07c9443)
  • ui-date-time-input: fix DateTimeInput displaying wrong value of its value is changed in a onChange callback (69e9d24)
  • ui-simple-select: fix selection getting lost after options have changed (4e07f9a)

Features

  • many: add new Typography tokens and update text and heading (a09fa0f)

10.9.0 (2024-12-12)

Bug Fixes

  • ui-pagination: fix color of pageInput's label (b91cfe1)

Features

  • link: add textUnderlineOffset to Link component theme override (2b2a997)
  • many: make meta package export every component and type definition (dee9abb)
  • shared-types,ui-options,ui-select: allow to change font weight of selected option item in Select (6818928)
  • ui-date-input: add support for custom calendar icon (a0fff9d)
  • ui-number-input: add customizable icons for increment and decrement buttons (7be2226)

10.8.0 (2024-12-09)

Bug Fixes

  • ui-select,ui-text-input: fix long before elements overflowing in TextInput, Select, SimpleSelect (ee9cafd)

Features

  • shared-types,ui-progress: add customization options for progressbar (56308de)

10.7.0 (2024-12-03)

Bug Fixes

  • many: hide required asterisks from screenreaders (78aec71)
  • ui-color-picker: make ColorPicker tooltip VoiceOver focusable (610c0d8)
  • ui-source-code-editor: prevent Vite from erroring out during the build in React 16/17 (c871244)
  • ui-text-area: make focus line follow resized textarea (dd1e12c)

Features

  • ui-icons: new icons: chart-line,chart-pie,chart-scatter,learnplatform,search-ai,single-metric (304a29a)
  • ui-link: update Link's color (c3f5f37)
  • ui-number-input: add back options for string input (ce86cdb)

10.6.1 (2024-11-26)

Other

(Experimental) It is now possible to run InstUI 10 on the same page with InstUI v9 and v8. This is useful for e.g. module federation where the host app is running InstUI v8/v9 and the guest app wants to be on the latest version. To make this work specific criteria needs to be met:

  • Host app needs to be using InstUI v8/v9
  • Host app needs to import the canvas/canvasHighContrast theme before loading the guest app.
  • Guest app must use canvasThemeLocal or canvasHighContrastThemeLocal. These are exported from ui-themes and do not have a variables field and a .use() method.
  • Guest app's InstUISettingsProvider's theme prop must be set otherwise it will default to a window-level theme
  • Overrides specified in global themes are not applied to local themes, you must apply these manually.

These limitations/caveats are necessary to not cause breaking changes, a final iteration of thing change in InstUI v11 will remove some of these limitations.

The following are deprecated and will be removed in InstUI v11:

Deprecation What to use instead?
canvas.use(), canvasHighContrast.use() Wrap all your application roots in <InstUISettingsProvider>
variables field on theme objects Use the fields from the object above, e.g. use canvas.borders instead of canvas.variables.borders
@instructure/theme-registry package This added the deprecated functions above. Wrap all your application roots in <InstUISettingsProvider>

Bug Fixes

  • emotion,shared-types: better TS types for theme objects and their overrides (c790958)
  • shared-types,ui-pagination: pagination indicators have spacing and coded as a list for a11y (e6e5a7b)
  • ui-date-input: fix DateInput2 not working with NVDA (34fb8e0)
  • ui-popover,ui-tooltip: tooltips should close when esc is pressed (d91de1c)
  • ui-progress,ui-tag: remove onClick prop from Tag when callback is not provided. Fix Progress dependency mismatch (test-locator) (de22f76)

10.6.0 (2024-11-18)

Bug Fixes

  • many: adjust border colors to meet a11y contrast standards (2f47e06)
  • many: fix regression where form elements without label got misaligned (139f7f1)
  • ui-view: adjust border colors to meet a11y contrast standards (569072e)

Features

  • ui-color-picker,ui-color-utils: add callback for contrast validation information and export validation methods (e756c7d)
  • ui-view: add borderColor prop to ContextView; make borderColor accept HEX code as a string in View (a823d51)

10.5.0 (2024-11-07)

Bug Fixes

  • do not lose focus when opening the side menu in the docs app (0b4434d)
  • docs Github corner has focus ring (cc742d1)
  • ui-alerts: trigger onDismiss for SR only alerts (98750f6)
  • ui-date-input: fix DateInput2 to update messages properly (553a235)
  • ui-options,ui-utils: subgroup titles in Options are not announced by TalkBack and iOS VoiceOver (ebdf8f0)
  • ui-tabs: tabpanel content is not accessible with keyboard navigation when it does not have focusable element (297cd03)
  • ui-themes: make all colors available (46f9e38)
  • ui-tree-browser: treeBrowser collection descriptor is not read by screenreaders (87623f7)
  • ui-view: fix view success colors (e250b02)

Features

  • many: add new form field error msg style + add asterisk for required fields (9b03683)

10.4.1 (2024-10-28)

Bug Fixes

  • docs screenreader alerts are no longer screenreader focusable (c225853)
  • ui-buttons: add back ic-brand theme tokens to basebutton (ff21f05)
  • ui-toggle-details: do not put aria-expanded and aria-controls on the toggle if there is nothing to toggle (82094c3)
  • update license (1c039d9)

10.4.0 (2024-10-16)

Bug Fixes

  • ui-calendar: fix duplicate dates for certain timezones (f9181aa)
  • ui-date-input: fix messages prop sometimes not populating in DateInput2 (28d2601)
  • ui-progress,ui-side-nav-bar: improve a11y for Progress and SideNavBar examples (2160fdd)

Features

  • ui-modal: modify modal to support less strict children (40f8ca2)

10.3.0 (2024-10-03)

Bug Fixes

  • console: remove PURE annotation from console to fix warnings in Vite/Rollup (48e78bb)
  • shared-types,ui-table: fix color contrast for table sorting icons (b5a60bf)
  • ui-pagination: fix pagination with numberinput when onBlur it calls onPage change every time, even where there are no changes (38e75c4)
  • ui-progress,ui-range-input: use just the native HTML elements instead of ARIA tags (f0fa72c)
  • ui-radio-input: fixing the issue of TalkBack reading the radio grop options incorrectly (ff2618e)
  • ui-simple-select: ensure input value updates correctly when options change (4dc7cb2)
  • ui-text-input: icon in SimpleSelect is vertically centered (13790d1)

Features

  • ui-calendar,ui-date-input: update DateInput2 api, add placeholder hint (ee9dfab)
  • ui-menu: add renderLabelInfo to Menu (2bc8554)

10.2.2 (2024-09-13)

Bug Fixes

  • docs: ensure page scrolls to anchor on load when linked (6928c97)
  • docs: fix compileMarkdown heading id generation (ef97c7c)
  • ui-checkbox,ui-radio-input: reduce clickable area of checkbox and radioinput (77b2a7d)
  • ui-selectable: fix Select options not being selectable on iOS Safari with VoiceOver on (aae996f)
  • ui-toggle-details: fix ToggleDetails flickering (cbab3be)

10.2.1 (2024-08-30)

Features

  • ui-table: new API that allows to use custom components (link)

10.2.0 (2024-08-23)

Features

  • many: add data visualization colors, refactor theme code (c395e17)
  • ui-icons: add new AI icon (44b02ce)

10.1.0 (2024-08-23)

Features

  • many: add data visualization colors, refactor theme code (c395e17)
  • ui-icons: add new AI icon (44b02ce)

10.0.0 (2024-07-31)

Features

  • many: rewrite color system (1e5809e)
  • ui-codemods: add codemod for v10 color update (566751b)

BREAKING CHANGES

  • many: Breaks color overrides in certain cases

9.5.1 (2024-07-30)

Bug Fixes

  • ui-color-picker,ui-color-utils: fix corrupted CJS build (e1016be)
  • ui-modal: inherit border radius for ModalHeader (03cf94d)

9.5.0 (2024-07-26)

Note: Version bump only

9.4.0 (2024-07-26)

Bug Fixes

  • ui-menu: menuItem's onSelect type did not expose its value and selected types (c58fff8)

Features

  • ui-date-input,ui-text-input: add custom validation function and fix small layout issue (77218be)

9.3.0 (2024-07-17)

Bug Fixes

  • ui-buttons: do not emit failed prop type warning when setting CondensedButton's color to 'secondary' (a3587df)

Features

  • ui-top-nav-bar: add workaround hack for new topnav design with the old api (e5b34c0)
  • ui,ui-date-input: add new DateInput2 component (9c893fc)

9.2.0 (2024-07-09)

Bug Fixes

  • ui-drilldown: index drilldown options to always preserve the correct order (3159d06)
  • ui-file-drop: set aria-invalid to true when there are error messages (67fce51)
  • ui-number-input,ui-pagination: set numberinput type to number (19f27f5)
  • ui-top-nav-bar: fix topnavbar item width changing (88993e2)
  • ui-top-nav-bar: lowered topnavbar zindex so it goes below trays/popovers/modals/etc (bcfcb84)

Features

  • ui-table: remove restriction for children types and add documentation (00e3026)
  • ui-tray: add optional mask overlay to tray (8616638)

9.1.0 (2024-06-14)

Bug Fixes

  • ui-buttons: allow secondary option for CondensedButton color (eca60d3)
  • ui-color-picker: add styling for disabled state (7d6d3ad)
  • ui-react-utils: remove defaultProps from DeterministicContextProvider (5c89612)
  • ui-tabs: fix horizontal scrolling with keyboard navigation (a25c7db)
  • ui-tabs: fix id generation when null is present as children (85765ae)
  • ui-top-nav-bar: keep width unchanged when active status is set to topnavbar.item (9770827)
  • ui-top-nav-bar: show nothing in smallviewportlayout when there is one crumb link (1c380a9)

Features

  • shared-types,ui-calendar,ui-select: add yearpicker functionality to calendar (2c0c6e0)
  • ui-menu: add maxHeight functionality to Menu (6494c4a)
  • ui-tabs: add option for persisting tabpanels (6fe73a3)

9.0.1 (2024-05-09)

Note: Version bump only for package instructure-ui

9.0.0 (2024-05-09)

Features

  • instui-cli,ui-codemods,ui-top-nav-bar: remove desktopConfig prop from TopNavBar.Layout (d5efe5f)
  • instui-config,ui-codemods: remove instui-cli and template packages (17a4442)
  • set tooling packages to private (17ab811)
  • shared-types,ui,ui-navigation: remove deprecated component Navigation (0173c76)
  • ui-buttons,ui-text: remove deprecated prop values (f6b27d8)
  • ui-dom-utils,ui-react-utils,ui-utils: remove deprecated utils (0a8c8e3)
  • ui-overlays: remove deprecated props from Mask and Overlay (e079b81)
  • ui-top-nav-bar: remove renderName and nameBackground prop from TopNavBar.Brand (8e48ab5)

BREAKING CHANGES

  • instui-config,ui-codemods: instui-cli and template packages has been removed
  • ui-top-nav-bar: renderName and nameBackground props have been removed
  • following packages have been set to private:
  • cz-lerna-changelog
  • slint-plugin-instructure-ui
  • pkg-utils
  • ui-babel-preset
  • ui-eslint-config
  • ui-karma-config
  • ui-scripts
  • ui-stylelint-config
  • ui-webpack-config
  • instui-cli,ui-codemods,ui-top-nav-bar: desktopConfig prop from TopNavBar.Layout has been removed
  • ui-dom-utils,ui-react-utils,ui-utils: deprecated utils has been removed
  • ui-overlays: removed onDismiss prop from Mask and applicationElement from Overlay
  • ui-buttons,ui-text: deprecated property values has been removed

8.56.0 (2024-05-06)

Features

  • ui-top-nav-bar: add onclick prop for hidden menu item (7228ae1)

8.55.1 (2024-04-30)

Bug Fixes

  • ui-dialog: revert ecc0ee8 (deb44dd)
  • ui-top-nav-bar: change topnavbar secondary color to porcelaine (4284cc0)

8.55.0 (2024-04-09)

Bug Fixes

  • ui-dialog: menu closes when clicking on submenu (7e7d1aa)
  • ui-drawer-layout: fix drawerlayout transition bug (27ae4f1)
  • ui-tabs: fix automatic id generation (4645981)
  • ui-tray: make focus trapping work (048b9b4)

Features

  • ui-buttons: add stronger css rules for focused links (84f2306)

8.54.0 (2024-03-21)

Bug Fixes

  • ui-options: add prop for workaround when VoiceOver doesn't announce the role of the highlighted item (35ba0b3)
  • ui-source-code-editor: make search panel work with older react versions (76cdaac)

Features

  • ui-date-time-input: make resetting programatically possible (a474dab)
  • ui-select: expose prop to control auto-scrolling in select component (7cd4c22)

8.53.2 (2024-02-15)

Bug Fixes

  • ui-source-code-editor: make search panel react version agnostic (f917e20)

8.53.1 (2024-02-09)

Bug Fixes

  • ui-source-code-editor: use dependencies instead of devDependencies (2cfbb4f)

8.53.0 (2024-02-08)

Bug Fixes

  • ui-editable: fix the Esc key event propagation inside the Editable component (5223f2f)
  • ui-overlays: add maskcounter (fbe4d9e)
  • ui-text-area: correct highligh on textarea when using themeOverride (b657193)

Features

  • many: provide defaults to dateInput for easier setup and use (dcefc4e)
  • ui-date-time-input: add initialTimeForNewDate prop to datetimeinput (33711a3)
  • ui-date-time-input: add placeholder to datetimeinput's timeselect (3ec8cc3)
  • ui-source-code-editor: add search panel (991e8fa)

8.52.0 (2024-02-02)

Bug Fixes

  • console,ui-view: fix process is not defined issue (25271d8)
  • shared-types: extend OtherHTMLAttributes with Element (474fa4d)

Features

  • ui-calendar: make easy and minimal configuration possible (911ac1b)
  • ui-drilldown,ui-top-nav-bar: add shouldCloseOnClick (c3df722)
  • ui-pagination: refactor Pagination and expand its API for easy config-based usage (19b928b)

8.51.0 (2023-12-14)

Bug Fixes

  • fix review issues (e2db3dc)
  • handle Preview errors in docs page (bbcb307)
  • ui-a11y-utils: use event.detail instead of event.pointerType for safari/firefox (f58c2d2)
  • ui-truncate-text: resizing TruncateText to its original width doesn't work (d04417b)

Features

  • ui-date-time-input: add showMessages prop (5212a19)
  • ui-top-nav-bar: add a new variant 'forceIconWithLabel' for TopNavBar.Item (ad7c8d5)

8.50.0 (2023-12-05)

Bug Fixes

  • fix modal not dismissible via touch and add focus region tests (e373da1)
  • shared-types,ui-heading: set h1 weight to 700 (34aa934)
  • ui-list: add fix for nested list items (614ac7a)
  • ui-pagination: fix chrome unable to focus undefined element (503535b)
  • ui-selectable: fix label can't be selected issue (3892896)
  • ui-side-nav-bar: fix scrollbar appearing in closed state (e84775f)

Features

  • ui-avatar: add showBorder prop to Avatar (693ea76)

8.49.0 (2023-11-24)

Bug Fixes

  • shared-types,ui-heading: change h1 heading weight (b160d30)
  • shared-types: fix unwanted scrollbar (ac8da80)

Features

  • shared-types,ui-pill: change pill according to new design guidelines (3bd8ee6)
  • ui-side-nav-bar: change hover bahaviour of SideNavBar (924f6b3)

8.48.3 (2023-11-23)

Bug Fixes

  • ui-a11y-utils: fix regression in focus region (43dc1d8)

8.48.2 (2023-11-21)

Bug Fixes

  • ui-a11y-utils,ui-popover,ui-tooltip: fix focus manager issues (9f59f09)

8.48.1 (2023-11-17)

Bug Fixes

  • ui-tray: fix event listeners not working when a second tray is open (ca62df5)

Features

  • ui-top-nav-bar: add Breadcrumb to TopNavBar (e340ae9)

8.48.0 (2023-11-10)

Bug Fixes

  • support multiple decorators with ReactTestUtils (ef704b4)
  • ui-modal: fix second modal closing the first one if two of them are open (73a3001)
  • ui-side-nav-bar: don't allow SideNavBar.Item to inherit global styles (ded9542)
  • ui-side-nav-bar: increase SideNavBar.Item font weight to 400 (53399e3)

Features

  • ui-breadcrumb,ui-link: add onMouseEnter prop (a52f836)

8.47.1 (2023-11-06)

Bug Fixes

  • ui-a11y-utils: fix popover reopen when clicking the trigger (895cdfc)
  • ui-drilldown: fix cmd+click not working on drilldown items (10e53ff)
  • ui-tray: fix Tray component unmounting twice when closed (1ec7647)

8.47.0 (2023-10-27)

Bug Fixes

  • emotion,ui-i18n,ui-react-utils: make decorated components testable with ReactTestUtils (3568250)
  • handleDocumentClick should only capture mouse events (abcd31f)
  • instui-config: v7 codemods were not run for BreadcrumbLink and FlexItem (5b8601e)
  • ui-checkbox,ui-spinner: remove hover highlight from disabled checkbox (3fe755f)
  • ui-date-time-input: clear TimeSelect value when DateInput value is cleared (b1a58e5)

Features

  • ui-tabs: add active property to tabs (5037855)
  • ui-top-nav-bar: add as property to TopNavBarItem (d471c16)

8.46.1 (2023-10-13)

Bug Fixes

  • ui-drawer-layout,ui-tray: fix multiple mounting during transition (65a3f95)

8.46.0 (2023-10-11)

Bug Fixes

  • ui-react-utils: fix ID counter wrong when not in context (29f8885)
  • ui-truncate-text: fix TruncateText not working inside TopNavBar.Item (5253173)

Features

  • ui-spinner): feat(ui-spinner: add delay prop and functionality to the Spinner (1f44e5d)

8.45.0 (2023-10-03)

Bug Fixes

  • ui-color-picker: add a padding to colorpicker button (de420dd)
  • ui-drilldown: call onBackButtonClicked function when ArrowLeft got pressed (cd5e681)

Features

  • ui-view: add overscroll-behavior to view and flex.item component (6dc990f)

8.44.0 (2023-09-21)

Bug Fixes

  • ui-number-input: increase specificity for numberinput's input styles (e761082)
  • ui-select,ui-simple-select: add new tests (e156baa)
  • ui-select: add workaround for safari combobox (09987bb)
  • ui-tree-browser: prevent TreeBrowser from breaking keyboard navigation focus order (0741bc5)

Features

  • grid: add stretch option to vAlign (7b215b6)

8.43.1 (2023-09-11)

Bug Fixes

  • ui-time-select: fix nonpersistent event issue in Timeselect with react 16 (77bc913)

8.43.0 (2023-09-07)

Bug Fixes

  • ui-responsive: round dimensions for query matcher (5cd4e24)
  • ui-text-area: fix textarea so selenium tests will pass (2e54ae3)

Features

  • ui-responsive: add support for multiple responsive breakpoints (255a832)

8.42.0 (2023-09-07)

Bug Fixes

  • ui-responsive: round dimensions for query matcher (5cd4e24)

Features

  • ui-responsive: add support for multiple responsive breakpoints (255a832)

8.41.1 (2023-08-24)

Bug Fixes

  • fix document in undefined SSR errors (4c6e998)
  • ui-dom-utils: fix findFocusable throwing nullpointer exceptions (2169bff)
  • ui-source-code-editor: fix broken codemirror syntax highlight (155b42a)

8.41.0 (2023-08-21)

Features

  • shared-types,ui-theme-tokens: add new 'desktop' and 'tablet' breakpoints to themes (bcda3d0)

8.40.1 (2023-08-18)

Bug Fixes

  • ui-color-picker: add id as allowed prop for color-picker (2ced2b2)

8.40.0 (2023-08-17)

Bug Fixes

  • ui-color-picker: fix broken commonjs import for color-picker (32dbd2b)
  • ui-flex: documentation wording (b4a1374)
  • ui-selectable: move Selectable onClick listener one level down (5c40100)

Features

  • emotion,shared-types,ui-theme-tokens: add mediumSmall spacing to themes (d909ded)

8.39.0 (2023-07-21)

Bug Fixes

  • ui-a11y-utils: fix modal closing when losing focus (5deda70)
  • ui-a11y-utils: fix parent dialog closing when file picker input is closed (1732297)
  • ui-dom-utils: findFocusable only treats an element as hidden if display is 'none' (69b3949)
  • ui-text-area: add ssr fix for resize observer (412c7a1)
  • ui-text-area: fix focusring issues in case of horizontal resize (dcbda2e)
  • ui-text-input: fix textInput, where onFocus fires twice. (eefd8ce)

Features

  • instui-config,shared-types,ui-navigation,ui-side-nav-bar,ui: add side-nav-bar component and deprecate navigation (45848bf)

8.38.1 (2023-06-13)

Bug Fixes

  • ui-dialog,ui-a11y-utils: fix focusing not yet positioned elements (f85b825)
  • ui-popover: fix TruncateText in Popover not accepting click events (27de84b)

8.38.0 (2023-05-15)

Bug Fixes

  • shared-types,ui-menu: menu background overlapping borders (a8262de)
  • ui-a11y-utils: dialog closes when release mouse outside (4989b56)
  • ui-date-time-input: fix onChange event not firing sometimes (4eaf63c)
  • ui-date-time-input, ui-time-select: Fix committing value issues when allowNonStepInput is true. (30c9a98)

Features

  • shared-types,ui-flex: add gap prop to Flex (e1a3396)

8.37.0 (2023-04-25)

Bug Fixes

  • ui-date-time-input: dateTimeInput does not trigger invalidDateTimeMessage on blur (307a3f4)
  • ui-grid: fix Grid.Col offset style calculation (91e532c)
  • ui-motion: transition's behavior conflict (57bbc92)
  • ui-progress: fix ProgressBar info and success color in inverse mode (920fa49)
  • ui-text-input: fix TextInput padding calculation vol.2. (757c04a), closes PR#1178

Features

  • ui-date-time-input: allow the user to enter non-step divisible time values (2cf6c9d)
  • ui-progress: add shouldAnimate prop to ProgressBar (c528956)
  • ui-source-code-editor: add height and width props to SourceCodeEditor (4e9b1e7)

Performance Improvements

  • ui-select: improve perf for large amount of items (396a13b)

8.36.0 (2023-03-23)

Bug Fixes

  • ui-text-input: fix padding calculation for before/after element (fe0f225)

Features

  • ui-badge: add display prop to Badge (de14020)

8.35.1 (2023-03-10)

Bug Fixes

  • ui-dialog,ui-drawer-layout,ui-modal,ui-popover,ui-tray: remove browser reliant Element usage (8c49c42)
  • ui-dom-utils: add contenteditable to focusableSelector (21c0108)
  • ui-source-code-editor: sourceCodeEditor doesn't delete text when select all with cmd+a in controlled mode (89bf43f)

8.35.0 (2023-02-17)

Features

  • ui-time-select: allow non-step values with allowNonStepInput (6dace32)

8.34.0 (2023-02-10)

Bug Fixes

  • ui-a11y-utils: fix type for removedNodes and addedNodes (f43c2ff)
  • ui-color-picker: axe-check tests failing (d32f395)

Features

  • ui-time-select: added "mountNode" property; (c7df9a1)

8.33.2 (2023-01-25)

Bug Fixes

  • ui-breadcrumb: fix prop typing for Breadcrumb.Link (9093c3e)
  • ui-modal: fix screenreader focus order in Chrome (f32ae67)

8.33.1 (2023-01-06)

Bug Fixes

  • ui-top-nav-bar: fix TopNavBar smallViewport mode example (7ddaf8a)
  • ui-top-nav-bar: smallViewport menu should close on layout switch (10cd5a6)

8.33.0 (2023-01-04)

Bug Fixes

  • shared-types,ui-color-picker: colorPicker css problem (82ce9e3)
  • ui-drilldown: selectableType=single works like radio buttons (3a20ddb)
  • ui-tabs: tab bar is not scrollable on the left side (d369138)

Features

  • ui-drilldown: add selected prop to Drilldown.Option which allows controlled behavior (5776937)
  • ui-icons: add arrow-nest icon (cb17dff)

8.32.1 (2022-12-01)

Bug Fixes

  • ui-source-code-editor: update codemirror dependencies and fix rtlMoveVisually bug (ae39490)

8.32.0 (2022-11-23)

Features

  • emotion,ui-babel-preset,ui-source-code-editor: remove lodash (4670be5)
  • ui-drawer-layout: expose overflow css props as themeable variables (f64159c)

8.31.0 (2022-11-21)

Bug Fixes

  • ui-tray: pass role attribute to Dialog instead of the \<span\> (5610130)
  • ui-truncate-list: take the container padding into accout in the maxWidth calculation (013ab3b)

Features

  • shared-types,ui,ui-top-nav-bar: add new TopNavBar component (3f27257)
  • ui-dom-utils: add pseudoElt parameter to getComputedStyle util (b73434c)
  • ui-tray: pass extra Transition props on Tray (afcaf92)

8.30.0 (2022-10-26)

Bug Fixes

  • ui-code-editor: Fix global is undefined build error that could come up using certain bundlers(vite, esbuild) by integrating react-codemirror2 dependency into the CodeEditor component. (1fee246)

Features

  • ui-img: add 'loading' prop to Img component (0b69af2)

8.29.0 (2022-09-29)

Bug Fixes

  • ui-text-input: remove focusring when receiving disabled prop (f16e88e)
  • ui-truncate-text: impove TruncateText's performance for large amounts of contents (22fcf14)

Features

  • ui-dom-utils: add webcomponent support for certain utility functions (1bade83)
  • ui-icons: add award icon (4c7c37c)
  • ui-icons: add predictive icon (e9b210b)

8.28.2 (2022-09-16)

Bug Fixes

  • ui: wrong peer dependency for react (80580a7)

8.28.1 (2022-09-12)

Bug Fixes

  • fix issues in some components when using React.StrictMode and React 18 (972bb93)

8.28.0 (2022-09-02)

Bug Fixes

  • ui-pagination: wrong type description for Pagination's onClick (867eb1a)

  • fix propType for liveRegion (e9ae7d3)

    WARNING! In case of SSR(server side rendering) and Jest you will need to substitute Element from the DOM API because it is used by some components: Element = typeof Element === 'undefined' ? function(){} : Element.

    // jest.config.js
    module.exports = {
      ...
      globals: {
        Element: function () {}
      }
    }
    

Features

  • ui-drilldown: add minHeight and minWidth props to Drilldown (7e10b29)
  • ui-drilldown: add positionContainerDisplay prop to Drilldown (834302c)
  • ui-icons: add header icon (46932bc)
  • ui-menu: add positionContainerDisplay prop to Menu (e8ed689)
  • ui-popover: add positionContainerDisplay prop to Popover (fdcacec)
  • ui-position: add containerDisplay prop to Position (0fdd83f)
  • ui-responsive: add elementRef prop to Responsive (be7a338)
  • ui-tray: add position theme variable to Tray (375ed68)
  • ui-truncate-list,ui: add TruncateList utility component (f8b17ea)

8.27.0 (2022-07-25)

Bug Fixes

  • code of Conduct and License pages not show (edf524c)
  • fix TS type and propType for liveRegion prop (d0143ce)
  • ui-webpack-config: iconExample is missing from SVGIcon and InlineSVG docs pages (7ef6282)

Features

8.26.3 (2022-07-14)

Bug Fixes

  • ui-color-picker,ui-date-input,ui-date-time-input,ui-select,ui-simple-select,ui-text-input,ui-time-select: before/after elements should inherit input color (7daf257)

8.26.2 (2022-07-11)

Bug Fixes

  • ui-color-picker: fix required props for ColorPicker and sub-components (4d38fb6)

    WARNING! Since this commit fixes props that should be required props, some code changes might be needed.

8.26.1 (2022-07-06)

Bug Fixes

  • ui-date-time-input: fix enter not applyting date in React 16 (244bb8d)

8.26.0 (2022-06-30)

Features

  • ui-color-picker: Add ColorPicker component (1cbd877)
  • ui-source-code-editor,ui-code-editor,ui: add new SourceCodeEditor component (b5064f5)
  • ui-responsive: add display prop to Responsive (b5663dc)
  • ui-tabs: expose defaultOverflowY theme variable on Tabs.Panel (a4b9540)
ColorPicker component

The ColorPicker is a versatile component that can be used to select colors and check their contrast ratios.

This commit also adds the ColorPicker's subcomponents as standalone components: ColorIndicator, ColorMixer, ColorPreset, ColorContrast.

SourceCodeEditor component

A wrapper around the popular CodeMirror V6 code editor component. CodeMirror provides a text input field with features like line gutters, syntax highlighting, and autocompletion. It has better accessibility features than the (now deprecated) CodeEditor component that is based on the former version 5 of CodeMirror.

8.25.0 (2022-06-03)

Bug Fixes

  • ui-webpack-config: fix icon fonts not loading correctly (5947205)

Features

  • ui-icons: add new configure icon (04059ea)
  • ui-icons: replace the bank icon with a new one (c1c83a1)

8.24.5 (2022-05-31)

Bug Fixes

  • ui-a11y-utils,ui-dialog,ui-modal: calling stale callbacks (c24cb92)
  • ui-grid: modify Ts types for GridCol to accept positive fractions as well (0f44843)

8.24.4 (2022-05-27)

DEPRECATED

This release is deprecated, because we encountered problems during the release.

8.24.3 (2022-05-25)

Features

  • ui-tree-browser Add compareFunc for fine-grained ordering of the elements.

Bug Fixes

  • ui-icons-build,ui-icons: correct instructure icon displaying canvas logo (53afffb)

8.24.2 (2022-05-02)

Bug Fixes

  • theme-registry: fix theme registry name collision (7dc4550)

8.24.1 (2022-04-29)

Bug Fixes

  • ui-date-time-input,ui-time-select: fix selection getting lost after value change (0604ec5)
  • ui-drilldown,ui-options: fix VoiceOver and Safari not reading Options.Item elements (102c13d)

8.24.0 (2022-04-26)

Bug Fixes

  • ui-date-time-input,ui-time-select: setting non step divisible value works (36d76fd)
  • ui-date-time-input: fix Date input to fill container in DateTimeInput (4069706)
  • ui-text-area: add missing ref to TextArea (aa898b3)
  • ui-text-input: fix empty TextInput before/after elements having padding (a5786c9)

Features

  • Docs: Render Table of Contents block on docs pages (a64fbdb)
  • theme-registry: add theme-registry package (63216ef)
  • ui-date-time-input: allow to disable dates in the calendar
  • ui-date-time-input: add rowSpacing and colSpacing props to DateTimeInput (5e829fa)
  • ui-link: add role and forceButtonRole prop to Link component (11828d0)

8.23.0 (2022-04-07)

Bug Fixes

  • ui-codemods: fix codemod paths in docs (.ts instead of .js) (2372045)
  • ui-motion,ui-portal: fix ref for Transition and Portal (b847d9e)
  • ui-simple-select: revert refactor on SimpleSelect (a6613e9)

Features

  • shared-types,ui-range-input: add accessible variant for RangeInput handle (e71453c)

8.22.0 (2022-03-31)

Features

  • ui-drilldown,ui: add new Drilldown component (44e7e13)
Drilldown component

The Drilldown component exists to support navigating and managing tree structures in compact spaces. It is a diverse component that displays hierarchical data in a fashion that allows the users to “drill down” and dig deeper into the layers (pages) of the data structure. It has similar look and features to the Menu, Select and TreeBrowser components.

8.21.0 (2022-03-30)

Bug Fixes

  • emotion: fix text direction not working on simple html elements (22c25bc)
  • ui-text-input: fix Event handling for TextInput, so that the focus ring will appear as intended when used as Popover trigger (002505b)

Features

  • ui-icons: update stats and analytics icons (09110e7)

8.20.0 (2022-03-22)

Bug Fixes

  • ui-icons-build,ui-icons: fix SVG icon optimization script to correctly load config (cd35e6d)

Features

  • ui-icons: add mini-arrow-double icon to the Iconography (6718338)
  • ui-icons: add new icons: canvas-logo, cloud-upload, elevate-logo, impact-logo and mastery-logo. (5e549a0)
  • ui-options: add href prop to Options.Item (49bf28c)
  • ui-options: modify default nested Options padding to have no extra padding (bfc4f7c)
  • ui-table: add mini-arrow-double icon to sortable ColHeaders (6e60ef1)

8.19.0 (2022-03-16)

Bug Fixes

  • ui-babel-preset: add back removed @babel/plugin-proposal-optional-chaining (435c9ae)
  • ui-options: fix themeOverride prop being passed to the underlying div (669aa58)

Features

  • emotion: themeOverride prop to accept function (505f0bf)

8.18.0 (2022-02-23)

Bug Fixes

  • ui-code-editor: change dynamically imported CodeMirror language modes (8e38d5a)
    • this fix might cause some jest tests to fail, details about how to fix them
  • ui-portal: fix Portal not being SSR-able (cb1375f)
  • ui-radio-input: fix cursor of radioinput, version toggle in Safari (0670cf5)

Features

  • InstUI components can be rendered on the server side (SSR) - more details

8.17.0 (2022-02-07)

Bug Fixes

  • remove type:"commonjs" from package.json files (0b243be)
  • ui-scripts: remove package.json with type:"module" from es folders (da3f5ef)

Features

  • ui-responsive: modify Responsive "props override" error to warning (4935fa8)

8.16.0 (2022-02-03)

Features

  • ui-select: add optionsMaxHeight prop to Select (cf361bf)
  • ui-simple-select: add optionsMaxHeight prop to SimpleSelect (c205f80)

8.15.0 (2022-01-26)

Bug Fixes

  • emotion: make theme componentOverrides apply to Buttons (8a3583e)
  • ui-code-editor: should tab out from the editor when it's readonly (bcd0bf6)
  • ui-range-input: fixed empty label when displayValue={true} but has no value/defaultValue (f238a9f)

Features

  • ui-buttons: deprecate string value for BaseButton and CloseButton tabIndex (b1ff461)
  • ui-options: add description and descriptionRole props to Options.Item (a2cfa0c)
  • ui-options: add props to set the vALign of Options.Item before/after content (be635ba)
  • ui-overlays: deprecate unused props: applicationElement of Overlay, onDismiss of Mask (4c32099)
  • ui-text: deprecate the warning color variant for Text (8e021a5)

8.14.0 (2021-12-16)

Bug Fixes

  • ui-drawer-layout: fix tray direction calculation (ee3d106)
  • ui-icons: make arrow-double-end and arrow-double-start icons to be bidirectional (7f86f28)
  • ui-text-input: fix htmlSize prop to accept only numbers (1b5f16b)

Features

  • ui-number-input,ui-pagination: add Pagination input variant, NumberInput textAlign prop (5b90d60)
  • ui-pagination: add new arrow button features (80a43fe)

Deprecations

  • ui-navigation: the Navigation component has been deprecated and will be removed from instructure-ui in version 9 (5605b7f)

8.13.0 (2021-12-01)

Bug Fixes

  • ui-popover,ui-tooltip: fixed Tooltip triggers being transformed to links/buttons (07b0037)
  • ui-text-area: fix jumping scroll issue (9f4d9f9)

Features

  • canvas-theme,ui-theme-tokens,ui-themes: update canvas theme colors (a72237d)
  • instructure-theme,ui-theme-tokens,ui-themes: update Instructure theme colors (07352f5)
  • ui-badge: add inverse variant to Badge (036388d)
  • ui-form-field: make FormField messages accept ReactNode text, not just string (4d36973)
  • ui-tree-browser: add 'sortOrder' property to TreeBrowser component (e669e54)
  • ui-view: vendor prefix all view style props (4814652)

8.12.0 (2021-11-17)

Bug Fixes

  • emotion: fix EmotionThemeProvider falling back to using Canvas theme (cc5ce19)
  • ui-avatar: add unset logic for image loaded state (e6665c1)
  • ui-dialog,ui-drawer-layout: fix Dialog role attribute (2681e14)
  • ui-modal: fix Modal.Header padding when it has CloseButton (82b8314)
  • ui-motion: fix interrupted transition not removing transition classes (db3fd4f)
  • ui-scripts: resolve webpack 5 commonjs build issue (d51a85e), closes #778
  • ui-time-select: fix timeselect highlight behaviour (9653a89)

Features

  • shared-types,ui-checkbox,ui-radio-input: make checkbox and radio borders consistent (a6aaef2)
  • ui-avatar: add hasInverseColor prop to Avatars (feef554)
  • ui-avatar: add renderIcon prop to Avatar (d7233d8)
  • ui-date-input: add display prop to DateInput for fluid width (10d1551)
  • ui-date-time-input,ui-i18n,ui-time-select: add DateTimeInput (1054ae9)
  • ui-icons: add arrow-double-start, arrow-double-end icons (e3249d2)
  • ui-tabs: update Tabs focus styles to inset focus ring (3a59c3f)

8.11.1 (2021-10-19)

Bug Fixes

  • ui-options,ui-select,ui-simple-select: fix icon positioning (8536a1c)

8.11.0 (2021-10-15)

Note:

The bidirectionalPolyfill util has been deleted. With the release of Safari 15 (Sep 20, 2021) all of our supported browsers (last 2 major versions) can handle CSS Logical Properties without any polyfills and prefixes, so this util was no longer needed.

Bug Fixes

  • ui-menu: fix menu tooltip position (e60a4a9)
  • ui-svg-images: fix icons getting cropped in zoomed windows (732ac88)

Features

  • ui-modal: add spacing prop to Modal.Header (3887f80)

8.10.2 (2021-10-01)

Note:

This version contains no new Features or Bug Fixes. But internally we have changed how we access the DOM to be in line with React best practices.

Warning: XYZ doesn't have "ref" property. ReactDOM.findDOMNode is deprecated in Strict mode, consider using refs instead. From InstUI v9, components must have the "ref" property for findDOMNode to work.

If you see warnings like the one above, please read this article on how to update your code here: Accessing the DOM

8.10.1 (2021-10-01)

Bug Fixes

  • ui-popover: popover does not update on certain prop changes (93b506f)

8.10.0 (2021-09-28)

Bug Fixes

  • emotion,ui-i18n: decorator adds allowedProps property (ddc7880)
  • ui-dom-utils: remove el.contentWindow.document from getFrameDocumentSafe (bf1e82e)
  • ui-tabs: Fix small typo in ui-tabs readme (6a2a770)

Features

  • ui-tabs: add 'fixHeight' prop to Tabs (b63e6e7)

8.9.1 (2021-09-16)

Bug Fixes

  • shared-types: fix types not getting published (000c779)

8.9.0 (2021-09-15)

Bug Fixes

  • fix shared-types TS errors (7b83164)

Features

  • ui-icons: add immersive-reader icon (d5d6d4c)

8.8.0 (2021-08-27)

Bug Fixes

  • link correct source code on docs page for legacy versions (82dbb18)
  • ui-billboard: fix heading margin when size is small (36505bb)

Features

  • ui-alerts: add hasShadow property to Alerts (7c0bca0)
  • ui-icons: add button-and-icon-maker icon (6764ecd)
  • ui-icons: add subtitles icon (1470957)
  • ui-karma-config: tests can be run from the IDE (fafddf9)
  • add better TypeScript types for multiple packages

8.7.0 (2021-07-16)

Bug Fixes

  • ui-dom-utils: remove supportsObjectFit from the repo, since it was for IE11 support (1a94c52)
  • ui-dialog: cleanup pending timeouts on unmount (02d1cdf), closes #623
  • ui-options: add aria-hidden to Options label span (29dab5a)
  • emotionThemeProvider examples not working in Codepen (545b326)

Features

  • ui-avatar: add color prop for setting the color of the initials (7c65e4e)
  • ui-avatar: add xx-small and xx-large sizes to Avatar (cee3840)
  • ui-avatar: loaded image in Avatar has box-shadow instead of border (small visual change!) (8eb9075)
  • ui-icons: add important-dates icon (3a3b2d8)
  • ui-icons-build: update gulp-svgmin dependency to v4 (31de5b2)
  • ui-i18n: Deprecate DateTime. This is a thin wrapper around moment.js, please use moment or some other time library instead.
  • ui-portal: remove SubtreePortal private component, not needed with react 16 (396ea60)
  • ui-scripts: update http-server dependency from ^0.11.1 to ^0.12.0 (8ccef24)
  • ui-time-select: replace moment.js with dayjs. We only support locales, supported by canvas. (https://community.canvaslms.com/t5/Canvas-Basics-Guide/What-languages-does-Canvas-support/ta-p/19) (11211fc)
  • add support for React 17 (f647826)
  • remove polyfills, since all supported browsers are feature rich enough (40d3a65)

8.6.0 (2021-06-18)

Bug Fixes

  • ui-popover: inverse color Popover without arrow shouldn't have light border (e7eea77)
  • ui-popover: recalculate offset and position on prop change (c35c9f2)
  • ui-test-sandbox: fix issue with emotion can't insert node inside head (361909c)

Features

  • ui-menu: propagate offset props from Menu to Popover (ad54d1f)
  • add "tabbing out" logic to the Drilldown Menu pattern (d5e5db3)
  • ui-icons: add crop, rotate-right and rotate-left icons (1d91032)
  • ui-options: add option to recolor the icon of Option.Item (39e1caf)
  • ui-select,ui-simple-select: pass option props to the label before/after render prop (d548752)

Performance Improvements

  • ui-buttons: use span instead of Flex (e019e94)
  • ui-text-input: replace Flex with styled spans (51c3922)

8.5.0 (2021-06-09)

Bug Fixes

  • emotion: add componentId to match with componenet name in docs (cc255eb)
  • ui-tree-browser: properly hide root collection if rootId === 0 (1fb53c8)

Features

  • ui-table: add stackedSortByLabel prop to Table.ColHeader (13f0cce)

8.4.0 (2021-05-11)

Bug Fixes

  • ui-dialog: fix page scrolling up when Menu opens (40736e3)
  • fix all inter-package dependencies using fix version (75cd898)
  • ui-webpack-config: fix security issue caused by terser-webpack-plugin (f026bc2)

8.3.0 (2021-05-04)

Bug Fixes

  • ui: export EmotionThemeProvider and withStyle from ui package (61e153c)
  • ui-tree-browser: fix root item rendering with wrong fontFamily (12d061b)

Features

  • ui-babel-preset: remove not needed Babel plugins (e23eea6)
  • ui-number-input: add inputMode prop to NumberInput (8bf3091)

Performance improvements

  • emotion: upgrade to Emotion 11 whose parser was updated to a more performant one (bcafe99)
  • ui-babel-preset: removing unneeded babel plugins are leading to performance improvements (e23eea6)

8.2.1 (2021-04-22)

Bug Fixes

  • ui-select,ui-simple-select,ui-text-input: fix empty space before or after input (b2b18cb)
  • ui-link: fix link not displaying outline on focus (8f36891)
  • ui-menu: fix Menu keyboard navigation on submenus (cbdabb3)
  • ui-tree-browser: fix large thumbnail style; PR fixes (4d7eee1)

Features

  • ui-tree-browser: Add new getCollectionProps (7926b3d)
  • ui-tree-browser: allow to render custom content in TreeBrowser nodes (af9eb19)
  • ui-tree-browser: remove dash at root icon (e671214)

8.2.0 (2021-04-22)

DEPRECATED

This release is deprecated, because we encountered problems during the release.

8.1.0 (2021-04-15)

Bug Fixes

  • emotion: fix ui-babel-preset dependency (fb1443e)
  • template-app,ui-template-scripts: fix template app generation error (f3a5a7c)
  • ui: add SimpleSelect export to @instructure/ui (e6efc4d)
  • ui-navigation: fix AppNav crashing with a single Item (3023464)
  • ui-select: fix null pointer exception in Select (04ae3a4)
  • ui-tree-browser: fix vertical line extending into collection icon (eb7eec7)
  • ui-tree-browser: list root items too when showRootCollection is false (d6b5b44)

Features

  • ui-simple-select: add number value option to simple-select (3c422d8)

8.0.0 (2021-03-29)

The main feature for version 8 is the switch of the theming engine, we replaced the in-house themeable theming with the popular emotion.js.

Bug Fixes

  • ui-checkbox: add spacing between single checkbox and messages (e67bd98)
  • ui-popover: tooltips dont dismiss when hovered over (a11y) (7b166c1)
  • add all components to docs dependencies (7fb5f51)

Code Refactoring

  • Migrated the package and it's component(s) from using ui-themeable to using the new theming solution based on emotion.js.
  • emotion,ui-themeable: move ThemeablePropValues and ThemeablePropTypes util to emotion pack (2d0ac1d)
  • emotion,ui-themeable,ui-view: move getShorthandPropValue from ui-themeable to emotion (91fd876)
  • emotion,ui-themeable,ui-view: move makeThemeVars util from ui-themeable to emotion (f2291ba)
  • emotion,ui-themeable,ui-view: move mirrorShorthand utils to emotion (c779407)
  • ui-avatar: removed deprecated inline prop (410d6ed)
  • ui-avatar: removed deprecated variant prop (ec75e0f)
  • ui-babel-preset,ui-webpack-config: remove unnecessary babel and postcss plugins (457bd82)
  • ui-breadcrumb: remove deprecated icon prop (ebde230)
  • ui-buttons: remove deprecated DeprecatedButton component (c0e2d03)
  • ui-buttons: remove deprecated icon prop (e024d59)
  • ui-buttons: remove deprecated variant prop (755608a)
  • ui-buttons: remove deprecated CloseButton props (cf8657d)
  • ui-buttons: removed deprecated buttonRef prop (92330fd)
  • ui-buttons,ui-toggle-details: remove deprecated fluidWidth prop (0ced14e)
  • ui-byline: remove deprecated Media component (8ba146c)
  • ui-date-input: remove deprecated label prop (55a0066)
  • ui-file-drop: removed deprecated allowMultiple prop (e67dee7)
  • ui-file-drop: removed deprecated allowRepeatFileSelection prop (90b5f19)
  • ui-file-drop: removed deprecated enablePreview prop (8a18fcd)
  • ui-file-drop: removed deprecated label prop (5a0d088)
  • ui-flex: removed deprecated grow prop (01cf295)
  • ui-flex: removed deprecated inline prop (92834f0)
  • ui-flex: removed deprecated shrink prop (50aab33)
  • ui-flex: removed deprecated visualDebug prop (40a0c92)
  • ui-flex: removed deprecated wrapItems prop (57ef6ab)
  • ui-focusable: removed deprecated FocusableView component (cb1eff4)
  • ui-heading: remove deprecated themeAdapter from Heading (bb1f68c)
  • ui-heading: removed deprecated ellipsis prop (4eacdef)
  • ui-img: removed deprecated blur prop, use withBlur instead. (3db9952)
  • ui-img: removed deprecated grayscale prop (5087021)
  • ui-img: removed deprecated inline prop (43868ed)
  • ui-link: removed deprecated linkRef prop (f09d9e1)
  • ui-link: removed deprecated variant prop (624d396)
  • ui-list: deprecate variant inline styles (376abd7)
  • ui-metric,ui: removed deprecated MetricList component (d795851)
  • ui-metric,ui: removed deprecated MetricListItem component (b8e52b8)
  • ui-number-input: removed deprecated inline prop (a985528)
  • ui-number-input: removed deprecated label prop (15060d7)
  • ui-number-input: removed deprecated required prop (987b36f)
  • ui-pill,ui-responsive: remove deprecated props from Pill (125f14c)
  • ui-popover: removed deprecated alignArrow prop (3799228)
  • ui-popover: removed deprecated defaultShow prop (ecfb67f)
  • ui-popover: removed deprecated label prop (efb32a7)
  • ui-popover: removed deprecated onDismiss prop (5a39dd6)
  • ui-popover: removed deprecated onShow prop (43007c0)
  • ui-popover: removed deprecated onToggle prop (bdfcda8)
  • ui-popover: removed deprecated PopoverContent component (5e5cf71)
  • ui-popover: removed deprecated PopoverTrigger component (9768ade)
  • ui-popover: removed deprecated show prop (6000c93)
  • ui-popover: removed deprecated trackPosition prop (e60e89b)
  • ui-popover: removed deprecated variant prop (1d16dff)
  • ui-position: deprecate trackPosition and over properties (b636040)
  • ui-position: deprecate Position.Target and Position.Content components (9c731c8)
  • ui-progress,ui: delete deprecated Progress component (69a84d0)
  • ui-spinner: removed deprecated title prop (44dc5b1)
  • ui-tabs: remove deprecated selected and disabled props (3472cf2)
  • ui-tabs: remove deprecated selectedIndex prop (1557b96)
  • ui-tabs: remove deprecated size prop (fecbf13)
  • ui-tabs: remove deprecated title prop (3e44810)
  • ui-tabs: remove deprecated props onChange and focus (a3c640f)
  • ui-text: remove color type error (6d44017)
  • ui-text-input: removed deprecated icon prop (694962c)
  • ui-text-input: removed deprecated inline prop (7a51241)
  • ui-text-input: removed deprecated label prop (dc01d90)
  • ui-text-input: removed deprecated required prop (20cd5dd)
  • ui-time-select: removed deprecated label prop (fce697f)
  • ui-tooltip: tip and variant properties deprecated (cd17b6b)
  • ui-view: remove deprecated themeAdapter (bbfb295)
  • ui-view: removed deprecated focused prop (3980814)
  • ui-view: removed deprecated visualDebug prop (6d8e0bb)

Features

  • instui-cli,ui-upgrade-scripts: add codemod to rename theme prop to themeOverride (e0607dd)
  • instui-config: add codemod for themeable util imports (89a95f8)
  • ui-color-utils: add utility mehtod to convert a color string to a hexadecimal color string in the #AABBCC format(20a3a69)
  • ui-editable,ui-focusable: delete depracated FocusableView (fac2670)
  • ui-i18n: remove decimal.js, its .mjs export is causing issues with Jest (2e00b30)
  • ui-icons: add new icons and update old ones (03e6027)
  • ui-icons-build,ui-icons: generate icons from svg files (7bf065a)
  • ui-test-sandbox,ui: delete ui-themeable package and usages (60e4080)

Performance Improvements

  • ui-docs-client: speed up iconography page (d16a046)

BREAKING CHANGES

  • ui-checkbox: VISUAL CHANGE: Since there is more space between the checkbox and the messages, it can potentially break layouts (vertically more pixels).
  • It is no longer a valid strategy to surround jsx code with try..catch because writing something in the console does not cause errors to be thrown. Use spy(console, 'error') instead. Also, when accessing Component.displayName, use Component.displayName || Component.name with the name as a fallback instead.
  • ui-babel-preset,ui-webpack-config: Removed the following packages because they were supporting ui-themable, and are no longer needed when using emotion theming: babel-plugin-themeable-styles, postcss-themeable-styles, ui-postcss-config.
  • ui-test-sandbox,ui: The whole ui-themeable package was deleted. It is superseeded by the emotion package.
  • ui-tabs: SecondarySelectedColor style was removed, now just secondaryColor determines the color of the secondary tab. VISUAL CHANGE: secondaryColor changed to textDarkest, in the Canvas theme to ic-brand-font-color-dark
  • emotion,ui-themeable,ui-view: Moved mirrorShorthand, mirrorShorthandEdges, mirrorShorthandCorners utils to from ui-themeable to emotion package.
  • emotion,ui-themeable,ui-view: Moved getShorthandPropValue from ui-themeable to emotion package.
  • emotion,ui-themeable,ui-view: Moved makeThemeVars util from ui-themeable to emotion package.
  • emotion,ui-themeable: Moved ThemeablePropValues and ThemeablePropTypes utils from ui-themeableto emotion package.
  • ui-heading: The theme variable 'fontFamily' has been split into the following values, override them individually: h1FontFamily, h2FontFamily, h3FontFamily, h4FontFamily, h5FontFamily.
  • ui-view: Removed themeAdapter for deprecated theme variables: 'borderColorDefault' is now borderColorPrimary, 'borderColorInverse' is now borderColorTransparent, 'colorInverse' is now colorPrimaryInverse, 'background' is now backgroundPrimary, 'backgroundLight' is now backgroundSecondary, 'backgroundInverse' is now backgroundPrimaryInverse.
  • ui-view: Removed deprecated visualDebug prop, use withVisualDebug instead.
  • ui-view: Removed deprecated focused prop, use withFocusOutline instead.
  • ui-img: Removed deprecated blur prop, use withBlur instead.
  • ui-img: Removed deprecated grayscale prop, use withGrayscale instead.
  • ui-img: Removed deprecated inline prop, use display ('inline-block' or ‘block') instead.
  • ui-heading: Removed deprecated ellipsis prop, use TruncateText component child instead.
  • ui-focusable: Removed deprecated FocusableView component, use View instead.
  • ui-avatar: Removed deprecated variant prop, use shape instead.
  • ui-avatar: Removed deprecated inline prop, use display ('inline-block' or 'block') instead.
  • ui-number-input: Removed deprecated inline prop, use display ('inline-block' or 'block') instead.
  • ui-number-input: Removed deprecated required prop, use isRequired instead.
  • ui-number-input: Removed deprecated label prop, use renderLabel instead.
  • ui-time-select: Removed deprecated label prop, use renderLabel instead.
  • ui-text-input: Removed deprecated icon prop, use renderAfterInput instead.
  • ui-text-input: Removed deprecated inline prop, use display ('inline-block' or ‘block') instead.
  • ui-text-input: Removed deprecated required prop, use isRequired instead.
  • ui-text-input: Removed deprecated label prop, use renderLabel instead.
  • ui-spinner: Removed deprecated title prop, use renderTitle instead.
  • ui-popover: Removed deprecated onDismiss prop, use onHideContent instead.
  • ui-popover: Removed deprecated alignArrow prop, use shouldAlignArrow instead.
  • ui-popover: Removed deprecated trackPosition prop, use shouldTrackPosition instead.
  • ui-popover: Removed deprecated label prop, use screenReaderLabel instead.
  • ui-popover: Removed deprecated variant prop, use color ('primary' or 'primary-inverse') instead.
  • ui-popover: Removed deprecated defaultShow prop, use defaultIsShowingContent instead.
  • ui-popover: Removed deprecated show prop, use isShowingContent instead.
  • ui-popover: Removed deprecated onToggle prop, use onShowContent and onHideContent instead.
  • ui-popover: Removed deprecated onShow prop, use onPositioned instead.
  • ui-popover: Removed deprecated PopoverContent component, use Popover's children instead.
  • ui-popover: Removed deprecated PopoverTrigger component, use Popover's renderTrigger prop instead.
  • ui-metric,ui: Removed deprecated MetricList component, use MetricGroup instead.
  • ui-metric,ui: Removed deprecated MetricListItem component, use Metric instead.
  • ui-link: Removed deprecated variant prop, use color ('link' or ’link-inverse') instead.
  • ui-link: Removed deprecated linkRef prop, use elementRef instead.
  • ui-flex: Removed deprecated shrink prop, use shouldShrink instead.
  • ui-flex: Removed deprecated grow prop, use shouldGrow instead.
  • ui-flex: Removed deprecated visualDebug prop, use withVisualDebug instead.
  • ui-flex: Removed deprecated wrapItems prop, use wrap ('wrap', 'no-wrap' or 'wrap-reverse') instead.
  • ui-flex: Removed deprecated inline prop, use display (‘flex’ or ‘inline-flex’) instead.
  • ui-file-drop: Removed deprecated allowMultiple prop, use shouldAllowMultiple instead.
  • ui-file-drop: Removed deprecated allowRepeatFileSelection prop, use shouldAllowRepeats instead.
  • ui-file-drop: Removed deprecated enablePreview prop, use shouldEnablePreview instead.
  • ui-file-drop: Removed deprecated label prop, use renderLabel instead.
  • ui-byline: Removed deprecated Media component, use Byline instead.
  • ui-breadcrumb: Removed deprecated icon prop, use renderIcon instead.
  • ui-progress,ui: Deleted deprecated Progress component, use ProgressBar or ProgressCircle instead.
  • ui-date-input: Removed deprecated label prop: use renderLabel prop instead.
  • ui-checkbox: Removed deprecated theme variables: baseSizeSmall, baseSizeMedium, baseSizeLarge. Use toggleSize instead.
  • ui-number-input: Removed deprecated props: label, required, inline
  • ui-tabs: Removed deprecated onChange prop: use onRequestTabChange instead. Removed deprecated focus prop: use shouldFocusOnRender instead.
  • ui-tabs: Removed deprecated selectedIndex prop.
  • ui-tabs: Removed deprecated size prop, use maxWidth instead.
  • ui-tabs: Removed deprecated title prop: use renderTitle instead.
  • ui-tabs: [Tabs.Tab and Tabs.Panel] Removed deprecated selected prop: use isSelected instead. Removed deprecated disabled prop: use isDisabled instead.
  • ui-buttons: Removed deprecated CloseButton prop children, use screenReaderLabel instead. Removed deprecated CloseButton prop variant, use color instead.
  • ui-buttons: Remove deprecated DeprecatedButton component.
  • ui-buttons: Removed deprecated variant prop. The default value for color prop is now secondary.
  • ui-buttons: Removed deprecated icon prop, use renderIcon instead.
  • ui-buttons,ui-toggle-details: Removed deprecated fluidWidth prop, set display="block" and textAlign="start" instead.
  • ui-buttons: removed deprecared buttonRef prop from Button and CloseButton, use elementRef instead.
  • ui-position: trackPosition prop is deprecated, use shouldTrackPosition prop instead. over prop is depreacted, use shouldPositionOverTarget prop instead.
  • ui-position: Position.Target is deprecated, use Position's renderTarget prop instead. Position.Content is deprecated, use Position's children instead.
  • ui-position,ui-view: The "box-sizing" and "z-index" css properties are now added as inline css on the Content element, might break other rules added in class.
  • ui-table: Removed support for deprecated "mode" property, since it was deprecated in v7.
  • ui-list: Removed variant property: use InlineList component for inline lists and isUnstyled boolean prop for unstyled lists. Removed inline delimiter values (pipe, slash and arrow) from delimiter property.
  • ui-pill,ui-responsive: Removed text property: use children instead. Children is now required. Removed variant property: use color instead. Within the new color prop default is now primary (gray), primary has updated to info (blue) and message is now alert.
  • ui-text: Removed error type for color, use danger instead
  • ui-tooltip: tip property is deprecated (use renderTip instead). | renderTip property is now required. | variant property is deprecated (use color instead)
  • ui-alerts: Remove deprecated closeButtonLabel prop
  • Removed Decimal wrapper for decimal.js because it was causing compilation errors with projects using Jest. If you need its functionality we recommend to copy-paste the needed methods from the source code.

7.5.0 (2021-03-22)

Features

  • ui-tree-browser: allow tree browser to render before, after nodes (ca1dfaa)

7.4.4 (2021-03-12)

Bug Fixes

  • Add CommonJS build to @instructure/ui-themes (7e99643)

7.4.3 (2021-03-11)

Bug Fixes

  • fix release script path issue (ea56688)
  • fix tagging (a3e4fbc)
  • ui-scripts: add comment on annotated tags (ac8d075)
  • ui-scripts: fix bump tagging and rename prerelease builds from nightly to snapshot (3473ed5)
  • ui-scripts: fix typo (96d704a)

7.4.2 (2021-03-11)

Bug Fixes

  • fix release script path issue (ea56688)
  • fix tagging (a3e4fbc)
  • ui-scripts: add comment on annotated tags (ac8d075)
  • ui-scripts: fix bump tagging and rename prerelease builds from nightly to snapshot (3473ed5)
  • ui-scripts: fix typo (96d704a)

7.4.1 (2021-03-04)

Bug Fixes

  • all: Fix package imports, now everything can be imported; fix test:all in main package.json (2f11024)
  • ui-docs-plugin: fix favicon (1ede99f)

7.4.0 (2021-02-01)

Bug Fixes

  • fix release script (e5b7e1f)
  • fix review issues (33ee9d8)
  • fix review issues (fe349c7)
  • fix typo (9aeced9)
  • ui-scripts: fix ui-scripts config for deploy-docs-via-github (14bae47)

Features

  • ui-icons: add new icons and update old ones (4b524b3)

7.3.5 (2021-01-21)

Bug Fixes

  • browserslist-config-instui: fix broken tests caused by IE11 support removal (965cf1b)
  • browserslist-config-instui: remove IE from supported browserslist (09c0888)
  • esm: don't mark commonjs as esm (957c7cd)
  • esm: fix rebasing artifacts (a791afe)
  • esm: improve esm support (b9184cc)
  • esm: remove packaging-test/ (1bfb15f)
  • esm: rewrite specify-commonjs-format in js (005905e)
  • esm: specify "exports" in package manifests (6007684)
  • esm: upgrade babel (173a310)
  • esm: validate esm packaging (687ea0e)
  • ui-modal: fix modal resetting contents when size is changed to/from fullscreen (397c2b8)

7.3.4 (2021-01-14)

Bug Fixes

  • browserslist-config-instui: fix broken tests caused by IE11 support removal (1ecf80b)
  • browserslist-config-instui: remove IE from supported browserslist (09c0888)
  • esm: don't mark commonjs as esm (957c7cd)
  • esm: fix rebasing artifacts (a791afe)
  • esm: improve esm support (b9184cc)
  • esm: remove packaging-test/ (1bfb15f)
  • esm: rewrite specify-commonjs-format in js (005905e)
  • esm: specify "exports" in package manifests (6007684)
  • esm: upgrade babel (173a310)
  • esm: validate esm packaging (687ea0e)

7.3.3 (2021-01-13)

Bug Fixes

  • browserslist-config-instui: remove IE from supported browserslist (09c0888)
  • esm: don't mark commonjs as esm (957c7cd)
  • esm: fix rebasing artifacts (a791afe)
  • esm: improve esm support (b9184cc)
  • esm: remove packaging-test/ (1bfb15f)
  • esm: rewrite specify-commonjs-format in js (005905e)
  • esm: specify "exports" in package manifests (6007684)
  • esm: upgrade babel (173a310)
  • esm: validate esm packaging (687ea0e)

7.3.2 (2020-12-10)

Bug Fixes

  • ui-a11y-utils: don't hide elements with aria-live (440fbd5)

7.3.1 (2020-11-30)

Note: Version bump only for package instructure-ui

7.3.0 (2020-10-26)

Features

  • ui-icons: add calculator-desmos icon to the project (df9bb2b)

7.2.4 (2020-10-09)

Note: Version bump only for package instructure-ui

7.2.3 (2020-10-08)

Note: Version bump only for package instructure-ui

7.2.2 (2020-10-08)

Note: Version bump only for package instructure-ui

7.2.1 (2020-10-07)

Note: Version bump only for package instructure-ui

7.2.0 (2020-09-23)

Features

  • ui-icons: add new icons: compass, line-reader, notepad, protactor, review-screen, ruler (ea218ca)

7.1.4 (2020-09-09)

Bug Fixes

  • ui-simple-select: add missing event args (ab18a17)

7.1.3 (2020-08-10)

Bug Fixes

  • ui-docs-plugin: make sure utilities are categorized properly (9dd6118)
  • ui-options: Don't let words overflow in Options component (dbb6dfe)

7.1.2 (2020-07-17)

Note: Version bump only for package instructure-ui

7.1.1 (2020-07-01)

Note: Version bump only for package instructure-ui

7.1.0 (2020-06-25)

Features

  • ui-table: allow valid values for ColHeader scope prop (3133e55)
  • ui-tree-browser: allow specifying a different icon for each item (ea98f06)

7.0.0 (2020-05-27)

Note: For instructions on upgrading to version 7.0.0 and more information about breaking changes, see the upgrade guide.

Bug Fixes

  • docs,ui-toggle-details: update under the hood props + a couple README prop (ccbb0b2)
  • ui-code-editor: make it work as a controlled component (586de21)
  • ui-docs-client: Make sidebar search not wrap (6015661)
  • ui-list: fix style collisions in the docs for list and inline list (0d1b29a)
  • ui-popover: reduce tooltip flickering (461d3fe)
  • ui-position: account for offsetTop discrepency in firefox (c46c4d1)
  • ui-range-input: patch CSS for legacy Edge (d7372fe)
  • ui-react-utils: ensure ComponentIdentifier renders in the docs (044b9f3)
  • ui-testable: fixes for createSuper being undefined (ce73f32)
  • ui-theme-tokens,ui-token-scripts: fix ui-token-scripts build (e2e7105)

chore

  • bump minimum react version to 16.8.0 (7a96f00)
  • remove references to React 15 (4bb2426)
  • remove canvas-ams-theme (91f1336)
  • ui-component-examples,ui-theme-tokens: switch component examples loader to cjs (3abd6ca)
  • ui-react-utils: remove react-lifecycles-compat polyfill (aa698ae)
  • ui-themeable: remove support for IE11 (bf6f5f7)

Code Refactoring

  • decouple theme properties from ui-themeable (d5a8827)

Features

  • remove 'experimental' tag along with '__dangerouslyIgnore...' (92bf753)
  • docs: Newsletter for version 7 release (86ed6d3)
  • ui-breadcrumb: Add responsive breadcrumb docs (3ab5566)
  • ui-codemods: read consumer config for prettier if it exists when applying codemods (e38cbf9)
  • ui-docs-client: add a ToggleBlockquote to be used internally for upgrade guides (0e87dc9)
  • ui-docs-client: Docs/homepage refresh (ee4957b)
  • ui-icons: add "sort" icon (3a76f0b)
  • ui-icons: added margin to 'add' and 'x' icons (c7632c4)
  • ui-scripts: Add flags to ui-test to opt out of linting and coverage (d4ea03e)
  • ui-tabs: Responsive tabs (df2c642)
  • ui-text-area: update deprecated lifecycle (7e13cb3)

BREAKING CHANGES

    • Removed the canvas-ams-theme package. Use canvas-theme instead.

Change-Id: I077f6b8cbbef9ee12e5904fb4c9dc4b48409acbb Reviewed-on: https://gerrit.instructure.com/c/instructure-ui/+/237960 Tested-by: Service Cloud Jenkins svc.cloudjenkins@instructure.com Reviewed-by: Steve Jensen sejensen@instructure.com QA-Review: Daniel Sasaki dsasaki@instructure.com Product-Review: Steve Jensen sejensen@instructure.com Visual-Regression-Test: Steve Jensen sejensen@instructure.com

  • ui-react-utils: - removed lifecycle polyfill from ui-react-utils

TEST PLAN:

  • No regressions to Expandable, Focusable, Transition, or Playground
  • ui-react-utils should no longer export or document polyfill

Change-Id: Ib714de4dc2a4ef048af2f43f272bcb8a2e545a5c Reviewed-on: https://gerrit.instructure.com/c/instructure-ui/+/237790 Tested-by: Service Cloud Jenkins svc.cloudjenkins@instructure.com Reviewed-by: Chris Guerrero cguerrero@instructure.com Product-Review: Ken Meleta kmeleta@instructure.com QA-Review: Daniel Sasaki dsasaki@instructure.com Visual-Regression-Test: Ken Meleta kmeleta@instructure.com

    • Minimum react and react-dom version raised to 16.8.0

TEST PLAN:

  • no regressions in docs app
  • homepage should note the react version change
  • automated tests should pass

Change-Id: I7cd9dd6423fb9524e0a1a0dd490caeee3a2c2c17 Reviewed-on: https://gerrit.instructure.com/c/instructure-ui/+/237727 Tested-by: Service Cloud Jenkins svc.cloudjenkins@instructure.com Reviewed-by: Chris Guerrero cguerrero@instructure.com Product-Review: Steve Jensen sejensen@instructure.com QA-Review: Daniel Sasaki dsasaki@instructure.com Visual-Regression-Test: Ken Meleta kmeleta@instructure.com

  • ui-component-examples,ui-theme-tokens: - renderPage and renderExample are no longer supplied by the webpack component-examples-loader

Change-Id: I5c632274264d7c934abc86f41399b8a7cda23e26 Reviewed-on: https://gerrit.instructure.com/c/instructure-ui/+/236873 Tested-by: Service Cloud Jenkins svc.cloudjenkins@instructure.com Reviewed-by: Ken Meleta kmeleta@instructure.com Product-Review: Ken Meleta kmeleta@instructure.com QA-Review: Daniel Sasaki dsasaki@instructure.com Visual-Regression-Test: Steve Jensen sejensen@instructure.com

  • Dropping support for React 15.

TEST PLAN:

  • yarn dev/yarn start should work
  • yarn test/test:watch should work
  • there should be no mention of react 15 in code
  • there should be nothing depending on react 15 or reactDOM 15

Change-Id: I2c054c986421014ffe15f0402e14bd2725cbc267 Reviewed-on: https://gerrit.instructure.com/c/instructure-ui/+/229009 Tested-by: Service Cloud Jenkins svc.cloudjenkins@instructure.com QA-Review: Daniel Sasaki dsasaki@instructure.com Visual-Regression-Test: Ken Meleta kmeleta@instructure.com Reviewed-by: Steve Jensen sejensen@instructure.com Product-Review: Steve Jensen sejensen@instructure.com

    • Changed arguments for ui-token-scripts commands
  • Changed structure of ui-token-scripts configuration file

Change-Id: I33213d2350f9ce07c157a6ad3f8cd2e6bccb14e9 Reviewed-on: https://gerrit.instructure.com/c/instructure-ui/+/236552 Reviewed-by: Steve Jensen sejensen@instructure.com Product-Review: Steve Jensen sejensen@instructure.com Tested-by: Service Cloud Jenkins svc.cloudjenkins@instructure.com QA-Review: Daniel Sasaki dsasaki@instructure.com Visual-Regression-Test: Steve Jensen sejensen@instructure.com

  • ui-code-editor: CodeEditor is now controlled-only.

TEST PLAN:

  • playground examples should work as before in docs
  • automated tests should pass
  • in dev environment, no react lifecycles warnings should show in console

Change-Id: I68398d56447af2a03c9db51bee5cce96f1fe5bd2 Reviewed-on: https://gerrit.instructure.com/c/instructure-ui/+/224132 Tested-by: Service Cloud Jenkins svc.cloudjenkins@instructure.com Reviewed-by: Chris Hart chart@instructure.com Visual-Regression-Test: Ken Meleta kmeleta@instructure.com Product-Review: Chris Hart chart@instructure.com QA-Review: Daniel Sasaki dsasaki@instructure.com

  • ui-themeable: - Removed support for IE11 by eliminating custom properties polyfill
  • Removed scopeStylesToNode, scopeCssText, and customPropertiesSupported utility helpers.

Change-Id: I41de82b6167f1aa9f25d87ddc279e5d3c5f0b413 Reviewed-on: https://gerrit.instructure.com/c/instructure-ui/+/235818 Tested-by: Service Cloud Jenkins svc.cloudjenkins@instructure.com Reviewed-by: Steve Jensen sejensen@instructure.com Product-Review: Steve Jensen sejensen@instructure.com QA-Review: Daniel Sasaki dsasaki@instructure.com Visual-Regression-Test: Chris Guerrero cguerrero@instructure.com

6.26.0 (2020-04-30)

Features

  • instui-config: finish adding codemod configs for universal package (142d52b)
  • ui-file-drop: add a height prop (4fc0c4a)

6.25.0 (2020-04-27)

Bug Fixes

  • instui-config: publish import codemod configs to npm (93fc574)

Features

  • instui-cli,instui-config,ui-codemods,ui-upgrade-scripts: allow option to migrate to universal (2090d6c)
  • instui-config,ui: add a universal export package (9e74450)

6.24.0 (2020-04-14)

Bug Fixes

  • ui-drawer-layout: Fix no styles applied on root (689780a)
  • ui-view: optimize View in test and prod (3d4ea25)

Features

  • instui-cli,instui-config: add a default parser configuration file (c25bb88)

6.23.0 (2020-04-02)

Bug Fixes

  • ui-buttons: fix canvas custom theming for primary Button text (7672ee9)
  • ui-buttons: fix issue with button theme overrides (4022c95)
  • ui-docs-client,ui-modal: modalbody using undefined theme var (66e0a16)
  • ui-tabs: correct mis-named theme variable for Tabs.Panel (35ce38b)

Features

  • instui-config,canvas-ams-theme,ui-themes,ui-view: add canvas-ams-theme (f31849f)
  • instui-config,ui-codemods,ui-scripts,ui-upgrade-scripts: named imports for codemods (a7db548)
  • ui-docs-client: update deprecated components still in use (4543717)
  • ui-icons: add-folder, add-media and record icons (c1c7d67)
  • ui-select,ui-text-input: allow size attr on Select/TextInput (025a564)
  • ui-simple-select,ui-table: update select in sortable tables (36e8b19)

6.22.0 (2020-03-16)

Bug Fixes

  • ui-date-input: allow passthrough props in DateInput (7228baa)
  • ui-popover: allow tooltip to manage its focus region (8391f4f)
  • ui-tag: show cut off letter descenders (b4cad27)
  • ui-time-select: make TimeSelect test less brittle (42a90c7)

Features

  • canvas-theme,ui-docs-client: theme color docs enhancements (69a1938)
  • ui-docs-client: add Google analytics to docs app (748c1e2)
  • ui-docs-client: ensure button upgrade examples render 'canvas theme' (4d68de9)
  • ui-menu: restore support for mountNode (b53ec24)
  • ui-select: allow override of autocomplete attr in Select (41e09ac)
  • ui-select,ui-simple-select: add mountNode prop to Select (a8b60a6)
  • ui-time-select: add TimeSelect component (1dfa39b)

6.21.0 (2020-02-26)

Bug Fixes

  • ui-breadcrumb: ensure Breakcrumb.Link icon + renderIcon props work (14e5f1c)
  • ui-navigation: fix position/transition of Nav expand/collapse button (c18dcab)

Features

  • ui-heading: Accept multiple font families (da12bb8)
  • ui-select: Add a SimpleSelect component (a7ed234)
  • ui-themeable: use hash instead of randomly generated component id when styles are null (62ac665)

6.20.0 (2020-02-13)

Bug Fixes

  • ui-themeable: check JSDOM environment (5ef3244)

Features

  • ui-docs-client: update deprecated lifecycle in Playground (9c6888f)
  • ui-motion: update deprecated lifeycles from ui-motion (9d0593e)
  • ui-text-input: Add shouldNotWrap property (cca1201)
  • ui-themeable: allow theme adapter to map a single old value to multiple new values (8b5bb3f)

6.19.0 (2020-02-11)

Bug Fixes

  • ui-expandable: replace componentWillReceiveProps (d59f529)
  • ui-select: ensure Select.Group imports .Option (8dc609f)

Features

  • undeprecate disabled and readOnly in inputs (79cf68f)
  • instructure-theme: add instructure-theme (df088ec)
  • instui-cli,instui-config,ui-upgrade-scripts: eliminate parser errors when running codemods (0430c6b)
  • ui-docs-client: use updated Button throughout docs/components (9f0be81)
  • ui-link: un-deprecate disabled in Link (a8df168)

6.18.0 (2020-02-04)

Bug Fixes

  • ui-flex: adopt more children types (1f2ac25)
  • ui-menu: update Popover import to new package align updated props (77176a7)
  • ui-pill: update TruncateText import to new package (8957e76)
  • ui-responsive: responsive rendering fixes (93627a6)
  • ui-table: loosen caption prop (97cf3e7)

Features

  • instui-config,ui-buttons,ui-react-utils: un-deprecate disabled and readOnly in button (8041bbf)
  • instui-config,ui-buttons,ui-themeable: upgrade Button (ed73df1)
  • ui-buttons: Add ToggleButton component (4e25cfc)
  • ui-buttons: Update CloseButton to use upgraded Button props (365e0ac)
  • ui-react-utils,ui-scripts,ui-webpack-config: env variable to omit deprecation warnings (6cc3193)

6.17.0 (2020-01-22)

Bug Fixes

  • Update Package READMEs and align deprecation statements (8f892e4)
  • docs: Update MIT License link (13a9dff)
  • ui-billboard,ui-dialog,ui-expandable,ui-options,ui-text-input,ui-tooltip: devDep audit (c1f0dc0)
  • ui-forms: add back the export of CheckboxFacade and ToggleFacade (e5dc547)
  • ui-karma-config: Stop eating top-level test suite errors (7324d35)
  • ui-number-input: add type="button" to buttons (5f66aff)
  • ui-table: sort arrow should not change place based on cell alignment (f1e0c29)
  • ui-test-utils: prevent test sandbox initialization in production and development (80d9bc1)

Features

  • babel-plugin-transform-imports: allow imports that are not at the root level of src (d239362)
  • template-app: update import paths to new packages (bd78d0b)
  • ui-babel-preset: allow for specifying additional import transforms (908c8d5)
  • ui-breadcrumb,ui-link,ui-elements: address Links underlining (388b8cc)
  • ui-docs-client: allow for embedding code inline with markdown (aea7989)
  • ui-editable: use IconButton internally for edit button (8031721)
  • ui-forms: export old Select subcomponents (ecbcbf6)
  • ui-icons: add 'audio-off' icon (8f5030c)
  • ui-icons: add comments-off and comments-on icons (650a42a)
  • ui-overlays: update deprecated lifecycles in Overlay (dddda64)
  • ui-pagination: use IconButton internally for the "previous/next" (a0075e1)
  • ui-svg-images: add auto height/width (abf52f1)
  • ui-toggle-details: use IconButton internally for the toggle btn (f1679c4)

Performance Improvements

  • ui-responsive: responsive performance enhancements (5096c00)

6.16.0 (2019-12-13)

Bug Fixes

  • ui-a11y-utils: fix ui-a11y-utils dependencies (d431666)
  • ui-docs-client: remove unnecessary import of ScreenReaderContent (07d453b)
  • ui-modal: update deprecated lifecycles in modal (eaa0c9d)
  • ui-tooltip: uncontrolled example broken (9d19413)

Features

  • instui-cli,ui-scripts,ui-template-scripts: add a new ui-template-scripts package (e3669ba)
  • instui-cli,ui-upgrade-scripts: add a new ui-upgrade-scripts package (f5067ee)
  • ui-badge: add ui-badge package (8de4dae)
  • ui-buttons: add a CondensedButton component (e807b1c)
  • ui-buttons: add an IconButton component (e170d95)
  • ui-byline,ui-layout: add ui-byline package (4be733d)
  • ui-checkbox: add ui-checkbox package (94840fa)
  • ui-docs-client: make content within docs pages navigable via linking (595f155)
  • ui-docs-client: updates to compileMarkdown for id generation (832f7b2)
  • ui-drawer-layout: add ui-drawer-layout package (2c59227)
  • ui-elements: add isWithinText prop to ui-element Link (9d0ee8e)
  • ui-elements,ui-truncate-text: add ui-truncate-text package (75500f9)
  • ui-expandable: add ui-expandable package (6e5bfd3)
  • ui-forms,ui-radio-input: add ui-radio-input package (151edd9)
  • ui-forms,ui-text-area: add ui-text-area package (e116712)
  • ui-navigation: remove experimental pill from AppNav (e460042)
  • ui-range-input: ui-range-input package (48c2786)
  • ui-responsive: add ui-responsive package (13616d2)
  • ui-spinner: ui-spinner and design updates (c80c40c)
  • ui-themeable: update deprecated lifecycles in themeable (a581b70)
  • ui-tray: ui-tray package (07d7399)

6.15.0 (2019-11-18)

Bug Fixes

  • ui-dom-utils: prevent recursive textNode checks (c06a7f9)
  • ui-elements: remove redundant TruncateText test (ea222d3)
  • ui-focusable: fix edge case with getSnapshotBeforeUpdate (895d131)
  • ui-react-utils: fix deprecated util functions in production (1c09675)
  • ui-react-utils: omit children from passthroughProps (c0e9cff)
  • ui-select: prevent cursor for uneditable selects (2e2540a)
  • ui-tooltip: update Tooltip dependency (98a1617)
  • ui-view: allow View to use native browser focus (7686f1b)

Features

  • ensure all packages have build script for types (4891dc4)
  • Move React to a peer dependency (9648ca3)
  • instui-cli,template-component: add react as a peer dep when generating components (b8ca302)
  • template-component: include types in component generation template (ae9ce15)
  • ui-a11y-content: remove experimental flag from ui-a11y-content package (ce96006)
  • ui-a11y-utils,ui-dialog: add ui-a11y-utils and ui-dialog (c88cf8e)
  • ui-alerts: update deprecated lifeycles in Alert (aac0930)
  • ui-alerts,Alert: make aria-atomic configurable (502b3d9)
  • ui-avatar: make ui-avatar backwards compatible (c94255d)
  • ui-buttons: add a BaseButton component (dbb83cd)
  • ui-calendar: reduce calendar test noise (b5fea9b)
  • ui-docs-client: Add first InstUI Insider content (acc4744)
  • ui-docs-client,ui-elements: ensure ui-docs-client is using Table from ui-table (5788fce)
  • ui-file-drop: make ui-file-drop backwards compatible (0534ca2)
  • ui-flex,ui-layout: make ui-flex backwards compatible (c11cc6b)
  • ui-focusable: update deprecated lifecycles in Focusable (696c998)
  • ui-grid: add ui-grid package (3921f32)
  • ui-heading: make ui-heading backwards compatible (c4f9541)
  • ui-icons-build,ui-icons: fix icon build and add studio, certified (90d01f4)
  • ui-img: make ui-img backwards compatible (ff7d2b6)
  • ui-link: Make ui-link/Link backwards compatible (3e62c49)
  • ui-list: add ui-list package (7c867af)
  • ui-metric: add ui-metric package (d4b6dd3)
  • ui-modal: add ui-modal package (a9c5cee)
  • ui-overlays,ui-tooltip: expose positionTarget prop on Tooltip (6c1a545)
  • ui-pill: make ui-pill backwards compatible (480eeb7)
  • ui-popover: make ui-popover backwards compatible (d9437ae)
  • ui-position: make ui-position backwards compatible (24e90d1)
  • ui-progress: add ui-progress package (4dfcf4a)
  • ui-rating: add ui-rating package (3fa4129)
  • ui-react-utils: allow for completely custom message in deprecatePropValues (9a86beb)
  • ui-react-utils: update deprecated lifecycles in decorators (87295bf)
  • ui-tag: ui-tag package (dbf87ca)
  • ui-text: make ui-text backwards compatible (7aabd6a)
  • ui-text-input: make ui-text-input backwards compatible (b9d889d)
  • ui-themeable: allow components to specify a theme adapter (8be3d42)
  • ui-tooltip: make ui-tooltip backwards compatible (7608e7c)
  • ui-tooltip: update tooltip callback naming (2b26d54)
  • ui-view: Make ui-view backwards-compatible (7dd2a2f)
  • ui-view: move ContextView to ui-view package (4601b4a)

Performance Improvements

  • ui-tooltip: remove Focusable from Tooltip (83aa0c9)

6.14.0 (2019-10-14)

Bug Fixes

  • instui-config: fix typos in propName codemod config (81f1975)
  • ui-elements: fix TruncateText's componentDidUpdate logic (5055515)
  • ui-file-drop,ui-pill: update babel (a7a8489)
  • ui-react-utils: fix production errors for decorator functions (f5da64c)
  • ui-table: ignore falsy children in Table.Row (dae5db6)

Features

  • ui-file-drop: add ui-file-drop package (b275521)
  • ui-heading: add ui-heading package (b681432)
  • ui-link: add ui-link package (fa75902)
  • ui-position: add ui-position package (5511a88)
  • ui-tooltip: add ui-tooltip package (2e88e8a)

Performance Improvements

  • ui-react-utils: make dev-only decorators really noops in prod (f2f4865)
  • ui-testable: make ui-testable have no cost in prod (5ab79fa)
  • ui-view: don't call verifySpanMargin in prod mode (60e0c2f)

6.13.0 (2019-09-24)

Bug Fixes

  • instui-config: fix v7 codemod paths (918d38f)
  • ui-focusable: fix focus race condition with label / checkbox (54da3ed)
  • ui-scripts: follow-up fix to g/209544 (bc6945b)

Features

  • ui-elements: allow TruncateText to force truncation of hidden text (66bbf82)
  • ui-elements,ui-pill: add ui-pill package for the Pill Component (4a71024)
  • ui-react-utils: add hack decorator (1351477)

Performance Improvements

  • console: help terser dead-code-eliminate console funcs (323c469)

6.12.0 (2019-09-17)

Bug Fixes

  • ui-utils: export isEdge from the root of @instructure/ui-utils (b97f3fe)

Features

  • ui-babel-preset: add support for javascript optional chaining (e56d64b)

6.11.0 (2019-09-16)

Bug Fixes

  • instui-cli: fix incorrect spacing for dependencies when generating package (b1bbfe9)
  • ui-babel-preset: ensure runtime helper is used for _objectSpread (2eb42d7)
  • ui-karma-config: run all tests if one test file fails to load (a8dab36)
  • ui-layout: DrawerTray content needs 100% height (500af47)
  • ui-overlays: do not unset duration for modals (0b304e7)
  • ui-react-utils: provide correct contextual binding for lifecycle methods in experimental (9aeeb19)
  • ui-tabs: pass id in Tabs onRequestTabChange handler (6d58611)
  • ui-view: fix border colors in Edge HCM (091dde3)

Features

  • ui-a11y-content,ui-a11y: add ui-a11y-content package (cb49c7a)
  • ui-avatar,ui-elements: add ui-avatar package for Avatar component (34a6001)
  • ui-elements,ui-img: add ui-img package for Img Component (c2e4e7d)
  • ui-elements,ui-text: add ui-text Package for Text Component (5bdb65a)
  • ui-flex: add ui-flex package (98730ff)
  • ui-navigation: Responsive AppNav (dd843d0)
  • ui-popover: Add ui-popover package (62c1165)
  • ui-react-utils: add flag to suppress experimental warnings (d30e678)
  • ui-react-utils: pass props in callRenderProp (042bc84)
  • ui-scripts: enable ui-scripts to post to multiple slack channels (ee796c2)
  • ui-view: add ui-view Package for View Component (7799577)
  • ui-view: mark ui-view as experimental (6b805fa)

Performance Improvements

  • ui-utils: stop using bowser for browser detection (95f1232)

6.10.0 (2019-08-27)

Bug Fixes

  • ui-a11y: prevent errors w/ x-domain iframes in FocusRegion (83267f1)
  • ui-alerts: fix React warnings emitted from Alert.updateScreenreaderAlert (c97e64d)
  • ui-docs-plugin: fix docs in IE11 (65a875c)
  • ui-layout: Map theme vars to Canvas vars (7f21fec)
  • ui-pagination: fix pagination buttons (be78f69)
  • ui-stylesheet,ui-themeable: error when gt 1 copies of themeable (b1e8164)
  • ui-table: add aria-sort attributes to Table header (eb802f1)
  • ui-tabs: don't pass through onChange attr (3e185d1)
  • ui-themeable: revert the "newless" change (c4ce9ba)

Features

  • ui-forms: disabled/readOnly in FileDrop (86f323c)

6.9.0 (2019-08-07)

Bug Fixes

  • ui-themeable: make themeable work with real classes (ec0d5b9)

Features

  • ui-forms: add labelPlacement property (39225ca)

6.8.1 (2019-08-02)

Bug Fixes

  • ui-a11y: convert getElementsByTagName results to Array (4e7c07a)

6.8.0 (2019-07-31)

Bug Fixes

  • template-component: Update template and docs (c1913e1)
  • ui-a11y,ui-overlays: fix tray/dialog document click behaviors (1130a73)
  • ui-forms: keep escape from closing modals when a file selection dialog is open (321c246)
  • ui-react-utils: handle fat arrow functions in callRenderProp (6e0d0c8)
  • ui-select,ui-selectable: stop event propagation from selectable (fc75997)
  • ui-test-utils: reset viewport in init/before hook (f271a5b)

Features

  • browserslist-config-instui,ui-eslint-config: add browserslist pkg, browser compat linting (6fcee36)
  • ui-webpack-config: Add a env var to disable linter failure on warnings (ace5500)

6.7.0 (2019-07-15)

Bug Fixes

  • ui-editable: move keyUp handler for escape handling (4d197d3)

Features

  • ui-forms: allow all children in RadioInputGroup (d7ca99a)
  • ui-icons: add Admin Tools, ePortfolio, Permissions, Sub-Accounts (7c910ad)

6.6.0 (2019-07-03)

Bug Fixes

  • template-app,template-component,template-package: remove npmignore files from template packages (e0b7136)
  • template-app,template-component,template-package,ui-scripts: rename templates for npm (1749abd)

Features

  • ui-scripts: retrieve GitHub url from config instead of package.json (c62b01e)

6.5.0 (2019-07-01)

Bug Fixes

  • add missing exports (10044d4)
  • instui-config,ui-tabs: deprecate focus prop and add shouldFocusOnRender (6f26701)
  • ui-date-input: align calendar icon (32c9d9d)
  • ui-date-input,ui-text-input: add assistiveText prop to DateInput (20ed322)
  • ui-elements: replace componentWillReceiveProps logic in TruncateText (a7fa13d)
  • ui-number-input: update NumberInput prop names (7cad427)
  • ui-scripts: Make fix flag work when no paths are passed to the lint command (ed0cb15)
  • ui-select: scroll logic and example updates (fd91714)
  • ui-tabs: tabbable content in a tab panel should be tabbable (4753bd3)
  • ui-tabs: update canvas theme variables to new variants (6472a51)
  • ui-test-utils: remove window/document event listener cleanup (9fb45b3)
  • ui-text-input: set line height to prevent truncating descenders (4cb3666)
  • ui-text-input: update TextInput prop names (3aedab8)

Features

  • instui-cli,template-app,ui-scripts: add an instui starter app (3f0f00e)
  • instui-cli,template-component,ui-scripts: Generate component script (8b8480e)
  • instui-cli,template-package,ui-scripts: move generate package script to instui-cli (69f1613)
  • instui-config,ui-date-input: dateInput change label prop to renderLabel (a172999)
  • ui-docs-client: Add What's New page to docs (64126d6)
  • ui-elements: Added wrap prop to Text (b17daba)
  • ui-icons: add "code" icon (b330455)
  • ui-icons: add text-direction rtl and ltr icons (3b91145)
  • ui-navigation: appNav component (8f2d874)
  • ui-scripts: allow open sandbox script to function in monorepo without repo name or username (919d966)
  • ui-scripts: expand codemod extensions to accept .jsx (e217bb2)

6.4.0 (2019-06-13)

Bug Fixes

  • ui-breadcrumb: separator color (e0c7fe0)
  • ui-component-examples: prevent OOM when generating View examples (df5f505)
  • ui-component-examples: support components w/ no props/values (4c76e2b)
  • ui-layout: pass down elementRef to Flex and Flex.Item (4dfb941)

Features

  • ui-alerts: add renderCloseButtonLabel to Alert (4684530)
  • ui-eslint-config: enable react/no-typos rule (d8fc415)
  • ui-forms,ui-selectable: deprecate ui-forms select (1f7b53d)
  • ui-icons: add closed-captioning icon (58444ee)
  • ui-icons: add miscellaneous 'table' icons to ui-icons (8ec7a8b)
  • ui-icons: update solid version of 'Dashboard' and 'Inbox' icons (33a8b4c)
  • ui-icons: update svg exports for misc icons (319abb7)
  • ui-layout: Add focus styles to View (2dd401c)
  • ui-scripts: add open-sandbox script (093076a)
  • ui-scripts: addition of a monorepo open sandbox command (7fd349d)
  • ui-select: add controlled select (634ab1a)

6.3.0 (2019-05-28)

Bug Fixes

  • ui-a11y: dialogs with non focusable children should contain focus when shouldContainFocus (f72a179)
  • ui-elements: Change scoping of Link color (09028b8)
  • ui-elements: fix typo in componentWillUnmount (093c47e)
  • ui-portal: remove ui-testable from Portal (9421d63)
  • ui-test-utils: prevent test pollution related failures (626bd7a)
  • ui-themeable: Fix polyfill class selector (0527709)

Features

  • ui-icons: update existing text-subscript icon per design (fea49f4)
  • ui-layout: add functional colors as background values for View (18938fa)
  • ui-options: add Options component (c0df653)

6.2.0 (2019-05-13)

Bug Fixes

  • ui-docs-client: escape regexp chars in icon search term (00b3ef9)
  • ui-elements: don’t set type=button on any non-button s (67084ae)
  • ui-forms: use renderTitle prop on Spinner (dce5248)

Features

  • ui-breadcrumb,ui-elements: remove default as='button' on Link (c23e859)
  • ui-elements: add renderTitle prop to Spinner component (6b66b89)
  • ui-elements,ui-svg-images: adds alert color to Text and InlineSVG components (118ba53)
  • ui-portal: Use built-in React 16 Portal (1e334e3)

6.1.0 (2019-05-09)

Bug Fixes

  • instui-config,ui-forms: deprecate DateInput from ui-forms (d02c7ea)
  • ui-docs-client,ui-docs-plugin: update icon import paths (5a3eda2)
  • ui-prop-types: Update childrenOrValue error message (b36f61a)
  • ui-scripts: fix tags for patch releases (a479911)
  • ui-tabs: Selected tab animations (1313023)

Features

  • ui-form-field: add input container ref to FormField (16bebbf)
  • ui-icons: add new bullet-list-(option) icons to icon library (c2433af)

6.0.0 (2019-05-03)

Bug Fixes

  • instui-cli: don't use yarn to run jscodeshift (992e250)
  • instui-cli,ui-codemods: codemod paths should work when cli is globally installed (0948a76)
  • instui-cli,ui-codemods,ui-scripts: require uncached version of configs (7130c12)
  • ui-docs-client: fix search icon import path (7390556)
  • ui-layout: position should account for documentElement offset (701b08e)
  • ui-utils: ensure 'getActiveElement' is using the instui 'contains' (26f7d98)

Features

  • remove deprecated packages/props (1d8813c)
  • babel-plugin-themeable-styles: deprecate themeable config (f3228bc)
  • canvas-theme,canvas-high-contrast-theme: separate canvas theme packages (ef2e1d0)
  • instui-cli,instui-config,ui-codemods: add upgrade command (a805ed6)
  • instui-cli,instui-config,ui-scripts: Allow upgrade to specific version (55c3c16)
  • instui-config,ui-codemods: configure codemod updates for simple prop values (4049122)
  • instui-config,ui-forms: add deprecation + codemod for old TextInput to TextInputControlled (eb83528)
  • ui-babel-preset: transform member imports to full paths (d02cc45)
  • ui-dom-utils,ui-react-utils,ui-color-utils: new utils packages (03e8ee2)

Performance Improvements

  • ui-icons,ui-icons-build: remove default exports for React icons (95195ee)

BREAKING CHANGES

  • ui-core: entire package has been removed
  • ui-elements: ContextBox has been removed
  • ui-testbed: entire package has been removed
  • ui-forms: NumberInput has been removed
  • ui-container: entire package has been removed
  • ui-menu: MenuItemFlyout has been removed
  • ui-forms: FormField & FormFieldGroup have been removed
  • ui-svg-images: height and width props removed from SVGIcon
  • ui-utils: Decimal has been removed
  • ui-overlays: applicationElement, closeButtonLabel, closeButtonRef, closeButtonVariant props removed from Tray (as well as dep warnings from InstUI 3)
  • ui-overlays: applicationElement, closeButtonLabel, closeButtonRef props removed from Popover (as well as dep warnings from InstUI 3)
  • ui-overlays: applicationElement, closeButtonLabel, closeButtonRef props removed from Modal (as well as dep warnings from InstUI 3)
  • ui-overlays: fullScreen prop removed from Mask
  • ui-menu: active prop removed from MenuItem
  • ui-menu: title, labelledBy and controls props removed from Menu
  • ui-a11y: applicationElement prop removed from Dialog
  • ui-code-editor: code prop removed from CodeEditor
  • ui-layout: size prop removed from View
  • ui-elements: ellipsis prop removed from Link
  • ui-overlays: size prop removed from Tooltip, switched variant so the inverse Tooltip is what a consumer gets out of the box, default (light has to be explicitly set)
  • ui-alerts: 3.0 deprecations removed from Alert
  • ui-elements: 3.0 deprecations removed from Table, prop values from Heading, ListItem
  • ui-portal: 3.0 deprecations removed from Portal
  • ui-component-examples: should not be referencing a size prop for Tooltip
  • ui-utils: deprecated util has updated messaging
  • scripts: update component and package template dependancy from '^5' to '^6'
  • ui-forms, ui-icons, ui-overlays, ui-utils: remove 'config' folder as they now reside in their own package
  • ui-themeable: added warning in dev env when using react version < 15
  • All package peerDependencies updated to remove support for React v0.14
  • ui-utils: deprecated utils removed
  • ui-themes: remove deprecated canvas-a11y theme
  • removed /components and /utils directories, add codemods to update imports

5.52.3 (2019-04-25)

Bug Fixes

  • ui-layout: position should account for documentElement offset (f70bde6)

5.52.2 (2019-04-17)

Bug Fixes

  • ui-calendar,ui-date-input,ui-table: align week labels in center (2ec0d82)
  • ui-date-input: improve onRequestValidateDate documentation (faa04db)
  • ui-elements: fix role for Rating so it reads correctly for SR (8b3a4c0)
  • ui-elements: MetricsList/MetricsListItem allow data attributes to be passed thru (319188c)
  • ui-form-field: allow data attributes to be passed thru FormField (05ecfd5)
  • ui-utils: allow to prop on elements that allow href (208fa09)

Performance Improvements

  • console: fix production error/warning stripping (f03d6e6)

5.52.1 (2019-04-08)

Bug Fixes

  • ui-scripts: remove DEBUG var for babel transpile (e8cd217)
  • ui-table: deprecate prop mode (d9282c1)
  • ui-text-input: readOnly input should not look disabled (1c13287)

5.52.0 (2019-04-03)

Bug Fixes

  • ui-scripts: resolve promise for gerritbot review (23a7123)
  • ui-table: use flex on sortable button (f03eeb1)

Features

  • console: remove console statements in prod env (603c738)
  • ui-scripts: ui-build --modules option (0be81cc)

5.51.1 (2019-03-30)

Bug Fixes

  • ui-elements,ui-layout: prevent prop warnings due to defaults (5a7128d)

5.51.0 (2019-03-29)

Bug Fixes

  • ui-forms: fix too much recursion error (08dedf3)
  • ui-menu: prevent menu from focusing single item (6d8ac37)

Features

  • ui-scripts: post gerrit reviews from publish script (b63ec87)
  • ui-table: make table responsive (1ec9a2b)
  • ui-utils: add React's render stack to console messages (4226153)

5.50.0 (2019-03-28)

Bug Fixes

  • ui-core: update menu ui-core/config (04dc453)
  • ui-forms: allow Select to render without inline mountNode (44e9176)
  • ui-forms: prevent select from closing prematurely in IE (785c9dd)
  • ui-forms: remove explicit mountNode in Select (8542b79)
  • ui-overlays: deprecate size prop for Tooltip (07fddac)
  • ui-scripts: CSS changes should auto-reload with yarn dev (071a1a9)
  • ui-scripts: split DEBUG env variable (0b0033e)

Features

  • ui-billboard: allow node and function for message prop (88ebd37)
  • ui-text-input: Add flex layout (6613d27)

5.49.0 (2019-03-22)

Bug Fixes

  • ui-a11y: convert NodeList to Array in ScreenReaderFocusRegion (ab482a6)
  • ui-a11y: prevent focus from escaping dialog (899dd5e)
  • ui-component-examples: improve loadtime for storybook (679b37d)
  • ui-menu: always focus the entire menu when opened (9bec477)
  • ui-scripts: don't update x-package deps when bumping versions (5550000)
  • ui-tabs: update Tabs sub-directories to support dot notation naming convention (6bb2616)
  • ui-test-utils: better error message when sinon sandbox is undef (19d65df)
  • ui-test-utils: preserve built-in behavior of chai contain method (a7b266e)
  • ui-themeable: prevent setting a component theme to an empty object (04d8bc2)

Features

  • ui-calendar,ui-focusable: a Calendar component (7a4f96e)
  • ui-date-input: A controlled DateInput (e558771)
  • ui-scripts: read dotenv file from project root (6886dcb)
  • ui-test-utils: add unmount util (4d508be)

5.48.0 (2019-03-18)

Bug Fixes

  • ui-prop-types: require prop-types >= 15.7 (30c105a)

Features

  • ui-component-examples,ui-test-utils: add parameters to example config (19e4cfd)
  • ui-table: add controlled table (20f39f9)

5.47.0 (2019-03-15)

Bug Fixes

  • ui-utils: updates to CustomPropTypes.Children (4679cbb)

Features

  • ui-selectable: add Selectable component (de742b4)
  • ui-tabs: new Tabs component (b8fe295)
  • ui-test-utils: add a few more test helpers (386a867)

5.46.1 (2019-03-13)

Bug Fixes

  • ui-icons: add missing unpublish icon (de613be)

5.46.0 (2019-03-12)

Bug Fixes

  • ui-scripts: include merged tags for bump and RCs (62c3dbe)

Features

  • ui-text-input: prepend/append content (183d589)

5.45.1 (2019-03-12)

Note: Version bump only for package instructure-ui

5.45.0 (2019-03-11)

Bug Fixes

  • fix yarn test --scope (92ba95e)
  • ui-babel-preset: load themeable config (b5b8397)
  • ui-forms: prevent "duplicate adjacent keys" react warning (1cf778f)
  • ui-scripts: disable git reset for RC releases (e02cf7a)
  • ui-scripts: move working directory check (174e2d1)
  • ui-scripts: update repo package version for RCs (0573f5c)
  • ui-scripts: use correct version in post-publish for RCs (fa1c985)
  • ui-scripts,ui-test-utils: make sure test teardown always runs (be84200)
  • ui-text-input: fix layout with inline and width props (0a8dfea)
  • ui-webpack-config: add missing dependency (234d7cd)

Features

  • A ui-prop-types package (0fbc609)
  • ui-eslint-config: remove async test rule (607b878)
  • ui-karma-config,ui-scripts: --randomize test order flag (dee991c)
  • ui-menu: Fix roles on menu item group items for NVDA/JAWS (76de5d0)
  • ui-postcss-config: minify the css we publish to npm (9aa49dc)
  • ui-scripts,ui-test-utils: move jsdom to ui-scripts (9d1f063)
  • ui-test-utils: add aliases for finding by text, label (14fdb9e)

Performance Improvements

  • ui-babel-preset: don't add polyfills to js we publish to npm (2d2e859)

5.44.0 (2019-03-01)

Bug Fixes

  • ui-scripts: fix publish and post-publish (1d863e3)

Features

  • ui-buttons,ui-elements,ui-themes: underline the Link component by default (9a90a7f)
  • ui-forms,ui-test-utils: add locators, assertions, typeIn helper (7d36c3d)
  • ui-layout: Add overflow props to View (d0d779f)
  • ui-text-input: add controlled TextInput (a372757)

5.43.0 (2019-02-27)

Bug Fixes

  • jenkins: SSH directory doesn’t have access on post merge (907b123)
  • postcss-themeable-styles,ui-buttons: add missing Button theme variables (ac626ec)
  • ui-buttons: scope Button styles more tightly to HTML (92f044f)

Features

  • ui-component-examples: add a new examples generator (eefb1e7)
  • ui-overlays: add overflow property to Modal (614933c)
  • ui-test-utils: add a11y test generator util (16240d8)

5.42.0 (2019-02-15)

Bug Fixes

  • generate:component should work w/ an existing package (54be01b)
  • ui-elements: remove relative position from Link (cd96e4c)
  • ui-postcss-config: use requires to prevent missing deps (d6735a4)

Features

  • ui-overlays: deprecate small, medium tooltip - remove shadow (0be0008)
  • ui-scripts: add examples and server scripts (e229eef)
  • ui-scripts,ui-test-utils: add a --mocha option to ui-test (bd37e2b)

Performance Improvements

  • babel-plugin-themeable-styles: speed up babel transpile (2df2a22)

5.41.1 (2019-01-30)

Bug Fixes

  • docs-app: fix codepen links (1f8a56f)
  • ui-babel-preset: add missing babel-plugin-macros dep (9e97e77)
  • ui-scripts: switch to npm publish from yarn (f22c2b2)

5.41.0 (2019-01-29)

Bug Fixes

  • cz-lerna-changelog: add missing dependency (4352282)
  • ui-editable,ui-forms: select blurs when it shouldn't (65563e8)
  • ui-elements: Make Link work with TruncateText (5f49edc)
  • ui-elements: remove gradiant from HCM progress (00d5b7b)
  • ui-focusable: Focusable should retain focus (2891d8c)
  • ui-form-field: design alignment with form helper/error text (9e7de74)
  • ui-forms: fix enablePreview prop on FileDrop (3c44424)
  • ui-forms: prevent multiple onChange events from controlled selects (cef91d7)
  • ui-number-input: use a large font when size="large" (5f00619)

Features

  • ui-editable: add "inline" prop to InPlaceEdit (5caedc1)
  • ui-overlays: allow support for icons alongside close button in inverse variant (932a468)

5.40.0 (2019-01-15)

Bug Fixes

  • ui-forms: pass NumberInput props to input (4b61a84)
  • ui-overlays: ensure null can be passed as children to Modal (80d7483)
  • ui-test-utils: use MutationObserver shim (2b0128c)

Features

  • ui-presets: check if version is published already (57b8e8f)

5.39.0 (2019-01-11)

Bug Fixes

  • docs-app: add missing changelog in docs (7c18ccd)
  • NumberInput: display '0' passed as a number (4935f95)
  • ui-forms: fix disabled opacity for select options (66101a6)
  • ui-overlays: prevent ModalBody focus when scrollable (a1fafa5)
  • ui-overlays: set Modal transition to 0s for IE11 (7a669e5)
  • ui-pagination: Fix hidden label text layout (4b15da4)

Features

  • ui-billboard: use link color for billboard message (d0049db)
  • ui-decorator: add a ui-decorator package/util (8179186)
  • ui-overlays: add inverse variant to modal (d0f6332)
  • ui-test-utils: add MutationObserver, setImmediate shims (97adeba)
  • uid: Add a uid package/util (279bcda)

5.38.0 (2019-01-04)

Bug Fixes

  • ui-a11y,ui-test-utils: handle iframes with inaccessible documents (f155829)
  • ui-form-field: ensure legend is the first child of fieldset (1bd67a5)
  • ui-forms: use pointer cursor for toggle (75d00d2)
  • ui-overlays: remove border-radius from fullscreen modal (552ab68)
  • ui-overlays: stop Modal inheriting parent font color (68eb293)
  • ui-test-utils: logic that determines visibility is incorrect (f0d59b1)

Features

  • media-capture: Update type for returned file (6238b6f)
  • ui-docs-client: use Button in docs nav (36bd57e)
  • ui-icons: update lti sketch file with existing integrations icon (85a8e49)
  • ui-layout: allow node to be passed to Media description (2987cd3)
  • ui-overlays: add a 'regular' size tray option (396b9ad)
  • ui-tree-browser: allow item thumbnails in TreeBrowser (a1ec11b)

5.37.0 (2018-12-18)

Bug Fixes

  • ui-a11y,ui-overlays: shift+tab shouldn't skip Popover trigger (8838a11)
  • ui-billboard: fix margin + href/onClick alignment issues (181746a)
  • ui-docs-client,ui-docs-plugin: fix ES path in usage examples (2bd2baa)
  • ui-elements: truncateText should handle the empty string (ff2f69d)
  • ui-elements: update focus styles to use outline (1b044d3)
  • ui-forms: eliminate unnecessary console warnings in Select (9d9c3de)
  • ui-forms: fix the closeOnSelect prop in Select (2b6b5f4)
  • ui-layout: add default max-width to View styles (019557b)

Features

  • ui-elements: add layout prop to Table (976a2f7)
  • ui-icons: add 'duplicate' icon (b79ddb5)

5.36.0 (2018-12-12)

Bug Fixes

  • ui-a11y: Fix opening non kb focusable dialog from another dialog (cf3af9a)
  • ui-elements: fix delimeter in HC mode - IE11/EDGE (9af87dc)
  • ui-elements,ui-overlays: Focus state for truncated Pill (a5d5b1b)
  • ui-number-input: add missing dotfiles (372eea9)
  • ui-overlays,ui-a11y: fix Popover with inline content (6ec67ad)

Features

  • ui-forms: display dashed line around FileDrop component in default state (9c9181d)
  • ui-presets,ui-test-utils: add karma viewport plugin (138a2f8)

5.35.0 (2018-12-06)

Bug Fixes

  • ui-a11y: hide iframe content from screenreaders when outside of focus region (573ef9d)
  • ui-buttons,ui-elements,ui-forms: remove aria-disabled for input components (512fb92)
  • ui-elements: fix focus outline for ellipsis Links (7365c3c)
  • ui-form-field: add missing files to ui-form-field package (ace6c0e)
  • ui-forms: fix focus outline for fixed-width TextArea (dad6e65)
  • ui-forms: focus lost with RadioInputGroup in Dialog (73f7fb8)
  • ui-forms: include select option groups in onChange (f45c04b)
  • ui-forms: prevent disabled and readonly selects from expanding (b9c3586)
  • ui-forms: prevent select arrow icon shrinking (e47af0b)
  • ui-forms: TextArea overflow and focus ring updates (4157ea9)
  • ui-layout: margin warning shouldn't apply to flexed elements (854f3a3)
  • ui-layout: position miscalculates offset with body margin (bb16787)
  • ui-overlays: simplify Modal to rely solely on open prop in place of state (a52ceaf)
  • ui-tabs,ui-utils: allow null children in TabList (496fceb)
  • ui-test-utils: handle React 16 uncaught errors (7fd8bec)
  • ui-testable: look up the DOM node inside the timeout (e212f64)

Features

  • debounce,ui-utils: add debounce package (862294b)
  • ui-buttons,ui-elements,ui-themes: update link color for standard theme (78a18fa), closes #2578
  • ui-editable,ui-elements: In place edit (d98d6b4)
  • ui-number-input: add controlled NumberInput (0d71026)
  • ui-test-utils: add findParent, findParents utils (1d5aeb7)
  • ui-test-utils: add selector to query failure messages (e77358e)
  • ui-test-utils: support Sizzle selectors (65481ff)

5.34.0 (2018-11-20)

Bug Fixes

  • ui-forms: SelectSingle capitalization (c740561)

Features

  • ui-elements: copy focusable styles to link (36e76e9)
  • ui-focusable: update focus outline to 2px (962e689)
  • ui-forms: copy focusable styles to numberinput (e865a02)
  • ui-forms: update focus styles for Select (3d6912b)
  • ui-icons: add new icons (4a83f6b)
  • ui-tree-browser: update TreeBrowser styles (3c8bc94)
  • ui-tree-browser: use outlined icons for TreeBrowser (5d89c38)

5.33.0 (2018-11-14)

Bug Fixes

  • ui-elements: increase maxWidth of Pill (ce94e5f)
  • ui-forms: fix aria-checked on checkbox (42351cc)
  • ui-layout: FlexItems width fix (b161d96)
  • ui-test-utils: locator find/findAll return component root (5866235)
  • ui-test-utils: update clickable requirement (ef9d12d)

Features

  • media-capture: Allow MediaCapture to work without a webcam (1fd0ba7)
  • ui-forms: update TextArea focus styles (19ae400)
  • ui-forms: update TextInput focus styles (8acc504)
  • ui-layout: add omitViewProps function to View (55556a4)
  • ui-overlays: add test fixture for Popover, Tooltip, Position (aea476a)
  • ui-presets: Use major version for x-package deps (47b793b)
  • ui-test-utils: add tabbable, clickable helpers (2fbe6c2)

Performance Improvements

  • ui-overlays: fix ref in Mask to work w/shallowCompare (0a0a706)

5.32.0 (2018-10-31)

Bug Fixes

  • ui-i18n: fix moment-timezone double import (b2662a0)
  • ui-test-utils: fix event firing (3852beb)

Features

  • ui-buttons: update tests to run on React 16 (8c3b7c8)
  • ui-forms: allow SingleSelect to accept arbitrary typed input (8e324c8)
  • ui-icons: add filter icon to iconography (5f8162e)
  • ui-navigation: update tests to run on React 16 (9ea84f2)

Performance Improvements

  • ui-overlays: improve perf of (dc1085f)
  • ui-overlays: improve perf of (7b4e622)
  • ui-themeable: avoid a forEach loop when possible (3273839)
  • ui-utils: simplify getClassList since all browsers we support have classList API (d388c04)

5.31.0 (2018-10-26)

Bug Fixes

  • media-capture: esc key propagation for device inputs (ea04778)
  • ui-a11y: fix focus trapping for Dialog (945b74c)
  • ui-elements: Link role, type, tabIndex (f42ab3b)
  • ui-focusable: fix display property (08a0bd5)
  • ui-forms: DateInput should reset given an empty value (b2130f8)
  • ui-forms: fix autogrow + resize interaction (b65fdcd)
  • ui-layout,ui-overlays,ui-portal: prevent error when Portal DOM node is not defined (ad29d11)
  • ui-presets: fix publish-packages script (1cca5af)
  • ui-test-utils: .focus helper should programmatically focus (36abbd6)
  • ui-test-utils: add tests for components that render null (e684860)
  • ui-test-utils: filter in query instead of after (50ae1c5)
  • ui-test-utils: fix setContext method (6834f87)
  • ui-test-utils,ui-testbed: queries should work with SVG elements (a25f720)

Features

  • ui-billboard: update tests to run on React 16 (a9b7912)
  • ui-breadcrumb: update tests to run on React 16 (02e9900)
  • ui-layout,View: add light option to background prop (764a372)
  • ui-presets: add warning for non-async tests (00033a3)
  • ui-presets: upgrade eslint (a1dcf1f)
  • ui-svg-images: update tests to run on React 16 (0f4e40a)
  • ui-test-utils: add spy on Event.preventDefault, focusable selector (1e68a42)

Reverts

  • WIP(*): adding Accessibility documentation to the docs (f082fa4)

5.30.0 (2018-09-27)

Bug Fixes

  • ui-portal: ui-testable should be a dependency (64117ad)
  • ui-portal,ui-test-utils: return a DOM node from getComponentRoot (2903d29)

Features

  • ui-test-utils: add hasClass helper to test utils (72c21ad)
  • ui-test-utils: add utils for making custom queries (7ca0da9)

5.29.0 (2018-09-26)

Bug Fixes

  • generate-examples: add npmignore (80e54cb)
  • ui-elements,ui-utils: prevent TruncateText from rendering hidden text (b489a32)
  • ui-portal,ui-test-utils: fix empty selectors for testable.findAll (1ced426)
  • ui-test-utils: clear themeable stylesheet between tests (215f075)
  • ui-test-utils: expectEmpty should work with testable.findAll (3cf77f9)
  • ui-test-utils: fix findAll by label (bbb3a8b)
  • ui-test-utils: fix query by attribute (b6ba1ad)
  • ui-test-utils: fix query by text/contents (5f1cf80)
  • ui-test-utils: fix testable component matches (255fef7)

Features

  • ui-breadcrumb: add icon support (aab8e8c)
  • ui-test-utils: Add a ui-test-utils package (1e9f4ec)
  • ui-test-utils: add helpers to get tag, computedStyle (b456764)

5.28.1 (2018-09-18)

Bug Fixes

  • ui-breadcrumb: vertical alignment (699416a)
  • ui-forms: fix asyncronous Select option highlighting (5638ccb)
  • ui-forms: Fix time input in DateTimeInput (372d8ff)

5.28.0 (2018-09-13)

Bug Fixes

  • ui-elements: escape HTML strings used in TruncateText measurements (3c7d7a7)
  • ui-forms: Render selected option when not exist in options (c821efa)
  • ui-forms: Update DateTimeInput when changing locale or timezone (524307d)

Features

  • ui-overlays: add constrain to Modal (3392939)
  • ui-tree-browser: add selection styling to TreeBrowser (4643c66)

5.27.0 (2018-09-10)

Bug Fixes

  • pkg-utils: downgrade lerna to fix the release script (7bfc540)
  • ui-buttons: no role="button" for buttons (be78aac)

Features

  • docs-examples,generate-examples: autogenerate component examples (b50fae5)

5.26.0 (2018-09-06)

Bug Fixes

  • ui-a11y: evaluate functional liveRegion prop in ScreenReaderFocusRegion (3425bf7)
  • ui-a11y: remove aria-hidden before node is removed (112f9ba)
  • ui-forms: invalid aria attributes when closed (410f1a9)
  • ui-forms: Update input when selected options updated (128e3dd)
  • ui-layout: improve vertical margin warning on View (9c4fb19)
  • ui-menu,ui-overlays: Remove aria-expanded from Menu (2ea110d)
  • ui-presets: don't write incorrect npmrc files (0528899)
  • ui-presets: pass args to karma (5cbeb21)

Features

  • ui-axe-check: Add axe-core wrapper utility (3264318)
  • ui-docs-client: add figure/guideline for do/don't section (b253910)
  • ui-menu,ui-overlays: add constrain prop to tooltip and menu (98797aa)
  • ui-presets: Add --no-headless flag for karma (be4b0c0)

5.25.0 (2018-08-24)

Bug Fixes

  • ui-breadcrumb: Implement WebAIM recommendations (4e3ec0e)
  • ui-buttons,ui-elements: Fix Safari focus issue (7825b13)
  • ui-forms: do not clear input when receiving new options (e4ca8ca)
  • ui-forms: fix select expand/collapse click events (3d3bcc1)
  • ui-forms: RangeInput needs min-width (d1118d1)
  • ui-forms,ui-layout: add constrain prop to select (25bfc2e)
  • ui-layout: account for stretch positioning in constrain logic (d21ac1c)

Features

  • ui-pagination: Add tooltips to Pagination (0df511b)

Performance Improvements

  • babel-plugin-themeable-styles,ui-themeable: more small perf improvements (cf51ab9)

5.24.0 (2018-08-08)

Bug Fixes

  • ui-docs-client,ui-themeable: always apply theme when component updates (a9f7d74)
  • ui-elements: add aria attributes to Rating (9b859ba)
  • ui-elements: remove relative import (d0a184e)
  • ui-forms: clear out DateInput when passed an empty value (0b8bbcb)
  • ui-layout: Make Flex ignore null children (c49ec3d)
  • ui-presets: trim command results (eeb62c0)
  • ui-themeable,ui-themes,ui-utils: remove immutable variable (5b6178e)

Features

  • ui-buttons: add cursor prop to Button (b47fbb5)
  • ui-elements: add warning and message variants to pill (7665242)

Performance Improvements

  • get babel helpers from 'babel-runtime' instead of inlining them (1472658)
  • ui-presets: add babel constant elements transform (a62f424)

5.23.0 (2018-08-03)

Bug Fixes

  • docs-app: fix codepens (4c755f5)
  • ui-buttons,ui-elements: Fix event target (8e29910)
  • ui-presets: fix bump script (14e6668)

Features

  • ui-elements: handle Pill overflow with Tooltip (64d75d1)
  • ui-media-player: Add SourceChooser to VideoPlayerControls (44fdb71)
  • ui-presets: add an install-react script (d4e87fe)
  • ui-presets: Allow files passed to ui-test --lint (47c1e5c)
  • ui-presets: better cross platform support for scripts (9343a7e)
  • ui-presets: run tests with react 15 and 16 (148fe88)
  • ui-tree-browser: improve aria support (bad6cc9)

Performance Improvements

  • ui-buttons,ui-tabs: a couple more small perf improvements (2b00c1b)

5.22.0 (2018-07-27)

Bug Fixes

  • move React/ReactDOM back to peerDependencies (99e9458)
  • docs: add id to README (d3a43d4)
  • ui-elements: prevent invalid props error for Text (1452a12)
  • ui-themeable,ui-themes: fix theme.use({ accessible: true }) (fe07a3a)

Features

  • ui-presets: Separate out node test from karma (01aea24)

Performance Improvements

  • ui-buttons: speed up s (54d7c71)
  • ui-elements: speed up (6fff58b)
  • ui-forms: don't even render options
      when not open (e3fa113)
    • ui-i18n: cache the default "dir" lookup (ac746a8)
    • ui-layout: avoid View::verifySpanMargin check in prod (b0c2691)
    • ui-utils: a faster uid() (d0fc68e)
    • ui-utils: speed up pickProps and omitProps (e286ef6)

    5.21.0 (2018-07-25)

    Bug Fixes

    • add React,React-DOM 16 to dependencies (d49430f)
    • fix typo in `build:examples` script (e0f9772)
    • ui-a11y: remove role presentation on PresentationContent (0c777a0)
    • ui-buttons: prevent error on null child in Button component (5681198)
    • ui-docs-plugin: fix docs build w/ docker (565147e)
    • ui-elements,ui-focusable,ui-navigation: docs app fixes (fe4f121)
    • ui-forms: prevent scroll jumping with long textareas (61d7a2e)
    • ui-layout: fix position constrain logic (656d7c1)
    • ui-motion: apply aria-hidden to transition content when transitioned out (ca818c1)

    Features

    • ui-alerts,ui-icons: update/add icons, update icons within alerts (da0c3f6)
    • ui-elements,ui-themes: add link decoration brand variable to canvas theme (e88ca27)
    • ui-overlays: make label prop required for overlay (3fdd14c)

    Performance Improvements

    • ui-buttons: avoid work just to show a warning in production (0f2cbe9)
    • ui-themeable: avoid doing work per-instance (9b2a84c)
    • ui-themeable: only run the code that adds "dir" to once (954ab88)
    • ui-utils: use a constant array in omitProps to avoid garbage (6b5d868)

    5.20.1 (2018-07-18)

    Bug Fixes

    • ui-presets: more release script updates (387808c)
    • ui-utils: fix recent change of DeprecatedComponent (c7dd5d7)
    • ui-utils,ui-themeable: fix bug applying high-contrast theme (f42b126)

    5.20.0 (2018-07-17)

    Bug Fixes

    • docker,ui-presets: fix a few bugs with the post-publish script (c75f5cc)
    • ui-a11y: resolve issues with multiple focus regions in FF and Safari (a6cc584)
    • ui-elements: Improve circle Progress for SRs (76c6ecb)

    Features

    • ui-elements: add constrain prop to Img (d2911a2)
    • ui-presets: Include changelogs in rc packages (edd1873)

    5.19.0 (2018-07-12)

    Bug Fixes

    • babel-plugin-themeable-styles,ui-presets: add hashPrefix to CSS classes (3e0d269)
    • docs,ui-docs-client: make menu closed by default (2f5b14f)
    • ui-a11y: dismiss FocusRegion even when source event's default is prevented (babd1fc)
    • ui-forms: stop JAWS always reading the first option (b41bd4f)
    • ui-presets: quiet down some noisy output (09c2789)
    • ui-presets: remove no-verify for bump commit (b7a6be1)

    Features

    • ui-a11y,ui-focusable: add Focusable component (555bb30)
    • ui-icons-build,ui-icons: add es modules version of ui-icons (b6b8de5)
    • ui-media-player: Add Volume to VideoPlayerControls (762242e)

    Performance Improvements

    • ui-forms,ui-utils: use 'fast-deep-equal' instead of 'deep-equal' (7732ff3)
    • ui-themeable: some things to make themeable faster (fc0a269)
    • ui-utils: improve perf of DeprecatedComponent in prod (66888e5)

    5.18.0 (2018-07-09)

    Bug Fixes

    • ui-presets: add git user and email (f210506)

    Features

    • ui-presets: move .env variables into package.json for ui-scripts (5e97982)

    5.17.0 (2018-07-06)

    Features

    • ui-icons: add calculator icon (df2f9ce)

    5.16.0 (2018-07-06)

    Bug Fixes

    • ui-layout,ui-motion,ui-overlays: theme prop should work w/ Portal (2c20181)
    • ui-pagination: fix perf for lots of pages (40e18e9)

    Features

    • ui-code-editor: add bash language type to code editor (5fba1f9)
    • ui-icons: add check-mark-indeterminate icon (886e700)
    • ui-icons: add quiz-title and quiz-instructions icon (6cf0691)

    5.15.0 (2018-06-28)

    Bug Fixes

    • ui-a11y,ui-overlays: Improve KO navigation for Popover (8d547ce)
    • ui-presets: don't PSA for release candidates (7cf8648)

    Features

    • ui-forms: add screenreader announcements to Select (0ccfc36)

    5.14.0 (2018-06-28)

    Bug Fixes

    Features

    5.13.1 (2018-06-22)

    Bug Fixes

    5.13.0 (2018-06-16)

    Bug Fixes

    • cz-lerna-changelog: pass in config for footer prefix (9822f1f)
    • karma: Improve plugin support inside monorepos (94d0d2a)
    • NumberInput: fix controlled component (1ec816a)
    • Tag: pass down elementRef (ccb7a11)
    • ui-forms: fix aria-selected values on Select options (d84098a)
    • ui-forms: Select input shouldn't be wrapped w/label (4c6e6c1)
    • ui-forms,RangeInput: focus styles for Edge 16 up (bbdf9e6)
    • ui-i18n: Fix leading zero decimal parsing (3224dc8)
    • ui-layout: Make body scrollTop attribute consistent for positioning (55e5ed2)
    • ui-presets: catch error w/ no issues (0443262)
    • ui-presets: include version in slack message (c762e86)
    • ui-presets: only run deploy after a stable release (387501c)
    • ui-presets: release script changes for Jenkins (511ddb3)

    Features

    • cz-lerna-changelog,ui-presets: add lerna changelog package (f7592eb)
    • ui-buttons,Button: Add circle-default variant (addb97c)
    • ui-elements,Link: Add icon prop to Link (8953edb)
    • ui-media-player: Add FullScreenButton to (2ba3722)

    5.12.0 (2018-06-11)

    Bug Fixes

    • ui-i18n,Decimal: fix toLocaleString (b32e06c)
    • ui-elements: Fix lineHeight default in TruncateText (cbbf35f)
    • ui-forms,Select: Change selected option when Select children update (5dc9391)
    • ui-presets: Always pass an npm tag to publish (da06936)
    • ui-presets: Remove meta data from pre-release versions (ecc8d1c)
    • ui-tabs: add min-width so long string doesn't break layout (a0a9981)

    Features

    • ui-buttons,Button: Add icon prop (3e63ef7)
    • ui-buttons,Button: Responsive button docs (4f52006)
    • ui-presets: Add ui-scripts for release and publish (1e7409f)

    5.11.0 (2018-06-06)

    Bug Fixes

    • docs: Add Object.values polyfill to fix IE11 (af17ebd)
    • inputs: remove negative z-index from radio and checkbox inputs (b49249b)
    • Locale: use documentElement.lang prior to window.navigator for defaults (2ea6603)
    • ui-core,codemod: add import from ui-core to ui-alerts for Alert (6e524f5)
    • ui-docs-client: Update usage examples for commonjs imports (b8ef639)
    • ui-forms: Fix selected option matching in SelectSingle (193da1f)
    • ui-pagination: Change focus only when necessary (fc5642f)
    • ui-utils: fix console.warn.apply(undefined) (e7dc6ad)

    Features

    • config-loader: Add a config-loader package (832ff12)
    • release: Add a post-release script to update Jira (eb3642d)
    • ui-elements,Badge: RTL support start center/end center placement (175f25c)
    • ui-elements,Progress: RTL support for ProgressBar with visible val (5756a8e)
    • ui-elements,Tag: RTL support for the inline variant (953f870)
    • ui-forms: Rtl support for Checkbox toggle variant (1de3e0a)
    • ui-forms: Rtl support for select (f0732d4)
    • ui-forms,RangeInput: ensure the min max values switch when "rtl" (5bdc70a)
    • ui-i18n,docs: ApplyTextDirection child func/position docs (248c7e6)
    • ui-layout: Rtl support for DrawerLayout (fdeee39)
    • ui-layout,Media: RTL support for Media (1b8790a)
    • ui-media-player: Adopt Legacy Context API (7416dd4)
    • ui-media-player,media-capture: Rtl support for VideoPlayer (bbe0f60)
    • ui-navigation,Navigation: RTL support for nav toggle action (dca378d)
    • ui-overlays: Mirror Popover placement for rtl (046ec0c)
    • ui-presets: Add stylelint rules for bidrectional text support (b58ea17)
    • ui-toggle-details: ToggleGroup component (d828826)

    5.10.0 (2018-05-23)

    Bug Fixes

    • docs: Fix codepens (0e70c81)
    • eslint-plugin-instructure-ui: Add publishConfig (ac4640c)
    • NumberInput: formatValueOnRender prop (e734b8a)
    • scripts: Fix generate:component script (24f5e21)

    Features

    • scripts: Update generate:component template to reflect new pattern (69a10ce)
    • ui-forms,RadioInputGroup: let toggle support inline layout (ca611da)
    • ui-i18n: ApplyDirection and bidirectional components (06f052b)

    5.9.0 (2018-05-21)

    Bug Fixes

    • build: Add scripts, cname, and update env vars (576a6ca)
    • Decimal: allow in progress negative numbers (fab4a48)
    • docs: Fix broken component examples in ie11 (ea091ab)
    • scripts: fix bump script (64f1eef)
    • ui-a11y: focus manager does not steal focus on document click (0d59b0b)
    • ui-a11y: IE11 compatibility fix (1a03ff1)
    • ui-alerts,Alert: remove flex rule on contents (240ba81)
    • ui-pagination,Pagination: Manage focus (b0a3364)

    Features

    • ui-alerts,Alert: make aria-live configurable (8689784)
    • ui-code-editor: support yaml/yml formats (2ffc130)
    • ui-docs-client: prop to showMenu by default (7fb0fd5)
    • ui-elements,List: add line delimiters for vertical lists (9cba13d)
    • ui-elements,ListItem: Add padding prop to ListItem (5d866a2)
    • ui-icons: Adds closed captioning and full screen icons (57a0abb)
    • ui-icons,ui-icons-build,ui-svg-images: RTL for icon build (f5f40f6)
    • ui-media-player: Add ui-media-player package (fb5689e)
    • ui-toggle-details,ToggleDetails: allow full-width summary (fa39e0f)

    5.8.1 (2018-05-11)

    Bug Fixes

    • Set a default text direction to fix broken bidirectional styles (77f6aed)

    5.8.0 (2018-05-11)

    Bug Fixes

    • build: Fixes so that the release script doesn't fail (72eca18)
    • ui-docs-plugin: handle missing icons config (3168132)

    Features

    • storybook,RTLaddon: add a RTL button for switching storybook examp (2b9e0dd)
    • ToggleDetails: Add focus and focused (d80db8a)
    • ui-elements: Add a TruncateText component (86ee847)
    • ui-presets: Webpack loading for gif and otf (ffa0fa4)

    5.7.0 (2018-05-07)

    Bug Fixes

    • release: Fix auto-release script (f2b99d3)
    • ui-overlays,Popover: Pass down stacking/z-index to ContextView/View (a2a39ef)

    Features

    • ui-docs-client: Add RTL toggle to Playground (21a0a34)

    5.6.0 (2018-05-04)

    Bug Fixes

    • ui-utils: Remove relative package imports (b8fd970)

    Features

    • ui-presets: Add an eslint rule to prevent relative package imports (d23b53d)

    5.5.0 (2018-04-26)

    Bug Fixes

    • media-capture: Update the FileSave submit button to prevent default (fd47f2a)
    • ui-docs-client: Fix source code path (7c23cac)
    • ui-docs-client: Use resource displayName instead of name for usage (8357c5c)
    • ui-forms: Preserve FileDrop event during onDrop (e45b70d)
    • ui-i18n: Fix moment version dependency (b6289c2)
    • ui-overlays: Fix a11y issues in Tooltip and Popover (352b8ca)

    Features

    • ui-forms,DateInput: Add support for disabled days (c1067ad)
    • ui-icons,IconX: Updated IconX to be a little smaller (1bdcd86)
    • ui-layout,View: Add style prop white list (incl backgroundImage) (d8a35ab)
    • ui-overlays,Tray: Replace timeout with requestAnimationFrame (ddd9096)
    • ui-presets,eslint: Add no-undefined eslint rule (ff896ea)

    5.4.0 (2018-04-25)

    Bug Fixes

    • ui-a11y: Update Focus Region to focus on next tick (eef1df2)
    • ui-forms: Only render checkmark when checked (592d533)
    • ui-forms,DateInput: set newState to textInputValue vs raw (dd16c75)
    • ui-i18n: Fix moment's version to >= 2.20 for toISOString(keepOffset (5103a81)
    • ui-themes: Make high-contrast theme backwards compatible with < 5.3 (28b75ef)

    Features

    • build: Add no semi lint rule until we can add prettier config (cd97004)
    • ui-layout: Add View and ContextView components (497ccd5)

    Performance Improvements

    • ui-elements: async avatar loading (0501ae2)

    5.3.1 (2018-04-24)

    Bug Fixes

    • ui-themes: Should be backwards compatible with <= 5.3 components (6f44e11)

    5.3.0 (2018-04-20)

    Bug Fixes

    • ui-alerts: Fix an issue where removing screenreader alerts could fail (4fac6e6)
    • ui-docs-client: Update GithubCorner styles (57ddbec)
    • ui-icons,IconAssignment: Assignment should show for line & solid (fbfcf59)
    • ui-utils,getFontSize: Improve performance (702c923)

    Features

    • build: Add visual diff scripts (792d958)
    • build: Generate Sketch assets from component examples (33f88ae)
    • ui-forms: allow persistent options in MultipleSelect (ffc5946)
    • ui-icons: import codemod config (3b96226)
    • ui-navigation: new Navigation/NavigationItem component (29da924)

    5.2.0 (2018-04-06)

    Bug Fixes

    Features

    5.1.1 (2018-04-05)

    Bug Fixes

    • ui-utils: Generated element ids can't start with a number (c6e159e)

    5.1.0 (2018-04-04)

    Deprecations

    ui-menu: Deprecate MenuItemFlyout (dc82765)

    Don't panic. You can still create menu fly-outs. In order to simplify the component API, the MenuItemFlyout component has been consolidated with Menu.

    To create fly-out menus moving forward you can replace MenuItemFlyout with Menu.

    See the updated Menu documentation for examples.

    Bug Fixes

    • ui-forms: remove 0.01em top padding (14a5675)
    • ui-code-editor: CodeEditor content should update when value changes (eb7ecdd)
    • ui-toggle-details: iconColor should be themeable (14e6577)

    Features

    • DateTimeInput: new DateTimeInput component (2aaf29b)

    Performance Improvements

    • ui-utils: Replace shortid with nanoid (5d0a93e)

    5.0.1 (2018-04-02)

    Bug Fixes

    • Add missing dependencies (d66826b)

    5.0.0 (2018-03-29)

    Upgrade Guide

    The easiest way to upgrade is to run yarn upgrade --scope @instructure. Once you've done this, make sure you check the 'BREAKING CHANGES' section below so that you can make those changes as necessary.

    After upgrading you should see deprecation warnings in dev and test environments that will help you prepare for future releases (or check out the 'Deprecations' section below). The ui-codemods scripts should make it easy to update your import/require statements to get rid of a lot of the warnings. Note: you'll need to update your package.json file manually to add the new packages.

    Note though, that it's not necessary to upgrade everything at once. Depending on the size of your application you may want to upgrade a package (or component) at a time. This is a major release, but in this case it's safe to do that.

    Release Highlights

    Breaking up is hard to do: Goodbye, ui-core!

    We have broken ui-core into smaller packages like ui-breadcrumb, ui-buttons, and ui-container. This change is intended to make consuming Instructure UI components easier by allowing applications to only import and update the packages they need. You're welcome.

    ...and hello, ui-icons!

    This release brings Instructure's SVG icon library into Instructure UI. Icons can now be imported from the ui-icons package. We have also added a ui-svg-images package, with components for handling inline SVGs and SVG icons.

    If this release has a rock star, it's the Responsive component. It will swagger into your application wearing shades, rock the greatest guitar solo you've ever heard, and basically solve every responsive front-end problem ever. The true "one ring to rule them all" of responsive development, Responsive allows you to -- wait for it -- choose between element queries and media queries, specify your own breakpoints, and conditionally render content at those breakpoints. Enjoy.

    Add RFC generator and docs (64d6368)

    RFC stands for Request for Comment and reflects our new process for contributing to Instructure UI. An RFC is a markdown document that describes the purpose of the proposed change or addition, including the API, props and theme variables. RFC documents are committed to Instructure UI and iterated on by the contributor and the UI Development team. Once the RFC is approved and merged to master, development can begin. Take a look at the RFC for the Flex component, for an example, or create your own by running yarn generate:rfc in your local repository.

    A media-capture Package

    This package was contributed recently for use in the Arc video platform and includes a native VideoPlayer as well as a MediaCapture component for recording and uploading videos.

    Add Flex component (7f702ac)

    Feeling like Grid is just overkill for a simple column layout? Struggling to line up icons, buttons, and text? Thinking of just giving up and quietly using <table>? Well, you're in for a real treat, my friend.

    Add screen reader only variant to Alert

    Alert now has a screenReaderOnly property. When set to true, the alert should only be visible to screen readers.

    Add experimental flag and decorator (9bbcbab)

    This feature allows component developers to indicate that their component uses JS or CSS features that are not fully supported by all browsers, or that the component is still in experimentation mode and the API may change. Putting experimental: true in the YAML front matter of a doc will render a Pill with the text 'Experimental' before the page heading in the documentation. A console warning will also display in dev environments.

    Add Img cover property (edcc5ce)

    CSS's object-fit: cover comes to the Img component, with polyfill support for IE11. When the new cover prop is true, Img fills the full width and height of its containing element, while maintaining the aspect ratio of the source image. Great for full-page or section background images.

    Update Select to use non-native options dropdown (c291a38)

    We have combined Autocomplete and Select into a single, amazing component. No more ugly browser-styled select options! With this change, Select moves to the new ui-forms package. The original Select and Autocomplete components in ui-core are now deprecated and will be removed in a future release. We've also fixed a bunch of accessibility bugs in the process, so upgrade as soon as you can!

    Deprecations

    applicationElement (ee7d1e9)

    Remember when you used to have to pass in an applicationElement prop to Moda, Popover, and Tray?

    Forget about it. You no longer have to supply an applicationElement prop because it's all done automagically 🎩.

    ui-core Deprecations

    Nearly all components in ui-core have been deprecated in the 5.0.0 release and have been moved into separate, smaller packages. As you upgrade, you can run a ui-codemod script to update the import/require statements in your code, or check the config/imports.config.json file in the ui-core package to see where things have moved. Also note that if you upgrade the ui-core package, you'll see deprecation warnings in dev and test environments that will also tell you what the new package is for each component. Note: you'll need to update your package.json file manually to add the new packages.

    PopoverMenu (893f628)

    Speaking of ui-core... PopoverMenu will remain in ui-core but it does not make the move to the new ui-menu package on its own, PopoverMenu functionality has now been consolidated into Menu. By assigning a node to the trigger prop it will create a menu from the triggering element (ie: ).

    Close Buttons

    The closeButtonLabel prop is deprecated in Modal, Tray, and Popover. To migrate to the new versions of these components, render a CloseButton as a child (see the examples in the documentation for implementation details). This change should give consuming applications more control over the layout of the content.

    Icon width and height

    The width and height props have been deprecated in the SVGIcon component. Going forward, you can use the size prop instead. This should make the icons sizes more consistent across the consuming application.

    BREAKING CHANGES

    • ui-forms: MetricsList text alignment is now a prop instead of a theme variable
    • ui-motion,ui-alerts: - The Transition.duration and Alert.transitionDuration static attributes have been removed. These values are now distributed via a duration theme variable located in ui-themes/lib/canvas/base/transition.js
    • ui-presets: Themes have to be imported in a mocha.config.js file for mocha/jsdom tests
    • ui-forms: DateInput onDateChange prop arguments have changed and the invalidDateMessage prop is now required.
    • ui-forms: RadioInputGroup onChange prop arguments have changed
    • ui-a11y: FocusManager is no longer exported as a singleton. You now need to import and create a new instance. Ex: const myFocusManager = new FocusManager()
    • ui-tabs: TabList deprecated accordion variant is removed. Use the ToggleDetails component instead.
    • ui-utils: Usage of CustomPropTypes will need to be updated for the types that have been split out into LayoutPropTypes, I18nPropTypes, FormPropTypes, and ThemeablePropTypes

    Bug Fixes

    Features

    4.8.0 (2018-03-26)

    Bug Fixes

    • ui-buttons: Button href prop should work with onClick (b2a78bb)

    Features

    • ui-overlay,ui-i18n: add RTL language support to Tray (92679d7)

    4.7.3 (2018-03-06)

    Bug Fixes

    • FileDrop: Fix positioning of the inner native file input element (3664ccb)

    4.7.2 (2018-02-14)

    Bug Fixes

    • ListItem: stop :not selector selecting everything (8209b8c)

    4.7.1 (2018-01-25)

    Bug Fixes

    • ui-menu: Pass href prop down to ElementType (e876404)

    4.7.0 (2018-01-24)

    Bug Fixes

    • babel-plugin-transform-class-display-name: Add empty statement (92473b3)
    • Button: fix icon alignment for small/large circle variant (2853f53)
    • Button,TreeBrowser: Focus outline on focus only w/ MS Edge (30ee7b2)
    • DateInput: fire onDateChange when transitioning to/from empty (9765f55)
    • MetricsList: fix alignment for edge (58333cd)
    • MetricsList: Vertically align MetricsListItems (b666c09)
    • Popover: adds alignArrow prop to Popover (46414dc)
    • TimeInput: allow disabled prop to pass down (6e9f444)

    Features

    • List: Add itemSpacing prop (36cf537)

    4.6.0 (2018-01-03)

    Bug Fixes

    Features

    • build: Support a beta release branch (b9b187c)
    • Button: Handle text color for :hover/:focus (8c77678)
    • PopoverMenu: re-export MenuItem, etc. for simplicity (52ecc4c)
    • postcss: Add config option to opt into nesting instead of nested (5443bbb)

    4.5.0 (2017-12-19)

    Bug Fixes

    • CloseButton: remove inline size to allow size prop to work correctl (0c01510)
    • DateInput: Allow text input when component is controlled (05e0112)
    • FormFieldLayout: fix inline input issues (35ca6bb)
    • ui-codemods: Update Typography to Text (ff9d596)
    • ui-docs-plugin: Pass down config to loaders correctly (62f01f6)
    • ui-presets: Remove unnecessary dependency that's causing issues dow (a55b8b3)

    Features

    • List: Updates variant prop. Adds delimiter prop. (7b29a44)

    4.4.1 (2017-12-14)

    Bug Fixes

    • ui-docs-plugin: Pass down config to loaders correctly (deabfc4)
    • ui-presets: Remove unnecessary dependency that's causing issues dow (bd2d81e)

    4.4.0 (2017-12-13)

    Bug Fixes

    • Avatar: trim whitespace in makeInitialsFromName (4317939)
    • docs: Add missing docs app dependency (fea9a70)
    • TextArea: shrink when cleared (0b45287)

    Features

    • ui-presets,ui-core: Add support for node test environments + tweaks for quizzes (dc7a484)

    4.3.0 (2017-12-11)

    Bug Fixes

    • Alert: close button focus overlapping edge of container (aeb2130)
    • Alert: Convert border values to theme vars (273c86e)
    • Autocomplete: fix controlled behavior (8af7d62)
    • browser: fix accessing style when it's undefined in Position (806a861)
    • build: Always ask for the release tag (e01629c)
    • build: Use correct format for release (git) tags (c9ec4df)
    • Checkbox: Update disabled/readonly checkboxes to not be tabbable (8b37729)
    • ContextBox: Position close button correctly in dialog example (7c0e846)
    • DateInput: fix controlled component version (af6208e)
    • DateInput: Link messages to inputs for SR (fe8f2bc)
    • DateInput: Prevent inputRef from getting called multiple times (1dbd960)
    • FileDrop: allow extensions without leading dot (9a155e9)
    • Grid: Make GridCols equal-width by default (cb8e5d3)
    • Link: fix inverse focus for a11y (c98a4af)
    • List: remove ellipsis styles from pipe variant (390a60a)
    • Mask: Make full-screen Mask work in Safari (029f467)
    • Menu: Long menu item alignment is off (3cfc435)
    • Menu,MenuItem,PopoverMenu: Fix VO double select on radio,checkbox (28b733b)
    • NumberInput: add sv locale (40c6cb7)
    • NumberInput: extend disabled styling to the arrow container (d3ac1d4)
    • Popover: Popover onDismiss callback never fired (28d236c)
    • RadioInput: Disabled/read-only radios selectable in Safari (5fbba2c)
    • RadioInput,Checkbox: Move inputs outside label elements (7531488)
    • release: Run tests only once for a release (c3710fb)
    • Select: Make arrowColor theme variable work (3731899)
    • Spinner: adjust large spinner animation (36d9ea6)
    • Tag: Tag components render wrong title value (88b9bf1)
    • ToggleDetails: Fix filled variant in IE11 (f1970d1)
    • Tooltip: Move focus on single tab press with tooltip (dd7d4d0)
    • ui-core: Audit/add missing Canvas variables (a9cefe9)
    • ui-core: Fix canvas-high-contrast component themes (c577019)
    • ui-docs-client: Codepen links are missing some globals (9e620e2)
    • ui-docs-plugin: misc fixes (aff7b27)
    • ui-presets: Build CSS with webpack in dev/debug mode (d3083be)
    • ui-presets: Don't remove width/height from SVG tags (639f620)

    Features

    • build: Default release script to HEAD commit (f96b34a)
    • build: Use headless chrome (39339fd)
    • ContextBox,Container: Moving border from ContextBox to Container (8bf314a)
    • FileDrop: Add support for validation messages (37a9106)
    • FormField: Add prop to allow left aligned FormField label (089833a)
    • Menu: Add focus state (b5f4069)
    • Menu: Focus first menu item when menu only has one item (d03d1f2)
    • TextInput: add textAlign variant to support center (53843e1)
    • ui-core: Move moment dependency to ui-utils (0d12a6a)
    • ui-presets: Add build and test scripts (6921a48)
    • ui-themes: Add canvas-high-contrast theme (e6cd8e8)
    • ui-utils: Add a uid helper (c9cc6c3)
    • ui-utils: Addition of utils needed for the layout component (501ada3)

    4.2.0 (2017-12-08)

    Features

    • button: remove focus on disabled buttons (863e055)

    4.1.0 (2017-11-29)

    Bug Fixes

    • Tag: Focus state hidden in IE11 (22d5d5c)
    • ui-docs-client: Codepen links are missing some globals (0a3f30c)

    Features

    4.0.1 (2017-11-17)

    Bug Fixes

    • Mask: Fullscreen modal footer hidden on iPad (ebb76d5)
    • ui-codemods: add lib to imports path for ui-themes and ui-themeable (973cf9b)

    4.0.0 (2017-10-13)

    The two major themes of the 4.0 release are mono-repo and documentation!

    Mono-repo

    In 4.0 we've split the instructure-ui library into a bunch of smaller libraries and we're publishing them all as separate modules to NPM.

    This should make it easier to upgrade going forward. (e.g you can upgrade to a patch or minor release of @instructure/ui-core without upgrading @instructure/ui-themeable).

    Unfortunately this also means that paths for imports will have to change when applying this upgrade.

    However, the codemod script provided by @instructure/ui-codemods should help with that, and you can see what paths have changed in the ui-core/config/imports.config.json file.

    Documentation

    The @instructure/ui-docs-plugin module has gotten an overhaul and now supports JSDoc and generates documentation from any file format that supports JS style code blocks, in addition to markdown.

    All of the utilities, and packages have been documented, so finding your way around the libraries and seeing how they fit together should be a lot easier.

    Bug Fixes

    • Alert: Announce live region content in the docs (493440a)
    • Autocomplete: add calls for onInputChange (33ad3cb)
    • Autocomplete,Codepen: Codepen examples should render (36ef124)
    • Autocomplete,Menu,Dialog: Prevent esc from closing Dialog (284eeed)
    • Avatar: include canvas theme generator (dc27b6a)
    • build: ignore lib directories (cb56606)
    • build: Use local version of yarn for scripts (fcf7732)
    • build: use relative paths for entries so that app rebuilds in dev (f60d94d)
    • Button: Correct fluidWidth Button heights (5ede261)
    • CheckboxGroup,RadioInputGroup: Link messages to inputs for SR (fba6550)
    • documentation: Examples should have valid URLs for hrefs (18eeaa4)
    • FileDrop: make input sibling of label (d892cff)
    • Forms: fix css placeholder color (7c63393)
    • Forms: Update size prop (95ecfd2)
    • Grid: width and offset not working (1a2fa45)
    • Grid: GridCol with width="auto" should not shrink (ae82286)
    • Mask: Prevent mask from calling onDismiss when defaultPrevented (4f42ad0)
    • Mask: Update Mask example text (77deb7e)
    • Modal: Modify modal to dismiss for Mask click instead of document (64f6816)
    • ToggleDetails: Fix fluidWidth prop / updates (de9ef24)
    • ui-docs-client: Fix navigation issues (193399e)
    • ui-docs-client: Make version link to changelog (581fca4)

    Features

    • Autocomplete: implement value getter (1a8a730)
    • ui-codemods: Adding codemod for updating imports (f4907cb)
    • build: Monorepo second pass (5fae316)
    • build: Monorepo, yarn workspaces and Lerna setup (edd71af)
    • DateInput: Add conversion status as part of onDateChange (1ecb819)
    • Forms: Update component font sizes (13f77c6)
    • List: Remove margin from unstyled list item (0e39d75)
    • ToggleDetails: add controllable behavior (f767b50)
    • ui-docs-plugin: Doc comment blocks in all file types & JSdocs (6189147)
    • ui-docs-plugin: Integrate react-axe in dev mode (6a29682)
    • ui-utils: Add jsdocs for util functions (c6b5834)

    BREAKING CHANGES

    • Autocomplete,Codepen: JS examples will need to include a call to render and will need to include render: false as front matter inside the code block
    • ui-docs-plugin: Inverse examples will need to include inverse: true as front matter inside the code block
    • Typography,Text: Typography component is renamed to Text, so imports/requires will need to be updated (it's added to the codemod config in ui-core)
    • Forms: The font size of the components will have increased
    • Forms: Font-sizes for large and small simple RadioInputs and Checkboxes have changed. In particular, Checkbox toggles have gone from using the same font-size for every size to changing the font-size based on the size prop (to be consistent with other InstUI components).
    • List: ListItem with unstyled variant won't have margins.
    • build: Imports of instructure-ui/babel/, instructure-ui/lib/themeable and instructure-ui/lib/themes will need to be updated
    • build: Imports of instructure-ui and ui-docs packages will need to be updated to use the new packages: @instructure/ui-core, @instructure/ui-codemods, @instructure/ui-config
    • build: Imports of ui-docs will need to be updated to: @instructure/ui-docs-plugin, @instructure/ui-docs-client
    • Autocomplete: onInputChange prop now has a new argument providing the value and the event argument is now nullable
    • ToggleDetails: expanded prop now means ToggleDetails is controlled and defaultExpanded prop fills the same job expanded did previously

    3.4.0 (2017-09-12)

    Bug Fixes

    • babel: Warn on unlocatable css imports (c6d82fc)

    Features

    • themeing: Allow ignoring certain files (c24e4bc)

    3.3.1 (2017-09-11)

    Bug Fixes

    • Autocomplete: Autocomplete clears text on select (143ce14)
    • Container: add missing prop-type (946604d)
    • DateInput: Fix multiple setState calls via input ref function (0cce6d7)
    • file-drop: Fix dropping the same file twice (34aa303)
    • Modal: Added fullScreen prop to Mask component (7ddea42)
    • Modal: disable page scrolling when fullScreen prop is set (207780e)
    • themeable: Allow multiple themeable components with the same name (779fc7d)

    3.3.0 (2017-09-06)

    Bug Fixes

    • Alert: Apply a11y theme to added alerts (531a4ad)
    • Autocomplete: add index argument to formatSelectedOption (a7dfccb)
    • Autocomplete: Add more end padding to input (4496b4a)
    • Checkbox: Add min-width rule to label (4e35459)
    • ContextBox,Position: ContextBox positioning is incorrect (0e44db0)
    • DateInput: Make popover target the input element (5ad19e7)
    • DatePicker: DatePicker UI improvements (b0872ce)
    • Modal: Max-width for Modal content (af0607c)
    • Modal: positioned content breaks out of Modal (9ef840a)
    • Popover: Fix focus trapping to work with Menu (bfcccf4)
    • Popover,Dialog: Prevent Popover jumping to bottom of screen (426f4ff)
    • Position: fix out-of-bounds calculation for Position (9c1aa4b)

    Features

    • TabList: Add tabRef prop to TabPanel (77a8def)

    Performance Improvements

    • lib/util/time.js: Don't force all locales to be included in bundle (6a62bd4)

    3.2.0 (2017-08-18)

    Bug Fixes

    • Autocomplete: adds optionsMaxWidth prop to Autocomplete (f2e0f2f)
    • button: Firefox - Return button needs to be pressed twice (4a6fe9f)

    Features

    • autocomplete: Change autocomplete min-width (03a7652)

    3.1.0 (2017-08-16)

    Bug Fixes

    • autocomplete: add min-width to autocomplete (587f074)
    • build: release script should run the deploy (3ed1b20)
    • codepen: use the correct format for js_external param (9398a93)
    • NumberInput: Fix hidden arrows in Firefox (727609c)
    • Position: ContextBox arrow should be correct in example (4406d57)
    • warning: use console.error instead of throwing errors (5aa3a7b)

    Features

    • Checkbox,CheckboxGroup: Add Readonly to Checkbox values (a77624f)
    • RadioInput: Allow readonly on radioinput values (5248571)

    3.0.0 (2017-08-08)

    This release is all about dialogs. We've made a new Dialog component, and we're now using it in Popover, Modal, and Tray, so that they all get the new functionality and have a consistent API.

    We've also done a lot of property renaming to also help with that consistency and developer UX going forward.

    Note: We've included a codemod and DEV environment warnings to make it easy to update your code to use the new property names.

    BREAKING CHANGES

    To help with this upgrade, deprecated props should now emit console warnings in DEV environments. You can also run the codemod to update properties for this release:

    yarn add @instructure/ui-codemods
    jscodeshift -t node_modules/@instructure/ui-codemods/lib/updatePropNames.js <path> --config=node_modules/@instructure/ui-core/config/propNames.config.json
    • DateInput: add value prop for controlled component support
    • build: themeable.config.js now required for babel preset.
    • DateInput, DatePicker: callback function arguments changed
    • Table: deprecated props
    • Portal, Position, Overlay, Modal, Tray, Popover: deprecated props
    • Menu, PopoverMenu: deprecated props
    • Tag: deprecated props
    • Alert: deprecated props

    Bug Fixes

    • Autocomplete: Add z-index to avoid overlap (a588081)
    • Autocomplete: fix duplicate calls to onChange (856e67b)
    • Autocomplete: Make options menu expand to full input width (d6dfe87)
    • Autocomplete: Resolve VO issues (e4d4592)
    • Autocomplete: The options list should close on select (d672875)
    • Autocomplete: visual bug fixes (27d858b)
    • Billboard, omitProp 'padding': don't allow padding to get styled (c860d3f)
    • build: Remove .js from theme import in template (cad860e)
    • Button: buttonRef prop should return the button DOM element (29474cd)
    • Button: Fix :focus ring issue in Firefox (430cf7d)
    • Button, fluidWidth: replace min-height with top/bottom padding (30b3073)
    • Button, omitProp 'padding': padding was getting passed down through (c005760)
    • Checkbox: Make size prop work for CheckboxFacade (53523f8)
    • DateInput: Make props align better with controlled and uncontrolled (712447d)
    • DateInput, DatePicker: Provide the event object in the callback arg (37cd10a)
    • DatePicker: Fix :focus states in Edge 15 (ae620ef)
    • dependencies: Resolve empty styles in transpiled JS (f79c154)
    • Dialog: Render Dialog example outside aria-hidden region (3b614db)
    • docs: Upgrade ui-docs to prevent theme conflicts (db23135)
    • ensureSingleChild: Fix ensureSingleChild when child is a string (f796ca0)
    • FormFieldGroup: Handle null children (9b9019a)
    • generate: Fix the component template for the generate task (76d86f0)
    • Heading, omitProp 'padding': don't allow padding to get passed down (c4dbd6b)
    • Image, omitProps 'padding': keep padding from getting passed down f (df1c2ec)
    • lint: lint errors shouldn't fail build when debugging (5e21641)
    • List, omitProps 'padding': don't let padding get styled (9fa375e)
    • Media, omitProps 'padding': padding should not be a media property (d966622)
    • Menu,PopoverMenu: Menu flyouts should close onSelect (b8185a0)
    • Pagination, omitProps 'margin/padding': don't allow margin/padding (3d27f40)
    • Pill, omitProps 'padding': dont' allow padding to be added as a pro (7b8502f)
    • PopoverMenu,MenuItemFlyout: Only close flyout on ESC press (a767adf)
    • Position: Fix mountNode prop in rel position container (c59c339)
    • Position: Negative offsets should work (7c35e8f)
    • Table: Deprecate the tableData prop (5c9a5f6)
    • Table, omitProps 'padding': don't allow padding to be added as a pr (67c79e3)
    • Tag, omitProps 'padding': don't allow padding to be added as a prop (fcb251c)
    • themeable: Fix transform-themable with empty css files (1d05744)
    • themeable: Polyfill Edge 15 until improved css var support (427a13c)
    • TreeBrowser: Component broken in Edge v15 (f6aab8b)

    Features

    • Autocomplete: Adds editable prop to Autocomplete (15c70d1)
    • Button, Link: Add inverse link variants to Link and Button (8b499c5)
    • CloseButton: Add a CloseButton component (7475cb2)
    • DateInput: Return raw input for onDateChange (9195dd1)
    • Dialog: Add a Dialog component (0c197e1)
    • Mask: Add a Mask component (5db3aa2)
    • Popover: Add Dialog component behavior to Popover (fcb2b89)
    • Position: Add 'stretch', 'constrain' and 'over' props (6930e83)
    • Spinner: Add x-small Spinner size (14e49e6)
    • SVGIcon,InlineSVG: Add icon components and new rotation prop (02cd4b5)
    • Modal: Add Dialog component behavior to Modal (8597802)
    • Tray: Add Dialog component behavior to Tray (ffd181e)

    2.5.0 (2017-06-20)

    Bug Fixes

    • Autocomplete: Fix apply a11y theme (0e6c3b3)
    • Autocomplete: fix typo in autocomplete prop documentation (ce8bad9)
    • Container: Fix Transition issue with children visibility (0ec49ab)
    • DateInput: Preserve time portion of provided value across date selections (bb46db1)
    • NumberInput: make arrows work for large numbers (99b7d70)
    • TextInput: Handle icons better (5fc761b)
    • themeable: CSS variables polyfill shouldn't scope root selectors (1545a8f)
    • themeable: IE11 CSS variable polyfill should scope media queries (1f54b62)

    Features

    • Alert: Add live region support and transitions (948b00d)
    • Autocomplete: Added 'multiple' feature (520a005)
    • Badge: Support rtl text (3bce62f)
    • Breadcrumb: Support rtl text for breadcrumb (46c9ecf)
    • Button: Support rtl text (6f64f5d)
    • Checkbox: Support rtl text in checkbox (9038f86)
    • ContextBox: Support rtl text in ContextBox (7747bef)
    • Docs, ColorSwatch: Support rtl text in ColorSwatch (9237071)
    • FormField, TextInput: Support rtl text for text inputs (c7dbdc2)
    • FormFieldLayout: Support rtl text (2445616)
    • GridCol: Support rtl text in GridCol (cb687fd)
    • List: Support rtl text in List (56b6541)
    • Menu: Support rtl text in Menu (08b5253)
    • Modal: Support rtl text in modal (1d340b5)
    • NumberInput: Support rtl text in NumberInput (9a9a878)
    • RadioInput: Support rtl text in RadioInput (377b150)
    • Select: Support rtl text in Select (7caf740)
    • Tag: Support rtl text in Tag (ef69bfb)
    • TextArea: Support rtl text in TextArea (cd58264)
    • ToggleDetails: Support rtl in ToggleDetails (5e8aad4)
    • TreeBrowser: a11y navigation improvements (272c873)
    • TreeBrowser: Support rtl text in TreeBrowser (9e6b91e)

    2.4.0 (2017-06-12)

    Bug Fixes

    • Badge: Make it possible to add SR-only text (4e3737f)
    • DateInput: add messages to date input (1d18fc0)
    • themeable: Remove all 'ms-' hacks for non-IE browsers (0a491de)
    • NumberInput: NumberInput bug fix (ea84a69)
    • themeable: default theme overrides aren't applied to components (e58424f)

    Features

    • Grid: Forward aria/role attributes on components (04adaea)
    • TabList: Deprecate 'accordion' variant (30c7a2d)
    • TimeInput: Add a TimeInput component (78201d3)
    • TreeBrowser: Add expanded/defaultExpanded props (52a6ce1)
    • Breadcrumb: Add onClick to BreadcrumbLink (c6af374)

    2.3.0 (2017-06-01)

    Bug Fixes

    • Badge: Make SVGs display block (102207f)
    • codepen examples: fix codepen example links (866af50)
    • DatePicker: Make DatePicker KO navigable with arrow keys (059f947)
    • npm: Update shrinkwrap file so app compiles again (0ec660a)
    • NumberInput: Fixed-width input layout bug (fa6d9b8)
    • NumberInput: support i18n (4e814f5)

    Features

    • Autocomplete: Add an Autocomplete component (d3e0d47)
    • List: Add List component (1ee5c4d)

    2.2.2 (2017-05-22)

    Bug Fixes

    • MenuItem: Prevent onSelect from firing twice (2c67d78)

    2.2.1 (2017-05-22)

    Bug Fixes

    • Menu: Prevent UL margin style overrides (4522876)
    • ToolTip: Events on the child of Trigger not being passed through to Popover (69513b8)
    • MenuItem,Button: should support target="_blank" (99b8544)
    • MenuItemFlyout: Expose ref for flyout content (5e0622e)

    2.2.0 (2017-05-22)

    Bug Fixes

    • Position: Fix flaky Position test for Firefox (8ea348d)
    • Button: Fix heights and add icon support (faef77a)
    • ToggleDetails: Fix button type and fluidWidth (e1da0f4)
    • Modal: Fix fullscreen in safari cutting off content (d1d4ec7)
    • containerQuery: Should support ems (4a09603)
    • sinon-chai: Use the correct sinon-chai testing assertions (453a211)

    Features

    • ApplyTheme: Make accessible themes 'immutable' (144a4fb)
    • MenuFlyout: Add MenuFlyout option to Menu (6ea4f71)

    2.1.1 (2017-05-18)

    Bug Fixes

    • build: Fix compilation errors from missing moment-timezone (501184d)

    2.1.0 (2017-05-17)

    Bug Fixes

    • Button: fix display getting overridden (0409876)
    • requestAnimationFrame: requestAnimationFrame util should fall back (2352de8)
    • Tag, Pagination: fix margin-padding values (e34eb57)
    • text-align: Fix text alignment CSS rules for IE (1c22ba6)
    • themes: Provide a way to import accessible themes separately (7e556df)
    • Transition: Fix Transition component example (c197cba)

    Features

    • Badge: Add Badge component (3247199)
    • Button: add a danger variant (7d741aa)
    • DatePicker, DateInput: Add DatePicker and DateInput components (457dea7)
    • NumberInput: Add a NumberInput component (c37afdc)

    2.0.0 (2017-05-10)

    Bug Fixes

    • release: Fix typo in release script (9850924)
    • Spinner: Fix illegal rule console warning (d0820aa)
    • TabList: Fix TabList transitions and unmountOnExit (fcc5961)
    • themes: Don't depend on import order for themeable components, themes (10396c8)

    Dependencies and Build

    • Remove UMD output and build scripts (5d5eb65)
    • Upgrade React to the latest version (c422be7)

    API Changes

    • Avatar: Update the Avatar component API (56f4eab)
    • Container: Make size property values consistent (f75465a)
    • isBlock: Replace isBlock props with inline (c1dcdff)
    • ToggleDetails: Update the ToggleDetails component API (c8348b5)
    • RTL support: Replace left/right with start/end (c855ea1)
    • Grid: Change breakpoints and media to use 'small', 'medium', etc. (15f592a)

    Features

    • Button: Wrap text when 'isBlock' prop is set (d8af67d)
    • Pagination: Add Pagination (76ee0f0)
    • Pill: Add Pill component (354795c)
    • RTL support: Rename placement props (099795a)
    • Tag: Add Tag component (6a0d804)

    Upgrade Guide

    We've introduced some improved API and component changes that are not backwards compatible with previous versions. To help with migrating to 2.x, here is a list of specific areas where changes will be required in order to upgrade.

    Build and Dependency Updates

    • React 0.14.9 or 15.4.0 is required
    • UMD format is no longer supported
    • instructure-icons is now a peer dependency

    Themes no longer dependent on import order

    You no longer have to call setDefaultTheme. If you import just the theme that you need, it will be used as the default (otherwise the first theme imported will be the default).

    If you'd like to add user overrides or toggle on the a11y version, you can do:

    import { canvas } from 'instructure-ui/lib/themes'
    canvas.use({ accessible: true, overrides: brandVariables })
    

    Note: this also splits out the a11y themes from the base so they can be imported separately.

    BREAKING CHANGES:

    • removed ApplyTheme.setDefaultTheme
    • removed themeable.setDefaultTheme
    • trigger a11y themes using theme.use()

    size prop changes

    Camel-case values in Container component margin and padding props will need to be changed to use dashes (for consistency with other components).

    Alert, Avatar, Billboard, Breadcrumb, Button, ContextBox, Heading, Image, Link, Media, Modal, Pill, Progress, Rating, Spinner, Table, TabList
    1.x2.x
    'xxxSmall' 'xxx-small'
    'xxSmall' 'xx-small'
    'xSmall' 'x-small'
    'xLarge' 'x-large'
    'xxLarge' 'xx-large'

    Position API Changes

    Components previously using left and right for positioning have been updated to use start and end to better support RTL languages in the future.

    ContextBox, Popover, Position, Tooltip, Tray
    1.x2.x
    placement: 'left' placement: 'start'
    placement: 'right' placement: 'end'
    placement: 'middle' placement: 'center'

    textAlign prop Values

    Components previously using left and right for the textAlign prop have been updated to use start and end to better support RTL languages in the future.

    Container, ContextBox, FormField, Grid, GridCol, TabList
    1.x2.x
    textAlign: 'left' textAlign: 'start'
    textAlign: 'right' textAlign: 'end'

    isBlock prop

    Changes for consistency in component APIs

    Button, ToggleDetails
    1.x2.x
    isBlock: true fluidWidth: true

    Checkbox, FormField, FormFieldLayout, Image, RadioInput, Select, TextArea, TextInput, Tooltip, Transition
    1.x2.x
    isBlock: true inline: false

    Avatar Component API

    Changes to our <Avatar> component:

    1.x2.x
    userName: 'Sarah' name: 'Sarah'
    userImgUrl: {avatarSquare} src: {avatarSquare}

    ToggleDetails Component API

    Changes to our <ToggleDetails> component:

    1.x2.x
    isExpanded expanded

    Breakpoint (startAt) props

    Changes to the allowed values for the <Grid> component props, with extension into a few components where we allow breakpoints to be set:

    Grid, FormFieldGroup, RadioInputGroup, CheckboxGroup
    1.x2.x
    phone small
    tablet medium
    desktop large
    wide x-large

    1.4.1 (2017-04-14)

    1.4.0 (2017-04-13)

    Bug Fixes

    • MenuItemGroup: Prevent errors when MenuItemGroup has only one child (ec333dc)
    • Modal: Focus 'Open Modal' button in Modal example when Modal closes (ee02811)
    • Position: Improve Position component (for PopoverMenu bug fixes) (3e06a07)
    • Rating: Rating component should be themeable when animateFill pro (ce17907)

    Performance Improvements

    • themeable: Update shouldComponentUpdate for themeable components (3ad419b)

    1.3.4

    Upgrade instructure-icons @jstern

    Prevent normalize.css from breaking the Button component styles @mphillips

    1.3.3

    Add option to show on click to Tooltip @sburnett

    1.3.2

    Update onItemClick and onCollectionClick return values for TreeBrowser @mberns

    1.3.1

    Remove PureComponent so that the library still works with React 0.14.8 @jstern

    Call PopoverMenu event handlers after setState @jstern

    1.3.0

    Resolve PopoverMenu focus issues @sejensen

    Only render Portal/Position if it has content @mzabriskie

    Add a FileDrop component @ddoumecq

    Update modern theme for TextArea @phiett

    Add a Container component @chart

    Fix console warnings for invalid placeholder TextArea and TextInput styles @jsimon

    Fix IE11 bug with thin line on triangle for ContextBox @phiett

    Enter key should trigger onClick on Button component for any element @jstern

    Add ellipsis prop to Heading component @chart

    MetricsList read item label before value @cprescott

    Fix URL to docs in the docs @eschiebel

    1.2.0

    Add a trackPosition prop to Position component so that positioning can be toggled on/off @mzabriskie

    Fix Grid component/remove extra padding on left and right sides @jstern

    1.1.0

    Fix "illegal rule inserted" console warning @jstern

    Allow Billboard to render as a link if href prop is provided @chart

    Update look of Avatar @phiett

    Update modern theme for RadioInput @phiett

    Update modern theme for Checkbox @phiett

    Prevent referencing window at require time @bburgoyne

    Allow Billboard to pass props to button @chart

    Allow inverse close button on Tray @ctennety

    1.0.2

    Do not focus PopoverMenu trigger on mount @sejensen

    Fix shouldCloseOnOverlayClick prop for Modal @mzabriskie

    Fix PopoverMenu bug when MenuItems are triggered by ENTER key press @jstern

    1.0.1

    Fix focus state for RadioInput and Checkbox @chart

    Fix message display for form components at wide screens @jstern

    Fix focus for Menu component when first item is a MenuItemGroup @sejensen

    Add Billboard component @chart

    1.0.0

    Add a Position component @mzabriskie

    Update design of Checkbox toggle variant @chart

    Fix Grid component bugs with spaceAround and spaceBetween props in IE 11 @jstern

    Update design of RadioInputGroup toggle variant @chart

    Minimize CSS in JS bundles @jbelser

    Update modern design of Checkbox component @andy

    Fix CSS specificity bug with Link component @jstern

    Optimize style injection (using glamor Stylesheet) @jstern

    Import themes individually and change the API for setting the default theme. See theme documentation. @jstern

    Make box-shadows consistent (use theme config for shadows) @phiett

    Add x-small size to Progress component @brinaca

    Fix margins on FormFieldLabel when there is no visible label text @chart

    Fix Link component in a11y theme @chart

    Fix alignment of close button on Alert component @phiett

    Add as prop to (note tag and tagName props have been removed): @sejensen

    Update Button for modern theme @andy

    Add a buttonRef prop to the Button component @jstern

    Replace style prop on Typography component with fontStyle @jstern

    Fix spacing on Button component so that it lines up with TextInput @chart

    Fix Progress component VoiceOver bug @cpalmer

    Add focus management to Tray @jcorrigan

    Make onChange handler for TextArea consistent with TextInput @jstern

    Add an index file to the components directory in /dist build output @jstern

    Add focus ring to a11y theme of Link and Button components

    Add new color mediumLighter to canvas and modern themes @phiett

    Updates to Menu component checkbox and radio item types @sejensen

    Prevent errors when Transition steps occur after the component unmounts @jstern

    Ensure modern theme for Checkbox and RadioInput are brand vs gray @phiett

    ToggleDetails customization updates

    Change Checkbox and RadioInput to dark vs brand @phiett

    Fix bugs in CheckboxGroup and MenuItemGroup due to unintentional state modification @sejensen

    Popover refactor and bug fixes @mzabriskie

    Fix TextArea ENTER key support and horizontal scroll on FF and IE 11 @jstern

    Remove three Item limit from MetricList @cprescott

    Replace Checkbox & RadioInput focus states with single outline state @phiett

    Add inline layout option to FormField/all form components

    Add column layout optino to FormFieldGroup, RadioInputGroup, CheckboxGroup @jstern, @chart

    Add offset prop to GridCol @jstern

    Make Tooltip default to default variant @jstern

    Remove zIndex props and add them to component themes @jstern

    Allow any trigger content for Tooltip @jstern

    Prevent overwriting existing keys @jstern

    Update color theme variable names @phiett

    Fix screen reader bugs in Progress component @phiett

    Add TreeBrowser component @mberns

    0.18.2

    Remove babel-polyfill peer dependency (required polyfills are listed in build.config.js)

    Modal should focus close button by default

    Add generateTheme and setDefaultTheme to both ApplyTheme and themeable

    Add Modern theme

    Fix Modal scrolling issues in FF

    0.18.1

    Upgrade to Webpack 2/bundle size improvements

    Adjust Heading component styles

    Add LatoWeb to font-family to match Canvas

    Tray component updates

    Reduce height of Progress bars

    0.18.0

    Document theme variables for each component

    Fix Select component disabled state

    Fix Button component 'circle' variant in Firefox

    Heading component updates

    Make codepens work for non jsx examples (e.g. Modal)

    Updates to Tray component

    Update TextArea and Select focus styles

    Add Media component

    0.17.3

    Replace CSSTransitionGroup with Transition component

    Fix RadioInput and Checkbox focus issues in Safari

    Remove max-width prop from the Alert component

    Fix Transition component unmountOnExit prop

    Upgrade instructure-icons

    Update Progress component styles

    Add Tray component

    Update Transition component styles

    Prevent errors in the Avatar component when userName prop is not provided

    0.17.2

    Add option to RangeInput to turn off value display

    Fix Popover bug, uninitialized state when show prop is set

    Define all variables in theme.js for each component

    Add a dismissable decorator

    0.17.1

    Added support for linux in the generate script

    See commit for details.

    Fix for Table component to prevent nested tables from inheriting hover or stripe styling

    Fix for TabList component minimal, simple variants so they no longer break in a flexed container

    Fix Modal component footer behavior when there is minimal body content

    Add zIndex prop to the Overlay and Popover components

    Add custom chai assertion to verify that a dom element exists for testing

    See commit for details.

    0.17.0

    Add a Breadcrumb component

    Prevent Bootstrap or other CSS from interfering with component styles

    0.16.0

    Add a Modal component

    Add a Overlay component

    Add a Portal component

    Add focused getter to the Button component

    Fix focus state for Checkbox toggle variant

    Fix RangeInput passing props to it's input

    Update to Button design

    Update to Select don't set disabled attribute

    Update Transition component

    0.15.0

    Add a ToggleDetails component

    Add a Table component

    Don't trigger PopoverMenu on focus by default

    Move Checkbox label to the right of the toggle

    Add a TextArea component

    Updates to font sizes (see Typography component)

    0.14.4

    Add getDisplayName util and use it to determine component type

    0.14.3

    Remove umd named define from webpack config

    0.14.2

    Add missing type attribute on button elements rendered by the Button component

    0.14.1

    Don't bundle babel-polyfill with the library

    This prevents the "only one instance of babel-polyfill is allowed" errors.

    0.14.0

    Breaking changes (code changes required to upgrade)

    Inject Component CSS into the document

    Components will now inject the required CSS into the document when they are mounted, so importing the CSS dependencies is no longer required. The usage documentation for each component has been updated to reflect this change.

    Added babel-polyfill as a peer dependency

    The components now require babel-polyfill.

    Updates to form input components

    All of the form input components now consistently handle focus and validation messages. As a result the errors prop is now the messages prop for all form inputs.

    New components and bug fixes

    Add Progress component

    See documentation and examples for details.

    Fix Spinner component animation in Firefox

    See commit for details.

    Remove references to the DOM at require time

    This should allow for running tests using instructure-ui components without a browser.

    Updates to colors and typography

    The global colors have been updated and the required font family is now Lato. A Typography component has been added.

    Fix imports of instructure-icons components

    Icons are now imported individually to reduce the overall library bundle size.

    Prevent React warnings by removing invalid props passed down to children

    Add levels to Heading component

    The Heading component now supports levels 1-5 (and a reset) and also supports overriding the root element.