molstar 3.0.0-dev.3 → 3.0.0-dev.7

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 (552) hide show
  1. package/build/viewer/embedded.html +5 -5
  2. package/build/viewer/index.html +25 -17
  3. package/build/viewer/molstar.css +1 -1
  4. package/build/viewer/molstar.js +1 -1
  5. package/lib/apps/docking-viewer/index.d.ts +2 -1
  6. package/lib/apps/docking-viewer/index.html +8 -8
  7. package/lib/apps/docking-viewer/index.js +87 -74
  8. package/lib/apps/docking-viewer/viewport.js +2 -1
  9. package/lib/apps/viewer/embedded.html +5 -5
  10. package/lib/apps/viewer/index.d.ts +36 -215
  11. package/lib/apps/viewer/index.html +25 -17
  12. package/lib/apps/viewer/index.js +139 -52
  13. package/lib/cli/cifschema/index.d.ts +1 -1
  14. package/lib/cli/cifschema/index.js +15 -35
  15. package/lib/commonjs/apps/docking-viewer/index.d.ts +2 -1
  16. package/lib/commonjs/apps/docking-viewer/index.js +86 -73
  17. package/lib/commonjs/apps/docking-viewer/viewport.js +2 -1
  18. package/lib/commonjs/apps/viewer/index.d.ts +36 -215
  19. package/lib/commonjs/apps/viewer/index.js +139 -52
  20. package/lib/commonjs/cli/cifschema/index.d.ts +1 -1
  21. package/lib/commonjs/cli/cifschema/index.js +15 -35
  22. package/lib/commonjs/examples/alpha-orbitals/index.js +2 -3
  23. package/lib/commonjs/examples/basic-wrapper/index.js +23 -11
  24. package/lib/commonjs/examples/lighting/index.d.ts +1 -1
  25. package/lib/commonjs/examples/lighting/index.js +58 -41
  26. package/lib/commonjs/examples/proteopedia-wrapper/index.js +26 -14
  27. package/lib/commonjs/extensions/alpha-orbitals/transforms.d.ts +0 -1
  28. package/lib/commonjs/extensions/alpha-orbitals/transforms.js +1 -14
  29. package/lib/commonjs/extensions/anvil/behavior.d.ts +7 -0
  30. package/lib/commonjs/extensions/anvil/representation.d.ts +63 -0
  31. package/lib/commonjs/extensions/cellpack/representation.d.ts +13 -0
  32. package/lib/commonjs/extensions/dnatco/confal-pyramids/representation.d.ts +39 -0
  33. package/lib/commonjs/extensions/model-archive/quality-assessment/behavior.d.ts +68 -0
  34. package/lib/commonjs/extensions/model-archive/quality-assessment/behavior.js +236 -0
  35. package/lib/commonjs/extensions/model-archive/quality-assessment/color/plddt.d.ts +14 -0
  36. package/lib/commonjs/extensions/model-archive/quality-assessment/color/plddt.js +125 -0
  37. package/lib/commonjs/extensions/model-archive/quality-assessment/color/qmean.d.ts +12 -0
  38. package/lib/commonjs/extensions/model-archive/quality-assessment/color/qmean.js +111 -0
  39. package/lib/commonjs/extensions/model-archive/quality-assessment/prop.d.ts +28 -0
  40. package/lib/commonjs/extensions/model-archive/quality-assessment/prop.js +130 -0
  41. package/lib/commonjs/extensions/mp4-export/controls.d.ts +1 -0
  42. package/lib/commonjs/extensions/mp4-export/controls.js +9 -7
  43. package/lib/commonjs/extensions/pdbe/structure-quality-report/prop.js +1 -1
  44. package/lib/commonjs/extensions/rcsb/assembly-symmetry/behavior.d.ts +7 -0
  45. package/lib/commonjs/extensions/rcsb/assembly-symmetry/prop.js +1 -1
  46. package/lib/commonjs/extensions/rcsb/assembly-symmetry/representation.d.ts +13 -0
  47. package/lib/commonjs/extensions/rcsb/validation-report/prop.js +1 -1
  48. package/lib/commonjs/extensions/rcsb/validation-report/representation.d.ts +65 -0
  49. package/lib/commonjs/mol-canvas3d/canvas3d.d.ts +8 -8
  50. package/lib/commonjs/mol-canvas3d/canvas3d.js +12 -4
  51. package/lib/commonjs/mol-canvas3d/helper/bounding-sphere-helper.js +3 -2
  52. package/lib/commonjs/mol-canvas3d/helper/camera-helper.d.ts +7 -0
  53. package/lib/commonjs/mol-canvas3d/helper/camera-helper.js +2 -2
  54. package/lib/commonjs/mol-canvas3d/helper/handle-helper.d.ts +7 -0
  55. package/lib/commonjs/mol-canvas3d/helper/handle-helper.js +2 -2
  56. package/lib/commonjs/mol-canvas3d/helper/helper.d.ts +6 -0
  57. package/lib/commonjs/mol-canvas3d/passes/image.d.ts +4 -0
  58. package/lib/commonjs/mol-canvas3d/passes/multi-sample.d.ts +2 -1
  59. package/lib/commonjs/mol-canvas3d/passes/multi-sample.js +4 -2
  60. package/lib/commonjs/mol-canvas3d/passes/pick.js +9 -9
  61. package/lib/commonjs/mol-canvas3d/passes/postprocessing.d.ts +1 -0
  62. package/lib/commonjs/mol-canvas3d/passes/postprocessing.js +6 -4
  63. package/lib/commonjs/mol-canvas3d/passes/smaa.js +1 -1
  64. package/lib/commonjs/mol-geo/geometry/base.d.ts +20 -0
  65. package/lib/commonjs/mol-geo/geometry/base.js +20 -1
  66. package/lib/commonjs/mol-geo/geometry/clipping-data.d.ts +1 -3
  67. package/lib/commonjs/mol-geo/geometry/clipping-data.js +3 -8
  68. package/lib/commonjs/mol-geo/geometry/cylinders/cylinders.d.ts +14 -1
  69. package/lib/commonjs/mol-geo/geometry/cylinders/cylinders.js +5 -3
  70. package/lib/commonjs/mol-geo/geometry/direct-volume/direct-volume.d.ts +11 -0
  71. package/lib/commonjs/mol-geo/geometry/direct-volume/direct-volume.js +2 -2
  72. package/lib/commonjs/mol-geo/geometry/image/image.d.ts +11 -0
  73. package/lib/commonjs/mol-geo/geometry/lines/lines.d.ts +12 -0
  74. package/lib/commonjs/mol-geo/geometry/lines/lines.js +1 -1
  75. package/lib/commonjs/mol-geo/geometry/marker-data.d.ts +0 -1
  76. package/lib/commonjs/mol-geo/geometry/marker-data.js +0 -4
  77. package/lib/commonjs/mol-geo/geometry/mesh/color-smoothing.js +1 -1
  78. package/lib/commonjs/mol-geo/geometry/mesh/mesh.d.ts +13 -0
  79. package/lib/commonjs/mol-geo/geometry/mesh/mesh.js +5 -3
  80. package/lib/commonjs/mol-geo/geometry/points/points.d.ts +11 -0
  81. package/lib/commonjs/mol-geo/geometry/spheres/spheres.d.ts +13 -0
  82. package/lib/commonjs/mol-geo/geometry/spheres/spheres.js +5 -3
  83. package/lib/commonjs/mol-geo/geometry/substance-data.js +3 -3
  84. package/lib/commonjs/mol-geo/geometry/text/text.d.ts +11 -0
  85. package/lib/commonjs/mol-geo/geometry/texture-mesh/color-smoothing.js +3 -3
  86. package/lib/commonjs/mol-geo/geometry/texture-mesh/texture-mesh.d.ts +13 -0
  87. package/lib/commonjs/mol-geo/geometry/texture-mesh/texture-mesh.js +5 -3
  88. package/lib/commonjs/mol-gl/render-object.d.ts +2 -1
  89. package/lib/commonjs/mol-gl/render-object.js +10 -10
  90. package/lib/commonjs/mol-gl/renderable/cylinders.d.ts +41 -33
  91. package/lib/commonjs/mol-gl/renderable/cylinders.js +4 -4
  92. package/lib/commonjs/mol-gl/renderable/direct-volume.d.ts +11 -5
  93. package/lib/commonjs/mol-gl/renderable/direct-volume.js +3 -3
  94. package/lib/commonjs/mol-gl/renderable/image.d.ts +10 -4
  95. package/lib/commonjs/mol-gl/renderable/image.js +2 -2
  96. package/lib/commonjs/mol-gl/renderable/lines.d.ts +38 -32
  97. package/lib/commonjs/mol-gl/renderable/lines.js +3 -3
  98. package/lib/commonjs/mol-gl/renderable/mesh.d.ts +38 -30
  99. package/lib/commonjs/mol-gl/renderable/mesh.js +4 -4
  100. package/lib/commonjs/mol-gl/renderable/points.d.ts +10 -4
  101. package/lib/commonjs/mol-gl/renderable/points.js +2 -2
  102. package/lib/commonjs/mol-gl/renderable/schema.d.ts +10 -11
  103. package/lib/commonjs/mol-gl/renderable/schema.js +6 -12
  104. package/lib/commonjs/mol-gl/renderable/spheres.d.ts +41 -33
  105. package/lib/commonjs/mol-gl/renderable/spheres.js +4 -4
  106. package/lib/commonjs/mol-gl/renderable/text.d.ts +10 -4
  107. package/lib/commonjs/mol-gl/renderable/text.js +2 -2
  108. package/lib/commonjs/mol-gl/renderable/texture-mesh.d.ts +13 -5
  109. package/lib/commonjs/mol-gl/renderable/texture-mesh.js +3 -3
  110. package/lib/commonjs/mol-gl/renderable.d.ts +0 -1
  111. package/lib/commonjs/mol-gl/renderer.d.ts +12 -12
  112. package/lib/commonjs/mol-gl/renderer.js +12 -74
  113. package/lib/commonjs/mol-gl/scene.d.ts +2 -2
  114. package/lib/commonjs/mol-gl/scene.js +7 -5
  115. package/lib/commonjs/mol-gl/shader/chunks/apply-light-color.glsl.d.ts +1 -1
  116. package/lib/commonjs/mol-gl/shader/chunks/apply-light-color.glsl.js +1 -1
  117. package/lib/commonjs/mol-gl/shader/chunks/assign-color-varying.glsl.d.ts +1 -1
  118. package/lib/commonjs/mol-gl/shader/chunks/assign-color-varying.glsl.js +1 -1
  119. package/lib/commonjs/mol-gl/shader/chunks/assign-marker-varying.glsl.d.ts +1 -1
  120. package/lib/commonjs/mol-gl/shader/chunks/assign-marker-varying.glsl.js +1 -1
  121. package/lib/commonjs/mol-gl/shader/chunks/assign-material-color.glsl.d.ts +1 -1
  122. package/lib/commonjs/mol-gl/shader/chunks/assign-material-color.glsl.js +1 -1
  123. package/lib/commonjs/mol-gl/shader/chunks/color-frag-params.glsl.d.ts +1 -1
  124. package/lib/commonjs/mol-gl/shader/chunks/color-frag-params.glsl.js +1 -1
  125. package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.d.ts +1 -1
  126. package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.js +1 -1
  127. package/lib/commonjs/mol-gl/shader/chunks/common-frag-params.glsl.d.ts +1 -1
  128. package/lib/commonjs/mol-gl/shader/chunks/common-frag-params.glsl.js +1 -1
  129. package/lib/commonjs/mol-gl/shader/chunks/common-vert-params.glsl.d.ts +1 -1
  130. package/lib/commonjs/mol-gl/shader/chunks/common-vert-params.glsl.js +1 -1
  131. package/lib/commonjs/mol-gl/shader/chunks/common.glsl.d.ts +1 -1
  132. package/lib/commonjs/mol-gl/shader/chunks/common.glsl.js +1 -1
  133. package/lib/commonjs/mol-gl/shader/chunks/light-frag-params.glsl.d.ts +1 -1
  134. package/lib/commonjs/mol-gl/shader/chunks/light-frag-params.glsl.js +1 -1
  135. package/lib/commonjs/mol-gl/shader/cylinders.frag.d.ts +1 -1
  136. package/lib/commonjs/mol-gl/shader/cylinders.frag.js +1 -1
  137. package/lib/commonjs/mol-gl/shader/direct-volume.frag.d.ts +1 -1
  138. package/lib/commonjs/mol-gl/shader/direct-volume.frag.js +1 -1
  139. package/lib/commonjs/mol-gl/shader/image.frag.d.ts +1 -1
  140. package/lib/commonjs/mol-gl/shader/image.frag.js +1 -1
  141. package/lib/commonjs/mol-gl/shader/mesh.frag.d.ts +1 -1
  142. package/lib/commonjs/mol-gl/shader/mesh.frag.js +1 -1
  143. package/lib/commonjs/mol-gl/shader/mesh.vert.d.ts +1 -1
  144. package/lib/commonjs/mol-gl/shader/mesh.vert.js +1 -1
  145. package/lib/commonjs/mol-gl/shader/postprocessing.frag.d.ts +1 -1
  146. package/lib/commonjs/mol-gl/shader/postprocessing.frag.js +1 -1
  147. package/lib/commonjs/mol-gl/shader/spheres.frag.d.ts +1 -1
  148. package/lib/commonjs/mol-gl/shader/spheres.frag.js +1 -1
  149. package/lib/commonjs/mol-gl/shader-code.d.ts +3 -1
  150. package/lib/commonjs/mol-gl/shader-code.js +42 -13
  151. package/lib/commonjs/mol-gl/webgl/render-item.d.ts +7 -6
  152. package/lib/commonjs/mol-gl/webgl/render-item.js +10 -8
  153. package/lib/commonjs/mol-gl/webgl/resources.js +8 -1
  154. package/lib/commonjs/mol-io/reader/cif/schema/mmcif.d.ts +326 -1
  155. package/lib/commonjs/mol-io/reader/cif/schema/mmcif.js +326 -1
  156. package/lib/commonjs/mol-math/geometry/symmetry-operator.js +3 -2
  157. package/lib/commonjs/mol-math/linear-algebra/3d/quat.d.ts +9 -1
  158. package/lib/commonjs/mol-math/linear-algebra/3d/quat.js +20 -1
  159. package/lib/commonjs/mol-model/structure/model/model.d.ts +1 -0
  160. package/lib/commonjs/mol-model/structure/model/model.js +15 -5
  161. package/lib/commonjs/mol-model/structure/model/properties/atomic/hierarchy.d.ts +6 -1
  162. package/lib/commonjs/mol-model/structure/model/properties/atomic/hierarchy.js +1 -1
  163. package/lib/commonjs/mol-model/structure/model/properties/utils/atomic-derived.d.ts +1 -1
  164. package/lib/commonjs/mol-model/structure/model/properties/utils/atomic-derived.js +4 -1
  165. package/lib/commonjs/mol-model/structure/model/properties/utils/atomic-index.d.ts +1 -1
  166. package/lib/commonjs/mol-model/structure/model/properties/utils/atomic-index.js +12 -1
  167. package/lib/commonjs/mol-model/structure/model/types.js +9 -0
  168. package/lib/commonjs/mol-model/structure/structure/unit/rings.js +2 -0
  169. package/lib/commonjs/mol-model-formats/shape/ply.d.ts +26 -0
  170. package/lib/commonjs/mol-model-props/computed/representations/interactions-inter-unit-cylinder.d.ts +13 -0
  171. package/lib/commonjs/mol-model-props/computed/representations/interactions-intra-unit-cylinder.d.ts +13 -0
  172. package/lib/commonjs/mol-model-props/computed/representations/interactions.d.ts +39 -0
  173. package/lib/commonjs/mol-model-props/integrative/cross-link-restraint/representation.d.ts +52 -0
  174. package/lib/commonjs/mol-plugin/behavior/dynamic/selection/structure-focus-representation.d.ts +12 -0
  175. package/lib/commonjs/mol-plugin/behavior/dynamic/selection/structure-focus-representation.js +3 -1
  176. package/lib/commonjs/mol-plugin/commands.d.ts +4 -4
  177. package/lib/commonjs/mol-plugin/config.d.ts +2 -0
  178. package/lib/commonjs/mol-plugin/config.js +10 -3
  179. package/lib/commonjs/mol-plugin/spec.js +1 -0
  180. package/lib/commonjs/mol-plugin/util/viewport-screenshot.d.ts +21 -0
  181. package/lib/commonjs/mol-plugin-state/actions/structure.d.ts +7 -1
  182. package/lib/commonjs/mol-plugin-state/actions/structure.js +150 -72
  183. package/lib/commonjs/mol-plugin-state/builder/structure/hierarchy-preset.d.ts +5 -355
  184. package/lib/commonjs/mol-plugin-state/builder/structure/hierarchy-preset.js +13 -8
  185. package/lib/commonjs/mol-plugin-state/builder/structure/hierarchy.d.ts +1 -71
  186. package/lib/commonjs/mol-plugin-state/helpers/structure-clipping.d.ts +1 -1
  187. package/lib/commonjs/mol-plugin-state/helpers/structure-clipping.js +1 -1
  188. package/lib/commonjs/mol-plugin-state/helpers/structure-selection-query.js +33 -19
  189. package/lib/commonjs/mol-plugin-state/manager/structure/component.d.ts +15 -1
  190. package/lib/commonjs/mol-plugin-state/manager/structure/component.js +13 -8
  191. package/lib/commonjs/mol-plugin-state/transforms/representation.d.ts +54 -0
  192. package/lib/commonjs/mol-plugin-ui/controls/parameters.d.ts +3 -2
  193. package/lib/commonjs/mol-plugin-ui/controls/parameters.js +11 -6
  194. package/lib/commonjs/mol-plugin-ui/hooks/use-behavior.d.ts +1 -1
  195. package/lib/commonjs/mol-plugin-ui/hooks/use-behavior.js +8 -17
  196. package/lib/commonjs/mol-plugin-ui/index.d.ts +4 -4
  197. package/lib/commonjs/mol-plugin-ui/index.js +13 -16
  198. package/lib/commonjs/mol-plugin-ui/plugin.d.ts +1 -1
  199. package/lib/commonjs/mol-plugin-ui/plugin.js +76 -10
  200. package/lib/commonjs/mol-plugin-ui/viewport/simple-settings.js +2 -6
  201. package/lib/commonjs/mol-repr/shape/loci/angle.d.ts +13 -0
  202. package/lib/commonjs/mol-repr/shape/loci/common.d.ts +11 -0
  203. package/lib/commonjs/mol-repr/shape/loci/dihedral.d.ts +13 -0
  204. package/lib/commonjs/mol-repr/shape/loci/distance.d.ts +11 -0
  205. package/lib/commonjs/mol-repr/shape/loci/label.d.ts +11 -0
  206. package/lib/commonjs/mol-repr/shape/loci/orientation.d.ts +13 -0
  207. package/lib/commonjs/mol-repr/shape/loci/plane.d.ts +13 -0
  208. package/lib/commonjs/mol-repr/shape/model/unitcell.d.ts +13 -0
  209. package/lib/commonjs/mol-repr/structure/complex-visual.d.ts +72 -0
  210. package/lib/commonjs/mol-repr/structure/params.d.ts +96 -0
  211. package/lib/commonjs/mol-repr/structure/registry.d.ts +175 -1
  212. package/lib/commonjs/mol-repr/structure/representation/backbone.d.ts +39 -0
  213. package/lib/commonjs/mol-repr/structure/representation/backbone.js +2 -1
  214. package/lib/commonjs/mol-repr/structure/representation/ball-and-stick.d.ts +39 -0
  215. package/lib/commonjs/mol-repr/structure/representation/ball-and-stick.js +2 -1
  216. package/lib/commonjs/mol-repr/structure/representation/carbohydrate.d.ts +39 -0
  217. package/lib/commonjs/mol-repr/structure/representation/carbohydrate.js +2 -1
  218. package/lib/commonjs/mol-repr/structure/representation/cartoon.d.ts +39 -0
  219. package/lib/commonjs/mol-repr/structure/representation/cartoon.js +2 -1
  220. package/lib/commonjs/mol-repr/structure/representation/ellipsoid.d.ts +39 -0
  221. package/lib/commonjs/mol-repr/structure/representation/ellipsoid.js +2 -1
  222. package/lib/commonjs/mol-repr/structure/representation/gaussian-surface.d.ts +39 -0
  223. package/lib/commonjs/mol-repr/structure/representation/gaussian-surface.js +2 -1
  224. package/lib/commonjs/mol-repr/structure/representation/gaussian-volume.d.ts +33 -0
  225. package/lib/commonjs/mol-repr/structure/representation/label.d.ts +36 -3
  226. package/lib/commonjs/mol-repr/structure/representation/line.d.ts +33 -0
  227. package/lib/commonjs/mol-repr/structure/representation/molecular-surface.d.ts +39 -0
  228. package/lib/commonjs/mol-repr/structure/representation/molecular-surface.js +2 -1
  229. package/lib/commonjs/mol-repr/structure/representation/orientation.d.ts +39 -0
  230. package/lib/commonjs/mol-repr/structure/representation/orientation.js +2 -1
  231. package/lib/commonjs/mol-repr/structure/representation/point.d.ts +33 -0
  232. package/lib/commonjs/mol-repr/structure/representation/putty.d.ts +39 -0
  233. package/lib/commonjs/mol-repr/structure/representation/putty.js +2 -1
  234. package/lib/commonjs/mol-repr/structure/representation/spacefill.d.ts +39 -0
  235. package/lib/commonjs/mol-repr/structure/representation/spacefill.js +2 -1
  236. package/lib/commonjs/mol-repr/structure/units-visual.d.ts +96 -0
  237. package/lib/commonjs/mol-repr/structure/visual/bond-inter-unit-cylinder.d.ts +26 -0
  238. package/lib/commonjs/mol-repr/structure/visual/bond-inter-unit-line.d.ts +11 -0
  239. package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-cylinder.d.ts +26 -0
  240. package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-cylinder.js +2 -2
  241. package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-line.d.ts +11 -0
  242. package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-line.js +2 -2
  243. package/lib/commonjs/mol-repr/structure/visual/carbohydrate-link-cylinder.d.ts +13 -0
  244. package/lib/commonjs/mol-repr/structure/visual/carbohydrate-symbol-mesh.d.ts +13 -0
  245. package/lib/commonjs/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.d.ts +13 -0
  246. package/lib/commonjs/mol-repr/structure/visual/element-cross.d.ts +11 -0
  247. package/lib/commonjs/mol-repr/structure/visual/element-point.d.ts +11 -0
  248. package/lib/commonjs/mol-repr/structure/visual/element-sphere.d.ts +26 -0
  249. package/lib/commonjs/mol-repr/structure/visual/ellipsoid-mesh.d.ts +13 -0
  250. package/lib/commonjs/mol-repr/structure/visual/gaussian-density-volume.d.ts +22 -0
  251. package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-mesh.d.ts +52 -0
  252. package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-wireframe.d.ts +11 -0
  253. package/lib/commonjs/mol-repr/structure/visual/label-text.d.ts +13 -2
  254. package/lib/commonjs/mol-repr/structure/visual/label-text.js +2 -2
  255. package/lib/commonjs/mol-repr/structure/visual/molecular-surface-mesh.d.ts +13 -0
  256. package/lib/commonjs/mol-repr/structure/visual/molecular-surface-wireframe.d.ts +11 -0
  257. package/lib/commonjs/mol-repr/structure/visual/nucleotide-block-mesh.d.ts +13 -0
  258. package/lib/commonjs/mol-repr/structure/visual/nucleotide-ring-mesh.d.ts +13 -0
  259. package/lib/commonjs/mol-repr/structure/visual/orientation-ellipsoid-mesh.d.ts +13 -0
  260. package/lib/commonjs/mol-repr/structure/visual/polymer-backbone-cylinder.d.ts +26 -0
  261. package/lib/commonjs/mol-repr/structure/visual/polymer-backbone-sphere.d.ts +26 -0
  262. package/lib/commonjs/mol-repr/structure/visual/polymer-direction-wedge.d.ts +13 -0
  263. package/lib/commonjs/mol-repr/structure/visual/polymer-gap-cylinder.d.ts +13 -0
  264. package/lib/commonjs/mol-repr/structure/visual/polymer-trace-mesh.d.ts +13 -0
  265. package/lib/commonjs/mol-repr/structure/visual/polymer-trace-mesh.js +1 -1
  266. package/lib/commonjs/mol-repr/structure/visual/polymer-tube-mesh.d.ts +13 -0
  267. package/lib/commonjs/mol-repr/structure/visual/util/bond.js +1 -1
  268. package/lib/commonjs/mol-repr/visual.js +11 -7
  269. package/lib/commonjs/mol-repr/volume/direct-volume.d.ts +33 -0
  270. package/lib/commonjs/mol-repr/volume/isosurface.d.ts +76 -0
  271. package/lib/commonjs/mol-repr/volume/isosurface.js +2 -1
  272. package/lib/commonjs/mol-repr/volume/registry.d.ts +35 -0
  273. package/lib/commonjs/mol-repr/volume/representation.d.ts +11 -0
  274. package/lib/commonjs/mol-repr/volume/slice.d.ts +33 -0
  275. package/lib/commonjs/mol-theme/clipping.d.ts +7 -15
  276. package/lib/commonjs/mol-theme/clipping.js +5 -12
  277. package/lib/commonjs/mol-theme/color/illustrative.d.ts +2 -0
  278. package/lib/commonjs/mol-theme/color/illustrative.js +2 -2
  279. package/lib/commonjs/mol-theme/color.d.ts +1 -0
  280. package/lib/commonjs/mol-util/clip.d.ts +49 -0
  281. package/lib/commonjs/mol-util/clip.js +97 -0
  282. package/lib/commonjs/mol-util/material.d.ts +5 -1
  283. package/lib/commonjs/mol-util/material.js +9 -7
  284. package/lib/examples/alpha-orbitals/index.html +1 -0
  285. package/lib/examples/alpha-orbitals/index.js +3 -4
  286. package/lib/examples/basic-wrapper/index.html +3 -2
  287. package/lib/examples/basic-wrapper/index.js +24 -12
  288. package/lib/examples/lighting/index.d.ts +1 -1
  289. package/lib/examples/lighting/index.html +4 -2
  290. package/lib/examples/lighting/index.js +59 -42
  291. package/lib/examples/proteopedia-wrapper/index.html +4 -3
  292. package/lib/examples/proteopedia-wrapper/index.js +27 -15
  293. package/lib/extensions/alpha-orbitals/transforms.d.ts +0 -1
  294. package/lib/extensions/alpha-orbitals/transforms.js +1 -14
  295. package/lib/extensions/anvil/behavior.d.ts +7 -0
  296. package/lib/extensions/anvil/representation.d.ts +63 -0
  297. package/lib/extensions/cellpack/representation.d.ts +13 -0
  298. package/lib/extensions/dnatco/confal-pyramids/representation.d.ts +39 -0
  299. package/lib/extensions/model-archive/quality-assessment/behavior.d.ts +68 -0
  300. package/lib/extensions/model-archive/quality-assessment/behavior.js +233 -0
  301. package/lib/extensions/model-archive/quality-assessment/color/plddt.d.ts +14 -0
  302. package/lib/extensions/model-archive/quality-assessment/color/plddt.js +120 -0
  303. package/lib/extensions/model-archive/quality-assessment/color/qmean.d.ts +12 -0
  304. package/lib/extensions/model-archive/quality-assessment/color/qmean.js +106 -0
  305. package/lib/extensions/model-archive/quality-assessment/prop.d.ts +28 -0
  306. package/lib/extensions/model-archive/quality-assessment/prop.js +127 -0
  307. package/lib/extensions/mp4-export/controls.d.ts +1 -0
  308. package/lib/extensions/mp4-export/controls.js +9 -7
  309. package/lib/extensions/pdbe/structure-quality-report/prop.js +1 -1
  310. package/lib/extensions/rcsb/assembly-symmetry/behavior.d.ts +7 -0
  311. package/lib/extensions/rcsb/assembly-symmetry/prop.js +1 -1
  312. package/lib/extensions/rcsb/assembly-symmetry/representation.d.ts +13 -0
  313. package/lib/extensions/rcsb/validation-report/prop.js +1 -1
  314. package/lib/extensions/rcsb/validation-report/representation.d.ts +65 -0
  315. package/lib/mol-canvas3d/canvas3d.d.ts +8 -8
  316. package/lib/mol-canvas3d/canvas3d.js +12 -4
  317. package/lib/mol-canvas3d/helper/bounding-sphere-helper.js +3 -2
  318. package/lib/mol-canvas3d/helper/camera-helper.d.ts +7 -0
  319. package/lib/mol-canvas3d/helper/camera-helper.js +2 -2
  320. package/lib/mol-canvas3d/helper/handle-helper.d.ts +7 -0
  321. package/lib/mol-canvas3d/helper/handle-helper.js +2 -2
  322. package/lib/mol-canvas3d/helper/helper.d.ts +6 -0
  323. package/lib/mol-canvas3d/passes/image.d.ts +4 -0
  324. package/lib/mol-canvas3d/passes/multi-sample.d.ts +2 -1
  325. package/lib/mol-canvas3d/passes/multi-sample.js +4 -2
  326. package/lib/mol-canvas3d/passes/pick.js +9 -9
  327. package/lib/mol-canvas3d/passes/postprocessing.d.ts +1 -0
  328. package/lib/mol-canvas3d/passes/postprocessing.js +6 -4
  329. package/lib/mol-canvas3d/passes/smaa.js +1 -1
  330. package/lib/mol-geo/geometry/base.d.ts +20 -0
  331. package/lib/mol-geo/geometry/base.js +20 -1
  332. package/lib/mol-geo/geometry/clipping-data.d.ts +1 -3
  333. package/lib/mol-geo/geometry/clipping-data.js +3 -8
  334. package/lib/mol-geo/geometry/cylinders/cylinders.d.ts +14 -1
  335. package/lib/mol-geo/geometry/cylinders/cylinders.js +5 -3
  336. package/lib/mol-geo/geometry/direct-volume/direct-volume.d.ts +11 -0
  337. package/lib/mol-geo/geometry/direct-volume/direct-volume.js +2 -2
  338. package/lib/mol-geo/geometry/image/image.d.ts +11 -0
  339. package/lib/mol-geo/geometry/lines/lines.d.ts +12 -0
  340. package/lib/mol-geo/geometry/lines/lines.js +1 -1
  341. package/lib/mol-geo/geometry/marker-data.d.ts +0 -1
  342. package/lib/mol-geo/geometry/marker-data.js +0 -4
  343. package/lib/mol-geo/geometry/mesh/color-smoothing.js +1 -1
  344. package/lib/mol-geo/geometry/mesh/mesh.d.ts +13 -0
  345. package/lib/mol-geo/geometry/mesh/mesh.js +5 -3
  346. package/lib/mol-geo/geometry/points/points.d.ts +11 -0
  347. package/lib/mol-geo/geometry/spheres/spheres.d.ts +13 -0
  348. package/lib/mol-geo/geometry/spheres/spheres.js +5 -3
  349. package/lib/mol-geo/geometry/substance-data.js +3 -3
  350. package/lib/mol-geo/geometry/text/text.d.ts +11 -0
  351. package/lib/mol-geo/geometry/texture-mesh/color-smoothing.js +3 -3
  352. package/lib/mol-geo/geometry/texture-mesh/texture-mesh.d.ts +13 -0
  353. package/lib/mol-geo/geometry/texture-mesh/texture-mesh.js +5 -3
  354. package/lib/mol-gl/render-object.d.ts +2 -1
  355. package/lib/mol-gl/render-object.js +10 -10
  356. package/lib/mol-gl/renderable/cylinders.d.ts +41 -33
  357. package/lib/mol-gl/renderable/cylinders.js +5 -5
  358. package/lib/mol-gl/renderable/direct-volume.d.ts +11 -5
  359. package/lib/mol-gl/renderable/direct-volume.js +3 -3
  360. package/lib/mol-gl/renderable/image.d.ts +10 -4
  361. package/lib/mol-gl/renderable/image.js +2 -2
  362. package/lib/mol-gl/renderable/lines.d.ts +38 -32
  363. package/lib/mol-gl/renderable/lines.js +4 -4
  364. package/lib/mol-gl/renderable/mesh.d.ts +38 -30
  365. package/lib/mol-gl/renderable/mesh.js +5 -5
  366. package/lib/mol-gl/renderable/points.d.ts +10 -4
  367. package/lib/mol-gl/renderable/points.js +2 -2
  368. package/lib/mol-gl/renderable/schema.d.ts +10 -11
  369. package/lib/mol-gl/renderable/schema.js +6 -12
  370. package/lib/mol-gl/renderable/spheres.d.ts +41 -33
  371. package/lib/mol-gl/renderable/spheres.js +5 -5
  372. package/lib/mol-gl/renderable/text.d.ts +10 -4
  373. package/lib/mol-gl/renderable/text.js +2 -2
  374. package/lib/mol-gl/renderable/texture-mesh.d.ts +13 -5
  375. package/lib/mol-gl/renderable/texture-mesh.js +3 -3
  376. package/lib/mol-gl/renderable.d.ts +0 -1
  377. package/lib/mol-gl/renderer.d.ts +12 -12
  378. package/lib/mol-gl/renderer.js +13 -75
  379. package/lib/mol-gl/scene.d.ts +2 -2
  380. package/lib/mol-gl/scene.js +7 -5
  381. package/lib/mol-gl/shader/chunks/apply-light-color.glsl.d.ts +1 -1
  382. package/lib/mol-gl/shader/chunks/apply-light-color.glsl.js +1 -1
  383. package/lib/mol-gl/shader/chunks/assign-color-varying.glsl.d.ts +1 -1
  384. package/lib/mol-gl/shader/chunks/assign-color-varying.glsl.js +1 -1
  385. package/lib/mol-gl/shader/chunks/assign-marker-varying.glsl.d.ts +1 -1
  386. package/lib/mol-gl/shader/chunks/assign-marker-varying.glsl.js +1 -1
  387. package/lib/mol-gl/shader/chunks/assign-material-color.glsl.d.ts +1 -1
  388. package/lib/mol-gl/shader/chunks/assign-material-color.glsl.js +1 -1
  389. package/lib/mol-gl/shader/chunks/color-frag-params.glsl.d.ts +1 -1
  390. package/lib/mol-gl/shader/chunks/color-frag-params.glsl.js +1 -1
  391. package/lib/mol-gl/shader/chunks/color-vert-params.glsl.d.ts +1 -1
  392. package/lib/mol-gl/shader/chunks/color-vert-params.glsl.js +1 -1
  393. package/lib/mol-gl/shader/chunks/common-frag-params.glsl.d.ts +1 -1
  394. package/lib/mol-gl/shader/chunks/common-frag-params.glsl.js +1 -1
  395. package/lib/mol-gl/shader/chunks/common-vert-params.glsl.d.ts +1 -1
  396. package/lib/mol-gl/shader/chunks/common-vert-params.glsl.js +1 -1
  397. package/lib/mol-gl/shader/chunks/common.glsl.d.ts +1 -1
  398. package/lib/mol-gl/shader/chunks/common.glsl.js +1 -1
  399. package/lib/mol-gl/shader/chunks/light-frag-params.glsl.d.ts +1 -1
  400. package/lib/mol-gl/shader/chunks/light-frag-params.glsl.js +1 -1
  401. package/lib/mol-gl/shader/cylinders.frag.d.ts +1 -1
  402. package/lib/mol-gl/shader/cylinders.frag.js +1 -1
  403. package/lib/mol-gl/shader/direct-volume.frag.d.ts +1 -1
  404. package/lib/mol-gl/shader/direct-volume.frag.js +1 -1
  405. package/lib/mol-gl/shader/image.frag.d.ts +1 -1
  406. package/lib/mol-gl/shader/image.frag.js +1 -1
  407. package/lib/mol-gl/shader/mesh.frag.d.ts +1 -1
  408. package/lib/mol-gl/shader/mesh.frag.js +1 -1
  409. package/lib/mol-gl/shader/mesh.vert.d.ts +1 -1
  410. package/lib/mol-gl/shader/mesh.vert.js +1 -1
  411. package/lib/mol-gl/shader/postprocessing.frag.d.ts +1 -1
  412. package/lib/mol-gl/shader/postprocessing.frag.js +1 -1
  413. package/lib/mol-gl/shader/spheres.frag.d.ts +1 -1
  414. package/lib/mol-gl/shader/spheres.frag.js +1 -1
  415. package/lib/mol-gl/shader-code.d.ts +3 -1
  416. package/lib/mol-gl/shader-code.js +42 -13
  417. package/lib/mol-gl/webgl/render-item.d.ts +7 -6
  418. package/lib/mol-gl/webgl/render-item.js +8 -6
  419. package/lib/mol-gl/webgl/resources.js +8 -1
  420. package/lib/mol-io/reader/cif/schema/mmcif.d.ts +326 -1
  421. package/lib/mol-io/reader/cif/schema/mmcif.js +326 -1
  422. package/lib/mol-math/geometry/symmetry-operator.js +3 -2
  423. package/lib/mol-math/linear-algebra/3d/quat.d.ts +9 -1
  424. package/lib/mol-math/linear-algebra/3d/quat.js +20 -1
  425. package/lib/mol-model/structure/model/model.d.ts +1 -0
  426. package/lib/mol-model/structure/model/model.js +15 -5
  427. package/lib/mol-model/structure/model/properties/atomic/hierarchy.d.ts +6 -1
  428. package/lib/mol-model/structure/model/properties/atomic/hierarchy.js +1 -1
  429. package/lib/mol-model/structure/model/properties/utils/atomic-derived.d.ts +1 -1
  430. package/lib/mol-model/structure/model/properties/utils/atomic-derived.js +5 -2
  431. package/lib/mol-model/structure/model/properties/utils/atomic-index.d.ts +1 -1
  432. package/lib/mol-model/structure/model/properties/utils/atomic-index.js +12 -1
  433. package/lib/mol-model/structure/model/types.js +9 -0
  434. package/lib/mol-model/structure/structure/unit/rings.js +2 -0
  435. package/lib/mol-model-formats/shape/ply.d.ts +26 -0
  436. package/lib/mol-model-props/computed/representations/interactions-inter-unit-cylinder.d.ts +13 -0
  437. package/lib/mol-model-props/computed/representations/interactions-intra-unit-cylinder.d.ts +13 -0
  438. package/lib/mol-model-props/computed/representations/interactions.d.ts +39 -0
  439. package/lib/mol-model-props/integrative/cross-link-restraint/representation.d.ts +52 -0
  440. package/lib/mol-plugin/behavior/dynamic/selection/structure-focus-representation.d.ts +12 -0
  441. package/lib/mol-plugin/behavior/dynamic/selection/structure-focus-representation.js +3 -1
  442. package/lib/mol-plugin/commands.d.ts +4 -4
  443. package/lib/mol-plugin/config.d.ts +2 -0
  444. package/lib/mol-plugin/config.js +9 -3
  445. package/lib/mol-plugin/spec.js +1 -0
  446. package/lib/mol-plugin/util/viewport-screenshot.d.ts +21 -0
  447. package/lib/mol-plugin/version.js +2 -2
  448. package/lib/mol-plugin-state/actions/structure.d.ts +7 -1
  449. package/lib/mol-plugin-state/actions/structure.js +150 -72
  450. package/lib/mol-plugin-state/builder/structure/hierarchy-preset.d.ts +5 -355
  451. package/lib/mol-plugin-state/builder/structure/hierarchy-preset.js +14 -9
  452. package/lib/mol-plugin-state/builder/structure/hierarchy.d.ts +1 -71
  453. package/lib/mol-plugin-state/helpers/structure-clipping.d.ts +1 -1
  454. package/lib/mol-plugin-state/helpers/structure-clipping.js +1 -1
  455. package/lib/mol-plugin-state/helpers/structure-selection-query.js +34 -20
  456. package/lib/mol-plugin-state/manager/structure/component.d.ts +15 -1
  457. package/lib/mol-plugin-state/manager/structure/component.js +14 -9
  458. package/lib/mol-plugin-state/transforms/representation.d.ts +54 -0
  459. package/lib/mol-plugin-ui/controls/parameters.d.ts +3 -2
  460. package/lib/mol-plugin-ui/controls/parameters.js +12 -7
  461. package/lib/mol-plugin-ui/hooks/use-behavior.d.ts +1 -1
  462. package/lib/mol-plugin-ui/hooks/use-behavior.js +9 -18
  463. package/lib/mol-plugin-ui/index.d.ts +4 -4
  464. package/lib/mol-plugin-ui/index.js +11 -13
  465. package/lib/mol-plugin-ui/plugin.d.ts +1 -1
  466. package/lib/mol-plugin-ui/plugin.js +76 -10
  467. package/lib/mol-plugin-ui/skin/base/components/misc.scss +27 -0
  468. package/lib/mol-plugin-ui/viewport/simple-settings.js +2 -6
  469. package/lib/mol-repr/shape/loci/angle.d.ts +13 -0
  470. package/lib/mol-repr/shape/loci/common.d.ts +11 -0
  471. package/lib/mol-repr/shape/loci/dihedral.d.ts +13 -0
  472. package/lib/mol-repr/shape/loci/distance.d.ts +11 -0
  473. package/lib/mol-repr/shape/loci/label.d.ts +11 -0
  474. package/lib/mol-repr/shape/loci/orientation.d.ts +13 -0
  475. package/lib/mol-repr/shape/loci/plane.d.ts +13 -0
  476. package/lib/mol-repr/shape/model/unitcell.d.ts +13 -0
  477. package/lib/mol-repr/structure/complex-visual.d.ts +72 -0
  478. package/lib/mol-repr/structure/params.d.ts +96 -0
  479. package/lib/mol-repr/structure/registry.d.ts +175 -1
  480. package/lib/mol-repr/structure/representation/backbone.d.ts +39 -0
  481. package/lib/mol-repr/structure/representation/backbone.js +2 -1
  482. package/lib/mol-repr/structure/representation/ball-and-stick.d.ts +39 -0
  483. package/lib/mol-repr/structure/representation/ball-and-stick.js +2 -1
  484. package/lib/mol-repr/structure/representation/carbohydrate.d.ts +39 -0
  485. package/lib/mol-repr/structure/representation/carbohydrate.js +2 -1
  486. package/lib/mol-repr/structure/representation/cartoon.d.ts +39 -0
  487. package/lib/mol-repr/structure/representation/cartoon.js +2 -1
  488. package/lib/mol-repr/structure/representation/ellipsoid.d.ts +39 -0
  489. package/lib/mol-repr/structure/representation/ellipsoid.js +2 -1
  490. package/lib/mol-repr/structure/representation/gaussian-surface.d.ts +39 -0
  491. package/lib/mol-repr/structure/representation/gaussian-surface.js +2 -1
  492. package/lib/mol-repr/structure/representation/gaussian-volume.d.ts +33 -0
  493. package/lib/mol-repr/structure/representation/label.d.ts +36 -3
  494. package/lib/mol-repr/structure/representation/line.d.ts +33 -0
  495. package/lib/mol-repr/structure/representation/molecular-surface.d.ts +39 -0
  496. package/lib/mol-repr/structure/representation/molecular-surface.js +2 -1
  497. package/lib/mol-repr/structure/representation/orientation.d.ts +39 -0
  498. package/lib/mol-repr/structure/representation/orientation.js +2 -1
  499. package/lib/mol-repr/structure/representation/point.d.ts +33 -0
  500. package/lib/mol-repr/structure/representation/putty.d.ts +39 -0
  501. package/lib/mol-repr/structure/representation/putty.js +2 -1
  502. package/lib/mol-repr/structure/representation/spacefill.d.ts +39 -0
  503. package/lib/mol-repr/structure/representation/spacefill.js +2 -1
  504. package/lib/mol-repr/structure/units-visual.d.ts +96 -0
  505. package/lib/mol-repr/structure/visual/bond-inter-unit-cylinder.d.ts +26 -0
  506. package/lib/mol-repr/structure/visual/bond-inter-unit-line.d.ts +11 -0
  507. package/lib/mol-repr/structure/visual/bond-intra-unit-cylinder.d.ts +26 -0
  508. package/lib/mol-repr/structure/visual/bond-intra-unit-cylinder.js +2 -2
  509. package/lib/mol-repr/structure/visual/bond-intra-unit-line.d.ts +11 -0
  510. package/lib/mol-repr/structure/visual/bond-intra-unit-line.js +2 -2
  511. package/lib/mol-repr/structure/visual/carbohydrate-link-cylinder.d.ts +13 -0
  512. package/lib/mol-repr/structure/visual/carbohydrate-symbol-mesh.d.ts +13 -0
  513. package/lib/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.d.ts +13 -0
  514. package/lib/mol-repr/structure/visual/element-cross.d.ts +11 -0
  515. package/lib/mol-repr/structure/visual/element-point.d.ts +11 -0
  516. package/lib/mol-repr/structure/visual/element-sphere.d.ts +26 -0
  517. package/lib/mol-repr/structure/visual/ellipsoid-mesh.d.ts +13 -0
  518. package/lib/mol-repr/structure/visual/gaussian-density-volume.d.ts +22 -0
  519. package/lib/mol-repr/structure/visual/gaussian-surface-mesh.d.ts +52 -0
  520. package/lib/mol-repr/structure/visual/gaussian-surface-wireframe.d.ts +11 -0
  521. package/lib/mol-repr/structure/visual/label-text.d.ts +13 -2
  522. package/lib/mol-repr/structure/visual/label-text.js +2 -2
  523. package/lib/mol-repr/structure/visual/molecular-surface-mesh.d.ts +13 -0
  524. package/lib/mol-repr/structure/visual/molecular-surface-wireframe.d.ts +11 -0
  525. package/lib/mol-repr/structure/visual/nucleotide-block-mesh.d.ts +13 -0
  526. package/lib/mol-repr/structure/visual/nucleotide-ring-mesh.d.ts +13 -0
  527. package/lib/mol-repr/structure/visual/orientation-ellipsoid-mesh.d.ts +13 -0
  528. package/lib/mol-repr/structure/visual/polymer-backbone-cylinder.d.ts +26 -0
  529. package/lib/mol-repr/structure/visual/polymer-backbone-sphere.d.ts +26 -0
  530. package/lib/mol-repr/structure/visual/polymer-direction-wedge.d.ts +13 -0
  531. package/lib/mol-repr/structure/visual/polymer-gap-cylinder.d.ts +13 -0
  532. package/lib/mol-repr/structure/visual/polymer-trace-mesh.d.ts +13 -0
  533. package/lib/mol-repr/structure/visual/polymer-trace-mesh.js +1 -1
  534. package/lib/mol-repr/structure/visual/polymer-tube-mesh.d.ts +13 -0
  535. package/lib/mol-repr/structure/visual/util/bond.js +1 -1
  536. package/lib/mol-repr/visual.js +11 -7
  537. package/lib/mol-repr/volume/direct-volume.d.ts +33 -0
  538. package/lib/mol-repr/volume/isosurface.d.ts +76 -0
  539. package/lib/mol-repr/volume/isosurface.js +2 -1
  540. package/lib/mol-repr/volume/registry.d.ts +35 -0
  541. package/lib/mol-repr/volume/representation.d.ts +11 -0
  542. package/lib/mol-repr/volume/slice.d.ts +33 -0
  543. package/lib/mol-theme/clipping.d.ts +7 -15
  544. package/lib/mol-theme/clipping.js +5 -12
  545. package/lib/mol-theme/color/illustrative.d.ts +2 -0
  546. package/lib/mol-theme/color/illustrative.js +2 -2
  547. package/lib/mol-theme/color.d.ts +1 -0
  548. package/lib/mol-util/clip.d.ts +49 -0
  549. package/lib/mol-util/clip.js +93 -0
  550. package/lib/mol-util/material.d.ts +5 -1
  551. package/lib/mol-util/material.js +9 -7
  552. package/package.json +5 -3
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) 2017-2018 mol* contributors, licensed under MIT, See LICENSE file for more info.
2
+ * Copyright (c) 2017-2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
3
  *
