Kaynağa Gözat

Merge branch 'master' of https://github.com/molstar/molstar

David Sehnal 5 yıl önce
ebeveyn
işleme
09210279e1
31 değiştirilmiş dosya ile 170 ekleme ve 151 silme
  1. 2 2
      README.md
  2. 6 1
      src/apps/viewer/index.ts
  3. 1 1
      src/examples/basic-wrapper/index.ts
  4. 9 0
      src/extensions/pdbe/index.ts
  5. 0 0
      src/extensions/pdbe/preferred-assembly.ts
  6. 1 1
      src/extensions/pdbe/struct-ref-domain.ts
  7. 7 7
      src/extensions/pdbe/structure-quality-report/behavior.ts
  8. 2 2
      src/extensions/pdbe/structure-quality-report/color.ts
  9. 16 16
      src/extensions/pdbe/structure-quality-report/prop.ts
  10. 4 0
      src/extensions/rcsb/README.md
  11. 12 12
      src/extensions/rcsb/assembly-symmetry/behavior.ts
  12. 2 2
      src/extensions/rcsb/assembly-symmetry/color.ts
  13. 15 15
      src/extensions/rcsb/assembly-symmetry/prop.ts
  14. 1 1
      src/extensions/rcsb/assembly-symmetry/representation.ts
  15. 11 11
      src/extensions/rcsb/assembly-symmetry/ui.tsx
  16. 2 2
      src/extensions/rcsb/graphql/codegen.yml
  17. 0 0
      src/extensions/rcsb/graphql/symmetry.gql.ts
  18. 1 1
      src/extensions/rcsb/graphql/types.ts
  19. 8 0
      src/extensions/rcsb/index.ts
  20. 17 17
      src/extensions/rcsb/validation-report/behavior.ts
  21. 8 8
      src/extensions/rcsb/validation-report/color/density-fit.ts
  22. 11 11
      src/extensions/rcsb/validation-report/color/geometry-quality.ts
  23. 8 8
      src/extensions/rcsb/validation-report/color/random-coil-index.ts
  24. 18 18
      src/extensions/rcsb/validation-report/prop.ts
  25. 2 2
      src/extensions/rcsb/validation-report/representation.ts
  26. 1 0
      src/mol-model-formats/structure/cif-core.ts
  27. 0 0
      src/mol-model-props/index.ts
  28. 1 5
      src/mol-plugin/behavior/dynamic/custom-props.ts
  29. 0 4
      src/mol-plugin/index.ts
  30. 1 1
      src/perf-tests/mol-script.ts
  31. 3 3
      src/servers/model/properties/providers/pdbe.ts

+ 2 - 2
README.md

@@ -97,7 +97,7 @@ and navigate to `build/viewer`
 
 **GraphQL schemas**
 
-    ./node_modules/.bin/graphql-codegen -c ./data/rcsb-graphql/codegen.yml
+    ./node_modules/.bin/graphql-codegen -c ./src/extensions/rcsb/graphql/codegen.yml
 
 ### Other scripts
 **Create chem comp bond table**
@@ -115,7 +115,7 @@ and navigate to `build/viewer`
 **Convert any CIF to BinaryCIF**
 
     node lib/servers/model/preprocess -i file.cif -ob file.bcif
-    
+
 To see all available commands, use ``node lib/servers/model/preprocess -h``.
 
 Or

+ 6 - 1
src/apps/viewer/index.ts

@@ -15,6 +15,8 @@ import { PluginSpec } from '../../mol-plugin/spec';
 import { DownloadStructure } from '../../mol-plugin-state/actions/structure';
 import { PluginConfig } from '../../mol-plugin/config';
 import { CellPack } from '../../extensions/cellpack';
