Member filters connect#948
Merged
gaspergrom merged 3 commits intofeature/filtersfrom Jun 7, 2023
Merged
Conversation
joanagmaia
reviewed
Jun 6, 2023
Contributor
joanagmaia
approved these changes
Jun 7, 2023
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.


Changes proposed ✍️
What
🤖 Generated by Copilot at bb7ee9c
This pull request migrates the member module from Vuex to pinia for state management, and improves the filtering and sorting features for the member views. It updates the frontend components, configs, and services to use the
useMemberStorefunction and the pinia actions to fetch and manipulate members and their attributes. It also adds a custom select filter for activity types, and changes the default sorting of the saved views to use thelastActiveprop. Additionally, it adds a condition to theTagRepositoryclass in the backend to allow querying tags by ids.
🤖 Generated by Copilot at bb7ee9c
Why
How
🤖 Generated by Copilot at bb7ee9c
listMembersmethod toMemberServiceclass to query members with custom filters and pagination from the backend (link)TagRepositoryclass to filter tags by ids if the filter object has an ids property (link)CrSelectFiltercomponent withCrSelectFilterAsynccomponent for activity type filter and load options from the backend (link, link)MultiSelectFilterConfigimport withMultiSelectAsyncFilterConfigimport for tags filter and load options from the backend (link)apiFilterRendererByTypecalls with custom functions for average sentiment, engagement level, and tags filters to use custom logic for the backend query (link, link, link)createdByandlastActivityprops withlastActiveprop in the order objects of the saved views to update the default sorting (link, link, link, link, link, link)useMemberStorefunction from pinia module and access member store in various components (link, link, link, link, link)store.dispatchandstore.getterscalls with pinia actions and computed properties in various components (link, link, link, link, link, link, link, link, link, link, link, link, link)@selection-changeevent handler toel-tablecomponent to assign selected members to the member store (link)countprop withtotalMembersprop inapp-empty-state-ctaandapp-paginationcomponents to use the total number of members from the last query (link, link)pagination.pageSizeandpagination.currentPageprops withpagination.perPageandpagination.pageprops inapp-pagination-sortercomponent to use the current pagination settings from the filters object (link)widthprop fromapp-member-list-filtercomponent to avoid a warning in the console (link)app-member-list-tablecomponent and registerAppMemberListTablecomponent in the member list page (link, link)loadingref andshowLoadingfunction to the member list page to show a loading indicator while fetching data from the backend (link, link)tableWidthref and assignment to the member list table component to store the width of the table element (link, link)piniaMapActionsfunction from pinia module and mapfetchMembersaction to the member dropdown component (link, link)apiFilterRendererByTypeimports from average sentiment and engagement level filter configs (link, link)itemLabelRendererByTypeimport withapiFilterRendererByTypeimport in activity type filter config (link)Checklist ✅
Feature,Improvement, orBug.