drugflow-molstar 0.2.0 → 0.2.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.
Files changed (113) hide show
  1. package/LICENSE +201 -201
  2. package/README.md +15 -15
  3. package/build/drugflow-molstar-component-0.2.2.js +25 -0
  4. package/build/drugflow-molstar-light.css +1 -1
  5. package/build/{drugflow-molstar-plugin-0.2.0.js → drugflow-molstar-plugin-0.2.2.js} +2 -2
  6. package/lib/alphafold-transparency.d.ts +6 -6
  7. package/lib/alphafold-transparency.js +153 -153
  8. package/lib/app/molstar/lib/apps/docking-viewer/index.html +37 -0
  9. package/lib/app/molstar/lib/apps/viewer/embedded.html +44 -0
  10. package/lib/app/molstar/lib/apps/viewer/favicon.ico +0 -0
  11. package/lib/app/molstar/lib/apps/viewer/index.html +110 -0
  12. package/lib/app/molstar/lib/examples/alpha-orbitals/index.html +73 -0
  13. package/lib/app/molstar/lib/examples/basic-wrapper/index.html +138 -0
  14. package/lib/app/molstar/lib/examples/lighting/index.html +89 -0
  15. package/lib/app/molstar/lib/examples/proteopedia-wrapper/index.html +237 -0
  16. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/base.scss +33 -0
  17. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/components/controls-base.scss +334 -0
  18. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/components/controls.scss +419 -0
  19. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/components/help.scss +27 -0
  20. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/components/line-graph.scss +68 -0
  21. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/components/log.scss +100 -0
  22. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/components/misc.scss +644 -0
  23. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/components/sequence.scss +126 -0
  24. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/components/slider.scss +166 -0
  25. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/components/tasks.scss +99 -0
  26. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/components/toast.scss +84 -0
  27. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/components/transformer.scss +164 -0
  28. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/components/viewport.scss +128 -0
  29. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/layout/common.scss +72 -0
  30. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/layout/controls-landscape.scss +90 -0
  31. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/layout/controls-outside.scss +99 -0
  32. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/layout/controls-portrait.scss +109 -0
  33. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/layout.scss +41 -0
  34. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/logo.scss +13 -0
  35. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/normalize.scss +210 -0
  36. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/ui.scss +41 -0
  37. package/lib/app/molstar/lib/mol-plugin-ui/skin/base/variables.scss +86 -0
  38. package/lib/app/molstar/lib/mol-plugin-ui/skin/blue.scss +2 -0
  39. package/lib/app/molstar/lib/mol-plugin-ui/skin/colors/blue.scss +24 -0
  40. package/lib/app/molstar/lib/mol-plugin-ui/skin/colors/dark.scss +24 -0
  41. package/lib/app/molstar/lib/mol-plugin-ui/skin/colors/light.scss +30 -0
  42. package/lib/app/molstar/lib/mol-plugin-ui/skin/dark.scss +2 -0
  43. package/lib/app/molstar/lib/mol-plugin-ui/skin/light.scss +2 -0
  44. package/lib/custom-events.d.ts +4 -4
  45. package/lib/custom-events.js +56 -56
  46. package/lib/domain-annotations/behavior.d.ts +5 -5
  47. package/lib/domain-annotations/behavior.js +49 -49
  48. package/lib/domain-annotations/color.d.ts +10 -10
  49. package/lib/domain-annotations/color.js +78 -78
  50. package/lib/domain-annotations/prop.d.ts +35 -35
  51. package/lib/domain-annotations/prop.js +160 -160
  52. package/lib/drugflow-molstar-component-build-0.1.2.js +4268 -0
  53. package/lib/drugflow-molstar-component-build-0.1.2.js.LICENSE.txt +24 -0
  54. package/lib/drugflow-molstar-component-build-0.1.2.js.map +1 -0
  55. package/lib/drugflow-molstar-component-build-0.1.3.js +2 -0
  56. package/lib/drugflow-molstar-component-build-0.1.3.js.LICENSE.txt +24 -0
  57. package/lib/drugflow-molstar-component-build-0.1.4.js +2 -0
  58. package/lib/drugflow-molstar-component-build-0.1.4.js.LICENSE.txt +24 -0
  59. package/lib/drugflow-molstar-component-build-0.1.6.js +2 -0
  60. package/lib/drugflow-molstar-component-build-0.1.6.js.LICENSE.txt +24 -0
  61. package/lib/drugflow-molstar-component-build-0.2.2.js +2 -0
  62. package/lib/drugflow-molstar-component-build-0.2.2.js.LICENSE.txt +24 -0
  63. package/lib/helpers.d.ts +82 -81
  64. package/lib/helpers.js +278 -278
  65. package/lib/index.d.ts +1 -1
  66. package/lib/index.js +1274 -1239
  67. package/lib/labels.d.ts +2 -2
  68. package/lib/labels.js +42 -42
  69. package/lib/loci-details.d.ts +27 -27
  70. package/lib/loci-details.js +128 -128
  71. package/lib/pdbe-molstar-component-build-3.1.2.js +2 -0
  72. package/lib/pdbe-molstar-component-build-3.1.2.js.LICENSE.txt +24 -0
  73. package/lib/sifts-mapping.d.ts +16 -16
  74. package/lib/sifts-mapping.js +83 -83
  75. package/lib/sifts-mappings-behaviour.d.ts +5 -5
  76. package/lib/sifts-mappings-behaviour.js +64 -64
  77. package/lib/spec.d.ts +76 -76
  78. package/lib/spec.js +105 -105
  79. package/lib/subscribe-events.d.ts +1 -1
  80. package/lib/subscribe-events.js +194 -194
  81. package/lib/superposition-export.d.ts +4 -4
  82. package/lib/superposition-export.js +152 -152
  83. package/lib/superposition-focus-representation.d.ts +16 -16
  84. package/lib/superposition-focus-representation.js +153 -153
  85. package/lib/superposition-sifts-mapping.d.ts +22 -22
  86. package/lib/superposition-sifts-mapping.js +159 -159
  87. package/lib/superposition.d.ts +18 -18
  88. package/lib/superposition.js +794 -794
  89. package/lib/ui/alphafold-superposition.d.ts +56 -56
  90. package/lib/ui/alphafold-superposition.js +178 -178
  91. package/lib/ui/alphafold-tranparency.d.ts +22 -22
  92. package/lib/ui/alphafold-tranparency.js +65 -65
  93. package/lib/ui/annotation-controls.d.ts +24 -24
  94. package/lib/ui/annotation-controls.js +166 -166
  95. package/lib/ui/export-superposition.d.ts +6 -6
  96. package/lib/ui/export-superposition.js +71 -71
  97. package/lib/ui/pdbe-left-panel.d.ts +18 -18
  98. package/lib/ui/pdbe-left-panel.js +167 -167
  99. package/lib/ui/pdbe-screenshot-controls.d.ts +20 -20
  100. package/lib/ui/pdbe-screenshot-controls.js +101 -101
  101. package/lib/ui/pdbe-structure-controls.d.ts +17 -17
  102. package/lib/ui/pdbe-structure-controls.js +70 -70
  103. package/lib/ui/pdbe-viewport-controls.d.ts +6 -6
  104. package/lib/ui/pdbe-viewport-controls.js +56 -56
  105. package/lib/ui/segment-tree.d.ts +18 -18
  106. package/lib/ui/segment-tree.js +804 -804
  107. package/lib/ui/superposition-components.d.ts +10 -10
  108. package/lib/ui/superposition-components.js +435 -435
  109. package/lib/ui/superposition-viewport.d.ts +5 -5
  110. package/lib/ui/superposition-viewport.js +23 -23
  111. package/package.json +79 -79
  112. /package/build/{drugflow-molstar-0.2.0.css → drugflow-molstar-0.2.2.css} +0 -0
  113. /package/build/{drugflow-molstar-plugin-0.2.0.js.LICENSE.txt → drugflow-molstar-plugin-0.2.2.js.LICENSE.txt} +0 -0
