molstar 3.4.0 → 3.6.1

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 (401) hide show
  1. package/LICENSE +20 -20
  2. package/README.md +202 -197
  3. package/build/viewer/embedded.html +43 -43
  4. package/build/viewer/index.html +106 -106
  5. package/build/viewer/molstar.js +1 -1
  6. package/build/viewer/molstar.js.LICENSE.txt +12 -14
  7. package/lib/apps/docking-viewer/index.html +36 -36
  8. package/lib/apps/docking-viewer/index.js +1 -1
  9. package/lib/apps/viewer/app.js +1 -1
  10. package/lib/apps/viewer/embedded.html +43 -43
  11. package/lib/apps/viewer/index.html +106 -106
  12. package/lib/cli/chem-comp-dict/util.d.ts +20 -20
  13. package/lib/cli/cif2bcif/converter.js +1 -1
  14. package/lib/cli/cif2bcif/index.js +4 -4
  15. package/lib/cli/cifschema/util/cif-dic.d.ts +1 -1
  16. package/lib/cli/cifschema/util/cif-dic.js +7 -5
  17. package/lib/cli/cifschema/util/generate.d.ts +1 -1
  18. package/lib/cli/cifschema/util/generate.js +12 -3
  19. package/lib/cli/cifschema/util/schema.d.ts +3 -3
  20. package/lib/cli/cifschema/util/schema.js +1 -1
  21. package/lib/commonjs/apps/docking-viewer/index.js +2 -2
  22. package/lib/commonjs/apps/viewer/app.js +2 -2
  23. package/lib/commonjs/cli/chem-comp-dict/util.d.ts +20 -20
  24. package/lib/commonjs/cli/cif2bcif/converter.js +1 -1
  25. package/lib/commonjs/cli/cif2bcif/index.js +4 -4
  26. package/lib/commonjs/cli/cifschema/util/cif-dic.d.ts +1 -1
  27. package/lib/commonjs/cli/cifschema/util/cif-dic.js +7 -5
  28. package/lib/commonjs/cli/cifschema/util/generate.d.ts +1 -1
  29. package/lib/commonjs/cli/cifschema/util/generate.js +12 -3
  30. package/lib/commonjs/cli/cifschema/util/schema.d.ts +3 -3
  31. package/lib/commonjs/cli/cifschema/util/schema.js +1 -1
  32. package/lib/commonjs/examples/alpha-orbitals/index.js +2 -2
  33. package/lib/commonjs/examples/basic-wrapper/index.js +2 -2
  34. package/lib/commonjs/examples/lighting/index.js +2 -2
  35. package/lib/commonjs/examples/proteopedia-wrapper/index.js +2 -2
  36. package/lib/commonjs/extensions/anvil/behavior.d.ts +1 -0
  37. package/lib/commonjs/extensions/anvil/representation.d.ts +4 -0
  38. package/lib/commonjs/extensions/cellpack/representation.d.ts +1 -0
  39. package/lib/commonjs/extensions/dnatco/confal-pyramids/color.d.ts +397 -2
  40. package/lib/commonjs/extensions/dnatco/confal-pyramids/color.js +223 -131
  41. package/lib/commonjs/extensions/dnatco/confal-pyramids/property.js +1 -3
  42. package/lib/commonjs/extensions/dnatco/confal-pyramids/representation.d.ts +3 -0
  43. package/lib/commonjs/extensions/dnatco/confal-pyramids/util.js +18 -19
  44. package/lib/commonjs/extensions/rcsb/assembly-symmetry/behavior.d.ts +1 -0
  45. package/lib/commonjs/extensions/rcsb/assembly-symmetry/representation.d.ts +1 -0
  46. package/lib/commonjs/extensions/rcsb/validation-report/representation.d.ts +5 -0
  47. package/lib/commonjs/mol-canvas3d/canvas3d.d.ts +2 -0
  48. package/lib/commonjs/mol-canvas3d/helper/camera-helper.d.ts +1 -0
  49. package/lib/commonjs/mol-canvas3d/helper/handle-helper.d.ts +1 -0
  50. package/lib/commonjs/mol-canvas3d/helper/helper.d.ts +2 -0
  51. package/lib/commonjs/mol-canvas3d/passes/image.d.ts +1 -0
  52. package/lib/commonjs/mol-data/db/column.d.ts +10 -3
  53. package/lib/commonjs/mol-data/db/column.js +39 -17
  54. package/lib/commonjs/mol-geo/geometry/cylinders/cylinders.d.ts +4 -2
  55. package/lib/commonjs/mol-geo/geometry/cylinders/cylinders.js +2 -2
  56. package/lib/commonjs/mol-geo/geometry/lines/lines.d.ts +0 -1
  57. package/lib/commonjs/mol-geo/geometry/mesh/color-smoothing.d.ts +1 -1
  58. package/lib/commonjs/mol-geo/geometry/mesh/color-smoothing.js +5 -3
  59. package/lib/commonjs/mol-geo/geometry/mesh/mesh.d.ts +2 -1
  60. package/lib/commonjs/mol-geo/geometry/mesh/mesh.js +2 -2
  61. package/lib/commonjs/mol-geo/geometry/points/points.d.ts +1 -1
  62. package/lib/commonjs/mol-geo/geometry/spheres/spheres.d.ts +2 -1
  63. package/lib/commonjs/mol-geo/geometry/spheres/spheres.js +2 -2
  64. package/lib/commonjs/mol-geo/geometry/texture-mesh/color-smoothing.d.ts +1 -1
  65. package/lib/commonjs/mol-geo/geometry/texture-mesh/color-smoothing.js +6 -4
  66. package/lib/commonjs/mol-geo/geometry/texture-mesh/texture-mesh.d.ts +2 -1
  67. package/lib/commonjs/mol-geo/geometry/texture-mesh/texture-mesh.js +2 -2
  68. package/lib/commonjs/mol-gl/shader/chunks/wboit-write.glsl.d.ts +2 -2
  69. package/lib/commonjs/mol-gl/shader/chunks/wboit-write.glsl.js +2 -2
  70. package/lib/commonjs/mol-gl/shader/direct-volume.frag.d.ts +1 -1
  71. package/lib/commonjs/mol-gl/shader/direct-volume.frag.js +1 -1
  72. package/lib/commonjs/mol-gl/shader/image.frag.d.ts +2 -2
  73. package/lib/commonjs/mol-gl/shader/image.frag.js +2 -2
  74. package/lib/commonjs/mol-gl/shader/lines.frag.d.ts +2 -2
  75. package/lib/commonjs/mol-gl/shader/lines.frag.js +2 -2
  76. package/lib/commonjs/mol-gl/shader/points.frag.d.ts +2 -2
  77. package/lib/commonjs/mol-gl/shader/points.frag.js +2 -2
  78. package/lib/commonjs/mol-gl/shader/text.frag.d.ts +2 -2
  79. package/lib/commonjs/mol-gl/shader/text.frag.js +2 -2
  80. package/lib/commonjs/mol-gl/webgl/buffer.d.ts +2 -2
  81. package/lib/commonjs/mol-gl/webgl/buffer.js +12 -12
  82. package/lib/commonjs/mol-gl/webgl/context.d.ts +1 -1
  83. package/lib/commonjs/mol-gl/webgl/context.js +2 -2
  84. package/lib/commonjs/mol-gl/webgl/program.d.ts +1 -1
  85. package/lib/commonjs/mol-gl/webgl/program.js +10 -4
  86. package/lib/commonjs/mol-io/reader/cif/schema/bird.d.ts +8 -8
  87. package/lib/commonjs/mol-io/reader/cif/schema/bird.js +12 -11
  88. package/lib/commonjs/mol-io/reader/cif/schema/ccd-extras.d.ts +1 -1
  89. package/lib/commonjs/mol-io/reader/cif/schema/ccd.d.ts +12 -12
  90. package/lib/commonjs/mol-io/reader/cif/schema/ccd.js +13 -12
  91. package/lib/commonjs/mol-io/reader/cif/schema/mmcif-extras.d.ts +5 -5
  92. package/lib/commonjs/mol-io/reader/cif/schema/mmcif-extras.js +2 -2
  93. package/lib/commonjs/mol-io/reader/cif/schema/mmcif.d.ts +30 -26
  94. package/lib/commonjs/mol-io/reader/cif/schema/mmcif.js +44 -39
  95. package/lib/commonjs/mol-io/reader/cif/schema.d.ts +1 -1
  96. package/lib/commonjs/mol-io/reader/cif/schema.js +22 -2
  97. package/lib/commonjs/mol-io/writer/mol/encoder.js +1 -1
  98. package/lib/commonjs/mol-math/geometry/common.d.ts +2 -1
  99. package/lib/commonjs/mol-math/geometry/common.js +1 -1
  100. package/lib/commonjs/mol-math/geometry/gaussian-density/cpu.d.ts +1 -1
  101. package/lib/commonjs/mol-math/geometry/gaussian-density/cpu.js +2 -2
  102. package/lib/commonjs/mol-math/geometry/gaussian-density/gpu.d.ts +1 -1
  103. package/lib/commonjs/mol-math/geometry/gaussian-density/gpu.js +7 -7
  104. package/lib/commonjs/mol-math/geometry/gaussian-density.d.ts +2 -2
  105. package/lib/commonjs/mol-math/geometry/gaussian-density.js +1 -1
  106. package/lib/commonjs/mol-math/geometry/molecular-surface.d.ts +2 -1
  107. package/lib/commonjs/mol-math/geometry/molecular-surface.js +2 -2
  108. package/lib/commonjs/mol-math/geometry/primitives/box3d.js +2 -1
  109. package/lib/commonjs/mol-math/geometry/primitives/sphere3d.js +12 -6
  110. package/lib/commonjs/mol-model/structure/model/model.js +14 -6
  111. package/lib/commonjs/mol-model/structure/model/properties/common.js +1 -1
  112. package/lib/commonjs/mol-model/structure/model/types.d.ts +19 -17
  113. package/lib/commonjs/mol-model/structure/model/types.js +30 -31
  114. package/lib/commonjs/mol-model/structure/query/queries/generators.js +1 -1
  115. package/lib/commonjs/mol-model/structure/structure/properties.d.ts +1 -1
  116. package/lib/commonjs/mol-model/structure/structure/unit/bonds/inter-compute.js +2 -4
  117. package/lib/commonjs/mol-model/structure/structure/unit/bonds/intra-compute.js +1 -3
  118. package/lib/commonjs/mol-model/structure/structure/unit/rings.js +3 -0
  119. package/lib/commonjs/mol-model-formats/shape/ply.d.ts +2 -0
  120. package/lib/commonjs/mol-model-formats/structure/basic/entities.js +1 -1
  121. package/lib/commonjs/mol-model-formats/structure/basic/schema.d.ts +2 -2
  122. package/lib/commonjs/mol-model-formats/structure/common/component.d.ts +3 -3
  123. package/lib/commonjs/mol-model-formats/structure/common/component.js +46 -46
  124. package/lib/commonjs/mol-model-formats/structure/pdb/atom-site.d.ts +2 -2
  125. package/lib/commonjs/mol-model-formats/structure/pdb/atom-site.js +72 -7
  126. package/lib/commonjs/mol-model-formats/structure/pdb/secondary-structure.js +11 -11
  127. package/lib/commonjs/mol-model-formats/structure/pdb/to-cif.js +7 -2
  128. package/lib/commonjs/mol-model-formats/structure/property/bonds/chem_comp.js +1 -1
  129. package/lib/commonjs/mol-model-formats/structure/property/bonds/struct_conn.js +1 -1
  130. package/lib/commonjs/mol-model-props/computed/representations/interactions-inter-unit-cylinder.d.ts +1 -0
  131. package/lib/commonjs/mol-model-props/computed/representations/interactions-intra-unit-cylinder.d.ts +1 -0
  132. package/lib/commonjs/mol-model-props/computed/representations/interactions.d.ts +3 -0
  133. package/lib/commonjs/mol-model-props/integrative/cross-link-restraint/representation.d.ts +4 -0
  134. package/lib/commonjs/mol-plugin/behavior/dynamic/volume-streaming/model.d.ts +2 -3
  135. package/lib/commonjs/mol-plugin/behavior/dynamic/volume-streaming/util.js +4 -2
  136. package/lib/commonjs/mol-plugin/commands.d.ts +1 -0
  137. package/lib/commonjs/mol-plugin/util/viewport-screenshot.d.ts +3 -0
  138. package/lib/commonjs/mol-plugin-state/actions/structure.d.ts +6 -6
  139. package/lib/commonjs/mol-plugin-state/helpers/structure-selection-query.d.ts +1 -1
  140. package/lib/commonjs/mol-plugin-state/helpers/structure-selection-query.js +1 -1
  141. package/lib/commonjs/mol-plugin-state/transforms/representation.d.ts +6 -0
  142. package/lib/commonjs/mol-plugin-ui/react18.d.ts +11 -0
  143. package/lib/commonjs/mol-plugin-ui/react18.js +38 -0
  144. package/lib/commonjs/mol-plugin-ui/state/common.js +6 -7
  145. package/lib/commonjs/mol-plugin-ui/structure/focus.d.ts +1 -1
  146. package/lib/commonjs/mol-plugin-ui/structure/focus.js +2 -2
  147. package/lib/commonjs/mol-plugin-ui/task.d.ts +2 -21
  148. package/lib/commonjs/mol-plugin-ui/task.js +39 -43
  149. package/lib/commonjs/mol-repr/shape/loci/angle.d.ts +1 -0
  150. package/lib/commonjs/mol-repr/shape/loci/dihedral.d.ts +1 -0
  151. package/lib/commonjs/mol-repr/shape/loci/orientation.d.ts +1 -0
  152. package/lib/commonjs/mol-repr/shape/loci/plane.d.ts +1 -0
  153. package/lib/commonjs/mol-repr/shape/model/unitcell.d.ts +1 -0
  154. package/lib/commonjs/mol-repr/structure/complex-visual.d.ts +3 -0
  155. package/lib/commonjs/mol-repr/structure/params.d.ts +4 -0
  156. package/lib/commonjs/mol-repr/structure/registry.d.ts +10 -0
  157. package/lib/commonjs/mol-repr/structure/representation/backbone.d.ts +3 -0
  158. package/lib/commonjs/mol-repr/structure/representation/ball-and-stick.d.ts +3 -0
  159. package/lib/commonjs/mol-repr/structure/representation/carbohydrate.d.ts +3 -0
  160. package/lib/commonjs/mol-repr/structure/representation/cartoon.d.ts +3 -0
  161. package/lib/commonjs/mol-repr/structure/representation/ellipsoid.d.ts +3 -0
  162. package/lib/commonjs/mol-repr/structure/representation/gaussian-surface.d.ts +3 -0
  163. package/lib/commonjs/mol-repr/structure/representation/molecular-surface.d.ts +3 -0
  164. package/lib/commonjs/mol-repr/structure/representation/orientation.d.ts +3 -0
  165. package/lib/commonjs/mol-repr/structure/representation/putty.d.ts +3 -0
  166. package/lib/commonjs/mol-repr/structure/representation/spacefill.d.ts +3 -0
  167. package/lib/commonjs/mol-repr/structure/units-visual.d.ts +4 -0
  168. package/lib/commonjs/mol-repr/structure/visual/bond-inter-unit-cylinder.d.ts +2 -0
  169. package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-cylinder.d.ts +2 -0
  170. package/lib/commonjs/mol-repr/structure/visual/carbohydrate-link-cylinder.d.ts +1 -0
  171. package/lib/commonjs/mol-repr/structure/visual/carbohydrate-symbol-mesh.d.ts +1 -0
  172. package/lib/commonjs/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.d.ts +1 -0
  173. package/lib/commonjs/mol-repr/structure/visual/element-sphere.d.ts +2 -0
  174. package/lib/commonjs/mol-repr/structure/visual/ellipsoid-mesh.d.ts +1 -0
  175. package/lib/commonjs/mol-repr/structure/visual/gaussian-density-volume.js +2 -3
  176. package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-mesh.d.ts +5 -1
  177. package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-mesh.js +9 -9
  178. package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-wireframe.d.ts +1 -1
  179. package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-wireframe.js +4 -5
  180. package/lib/commonjs/mol-repr/structure/visual/molecular-surface-mesh.d.ts +1 -0
  181. package/lib/commonjs/mol-repr/structure/visual/molecular-surface-mesh.js +3 -3
  182. package/lib/commonjs/mol-repr/structure/visual/molecular-surface-wireframe.d.ts +1 -1
  183. package/lib/commonjs/mol-repr/structure/visual/molecular-surface-wireframe.js +4 -4
  184. package/lib/commonjs/mol-repr/structure/visual/nucleotide-block-mesh.d.ts +1 -0
  185. package/lib/commonjs/mol-repr/structure/visual/nucleotide-ring-mesh.d.ts +1 -0
  186. package/lib/commonjs/mol-repr/structure/visual/orientation-ellipsoid-mesh.d.ts +1 -0
  187. package/lib/commonjs/mol-repr/structure/visual/polymer-backbone-cylinder.d.ts +2 -0
  188. package/lib/commonjs/mol-repr/structure/visual/polymer-backbone-sphere.d.ts +2 -0
  189. package/lib/commonjs/mol-repr/structure/visual/polymer-direction-wedge.d.ts +1 -0
  190. package/lib/commonjs/mol-repr/structure/visual/polymer-gap-cylinder.d.ts +1 -0
  191. package/lib/commonjs/mol-repr/structure/visual/polymer-trace-mesh.d.ts +1 -0
  192. package/lib/commonjs/mol-repr/structure/visual/polymer-tube-mesh.d.ts +1 -0
  193. package/lib/commonjs/mol-repr/structure/visual/util/common.d.ts +1 -3
  194. package/lib/commonjs/mol-repr/structure/visual/util/common.js +2 -27
  195. package/lib/commonjs/mol-repr/util.d.ts +2 -1
  196. package/lib/commonjs/mol-repr/util.js +2 -2
  197. package/lib/commonjs/mol-repr/volume/isosurface.d.ts +5 -0
  198. package/lib/commonjs/mol-repr/volume/registry.d.ts +1 -0
  199. package/lib/commonjs/mol-script/language/builder.d.ts +1 -0
  200. package/lib/examples/alpha-orbitals/index.html +61 -61
  201. package/lib/examples/alpha-orbitals/index.js +1 -1
  202. package/lib/examples/basic-wrapper/index.html +137 -137
  203. package/lib/examples/basic-wrapper/index.js +1 -1
  204. package/lib/examples/lighting/index.html +88 -88
  205. package/lib/examples/lighting/index.js +1 -1
  206. package/lib/examples/proteopedia-wrapper/index.html +236 -236
  207. package/lib/examples/proteopedia-wrapper/index.js +1 -1
  208. package/lib/extensions/anvil/behavior.d.ts +1 -0
  209. package/lib/extensions/anvil/representation.d.ts +4 -0
  210. package/lib/extensions/cellpack/representation.d.ts +1 -0
  211. package/lib/extensions/dnatco/confal-pyramids/color.d.ts +397 -2
  212. package/lib/extensions/dnatco/confal-pyramids/color.js +224 -132
  213. package/lib/extensions/dnatco/confal-pyramids/property.js +1 -3
  214. package/lib/extensions/dnatco/confal-pyramids/representation.d.ts +3 -0
  215. package/lib/extensions/dnatco/confal-pyramids/util.js +19 -20
  216. package/lib/extensions/rcsb/assembly-symmetry/behavior.d.ts +1 -0
  217. package/lib/extensions/rcsb/assembly-symmetry/representation.d.ts +1 -0
  218. package/lib/extensions/rcsb/validation-report/representation.d.ts +5 -0
  219. package/lib/mol-canvas3d/canvas3d.d.ts +2 -0
  220. package/lib/mol-canvas3d/helper/camera-helper.d.ts +1 -0
  221. package/lib/mol-canvas3d/helper/handle-helper.d.ts +1 -0
  222. package/lib/mol-canvas3d/helper/helper.d.ts +2 -0
  223. package/lib/mol-canvas3d/passes/image.d.ts +1 -0
  224. package/lib/mol-data/db/column.d.ts +10 -3
  225. package/lib/mol-data/db/column.js +39 -18
  226. package/lib/mol-geo/geometry/cylinders/cylinders.d.ts +4 -2
  227. package/lib/mol-geo/geometry/cylinders/cylinders.js +2 -2
  228. package/lib/mol-geo/geometry/lines/lines.d.ts +0 -1
  229. package/lib/mol-geo/geometry/mesh/color-smoothing.d.ts +1 -1
  230. package/lib/mol-geo/geometry/mesh/color-smoothing.js +5 -3
  231. package/lib/mol-geo/geometry/mesh/mesh.d.ts +2 -1
  232. package/lib/mol-geo/geometry/mesh/mesh.js +2 -2
  233. package/lib/mol-geo/geometry/points/points.d.ts +1 -1
  234. package/lib/mol-geo/geometry/spheres/spheres.d.ts +2 -1
  235. package/lib/mol-geo/geometry/spheres/spheres.js +2 -2
  236. package/lib/mol-geo/geometry/texture-mesh/color-smoothing.d.ts +1 -1
  237. package/lib/mol-geo/geometry/texture-mesh/color-smoothing.js +6 -4
  238. package/lib/mol-geo/geometry/texture-mesh/texture-mesh.d.ts +2 -1
  239. package/lib/mol-geo/geometry/texture-mesh/texture-mesh.js +2 -2
  240. package/lib/mol-gl/shader/chunks/wboit-write.glsl.d.ts +2 -2
  241. package/lib/mol-gl/shader/chunks/wboit-write.glsl.js +2 -2
  242. package/lib/mol-gl/shader/direct-volume.frag.d.ts +1 -1
  243. package/lib/mol-gl/shader/direct-volume.frag.js +1 -1
  244. package/lib/mol-gl/shader/image.frag.d.ts +2 -2
  245. package/lib/mol-gl/shader/image.frag.js +2 -2
  246. package/lib/mol-gl/shader/lines.frag.d.ts +2 -2
  247. package/lib/mol-gl/shader/lines.frag.js +2 -2
  248. package/lib/mol-gl/shader/points.frag.d.ts +2 -2
  249. package/lib/mol-gl/shader/points.frag.js +2 -2
  250. package/lib/mol-gl/shader/text.frag.d.ts +2 -2
  251. package/lib/mol-gl/shader/text.frag.js +2 -2
  252. package/lib/mol-gl/webgl/buffer.d.ts +2 -2
  253. package/lib/mol-gl/webgl/buffer.js +12 -12
  254. package/lib/mol-gl/webgl/context.d.ts +1 -1
  255. package/lib/mol-gl/webgl/context.js +2 -2
  256. package/lib/mol-gl/webgl/program.d.ts +1 -1
  257. package/lib/mol-gl/webgl/program.js +10 -4
  258. package/lib/mol-io/reader/cif/schema/bird.d.ts +8 -8
  259. package/lib/mol-io/reader/cif/schema/bird.js +12 -11
  260. package/lib/mol-io/reader/cif/schema/ccd-extras.d.ts +1 -1
  261. package/lib/mol-io/reader/cif/schema/ccd.d.ts +12 -12
  262. package/lib/mol-io/reader/cif/schema/ccd.js +13 -12
  263. package/lib/mol-io/reader/cif/schema/mmcif-extras.d.ts +5 -5
  264. package/lib/mol-io/reader/cif/schema/mmcif-extras.js +2 -2
  265. package/lib/mol-io/reader/cif/schema/mmcif.d.ts +30 -26
  266. package/lib/mol-io/reader/cif/schema/mmcif.js +44 -39
  267. package/lib/mol-io/reader/cif/schema.d.ts +1 -1
  268. package/lib/mol-io/reader/cif/schema.js +22 -2
  269. package/lib/mol-io/writer/mol/encoder.js +1 -1
  270. package/lib/mol-math/geometry/common.d.ts +2 -1
  271. package/lib/mol-math/geometry/common.js +1 -1
  272. package/lib/mol-math/geometry/gaussian-density/cpu.d.ts +1 -1
  273. package/lib/mol-math/geometry/gaussian-density/cpu.js +2 -2
  274. package/lib/mol-math/geometry/gaussian-density/gpu.d.ts +1 -1
  275. package/lib/mol-math/geometry/gaussian-density/gpu.js +7 -7
  276. package/lib/mol-math/geometry/gaussian-density.d.ts +2 -2
  277. package/lib/mol-math/geometry/gaussian-density.js +1 -1
  278. package/lib/mol-math/geometry/molecular-surface.d.ts +2 -1
  279. package/lib/mol-math/geometry/molecular-surface.js +2 -2
  280. package/lib/mol-math/geometry/primitives/box3d.js +2 -1
  281. package/lib/mol-math/geometry/primitives/sphere3d.js +12 -6
  282. package/lib/mol-model/structure/model/model.js +14 -6
  283. package/lib/mol-model/structure/model/properties/common.js +1 -1
  284. package/lib/mol-model/structure/model/types.d.ts +19 -17
  285. package/lib/mol-model/structure/model/types.js +30 -31
  286. package/lib/mol-model/structure/query/queries/generators.js +1 -1
  287. package/lib/mol-model/structure/structure/properties.d.ts +1 -1
  288. package/lib/mol-model/structure/structure/unit/bonds/inter-compute.js +2 -4
  289. package/lib/mol-model/structure/structure/unit/bonds/intra-compute.js +1 -3
  290. package/lib/mol-model/structure/structure/unit/rings.js +3 -0
  291. package/lib/mol-model-formats/shape/ply.d.ts +2 -0
  292. package/lib/mol-model-formats/structure/basic/entities.js +1 -1
  293. package/lib/mol-model-formats/structure/basic/schema.d.ts +2 -2
  294. package/lib/mol-model-formats/structure/common/component.d.ts +3 -3
  295. package/lib/mol-model-formats/structure/common/component.js +46 -46
  296. package/lib/mol-model-formats/structure/pdb/atom-site.d.ts +2 -2
  297. package/lib/mol-model-formats/structure/pdb/atom-site.js +72 -7
  298. package/lib/mol-model-formats/structure/pdb/secondary-structure.js +11 -11
  299. package/lib/mol-model-formats/structure/pdb/to-cif.js +7 -2
  300. package/lib/mol-model-formats/structure/property/bonds/chem_comp.js +1 -1
  301. package/lib/mol-model-formats/structure/property/bonds/struct_conn.js +1 -1
  302. package/lib/mol-model-props/computed/representations/interactions-inter-unit-cylinder.d.ts +1 -0
  303. package/lib/mol-model-props/computed/representations/interactions-intra-unit-cylinder.d.ts +1 -0
  304. package/lib/mol-model-props/computed/representations/interactions.d.ts +3 -0
  305. package/lib/mol-model-props/integrative/cross-link-restraint/representation.d.ts +4 -0
  306. package/lib/mol-plugin/behavior/dynamic/volume-streaming/model.d.ts +2 -3
  307. package/lib/mol-plugin/behavior/dynamic/volume-streaming/util.js +4 -2
  308. package/lib/mol-plugin/commands.d.ts +1 -0
  309. package/lib/mol-plugin/util/viewport-screenshot.d.ts +3 -0
  310. package/lib/mol-plugin/version.js +2 -2
  311. package/lib/mol-plugin-state/actions/structure.d.ts +6 -6
  312. package/lib/mol-plugin-state/helpers/structure-selection-query.d.ts +1 -1
  313. package/lib/mol-plugin-state/helpers/structure-selection-query.js +1 -1
  314. package/lib/mol-plugin-state/transforms/representation.d.ts +6 -0
  315. package/lib/mol-plugin-ui/react18.d.ts +11 -0
  316. package/lib/mol-plugin-ui/react18.js +34 -0
  317. package/lib/mol-plugin-ui/skin/base/base.scss +32 -32
  318. package/lib/mol-plugin-ui/skin/base/components/controls-base.scss +333 -333
  319. package/lib/mol-plugin-ui/skin/base/components/controls.scss +418 -418
  320. package/lib/mol-plugin-ui/skin/base/components/help.scss +27 -27
  321. package/lib/mol-plugin-ui/skin/base/components/line-graph.scss +67 -67
  322. package/lib/mol-plugin-ui/skin/base/components/log.scss +100 -100
  323. package/lib/mol-plugin-ui/skin/base/components/misc.scss +643 -643
  324. package/lib/mol-plugin-ui/skin/base/components/sequence.scss +125 -125
  325. package/lib/mol-plugin-ui/skin/base/components/slider.scss +165 -165
  326. package/lib/mol-plugin-ui/skin/base/components/tasks.scss +99 -99
  327. package/lib/mol-plugin-ui/skin/base/components/toast.scss +83 -83
  328. package/lib/mol-plugin-ui/skin/base/components/transformer.scss +163 -163
  329. package/lib/mol-plugin-ui/skin/base/components/viewport.scss +128 -128
  330. package/lib/mol-plugin-ui/skin/base/layout/common.scss +71 -71
  331. package/lib/mol-plugin-ui/skin/base/layout/controls-landscape.scss +89 -89
  332. package/lib/mol-plugin-ui/skin/base/layout/controls-outside.scss +98 -98
  333. package/lib/mol-plugin-ui/skin/base/layout/controls-portrait.scss +108 -108
  334. package/lib/mol-plugin-ui/skin/base/layout.scss +40 -40
  335. package/lib/mol-plugin-ui/skin/base/logo.scss +12 -12
  336. package/lib/mol-plugin-ui/skin/base/normalize.scss +209 -209
  337. package/lib/mol-plugin-ui/skin/base/ui.scss +40 -40
  338. package/lib/mol-plugin-ui/skin/base/variables.scss +85 -85
  339. package/lib/mol-plugin-ui/skin/blue.scss +1 -1
  340. package/lib/mol-plugin-ui/skin/colors/blue.scss +23 -23
  341. package/lib/mol-plugin-ui/skin/colors/dark.scss +23 -23
  342. package/lib/mol-plugin-ui/skin/colors/light.scss +29 -29
  343. package/lib/mol-plugin-ui/skin/dark.scss +1 -1
  344. package/lib/mol-plugin-ui/skin/light.scss +1 -1
  345. package/lib/mol-plugin-ui/state/common.js +7 -8
  346. package/lib/mol-plugin-ui/structure/focus.d.ts +1 -1
  347. package/lib/mol-plugin-ui/structure/focus.js +2 -2
  348. package/lib/mol-plugin-ui/task.d.ts +2 -21
  349. package/lib/mol-plugin-ui/task.js +40 -46
  350. package/lib/mol-repr/shape/loci/angle.d.ts +1 -0
  351. package/lib/mol-repr/shape/loci/dihedral.d.ts +1 -0
  352. package/lib/mol-repr/shape/loci/orientation.d.ts +1 -0
  353. package/lib/mol-repr/shape/loci/plane.d.ts +1 -0
  354. package/lib/mol-repr/shape/model/unitcell.d.ts +1 -0
  355. package/lib/mol-repr/structure/complex-visual.d.ts +3 -0
  356. package/lib/mol-repr/structure/params.d.ts +4 -0
  357. package/lib/mol-repr/structure/registry.d.ts +10 -0
  358. package/lib/mol-repr/structure/representation/backbone.d.ts +3 -0
  359. package/lib/mol-repr/structure/representation/ball-and-stick.d.ts +3 -0
  360. package/lib/mol-repr/structure/representation/carbohydrate.d.ts +3 -0
  361. package/lib/mol-repr/structure/representation/cartoon.d.ts +3 -0
  362. package/lib/mol-repr/structure/representation/ellipsoid.d.ts +3 -0
  363. package/lib/mol-repr/structure/representation/gaussian-surface.d.ts +3 -0
  364. package/lib/mol-repr/structure/representation/molecular-surface.d.ts +3 -0
  365. package/lib/mol-repr/structure/representation/orientation.d.ts +3 -0
  366. package/lib/mol-repr/structure/representation/putty.d.ts +3 -0
  367. package/lib/mol-repr/structure/representation/spacefill.d.ts +3 -0
  368. package/lib/mol-repr/structure/units-visual.d.ts +4 -0
  369. package/lib/mol-repr/structure/visual/bond-inter-unit-cylinder.d.ts +2 -0
  370. package/lib/mol-repr/structure/visual/bond-intra-unit-cylinder.d.ts +2 -0
  371. package/lib/mol-repr/structure/visual/carbohydrate-link-cylinder.d.ts +1 -0
  372. package/lib/mol-repr/structure/visual/carbohydrate-symbol-mesh.d.ts +1 -0
  373. package/lib/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.d.ts +1 -0
  374. package/lib/mol-repr/structure/visual/element-sphere.d.ts +2 -0
  375. package/lib/mol-repr/structure/visual/ellipsoid-mesh.d.ts +1 -0
  376. package/lib/mol-repr/structure/visual/gaussian-density-volume.js +2 -3
  377. package/lib/mol-repr/structure/visual/gaussian-surface-mesh.d.ts +5 -1
  378. package/lib/mol-repr/structure/visual/gaussian-surface-mesh.js +10 -10
  379. package/lib/mol-repr/structure/visual/gaussian-surface-wireframe.d.ts +1 -1
  380. package/lib/mol-repr/structure/visual/gaussian-surface-wireframe.js +4 -5
  381. package/lib/mol-repr/structure/visual/molecular-surface-mesh.d.ts +1 -0
  382. package/lib/mol-repr/structure/visual/molecular-surface-mesh.js +4 -4
  383. package/lib/mol-repr/structure/visual/molecular-surface-wireframe.d.ts +1 -1
  384. package/lib/mol-repr/structure/visual/molecular-surface-wireframe.js +5 -5
  385. package/lib/mol-repr/structure/visual/nucleotide-block-mesh.d.ts +1 -0
  386. package/lib/mol-repr/structure/visual/nucleotide-ring-mesh.d.ts +1 -0
  387. package/lib/mol-repr/structure/visual/orientation-ellipsoid-mesh.d.ts +1 -0
  388. package/lib/mol-repr/structure/visual/polymer-backbone-cylinder.d.ts +2 -0
  389. package/lib/mol-repr/structure/visual/polymer-backbone-sphere.d.ts +2 -0
  390. package/lib/mol-repr/structure/visual/polymer-direction-wedge.d.ts +1 -0
  391. package/lib/mol-repr/structure/visual/polymer-gap-cylinder.d.ts +1 -0
  392. package/lib/mol-repr/structure/visual/polymer-trace-mesh.d.ts +1 -0
  393. package/lib/mol-repr/structure/visual/polymer-tube-mesh.d.ts +1 -0
  394. package/lib/mol-repr/structure/visual/util/common.d.ts +1 -3
  395. package/lib/mol-repr/structure/visual/util/common.js +1 -24
  396. package/lib/mol-repr/util.d.ts +2 -1
  397. package/lib/mol-repr/util.js +2 -2
  398. package/lib/mol-repr/volume/isosurface.d.ts +5 -0
  399. package/lib/mol-repr/volume/registry.d.ts +1 -0
  400. package/lib/mol-script/language/builder.d.ts +1 -0
  401. package/package.json +162 -160
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) 2018-2020 mol* contributors, licensed under MIT, See LICENSE file for more info.
2
+ * Copyright (c) 2018-2022 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
3
  *
