molstar 3.8.2 → 3.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +20 -20
- package/README.md +202 -202
- package/build/viewer/embedded.html +43 -43
- package/build/viewer/index.html +109 -106
- package/build/viewer/molstar.js +1 -1
- package/lib/apps/docking-viewer/index.html +36 -36
- package/lib/apps/viewer/app.d.ts +5 -2
- package/lib/apps/viewer/app.js +11 -7
- package/lib/apps/viewer/embedded.html +43 -43
- package/lib/apps/viewer/index.html +109 -106
- package/lib/cli/cif2bcif/converter.js +1 -1
- package/lib/commonjs/apps/viewer/app.d.ts +5 -2
- package/lib/commonjs/apps/viewer/app.js +12 -7
- package/lib/commonjs/cli/cif2bcif/converter.js +1 -1
- package/lib/commonjs/examples/alpha-orbitals/index.d.ts +1 -1
- package/lib/commonjs/examples/alpha-orbitals/index.js +4 -1
- package/lib/commonjs/examples/basic-wrapper/custom-theme.js +1 -1
- package/lib/commonjs/examples/proteopedia-wrapper/coloring.js +3 -3
- package/lib/commonjs/extensions/alpha-orbitals/density.d.ts +1 -1
- package/lib/commonjs/extensions/alpha-orbitals/density.js +6 -2
- package/lib/commonjs/extensions/alpha-orbitals/orbitals.d.ts +1 -1
- package/lib/commonjs/extensions/alpha-orbitals/orbitals.js +6 -3
- package/lib/commonjs/extensions/anvil/algorithm.js +1 -1
- package/lib/commonjs/extensions/cellpack/color/generate.js +1 -1
- package/lib/commonjs/extensions/cellpack/color/provided.js +1 -1
- package/lib/commonjs/extensions/cellpack/state.js +1 -1
- package/lib/commonjs/extensions/dnatco/confal-pyramids/color.js +1 -1
- package/lib/commonjs/extensions/g3d/model.js +1 -1
- package/lib/commonjs/extensions/geo-export/ui.js +1 -0
- package/lib/commonjs/extensions/model-archive/quality-assessment/color/plddt.js +1 -1
- package/lib/commonjs/extensions/model-archive/quality-assessment/color/qmean.js +1 -1
- package/lib/commonjs/extensions/mp4-export/ui.js +1 -0
- package/lib/commonjs/extensions/pdbe/structure-quality-report/color.js +1 -1
- package/lib/commonjs/extensions/rcsb/assembly-symmetry/color.js +4 -4
- package/lib/commonjs/extensions/rcsb/validation-report/color/density-fit.js +1 -1
- package/lib/commonjs/extensions/rcsb/validation-report/color/geometry-quality.js +2 -2
- package/lib/commonjs/extensions/rcsb/validation-report/color/random-coil-index.js +1 -1
- package/lib/commonjs/extensions/rcsb/validation-report/representation.js +2 -2
- package/lib/commonjs/mol-canvas3d/canvas3d.js +4 -0
- package/lib/commonjs/mol-canvas3d/controls/trackball.js +7 -7
- package/lib/commonjs/mol-canvas3d/helper/camera-helper.js +14 -14
- package/lib/commonjs/mol-canvas3d/helper/interaction-events.js +5 -5
- package/lib/commonjs/mol-canvas3d/passes/draw.js +34 -5
- package/lib/commonjs/mol-canvas3d/passes/fxaa.js +5 -0
- package/lib/commonjs/mol-canvas3d/passes/marking.js +5 -0
- package/lib/commonjs/mol-canvas3d/passes/multi-sample.js +9 -0
- package/lib/commonjs/mol-canvas3d/passes/pick.d.ts +18 -5
- package/lib/commonjs/mol-canvas3d/passes/pick.js +125 -24
- package/lib/commonjs/mol-canvas3d/passes/postprocessing.js +5 -0
- package/lib/commonjs/mol-canvas3d/passes/smaa.js +4 -0
- package/lib/commonjs/mol-canvas3d/passes/wboit.js +4 -0
- package/lib/commonjs/mol-data/db/column.js +5 -5
- package/lib/commonjs/mol-data/db/table.js +2 -2
- package/lib/commonjs/mol-data/util/array.d.ts +1 -1
- package/lib/commonjs/mol-geo/geometry/cylinders/cylinders.d.ts +1 -1
- package/lib/commonjs/mol-geo/geometry/lines/lines.d.ts +0 -1
- package/lib/commonjs/mol-geo/geometry/points/points.d.ts +1 -1
- package/lib/commonjs/mol-geo/geometry/texture-mesh/color-smoothing.js +13 -0
- package/lib/commonjs/mol-gl/compute/grid3d.d.ts +2 -2
- package/lib/commonjs/mol-gl/compute/grid3d.js +30 -8
- package/lib/commonjs/mol-gl/compute/histogram-pyramid/reduction.d.ts +1 -1
- package/lib/commonjs/mol-gl/compute/histogram-pyramid/reduction.js +6 -1
- package/lib/commonjs/mol-gl/compute/histogram-pyramid/sum.d.ts +1 -1
- package/lib/commonjs/mol-gl/compute/histogram-pyramid/sum.js +6 -1
- package/lib/commonjs/mol-gl/compute/marching-cubes/active-voxels.d.ts +1 -1
- package/lib/commonjs/mol-gl/compute/marching-cubes/active-voxels.js +6 -1
- package/lib/commonjs/mol-gl/compute/marching-cubes/isosurface.d.ts +1 -1
- package/lib/commonjs/mol-gl/compute/marching-cubes/isosurface.js +10 -10
- package/lib/commonjs/mol-gl/renderer.js +77 -32
- package/lib/commonjs/mol-gl/scene.js +2 -0
- package/lib/commonjs/mol-gl/shader/chunks/assign-color-varying.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/assign-color-varying.glsl.js +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/assign-material-color.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/assign-material-color.glsl.js +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/color-frag-params.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/color-frag-params.glsl.js +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/chunks/color-vert-params.glsl.js +1 -1
- package/lib/commonjs/mol-gl/shader/cylinders.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/cylinders.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/direct-volume.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/direct-volume.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/image.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/image.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/lines.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/lines.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/mesh.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/mesh.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/points.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/points.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/spheres.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/spheres.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader/text.frag.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader/text.frag.js +1 -1
- package/lib/commonjs/mol-gl/shader-code.d.ts +1 -1
- package/lib/commonjs/mol-gl/shader-code.js +41 -9
- package/lib/commonjs/mol-gl/webgl/compat.d.ts +34 -1
- package/lib/commonjs/mol-gl/webgl/compat.js +50 -2
- package/lib/commonjs/mol-gl/webgl/context.d.ts +2 -0
- package/lib/commonjs/mol-gl/webgl/context.js +3 -0
- package/lib/commonjs/mol-gl/webgl/extensions.d.ts +3 -2
- package/lib/commonjs/mol-gl/webgl/extensions.js +6 -1
- package/lib/commonjs/mol-gl/webgl/timer.d.ts +22 -0
- package/lib/commonjs/mol-gl/webgl/timer.js +169 -0
- package/lib/commonjs/mol-io/common/binary-cif/array-encoder.js +18 -18
- package/lib/commonjs/mol-io/common/binary-cif/decoder.js +16 -16
- package/lib/commonjs/mol-io/common/binary-cif/encoding.js +9 -9
- package/lib/commonjs/mol-io/reader/cif/binary/field.js +3 -3
- package/lib/commonjs/mol-io/reader/cif/data-model.js +14 -14
- package/lib/commonjs/mol-io/reader/cif/schema.js +1 -1
- package/lib/commonjs/mol-io/reader/cif/text/parser.js +23 -23
- package/lib/commonjs/mol-io/reader/common/text/column/fixed.js +1 -1
- package/lib/commonjs/mol-io/reader/common/text/column/token.js +1 -1
- package/lib/commonjs/mol-io/reader/common/text/number-parser.js +6 -6
- package/lib/commonjs/mol-io/reader/csv/parser.js +8 -8
- package/lib/commonjs/mol-io/writer/cif/encoder/binary.js +10 -10
- package/lib/commonjs/mol-io/writer/cif/encoder/text.js +7 -7
- package/lib/commonjs/mol-io/writer/cif/encoder.js +8 -8
- package/lib/commonjs/mol-io/writer/mol2/encoder.js +4 -4
- package/lib/commonjs/mol-math/geometry/gaussian-density/gpu.js +13 -2
- package/lib/commonjs/mol-model/sequence/alignment/sequence.js +3 -3
- package/lib/commonjs/mol-model/sequence/sequence.js +9 -9
- package/lib/commonjs/mol-model/structure/export/categories/atom_site_operator_mapping.js +3 -3
- package/lib/commonjs/mol-model/structure/export/categories/secondary-structure.js +2 -2
- package/lib/commonjs/mol-model/structure/export/categories/utils.js +1 -1
- package/lib/commonjs/mol-model/structure/model/model.js +2 -2
- package/lib/commonjs/mol-model/structure/model/properties/custom/indexed.js +6 -6
- package/lib/commonjs/mol-model/structure/model/properties/utils/atomic-ranges.js +1 -1
- package/lib/commonjs/mol-model/structure/model/types.js +116 -116
- package/lib/commonjs/mol-model/structure/query/context.js +1 -1
- package/lib/commonjs/mol-model/structure/query/queries/generators.js +5 -5
- package/lib/commonjs/mol-model/structure/query/queries/internal.js +4 -4
- package/lib/commonjs/mol-model/structure/query/queries/modifiers.js +4 -4
- package/lib/commonjs/mol-model/structure/query/utils/structure-distance.d.ts +5 -54
- package/lib/commonjs/mol-model/structure/query/utils/structure-distance.js +9 -9
- package/lib/commonjs/mol-model/structure/structure/carbohydrates/constants.d.ts +3 -1
- package/lib/commonjs/mol-model/structure/structure/carbohydrates/constants.js +192 -108
- package/lib/commonjs/mol-model/structure/structure/element/loci.js +5 -5
- package/lib/commonjs/mol-model/structure/structure/element/stats.js +5 -5
- package/lib/commonjs/mol-model/structure/structure/properties.js +5 -5
- package/lib/commonjs/mol-model/structure/structure/structure.js +11 -11
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/inter-compute.js +5 -5
- package/lib/commonjs/mol-model/structure/structure/unit/bonds/intra-compute.js +4 -4
- package/lib/commonjs/mol-model/structure/structure/unit/bonds.js +2 -2
- package/lib/commonjs/mol-model/structure/structure/unit/resonance.js +1 -1
- package/lib/commonjs/mol-model/structure/structure/unit/rings/compute.js +6 -6
- package/lib/commonjs/mol-model/structure/structure/unit/rings.js +6 -6
- package/lib/commonjs/mol-model/structure/structure/unit.js +16 -16
- package/lib/commonjs/mol-model/structure/structure/util/superposition-sifts-mapping.js +1 -1
- package/lib/commonjs/mol-model/structure/util.js +4 -4
- package/lib/commonjs/mol-model-formats/structure/basic/atomic.js +2 -2
- package/lib/commonjs/mol-model-formats/structure/basic/parser.js +4 -4
- package/lib/commonjs/mol-model-formats/structure/basic/properties.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/basic/sort.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/basic/util.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/cif-core.js +6 -6
- package/lib/commonjs/mol-model-formats/structure/common/entity.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/cube.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/gro.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/mol.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/mol2.js +4 -4
- package/lib/commonjs/mol-model-formats/structure/prmtop.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/property/bonds/chem_comp.js +3 -3
- package/lib/commonjs/mol-model-formats/structure/property/bonds/index-pair.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/property/bonds/struct_conn.js +6 -6
- package/lib/commonjs/mol-model-formats/structure/property/secondary-structure.js +8 -8
- package/lib/commonjs/mol-model-formats/structure/psf.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/top.js +1 -1
- package/lib/commonjs/mol-model-formats/structure/xyz.js +1 -1
- package/lib/commonjs/mol-model-props/computed/accessible-surface-area/shrake-rupley/radii.js +2 -2
- package/lib/commonjs/mol-model-props/computed/accessible-surface-area/shrake-rupley.js +3 -3
- package/lib/commonjs/mol-model-props/computed/accessible-surface-area.js +2 -2
- package/lib/commonjs/mol-model-props/computed/chemistry/functional-group.js +31 -31
- package/lib/commonjs/mol-model-props/computed/chemistry/geometry.js +22 -22
- package/lib/commonjs/mol-model-props/computed/chemistry/valence-model.js +32 -32
- package/lib/commonjs/mol-model-props/computed/interactions/charged.js +39 -39
- package/lib/commonjs/mol-model-props/computed/interactions/common.js +34 -34
- package/lib/commonjs/mol-model-props/computed/interactions/contacts-builder.js +1 -1
- package/lib/commonjs/mol-model-props/computed/interactions/contacts.js +1 -1
- package/lib/commonjs/mol-model-props/computed/interactions/halogen-bonds.js +12 -12
- package/lib/commonjs/mol-model-props/computed/interactions/hydrogen-bonds.js +32 -32
- package/lib/commonjs/mol-model-props/computed/interactions/hydrophobic.js +9 -9
- package/lib/commonjs/mol-model-props/computed/interactions/metal.js +26 -26
- package/lib/commonjs/mol-model-props/computed/interactions/refine.js +20 -20
- package/lib/commonjs/mol-model-props/computed/representations/interactions-inter-unit-cylinder.js +2 -2
- package/lib/commonjs/mol-model-props/computed/representations/interactions-intra-unit-cylinder.js +2 -2
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/bends.js +1 -1
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/bridges.js +12 -12
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/helices.js +6 -6
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/ladders.js +3 -3
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/sheets.js +11 -11
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp/turns.js +3 -3
- package/lib/commonjs/mol-model-props/computed/secondary-structure/dssp.js +30 -30
- package/lib/commonjs/mol-model-props/computed/themes/accessible-surface-area.js +1 -1
- package/lib/commonjs/mol-model-props/computed/themes/interaction-type.js +10 -10
- package/lib/commonjs/mol-model-props/integrative/cross-link-restraint/color.js +1 -1
- package/lib/commonjs/mol-model-props/integrative/cross-link-restraint/format.js +3 -3
- package/lib/commonjs/mol-model-props/sequence/sifts-mapping.js +1 -1
- package/lib/commonjs/mol-model-props/sequence/themes/sifts-mapping.js +1 -1
- package/lib/commonjs/mol-plugin/animation-loop.d.ts +2 -1
- package/lib/commonjs/mol-plugin/animation-loop.js +18 -5
- package/lib/commonjs/mol-plugin/behavior/dynamic/camera.js +12 -12
- package/lib/commonjs/mol-plugin/behavior/dynamic/representation.js +7 -7
- package/lib/commonjs/mol-plugin/behavior/dynamic/volume-streaming/model.d.ts +2 -3
- package/lib/commonjs/mol-plugin/config.d.ts +3 -0
- package/lib/commonjs/mol-plugin/config.js +3 -1
- package/lib/commonjs/mol-plugin/context.d.ts +2 -2
- package/lib/commonjs/mol-plugin/context.js +3 -0
- package/lib/commonjs/mol-plugin/state.d.ts +1 -14
- package/lib/commonjs/mol-plugin-state/formats/volume.d.ts +12 -11
- package/lib/commonjs/mol-plugin-state/formats/volume.js +20 -13
- package/lib/commonjs/mol-plugin-state/helpers/structure-selection-query.js +5 -5
- package/lib/commonjs/mol-plugin-state/transforms/representation.js +2 -2
- package/lib/commonjs/mol-plugin-ui/controls/parameters.d.ts +1 -1
- package/lib/commonjs/mol-plugin-ui/controls.js +1 -1
- package/lib/commonjs/mol-plugin-ui/sequence/polymer.js +1 -1
- package/lib/commonjs/mol-plugin-ui/sequence/sequence.js +1 -1
- package/lib/commonjs/mol-plugin-ui/state/snapshots.js +1 -0
- package/lib/commonjs/mol-plugin-ui/structure/focus.js +1 -1
- package/lib/commonjs/mol-plugin-ui/viewport/screenshot.js +1 -0
- package/lib/commonjs/mol-plugin-ui/viewport.d.ts +2 -2
- package/lib/commonjs/mol-repr/shape/representation.d.ts +1 -1
- package/lib/commonjs/mol-repr/shape/representation.js +2 -1
- package/lib/commonjs/mol-repr/structure/complex-visual.d.ts +1 -1
- package/lib/commonjs/mol-repr/structure/complex-visual.js +2 -1
- package/lib/commonjs/mol-repr/structure/units-visual.d.ts +1 -1
- package/lib/commonjs/mol-repr/structure/units-visual.js +2 -1
- package/lib/commonjs/mol-repr/structure/visual/bond-inter-unit-cylinder.js +10 -10
- package/lib/commonjs/mol-repr/structure/visual/bond-inter-unit-line.js +10 -10
- package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-cylinder.js +12 -15
- package/lib/commonjs/mol-repr/structure/visual/bond-intra-unit-line.js +12 -15
- package/lib/commonjs/mol-repr/structure/visual/carbohydrate-symbol-mesh.js +16 -16
- package/lib/commonjs/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.js +1 -1
- package/lib/commonjs/mol-repr/structure/visual/gaussian-surface-mesh.js +9 -0
- package/lib/commonjs/mol-repr/structure/visual/orientation-ellipsoid-mesh.js +4 -4
- package/lib/commonjs/mol-repr/structure/visual/polymer-direction-wedge.js +1 -1
- package/lib/commonjs/mol-repr/structure/visual/polymer-trace-mesh.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/util/bond.js +2 -2
- package/lib/commonjs/mol-repr/structure/visual/util/common.js +3 -3
- package/lib/commonjs/mol-repr/structure/visual/util/link.js +30 -30
- package/lib/commonjs/mol-repr/structure/visual/util/polymer/backbone.js +6 -6
- package/lib/commonjs/mol-repr/structure/visual/util/polymer/gap-iterator.js +3 -3
- package/lib/commonjs/mol-repr/structure/visual/util/polymer/trace-iterator.js +20 -20
- package/lib/commonjs/mol-repr/structure/visual/util/polymer.js +6 -6
- package/lib/commonjs/mol-repr/volume/representation.d.ts +1 -1
- package/lib/commonjs/mol-repr/volume/representation.js +2 -1
- package/lib/commonjs/mol-script/language/builder.d.ts +1 -0
- package/lib/commonjs/mol-script/language/symbol-table/core.d.ts +2 -2
- package/lib/commonjs/mol-script/runtime/query/table.js +13 -13
- package/lib/commonjs/mol-state/object.d.ts +3 -3
- package/lib/commonjs/mol-task/util/user-timing.js +1 -1
- package/lib/commonjs/mol-theme/clipping.js +19 -19
- package/lib/commonjs/mol-theme/color/atom-id.js +1 -1
- package/lib/commonjs/mol-theme/color/carbohydrate-symbol.js +1 -1
- package/lib/commonjs/mol-theme/color/chain-id.js +4 -4
- package/lib/commonjs/mol-theme/color/element-index.js +1 -1
- package/lib/commonjs/mol-theme/color/element-symbol.js +1 -1
- package/lib/commonjs/mol-theme/color/entity-id.js +4 -4
- package/lib/commonjs/mol-theme/color/entity-source.js +5 -4
- package/lib/commonjs/mol-theme/color/hydrophobicity.js +1 -1
- package/lib/commonjs/mol-theme/color/illustrative.js +1 -1
- package/lib/commonjs/mol-theme/color/model-index.js +1 -1
- package/lib/commonjs/mol-theme/color/molecule-type.js +8 -8
- package/lib/commonjs/mol-theme/color/occupancy.js +1 -1
- package/lib/commonjs/mol-theme/color/operator-hkl.js +1 -1
- package/lib/commonjs/mol-theme/color/operator-name.js +1 -1
- package/lib/commonjs/mol-theme/color/partial-charge.js +1 -1
- package/lib/commonjs/mol-theme/color/polymer-id.js +4 -4
- package/lib/commonjs/mol-theme/color/polymer-index.js +1 -1
- package/lib/commonjs/mol-theme/color/residue-name.js +1 -1
- package/lib/commonjs/mol-theme/color/secondary-structure.js +12 -12
- package/lib/commonjs/mol-theme/color/sequence-id.js +7 -7
- package/lib/commonjs/mol-theme/color/shape-group.js +1 -1
- package/lib/commonjs/mol-theme/color/uncertainty.js +1 -1
- package/lib/commonjs/mol-theme/color/uniform.js +1 -1
- package/lib/commonjs/mol-theme/color/unit-index.js +1 -1
- package/lib/commonjs/mol-theme/color/volume-value.js +1 -1
- package/lib/commonjs/mol-theme/label.js +3 -3
- package/lib/commonjs/mol-util/binding.js +4 -4
- package/lib/commonjs/mol-util/debug.d.ts +6 -1
- package/lib/commonjs/mol-util/debug.js +11 -1
- package/lib/commonjs/mol-util/input/input-observer.js +20 -20
- package/lib/commonjs/mol-util/string-builder.js +1 -1
- package/lib/commonjs/servers/model/preprocess/converter.js +1 -1
- package/lib/commonjs/servers/model/server/query.js +1 -1
- package/lib/commonjs/servers/model/utils/fetch-retry.js +3 -2
- package/lib/commonjs/servers/volume/server/algebra/coordinate.js +6 -6
- package/lib/commonjs/servers/volume/server/query/encode.js +1 -1
- package/lib/examples/alpha-orbitals/index.d.ts +1 -1
- package/lib/examples/alpha-orbitals/index.html +72 -61
- package/lib/examples/alpha-orbitals/index.js +4 -1
- package/lib/examples/basic-wrapper/custom-theme.js +1 -1
- package/lib/examples/basic-wrapper/index.html +137 -137
- package/lib/examples/lighting/index.html +88 -88
- package/lib/examples/proteopedia-wrapper/coloring.js +3 -3
- package/lib/examples/proteopedia-wrapper/index.html +236 -236
- package/lib/extensions/alpha-orbitals/density.d.ts +1 -1
- package/lib/extensions/alpha-orbitals/density.js +6 -2
- package/lib/extensions/alpha-orbitals/orbitals.d.ts +1 -1
- package/lib/extensions/alpha-orbitals/orbitals.js +6 -3
- package/lib/extensions/anvil/algorithm.js +1 -1
- package/lib/extensions/cellpack/color/generate.js +1 -1
- package/lib/extensions/cellpack/color/provided.js +1 -1
- package/lib/extensions/cellpack/state.js +1 -1
- package/lib/extensions/dnatco/confal-pyramids/color.js +1 -1
- package/lib/extensions/g3d/model.js +1 -1
- package/lib/extensions/geo-export/ui.js +1 -0
- package/lib/extensions/model-archive/quality-assessment/color/plddt.js +1 -1
- package/lib/extensions/model-archive/quality-assessment/color/qmean.js +1 -1
- package/lib/extensions/mp4-export/ui.js +1 -0
- package/lib/extensions/pdbe/structure-quality-report/color.js +1 -1
- package/lib/extensions/rcsb/assembly-symmetry/color.js +4 -4
- package/lib/extensions/rcsb/validation-report/color/density-fit.js +1 -1
- package/lib/extensions/rcsb/validation-report/color/geometry-quality.js +2 -2
- package/lib/extensions/rcsb/validation-report/color/random-coil-index.js +1 -1
- package/lib/extensions/rcsb/validation-report/representation.js +2 -2
- package/lib/mol-canvas3d/canvas3d.js +5 -1
- package/lib/mol-canvas3d/controls/trackball.js +7 -7
- package/lib/mol-canvas3d/helper/camera-helper.js +14 -14
- package/lib/mol-canvas3d/helper/interaction-events.js +5 -5
- package/lib/mol-canvas3d/passes/draw.js +34 -5
- package/lib/mol-canvas3d/passes/fxaa.js +5 -0
- package/lib/mol-canvas3d/passes/marking.js +5 -0
- package/lib/mol-canvas3d/passes/multi-sample.js +9 -0
- package/lib/mol-canvas3d/passes/pick.d.ts +18 -5
- package/lib/mol-canvas3d/passes/pick.js +125 -24
- package/lib/mol-canvas3d/passes/postprocessing.js +5 -0
- package/lib/mol-canvas3d/passes/smaa.js +5 -1
- package/lib/mol-canvas3d/passes/wboit.js +5 -1
- package/lib/mol-data/db/column.js +5 -5
- package/lib/mol-data/db/table.js +2 -2
- package/lib/mol-data/util/array.d.ts +1 -1
- package/lib/mol-geo/geometry/cylinders/cylinders.d.ts +1 -1
- package/lib/mol-geo/geometry/lines/lines.d.ts +0 -1
- package/lib/mol-geo/geometry/points/points.d.ts +1 -1
- package/lib/mol-geo/geometry/texture-mesh/color-smoothing.js +13 -0
- package/lib/mol-gl/compute/grid3d.d.ts +2 -2
- package/lib/mol-gl/compute/grid3d.js +30 -8
- package/lib/mol-gl/compute/histogram-pyramid/reduction.d.ts +1 -1
- package/lib/mol-gl/compute/histogram-pyramid/reduction.js +6 -1
- package/lib/mol-gl/compute/histogram-pyramid/sum.d.ts +1 -1
- package/lib/mol-gl/compute/histogram-pyramid/sum.js +6 -1
- package/lib/mol-gl/compute/marching-cubes/active-voxels.d.ts +1 -1
- package/lib/mol-gl/compute/marching-cubes/active-voxels.js +6 -1
- package/lib/mol-gl/compute/marching-cubes/isosurface.d.ts +1 -1
- package/lib/mol-gl/compute/marching-cubes/isosurface.js +10 -10
- package/lib/mol-gl/renderer.js +77 -32
- package/lib/mol-gl/scene.js +2 -0
- package/lib/mol-gl/shader/chunks/assign-color-varying.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/assign-color-varying.glsl.js +1 -1
- package/lib/mol-gl/shader/chunks/assign-material-color.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/assign-material-color.glsl.js +1 -1
- package/lib/mol-gl/shader/chunks/color-frag-params.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/color-frag-params.glsl.js +1 -1
- package/lib/mol-gl/shader/chunks/color-vert-params.glsl.d.ts +1 -1
- package/lib/mol-gl/shader/chunks/color-vert-params.glsl.js +1 -1
- package/lib/mol-gl/shader/cylinders.frag.d.ts +1 -1
- package/lib/mol-gl/shader/cylinders.frag.js +1 -1
- package/lib/mol-gl/shader/direct-volume.frag.d.ts +1 -1
- package/lib/mol-gl/shader/direct-volume.frag.js +1 -1
- package/lib/mol-gl/shader/image.frag.d.ts +1 -1
- package/lib/mol-gl/shader/image.frag.js +1 -1
- package/lib/mol-gl/shader/lines.frag.d.ts +1 -1
- package/lib/mol-gl/shader/lines.frag.js +1 -1
- package/lib/mol-gl/shader/mesh.frag.d.ts +1 -1
- package/lib/mol-gl/shader/mesh.frag.js +1 -1
- package/lib/mol-gl/shader/points.frag.d.ts +1 -1
- package/lib/mol-gl/shader/points.frag.js +1 -1
- package/lib/mol-gl/shader/spheres.frag.d.ts +1 -1
- package/lib/mol-gl/shader/spheres.frag.js +1 -1
- package/lib/mol-gl/shader/text.frag.d.ts +1 -1
- package/lib/mol-gl/shader/text.frag.js +1 -1
- package/lib/mol-gl/shader-code.d.ts +1 -1
- package/lib/mol-gl/shader-code.js +41 -9
- package/lib/mol-gl/webgl/compat.d.ts +34 -1
- package/lib/mol-gl/webgl/compat.js +48 -1
- package/lib/mol-gl/webgl/context.d.ts +2 -0
- package/lib/mol-gl/webgl/context.js +3 -0
- package/lib/mol-gl/webgl/extensions.d.ts +3 -2
- package/lib/mol-gl/webgl/extensions.js +7 -2
- package/lib/mol-gl/webgl/timer.d.ts +22 -0
- package/lib/mol-gl/webgl/timer.js +164 -0
- package/lib/mol-io/common/binary-cif/array-encoder.js +18 -18
- package/lib/mol-io/common/binary-cif/decoder.js +16 -16
- package/lib/mol-io/common/binary-cif/encoding.js +9 -9
- package/lib/mol-io/reader/cif/binary/field.js +3 -3
- package/lib/mol-io/reader/cif/data-model.js +14 -14
- package/lib/mol-io/reader/cif/schema.js +1 -1
- package/lib/mol-io/reader/cif/text/parser.js +23 -23
- package/lib/mol-io/reader/common/text/column/fixed.js +1 -1
- package/lib/mol-io/reader/common/text/column/token.js +1 -1
- package/lib/mol-io/reader/common/text/number-parser.js +6 -6
- package/lib/mol-io/reader/csv/parser.js +8 -8
- package/lib/mol-io/writer/cif/encoder/binary.js +10 -10
- package/lib/mol-io/writer/cif/encoder/text.js +7 -7
- package/lib/mol-io/writer/cif/encoder.js +8 -8
- package/lib/mol-io/writer/mol2/encoder.js +4 -4
- package/lib/mol-math/geometry/gaussian-density/gpu.js +13 -2
- package/lib/mol-model/sequence/alignment/sequence.js +3 -3
- package/lib/mol-model/sequence/sequence.js +9 -9
- package/lib/mol-model/structure/export/categories/atom_site_operator_mapping.js +3 -3
- package/lib/mol-model/structure/export/categories/secondary-structure.js +2 -2
- package/lib/mol-model/structure/export/categories/utils.js +1 -1
- package/lib/mol-model/structure/model/model.js +2 -2
- package/lib/mol-model/structure/model/properties/custom/indexed.js +6 -6
- package/lib/mol-model/structure/model/properties/utils/atomic-ranges.js +1 -1
- package/lib/mol-model/structure/model/types.js +116 -116
- package/lib/mol-model/structure/query/context.js +1 -1
- package/lib/mol-model/structure/query/queries/generators.js +5 -5
- package/lib/mol-model/structure/query/queries/internal.js +4 -4
- package/lib/mol-model/structure/query/queries/modifiers.js +4 -4
- package/lib/mol-model/structure/query/utils/structure-distance.d.ts +5 -54
- package/lib/mol-model/structure/query/utils/structure-distance.js +9 -9
- package/lib/mol-model/structure/structure/carbohydrates/constants.d.ts +3 -1
- package/lib/mol-model/structure/structure/carbohydrates/constants.js +190 -107
- package/lib/mol-model/structure/structure/element/loci.js +5 -5
- package/lib/mol-model/structure/structure/element/stats.js +5 -5
- package/lib/mol-model/structure/structure/properties.js +5 -5
- package/lib/mol-model/structure/structure/structure.js +11 -11
- package/lib/mol-model/structure/structure/unit/bonds/inter-compute.js +5 -5
- package/lib/mol-model/structure/structure/unit/bonds/intra-compute.js +4 -4
- package/lib/mol-model/structure/structure/unit/bonds.js +2 -2
- package/lib/mol-model/structure/structure/unit/resonance.js +1 -1
- package/lib/mol-model/structure/structure/unit/rings/compute.js +6 -6
- package/lib/mol-model/structure/structure/unit/rings.js +6 -6
- package/lib/mol-model/structure/structure/unit.js +16 -16
- package/lib/mol-model/structure/structure/util/superposition-sifts-mapping.js +1 -1
- package/lib/mol-model/structure/util.js +4 -4
- package/lib/mol-model-formats/structure/basic/atomic.js +2 -2
- package/lib/mol-model-formats/structure/basic/parser.js +4 -4
- package/lib/mol-model-formats/structure/basic/properties.js +1 -1
- package/lib/mol-model-formats/structure/basic/sort.js +1 -1
- package/lib/mol-model-formats/structure/basic/util.js +1 -1
- package/lib/mol-model-formats/structure/cif-core.js +6 -6
- package/lib/mol-model-formats/structure/common/entity.js +1 -1
- package/lib/mol-model-formats/structure/cube.js +1 -1
- package/lib/mol-model-formats/structure/gro.js +1 -1
- package/lib/mol-model-formats/structure/mol.js +1 -1
- package/lib/mol-model-formats/structure/mol2.js +4 -4
- package/lib/mol-model-formats/structure/prmtop.js +1 -1
- package/lib/mol-model-formats/structure/property/bonds/chem_comp.js +3 -3
- package/lib/mol-model-formats/structure/property/bonds/index-pair.js +1 -1
- package/lib/mol-model-formats/structure/property/bonds/struct_conn.js +6 -6
- package/lib/mol-model-formats/structure/property/secondary-structure.js +8 -8
- package/lib/mol-model-formats/structure/psf.js +1 -1
- package/lib/mol-model-formats/structure/top.js +1 -1
- package/lib/mol-model-formats/structure/xyz.js +1 -1
- package/lib/mol-model-props/computed/accessible-surface-area/shrake-rupley/radii.js +2 -2
- package/lib/mol-model-props/computed/accessible-surface-area/shrake-rupley.js +3 -3
- package/lib/mol-model-props/computed/accessible-surface-area.js +2 -2
- package/lib/mol-model-props/computed/chemistry/functional-group.js +31 -31
- package/lib/mol-model-props/computed/chemistry/geometry.js +22 -22
- package/lib/mol-model-props/computed/chemistry/valence-model.js +32 -32
- package/lib/mol-model-props/computed/interactions/charged.js +39 -39
- package/lib/mol-model-props/computed/interactions/common.js +34 -34
- package/lib/mol-model-props/computed/interactions/contacts-builder.js +1 -1
- package/lib/mol-model-props/computed/interactions/contacts.js +1 -1
- package/lib/mol-model-props/computed/interactions/halogen-bonds.js +12 -12
- package/lib/mol-model-props/computed/interactions/hydrogen-bonds.js +32 -32
- package/lib/mol-model-props/computed/interactions/hydrophobic.js +9 -9
- package/lib/mol-model-props/computed/interactions/metal.js +26 -26
- package/lib/mol-model-props/computed/interactions/refine.js +20 -20
- package/lib/mol-model-props/computed/representations/interactions-inter-unit-cylinder.js +2 -2
- package/lib/mol-model-props/computed/representations/interactions-intra-unit-cylinder.js +2 -2
- package/lib/mol-model-props/computed/secondary-structure/dssp/bends.js +1 -1
- package/lib/mol-model-props/computed/secondary-structure/dssp/bridges.js +12 -12
- package/lib/mol-model-props/computed/secondary-structure/dssp/helices.js +6 -6
- package/lib/mol-model-props/computed/secondary-structure/dssp/ladders.js +3 -3
- package/lib/mol-model-props/computed/secondary-structure/dssp/sheets.js +11 -11
- package/lib/mol-model-props/computed/secondary-structure/dssp/turns.js +3 -3
- package/lib/mol-model-props/computed/secondary-structure/dssp.js +30 -30
- package/lib/mol-model-props/computed/themes/accessible-surface-area.js +1 -1
- package/lib/mol-model-props/computed/themes/interaction-type.js +10 -10
- package/lib/mol-model-props/integrative/cross-link-restraint/color.js +1 -1
- package/lib/mol-model-props/integrative/cross-link-restraint/format.js +3 -3
- package/lib/mol-model-props/sequence/sifts-mapping.js +1 -1
- package/lib/mol-model-props/sequence/themes/sifts-mapping.js +1 -1
- package/lib/mol-plugin/animation-loop.d.ts +2 -1
- package/lib/mol-plugin/animation-loop.js +18 -5
- package/lib/mol-plugin/behavior/dynamic/camera.js +12 -12
- package/lib/mol-plugin/behavior/dynamic/representation.js +7 -7
- package/lib/mol-plugin/behavior/dynamic/volume-streaming/model.d.ts +2 -3
- package/lib/mol-plugin/config.d.ts +3 -0
- package/lib/mol-plugin/config.js +3 -1
- package/lib/mol-plugin/context.d.ts +2 -2
- package/lib/mol-plugin/context.js +3 -0
- package/lib/mol-plugin/state.d.ts +1 -14
- package/lib/mol-plugin/version.js +2 -2
- package/lib/mol-plugin-state/formats/volume.d.ts +12 -11
- package/lib/mol-plugin-state/formats/volume.js +20 -13
- package/lib/mol-plugin-state/helpers/structure-selection-query.js +5 -5
- package/lib/mol-plugin-state/transforms/representation.js +2 -2
- package/lib/mol-plugin-ui/controls/parameters.d.ts +1 -1
- package/lib/mol-plugin-ui/controls.js +1 -1
- package/lib/mol-plugin-ui/sequence/polymer.js +1 -1
- package/lib/mol-plugin-ui/sequence/sequence.js +1 -1
- package/lib/mol-plugin-ui/skin/base/base.scss +32 -32
- package/lib/mol-plugin-ui/skin/base/components/controls-base.scss +333 -333
- package/lib/mol-plugin-ui/skin/base/components/controls.scss +418 -418
- package/lib/mol-plugin-ui/skin/base/components/help.scss +27 -27
- package/lib/mol-plugin-ui/skin/base/components/line-graph.scss +67 -67
- package/lib/mol-plugin-ui/skin/base/components/log.scss +100 -100
- package/lib/mol-plugin-ui/skin/base/components/misc.scss +643 -643
- package/lib/mol-plugin-ui/skin/base/components/sequence.scss +125 -125
- package/lib/mol-plugin-ui/skin/base/components/slider.scss +165 -165
- package/lib/mol-plugin-ui/skin/base/components/tasks.scss +99 -99
- package/lib/mol-plugin-ui/skin/base/components/toast.scss +83 -83
- package/lib/mol-plugin-ui/skin/base/components/transformer.scss +163 -163
- package/lib/mol-plugin-ui/skin/base/components/viewport.scss +128 -128
- package/lib/mol-plugin-ui/skin/base/layout/common.scss +71 -71
- package/lib/mol-plugin-ui/skin/base/layout/controls-landscape.scss +89 -89
- package/lib/mol-plugin-ui/skin/base/layout/controls-outside.scss +98 -98
- package/lib/mol-plugin-ui/skin/base/layout/controls-portrait.scss +108 -108
- package/lib/mol-plugin-ui/skin/base/layout.scss +40 -40
- package/lib/mol-plugin-ui/skin/base/logo.scss +12 -12
- package/lib/mol-plugin-ui/skin/base/normalize.scss +209 -209
- package/lib/mol-plugin-ui/skin/base/ui.scss +40 -40
- package/lib/mol-plugin-ui/skin/base/variables.scss +85 -85
- package/lib/mol-plugin-ui/skin/blue.scss +1 -1
- package/lib/mol-plugin-ui/skin/colors/blue.scss +23 -23
- package/lib/mol-plugin-ui/skin/colors/dark.scss +23 -23
- package/lib/mol-plugin-ui/skin/colors/light.scss +29 -29
- package/lib/mol-plugin-ui/skin/dark.scss +1 -1
- package/lib/mol-plugin-ui/skin/light.scss +1 -1
- package/lib/mol-plugin-ui/state/snapshots.js +1 -0
- package/lib/mol-plugin-ui/structure/focus.js +1 -1
- package/lib/mol-plugin-ui/viewport/screenshot.js +1 -0
- package/lib/mol-plugin-ui/viewport.d.ts +2 -2
- package/lib/mol-repr/shape/representation.d.ts +1 -1
- package/lib/mol-repr/shape/representation.js +2 -1
- package/lib/mol-repr/structure/complex-visual.d.ts +1 -1
- package/lib/mol-repr/structure/complex-visual.js +2 -1
- package/lib/mol-repr/structure/units-visual.d.ts +1 -1
- package/lib/mol-repr/structure/units-visual.js +2 -1
- package/lib/mol-repr/structure/visual/bond-inter-unit-cylinder.js +10 -10
- package/lib/mol-repr/structure/visual/bond-inter-unit-line.js +10 -10
- package/lib/mol-repr/structure/visual/bond-intra-unit-cylinder.js +12 -15
- package/lib/mol-repr/structure/visual/bond-intra-unit-line.js +12 -15
- package/lib/mol-repr/structure/visual/carbohydrate-symbol-mesh.js +16 -16
- package/lib/mol-repr/structure/visual/carbohydrate-terminal-link-cylinder.js +1 -1
- package/lib/mol-repr/structure/visual/gaussian-surface-mesh.js +9 -0
- package/lib/mol-repr/structure/visual/orientation-ellipsoid-mesh.js +4 -4
- package/lib/mol-repr/structure/visual/polymer-direction-wedge.js +1 -1
- package/lib/mol-repr/structure/visual/polymer-trace-mesh.js +2 -2
- package/lib/mol-repr/structure/visual/util/bond.js +2 -2
- package/lib/mol-repr/structure/visual/util/common.js +3 -3
- package/lib/mol-repr/structure/visual/util/link.js +30 -30
- package/lib/mol-repr/structure/visual/util/polymer/backbone.js +6 -6
- package/lib/mol-repr/structure/visual/util/polymer/gap-iterator.js +3 -3
- package/lib/mol-repr/structure/visual/util/polymer/trace-iterator.js +20 -20
- package/lib/mol-repr/structure/visual/util/polymer.js +6 -6
- package/lib/mol-repr/volume/representation.d.ts +1 -1
- package/lib/mol-repr/volume/representation.js +2 -1
- package/lib/mol-script/language/builder.d.ts +1 -0
- package/lib/mol-script/language/symbol-table/core.d.ts +2 -2
- package/lib/mol-script/runtime/query/table.js +13 -13
- package/lib/mol-state/object.d.ts +3 -3
- package/lib/mol-task/util/user-timing.js +1 -1
- package/lib/mol-theme/clipping.js +19 -19
- package/lib/mol-theme/color/atom-id.js +1 -1
- package/lib/mol-theme/color/carbohydrate-symbol.js +1 -1
- package/lib/mol-theme/color/chain-id.js +4 -4
- package/lib/mol-theme/color/element-index.js +1 -1
- package/lib/mol-theme/color/element-symbol.js +1 -1
- package/lib/mol-theme/color/entity-id.js +4 -4
- package/lib/mol-theme/color/entity-source.js +5 -4
- package/lib/mol-theme/color/hydrophobicity.js +1 -1
- package/lib/mol-theme/color/illustrative.js +1 -1
- package/lib/mol-theme/color/model-index.js +1 -1
- package/lib/mol-theme/color/molecule-type.js +8 -8
- package/lib/mol-theme/color/occupancy.js +1 -1
- package/lib/mol-theme/color/operator-hkl.js +1 -1
- package/lib/mol-theme/color/operator-name.js +1 -1
- package/lib/mol-theme/color/partial-charge.js +1 -1
- package/lib/mol-theme/color/polymer-id.js +4 -4
- package/lib/mol-theme/color/polymer-index.js +1 -1
- package/lib/mol-theme/color/residue-name.js +1 -1
- package/lib/mol-theme/color/secondary-structure.js +12 -12
- package/lib/mol-theme/color/sequence-id.js +7 -7
- package/lib/mol-theme/color/shape-group.js +1 -1
- package/lib/mol-theme/color/uncertainty.js +1 -1
- package/lib/mol-theme/color/uniform.js +1 -1
- package/lib/mol-theme/color/unit-index.js +1 -1
- package/lib/mol-theme/color/volume-value.js +1 -1
- package/lib/mol-theme/label.js +3 -3
- package/lib/mol-util/binding.js +4 -4
- package/lib/mol-util/debug.d.ts +6 -1
- package/lib/mol-util/debug.js +9 -1
- package/lib/mol-util/input/input-observer.js +20 -20
- package/lib/mol-util/string-builder.js +1 -1
- package/lib/servers/model/preprocess/converter.js +1 -1
- package/lib/servers/model/server/query.js +1 -1
- package/lib/servers/model/utils/fetch-retry.js +3 -2
- package/lib/servers/volume/server/algebra/coordinate.js +6 -6
- package/lib/servers/volume/server/query/encode.js +1 -1
- package/package.json +162 -162
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright (c) 2018-
|
|
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
|
*/
|
|
6
|
-
import { GLRenderingContext, COMPAT_instanced_arrays, COMPAT_standard_derivatives, COMPAT_vertex_array_object, COMPAT_element_index_uint, COMPAT_texture_float, COMPAT_texture_float_linear, COMPAT_blend_minmax, COMPAT_frag_depth, COMPAT_color_buffer_float, COMPAT_draw_buffers, COMPAT_shader_texture_lod, COMPAT_depth_texture, COMPAT_sRGB, COMPAT_texture_half_float, COMPAT_texture_half_float_linear, COMPAT_color_buffer_half_float } from './compat';
|
|
6
|
+
import { GLRenderingContext, COMPAT_instanced_arrays, COMPAT_standard_derivatives, COMPAT_vertex_array_object, COMPAT_element_index_uint, COMPAT_texture_float, COMPAT_texture_float_linear, COMPAT_blend_minmax, COMPAT_frag_depth, COMPAT_color_buffer_float, COMPAT_draw_buffers, COMPAT_shader_texture_lod, COMPAT_depth_texture, COMPAT_sRGB, COMPAT_texture_half_float, COMPAT_texture_half_float_linear, COMPAT_color_buffer_half_float, COMPAT_disjoint_timer_query } from './compat';
|
|
7
7
|
export declare type WebGLExtensions = {
|
|
8
8
|
instancedArrays: COMPAT_instanced_arrays;
|
|
9
9
|
elementIndexUint: COMPAT_element_index_uint;
|
|
@@ -21,5 +21,6 @@ export declare type WebGLExtensions = {
|
|
|
21
21
|
drawBuffers: COMPAT_draw_buffers | null;
|
|
22
22
|
shaderTextureLod: COMPAT_shader_texture_lod | null;
|
|
23
23
|
sRGB: COMPAT_sRGB | null;
|
|
24
|
+
disjointTimerQuery: COMPAT_disjoint_timer_query | null;
|
|
24
25
|
};
|
|
25
26
|
export declare function createExtensions(gl: GLRenderingContext): WebGLExtensions;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Copyright (c) 2018-
|
|
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
|
*/
|
|
6
|
-
import { getInstancedArrays, getStandardDerivatives, getElementIndexUint, getTextureFloat, getTextureFloatLinear, getBlendMinMax, getFragDepth, getColorBufferFloat, getDrawBuffers, getShaderTextureLod, getDepthTexture, getSRGB, getTextureHalfFloat, getTextureHalfFloatLinear, getColorBufferHalfFloat, getVertexArrayObject } from './compat';
|
|
6
|
+
import { getInstancedArrays, getStandardDerivatives, getElementIndexUint, getTextureFloat, getTextureFloatLinear, getBlendMinMax, getFragDepth, getColorBufferFloat, getDrawBuffers, getShaderTextureLod, getDepthTexture, getSRGB, getTextureHalfFloat, getTextureHalfFloatLinear, getColorBufferHalfFloat, getVertexArrayObject, getDisjointTimerQuery } from './compat';
|
|
7
7
|
import { isDebugMode } from '../../mol-util/debug';
|
|
8
8
|
export function createExtensions(gl) {
|
|
9
9
|
var instancedArrays = getInstancedArrays(gl);
|
|
@@ -76,6 +76,10 @@ export function createExtensions(gl) {
|
|
|
76
76
|
if (isDebugMode && sRGB === null) {
|
|
77
77
|
console.log('Could not find support for "sRGB"');
|
|
78
78
|
}
|
|
79
|
+
var disjointTimerQuery = getDisjointTimerQuery(gl);
|
|
80
|
+
if (isDebugMode && disjointTimerQuery === null) {
|
|
81
|
+
console.log('Could not find support for "disjoint_timer_query"');
|
|
82
|
+
}
|
|
79
83
|
return {
|
|
80
84
|
instancedArrays: instancedArrays,
|
|
81
85
|
standardDerivatives: standardDerivatives,
|
|
@@ -93,5 +97,6 @@ export function createExtensions(gl) {
|
|
|
93
97
|
drawBuffers: drawBuffers,
|
|
94
98
|
shaderTextureLod: shaderTextureLod,
|
|
95
99
|
sRGB: sRGB,
|
|
100
|
+
disjointTimerQuery: disjointTimerQuery,
|
|
96
101
|
};
|
|
97
102
|
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2022 mol* contributors, licensed under MIT, See LICENSE file for more info.
|
|
3
|
+
*
|
|
4
|
+
* @author Alexander Rose <alexander.rose@weirdbyte.de>
|
|
5
|
+
*/
|
|
6
|
+
import { GLRenderingContext } from './compat';
|
|
7
|
+
import { WebGLExtensions } from './extensions';
|
|
8
|
+
export declare type TimerResult = {
|
|
9
|
+
readonly label: string;
|
|
10
|
+
readonly timeElapsed: number;
|
|
11
|
+
readonly children: TimerResult[];
|
|
12
|
+
};
|
|
13
|
+
export declare type WebGLTimer = {
|
|
14
|
+
/** Check with GPU for finished timers. */
|
|
15
|
+
resolve: () => TimerResult[];
|
|
16
|
+
mark: (label: string) => void;
|
|
17
|
+
markEnd: (label: string) => void;
|
|
18
|
+
clear: () => void;
|
|
19
|
+
destroy: () => void;
|
|
20
|
+
};
|
|
21
|
+
export declare function createTimer(gl: GLRenderingContext, extensions: WebGLExtensions): WebGLTimer;
|
|
22
|
+
export declare function printTimerResults(results: TimerResult[]): void[];
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2022 mol* contributors, licensed under MIT, See LICENSE file for more info.
|
|
3
|
+
*
|
|
4
|
+
* @author Alexander Rose <alexander.rose@weirdbyte.de>
|
|
5
|
+
*/
|
|
6
|
+
function getQuery(extensions) {
|
|
7
|
+
return extensions.disjointTimerQuery ? extensions.disjointTimerQuery.createQuery() : null;
|
|
8
|
+
}
|
|
9
|
+
export function createTimer(gl, extensions) {
|
|
10
|
+
var dtq = extensions.disjointTimerQuery;
|
|
11
|
+
var queries = new Map();
|
|
12
|
+
var pending = new Map();
|
|
13
|
+
var stack = [];
|
|
14
|
+
var measures = [];
|
|
15
|
+
var current = null;
|
|
16
|
+
var clear = function () {
|
|
17
|
+
if (!dtq)
|
|
18
|
+
return;
|
|
19
|
+
queries.forEach(function (_, query) {
|
|
20
|
+
dtq.deleteQuery(query);
|
|
21
|
+
});
|
|
22
|
+
pending.clear();
|
|
23
|
+
measures = [];
|
|
24
|
+
current = null;
|
|
25
|
+
};
|
|
26
|
+
var add = function () {
|
|
27
|
+
if (!dtq)
|
|
28
|
+
return;
|
|
29
|
+
var query = getQuery(extensions);
|
|
30
|
+
if (!query)
|
|
31
|
+
return;
|
|
32
|
+
dtq.beginQuery(dtq.TIME_ELAPSED, query);
|
|
33
|
+
pending.forEach(function (measure, _) {
|
|
34
|
+
measure.queries.push(query);
|
|
35
|
+
});
|
|
36
|
+
queries.set(query, { refCount: pending.size });
|
|
37
|
+
current = query;
|
|
38
|
+
};
|
|
39
|
+
return {
|
|
40
|
+
resolve: function () {
|
|
41
|
+
var results = [];
|
|
42
|
+
if (!dtq || !measures.length)
|
|
43
|
+
return results;
|
|
44
|
+
// console.log('resolve');
|
|
45
|
+
queries.forEach(function (result, query) {
|
|
46
|
+
if (result.timeElapsed !== undefined)
|
|
47
|
+
return;
|
|
48
|
+
var available = dtq.getQueryParameter(query, dtq.QUERY_RESULT_AVAILABLE);
|
|
49
|
+
var disjoint = gl.getParameter(dtq.GPU_DISJOINT);
|
|
50
|
+
if (available && !disjoint) {
|
|
51
|
+
var timeElapsed = dtq.getQueryParameter(query, dtq.QUERY_RESULT);
|
|
52
|
+
result.timeElapsed = timeElapsed;
|
|
53
|
+
// console.log('timeElapsed', result.timeElapsed);
|
|
54
|
+
}
|
|
55
|
+
if (available || disjoint) {
|
|
56
|
+
dtq.deleteQuery(query);
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
var unresolved = [];
|
|
60
|
+
var _loop_1 = function (measure) {
|
|
61
|
+
if (measure.queries.every(function (q) { var _a; return ((_a = queries.get(q)) === null || _a === void 0 ? void 0 : _a.timeElapsed) !== undefined; })) {
|
|
62
|
+
var timeElapsed = 0;
|
|
63
|
+
for (var _a = 0, _b = measure.queries; _a < _b.length; _a++) {
|
|
64
|
+
var query = _b[_a];
|
|
65
|
+
var result = queries.get(query);
|
|
66
|
+
timeElapsed += result.timeElapsed;
|
|
67
|
+
result.refCount -= 1;
|
|
68
|
+
}
|
|
69
|
+
measure.timeElapsed = timeElapsed;
|
|
70
|
+
if (measure.root) {
|
|
71
|
+
var children = [];
|
|
72
|
+
var add_1 = function (measures, children) {
|
|
73
|
+
for (var _i = 0, measures_2 = measures; _i < measures_2.length; _i++) {
|
|
74
|
+
var measure_1 = measures_2[_i];
|
|
75
|
+
var result = {
|
|
76
|
+
label: measure_1.label,
|
|
77
|
+
timeElapsed: measure_1.timeElapsed,
|
|
78
|
+
children: []
|
|
79
|
+
};
|
|
80
|
+
children.push(result);
|
|
81
|
+
add_1(measure_1.children, result.children);
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
add_1(measure.children, children);
|
|
85
|
+
results.push({ label: measure.label, timeElapsed: timeElapsed, children: children });
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
unresolved.push(measure);
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
for (var _i = 0, measures_1 = measures; _i < measures_1.length; _i++) {
|
|
93
|
+
var measure = measures_1[_i];
|
|
94
|
+
_loop_1(measure);
|
|
95
|
+
}
|
|
96
|
+
measures = unresolved;
|
|
97
|
+
queries.forEach(function (result, query) {
|
|
98
|
+
if (result.refCount === 0) {
|
|
99
|
+
queries.delete(query);
|
|
100
|
+
}
|
|
101
|
+
});
|
|
102
|
+
return results;
|
|
103
|
+
},
|
|
104
|
+
mark: function (label) {
|
|
105
|
+
if (!dtq)
|
|
106
|
+
return;
|
|
107
|
+
if (pending.has(label)) {
|
|
108
|
+
throw new Error("Timer mark for '".concat(label, "' already exists"));
|
|
109
|
+
}
|
|
110
|
+
if (current !== null) {
|
|
111
|
+
dtq.endQuery(dtq.TIME_ELAPSED);
|
|
112
|
+
}
|
|
113
|
+
var measure = { label: label, queries: [], children: [], root: current === null };
|
|
114
|
+
pending.set(label, measure);
|
|
115
|
+
if (stack.length) {
|
|
116
|
+
stack[stack.length - 1].children.push(measure);
|
|
117
|
+
}
|
|
118
|
+
stack.push(measure);
|
|
119
|
+
add();
|
|
120
|
+
},
|
|
121
|
+
markEnd: function (label) {
|
|
122
|
+
var _a;
|
|
123
|
+
if (!dtq)
|
|
124
|
+
return;
|
|
125
|
+
var measure = pending.get(label);
|
|
126
|
+
if (!measure) {
|
|
127
|
+
throw new Error("Timer mark for '".concat(label, "' does not exist"));
|
|
128
|
+
}
|
|
129
|
+
if (((_a = stack.pop()) === null || _a === void 0 ? void 0 : _a.label) !== label) {
|
|
130
|
+
throw new Error("Timer mark for '".concat(label, "' has pending nested mark"));
|
|
131
|
+
}
|
|
132
|
+
dtq.endQuery(dtq.TIME_ELAPSED);
|
|
133
|
+
pending.delete(label);
|
|
134
|
+
measures.push(measure);
|
|
135
|
+
if (pending.size > 0) {
|
|
136
|
+
add();
|
|
137
|
+
}
|
|
138
|
+
else {
|
|
139
|
+
current = null;
|
|
140
|
+
}
|
|
141
|
+
},
|
|
142
|
+
clear: clear,
|
|
143
|
+
destroy: function () {
|
|
144
|
+
clear();
|
|
145
|
+
}
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
function formatTimerResult(result) {
|
|
149
|
+
var timeElapsed = result.timeElapsed / 1000 / 1000;
|
|
150
|
+
return "".concat(result.label, " ").concat(timeElapsed.toFixed(2), "ms");
|
|
151
|
+
}
|
|
152
|
+
export function printTimerResults(results) {
|
|
153
|
+
return results.map(function (r) {
|
|
154
|
+
var f = formatTimerResult(r);
|
|
155
|
+
if (r.children.length) {
|
|
156
|
+
console.groupCollapsed(f);
|
|
157
|
+
printTimerResults(r.children);
|
|
158
|
+
console.groupEnd();
|
|
159
|
+
}
|
|
160
|
+
else {
|
|
161
|
+
console.log(f);
|
|
162
|
+
}
|
|
163
|
+
});
|
|
164
|
+
}
|
|
@@ -75,37 +75,37 @@ export var ArrayEncoding;
|
|
|
75
75
|
ArrayEncoding.by = by;
|
|
76
76
|
function uint8(data) {
|
|
77
77
|
return {
|
|
78
|
-
encodings: [{ kind: 'ByteArray', type: 4 /* Uint8 */ }],
|
|
78
|
+
encodings: [{ kind: 'ByteArray', type: 4 /* Encoding.IntDataType.Uint8 */ }],
|
|
79
79
|
data: data
|
|
80
80
|
};
|
|
81
81
|
}
|
|
82
82
|
function int8(data) {
|
|
83
83
|
return {
|
|
84
|
-
encodings: [{ kind: 'ByteArray', type: 1 /* Int8 */ }],
|
|
84
|
+
encodings: [{ kind: 'ByteArray', type: 1 /* Encoding.IntDataType.Int8 */ }],
|
|
85
85
|
data: new Uint8Array(data.buffer, data.byteOffset)
|
|
86
86
|
};
|
|
87
87
|
}
|
|
88
88
|
var writers = (_a = {},
|
|
89
|
-
_a[2 /* Int16 */] = function (v, i, a) { v.setInt16(2 * i, a, true); },
|
|
90
|
-
_a[5 /* Uint16 */] = function (v, i, a) { v.setUint16(2 * i, a, true); },
|
|
91
|
-
_a[3 /* Int32 */] = function (v, i, a) { v.setInt32(4 * i, a, true); },
|
|
92
|
-
_a[6 /* Uint32 */] = function (v, i, a) { v.setUint32(4 * i, a, true); },
|
|
93
|
-
_a[32 /* Float32 */] = function (v, i, a) { v.setFloat32(4 * i, a, true); },
|
|
94
|
-
_a[33 /* Float64 */] = function (v, i, a) { v.setFloat64(8 * i, a, true); },
|
|
89
|
+
_a[2 /* Encoding.IntDataType.Int16 */] = function (v, i, a) { v.setInt16(2 * i, a, true); },
|
|
90
|
+
_a[5 /* Encoding.IntDataType.Uint16 */] = function (v, i, a) { v.setUint16(2 * i, a, true); },
|
|
91
|
+
_a[3 /* Encoding.IntDataType.Int32 */] = function (v, i, a) { v.setInt32(4 * i, a, true); },
|
|
92
|
+
_a[6 /* Encoding.IntDataType.Uint32 */] = function (v, i, a) { v.setUint32(4 * i, a, true); },
|
|
93
|
+
_a[32 /* Encoding.FloatDataType.Float32 */] = function (v, i, a) { v.setFloat32(4 * i, a, true); },
|
|
94
|
+
_a[33 /* Encoding.FloatDataType.Float64 */] = function (v, i, a) { v.setFloat64(8 * i, a, true); },
|
|
95
95
|
_a);
|
|
96
96
|
var byteSizes = (_b = {},
|
|
97
|
-
_b[2 /* Int16 */] = 2,
|
|
98
|
-
_b[5 /* Uint16 */] = 2,
|
|
99
|
-
_b[3 /* Int32 */] = 4,
|
|
100
|
-
_b[6 /* Uint32 */] = 4,
|
|
101
|
-
_b[32 /* Float32 */] = 4,
|
|
102
|
-
_b[33 /* Float64 */] = 8,
|
|
97
|
+
_b[2 /* Encoding.IntDataType.Int16 */] = 2,
|
|
98
|
+
_b[5 /* Encoding.IntDataType.Uint16 */] = 2,
|
|
99
|
+
_b[3 /* Encoding.IntDataType.Int32 */] = 4,
|
|
100
|
+
_b[6 /* Encoding.IntDataType.Uint32 */] = 4,
|
|
101
|
+
_b[32 /* Encoding.FloatDataType.Float32 */] = 4,
|
|
102
|
+
_b[33 /* Encoding.FloatDataType.Float64 */] = 8,
|
|
103
103
|
_b);
|
|
104
104
|
function byteArray(data) {
|
|
105
105
|
var type = Encoding.getDataType(data);
|
|
106
|
-
if (type === 1 /* Int8 */)
|
|
106
|
+
if (type === 1 /* Encoding.IntDataType.Int8 */)
|
|
107
107
|
return int8(data);
|
|
108
|
-
else if (type === 4 /* Uint8 */)
|
|
108
|
+
else if (type === 4 /* Encoding.IntDataType.Uint8 */)
|
|
109
109
|
return uint8(data);
|
|
110
110
|
var result = new Uint8Array(data.length * byteSizes[type]);
|
|
111
111
|
var w = writers[type];
|
|
@@ -170,7 +170,7 @@ export var ArrayEncoding;
|
|
|
170
170
|
var srcType = Encoding.getDataType(data);
|
|
171
171
|
if (srcType === void 0) {
|
|
172
172
|
data = new Int32Array(data);
|
|
173
|
-
srcType = 3 /* Int32 */;
|
|
173
|
+
srcType = 3 /* Encoding.IntDataType.Int32 */;
|
|
174
174
|
}
|
|
175
175
|
if (!data.length) {
|
|
176
176
|
return {
|
|
@@ -214,7 +214,7 @@ export var ArrayEncoding;
|
|
|
214
214
|
var srcType = Encoding.getDataType(data);
|
|
215
215
|
if (srcType === void 0) {
|
|
216
216
|
data = new Int32Array(data);
|
|
217
|
-
srcType = 3 /* Int32 */;
|
|
217
|
+
srcType = 3 /* Encoding.IntDataType.Int32 */;
|
|
218
218
|
}
|
|
219
219
|
if (!data.length) {
|
|
220
220
|
return {
|
|
@@ -21,14 +21,14 @@ function decodeStep(data, encoding) {
|
|
|
21
21
|
switch (encoding.kind) {
|
|
22
22
|
case 'ByteArray': {
|
|
23
23
|
switch (encoding.type) {
|
|
24
|
-
case 4 /* Uint8 */: return data;
|
|
25
|
-
case 1 /* Int8 */: return int8(data);
|
|
26
|
-
case 2 /* Int16 */: return int16(data);
|
|
27
|
-
case 5 /* Uint16 */: return uint16(data);
|
|
28
|
-
case 3 /* Int32 */: return int32(data);
|
|
29
|
-
case 6 /* Uint32 */: return uint32(data);
|
|
30
|
-
case 32 /* Float32 */: return float32(data);
|
|
31
|
-
case 33 /* Float64 */: return float64(data);
|
|
24
|
+
case 4 /* Encoding.IntDataType.Uint8 */: return data;
|
|
25
|
+
case 1 /* Encoding.IntDataType.Int8 */: return int8(data);
|
|
26
|
+
case 2 /* Encoding.IntDataType.Int16 */: return int16(data);
|
|
27
|
+
case 5 /* Encoding.IntDataType.Uint16 */: return uint16(data);
|
|
28
|
+
case 3 /* Encoding.IntDataType.Int32 */: return int32(data);
|
|
29
|
+
case 6 /* Encoding.IntDataType.Uint32 */: return uint32(data);
|
|
30
|
+
case 32 /* Encoding.FloatDataType.Float32 */: return float32(data);
|
|
31
|
+
case 33 /* Encoding.FloatDataType.Float64 */: return float64(data);
|
|
32
32
|
default: assertUnreachable(encoding.type);
|
|
33
33
|
}
|
|
34
34
|
}
|
|
@@ -42,19 +42,19 @@ function decodeStep(data, encoding) {
|
|
|
42
42
|
}
|
|
43
43
|
function getIntArray(type, size) {
|
|
44
44
|
switch (type) {
|
|
45
|
-
case 1 /* Int8 */: return new Int8Array(size);
|
|
46
|
-
case 2 /* Int16 */: return new Int16Array(size);
|
|
47
|
-
case 3 /* Int32 */: return new Int32Array(size);
|
|
48
|
-
case 4 /* Uint8 */: return new Uint8Array(size);
|
|
49
|
-
case 5 /* Uint16 */: return new Uint16Array(size);
|
|
50
|
-
case 6 /* Uint32 */: return new Uint32Array(size);
|
|
45
|
+
case 1 /* Encoding.IntDataType.Int8 */: return new Int8Array(size);
|
|
46
|
+
case 2 /* Encoding.IntDataType.Int16 */: return new Int16Array(size);
|
|
47
|
+
case 3 /* Encoding.IntDataType.Int32 */: return new Int32Array(size);
|
|
48
|
+
case 4 /* Encoding.IntDataType.Uint8 */: return new Uint8Array(size);
|
|
49
|
+
case 5 /* Encoding.IntDataType.Uint16 */: return new Uint16Array(size);
|
|
50
|
+
case 6 /* Encoding.IntDataType.Uint32 */: return new Uint32Array(size);
|
|
51
51
|
default: assertUnreachable(type);
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
54
|
function getFloatArray(type, size) {
|
|
55
55
|
switch (type) {
|
|
56
|
-
case 32 /* Float32 */: return new Float32Array(size);
|
|
57
|
-
case 33 /* Float64 */: return new Float64Array(size);
|
|
56
|
+
case 32 /* Encoding.FloatDataType.Float32 */: return new Float32Array(size);
|
|
57
|
+
case 33 /* Encoding.FloatDataType.Float64 */: return new Float64Array(size);
|
|
58
58
|
default: assertUnreachable(type);
|
|
59
59
|
}
|
|
60
60
|
}
|
|
@@ -10,23 +10,23 @@ export var Encoding;
|
|
|
10
10
|
function getDataType(data) {
|
|
11
11
|
var srcType;
|
|
12
12
|
if (data instanceof Int8Array)
|
|
13
|
-
srcType = 1 /* Int8 */;
|
|
13
|
+
srcType = 1 /* Encoding.IntDataType.Int8 */;
|
|
14
14
|
else if (data instanceof Int16Array)
|
|
15
|
-
srcType = 2 /* Int16 */;
|
|
15
|
+
srcType = 2 /* Encoding.IntDataType.Int16 */;
|
|
16
16
|
else if (data instanceof Int32Array)
|
|
17
|
-
srcType = 3 /* Int32 */;
|
|
17
|
+
srcType = 3 /* Encoding.IntDataType.Int32 */;
|
|
18
18
|
else if (data instanceof Uint8Array)
|
|
19
|
-
srcType = 4 /* Uint8 */;
|
|
19
|
+
srcType = 4 /* Encoding.IntDataType.Uint8 */;
|
|
20
20
|
else if (data instanceof Uint16Array)
|
|
21
|
-
srcType = 5 /* Uint16 */;
|
|
21
|
+
srcType = 5 /* Encoding.IntDataType.Uint16 */;
|
|
22
22
|
else if (data instanceof Uint32Array)
|
|
23
|
-
srcType = 6 /* Uint32 */;
|
|
23
|
+
srcType = 6 /* Encoding.IntDataType.Uint32 */;
|
|
24
24
|
else if (data instanceof Float32Array)
|
|
25
|
-
srcType = 32 /* Float32 */;
|
|
25
|
+
srcType = 32 /* Encoding.FloatDataType.Float32 */;
|
|
26
26
|
else if (data instanceof Float64Array)
|
|
27
|
-
srcType = 33 /* Float64 */;
|
|
27
|
+
srcType = 33 /* Encoding.FloatDataType.Float64 */;
|
|
28
28
|
else
|
|
29
|
-
srcType = 3 /* Int32 */; // throw new Error('Unsupported integer data type.');
|
|
29
|
+
srcType = 3 /* Encoding.IntDataType.Int32 */; // throw new Error('Unsupported integer data type.');
|
|
30
30
|
return srcType;
|
|
31
31
|
}
|
|
32
32
|
Encoding.getDataType = getDataType;
|
|
@@ -13,10 +13,10 @@ export function Field(column) {
|
|
|
13
13
|
var isNumeric = ColumnHelpers.isTypedArray(data);
|
|
14
14
|
var str = isNumeric
|
|
15
15
|
? mask
|
|
16
|
-
? function (row) { return mask[row] === 0 /* Present */ ? '' + data[row] : ''; }
|
|
16
|
+
? function (row) { return mask[row] === 0 /* Column.ValueKind.Present */ ? '' + data[row] : ''; }
|
|
17
17
|
: function (row) { return '' + data[row]; }
|
|
18
18
|
: mask
|
|
19
|
-
? function (row) { return mask[row] === 0 /* Present */ ? data[row] : ''; }
|
|
19
|
+
? function (row) { return mask[row] === 0 /* Column.ValueKind.Present */ ? data[row] : ''; }
|
|
20
20
|
: function (row) { return data[row]; };
|
|
21
21
|
var int = isNumeric
|
|
22
22
|
? function (row) { return data[row]; }
|
|
@@ -26,7 +26,7 @@ export function Field(column) {
|
|
|
26
26
|
: function (row) { var v = data[row]; return fastParseFloat(v, 0, v.length); };
|
|
27
27
|
var valueKind = mask
|
|
28
28
|
? function (row) { return mask[row]; }
|
|
29
|
-
: function (row) { return 0 /* Present */; };
|
|
29
|
+
: function (row) { return 0 /* Column.ValueKind.Present */; };
|
|
30
30
|
var rowCount = data.length;
|
|
31
31
|
return {
|
|
32
32
|
__array: data,
|
|
@@ -71,15 +71,15 @@ export var CifField;
|
|
|
71
71
|
var valueKind = function (row) {
|
|
72
72
|
var v = values[row], l = v.length;
|
|
73
73
|
if (l > 1)
|
|
74
|
-
return 0 /* Present */;
|
|
74
|
+
return 0 /* Column.ValueKind.Present */;
|
|
75
75
|
if (l === 0)
|
|
76
|
-
return 1 /* NotPresent */;
|
|
76
|
+
return 1 /* Column.ValueKind.NotPresent */;
|
|
77
77
|
var c = v.charCodeAt(0);
|
|
78
78
|
if (c === 46 /* . */)
|
|
79
|
-
return 1 /* NotPresent */;
|
|
79
|
+
return 1 /* Column.ValueKind.NotPresent */;
|
|
80
80
|
if (c === 63 /* ? */)
|
|
81
|
-
return 2 /* Unknown */;
|
|
82
|
-
return 0 /* Present */;
|
|
81
|
+
return 2 /* Column.ValueKind.Unknown */;
|
|
82
|
+
return 0 /* Column.ValueKind.Present */;
|
|
83
83
|
};
|
|
84
84
|
return {
|
|
85
85
|
__array: void 0,
|
|
@@ -101,7 +101,7 @@ export var CifField;
|
|
|
101
101
|
var rowCount = values.length;
|
|
102
102
|
var str = function (row) { return '' + values[row]; };
|
|
103
103
|
var float = function (row) { return values[row]; };
|
|
104
|
-
var valueKind = function (row) { return 0 /* Present */; };
|
|
104
|
+
var valueKind = function (row) { return 0 /* Column.ValueKind.Present */; };
|
|
105
105
|
var toFloatArray = function (params) {
|
|
106
106
|
if (!params || params.array && values instanceof params.array) {
|
|
107
107
|
return values;
|
|
@@ -143,15 +143,15 @@ export var CifField;
|
|
|
143
143
|
var valueKind = function (row) {
|
|
144
144
|
var s = indices[2 * row], l = indices[2 * row + 1] - s;
|
|
145
145
|
if (l > 1)
|
|
146
|
-
return 0 /* Present */;
|
|
146
|
+
return 0 /* Column.ValueKind.Present */;
|
|
147
147
|
if (l === 0)
|
|
148
|
-
return 1 /* NotPresent */;
|
|
148
|
+
return 1 /* Column.ValueKind.NotPresent */;
|
|
149
149
|
var v = data.charCodeAt(s);
|
|
150
150
|
if (v === 46 /* . */)
|
|
151
|
-
return 1 /* NotPresent */;
|
|
151
|
+
return 1 /* Column.ValueKind.NotPresent */;
|
|
152
152
|
if (v === 63 /* ? */)
|
|
153
|
-
return 2 /* Unknown */;
|
|
154
|
-
return 0 /* Present */;
|
|
153
|
+
return 2 /* Column.ValueKind.Unknown */;
|
|
154
|
+
return 0 /* Column.ValueKind.Present */;
|
|
155
155
|
};
|
|
156
156
|
return {
|
|
157
157
|
__array: void 0,
|
|
@@ -273,14 +273,14 @@ export function getCifFieldType(field) {
|
|
|
273
273
|
var floatCount = 0, hasStringOrScientific = false, undefinedCount = 0;
|
|
274
274
|
for (var i = 0, _i = field.rowCount; i < _i; i++) {
|
|
275
275
|
var k = field.valueKind(i);
|
|
276
|
-
if (k !== 0 /* Present */) {
|
|
276
|
+
if (k !== 0 /* Column.ValueKind.Present */) {
|
|
277
277
|
undefinedCount++;
|
|
278
278
|
continue;
|
|
279
279
|
}
|
|
280
280
|
var type = getNumberType(field.str(i));
|
|
281
|
-
if (type === 0 /* Int */)
|
|
281
|
+
if (type === 0 /* NumberType.Int */)
|
|
282
282
|
continue;
|
|
283
|
-
else if (type === 1 /* Float */)
|
|
283
|
+
else if (type === 1 /* NumberType.Float */)
|
|
284
284
|
floatCount++;
|
|
285
285
|
else {
|
|
286
286
|
hasStringOrScientific = true;
|
|
@@ -93,7 +93,7 @@ function createListColumn(schema, category, key) {
|
|
|
93
93
|
isDefined: !!f,
|
|
94
94
|
rowCount: category.rowCount,
|
|
95
95
|
value: value,
|
|
96
|
-
valueKind: f ? f.valueKind : function () { return 1 /* NotPresent */; },
|
|
96
|
+
valueKind: f ? f.valueKind : function () { return 1 /* Column.ValueKind.NotPresent */; },
|
|
97
97
|
areValuesEqual: function (rowA, rowB) { return arrayEqual(value(rowA), value(rowB)); },
|
|
98
98
|
toArray: toArray
|
|
99
99
|
};
|
|
@@ -373,7 +373,7 @@ function getTokenString(state) {
|
|
|
373
373
|
function moveNextInternal(state) {
|
|
374
374
|
var prev = skipWhitespace(state);
|
|
375
375
|
if (state.position >= state.length) {
|
|
376
|
-
state.tokenType = 6 /* End */;
|
|
376
|
+
state.tokenType = 6 /* CifTokenType.End */;
|
|
377
377
|
return;
|
|
378
378
|
}
|
|
379
379
|
state.tokenStart = state.position;
|
|
@@ -383,17 +383,17 @@ function moveNextInternal(state) {
|
|
|
383
383
|
switch (c) {
|
|
384
384
|
case 35: // #, comment
|
|
385
385
|
skipCommentLine(state);
|
|
386
|
-
state.tokenType = 5 /* Comment */;
|
|
386
|
+
state.tokenType = 5 /* CifTokenType.Comment */;
|
|
387
387
|
break;
|
|
388
388
|
case 39: // ', escaped value
|
|
389
389
|
if (isTripleQuoteAtPosition(state)) {
|
|
390
390
|
eatTripleQuote(state);
|
|
391
|
-
state.tokenType = 3 /* Value */;
|
|
391
|
+
state.tokenType = 3 /* CifTokenType.Value */;
|
|
392
392
|
break;
|
|
393
393
|
}
|
|
394
394
|
case 34: // ", escaped value
|
|
395
395
|
eatEscaped(state, c);
|
|
396
|
-
state.tokenType = 3 /* Value */;
|
|
396
|
+
state.tokenType = 3 /* CifTokenType.Value */;
|
|
397
397
|
break;
|
|
398
398
|
case 59: // ;, possible multiline value
|
|
399
399
|
// multiline value must start at the beginning of the line.
|
|
@@ -403,7 +403,7 @@ function moveNextInternal(state) {
|
|
|
403
403
|
else {
|
|
404
404
|
eatValue(state);
|
|
405
405
|
}
|
|
406
|
-
state.tokenType = 3 /* Value */;
|
|
406
|
+
state.tokenType = 3 /* CifTokenType.Value */;
|
|
407
407
|
break;
|
|
408
408
|
default:
|
|
409
409
|
if (state.isImportGet) {
|
|
@@ -414,29 +414,29 @@ function moveNextInternal(state) {
|
|
|
414
414
|
}
|
|
415
415
|
// escaped is always Value
|
|
416
416
|
if (state.isEscaped) {
|
|
417
|
-
state.tokenType = 3 /* Value */;
|
|
417
|
+
state.tokenType = 3 /* CifTokenType.Value */;
|
|
418
418
|
// _ means column name, including _import.get
|
|
419
419
|
}
|
|
420
420
|
else if (state.data.charCodeAt(state.tokenStart) === 95) { // _
|
|
421
421
|
if (state.inSaveFrame && isImportGet(state)) {
|
|
422
422
|
state.isImportGet = true;
|
|
423
423
|
}
|
|
424
|
-
state.tokenType = 4 /* ColumnName */;
|
|
424
|
+
state.tokenType = 4 /* CifTokenType.ColumnName */;
|
|
425
425
|
// 5th char needs to be _ for data_, save_ or loop_
|
|
426
426
|
}
|
|
427
427
|
else if (state.tokenEnd - state.tokenStart >= 5 && state.data.charCodeAt(state.tokenStart + 4) === 95) {
|
|
428
428
|
if (isData(state))
|
|
429
|
-
state.tokenType = 0 /* Data */;
|
|
429
|
+
state.tokenType = 0 /* CifTokenType.Data */;
|
|
430
430
|
else if (isSave(state))
|
|
431
|
-
state.tokenType = 1 /* Save */;
|
|
431
|
+
state.tokenType = 1 /* CifTokenType.Save */;
|
|
432
432
|
else if (isLoop(state))
|
|
433
|
-
state.tokenType = 2 /* Loop */;
|
|
433
|
+
state.tokenType = 2 /* CifTokenType.Loop */;
|
|
434
434
|
else
|
|
435
|
-
state.tokenType = 3 /* Value */;
|
|
435
|
+
state.tokenType = 3 /* CifTokenType.Value */;
|
|
436
436
|
// all other tests failed, we are at Value token.
|
|
437
437
|
}
|
|
438
438
|
else {
|
|
439
|
-
state.tokenType = 3 /* Value */;
|
|
439
|
+
state.tokenType = 3 /* CifTokenType.Value */;
|
|
440
440
|
}
|
|
441
441
|
break;
|
|
442
442
|
}
|
|
@@ -446,7 +446,7 @@ function moveNextInternal(state) {
|
|
|
446
446
|
*/
|
|
447
447
|
function moveNext(state) {
|
|
448
448
|
moveNextInternal(state);
|
|
449
|
-
while (state.tokenType === 5 /* Comment */)
|
|
449
|
+
while (state.tokenType === 5 /* CifTokenType.Comment */)
|
|
450
450
|
moveNextInternal(state);
|
|
451
451
|
}
|
|
452
452
|
function createTokenizer(data, runtimeCtx) {
|
|
@@ -456,7 +456,7 @@ function createTokenizer(data, runtimeCtx) {
|
|
|
456
456
|
position: 0,
|
|
457
457
|
tokenStart: 0,
|
|
458
458
|
tokenEnd: 0,
|
|
459
|
-
tokenType: 6 /* End */,
|
|
459
|
+
tokenType: 6 /* CifTokenType.End */,
|
|
460
460
|
lineNumber: 1,
|
|
461
461
|
isEscaped: false,
|
|
462
462
|
isImportGet: false,
|
|
@@ -504,13 +504,13 @@ function handleSingle(tokenizer, ctx) {
|
|
|
504
504
|
var fieldNames = [];
|
|
505
505
|
var readingNames = true;
|
|
506
506
|
while (readingNames) {
|
|
507
|
-
if (tokenizer.tokenType !== 4 /* ColumnName */ || !isNamespace(tokenizer, nsStart, nsEnd)) {
|
|
507
|
+
if (tokenizer.tokenType !== 4 /* CifTokenType.ColumnName */ || !isNamespace(tokenizer, nsStart, nsEnd)) {
|
|
508
508
|
readingNames = false;
|
|
509
509
|
break;
|
|
510
510
|
}
|
|
511
511
|
var fieldName = getTokenString(tokenizer).substring(name.length + 1);
|
|
512
512
|
moveNext(tokenizer);
|
|
513
|
-
if (tokenizer.tokenType !== 3 /* Value */) {
|
|
513
|
+
if (tokenizer.tokenType !== 3 /* CifTokenType.Value */) {
|
|
514
514
|
return {
|
|
515
515
|
hasError: true,
|
|
516
516
|
errorLine: tokenizer.lineNumber,
|
|
@@ -532,7 +532,7 @@ function readLoopChunk(chunkSize, state) {
|
|
|
532
532
|
var tokenizer = state.tokenizer, tokens = state.tokens, fieldCount = state.fieldCount;
|
|
533
533
|
var tokenCount = state.tokenCount;
|
|
534
534
|
var counter = 0;
|
|
535
|
-
while (tokenizer.tokenType === 3 /* Value */ && counter < chunkSize) {
|
|
535
|
+
while (tokenizer.tokenType === 3 /* CifTokenType.Value */ && counter < chunkSize) {
|
|
536
536
|
TokenBuilder.add(tokens[(tokenCount++) % fieldCount], tokenizer.tokenStart, tokenizer.tokenEnd);
|
|
537
537
|
moveNext(tokenizer);
|
|
538
538
|
counter++;
|
|
@@ -560,7 +560,7 @@ function handleLoop(tokenizer, ctx) {
|
|
|
560
560
|
name = getNamespace(tokenizer, getNamespaceEnd(tokenizer));
|
|
561
561
|
isFlat = isFlatNamespace(tokenizer);
|
|
562
562
|
fieldNames = [];
|
|
563
|
-
while (tokenizer.tokenType === 4 /* ColumnName */) {
|
|
563
|
+
while (tokenizer.tokenType === 4 /* CifTokenType.ColumnName */) {
|
|
564
564
|
fieldNames[fieldNames.length] = isFlat
|
|
565
565
|
? getTokenString(tokenizer)
|
|
566
566
|
: getTokenString(tokenizer).substring(name.length + 1);
|
|
@@ -645,9 +645,9 @@ function parseInternal(data, runtimeCtx) {
|
|
|
645
645
|
moveNext(tokenizer);
|
|
646
646
|
_a.label = 1;
|
|
647
647
|
case 1:
|
|
648
|
-
if (!(tokenizer.tokenType !== 6 /* End */)) return [3 /*break*/, 7];
|
|
648
|
+
if (!(tokenizer.tokenType !== 6 /* CifTokenType.End */)) return [3 /*break*/, 7];
|
|
649
649
|
token = tokenizer.tokenType;
|
|
650
|
-
if (!(token === 0 /* Data */)) return [3 /*break*/, 2];
|
|
650
|
+
if (!(token === 0 /* CifTokenType.Data */)) return [3 /*break*/, 2];
|
|
651
651
|
if (tokenizer.inSaveFrame) {
|
|
652
652
|
return [2 /*return*/, error(tokenizer.lineNumber, 'Unexpected data block inside a save frame.')];
|
|
653
653
|
}
|
|
@@ -660,7 +660,7 @@ function parseInternal(data, runtimeCtx) {
|
|
|
660
660
|
moveNext(tokenizer);
|
|
661
661
|
return [3 /*break*/, 6];
|
|
662
662
|
case 2:
|
|
663
|
-
if (!(token === 1 /* Save */)) return [3 /*break*/, 3];
|
|
663
|
+
if (!(token === 1 /* CifTokenType.Save */)) return [3 /*break*/, 3];
|
|
664
664
|
if (tokenizer.tokenEnd - tokenizer.tokenStart === 5) { // end of save frame
|
|
665
665
|
if (saveCtx.categoryNames.length > 0) {
|
|
666
666
|
saveFrames[saveFrames.length] = CifSaveFrame(saveCtx, saveHeader);
|
|
@@ -679,7 +679,7 @@ function parseInternal(data, runtimeCtx) {
|
|
|
679
679
|
moveNext(tokenizer);
|
|
680
680
|
return [3 /*break*/, 6];
|
|
681
681
|
case 3:
|
|
682
|
-
if (!(token === 2 /* Loop */)) return [3 /*break*/, 5];
|
|
682
|
+
if (!(token === 2 /* CifTokenType.Loop */)) return [3 /*break*/, 5];
|
|
683
683
|
return [4 /*yield*/, handleLoop(tokenizer, tokenizer.inSaveFrame ? saveCtx : blockCtx)];
|
|
684
684
|
case 4:
|
|
685
685
|
cat = _a.sent();
|
|
@@ -688,7 +688,7 @@ function parseInternal(data, runtimeCtx) {
|
|
|
688
688
|
}
|
|
689
689
|
return [3 /*break*/, 6];
|
|
690
690
|
case 5:
|
|
691
|
-
if (token === 4 /* ColumnName */) {
|
|
691
|
+
if (token === 4 /* CifTokenType.ColumnName */) {
|
|
692
692
|
cat = handleSingle(tokenizer, tokenizer.inSaveFrame ? saveCtx : blockCtx);
|
|
693
693
|
if (cat.hasError) {
|
|
694
694
|
return [2 /*return*/, error(cat.errorLine, cat.errorMessage)];
|