musae 1.0.27-beta.35 → 1.0.27-beta.37

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.
@@ -137,8 +137,10 @@ var useTheme = function useTheme() {
137
137
  * for animations
138
138
  */
139
139
  var useSwitchable = function useSwitchable(_ref) {
140
- var theme = _ref.theme;
141
- var _useState = React.useState("light"),
140
+ var theme = _ref.theme,
141
+ _ref$defaultMode = _ref.defaultMode,
142
+ defaultMode = _ref$defaultMode === void 0 ? "light" : _ref$defaultMode;
143
+ var _useState = React.useState(defaultMode),
142
144
  _useState2 = _slicedToArray(_useState, 2),
143
145
  mode = _useState2[0],
144
146
  setMode = _useState2[1];
@@ -189,7 +191,7 @@ var useSwitchable = function useSwitchable(_ref) {
189
191
  if (!relax.isFunction(document.startViewTransition)) {
190
192
  var _trigger$current;
191
193
  (_trigger$current = trigger.current) === null || _trigger$current === void 0 || _trigger$current.next(nextMode);
192
- return;
194
+ return nextMode;
193
195
  }
194
196
  var animation = document.startViewTransition(function () {
195
197
  var _trigger$current2;
@@ -214,6 +216,7 @@ var useSwitchable = function useSwitchable(_ref) {
214
216
  var _document$documentEle4;
215
217
  (_document$documentEle4 = document.documentElement.classList).remove.apply(_document$documentEle4, _toConsumableArray(className.normalize(styled.lighting.className, styled.darking.className)));
216
218
  });
219
+ return nextMode;
217
220
  });
218
221
  return {
219
222
  mode: mode,
@@ -21,10 +21,11 @@ export declare const useTheme: () => ContextValue;
21
21
  * inject css names and styles into html element
22
22
  * for animations
23
23
  */
24
- export declare const useSwitchable: ({ theme }: {
24
+ export declare const useSwitchable: ({ theme, defaultMode, }: {
25
25
  theme: Theme;
26
+ defaultMode?: Mode;
26
27
  }) => {
27
28
  mode: Mode;
28
- toggle: (event?: MouseEvent) => void;
29
+ toggle: (event?: MouseEvent) => Mode;
29
30
  colors: Record<import("../../utils/color-role").ColorRole, string>;
30
31
  };
@@ -135,8 +135,10 @@ var useTheme = function useTheme() {
135
135
  * for animations
136
136
  */
137
137
  var useSwitchable = function useSwitchable(_ref) {
138
- var theme = _ref.theme;
139
- var _useState = useState("light"),
138
+ var theme = _ref.theme,
139
+ _ref$defaultMode = _ref.defaultMode,
140
+ defaultMode = _ref$defaultMode === void 0 ? "light" : _ref$defaultMode;
141
+ var _useState = useState(defaultMode),
140
142
  _useState2 = _slicedToArray(_useState, 2),
141
143
  mode = _useState2[0],
142
144
  setMode = _useState2[1];
@@ -187,7 +189,7 @@ var useSwitchable = function useSwitchable(_ref) {
187
189
  if (!isFunction(document.startViewTransition)) {
188
190
  var _trigger$current;
189
191
  (_trigger$current = trigger.current) === null || _trigger$current === void 0 || _trigger$current.next(nextMode);
190
- return;
192
+ return nextMode;
191
193
  }
192
194
  var animation = document.startViewTransition(function () {
193
195
  var _trigger$current2;
@@ -212,6 +214,7 @@ var useSwitchable = function useSwitchable(_ref) {
212
214
  var _document$documentEle4;
213
215
  (_document$documentEle4 = document.documentElement.classList).remove.apply(_document$documentEle4, _toConsumableArray(normalize(styled.lighting.className, styled.darking.className)));
214
216
  });
217
+ return nextMode;
215
218
  });
216
219
  return {
217
220
  mode: mode,
@@ -15,6 +15,7 @@ var relax = require('@aiszlab/relax');
15
15
  */
16
16
  var ThemeProvider = function ThemeProvider(_ref) {
17
17
  var _theme = _ref.theme,
18
+ defaultMode = _ref.defaultMode,
18
19
  children = _ref.children;
19
20
  var theme = React.useMemo(function () {
20
21
  if (!_theme) {
@@ -27,7 +28,8 @@ var ThemeProvider = function ThemeProvider(_ref) {
27
28
  });
28
29
  }, [_theme]);
29
30
  var _useSwitchable = hooks.useSwitchable({
30
- theme: theme
31
+ theme: theme,
32
+ defaultMode: defaultMode
31
33
  }),
32
34
  mode = _useSwitchable.mode,
33
35
  toggle = _useSwitchable.toggle,
@@ -7,5 +7,5 @@ import type { Props } from "../../types/theme";
7
7
  * theme provider
8
8
  * if user provider theme, we will merge it with presets theme
9
9
  */
10
- declare const ThemeProvider: ({ theme: _theme, children }: Props) => React.JSX.Element;
10
+ declare const ThemeProvider: ({ theme: _theme, defaultMode, children }: Props) => React.JSX.Element;
11
11
  export default ThemeProvider;
@@ -11,6 +11,7 @@ import { merge } from '@aiszlab/relax';
11
11
  */
12
12
  var ThemeProvider = function ThemeProvider(_ref) {
13
13
  var _theme = _ref.theme,
14
+ defaultMode = _ref.defaultMode,
14
15
  children = _ref.children;
15
16
  var theme = useMemo(function () {
16
17
  if (!_theme) {
@@ -23,7 +24,8 @@ var ThemeProvider = function ThemeProvider(_ref) {
23
24
  });
24
25
  }, [_theme]);
25
26
  var _useSwitchable = useSwitchable({
26
- theme: theme
27
+ theme: theme,
28
+ defaultMode: defaultMode
27
29
  }),
28
30
  mode = _useSwitchable.mode,
29
31
  toggle = _useSwitchable.toggle,
@@ -17,8 +17,13 @@ export interface Props {
17
17
  */
18
18
  children: ReactNode;
19
19
  /**
20
- * @description
21
- * theme
20
+ * @zh 默认主题模式,默认为 "light"
21
+ * @en default theme mode, defaults to "light"
22
+ */
23
+ defaultMode?: Mode;
24
+ /**
25
+ * @zh 主题配置
26
+ * @en theme configuration
22
27
  */
23
28
  theme?: Theme;
24
29
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "musae",
3
- "version": "1.0.27-beta.35",
3
+ "version": "1.0.27-beta.37",
4
4
  "description": "musae-ui",
5
5
  "author": "tutu@fantufantu.com",
6
6
  "license": "MIT",