Skip to content

Feature/additional attributes #14

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Jan 1, 2025
Merged

Conversation

Fa-BRAIK
Copy link
Contributor

@Fa-BRAIK Fa-BRAIK commented Jan 1, 2025

This pull request includes several updates to the clover.xml file, primarily focusing on adding new files and updating metrics for existing classes. The most important changes are grouped by theme below:

Addition of New Files

  • Added MapName.php to the Class package with corresponding metrics and lines of code.
  • Added Hidden.php to the Property package with corresponding metrics.
  • Added NameMapperConfig.php to the ClassContext package with corresponding metrics and lines of code.
  • Added LetterCase.php to the Enums package with corresponding metrics.

Updates to Existing Classes

  • Updated complexity and other metrics for BaseData in the Concerns package.
  • Updated complexity and other metrics for ClassContext in the Contexts package.
  • Updated complexity and other metrics for PropertyContext in the Contexts package.
  • Updated complexity and other metrics for TypeContext in the Contexts package.
  • Updated complexity and other metrics for PropertyContext in the Contexts package.

Introduce a new `Hidden` attribute to mark properties that should be excluded from serialization. Updated `BaseData` and `PropertyContext` to handle this behavior, added a corresponding unit test, and documented the feature in `PropertyAttributes.md`.
Introduce `MapName` attribute to define property name mappings with configurable letter case transformations. This includes a `LetterCase` enum, utilities in the `Str` class, and pipeline integration for deserialization. Comprehensive tests have been added to ensure functionality and coverage.
Introduce a new `NameMapper.md` file explaining the usage of the `MapName` attribute for handling property name mapping and letter case transformations. Update cross-references in `PropertyAttributes.md` and `Quickstart.md` to include this new documentation.
@Fa-BRAIK Fa-BRAIK added documentation Improvements or additions to documentation. feature New feature! labels Jan 1, 2025
@Fa-BRAIK Fa-BRAIK added this to the [v0.4] Configuration & Logs milestone Jan 1, 2025
@Fa-BRAIK Fa-BRAIK marked this pull request as ready for review January 1, 2025 15:13
@Fa-BRAIK Fa-BRAIK merged commit 5c676eb into main Jan 1, 2025
5 checks passed
@Fa-BRAIK Fa-BRAIK deleted the feature/additional-attributes branch January 1, 2025 15:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation. feature New feature!
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant