molstar 3.8.2 → 3.10.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.
Files changed (596) hide show
  1. package/LICENSE +20 -20
  2. package/README.md +202 -202
  3. package/build/viewer/embedded.html +43 -43
  4. package/build/viewer/index.html +109 -106
  5. package/build/viewer/molstar.js +1 -1
  6. package/lib/apps/docking-viewer/index.html +36 -36
  7. package/lib/apps/viewer/app.d.ts +5 -2
  8. package/lib/apps/viewer/app.js +11 -7
  9. package/lib/apps/viewer/embedded.html +43 -43
  10. package/lib/apps/viewer/index.html +109 -106
  11. package/lib/cli/cif2bcif/converter.js +1 -1
  12. package/lib/commonjs/apps/viewer/app.d.ts +5 -2
  13. package/lib/commonjs/apps/viewer/app.js +12 -7
  14. package/lib/commonjs/cli/cif2bcif/converter.js +1 -1
  15. package/lib/commonjs/examples/alpha-orbitals/index.d.ts +1 -1
  16. package/lib/commonjs/examples/alpha-orbitals/index.js +4 -1
  17. package/lib/commonjs/examples/basic-wrapper/custom-theme.js +1 -1
  18. package/lib/commonjs/examples/proteopedia-wrapper/coloring.js +3 -3
  19. package/lib/commonjs/extensions/alpha-orbitals/density.d.ts +1 -1
  20. package/lib/commonjs/extensions/alpha-orbitals/density.js +6 -2
  21. package/lib/commonjs/extensions/alpha-orbitals/orbitals.d.ts +1 -1
  22. package/lib/commonjs/extensions/alpha-orbitals/orbitals.js +6 -3
  23. package/lib/commonjs/extensions/anvil/algorithm.js +1 -1
  24. package/lib/commonjs/extensions/cellpack/color/generate.js +1 -1
  25. package/lib/commonjs/extensions/cellpack/color/provided.js +1 -1
  26. package/lib/commonjs/extensions/cellpack/state.js +1 -1
  27. package/lib/commonjs/extensions/dnatco/confal-pyramids/color.js +1 -1
  28. package/lib/commonjs/extensions/g3d/model.js +1 -1
  29. package/lib/commonjs/extensions/geo-export/ui.js +1 -0
  30. package/lib/commonjs/extensions/model-archive/quality-assessment/color/plddt.js +1 -1
  31. package/lib/commonjs/extensions/model-archive/quality-assessment/color/qmean.js +1 -1
  32. package/lib/commonjs/extensions/mp4-export/ui.js +1 -0
  33. package/lib/commonjs/extensions/pdbe/structure-quality-report/color.js +1 -1
  34. package/lib/commonjs/extensions/rcsb/assembly-symmetry/color.js +4 -4
  35. package/lib/commonjs/extensions/rcsb/validation-report/color/density-fit.js +1 -1
  36. package/lib/commonjs/extensions/rcsb/validation-report/color/geometry-quality.js +2 -2
  37. package/lib/commonjs/extensions/rcsb/validation-report/color/random-coil-index.js +1 -1
  38. package/lib/commonjs/extensions/rcsb/validation-report/representation.js +2 -2
  39. package/lib/commonjs/mol-canvas3d/canvas3d.js +4 -0
  40. package/lib/commonjs/mol-canvas3d/controls/trackball.js +7 -7
  41. package/lib/commonjs/mol-canvas3d/helper/camera-helper.js +14 -14
  42. package/lib/commonjs/mol-canvas3d/helper/interaction-events.js +5 -5
  43. package/lib/commonjs/mol-canvas3d/passes/draw.js +34 -5
  44. package/lib/commonjs/mol-canvas3d/passes/fxaa.js +5 -0
  45. package/lib/commonjs/mol-canvas3d/passes/marking.js +5 -0
  46. package/lib/commonjs/mol-canvas3d/passes/multi-sample.js +9 -0
  47. package/lib/commonjs/mol-canvas3d/passes/pick.d.ts +18 -5
  48. package/lib/commonjs/mol-canvas3d/passes/pick.js +125 -24
  49. package/lib/commonjs/mol-canvas3d/passes/postprocessing.js +5 -0
  50. package/lib/commonjs/mol-canvas3d/passes/smaa.js +4 -0
  51. package/lib/commonjs/mol-canvas3d/passes/wboit.js +4 -0
  52. package/lib/commonjs/mol-data/db/column.js +5 -5
  53. package/lib/commonjs/mol-data/db/table.js +2 -2
  54. package/lib/commonjs/mol-data/util/array.d.ts +1 -1
  55. package/lib/commonjs/mol-geo/geometry/cylinders/cylinders.d.ts +1 -1
  56. package/lib/commonjs/mol-geo/geometry/lines/lines.d.ts +0 -1
  57. package/lib/commonjs/mol-geo/geometry/points/points.d.ts +1 -1
  58. package/lib/commonjs/mol-geo/geometry/texture-mesh/color-smoothing.js +13 -0
  59. package/lib/commonjs/mol-gl/compute/grid3d.d.ts +2 -2
  60. package/lib/commonjs/mol-gl/compute/grid3d.js +30 -8
  61. package/lib/commonjs/mol-gl/compute/histogram-pyramid/reduction.d.ts +1 -1
  62. package/lib/commonjs/mol-gl/compute/histogram-pyramid/reduction.js +6 -1
  63. package/lib/commonjs/mol-gl/compute/histogram-pyramid/sum.d.ts +1 -1
  64. package/lib/commonjs/mol-gl/compute/histogram-pyramid/sum.js +6 -1
  65. package/lib/commonjs/mol-gl/compute/marching-cubes/active-voxels.d.ts +1 -1
  66. package/lib/commonjs/mol-gl/compute/marching-cubes/active-voxels.js +6 -1
  67. package/lib/commonjs/mol-gl/compute/marching-cubes/isosurface.d.ts +1 -1
  68. package/lib/commonjs/mol-gl/compute/marching-cubes/isosurface.js +10 -10
  69. package/lib/commonjs/mol-gl/renderer.js +77 -32
  70. package/lib/commonjs/mol-gl/scene.js +2 -0
  71. package/lib/commonjs/mol-gl/shader/chunks/assign-color-varying.glsl.d.ts +1 -1
  72. package/lib/commonjs/mol-gl/shader/chunks/assign-color-varying.glsl.js +1 -1
  73. package/lib/commonjs/mol-gl/shader/chunks/assign-material-color.glsl.d.ts +1 -1
  74. package/lib/commonjs/mol-gl/shader/chunks/assign-material-color.glsl.js +1 -1
  75. package/lib/commonjs/mol-gl/shader/chunks/color-frag-params.glsl.d.ts +1 -1
  76. package/lib/commonjs/mol-gl/shader/chunks/color-frag-params.glsl.js +1 -1
  77. package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.d.ts +1 -1
  78. package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.js +1 -1
  79. package/lib/commonjs/mol-gl/shader/cylinders.frag.d.ts +1 -1
  80. package/lib/commonjs/mol-gl/shader/cylinders.frag.js +1 -1
  81. package/lib/commonjs/mol-gl/shader/direct-volume.frag.d.ts +1 -1
  82. package/lib/commonjs/mol-gl/shader/direct-volume.frag.js +1 -1
  83. package/lib/commonjs/mol-gl/shader/image.frag.d.ts +1 -1
  84. package/lib/commonjs/mol-gl/shader/image.frag.js +1 -1
  85. package/lib/commonjs/mol-gl/shader/lines.frag.d.ts +1 -1
  86. package/lib/commonjs/mol-gl/shader/lines.frag.js +1 -1
  87. package/lib/commonjs/mol-gl/shader/mesh.frag.d.ts +1 -1
  88. package/lib/commonjs/mol-gl/shader/mesh.frag.js +1 -1
  89. package/lib/commonjs/mol-gl/shader/points.frag.d.ts +1 -1
  90. package/lib/commonjs/mol-gl/shader/points.frag.js +1 -1
  91. package/lib/commonjs/mol-gl/shader/spheres.frag.d.ts +1 -1
  92. package/lib/commonjs/mol-gl/shader/spheres.frag.js +1 -1
  93. package/lib/commonjs/mol-gl/shader/text.frag.d.ts +1 -1
  94. package/lib/commonjs/mol-gl/shader/text.frag.js +1 -1
  95. package/lib/commonjs/mol-gl/shader-code.d.ts +1 -1
  96. package/lib/commonjs/mol-gl/shader-code.js +41 -9
  97. package/lib/commonjs/mol-gl/webgl/compat.d.ts +34 -1
  98. package/lib/commonjs/mol-gl/webgl/compat.js +50 -2
  99. package/lib/commonjs/mol-gl/webgl/context.d.ts +2 -0
  100. package/lib/commonjs/mol-gl/webgl/context.js +3 -0
  101. package/lib/commonjs/mol-gl/webgl/extensions.d.ts +3 -2
  102. package/lib/commonjs/mol-gl/webgl/extensions.js +6 -1
  103. package/lib/commonjs/mol-gl/webgl/timer.d.ts +22 -0
  104. package/lib/commonjs/mol-gl/webgl/timer.js +169 -0
  105. package/lib/commonjs/mol-io/common/binary-cif/array-encoder.js +18 -18
  106. package/lib/commonjs/mol-io/common/binary-cif/decoder.js +16 -16
  107. package/lib/commonjs/mol-io/common/binary-cif/encoding.js +9 -9
  108. package/lib/commonjs/mol-io/reader/cif/binary/field.js +3 -3
  109. package/lib/commonjs/mol-io/reader/cif/data-model.js +14 -14
  110. package/lib/commonjs/mol-io/reader/cif/schema.js +1 -1
  111. package/lib/commonjs/mol-io/reader/cif/text/parser.js +23 -23
  112. package/lib/commonjs/mol-io/reader/common/text/column/fixed.js +1 -1
  113. package/lib/commonjs/mol-io/reader/common/text/column/token.js +1 -1
  114. package/lib/commonjs/mol-io/reader/common/text/number-parser.js +6 -6
  115. package/lib/commonjs/mol-io/reader/csv/parser.js +8 -8
  116. package/lib/commonjs/mol-io/writer/cif/encoder/binary.js +10 -10
  117. package/lib/commonjs/mol-io/writer/cif/encoder/text.js +7 -7
  118. package/lib/commonjs/mol-io/writer/cif/encoder.js +8 -8
  119. package/lib/commonjs/mol-io/writer/mol2/encoder.js +4 -4
  120. package/lib/commonjs/mol-math/geometry/gaussian-density/gpu.js +13 -2
  121. package/lib/commonjs/mol-model/sequence/alignment/sequence.js +3 -3
  122. package/lib/commonjs/mol-model/sequence/sequence.js +9 -9
  123. package/lib/commonjs/mol-model/structure/export/categories/atom_site_operator_mapping.js +3 -3
  124. package/lib/commonjs/mol-model/structure/export/categories/secondary-structure.js +2 -2
  125. package/lib/commonjs/mol-model/structure/export/categories/utils.js +1 -1
  126. package/lib/commonjs/mol-model/structure/model/model.js +2 -2
  127. package/lib/commonjs/mol-model/structure/model/properties/custom/indexed.js +6 -6
  128. package/lib/commonjs/mol-model/structure/model/properties/utils/atomic-ranges.js +1 -1
  129. package/lib/commonjs/mol-model/structure/model/types.js +116 -116
  130. package/lib/commonjs/mol-model/structure/query/context.js +1 -1
  131. package/lib/commonjs/mol-model/structure/query/queries/generators.js +5 -5
  132. package/lib/commonjs/mol-model/structure/query/queries/internal.js +4 -4
  133. package/lib/commonjs/mol-model/structure/query/queries/modifiers.js +4 -4
  134. package/lib/commonjs/mol-model/structure/query/utils/structure-distance.d.ts +5 -54
  135. package/lib/commonjs/mol-model/structure/query/utils/structure-distance.js +9 -9
  136. package/lib/commonjs/mol-model/structure/structure/carbohydrates/constants.d.ts +3 -1
  137. package/lib/commonjs/mol-model/structure/structure/carbohydrates/constants.js +192 -108
  138. package/lib/commonjs/mol-model/structure/structure/element/loci.js +5 -5
  139. package/lib/commonjs/mol-model/structure/structure/element/stats.js +5 -5
  140. package/lib/commonjs/mol-model/structure/structure/properties.js +5 -5
  141. package/lib/commonjs/mol-model/structure/structure/structure.js +11 -11
  142. package/lib/commonjs/mol-model/structure/structure/unit/bonds/inter-compute.js +5 -5
  143. package/lib/commonjs/mol-model/structure/structure/unit/bonds/intra-compute.js +4 -4
  144. package/lib/commonjs/mol-model/structure/structure/unit/bonds.js +2 -2
  145. package/lib/commonjs/mol-model/structure/structure/unit/resonance.js +1 -1
  146. package/lib/commonjs/mol-model/structure/structure/unit/rings/compute.js +6 -6
  147. package/lib/commonjs/mol-model/structure/structure/unit/rings.js +6 -6
  148. package/lib/commonjs/mol-model/structure/structure/unit.js +16 -16
  149. package/lib/commonjs/mol-model/structure/structure/util/superposition-sifts-mapping.js +1 -1
  150. package/lib/commonjs/mol-model/structure/util.js +4 -4
  151. package/lib/commonjs/mol-model-formats/structure/basic/atomic.js +2 -2
  152. package/lib/commonjs/mol-model-formats/structure/basic/parser.js +4 -4
  153. package/lib/commonjs/mol-model-formats/structure/basic/properties.js +1 -1
  154. package/lib/commonjs/mol-model-formats/structure/basic/sort.js +1 -1
  155. package/lib/commonjs/mol-model-formats/structure/basic/util.js +1 -1
  156. package/lib/commonjs/mol-model-formats/structure/cif-core.js +6 -6
  157. package/lib/commonjs/mol-model-formats/structure/common/entity.js +1 -1
  158. package/lib/commonjs/mol-model-formats/structure/cube.js +1 -1
  159. package/lib/commonjs/mol-model-formats/structure/gro.js +1 -1
  160. package/lib/commonjs/mol-model-formats/structure/mol.js +1 -1
  161. package/lib/commonjs/mol-model-formats/structure/mol2.js +4 -4
  162. package/lib/commonjs/mol-model-formats/structure/prmtop.js +1 -1
  163. package/lib/commonjs/mol-model-formats/structure/property/bonds/chem_comp.js +3 -3
  164. package/lib/commonjs/mol-model-formats/structure/property/bonds/index-pair.js +1 -1
  165. package/lib/commonjs/mol-model-formats/structure/property/bonds/struct_conn.js +6 -6
  166. package/lib/commonjs/mol-model-formats/structure/property/secondary-structure.js +8 -8
  167. package/lib/commonjs/mol-model-formats/structure/psf.js +1 -1
  168. package/lib/commonjs/mol-model-formats/structure/top.js +1 -1
  169. package/lib/commonjs/mol-model-formats/structure/xyz.js +1 -1
  170. package/lib/commonjs/mol-model-props/computed/accessible-surface-area/shrake-rupley/radii.js +2 -2
  171. package/lib/commonjs/mol-model-props/computed/accessible-surface-area/shrake-rupley.js +3 -3
  172. package/lib/commonjs/mol-model-props/computed/accessible-surface-area.js +2 -2
  173. package/lib/commonjs/mol-model-props/computed/chemistry/functional-group.js +31 -31
  174. package/lib/commonjs/mol-model-props/computed/chemistry/geometry.js +22 -22
  175. package/lib/commonjs/mol-model-props/computed/chemistry/valence-model.js +32 -32
  176. package/lib/commonjs/mol-model-props/computed/interactions/charged.js +39 -39
  177. package/lib/commonjs/mol-model-props/computed/interactions/common.js +34 -34
  178. package/lib/commonjs/mol-model-props/computed/interactions/contacts-builder.js +1 -1
  179. package/lib/commonjs/mol-model-props/computed/interactions/contacts.js +1 -1
  180. package/lib/commonjs/mol-model-props/computed/interactions/halogen-bonds.js +12 -12
  181. package/lib/commonjs/mol-model-props/computed/interactions/hydrogen-bonds.js +32 -32
  182. package/lib/commonjs/mol-model-props/computed/interactions/hydrophobic.js +9 -9
  183. package/lib/commonjs/mol-model-props/computed/interactions/metal.js +26 -26
  184. package/lib/commonjs/mol-model-props/computed/interactions/refine.js +20 -20
  185. package/lib/commonjs/mol-model-props/computed/representations/interactions-inter-unit-cylinder.js +2 -2
  186. package/lib/commonjs/mol-model-props/computed/representations/interactions-intra-unit-cylinder.js +2 -2
  187. package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/bends.js +1 -1
  188. package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/bridges.js +12 -12
  189. package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/helices.js +6 -6
  190. package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/ladders.js +3 -3
  191. package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/sheets.js +11 -11
  192. package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/turns.js +3 -3
  193. package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp.js +30 -30
  194. package/lib/commonjs/mol-model-props/computed/themes/accessible-surface-area.js +1 -1
  195. package/lib/commonjs/mol-model-props/computed/themes/interaction-type.js +10 -10
  196. package/lib/commonjs/mol-model-props/integrative/cross-link-restraint/color.js +1 -1
  197. package/lib/commonjs/mol-model-props/integrative/cross-link-restraint/format.js +3 -3
  198. package/lib/commonjs/mol-model-props/sequence/sifts-mapping.js +1 -1
  199. package/lib/commonjs/mol-model-props/sequence/themes/sifts-mapping.js +1 -1
  200. package/lib/commonjs/mol-plugin/animation-loop.d.ts +2 -1
  201. package/lib/commonjs/mol-plugin/animation-loop.js +18 -5
  202. package/lib/commonjs/mol-plugin/behavior/dynamic/camera.js +12 -12
  203. package/lib/commonjs/mol-plugin/behavior/dynamic/representation.js +7 -7
  204. package/lib/commonjs/mol-plugin/behavior/dynamic/volume-streaming/model.d.ts +2 -3
  205. package/lib/commonjs/mol-plugin/config.d.ts +3 -0
  206. package/lib/commonjs/mol-plugin/config.js +3 -1
  207. package/lib/commonjs/mol-plugin/context.d.ts +2 -2
  208. package/lib/commonjs/mol-plugin/context.js +3 -0
  209. package/lib/commonjs/mol-plugin/state.d.ts +1 -14
  210. package/lib/commonjs/mol-plugin-state/formats/volume.d.ts +12 -11
  211. package/lib/commonjs/mol-plugin-state/formats/volume.js +20 -13
  212. package/lib/commonjs/mol-plugin-state/helpers/structure-selection-query.js +5 -5
  213. package/lib/commonjs/mol-plugin-state/transforms/representation.js +2 -2
  214. package/lib/commonjs/mol-plugin-ui/controls/parameters.d.ts +1 -1
  215. package/lib/commonjs/mol-plugin-ui/controls.js +1 -1
  216. package/lib/commonjs/mol-plugin-ui/sequence/polymer.js +1 -1
  217. package/lib/commonjs/mol-plugin-ui/sequence/sequence.js +1 -1
  218. package/lib/commonjs/mol-plugin-ui/state/snapshots.js +1 -0
  219. package/lib/commonjs/mol-plugin-ui/structure/focus.js +1 -1
  220. package/lib/commonjs/mol-plugin-ui/viewport/screenshot.js +1 -0
  221. package/lib/commonjs/mol-plugin-ui/viewport.d.ts +2 -2
  222. package/lib/commonjs/mol-repr/shape/representation.d.ts +1 -1
  223. package/lib/commonjs/mol-repr/shape/representation.js +2 -1
  224. package/lib/commonjs/mol-repr/structure/complex-visual.d.ts +1 -1
  225. package/lib/commonjs/mol-repr/structure/complex-visual.js +2 -1
  226. package/lib/commonjs/mol-repr/structure/units-visual.d.ts +1 -1
  227. package/lib/commonjs/mol-repr/structure/units-visual.js +2 -1
  228. package/lib/commonjs/mol-repr/structure/visual/bond-inter-unit-cylinder.js +10 -10
  229. package/lib/commonjs/mol-repr/structure/visual/bond-inter-unit-line.js +10 -10
  230. package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-cylinder.js +12 -15
  231. package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-line.js +12 -15
  232. package/lib/commonjs/mol-repr/structure/visual/carbohydrate-symbol-mesh.js +16 -16
  233. package/lib/commonjs/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.js +1 -1
  234. package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-mesh.js +9 -0
  235. package/lib/commonjs/mol-repr/structure/visual/orientation-ellipsoid-mesh.js +4 -4
  236. package/lib/commonjs/mol-repr/structure/visual/polymer-direction-wedge.js +1 -1
  237. package/lib/commonjs/mol-repr/structure/visual/polymer-trace-mesh.js +2 -2
  238. package/lib/commonjs/mol-repr/structure/visual/util/bond.js +2 -2
  239. package/lib/commonjs/mol-repr/structure/visual/util/common.js +3 -3
  240. package/lib/commonjs/mol-repr/structure/visual/util/link.js +30 -30
  241. package/lib/commonjs/mol-repr/structure/visual/util/polymer/backbone.js +6 -6
  242. package/lib/commonjs/mol-repr/structure/visual/util/polymer/gap-iterator.js +3 -3
  243. package/lib/commonjs/mol-repr/structure/visual/util/polymer/trace-iterator.js +20 -20
  244. package/lib/commonjs/mol-repr/structure/visual/util/polymer.js +6 -6
  245. package/lib/commonjs/mol-repr/volume/representation.d.ts +1 -1
  246. package/lib/commonjs/mol-repr/volume/representation.js +2 -1
  247. package/lib/commonjs/mol-script/language/builder.d.ts +1 -0
  248. package/lib/commonjs/mol-script/language/symbol-table/core.d.ts +2 -2
  249. package/lib/commonjs/mol-script/runtime/query/table.js +13 -13
  250. package/lib/commonjs/mol-state/object.d.ts +3 -3
  251. package/lib/commonjs/mol-task/util/user-timing.js +1 -1
  252. package/lib/commonjs/mol-theme/clipping.js +19 -19
  253. package/lib/commonjs/mol-theme/color/atom-id.js +1 -1
  254. package/lib/commonjs/mol-theme/color/carbohydrate-symbol.js +1 -1
  255. package/lib/commonjs/mol-theme/color/chain-id.js +4 -4
  256. package/lib/commonjs/mol-theme/color/element-index.js +1 -1
  257. package/lib/commonjs/mol-theme/color/element-symbol.js +1 -1
  258. package/lib/commonjs/mol-theme/color/entity-id.js +4 -4
  259. package/lib/commonjs/mol-theme/color/entity-source.js +5 -4
  260. package/lib/commonjs/mol-theme/color/hydrophobicity.js +1 -1
  261. package/lib/commonjs/mol-theme/color/illustrative.js +1 -1
  262. package/lib/commonjs/mol-theme/color/model-index.js +1 -1
  263. package/lib/commonjs/mol-theme/color/molecule-type.js +8 -8
  264. package/lib/commonjs/mol-theme/color/occupancy.js +1 -1
  265. package/lib/commonjs/mol-theme/color/operator-hkl.js +1 -1
  266. package/lib/commonjs/mol-theme/color/operator-name.js +1 -1
  267. package/lib/commonjs/mol-theme/color/partial-charge.js +1 -1
  268. package/lib/commonjs/mol-theme/color/polymer-id.js +4 -4
  269. package/lib/commonjs/mol-theme/color/polymer-index.js +1 -1
  270. package/lib/commonjs/mol-theme/color/residue-name.js +1 -1
  271. package/lib/commonjs/mol-theme/color/secondary-structure.js +12 -12
  272. package/lib/commonjs/mol-theme/color/sequence-id.js +7 -7
  273. package/lib/commonjs/mol-theme/color/shape-group.js +1 -1
  274. package/lib/commonjs/mol-theme/color/uncertainty.js +1 -1
  275. package/lib/commonjs/mol-theme/color/uniform.js +1 -1
  276. package/lib/commonjs/mol-theme/color/unit-index.js +1 -1
  277. package/lib/commonjs/mol-theme/color/volume-value.js +1 -1
  278. package/lib/commonjs/mol-theme/label.js +3 -3
  279. package/lib/commonjs/mol-util/binding.js +4 -4
  280. package/lib/commonjs/mol-util/debug.d.ts +6 -1
  281. package/lib/commonjs/mol-util/debug.js +11 -1
  282. package/lib/commonjs/mol-util/input/input-observer.js +20 -20
  283. package/lib/commonjs/mol-util/string-builder.js +1 -1
  284. package/lib/commonjs/servers/model/preprocess/converter.js +1 -1
  285. package/lib/commonjs/servers/model/server/query.js +1 -1
  286. package/lib/commonjs/servers/model/utils/fetch-retry.js +3 -2
  287. package/lib/commonjs/servers/volume/server/algebra/coordinate.js +6 -6
  288. package/lib/commonjs/servers/volume/server/query/encode.js +1 -1
  289. package/lib/examples/alpha-orbitals/index.d.ts +1 -1
  290. package/lib/examples/alpha-orbitals/index.html +72 -61
  291. package/lib/examples/alpha-orbitals/index.js +4 -1
  292. package/lib/examples/basic-wrapper/custom-theme.js +1 -1
  293. package/lib/examples/basic-wrapper/index.html +137 -137
  294. package/lib/examples/lighting/index.html +88 -88
  295. package/lib/examples/proteopedia-wrapper/coloring.js +3 -3
  296. package/lib/examples/proteopedia-wrapper/index.html +236 -236
  297. package/lib/extensions/alpha-orbitals/density.d.ts +1 -1
  298. package/lib/extensions/alpha-orbitals/density.js +6 -2
  299. package/lib/extensions/alpha-orbitals/orbitals.d.ts +1 -1
  300. package/lib/extensions/alpha-orbitals/orbitals.js +6 -3
  301. package/lib/extensions/anvil/algorithm.js +1 -1
  302. package/lib/extensions/cellpack/color/generate.js +1 -1
  303. package/lib/extensions/cellpack/color/provided.js +1 -1
  304. package/lib/extensions/cellpack/state.js +1 -1
  305. package/lib/extensions/dnatco/confal-pyramids/color.js +1 -1
  306. package/lib/extensions/g3d/model.js +1 -1
  307. package/lib/extensions/geo-export/ui.js +1 -0
  308. package/lib/extensions/model-archive/quality-assessment/color/plddt.js +1 -1
  309. package/lib/extensions/model-archive/quality-assessment/color/qmean.js +1 -1
  310. package/lib/extensions/mp4-export/ui.js +1 -0
  311. package/lib/extensions/pdbe/structure-quality-report/color.js +1 -1
  312. package/lib/extensions/rcsb/assembly-symmetry/color.js +4 -4
  313. package/lib/extensions/rcsb/validation-report/color/density-fit.js +1 -1
  314. package/lib/extensions/rcsb/validation-report/color/geometry-quality.js +2 -2
  315. package/lib/extensions/rcsb/validation-report/color/random-coil-index.js +1 -1
  316. package/lib/extensions/rcsb/validation-report/representation.js +2 -2
  317. package/lib/mol-canvas3d/canvas3d.js +5 -1
  318. package/lib/mol-canvas3d/controls/trackball.js +7 -7
  319. package/lib/mol-canvas3d/helper/camera-helper.js +14 -14
  320. package/lib/mol-canvas3d/helper/interaction-events.js +5 -5
  321. package/lib/mol-canvas3d/passes/draw.js +34 -5
  322. package/lib/mol-canvas3d/passes/fxaa.js +5 -0
  323. package/lib/mol-canvas3d/passes/marking.js +5 -0
  324. package/lib/mol-canvas3d/passes/multi-sample.js +9 -0
  325. package/lib/mol-canvas3d/passes/pick.d.ts +18 -5
  326. package/lib/mol-canvas3d/passes/pick.js +125 -24
  327. package/lib/mol-canvas3d/passes/postprocessing.js +5 -0
  328. package/lib/mol-canvas3d/passes/smaa.js +5 -1
  329. package/lib/mol-canvas3d/passes/wboit.js +5 -1
  330. package/lib/mol-data/db/column.js +5 -5
  331. package/lib/mol-data/db/table.js +2 -2
  332. package/lib/mol-data/util/array.d.ts +1 -1
  333. package/lib/mol-geo/geometry/cylinders/cylinders.d.ts +1 -1
  334. package/lib/mol-geo/geometry/lines/lines.d.ts +0 -1
  335. package/lib/mol-geo/geometry/points/points.d.ts +1 -1
  336. package/lib/mol-geo/geometry/texture-mesh/color-smoothing.js +13 -0
  337. package/lib/mol-gl/compute/grid3d.d.ts +2 -2
  338. package/lib/mol-gl/compute/grid3d.js +30 -8
  339. package/lib/mol-gl/compute/histogram-pyramid/reduction.d.ts +1 -1
  340. package/lib/mol-gl/compute/histogram-pyramid/reduction.js +6 -1
  341. package/lib/mol-gl/compute/histogram-pyramid/sum.d.ts +1 -1
  342. package/lib/mol-gl/compute/histogram-pyramid/sum.js +6 -1
  343. package/lib/mol-gl/compute/marching-cubes/active-voxels.d.ts +1 -1
  344. package/lib/mol-gl/compute/marching-cubes/active-voxels.js +6 -1
  345. package/lib/mol-gl/compute/marching-cubes/isosurface.d.ts +1 -1
  346. package/lib/mol-gl/compute/marching-cubes/isosurface.js +10 -10
  347. package/lib/mol-gl/renderer.js +77 -32
  348. package/lib/mol-gl/scene.js +2 -0
  349. package/lib/mol-gl/shader/chunks/assign-color-varying.glsl.d.ts +1 -1
  350. package/lib/mol-gl/shader/chunks/assign-color-varying.glsl.js +1 -1
  351. package/lib/mol-gl/shader/chunks/assign-material-color.glsl.d.ts +1 -1
  352. package/lib/mol-gl/shader/chunks/assign-material-color.glsl.js +1 -1
  353. package/lib/mol-gl/shader/chunks/color-frag-params.glsl.d.ts +1 -1
  354. package/lib/mol-gl/shader/chunks/color-frag-params.glsl.js +1 -1
  355. package/lib/mol-gl/shader/chunks/color-vert-params.glsl.d.ts +1 -1
  356. package/lib/mol-gl/shader/chunks/color-vert-params.glsl.js +1 -1
  357. package/lib/mol-gl/shader/cylinders.frag.d.ts +1 -1
  358. package/lib/mol-gl/shader/cylinders.frag.js +1 -1
  359. package/lib/mol-gl/shader/direct-volume.frag.d.ts +1 -1
  360. package/lib/mol-gl/shader/direct-volume.frag.js +1 -1
  361. package/lib/mol-gl/shader/image.frag.d.ts +1 -1
  362. package/lib/mol-gl/shader/image.frag.js +1 -1
  363. package/lib/mol-gl/shader/lines.frag.d.ts +1 -1
  364. package/lib/mol-gl/shader/lines.frag.js +1 -1
  365. package/lib/mol-gl/shader/mesh.frag.d.ts +1 -1
  366. package/lib/mol-gl/shader/mesh.frag.js +1 -1
  367. package/lib/mol-gl/shader/points.frag.d.ts +1 -1
  368. package/lib/mol-gl/shader/points.frag.js +1 -1
  369. package/lib/mol-gl/shader/spheres.frag.d.ts +1 -1
  370. package/lib/mol-gl/shader/spheres.frag.js +1 -1
  371. package/lib/mol-gl/shader/text.frag.d.ts +1 -1
  372. package/lib/mol-gl/shader/text.frag.js +1 -1
  373. package/lib/mol-gl/shader-code.d.ts +1 -1
  374. package/lib/mol-gl/shader-code.js +41 -9
  375. package/lib/mol-gl/webgl/compat.d.ts +34 -1
  376. package/lib/mol-gl/webgl/compat.js +48 -1
  377. package/lib/mol-gl/webgl/context.d.ts +2 -0
  378. package/lib/mol-gl/webgl/context.js +3 -0
  379. package/lib/mol-gl/webgl/extensions.d.ts +3 -2
  380. package/lib/mol-gl/webgl/extensions.js +7 -2
  381. package/lib/mol-gl/webgl/timer.d.ts +22 -0
  382. package/lib/mol-gl/webgl/timer.js +164 -0
  383. package/lib/mol-io/common/binary-cif/array-encoder.js +18 -18
  384. package/lib/mol-io/common/binary-cif/decoder.js +16 -16
  385. package/lib/mol-io/common/binary-cif/encoding.js +9 -9
  386. package/lib/mol-io/reader/cif/binary/field.js +3 -3
  387. package/lib/mol-io/reader/cif/data-model.js +14 -14
  388. package/lib/mol-io/reader/cif/schema.js +1 -1
  389. package/lib/mol-io/reader/cif/text/parser.js +23 -23
  390. package/lib/mol-io/reader/common/text/column/fixed.js +1 -1
  391. package/lib/mol-io/reader/common/text/column/token.js +1 -1
  392. package/lib/mol-io/reader/common/text/number-parser.js +6 -6
  393. package/lib/mol-io/reader/csv/parser.js +8 -8
  394. package/lib/mol-io/writer/cif/encoder/binary.js +10 -10
  395. package/lib/mol-io/writer/cif/encoder/text.js +7 -7
  396. package/lib/mol-io/writer/cif/encoder.js +8 -8
  397. package/lib/mol-io/writer/mol2/encoder.js +4 -4
  398. package/lib/mol-math/geometry/gaussian-density/gpu.js +13 -2
  399. package/lib/mol-model/sequence/alignment/sequence.js +3 -3
  400. package/lib/mol-model/sequence/sequence.js +9 -9
  401. package/lib/mol-model/structure/export/categories/atom_site_operator_mapping.js +3 -3
  402. package/lib/mol-model/structure/export/categories/secondary-structure.js +2 -2
  403. package/lib/mol-model/structure/export/categories/utils.js +1 -1
  404. package/lib/mol-model/structure/model/model.js +2 -2
  405. package/lib/mol-model/structure/model/properties/custom/indexed.js +6 -6
  406. package/lib/mol-model/structure/model/properties/utils/atomic-ranges.js +1 -1
  407. package/lib/mol-model/structure/model/types.js +116 -116
  408. package/lib/mol-model/structure/query/context.js +1 -1
  409. package/lib/mol-model/structure/query/queries/generators.js +5 -5
  410. package/lib/mol-model/structure/query/queries/internal.js +4 -4
  411. package/lib/mol-model/structure/query/queries/modifiers.js +4 -4
  412. package/lib/mol-model/structure/query/utils/structure-distance.d.ts +5 -54
  413. package/lib/mol-model/structure/query/utils/structure-distance.js +9 -9
  414. package/lib/mol-model/structure/structure/carbohydrates/constants.d.ts +3 -1
  415. package/lib/mol-model/structure/structure/carbohydrates/constants.js +190 -107
  416. package/lib/mol-model/structure/structure/element/loci.js +5 -5
  417. package/lib/mol-model/structure/structure/element/stats.js +5 -5
  418. package/lib/mol-model/structure/structure/properties.js +5 -5
  419. package/lib/mol-model/structure/structure/structure.js +11 -11
  420. package/lib/mol-model/structure/structure/unit/bonds/inter-compute.js +5 -5
  421. package/lib/mol-model/structure/structure/unit/bonds/intra-compute.js +4 -4
  422. package/lib/mol-model/structure/structure/unit/bonds.js +2 -2
  423. package/lib/mol-model/structure/structure/unit/resonance.js +1 -1
  424. package/lib/mol-model/structure/structure/unit/rings/compute.js +6 -6
  425. package/lib/mol-model/structure/structure/unit/rings.js +6 -6
  426. package/lib/mol-model/structure/structure/unit.js +16 -16
  427. package/lib/mol-model/structure/structure/util/superposition-sifts-mapping.js +1 -1
  428. package/lib/mol-model/structure/util.js +4 -4
  429. package/lib/mol-model-formats/structure/basic/atomic.js +2 -2
  430. package/lib/mol-model-formats/structure/basic/parser.js +4 -4
  431. package/lib/mol-model-formats/structure/basic/properties.js +1 -1
  432. package/lib/mol-model-formats/structure/basic/sort.js +1 -1
  433. package/lib/mol-model-formats/structure/basic/util.js +1 -1
  434. package/lib/mol-model-formats/structure/cif-core.js +6 -6
  435. package/lib/mol-model-formats/structure/common/entity.js +1 -1
  436. package/lib/mol-model-formats/structure/cube.js +1 -1
  437. package/lib/mol-model-formats/structure/gro.js +1 -1
  438. package/lib/mol-model-formats/structure/mol.js +1 -1
  439. package/lib/mol-model-formats/structure/mol2.js +4 -4
  440. package/lib/mol-model-formats/structure/prmtop.js +1 -1
  441. package/lib/mol-model-formats/structure/property/bonds/chem_comp.js +3 -3
  442. package/lib/mol-model-formats/structure/property/bonds/index-pair.js +1 -1
  443. package/lib/mol-model-formats/structure/property/bonds/struct_conn.js +6 -6
  444. package/lib/mol-model-formats/structure/property/secondary-structure.js +8 -8
  445. package/lib/mol-model-formats/structure/psf.js +1 -1
  446. package/lib/mol-model-formats/structure/top.js +1 -1
  447. package/lib/mol-model-formats/structure/xyz.js +1 -1
  448. package/lib/mol-model-props/computed/accessible-surface-area/shrake-rupley/radii.js +2 -2
  449. package/lib/mol-model-props/computed/accessible-surface-area/shrake-rupley.js +3 -3
  450. package/lib/mol-model-props/computed/accessible-surface-area.js +2 -2
  451. package/lib/mol-model-props/computed/chemistry/functional-group.js +31 -31
  452. package/lib/mol-model-props/computed/chemistry/geometry.js +22 -22
  453. package/lib/mol-model-props/computed/chemistry/valence-model.js +32 -32
  454. package/lib/mol-model-props/computed/interactions/charged.js +39 -39
  455. package/lib/mol-model-props/computed/interactions/common.js +34 -34
  456. package/lib/mol-model-props/computed/interactions/contacts-builder.js +1 -1
  457. package/lib/mol-model-props/computed/interactions/contacts.js +1 -1
  458. package/lib/mol-model-props/computed/interactions/halogen-bonds.js +12 -12
  459. package/lib/mol-model-props/computed/interactions/hydrogen-bonds.js +32 -32
  460. package/lib/mol-model-props/computed/interactions/hydrophobic.js +9 -9
  461. package/lib/mol-model-props/computed/interactions/metal.js +26 -26
  462. package/lib/mol-model-props/computed/interactions/refine.js +20 -20
  463. package/lib/mol-model-props/computed/representations/interactions-inter-unit-cylinder.js +2 -2
  464. package/lib/mol-model-props/computed/representations/interactions-intra-unit-cylinder.js +2 -2
  465. package/lib/mol-model-props/computed/secondary-structure/dssp/bends.js +1 -1
  466. package/lib/mol-model-props/computed/secondary-structure/dssp/bridges.js +12 -12
  467. package/lib/mol-model-props/computed/secondary-structure/dssp/helices.js +6 -6
  468. package/lib/mol-model-props/computed/secondary-structure/dssp/ladders.js +3 -3
  469. package/lib/mol-model-props/computed/secondary-structure/dssp/sheets.js +11 -11
  470. package/lib/mol-model-props/computed/secondary-structure/dssp/turns.js +3 -3
  471. package/lib/mol-model-props/computed/secondary-structure/dssp.js +30 -30
  472. package/lib/mol-model-props/computed/themes/accessible-surface-area.js +1 -1
  473. package/lib/mol-model-props/computed/themes/interaction-type.js +10 -10
  474. package/lib/mol-model-props/integrative/cross-link-restraint/color.js +1 -1
  475. package/lib/mol-model-props/integrative/cross-link-restraint/format.js +3 -3
  476. package/lib/mol-model-props/sequence/sifts-mapping.js +1 -1
  477. package/lib/mol-model-props/sequence/themes/sifts-mapping.js +1 -1
  478. package/lib/mol-plugin/animation-loop.d.ts +2 -1
  479. package/lib/mol-plugin/animation-loop.js +18 -5
  480. package/lib/mol-plugin/behavior/dynamic/camera.js +12 -12
  481. package/lib/mol-plugin/behavior/dynamic/representation.js +7 -7
  482. package/lib/mol-plugin/behavior/dynamic/volume-streaming/model.d.ts +2 -3
  483. package/lib/mol-plugin/config.d.ts +3 -0
  484. package/lib/mol-plugin/config.js +3 -1
  485. package/lib/mol-plugin/context.d.ts +2 -2
  486. package/lib/mol-plugin/context.js +3 -0
  487. package/lib/mol-plugin/state.d.ts +1 -14
  488. package/lib/mol-plugin/version.js +2 -2
  489. package/lib/mol-plugin-state/formats/volume.d.ts +12 -11
  490. package/lib/mol-plugin-state/formats/volume.js +20 -13
  491. package/lib/mol-plugin-state/helpers/structure-selection-query.js +5 -5
  492. package/lib/mol-plugin-state/transforms/representation.js +2 -2
  493. package/lib/mol-plugin-ui/controls/parameters.d.ts +1 -1
  494. package/lib/mol-plugin-ui/controls.js +1 -1
  495. package/lib/mol-plugin-ui/sequence/polymer.js +1 -1
  496. package/lib/mol-plugin-ui/sequence/sequence.js +1 -1
  497. package/lib/mol-plugin-ui/skin/base/base.scss +32 -32
  498. package/lib/mol-plugin-ui/skin/base/components/controls-base.scss +333 -333
  499. package/lib/mol-plugin-ui/skin/base/components/controls.scss +418 -418
  500. package/lib/mol-plugin-ui/skin/base/components/help.scss +27 -27
  501. package/lib/mol-plugin-ui/skin/base/components/line-graph.scss +67 -67
  502. package/lib/mol-plugin-ui/skin/base/components/log.scss +100 -100
  503. package/lib/mol-plugin-ui/skin/base/components/misc.scss +643 -643
  504. package/lib/mol-plugin-ui/skin/base/components/sequence.scss +125 -125
  505. package/lib/mol-plugin-ui/skin/base/components/slider.scss +165 -165
  506. package/lib/mol-plugin-ui/skin/base/components/tasks.scss +99 -99
  507. package/lib/mol-plugin-ui/skin/base/components/toast.scss +83 -83
  508. package/lib/mol-plugin-ui/skin/base/components/transformer.scss +163 -163
  509. package/lib/mol-plugin-ui/skin/base/components/viewport.scss +128 -128
  510. package/lib/mol-plugin-ui/skin/base/layout/common.scss +71 -71
  511. package/lib/mol-plugin-ui/skin/base/layout/controls-landscape.scss +89 -89
  512. package/lib/mol-plugin-ui/skin/base/layout/controls-outside.scss +98 -98
  513. package/lib/mol-plugin-ui/skin/base/layout/controls-portrait.scss +108 -108
  514. package/lib/mol-plugin-ui/skin/base/layout.scss +40 -40
  515. package/lib/mol-plugin-ui/skin/base/logo.scss +12 -12
  516. package/lib/mol-plugin-ui/skin/base/normalize.scss +209 -209
  517. package/lib/mol-plugin-ui/skin/base/ui.scss +40 -40
  518. package/lib/mol-plugin-ui/skin/base/variables.scss +85 -85
  519. package/lib/mol-plugin-ui/skin/blue.scss +1 -1
  520. package/lib/mol-plugin-ui/skin/colors/blue.scss +23 -23
  521. package/lib/mol-plugin-ui/skin/colors/dark.scss +23 -23
  522. package/lib/mol-plugin-ui/skin/colors/light.scss +29 -29
  523. package/lib/mol-plugin-ui/skin/dark.scss +1 -1
  524. package/lib/mol-plugin-ui/skin/light.scss +1 -1
  525. package/lib/mol-plugin-ui/state/snapshots.js +1 -0
  526. package/lib/mol-plugin-ui/structure/focus.js +1 -1
  527. package/lib/mol-plugin-ui/viewport/screenshot.js +1 -0
  528. package/lib/mol-plugin-ui/viewport.d.ts +2 -2
  529. package/lib/mol-repr/shape/representation.d.ts +1 -1
  530. package/lib/mol-repr/shape/representation.js +2 -1
  531. package/lib/mol-repr/structure/complex-visual.d.ts +1 -1
  532. package/lib/mol-repr/structure/complex-visual.js +2 -1
  533. package/lib/mol-repr/structure/units-visual.d.ts +1 -1
  534. package/lib/mol-repr/structure/units-visual.js +2 -1
  535. package/lib/mol-repr/structure/visual/bond-inter-unit-cylinder.js +10 -10
  536. package/lib/mol-repr/structure/visual/bond-inter-unit-line.js +10 -10
  537. package/lib/mol-repr/structure/visual/bond-intra-unit-cylinder.js +12 -15
  538. package/lib/mol-repr/structure/visual/bond-intra-unit-line.js +12 -15
  539. package/lib/mol-repr/structure/visual/carbohydrate-symbol-mesh.js +16 -16
  540. package/lib/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.js +1 -1
  541. package/lib/mol-repr/structure/visual/gaussian-surface-mesh.js +9 -0
  542. package/lib/mol-repr/structure/visual/orientation-ellipsoid-mesh.js +4 -4
  543. package/lib/mol-repr/structure/visual/polymer-direction-wedge.js +1 -1
  544. package/lib/mol-repr/structure/visual/polymer-trace-mesh.js +2 -2
  545. package/lib/mol-repr/structure/visual/util/bond.js +2 -2
  546. package/lib/mol-repr/structure/visual/util/common.js +3 -3
  547. package/lib/mol-repr/structure/visual/util/link.js +30 -30
  548. package/lib/mol-repr/structure/visual/util/polymer/backbone.js +6 -6
  549. package/lib/mol-repr/structure/visual/util/polymer/gap-iterator.js +3 -3
  550. package/lib/mol-repr/structure/visual/util/polymer/trace-iterator.js +20 -20
  551. package/lib/mol-repr/structure/visual/util/polymer.js +6 -6
  552. package/lib/mol-repr/volume/representation.d.ts +1 -1
  553. package/lib/mol-repr/volume/representation.js +2 -1
  554. package/lib/mol-script/language/builder.d.ts +1 -0
  555. package/lib/mol-script/language/symbol-table/core.d.ts +2 -2
  556. package/lib/mol-script/runtime/query/table.js +13 -13
  557. package/lib/mol-state/object.d.ts +3 -3
  558. package/lib/mol-task/util/user-timing.js +1 -1
  559. package/lib/mol-theme/clipping.js +19 -19
  560. package/lib/mol-theme/color/atom-id.js +1 -1
  561. package/lib/mol-theme/color/carbohydrate-symbol.js +1 -1
  562. package/lib/mol-theme/color/chain-id.js +4 -4
  563. package/lib/mol-theme/color/element-index.js +1 -1
  564. package/lib/mol-theme/color/element-symbol.js +1 -1
  565. package/lib/mol-theme/color/entity-id.js +4 -4
  566. package/lib/mol-theme/color/entity-source.js +5 -4
  567. package/lib/mol-theme/color/hydrophobicity.js +1 -1
  568. package/lib/mol-theme/color/illustrative.js +1 -1
  569. package/lib/mol-theme/color/model-index.js +1 -1
  570. package/lib/mol-theme/color/molecule-type.js +8 -8
  571. package/lib/mol-theme/color/occupancy.js +1 -1
  572. package/lib/mol-theme/color/operator-hkl.js +1 -1
  573. package/lib/mol-theme/color/operator-name.js +1 -1
  574. package/lib/mol-theme/color/partial-charge.js +1 -1
  575. package/lib/mol-theme/color/polymer-id.js +4 -4
  576. package/lib/mol-theme/color/polymer-index.js +1 -1
  577. package/lib/mol-theme/color/residue-name.js +1 -1
  578. package/lib/mol-theme/color/secondary-structure.js +12 -12
  579. package/lib/mol-theme/color/sequence-id.js +7 -7
  580. package/lib/mol-theme/color/shape-group.js +1 -1
  581. package/lib/mol-theme/color/uncertainty.js +1 -1
  582. package/lib/mol-theme/color/uniform.js +1 -1
  583. package/lib/mol-theme/color/unit-index.js +1 -1
  584. package/lib/mol-theme/color/volume-value.js +1 -1
  585. package/lib/mol-theme/label.js +3 -3
  586. package/lib/mol-util/binding.js +4 -4
  587. package/lib/mol-util/debug.d.ts +6 -1
  588. package/lib/mol-util/debug.js +9 -1
  589. package/lib/mol-util/input/input-observer.js +20 -20
  590. package/lib/mol-util/string-builder.js +1 -1
  591. package/lib/servers/model/preprocess/converter.js +1 -1
  592. package/lib/servers/model/server/query.js +1 -1
  593. package/lib/servers/model/utils/fetch-retry.js +3 -2
  594. package/lib/servers/volume/server/algebra/coordinate.js +6 -6
  595. package/lib/servers/volume/server/query/encode.js +1 -1
  596. package/package.json +162 -162
