# Breaking Changes in 14.0.0

## Chart, Map

The template syntax with literals and inline expressions is deprecated. Instead, set the [Chart `Template` parameter](https://www.telerik.com/blazor-ui/documentation/components/chart/labels-template-and-format#templates) and [Map `UrlTemplate` parameter](https://www.telerik.com/blazor-ui/documentation/components/map/overview) to the name of a JavaScript function that returns the required content. This change is also related to [CSP compliance](https://www.telerik.com/blazor-ui/documentation/troubleshooting/csp#policy-configuration).

> caption Using Chart templates up to version 13.3.0 and after version 14.0.0

<table>
    <thead><tr>
        <th>UI for Blazor 13.3.0</th>
        <th>UI for Blazor 14.0.0</th>
    </tr></thead>
    <tbody>
        <tr>
<td style="vertical-align:top">

```RAZOR.skip-repl
<ChartValueAxisLabels
    Template="#= value #" />
 
 
 
 
 
 
```

</td>
<td style="vertical-align:top">

```RAZOR.skip-repl
<ChartValueAxisLabels
    Template="chartLabelTemplate" />

<script>
function chartLabelTemplate(context) {
    return context.value;
}
</script>
```

</td>
        </tr>
    </tbody>
</table>

> caption Setting Map URL template up to version 13.3.0 and after version 14.0.0

<table>
    <thead><tr>
        <th>UI for Blazor 13.3.0</th>
        <th>UI for Blazor 14.0.0</th>
    </tr></thead>
    <tbody>
        <tr>
<td style="vertical-align:top">

```RAZOR.skip-repl
<MapLayer UrlTemplate="https://#= subdomain #.tile.openstreetmap.org/#= zoom #/#= x #/#= y #.png" />
 
 
 
 
 
 
```

</td>
<td style="vertical-align:top">

```RAZOR.skip-repl
<MapLayer UrlTemplate="tileUrlFunction" />

<script>
    function tileUrlFunction(context) {
        return `https://${context.subdomain}.tile.openstreetmap.org/${context.zoom}/${context.x}/${context.y}.png`;
    }
</script>
```

</td>
        </tr>
    </tbody>
</table>

## Chat

The `OnLoadMoreMessages` event arguments now contain the full rendered message range, not just the newly requested page.

## Menu

The `MenuHideEvent.Click` value of the Menu's `HideOn` parameter now also causes the child items popup to close, when the user clicks or taps a leaf Menu item.

## PDFViewer

* The PDF.js library used internally by the PDFViewer is updated to version 5.x. If you are using different products that depend on PDF.js, make sure they depend on the same version.
* The `ZoomChanged` callback type changed from `EventCallback<decimal>` to `EventCallback<object>`. Update existing handlers to accept `object`. Casting the argument with `(decimal)newZoom` is safe after the initial render.

## TabStrip

The `ActiveTabIndexChanged` event and the `ActiveTabIndex` parameter are now removed. Use the `ActiveTabId` parameter with the `ActiveTabIdChanged` event instead.

## ThemeColor Changes

The appearance of the components listed below is determined by the active theme style sheet.

### ThemeColor Values

The following values of the `ThemeColor` parameter are removed from the following components:

| Component                                                                                               | Removed ThemeColor values                                                                                   |
| ------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- |
| AppBar                                                                                                  | `Dark`, <br /> `Error`, <br /> `Info`, <br /> `Light`, <br /> `Success`, <br /> `Warning`                   |
| Avatar, <br /> Loader, <br /> LoaderContainer                                                           | `Dark`, <br /> `Error`, <br /> `Info`, <br /> `Inverse`, <br /> `Light`, <br /> `Success`, <br /> `Warning` |
| Badge                                                                                                   | `Dark`, <br /> `Inverse`, <br /> `Light`                                                                    |
| Button, <br /> DropDownButton, <br /> FontIcon, <br /> Notification, <br /> SvgIcon, <br /> SplitButton | `Dark`, <br /> `Light`                                                                                      |

The removed `Dark` and `Light` values have no one-to-one replacements. If the button only needs a supported semantic theme color, choose a value from the current `ThemeColor` options based on the intended action. If the application must preserve the previous visual appearance, use the Button `Class` parameter with custom CSS instead.

### ThemeColor Parameter

The `ThemeColor` parameter is removed from:

* Card. See how to [use the `Class` parameter to apply theme colors to Cards](https://www.telerik.com/blazor-ui/documentation/knowledge-base/card-replace-themecolor-parameter).
* Dialog. See how to [use the `Class` parameter instead](https://www.telerik.com/blazor-ui/documentation/knowledge-base/window-themecolor).
* Window. See how to [use the `Class` parameter instead](https://www.telerik.com/blazor-ui/documentation/knowledge-base/window-themecolor).
* Popup edit settings

### OverlayThemeColor Parameter

`OverlayThemeColor` is removed from the LoaderContainer.

## See Also

* [Rendering changes in Telerik UI for Blazor 14.0.0](https://www.telerik.com/blazor-ui/documentation/upgrade/rendering-changes/14-0-0)
