-
Notifications
You must be signed in to change notification settings - Fork 2.8k
Icon Picker: Filter icons in modal #20870
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
base: main
Are you sure you want to change the base?
Conversation
|
Hi there @bjarnef, thank you for this contribution! 👍 While we wait for one of the Core Collaborators team to have a look at your work, we wanted to let you know about that we have a checklist for some of the things we will consider during review:
Don't worry if you got something wrong. We like to think of a pull request as the start of a conversation, we're happy to provide guidance on improving your contribution. If you realize that you might want to make some changes then you can do that by adding new commits to the branch you created for this work and pushing new commits. They should then automatically show up as updates to this pull request. Thanks, from your friendly Umbraco GitHub bot 🤖 🙂 |
| this.#icons = icons; | ||
| if (this.data?.filter) { | ||
| this.#icons = this.#icons.filter((icon) => { | ||
| if (Array.isArray(this.data.filter)) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @bjarnef
Great to see you taking action on this one.
I will have to say, from a Seperation Of Concerns perspective, I would like the Icon Picker Modal to be as little knowledgeable of the implementation as posible.
So ideally, to align with other Pickers, the filter going into the modal would be a method that takes the whole model for Icons. So defined like this:
filter?: (item: UmbIconDefinition) => boolean;.
In this way the Icon Picker implementation can run the logic of its choice.
— Like I dream that we one day have keywords as part of the Icon model, and categories, and this filtering methods could be used for that as well. :-) I hope that makes sense, thanks
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@nielslyngsoe great suggestion and I was looking with a possible type for regex, there's a RegExp, but no type for pattern although there are suggestions here: microsoft/TypeScript#41160
In custom code of we can control filter for the modal and possible later passed in as config to property editor #20632
But in core icon picker, I think we should consider this as well. In this case I don't want my custom registered icons to show up in icon picker for content types and some may register icons used for custom features in e.g. a dashboard, while it may not make sense this appear in icon picker.
Prerequisites
If there's an existing issue for this PR then this fixes part of #20632 and part of #20647
Description