@rcsb/rcsb-saguaro-app 4.4.0-models.10 → 4.4.0-models.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/build/dist/RcsbAnnotationConfig/AnnotationConfigInterface.d.ts +29 -0
  2. package/build/dist/RcsbAnnotationConfig/RcsbDistributionConfig.d.ts +12 -0
  3. package/build/dist/RcsbChartWeb/RcsbChartComponent/AbstractChartComponent.d.ts +3 -3
  4. package/build/dist/RcsbChartWeb/RcsbChartComponent/AbstractChartImplementation.d.ts +1 -1
  5. package/build/dist/RcsbChartWeb/RcsbChartComponent/BarChartComponent.d.ts +1 -1
  6. package/build/dist/RcsbChartWeb/RcsbChartComponent/ChartConfigInterface.d.ts +7 -1
  7. package/build/dist/RcsbChartWeb/RcsbChartComponent/HistogramChartComponent.d.ts +1 -1
  8. package/build/dist/RcsbChartWeb/RcsbChartComponent/VictoryChartImplementations/Components/TooltipFactory.d.ts +7 -2
  9. package/build/dist/RcsbChartWeb/{RcsbChartData/BarChartData.d.ts → RcsbChartDataProvider/BarChartDataProvider.d.ts} +3 -4
  10. package/build/dist/RcsbChartWeb/{RcsbChartData → RcsbChartDataProvider}/ChartDataProviderInterface.d.ts +9 -1
  11. package/build/dist/RcsbChartWeb/{RcsbChartData/HistogramChartData.d.ts → RcsbChartDataProvider/HistogramChartDataProvider.d.ts} +3 -4
  12. package/build/dist/RcsbChartWeb/RcsbChartTools/ChartTools.d.ts +6 -17
  13. package/build/dist/RcsbExport/RcsbFvUI.d.ts +2 -2
  14. package/build/dist/RcsbFvExamples/ResidueDistribution.d.ts +1 -0
  15. package/build/dist/RcsbFvWeb/RcsbFvBuilder/RcsbFvCoreBuilder.d.ts +2 -2
  16. package/build/dist/RcsbFvWeb/RcsbFvBuilder/RcsbFvInstanceBuilder.d.ts +1 -1
  17. package/build/dist/RcsbFvWeb/{WebTools/WebToolsManager.d.ts → RcsbFvComponents/ComponentsManager.d.ts} +2 -6
  18. package/build/dist/RcsbFvWeb/{WebTools → RcsbFvComponents}/LoaderSpinner.d.ts +0 -0
  19. package/build/dist/RcsbFvWeb/RcsbFvComponents/MountableComponent.d.ts +8 -0
  20. package/build/dist/RcsbFvWeb/{WebTools → RcsbFvComponents}/RcsbTabs.d.ts +0 -0
  21. package/build/dist/RcsbFvWeb/{WebTools → RcsbFvComponents}/SelectButton.d.ts +4 -3
  22. package/build/dist/RcsbFvWeb/RcsbFvComponents/SelectButtonManager.d.ts +17 -0
  23. package/build/dist/RcsbFvWeb/RcsbFvComponents/SelectButtonTitle.d.ts +6 -0
  24. package/build/dist/RcsbFvWeb/RcsbFvModule/RcsbFvInterface.d.ts +3 -0
  25. package/build/dist/RcsbGroupWeb/RcsbGroupBuilder.d.ts +2 -0
  26. package/build/dist/RcsbGroupWeb/RcsbGroupView/RcsbGroupDisplay.d.ts +2 -0
  27. package/build/dist/RcsbGroupWeb/RcsbGroupView/RcsbResidueChart/RcsbResidueChartComponent.d.ts +15 -0
  28. package/build/dist/RcsbGroupWeb/RcsbGroupView/RcsbResidueChart/ResidueChartFactories/DistributionChartFactoryImpl/DistributionChartFactory.d.ts +8 -0
  29. package/build/dist/RcsbGroupWeb/RcsbGroupView/RcsbResidueChart/ResidueChartFactories/ResidueDistributionFactoryImpl/MultipleTrackDistributionFactory.d.ts +8 -0
  30. package/build/dist/RcsbGroupWeb/RcsbGroupView/RcsbResidueChart/ResidueChartFactories/ResidueDistributionFactoryImpl/NumericalTrackDistributionFactory.d.ts +8 -0
  31. package/build/dist/RcsbGroupWeb/RcsbGroupView/RcsbResidueChart/ResidueChartFactories/ResidueDistributionFactoryImpl/TrackDistributionFactory.d.ts +10 -0
  32. package/build/dist/RcsbGroupWeb/RcsbGroupView/RcsbResidueChart/ResidueChartFactories/ResidueDistributionFactoryInterface.d.ts +24 -0
  33. package/build/dist/RcsbGroupWeb/RcsbGroupView/RcsbResidueChart/ResidueChartFactories/TrackBlockFactoryImpl/TrackBlockFactory.d.ts +14 -0
  34. package/build/dist/RcsbGroupWeb/RcsbGroupView/RcsbResidueChart/ResidueChartTools/Helper.d.ts +4 -0
  35. package/build/dist/RcsbGroupWeb/RcsbGroupView/RcsbResidueChart/ResidueChartTools/ResidueChartTools.d.ts +8 -0
  36. package/build/dist/RcsbSeacrh/FacetTools.d.ts +2 -6
  37. package/build/dist/app.js +1 -1
  38. package/build/dist/plot.d.ts +1 -1
  39. package/build/dist/plot.js +1 -1
  40. package/build/dist/plot.js.LICENSE.txt +9 -0
  41. package/package.json +5 -3
  42. package/build/dist/RcsbChartWeb/RcsbChartData/ChartDataInterface.d.ts +0 -7
