Skip to content
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

Remove inheritance of built-in column types, improve readability of column type classes, fix getters that returns columns from data tables #192

Merged
merged 13 commits into from
Feb 23, 2025

Conversation

Kreyu
Copy link
Owner

@Kreyu Kreyu commented Feb 23, 2025

Breaking changes

  • Moved columns priority and visibility properties and their getters and setters from column to their config. This should not affect most of the applications, unless those methods were accessed manually.
  • Removed previously deprecated setName, setOptions and setOption methods in column builder.
  • Removed previously deprecated FormColumnType.
  • Removed column type inheritance in built-in column types, which includes:
    • DateColumnType no longer uses DateTimeColumnType as its parent
    • DatePeriodColumnType no longer uses DateTimeColumnType as its parent
    • DateTimeColumnType no longer uses TextColumnType as its parent
    • EnumColumnType no longer uses TextColumnType as its parent
    • LinkColumnType no longer uses TextColumnType as its parent
    • LinkColumnType no longer uses TextColumnType as its parent
    • MoneyColumnType no longer uses NumberColumnType as its parent
    • NumberColumnType no longer uses TextColumnType as its parent

Therefore, every built-in column type is using base ColumnType as its parent. This fixes an issue where creating type extension for one type (e.g. TextColumnType) was incorrectly affecting other built-in types, without a way to prevent that.

Now, for example, if you want to create a column type extension for both TextColumnType and NumberColumnType, provide both of those types from the extension's getExtendedTypes() method.

Changes

  • Updated definition of all built-in column types with a short description and a link to its reference page in the documentation.
  • Updated definition of all built-in column types options to use fluent interface with short description, which improved readability.
  • Fixed getColumns, getVisibleColumns, getHiddenColumns and getExportableColumns methods from DataTable class returning columns in incorrect order and visibility when using personalization

@Kreyu Kreyu merged commit 83930f5 into main Feb 23, 2025
20 checks passed
@Kreyu Kreyu deleted the feature/columns-wip branch February 23, 2025 18:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant