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

Simplify Nuxt query parameter computation #3136

Merged
merged 10 commits into from
Oct 23, 2023

Conversation

obulat
Copy link
Contributor

@obulat obulat commented Oct 4, 2023

Fixes

Related to #2858 by @obulat

Note: Most of the added lines are the saved API responses (tapes)

Description

This PR simplifies one of the most complicated parts of the Nuxt application: the building of API query string from the query parameters, and parsing of the query string into the filter parameters. This will make adding the store changes for Additional search views project much easier to do.

searchBy filter kind was removed because it does not allow for the flexibility required by the Additional search views project. It will be replaced by a separate parameter on the search store state in the future PR.

prepare-search-query-params module was completely removed because it is no longer needed. Its functions are implemented more flexibly in computeQueryParams function.
Some unused functions were removed. For example, we no longer parse the query string into filters, and use the route.params instead.

This PR also adds more concise types for the search query.

Testing Instructions

The querying should work as expected, and CI should pass.

Checklist

  • My pull request has a descriptive title (not a vague title likeUpdate index.md).
  • My pull request targets the default branch of the repository (main) or a parent feature branch.
  • My commit messages follow best practices.
  • My code follows the established code style of the repository.
  • I added or updated tests for the changes I made (if applicable).
  • I added or updated documentation (if applicable).
  • I tried running the project locally and verified that there are no visible errors.
  • I ran the DAG documentation generator (if applicable).

Developer Certificate of Origin

Developer Certificate of Origin
Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.


Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified
    it.

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.

@obulat obulat added 🟧 priority: high Stalls work on the project or its dependents 💻 aspect: code Concerns the software code in the repository 🧰 goal: internal improvement Improvement that benefits maintainers, not users 🧱 stack: frontend Related to the Nuxt frontend labels Oct 4, 2023
@obulat obulat requested a review from a team as a code owner October 4, 2023 18:25
@github-actions
Copy link

github-actions bot commented Oct 4, 2023

Size Change: -609 B (0%)

Total Size: 938 kB