4
4
  * @author David Sehnal <david.sehnal@gmail.com>
5
5
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
@@ -70,6 +70,14 @@ declare namespace Quat {
70
70
  function fromArray(a: Quat, array: NumberArray, offset: number): Quat;
71
71
  function copy(out: Quat, a: Quat): Quat;
72
72
  function set(out: Quat, x: number, y: number, z: number, w: number): Quat;
73
+ /**
74
+ * Returns whether or not the quaternions have exactly the same elements in the same position (when compared with ===)
75
+ */
76
+ function exactEquals(a: Quat, b: Quat): boolean;
77
+ /**
78
+ * Returns whether or not the quaternions have approximately the same elements in the same position.
79
+ */
80
+ function equals(a: Quat, b: Quat): boolean;
73
81
  function add(out: Quat, a: Quat, b: Quat): Quat;
74
82
  function normalize(out: Quat, a: Quat): Quat;
75
83
  function rotationTo(out: Quat, a: Vec3, b: Vec3): Quat;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  /**
3
- * Copyright (c) 2017-2018 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
+ * Copyright (c) 2017-2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
4
4
  *
5
5
  * @author David Sehnal <david.sehnal@gmail.com>
6
6
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
@@ -315,6 +315,25 @@ exports.Quat = Quat;
315
315
  return out;
316
316
  }
317
317
  Quat.set = set;
318
+ /**
319
+ * Returns whether or not the quaternions have exactly the same elements in the same position (when compared with ===)
320
+ */
321
+ function exactEquals(a, b) {
322
+ return a[0] === b[0] && a[1] === b[1] && a[2] === b[2] && a[3] === b[3];
323
+ }
324
+ Quat.exactEquals = exactEquals;
325
+ /**
326
+ * Returns whether or not the quaternions have approximately the same elements in the same position.
327
+ */
328
+ function equals(a, b) {
329
+ var a0 = a[0], a1 = a[1], a2 = a[2], a3 = a[3];
330
+ var b0 = b[0], b1 = b[1], b2 = b[2], b3 = b[3];
331
+ return (Math.abs(a0 - b0) <= common_1.EPSILON * Math.max(1.0, Math.abs(a0), Math.abs(b0)) &&
332
+ Math.abs(a1 - b1) <= common_1.EPSILON * Math.max(1.0, Math.abs(a1), Math.abs(b1)) &&
333
+ Math.abs(a2 - b2) <= common_1.EPSILON * Math.max(1.0, Math.abs(a2), Math.abs(b2)) &&
334
+ Math.abs(a3 - b3) <= common_1.EPSILON * Math.max(1.0, Math.abs(a3), Math.abs(b3)));
335
+ }
336
+ Quat.equals = equals;
318
337
  function add(out, a, b) {
319
338
  out[0] = a[0] + b[0];
320
339
  out[1] = a[1] + b[1];
@@ -124,6 +124,7 @@ export declare namespace Model {
124
124
  function hasProtein(model: Model): boolean;
125
125
  function hasNucleic(model: Model): boolean;
126
126
  function isFromPdbArchive(model: Model): boolean;
127
+ function hasPdbId(model: Model): boolean;
127
128
  function hasSecondaryStructure(model: Model): boolean;
128
129
  function hasCrystalSymmetry(model: Model): boolean;
129
130
  function isFromXray(model: Model): boolean;
@@ -204,13 +204,23 @@ var Model;
204
204
  if (!mmcif_1.MmcifFormat.is(model.sourceData))
205
205
  return false;
206
206
  var db = model.sourceData.data.db;
207
- return (db.database_2.database_id.isDefined ||
208
- // 4 character PDB id
209
- model.entryId.match(/^[1-9][a-z0-9]{3,3}$/i) !== null ||
207
+ for (var i = 0, il = db.database_2.database_id.rowCount; i < il; ++i) {
208
+ if (db.database_2.database_id.value(i) === 'PDB')
209
+ return true;
210
+ }
211
+ return false;
212
+ }
213
+ Model.isFromPdbArchive = isFromPdbArchive;
214
+ function hasPdbId(model) {
215
+ if (!mmcif_1.MmcifFormat.is(model.sourceData))
216
+ return false;
217
+ return (
218
+ // 4 character PDB id
219
+ model.entryId.match(/^[1-9][a-z0-9]{3,3}$/i) !== null ||
210
220
  // long PDB id
211
221
  model.entryId.match(/^pdb_[0-9]{4,4}[1-9][a-z0-9]{3,3}$/i) !== null);
212
222
  }
213
- Model.isFromPdbArchive = isFromPdbArchive;
223
+ Model.hasPdbId = hasPdbId;
214
224
  function hasSecondaryStructure(model) {
215
225
  if (!mmcif_1.MmcifFormat.is(model.sourceData))
216
226
  return false;
@@ -307,7 +317,7 @@ var Model;
307
317
  var db = model.sourceData.data.db;
308
318
  return hasDensityMap(model) || (
309
319
  // check if from pdb archive but missing relevant meta data
310
- isFromPdbArchive(model) && (!db.exptl.method.isDefined ||
320
+ hasPdbId(model) && (!db.exptl.method.isDefined ||
311
321
  (isFromXray(model) && (!db.pdbx_database_status.status_code_sf.isDefined ||
312
322
  db.pdbx_database_status.status_code_sf.valueKind(0) === 2 /* Unknown */)) ||
313
323
  (isFromEm(model) && (!db.pdbx_database_related.db_name.isDefined))));
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) 2017-2019 mol* contributors, licensed under MIT, See LICENSE file for more info.
2
+ * Copyright (c) 2017-2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
3
  *
4
4
  * @author David Sehnal <david.sehnal@gmail.com>
5
5
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
@@ -181,6 +181,11 @@ export interface AtomicIndex {
181
181
  * @returns first found index or -1 if none of the given atoms are present.
182
182
  */
183
183
  findAtomsOnResidue(residueIndex: ResidueIndex, label_atom_ids: Set<string>): ElementIndex;
184
+ /**
185
+ * Find element index of an atom on a given residue.
186
+ * @returns index or -1 if the atom is not present.
187
+ */
188
+ findElementOnResidue(residueIndex: ResidueIndex, type_symbol: ElementSymbol): ElementIndex;
184
189
  }
185
190
  export declare namespace AtomicIndex {
186
191
  interface ChainLabelKey {
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  /**
3
- * Copyright (c) 2017-2019 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
+ * Copyright (c) 2017-2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
4
4
  *
5
5
  * @author David Sehnal <david.sehnal@gmail.com>
6
6
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
@@ -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-2021 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,6 +1,6 @@
1
1
  "use strict";
2
2
  /**
3
- * Copyright (c) 2018-2020 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
+ * Copyright (c) 2018-2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
4
4
  *
5
5
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
6
6
  */
@@ -57,6 +57,9 @@ function getAtomicDerivedData(data, segments, index, chemicalComponentMap) {
57
57
  if (traceIndex === -1) {
58
58
  var coarseAtomId = (0, util_1.getAtomIdForAtomRole)(polyType, 'coarseBackbone');
59
59
  traceIndex = index.findAtomsOnResidue(i, coarseAtomId);
60
+ if (traceIndex === -1 && (0, types_1.isPolymer)(molType)) {
61
+ traceIndex = index.findElementOnResidue(i, (0, types_1.ElementSymbol)('C'));
62
+ }
60
63
  }
61
64
  traceElementIndex[i] = traceIndex;
62
65
  var directionFromAtomId = (0, util_1.getAtomIdForAtomRole)(polyType, 'directionFrom');
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Copyright (c) 2017-2020 mol* contributors, licensed under MIT, See LICENSE file for more info.
2
+ * Copyright (c) 2017-2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
3
  *
4
4
  * @author David Sehnal <david.sehnal@gmail.com>
5
5
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  /**
3
- * Copyright (c) 2017-2020 mol* contributors, licensed under MIT, See LICENSE file for more info.
3
+ * Copyright (c) 2017-2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
4
4
  *
5
5
  * @author David Sehnal <david.sehnal@gmail.com>
6
6
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
@@ -43,6 +43,7 @@ function createMapping(entities, data, segments) {
43
43
  label_atom_id: data.atoms.label_atom_id,
44
44
  auth_atom_id: data.atoms.auth_atom_id,
45
45
  label_alt_id: data.atoms.label_alt_id,
46
+ type_symbol: data.atoms.type_symbol,
46
47
  chain_index_entity_index: new Int32Array(data.chains._rowCount),
47
48
  entity_index_label_asym_id: new Map(),
48
49
  chain_index_label_seq_id: new Map(),
@@ -151,6 +152,9 @@ var Index = /** @class */ (function () {
151
152
  Index.prototype.findAtomsOnResidue = function (rI, label_atom_ids) {
152
153
  return findAtomByNames(this.residueOffsets[rI], this.residueOffsets[rI + 1], this.map.label_atom_id, label_atom_ids);
153
154
  };
155
+ Index.prototype.findElementOnResidue = function (rI, type_symbol) {
156
+ return findAtomByElement(this.residueOffsets[rI], this.residueOffsets[rI + 1], this.map.type_symbol, type_symbol);
157
+ };
154
158
  return Index;
155
159
  }());
156
160
  function findAtomByName(start, end, data, atomName) {
@@ -174,6 +178,13 @@ function findAtomByNameAndAltLoc(start, end, nameData, altLocData, atomName, alt
174
178
  }
175
179
  return -1;
176
180
  }
181
+ function findAtomByElement(start, end, data, typeSymbol) {
182
+ for (var i = start; i < end; i++) {
183
+ if (data.value(i) === typeSymbol)
184
+ return i;
185
+ }
186
+ return -1;
187
+ }
177
188
  function getAtomicIndex(data, entities, segments) {
178
189
  var map = createMapping(entities, data, segments);
179
190
  var _a = data.residues, label_seq_id = _a.label_seq_id, auth_seq_id = _a.auth_seq_id, pdbx_PDB_ins_code = _a.pdbx_PDB_ins_code;
@@ -268,6 +268,15 @@ function getMoleculeType(compType, compId) {
268
268
  // trust our saccharide table more than given 'non-polymer' or 'other' component type
269
269
  return 9 /* Saccharide */;
270
270
  }
271
+ else if (exports.AminoAcidNames.has(compId)) {
272
+ return 5 /* Protein */;
273
+ }
274
+ else if (exports.RnaBaseNames.has(compId)) {
275
+ return 6 /* RNA */;
276
+ }
277
+ else if (exports.DnaBaseNames.has(compId)) {
278
+ return 7 /* DNA */;
279
+ }
271
280
  else {
272
281
  return 1 /* Other */;
273
282
  }
@@ -129,6 +129,8 @@ var UnitRing;
129
129
  return true;
130
130
  if (!hasAromaticRingElement)
131
131
  return false;
132
+ if (ring.length < 5)
133
+ return false;
132
134
  var ma = principal_axes_1.PrincipalAxes.calculateMomentsAxes((0, util_1.getPositions)(unit, ring));
133
135
  return linear_algebra_1.Vec3.magnitude(ma.dirC) < AromaticRingPlanarityThreshold;
134
136
  }
@@ -30,11 +30,24 @@ export declare const PlyShapeParams: {
30
30
  flatShaded: PD.BooleanParam;
31
31
  ignoreLight: PD.BooleanParam;
32
32
  xrayShaded: PD.BooleanParam;
33
+ bumpFrequency: PD.Numeric;
34
+ bumpAmplitude: PD.Numeric;
33
35
  alpha: PD.Numeric;
34
36
  quality: PD.Select<"auto" | "medium" | "high" | "low" | "custom" | "highest" | "higher" | "lower" | "lowest">;
35
37
  material: PD.Group<PD.Normalize<{
36
38
  metalness: number;
37
39
  roughness: number;
40
+ bumpiness: number;
41
+ }>>;
42
+ clip: PD.Group<PD.Normalize<{
43
+ variant: import("../../mol-util/clip").Clip.Variant;
44
+ objects: PD.Normalize<{
45
+ type: any;
46
+ invert: any;
47
+ position: any;
48
+ rotation: any;
49
+ scale: any;
50
+ }>[];
38
51
  }>>;
39
52
  };
40
53
  export declare type PlyShapeParams = typeof PlyShapeParams;
@@ -58,10 +71,23 @@ export declare function shapeFromPly(source: PlyFile, params?: {}): Task<ShapePr
58
71
  flatShaded: PD.BooleanParam;
59
72
  ignoreLight: PD.BooleanParam;
60
73
  xrayShaded: PD.BooleanParam;
74
+ bumpFrequency: PD.Numeric;
75
+ bumpAmplitude: PD.Numeric;
61
76
  alpha: PD.Numeric;
62
77
  quality: PD.Select<"auto" | "medium" | "high" | "low" | "custom" | "highest" | "higher" | "lower" | "lowest">;
63
78
  material: PD.Group<PD.Normalize<{
64
79
  metalness: number;
65
80
  roughness: number;
81
+ bumpiness: number;
82
+ }>>;
83
+ clip: PD.Group<PD.Normalize<{
84
+ variant: import("../../mol-util/clip").Clip.Variant;
85
+ objects: PD.Normalize<{
86
+ type: any;
87
+ invert: any;
88
+ position: any;
89
+ rotation: any;
90
+ scale: any;
91
+ }>[];
66
92
  }>>;
67
93
  }>>;
@@ -25,11 +25,24 @@ export declare const InteractionsInterUnitParams: {
25
25
  flatShaded: PD.BooleanParam;
26
26
  ignoreLight: PD.BooleanParam;
27
27
  xrayShaded: PD.BooleanParam;
28
+ bumpFrequency: PD.Numeric;
29
+ bumpAmplitude: PD.Numeric;
28
30
  alpha: PD.Numeric;
29
31
  quality: PD.Select<"auto" | "medium" | "high" | "low" | "custom" | "highest" | "higher" | "lower" | "lowest">;
30
32
  material: PD.Group<PD.Normalize<{
31
33
  metalness: number;
32
34
  roughness: number;
35
+ bumpiness: number;
36
+ }>>;
37
+ clip: PD.Group<PD.Normalize<{
38
+ variant: import("../../../mol-util/clip").Clip.Variant;
39
+ objects: PD.Normalize<{
40
+ type: any;
41
+ invert: any;
42
+ position: any;
43
+ rotation: any;
44
+ scale: any;
45
+ }>[];
33
46
  }>>;
34
47
  };
35
48
  export declare type InteractionsInterUnitParams = typeof InteractionsInterUnitParams;
@@ -25,11 +25,24 @@ export declare const InteractionsIntraUnitParams: {
25
25
  flatShaded: PD.BooleanParam;
26
26
  ignoreLight: PD.BooleanParam;
27
27
  xrayShaded: PD.BooleanParam;
28
+ bumpFrequency: PD.Numeric;
29
+ bumpAmplitude: PD.Numeric;
28
30
  alpha: PD.Numeric;
29
31
  quality: PD.Select<"auto" | "medium" | "high" | "low" | "custom" | "highest" | "higher" | "lower" | "lowest">;
30
32
  material: PD.Group<PD.Normalize<{
31
33
  metalness: number;
32
34
  roughness: number;
35
+ bumpiness: number;
36
+ }>>;
37
+ clip: PD.Group<PD.Normalize<{
38
+ variant: import("../../../mol-util/clip").Clip.Variant;
39
+ objects: PD.Normalize<{
40
+ type: any;
41
+ invert: any;
42
+ position: any;
43
+ rotation: any;
44
+ scale: any;
45
+ }>[];
33
46
  }>>;
34
47
  };
35
48
  export declare type InteractionsIntraUnitParams = typeof InteractionsIntraUnitParams;
@@ -29,11 +29,24 @@ export declare const InteractionsParams: {
29
29
  flatShaded: PD.BooleanParam;
30
30
  ignoreLight: PD.BooleanParam;
31
31
  xrayShaded: PD.BooleanParam;
32
+ bumpFrequency: PD.Numeric;
33
+ bumpAmplitude: PD.Numeric;
32
34
  alpha: PD.Numeric;
33
35
  quality: PD.Select<"auto" | "medium" | "high" | "low" | "custom" | "highest" | "higher" | "lower" | "lowest">;
34
36
  material: PD.Group<PD.Normalize<{
35
37
  metalness: number;
36
38
  roughness: number;
39
+ bumpiness: number;
40
+ }>>;
41
+ clip: PD.Group<PD.Normalize<{
42
+ variant: import("../../../mol-util/clip").Clip.Variant;
43
+ objects: PD.Normalize<{
44
+ type: any;
45
+ invert: any;
46
+ position: any;
47
+ rotation: any;
48
+ scale: any;
49
+ }>[];
37
50
  }>>;
38
51
  };
39
52
  export declare type InteractionsParams = typeof InteractionsParams;
@@ -58,11 +71,24 @@ export declare function getInteractionParams(ctx: ThemeRegistryContext, structur
58
71
  flatShaded: PD.BooleanParam;
59
72
  ignoreLight: PD.BooleanParam;
60
73
  xrayShaded: PD.BooleanParam;
74
+ bumpFrequency: PD.Numeric;
75
+ bumpAmplitude: PD.Numeric;
61
76
  alpha: PD.Numeric;
62
77
  quality: PD.Select<"auto" | "medium" | "high" | "low" | "custom" | "highest" | "higher" | "lower" | "lowest">;
63
78
  material: PD.Group<PD.Normalize<{
64
79
  metalness: number;
65
80
  roughness: number;
81
+ bumpiness: number;
82
+ }>>;
83
+ clip: PD.Group<PD.Normalize<{
84
+ variant: import("../../../mol-util/clip").Clip.Variant;
85
+ objects: PD.Normalize<{
86
+ type: any;
87
+ invert: any;
88
+ position: any;
89
+ rotation: any;
90
+ scale: any;
91
+ }>[];
66
92
  }>>;
67
93
  };
68
94
  export declare type InteractionRepresentation = StructureRepresentation<InteractionsParams>;
@@ -88,10 +114,23 @@ export declare const InteractionsRepresentationProvider: StructureRepresentation
88
114
  flatShaded: PD.BooleanParam;
89
115
  ignoreLight: PD.BooleanParam;
90
116
  xrayShaded: PD.BooleanParam;
117
+ bumpFrequency: PD.Numeric;
118
+ bumpAmplitude: PD.Numeric;
91
119
  alpha: PD.Numeric;
92
120
  quality: PD.Select<"auto" | "medium" | "high" | "low" | "custom" | "highest" | "higher" | "lower" | "lowest">;
93
121
  material: PD.Group<PD.Normalize<{
94
122
  metalness: number;
95
123
  roughness: number;
124
+ bumpiness: number;
125
+ }>>;
126
+ clip: PD.Group<PD.Normalize<{
127
+ variant: import("../../../mol-util/clip").Clip.Variant;
128
+ objects: PD.Normalize<{
129
+ type: any;
130
+ invert: any;
131
+ position: any;
132
+ rotation: any;
133
+ scale: any;
134
+ }>[];
96
135
  }>>;
97
136
  }, "interactions">;
@@ -30,11 +30,24 @@ export declare const CrossLinkRestraintCylinderParams: {
30
30
  flatShaded: PD.BooleanParam;
31
31
  ignoreLight: PD.BooleanParam;
32
32
  xrayShaded: PD.BooleanParam;
33
+ bumpFrequency: PD.Numeric;
34
+ bumpAmplitude: PD.Numeric;
33
35
  alpha: PD.Numeric;
34
36
  quality: PD.Select<"auto" | "medium" | "high" | "low" | "custom" | "highest" | "higher" | "lower" | "lowest">;
35
37
  material: PD.Group<PD.Normalize<{
36
38
  metalness: number;
37
39
  roughness: number;
40
+ bumpiness: number;
41
+ }>>;
42
+ clip: PD.Group<PD.Normalize<{
43
+ variant: import("../../../mol-util/clip").Clip.Variant;
44
+ objects: PD.Normalize<{
45
+ type: any;
46
+ invert: any;
47
+ position: any;
48
+ rotation: any;
49
+ scale: any;
50
+ }>[];
38
51
  }>>;
39
52
  };
40
53
  export declare type CrossLinkRestraintCylinderParams = typeof CrossLinkRestraintCylinderParams;
@@ -59,11 +72,24 @@ export declare const CrossLinkRestraintParams: {
59
72
  flatShaded: PD.BooleanParam;
60
73
  ignoreLight: PD.BooleanParam;
61
74
  xrayShaded: PD.BooleanParam;
75
+ bumpFrequency: PD.Numeric;
76
+ bumpAmplitude: PD.Numeric;
62
77
  alpha: PD.Numeric;
63
78
  quality: PD.Select<"auto" | "medium" | "high" | "low" | "custom" | "highest" | "higher" | "lower" | "lowest">;
64
79
  material: PD.Group<PD.Normalize<{
65
80
  metalness: number;
66
81
  roughness: number;
82
+ bumpiness: number;
83
+ }>>;
84
+ clip: PD.Group<PD.Normalize<{
85
+ variant: import("../../../mol-util/clip").Clip.Variant;
86
+ objects: PD.Normalize<{
87
+ type: any;
88
+ invert: any;
89
+ position: any;
90
+ rotation: any;
91
+ scale: any;
92
+ }>[];
67
93
  }>>;
68
94
  };
69
95
  export declare type CrossLinkRestraintParams = typeof CrossLinkRestraintParams;
@@ -87,11 +113,24 @@ export declare function getCrossLinkRestraintParams(ctx: ThemeRegistryContext, s
87
113
  flatShaded: PD.BooleanParam;
88
114
  ignoreLight: PD.BooleanParam;
89
115
  xrayShaded: PD.BooleanParam;
116
+ bumpFrequency: PD.Numeric;
117
+ bumpAmplitude: PD.Numeric;
90
118
  alpha: PD.Numeric;
91
119
  quality: PD.Select<"auto" | "medium" | "high" | "low" | "custom" | "highest" | "higher" | "lower" | "lowest">;
92
120
  material: PD.Group<PD.Normalize<{
93
121
  metalness: number;
94
122
  roughness: number;
123
+ bumpiness: number;
124
+ }>>;
125
+ clip: PD.Group<PD.Normalize<{
126
+ variant: import("../../../mol-util/clip").Clip.Variant;
127
+ objects: PD.Normalize<{
128
+ type: any;
129
+ invert: any;
130
+ position: any;
131
+ rotation: any;
132
+ scale: any;
133
+ }>[];
95
134
  }>>;
96
135
  };
97
136
  export declare type CrossLinkRestraintRepresentation = StructureRepresentation<CrossLinkRestraintParams>;
@@ -116,10 +155,23 @@ export declare const CrossLinkRestraintRepresentationProvider: StructureRepresen
116
155
  flatShaded: PD.BooleanParam;
117
156
  ignoreLight: PD.BooleanParam;
118
157
  xrayShaded: PD.BooleanParam;
158
+ bumpFrequency: PD.Numeric;
159
+ bumpAmplitude: PD.Numeric;
119
160
  alpha: PD.Numeric;
120
161
  quality: PD.Select<"auto" | "medium" | "high" | "low" | "custom" | "highest" | "higher" | "lower" | "lowest">;
121
162
  material: PD.Group<PD.Normalize<{
122
163
  metalness: number;
123
164
  roughness: number;
165
+ bumpiness: number;
166
+ }>>;
167
+ clip: PD.Group<PD.Normalize<{
168
+ variant: import("../../../mol-util/clip").Clip.Variant;
169
+ objects: PD.Normalize<{
170
+ type: any;
171
+ invert: any;
172
+ position: any;
173
+ rotation: any;
174
+ scale: any;
175
+ }>[];
124
176
  }>>;
125
177
  }, CrossLinkRestraint.Tag>;
@@ -7,6 +7,7 @@
7
7
  import { PluginBehavior } from '../../../behavior';
8
8
  import { ParamDefinition as PD } from '../../../../mol-util/param-definition';
9
9
  import { PluginContext } from '../../../context';
10
+ import { Clip } from '../../../../mol-util/clip';
10
11
  declare const StructureFocusRepresentationParams: (plugin: PluginContext) => {
11
12
  expandRadius: PD.Numeric;
12
13
  targetParams: PD.Group<PD.Normalize<{
@@ -24,6 +25,17 @@ declare const StructureFocusRepresentationParams: (plugin: PluginContext) => {
24
25
  material: PD.Group<PD.Normalize<{
25
26
  metalness: number;
26
27
  roughness: number;
28
+ bumpiness: number;
29
+ }>>;
30
+ clip: PD.Group<PD.Normalize<{
31
+ variant: Clip.Variant;
32
+ objects: PD.Normalize<{
33
+ type: any;
34
+ invert: any;
35
+ position: any;
36
+ rotation: any;
37
+ scale: any;
38
+ }>[];
27
39
  }>>;
28
40
  };
29
41
  declare type StructureFocusRepresentationProps = PD.ValuesFor<ReturnType<typeof StructureFocusRepresentationParams>>;
@@ -20,6 +20,7 @@ var size_1 = require("../../../../mol-theme/size");
20
20
  var param_definition_1 = require("../../../../mol-util/param-definition");
21
21
  var commands_1 = require("../../../commands");
22
22
  var material_1 = require("../../../../mol-util/material");
23
+ var clip_1 = require("../../../../mol-util/clip");
23
24
  var StructureFocusRepresentationParams = function (plugin) {
24
25
  var reprParams = transforms_1.StateTransforms.Representation.StructureRepresentation3D.definition.params(void 0, plugin);
25
26
  return {
@@ -44,6 +45,7 @@ var StructureFocusRepresentationParams = function (plugin) {
44
45
  excludeTargetFromSurroundings: param_definition_1.ParamDefinition.Boolean(false, { label: 'Exclude Target', description: 'Exclude the focus "target" from the surroudings component.' }),
45
46
  ignoreHydrogens: param_definition_1.ParamDefinition.Boolean(false),
46
47
  material: material_1.Material.getParam(),
48
+ clip: param_definition_1.ParamDefinition.Group(clip_1.Clip.Params),
47
49
  };
48
50
  };
49
51
  var FocusComponents = ['target', 'surroundings', 'interactions'];
@@ -71,7 +73,7 @@ var StructureFocusRepresentationBehavior = /** @class */ (function (_super) {
71
73
  StructureFocusRepresentationBehavior.prototype.getReprParams = function (reprParams) {
72
74
  return (0, tslib_1.__assign)((0, tslib_1.__assign)({}, this.params.targetParams), { type: {
73
75
  name: reprParams.type.name,
74
- params: (0, tslib_1.__assign)((0, tslib_1.__assign)({}, reprParams.type.params), { ignoreHydrogens: this.params.ignoreHydrogens, material: this.params.material })
76
+ params: (0, tslib_1.__assign)((0, tslib_1.__assign)({}, reprParams.type.params), { ignoreHydrogens: this.params.ignoreHydrogens, material: this.params.material, clip: this.params.clip })
75
77
  } });
76
78
  };
77
79
  StructureFocusRepresentationBehavior.prototype.ensureShape = function (cell) {
@@ -232,6 +232,7 @@ export declare const PluginCommands: {
232
232
  outline: import("../mol-util/param-definition").ParamDefinition.NamedParams<import("../mol-util/param-definition").ParamDefinition.Normalize<unknown>, "off"> | import("../mol-util/param-definition").ParamDefinition.NamedParams<import("../mol-util/param-definition").ParamDefinition.Normalize<{
233
233
  scale: any;
234
234
  threshold: any;
235
+ color: any;
235
236
  }>, "on">;
236
237
  antialiasing: import("../mol-util/param-definition").ParamDefinition.NamedParams<import("../mol-util/param-definition").ParamDefinition.Normalize<unknown>, "off"> | import("../mol-util/param-definition").ParamDefinition.NamedParams<import("../mol-util/param-definition").ParamDefinition.Normalize<{
237
238
  edgeThreshold: any;
@@ -271,10 +272,6 @@ export declare const PluginCommands: {
271
272
  }>[];
272
273
  ambientColor: import("../mol-util/color").Color;
273
274
  ambientIntensity: number;
274
- clip: import("../mol-util/param-definition").ParamDefinition.Normalize<{
275
- variant: any;
276
- objects: any;
277
- }>;
278
275
  }>>;
279
276
  trackball: import("../mol-util/param-definition").ParamDefinition.Group<import("../mol-util/param-definition").ParamDefinition.Normalize<{
280
277
  noScroll: boolean;
@@ -329,8 +326,11 @@ export declare const PluginCommands: {
329
326
  flipSided: any;
330
327
  flatShaded: any;
331
328
  xrayShaded: any;
329
+ bumpFrequency: any;
330
+ bumpAmplitude: any;
332
331
  quality: any;
333
332
  material: any;
333
+ clip: any;
334
334
  }>, "on">;
335
335
  }>>;
336
336
  }>> | ((old: Canvas3DProps) => Partial<Canvas3DProps> | void);
@@ -16,6 +16,7 @@ export declare class PluginConfigItem<T = any> {
16
16
  constructor(key: string, defaultValue?: T | undefined);
17
17
  }
18
18
  declare function item<T>(key: string, defaultValue?: T): PluginConfigItem<T>;
19
+ export declare function preferWebGl1(): boolean;
19
20
  export declare const PluginConfig: {
20
21
  item: typeof item;
21
22
  General: {
@@ -58,6 +59,7 @@ export declare const PluginConfig: {
58
59
  highSymmetryUnitCount: number;
59
60
  fiberResidueCount: number;
60
61
  }>;
62
+ DefaultRepresentationPreset: PluginConfigItem<string>;
61
63
  DefaultRepresentationPresetParams: PluginConfigItem<StructureRepresentationPresetProvider.CommonParams>;
62
64
  };
63
65
  };
@@ -6,7 +6,7 @@
6
6
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.PluginConfigManager = exports.PluginConfig = exports.PluginConfigItem = void 0;
9
+ exports.PluginConfigManager = exports.PluginConfig = exports.preferWebGl1 = exports.PluginConfigItem = void 0;
10
10
  var structure_1 = require("../mol-model/structure");
11
11
  var PluginConfigItem = /** @class */ (function () {
12
12
  function PluginConfigItem(key, defaultValue) {
@@ -22,9 +22,14 @@ function item(key, defaultValue) { return new PluginConfigItem(key, defaultValue
22
22
  function preferWebGl1() {
23
23
  if (typeof navigator === 'undefined' || typeof window === 'undefined')
24
24
  return false;
25
- // WebGL2 isn't working in MacOS 12.0.1 Safari 15.1 (but is working in Safari tech preview)
25
+ // WebGL2 isn't working in MacOS 12.0.1 Safari 15.1, 15.2. It is working in Safari 15.4 tech preview, so disabling all versions before that.
26
26
  // prefer webgl 1 based on the userAgent substring
27
- if (navigator.userAgent.indexOf('Version/15.1 Safari') > 0) {
27
+ var unpportedSafariVersions = [
28
+ 'Version/15.1 Safari',
29
+ 'Version/15.2 Safari',
30
+ 'Version/15.3 Safari'
31
+ ];
32
+ if (unpportedSafariVersions.some(function (v) { return navigator.userAgent.indexOf(v) > 0; })) {
28
33
  return true;
29
34
  }
30
35
  // Check for iOS device which enabled WebGL2 recently but it doesn't seem
@@ -35,6 +40,7 @@ function preferWebGl1() {
35
40
  var isTouchScreen = navigator.maxTouchPoints >= 4; // true for iOS 13 (and hopefully beyond)
36
41
  return !window.MSStream && (isIOS || (isAppleDevice && isTouchScreen));
37
42
  }
43
+ exports.preferWebGl1 = preferWebGl1;
38
44
  exports.PluginConfig = {
39
45
  item: item,
40
46
  General: {
@@ -75,6 +81,7 @@ exports.PluginConfig = {
75
81
  },
76
82
  Structure: {
77
83
  SizeThresholds: item('structure.size-thresholds', structure_1.Structure.DefaultSizeThresholds),
84
+ DefaultRepresentationPreset: item('structure.default-representation-preset', 'auto'),
78
85
  DefaultRepresentationPresetParams: item('structure.default-representation-preset-params', {})
79
86
  }
80
87
  };
@@ -70,6 +70,7 @@ var DefaultPluginSpec = function () { return ({
70
70
  PluginSpec.Action(transforms_1.StateTransforms.Representation.UnwindStructureAssemblyRepresentation3D),
71
71
  PluginSpec.Action(transforms_1.StateTransforms.Representation.OverpaintStructureRepresentation3DFromScript),
72
72
  PluginSpec.Action(transforms_1.StateTransforms.Representation.TransparencyStructureRepresentation3DFromScript),
73
+ PluginSpec.Action(transforms_1.StateTransforms.Representation.ClippingStructureRepresentation3DFromScript),
73
74
  PluginSpec.Action(transforms_1.StateTransforms.Representation.SubstanceStructureRepresentation3DFromScript),
74
75
  PluginSpec.Action(volume_1.AssignColorVolume),
75
76
  PluginSpec.Action(transforms_1.StateTransforms.Volume.VolumeFromCcp4),