scout-browser 4.103.1__py3-none-any.whl → 4.103.3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (21) hide show
  1. scout/server/app.py +16 -5
  2. scout/server/blueprints/alignviewers/controllers.py +2 -1
  3. scout/server/blueprints/alignviewers/templates/alignviewers/igv_viewer.html +3 -3
  4. scout/server/blueprints/alignviewers/templates/alignviewers/utils.html +1 -1
  5. scout/server/blueprints/institutes/views.py +3 -1
  6. scout/server/blueprints/omics_variants/templates/omics_variants/outliers.html +3 -8
  7. scout/server/blueprints/panels/controllers.py +1 -1
  8. scout/server/blueprints/variants/controllers.py +1 -1
  9. scout/server/blueprints/variants/templates/variants/cancer-sv-variants.html +2 -4
  10. scout/server/blueprints/variants/templates/variants/cancer-variants.html +2 -4
  11. scout/server/blueprints/variants/templates/variants/mei-variants.html +2 -4
  12. scout/server/blueprints/variants/templates/variants/str-variants.html +8 -6
  13. scout/server/blueprints/variants/templates/variants/sv-variants.html +2 -4
  14. scout/server/blueprints/variants/templates/variants/utils.html +29 -5
  15. scout/server/blueprints/variants/templates/variants/variants.html +2 -4
  16. scout/server/blueprints/variants/views.py +1 -0
  17. {scout_browser-4.103.1.dist-info → scout_browser-4.103.3.dist-info}/METADATA +1 -1
  18. {scout_browser-4.103.1.dist-info → scout_browser-4.103.3.dist-info}/RECORD +21 -21
  19. {scout_browser-4.103.1.dist-info → scout_browser-4.103.3.dist-info}/WHEEL +0 -0
  20. {scout_browser-4.103.1.dist-info → scout_browser-4.103.3.dist-info}/entry_points.txt +0 -0
  21. {scout_browser-4.103.1.dist-info → scout_browser-4.103.3.dist-info}/licenses/LICENSE +0 -0
scout/server/app.py CHANGED
@@ -311,20 +311,31 @@ def register_filters(app):
311
311
 
312
312
  @app.template_filter()
313
313
  def format_variant_canonical_transcripts(variant: dict) -> List[str]:
314
- """Formats canonical transcripts for all genes in a variant."""
315
-
316
314
  lines = set()
317
315
  genes = variant.get("genes") or []
318
316
 
319
317
  for gene in genes:
318
+ gene_symbol = gene.get("hgnc_symbol", "")
319
+ hgvs = gene.get("hgvs_identifier")
320
320
  transcripts = gene.get("transcripts") or []
321
+
322
+ canonical_tx = None
323
+ primary_tx = None
324
+ tx_id = None
325
+
326
+ protein = None
327
+
321
328
  for tx in transcripts:
329
+ tx_id = tx.get("transcript_id")
322
330
  if not tx.get("is_canonical"):
331
+ if tx.get("is_primary"):
332
+ primary_tx = tx_id
323
333
  continue
324
- canonical_tx = tx.get("transcript_id")
334
+ canonical_tx = tx_id
325
335
  protein = tx.get("protein_sequence_name")
326
- line_components = [f"{canonical_tx} ({gene.get('hgnc_symbol', '')})"]
327
- hgvs = gene.get("hgvs_identifier")
336
+ break
337
+
338
+ line_components = [f"{canonical_tx or primary_tx or tx_id} ({gene_symbol})"]
328
339
  if hgvs:
329
340
  line_components.append(hgvs)
330
341
  if protein:
@@ -278,13 +278,14 @@ def get_tracks(name_list: list, file_list: list) -> List[Dict]:
278
278
  for name, track in zip(name_list, file_list):
279
279
  if track == "missing":
280
280
  continue
281
- track_config = {"name": name, "url": track, "min": 0.0, "max": 30.0}
281
+ track_config = {"name": name, "url": track, "min": 0.0}
282
282
  index = find_index(track)
283
283
  if index:
284
284
  track_config["indexURL"] = index
285
285
  file_format_ending = track.split(".")[-1]
286
286
  if file_format_ending in ["bam", "cram"]:
287
287
  track_config["format"] = file_format_ending
288
+ track_config["autoscaleGroup"] = "alignments"
288
289
  track_list.append(track_config)
289
290
  return track_list
290
291
 
@@ -97,7 +97,7 @@
97
97
  {# indexURL: '{{ url_for("alignviewers.remote_static", file=wtrack.url) }}', #}
98
98
  color: "rgb(60, 37, 17)",
99
99
  min: '{{ wtrack.min }}',
100
- max: '{{ wtrack.max }}',
100
+ autoscaleGroup: '{{ wtrack.autoscaleGroup }}',
101
101
  sourceType: 'file'
102
102
  },
103
103
  {% endfor %}
@@ -155,7 +155,7 @@
155
155
  groupBy: "tag:HP",
156
156
  indexURL: '{{ url_for("alignviewers.remote_static", file=ptrack.indexURL) }}',
