Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(Cascader): update api #442

Merged
merged 2 commits into from
Oct 15, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified db/TDesign.db
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ className | String | - | className of component | N
style | Object | - | CSS(Cascading Style Sheets),Typescript:`React.CSSProperties` | N
checkStrictly | Boolean | false | \- | N
closeBtn | TNode | true | Typescript:`boolean \| TNode`。[see more ts definition](https://github.com/Tencent/tdesign-mobile-react/blob/develop/src/common.ts) | N
keys | Object | - | Typescript:`CascaderKeysType` `type CascaderKeysType = TreeKeysType`。[see more ts definition](https://github.com/Tencent/tdesign-mobile-react/blob/develop/src/common.ts)。[see more ts definition](https://github.com/Tencent/tdesign-mobile-react/tree/develop/src/cascader/type.ts) | N
keys | Object | - | Typescript:`CascaderKeysType` `type CascaderKeysType = KeysType`。[see more ts definition](https://github.com/Tencent/tdesign-mobile-react/blob/develop/src/common.ts)。[see more ts definition](https://github.com/Tencent/tdesign-mobile-react/tree/develop/src/cascader/type.ts) | N
lazy | Boolean | false | \- | N
loadCompleted | Boolean | false | \- | N
options | Array | [] | Typescript:`Array<CascaderOption>` | N
Expand All @@ -22,5 +22,5 @@ value | String / Number | - | \- | N
defaultValue | String / Number | - | uncontrolled property | N
visible | Boolean | false | \- | N
onChange | Function | | Typescript:`(value: string \| number, selectedOptions: CascaderOption[]) => void`<br/> | N
onClose | Function | | Typescript:`(trigger: TriggerSource) => void`<br/>[see more ts definition](https://github.com/Tencent/tdesign-mobile-react/tree/develop/src/cascader/type.ts)。<br/>`type TriggerSource = 'overlay' \| 'close-btn' \| 'finish'`<br/> | N
onClose | Function | | Typescript:`(trigger: CascaderTriggerSource) => void`<br/>[see more ts definition](https://github.com/Tencent/tdesign-mobile-react/tree/develop/src/cascader/type.ts)。<br/>`type CascaderTriggerSource = 'overlay' \| 'close-btn' \| 'finish'`<br/> | N
onPick | Function | | Typescript:`(value: string \| number, index: number) => void`<br/> | N
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ className | String | - | 类名 | N
style | Object | - | 样式,TS 类型:`React.CSSProperties` | N
checkStrictly | Boolean | false | 父子节点选中状态不再关联,可各自选中或取消 | N
closeBtn | TNode | true | 关闭按钮。TS 类型:`boolean \| TNode`。[通用类型定义](https://github.com/Tencent/tdesign-mobile-react/blob/develop/src/common.ts) | N
keys | Object | - | 用来定义 value / label 在 `options` 中对应的字段别名。TS 类型:`CascaderKeysType` `type CascaderKeysType = TreeKeysType`。[通用类型定义](https://github.com/Tencent/tdesign-mobile-react/blob/develop/src/common.ts)。[详细类型定义](https://github.com/Tencent/tdesign-mobile-react/tree/develop/src/cascader/type.ts) | N
keys | Object | - | 用来定义 value / label 在 `options` 中对应的字段别名。TS 类型:`CascaderKeysType` `type CascaderKeysType = KeysType`。[通用类型定义](https://github.com/Tencent/tdesign-mobile-react/blob/develop/src/common.ts)。[详细类型定义](https://github.com/Tencent/tdesign-mobile-react/tree/develop/src/cascader/type.ts) | N
lazy | Boolean | false | 是否异步加载 | N
loadCompleted | Boolean | false | 是否完成异步加载 | N
options | Array | [] | 可选项数据源。TS 类型:`Array<CascaderOption>` | N
Expand All @@ -22,5 +22,5 @@ value | String / Number | - | 选项值 | N
defaultValue | String / Number | - | 选项值。非受控属性 | N
visible | Boolean | false | 是否展示 | N
onChange | Function | | TS 类型:`(value: string \| number, selectedOptions: CascaderOption[]) => void`<br/>值发生变更时触发 | N
onClose | Function | | TS 类型:`(trigger: TriggerSource) => void`<br/>关闭时触发。[详细类型定义](https://github.com/Tencent/tdesign-mobile-react/tree/develop/src/cascader/type.ts)。<br/>`type TriggerSource = 'overlay' \| 'close-btn' \| 'finish'`<br/> | N
onClose | Function | | TS 类型:`(trigger: CascaderTriggerSource) => void`<br/>关闭时触发。[详细类型定义](https://github.com/Tencent/tdesign-mobile-react/tree/develop/src/cascader/type.ts)。<br/>`type CascaderTriggerSource = 'overlay' \| 'close-btn' \| 'finish'`<br/> | N
onPick | Function | | TS 类型:`(value: string \| number, index: number) => void`<br/>选择后触发 | N
8 changes: 4 additions & 4 deletions packages/products/tdesign-mobile-react/src/cascader/type.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
* 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC
* */

import { TNode, TreeOptionData, TreeKeysType } from '../common';
import { TNode, TreeOptionData, KeysType } from '../common';

export interface TdCascaderProps<CascaderOption extends TreeOptionData = TreeOptionData> {
/**
Expand Down Expand Up @@ -75,13 +75,13 @@ export interface TdCascaderProps<CascaderOption extends TreeOptionData = TreeOpt
/**
* 关闭时触发
*/
onClose?: (trigger: TriggerSource) => void;
onClose?: (trigger: CascaderTriggerSource) => void;
/**
* 选择后触发
*/
onPick?: (value: string | number, index: number) => void;
}

export type CascaderKeysType = TreeKeysType;
export type CascaderKeysType = KeysType;

export type TriggerSource = 'overlay' | 'close-btn' | 'finish';
export type CascaderTriggerSource = 'overlay' | 'close-btn' | 'finish';
Original file line number Diff line number Diff line change
Expand Up @@ -8,23 +8,23 @@ name | type | default | description | required
-- | -- | -- | -- | --
checkStrictly | Boolean | false | \- | N
closeBtn | Boolean / Slot / Function | true | Typescript:`boolean \| TNode`。[see more ts definition](https://github.com/Tencent/tdesign-mobile-vue/blob/develop/src/common.ts) | N
keys | Object | - | Typescript:`KeysType`。[see more ts definition](https://github.com/Tencent/tdesign-mobile-vue/blob/develop/src/common.ts) | N
keys | Object | - | Typescript:`CascaderKeysType` `type CascaderKeysType = KeysType`。[see more ts definition](https://github.com/Tencent/tdesign-mobile-vue/blob/develop/src/common.ts)。[see more ts definition](https://github.com/Tencent/tdesign-mobile-vue/tree/develop/src/cascader/type.ts) | N
options | Array | [] | Typescript:`Array<CascaderOption>` | N
placeholder | String / Slot / Function | 选择选项 | Typescript:`string \| TNode`。[see more ts definition](https://github.com/Tencent/tdesign-mobile-vue/blob/develop/src/common.ts) | N
placeholder | String / Slot / Function | '选择选项' | Typescript:`string \| TNode`。[see more ts definition](https://github.com/Tencent/tdesign-mobile-vue/blob/develop/src/common.ts) | N
subTitles | Array | [] | Typescript:`Array<string>` | N
theme | String | step | options: step/tab | N
title | String / Slot / Function | - | Typescript:`string \| TNode`。[see more ts definition](https://github.com/Tencent/tdesign-mobile-vue/blob/develop/src/common.ts) | N
value | String / Number | - | `v-model` and `v-model:value` is supported | N
defaultValue | String / Number | - | uncontrolled property | N
visible | Boolean | false | \- | N
onChange | Function | | Typescript:`(value: string \| number, selectedOptions: string[]) => void`<br/> | N
onClose | Function | | Typescript:`(trigger: TriggerSource) => void`<br/>[see more ts definition](https://github.com/Tencent/tdesign-mobile-vue/tree/develop/src/cascader/type.ts)。<br/>`type TriggerSource = 'overlay' \| 'close-btn' \| 'finish'`<br/> | N
onChange | Function | | Typescript:`(value: string \| number, selectedOptions: CascaderOption[]) => void`<br/> | N
onClose | Function | | Typescript:`(trigger: CascaderTriggerSource) => void`<br/>[see more ts definition](https://github.com/Tencent/tdesign-mobile-vue/tree/develop/src/cascader/type.ts)。<br/>`type CascaderTriggerSource = 'overlay' \| 'close-btn' \| 'finish'`<br/> | N
onPick | Function | | Typescript:`(context: { level: number, value: string \| number, index: number }) => void`<br/> | N

### Cascader Events

name | params | description
-- | -- | --
change | `(value: string \| number, selectedOptions: string[])` | \-
close | `(trigger: TriggerSource)` | [see more ts definition](https://github.com/Tencent/tdesign-mobile-vue/tree/develop/src/cascader/type.ts)。<br/>`type TriggerSource = 'overlay' \| 'close-btn' \| 'finish'`<br/>
change | `(value: string \| number, selectedOptions: CascaderOption[])` | \-
close | `(trigger: CascaderTriggerSource)` | [see more ts definition](https://github.com/Tencent/tdesign-mobile-vue/tree/develop/src/cascader/type.ts)。<br/>`type CascaderTriggerSource = 'overlay' \| 'close-btn' \| 'finish'`<br/>
pick | `(context: { level: number, value: string \| number, index: number })` | \-
12 changes: 6 additions & 6 deletions packages/products/tdesign-mobile-vue/src/cascader/cascader.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,23 +8,23 @@
-- | -- | -- | -- | --
checkStrictly | Boolean | false | 父子节点选中状态不再关联,可各自选中或取消 | N
closeBtn | Boolean / Slot / Function | true | 关闭按钮。TS 类型:`boolean \| TNode`。[通用类型定义](https://github.com/Tencent/tdesign-mobile-vue/blob/develop/src/common.ts) | N
keys | Object | - | 用来定义 value / label 在 `options` 中对应的字段别名。TS 类型:`KeysType`。[通用类型定义](https://github.com/Tencent/tdesign-mobile-vue/blob/develop/src/common.ts) | N
keys | Object | - | 用来定义 value / label 在 `options` 中对应的字段别名。TS 类型:`CascaderKeysType` `type CascaderKeysType = KeysType`。[通用类型定义](https://github.com/Tencent/tdesign-mobile-vue/blob/develop/src/common.ts)。[详细类型定义](https://github.com/Tencent/tdesign-mobile-vue/tree/develop/src/cascader/type.ts) | N
options | Array | [] | 可选项数据源。TS 类型:`Array<CascaderOption>` | N
placeholder | String / Slot / Function | 选择选项 | 未选中时的提示文案。TS 类型:`string \| TNode`。[通用类型定义](https://github.com/Tencent/tdesign-mobile-vue/blob/develop/src/common.ts) | N
placeholder | String / Slot / Function | '选择选项' | 未选中时的提示文案。TS 类型:`string \| TNode`。[通用类型定义](https://github.com/Tencent/tdesign-mobile-vue/blob/develop/src/common.ts) | N
subTitles | Array | [] | 每级展示的次标题。TS 类型:`Array<string>` | N
theme | String | step | 展示风格。可选项:step/tab | N
title | String / Slot / Function | - | 标题。TS 类型:`string \| TNode`。[通用类型定义](https://github.com/Tencent/tdesign-mobile-vue/blob/develop/src/common.ts) | N
value | String / Number | - | 选项值。支持语法糖 `v-model` 或 `v-model:value` | N
defaultValue | String / Number | - | 选项值。非受控属性 | N
visible | Boolean | false | 是否展示 | N
onChange | Function | | TS 类型:`(value: string \| number, selectedOptions: string[]) => void`<br/>值发生变更时触发 | N
onClose | Function | | TS 类型:`(trigger: TriggerSource) => void`<br/>关闭时触发。[详细类型定义](https://github.com/Tencent/tdesign-mobile-vue/tree/develop/src/cascader/type.ts)。<br/>`type TriggerSource = 'overlay' \| 'close-btn' \| 'finish'`<br/> | N
onChange | Function | | TS 类型:`(value: string \| number, selectedOptions: CascaderOption[]) => void`<br/>值发生变更时触发 | N
onClose | Function | | TS 类型:`(trigger: CascaderTriggerSource) => void`<br/>关闭时触发。[详细类型定义](https://github.com/Tencent/tdesign-mobile-vue/tree/develop/src/cascader/type.ts)。<br/>`type CascaderTriggerSource = 'overlay' \| 'close-btn' \| 'finish'`<br/> | N
onPick | Function | | TS 类型:`(context: { level: number, value: string \| number, index: number }) => void`<br/>选择后触发 | N

### Cascader Events

名称 | 参数 | 描述
-- | -- | --
change | `(value: string \| number, selectedOptions: string[])` | 值发生变更时触发
close | `(trigger: TriggerSource)` | 关闭时触发。[详细类型定义](https://github.com/Tencent/tdesign-mobile-vue/tree/develop/src/cascader/type.ts)。<br/>`type TriggerSource = 'overlay' \| 'close-btn' \| 'finish'`<br/>
change | `(value: string \| number, selectedOptions: CascaderOption[])` | 值发生变更时触发
close | `(trigger: CascaderTriggerSource)` | 关闭时触发。[详细类型定义](https://github.com/Tencent/tdesign-mobile-vue/tree/develop/src/cascader/type.ts)。<br/>`type CascaderTriggerSource = 'overlay' \| 'close-btn' \| 'finish'`<br/>
pick | `(context: { level: number, value: string \| number, index: number })` | 选择后触发
71 changes: 71 additions & 0 deletions packages/products/tdesign-mobile-vue/src/cascader/props.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
/* eslint-disable */

/**
* 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC
* */

import { TdCascaderProps } from './type';
import { PropType } from 'vue';

export default {
/** 父子节点选中状态不再关联,可各自选中或取消 */
checkStrictly: Boolean,
/** 关闭按钮 */
closeBtn: {
type: [Boolean, Function] as PropType<TdCascaderProps['closeBtn']>,
default: true,
},
/** 用来定义 value / label 在 `options` 中对应的字段别名 */
keys: {
type: Object as PropType<TdCascaderProps['keys']>,
},
/** 可选项数据源 */
options: {
type: Array as PropType<TdCascaderProps['options']>,
default: (): TdCascaderProps['options'] => [],
},
/** 未选中时的提示文案 */
placeholder: {
type: [String, Function] as PropType<TdCascaderProps['placeholder']>,
default: '选择选项',
},
/** 每级展示的次标题 */
subTitles: {
type: Array as PropType<TdCascaderProps['subTitles']>,
default: (): TdCascaderProps['subTitles'] => [],
},
/** 展示风格 */
theme: {
type: String as PropType<TdCascaderProps['theme']>,
default: 'step' as TdCascaderProps['theme'],
validator(val: TdCascaderProps['theme']): boolean {
if (!val) return true;
return ['step', 'tab'].includes(val);
},
},
/** 标题 */
title: {
type: [String, Function] as PropType<TdCascaderProps['title']>,
},
/** 选项值 */
value: {
type: [String, Number] as PropType<TdCascaderProps['value']>,
default: undefined,
},
modelValue: {
type: [String, Number] as PropType<TdCascaderProps['value']>,
default: undefined,
},
/** 选项值,非受控属性 */
defaultValue: {
type: [String, Number] as PropType<TdCascaderProps['defaultValue']>,
},
/** 是否展示 */
visible: Boolean,
/** 值发生变更时触发 */
onChange: Function as PropType<TdCascaderProps['onChange']>,
/** 关闭时触发 */
onClose: Function as PropType<TdCascaderProps['onClose']>,
/** 选择后触发 */
onPick: Function as PropType<TdCascaderProps['onPick']>,
};
81 changes: 81 additions & 0 deletions packages/products/tdesign-mobile-vue/src/cascader/type.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
/* eslint-disable */

/**
* 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC
* */

import { TNode, TreeOptionData, KeysType } from '../common';

export interface TdCascaderProps<CascaderOption extends TreeOptionData = TreeOptionData> {
/**
* 父子节点选中状态不再关联,可各自选中或取消
* @default false
*/
checkStrictly?: boolean;
/**
* 关闭按钮
* @default true
*/
closeBtn?: boolean | TNode;
/**
* 用来定义 value / label 在 `options` 中对应的字段别名
*/
keys?: CascaderKeysType;
/**
* 可选项数据源
* @default []
*/
options?: Array<CascaderOption>;
/**
* 未选中时的提示文案
* @default '选择选项'
*/
placeholder?: string | TNode;
/**
* 每级展示的次标题
* @default []
*/
subTitles?: Array<string>;
/**
* 展示风格
* @default step
*/
theme?: 'step' | 'tab';
/**
* 标题
*/
title?: string | TNode;
/**
* 选项值
*/
value?: string | number;
/**
* 选项值,非受控属性
*/
defaultValue?: string | number;
/**
* 选项值
*/
modelValue?: string | number;
/**
* 是否展示
* @default false
*/
visible?: boolean;
/**
* 值发生变更时触发
*/
onChange?: (value: string | number, selectedOptions: CascaderOption[]) => void;
/**
* 关闭时触发
*/
onClose?: (trigger: CascaderTriggerSource) => void;
/**
* 选择后触发
*/
onPick?: (context: { level: number; value: string | number; index: number }) => void;
}

export type CascaderKeysType = KeysType;

export type CascaderTriggerSource = 'overlay' | 'close-btn' | 'finish';
6 changes: 3 additions & 3 deletions packages/scripts/api.json
Original file line number Diff line number Diff line change
Expand Up @@ -20271,7 +20271,7 @@
"create_time": "2024-08-16 10:40:37",
"update_time": "2024-08-16 10:40:37",
"event_output": null,
"custom_field_type": "CascaderKeysType【type CascaderKeysType = TreeKeysType】",
"custom_field_type": "CascaderKeysType【type CascaderKeysType = KeysType】",
"syntactic_sugar": null,
"readonly": 1,
"html_attribute": 0,
Expand Down Expand Up @@ -20969,7 +20969,7 @@
"1",
"64"
],
"field_default_value": "选择选项",
"field_default_value": "'选择选项'",
"field_enum": "",
"field_desc_zh": "未选中时的提示文案",
"field_desc_en": null,
Expand Down Expand Up @@ -22202,7 +22202,7 @@
"field_desc_zh": "关闭时触发",
"field_desc_en": null,
"field_required": 0,
"event_input": "(trigger: TriggerSource)【type TriggerSource = 'overlay' | 'close-btn' | 'finish'】",
"event_input": "(trigger: CascaderTriggerSource)【type CascaderTriggerSource = 'overlay' | 'close-btn' | 'finish'】",
"create_time": "2023-02-28 10:11:28",
"update_time": "2023-02-28 10:11:28",
"event_output": null,
Expand Down
Loading