@atlaskit/smart-card 26.1.4 → 26.1.6
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/cjs/state/store/index.js +8 -22
- package/dist/cjs/version.json +1 -1
- package/dist/es2019/state/store/index.js +6 -16
- package/dist/es2019/version.json +1 -1
- package/dist/esm/state/store/index.js +8 -21
- package/dist/esm/version.json +1 -1
- package/package.json +7 -5
- package/report.api.md +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# @atlaskit/smart-card
|
|
2
2
|
|
|
3
|
+
## 26.1.6
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`9d00501a414`](https://bitbucket.org/atlassian/atlassian-frontend/commits/9d00501a414) - Ensure legacy types are published for TS 4.5-4.8
|
|
8
|
+
- Updated dependencies
|
|
9
|
+
|
|
10
|
+
## 26.1.5
|
|
11
|
+
|
|
12
|
+
### Patch Changes
|
|
13
|
+
|
|
14
|
+
- [`6fa208a0d81`](https://bitbucket.org/atlassian/atlassian-frontend/commits/6fa208a0d81) - Fixes internal useSmartCardState to internally use useSyncExternalStore to fix bugs relating to syncronous updates to the store in the same phase that the store is subscribed to.
|
|
15
|
+
|
|
3
16
|
## 26.1.4
|
|
4
17
|
|
|
5
18
|
### Patch Changes
|
|
@@ -1,33 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
3
|
Object.defineProperty(exports, "__esModule", {
|
|
5
4
|
value: true
|
|
6
5
|
});
|
|
7
6
|
exports.useSmartCardState = useSmartCardState;
|
|
8
|
-
var
|
|
9
|
-
var _react = require("react");
|
|
7
|
+
var _withSelector = require("use-sync-external-store/shim/with-selector");
|
|
10
8
|
var _linkProvider = require("@atlaskit/link-provider");
|
|
11
|
-
var
|
|
9
|
+
var PENDING_STATE = {
|
|
10
|
+
status: 'pending'
|
|
11
|
+
};
|
|
12
12
|
function useSmartCardState(url) {
|
|
13
13
|
var _useSmartLinkContext = (0, _linkProvider.useSmartLinkContext)(),
|
|
14
14
|
store = _useSmartLinkContext.store;
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
setCardState = _useState2[1];
|
|
20
|
-
// Selector for initial and subsequent states.
|
|
21
|
-
(0, _react.useEffect)(function () {
|
|
22
|
-
var unsubscribe = store.subscribe(function () {
|
|
23
|
-
// forcing re-renders when the store changes
|
|
24
|
-
setCardState((0, _linkingCommon.getUrl)(store, url));
|
|
25
|
-
});
|
|
26
|
-
return function () {
|
|
27
|
-
return unsubscribe();
|
|
28
|
-
};
|
|
29
|
-
}, [url, store]);
|
|
30
|
-
|
|
31
|
-
// Returning fresh state for use in view components. Added as a part of the fix in EDM-4422.
|
|
32
|
-
return newCardState;
|
|
15
|
+
var cardState = (0, _withSelector.useSyncExternalStoreWithSelector)(store.subscribe, store.getState, store.getState, function (state) {
|
|
16
|
+
return state[url];
|
|
17
|
+
});
|
|
18
|
+
return cardState !== null && cardState !== void 0 ? cardState : PENDING_STATE;
|
|
33
19
|
}
|
package/dist/cjs/version.json
CHANGED
|
@@ -1,22 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { useSyncExternalStoreWithSelector } from 'use-sync-external-store/shim/with-selector';
|
|
2
2
|
import { useSmartLinkContext } from '@atlaskit/link-provider';
|
|
3
|
-
|
|
3
|
+
const PENDING_STATE = {
|
|
4
|
+
status: 'pending'
|
|
5
|
+
};
|
|
4
6
|
export function useSmartCardState(url) {
|
|
5
7
|
const {
|
|
6
8
|
store
|
|
7
9
|
} = useSmartLinkContext();
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
const [, setCardState] = useState(newCardState);
|
|
11
|
-
// Selector for initial and subsequent states.
|
|
12
|
-
useEffect(() => {
|
|
13
|
-
const unsubscribe = store.subscribe(() => {
|
|
14
|
-
// forcing re-renders when the store changes
|
|
15
|
-
setCardState(getUrl(store, url));
|
|
16
|
-
});
|
|
17
|
-
return () => unsubscribe();
|
|
18
|
-
}, [url, store]);
|
|
19
|
-
|
|
20
|
-
// Returning fresh state for use in view components. Added as a part of the fix in EDM-4422.
|
|
21
|
-
return newCardState;
|
|
10
|
+
const cardState = useSyncExternalStoreWithSelector(store.subscribe, store.getState, store.getState, state => state[url]);
|
|
11
|
+
return cardState !== null && cardState !== void 0 ? cardState : PENDING_STATE;
|
|
22
12
|
}
|
package/dist/es2019/version.json
CHANGED
|
@@ -1,26 +1,13 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { useEffect, useState } from 'react';
|
|
1
|
+
import { useSyncExternalStoreWithSelector } from 'use-sync-external-store/shim/with-selector';
|
|
3
2
|
import { useSmartLinkContext } from '@atlaskit/link-provider';
|
|
4
|
-
|
|
3
|
+
var PENDING_STATE = {
|
|
4
|
+
status: 'pending'
|
|
5
|
+
};
|
|
5
6
|
export function useSmartCardState(url) {
|
|
6
7
|
var _useSmartLinkContext = useSmartLinkContext(),
|
|
7
8
|
store = _useSmartLinkContext.store;
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
setCardState = _useState2[1];
|
|
13
|
-
// Selector for initial and subsequent states.
|
|
14
|
-
useEffect(function () {
|
|
15
|
-
var unsubscribe = store.subscribe(function () {
|
|
16
|
-
// forcing re-renders when the store changes
|
|
17
|
-
setCardState(getUrl(store, url));
|
|
18
|
-
});
|
|
19
|
-
return function () {
|
|
20
|
-
return unsubscribe();
|
|
21
|
-
};
|
|
22
|
-
}, [url, store]);
|
|
23
|
-
|
|
24
|
-
// Returning fresh state for use in view components. Added as a part of the fix in EDM-4422.
|
|
25
|
-
return newCardState;
|
|
9
|
+
var cardState = useSyncExternalStoreWithSelector(store.subscribe, store.getState, store.getState, function (state) {
|
|
10
|
+
return state[url];
|
|
11
|
+
});
|
|
12
|
+
return cardState !== null && cardState !== void 0 ? cardState : PENDING_STATE;
|
|
26
13
|
}
|
package/dist/esm/version.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/smart-card",
|
|
3
|
-
"version": "26.1.
|
|
3
|
+
"version": "26.1.6",
|
|
4
4
|
"description": "Smart card component",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/"
|
|
@@ -35,15 +35,15 @@
|
|
|
35
35
|
"@atlaskit/avatar": "^21.3.0",
|
|
36
36
|
"@atlaskit/avatar-group": "^9.3.0",
|
|
37
37
|
"@atlaskit/button": "^16.7.0",
|
|
38
|
-
"@atlaskit/dropdown-menu": "^11.
|
|
38
|
+
"@atlaskit/dropdown-menu": "^11.9.0",
|
|
39
39
|
"@atlaskit/icon": "^21.12.0",
|
|
40
40
|
"@atlaskit/icon-file-type": "^6.4.0",
|
|
41
41
|
"@atlaskit/icon-object": "^6.3.0",
|
|
42
42
|
"@atlaskit/icon-priority": "^6.3.0",
|
|
43
43
|
"@atlaskit/in-product-testing": "^0.2.0",
|
|
44
44
|
"@atlaskit/link-client-extension": "^1.1.0",
|
|
45
|
-
"@atlaskit/linking-common": "^2.
|
|
46
|
-
"@atlaskit/linking-types": "^1.
|
|
45
|
+
"@atlaskit/linking-common": "^2.10.0",
|
|
46
|
+
"@atlaskit/linking-types": "^1.6.0",
|
|
47
47
|
"@atlaskit/logo": "^13.14.0",
|
|
48
48
|
"@atlaskit/lozenge": "^11.4.0",
|
|
49
49
|
"@atlaskit/media-common": "^4.1.0",
|
|
@@ -65,10 +65,11 @@
|
|
|
65
65
|
"react-lazily-render": "^1.2.0",
|
|
66
66
|
"react-loadable": "^5.1.0",
|
|
67
67
|
"react-render-image": "^1.1.3",
|
|
68
|
+
"use-sync-external-store": "^1.2.0",
|
|
68
69
|
"uuid": "^3.1.0"
|
|
69
70
|
},
|
|
70
71
|
"peerDependencies": {
|
|
71
|
-
"@atlaskit/link-provider": "^1.6.
|
|
72
|
+
"@atlaskit/link-provider": "^1.6.2",
|
|
72
73
|
"react": "^16.8.0",
|
|
73
74
|
"react-dom": "^16.8.0",
|
|
74
75
|
"react-intl-next": "npm:react-intl@^5.18.1"
|
|
@@ -106,6 +107,7 @@
|
|
|
106
107
|
"@types/lorem-ipsum": "^1.0.2",
|
|
107
108
|
"@types/react": "^16.8.0",
|
|
108
109
|
"@types/react-loadable": "^5.4.1",
|
|
110
|
+
"@types/use-sync-external-store": "^0.0.3",
|
|
109
111
|
"abortcontroller-polyfill": "^1.1.9",
|
|
110
112
|
"brace": "^0.11.1",
|
|
111
113
|
"fetch-mock": "^8.0.0",
|
package/report.api.md
CHANGED