@rcsb/rcsb-saguaro-app 2.4.0 → 3.2.1-interfaces

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 (36) hide show
  1. package/CHANGELOG.md +31 -3
  2. package/LICENSE.md +21 -0
  3. package/README.md +2 -2
  4. package/build/dist/ExternalResources/NcbiData/NcbiSummary.d.ts +1 -1
  5. package/build/dist/RcsbAnnotationConfig/RcsbAnnotationConfig.d.ts +2 -1
  6. package/build/dist/RcsbCollectTools/AnnotationCollector/AnnotationCollector.d.ts +3 -1
  7. package/build/dist/RcsbCollectTools/AnnotationCollector/AnnotationCollectorInterface.d.ts +3 -2
  8. package/build/dist/RcsbCollectTools/AnnotationCollector/AnnotationTrackManager.d.ts +1 -1
  9. package/build/dist/RcsbCollectTools/CoreCollectorInterface.d.ts +2 -1
  10. package/build/dist/RcsbCollectTools/FeatureTools/ExternalTrackBuilderInterface.d.ts +7 -3
  11. package/build/dist/RcsbCollectTools/SequenceCollector/GenomeMapCollector.d.ts +2 -0
  12. package/build/dist/RcsbCollectTools/SequenceCollector/ObservedSequenceCollector.d.ts +3 -0
  13. package/build/dist/RcsbCollectTools/SequenceCollector/SequenceCollector.d.ts +3 -1
  14. package/build/dist/RcsbCollectTools/Translators/InterfaceInstanceCollector.d.ts +11 -0
  15. package/build/dist/RcsbFvWeb/RcsbFvBuilder/RcsbFvContextManager.d.ts +3 -0
  16. package/build/dist/RcsbFvWeb/RcsbFvBuilder/RcsbFvInstanceBuilder.d.ts +5 -1
  17. package/build/dist/RcsbFvWeb/RcsbFvBuilder.d.ts +1 -1
  18. package/build/dist/RcsbFvWeb/RcsbFvModule/RcsbFvAbstractModule.d.ts +9 -1
  19. package/build/dist/RcsbFvWeb/RcsbFvModule/RcsbFvChromosome.d.ts +2 -1
  20. package/build/dist/RcsbFvWeb/RcsbFvModule/RcsbFvEntity.d.ts +3 -1
  21. package/build/dist/RcsbFvWeb/RcsbFvModule/RcsbFvInstance.d.ts +2 -1
  22. package/build/dist/RcsbFvWeb/RcsbFvModule/RcsbFvInterface.d.ts +10 -0
  23. package/build/dist/RcsbFvWeb/RcsbFvModule/RcsbFvModuleInterface.d.ts +10 -0
  24. package/build/dist/RcsbFvWeb/RcsbFvModule/RcsbFvPairwiseAlignment.d.ts +2 -1
  25. package/build/dist/RcsbFvWeb/RcsbFvModule/RcsbFvProteinSequence.d.ts +2 -1
  26. package/build/dist/RcsbFvWeb/RcsbFvModule/RcsbFvUniprot.d.ts +2 -1
  27. package/build/dist/RcsbFvWeb/RcsbFvModule/RcsbFvUniprotEntity.d.ts +3 -1
  28. package/build/dist/RcsbFvWeb/RcsbFvModule/RcsbFvUniprotInstance.d.ts +2 -1
  29. package/build/dist/RcsbGraphQL/RcsbClient.d.ts +3 -1
  30. package/build/dist/RcsbGraphQL/RcsbQueryInterfaceInstances.d.ts +7 -0
  31. package/build/dist/RcsbUtils/InterfaceInstanceTranslate.d.ts +7 -0
  32. package/build/dist/app.js +15 -15
  33. package/build/dist/app.js.map +1 -1
  34. package/build/dist/worker.js +1 -1
  35. package/build/dist/worker.js.map +1 -1
  36. package/package.json +4 -4
package/CHANGELOG.md CHANGED
@@ -2,6 +2,29 @@
2
2
 
