@atlaskit/app-provider 1.6.0 → 1.7.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 +16 -0
- package/dist/cjs/app-provider.js +0 -1
- package/dist/cjs/router-link-provider/index.js +1 -0
- package/dist/cjs/theme-provider.js +0 -13
- package/dist/es2019/app-provider.js +1 -1
- package/dist/es2019/router-link-provider/index.js +1 -0
- package/dist/es2019/theme-provider.js +1 -14
- package/dist/esm/app-provider.js +1 -1
- package/dist/esm/router-link-provider/index.js +1 -0
- package/dist/esm/theme-provider.js +1 -13
- package/dist/types/app-provider.d.ts +1 -1
- package/dist/types/router-link-provider/index.d.ts +1 -1
- package/dist/types/theme-provider.d.ts +2 -2
- package/dist/types-ts4.5/app-provider.d.ts +1 -1
- package/dist/types-ts4.5/router-link-provider/index.d.ts +1 -1
- package/dist/types-ts4.5/theme-provider.d.ts +2 -2
- package/package.json +5 -8
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# @atlaskit/app-provider
|
|
2
2
|
|
|
3
|
+
## 1.7.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#105257](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/105257)
|
|
8
|
+
[`16af4057ef04e`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/16af4057ef04e) -
|
|
9
|
+
Fixes a race condition with setting the theme. This change is no longer behind a feature flag.
|
|
10
|
+
|
|
11
|
+
## 1.6.1
|
|
12
|
+
|
|
13
|
+
### Patch Changes
|
|
14
|
+
|
|
15
|
+
- [#103996](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/pull-requests/103996)
|
|
16
|
+
[`e97a60e120280`](https://stash.atlassian.com/projects/CONFCLOUD/repos/confluence-frontend/commits/e97a60e120280) -
|
|
17
|
+
Update dependencies and remove unused internal exports.
|
|
18
|
+
|
|
3
19
|
## 1.6.0
|
|
4
20
|
|
|
5
21
|
### Minor Changes
|
package/dist/cjs/app-provider.js
CHANGED
|
@@ -5,7 +5,6 @@ var _typeof = require("@babel/runtime/helpers/typeof");
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.AppProvider = AppProvider;
|
|
9
8
|
exports.default = void 0;
|
|
10
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
10
|
var _routerLinkProvider = _interopRequireDefault(require("./router-link-provider"));
|
|
@@ -8,6 +8,7 @@ exports.default = exports.RouterLinkProviderContext = void 0;
|
|
|
8
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
9
9
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
10
10
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
11
|
+
// eslint-disable-next-line @repo/internal/react/require-jsdoc
|
|
11
12
|
var RouterLinkProviderContext = exports.RouterLinkProviderContext = /*#__PURE__*/(0, _react.createContext)({});
|
|
12
13
|
/**
|
|
13
14
|
* __RouterLinkProvider__
|
|
@@ -5,7 +5,6 @@ var _typeof = require("@babel/runtime/helpers/typeof");
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
|
-
exports.ThemeProvider = ThemeProvider;
|
|
9
8
|
exports.UNSAFE_useColorModeForMigration = UNSAFE_useColorModeForMigration;
|
|
10
9
|
exports.default = void 0;
|
|
11
10
|
exports.useColorMode = useColorMode;
|
|
@@ -145,20 +144,8 @@ function ThemeProvider(_ref) {
|
|
|
145
144
|
return _objectSpread(_objectSpread({}, theme), nextTheme);
|
|
146
145
|
});
|
|
147
146
|
}, []);
|
|
148
|
-
(0, _react.useEffect)(function () {
|
|
149
|
-
if ((0, _platformFeatureFlags.fg)('platform_dst_fix_set_theme_race')) {
|
|
150
|
-
return;
|
|
151
|
-
}
|
|
152
|
-
(0, _tokens.setGlobalTheme)(_objectSpread(_objectSpread({}, theme), {}, {
|
|
153
|
-
colorMode: reconciledColorMode
|
|
154
|
-
}));
|
|
155
|
-
}, [theme, reconciledColorMode]);
|
|
156
147
|
var lastSetGlobalThemePromiseRef = (0, _react.useRef)(null);
|
|
157
148
|
(0, _react.useEffect)(function () {
|
|
158
|
-
if (!(0, _platformFeatureFlags.fg)('platform_dst_fix_set_theme_race')) {
|
|
159
|
-
return;
|
|
160
|
-
}
|
|
161
|
-
|
|
162
149
|
/**
|
|
163
150
|
* We need to wait for any previous `setGlobalTheme` calls to finish before calling it again.
|
|
164
151
|
* This is to prevent race conditions as `setGlobalTheme` is async and mutates the DOM (e.g. sets the
|
|
@@ -94,7 +94,7 @@ function getReconciledColorMode(colorMode) {
|
|
|
94
94
|
*
|
|
95
95
|
* @internal
|
|
96
96
|
*/
|
|
97
|
-
|
|
97
|
+
function ThemeProvider({
|
|
98
98
|
children,
|
|
99
99
|
defaultColorMode,
|
|
100
100
|
defaultTheme
|
|
@@ -115,21 +115,8 @@ export function ThemeProvider({
|
|
|
115
115
|
...nextTheme
|
|
116
116
|
}));
|
|
117
117
|
}, []);
|
|
118
|
-
useEffect(() => {
|
|
119
|
-
if (fg('platform_dst_fix_set_theme_race')) {
|
|
120
|
-
return;
|
|
121
|
-
}
|
|
122
|
-
setGlobalTheme({
|
|
123
|
-
...theme,
|
|
124
|
-
colorMode: reconciledColorMode
|
|
125
|
-
});
|
|
126
|
-
}, [theme, reconciledColorMode]);
|
|
127
118
|
const lastSetGlobalThemePromiseRef = useRef(null);
|
|
128
119
|
useEffect(() => {
|
|
129
|
-
if (!fg('platform_dst_fix_set_theme_race')) {
|
|
130
|
-
return;
|
|
131
|
-
}
|
|
132
|
-
|
|
133
120
|
/**
|
|
134
121
|
* We need to wait for any previous `setGlobalTheme` calls to finish before calling it again.
|
|
135
122
|
* This is to prevent race conditions as `setGlobalTheme` is async and mutates the DOM (e.g. sets the
|
package/dist/esm/app-provider.js
CHANGED
|
@@ -9,7 +9,7 @@ var InsideAppProviderContext = /*#__PURE__*/createContext(false);
|
|
|
9
9
|
*
|
|
10
10
|
* Place it at the root of your application.
|
|
11
11
|
*/
|
|
12
|
-
|
|
12
|
+
function AppProvider(_ref) {
|
|
13
13
|
var children = _ref.children,
|
|
14
14
|
_ref$defaultColorMode = _ref.defaultColorMode,
|
|
15
15
|
defaultColorMode = _ref$defaultColorMode === void 0 ? 'light' : _ref$defaultColorMode,
|
|
@@ -102,7 +102,7 @@ function getReconciledColorMode(colorMode) {
|
|
|
102
102
|
*
|
|
103
103
|
* @internal
|
|
104
104
|
*/
|
|
105
|
-
|
|
105
|
+
function ThemeProvider(_ref) {
|
|
106
106
|
var children = _ref.children,
|
|
107
107
|
defaultColorMode = _ref.defaultColorMode,
|
|
108
108
|
defaultTheme = _ref.defaultTheme;
|
|
@@ -129,20 +129,8 @@ export function ThemeProvider(_ref) {
|
|
|
129
129
|
return _objectSpread(_objectSpread({}, theme), nextTheme);
|
|
130
130
|
});
|
|
131
131
|
}, []);
|
|
132
|
-
useEffect(function () {
|
|
133
|
-
if (fg('platform_dst_fix_set_theme_race')) {
|
|
134
|
-
return;
|
|
135
|
-
}
|
|
136
|
-
setGlobalTheme(_objectSpread(_objectSpread({}, theme), {}, {
|
|
137
|
-
colorMode: reconciledColorMode
|
|
138
|
-
}));
|
|
139
|
-
}, [theme, reconciledColorMode]);
|
|
140
132
|
var lastSetGlobalThemePromiseRef = useRef(null);
|
|
141
133
|
useEffect(function () {
|
|
142
|
-
if (!fg('platform_dst_fix_set_theme_race')) {
|
|
143
|
-
return;
|
|
144
|
-
}
|
|
145
|
-
|
|
146
134
|
/**
|
|
147
135
|
* We need to wait for any previous `setGlobalTheme` calls to finish before calling it again.
|
|
148
136
|
* This is to prevent race conditions as `setGlobalTheme` is async and mutates the DOM (e.g. sets the
|
|
@@ -35,5 +35,5 @@ interface AppProviderProps {
|
|
|
35
35
|
*
|
|
36
36
|
* Place it at the root of your application.
|
|
37
37
|
*/
|
|
38
|
-
|
|
38
|
+
declare function AppProvider({ children, defaultColorMode, defaultTheme, routerLinkComponent, UNSAFE_isThemingDisabled, }: AppProviderProps): JSX.Element;
|
|
39
39
|
export default AppProvider;
|
|
@@ -31,7 +31,7 @@ export type RouterLinkProviderContextProps<RouterLinkConfig extends Record<strin
|
|
|
31
31
|
routerLinkComponent?: RouterLinkComponent<RouterLinkConfig>;
|
|
32
32
|
};
|
|
33
33
|
export declare const RouterLinkProviderContext: React.Context<RouterLinkProviderContextProps<never>>;
|
|
34
|
-
|
|
34
|
+
type RouterLinkProviderProps = {
|
|
35
35
|
/**
|
|
36
36
|
* The rendering mechanism of router links within Design System components.
|
|
37
37
|
*/
|
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
|
2
2
|
import { type ThemeState } from '@atlaskit/tokens';
|
|
3
3
|
export type Theme = Omit<ThemeState, 'colorMode' | 'contrastMode'>;
|
|
4
4
|
export type ColorMode = 'light' | 'dark' | 'auto';
|
|
5
|
-
|
|
5
|
+
type ReconciledColorMode = Exclude<ColorMode, 'auto'>;
|
|
6
6
|
/**
|
|
7
7
|
* __UNSAFE_useColorModeForMigration()__
|
|
8
8
|
*
|
|
@@ -47,5 +47,5 @@ interface ThemeProviderProps {
|
|
|
47
47
|
*
|
|
48
48
|
* @internal
|
|
49
49
|
*/
|
|
50
|
-
|
|
50
|
+
declare function ThemeProvider({ children, defaultColorMode, defaultTheme }: ThemeProviderProps): JSX.Element;
|
|
51
51
|
export default ThemeProvider;
|
|
@@ -35,5 +35,5 @@ interface AppProviderProps {
|
|
|
35
35
|
*
|
|
36
36
|
* Place it at the root of your application.
|
|
37
37
|
*/
|
|
38
|
-
|
|
38
|
+
declare function AppProvider({ children, defaultColorMode, defaultTheme, routerLinkComponent, UNSAFE_isThemingDisabled, }: AppProviderProps): JSX.Element;
|
|
39
39
|
export default AppProvider;
|
|
@@ -31,7 +31,7 @@ export type RouterLinkProviderContextProps<RouterLinkConfig extends Record<strin
|
|
|
31
31
|
routerLinkComponent?: RouterLinkComponent<RouterLinkConfig>;
|
|
32
32
|
};
|
|
33
33
|
export declare const RouterLinkProviderContext: React.Context<RouterLinkProviderContextProps<never>>;
|
|
34
|
-
|
|
34
|
+
type RouterLinkProviderProps = {
|
|
35
35
|
/**
|
|
36
36
|
* The rendering mechanism of router links within Design System components.
|
|
37
37
|
*/
|
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
|
2
2
|
import { type ThemeState } from '@atlaskit/tokens';
|
|
3
3
|
export type Theme = Omit<ThemeState, 'colorMode' | 'contrastMode'>;
|
|
4
4
|
export type ColorMode = 'light' | 'dark' | 'auto';
|
|
5
|
-
|
|
5
|
+
type ReconciledColorMode = Exclude<ColorMode, 'auto'>;
|
|
6
6
|
/**
|
|
7
7
|
* __UNSAFE_useColorModeForMigration()__
|
|
8
8
|
*
|
|
@@ -47,5 +47,5 @@ interface ThemeProviderProps {
|
|
|
47
47
|
*
|
|
48
48
|
* @internal
|
|
49
49
|
*/
|
|
50
|
-
|
|
50
|
+
declare function ThemeProvider({ children, defaultColorMode, defaultTheme }: ThemeProviderProps): JSX.Element;
|
|
51
51
|
export default ThemeProvider;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atlaskit/app-provider",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.7.0",
|
|
4
4
|
"description": "A top level provider for the Design System.",
|
|
5
5
|
"author": "Atlassian Pty Ltd",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
},
|
|
41
41
|
"dependencies": {
|
|
42
42
|
"@atlaskit/platform-feature-flags": "^0.3.0",
|
|
43
|
-
"@atlaskit/tokens": "^3.
|
|
43
|
+
"@atlaskit/tokens": "^3.2.0",
|
|
44
44
|
"@babel/runtime": "^7.0.0",
|
|
45
45
|
"bind-event-listener": "^3.0.0"
|
|
46
46
|
},
|
|
@@ -49,16 +49,16 @@
|
|
|
49
49
|
},
|
|
50
50
|
"devDependencies": {
|
|
51
51
|
"@af/visual-regression": "*",
|
|
52
|
+
"@atlaskit/dropdown-menu": "^12.25.0",
|
|
52
53
|
"@atlaskit/ds-lib": "^3.3.0",
|
|
54
|
+
"@atlaskit/primitives": "^13.3.7",
|
|
53
55
|
"@atlaskit/ssr": "*",
|
|
54
56
|
"@atlaskit/visual-regression": "*",
|
|
55
57
|
"@testing-library/react": "^12.1.5",
|
|
56
|
-
"@testing-library/react-hooks": "^8.0.1",
|
|
57
58
|
"@testing-library/user-event": "^14.4.3",
|
|
58
59
|
"react-dom": "^16.8.0",
|
|
59
60
|
"react-resource-router": "^0.20.0",
|
|
60
|
-
"typescript": "~5.4.2"
|
|
61
|
-
"wait-for-expect": "^1.2.0"
|
|
61
|
+
"typescript": "~5.4.2"
|
|
62
62
|
},
|
|
63
63
|
"techstack": {
|
|
64
64
|
"@atlassian/frontend": {
|
|
@@ -93,9 +93,6 @@
|
|
|
93
93
|
},
|
|
94
94
|
"homepage": "https://atlassian.design/components/app-provider",
|
|
95
95
|
"platform-feature-flags": {
|
|
96
|
-
"platform_dst_fix_set_theme_race": {
|
|
97
|
-
"type": "boolean"
|
|
98
|
-
},
|
|
99
96
|
"platform-default-typography-modernized": {
|
|
100
97
|
"type": "boolean"
|
|
101
98
|
}
|