# Change Log

## 12.34.1

### Patch Changes

- 2eb552f: Improve MultiSelect accessibility:

  - Add `role="combobox"` to the search input with `aria-expanded` and `aria-controls`
  - Add `role="list"` to the selected tokens container with `aria-label="Selected items"`
  - Add `role="listitem"` to each selected token with `aria-label="<label>, selected"`
  - Add `aria-activedescendant` to track focused token during keyboard navigation
  - Add new locale keys: `multiSelect.selectedToken` and `multiSelect.selectedItems`

## 12.34.0

### Minor Changes

- 81dee8f: `TierSelect` Fix empty message not showing when there are no options
  - Add support for dynamic placeholder value in Search field
  - Add possibility for controlled search value

### Patch Changes

- 6df3579: Add warning to add ARIA labels for icon-only buttons
- 769b37e: Add role (img) and aria-label (Folder/File) to Tree icons
- 64384c4: Default `tabAsNavigation` was changed to true to fix keyboard navigation in RichText and TextEditor
- Updated dependencies [fd00049]
  - @procore/core-icons@12.11.1

## 12.33.0

### Minor Changes

- 9481875: Adding in aria invalid logic to Input

## 12.32.0

### Minor Changes

- 9a1d3c4: Add settingsLink prop to ToolLandingPage.Title for client-side routing support while deprecating settingsHref
- c8dad86: Basic Form.RichText textEditorComponent for migration. Will be required in v13.

### Patch Changes

- Updated dependencies [cbc7f68]
- Updated dependencies [8112072]
  - @procore/core-i18n-js@10.30.0
  - @procore/core-icons@12.11.0

## 12.31.0

### Minor Changes

- 129f3d0: Add support for new locales: Italian, Portuguese, Traditional Chinese (Taiwan) and Norwegian (Norway)
- bcd2d3c: Adding in exports for internal template components as `UNSAFE_PageTemplate`
- 83eeb39: Exposed `MenuImperative` as the export, deprecated `UNSAFE_MENU`

### Patch Changes

- c68e49f: Click `DropdownFlyout` when it's open, close it
- 70ca908: Layout Cards like DetailPage.Card refreshes the anchor nav label on navigationLabel prop change
- f95beb2: Add unsafe internal temporary helper exports to support migration to separate TextEditor package.

## 12.30.0

### Minor Changes

- 3f27bb5: SuperSelect fix for "Select All" - auto-selection

### Patch Changes

- ce99170: Avatar size sm and AvatarStack size sm undeprecated
- Updated dependencies [1a41336]
  - @procore/core-icons@12.10.1

## 12.29.0

### Minor Changes

- 5139e79: TextEditor rollback, revert CKEditor (as-if 12.25.2). Keep coreReactJestConfig (optional). **Important Note Do Not Use Core React v12.26.0 - 12.28.1**, multiple loads may break pages.

## 12.28.1

### Patch Changes

- 1050273: SuperSelect move deselect all logic
- Fix selecting list type in Text Editor

## 12.28.0

### Minor Changes

- 819e783: Adds "Select All" as an option in SuperSelect

## 12.27.1

### Patch Changes

- af60183: Add TinyMCE-specific props as no-ops to TextEditor to avoid creating a breaking change.

## 12.27.0

### Minor Changes

- TextEditor is CKEditor only

## 12.26.6

### Patch Changes

- 4d27a6: fix rich text editor list cursor position
- ae8238: fix new line in form rich text
- 67e065: fix/feat NumberInput chains aria-labelledby for prefix and suffix
- add types for coreReactJestConfig

## 12.26.5

### Patch Changes

- Improve performance of multiple TextEditorOutput instances
- Remove empty space under Slider when not using labelled steps

## 12.26.4

### Patch Changes

- 07a97f2: Upgrades `axios` dependency to `^1.12.1`.
- 1379493: Add `prefers-reduced-motion` media query to disable `Loader` animations if needed
- Updated dependencies [07a97f2]
  - @procore/core-icons@12.9.1

## 12.26.3

### Patch Changes

- 4e22eaf: Fix TieredSelect clearing
- 613adb2: Remove TextEditorOutput border
- dbb07ad: Add `type="search"` to the `Search` component

