Skip to content

Commit 45b367a

Browse files
authored
Merge branch 'master' into licensing
2 parents cbb2dcc + 7d3c046 commit 45b367a

File tree

198 files changed

+1850
-822
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

198 files changed

+1850
-822
lines changed

.github/workflows/build_docs.yml

Lines changed: 196 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,196 @@
1+
name: Docs Build
2+
3+
on:
4+
workflow_call:
5+
6+
permissions:
7+
id-token: write # Required by Akeyless
8+
contents: write
9+
packages: read
10+
11+
jobs:
12+
build_blazor:
13+
runs-on: ubuntu-22.04
14+
15+
container:
16+
image: ghcr.io/telerik/blazor-build:dev
17+
credentials:
18+
username: ${{ github.actor }}
19+
password: ${{ github.token }}
20+
options: --user 1001 --shm-size="8g"
21+
22+
env:
23+
DOTNET_CLI_TELEMETRY_OPTOUT: true
24+
DOTNET_INSTALL_DIR: ./.dotnet
25+
SSL_CERT_FILE: /etc/ssl/certs/ca-certificates.crt
26+
27+
defaults:
28+
run:
29+
# Use a login Bash shell to enable RVM
30+
shell: bash -leo pipefail {0}
31+
32+
steps:
33+
- name: Import Secrets
34+
id: import-secrets
35+
uses: LanceMcCarthy/akeyless-action@v3
36+
with:
37+
access-id: ${{ secrets.GH_AKEYLESS_ACCESS_ID }}
38+
static-secrets: |
39+
{
40+
"/WebComponents/prod/tokens/GH_TOKEN": "GH_TOKEN"
41+
}
42+
export-secrets-to-environment: false
43+
44+
- name: Clone Blazor Repository
45+
uses: actions/checkout@v4
46+
with:
47+
repository: telerik/blazor
48+
path: temp/blazor
49+
fetch-depth: "0"
50+
ref: master
51+
52+
- name: Setup .NET
53+
uses: actions/setup-dotnet@v4
54+
with:
55+
dotnet-version: "6.x.x"
56+
57+
- name: Setup Telerik Nuget Feeds
58+
uses: telerik/actions/setup-telerik-nuget-feeds@master
59+
with:
60+
ak-vault-token: ${{ secrets.AK_VAULT_TOKEN_PACKAGE_READER }}
61+
62+
- name: Pack Telerik.Blazor and copy docs API needed resources
63+
run: |
64+
mkdir -p BinAndXml
65+
dotnet pack blazor/Telerik.Blazor/Telerik.Blazor.csproj --configuration Release -p:IsTrial='false'
66+
cp blazor/Telerik.Blazor/bin/Release/net6.0/Telerik.Blazor.dll BinAndXml
67+
cp blazor/Telerik.Blazor/bin/Release/net6.0/Telerik.Blazor.xml BinAndXml
68+
ls BinAndXml
69+
working-directory: temp
70+
71+
- name: Get DataSource bin and xml files
72+
uses: telerik/actions/get-release-assets@master
73+
with:
74+
repo: telerik-datasource
75+
pattern: debug-assets.zip
76+
dir: temp/datasource
77+
token: ${{ steps.import-secrets.outputs.GH_TOKEN }}
78+
unzip: true
79+
verify-attestation: true
80+
81+
- name: Move DataSource bin and xml to BinAndXml folder
82+
run: |
83+
cp datasource/net6.0/Telerik.DataSource.dll BinAndXml
84+
cp datasource/net6.0/Telerik.DataSource.xml BinAndXml
85+
ls BinAndXml
86+
working-directory: temp
87+
88+
- name: Upload BinAndXml folder artifacts
89+
uses: actions/[email protected]
90+
with:
91+
name: BinAndXml
92+
retention-days: 2
93+
path: temp/BinAndXml
94+
95+
extract-metadata:
96+
runs-on: windows-latest
97+
needs: build_blazor
98+
permissions:
99+
id-token: write # Required by Akeyless
100+
contents: write
101+
steps:
102+
- name: Import Secrets
103+
id: import-secrets
104+
uses: LanceMcCarthy/akeyless-action@v3
105+
with:
106+
access-id: ${{ secrets.GH_AKEYLESS_ACCESS_ID }}
107+
static-secrets: |
108+
{
109+
"/WebComponents/prod/tokens/GH_TOKEN": "GH_TOKEN"
110+
}
111+
export-secrets-to-environment: false
112+
113+
- name: Check out Blazor-Docs repo
114+
uses: actions/checkout@v4
115+
with:
116+
sparse-checkout: _assetsApi
117+
ref: ${{ github.ref_name }}
118+
token: ${{ steps.import-secrets.outputs.GH_TOKEN }}
119+
fetch-depth: "0"
120+
121+
- name: Download Binaries
122+
uses: actions/[email protected]
123+
with:
124+
name: BinAndXml
125+
path: src
126+
127+
- name: Copy docfx config files
128+
run: |
129+
copy .\_assetsApi\filterConfig.yml .\filterConfig.yml
130+
copy .\_assetsApi\metadata-config.json .\metadata-config.json
131+
132+
- name: Install docfx
133+
run: dotnet tool update -g docfx
134+
135+
- name: Generate metadata
136+
run: docfx metadata-config.json
137+
138+
- name: Zip metadata
139+
run: 7z a metadata.zip .\metadata\*
140+
141+
- name: Upload metadata artifacts
142+
uses: actions/[email protected]
143+
with:
144+
name: metadata
145+
retention-days: 2
146+
path: .\metadata.zip
147+
148+
build-docs:
149+
needs: extract-metadata
150+
runs-on: ubuntu-latest
151+
permissions:
152+
id-token: write # Required by Akeyless
153+
contents: write
154+
steps:
155+
- name: Import Secrets
156+
id: import-secrets
157+
uses: LanceMcCarthy/akeyless-action@v3
158+
with:
159+
access-id: ${{ secrets.GH_AKEYLESS_ACCESS_ID }}
160+
static-secrets: |
161+
{
162+
"/WebComponents/prod/tokens/GH_TOKEN": "GH_TOKEN"
163+
}
164+
export-secrets-to-environment: false
165+
166+
- name: Check out Blazor-Docs repo
167+
uses: actions/checkout@v4
168+
with:
169+
ref: ${{ github.ref_name }}
170+
token: ${{ steps.import-secrets.outputs.GH_TOKEN }}
171+
fetch-depth: "0"
172+
173+
- name: Download Api Metadata
174+
uses: actions/[email protected]
175+
with:
176+
name: metadata
177+
path: metadata
178+
179+
- name: Extract Api Metadata
180+
run: 7z x ./metadata/metadata.zip -ometadata
181+
182+
- name: Check out docs builder repository
183+
uses: actions/checkout@v4
184+
with:
185+
repository: telerik/docs-builder
186+
ref: master
187+
path: docs-builder
188+
token: ${{ steps.import-secrets.outputs.GH_TOKEN }}
189+
190+
- name: install packages
191+
run: npm ci
192+
working-directory: docs-builder
193+
194+
- name: Build Content
195+
run: npm run prod-build --docsPath=../blazor-docs --docfxFilesPath=../metadata
196+
working-directory: docs-builder

