@arcblock/ux 2.10.24 → 2.10.25

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.
Files changed (154) hide show
  1. package/babel.config.es.js +1 -0
  2. package/lib/ActionButton/index.js +1 -1
  3. package/lib/ActivityIndicator/index.d.ts +34 -0
  4. package/lib/ActivityIndicator/index.js +1 -1
  5. package/lib/Address/compact-text.js +1 -1
  6. package/lib/Address/did-address.js +1 -1
  7. package/lib/Address/index.js +1 -1
  8. package/lib/Address/responsive-did-address.js +1 -1
  9. package/lib/Alert/index.d.ts +12 -0
  10. package/lib/Alert/index.js +1 -1
  11. package/lib/AnimationWaiter/index.js +1 -1
  12. package/lib/Async/index.js +1 -1
  13. package/lib/Avatar/did-motif.d.ts +29 -0
  14. package/lib/Avatar/did-motif.js +1 -1
  15. package/lib/Avatar/etherscan-blockies.d.ts +5 -0
  16. package/lib/Avatar/index.d.ts +64 -0
  17. package/lib/Avatar/index.js +1 -1
  18. package/lib/Badge/index.d.ts +12 -0
  19. package/lib/Badge/index.js +1 -1
  20. package/lib/Blocklet/blocklet.d.ts +84 -0
  21. package/lib/Blocklet/blocklet.js +1 -1
  22. package/lib/Blocklet/index.d.ts +5 -0
  23. package/lib/Blocklet/utils.d.ts +3 -0
  24. package/lib/BlockletContext/index.js +1 -1
  25. package/lib/BlockletNFT/index.js +1 -1
  26. package/lib/Button/index.d.ts +3 -0
  27. package/lib/Button/wrap.d.ts +27 -0
  28. package/lib/Button/wrap.js +4 -3
  29. package/lib/CardSelector/index.js +1 -1
  30. package/lib/Center/index.js +1 -1
  31. package/lib/ClickToCopy/copy-button.js +1 -1
  32. package/lib/ClickToCopy/index.js +1 -1
  33. package/lib/CodeBlock/index.js +1 -1
  34. package/lib/Colors/index.d.ts +2 -0
  35. package/lib/Colors/themes/default.d.ts +76 -0
  36. package/lib/Colors/themes/temp.d.ts +36 -0
  37. package/lib/ContactForm/index.js +1 -1
  38. package/lib/CookieConsent/index.js +1 -1
  39. package/lib/CountDown/index.js +1 -1
  40. package/lib/DID/index.js +1 -1
  41. package/lib/Datatable/CustomToolbar.d.ts +37 -0
  42. package/lib/Datatable/CustomToolbar.js +1 -1
  43. package/lib/Datatable/DatatableContext.d.ts +4 -0
  44. package/lib/Datatable/DatatableContext.js +1 -1
  45. package/lib/Datatable/TableSearch.d.ts +28 -0
  46. package/lib/Datatable/TableSearch.js +1 -1
  47. package/lib/Datatable/index.d.ts +53 -0
  48. package/lib/Datatable/index.js +11 -3
  49. package/lib/Datatable/utils.d.ts +5 -0
  50. package/lib/Dialog/confirm.d.ts +86 -0
  51. package/lib/Dialog/confirm.js +23 -13
  52. package/lib/Dialog/dialog.d.ts +115 -0
  53. package/lib/Dialog/dialog.js +12 -7
  54. package/lib/Dialog/index.d.ts +3 -0
  55. package/lib/Dialog/use-confirm.d.ts +8 -0
  56. package/lib/Dialog/use-confirm.js +1 -1
  57. package/lib/DidLogo/index.js +1 -1
  58. package/lib/Earth/index.js +1 -1
  59. package/lib/Empty/index.d.ts +39 -0
  60. package/lib/Empty/index.js +1 -1
  61. package/lib/ErrorBoundary/fallback.js +1 -1
  62. package/lib/Footer/index.js +1 -1
  63. package/lib/Header/auto-hidden.js +1 -1
  64. package/lib/Header/header.js +1 -1
  65. package/lib/Header/responsive-header.js +1 -1
  66. package/lib/Icon/image.js +1 -1
  67. package/lib/Icon/index.d.ts +2 -0
  68. package/lib/Icon/index.js +1 -1
  69. package/lib/Img/index.d.ts +77 -0
  70. package/lib/Img/index.js +2 -1
  71. package/lib/InfoRow/index.js +1 -1
  72. package/lib/Layout/dashboard/external-link.js +1 -1
  73. package/lib/Layout/dashboard/full-page.js +1 -1
  74. package/lib/Layout/dashboard/index.js +1 -1
  75. package/lib/Layout/dashboard/sidebar.js +1 -1
  76. package/lib/Layout/dashboard-legacy/header.js +1 -1
  77. package/lib/Layout/dashboard-legacy/index.js +1 -1
  78. package/lib/Layout/dashboard-legacy/sidebar.js +1 -1
  79. package/lib/Layout/index.js +1 -1
  80. package/lib/LoadingMask/index.js +1 -1
  81. package/lib/Locale/context.js +1 -1
  82. package/lib/Locale/selector.js +1 -1
  83. package/lib/Logo/index.d.ts +42 -0
  84. package/lib/Logo/index.js +1 -1
  85. package/lib/Metric/index.js +1 -1
  86. package/lib/NFTDisplay/aspect-ratio-container.js +1 -1
  87. package/lib/NFTDisplay/broken.js +1 -1
  88. package/lib/NFTDisplay/index.js +1 -1
  89. package/lib/NFTDisplay/loading.js +1 -1
  90. package/lib/NFTDisplay/svg-embedder/img.js +1 -1
  91. package/lib/NFTDisplay/svg-embedder/inline-svg.js +1 -1
  92. package/lib/NavMenu/nav-menu.js +1 -1
  93. package/lib/PageScroller/index.js +1 -1
  94. package/lib/PageScroller/story/FullPage.js +1 -1
  95. package/lib/PageScroller/story/PageContain.js +1 -1
  96. package/lib/Passport/passport.js +1 -1
  97. package/lib/PoweredByArcBlock/index.js +1 -1
  98. package/lib/PricingTable/PricingPlan.js +1 -1
  99. package/lib/PricingTable/index.js +1 -1
  100. package/lib/QRCode/index.js +1 -1
  101. package/lib/RelativeTime/index.js +1 -1
  102. package/lib/Result/common.js +1 -1
  103. package/lib/Result/index.js +1 -1
  104. package/lib/Result/result.js +1 -1
  105. package/lib/Screenshot/BaseScreenshot/index.js +1 -1
  106. package/lib/Screenshot/index.js +1 -1
  107. package/lib/SessionBlocklet/index.js +1 -1
  108. package/lib/SessionUser/components/logged-in.js +1 -1
  109. package/lib/SessionUser/components/session-user-item.js +1 -1
  110. package/lib/SessionUser/components/session-user-switch.js +1 -1
  111. package/lib/SessionUser/components/un-login.js +1 -1
  112. package/lib/SessionUser/components/user-info.js +1 -1
  113. package/lib/SessionUser/index.js +1 -1
  114. package/lib/Spinner/index.js +1 -1
  115. package/lib/SplitButton/index.js +8 -8
  116. package/lib/Success/index.js +1 -1
  117. package/lib/Switch/index.d.ts +31 -0
  118. package/lib/Switch/index.js +1 -1
  119. package/lib/Tabs/index.js +1 -1
  120. package/lib/Tag/index.d.ts +14 -0
  121. package/lib/Tag/index.js +11 -7
  122. package/lib/TextCollapse/index.js +1 -1
  123. package/lib/Theme/index.d.ts +14 -0
  124. package/lib/Theme/index.js +9 -0
  125. package/lib/Theme/theme-provider.d.ts +25 -0
  126. package/lib/Theme/theme-provider.js +1 -1
  127. package/lib/Theme/theme.d.ts +17 -0
  128. package/lib/Theme/theme.js +21 -3
  129. package/lib/Toast/index.d.ts +11 -0
  130. package/lib/Toast/index.js +2 -1
  131. package/lib/Typography/index.js +1 -1
  132. package/lib/Util/constant.d.ts +33 -0
  133. package/lib/Util/deprecate.d.ts +5 -0
  134. package/lib/Util/deprecate.js +1 -1
  135. package/lib/Util/index.d.ts +81 -0
  136. package/lib/Video/index.js +1 -1
  137. package/lib/Wallet/Action.js +1 -1
  138. package/lib/Wallet/Download.js +1 -1
  139. package/lib/Wallet/Open.js +1 -1
  140. package/lib/WalletOSIcon/index.js +1 -1
  141. package/lib/WebWalletSWKeeper/index.js +1 -1
  142. package/lib/WechatPrompt/index.js +1 -1
  143. package/lib/withTheme/index.js +1 -1
  144. package/lib/withTracker/error_boundary.js +1 -1
  145. package/lib/withTracker/index.js +1 -1
  146. package/package.json +13 -7
  147. package/src/Button/wrap.js +3 -2
  148. package/src/Datatable/index.jsx +9 -2
  149. package/src/Dialog/confirm.jsx +22 -12
  150. package/src/Dialog/dialog.jsx +11 -6
  151. package/src/SplitButton/index.js +7 -7
  152. package/src/Tag/index.js +10 -6
  153. package/src/Theme/index.js +8 -0
  154. package/src/Theme/theme.js +20 -3
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  /* eslint-disable jsx-a11y/control-has-associated-label */
2
3
  import { useState } from 'react';
