Skip to content

Files

Latest commit

705cdb6 · Feb 21, 2025

History

History
5949 lines (3487 loc) · 361 KB

CHANGELOG.md

File metadata and controls

5949 lines (3487 loc) · 361 KB

Changelog

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

v12.4.5 (2025-02-21)

Components

  • fix: Define stable ref reference in useComboboxInputConstrained (#3145) (@mannycarrera4, manuel.carrera)

v12.4.4 (2025-02-21)

Documentation

v12.4.3 (2025-02-20)

Components

v11.2.3 (2025-02-20)

Components

v12.4.2 (2025-02-19)

Documentation

v12.4.1 (2025-02-19)

Documentation

v12.4.0 (2025-02-19)

v12.3.7 (2025-02-11)

Components

v11.2.2 (2025-02-10)

Components

v12.3.6 (2025-02-06)

Theming

  • fix: Remove action tokens from CanvasProvider to allow cascading (#3125) (@mannycarrera4, manuel.carrera) The CanvasProvider created a cascading barrier for our brand tokens. In the case where brand.action.** tokens are defined at the root level, say :root in a a CSS file, we want those tokens to cascade through the CanvasProvider down to our PrimaryButton's. To allow this, we've removed them from the CanvasProvider and variables.css.
    • @workday/canvas-tokens-web@2.1.1 removed --cnvs-brand-action-** tokens from our variables.css to ensure proper cascading of this token to theme our PrimaryButton's.
    • The CanvasProvider has removed defaulting brand.action.** for theming and is longer a valid theme property on CanvasTheme type.
    • In order to ensure proper cascading of the --cnvs-brand-action-** token, you must upgrade to the latest version of Canvas Kit v12 and whomever is bootstrapping the variables.css must upgrade @workday/canvas-tokens-web to @2.1.1 to ensure correct theming.

v12.3.5 (2025-01-28)

Documentation

v12.3.4 (2025-01-28)

v12.3.3 (2025-01-13)

Documentation

v12.3.2 (2025-01-09)

Components

v12.3.1 (2025-01-09)

Components

  • fix: Update Information Highlight folder name for slash imports (#3097) (@mannycarrera4, manuel.carrera)

v12.3.0 (2025-01-09)

v12.2.2 (2025-01-07)

Components

v12.2.1 (2025-01-07)

Components

v11.2.1 (2025-01-07)

Components

v12.2.0 (2025-01-07)

Components

  • feat: Update CKR Dub and Logo References (#3089) (@josh-bagwell) Workday has new logos with updated colors. We've added these to the preview package for a smooth transition for consumers.

    If you would like to consume these, here is the import:

    import {dubLogoPrimary, dubLogoReversed} from '@workday/canvas-kit-preview-react/common'

v11.2.0 (2025-01-07)

Components

  • feat: Update CKR Dub and Logo References (#3089) (@josh-bagwell) Workday has new logos with updated colors. We've added these to the preview package for a smooth transition for consumers.

    If you would like to consume these, here is the import:

    import {dubLogoPrimary, dubLogoReversed} from '@workday/canvas-kit-preview-react/common'

v12.1.16 (2024-12-20)

Components

Dependencies

  • fix: Resolve recast dep from jscodeshift to remove extra parens (#3083) (@mannycarrera4, manuel.carrera)

v11.1.26 (2024-12-20)

Components

v11.1.25 (2024-12-20)

Dependencies

  • fix: Resolve recast dep from jscodeshift to remove extra parens (#3083) (@mannycarrera4, manuel.carrera)

v12.1.15 (2024-12-17)

Components

v12.1.14 (2024-12-17)

Components

v12.1.13 (2024-12-16)

v12.1.12 (2024-12-10)

Documentation

v12.1.11 (2024-12-10)

Documentation

v12.1.10 (2024-12-09)

Documentation

v12.1.9 (2024-12-04)

Documentation

v12.1.8 (2024-12-02)

Components

v12.1.7 (2024-11-27)

Test

v12.1.6 (2024-11-25)

Components

  • fix: Deconstruct typelevel from props and pass to stencil (#3059) (@mannycarrera4, manuel.carrera)

v11.1.24 (2024-11-22)

Components

  • fix: Deconstruct typelevel from props and pass to stencil (#3059) (@mannycarrera4, manuel.carrera)

v12.1.5 (2024-11-19)

Components

v12.1.4 (2024-11-14)

Documentation

v12.1.3 (2024-11-13)

Dependencies

  • chore: Upgrade storybook to 7.6.20 to fix vulnerabilities (#3047) (@mannycarrera4, manuel.carrera)

Infrastructure

  • fix: Prevent build step in modules from running in parallel (#3053) (@mannycarrera4, manuel.carrera)

v12.1.2 (2024-11-12)

Documentation, Examples

  • docs: Refreshing GlobalHeader Storybook Example (#2891) (@williamjstanton, William Stanton, manuel.carrera) Optional release note message. Changelog and release summaries will contain a pull request title. This section will add additional notes under that title. This section is not a summary, but something extra to point out in release notes. An example might be calling out breaking changes in a labs component or minor visual changes that need visual regression updates. Remove this section if no additional release notes are required.

Infrastructure

  • fix: Remove start server command from forward merge action (#3040) (@mannycarrera4, manuel.carrera)

v12.1.1 (2024-11-08)

Dependencies

v12.1.0 (2024-11-07)

v12.0.10 (2024-11-06)

Components

Dependencies

Infrastructure

v11.1.23 (2024-11-06)

Infrastructure

v11.1.22 (2024-11-05)

Components

v12.0.9 (2024-11-04)

Components

v11.1.21 (2024-11-04)

Components

v12.0.8 (2024-11-04)

Infrastructure

v12.0.7 (2024-11-04)

Components

v11.1.20 (2024-11-04)

Components

v11.1.19 (2024-10-28)

Components

v12.0.6 (2024-10-24)

Components

v11.1.18 (2024-10-23)

Components

v12.0.5 (2024-10-23)

Documentation

v12.0.4 (2024-10-22)

Infrastructure

v12.0.3 (2024-10-22)

Codemod

v12.0.2 (2024-10-21)

Infrastructure

v12.0.1 (2024-10-21)

Components

v12.0.0 (2024-10-16)

BREAKING CHANGES

  • #2793 - Avatar no longer uses SystemIconCircle for sizing.

    • Avatar.Size is no longer supported. The size prop type has change to accept the following: "extraExtraLarge" | "extraLarge" | "large" | "medium" | "small" | "extraSmall" | (string{})
    • Avatar.Variant is no longer supported. Enum AvatarVariant has been removed. The variant type prop now accepts "dark" | "light"
    • The as prop now accepts any element, not just div.
  • #2674 Codemods formatting have been updated and users will need to format their files after the codemod has been used.

  • #2934 The newly promoted FormField is a compound component. Due to the different APIs of the component, this change is not codemodable. The following shows an example of how to update your code to match the new compound component API.

    // v11 FormField in Main
    <FormField
      error={FormField.ErrorType.Alert}
      labelPosition={FormField.LabelPosition.Left}
      useFieldSet={true}
      required={true}
      hintId="hint-alert"
      hintText="Please enter a valid email."
      label="Email"
    >
      <TextInput onChange={handleChange} value={value} />
    </FormField>
    
    // v12 Newly promoted FormField from Preview to Main
    <FormField
      error="error"
      orientation="horizontalStart"
      isRequired={true}
    >
    	<FormField.Label>Email</FormField.Label>
    	<FormField.Field>
    		<FormField.Input as={TextInput} onChange={handleChange} value={value} />
    		<FormField.Hint>Please enter a valid email.</FormField.Hint>
    	</FormField.Field>
    </FormField>

    Noticeable changes:

    • error prop takes in the following values: "error" | "alert".
    • labelPosition becomes orientation with the following values: "horizontal" | "horizontalStart" | "horizontalEnd" | "vertical".
    • useFieldSet is no longer valid. If you want to group inputs, use FormFieldGroup component.
    • required becomes isRequired.
    • hintId is no longer needed. The component handles associating the hint text, label and input automatically. If you wish to have a unique id, you can add one onto the FormField element.
    • hintText is no longer a valid prop. Use FormField.Hint sub component.
    • errorLabel and alertLabel are no longer valid props. Customizing your hint text inside of FormField.Hint.
    • label is no longer a valid prop. Use FormField.Label sub component to render your label text.
    • Instead of rendering an input, ensure you use FormField.Input with the as prop. This ensures proper error handling and aria attributes for accessibility.
  • #2969 We've removed the MenuItemProps export from @workday/canvas-kit-react/menu. Use ExtractProps<typeof Menu.Item, never> instead. We don't mean to export prop interfaces of polymorphic components. The never means "don't add element props". The second parameter is used to pass the interface that the as prop is pointing to.

  • #2980 elemProps hooks using composeHooks have more accurate type signatures which may lead to new type errors. For information, view our discussion.

  • #2982 A list model's navigation.getItem() can return undefined if no item is found. Previously it threw an error, which cause many problems. It is now up to the caller to decide what to do with an undefined return value

Components

  • chore: Removed Select in Preview (#2796) (@thunguyen19, manuel.carrera, @mannycarrera4) We've removed the Select component that was in @workday/canvas-kit-preview-react. Please use the Select in Main (https://workday.github.io/canvas-kit/?path=/docs/components-inputs-select--basic) which is a compound component and offers more flexibility.

    Thank You Picture

    image
  • chore: Modal, Dialog, Popup and Toast Styles Refactor (#2795) (@josh-bagwell) Updated Modal, Dialog, Popup and Toast to use new system tokens and style utilities.

  • chore: Removal of InputIconContainer (#2838) (@josh-bagwell) We've removed InputIconContainer from Main. Please use InputGroup from Main instead.

  • chore: Refactor TextArea and TextInput with new styling utilities (#2825) (@mannycarrera4, manuel.carrera, @NicholasBoll) We've updated TextInput and TextArea to use our new Tokens and styling utilities. The React interface has not changed, but CSS variables are now used for dynamic properties.

  • chore: Update Avatar to use createStencil and createComponent (#2793) (@kaconant, krissy.conant, @mannycarrera4, manuel.carrera) The Avatar component has been refactored to use our new tokens and styling utilities. The changes below highlight the breaking changes to the API.

  • feat: Add horizontal start and end label position for form field (#2881) (@mannycarrera4, manuel.carrera, @josh-bagwell) The orientation prop on the FormField component will be updated to accept the following values: vertical, horizontalStart, and horizontalEnd. horizontal will still be accepted as a value in v12, but it will be deprecated and slated for removal in a future major release. These changes are intended to provide more flexibility with label alignments on FormField elements.

    Instances where the orientation prop of the FormField component is set to horizontal will automatically default to horizontalStart via a codemod. A console warning message will also appear with a message to change the prop value to either horizontalStart or horizontalEnd.

  • chore: Updated unique id generation for classnames (#2913) (@josh-bagwell, @mannycarrera4)

  • chore: Add FormFieldGroup component and density example (#2865) (@mannycarrera4, manuel.carrera, @josh-bagwell, @RayRedGoose)

    • We've added a new FormFieldGroup component to use when grouping inputs like checkboxes and radio inputs that need to be associated to one another. Its API matches the FormField API where you have error prop as well as id isRequired and orienation.

    • orientation has been added back to useFormFieldModel to better support sub component styling.

    • Styles have been cleaned up to use gap for proper spacing between labels, inputs and hint text.

    • Added a new FormField.Field component to ensure proper alignment between label and inputs regardless of orientation and hint text. Ensure to wrap your inputs and hint text in this component.

  • chore: Revert Select Preview Removal (#2933) (@josh-bagwell)

  • feat(text-input): Support CSS Variables in InputGroup (#2935) (@NicholasBoll)

  • feat: Promote FormField from Preview to Main (#2934) (@mannycarrera4, manuel.carrera, @josh-bagwell) We've promoted FormField from Preview to Main. The following changes have been made to provide more flexibility and better explicit components when using inputs.

    • The orientation prop on the FormField component will be updated to accept the following values: vertical, horizontalStart, and horizontalEnd. horizontal will still be accepted as a value in v12, but it will be deprecated and slated for removal in a future major release. These changes are intended to provide more flexibility with label alignments on FormField elements.

    Note: The horizontal alignment of start and end are relative to its container, meaning start and end match the flex property of flex-start and flex-end. This is especially applicable for moving between RTL (right-to-left) and LTR (left-to-right) languages.

    Note: Orientation "horizontal" has been deprecated. You will see a console warn message suggesting to update your types and usage to horizontalStart, horizontalEnd or vertical.

    • useFormFieldModel: orientation has been added back into useFormFieldModel. While we still support compat mode due to style merging issues, having orientation on the model allows for proper styling of sub components.

    • Styles clean up. FormField.Hint and FormField.Label where using margin for spacing. We've updated styles so that the containing element uses gap for proper spacing.

  • fix: Add visual testing for inputs after form field promotion (#2963) (@mannycarrera4, manuel.carrera)

  • chore(text-input): Convert InputGroup to use Stencils (#2964) (@NicholasBoll)

  • feat(form-field): Add a11y links for non-input fields (#2967) (@NicholasBoll, manuel.carrera)

  • feat(menu): Add MenuOption and convert to MenuItem to Stencil (#2969) (@NicholasBoll)

  • fix: Add isHidden to FormField label element (#2973) (@mannycarrera4, manuel.carrera, @josh-bagwell) If you want to hide the label but maintain accessibility, add the isHidden prop on the FormField.Label element.

  • fix: Fix mergeProps, createElemPropsHook, and composeHooks types (#2980) (@NicholasBoll)

  • chore: Remove useResizeObserver hack (#2981) (@NicholasBoll)

  • chore: Collection navigation getItem can return undefined (#2982) (@NicholasBoll)

  • fix: Fix InputGroup inner end width calculations (#2984) (@NicholasBoll)

  • refactor(select): Fix all syncing issues with the Select component (#2983) (@NicholasBoll)

  • feat: Add a MultiSelect component (#2911) (@NicholasBoll)

Documentation

Infrastructure

  • chore: Upgrade Storybook and Webpack (#2674) (@RayRedGoose, @NicholasBoll, manuel.carrera, @josh-bagwell)

    • In Storybook, each component now has a "Docs" page. This is dedicated to documentation of the component and has examples as it did before.
    • We now use the Cypress Component runner and not e2e.
    • Codemod formatting has been updated with a dependency update and docs have been added to reflect the formatting issue.

    The following have been upgraded:

    • Storybook 7
    • Webpack 5
    • Typescript 4.9
    • Cypress 13
  • fix: Update comment for canary action (#2950) (@mannycarrera4, manuel.carrera)

  • fix: Update routes path (#2966) (@mannycarrera4, manuel.carrera)

  • fix: Try to fix canary build (#2970) (@mannycarrera4, manuel.carrera)

  • ci: Fix build script (#2985) (@NicholasBoll)

  • ci: Fix tspc command (@NicholasBoll)

Styling

v11.1.17 (2024-10-11)

Components

  • fix: Unbroken String Overflow Menu Item Fix (#2975) (@josh-bagwell) A fix to Menu Item to break a long unbroken string for Select.

v10.3.63 (2024-10-10)

Components

  • fix: Unbroken String Overflow Menu Item Fix (#2975) (@josh-bagwell) A fix to Menu Item to break a long unbroken string for Select.

v11.1.16 (2024-10-07)

Components

  • chore: Fixed Button Style Merge Issue (#2951) (@josh-bagwell, manuel.carrera) Updates Button variants to fix merge style issue.

v11.1.15 (2024-10-07)

Infrastructure

  • fix: Remove extract docs in canary to prevent exceeding limit (#2948) (@mannycarrera4, manuel.carrera)

Styling

v10.3.62 (2024-10-02)

v11.1.14 (2024-10-02)

Components

  • fix: Update BaseButton to use correct theming color for focus ring (#2942) (@josh-bagwell) Fixes theming for the BaseButton within Pagination.

v10.3.62 (2024-10-02)

Components

  • fix: Update BaseButton to use correct theming color for focus ring (#2942) (@josh-bagwell) Fixes theming for the BaseButton within Pagination.

v11.1.13 (2024-09-19)

Components

v11.1.12 (2024-09-18)

Components

v10.3.61 (2024-09-17)

Components

v11.1.11 (2024-09-16)

Components

v10.3.60 (2024-09-16)

Components

v11.1.10 (2024-09-16)

v11.1.9 (2024-09-16)

Documentation, examples

v11.1.8 (2024-09-06)

Components

  • fix: Updated ButtonColors interface to deprecated focusRing from focus (#2906) (@josh-bagwell) Deprecated the use of focusRing within focus in the colors prop on buttons as this does not work with our current styling methods. Added support for boxShadowInner and boxShadowOuter within focus in colors prop.

v10.3.59 (2024-09-06)

Components

  • fix: Updated ButtonColors interface to deprecated focusRing from focus (#2906) (@josh-bagwell) Deprecated the use of focusRing within focus in the colors prop on buttons as this does not work with our current styling methods. Added support for boxShadowInner and boxShadowOuter within focus in colors prop.

v11.1.7 (2024-08-29)

Accessibility

  • fix(color-picker): Add support for a11y labels on color swatches (#2894) (@wooksauce, Kiwook Kwon)

v11.1.6 (2024-08-27)

Components

Infrastructure

  • fix: Enable styling compat mode to ensure proper style merging (#2890) (@mannycarrera4, manuel.carrera) We're seeing style merging issues when using createStyles or createStencil. It only happens when every style override of the element uses these utilities and @emotion/react or @emotion/styled is not used on the same element. These utilities rely on module execution order and we're having a few reports where modules are possibly executing out of order. In order to allow everyone to use createStyles and createStencil without worrying about style merge issues, we're going to enable compat mode all the time. We'll look into possible out-of-order execution issues in the future and plan to re-enable full static mode (for better performance) once we know why this is happening and have a proper workaround.

    For more information, please read our discussion

v10.3.58 (2024-08-27)

Components

v10.3.57 (2024-08-27)

Components

v10.3.56 (2024-08-27)

Infrastructure

  • fix: Enable styling compat mode to ensure proper style merging (#2890) (@mannycarrera4, manuel.carrera) We're seeing style merging issues when using createStyles or createStencil. It only happens when every style override of the element uses these utilities and @emotion/react or @emotion/styled is not used on the same element. These utilities rely on module execution order and we're having a few reports where modules are possibly executing out of order. In order to allow everyone to use createStyles and createStencil without worrying about style merge issues, we're going to enable compat mode all the time. We'll look into possible out-of-order execution issues in the future and plan to re-enable full static mode (for better performance) once we know why this is happening and have a proper workaround.

    For more information, please read our discussion

v11.1.5 (2024-08-23)

Components

v10.3.55 (2024-08-22)

Components

v11.1.4 (2024-08-21)

Documentation

v10.3.54 (2024-08-21)

Documentation

v11.1.3 (2024-08-20)

Components

v10.3.53 (2024-08-20)

Components

v11.1.2 (2024-08-20)

v11.1.1 (2024-08-20)

Components

v10.3.52 (2024-08-14)

Components

v11.1.0 (2024-08-14)

v11.0.27 (2024-08-12)

Components

v11.0.26 (2024-08-05)

Accessibility

  • fix: Set aria-modal to false for better accessibility (#2855) (@mannycarrera4, manuel.carrera)

v10.3.51 (2024-08-05)

Accessibility

  • fix: Set aria-modal to false for better accessibility (#2855) (@mannycarrera4, manuel.carrera)

v11.0.25 (2024-08-05)

Components

  • fix(combobox): Use correct state for aria-selected (#2849) (@NicholasBoll) This change fixes aria-selected in Combobox.Menu.Item components, but this does change the visuals of what is considered "selected". If you have any visual tests that have a screenshot of a selected state, the visual regression will have to be updated. The same is true for DOM-based snapshot tests. aria-selected="true" will now be added when an item is selected and not just when the virtual cursor is on the item. If your snapshot captures this DOM state, the snapshot will have to be updated.

v10.3.50 (2024-08-05)

Components

  • fix(combobox): Use correct state for aria-selected (#2849) (@NicholasBoll) This change fixes aria-selected in Combobox.Menu.Item components, but this does change the visuals of what is considered "selected". If you have any visual tests that have a screenshot of a selected state, the visual regression will have to be updated. The same is true for DOM-based snapshot tests. aria-selected="true" will now be added when an item is selected and not just when the virtual cursor is on the item. If your snapshot captures this DOM state, the snapshot will have to be updated.

v11.0.24 (2024-08-05)

Components

  • fix(SearchForm): Suppress forwarding props warning (#2850) (@thunguyen19, Thu Nguyen)

v11.0.23 (2024-07-30)

Components

v10.3.49 (2024-07-29)

Components

v11.0.22 (2024-07-29)

Documentation

v10.3.48 (2024-07-24)

v11.0.21 (2024-07-24)

Documentation

v10.3.48 (2024-07-24)

Documentation

v11.0.20 (2024-07-22)

v10.3.47 (2024-07-22)

v11.0.19 (2024-07-19)

Components

v10.3.46 (2024-07-19)

Components

v10.3.45 (2024-07-18)

Components

v11.0.18 (2024-07-18)

Components

v11.0.17 (2024-07-17)

Documentation

v11.0.16 (2024-07-17)

Infrastructure

v11.0.15 (2024-07-11)

Components

v10.3.44 (2024-07-10)

Components

v11.0.14 (2024-07-10)

Components

v11.0.13 (2024-07-09)

Components

v11.0.12 (2024-07-08)

Components

  • fix: Fix backwards compatibility with colors prop for buttons (#2816) (@mannycarrera4, manuel.carrera)

Infrastructure

v11.0.11 (2024-06-26)

Infrastructure

  • chore: Update SNYK deps to non vulnerable versions (#2784) (@mannycarrera4, manuel.carrera) Fix some security issues found by SNYK in our codemod package.

v11.0.10 (2024-06-26)

Components

v10.3.43 (2024-06-25)

Components

v11.0.9 (2024-06-24)

Documentation

  • docs: Add v10 to versions table (#2792) (@sheelah, Sheelah Brennan)

v11.0.8 (2024-06-18)

v11.0.7 (2024-06-17)

Documentation

  • chore: Add robust example in storybook for ToolbarDropdown button (#2782) (@NehaAhujaa, Neha Ahuja)

Infrastructure

v11.0.6 (2024-06-10)

Components

v10.3.42 (2024-06-10)

Components

v10.3.41 (2024-06-10)

Components

v11.0.5 (2024-06-10)

Components

  • fix: Fix backwards compatibility for hover state colors in System Icon (#2764) (@RayRedGoose)

v11.0.4 (2024-06-10)

Dependencies

v11.0.3 (2024-05-28)

Components

v11.0.2 (2024-05-28)

Documentation

v11.0.1 (2024-05-24)

Documentation

v11.0.0 (2024-05-22)

BREAKING CHANGES

  • #2472 - The prop hasError for Preview components FormField, TexInput and TextArea have been renamed to error and accepts the values: "error" | "alert" | undefined
  • #2546 There may be slight visual changes.
  • #2567 There may be slight visual changes.
  • #2583 There may be slight visual changes.
  • #2600 - rowState no longer exists.
    • The component is now a compound component with access to lower level elements.
  • #2615 Impacts only internal Canvas Kit code. Icon component has been removed and no longer used.
  • #2697 Adds box-sizing: border-box to all stencils. If your stencil did not add this style already, it may change the way width works for the component. Our intent is to make all elements use border box layouts to make width calculations more predictable. This change may change the way your component works if you use the width style property.

category

  • chore: Refactor StatusIndicator component (#2620) (@harshanarisetty) StatusIndicator now uses Canvas Tokens and our new styling utilities. The component now supports the cs prop, but otherwise the API has not changed. It should behave identically as it did in previous versions.

category

Components

  • chore: Update CountBadge styles (#2442) (@alanbsmith, manuel.carrera)
  • feat: Update FormField Preview API to support different inputs (#2472) (@mannycarrera4, manuel.carrera, @RayRedGoose)
    • TextInput from Preview has been deprecated. Please use FormField from Preview.
    • TextArea from Preview has been deprecated. Please use FormField from Preview.
    • FormField from Main has been deprecated. Please use FormField from Preview.
    • orientation prop defaults to vertical and is no longer required.
    • FormField.Input can be used by any input
    • FormField does not support the useFieldSet prop that the FormField in Main does. In order to achieve the same behavior, set the as prop on the FormField element to fieldset and the as prop of FormField.Label to legend
  • feat: Text style refactoring (#2455) (@RayRedGoose, @mannycarrera4, manuel.carrera) Text related components have been refactored to support the new cs prop and v10 styling utilities. Type level components,Title, Heading, BodyText and Subtext, as well as Text and LabelText updated to use the new system level tokens via CSS variables from the CanvasProvider. LabelText has been deprecated.
  • chore: Refactor Card Styles (#2471) (@alanbsmith, @RayRedGoose)
  • feat: Component Style Updates from Audit (#2485) (@josh-bagwell, @mannycarrera4) Style updates will have minor visual changes.
  • chore: Bump canvas-kit-styling version (@alanbsmith)
  • chore: Bump canvas kit styling (@)
  • fix: Update testing to use preview formfield (@)
  • test: Add inverse variant visual tests (#2544) (@RayRedGoose)
  • chore: Refactor FormField in Preview to use new styling utilities and tokens (#2541) (@mannycarrera4, manuel.carrera) Update FormField in Preview to use our new styling utilities and tokens.
  • chore: Radio Styles Refactor (#2546) (@josh-bagwell) Radio and RadioGroup now use Canvas Tokens and our new styling utilities. The component now supports the cs prop, but otherwise the API has not changed. It should behave identically as it did in previous versions however, there may be some slight visual changes.
  • chore: Refactor Checkbox styles (#2542) (@RayRedGoose, @mannycarrera4, @alanbsmith) Checkbox now uses Canvas Tokens and our new styling utilities. The component now supports the cs prop, but otherwise the API has not changed. It should behave identically as it did in previous versions.
  • chore: Table(Preview) Styles Refactor (#2567) (@josh-bagwell) Table now uses Canvas Tokens and our new styling utilities. The component now supports the cs prop, but otherwise the API has not changed. It should behave identically as it did in previous versions however, there may be some slight visual changes.
  • fix: Fix build script on css packages (@NicholasBoll)
  • chore: Switch Styles Refactor (#2583) (@josh-bagwell) Switch now uses Canvas Tokens and our new styling utilities. The component now supports the cs prop, but otherwise the API has not changed. It should behave identically as it did in previous versions however, there may be some slight visual changes.
  • chore: Updated Radio(Preview) & Table(Preview) with createStencil (#2585) (@josh-bagwell)
  • chore: Table Promotion from preview (#2600) (@josh-bagwell) We've promoted the compound Table component from Preview to Main. This compound component API allows for more flexibility and access to lower level elements.
  • feat: Add support for stencil extension (#2612) (@NicholasBoll)
  • chore: Refactor Select and Combobox to use new styling utilities and tokens (#2570) (@mannycarrera4, manuel.carrera, @josh-bagwell, @RayRedGoose)
  • chore: Refactor icon components (#2615) (@RayRedGoose, @alanbsmith, @NicholasBoll, @mannycarrera4, manuel.carrera) Icon components, Svg, SystemIcon, AccentIcon, AppletIcon, Graphic now uses Canvas Tokens and new styling utilities. Components now supports the cs prop instead styles, but otherwise the API has not changed. It should behave similar as it did in previous versions.
  • chore: Update Text to use system tokens (#2659) (@mannycarrera4, manuel.carrera, @RayRedGoose) Update our Text components to use our system tokens.
  • fix: Make variable names safe for Emotion (#2687) (@NicholasBoll)
  • chore: Update Card color tokens (#2682) (@alanbsmith)
  • chore: Update FormField and Select to use system colors (#2685) (@RayRedGoose)
  • chore: Update checkbox to use system color tokens (#2683) (@RayRedGoose)
  • feat: Add box-sizing:border-box automatically to all stencils (#2697) (@NicholasBoll)

Documentation

Infrastructure

Styling

v10.3.40 (2024-05-17)

Components

  • fix(radio): Spread props to input (#2747) (@mannycarrera4, manuel.carrera) StyledRadio was spreading props to the input and it's parent div. This change removed spreading prop to the parent div except for className.

v9.1.42 (2024-05-17)

Components

  • fix(radio): Spread props to input (#2747) (@mannycarrera4, manuel.carrera) StyledRadio was spreading props to the input and it's parent div. This change removed spreading prop to the parent div except for className.

Infrastructure

v10.3.39 (2024-05-15)

Documentation

Infrastructure

v10.3.38 (2024-05-09)

Documentation

v10.3.37 (2024-05-03)

Components

v10.3.36 (2024-05-03)

Components

  • fix: Style merging in compat mode (#2719) (@NicholasBoll) This fixes an issue where styles would merge incorrectly in compatibility mode. Compatibility mode is triggered when our component is augmented by a style prop, wrapped with styled, passed a css prop, or passed a cs prop with object styles. This fix ensures that modifiers via createModifiers or createStencil merge styles the same way in both static and compat modes. See the linked issue for more details.

v10.3.35 (2024-05-01)

Components

  • fix: CanvasProvider should use JS tokens instead of hard-coded strings (#2710) (@NicholasBoll)

v10.3.34 (2024-05-01)

Components

v10.3.33 (2024-04-15)

Documentation

  • docs: Improve the "accessible" example of loading dots (#2673) (@williamjstanton, @RayRedGoose, @NicholasBoll) Accessible LoadingDots example has been updated, by changing background to a darker color that allows soap400 to meet the minimum 3:1 contrast ratio and adding better screen reader support with the AriaLiveRegion component.

v10.3.32 (2024-04-12)

Documentation

v10.3.31 (2024-04-11)

Documentation

v10.3.30 (2024-04-11)

Infrastructure

v10.3.29 (2024-04-11)

v10.3.28 (2024-04-11)

v9.1.41 (2024-04-10)

Infrastructure

v10.3.27 (2024-04-09)

Components

v10.3.26 (2024-04-02)

Actions

  • chore: Automate reviewer lottery for yarn lock changes (#2667) (@mannycarrera4, manuel.carrera)

v10.3.25 (2024-03-28)

Actions

v10.3.24 (2024-03-22)

Infrastructure

  • fix: Fix issue with dynamic keys in stencils for style parser (#2661) (@RayRedGoose)

v10.3.23 (2024-03-22)

Components

  • fix: Revert overflow calculation until we find a better solution (#2651) (@mannycarrera4, manuel.carrera) Reverting the sub pixel calculation on the overflow logic until we find a better solution.

Dependencies

Tests

v9.1.40 (2024-03-22)

Components

  • fix: Revert overflow calculation until we find a better solution (#2651) (@mannycarrera4, manuel.carrera) Reverting the sub pixel calculation on the overflow logic until we find a better solution.

v10.3.22 (2024-03-11)

Infrastructure

Styling

  • fix(stencil): TypeScript support for variable/modifier with same key (#2635) (@NicholasBoll)

v10.3.21 (2024-03-06)

Infrastructure

  • fix: Update forward merge to track remote branch (#2627) (@mannycarrera4, manuel.carrera)
  • chore: Add nonce support to styling (#2629) (@NicholasBoll) This change does not introduce any breaking changes, but creating a custom Emotion instance can introduce a breaking change. A custom instance should only be used if all instances of Canvas Kit on the page are above the version this change is released in and no application code is imported directly from @emotion/css. This change updates all internal Canvas Kit styling to use the Emotion instance created in @workday/canvas-kit-styling. If no custom instance is created, the one created by @emotion/css will be used. If the default instance is used, there should be no breaking changes, but everyone should update their application code to use styling functions from @workday/canvas-kit-styling and not @emotion/css. SSR using @emotion/css is unaffected since server to client hydration only cares about the cache key ("css") and the style's hash, which should be the same even with a custom cache instance.

v10.3.20 (2024-03-04)

Components

  • fix: Move selected item when scrolling via keyboard in Select (#2609) (@mannycarrera4, manuel.carrera)

v10.3.19 (2024-03-01)

Components

  • fix(button): Fix icon colors in buttons and SegmentedControl (#2623) (@NicholasBoll) This change may trigger a visual regression with certain icons in buttons and SegmentedControl buttons. This change is intentional and fixes an accidental regression between v9 and v10. There should be no other breaking changes.

v10.3.18 (2024-02-28)

Styling

v10.3.17 (2024-02-26)

Components

v10.3.16 (2024-02-20)

Components

v10.3.15 (2024-02-17)

Infrastructure

v10.3.14 (2024-02-15)

Infrastructure

v10.3.13 (2024-02-12)

Components

Infrastructure

v10.3.12 (2024-02-12)

Components

v10.3.11 (2024-02-12)

Documentation

v10.3.10 (2024-02-08)

Documentation

v10.3.9 (2024-02-08)

Components

v9.1.39 (2024-02-08)

Components

v10.3.8 (2024-02-08)

Components

  • fix: Update isOverflowed logic to account for sub-pixels (#2548) (@nonverbal, Lauren Clavell)

v9.1.38 (2024-02-08)

Components

  • fix: Update isOverflowed logic to account for sub-pixels (#2548) (@nonverbal, Lauren Clavell)

v10.3.7 (2024-02-07)

Documentation

v10.3.6 (2024-02-07)

Components

Infrastructure

  • ci: Fix forward merging with CSS packages deleted (@NicholasBoll)

v9.1.37 (2024-02-07)

Components

v9.1.36 (2024-02-07)

Components

  • fix(preview): Changed table justifyContent to start (#2557) (@vibdev)

v10.3.5 (2024-02-07)

Components

  • fix: Allow fetching of dynamic items on select (#2535) (@mannycarrera4, manuel.carrera, @alanbsmith, @josh-bagwell)
    • Allow select to render while fetching items from a server
    • Add initial selected item example with complex object
    • Add placeholder example with select
    • Select will now show your placeholder on initial load.
    • When using select with complex items, onChange will return the id of the item, not the text.
    • data-id is no longer required when your object has an id property.

v10.3.4 (2024-02-07)

Documentation

  • docs: Update common docs (#2552) (@alanbsmith) Optional release note message. Changelog and release summaries will contain a pull request title. This section will add additional notes under that title. This section is not a summary, but something extra to point out in release notes. An example might be calling out breaking changes in a labs component or minor visual changes that need visual regression updates. Remove this section if no additional release notes are required.

v10.3.3 (2024-02-07)

Components

v10.3.2 (2024-02-05)

Documentation

  • fix: SidePanel Examples aria-labelledby Update (#2538) (@williamjstanton, @josh-bagwell) Updates the Basic example, Alternate example, and Right-to-left example to display a hidden element when in the collapsed state.

v10.3.1 (2024-01-25)

Components

  • fix: Prevent popup from closing when combobox item is clicked (#2524) (@mannycarrera4, manuel.carrera) Prevents popup or dialog from closing when a combobox menu item is selected.

v9.1.35 (2024-01-23)

v9.1.35 (2024-01-23)

Components

  • fix: Prevent popup from closing when combobox item is clicked (#2524) (@mannycarrera4, manuel.carrera) Prevents popup or dialog from closing when a combobox menu item is selected.

v10.3.0 (2024-01-18)

v10.2.5 (2024-01-09)

Infrastructure

v10.2.4 (2024-01-08)

Infrastructure

  • fix: Fix TS error for boolean modifiers in compound stencils styles (#2507) (@RayRedGoose)

v10.2.3 (2024-01-05)

Infrastructure

v10.2.2 (2024-01-05)

Documentation

v10.2.1 (2023-12-21)

Components

v10.2.0 (2023-12-19)

v10.1.4 (2023-12-19)

Components

v10.1.3 (2023-12-19)

Components

v9.1.34 (2023-12-18)

Components

v10.1.2 (2023-12-13)

Infrastructure

v10.1.1 (2023-12-13)

Components

v10.1.0 (2023-12-13)

v10.0.29 (2023-12-12)

Components

v10.0.28 (2023-12-12)

Components

v9.1.33 (2023-12-11)

Components

v10.0.27 (2023-12-11)

Documentation

  • docs(_examples): Add example for basic search form (#2454) (@vibdev)

v10.0.26 (2023-12-08)

Components

v10.0.25 (2023-12-07)

Components

v10.0.24 (2023-12-07)

Components

v10.0.23 (2023-12-06)

Components

v9.1.32 (2023-12-05)

Components

v10.0.22 (2023-12-04)

Components

  • fix: FormField fix alignment for required asterisk (#2404) (@thunguyen19, manuel.carrera) We've wrapped the contents of the label element including the asterisk in a span. The asterisk now is at the end of the label.

v9.1.31 (2023-12-04)

Components

  • fix: FormField fix alignment for required asterisk (#2404) (@thunguyen19, manuel.carrera) We've wrapped the contents of the label element including the asterisk in a span. The asterisk now is at the end of the label.

v10.0.21 (2023-12-01)

Components

v10.0.20 (2023-12-01)

Components

  • fix(preview): Fix multiline asterisk on preview form field (#2436) (@vibdev) We removed a wrapping flex element so elemProps is now spread directly on the <label> element and the asterisk is at the end of the label.

v10.0.19 (2023-11-30)

Components

v10.0.18 (2023-11-28)

Components

v9.1.30 (2023-11-28)

Components

v10.0.17 (2023-11-28)

Components

v9.1.29 (2023-11-21)

Components

v10.0.16 (2023-11-21)

Documentation

  • docs: Update README to include latest upgrade guide links (#2420) (@vibdev)

v10.0.15 (2023-11-21)

Components

  • fix(select): Set initial selected id to the text value (#2421) (@mannycarrera4, manuel.carrera)

v9.1.28 (2023-11-20)

Components

v10.0.14 (2023-11-17)

Components

v10.0.13 (2023-11-17)

Components

  • fix(select): Remove visual selection on Select input (#2410) (@vibdev)

v10.0.12 (2023-11-17)

Documentation

v10.0.11 (2023-11-16)

Components

v10.0.10 (2023-11-16)

Test

v10.0.9 (2023-11-16)

Documentation

  • docs(select): Add controlled and uncontrolled Select examples (#2406) (@vibdev)

v10.0.8 (2023-11-16)

Documentation

v10.0.7 (2023-11-16)

Components

  • fix: Prevent modal from overlapping on mobile devices (#2385) (@mannycarrera4, manuel.carrera)

v9.1.27 (2023-11-14)

Components

  • fix: Prevent modal from overlapping on mobile devices (#2385) (@mannycarrera4, manuel.carrera)

v10.0.6 (2023-11-10)

Components

  • fix: Fix Style prop merging with cs prop (#2379) (@NicholasBoll) This fix adds Emotion's CacheProvider to the CanvasProvider. Any application that uses the CacheProvider will not see this fix within the render tree of the custom CacheProvider. For this fix to be applied everywhere, consider removing any use of Emotion's CacheProvider.

    Some instances of use of CacheProvider were to set the compat mode of the cache. You can now do the following instead and not use CacheProvider at all:

    cache.compat = true

    Also note this fix will break automatic server side rendering because style merging is not creating server-side only style tags. Since createStyles isn't compatible with automatic server side rendering, the merge style fix isn't compatible either. Use Emotion's solution for server-side @emotion/css: https://emotion.sh/docs/ssr#when-using-emotioncss

    The only modification is to import cache from @emotion/css instead of creating a new cache. Their documentation doesn't work:

    - import createCache from '@emotion/cache'
    - 
    - const key = 'custom'
    - const cache = createCache({ key })
    + import {cache} from '@emotion/css';
    + const {key} = cache

v10.0.5 (2023-11-09)

Documentation

v10.0.4 (2023-11-08)

Components

v10.0.3 (2023-11-03)

v10.0.2 (2023-10-31)

Components

v10.0.1 (2023-10-30)

Dependencies

v10.0.0 (2023-10-25)

BREAKING CHANGES

  • #2229 There is the possibility of breaking changes if users are changing the default browser font size from 16px to another value.

    You can convert a px value to a rem value by dividing your px value by 16(if your default browser font size hasn't been updated, the value will be 16).

    For example:

    Equation rem Value
    16px/16px 1rem
    32px/16px 2rem
    8px/16px 0.5rem
  • #2247 To move from the Menu component in Preview to the Menu compound component in Main, please read this discussion.

    Also, see this codesandbox that shows the differences between DeprecatedMenu and the Menu compound component.

  • #2318 We have removed the useBanner hook, the only function of which was to add aria-labelledby and aria-describedby references to the text inside of the Banner. This was not required for accessibility, and browsers can compute the name of the Banner from the text given inside.

  • #2285 - We refactored how we styled Buttons to use our createStyles utility function. We don't anticipate this as a breaking change but, there may be slight changes to visual test.

    • Icons will no longer be "filled" on toggle. This decision was made to not have the existing icon look different in the toggled state from default state.
    • PrimaryButton: On the inverse variant, the focus ring is now consistent with the default variant of PrimaryButton. This will visually change the inverse variant to have a larger appearance when focused.
    • colors will no longer support the focusRing option:
      import {focusRing} from '@workday/canvas-kit-react/common';
      
      // before
      <PrimaryButton
        colors={{
          // other colors
          focus: {
            // other colors
          focusRing: focusRing(/* options */)
          }
        }}
      />
      
      // after
      <PrimaryButton
        colors={{
          // other colors
          focus: {
            // other colors
          }
        }}
        css={{
          ':focus-visible': focusRing(/* options */)
        }}
      />;
  • #2309 - We've converted Select in Main into a compound component. This component matches our pattern of providing access to lower-level elements and allows for more flexibility.

    • The spacing between menu and its target element will increase from 0px to 4px
    • We've also deprecated the Select in Preview. You may still consume this component but suggest migrating over to the one in Main.
  • #2368 The CSS kit is being removed in v10 and will come back later as derived from our React packages.

Codemods

Components

  • feat: Update space and depth tokens to rem (#2229) (@josh-bagwell, @alanbsmith, @bstanton678, @mannycarrera4) Updated depth and space token values to use rem instead of px.
  • feat: Remove Menu Preview (#2247) (@josh-bagwell) This will not involve a codemod since the API has too many differences between the component being removed in Preview and the component in Main.
  • fix: Changing ARIA role to switch (#2292) (@williamjstanton, @alanbsmith)
  • refactor: Removing aria attributes from Banner component (#2318) (@williamjstanton, @mannycarrera4, manuel.carrera)
  • fix: Revert removal of Menu in Preview (#2335) (@mannycarrera4, manuel.carrera) We're going to continue supporting the Menu in Preview until we implement grouped menu items (with virtualization) for the Menu in Main.
  • feat: Deprecate InputIconContainer (#2332) (@dgubko, @mannycarrera4, manuel.carrera) InputIconContainer has been deprecated, because it does not handle bidirectionally or icons at the start of an input. Please use InputGroup instead.
  • feat: Deprecated Table in Main (#2344) (@thunguyen19, @mannycarrera4)
  • feat: Add CSS styling function (#2273) (@NicholasBoll) This change introduces an intermediate step towards static styling. The style function takes in statically analyzable style definitions with modifiers, variables, and static styles to create styling to be used in components. It can later be interpreted at build time to create CSS packages.
  • chore: Refactored Button styles to use createStyles utility (#2285) (@josh-bagwell)
  • feat: Convert Select from Main into a compound component (#2309) (@mannycarrera4, manuel.carrera, @RayRedGoose, @jamesfan)
  • chore: Remove CSS packages (#2368) (@NicholasBoll)
  • fix: Set a default theme in canvas provider (#2371) (@mannycarrera4, manuel.carrera)
  • chore(button): Add CSS Variable fallbacks (#2372) (@NicholasBoll)

Documentation

Infrastructure

Tokens

v9.1.26 (2023-10-20)

Components

v9.1.25 (2023-10-20)

Components

  • fix(collection): Set correct aria-setsize in virtualized collections (#2362) (@NicholasBoll)

v8.6.25 (2023-10-20)

Components

  • fix(collection): Set correct aria-setsize in virtualized collections (#2362) (@NicholasBoll)

v9.1.24 (2023-10-16)

Components

  • fix(tabs): Slugify Tabs.Item aria-controls attribute (#2354) (@biplobsd)

v9.1.23 (2023-10-11)

Components

v8.6.24 (2023-10-11)

Components

v9.1.22 (2023-10-02)

Documentation

v8.6.23 (2023-10-02)

Documentation

v9.1.21 (2023-09-26)

Documentation

v9.1.20 (2023-09-20)

Components

v8.6.22 (2023-09-20)

Components

v9.1.19 (2023-09-18)

Documentation

Infrastructure

  • ci: Remove non-collaborator from reviewer lottery (@NicholasBoll)

v8.6.21 (2023-09-18)

Documentation

v9.1.18 (2023-09-06)

Components

v8.6.20 (2023-09-06)

Components

v9.1.17 (2023-09-06)

Components

v9.1.16 (2023-08-29)

Documentation

v9.1.15 (2023-08-29)

Components

  • test: Add cypress tests for Pill component (#2325) (@dgubko)

v9.1.14 (2023-08-24)

Components

  • fix(Tabs): Fix tab item icon accent styles (#2323) (@alanbsmith, emma.okeeffe)

v8.6.19 (2023-08-24)

Components

  • fix(Tabs): Fix tab item icon accent styles (#2323) (@alanbsmith, emma.okeeffe)

v9.1.13 (2023-08-14)

Components

v9.1.12 (2023-08-11)

Documentation

v9.1.11 (2023-08-04)

Documentation

v9.1.10 (2023-08-03)

Components

  • fix: Breadcrumbs first item gets cut-off when two items in array (#2308) (@thelightbringer, Abhijit Misra)

v8.6.18 (2023-08-03)

Components

  • fix: Breadcrumbs first item gets cut-off when two items in array (#2308) (@thelightbringer, Abhijit Misra)

v9.1.9 (2023-08-01)

Documentation

v9.1.8 (2023-07-31)

Components

  • fix(preview): Blur firing incorrectly onClick (#2304) (@vibdev)

v9.1.7 (2023-07-27)

Documentation

v9.1.6 (2023-07-25)

Components

  • fix: Polishing the expandable container component (#2293) (@bstanton678) Update aria attributes on example for expandable container for better accessibility and remove alt text on avatar.

v9.1.5 (2023-07-21)

v9.1.4 (2023-07-19)

Components

  • chore: Ditch a few console logs from useActionBarModel that can clutter up test logs (#2295) (@ahayes91)

v9.1.3 (2023-07-18)

Documentation

v9.1.2 (2023-07-17)

Components

v9.1.1 (2023-07-14)

Documentation

v9.1.0 (2023-07-12)

v9.0.21 (2023-07-07)

Components

  • fix(checkbox): Fix indeterminate state not getting correctly applied (#2281) (@vibdev)

v9.0.20 (2023-06-30)

Components

v9.0.19 (2023-06-29)

Components

v8.6.17 (2023-06-29)

Components

v9.0.18 (2023-06-27)

Components

  • fix: Move spreading of CSS styles to the top of a style block (#2244) (@thunguyen19)

v9.0.17 (2023-06-26)

Documentation

  • docs: Update comments about Select options prop to match actual use (#2271) (@JeffreyRuder)

v9.0.16 (2023-06-20)

Documentation

v9.0.15 (2023-06-16)

Documentation

v9.0.14 (2023-06-15)

Documentation

  • docs: Update comment describing accessibleHide utility (#2260) (@vibdev)

v9.0.13 (2023-06-14)

Components

v8.6.16 (2023-06-14)

Components

v9.0.12 (2023-06-14)

Components

  • fix: Change Popup imports to prevent circular dependencies (#2251) (@MarcoASedano, marco.sedano)
  • fix(collection): Default T to any to allow overriding children types (#2254) (@NicholasBoll)

v8.6.15 (2023-06-14)

Components

  • fix(collection): Default T to any to allow overriding children types (#2254) (@NicholasBoll)

v8.6.14 (2023-06-12)

Components

  • fix: Change Popup imports to prevent circular dependencies (#2251) (@MarcoASedano, marco.sedano)

v9.0.11 (2023-06-12)

Documentation

  • docs: Add accessible example for LoadingDots (#2248) (@dgubko)

v8.6.13 (2023-06-12)

Documentation

  • docs: Add accessible example for LoadingDots (#2248) (@dgubko)

v9.0.10 (2023-06-07)

Components

v8.6.12 (2023-06-07)

Components

v9.0.9 (2023-06-05)

Components

  • docs: Add Media Modal to examples (#2226) (@dgubko)
  • fix: Add custom fallback placements modifier (#2200) (@clarehuang, clare.huang, @NicholasBoll) This fix adds additional fallback placements to prevent popups from rendering off screen. This behavior is different than before and might result in a popup rendering in an unexpected position. fallbackPlacements was added as a prop to Popper and Popup.Popper to allow you to override the default fallback placements (which are top/right/bottom/left in that order). This shouldn't be considered a breaking change unless your popup position needs to be restricted.

v8.6.11 (2023-06-05)

Components

  • fix: Add custom fallback placements modifier (#2200) (@clarehuang, clare.huang, @NicholasBoll) This fix adds additional fallback placements to prevent popups from rendering off screen. This behavior is different than before and might result in a popup rendering in an unexpected position. fallbackPlacements was added as a prop to Popper and Popup.Popper to allow you to override the default fallback placements (which are top/right/bottom/left in that order). This shouldn't be considered a breaking change unless your popup position needs to be restricted.

v9.0.8 (2023-06-01)

Components

  • fix: Replace overflow on Table (#2240) (@dgubko) We replaced overflow: scroll with overflow: auto to hide scrollbars unless needed. It would allow Table to not have scrollbars unless needed.

v8.6.10 (2023-05-25)

Components

v9.0.7 (2023-05-25)

Components

v9.0.6 (2023-05-24)

Component

v9.0.5 (2023-05-23)

Infrastructure

v8.6.9 (2023-05-23)

Infrastructure

v9.0.4 (2023-05-23)

Components

v9.0.3 (2023-05-19)

Examples

v9.0.2 (2023-05-18)

Components

v8.6.8 (2023-05-17)

Components

v9.0.1 (2023-05-17)

Components

v8.6.7 (2023-05-17)

Components

v8.6.6 (2023-05-12)

Components

  • fix: Fix Checkbox label padding to support RTL (#2216) (@alanbsmith, Alex Nicholls)

v9.0.0 (2023-05-10)

BREAKING CHANGES

  • #1970 The Drawer component was hard deprecated and fully removed from Canvas Kit. Please replace the deprecated Drawer component with SidePanel from the Preview package.
  • #1978 If you expected a button to submit by default, you'll have to add the attribute type="submit" in order to submit.
  • #2018 We have hard deprecated the Layout and Column components and they have been fully removed from our codebase in v9. We recommend using the Grid component as an alternative.
  • #2012 We've hard deprecated the Stack, HStack and VStack components. We recommend using the Flex component as a replacement and replacing the spacing prop with the gap prop. You can also run npx @workday/canvas-kit-codemod softDeprecate/Stack as well.
  • #2034 - Lodash is no longer required for Canvas kit
    • memoized is removed from FocusRingOptions
  • #2044 If you're using Toast from Labs already, the package will be updated to point to @workday/canvas-kit-react/toast. If you're using the Toast from Main, we've replaced it with the compound Toast from labs. v9 codemod should handle these changes for you or you can reference our v9 upgrade guide for more details.
  • #2120 - We've removed getCanvasTheme and useCanvasTheme.
    • Use useTheme when you have a CanvasProvider or you're inside of a functional component
    • Use getTheme when inside a styled component and you need access to theme.
  • #2180 - Removed composeModelHooks from @workday/canvas-kit-react/common
  • #2190 The type signature of composeHooks was changed to give more accurate return prop types. This may cause issues with Typescript if your code expected the incorrect return types.
  • #2194 The signature of the NavigationManaget and NavigationRequestor was changed to use numeric indexes instead of string identifiers. This will only break for those who created a custom navigation manager.

Codemod

  • test: Update Toast codemod to transform before promote (#2125) (@mannycarrera4, manuel.carrera)

Codemods

Components

  • chore: Hard deprecate Drawer component (#1970) (@RayRedGoose, @mannycarrera4)

  • fix: Update button type for all canvas kit buttons (#1978) (@mannycarrera4, manuel.carrera) We've changed the default button type for all of our buttons from submit to button

  • chore: Hard deprecate Layout and Column components (#2018) (@RayRedGoose)

  • feat: Remove Stack, HStack and VStack (#2012) (@josh-bagwell)

  • feat: Promote labs Toast to Main (#2044) (@mannycarrera4, manuel.carrera, @RayRedGoose) We've promoted Toast from labs to the main package. This is a replacement from what was in the main package to our compound component version in labs.

  • feat: Update useTheme hook (#2120) (@RayRedGoose, @mannycarrera4)

  • feat: Tables Component (#2118) (@josh-bagwell) We've built a new Table compound component that will have more flexibility and has access to lower level components like Grid and Flex.

  • feat: Add 'as' method with a stable reference to all component utilities (#2166) (@NicholasBoll)

  • fix: Only pass correct model to model components when using 'as' (#2168) (@NicholasBoll, @josh-bagwell)

  • chore: Remove unused composeModelHooks function (#2180) (@NicholasBoll)

  • feat: Add more layout examples (#2178) (@RayRedGoose)

  • feat(text-input): Add InputGroup component (#2182) (@NicholasBoll) InputGroup will replace InputIconContainer. InputIconContainer does not handle bidirectionality or icons at the start of an input. InputIconContainer will be deprecated and later removed in future versions.

    Before:

    <InputIconContainer icon={<SystemIcon icon={exclamationCircleIcon} />} />

    After

    <InputGroup>
      <InputGroup.Input />
      <InputGroup.InnerEnd>
        <SystemIcon icon={exclamationCircleIcon} />
      </InputGroup.InnerEnd>
    </InputGroup>
  • fix: Return the correct props from composeHooks (#2190) (@NicholasBoll, @alanbsmith)

  • chore: Simplify composeHooks function (#2191) (@NicholasBoll)

  • chore: Rename Combobox.spec to ComboboxLabs.spec (#2193) (@NicholasBoll)

  • chore: Extract keyUtils to be used in other key-based collection hooks (#2192) (@NicholasBoll)

  • chore: Use index instead of identifier for cursor navigation (#2194) (@NicholasBoll)

  • feat(collection): Add support for string items (#2195) (@NicholasBoll, @alanbsmith)

Dependencies

Documentation

Infrastructure

  • chore: Add initial V9 codemod (#2021) (@alanbsmith, @willklein)
  • test: Modify visual testing (#2028) (@RayRedGoose)
  • chore: Update the TSconfig target to es2019 (#2135) (@NicholasBoll) We're updating our build target from es5 to es2019. This changes the syntax generated by allowing syntax supported up to es2019. This may impact older environments that do not support es2019 syntax like older versions of nodejs. This could also impact older AST build parsers that don't understand newer JavasScript syntax. This could include old versions of Webpack or outdated babel parsers for Jest. If you see a message like "Syntax Error", you may have to upgrade your bundler or babel parser.
  • chore: Add option to skip docgen (#2176) (@NicholasBoll)

Tokens

  • fix: Modify depth values to improve visual design (#2091) (@mannycarrera4, manuel.carrera) We've updated our depth tokens to be more subtle rather than harsh. Any component using these depth tokens will be updated, including Card, Menu, Toast, Box, Dialog, Popup.

Utilities

  • chore: Move useThemedRing to main package and deprecate useThemeRTL (#2119) (@mannycarrera4, manuel.carrera)
    • We've promoted useThemedRing to our Main package.
    • We've deprecated useThemeRTL from our Labs package. You may still use this utility but we encourage consumers to use CSS logical properties.

v8.6.5 (2023-05-10)

Infrastructure

v8.6.4 (2023-05-01)

BREAKING CHANGES

  • #2173 Optional breaking changes message. If your PR includes breaking changes. It is extremely rare to put breaking changes outside a prerelease/major branch. Anything in this section will show up in release notes. Remove this section if no breaking changes are present.

Documentation

  • fix: Basic Grid Example with landmark regions for screen readers (#2173) (@bstanton678) Optional release note message. Changelog and release summaries will contain a pull request title. This section will add additional notes under that title. This section is not a summary, but something extra to point out in release notes. An example might be calling out breaking changes in a labs component or minor visual changes that need visual regression updates. Remove this section if no additional release notes are required.

v8.6.3 (2023-05-01)

Dependencies

v8.6.2 (2023-04-27)

Components

v7.4.12 (2023-04-27)

Components

v7.4.11 (2023-04-26)

v8.6.1 (2023-04-26)

Components

Dependencies

Infrastructure

v7.4.11 (2023-04-26)

Components

Dependencies

Infrastructure

v8.6.0 (2023-04-20)

Components

  • feat: Added inset to PositionStyleProps (#2129) (@thunguyen19)
  • feat: Allow Icon components to use color tokens (#2097) (@thunguyen19) Optional release note message. Changelog and release summaries will contain a pull request title. This section will add additional notes under that title. This section is not a summary, but something extra to point out in release notes. An example might be calling out breaking changes in a labs component or minor visual changes that need visual regression updates. Remove this section if no additional release notes are required.

Infrastructure

v8.5.13 (2023-04-17)

Components

v8.5.12 (2023-04-14)

Components

  • fix(menu): Fix MenuItem icon spacing (#2145) (@alanbsmith, @mannycarrera4, manuel.carrera) Updated spacing between icon and text in our menus from 8px to 16px to match our design specs.

v8.5.11 (2023-04-12)

Infrastructure

v8.5.10 (2023-04-11)

Codemods

  • fix(codemod): Pass codemod options to jscodeshift script (#2137) (@alanbsmith)

Infrastructure

v8.5.9 (2023-03-30)

Components

  • fix: Extract the correct ref with a styled component (#2122) (@NicholasBoll) The following is now allowed:

    const StyledComponent = styled('button')({})
    
    const MyComponnent = createComponent(StyledComponent)({
      Component(elemProps, ref, Element) {
        return <Box as={Element} ref={ref} {...elemProps} />
      }
    })

v8.5.8 (2023-03-27)

Documentation

v8.5.7 (2023-03-23)

Infrastructure

v8.5.6 (2023-03-21)

Components

  • fix(collection): Correctly use custom getId (#2096) (@NicholasBoll) An example was incorrectly using the wrong id. Note that state.items in a dynamic collection wraps your provided items so there is a .id property on state.items. model.getId is no longer needed and will be removed in the future to avoid confusion.

v7.4.10 (2023-03-21)

Components

  • fix(collection): Correctly use custom getId (#2096) (@NicholasBoll) An example was incorrectly using the wrong id. Note that state.items in a dynamic collection wraps your provided items so there is a .id property on state.items. model.getId is no longer needed and will be removed in the future to avoid confusion.

v8.5.5 (2023-03-16)

Components

  • docs: Move Box, Flex, and Grid to a new Layout Folder in Storybook (#2078) (@thunguyen19)

v8.5.4 (2023-03-15)

Documentation

v8.5.3 (2023-03-13)

Documentation

v8.5.2 (2023-03-09)

Infrastructure

  • ci: Add logging to the merge step in forward-merge (@NicholasBoll)

v8.5.1 (2023-03-09)

Components

  • fix: Remove style attribute on Expandable Title (#2074) (@vibdev) Not explicitly a breaking change for Expandable.Title, but does alter the specificity for fontFamily, fontSize, lineHeight, fontWeight, color, and textAlign.

Infrastructure

v8.5.0 (2023-03-08)

Components

  • feat: Allow SystemIcon to use token colors (#1988) (@thunguyen19) Allow SystemIcon to use token colors for any color related props.
  • fix: Update modal padding to match mobile specs (#2008) (@seans-cummin, @mannycarrera4)
    • Updating padding from 16px to 24px for smaller screen sizes, bringing the total padding between edge and content to 24px.
    • Reduced padding between title and body from 16px to 8px for smaller screen sizes.

Documentation

v8.4.13 (2023-03-07)

Components

Infrastructure

  • ci: Block fontawesome in Cypress tests to prevent failures (@NicholasBoll)
  • ci: Add logging to the merge step in forward-merge (@NicholasBoll)

v8.4.12 (2023-03-01)

v8.4.11 (2023-02-28)

Infrastructure

Testing

  • test: Update tooltip testing story to render properly (#2047) (@mannycarrera4, manuel.carrera)

v7.4.9 (2023-02-24)

Testing

  • test: Update tooltip testing story to render properly (#2047) (@mannycarrera4, manuel.carrera)

v8.4.10 (2023-02-14)

Codemods

  • fix: Fixed an issue with codemod not recognizing VStack or HStack (#2036) (@josh-bagwell)

Infrastructure

v8.4.9 (2023-02-07)

Documentation

  • docs: Add docs on model hooks and create utilities (#1881) (@mannycarrera4, manuel.carrera, @NicholasBoll) To better support our consumers, we're adding documentation on our Compound Component utilities and hooks. You can find the docs under Hooks and Utilities -> Compound Components

v8.4.8 (2023-02-07)

Components

  • fix: Allow overriding of return focus when closing a popup (#1991) (@christine-m, christine.mullins)

v7.4.8 (2023-02-07)

Components

  • fix: Allow overriding of return focus when closing a popup (#1991) (@christine-m, christine.mullins)

v8.4.7 (2023-02-07)

Documentation

v8.4.6 (2023-02-06)

Documentation

v8.4.5 (2023-02-03)

Documentation

v8.4.4 (2023-02-01)

Testing

v8.4.3 (2023-02-01)

Documentation

  • docs: Fix typo in react-font README (#2010) (@sheelah, Sheelah Brennan)

v8.4.2 (2023-01-30)

Codemods

v8.4.1 (2023-01-26)

Documentation

  • docs: Add example for a simple compound component (#1998) (@vibdev)

v8.4.0 (2023-01-25)

Codemods

v8.3.12 (2023-01-24)

Components

v8.3.11 (2023-01-17)

Components

  • fix(tabs): Use mask image to display fade effect on tabs (#1705) (@anishatulai, Anisha Tulai)

v8.3.10 (2023-01-13)

Documentation

v8.3.9 (2023-01-13)

Components

v8.3.8 (2023-01-10)

Documentation

v8.3.7 (2023-01-10)

Storybook

v8.3.6 (2023-01-09)

Infrastructure

v8.3.5 (2023-01-09)

Documentation

  • chore: Re organize storybook (#1943) (@mannycarrera4, manuel.carrera, @jaclynjessup) We've updated our categories and organization on storybook to better surface information.

v8.3.4 (2023-01-09)

Testing

  • test(tooltip): Add delay to fix flaky placement tests on tooltips (#1968) (@mannycarrera4, manuel.carrera)

v7.4.7 (2023-01-06)

Testing

  • test(tooltip): Add delay to fix flaky placement tests on tooltips (#1968) (@mannycarrera4, manuel.carrera)

v8.3.3 (2022-12-21)

Documentation

  • docs: Add Pagination responsive range example (#1966) (@alanbsmith, Will Klein)

v8.3.2 (2022-12-19)

Components

  • fix: Set Pagination GoTo TextInput to use current page as initial value (#1930) (@alanbsmith, manuel.carrera)

v8.3.1 (2022-12-16)

Components

  • chore: Remove conventional-recommended-bump from release.yml (#1961) (@alanbsmith)

Dependencies

Infrastructure

v8.3.0 (2022-12-09)

Components

  • fix: Fix Expandable exports and types (#1953) (@alanbsmith) useExpandableModel wasn't properly exported with the other hooks. It's been moved into the /hooks directory and exported from there. If you were importing this hook from dist, you'll need to update the import.

    // before
    import { useExpandableModel } from "@workday/canvas-kit-labs-react/dist/es6/expandable/lib/useExpandableModel";
    
    // after
    import { useExpandableModel } from "@workday/canvas-kit-labs-react/expandable";

v7.4.6 (2022-12-09)

Components

  • fix: Fix Expandable exports and types (#1953) (@alanbsmith) useExpandableModel wasn't properly exported with the other hooks. It's been moved into the /hooks directory and exported from there. If you were importing this hook from dist, you'll need to update the import.

    // before
    import { useExpandableModel } from "@workday/canvas-kit-labs-react/dist/es6/expandable/lib/useExpandableModel";
    
    // after
    import { useExpandableModel } from "@workday/canvas-kit-labs-react/expandable";

v8.2.4 (2022-12-06)

v8.2.3 (2022-12-01)

Documentation

v8.2.2 (2022-11-22)

Documentation

v8.2.1 (2022-11-21)

Dependencies

v8.2.0 (2022-11-18)

Documentation

v7.4.5 (2022-11-18)

Documentation

v8.1.2 (2022-11-17)

Components

v8.1.1 (2022-11-16)

Documentation

v8.1.0 (2022-11-14)

Components

  • fix(search-form): Enable overriding the generated labelId (#1909) (@willklein)

v7.4.4 (2022-11-14)

Components

  • fix(search-form): Enable overriding the generated labelId (#1909) (@willklein)

Infrastructure

v8.0.9 (2022-11-09)

Components

  • fix: Remove dividers and headers from preview MenuItem Voice Over count (#1901) (@vibdev)

v8.0.8 (2022-11-08)

Components

v8.0.7 (2022-11-08)

Components

v8.0.6 (2022-11-03)

Components

  • fix: Fail gracefully if localStorage is blocked in useModalityType (#1898) (@NicholasBoll)

v8.0.5 (2022-11-03)

Codemods

v8.0.4 (2022-11-03)

Documentation

v8.0.3 (2022-11-03)

Documentaion

v8.0.2 (2022-11-03)

Codemods

v8.0.1 (2022-11-02)

BREAKING CHANGES

  • #1636 Canvas Kit will require teams to be on version ^18.x or at least ^17.0 for backwards compatibility. To use have all React 18 features would require teams to upgrade root API, otherwise they will be ignored.

  • #1646 Some component will now have to be imported like this: import { export1 } from "module-name";

    • chore: Bump csstype to v3 and update style prop types (#1673)

    We removed csstype in a previous update, but we need to add it back. I also updated the version and corrected the style prop types to match. You can read about the V3 changes here.

    [category:Components]

    • feat: Added gridStyleProps to Box

    • fix: Adjusting items

    • feat: Added unit tests and chromatic tests

    • feat: Added chromatic test

    • fix: Adjusted props in UI Example

    • fix: Made adjustments per suggestions

    • chore: Updated docs with suggestions made in PR

    • fix: Adjusted UI Example for 12 columns

    • fix: Fixed docs with suggestions made

  • #1722 Some component will now have to be imported like this: import { export1 } from "module-name";

    • chore: Bump csstype to v3 and update style prop types (#1673)

    We removed csstype in a previous update, but we need to add it back. I also updated the version and corrected the style prop types to match. You can read about the V3 changes here.

    [category:Components]

    • feat: Added gridStyleProps to Box

    • fix: Adjusting items

    • feat: Added unit tests and chromatic tests

    • feat: Added chromatic test

    • fix: Adjusted props in UI Example

    • fix: Made adjustments per suggestions

    • chore: Updated docs with suggestions made in PR

    • fix: Adjusted UI Example for 12 columns

    • fix: Fixed docs with suggestions made

    • feat: Added token intake to specific grid props

    • fix: Added tokens to tests and added docs

    • fix: Added export for GridSpacePropsValues

    • chore: Added gridItem props to Box

    • chore: Updated grid and gridItem from comments

    • fix: Added continue on line 119 of grid util

    • fix: Made adjustment to gridSpaceStyleProps to fix visual test

  • #1747 This update soft-deprecates all exports from canvas-kit-labs-react/drawer, canvas-kit-preview-react/menu and Layout and Column imports from canvas-kit-react/layout. 🤖 These changes are handled automatically by the codemod transform included in this PR. Please refer to the v8 upgrade guide for more information.

  • #1724 - Breadcrumbs has been promoted and now it lives in main react package

    • Breadcrumbs.Nav has been removed and replaced by Breadcrumbs
    • Breadcrumbs.Nav prop of aria-label has been removed to Breadcrumbs
    • Breadcrumbs.CollapsibleList has been renamed to Breadcrumbs.List
    • Breadcrumbs.ListItem has been renamed to Breadcrumbs.Item

    🤖 All the above changes can be handled by running codemod

    ⚠️ As onAction has been removed from Breadcrumbs.Item, it requires to change manually onAction usage based on examples provided in the v8 upgrade guide.

    ⚠️ As Breadcrumbs.CollapsibleList has been removed, all overflow functionality provided by this component has been removed too. Now overflow functionality is provided by List system and requires to switch to BreadcrumbsModel manually.

  • #1785 We've removed any IE11 specific code including any polyfills. This means your application will no longer run in IE11 and fail to bootstrap with an error and a white screen. Do not upgrade to this version if your application needs to support IE11.

  • #1800 - ComponentStatesTable, permutateProps, StaticStates and propTypes have been moved to @workday/canvas-kit-react/testing.

    • StaticStates and convertToStaticStates have been moved from @workday/canvas-kit-react/common to @workday/canvas-kit-react/testing 🤖 All the above changes can be handled by running codemod
  • #1863 Optional breaking changes message. If your PR includes breaking changes. It is extremely rare to put breaking changes outside a prerelease/major branch. Anything in this section will show up in release notes. Remove this section if no breaking changes are present.

  • #1861 We've updated all popup CloseIcon and CloseButton to default to type=button. We did this so these close buttons did not submit the forms unintentionally. Without this change, you have to manually add type="button" to these components if you wrap popup contents in a form element. While this is a very unlikely that a CloseButton was intentionally used as an implicit submit button, it is still a breaking change. This change effects the following components:

    • Popup.CloseIcon
    • Dialog.CloseIcon
    • Modal.CloseIcon
    • Popup.CloseButton
    • Dialog.CloseButton
    • Modal.CloseButton
  • #1874 ActionBar.OverflowButton inside ActionBar.List is replaced with an overflowButton prop. So, now ActionBar.List with overflow behavior requires to pass an overflow button component as a overflowButton prop.

    <ActionBar.List overflowButton={<ActionBar.OverflowButton aria-label="More actions" />} />

    🤖 This change can be handled by using codemod.

  • #1880 The LoadingAnimation component has been renamed to LoadingDots and its slash import is now @workday/canvas-kit-react/loading-dots instead of @workday/canvas-kit-react/loading-animation.

Components

  • fix: Remove default imports from components (#1634) (@mannycarrera4) We've updated some of our components to remove default exports. This matches what most of our component are doing.

    Some component will now have to be imported like this: import { export1 } from "module-name";

  • chore: Bump csstype to v3 and update style prop types (#1673) (@alanbsmith)

  • feat: Add Grid component (#1646) (@josh-bagwell, Manuel Carrera, Alan B Smith) We've updated some of our components to remove default exports. This matches what most of our component are doing.

  • feat(preview): Create type components (#1626) (@RayRedGoose) The next changes have been made:

    • Added new Box component props to support font and text styles, added variant name value support to color prop.
    • Created basic Text component with level, size props to set type levels and isTruncated prop to have ellipsis overflow text.
    • Created specific level components: Title, Heading, BodyText and Subtext.
    • Created Label text component.
  • feat: Add responsive styles to Modal (#1700) (@mannycarrera4)

  • docs(layout): Improve Grid documentation (#1716) (@jamesfan, Raisa Primerova, Manuel Carrera)

  • feat: Grid Space Tokens (#1722) (@josh-bagwell, Manuel Carrera, Alan B Smith) We've updated some of our components to remove default exports. This matches what most of our component are doing.

  • fix(menu): Update CKR Menu (Main) to use depth 3 (#1768) (@RayRedGoose, Alan B Smith, Alan B Smith)

  • feat: Soft deprecation of Drawer, Menu (preview), Layout (#1747) (@RayRedGoose)

  • feat(breadcrumbs): Add List system to Breadcrumbs with promotion to main (#1724) (@RayRedGoose, @jamesfan, @alanbsmith, @mannycarrera4)

  • chore: Remove IE11 specific code (#1785) (@mannycarrera4, manuel.carrera)

  • fix: Update Modal styles on smaller screen sizes (#1815) (@mannycarrera4, manuel.carrera) On smaller screen sizes (min-width of 320px to a max-width of 767px) the follow styles change on the Modal:

    • borderRadius on the Modal.Card has been reduced: 8px -> 24px
    • Overall padding between the edge of the card and its contents has been reduced: 32px -> 24px
    • Spacing between Moda.Heading and Modal.Body has been reduced: 24px -> 16px
  • feat: Refactor, reorganize, and expand style props (#1827) (@alanbsmith)

  • feat: Components and utilities to testing package (#1800) (@mannycarrera4, manuel.carrera, @alanbsmith)

  • fix: Add style prop doc examples to build-mdx script (#1848) (@alanbsmith)

  • feat(breadcrumbs): Update Breadcrumbs aria props, examples, and a11y guidance (#1850) (@RayRedGoose) Changes:

    • Added requirement of aria-label for nav element in Breadcrumbs component.
    • Added requirement of aria-label for overflow button.
    • Limited overflow button render: it renders only when overflowButtonProps containing at least aria-label prop passed to Breadcrumbs.List.
  • feat: Add useCloseOnTargetHidden popup hook (#1836) (@stefano-puzzuoli, @NicholasBoll) If you need a popup to close when the target element is no longer visible (useful for tooltips and dropdown menus), there's now a 'useCloseOnTargetHidden` popup hook. This will close the popup when less than 50% of the target element is visible. This hook uses an IntersectionObserver.

  • feat: Add new compound status indicator (#1851) (@mannycarrera4, manuel.carrera, @NicholasBoll, @jamesfan, @willklein) We've created a compound component version of our StatusIndicator which you can find under our preview components. This new API will allow for more composability and ergonomic API. With the new component, the default styling is to have sentenced cased text for better accessibility.

  • fix: Update modal padding and event keys to match modern browsers (#1863) (@mannycarrera4, manuel.carrera) Optional release note message. Changelog and release summaries will contain a pull request title. This section will add additional notes under that title. This section is not a summary, but something extra to point out in release notes. An example might be calling out breaking changes in a labs component or minor visual changes that need visual regression updates. Remove this section if no additional release notes are required.

  • feat: New Segmented Control component (#1819) (@RayRedGoose, @mannycarrera4, @NicholasBoll)

  • fix: Popup close buttons no longer interfere with forms (#1861) (@NicholasBoll, @mannycarrera4)

  • refactor(preview): Remove equal size hook in SegmentedControl (#1869) (@RayRedGoose)

  • fix: Update modal padding and margin on smaller screen sizes (#1867) (@mannycarrera4, manuel.carrera)

  • refactor(action-bar): Overflow button replacement by a prop (#1874) (@RayRedGoose)

  • feat: Responsive Styles Support (#1779) (@josh-bagwell, @alanbsmith)

  • chore(loading-dots): Rename Loading Animation to be Loading Dots (#1880) (@willklein)

Dependencies

Documentation

Infrastructure

Types

Utilities

v7.4.3 (2022-10-31)

Components

  • fix: Correctly call keyboard click events when Preview Menu has headers (#1879) (@vibdev)

v7.4.2 (2022-10-25)

Documentation

  • docs: Fix multiSelectionManager import in Collections example (#1871) (@jamesfan)

Infrastructure

  • ci: Add debug logging to forward merge workflow (@NicholasBoll)

v7.4.1 (2022-10-13)

Documentation

  • docs: Remove dependency on Storybook utils from CustomStyles example (#1844) (@jamesfan)

Infrastructure

v7.4.0 (2022-10-12)

Components

  • feat: Add menu headers for grouping items (#1822) (@vibdev, @NicholasBoll) Adds the ability to mark <MenuItems> as headers using the isHeader attribute. This allows users to group menu items logically. It updates the code used for keyboard shortcuts to ignore any items marked as a header.
  • feat: Add support for opening stories in Tesseract (#1829) (@anicholls)

Infrastructure

v7.3.18 (2022-10-10)

Infrastructure

Test

v7.3.17 (2022-10-07)

Components

  • fix: Error handling to fix TypeError bug on models used in responsive modals/popups (#1831) (@ahayes91)

Infrastructure

v7.3.16 (2022-10-06)

Documentation

  • docs: Add uncontrolled input example using React Hook Form (#1820) (@vibdev)

v7.3.15 (2022-10-04)

Components

v7.3.14 (2022-10-04)

Documentation

Infrastruture

v7.3.13 (2022-09-28)

Tests

  • test(menu): Add missing test case for tabbing out of a control (#1733) (@smopur)

v7.3.12 (2022-09-28)

Components

  • fix(popup): Fix return focus timing for tooltips and focus events (#1806) (@NicholasBoll)

Documentation

Infrastructure

v7.3.11 (2022-09-27)

Components

Documentation

Infrastructure

v7.3.10 (2022-09-23)

Components

  • fix: Remove use of style to style border radius on TertiaryButton (#1803) (@mannycarrera4) We were using style to apply border radius which prevent users from overwriting styles. Using borderRadius allows for customization.

v7.3.9 (2022-09-23)

Infrastructure

  • fix: Update create-component scripts (#1719) (@vibdev) Updates the create create-component script to generate components using the new 7.x functions. It also updates the generated stories to use mdx.

v7.3.8 (2022-09-22)

Components

  • fix: Extend BaseButtonProps to our buttons and export utility functions (#1775) (@mannycarrera4)
    • You can now overwrite styles using style properties from Box on PrimaryButton, SecondaryButton, TertiaryButton and DeleteButton. This allows you to customize styles more easily.
    • We're exporting utility functions getMinWidthStyles and getPaddingStyles to help those making custom buttons

v7.3.7 (2022-09-21)

Infrastructure

  • fix(common): Add support for class components to createComponent (#1786) (@anicholls)

v7.3.6 (2022-09-21)

Documentation

  • fix: Remove spellcheck from togglable password field (#1782) (@vibdev)

v7.3.5 (2022-09-20)

Components

v7.3.4 (2022-09-16)

Components

  • chore: Add custom lint rule to encourage CK slash imports (#1762) (@alanbsmith)

v6.8.15 (2022-09-15)

Components

v7.3.3 (2022-09-15)

Components

  • fix: Enable to use size prop in SegmentedControl.Button component (#1766) (@RayRedGoose)

v7.3.2 (2022-09-15)

Documentation

v7.3.1 (2022-09-09)

Components

v7.3.0 (2022-08-31)

Components

v7.2.11 (2022-08-31)

Components

Infastructure

Infrastructure

v7.2.10 (2022-08-29)

Components

  • fix(menu): Fix issue with color change on menu item icon hover (#1744) (@RayRedGoose)

v7.2.9 (2022-08-16)

Infrastructure

v7.2.8 (2022-08-15)

Components

v7.2.7 (2022-08-12)

Components

  • fix: Ignore tabIndex to take elements out of the focus order (#1723) (@smopur) Fixes tabbing out of a a control where elements in the control are excluded from the tab order

v7.2.6 (2022-08-11)

Documentation

v7.2.5 (2022-07-28)

Infrastructure

  • fix: Remove circular dependencies between monorepo packages (#1697) (@NicholasBoll) In order to remove circular dependencies without any breaking changes, we removed the restriction on SearchForm, Combobox, and AutoCompleteList (labs components) that restricted children to MenuItem components (preview component). This removes the Typescript error if you feed these components children that are not MenuItem.

v7.2.4 (2022-07-27)

Infrastructure

v6.8.14 (2022-07-27)

Infrastructure

v7.2.3 (2022-07-27)

Documentation

Infrastructure

  • ci: Fix forward-merge script and optimize release/forward-merge jobs (@NicholasBoll)
  • ci: Ignore Storybook test on forward-merge (@NicholasBoll)
  • ci: Remove extra manual bump step (@NicholasBoll)

v7.2.2 (2022-07-27)

Components

Documentation

Infrastructure

  • ci: Fix forward-merge script and optimize release/forward-merge jobs (@NicholasBoll)

v6.8.13 (2022-07-22)

Documentation

v7.2.1 (2022-07-22)

v6.8.12 (2022-07-21)

Infrastructure

  • ci: Fix forward-merge script and optimize release/forward-merge jobs (@NicholasBoll)

v7.2.0 (2022-07-21)

Components

Infrastructure

  • ci: Fix release and forward-merge CI interactions (@NicholasBoll)

v6.8.11 (2022-07-20)

Infrastructure

v7.1.5 (2022-07-20)

Components

  • fix(pagination): Remove aria-relevant attr (#1659) (@alanbsmith)
  • Throw CI errors in forward-merge script (@NicholasBoll)
  • fix(button): Make icon-only tertiary button themeable (#1677) (@RayRedGoose) We added isThemeable prop to TertiaryButton to allow applying theme colors for icon-only variant. Because default icon button doesn't use default theme colors, it makes icon-only TertiaryButton not themeable.

Documenation

Infrastructure

  • ci: Add post-merge yarn install and add merge pr instructions (@NicholasBoll)
  • ci: Add command logging to forward-merge (@NicholasBoll)
  • ci: Fix forward-merge logic to move install out of conflict code (@NicholasBoll)
  • ci: Fix forward-merge command line processing (@NicholasBoll)
  • ci: Fix forward-merge command line processing (@NicholasBoll)
  • ci: Fix issues with forward merge script when run locally (@NicholasBoll)
  • ci: Fixing issues with forward-merge script (@NicholasBoll)
  • ci: Add CI button to release minor versions [no release] (#1683) (@NicholasBoll)
  • ci: Add version override to manual release action (@NicholasBoll)

v6.8.10 (2022-07-13)

v7.1.4 (2022-07-12)

Components

v7.1.3 (2022-07-11)

Components

v7.1.2 (2022-07-07)

Components

Infrastructure

v7.1.1 (2022-06-30)

Components

v7.1.0 (2022-06-28)

Components

  • chore: Bump prerelease/minor to new major version (@NicholasBoll)
  • feat: Add useModalityType hook and add modality support to tabs (#1523) (@NicholasBoll)

v7.0.15 (2022-06-28)

Components

  • docs(examples): Add example for SegmentedControl with text buttons (#1623) (@RayRedGoose)

v7.0.14 (2022-06-22)

Components

v7.0.13 (2022-06-20)

v7.0.12 (2022-06-20)

Documentation

v7.0.11 (2022-06-20)

Dependencies

  • fix: Update yarn.lock dependencies for icons and TypeScript (#1640) (@willklein)

Documentation

v7.0.10 (2022-06-16)

Dependencies

v7.0.9 (2022-06-16)

Documentation

  • fix: Update remaining Emotion 11 imports (#1638) (@willklein) Updated documentation for @workday/canvas-kit-react-fonts to correctly import utilities from Emotion 11 rather than Emotion 10.

v7.0.8 (2022-06-08)

Documentation

v7.0.7 (2022-06-03)

Components

  • fix: Add inverse variant to checkbox and radio (#1617) (@mannycarrera4) We've added variant="inverse" to our Radio and CheckBox components

v7.0.6 (2022-06-03)

Components

v7.0.5 (2022-05-25)

Documentation

  • fix(banner): Fix RTL Sticky Banner story (#1609) (@vibdev)

v7.0.4 (2022-05-25)

Documentation

  • fix(search-form): Show autocomplete list and filter by includes in example (#1610) (@6r3al)

v7.0.3 (2022-05-24)

Codemods

v7.0.2 (2022-05-24)

Components

v7.0.1 (2022-05-23)

Documentation

v7.0.0 (2022-05-18)

BREAKING CHANGES

  • #1359 This change updates the banner component to use the compound component pattern. For more information, please see the V7 migration guide.

  • #1396 Change fixed prop from component to position to set container position (fixed position has been set as default).

  • #1329 Status Indicators currently truncate when they reach their max width of 150px. After receiving requests to increase this, we have upped it by 25% to 200px.

  • #1409 Canvas Kit will require teams to be on version ^17.x or at least 16.14 for backwards compatibility and we will remove the jsx pragma and use of css props. This does not mean consumers can’t use the css prop, just that internally we will stop using it. This would require teams to upgrade other parts of their app including React, potentially Babel and any other side effects that come with it.

  • #1442 All findings and changes have been outlines here

  • #1456 We are hard deprecating CookieBanner, Header and PageHeader. If you would like to migrate off of these components you can find them under our Example section in storybook

  • #1460 Flex, Box and Stack will no longer be imported from @workday/canvas-kit-labs-react. They will now be imported from @workday/canvas-kit-react/layout

  • #1477 - Combined Icon Buttons with Primary, Secondary, and Tertiary buttons

    • Remove IconButton component
    • Add a new XS, L sizes
    • Removed the toggled prop when migrating over Icon Buttons
    • Converted SegmentedControl into a compound component and it no longer renders IconButton as children
    • Changed the values of IconPosition: left | right - > start | end
    • Refactored AccentIcon, AppletIcon, Graphic, Icon, Svg, SystemIcon, and SystemIconCircle to use create component and remove iconRef prop and now just pass the ref forward
    • Remove dataLabel prop from PrimaryButton and SecondaryButton
  • #1547 - Upgrade Typescript to 4.1 and drop support for Typescript <4

    • Popup.Body is an overflow container. If your popup buttons are inside the Popup.Body element (our examples did this), you will need to move those buttons outside the Popup.Body element, otherwise the focus rings may be cut off. See migration guide for more information.
    • Changed the signature of model callbacks and guards. This is handled by our codemod
      • Before:
        • shouldUpdate({data, state})
        • onUpdate({data, prevState})
      • After:
        • shouldUpdate(data, state)
        • onUpdate(data, prevState)
  • #1587 Removed the data wrapper around the event in show and hide events. The arguments are not commonly used, however.

    // v6
    const model = usePopupModel({
      onShow({ data: { event }, prevState }) {
        console.log(event);
      }
    })
    
    // v7
    const model = usePopupModel({
      onShow(event, prevState) {
        console.log(event);
      }
    })

    🤖 The codemod will update all inline guards and callbacks like in this example. If a guard or callback was defined outside the model config block, it will not be covered by the codemod.

  • #1585 This PR contains breaking changes because using new ActionBar requires restructure old version and adding ActionBar.List as sub-component of ActionBar. This changes are covered by codemod but using an overflow behavior requires manual implementation.

Codemods

  • fix(codemod): Add JSXExpressionContainer support to V7 IconButton codemod (#1558) (@josh-bagwell)

Components

  • refactor(banner): Update Banner to use the compound component pattern (#1359) (@vibdev)
  • fix(side-panel): Add tooltip to toggle button for side panel (#1401) (@mannycarrera4)
  • feat(action-bar): Refactor ActionBar component (#1396) (@RayRedGoose)
  • feat: Increase max width of Status Indicator, add prop and examples (#1329) (@anicholls)
  • feat(modal): Add support for scrolling a modal (#1259) (@NicholasBoll)
  • chore!: Hard deprecate Header, Page Header and Cookie Banner (#1456) (@mannycarrera4)
  • chore: Migrate Flex, Stack and Box to main under layout (#1460) (@mannycarrera4)
  • fix(modal): Remove x axis scrollbar (@NicholasBoll)
  • fix(modal): Correct overflow value (@NicholasBoll)
  • fix(modal): Update Modal full-overflow for IE11 (@NicholasBoll)
  • chore: Combine Icon Buttons with Primary, Secondary and Tertiary (#1477) (@mannycarrera4)
  • feat(common): Update depth tokens (#1517) (@RayRedGoose)
  • fix(button): Update padding for buttons (#1532) (@mannycarrera4)
  • fix(popup): Remove containerElement prop from Popper (#1524) (@RayRedGoose)
  • fix(toast): Add aria attributes to alert toast (#1536) (@RayRedGoose)
  • fix(button): Updated stories to match spec (#1539) (@josh-bagwell)
  • feat(select): Accept custom render method prop for selected option (#1512) (@giulialubet)
  • chore: Update accent, applet, and system icon deps (#1554) (@alanbsmith)
  • fix: Update codemod to run all transforms (#1563) (@mannycarrera4)
  • feat: Add collection system (#1547) (@NicholasBoll) We've added a collection system to help our users create custom components like
  • fix(layout): Update reentrant imports for layout components (#1574) (@mannycarrera4)
  • feat(preview): Add Pill component (#1542) (@mannycarrera4) We've added a new Pill component. Pills are used to visually label objects on a page for quick recognition. They’re offered as both static, read-only and interactive elements. They allow users to input a section, filter a list or table, or label information to help with scanning and organization.
  • chore(disclosure): Remove event data wrapper in disclosure events (#1587) (@NicholasBoll) Optional release note message. Changelog and release summaries will contain a pull request title. This section will add additional notes under that title. This section is not a summary, but something extra to point out in release notes. An example might be calling out breaking changes in a labs component or minor visual changes that need visual regression updates. Remove this section if no additional release notes are required.
  • feat(action-bar): Add menu to ActionBar (#1585) (@RayRedGoose) Optional release note message. Changelog and release summaries will contain a pull request title. This section will add additional notes under that title. This section is not a summary, but something extra to point out in release notes. An example might be calling out breaking changes in a labs component or minor visual changes that need visual regression updates. Remove this section if no additional release notes are required.
  • test: Fix test failure due to a github automerge issue (@NicholasBoll)
  • fix: Update codemods to handle different imports (#1567) (@mannycarrera4)
  • feat(button): Add ExternalHyperlink and missing stories for Hyperlinks (#1430) (@vibdev)
  • fix(action-bar): Make hidden buttons non-interactive (#1592) (@RayRedGoose)

Dependencies

Documentation

Infrastructure

v6.8.9 (2022-05-18)

Components

Components

v6.8.8 (2022-05-18)

Components

v6.8.7 (2022-05-18)

Components

v6.8.6 (2022-05-16)

v6.8.5 (2022-05-12)

Documentation

v6.8.4 (2022-04-28)

Components

  • fix(combobox): Add "overflow: hidden" to MenuContainer (#1560) (@jsvossen)

v6.8.3 (2022-04-22)

Codemods

  • fix(codemod): Limit specifier renaming to Canvas Kit imports (#1546) (@willklein) Fixed code mods that improperly rename non-Canvas Kit components as well as Canvas Kit sub-components. This typically includes non-Canvas Kit Header components and Canvas Kit's Skeleton.Header being improperly renamed in the JSX, but solves for all future cases of Canvas Kit component names.

v5.3.17 (2022-04-14)

Components

v5.3.16 (2022-04-06)

v6.8.2 (2022-04-05)

Assets

v6.8.1 (2022-04-05)

Components

v6.8.0 (2022-04-04)

Components

v5.3.15 (2022-04-01)

Components

v6.7.2 (2022-03-30)

Components

v6.7.1 (2022-03-23)

Components

  • fix(layout): Pass key to Stack.Item when using shouldWrapChildren (#1518) (@alanbsmith)

v6.7.0 (2022-03-21)

Components

  • fix: Update usePopupTarget to apply Refs to elements not class instance (#1514) (@jaslloyd)

v5.3.14 (2022-03-21)

Components

  • fix: Update usePopupTarget to apply Refs to elements not class instance (#1514) (@jaslloyd)

v6.6.1 (2022-03-18)

Components

  • fix(action-bar): Update CSS selector to fix spacing bug (#1510) (@alanbsmith) This change updates the CSS selector for the ChildrenContainer. We're using the same selector as what's used in Stack. It is also now SSR-safe by avoiding applying styles to style tags. If you were compensating for this bug by adding space for non-button elements in the ActionBar, you'll need to remove that adjustment.

v6.6.0 (2022-03-07)

Components

  • fix: Set overflowX and overflowY to cater for IE11 scrolling bug (#1494) (@ahayes91)

v5.3.13 (2022-03-02)

Components

  • fix: Set overflowX and overflowY to cater for IE11 scrolling bug (#1494) (@ahayes91)

v6.5.1 (2022-02-24)

Components

v6.5.0 (2022-02-23)

Components

v6.4.6 (2022-02-23)

Components

v6.4.5 (2022-02-17)

Components

v6.4.4 (2022-02-17)

Components

v5.3.12 (2022-02-16)

Components

v6.4.3 (2022-02-16)

Documentation

v6.4.2 (2022-02-15)

Components

v6.4.1 (2022-02-14)

v6.4.0 (2022-02-12)

Components

Documentation

v5.3.11 (2022-02-11)

Components

v6.3.11 (2022-02-11)

Documentation

v5.3.10 (2022-02-09)

Documentation

v6.3.10 (2022-02-08)

Documentation

v6.3.9 (2022-02-01)

Components

  • fix(popup-stack): Fix popup element removal when adapter is used (#1450) (@NicholasBoll)

v6.3.8 (2022-02-01)

v6.3.7 (2022-01-27)

Components

  • fix(preview): Preview FormField.Hint error text not the correct color (#1445) (@vibdev)

v6.3.6 (2022-01-20)

Documentation

v6.3.5 (2022-01-19)

v6.3.4 (2022-01-19)

Components

v5.3.9 (2022-01-19)

Components

v6.3.3 (2022-01-14)

Test

v6.3.2 (2022-01-14)

Dependencies

v6.3.1 (2022-01-13)

v5.3.8 (2022-01-13)

Components

v6.3.0 (2022-01-13)

Hooks

  • feat(common): Remove uuid and update unique id generation (#1408) (@NicholasBoll) NOTE for jest snapshots: This change removes the uuid package and instead will generate a one-time client seed and then create auto-incrementing ids. This change will not break UI or automated UI tests. It will break snapshot tests however. Previously, the only way to get stable ids for snapshot tests was to mock the uuid module. This was an implementation detail. To make snapshots work again, add the following to your jest setup file:

    import {setUniqueSeed, resetUniqueIdCount} from '@workday/canvas-kit-react/common';
    
    beforeEach(() => {
      setUniqueSeed('a'); // force set the seed
      resetUniqueIdCount(); // reset the unique id count
    });

    This will ensure each Jest snapshot has ids that look like a0 and a1 and will be the same every time the snapshot is run. Do not use these methods in production though - it may lead to inaccessible applications due to IDREF collisions.

Infrastructure

v6.2.3 (2022-01-13)

Components

v6.2.2 (2022-01-10)

Infrastructure

v6.2.1 (2022-01-07)

Components

v6.2.0 (2022-01-03)

Components

  • fix(popup-stack): Add support for the fullscreen API (#1403) (@NicholasBoll) Fullscreen support was added to all Popups. 3 new hooks were added to help support fullscreen in whatever way you see fit:
    • useTransferOnFullscreenEnter: Use if your popup should remain open and be transfer into the fullscreen element
    • useTransferOnFullscreenExit: Use if your popup should remain open and transfer out of the fullscreen element back to the body element
    • useCloseOnFullscreenExit: Use if your popup should close when fullscreen is exited
  • chore: Add screenful to lockfile (@NicholasBoll)

v5.3.7 (2022-01-03)

Components

  • fix(popup-stack): Add support for the fullscreen API (#1403) (@NicholasBoll) Fullscreen support was added to all Popups. 3 new hooks were added to help support fullscreen in whatever way you see fit:
    • useTransferOnFullscreenEnter: Use if your popup should remain open and be transfer into the fullscreen element
    • useTransferOnFullscreenExit: Use if your popup should remain open and transfer out of the fullscreen element back to the body element
    • useCloseOnFullscreenExit: Use if your popup should close when fullscreen is exited

v6.1.5 (2021-12-22)

Documentation

v6.1.4 (2021-12-17)

Documentation

v5.3.6 (2021-12-17)

Components

Documentation

Revert

v6.1.3 (2021-12-17)

Components

v6.1.2 (2021-12-14)

Components

v6.1.1 (2021-12-10)

Infrastructure

  • chore: Have verify action to wait on visual tests (#1385) (@mannycarrera4)
  • chore: Remove unused and uneeded dependencies (#1388) (@NicholasBoll)
    • Storybook knobs are removed and all stories use Storybook Controls instead. This includes the theme override. See the PR for more details.
    • Storybook Readme addon was removed. This addon is no longer maintained. The Readme tab in the Storybook plugin panel was replaced with a custom addon that links to the Readme in Github. This allows us to more easily upgrade Storybook.

v6.1.0 (2021-12-07)

Components

  • feat(labs): Add new compound component for text area and form field (#1308) (@vibdev)
  • fix: Add formik and yup back to preview dev deps (#1376) (@alanbsmith)

v6.0.7 (2021-12-06)

Components

  • Bump support to next major version (@)
  • chore: Fix support release (@NicholasBoll)
  • fix(tooltip): Add delay to Tooltip show and hide (#1339) (@wooksauce) This change could cause visual regression tests to fail if a screen shot is taken expecting a tooltip to show immediately. Your visual regression will either have to add an explicit wait of 300ms, or change the delay to 1ms only under test.
  • fix(LoadingAnimation): Add support for RTL (#1349) (@vibdev) Possible visual regression if you have overrides to get the old version working for RTL.
  • fix(popup): Fix PopupCard styles to be more easily overridden (#1352) (@NicholasBoll)
  • chore: Bump uuid to stable non deprecated version (#1367) (@mannycarrera4)

Infrastructure

Revert

v6.0.6 (2021-12-06)

Documentation

v6.0.5 (2021-11-24)

Components

  • docs(popup): Fix typo in JSDoc description for useReturnFocus (@RayRedGoose)

v6.0.4 (2021-11-23)

Infrastructure

v6.0.3 (2021-11-23)

Components

v5.3.5 (2021-11-23)

Components

v5.3.4 (2021-11-22)

Components

  • fix(LoadingAnimation): Add support for RTL (#1349) (@vibdev) Possible visual regression if you have overrides to get the old version working for RTL.

v5.3.3 (2021-11-19)

Components

  • fix(tooltip): Add delay to Tooltip show and hide (#1339) (@wooksauce) This change could cause visual regression tests to fail if a screen shot is taken expecting a tooltip to show immediately. Your visual regression will either have to add an explicit wait of 300ms, or change the delay to 1ms only under test.

v6.0.1 (2021-11-17)

Infrastructure

v6.0.0 (2021-11-16)

BREAKING CHANGES

  • #1201 Optional breaking changes message. If your PR includes breaking changes. It is extremely rare to put breaking changes outside a prerelease/v* branch. Anything in this section will show up in release notes. Remove this section if no breaking changes are present.
  • #1276 CanvasDepthValue is renamed to CanvasDepthValues for consistency. This change is handled automatically by the v6 codemod. Please refer to the V6 upgrade guide for more information.
  • #1319 This change updates the theme breakpoint values and the media query breakpoints used in ActionBar. For more information, please see the V6 upgrade guide.
  • #1331 This change updates our PrimaryButton styles. For more information, please see the V6 upgrade guide.
  • #1332 This change updates our SecondaryButton styles. For more information, please see the V6 upgrade guide.
  • #1338 This change updates our TertiaryButton styles. For more information, please see the V6 upgrade guide.
  • #1325 Tabs API was updated to support a more generic selection model for all lists.
    • model.events.activate({tab}) -> model.events.select({id})
    • model.state.activeTab -> model.state.selectedKeys[0]
    • useTabsModel({onActivate}) -> useTabsModel({onSelect})
    • useTabsModel({shouldActivate}) -> useTabsModel({shouldSelect})

Components

Documentation

Infrastructure

Utilites

Utilities

Components

  • feat(page-header): Deprecate PageHeader (#1247) (@alanbsmith)
  • feat(cookie-banner): Deprecate CookieBanner (#1265) (@alanbsmith)
  • feat: Rename SearchBar to SearchForm and move package (#1267) (@alanbsmith)
  • feat: Deprecate Header and Global Header (#1273) (@alanbsmith)
  • feat(labs): Add new compound component for text inputs (#1201) (@vibdev) Optional release note message. Changelog and release summaries will contain a pull request title. This section will add additional notes under that title. This section is not a summary, but something extra to point out in release notes. An example might be calling out breaking changes in a labs component or minor visual changes that need visual regression updates. Remove this section if no additional release notes are required.
  • feat(button): Update PrimaryButton for v6 (#1331) (@alanbsmith)
  • feat(button): Update SecondaryButton for v6 (#1332) (@alanbsmith)
  • feat(button): Update Tertiary Buttons for v6 (#1338) (@alanbsmith)
  • feat(tabs): Add overflow support to tabs (#1325) (@NicholasBoll) Optional release note message. Changelog and release summaries will contain a pull request title. This section will add additional notes under that title. This section is not a summary, but something extra to point out in release notes. An example might be calling out breaking changes in a labs component or minor visual changes that need visual regression updates. Remove this section if no additional release notes are required.

Documentation

Infrastructure

Utilites

Utilities

v5.3.2 (2021-11-16)

Infrastructure

v5.3.1 (2021-11-16)

Components

  • Bump support to next major version (@)
  • chore: Fix support release (@NicholasBoll)

v5.2.12 (2021-11-10)

Documentation

v5.2.11 (2021-11-09)

Components

  • fix(tooltip): Fix findEllipsisElement IE11 (#1330) (@alorek)

v5.2.10 (2021-11-03)

Components

v5.2.9 (2021-10-21)

Components

v5.2.8 (2021-10-07)

Documentation

  • docs: Remove travis badge (#1299) (@theiliad)
  • docs: Re-order content and fix links (#1286) (@willklein) Improved Contributing Guidelines
  • docs(pagination): Update Pagination MDX to adhere to standardized template (#1295) (@jamesfan)
  • docs: Fix miscellaneous content issues with MDX docs (#1304) (@jamesfan)

Infrastructure

v5.2.7 (2021-09-30)

Components

  • docs(menu): Fix Menu examples to be self-contained and SSR-safe (#1291) (@jamesfan)

v5.2.6 (2021-09-24)

Components

Infrastructure

  • ci: Change forward-merge to use PAT to trigger PR job' (@NicholasBoll)

v5.2.5 (2021-09-23)

Infrastructure

v5.2.4 (2021-09-23)

Components

  • docs(tabs): Update Tabs MDX to adhere to standardized template [skip ci] (#1279) (@jamesfan)

Infrastructure

  • ci: Add automerge job [skip ci] (@NicholasBoll)

  • ci: Update GA job names to help with branch checks [skip ci] (@NicholasBoll)

  • ci: Add prerelease canary builds (@NicholasBoll) This change updates branch names for automated release management. Branch renames are as follows:

    • support/v4.x -> support
    • prerelease/v5.3 -> prerelease/minor
    • prerelease/v6 -> prerelease/major

    We renamed the support branch which could conflict with local refs. You may need to run the following if you've contributed to Canvas Kit in the past:

    git remote prune upstream
    

    Change upstream to whichever remote Workday/canvas-kit belongs to

v5.2.3 (2021-09-22)

Components

v5.2.2 (2021-09-21)

Components

  • Fix: Fix PR template to include correct category shield (@NicholasBoll)

v5.2.1 (2021-09-20)

Components

Infrastructure

  • ci: Add prefix to forward-merge job (@NicholasBoll)
  • ci: Update forward merge script (@NicholasBoll)
  • ci: Add automation to releases (#1272) (@NicholasBoll) This commit changes the interaction of contributors to Canvas Kit. All patches will be automatically released. In order to accomplish this, a new pull request link job is run to make sure that all features target a prerelease branch. For example, if you create a new pull request that adds a feature and the current version of Canvas Kit is v5.2.0, the target branch should be prerelease/minor instead of master. Don't worry, the pull request lint job will prevent mistakes. Also the Canvas Kit team can help by changing the base branch of your pull requests.
  • ci: Add npm debug information (@NicholasBoll)
  • ci: Fix npm publish for release (@NicholasBoll)
  • ci: Fix npm token (@NicholasBoll)
  • ci: Fix npm publish (@NicholasBoll)
  • ci: Fix build process (@NicholasBoll)
  • ci: Fix push GH token (@NicholasBoll)

v5.2.0 (2021-09-08)

Components

Hooks

  • feat(labs): Add convertToStaticStates to useThemeRTL (#1216) @vibdev

Docs

Infrastructure

v5.1.0 (2021-08-16)

Components

Hooks & Utils

Docs

Infrastructure

v4.8.3 (2021-08-13)

Components

Infrastructure

v5.0.4 (2021-07-12)

Components

Docs

v4.8.2 (2021-07-12)

Infrastructure

  • ci: Add additional check so support releases aren't treated as latest @anicholls
  • fix: Convert focus-trap-js to TS file to fix module-not-found error (#1149) @NicholasBoll

v5.0.3 (2021-07-09)

Components

  • docs: Convert Buttons category stories to use mdx (#1127) @anicholls
  • docs: Add MDX docs and examples for Input components (#1128) @jamesfan
  • fix(tooltip): Fix overflow ellipsis detection (#1132) @NicholasBoll
  • fix(modal): Fix focus trap when Modal contains an iframe (#1135)

Docs

  • docs: Fix codemod link in v5 migration guide @anicholls

Infrastructure

v4.8.1 (2021-07-08)

Components

v5.0.2 (2021-06-22)

Components

5.0.1 (2021-06-16)

Docs

Infrastructure

v4.8.0 (2021-06-16)

Components

  • feat(checkbox): Add aria-checked for accessibility and testability (#1045) @svagi
  • feat(comboxbox):Added default maxHeight to autocomplete container (#1079) @sraj
  • fix(combobox): Fix Combobox RTL issue (#1064) @alanbsmith
  • fix(popup): Allow popups to be owners of each other (#1054) @csongnguyen
  • fix(popup): Allow tooltips to close alongside modals on click outside (#1074) @csongnguyen
  • fix(tabs): Fix aria-selected for unselected tabs (#1033) @angadkaflay
  • fix(tooltip): Allow aria-label pass-through in muted tooltips (#1037) @NicholasBoll

Docs

Infrastructure

5.0.0 (2021-06-10)

The changes below include the changes made across all 5.0.0 beta and rc versions (v5.0.0-beta.0 - v5.0.0-rc.0).

To review the breaking changes made in this release, check out the v5.0.0 Upgrade Guide. Use our new codemod utility to make the update as smooth as possible.

Components

Infrastructure

5.0.0-rc.0 (2021-06-07)

Components

Documentation

Infrastructure

5.0.0-beta.2 (2021-04-26)

Components

Infrastructure

5.0.0-beta.1 (2021-04-12)

Components

Codemods

Infrastructure

Docs

Testing

CI

  • ci: Fix error in prerelease logic in publish-canary script @anicholls
  • ci: Update setup-node action and remove custom matcher (#994) @NicholasBoll
  • ci: Fix canary dist-tag for prerelease canaries in slack message (#1003) @anicholls

v4.7.0 (2021-04-12)

Components

  • fix(select): Fix undesired scrolling when activating the menu (#1016) @jamesfan

Infrastructure

CSS

v4.6.0 (2021-03-19)

Components

  • feat(popup): Add OverflowTooltip and update Popup behaviors to match a11y specs (#980) @NicholasBoll

Infrastructure

v4.5.1 (2021-02-26)

Components

Infrastructure

4.5.0 (2021-02-16)

Components

Hooks

Infrastructure

Notes

  • Update Pagination component #954
    • This is a breaking change in this Labs component. Please refer to the migration guide for more information on how to upgrade.

5.0.0-beta.0 (2021-01-27)

Infrastructure

Components

  • fix(common): Remove unintended whitespace around bdo tag in IE11 (#868) @vibdev

4.4.2 (2020-12-09)

Components

Infrastructure

  • feat: Upgrade Storybook to v6.1.3 (#897) @anicholls
  • fix: Add Emotion dependency to fix transient dep issue (#917) @anicholls
  • fix: Re-enable postcss for storybook builds to transpile svg-load (#919) @anicholls

4.4.1 (2020-11-20)

Components

Infrastructure

4.4.0 (2020-11-13)

Components

Infrastructure

  • docs: Remove universal selector for section elements (#896) @lychyi
  • chore: Update publish-canary.js @lychyi
  • ci: Increase buffer size for publish cmd (#903) @lychyi

Notes

With the #895, if you're using a toggleable IconButton component, you will experience visual diffs for the following icons (they were not rendering properly prior, they should now look correct when "toggled" on):

adHocDelivery
alarmClockPlus
alarmClock
boxPlus
boxTextCheck
boxTextPlus
boxTextSearch
boxTextUser
cArea100
cAreaLayered
cAreaStacked
cBar100
cBarClustered
cBarStacked
cBubble
cColumn100
cColumnClustered
cColumnLine
cColumnStacked
cDualLine
cPie
cScatter
calendarUser
cameraPlus
cardView
clipboardBlankCheck
clipboardCheck
commentActive
dashboardExpenses
documentCandidateSearch
documentsCheck
flashAuto
fontSize
highlight
jobInfo
lockPlus
manageDelivery
orderedList
pill
qrCode
receipts
region
reportParameter
rowsCheck
rowsPlus
select
timeOffBalance
time
timelinePerson
unlink
userForward
userPlus
workbook

Before Fix

image

After Fix

image

4.3.1 (2020-10-22)

Components

Infrastructure

4.3.0 (2020-10-09)

Components

Infrastructure

  • fix: Revert prismjs from 1.21.0 back to 1.17.1 (#870) @jamesfan

4.2.0 (2020-09-15)

Components

  • fix(color-picker): Fix IE rendering for color picker swatchbook (#832) @jtschult
  • feat(menu): exported MenuProps (#829) @rileymiller
  • docs(segmented-control): Remove reference to labs (#839) @lychyi
  • fix(select): Prevent disabled options from being keyboard-focused (#837) @jamesfan
  • fix(color-picker): Remove data attributes (#838) @lychyi
  • feat(color-picker): Update and export default color set (#831) @jtschult
  • test: Add cypress test for placeholder in input and text area component (#841) @mannycarrera4
  • fix(select): Replace disabled attribute on options with aria-disabled (#844) @jamesfan
  • fix(modal): Bump focus-trap-js to 1.1.0 and add test (#857) @alexandrzavalii
  • fix(form-field): Fix legend overflow bug (IE11) (#853) @lychyi

Infrastructure

4.1.2 (2020-08-04)

Components

  • fix(skeleton): Remove aria-live and add loading text content (#804) @NicholasBoll
  • fix(menu): Auto scroll to selected menu item if necessary (#812) @NicholasBoll
  • test(menu): Fix assertion name to be more clear @NicholasBoll
  • docs(skeleton): Update to remove mention of aria-live (#814) @lychyi

Infrastructure

4.0.3 (2020-08-04)

Components

  • fix(skeleton): Remove aria-live and add loading text content (#804) @NicholasBoll
  • fix(menu): Auto scroll to selected menu item if necessary (#812) @NicholasBoll
  • test(menu): Fix assertion name to be more clear @NicholasBoll
  • docs(skeleton): Update to remove mention of aria-live (#814) @lychyi

3.9.3 (2020-08-04)

Components

  • fix(skeleton): Remove aria-live and add loading text content (#804) @NicholasBoll
  • fix(menu): Auto scroll to selected menu item if necessary (#812) @NicholasBoll
  • test(menu): Fix assertion name to be more clear @NicholasBoll
  • docs(skeleton): Update to remove mention of aria-live (#814) @lychyi

4.1.1 (2020-07-27)

Components

4.0.2 (2020-07-24)

Components

3.9.2 (2020-07-21)

Components

  • fix(button): Remove literal fontFamily (#787) @lychyi

4.1.0 (2020-07-17)

Components

Infrastructure

Theming

  • refactor(common): Update pickForegroundColor to use fallback color logic (#752) @donovangini

Breaking Changes:

  • feat(popup-stack): Add adapter API to integrate with other popup systems (#782) @NicholasBoll

This is a potentially breaking change if you use usePopupStack and ReactDOM.createPortal(contents, document.body): We added createContainer to PopupStack. React no longer controls the element that is given to the the PopupStack. The PopupStack will now create a containing element that your content should render into. If you recognize this pattern, you'll need to render into stackRef.current instead of document.body.

Before:

const ref = React.createRef<HTMLDivElement>(null);

usePopupStack(ref)

React.createPortal(contents, document.body)

Now

const stackRef = usePopupStack()

React.createPortal(contents, stackRef.current)

4.0.1 (2020-07-08)

Components

  • fix(combobox): Add explicit arg to initEvent in ComboBox and header SearchBar (#767) @lychyi

3.9.1 (2020-07-07)

Components

  • fix(combobox): Add explicit arg to initEvent in ComboBox and header SearchBar (#767) @lychyi

4.0.0 (2020-06-15)

The changes below are the consolidation of changes made across all 4.0.0 beta versions (v4.0.0-beta.0-5).

To review the breaking changes made in this release, check out the v4.0.0 Upgrade Guide.

Infrastructure

Theming

Components

3.9.0 (2020-06-15)

Infrastructure

Components

4.0.0-beta.5 (2020-06-12)

Infrastructure

Components

3.8.0 (2020-05-22)

Infrastructure

Components

4.0.0-beta.4 (2020-05-20)

Infrastructure

Components

  • fix(avatar): Combine Avatar & AvatarButton and provide fallback image (#614) @vibdev
  • feat(select): Add theming to select in labs (#648) @mannycarrera4

4.0.0-beta.3 (2020-05-12)

Infrastructure

Components

4.0.0-beta.2 (2020-05-11)

Infrastructure

Theming

Components

3.7.0 (2020-05-06)

Infrastructure

Components

4.0.0-beta.1 (2020-04-13)

Infrastructure

Components

3.6.0 (2020-04-13)

Infrastructure

Components

4.0.0-beta.0 (2020-03-30)

Infrastructure

Components

  • [BREAKING] refactor(button): Simplify Button components and prep for theming (#471) @anicholls
  • [BREAKING] refactor: Rename and move IconButtonToggleGroup to SegmentedControl (#505) @anicholls
  • [BREAKING] fix(modal): Use React portals for accessibility fixes (#419) @NicholasBoll
  • [BREAKING] chore: Promote SegmentedControl out of labs (#524) @anicholls
  • fix(button): Misc. fixes after refactor (#509) @anicholls
  • feat(button): Add theming support to buttons (#527) @anicholls

3.5.0 (2020-03-12)

Infrastructure

Components

3.4.0 (2020-02-19)

Infrastructure

Components

3.3.2 (2020-01-29)

Infrastructure:

Components:

3.3.1 (2020-01-28)

Components:

  • test(switch): Redo switch tests in react-testing-library (#386) @lychyi
  • fix(labs): Remove global type from useTheme hook (#430) @lychyi

3.3.0 (2020-01-03)

Infrastructure:

Components:

3.2.0 (2020-01-03)

Infrastructure:

Components:

3.1.1 (2019-12-02)

Infrastructure:

Components:

3.1.0 (2019-11-11)

Infrastructure:

Components:

3.0.1 (2019-11-01)

Infrastructure

  • fix(labs): Update incorrect emotion version in labs core (#290) @anicholls
  • fix: Add @emotion/is-prop-valid to components that need it (#289) @anicholls

3.0.0 (2019-10-30)

Infrastructure:

Components:

Breaking Changes:

3.0.0-beta.1 (2019-10-14)

Infrastructure:

Components:

Breaking Changes:

3.0.0-beta.0 (2019-10-07)

Infrastructure:

  • docs: Update component_status.md
  • ci: Create github action for CI and add Cypress to CI (#240) @NicholasBoll

Components:

  • feat(modal): Implement CSS Modal to match React implementation (#185) @jamesfan
  • refactor: A11y updates for CSS stories and Readmes (#221) @anicholls
  • fix: Address misc. bugs in create-component script (#232) @anicholls
  • fix: Change casing for aria-labelledby attr (#236) @lychyi
  • fix: Move uuid from defaultProps to component instance (#228) @stephanerangaya
  • fix(checkbox): Change default id to be unique per instance (#192) @mannycarrera4
  • fix(menu): Add Menu example with icons and grow support (#147) @jamesfan
  • fix(button): Fix accessibility styling for CSS buttons (#186) @stephanerangaya
  • fix(menu): Always focus selected menu item and add tab accessibility (#239) @jayscheidt
  • refactor(card): Update CSS styles to match React implementation (#113) @mannycarrera4
  • refactor(icon): Update CSS styles to match React implementation (#159) @jamesfan
  • refactor(tooltip): Update CSS story to match the React version (#198) @stephanerangaya
  • refactor: Fix references to react attributes in css readmes

Breaking Changes:

3.0.0-alpha.9 (2019-09-26)

Infrastructure:

  • feat: Refactor and improve our create-module script (#211) @anicholls

Components:

Breaking Changes:

3.0.0-alpha.8 (2019-09-24)

Components:

  • fix(avatar): Add AvatarButton component and convert Avatar into ordinary div (#206) @6r3al

3.0.0-alpha.7 (2019-09-19)

Infrastructure:

Components:

Breaking Changes:

3.0.0-alpha.6 (2019-09-02)

Infrastructure:

  • chore: Fix console warnings in Storybook (#116) @anicholls
  • docs: Update contributing git guidelines to reflect new PR strategy (#109) @anicholls
  • feat: Reduce number of manual steps required after running create-module.sh (#46) @roblevintennis
  • ci: Break out Travis testing to stages (#82) @d-bye
  • fix: Add code-coverage to *.ts files (#148) @NicholasBoll
  • chore: Update commit validation to use commitlint (#124) @Patil2099
  • feat: Add watch support for faster development (#161) @NicholasBoll

Components:

  • fix(button): Update TextButton focus outline for accessibility (#115) @jstin
  • fix(avatar): Update background color when url is defined (#120) @anicholls
  • fix(header): Remove duplicate icon buttons (#122) @anicholls
  • fix(button): Pass buttonRef to IconButton button element (#128) @mannycarrera4
  • fix(menu): Add menu component to universal module (#127) @lychyi
  • fix(layout): Add check for null children (#119) @anicholls
  • fix(page-header): Add missing dependency (#149) @anicholls
  • refactor: Move InputProviderDecorators to Storybook config (#164) @stephanerangaya
  • fix: Change positioning of Checkbox and Radio react components to relative (#160) @stephanerangaya
  • fix(status-indicator): Export type and emphasis enums (#166) @anicholls

Breaking Change:

  • fix: Add missing static variables and fix Popup padding static variable (#110) @anicholls
  • refactor(loading-animation): Deprecate LoadingSpinner (#142) @sahlhoff
  • fix(form-field): Add component prefix to exported enums and interfaces #146 @sahlhoff
  • refactor(page-header): Update marketing and breakpoint props (#143) @sahlhoff

3.0.0-alpha.5 (2019-08-13)

Infrastructure:

  • chore: update lint-staged to v8 (#76) (@Patil2099)

Components:

  • fix(SidePanel): Remove resize event on unmount (#78) (@mannycarrera4)
  • fix(Menu): Allow aria role of menu item to be overridden (#75) (@jayscheidt)
  • fix(TextArea): Align border color to match other inputs (#66) (@neilpelow)
  • fix(Avatar): Change prop spread order to allow for overriding the aria label (#92) (@mannycarrera4)
  • feat(Type): Add styled components for type primitives (#106) (@drschulz)
  • fix(ActionBar): Match css styles to react action bar (#111) (@mannycarrera4)

3.0.0-alpha.4 (2019-08-05)

Infrastructure:

  • fix: Update lodash version to resolve vulnerability (#41)
  • ci(travis): Enable tag publishing and re-enable master storybook (#52)
  • chore: Pull in version bumps from old release branch (#71)
  • build(travis): skip cleanup on npm publish (#79)
  • ci(travis): fix npm publish conditional (#81)

Components:

  • fix(Tooltip): Add missing fontFamily property (#47)
  • fix(Popper): Spread remainder props on wrapper div (#44)
  • feat(menu): Enable MenuItems to skip onClose (#48)
  • fix(header): Header search accessibility & prop spread fixes (#43)
  • fix(SidePanel): remove resize event handler on unmount (#74)

Breaking Changes:

  • refactor(Icon): Move icon-list from core into icon module (#30)
  • refactor(Fonts): Remove @workday/canvas-kit-react-fonts from universal module (#40)