Skip to content

Commit

Permalink
Merge future-promises-2330 into production (#2335)
Browse files Browse the repository at this point in the history
* docs(common): Remove promises for the future

* Update knowledge-base/requires-valueexpression.md

Co-authored-by: Iva Stefanova Koevska-Atanasova <[email protected]>

* Update upgrade/overview.md

Co-authored-by: Iva Stefanova Koevska-Atanasova <[email protected]>

* Update form-chrome-autofill.md

* Update overview.md

---------

Co-authored-by: Dimo Dimov <[email protected]>
Co-authored-by: Iva Stefanova Koevska-Atanasova <[email protected]>
  • Loading branch information
3 people authored Aug 9, 2024
1 parent bc31823 commit 131856c
Show file tree
Hide file tree
Showing 33 changed files with 69 additions and 108 deletions.
2 changes: 1 addition & 1 deletion _contentTemplates/common/dropdowns-virtualization.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ the component will call this method to request the model that matches the `Value

#limitations
* When the initially selected item/items are on a page different than the first one, opening the dropdown list will NOT scroll the list to the selected item.
* When virtualization is enabled, the component calculates the position of the items. In this case, the loading indicators are not displayed as they would affect the proper item positioning. This limitation will be removed in a future version of UI for Blazor.
* When virtualization is enabled, the component calculates the position of the items. In this case, the loading indicators are not displayed as they would affect the proper item positioning.
#end

#remote-data-sample-intro
Expand Down
67 changes: 23 additions & 44 deletions _contentTemplates/treelist/state.md
Original file line number Diff line number Diff line change
Expand Up @@ -554,9 +554,7 @@

#get-column-state-from-code

@* Click the button, reorder some columns, maybe lock one of them, hide another, and click the button again to see how the state changes but the order of the columns in the state collection remains the same. This example also shows a workaround for getting the Field of the column that will be availale in a future release as part of the column state. *@

@using Telerik.DataSource;
@* Click the button, reorder some columns, maybe lock one of them, hide another, and click the button again to see how the state changes but the order of the columns in the state collection remains the same. *@

<TelerikButton OnClick="@GetColumnsFromState">Get the state of the Columns</TelerikButton>

Expand All @@ -580,64 +578,36 @@
</TelerikTreeList>

@code {
public TelerikTreeList<Employee> TreeListRef { get; set; } = new TelerikTreeList<Employee>();

//part of workaround for getting the field too
public List<string> ColumnFields => new List<string>
{
nameof(Employee.Name),
nameof(Employee.Id),
nameof(Employee.EmailAddress),
nameof(Employee.HireDate)
};
public string Logger { get; set; } = String.Empty;

public async Task GetColumnsFromState()
private TelerikTreeList<Employee>? TreeListRef { get; set; }

private string Logger { get; set; } = String.Empty;

private List<Employee> Data { get; set; } = new();

private void GetColumnsFromState()
{
// final part of the workaround for getting the field
var columnsState = TreeListRef.GetState().ColumnStates;
var columnsState = TreeListRef!.GetState().ColumnStates;

int index = 0;

foreach (var item in columnsState)
{
string columnField = ColumnFields[index];

bool isVisible = item.Visible != false;

string log = $"<p>Column: <strong>{columnField}</strong> | Index in TreeList: {item.Index} | Index in state: {index} | Visible: {isVisible} | Locked: {item.Locked}</p>";
string log = $"<p>Column: <strong>{item.Field}</strong> | Index in TreeList: {item.Index} | Index in state: {index} | Visible: {isVisible} | Locked: {item.Locked}</p>";
Logger += log;
index++;
}
}

public List<Employee> Data { get; set; }

// sample model

public class Employee
protected override void OnInitialized()
{
// hierarchical data collections
public List<Employee> DirectReports { get; set; }

// data fields for display
public int Id { get; set; }
public string Name { get; set; }
public string EmailAddress { get; set; }
public DateTime HireDate { get; set; }
Data = GetTreeListData();
}

// data generation

// used in this example for data generation and retrieval for CUD operations on the current view-model data
public int LastId { get; set; } = 1;

protected override async Task OnInitializedAsync()
{
Data = await GetTreeListData();
}

async Task<List<Employee>> GetTreeListData()
private List<Employee> GetTreeListData()
{
List<Employee> data = new List<Employee>();

Expand Down Expand Up @@ -684,7 +654,16 @@
}
}

return await Task.FromResult(data);
return data;
}

public class Employee
{
public int Id { get; set; }
public string Name { get; set; } = string.Empty;
public string EmailAddress { get; set; } = string.Empty;
public DateTime HireDate { get; set; }
public List<Employee>? DirectReports { get; set; }
}
}
#end
Expand Down
9 changes: 3 additions & 6 deletions common-features/data-binding/observable-data.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ In this article:
* [Observable data](#observable-data)
* [Refresh Data](#refresh-data)
* [Telerik components that support Observable Data](#telerik-components-that-support-observable-data)
* [Telerik components that will support Observable Data in a future release](#telerik-components-that-will-support-observable-data-in-a-future-release)

## Observable Data

Expand Down Expand Up @@ -52,9 +51,7 @@ The following components support observable data for their `Data` parameter. Not
* [TreeView]({%slug treeview-refresh-data%})


## Telerik components that will support Observable Data in a future release

The following components will receive this feature in a future release. You can currently refresh their Data by creating a [New collection reference](#refresh-data).
You can refresh other components that do not support observable data by creating a [New collection reference](#refresh-data).

* [Scheduler]({%slug scheduler-refresh-data%})

Expand All @@ -67,5 +64,5 @@ The following components will receive this feature in a future release. You can

## See Also

* [INotifyCollectionChanged Interface](https://docs.microsoft.com/en-us/dotnet/api/system.collections.specialized.inotifycollectionchanged?view=netframework-4.8)
* [Live Demos](https://demos.telerik.com/blazor-ui/)
* [INotifyCollectionChanged Interface](https://docs.microsoft.com/en-us/dotnet/api/system.collections.specialized.inotifycollectionchanged?view=netframework-4.8)
* [Live Demos](https://demos.telerik.com/blazor-ui/)
2 changes: 0 additions & 2 deletions components/autocomplete/grouping.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,8 +67,6 @@ The group headers can stick to the top of the dropdown during scrolling. In othe

* One level of grouping is supported.
* A grouped AutoComplete will provide a `Groups` property with a single [`GroupDescriptor`](/blazor-ui/api/Telerik.DataSource.GroupDescriptor) in the [`DataSourceRequest`](/blazor-ui/api/Telerik.DataSource.DataSourceRequest) argument of its [OnRead event]({%slug autocomplete-events%}#onread). This will allow the developer to apply grouping with [manual data operations]({%slug components/grid/manual-operations%}).
* `GroupHeaderTemplate` and `GroupItemTemplate` will be introduced in a future version. Currently there is a bug in the Blazor framework that prevents us from supporting them.
* Virtual scrolling with grouping will be supported in a future version.

## See Also

Expand Down
2 changes: 0 additions & 2 deletions components/combobox/grouping.md
Original file line number Diff line number Diff line change
Expand Up @@ -68,8 +68,6 @@ The group headers can stick to the top of the dropdown during scrolling. In othe

* One level of grouping is supported.
* A grouped ComboBox will provide a `Groups` property with a single [`GroupDescriptor`](/blazor-ui/api/Telerik.DataSource.GroupDescriptor) in the [`DataSourceRequest`](/blazor-ui/api/Telerik.DataSource.DataSourceRequest) argument of its [OnRead event]({%slug components/combobox/events%}#onread). This will allow the developer to apply grouping with [manual data operations]({%slug components/grid/manual-operations%}).
* `GroupHeaderTemplate` and `GroupItemTemplate` will be introduced in a future version. Currently there is a bug in the Blazor framework that prevents us from supporting them.
* Virtual scrolling with grouping will be supported in a future version.

## See Also

Expand Down
2 changes: 1 addition & 1 deletion components/contextmenu/refresh-data.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ In this article:

## Observable Data

>note The Context Menu will receive this feature in a future release. You can currently refresh its Data by creating a [New collection reference](#new-collection-reference).
>note The Context Menu does not support binding to observable data. You can currently refresh the component by creating a [new collection reference](#new-collection-reference).
@[template](/_contentTemplates/common/observable-data.md#observable-data)

Expand Down
2 changes: 1 addition & 1 deletion components/drawer/refresh-data.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ In this article:

## Observable Data

>note The Drawer will receive this feature in a future release. You can currently refresh its Data by creating a [New collection reference](#new-collection-reference).
>note The Drawer does not support binding to observable data. You can currently refresh the component by creating a [new collection reference](#new-collection-reference).
@[template](/_contentTemplates/common/observable-data.md#observable-data)

Expand Down
2 changes: 0 additions & 2 deletions components/dropdownlist/grouping.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,8 +69,6 @@ The group headers can stick to the top of the dropdown during scrolling. In othe
* One level of grouping is supported.
* The `DefaultText` (e.g. "Select item...") is always rendered above the sticky group header in the dropdown.
* A grouped DropDownList will provide a `Groups` property with a single [`GroupDescriptor`](/blazor-ui/api/Telerik.DataSource.GroupDescriptor) in the [`DataSourceRequest`](/blazor-ui/api/Telerik.DataSource.DataSourceRequest) argument of its [OnRead event]({%slug components/dropdownlist/events%}#onread). This will allow the developer to apply grouping with [manual data operations]({%slug components/grid/manual-operations%}).
* `GroupHeaderTemplate` and `GroupItemTemplate` will be introduced in a future version. Currently there is a bug in the Blazor framework that prevents us from supporting them.
* Virtual scrolling with grouping will be supported in a future version.

## See Also

Expand Down
2 changes: 1 addition & 1 deletion components/gantt/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -184,7 +184,7 @@ The Blazor Gantt component exposes templates for customizing the [Timeline]({%sl

## Toolbar

The Blazor Gantt component has a dedicated toolbar for defining user actions. For the moment, they are mostly custom actions, but in future versions you will be able to add features like exporting there.
The Blazor Gantt component has a dedicated toolbar for defining user actions.

## Scrolling

Expand Down
2 changes: 1 addition & 1 deletion components/grid/export/pdf.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,4 @@ The following sample projects show two ways to implement a PDF export
* <a href="https://github.com/telerik/blazor-ui/tree/master/common/pdf-jpg-export-js" target="_blank">PDF and JPG Export in the Browser with JS</a> - uses Kendo JS libraries to generate the PDF file from the current DOM in the browser.


In the future, there will be a built-in feature in the grid for this so you don't have to generate the file on your own. You can Follow it <a href="https://feedback.telerik.com/blazor/1434269-export-grid-to-pdf" target="_blank">here</a>. At the moment, the WebAssembly scenario is too slow for us to release it, mainly due to the missing <a href="https://github.com/dotnet/aspnetcore/issues/17730" target="_blank">multithreading</a> and <a href="https://github.com/dotnet/aspnetcore/issues/5466" target="_blank">AoT support</a> for Blazor, and <a href="https://github.com/mono/mono/issues/10222" target="_blank">full AoT for Mono</a>.
You can also follow the feature request for <a href="https://feedback.telerik.com/blazor/1434269-export-grid-to-pdf" target="_blank">built-in Grid export to PDF</a>.
4 changes: 1 addition & 3 deletions components/grid/filter/checkboxlist.md
Original file line number Diff line number Diff line change
Expand Up @@ -198,9 +198,7 @@ depending on how you filter the data so you may never be able to get back all va
});
}
// get custom filters data. In a future version you will be able to call these methods
// from the template initialization instead of here (or in OnRead) so that they fetch data
// only when the user actually needs filter values, instead of always - that could improve server performance
// Get custom filters data.
await GetTeamOptions();
await GetNameOptions();
}
Expand Down
2 changes: 1 addition & 1 deletion components/listview/paging.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ The ListView exposes three relevant events. You can find related examples in the
>tip You can optimize database queries in two ways:
>
> * Use an `IQueryable<MyModel>` collection for the listview `Data`. The listview will build a LINQ expression internally that will be resolved only when needed. This can be useful when the `Data` comes from something like an EntityFramework context.
> * Implement [manual data source operations]({%slug listview-manual-operations%}) and implement the desired query yourself. In a future version, the `DataSourceRequest` object will become serializable so you can send it directly over HTTP to a controller and use the LINQ queries it will build for you.
> * Bind the ListView with an [`OnRead` handler]({%slug common-features-data-binding-onread%}) and implement [manual data source operations]({%slug listview-manual-operations%}).
## Pager Settings

Expand Down
2 changes: 1 addition & 1 deletion components/menu/refresh-data.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ In this article:

## Observable Data

>note The Menu will receive this feature in a future release. You can currently refresh its Data by creating a [New collection reference](#new-collection-reference).
>note The Menu does not support binding to observable data. You can currently refresh the component by creating a [new collection reference](#new-collection-reference).
@[template](/_contentTemplates/common/observable-data.md#observable-data)

Expand Down
2 changes: 0 additions & 2 deletions components/multicolumncombobox/grouping.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,8 +79,6 @@ The group headers stick to the top of the dropdown during scrolling. In other wo
* One level of grouping is supported.
* The `Placeholder` (e.g. "Select item...") is always rendered above the sticky group header in the dropdown.
* A grouped MultiColumnComboBox will provide a `Groups` property with a single [`GroupDescriptor`](/blazor-ui/api/Telerik.DataSource.GroupDescriptor) in the [`DataSourceRequest`](/blazor-ui/api/Telerik.DataSource.DataSourceRequest) argument of its [OnRead event]({%slug multicolumncombobox-events%}#onread). This will allow the developer to apply grouping with [manual data operations]({%slug common-features-data-binding-onread%}).
* `GroupHeaderTemplate` and `GroupItemTemplate` will be introduced in a future version. Currently there is a bug in the Blazor framework that prevents us from supporting them.
* Virtual scrolling with grouping will be supported in a future version.

## See Also

Expand Down
2 changes: 0 additions & 2 deletions components/multiselect/grouping.md
Original file line number Diff line number Diff line change
Expand Up @@ -68,8 +68,6 @@ The group headers can stick to the top of the dropdown during scrolling. In othe

* One level of grouping is supported.
* A grouped MultiSelect will provide a `Groups` property with a single [`GroupDescriptor`](/blazor-ui/api/Telerik.DataSource.GroupDescriptor) in the [`DataSourceRequest`](/blazor-ui/api/Telerik.DataSource.DataSourceRequest) argument of its [OnRead event]({%slug multiselect-events%}#onread). This will allow the developer to apply grouping with [manual data operations]({%slug components/grid/manual-operations%}).
* `GroupHeaderTemplate` and `GroupItemTemplate` will be introduced in a future version. Currently there is a bug in the Blazor framework that prevents us from supporting them.
* Virtual scrolling with grouping will be supported in a future version.

## See Also

Expand Down
2 changes: 1 addition & 1 deletion components/scheduler/refresh-data.md
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,7 @@ You can refresh the Scheduler data by using the Rebind method exposed to the ref

## Observable Data

>note The Scheduler will receive this feature in a future release. You can currently refresh its Data by creating a [New collection reference](#new-collection-reference).
>note Refresh the Scheduler data by creating a [New collection reference](#new-collection-reference).
@[template](/_contentTemplates/common/observable-data.md#observable-data)

Expand Down
2 changes: 1 addition & 1 deletion components/textarea/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ The Blazor TextArea provides various parameters to configure the component:
| ----------- | ----------- | ----------- |
| `AutoCapitalize` | `string` | A `string` that maps to the [`autocapitalize`](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/autocapitalize) attribute of the HTML element. It's applicable only for touch devices and virtual keyboards. |
| `AutoComplete` | `bool` | Maps to the autocomplete attribute of the HTML `<textarea>`. |
| `AutoSize` | `bool` | Specifies if the TextArea will adjust its height based on the user input. You can [use CSS to limit the resizing up to a max height]({%slug textarea-kb-autosize-max-height%}). This parameter will be deprecated in a future version. Use `ResizeMode` with `Auto` value instead. |
| `AutoSize` <br /> (deprecated) | `bool` | Specifies if the TextArea will adjust its height based on the user input. You can [use CSS to limit the resizing up to a max height]({%slug textarea-kb-autosize-max-height%}). This parameter is deprecated. Use `ResizeMode` with `Auto` value instead. |
| `ResizeMode` | `TextAreaResizeMode?` | Specifies the TextArea's resize behavior. Default behavior is the one set by the browser. |
| `Class` | `string` | The custom CSS class to be rendered on the `<span class="k-textarea">` element. |
| `Cols` | `int?` | Maps to the `cols` attribute of the HTML `<textarea>` element. Do not use together with `Width`.
Expand Down
4 changes: 1 addition & 3 deletions components/treelist/filter/checkboxlist.md
Original file line number Diff line number Diff line change
Expand Up @@ -176,9 +176,7 @@ In this sample the Team column lets you filter only by the CEO Team settings, or
{
Data = await GetTreeListData();
// get custom filters data. In a future version you will be able to call these methods
// from the template initialization instead of here so that they fetch data
// only when the user actually needs filter values, instead of always - that could improve server performance
// Get custom filters data.
await GetTeamNameOptions();
}
Expand Down
5 changes: 3 additions & 2 deletions knowledge-base/animationcontainer-close-on-outside-click.md
Original file line number Diff line number Diff line change
Expand Up @@ -106,10 +106,11 @@ To achieve the desired scenario:

* If the AnimationContainer is opened as a result of a button click, consider this in the opening and closing logic. The above example uses a `bool` flag for the AnimatioContainer state.
* All Telerik Blazor popup and drop-down components are rendered at the root of the app, and not at the place of declaration. For example, if the AnimationContainer contains a ComboBox, its drop-down will render outside the AnimationContainer. This behavior affects the check in [step 3](#solution) above. To distinguish it, use [another Class for the nested popup]({%slug components/combobox/overview%}#popup-settings).
* The AnimationContainer must reside outside elements with an `overflow` style. Otherwise, it may be clipped or overlapped by other scrollable containers. This limitation will not exist for the [future Popup component](https://feedback.telerik.com/blazor/1506370-dropdown-container-popup-component-tied-to-an-anchor-for-positioning).
* The AnimationContainer must reside outside elements with an `overflow` style. Otherwise, it may be clipped or overlapped by other scrollable containers. This limitation does not exist in the [Popup component]({%slug popup-overview%}).


## See Also

* [AnimationContainer Documentation]({%slug components/animationcontainer/overview%})
* [Telerik UI for Blazor Popup Feature Request Tracking](https://feedback.telerik.com/blazor/1506370-dropdown-container-popup-component-tied-to-an-anchor-for-positioning)
* [Popup Documentation]({%slug popup-overview%})
* [Comparison between All Popup Components]({%slug common-kb-popup-component-comparison%})
2 changes: 1 addition & 1 deletion knowledge-base/common-animations-decrease.md
Original file line number Diff line number Diff line change
Expand Up @@ -105,4 +105,4 @@ You can also wrap the custom CSS in a `@media` query to capture users who have c

## Notes

A setting might be exposed at component level for this in the future. You can track its status at [Modify default values of animations](https://feedback.telerik.com/blazor/1469662-way-to-modify-default-values-of-animations-such-as-duration-and-delay-for-a-component-such-as-combobox).
A setting might be exposed at component level for this. Follow the feature request about [setting animation speed on popups](https://feedback.telerik.com/blazor/1586639-set-default-animation-speed-on-popups).
2 changes: 1 addition & 1 deletion knowledge-base/common-theme-customization-options.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ Generally, there are **four** ways to customize the appearance of the Telerik Bl

To change the sizing and layout of most or all our components, go for manual theme build. For minor adjustments here and there, consider overrides only.

The final decision depends on what and how much you need to customize and what future requirements may appear.
The final decision depends on what and how much you need to customize and what other requirements may appear.

[**Figma UI Kits**](https://www.telerik.com/figma-kits) allow designers to include visual representations of the Telerik components in their application designs. Custom kits still [require you to create a custom theme afterwards]({%slug ui-kits/themes%}#choosing-how-to-use-the-ui-kits).

Expand Down
Loading

0 comments on commit 131856c

Please sign in to comment.