Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

svelte-fast-dimension

Package Overview
Dependencies
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

svelte-fast-dimension

Fast dimension bindings using ResizeObservers

  • 0.0.2
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

svelte-fast-dimension

Fast dimension bindings using ResizeObservers.

Why? Svelte currently uses an iframe technique to measure dimensions so it works in older browsers. However, creating multiple iframes has a big performance impact and sometimes quirkiness. If your target browsers support ResizeObserver, this can significantly improve dimension binding performance.

Installation

npm install --save-dev svelte-fast-dimension

Usage

// svelte.config.js
import { fastDimension } from 'svelte-fast-dimension';

export default {
	preprocess: [fastDimension()]
};

Use dimension bindings as usual, it will use ResizeObservers under-the-hood:

<script>
	let a, b, c, d;
</script>

<div
	bind:clientWidth="{a}"
	bind:clientHeight="{b}"
	bind:offsetWidth="{c}"
	bind:offsetHeight="{d}"
/>

Recipes

Using with svelte-preprocess

Due to how Svelte applies preprocessors, using this with svelte-preprocess needs a bit more work to make sure we run this preprocessor only after svelte-preprocess finishes. There's an RFC to make this process clearer soon.

At the meantime, you can try one of these libraries:

Vite

svelte-fast-dimension injects an import from svelte-fast-dimension/action when preprocessing. This won't be detected during Vite's prebundling phase, and will cause on-the-fly prebundling which slows startup time. To remedy this, add svelte-fast-dimension/action to optimizeDeps.include.

License

MIT

FAQs

Package last updated on 13 Oct 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc