@oceanbase/design 1.0.0-alpha.5 → 1.0.0-alpha.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.
@@ -45,7 +45,9 @@ var import_static_function = __toESM(require("../static-function"));
45
45
  var import_theme = __toESM(require("../theme"));
46
46
  var import_default = __toESM(require("../theme/default"));
47
47
  var import_dark = __toESM(require("../theme/dark"));
48
+ var import_compact = __toESM(require("../theme/compact"));
48
49
  var import_DefaultRenderEmpty = __toESM(require("./DefaultRenderEmpty"));
50
+ var import_global = __toESM(require("../style/global"));
49
51
  __reExport(config_provider_exports, require("./navigate"), module.exports);
50
52
  __reExport(config_provider_exports, require("antd/es/config-provider/context"), module.exports);
51
53
  __reExport(config_provider_exports, require("antd/es/config-provider/SizeContext"), module.exports);
@@ -57,8 +59,8 @@ var ExtendedConfigContext = import_react.default.createContext({
57
59
  hideOnSinglePage: false,
58
60
  injectStaticFunction: true
59
61
  });
60
- var getLocaleTokenValue = (locale, tokenKey, tokenValue, tokenValueEn) => {
61
- return tokenValue !== import_default.default.token[tokenKey] ? { [tokenKey]: tokenValue } : ["en", "en-gb"].includes(locale.locale) ? { [tokenKey]: tokenValueEn } : {};
62
+ var getLocaleTokenValue = (mergedThemeToken, locale, tokenKey, tokenValue, tokenValueEn) => {
63
+ return tokenValue !== mergedThemeToken[tokenKey] ? { [tokenKey]: tokenValue } : ["en", "en-gb"].includes(locale.locale) ? { [tokenKey]: tokenValueEn } : {};
62
64
  };
63
65
  var ConfigProvider = ({
64
66
  children,
@@ -79,13 +81,43 @@ var ConfigProvider = ({
79
81
  var _a, _b, _c, _d;
80
82
  const parentContext = import_react.default.useContext(import_antd.ConfigProvider.ConfigContext);
81
83
  const parentExtendedContext = import_react.default.useContext(ExtendedConfigContext);
82
- const { isDark, isAliyun } = (0, import_lodash.merge)({}, parentContext.theme, theme);
83
- const customTheme = isAliyun ? import_aliyun_theme.default : isDark ? import_dark.default : void 0;
84
+ const { isAliyun, isDark, isCompact } = (0, import_lodash.merge)({}, parentContext.theme, theme);
85
+ const aliyunThemeConfig = isAliyun ? import_aliyun_theme.default : void 0;
86
+ const darkThemeConfig = isDark && !isAliyun ? isCompact ? import_dark.default : {
87
+ ...import_dark.default,
88
+ token: {
89
+ ...import_dark.default.token,
90
+ ...Object.fromEntries(
91
+ Object.entries(import_default.default.token).filter(
92
+ ([key]) => {
93
+ var _a2;
94
+ return !((_a2 = key == null ? void 0 : key.toLowerCase()) == null ? void 0 : _a2.startsWith("color"));
95
+ }
96
+ )
97
+ )
98
+ }
99
+ } : void 0;
100
+ const compactThemeConfig = isCompact && !isAliyun ? isDark ? import_compact.default : {
101
+ ...import_compact.default,
102
+ token: {
103
+ ...import_compact.default.token,
104
+ ...Object.fromEntries(
105
+ Object.entries(import_default.default.token).filter(
106
+ ([key]) => {
107
+ var _a2;
108
+ return ((_a2 = key == null ? void 0 : key.toLowerCase()) == null ? void 0 : _a2.startsWith("color")) && !["colorBgBase", "colorTextBase"].includes(key);
109
+ }
110
+ )
111
+ )
112
+ }
113
+ } : void 0;
84
114
  const mergedTheme = (0, import_lodash.merge)(
85
115
  {},
86
- customTheme ? {} : import_default.default,
116
+ isAliyun ? {} : isDark || isCompact ? import_theme.default.defaultSeed : import_default.default,
87
117
  parentContext.theme,
88
- customTheme,
118
+ aliyunThemeConfig,
119
+ darkThemeConfig,
120
+ compactThemeConfig,
89
121
  theme
90
122
  );
91
123
  const { token } = import_theme.default.useToken();
@@ -154,9 +186,22 @@ var ConfigProvider = ({
154
186
  tabs: (0, import_lodash.merge)({}, parentContext.tabs, tabs),
155
187
  theme: (0, import_lodash.merge)({}, mergedTheme, {
156
188
  token: {
157
- ...getLocaleTokenValue(mergedLocale, "fontFamily", fontFamily, import_default.fontFamilyEn),
158
- ...getLocaleTokenValue(mergedLocale, "fontWeight", fontWeight, import_default.fontWeightEn),
159
189
  ...getLocaleTokenValue(
190
+ mergedTheme.token || {},
191
+ mergedLocale,
192
+ "fontFamily",
193
+ fontFamily,
194
+ import_default.fontFamilyEn
195
+ ),
196
+ ...getLocaleTokenValue(
197
+ mergedTheme.token || {},
198
+ mergedLocale,
199
+ "fontWeight",
200
+ fontWeight,
201
+ import_default.fontWeightEn
202
+ ),
203
+ ...getLocaleTokenValue(
204
+ mergedTheme.token || {},
160
205
  mergedLocale,
161
206
  "fontWeightStrong",
162
207
  fontWeightStrong,
@@ -175,10 +220,13 @@ var ConfigProvider = ({
175
220
  // inject static function to outermost ConfigProvider only
176
221
  injectStaticFunction: false
177
222
  },
178
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_cssinjs.StyleProvider, { ...mergedStyleProviderProps, children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_app.default, { component: false, ...appProps, children: [
179
- children,
180
- parentExtendedContext.injectStaticFunction && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_static_function.default, {})
181
- ] }) })
223
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_cssinjs.StyleProvider, { ...mergedStyleProviderProps, children: [
224
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_global.default, {}),
225
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_app.default, { component: false, ...appProps, children: [
226
+ children,
227
+ parentExtendedContext.injectStaticFunction && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_static_function.default, {})
228
+ ] })
229
+ ] })
182
230
  }
183
231
  )
184
232
  }
@@ -4,7 +4,7 @@ import type { FormItemProps as AntFormItemProps } from 'antd/es/form';
4
4
  import type { TooltipProps } from '../tooltip';
5
5
  declare const AntFormItem: (<Values = any>(props: AntFormItemProps<Values>) => React.ReactElement<any, string | React.JSXElementConstructor<any>>) & {
6
6
  useStatus: () => {
7
- status?: "" | "success" | "warning" | "error" | "validating";
7
+ status?: "" | "warning" | "error" | "success" | "validating";
8
8
  errors: React.ReactNode[];
9
9
  warnings: React.ReactNode[];
10
10
  };
package/lib/index.d.ts CHANGED
@@ -1,4 +1,3 @@
1
- import './global.css';
2
1
  export * from 'antd';
3
2
  export { version } from '../package.json';
4
3
  export { default as Alert } from './alert';
package/lib/index.js CHANGED
@@ -72,7 +72,6 @@ __export(src_exports, {
72
72
  version: () => import_package.version
73
73
  });
74
74
  module.exports = __toCommonJS(src_exports);
75
- var import_global = require("./global.css");
76
75
  __reExport(src_exports, require("antd"), module.exports);
77
76
  var import_package = require("../package.json");
78
77
  var import_alert = __toESM(require("./alert"));
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import 'antd/dist/reset.css';
3
+ declare const GlobalStyle: React.FC;
4
+ export { GlobalStyle };
5
+ export default GlobalStyle;
@@ -0,0 +1,101 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+
29
+ // src/style/global.tsx
30
+ var global_exports = {};
31
+ __export(global_exports, {
32
+ GlobalStyle: () => GlobalStyle,
33
+ default: () => global_default
34
+ });
35
+ module.exports = __toCommonJS(global_exports);
36
+ var import_cssinjs = require("@ant-design/cssinjs");
37
+ var import_theme = __toESM(require("../theme"));
38
+ var import_Inter = __toESM(require("../fonts/Inter.woff2"));
39
+ var import_Consolas = __toESM(require("../fonts/Consolas.woff2"));
40
+ var import_HelveticaNeue = __toESM(require("../fonts/HelveticaNeue.woff2"));
41
+ var import_reset = require("antd/dist/reset.css");
42
+ var import_jsx_runtime = require("react/jsx-runtime");
43
+ var genGlobalStyle = (token) => {
44
+ return [
45
+ // Priority: local font > self-hosting font > remote font
46
+ {
47
+ "@font-face": {
48
+ fontFamily: "'Inter'",
49
+ src: `local('Inter'), url(${import_Inter.default}) format('woff2'), url('https://mdn.alipayobjects.com/huamei_fhnyvh/afts/file/A*2aG4RJIdUGYAAAAAAAAAAAAADmfOAQ/Inter.woff2') format('woff2')`,
50
+ fontDisplay: "swap"
51
+ }
52
+ },
53
+ {
54
+ "@font-face": {
55
+ fontFamily: "'Consolas'",
56
+ src: `local('Consolas'), url(${import_Consolas.default}) format('woff2'), url('https://mdn.alipayobjects.com/huamei_fhnyvh/afts/file/A*R8bMTqAdGWgAAAAAAAAAAAAADmfOAQ/Consolas.woff2') format('woff2')`,
57
+ fontDisplay: "swap"
58
+ }
59
+ },
60
+ {
61
+ "@font-face": {
62
+ fontFamily: "'Helvetica Neue'",
63
+ src: `local('Helvetica Neue'), url(${import_HelveticaNeue.default}) format('woff2'), url('https://mdn.alipayobjects.com/huamei_fhnyvh/afts/file/A*3EzqR6aYJMkAAAAAAAAAAAAADmfOAQ/HelveticaNeue.woff2') format('woff2')`,
64
+ fontDisplay: "swap"
65
+ }
66
+ },
67
+ // Global element styles
68
+ {
69
+ "pre, code, kbd, samp": {
70
+ fontFamily: token.fontFamilyCode
71
+ },
72
+ "*": {
73
+ scrollbarColor: `${token.colorFillSecondary} transparent`
74
+ },
75
+ ".rc-virtual-list-scrollbar-thumb": {
76
+ background: `${token.colorFillSecondary} !important`
77
+ }
78
+ }
79
+ ];
80
+ };
81
+ var GlobalStyle = () => {
82
+ const { theme, token } = import_theme.default.useToken();
83
+ const wrapSSR = (0, import_cssinjs.useStyleRegister)(
84
+ {
85
+ theme,
86
+ token,
87
+ path: ["global"],
88
+ hashId: "",
89
+ // Empty hashId for global styles
90
+ order: -1e3
91
+ // Inject before other styles
92
+ },
93
+ () => genGlobalStyle(token)
94
+ );
95
+ return wrapSSR(/* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {}));
96
+ };
97
+ var global_default = GlobalStyle;
98
+ // Annotate the CommonJS export names for ESM import in node:
99
+ 0 && (module.exports = {
100
+ GlobalStyle
101
+ });
@@ -1 +1,2 @@
1
- @import '~antd/dist/reset.css';
1
+ /* antd/dist/reset.css is imported in global.tsx */
2
+ /* reserve this file for compatibility with antd */
@@ -1,5 +1,5 @@
1
1
  declare const compactTheme: {
2
- token: import("antd/es/theme/internal").AliasToken;
2
+ token: import("antd/es/theme/internal").SeedToken;
3
3
  components: {
4
4
  InputNumber: {
5
5
  handleVisible: boolean;
@@ -32,13 +32,9 @@ __export(compact_exports, {
32
32
  default: () => compact_default
33
33
  });
34
34
  module.exports = __toCommonJS(compact_exports);
35
- var import_antd = require("antd");
36
35
  var import_index = __toESM(require("./index"));
37
36
  var compactTheme = {
38
- token: import_antd.theme.getDesignToken({
39
- algorithm: import_antd.theme.compactAlgorithm,
40
- token: import_index.default.defaultSeed
41
- }),
37
+ token: import_index.default.defaultSeed,
42
38
  components: {
43
39
  InputNumber: {
44
40
  handleVisible: true
@@ -40,6 +40,9 @@ var colorFillQuaternary = "#F5F7FC";
40
40
  var colorBorderSecondary = colorFillSecondary;
41
41
  var fontSizeSM = 12;
42
42
  var tagColorBorder = colorTextQuaternary;
43
+ var borderRadius = 4;
44
+ var borderRadiusMD = 6;
45
+ var borderRadiusLG = 8;
43
46
  var fontFamilyEn = `Inter, 'Noto sans', sans-serif, Roboto, 'Open Sans', 'Segoe UI', 'Helvetica Neue', 'Helvetica, Arial', 'Apple Color Emoji'`;
44
47
  var fontWeightWeakEn = 400;
45
48
  var fontWeightEn = 500;
@@ -52,9 +55,9 @@ var defaultTheme = {
52
55
  fontWeight: 400,
53
56
  fontWeightStrong: 500,
54
57
  borderRadiusSM: 2,
55
- borderRadius: 4,
56
- borderRadiusMD: 6,
57
- borderRadiusLG: 8,
58
+ borderRadius,
59
+ borderRadiusMD,
60
+ borderRadiusLG,
58
61
  fontSizeSM,
59
62
  fontSize: 13,
60
63
  lineHeight: 20 / 13,
@@ -118,7 +121,7 @@ var defaultTheme = {
118
121
  },
119
122
  components: {
120
123
  Alert: {
121
- borderRadiusLG: 6
124
+ borderRadiusLG: borderRadiusMD
122
125
  },
123
126
  Badge: {
124
127
  statusSize: 8
@@ -139,16 +142,29 @@ var defaultTheme = {
139
142
  },
140
143
  Card: {
141
144
  headerFontSize: 16,
142
- borderRadiusLG: 8
145
+ borderRadiusLG
143
146
  },
144
147
  Collapse: {
145
148
  colorBorder: colorBorderSecondary
146
149
  },
150
+ DatePicker: {
151
+ borderRadiusLG: borderRadiusMD
152
+ },
147
153
  Descriptions: {
148
154
  labelColor: colorTextSecondary
149
155
  },
156
+ Dropdown: {
157
+ borderRadiusLG: borderRadiusMD
158
+ },
159
+ Input: {
160
+ borderRadiusLG: borderRadiusMD
161
+ },
150
162
  InputNumber: {
151
- handleVisible: true
163
+ handleVisible: true,
164
+ borderRadiusLG: borderRadiusMD
165
+ },
166
+ Popover: {
167
+ borderRadiusLG: borderRadiusMD
152
168
  },
153
169
  Progress: {
154
170
  defaultColor: colorPrimarySecondary
@@ -162,6 +178,7 @@ var defaultTheme = {
162
178
  },
163
179
  Select: {
164
180
  // work for all multiple select component, including Select, TreeSelect and Cascader and so on
181
+ borderRadiusLG: borderRadiusMD,
165
182
  multipleItemBg: colorFillQuaternary,
166
183
  multipleItemBorderColor: tagColorBorder,
167
184
  multipleItemBorderColorDisabled: tagColorBorder
@@ -175,7 +192,7 @@ var defaultTheme = {
175
192
  handleColorDisabled: "#b3ccff"
176
193
  },
177
194
  Skeleton: {
178
- blockRadius: 4
195
+ blockRadius: borderRadius
179
196
  },
180
197
  Tabs: {
181
198
  horizontalItemGutter: 24,
@@ -185,7 +202,7 @@ var defaultTheme = {
185
202
  },
186
203
  Tag: {
187
204
  colorBorder: tagColorBorder,
188
- borderRadiusSM: 4
205
+ borderRadiusSM: borderRadius
189
206
  },
190
207
  Table: {
191
208
  cellFontSize: fontSizeSM,
@@ -199,13 +216,15 @@ var defaultTheme = {
199
216
  rowSelectedHoverBg: colorFillTertiary
200
217
  },
201
218
  Tooltip: {
219
+ borderRadius: borderRadiusMD,
202
220
  colorBgSpotlight: "#ffffff",
203
221
  colorTextLightSolid: colorText
204
222
  },
205
223
  Menu: {
224
+ borderRadiusLG: borderRadiusMD,
206
225
  paddingContentVertical: 0,
207
226
  itemHeight: 30,
208
- itemBorderRadius: 4,
227
+ itemBorderRadius: borderRadius,
209
228
  // 80 means 50% opacity
210
229
  itemHoverBg: colorFillSecondary + "80",
211
230
  itemActiveBg: colorFillSecondary + "80",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oceanbase/design",
3
- "version": "1.0.0-alpha.5",
3
+ "version": "1.0.0-alpha.6",
4
4
  "description": "The Design System of OceanBase",
5
5
  "keywords": [
6
6
  "oceanbase",
@@ -65,5 +65,5 @@
65
65
  "react": ">=16.9.0",
66
66
  "react-dom": ">=16.9.0"
67
67
  },
68
- "gitHead": "c716061dd0da7a44ab09515d43972d2212e59d0f"
68
+ "gitHead": "7ce9c565c23262a8ffaeab5904095ca65806def9"
69
69
  }
package/es/global.css DELETED
@@ -1,48 +0,0 @@
1
- @import '~antd/dist/reset.css';
2
-
3
- @font-face {
4
- font-family: 'Inter';
5
- /* load priority: local font > self-hosting font > remote font */
6
- src:
7
- local('Inter'),
8
- url('./fonts/Inter.woff2') format('woff2'),
9
- url('https://mdn.alipayobjects.com/huamei_fhnyvh/afts/file/A*2aG4RJIdUGYAAAAAAAAAAAAADmfOAQ/Inter.woff2')
10
- format('woff2');
11
- /* load strategy: use default font as fallback */
12
- font-display: swap;
13
- }
14
-
15
- @font-face {
16
- font-family: 'Consolas';
17
- src:
18
- local('Consolas'),
19
- url('./fonts/Consolas.woff2') format('woff2'),
20
- url('https://mdn.alipayobjects.com/huamei_fhnyvh/afts/file/A*R8bMTqAdGWgAAAAAAAAAAAAADmfOAQ/Consolas.woff2')
21
- format('woff2');
22
- font-display: swap;
23
- }
24
-
25
- @font-face {
26
- font-family: 'Helvetica Neue';
27
- src:
28
- local('Helvetica Neue'),
29
- url('./fonts/HelveticaNeue.woff2') format('woff2'),
30
- url('https://mdn.alipayobjects.com/huamei_fhnyvh/afts/file/A*3EzqR6aYJMkAAAAAAAAAAAAADmfOAQ/HelveticaNeue.woff2')
31
- format('woff2');
32
- font-display: swap;
33
- }
34
-
35
- pre,
36
- code,
37
- kbd,
38
- samp {
39
- font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
40
- }
41
-
42
- * {
43
- scrollbar-color: #e2e8f3 transparent;
44
- }
45
-
46
- .rc-virtual-list-scrollbar-thumb {
47
- background: #e2e8f3 !important;
48
- }
package/lib/global.css DELETED
@@ -1,48 +0,0 @@
1
- @import '~antd/dist/reset.css';
2
-
3
- @font-face {
4
- font-family: 'Inter';
5
- /* load priority: local font > self-hosting font > remote font */
6
- src:
7
- local('Inter'),
8
- url('./fonts/Inter.woff2') format('woff2'),
9
- url('https://mdn.alipayobjects.com/huamei_fhnyvh/afts/file/A*2aG4RJIdUGYAAAAAAAAAAAAADmfOAQ/Inter.woff2')
10
- format('woff2');
11
- /* load strategy: use default font as fallback */
12
- font-display: swap;
13
- }
14
-
15
- @font-face {
16
- font-family: 'Consolas';
17
- src:
18
- local('Consolas'),
19
- url('./fonts/Consolas.woff2') format('woff2'),
20
- url('https://mdn.alipayobjects.com/huamei_fhnyvh/afts/file/A*R8bMTqAdGWgAAAAAAAAAAAAADmfOAQ/Consolas.woff2')
21
- format('woff2');
22
- font-display: swap;
23
- }
24
-
25
- @font-face {
26
- font-family: 'Helvetica Neue';
27
- src:
28
- local('Helvetica Neue'),
29
- url('./fonts/HelveticaNeue.woff2') format('woff2'),
30
- url('https://mdn.alipayobjects.com/huamei_fhnyvh/afts/file/A*3EzqR6aYJMkAAAAAAAAAAAAADmfOAQ/HelveticaNeue.woff2')
31
- format('woff2');
32
- font-display: swap;
33
- }
34
-
35
- pre,
36
- code,
37
- kbd,
38
- samp {
39
- font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
40
- }
41
-
42
- * {
43
- scrollbar-color: #e2e8f3 transparent;
44
- }
45
-
46
- .rc-virtual-list-scrollbar-thumb {
47
- background: #e2e8f3 !important;
48
- }