@khanacademy/wonder-blocks-core 4.3.1 → 4.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -0
- package/dist/es/index.js +20 -3
- package/dist/index.js +192 -199
- package/package.json +3 -2
- package/src/__docs__/_overview_.stories.mdx +16 -0
- package/src/__docs__/exports.use-force-update.stories.mdx +18 -0
- package/src/__docs__/exports.use-online.stories.mdx +20 -0
- package/src/__tests__/__snapshots__/generated-snapshot.test.js.snap +91 -91
- package/src/components/__docs__/id-provider.stories.js +83 -0
- package/src/components/__docs__/unique-id-provider.stories.js +125 -0
- package/src/components/__docs__/view.argtypes.js +54 -0
- package/src/components/__docs__/view.stories.js +145 -0
- package/src/components/__docs__/with-ssr-placeholder.stories.js +245 -0
- package/src/components/__tests__/__snapshots__/view.test.js.snap +6 -6
- package/src/components/id-provider.js +24 -9
- package/src/components/render-state-context.js +0 -4
- package/src/components/text.js +1 -1
- package/src/components/unique-id-provider.js +12 -0
- package/src/components/view.js +21 -4
- package/src/components/with-ssr-placeholder.js +18 -15
- package/src/hooks/__tests__/use-online.test.js +68 -0
- package/src/hooks/use-online.js +29 -0
- package/src/index.js +1 -0
- package/src/util/__docs__/add-style.stories.mdx +159 -0
- package/src/util/__docs__/server.stories.mdx +34 -0
- package/src/util/types.js +2 -2
- package/src/util/__tests__/enumerate-scroll-ancestors.test.js +0 -105
- package/src/util/enumerate-scroll-ancestors.js +0 -98
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# @khanacademy/wonder-blocks-core
|
|
2
2
|
|
|
3
|
+
## 4.4.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 6ee20af9: Add `useOnline` hook to encapsulate navigator.onLine and the offline/online events
|
|
8
|
+
|
|
9
|
+
## 4.3.2
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- 5f4a4297: Make dependency on `flow-enums-runtime` explicit
|
|
14
|
+
- 2b96fd59: Change flow-enums-runtime to be peer dependencies
|
|
15
|
+
|
|
3
16
|
## 4.3.1
|
|
4
17
|
|
|
5
18
|
## 4.3.0
|
package/dist/es/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _extends from '@babel/runtime/helpers/extends';
|
|
2
2
|
import _objectWithoutPropertiesLoose from '@babel/runtime/helpers/objectWithoutPropertiesLoose';
|
|
3
3
|
import * as React from 'react';
|
|
4
|
-
import { useContext as useContext$1, useRef } from 'react';
|
|
4
|
+
import { useContext as useContext$1, useRef, useEffect as useEffect$1 } from 'react';
|
|
5
5
|
import { StyleSheet, css } from 'aphrodite';
|
|
6
6
|
|
|
7
7
|
function flatten(list) {
|
|
@@ -267,7 +267,9 @@ class WithSSRPlaceholder extends React.Component {
|
|
|
267
267
|
}
|
|
268
268
|
|
|
269
269
|
{
|
|
270
|
-
|
|
270
|
+
var _JSON$stringify;
|
|
271
|
+
|
|
272
|
+
console.log(`We got a render state we don't understand: "${(_JSON$stringify = JSON.stringify(renderState)) != null ? _JSON$stringify : ""}"`);
|
|
271
273
|
return this._maybeRender(RenderState.Root);
|
|
272
274
|
}
|
|
273
275
|
}
|
|
@@ -438,6 +440,21 @@ const useForceUpdate = () => {
|
|
|
438
440
|
return forceUpdate;
|
|
439
441
|
};
|
|
440
442
|
|
|
443
|
+
const useOnline = () => {
|
|
444
|
+
const forceUpdate = useForceUpdate();
|
|
445
|
+
useEffect$1(() => {
|
|
446
|
+
const handleChange = () => forceUpdate();
|
|
447
|
+
|
|
448
|
+
window.addEventListener("online", handleChange);
|
|
449
|
+
window.addEventListener("offline", handleChange);
|
|
450
|
+
return () => {
|
|
451
|
+
window.removeEventListener("online", handleChange);
|
|
452
|
+
window.removeEventListener("offline", handleChange);
|
|
453
|
+
};
|
|
454
|
+
}, [forceUpdate]);
|
|
455
|
+
return navigator.onLine;
|
|
456
|
+
};
|
|
457
|
+
|
|
441
458
|
const {
|
|
442
459
|
useContext,
|
|
443
460
|
useEffect,
|
|
@@ -470,4 +487,4 @@ RenderStateRoot.defaultProps = {
|
|
|
470
487
|
throwIfNested: true
|
|
471
488
|
};
|
|
472
489
|
|
|
473
|
-
export { IDProvider, RenderStateRoot, server as Server, Text, UniqueIDProvider, View, WithSSRPlaceholder, addStyle, useForceUpdate, useUniqueIdWithMock, useUniqueIdWithoutMock };
|
|
490
|
+
export { IDProvider, RenderStateRoot, server as Server, Text, UniqueIDProvider, View, WithSSRPlaceholder, addStyle, useForceUpdate, useOnline, useUniqueIdWithMock, useUniqueIdWithoutMock };
|