package/lib/spec.js CHANGED
@@ -1,105 +1,105 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DefaultParams = exports.createPluginUI = exports.DefaultPluginUISpec = exports.DefaultPluginSpec = void 0;
4
- var tslib_1 = require("tslib");
5
- var React = tslib_1.__importStar(require("react"));
6
- var ReactDOM = tslib_1.__importStar(require("react-dom"));
7
- var volume_1 = require("Molstar/mol-plugin-ui/custom/volume");
8
- var plugin_1 = require("Molstar/mol-plugin-ui/plugin");
9
- var behavior_1 = require("Molstar/mol-plugin/behavior");
10
- var transformers_1 = require("Molstar/mol-plugin/behavior/dynamic/volume-streaming/transformers");
11
- var context_1 = require("Molstar/mol-plugin-ui/context");
12
- var spec_1 = require("Molstar/mol-plugin/spec");
13
- var config_1 = require("Molstar/mol-plugin/config");
14
- var actions_1 = require("Molstar/mol-plugin-state/actions");
15
- var labels_1 = require("./labels");
16
- var sifts_mappings_behaviour_1 = require("./sifts-mappings-behaviour");
17
- var DefaultPluginSpec = function () { return ({
18
- actions: [
19
- spec_1.PluginSpec.Action(actions_1.StateActions.Structure.EnableStructureCustomProps)
20
- ],
21
- behaviors: [
22
- spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.Representation.HighlightLoci),
23
- spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.Representation.SelectLoci),
24
- spec_1.PluginSpec.Behavior(labels_1.PDBeLociLabelProvider),
25
- spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.Representation.FocusLoci),
26
- spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.Camera.FocusLoci),
27
- spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.Camera.CameraAxisHelper),
28
- spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.CustomProps.StructureInfo),
29
- spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.CustomProps.AccessibleSurfaceArea),
30
- spec_1.PluginSpec.Behavior(sifts_mappings_behaviour_1.PDBeSIFTSMapping, { autoAttach: true, showTooltip: true }),
31
- spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.CustomProps.Interactions),
32
- spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.CustomProps.SecondaryStructure),
33
- spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.CustomProps.ValenceModel),
34
- spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.CustomProps.CrossLinkRestraint),
35
- ],
36
- // animations: [],
37
- config: [
38
- [config_1.PluginConfig.VolumeStreaming.DefaultServer, 'https://www.ebi.ac.uk/pdbe/volume-server']
39
- ]
40
- }); };
41
- exports.DefaultPluginSpec = DefaultPluginSpec;
42
- var DefaultPluginUISpec = function () { return (tslib_1.__assign(tslib_1.__assign({}, (0, exports.DefaultPluginSpec)()), { customParamEditors: [
43
- [transformers_1.CreateVolumeStreamingBehavior, volume_1.VolumeStreamingCustomControls]
44
- ] })); };
45
- exports.DefaultPluginUISpec = DefaultPluginUISpec;
46
- function createPluginUI(target, spec, options) {
47
- return tslib_1.__awaiter(this, void 0, void 0, function () {
48
- var ctx;
49
- return tslib_1.__generator(this, function (_a) {
50
- switch (_a.label) {
51
- case 0:
52
- ctx = new context_1.PluginUIContext(spec || (0, exports.DefaultPluginUISpec)());
53
- return [4 /*yield*/, ctx.init()];
54
- case 1:
55
- _a.sent();
56
- if (!(options === null || options === void 0 ? void 0 : options.onBeforeUIRender)) return [3 /*break*/, 3];
57
- return [4 /*yield*/, options.onBeforeUIRender(ctx)];
58
- case 2:
59
- _a.sent();
60
- _a.label = 3;
61
- case 3:
62
- ReactDOM.render(React.createElement(plugin_1.Plugin, { plugin: ctx }), target);
63
- return [2 /*return*/, ctx];
64
- }
65
- });
66
- });
67
- }
68
- exports.createPluginUI = createPluginUI;
69
- exports.DefaultParams = {
70
- moleculeId: undefined,
71
- superposition: undefined,
72
- superpositionParams: undefined,
73
- customData: undefined,
74
- ligandView: undefined,
75
- assemblyId: undefined,
76
- visualStyle: undefined,
77
- highlightColor: undefined,
78
- selectColor: undefined,
79
- hideStructure: undefined,
80
- hideCanvasControls: undefined,
81
- granularity: undefined,
82
- selection: undefined,
83
- mapSettings: undefined,
84
- selectBindings: undefined,
85
- focusBindings: undefined,
86
- defaultPreset: 'default',
87
- pdbeUrl: 'https://www.ebi.ac.uk/pdbe/',
88
- bgColor: { r: 0, g: 0, b: 0 },
89
- lighting: undefined,
90
- encoding: 'bcif',
91
- selectInteraction: true,
92
- loadMaps: false,
93
- validationAnnotation: false,
94
- domainAnnotation: false,
95
- lowPrecisionCoords: false,
96
- expanded: false,
97
- hideControls: false,
98
- pdbeLink: true,
99
- loadCartoonsOnly: false,
100
- landscape: false,
101
- reactive: false,
102
- subscribeEvents: false,
103
- alphafoldView: false,
104
- sequencePanel: false
105
- };
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DefaultParams = exports.createPluginUI = exports.DefaultPluginUISpec = exports.DefaultPluginSpec = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var React = tslib_1.__importStar(require("react"));
6
+ var ReactDOM = tslib_1.__importStar(require("react-dom"));
7
+ var volume_1 = require("Molstar/mol-plugin-ui/custom/volume");
8
+ var plugin_1 = require("Molstar/mol-plugin-ui/plugin");
9
+ var behavior_1 = require("Molstar/mol-plugin/behavior");
10
+ var transformers_1 = require("Molstar/mol-plugin/behavior/dynamic/volume-streaming/transformers");
11
+ var context_1 = require("Molstar/mol-plugin-ui/context");
12
+ var spec_1 = require("Molstar/mol-plugin/spec");
13
+ var config_1 = require("Molstar/mol-plugin/config");
14
+ var actions_1 = require("Molstar/mol-plugin-state/actions");
15
+ var labels_1 = require("./labels");
16
+ var sifts_mappings_behaviour_1 = require("./sifts-mappings-behaviour");
17
+ var DefaultPluginSpec = function () { return ({
18
+ actions: [
19
+ spec_1.PluginSpec.Action(actions_1.StateActions.Structure.EnableStructureCustomProps)
20
+ ],
21
+ behaviors: [
22
+ spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.Representation.HighlightLoci),
23
+ spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.Representation.SelectLoci),
24
+ spec_1.PluginSpec.Behavior(labels_1.PDBeLociLabelProvider),
25
+ spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.Representation.FocusLoci),
26
+ spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.Camera.FocusLoci),
27
+ spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.Camera.CameraAxisHelper),
28
+ spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.CustomProps.StructureInfo),
29
+ spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.CustomProps.AccessibleSurfaceArea),
30
+ spec_1.PluginSpec.Behavior(sifts_mappings_behaviour_1.PDBeSIFTSMapping, { autoAttach: true, showTooltip: true }),
31
+ spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.CustomProps.Interactions),
32
+ spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.CustomProps.SecondaryStructure),
33
+ spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.CustomProps.ValenceModel),
34
+ spec_1.PluginSpec.Behavior(behavior_1.PluginBehaviors.CustomProps.CrossLinkRestraint),
35
+ ],
36
+ // animations: [],
37
+ config: [
38
+ [config_1.PluginConfig.VolumeStreaming.DefaultServer, 'https://www.ebi.ac.uk/pdbe/volume-server']
39
+ ]
40
+ }); };
41
+ exports.DefaultPluginSpec = DefaultPluginSpec;
42
+ var DefaultPluginUISpec = function () { return (tslib_1.__assign(tslib_1.__assign({}, (0, exports.DefaultPluginSpec)()), { customParamEditors: [
43
+ [transformers_1.CreateVolumeStreamingBehavior, volume_1.VolumeStreamingCustomControls]
44
+ ] })); };
45
+ exports.DefaultPluginUISpec = DefaultPluginUISpec;
46
+ function createPluginUI(target, spec, options) {
47
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
48
+ var ctx;
49
+ return tslib_1.__generator(this, function (_a) {
50
+ switch (_a.label) {
51
+ case 0:
52
+ ctx = new context_1.PluginUIContext(spec || (0, exports.DefaultPluginUISpec)());
53
+ return [4 /*yield*/, ctx.init()];
54
+ case 1:
55
+ _a.sent();
56
+ if (!(options === null || options === void 0 ? void 0 : options.onBeforeUIRender)) return [3 /*break*/, 3];
57
+ return [4 /*yield*/, options.onBeforeUIRender(ctx)];
58
+ case 2:
59
+ _a.sent();
60
+ _a.label = 3;
61
+ case 3:
62
+ ReactDOM.render(React.createElement(plugin_1.Plugin, { plugin: ctx }), target);
63
+ return [2 /*return*/, ctx];
64
+ }
65
+ });
66
+ });
67
+ }
68
+ exports.createPluginUI = createPluginUI;
69
+ exports.DefaultParams = {
70
+ moleculeId: undefined,
71
+ superposition: undefined,
72
+ superpositionParams: undefined,
73
+ customData: undefined,
74
+ ligandView: undefined,
75
+ assemblyId: undefined,
76
+ visualStyle: undefined,
77
+ highlightColor: undefined,
78
+ selectColor: undefined,
79
+ hideStructure: undefined,
80
+ hideCanvasControls: undefined,
81
+ granularity: undefined,
82
+ selection: undefined,
83
+ mapSettings: undefined,
84
+ selectBindings: undefined,
85
+ focusBindings: undefined,
86
+ defaultPreset: 'default',
87
+ pdbeUrl: 'https://www.ebi.ac.uk/pdbe/',
88
+ bgColor: { r: 0, g: 0, b: 0 },
89
+ lighting: undefined,
90
+ encoding: 'bcif',
91
+ selectInteraction: true,
92
+ loadMaps: false,
93
+ validationAnnotation: false,
94
+ domainAnnotation: false,
95
+ lowPrecisionCoords: false,
96
+ expanded: false,
97
+ hideControls: false,
98
+ pdbeLink: true,
99
+ loadCartoonsOnly: false,
100
+ landscape: false,
101
+ reactive: false,
102
+ subscribeEvents: false,
103
+ alphafoldView: false,
104
+ sequencePanel: false
105
+ };
@@ -1 +1 @@
1
- export declare function subscribeToComponentEvents(wrapperCtx: any): void;
1
+ export declare function subscribeToComponentEvents(wrapperCtx: any): void;
@@ -1,194 +1,194 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.subscribeToComponentEvents = void 0;
4
- function subscribeToComponentEvents(wrapperCtx) {
5
- document.addEventListener('PDB.interactions.click', function (e) {
6
- if (typeof e.detail !== 'undefined') {
7
- var data = e.detail.interacting_nodes ? { data: e.detail.interacting_nodes } : { data: [e.detail.selected_node] };
8
- data.data[0]['focus'] = true;
9
- wrapperCtx.visual.select(data);
10
- }
11
- });
12
- document.addEventListener('PDB.interactions.mouseover', function (e) {
13
- if (typeof e.detail !== 'undefined') {
14
- var data = e.detail.interacting_nodes ? { data: e.detail.interacting_nodes } : { data: [e.detail.selected_node] };
15
- wrapperCtx.visual.highlight(data);
16
- }
17
- });
18
- document.addEventListener('PDB.interactions.mouseout', function (e) {
19
- wrapperCtx.visual.clearHighlight();
20
- });
21
- document.addEventListener('PDB.topologyViewer.click', function (e) {
22
- if (typeof e.eventData !== 'undefined') {
23
- // Create query object from event data
24
- var highlightQuery = {
25
- entity_id: e.eventData.entityId,
26
- struct_asym_id: e.eventData.structAsymId,
27
- start_residue_number: e.eventData.residueNumber,
28
- end_residue_number: e.eventData.residueNumber,
29
- sideChain: true,
30
- focus: true
31
- };
32
- // Call highlightAnnotation
33
- wrapperCtx.visual.select({ data: [highlightQuery] });
34
- }
35
- });
36
- document.addEventListener('PDB.topologyViewer.mouseover', function (e) {
37
- if (typeof e.eventData !== 'undefined') {
38
- // Abort if entryid do not match or viewer type is unipdb
39
- // if(e.eventData.entryId != scope.pdbId) return;
40
- // Create query object from event data
41
- var highlightQuery = {
42
- entity_id: e.eventData.entityId,
43
- struct_asym_id: e.eventData.structAsymId,
44
- start_residue_number: e.eventData.residueNumber,
45
- end_residue_number: e.eventData.residueNumber
46
- };
47
- // Call highlightAnnotation
48
- wrapperCtx.visual.highlight({ data: [highlightQuery] });
49
- }
50
- });
51
- document.addEventListener('PDB.topologyViewer.mouseout', function (e) {
52
- wrapperCtx.visual.clearHighlight();
53
- });
54
- document.addEventListener('protvista-mouseover', function (e) {
55
- if (typeof e.detail !== 'undefined') {
56
- var highlightQuery = undefined;
57
- // Create query object from event data
58
- if (e.detail.start && e.detail.end) {
59
- highlightQuery = {
60
- start_residue_number: parseInt(e.detail.start),
61
- end_residue_number: parseInt(e.detail.end)
62
- };
63
- }
64
- if (e.detail.feature && e.detail.feature.entityId)
65
- highlightQuery['entity_id'] = e.detail.feature.entityId + '';
66
- if (e.detail.feature && e.detail.feature.bestChainId)
67
- highlightQuery['struct_asym_id'] = e.detail.feature.bestChainId;
68
- if (e.detail.feature && e.detail.feature.chainId)
69
- highlightQuery['struct_asym_id'] = e.detail.feature.chainId;
70
- if (highlightQuery)
71
- wrapperCtx.visual.highlight({ data: [highlightQuery] });
72
- }
73
- });
74
- document.addEventListener('protvista-mouseout', function (e) {
75
- wrapperCtx.visual.clearHighlight();
76
- });
77
- document.addEventListener('protvista-click', function (e) {
78
- if (typeof e.detail !== 'undefined') {
79
- var showInteraction = false;
80
- var highlightQuery = undefined;
81
- // Create query object from event data
82
- if (e.detail.start && e.detail.end) {
83
- highlightQuery = {
84
- start_residue_number: parseInt(e.detail.start),
85
- end_residue_number: parseInt(e.detail.end)
86
- };
87
- }
88
- if (e.detail.feature && e.detail.feature.entityId)
89
- highlightQuery['entity_id'] = e.detail.feature.entityId + '';
90
- if (e.detail.feature && e.detail.feature.bestChainId)
91
- highlightQuery['struct_asym_id'] = e.detail.feature.bestChainId;
92
- if (e.detail.feature && e.detail.feature.chainId)
93
- highlightQuery['struct_asym_id'] = e.detail.feature.chainId;
94
- if (e.detail.feature && e.detail.feature.accession && e.detail.feature.accession.split(' ')[0] === 'Chain' || e.detail.feature.tooltipContent === 'Ligand binding site') {
95
- showInteraction = true;
96
- }
97
- if (e.detail.start === e.detail.end)
98
- showInteraction = true;
99
- if (highlightQuery) {
100
- if (showInteraction) {
101
- highlightQuery['sideChain'] = true;
102
- }
103
- else {
104
- var selColor = undefined;
105
- if (e.detail.trackIndex > -1 && e.detail.feature.locations && e.detail.feature.locations[0].fragments[e.detail.trackIndex].color)
106
- selColor = e.detail.feature.locations[0].fragments[e.detail.trackIndex].color;
107
- if (typeof selColor == 'undefined' && e.detail.feature.color)
108
- selColor = e.detail.feature.color;
109
- if (typeof selColor == 'undefined' && e.detail.color)
110
- selColor = e.detail.color;
111
- if (typeof selColor == 'undefined') {
112
- selColor = { r: 65, g: 96, b: 91 };
113
- }
114
- else {
115
- var isRgb = /rgb/g;
116
- if (isRgb.test(selColor)) {
117
- var rgbArr = selColor.substring(4, selColor.length - 1).split(',');
118
- selColor = { r: rgbArr[0], g: rgbArr[1], b: rgbArr[2] };
119
- }
120
- }
121
- highlightQuery['color'] = selColor;
122
- }
123
- highlightQuery['focus'] = true;
124
- wrapperCtx.visual.select({ data: [highlightQuery] });
125
- }
126
- }
127
- });
128
- var elementTypeArrForRange = ['uniprot', 'pfam', 'cath', 'scop', 'strand', 'helice'];
129
- var elementTypeArrForSingle = ['chain', 'quality', 'quality_outlier', 'binding site', 'alternate conformer'];
130
- document.addEventListener('PDB.seqViewer.click', function (e) {
131
- if (typeof e.eventData !== 'undefined') {
132
- // Abort if entryid and entityid do not match or viewer type is unipdb
133
- // if(e.eventData.entryId != scope.pdbId) return;
134
- if (typeof e.eventData.elementData !== 'undefined' && elementTypeArrForSingle.indexOf(e.eventData.elementData.elementType) > -1) {
135
- // Create query object from event data
136
- var highlightQuery = {
137
- entity_id: e.eventData.entityId,
138
- struct_asym_id: e.eventData.elementData.pathData.struct_asym_id,
139
- start_residue_number: e.eventData.residueNumber,
140
- end_residue_number: e.eventData.residueNumber,
141
- sideChain: true,
142
- focus: true
143
- };
144
- // Call highlightAnnotation
145
- wrapperCtx.visual.select({ data: [highlightQuery] });
146
- }
147
- else if (typeof e.eventData.elementData !== 'undefined' && elementTypeArrForRange.indexOf(e.eventData.elementData.elementType) > -1) {
148
- var seqColorArray = e.eventData.elementData.color;
149
- // Create query object from event data
150
- var highlightQuery = {
151
- entity_id: e.eventData.entityId,
152
- struct_asym_id: e.eventData.elementData.pathData.struct_asym_id,
153
- start_residue_number: e.eventData.elementData.pathData.start.residue_number,
154
- end_residue_number: e.eventData.elementData.pathData.end.residue_number,
155
- color: { r: seqColorArray[0], g: seqColorArray[1], b: seqColorArray[2] },
156
- focus: true
157
- };
158
- wrapperCtx.visual.select({ data: [highlightQuery] });
159
- }
160
- }
161
- });
162
- document.addEventListener('PDB.seqViewer.mouseover', function (e) {
163
- if (typeof e.eventData !== 'undefined') {
164
- // Abort if entryid and entityid do not match or viewer type is unipdb
165
- // if(e.eventData.entryId != scope.pdbId) return;
166
- if (typeof e.eventData.elementData !== 'undefined' && elementTypeArrForSingle.indexOf(e.eventData.elementData.elementType) > -1) {
167
- // Create query object from event data
168
- var highlightQuery = {
169
- entity_id: e.eventData.entityId,
170
- struct_asym_id: e.eventData.elementData.pathData.struct_asym_id,
171
- start_residue_number: e.eventData.residueNumber,
172
- end_residue_number: e.eventData.residueNumber,
173
- focus: true
174
- };
175
- wrapperCtx.visual.select({ data: [highlightQuery] });
176
- }
177
- else if (typeof e.eventData.elementData !== 'undefined' && elementTypeArrForRange.indexOf(e.eventData.elementData.elementType) > -1) {
178
- // Create query object from event data
179
- var highlightQuery = {
180
- entity_id: e.eventData.entityId,
181
- struct_asym_id: e.eventData.elementData.pathData.struct_asym_id,
182
- start_residue_number: e.eventData.elementData.pathData.start.residue_number,
183
- end_residue_number: e.eventData.elementData.pathData.end.residue_number
184
- };
185
- // Call highlightAnnotation
186
- wrapperCtx.visual.highlight({ data: [highlightQuery] });
187
- }
188
- }
189
- });
190
- document.addEventListener('PDB.seqViewer.mouseout', function (e) {
191
- wrapperCtx.visual.clearHighlight();
192
- });
193
- }
194
- exports.subscribeToComponentEvents = subscribeToComponentEvents;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.subscribeToComponentEvents = void 0;
4
+ function subscribeToComponentEvents(wrapperCtx) {
5
+ document.addEventListener('PDB.interactions.click', function (e) {
6
+ if (typeof e.detail !== 'undefined') {
7
+ var data = e.detail.interacting_nodes ? { data: e.detail.interacting_nodes } : { data: [e.detail.selected_node] };
8
+ data.data[0]['focus'] = true;
9
+ wrapperCtx.visual.select(data);
10
+ }
11
+ });
12
+ document.addEventListener('PDB.interactions.mouseover', function (e) {
13
+ if (typeof e.detail !== 'undefined') {
14
+ var data = e.detail.interacting_nodes ? { data: e.detail.interacting_nodes } : { data: [e.detail.selected_node] };
15
+ wrapperCtx.visual.highlight(data);
16
+ }
17
+ });
18
+ document.addEventListener('PDB.interactions.mouseout', function (e) {
19
+ wrapperCtx.visual.clearHighlight();
20
+ });
21
+ document.addEventListener('PDB.topologyViewer.click', function (e) {
22
+ if (typeof e.eventData !== 'undefined') {
23
+ // Create query object from event data
24
+ var highlightQuery = {
25
+ entity_id: e.eventData.entityId,
26
+ struct_asym_id: e.eventData.structAsymId,
27
+ start_residue_number: e.eventData.residueNumber,
28
+ end_residue_number: e.eventData.residueNumber,
29
+ sideChain: true,
30
+ focus: true
31
+ };
32
+ // Call highlightAnnotation
33
+ wrapperCtx.visual.select({ data: [highlightQuery] });
34
+ }
35
+ });
36
+ document.addEventListener('PDB.topologyViewer.mouseover', function (e) {
37
+ if (typeof e.eventData !== 'undefined') {
38
+ // Abort if entryid do not match or viewer type is unipdb
39
+ // if(e.eventData.entryId != scope.pdbId) return;
40
+ // Create query object from event data
41
+ var highlightQuery = {
42
+ entity_id: e.eventData.entityId,
43
+ struct_asym_id: e.eventData.structAsymId,
44
+ start_residue_number: e.eventData.residueNumber,
45
+ end_residue_number: e.eventData.residueNumber
46
+ };
47
+ // Call highlightAnnotation
48
+ wrapperCtx.visual.highlight({ data: [highlightQuery] });
49
+ }
50
+ });
51
+ document.addEventListener('PDB.topologyViewer.mouseout', function (e) {
52
+ wrapperCtx.visual.clearHighlight();
53
+ });
54
+ document.addEventListener('protvista-mouseover', function (e) {
55
+ if (typeof e.detail !== 'undefined') {
56
+ var highlightQuery = undefined;
57
+ // Create query object from event data
58
+ if (e.detail.start && e.detail.end) {
59
+ highlightQuery = {
60
+ start_residue_number: parseInt(e.detail.start),
61
+ end_residue_number: parseInt(e.detail.end)
62
+ };
63
+ }
64
+ if (e.detail.feature && e.detail.feature.entityId)
65
+ highlightQuery['entity_id'] = e.detail.feature.entityId + '';
66
+ if (e.detail.feature && e.detail.feature.bestChainId)
67
+ highlightQuery['struct_asym_id'] = e.detail.feature.bestChainId;
68
+ if (e.detail.feature && e.detail.feature.chainId)
69
+ highlightQuery['struct_asym_id'] = e.detail.feature.chainId;
70
+ if (highlightQuery)
71
+ wrapperCtx.visual.highlight({ data: [highlightQuery] });
72
+ }
73
+ });
74
+ document.addEventListener('protvista-mouseout', function (e) {
75
+ wrapperCtx.visual.clearHighlight();
76
+ });
77
+ document.addEventListener('protvista-click', function (e) {
78
+ if (typeof e.detail !== 'undefined') {
79
+ var showInteraction = false;
80
+ var highlightQuery = undefined;
81
+ // Create query object from event data
82
+ if (e.detail.start && e.detail.end) {
83
+ highlightQuery = {
84
+ start_residue_number: parseInt(e.detail.start),
85
+ end_residue_number: parseInt(e.detail.end)
86
+ };
87
+ }
88
+ if (e.detail.feature && e.detail.feature.entityId)
89
+ highlightQuery['entity_id'] = e.detail.feature.entityId + '';
90
+ if (e.detail.feature && e.detail.feature.bestChainId)
91
+ highlightQuery['struct_asym_id'] = e.detail.feature.bestChainId;
92
+ if (e.detail.feature && e.detail.feature.chainId)
93
+ highlightQuery['struct_asym_id'] = e.detail.feature.chainId;
94
+ if (e.detail.feature && e.detail.feature.accession && e.detail.feature.accession.split(' ')[0] === 'Chain' || e.detail.feature.tooltipContent === 'Ligand binding site') {
95
+ showInteraction = true;
96
+ }
97
+ if (e.detail.start === e.detail.end)
98
+ showInteraction = true;
99
+ if (highlightQuery) {
100
+ if (showInteraction) {
101
+ highlightQuery['sideChain'] = true;
102
+ }
103
+ else {
104
+ var selColor = undefined;
105
+ if (e.detail.trackIndex > -1 && e.detail.feature.locations && e.detail.feature.locations[0].fragments[e.detail.trackIndex].color)
106
+ selColor = e.detail.feature.locations[0].fragments[e.detail.trackIndex].color;
107
+ if (typeof selColor == 'undefined' && e.detail.feature.color)
108
+ selColor = e.detail.feature.color;
109
+ if (typeof selColor == 'undefined' && e.detail.color)
110
+ selColor = e.detail.color;
111
+ if (typeof selColor == 'undefined') {
112
+ selColor = { r: 65, g: 96, b: 91 };
113
+ }
114
+ else {
115
+ var isRgb = /rgb/g;
116
+ if (isRgb.test(selColor)) {
117
+ var rgbArr = selColor.substring(4, selColor.length - 1).split(',');
118
+ selColor = { r: rgbArr[0], g: rgbArr[1], b: rgbArr[2] };
119
+ }
120
+ }
121
+ highlightQuery['color'] = selColor;
122
+ }
123
+ highlightQuery['focus'] = true;
124
+ wrapperCtx.visual.select({ data: [highlightQuery] });
125
+ }
126
+ }
127
+ });
128
+ var elementTypeArrForRange = ['uniprot', 'pfam', 'cath', 'scop', 'strand', 'helice'];
129
+ var elementTypeArrForSingle = ['chain', 'quality', 'quality_outlier', 'binding site', 'alternate conformer'];
130
+ document.addEventListener('PDB.seqViewer.click', function (e) {
131
+ if (typeof e.eventData !== 'undefined') {
132
+ // Abort if entryid and entityid do not match or viewer type is unipdb
133
+ // if(e.eventData.entryId != scope.pdbId) return;
134
+ if (typeof e.eventData.elementData !== 'undefined' && elementTypeArrForSingle.indexOf(e.eventData.elementData.elementType) > -1) {
135
+ // Create query object from event data
136
+ var highlightQuery = {
137
+ entity_id: e.eventData.entityId,
138
+ struct_asym_id: e.eventData.elementData.pathData.struct_asym_id,
139
+ start_residue_number: e.eventData.residueNumber,
140
+ end_residue_number: e.eventData.residueNumber,
141
+ sideChain: true,
142
+ focus: true
143
+ };
144
+ // Call highlightAnnotation
145
+ wrapperCtx.visual.select({ data: [highlightQuery] });
146
+ }
147
+ else if (typeof e.eventData.elementData !== 'undefined' && elementTypeArrForRange.indexOf(e.eventData.elementData.elementType) > -1) {
148
+ var seqColorArray = e.eventData.elementData.color;
149
+ // Create query object from event data
150
+ var highlightQuery = {
151
+ entity_id: e.eventData.entityId,
152
+ struct_asym_id: e.eventData.elementData.pathData.struct_asym_id,
153
+ start_residue_number: e.eventData.elementData.pathData.start.residue_number,
154
+ end_residue_number: e.eventData.elementData.pathData.end.residue_number,
155
+ color: { r: seqColorArray[0], g: seqColorArray[1], b: seqColorArray[2] },
156
+ focus: true
157
+ };
158
+ wrapperCtx.visual.select({ data: [highlightQuery] });
159
+ }
160
+ }
161
+ });
162
+ document.addEventListener('PDB.seqViewer.mouseover', function (e) {
163
+ if (typeof e.eventData !== 'undefined') {
164
+ // Abort if entryid and entityid do not match or viewer type is unipdb
165
+ // if(e.eventData.entryId != scope.pdbId) return;
166
+ if (typeof e.eventData.elementData !== 'undefined' && elementTypeArrForSingle.indexOf(e.eventData.elementData.elementType) > -1) {
167
+ // Create query object from event data
168
+ var highlightQuery = {
169
+ entity_id: e.eventData.entityId,
170
+ struct_asym_id: e.eventData.elementData.pathData.struct_asym_id,
171
+ start_residue_number: e.eventData.residueNumber,
172
+ end_residue_number: e.eventData.residueNumber,
173
+ focus: true
174
+ };
175
+ wrapperCtx.visual.select({ data: [highlightQuery] });
176
+ }
177
+ else if (typeof e.eventData.elementData !== 'undefined' && elementTypeArrForRange.indexOf(e.eventData.elementData.elementType) > -1) {
178
+ // Create query object from event data
179
+ var highlightQuery = {
180
+ entity_id: e.eventData.entityId,
181
+ struct_asym_id: e.eventData.elementData.pathData.struct_asym_id,
182
+ start_residue_number: e.eventData.elementData.pathData.start.residue_number,
183
+ end_residue_number: e.eventData.elementData.pathData.end.residue_number
184
+ };
185
+ // Call highlightAnnotation
186
+ wrapperCtx.visual.highlight({ data: [highlightQuery] });
187
+ }
188
+ }
189
+ });
190
+ document.addEventListener('PDB.seqViewer.mouseout', function (e) {
191
+ wrapperCtx.visual.clearHighlight();
192
+ });
193
+ }
194
+ exports.subscribeToComponentEvents = subscribeToComponentEvents;
@@ -1,4 +1,4 @@
1
- import { PluginContext } from 'Molstar/mol-plugin/context';
2
- export declare function superpositionExportHierarchy(plugin: PluginContext, options?: {
3
- format?: 'cif' | 'bcif';
4
- }): Promise<void>;
1
+ import { PluginContext } from 'Molstar/mol-plugin/context';
2
+ export declare function superpositionExportHierarchy(plugin: PluginContext, options?: {
3
+ format?: 'cif' | 'bcif';
4
+ }): Promise<void>;