4
4
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
5
5
  */
@@ -127,7 +127,7 @@ export function GaussianDensityCPU(ctx, position, box, radius, props) {
127
127
  transform = Mat4.identity();
128
128
  Mat4.fromScaling(transform, Vec3.create(resolution, resolution, resolution));
129
129
  Mat4.setTranslation(transform, expandedBox.min);
130
- return [2 /*return*/, { field: field, idField: idField, transform: transform, radiusFactor: 1, resolution: resolution }];
130
+ return [2 /*return*/, { field: field, idField: idField, transform: transform, radiusFactor: 1, resolution: resolution, maxRadius: maxRadius }];
131
131
  }
132
132
  });
133
133
  });
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) 2017-2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
2
+ * Copyright (c) 2017-2022 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
3
  *
4
4
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
5
5
  * @author Michael Krone <michael.krone@uni-tuebingen.de>
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) 2017-2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
2
+ * Copyright (c) 2017-2022 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
3
  *
4
4
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
5
5
  * @author Michael Krone <michael.krone@uni-tuebingen.de>
@@ -56,11 +56,11 @@ export function GaussianDensityGPU(position, box, radius, props, webgl) {
56
56
  // it's faster than texture3d
57
57
  // console.time('GaussianDensityTexture2d')
58
58
  var tmpTexture = getTexture('tmp', webgl, 'image-uint8', 'rgba', 'ubyte', 'linear');
59
- var _a = calcGaussianDensityTexture2d(webgl, position, box, radius, false, props, tmpTexture), scale = _a.scale, bbox = _a.bbox, texture = _a.texture, gridDim = _a.gridDim, gridTexDim = _a.gridTexDim, radiusFactor = _a.radiusFactor, resolution = _a.resolution;
59
+ var _a = calcGaussianDensityTexture2d(webgl, position, box, radius, false, props, tmpTexture), scale = _a.scale, bbox = _a.bbox, texture = _a.texture, gridDim = _a.gridDim, gridTexDim = _a.gridTexDim, radiusFactor = _a.radiusFactor, resolution = _a.resolution, maxRadius = _a.maxRadius;
60
60
  // webgl.waitForGpuCommandsCompleteSync()
61
61
  // console.timeEnd('GaussianDensityTexture2d')
62
62
  var _b = fieldFromTexture2d(webgl, texture, gridDim, gridTexDim), field = _b.field, idField = _b.idField;
63
- return { field: field, idField: idField, transform: getTransform(scale, bbox), radiusFactor: radiusFactor, resolution: resolution };
63
+ return { field: field, idField: idField, transform: getTransform(scale, bbox), radiusFactor: radiusFactor, resolution: resolution, maxRadius: maxRadius };
64
64
  }