Filename Size Change
./frontend/.nuxt/dist/client/app.js 123 kB -322 B (0%)
./frontend/.nuxt/dist/client/app.modern.js 115 kB -293 B (0%)
./frontend/.nuxt/dist/client/commons/app.js 90 kB +19 B (0%)
./frontend/.nuxt/dist/client/commons/app.modern.js 81 kB -15 B (0%)
ℹ️ View Unchanged
Filename Size Change
./frontend/.nuxt/dist/client/242.js 342 B 0 B
./frontend/.nuxt/dist/client/242.modern.js 346 B 0 B
./frontend/.nuxt/dist/client/243.js 1.85 kB 0 B
./frontend/.nuxt/dist/client/commons/components/v-error-section/components/v-external-search-form/components/v-external-source-li/e4094511.js 5.18 kB 0 B
./frontend/.nuxt/dist/client/commons/components/v-error-section/components/v-external-search-form/components/v-external-source-li/e4094511.modern.js 5.62 kB +1 B (0%)
./frontend/.nuxt/dist/client/components/loading-icon.js 728 B 0 B
./frontend/.nuxt/dist/client/components/loading-icon.modern.js 733 B 0 B
./frontend/.nuxt/dist/client/components/table-sort-icon.js 515 B 0 B
./frontend/.nuxt/dist/client/components/table-sort-icon.modern.js 519 B 0 B
./frontend/.nuxt/dist/client/components/v-all-results-grid.js 6.82 kB +1 B (0%)
./frontend/.nuxt/dist/client/components/v-all-results-grid.modern.js 6.64 kB +2 B (0%)
./frontend/.nuxt/dist/client/components/v-audio-collection.js 4.51 kB -1 B (0%)
./frontend/.nuxt/dist/client/components/v-audio-collection.modern.js 4.38 kB 0 B
./frontend/.nuxt/dist/client/components/v-audio-control.js 1.51 kB -1 B (0%)
./frontend/.nuxt/dist/client/components/v-audio-control.modern.js 1.5 kB 0 B
./frontend/.nuxt/dist/client/components/v-audio-list.js 1.44 kB -3 B (0%)
./frontend/.nuxt/dist/client/components/v-audio-list.modern.js 1.42 kB -2 B (0%)
./frontend/.nuxt/dist/client/components/v-audio-result.js 1.12 kB -3 B (0%)
./frontend/.nuxt/dist/client/components/v-audio-result.modern.js 1.1 kB -2 B (0%)
./frontend/.nuxt/dist/client/components/v-audio-track-skeleton.js 959 B 0 B
./frontend/.nuxt/dist/client/components/v-audio-track-skeleton.modern.js 961 B 0 B
./frontend/.nuxt/dist/client/components/v-audio-track.js 6.99 kB -8 B (0%)
./frontend/.nuxt/dist/client/components/v-audio-track.modern.js 6.96 kB 0 B
./frontend/.nuxt/dist/client/components/v-back-to-search-results-link.js 636 B 0 B
./frontend/.nuxt/dist/client/components/v-back-to-search-results-link.modern.js 642 B -1 B (0%)
./frontend/.nuxt/dist/client/components/v-bone.js 632 B 0 B
./frontend/.nuxt/dist/client/components/v-bone.modern.js 636 B 0 B
./frontend/.nuxt/dist/client/components/v-box-layout.js 1.35 kB 0 B
./frontend/.nuxt/dist/client/components/v-box-layout.modern.js 1.35 kB +1 B (0%)
./frontend/.nuxt/dist/client/components/v-collection-header.js 1.3 kB 0 B
./frontend/.nuxt/dist/client/components/v-collection-header.modern.js 1.31 kB -1 B (0%)
./frontend/.nuxt/dist/client/components/v-content-link.js 1.07 kB 0 B
./frontend/.nuxt/dist/client/components/v-content-link.modern.js 1.06 kB 0 B
./frontend/.nuxt/dist/client/components/v-content-page.js 530 B 0 B
./frontend/.nuxt/dist/client/components/v-content-page.modern.js 534 B 0 B
./frontend/.nuxt/dist/client/components/v-content-report-button.js 492 B 0 B
./frontend/.nuxt/dist/client/components/v-content-report-button.modern.js 496 B 0 B
./frontend/.nuxt/dist/client/components/v-content-report-form.js 3.33 kB 0 B
./frontend/.nuxt/dist/client/components/v-content-report-form.modern.js 3.21 kB +1 B (0%)
./frontend/.nuxt/dist/client/components/v-content-report-popover.js 3.79 kB -1 B (0%)
./frontend/.nuxt/dist/client/components/v-content-report-popover.modern.js 3.67 kB -1 B (0%)
./frontend/.nuxt/dist/client/components/v-copy-button.js 3.99 kB 0 B
./frontend/.nuxt/dist/client/components/v-copy-button.modern.js 4 kB 0 B
./frontend/.nuxt/dist/client/components/v-copy-license.js 2.34 kB +2 B (0%)
./frontend/.nuxt/dist/client/components/v-copy-license.modern.js 2.31 kB +1 B (0%)
./frontend/.nuxt/dist/client/components/v-dmca-notice.js 795 B 0 B
./frontend/.nuxt/dist/client/components/v-dmca-notice.modern.js 799 B 0 B
./frontend/.nuxt/dist/client/components/v-error-image.js 2.51 kB +2 B (0%)
./frontend/.nuxt/dist/client/components/v-error-image.modern.js 2.48 kB +1 B (0%)
./frontend/.nuxt/dist/client/components/v-error-section.js 5.21 kB +3 B (0%)
./frontend/.nuxt/dist/client/components/v-error-section.modern.js 4.58 kB +5 B (0%)
./frontend/.nuxt/dist/client/components/v-external-search-form.js 4.1 kB +2 B (0%)
./frontend/.nuxt/dist/client/components/v-external-search-form.modern.js 3.44 kB +7 B (0%)
./frontend/.nuxt/dist/client/components/v-external-source-list.js 2.63 kB +1 B (0%)
./frontend/.nuxt/dist/client/components/v-external-source-list.modern.js 2 kB +5 B (0%)
./frontend/.nuxt/dist/client/components/v-full-layout.js 1.92 kB 0 B
./frontend/.nuxt/dist/client/components/v-full-layout.modern.js 1.92 kB -1 B (0%)
./frontend/.nuxt/dist/client/components/v-get-media-button.js 622 B 0 B
./frontend/.nuxt/dist/client/components/v-get-media-button.modern.js 627 B -1 B (0%)
./frontend/.nuxt/dist/client/components/v-grid-skeleton.js 1.53 kB 0 B
./frontend/.nuxt/dist/client/components/v-grid-skeleton.modern.js 1.53 kB 0 B
./frontend/.nuxt/dist/client/components/v-hide-button.js 576 B -1 B (0%)
./frontend/.nuxt/dist/client/components/v-hide-button.modern.js 574 B 0 B
./frontend/.nuxt/dist/client/components/v-home-gallery.js 4.28 kB +2 B (0%)
./frontend/.nuxt/dist/client/components/v-home-gallery.modern.js 4.26 kB 0 B
./frontend/.nuxt/dist/client/components/v-homepage-content.js 1.81 kB -6 B (0%)
./frontend/.nuxt/dist/client/components/v-homepage-content.modern.js 1.79 kB 0 B
./frontend/.nuxt/dist/client/components/v-image-cell.js 2.24 kB +1 B (0%)
./frontend/.nuxt/dist/client/components/v-image-cell.modern.js 2.23 kB +2 B (0%)
./frontend/.nuxt/dist/client/components/v-image-grid.js 4.51 kB +1 B (0%)
./frontend/.nuxt/dist/client/components/v-image-grid.modern.js 4.39 kB +2 B (0%)
./frontend/.nuxt/dist/client/components/v-license-tab-panel.js 641 B -1 B (0%)
./frontend/.nuxt/dist/client/components/v-license-tab-panel.modern.js 648 B -1 B (0%)
./frontend/.nuxt/dist/client/components/v-load-more.js 1.17 kB -1 B (0%)
./frontend/.nuxt/dist/client/components/v-load-more.modern.js 1.07 kB 0 B
./frontend/.nuxt/dist/client/components/v-media-details.js 5.8 kB -3 B (0%)
./frontend/.nuxt/dist/client/components/v-media-details.modern.js 5.65 kB +1 B (0%)
./frontend/.nuxt/dist/client/components/v-media-license.js 930 B -1 B (0%)
./frontend/.nuxt/dist/client/components/v-media-license.modern.js 940 B 0 B
./frontend/.nuxt/dist/client/components/v-media-reuse.js 3 kB +3 B (0%)
./frontend/.nuxt/dist/client/components/v-media-reuse.modern.js 2.97 kB +3 B (0%)
./frontend/.nuxt/dist/client/components/v-media-tag.js 416 B 0 B
./frontend/.nuxt/dist/client/components/v-media-tag.modern.js 420 B 0 B
./frontend/.nuxt/dist/client/components/v-media-tags.js 831 B 0 B
./frontend/.nuxt/dist/client/components/v-media-tags.modern.js 825 B 0 B
./frontend/.nuxt/dist/client/components/v-metadata-value.js 586 B 0 B
./frontend/.nuxt/dist/client/components/v-metadata-value.modern.js 593 B 0 B
./frontend/.nuxt/dist/client/components/v-metadata.js 1.3 kB 0 B
./frontend/.nuxt/dist/client/components/v-metadata.modern.js 1.31 kB 0 B
./frontend/.nuxt/dist/client/components/v-modal.js 980 B 0 B
./frontend/.nuxt/dist/client/components/v-modal.modern.js 973 B 0 B
./frontend/.nuxt/dist/client/components/v-no-results.js 2.67 kB 0 B
./frontend/.nuxt/dist/client/components/v-no-results.modern.js 2.03 kB +6 B (0%)
./frontend/.nuxt/dist/client/components/v-radio.js 1 kB 0 B
./frontend/.nuxt/dist/client/components/v-radio.modern.js 1.01 kB 0 B
./frontend/.nuxt/dist/client/components/v-related-audio.js 825 B 0 B
./frontend/.nuxt/dist/client/components/v-related-audio.modern.js 742 B 0 B
./frontend/.nuxt/dist/client/components/v-related-audio/pages/search/audio.js 4.51 kB -2 B (0%)
./frontend/.nuxt/dist/client/components/v-related-audio/pages/search/audio.modern.js 4.37 kB -1 B (0%)
./frontend/.nuxt/dist/client/components/v-related-images.js 803 B +2 B (0%)
./frontend/.nuxt/dist/client/components/v-related-images.modern.js 721 B 0 B
./frontend/.nuxt/dist/client/components/v-report-desc-form.js 977 B 0 B
./frontend/.nuxt/dist/client/components/v-report-desc-form.modern.js 980 B 0 B
./frontend/.nuxt/dist/client/components/v-row-layout.js 1.72 kB -1 B (0%)
./frontend/.nuxt/dist/client/components/v-row-layout.modern.js 1.72 kB -2 B (0%)
./frontend/.nuxt/dist/client/components/v-safety-wall.js 1.44 kB 0 B
./frontend/.nuxt/dist/client/components/v-safety-wall.modern.js 1.44 kB 0 B
./frontend/.nuxt/dist/client/components/v-scroll-button.js 891 B 0 B
./frontend/.nuxt/dist/client/components/v-scroll-button.modern.js 891 B 0 B
./frontend/.nuxt/dist/client/components/v-search-results-title.js 618 B 0 B
./frontend/.nuxt/dist/client/components/v-search-results-title.modern.js 622 B 0 B
./frontend/.nuxt/dist/client/components/v-single-result-controls.js 1.17 kB -1 B (0%)
./frontend/.nuxt/dist/client/components/v-single-result-controls.modern.js 1.17 kB -1 B (0%)
./frontend/.nuxt/dist/client/components/v-sketch-fab-viewer.js 1.02 kB -1 B (0%)
./frontend/.nuxt/dist/client/components/v-sketch-fab-viewer.modern.js 916 B 0 B
./frontend/.nuxt/dist/client/components/v-snackbar.js 1.07 kB 0 B
./frontend/.nuxt/dist/client/components/v-snackbar.modern.js 1.07 kB 0 B
./frontend/.nuxt/dist/client/components/v-sources-table.js 14.8 kB +1 B (0%)
./frontend/.nuxt/dist/client/components/v-sources-table.modern.js 14.8 kB +2 B (0%)
./frontend/.nuxt/dist/client/components/v-tag.js 411 B 0 B
./frontend/.nuxt/dist/client/components/v-tag.modern.js 415 B 0 B
./frontend/.nuxt/dist/client/components/v-warning-suppressor.js 306 B 0 B
./frontend/.nuxt/dist/client/components/v-warning-suppressor.modern.js 311 B 0 B
./frontend/.nuxt/dist/client/pages/about.js 1.42 kB 0 B
./frontend/.nuxt/dist/client/pages/about.modern.js 1.42 kB 0 B
./frontend/.nuxt/dist/client/pages/audio/_id/index.js 17.4 kB -7 B (0%)
./frontend/.nuxt/dist/client/pages/audio/_id/index.modern.js 16.4 kB 0 B
./frontend/.nuxt/dist/client/pages/feedback.js 1.36 kB 0 B
./frontend/.nuxt/dist/client/pages/feedback.modern.js 1.36 kB 0 B
./frontend/.nuxt/dist/client/pages/image/_id/index.js 15.8 kB +1 B (0%)
./frontend/.nuxt/dist/client/pages/image/_id/index.modern.js 14.7 kB -1 B (0%)
./frontend/.nuxt/dist/client/pages/image/_id/report.js 4.96 kB +1 B (0%)
./frontend/.nuxt/dist/client/pages/image/_id/report.modern.js 4.74 kB +1 B (0%)
./frontend/.nuxt/dist/client/pages/index.js 6.38 kB +2 B (0%)
./frontend/.nuxt/dist/client/pages/index.modern.js 6.35 kB -1 B (0%)
./frontend/.nuxt/dist/client/pages/preferences.js 1.47 kB 0 B
./frontend/.nuxt/dist/client/pages/preferences.modern.js 1.46 kB 0 B
./frontend/.nuxt/dist/client/pages/privacy.js 1.26 kB -3 B (0%)
./frontend/.nuxt/dist/client/pages/privacy.modern.js 1.26 kB 0 B
./frontend/.nuxt/dist/client/pages/search-help.js 1.62 kB -3 B (0%)
./frontend/.nuxt/dist/client/pages/search-help.modern.js 1.61 kB 0 B
./frontend/.nuxt/dist/client/pages/search.js 5.79 kB +4 B (0%)
./frontend/.nuxt/dist/client/pages/search.modern.js 8.14 kB +5 B (0%)
./frontend/.nuxt/dist/client/pages/search/audio.js 499 B 0 B
./frontend/.nuxt/dist/client/pages/search/audio.modern.js 503 B 0 B
./frontend/.nuxt/dist/client/pages/search/image.js 453 B 0 B
./frontend/.nuxt/dist/client/pages/search/image.modern.js 454 B 0 B
./frontend/.nuxt/dist/client/pages/search/index.js 316 B 0 B
./frontend/.nuxt/dist/client/pages/search/index.modern.js 320 B 0 B
./frontend/.nuxt/dist/client/pages/search/model-3d.js 242 B 0 B
./frontend/.nuxt/dist/client/pages/search/model-3d.modern.js 246 B 0 B
./frontend/.nuxt/dist/client/pages/search/video.js 239 B 0 B
./frontend/.nuxt/dist/client/pages/search/video.modern.js 244 B 0 B
./frontend/.nuxt/dist/client/pages/sensitive-content.js 1.53 kB 0 B
./frontend/.nuxt/dist/client/pages/sensitive-content.modern.js 1.53 kB 0 B
./frontend/.nuxt/dist/client/pages/sources.js 1.53 kB -2 B (0%)
./frontend/.nuxt/dist/client/pages/sources.modern.js 1.54 kB 0 B
./frontend/.nuxt/dist/client/runtime.js 2.8 kB 0 B
./frontend/.nuxt/dist/client/runtime.modern.js 2.81 kB 0 B
./frontend/.nuxt/dist/client/vendors/app.js 68.3 kB -9 B (0%)
./frontend/.nuxt/dist/client/vendors/app.modern.js 68.1 kB +2 B (0%)

