Skip to content

Releases: fregante/delegate-it

v6.4.0

Choose a tag to compare

@fregante fregante released this 01 May 07:54
  • Add filter callback to oneEvent (#58) b9801a7
  • Support multiple event types in delegate() (#57) 4104974

v6.3.0...v6.4.0

v6.3.0

Choose a tag to compare

@fregante fregante released this 11 Oct 05:39
  • Allow delegation to any Node, including Shadow DOM roots (#56) 9ba15fe

v6.2.1...v6.3.0

v6.2.1

Choose a tag to compare

@fregante fregante released this 28 Oct 07:50

v6.2.0...v6.2.1

v6.2.0

Choose a tag to compare

@fregante fregante released this 20 Aug 10:06

v6.1.0...v6.2.0

v6.1.0

Choose a tag to compare

@fregante fregante released this 18 Mar 14:52

v6.0.1...v6.1.0

v6.0.1

Choose a tag to compare

@fregante fregante released this 25 Apr 15:16

v6.0.0...v6.0.1

v6.0.0

Choose a tag to compare

@fregante fregante released this 25 Apr 12:03

Breaking changes

Move base to options (#46) 247ac87

- delegate(document, 'a', 'click', alert)
+ delegate('a', 'click', alert)
- delegate(myBaseElement, 'a', 'click', alert)
+ delegate('a', 'click', alert, {base: myBaseElement})

Drop support for boolean-only options (#44) 7b3dc8a

- delegate(document, 'a', 'click', alert, true)
+ delegate('a', 'click', alert, {capture: true})

Drop support for selectors and arrays as base (#45) 5b5138b

- delegate('.my-base-element', 'a', 'click', alert)
- delegate(document.querySelectorAll('.my-base-element'), 'a', 'click', alert)

New

Add promised oneEvent listener (#41) 5697313

+ await oneEvent('a', 'click')
+ console.log('link was clicked')

Add support for once (#40) 39dcce7

+ delegate('a', 'click', alert, {once: true})

v5.0.0...v6.0.0

v5.0.0

Choose a tag to compare

@fregante fregante released this 31 Aug 03:22

Breaking changes

Migration

Listener removal

v3 (old)

const delegation = delegate(document, 'a', 'click', console.log);
delegation.destroy();

v4 (old)

const controller = delegate(document, 'a', 'click', console.log);
controller.abort();

v5 (new)

This was already possible in v4, so if you were using this pattern, you don't need to change anything.

const controller = new AbortController();
delegate(document, 'a', 'click', console.log, {signal: controller.signal});
controller.abort();

v4.0.1...v5.0.0

v4.0.1

Choose a tag to compare

@fregante fregante released this 26 Jun 05:48

v4.0.0...v4.0.1

v4.0.0

Choose a tag to compare

@fregante fregante released this 23 Jun 16:24

Breaking changes

Migration

Listener removal

Before:

const delegation = delegate(document, 'a', 'click', console.log);
delegation.destroy();

After:

const controller = delegate(document, 'a', 'click', console.log);
controller.abort();

// or provide your own signal

const controller = new AbortController();
delegate(document, 'a', 'click', console.log, {signal: controller.signal});
controller.abort();

Types

Before:

import delegate from 'delegate-it'
function listener(event: delegate.Event) {}

After:

import delegate, {DelegateEvent} from 'delegate-it'
function listener(event: DelegateEvent) {}

v3.0.1...v4.0.0