65
65
  export function GaussianDensityTexture(webgl, position, box, radius, props, oldTexture) {
66
66
  return webgl.isWebGL2 ?
@@ -74,8 +74,8 @@ export function GaussianDensityTexture3d(webgl, position, box, radius, props, ol
74
74
  return finalizeGaussianDensityTexture(calcGaussianDensityTexture3d(webgl, position, box, radius, props, oldTexture));
75
75
  }
76
76
  function finalizeGaussianDensityTexture(_a) {
77
- var texture = _a.texture, scale = _a.scale, bbox = _a.bbox, gridDim = _a.gridDim, gridTexDim = _a.gridTexDim, gridTexScale = _a.gridTexScale, radiusFactor = _a.radiusFactor, resolution = _a.resolution;
78
- return { transform: getTransform(scale, bbox), texture: texture, bbox: bbox, gridDim: gridDim, gridTexDim: gridTexDim, gridTexScale: gridTexScale, radiusFactor: radiusFactor, resolution: resolution };
77
+ var texture = _a.texture, scale = _a.scale, bbox = _a.bbox, gridDim = _a.gridDim, gridTexDim = _a.gridTexDim, gridTexScale = _a.gridTexScale, radiusFactor = _a.radiusFactor, resolution = _a.resolution, maxRadius = _a.maxRadius;
78
+ return { transform: getTransform(scale, bbox), texture: texture, bbox: bbox, gridDim: gridDim, gridTexDim: gridTexDim, gridTexScale: gridTexScale, radiusFactor: radiusFactor, resolution: resolution, maxRadius: maxRadius };
79
79
  }
80
80
  function getTransform(scale, bbox) {
81
81
  var transform = Mat4.identity();
@@ -151,7 +151,7 @@ function calcGaussianDensityTexture2d(webgl, position, box, radius, powerOfTwo,
151
151
  render(texture, false);
152
152
  }
153
153
  // printTexture(webgl, minDistTex, 0.75);
154
- return { texture: texture, scale: scale, bbox: expandedBox, gridDim: dim, gridTexDim: gridTexDim, gridTexScale: gridTexScale, radiusFactor: radiusFactor, resolution: resolution };
154
+ return { texture: texture, scale: scale, bbox: expandedBox, gridDim: dim, gridTexDim: gridTexDim, gridTexScale: gridTexScale, radiusFactor: radiusFactor, resolution: resolution, maxRadius: maxRadius };
155
155
  }
156
156
  function calcGaussianDensityTexture3d(webgl, position, box, radius, props, texture) {
157
157
  // console.log('3d');
@@ -195,7 +195,7 @@ function calcGaussianDensityTexture3d(webgl, position, box, radius, props, textu
195
195
  render(minDistTex, true);
196
196
  setupGroupIdRendering(webgl, renderable);
197
197
  render(texture, false);
198
- return { texture: texture, scale: scale, bbox: expandedBox, gridDim: dim, gridTexDim: dim, gridTexScale: gridTexScale, radiusFactor: radiusFactor, resolution: resolution };
198
+ return { texture: texture, scale: scale, bbox: expandedBox, gridDim: dim, gridTexDim: dim, gridTexScale: gridTexScale, radiusFactor: radiusFactor, resolution: resolution, maxRadius: maxRadius };
199
199
  }
200
200
  //
201
201
  function prepareGaussianDensityData(position, box, radius, props) {
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) 2018-2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
2
+ * Copyright (c) 2018-2022 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
3
  *
4
4
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
5
5
  */
@@ -16,11 +16,11 @@ export declare const DefaultGaussianDensityProps: {
16
16
  export declare type GaussianDensityProps = typeof DefaultGaussianDensityProps;
17
17
  export declare type GaussianDensityData = {
18
18
  radiusFactor: number;
19
- resolution: number;
20
19
  } & DensityData;
21
20
  export declare type GaussianDensityTextureData = {
22
21
  radiusFactor: number;
23
22
  resolution: number;
23
+ maxRadius: number;
24
24
  } & DensityTextureData;
25
25
  export declare function computeGaussianDensity(position: PositionData, box: Box3D, radius: (index: number) => number, props: GaussianDensityProps): Task<GaussianDensityData>;
26
26
  export declare function computeGaussianDensityTexture(position: PositionData, box: Box3D, radius: (index: number) => number, props: GaussianDensityProps, webgl: WebGLContext, texture?: Texture): Task<GaussianDensityTextureData>;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) 2018-2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
2
+ * Copyright (c) 2018-2022 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
3
  *
4
4
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) 2019-2020 mol* contributors, licensed under MIT, See LICENSE file for more info.
2
+ * Copyright (c) 2019-2022 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
3
  *
4
4
  * @author Fred Ludlow <fred.ludlow@gmail.com>
5
5
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
@@ -29,4 +29,5 @@ export declare function calcMolecularSurface(ctx: RuntimeContext, position: Requ
29
29
  idField: Tensor;
30
30
  transform: Mat4;
31
31
  resolution: number;
32
+ maxRadius: number;
32
33
  }>;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) 2019-2020 mol* contributors, licensed under MIT, See LICENSE file for more info.
