• Robert Knight's avatar
    Improve type of `selectors` map · 4fd547b3
    Robert Knight authored
    Improve the type of the `selectors` argument to `createStoreModule` to
    link it to the type of the initial state returned by the `initialState`
    argument. This enables TS to check/infer that the first argument to
    these functions should be of the same type that `initialState` returns.
    
    In the process it was necessary to remove the `ModuleConfig` type and
    declare the type of `createStoreModule`'s `config` argument inline.
    This works around a TypeScript limitation [1]:
    
    ```
    @template State
    @template {SelectorMap<State>} Selectors // Unexpected error
    ...
    @typedef ModuleConfig
    ```
    
    But this works:
    
    ``
    @template State
    @template {SelectorMap<State>} Selectors // OK
    ...
    function createStoreModule(...) { ... }
    ```
    
    [1] https://github.com/microsoft/TypeScript/issues/43403
    4fd547b3
Name
Last commit
Last update
.github Loading commit data...
bin Loading commit data...
dev-server Loading commit data...
docs Loading commit data...
embedding-examples Loading commit data...
images Loading commit data...
requirements Loading commit data...
scripts Loading commit data...
src Loading commit data...
.babelrc Loading commit data...
.dockerignore Loading commit data...
.eslintignore Loading commit data...
.eslintrc Loading commit data...
.gitignore Loading commit data...
.npmignore Loading commit data...
.npmrc Loading commit data...
.prettierignore Loading commit data...
.python-version Loading commit data...
CODE_OF_CONDUCT Loading commit data...
Dockerfile Loading commit data...
Jenkinsfile Loading commit data...
LICENSE Loading commit data...
Makefile Loading commit data...
README.md Loading commit data...
codecov.yml Loading commit data...
gulpfile.js Loading commit data...
package.json Loading commit data...
requirements-dev.in Loading commit data...
tox.ini Loading commit data...
tsconfig.json Loading commit data...
yarn.lock Loading commit data...