{"meta":"<h2 id=\"Guide\">Guide <a class=\"header-anchor scroll-count-item\" href=\"#Guide\" data-scroll-id=\"Guide\">#</a></h2>\n<h3 id=\"When To Use\">When To Use <a class=\"header-anchor scroll-count-item\" href=\"#When To Use\" data-scroll-id=\"When To Use\">#</a></h3>\n<p>CascaderSelect consists of Select and Cascader. Cascader are hidden in a pop up layer by default and are mostly used in form scenes.</p>\n","api":"<h2 id=\"API\">API <a class=\"header-anchor scroll-count-item\" href=\"#API\" data-scroll-id=\"API\">#</a></h2>\n<h3 id=\"Cascader Select\">CascaderSelect <a class=\"header-anchor scroll-count-item\" href=\"#Cascader Select\" data-scroll-id=\"Cascader Select\">#</a></h3>\n<p>Inherits partial props from Cascader, support passing props to Cascader: dataSource, useVirtual, multiple, canOnlyCheckLeaf,\ncheckStrictly, resultRender, expandedValue, defaultExpandedValue, expandTriggerType, onExpand, listStyle, listClassName, loadData, i\ntemRender, immutable. Support passing props to Select: other Select props except those listed above and those listed below.</p>\n<table>\n<thead>\n<tr>\n<th>Param</th>\n<th>Description</th>\n<th>Type</th>\n<th>Default Value</th>\n<th>Required</th>\n<th>Supported Version</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>size</td>\n<td>Size</td>\n<td>&apos;small&apos; | &apos;medium&apos; | &apos;large&apos;</td>\n<td>&apos;medium&apos;</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>disabled</td>\n<td>Disabled</td>\n<td>boolean</td>\n<td>false</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>hasArrow</td>\n<td>HasArrow</td>\n<td>boolean</td>\n<td>true</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>hasBorder</td>\n<td>HasBorder</td>\n<td>boolean</td>\n<td>true</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>hasClear</td>\n<td>HasClear</td>\n<td>boolean</td>\n<td>false</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>readOnly</td>\n<td>ReadOnly, popup layer can be expanded but cannot be selected in read</td>\n<td>boolean</td>\n<td>-</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>defaultValue</td>\n<td>Default value(not controlled)</td>\n<td>string | Array&lt;string&gt;</td>\n<td>-</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>value</td>\n<td>Current value(controlled)</td>\n<td>string | Array&lt;string&gt;</td>\n<td>-</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>onChange</td>\n<td>Callback when selected value changes</td>\n<td>(<br> value: string | Array&lt;string&gt; | null,<br> data: CascaderDataItem | Array&lt;CascaderDataItem&gt; | null,<br> extra?: Extra<br> ) =&gt; void</td>\n<td>-</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>changeOnSelect</td>\n<td>Whether to call onChange as soon as selected, this property only works in single selection mode</td>\n<td>boolean</td>\n<td>false</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>displayRender</td>\n<td>Custom render function of selected result</td>\n<td>(<br> label: Array&lt;React.ReactNode&gt;,<br> data: CascaderSelectDataItem<br> ) =&gt; React.ReactNode</td>\n<td>-</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>showSearch</td>\n<td>Show search box</td>\n<td>boolean</td>\n<td>false</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>filter</td>\n<td>Custom search function</td>\n<td>(searchValue: string, path: CascaderSelectDataItem[]) =&gt; boolean</td>\n<td>-</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>onSearch</td>\n<td>Callback when search value changes</td>\n<td>(value: string) =&gt; void</td>\n<td>-</td>\n<td></td>\n<td>1.23</td>\n</tr>\n<tr>\n<td>resultAutoWidth</td>\n<td>Whether the search result list is the same width as the selection box</td>\n<td>boolean</td>\n<td>true</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>notFoundContent</td>\n<td>Content when no data</td>\n<td>React.ReactNode</td>\n<td>-</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>header</td>\n<td>Custom dropdown header</td>\n<td>React.ReactNode</td>\n<td>-</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>footer</td>\n<td>Custom dropdown footer</td>\n<td>React.ReactNode</td>\n<td>-</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>defaultVisible</td>\n<td>Visible by default</td>\n<td>boolean</td>\n<td>false</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>visible</td>\n<td>Current visible</td>\n<td>boolean</td>\n<td>-</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>onVisibleChange</td>\n<td>-</td>\n<td>(visible: boolean, type?: CascaderSelectVisibleChangeType) =&gt; void</td>\n<td>-</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>popupProps</td>\n<td>Props object passed to Popup</td>\n<td>React.ComponentPropsWithRef&lt;typeof Popup&gt;</td>\n<td>-</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>isPreview</td>\n<td>Whether it is in preview mode</td>\n<td>boolean</td>\n<td>false</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>renderPreview</td>\n<td>Custom preview</td>\n<td>(<br> value: CascaderSelectDataItem | CascaderSelectDataItem[],<br> props: CascaderSelectProps<br> ) =&gt; React.ReactNode</td>\n<td>-</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>menuProps</td>\n<td>Props object passed to Cascader&#xFF1A;The parameters focusedKey, onItemFocus, className, style, focusable, and isSelectIconRight are invalid. Additionally, onBlur is invalid when passed under the filter</td>\n<td>Omit&lt;CascaderProps, &apos;onSelect&apos; | &apos;onChange&apos;&gt;</td>\n<td>-</td>\n<td></td>\n<td>-</td>\n</tr>\n<tr>\n<td>autoClearSearchValue</td>\n<td>Whether the current search will be cleared on selecting an item. Only applies when multiple is true</td>\n<td>boolean</td>\n<td>false</td>\n<td></td>\n<td>-</td>\n</tr>\n</tbody>\n</table>\n<!-- api-extra-start -->\n<h3 id=\"Data Structure Of Data Source\">Data structure of dataSource <a class=\"header-anchor scroll-count-item\" href=\"#Data Structure Of Data Source\" data-scroll-id=\"Data Structure Of Data Source\">#</a></h3>\n<pre class=\"language-js\"><code class=\"language-js\"><span class=\"token keyword\">const</span> dataSource <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span>\n    <span class=\"token punctuation\">{</span>\n        <span class=\"token literal-property property\">value</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;2974&apos;</span><span class=\"token punctuation\">,</span>\n        <span class=\"token literal-property property\">label</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;&#x897F;&#x5B89;&apos;</span><span class=\"token punctuation\">,</span>\n        <span class=\"token literal-property property\">children</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">[</span>\n            <span class=\"token punctuation\">{</span> <span class=\"token literal-property property\">value</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;2975&apos;</span><span class=\"token punctuation\">,</span> <span class=\"token literal-property property\">label</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;&#x897F;&#x5B89;&#x5E02;&apos;</span><span class=\"token punctuation\">,</span> <span class=\"token literal-property property\">disabled</span><span class=\"token operator\">:</span> <span class=\"token boolean\">true</span> <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n            <span class=\"token punctuation\">{</span> <span class=\"token literal-property property\">value</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;2976&apos;</span><span class=\"token punctuation\">,</span> <span class=\"token literal-property property\">label</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;&#x9AD8;&#x9675;&#x53BF;&apos;</span><span class=\"token punctuation\">,</span> <span class=\"token literal-property property\">checkboxDisabled</span><span class=\"token operator\">:</span> <span class=\"token boolean\">true</span> <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n            <span class=\"token punctuation\">{</span> <span class=\"token literal-property property\">value</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;2977&apos;</span><span class=\"token punctuation\">,</span> <span class=\"token literal-property property\">label</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;&#x84DD;&#x7530;&#x53BF;&apos;</span> <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n            <span class=\"token punctuation\">{</span> <span class=\"token literal-property property\">value</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;2978&apos;</span><span class=\"token punctuation\">,</span> <span class=\"token literal-property property\">label</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;&#x6237;&#x53BF;&apos;</span> <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n            <span class=\"token punctuation\">{</span> <span class=\"token literal-property property\">value</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;2979&apos;</span><span class=\"token punctuation\">,</span> <span class=\"token literal-property property\">label</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;&#x5468;&#x81F3;&#x53BF;&apos;</span> <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n            <span class=\"token punctuation\">{</span> <span class=\"token literal-property property\">value</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;4208&apos;</span><span class=\"token punctuation\">,</span> <span class=\"token literal-property property\">label</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;&#x705E;&#x6865;&#x533A;&apos;</span> <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n            <span class=\"token punctuation\">{</span> <span class=\"token literal-property property\">value</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;4209&apos;</span><span class=\"token punctuation\">,</span> <span class=\"token literal-property property\">label</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;&#x957F;&#x5B89;&#x533A;&apos;</span> <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n            <span class=\"token punctuation\">{</span> <span class=\"token literal-property property\">value</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;4210&apos;</span><span class=\"token punctuation\">,</span> <span class=\"token literal-property property\">label</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;&#x83B2;&#x6E56;&#x533A;&apos;</span> <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n            <span class=\"token punctuation\">{</span> <span class=\"token literal-property property\">value</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;4211&apos;</span><span class=\"token punctuation\">,</span> <span class=\"token literal-property property\">label</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;&#x4E34;&#x6F7C;&#x533A;&apos;</span> <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n            <span class=\"token punctuation\">{</span> <span class=\"token literal-property property\">value</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;4212&apos;</span><span class=\"token punctuation\">,</span> <span class=\"token literal-property property\">label</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;&#x672A;&#x592E;&#x533A;&apos;</span> <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n            <span class=\"token punctuation\">{</span> <span class=\"token literal-property property\">value</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;4213&apos;</span><span class=\"token punctuation\">,</span> <span class=\"token literal-property property\">label</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;&#x65B0;&#x57CE;&#x533A;&apos;</span> <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n            <span class=\"token punctuation\">{</span> <span class=\"token literal-property property\">value</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;4214&apos;</span><span class=\"token punctuation\">,</span> <span class=\"token literal-property property\">label</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;&#x960E;&#x826F;&#x533A;&apos;</span> <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n            <span class=\"token punctuation\">{</span> <span class=\"token literal-property property\">value</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;4215&apos;</span><span class=\"token punctuation\">,</span> <span class=\"token literal-property property\">label</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;&#x96C1;&#x5854;&#x533A;&apos;</span> <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n            <span class=\"token punctuation\">{</span> <span class=\"token literal-property property\">value</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;4388&apos;</span><span class=\"token punctuation\">,</span> <span class=\"token literal-property property\">label</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;&#x7891;&#x6797;&#x533A;&apos;</span> <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n            <span class=\"token punctuation\">{</span> <span class=\"token literal-property property\">value</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;610127&apos;</span><span class=\"token punctuation\">,</span> <span class=\"token literal-property property\">label</span><span class=\"token operator\">:</span> <span class=\"token string\">&apos;&#x5176;&#x5B83;&#x533A;&apos;</span> <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n        <span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span>\n    <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n<span class=\"token punctuation\">]</span><span class=\"token punctuation\">;</span>\n</code></pre>\n<p>The custom attribute of item in the array is also transparently passed to the data parameter of the onChange function.</p>\n<!-- api-extra-end -->\n<h2 id=\"ARIA And Key Board\">ARIA and KeyBoard <a class=\"header-anchor scroll-count-item\" href=\"#ARIA And Key Board\" data-scroll-id=\"ARIA And Key Board\">#</a></h2>\n<table>\n<thead>\n<tr>\n<th style=\"text-align:left\">&#x6309;&#x952E;</th>\n<th style=\"text-align:left\">&#x8BF4;&#x660E;</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td style=\"text-align:left\">Up Arrow</td>\n<td style=\"text-align:left\">Get the previous item focus of the current item of same level</td>\n</tr>\n<tr>\n<td style=\"text-align:left\">Down Arrow</td>\n<td style=\"text-align:left\">Get the next item focus of the current item of same level</td>\n</tr>\n<tr>\n<td style=\"text-align:left\">Left Arrow</td>\n<td style=\"text-align:left\">Enter the child element of the current item and get the first child element as the focus</td>\n</tr>\n<tr>\n<td style=\"text-align:left\">Right Arrow</td>\n<td style=\"text-align:left\">Returns the parent of the current item and gets the focus</td>\n</tr>\n<tr>\n<td style=\"text-align:left\">Enter</td>\n<td style=\"text-align:left\">Open the directory or select current item</td>\n</tr>\n<tr>\n<td style=\"text-align:left\">Esc</td>\n<td style=\"text-align:left\">Close the directory</td>\n</tr>\n<tr>\n<td style=\"text-align:left\">SPACE</td>\n<td style=\"text-align:left\">Select current item</td>\n</tr>\n</tbody>\n</table>\n"}