@rainbow-oh/yee-c 0.1.0 → 0.2.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/dist/cjs/Alert/alert.js +10 -4
- package/dist/cjs/Alert/style/index.less +3 -0
- package/dist/cjs/Anchor/anchor-item.js +6 -4
- package/dist/cjs/Anchor/anchor.js +38 -22
- package/dist/cjs/Anchor/demo/auto.d.ts +11 -0
- package/dist/cjs/Anchor/demo/auto.js +85 -0
- package/dist/cjs/Anchor/demo/basic.js +7 -1
- package/dist/cjs/Anchor/demo/controlled.js +42 -30
- package/dist/cjs/Anchor/interface.d.ts +2 -0
- package/dist/cjs/Anchor/style/index.less +2 -2
- package/dist/cjs/Button/button.d.ts +1 -1
- package/dist/cjs/Checkbox/checkbox-group.js +4 -1
- package/dist/cjs/Checkbox/demo/group.js +1 -0
- package/dist/cjs/Checkbox/interface.d.ts +5 -0
- package/dist/cjs/Checkbox/style/index.less +21 -1
- package/dist/cjs/Dropdown/demo/placement.js +2 -1
- package/dist/cjs/Dropdown/dropdown.js +3 -0
- package/dist/cjs/Dropdown/style/index.less +6 -0
- package/dist/cjs/Form/Field.js +33 -3
- package/dist/cjs/Form/Group.js +3 -2
- package/dist/cjs/Form/demo/form-table.js +1 -8
- package/dist/cjs/Form/demo/tooltip.d.ts +3 -0
- package/dist/cjs/Form/demo/tooltip.js +84 -0
- package/dist/cjs/Form/interface.d.ts +34 -1
- package/dist/cjs/Form/style/index.less +22 -7
- package/dist/cjs/Popconfirm/popconfirm.js +1 -1
- package/dist/cjs/Popconfirm/style/index.less +6 -0
- package/dist/cjs/Popover/popover.js +1 -1
- package/dist/cjs/Popover/style/index.less +6 -0
- package/dist/cjs/Progress/progress.js +2 -2
- package/dist/cjs/Radio/style/index.less +13 -6
- package/dist/cjs/Select/option.js +3 -2
- package/dist/cjs/Select/options.js +9 -1
- package/dist/cjs/Select/select.js +1 -0
- package/dist/cjs/Skeleton/demo/basic.js +1 -1
- package/dist/cjs/Space/interface.d.ts +4 -0
- package/dist/cjs/Space/space.js +36 -16
- package/dist/cjs/Splitter/demo/basic.js +1 -1
- package/dist/cjs/Splitter/demo/vertical.js +23 -1
- package/dist/cjs/Splitter/index.d.ts +1 -1
- package/dist/cjs/Splitter/interface.d.ts +9 -3
- package/dist/cjs/Splitter/splitter-handler.d.ts +1 -1
- package/dist/cjs/Splitter/splitter-handler.js +2 -1
- package/dist/cjs/Splitter/splitter.d.ts +2 -9
- package/dist/cjs/Splitter/splitter.js +53 -50
- package/dist/cjs/Splitter/style/index.less +21 -0
- package/dist/cjs/Table/demo/size.js +1 -1
- package/dist/cjs/Tabs/hooks/useTabScroll.d.ts +1 -1
- package/dist/cjs/Tabs/interface.d.ts +1 -1
- package/dist/cjs/Tabs/style/index.less +4 -0
- package/dist/cjs/Tabs/tab-header/index.js +56 -25
- package/dist/cjs/Tooltip/interface.d.ts +4 -0
- package/dist/cjs/Tooltip/style/index.less +8 -8
- package/dist/cjs/Tooltip/tooltip.js +11 -3
- package/dist/cjs/Tree/demo/draggable.d.ts +3 -0
- package/dist/cjs/Tree/demo/draggable.js +88 -0
- package/dist/cjs/Tree/demo/expanded.js +6 -6
- package/dist/cjs/Tree/index.d.ts +1 -0
- package/dist/cjs/Tree/index.js +3 -1
- package/dist/cjs/Tree/interface.d.ts +26 -0
- package/dist/cjs/Tree/style/index.less +25 -0
- package/dist/cjs/Tree/tree-node.js +38 -4
- package/dist/cjs/Tree/tree.d.ts +12 -1
- package/dist/cjs/Tree/tree.js +174 -18
- package/dist/cjs/Tree/utils/tree-tools.d.ts +21 -0
- package/dist/cjs/Tree/utils/tree-tools.js +88 -0
- package/dist/cjs/Trigger/style/index.less +17 -0
- package/dist/cjs/Trigger/trigger.js +3 -1
- package/dist/cjs/hooks/useDebounceFunction.d.ts +1 -1
- package/dist/cjs/hooks/useLayoutEffect.d.ts +1 -1
- package/dist/cjs/style/size.css +13 -4
- package/dist/cjs/style/themes.css +1 -1
- package/dist/cjs/style/variables.css +14 -5
- package/dist/cjs/utils/debounce.d.ts +6 -1
- package/dist/cjs/utils/debounce.js +9 -1
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/Alert/alert.js +24 -8
- package/dist/esm/Alert/style/index.less +3 -0
- package/dist/esm/Anchor/anchor-item.js +6 -3
- package/dist/esm/Anchor/anchor.js +38 -19
- package/dist/esm/Anchor/demo/auto.d.ts +11 -0
- package/dist/esm/Anchor/demo/auto.js +62 -0
- package/dist/esm/Anchor/demo/basic.js +3 -1
- package/dist/esm/Anchor/demo/controlled.js +14 -9
- package/dist/esm/Anchor/interface.d.ts +2 -0
- package/dist/esm/Anchor/style/index.less +2 -2
- package/dist/esm/Button/button.d.ts +1 -1
- package/dist/esm/Checkbox/checkbox-group.js +4 -2
- package/dist/esm/Checkbox/demo/group.js +1 -0
- package/dist/esm/Checkbox/interface.d.ts +5 -0
- package/dist/esm/Checkbox/style/index.less +21 -1
- package/dist/esm/Dropdown/demo/placement.js +2 -1
- package/dist/esm/Dropdown/dropdown.js +6 -1
- package/dist/esm/Dropdown/style/index.less +6 -0
- package/dist/esm/Form/Field.js +43 -5
- package/dist/esm/Form/Group.js +4 -2
- package/dist/esm/Form/demo/form-table.js +8 -6
- package/dist/esm/Form/demo/tooltip.d.ts +3 -0
- package/dist/esm/Form/demo/tooltip.js +59 -0
- package/dist/esm/Form/interface.d.ts +34 -1
- package/dist/esm/Form/style/index.less +22 -7
- package/dist/esm/Popconfirm/popconfirm.js +3 -1
- package/dist/esm/Popconfirm/style/index.less +6 -0
- package/dist/esm/Popover/popover.js +3 -1
- package/dist/esm/Popover/style/index.less +6 -0
- package/dist/esm/Progress/progress.js +5 -5
- package/dist/esm/Radio/style/index.less +13 -6
- package/dist/esm/Select/option.js +4 -2
- package/dist/esm/Select/options.js +5 -3
- package/dist/esm/Select/select.js +1 -0
- package/dist/esm/Skeleton/demo/basic.js +2 -8
- package/dist/esm/Space/interface.d.ts +4 -0
- package/dist/esm/Space/space.js +24 -13
- package/dist/esm/Splitter/demo/basic.js +2 -0
- package/dist/esm/Splitter/demo/vertical.js +13 -5
- package/dist/esm/Splitter/index.d.ts +1 -1
- package/dist/esm/Splitter/interface.d.ts +9 -3
- package/dist/esm/Splitter/splitter-handler.d.ts +1 -1
- package/dist/esm/Splitter/splitter-handler.js +3 -1
- package/dist/esm/Splitter/splitter.d.ts +2 -9
- package/dist/esm/Splitter/splitter.js +59 -56
- package/dist/esm/Splitter/style/index.less +21 -0
- package/dist/esm/Table/demo/size.js +2 -7
- package/dist/esm/Tabs/hooks/useTabScroll.d.ts +1 -1
- package/dist/esm/Tabs/interface.d.ts +1 -1
- package/dist/esm/Tabs/style/index.less +4 -0
- package/dist/esm/Tabs/tab-header/index.js +11 -5
- package/dist/esm/Tooltip/interface.d.ts +4 -0
- package/dist/esm/Tooltip/style/index.less +8 -8
- package/dist/esm/Tooltip/tooltip.js +14 -2
- package/dist/esm/Tree/demo/draggable.d.ts +3 -0
- package/dist/esm/Tree/demo/draggable.js +61 -0
- package/dist/esm/Tree/demo/expanded.js +6 -6
- package/dist/esm/Tree/index.d.ts +1 -0
- package/dist/esm/Tree/index.js +1 -0
- package/dist/esm/Tree/interface.d.ts +26 -0
- package/dist/esm/Tree/style/index.less +25 -0
- package/dist/esm/Tree/tree-node.js +29 -4
- package/dist/esm/Tree/tree.d.ts +12 -1
- package/dist/esm/Tree/tree.js +135 -4
- package/dist/esm/Tree/utils/tree-tools.d.ts +21 -0
- package/dist/esm/Tree/utils/tree-tools.js +128 -1
- package/dist/esm/Trigger/style/index.less +17 -0
- package/dist/esm/Trigger/trigger.js +4 -3
- package/dist/esm/hooks/useDebounceFunction.d.ts +1 -1
- package/dist/esm/hooks/useLayoutEffect.d.ts +1 -1
- package/dist/esm/style/size.css +13 -4
- package/dist/esm/style/themes.css +1 -1
- package/dist/esm/style/variables.css +14 -5
- package/dist/esm/utils/debounce.d.ts +6 -1
- package/dist/esm/utils/debounce.js +9 -2
- package/dist/esm/version.d.ts +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/umd/yee-c.min.css +2 -2
- package/dist/umd/yee-c.min.js +1 -1
- package/package.json +21 -23
- package/src/Alert/alert.tsx +10 -4
- package/src/Alert/style/index.less +3 -0
- package/src/Anchor/anchor-item.tsx +7 -2
- package/src/Anchor/anchor.tsx +49 -23
- package/src/Anchor/demo/auto.tsx +55 -0
- package/src/Anchor/demo/basic.tsx +7 -1
- package/src/Anchor/demo/controlled.tsx +18 -14
- package/src/Anchor/index.en-US.md +17 -0
- package/src/Anchor/index.zh-CN.md +17 -0
- package/src/Anchor/interface.ts +2 -0
- package/src/Anchor/style/index.less +2 -2
- package/src/Checkbox/checkbox-group.tsx +5 -1
- package/src/Checkbox/demo/group.tsx +1 -0
- package/src/Checkbox/interface.ts +5 -0
- package/src/Checkbox/style/index.less +21 -1
- package/src/Dropdown/demo/placement.tsx +1 -0
- package/src/Dropdown/dropdown.tsx +2 -0
- package/src/Dropdown/style/index.less +6 -0
- package/src/Form/Field.tsx +45 -3
- package/src/Form/Group.tsx +4 -1
- package/src/Form/demo/form-table.tsx +7 -7
- package/src/Form/demo/tooltip.tsx +72 -0
- package/src/Form/form-store.ts +1 -1
- package/src/Form/index.en-US.md +2 -0
- package/src/Form/index.zh-CN.md +83 -85
- package/src/Form/interface.ts +36 -1
- package/src/Form/style/index.less +22 -7
- package/src/Popconfirm/popconfirm.tsx +1 -1
- package/src/Popconfirm/style/index.less +6 -0
- package/src/Popover/popover.tsx +1 -1
- package/src/Popover/style/index.less +6 -0
- package/src/Progress/progress.tsx +2 -2
- package/src/Radio/style/index.less +13 -6
- package/src/Select/option.tsx +2 -1
- package/src/Select/options.tsx +7 -2
- package/src/Select/select.tsx +1 -0
- package/src/Skeleton/demo/basic.tsx +3 -3
- package/src/Space/interface.ts +4 -0
- package/src/Space/space.tsx +40 -16
- package/src/Splitter/demo/basic.tsx +2 -2
- package/src/Splitter/demo/vertical.tsx +19 -5
- package/src/Splitter/index.ts +5 -1
- package/src/Splitter/interface.ts +10 -3
- package/src/Splitter/splitter-handler.tsx +4 -2
- package/src/Splitter/splitter.tsx +55 -60
- package/src/Splitter/style/index.less +21 -0
- package/src/Table/demo/size.tsx +3 -3
- package/src/Table/index.zh-CN.md +50 -50
- package/src/Tabs/interface.ts +1 -1
- package/src/Tabs/style/index.less +4 -0
- package/src/Tabs/tab-header/index.tsx +26 -5
- package/src/Tooltip/index.en-US.md +1 -0
- package/src/Tooltip/index.zh-CN.md +1 -0
- package/src/Tooltip/interface.ts +4 -0
- package/src/Tooltip/style/index.less +8 -8
- package/src/Tooltip/tooltip.tsx +10 -1
- package/src/Tree/demo/draggable.tsx +58 -0
- package/src/Tree/demo/expanded.tsx +7 -7
- package/src/Tree/index.en-US.md +3 -0
- package/src/Tree/index.ts +1 -0
- package/src/Tree/index.zh-CN.md +3 -0
- package/src/Tree/interface.ts +28 -0
- package/src/Tree/style/index.less +25 -0
- package/src/Tree/tree-node.tsx +26 -0
- package/src/Tree/tree.tsx +183 -2
- package/src/Tree/utils/tree-tools.ts +107 -0
- package/src/Trigger/style/index.less +17 -0
- package/src/Trigger/trigger.tsx +3 -1
- package/src/style/size.css +13 -4
- package/src/utils/debounce.ts +22 -3
- package/src/version.ts +1 -1
|
@@ -42,14 +42,7 @@ var form_table_default = () => {
|
|
|
42
42
|
return /* @__PURE__ */ import_react.default.createElement("div", { style: { padding: "24px" } }, /* @__PURE__ */ import_react.default.createElement("h2", null, "Form + Table Dynamic Form Example"), /* @__PURE__ */ import_react.default.createElement(import_yee_c.Form, { form, onFinish, layout: "vertical" }, /* @__PURE__ */ import_react.default.createElement(
|
|
43
43
|
import_yee_c.Form.List,
|
|
44
44
|
{
|
|
45
|
-
name: "users"
|
|
46
|
-
initialValue: [
|
|
47
|
-
{
|
|
48
|
-
name: "",
|
|
49
|
-
age: "",
|
|
50
|
-
address: ""
|
|
51
|
-
}
|
|
52
|
-
]
|
|
45
|
+
name: "users"
|
|
53
46
|
},
|
|
54
47
|
(fields, operations) => {
|
|
55
48
|
const columns = [
|
|
@@ -0,0 +1,84 @@
|
|
|
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/Form/demo/tooltip.tsx
|
|
30
|
+
var tooltip_exports = {};
|
|
31
|
+
__export(tooltip_exports, {
|
|
32
|
+
default: () => tooltip_default
|
|
33
|
+
});
|
|
34
|
+
module.exports = __toCommonJS(tooltip_exports);
|
|
35
|
+
var import_yee_c = require("../..");
|
|
36
|
+
var import_lucide_react = require("lucide-react");
|
|
37
|
+
var import_react = __toESM(require("react"));
|
|
38
|
+
var tooltip_default = () => {
|
|
39
|
+
const [form] = import_yee_c.Form.useForm();
|
|
40
|
+
const onFinish = (values) => {
|
|
41
|
+
console.log("Received values:", values);
|
|
42
|
+
};
|
|
43
|
+
return /* @__PURE__ */ import_react.default.createElement(
|
|
44
|
+
import_yee_c.Form,
|
|
45
|
+
{
|
|
46
|
+
form,
|
|
47
|
+
onFinish,
|
|
48
|
+
layout: "vertical",
|
|
49
|
+
"data-testid": "tooltip-form"
|
|
50
|
+
},
|
|
51
|
+
/* @__PURE__ */ import_react.default.createElement(import_yee_c.Grid, null, /* @__PURE__ */ import_react.default.createElement(import_yee_c.Grid.Item, null, /* @__PURE__ */ import_react.default.createElement(
|
|
52
|
+
import_yee_c.Form.Field,
|
|
53
|
+
{
|
|
54
|
+
name: "username",
|
|
55
|
+
label: "Username",
|
|
56
|
+
tooltip: "Used for login. 4-20 characters.",
|
|
57
|
+
rules: [
|
|
58
|
+
{ required: true, message: "Please input your username!" }
|
|
59
|
+
]
|
|
60
|
+
},
|
|
61
|
+
/* @__PURE__ */ import_react.default.createElement(import_yee_c.Input, { placeholder: "Please input your username" })
|
|
62
|
+
)), /* @__PURE__ */ import_react.default.createElement(import_yee_c.Grid.Item, null, /* @__PURE__ */ import_react.default.createElement(
|
|
63
|
+
import_yee_c.Form.Field,
|
|
64
|
+
{
|
|
65
|
+
name: "nickname",
|
|
66
|
+
label: "Nickname",
|
|
67
|
+
tooltip: {
|
|
68
|
+
title: "Shown publicly instead of your username.",
|
|
69
|
+
icon: /* @__PURE__ */ import_react.default.createElement(import_lucide_react.Info, { size: 14 })
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
/* @__PURE__ */ import_react.default.createElement(import_yee_c.Input, { placeholder: "Please input your nickname" })
|
|
73
|
+
)), /* @__PURE__ */ import_react.default.createElement(import_yee_c.Grid.Item, null, /* @__PURE__ */ import_react.default.createElement(
|
|
74
|
+
import_yee_c.Form.Field,
|
|
75
|
+
{
|
|
76
|
+
name: "bio",
|
|
77
|
+
label: "Bio",
|
|
78
|
+
tooltip: "A short introduction about yourself."
|
|
79
|
+
},
|
|
80
|
+
/* @__PURE__ */ import_react.default.createElement(import_yee_c.TextArea, null)
|
|
81
|
+
))),
|
|
82
|
+
/* @__PURE__ */ import_react.default.createElement(import_yee_c.Space, { style: { marginTop: 16 } }, /* @__PURE__ */ import_react.default.createElement(import_yee_c.Button, { type: "primary", htmlType: "submit" }, "Submit"), /* @__PURE__ */ import_react.default.createElement(import_yee_c.Button, { htmlType: "reset" }, "Reset"))
|
|
83
|
+
);
|
|
84
|
+
};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
+
import type { TooltipProps } from '../Tooltip';
|
|
2
3
|
import type { DataAttributeProps } from '../utils/types';
|
|
3
4
|
export type StoreValue = any;
|
|
4
5
|
export type Store = Record<string, StoreValue>;
|
|
@@ -211,7 +212,7 @@ export type Rule = {
|
|
|
211
212
|
/**
|
|
212
213
|
* Error message
|
|
213
214
|
*/
|
|
214
|
-
message
|
|
215
|
+
message?: string;
|
|
215
216
|
/**
|
|
216
217
|
* Custom validation function, returns true for pass, false or throw for fail
|
|
217
218
|
*/
|
|
@@ -227,12 +228,44 @@ export type ValidateMessage = {
|
|
|
227
228
|
value: unknown;
|
|
228
229
|
status: 'error' | 'success' | 'warning' | 'info';
|
|
229
230
|
};
|
|
231
|
+
export type FieldConfigurableTooltip = Omit<TooltipProps, 'children'> & {
|
|
232
|
+
/**
|
|
233
|
+
* Custom trigger icon (defaults to a built-in help icon)
|
|
234
|
+
*/
|
|
235
|
+
icon?: React.ReactNode;
|
|
236
|
+
};
|
|
237
|
+
export type FieldTooltip = React.ReactNode | FieldConfigurableTooltip;
|
|
230
238
|
export type FieldProps = {
|
|
239
|
+
/**
|
|
240
|
+
* Child nodes
|
|
241
|
+
* */
|
|
231
242
|
children: React.ReactElement;
|
|
243
|
+
/**
|
|
244
|
+
* Field name
|
|
245
|
+
* */
|
|
232
246
|
name: NamePath;
|
|
247
|
+
/**
|
|
248
|
+
* Validation rules
|
|
249
|
+
* */
|
|
233
250
|
rules?: Rule[];
|
|
251
|
+
/***
|
|
252
|
+
* Field label
|
|
253
|
+
*/
|
|
234
254
|
label?: React.ReactNode;
|
|
255
|
+
/**
|
|
256
|
+
* Tooltip shown next to the label (a help icon).
|
|
257
|
+
* Pass a string/node to use the default icon, or an object to customize the icon.
|
|
258
|
+
* */
|
|
259
|
+
tooltip?: FieldTooltip;
|
|
260
|
+
/**
|
|
261
|
+
* Whether required (shows required mark)
|
|
262
|
+
* */
|
|
235
263
|
required?: boolean;
|
|
264
|
+
/**
|
|
265
|
+
* Layout of label and control
|
|
266
|
+
* @default 'vertical'
|
|
267
|
+
* */
|
|
268
|
+
layout?: 'vertical' | 'horizontal';
|
|
236
269
|
/**
|
|
237
270
|
* Format value before passing to children
|
|
238
271
|
* */
|
|
@@ -18,17 +18,32 @@
|
|
|
18
18
|
// padding-bottom: var(--yee-form-item-padding-bottom);
|
|
19
19
|
|
|
20
20
|
&-label {
|
|
21
|
-
display: inline-
|
|
21
|
+
display: inline-flex;
|
|
22
|
+
align-items: center;
|
|
23
|
+
gap: 2px;
|
|
22
24
|
margin-bottom: var(--yee-form-item-label-mb, 4px);
|
|
23
25
|
line-height: var(--yee-form-item-label-line-height);
|
|
24
26
|
}
|
|
25
27
|
|
|
26
|
-
&-required
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
28
|
+
// The required asterisk is rendered as a real node via &-required-mark so it
|
|
29
|
+
// stays glued to the label text regardless of what else sits inside the label.
|
|
30
|
+
// The `item-required` className is still applied to the label (see Field/Group)
|
|
31
|
+
// as an opt-in styling hook; the mark itself lives in &-required-mark below.
|
|
32
|
+
&-required-mark {
|
|
33
|
+
color: var(--yee-input-required-font-color);
|
|
34
|
+
margin-inline-start: var(--yee-form-item-required-margin-inline-start);
|
|
35
|
+
line-height: 1;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
&-tooltip-icon {
|
|
39
|
+
display: inline-flex;
|
|
40
|
+
align-items: center;
|
|
41
|
+
margin-inline-start: 4px;
|
|
42
|
+
color: var(
|
|
43
|
+
--yee-form-item-tooltip-icon-color,
|
|
44
|
+
var(--yee-text-color-secondary, #999)
|
|
45
|
+
);
|
|
46
|
+
cursor: pointer;
|
|
32
47
|
}
|
|
33
48
|
|
|
34
49
|
&-control {
|
|
@@ -135,9 +135,9 @@ var Progress = import_react.default.forwardRef(
|
|
|
135
135
|
const progressInfo = getProgressInfo();
|
|
136
136
|
let progress;
|
|
137
137
|
if (type === "line") {
|
|
138
|
-
progress = /* @__PURE__ */ import_react.default.createElement(import_line.default, { prefixCls, percent }, progressInfo);
|
|
138
|
+
progress = /* @__PURE__ */ import_react.default.createElement(import_line.default, __spreadProps(__spreadValues({}, rest), { prefixCls, percent }), progressInfo);
|
|
139
139
|
} else {
|
|
140
|
-
progress = /* @__PURE__ */ import_react.default.createElement(import_circle.default, { prefixCls, percent }, progressInfo);
|
|
140
|
+
progress = /* @__PURE__ */ import_react.default.createElement(import_circle.default, __spreadProps(__spreadValues({}, rest), { prefixCls, percent }), progressInfo);
|
|
141
141
|
}
|
|
142
142
|
const cls = (0, import_clsx.default)(
|
|
143
143
|
prefixCls,
|
|
@@ -9,15 +9,9 @@
|
|
|
9
9
|
gap: var(--yee-radio-group-gap);
|
|
10
10
|
|
|
11
11
|
&-small {
|
|
12
|
-
@{pls} {
|
|
13
|
-
padding: var(--yee-radio-small-padding, 2px 4px);
|
|
14
|
-
}
|
|
15
12
|
}
|
|
16
13
|
|
|
17
14
|
&-large {
|
|
18
|
-
@{pls} {
|
|
19
|
-
padding: var(--yee-radio-large-padding, 6px 12px);
|
|
20
|
-
}
|
|
21
15
|
}
|
|
22
16
|
|
|
23
17
|
&-solid {
|
|
@@ -67,6 +61,19 @@
|
|
|
67
61
|
content: '';
|
|
68
62
|
}
|
|
69
63
|
|
|
64
|
+
&::before {
|
|
65
|
+
position: absolute;
|
|
66
|
+
z-index: 1;
|
|
67
|
+
right: 5px;
|
|
68
|
+
top: 14px;
|
|
69
|
+
width: 4px;
|
|
70
|
+
height: 8px;
|
|
71
|
+
border: 2px solid #fff;
|
|
72
|
+
border-width: 0 2px 2px 0;
|
|
73
|
+
transform: rotate(45deg);
|
|
74
|
+
content: '';
|
|
75
|
+
}
|
|
76
|
+
|
|
70
77
|
z-index: 1;
|
|
71
78
|
}
|
|
72
79
|
|
|
@@ -36,7 +36,7 @@ var import_clsx = __toESM(require("clsx"));
|
|
|
36
36
|
var import_react = __toESM(require("react"));
|
|
37
37
|
var import_options = require("./options");
|
|
38
38
|
var Option = (props) => {
|
|
39
|
-
const { label, value, disabled, title } = props;
|
|
39
|
+
const { label, value, disabled, title, dataTestId } = props;
|
|
40
40
|
const { prefixCls, selectedKeys, focusedKey, onSelect } = (0, import_react.useContext)(import_options.OptionsCtx);
|
|
41
41
|
const handleClick = (e) => {
|
|
42
42
|
if (!disabled) {
|
|
@@ -61,7 +61,8 @@ var Option = (props) => {
|
|
|
61
61
|
},
|
|
62
62
|
role: "option",
|
|
63
63
|
tabIndex: disabled ? void 0 : 0,
|
|
64
|
-
title: htmlTitle
|
|
64
|
+
title: htmlTitle,
|
|
65
|
+
"data-testid": dataTestId
|
|
65
66
|
},
|
|
66
67
|
label
|
|
67
68
|
);
|
|
@@ -77,6 +77,7 @@ var Options = (0, import_react.forwardRef)((props, ref) => {
|
|
|
77
77
|
popupStyle,
|
|
78
78
|
selectedKeys,
|
|
79
79
|
focusedKey,
|
|
80
|
+
dataTestId,
|
|
80
81
|
onSelect
|
|
81
82
|
} = _a, rest = __objRest(_a, [
|
|
82
83
|
"prefixCls",
|
|
@@ -85,6 +86,7 @@ var Options = (0, import_react.forwardRef)((props, ref) => {
|
|
|
85
86
|
"popupStyle",
|
|
86
87
|
"selectedKeys",
|
|
87
88
|
"focusedKey",
|
|
89
|
+
"dataTestId",
|
|
88
90
|
"onSelect"
|
|
89
91
|
]);
|
|
90
92
|
const componentRef = ref || (0, import_react.useRef)(null);
|
|
@@ -101,7 +103,13 @@ var Options = (0, import_react.forwardRef)((props, ref) => {
|
|
|
101
103
|
{
|
|
102
104
|
value: { prefixCls, selectedKeys, focusedKey, onSelect }
|
|
103
105
|
},
|
|
104
|
-
options.map((option) => /* @__PURE__ */ import_react.default.createElement(
|
|
106
|
+
options.map((option, index) => /* @__PURE__ */ import_react.default.createElement(
|
|
107
|
+
import_option.default,
|
|
108
|
+
__spreadProps(__spreadValues({}, option), {
|
|
109
|
+
key: option.value,
|
|
110
|
+
dataTestId: `${dataTestId}-${index}`
|
|
111
|
+
})
|
|
112
|
+
))
|
|
105
113
|
)
|
|
106
114
|
);
|
|
107
115
|
});
|
|
@@ -35,7 +35,7 @@ module.exports = __toCommonJS(basic_exports);
|
|
|
35
35
|
var import_yee_c = require("../..");
|
|
36
36
|
var import_react = __toESM(require("react"));
|
|
37
37
|
var basic_default = () => {
|
|
38
|
-
return /* @__PURE__ */ import_react.default.createElement(
|
|
38
|
+
return /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement(import_yee_c.Card, { title: "Basic Placeholder" }, /* @__PURE__ */ import_react.default.createElement(import_yee_c.Skeleton, null)), /* @__PURE__ */ import_react.default.createElement(import_yee_c.Card, { title: "With Avatar" }, /* @__PURE__ */ import_react.default.createElement(import_yee_c.Skeleton, { avatar: true, title: true, paragraph: { rows: 2 } })), /* @__PURE__ */ import_react.default.createElement(import_yee_c.Card, { title: "Title and Paragraph" }, /* @__PURE__ */ import_react.default.createElement(
|
|
39
39
|
import_yee_c.Skeleton,
|
|
40
40
|
{
|
|
41
41
|
avatar: false,
|
|
@@ -26,6 +26,10 @@ export interface SpaceProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
26
26
|
* Alignment
|
|
27
27
|
*/
|
|
28
28
|
align?: 'center' | 'start' | 'end' | 'baseline' | 'flex-start';
|
|
29
|
+
/***
|
|
30
|
+
* Justify content
|
|
31
|
+
* */
|
|
32
|
+
justify?: 'start' | 'end' | 'center' | 'space-around' | 'space-between';
|
|
29
33
|
/**
|
|
30
34
|
* Whether to take up the entire row
|
|
31
35
|
*/
|
package/dist/cjs/Space/space.js
CHANGED
|
@@ -75,6 +75,7 @@ var Space = (0, import_react.forwardRef)((baseprops, ref) => {
|
|
|
75
75
|
gap = 16,
|
|
76
76
|
direction = "horizontal",
|
|
77
77
|
align = direction === "horizontal" ? "center" : void 0,
|
|
78
|
+
justify,
|
|
78
79
|
wrap,
|
|
79
80
|
className,
|
|
80
81
|
style,
|
|
@@ -87,6 +88,7 @@ var Space = (0, import_react.forwardRef)((baseprops, ref) => {
|
|
|
87
88
|
"gap",
|
|
88
89
|
"direction",
|
|
89
90
|
"align",
|
|
91
|
+
"justify",
|
|
90
92
|
"wrap",
|
|
91
93
|
"className",
|
|
92
94
|
"style",
|
|
@@ -113,24 +115,41 @@ var Space = (0, import_react.forwardRef)((baseprops, ref) => {
|
|
|
113
115
|
if (!children) {
|
|
114
116
|
return null;
|
|
115
117
|
}
|
|
118
|
+
const loop = (childs2) => {
|
|
119
|
+
let res = [];
|
|
120
|
+
childs2.forEach((child, index) => {
|
|
121
|
+
const isItem = import_react.default.isValidElement(child) && child.type.isSpaceItem;
|
|
122
|
+
const itemClassName = isItem ? child.props.className : void 0;
|
|
123
|
+
const itemStyle = isItem ? child.props.style : void 0;
|
|
124
|
+
const itemChildren = isItem ? child.props.children : child;
|
|
125
|
+
if (import_react.default.isValidElement(child) && child.type === import_react.default.Fragment) {
|
|
126
|
+
res = res.concat(
|
|
127
|
+
loop(import_react.default.Children.toArray(child.props.children))
|
|
128
|
+
);
|
|
129
|
+
} else {
|
|
130
|
+
res.push(
|
|
131
|
+
/* @__PURE__ */ import_react.default.createElement(
|
|
132
|
+
"div",
|
|
133
|
+
{
|
|
134
|
+
className: (0, import_clsx.default)(
|
|
135
|
+
`${prefixCls}-item`,
|
|
136
|
+
classNames == null ? void 0 : classNames.item,
|
|
137
|
+
itemClassName
|
|
138
|
+
),
|
|
139
|
+
style: __spreadValues(__spreadValues({}, styles == null ? void 0 : styles.item), itemStyle),
|
|
140
|
+
key: index
|
|
141
|
+
},
|
|
142
|
+
itemChildren
|
|
143
|
+
)
|
|
144
|
+
);
|
|
145
|
+
}
|
|
146
|
+
});
|
|
147
|
+
return res;
|
|
148
|
+
};
|
|
116
149
|
const childs = import_react.default.Children.toArray(children).filter(
|
|
117
150
|
(child) => child !== null && child !== void 0
|
|
118
151
|
);
|
|
119
|
-
return childs
|
|
120
|
-
const isItem = import_react.default.isValidElement(child) && child.type.isSpaceItem;
|
|
121
|
-
const itemClassName = isItem ? child.props.className : void 0;
|
|
122
|
-
const itemStyle = isItem ? child.props.style : void 0;
|
|
123
|
-
const itemChildren = isItem ? child.props.children : child;
|
|
124
|
-
return /* @__PURE__ */ import_react.default.createElement(
|
|
125
|
-
"div",
|
|
126
|
-
{
|
|
127
|
-
className: (0, import_clsx.default)(`${prefixCls}-item`, classNames == null ? void 0 : classNames.item, itemClassName),
|
|
128
|
-
style: __spreadValues(__spreadValues({}, styles == null ? void 0 : styles.item), itemStyle),
|
|
129
|
-
key: index
|
|
130
|
-
},
|
|
131
|
-
itemChildren
|
|
132
|
-
);
|
|
133
|
-
});
|
|
152
|
+
return loop(childs);
|
|
134
153
|
};
|
|
135
154
|
const packed = pack();
|
|
136
155
|
return /* @__PURE__ */ import_react.default.createElement(
|
|
@@ -140,7 +159,8 @@ var Space = (0, import_react.forwardRef)((baseprops, ref) => {
|
|
|
140
159
|
style: __spreadValues({
|
|
141
160
|
width: block ? "100%" : void 0,
|
|
142
161
|
gap: gap + "px",
|
|
143
|
-
alignItems: getAlign()
|
|
162
|
+
alignItems: getAlign(),
|
|
163
|
+
justifyContent: justify
|
|
144
164
|
}, style),
|
|
145
165
|
ref: componentRef
|
|
146
166
|
}),
|
|
@@ -35,5 +35,5 @@ module.exports = __toCommonJS(basic_exports);
|
|
|
35
35
|
var import_yee_c = require("../..");
|
|
36
36
|
var import_react = __toESM(require("react"));
|
|
37
37
|
var basic_default = () => {
|
|
38
|
-
return /* @__PURE__ */ import_react.default.createElement("div", { style: { height: 300 } }, /* @__PURE__ */ import_react.default.createElement(import_yee_c.Splitter, null, /* @__PURE__ */ import_react.default.createElement(import_yee_c.Splitter.Item, null, /* @__PURE__ */ import_react.default.createElement("div", { style: { padding: 16, backgroundColor: "#f0f0f0" } }, "Left Panel")), /* @__PURE__ */ import_react.default.createElement(import_yee_c.Splitter.Item, null, /* @__PURE__ */ import_react.default.createElement("div", { style: { padding: 16, backgroundColor: "#e0e0e0" } }, "Right Panel"))));
|
|
38
|
+
return /* @__PURE__ */ import_react.default.createElement("div", { style: { height: 300 } }, /* @__PURE__ */ import_react.default.createElement(import_yee_c.Splitter, null, /* @__PURE__ */ import_react.default.createElement(import_yee_c.Splitter.Item, null, /* @__PURE__ */ import_react.default.createElement("div", { style: { margin: 8, padding: 16, backgroundColor: "#f0f0f0" } }, "Left Panel")), /* @__PURE__ */ import_react.default.createElement(import_yee_c.Splitter.Item, null, /* @__PURE__ */ import_react.default.createElement("div", { style: { margin: 8, padding: 16, backgroundColor: "#e0e0e0" } }, "Right Panel"))));
|
|
39
39
|
};
|
|
@@ -35,5 +35,27 @@ module.exports = __toCommonJS(vertical_exports);
|
|
|
35
35
|
var import_yee_c = require("../..");
|
|
36
36
|
var import_react = __toESM(require("react"));
|
|
37
37
|
var vertical_default = () => {
|
|
38
|
-
return /* @__PURE__ */ import_react.default.createElement("div", { style: { height:
|
|
38
|
+
return /* @__PURE__ */ import_react.default.createElement("div", { style: { height: 500 } }, /* @__PURE__ */ import_react.default.createElement(import_yee_c.Splitter, { layout: "vertical" }, /* @__PURE__ */ import_react.default.createElement(import_yee_c.Splitter.Item, { size: 250 }, /* @__PURE__ */ import_react.default.createElement(
|
|
39
|
+
"div",
|
|
40
|
+
{
|
|
41
|
+
style: {
|
|
42
|
+
marginBottom: 8,
|
|
43
|
+
padding: 16,
|
|
44
|
+
backgroundColor: "#f0f0f0",
|
|
45
|
+
height: "100%"
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
"Top Panel"
|
|
49
|
+
)), /* @__PURE__ */ import_react.default.createElement(import_yee_c.Splitter.Item, { size: 250 }, /* @__PURE__ */ import_react.default.createElement(
|
|
50
|
+
"div",
|
|
51
|
+
{
|
|
52
|
+
style: {
|
|
53
|
+
marginTop: 8,
|
|
54
|
+
padding: 16,
|
|
55
|
+
backgroundColor: "#e0e0e0",
|
|
56
|
+
height: "100%"
|
|
57
|
+
}
|
|
58
|
+
},
|
|
59
|
+
"Bottom Panel"
|
|
60
|
+
))));
|
|
39
61
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import InternalSplitter from './splitter';
|
|
2
2
|
import Item from './splitter-item';
|
|
3
|
-
export type { SplitterItemProps, SplitterProps } from './interface';
|
|
3
|
+
export type { SplitterItemProps, PanelRect as SplitterPanelRect, SplitterProps, } from './interface';
|
|
4
4
|
type SplitterType = typeof InternalSplitter & {
|
|
5
5
|
Item: typeof Item;
|
|
6
6
|
};
|
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import type { DataAttributeProps } from '../utils/types';
|
|
3
|
+
export type PanelRect = {
|
|
4
|
+
type: 'default' | 'percent' | 'auto';
|
|
5
|
+
size: number;
|
|
6
|
+
currentSize: number;
|
|
7
|
+
min?: string | number;
|
|
8
|
+
max?: string | number;
|
|
9
|
+
};
|
|
3
10
|
export interface SplitterItemProps {
|
|
4
11
|
/**
|
|
5
12
|
* custom item element class name prefix
|
|
@@ -67,14 +74,13 @@ export interface SplitterProps extends DataAttributeProps {
|
|
|
67
74
|
/**
|
|
68
75
|
* children
|
|
69
76
|
*/
|
|
70
|
-
children?: React.ReactElement
|
|
77
|
+
children?: Array<React.ReactElement | null>;
|
|
71
78
|
/**
|
|
72
79
|
* display border or not
|
|
73
80
|
* */
|
|
74
81
|
bordered?: boolean;
|
|
75
|
-
itemPadding?: number | string;
|
|
76
82
|
/**
|
|
77
83
|
* panel size change event
|
|
78
84
|
* */
|
|
79
|
-
onResize?: (sizes:
|
|
85
|
+
onResize?: (sizes: PanelRect[]) => void;
|
|
80
86
|
}
|
|
@@ -67,7 +67,7 @@ var SplitterHandler = ({
|
|
|
67
67
|
const cref = (0, import_react.useRef)(null);
|
|
68
68
|
const handler = (0, import_react.useRef)(null);
|
|
69
69
|
const { refs } = (0, import_react.useContext)(import_splitter.SplitterWrapperCtx);
|
|
70
|
-
const { prefixCls } = (0, import_react.useContext)(import_splitter.SplitterCtx);
|
|
70
|
+
const { prefixCls, onResize } = (0, import_react.useContext)(import_splitter.SplitterCtx);
|
|
71
71
|
const status = records[index - 1] || {};
|
|
72
72
|
const next = records[index] || {};
|
|
73
73
|
const onMove = (dis) => {
|
|
@@ -104,6 +104,7 @@ var SplitterHandler = ({
|
|
|
104
104
|
currentSize: s
|
|
105
105
|
});
|
|
106
106
|
newState[index] = __spreadProps(__spreadValues({}, newState[index]), { size: e, currentSize: e });
|
|
107
|
+
onResize == null ? void 0 : onResize(newState);
|
|
107
108
|
return newState;
|
|
108
109
|
});
|
|
109
110
|
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import type { SplitterProps } from './interface';
|
|
2
|
+
import type { PanelRect, SplitterProps } from './interface';
|
|
3
3
|
import './style/index.less';
|
|
4
4
|
type SplitterWrapperCtxType = {
|
|
5
5
|
refs: {
|
|
@@ -8,16 +8,9 @@ type SplitterWrapperCtxType = {
|
|
|
8
8
|
};
|
|
9
9
|
type SplitterCtxType = {
|
|
10
10
|
prefixCls: string;
|
|
11
|
-
onResize?: (sizes:
|
|
11
|
+
onResize?: (sizes: PanelRect[]) => void;
|
|
12
12
|
};
|
|
13
13
|
export declare const SplitterWrapperCtx: React.Context<SplitterWrapperCtxType>;
|
|
14
14
|
export declare const SplitterCtx: React.Context<SplitterCtxType>;
|
|
15
|
-
export type PanelRect = {
|
|
16
|
-
type: 'default' | 'percent' | 'auto';
|
|
17
|
-
size: number;
|
|
18
|
-
currentSize: number;
|
|
19
|
-
min?: string | number;
|
|
20
|
-
max?: string | number;
|
|
21
|
-
};
|
|
22
15
|
declare const Splitter: React.ForwardRefExoticComponent<SplitterProps & React.RefAttributes<HTMLDivElement>>;
|
|
23
16
|
export default Splitter;
|