## 12.26.2

### Patch Changes

- be6f23f: Make TextEditorOutput consistent with TextEditor
- 962a686: Fix incorrect disabled attribute usage on Thumbnail
- fb45d1a: Table Checkbox select row aria label
- 13fdc00: Disabled Token disables remove token button

## 12.26.1

### Patch Changes

- 2813b0a: [TextEditor] using prod license key for editor instead of dev key

## 12.26.0

### Minor Changes

- b341ca9: Migration of the TextEditor component from TinyMCE to CKEditor, while providing backward compatibility with the old editor API with tinyMCE prop. See coreReactJestConfig for test setup compatibility.

### Patch Changes

- 7407d2a: Fix Dropdown loading Spinner being clipped
- 8243b84: Fix focus styles for scroll areas

## 12.25.2

### Patch Changes

- 69492f6: Added an appropriate role for Remove buttons in pill component
- 16e7f49: Fix `Modal.Heading` IDs automatically linking to the dialog and scroll region without duplicating `id`
- ecba76f: Fixes closing DropdownFlyout on click outside
- 50649d7: Convert `Token.Remove` component into the button with improved accessibility
- 9e3d226: Use React.HTMLElement helpers directly rather than an internal alias. Remove previous patch exports
- 202fb05: Fix border radius in Popover
- 63ac8fa: Added an accessible role and label to the scrollable regions of the components (Modal, Panel, SplitViewCard, Tearsheet)

## 12.25.1

### Patch Changes

- 0f0f442: Fix Token disabled and focus styles (dont use, bad a11y)
- 6cce20a: Added role and aria-label to GhostPlaceholder
- 0f0f442: Textarea resize prop fix
- 65185fa: Fix isSelected state for batched options and add in isPartiallySelected for checkboxes
- afa6740: Added additional type exports to resolve downstream build errors.
- 0f0f442: fix NumberInput incrementor dom errors. rollback input type

## 12.25.0

### Minor Changes

- f8cae7a: Updated NextTile with accessibility changes and added documentation. Updated styles for Tile to better work as "checkbox" Tiles

### Patch Changes

- 09b7763: Add the `combobox` role to the combobox for selecting a page inside the `Pagination` component
- e92ba95: Fix: SegmentController selected state for initially selected Segments
- d996121: Bump cdn-translations version

## 12.24.0

### Minor Changes

- dd0bc0e: Added `role="menu"` to Menu and `role="menuitem"` to MenuItems
  - Adding ability to track aria-expanded to OverlayTrigger onto target element for a11y concerns
  - Using trackAriaExpanded and role for Panel action overflow

### Patch Changes

- ee3d968: Improved accessibility for `NumberInput` with incrementor role spinbutton
- bf08560: Improved accessibility for `Spinner` with adding aria-label
- Fix missing footer on UNSAFE_SuperSelect

## 12.23.0

### Minor Changes

- 5848cca: Update I18nProviders to have the option to pull translations from the CDN package cdn-translations with `enableCDN` prop or context inheritance

### Patch Changes

- e14e204: There is a fix for inconvenient disappears after releasing the mouse outside of the popover component
- dfaab43: Added some aria to Contact Item and updated documentation
- Updated dependencies [fac7a44]
- Updated dependencies [b091686]
  - @procore/core-icons@12.8.0

## 12.22.0

### Minor Changes

- 76650bc: Support Styled Components v6. Prefixed styled-component props with `$` to resolve warnings on transient props.

## 12.21.2

### Patch Changes

- 632ce8a: Title to subheading spacing increased by 4, toggle button has consistent spacing in page header
- a9ac0ff: Yarn 4 migration
- Updated dependencies [a9ac0ff]
  - @procore/core-icons@12.6.1

## 12.21.1

### Patch Changes

- a923d1b: Un-deprecate `disabled` prop for the Search component
- 2cb1890: fix `NumberInput` typing issue

## 12.21.0

### Minor Changes

- ee16a7f: RadioButton error adds aria-invalid

### Patch Changes

- ce06a5b: Add description of `useSplitViewCard` hook in `SplitViewCard`
  Export `useSplitViewCard` to control opening/closing `SplitViewCard`

## 12.20.4

### Patch Changes

