| ANCHOR_SCROLL_PADDING |
Type : number
|
Default value : 24
|
|
Padding when scrolling to an anchor in px |
| AppCardsSchema |
Type : unknown
|
Default value : z
.object({
$schema: z.string(),
tabs: AppCardsTabSchema.array(),
})
.meta({ id: 'AppCards' })
|
|
Schema for default structure of the app cards. |
| AppCardsSectionSchema |
Type : unknown
|
Default value : z
.object({
tagline: z.string(),
cards: AppCardSchema.array(),
})
.meta({ id: 'AppCardsSection' })
|
|
Schema for structure of an app cards section. |
| AppCardsTabSchema |
Type : unknown
|
Default value : z
.object({
name: z.string(),
sections: AppCardsSectionSchema.array(),
})
.meta({ id: 'AppCardsTab' })
|
|
Schema for structure of an app cards tab. |
| COMPONENT_DEFS |
Type : unknown
|
Default value : ComponentDefsSchema.parse(RAW_COMPONENT_DEFS).defs
|
|
Parsed component defs from ComponentDefs json file |
| ORGANS |
Type : unknown
|
Default value : OrgansSchema.parse(RAW_ORGANS).organs
|
|
Parsed organs from Organs json file |
| ComponentDefIdSchema |
Type : unknown
|
Default value : z.string().brand<'ComponentDefId'>().meta({ id: 'ComponentDefId' })
|
|
Component definition id schema |
| ComponentDefsSchema |
Type : unknown
|
Default value : z
.object({
$schema: z.string(),
defs: ComponentDefSchema.array(),
})
.meta({ id: 'ComponentDefs' })
|
|
Component defs schema |
| DatasetOptionSchema |
Type : unknown
|
Default value : z.object({
key: z.string(),
label: z.string(),
})
|
|
Dataset option schema |
| GRAPH_ATTRIBUTE_LABELS |
Type : object
|
Default value : {
'': 'None',
cell_type: 'Cell Type',
dataset_id: 'Dataset ID',
count: 'Cell Count',
percentage: 'Cell Proportion',
order: 'Order',
sex: 'Sex',
race: 'Ethnicity',
age: 'Age',
cat: 'Category',
exp: 'Exposure',
location: 'Location',
laterality: 'Laterality',
y_pos: 'Vertical Tissue Block Position',
donor_id: 'Donor',
dataset_name: 'Dataset Name',
cell_type_ontology_id: 'CellOntologyID',
}
|
|
Labels for graph attributes |
| GroupOptionSchema |
Type : unknown
|
Default value : z.object({
key: GraphAttributeSchema,
label: z.string(),
})
|
|
Group option schema |
| MAIN_CONFIG_JSON |
Type : string
|
Default value : 'https://raw.githubusercontent.com/hubmapconsortium/tissue-bar-graphs/static/config/main.config.json'
|
|
Configuration JSON URL |
| OrderTypeSchema |
Type : unknown
|
Default value : z.enum(['ascending', 'descending'])
|
|
Order types for sorting |
| DATA_TYPE_CONFIGS |
Type : Record<DataType, DataTypeConfig>
|
Default value : {
anatomical: {
key: 'anatomical',
label: 'Anatomical Structures',
xAxisOptions: [
{
value: 'anatomicalStructureLabel',
label: 'Anatomical Structure Name',
field: 'anatomicalStructureLabel',
},
{
value: 'anatomicalStructureId',
label: 'Anatomical Structure ID',
field: 'anatomicalStructureId',
},
],
groupByField: 'anatomicalStructureId',
},
'extraction-site': {
key: 'extraction-site',
label: 'Extraction Sites',
xAxisOptions: [
{
value: 'extractionSiteLabel',
label: 'Extraction Site Name',
field: 'extractionSiteLabel',
},
{
value: 'extractionSiteId',
label: 'Extraction Site ID',
field: 'extractionSiteId',
},
],
groupByField: 'extractionSiteId',
},
dataset: {
key: 'dataset',
label: 'Datasets',
xAxisOptions: [
{
value: 'datasetId',
label: 'Dataset ID',
field: 'datasetId',
},
// Note: No name field available in current data model
],
groupByField: 'datasetId',
},
}
|
|
Configuration objects for each supported data type |
| SORT_OPTIONS |
Type : SortOption[]
|
Default value : [
{ value: 'totalCellCount', label: 'Total Cell Count' },
{ value: 'alphabetical', label: 'Alphabetical' },
]
|
|
Sort options available for all data types |
| Y_AXIS_OPTIONS |
Type : YAxisOption[]
|
Default value : [
{ value: 'cellCount', label: 'Raw Count' },
{ value: 'cellPercentage', label: 'Percentage' },
]
|
|
Y-axis options available for all data types |
| EMPTY_DATA |
Type : TissuePredictionData
|
Default value : {
file: new File([], ''),
}
|
|
Empty Inputs for Predictions page |
| EMPTY_DATA |
Type : TissuePredictionData
|
Default value : {
file: new File([], ''),
}
|
|
Empty Inputs for Predictions page |
| EMPTY_PREDICTIONS |
Type : CellSummaryReport
|
Default value : {
rui_locations: [],
sources: [],
}
|
|
Empty predictions |
| PREDICTION_DATE_FORMAT |
Type : unknown
|
Default value : new Intl.DateTimeFormat(undefined, {
dateStyle: 'long',
timeStyle: 'long',
})
|
|
Date format |
| SCRIPT_URL |
Type : unknown
|
Default value : `https://cdn.humanatlas.io/ui${isDevMode() ? '--staging' : ''}/ccf-eui/wc.js`
|
|
Script URL for EUI |
| STYLE_URLS |
Type : []
|
Default value : [`https://cdn.humanatlas.io/ui${isDevMode() ? '--staging' : ''}/ccf-eui/styles.css`]
|
|
Style URLs for EUI |
| OrganAppDataSchema |
Type : unknown
|
Default value : z.record(z.string(), z.any()).meta({ id: 'OrganAppData' })
|
|
Organ App Data Schema |
| OrgansSchema |
Type : unknown
|
Default value : z
.object({
$schema: z.string(),
organs: OrganSchema.array(),
})
.meta({ id: 'Organs' })
|
|
Organs Schema |
| SAMPLE_FILE |
Type : unknown
|
Default value : new InjectionToken('Sample file', {
providedIn: 'root',
factory: loadSampleFileFactory,
})
|
|
Sample CSV file |
| SAMPLE_FILE_URL |
Type : unknown
|
Default value : new InjectionToken<string>('Sample file url', {
providedIn: 'root',
factory: () => 'assets/sample-data/tissue-origin-sample.csv',
})
|
|
Sample CSV file URL |
| SAMPLE_URL_LINK |
Type : string
|
Default value : 'https://github.com/x-atlas-consortia/hra-apps/blob/main/applications/us2-cell-to-spatial/heart-cell-summary.csv'
|
|
View sample link URL |
| SAMPLE_JSON_FILE |
Type : unknown
|
Default value : new InjectionToken('Sample file', {
providedIn: 'root',
factory: loadSampleFileFactory,
})
|
|
Sample JSON file |
| SAMPLE_JSON_FILE_URL |
Type : unknown
|
Default value : new InjectionToken<string>('', {
providedIn: 'root',
factory: () => 'assets/sample-data/cell-population-sample.json',
})
|
|
Sample JSON file URL |
| SCRIPT_URL |
Type : string
|
Default value : 'https://cdn.humanatlas.io/ui/ccf-rui/wc.js'
|
|
RUI script URL |
| STYLE_URL |
Type : string
|
Default value : 'https://cdn.humanatlas.io/ui/ccf-rui/styles.css'
|
|
RUI style URL |
| servers |
Type : Server[]
|
Default value : [
/* production server */
{
id: 'prod',
description: 'HRA-API Production',
url: 'https://apps.humanatlas.io/api',
spec: 'https://apps.humanatlas.io/api/hra-api-spec.yaml',
},
/* HRA-API SPARQL Queries */
{
id: 'grlc',
description: 'HRA-API SPARQL Queries',
url: 'https://apps.humanatlas.io/api/grlc/',
spec: 'https://apps.humanatlas.io/api/grlc/index-spec.json',
},
/* staging server */
{
id: 'staging',
description: 'HRA-API Staging',
url: 'https://apps.humanatlas.io/api--staging',
spec: 'https://apps.humanatlas.io/api--staging/hra-api-spec.yaml',
},
/* CCF-API (deprecated) */
{
id: 'ccf-api',
description: 'CCF-API (deprecated) Production',
url: 'https://apps.humanatlas.io/hra-api/',
spec: 'https://apps.humanatlas.io/hra-api/ccf-api-spec.yaml',
},
]
|
|
HRA-API server options for dropdown This object contains the API endpoint URL and the corresponding OpenAPI spec URLs for use in the API page. id: server identifier description: server description url: API endpoint URL spec: OpenAPI spec URL |
| WINDOW |
Type : unknown
|
Default value : new InjectionToken<typeof window>('window', {
providedIn: 'root',
factory: () => window,
})
|
|
Injection token for the window object |
| WINDOW |
Type : unknown
|
Default value : new InjectionToken<typeof window>('window', {
providedIn: 'root',
factory: () => window,
})
|
|
Injection token for the window object |