Skip to content

Commit bec2cf4

Browse files
chore (DVIZ-42): update TypeScript types in consumers and providers, add @types/react and @types/react-dom
1 parent 509c138 commit bec2cf4

File tree

11 files changed

+59
-50
lines changed

11 files changed

+59
-50
lines changed

wp-react-lib/package-lock.json

Lines changed: 15 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

wp-react-lib/package.json

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99
"README.md"
1010
],
1111
"main": "dist/cjs/index.js",
12-
"module": "dist/esm/index.mjs",
13-
"types": "dist/index.d.ts",
12+
"module": "dist/esm/index.js",
13+
"types": "dist/types/index.d.ts",
1414
"license": "MIT",
1515
"dependencies": {
1616
"immutable": "^4.3.7",
@@ -22,6 +22,8 @@
2222
},
2323
"devDependencies": {
2424
"@types/node": "^22.15.19",
25+
"@types/react": "18.3.11",
26+
"@types/react-dom": "18.3.1",
2527
"@vitejs/plugin-react": "^4.4.1",
2628
"rollup-plugin-preserve-directives": "^0.4.0",
2729
"typescript": "^5.8.3",
@@ -63,8 +65,8 @@
6365
],
6466
"exports": {
6567
".": {
66-
"types": "./dist/index.d.ts",
67-
"import": "./dist/esm/index.mjs",
68+
"types": "./dist/types/index.d.ts",
69+
"import": "./dist/esm/index.js",
6870
"require": "./dist/cjs/index.js"
6971
}
7072
}

wp-react-lib/src/consumers/MediaConsumer.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import React from 'react'
22
import {MediaContext} from '../providers/MediaProvider'
33

44
interface MediaConsumerProps {
5-
children: React.DetailedReactHTMLElement<any, HTMLElement>;
5+
children: React.ReactNode | React.ReactNode[] | React.ReactElement | React.ReactElement[];
66
}
77