2
+ * Copyright (c) 2019-2022 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
3
  *
4
4
  * @author Fred Ludlow <fred.ludlow@gmail.com>
5
5
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
@@ -345,7 +345,7 @@ export function calcMolecularSurface(ctx, position, boundary, maxRadius, box, pr
345
345
  Mat4.fromScaling(transform, Vec3.create(resolution, resolution, resolution));
346
346
  Mat4.setTranslation(transform, expandedBox.min);
347
347
  // console.log({ field, idField, transform, updateChunk })
348
- return [2 /*return*/, { field: field, idField: idField, transform: transform, resolution: resolution }];
348
+ return [2 /*return*/, { field: field, idField: idField, transform: transform, resolution: resolution, maxRadius: maxRadius }];
349
349
  }
350
350
  });
351
351
  });
@@ -27,8 +27,9 @@ function Box3D() {
27
27
  Box3D.clone = clone;
28
28
  /** Get box from sphere, uses extrema if available */
29
29
  function fromSphere3D(out, sphere) {
30
- if (Sphere3D.hasExtrema(sphere))
30
+ if (Sphere3D.hasExtrema(sphere) && sphere.extrema.length >= 14) { // 14 extrema with coarse boundary helper
31
31
  return fromVec3Array(out, sphere.extrema);
32
+ }
32
33
  var r = Vec3.create(sphere.radius, sphere.radius, sphere.radius);
33
34
  Vec3.sub(out.min, sphere.center, r);
34
35
  Vec3.add(out.max, sphere.center, r);
@@ -202,15 +202,21 @@ function Sphere3D() {
202
202
  var axes_1 = PrincipalAxes.calculateMomentsAxes(positions);
203
203
  Axes3D.scale(axes_1, Axes3D.normalize(axes_1, axes_1), delta);
204
204
  setExtrema(out, sphere.extrema.map(function (e) {
205
- Vec3.sub(tmpDir, e, sphere.center);
206
- var out = Vec3.clone(e);
205
+ Vec3.normalize(tmpDir, Vec3.sub(tmpDir, e, sphere.center));
206
+ var o = Vec3.clone(e);
207
207
  var sA = Vec3.dot(tmpDir, axes_1.dirA) < 0 ? -1 : 1;
208
- Vec3.scaleAndAdd(out, out, axes_1.dirA, sA);
208
+ Vec3.scaleAndAdd(o, o, axes_1.dirA, sA);
209
209
  var sB = Vec3.dot(tmpDir, axes_1.dirB) < 0 ? -1 : 1;
210
- Vec3.scaleAndAdd(out, out, axes_1.dirB, sB);
210
+ Vec3.scaleAndAdd(o, o, axes_1.dirB, sB);
211
211
  var sC = Vec3.dot(tmpDir, axes_1.dirC) < 0 ? -1 : 1;
212
- Vec3.scaleAndAdd(out, out, axes_1.dirC, sC);
213
- return out;
212
+ Vec3.scaleAndAdd(o, o, axes_1.dirC, sC);
213
+ if (Vec3.distance(out.center, o) > out.radius) {
214
+ if (sphere.extrema.length >= 14) { // 14 extrema with coarse boundary helper
215
+ Vec3.normalize(tmpDir, Vec3.sub(tmpDir, o, sphere.center));
216
+ }
217
+ Vec3.scaleAndAdd(o, out.center, tmpDir, out.radius);
218
+ }
219
+ return o;
214
220
  }));
215
221
  }
216
222
  return out;
@@ -18,6 +18,7 @@ import { ModelSymmetry } from '../../../mol-model-formats/structure/property/sym
18
18
  import { Column } from '../../../mol-data/db';
19
19
  import { CustomModelProperty } from '../../../mol-model-props/common/custom-model-property';
20
20
  import { ArrayTrajectory } from '../trajectory';
21
+ import { ModelSecondaryStructure } from '../../../mol-model-formats/structure/property/secondary-structure';
21
22
  { }
22
23
  export var Model;
23
24
  (function (Model) {
@@ -28,8 +29,12 @@ export var Model;
28
29
  var isIdentity = Column.isIdentity(srcIndex);
29
30
  var srcIndexArray = isIdentity ? void 0 : srcIndex.toArray({ array: Int32Array });
30
31
  var coarseGrained = isCoarseGrained(model);
32
+ var elementCount = model.atomicHierarchy.atoms._rowCount;
31
33
  for (var i = 0, il = frames.length; i < il; ++i) {
32
34
  var f = frames[i];
35
+ if (f.elementCount !== elementCount) {
36
+ throw new Error("Frame element count mismatch, got ".concat(f.elementCount, " but expected ").concat(elementCount, "."));
37
+ }
33
38
  var m = __assign(__assign({}, model), { id: UUID.create22(), modelNum: i, atomicConformation: Coordinates.getAtomicConformation(f, model.atomicConformation.atomId, srcIndexArray),
34
39
  // TODO: add support for supplying sphere and gaussian coordinates in addition to atomic coordinates?
35
40
  // coarseConformation: coarse.conformation,
@@ -215,7 +220,7 @@ export var Model;
215
220
  return false;
216
221
  var db = model.sourceData.data.db;
217
222
  for (var i = 0, il = db.database_2.database_id.rowCount; i < il; ++i) {
218
- if (db.database_2.database_id.value(i) === 'PDB')
223
+ if (db.database_2.database_id.value(i) === 'pdb')
219
224
  return true;
220
225
  }
221
226
  return false;
@@ -232,11 +237,14 @@ export var Model;
232
237
  }
233
238
  Model.hasPdbId = hasPdbId;
234
239
  function hasSecondaryStructure(model) {
235
- if (!MmcifFormat.is(model.sourceData))
236
- return false;
237
- var db = model.sourceData.data.db;
238
- return (db.struct_conf.id.isDefined ||
239
- db.struct_sheet_range.id.isDefined);
240
+ if (MmcifFormat.is(model.sourceData)) {
241
+ var db = model.sourceData.data.db;
242
+ return (db.struct_conf.id.isDefined ||
243
+ db.struct_sheet_range.id.isDefined);
244
+ }
245
+ else {
246
+ return ModelSecondaryStructure.Provider.isApplicable(model);
247
+ }
240
248
  }
241
249
  Model.hasSecondaryStructure = hasSecondaryStructure;
242
250
  var tmpAngles90 = Vec3.create(1.5707963, 1.5707963, 1.5707963); // in radians
@@ -5,4 +5,4 @@
5
5
  * @author David Sehnal <david.sehnal@gmail.com>
6
6
  */
7
7
  import { Column } from '../../../../mol-data/db';
8
- export var EntitySubtype = Column.Schema.Aliased(Column.Schema.Str(''));
8
+ export var EntitySubtype = Column.Schema.Aliased(Column.Schema.Str());
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) 2017-2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
2
+ * Copyright (c) 2017-2022 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
3
  *
4
4
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
5
5
  * @author David Sehnal <david.sehnal@gmail.com>
@@ -62,32 +62,33 @@ export declare const PolymerTypeAtomRoleId: {
62
62
  };
63
63
  export declare const ProteinBackboneAtoms: Set<string>;
64
64
  export declare const NucleicBackboneAtoms: Set<string>;
65
+ declare type ChemCompType = mmCIF_chemComp_schema['type']['T'];
65
66
  /** Chemical component type names for D-linked protein */
66
- export declare const DProteinComponentTypeNames: Set<string>;
67
+ export declare const DProteinComponentTypeNames: Set<"other" | "d-peptide linking" | "l-peptide linking" | "d-peptide nh3 amino terminus" | "l-peptide nh3 amino terminus" | "d-peptide cooh carboxy terminus" | "l-peptide cooh carboxy terminus" | "dna linking" | "rna linking" | "l-rna linking" | "l-dna linking" | "dna oh 5 prime terminus" | "rna oh 5 prime terminus" | "dna oh 3 prime terminus" | "rna oh 3 prime terminus" | "d-saccharide, beta linking" | "d-saccharide, alpha linking" | "l-saccharide, beta linking" | "l-saccharide, alpha linking" | "l-saccharide" | "d-saccharide" | "saccharide" | "non-polymer" | "peptide linking" | "peptide-like" | "l-gamma-peptide, c-delta linking" | "d-gamma-peptide, c-delta linking" | "l-beta-peptide, c-gamma linking" | "d-beta-peptide, c-gamma linking" | "ion" | "lipid">;
67
68
  /** Chemical component type names for L-linked protein */
68
- export declare const LProteinComponentTypeNames: Set<string>;
69
+ export declare const LProteinComponentTypeNames: Set<"other" | "d-peptide linking" | "l-peptide linking" | "d-peptide nh3 amino terminus" | "l-peptide nh3 amino terminus" | "d-peptide cooh carboxy terminus" | "l-peptide cooh carboxy terminus" | "dna linking" | "rna linking" | "l-rna linking" | "l-dna linking" | "dna oh 5 prime terminus" | "rna oh 5 prime terminus" | "dna oh 3 prime terminus" | "rna oh 3 prime terminus" | "d-saccharide, beta linking" | "d-saccharide, alpha linking" | "l-saccharide, beta linking" | "l-saccharide, alpha linking" | "l-saccharide" | "d-saccharide" | "saccharide" | "non-polymer" | "peptide linking" | "peptide-like" | "l-gamma-peptide, c-delta linking" | "d-gamma-peptide, c-delta linking" | "l-beta-peptide, c-gamma linking" | "d-beta-peptide, c-gamma linking" | "ion" | "lipid">;
69
70
  /** Chemical component type names for gamma protein, overlaps with D/L-linked */
70
- export declare const GammaProteinComponentTypeNames: Set<string>;
71
+ export declare const GammaProteinComponentTypeNames: Set<"other" | "d-peptide linking" | "l-peptide linking" | "d-peptide nh3 amino terminus" | "l-peptide nh3 amino terminus" | "d-peptide cooh carboxy terminus" | "l-peptide cooh carboxy terminus" | "dna linking" | "rna linking" | "l-rna linking" | "l-dna linking" | "dna oh 5 prime terminus" | "rna oh 5 prime terminus" | "dna oh 3 prime terminus" | "rna oh 3 prime terminus" | "d-saccharide, beta linking" | "d-saccharide, alpha linking" | "l-saccharide, beta linking" | "l-saccharide, alpha linking" | "l-saccharide" | "d-saccharide" | "saccharide" | "non-polymer" | "peptide linking" | "peptide-like" | "l-gamma-peptide, c-delta linking" | "d-gamma-peptide, c-delta linking" | "l-beta-peptide, c-gamma linking" | "d-beta-peptide, c-gamma linking" | "ion" | "lipid">;
71
72
  /** Chemical component type names for beta protein, overlaps with D/L-linked */
72
- export declare const BetaProteinComponentTypeNames: Set<string>;
73
+ export declare const BetaProteinComponentTypeNames: Set<"other" | "d-peptide linking" | "l-peptide linking" | "d-peptide nh3 amino terminus" | "l-peptide nh3 amino terminus" | "d-peptide cooh carboxy terminus" | "l-peptide cooh carboxy terminus" | "dna linking" | "rna linking" | "l-rna linking" | "l-dna linking" | "dna oh 5 prime terminus" | "rna oh 5 prime terminus" | "dna oh 3 prime terminus" | "rna oh 3 prime terminus" | "d-saccharide, beta linking" | "d-saccharide, alpha linking" | "l-saccharide, beta linking" | "l-saccharide, alpha linking" | "l-saccharide" | "d-saccharide" | "saccharide" | "non-polymer" | "peptide linking" | "peptide-like" | "l-gamma-peptide, c-delta linking" | "d-gamma-peptide, c-delta linking" | "l-beta-peptide, c-gamma linking" | "d-beta-peptide, c-gamma linking" | "ion" | "lipid">;
73
74
  /** Chemical component type names for protein termini, overlaps with D/L-linked */
74
- export declare const ProteinTerminusComponentTypeNames: Set<string>;
75
+ export declare const ProteinTerminusComponentTypeNames: Set<"other" | "d-peptide linking" | "l-peptide linking" | "d-peptide nh3 amino terminus" | "l-peptide nh3 amino terminus" | "d-peptide cooh carboxy terminus" | "l-peptide cooh carboxy terminus" | "dna linking" | "rna linking" | "l-rna linking" | "l-dna linking" | "dna oh 5 prime terminus" | "rna oh 5 prime terminus" | "dna oh 3 prime terminus" | "rna oh 3 prime terminus" | "d-saccharide, beta linking" | "d-saccharide, alpha linking" | "l-saccharide, beta linking" | "l-saccharide, alpha linking" | "l-saccharide" | "d-saccharide" | "saccharide" | "non-polymer" | "peptide linking" | "peptide-like" | "l-gamma-peptide, c-delta linking" | "d-gamma-peptide, c-delta linking" | "l-beta-peptide, c-gamma linking" | "d-beta-peptide, c-gamma linking" | "ion" | "lipid">;
75
76
  /** Chemical component type names for peptide-like protein */
76
- export declare const OtherProteinComponentTypeNames: Set<string>;
77
+ export declare const OtherProteinComponentTypeNames: Set<"other" | "d-peptide linking" | "l-peptide linking" | "d-peptide nh3 amino terminus" | "l-peptide nh3 amino terminus" | "d-peptide cooh carboxy terminus" | "l-peptide cooh carboxy terminus" | "dna linking" | "rna linking" | "l-rna linking" | "l-dna linking" | "dna oh 5 prime terminus" | "rna oh 5 prime terminus" | "dna oh 3 prime terminus" | "rna oh 3 prime terminus" | "d-saccharide, beta linking" | "d-saccharide, alpha linking" | "l-saccharide, beta linking" | "l-saccharide, alpha linking" | "l-saccharide" | "d-saccharide" | "saccharide" | "non-polymer" | "peptide linking" | "peptide-like" | "l-gamma-peptide, c-delta linking" | "d-gamma-peptide, c-delta linking" | "l-beta-peptide, c-gamma linking" | "d-beta-peptide, c-gamma linking" | "ion" | "lipid">;
77
78
  /** Chemical component type names for protein */
78
- export declare const ProteinComponentTypeNames: Set<string>;
79
+ export declare const ProteinComponentTypeNames: Set<"other" | "d-peptide linking" | "l-peptide linking" | "d-peptide nh3 amino terminus" | "l-peptide nh3 amino terminus" | "d-peptide cooh carboxy terminus" | "l-peptide cooh carboxy terminus" | "dna linking" | "rna linking" | "l-rna linking" | "l-dna linking" | "dna oh 5 prime terminus" | "rna oh 5 prime terminus" | "dna oh 3 prime terminus" | "rna oh 3 prime terminus" | "d-saccharide, beta linking" | "d-saccharide, alpha linking" | "l-saccharide, beta linking" | "l-saccharide, alpha linking" | "l-saccharide" | "d-saccharide" | "saccharide" | "non-polymer" | "peptide linking" | "peptide-like" | "l-gamma-peptide, c-delta linking" | "d-gamma-peptide, c-delta linking" | "l-beta-peptide, c-gamma linking" | "d-beta-peptide, c-gamma linking" | "ion" | "lipid">;
79
80
  /** Chemical component type names for DNA */
80
- export declare const DNAComponentTypeNames: Set<string>;
81
+ export declare const DNAComponentTypeNames: Set<"other" | "d-peptide linking" | "l-peptide linking" | "d-peptide nh3 amino terminus" | "l-peptide nh3 amino terminus" | "d-peptide cooh carboxy terminus" | "l-peptide cooh carboxy terminus" | "dna linking" | "rna linking" | "l-rna linking" | "l-dna linking" | "dna oh 5 prime terminus" | "rna oh 5 prime terminus" | "dna oh 3 prime terminus" | "rna oh 3 prime terminus" | "d-saccharide, beta linking" | "d-saccharide, alpha linking" | "l-saccharide, beta linking" | "l-saccharide, alpha linking" | "l-saccharide" | "d-saccharide" | "saccharide" | "non-polymer" | "peptide linking" | "peptide-like" | "l-gamma-peptide, c-delta linking" | "d-gamma-peptide, c-delta linking" | "l-beta-peptide, c-gamma linking" | "d-beta-peptide, c-gamma linking" | "ion" | "lipid">;
81
82
  /** Chemical component type names for RNA */
82
- export declare const RNAComponentTypeNames: Set<string>;
83
+ export declare const RNAComponentTypeNames: Set<"other" | "d-peptide linking" | "l-peptide linking" | "d-peptide nh3 amino terminus" | "l-peptide nh3 amino terminus" | "d-peptide cooh carboxy terminus" | "l-peptide cooh carboxy terminus" | "dna linking" | "rna linking" | "l-rna linking" | "l-dna linking" | "dna oh 5 prime terminus" | "rna oh 5 prime terminus" | "dna oh 3 prime terminus" | "rna oh 3 prime terminus" | "d-saccharide, beta linking" | "d-saccharide, alpha linking" | "l-saccharide, beta linking" | "l-saccharide, alpha linking" | "l-saccharide" | "d-saccharide" | "saccharide" | "non-polymer" | "peptide linking" | "peptide-like" | "l-gamma-peptide, c-delta linking" | "d-gamma-peptide, c-delta linking" | "l-beta-peptide, c-gamma linking" | "d-beta-peptide, c-gamma linking" | "ion" | "lipid">;
83
84
  /** Chemical component type names for saccharide */
84
85
  export declare const SaccharideComponentTypeNames: Set<string>;
85
86
  /** Chemical component type names for other */
86
- export declare const OtherComponentTypeNames: Set<string>;
87
+ export declare const OtherComponentTypeNames: Set<"other" | "d-peptide linking" | "l-peptide linking" | "d-peptide nh3 amino terminus" | "l-peptide nh3 amino terminus" | "d-peptide cooh carboxy terminus" | "l-peptide cooh carboxy terminus" | "dna linking" | "rna linking" | "l-rna linking" | "l-dna linking" | "dna oh 5 prime terminus" | "rna oh 5 prime terminus" | "dna oh 3 prime terminus" | "rna oh 3 prime terminus" | "d-saccharide, beta linking" | "d-saccharide, alpha linking" | "l-saccharide, beta linking" | "l-saccharide, alpha linking" | "l-saccharide" | "d-saccharide" | "saccharide" | "non-polymer" | "peptide linking" | "peptide-like" | "l-gamma-peptide, c-delta linking" | "d-gamma-peptide, c-delta linking" | "l-beta-peptide, c-gamma linking" | "d-beta-peptide, c-gamma linking" | "ion" | "lipid">;
87
88
  /** Chemical component type names for ion (extension to mmcif) */
88
- export declare const IonComponentTypeNames: Set<string>;
89
+ export declare const IonComponentTypeNames: Set<"other" | "d-peptide linking" | "l-peptide linking" | "d-peptide nh3 amino terminus" | "l-peptide nh3 amino terminus" | "d-peptide cooh carboxy terminus" | "l-peptide cooh carboxy terminus" | "dna linking" | "rna linking" | "l-rna linking" | "l-dna linking" | "dna oh 5 prime terminus" | "rna oh 5 prime terminus" | "dna oh 3 prime terminus" | "rna oh 3 prime terminus" | "d-saccharide, beta linking" | "d-saccharide, alpha linking" | "l-saccharide, beta linking" | "l-saccharide, alpha linking" | "l-saccharide" | "d-saccharide" | "saccharide" | "non-polymer" | "peptide linking" | "peptide-like" | "l-gamma-peptide, c-delta linking" | "d-gamma-peptide, c-delta linking" | "l-beta-peptide, c-gamma linking" | "d-beta-peptide, c-gamma linking" | "ion" | "lipid">;
89
90
  /** Chemical component type names for lipid (extension to mmcif) */
90
- export declare const LipidComponentTypeNames: Set<string>;
91
+ export declare const LipidComponentTypeNames: Set<"other" | "d-peptide linking" | "l-peptide linking" | "d-peptide nh3 amino terminus" | "l-peptide nh3 amino terminus" | "d-peptide cooh carboxy terminus" | "l-peptide cooh carboxy terminus" | "dna linking" | "rna linking" | "l-rna linking" | "l-dna linking" | "dna oh 5 prime terminus" | "rna oh 5 prime terminus" | "dna oh 3 prime terminus" | "rna oh 3 prime terminus" | "d-saccharide, beta linking" | "d-saccharide, alpha linking" | "l-saccharide, beta linking" | "l-saccharide, alpha linking" | "l-saccharide" | "d-saccharide" | "saccharide" | "non-polymer" | "peptide linking" | "peptide-like" | "l-gamma-peptide, c-delta linking" | "d-gamma-peptide, c-delta linking" | "l-beta-peptide, c-gamma linking" | "d-beta-peptide, c-gamma linking" | "ion" | "lipid">;
91
92
  /** Common names for water molecules */
92
93
  export declare const WaterNames: Set<string>;
93
94
  export declare const AminoAcidNamesL: Set<string>;
@@ -103,12 +104,12 @@ export declare const isPurineBase: (compId: string) => boolean;
103
104
  export declare const isPyrimidineBase: (compId: string) => boolean;
104
105
  export declare const PolymerNames: Set<string>;
105
106
  /** get the molecule type from component type and id */
106
- export declare function getMoleculeType(compType: string, compId: string): MoleculeType;
107
- export declare function getPolymerType(compType: string, molType: MoleculeType): PolymerType;
108
- export declare function getComponentType(compId: string): mmCIF_chemComp_schema['type']['T'];
107
+ export declare function getMoleculeType(compType: ChemCompType, compId: string): MoleculeType;
108
+ export declare function getPolymerType(compType: ChemCompType, molType: MoleculeType): PolymerType;
109
+ export declare function getComponentType(compId: string): ChemCompType;
109
110
  export declare function getDefaultChemicalComponent(compId: string): ChemicalComponent;
110
111
  export declare function getEntityType(compId: string): mmCIF_Schema['entity']['type']['T'];
111
- export declare function getEntitySubtype(compId: string, compType: string): EntitySubtype;
112
+ export declare function getEntitySubtype(compId: string, compType: ChemCompType): EntitySubtype;
112
113
  export declare function isPolymer(moleculeType: MoleculeType): boolean;
113
114
  export declare function isNucleic(moleculeType: MoleculeType): boolean;
114
115
  export declare function isProtein(moleculeType: MoleculeType): boolean;
@@ -259,3 +260,4 @@ export declare const ResidueHydrophobicity: {
259
260
  HIP: number[];
260
261
  };
261
262
  export declare const DefaultResidueHydrophobicity: number[];
263
+ export {};
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) 2017-2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
2
+ * Copyright (c) 2017-2022 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
3
  *
4
4
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
5
5
  * @author David Sehnal <david.sehnal@gmail.com>
@@ -117,63 +117,65 @@ export var NucleicBackboneAtoms = new Set([
117
117
  ]);
118
118
  /** Chemical component type names for D-linked protein */
119
119
  export var DProteinComponentTypeNames = new Set([
120
- 'D-PEPTIDE LINKING', 'D-PEPTIDE NH3 AMINO TERMINUS',
121
- 'D-PEPTIDE COOH CARBOXY TERMINUS', 'D-GAMMA-PEPTIDE, C-DELTA LINKING',
122
- 'D-BETA-PEPTIDE, C-GAMMA LINKING'
120
+ 'd-peptide linking', 'd-peptide nh3 amino terminus',
121
+ 'd-peptide cooh carboxy terminus', 'd-gamma-peptide, c-delta linking',
122
+ 'd-beta-peptide, c-gamma linking'
123
123
  ]);
124
124
  /** Chemical component type names for L-linked protein */
125
125
  export var LProteinComponentTypeNames = new Set([
126
- 'L-PEPTIDE LINKING', 'L-PEPTIDE NH3 AMINO TERMINUS',
127
- 'L-PEPTIDE COOH CARBOXY TERMINUS', 'L-GAMMA-PEPTIDE, C-DELTA LINKING',
128
- 'L-BETA-PEPTIDE, C-GAMMA LINKING'
126
+ 'l-peptide linking', 'l-peptide nh3 amino terminus',
127
+ 'l-peptide cooh carboxy terminus', 'l-gamma-peptide, c-delta linking',
128
+ 'l-beta-peptide, c-gamma linking'
129
129
  ]);
130
130
  /** Chemical component type names for gamma protein, overlaps with D/L-linked */
131
131
  export var GammaProteinComponentTypeNames = new Set([
132
- 'D-GAMMA-PEPTIDE, C-DELTA LINKING', 'L-GAMMA-PEPTIDE, C-DELTA LINKING'
132
+ 'd-gamma-peptide, c-delta linking', 'l-gamma-peptide, c-delta linking'
133
133
  ]);
134
134
  /** Chemical component type names for beta protein, overlaps with D/L-linked */
135
135
  export var BetaProteinComponentTypeNames = new Set([
136
- 'D-BETA-PEPTIDE, C-GAMMA LINKING', 'L-BETA-PEPTIDE, C-GAMMA LINKING'
136
+ 'd-beta-peptide, c-gamma linking', 'l-beta-peptide, c-gamma linking'
137
137
  ]);
138
138
  /** Chemical component type names for protein termini, overlaps with D/L-linked */
139
139
  export var ProteinTerminusComponentTypeNames = new Set([
140
- 'D-PEPTIDE NH3 AMINO TERMINUS', 'D-PEPTIDE COOH CARBOXY TERMINUS',
141
- 'L-PEPTIDE NH3 AMINO TERMINUS', 'L-PEPTIDE COOH CARBOXY TERMINUS'
140
+ 'd-peptide nh3 amino terminus', 'd-peptide cooh carboxy terminus',
141
+ 'l-peptide nh3 amino terminus', 'l-peptide cooh carboxy terminus'
142
142
  ]);
143
143
  /** Chemical component type names for peptide-like protein */
144
144
  export var OtherProteinComponentTypeNames = new Set([
145
- 'PEPTIDE LINKING', 'PEPTIDE-LIKE',
145
+ 'peptide linking', 'peptide-like',
146
146
  ]);
147
147
  /** Chemical component type names for protein */
148
148
  export var ProteinComponentTypeNames = SetUtils.unionMany(DProteinComponentTypeNames, LProteinComponentTypeNames, OtherProteinComponentTypeNames);
149
149
  /** Chemical component type names for DNA */
150
150
  export var DNAComponentTypeNames = new Set([
151
- 'DNA LINKING', 'L-DNA LINKING', 'DNA OH 5 PRIME TERMINUS', 'DNA OH 3 PRIME TERMINUS',
151
+ 'dna linking', 'l-dna linking', 'dna oh 5 prime terminus', 'dna oh 3 prime terminus',
152
152
  ]);
153
153
  /** Chemical component type names for RNA */
154
154
  export var RNAComponentTypeNames = new Set([
155
- 'RNA LINKING', 'L-RNA LINKING', 'RNA OH 5 PRIME TERMINUS', 'RNA OH 3 PRIME TERMINUS',
155
+ 'rna linking', 'l-rna linking', 'rna oh 5 prime terminus', 'rna oh 3 prime terminus',
156
156
  ]);
157
157
  /** Chemical component type names for saccharide */
158
- export var SaccharideComponentTypeNames = new Set([
159
- 'D-SACCHARIDE, BETA LINKING', 'L-SACCHARIDE, BETA LINKING',
160
- 'D-SACCHARIDE, ALPHA LINKING', 'L-SACCHARIDE, ALPHA LINKING',
161
- 'L-SACCHARIDE', 'D-SACCHARIDE', 'SACCHARIDE',
162
- // the following four are marked to be deprecated in the mmCIF dictionary
163
- 'D-SACCHARIDE 1,4 AND 1,4 LINKING', 'L-SACCHARIDE 1,4 AND 1,4 LINKING',
164
- 'D-SACCHARIDE 1,4 AND 1,6 LINKING', 'L-SACCHARIDE 1,4 AND 1,6 LINKING',
165
- ]);
158
+ export var SaccharideComponentTypeNames = SetUtils.unionMany(new Set([
159
+ 'd-saccharide, beta linking', 'l-saccharide, beta linking',
160
+ 'd-saccharide, alpha linking', 'l-saccharide, alpha linking',
161
+ 'l-saccharide', 'd-saccharide', 'saccharide',
162
+ ]),
163
+ // deprecated in the mmCIF dictionary, kept for backward compatibility
164
+ new Set([
165
+ 'd-saccharide 1,4 and 1,4 linking', 'l-saccharide 1,4 and 1,4 linking',
166
+ 'd-saccharide 1,4 and 1,6 linking', 'l-saccharide 1,4 and 1,6 linking'
167
+ ]));
166
168
  /** Chemical component type names for other */
167
169
  export var OtherComponentTypeNames = new Set([
168
- 'NON-POLYMER', 'OTHER'
170
+ 'non-polymer', 'other'
169
171
  ]);
170
172
  /** Chemical component type names for ion (extension to mmcif) */
171
173
  export var IonComponentTypeNames = new Set([
172
- 'ION'
174
+ 'ion'
173
175
  ]);
174
176
  /** Chemical component type names for lipid (extension to mmcif) */
175
177
  export var LipidComponentTypeNames = new Set([
176
- 'LIPID'
178
+ 'lipid'
177
179
  ]);
178
180
  /** Common names for water molecules */
179
181
  export var WaterNames = new Set([
@@ -230,7 +232,6 @@ export var isPyrimidineBase = function (compId) { return PyrimidineBaseNames.has
230
232
  export var PolymerNames = SetUtils.unionMany(AminoAcidNames, BaseNames);
231
233
  /** get the molecule type from component type and id */
232
234
  export function getMoleculeType(compType, compId) {
233
- compType = compType.toUpperCase();
234
235
  compId = compId.toUpperCase();
235
236
  if (PeptideBaseNames.has(compId)) {
236
237
  return 8 /* PNA */;
@@ -258,7 +259,7 @@ export function getMoleculeType(compType, compId) {
258
259
  }
259
260
  else if (OtherComponentTypeNames.has(compType)) {
260
261
  if (SaccharideCompIdMap.has(compId)) {
261
- // trust our saccharide table more than given 'non-polymer' or 'other' component type
262
+ // trust our saccharide table more than given 'NON-POLYMER' or 'OTHER' component type
262
263
  return 9 /* Saccharide */;
263
264
  }
264
265
  else if (AminoAcidNames.has(compId)) {
@@ -279,7 +280,6 @@ export function getMoleculeType(compType, compId) {
279
280
  }
280
281
  }
281
282
  export function getPolymerType(compType, molType) {
282
- compType = compType.toUpperCase();
283
283
  if (molType === 5 /* Protein */) {
284
284
  if (GammaProteinComponentTypeNames.has(compType)) {
285
285
  return 2 /* GammaProtein */;
@@ -313,10 +313,10 @@ export function getComponentType(compId) {
313
313
  return 'peptide linking';
314
314
  }
315
315
  else if (RnaBaseNames.has(compId)) {
316
- return 'RNA linking';
316
+ return 'rna linking';
317
317
  }
318
318
  else if (DnaBaseNames.has(compId)) {
319
- return 'DNA linking';
319
+ return 'dna linking';
320
320
  }
321
321
  else if (SaccharideCompIdMap.has(compId)) {
322
322
  return 'saccharide';
@@ -355,7 +355,6 @@ export function getEntityType(compId) {
355
355
  }
356
356
  export function getEntitySubtype(compId, compType) {
357
357
  compId = compId.toUpperCase();
358
- compType = compType.toUpperCase();
359
358
  if (LProteinComponentTypeNames.has(compType)) {
360
359
  return 'polypeptide(L)';
361
360
  }
@@ -320,7 +320,7 @@ export function bondedAtomicPairs(bondTest) {
320
320
  atomicBond.a.unit = structure.unitMap.get(bond.unitA);
321
321
  atomicBond.a.element = atomicBond.a.unit.elements[bond.indexA];
322
322
  atomicBond.aIndex = bond.indexA;
323
- atomicBond.b.unit = structure.unitMap.get(bond.unitA);
323
+ atomicBond.b.unit = structure.unitMap.get(bond.unitB);
324
324
  atomicBond.b.element = atomicBond.b.unit.elements[bond.indexB];
325
325
  atomicBond.bIndex = bond.indexB;
326
326
  atomicBond.order = bond.props.order;
@@ -41,7 +41,7 @@ declare const StructureProperties: {
41
41
  microheterogeneityCompIds: StructureElement.Property<string[]>;
42
42
  secondary_structure_type: StructureElement.Property<SecondaryStructureType>;
43
43
  secondary_structure_key: StructureElement.Property<number>;
44
- chem_comp_type: StructureElement.Property<"other" | "D-peptide linking" | "L-peptide linking" | "D-peptide NH3 amino terminus" | "L-peptide NH3 amino terminus" | "D-peptide COOH carboxy terminus" | "L-peptide COOH carboxy terminus" | "DNA linking" | "RNA linking" | "L-RNA linking" | "L-DNA linking" | "DNA OH 5 prime terminus" | "RNA OH 5 prime terminus" | "DNA OH 3 prime terminus" | "RNA OH 3 prime terminus" | "D-saccharide, beta linking" | "D-saccharide, alpha linking" | "L-saccharide, beta linking" | "L-saccharide, alpha linking" | "L-saccharide" | "D-saccharide" | "saccharide" | "non-polymer" | "peptide linking" | "peptide-like" | "L-gamma-peptide, C-delta linking" | "D-gamma-peptide, C-delta linking" | "L-beta-peptide, C-gamma linking" | "D-beta-peptide, C-gamma linking" | "Ion" | "Lipid">;
44
+ chem_comp_type: StructureElement.Property<"other" | "d-peptide linking" | "l-peptide linking" | "d-peptide nh3 amino terminus" | "l-peptide nh3 amino terminus" | "d-peptide cooh carboxy terminus" | "l-peptide cooh carboxy terminus" | "dna linking" | "rna linking" | "l-rna linking" | "l-dna linking" | "dna oh 5 prime terminus" | "rna oh 5 prime terminus" | "dna oh 3 prime terminus" | "rna oh 3 prime terminus" | "d-saccharide, beta linking" | "d-saccharide, alpha linking" | "l-saccharide, beta linking" | "l-saccharide, alpha linking" | "l-saccharide" | "d-saccharide" | "saccharide" | "non-polymer" | "peptide linking" | "peptide-like" | "l-gamma-peptide, c-delta linking" | "d-gamma-peptide, c-delta linking" | "l-beta-peptide, c-gamma linking" | "d-beta-peptide, c-gamma linking" | "ion" | "lipid">;
45
45
  };
46
46
  chain: {
47
47
  key: StructureElement.Property<import("../model").ChainIndex>;
@@ -167,10 +167,8 @@ var DefaultInterBondComputationProps = __assign(__assign({}, DefaultBondComputat
167
167
  function findBonds(structure, props) {
168
168
  var builder = new InterUnitGraph.Builder();
169
169
  var hasIndexPairBonds = structure.models.some(function (m) { return IndexPairBonds.Provider.get(m); });
170
- if (props.noCompute || (structure.isCoarseGrained && !hasIndexPairBonds)) {
171
- // TODO add function that only adds bonds defined in structConn and avoids using
172
- // structure.lookup and unit.lookup (expensive for large structure and not
173
- // needed for archival files or files with an MD topology)
170
+ var hasExhaustiveStructConn = structure.models.some(function (m) { return StructConn.isExhaustive(m); });
171
+ if (props.noCompute || (structure.isCoarseGrained && !hasIndexPairBonds && !hasExhaustiveStructConn)) {
174
172
  return new InterUnitBonds(builder.getMap());
175
173
  }
176
174
  Structure.eachUnitPair(structure, function (unitA, unitB) {
@@ -221,9 +221,7 @@ function findBonds(unit, props) {
221
221
  }
222
222
  function computeIntraUnitBonds(unit, props) {
223
223
  var p = __assign(__assign({}, DefaultBondComputationProps), props);
224
- if (p.noCompute || Model.isCoarseGrained(unit.model)) {
225
- // TODO add function that only adds bonds defined in structConn of chemCompBond
226
- // and avoid using unit.lookup
224
+ if (p.noCompute || (Model.isCoarseGrained(unit.model) && !IndexPairBonds.Provider.get(unit.model) && !StructConn.isExhaustive(unit.model))) {
227
225
  return IntraUnitBonds.Empty;
228
226
  }
229
227
  if (!p.forceCompute && IndexPairBonds.Provider.get(unit.model)) {
@@ -127,6 +127,9 @@ var UnitRing;
127
127
  return false;
128
128
  if (ring.length < 5)
129
129
  return false;
130
+ // no planarity-based aromaticity if any aromatic flags are present
131
+ if (aromaticBondCount > 0)
132
+ return false;
130
133
  var ma = PrincipalAxes.calculateMomentsAxes(getPositions(unit, ring));
131
134
  return Vec3.magnitude(ma.dirC) < AromaticRingPlanarityThreshold;
132
135
  }
@@ -30,6 +30,7 @@ export declare const PlyShapeParams: {
30
30
  flatShaded: PD.BooleanParam;
31
31
  ignoreLight: PD.BooleanParam;
32
32
  xrayShaded: PD.BooleanParam;
33
+ allowTransparentBackfaces: PD.BooleanParam;
33
34
  bumpFrequency: PD.Numeric;
34
35
  bumpAmplitude: PD.Numeric;
35
36
  alpha: PD.Numeric;
@@ -71,6 +72,7 @@ export declare function shapeFromPly(source: PlyFile, params?: {}): Task<ShapePr
71
72
  flatShaded: PD.BooleanParam;
72
73
  ignoreLight: PD.BooleanParam;
73
74
  xrayShaded: PD.BooleanParam;
75
+ allowTransparentBackfaces: PD.BooleanParam;
74
76
  bumpFrequency: PD.Numeric;
75
77
  bumpAmplitude: PD.Numeric;
76
78
  alpha: PD.Numeric;
@@ -96,7 +96,7 @@ export function getEntityData(data) {
96
96
  var entityId = label_entity_id.value(i);
97
97
  if (!entityIds.has(entityId)) {
98
98
  var compId = label_comp_id.value(i);
99
- var compType = chemCompType.get(compId) || '';
99
+ var compType = chemCompType.get(compId) || 'other';
100
100
  subtypes[getEntityIndex(entityId)] = getEntitySubtype(compId, compType);
101
101
  entityIds.add(entityId);
102
102
  }
@@ -88,7 +88,7 @@ export declare const BasicSchema: {
88
88
  type: import("../../../mol-data/db/column").Column.Schema.Aliased<"oligosaccharide">;
89
89
  };
90
90
  chem_comp: {
91
- type: import("../../../mol-data/db/column").Column.Schema.Aliased<"other" | "D-peptide linking" | "L-peptide linking" | "D-peptide NH3 amino terminus" | "L-peptide NH3 amino terminus" | "D-peptide COOH carboxy terminus" | "L-peptide COOH carboxy terminus" | "DNA linking" | "RNA linking" | "L-RNA linking" | "L-DNA linking" | "DNA OH 5 prime terminus" | "RNA OH 5 prime terminus" | "DNA OH 3 prime terminus" | "RNA OH 3 prime terminus" | "D-saccharide, beta linking" | "D-saccharide, alpha linking" | "L-saccharide, beta linking" | "L-saccharide, alpha linking" | "L-saccharide" | "D-saccharide" | "saccharide" | "non-polymer" | "peptide linking" | "peptide-like" | "L-gamma-peptide, C-delta linking" | "D-gamma-peptide, C-delta linking" | "L-beta-peptide, C-gamma linking" | "D-beta-peptide, C-gamma linking" | "Ion" | "Lipid">;
91
+ type: import("../../../mol-data/db/column").Column.Schema.Aliased<"other" | "d-peptide linking" | "l-peptide linking" | "d-peptide nh3 amino terminus" | "l-peptide nh3 amino terminus" | "d-peptide cooh carboxy terminus" | "l-peptide cooh carboxy terminus" | "dna linking" | "rna linking" | "l-rna linking" | "l-dna linking" | "dna oh 5 prime terminus" | "rna oh 5 prime terminus" | "dna oh 3 prime terminus" | "rna oh 3 prime terminus" | "d-saccharide, beta linking" | "d-saccharide, alpha linking" | "l-saccharide, beta linking" | "l-saccharide, alpha linking" | "l-saccharide" | "d-saccharide" | "saccharide" | "non-polymer" | "peptide linking" | "peptide-like" | "l-gamma-peptide, c-delta linking" | "d-gamma-peptide, c-delta linking" | "l-beta-peptide, c-gamma linking" | "d-beta-peptide, c-gamma linking" | "ion" | "lipid">;
92
92
  formula: import("../../../mol-data/db/column").Column.Schema.Str;
93
93
  formula_weight: import("../../../mol-data/db/column").Column.Schema.Float;
94
94
  id: import("../../../mol-data/db/column").Column.Schema.Str;
@@ -160,7 +160,7 @@ export declare const BasicSchema: {
160
160
  };
161
161
  pdbx_unobs_or_zero_occ_residues: {
162
162
  id: import("../../../mol-data/db/column").Column.Schema.Int;
163
- polymer_flag: import("../../../mol-data/db/column").Column.Schema.Aliased<"N" | "Y">;
163
+ polymer_flag: import("../../../mol-data/db/column").Column.Schema.Aliased<"y" | "n">;
164
164
  occupancy_flag: import("../../../mol-data/db/column").Column.Schema.Aliased<"1" | "0">;
165
165
  PDB_model_num: import("../../../mol-data/db/column").Column.Schema.Int;
166
166
  auth_asym_id: import("../../../mol-data/db/column").Column.Schema.Str;