Skip to content

Commit 19544b5

Browse files
committed
Fixes #139. Add a static class name to outer div
1 parent dfe6acc commit 19544b5

File tree

5 files changed

+90
-6
lines changed

5 files changed

+90
-6
lines changed

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,5 @@ node_modules
77
dist
88
.vscode
99
storybook-static/
10-
coverage/
10+
coverage/
11+
yarn-error.log

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@
4646
"@storybook/addon-links": "^5.2.1",
4747
"@storybook/addons": "^5.2.1",
4848
"@storybook/react": "^5.2.1",
49+
"@testing-library/jest-dom": "^4.2.0",
4950
"@testing-library/react": "^9.2.0",
5051
"@types/jest": "^24.0.18",
5152
"@types/react": "^16.9.2",

src/__tests__/index.test.tsx

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,4 +137,21 @@ describe('React Infinite Scroll Component', () => {
137137
);
138138
expect(queryByText('Reached end.')).toBeTruthy();
139139
});
140+
141+
it('adds a classname to the outer div', () => {
142+
const { container } = render(
143+
<InfiniteScroll
144+
hasMore={true}
145+
dataLength={10}
146+
next={() => {}}
147+
loader={<div>Loading...</div>}
148+
>
149+
<div />
150+
</InfiniteScroll>
151+
);
152+
const outerDiv = container.getElementsByClassName(
153+
'infinite-scroll-component__outerdiv'
154+
);
155+
expect(outerDiv.length).toBeTruthy();
156+
});
140157
});