88
const MediaConsumer = (props: MediaConsumerProps) => {
@@ -11,7 +11,7 @@ const MediaConsumer = (props: MediaConsumerProps) => {
1111
{
1212
({media, locale}) => {
1313
return media && <React.Fragment>
14-
{React.Children.map(props.children, (child => React.cloneElement(child, {media, locale})))}
14+
{React.Children.map(props.children, (child => React.cloneElement(child as React.ReactElement, {media, locale})))}
1515
</React.Fragment>
1616
}
1717
}

wp-react-lib/src/consumers/PageConsumer.tsx

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,29 @@
11
import React from 'react'
22

3-
import {PageContext} from '../providers/Context'
3+
import { PageContext } from '../providers/Context'
44

55
interface PageConsumerProps {
6-
children: React.DetailedReactHTMLElement<any, HTMLElement>;
6+
children: React.ReactNode | React.ReactNode[] | React.ReactElement | React.ReactElement[];
77
}
88

99
const PageConsumer = (props: PageConsumerProps) => {
1010

1111
return (
12-
<React.Fragment>
13-
<PageContext.Consumer>
14-
{
12+
<PageContext.Consumer>
13+
{
1514

16-
({pages, meta, locale}) => {
17-
return pages && <React.Fragment>
18-
{React.Children.map(props.children, (child => React.cloneElement(child, {
19-
pages,
20-
meta,
21-
locale
22-
})))}
23-
</React.Fragment>
24-
}
15+
({ pages, meta, locale }) => {
16+
return pages && <React.Fragment>
17+
{React.Children.map(props.children, (child => React.cloneElement(child as React.ReactElement, {
18+
pages,
19+
meta,
20+
locale
21+
})))}
22+
</React.Fragment>
2523
}
26-
</PageContext.Consumer>
27-
</React.Fragment>)
24+
}
25+
</PageContext.Consumer>
26+
)
2827
}
2928

3029

wp-react-lib/src/consumers/PostConsumer.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import React from 'react'
22
import {PostContext} from '../providers/Context';
33

44
interface PostConsumerProps {
5-
children: React.DetailedReactHTMLElement<any, HTMLElement>;
5+
children: React.ReactNode | React.ReactNode[] | React.ReactElement | React.ReactElement[];
66
}
77

88
const PostConsumer = (props: PostConsumerProps) => {
@@ -12,7 +12,7 @@ const PostConsumer = (props: PostConsumerProps) => {
1212
if (!posts) return null;
1313
return (
1414
<React.Fragment>
15-
{React.Children.map(props.children, (child => React.cloneElement(child, {posts, meta, locale})))}
15+
{React.Children.map(props.children, (child => React.cloneElement(child as React.ReactElement, {posts, meta, locale})))}
1616
</React.Fragment>
1717
);
1818
}}

wp-react-lib/src/consumers/SearchConsumer.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@ import React from 'react'
22
import {SearchContext} from '../providers/Context'
33

44
interface SearchConsumerProps {
5-
children: React.DetailedReactHTMLElement<any, HTMLElement>;
5+
children: React.ReactNode | React.ReactNode[] | React.ReactElement | React.ReactElement[];
66
}
77

88
const SearchConsumer = (props: SearchConsumerProps) => {
99
return (
1010
<SearchContext.Consumer>
1111
{({results, meta, locale}) => {
1212
return results && <React.Fragment>
13-
{React.Children.map(props.children, (child => React.cloneElement(child, {results, meta, locale})))}
13+
{React.Children.map(props.children, (child => React.cloneElement(child as React.ReactElement, {results, meta, locale})))}
1414
</React.Fragment>
1515
}}
1616
</SearchContext.Consumer>

wp-react-lib/src/consumers/SettingsConsumer.tsx

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,23 @@
11
import React from 'react'
22

3-
import {SettingsContext} from '../providers/Context'
3+
import { SettingsContext } from '../providers/Context'
44

55
interface SettingsConsumerProps {
6-
children: React.DetailedReactHTMLElement<any, HTMLElement>;
6+
children: React.ReactNode | React.ReactNode[] | React.ReactElement | React.ReactElement[];
77
}
88

99
const SettingsConsumer = (props: SettingsConsumerProps) => {
1010
return (
11-
<React.Fragment>
12-
<SettingsContext.Consumer>
13-
{
14-
(_obj) => {
15-
return _obj?.data && <React.Fragment>
16-
{React.Children.map(props.children, (child => React.cloneElement(child, {settings: _obj?.data})))}
17-
</React.Fragment>
18-
}
11+
<SettingsContext.Consumer>
12+
{
13+
(_obj) => {
14+
return _obj?.data && <React.Fragment>
15+
{React.Children.map(props.children, (child => React.cloneElement(child as React.ReactElement, { settings: _obj?.data })))}
16+
</React.Fragment>
1917
}
20-
</SettingsContext.Consumer>
21-
</React.Fragment>)
18+
}
19+
</SettingsContext.Consumer>
20+
)
2221
}
2322

2423

wp-react-lib/src/consumers/TaxonomyConsumer.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@ import React from 'react'
22
import {TaxonomyContext} from '../providers/Context'
33

44
interface TaxonomyConsumerProps {
5-
children: React.DetailedReactHTMLElement<any, HTMLElement>;
5+
children: React.ReactNode | React.ReactNode[] | React.ReactElement | React.ReactElement[];
66
}
77

88
const TaxonomyConsumer = (props: TaxonomyConsumerProps) => {
99
return (
1010
<TaxonomyContext.Consumer>
1111
{({taxonomies, locale}) => {
1212
return taxonomies && <React.Fragment>
13-
{React.Children.map(props.children, (child => React.cloneElement(child, {taxonomies, locale})))}
13+
{React.Children.map(props.children, (child => React.cloneElement(child as React.ReactElement, {taxonomies, locale})))}
1414
</React.Fragment>
1515
}}
1616
</TaxonomyContext.Consumer>

wp-react-lib/src/providers/SettingProvider.jsx

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1-
import React, { useLayoutEffect } from 'react'
1+
import React, { useLayoutEffect, useMemo } from 'react'
22
import {connect, useDispatch, useSelector} from 'react-redux'
33
import {getSettings} from '../reducers/actions'
4-
54
import {SettingsContext} from './Context'
65

76
/*
@@ -29,10 +28,8 @@ const SettingProvider = (props) => {
2928
}
3029
}, [locale, changeUUID]);
3130

32-
const memoizedData = useMemo(() => data, [data]);
33-
3431
return (
35-
<>{data && <SettingsContext.Provider value={{ data : memoizedData}}>
32+
<>{data && <SettingsContext.Provider value={{ data }}>
3633
{children}
3734
</SettingsContext.Provider>}</>
3835
);

wp-react-lib/src/providers/TaxonomyProvider.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import React from 'react'
1+
import React, { useEffect, useMemo } from 'react'
22
import {connect} from 'react-redux'
33
import {loadTaxonomy} from '../reducers/actions'
44
import {TaxonomyContext} from './Context'

0 commit comments

Comments
 (0)