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

feat(NovoDataTable): updating data table logic and template to better facilitate custom filters #1382

Merged
merged 10 commits into from
Jan 13, 2023

Conversation

dvoegelin
Copy link
Collaborator

Description

I ran into a few issues when implementing a custom filter in the Bullhorn ATS, so I made some changes to the NovoDataTable and related components to better accommodate custom filters and their styling and functionality.

  • the filter header was not customizable, as it was a static component outside of the custom template container. this was pulled out into its own component so it can be used anywhere, while still maintaining it in the original position if column.filterable.useCustomHeader is not set to true. this was done to make this change non-breaking.
  • the custom filter was attributed to a column based on the column.id property, so this meant that every column needed to have its own custom template, instead of being able to use one custom template and attribute it to multiple columns based on, for example, the column's type. this was updated to key off of the new optional column.filterable.customTemplate property, but will still fall back to use column.id if this property is not set.
  • these two new properties have been added to the IDataTableColumnFilterConfig interface as optional.
  • max width on the data-table-dropdown class has been upped from 230px to 280px
  • the custom filter template was previously embedded within a novo-option, which applied immutable and potentially undesirable styling properties to the custom filter. this was considered a bug and fixed by instead embedding it in a simple ng-container which does not apply any styling to the custom filter. technically this will remove 1rem of padding from around any existing custom filters, so could be considered a breaking change.

Verify that...

  • Any related demos were added and npm start and npm run build still works
  • New demos work in Safari, Chrome and Firefox
  • npm run lint passes
  • npm test passes and code coverage is increased
  • npm run build still works

Bullhorn Internal Developers

  • Run Novo Automation
Screenshots

dvoegelin and others added 5 commits December 1, 2022 13:57
…ct controls (#1374)

fix(NovoSelect): Fix issue with hints not displaying within Novo Select controls.

Co-authored-by: Kevin Cable <[email protected]>
* fix(): addressing multiple high level security updates

* adding back and updating htmlhint dep
@github-actions
Copy link
Contributor

github-actions bot commented Jan 3, 2023

Visit the preview URL for this PR (updated for commit aadae5e):

https://novo-elements--pr1382-filterupdates-fb4az43v.web.app

(expires Fri, 20 Jan 2023 16:31:20 GMT)

🔥 via Firebase Hosting GitHub Action 🌎

Sign: f1783e19c2444272095017dd8ba433fff0ee3f61

Base automatically changed from next to master January 5, 2023 18:43
@dvoegelin dvoegelin changed the base branch from master to next January 6, 2023 14:46
ndickerson
ndickerson previously approved these changes Jan 12, 2023
@dvoegelin dvoegelin merged commit 62999c9 into next Jan 13, 2023
@dvoegelin dvoegelin deleted the filterUpdates branch January 13, 2023 17:36
@dvoegelin dvoegelin mentioned this pull request Jan 13, 2023
6 tasks
dvoegelin added a commit that referenced this pull request Feb 2, 2023
* feat(NovoDataTable): updating data table logic and template to better facilitate custom filters (#1382)

* fix(NovoButton): disabling enter/space keypresses on disabled/loading buttons (#1375)

* fix(NovoSelect): Fix issue with hints not displaying within Novo Select controls (#1374)

fix(NovoSelect): Fix issue with hints not displaying within Novo Select controls.

Co-authored-by: Kevin Cable <[email protected]>

* chore(deps): addressing multiple high level security alerts (#1376)

* fix(): addressing multiple high level security updates

* adding back and updating htmlhint dep

* feat(NovoDataTable): updating data table logic and template to better facilitate custom filters

* fix(NovoDataTable): fixing scrollbar issue

* fixing typing issue

* stricter typing on filter header label

Co-authored-by: Vonterio Duncan <[email protected]>
Co-authored-by: Kevin Cable <[email protected]>

* fix(quickNote): Allow placeholder to hide when clicking in text field to write a note (#1386)

Allow placeholder to hide when clicking in text field to write a note

---------

Co-authored-by: Vonterio Duncan <[email protected]>
Co-authored-by: Kevin Cable <[email protected]>
Co-authored-by: EthanMcM <[email protected]>
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.

4 participants