All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.
10.11.0 (2025-02-03)
- 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)
- 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)
- 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)
- many: add new Typography tokens and update text and heading (a09fa0f)
10.9.0 (2024-12-12)
- ui-pagination: fix color of pageInput's label (b91cfe1)
- 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)
- ui-select,ui-text-input: fix long before elements overflowing in TextInput, Select, SimpleSelect (ee9cafd)
- shared-types,ui-progress: add customization options for progressbar (56308de)
10.7.0 (2024-12-03)
- 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)
- 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)
(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
orcanvasHighContrastThemeLocal
. These are exported fromui-themes
and do not have avariables
field and a.use()
method. - Guest app's
InstUISettingsProvider
'stheme
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> |
- 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)
- 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)
- 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)
- 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)
- many: add new form field error msg style + add asterisk for required fields (9b03683)
10.4.1 (2024-10-28)
- 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)
- 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)
- ui-modal: modify modal to support less strict children (40f8ca2)
10.3.0 (2024-10-03)
- 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)
- 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)
- 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)
- ui-table: new API that allows to use custom components (link)
10.2.0 (2024-08-23)
- many: add data visualization colors, refactor theme code (c395e17)
- ui-icons: add new AI icon (44b02ce)
10.1.0 (2024-08-23)
- many: add data visualization colors, refactor theme code (c395e17)
- ui-icons: add new AI icon (44b02ce)
10.0.0 (2024-07-31)
- many: Breaks color overrides in certain cases
9.5.1 (2024-07-30)
- 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)
- ui-menu: menuItem's onSelect type did not expose its value and selected types (c58fff8)
- ui-date-input,ui-text-input: add custom validation function and fix small layout issue (77218be)
9.3.0 (2024-07-17)
- ui-buttons: do not emit failed prop type warning when setting CondensedButton's color to 'secondary' (a3587df)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- ui-top-nav-bar: add onclick prop for hidden menu item (7228ae1)
8.55.1 (2024-04-30)
- ui-dialog: revert ecc0ee8 (deb44dd)
- ui-top-nav-bar: change topnavbar secondary color to porcelaine (4284cc0)
8.55.0 (2024-04-09)
- 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)
- ui-buttons: add stronger css rules for focused links (84f2306)
8.54.0 (2024-03-21)
- 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)
- 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)
- ui-source-code-editor: make search panel react version agnostic (f917e20)
8.53.1 (2024-02-09)
- ui-source-code-editor: use dependencies instead of devDependencies (2cfbb4f)
8.53.0 (2024-02-08)
- 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)
- 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)
- console,ui-view: fix process is not defined issue (25271d8)
- shared-types: extend OtherHTMLAttributes with Element (474fa4d)
- 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)
- 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)
- 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)
- 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)
- ui-avatar: add showBorder prop to Avatar (693ea76)
8.49.0 (2023-11-24)
- shared-types,ui-heading: change h1 heading weight (b160d30)
- shared-types: fix unwanted scrollbar (ac8da80)
- 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)
- ui-a11y-utils: fix regression in focus region (43dc1d8)
8.48.2 (2023-11-21)
- ui-a11y-utils,ui-popover,ui-tooltip: fix focus manager issues (9f59f09)
8.48.1 (2023-11-17)
- ui-tray: fix event listeners not working when a second tray is open (ca62df5)
- ui-top-nav-bar: add Breadcrumb to TopNavBar (e340ae9)
8.48.0 (2023-11-10)
- 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)
- ui-breadcrumb,ui-link: add onMouseEnter prop (a52f836)
8.47.1 (2023-11-06)
- 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)
- 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)
- ui-tabs: add active property to tabs (5037855)
- ui-top-nav-bar: add as property to TopNavBarItem (d471c16)
8.46.1 (2023-10-13)
- ui-drawer-layout,ui-tray: fix multiple mounting during transition (65a3f95)
8.46.0 (2023-10-11)
- ui-react-utils: fix ID counter wrong when not in context (29f8885)
- ui-truncate-text: fix TruncateText not working inside TopNavBar.Item (5253173)
- ui-spinner): feat(ui-spinner: add delay prop and functionality to the Spinner (1f44e5d)
8.45.0 (2023-10-03)
- ui-color-picker: add a padding to colorpicker button (de420dd)
- ui-drilldown: call onBackButtonClicked function when ArrowLeft got pressed (cd5e681)
- ui-view: add overscroll-behavior to view and flex.item component (6dc990f)
8.44.0 (2023-09-21)
- 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)
- grid: add stretch option to vAlign (7b215b6)
8.43.1 (2023-09-11)
- ui-time-select: fix nonpersistent event issue in Timeselect with react 16 (77bc913)
8.43.0 (2023-09-07)
- ui-responsive: round dimensions for query matcher (5cd4e24)
- ui-text-area: fix textarea so selenium tests will pass (2e54ae3)
- ui-responsive: add support for multiple responsive breakpoints (255a832)
8.42.0 (2023-09-07)
- ui-responsive: round dimensions for query matcher (5cd4e24)
- ui-responsive: add support for multiple responsive breakpoints (255a832)
8.41.1 (2023-08-24)
- 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)
- shared-types,ui-theme-tokens: add new 'desktop' and 'tablet' breakpoints to themes (bcda3d0)
8.40.1 (2023-08-18)
- ui-color-picker: add id as allowed prop for color-picker (2ced2b2)
8.40.0 (2023-08-17)
- 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)
- emotion,shared-types,ui-theme-tokens: add mediumSmall spacing to themes (d909ded)
8.39.0 (2023-07-21)
- 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)
- 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)
- 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)
- 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)
- shared-types,ui-flex: add
gap
prop to Flex (e1a3396)
8.37.0 (2023-04-25)
- 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
andsuccess
color in inverse mode (920fa49) - ui-text-input: fix TextInput padding calculation vol.2. (757c04a), closes PR#1178
- 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
andwidth
props to SourceCodeEditor (4e9b1e7)
- ui-select: improve perf for large amount of items (396a13b)
8.36.0 (2023-03-23)
- ui-text-input: fix padding calculation for before/after element (fe0f225)
- ui-badge: add
display
prop to Badge (de14020)
8.35.1 (2023-03-10)
- 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)
- ui-time-select: allow non-step values with allowNonStepInput (6dace32)
8.34.0 (2023-02-10)
- ui-a11y-utils: fix type for
removedNodes
andaddedNodes
(f43c2ff) - ui-color-picker: axe-check tests failing (d32f395)
- ui-time-select: added "mountNode" property; (c7df9a1)
8.33.2 (2023-01-25)
- ui-breadcrumb: fix prop typing for
Breadcrumb.Link
(9093c3e) - ui-modal: fix screenreader focus order in Chrome (f32ae67)
8.33.1 (2023-01-06)
- 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)
- 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)
- 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)
- ui-source-code-editor: update
codemirror
dependencies and fixrtlMoveVisually
bug (ae39490)
8.32.0 (2022-11-23)
- 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)
- 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)
- shared-types,ui,ui-top-nav-bar: add new
TopNavBar
component (3f27257) - ui-dom-utils: add
pseudoElt
parameter togetComputedStyle
util (b73434c) - ui-tray: pass extra Transition props on Tray (afcaf92)
8.30.0 (2022-10-26)
- ui-code-editor: Fix
global
is undefined build error that could come up using certain bundlers(vite, esbuild) by integratingreact-codemirror2
dependency into theCodeEditor
component. (1fee246)
- ui-img: add 'loading' prop to Img component (0b69af2)
8.29.0 (2022-09-29)
- ui-text-input: remove focusring when receiving disabled prop (f16e88e)
- ui-truncate-text: impove TruncateText's performance for large amounts of contents (22fcf14)
- 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)
- ui: wrong peer dependency for
react
(80580a7)
8.28.1 (2022-09-12)
- fix issues in some components when using
React.StrictMode
and React 18 (972bb93)
8.28.0 (2022-09-02)
-
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 () {} } }
- ui-drilldown: add
minHeight
andminWidth
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)
- 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)
- support React 18 (0a2bf0c)
8.26.3 (2022-07-14)
- 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)
-
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)
- ui-date-time-input: fix enter not applyting date in React 16 (244bb8d)
8.26.0 (2022-06-30)
- 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)
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.
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)
- ui-webpack-config: fix icon fonts not loading correctly (5947205)
8.24.5 (2022-05-31)
- 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)
This release is deprecated, because we encountered problems during the release.
8.24.3 (2022-05-25)
- ui-tree-browser Add
compareFunc
for fine-grained ordering of the elements.
- ui-icons-build,ui-icons: correct
instructure
icon displayingcanvas
logo (53afffb)
8.24.2 (2022-05-02)
- theme-registry: fix theme registry name collision (7dc4550)
8.24.1 (2022-04-29)
- 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)
- 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)
- 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
andcolSpacing
props to DateTimeInput (5e829fa) - ui-link: add
role
andforceButtonRole
prop to Link component (11828d0)
8.23.0 (2022-04-07)
- 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)
- shared-types,ui-range-input: add accessible variant for RangeInput handle (e71453c)
8.22.0 (2022-03-31)
- ui-drilldown,ui: add new
Drilldown
component (44e7e13)
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)
- 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 asPopover
trigger (002505b)
- ui-icons: update
stats
andanalytics
icons (09110e7)
8.20.0 (2022-03-22)
- ui-icons-build,ui-icons: fix SVG icon optimization script to correctly load config (cd35e6d)
- ui-icons: add
mini-arrow-double
icon to the Iconography (6718338) - ui-icons: add new icons:
canvas-logo
,cloud-upload
,elevate-logo
,impact-logo
andmastery-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)
- ui-babel-preset: add back removed
@babel/plugin-proposal-optional-chaining
(435c9ae) - ui-options: fix
themeOverride
prop being passed to the underlyingdiv
(669aa58)
- emotion: themeOverride prop to accept function (505f0bf)
8.18.0 (2022-02-23)
- 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
- this fix might cause some
- ui-portal: fix
Portal
not being SSR-able (cb1375f) - ui-radio-input: fix cursor of radioinput, version toggle in Safari (0670cf5)
- InstUI components can be rendered on the server side (SSR) - more details
8.17.0 (2022-02-07)
- remove type:"commonjs" from package.json files (0b243be)
- ui-scripts: remove package.json with type:"module" from es folders (da3f5ef)
- ui-responsive: modify Responsive "props override" error to warning (4935fa8)
8.16.0 (2022-02-03)
- ui-select: add
optionsMaxHeight
prop to Select (cf361bf) - ui-simple-select: add
optionsMaxHeight
prop to SimpleSelect (c205f80)
8.15.0 (2022-01-26)
- 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 novalue
/defaultValue
(f238a9f)
- ui-buttons: deprecate
string
value for BaseButton and CloseButtontabIndex
(b1ff461) - ui-options: add
description
anddescriptionRole
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)
- ui-drawer-layout: fix tray direction calculation (ee3d106)
- ui-icons: make
arrow-double-end
andarrow-double-start
icons to be bidirectional (7f86f28) - ui-text-input: fix
htmlSize
prop to accept only numbers (1b5f16b)
- ui-number-input,ui-pagination: add Pagination
input
variant, NumberInputtextAlign
prop (5b90d60) - ui-pagination: add new arrow button features (80a43fe)
- 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)
- ui-popover,ui-tooltip: fixed Tooltip triggers being transformed to links/buttons (07b0037)
- ui-text-area: fix jumping scroll issue (9f4d9f9)
- 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 juststring
(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)
- 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)
- 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)
- ui-options,ui-select,ui-simple-select: fix icon positioning (8536a1c)
8.11.0 (2021-10-15)
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.
- ui-menu: fix menu tooltip position (e60a4a9)
- ui-svg-images: fix icons getting cropped in zoomed windows (732ac88)
- ui-modal: add
spacing
prop toModal.Header
(3887f80)
8.10.2 (2021-10-01)
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)
- ui-popover: popover does not update on certain prop changes (93b506f)
8.10.0 (2021-09-28)
- 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)
- ui-tabs: add 'fixHeight' prop to Tabs (b63e6e7)
8.9.1 (2021-09-16)
- shared-types: fix types not getting published (000c779)
8.9.0 (2021-09-15)
- fix shared-types TS errors (7b83164)
- ui-icons: add
immersive-reader
icon (d5d6d4c)
8.8.0 (2021-08-27)
- link correct source code on docs page for legacy versions (82dbb18)
- ui-billboard: fix heading margin when
size
issmall
(36505bb)
- 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)
- 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)
- ui-avatar: add
color
prop for setting the color of the initials (7c65e4e) - ui-avatar: add
xx-small
andxx-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)
- 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 insidehead
(361909c)
- ui-menu: propagate offset props from
Menu
toPopover
(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)
- ui-buttons: use span instead of Flex (e019e94)
- ui-text-input: replace Flex with styled spans (51c3922)
8.5.0 (2021-06-09)
- emotion: add componentId to match with componenet name in docs (cc255eb)
- ui-tree-browser: properly hide root collection if rootId === 0 (1fb53c8)
- ui-table: add
stackedSortByLabel
prop toTable.ColHeader
(13f0cce)
8.4.0 (2021-05-11)
- 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)
- ui: export
EmotionThemeProvider
andwithStyle
from ui package (61e153c) - ui-tree-browser: fix root item rendering with wrong fontFamily (12d061b)
- ui-babel-preset: remove not needed Babel plugins (e23eea6)
- ui-number-input: add inputMode prop to NumberInput (8bf3091)
- 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)
- 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)
- 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)
This release is deprecated, because we encountered problems during the release.
8.1.0 (2021-04-15)
- 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
isfalse
(d6b5b44)
- 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.
- 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)
- 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
fromui-themeable
toemotion
(91fd876) - emotion,ui-themeable,ui-view: move
makeThemeVars
util fromui-themeable
toemotion
(f2291ba) - emotion,ui-themeable,ui-view: move
mirrorShorthand
utils toemotion
(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, usewithBlur
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
andover
properties (b636040) - ui-position: deprecate
Position.Target
andPosition.Content
components (9c731c8) - ui-progress,ui: delete deprecated
Progress
component (69a84d0) - ui-spinner: removed deprecated
title
prop (44dc5b1) - ui-tabs: remove deprecated
selected
anddisabled
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
andfocus
(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
andvariant
properties deprecated (cd17b6b) - ui-view: remove deprecated themeAdapter (bbfb295)
- ui-view: removed deprecated
focused
prop (3980814) - ui-view: removed deprecated
visualDebug
prop (6d8e0bb)
- instui-cli,ui-upgrade-scripts: add codemod to rename
theme
prop tothemeOverride
(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)
- ui-docs-client: speed up iconography page (d16a046)
- 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 withtry..catch
because writing something in the console does not cause errors to be thrown. Usespy(console, 'error')
instead. Also, when accessingComponent.displayName
, useComponent.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 usingemotion
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 theemotion
package. - ui-tabs:
SecondarySelectedColor
style was removed, now justsecondaryColor
determines the color of the secondary tab. VISUAL CHANGE:secondaryColor
changed totextDarkest
, in the Canvas theme toic-brand-font-color-dark
- emotion,ui-themeable,ui-view: Moved
mirrorShorthand
,mirrorShorthandEdges
,mirrorShorthandCorners
utils to fromui-themeable
toemotion
package. - emotion,ui-themeable,ui-view: Moved
getShorthandPropValue
fromui-themeable
toemotion
package. - emotion,ui-themeable,ui-view: Moved
makeThemeVars
util fromui-themeable
toemotion
package. - emotion,ui-themeable: Moved
ThemeablePropValues
andThemeablePropTypes
utils fromui-themeable
toemotion
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 nowborderColorTransparent
, 'colorInverse' is nowcolorPrimaryInverse
, 'background' is nowbackgroundPrimary
, 'backgroundLight' is nowbackgroundSecondary
, 'backgroundInverse' is nowbackgroundPrimaryInverse
. - ui-view: Removed deprecated
visualDebug
prop, usewithVisualDebug
instead. - ui-view: Removed deprecated
focused
prop, usewithFocusOutline
instead. - ui-img: Removed deprecated
blur
prop, usewithBlur
instead. - ui-img: Removed deprecated
grayscale
prop, usewithGrayscale
instead. - ui-img: Removed deprecated
inline
prop, usedisplay
('inline-block' or ‘block') instead. - ui-heading: Removed deprecated
ellipsis
prop, useTruncateText
component child instead. - ui-focusable: Removed deprecated
FocusableView
component, useView
instead. - ui-avatar: Removed deprecated
variant
prop, useshape
instead. - ui-avatar: Removed deprecated
inline
prop, usedisplay
('inline-block' or 'block') instead. - ui-number-input: Removed deprecated
inline
prop, usedisplay
('inline-block' or 'block') instead. - ui-number-input: Removed deprecated
required
prop, useisRequired
instead. - ui-number-input: Removed deprecated
label
prop, userenderLabel
instead. - ui-time-select: Removed deprecated
label
prop, userenderLabel
instead. - ui-text-input: Removed deprecated
icon
prop, userenderAfterInput
instead. - ui-text-input: Removed deprecated
inline
prop, usedisplay
('inline-block' or ‘block') instead. - ui-text-input: Removed deprecated
required
prop, useisRequired
instead. - ui-text-input: Removed deprecated
label
prop, userenderLabel
instead. - ui-spinner: Removed deprecated
title
prop, userenderTitle
instead. - ui-popover: Removed deprecated
onDismiss
prop, useonHideContent
instead. - ui-popover: Removed deprecated
alignArrow
prop, useshouldAlignArrow
instead. - ui-popover: Removed deprecated
trackPosition
prop, useshouldTrackPosition
instead. - ui-popover: Removed deprecated
label
prop, usescreenReaderLabel
instead. - ui-popover: Removed deprecated
variant
prop, usecolor
('primary' or 'primary-inverse') instead. - ui-popover: Removed deprecated
defaultShow
prop, usedefaultIsShowingContent
instead. - ui-popover: Removed deprecated
show
prop, useisShowingContent
instead. - ui-popover: Removed deprecated
onToggle
prop, useonShowContent
andonHideContent
instead. - ui-popover: Removed deprecated
onShow
prop, useonPositioned
instead. - ui-popover: Removed deprecated
PopoverContent
component, use Popover'schildren
instead. - ui-popover: Removed deprecated
PopoverTrigger
component, use Popover'srenderTrigger
prop instead. - ui-metric,ui: Removed deprecated
MetricList
component, useMetricGroup
instead. - ui-metric,ui: Removed deprecated
MetricListItem
component, useMetric
instead. - ui-link: Removed deprecated
variant
prop, usecolor
('link' or ’link-inverse') instead. - ui-link: Removed deprecated
linkRef
prop, useelementRef
instead. - ui-flex: Removed deprecated
shrink
prop, useshouldShrink
instead. - ui-flex: Removed deprecated
grow
prop, useshouldGrow
instead. - ui-flex: Removed deprecated
visualDebug
prop, usewithVisualDebug
instead. - ui-flex: Removed deprecated
wrapItems
prop, usewrap
('wrap', 'no-wrap' or 'wrap-reverse') instead. - ui-flex: Removed deprecated
inline
prop, usedisplay
(‘flex’ or ‘inline-flex’) instead. - ui-file-drop: Removed deprecated
allowMultiple
prop, useshouldAllowMultiple
instead. - ui-file-drop: Removed deprecated
allowRepeatFileSelection
prop, useshouldAllowRepeats
instead. - ui-file-drop: Removed deprecated
enablePreview
prop, useshouldEnablePreview
instead. - ui-file-drop: Removed deprecated
label
prop, userenderLabel
instead. - ui-byline: Removed deprecated
Media
component, useByline
instead. - ui-breadcrumb: Removed deprecated
icon
prop, userenderIcon
instead. - ui-progress,ui: Deleted deprecated Progress component, use ProgressBar or ProgressCircle instead.
- ui-date-input: Removed deprecated
label
prop: userenderLabel
prop instead. - ui-checkbox: Removed deprecated theme variables:
baseSizeSmall
,baseSizeMedium
,baseSizeLarge
. UsetoggleSize
instead. - ui-number-input: Removed deprecated props: label, required, inline
- ui-tabs: Removed deprecated
onChange
prop: useonRequestTabChange
instead. Removed deprecatedfocus
prop: useshouldFocusOnRender
instead. - ui-tabs: Removed deprecated
selectedIndex
prop. - ui-tabs: Removed deprecated
size
prop, usemaxWidth
instead. - ui-tabs: Removed deprecated
title
prop: userenderTitle
instead. - ui-tabs: [Tabs.Tab and Tabs.Panel] Removed deprecated
selected
prop: useisSelected
instead. Removed deprecateddisabled
prop: useisDisabled
instead. - ui-buttons: Removed deprecated CloseButton prop
children
, usescreenReaderLabel
instead. Removed deprecated CloseButton propvariant
, usecolor
instead. - ui-buttons: Remove deprecated
DeprecatedButton
component. - ui-buttons: Removed deprecated
variant
prop. The default value forcolor
prop is nowsecondary
. - ui-buttons: Removed deprecated
icon
prop, userenderIcon
instead. - ui-buttons,ui-toggle-details: Removed deprecated
fluidWidth
prop, setdisplay="block"
andtextAlign="start"
instead. - ui-buttons: removed deprecared
buttonRef
prop fromButton
andCloseButton
, useelementRef
instead. - ui-position:
trackPosition
prop is deprecated, useshouldTrackPosition
prop instead.over
prop is depreacted, useshouldPositionOverTarget
prop instead. - ui-position:
Position.Target
is deprecated, use Position'srenderTarget
prop instead.Position.Content
is deprecated, use Position'schildren
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) fromdelimiter
property. - ui-pill,ui-responsive: Removed
text
property: usechildren
instead.Children
is now required. Removedvariant
property: use color instead. Within the new color propdefault
is nowprimary
(gray),primary
has updated toinfo
(blue) andmessage
is nowalert
. - ui-text: Removed
error
type for color, usedanger
instead - ui-tooltip:
tip
property is deprecated (userenderTip
instead). |renderTip
property is now required. |variant
property is deprecated (usecolor
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)
- ui-tree-browser: allow tree browser to render before, after nodes (ca1dfaa)
7.4.4 (2021-03-12)
- Add CommonJS build to @instructure/ui-themes (7e99643)
7.4.3 (2021-03-11)
- 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)
- 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)
- 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)
- 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)
- ui-icons: add new icons and update old ones (4b524b3)
7.3.5 (2021-01-21)
- 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)
- 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)
- 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)
- 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)
- 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)
- ui-icons: add new icons: compass, line-reader, notepad, protactor, review-screen, ruler (ea218ca)
7.1.4 (2020-09-09)
- ui-simple-select: add missing event args (ab18a17)
7.1.3 (2020-08-10)
- 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)
- 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.
- 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)
- 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)
- decouple theme properties from ui-themeable (d5a8827)
- 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)
-
- Removed the
canvas-ams-theme
package. Usecanvas-theme
instead.
- Removed the
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 arguments for
- 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
, andcustomPropertiesSupported
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)
- instui-config: finish adding codemod configs for universal package (142d52b)
- ui-file-drop: add a height prop (4fc0c4a)
6.25.0 (2020-04-27)
- instui-config: publish import codemod configs to npm (93fc574)
- 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)
- ui-drawer-layout: Fix no styles applied on root (689780a)
- ui-view: optimize View in test and prod (3d4ea25)
- instui-cli,instui-config: add a default parser configuration file (c25bb88)
6.23.0 (2020-04-02)
- 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)
- 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)
- 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)
- 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)
- ui-breadcrumb: ensure Breakcrumb.Link icon + renderIcon props work (14e5f1c)
- ui-navigation: fix position/transition of Nav expand/collapse button (c18dcab)
- 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)
- ui-themeable: check JSDOM environment (5ef3244)
- 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)
- ui-expandable: replace componentWillReceiveProps (d59f529)
- ui-select: ensure Select.Group imports .Option (8dc609f)
- 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)
- 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)
- 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)
- 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)
- 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)
- ui-responsive: responsive performance enhancements (5096c00)
6.16.0 (2019-12-13)
- 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)
- 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)
- 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)
- 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)
- ui-tooltip: remove Focusable from Tooltip (83aa0c9)
6.14.0 (2019-10-14)
- 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)
- 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)
- 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)
- 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)
- 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)
- console: help terser dead-code-eliminate console funcs (323c469)
6.12.0 (2019-09-17)
- ui-utils: export isEdge from the root of @instructure/ui-utils (b97f3fe)
- ui-babel-preset: add support for javascript optional chaining (e56d64b)
6.11.0 (2019-09-16)
- 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)
- 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)
- ui-utils: stop using bowser for browser detection (95f1232)
6.10.0 (2019-08-27)
- 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)
- ui-forms: disabled/readOnly in FileDrop (86f323c)
6.9.0 (2019-08-07)
- ui-themeable: make themeable work with real
class
es (ec0d5b9)
- ui-forms: add labelPlacement property (39225ca)
6.8.1 (2019-08-02)
- ui-a11y: convert getElementsByTagName results to Array (4e7c07a)
6.8.0 (2019-07-31)
- 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)
- 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)
- ui-editable: move keyUp handler for escape handling (4d197d3)
- ui-forms: allow all children in RadioInputGroup (d7ca99a)
- ui-icons: add Admin Tools, ePortfolio, Permissions, Sub-Accounts (7c910ad)
6.6.0 (2019-07-03)
- 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)
- ui-scripts: retrieve GitHub url from config instead of package.json (c62b01e)
6.5.0 (2019-07-01)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- ui-icons,ui-icons-build: remove default exports for React icons (95195ee)
- 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)
- ui-layout: position should account for documentElement offset (f70bde6)
5.52.2 (2019-04-17)
- 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)
- console: fix production error/warning stripping (f03d6e6)
5.52.1 (2019-04-08)
- 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)
- ui-scripts: resolve promise for gerritbot review (23a7123)
- ui-table: use flex on sortable button (f03eeb1)
- console: remove console statements in prod env (603c738)
- ui-scripts: ui-build --modules option (0be81cc)
5.51.1 (2019-03-30)
- ui-elements,ui-layout: prevent prop warnings due to defaults (5a7128d)
5.51.0 (2019-03-29)
- ui-forms: fix too much recursion error (08dedf3)
- ui-menu: prevent menu from focusing single item (6d8ac37)
- 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)
- 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)
- ui-billboard: allow node and function for message prop (88ebd37)
- ui-text-input: Add flex layout (6613d27)
5.49.0 (2019-03-22)
- 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)
- 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)
- ui-prop-types: require prop-types >= 15.7 (30c105a)
- ui-component-examples,ui-test-utils: add parameters to example config (19e4cfd)
- ui-table: add controlled table (20f39f9)
5.47.0 (2019-03-15)
- ui-utils: updates to CustomPropTypes.Children (4679cbb)
- 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)
- ui-icons: add missing unpublish icon (de613be)
5.46.0 (2019-03-12)
- ui-scripts: include merged tags for bump and RCs (62c3dbe)
- 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)
- 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)
- 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)
- ui-babel-preset: don't add polyfills to js we publish to npm (2d2e859)
5.44.0 (2019-03-01)
- ui-scripts: fix publish and post-publish (1d863e3)
- 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)
- 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)
- 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)
- 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)
- 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)
- babel-plugin-themeable-styles: speed up babel transpile (2df2a22)
5.41.1 (2019-01-30)
- 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)
- 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)
- 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)
- 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)
- ui-presets: check if version is published already (57b8e8f)
5.39.0 (2019-01-11)
- 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)
- 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)
- 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)
- 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)
- 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)
5.36.0 (2018-12-12)
- 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)
- 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)
- 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)
- 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)
- ui-forms: SelectSingle capitalization (c740561)
- 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)
- 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)
- 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)
- ui-overlays: fix ref in Mask to work w/shallowCompare (0a0a706)
5.32.0 (2018-10-31)
- 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)
- 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)
- 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)
- 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)
- WIP(*): adding Accessibility documentation to the docs (f082fa4)
5.30.0 (2018-09-27)
- ui-portal: ui-testable should be a dependency (64117ad)
- ui-portal,ui-test-utils: return a DOM node from getComponentRoot (2903d29)
- 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)
- 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)
- 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)
- 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)
- 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)
- ui-overlays: add constrain to Modal (3392939)
- ui-tree-browser: add selection styling to TreeBrowser (4643c66)
5.27.0 (2018-09-10)
- pkg-utils: downgrade lerna to fix the release script (7bfc540)
- ui-buttons: no role="button" for buttons (be78aac)
- docs-examples,generate-examples: autogenerate component examples (b50fae5)
5.26.0 (2018-09-06)
- 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)
- 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)
- 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)
- ui-pagination: Add tooltips to Pagination (0df511b)
- babel-plugin-themeable-styles,ui-themeable: more small perf improvements (cf51ab9)
5.24.0 (2018-08-08)
- 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)
- ui-buttons: add cursor prop to Button (b47fbb5)
- ui-elements: add warning and message variants to pill (7665242)
- 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)
- docs-app: fix codepens (4c755f5)
- ui-buttons,ui-elements: Fix event target (8e29910)
- ui-presets: fix bump script (14e6668)
- 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)
- ui-buttons,ui-tabs: a couple more small perf improvements (2b00c1b)
5.22.0 (2018-07-27)
- 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)
- ui-presets: Separate out node test from karma (01aea24)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- ui-elements: add constrain prop to Img (d2911a2)
- ui-presets: Include changelogs in rc packages (edd1873)
5.19.0 (2018-07-12)
- 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)
- 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)
- 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)
- ui-presets: add git user and email (f210506)
- ui-presets: move .env variables into package.json for ui-scripts (5e97982)
5.17.0 (2018-07-06)
- ui-icons: add calculator icon (df2f9ce)
5.16.0 (2018-07-06)
- ui-layout,ui-motion,ui-overlays: theme prop should work w/ Portal (2c20181)
- ui-pagination: fix perf for lots of pages (40e18e9)
- 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)
- ui-a11y,ui-overlays: Improve KO navigation for Popover (8d547ce)
- ui-presets: don't PSA for release candidates (7cf8648)
- ui-forms: add screenreader announcements to Select (0ccfc36)
5.14.0 (2018-06-28)
- cz-lerna-changelog: ensure changeID is the last element of commit msg (fe64e52)
- ui-forms: NumberInput don't strip trailing zeros (9ddfeb8)
- ui-a11y: use unique ids for FocusRegion, Dialog (f4fccb9)
- ui-presets: fix post publish script (693a7a4)
- ui-pagination: make default ArrowIcon for Pagination small (e8d5a95)
- ui-forms: add indeterminate state to Checkbox (8752390)
- ui-svg-images: add color property to InlineSVG (596b9c6)
5.13.1 (2018-06-22)
- ui-a11y: absolutely position offscreen content at top (f0d6305)
- ui-a11y: dialog should return focus on blur (f7eb47e)
- ui-forms: accept zero for decimal places in NumberInput (d4cdd6b)
- ui-forms: don't use window.event in NumberInput (943a0c9)
- ui-forms: handle min={0} and max={0} props in NumberInput (5b09754)
- ui-forms: NumberInput onChange w/ updated precision (fa33d06)
- ui-forms: fix inline input and label alignment in Select (a696dcc)
- ui-forms: Select should return focus to input on close (0baa76f)
- ui-layout: Position, absolutely position offscreen content (8c85b25)
5.13.0 (2018-06-16)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- docs: Fix codepens (0e70c81)
- eslint-plugin-instructure-ui: Add publishConfig (ac4640c)
- NumberInput: formatValueOnRender prop (e734b8a)
- scripts: Fix generate:component script (24f5e21)
- 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)
- 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)
- 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)
- Set a default text direction to fix broken bidirectional styles (77f6aed)
5.8.0 (2018-05-11)
- build: Fixes so that the release script doesn't fail (72eca18)
- ui-docs-plugin: handle missing icons config (3168132)
- 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)
- release: Fix auto-release script (f2b99d3)
- ui-overlays,Popover: Pass down stacking/z-index to ContextView/View (a2a39ef)
- ui-docs-client: Add RTL toggle to Playground (21a0a34)
5.6.0 (2018-05-04)
- ui-utils: Remove relative package imports (b8fd970)
- ui-presets: Add an eslint rule to prevent relative package imports (d23b53d)
5.5.0 (2018-04-26)
- 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)
- 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)
- 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)
- build: Add no semi lint rule until we can add prettier config (cd97004)
- ui-layout: Add View and ContextView components (497ccd5)
- ui-elements: async avatar loading (0501ae2)
5.3.1 (2018-04-24)
- ui-themes: Should be backwards compatible with <= 5.3 components (6f44e11)
5.3.0 (2018-04-20)
- 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)
- 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)
- ui-forms: Fix warning issue in DateTimeInput (1704c53)
- ui-i18n: Fix DateTime. Should use moment-timezone. (c78de61)
- ui-tabs: Fix TabList support for nodes as title (eb33479)
- ui-billboard: Size icons in Billboard with SVGIcon size prop (11d3bfe)
- ui-forms: Add readOnly to ui-forms components (f494d0d)
5.1.1 (2018-04-05)
- ui-utils: Generated element ids can't start with a number (c6e159e)
5.1.0 (2018-04-04)
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 withMenu
.To create fly-out menus moving forward you can replace
MenuItemFlyout
withMenu
.See the updated Menu documentation for examples.
- 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)
- DateTimeInput: new DateTimeInput component (2aaf29b)
- ui-utils: Replace shortid with nanoid (5d0a93e)
5.0.1 (2018-04-02)
- Add missing dependencies (d66826b)
5.0.0 (2018-03-29)
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.
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.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.
A Responsive 🕶🎸 component (abe0cb3)
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.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.
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 totrue
, 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.CSS's
object-fit: cover
comes to the Img component, with polyfill support for IE11. When the newcover
prop istrue
, 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.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!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 🎩.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 theui-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 newui-menu
package on its own, PopoverMenu functionality has now been consolidated into Menu. By assigning a node to thetrigger
prop it will create a menu from the triggering element (ie: ).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.The
width
andheight
props have been deprecated in the SVGIcon component. Going forward, you can use thesize
prop instead. This should make the icons sizes more consistent across the consuming application.- 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
- docs: Prevent console warnings in docs app (e4729ec)
- media-capture: Do not trigger device dialog on finished (5cdc70f)
- media-capture: User-friendly device names on Firefox
- scripts: Fix release script for pre-releases (03d11a4)
- scripts: Add babel and postcss config to package template
- ui-a11y: focusManager should handle multiple dialogs (9722dbe)
- ui-alerts: add min-width to Alert so flex items don't collapse (9861c9b)
- ui-buttons: Fix icon centering with as=div Button (659f3a4)
- ui-buttons: Fix inverse link Button :focus outline (b9abdb0)
- ui-buttons: Button Fire onClick with href prop (f7c22c9)
- ui-elements: rename Image component to Img (668479f)
- ui-elements: Fix high contrast mode for ProgressBar (2aed758)
- ui-elements: trim whitespace in Avatar makeInitialsFromName (212e92a)
- ui-elements: deprecate Heading color prop (74b86e0)
- ui-elements: fix Image display property (a72961c)
- ui-elements: Make Spinner look better in IE11 (081f7a0)
- ui-elements: Disabled Tag should not be keyboard focusable (6bb66bc)
- ui-elements: allow node prop type for MetricsList label and value props (ffaaeea)
- ui-forms: Resolve Select a11y issues (a66a03c)
- ui-forms: Select doesn't expand with Space key (866709f)
- ui-forms: Fix TextArea resizing when text is deleted (682d336)
- ui-forms: TextInput not reading Tooltip id (5d6adee)
- ui-forms: increase CSS specificity for NumberInput,TimeInput (a6b08b3)
- ui-forms: RadioInputGroup should pass event to onChange cb (4268eec) (74fa7eb)
- ui-forms: Allow Select selectedOption to be cleared (2aa2b94)
- ui-forms: Ensure Select resets results on close (b26c8b3)
- ui-forms: Fix Select component onChange handlers (c6ef9fc)
- ui-forms: Prevent value change of disabled controlled Select (525a4e4)
- ui-forms: TextArea should shrink when cleared (3320d9d)
- ui-icons: Add Sketch template file (42a5c3f)
- ui-layout: Fix Position constraint logic (9763ef3)
- ui-layout: Fix Position getOffsetParents in IE11 (15797b5)
- ui-layout: Position should handle transformed/relative position parents (26bc897)
- media-capture: Utilize ts-ebml to get duration and cues headers in (8aadc43)
- ui-menu: Remove transition from :focus ring on Menu (cba89db)
- ui-menu: Resolve issues with Menu inside Modal (c6f3c18)
- ui-presets: Remove cycle in dependency graph (352a58b)
- ui-presets: Remove unnecessary dependency (943bab4)
- ui-testbed: update CSS to disable transitions (fa75264)
- ui-svg-images: fix InlineSVG example size (0369e7e)
- ui-svg-images: Fix size prop for SVGIcon (2ef69e9)
- build: Add RFC generator and docs (64d6368)
- build: Add copyright notice eslint plugin (0153907)
- media-capture: add feature detection for MediaCapture (c7450f6)
- media-capture: Add MediaCapture, VideoPlayer (39ebb9e)
- media-capture: VideoPlayer playback onCanPlay handler (c00de06)
- scripts: Add ability to specify a package to generate:component (1a890ee)
- ui-a11y: add ui-a11y package (e913843)
- ui-a11y: add a FocusRegion component (f395fd8)
- ui-a11y: Add FocusRegionManager, FocusRegion utilities (d14eaa0)
- ui-a11y: add hasVisibleChildren (bf31684)
- ui-alerts: Add a ui-alerts package (d078984)
- ui-alerts: Add screen reader only variant to Alert (d764e94)
- ui-billboard: Add ui-billboard package (4272911)
- ui-breadcrumb: Add ui-breadcrumb package (b990973)
- ui-buttons: Add a ui-buttons package (21bde2f)
- ui-code-editor: Add ui-code-editor package (7d6bd1c)
- ui-container: Add a ui-container package (b90aade)
- ui-docs-plugin,ui-utils: Add experimental flag and decorator (9bbcbab)
- ui-elements: Add a ui-elements package (12483d7)
- ui-elements: add Img component (9d0cb9e)
- ui-elements: Deprecate colors for Heading (26cc418)
- ui-elements: Add Img cover property (edcc5ce)
- ui-elements: Add Rating to ui-elements package (77eaa11)
- ui-forms: Add ui-forms package (ca6b694)
- ui-forms: Update NumberInput i18n solution (572bb3a)
- ui-forms: Checkbox Update checkmark icon and border (e75b0e6)
- ui-forms: Update Select to use non-native options dropdown (c291a38)
- ui-forms: TextArea maxHeight should accept ems, rems (8817c07)
- ui-i18n: Adding ui-i18n package (823f89a)
- ui-icons: Add icons (from instructure-icons) as a new package (8c3b3f0)
- ui-icons: add share and video-camera icons (5c7a3fb)
- ui-icons: add progress icon (0f4207b)
- ui-layout: Add ui-layout package (c461644)
- ui-layout: A Responsive component (abe0cb3)
- ui-layout: A DrawerLayout component (1cfb7b5)
- ui-layout: Add Flex component (7f702ac)
- ui-menu: Add ui-menu package (7a7fb35)
- ui-motion: Add ui-motion package (638c6a9)
- ui-overlays: Add a ui-overlays package (c9762a4)
- ui-overlays: Tray,Modal Deprecate closeButtonLabel and closeButtonRef (85a76b8)
- ui-overlays,ui-i18n: Add RTL language support to Tray (3309bcb)
- ui-overlays: deprecate applicationElement prop (ee7d1e9)
- ui-pages: Add Pages component (6fda3e3)
- ui-pagination: Add ui-pagination package (ef3ee97)
- ui-portal: Add ui-portal package (d4ed6db)
- ui-presets,ui-core: Add support for node test environments (5d3a452)
- ui-svg-images: Add ui-svg-images, remove instructure-icons imports (6201628)
- ui-svg-images: Add SVGIcon size prop, deprecate height/width (24501ea)
- ui-svg-images: Add
inline
prop to SVGIcon and InlineSVG (72fe27f) - ui-tabs: Add ui-tabs package (7b984c7)
- ui-themeable: Add ApplyTheme to ui-themeable package
- ui-themeable: Add shorthandPropType (066d1f0) (c69644c)
- ui-toggle-details: Add ui-toggle-details package (6b606de)
- ui-tree-browser: Add ui-tree-browser package (1c59c1f)
- ui-utils: Split up CustomPropTypes (25fb0e0)
4.8.0 (2018-03-26)
- ui-buttons: Button href prop should work with onClick (b2a78bb)
- ui-overlay,ui-i18n: add RTL language support to Tray (92679d7)
4.7.3 (2018-03-06)
- FileDrop: Fix positioning of the inner native file input element (3664ccb)
4.7.2 (2018-02-14)
- ListItem: stop :not selector selecting everything (8209b8c)
4.7.1 (2018-01-25)
- ui-menu: Pass href prop down to ElementType (e876404)
4.7.0 (2018-01-24)
- 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)
- List: Add itemSpacing prop (36cf537)
4.6.0 (2018-01-03)
- List: don't render delimiter when delimiter=none unless it's inline (3e81b1f)
- List: ignore falsy children (cb7a45c), closes /github.com/facebook/react/issues/2956#issuecomment-338041943
- 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)
- 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)
- List: Updates variant prop. Adds delimiter prop. (7b29a44)
4.4.1 (2017-12-14)
- 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)
- Avatar: trim whitespace in makeInitialsFromName (4317939)
- docs: Add missing docs app dependency (fea9a70)
- TextArea: shrink when cleared (0b45287)
- ui-presets,ui-core: Add support for node test environments + tweaks for quizzes (dc7a484)
4.3.0 (2017-12-11)
- 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)
- 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)
- button: remove focus on disabled buttons (863e055)
4.1.0 (2017-11-29)
- Tag: Focus state hidden in IE11 (22d5d5c)
- ui-docs-client: Codepen links are missing some globals (0a3f30c)
- Tag: inline variant (7ad7f7a)
4.0.1 (2017-11-17)
- 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!
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.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.
- 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)
- 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)
- 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
andsmall
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 thesize
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)
- babel: Warn on unlocatable css imports (c6d82fc)
- themeing: Allow ignoring certain files (c24e4bc)
3.3.1 (2017-09-11)
- 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)
- 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)
- TabList: Add tabRef prop to TabPanel (77a8def)
- lib/util/time.js: Don't force all locales to be included in bundle (6a62bd4)
3.2.0 (2017-08-18)
- Autocomplete: adds optionsMaxWidth prop to Autocomplete (f2e0f2f)
- button: Firefox - Return button needs to be pressed twice (4a6fe9f)
- autocomplete: Change autocomplete min-width (03a7652)
3.1.0 (2017-08-16)
- 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)
- 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.
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
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
- 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)
2.2.2 (2017-05-22)
- MenuItem: Prevent onSelect from firing twice (2c67d78)
2.2.1 (2017-05-22)
- 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)
- 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)
- ApplyTheme: Make accessible themes 'immutable' (144a4fb)
- MenuFlyout: Add MenuFlyout option to Menu (6ea4f71)
2.1.1 (2017-05-18)
- build: Fix compilation errors from missing moment-timezone (501184d)
2.1.0 (2017-05-17)
- 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)
- 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)
- 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)
- Avatar: Update the Avatar component API (56f4eab)
- Container: Make
size
property values consistent (f75465a) - isBlock: Replace
isBlock
props withinline
(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)
- 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)
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.
- React 0.14.9 or 15.4.0 is required
- UMD format is no longer supported
- instructure-icons is now a peer dependency
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()
Camel-case values in
Container
componentmargin
andpadding
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.x 2.x 'xxxSmall' 'xxx-small' 'xxSmall' 'xx-small' 'xSmall' 'x-small' 'xLarge' 'x-large' 'xxLarge' 'xx-large' Components previously using
left
andright
for positioning have been updated to usestart
andend
to better support RTL languages in the future.ContextBox, Popover, Position, Tooltip, Tray 1.x 2.x placement: 'left' placement: 'start' placement: 'right' placement: 'end' placement: 'middle' placement: 'center' Components previously using
left
andright
for thetextAlign
prop have been updated to usestart
andend
to better support RTL languages in the future.Container, ContextBox, FormField, Grid, GridCol, TabList 1.x 2.x textAlign: 'left' textAlign: 'start' textAlign: 'right' textAlign: 'end' Changes for consistency in component APIs
Button, ToggleDetails 1.x 2.x isBlock: true fluidWidth: true
Checkbox, FormField, FormFieldLayout, Image, RadioInput, Select, TextArea, TextInput, Tooltip, Transition 1.x 2.x isBlock: true inline: false Changes to our
<Avatar>
component:1.x 2.x userName: 'Sarah' name: 'Sarah' userImgUrl: {avatarSquare} src: {avatarSquare} Changes to our
<ToggleDetails>
component:1.x 2.x isExpanded expanded 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.x 2.x phone small tablet medium desktop large wide x-large 1.4.1 (2017-04-14)
1.4.0 (2017-04-13)
- 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)
- themeable: Update shouldComponentUpdate for themeable components (3ad419b)
Prevent normalize.css from breaking the Button component styles @mphillips
Add option to show on click to Tooltip @sburnett
Update onItemClick and onCollectionClick return values for TreeBrowser @mberns
Call PopoverMenu event handlers after setState @jstern
Resolve PopoverMenu focus issues @sejensen
Add a FileDrop component @ddoumecq
Add a Container component @chart
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
Add a
trackPosition
prop to Position component so that positioning can be toggled on/off @mzabriskieFix Grid component/remove extra padding on left and right sides @jstern
Allow Billboard to render as a link if
href
prop is provided @chartUpdate look of Avatar @phiett
Update modern theme for RadioInput @phiett
Allow Billboard to pass props to button @chart
Allow
inverse
close button on Tray @ctennetyDo not focus PopoverMenu trigger on mount @sejensen
Fix
shouldCloseOnOverlayClick
prop for Modal @mzabriskieFix PopoverMenu bug when MenuItems are triggered by ENTER key press @jstern
Fix focus for Menu component when first item is a MenuItemGroup @sejensen
Add Billboard component @chart
Add a Position component @mzabriskie
Update design of Checkbox
toggle
variant @chartFix Grid component bugs with
spaceAround
andspaceBetween
props in IE 11 @jsternUpdate design of RadioInputGroup
toggle
variant @chartUpdate
modern
design of Checkbox component @andyFix 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 @brinacaFix margins on FormFieldLabel when there is no visible label text @chart
Fix Link component in
a11y
theme @chartFix alignment of close button on Alert component @phiett
Update Button for
modern
theme @andyAdd a
buttonRef
prop to the Button component @jsternReplace
style
prop on Typography component withfontStyle
@jsternFix 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
Updates to Menu component
checkbox
andradio
item types @sejensenPrevent 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 componentsAdd
column
layout optino to FormFieldGroup, RadioInputGroup, CheckboxGroup @jstern, @chartAdd
offset
prop to GridCol @jsternMake Tooltip default to
default
variant @jsternAllow any trigger content for Tooltip @jstern
Fix screen reader bugs in Progress component @phiett
Add TreeBrowser component @mberns
Modal should focus close button by default
Add generateTheme and setDefaultTheme to both ApplyTheme and themeable
Fix Modal scrolling issues in FF
Adjust Heading component styles
Tray component updates
Reduce height of Progress bars
Fix Select component disabled state
Fix Button component 'circle' variant in Firefox
Heading component updates
Fix Progress
Make codepens work for non jsx examples (e.g. Modal)
Updates to Tray component
Add a Canvas theme
Add an accessible theme
Add Media component
Replace CSSTransitionGroup with Transition component
Fix RadioInput and Checkbox focus issues in Safari
Remove
max-width
prop from the Alert componentFix Transition component
unmountOnExit
propAdd AccessibleContent and PresentationContent
Update Progress component styles
Add Tray component
Update Transition component styles
Prevent errors in the Avatar component when
userName
prop is not providedAdd option to RangeInput to turn off value display
Fix Popover bug, uninitialized state when show prop is set
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 containerFix Modal component footer behavior when there is minimal body content
See commit for details.
Add a Breadcrumb component
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
variantFix RangeInput passing
props
to it's inputUpdate to Button design
Update to Select don't set disabled attribute
Update Transition component
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)
This prevents the "only one instance of babel-polyfill is allowed" errors.
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.
The components now require babel-polyfill.
All of the form input components now consistently handle focus and validation messages. As a result the
errors
prop is now themessages
prop for all form inputs.See documentation and examples for details.
See commit for details.
This should allow for running tests using instructure-ui components without a browser.
The global colors have been updated and the required font family is now Lato. A Typography component has been added.
Icons are now imported individually to reduce the overall library bundle size.
The Heading component now supports levels 1-5 (and a reset) and also supports overriding the root element.