- Updated dependencies [1172b23]
  - @procore/core-icons@12.6.0

## 12.20.3

### Patch Changes

- 28a8cec: Added type overload to useI18nContext for non generic cases
- Updated dependencies [8ca5a1d]
  - @procore/core-icons@12.5.0

## 12.20.2

### Patch Changes

- dcf6db1: Fix `TieredDropdown` search state now clears on blur
- 39489bf: Fix for the second argument of `translate()` and `t()` to be optional when the string is not pluralized or interpolated
- Updated dependencies [ac240cb]
  - @procore/core-icons@12.4.0

## 12.20.1

### Patch Changes

- 3b03f2c: non-selectable items in the `Tree` are now styled to appear visually disabled
- 6b4152c: Update `ToolLandingPage` settings link colors to be a secondary button
- 6b4152c: Fixed typed `useI18nContext` to properly handle pluralized translations.

## 12.20.0

### Minor Changes

- 12df818: Added generic type parameter for `useI18nContext` to enable strong typing of translation parameters

### Non SemVer Changes

- Unsafe limited release alpha PageHeaderTemplate

## 12.19.0

### Minor Changes

- a7648b2: `Dropzone` component deprecates `tooltip` property, add `tokens` and `onClear` props for displaying files

### Patch Changes

- Updated dependencies [4fccfec]
  - @procore/core-i18n-js@10.29.3

## 12.18.1

### Patch Changes

- a34bc6a: Upgrades `@tinymce/tinymce-react`, removes `tinymce` as a dependency
- 789f671: Fix typo in translation key name.

## 12.18.0

### Minor Changes

- d167d90: [UXI-1088] Remove `react-beautiful-dnd` peerDependency requirement. Migration to and internalizes `@atlaskit/pragmatic-drag-and-drop`
- abb108e: Introduce `TextInput`component instead to replace `Input`, planning to deprecate `Input` component

### Patch Changes

- cb84286: Fixed `Spinner` to disable animations when `loading` is false.
- c447ddc: Tinymce to 6.8.5

## 12.17.8

### Patch Changes

- 53110d4: Deprecate `compact` property, add `isHorizontal` and `size` properties to EmptyState component

## 12.17.7

### Patch Changes

- 5cadbc9: Add default icon to Banner componet depending on variant
- 98780c8: Deprecate `iconRight` property and `tertiaryContrast` variant for Button. Decouple FilterToken component from Button

## 12.17.6

### Patch Changes

- 864ac9d: Update dependency package versions

## 12.17.5

### Patch Changes

- b19e0a0f42: Fix `isTierDisabled` in `TieredSelect` component with selectable tiers
- c33b95d3b0: `SegmentedController.Segment` `selected` instead of `active`, deprecate `active`
- c861e39b23: Deprecate `active` prop in `Tabs` component, replaced by the `selected` prop
- b6784bf2bc: `Spinner` `variant` instead of `color`, add new variants
  - Hide label on small sizes (`xs`, `sm`).
  - Deprecate `color` property.
  - Un-deprecate `variant` property, add `default`, `button` and `focus` variants
- caacaa17b5: Deprecate `traditional` `variant` for `Form` field layouts

## 12.17.4

### Patch Changes

- 3f23de248: Deprecate `gray` variant from Link component
- cce0b1f41: Axios package bump for security

## 12.17.3

### Patch Changes

- fe7e10cbe: Deprecate `sm` size in Avatar component
- 1d8188268: Tearsheet deprecate `placement` and `stretch`, add `block` property as a drop-in replacement for `stretch`
- 340e07485: Deprecate `size` `sm` in AvatarStack component
- 72cca9636: Popover deprecate `fluid` property, add `block` property as a drop-in replacement

## 12.17.2

### Patch Changes

- 844a38816d: Updated the file upload error messages to display the file's relative path.
- 144ef26610: Deprecate `disabled` and `error` props for the Search component
- d6f8cdd9cd: Fix some accessibility a11y warnings
- 33607f479c: Update Dropzone error messaging.

## 12.17.1

### Patch Changes

- 59ce2207fa: Improve messaging for blocking zero byte uploads in Dropzone component.
- Updated dependencies [fd00589dce]
- Updated dependencies
  - @procore/core-icons@12.3.0