+import { RCSBAssemblySymmetry, RCSBValidationReport } from '../../extensions/rcsb';
+import { PDBeStructureQualityReport } from '../../extensions/pdbe';
 require('mol-plugin-ui/skin/light.scss');
 
 function getParam(name: string, regex: string): string {
@@ -29,7 +31,10 @@ function init() {
         actions: [...DefaultPluginSpec.actions],
         behaviors: [
             ...DefaultPluginSpec.behaviors,
-            PluginSpec.Behavior(CellPack)
+            PluginSpec.Behavior(CellPack),
+            PluginSpec.Behavior(PDBeStructureQualityReport),
+            PluginSpec.Behavior(RCSBAssemblySymmetry),
+            PluginSpec.Behavior(RCSBValidationReport),
         ],
         animations: [...DefaultPluginSpec.animations || []],
         customParamEditors: DefaultPluginSpec.customParamEditors,

+ 1 - 1
src/examples/basic-wrapper/index.ts

@@ -10,7 +10,6 @@ import { createPlugin, DefaultPluginSpec } from '../../mol-plugin';
 import { AnimateModelIndex } from '../../mol-plugin-state/animation/built-in';
 import { BuiltInTrajectoryFormat } from '../../mol-plugin-state/formats/trajectory';
 import { PluginStateObject } from '../../mol-plugin-state/objects';
-import { PDBeStructureQualityReport } from '../../mol-plugin/behavior/dynamic/custom-props';
 import { PluginCommands } from '../../mol-plugin/commands';
 import { PluginContext } from '../../mol-plugin/context';
 import { Script } from '../../mol-script/script';
@@ -19,6 +18,7 @@ import { StripedResidues } from './coloring';
 import { CustomToastMessage } from './controls';
 import './index.html';
 import { buildStaticSuperposition, dynamicSuperpositionTest, StaticSuperpositionTestData } from './superposition';
+import { PDBeStructureQualityReport } from '../../extensions/pdbe';
 require('mol-plugin-ui/skin/light.scss');
 
 type LoadParams = { url: string, format?: BuiltInTrajectoryFormat, isBinary?: boolean, assemblyId?: string }

+ 9 - 0
src/extensions/pdbe/index.ts

@@ -0,0 +1,9 @@
+/**
+ * Copyright (c) 2020 mol* contributors, licensed under MIT, See LICENSE file for more info.
+ *
+ * @author Alexander Rose <alexander.rose@weirdbyte.de>
+ */
+
+export { PDBeStructureQualityReport } from './structure-quality-report/behavior';
+export { PDBePreferredAssembly } from './preferred-assembly';
+export { PDBeStructRefDomain } from './struct-ref-domain';

+ 0 - 0
src/mol-model-props/pdbe/preferred-assembly.ts → src/extensions/pdbe/preferred-assembly.ts


+ 1 - 1
src/mol-model-props/pdbe/struct-ref-domain.ts → src/extensions/pdbe/struct-ref-domain.ts

@@ -8,7 +8,7 @@ import { Column, Table } from '../../mol-data/db';
 import { toTable } from '../../mol-io/reader/cif/schema';
 import { CifWriter } from '../../mol-io/writer/cif';
 import { Model, CustomPropertyDescriptor } from '../../mol-model/structure';
-import { PropertyWrapper } from '../common/wrapper';
+import { PropertyWrapper } from '../../mol-model-props/common/wrapper';
 import { MmcifFormat } from '../../mol-model-formats/structure/mmcif';
 
 export namespace PDBeStructRefDomain {

+ 7 - 7
src/mol-plugin/behavior/dynamic/custom-props/pdbe/structure-quality-report.ts → src/extensions/pdbe/structure-quality-report/behavior.ts

@@ -4,13 +4,13 @@
  * @author David Sehnal <david.sehnal@gmail.com>
  */
 
-import { OrderedSet } from '../../../../../mol-data/int';
-import { StructureQualityReport, StructureQualityReportProvider } from '../../../../../mol-model-props/pdbe/structure-quality-report';
-import { StructureQualityReportColorThemeProvider } from '../../../../../mol-model-props/pdbe/themes/structure-quality-report';
-import { Loci } from '../../../../../mol-model/loci';
-import { StructureElement } from '../../../../../mol-model/structure';
-import { ParamDefinition as PD } from '../../../../../mol-util/param-definition';
-import { PluginBehavior } from '../../../behavior';
+import { OrderedSet } from '../../../mol-data/int';
+import { StructureQualityReport, StructureQualityReportProvider } from './prop';
+import { StructureQualityReportColorThemeProvider } from './color';
+import { Loci } from '../../../mol-model/loci';
+import { StructureElement } from '../../../mol-model/structure';
+import { ParamDefinition as PD } from '../../../mol-util/param-definition';
+import { PluginBehavior } from '../../../mol-plugin/behavior/behavior';
 
 export const PDBeStructureQualityReport = PluginBehavior.create<{ autoAttach: boolean, showTooltip: boolean }>({
     name: 'pdbe-structure-quality-report-prop',

+ 2 - 2
src/mol-model-props/pdbe/themes/structure-quality-report.ts → src/extensions/pdbe/structure-quality-report/color.ts

@@ -4,7 +4,7 @@
  * @author David Sehnal <david.sehnal@gmail.com>
  */
 
-import { StructureQualityReport, StructureQualityReportProvider } from '../../../mol-model-props/pdbe/structure-quality-report';
+import { StructureQualityReport, StructureQualityReportProvider } from './prop';
 import { Location } from '../../../mol-model/location';
 import { StructureElement } from '../../../mol-model/structure';
 import { ColorTheme, LocationColor } from '../../../mol-theme/color';
@@ -12,7 +12,7 @@ import { ThemeDataContext } from '../../../mol-theme/theme';
 import { Color } from '../../../mol-util/color';
 import { TableLegend } from '../../../mol-util/legend';
 import { ParamDefinition as PD } from '../../../mol-util/param-definition';
-import { CustomProperty } from '../../common/custom-property';
+import { CustomProperty } from '../../../mol-model-props/common/custom-property';
 
 const ValidationColors = [
     Color.fromRgb(170, 170, 170), // not applicable

+ 16 - 16
src/mol-model-props/pdbe/structure-quality-report.ts → src/extensions/pdbe/structure-quality-report/prop.ts

@@ -5,22 +5,22 @@
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
  */
 
-import { Column, Table } from '../../mol-data/db';
-import { toTable } from '../../mol-io/reader/cif/schema';
-import { mmCIF_residueId_schema } from '../../mol-io/reader/cif/schema/mmcif-extras';
-import { CifWriter } from '../../mol-io/writer/cif';
-import { Model, CustomPropertyDescriptor, ResidueIndex, Unit, IndexedCustomProperty } from '../../mol-model/structure';
-import { residueIdFields } from '../../mol-model/structure/export/categories/atom_site';
-import { StructureElement, CifExportContext, Structure } from '../../mol-model/structure/structure';
-import { CustomPropSymbol } from '../../mol-script/language/symbol';
-import Type from '../../mol-script/language/type';
-import { QuerySymbolRuntime } from '../../mol-script/runtime/query/compiler';
-import { PropertyWrapper } from '../common/wrapper';
-import { CustomModelProperty } from '../common/custom-model-property';
-import { ParamDefinition as PD } from '../../mol-util/param-definition';
-import { CustomProperty } from '../common/custom-property';
-import { arraySetAdd } from '../../mol-util/array';
-import { MmcifFormat } from '../../mol-model-formats/structure/mmcif';
+import { Column, Table } from '../../../mol-data/db';
+import { toTable } from '../../../mol-io/reader/cif/schema';
+import { mmCIF_residueId_schema } from '../../../mol-io/reader/cif/schema/mmcif-extras';
+import { CifWriter } from '../../../mol-io/writer/cif';
+import { Model, CustomPropertyDescriptor, ResidueIndex, Unit, IndexedCustomProperty } from '../../../mol-model/structure';
+import { residueIdFields } from '../../../mol-model/structure/export/categories/atom_site';
+import { StructureElement, CifExportContext, Structure } from '../../../mol-model/structure/structure';
+import { CustomPropSymbol } from '../../../mol-script/language/symbol';
+import Type from '../../../mol-script/language/type';
+import { QuerySymbolRuntime } from '../../../mol-script/runtime/query/compiler';
+import { ParamDefinition as PD } from '../../../mol-util/param-definition';
+import { arraySetAdd } from '../../../mol-util/array';
+import { MmcifFormat } from '../../../mol-model-formats/structure/mmcif';
+import { PropertyWrapper } from '../../../mol-model-props/common/wrapper';
+import { CustomProperty } from '../../../mol-model-props/common/custom-property';
+import { CustomModelProperty } from '../../../mol-model-props/common/custom-model-property';
 
 export { StructureQualityReport };
 

+ 4 - 0
src/extensions/rcsb/README.md

@@ -0,0 +1,4 @@
+### Code generation
+**GraphQL schemas**
+
+    ./node_modules/.bin/graphql-codegen -c ./src/extensions/rcsb/graphql/codegen.yml

+ 12 - 12
src/mol-plugin/behavior/dynamic/custom-props/rcsb/assembly-symmetry.ts → src/extensions/rcsb/assembly-symmetry/behavior.ts

@@ -4,18 +4,18 @@
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
  */
 
-import { ParamDefinition as PD } from '../../../../../mol-util/param-definition';
-import { AssemblySymmetryProvider, AssemblySymmetry, AssemblySymmetryDataProvider } from '../../../../../mol-model-props/rcsb/assembly-symmetry';
-import { PluginBehavior } from '../../../behavior';
-import { AssemblySymmetryParams, AssemblySymmetryRepresentation } from '../../../../../mol-model-props/rcsb/representations/assembly-symmetry';
-import { AssemblySymmetryClusterColorThemeProvider } from '../../../../../mol-model-props/rcsb/themes/assembly-symmetry-cluster';
-import { PluginStateTransform, PluginStateObject } from '../../../../../mol-plugin-state/objects';
-import { Task } from '../../../../../mol-task';
-import { PluginContext } from '../../../../context';
-import { StateTransformer, StateAction, StateObject, StateTransform, StateObjectRef } from '../../../../../mol-state';
-import { GenericRepresentationRef } from '../../../../../mol-plugin-state/manager/structure/hierarchy-state';
-import { AssemblySymmetryControls } from './ui/assembly-symmetry';
-import { StructureRepresentationPresetProvider, PresetStructureRepresentations } from '../../../../../mol-plugin-state/builder/structure/representation-preset';
+import { ParamDefinition as PD } from '../../../mol-util/param-definition';
+import { AssemblySymmetryProvider, AssemblySymmetry, AssemblySymmetryDataProvider } from './prop';
+import { PluginBehavior } from '../../../mol-plugin/behavior/behavior';
+import { AssemblySymmetryParams, AssemblySymmetryRepresentation } from './representation';
+import { AssemblySymmetryClusterColorThemeProvider } from './color';
+import { PluginStateTransform, PluginStateObject } from '../../../mol-plugin-state/objects';
+import { Task } from '../../../mol-task';
+import { PluginContext } from '../../../mol-plugin/context';
+import { StateTransformer, StateAction, StateObject, StateTransform, StateObjectRef } from '../../../mol-state';
+import { GenericRepresentationRef } from '../../../mol-plugin-state/manager/structure/hierarchy-state';
+import { AssemblySymmetryControls } from './ui';
+import { StructureRepresentationPresetProvider, PresetStructureRepresentations } from '../../../mol-plugin-state/builder/structure/representation-preset';
 
 const Tag = AssemblySymmetry.Tag;
 

+ 2 - 2
src/mol-model-props/rcsb/themes/assembly-symmetry-cluster.ts → src/extensions/rcsb/assembly-symmetry/color.ts

@@ -7,13 +7,13 @@
 import { ThemeDataContext } from '../../../mol-theme/theme';
 import { ColorTheme, LocationColor } from '../../../mol-theme/color';
 import { ParamDefinition as PD } from '../../../mol-util/param-definition';
-import { AssemblySymmetryProvider, AssemblySymmetry } from '../assembly-symmetry';
+import { AssemblySymmetryProvider, AssemblySymmetry } from './prop';
 import { Color } from '../../../mol-util/color';
 import { Unit, StructureElement, StructureProperties } from '../../../mol-model/structure';
 import { Location } from '../../../mol-model/location';
 import { ScaleLegend, TableLegend } from '../../../mol-util/legend';
 import { getPalette, getPaletteParams } from '../../../mol-util/color/palette';
-import { CustomProperty } from '../../common/custom-property';
+import { CustomProperty } from '../../../mol-model-props/common/custom-property';
 
 const DefaultColor = Color(0xCCCCCC);
 

+ 15 - 15
src/mol-model-props/rcsb/assembly-symmetry.ts → src/extensions/rcsb/assembly-symmetry/prop.ts

@@ -4,21 +4,21 @@
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
  */
 
-import { AssemblySymmetryQuery, AssemblySymmetryQueryVariables } from './graphql/types';
-import query from './graphql/symmetry.gql';
-
-import { ParamDefinition as PD } from '../../mol-util/param-definition';
-import { CustomPropertyDescriptor, Structure, Model, StructureSelection, QueryContext } from '../../mol-model/structure';
-import { Database as _Database, Column } from '../../mol-data/db';
-import { GraphQLClient } from '../../mol-util/graphql-client';
-import { CustomProperty } from '../common/custom-property';
-import { NonNullableArray } from '../../mol-util/type-helpers';
-import { CustomStructureProperty } from '../common/custom-structure-property';
-import { MmcifFormat } from '../../mol-model-formats/structure/mmcif';
-import { ReadonlyVec3 } from '../../mol-math/linear-algebra/3d/vec3';
-import { SetUtils } from '../../mol-util/set';
-import { MolScriptBuilder as MS } from '../../mol-script/language/builder';
-import { compile } from '../../mol-script/runtime/query/compiler';
+import { AssemblySymmetryQuery, AssemblySymmetryQueryVariables } from '../graphql/types';
+import query from '../graphql/symmetry.gql';
+
+import { ParamDefinition as PD } from '../../../mol-util/param-definition';
+import { CustomPropertyDescriptor, Structure, Model, StructureSelection, QueryContext } from '../../../mol-model/structure';
+import { Database as _Database, Column } from '../../../mol-data/db';
+import { GraphQLClient } from '../../../mol-util/graphql-client';
+import { CustomProperty } from '../../../mol-model-props/common/custom-property';
+import { NonNullableArray } from '../../../mol-util/type-helpers';
+import { CustomStructureProperty } from '../../../mol-model-props/common/custom-structure-property';
+import { MmcifFormat } from '../../../mol-model-formats/structure/mmcif';
+import { ReadonlyVec3 } from '../../../mol-math/linear-algebra/3d/vec3';
+import { SetUtils } from '../../../mol-util/set';
+import { MolScriptBuilder as MS } from '../../../mol-script/language/builder';
+import { compile } from '../../../mol-script/runtime/query/compiler';
 
 const BiologicalAssemblyNames = new Set([
     'author_and_software_defined_assembly',

+ 1 - 1
src/mol-model-props/rcsb/representations/assembly-symmetry.ts → src/extensions/rcsb/assembly-symmetry/representation.ts

@@ -5,7 +5,7 @@
  */
 
 import { ParamDefinition as PD } from '../../../mol-util/param-definition';
-import { AssemblySymmetryValue, AssemblySymmetryProvider, AssemblySymmetry } from '../assembly-symmetry';
+import { AssemblySymmetryValue, AssemblySymmetryProvider, AssemblySymmetry } from './prop';
 import { MeshBuilder } from '../../../mol-geo/geometry/mesh/mesh-builder';
 import { Vec3, Mat4, Mat3 } from '../../../mol-math/linear-algebra';
 import { addCylinder } from '../../../mol-geo/geometry/mesh/builder/cylinder';

+ 11 - 11
src/mol-plugin/behavior/dynamic/custom-props/rcsb/ui/assembly-symmetry.tsx → src/extensions/rcsb/assembly-symmetry/ui.tsx

@@ -5,17 +5,17 @@
  */
 
 import * as React from 'react';
-import { CollapsableState, CollapsableControls } from '../../../../../../mol-plugin-ui/base';
-import { ApplyActionControl } from '../../../../../../mol-plugin-ui/state/apply-action';
-import { InitAssemblySymmetry3D, AssemblySymmetry3D, AssemblySymmetryPreset, tryCreateAssemblySymmetry } from '../assembly-symmetry';
-import { AssemblySymmetryProvider,  AssemblySymmetryProps, AssemblySymmetryDataProvider, AssemblySymmetry } from '../../../../../../mol-model-props/rcsb/assembly-symmetry';
-import { ParameterControls } from '../../../../../../mol-plugin-ui/controls/parameters';
-import { ParamDefinition as PD } from '../../../../../../mol-util/param-definition';
-import { StructureHierarchyManager } from '../../../../../../mol-plugin-state/manager/structure/hierarchy';
-import { StateAction, StateSelection } from '../../../../../../mol-state';
-import { PluginStateObject } from '../../../../../../mol-plugin-state/objects';
-import { PluginContext } from '../../../../../context';
-import { Task } from '../../../../../../mol-task';
+import { CollapsableState, CollapsableControls } from '../../../mol-plugin-ui/base';
+import { ApplyActionControl } from '../../../mol-plugin-ui/state/apply-action';
+import { InitAssemblySymmetry3D, AssemblySymmetry3D, AssemblySymmetryPreset, tryCreateAssemblySymmetry } from './behavior';
+import { AssemblySymmetryProvider,  AssemblySymmetryProps, AssemblySymmetryDataProvider, AssemblySymmetry } from './prop';
+import { ParameterControls } from '../../../mol-plugin-ui/controls/parameters';
+import { ParamDefinition as PD } from '../../../mol-util/param-definition';
+import { StructureHierarchyManager } from '../../../mol-plugin-state/manager/structure/hierarchy';
+import { StateAction, StateSelection } from '../../../mol-state';
+import { PluginStateObject } from '../../../mol-plugin-state/objects';
+import { PluginContext } from '../../../mol-plugin/context';
+import { Task } from '../../../mol-task';
 import { Check } from '@material-ui/icons';
 
 interface AssemblySymmetryControlState extends CollapsableState {

+ 2 - 2
data/rcsb-graphql/codegen.yml → src/extensions/rcsb/graphql/codegen.yml

@@ -1,7 +1,7 @@
 schema: https://data.rcsb.org/graphql
-documents: './src/mol-model-props/rcsb/graphql/symmetry.gql.ts'
+documents: './src/extensions/rcsb/graphql/symmetry.gql.ts'
 generates:
-  './src/mol-model-props/rcsb/graphql/types.ts':
+  './src/extensions/rcsb/graphql/types.ts':
     plugins:
       - add: '/* eslint-disable */'
       - time

+ 0 - 0
src/mol-model-props/rcsb/graphql/symmetry.gql.ts → src/extensions/rcsb/graphql/symmetry.gql.ts


+ 1 - 1
src/mol-model-props/rcsb/graphql/types.ts → src/extensions/rcsb/graphql/types.ts

@@ -1,7 +1,7 @@
 /* eslint-disable */
 export type Maybe<T> = T | null;
 
-// Generated in 2020-04-08T16:22:40-07:00
+// Generated in 2020-04-14T16:35:00-07:00
 
 /** All built-in and custom scalars, mapped to their actual values */
 export type Scalars = {

+ 8 - 0
src/extensions/rcsb/index.ts

@@ -0,0 +1,8 @@
+/**
+ * Copyright (c) 2020 mol* contributors, licensed under MIT, See LICENSE file for more info.
+ *
+ * @author Alexander Rose <alexander.rose@weirdbyte.de>
+ */
+
+export { RCSBAssemblySymmetry } from './assembly-symmetry/behavior';
+export { RCSBValidationReport } from './validation-report/behavior';

+ 17 - 17
src/mol-plugin/behavior/dynamic/custom-props/rcsb/validation-report.ts → src/extensions/rcsb/validation-report/behavior.ts

@@ -4,23 +4,23 @@
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
  */
 
-import { ParamDefinition as PD } from '../../../../../mol-util/param-definition';
-import { PluginBehavior } from '../../../behavior';
-import { ValidationReport, ValidationReportProvider } from '../../../../../mol-model-props/rcsb/validation-report';
-import { RandomCoilIndexColorThemeProvider } from '../../../../../mol-model-props/rcsb/themes/random-coil-index';
-import { GeometryQualityColorThemeProvider } from '../../../../../mol-model-props/rcsb/themes/geometry-quality';
-import { Loci } from '../../../../../mol-model/loci';
-import { OrderedSet } from '../../../../../mol-data/int';
-import { ClashesRepresentationProvider } from '../../../../../mol-model-props/rcsb/representations/validation-report-clashes';
-import { DensityFitColorThemeProvider } from '../../../../../mol-model-props/rcsb/themes/density-fit';
-import { cantorPairing } from '../../../../../mol-data/util';
-import { DefaultQueryRuntimeTable } from '../../../../../mol-script/runtime/query/compiler';
-import { StructureSelectionQuery, StructureSelectionCategory } from '../../../../../mol-plugin-state/helpers/structure-selection-query';
-import { MolScriptBuilder as MS } from '../../../../../mol-script/language/builder';
-import { Task } from '../../../../../mol-task';
-import { StructureRepresentationPresetProvider, PresetStructureRepresentations } from '../../../../../mol-plugin-state/builder/structure/representation-preset';
-import { StateObjectRef } from '../../../../../mol-state';
-import { Model } from '../../../../../mol-model/structure';
+import { ParamDefinition as PD } from '../../../mol-util/param-definition';
+import { PluginBehavior } from '../../../mol-plugin/behavior/behavior';
+import { ValidationReport, ValidationReportProvider } from './prop';
+import { RandomCoilIndexColorThemeProvider } from './color/random-coil-index';
+import { GeometryQualityColorThemeProvider } from './color/geometry-quality';
+import { Loci } from '../../../mol-model/loci';
+import { OrderedSet } from '../../../mol-data/int';
+import { ClashesRepresentationProvider } from './representation';
+import { DensityFitColorThemeProvider } from './color/density-fit';
+import { cantorPairing } from '../../../mol-data/util';
+import { DefaultQueryRuntimeTable } from '../../../mol-script/runtime/query/compiler';
+import { StructureSelectionQuery, StructureSelectionCategory } from '../../../mol-plugin-state/helpers/structure-selection-query';
+import { MolScriptBuilder as MS } from '../../../mol-script/language/builder';
+import { Task } from '../../../mol-task';
+import { StructureRepresentationPresetProvider, PresetStructureRepresentations } from '../../../mol-plugin-state/builder/structure/representation-preset';
+import { StateObjectRef } from '../../../mol-state';
+import { Model } from '../../../mol-model/structure';
 
 export const RCSBValidationReport = PluginBehavior.create<{ autoAttach: boolean, showTooltip: boolean }>({
     name: 'rcsb-validation-report-prop',

+ 8 - 8
src/mol-model-props/rcsb/themes/density-fit.ts → src/extensions/rcsb/validation-report/color/density-fit.ts

@@ -4,14 +4,14 @@
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
  */
 
-import { ThemeDataContext } from '../../../mol-theme/theme';
-import { ColorTheme, LocationColor } from '../../../mol-theme/color';
-import { ParamDefinition as PD } from '../../../mol-util/param-definition';
-import { Color, ColorScale } from '../../../mol-util/color';
-import { StructureElement, Model } from '../../../mol-model/structure';
-import { Location } from '../../../mol-model/location';
-import { CustomProperty } from '../../common/custom-property';
-import { ValidationReportProvider, ValidationReport } from '../validation-report';
+import { ThemeDataContext } from '../../../../mol-theme/theme';
+import { ColorTheme, LocationColor } from '../../../../mol-theme/color';
+import { ParamDefinition as PD } from '../../../../mol-util/param-definition';
+import { Color, ColorScale } from '../../../../mol-util/color';
+import { StructureElement, Model } from '../../../../mol-model/structure';
+import { Location } from '../../../../mol-model/location';
+import { CustomProperty } from '../../../../mol-model-props/common/custom-property';
+import { ValidationReportProvider, ValidationReport } from '../prop';
 
 const DefaultColor = Color(0xCCCCCC);
 

+ 11 - 11
src/mol-model-props/rcsb/themes/geometry-quality.ts → src/extensions/rcsb/validation-report/color/geometry-quality.ts

@@ -4,17 +4,17 @@
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
  */
 
-import { ThemeDataContext } from '../../../mol-theme/theme';
-import { ColorTheme, LocationColor } from '../../../mol-theme/color';
-import { ParamDefinition as PD } from '../../../mol-util/param-definition';
-import { Color } from '../../../mol-util/color';
-import { StructureElement } from '../../../mol-model/structure';
-import { Location } from '../../../mol-model/location';
-import { CustomProperty } from '../../common/custom-property';
-import { ValidationReportProvider, ValidationReport } from '../validation-report';
-import { TableLegend } from '../../../mol-util/legend';
-import { PolymerType } from '../../../mol-model/structure/model/types';
-import { SetUtils } from '../../../mol-util/set';
+import { ThemeDataContext } from '../../../../mol-theme/theme';
+import { ColorTheme, LocationColor } from '../../../../mol-theme/color';
+import { ParamDefinition as PD } from '../../../../mol-util/param-definition';
+import { Color } from '../../../../mol-util/color';
+import { StructureElement } from '../../../../mol-model/structure';
+import { Location } from '../../../../mol-model/location';
+import { CustomProperty } from '../../../../mol-model-props/common/custom-property';
+import { ValidationReportProvider, ValidationReport } from '../prop';
+import { TableLegend } from '../../../../mol-util/legend';
+import { PolymerType } from '../../../../mol-model/structure/model/types';
+import { SetUtils } from '../../../../mol-util/set';
 
 const DefaultColor = Color(0x909090);
 

+ 8 - 8
src/mol-model-props/rcsb/themes/random-coil-index.ts → src/extensions/rcsb/validation-report/color/random-coil-index.ts

@@ -4,14 +4,14 @@
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
  */
 
-import { ThemeDataContext } from '../../../mol-theme/theme';
-import { ColorTheme, LocationColor } from '../../../mol-theme/color';
-import { ParamDefinition as PD } from '../../../mol-util/param-definition';
-import { Color, ColorScale } from '../../../mol-util/color';
-import { StructureElement, Model } from '../../../mol-model/structure';
-import { Location } from '../../../mol-model/location';
-import { CustomProperty } from '../../common/custom-property';
-import { ValidationReportProvider, ValidationReport } from '../validation-report';
+import { ThemeDataContext } from '../../../../mol-theme/theme';
+import { ColorTheme, LocationColor } from '../../../../mol-theme/color';
+import { ParamDefinition as PD } from '../../../../mol-util/param-definition';
+import { Color, ColorScale } from '../../../../mol-util/color';
+import { StructureElement, Model } from '../../../../mol-model/structure';
+import { Location } from '../../../../mol-model/location';
+import { CustomProperty } from '../../../../mol-model-props/common/custom-property';
+import { ValidationReportProvider, ValidationReport } from '../prop';
 
 const DefaultColor = Color(0xCCCCCC);
 

+ 18 - 18
src/mol-model-props/rcsb/validation-report.ts → src/extensions/rcsb/validation-report/prop.ts

@@ -4,24 +4,24 @@
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
  */
 
-import { ParamDefinition as PD } from '../../mol-util/param-definition';
-import { CustomPropertyDescriptor, Structure, Unit } from '../../mol-model/structure';
-import { CustomProperty } from '../common/custom-property';
-import { CustomModelProperty } from '../common/custom-model-property';
-import { Model, ElementIndex, ResidueIndex } from '../../mol-model/structure/model';
-import { IntAdjacencyGraph } from '../../mol-math/graph';
-import { readFromFile } from '../../mol-util/data-source';
-import { CustomStructureProperty } from '../common/custom-structure-property';
-import { InterUnitGraph } from '../../mol-math/graph/inter-unit-graph';
-import { UnitIndex } from '../../mol-model/structure/structure/element/element';
-import { IntMap, SortedArray } from '../../mol-data/int';
-import { arrayMax } from '../../mol-util/array';
-import { equalEps } from '../../mol-math/linear-algebra/3d/common';
-import { Vec3 } from '../../mol-math/linear-algebra';
-import { MmcifFormat } from '../../mol-model-formats/structure/mmcif';
-import { QuerySymbolRuntime } from '../../mol-script/runtime/query/compiler';
-import { CustomPropSymbol } from '../../mol-script/language/symbol';
-import Type from '../../mol-script/language/type';
+import { ParamDefinition as PD } from '../../../mol-util/param-definition';
+import { CustomPropertyDescriptor, Structure, Unit } from '../../../mol-model/structure';
+import { CustomProperty } from '../../../mol-model-props/common/custom-property';
+import { CustomModelProperty } from '../../../mol-model-props/common/custom-model-property';
+import { Model, ElementIndex, ResidueIndex } from '../../../mol-model/structure/model';
+import { IntAdjacencyGraph } from '../../../mol-math/graph';
+import { readFromFile } from '../../../mol-util/data-source';
+import { CustomStructureProperty } from '../../../mol-model-props/common/custom-structure-property';
+import { InterUnitGraph } from '../../../mol-math/graph/inter-unit-graph';
+import { UnitIndex } from '../../../mol-model/structure/structure/element/element';
+import { IntMap, SortedArray } from '../../../mol-data/int';
+import { arrayMax } from '../../../mol-util/array';
+import { equalEps } from '../../../mol-math/linear-algebra/3d/common';
+import { Vec3 } from '../../../mol-math/linear-algebra';
+import { MmcifFormat } from '../../../mol-model-formats/structure/mmcif';
+import { QuerySymbolRuntime } from '../../../mol-script/runtime/query/compiler';
+import { CustomPropSymbol } from '../../../mol-script/language/symbol';
+import Type from '../../../mol-script/language/type';
 
 export { ValidationReport };
 

+ 2 - 2
src/mol-model-props/rcsb/representations/validation-report-clashes.ts → src/extensions/rcsb/validation-report/representation.ts

@@ -19,8 +19,8 @@ import { createLinkCylinderMesh, LinkCylinderParams, LinkCylinderStyle } from '.
 import { UnitsMeshParams, UnitsVisual, UnitsMeshVisual, StructureGroup } from '../../../mol-repr/structure/units-visual';
 import { VisualUpdateState } from '../../../mol-repr/util';
 import { LocationIterator } from '../../../mol-geo/util/location-iterator';
-import { ClashesProvider, IntraUnitClashes, InterUnitClashes, ValidationReport } from '../validation-report';
-import { CustomProperty } from '../../common/custom-property';
+import { ClashesProvider, IntraUnitClashes, InterUnitClashes, ValidationReport } from './prop';
+import { CustomProperty } from '../../../mol-model-props/common/custom-property';
 import { ComplexMeshParams, ComplexVisual, ComplexMeshVisual } from '../../../mol-repr/structure/complex-visual';
 import { Color } from '../../../mol-util/color';
 import { MarkerActions } from '../../../mol-util/marker-action';

+ 1 - 0
src/mol-model-formats/structure/cif-core.ts

@@ -124,6 +124,7 @@ async function getModels(db: CifCore_Database, format: CifCoreFormat, ctx: Runti
         pdbx_formal_charge: formalCharge,
 
         pdbx_PDB_model_num: Column.ofConst(1, atomCount, Column.Schema.int),
+        B_iso_or_equiv: db.atom_site.U_iso_or_equiv,
     }, atomCount);
 
     const name = (

+ 0 - 0
src/mol-model-props/index.ts


+ 1 - 5
src/mol-plugin/behavior/dynamic/custom-props.ts

@@ -10,8 +10,4 @@ export { Interactions } from './custom-props/computed/interactions';
 export { SecondaryStructure } from './custom-props/computed/secondary-structure';
 export { ValenceModel } from './custom-props/computed/valence-model';
 
-export { CrossLinkRestraint } from './custom-props/integrative/cross-link-restraint';
-
-export { PDBeStructureQualityReport } from './custom-props/pdbe/structure-quality-report';
-export { RCSBAssemblySymmetry } from './custom-props/rcsb/assembly-symmetry';
-export { RCSBValidationReport } from './custom-props/rcsb/validation-report';
+export { CrossLinkRestraint } from './custom-props/integrative/cross-link-restraint';

+ 0 - 4
src/mol-plugin/index.ts

@@ -74,10 +74,6 @@ export const DefaultPluginSpec: PluginSpec = {
         PluginSpec.Behavior(PluginBehaviors.CustomProps.SecondaryStructure),
         PluginSpec.Behavior(PluginBehaviors.CustomProps.ValenceModel),
         PluginSpec.Behavior(PluginBehaviors.CustomProps.CrossLinkRestraint),
-
-        PluginSpec.Behavior(PluginBehaviors.CustomProps.PDBeStructureQualityReport),
-        PluginSpec.Behavior(PluginBehaviors.CustomProps.RCSBAssemblySymmetry),
-        PluginSpec.Behavior(PluginBehaviors.CustomProps.RCSBValidationReport),
     ],
     customParamEditors: [
         [CreateVolumeStreamingBehavior, VolumeStreamingCustomControls]

+ 1 - 1
src/perf-tests/mol-script.ts

@@ -8,7 +8,7 @@ import { parseMolScript } from '../mol-script/language/parser';
 import * as util from 'util';
 import { transpileMolScript } from '../mol-script/script/mol-script/symbols';
 import { formatMolScript } from '../mol-script/language/expression-formatter';
-import { StructureQualityReport, StructureQualityReportProvider } from '../mol-model-props/pdbe/structure-quality-report';
+import { StructureQualityReport, StructureQualityReportProvider } from '../extensions/pdbe/structure-quality-report/prop';
 import fetch from 'node-fetch';
 
 // import Examples from 'mol-script/script/mol-script/examples'

+ 3 - 3
src/servers/model/properties/providers/pdbe.ts

@@ -7,11 +7,11 @@
 import * as fs from 'fs';
 import * as path from 'path';
 import { Model } from '../../../../mol-model/structure';
-import { StructureQualityReportProvider, StructureQualityReport } from '../../../../mol-model-props/pdbe/structure-quality-report';
+import { StructureQualityReportProvider, StructureQualityReport } from '../../../../extensions/pdbe/structure-quality-report/prop';
 import { fetchRetry } from '../../utils/fetch-retry';
 import { UUID } from '../../../../mol-util';
-import { PDBePreferredAssembly } from '../../../../mol-model-props/pdbe/preferred-assembly';
-import { PDBeStructRefDomain } from '../../../../mol-model-props/pdbe/struct-ref-domain';
+import { PDBePreferredAssembly } from '../../../../extensions/pdbe/preferred-assembly';
+import { PDBeStructRefDomain } from '../../../../extensions/pdbe/struct-ref-domain';
 import { AttachModelProperty } from '../../property-provider';
 import { ConsoleLogger } from '../../../../mol-util/console-logger';
 import { getParam } from '../../../common/util';