157
157
  min: '{{ ptrack.min }}',
158
- max: '{{ ptrack.max }}',
158
+ autoscaleGroup: '{{ ptrack.autoscaleGroup }}',
159
159
  sourceType: 'file'
160
160
  },
161
161
  {% endfor %}
@@ -170,7 +170,7 @@
170
170
  showCoverage: false,
171
171
  indexURL: '{{ url_for("alignviewers.remote_static", file=atrack.indexURL) }}',
172
172
  min: '{{ atrack.min }}',
173
- max: '{{ atrack.max }}',
173
+ autoscaleGroup: '{{ atrack.autoscaleGroup }}',
174
174
  sourceType: 'file'
175
175
  },
176
176
  {% endfor %}
@@ -1,5 +1,5 @@
1
1
  {% macro igv_script() %}
2
2
  <link rel="shortcut icon" href="//igv.org/web/img/favicon.ico">
3
3
  <!-- IGV JS-->
4
- <script src="https://cdn.jsdelivr.net/npm/igv@3.3.0/dist/igv.min.js" integrity="sha512-U3drIflKJksG0+kiVuqYrQaI9SsloPhKfISeZr8bzVpO/oRFz7hE1vdJirvDyYIfv51CSucKJgcLAdupqitBcQ==" crossorigin="anonymous"></script>
4
+ <script src="https://cdn.jsdelivr.net/npm/igv@3.4.1/dist/igv.min.js" integrity="sha512-XV1P5+zb49ZOAEHa98+DjASX4NxQdQxEb63eGylVtIr278vrOqmSGHpcswDRQQuCRZ9YtLnxM7xs8kyRqqN+pA==" crossorigin="anonymous"></script>
5
5
  {% endmacro %}
@@ -145,7 +145,9 @@ def gene_variants(institute_id):
145
145
 
146
146
  institute_choices = [
147
147
  (inst["_id"], f"{inst['display_name']} ({inst['_id']})")
148
- for inst in user_institutes(store, current_user)
148
+ for inst in sorted(
149
+ user_institutes(store, current_user), key=lambda i: i["display_name"].lower()
150
+ )
149
151
  ]
150
152
  form = GeneVariantFiltersForm()
151
153
  form.institute.choices = institute_choices
@@ -4,7 +4,7 @@
4
4
 
5
5
  {% from "variants/components.html" import external_scripts, external_stylesheets, gene_cell %}
6
6
  {% from "variant/buttons.html" import splice_junctions_button %}
7
- {% from "variants/utils.html" import filter_script_main, pagination_footer, pagination_hidden_div, stash_filter_buttons, update_stash_filter_button_status%}
7
+ {% from "variants/utils.html" import filter_script_main, filters_form_header, pagination_footer, pagination_hidden_div, stash_filter_buttons, update_stash_filter_button_status%}
8
8
  {% from "variant/components.html" import variant_scripts %}
9
9
 
10
10
  {% block title %}
@@ -43,9 +43,7 @@
43
43
 
44
44
  {{ pagination_hidden_div(page) }}
45
45
  <div class="card panel-default" id="accordion">
46
- <div class="card-header">
47
- <strong><a data-bs-toggle="collapse" data-parent="#accordion" href="#collapseFilters">Filters</a></strong>
48
- </div>
46
+ {{ filters_form_header(result_size, total_variants) }}
49
47
  <!--Expand filters form if filters were used in a previous POST request-->
50
48
  <div class="card-body panel-collapse collapse {{ 'show' if expand_search is sameas true }}" id="collapseFilters">
51
49
  {{ outlier_filters(form, institute, case) }}
@@ -271,10 +269,7 @@
271
269
  </div>
272
270
  </div>
273
271
  <div class="col-4 d-flex justify-content-center">
274
- Filter returns {{result_size}} / {{ total_variants }} variants.
275
- </div>
276
- <div class="col-4 d-flex justify-content-end">
277
- <div class="d-flex justify-content-end">Showing {%if more_variants %}page {{page}}{%else%}last page{% endif %} with {{nvars}} variants.</div>
272
+ Showing {%if more_variants %}page {{page}}{%else%}last page{% endif %}
278
273
  </div>
279
274
  </div>
280
275
  </div>
@@ -301,7 +301,7 @@ def downloaded_panel_name(panel_obj, format) -> str:
301
301
  Returns:
302
302
  a string describing the panel