## 12.17.0

### Minor Changes

- bbaaa149de: Removed text transform from the Spinner label

### Patch Changes

- e6cff39e8e: Fix invalid html attributes for Typography and Tabs, use styled-components transient prefix $
- fe5abed75a: Added animationFrame: true to autoUpdate to prevent ResizeObserver bug in @floating-ui

## 12.16.2

### Patch Changes

- 221c980472: Removed unnecessary re-renders for TextEditor by memoize the focusScope for the useEffect to avoid over-triggering.
- 758409d4d0: Add data-core-react attribute for tracking NextGen Layouts utilization

## 12.16.1

### Patch Changes

- 09eb576e78: Focus can leave a Modal or Tearsheet when the TinyMCE TextEditor has a plugin enabled that opens its own TinyMCE modal

## 12.16.0

### Minor Changes

- cb9ef0cf13: disable buttons during the closing transitions of the modal and tearsheets components.

### Patch Changes

- 5633033fec: Dropped core-css and scss in GroupBySelect
- d50705608f: [UXI-885] Updating colors for the animated progress bar

## 12.15.0

### Minor Changes

- 4e51fffd2: Add header prop to Select component

## 12.14.0

### Minor Changes

- e660ed1ce: Adding option renderer props to the Form.Select and MultiSelect types so they can be used without error by the consumer
- 85403fc79: Updating dependencies

### Patch Changes

- 081ac7922: fix React warning with Spinner and EmptyState for invalid attributes from styled-components
- d1e891702: EmptyState's description using `body` instead of `h3`

## 12.13.0

### Minor Changes

- 23cdefdd1a: Updating ToggleButton styles, adding loading prop
- 2718e17f50: Added size sm to Avatar and AvatarStack

## 12.12.1

### Patch Changes