@@ -26,19 +26,19 @@ function addHydrophobicAtom(structure, unit, builder) {
26
26
  var _loop_1 = function (i, il) {
27
27
  var element = (0, util_1.typeSymbol)(unit, i);
28
28
  var flag = false;
29
- if (element === "C" /* C */) {
29
+ if (element === "C" /* Elements.C */) {
30
30
  flag = true;
31
31
  (0, util_1.eachBondedAtom)(structure, unit, i, function (unitB, indexB) {
32
32
  var elementB = (0, util_1.typeSymbol)(unitB, indexB);
33
- if (elementB !== "C" /* C */ && elementB !== "H" /* H */)
33
+ if (elementB !== "C" /* Elements.C */ && elementB !== "H" /* Elements.H */)
34
34
  flag = false;
35
35
  });
36
36
  }
37
- else if (element === "F" /* F */) {
37
+ else if (element === "F" /* Elements.F */) {
38
38
  flag = true;
39
39
  }
40
40
  if (flag) {
41
- builder.add(8 /* HydrophobicAtom */, 0 /* None */, x[elements[i]], y[elements[i]], z[elements[i]], i);
41
+ builder.add(8 /* FeatureType.HydrophobicAtom */, 0 /* FeatureGroup.None */, x[elements[i]], y[elements[i]], z[elements[i]], i);
42
42
  }
43
43
  };
44
44
  for (var i = 0, il = elements.length; i < il; ++i) {
@@ -46,7 +46,7 @@ function addHydrophobicAtom(structure, unit, builder) {
46
46
  }
47
47
  }
48
48
  function isHydrophobicContact(ti, tj) {
49
- return ti === 8 /* HydrophobicAtom */ && tj === 8 /* HydrophobicAtom */;
49
+ return ti === 8 /* FeatureType.HydrophobicAtom */ && tj === 8 /* FeatureType.HydrophobicAtom */;
50
50
  }
51
51
  function testHydrophobic(structure, infoA, infoB, distanceSq) {
52
52
  var typeA = infoA.types[infoA.feature];
@@ -55,19 +55,19 @@ function testHydrophobic(structure, infoA, infoB, distanceSq) {
55
55
  return;
56
56
  var indexA = infoA.members[infoA.offsets[infoA.feature]];
57
57
  var indexB = infoB.members[infoB.offsets[infoB.feature]];
58
- if ((0, util_1.typeSymbol)(infoA.unit, indexA) === "F" /* F */ && (0, util_1.typeSymbol)(infoB.unit, indexB) === "F" /* F */)
58
+ if ((0, util_1.typeSymbol)(infoA.unit, indexA) === "F" /* Elements.F */ && (0, util_1.typeSymbol)(infoB.unit, indexB) === "F" /* Elements.F */)
59
59
  return;
60
- return 6 /* Hydrophobic */;
60
+ return 6 /* InteractionType.Hydrophobic */;
61
61
  }
62
62
  //
63
- exports.HydrophobicAtomProvider = features_1.Features.Provider([8 /* HydrophobicAtom */], addHydrophobicAtom);
63
+ exports.HydrophobicAtomProvider = features_1.Features.Provider([8 /* FeatureType.HydrophobicAtom */], addHydrophobicAtom);
64
64
  exports.HydrophobicProvider = {
65
65
  name: 'hydrophobic',
66
66
  params: HydrophobicParams,
67
67
  createTester: function (props) {
68
68
  return {
69
69
  maxDistance: props.distanceMax,
70
- requiredFeatures: new Set([8 /* HydrophobicAtom */]),
70
+ requiredFeatures: new Set([8 /* FeatureType.HydrophobicAtom */]),
71
71
  getType: function (structure, infoA, infoB, distanceSq) { return testHydrophobic(structure, infoA, infoB, distanceSq); }
72
72
  };
73
73
  }
@@ -17,25 +17,25 @@ exports.MetalCoordinationParams = {
17
17
  distanceMax: param_definition_1.ParamDefinition.Numeric(3.0, { min: 1, max: 5, step: 0.1 }),
18
18
  };
19
19
  var IonicTypeMetals = [
20
- "LI" /* LI */, "NA" /* NA */, "K" /* K */, "RB" /* RB */, "CS" /* CS */,
21
- "MG" /* MG */, "CA" /* CA */, "SR" /* SR */, "BA" /* BA */, "AL" /* AL */,
22
- "GA" /* GA */, "IN" /* IN */, "TL" /* TL */, "SC" /* SC */, "SN" /* SN */,
23
- "PB" /* PB */, "BI" /* BI */, "SB" /* SB */, "HG" /* HG */
20
+ "LI" /* Elements.LI */, "NA" /* Elements.NA */, "K" /* Elements.K */, "RB" /* Elements.RB */, "CS" /* Elements.CS */,
21
+ "MG" /* Elements.MG */, "CA" /* Elements.CA */, "SR" /* Elements.SR */, "BA" /* Elements.BA */, "AL" /* Elements.AL */,
22
+ "GA" /* Elements.GA */, "IN" /* Elements.IN */, "TL" /* Elements.TL */, "SC" /* Elements.SC */, "SN" /* Elements.SN */,
23
+ "PB" /* Elements.PB */, "BI" /* Elements.BI */, "SB" /* Elements.SB */, "HG" /* Elements.HG */
24
24
  ];
25
25
  function addMetal(structure, unit, builder) {
26
26
  var elements = unit.elements;
27
27
  var _a = unit.model.atomicConformation, x = _a.x, y = _a.y, z = _a.z;
28
28
  for (var i = 0, il = elements.length; i < il; ++i) {
29
29
  var element = (0, util_1.typeSymbol)(unit, i);
30
- var type = 0 /* None */;
30
+ var type = 0 /* FeatureType.None */;
31
31
  if (IonicTypeMetals.includes(element)) {
32
- type = 13 /* IonicTypeMetal */;
32
+ type = 13 /* FeatureType.IonicTypeMetal */;
33
33
  }
34
- else if ((0, types_1.isTransitionMetal)(element) || element === "ZN" /* ZN */ || element === "CD" /* CD */) {
35
- type = 12 /* TransitionMetal */;
34
+ else if ((0, types_1.isTransitionMetal)(element) || element === "ZN" /* Elements.ZN */ || element === "CD" /* Elements.CD */) {
35
+ type = 12 /* FeatureType.TransitionMetal */;
36
36
  }
37
37
  if (type) {
38
- builder.add(type, 0 /* None */, x[elements[i]], y[elements[i]], z[elements[i]], i);
38
+ builder.add(type, 0 /* FeatureGroup.None */, x[elements[i]], y[elements[i]], z[elements[i]], i);
39
39
  }
40
40
  }
41
41
  }
@@ -63,17 +63,17 @@ function addMetalBinding(structure, unit, builder) {
63
63
  var isStandardAminoacid = types_2.AminoAcidNames.has(resname);
64
64
  var isStandardBase = types_2.BaseNames.has(resname);
65
65
  if (!isStandardAminoacid && !isStandardBase) {
66
- if ((0, types_1.isHalogen)(element) || element === "O" /* O */ || element === "S" /* S */) {
66
+ if ((0, types_1.isHalogen)(element) || element === "O" /* Elements.O */ || element === "S" /* Elements.S */) {
67
67
  dative = true;
68
68
  ionic = true;
69
69
  }
70
- else if (element === "N" /* N */) {
70
+ else if (element === "N" /* Elements.N */) {
71
71
  dative = true;
72
72
  }
73
73
  }
74
74
  else if (isStandardAminoacid) {
75
75
  // main chain oxygen atom or oxygen, nitrogen and sulfur from specific amino acids
76
- if (element === "O" /* O */) {
76
+ if (element === "O" /* Elements.O */) {
77
77
  if (['ASP', 'GLU', 'SER', 'THR', 'TYR', 'ASN', 'GLN'].includes(resname) && isProteinSidechain(atomname)) {
78
78
  dative = true;
79
79
  ionic = true;
@@ -83,11 +83,11 @@ function addMetalBinding(structure, unit, builder) {
83
83
  ionic = true;
84
84
  }
85
85
  }
86
- else if (element === "S" /* S */ && (resname === 'CYS' || resname === 'MET')) {
86
+ else if (element === "S" /* Elements.S */ && (resname === 'CYS' || resname === 'MET')) {
87
87
  dative = true;
88
88
  ionic = true;
89
89
  }
90
- else if (element === "N" /* N */) {
90
+ else if (element === "N" /* Elements.N */) {
91
91
  if (resname === 'HIS' && isProteinSidechain(atomname)) {
92
92
  dative = true;
93
93
  }
@@ -96,7 +96,7 @@ function addMetalBinding(structure, unit, builder) {
96
96
  else if (isStandardBase) {
97
97
  // http://pubs.acs.org/doi/pdf/10.1021/acs.accounts.6b00253
98
98
  // http://onlinelibrary.wiley.com/doi/10.1002/anie.200900399/full
99
- if (element === "O" /* O */ && isNucleicBackbone(atomname)) {
99
+ if (element === "O" /* Elements.O */ && isNucleicBackbone(atomname)) {
100
100
  dative = true;
101
101
  ionic = true;
102
102
  }
@@ -109,20 +109,20 @@ function addMetalBinding(structure, unit, builder) {
109
109
  }
110
110
  }
111
111
  if (dative) {
112
- builder.add(11 /* DativeBondPartner */, 0 /* None */, x[elements[i]], y[elements[i]], z[elements[i]], i);
112
+ builder.add(11 /* FeatureType.DativeBondPartner */, 0 /* FeatureGroup.None */, x[elements[i]], y[elements[i]], z[elements[i]], i);
113
113
  }
114
114
  if (ionic) {
115
- builder.add(10 /* IonicTypePartner */, 0 /* None */, x[elements[i]], y[elements[i]], z[elements[i]], i);
115
+ builder.add(10 /* FeatureType.IonicTypePartner */, 0 /* FeatureGroup.None */, x[elements[i]], y[elements[i]], z[elements[i]], i);
116
116
  }
117
117
  }
118
118
  }
119
119
  function isMetalCoordination(ti, tj) {
120
- if (ti === 12 /* TransitionMetal */) {
121
- return (tj === 11 /* DativeBondPartner */ ||
122
- tj === 12 /* TransitionMetal */);
120
+ if (ti === 12 /* FeatureType.TransitionMetal */) {
121
+ return (tj === 11 /* FeatureType.DativeBondPartner */ ||
122
+ tj === 12 /* FeatureType.TransitionMetal */);
123
123
  }
124
- else if (ti === 13 /* IonicTypeMetal */) {
125
- return (tj === 10 /* IonicTypePartner */);
124
+ else if (ti === 13 /* FeatureType.IonicTypeMetal */) {
125
+ return (tj === 10 /* FeatureType.IonicTypePartner */);
126
126
  }
127
127
  }
128
128
  function testMetalCoordination(structure, infoA, infoB, distanceSq) {
@@ -130,18 +130,18 @@ function testMetalCoordination(structure, infoA, infoB, distanceSq) {
130
130
  var typeB = infoB.types[infoB.feature];
131
131
  if (!isMetalCoordination(typeA, typeB) && !isMetalCoordination(typeB, typeA))
132
132
  return;
133
- return 7 /* MetalCoordination */;
133
+ return 7 /* InteractionType.MetalCoordination */;
134
134
  }
135
135
  //
136
- exports.MetalProvider = features_1.Features.Provider([13 /* IonicTypeMetal */, 12 /* TransitionMetal */], addMetal);
137
- exports.MetalBindingProvider = features_1.Features.Provider([10 /* IonicTypePartner */, 11 /* DativeBondPartner */], addMetalBinding);
136
+ exports.MetalProvider = features_1.Features.Provider([13 /* FeatureType.IonicTypeMetal */, 12 /* FeatureType.TransitionMetal */], addMetal);
137
+ exports.MetalBindingProvider = features_1.Features.Provider([10 /* FeatureType.IonicTypePartner */, 11 /* FeatureType.DativeBondPartner */], addMetalBinding);
138
138
  exports.MetalCoordinationProvider = {
139
139
  name: 'metal-coordination',
140
140
  params: exports.MetalCoordinationParams,
141
141
  createTester: function (props) {
142
142
  return {
143
143
  maxDistance: props.distanceMax,
144
- requiredFeatures: new Set([13 /* IonicTypeMetal */, 12 /* TransitionMetal */, 10 /* IonicTypePartner */, 11 /* DativeBondPartner */]),
144
+ requiredFeatures: new Set([13 /* FeatureType.IonicTypeMetal */, 12 /* FeatureType.TransitionMetal */, 10 /* FeatureType.IonicTypePartner */, 11 /* FeatureType.DativeBondPartner */]),
145
145
  getType: function (structure, infoA, infoB, distanceSq) { return testMetalCoordination(structure, infoA, infoB, distanceSq); }
146
146
  };
147
147
  }
@@ -93,17 +93,17 @@ function hydrophobicRefiner(structure, interactions) {
93
93
  handleResidueContact(dist, edge, keyB, map, set);
94
94
  }
95
95
  var residueInterMap = new Map();
96
- var setInterFiltered = function (i) { return contacts.edges[i].props.flag = 1 /* Filtered */; };
96
+ var setInterFiltered = function (i) { return contacts.edges[i].props.flag = 1 /* InteractionFlag.Filtered */; };
97
97
  var residueIntraMap;
98
98
  var setIntraFiltered;
99
99
  return {
100
- isApplicable: function (type) { return type === 6 /* Hydrophobic */; },
100
+ isApplicable: function (type) { return type === 6 /* InteractionType.Hydrophobic */; },
101
101
  handleInterContact: function (index, infoA, infoB) {
102
102
  handleEdge(index, infoA, infoB, residueInterMap, setInterFiltered);
103
103
  },
104
104
  startUnit: function (unit, contacts, features) {
105
105
  residueIntraMap = new Map();
106
- setIntraFiltered = function (i) { return contacts.edgeProps.flag[i] = 1 /* Filtered */; };
106
+ setIntraFiltered = function (i) { return contacts.edgeProps.flag[i] = 1 /* InteractionFlag.Filtered */; };
107
107
  },
108
108
  handleIntraContact: function (index, infoA, infoB) {
109
109
  handleEdge(index, infoA, infoB, residueIntraMap, setIntraFiltered);
@@ -117,34 +117,34 @@ function hydrophobicRefiner(structure, interactions) {
117
117
  function weakHydrogenBondsRefiner(structure, interactions) {
118
118
  var contacts = interactions.contacts;
119
119
  var hasHydrogenBond = function (infoA, infoB) {
120
- var acc = infoA.types[infoA.feature] === 9 /* WeakHydrogenDonor */ ? infoB : infoA;
120
+ var acc = infoA.types[infoA.feature] === 9 /* FeatureType.WeakHydrogenDonor */ ? infoB : infoA;
121
121
  // check intra
122
122
  var eI = acc.members[acc.offsets[acc.feature]];
123
123
  var _a = interactions.unitsContacts.get(acc.unit.id), type = _a.edgeProps.type, _b = _a.elementsIndex, offsets = _b.offsets, indices = _b.indices;
124
124
  for (var i = offsets[eI], il = offsets[eI + 1]; i < il; ++i) {
125
- if (type[indices[i]] === 4 /* HydrogenBond */)
125
+ if (type[indices[i]] === 4 /* InteractionType.HydrogenBond */)
126
126
  return true;
127
127
  }
128
128
  // check inter
129
129
  var interIndices = contacts.getEdgeIndices(acc.feature, acc.unit.id);
130
130
  for (var i = 0, il = interIndices.length; i < il; ++i) {
131
- if (contacts.edges[interIndices[i]].props.type === 4 /* HydrogenBond */)
131
+ if (contacts.edges[interIndices[i]].props.type === 4 /* InteractionType.HydrogenBond */)
132
132
  return true;
133
133
  }
134
134
  return false;
135
135
  };
136
136
  return {
137
- isApplicable: function (type) { return type === 8 /* WeakHydrogenBond */; },
137
+ isApplicable: function (type) { return type === 8 /* InteractionType.WeakHydrogenBond */; },
138
138
  handleInterContact: function (index, infoA, infoB) {
139
139
  if (hasHydrogenBond(infoA, infoB)) {
140
- contacts.edges[index].props.flag = 1 /* Filtered */;
140
+ contacts.edges[index].props.flag = 1 /* InteractionFlag.Filtered */;
141
141
  }
142
142
  },
143
143
  startUnit: function () { },
144
144
  handleIntraContact: function (index, infoA, infoB) {
145
145
  if (hasHydrogenBond(infoA, infoB)) {
146
146
  var flag = interactions.unitsContacts.get(infoA.unit.id).edgeProps.flag;
147
- flag[index] = 1 /* Filtered */;
147
+ flag[index] = 1 /* InteractionFlag.Filtered */;
148
148
  }
149
149
  }
150
150
  };
@@ -164,7 +164,7 @@ function filterInter(types, index, infoA, infoB, contacts) {
164
164
  for (var j = offsetsB[featureB], jl = offsetsB[featureB + 1]; j < jl; ++j) {
165
165
  var bI = infoB.members[j];
166
166
  if (contacts.getContactIndicesForElement(bI, infoB.unit).includes(cI)) {
167
- contacts.edges[index].props.flag = 1 /* Filtered */;
167
+ contacts.edges[index].props.flag = 1 /* InteractionFlag.Filtered */;
168
168
  return;
169
169
  }
170
170
  }
@@ -188,7 +188,7 @@ function filterIntra(types, index, infoA, infoB, contacts) {
188
188
  var bI = infoB.members[j];
189
189
  for (var l = offsets[bI], ll = offsets[bI + 1]; l < ll; ++l) {
190
190
  if (cI === indices[l]) {
191
- flag[index] = 1 /* Filtered */;
191
+ flag[index] = 1 /* InteractionFlag.Filtered */;
192
192
  return;
193
193
  }
194
194
  }
@@ -204,13 +204,13 @@ function filterIntra(types, index, infoA, infoB, contacts) {
204
204
  function saltBridgeRefiner(structure, interactions) {
205
205
  var contacts = interactions.contacts;
206
206
  return {
207
- isApplicable: function (type) { return type === 1 /* Ionic */; },
207
+ isApplicable: function (type) { return type === 1 /* InteractionType.Ionic */; },
208
208
  handleInterContact: function (index, infoA, infoB) {
209
- filterInter([4 /* HydrogenBond */, 8 /* WeakHydrogenBond */], index, infoA, infoB, contacts);
209
+ filterInter([4 /* InteractionType.HydrogenBond */, 8 /* InteractionType.WeakHydrogenBond */], index, infoA, infoB, contacts);
210
210
  },
211
211
  startUnit: function () { },
212
212
  handleIntraContact: function (index, infoA, infoB) {
213
- filterIntra([4 /* HydrogenBond */, 8 /* WeakHydrogenBond */], index, infoA, infoB, interactions.unitsContacts.get(infoA.unit.id));
213
+ filterIntra([4 /* InteractionType.HydrogenBond */, 8 /* InteractionType.WeakHydrogenBond */], index, infoA, infoB, interactions.unitsContacts.get(infoA.unit.id));
214
214
  }
215
215
  };
216
216
  }
@@ -221,13 +221,13 @@ function saltBridgeRefiner(structure, interactions) {
221
221
  function piStackingRefiner(structure, interactions) {
222
222
  var contacts = interactions.contacts;
223
223
  return {
224
- isApplicable: function (type) { return type === 6 /* Hydrophobic */ || type === 2 /* CationPi */; },
224
+ isApplicable: function (type) { return type === 6 /* InteractionType.Hydrophobic */ || type === 2 /* InteractionType.CationPi */; },
225
225
  handleInterContact: function (index, infoA, infoB) {
226
- filterInter([3 /* PiStacking */], index, infoA, infoB, contacts);
226
+ filterInter([3 /* InteractionType.PiStacking */], index, infoA, infoB, contacts);
227
227
  },
228
228
  startUnit: function () { },
229
229
  handleIntraContact: function (index, infoA, infoB) {
230
- filterIntra([3 /* PiStacking */], index, infoA, infoB, interactions.unitsContacts.get(infoA.unit.id));
230
+ filterIntra([3 /* InteractionType.PiStacking */], index, infoA, infoB, interactions.unitsContacts.get(infoA.unit.id));
231
231
  }
232
232
  };
233
233
  }
@@ -238,13 +238,13 @@ function piStackingRefiner(structure, interactions) {
238
238
  function metalCoordinationRefiner(structure, interactions) {
239
239
  var contacts = interactions.contacts;
240
240
  return {
241
- isApplicable: function (type) { return type === 1 /* Ionic */; },
241
+ isApplicable: function (type) { return type === 1 /* InteractionType.Ionic */; },
242
242
  handleInterContact: function (index, infoA, infoB) {
243
- filterInter([7 /* MetalCoordination */], index, infoA, infoB, contacts);
243
+ filterInter([7 /* InteractionType.MetalCoordination */], index, infoA, infoB, contacts);
244
244
  },
245
245
  startUnit: function () { },
246
246
  handleIntraContact: function (index, infoA, infoB) {
247
- filterIntra([7 /* MetalCoordination */], index, infoA, infoB, interactions.unitsContacts.get(infoA.unit.id));
247
+ filterIntra([7 /* InteractionType.MetalCoordination */], index, infoA, infoB, interactions.unitsContacts.get(infoA.unit.id));
248
248
  }
249
249
  };
250
250
  }
@@ -44,7 +44,7 @@ function createInterUnitInteractionCylinderMesh(ctx, structure, theme, props, me
44
44
  linear_algebra_1.Vec3.set(posB, fB.x[indexB], fB.y[indexB], fB.z[indexB]);
45
45
  linear_algebra_1.Vec3.transformMat4(posB, posB, uB.conformation.operator.matrix);
46
46
  },
47
- style: function (edgeIndex) { return 1 /* Dashed */; },
47
+ style: function (edgeIndex) { return 1 /* LinkStyle.Dashed */; },
48
48
  radius: function (edgeIndex) {
49
49
  var b = edges[edgeIndex];
50
50
  var fA = unitsFeatures.get(b.unitA);
@@ -58,7 +58,7 @@ function createInterUnitInteractionCylinderMesh(ctx, structure, theme, props, me
58
58
  return Math.min(sizeA, sizeB) * sizeFactor;
59
59
  },
60
60
  ignore: function (edgeIndex) {
61
- if (edges[edgeIndex].props.flag === 1 /* Filtered */)
61
+ if (edges[edgeIndex].props.flag === 1 /* InteractionFlag.Filtered */)
62
62
  return true;
63
63
  if (child) {
64
64
  var b = edges[edgeIndex];
@@ -44,7 +44,7 @@ function createIntraUnitInteractionsCylinderMesh(ctx, unit, structure, theme, pr
44
44
  linear_algebra_1.Vec3.set(posA, x[a[edgeIndex]], y[a[edgeIndex]], z[a[edgeIndex]]);
45
45
  linear_algebra_1.Vec3.set(posB, x[b[edgeIndex]], y[b[edgeIndex]], z[b[edgeIndex]]);
46
46
  },
47
- style: function (edgeIndex) { return 1 /* Dashed */; },
47
+ style: function (edgeIndex) { return 1 /* LinkStyle.Dashed */; },
48
48
  radius: function (edgeIndex) {
49
49
  location.element = unit.elements[members[offsets[a[edgeIndex]]]];
50
50
  var sizeA = theme.size.size(location);
@@ -53,7 +53,7 @@ function createIntraUnitInteractionsCylinderMesh(ctx, unit, structure, theme, pr
53
53
  return Math.min(sizeA, sizeB) * sizeFactor;
54
54
  },
55
55
  ignore: function (edgeIndex) {
56
- if (flag[edgeIndex] === 1 /* Filtered */)
56
+ if (flag[edgeIndex] === 1 /* InteractionFlag.Filtered */)
57
57
  return true;
58
58
  if (childUnit) {
59
59
  var f = a[edgeIndex];
@@ -52,7 +52,7 @@ function assignBends(ctx) {
52
52
  linear_algebra_1.Vec3.sub(caPlus2, caPos, caPosNext2);
53
53
  var angle = (0, misc_1.radToDeg)(linear_algebra_1.Vec3.angle(caMinus2, caPlus2));
54
54
  if (angle && angle > 70.00) {
55
- flags[i] |= 32 /* S */;
55
+ flags[i] |= 32 /* DSSPType.Flag.S */;
56
56
  }
57
57
  }
58
58
  }
@@ -37,34 +37,34 @@ function assignBridges(ctx) {
37
37
  i = k + 1; // k is i - 1
38
38
  j = l;
39
39
  if (i !== j && hbonds.getDirectedEdgeIndex(j, i + 1) !== -1) {
40
- flags[i] |= 2 /* B */;
41
- flags[j] |= 2 /* B */;
40
+ flags[i] |= 2 /* DSSPType.Flag.B */;
41
+ flags[j] |= 2 /* DSSPType.Flag.B */;
42
42
  // TODO move to constructor, actually omit object all together
43
- bridges[bridges.length] = new common_1.Bridge(i, j, 0 /* PARALLEL */);
43
+ bridges[bridges.length] = new common_1.Bridge(i, j, 0 /* BridgeType.PARALLEL */);
44
44
  }
45
45
  // Parallel Bridge(i, j) =: [Hbond(j - 1, i) and Hbond(i, j + 1)]
46
46
  i = k;
47
47
  j = l - 1; // l is j + 1
48
48
  if (i !== j && hbonds.getDirectedEdgeIndex(j - 1, i) !== -1) {
49
- flags[i] |= 2 /* B */;
50
- flags[j] |= 2 /* B */;
51
- bridges[bridges.length] = new common_1.Bridge(j, i, 0 /* PARALLEL */);
49
+ flags[i] |= 2 /* DSSPType.Flag.B */;
50
+ flags[j] |= 2 /* DSSPType.Flag.B */;
51
+ bridges[bridges.length] = new common_1.Bridge(j, i, 0 /* BridgeType.PARALLEL */);
52
52
  }
53
53
  // Antiparallel Bridge(i, j) =: [Hbond(i, j) and Hbond(j, i)]
54
54
  i = k;
55
55
  j = l;
56
56
  if (i !== j && hbonds.getDirectedEdgeIndex(j, i) !== -1) {
57
- flags[i] |= 2 /* B */;
58
- flags[j] |= 2 /* B */;
59
- bridges[bridges.length] = new common_1.Bridge(j, i, 1 /* ANTI_PARALLEL */);
57
+ flags[i] |= 2 /* DSSPType.Flag.B */;
58
+ flags[j] |= 2 /* DSSPType.Flag.B */;
59
+ bridges[bridges.length] = new common_1.Bridge(j, i, 1 /* BridgeType.ANTI_PARALLEL */);
60
60
  }
61
61
  // Antiparallel Bridge(i, j) =: [Hbond(i - 1, j + 1) and Hbond(j - 1, i + l)]
62
62
  i = k + 1;
63
63
  j = l - 1;
64
64
  if (i !== j && hbonds.getDirectedEdgeIndex(j - 1, i + 1) !== -1) {
65
- flags[i] |= 2 /* B */;
66
- flags[j] |= 2 /* B */;
67
- bridges[bridges.length] = new common_1.Bridge(j, i, 1 /* ANTI_PARALLEL */);
65
+ flags[i] |= 2 /* DSSPType.Flag.B */;
66
+ flags[j] |= 2 /* DSSPType.Flag.B */;
67
+ bridges[bridges.length] = new common_1.Bridge(j, i, 1 /* BridgeType.ANTI_PARALLEL */);
68
68
  }
69
69
  }
70
70
  }
@@ -22,8 +22,8 @@ var common_1 = require("./common");
22
22
  function assignHelices(ctx) {
23
23
  var proteinInfo = ctx.proteinInfo, flags = ctx.flags;
24
24
  var residueCount = proteinInfo.residueIndices.length;
25
- var turnFlag = [1024 /* T3S */, 2048 /* T4S */, 4096 /* T5S */, 128 /* T3 */, 256 /* T4 */, 512 /* T5 */];
26
- var helixFlag = [0, 0, 0, 8 /* G */, 1 /* H */, 16 /* I */];
25
+ var turnFlag = [1024 /* DSSPType.Flag.T3S */, 2048 /* DSSPType.Flag.T4S */, 4096 /* DSSPType.Flag.T5S */, 128 /* DSSPType.Flag.T3 */, 256 /* DSSPType.Flag.T4 */, 512 /* DSSPType.Flag.T5 */];
26
+ var helixFlag = [0, 0, 0, 8 /* DSSPType.Flag.G */, 1 /* DSSPType.Flag.H */, 16 /* DSSPType.Flag.I */];
27
27
  var helixCheckOrder = ctx.params.oldOrdering ? [4, 3, 5] : [3, 4, 5];
28
28
  for (var ni = 0; ni < helixCheckOrder.length; ni++) {
29
29
  var n = helixCheckOrder[ni];
@@ -33,14 +33,14 @@ function assignHelices(ctx) {
33
33
  var fI2 = common_1.DSSPType.create(flags[i + 1]);
34
34
  // TODO rework to elegant solution which will not break instantly
35
35
  if (ctx.params.oldOrdering) {
36
- if ((n === 3 && (common_1.DSSPType.is(fI, 1 /* H */) || common_1.DSSPType.is(fI2, 1 /* H */)) || // for 3-10 yield to alpha helix
37
- (n === 5 && ((common_1.DSSPType.is(fI, 1 /* H */) || common_1.DSSPType.is(fI, 8 /* G */)) || (common_1.DSSPType.is(fI2, 1 /* H */) || common_1.DSSPType.is(fI2, 8 /* G */)))))) { // for pi yield to all other helices
36
+ if ((n === 3 && (common_1.DSSPType.is(fI, 1 /* DSSPType.Flag.H */) || common_1.DSSPType.is(fI2, 1 /* DSSPType.Flag.H */)) || // for 3-10 yield to alpha helix
37
+ (n === 5 && ((common_1.DSSPType.is(fI, 1 /* DSSPType.Flag.H */) || common_1.DSSPType.is(fI, 8 /* DSSPType.Flag.G */)) || (common_1.DSSPType.is(fI2, 1 /* DSSPType.Flag.H */) || common_1.DSSPType.is(fI2, 8 /* DSSPType.Flag.G */)))))) { // for pi yield to all other helices
38
38
  continue;
39
39
  }
40
40
  }
41
41
  else {
42
- if ((n === 4 && (common_1.DSSPType.is(fI, 8 /* G */) || common_1.DSSPType.is(fI2, 8 /* G */)) || // for alpha helix yield to 3-10
43
- (n === 5 && ((common_1.DSSPType.is(fI, 1 /* H */) || common_1.DSSPType.is(fI, 8 /* G */)) || (common_1.DSSPType.is(fI2, 1 /* H */) || common_1.DSSPType.is(fI2, 8 /* G */)))))) { // for pi yield to all other helices
42
+ if ((n === 4 && (common_1.DSSPType.is(fI, 8 /* DSSPType.Flag.G */) || common_1.DSSPType.is(fI2, 8 /* DSSPType.Flag.G */)) || // for alpha helix yield to 3-10
43
+ (n === 5 && ((common_1.DSSPType.is(fI, 1 /* DSSPType.Flag.H */) || common_1.DSSPType.is(fI, 8 /* DSSPType.Flag.G */)) || (common_1.DSSPType.is(fI2, 1 /* DSSPType.Flag.H */) || common_1.DSSPType.is(fI2, 8 /* DSSPType.Flag.G */)))))) { // for pi yield to all other helices
44
44
  continue;
45
45
  }
46
46
  }
@@ -14,7 +14,7 @@ function shouldExtendLadder(ladder, bridge) {
14
14
  // only extend if residue 1 is sequence neighbor with regard to ladder
15
15
  if (bridge.partner1 !== ladder.firstEnd + 1)
16
16
  return false;
17
- if (bridge.type === 0 /* PARALLEL */) {
17
+ if (bridge.type === 0 /* BridgeType.PARALLEL */) {
18
18
  if (bridge.partner2 === ladder.secondEnd + 1) {
19
19
  return true;
20
20
  }
@@ -35,7 +35,7 @@ function resemblesBulge(ladder1, ladder2) {
35
35
  if (!(ladder1.type === ladder2.type && ladder2.firstStart - ladder1.firstEnd < 6 &&
36
36
  ladder1.firstStart < ladder2.firstStart && ladder2.nextLadder === 0))
37
37
  return false;
38
- if (ladder1.type === 0 /* PARALLEL */) {
38
+ if (ladder1.type === 0 /* BridgeType.PARALLEL */) {
39
39
  return bulgeCriterion2(ladder1, ladder2);
40
40
  }
41
41
  else {
@@ -62,7 +62,7 @@ function assignLadders(ctx) {
62
62
  if (shouldExtendLadder(ladder, bridge)) {
63
63
  found = true;
64
64
  ladder.firstEnd++;
65
- if (bridge.type === 0 /* PARALLEL */) {
65
+ if (bridge.type === 0 /* BridgeType.PARALLEL */) {
66
66
  ladder.secondEnd++;
67
67
  }
68
68
  else {
@@ -9,7 +9,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.assignSheets = void 0;
10
10
  var common_1 = require("./common");
11
11
  function isHelixType(f) {
12
- return common_1.DSSPType.is(f, 8 /* G */) || common_1.DSSPType.is(f, 1 /* H */) || common_1.DSSPType.is(f, 16 /* I */);
12
+ return common_1.DSSPType.is(f, 8 /* DSSPType.Flag.G */) || common_1.DSSPType.is(f, 1 /* DSSPType.Flag.H */) || common_1.DSSPType.is(f, 16 /* DSSPType.Flag.I */);
13
13
  }
14
14
  /**
15
15
  * sheet=: set of one or more ladders connected by shared residues
@@ -24,15 +24,15 @@ function assignSheets(ctx) {
24
24
  var diff = ladder.firstStart - lcount;
25
25
  var l2count = ladder.secondStart - diff;
26
26
  if (ladder.firstStart !== ladder.firstEnd) {
27
- flags[lcount] |= 4 /* E */;
28
- flags[l2count] |= 4 /* E */;
27
+ flags[lcount] |= 4 /* DSSPType.Flag.E */;
28
+ flags[l2count] |= 4 /* DSSPType.Flag.E */;
29
29
  }
30
30
  else {
31
- if (!isHelixType(flags[lcount]) && common_1.DSSPType.is(flags[lcount], 4 /* E */)) {
32
- flags[lcount] |= 2 /* B */;
31
+ if (!isHelixType(flags[lcount]) && common_1.DSSPType.is(flags[lcount], 4 /* DSSPType.Flag.E */)) {
32
+ flags[lcount] |= 2 /* DSSPType.Flag.B */;
33
33
  }
34
- if (!isHelixType(flags[l2count]) && common_1.DSSPType.is(flags[l2count], 4 /* E */)) {
35
- flags[l2count] |= 2 /* B */;
34
+ if (!isHelixType(flags[l2count]) && common_1.DSSPType.is(flags[l2count], 4 /* DSSPType.Flag.E */)) {
35
+ flags[l2count] |= 2 /* DSSPType.Flag.B */;
36
36
  }
37
37
  }
38
38
  }
@@ -40,16 +40,16 @@ function assignSheets(ctx) {
40
40
  continue;
41
41
  var conladder = ladders[ladder.nextLadder];
42
42
  for (var lcount = ladder.firstStart; lcount <= conladder.firstEnd; lcount++) {
43
- flags[lcount] |= 4 /* E */;
43
+ flags[lcount] |= 4 /* DSSPType.Flag.E */;
44
44
  }
45
- if (ladder.type === 0 /* PARALLEL */) {
45
+ if (ladder.type === 0 /* BridgeType.PARALLEL */) {
46
46
  for (var lcount = ladder.secondStart; lcount <= conladder.secondEnd; lcount++) {
47
- flags[lcount] |= 4 /* E */;
47
+ flags[lcount] |= 4 /* DSSPType.Flag.E */;
48
48
  }
49
49
  }
50
50
  else {
51
51
  for (var lcount = conladder.secondEnd; lcount <= ladder.secondStart; lcount++) {
52
- flags[lcount] |= 4 /* E */;
52
+ flags[lcount] |= 4 /* DSSPType.Flag.E */;
53
53
  }
54
54
  }
55
55
  }
@@ -16,7 +16,7 @@ exports.assignTurns = void 0;
16
16
  */
17
17
  function assignTurns(ctx) {
18
18
  var proteinInfo = ctx.proteinInfo, hbonds = ctx.hbonds, flags = ctx.flags;
19
- var turnFlag = [1024 /* T3S */, 2048 /* T4S */, 4096 /* T5S */, 128 /* T3 */, 256 /* T4 */, 512 /* T5 */];
19
+ var turnFlag = [1024 /* DSSPType.Flag.T3S */, 2048 /* DSSPType.Flag.T4S */, 4096 /* DSSPType.Flag.T5S */, 128 /* DSSPType.Flag.T3 */, 256 /* DSSPType.Flag.T4 */, 512 /* DSSPType.Flag.T5 */];
20
20
  for (var idx = 0; idx < 3; idx++) {
21
21
  for (var i = 0, il = proteinInfo.residueIndices.length - 1; i < il; ++i) {
22
22
  // check if hbond exists
@@ -24,12 +24,12 @@ function assignTurns(ctx) {
24
24
  flags[i] |= turnFlag[idx + 3] | turnFlag[idx];
25
25
  if (ctx.params.oldDefinition) {
26
26
  for (var k = 1; k < idx + 3; ++k) {
27
- flags[i + k] |= turnFlag[idx + 3] | 64 /* T */;
27
+ flags[i + k] |= turnFlag[idx + 3] | 64 /* DSSPType.Flag.T */;
28
28
  }
29
29
  }
30
30
  else {
31
31
  for (var k = 0; k <= idx + 3; ++k) {
32
- flags[i + k] |= turnFlag[idx + 3] | 64 /* T */;
32
+ flags[i + k] |= turnFlag[idx + 3] | 64 /* DSSPType.Flag.T */;
33
33
  }
34
34
  }
35
35
  }