8.2.3 • Published 5 months ago

inferno-extras v8.2.3

Weekly downloads
2,694
License
MIT
Repository
github
Last release
5 months ago

inferno-extras

Is a collection of pure functions to ease some tasks with InfernoJS virtual DOM.

Install

npm install inferno-extras

isDOMInsideComponent

DOM - Html node

instance - Class component instance

Returns boolean:

  • true when DOM is found from children of given instance;
  • false when DOM node is not found.
import { isDOMInsideComponent } from 'inferno-extras';

isDOMInsideComponent(
  DOM,
  instance,
)

Motivation:

InfernoJS events bubble through the real DOM. This can cause issues when you need to for example: stop event propagation from all child Components. Native node.contains( otherNode ) returns false when Portal renders outside its root node. This utility method solves the problem using non recursive DFS algorithm.

Example:

import { Component } from 'inferno';
import { isDOMinsideVDOM } from 'inferno-extras';

class Clicker extends Component {

  isClickOutside(event) {
    // Check if click event came from any child component
    if (!isDOMInsideComponent(event.target, this) {
      this.setState({ closeMenu: true });
    }
  }

...
}

isDOMInsideVNode

Exactly same as isDOMInsideComponent but second parameter is virtual node.

8.2.3

5 months ago

8.2.2

10 months ago

8.2.1

11 months ago

8.2.0

11 months ago

8.1.1

1 year ago

8.1.0

1 year ago

8.0.6

1 year ago

8.0.5

1 year ago

8.0.4

2 years ago

8.0.0-alpha.6

2 years ago

8.0.1

2 years ago

8.0.0

2 years ago

8.0.3

2 years ago

8.0.2

2 years ago

8.0.0-alpha.5

2 years ago

8.0.0-alpha.4

2 years ago

8.0.0-alpha.3

2 years ago

8.0.0-alpha.2

2 years ago

7.4.11

2 years ago

8.0.0-alpha.1

3 years ago

8.0.0-alpha.0

3 years ago

7.4.10

3 years ago

7.4.9

3 years ago

7.4.8

3 years ago

7.4.7

3 years ago

5.6.2

3 years ago

7.4.6

4 years ago

7.4.4

4 years ago

7.4.5

4 years ago

7.4.3

4 years ago

7.4.2

4 years ago

7.4.1

4 years ago

7.4.0

4 years ago

7.3.3

4 years ago

7.3.2

5 years ago

7.3.1

5 years ago

7.3.0

5 years ago

7.2.1

5 years ago

7.2.0

5 years ago

7.1.13

5 years ago

7.1.12

5 years ago

7.1.11

5 years ago

7.1.10

5 years ago

7.1.9

5 years ago

7.1.8

5 years ago

7.1.7

5 years ago

7.1.6

5 years ago

7.1.5

5 years ago

7.1.4

5 years ago

7.1.3

5 years ago

7.1.2

5 years ago

7.1.1

5 years ago

7.1.0

5 years ago

7.0.5

5 years ago

7.0.4

5 years ago

7.0.2

5 years ago

7.0.1

5 years ago

7.0.0

5 years ago

6.3.1

5 years ago

6.3.0

5 years ago

6.2.1

5 years ago

6.2.0

5 years ago

6.1.5

5 years ago

6.1.4

5 years ago

6.1.3

5 years ago

6.1.2

5 years ago

6.1.1

5 years ago

6.1.0

5 years ago

6.0.3

6 years ago

6.0.2

6 years ago

6.0.1

6 years ago

6.0.0

6 years ago

6.0.0-rc.5

6 years ago

6.0.0-rc.3

6 years ago

6.0.0-rc.1

6 years ago

6.0.0-rc.0

6 years ago

6.0.0-alpha.3

6 years ago

6.0.0-alpha.2

6 years ago

6.0.0-alpha.1

6 years ago

5.6.1

6 years ago