Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Mar 26, 2022

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
mitt ^1.1.3 -> ^3.0.0 age adoption passing confidence

Release Notes

developit/mitt

v3.0.0

Compare Source

Mitt 3.0 adds a couple nice new features.

1. Remove all handlers of a type:

Calling .off("type") with no handler argument now removes all listeners of that type (#​123, #​124, #​129 - thanks @​sealice!).

2. New, stronger typing:

It's now possible to define explicit types for events and their arguments (#​114, thanks @​iyegoroff & @​deskoh):

import mitt from 'mitt';
const events = mitt<{ foo: string }>();
events.on('foo', e => {});  // `e` is inferred to be of type string!
events.emit('foo', 42);  // TypeError: got a number, expected a string
3. Package Exports:

As of 3.0.0, the mitt package now uses Package Exports. This shouldn't change usage or anything, it just means you're more likely to end up using the ES Module version of Mitt when running in Node.

v2.1.0

Compare Source

Mitt 2 is out of preview!
  • It's written in TypeScript and ships type definitions (#​107, thanks again @​jackfranklin!)

  • Event handlers are now stored in a Map instead of an Object.

    Upgrading: If you aren't passing an object to mitt({}), version 2 is backwards-compatible.
    If you were, turn your object into a map:

    -const handlers = {
    -  foo: [() => alert(1)]
    -};
    +const handlers = new Map();
    +handlers.set('foo', [() => alert(1)]);
    
    const events = mitt(handlers);
  • The event handler Map is now exposed as .all: (#​105, thanks @​jaylinski!)

    const events = mitt();
    events.on('foo', () => alert(1));
    events.on('bar', () => alert(2));
    
    // access handlers directly if needed:
    events.all.get('foo') // [() => alert(1)]
    
    // remove all event handlers:
    events.all.clear();

v2.0.1

Compare Source

This patch update for the 2.0 prerelease fixes missing type exports (#​101).
It also reduces size and improves performance (#​100).

v2.0.0

Compare Source

Possible Breaking Change: mitt() previously accepted an optional Object "event map" argument. In 2.0.0, events are stored in an actual JavaScript Map rather than as properties on a plain object:

import mitt from 'mitt';
- const map = {};
+ const map = new Map();

const events = mitt(map);
const foo = () => {};
events.on('foo', foo);

- map.foo // [foo];
+ map.get('foo') // [foo];

Now the good news: if you weren't using this argument, mitt@2 isn't a breaking change for you.

Also, Mitt is now written in TypeScript! Huge thanks to @​jackfranklin for doing all the work including setting up a much nicer build toolchain.

v1.2.0

Compare Source

It's Mitt's first release since 2017! That's the thing about a 200 byte library - there's not a lot of code here to necessitate constant updates. Take it as a sign of stability.

This release is primarily an improvement to the TypeScript definition we ship with Mitt:

  • You can now invoke mitt() with or without new in TypeScript (#​60/#​67 - thanks @​davidkpiano)
  • .on('*', handler) now has types that pass the correct (event, data) arguments (#​76, thanks @​zbuttram)
  • The optional all parameter, which lets you pass your own mapping of handler Arrays to Mitt, now has correct types (#​73, thanks @​jesperzach)

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@renovate
Copy link
Contributor Author

renovate bot commented Mar 24, 2023

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.

You can manually request rebase by checking the rebase/retry box above.

⚠️ Warning: custom changes will be lost.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants