0.0.7 • Published 1 year ago

qwik-transition v0.0.7

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

Installation

npm install qwik-transition

Usage

useCSSTransition

This hook transforms a boolean state into a transition stage, which allows you to control your CSS transitions.

import { component$, useSignal } from "@builder.io/qwik";
import { useCSSTransition } from "qwik-transition";

export default component$(() => {
  const onOff = useSignal(true);
  const { stage, shouldMount } = useCSSTransition(onOff, { timeout: 300 });

  return (
    <div>
      <button
        onClick$={() => {
          onOff.value = !onOff.value;
        }}
      >
        toggle
      </button>
      {shouldMount.value && (
        <p
          style={{
            transition: ".3s",
            opacity: stage.value === "enterTo" ? 1 : 0,
          }}
        >
          Hey guys, I'm fading
        </p>
      )}
    </div>
  );
});

API Reference

useCSSTransition(signal, { timeout, transitionOnAppear })

const { stage, shouldMount } = useCSSTransition(onOff, {
  timeout: 300,
  transitionOnAppear: true,
});

Parameters:

  • signal: Signal<boolean>: Required. Your boolean signal, which controls animation in and out.
  • options: { timeout: number = 0; transitionOnAppear: boolean = false; }:
    • timeout: How long before the transition ends and the component unmounts.
    • transitionOnAppear: Whether to set the enterFrom stage value on the initial mount of the page or not.

Returns:

  • stage: Signal<"enterFrom" | "enterTo" | "leaveFrom" | "leaveTo" | "idle">: Current stage of the transition.
    • idle: No transition.
    • enterFrom: The element will enter. The transition begins. Use this value to set the starting values of your enter transition.
    • enterTo: Added in the next tick after enterFrom. Use this value to set the ending values of your enter transition.
    • leaveFrom: The element will disappear. The transition beings. Use this value to set the starting values of your exit transition.
    • leaveTo: Added in the next tick after leaveFrom. Use this value to set the ending values of your exit transition.
  • shouldMount: Signal<boolean>: Whether the component should be mounted or not. The timeout you specify as one of the options is important here to time when shouldMount changes from true to false.

Acknowledgments

This hook is adapted from https://github.com/iamyoki/transition-hook. Many thanks to the original author!

License

MIT

0.0.7

1 year ago

0.0.6

1 year ago

0.0.5

1 year ago

0.0.4

1 year ago

0.0.3

1 year ago

0.0.2

1 year ago

0.0.1

1 year ago