Skip to content

export internal API for user customisations#21

Open
pbadenski wants to merge 1 commit intoheyimalex:masterfrom
pbadenski:export-api-for-customization
Open

export internal API for user customisations#21
pbadenski wants to merge 1 commit intoheyimalex:masterfrom
pbadenski:export-api-for-customization

Conversation

@pbadenski
Copy link

Resolves #20

  • export createMappedSelectorCreator, memoizeMap & memoizeList
  • add relevant TypeScript typings

 - export createMappedSelectorCreator, memoizeMap & memoizeList
 - add relevant TypeScript typings
@pbadenski
Copy link
Author

@heyimalex Have you had a chance to look at it?

Comment on lines +7 to +11
import {
Iterable,
List
} from "immutable";

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this create a hard dependency on immutable?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh yeah, I think it does - is that a problem?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@heyimalex hi, just a friendly reminder ;) would you like me to remove that "hard dependency"?

@heyimalex
Copy link
Owner

Sorry, I'll take a look tonight!

@Domiii
Copy link

Domiii commented Nov 28, 2020

Bump...? 😄

I guess, the library is already depending on immutable, for some reason...? (see here)

@heyimalex
Copy link
Owner

Sorry, I'll try and find some time soon!

RE: Immutable, right now it's a devDependency, so people who npm install don't need to have it installed. Using it in the types would make it an actual dependency. Maybe ts has a better way to handle this now (specifically methods that return this-type), or just some way to make it ergonomic, but I'll need a little time to think about it.

@heyimalex
Copy link
Owner

My thoughts on this right now are I can cut a release exposing the functions you need, but adding type definitions seems too difficult. If you want to try and get this running I think it'll take more than what's currently in the pr.

@heyimalex
Copy link
Owner

Released 1.0.6, lmk if that solves your problem

@pbadenski
Copy link
Author

Thanks! I should get around to it soon and will let you know!

@Domiii
Copy link

Domiii commented Dec 3, 2020

@heyimalex Did you, by any chance, publish it to NPM but forgot to push it to the repo?

@heyimalex
Copy link
Owner

@Domiii Haha my bad, it should be up now

@Domiii
Copy link

Domiii commented Dec 3, 2020

I definitely prefer your solution over this PR, as it is clean and does not suddenly change the entire purpose of the library. Sweet!

@pbadenski
Copy link
Author

@heyimalex I think ideally you might want to consider a separate library with ImmutableJS support (e.g. reselect-map-immutable). I don't think it's possible to add any type definitions for ImmutableJS part of the library otherwise without creating hard dependency on ImmutableJS.

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.

Add array index as a final argument to createArraySelector combiner

3 participants