@rcsb/rcsb-saguaro-app 3.3.0-interfaces → 4.0.0-interfaces.2
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 +21 -3
- package/README.md +2 -2
- 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 +1 -0
- package/build/dist/RcsbFvWeb/RcsbFvBuilder/RcsbFvInstanceBuilder.d.ts +1 -0
- package/build/dist/RcsbFvWeb/RcsbFvModule/RcsbFvInterface.d.ts +2 -0
- package/build/dist/RcsbFvWeb/WebTools/SelectButton.d.ts +4 -0
- package/build/dist/RcsbFvWeb/WebTools/WebToolsManager.d.ts +1 -0
- package/build/dist/RcsbUtils/InterfaceInstanceTranslate.d.ts +2 -0
- package/build/dist/app.d.ts +11 -0
- package/build/dist/app.js +22 -14
- 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 +8 -6
package/CHANGELOG.md
CHANGED
|
@@ -2,7 +2,25 @@
|
|
|
2
2
|
|
|
3
3
|
[Semantic Versioning](https://semver.org/)
|
|
4
4
|
|
|
5
|
-
## [
|
|
5
|
+
## [4.0.0-interfaces] - 2021-12-15
|
|
6
|
+
### Annotation collector improvements
|
|
7
|
+
- CollectAnnotationsInterface added method 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 method are called before annotations processing and thus, they should be configured in `RcsbAnnotationConfig.ac.json` or equivalent config
|
|
11
|
+
|
|
12
|
+
## [4.0.0-master] - 2021-12-07
|
|
13
|
+
### Breaking change
|
|
14
|
+
- `ExternalTrackBuilderInterface` methods return a promise and are executed asynchronous
|
|
15
|
+
|
|
16
|
+
## [3.4.0] - 2021-12-07
|
|
17
|
+
### UI improvements
|
|
18
|
+
- Exposed methods for creating dropdown menus. Class `RcsbFvUI` static methods
|
|
19
|
+
- `createSelectButton` creates a select dropdown menu
|
|
20
|
+
- `addSelectButton` adds a second menu. Only an additional button can be created (replaced if a new one is created)
|
|
21
|
+
- `clearSelectButton` clear all menus
|
|
22
|
+
|
|
23
|
+
## [3.3.0] - 2021-11-30
|
|
6
24
|
### Annotations configuration improvements
|
|
7
25
|
- Removed interface `CollectAnnotationsInterface` attribute `addTargetInTitle`
|
|
8
26
|
- Added `titleSuffix` and `trackTitle` attributes to `CollectAnnotationsInterface`
|
|
@@ -22,8 +40,8 @@
|
|
|
22
40
|
|
|
23
41
|
## [3.1.0] - 2021-10-27
|
|
24
42
|
### External track builder improvements
|
|
25
|
-
- `ExternalTrackBuilderInterface` available through `RcsbFvAdditionalConfig` for all `RcsbFvBuilder` types
|
|
26
|
-
In addition, it includes the query context as additional parameter for processing and addition methods
|
|
43
|
+
- `ExternalTrackBuilderInterface` available through `RcsbFvAdditionalConfig` for all `RcsbFvBuilder` types
|
|
44
|
+
In addition, it includes the query context as additional parameter for processing and addition methods
|
|
27
45
|
- `processAlignmentAndFeatures` includes the query context as part of the input parameters
|
|
28
46
|
- `addTo` includes the query context as part of the input parameters
|
|
29
47
|
- `filterFeatures` new method for filtering positional features
|
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@3.
|
|
11
|
+
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/@rcsb/rcsb-saguaro-app@3.4.0/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@3.
|
|
26
|
+
`<script src="https://cdn.jsdelivr.net/npm/@rcsb/rcsb-saguaro-app@3.4.0/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)
|
|
@@ -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
|
}
|
|
@@ -13,6 +13,7 @@ declare type instanceModule = "interface" | "instance";
|
|
|
13
13
|
export interface InstanceSequenceConfig {
|
|
14
14
|
dropdownTitle?: string;
|
|
15
15
|
defaultValue?: string | undefined | null;
|
|
16
|
+
beforeRenderCallback?: (x: InstanceSequenceOnchangeInterface) => void;
|
|
16
17
|
onChangeCallback?: (x: InstanceSequenceOnchangeInterface) => void;
|
|
17
18
|
filterInstances?: Set<string>;
|
|
18
19
|
displayAuthId?: boolean;
|
|
@@ -3,8 +3,10 @@ import { RcsbFvModuleBuildInterface } from "./RcsbFvModuleInterface";
|
|
|
3
3
|
import { AnnotationCollectorInterface } from "../../RcsbCollectTools/AnnotationCollector/AnnotationCollectorInterface";
|
|
4
4
|
export declare class RcsbFvInterface extends RcsbFvAbstractModule {
|
|
5
5
|
protected readonly annotationCollector: AnnotationCollectorInterface;
|
|
6
|
+
private instanceId;
|
|
6
7
|
protected protectedBuild(buildConfig: RcsbFvModuleBuildInterface): Promise<void>;
|
|
7
8
|
protected concatAlignmentAndAnnotationTracks(buildConfig: RcsbFvModuleBuildInterface): void;
|
|
9
|
+
private typeSuffix;
|
|
8
10
|
private titleSuffix;
|
|
9
11
|
private trackTitle;
|
|
10
12
|
}
|
|
@@ -13,6 +13,7 @@ export interface SelectOptionInterface {
|
|
|
13
13
|
onChange: () => void;
|
|
14
14
|
}
|
|
15
15
|
interface SelectButtonInterface {
|
|
16
|
+
elementId: string;
|
|
16
17
|
options?: Array<SelectOptionInterface> | Array<GroupedOptionsInterface>;
|
|
17
18
|
additionalOptions?: Array<SelectOptionInterface>;
|
|
18
19
|
addTitle: boolean;
|
|
@@ -20,6 +21,7 @@ interface SelectButtonInterface {
|
|
|
20
21
|
width?: number;
|
|
21
22
|
dropdownTitle?: string;
|
|
22
23
|
optionProps?: (props: OptionProps<OptionPropsInterface>) => JSX.Element;
|
|
24
|
+
isAdditionalButton?: boolean;
|
|
23
25
|
}
|
|
24
26
|
export interface OptionPropsInterface extends SelectOptionInterface {
|
|
25
27
|
value: number;
|
|
@@ -28,6 +30,7 @@ interface SelectButtonState {
|
|
|
28
30
|
selectedOption: OptionPropsInterface;
|
|
29
31
|
}
|
|
30
32
|
export declare class SelectButton extends React.Component<SelectButtonInterface, SelectButtonState> {
|
|
33
|
+
static readonly BUTTON_CONTAINER_DIV_SUFFIX = "_buttonContainerDiv";
|
|
31
34
|
private defaultValue;
|
|
32
35
|
readonly state: SelectButtonState;
|
|
33
36
|
constructor(props: SelectButtonInterface);
|
|
@@ -38,6 +41,7 @@ export declare class SelectButton extends React.Component<SelectButtonInterface,
|
|
|
38
41
|
private selectRender;
|
|
39
42
|
private titleRender;
|
|
40
43
|
private selectButtonRender;
|
|
44
|
+
private innerSelectButtonRender;
|
|
41
45
|
private configStyle;
|
|
42
46
|
private getSelectOpt;
|
|
43
47
|
}
|
|
@@ -7,6 +7,7 @@ export interface SelectButtonConfigInterface {
|
|
|
7
7
|
width?: number;
|
|
8
8
|
dropdownTitle?: string;
|
|
9
9
|
optionProps?: (props: OptionProps<OptionPropsInterface>) => JSX.Element;
|
|
10
|
+
isAdditionalButton?: boolean;
|
|
10
11
|
}
|
|
11
12
|
export declare class WebToolsManager {
|
|
12
13
|
private static suffix;
|
|
@@ -2,6 +2,8 @@ import { InterfaceInstanceInterface } from "../RcsbCollectTools/Translators/Inte
|
|
|
2
2
|
export declare class InterfaceInstanceTranslate {
|
|
3
3
|
private readonly rawData;
|
|
4
4
|
private readonly instances;
|
|
5
|
+
private readonly operatorsIds;
|
|
5
6
|
constructor(data: Array<InterfaceInstanceInterface>);
|
|
6
7
|
getInstances(rcsbId: string): [string, string];
|
|
8
|
+
getOperatorIds(rcsbId: string): [Array<Array<string>>, Array<Array<string>>];
|
|
7
9
|
}
|
package/build/dist/app.d.ts
CHANGED
|
@@ -1 +1,12 @@
|
|
|
1
|
+
import { GroupedOptionsInterface, SelectOptionInterface } from "./RcsbFvWeb/WebTools/SelectButton";
|
|
1
2
|
export { buildEntryChromosome, buildFullChromosome, buildEntityChromosome, buildChromosome, buildEntityFv, buildEntitySummaryFv, buildSingleEntitySummaryFv, buildInstanceFv, buildInstanceSequenceFv, buildMultipleInstanceSequenceFv, buildAssemblySequenceFv, buildPairwiseAlignment, buildPfv, buildMultipleAlignmentSequenceFv, buildUniprotEntityFv, buildUniprotEntityInstanceFv, buildUniprotFv, unmount } from "./RcsbFvWeb/RcsbFvBuilder";
|
|
3
|
+
import { SelectButtonConfigInterface } from "./RcsbFvWeb/WebTools/WebToolsManager";
|
|
4
|
+
import { InterfaceInstanceTranslate } from "./RcsbUtils/InterfaceInstanceTranslate";
|
|
5
|
+
export declare class RcsbFvUI {
|
|
6
|
+
static clearSelectButton(elementFvId: string, selectButtonId: string): void;
|
|
7
|
+
static createSelectButton(elementFvId: string, selectButtonId: string, options: Array<SelectOptionInterface> | Array<GroupedOptionsInterface>, config?: SelectButtonConfigInterface): void;
|
|
8
|
+
static addSelectButton(elementFvId: string, selectButtonId: string, options: Array<SelectOptionInterface>, config?: SelectButtonConfigInterface): void;
|
|
9
|
+
}
|
|
10
|
+
export declare class RcsbFvContextManager {
|
|
11
|
+
static getInterfaceToInstance(interfaceId: string): Promise<InterfaceInstanceTranslate>;
|
|
12
|
+
}
|