Sha256: 42da260e869aa9983359b2d3a22924dd73d587f2ba67bb11961af3ffb0e05c6b

Contents?: true

Size: 651 Bytes

Versions: 2

Compression:

Stored size: 651 Bytes

Contents

import Builder from "~utilities/builder";

const classes = {
  root: "scroll-container"
};

var ScrollContainer;

ScrollContainer = (node) => {
  var force_height = (height) => { node.style.minHeight = `${height}px`; };

  return {
    maintain_current_height() { force_height(node.offsetHeight); },
    restore_height() { node.style.minHeight = null; },

    scroll_to(contained_node) {
      node.parentNode.scrollTop = contained_node.getBoundingClientRect().top - node.getBoundingClientRect().top;
    }
  };
};

ScrollContainer.init = Builder.initialize_once(ScrollContainer, { name: classes.root, cache: true });

export default ScrollContainer;

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
docks_theme_api-1.0.3 source/components/scroll_container/scroll_container.js
docks_theme_api-1.0.2 source/components/scroll_container/scroll_container.js