Skip to content

Toggle FieldObject Enablement#294

Merged
scottolsonjr merged 5 commits intomainfrom
169-implement-setdisabledfield-and-setenabledfield-methods
Mar 1, 2026
Merged

Toggle FieldObject Enablement#294
scottolsonjr merged 5 commits intomainfrom
169-implement-setdisabledfield-and-setenabledfield-methods

Conversation

@scottolsonjr
Copy link
Contributor

Refactor and enhance the RarelySimple.AvatarScriptLink.Objects and Services packages

  • Updated project structure in dotnet.instructions.md to reflect new modular organization.
  • Added new helper methods for enabling and disabling fields in RowObject, FormObject, OptionObject, OptionObject2, and OptionObject2015.
  • Implemented unit tests for new helper methods in corresponding test projects.
  • Improved documentation in README files for RarelySimple.AvatarScriptLink.Objects and RarelySimple.AvatarScriptLink.Services to clarify usage and package recommendations.
  • Ensured compatibility with .NET Standard 2.0 and .NET 8.0 for respective projects.

…rvices packages

- Updated project structure in dotnet.instructions.md to reflect new modular organization.
- Added new helper methods for enabling and disabling fields in RowObject, FormObject, OptionObject, OptionObject2, and OptionObject2015.
- Implemented unit tests for new helper methods in corresponding test projects.
- Improved documentation in README files for RarelySimple.AvatarScriptLink.Objects and RarelySimple.AvatarScriptLink.Services to clarify usage and package recommendations.
- Ensured compatibility with .NET Standard 2.0 and .NET 8.0 for respective projects.
@scottolsonjr scottolsonjr added this to the v2 milestone Feb 22, 2026
@scottolsonjr scottolsonjr requested a review from Copilot February 22, 2026 16:32
@scottolsonjr scottolsonjr self-assigned this Feb 22, 2026
@scottolsonjr scottolsonjr added the enhancement New feature or request label Feb 22, 2026
@scottolsonjr scottolsonjr linked an issue Feb 22, 2026 that may be closed by this pull request
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR expands the modular Objects.Helpers layer with new extension methods to enable/disable FieldObject instances across RowObject, FormObject, and the various OptionObject* models, while also updating repository/package documentation to reflect the newer modular package layout.

Changes:

  • Added SetDisabled* / SetEnabled* helper extensions for RowObject, FormObject, OptionObject, OptionObject2, and OptionObject2015.
  • Added/updated unit tests validating the new enable/disable behaviors across object types.
  • Updated READMEs and contributor instructions to recommend modular packages (e.g., Objects.Helpers) vs the meta-package (Net).

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
dotnet/RarelySimple.AvatarScriptLink.Services/README.md Updates package guidance to point users to Objects.Helpers or Net.
dotnet/RarelySimple.AvatarScriptLink.Objects/README.md Clarifies Objects vs Helpers vs Net usage recommendations.
dotnet/RarelySimple.AvatarScriptLink.Objects.Helpers/RowObjectHelpers.cs Adds row-level enable/disable helpers (with RowAction side-effects).
dotnet/RarelySimple.AvatarScriptLink.Objects.Helpers/FormObjectHelpers.cs Adds form-level enable/disable helpers, including MI behavior.
dotnet/RarelySimple.AvatarScriptLink.Objects.Helpers/OptionObjectHelpers.cs Adds option-level enable/disable helpers by delegating to forms.
dotnet/RarelySimple.AvatarScriptLink.Objects.Helpers/OptionObject2Helpers.cs Adds option-level enable/disable helpers for OptionObject2.
dotnet/RarelySimple.AvatarScriptLink.Objects.Helpers/OptionObject2015Helpers.cs Adds option-level enable/disable helpers for OptionObject2015.
dotnet/RarelySimple.AvatarScriptLink.Objects.Helpers.Tests/ExtensionMethodsTests.cs Adds tests covering the new helper methods across objects.
.github/instructions/dotnet.instructions.md Updates project list/docs for the modular Objects.* projects (contains new typos).
.github/copilot-instructions.md Updates repository organization docs for modular Objects.* projects.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 11 out of 11 changed files in this pull request and generated 4 comments.

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 12 out of 12 changed files in this pull request and generated 5 comments.

…logic

- Created a comprehensive test suite for RowObjectHelpers, covering methods related to row and field manipulation.
- Enhanced the logic in SetDisabledField and SetEnabledField methods to check if the field state has changed before modifying the RowAction.
- Updated DisableAllFieldObjects and EnableAllFieldObjects methods to only set the RowAction if changes occur.
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 16 out of 16 changed files in this pull request and generated 1 comment.

…ionObjectHelpersTests.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@sonarqubecloud
Copy link

sonarqubecloud bot commented Mar 1, 2026

@scottolsonjr scottolsonjr merged commit b4fae07 into main Mar 1, 2026
7 checks passed
@scottolsonjr scottolsonjr deleted the 169-implement-setdisabledfield-and-setenabledfield-methods branch March 1, 2026 20:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement SetDisabledField and SetEnabledField Methods

2 participants