303
303
  """
304
- sanitized_panel_id = re.sub(r"[^a-zA-Z_\-]+", "", panel_obj["panel_name"])
304
+ sanitized_panel_id = re.sub(r"[^a-zA-Z0-9_\-]+", "_", panel_obj["panel_name"]).strip("_")
305
305
 
306
306
  return "_".join(
307
307
  [
@@ -1023,7 +1023,7 @@ def download_str_variants(case_obj, variant_objs):
1023
1023
  variant_line.append(str(variant.get("variant_rank", ""))) # index
1024
1024
  variant_line.append(variant.get("str_repid", variant.get("str_trid", ""))) # Repeat locus
1025
1025
  variant_line.append(
1026
- variant.get("str_display_ru", variant.get("str_ru", ""))
1026
+ variant.get("str_display_ru", variant.get("str_ru", variant.get("str_motifs", "")))
1027
1027
  ) # Reference repeat unit
1028
1028
  variant_line.append(str(get_str_mc(variant) or ".")) # Estimated size
1029
1029
  variant_line.append(str(variant.get("str_ref", ""))) # Reference size
@@ -1,5 +1,5 @@
1
1
  {% extends "layout.html" %}
2
- {% from "variants/utils.html" import cancer_sv_filters,cell_rank, pagination_footer, pagination_hidden_div, filter_form_footer, filter_script_main, update_stash_filter_button_status, dismiss_variants_block, callers_cell %}
2
+ {% from "variants/utils.html" import cancer_sv_filters, filters_form_header, cell_rank, pagination_footer, pagination_hidden_div, filter_form_footer, filter_script_main, update_stash_filter_button_status, dismiss_variants_block, callers_cell %}
3
3
  {% from "variants/components.html" import allele_cell, external_scripts, external_stylesheets, frequency_cell_general, observed_cell_general, variant_gene_symbols_cell, variant_funct_anno_cell %}
4
4
 
5
5
  {% block title %}
@@ -42,9 +42,7 @@
42
42
  <div class="container-float">
43
43
  {{ pagination_hidden_div(page) }}
44
44
  <div class="card panel-default" id="accordion">
45
- <div class="card-header">
46
- <strong><a data-bs-toggle="collapse" data-bs-parent="#accordion" href="#collapseFilters">Somatic Structural Variant Filters</a></strong>
47
- </div>
45
+ {{ filters_form_header(result_size, total_variants) }}
48
46
  <!--Expand filters form if filters were used in a previous POST request-->
49
47
  <div id="collapseFilters" class="card-body panel-collapse collapse {{ 'show' if expand_search is sameas true }}">
50
48
  {{ cancer_sv_filters(form, institute, case) }}
@@ -1,7 +1,7 @@
1
1
  {% extends "layout.html" %}
2
2
 
3
3
  {% from "variants/components.html" import allele_cell, external_scripts, external_stylesheets, gene_cell, frequency_cell_general, observed_cell_general, variant_funct_anno_cell %}
4
- {% from "variants/utils.html" import cancer_filters, cell_rank, pagination_footer, pagination_hidden_div, dismiss_variants_block, filter_form_footer, filter_script_main, update_stash_filter_button_status, callers_cell, variant_rank_score %}
4
+ {% from "variants/utils.html" import cancer_filters, filters_form_header, cell_rank, pagination_footer, pagination_hidden_div, dismiss_variants_block, filter_form_footer, filter_script_main, update_stash_filter_button_status, callers_cell, variant_rank_score %}
5
5
  {% from "variants/indicators.html" import pin_indicator, causative_badge, clinical_assessments_badge, comments_badge, dismissals_badge, evaluations_badge, group_assessments_badge, matching_manual_rank, other_tiered_variants, research_assessments_badge %}
6
6
 
7
7
  {% block title %}
@@ -38,9 +38,7 @@
38
38
  <div class="container-float">
39
39
  {{ pagination_hidden_div(page) }}
40
40
  <div class="card panel-default" id="accordion">
41
- <div class="card-header">
42
- <strong><a data-bs-toggle="collapse" data-parent="#accordion" href="#collapseFilters">Filters</a></strong>
43
- </div>
41
+ {{ filters_form_header(result_size, total_variants) }}
44
42
  <!--Expand filters form if filters were used in a previous POST request or the previous POST request form was not validated-->
45
43
  <div class="card-body panel-collapse collapse {{ 'show' if expand_search is sameas true }}" id="collapseFilters" >
46
44
  {{ cancer_filters(form, institute, case) }}
@@ -1,5 +1,5 @@
1
1
  {% extends "layout.html" %}
2
- {% from "variants/utils.html" import mei_filters, cell_rank, pagination_footer, pagination_hidden_div, dismiss_variants_block, filter_form_footer, filter_script_main, update_stash_filter_button_status %}
2
+ {% from "variants/utils.html" import mei_filters, filters_form_header, cell_rank, pagination_footer, pagination_hidden_div, dismiss_variants_block, filter_form_footer, filter_script_main, update_stash_filter_button_status %}
3
3
  {% from "variants/components.html" import external_scripts, external_stylesheets, frequency_cell_general, overlapping_cell, variant_gene_symbols_cell, variant_funct_anno_cell %}
4
4
 
5
5
  {% block title %}
@@ -42,9 +42,7 @@ onsubmit="return validateForm()">
42
42
  <div class="container-float">
43
43
  {{ pagination_hidden_div(page) }}
44
44
  <div class="card panel-default" id="accordion">
45
- <div class="card-header">
46
- <strong><a data-bs-toggle="collapse" data-parent="#accordion" href="#collapseFilters">MeiFilters</a></strong>
47
- </div>
45
+ {{ filters_form_header(result_size, total_variants) }}
48
46
  <!--Expand filters form if filters were used in a previous POST request-->
49
47
  <div id="collapseFilters" class="card-body panel-collapse collapse {{ 'show' if expand_search is sameas true }}">
50
48
  <div class="card-body">{{ mei_filters(form, institute, case) }}</div>
@@ -3,7 +3,7 @@
3
3
  {% from "variant/buttons.html" import reviewer_button%}
4
4
  {% from "variant/gene_disease_relations.html" import inheritance_badge %}
5
5
  {% from "variants/components.html" import external_scripts, external_stylesheets, frequency_cell_general %}
6
- {% from "variants/utils.html" import callers_cell, cell_rank, dismiss_variants_block, filter_form_footer, update_stash_filter_button_status, pagination_footer, pagination_hidden_div, str_filters, filter_script_main %}
6
+ {% from "variants/utils.html" import callers_cell, cell_rank, dismiss_variants_block, filter_form_footer, update_stash_filter_button_status, pagination_footer, pagination_hidden_div, str_filters, filters_form_header, filter_script_main %}
7
7
 
8
8
 
9
9
  {% block title %}
@@ -45,9 +45,7 @@
45
45
  enctype="multipart/form-data" onsubmit="return validateForm()">
46
46
  {{ pagination_hidden_div(page) }}
47
47
  <div class="card panel-default" id="accordion">
48
- <div class="card-header">
49
- <strong><a data-bs-toggle="collapse" data-parent="#accordion" href="#collapseFilters">Filters</a></strong>
50
- </div>
48
+ {{ filters_form_header(result_size, total_variants) }}
51
49
  <!--Expand filters form if filters were used in a previous POST request-->
52
50
  <div class="card-body panel-collapse collapse {{ 'show' if expand_search is sameas true }}" id="collapseFilters">
53
51
  {{ str_filters(form, institute, case) }}
@@ -243,8 +241,12 @@
243
241
  {% endfor %}
244
242
  {%endif%}
245
243
  </div>"
246
- title="">{% if variant.str_repid %} {{ variant.str_repid }} {% elif variant.str_trid %} {{ variant.str_trid }} {% else %}
247
- {% for gene in variant.genes %} {{ gene.symbol }} {% endfor %} {% endif %}
244
+ title="">{% if variant.str_repid %} {{ variant.str_repid }}
245
+ {% elif variant.genes %}
246
+ {% for gene in variant.genes %} {{ gene.symbol or gene.hgnc_symbol }} {% endfor %}
247
+ {% else %}
248
+ {{ variant.str_trid }}
249
+ {% endif %}
248
250
  </a>
249
251
  {% for gene in variant.genes %}
250
252
  {% if variant.str_disease %}
@@ -1,5 +1,5 @@
1
1
  {% extends "layout.html" %}
2
- {% from "variants/utils.html" import sv_filters, cell_rank, pagination_footer, pagination_hidden_div, dismiss_variants_block, filter_form_footer, filter_script_main, update_stash_filter_button_status, callers_cell, variant_rank_score %}
2
+ {% from "variants/utils.html" import sv_filters, filters_form_header, cell_rank, pagination_footer, pagination_hidden_div, dismiss_variants_block, filter_form_footer, filter_script_main, update_stash_filter_button_status, callers_cell, variant_rank_score %}
3
3
  {% from "variants/components.html" import external_scripts, external_stylesheets, frequency_cell_general, observed_cell_general, overlapping_cell, variant_gene_symbols_cell, variant_funct_anno_cell %}
4
4
 
5
5
  {% block title %}
@@ -42,9 +42,7 @@ onsubmit="return validateForm()">
42
42
  <div class="container-float">
43
43
  {{ pagination_hidden_div(page) }}
44
44
  <div class="card panel-default" id="accordion">
45
- <div class="card-header">
46
- <strong><a data-bs-toggle="collapse" data-parent="#accordion" href="#collapseFilters">SvFilters</a></strong>
47
- </div>
45
+ {{ filters_form_header(result_size, total_variants) }}
48
46
  <!--Expand filters form if filters were used in a previous POST request-->
49
47
  <div id="collapseFilters" class="card-body panel-collapse collapse {{ 'show' if expand_search is sameas true }}">
50
48
  {{ sv_filters(form, institute, case) }}
@@ -135,12 +135,9 @@
135
135
  {% endif %}
136
136
  </div>
137
137
  </div>
138
- <div class="col-4 d-flex justify-content-center">
139
- Filter returns {{result_size}} / {{ total_variants }} variants.
140
- </div>
141
138
  <div class="col-4 d-flex flex-column justify-content-end">
142
- <div class="d-flex justify-content-end">Showing {%if more_variants %}page {{page}}{%else%}last page{% endif %} with {{nvars}} variants.</div>
143
- <div class="d-flex justify-content-end">{{ toggle_dismiss_variants_block() }}</div>
139
+ <div class="d-flex justify-content-center">Showing {%if more_variants %}page {{page}}{%else%}last page{% endif %}</div>
140
+ <div class="d-flex justify-content-center">{{ toggle_dismiss_variants_block() }}</div>
144
141
  </div>
145
142
  </div>
146
143
  </div>
@@ -303,6 +300,33 @@
303
300
  </div>
304
301
  {% endmacro %}
305
302
 
303
+ {% macro filters_form_header(result_size, total_variants) %}
304
+
305
+ <style>
306
+ .chevron-icon {
307
+ transition: transform 0.3s ease;
308
+ }
309
+ button[aria-expanded="true"] .chevron-icon {
310
+ transform: rotate(90deg);
311
+ }
312
+ </style>
313
+
314
+ <div class="card-header d-flex justify-content-between align-items-center">
315
+ <button class="d-flex align-items-center btn btn-link p-0 text-decoration-none"
316
+ type="button"
317
+ data-bs-toggle="collapse"
318
+ data-bs-target="#collapseFilters"
319
+ aria-expanded="false"
320
+ aria-controls="collapseFilters">
321
+ <strong class="me-2">Filters</strong>
322
+ <i class="fa fa-chevron-right chevron-icon"></i>
323
+ </button>
324
+ <div class="text-muted">
325
+ Filter returns {{ result_size }} / {{ total_variants }} variants.
326
+ </div>
327
+ </div>
328
+ {% endmacro %}
329
+
306
330
  {% macro snv_filters(form, institute, case, filters)%}
307
331
  <input type="hidden" name="variant_type" value="{{ form.variant_type.data }}">
308
332
  {{ variants_common_filters(form, "snv") }}
@@ -1,5 +1,5 @@
1
1
  {% extends "layout.html" %}
2
- {% from "variants/utils.html" import snv_filters, cell_rank, pagination_footer, pagination_hidden_div, dismiss_variants_block, filter_form_footer, filter_script_main, update_stash_filter_button_status, mark_heteroplasmic_mt, variant_rank_score %}
2
+ {% from "variants/utils.html" import snv_filters, filters_form_header, cell_rank, pagination_footer, pagination_hidden_div, dismiss_variants_block, filter_form_footer, filter_script_main, update_stash_filter_button_status, mark_heteroplasmic_mt, variant_rank_score %}
3
3
  {% from "variants/components.html" import external_scripts, external_stylesheets, frequency_cell_general, gene_cell, observed_cell_general, overlapping_cell %}
4
4
 
5
5
  {% block title %}
@@ -41,9 +41,7 @@
41
41
  <div class="container-float">
42
42
  {{ pagination_hidden_div(page) }}
43
43
  <div class="card panel-default" id="accordion">
44
- <div class="card-header">
45
- <strong><a data-bs-toggle="collapse" data-parent="#accordion" href="#collapseFilters">Filters</a></strong>
46
- </div>
44
+ {{ filters_form_header(result_size, total_variants) }}
47
45
  <!--Expand filters form if filters were used in a previous POST request-->
48
46
  <div class="card-body panel-collapse collapse {{ 'show' if expand_search is sameas true }}" id="collapseFilters">
49
47
  {{ snv_filters(form, institute, case) }}
@@ -230,6 +230,7 @@ def str_variants(institute_id, case_name):
230
230
  case_obj["_id"], category=category, query=query, build=genome_build
231
231
  ).sort(
232
232
  [
233
+ ("genes.hgnc_symbol", pymongo.ASCENDING),
233
234
  ("str_repid", pymongo.ASCENDING),
234
235
  ("str_trid", pymongo.ASCENDING),
235
236
  ("chromosome", pymongo.ASCENDING),
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: scout-browser
3
- Version: 4.103.1
3
+ Version: 4.103.3
4
4
  Summary: Clinical DNA variant visualizer and browser
5
5
  Project-URL: Repository, https://github.com/Clinical-Genomics/scout
6
6
  Project-URL: Changelog, https://github.com/Clinical-Genomics/scout/blob/main/CHANGELOG.md
@@ -449,19 +449,19 @@ scout/resources/cytoBand_hg19.txt.gz,sha256=pheUD5b9NlVuvwwnbKwDc2FG80Yg70gvPxVX
449
449
  scout/resources/cytoBand_hg38.txt.gz,sha256=sqSVmvPlktQ-0hTiTapJM-5UgyV6xDoYZuTF0kPuETs,6105
450
450
  scout/resources/custom_igv_tracks/mane.bb,sha256=flEexDxHmbX7IwwrMM0P5DWOxcSCjmHxGNlyg_WqElQ,3519360
451
451
  scout/server/__init__.py,sha256=iwhKnzeBJLKxpRVjvzwiRE63_zNpIBfaKLITauVph-0,24
452
- scout/server/app.py,sha256=NB3WXI2Xa8Wdfnonkoxb0mWeEV9gYOJhqvYc_h4ajTw,14633
452
+ scout/server/app.py,sha256=7iyp2gFhCRPr1zdRRYD-z3TanSjvbnEkI_YQiTSKxD8,14879
453
453
  scout/server/auto.py,sha256=8B6GwfOaUChkTLuLgYQDFMWlxGuHkEegF1argH2G2Ik,401
454
454
  scout/server/config.py,sha256=JcT9rUDcAdm9oSk7Wwbu-Aut96-xvBQnMeQTt_-6rXs,6401
455
455
  scout/server/links.py,sha256=aFCvrtXrc1gnhNhnifapVdUZOZKEpBD2zSxWXdvQLEk,28154
456
456
  scout/server/utils.py,sha256=gNPPtbIXKenxprg1b240pkEbJZowfY4xjH9lctbpeEs,14584
457
457
  scout/server/blueprints/__init__.py,sha256=iwhKnzeBJLKxpRVjvzwiRE63_zNpIBfaKLITauVph-0,24
458
458
  scout/server/blueprints/alignviewers/__init__.py,sha256=XMVed2ekVUAvroqENDHSr2pwM8otqau8ZA-rbH1T2U8,59
459
- scout/server/blueprints/alignviewers/controllers.py,sha256=s8fvqOewsR9bSf-tbZFGe1ePvz5zfoMrVvEzZBe6Cmw,15268
459
+ scout/server/blueprints/alignviewers/controllers.py,sha256=G2bG6jZGS5tSr2SX7lp2ndMzzYt34YEhmQpex-c9xqo,15313
460
460
  scout/server/blueprints/alignviewers/partial.py,sha256=9hpI00yhvZZCcPVUHlVDp488r1j7vYU5YDXYA6OkWQM,2005
461
461
  scout/server/blueprints/alignviewers/views.py,sha256=Qa9VOPbqh2MC-L_x1Yp6n8hfr6mIm9EPIUdN_0itJRU,5092
462
462
  scout/server/blueprints/alignviewers/templates/alignviewers/igv_sashimi_viewer.html,sha256=37ArJCraTajqWlCvyQYVfSvWCg94pRDIMvf2Y7Oe_j4,5545
463
- scout/server/blueprints/alignviewers/templates/alignviewers/igv_viewer.html,sha256=rm_qcJaySQ3-Ux8Qr5JXlzWGFPAnx24fqa-XMpdcCnI,10988
464
- scout/server/blueprints/alignviewers/templates/alignviewers/utils.html,sha256=jaf4fba_RHVRymWxP32wCkR0GSZKD7PS8hYjqO8GVFI,336
463
+ scout/server/blueprints/alignviewers/templates/alignviewers/igv_viewer.html,sha256=1ODZN22bYpxQpInKrQJQDKwoAji_aXSq6cpPzmVl8zU,11054
464
+ scout/server/blueprints/alignviewers/templates/alignviewers/utils.html,sha256=W2i9IR0FyR-uduwkbI1pMmTnTDL2PtYczwcZpM03wMw,336
465
465
  scout/server/blueprints/api/__init__.py,sha256=HR6HjS7ot1K_8Lt5eQdNT154z_FCdHGSigy8r2LpNCI,26
466
466
  scout/server/blueprints/api/views.py,sha256=pbl78wfhrm1T8JmiJDYF3BbTbfFrlF-hQRbuv2GWI0s,3729
467
467
  scout/server/blueprints/cases/__init__.py,sha256=_c17kPFITFYcIVphF4V9bf0PZBer8bU3rtVWQnljKDU,52
@@ -519,7 +519,7 @@ scout/server/blueprints/genes/templates/genes/layout.html,sha256=cZMLe2cInq24z0s
519
519
  scout/server/blueprints/institutes/__init__.py,sha256=kGSyYrBC1QaEQBDdoMkMLfaowV7roaV5DowICi_0RSQ,65
520
520
  scout/server/blueprints/institutes/controllers.py,sha256=nYAkZ2SRBQsXYm-rfMkfyxBTWGSrpsgnvGdZ9Qqsqk0,37115
521
521
  scout/server/blueprints/institutes/forms.py,sha256=1xz_p51YIlWv-VhkCD3WS0K1z1S1oPYuWNaUNAQOchk,6858
522
- scout/server/blueprints/institutes/views.py,sha256=LG-uTAEUxbkHvvk0YDeDak2v366lAhmFjsyGYbZGI48,9354
522
+ scout/server/blueprints/institutes/views.py,sha256=jBDLXw0vdAetaXqgZF3vd0EPCOpO11g0B3MTML7iTco,9425
523
523
  scout/server/blueprints/institutes/static/form_scripts.js,sha256=8Sn7omeXeeUbiXJPfT0Qb4CaBJ_KtZZWw7N2he7EDx0,747
524
524
  scout/server/blueprints/institutes/static/select2_darktheme.css,sha256=Nq_va597W_e5y-52B4ClwSJzACq0WFbPU8SIp3DtKIo,1818
525
525
  scout/server/blueprints/institutes/static/timeline_styles.css,sha256=Vq48ffIidpQmDQhAzfW47O9mGQZEWdlbMtOE8AK-ZEU,2122
@@ -559,9 +559,9 @@ scout/server/blueprints/mme/templates/mme/mme_submissions.html,sha256=VjahYVVpvy
559
559
  scout/server/blueprints/omics_variants/__init__.py,sha256=8UVXrChArhIvMxtgUcG-udvmlTn56q41iy-naOZw5us,37
560
560
  scout/server/blueprints/omics_variants/controllers.py,sha256=AnM70stvLniJIU3pFUX-InNjuT-7K0RpuAEYa7vM-jw,3912
561
561
  scout/server/blueprints/omics_variants/views.py,sha256=OnLP4-aOna3bKqa8LB8LwFMl4fLvGWo5STAQSXKI7nM,3714
562
- scout/server/blueprints/omics_variants/templates/omics_variants/outliers.html,sha256=tf46LDyQbxM8vshTs-MkZiMc0ClV-9LDUVRAtxNv5o4,14005
562
+ scout/server/blueprints/omics_variants/templates/omics_variants/outliers.html,sha256=8pXe3yeX-Hd8CruVJ-X0DEMEVAiFaScFAw3Xz_kSM8M,13720
563
563
  scout/server/blueprints/panels/__init__.py,sha256=usxBF0O7zNX1d9jt-8DRoFZwcfHHS96Gv87LDr1AgG4,53
564
- scout/server/blueprints/panels/controllers.py,sha256=_LXiayDyGcyRQ3Hw13fD8zVYFQ1jIIXUMQ49WsimrZ8,12618
564
+ scout/server/blueprints/panels/controllers.py,sha256=vqfm52AbdrIUq_2tGbsPJBocOkWaLNsFEA95gH_bLcI,12633
565
565
  scout/server/blueprints/panels/forms.py,sha256=DYlhYpnpv7ehf9JlY3HRFwy-TZ5QDHB0RIRaNTAW1jQ,696
566
566
  scout/server/blueprints/panels/views.py,sha256=DUnrUWIIxqe6bOpSN1G_6dSysPpIRGq3jJDSF4FfKkA,15844
567
567
  scout/server/blueprints/panels/templates/panels/gene-edit.html,sha256=KqdUdu93707upLxh31Bwxgd1w4kH-WHtVilSNmAqiRo,3627
@@ -636,21 +636,21 @@ scout/server/blueprints/variant/templates/variant/utils.html,sha256=Chek9j4v8R7s
636
636
  scout/server/blueprints/variant/templates/variant/variant.html,sha256=Pn4OSSgXjbsLXUbEKOqKKhyNsny4Ay-hoBFY1xDZ-dw,20741
637
637
  scout/server/blueprints/variant/templates/variant/variant_details.html,sha256=Bs59vFzJMav7D65aNLOQZ5985t0ZK49uyE1go_h5MdQ,21960
638
638
  scout/server/blueprints/variants/__init__.py,sha256=W1KCz9kEbVlNO0o3NvLitYLQoP_3JSJ5KSjhpcjlUBQ,55
639
- scout/server/blueprints/variants/controllers.py,sha256=NbRM4tVrWsLLOVH-Jun80K0ZwJ9MObCJtQjnBXE2hjM,74730
639
+ scout/server/blueprints/variants/controllers.py,sha256=82pBTGMuqq1FCII9j0FlAsewQjD3XMZvYZ6IKJgvDd0,74757
640
640
  scout/server/blueprints/variants/forms.py,sha256=X4lw2UhSAAkaAMgpBK5yz8B8RvcirjjgjOyctN8g1xw,12599
641
641
  scout/server/blueprints/variants/utils.py,sha256=ifFBoyigx0A5KPE4iz9NSpyuUeF1bElrb4ohQLD2GlU,919
642
- scout/server/blueprints/variants/views.py,sha256=kBzO4uyI4EjaSEt5YKEkOOouwJQqTuRPatdkSFu5jkA,28472
642
+ scout/server/blueprints/variants/views.py,sha256=7dEiz0g_ZhROmIouOaDa2tCUl0S6bAbzED6E9Ady4HA,28526
643
643
  scout/server/blueprints/variants/static/form_scripts.js,sha256=o3GCboaesA9Sm1HgejS_yQwt0I-NTkvcl56jiBdLqZs,8319
644
- scout/server/blueprints/variants/templates/variants/cancer-sv-variants.html,sha256=QlGmUEdUQ7gCq7tMMUFAlGqqC9jFB78Q0h6tSp3QUas,7271
645
- scout/server/blueprints/variants/templates/variants/cancer-variants.html,sha256=Czn1sp5hCsRZ_UoVuqU-lROeD4Ph1rhzAeG7sAA-ltM,9795
644
+ scout/server/blueprints/variants/templates/variants/cancer-sv-variants.html,sha256=MbhtOx_szaTH4wPz6SkgA1JWrFri5Vsayty4YXUky4M,7164
645
+ scout/server/blueprints/variants/templates/variants/cancer-variants.html,sha256=Y9UsAUOHn6pIi4p2n57EApJQeaxmbxLdmds5y1ceXyw,9717
646
646
  scout/server/blueprints/variants/templates/variants/components.html,sha256=Oa3MU0DokDDeTx8eD_EQXop5UmjTFHv7SdZUlpCBl04,19150
647
647
  scout/server/blueprints/variants/templates/variants/fusion-variants.html,sha256=XGaLgWobzeFHwyQLXr_Yq9THssf8tGU91VbFKdGOFBg,4801
648
648
  scout/server/blueprints/variants/templates/variants/indicators.html,sha256=5IPiNgEB_JmYpvD6_Mpx9wd1gmKpsVnTm-HKfuBsKXg,5081
649
- scout/server/blueprints/variants/templates/variants/mei-variants.html,sha256=E5nkN7I5PtfizYKf3wuhm0xLf4rdgvDmC6EI2x1WQZA,6093
650
- scout/server/blueprints/variants/templates/variants/str-variants.html,sha256=Hkn6gO0Cjc8APkdNAMfya87yIecqtEzeftIP6WjDP2g,11210
651
- scout/server/blueprints/variants/templates/variants/sv-variants.html,sha256=7SZEkk4wjNOmgLdBcRKnNC8jdiLgPDsKey5CsQR1x8A,6794
652
- scout/server/blueprints/variants/templates/variants/utils.html,sha256=tAggwsNLqPp2YW8XH5Q7HkBTiGbYB_NmptmbYIfE4xs,53129
653
- scout/server/blueprints/variants/templates/variants/variants.html,sha256=eRbO7vnbH2Ainv7Lq9VFnLaijLwFSTX_XiHDyhtDEYo,8541
649
+ scout/server/blueprints/variants/templates/variants/mei-variants.html,sha256=Lb_xNjUh15UCM7s3AvRGYpKSvQmJZYZU5qU-zoRs3UU,6008
650
+ scout/server/blueprints/variants/templates/variants/str-variants.html,sha256=bMDUOB_YyZHjh3Z9LxlhlcTIG436X8rIlG1EgGrosa4,11160
651
+ scout/server/blueprints/variants/templates/variants/sv-variants.html,sha256=jmpofUnCsXXFcvMHniuOMIJN37FV1E7dPY6phLhdDf4,6714
652
+ scout/server/blueprints/variants/templates/variants/utils.html,sha256=VVDCG1oiRM3v0W8Ga03Ym3m1dCYkjgmy1m9PJrGuDQ0,53768
653
+ scout/server/blueprints/variants/templates/variants/variants.html,sha256=Nhgbkf0UCYHFZNE-4ilbp7PbYckXx3irTJZcaFohH5s,8461
654
654
  scout/server/extensions/__init__.py,sha256=s6qkGSFNRi_tP7yoeoXB5UarvLHidaK1Yw2Pae7Py90,1366
655
655
  scout/server/extensions/beacon_extension.py,sha256=aFILa3hdjg3uQATwY2daHMW_iTPHLybRlZL-fBkpMxI,9963
656
656
  scout/server/extensions/bionano_extension.py,sha256=Ov645TQgRusDapqqw82XK1QkTR_pI76-jcQRR2qKnmA,7097
@@ -695,8 +695,8 @@ scout/utils/link.py,sha256=HpQvwu0hmuCrs7TcAExLmOzEGr3glWuu8iaW0ao5pEA,9011
695
695
  scout/utils/md5.py,sha256=KkgdxOf7xbF9AF40ZjQKCgWaxFWJ9tp9RKjd8SU6IoA,649
696
696
  scout/utils/scout_requests.py,sha256=6R8boknrfwlmrRQ2txD81lfVtqUK_iabywEiVyIiZfQ,12685
697
697
  scout/utils/track_resources.py,sha256=eUjSEe-Ff8BIb4BHPC_COkJocQO2PaWueiPz1GAuiwY,2614
698
- scout_browser-4.103.1.dist-info/METADATA,sha256=2M-_b7t4sUVFinaL396kgjRk5dpX7cWsnTJieF8vYWU,15527
699
- scout_browser-4.103.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
700
- scout_browser-4.103.1.dist-info/entry_points.txt,sha256=q_mxFwbMFTwXRDDIRVcqKram2ubMVmvs3CSNvZri1nY,45
701
- scout_browser-4.103.1.dist-info/licenses/LICENSE,sha256=TM1Y9Cqbwk55JVfxD-_bpGLtZQAeN9RovQlqHK6eOTY,1485
702
- scout_browser-4.103.1.dist-info/RECORD,,
698
+ scout_browser-4.103.3.dist-info/METADATA,sha256=3hBmvP8CtVpqYAwDzR4kK6FU9WoU8u6ft-4ufmm5b5A,15527
699
+ scout_browser-4.103.3.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
700
+ scout_browser-4.103.3.dist-info/entry_points.txt,sha256=q_mxFwbMFTwXRDDIRVcqKram2ubMVmvs3CSNvZri1nY,45
701
+ scout_browser-4.103.3.dist-info/licenses/LICENSE,sha256=TM1Y9Cqbwk55JVfxD-_bpGLtZQAeN9RovQlqHK6eOTY,1485
702
+ scout_browser-4.103.3.dist-info/RECORD,,