3
4
  import Button from '../../Button';
@@ -8,7 +9,6 @@ import ThirdComponent from './ThirdComponent';
8
9
  import FourthComponent from './FourthComponent';
9
10
  import FifthComponent from './FifthComponent';
10
11
  import './index.css';
11
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
12
12
  export default function FullPage() {
13
13
  const [current, setCurrent] = useState(0);
14
14
  const pageNumbers = [];
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  /* eslint-disable jsx-a11y/control-has-associated-label */
2
3
  import { useState } from 'react';
3
4
  import Button from '../../Button';
@@ -8,7 +9,6 @@ import ThirdComponent from './ThirdComponent';
8
9
  import FourthComponent from './FourthComponent';
9
10
  import FifthComponent from './FifthComponent';
10
11
  import './index.css';
11
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
12
12
  export default function FullPage() {
13
13
  const [current, setCurrent] = useState(0);
14
14
  const pageNumbers = [];
@@ -1,9 +1,9 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  import PropTypes from 'prop-types';
2
3
  import upperFirst from 'lodash/upperFirst';
3
4
  import { Box } from '@mui/material';
4
5
  import { useLocaleContext } from '@arcblock/ux/lib/Locale/context';
5
6
  import RevokeIcon from '@arcblock/icons/lib/RevokeIcon';
6
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
7
  export default function Passport({
8
8
  passport,
9
9
  user,
@@ -1,6 +1,6 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  import PropTypes from 'prop-types';
2
3
  import { Link, Typography } from '@mui/material';
3
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
4
4
  export default function PoweredByArcBlock({
5
5
  linkProps,
6
6
  ...props
@@ -1,10 +1,10 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  import PropTypes from 'prop-types';
2
3
  import Card from '@mui/material/Card';
3
4
  import Button from '@mui/material/Button';
4
5
  import CardContent from '@mui/material/CardContent';
5
6
  import Typography from '@mui/material/Typography';
6
7
  import { styled } from '../Theme';
7
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
8
8
  function PricingPlan({
9
9
  plan
10
10
  }) {
@@ -1,9 +1,9 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import PropTypes from 'prop-types';
2
3
  import Grid from '@mui/material/Grid';
3
4
  import PricingPlan from './PricingPlan';
4
5
  import { styled } from '../Theme';
5
6
  import { withDeprecated } from '../Util/deprecate';
6
- import { jsx as _jsx } from "react/jsx-runtime";
7
7
  function PricingTable({
8
8
  plans
9
9
  }) {
@@ -1,8 +1,8 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import { useRef, useEffect, useMemo, useState } from 'react';
2
3
  import PropTypes from 'prop-types';
3
4
  import QRCodeStyling from '@solana/qr-code-styling';
4
5
  import { Box } from '@mui/material';
5
- import { jsx as _jsx } from "react/jsx-runtime";
6
6
  const defaults = {
7
7
  margin: 0,
8
8
  dotsOptions: {
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import PropTypes from 'prop-types';
2
3
  import relativeTime from 'dayjs/plugin/relativeTime';
3
4
  import dayjs from 'dayjs';
@@ -8,7 +9,6 @@ import utc from 'dayjs/plugin/utc';
8
9
  import timezone from 'dayjs/plugin/timezone';
9
10
  import updateLocale from 'dayjs/plugin/updateLocale';
10
11
  import { formatToDatetime, setDateTool } from '../Util';
11
- import { jsx as _jsx } from "react/jsx-runtime";
12
12
  dayjs.extend(localizedFormat);
13
13
  dayjs.extend(utc);
14
14
  dayjs.extend(timezone);
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  /* eslint-disable react/prop-types */
2
3
  /* eslint-disable no-param-reassign */
3
4
  import InfoIcon from '@mui/icons-material/Info';
@@ -8,7 +9,6 @@ import { useLocaleContext } from '../Locale/context';
8
9
  import { useTheme } from '../Theme';
9
10
 
10
11
  // 优先使用显式指定的 locale, 再尝试使用 context 中的 locale, 最后使用默认 'en'
11
- import { jsx as _jsx } from "react/jsx-runtime";
12
12
  const useLocale = locale => {
13
13
  locale = ['zh', 'en'].includes(locale) ? locale : '';
14
14
  const {
@@ -1,7 +1,7 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import PropTypes from 'prop-types';
2
3
  import Result from './result';
3
4
  import * as common from './common';
4
- import { jsx as _jsx } from "react/jsx-runtime";
5
5
  const componentsKeyByStatus = Object.keys(common).reduce((acc, cur) => ({
6
6
  ...acc,
7
7
  [common[cur].status || cur]: common[cur]
@@ -1,7 +1,7 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  import PropTypes from 'prop-types';
2
3
  import Box from '@mui/material/Box';
3
4
  import { styled } from '../Theme';
4
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
5
  function Result({
6
6
  icon,
7
7
  title,
@@ -1,8 +1,8 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  import { styled } from '@arcblock/ux/lib/Theme';
2
3
  import PropTypes from 'prop-types';
3
4
  import phone from './shells/Phone';
4
5
  import macbook from './shells/Macbook';
5
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
6
6
  const map = {
7
7
  phone,
8
8
  macbook
@@ -1,10 +1,10 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  import { createElement, Children, cloneElement, useEffect, useRef, useState } from 'react';
2
3
  import PropTypes from 'prop-types';
3
4
  import { mergeProps } from '../Util';
4
5
  import { styled } from '../Theme';
5
6
  import BaseScreenshot from './BaseScreenshot';
6
7
  import './devices.css';
7
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
8
8
  const types = {
9
9
  'iphone-x': {
10
10
  borderRadius: 32,
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
1
2
  import { useRef } from 'react';
2
3
  import PropTypes from 'prop-types';
3
4
  import { Box, ClickAwayListener, Fade, IconButton, List, ListItem, ListItemButton, Paper, Popper, Typography } from '@mui/material';
@@ -10,7 +11,6 @@ import { temp as colors } from '../Colors';
10
11
  import { AUTH_SERVICE_PREFIX, NAVIGATION_URL } from '../Util/constant';
11
12
  import SessionPermission from '../SessionPermission';
12
13
  import { getTranslation } from '../Util';
13
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
14
14
  export default function SessionBlocklet({
15
15
  session,
16
16
  locale,
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  import PropTypes from 'prop-types';
2
3
  import { useRef } from 'react';
3
4
  import { useMemoizedFn, useReactive } from 'ahooks';
@@ -15,7 +16,6 @@ import { DASHBOARD_URL, PROFILE_URL } from '../../Util/constant';
15
16
  import SessionPermission from '../../SessionPermission';
16
17
  import { translations } from '../libs/translation';
17
18
  import { translate } from '../../Locale/util';
18
- import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
19
19
  export default function LoggedIn({
20
20
  session,
21
21
  dark,
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  import PropTypes from 'prop-types';
2
3
  import { forwardRef } from 'react';
3
4
  import { Box, IconButton, Tooltip, Typography } from '@mui/material';
@@ -8,7 +9,6 @@ import Avatar from '../../Avatar';
8
9
  import DID from '../../DID';
9
10
  import { temp as colors } from '../../Colors';
10
11
  import { getSourceProvider } from '../libs/utils';
11
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
12
12
  const SessionUserItem = /*#__PURE__*/forwardRef(({
13
13
  sessionItem,
14
14
  statusContent,
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
1
2
  import PropTypes from 'prop-types';
2
3
  import { Box, ClickAwayListener, Divider, Fade, LinearProgress, MenuItem, MenuList, Paper, Popper } from '@mui/material';
3
4
  import { useRef } from 'react';
@@ -12,7 +13,6 @@ import { temp as colors } from '../../Colors';
12
13
  import { getVisitorId } from '../../Util';
13
14
  import { translate } from '../../Locale/util';
14
15
  import { translations } from '../libs/translation';
15
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
16
16
  export default function SessionUserSwitch({
17
17
  session,
18
18
  onSwitch,
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import PropTypes from 'prop-types';
2
3
  import { Box, CircularProgress, IconButton } from '@mui/material';
3
4
  import { Icon } from '@iconify/react';
@@ -5,7 +6,6 @@ import PersonOutlineRoundedIcon from 'iconify-icons-material-symbols-400/person-
5
6
  import { useRef } from 'react';
6
7
  import { useMemoizedFn } from 'ahooks';
7
8
  import noop from 'lodash/noop';
8
- import { jsx as _jsx } from "react/jsx-runtime";
9
9
  export default function UnLogin({
10
10
  session,
11
11
  onLogin,
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  import PropTypes from 'prop-types';
2
3
  import { Box, Chip, Typography } from '@mui/material';
3
4
  import { Icon } from '@iconify/react';
@@ -12,7 +13,6 @@ import { temp as colors } from '../../Colors';
12
13
  import { getWallet } from '../libs/utils';
13
14
  import { translations } from '../libs/translation';
14
15
  import { translate } from '../../Locale/util';
15
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
16
16
  export default function UserInfo({
17
17
  session,
18
18
  onSwitchPassport,
@@ -1,9 +1,9 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import PropTypes from 'prop-types';
2
3
  import noop from 'lodash/noop';
3
4
  import { useCreation } from 'ahooks';
4
5
  import LoggedIn from './components/logged-in';
5
6
  import UnLogin from './components/un-login';
6
- import { jsx as _jsx } from "react/jsx-runtime";
7
7
  export default function SessionUser({
8
8
  session,
9
9
  onBindWallet,
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import CircularProgress from '@mui/material/CircularProgress';
2
3
  import { withDeprecated } from '../Util/deprecate';
3
4
 
@@ -9,7 +10,6 @@ import { withDeprecated } from '../Util/deprecate';
9
10
  * - 之前 size prop 是 array 类型, 需要与 CircularProgress#size 兼容
10
11
  * - color 默认使用 #4598fa, 如果调用方传入了 color prop 或 style#color, 则默认 color 被覆盖
11
12
  */
12
- import { jsx as _jsx } from "react/jsx-runtime";
13
13
  function Spinner(props) {
14
14
  const _props = {
15
15
  ...props
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
1
2
  import { useState, useRef, isValidElement, createElement as _createElement } from 'react';
2
3
  import PropTypes from 'prop-types';
3
4
  import ExpandMore from '@mui/icons-material/ExpandMore';
@@ -12,13 +13,12 @@ import noop from 'lodash/noop';
12
13
  import { styled } from '../Theme';
13
14
 
14
15
  /**
16
+ * @typedef {import('@mui/material').MenuItem} MenuItem
17
+ * @typedef {import('@mui/material').MenuItemProps} MenuItemProps
15
18
  * SplitButton 组件 Props
16
19
  * @typedef {{
17
- * size?: 'small' | 'medium' | 'large';
18
- * color?: 'primary' | 'secondary' | 'inherit';
19
- * menu?: Array<import('@mui/material').MenuItem> | import('@mui/material').MenuItem;
20
+ * menu?: React.ReactElement<MenuItemProps, MenuItem>[] | React.ReactElement<MenuItemProps, MenuItem>;
20
21
  * children?: JSX.Element | (() => JSX.Element);
21
- * variant?: 'outlined' | 'contained';
22
22
  * onClick?: () => void;
23
23
  * menuButtonProps?: import('@mui/material').ButtonProps;
24
24
  * } & import('@mui/material').ButtonGroupProps } SplitButtonProps
@@ -30,7 +30,6 @@ import { styled } from '../Theme';
30
30
  * @param {SplitButtonProps} props
31
31
  * @return {JSX.Element}
32
32
  */
33
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
34
33
  export default function SplitButton(props) {
35
34
  const {
36
35
  size,
@@ -101,8 +100,8 @@ export default function SplitButton(props) {
101
100
  });
102
101
  }
103
102
  SplitButton.propTypes = {
104
- size: PropTypes.oneOf(['small', 'medium', 'large']),
105
- color: PropTypes.oneOf(['primary', 'secondary', 'inherit']),
103
+ size: PropTypes.string,
104
+ color: PropTypes.string,
106
105
  menu: PropTypes.oneOfType([PropTypes.node, PropTypes.array]),
107
106
  // 也可以是用于渲染主按钮的 function
108
107
  children: PropTypes.node,
@@ -119,8 +118,9 @@ SplitButton.defaultProps = {
119
118
  onClick: noop,
120
119
  menuButtonProps: {}
121
120
  };
121
+
122
122
  /**
123
- * @type {import('@mui/material').MenuItem}
123
+ * @type {MenuItem}
124
124
  */
125
125
  SplitButton.Item = MenuItem;
126
126
  const StyledButtonGroup = styled(ButtonGroup)`
@@ -1,8 +1,8 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  import PropTypes from 'prop-types';
2
3
  import { Box } from '@mui/material';
3
4
 
4
5
  // FIXME: @zhanghan 目前无法适配各种 size,后续优化
5
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
6
6
  export default function Success({
7
7
  size,
8
8
  backgroundColor,
@@ -0,0 +1,31 @@
1
+ export default Switch;
2
+ /**
3
+ * Switch 组件 Props
4
+ */
5
+ export type SwitchProps = {
6
+ labelProps?: import("@mui/material").FormControlLabelProps;
7
+ } & import("@mui/material").SwitchProps;
8
+ /**
9
+ * Switch 组件 Props
10
+ * @typedef {{
11
+ * labelProps?: import('@mui/material').FormControlLabelProps;
12
+ * } & import('@mui/material').SwitchProps } SwitchProps
13
+ */
14
+ /**
15
+ * 抽取 blocklet server 中使用的 iOS 风格的 Switch,
16
+ * 该组件把 FormControlLabel 和 MuiSwitch 组合在一起,
17
+ * 兼容 mui Switch props, 使用 labelProps 控制 FormControlLabel
18
+ * @param {SwitchProps} props
19
+ * @returns {JSX.Element}
20
+ */
21
+ declare function Switch({ labelProps, ...rest }: SwitchProps): JSX.Element;
22
+ declare namespace Switch {
23
+ namespace propTypes {
24
+ let labelProps: PropTypes.Requireable<object>;
25
+ }
26
+ namespace defaultProps {
27
+ let labelProps_1: any;
28
+ export { labelProps_1 as labelProps };
29
+ }
30
+ }
31
+ import PropTypes from 'prop-types';
@@ -1,10 +1,10 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import PropTypes from 'prop-types';
2
3
  import FormControlLabel from '@mui/material/FormControlLabel';
3
4
  import MuiSwitch from '@mui/material/Switch';
4
5
  import { styled } from '../Theme';
5
6
 
6
7
  // 参考: https://mui.com/material-ui/react-switch/#customization
7
- import { jsx as _jsx } from "react/jsx-runtime";
8
8
  const IOSSwitch = styled(props => /*#__PURE__*/_jsx(MuiSwitch, {
9
9
  focusVisibleClassName: ".Mui-focusVisible",
10
10
  disableRipple: true,
package/lib/Tabs/index.js CHANGED
@@ -1,8 +1,8 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import PropTypes from 'prop-types';
2
3
  import { Tabs as MuiTabs, Tab as MuiTab } from '@mui/material';
3
4
  import { temp as colors } from '../Colors';
4
5
  import { styled } from '../Theme';
5
- import { jsx as _jsx } from "react/jsx-runtime";
6
6
  const PREFIX = 'index';
7
7
  const classes = {
8
8
  tabs: `${PREFIX}-tabs`,
@@ -0,0 +1,14 @@
1
+ export default TagComponent;
2
+ export type TypographyProps = import("@mui/material/Typography").TypographyProps;
3
+ export type TagOwnProps = {
4
+ type?: "error" | "warning" | "success" | "primary" | "reverse";
5
+ content?: string;
6
+ className?: string;
7
+ children: import("react").ReactNode;
8
+ style?: import("react").CSSProperties;
9
+ };
10
+ export type TagProps = TypographyProps & TagOwnProps;
11
+ /**
12
+ * @type {React.ForwardRefExoticComponent<React.PropsWithoutRef<TagProps> & React.RefAttributes<HTMLSpanElement>>}
13
+ */
14
+ declare const TagComponent: React.ForwardRefExoticComponent<React.PropsWithoutRef<TagProps> & React.RefAttributes<HTMLSpanElement>>;
package/lib/Tag/index.js CHANGED
@@ -1,10 +1,10 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
1
2
  import { forwardRef } from 'react';
2
3
  import PropTypes from 'prop-types';
3
4
  import Typography from '@mui/material/Typography';
4
5
  import { mergeProps } from '../Util';
5
6
  import colors from '../Colors';
6
7
  import { useTheme, styled } from '../Theme';
7
- import { jsx as _jsx } from "react/jsx-runtime";
8
8
  const types = {
9
9
  error: {
10
10
  color: colors.common.white,
@@ -29,13 +29,15 @@ const types = {
29
29
  };
30
30
 
31
31
  /**
32
+ * @typedef {import('@mui/material/Typography').TypographyProps} TypographyProps
32
33
  * @typedef {{
33
- * type: 'error' | 'warning' | 'success' | 'primary' | 'reverse',
34
- * content: string,
35
- * className: string;
34
+ * type?: 'error' | 'warning' | 'success' | 'primary' | 'reverse',
35
+ * content?: string,
36
+ * className?: string;
36
37
  * children: import('react').ReactNode,
37
- * style: import('react').CSSProperties
38
- * }} TagProps
38
+ * style?: import('react').CSSProperties
39
+ * }} TagOwnProps
40
+ * @typedef { TypographyProps & TagOwnProps} TagProps
39
41
  */
40
42
 
41
43
  /**
@@ -87,7 +89,9 @@ Tag.defaultProps = {
87
89
  style: {}
88
90
  };
89
91
 
90
- /** @type {React.ForwardRefExoticComponent<React.PropsWithoutRef<TagProps> & React.RefAttributes<HTMLSpanElement>>} */
92
+ /**
93
+ * @type {React.ForwardRefExoticComponent<React.PropsWithoutRef<TagProps> & React.RefAttributes<HTMLSpanElement>>}
94
+ */
91
95
  const TagComponent = /*#__PURE__*/forwardRef((props, ref) => /*#__PURE__*/_jsx(Tag, {
92
96
  ...props,
93
97
  forwardedRef: ref
@@ -1,8 +1,8 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  import PropTypes from 'prop-types';
2
3
  import Typography from '@mui/material/Typography';
3
4
  import { styled } from '../Theme';
4
5
  import { withDeprecated } from '../Util/deprecate';
5
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
6
6
  function TextCollapse({
7
7
  children,
8
8
  startChars,
@@ -0,0 +1,14 @@
1
+ export * from "./theme";
2
+ export { default as ThemeProvider } from "./theme-provider";
3
+ export { useTheme };
4
+ /**
5
+ * @typedef {import('@mui/material/styles').Theme} Theme
6
+ * @typedef {import('@mui/material/styles').CreateMUIStyled<Theme>} Styled
7
+ */
8
+ /**
9
+ * @type {Styled}
10
+ */
11
+ export const styled: Styled;
12
+ export type Theme = import("@mui/material/styles").Theme;
13
+ export type Styled = import("@mui/material/styles").CreateMUIStyled<Theme>;
14
+ import { useTheme } from '@mui/material/styles';
@@ -3,6 +3,15 @@ export * from './theme';
3
3
  export { default as ThemeProvider } from './theme-provider';
4
4
  export { useTheme };
5
5
  const isTransientProp = prop => prop.startsWith('$');
6
+
7
+ /**
8
+ * @typedef {import('@mui/material/styles').Theme} Theme
9
+ * @typedef {import('@mui/material/styles').CreateMUIStyled<Theme>} Styled
10
+ */
11
+
12
+ /**
13
+ * @type {Styled}
14
+ */
6
15
  export const styled = (component, options = {}) => {
7
16
  return muiStyled(component, {
8
17
  ...options,
@@ -0,0 +1,25 @@
1
+ /**
2
+ * 默认的 theme provider, 可以为 webapp/blocklet 快捷的配置好 mui theme provider
3
+ */
4
+ declare function ThemeProvider({ children, theme, injectFirst }: {
5
+ children: any;
6
+ theme: any;
7
+ injectFirst: any;
8
+ }): import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
9
+ declare namespace ThemeProvider {
10
+ namespace propTypes {
11
+ let children: PropTypes.Requireable<any>;
12
+ let theme: PropTypes.Requireable<any>;
13
+ let injectFirst: PropTypes.Requireable<boolean>;
14
+ }
15
+ namespace defaultProps {
16
+ let children_1: any;
17
+ export { children_1 as children };
18
+ export { defaultTheme as theme };
19
+ let injectFirst_1: boolean;
20
+ export { injectFirst_1 as injectFirst };
21
+ }
22
+ }
23
+ export default ThemeProvider;
24
+ import PropTypes from 'prop-types';
25
+ declare const defaultTheme: import("@mui/material/styles").Theme;
@@ -1,9 +1,9 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  import PropTypes from 'prop-types';
2
3
  import { ThemeProvider as MuiThemeProvider } from '@mui/material/styles';
3
4
  import StyledEngineProvider from '@mui/material/StyledEngineProvider';
4
5
  import CssBaseline from '@mui/material/CssBaseline';
5
6
  import { createTheme } from './theme';
6
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
7
7
  const defaultTheme = createTheme();
8
8
 
9
9
  /**
@@ -0,0 +1,17 @@
1
+ export function create({ mode, pageWidth, palette, typography, overrides, ...rest }?: {
2
+ mode?: string;
3
+ pageWidth?: string;
4
+ palette?: import("@mui/material/styles").PaletteOptions;
5
+ typography?: TypographyVariantsOptions;
6
+ overrides?: Components<Omit<Theme, "components">>;
7
+ }): Theme;
8
+ export function createTheme({ mode, pageWidth, palette, typography, overrides, ...rest }?: {
9
+ mode?: string;
10
+ pageWidth?: string;
11
+ palette?: import("@mui/material/styles").PaletteOptions;
12
+ typography?: TypographyVariantsOptions;
13
+ overrides?: Components<Omit<Theme, "components">>;
14
+ }): Theme;
15
+ export type Theme = import("@mui/material/styles").Theme;
16
+ export type TypographyVariantsOptions = import("@mui/material/styles").TypographyVariantsOptions;
17
+ export type Components = import("@mui/material/styles").Components;
@@ -10,6 +10,13 @@ import '@fontsource/inter/latin-ext-400.css';
10
10
  import '@fontsource/inter/latin-ext-500.css';
11
11
  import '@fontsource/inter/latin-ext-700.css';
12
12
  import colors from '../Colors';
13
+
14
+ /**
15
+ * @typedef {import('@mui/material/styles').Theme} Theme
16
+ * @typedef {import('@mui/material/styles').TypographyVariantsOptions} TypographyVariantsOptions
17
+ * @typedef {import('@mui/material/styles').Components} Components
18
+ */
19
+
13
20
  const muiDarkTheme = _createTheme({
14
21
  palette: {
15
22
  mode: 'dark'
@@ -17,13 +24,24 @@ const muiDarkTheme = _createTheme({
17
24
  });
18
25
 
19
26
  // https://material-ui.com/customization/default-theme/
20
- // eslint-disable-next-line import/prefer-default-export
27
+ /**
28
+ * @description
29
+ * @export
30
+ * @param {{
31
+ * mode?: string,
32
+ * pageWidth?: string,
33
+ * palette?: import('@mui/material/styles').PaletteOptions,
34
+ * typography?: TypographyVariantsOptions,
35
+ * overrides?: Components<Omit<Theme, 'components'>>,
36
+ * }} options
37
+ * @return {Theme}
38
+ */
21
39
  export const create = ({
22
40
  mode = 'light',
23
41
  pageWidth = 'md',
24
42
  palette,
25
43
  typography,
26
- overrides,
44
+ overrides = {},
27
45
  ...rest
28
46
  } = {}) => {
29
47
  // palette 考虑 light & dark mode, dark mode 需要持续完善
@@ -62,7 +80,7 @@ export const create = ({
62
80
  button: {
63
81
  fontWeight: 700
64
82
  }
65
- }, typography || {}),
83
+ }, typography),
66
84
  components: {
67
85
  MuiButton: {
68
86
  styleOverrides: {
@@ -0,0 +1,11 @@
1
+ declare namespace _default {
2
+ let success: EnqueueSnackbarFunc;
3
+ let error: EnqueueSnackbarFunc;
4
+ let warning: EnqueueSnackbarFunc;
5
+ let info: EnqueueSnackbarFunc;
6
+ }
7
+ export default _default;
8
+ export type EnqueueSnackbarFunc = (message: import("notistack").SnackbarMessage, options?: import("notistack").OptionsObject, ...args: any[]) => import("notistack").SnackbarKey;
9
+ export function ToastProvider({ children }: {
10
+ children: any;
11
+ }): import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
@@ -1,3 +1,4 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  import { createRef } from 'react';
2
3
  import { SnackbarProvider, useSnackbar } from 'notistack';
3
4
  import IconButton from '@mui/material/IconButton';
@@ -13,7 +14,7 @@ import noop from 'lodash/noop';
13
14
  /**
14
15
  * @type {import('notistack').ProviderContext['enqueueSnackbar']}
15
16
  */
16
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
17
+
17
18
  let success = noop;
18
19
  let error = noop;
19
20
  let warning = noop;
@@ -1,8 +1,8 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
1
2
  import PropTyps from 'prop-types';
2
3
  import { Box, Typography as MuiTypography, Skeleton } from '@mui/material';
3
4
  import { useCreation, useReactive, useSize } from 'ahooks';
4
5
  import { useEffect, useRef } from 'react';
5
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
6
6
  export default function Typography({
7
7
  minFontSize,
8
8
  fontSize,