compressed-size-action

@obulat obulat force-pushed the additional_search_views/store-remove-searchby branch from 2f8d0ab to 3db4968 Compare October 5, 2023 04:19
@obulat obulat self-assigned this Oct 5, 2023
@obulat obulat force-pushed the additional_search_views/store-remove-searchby branch 3 times, most recently from 351b8c8 to eddeee5 Compare October 6, 2023 13:29
Copy link
Member

@dhruvkb dhruvkb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The changes look good to me.

@obulat obulat force-pushed the additional_search_views/store-remove-searchby branch from eddeee5 to 57f6449 Compare October 17, 2023 10:04
@obulat obulat requested a review from sarayourfriend October 17, 2023 10:04
@obulat obulat force-pushed the additional_search_views/store-remove-searchby branch 2 times, most recently from 6094566 to f3320ca Compare October 19, 2023 04:54
@openverse-bot
Copy link
Collaborator

Based on the high urgency of this PR, the following reviewers are being gently reminded to review this PR:

@AetherUnbound
@sarayourfriend
This reminder is being automatically generated due to the urgency configuration.

Excluding weekend1 days, this PR was ready for review 11 day(s) ago. PRs labelled with high urgency are expected to be reviewed within 2 weekday(s)2.

@obulat, if this PR is not ready for a review, please draft it to prevent reviewers from getting further unnecessary pings.

