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

Experiment Session Filter #1260

Open
wants to merge 32 commits into
base: main
Choose a base branch
from
Open
Changes from 1 commit
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
2cbef22
prototype
stephherbers Feb 21, 2025
34fed16
add back in other tabs
stephherbers Feb 24, 2025
63c335c
add multiselect dropdown for tags and versions
stephherbers Feb 24, 2025
99a0cdf
Display selected items in multiselect dropdown
stephherbers Feb 24, 2025
8b204e6
add filter count to filter button to indicate filters are applied
stephherbers Feb 25, 2025
d28321d
fix operators and dropdown stacking styling
stephherbers Feb 26, 2025
7ac67ac
add remova all filters button and show session wit no filters fix
stephherbers Feb 26, 2025
89e6449
add search bar to multiselect dropdown
stephherbers Feb 27, 2025
359be41
Merge branch 'main' into smh/sessions-filter
stephherbers Feb 27, 2025
aa12661
use available_tags and experiment_versions rather than dummy data
stephherbers Feb 27, 2025
cd59fe7
add params to url and properly pass to tableview
stephherbers Feb 27, 2025
03e57da
set up backbone of parsing input from filter to apply filter to the q…
stephherbers Feb 27, 2025
23f37df
add filter functions
stephherbers Feb 27, 2025
1f076db
cleanup
stephherbers Feb 27, 2025
e06131c
remove check for if experiment has versions
stephherbers Mar 4, 2025
cc36006
remove mistake artifact files
stephherbers Mar 4, 2025
8c32574
style refactor
stephherbers Mar 4, 2025
d234117
convert to using daisyui classes
stephherbers Mar 4, 2025
50940be
remove unneeded code
stephherbers Mar 4, 2025
6d6e896
json and logic upgrades
stephherbers Mar 4, 2025
a71e63e
pass data in the values field of context object
stephherbers Mar 4, 2025
8d99d58
remove file
stephherbers Mar 6, 2025
7a1ee4d
convert while loop to for loop
stephherbers Mar 6, 2025
d411a97
fix 'all of' tags filter
stephherbers Mar 6, 2025
787c5e6
simpler filtering logic
stephherbers Mar 7, 2025
1315643
qa: round 1 feedback
stephherbers Mar 7, 2025
64901f4
qa: add verbose name to column name dropdown
stephherbers Mar 7, 2025
5424355
qa: add loading icon on table refresh
stephherbers Mar 7, 2025
b6f1cd2
qa: when last filter is removed via row 'x' add blank filter
stephherbers Mar 7, 2025
fd5a70a
qa: keep filters applied on page refresh
stephherbers Mar 7, 2025
ddb84d4
refresh fix: keep column persistence
stephherbers Mar 7, 2025
b42895a
add client side date validation
stephherbers Mar 7, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 6 additions & 4 deletions templates/experiments/single_experiment_home.html
Original file line number Diff line number Diff line change
Expand Up @@ -231,6 +231,8 @@ <h3 class="font-bold text-lg">Parent Experiments:
<div class="app-card">
<div class="relative">
<div class="flex items-center gap-4">
{{ available_tags|default:"[]"|json_script:"available-tags-data" }}
{{ experiment_versions|default:"[]"|json_script:"experiment-versions-data" }}
{% if perms.experiments.download_chats %}
{% include "experiments/components/exports.html" %}
{% endif %}
Expand Down Expand Up @@ -503,8 +505,8 @@ <h3 class="font-bold text-lg">Parent Experiments:
window.addEventListener('hashchange', selectTabFromHash);
</script>
<script>
const tags = {{ available_tags|safe|default:"[]" }};
const versionsList = {{ experiment_versions|safe|default:"[]" }};
const tags = JSON.parse(document.getElementById('available-tags-data').textContent);
const versionsList = JSON.parse(document.getElementById('experiment-versions-data').textContent);
document.addEventListener('alpine:init', () => {
Alpine.data('filterComponent', () => ({
filterData: {
Expand Down Expand Up @@ -597,11 +599,11 @@ <h3 class="font-bold text-lg">Parent Experiments:
triggerFilterChange() {
let filterParams = {};
this.filterData.filters.forEach((filter, i) => {
if (filter.column && filter.operator && (filter.value || filter.selectedValues.length > 0)) {
if (filter.column && filter.operator && (filter.value || Array.isArray(filter.selectedValues) && filter.selectedValues.length > 0)) {
filterParams[`filter_${i}_column`] = filter.column;
filterParams[`filter_${i}_operator`] = filter.operator;
if (['any of', 'all of'].includes(filter.operator)) {
filterParams[`filter_${i}_value`] = JSON.stringify(filter.selectedValues);
filterParams[`filter_${i}_value`] = filter.selectedValues;
} else {
filterParams[`filter_${i}_value`] = filter.value;
}
Expand Down