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

Filters api UI 2023 09 14 #3719

Merged
merged 55 commits into from
Sep 20, 2023
Merged

Filters api UI 2023 09 14 #3719

merged 55 commits into from
Sep 20, 2023

Conversation

fiskus
Copy link
Member

@fiskus fiskus commented Sep 14, 2023

Description

TODO

  • Unit tests
  • Automated tests (e.g. Preflight)
  • Confirm that this change meets security best practices and does not violate the security model
  • Documentation
    • Python: Run build.py for new docstrings
    • JavaScript: basic explanation and screenshot of new features
    • Markdown somewhere in docs/**/*.md that explains the feature to end users (said .md files should be linked from SUMMARY.md so they appear on https://docs.quiltdata.com)
    • Markdown docs for developers
  • Changelog entry (skip if change is not significant to end users, e.g. docs only)

dependabot bot and others added 25 commits September 8, 2023 12:07
Bumps nginx from `82a5b0d` to `f959805`.

---
updated-dependencies:
- dependency-name: nginx
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [actions/checkout](https://github.com/actions/checkout) from 3 to 4.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v3...v4)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
@codecov
Copy link

codecov bot commented Sep 14, 2023

Codecov Report

Merging #3719 (cdd7c53) into faceted-search (5aff526) will increase coverage by 53.66%.
The diff coverage is n/a.

@@                 Coverage Diff                 @@
##           faceted-search    #3719       +/-   ##
===================================================
+ Coverage           35.56%   89.22%   +53.66%     
===================================================
  Files                 689       79      -610     
  Lines               30281     9877    -20404     
  Branches             4456        0     -4456     
===================================================
- Hits                10768     8813     -1955     
+ Misses              18382     1064    -17318     
+ Partials             1131        0     -1131     
Flag Coverage Δ
api-python 91.35% <ø> (ø)
catalog ?
lambda 86.19% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

see 610 files with indirect coverage changes

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

@fiskus fiskus requested a review from nl0 September 20, 2023 09:57
@fiskus fiskus marked this pull request as draft September 20, 2023 09:58
@@ -2,10 +2,18 @@ export type Path = (number | string)[]

export type Pointer = string

function encodeFragment(fragment: number | string) {
Copy link
Member

Choose a reason for hiding this comment

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

can we use some existing implementation?

@nl0 nl0 marked this pull request as ready for review September 20, 2023 11:24
@nl0 nl0 merged commit fe8dd1b into faceted-search Sep 20, 2023
@nl0 nl0 deleted the filters-api-ui-2023-09-14 branch September 20, 2023 11:25
nl0 pushed a commit that referenced this pull request Sep 20, 2023
github-merge-queue bot pushed a commit that referenced this pull request Oct 13, 2023
* FS WIP

* gql api and ui model WIP

* more plumbing. now it loads somehow

* update gql schema

* regen types, update queries

* more plumbing

* more plumbing

* compute filter expression

* handle numeric facets

* adjust schema WIP

* simplify the model somewhat

* further work

* further work

* further work, working filters

* facet query, keyword widget

* Max's UI stuff (#3719)

* utils/JSONPointer: mark path as readonly to fix type errors

* remove unnecessary types

* fix date range predicate serialization

* remove unused components, use {min,max} instead of [min, max]

* reuse container for both cases

* adjusted DatesRange format: [from, to] -> {min, max}

* hide search bar if enum is small

* use Keyword widget for enums; add fuzzy search for available filters

* move AvailableFacets to module

* move buckets and resulttype to modules, and remove extra wrapper

* use tiny TextField consistently

* use JSONPointer for consistency

* fix result type

* use fuzzy search for enum items, make empty state similar to available facets empty state

* fix buckets selectin

* handle fetching state

* show search results skeleton

* setOrder action

* add sort widget

* generic suffixes for numbers

* fix keyword extents by including values

* more facets, cleanup

* button effect for list items, dense layout

* better sort descriptions; remove relevance ascending

* clear facets action

* add empty results state

* move navbar state to react context; so, I can toggle search outside navbar

* dont stretch results column

* empty state for unbounded search

* add error empty state

* re-use UnboundedResults component

* styles for "load more" button

* show title for available filter chip

* fix when extents are [0, 0]

* eslintrc: allow _tag

* adjust model and ui

* add filter activator

* use Filters.Activator for activating filters

* more compact layout; keyword filter is not ready

* add missing files

* add workflow filter

* object filters activators

* adjust margins

* white background and for inputs

* fix sort value

* align more button with activators

* add sortBy message

* more elegant indentation

* search suggestions

* remove duplicate data

* gql provider: more keys

* components/SelectDropdown: support customizing some styles

* Search/Sort: adjust styles a little bit

* empty results on error; clear filters button in empty results; fix search bar focus

* fix overflowing sidebar when long values

* show empty strings as "EMPTY STRING"

* align title and close button

* better layout for boolean/checkbox

* keyword wildcard vs text query string queries

* move threshold to the top; and increase value

* fix empty list message condition

* group metadata filters; filter them with text field; more consistent dividers

* preserve metadata filter activation state

* preserve filter order

* reset "next page loaded" state when changing inputs, cleanup

* add useId hook

* fix boolean filter

* KeyedTree data structure

* group and limit facets

* facets threshold

* make facets depend on upstream filters (but not other facets)

* add missing generated gql stuff

* remove unused classes

* filter by type

* visual hierarchy outline for Metadata header

* add styles for metadata filters hierarchy

* fix filtering

* onExpand -> onMore, fix key, fix second-level nesting, grow expanded height

* prettify .graphql

* progress indication, cleanup

* denser icon spacing

* account for total <= 0 (secure search)

* consistent title outline

* less button for main filters

* visible overflow for metadata filters

* move more button state into component level, add less button

* consistent icon margins

* fix visibility of more button, animated collapse/expand

* disable metadata activators on fetching

* add scroll to top button

* use list for result type selector

* titles: search for...filter by...metadata; use one component for identical titles, denser margins

* add borders to feel more aligned

* always show search suggestions outside search page

* dont compensate buckets fieldset legend

* replace magnificent glass button with icon

* replace magnificent glass button with icon on open

* "search ANY object/package" suggestion

* show suggestion on search page without query

* remove `helpOpen` prop from DOM

* rm model/Search

* mv userMetaFIlters to its own arg, improve URL encoding

* support legacy "mode" param

* model.tsx -> model.ts

* support legacy "buckets" param

* consistent border color

* skeleton for results count

* show "All buckets" when no buckets selected

* reserved space for "scroll to top" button

* basic placeholder

* fix search input border radius

* cleanup the model a little

* align column titles

* rm unused gql field

* Bump debian in /lambdas/thumbnail (#3727)

Bumps debian from bullseye-20230904-slim to bullseye-20230919-slim.

---
updated-dependencies:
- dependency-name: debian
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump debian in /s3-proxy (#3726)

Bumps debian from bullseye-20230904-slim to bullseye-20230919-slim.

---
updated-dependencies:
- dependency-name: debian
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump nginx from `f959805` to `7334183` in /catalog (#3729)

Bumps nginx from `f959805` to `7334183`.

---
updated-dependencies:
- dependency-name: nginx
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump debian from `34b4145` to `c618be8` in /lambdas/thumbnail (#3728)

Bumps debian from `34b4145` to `c618be8`.

---
updated-dependencies:
- dependency-name: debian
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump debian from `34b4145` to `c618be8` in /s3-proxy (#3730)

Bumps debian from `34b4145` to `c618be8`.

---
updated-dependencies:
- dependency-name: debian
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump cryptography from 41.0.3 to 41.0.4 in /lambdas/es/indexer (#3731)

Bumps [cryptography](https://github.com/pyca/cryptography) from 41.0.3 to 41.0.4.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](pyca/cryptography@41.0.3...41.0.4)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Fix header meaning and improve formatting in Athena example (#3732)

* Fix fallback component syntax (#3735)

* Docs for managed Athena tables (#3733)

* Fix header meaning and improve formatting in Athena example

* Docs for managed Athena tables

* Update docs/advanced-features/athena.md

Co-authored-by: Dr. Ernie Prabhakar <[email protected]>

---------

Co-authored-by: Dr. Ernie Prabhakar <[email protected]>

* Rebase the catalog Docker image from "nginx" to "amazonlinux" (#3736)

* Rebase the catalog Docker image from "nginx" to "amazonlinux"

This fixes vulnerabilities found by the ECR scanner.

The nginx base image contains a production-ready nginx.conf that sets a few sane defaults and loads everything else from the "conf.d" dir.
The default nginx.conf, on the other hand, configures a server on port 80 that displays "Welcome to nginx".
Therefore, we're now overwriting nginx.conf, too, in addition to adding the catalog config.

"server_tokens off;" is moved to the main config where it actually belongs.

A few things are added to the Dockerfile that the nginx base image Dockerfile used to do.

* more fixes

* add a comment

* fix comments

* switch to 2023

* Rebase s3-proxy Docker image from "debian" to "amazonlinux" (#3737)

* Rebase s3-proxy Docker image from "debian" to "amazonlinux"

This fixes vulnerabilities found by the ECR scanner.

Also upgrade nginx to 1.24.0.

* Switch to 2023. Remove git.

* Fix certs

* Add docs on EDP networking (#3739)

* Bump urllib3 from 1.26.8 to 1.26.17 in /lambdas/tabular_preview (#3750)

Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.8 to 1.26.17.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](urllib3/urllib3@1.26.8...1.26.17)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump urllib3 from 1.26.5 to 1.26.17 in /lambdas/es/indexer (#3748)

Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.5 to 1.26.17.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](urllib3/urllib3@1.26.5...1.26.17)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump urllib3 from 1.26.5 to 1.26.17 in /lambdas/preview (#3747)

Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.5 to 1.26.17.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](urllib3/urllib3@1.26.5...1.26.17)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump urllib3 from 1.26.5 to 1.26.17 in /lambdas/s3select (#3746)

Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.5 to 1.26.17.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](urllib3/urllib3@1.26.5...1.26.17)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump urllib3 from 1.26.14 to 1.26.17 in /lambdas/thumbnail (#3742)

Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.14 to 1.26.17.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](urllib3/urllib3@1.26.14...1.26.17)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump urllib3 from 1.26.15 to 1.26.17 in /lambdas/pkgevents (#3743)

Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.15 to 1.26.17.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](urllib3/urllib3@1.26.15...1.26.17)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump urllib3 from 1.26.15 to 1.26.17 in /lambdas/pkgselect (#3744)

Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.15 to 1.26.17.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](urllib3/urllib3@1.26.15...1.26.17)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump urllib3 from 1.26.15 to 1.26.17 in /lambdas/pkgpush (#3745)

Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.15 to 1.26.17.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](urllib3/urllib3@1.26.15...1.26.17)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump urllib3 from 1.26.12 to 1.26.17 in /lambdas/status_reports (#3741)

Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.12 to 1.26.17.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](urllib3/urllib3@1.26.12...1.26.17)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump urllib3 from 1.26.9 to 1.26.17 in /lambdas/molecule (#3751)

Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.9 to 1.26.17.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](urllib3/urllib3@1.26.9...1.26.17)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump pillow from 9.4.0 to 10.0.1 in /lambdas/thumbnail (#3753)

Bumps [pillow](https://github.com/python-pillow/Pillow) from 9.4.0 to 10.0.1.
- [Release notes](https://github.com/python-pillow/Pillow/releases)
- [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst)
- [Commits](python-pillow/Pillow@9.4.0...10.0.1)

---
updated-dependencies:
- dependency-name: pillow
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump urllib3 from 1.26.11 to 1.26.17 in /testdocs (#3740)

Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.11 to 1.26.17.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](urllib3/urllib3@1.26.11...1.26.17)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump debian in /lambdas/thumbnail (#3760)

Bumps debian from bullseye-20230919-slim to bullseye-20231009-slim.

---
updated-dependencies:
- dependency-name: debian
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump amazonlinux from 2023.2.20230920.1 to 2023.2.20231011.0 in /catalog (#3763)

Bumps amazonlinux from 2023.2.20230920.1 to 2023.2.20231011.0.

---
updated-dependencies:
- dependency-name: amazonlinux
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump amazonlinux in /s3-proxy (#3762)

Bumps amazonlinux from 2023.2.20230920.1 to 2023.2.20231011.0.

---
updated-dependencies:
- dependency-name: amazonlinux
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Index metadata fields (#3656)

* Index metadata fields

* Index package workflow in ES (#3706)

* fix test

* use json pointer instead of dot path

* index config version id

* index text arrays, always put "text" value

* fix test

* use global logger instead of print

* remove a comment

* tests

* moar tests

* lint

* rm some unused code

* more cleanup

* remove unused file

* adjust some copy

* changelog

* add result type icons

* adjust casing

* adjust suggestions copy

* adjust suggestions

* adjust copy

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Maksim Chervonnyi <[email protected]>
Co-authored-by: Maxim Chervonny <[email protected]>
Co-authored-by: Maksim Chervonnyi <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Sergey Fedoseev <[email protected]>
Co-authored-by: Dr. Ernie Prabhakar <[email protected]>
Co-authored-by: Dima Ryazanov <[email protected]>
Co-authored-by: Aneesh Karve <[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.

2 participants