.github/workflows/build_docs_no_api.yml

Lines changed: 0 additions & 63 deletions
This file was deleted.

.github/workflows/ci.yml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@ name: CI
22

33
on:
44
workflow_dispatch:
5-
push:
6-
branches: [master, production]
7-
paths:
8-
- "**.md"
9-
pull_request:
10-
branches: [master, production]
5+
# push:
6+
# branches: [master, production]
7+
# paths:
8+
# - "**.md"
9+
# pull_request:
10+
# branches: [master, production]
1111

1212
jobs:
1313
build_docs:
14-
uses: ./.github/workflows/build_docs_no_api.yml
14+
uses: ./.github/workflows/build_docs.yml
1515
secrets: inherit

_contentTemplates/common/get-started.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
#prerequisites-download
77

8-
* To successfully complete the steps in this tutorial, make sure you have an <a href="https://visualstudio.microsoft.com/vs/" target="_blank">up-to-date Visual Studio</a>, which is compatible with the .NET version of your choice. If you are not using Visual Studio, some of the steps require using the .NET CLI or editing files manually. In this case, also refer to the [Workflow Details tutorial](slug://getting-started/what-you-need).
8+
* To successfully complete the steps in this tutorial, make sure you have an <a href="https://visualstudio.microsoft.com/vs/" target="_blank">up-to-date Visual Studio</a>, which is compatible with the [supported .NET version](slug://system-requirements#supported-net-versions) of your choice. If you are not using Visual Studio, some of the steps require using the .NET CLI or editing files manually. In this case, also refer to the [Workflow Details tutorial](slug://getting-started/what-you-need).
99

1010
* To learn more about the compatibility of the Telerik UI for Blazor components with different browser and .NET versions, see the [system requirements](slug://system-requirements).
1111

@@ -77,7 +77,7 @@ In this tutorial, you will use the [Telerik NuGet feed](slug://installation/nuge
7777

7878
![Telerik Blazor app in the browser](images/blazor-app-in-browser.png)
7979

80-
Well done! Now you have your first Telerik UI for Blazor component running in your Blazor app.
80+
Well done! Now you have your first Telerik UI for Blazor component running in your Blazor app, showcasing the power of front-end development with Blazor.
8181

8282
@[template](/_contentTemplates/common/get-started.md#next-steps-after-getting-started)
8383

_contentTemplates/common/inputs.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,7 @@ Also check the dedicated KB article about [programmatic input component focusing
33
#end
44

55
#edit-debouncedelay
6-
76
Consider setting `DebounceDelay="0"` to the component inside the editor template. This is how the default editors in all Telerik Blazor components work. Otherwise, fast users may try to save changes before the data item in edit mode receives the new value.
8-
97
#end
108

119
#adornments

_contentTemplates/common/popup-edit-customization.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
| --- | --- | --- |
77
| `Class` | `string` | The CSS class of the edit popup |
88
| `Title` | `string` | The title of the edit popup |
9-
| `ThemeColor` | `string` | The color scheme of the window. Use the available members of the static class [`ThemeConstants.Window.ThemeColor`](/blazor-ui/api/Telerik.Blazor.ThemeConstants.Window.ThemeColor). |
9+
| `ThemeColor` | `string` | The color scheme of the window. Use the available members of the static class [`ThemeConstants.Window.ThemeColor`](slug://Telerik.Blazor.ThemeConstants.Window.ThemeColor). |
1010
| `Width` | `string` | The Width of the edit popup |
1111
| `MaxWidth` | `string` | The maximum width of the window |
1212
| `MinWidth` | `string` | The minimum width of the window |

common-features/adaptive-rendering.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,10 +69,10 @@ Three breakpoints define the rendering options as follows:
6969

7070
## Customize the Default Adaptive Breakpoints
7171

72-
You can customize the [above-listed default adaptive breakpoints](#rendering-specifics) at the root level by configuring the [`<TelerikRootComponent>`]({%slug rootcomponent-overview%}). To specify your desired breakpoints:
72+
You can customize the [above-listed default adaptive breakpoints](#rendering-specifics) at the root level by configuring the [`<TelerikRootComponent>`](slug://rootcomponent-overview). To specify your desired breakpoints:
7373

7474
1. Wrap the content of the `<TelerikRootComponent>` (`@Body` and potentially other elements) in `<ChildContent>` tag.
75-
1. Add the `<RootComponentSettings>` component inside the [`<TelerikRootComponent>`]({%slug rootcomponent-overview%}).
75+
1. Add the `<RootComponentSettings>` component inside the [`<TelerikRootComponent>`](slug://rootcomponent-overview).
7676
1. Add the `<RootComponentAdaptiveSettings>` component inside the `<RootComponentSettings>` tag and configure its properties:
7777

7878
@[template](/_contentTemplates/common/parameters-table-styles.md#table-layout)

common-features/data-binding/descriptors.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ You can obtain the applied filtering, searching, sorting, and grouping criteria
2727

2828
### Through the OnRead Event
2929

30-
Use the [`Request` property](slug://common-features-data-binding-onread#event-argument) of the [`OnRead` event argument object](/blazor-ui/api/Telerik.Blazor.Components.ReadEventArgs):
30+
Use the [`Request` property](slug://common-features-data-binding-onread#event-argument) of the [`OnRead` event argument object](slug://Telerik.Blazor.Components.ReadEventArgs):
3131

3232
<div class="skip-repl"></div>
3333

@@ -83,17 +83,17 @@ See the [complete example](#example-with-component-state) at the bottom of the a
8383

8484
## Filtering
8585

86-
The `args.Request.Filters` and the `args....State.FilterDescriptors` are collections of [`IFilterDescriptor`](/blazor-ui/api/Telerik.DataSource.IFilterDescriptor). To access the filtering criteria, such as the user input to filter by, cast each `IFilterDescriptor` from the respective collection:
86+
The `args.Request.Filters` and the `args....State.FilterDescriptors` are collections of [`IFilterDescriptor`](slug://Telerik.DataSource.IFilterDescriptor). To access the filtering criteria, such as the user input to filter by, cast each `IFilterDescriptor` from the respective collection:
8787

88-
* If the component is of type input or select, such as the AutoComplete, ComboBox, DropDownList, MultiColumnComboBox, MultiSelect, cast the first `IFilterDescriptor` from the collection to [`FilterDescriptor`](/blazor-ui/api/telerik.datasource.filterdescriptor).
89-
* Otherwise, cast each `IFilterDescriptor` from the `args.Request.Filters` collection, respectively from the `args....State.FilterDescriptors` collection, to [`CompositeFilterDescriptor`](/blazor-ui/api/Telerik.DataSource.CompositeFilterDescriptor).
88+
* If the component is of type input or select, such as the AutoComplete, ComboBox, DropDownList, MultiColumnComboBox, MultiSelect, cast the first `IFilterDescriptor` from the collection to [`FilterDescriptor`](slug://telerik.datasource.filterdescriptor).
89+
* Otherwise, cast each `IFilterDescriptor` from the `args.Request.Filters` collection, respectively from the `args....State.FilterDescriptors` collection, to [`CompositeFilterDescriptor`](slug://Telerik.DataSource.CompositeFilterDescriptor).
9090

9191
### CompositeFilterDescriptor
9292

9393
The `CompositeFilterDescriptor` exposes:
9494

95-
* The [`FilterDescriptors`](/blazor-ui/api/telerik.datasource.compositefilterdescriptor#Telerik_DataSource_CompositeFilterDescriptor_FilterDescriptors) property. This property represents another collection of `IFilterDescriptor`. To access the filtering criteria, cast each `IFilterDescriptor` to a `FilterDescriptor`. When the Filter component gets groupable filtering, cast each `IFilterDescriptor` to another `CompositeFilterDescriptor`.
96-
* The [`LogicalOperator`](/blazor-ui/api/telerik.datasource.compositefilterdescriptor#Telerik_DataSource_CompositeFilterDescriptor_LogicalOperator) property. This property can be either `AND` or `OR`. This property represents the logical operator applied between the instances in the `FilterDescriptors` collection.
95+
* The [`FilterDescriptors`](slug://telerik.datasource.compositefilterdescriptor#Telerik_DataSource_CompositeFilterDescriptor_FilterDescriptors) property. This property represents another collection of `IFilterDescriptor`. To access the filtering criteria, cast each `IFilterDescriptor` to a `FilterDescriptor`. When the Filter component gets groupable filtering, cast each `IFilterDescriptor` to another `CompositeFilterDescriptor`.
96+
* The [`LogicalOperator`](slug://telerik.datasource.compositefilterdescriptor#Telerik_DataSource_CompositeFilterDescriptor_LogicalOperator) property. This property can be either `AND` or `OR`. This property represents the logical operator applied between the instances in the `FilterDescriptors` collection.
9797

9898
When the filtering is initiated, the `CompositeFilterDescriptor` properties get different values depending on the filter mode:
9999

@@ -112,16 +112,16 @@ The searching criteria in a Grid or TreeList are stored in an individual `IFilte
112112

113113
## Sorting
114114

115-
The sorting criteria in a Grid, TreeList or Gantt are stored in a collection of [`SortDescriptor`](/blazor-ui/api/telerik.datasource.sortdescriptor) objects. Each `SortDescriptor` instance gives access to:
115+
The sorting criteria in a Grid, TreeList or Gantt are stored in a collection of [`SortDescriptor`](slug://telerik.datasource.sortdescriptor) objects. Each `SortDescriptor` instance gives access to:
116116
* The `Member`&mdash;The field where the user sorts.
117117
* The `SortDirection`&mdash;The sort direction for this sort descriptor.
118118

119-
When the [`SortMode`](/blazor-ui/api/Telerik.Blazor.SortMode) is `Multiple`, you may need to consider the order of the `SortDescriptor` instances. The first applied sorting criteria take precedence over all others. If there are equal values in the first sorted items, then those items are sorted by the following sorting criteria.
119+
When the [`SortMode`](slug://Telerik.Blazor.SortMode) is `Multiple`, you may need to consider the order of the `SortDescriptor` instances. The first applied sorting criteria take precedence over all others. If there are equal values in the first sorted items, then those items are sorted by the following sorting criteria.
120120

121121

122122
## Grouping
123123

124-
Тhe grouping criteria for each group are stored in an individual collection of [`GroupDescriptor`](/blazor-ui/api/telerik.datasource.groupdescriptor) objects. The `GroupDescriptor` class inherits the `SortDescriptor` class and gives access to the same properties as the `SortDescriptor` class.
124+
Тhe grouping criteria for each group are stored in an individual collection of [`GroupDescriptor`](slug://telerik.datasource.groupdescriptor) objects. The `GroupDescriptor` class inherits the `SortDescriptor` class and gives access to the same properties as the `SortDescriptor` class.
125125

126126
The user may group by multiple fields. The groups for subsequent fields will be nested within their parent groups. The grouping criteria from the parent group are stored in the first `GroupDescriptor` instance from the collection.
127127

0 commit comments

Comments
 (0)