@@ -31,3 +31,32 @@ export interface RcsbAnnotationConfigInterface {
31
31
  ignore?: boolean;
32
32
  fitTitleWidth?: boolean;
33
33
  }
34
+ export interface RcsbDistributionConfigInterface {
35
+ blockConfig: RcsbTrackBlockConfigInterface[];
36
+ trackConfig: RcsbTrackConfigInterface[];
37
+ }
38
+ export interface RcsbTrackBlockConfigInterface {
39
+ type: string;
40
+ title: string;
41
+ trackType: string[];
42
+ sort: string[];
43
+ contentType: "binary" | "numerical";
44
+ undefTrack?: {
45
+ label: string;
46
+ color: string;
47
+ id: string;
48
+ };
49
+ }
50
+ export interface RcsbTrackConfigInterface {
51
+ type: string;
52
+ color?: string;
53
+ label?: string;
54
+ numericalCategories?: {
55
+ thresholds: number[];
56
+ categories: {
57
+ label: string;
58
+ color: string;
59
+ id: string;
60
+ }[];
61
+ };
62
+ }
@@ -0,0 +1,12 @@
1
+ import { RcsbDistributionConfigInterface, RcsbTrackBlockConfigInterface, RcsbTrackConfigInterface } from "./AnnotationConfigInterface";
2
+ export declare class RcsbDistributionConfig {
3
+ private readonly distributionConfig;
4
+ private trackToBlockType;
5
+ private trackConfig;
6
+ private blockConfig;
7
+ constructor(dcm?: RcsbDistributionConfigInterface);
8
+ getBlockType(trackType: string): string;
9
+ getBlockConfig(type: string): RcsbTrackBlockConfigInterface;
10
+ getTrackConfig(type: string): RcsbTrackConfigInterface;
11
+ private processConfig;
12
+ }
@@ -1,6 +1,6 @@
1
1
  import { ChartConfigInterface, ChartObjectInterface } from "./ChartConfigInterface";
2
2
  import * as React from "react";
3
- import { ChartDataProviderInterface } from "../RcsbChartData/ChartDataProviderInterface";
3
+ import { ChartDataProviderInterface } from "../RcsbChartDataProvider/ChartDataProviderInterface";
4
4
  import { AbstractChartImplementationType } from "./AbstractChartImplementation";
5
5
  interface AbstractChartState {
6
6
  data: ChartObjectInterface[];
@@ -21,8 +21,8 @@ export declare abstract class AbstractChartComponent extends React.Component<Abs
21
21
  readonly state: AbstractChartState;
22
22
  componentDidMount(): void;
23
23
  componentWillUnmount(): void;
24
- protected unsubscribe(): void;
25
- protected subscribe(): void;
24
+ private unsubscribe;
25
+ private subscribe;
26
26
  private updateChartMap;
27
27
  private asyncUpdate;
28
28
  }
@@ -1,5 +1,5 @@
1
1
  import React from "react";
2
- import { ChartDataReaderInterface } from "../RcsbChartData/ChartDataProviderInterface";
2
+ import { ChartDataReaderInterface } from "../RcsbChartDataProvider/ChartDataProviderInterface";
3
3
  import { ChartConfigInterface } from "./ChartConfigInterface";
