-
Notifications
You must be signed in to change notification settings - Fork 53
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
d521c85
commit a90fe69
Showing
1,088 changed files
with
244,740 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,193 @@ | ||
# https://docs.microsoft.com/en-us/visualstudio/ide/editorconfig-code-style-settings-reference | ||
# https://editorconfig.org | ||
|
||
# top-most EditorConfig file | ||
root = true | ||
|
||
# Default settings: | ||
# A newline ending every file | ||
# Use 4 spaces as indentation | ||
[*] | ||
# insert_final_newline = false | ||
indent_style = space | ||
indent_size = 4 | ||
|
||
[project.json] | ||
indent_size = 2 | ||
|
||
# C# files | ||
[*.cs] | ||
indent_style = tab | ||
|
||
dotnet_diagnostic.CA1416.severity = error | ||
|
||
# TODO: Remove this to reenable the COMAnalyzer once https://github.com/dotnet/linker/issues/2686 is fixed | ||
dotnet_diagnostic.IL2050.severity = none | ||
|
||
# Code analyzers | ||
dotnet_diagnostic.CA1307.severity = error | ||
dotnet_diagnostic.CA1309.severity = error | ||
dotnet_diagnostic.CA1311.severity = error | ||
dotnet_diagnostic.CA1815.severity = error | ||
dotnet_diagnostic.CA1825.severity = error | ||
|
||
# nullability checks | ||
|
||
dotnet_diagnostic.IDE0029.severity = error | ||
dotnet_diagnostic.IDE0031.severity = error | ||
dotnet_diagnostic.IDE0041.severity = error | ||
|
||
# Modifier preferences | ||
dotnet_style_require_accessibility_modifiers = never:suggestion | ||
|
||
# New line preferences | ||
csharp_new_line_before_open_brace = all | ||
csharp_new_line_before_else = true | ||
csharp_new_line_before_catch = true | ||
csharp_new_line_before_finally = true | ||
csharp_new_line_before_members_in_object_initializers = true | ||
csharp_new_line_before_members_in_anonymous_types = true | ||
csharp_new_line_between_query_expression_clauses = true | ||
|
||
# Indentation preferences | ||
csharp_indent_block_contents = true | ||
csharp_indent_braces = false | ||
csharp_indent_case_contents = true | ||
csharp_indent_switch_labels = true | ||
csharp_indent_labels = one_less_than_current | ||
|
||
# avoid this. unless absolutely necessary | ||
dotnet_style_qualification_for_field = false:suggestion | ||
dotnet_style_qualification_for_property = false:suggestion | ||
dotnet_style_qualification_for_method = false:suggestion | ||
dotnet_style_qualification_for_event = false:suggestion | ||
|
||
# only use var when it's obvious what the variable type is | ||
csharp_style_var_for_built_in_types = true:none | ||
csharp_style_var_when_type_is_apparent = true:none | ||
csharp_style_var_elsewhere = false:none | ||
|
||
# use language keywords instead of BCL types | ||
dotnet_style_predefined_type_for_locals_parameters_members = true:suggestion | ||
dotnet_style_predefined_type_for_member_access = true:suggestion | ||
|
||
# name all constant fields using PascalCase | ||
dotnet_naming_rule.constant_fields_should_be_pascal_case.severity = suggestion | ||
dotnet_naming_rule.constant_fields_should_be_pascal_case.symbols = constant_fields | ||
dotnet_naming_rule.constant_fields_should_be_pascal_case.style = pascal_case_style | ||
|
||
dotnet_naming_symbols.constant_fields.applicable_kinds = field | ||
dotnet_naming_symbols.constant_fields.required_modifiers = const | ||
|
||
dotnet_naming_style.pascal_case_style.capitalization = pascal_case | ||
|
||
# static fields should be PascalCase | ||
dotnet_naming_rule.static_fields_should_have_prefix.severity = suggestion | ||
dotnet_naming_rule.static_fields_should_have_prefix.symbols = static_fields | ||
dotnet_naming_rule.static_fields_should_have_prefix.style = static_prefix_style | ||
|
||
dotnet_naming_symbols.static_fields.applicable_kinds = field | ||
dotnet_naming_symbols.static_fields.required_modifiers = static | ||
|
||
dotnet_naming_style.static_prefix_style.capitalization = pascal_case | ||
|
||
# internal and private fields should be _camelCase | ||
dotnet_naming_rule.camel_case_for_private_internal_fields.severity = suggestion | ||
dotnet_naming_rule.camel_case_for_private_internal_fields.symbols = private_internal_fields | ||
dotnet_naming_rule.camel_case_for_private_internal_fields.style = camel_case_underscore_style | ||
|
||
dotnet_naming_symbols.private_internal_fields.applicable_kinds = field | ||
dotnet_naming_symbols.private_internal_fields.applicable_accessibilities = private, internal | ||
|
||
dotnet_naming_style.camel_case_underscore_style.required_prefix = _ | ||
dotnet_naming_style.camel_case_underscore_style.capitalization = camel_case | ||
|
||
# Code style defaults | ||
dotnet_sort_system_directives_first = true | ||
csharp_preserve_single_line_blocks = true | ||
csharp_preserve_single_line_statements = false | ||
csharp_prefer_braces = true:suggestion | ||
|
||
# Expression-level preferences | ||
dotnet_style_object_initializer = true:suggestion | ||
dotnet_style_collection_initializer = true:suggestion | ||
dotnet_style_explicit_tuple_names = true:suggestion | ||
dotnet_style_coalesce_expression = true:suggestion | ||
dotnet_style_null_propagation = true:suggestion | ||
|
||
# Expression-bodied members | ||
csharp_style_expression_bodied_methods = false:none | ||
csharp_style_expression_bodied_constructors = false:none | ||
csharp_style_expression_bodied_operators = false:none | ||
csharp_style_expression_bodied_properties = true:none | ||
csharp_style_expression_bodied_indexers = true:none | ||
csharp_style_expression_bodied_accessors = true:none | ||
|
||
# Pattern matching | ||
csharp_style_pattern_matching_over_is_with_cast_check = true:suggestion | ||
csharp_style_pattern_matching_over_as_with_null_check = true:suggestion | ||
csharp_style_inlined_variable_declaration = true:suggestion | ||
|
||
# Null checking preferences | ||
csharp_style_throw_expression = true:suggestion | ||
csharp_style_conditional_delegate_call = true:suggestion | ||
|
||
# Space preferences | ||
csharp_space_after_cast = false | ||
csharp_space_after_colon_in_inheritance_clause = true | ||
csharp_space_after_comma = true | ||
csharp_space_after_dot = false | ||
csharp_space_after_keywords_in_control_flow_statements = true | ||
csharp_space_after_semicolon_in_for_statement = true | ||
csharp_space_around_binary_operators = before_and_after | ||
csharp_space_around_declaration_statements = do_not_ignore | ||
csharp_space_before_colon_in_inheritance_clause = true | ||
csharp_space_before_comma = false | ||
csharp_space_before_dot = false | ||
csharp_space_before_open_square_brackets = false | ||
csharp_space_before_semicolon_in_for_statement = false | ||
csharp_space_between_empty_square_brackets = false | ||
csharp_space_between_method_call_empty_parameter_list_parentheses = false | ||
csharp_space_between_method_call_name_and_opening_parenthesis = false | ||
csharp_space_between_method_call_parameter_list_parentheses = false | ||
csharp_space_between_method_declaration_empty_parameter_list_parentheses = false | ||
csharp_space_between_method_declaration_name_and_open_parenthesis = false | ||
csharp_space_between_method_declaration_parameter_list_parentheses = false | ||
csharp_space_between_parentheses = false | ||
csharp_space_between_square_brackets = false | ||
|
||
# C++ Files | ||
[*.{cpp,h,in}] | ||
curly_bracket_next_line = true | ||
indent_brace_style = Allman | ||
|
||
# Xml project files | ||
[*.{csproj,vcxproj,vcxproj.filters,proj,nativeproj,locproj}] | ||
indent_size = 2 | ||
|
||
# Xml build files | ||
[*.builds] | ||
indent_size = 2 | ||
|
||
# Xml files | ||
[*.{xml,stylecop,resx,ruleset}] | ||
indent_size = 2 | ||
|
||
# Xaml files | ||
[*.{xaml}] | ||
indent_size = 2 | ||
|
||
# Xml config files | ||
[*.{props,targets,config,nuspec}] | ||
indent_size = 2 | ||
|
||
# Shell scripts | ||
[*.sh] | ||
end_of_line = lf | ||
[*.{cmd, bat}] | ||
end_of_line = crlf | ||
|
||
# Ignore Banned APIs that get generated by the WinUI Xaml Generator | ||
# This is currently being used for the banned Services/Application APIs | ||
[**/obj/**/XamlTypeInfo.g.cs] | ||
dotnet_diagnostic.RS0030.severity = none |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
# Contributing | ||
|
||
Thank you for your interest in contributing to the Syncfusion Toolkit for .NET MAUI! In this document, we'll outline what you need to know about contributing and how to get started. | ||
|
||
First and foremost: if you are thinking about contributing a bigger change or feature, **please open an issue or talk to a core team member first**! By doing this, we can coordinate and see if the change you are going to work on is something that aligns with our current priorities and is something we can commit to reviewing and merging within a reasonable time. We would want to prevent you from investing a lot of your valuable time in something that might not be in line with what we want for the toolkit. | ||
|
||
## Code of Conduct | ||
|
||
Please see our [Code of Conduct](CODE_OF_CONDUCT.md). | ||
|
||
## Contributing Code | ||
|
||
Currently, we are in the beginning phases of building up the Syncfusion Toolkit for .NET MAUI. Yet, we are still very excited for you to join us during this exciting time! | ||
|
||
Have a look at our [Development Guide](DEVELOPMENT.md) to learn about setting up your development environment. | ||
|
||
### What to Work On | ||
|
||
If you're looking for something to work on, please browse our [backlog](https://github.com/syncfusion/maui-toolkit/issues?q=is%3Aopen+is%3Aissue+milestone%3ABacklog). Any issue that is not already assigned is up for grabs. | ||
|
||
Follow the style used by the [.NET Foundation](https://github.com/dotnet/runtime/blob/master/docs/coding-guidelines/coding-style.md), with two primary exceptions: | ||
|
||
- We do not use the `private` keyword, as it is the default accessibility level in C#. | ||
- We use hard tabs over spaces. | ||
|
||
Read and follow our [pull request template](PULL_REQUEST_TEMPLATE.md). | ||
|
||
### Pull Request Requirements | ||
|
||
Please refer to our [pull request template](PULL_REQUEST_TEMPLATE.md). | ||
|
||
Please check the "Allow edits from maintainers" checkbox on your pull request. This allows us to make minor fixes and resolve conflicts for you quickly. | ||
|
||
## Proposals/Enhancements/Suggestions | ||
|
||
To propose a change or new feature, open an issue using the [feature request template](https://github.com/syncfusion/maui-toolkit/issues/new?assignees=&labels=proposal-open%2C+t%2Fenhancement+%E2%9E%95&template=feature_request.md&title=%5BEnhancement%5D+YOUR+IDEA!). You may also use the [spec template](https://github.com/syncfusion/maui-toolkit/issues/new?assignees=&labels=proposal-open%2C+t%2Fenhancement+➕&template=spec.md&title=[Spec]++) if you have an idea of what the API should look like. Be sure to also browse current issues that may be related. | ||
|
||
## Review Process | ||
All pull requests need to be reviewed and tested by at least two members of the .NET MAUI team. We do our best to review pull requests in a timely manner, but please be patient! Two reviewers will be assigned and will start the review process as soon as possible. If there are any changes requested, the contributor should make them at their earliest convenience or let the reviewers know that they are unable to make further contributions. If the pull request requires only minor changes, then someone else may pick it up and finish it. We will do our best to make sure that all credit is retained for contributors. | ||
|
||
## Merge Process | ||
All PRs should target the main branch. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
# Development Guide | ||
|
||
This page contains the steps to build and run the Syncfusion Toolkit for .NET MAUI repository from source. If you are looking to build apps with the Syncfusion Toolkit for .NET MAUI, please head over to the links in the [README](https://github.com/syncfusion/maui-toolkit/blob/main/README.md) to get started. | ||
|
||
## Initial setup | ||
### Windows | ||
- Install VS 17.10 or newer. | ||
- Follow [these steps](https://learn.microsoft.com/dotnet/maui/get-started/installation?tabs=vswin) to include MAUI. | ||
- If building iOS with pair to Mac, install current, stable Xcode on your Mac. Install from the [App Store](https://apps.apple.com/us/app/xcode/id497799835?mt=12) or [Apple Developer portal](https://developer.apple.com/download/more/?name=Xcode). | ||
- If you're missing any of the Android SDKs, Visual Studio should prompt you to install them. If it doesn't prompt you, then use the [Android SDK Manager](https://learn.microsoft.com/xamarin/android/get-started/installation/android-sdk) to install the necessary SDKs. | ||
- Install [Open JDK 17](https://learn.microsoft.com/en-us/java/openjdk/download#openjdk-17). | ||
|
||
### Mac | ||
- Install [VSCode](https://code.visualstudio.com/download). | ||
- Follow the steps for installing the .NET MAUI Dev Kit for VS Code: https://marketplace.visualstudio.com/items?itemName=ms-dotnettools.dotnet-maui | ||
|
||
## Building the Build Tasks | ||
Before opening the solution in Visual Studio/VS Code, you **MUST** build the build tasks. | ||
|
||
1. Open a command prompt/terminal/shell window. | ||
1. Navigate to the location of your cloned `syncfusion/maui-toolkit` repo, for example: | ||
```shell | ||
cd \repos\maui-toolkit | ||
``` | ||
1. Run these commands: | ||
```dotnetcli | ||
dotnet tool restore | ||
dotnet build ./Syncfusion.Maui.Toolkit.sln | ||
``` | ||
|
||
## Windows | ||
|
||
Open the `Syncfusion.Maui.Toolkit.sln` file in Visual Studio from the root of the repo. | ||
|
||
## Mac | ||
|
||
Open the root folder of the repository in VS Code. | ||
|
||
|
||
## What branch should I use? | ||
|
||
As a general rule: | ||
- [main](https://github.com/syncfusion/maui-toolkit/tree/main) | ||
|
||
|
||
## Sample projects | ||
|
||
### Samples | ||
``` | ||
├── samples | ||
│ ├── Syncfusion.Maui.ControlsGallery | ||
│ ├── Syncfusion.Maui.Controls.Samples.Sandbox | ||
│ │ ├── Maui.Controls.Sample.Sandbox | ||
``` | ||
- *Syncfusion.Maui.ControlsGallery*: Full gallery sample with all of the controls and features of the Syncfusion .NET MAUI Toolkit. | ||
- *Syncfusion.Maui.Samples.Sandbox*: Empty project useful for testing reproductions or use cases. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
|
||
### Root Cause of the Issue | ||
|
||
<!-- Enter the root cause of the issue in this section. --> | ||
|
||
### Description of Change | ||
|
||
<!-- Enter description of the fix in this section. --> | ||
|
||
### Issues Fixed | ||
|
||
<!-- Please make sure that there is a bug logged for the issue being fixed. The bug should describe the problem and how to reproduce it. --> | ||
|
||
Fixes # | ||
|
||
<!-- | ||
Are you targeting main? All PRs should target the main branch unless otherwise noted. | ||
--> | ||
|
||
### Screenshots | ||
|
||
#### Before: | ||
|
||
#### After: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
# Contributing | ||
|
||
Thank you for your interest in contributing to the Syncfusion Toolkit for .NET MAUI! In this document, we'll outline what you need to know about contributing and how to get started. | ||
|
||
Important: If you are considering a significant change or feature, please open an issue or talk to us first! This step allows us to coordinate and ensure that your intended change aligns with our current priorities and is something we can commit to reviewing and merging within a reasonable timeframe. We want to prevent you from investing a lot of valuable time in something that may not align with the toolkit's goals. | ||
|
||
## Contributing Code | ||
|
||
We are in the early stages of building the Syncfusion Toolkit for .NET MAUI, and we're excited for you to join us during this journey! | ||
|
||
Please refer to our [Development Guide](DEVELOPMENT.md) for instructions on setting up your development environment. | ||
|
||
### What to Work On | ||
|
||
If you're looking for tasks to tackle, please browse our [backlog](https://github.com/syncfusion/maui-toolkit/issues?q=is%3Aopen+is%3Aissue+milestone%3ABacklog). Any issue that is not already assigned is available for contribution. | ||
|
||
Follow the coding style guidelines set by the [.NET Foundation](https://github.com/dotnet/runtime/blob/master/docs/coding-guidelines/coding-style.md), with two primary exceptions: | ||
|
||
- Default Accessibility: We do not use the private keyword, as it is the default accessibility level in C#. | ||
- Tab vs. Spaces: We use hard tabs over spaces. | ||
|
||
|
||
### Pull Request Requirements | ||
|
||
Please refer to our [pull request template](PULL_REQUEST_TEMPLATE.md) for details on how to format your submissions. | ||
|
||
* **Allow Edits from Maintainers:** Ensure you check the "Allow edits from maintainers" checkbox on your pull request. This permission allows us to make minor fixes and resolve conflicts quickly. | ||
|
||
## Proposals/Enhancements/Suggestions | ||
|
||
To propose a change or new feature, open an issue using the [feature request template](https://github.com/syncfusion/maui-toolkit/issues/new?assignees=&labels=proposal-open%2C+t%2Fenhancement+%E2%9E%95&template=feature_request.md&title=%5BEnhancement%5D+YOUR+IDEA!). If you have a specific idea for the API, you may also use the [spec template](https://github.com/syncfusion/maui-toolkit/issues/new?assignees=&labels=proposal-open%2C+t%2Fenhancement+➕&template=spec.md&title=[Spec]++). | ||
|
||
## Review Process | ||
|
||
All pull requests must be reviewed and tested by at least two members of the Syncfusion Toolkit for .NET MAUI team. We strive to review pull requests promptly, so please be patient! Once a PR is submitted, two reviewers will be assigned to initiate the review process. | ||
|
||
* If changes are requested, please address them at your earliest convenience. If you cannot make further changes, let the reviewers know. | ||
* If the PR requires only minor adjustments, another contributor may pick it up and complete it. We will ensure that all credit is retained for contributors. | ||
|
||
## Merge Process | ||
|
||
All PRs should target the main branch. |
Oops, something went wrong.