molstar 3.8.2 → 3.9.0
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/build/viewer/index.html +4 -1
- package/build/viewer/molstar.js +1 -1
- package/lib/apps/viewer/app.d.ts +1 -1
- package/lib/apps/viewer/app.js +1 -1
- package/lib/apps/viewer/index.html +4 -1
- package/lib/cli/cif2bcif/converter.js +1 -1
- package/lib/commonjs/apps/viewer/app.d.ts +1 -1
- package/lib/commonjs/apps/viewer/app.js +2 -1
- package/lib/commonjs/cli/cif2bcif/converter.js +1 -1
- package/lib/commonjs/examples/alpha-orbitals/index.d.ts +1 -1
- package/lib/commonjs/examples/alpha-orbitals/index.js +4 -1
- package/lib/commonjs/examples/basic-wrapper/custom-theme.js +1 -1
- package/lib/commonjs/examples/proteopedia-wrapper/coloring.js +3 -3
- package/lib/commonjs/extensions/alpha-orbitals/density.d.ts +1 -1
- package/lib/commonjs/extensions/alpha-orbitals/density.js +6 -2
- package/lib/commonjs/extensions/alpha-orbitals/orbitals.d.ts +1 -1
- package/lib/commonjs/extensions/alpha-orbitals/orbitals.js +6 -3
- package/lib/commonjs/extensions/anvil/algorithm.js +1 -1
- package/lib/commonjs/extensions/cellpack/color/generate.js +1 -1
- package/lib/commonjs/extensions/cellpack/color/provided.js +1 -1
- package/lib/commonjs/extensions/cellpack/state.js +1 -1
- package/lib/commonjs/extensions/dnatco/confal-pyramids/color.js +1 -1
- package/lib/commonjs/extensions/g3d/model.js +1 -1
- package/lib/commonjs/extensions/model-archive/quality-assessment/color/plddt.js +1 -1
- package/lib/commonjs/extensions/model-archive/quality-assessment/color/qmean.js +1 -1
- package/lib/commonjs/extensions/pdbe/structure-quality-report/color.js +1 -1
- package/lib/commonjs/extensions/rcsb/assembly-symmetry/color.js +4 -4
- package/lib/commonjs/extensions/rcsb/validation-report/color/density-fit.js +1 -1
- package/lib/commonjs/extensions/rcsb/validation-report/color/geometry-quality.js +2 -2
- package/lib/commonjs/extensions/rcsb/validation-report/color/random-coil-index.js +1 -1
- package/lib/commonjs/extensions/rcsb/validation-report/representation.js +2 -2
- package/lib/commonjs/mol-canvas3d/canvas3d.js +4 -0
- package/lib/commonjs/mol-canvas3d/controls/trackball.js +7 -7
- package/lib/commonjs/mol-canvas3d/helper/camera-helper.js +14 -14
- package/lib/commonjs/mol-canvas3d/helper/interaction-events.js +5 -5
- package/lib/commonjs/mol-canvas3d/passes/draw.js +34 -5
- package/lib/commonjs/mol-canvas3d/passes/fxaa.js +5 -0
- package/lib/commonjs/mol-canvas3d/passes/marking.js +5 -0
- package/lib/commonjs/mol-canvas3d/passes/multi-sample.js +9 -0
- package/lib/commonjs/mol-canvas3d/passes/pick.d.ts +18 -5
- package/lib/commonjs/mol-canvas3d/passes/pick.js +125 -24
- package/lib/commonjs/mol-canvas3d/passes/postprocessing.js +5 -0
- package/lib/commonjs/mol-canvas3d/passes/smaa.js +4 -0
- package/lib/commonjs/mol-canvas3d/passes/wboit.js +4 -0
- package/lib/commonjs/mol-data/db/column.js +5 -5
- package/lib/commonjs/mol-data/db/table.js +2 -2
- package/lib/commonjs/mol-data/util/array.d.ts +1 -1
- package/lib/commonjs/mol-geo/geometry/texture-mesh/color-smoothing.js +13 -0
- package/lib/commonjs/mol-gl/compute/grid3d.d.ts +2 -2
- package/lib/commonjs/mol-gl/compute/grid3d.js +30 -8
- package/lib/commonjs/mol-gl/compute/histogram-pyramid/reduction.d.ts +1 -1
- package/lib/commonjs/mol-gl/compute/histogram-pyramid/reduction.js +6 -1
- package/lib/commonjs/mol-gl/compute/histogram-pyramid/sum.d.ts +1 -1
- package/lib/commonjs/mol-gl/compute/histogram-pyramid/sum.js +6 -1
- package/lib/commonjs/mol-gl/compute/marching-cubes/active-voxels.d.ts +1 -1
- package/lib/commonjs/mol-gl/compute/marching-cubes/active-voxels.js +6 -1
- package/lib/commonjs/mol-gl/compute/marching-cubes/isosurface.d.ts +1 -1
- package/lib/commonjs/mol-gl/compute/marching-cubes/isosurface.js +10 -10
- package/lib/commonjs/mol-gl/renderer.js +77 -32
- package/lib/commonjs/mol-gl/scene.js +2 -0
- package/lib/commonjs/mol-gl/shader/chunks/assign-color-varying.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/assign-color-varying.glsl.js +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/assign-material-color.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/assign-material-color.glsl.js +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/color-frag-params.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/color-frag-params.glsl.js +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.js +1 -1
- package/lib/commonjs/mol-gl/shader/cylinders.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/cylinders.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/direct-volume.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/direct-volume.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/image.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/image.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/lines.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/lines.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/mesh.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/mesh.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/points.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/points.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/spheres.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/spheres.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/text.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/text.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader-code.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader-code.js +41 -9
- package/lib/commonjs/mol-gl/webgl/compat.d.ts +34 -1
- package/lib/commonjs/mol-gl/webgl/compat.js +50 -2
- package/lib/commonjs/mol-gl/webgl/context.d.ts +2 -0
- package/lib/commonjs/mol-gl/webgl/context.js +3 -0
- package/lib/commonjs/mol-gl/webgl/extensions.d.ts +3 -2
- package/lib/commonjs/mol-gl/webgl/extensions.js +6 -1
- package/lib/commonjs/mol-gl/webgl/timer.d.ts +22 -0
- package/lib/commonjs/mol-gl/webgl/timer.js +169 -0
- package/lib/commonjs/mol-io/common/binary-cif/array-encoder.js +18 -18
- package/lib/commonjs/mol-io/common/binary-cif/decoder.js +16 -16
- package/lib/commonjs/mol-io/common/binary-cif/encoding.js +9 -9
- package/lib/commonjs/mol-io/reader/cif/binary/field.js +3 -3
- package/lib/commonjs/mol-io/reader/cif/data-model.js +14 -14
- package/lib/commonjs/mol-io/reader/cif/schema.js +1 -1
- package/lib/commonjs/mol-io/reader/cif/text/parser.js +23 -23
- package/lib/commonjs/mol-io/reader/common/text/column/fixed.js +1 -1
- package/lib/commonjs/mol-io/reader/common/text/column/token.js +1 -1
- package/lib/commonjs/mol-io/reader/common/text/number-parser.js +6 -6
- package/lib/commonjs/mol-io/reader/csv/parser.js +8 -8
- package/lib/commonjs/mol-io/writer/cif/encoder/binary.js +10 -10
- package/lib/commonjs/mol-io/writer/cif/encoder/text.js +7 -7
- package/lib/commonjs/mol-io/writer/cif/encoder.js +8 -8
- package/lib/commonjs/mol-io/writer/mol2/encoder.js +4 -4
- package/lib/commonjs/mol-math/geometry/gaussian-density/gpu.js +13 -2
- package/lib/commonjs/mol-model/sequence/alignment/sequence.js +3 -3
- package/lib/commonjs/mol-model/sequence/sequence.js +9 -9
- package/lib/commonjs/mol-model/structure/export/categories/atom_site_operator_mapping.js +3 -3
- package/lib/commonjs/mol-model/structure/export/categories/secondary-structure.js +2 -2
- package/lib/commonjs/mol-model/structure/export/categories/utils.js +1 -1
- package/lib/commonjs/mol-model/structure/model/model.js +2 -2
- package/lib/commonjs/mol-model/structure/model/properties/custom/indexed.js +6 -6
- package/lib/commonjs/mol-model/structure/model/properties/utils/atomic-ranges.js +1 -1
- package/lib/commonjs/mol-model/structure/model/types.js +116 -116
- package/lib/commonjs/mol-model/structure/query/context.js +1 -1
- package/lib/commonjs/mol-model/structure/query/queries/generators.js +5 -5
- package/lib/commonjs/mol-model/structure/query/queries/internal.js +4 -4
- package/lib/commonjs/mol-model/structure/query/queries/modifiers.js +4 -4
- package/lib/commonjs/mol-model/structure/query/utils/structure-distance.d.ts +5 -54
- package/lib/commonjs/mol-model/structure/query/utils/structure-distance.js +9 -9
- package/lib/commonjs/mol-model/structure/structure/carbohydrates/constants.js +106 -106
- package/lib/commonjs/mol-model/structure/structure/element/loci.js +5 -5
- package/lib/commonjs/mol-model/structure/structure/element/stats.js +5 -5
- package/lib/commonjs/mol-model/structure/structure/properties.js +5 -5
- package/lib/commonjs/mol-model/structure/structure/structure.js +11 -11
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/inter-compute.js +5 -5
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/intra-compute.js +4 -4
- package/lib/commonjs/mol-model/structure/structure/unit/bonds.js +2 -2
- package/lib/commonjs/mol-model/structure/structure/unit/resonance.js +1 -1
- package/lib/commonjs/mol-model/structure/structure/unit/rings/compute.js +6 -6
- package/lib/commonjs/mol-model/structure/structure/unit/rings.js +6 -6
- package/lib/commonjs/mol-model/structure/structure/unit.js +16 -16
- package/lib/commonjs/mol-model/structure/structure/util/superposition-sifts-mapping.js +1 -1
- package/lib/commonjs/mol-model/structure/util.js +4 -4
- package/lib/commonjs/mol-model-formats/structure/basic/atomic.js +2 -2
- package/lib/commonjs/mol-model-formats/structure/basic/parser.js +4 -4
- package/lib/commonjs/mol-model-formats/structure/basic/properties.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/basic/sort.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/basic/util.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/cif-core.js +6 -6
- package/lib/commonjs/mol-model-formats/structure/common/entity.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/cube.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/gro.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/mol.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/mol2.js +4 -4
- package/lib/commonjs/mol-model-formats/structure/prmtop.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/property/bonds/chem_comp.js +3 -3
- package/lib/commonjs/mol-model-formats/structure/property/bonds/index-pair.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/property/bonds/struct_conn.js +6 -6
- package/lib/commonjs/mol-model-formats/structure/property/secondary-structure.js +8 -8
- package/lib/commonjs/mol-model-formats/structure/psf.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/top.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/xyz.js +1 -1
- package/lib/commonjs/mol-model-props/computed/accessible-surface-area/shrake-rupley/radii.js +2 -2
- package/lib/commonjs/mol-model-props/computed/accessible-surface-area/shrake-rupley.js +3 -3
- package/lib/commonjs/mol-model-props/computed/accessible-surface-area.js +2 -2
- package/lib/commonjs/mol-model-props/computed/chemistry/functional-group.js +31 -31
- package/lib/commonjs/mol-model-props/computed/chemistry/geometry.js +22 -22
- package/lib/commonjs/mol-model-props/computed/chemistry/valence-model.js +32 -32
- package/lib/commonjs/mol-model-props/computed/interactions/charged.js +39 -39
- package/lib/commonjs/mol-model-props/computed/interactions/common.js +34 -34
- package/lib/commonjs/mol-model-props/computed/interactions/contacts-builder.js +1 -1
- package/lib/commonjs/mol-model-props/computed/interactions/contacts.js +1 -1
- package/lib/commonjs/mol-model-props/computed/interactions/halogen-bonds.js +12 -12
- package/lib/commonjs/mol-model-props/computed/interactions/hydrogen-bonds.js +32 -32
- package/lib/commonjs/mol-model-props/computed/interactions/hydrophobic.js +9 -9
- package/lib/commonjs/mol-model-props/computed/interactions/metal.js +26 -26
- package/lib/commonjs/mol-model-props/computed/interactions/refine.js +20 -20
- package/lib/commonjs/mol-model-props/computed/representations/interactions-inter-unit-cylinder.js +2 -2
- package/lib/commonjs/mol-model-props/computed/representations/interactions-intra-unit-cylinder.js +2 -2
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/bends.js +1 -1
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/bridges.js +12 -12
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/helices.js +6 -6
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/ladders.js +3 -3
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/sheets.js +11 -11
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/turns.js +3 -3
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp.js +30 -30
- package/lib/commonjs/mol-model-props/computed/themes/accessible-surface-area.js +1 -1
- package/lib/commonjs/mol-model-props/computed/themes/interaction-type.js +10 -10
- package/lib/commonjs/mol-model-props/integrative/cross-link-restraint/color.js +1 -1
- package/lib/commonjs/mol-model-props/integrative/cross-link-restraint/format.js +3 -3
- package/lib/commonjs/mol-model-props/sequence/sifts-mapping.js +1 -1
- package/lib/commonjs/mol-model-props/sequence/themes/sifts-mapping.js +1 -1
- package/lib/commonjs/mol-plugin/animation-loop.d.ts +2 -1
- package/lib/commonjs/mol-plugin/animation-loop.js +18 -5
- package/lib/commonjs/mol-plugin/behavior/dynamic/camera.js +12 -12
- package/lib/commonjs/mol-plugin/behavior/dynamic/representation.js +7 -7
- package/lib/commonjs/mol-plugin/context.d.ts +2 -2
- package/lib/commonjs/mol-plugin/state.d.ts +1 -14
- package/lib/commonjs/mol-plugin-state/formats/volume.d.ts +12 -11
- package/lib/commonjs/mol-plugin-state/formats/volume.js +20 -13
- package/lib/commonjs/mol-plugin-state/helpers/structure-selection-query.js +5 -5
- package/lib/commonjs/mol-plugin-state/transforms/representation.js +2 -2
- package/lib/commonjs/mol-plugin-ui/controls/parameters.d.ts +1 -1
- package/lib/commonjs/mol-plugin-ui/sequence/polymer.js +1 -1
- package/lib/commonjs/mol-plugin-ui/sequence/sequence.js +1 -1
- package/lib/commonjs/mol-plugin-ui/structure/focus.js +1 -1
- package/lib/commonjs/mol-plugin-ui/viewport.d.ts +2 -2
- package/lib/commonjs/mol-repr/structure/visual/bond-inter-unit-cylinder.js +10 -10
- package/lib/commonjs/mol-repr/structure/visual/bond-inter-unit-line.js +10 -10
- package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-cylinder.js +12 -12
- package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-line.js +12 -12
- package/lib/commonjs/mol-repr/structure/visual/carbohydrate-symbol-mesh.js +16 -16
- package/lib/commonjs/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.js +1 -1
- package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-mesh.js +9 -0
- package/lib/commonjs/mol-repr/structure/visual/orientation-ellipsoid-mesh.js +4 -4
- package/lib/commonjs/mol-repr/structure/visual/polymer-direction-wedge.js +1 -1
- package/lib/commonjs/mol-repr/structure/visual/polymer-trace-mesh.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/util/bond.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/util/common.js +3 -3
- package/lib/commonjs/mol-repr/structure/visual/util/link.js +30 -30
- package/lib/commonjs/mol-repr/structure/visual/util/polymer/backbone.js +6 -6
- package/lib/commonjs/mol-repr/structure/visual/util/polymer/gap-iterator.js +3 -3
- package/lib/commonjs/mol-repr/structure/visual/util/polymer/trace-iterator.js +20 -20
- package/lib/commonjs/mol-repr/structure/visual/util/polymer.js +6 -6
- package/lib/commonjs/mol-script/language/symbol-table/core.d.ts +2 -2
- package/lib/commonjs/mol-script/runtime/query/table.js +13 -13
- package/lib/commonjs/mol-state/object.d.ts +3 -3
- package/lib/commonjs/mol-task/util/user-timing.js +1 -1
- package/lib/commonjs/mol-theme/clipping.js +19 -19
- package/lib/commonjs/mol-theme/color/atom-id.js +1 -1
- package/lib/commonjs/mol-theme/color/carbohydrate-symbol.js +1 -1
- package/lib/commonjs/mol-theme/color/chain-id.js +4 -4
- package/lib/commonjs/mol-theme/color/element-index.js +1 -1
- package/lib/commonjs/mol-theme/color/element-symbol.js +1 -1
- package/lib/commonjs/mol-theme/color/entity-id.js +4 -4
- package/lib/commonjs/mol-theme/color/entity-source.js +5 -4
- package/lib/commonjs/mol-theme/color/hydrophobicity.js +1 -1
- package/lib/commonjs/mol-theme/color/illustrative.js +1 -1
- package/lib/commonjs/mol-theme/color/model-index.js +1 -1
- package/lib/commonjs/mol-theme/color/molecule-type.js +8 -8
- package/lib/commonjs/mol-theme/color/occupancy.js +1 -1
- package/lib/commonjs/mol-theme/color/operator-hkl.js +1 -1
- package/lib/commonjs/mol-theme/color/operator-name.js +1 -1
- package/lib/commonjs/mol-theme/color/partial-charge.js +1 -1
- package/lib/commonjs/mol-theme/color/polymer-id.js +4 -4
- package/lib/commonjs/mol-theme/color/polymer-index.js +1 -1
- package/lib/commonjs/mol-theme/color/residue-name.js +1 -1
- package/lib/commonjs/mol-theme/color/secondary-structure.js +12 -12
- package/lib/commonjs/mol-theme/color/sequence-id.js +7 -7
- package/lib/commonjs/mol-theme/color/shape-group.js +1 -1
- package/lib/commonjs/mol-theme/color/uncertainty.js +1 -1
- package/lib/commonjs/mol-theme/color/uniform.js +1 -1
- package/lib/commonjs/mol-theme/color/unit-index.js +1 -1
- package/lib/commonjs/mol-theme/color/volume-value.js +1 -1
- package/lib/commonjs/mol-theme/label.js +3 -3
- package/lib/commonjs/mol-util/binding.js +4 -4
- package/lib/commonjs/mol-util/debug.d.ts +6 -1
- package/lib/commonjs/mol-util/debug.js +11 -1
- package/lib/commonjs/mol-util/input/input-observer.js +20 -20
- package/lib/commonjs/mol-util/string-builder.js +1 -1
- package/lib/commonjs/servers/model/preprocess/converter.js +1 -1
- package/lib/commonjs/servers/model/server/query.js +1 -1
- package/lib/commonjs/servers/model/utils/fetch-retry.js +3 -2
- package/lib/commonjs/servers/volume/server/algebra/coordinate.js +6 -6
- package/lib/commonjs/servers/volume/server/query/encode.js +1 -1
- package/lib/examples/alpha-orbitals/index.d.ts +1 -1
- package/lib/examples/alpha-orbitals/index.html +11 -0
- package/lib/examples/alpha-orbitals/index.js +4 -1
- package/lib/examples/basic-wrapper/custom-theme.js +1 -1
- package/lib/examples/proteopedia-wrapper/coloring.js +3 -3
- package/lib/extensions/alpha-orbitals/density.d.ts +1 -1
- package/lib/extensions/alpha-orbitals/density.js +6 -2
- package/lib/extensions/alpha-orbitals/orbitals.d.ts +1 -1
- package/lib/extensions/alpha-orbitals/orbitals.js +6 -3
- package/lib/extensions/anvil/algorithm.js +1 -1
- package/lib/extensions/cellpack/color/generate.js +1 -1
- package/lib/extensions/cellpack/color/provided.js +1 -1
- package/lib/extensions/cellpack/state.js +1 -1
- package/lib/extensions/dnatco/confal-pyramids/color.js +1 -1
- package/lib/extensions/g3d/model.js +1 -1
- package/lib/extensions/model-archive/quality-assessment/color/plddt.js +1 -1
- package/lib/extensions/model-archive/quality-assessment/color/qmean.js +1 -1
- package/lib/extensions/pdbe/structure-quality-report/color.js +1 -1
- package/lib/extensions/rcsb/assembly-symmetry/color.js +4 -4
- package/lib/extensions/rcsb/validation-report/color/density-fit.js +1 -1
- package/lib/extensions/rcsb/validation-report/color/geometry-quality.js +2 -2
- package/lib/extensions/rcsb/validation-report/color/random-coil-index.js +1 -1
- package/lib/extensions/rcsb/validation-report/representation.js +2 -2
- package/lib/mol-canvas3d/canvas3d.js +5 -1
- package/lib/mol-canvas3d/controls/trackball.js +7 -7
- package/lib/mol-canvas3d/helper/camera-helper.js +14 -14
- package/lib/mol-canvas3d/helper/interaction-events.js +5 -5
- package/lib/mol-canvas3d/passes/draw.js +34 -5
- package/lib/mol-canvas3d/passes/fxaa.js +5 -0
- package/lib/mol-canvas3d/passes/marking.js +5 -0
- package/lib/mol-canvas3d/passes/multi-sample.js +9 -0
- package/lib/mol-canvas3d/passes/pick.d.ts +18 -5
- package/lib/mol-canvas3d/passes/pick.js +125 -24
- package/lib/mol-canvas3d/passes/postprocessing.js +5 -0
- package/lib/mol-canvas3d/passes/smaa.js +5 -1
- package/lib/mol-canvas3d/passes/wboit.js +5 -1
- package/lib/mol-data/db/column.js +5 -5
- package/lib/mol-data/db/table.js +2 -2
- package/lib/mol-data/util/array.d.ts +1 -1
- package/lib/mol-geo/geometry/texture-mesh/color-smoothing.js +13 -0
- package/lib/mol-gl/compute/grid3d.d.ts +2 -2
- package/lib/mol-gl/compute/grid3d.js +30 -8
- package/lib/mol-gl/compute/histogram-pyramid/reduction.d.ts +1 -1
- package/lib/mol-gl/compute/histogram-pyramid/reduction.js +6 -1
- package/lib/mol-gl/compute/histogram-pyramid/sum.d.ts +1 -1
- package/lib/mol-gl/compute/histogram-pyramid/sum.js +6 -1
- package/lib/mol-gl/compute/marching-cubes/active-voxels.d.ts +1 -1
- package/lib/mol-gl/compute/marching-cubes/active-voxels.js +6 -1
- package/lib/mol-gl/compute/marching-cubes/isosurface.d.ts +1 -1
- package/lib/mol-gl/compute/marching-cubes/isosurface.js +10 -10
- package/lib/mol-gl/renderer.js +77 -32
- package/lib/mol-gl/scene.js +2 -0
- package/lib/mol-gl/shader/chunks/assign-color-varying.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/assign-color-varying.glsl.js +1 -1
- package/lib/mol-gl/shader/chunks/assign-material-color.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/assign-material-color.glsl.js +1 -1
- package/lib/mol-gl/shader/chunks/color-frag-params.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/color-frag-params.glsl.js +1 -1
- package/lib/mol-gl/shader/chunks/color-vert-params.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/color-vert-params.glsl.js +1 -1
- package/lib/mol-gl/shader/cylinders.frag.d.ts +1 -1
- package/lib/mol-gl/shader/cylinders.frag.js +1 -1
- package/lib/mol-gl/shader/direct-volume.frag.d.ts +1 -1
- package/lib/mol-gl/shader/direct-volume.frag.js +1 -1
- package/lib/mol-gl/shader/image.frag.d.ts +1 -1
- package/lib/mol-gl/shader/image.frag.js +1 -1
- package/lib/mol-gl/shader/lines.frag.d.ts +1 -1
- package/lib/mol-gl/shader/lines.frag.js +1 -1
- package/lib/mol-gl/shader/mesh.frag.d.ts +1 -1
- package/lib/mol-gl/shader/mesh.frag.js +1 -1
- package/lib/mol-gl/shader/points.frag.d.ts +1 -1
- package/lib/mol-gl/shader/points.frag.js +1 -1
- package/lib/mol-gl/shader/spheres.frag.d.ts +1 -1
- package/lib/mol-gl/shader/spheres.frag.js +1 -1
- package/lib/mol-gl/shader/text.frag.d.ts +1 -1
- package/lib/mol-gl/shader/text.frag.js +1 -1
- package/lib/mol-gl/shader-code.d.ts +1 -1
- package/lib/mol-gl/shader-code.js +41 -9
- package/lib/mol-gl/webgl/compat.d.ts +34 -1
- package/lib/mol-gl/webgl/compat.js +48 -1
- package/lib/mol-gl/webgl/context.d.ts +2 -0
- package/lib/mol-gl/webgl/context.js +3 -0
- package/lib/mol-gl/webgl/extensions.d.ts +3 -2
- package/lib/mol-gl/webgl/extensions.js +7 -2
- package/lib/mol-gl/webgl/timer.d.ts +22 -0
- package/lib/mol-gl/webgl/timer.js +164 -0
- package/lib/mol-io/common/binary-cif/array-encoder.js +18 -18
- package/lib/mol-io/common/binary-cif/decoder.js +16 -16
- package/lib/mol-io/common/binary-cif/encoding.js +9 -9
- package/lib/mol-io/reader/cif/binary/field.js +3 -3
- package/lib/mol-io/reader/cif/data-model.js +14 -14
- package/lib/mol-io/reader/cif/schema.js +1 -1
- package/lib/mol-io/reader/cif/text/parser.js +23 -23
- package/lib/mol-io/reader/common/text/column/fixed.js +1 -1
- package/lib/mol-io/reader/common/text/column/token.js +1 -1
- package/lib/mol-io/reader/common/text/number-parser.js +6 -6
- package/lib/mol-io/reader/csv/parser.js +8 -8
- package/lib/mol-io/writer/cif/encoder/binary.js +10 -10
- package/lib/mol-io/writer/cif/encoder/text.js +7 -7
- package/lib/mol-io/writer/cif/encoder.js +8 -8
- package/lib/mol-io/writer/mol2/encoder.js +4 -4
- package/lib/mol-math/geometry/gaussian-density/gpu.js +13 -2
- package/lib/mol-model/sequence/alignment/sequence.js +3 -3
- package/lib/mol-model/sequence/sequence.js +9 -9
- package/lib/mol-model/structure/export/categories/atom_site_operator_mapping.js +3 -3
- package/lib/mol-model/structure/export/categories/secondary-structure.js +2 -2
- package/lib/mol-model/structure/export/categories/utils.js +1 -1
- package/lib/mol-model/structure/model/model.js +2 -2
- package/lib/mol-model/structure/model/properties/custom/indexed.js +6 -6
- package/lib/mol-model/structure/model/properties/utils/atomic-ranges.js +1 -1
- package/lib/mol-model/structure/model/types.js +116 -116
- package/lib/mol-model/structure/query/context.js +1 -1
- package/lib/mol-model/structure/query/queries/generators.js +5 -5
- package/lib/mol-model/structure/query/queries/internal.js +4 -4
- package/lib/mol-model/structure/query/queries/modifiers.js +4 -4
- package/lib/mol-model/structure/query/utils/structure-distance.d.ts +5 -54
- package/lib/mol-model/structure/query/utils/structure-distance.js +9 -9
- package/lib/mol-model/structure/structure/carbohydrates/constants.js +106 -106
- package/lib/mol-model/structure/structure/element/loci.js +5 -5
- package/lib/mol-model/structure/structure/element/stats.js +5 -5
- package/lib/mol-model/structure/structure/properties.js +5 -5
- package/lib/mol-model/structure/structure/structure.js +11 -11
- package/lib/mol-model/structure/structure/unit/bonds/inter-compute.js +5 -5
- package/lib/mol-model/structure/structure/unit/bonds/intra-compute.js +4 -4
- package/lib/mol-model/structure/structure/unit/bonds.js +2 -2
- package/lib/mol-model/structure/structure/unit/resonance.js +1 -1
- package/lib/mol-model/structure/structure/unit/rings/compute.js +6 -6
- package/lib/mol-model/structure/structure/unit/rings.js +6 -6
- package/lib/mol-model/structure/structure/unit.js +16 -16
- package/lib/mol-model/structure/structure/util/superposition-sifts-mapping.js +1 -1
- package/lib/mol-model/structure/util.js +4 -4
- package/lib/mol-model-formats/structure/basic/atomic.js +2 -2
- package/lib/mol-model-formats/structure/basic/parser.js +4 -4
- package/lib/mol-model-formats/structure/basic/properties.js +1 -1
- package/lib/mol-model-formats/structure/basic/sort.js +1 -1
- package/lib/mol-model-formats/structure/basic/util.js +1 -1
- package/lib/mol-model-formats/structure/cif-core.js +6 -6
- package/lib/mol-model-formats/structure/common/entity.js +1 -1
- package/lib/mol-model-formats/structure/cube.js +1 -1
- package/lib/mol-model-formats/structure/gro.js +1 -1
- package/lib/mol-model-formats/structure/mol.js +1 -1
- package/lib/mol-model-formats/structure/mol2.js +4 -4
- package/lib/mol-model-formats/structure/prmtop.js +1 -1
- package/lib/mol-model-formats/structure/property/bonds/chem_comp.js +3 -3
- package/lib/mol-model-formats/structure/property/bonds/index-pair.js +1 -1
- package/lib/mol-model-formats/structure/property/bonds/struct_conn.js +6 -6
- package/lib/mol-model-formats/structure/property/secondary-structure.js +8 -8
- package/lib/mol-model-formats/structure/psf.js +1 -1
- package/lib/mol-model-formats/structure/top.js +1 -1
- package/lib/mol-model-formats/structure/xyz.js +1 -1
- package/lib/mol-model-props/computed/accessible-surface-area/shrake-rupley/radii.js +2 -2
- package/lib/mol-model-props/computed/accessible-surface-area/shrake-rupley.js +3 -3
- package/lib/mol-model-props/computed/accessible-surface-area.js +2 -2
- package/lib/mol-model-props/computed/chemistry/functional-group.js +31 -31
- package/lib/mol-model-props/computed/chemistry/geometry.js +22 -22
- package/lib/mol-model-props/computed/chemistry/valence-model.js +32 -32
- package/lib/mol-model-props/computed/interactions/charged.js +39 -39
- package/lib/mol-model-props/computed/interactions/common.js +34 -34
- package/lib/mol-model-props/computed/interactions/contacts-builder.js +1 -1
- package/lib/mol-model-props/computed/interactions/contacts.js +1 -1
- package/lib/mol-model-props/computed/interactions/halogen-bonds.js +12 -12
- package/lib/mol-model-props/computed/interactions/hydrogen-bonds.js +32 -32
- package/lib/mol-model-props/computed/interactions/hydrophobic.js +9 -9
- package/lib/mol-model-props/computed/interactions/metal.js +26 -26
- package/lib/mol-model-props/computed/interactions/refine.js +20 -20
- package/lib/mol-model-props/computed/representations/interactions-inter-unit-cylinder.js +2 -2
- package/lib/mol-model-props/computed/representations/interactions-intra-unit-cylinder.js +2 -2
- package/lib/mol-model-props/computed/secondary-structure/dssp/bends.js +1 -1
- package/lib/mol-model-props/computed/secondary-structure/dssp/bridges.js +12 -12
- package/lib/mol-model-props/computed/secondary-structure/dssp/helices.js +6 -6
- package/lib/mol-model-props/computed/secondary-structure/dssp/ladders.js +3 -3
- package/lib/mol-model-props/computed/secondary-structure/dssp/sheets.js +11 -11
- package/lib/mol-model-props/computed/secondary-structure/dssp/turns.js +3 -3
- package/lib/mol-model-props/computed/secondary-structure/dssp.js +30 -30
- package/lib/mol-model-props/computed/themes/accessible-surface-area.js +1 -1
- package/lib/mol-model-props/computed/themes/interaction-type.js +10 -10
- package/lib/mol-model-props/integrative/cross-link-restraint/color.js +1 -1
- package/lib/mol-model-props/integrative/cross-link-restraint/format.js +3 -3
- package/lib/mol-model-props/sequence/sifts-mapping.js +1 -1
- package/lib/mol-model-props/sequence/themes/sifts-mapping.js +1 -1
- package/lib/mol-plugin/animation-loop.d.ts +2 -1
- package/lib/mol-plugin/animation-loop.js +18 -5
- package/lib/mol-plugin/behavior/dynamic/camera.js +12 -12
- package/lib/mol-plugin/behavior/dynamic/representation.js +7 -7
- package/lib/mol-plugin/context.d.ts +2 -2
- package/lib/mol-plugin/state.d.ts +1 -14
- package/lib/mol-plugin/version.js +2 -2
- package/lib/mol-plugin-state/formats/volume.d.ts +12 -11
- package/lib/mol-plugin-state/formats/volume.js +20 -13
- package/lib/mol-plugin-state/helpers/structure-selection-query.js +5 -5
- package/lib/mol-plugin-state/transforms/representation.js +2 -2
- package/lib/mol-plugin-ui/controls/parameters.d.ts +1 -1
- package/lib/mol-plugin-ui/sequence/polymer.js +1 -1
- package/lib/mol-plugin-ui/sequence/sequence.js +1 -1
- package/lib/mol-plugin-ui/structure/focus.js +1 -1
- package/lib/mol-plugin-ui/viewport.d.ts +2 -2
- package/lib/mol-repr/structure/visual/bond-inter-unit-cylinder.js +10 -10
- package/lib/mol-repr/structure/visual/bond-inter-unit-line.js +10 -10
- package/lib/mol-repr/structure/visual/bond-intra-unit-cylinder.js +12 -12
- package/lib/mol-repr/structure/visual/bond-intra-unit-line.js +12 -12
- package/lib/mol-repr/structure/visual/carbohydrate-symbol-mesh.js +16 -16
- package/lib/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.js +1 -1
- package/lib/mol-repr/structure/visual/gaussian-surface-mesh.js +9 -0
- package/lib/mol-repr/structure/visual/orientation-ellipsoid-mesh.js +4 -4
- package/lib/mol-repr/structure/visual/polymer-direction-wedge.js +1 -1
- package/lib/mol-repr/structure/visual/polymer-trace-mesh.js +2 -2
- package/lib/mol-repr/structure/visual/util/bond.js +2 -2
- package/lib/mol-repr/structure/visual/util/common.js +3 -3
- package/lib/mol-repr/structure/visual/util/link.js +30 -30
- package/lib/mol-repr/structure/visual/util/polymer/backbone.js +6 -6
- package/lib/mol-repr/structure/visual/util/polymer/gap-iterator.js +3 -3
- package/lib/mol-repr/structure/visual/util/polymer/trace-iterator.js +20 -20
- package/lib/mol-repr/structure/visual/util/polymer.js +6 -6
- package/lib/mol-script/language/symbol-table/core.d.ts +2 -2
- package/lib/mol-script/runtime/query/table.js +13 -13
- package/lib/mol-state/object.d.ts +3 -3
- package/lib/mol-task/util/user-timing.js +1 -1
- package/lib/mol-theme/clipping.js +19 -19
- package/lib/mol-theme/color/atom-id.js +1 -1
- package/lib/mol-theme/color/carbohydrate-symbol.js +1 -1
- package/lib/mol-theme/color/chain-id.js +4 -4
- package/lib/mol-theme/color/element-index.js +1 -1
- package/lib/mol-theme/color/element-symbol.js +1 -1
- package/lib/mol-theme/color/entity-id.js +4 -4
- package/lib/mol-theme/color/entity-source.js +5 -4
- package/lib/mol-theme/color/hydrophobicity.js +1 -1
- package/lib/mol-theme/color/illustrative.js +1 -1
- package/lib/mol-theme/color/model-index.js +1 -1
- package/lib/mol-theme/color/molecule-type.js +8 -8
- package/lib/mol-theme/color/occupancy.js +1 -1
- package/lib/mol-theme/color/operator-hkl.js +1 -1
- package/lib/mol-theme/color/operator-name.js +1 -1
- package/lib/mol-theme/color/partial-charge.js +1 -1
- package/lib/mol-theme/color/polymer-id.js +4 -4
- package/lib/mol-theme/color/polymer-index.js +1 -1
- package/lib/mol-theme/color/residue-name.js +1 -1
- package/lib/mol-theme/color/secondary-structure.js +12 -12
- package/lib/mol-theme/color/sequence-id.js +7 -7
- package/lib/mol-theme/color/shape-group.js +1 -1
- package/lib/mol-theme/color/uncertainty.js +1 -1
- package/lib/mol-theme/color/uniform.js +1 -1
- package/lib/mol-theme/color/unit-index.js +1 -1
- package/lib/mol-theme/color/volume-value.js +1 -1
- package/lib/mol-theme/label.js +3 -3
- package/lib/mol-util/binding.js +4 -4
- package/lib/mol-util/debug.d.ts +6 -1
- package/lib/mol-util/debug.js +9 -1
- package/lib/mol-util/input/input-observer.js +20 -20
- package/lib/mol-util/string-builder.js +1 -1
- package/lib/servers/model/preprocess/converter.js +1 -1
- package/lib/servers/model/server/query.js +1 -1
- package/lib/servers/model/utils/fetch-retry.js +3 -2
- package/lib/servers/volume/server/algebra/coordinate.js +6 -6
- package/lib/servers/volume/server/query/encode.js +1 -1
- package/package.json +8 -8
|
@@ -40,11 +40,11 @@ var ModelSecondaryStructure;
|
|
|
40
40
|
exports.ModelSecondaryStructure = ModelSecondaryStructure;
|
|
41
41
|
function getCoordinateType(conf, sheetRange) {
|
|
42
42
|
if (conf._rowCount > 0) {
|
|
43
|
-
if (conf.beg_label_seq_id.valueKind(0) !== 0 /* Present */ || conf.end_label_seq_id.valueKind(0) !== 0 /* Present */)
|
|
43
|
+
if (conf.beg_label_seq_id.valueKind(0) !== 0 /* Column.ValueKind.Present */ || conf.end_label_seq_id.valueKind(0) !== 0 /* Column.ValueKind.Present */)
|
|
44
44
|
return 'auth';
|
|
45
45
|
}
|
|
46
46
|
else if (sheetRange) {
|
|
47
|
-
if (sheetRange.beg_label_seq_id.valueKind(0) !== 0 /* Present */ || sheetRange.end_label_seq_id.valueKind(0) !== 0 /* Present */)
|
|
47
|
+
if (sheetRange.beg_label_seq_id.valueKind(0) !== 0 /* Column.ValueKind.Present */ || sheetRange.end_label_seq_id.valueKind(0) !== 0 /* Column.ValueKind.Present */)
|
|
48
48
|
return 'auth';
|
|
49
49
|
}
|
|
50
50
|
return 'label';
|
|
@@ -58,17 +58,17 @@ function addHelices(cat, coordinates, map, elements) {
|
|
|
58
58
|
var beg_seq_id = coordinates === 'label' ? beg_label_seq_id : beg_auth_seq_id;
|
|
59
59
|
var end_seq_id = coordinates === 'label' ? end_label_seq_id : end_auth_seq_id;
|
|
60
60
|
for (var i = 0, _i = cat._rowCount; i < _i; i++) {
|
|
61
|
-
var type = types_1.SecondaryStructureType.create(pdbx_PDB_helix_class.valueKind(i) === 0 /* Present */
|
|
61
|
+
var type = types_1.SecondaryStructureType.create(pdbx_PDB_helix_class.valueKind(i) === 0 /* Column.ValueKind.Present */
|
|
62
62
|
? types_1.SecondaryStructureType.SecondaryStructurePdb[pdbx_PDB_helix_class.value(i)]
|
|
63
|
-
: conf_type_id.valueKind(i) === 0 /* Present */
|
|
63
|
+
: conf_type_id.valueKind(i) === 0 /* Column.ValueKind.Present */
|
|
64
64
|
? types_1.SecondaryStructureType.SecondaryStructureMmcif[conf_type_id.value(i)]
|
|
65
|
-
: 536870912 /* NA */);
|
|
65
|
+
: 536870912 /* SecondaryStructureType.Flag.NA */);
|
|
66
66
|
var element = {
|
|
67
67
|
kind: 'helix',
|
|
68
68
|
flags: type,
|
|
69
|
-
type_id: conf_type_id.valueKind(i) === 0 /* Present */ ? conf_type_id.value(i) : 'helx_p',
|
|
69
|
+
type_id: conf_type_id.valueKind(i) === 0 /* Column.ValueKind.Present */ ? conf_type_id.value(i) : 'helx_p',
|
|
70
70
|
helix_class: pdbx_PDB_helix_class.value(i),
|
|
71
|
-
details: details.valueKind(i) === 0 /* Present */ ? details.value(i) : void 0
|
|
71
|
+
details: details.valueKind(i) === 0 /* Column.ValueKind.Present */ ? details.value(i) : void 0
|
|
72
72
|
};
|
|
73
73
|
var entry = {
|
|
74
74
|
startSeqId: beg_seq_id.value(i),
|
|
@@ -113,7 +113,7 @@ function addSheets(cat, coordinates, map, sheetCount, elements) {
|
|
|
113
113
|
key = currentKey++;
|
|
114
114
|
sheet_id_key.set(id, key);
|
|
115
115
|
}
|
|
116
|
-
var type = types_1.SecondaryStructureType.create(4 /* Beta */ | 8388608 /* BetaSheet */);
|
|
116
|
+
var type = types_1.SecondaryStructureType.create(4 /* SecondaryStructureType.Flag.Beta */ | 8388608 /* SecondaryStructureType.Flag.BetaSheet */);
|
|
117
117
|
var element = {
|
|
118
118
|
kind: 'sheet',
|
|
119
119
|
flags: type,
|
|
@@ -29,7 +29,7 @@ function getBasic(atoms) {
|
|
|
29
29
|
var currentAsymId = '';
|
|
30
30
|
var currentSeqId = 0;
|
|
31
31
|
var currentSegmentName = atoms.segmentName.value(0), segmentChanged = false;
|
|
32
|
-
var prevMoleculeType = 0 /* Unknown */;
|
|
32
|
+
var prevMoleculeType = 0 /* MoleculeType.Unknown */;
|
|
33
33
|
var prevResidueNumber = -1;
|
|
34
34
|
for (var i = 0, il = atoms.count; i < il; ++i) {
|
|
35
35
|
var residueNumber = atoms.residueId.value(i);
|
|
@@ -74,7 +74,7 @@ function getBasic(top) {
|
|
|
74
74
|
var currentAsymIndex = 0;
|
|
75
75
|
var currentAsymId = '';
|
|
76
76
|
var currentSeqId = 0;
|
|
77
|
-
var prevMoleculeType = 0 /* Unknown */;
|
|
77
|
+
var prevMoleculeType = 0 /* MoleculeType.Unknown */;
|
|
78
78
|
var prevResidueNumber = -1;
|
|
79
79
|
for (var i = 0, il = atomCount; i < il; ++i) {
|
|
80
80
|
var residueNumber = residueId.value(i);
|
|
@@ -62,7 +62,7 @@ function getModels(mol, ctx) {
|
|
|
62
62
|
}, count);
|
|
63
63
|
var entityBuilder = new entity_1.EntityBuilder();
|
|
64
64
|
entityBuilder.setNames([['MOL', 'Unknown Entity']]);
|
|
65
|
-
entityBuilder.getEntityId('MOL', 0 /* Unknown */, 'A');
|
|
65
|
+
entityBuilder.getEntityId('MOL', 0 /* MoleculeType.Unknown */, 'A');
|
|
66
66
|
var componentBuilder = new component_1.ComponentBuilder(seq_id, type_symbol);
|
|
67
67
|
componentBuilder.setNames([['MOL', 'Unknown Molecule']]);
|
|
68
68
|
componentBuilder.add('MOL', 0);
|
package/lib/commonjs/mol-model-props/computed/accessible-surface-area/shrake-rupley/radii.js
CHANGED
|
@@ -46,7 +46,7 @@ function assignRadiusForHeavyAtoms(ctx) {
|
|
|
46
46
|
var atomId = label_atom_id(l);
|
|
47
47
|
var moleculeType = (0, util_1.getElementMoleculeType)(unit, eI);
|
|
48
48
|
// skip water and optionally non-polymer groups
|
|
49
|
-
if (moleculeType === 2 /* Water */ || (!ctx.nonPolymer && !(0, types_1.isPolymer)(moleculeType))) {
|
|
49
|
+
if (moleculeType === 2 /* MoleculeType.Water */ || (!ctx.nonPolymer && !(0, types_1.isPolymer)(moleculeType))) {
|
|
50
50
|
atomRadiusType[mj] = 0;
|
|
51
51
|
serialResidueIndex[mj] = -1;
|
|
52
52
|
continue;
|
|
@@ -60,7 +60,7 @@ function assignRadiusForHeavyAtoms(ctx) {
|
|
|
60
60
|
if ((0, types_1.isNucleic)(moleculeType)) {
|
|
61
61
|
atomRadiusType[mj] = determineRadiusNucl(atomId, element, compId);
|
|
62
62
|
}
|
|
63
|
-
else if (moleculeType === 5 /* Protein */) {
|
|
63
|
+
else if (moleculeType === 5 /* MoleculeType.Protein */) {
|
|
64
64
|
atomRadiusType[mj] = determineRadiusAmino(atomId, element, compId);
|
|
65
65
|
}
|
|
66
66
|
else {
|
|
@@ -111,9 +111,9 @@ var AccessibleSurfaceArea;
|
|
|
111
111
|
AccessibleSurfaceArea.getNormalizedValue = getNormalizedValue;
|
|
112
112
|
function getFlag(location, accessibleSurfaceArea) {
|
|
113
113
|
var value = getNormalizedValue(location, accessibleSurfaceArea);
|
|
114
|
-
return value === -1 ? 0 /* NA */ :
|
|
115
|
-
value < 0.16 ? 1 /* Buried */ :
|
|
116
|
-
2 /* Accessible */;
|
|
114
|
+
return value === -1 ? 0 /* Flag.NA */ :
|
|
115
|
+
value < 0.16 ? 1 /* Flag.Buried */ :
|
|
116
|
+
2 /* Flag.Accessible */;
|
|
117
117
|
}
|
|
118
118
|
AccessibleSurfaceArea.getFlag = getFlag;
|
|
119
119
|
})(AccessibleSurfaceArea || (AccessibleSurfaceArea = {}));
|
|
@@ -24,7 +24,7 @@ exports.AccessibleSurfaceAreaSymbols = {
|
|
|
24
24
|
var accessibleSurfaceArea = exports.AccessibleSurfaceAreaProvider.get(ctx.element.structure).value;
|
|
25
25
|
if (!accessibleSurfaceArea)
|
|
26
26
|
return false;
|
|
27
|
-
return shrake_rupley_1.AccessibleSurfaceArea.getFlag(ctx.element, accessibleSurfaceArea) === 1 /* Buried */;
|
|
27
|
+
return shrake_rupley_1.AccessibleSurfaceArea.getFlag(ctx.element, accessibleSurfaceArea) === 1 /* AccessibleSurfaceArea.Flag.Buried */;
|
|
28
28
|
}),
|
|
29
29
|
isAccessible: compiler_1.QuerySymbolRuntime.Dynamic((0, symbol_1.CustomPropSymbol)('computed', 'accessible-surface-area.is-accessible', type_1.Type.Bool), function (ctx) {
|
|
30
30
|
if (!structure_1.Unit.isAtomic(ctx.element.unit))
|
|
@@ -32,7 +32,7 @@ exports.AccessibleSurfaceAreaSymbols = {
|
|
|
32
32
|
var accessibleSurfaceArea = exports.AccessibleSurfaceAreaProvider.get(ctx.element.structure).value;
|
|
33
33
|
if (!accessibleSurfaceArea)
|
|
34
34
|
return false;
|
|
35
|
-
return shrake_rupley_1.AccessibleSurfaceArea.getFlag(ctx.element, accessibleSurfaceArea) === 2 /* Accessible */;
|
|
35
|
+
return shrake_rupley_1.AccessibleSurfaceArea.getFlag(ctx.element, accessibleSurfaceArea) === 2 /* AccessibleSurfaceArea.Flag.Accessible */;
|
|
36
36
|
}),
|
|
37
37
|
};
|
|
38
38
|
exports.AccessibleSurfaceAreaProvider = custom_structure_property_1.CustomStructureProperty.createProvider({
|
|
@@ -13,7 +13,7 @@ function isAromatic(unit, index) {
|
|
|
13
13
|
// TODO also extend unit.rings with geometry/composition-based aromaticity detection and use it here in addition
|
|
14
14
|
var _a = unit.bonds, offset = _a.offset, edgeProps = _a.edgeProps;
|
|
15
15
|
for (var i = offset[index], il = offset[index + 1]; i < il; ++i) {
|
|
16
|
-
if (types_2.BondType.is(16 /* Aromatic */, edgeProps.flags[i]))
|
|
16
|
+
if (types_2.BondType.is(16 /* BondType.Flag.Aromatic */, edgeProps.flags[i]))
|
|
17
17
|
return true;
|
|
18
18
|
}
|
|
19
19
|
return false;
|
|
@@ -31,16 +31,16 @@ function bondToCarbonylCount(structure, unit, index) {
|
|
|
31
31
|
* Nitrogen in a quaternary amine
|
|
32
32
|
*/
|
|
33
33
|
function isQuaternaryAmine(structure, unit, index) {
|
|
34
|
-
return ((0, util_1.typeSymbol)(unit, index) === "N" /* N */ &&
|
|
34
|
+
return ((0, util_1.typeSymbol)(unit, index) === "N" /* Elements.N */ &&
|
|
35
35
|
(0, util_1.bondCount)(structure, unit, index) === 4 &&
|
|
36
|
-
(0, util_1.bondToElementCount)(structure, unit, index, "H" /* H */) === 0);
|
|
36
|
+
(0, util_1.bondToElementCount)(structure, unit, index, "H" /* Elements.H */) === 0);
|
|
37
37
|
}
|
|
38
38
|
exports.isQuaternaryAmine = isQuaternaryAmine;
|
|
39
39
|
/**
|
|
40
40
|
* Nitrogen in a tertiary amine
|
|
41
41
|
*/
|
|
42
42
|
function isTertiaryAmine(structure, unit, index, idealValence) {
|
|
43
|
-
return ((0, util_1.typeSymbol)(unit, index) === "N" /* N */ &&
|
|
43
|
+
return ((0, util_1.typeSymbol)(unit, index) === "N" /* Elements.N */ &&
|
|
44
44
|
(0, util_1.bondCount)(structure, unit, index) === 4 &&
|
|
45
45
|
idealValence === 3);
|
|
46
46
|
}
|
|
@@ -50,8 +50,8 @@ exports.isTertiaryAmine = isTertiaryAmine;
|
|
|
50
50
|
*/
|
|
51
51
|
function isImide(structure, unit, index) {
|
|
52
52
|
var flag = false;
|
|
53
|
-
if ((0, util_1.typeSymbol)(unit, index) === "N" /* N */ &&
|
|
54
|
-
((0, util_1.bondCount)(structure, unit, index) - (0, util_1.bondToElementCount)(structure, unit, index, "H" /* H */)) === 2) {
|
|
53
|
+
if ((0, util_1.typeSymbol)(unit, index) === "N" /* Elements.N */ &&
|
|
54
|
+
((0, util_1.bondCount)(structure, unit, index) - (0, util_1.bondToElementCount)(structure, unit, index, "H" /* Elements.H */)) === 2) {
|
|
55
55
|
flag = bondToCarbonylCount(structure, unit, index) === 2;
|
|
56
56
|
}
|
|
57
57
|
return flag;
|
|
@@ -62,8 +62,8 @@ exports.isImide = isImide;
|
|
|
62
62
|
*/
|
|
63
63
|
function isAmide(structure, unit, index) {
|
|
64
64
|
var flag = false;
|
|
65
|
-
if ((0, util_1.typeSymbol)(unit, index) === "N" /* N */ &&
|
|
66
|
-
((0, util_1.bondCount)(structure, unit, index) - (0, util_1.bondToElementCount)(structure, unit, index, "H" /* H */)) === 2) {
|
|
65
|
+
if ((0, util_1.typeSymbol)(unit, index) === "N" /* Elements.N */ &&
|
|
66
|
+
((0, util_1.bondCount)(structure, unit, index) - (0, util_1.bondToElementCount)(structure, unit, index, "H" /* Elements.H */)) === 2) {
|
|
67
67
|
flag = bondToCarbonylCount(structure, unit, index) === 1;
|
|
68
68
|
}
|
|
69
69
|
return flag;
|
|
@@ -73,33 +73,33 @@ exports.isAmide = isAmide;
|
|
|
73
73
|
* Sulfur in a sulfonium group
|
|
74
74
|
*/
|
|
75
75
|
function isSulfonium(structure, unit, index) {
|
|
76
|
-
return ((0, util_1.typeSymbol)(unit, index) === "S" /* S */ &&
|
|
76
|
+
return ((0, util_1.typeSymbol)(unit, index) === "S" /* Elements.S */ &&
|
|
77
77
|
(0, util_1.bondCount)(structure, unit, index) === 3 &&
|
|
78
|
-
(0, util_1.bondToElementCount)(structure, unit, index, "H" /* H */) === 0);
|
|
78
|
+
(0, util_1.bondToElementCount)(structure, unit, index, "H" /* Elements.H */) === 0);
|
|
79
79
|
}
|
|
80
80
|
exports.isSulfonium = isSulfonium;
|
|
81
81
|
/**
|
|
82
82
|
* Sulfur in a sulfonic acid or sulfonate group
|
|
83
83
|
*/
|
|
84
84
|
function isSulfonicAcid(structure, unit, index) {
|
|
85
|
-
return ((0, util_1.typeSymbol)(unit, index) === "S" /* S */ &&
|
|
86
|
-
(0, util_1.bondToElementCount)(structure, unit, index, "O" /* O */) === 3);
|
|
85
|
+
return ((0, util_1.typeSymbol)(unit, index) === "S" /* Elements.S */ &&
|
|
86
|
+
(0, util_1.bondToElementCount)(structure, unit, index, "O" /* Elements.O */) === 3);
|
|
87
87
|
}
|
|
88
88
|
exports.isSulfonicAcid = isSulfonicAcid;
|
|
89
89
|
/**
|
|
90
90
|
* Sulfur in a sulfate group
|
|
91
91
|
*/
|
|
92
92
|
function isSulfate(structure, unit, index) {
|
|
93
|
-
return ((0, util_1.typeSymbol)(unit, index) === "S" /* S */ &&
|
|
94
|
-
(0, util_1.bondToElementCount)(structure, unit, index, "O" /* O */) === 4);
|
|
93
|
+
return ((0, util_1.typeSymbol)(unit, index) === "S" /* Elements.S */ &&
|
|
94
|
+
(0, util_1.bondToElementCount)(structure, unit, index, "O" /* Elements.O */) === 4);
|
|
95
95
|
}
|
|
96
96
|
exports.isSulfate = isSulfate;
|
|
97
97
|
/**
|
|
98
98
|
* Phosphor in a phosphate group
|
|
99
99
|
*/
|
|
100
100
|
function isPhosphate(structure, unit, index) {
|
|
101
|
-
return ((0, util_1.typeSymbol)(unit, index) === "P" /* P */ &&
|
|
102
|
-
(0, util_1.bondToElementCount)(structure, unit, index, "O" /* O */) === (0, util_1.bondCount)(structure, unit, index));
|
|
101
|
+
return ((0, util_1.typeSymbol)(unit, index) === "P" /* Elements.P */ &&
|
|
102
|
+
(0, util_1.bondToElementCount)(structure, unit, index, "O" /* Elements.O */) === (0, util_1.bondCount)(structure, unit, index));
|
|
103
103
|
}
|
|
104
104
|
exports.isPhosphate = isPhosphate;
|
|
105
105
|
/**
|
|
@@ -108,7 +108,7 @@ exports.isPhosphate = isPhosphate;
|
|
|
108
108
|
function isHalocarbon(structure, unit, index) {
|
|
109
109
|
return ((0, types_1.isHalogen)((0, util_1.typeSymbol)(unit, index)) &&
|
|
110
110
|
(0, util_1.bondCount)(structure, unit, index) === 1 &&
|
|
111
|
-
(0, util_1.bondToElementCount)(structure, unit, index, "C" /* C */) === 1);
|
|
111
|
+
(0, util_1.bondToElementCount)(structure, unit, index, "C" /* Elements.C */) === 1);
|
|
112
112
|
}
|
|
113
113
|
exports.isHalocarbon = isHalocarbon;
|
|
114
114
|
/**
|
|
@@ -118,10 +118,10 @@ exports.isHalocarbon = isHalocarbon;
|
|
|
118
118
|
*/
|
|
119
119
|
function isCarbonyl(structure, unit, index) {
|
|
120
120
|
var flag = false;
|
|
121
|
-
if ((0, util_1.typeSymbol)(unit, index) === "C" /* C */) {
|
|
121
|
+
if ((0, util_1.typeSymbol)(unit, index) === "C" /* Elements.C */) {
|
|
122
122
|
var _a = unit.bonds, offset = _a.offset, edgeProps = _a.edgeProps, b = _a.b;
|
|
123
123
|
for (var i = offset[index], il = offset[index + 1]; i < il; ++i) {
|
|
124
|
-
if (edgeProps.order[i] === 2 && (0, util_1.typeSymbol)(unit, b[i]) === "O" /* O */) {
|
|
124
|
+
if (edgeProps.order[i] === 2 && (0, util_1.typeSymbol)(unit, b[i]) === "O" /* Elements.O */) {
|
|
125
125
|
flag = true;
|
|
126
126
|
break;
|
|
127
127
|
}
|
|
@@ -135,12 +135,12 @@ exports.isCarbonyl = isCarbonyl;
|
|
|
135
135
|
*/
|
|
136
136
|
function isCarboxylate(structure, unit, index) {
|
|
137
137
|
var terminalOxygenCount = 0;
|
|
138
|
-
if ((0, util_1.typeSymbol)(unit, index) === "C" /* C */ &&
|
|
139
|
-
(0, util_1.bondToElementCount)(structure, unit, index, "O" /* O */) === 2 &&
|
|
140
|
-
(0, util_1.bondToElementCount)(structure, unit, index, "C" /* C */) === 1) {
|
|
138
|
+
if ((0, util_1.typeSymbol)(unit, index) === "C" /* Elements.C */ &&
|
|
139
|
+
(0, util_1.bondToElementCount)(structure, unit, index, "O" /* Elements.O */) === 2 &&
|
|
140
|
+
(0, util_1.bondToElementCount)(structure, unit, index, "C" /* Elements.C */) === 1) {
|
|
141
141
|
(0, util_1.eachBondedAtom)(structure, unit, index, function (unit, index) {
|
|
142
|
-
if ((0, util_1.typeSymbol)(unit, index) === "O" /* O */ &&
|
|
143
|
-
(0, util_1.bondCount)(structure, unit, index) - (0, util_1.bondToElementCount)(structure, unit, index, "H" /* H */) === 1) {
|
|
142
|
+
if ((0, util_1.typeSymbol)(unit, index) === "O" /* Elements.O */ &&
|
|
143
|
+
(0, util_1.bondCount)(structure, unit, index) - (0, util_1.bondToElementCount)(structure, unit, index, "H" /* Elements.H */) === 1) {
|
|
144
144
|
terminalOxygenCount += 1;
|
|
145
145
|
}
|
|
146
146
|
});
|
|
@@ -153,11 +153,11 @@ exports.isCarboxylate = isCarboxylate;
|
|
|
153
153
|
*/
|
|
154
154
|
function isGuanidine(structure, unit, index) {
|
|
155
155
|
var terminalNitrogenCount = 0;
|
|
156
|
-
if ((0, util_1.typeSymbol)(unit, index) === "C" /* C */ &&
|
|
156
|
+
if ((0, util_1.typeSymbol)(unit, index) === "C" /* Elements.C */ &&
|
|
157
157
|
(0, util_1.bondCount)(structure, unit, index) === 3 &&
|
|
158
|
-
(0, util_1.bondToElementCount)(structure, unit, index, "N" /* N */) === 3) {
|
|
158
|
+
(0, util_1.bondToElementCount)(structure, unit, index, "N" /* Elements.N */) === 3) {
|
|
159
159
|
(0, util_1.eachBondedAtom)(structure, unit, index, function (unit, index) {
|
|
160
|
-
if ((0, util_1.bondCount)(structure, unit, index) - (0, util_1.bondToElementCount)(structure, unit, index, "H" /* H */) === 1) {
|
|
160
|
+
if ((0, util_1.bondCount)(structure, unit, index) - (0, util_1.bondToElementCount)(structure, unit, index, "H" /* Elements.H */) === 1) {
|
|
161
161
|
terminalNitrogenCount += 1;
|
|
162
162
|
}
|
|
163
163
|
});
|
|
@@ -170,12 +170,12 @@ exports.isGuanidine = isGuanidine;
|
|
|
170
170
|
*/
|
|
171
171
|
function isAcetamidine(structure, unit, index) {
|
|
172
172
|
var terminalNitrogenCount = 0;
|
|
173
|
-
if ((0, util_1.typeSymbol)(unit, index) === "C" /* C */ &&
|
|
173
|
+
if ((0, util_1.typeSymbol)(unit, index) === "C" /* Elements.C */ &&
|
|
174
174
|
(0, util_1.bondCount)(structure, unit, index) === 3 &&
|
|
175
|
-
(0, util_1.bondToElementCount)(structure, unit, index, "N" /* N */) === 2 &&
|
|
176
|
-
(0, util_1.bondToElementCount)(structure, unit, index, "C" /* C */) === 1) {
|
|
175
|
+
(0, util_1.bondToElementCount)(structure, unit, index, "N" /* Elements.N */) === 2 &&
|
|
176
|
+
(0, util_1.bondToElementCount)(structure, unit, index, "C" /* Elements.C */) === 1) {
|
|
177
177
|
(0, util_1.eachBondedAtom)(structure, unit, index, function (unit, index) {
|
|
178
|
-
if ((0, util_1.bondCount)(structure, unit, index) - (0, util_1.bondToElementCount)(structure, unit, index, "H" /* H */) === 1) {
|
|
178
|
+
if ((0, util_1.bondCount)(structure, unit, index) - (0, util_1.bondToElementCount)(structure, unit, index, "H" /* Elements.H */) === 1) {
|
|
179
179
|
terminalNitrogenCount += 1;
|
|
180
180
|
}
|
|
181
181
|
});
|
|
@@ -12,43 +12,43 @@ var linear_algebra_1 = require("../../../mol-math/linear-algebra");
|
|
|
12
12
|
var util_1 = require("./util");
|
|
13
13
|
function geometryLabel(geometry) {
|
|
14
14
|
switch (geometry) {
|
|
15
|
-
case 0 /* Spherical */:
|
|
15
|
+
case 0 /* AtomGeometry.Spherical */:
|
|
16
16
|
return 'Spherical';
|
|
17
|
-
case 1 /* Terminal */:
|
|
17
|
+
case 1 /* AtomGeometry.Terminal */:
|
|
18
18
|
return 'Terminal';
|
|
19
|
-
case 2 /* Linear */:
|
|
19
|
+
case 2 /* AtomGeometry.Linear */:
|
|
20
20
|
return 'Linear';
|
|
21
|
-
case 3 /* Trigonal */:
|
|
21
|
+
case 3 /* AtomGeometry.Trigonal */:
|
|
22
22
|
return 'Trigonal';
|
|
23
|
-
case 4 /* Tetrahedral */:
|
|
23
|
+
case 4 /* AtomGeometry.Tetrahedral */:
|
|
24
24
|
return 'Tetrahedral';
|
|
25
|
-
case 5 /* TrigonalBiPyramidal */:
|
|
25
|
+
case 5 /* AtomGeometry.TrigonalBiPyramidal */:
|
|
26
26
|
return 'Trigonal Bi-Pyramidal';
|
|
27
|
-
case 6 /* Octahedral */:
|
|
27
|
+
case 6 /* AtomGeometry.Octahedral */:
|
|
28
28
|
return 'Octahedral';
|
|
29
|
-
case 7 /* SquarePlanar */:
|
|
29
|
+
case 7 /* AtomGeometry.SquarePlanar */:
|
|
30
30
|
return 'Square Planar';
|
|
31
|
-
case 8 /* Unknown */:
|
|
31
|
+
case 8 /* AtomGeometry.Unknown */:
|
|
32
32
|
return 'Unknown';
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
exports.geometryLabel = geometryLabel;
|
|
36
36
|
function assignGeometry(totalCoordination) {
|
|
37
37
|
switch (totalCoordination) {
|
|
38
|
-
case 0: return 0 /* Spherical */;
|
|
39
|
-
case 1: return 1 /* Terminal */;
|
|
40
|
-
case 2: return 2 /* Linear */;
|
|
41
|
-
case 3: return 3 /* Trigonal */;
|
|
42
|
-
case 4: return 4 /* Tetrahedral */;
|
|
43
|
-
default: return 8 /* Unknown */;
|
|
38
|
+
case 0: return 0 /* AtomGeometry.Spherical */;
|
|
39
|
+
case 1: return 1 /* AtomGeometry.Terminal */;
|
|
40
|
+
case 2: return 2 /* AtomGeometry.Linear */;
|
|
41
|
+
case 3: return 3 /* AtomGeometry.Trigonal */;
|
|
42
|
+
case 4: return 4 /* AtomGeometry.Tetrahedral */;
|
|
43
|
+
default: return 8 /* AtomGeometry.Unknown */;
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
46
|
exports.assignGeometry = assignGeometry;
|
|
47
47
|
exports.AtomGeometryAngles = new Map([
|
|
48
|
-
[2 /* Linear */, (0, misc_1.degToRad)(180)],
|
|
49
|
-
[3 /* Trigonal */, (0, misc_1.degToRad)(120)],
|
|
50
|
-
[4 /* Tetrahedral */, (0, misc_1.degToRad)(109.4721)],
|
|
51
|
-
[6 /* Octahedral */, (0, misc_1.degToRad)(90)]
|
|
48
|
+
[2 /* AtomGeometry.Linear */, (0, misc_1.degToRad)(180)],
|
|
49
|
+
[3 /* AtomGeometry.Trigonal */, (0, misc_1.degToRad)(120)],
|
|
50
|
+
[4 /* AtomGeometry.Tetrahedral */, (0, misc_1.degToRad)(109.4721)],
|
|
51
|
+
[6 /* AtomGeometry.Octahedral */, (0, misc_1.degToRad)(90)]
|
|
52
52
|
]);
|
|
53
53
|
// tmp objects for `calcAngles` and `calcPlaneAngle`
|
|
54
54
|
var tmpDir1 = (0, linear_algebra_1.Vec3)();
|
|
@@ -65,7 +65,7 @@ function calcAngles(structure, unitA, indexA, unitB, indexB) {
|
|
|
65
65
|
unitB.conformation.position(unitB.elements[indexB], tmpPosB);
|
|
66
66
|
linear_algebra_1.Vec3.sub(tmpDir1, tmpPosB, tmpPosA);
|
|
67
67
|
(0, util_1.eachBondedAtom)(structure, unitA, indexA, function (unitX, indexX) {
|
|
68
|
-
if ((0, util_1.typeSymbol)(unitX, indexX) !== "H" /* H */) {
|
|
68
|
+
if ((0, util_1.typeSymbol)(unitX, indexX) !== "H" /* Elements.H */) {
|
|
69
69
|
unitX.conformation.position(unitX.elements[indexX], tmpPosX);
|
|
70
70
|
linear_algebra_1.Vec3.sub(tmpDir2, tmpPosX, tmpPosA);
|
|
71
71
|
angles.push(linear_algebra_1.Vec3.angle(tmpDir1, tmpDir2));
|
|
@@ -92,7 +92,7 @@ function calcPlaneAngle(structure, unitA, indexA, unitB, indexB) {
|
|
|
92
92
|
(0, util_1.eachBondedAtom)(structure, unitA, indexA, function (unitX, indexX) {
|
|
93
93
|
if (ni > 1)
|
|
94
94
|
return;
|
|
95
|
-
if ((0, util_1.typeSymbol)(unitX, indexX) !== "H" /* H */) {
|
|
95
|
+
if ((0, util_1.typeSymbol)(unitX, indexX) !== "H" /* Elements.H */) {
|
|
96
96
|
unitX1 = unitX;
|
|
97
97
|
indexX1 = indexX;
|
|
98
98
|
unitX.conformation.position(unitX.elements[indexX], tmpPosX);
|
|
@@ -105,7 +105,7 @@ function calcPlaneAngle(structure, unitA, indexA, unitB, indexB) {
|
|
|
105
105
|
return;
|
|
106
106
|
if (unitX === unitA && indexX === indexA)
|
|
107
107
|
return;
|
|
108
|
-
if ((0, util_1.typeSymbol)(unitX, indexX) !== "H" /* H */) {
|
|
108
|
+
if ((0, util_1.typeSymbol)(unitX, indexX) !== "H" /* Elements.H */) {
|
|
109
109
|
unitX.conformation.position(unitX.elements[indexX], tmpPosX);
|
|
110
110
|
linear_algebra_1.Vec3.sub(neighbours[ni++], tmpPosX, tmpPosA);
|
|
111
111
|
}
|
|
@@ -37,7 +37,7 @@ var tmpConjBondItB = new structure_1.Bond.ElementBondIterator();
|
|
|
37
37
|
*/
|
|
38
38
|
function isConjugated(structure, unit, index) {
|
|
39
39
|
var element = (0, util_1.typeSymbol)(unit, index);
|
|
40
|
-
var hetero = element === "O" /* O */ || element === "N" /* N */;
|
|
40
|
+
var hetero = element === "O" /* Elements.O */ || element === "N" /* Elements.N */;
|
|
41
41
|
if (hetero && (0, util_1.bondCount)(structure, unit, index) === 4)
|
|
42
42
|
return false;
|
|
43
43
|
tmpConjBondItA.setElement(structure, unit, index);
|
|
@@ -51,8 +51,8 @@ function isConjugated(structure, unit, index) {
|
|
|
51
51
|
while (tmpConjBondItB.hasNext) {
|
|
52
52
|
var bB = tmpConjBondItB.move();
|
|
53
53
|
if (bB.order > 1) {
|
|
54
|
-
if ((elementB === "P" /* P */ || elementB === "S" /* S */) &&
|
|
55
|
-
(0, util_1.typeSymbol)(bB.otherUnit, bB.otherIndex) === "O" /* O */) {
|
|
54
|
+
if ((elementB === "P" /* Elements.P */ || elementB === "S" /* Elements.S */) &&
|
|
55
|
+
(0, util_1.typeSymbol)(bB.otherUnit, bB.otherIndex) === "O" /* Elements.O */) {
|
|
56
56
|
continue;
|
|
57
57
|
}
|
|
58
58
|
return true;
|
|
@@ -93,7 +93,7 @@ var tmpChargeBondItB = new structure_1.Bond.ElementBondIterator();
|
|
|
93
93
|
* a much simpler view and deduces one from the other
|
|
94
94
|
*/
|
|
95
95
|
function calculateHydrogensCharge(structure, unit, index, props) {
|
|
96
|
-
var hydrogenCount = (0, util_1.bondToElementCount)(structure, unit, index, "H" /* H */);
|
|
96
|
+
var hydrogenCount = (0, util_1.bondToElementCount)(structure, unit, index, "H" /* Elements.H */);
|
|
97
97
|
var element = (0, util_1.typeSymbol)(unit, index);
|
|
98
98
|
var charge = (0, util_1.formalCharge)(unit, index);
|
|
99
99
|
var assignCharge = (props.assignCharge === 'always' || (props.assignCharge === 'auto' && charge === 0));
|
|
@@ -103,21 +103,21 @@ function calculateHydrogensCharge(structure, unit, index, props) {
|
|
|
103
103
|
var conjugated = isConjugated(structure, unit, index);
|
|
104
104
|
var multiBond = (valence - degree > 0);
|
|
105
105
|
var implicitHCount = 0;
|
|
106
|
-
var geom = 8 /* Unknown */;
|
|
106
|
+
var geom = 8 /* AtomGeometry.Unknown */;
|
|
107
107
|
switch (element) {
|
|
108
|
-
case "H" /* H */:
|
|
108
|
+
case "H" /* Elements.H */:
|
|
109
109
|
if (assignCharge) {
|
|
110
110
|
if (degree === 0) {
|
|
111
111
|
charge = 1;
|
|
112
|
-
geom = 0 /* Spherical */;
|
|
112
|
+
geom = 0 /* AtomGeometry.Spherical */;
|
|
113
113
|
}
|
|
114
114
|
else if (degree === 1) {
|
|
115
115
|
charge = 0;
|
|
116
|
-
geom = 1 /* Terminal */;
|
|
116
|
+
geom = 1 /* AtomGeometry.Terminal */;
|
|
117
117
|
}
|
|
118
118
|
}
|
|
119
119
|
break;
|
|
120
|
-
case "C" /* C */:
|
|
120
|
+
case "C" /* Elements.C */:
|
|
121
121
|
// TODO: Isocyanide?
|
|
122
122
|
if (assignCharge) {
|
|
123
123
|
charge = 0; // Assume carbon always neutral
|
|
@@ -129,7 +129,7 @@ function calculateHydrogensCharge(structure, unit, index, props) {
|
|
|
129
129
|
// Carbocation is planar, carbanion is tetrahedral
|
|
130
130
|
geom = (0, geometry_1.assignGeometry)(degree + implicitHCount + Math.max(0, -charge));
|
|
131
131
|
break;
|
|
132
|
-
case "N" /* N */:
|
|
132
|
+
case "N" /* Elements.N */:
|
|
133
133
|
if (assignCharge) {
|
|
134
134
|
if (!assignH) { // Trust input H explicitly:
|
|
135
135
|
charge = valence - 3;
|
|
@@ -151,7 +151,7 @@ function calculateHydrogensCharge(structure, unit, index, props) {
|
|
|
151
151
|
while (tmpChargeBondItA.hasNext) {
|
|
152
152
|
var b = tmpChargeBondItA.move();
|
|
153
153
|
var elementB = (0, util_1.typeSymbol)(b.otherUnit, b.otherIndex);
|
|
154
|
-
if (elementB === "S" /* S */ || (0, types_1.isMetal)(elementB)) {
|
|
154
|
+
if (elementB === "S" /* Elements.S */ || (0, types_1.isMetal)(elementB)) {
|
|
155
155
|
charge = 0;
|
|
156
156
|
break;
|
|
157
157
|
}
|
|
@@ -177,7 +177,7 @@ function calculateHydrogensCharge(structure, unit, index, props) {
|
|
|
177
177
|
geom = (0, geometry_1.assignGeometry)(degree + implicitHCount + 1 - charge);
|
|
178
178
|
}
|
|
179
179
|
break;
|
|
180
|
-
case "O" /* O */:
|
|
180
|
+
case "O" /* Elements.O */:
|
|
181
181
|
if (assignCharge) {
|
|
182
182
|
if (!assignH) {
|
|
183
183
|
charge = valence - 2;
|
|
@@ -190,7 +190,7 @@ function calculateHydrogensCharge(structure, unit, index, props) {
|
|
|
190
190
|
while (tmpChargeBondItB.hasNext) {
|
|
191
191
|
var bB = tmpChargeBondItB.move();
|
|
192
192
|
if (!(bB.otherUnit === unit && bB.otherIndex === index) &&
|
|
193
|
-
(0, util_1.typeSymbol)(bB.otherUnit, bB.otherIndex) === "O" /* O */ &&
|
|
193
|
+
(0, util_1.typeSymbol)(bB.otherUnit, bB.otherIndex) === "O" /* Elements.O */ &&
|
|
194
194
|
bB.order === 2) {
|
|
195
195
|
charge = -1;
|
|
196
196
|
break b1;
|
|
@@ -214,10 +214,10 @@ function calculateHydrogensCharge(structure, unit, index, props) {
|
|
|
214
214
|
break;
|
|
215
215
|
// Only handles thiols/thiolates/thioether/sulfonium. Sulfoxides and higher
|
|
216
216
|
// oxidiation states are assumed neutral S (charge carried on O if required)
|
|
217
|
-
case "S" /* S */:
|
|
217
|
+
case "S" /* Elements.S */:
|
|
218
218
|
if (assignCharge) {
|
|
219
219
|
if (!assignH) {
|
|
220
|
-
if (valence <= 3 && (0, util_1.bondToElementCount)(structure, unit, index, "O" /* O */) === 0) {
|
|
220
|
+
if (valence <= 3 && (0, util_1.bondToElementCount)(structure, unit, index, "O" /* Elements.O */) === 0) {
|
|
221
221
|
charge = valence - 2; // e.g. explicitly deprotonated thiol
|
|
222
222
|
}
|
|
223
223
|
else {
|
|
@@ -235,32 +235,32 @@ function calculateHydrogensCharge(structure, unit, index, props) {
|
|
|
235
235
|
geom = (0, geometry_1.assignGeometry)(degree + implicitHCount - charge + 2);
|
|
236
236
|
}
|
|
237
237
|
break;
|
|
238
|
-
case "F" /* F */:
|
|
239
|
-
case "CL" /* CL */:
|
|
240
|
-
case "BR" /* BR */:
|
|
241
|
-
case "I" /* I */:
|
|
242
|
-
case "AT" /* AT */:
|
|
238
|
+
case "F" /* Elements.F */:
|
|
239
|
+
case "CL" /* Elements.CL */:
|
|
240
|
+
case "BR" /* Elements.BR */:
|
|
241
|
+
case "I" /* Elements.I */:
|
|
242
|
+
case "AT" /* Elements.AT */:
|
|
243
243
|
// Never implicitly protonate halides
|
|
244
244
|
if (assignCharge) {
|
|
245
245
|
charge = valence - 1;
|
|
246
246
|
}
|
|
247
247
|
break;
|
|
248
|
-
case "LI" /* LI */:
|
|
249
|
-
case "NA" /* NA */:
|
|
250
|
-
case "K" /* K */:
|
|
251
|
-
case "RB" /* RB */:
|
|
252
|
-
case "CS" /* CS */:
|
|
253
|
-
case "FR" /* FR */:
|
|
248
|
+
case "LI" /* Elements.LI */:
|
|
249
|
+
case "NA" /* Elements.NA */:
|
|
250
|
+
case "K" /* Elements.K */:
|
|
251
|
+
case "RB" /* Elements.RB */:
|
|
252
|
+
case "CS" /* Elements.CS */:
|
|
253
|
+
case "FR" /* Elements.FR */:
|
|
254
254
|
if (assignCharge) {
|
|
255
255
|
charge = 1 - valence;
|
|
256
256
|
}
|
|
257
257
|
break;
|
|
258
|
-
case "BE" /* BE */:
|
|
259
|
-
case "MG" /* MG */:
|
|
260
|
-
case "CA" /* CA */:
|
|
261
|
-
case "SR" /* SR */:
|
|
262
|
-
case "BA" /* BA */:
|
|
263
|
-
case "RA" /* RA */:
|
|
258
|
+
case "BE" /* Elements.BE */:
|
|
259
|
+
case "MG" /* Elements.MG */:
|
|
260
|
+
case "CA" /* Elements.CA */:
|
|
261
|
+
case "SR" /* Elements.SR */:
|
|
262
|
+
case "BA" /* Elements.BA */:
|
|
263
|
+
case "RA" /* Elements.RA */:
|
|
264
264
|
if (assignCharge) {
|
|
265
265
|
charge = 2 - valence;
|
|
266
266
|
}
|