@rcsb/rcsb-saguaro-app 3.4.0 → 4.0.0-interfaces.4
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.
- package/CHANGELOG.md +16 -0
- package/build/dist/RcsbAnnotationConfig/RcsbAnnotationConfig.d.ts +1 -1
- package/build/dist/RcsbCollectTools/AnnotationCollector/AnnotationCollectorInterface.d.ts +7 -5
- package/build/dist/RcsbCollectTools/FeatureTools/ExternalTrackBuilderInterface.d.ts +10 -4
- package/build/dist/RcsbCollectTools/Translators/InterfaceInstanceCollector.d.ts +12 -0
- package/build/dist/RcsbFvWeb/RcsbFvBuilder/RcsbFvContextManager.d.ts +3 -0
- package/build/dist/RcsbFvWeb/RcsbFvBuilder/RcsbFvInstanceBuilder.d.ts +5 -1
- package/build/dist/RcsbFvWeb/RcsbFvModule/RcsbFvInterface.d.ts +12 -0
- package/build/dist/RcsbGraphQL/RcsbClient.d.ts +3 -1
- package/build/dist/RcsbGraphQL/RcsbQueryInterfaceInstances.d.ts +7 -0
- package/build/dist/RcsbUtils/InterfaceInstanceTranslate.d.ts +9 -0
- package/build/dist/app.d.ts +4 -0
- package/build/dist/app.js +19 -11
- package/build/dist/app.js.map +1 -1
- package/build/dist/worker.js +1 -1
- package/build/dist/worker.js.map +1 -1
- package/package.json +4 -2
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
[Semantic Versioning](https://semver.org/)
|
|
4
4
|
|
|
5
|
+
## [4.0.0-interfaces] - 2021-12-15
|
|
6
|
+
### Annotation collector improvements
|
|
7
|
+
- Added interface `CollectAnnotationsInterface` for generating new annotations internally (not exposed)
|
|
8
|
+
- `annotationGenerator?(annotations: Array<AnnotationFeatures>)` generates new annotations from the collected ones
|
|
9
|
+
- `annotationFilter?(annotations: Array<AnnotationFeatures>)` filter the collected annotations
|
|
10
|
+
- Both methods are called before annotations processing and thus, they should be configured in `RcsbAnnotationConfig.ac.json` or equivalent config file
|
|
11
|
+
- Checking content before adding generated features
|
|
12
|
+
|
|
13
|
+
## [4.0.0-master] - 2021-12-07
|
|
14
|
+
### Breaking change
|
|
15
|
+
- `ExternalTrackBuilderInterface` methods return a promise and are executed asynchronous
|
|
16
|
+
|
|
5
17
|
## [3.4.0] - 2021-12-07
|
|
6
18
|
### UI improvements
|
|
7
19
|
- Exposed methods for creating dropdown menus. Class `RcsbFvUI` static methods
|
|
@@ -14,6 +26,10 @@
|
|
|
14
26
|
- Removed interface `CollectAnnotationsInterface` attribute `addTargetInTitle`
|
|
15
27
|
- Added `titleSuffix` and `trackTitle` attributes to `CollectAnnotationsInterface`
|
|
16
28
|
- These new attributes are defined as async functions (ann: AnnotationFeatures, d: Feature) => Promise<string|undefined> to provide or modify track titles based on the features content
|
|
29
|
+
- New `RcsbFvInterface` module
|
|
30
|
+
- Interface `InstanceSequenceConfig` provides a new attribute `module` to choose between the `RcsbFvInstance` or RcsbFvInterface` modules
|
|
31
|
+
- New classes to collect and translate instance/interface ids relationships from data api
|
|
32
|
+
- `RcsbQueryInterfaceInstances`, `InterfaceInstanceCollector` and `InterfaceInstanceTranslate`
|
|
17
33
|
|
|
18
34
|
## [3.2.1] - 2021-11-10
|
|
19
35
|
### Minor configuration
|
|
@@ -21,7 +21,7 @@ export declare class RcsbAnnotationConfig {
|
|
|
21
21
|
uniprotOrder(): Array<string>;
|
|
22
22
|
instanceOrder(): Array<string>;
|
|
23
23
|
entityOrder(): Array<string>;
|
|
24
|
-
buildAndAddType(d: Feature, mainTitle?: string, titleSuffix?: string): string;
|
|
24
|
+
buildAndAddType(d: Feature, mainTitle?: string, titleSuffix?: string, typeSuffix?: string): string;
|
|
25
25
|
private addNewType;
|
|
26
26
|
sortAndIncludeNewTypes(): void;
|
|
27
27
|
private checkAndIncludeNewType;
|
|
@@ -3,6 +3,7 @@ import { RcsbFvRowConfigInterface } from "@rcsb/rcsb-saguaro";
|
|
|
3
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
|
+
import { PolymerEntityInstanceInterface } from "../Translators/PolymerEntityInstancesCollector";
|
|
6
7
|
export declare type IncreaseAnnotationValueType = (feature: {
|
|
7
8
|
type: string;
|
|
8
9
|
targetId: string;
|
|
@@ -15,14 +16,16 @@ export interface AnnotationProcessingInterface {
|
|
|
15
16
|
computeAnnotationValue?: (annotationTracks: Map<string, AnnotationTrack>) => void;
|
|
16
17
|
addTrackElementCallback?: IncreaseAnnotationValueType;
|
|
17
18
|
}
|
|
18
|
-
interface
|
|
19
|
+
export interface CollectAnnotationsInterface extends QueryAnnotationsArgs {
|
|
20
|
+
collectSwissModel?: boolean;
|
|
21
|
+
rcsbContext?: Partial<PolymerEntityInstanceInterface>;
|
|
19
22
|
annotationProcessing?: AnnotationProcessingInterface;
|
|
20
23
|
externalAnnotationTrackBuilder?: ExternalTrackBuilderInterface;
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
collectSwissModel?: boolean;
|
|
24
|
+
annotationGenerator?(annotations: Array<AnnotationFeatures>): Promise<Array<AnnotationFeatures>>;
|
|
25
|
+
annotationFilter?(annotations: Array<AnnotationFeatures>): Promise<Array<AnnotationFeatures>>;
|
|
24
26
|
titleSuffix?(ann: AnnotationFeatures, d: Feature): Promise<string | undefined>;
|
|
25
27
|
trackTitle?(ann: AnnotationFeatures, d: Feature): Promise<string | undefined>;
|
|
28
|
+
typeSuffix?(ann: AnnotationFeatures, d: Feature): Promise<string | undefined>;
|
|
26
29
|
}
|
|
27
30
|
export declare type AnnotationCollectConfig = Partial<CollectAnnotationsInterface>;
|
|
28
31
|
export interface AnnotationCollectorInterface extends CoreCollectorInterface {
|
|
@@ -31,4 +34,3 @@ export interface AnnotationCollectorInterface extends CoreCollectorInterface {
|
|
|
31
34
|
getAnnotationFeatures(): Promise<Array<AnnotationFeatures>>;
|
|
32
35
|
getFeatures(): Promise<Array<Feature>>;
|
|
33
36
|
}
|
|
34
|
-
export {};
|
|
@@ -7,12 +7,18 @@ export interface ExternalTrackBuilderInterface {
|
|
|
7
7
|
annotations?: Array<AnnotationFeatures>;
|
|
8
8
|
alignments?: AlignmentResponse;
|
|
9
9
|
rcsbContext?: Partial<PolymerEntityInstanceInterface>;
|
|
10
|
-
}): void
|
|
11
|
-
filterAlignments?(
|
|
12
|
-
|
|
10
|
+
}): Promise<void>;
|
|
11
|
+
filterAlignments?(data: {
|
|
12
|
+
alignments: AlignmentResponse;
|
|
13
|
+
rcsbContext?: Partial<PolymerEntityInstanceInterface>;
|
|
14
|
+
}): Promise<AlignmentResponse>;
|
|
15
|
+
filterFeatures?(data: {
|
|
16
|
+
annotations: Array<AnnotationFeatures>;
|
|
17
|
+
rcsbContext?: Partial<PolymerEntityInstanceInterface>;
|
|
18
|
+
}): Promise<Array<AnnotationFeatures>>;
|
|
13
19
|
addTo?(tracks: {
|
|
14
20
|
alignmentTracks?: SequenceCollectorDataInterface;
|
|
15
21
|
annotationTracks?: Array<RcsbFvRowConfigInterface>;
|
|
16
22
|
rcsbContext?: Partial<PolymerEntityInstanceInterface>;
|
|
17
|
-
}): void
|
|
23
|
+
}): Promise<void>;
|
|
18
24
|
}
|
|
@@ -0,0 +1,12 @@
|
|
|
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
|
+
operatorIds: [Array<Array<string>>, Array<Array<string>>];
|
|
8
|
+
}
|
|
9
|
+
export declare class InterfaceInstanceCollector {
|
|
10
|
+
private readonly rcsbFvQuery;
|
|
11
|
+
collect(requestConfig: QueryInterfacesArgs): Promise<Array<InterfaceInstanceInterface>>;
|
|
12
|
+
}
|
|
@@ -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,17 +9,21 @@ export interface InstanceSequenceOnchangeInterface {
|
|
|
9
9
|
authId: string;
|
|
10
10
|
asymId: string;
|
|
11
11
|
}
|
|
12
|
+
declare type instanceModule = "interface" | "instance";
|
|
12
13
|
export interface InstanceSequenceConfig {
|
|
13
14
|
dropdownTitle?: string;
|
|
14
15
|
defaultValue?: string | undefined | null;
|
|
16
|
+
beforeRenderCallback?: (x: InstanceSequenceOnchangeInterface) => void;
|
|
15
17
|
onChangeCallback?: (x: InstanceSequenceOnchangeInterface) => void;
|
|
16
18
|
filterInstances?: Set<string>;
|
|
17
19
|
displayAuthId?: boolean;
|
|
18
20
|
selectButtonOptionProps?: (props: OptionProps<OptionPropsInterface>) => JSX.Element;
|
|
21
|
+
module?: instanceModule;
|
|
19
22
|
}
|
|
20
23
|
export declare class RcsbFvInstanceBuilder {
|
|
21
24
|
static buildMultipleInstanceSequenceFv(elementFvId: string, elementEntrySelectId: string, elementInstanceSelectId: string, entryIdList: Array<string>, config: InstanceSequenceConfig, additionalConfig?: RcsbFvAdditionalConfig): Promise<RcsbFvModulePublicInterface>;
|
|
22
25
|
static buildInstanceSequenceFv(elementFvId: string, elementSelectId: string, entryId: string, config: InstanceSequenceConfig, additionalConfig?: RcsbFvAdditionalConfig): Promise<RcsbFvModulePublicInterface>;
|
|
23
26
|
static buildSelectorInstanceFv(instanceList: Array<PolymerEntityInstanceInterface>, elementFvId: string, elementSelectId: string, entryId: string, config: InstanceSequenceConfig, additionalConfig?: RcsbFvAdditionalConfig): Promise<RcsbFvModulePublicInterface>;
|
|
24
|
-
static buildInstanceFv(elementId: string, instanceId: string, additionalConfig?: RcsbFvAdditionalConfig, rcsbContext?: PolymerEntityInstanceInterface): Promise<RcsbFvModulePublicInterface>;
|
|
27
|
+
static buildInstanceFv(elementId: string, instanceId: string, additionalConfig?: RcsbFvAdditionalConfig, rcsbContext?: PolymerEntityInstanceInterface, module?: instanceModule): Promise<RcsbFvModulePublicInterface>;
|
|
25
28
|
}
|
|
29
|
+
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
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
|
+
private instanceId;
|
|
7
|
+
protected protectedBuild(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
|
|
8
|
+
protected concatAlignmentAndAnnotationTracks(buildConfig: RcsbFvModuleBuildInterface): void;
|
|
9
|
+
private typeSuffix;
|
|
10
|
+
private titleSuffix;
|
|
11
|
+
private trackTitle;
|
|
12
|
+
}
|
|
@@ -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,9 @@
|
|
|
1
|
+
import { InterfaceInstanceInterface } from "../RcsbCollectTools/Translators/InterfaceInstanceCollector";
|
|
2
|
+
export declare class InterfaceInstanceTranslate {
|
|
3
|
+
private readonly rawData;
|
|
4
|
+
private readonly instances;
|
|
5
|
+
private readonly operatorsIds;
|
|
6
|
+
constructor(data: Array<InterfaceInstanceInterface>);
|
|
7
|
+
getInstances(rcsbId: string): [string, string];
|
|
8
|
+
getOperatorIds(rcsbId: string): [Array<Array<string>>, Array<Array<string>>];
|
|
9
|
+
}
|
package/build/dist/app.d.ts
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import { GroupedOptionsInterface, SelectOptionInterface } from "./RcsbFvWeb/WebTools/SelectButton";
|
|
2
2
|
export { buildEntryChromosome, buildFullChromosome, buildEntityChromosome, buildChromosome, buildEntityFv, buildEntitySummaryFv, buildSingleEntitySummaryFv, buildInstanceFv, buildInstanceSequenceFv, buildMultipleInstanceSequenceFv, buildAssemblySequenceFv, buildPairwiseAlignment, buildPfv, buildMultipleAlignmentSequenceFv, buildUniprotEntityFv, buildUniprotEntityInstanceFv, buildUniprotFv, unmount } from "./RcsbFvWeb/RcsbFvBuilder";
|
|
3
3
|
import { SelectButtonConfigInterface } from "./RcsbFvWeb/WebTools/WebToolsManager";
|
|
4
|
+
import { InterfaceInstanceTranslate } from "./RcsbUtils/InterfaceInstanceTranslate";
|
|
4
5
|
export declare class RcsbFvUI {
|
|
5
6
|
static clearSelectButton(elementFvId: string, selectButtonId: string): void;
|
|
6
7
|
static createSelectButton(elementFvId: string, selectButtonId: string, options: Array<SelectOptionInterface> | Array<GroupedOptionsInterface>, config?: SelectButtonConfigInterface): void;
|
|
7
8
|
static addSelectButton(elementFvId: string, selectButtonId: string, options: Array<SelectOptionInterface>, config?: SelectButtonConfigInterface): void;
|
|
8
9
|
}
|
|
10
|
+
export declare class RcsbFvContextManager {
|
|
11
|
+
static getInterfaceToInstance(interfaceId: string): Promise<InterfaceInstanceTranslate>;
|
|
12
|
+
}
|