src/index.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -307,7 +307,10 @@ export default class InfiniteScroll extends Component<Props, State> {
307307
? { overflow: 'auto' }
308308
: {};
309309
return (
310-
<div style={outerDivStyle}>
310+
<div
311+
style={outerDivStyle}
312+
className="infinite-scroll-component__outerdiv"
313+
>
311314
<div
312315
className={`infinite-scroll-component ${this.props.className || ''}`}
313316
ref={(infScroll: HTMLDivElement) => (this._infScroll = infScroll)}

yarn.lock

Lines changed: 66 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -884,6 +884,13 @@
884884
dependencies:
885885
regenerator-runtime "^0.13.2"
886886

887+
"@babel/runtime@^7.5.1":
888+
version "7.6.3"
889+
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.6.3.tgz#935122c74c73d2240cafd32ddb5fc2a6cd35cf1f"
890+
integrity sha512-kq6anf9JGjW8Nt5rYfEuGRaEAaH1mkv3Bbu6rYvLOpPh/RusSJXuKPEAoZ7L7gybZkchE8+NV5g9vKF4AGAtsA==
891+
dependencies:
892+
regenerator-runtime "^0.13.2"
893+
887894
"@babel/template@^7.1.0", "@babel/template@^7.4.0", "@babel/template@^7.4.4", "@babel/template@^7.6.0":
888895
version "7.6.0"
889896
resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.6.0.tgz#7f0159c7f5012230dad64cca42ec9bdb5c9536e6"
@@ -1733,6 +1740,21 @@
17331740
pretty-format "^24.8.0"
17341741
wait-for-expect "^1.3.0"
17351742

1743+
"@testing-library/jest-dom@^4.2.0":
1744+
version "4.2.0"
1745+
resolved "https://registry.yarnpkg.com/@testing-library/jest-dom/-/jest-dom-4.2.0.tgz#32f8df3a78511b347d39374ea89dc8e0a1c2fb69"
1746+
integrity sha512-H61OmRhGPWLrj9emyISx0qjp8jvC9RWyRniuLAq75Ny5XfPiOvWfnY3Wm2Tf0HXusX+PG40I94Gw792IAtSKKg==
1747+
dependencies:
1748+
"@babel/runtime" "^7.5.1"
1749+
chalk "^2.4.1"
1750+
css "^2.2.3"
1751+
css.escape "^1.5.1"
1752+
jest-diff "^24.0.0"
1753+
jest-matcher-utils "^24.0.0"
1754+
lodash "^4.17.11"
1755+
pretty-format "^24.0.0"
1756+
redent "^3.0.0"
1757+
17361758
"@testing-library/react@^9.2.0":
17371759
version "9.2.0"
17381760
resolved "https://registry.yarnpkg.com/@testing-library/react/-/react-9.2.0.tgz#143ad2d96b03c3c334e47aaf33cc2c9b7d007123"
@@ -4111,6 +4133,21 @@ [email protected], css-what@^2.1.2:
41114133
resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.3.tgz#a6d7604573365fe74686c3f311c56513d88285f2"
41124134
integrity sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==
41134135

4136+
css.escape@^1.5.1:
4137+
version "1.5.1"
4138+
resolved "https://registry.yarnpkg.com/css.escape/-/css.escape-1.5.1.tgz#42e27d4fa04ae32f931a4b4d4191fa9cddee97cb"
4139+
integrity sha1-QuJ9T6BK4y+TGktNQZH6nN3ul8s=
4140+
4141+
css@^2.2.3:
4142+
version "2.2.4"
4143+
resolved "https://registry.yarnpkg.com/css/-/css-2.2.4.tgz#c646755c73971f2bba6a601e2cf2fd71b1298929"
4144+
integrity sha512-oUnjmWpy0niI3x/mPL8dVEI1l7MnG3+HHyRPHf+YFSbK+svOhXpmSOcDURUh2aOCgl2grzrOPt1nHLuCVFULLw==
4145+
dependencies:
4146+
inherits "^2.0.3"
4147+
source-map "^0.6.1"
4148+
source-map-resolve "^0.5.2"
4149+
urix "^0.1.0"
4150+
41144151
cssesc@^0.1.0:
41154152
version "0.1.0"
41164153
resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4"
@@ -6338,6 +6375,11 @@ indent-string@^3.0.0, indent-string@^3.2.0:
63386375
resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289"
63396376
integrity sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=
63406377

6378+
indent-string@^4.0.0:
6379+
version "4.0.0"
6380+
resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251"
6381+
integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==
6382+
63416383
indexes-of@^1.0.1:
63426384
version "1.0.1"
63436385
resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607"
@@ -6950,7 +6992,7 @@ jest-config@^24.9.0:
69506992
pretty-format "^24.9.0"
69516993
realpath-native "^1.1.0"
69526994

6953-
jest-diff@^24.9.0:
6995+
jest-diff@^24.0.0, jest-diff@^24.9.0:
69546996
version "24.9.0"
69556997
resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-24.9.0.tgz#931b7d0d5778a1baf7452cb816e325e3724055da"
69566998
integrity sha512-qMfrTs8AdJE2iqrTp0hzh7kTd2PQWrsFyj9tORoKmu32xjPjeE4NyjVRDz8ybYwqS2ik8N4hsIpiVTyFeo2lBQ==
@@ -7055,7 +7097,7 @@ jest-leak-detector@^24.9.0:
70557097
jest-get-type "^24.9.0"
70567098
pretty-format "^24.9.0"
70577099

7058-
jest-matcher-utils@^24.9.0:
7100+
jest-matcher-utils@^24.0.0, jest-matcher-utils@^24.9.0:
70597101
version "24.9.0"
70607102
resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-24.9.0.tgz#f5b3661d5e628dffe6dd65251dfdae0e87c3a073"
70617103
integrity sha512-OZz2IXsu6eaiMAwe67c1T+5tUAtQyQx27/EMEkbFAGiw52tB9em+uGbzpcgYVpA8wl0hlxKPZxrly4CXU/GjHA==
@@ -8112,6 +8154,11 @@ min-document@^2.19.0:
81128154
dependencies:
81138155
dom-walk "^0.1.0"
81148156

8157+
min-indent@^1.0.0:
8158+
version "1.0.0"
8159+
resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.0.tgz#cfc45c37e9ec0d8f0a0ec3dd4ef7f7c3abe39256"
8160+
integrity sha1-z8RcN+nsDY8KDsPdTvf3w6vjklY=
8161+
81158162
mini-css-extract-plugin@^0.7.0:
81168163
version "0.7.0"
81178164
resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.7.0.tgz#5ba8290fbb4179a43dd27cca444ba150bee743a0"
@@ -9807,7 +9854,7 @@ pretty-error@^2.1.1:
98079854
renderkid "^2.0.1"
98089855
utila "~0.4"
98099856

9810-
pretty-format@^24.3.0, pretty-format@^24.8.0, pretty-format@^24.9.0:
9857+
pretty-format@^24.0.0, pretty-format@^24.3.0, pretty-format@^24.8.0, pretty-format@^24.9.0:
98119858
version "24.9.0"
98129859
resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-24.9.0.tgz#12fac31b37019a4eea3c11aa9a959eb7628aa7c9"
98139860
integrity sha512-00ZMZUiHaJrNfk33guavqgvfJS30sLYf0f8+Srklv0AMPodGGHcoHgksZ3OThYnIvOd+8yMCn0YiEOogjlgsnA==
@@ -10479,6 +10526,14 @@ [email protected]:
1047910526
dependencies:
1048010527
minimatch "3.0.4"
1048110528

10529+
redent@^3.0.0:
10530+
version "3.0.0"
10531+
resolved "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz#e557b7998316bb53c9f1f56fa626352c6963059f"
10532+
integrity sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==
10533+
dependencies:
10534+
indent-string "^4.0.0"
10535+
strip-indent "^3.0.0"
10536+
1048210537
reduce-css-calc@^1.2.6:
1048310538
version "1.3.0"
1048410539
resolved "https://registry.yarnpkg.com/reduce-css-calc/-/reduce-css-calc-1.3.0.tgz#747c914e049614a4c9cfbba629871ad1d2927716"
@@ -11376,7 +11431,7 @@ source-list-map@^2.0.0:
1137611431
resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34"
1137711432
integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==
1137811433

11379-
source-map-resolve@^0.5.0:
11434+
source-map-resolve@^0.5.0, source-map-resolve@^0.5.2:
1138011435
version "0.5.2"
1138111436
resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.2.tgz#72e2cc34095543e43b2c62b2c4c10d4a9054f259"
1138211437
integrity sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==
@@ -11705,6 +11760,13 @@ strip-final-newline@^2.0.0:
1170511760
resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad"
1170611761
integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==
1170711762

11763+
strip-indent@^3.0.0:
11764+
version "3.0.0"
11765+
resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001"
11766+
integrity sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==
11767+
dependencies:
11768+
min-indent "^1.0.0"
11769+
1170811770
strip-json-comments@^3.0.1:
1170911771
version "3.0.1"
1171011772
resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.0.1.tgz#85713975a91fb87bf1b305cca77395e40d2a64a7"

0 commit comments

Comments
 (0)