4
4
  export interface AbstractChartImplementationInterface {
5
5
  height: number;
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { ChartDataProviderInterface } from "../RcsbChartData/ChartDataProviderInterface";
2
+ import { ChartDataProviderInterface } from "../RcsbChartDataProvider/ChartDataProviderInterface";
3
3
  import { AbstractChartComponent } from "./AbstractChartComponent";
4
4
  export declare class BarChartComponent extends AbstractChartComponent {
5
5
  protected readonly dataProvider: ChartDataProviderInterface;
@@ -1,8 +1,12 @@
1
- import { ChartDataInterface } from "../RcsbChartData/ChartDataInterface";
1
+ import { ChartDataInterface } from "../RcsbChartDataProvider/ChartDataProviderInterface";
2
2
  import * as React from "react";
3
3
  export interface ChartObjectInterface {
4
4
  label: string | number;
5
5
  population: number;
6
+ objectConfig?: {
7
+ objectId?: string;
8
+ color?: string;
9
+ };
6
10
  }
7
11
  export declare type BarClickCallbackType = (datum: ChartDataInterface, data: ChartDataInterface[], e: React.MouseEvent<any>) => void;
8
12
  export interface ChartConfigInterface {
@@ -18,6 +22,8 @@ export interface ChartConfigInterface {
18
22
  };
19
23
  axisLabel?: string;
20
24
  barClickCallback?: BarClickCallbackType;
25
+ sort?: (b: ChartDataInterface, a: ChartDataInterface) => number;
26
+ tooltipText?: (a: ChartDataInterface) => string;
21
27
  }
22
28
  export declare enum ChartType {
23
29
  pie = "pie",
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { ChartDataProviderInterface } from "../RcsbChartData/ChartDataProviderInterface";
2
+ import { ChartDataProviderInterface } from "../RcsbChartDataProvider/ChartDataProviderInterface";
3
3
  import { AbstractChartComponent } from "./AbstractChartComponent";
4
4
  export declare class HistogramChartComponent extends AbstractChartComponent {
5
5
  protected readonly dataProvider: ChartDataProviderInterface;
@@ -1,6 +1,11 @@
1
1
  import * as React from "react";
2
2
  import { VictoryTooltipProps } from "victory-tooltip";
3
- export declare class TooltipFactory extends React.Component<VictoryTooltipProps, any> {
4
- static getTooltip(props: VictoryTooltipProps): JSX.Element;
3
+ import { ChartConfigInterface } from "../../ChartConfigInterface";
4
+ declare type TooltipPropsType = VictoryTooltipProps & {
5
+ tooltipText?: ChartConfigInterface["tooltipText"];
6
+ };
7
+ export declare class TooltipFactory extends React.Component<TooltipPropsType, any> {
8
+ static getTooltip(props: TooltipPropsType): JSX.Element;
5
9
  private static text;
6
10
  }
11
+ export {};
@@ -1,11 +1,10 @@
1
1
  import { ChartConfigInterface, ChartObjectInterface } from "../RcsbChartComponent/ChartConfigInterface";
2
- import { ChartDataProviderInterface } from "./ChartDataProviderInterface";
3
- import { ChartDataInterface } from "./ChartDataInterface";
4
- export declare class BarChartData implements ChartDataProviderInterface {
2
+ import { ChartDataProviderInterface, ChartDataInterface } from "./ChartDataProviderInterface";
3
+ export declare class BarChartDataProvider implements ChartDataProviderInterface {
5
4
  private stringTicks;
6
5
  private excludedData;
7
6
  private data;
8
- setData(chartData: ChartObjectInterface[], chartSubData: ChartObjectInterface[], config: ChartConfigInterface): void;
7
+ setData(chartData: ChartObjectInterface[], chartSubData: ChartObjectInterface[], config?: ChartConfigInterface): void;
9
8
  getChartData(): {
10
9
  data: ChartDataInterface[];
11
10
  excludedData: ChartDataInterface[];
@@ -1,5 +1,13 @@
1
1
  import { ChartConfigInterface, ChartObjectInterface } from "../RcsbChartComponent/ChartConfigInterface";
2
- import { ChartDataInterface } from "./ChartDataInterface";
2
+ export interface ChartDataInterface {
3
+ x: string | number;
4
+ y: number;
5
+ yc?: number;
6
+ label?: string;
7
+ isLabel?: boolean;
8
+ color?: string;
9
+ id?: string;
10
+ }
3
11
  export interface ChartDataProviderInterface extends ChartDataReaderInterface {
4
12
  setData(data: ChartObjectInterface[], subData: ChartObjectInterface[], config: ChartConfigInterface): void;
5
13
  }
@@ -1,10 +1,9 @@
1
- import { ChartDataProviderInterface } from "./ChartDataProviderInterface";
1
+ import { ChartDataProviderInterface, ChartDataInterface } from "./ChartDataProviderInterface";
2
2
  import { ChartConfigInterface, ChartObjectInterface } from "../RcsbChartComponent/ChartConfigInterface";
3
- import { ChartDataInterface } from "./ChartDataInterface";
4
- export declare class HistogramChartData implements ChartDataProviderInterface {
3
+ export declare class HistogramChartDataProvider implements ChartDataProviderInterface {
5
4
  private config;
6
5
  private data;
7
- setData(chartData: ChartObjectInterface[], chartSubData: ChartObjectInterface[], config: ChartConfigInterface): void;
6
+ setData(chartData: ChartObjectInterface[], chartSubData: ChartObjectInterface[], config?: ChartConfigInterface): void;
8
7
  getChartData(): {
9
8
  data: ChartDataInterface[];
10
9
  };
@@ -1,5 +1,5 @@
1
1
  import { ChartObjectInterface } from "../RcsbChartComponent/ChartConfigInterface";
2
- import { ChartDataInterface } from "../RcsbChartData/ChartDataInterface";
2
+ import { ChartDataInterface } from "../RcsbChartDataProvider/ChartDataProviderInterface";
3
3
  export declare class ChartTools {
4
4
  static readonly paddingLeft: number;
5
5
  static readonly paddingTopLarge: number;
@@ -12,22 +12,11 @@ export declare class ChartTools {
12
12
  static readonly barWidth: number;
13
13
  static readonly fontFamily: string;
14
14
  static readonly fontSize: number;
15
- static mergeGroupSize(data: ChartObjectInterface[], size: number, mergeName?: string): {
16
- x: string;
17
- y: number;
18
- }[];
19
- static mostPopulatedGroups(data: ChartObjectInterface[], maxGroups: number, mergeName?: string): {
20
- x: string;
21
- y: number;
22
- }[];
23
- static mergeDomainMaxValue(data: ChartObjectInterface[], maxValue: number): {
24
- x: number;
25
- y: number;
26
- }[];
15
+ static mergeGroupSize(data: ChartObjectInterface[], size: number, mergeName?: string): ChartDataInterface[];
16
+ static mostPopulatedGroups(data: ChartObjectInterface[], maxGroups: number, mergeName?: string): ChartDataInterface[];
17
+ static mergeDomainMaxValue(data: ChartObjectInterface[], maxValue: number): ChartDataInterface[];
27
18
  static labelsAsString(data: ChartObjectInterface[]): ChartDataInterface[];
28
- static labelsAsNumber(data: ChartObjectInterface[]): {
29
- x: number;
30
- y: number;
31
- }[];
19
+ static labelsAsNumber(data: ChartObjectInterface[]): ChartDataInterface[];
32
20
  static addComplementaryData(data: ChartDataInterface[], subData: ChartDataInterface[]): void;
21
+ static mergeData(data: ChartDataInterface[]): ChartDataInterface[];
33
22
  }
@@ -1,5 +1,5 @@
1
- import { GroupedOptionsInterface, SelectOptionInterface } from "../RcsbFvWeb/WebTools/SelectButton";
2
- import { SelectButtonConfigInterface } from "../RcsbFvWeb/WebTools/WebToolsManager";
1
+ import { GroupedOptionsInterface, SelectOptionInterface } from "../RcsbFvWeb/RcsbFvComponents/SelectButton";
2
+ import { SelectButtonConfigInterface } from "../RcsbFvWeb/RcsbFvComponents/ComponentsManager";
3
3
  export declare class RcsbFvUI {
4
4
  static clearSelectButton(elementFvId: string, selectButtonId: string): void;
5
5
  static createSelectButton(elementFvId: string, selectButtonId: string, options: Array<SelectOptionInterface> | Array<GroupedOptionsInterface>, config?: SelectButtonConfigInterface): void;
@@ -0,0 +1 @@
1
+ export {};
@@ -1,8 +1,8 @@
1
1
  import { PolymerEntityInstanceTranslate } from "../../RcsbUtils/Translators/PolymerEntityInstanceTranslate";
2
2
  import { RcsbFv } from "@rcsb/rcsb-saguaro";
3
3
  import { RcsbFvModuleBuildInterface, RcsbFvModuleInterface, RcsbFvModulePublicInterface } from "../RcsbFvModule/RcsbFvModuleInterface";
4
- import { SelectButtonConfigInterface } from "../WebTools/WebToolsManager";
5
- import { GroupedOptionsInterface, SelectOptionInterface } from "../WebTools/SelectButton";
4
+ import { SelectButtonConfigInterface } from "../RcsbFvComponents/ComponentsManager";
5
+ import { GroupedOptionsInterface, SelectOptionInterface } from "../RcsbFvComponents/SelectButton";
6
6
  export interface CreateFvInterface {
7
7
  elementId: string;
8
8
  fvModuleI: new (elementId: string, rcsbFv: RcsbFv) => RcsbFvModuleInterface;
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import { RcsbContextType, RcsbFvAdditionalConfig } from "../RcsbFvModule/RcsbFvModuleInterface";
3
3
  import { PolymerEntityInstanceInterface } from "../../RcsbCollectTools/DataCollectors/PolymerEntityInstancesCollector";
4
- import { SelectOptionProps } from "../WebTools/SelectButton";
4
+ import { SelectOptionProps } from "../RcsbFvComponents/SelectButton";
5
5
  import { RcsbFvModulePublicInterface } from "../RcsbFvModule/RcsbFvModuleInterface";
6
6
  export interface InstanceSequenceOnchangeInterface extends PolymerEntityInstanceInterface {
7
7
  }
@@ -8,18 +8,14 @@ export interface SelectButtonConfigInterface {
8
8
  optionProps?: (props: SelectOptionProps) => JSX.Element;
9
9
  isAdditionalButton?: boolean;
10
10
  }
11
- export declare class WebToolsManager {
12
- private static readonly suffix;
13
- private static readonly suffixAdditionalButton;
11
+ export declare class ComponentsManager {
14
12
  private static readonly loaderSpinner;
13
+ private static readonly selectButtonMap;
15
14
  private static readonly nodeMap;
16
15
  static buildSelectButton(elementId: string, options: Array<SelectOptionInterface> | Array<GroupedOptionsInterface>, config?: SelectButtonConfigInterface): void;
17
16
  static addSelectButton(elementId: string, options: Array<SelectOptionInterface>, config?: SelectButtonConfigInterface): void;
18
- private static innerBuildSelectButton;
19
- private static jsxButton;
20
17
  static clearSelectButton(elementId: string): void;
21
18
  static clearAdditionalSelectButton(elementId: string): void;
22
- static innerClearSelectButton(elementId: string, suffix: string): void;
23
19
  static buildLoaderSpinner(elementId: string): void;
24
20
  static unmountLoaderSpinner(elementId: string): void;
25
21
  private static hideElement;
@@ -0,0 +1,8 @@
1
+ import { ReactNode } from "react";
2
+ export declare class MountableComponent {
3
+ private readonly element;
4
+ private root;
5
+ constructor(element: HTMLElement);
6
+ render(node: ReactNode): void;
7
+ unmount(): void;
8
+ }
@@ -8,8 +8,8 @@ export declare type SelectOptionProps = OptionProps<OptionPropsInterface, false,
8
8
  interface SelectButtonInterface {
9
9
  elementId: string;
10
10
  options?: Array<SelectOptionInterface> | Array<GroupedOptionsInterface>;
11
- additionalOptions?: Array<SelectOptionInterface>;
12
11
  addTitle: boolean;
12
+ renderTitle: (title: string) => void;
13
13
  defaultValue?: string | undefined | null;
14
14
  width?: number;
15
15
  dropdownTitle?: string;
@@ -35,8 +35,9 @@ interface SelectButtonState {
35
35
  selectedOption: OptionPropsInterface;
36
36
  }
37
37
  export declare class SelectButton extends React.Component<SelectButtonInterface, SelectButtonState> {
38
- static readonly BUTTON_CONTAINER_DIV_SUFFIX = "_buttonContainerDiv";
38
+ private static readonly BUTTON_CONTAINER_DIV_SUFFIX;
39
39
  private defaultValue;
40
+ private currentOption;
40
41
  readonly state: SelectButtonState;
41
42
  constructor(props: SelectButtonInterface);
42
43
  private change;
@@ -44,10 +45,10 @@ export declare class SelectButton extends React.Component<SelectButtonInterface,
44
45
  componentDidMount(): void;
45
46
  render(): JSX.Element;
46
47
  private selectRender;
47
- private titleRender;
48
48
  private selectButtonRender;
49
49
  private innerSelectButtonRender;
50
50
  private configStyle;
51
51
  private getSelectOpt;
52
+ private renderTitle;
52
53
  }
53
54
  export {};
@@ -0,0 +1,17 @@
1
+ import { GroupedOptionsInterface, SelectOptionInterface } from "./SelectButton";
2
+ import { SelectButtonConfigInterface } from "./ComponentsManager";
3
+ export declare class SelectButtonManager {
4
+ private readonly elementId;
5
+ private static readonly MAIN_BUTTON_SUFFIX;
6
+ private static readonly ADDITIONAL_BUTTON_SUFFIX;
7
+ private static readonly SELECT_TITLE_DIV;
8
+ private readonly selectComponent;
9
+ constructor(elementId: string);
10
+ createButton(options: Array<SelectOptionInterface> | Array<GroupedOptionsInterface>, config?: SelectButtonConfigInterface): void;
11
+ addButton(options: Array<SelectOptionInterface> | Array<GroupedOptionsInterface>, config?: SelectButtonConfigInterface): void;
12
+ unmountButton(): void;
13
+ unmountAdditionalButton(): void;
14
+ private button;
15
+ private renderTitle;
16
+ private createDiv;
17
+ }
@@ -0,0 +1,6 @@
1
+ import * as React from "react";
2
+ export declare class SelectButtonTitle extends React.Component<{
3
+ title: string;
4
+ }> {
5
+ render(): JSX.Element;
6
+ }
@@ -1,3 +1,4 @@
1
+ import { AnnotationFeatures } from "@rcsb/rcsb-api-tools/build/RcsbGraphQL/Types/Borrego/GqlTypes";
1
2
  import { RcsbFvAbstractModule } from "./RcsbFvAbstractModule";
2
3
  import { RcsbFvModuleBuildInterface } from "./RcsbFvModuleInterface";
3
4
  export declare class RcsbFvInterface extends RcsbFvAbstractModule {
@@ -8,3 +9,5 @@ export declare class RcsbFvInterface extends RcsbFvAbstractModule {
8
9
  private titleSuffix;
9
10
  private trackTitle;
10
11
  }
12
+ export declare function interfaceAnnotations(annotations: Array<AnnotationFeatures>): Promise<Array<AnnotationFeatures>>;
13
+ export declare function filter(ann: Array<AnnotationFeatures>): Promise<Array<AnnotationFeatures>>;
@@ -6,10 +6,12 @@ import { GroupChartAdditionalProperties } from "./RcsbGroupView/RcsbGroupChart/G
6
6
  import { SearchQueryContextManagerSubjectInterface } from "./RcsbGroupView/RcsbGroupSeacrhQuery/SearchQueryContextManager";
7
7
  import { Subscription } from "rxjs";
8
8
  import { RcsbGroupContentTextInterface } from "./RcsbGroupView/RcsbGroupContent/RcsbGroupContentComponent";
9
+ import { ResidueChartInterface } from "./RcsbGroupView/RcsbResidueChart/ResidueChartTools/ResidueChartTools";
9
10
  export declare function buildSearchRequest(elementId: string, searchQuery: SearchQueryType, returnType: ReturnType): Promise<void>;
10
11
  export declare function buildGroup(elementId: string, groupProvenance: GroupProvenanceId, groupId: string, query?: SearchQuery, facetLayoutGrid?: string[], additionalProperties?: GroupChartAdditionalProperties): Promise<void>;
11
12
  export declare function buildGroupMembers(elementId: string, groupProvenance: GroupProvenanceId, groupId: string, nRows: number, nColumns: number, query?: SearchQuery): void;
12
13
  export declare function buildGroupContent(elementId: string, groupProvenance: GroupProvenanceId, groupId: string, query?: SearchQuery, textConfig?: RcsbGroupContentTextInterface): void;
14
+ export declare function buildResidueDistribution(elementId: string, granularity: ResidueChartInterface["granularity"], rcsbId: string, facetLayoutGrid?: string[]): void;
13
15
  export declare const searchQueryContextManager: {
14
16
  subscribe(f: (o: SearchQueryContextManagerSubjectInterface) => void): Subscription;
15
17
  };
@@ -5,9 +5,11 @@ import { ReturnType } from "@rcsb/rcsb-api-tools/build/RcsbSearch/Types/SearchEn
5
5
  import { GroupProvenanceId } from "@rcsb/rcsb-api-tools/build/RcsbDw/Types/DwEnums";
6
6
  import { GroupChartAdditionalProperties } from "./RcsbGroupChart/GroupChartAdditionalProperties";
7
7
  import { RcsbGroupContentTextInterface } from "./RcsbGroupContent/RcsbGroupContentComponent";
8
+ import { ResidueChartInterface } from "./RcsbResidueChart/ResidueChartTools/ResidueChartTools";
8
9
  export declare class RcsbGroupDisplay {
9
10
  static displayRcsbSearchStats(elementId: string, facetStore: FacetStoreInterface, searchQuery: SearchQueryType, returnType: ReturnType): Promise<void>;
10
11
  static displaySearchAttributes(elementId: string, groupProvenanceId: GroupProvenanceId, groupId: string, searchQuery?: SearchQuery, facetLayoutGrid?: string[], additionalProperties?: GroupChartAdditionalProperties): Promise<void>;
11
12
  static displayGroupMembers(elementId: string, groupProvenanceId: GroupProvenanceId, groupId: string, nRows: number, nColumns: number, query?: SearchQuery): void;
12
13
  static displayGroupContent(elementId: string, groupProvenanceId: GroupProvenanceId, groupId: string, query?: SearchQuery, textConfig?: RcsbGroupContentTextInterface): void;
14
+ static displayResidueDistribution(elementId: string, granularity: ResidueChartInterface["granularity"], rcsbId: string, facetLayoutGrid?: string[]): void;
13
15
  }
@@ -0,0 +1,15 @@
1
+ import * as React from "react";
2
+ import { ChartMapType } from "../RcsbGroupChart/GroupChartLayout";
3
+ import { ResidueChartInterface } from "./ResidueChartTools/ResidueChartTools";
4
+ interface RcsbResidueChartState {
5
+ layout: string[];
6
+ chartMap: ChartMapType;
7
+ }
8
+ export declare class RcsbResidueChartComponent extends React.Component<ResidueChartInterface & {
9
+ facetLayoutGrid?: string[];
10
+ }, RcsbResidueChartState> {
11
+ render(): JSX.Element;
12
+ componentDidMount(): Promise<void>;
13
+ private updateState;
14
+ }
15
+ export {};
@@ -0,0 +1,8 @@
1
+ import { DistributionChartFactoryInterface, ResidueDistributionInterface } from "../ResidueDistributionFactoryInterface";
2
+ import { RcsbChartInterface } from "../../../../../RcsbSeacrh/FacetTools";
3
+ import { RcsbDistributionConfig } from "../../../../../RcsbAnnotationConfig/RcsbDistributionConfig";
4
+ export declare class DistributionChartFactory implements DistributionChartFactoryInterface {
5
+ private readonly distributionConfig;
6
+ constructor(distributionConfig?: RcsbDistributionConfig);
7
+ getChart(residueDistribution: ResidueDistributionInterface): RcsbChartInterface;
8
+ }
@@ -0,0 +1,8 @@
1
+ import { ResidueDistributionFactoryInterface, ResidueDistributionInterface } from "../ResidueDistributionFactoryInterface";
2
+ import { TrackManagerInterface } from "../../../../../RcsbFvWeb/RcsbFvFactories/RcsbFvBlockFactory/BlockManager/TrackManagerInterface";
3
+ import { RcsbDistributionConfig } from "../../../../../RcsbAnnotationConfig/RcsbDistributionConfig";
4
+ export declare class MultipleTrackDistributionFactory implements ResidueDistributionFactoryInterface<[string, number]> {
5
+ private readonly distributionConfig;
6
+ constructor(distributionConfig?: RcsbDistributionConfig);
7
+ getDistribution(tracks: TrackManagerInterface[], blockType: string, numberResidues: number): ResidueDistributionInterface;
8
+ }
@@ -0,0 +1,8 @@
1
+ import { ResidueDistributionFactoryInterface, ResidueDistributionInterface } from "../ResidueDistributionFactoryInterface";
2
+ import { TrackManagerInterface } from "../../../../../RcsbFvWeb/RcsbFvFactories/RcsbFvBlockFactory/BlockManager/TrackManagerInterface";
3
+ import { RcsbDistributionConfig } from "../../../../../RcsbAnnotationConfig/RcsbDistributionConfig";
4
+ export declare class NumericalTrackDistributionFactory implements ResidueDistributionFactoryInterface<[string, number]> {
5
+ private readonly distributionConfig;
6
+ constructor(distributionConfig?: RcsbDistributionConfig);
7
+ getDistribution(tracks: [TrackManagerInterface], blockType: string, numberResidues: number): ResidueDistributionInterface;
8
+ }
@@ -0,0 +1,10 @@
1
+ import { ResidueDistributionFactoryInterface, ResidueDistributionInterface } from "../ResidueDistributionFactoryInterface";
2
+ import { RcsbDistributionConfig } from "../../../../../RcsbAnnotationConfig/RcsbDistributionConfig";
3
+ import { TrackManagerInterface } from "../../../../../RcsbFvWeb/RcsbFvFactories/RcsbFvBlockFactory/BlockManager/TrackManagerInterface";
4
+ export declare class TrackDistributionFactory implements ResidueDistributionFactoryInterface<[string, number]> {
5
+ private readonly distributionConfig;
6
+ private readonly multipleTrackDistributionFactory;
7
+ private readonly numericalTrackDistributionFactory;
8
+ constructor(distributionConfig?: RcsbDistributionConfig);
9
+ getDistribution(tracks: TrackManagerInterface[], blockType: string, numberResidues: number): ResidueDistributionInterface;
10
+ }
@@ -0,0 +1,24 @@
1
+ import { TrackManagerInterface } from "../../../../RcsbFvWeb/RcsbFvFactories/RcsbFvBlockFactory/BlockManager/TrackManagerInterface";
2
+ import { RcsbChartInterface } from "../../../../RcsbSeacrh/FacetTools";
3
+ export interface ResidueDistributionInterface {
4
+ attribute: string;
5
+ title: string;
6
+ buckets: ResidueBucket[];
7
+ }
8
+ export interface ResidueBucket {
9
+ label: string;
10
+ id: string;
11
+ color: string;
12
+ residueSet: Set<number>;
13
+ }
14
+ export interface TrackBlockFactoryInterface<S = {}> {
15
+ getTrackBlocks(tracks: TrackManagerInterface[]): ({
16
+ tracks: TrackManagerInterface[];
17
+ } & S)[];
18
+ }
19
+ export interface ResidueDistributionFactoryInterface<T extends any[] = []> {
20
+ getDistribution(tracks: TrackManagerInterface[], ...args: T): ResidueDistributionInterface;
21
+ }
22
+ export interface DistributionChartFactoryInterface {
23
+ getChart(residueDistribution: ResidueDistributionInterface): RcsbChartInterface;
24
+ }
@@ -0,0 +1,14 @@
1
+ import { TrackBlockFactoryInterface } from "../ResidueDistributionFactoryInterface";
2
+ import { TrackManagerInterface } from "../../../../../RcsbFvWeb/RcsbFvFactories/RcsbFvBlockFactory/BlockManager/TrackManagerInterface";
3
+ import { RcsbDistributionConfig } from "../../../../../RcsbAnnotationConfig/RcsbDistributionConfig";
4
+ export declare class TrackBlockFactory implements TrackBlockFactoryInterface<{
5
+ blockType: string;
6
+ }> {
7
+ private readonly distributionConfig;
8
+ constructor(distributionConfig?: RcsbDistributionConfig);
9
+ getTrackBlocks(tracks: TrackManagerInterface[]): ({
10
+ tracks: TrackManagerInterface[];
11
+ } & {
12
+ blockType: string;
13
+ })[];
14
+ }
@@ -0,0 +1,4 @@
1
+ import { RcsbChartInterface } from "../../../../RcsbSeacrh/FacetTools";
2
+ export declare namespace Helper {
3
+ function mergeCharts(charts: RcsbChartInterface[]): RcsbChartInterface[];
4
+ }
@@ -0,0 +1,8 @@
1
+ import { RcsbChartInterface } from "../../../../RcsbSeacrh/FacetTools";
2
+ export interface ResidueChartInterface {
3
+ granularity: "entry" | "assembly" | "instance" | "entity";
4
+ rcsbId: string;
5
+ }
6
+ export declare namespace ResidueChartTools {
7
+ function getResidueDistribution(residueChart: ResidueChartInterface): Promise<Promise<RcsbChartInterface[]>>;
8
+ }
@@ -1,12 +1,8 @@
1
1
  import { BucketFacet } from "@rcsb/rcsb-api-tools/build/RcsbSearch/Types/SearchResultInterface";
2
- import { ChartConfigInterface, ChartType } from "../RcsbChartWeb/RcsbChartComponent/ChartConfigInterface";
2
+ import { ChartConfigInterface, ChartObjectInterface, ChartType } from "../RcsbChartWeb/RcsbChartComponent/ChartConfigInterface";
3
3
  import { FacetMemberInterface } from "./FacetStore/FacetMemberInterface";
4
4
  import { AttributeTextQueryParameters } from "@rcsb/rcsb-api-tools/build/RcsbSearch/Types/SearchQueryInterface";
5
5
  import { Operator, Service } from "@rcsb/rcsb-api-tools/build/RcsbSearch/Types/SearchEnums";
6
- export interface RcsbChartDataInterface {
7
- label: string | number;
8
- population: number;
9
- }
10
6
  export declare type SearchFilter = {
11
7
  attribute: string;
12
8
  value: AttributeTextQueryParameters['value'];
@@ -20,7 +16,7 @@ export interface RcsbChartInterface {
20
16
  attributeName: string;
21
17
  chartConfig?: ChartConfigInterface;
22
18
  title: string;
23
- data: RcsbChartDataInterface[];
19
+ data: ChartObjectInterface[];
24
20
  filters?: SearchFilter[];
25
21
  contentType: FacetMemberInterface['contentType'];
26
22
  }