Footnotes

  1. Specifically, Saturday and Sunday.

  2. For the purpose of these reminders we treat Monday - Friday as weekdays. Please note that the operation that generates these reminders runs at midnight UTC on Monday - Friday. This means that depending on your timezone, you may be pinged outside of the expected range.

@obulat obulat force-pushed the additional_search_views/store-remove-searchby branch from f3320ca to e6eb238 Compare October 20, 2023 03:36
Copy link
Collaborator

@sarayourfriend sarayourfriend left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tests fine for me locally. A handful of non-blocking questions. One is an important request for an explanatory comment, but I don't want to further delay this PR as I was late to review it.

Comment on lines 78 to 82
if (!isSearchTypeSupported(searchType)) {
return { q: searchTerm.trim() }
}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What are the circumstances in which this would be the case? I'm not fully remembering how the supported/non-support search type thing works or why the code needs to handle both cases when only one is actually used (supported).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you turn on additional_search_types feature flag and look into the content switcher in the search results page header, the links to the types that are "Coming soon" will have the q=cat (or whatever) parameter set instead of just linking to /search/video (which will probably just redirect to the homepage since we don't have a generic media type page without a search term).
Screenshot 2023-10-23 at 1 29 44 PM

if (query[api_param_name]?.length) {
search_query[api_param_name] = query[api_param_name]
}
const search_query: SearchQuery = {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we change this to use camel case, while we're modifying this function anyway?

Suggested change
const search_query: SearchQuery = {
const searchQuery: SearchQuery = {

Comment on lines 446 to 447
const queryParams = useSearchStore()
.searchQueryParams as PaginatedSearchQuery
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is the case necessary here? Could we move it into the search store's searchQueryParams getter? Is there some other way to refine this type that wouldn't require a cast?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

search store can compute all of the parameters except for the page, which is saved in the media store.
I was trying not adding the page parameter to the queryParams when sending the first search request, that's why I wrote this code like this.
I refactored it now to remove the type cast.

Comment on lines 220 to 226
? this.frontendSearchUrlParams
: computeQueryParams(
searchType,
this.filters,
this.searchTerm,
"frontend"
)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's the difference between using frontendSearchUrlParams and calling computeQueryParams with the frontend strategy? frontendSearchUrlParams's implementation looks the same as the else branch of this ternary. Is the difference in passing searchType directly vs using this.searchType as frontendSearchUrlParams does? In what circumstances would type be undefined? Can those circumstances safely fallback to ALL_MEDIA, maybe?

If anything, a comment here would be helpful to explain why the branches are different and why an undefined search type dictates which we choose. Whatever the distinction is between these two branches seems to be very subtle and is completely lost on me.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I simplified this code. The type is passed here when creating a search page link (in the content switcher or in the content link on the All content search page) for a type that's different from the current search type.

@@ -508,7 +485,7 @@ export const useSearchStore = defineStore("search", {
filterCategory: FilterCategory
): boolean | undefined {
if (!["licenseTypes", "licenses"].includes(filterCategory)) {
return
return false
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this change allow us to remove undefined from the return type of this function on line 486?

@obulat obulat force-pushed the additional_search_views/store-remove-searchby branch from 6da4e5f to 033cc95 Compare October 23, 2023 11:28
@obulat obulat force-pushed the additional_search_views/store-remove-searchby branch from 033cc95 to e7a091e Compare October 23, 2023 11:32
@obulat obulat merged commit a54b735 into main Oct 23, 2023
@obulat obulat deleted the additional_search_views/store-remove-searchby branch October 23, 2023 11:51
@obulat obulat mentioned this pull request Oct 23, 2023
8 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
💻 aspect: code Concerns the software code in the repository 🧰 goal: internal improvement Improvement that benefits maintainers, not users 🟧 priority: high Stalls work on the project or its dependents 🧱 stack: frontend Related to the Nuxt frontend
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

4 participants