- d6e90a75c: Fix placeholder for de-DE in DateInput component
- aeac00464: Fix issue with resetting ungrouped/grouped columns (UISP-215)[UISP-215 https://procoretech.atlassian.net/browse/UISP-215]

## 12.12.0

### Minor Changes

- ce4c89f36: Add onClickViewAll prop to AvatarStack
- b973bf06d: Thumbnail Placeholder variant file
- 2a9c4441d: Improve accessibility to dropdownflyout component which is used in data-table component
- 36ae9f382: update required label capitalization

### Patch Changes

- ba1a46661: Panel Footer show shadow only while scrolling

## 12.11.1

### Patch Changes

- 14551f2c3: Fixed passing a deprecated locale and its translations to I18nProvider was resulting in showing no translations

## 12.11.0

### Minor Changes

- b034c8b7e7: Introducing GhostPlaceholder
- 977a03d2e3: Allow to change the strategy for restoring focus in OverlayTrigger. This fixes closing Select by Tab button.

### Patch Changes

- Updated dependencies [9e378e94cf]
  - @procore/core-icons@12.2.0

## 12.10.0

### Minor Changes

- 6df512a30: - Add Polish support
  - Mark Locale type as deprecated
  - Mark getI18nProviderLocale as deprecated
- 6c2153dea: Changes have been made in the translation for Page keyword in pagination to include the colon along with the translation.
- 76a28038d: Panel Header Action improve screen reader and keyboard support with aria-label and focus trigger

### Patch Changes

- ae429cddb: SplitViewCard no outer spacing on mobile
- Updated dependencies [8c613f543]
  - @procore/core-i18n-js@10.29.0

## 12.9.0

### Minor Changes

- f4bba2564d: Add ToolLandingPage layout and deprecate the ListPage layout
- 2385ee3dc2: Add SplitViewCard component
- e72d0229e4: Add unsafe button variant for helix header

### Patch Changes

- c82363b770: Detail Page Body and Detail Page Card reduce leading space between

## 12.8.1

### Patch Changes

- f238516964: fix internal tab styles for helix header

## 12.8.0

### Minor Changes

- 77ab117fd4: Added `StyledFormFieldMain` export related to Form
- b9bbcf6427: Added internal prop to Modal parts to enable mobile breakpoint responsiveness for Helix Header use. Not intended for widespread use. (`compact`)
- a7bb749cf8: Added internal prop for Tab styles to be used for global navigation. Not intended for widespread use. (`UNSAFE_helixHeader`)

## 12.7.0

### Minor Changes

- d62b76bd8: tinymce strikethrough text formatting

### Patch Changes

- 2ab36a650: Add max_height property to TextEditorOutput component
- 55fed6084: Added `SpanAttributes` type export to fix `styled-components` type error.
- a5daf2815: Add export for Tier
- Updated dependencies [716e98717]
  - @procore/core-icons@12.1.0

## 12.6.0

### Minor Changes

- 77396f11c: Add TinyMCE advlist plugin to default plugins for more bullet and counter styles

## 12.5.0

### Minor Changes

- 898ad719e: Add support for multiple fallbacks on the i18nProvider

### Patch Changes

- 58d7677bf: Add export for DivAttributes

## 12.4.2

### Patch Changes

- 74dc723988: Extend MenuItemProps with AnchorItemProps

## 12.4.1

### Patch Changes

- ecc17b836: Added missing exports that were excluded after removing dist imports

## 12.4.0

### Minor Changes

- c3b8bc91c0: Add anchor navigation to DetailPage and SettingsPage layouts

### Patch Changes

- b832463cbe: TextArea allows rows for larger than min-height default sizes (removes fixed height)
- 6c63b2cf22: Added `UNSAFE_EmptyStateSvg` export from `EmptyState`.
- 6c63b2cf22: Added `UNSAFE_ThumbnailDocumentIcon` export from `Thumbnail`.
- 1ba4e0af1c: Add exports for celi-select package dependencies
- 004a11a69c: Added `UNSAFE_TreeChevron`, `UNSAFE_TreeChevronContainer`, `UNSAFE_TreeFilenameCaption`, `UNSAFE_TreeIconContainer`, `UNSAFE_TreeRowContainer`, and `UNSAFE_TreeRowContent` export from the `Tree` component.

## 12.3.0

### Minor Changes

- 9f36515057: Add SettingsPage layout
- d378956ad7: Adds exports for TinyMCE

## 12.2.0

### Minor Changes

- 952834a3c0: Add exports intended for json-formulator v12 support

### Patch Changes

- 2614939306: Update label typography font weight from 700 to 600

## 12.1.0

### Minor Changes

- d159f925da: Add missed exports of Dropzone for file-select library internal development

## 12.0.0 (2024-05-28)

### Major Changes

See [v12 migration guide](https://core.procore.com/latest/web/releases/migration-guides/core-react/v11-to-v12/) for the full list of changes and migration guides.

General changes:

- Imports from `dist` folder do not work anymore.
- `@procore/globalization-toolkit` is moved from dependencies to required peerDependencies.
- `react-beautiful-dnd` is moved from dependencies to required peerDependencies.
- `formik` peerDependency is now optional. Necessary when using `Form` components and hooks.
- resize observer polyfill remove

Other changes:

- `NumberInput` no longer uses the `locale` as prop from the component.
- `Page` and `DetailPage` subcomponent padding refactor.
- Removed deprecated components, hooks, and contexts:
  - `SuccessBanner`
  - `Sidebar`, `Sidebar.*`
  - `Analytics`, `AnalyticsContext`, `AnalyticsProvider`, etc
  - `AnchorContext`, `AnchorProvider`, `useAnchorContext`, etc
  - `Autofocus`, `useAutofocus`
  - `BoundingRectContext`, `useBoundingRectContext`, `useBoundingRect`, etc
  - `BufferContext`, `useBufferContext`, etc
  - `Event`, `EventProvider`, `useEvent`, `useEventContext` etc
  - `InjectedScriptContext`, `InjectedScriptProvider`, `useInjectedScriptContext`, etc
  - `ListNavigationContext`, `ListNavigationProvider`, `useListNavigationContext`, etc
  - `ResizeObserver`
  - `TextEntryContext`, `TextEntryProvider`, `useTextEntryContext`, etc
  - `TimerContext`, `TimerProvider`, `useTimerContext`, etc
  - `TriggerContext`, `TriggerProvider`, `useTriggerContext`, etc
  - `VisibilityContext`, `VisibilityProvider`, `useVisibilityContext`, etc