3
3
  [Semantic Versioning](https://semver.org/)
4
4
 
5
+ ## [3.2.1] - 2021-11-10
6
+ ### Minor configuration
7
+ - Dropdown title configuration is exposed in `InstanceSequenceConfig` attribute `dropdownTitle`
8
+
9
+ ## [3.1.1] - 2021-11-02
10
+ ### Bug fix
11
+ - `RcsbFvAdditionalConfig` missing in `RcsbFvBuilder.buildMultipleInstanceSequenceFv` fixed
12
+
13
+ ## [3.1.0] - 2021-10-27
14
+ ### External track builder improvements
15
+ - `ExternalTrackBuilderInterface` available through `RcsbFvAdditionalConfig` for all `RcsbFvBuilder` types.
16
+ In addition, it includes the query context as additional parameter for processing and addition methods.
17
+ - `processAlignmentAndFeatures` includes the query context as part of the input parameters
18
+ - `addTo` includes the query context as part of the input parameters
19
+ - `filterFeatures` new method for filtering positional features
20
+ - `filterAlignments` new method for filtering alignment data
21
+
22
+ ## [3.0.0] - 2021-10-15
23
+ ### Minor code refactor
24
+ Changed `setTimeout` calls to 'rxjs' `asyncScheduler`
25
+ ### Breaking changes
26
+ - rcsb-saguaro update 2.0.0
27
+
5
28
  ## [2.4.0] - 2021-10-08
6
29
  ### Minor code refactor and improvements
7
30
  - `AnnotationCollectorInterface` new annotation features getter `getAnnotationFeatures`
@@ -11,6 +34,10 @@
11
34
  - No more `Map` inheritance in `AnnotationTrack`. Now it delegates `Map` methods
12
35
  - rcsb-saguaro update 1.11.0
13
36
 
37
+ ## [2.3.6] - 2021-10-04
38
+ ### Dependency update
39
+ - Using rcsb-api-tools
40
+
14
41
  ## [2.3.5] - 2021-09-16
15
42
  ### Display Improvement
16
43
  - Loader spinner added
@@ -72,12 +99,13 @@
72
99
  - async/await promise style
73
100
  - Recursive waits migrated to rxjx Observables
74
101
  - PFV unique building method
75
- - RcsbFvWebApp.setBoardConfig and RcsbFvWebApp.getRcsbFv have been removed.
76
- - Custom board config must be defined in RcsbFvAdditionalConfig (Some RcsbFvWebApp methods do not support additional configs yet)
77
- - Builder methods return RcsbFvModulePublicInterface
78
102
  - Context Manager rcsbFv build new board config param
79
103
  - Select button default value title bug fixed
80
104
  - rcsb-saguaro update 1.8.4
105
+ #### Breaking changes
106
+ - RcsbFvWebApp.setBoardConfig and RcsbFvWebApp.getRcsbFv have been removed.
107
+ - Custom board config must be defined in RcsbFvAdditionalConfig (Some RcsbFvWebApp methods do not support additional configs yet)
108
+ - Builder methods return RcsbFvModulePublicInterface
81
109
 
82
110
  ## [1.4.8] - 2021-06-15
83
111
  ### Optimization
package/LICENSE.md ADDED
@@ -0,0 +1,21 @@
1
+ The MIT License
2
+
3
+ Copyright (c) 2019 - now, RCSB PDB and contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
package/README.md CHANGED
@@ -8,7 +8,7 @@ Feature Summaries. The package allows access to RCSB Saguaro methods to add or c
8
8
  <!---
9
9
  <div id="pfvSelect" ></div>
10
10
  <div id="pfv" ></div>
11
- <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/@rcsb/rcsb-saguaro-app@2.4.0/build/dist/app.js"></script>
11
+ <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/@rcsb/rcsb-saguaro-app@3.2.1/build/dist/app.js"></script>
12
12
  <script type="text/javascript">
13
13
  RcsbFvWebApp.buildInstanceFv("pfv", "4Z35.A", {
14
14
  boardConfig:{
@@ -23,7 +23,7 @@ RcsbFvWebApp.buildInstanceFv("pfv", "4Z35.A", {
23
23
  `npm install @rcsb/rcsb-saguaro-app`
24
24
 
25
25
  ### CDN JavaScript
26
- `<script src="https://cdn.jsdelivr.net/npm/@rcsb/rcsb-saguaro-app@2.4.0/build/dist/app.js" type="text/javascript"></script>`
26
+ `<script src="https://cdn.jsdelivr.net/npm/@rcsb/rcsb-saguaro-app@3.2.1/build/dist/app.js" type="text/javascript"></script>`
27
27
 
28
28
  ### JavaScript Examples
29
29
  * [PDB Instance Chain View](https://rcsb.github.io/rcsb-saguaro-app/examples/instance.html)
@@ -18,7 +18,7 @@ export interface TaxonomyMetadataInterface {
18
18
  export declare class NcbiSummary {
19
19
  private static timeout;
20
20
  private static httpTimeout;
21
- private static jobId;
21
+ private static jobTask;
22
22
  static requestChromosomeData(chrId: string): Promise<ChromosomeMetadataInterface>;
23
23
  static requestTaxonomyData(taxId: string): Promise<TaxonomyMetadataInterface>;
24
24
  }
@@ -21,10 +21,11 @@ export declare class RcsbAnnotationConfig {
21
21
  uniprotOrder(): Array<string>;
22
22
  instanceOrder(): Array<string>;
23
23
  entityOrder(): Array<string>;
24
- buildAndAddType(d: Feature, targetId?: string): string;
24
+ buildAndAddType(d: Feature, mainTitle?: string, titleSuffix?: string): string;
25
25
  private addNewType;
26
26
  sortAndIncludeNewTypes(): void;
27
27
  private checkAndIncludeNewType;
28
+ private cleanAddedTypes;
28
29
  isMergedType(type: string): boolean;
29
30
  getMergedType(type: string): string;
30
31
  annotationMergedPreference(type: string, a: RcsbFvTrackDataElementInterface, b: RcsbFvTrackDataElementInterface): boolean;
@@ -4,6 +4,7 @@ import { RcsbClient } from "../../RcsbGraphQL/RcsbClient";
4
4
  import { PolymerEntityInstanceTranslate } from "../../RcsbUtils/PolymerEntityInstanceTranslate";
5
5
  import { AnnotationCollectConfig, AnnotationCollectorInterface } from "./AnnotationCollectorInterface";
6
6
  import { AnnotationConfigInterface } from "../../RcsbAnnotationConfig/AnnotationConfigInterface";
7
+ import { ExternalTrackBuilderInterface } from "../FeatureTools/ExternalTrackBuilderInterface";
7
8
  export declare class AnnotationCollector implements AnnotationCollectorInterface {
8
9
  private readonly rcsbAnnotationConfig;
9
10
  private readonly annotationsConfigData;
@@ -16,10 +17,11 @@ export declare class AnnotationCollector implements AnnotationCollectorInterface
16
17
  private readonly annotationTrackManager;
17
18
  private annotationFeatures;
18
19
  private readonly annotationFeaturesSubject;
20
+ private externalTrackBuilder;
19
21
  constructor(acm?: AnnotationConfigInterface);
20
22
  collect(requestConfig: AnnotationCollectConfig): Promise<Array<RcsbFvRowConfigInterface>>;
21
- getPolymerEntityInstanceTranslator(): PolymerEntityInstanceTranslate;
22
23
  setPolymerEntityInstanceTranslator(p: PolymerEntityInstanceTranslate): void;
24
+ setExternalTrackBuilder(externalTrackBuilder: ExternalTrackBuilderInterface): void;
23
25
  getFeatures(): Promise<Array<Feature>>;
24
26
  getAnnotationConfigData(): Promise<Array<RcsbFvRowConfigInterface>>;
25
27
  getAnnotationFeatures(): Promise<Array<AnnotationFeatures>>;
@@ -1,6 +1,6 @@
1
1
  import { CoreCollectorInterface } from "../CoreCollectorInterface";
2
2
  import { RcsbFvRowConfigInterface } from "@rcsb/rcsb-saguaro";
3
- import { AnnotationFeatures, Feature, QueryAnnotationsArgs, Source } from "@rcsb/rcsb-api-tools/build/RcsbGraphQL/Types/Borrego/GqlTypes";
3
+ import { AnnotationFeatures, Feature, QueryAnnotationsArgs } from "@rcsb/rcsb-api-tools/build/RcsbGraphQL/Types/Borrego/GqlTypes";
4
4
  import { AnnotationTrack, FeaturePositionGaps } from "./AnnotationTrack";
5
5
  import { ExternalTrackBuilderInterface } from "../FeatureTools/ExternalTrackBuilderInterface";
6
6
  export declare type IncreaseAnnotationValueType = (feature: {
@@ -20,8 +20,9 @@ interface CommonAnnotationInterface {
20
20
  externalAnnotationTrackBuilder?: ExternalTrackBuilderInterface;
21
21
  }
22
22
  export interface CollectAnnotationsInterface extends QueryAnnotationsArgs, CommonAnnotationInterface {
23
- addTargetInTitle?: Set<Source>;
24
23
  collectSwissModel?: boolean;
24
+ titleSuffix?(ann: AnnotationFeatures, d: Feature): Promise<string | undefined>;
25
+ trackTitle?(ann: AnnotationFeatures, d: Feature): Promise<string | undefined>;
25
26
  }
26
27
  export declare type AnnotationCollectConfig = Partial<CollectAnnotationsInterface>;
27
28
  export interface AnnotationCollectorInterface extends CoreCollectorInterface {
@@ -8,7 +8,7 @@ export declare class AnnotationTrackManager {
8
8
  private readonly annotationTracks;
9
9
  private polymerEntityInstanceTranslator;
10
10
  constructor(rcsbAnnotationConfig: RcsbAnnotationConfig);
11
- processRcsbPdbAnnotations(data: Array<AnnotationFeatures>, requestConfig: AnnotationCollectConfig): void;
11
+ processRcsbPdbAnnotations(data: Array<AnnotationFeatures>, requestConfig: AnnotationCollectConfig): Promise<void>;
12
12
  getAnnotationTracks(): Map<string, AnnotationTrack>;
13
13
  private getPolymerEntityInstanceTranslator;
14
14
  setPolymerEntityInstanceTranslator(p: PolymerEntityInstanceTranslate): void;
@@ -1,7 +1,8 @@
1
1
  import { PolymerEntityInstanceTranslate } from "../RcsbUtils/PolymerEntityInstanceTranslate";
2
2
  import { RcsbClient } from "../RcsbGraphQL/RcsbClient";
3
+ import { ExternalTrackBuilderInterface } from "./FeatureTools/ExternalTrackBuilderInterface";
3
4
  export interface CoreCollectorInterface {
4
5
  readonly rcsbFvQuery: RcsbClient;
5
6
  setPolymerEntityInstanceTranslator(p: PolymerEntityInstanceTranslate): void;
6
- getPolymerEntityInstanceTranslator(): PolymerEntityInstanceTranslate;
7
+ setExternalTrackBuilder(externalTrackBuilder: ExternalTrackBuilderInterface): void;
7
8
  }
@@ -1,14 +1,18 @@
1
1
  import { RcsbFvRowConfigInterface } from "@rcsb/rcsb-saguaro";
2
2
  import { AlignmentResponse, AnnotationFeatures } from "@rcsb/rcsb-api-tools/build/RcsbGraphQL/Types/Borrego/GqlTypes";
3
3
  import { SequenceCollectorDataInterface } from "../SequenceCollector/SequenceCollector";
4
+ import { PolymerEntityInstanceInterface } from "../Translators/PolymerEntityInstancesCollector";
4
5
  export interface ExternalTrackBuilderInterface {
5
- processAlignmentAndFeatures(data: {
6
+ processAlignmentAndFeatures?(data: {
6
7
  annotations?: Array<AnnotationFeatures>;
7
8
  alignments?: AlignmentResponse;
9
+ rcsbContext?: Partial<PolymerEntityInstanceInterface>;
8
10
  }): void;
9
- filterFeatures(annotations: Array<AnnotationFeatures>): void;
10
- addTo(tracks: {
11
+ filterAlignments?(alignments: AlignmentResponse): AlignmentResponse;
12
+ filterFeatures?(annotations: Array<AnnotationFeatures>): Array<AnnotationFeatures>;
13
+ addTo?(tracks: {
11
14
  alignmentTracks?: SequenceCollectorDataInterface;
12
15
  annotationTracks?: Array<RcsbFvRowConfigInterface>;
16
+ rcsbContext?: Partial<PolymerEntityInstanceInterface>;
13
17
  }): void;
14
18
  }
@@ -3,6 +3,7 @@ import { CollectAlignmentInterface, SequenceCollectorInterface } from "./Sequenc
3
3
  import { SequenceCollectorDataInterface } from "./SequenceCollector";
4
4
  import { PolymerEntityInstanceTranslate } from "../../RcsbUtils/PolymerEntityInstanceTranslate";
5
5
  import { AlignmentResponse } from "@rcsb/rcsb-api-tools/build/RcsbGraphQL/Types/Borrego/GqlTypes";
6
+ import { ExternalTrackBuilderInterface } from "../FeatureTools/ExternalTrackBuilderInterface";
6
7
  export declare class GenomeMapCollector implements SequenceCollectorInterface {
7
8
  readonly rcsbFvQuery: RcsbClient;
8
9
  collect(requestConfig: CollectAlignmentInterface, filter?: Array<string>, entityInstanceMapCollector?: (instanceIds: Array<string>) => Promise<null>): Promise<SequenceCollectorDataInterface>;
@@ -11,4 +12,5 @@ export declare class GenomeMapCollector implements SequenceCollectorInterface {
11
12
  getTargets(): Promise<Array<string>>;
12
13
  setPolymerEntityInstanceTranslator(p: PolymerEntityInstanceTranslate): void;
13
14
  getAlignmentResponse(): Promise<AlignmentResponse>;
15
+ setExternalTrackBuilder(externalTrackBuilder: ExternalTrackBuilderInterface): void;
14
16
  }
@@ -3,18 +3,21 @@ import { SequenceCollectorDataInterface } from "./SequenceCollector";
3
3
  import { PolymerEntityInstanceTranslate } from "../../RcsbUtils/PolymerEntityInstanceTranslate";
4
4
  import { RcsbClient } from "../../RcsbGraphQL/RcsbClient";
5
5
  import { AlignmentCollectConfig, SequenceCollectorInterface } from "./SequenceCollectorInterface";
6
+ import { ExternalTrackBuilderInterface } from "../FeatureTools/ExternalTrackBuilderInterface";
6
7
  export declare class ObservedSequenceCollector implements SequenceCollectorInterface {
7
8
  private entityInstanceMap;
8
9
  private unObservedMap;
9
10
  private sequenceCollector;
10
11
  readonly rcsbFvQuery: RcsbClient;
11
12
  private polymerEntityInstanceTranslator;
13
+ private externalTrackBuilder;
12
14
  collect(requestConfig: AlignmentCollectConfig, filter?: Array<string>): Promise<SequenceCollectorDataInterface>;
13
15
  getTargets(): Promise<Array<string>>;
14
16
  getAlignmentResponse(): Promise<AlignmentResponse>;
15
17
  getSequenceLength(): number;
16
18
  getPolymerEntityInstanceTranslator(): PolymerEntityInstanceTranslate;
17
19
  setPolymerEntityInstanceTranslator(p: PolymerEntityInstanceTranslate): void;
20
+ setExternalTrackBuilder(externalTrackBuilder: ExternalTrackBuilderInterface): void;
18
21
  private loadObservedRegions;
19
22
  private addUnmodelled;
20
23
  private collectUnmodeledRegions;
@@ -3,6 +3,7 @@ import { AlignedRegion, AlignmentResponse } from "@rcsb/rcsb-api-tools/build/Rcs
3
3
  import { PolymerEntityInstanceTranslate, TranslateContextInterface } from "../../RcsbUtils/PolymerEntityInstanceTranslate";
4
4
  import { RcsbClient } from "../../RcsbGraphQL/RcsbClient";
5
5
  import { AlignmentCollectConfig, SequenceCollectorInterface } from "./SequenceCollectorInterface";
6
+ import { ExternalTrackBuilderInterface } from "../FeatureTools/ExternalTrackBuilderInterface";
6
7
  export interface AlignedObservedRegion extends AlignedRegion {
7
8
  unModelled?: boolean;
8
9
  openBegin?: boolean;
@@ -23,13 +24,14 @@ export declare class SequenceCollector implements SequenceCollectorInterface {
23
24
  private readonly targetsSubject;
24
25
  private alignmentResponse;
25
26
  private readonly alignmentResponseSubject;
27
+ private externalTrackBuilder;
26
28
  private tagObservedRegions;
27
29
  collect(requestConfig: AlignmentCollectConfig, filter?: Array<string>, entityInstanceMapCollector?: (instanceIds: Array<string>) => Promise<void>, tagObservedRegions?: (region: AlignedRegion, commonContext: TranslateContextInterface) => Array<AlignedObservedRegion>): Promise<SequenceCollectorDataInterface>;
28
30
  getTargets(): Promise<Array<string>>;
29
31
  getAlignmentResponse(): Promise<AlignmentResponse>;
30
32
  getSequenceLength(): number;
31
- getPolymerEntityInstanceTranslator(): PolymerEntityInstanceTranslate;
32
33
  setPolymerEntityInstanceTranslator(p: PolymerEntityInstanceTranslate): void;
34
+ setExternalTrackBuilder(externalTrackBuilder: ExternalTrackBuilderInterface): void;
33
35
  private complete;
34
36
  private buildAlignments;
35
37
  private buildSequenceTrack;
@@ -0,0 +1,11 @@
1
+ import { QueryInterfacesArgs } from "@rcsb/rcsb-api-tools/build/RcsbGraphQL/Types/Yosemite/GqlTypes";
2
+ export interface InterfaceInstanceInterface {
3
+ rcsbId: string;
4
+ assemblyId: string;
5
+ interfaceId: string;
6
+ asymIds: [string, string];
7
+ }
8
+ export declare class InterfaceInstanceCollector {
9
+ private readonly rcsbFvQuery;
10
+ collect(requestConfig: QueryInterfacesArgs): Promise<Array<InterfaceInstanceInterface>>;
11
+ }
@@ -2,11 +2,13 @@ import { RcsbFv, RcsbFvBoardConfigInterface } from "@rcsb/rcsb-saguaro";
2
2
  import { PolymerEntityInstanceTranslate } from "../../RcsbUtils/PolymerEntityInstanceTranslate";
3
3
  import { EntryAssemblyTranslate } from "../../RcsbUtils/EntryAssemblyTranslate";
4
4
  import { PolymerEntityChromosomeTranslate } from "../../RcsbUtils/PolymerEntityChromosomeTranslate";
5
+ import { InterfaceInstanceTranslate } from "../../RcsbUtils/InterfaceInstanceTranslate";
5
6
  declare class RcsbFvContextManager {
6
7
  private rcsbFvManager;
7
8
  private rcsbButtonManager;
8
9
  private polymerEntityToInstanceMap;
9
10
  private entryToAssemblyMap;
11
+ private interfaceToInstanceMap;
10
12
  getFv(elementFvId: string, boardConfig?: Partial<RcsbFvBoardConfigInterface>): RcsbFv;
11
13
  hasFv(elementFvId: string): boolean;
12
14
  private setFv;
@@ -18,6 +20,7 @@ declare class RcsbFvContextManager {
18
20
  getEntityToInstance(entryId: string): Promise<PolymerEntityInstanceTranslate>;
19
21
  getEntryToAssembly(entryId: string): Promise<EntryAssemblyTranslate>;
20
22
  getEntityToChromosome(entityIds: Array<string>): Promise<PolymerEntityChromosomeTranslate>;
23
+ getInterfaceToInstance(interfaceId: string): Promise<InterfaceInstanceTranslate>;
21
24
  }
22
25
  export declare const rcsbFvCtxManager: RcsbFvContextManager;
23
26
  export {};
@@ -9,16 +9,20 @@ export interface InstanceSequenceOnchangeInterface {
9
9
  authId: string;
10
10
  asymId: string;
11
11
  }
12
+ declare type instanceModule = "interface" | "instance";
12
13
  export interface InstanceSequenceConfig {
14
+ dropdownTitle?: string;
13
15
  defaultValue?: string | undefined | null;
14
16
  onChangeCallback?: (x: InstanceSequenceOnchangeInterface) => void;
15
17
  filterInstances?: Set<string>;
16
18
  displayAuthId?: boolean;
17
19
  selectButtonOptionProps?: (props: OptionProps<OptionPropsInterface>) => JSX.Element;
20
+ module?: instanceModule;
18
21
  }
19
22
  export declare class RcsbFvInstanceBuilder {
20
23
  static buildMultipleInstanceSequenceFv(elementFvId: string, elementEntrySelectId: string, elementInstanceSelectId: string, entryIdList: Array<string>, config: InstanceSequenceConfig, additionalConfig?: RcsbFvAdditionalConfig): Promise<RcsbFvModulePublicInterface>;
21
24
  static buildInstanceSequenceFv(elementFvId: string, elementSelectId: string, entryId: string, config: InstanceSequenceConfig, additionalConfig?: RcsbFvAdditionalConfig): Promise<RcsbFvModulePublicInterface>;
22
25
  static buildSelectorInstanceFv(instanceList: Array<PolymerEntityInstanceInterface>, elementFvId: string, elementSelectId: string, entryId: string, config: InstanceSequenceConfig, additionalConfig?: RcsbFvAdditionalConfig): Promise<RcsbFvModulePublicInterface>;
23
- static buildInstanceFv(elementId: string, instanceId: string, additionalConfig?: RcsbFvAdditionalConfig): Promise<RcsbFvModulePublicInterface>;
26
+ static buildInstanceFv(elementId: string, instanceId: string, additionalConfig?: RcsbFvAdditionalConfig, rcsbContext?: PolymerEntityInstanceInterface, module?: instanceModule): Promise<RcsbFvModulePublicInterface>;
24
27
  }
28
+ export {};
@@ -8,7 +8,7 @@ export declare function buildMultipleAlignmentSequenceFv(elementFvId: string, el
8
8
  export declare function buildEntitySummaryFv(elementFvId: string, elementSelectId: string, entityId: string): Promise<RcsbFvModulePublicInterface>;
9
9
  export declare function buildSingleEntitySummaryFv(elementId: string, entityId: string): Promise<RcsbFvModulePublicInterface>;
10
10
  export declare function buildInstanceSequenceFv(elementFvId: string, elementSelectId: string, entryId: string, config: InstanceSequenceConfig, additionalConfig?: RcsbFvAdditionalConfig): Promise<RcsbFvModulePublicInterface>;
11
- export declare function buildMultipleInstanceSequenceFv(elementFvId: string, elementEntrySelectId: string, elementInstanceSelectId: string, entryIdList: Array<string>, config: InstanceSequenceConfig): Promise<RcsbFvModulePublicInterface>;
11
+ export declare function buildMultipleInstanceSequenceFv(elementFvId: string, elementEntrySelectId: string, elementInstanceSelectId: string, entryIdList: Array<string>, config: InstanceSequenceConfig, additionalConfig?: RcsbFvAdditionalConfig): Promise<RcsbFvModulePublicInterface>;
12
12
  export declare function buildAssemblySequenceFv(elementFvId: string, elementSelectAssemblyId: string, elementSelectInstanceId: string, entryId: string, onAsseblyChangeCallback?: (x: string) => void, onInstanceChangeCallback?: (x: InstanceSequenceOnchangeInterface) => void): Promise<RcsbFvModulePublicInterface>;
13
13
  export declare function buildUniprotFv(elementId: string, upAcc: string, additionalConfig?: RcsbFvAdditionalConfig): Promise<RcsbFvModulePublicInterface>;
14
14
  export declare function buildEntityFv(elementId: string, entityId: string, additionalConfig?: RcsbFvAdditionalConfig): Promise<RcsbFvModulePublicInterface>;
@@ -1,4 +1,5 @@
1
1
  import { RcsbFv, RcsbFvBoardConfigInterface, RcsbFvRowConfigInterface } from '@rcsb/rcsb-saguaro';
2
+ import { SequenceCollectorDataInterface } from "../../RcsbCollectTools/SequenceCollector/SequenceCollector";
2
3
  import { PolymerEntityInstanceTranslate } from "../../RcsbUtils/PolymerEntityInstanceTranslate";
3
4
  import { SequenceCollectorInterface } from "../../RcsbCollectTools/SequenceCollector/SequenceCollectorInterface";
4
5
  import { AnnotationCollectorInterface } from "../../RcsbCollectTools/AnnotationCollector/AnnotationCollectorInterface";
@@ -9,8 +10,11 @@ export declare abstract class RcsbFvAbstractModule implements RcsbFvModuleInterf
9
10
  protected readonly elementId: string;
10
11
  protected boardConfigData: RcsbFvBoardConfigInterface;
11
12
  protected rowConfigData: Array<RcsbFvRowConfigInterface>;
13
+ protected polymerEntityInstance: PolymerEntityInstanceTranslate;
12
14
  protected readonly sequenceCollector: SequenceCollectorInterface;
13
15
  protected readonly annotationCollector: AnnotationCollectorInterface;
16
+ protected alignmentTracks: SequenceCollectorDataInterface;
17
+ protected annotationTracks: Array<RcsbFvRowConfigInterface>;
14
18
  private activeDisplayFlag;
15
19
  constructor(elementId: string, rcsbFv: RcsbFv);
16
20
  setPolymerEntityInstanceTranslator(polymerEntityInstance: PolymerEntityInstanceTranslate): void;
@@ -21,5 +25,9 @@ export declare abstract class RcsbFvAbstractModule implements RcsbFvModuleInterf
21
25
  getFeatures(): Promise<Array<Feature>>;
22
26
  getAnnotationConfigData(): Promise<Array<RcsbFvRowConfigInterface>>;
23
27
  updateBoardConfig(config: Partial<RcsbFvBoardConfigInterface>): void;
24
- abstract build(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
28
+ build(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
29
+ protected abstract protectedBuild(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
30
+ protected abstract concatAlignmentAndAnnotationTracks(buildConfig: RcsbFvModuleBuildInterface): void;
31
+ private buildExternalTracks;
32
+ private setExternalTrackBuilder;
25
33
  }
@@ -44,6 +44,7 @@ export declare class RcsbFvChromosome extends RcsbFvAbstractModule {
44
44
  private addSequences;
45
45
  private setDisplayView;
46
46
  private plot;
47
- build(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
47
+ protected protectedBuild(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
48
48
  getTargets(): Promise<Array<string>>;
49
+ protected concatAlignmentAndAnnotationTracks(buildConfig: RcsbFvModuleBuildInterface): void;
49
50
  }
@@ -1,5 +1,7 @@
1
1
  import { RcsbFvAbstractModule } from "./RcsbFvAbstractModule";
2
2
  import { RcsbFvModuleBuildInterface } from "./RcsbFvModuleInterface";
3
3
  export declare class RcsbFvEntity extends RcsbFvAbstractModule {
4
- build(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
4
+ protected protectedBuild(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
5
+ protected concatAlignmentAndAnnotationTracks(buildConfig: RcsbFvModuleBuildInterface): void;
6
+ private titleSuffix;
5
7
  }
@@ -1,5 +1,6 @@
1
1
  import { RcsbFvAbstractModule } from "./RcsbFvAbstractModule";
2
2
  import { RcsbFvModuleBuildInterface } from "./RcsbFvModuleInterface";
3
3
  export declare class RcsbFvInstance extends RcsbFvAbstractModule {
4
- build(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
4
+ protected protectedBuild(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
5
+ protected concatAlignmentAndAnnotationTracks(buildConfig: RcsbFvModuleBuildInterface): void;
5
6
  }
@@ -0,0 +1,10 @@
1
+ import { RcsbFvAbstractModule } from "./RcsbFvAbstractModule";
2
+ import { RcsbFvModuleBuildInterface } from "./RcsbFvModuleInterface";
3
+ import { AnnotationCollectorInterface } from "../../RcsbCollectTools/AnnotationCollector/AnnotationCollectorInterface";
4
+ export declare class RcsbFvInterface extends RcsbFvAbstractModule {
5
+ protected readonly annotationCollector: AnnotationCollectorInterface;
6
+ protected protectedBuild(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
7
+ protected concatAlignmentAndAnnotationTracks(buildConfig: RcsbFvModuleBuildInterface): void;
8
+ private titleSuffix;
9
+ private trackTitle;
10
+ }
@@ -16,6 +16,16 @@ export interface RcsbFvAdditionalConfig {
16
16
  annotationProcessing?: AnnotationProcessingInterface;
17
17
  sequenceCollector?: SequenceCollectorInterface;
18
18
  externalTrackBuilder?: ExternalTrackBuilderInterface;
19
+ rcsbContext?: Partial<{
20
+ entryId: string;
21
+ entityId: string;
22
+ asymId: string;
23
+ authId: string;
24
+ upAcc: string;
25
+ chrId: string;
26
+ targetId: string;
27
+ queryId: string;
28
+ }>;
19
29
  }
20
30
  export interface RcsbFvModuleBuildInterface {
21
31
  queryId?: string;
@@ -1,5 +1,6 @@
1
1
  import { RcsbFvAbstractModule } from "./RcsbFvAbstractModule";
2
2
  import { RcsbFvModuleBuildInterface } from "./RcsbFvModuleInterface";
3
3
  export declare class RcsbFvPairwiseAlignment extends RcsbFvAbstractModule {
4
- build(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
4
+ protected protectedBuild(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
5
+ protected concatAlignmentAndAnnotationTracks(buildConfig: RcsbFvModuleBuildInterface): void;
5
6
  }
@@ -1,5 +1,6 @@
1
1
  import { RcsbFvAbstractModule } from "./RcsbFvAbstractModule";
2
2
  import { RcsbFvModuleBuildInterface } from "./RcsbFvModuleInterface";
3
3
  export declare class RcsbFvProteinSequence extends RcsbFvAbstractModule {
4
- build(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
4
+ protected protectedBuild(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
5
+ protected concatAlignmentAndAnnotationTracks(buildConfig: RcsbFvModuleBuildInterface): void;
5
6
  }
@@ -5,5 +5,6 @@ import { SequenceCollectorInterface } from "../../RcsbCollectTools/SequenceColle
5
5
  export declare class RcsbFvUniprot extends RcsbFvAbstractModule {
6
6
  protected readonly sequenceCollector: SequenceCollectorInterface;
7
7
  constructor(elementId: string, rcsbFv: RcsbFv);
8
- build(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
8
+ protected protectedBuild(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
9
+ protected concatAlignmentAndAnnotationTracks(buildConfig: RcsbFvModuleBuildInterface): void;
9
10
  }
@@ -1,5 +1,7 @@
1
1
  import { RcsbFvAbstractModule } from "./RcsbFvAbstractModule";
2
2
  import { RcsbFvModuleBuildInterface } from "./RcsbFvModuleInterface";
3
3
  export declare class RcsbFvUniprotEntity extends RcsbFvAbstractModule {
4
- build(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
4
+ protected protectedBuild(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
5
+ protected concatAlignmentAndAnnotationTracks(buildConfig: RcsbFvModuleBuildInterface): void;
6
+ private titleSuffix;
5
7
  }
@@ -1,5 +1,6 @@
1
1
  import { RcsbFvAbstractModule } from "./RcsbFvAbstractModule";
2
2
  import { RcsbFvModuleBuildInterface } from "./RcsbFvModuleInterface";
3
3
  export declare class RcsbFvUniprotInstance extends RcsbFvAbstractModule {
4
- build(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
4
+ protected protectedBuild(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
5
+ protected concatAlignmentAndAnnotationTracks(buildConfig: RcsbFvModuleBuildInterface): void;
5
6
  }
@@ -1,14 +1,16 @@
1
1
  import { AlignmentResponse, AnnotationFeatures, QueryAlignmentArgs, QueryAnnotationsArgs } from "@rcsb/rcsb-api-tools/build/RcsbGraphQL/Types/Borrego/GqlTypes";
2
- import { CoreEntry, CorePolymerEntity, QueryEntriesArgs, QueryEntryArgs, QueryPolymer_EntitiesArgs } from "@rcsb/rcsb-api-tools/build/RcsbGraphQL/Types/Yosemite/GqlTypes";
2
+ import { CoreEntry, CoreInterface, CorePolymerEntity, QueryEntriesArgs, QueryEntryArgs, QueryInterfacesArgs, QueryPolymer_EntitiesArgs } from "@rcsb/rcsb-api-tools/build/RcsbGraphQL/Types/Yosemite/GqlTypes";
3
3
  export declare class RcsbClient {
4
4
  private rcsbQueryAnnotations;
5
5
  private rcsbQueryAlignment;
6
6
  private rcsbQueryEntityInstances;
7
7
  private rcsbQueryMutipleEntityInstances;
8
8
  private rcsbQueryEntryProperties;
9
+ private rcsbQueryInterfaceInstances;
9
10
  requestRcsbPdbAnnotations(requestConfig: QueryAnnotationsArgs): Promise<Array<AnnotationFeatures>>;
10
11
  requestAlignment(requestConfig: QueryAlignmentArgs): Promise<AlignmentResponse>;
11
12
  requestEntityInstances(requestConfig: QueryEntryArgs): Promise<CoreEntry>;
12
13
  requestMultipleEntityInstances(requestConfig: QueryPolymer_EntitiesArgs): Promise<Array<CorePolymerEntity>>;
13
14
  requestMultipleEntriesProperties(requestConfig: QueryEntriesArgs): Promise<Array<CoreEntry>>;
15
+ requestInterfaceInstances(requestConfig: QueryInterfacesArgs): Promise<Array<CoreInterface>>;
14
16
  }
@@ -0,0 +1,7 @@
1
+ import { RcsbCoreQueryInterface } from "./RcsbCoreQueryInterface";
2
+ import { CoreInterface, QueryInterfacesArgs } from "@rcsb/rcsb-api-tools/build/RcsbGraphQL/Types/Yosemite/GqlTypes";
3
+ import { GraphQLRequest } from "@rcsb/rcsb-api-tools/build/RcsbGraphQL/GraphQLRequest";
4
+ export declare class RcsbQueryInterfaceInstances implements RcsbCoreQueryInterface<QueryInterfacesArgs, Array<CoreInterface>> {
5
+ readonly client: GraphQLRequest;
6
+ request(requestConfig: QueryInterfacesArgs): Promise<Array<CoreInterface>>;
7
+ }
@@ -0,0 +1,7 @@
1
+ import { InterfaceInstanceInterface } from "../RcsbCollectTools/Translators/InterfaceInstanceCollector";
2
+ export declare class InterfaceInstanceTranslate {
3
+ private readonly rawData;
4
+ private readonly instances;
5
+ constructor(data: Array<InterfaceInstanceInterface>);
6
+ getInstances(rcsbId: string): [string, string];
7
+ }