diff --git a/.gitignore b/.gitignore index 118f812c..71244524 100644 --- a/.gitignore +++ b/.gitignore @@ -38,3 +38,5 @@ ENV/ env.bak/ venv.bak/ .DS_store + +ui/package-lock.json diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 00000000..d9143d36 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,6 @@ +{ + "name": "bedhost", + "lockfileVersion": 3, + "requires": true, + "packages": {} +} diff --git a/ui/.eslintrc.cjs b/ui/.eslintrc.cjs index d6c95379..172ad0d1 100644 --- a/ui/.eslintrc.cjs +++ b/ui/.eslintrc.cjs @@ -1,18 +1,11 @@ module.exports = { root: true, env: { browser: true, es2020: true }, - extends: [ - 'eslint:recommended', - 'plugin:@typescript-eslint/recommended', - 'plugin:react-hooks/recommended', - ], + extends: ['eslint:recommended', 'plugin:@typescript-eslint/recommended', 'plugin:react-hooks/recommended'], ignorePatterns: ['dist', '.eslintrc.cjs'], parser: '@typescript-eslint/parser', plugins: ['react-refresh'], rules: { - 'react-refresh/only-export-components': [ - 'warn', - { allowConstantExport: true }, - ], + 'react-refresh/only-export-components': ['warn', { allowConstantExport: true }], }, -} +}; diff --git a/ui/bedbase-types.d.ts b/ui/bedbase-types.d.ts index 95a5be88..e449f356 100644 --- a/ui/bedbase-types.d.ts +++ b/ui/bedbase-types.d.ts @@ -4,3069 +4,3069 @@ */ export interface paths { - "/v1": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * API intro page - * @description Display the index UI page - */ - get: operations["index_v1_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/docs/changelog": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** Release notes */ - get: operations["changelog_v1_docs_changelog_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** Lending Page */ - get: operations["lending_page__get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/stats": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get summary statistics for BEDbase platform - * @description Returns statistics - */ - get: operations["get_bedbase_db_stats_v1_stats_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/detailed-stats": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get detailed statistics for BEDbase platform, including number of files for each genome - * @description Returns detailed statistics - */ - get: operations["get_detailed_stats_v1_detailed_stats_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/detailed-usage": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get detailed usage statistics for BEDbase platform - * @description Returns detailed usage statistics - */ - get: operations["get_detailed_usage_v1_detailed_usage_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/genomes": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get available genomes - * @description Returns statistics - */ - get: operations["get_bedbase_db_stats_v1_genomes_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/assays": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get available assays - * @description Returns statistics - */ - get: operations["get_bedbase_db_stats_v1_assays_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/service-info": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * GA4GH service info - * @description Returns information about this service, such as versions, name, etc. - */ - get: operations["service_info_v1_service_info_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/files/{file_path}": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** Redirect To Download */ - get: operations["redirect_to_download_v1_files__file_path__get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bed/example": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get example BED record metadata - * @description Get metadata for an example BED record. - */ - get: operations["get_example_bed_record_v1_bed_example_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bed/list": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Paged list of all BED records - * @description Returns list of BED files in the database with optional filters. - */ - get: operations["list_beds_v1_bed_list_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bed/{bed_id}/metadata": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get metadata for a single BED record - * @description Example - * bed_id: bbad85f21962bb8d972444f7f9a3a932 - */ - get: operations["get_bed_metadata_v1_bed__bed_id__metadata_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bed/{bed_id}/metadata/plots": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get plots for a single BED record - * @description Example - * bed_id: bbad85f21962bb8d972444f7f9a3a932 - */ - get: operations["get_bed_plots_v1_bed__bed_id__metadata_plots_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bed/{bed_id}/metadata/files": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get metadata for a single BED record - * @description Example - * bed_id: bbad85f21962bb8d972444f7f9a3a932 - */ - get: operations["get_bed_files_v1_bed__bed_id__metadata_files_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bed/{bed_id}/metadata/stats": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get stats for a single BED record - * @description Example - * bed_id: bbad85f21962bb8d972444f7f9a3a932 - */ - get: operations["get_bed_stats_v1_bed__bed_id__metadata_stats_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bed/{bed_id}/metadata/classification": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get classification of single BED file - * @description Example - * bed_id: bbad85f21962bb8d972444f7f9a3a932 - */ - get: operations["get_bed_classification_v1_bed__bed_id__metadata_classification_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bed/{bed_id}/metadata/raw": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get raw metadata for a single BED record - * @description Returns raw metadata for a single BED record. This metadata is stored in PEPHub. And is not verified.Example - * bed_id: bbad85f21962bb8d972444f7f9a3a932 - */ - get: operations["get_bed_pephub_v1_bed__bed_id__metadata_raw_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bed/{bed_id}/neighbours": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get nearest neighbours for a single BED record - * @description Returns most similar BED files in the database. Example - * bed_id: bbad85f21962bb8d972444f7f9a3a932 - */ - get: operations["get_bed_neighbours_v1_bed__bed_id__neighbours_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bed/{bed_id}/embedding": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get embeddings for a single BED record - * @description Returns embeddings for a single BED record. - */ - get: operations["get_bed_embedding_v1_bed__bed_id__embedding_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bed/embed": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - get?: never; - put?: never; - /** - * Get embeddings for a bed file. - * @description Create embedding for bed file - */ - post: operations["embed_bed_file_v1_bed_embed_post"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bed/missing_plots": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get missing plots for a bed file. - * @description Get missing plots for a bed file - * - * example -> plot_id: gccontent - */ - get: operations["missing_plots_v1_bed_missing_plots_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bed/{bed_id}/regions/{chr_num}": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get regions from a BED file that overlap a query region. - * @description Returns the queried regions with provided ID and optional query parameters - */ - get: operations["get_regions_for_bedfile_v1_bed__bed_id__regions__chr_num__get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bed/search/text": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - get?: never; - put?: never; - /** - * Search for a BedFile - * @description Search for a BedFile by a text query. - * - * By default, it searches in the 'hg38' genome. To search in a different genome, specify the `genome` parameter. eg. mm10 - * Example: query="cancer" - */ - post: operations["text_to_bed_search_v1_bed_search_text_post"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bed/search/exact": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - get?: never; - put?: never; - /** Search for exact match of metadata in bed files */ - post: operations["text_to_bed_search_v1_bed_search_exact_post"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bed/search/bed": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - get?: never; - put?: never; - /** Search for similar bed files */ - post: operations["bed_to_bed_search_v1_bed_search_bed_post"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bed/{bed_id}/tokens/{universe_id}": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get tokenized of bed file - * @description Return univers of bed file - * Example: bed: 0dcdf8986a72a3d85805bbc9493a1302 | universe: 58dee1672b7e581c8e1312bd4ca6b3c7 - */ - get: operations["get_tokens_v1_bed__bed_id__tokens__universe_id__get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bed/{bed_id}/tokens/{universe_id}/info": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get link to tokenized bed file - * @description Return link to tokenized bed file - * Example: bed: 0dcdf8986a72a3d85805bbc9493a1302 | universe: 58dee1672b7e581c8e1312bd4ca6b3c7 - */ - get: operations["get_tokens_v1_bed__bed_id__tokens__universe_id__info_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bed/{bed_id}/genome-stats": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get reference genome validation results - * @description Return reference genome validation results for a bed file - * Example: bed: 0dcdf8986a72a3d85805bbc9493a1302 - */ - get: operations["get_ref_gen_results_v1_bed__bed_id__genome_stats_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bedset/example": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** Get metadata for an example BEDset record */ - get: operations["get_example_bedset_record_v1_bedset_example_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bedset/list": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Paged list of all BEDset records - * @description Returns a list of BEDset records in the database with optional filters and search. - */ - get: operations["list_bedsets_v1_bedset_list_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bedset/{bedset_id}/metadata": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get all metadata for a single BEDset record - * @description Example - * bed_id: gse218680 - */ - get: operations["get_bedset_metadata_v1_bedset__bedset_id__metadata_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bedset/{bedset_id}/pep": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Download PEP project for a single BEDset record - * @description Example - * bed_id: gse218680 - */ - get: operations["get_bedset_pep_v1_bedset__bedset_id__pep_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bedset/{bedset_id}/metadata/plots": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get plots for single bedset record - * @description Example - * bed_id: gse218680 - */ - get: operations["get_bedset_metadata_v1_bedset__bedset_id__metadata_plots_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bedset/{bedset_id}/metadata/stats": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get stats for a single BEDSET record - * @description Example - * bed_id: gse218680 - */ - get: operations["get_bedset_metadata_v1_bedset__bedset_id__metadata_stats_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bedset/{bedset_id}/bedfiles": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get Bedfiles In Bedset - * @description Example - * bed_id: gse218680 - */ - get: operations["get_bedfiles_in_bedset_v1_bedset__bedset_id__bedfiles_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/bedset/{bedset_id}/track_hub": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get Track Hub Bedset - * @description Generate track hub files for the BED set - */ - get: operations["get_track_hub_bedset_v1_bedset__bedset_id__track_hub_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - /** - * Get Track Hub Bedset - * @description Generate track hub files for the BED set - */ - head: operations["get_track_hub_bedset_v1_bedset__bedset_id__track_hub_head"]; - patch?: never; - trace?: never; - }; - "/v1/bedset/create": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - get?: never; - put?: never; - /** - * Create Bedset - * @description Create a new bedset by providing registry path to the PEPhub project - */ - post: operations["create_bedset_v1_bedset_create_post"]; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/objects/{object_id}": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get DRS object metadata - * @description Returns metadata about a DrsObject. - */ - get: operations["get_drs_object_metadata_v1_objects__object_id__get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/objects/{object_id}/access/{access_id}": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Get URL where you can retrieve files - * @description Returns a URL that can be used to fetch the bytes of a DrsObject. - */ - get: operations["get_object_bytes_url_v1_objects__object_id__access__access_id__get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/objects/{object_id}/access/{access_id}/bytes": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Download actual file - * @description Returns the bytes of a DrsObject. - */ - get: operations["get_object_bytes_v1_objects__object_id__access__access_id__bytes_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/v1/objects/{object_id}/access/{access_id}/thumbnail": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** - * Download thumbnail file - * @description Returns the bytes of a thumbnail of a DrsObject - */ - get: operations["get_object_thumbnail_v1_objects__object_id__access__access_id__thumbnail_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; + '/v1': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * API intro page + * @description Display the index UI page + */ + get: operations['index_v1_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/docs/changelog': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Release notes */ + get: operations['changelog_v1_docs_changelog_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Lending Page */ + get: operations['lending_page__get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/stats': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get summary statistics for BEDbase platform + * @description Returns statistics + */ + get: operations['get_bedbase_db_stats_v1_stats_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/detailed-stats': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get detailed statistics for BEDbase platform, including number of files for each genome + * @description Returns detailed statistics + */ + get: operations['get_detailed_stats_v1_detailed_stats_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/detailed-usage': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get detailed usage statistics for BEDbase platform + * @description Returns detailed usage statistics + */ + get: operations['get_detailed_usage_v1_detailed_usage_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/genomes': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get available genomes + * @description Returns statistics + */ + get: operations['get_bedbase_db_stats_v1_genomes_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/assays': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get available assays + * @description Returns statistics + */ + get: operations['get_bedbase_db_stats_v1_assays_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/service-info': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * GA4GH service info + * @description Returns information about this service, such as versions, name, etc. + */ + get: operations['service_info_v1_service_info_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/files/{file_path}': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Redirect To Download */ + get: operations['redirect_to_download_v1_files__file_path__get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bed/example': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get example BED record metadata + * @description Get metadata for an example BED record. + */ + get: operations['get_example_bed_record_v1_bed_example_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bed/list': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Paged list of all BED records + * @description Returns list of BED files in the database with optional filters. + */ + get: operations['list_beds_v1_bed_list_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bed/{bed_id}/metadata': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get metadata for a single BED record + * @description Example + * bed_id: bbad85f21962bb8d972444f7f9a3a932 + */ + get: operations['get_bed_metadata_v1_bed__bed_id__metadata_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bed/{bed_id}/metadata/plots': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get plots for a single BED record + * @description Example + * bed_id: bbad85f21962bb8d972444f7f9a3a932 + */ + get: operations['get_bed_plots_v1_bed__bed_id__metadata_plots_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bed/{bed_id}/metadata/files': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get metadata for a single BED record + * @description Example + * bed_id: bbad85f21962bb8d972444f7f9a3a932 + */ + get: operations['get_bed_files_v1_bed__bed_id__metadata_files_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bed/{bed_id}/metadata/stats': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get stats for a single BED record + * @description Example + * bed_id: bbad85f21962bb8d972444f7f9a3a932 + */ + get: operations['get_bed_stats_v1_bed__bed_id__metadata_stats_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bed/{bed_id}/metadata/classification': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get classification of single BED file + * @description Example + * bed_id: bbad85f21962bb8d972444f7f9a3a932 + */ + get: operations['get_bed_classification_v1_bed__bed_id__metadata_classification_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bed/{bed_id}/metadata/raw': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get raw metadata for a single BED record + * @description Returns raw metadata for a single BED record. This metadata is stored in PEPHub. And is not verified.Example + * bed_id: bbad85f21962bb8d972444f7f9a3a932 + */ + get: operations['get_bed_pephub_v1_bed__bed_id__metadata_raw_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bed/{bed_id}/neighbours': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get nearest neighbours for a single BED record + * @description Returns most similar BED files in the database. Example + * bed_id: bbad85f21962bb8d972444f7f9a3a932 + */ + get: operations['get_bed_neighbours_v1_bed__bed_id__neighbours_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bed/{bed_id}/embedding': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get embeddings for a single BED record + * @description Returns embeddings for a single BED record. + */ + get: operations['get_bed_embedding_v1_bed__bed_id__embedding_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bed/embed': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + /** + * Get embeddings for a bed file. + * @description Create embedding for bed file + */ + post: operations['embed_bed_file_v1_bed_embed_post']; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bed/missing_plots': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get missing plots for a bed file. + * @description Get missing plots for a bed file + * + * example -> plot_id: gccontent + */ + get: operations['missing_plots_v1_bed_missing_plots_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bed/{bed_id}/regions/{chr_num}': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get regions from a BED file that overlap a query region. + * @description Returns the queried regions with provided ID and optional query parameters + */ + get: operations['get_regions_for_bedfile_v1_bed__bed_id__regions__chr_num__get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bed/search/text': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + /** + * Search for a BedFile + * @description Search for a BedFile by a text query. + * + * By default, it searches in the 'hg38' genome. To search in a different genome, specify the `genome` parameter. eg. mm10 + * Example: query="cancer" + */ + post: operations['text_to_bed_search_v1_bed_search_text_post']; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bed/search/exact': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + /** Search for exact match of metadata in bed files */ + post: operations['text_to_bed_search_v1_bed_search_exact_post']; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bed/search/bed': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + /** Search for similar bed files */ + post: operations['bed_to_bed_search_v1_bed_search_bed_post']; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bed/{bed_id}/tokens/{universe_id}': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get tokenized of bed file + * @description Return univers of bed file + * Example: bed: 0dcdf8986a72a3d85805bbc9493a1302 | universe: 58dee1672b7e581c8e1312bd4ca6b3c7 + */ + get: operations['get_tokens_v1_bed__bed_id__tokens__universe_id__get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bed/{bed_id}/tokens/{universe_id}/info': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get link to tokenized bed file + * @description Return link to tokenized bed file + * Example: bed: 0dcdf8986a72a3d85805bbc9493a1302 | universe: 58dee1672b7e581c8e1312bd4ca6b3c7 + */ + get: operations['get_tokens_v1_bed__bed_id__tokens__universe_id__info_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bed/{bed_id}/genome-stats': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get reference genome validation results + * @description Return reference genome validation results for a bed file + * Example: bed: 0dcdf8986a72a3d85805bbc9493a1302 + */ + get: operations['get_ref_gen_results_v1_bed__bed_id__genome_stats_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bedset/example': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** Get metadata for an example BEDset record */ + get: operations['get_example_bedset_record_v1_bedset_example_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bedset/list': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Paged list of all BEDset records + * @description Returns a list of BEDset records in the database with optional filters and search. + */ + get: operations['list_bedsets_v1_bedset_list_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bedset/{bedset_id}/metadata': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get all metadata for a single BEDset record + * @description Example + * bed_id: gse218680 + */ + get: operations['get_bedset_metadata_v1_bedset__bedset_id__metadata_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bedset/{bedset_id}/pep': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Download PEP project for a single BEDset record + * @description Example + * bed_id: gse218680 + */ + get: operations['get_bedset_pep_v1_bedset__bedset_id__pep_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bedset/{bedset_id}/metadata/plots': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get plots for single bedset record + * @description Example + * bed_id: gse218680 + */ + get: operations['get_bedset_metadata_v1_bedset__bedset_id__metadata_plots_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bedset/{bedset_id}/metadata/stats': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get stats for a single BEDSET record + * @description Example + * bed_id: gse218680 + */ + get: operations['get_bedset_metadata_v1_bedset__bedset_id__metadata_stats_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bedset/{bedset_id}/bedfiles': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get Bedfiles In Bedset + * @description Example + * bed_id: gse218680 + */ + get: operations['get_bedfiles_in_bedset_v1_bedset__bedset_id__bedfiles_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/bedset/{bedset_id}/track_hub': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get Track Hub Bedset + * @description Generate track hub files for the BED set + */ + get: operations['get_track_hub_bedset_v1_bedset__bedset_id__track_hub_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + /** + * Get Track Hub Bedset + * @description Generate track hub files for the BED set + */ + head: operations['get_track_hub_bedset_v1_bedset__bedset_id__track_hub_head']; + patch?: never; + trace?: never; + }; + '/v1/bedset/create': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + get?: never; + put?: never; + /** + * Create Bedset + * @description Create a new bedset by providing registry path to the PEPhub project + */ + post: operations['create_bedset_v1_bedset_create_post']; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/objects/{object_id}': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get DRS object metadata + * @description Returns metadata about a DrsObject. + */ + get: operations['get_drs_object_metadata_v1_objects__object_id__get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/objects/{object_id}/access/{access_id}': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Get URL where you can retrieve files + * @description Returns a URL that can be used to fetch the bytes of a DrsObject. + */ + get: operations['get_object_bytes_url_v1_objects__object_id__access__access_id__get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/objects/{object_id}/access/{access_id}/bytes': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Download actual file + * @description Returns the bytes of a DrsObject. + */ + get: operations['get_object_bytes_v1_objects__object_id__access__access_id__bytes_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; + '/v1/objects/{object_id}/access/{access_id}/thumbnail': { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + /** + * Download thumbnail file + * @description Returns the bytes of a thumbnail of a DrsObject + */ + get: operations['get_object_thumbnail_v1_objects__object_id__access__access_id__thumbnail_get']; + put?: never; + post?: never; + delete?: never; + options?: never; + head?: never; + patch?: never; + trace?: never; + }; } export type webhooks = Record; export interface components { - schemas: { - /** AccessMethod */ - AccessMethod: { - /** Type */ - type: string; - access_url?: components["schemas"]["AccessURL"] | null; - /** Access Id */ - access_id?: string | null; - /** Region */ - region?: string | null; - }; - /** AccessURL */ - AccessURL: { - /** Url */ - url: string; - /** Headers */ - headers?: Record | null; - }; - /** BaseListResponse */ - BaseListResponse: { - /** Count */ - count: number; - /** Limit */ - limit: number; - /** Offset */ - offset: number; - /** Results */ - results: unknown[]; - }; - /** BedClassification */ - BedClassification: { - /** Name */ - name?: string | null; - /** Genome Alias */ - genome_alias?: string; - /** Genome Digest */ - genome_digest?: string | null; - /** - * Bed Compliance - * @default bed3 - */ - bed_compliance: string; - /** Data Format */ - data_format?: string | null; - /** - * Compliant Columns - * @default 3 - */ - compliant_columns: number; - /** - * Non Compliant Columns - * @default 0 - */ - non_compliant_columns: number; - /** Header */ - header?: string | null; - }; - /** BedEmbeddingResult */ - BedEmbeddingResult: { - /** Identifier */ - identifier: string; - /** Payload */ - payload: Record; - /** Embedding */ - embedding: number[]; - }; - /** BedFiles */ - BedFiles: { - bed_file?: components["schemas"]["FileModel"] | null; - bigbed_file?: components["schemas"]["FileModel"] | null; - }; - /** BedListResult */ - BedListResult: { - /** Count */ - count: number; - /** Limit */ - limit: number; - /** Offset */ - offset: number; - /** Results */ - results: components["schemas"]["BedMetadataBasic"][]; - }; - /** BedListSearchResult */ - BedListSearchResult: { - /** Count */ - count: number; - /** Limit */ - limit: number; - /** Offset */ - offset: number; - /** Results */ - results?: components["schemas"]["QdrantSearchResult"][]; - }; - /** BedMetadataAll */ - BedMetadataAll: { - /** - * Name - * @default - */ - name: string | null; - /** Genome Alias */ - genome_alias?: string; - /** Genome Digest */ - genome_digest?: string | null; - /** - * Bed Compliance - * @default bed3 - */ - bed_compliance: string; - /** Data Format */ - data_format?: string | null; - /** - * Compliant Columns - * @default 3 - */ - compliant_columns: number; - /** - * Non Compliant Columns - * @default 0 - */ - non_compliant_columns: number; - /** Header */ - header?: string | null; - /** Id */ - id: string; - /** Description */ - description?: string | null; - /** - * Submission Date - * Format: date-time - */ - submission_date?: string; - /** Last Update Date */ - last_update_date?: string | null; - /** - * Is Universe - * @default false - */ - is_universe: boolean | null; - /** - * License Id - * @default DUO:0000042 - */ - license_id: string | null; - annotation?: components["schemas"]["StandardMeta"] | null; - /** - * Processed - * @default true - */ - processed: boolean | null; - stats?: components["schemas"]["BedStatsModel"] | null; - plots?: components["schemas"]["BedPlots"] | null; - files?: components["schemas"]["BedFiles"] | null; - universe_metadata?: components["schemas"]["UniverseMetadata"] | null; - /** Raw Metadata */ - raw_metadata?: components["schemas"]["BedPEPHub"] | components["schemas"]["BedPEPHubRestrict"] | null; - /** Bedsets */ - bedsets?: components["schemas"]["BedSetMinimal"][] | null; - }; - /** BedMetadataBasic */ - BedMetadataBasic: { - /** - * Name - * @default - */ - name: string | null; - /** Genome Alias */ - genome_alias?: string; - /** Genome Digest */ - genome_digest?: string | null; - /** - * Bed Compliance - * @default bed3 - */ - bed_compliance: string; - /** Data Format */ - data_format?: string | null; - /** - * Compliant Columns - * @default 3 - */ - compliant_columns: number; - /** - * Non Compliant Columns - * @default 0 - */ - non_compliant_columns: number; - /** Header */ - header?: string | null; - /** Id */ - id: string; - /** Description */ - description?: string | null; - /** - * Submission Date - * Format: date-time - */ - submission_date?: string; - /** Last Update Date */ - last_update_date?: string | null; - /** - * Is Universe - * @default false - */ - is_universe: boolean | null; - /** - * License Id - * @default DUO:0000042 - */ - license_id: string | null; - annotation?: components["schemas"]["StandardMeta"] | null; - /** - * Processed - * @default true - */ - processed: boolean | null; - }; - /** BedPEPHub */ - BedPEPHub: { - /** - * Sample Name - * @default - */ - sample_name: string; - /** - * Genome - * @default - */ - genome: string; - /** - * Organism - * @default - */ - organism: string; - /** - * Species Id - * @default - */ - species_id: string; - /** - * Cell Type - * @default - */ - cell_type: string; - /** - * Cell Line - * @default - */ - cell_line: string; - /** - * Assay - * @description Experimental protocol (e.g. ChIP-seq) - * @default - */ - assay: string; - /** - * Library Source - * @description Library source (e.g. genomic, transcriptomic) - * @default - */ - library_source: string; - /** - * Genotype - * @description Genotype of the sample - * @default - */ - genotype: string; - /** - * Target - * @description Target of the assay (e.g. H3K4me3) - * @default - */ - target: string; - /** - * Antibody - * @description Antibody used in the assay - * @default - */ - antibody: string; - /** - * Treatment - * @description Treatment of the sample (e.g. drug treatment) - * @default - */ - treatment: string; - /** - * Tissue - * @description Tissue type - * @default - */ - tissue: string; - /** - * Global Sample Id - * @description Global sample identifier - * @default - */ - global_sample_id: string; - /** - * Global Experiment Id - * @description Global experiment identifier - * @default - */ - global_experiment_id: string; - /** - * Description - * @description Description of the sample - * @default - */ - description: string; - } & { - [key: string]: unknown; - }; - /** BedPEPHubRestrict */ - BedPEPHubRestrict: { - /** - * Sample Name - * @default - */ - sample_name: string; - /** - * Genome - * @default - */ - genome: string; - /** - * Organism - * @default - */ - organism: string; - /** - * Species Id - * @default - */ - species_id: string; - /** - * Cell Type - * @default - */ - cell_type: string; - /** - * Cell Line - * @default - */ - cell_line: string; - /** - * Assay - * @description Experimental protocol (e.g. ChIP-seq) - * @default - */ - assay: string; - /** - * Library Source - * @description Library source (e.g. genomic, transcriptomic) - * @default - */ - library_source: string; - /** - * Genotype - * @description Genotype of the sample - * @default - */ - genotype: string; - /** - * Target - * @description Target of the assay (e.g. H3K4me3) - * @default - */ - target: string; - /** - * Antibody - * @description Antibody used in the assay - * @default - */ - antibody: string; - /** - * Treatment - * @description Treatment of the sample (e.g. drug treatment) - * @default - */ - treatment: string; - /** - * Tissue - * @description Tissue type - * @default - */ - tissue: string; - /** - * Global Sample Id - * @description Global sample identifier - * @default - */ - global_sample_id: string; - /** - * Global Experiment Id - * @description Global experiment identifier - * @default - */ - global_experiment_id: string; - /** - * Description - * @description Description of the sample - * @default - */ - description: string; - }; - /** BedPlots */ - BedPlots: { - chrombins?: components["schemas"]["FileModel"]; - gccontent?: components["schemas"]["FileModel"]; - partitions?: components["schemas"]["FileModel"]; - expected_partitions?: components["schemas"]["FileModel"]; - cumulative_partitions?: components["schemas"]["FileModel"]; - widths_histogram?: components["schemas"]["FileModel"]; - neighbor_distances?: components["schemas"]["FileModel"]; - open_chromatin?: components["schemas"]["FileModel"]; - tss_distance?: components["schemas"]["FileModel"]; - }; - /** BedSetBedFiles */ - BedSetBedFiles: { - /** Count */ - count: number; - /** Results */ - results: components["schemas"]["BedMetadataBasic"][]; - }; - /** BedSetListResult */ - BedSetListResult: { - /** Count */ - count: number; - /** Limit */ - limit: number; - /** Offset */ - offset: number; - /** Results */ - results: components["schemas"]["BedSetMetadata"][]; - }; - /** BedSetMetadata */ - BedSetMetadata: { - /** Id */ - id: string; - /** Name */ - name: string; - /** Md5Sum */ - md5sum: string; - /** - * Submission Date - * Format: date-time - */ - submission_date?: string; - /** - * Last Update Date - * Format: date-time - */ - last_update_date?: string; - statistics?: components["schemas"]["BedSetStats"] | null; - plots?: components["schemas"]["BedSetPlots"] | null; - /** Description */ - description?: string; - /** Summary */ - summary?: string; - /** Bed Ids */ - bed_ids?: string[]; - /** Author */ - author?: string | null; - /** Source */ - source?: string | null; - }; - /** BedSetMinimal */ - BedSetMinimal: { - /** Id */ - id: string; - /** Name */ - name?: string | null; - /** Description */ - description?: string | null; - }; - /** BedSetPlots */ - BedSetPlots: { - region_commonality?: components["schemas"]["FileModel"]; - }; - /** BedSetStats */ - BedSetStats: { - mean?: components["schemas"]["BedStatsModel"]; - sd?: components["schemas"]["BedStatsModel"]; - }; - /** BedStatsModel */ - BedStatsModel: { - /** Number Of Regions */ - number_of_regions?: number | null; - /** Gc Content */ - gc_content?: number | null; - /** Median Tss Dist */ - median_tss_dist?: number | null; - /** Mean Region Width */ - mean_region_width?: number | null; - /** Exon Frequency */ - exon_frequency?: number | null; - /** Exon Percentage */ - exon_percentage?: number | null; - /** Intron Frequency */ - intron_frequency?: number | null; - /** Intron Percentage */ - intron_percentage?: number | null; - /** Intergenic Percentage */ - intergenic_percentage?: number | null; - /** Intergenic Frequency */ - intergenic_frequency?: number | null; - /** Promotercore Frequency */ - promotercore_frequency?: number | null; - /** Promotercore Percentage */ - promotercore_percentage?: number | null; - /** Fiveutr Frequency */ - fiveutr_frequency?: number | null; - /** Fiveutr Percentage */ - fiveutr_percentage?: number | null; - /** Threeutr Frequency */ - threeutr_frequency?: number | null; - /** Threeutr Percentage */ - threeutr_percentage?: number | null; - /** Promoterprox Frequency */ - promoterprox_frequency?: number | null; - /** Promoterprox Percentage */ - promoterprox_percentage?: number | null; - }; - /** BinValues */ - BinValues: { - /** Bins */ - bins: (number | string)[]; - /** Counts */ - counts: number[]; - /** Mean */ - mean: number; - /** Median */ - median: number; - }; - /** Body_bed_to_bed_search_v1_bed_search_bed_post */ - Body_bed_to_bed_search_v1_bed_search_bed_post: { - /** - * File - * Format: binary - */ - file?: string; - }; - /** Body_embed_bed_file_v1_bed_embed_post */ - Body_embed_bed_file_v1_bed_embed_post: { - /** - * File - * Format: binary - */ - file?: string; - }; - /** ComponentVersions */ - ComponentVersions: { - /** Bedhost Version */ - bedhost_version: string; - /** Bbconf Version */ - bbconf_version: string; - /** Python Version */ - python_version: string; - /** Geniml Version */ - geniml_version: string; - /** Openapi Version */ - openapi_version: string; - }; - /** CreateBEDsetRequest */ - CreateBEDsetRequest: { - /** Registry Path */ - registry_path: string; - }; - /** DRSModel */ - DRSModel: { - /** Id */ - id: string; - /** Name */ - name?: string | null; - /** Self Uri */ - self_uri: string; - /** Size */ - size?: number | null; - /** Created Time */ - created_time?: string | null; - /** Updated Time */ - updated_time?: string | null; - /** Checksums */ - checksums: string; - /** Access Methods */ - access_methods: components["schemas"]["AccessMethod"][]; - /** Description */ - description?: string | null; - }; - /** EmbeddingModels */ - EmbeddingModels: { - /** Region2Vec */ - region2vec: string; - /** Text2Vec */ - text2vec: string; - }; - /** FileModel */ - FileModel: { - /** Name */ - name: string; - /** Title */ - title?: string | null; - /** Path */ - path: string; - /** File Digest */ - file_digest?: string | null; - /** Thumbnail Path */ - thumbnail_path?: string | null; - /** Description */ - description?: string | null; - /** Size */ - size?: number | null; - /** Object Id */ - object_id?: string | null; - /** Access Methods */ - access_methods?: components["schemas"]["AccessMethod"][]; - }; - /** FileStats */ - FileStats: { - /** Bed Compliance */ - bed_compliance: { - [key: string]: number; - }; - /** Data Format */ - data_format: { - [key: string]: number; - }; - /** File Genome */ - file_genome: { - [key: string]: number; - }; - /** File Organism */ - file_organism: { - [key: string]: number; - }; - /** File Assay */ - file_assay: { - [key: string]: number; - }; - /** Geo Status */ - geo_status: { - [key: string]: number; - }; - /** Bed Comments */ - bed_comments: { - [key: string]: number; - }; - mean_region_width: components["schemas"]["BinValues"]; - file_size: components["schemas"]["BinValues"]; - number_of_regions: components["schemas"]["BinValues"]; - geo: components["schemas"]["GEOStatistics"]; - }; - /** - * GEOStatistics - * @description GEO statistics for files. - */ - GEOStatistics: { - /** Number Of Files */ - number_of_files: { - [key: string]: number; - }; - /** Cumulative Number Of Files */ - cumulative_number_of_files: { - [key: string]: number; - }; - file_sizes: components["schemas"]["BinValues"]; - }; - /** HTTPValidationError */ - HTTPValidationError: { - /** Detail */ - detail?: components["schemas"]["ValidationError"][]; - }; - /** Organization */ - Organization: { - /** Name */ - name: string; - /** Url */ - url: string; - }; - /** QdrantSearchResult */ - QdrantSearchResult: { - /** Id */ - id: string; - /** Payload */ - payload?: Record; - /** Score */ - score?: number; - metadata?: components["schemas"]["BedMetadataBasic"] | null; - }; - /** RefGenValidModel */ - RefGenValidModel: { - /** Provided Genome */ - provided_genome: string; - /** Compared Genome */ - genome_digest: string; - compared_genome: string; - /** - * Xs - * @default 0 - */ - xs: number; - /** Oobr */ - oobr?: number | null; - /** Sequence Fit */ - sequence_fit?: number | null; - /** Assigned Points */ - assigned_points: number; - /** Tier Ranking */ - tier_ranking: number; - }; - /** RefGenValidReturnModel */ - RefGenValidReturnModel: { - /** Id */ - id: string; - /** Provided Genome */ - provided_genome?: string | null; - /** Compared Genome */ - compared_genome: components["schemas"]["RefGenValidModel"][]; - }; - /** ServiceInfoResponse */ - ServiceInfoResponse: { - /** Id */ - id: string; - /** Name */ - name: string; - type: components["schemas"]["Type"]; - /** Description */ - description: string; - organization: components["schemas"]["Organization"]; - /** Contacturl */ - contactUrl: string; - /** Documentationurl */ - documentationUrl: string; - /** Updatedat */ - updatedAt: string; - /** Environment */ - environment: string; - /** Version */ - version: string; - component_versions: components["schemas"]["ComponentVersions"]; - embedding_models: components["schemas"]["EmbeddingModels"]; - }; - /** - * StandardMeta - * @description Standardized Bed file metadata - */ - StandardMeta: { - /** - * Organism - * @description Name of species. e.g. Homo sapiens. - * @default - */ - organism: string; - /** - * Species Id - * @default - */ - species_id: string; - /** - * Genotype - * @description Genotype of the sample - * @default - */ - genotype: string; - /** - * Phenotype - * @description Phenotype of the sample - * @default - */ - phenotype: string; - /** - * Description - * @default - */ - description: string | null; - /** - * Cell Type - * @description specific kind of cell with distinct characteristics found in an organism. e.g. Neurons, Hepatocytes, Adipocytes - * @default - */ - cell_type: string; - /** - * Cell Line - * @description population of cells derived from a single cell and cultured in the lab for extended use, e.g. HeLa, HepG2, k562 - * @default - */ - cell_line: string; - /** - * Tissue - * @description Tissue type - * @default - */ - tissue: string; - /** - * Library Source - * @description Library source (e.g. genomic, transcriptomic) - * @default - */ - library_source: string; - /** - * Assay - * @description Experimental protocol (e.g. ChIP-seq) - * @default - */ - assay: string; - /** - * Antibody - * @description Antibody used in the assay - * @default - */ - antibody: string; - /** - * Target - * @description Target of the assay (e.g. H3K4me3) - * @default - */ - target: string; - /** - * Treatment - * @description Treatment of the sample (e.g. drug treatment) - * @default - */ - treatment: string; - /** - * Global Sample Id - * @description Global sample identifier. e.g. GSM000 - * @default - */ - global_sample_id: string[] | null; - /** - * Global Experiment Id - * @description Global experiment identifier. e.g. GSE000 - * @default - */ - global_experiment_id: string[] | null; - /** - * Original File Name - * @description Original file name - * @default - */ - original_file_name: string; - }; - /** StatsReturn */ - StatsReturn: { - /** - * Bedfiles Number - * @default 0 - */ - bedfiles_number: number; - /** - * Bedsets Number - * @default 0 - */ - bedsets_number: number; - /** - * Genomes Number - * @default 0 - */ - genomes_number: number; - }; - /** TokenizedBedResponse */ - TokenizedBedResponse: { - /** Universe Id */ - universe_id: string; - /** Bed Id */ - bed_id: string; - /** Tokenized Bed */ - tokenized_bed: number[]; - }; - /** TokenizedPathResponse */ - TokenizedPathResponse: { - /** Bed Id */ - bed_id: string; - /** Universe Id */ - universe_id: string; - /** File Path */ - file_path: string; - /** Endpoint Url */ - endpoint_url: string; - }; - /** Type */ - Type: { - /** Group */ - group: string; - /** Artifact */ - artifact: string; - /** Version */ - version: string; - }; - /** UniverseMetadata */ - UniverseMetadata: { - /** Construct Method */ - construct_method?: string | null; - /** Bedset Id */ - bedset_id?: string | null; - }; - /** UsageStats */ - UsageStats: { - /** Bed Metadata */ - bed_metadata: { - [key: string]: number; - }; - /** Bedset Metadata */ - bedset_metadata: { - [key: string]: number; - }; - /** Bed Search Terms */ - bed_search_terms: { - [key: string]: number; - }; - /** Bedset Search Terms */ - bedset_search_terms: { - [key: string]: number; - }; - /** Bed Downloads */ - bed_downloads: { - [key: string]: number; - }; - }; - /** ValidationError */ - ValidationError: { - /** Location */ - loc: (string | number)[]; - /** Message */ - msg: string; - /** Error Type */ - type: string; - }; - }; - responses: never; - parameters: never; - requestBodies: never; - headers: never; - pathItems: never; + schemas: { + /** AccessMethod */ + AccessMethod: { + /** Type */ + type: string; + access_url?: components['schemas']['AccessURL'] | null; + /** Access Id */ + access_id?: string | null; + /** Region */ + region?: string | null; + }; + /** AccessURL */ + AccessURL: { + /** Url */ + url: string; + /** Headers */ + headers?: Record | null; + }; + /** BaseListResponse */ + BaseListResponse: { + /** Count */ + count: number; + /** Limit */ + limit: number; + /** Offset */ + offset: number; + /** Results */ + results: unknown[]; + }; + /** BedClassification */ + BedClassification: { + /** Name */ + name?: string | null; + /** Genome Alias */ + genome_alias?: string; + /** Genome Digest */ + genome_digest?: string | null; + /** + * Bed Compliance + * @default bed3 + */ + bed_compliance: string; + /** Data Format */ + data_format?: string | null; + /** + * Compliant Columns + * @default 3 + */ + compliant_columns: number; + /** + * Non Compliant Columns + * @default 0 + */ + non_compliant_columns: number; + /** Header */ + header?: string | null; + }; + /** BedEmbeddingResult */ + BedEmbeddingResult: { + /** Identifier */ + identifier: string; + /** Payload */ + payload: Record; + /** Embedding */ + embedding: number[]; + }; + /** BedFiles */ + BedFiles: { + bed_file?: components['schemas']['FileModel'] | null; + bigbed_file?: components['schemas']['FileModel'] | null; + }; + /** BedListResult */ + BedListResult: { + /** Count */ + count: number; + /** Limit */ + limit: number; + /** Offset */ + offset: number; + /** Results */ + results: components['schemas']['BedMetadataBasic'][]; + }; + /** BedListSearchResult */ + BedListSearchResult: { + /** Count */ + count: number; + /** Limit */ + limit: number; + /** Offset */ + offset: number; + /** Results */ + results?: components['schemas']['QdrantSearchResult'][]; + }; + /** BedMetadataAll */ + BedMetadataAll: { + /** + * Name + * @default + */ + name: string | null; + /** Genome Alias */ + genome_alias?: string; + /** Genome Digest */ + genome_digest?: string | null; + /** + * Bed Compliance + * @default bed3 + */ + bed_compliance: string; + /** Data Format */ + data_format?: string | null; + /** + * Compliant Columns + * @default 3 + */ + compliant_columns: number; + /** + * Non Compliant Columns + * @default 0 + */ + non_compliant_columns: number; + /** Header */ + header?: string | null; + /** Id */ + id: string; + /** Description */ + description?: string | null; + /** + * Submission Date + * Format: date-time + */ + submission_date?: string; + /** Last Update Date */ + last_update_date?: string | null; + /** + * Is Universe + * @default false + */ + is_universe: boolean | null; + /** + * License Id + * @default DUO:0000042 + */ + license_id: string | null; + annotation?: components['schemas']['StandardMeta'] | null; + /** + * Processed + * @default true + */ + processed: boolean | null; + stats?: components['schemas']['BedStatsModel'] | null; + plots?: components['schemas']['BedPlots'] | null; + files?: components['schemas']['BedFiles'] | null; + universe_metadata?: components['schemas']['UniverseMetadata'] | null; + /** Raw Metadata */ + raw_metadata?: components['schemas']['BedPEPHub'] | components['schemas']['BedPEPHubRestrict'] | null; + /** Bedsets */ + bedsets?: components['schemas']['BedSetMinimal'][] | null; + }; + /** BedMetadataBasic */ + BedMetadataBasic: { + /** + * Name + * @default + */ + name: string | null; + /** Genome Alias */ + genome_alias?: string; + /** Genome Digest */ + genome_digest?: string | null; + /** + * Bed Compliance + * @default bed3 + */ + bed_compliance: string; + /** Data Format */ + data_format?: string | null; + /** + * Compliant Columns + * @default 3 + */ + compliant_columns: number; + /** + * Non Compliant Columns + * @default 0 + */ + non_compliant_columns: number; + /** Header */ + header?: string | null; + /** Id */ + id: string; + /** Description */ + description?: string | null; + /** + * Submission Date + * Format: date-time + */ + submission_date?: string; + /** Last Update Date */ + last_update_date?: string | null; + /** + * Is Universe + * @default false + */ + is_universe: boolean | null; + /** + * License Id + * @default DUO:0000042 + */ + license_id: string | null; + annotation?: components['schemas']['StandardMeta'] | null; + /** + * Processed + * @default true + */ + processed: boolean | null; + }; + /** BedPEPHub */ + BedPEPHub: { + /** + * Sample Name + * @default + */ + sample_name: string; + /** + * Genome + * @default + */ + genome: string; + /** + * Organism + * @default + */ + organism: string; + /** + * Species Id + * @default + */ + species_id: string; + /** + * Cell Type + * @default + */ + cell_type: string; + /** + * Cell Line + * @default + */ + cell_line: string; + /** + * Assay + * @description Experimental protocol (e.g. ChIP-seq) + * @default + */ + assay: string; + /** + * Library Source + * @description Library source (e.g. genomic, transcriptomic) + * @default + */ + library_source: string; + /** + * Genotype + * @description Genotype of the sample + * @default + */ + genotype: string; + /** + * Target + * @description Target of the assay (e.g. H3K4me3) + * @default + */ + target: string; + /** + * Antibody + * @description Antibody used in the assay + * @default + */ + antibody: string; + /** + * Treatment + * @description Treatment of the sample (e.g. drug treatment) + * @default + */ + treatment: string; + /** + * Tissue + * @description Tissue type + * @default + */ + tissue: string; + /** + * Global Sample Id + * @description Global sample identifier + * @default + */ + global_sample_id: string; + /** + * Global Experiment Id + * @description Global experiment identifier + * @default + */ + global_experiment_id: string; + /** + * Description + * @description Description of the sample + * @default + */ + description: string; + } & { + [key: string]: unknown; + }; + /** BedPEPHubRestrict */ + BedPEPHubRestrict: { + /** + * Sample Name + * @default + */ + sample_name: string; + /** + * Genome + * @default + */ + genome: string; + /** + * Organism + * @default + */ + organism: string; + /** + * Species Id + * @default + */ + species_id: string; + /** + * Cell Type + * @default + */ + cell_type: string; + /** + * Cell Line + * @default + */ + cell_line: string; + /** + * Assay + * @description Experimental protocol (e.g. ChIP-seq) + * @default + */ + assay: string; + /** + * Library Source + * @description Library source (e.g. genomic, transcriptomic) + * @default + */ + library_source: string; + /** + * Genotype + * @description Genotype of the sample + * @default + */ + genotype: string; + /** + * Target + * @description Target of the assay (e.g. H3K4me3) + * @default + */ + target: string; + /** + * Antibody + * @description Antibody used in the assay + * @default + */ + antibody: string; + /** + * Treatment + * @description Treatment of the sample (e.g. drug treatment) + * @default + */ + treatment: string; + /** + * Tissue + * @description Tissue type + * @default + */ + tissue: string; + /** + * Global Sample Id + * @description Global sample identifier + * @default + */ + global_sample_id: string; + /** + * Global Experiment Id + * @description Global experiment identifier + * @default + */ + global_experiment_id: string; + /** + * Description + * @description Description of the sample + * @default + */ + description: string; + }; + /** BedPlots */ + BedPlots: { + chrombins?: components['schemas']['FileModel']; + gccontent?: components['schemas']['FileModel']; + partitions?: components['schemas']['FileModel']; + expected_partitions?: components['schemas']['FileModel']; + cumulative_partitions?: components['schemas']['FileModel']; + widths_histogram?: components['schemas']['FileModel']; + neighbor_distances?: components['schemas']['FileModel']; + open_chromatin?: components['schemas']['FileModel']; + tss_distance?: components['schemas']['FileModel']; + }; + /** BedSetBedFiles */ + BedSetBedFiles: { + /** Count */ + count: number; + /** Results */ + results: components['schemas']['BedMetadataBasic'][]; + }; + /** BedSetListResult */ + BedSetListResult: { + /** Count */ + count: number; + /** Limit */ + limit: number; + /** Offset */ + offset: number; + /** Results */ + results: components['schemas']['BedSetMetadata'][]; + }; + /** BedSetMetadata */ + BedSetMetadata: { + /** Id */ + id: string; + /** Name */ + name: string; + /** Md5Sum */ + md5sum: string; + /** + * Submission Date + * Format: date-time + */ + submission_date?: string; + /** + * Last Update Date + * Format: date-time + */ + last_update_date?: string; + statistics?: components['schemas']['BedSetStats'] | null; + plots?: components['schemas']['BedSetPlots'] | null; + /** Description */ + description?: string; + /** Summary */ + summary?: string; + /** Bed Ids */ + bed_ids?: string[]; + /** Author */ + author?: string | null; + /** Source */ + source?: string | null; + }; + /** BedSetMinimal */ + BedSetMinimal: { + /** Id */ + id: string; + /** Name */ + name?: string | null; + /** Description */ + description?: string | null; + }; + /** BedSetPlots */ + BedSetPlots: { + region_commonality?: components['schemas']['FileModel']; + }; + /** BedSetStats */ + BedSetStats: { + mean?: components['schemas']['BedStatsModel']; + sd?: components['schemas']['BedStatsModel']; + }; + /** BedStatsModel */ + BedStatsModel: { + /** Number Of Regions */ + number_of_regions?: number | null; + /** Gc Content */ + gc_content?: number | null; + /** Median Tss Dist */ + median_tss_dist?: number | null; + /** Mean Region Width */ + mean_region_width?: number | null; + /** Exon Frequency */ + exon_frequency?: number | null; + /** Exon Percentage */ + exon_percentage?: number | null; + /** Intron Frequency */ + intron_frequency?: number | null; + /** Intron Percentage */ + intron_percentage?: number | null; + /** Intergenic Percentage */ + intergenic_percentage?: number | null; + /** Intergenic Frequency */ + intergenic_frequency?: number | null; + /** Promotercore Frequency */ + promotercore_frequency?: number | null; + /** Promotercore Percentage */ + promotercore_percentage?: number | null; + /** Fiveutr Frequency */ + fiveutr_frequency?: number | null; + /** Fiveutr Percentage */ + fiveutr_percentage?: number | null; + /** Threeutr Frequency */ + threeutr_frequency?: number | null; + /** Threeutr Percentage */ + threeutr_percentage?: number | null; + /** Promoterprox Frequency */ + promoterprox_frequency?: number | null; + /** Promoterprox Percentage */ + promoterprox_percentage?: number | null; + }; + /** BinValues */ + BinValues: { + /** Bins */ + bins: (number | string)[]; + /** Counts */ + counts: number[]; + /** Mean */ + mean: number; + /** Median */ + median: number; + }; + /** Body_bed_to_bed_search_v1_bed_search_bed_post */ + Body_bed_to_bed_search_v1_bed_search_bed_post: { + /** + * File + * Format: binary + */ + file?: string; + }; + /** Body_embed_bed_file_v1_bed_embed_post */ + Body_embed_bed_file_v1_bed_embed_post: { + /** + * File + * Format: binary + */ + file?: string; + }; + /** ComponentVersions */ + ComponentVersions: { + /** Bedhost Version */ + bedhost_version: string; + /** Bbconf Version */ + bbconf_version: string; + /** Python Version */ + python_version: string; + /** Geniml Version */ + geniml_version: string; + /** Openapi Version */ + openapi_version: string; + }; + /** CreateBEDsetRequest */ + CreateBEDsetRequest: { + /** Registry Path */ + registry_path: string; + }; + /** DRSModel */ + DRSModel: { + /** Id */ + id: string; + /** Name */ + name?: string | null; + /** Self Uri */ + self_uri: string; + /** Size */ + size?: number | null; + /** Created Time */ + created_time?: string | null; + /** Updated Time */ + updated_time?: string | null; + /** Checksums */ + checksums: string; + /** Access Methods */ + access_methods: components['schemas']['AccessMethod'][]; + /** Description */ + description?: string | null; + }; + /** EmbeddingModels */ + EmbeddingModels: { + /** Region2Vec */ + region2vec: string; + /** Text2Vec */ + text2vec: string; + }; + /** FileModel */ + FileModel: { + /** Name */ + name: string; + /** Title */ + title?: string | null; + /** Path */ + path: string; + /** File Digest */ + file_digest?: string | null; + /** Thumbnail Path */ + thumbnail_path?: string | null; + /** Description */ + description?: string | null; + /** Size */ + size?: number | null; + /** Object Id */ + object_id?: string | null; + /** Access Methods */ + access_methods?: components['schemas']['AccessMethod'][]; + }; + /** FileStats */ + FileStats: { + /** Bed Compliance */ + bed_compliance: { + [key: string]: number; + }; + /** Data Format */ + data_format: { + [key: string]: number; + }; + /** File Genome */ + file_genome: { + [key: string]: number; + }; + /** File Organism */ + file_organism: { + [key: string]: number; + }; + /** File Assay */ + file_assay: { + [key: string]: number; + }; + /** Geo Status */ + geo_status: { + [key: string]: number; + }; + /** Bed Comments */ + bed_comments: { + [key: string]: number; + }; + mean_region_width: components['schemas']['BinValues']; + file_size: components['schemas']['BinValues']; + number_of_regions: components['schemas']['BinValues']; + geo: components['schemas']['GEOStatistics']; + }; + /** + * GEOStatistics + * @description GEO statistics for files. + */ + GEOStatistics: { + /** Number Of Files */ + number_of_files: { + [key: string]: number; + }; + /** Cumulative Number Of Files */ + cumulative_number_of_files: { + [key: string]: number; + }; + file_sizes: components['schemas']['BinValues']; + }; + /** HTTPValidationError */ + HTTPValidationError: { + /** Detail */ + detail?: components['schemas']['ValidationError'][]; + }; + /** Organization */ + Organization: { + /** Name */ + name: string; + /** Url */ + url: string; + }; + /** QdrantSearchResult */ + QdrantSearchResult: { + /** Id */ + id: string; + /** Payload */ + payload?: Record; + /** Score */ + score?: number; + metadata?: components['schemas']['BedMetadataBasic'] | null; + }; + /** RefGenValidModel */ + RefGenValidModel: { + /** Provided Genome */ + provided_genome: string; + /** Compared Genome */ + genome_digest: string; + compared_genome: string; + /** + * Xs + * @default 0 + */ + xs: number; + /** Oobr */ + oobr?: number | null; + /** Sequence Fit */ + sequence_fit?: number | null; + /** Assigned Points */ + assigned_points: number; + /** Tier Ranking */ + tier_ranking: number; + }; + /** RefGenValidReturnModel */ + RefGenValidReturnModel: { + /** Id */ + id: string; + /** Provided Genome */ + provided_genome?: string | null; + /** Compared Genome */ + compared_genome: components['schemas']['RefGenValidModel'][]; + }; + /** ServiceInfoResponse */ + ServiceInfoResponse: { + /** Id */ + id: string; + /** Name */ + name: string; + type: components['schemas']['Type']; + /** Description */ + description: string; + organization: components['schemas']['Organization']; + /** Contacturl */ + contactUrl: string; + /** Documentationurl */ + documentationUrl: string; + /** Updatedat */ + updatedAt: string; + /** Environment */ + environment: string; + /** Version */ + version: string; + component_versions: components['schemas']['ComponentVersions']; + embedding_models: components['schemas']['EmbeddingModels']; + }; + /** + * StandardMeta + * @description Standardized Bed file metadata + */ + StandardMeta: { + /** + * Organism + * @description Name of species. e.g. Homo sapiens. + * @default + */ + organism: string; + /** + * Species Id + * @default + */ + species_id: string; + /** + * Genotype + * @description Genotype of the sample + * @default + */ + genotype: string; + /** + * Phenotype + * @description Phenotype of the sample + * @default + */ + phenotype: string; + /** + * Description + * @default + */ + description: string | null; + /** + * Cell Type + * @description specific kind of cell with distinct characteristics found in an organism. e.g. Neurons, Hepatocytes, Adipocytes + * @default + */ + cell_type: string; + /** + * Cell Line + * @description population of cells derived from a single cell and cultured in the lab for extended use, e.g. HeLa, HepG2, k562 + * @default + */ + cell_line: string; + /** + * Tissue + * @description Tissue type + * @default + */ + tissue: string; + /** + * Library Source + * @description Library source (e.g. genomic, transcriptomic) + * @default + */ + library_source: string; + /** + * Assay + * @description Experimental protocol (e.g. ChIP-seq) + * @default + */ + assay: string; + /** + * Antibody + * @description Antibody used in the assay + * @default + */ + antibody: string; + /** + * Target + * @description Target of the assay (e.g. H3K4me3) + * @default + */ + target: string; + /** + * Treatment + * @description Treatment of the sample (e.g. drug treatment) + * @default + */ + treatment: string; + /** + * Global Sample Id + * @description Global sample identifier. e.g. GSM000 + * @default + */ + global_sample_id: string[] | null; + /** + * Global Experiment Id + * @description Global experiment identifier. e.g. GSE000 + * @default + */ + global_experiment_id: string[] | null; + /** + * Original File Name + * @description Original file name + * @default + */ + original_file_name: string; + }; + /** StatsReturn */ + StatsReturn: { + /** + * Bedfiles Number + * @default 0 + */ + bedfiles_number: number; + /** + * Bedsets Number + * @default 0 + */ + bedsets_number: number; + /** + * Genomes Number + * @default 0 + */ + genomes_number: number; + }; + /** TokenizedBedResponse */ + TokenizedBedResponse: { + /** Universe Id */ + universe_id: string; + /** Bed Id */ + bed_id: string; + /** Tokenized Bed */ + tokenized_bed: number[]; + }; + /** TokenizedPathResponse */ + TokenizedPathResponse: { + /** Bed Id */ + bed_id: string; + /** Universe Id */ + universe_id: string; + /** File Path */ + file_path: string; + /** Endpoint Url */ + endpoint_url: string; + }; + /** Type */ + Type: { + /** Group */ + group: string; + /** Artifact */ + artifact: string; + /** Version */ + version: string; + }; + /** UniverseMetadata */ + UniverseMetadata: { + /** Construct Method */ + construct_method?: string | null; + /** Bedset Id */ + bedset_id?: string | null; + }; + /** UsageStats */ + UsageStats: { + /** Bed Metadata */ + bed_metadata: { + [key: string]: number; + }; + /** Bedset Metadata */ + bedset_metadata: { + [key: string]: number; + }; + /** Bed Search Terms */ + bed_search_terms: { + [key: string]: number; + }; + /** Bedset Search Terms */ + bedset_search_terms: { + [key: string]: number; + }; + /** Bed Downloads */ + bed_downloads: { + [key: string]: number; + }; + }; + /** ValidationError */ + ValidationError: { + /** Location */ + loc: (string | number)[]; + /** Message */ + msg: string; + /** Error Type */ + type: string; + }; + }; + responses: never; + parameters: never; + requestBodies: never; + headers: never; + pathItems: never; } export type $defs = Record; export interface operations { - index_v1_get: { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": unknown; - }; - }; - }; - }; - changelog_v1_docs_changelog_get: { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "text/html": string; - }; - }; - }; - }; - lending_page__get: { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": unknown; - }; - }; - }; - }; - get_bedbase_db_stats_v1_stats_get: { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["StatsReturn"]; - }; - }; - }; - }; - get_detailed_stats_v1_detailed_stats_get: { - parameters: { - query?: { - concise?: boolean; - }; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["FileStats"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_detailed_usage_v1_detailed_usage_get: { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["UsageStats"]; - }; - }; - }; - }; - get_bedbase_db_stats_v1_genomes_get: { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BaseListResponse"]; - }; - }; - }; - }; - get_bedbase_db_stats_v1_assays_get: { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BaseListResponse"]; - }; - }; - }; - }; - service_info_v1_service_info_get: { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["ServiceInfoResponse"]; - }; - }; - }; - }; - redirect_to_download_v1_files__file_path__get: { - parameters: { - query?: never; - header?: never; - path: { - file_path: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": unknown; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_example_bed_record_v1_bed_example_get: { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BedMetadataAll"]; - }; - }; - }; - }; - list_beds_v1_bed_list_get: { - parameters: { - query?: { - limit?: number; - offset?: number; - /** @description filter by genome of the bed file. e.g. 'hg38' */ - genome?: string; - /** @description filter by bed type. e.g. 'bed6+4' */ - bed_compliance?: string; - }; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BedListResult"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_bed_metadata_v1_bed__bed_id__metadata_get: { - parameters: { - query?: { - /** @description Return full record with stats, plots, files and metadata */ - full?: boolean | null; - }; - header?: never; - path: { - /** @description BED digest */ - bed_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BedMetadataAll"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_bed_plots_v1_bed__bed_id__metadata_plots_get: { - parameters: { - query?: never; - header?: never; - path: { - /** @description BED digest */ - bed_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BedPlots"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_bed_files_v1_bed__bed_id__metadata_files_get: { - parameters: { - query?: never; - header?: never; - path: { - /** @description BED digest */ - bed_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BedFiles"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_bed_stats_v1_bed__bed_id__metadata_stats_get: { - parameters: { - query?: never; - header?: never; - path: { - /** @description BED digest */ - bed_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BedStatsModel"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_bed_classification_v1_bed__bed_id__metadata_classification_get: { - parameters: { - query?: never; - header?: never; - path: { - /** @description BED digest */ - bed_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BedClassification"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_bed_pephub_v1_bed__bed_id__metadata_raw_get: { - parameters: { - query?: never; - header?: never; - path: { - /** @description BED digest */ - bed_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BedPEPHubRestrict"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_bed_neighbours_v1_bed__bed_id__neighbours_get: { - parameters: { - query?: { - limit?: number; - offset?: number; - }; - header?: never; - path: { - /** @description BED digest */ - bed_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BedListSearchResult"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_bed_embedding_v1_bed__bed_id__embedding_get: { - parameters: { - query?: never; - header?: never; - path: { - /** @description BED digest */ - bed_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BedEmbeddingResult"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - embed_bed_file_v1_bed_embed_post: { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: { - content: { - "multipart/form-data": components["schemas"]["Body_embed_bed_file_v1_bed_embed_post"]; - }; - }; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": number[]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - missing_plots_v1_bed_missing_plots_get: { - parameters: { - query: { - plot_id: string; - }; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BaseListResponse"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_regions_for_bedfile_v1_bed__bed_id__regions__chr_num__get: { - parameters: { - query?: { - /** @description query range: start coordinate */ - start?: string | null; - /** @description query range: start coordinate */ - end?: string | null; - }; - header?: never; - path: { - /** @description BED digest */ - bed_id: string; - /** - * @description Chromosome number - * @example chr1 - */ - chr_num: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "text/plain": string; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - text_to_bed_search_v1_bed_search_text_post: { - parameters: { - query: { - query: string; - genome?: string | null; - assay?: string | null; - limit?: number; - offset?: number; - }; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BedListSearchResult"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - text_to_bed_search_v1_bed_search_exact_post: { - parameters: { - query: { - query: string; - genome?: string | null; - assay?: string | null; - limit?: number; - offset?: number; - }; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BedListSearchResult"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - bed_to_bed_search_v1_bed_search_bed_post: { - parameters: { - query?: { - limit?: number; - offset?: number; - }; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: { - content: { - "multipart/form-data": components["schemas"]["Body_bed_to_bed_search_v1_bed_search_bed_post"]; - }; - }; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BedListSearchResult"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_tokens_v1_bed__bed_id__tokens__universe_id__get: { - parameters: { - query?: never; - header?: never; - path: { - bed_id: string; - universe_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["TokenizedBedResponse"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_tokens_v1_bed__bed_id__tokens__universe_id__info_get: { - parameters: { - query?: never; - header?: never; - path: { - bed_id: string; - universe_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["TokenizedPathResponse"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_ref_gen_results_v1_bed__bed_id__genome_stats_get: { - parameters: { - query?: never; - header?: never; - path: { - bed_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["RefGenValidReturnModel"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_example_bedset_record_v1_bedset_example_get: { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BedSetMetadata"]; - }; - }; - }; - }; - list_bedsets_v1_bedset_list_get: { - parameters: { - query?: { - query?: string; - limit?: number; - offset?: number; - }; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BedSetListResult"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_bedset_metadata_v1_bedset__bedset_id__metadata_get: { - parameters: { - query?: { - full?: boolean; - }; - header?: never; - path: { - bedset_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BedSetMetadata"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_bedset_pep_v1_bedset__bedset_id__pep_get: { - parameters: { - query?: never; - header?: never; - path: { - bedset_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": unknown; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_bedset_metadata_v1_bedset__bedset_id__metadata_plots_get: { - parameters: { - query?: never; - header?: never; - path: { - bedset_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BedSetPlots"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_bedset_metadata_v1_bedset__bedset_id__metadata_stats_get: { - parameters: { - query?: never; - header?: never; - path: { - bedset_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BedSetStats"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_bedfiles_in_bedset_v1_bedset__bedset_id__bedfiles_get: { - parameters: { - query?: never; - header?: never; - path: { - bedset_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BedSetBedFiles"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_track_hub_bedset_v1_bedset__bedset_id__track_hub_get: { - parameters: { - query?: never; - header?: never; - path: { - bedset_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": unknown; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_track_hub_bedset_v1_bedset__bedset_id__track_hub_head: { - parameters: { - query?: never; - header?: never; - path: { - bedset_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": unknown; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - create_bedset_v1_bedset_create_post: { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - requestBody: { - content: { - "application/json": components["schemas"]["CreateBEDsetRequest"]; - }; - }; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": unknown; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_drs_object_metadata_v1_objects__object_id__get: { - parameters: { - query?: never; - header?: never; - path: { - object_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["DRSModel"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_object_bytes_url_v1_objects__object_id__access__access_id__get: { - parameters: { - query?: never; - header?: never; - path: { - object_id: string; - access_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": string; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_object_bytes_v1_objects__object_id__access__access_id__bytes_get: { - parameters: { - query?: never; - header?: never; - path: { - object_id: string; - access_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": string; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_object_thumbnail_v1_objects__object_id__access__access_id__thumbnail_get: { - parameters: { - query?: never; - header?: never; - path: { - object_id: string; - access_id: string; - }; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": string; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; + index_v1_get: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': unknown; + }; + }; + }; + }; + changelog_v1_docs_changelog_get: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'text/html': string; + }; + }; + }; + }; + lending_page__get: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': unknown; + }; + }; + }; + }; + get_bedbase_db_stats_v1_stats_get: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['StatsReturn']; + }; + }; + }; + }; + get_detailed_stats_v1_detailed_stats_get: { + parameters: { + query?: { + concise?: boolean; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['FileStats']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_detailed_usage_v1_detailed_usage_get: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['UsageStats']; + }; + }; + }; + }; + get_bedbase_db_stats_v1_genomes_get: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BaseListResponse']; + }; + }; + }; + }; + get_bedbase_db_stats_v1_assays_get: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BaseListResponse']; + }; + }; + }; + }; + service_info_v1_service_info_get: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['ServiceInfoResponse']; + }; + }; + }; + }; + redirect_to_download_v1_files__file_path__get: { + parameters: { + query?: never; + header?: never; + path: { + file_path: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': unknown; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_example_bed_record_v1_bed_example_get: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BedMetadataAll']; + }; + }; + }; + }; + list_beds_v1_bed_list_get: { + parameters: { + query?: { + limit?: number; + offset?: number; + /** @description filter by genome of the bed file. e.g. 'hg38' */ + genome?: string; + /** @description filter by bed type. e.g. 'bed6+4' */ + bed_compliance?: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BedListResult']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_bed_metadata_v1_bed__bed_id__metadata_get: { + parameters: { + query?: { + /** @description Return full record with stats, plots, files and metadata */ + full?: boolean | null; + }; + header?: never; + path: { + /** @description BED digest */ + bed_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BedMetadataAll']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_bed_plots_v1_bed__bed_id__metadata_plots_get: { + parameters: { + query?: never; + header?: never; + path: { + /** @description BED digest */ + bed_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BedPlots']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_bed_files_v1_bed__bed_id__metadata_files_get: { + parameters: { + query?: never; + header?: never; + path: { + /** @description BED digest */ + bed_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BedFiles']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_bed_stats_v1_bed__bed_id__metadata_stats_get: { + parameters: { + query?: never; + header?: never; + path: { + /** @description BED digest */ + bed_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BedStatsModel']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_bed_classification_v1_bed__bed_id__metadata_classification_get: { + parameters: { + query?: never; + header?: never; + path: { + /** @description BED digest */ + bed_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BedClassification']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_bed_pephub_v1_bed__bed_id__metadata_raw_get: { + parameters: { + query?: never; + header?: never; + path: { + /** @description BED digest */ + bed_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BedPEPHubRestrict']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_bed_neighbours_v1_bed__bed_id__neighbours_get: { + parameters: { + query?: { + limit?: number; + offset?: number; + }; + header?: never; + path: { + /** @description BED digest */ + bed_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BedListSearchResult']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_bed_embedding_v1_bed__bed_id__embedding_get: { + parameters: { + query?: never; + header?: never; + path: { + /** @description BED digest */ + bed_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BedEmbeddingResult']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + embed_bed_file_v1_bed_embed_post: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + 'multipart/form-data': components['schemas']['Body_embed_bed_file_v1_bed_embed_post']; + }; + }; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': number[]; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + missing_plots_v1_bed_missing_plots_get: { + parameters: { + query: { + plot_id: string; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BaseListResponse']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_regions_for_bedfile_v1_bed__bed_id__regions__chr_num__get: { + parameters: { + query?: { + /** @description query range: start coordinate */ + start?: string | null; + /** @description query range: start coordinate */ + end?: string | null; + }; + header?: never; + path: { + /** @description BED digest */ + bed_id: string; + /** + * @description Chromosome number + * @example chr1 + */ + chr_num: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'text/plain': string; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + text_to_bed_search_v1_bed_search_text_post: { + parameters: { + query: { + query: string; + genome?: string | null; + assay?: string | null; + limit?: number; + offset?: number; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BedListSearchResult']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + text_to_bed_search_v1_bed_search_exact_post: { + parameters: { + query: { + query: string; + genome?: string | null; + assay?: string | null; + limit?: number; + offset?: number; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BedListSearchResult']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + bed_to_bed_search_v1_bed_search_bed_post: { + parameters: { + query?: { + limit?: number; + offset?: number; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: { + content: { + 'multipart/form-data': components['schemas']['Body_bed_to_bed_search_v1_bed_search_bed_post']; + }; + }; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BedListSearchResult']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_tokens_v1_bed__bed_id__tokens__universe_id__get: { + parameters: { + query?: never; + header?: never; + path: { + bed_id: string; + universe_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['TokenizedBedResponse']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_tokens_v1_bed__bed_id__tokens__universe_id__info_get: { + parameters: { + query?: never; + header?: never; + path: { + bed_id: string; + universe_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['TokenizedPathResponse']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_ref_gen_results_v1_bed__bed_id__genome_stats_get: { + parameters: { + query?: never; + header?: never; + path: { + bed_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['RefGenValidReturnModel']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_example_bedset_record_v1_bedset_example_get: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BedSetMetadata']; + }; + }; + }; + }; + list_bedsets_v1_bedset_list_get: { + parameters: { + query?: { + query?: string; + limit?: number; + offset?: number; + }; + header?: never; + path?: never; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BedSetListResult']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_bedset_metadata_v1_bedset__bedset_id__metadata_get: { + parameters: { + query?: { + full?: boolean; + }; + header?: never; + path: { + bedset_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BedSetMetadata']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_bedset_pep_v1_bedset__bedset_id__pep_get: { + parameters: { + query?: never; + header?: never; + path: { + bedset_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': unknown; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_bedset_metadata_v1_bedset__bedset_id__metadata_plots_get: { + parameters: { + query?: never; + header?: never; + path: { + bedset_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BedSetPlots']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_bedset_metadata_v1_bedset__bedset_id__metadata_stats_get: { + parameters: { + query?: never; + header?: never; + path: { + bedset_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BedSetStats']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_bedfiles_in_bedset_v1_bedset__bedset_id__bedfiles_get: { + parameters: { + query?: never; + header?: never; + path: { + bedset_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['BedSetBedFiles']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_track_hub_bedset_v1_bedset__bedset_id__track_hub_get: { + parameters: { + query?: never; + header?: never; + path: { + bedset_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': unknown; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_track_hub_bedset_v1_bedset__bedset_id__track_hub_head: { + parameters: { + query?: never; + header?: never; + path: { + bedset_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': unknown; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + create_bedset_v1_bedset_create_post: { + parameters: { + query?: never; + header?: never; + path?: never; + cookie?: never; + }; + requestBody: { + content: { + 'application/json': components['schemas']['CreateBEDsetRequest']; + }; + }; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': unknown; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_drs_object_metadata_v1_objects__object_id__get: { + parameters: { + query?: never; + header?: never; + path: { + object_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['DRSModel']; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_object_bytes_url_v1_objects__object_id__access__access_id__get: { + parameters: { + query?: never; + header?: never; + path: { + object_id: string; + access_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': string; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_object_bytes_v1_objects__object_id__access__access_id__bytes_get: { + parameters: { + query?: never; + header?: never; + path: { + object_id: string; + access_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': string; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; + get_object_thumbnail_v1_objects__object_id__access__access_id__thumbnail_get: { + parameters: { + query?: never; + header?: never; + path: { + object_id: string; + access_id: string; + }; + cookie?: never; + }; + requestBody?: never; + responses: { + /** @description Successful Response */ + 200: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': string; + }; + }; + /** @description Validation Error */ + 422: { + headers: { + [name: string]: unknown; + }; + content: { + 'application/json': components['schemas']['HTTPValidationError']; + }; + }; + }; + }; } diff --git a/ui/index.html b/ui/index.html index 3b61c53c..2a71bfb3 100644 --- a/ui/index.html +++ b/ui/index.html @@ -1,9 +1,10 @@ - + + BEDbase.org diff --git a/ui/package.json b/ui/package.json index 0ebd9ddd..72218c77 100644 --- a/ui/package.json +++ b/ui/package.json @@ -1,7 +1,7 @@ { "name": "bedhost-ui-2", "private": true, - "version": "0.12.5", + "version": "0.13.0", "type": "module", "scripts": { "dev": "vite", @@ -25,7 +25,7 @@ "chart.js": "^4.4.2", "chartjs-chart-error-bars": "^4.4.0", "chartjs-plugin-datalabels": "^2.2.0", - "embedding-atlas": "^0.13.0", + "embedding-atlas": "^0.15.0", "framer-motion": "^11.0.20", "js-yaml": "^4.1.1", "pako": "^2.1.0", diff --git a/ui/public/visualizer.svg b/ui/public/visualizer.svg index 39975be3..d1090dac 100644 --- a/ui/public/visualizer.svg +++ b/ui/public/visualizer.svg @@ -25,13 +25,13 @@ inkscape:document-units="mm" inkscape:zoom="2.0190483" inkscape:cx="217.18153" - inkscape:cy="86.674498" + inkscape:cy="86.674499" inkscape:window-width="1920" inkscape:window-height="1082" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="1" - inkscape:current-layer="g9" + inkscape:current-layer="g1" showgrid="false" showguides="true" /> { }, x: { axis: { - labelExpr: 'datum.value == 0 ? \'start\' : datum.value == 300 ? \'end\' : \'\'', + labelExpr: "datum.value == 0 ? 'start' : datum.value == 300 ? 'end' : ''", values: [0, 300.0], }, field: 'withinGroupID', @@ -173,10 +173,10 @@ export const RegionDistributionPlot = (props: BedPlotsProps) => { return (
-
+
); }; diff --git a/ui/src/components/bed-analytics-components/chromosome-stats-panel.tsx b/ui/src/components/bed-analytics-components/chromosome-stats-panel.tsx index 355c3749..4bb423dd 100644 --- a/ui/src/components/bed-analytics-components/chromosome-stats-panel.tsx +++ b/ui/src/components/bed-analytics-components/chromosome-stats-panel.tsx @@ -37,161 +37,82 @@ const ChromosomeStatsPanel: React.FC = ({ rs, selectedFile }) => { return (
- {/*This section is AI rendered. It provides statistics on number of regions per chromosome.*/} - {/*
*/} - {/*
Number of regions per chromosome:
*/} - {/*
*/} - {/* */} - {/* {(() => {*/} - {/* const barWidth = 40;*/} - {/* const gap = 30;*/} - {/* const maxCount = Math.max(...statsEntries.map(s => s.count), 1);*/} - {/* const chartHeight = 120;*/} - {/* const chartTop = 30;*/} - - {/* return (*/} - {/* */} - {/* /!* Grid lines *!/*/} - {/* {[0, 0.25, 0.5, 0.75, 1].map(ratio => (*/} - {/* */} - {/* */} - {/* */} - {/* {Math.round(maxCount * ratio)}*/} - {/* */} - {/* */} - {/* ))}*/} - - {/* /!* Bars *!/*/} - {/* {statsEntries.map((s, i) => {*/} - {/* const x = i * (barWidth + gap) + 40;*/} - {/* const barH = Math.max(2, Math.round((s.count / maxCount) * chartHeight));*/} - {/* const y = chartTop + (chartHeight - barH);*/} - - {/* return (*/} - {/* */} - {/* */} - {/* */} - {/* {s.count}*/} - {/* */} - {/* */} - {/* {s.chromosome}*/} - {/* */} - {/* */} - {/* );*/} - {/* })}*/} - {/* */} - {/* );*/} - {/* })()}*/} - {/* */} - {/*
*/} - {/*
*/} - -
-
-
-
Chromosome regions statatistics
-
- -
+
+
+
Chromosome regions statistics:
+
+ +
+
+
+
+ + + + + + + + + + + + + + + {statsEntries.map((s) => ( + + + + + + + + + + + ))} + +
Chromosome nameNumber of regionsStart positionEnd positionMin lengthMax lengthMean lengthMedian length
{s.chromosome}{s.count}{s.start}{s.end}{s.minimum}{s.maximum}{s.mean}{s.median}
- - - - - - - - - - - - - - - - {statsEntries.map((s) => ( - - - - - - - - - - - ))} - -
Chromosome nameNumber of regionsStart positionEnd positionMin lengthMax lengthMean lengthMedian length
{s.chromosome}{s.count}{s.start}{s.end}{s.minimum}{s.maximum}{s.mean}{s.median}
diff --git a/ui/src/components/bed-splash-components/cards/gc-content-card.tsx b/ui/src/components/bed-splash-components/cards/gc-content-card.tsx index 690b9df4..98919c4e 100644 --- a/ui/src/components/bed-splash-components/cards/gc-content-card.tsx +++ b/ui/src/components/bed-splash-components/cards/gc-content-card.tsx @@ -12,9 +12,9 @@ export const GCContentCard = (props: Props) => { return ( ); }; diff --git a/ui/src/components/bed-splash-components/cards/mean-region-width-card.tsx b/ui/src/components/bed-splash-components/cards/mean-region-width-card.tsx index f094631b..1c9de401 100644 --- a/ui/src/components/bed-splash-components/cards/mean-region-width-card.tsx +++ b/ui/src/components/bed-splash-components/cards/mean-region-width-card.tsx @@ -12,9 +12,9 @@ export const MeanRegionWidthCard = (props: Props) => { return ( ); }; diff --git a/ui/src/components/bed-splash-components/cards/median-tss-dist-card.tsx b/ui/src/components/bed-splash-components/cards/median-tss-dist-card.tsx index 65bbd64b..b1579377 100644 --- a/ui/src/components/bed-splash-components/cards/median-tss-dist-card.tsx +++ b/ui/src/components/bed-splash-components/cards/median-tss-dist-card.tsx @@ -11,9 +11,9 @@ export const MedianTssDistCard = (props: Props) => { const { metadata } = props; return ( ); }; diff --git a/ui/src/components/bed-splash-components/cards/no-regions-card.tsx b/ui/src/components/bed-splash-components/cards/no-regions-card.tsx index b38836ca..72fb9bd0 100644 --- a/ui/src/components/bed-splash-components/cards/no-regions-card.tsx +++ b/ui/src/components/bed-splash-components/cards/no-regions-card.tsx @@ -11,9 +11,9 @@ export const NoRegionsCard = (props: Props) => { const { metadata } = props; return ( ); }; diff --git a/ui/src/components/bed-splash-components/cards/stat-card-wrapper.tsx b/ui/src/components/bed-splash-components/cards/stat-card-wrapper.tsx index 7b1b5b46..b8c98b35 100644 --- a/ui/src/components/bed-splash-components/cards/stat-card-wrapper.tsx +++ b/ui/src/components/bed-splash-components/cards/stat-card-wrapper.tsx @@ -12,18 +12,15 @@ export const StatCard = (props: Props) => { const renderTooltip = () => {tooltip || 'No tooltip available'}; return ( -
-
-

{title}

-
-

{stat}

-
-
- - - + +
+
+
{title}
+
+

{stat}

+
-
+ ); }; diff --git a/ui/src/components/bed-splash-components/charts/genomic-feature-bar.tsx b/ui/src/components/bed-splash-components/charts/genomic-feature-bar.tsx index 59342828..950c37f6 100644 --- a/ui/src/components/bed-splash-components/charts/genomic-feature-bar.tsx +++ b/ui/src/components/bed-splash-components/charts/genomic-feature-bar.tsx @@ -24,6 +24,11 @@ const chartOptions = { display: false, }, }, + layout: { + padding: { + bottom: 25, + }, + }, }; export const GenomicFeatureBar = (props: Props) => { @@ -98,29 +103,29 @@ export const GenomicFeatureBar = (props: Props) => { } return ( -
-
-
-

Genomic Features

-
-
-
- -
+
+
+
+

Genomic Features

+
+
+
+ +
setDisplayAsPercentage(!displayAsPercentage)} /> - +
- +
-
+
{ const { metadata, record_identifier, genomeStats } = props; + // console.log(metadata); const [, copyToClipboard] = useCopyToClipboard(); const { cart, addBedToCart, removeBedFromCart } = useBedCart(); @@ -27,18 +30,16 @@ export const BedSplashHeader = (props: Props) => { const [copiedId, setCopiedId] = useState(false); const [showRefGenomeModal, setShowRefGenomeModal] = useState(false); - const noFilesToDownload = !metadata.files?.bed_file && !metadata.files?.bigbed_file; return ( -
-
-
-

- - {metadata?.id || 'No ID available'} +
+
+
+
+ {metadata?.id || 'No ID available'} -
+

{!metadata?.processed && ( -

+

- This file has not been processed by the BedBoss pipeline yet. - + This file has not been processed by the BedBoss pipeline yet. } > - - - Not Processed - + + + Not Processed +

)} -
- - {(metadata?.processed && metadata?.genome_alias == 'hg38') && - - - - } +
- - {!addedToCart && cart[record_identifier || ''] ? ( ) : ( )} - - + + Downloads { // If there are no files to download, disable the dropdown noFilesToDownload ? ( - + There are no files to download ) : ( - + {metadata.files?.bed_file && ( - {(metadata.files?.bed_file?.access_methods || []).map((method) => { + {(metadata.files?.bed_file?.access_methods || []).map((method, index) => { if (method.type === 'local' || method.type === 's3') { return null; } return ( - + {method.access_id ? 'BED file' : 'No download link available'} ( - {bytesToSize(metadata.files?.bed_file?.size || 0)}) + {bytesToSize(metadata.files?.bed_file?.size || 0)}) ); })} @@ -174,14 +162,14 @@ export const BedSplashHeader = (props: Props) => { )} {metadata.files?.bigbed_file && ( - {(metadata.files?.bigbed_file?.access_methods || []).map((method) => { + {(metadata.files?.bigbed_file?.access_methods || []).map((method, index) => { if (method.type === 'local' || method.type === 's3') { return null; } return ( - + {method.access_id ? 'BigBED file' : 'No download link available'} ( - {bytesToSize(metadata.files?.bigbed_file?.size || 0)}) + {bytesToSize(metadata.files?.bigbed_file?.size || 0)}) ); })} @@ -342,7 +330,7 @@ export const BedSplashHeader = (props: Props) => {

Created:{' '} - {metadata?.submission_date ? formatDateTime(metadata?.submission_date) : 'No date available'} + {metadata?.submission_date ? formatDateShort(metadata?.submission_date) : 'No date available'}

@@ -350,12 +338,13 @@ export const BedSplashHeader = (props: Props) => {

Updated:{' '} - {metadata?.last_update_date ? formatDateTime(metadata?.last_update_date) : 'No date available'} + {metadata?.last_update_date ? formatDateShort(metadata?.last_update_date) : 'No date available'}

- {genomeStats?.compared_genome && + + {genomeStats?.compared_genome && ( { @@ -363,7 +352,7 @@ export const BedSplashHeader = (props: Props) => { }} genomeStats={genomeStats} /> - } + )}
); }; diff --git a/ui/src/components/bed-splash-components/plots.tsx b/ui/src/components/bed-splash-components/plots.tsx index d04546ee..d1c2ad96 100644 --- a/ui/src/components/bed-splash-components/plots.tsx +++ b/ui/src/components/bed-splash-components/plots.tsx @@ -30,16 +30,13 @@ const Plot = (props: PlotProps) => { setShow(true); } }} - className="h-100 border rounded p-1 shadow-sm hover-border-primary transition-all" + className='h-100 border rounded bg-white overflow-hidden embedding-card' > -
- {title} - {/* */} +
+ {alt}
-
- {alt} +
+

{title}

{ export const Plots = (props: PlotsProps) => { const { metadata } = props; - const plotNames = metadata.plots ? Object.keys(metadata.plots) : []; + // console.log(Object.keys(metadata?.plots ?? {}).map((name: string) => name)); + + // comment out partitions because we already have it in statistics section + // const plotNames = metadata.plots ? Object.keys(metadata.plots).filter((name: string) => name != 'chrombins') : []; + const plotNames = metadata.plots ? Object.keys(metadata.plots).filter((name: string) => name != 'expected_partitions') : []; + // const plotNames = metadata.plots ? Object.keys(metadata.plots) : []; return ( - + {metadata.plots && chunkArray(plotNames, 3).map((chunk, idx) => ( @@ -73,10 +75,10 @@ export const Plots = (props: PlotsProps) => { const title = plotExists ? metadata.plots[plotNameKey]?.title : plotName; const alt = plotExists ? // @ts-expect-error: type checking here is just too much - metadata.plots[plotNameKey]?.description || metadata.plots[plotNameKey].title + metadata.plots[plotNameKey]?.description || metadata.plots[plotNameKey].title : plotName; return ( - + { const { show, onHide, genomeStats } = props; - console.log(genomeStats?.compared_genome) - return ( onHide()} - size="lg" - aria-labelledby="contained-modal-title-vcenter" + size='lg' + aria-labelledby='contained-modal-title-vcenter' centered > Reference Genome Compatibility -

+

Note: Below is a ranking of the compatibility various reference genomes to this BED file - (tier 1 is best). - The ranking is based on the following metrics: + (tier 1 is best). The ranking is based on the following metrics:

-
    -
  • XS (eXtra Sequences): the proportion of shared regions in both this BED file and - reference genome over the total number of regions in this BED file [recall]. +
      +
    • + XS (eXtra Sequences): the proportion of shared regions in both this BED file and reference + genome over the total number of regions in this BED file [recall].
    • -
    • OOBR (Out Of Bounds Regions): The proportion of shared regions from this BED file that do +
    • + OOBR (Out Of Bounds Regions): The proportion of shared regions from this BED file that do not exceed the bounds of the corresponding shared region in the reference genome. OOBR is only calculated if XS is 100%.
    • -
    • SF (Sequence Fit): the proportion of shared region lengths in both this BED file and reference genome over the total - number of region lengths in the reference genome [precision]. +
    • + SF (Sequence Fit): the proportion of shared{' '} + region lengths in both this BED file and reference genome over the total + number of region lengths in the reference genome [precision].
    -
    -
    -
    -

    Genome

    -

    XS

    -

    OOBR

    -

    SF

    -

    Tier

    +
    +
    +
    +

    + Genome +

    +

    + XS +

    +

    + OOBR +

    +

    + SF +

    +

    Tier

    - {genomeStats?.compared_genome?.sort((a, b) => - (a.tier_ranking - b.tier_ranking) || - (b.xs - a.xs) || - ((b.oobr ?? 0) - (a.oobr ?? 0)) || - ((b.sequence_fit ?? 0) - (a.sequence_fit ?? 0)) - ) - .map(genome => ( + {genomeStats?.compared_genome + ?.sort( + (a, b) => + a.tier_ranking - b.tier_ranking || + b.xs - a.xs || + (b.oobr ?? 0) - (a.oobr ?? 0) || + (b.sequence_fit ?? 0) - (a.sequence_fit ?? 0), + ) + .map((genome) => (
    -
    - -
    -
    -
    -

    {genome.compared_genome}

    +
    +
    +
    +
    +

    + {genome.compared_genome} +

    -
    - {genome.xs ? +
    + {genome.xs ? ( <> - 30 ? 'text-white' : 'text-dark'}`}> - {((genome.xs || 0) * 100).toFixed(2) + '%'} - -
    + 30 ? 'text-white' : 'text-dark'}`} + > + {((genome.xs || 0) * 100).toFixed(2) + '%'} + +
    - : + ) : ( <> - - N/A - -
    + + N/A + +
    - } + )}
    -
    - {genome.oobr ? +
    + {genome.oobr ? ( <> - 30 ? 'text-white' : 'text-dark'}`}> - {((genome.oobr || 0) * 100).toFixed(2) + '%'} - -
    + 30 ? 'text-white' : 'text-dark'}`} + > + {((genome.oobr || 0) * 100).toFixed(2) + '%'} + +
    - : + ) : ( <> - - N/A - -
    + + N/A + +
    - } + )}
    -
    - {genome.sequence_fit ? +
    + {genome.sequence_fit ? ( <> - 30 ? 'text-white' : 'text-dark'}`}> - {((genome.sequence_fit || 0) * 100).toFixed(2) + '%'} - -
    + 30 ? 'text-white' : 'text-dark'}`} + > + {((genome.sequence_fit || 0) * 100).toFixed(2) + '%'} + +
    - : + ) : ( <> - - N/A - -
    + + N/A + +
    - } + )}
    -

    Tier {genome.tier_ranking}

    +

    Tier {genome.tier_ranking}

    -
    diff --git a/ui/src/components/bedset-splash-components/beds-table.tsx b/ui/src/components/bedset-splash-components/beds-table.tsx index e5c2ff60..e0ff76ea 100644 --- a/ui/src/components/bedset-splash-components/beds-table.tsx +++ b/ui/src/components/bedset-splash-components/beds-table.tsx @@ -39,45 +39,43 @@ export const BedsTable = (props: Props) => { const columns = [ columnHelper.accessor((row) => row.genome_alias, { - cell: (info) => {info.getValue() || 'N/A'}, + cell: (info) => {info.getValue() || 'N/A'}, footer: (info) => info.column.id, header: 'Genome', id: 'genome', }), columnHelper.accessor((row) => row.bed_compliance, { - cell: (info) => {info.getValue() || 'N/A'}, + cell: (info) => {info.getValue() || 'N/A'}, footer: (info) => info.column.id, header: 'Type', id: 'bed-type', }), columnHelper.accessor((row) => row.name, { - cell: (info) => {info.getValue() || 'N/A'}, + cell: (info) => {info.getValue() || 'N/A'}, footer: (info) => info.column.id, header: 'Name', id: 'name', }), columnHelper.accessor((row) => row.annotation?.tissue, { - cell: (info) => {info.getValue() || 'N/A'}, + cell: (info) => {info.getValue() || 'N/A'}, footer: (info) => info.column.id, header: 'Tissue', id: 'Tissue', }), columnHelper.accessor((row) => row.annotation?.cell_type, { - cell: (info) => ( - {info.getValue() || 'N/A'} - ), + cell: (info) => {info.getValue() || 'N/A'}, footer: (info) => info.column.id, header: 'Cell Type', id: 'cell-type', }), columnHelper.accessor((row) => row.annotation?.cell_line, { - cell: (info) => {info.getValue() || 'N/A'}, + cell: (info) => {info.getValue() || 'N/A'}, footer: (info) => info.column.id, header: 'Cell Line', id: 'cell-line', }), columnHelper.accessor((row) => row.description, { - cell: (info) => {info.getValue() || 'N/A'}, + cell: (info) => {info.getValue() || 'N/A'}, footer: (info) => info.column.id, header: 'Description', id: 'description', @@ -87,10 +85,10 @@ export const BedsTable = (props: Props) => { cell: (info) => { const bedId = info.getValue(); const rowData = info.row.original; - - return( + + return (
    { e.stopPropagation(); }} @@ -98,7 +96,6 @@ export const BedsTable = (props: Props) => { {!cart[bedId] || (addedToCart && justAddedToCart === bedId) ? ( ) : ( - )}
    - ) + ); }, enableSorting: false, header: 'Actions', @@ -156,17 +153,17 @@ export const BedsTable = (props: Props) => { }); return ( -
    -
    +
    +
    setGlobalFilter(e.target.value)} />
    -
    - +
    +
    {table.getHeaderGroups().map((headerGroup) => ( @@ -174,8 +171,8 @@ export const BedsTable = (props: Props) => { (window.location.href = `/bed/${row.original.id}`)} > {row.getVisibleCells().map((cell) => ( - ))} @@ -221,11 +218,11 @@ export const BedsTable = (props: Props) => {
    {header.isPlaceholder ? null : ( @@ -187,15 +184,15 @@ export const BedsTable = (props: Props) => { ? header.column.getNextSortingOrder() === 'asc' ? 'Sort ascending' : header.column.getNextSortingOrder() === 'desc' - ? 'Sort descending' - : 'Clear sort' + ? 'Sort descending' + : 'Clear sort' : undefined } > {flexRender(header.column.columnDef.header, header.getContext())} {{ - asc: , - desc: , + asc: , + desc: , }[header.column.getIsSorted() as string] ?? null} )} @@ -208,11 +205,11 @@ export const BedsTable = (props: Props) => { {table.getRowModel().rows.map((row) => (
    + {flexRender(cell.column.columnDef.cell, cell.getContext())}
    -
    -
    -
    +
    +
    +
    Showing - + {table.getState().pagination.pageSize * table.getState().pagination.pageIndex + 1} to{' '} {Math.min( table.getState().pagination.pageSize * (table.getState().pagination.pageIndex + 1), @@ -234,39 +231,39 @@ export const BedsTable = (props: Props) => { of {table.getRowCount().toLocaleString()} files
    -
    -
    +
    +
    setDisplayAsPercentage(!displayAsPercentage)} /> - +
    - +
    -
    +
    d.feature), @@ -235,9 +240,6 @@ export const GenomicFeatureBar = (props: Props) => { }} />
    -
    -

    Learn more

    -
    ); diff --git a/ui/src/components/bedset-splash-components/header.tsx b/ui/src/components/bedset-splash-components/header.tsx index c33a1fb8..107b829e 100644 --- a/ui/src/components/bedset-splash-components/header.tsx +++ b/ui/src/components/bedset-splash-components/header.tsx @@ -4,7 +4,7 @@ import { components } from '../../../bedbase-types'; import { useBedCart } from '../../contexts/bedcart-context'; import { DownloadBedSetModal } from '../modals/download-bedset-modal'; import { useCopyToClipboard } from '@uidotdev/usehooks'; -import { formatDateTime } from '../../utils.ts'; +import { formatDateShort } from '../../utils.ts'; type Bed = components['schemas']['BedSetBedFiles']['results'][number]; @@ -26,14 +26,13 @@ export const BedsetSplashHeader = (props: Props) => { const [copiedId, setCopiedId] = useState(false); return ( -
    -
    -
    -

    - - {metadata?.id || 'No name available'} +
    +
    +
    +
    + {metadata?.id || 'No ID available'} -
    +

    -
    +
    {/* TODO: change hg38 on correct genome */} {/**/} {(metadata.bed_ids?.length || 0) <= 20 && ( - )} - @@ -72,9 +71,9 @@ export const BedsetSplashHeader = (props: Props) => { metadata.bed_ids?.every((bedId) => cart[bedId]) && !addedToCart ? ( ) : ( @@ -83,93 +82,74 @@ export const BedsetSplashHeader = (props: Props) => { metadata.bed_ids?.length === 0 ? undefined : () => { + const bedItems = beds.map((bed) => ({ + id: bed.id, + name: bed.name || 'No name', + genome: bed.genome_alias || 'N/A', + tissue: bed.annotation?.tissue || 'N/A', + cell_line: bed.annotation?.cell_line || 'N/A', + cell_type: bed.annotation?.cell_type || 'N/A', + description: bed.description || 'N/A', + assay: bed.annotation?.assay || 'N/A', + })); - const bedItems = beds.map(bed => ({ - id: bed.id, - name: bed.name || 'No name', - genome: bed.genome_alias || 'N/A', - tissue: bed.annotation?.tissue || 'N/A', - cell_line: bed.annotation?.cell_line || 'N/A', - cell_type: bed.annotation?.cell_type || 'N/A', - description: bed.description || 'N/A', - assay: bed.annotation?.assay || 'N/A', - })); - - addMultipleBedsToCart(bedItems); - setAddedToCart(true); - setTimeout(() => { - setAddedToCart(false); - }, 500); - } + addMultipleBedsToCart(bedItems); + setAddedToCart(true); + setTimeout(() => { + setAddedToCart(false); + }, 500); + } } disabled={metadata.bed_ids?.length === 0 || addedToCart} - className="btn btn-primary btn-sm" + className='btn btn-primary btn-sm text-nowrap' > - + {addedToCart ? 'Added files to cart!' : `Add ${metadata.bed_ids?.length || 0} BEDs to cart`} ) } - - + + Downloads - - setShowDownloadModal(true)}> + + setShowDownloadModal(true)}> Download BEDset - + Download PEP -
    -
    -

    {metadata?.description || 'No description available'}

    -

    Author: {metadata?.author || 'None'}

    -

    Source: {metadata?.source || 'None'}

    -
    -
    -
    -

    -

    - - {metadata.md5sum} -
    -

    +
    +
    +
    + + {metadata.md5sum} +
    {metadata.bed_ids && ( -

    -

    - - {metadata.bed_ids?.length} BED files -
    -

    +
    + + {metadata.bed_ids?.length} BED files +
    )} -
    - -
    -
    - -

    - Created:{' '} - {metadata?.submission_date ? formatDateTime(metadata?.submission_date) : 'No date available'} -

    +
    + {'Created: ' + formatDateShort(metadata?.submission_date || '')}
    - -
    - -

    - Updated:{' '} - {metadata?.last_update_date ? formatDateTime(metadata?.last_update_date) : 'No date available'} -

    +
    + {'Updated: ' + formatDateShort(metadata?.last_update_date || '')}
    +
    +

    {metadata?.description || 'No description available'}

    +

    Author: {metadata?.author || 'None'}

    +

    Source: {metadata?.source || 'None'}

    +
    ); diff --git a/ui/src/components/bedset-splash-components/plots.tsx b/ui/src/components/bedset-splash-components/plots.tsx index 4e2cdce3..a2b257e9 100644 --- a/ui/src/components/bedset-splash-components/plots.tsx +++ b/ui/src/components/bedset-splash-components/plots.tsx @@ -29,16 +29,13 @@ const Plot = (props: PlotProps) => { setShow(true); } }} - className="h-100 border rounded p-1 shadow-sm hover-border-primary transition-all" + className='h-100 border rounded bg-white overflow-hidden embedding-card' > -
    - {title} - {/* */} +
    + {alt}
    -
    - {alt} +
    +

    {title}

    { export const Plots = (props: PlotsProps) => { const { metadata } = props; const plotNames = metadata.plots ? Object.keys(metadata.plots) : []; + return ( - + {metadata.plots && chunkArray(plotNames, 3).map((chunk, idx) => ( @@ -73,7 +71,7 @@ export const Plots = (props: PlotsProps) => { metadata.plots[plotNameKey]?.description || metadata.plots[plotNameKey].title : plotName; return ( - + { const errorCode = error.response?.status; return ( -
    - +
    + -
    -

    {convertStatusCodeToMessage(errorCode)}

    +
    +

    {convertStatusCodeToMessage(errorCode)}

    {error.message && ( - -

    {error.message}:

    + +

    {error.message}:

    )} -
    +
    {JSON.stringify(error, null, 2)}
    -
    - - - - diff --git a/ui/src/components/graphics/bed-analyzer-graphic.tsx b/ui/src/components/graphics/bed-analyzer-graphic.tsx new file mode 100644 index 00000000..56829c21 --- /dev/null +++ b/ui/src/components/graphics/bed-analyzer-graphic.tsx @@ -0,0 +1,130 @@ +export const BedAnalyzerGraphic = () => { + return ( +
    + + + {/* Grid pattern */} + + + + + {/* Glow filter */} + + + + + + + + + {/* Arrowhead marker */} + + + + + + {/* Grid background - extends beyond viewBox */} + + + {/* Connecting pipe from left rect bottom to right rect left */} + + + {/* Main input file - cut off from top */} + + + + {/* File content lines */} + + + + + + + + + + + + + + + + + {/* Results rectangle - cut off from bottom */} + + + + {/* Bar chart graphic */} + + {/* Chart bars */} + + + + + + + + + + + {/* Table graphic */} + + {/* Table header */} + + {/* Table rows */} + + + + + + {/* Vertical lines for columns */} + + + + + +
    + ); +}; diff --git a/ui/src/components/graphics/file-search-graphic.tsx b/ui/src/components/graphics/file-search-graphic.tsx new file mode 100644 index 00000000..d6fc7b2d --- /dev/null +++ b/ui/src/components/graphics/file-search-graphic.tsx @@ -0,0 +1,244 @@ +import { useState } from 'react'; + +export const FileSearchGraphic = () => { + const [hoveredFile, setHoveredFile] = useState(null); + + return ( +
    + + + {/* Gradient for lines */} + + + + + + {/* Glow filter */} + + + + + + + + + + {/* Main file with contents */} + + {/* File container - wider and taller, positioned so top is cut off */} + + + {/* File content lines - more lines distributed throughout */} + + + + + + + + + + + + + + + {/* Connecting lines from document to files */} + + {/* Line to file 1 - from left side of document */} + + {/* {hoveredFile === 1 && ( + + )} */} + + + {/* Line to file 2 */} + + {/* {hoveredFile === 2 && ( + + )} */} + + + {/* Line to file 5 - from right side of document */} + + {/* {hoveredFile === 5 && ( + + )} */} + + + + {/* Grid of file icons */} + + {/* File 1 */} + setHoveredFile(1)} + onMouseLeave={() => setHoveredFile(null)} + style={{ cursor: 'pointer' }} + > + + + + + + + + {/* File 2 */} + setHoveredFile(2)} + onMouseLeave={() => setHoveredFile(null)} + style={{ cursor: 'pointer' }} + > + + + + + + + + {/* File 3 - no line, no interaction */} + setHoveredFile(3)} + onMouseLeave={() => setHoveredFile(null)} + style={{ cursor: 'pointer' }} + > + + + + + + + + {/* File 4 - no line, no interaction */} + setHoveredFile(4)} + onMouseLeave={() => setHoveredFile(null)} + style={{ cursor: 'pointer' }} + > + + + + + + + + {/* File 5 */} + setHoveredFile(5)} + onMouseLeave={() => setHoveredFile(null)} + style={{ cursor: 'pointer' }} + > + + + + + + + + +
    + ); +}; diff --git a/ui/src/components/graphics/search-graphic.tsx b/ui/src/components/graphics/search-graphic.tsx new file mode 100644 index 00000000..7805d9f2 --- /dev/null +++ b/ui/src/components/graphics/search-graphic.tsx @@ -0,0 +1,271 @@ +import { useState } from 'react'; + +export const SearchGraphic = () => { + const [searchText, setSearchText] = useState('H3K27ac in liver cells'); + + return ( +
    + + + {/* Gradient for lines */} + + + + + + {/* Glow filter */} + + + + + + + + + + {/* Search bar mockup */} + + + + {/* Lucide search icon */} + + + + + + {/* Text element for sizing */} + + setSearchText(e.target.value)} + style={{ + border: 'none', + outline: 'none', + background: 'transparent', + fontSize: '14px', + color: '#6c757d', + fontFamily: 'system-ui, -apple-system, sans-serif', + width: '100%', + padding: '0', + }} + /> + + + + {/* Connecting lines */} + + {/* Line to file 1 */} + + + + + {/* Line to file 2 */} + + + + + {/* Line to file 3 */} + + + + + {/* Line to file 4 */} + + + + + {/* Line to file 5 */} + + + + + + {/* Grid of file icons */} + + {/* File 1 */} + + + + + + + + + {/* File 2 */} + + + + + + + + + {/* File 3 */} + + + + + + + + + {/* File 4 */} + + + + + + + + + {/* File 5 */} + + + + + + + + + +
    + ); +}; diff --git a/ui/src/components/layout.tsx b/ui/src/components/layout.tsx index 02f29d4a..b2b229c3 100644 --- a/ui/src/components/layout.tsx +++ b/ui/src/components/layout.tsx @@ -19,48 +19,48 @@ type LayoutProps = { const Footer = () => { const { data, isLoading, isFetching } = useServiceInfo(); return ( -
    -