From bdff2b1588b85660475e5b312049f8ff822c91d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8A=9B=E7=9A=93?= Date: Mon, 12 Oct 2020 14:55:03 +0800 Subject: [PATCH 1/3] =?UTF-8?q?fix:=20checkId=20=E9=9C=80=E8=A6=81?= =?UTF-8?q?=E4=BC=A0=E9=80=92?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/designer/src/document/document-model.ts | 2 +- packages/designer/src/document/node/node-children.ts | 4 ++-- packages/designer/src/document/node/node.ts | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/designer/src/document/document-model.ts b/packages/designer/src/document/document-model.ts index 2b3059fea..b6fc52719 100644 --- a/packages/designer/src/document/document-model.ts +++ b/packages/designer/src/document/document-model.ts @@ -222,7 +222,7 @@ export class DocumentModel { } } if (!node) { - node = new Node(this, schema); + node = new Node(this, schema, { checkId }); // will add // todo: this.activeNodes?.push(node); } diff --git a/packages/designer/src/document/node/node-children.ts b/packages/designer/src/document/node/node-children.ts index 724522a95..012298a8e 100644 --- a/packages/designer/src/document/node/node-children.ts +++ b/packages/designer/src/document/node/node-children.ts @@ -11,9 +11,9 @@ export class NodeChildren { private emitter = new EventEmitter(); - constructor(readonly owner: ParentalNode, data: NodeData | NodeData[]) { + constructor(readonly owner: ParentalNode, data: NodeData | NodeData[], options: any = {}) { this.children = (Array.isArray(data) ? data : [data]).map(child => { - return this.owner.document.createNode(child); + return this.owner.document.createNode(child, options.checkId); }); } diff --git a/packages/designer/src/document/node/node.ts b/packages/designer/src/document/node/node.ts index b2d2f4906..892dd1359 100644 --- a/packages/designer/src/document/node/node.ts +++ b/packages/designer/src/document/node/node.ts @@ -154,7 +154,7 @@ export class Node { readonly settingEntry: SettingTopEntry; - constructor(readonly document: DocumentModel, nodeSchema: Schema) { + constructor(readonly document: DocumentModel, nodeSchema: Schema, options: any = {}) { const { componentName, id, children, props, ...extras } = nodeSchema; this.id = id || document.nextId(); this.componentName = componentName; @@ -167,7 +167,7 @@ export class Node { // import 是为了使用钩子返回的值,并非完全幂等的操作,部分行为执行两次会有 bug, // 所以在 props 里会对 new / import 做一些区别化的解析 this.props = new Props(this, props, extras); - this._children = new NodeChildren(this as ParentalNode, this.initialChildren(children)); + this._children = new NodeChildren(this as ParentalNode, this.initialChildren(children), options); this._children.internalInitParent(); this.props.import(this.upgradeProps(this.initProps(props || {})), this.upgradeProps(extras || {})); this.setupAutoruns(); From d4c45d2deac78d1305477ab4c40685c51e2ca487 Mon Sep 17 00:00:00 2001 From: gengyang Date: Tue, 13 Oct 2020 10:20:59 +0800 Subject: [PATCH 2/3] fix: fix typescript related bugs, including the following: 1. fix bug of failing to resolve RFC components 2. support transforming function args 3. fix bug of oneOfType 4. fix bug of crash when circular parsing 5. fix bug of union 6. support tuple 7. fix bug of builtin type parsing 8. fix bug of false positive component identification 9. fix bug of entry resolving --- packages/material-parser/.eslintrc.js | 9 + .../material-parser/src/core/schema/types.ts | 50 +- .../src/parse/{runtime => dynamic}/index.ts | 0 .../{runtime => dynamic}/requireInSandbox.ts | 0 packages/material-parser/src/parse/index.ts | 6 +- .../material-parser/src/parse/transform.ts | 146 +- .../material-parser/src/parse/ts/index.ts | 250 +- .../fixtures/__snapshots__/test/antd.ts.md | 83543 ++++++++++------ .../fixtures/__snapshots__/test/antd.ts.snap | Bin 289489 -> 364668 bytes .../fixtures/__snapshots__/test/fusion.ts.md | 70 +- .../__snapshots__/test/fusion.ts.snap | Bin 80795 -> 80798 bytes .../fixtures/__snapshots__/test/index.ts.md | 448 +- .../fixtures/__snapshots__/test/index.ts.snap | Bin 3433 -> 6217 bytes .../components/anchor/Anchor.tsx | 43 +- .../test/fixtures/ts-component/src/index.tsx | 39 +- .../fixtures/ts-component/src/main-module.tsx | 102 + .../fixtures/ts-component/src/sub-module.tsx | 17 +- .../test/fixtures/ts-component2/package.json | 63 + .../test/fixtures/ts-component2/src/empty.tsx | 22 + .../fixtures/ts-component2/src/index.scss | 49 + .../test/fixtures/ts-component2/src/index.tsx | 71 + packages/material-parser/test/index.ts | 12 + 22 files changed, 52848 insertions(+), 32092 deletions(-) create mode 100644 packages/material-parser/.eslintrc.js rename packages/material-parser/src/parse/{runtime => dynamic}/index.ts (100%) rename packages/material-parser/src/parse/{runtime => dynamic}/requireInSandbox.ts (100%) create mode 100644 packages/material-parser/test/fixtures/ts-component/src/main-module.tsx create mode 100644 packages/material-parser/test/fixtures/ts-component2/package.json create mode 100644 packages/material-parser/test/fixtures/ts-component2/src/empty.tsx create mode 100644 packages/material-parser/test/fixtures/ts-component2/src/index.scss create mode 100644 packages/material-parser/test/fixtures/ts-component2/src/index.tsx diff --git a/packages/material-parser/.eslintrc.js b/packages/material-parser/.eslintrc.js new file mode 100644 index 000000000..66b3556e4 --- /dev/null +++ b/packages/material-parser/.eslintrc.js @@ -0,0 +1,9 @@ +module.exports = { + extends: ['eslint-config-ali/typescript/react'], + rules: { + 'implicit-arrow-linebreak': 1, + '@typescript-eslint/indent': 1, + 'function-paren-newline': 1, + 'no-bitwise': 0, + }, +}; diff --git a/packages/material-parser/src/core/schema/types.ts b/packages/material-parser/src/core/schema/types.ts index e612461e5..55c1b1d48 100644 --- a/packages/material-parser/src/core/schema/types.ts +++ b/packages/material-parser/src/core/schema/types.ts @@ -42,13 +42,13 @@ export interface Npm { [k: string]: any; } export interface PropsSection { - props: Array<{ + props: { name: string; propType: PropType; description?: string; defaultValue?: any; [k: string]: any; - }>; + }[]; [k: string]: any; } export interface RequiredType { @@ -57,7 +57,7 @@ export interface RequiredType { } export interface OneOf { type: 'oneOf'; - value: Array; + value: (string | number | boolean)[]; isRequired?: boolean; [k: string]: any; } @@ -81,19 +81,19 @@ export interface ObjectOf { } export interface Shape { type: 'shape'; - value: Array<{ + value: { name?: string; propType?: PropType; - }>; + }[]; isRequired?: boolean; [k: string]: any; } export interface Exact { type: 'exact'; - value: Array<{ + value: { name?: string; propType?: PropType; - }>; + }[]; isRequired?: boolean; [k: string]: any; } @@ -119,24 +119,24 @@ export interface ConfigureFieldProp { } export interface ConfigureFieldSetter { componentName: - | 'List' - | 'Object' - | 'Function' - | 'Node' - | 'Mixin' - | 'Expression' - | 'Switch' - | 'Number' - | 'Input' - | 'TextArea' - | 'Date' - | 'DateYear' - | 'DateMonth' - | 'DateRange' - | 'ColorPicker' - | 'CodeEditor' - | 'Select' - | 'RadioGroup'; + | 'List' + | 'Object' + | 'Function' + | 'Node' + | 'Mixin' + | 'Expression' + | 'Switch' + | 'Number' + | 'Input' + | 'TextArea' + | 'Date' + | 'DateYear' + | 'DateMonth' + | 'DateRange' + | 'ColorPicker' + | 'CodeEditor' + | 'Select' + | 'RadioGroup'; props?: { [k: string]: any; }; diff --git a/packages/material-parser/src/parse/runtime/index.ts b/packages/material-parser/src/parse/dynamic/index.ts similarity index 100% rename from packages/material-parser/src/parse/runtime/index.ts rename to packages/material-parser/src/parse/dynamic/index.ts diff --git a/packages/material-parser/src/parse/runtime/requireInSandbox.ts b/packages/material-parser/src/parse/dynamic/requireInSandbox.ts similarity index 100% rename from packages/material-parser/src/parse/runtime/requireInSandbox.ts rename to packages/material-parser/src/parse/dynamic/requireInSandbox.ts diff --git a/packages/material-parser/src/parse/index.ts b/packages/material-parser/src/parse/index.ts index f2b2b17f7..c96f6419c 100644 --- a/packages/material-parser/src/parse/index.ts +++ b/packages/material-parser/src/parse/index.ts @@ -1,4 +1,4 @@ -import parseDynamic from './runtime'; +import parseDynamic from './dynamic'; import parseJS from './js'; import parseTS from './ts'; import { install, installPeerDeps, installTypeModules } from '../utils'; @@ -24,9 +24,9 @@ export default async (args: IParseArgs) => { moduleFileAbsolutePath = mainFileAbsolutePath, } = args; if (args.accesser === 'local') { - if (moduleFileAbsolutePath.endsWith('ts') || moduleFileAbsolutePath.endsWith('tsx')) { + if (mainFileAbsolutePath.endsWith('ts') || mainFileAbsolutePath.endsWith('tsx')) { await install(args); - return parseTS(moduleFileAbsolutePath); + return parseTS(mainFileAbsolutePath); } else { try { return parseJS(moduleFileAbsolutePath); diff --git a/packages/material-parser/src/parse/transform.ts b/packages/material-parser/src/parse/transform.ts index 669af0c57..2607b4580 100644 --- a/packages/material-parser/src/parse/transform.ts +++ b/packages/material-parser/src/parse/transform.ts @@ -1,4 +1,4 @@ -import { omit, pick, isNil } from 'lodash'; +import { omit, pick, isNil, uniq } from 'lodash'; import { safeEval, isEvaluable } from '../utils'; import { debug } from '../core'; @@ -6,10 +6,7 @@ const log = debug.extend('parse:transform'); export function transformType(itemType: any) { if (typeof itemType === 'string') return itemType; - const { name, elements, value = elements, computed, required, type } = itemType; - // if (!value && !required && !type) { - // return name; - // } + const { name, elements, value = elements, computed, required, type, raw } = itemType; if (computed !== undefined && value) { return safeEval(value); } @@ -24,7 +21,6 @@ export function transformType(itemType: any) { case 'string': case 'bool': case 'any': - case 'func': case 'symbol': case 'object': case 'null': @@ -32,21 +28,34 @@ export function transformType(itemType: any) { case 'element': case 'node': break; + case 'func': + if (value) { + result.value = value.map(x => ({ + ...x, + propType: transformType(x.propType), + })); + result.raw = raw; + } + break; case 'literal': - return safeEval(value); + result.type = 'oneOf'; + result.value = [safeEval(value)]; + break; case 'enum': - case 'tuple': case 'oneOf': result.type = 'oneOf'; result.value = value.map(transformType); break; + case 'tuple': + result.type = 'tuple'; + result.value = value.map(transformType); + break; case 'union': { - const { raw } = itemType; - if (raw) { - if (raw.match(/ReactNode$/)) { + if (itemType.raw) { + if (itemType.raw.match(/ReactNode$/)) { result.type = 'node'; break; - } else if (raw.match(/Element$/)) { + } else if (itemType.raw.match(/Element$/)) { result.type = 'element'; break; } @@ -69,12 +78,12 @@ export function transformType(itemType: any) { case 'Array': case 'arrayOf': { result.type = 'arrayOf'; - const v = omit(transformType(value[0]), ['isRequired']); - if (Object.keys(v).length === 1 && v.type) { - result.value = v.type; - } else { - result.value = v; + let _itemType = transformType(value[0]); + if (typeof _itemType === 'object') { + _itemType = omit(_itemType, ['isRequired']); } + + result.value = _itemType; break; } case 'signature': { @@ -83,13 +92,25 @@ export function transformType(itemType: any) { break; } result.type = 'shape'; - const properties = type?.signature?.properties || []; + const properties = type?.signature?.properties || itemType?.signature?.properties || []; if (properties.length === 0) { - result.type = 'object'; + if (raw?.includes('=>')) { + result.type = 'func'; + result.raw = raw; + } else { + result.type = 'object'; + } } else if (properties.length === 1 && typeof properties[0].key === 'object') { - result.type = 'objectOf'; const v = transformType(properties[0].value); - if (typeof v.type === 'string') result.value = v.type; + if (typeof v === 'string') { + result.value = v; + result.type = 'objectOf'; + } else if (typeof v?.type === 'string') { + result.value = v.type; + result.type = 'objectOf'; + } else { + result.type = 'object'; + } } else if (properties.length === 1 && properties[0].key === '__call') { result.type = 'func'; } else { @@ -97,10 +118,15 @@ export function transformType(itemType: any) { .filter((item: any) => typeof item.key !== 'object') .map((prop: any) => { const { key } = prop; - return transformItem(key, { + const typeItem = { ...omit(prop.value, 'name'), - type: pick(prop.value, ['name', 'value']), - }); + type: prop.value.type || {}, + }; + typeItem.type = { + ...typeItem.type, + ...pick(prop.value, ['name', 'value']), + }; + return transformItem(key, typeItem); }); } break; @@ -111,7 +137,7 @@ export function transformType(itemType: any) { break; case 'exact': case 'shape': - result.value = Object.keys(value).map((n) => { + result.value = Object.keys(value).map(n => { // tslint:disable-next-line:variable-name const { name: _name, ...others } = value[n]; return transformItem(n, { @@ -125,21 +151,71 @@ export function transformType(itemType: any) { case (name.match(/ReactNode$/) || {}).input: result.type = 'node'; break; - case (name.match(/Element$/) || {}).input: + case (name.match(/JSX\.Element$/) || {}).input: result.type = 'element'; break; - // case (name.match(/ElementType$/) || {}).input: - // result.type = 'elementType'; - // break; default: - // result.type = 'instanceOf'; - // result.value = name; - result.type = 'any'; + result.type = 'object'; break; } if (Object.keys(result).length === 1) { return result.type; } + if (result?.type === 'oneOfType') { + return combineOneOfValues(result); + } + return result; +} + +function combineOneOfValues(propType) { + if (propType.type !== 'oneOfType') { + return propType; + } + const newValue = []; + let oneOfItem = null; + let firstBooleanIndex = -1; + propType.value.forEach(item => { + if (item?.type === 'oneOf') { + if (!oneOfItem) { + oneOfItem = { + type: 'oneOf', + value: [], + }; + } + if (item.value.includes(true) || item.value.includes(false)) { + if (firstBooleanIndex !== -1) { + oneOfItem.value.splice(firstBooleanIndex, 1); + newValue.push('bool'); + } else { + firstBooleanIndex = oneOfItem.value.length; + oneOfItem.value = oneOfItem.value.concat(item.value); + } + } else { + oneOfItem.value = oneOfItem.value.concat(item.value); + } + } else { + newValue.push(item); + } + }); + let result = propType; + const oneOfItemLength = oneOfItem?.value?.length; + if (oneOfItemLength) { + newValue.push(oneOfItem); + } + if (firstBooleanIndex !== -1 || oneOfItemLength) { + result = { + ...propType, + value: newValue, + }; + } + if (result.value.length === 1 && result.value[0]?.type === 'oneOf') { + result = { + ...result, + type: 'oneOf', + value: result.value[0].value, + }; + } + result.value = uniq(result.value); return result; } @@ -175,6 +251,8 @@ export function transformItem(name: string, item: any) { if (defaultValue === null) { result.defaultValue = defaultValue; } else { + // if ('computed' in defaultValue) { + // val = val.value; try { const value = safeEval(defaultValue.value); if (isEvaluable(value)) { @@ -184,9 +262,13 @@ export function transformItem(name: string, item: any) { log(e); } } + // else { + // result.defaultValue = defaultValue.value; + // } } if (result.propType === undefined) { delete result.propType; } + return result; } diff --git a/packages/material-parser/src/parse/ts/index.ts b/packages/material-parser/src/parse/ts/index.ts index 0ca0279db..b9e28b1f5 100644 --- a/packages/material-parser/src/parse/ts/index.ts +++ b/packages/material-parser/src/parse/ts/index.ts @@ -12,9 +12,18 @@ type ExtendedType = ts.Type & { typeArguments: any[]; }; +function getNextParentIds(parentIds: number[], type: ts.Type) { + // @ts-ignore + const id = type?.symbol?.id; + if (id) { + return [...parentIds, id]; + } + return parentIds; +} + function getSymbolName(symbol: ts.Symbol) { // @ts-ignore - const prefix: string = symbol.parent && getSymbolName(symbol.parent); + const prefix: string = symbol?.parent && getSymbolName(symbol.parent); const name = symbol.getName(); if (prefix && prefix.length <= 20) { return `${prefix}.${name}`; @@ -22,6 +31,33 @@ function getSymbolName(symbol: ts.Symbol) { return name; } +function getFunctionParams(parameters: any[] = [], checker, parentIds, type) { + return parameters.map(node => { + const typeObject = checker.getTypeOfSymbolAtLocation(node.symbol, node.symbol.valueDeclaration); + const v = getDocgenTypeHelper(checker, typeObject, false, getNextParentIds(parentIds, type)); + const name = node.symbol.escapedName; + return { + name, + propType: v, + }; + }); +} + +/** + * Indicates that a symbol is an alias that does not merge with a local declaration. + * OR Is a JSContainer which may merge an alias with a local declaration + */ +// function isNonLocalAlias( +// symbol: ts.Symbol | undefined, +// excludes = SymbolFlags.Value | SymbolFlags.Type | SymbolFlags.Namespace, +// ): symbol is ts.Symbol { +// if (!symbol) return false; +// return ( +// (symbol.flags & (SymbolFlags.Alias | excludes)) === SymbolFlags.Alias || +// !!(symbol.flags & SymbolFlags.Alias && symbol.flags & SymbolFlags.Assignment) +// ); +// } + const blacklistNames = [ 'prototype', 'getDerivedStateFromProps', @@ -34,6 +70,38 @@ const blacklistNames = [ 'Consumer', ]; +const blacklistPatterns = [ + /^HTML/, + /^React\./, + /^Object$/, + /^Date$/, + /^Promise$/, + /^XML/, + /^Function$/, +]; + +function hasTooManyTypes(type) { + return type?.types?.length >= 20; +} + +function isComplexType(type) { + let isAliasSymbol = false; + let symbol = type?.symbol; + if (!symbol) { + symbol = type?.aliasSymbol; + isAliasSymbol = true; + } + if (!symbol) return false; + if (isAliasSymbol && !hasTooManyTypes(type)) { + return false; + } + const name = getSymbolName(symbol); + if (blacklistPatterns.some(patt => patt.test(name))) { + return true; + } + return false; +} + function getDocgenTypeHelper( checker: ts.TypeChecker, type: ts.Type, @@ -70,10 +138,10 @@ function getDocgenTypeHelper( function getShapeFromArray(symbolArr: ts.Symbol[], _type: ts.Type) { const shape: Array<{ key: - | { - name: string; - } - | string; + | { + name: string; + } + | string; value: any; }> = symbolArr.map(prop => { const propType = checker.getTypeOfSymbolAtLocation( @@ -89,7 +157,7 @@ function getDocgenTypeHelper( propType, false, // @ts-ignore - [...parentIds, _type.id], + getNextParentIds(parentIds, _type), // @ts-ignore prop?.valueDeclaration?.questionToken ? false : undefined, ), @@ -108,11 +176,13 @@ function getDocgenTypeHelper( key: { name: 'string', }, - // @ts-ignore use internal methods - value: getDocgenTypeHelper(checker, _type.stringIndexInfo.type, false, [ - ...parentIds, - (_type as ExtendedType).id, - ]), + value: getDocgenTypeHelper( + checker, + // @ts-ignore use internal methods + _type.stringIndexInfo.type, + false, + getNextParentIds(parentIds, _type), + ), }); } else if (_type.getNumberIndexType()) { // @ts-ignore use internal methods @@ -124,11 +194,13 @@ function getDocgenTypeHelper( name: 'number', }, - // @ts-ignore use internal methods - value: getDocgenTypeHelper(checker, _type.numberIndexInfo.type, false, [ - ...parentIds, - (_type as ExtendedType).id, - ]), + value: getDocgenTypeHelper( + checker, + // @ts-ignore use internal methods + _type.numberIndexInfo.type, + false, + getNextParentIds(parentIds, _type), + ), }); } return shape; @@ -139,6 +211,9 @@ function getDocgenTypeHelper( if (symbol && symbol.members) { // @ts-ignore const props: ts.Symbol[] = Array.from(symbol.members.values()); + if (props.length >= 20) { + throw new Error('too many props'); + } return getShapeFromArray( props.filter(prop => prop.getName() !== '__index'), _type, @@ -147,6 +222,9 @@ function getDocgenTypeHelper( // @ts-ignore const args = _type.resolvedTypeArguments || []; const props = checker.getPropertiesOfType(_type); + if (props.length >= 20) { + throw new Error('too many props'); + } const shape = getShapeFromArray(props.slice(0, args.length), _type); return shape; } @@ -154,9 +232,9 @@ function getDocgenTypeHelper( const pattern = /^__global\.(.+)$/; // @ts-ignore - if (parentIds.includes(type.id)) { + if (parentIds.includes(type?.symbol?.id)) { return makeResult({ - name: checker.typeToString(type), + name: 'object', // checker.typeToString(type), }); } if (type.symbol) { @@ -170,6 +248,7 @@ function getDocgenTypeHelper( } } } + if (type.flags & TypeFlags.Number) { return makeResult({ name: 'number', @@ -198,63 +277,140 @@ function getDocgenTypeHelper( return makeResult({ name: 'any', }); - } else if (type.flags & TypeFlags.Union) { + } else if (type.flags & TypeFlags.Union && !isComplexType(type)) { return makeResult({ name: 'union', // @ts-ignore - value: type.types.map(t => getDocgenTypeHelper(checker, t, true, [...parentIds, type.id])), + value: type.types.map(t => + getDocgenTypeHelper(checker, t, true, getNextParentIds(parentIds, type)), + ), + }); + } else if (isComplexType(type)) { + return makeResult({ + name: getSymbolName(type?.symbol || type?.aliasSymbol), }); } else if (type.flags & (TypeFlags.Object | TypeFlags.Intersection)) { if (isTuple(type)) { - const props = getShape(type); - return makeResult({ - name: 'union', - value: props.map(p => p.value), - }); + try { + const props = getShape(type); + return makeResult({ + name: 'tuple', + value: props.map(p => p.value), + }); + } catch (e) { + return makeResult({ + name: 'object', + }); + } + // @ts-ignore } else if (checker.isArrayType(type)) { return makeResult({ name: 'Array', // @ts-ignore elements: [ - getDocgenTypeHelper(checker, (type as ExtendedType).typeArguments[0], false, [ - ...parentIds, - (type as any).id, - ]), + getDocgenTypeHelper( + checker, + (type as ExtendedType).typeArguments[0], + false, + getNextParentIds(parentIds, type), + ), ], }); - } else if (type.aliasSymbol) { - return makeResult({ - name: getSymbolName(type.aliasSymbol), - }); // @ts-ignore } else if (type?.symbol?.valueDeclaration?.parameters?.length) { return makeResult({ name: 'func', + value: getFunctionParams( + // @ts-ignore + type?.symbol?.valueDeclaration?.parameters, + checker, + parentIds, + type, + ), + }); + } else if ( + // @ts-ignore + type?.members?.get('__call')?.declarations[0]?.symbol?.declarations[0]?.parameters?.length + ) { + return makeResult({ + name: 'func', + value: getFunctionParams( + // @ts-ignore + type?.members?.get('__call')?.declarations[0]?.symbol?.declarations[0]?.parameters, + checker, + parentIds, + type, + ), }); } else { - const props = getShape(type); - return makeResult({ - name: 'signature', - type: { - signature: { - properties: props, + try { + const props = getShape(type); + return makeResult({ + name: 'signature', + type: { + signature: { + properties: props, + }, }, - }, - }); + }); + } catch (e) { + return makeResult({ + name: 'object', + }); + } } } else { return makeResult({ - name: 'any', + name: 'object', }); } } class MyParser extends Parser { getDocgenType(propType: ts.Type): any { + const parentIds = []; // @ts-ignore - const result = getDocgenTypeHelper(this.checker, propType, true); + const parentId = propType?.symbol?.parent?.id; + if (parentId) { + parentIds.push(parentId); + } + // @ts-ignore + const result = getDocgenTypeHelper(this.checker, propType, true, parentIds); return result; } + + // override the builtin method, to avoid the false positive + public extractPropsFromTypeIfStatelessComponent(type: ts.Type): ts.Symbol | null { + const callSignatures = type.getCallSignatures(); + + if (callSignatures.length) { + // Could be a stateless component. Is a function, so the props object we're interested + // in is the (only) parameter. + + for (const sig of callSignatures) { + const params = sig.getParameters(); + if (params.length === 0) { + continue; + } + + // @ts-ignore + const returnSymbol = this.checker.getReturnTypeOfSignature(sig); + if (!returnSymbol) continue; + const symbol = returnSymbol?.symbol; + if (!symbol) continue; + // @ts-ignore + const typeString = this.checker.symbolToString(symbol); + if (typeString.startsWith('ReactElement')) { + const propsParam = params[0]; + if (propsParam) { + return propsParam; + } + } + } + } + + return null; + } } const compilerOptions = { @@ -300,6 +456,9 @@ export default function parseTS( if (blacklistNames.includes(name)) { continue; } + + // polyfill valueDeclaration + sym.valueDeclaration = sym.valueDeclaration || sym.declarations[0]; // @ts-ignore const info = parser.getComponentInfo(sym, sourceFile, parserOpts.componentNameResolver); if (info === null) { @@ -326,7 +485,6 @@ export default function parseTS( sym, sym.valueDeclaration || sym.declarations[0], ); - Array.prototype.push.apply( exportSymbols, type.getProperties().map((x: SymbolWithMeta) => { @@ -341,6 +499,10 @@ export default function parseTS( const coms = result.reduce((res: any[], info: any) => { if (!info || !info.props || isEmpty(info.props)) return res; const props = Object.keys(info.props).reduce((acc: any[], name) => { + // omit aria related properties temporarily + if (name.startsWith('aria-')) { + return acc; + } try { const item: any = transformItem(name, info.props[name]); acc.push(item); diff --git a/packages/material-parser/test/fixtures/__snapshots__/test/antd.ts.md b/packages/material-parser/test/fixtures/__snapshots__/test/antd.ts.md index b93536ef3..f8bfe073c 100644 --- a/packages/material-parser/test/fixtures/__snapshots__/test/antd.ts.md +++ b/packages/material-parser/test/fixtures/__snapshots__/test/antd.ts.md @@ -39,10 +39,18 @@ Generated by [AVA](https://avajs.dev). { description: '固定状态改变时触发的回调函数', name: 'onChange', - propType: 'func', + propType: { + raw: '(affixed?: boolean) => void', + type: 'func', + value: [ + { + name: 'affixed', + propType: 'bool', + }, + ], + }, }, { - defaultValue: null, description: '设置 Affix 需要监听其滚动事件的元素,值为一个返回对应 DOM 元素的函数', name: 'target', propType: 'func', @@ -76,6 +84,87 @@ Generated by [AVA](https://avajs.dev). name: 'prefixCls', propType: 'string', }, + { + name: 'className', + propType: 'string', + }, + { + name: 'style', + propType: 'object', + }, + { + name: 'offsetTop', + propType: 'number', + }, + { + name: 'bounds', + propType: 'number', + }, + { + name: 'affix', + propType: 'bool', + }, + { + name: 'showInkInFixed', + propType: 'bool', + }, + { + name: 'getContainer', + propType: 'func', + }, + { + description: 'Return customize highlight anchor', + name: 'getCurrentAnchor', + propType: 'func', + }, + { + name: 'onClick', + propType: { + raw: '(e: MouseEvent, link: { title: ReactNode; href: string; }) => void', + type: 'func', + value: [ + { + name: 'e', + propType: 'object', + }, + { + name: 'link', + propType: { + type: 'shape', + value: [ + { + name: 'title', + propType: 'node', + }, + { + name: 'href', + propType: 'string', + }, + ], + }, + }, + ], + }, + }, + { + description: 'Scroll to target offset value, if none, it\'s offsetTop prop value or 0.', + name: 'targetOffset', + propType: 'number', + }, + { + description: 'Listening event when scrolling change active link', + name: 'onChange', + propType: { + raw: '(currentActiveLink: string) => void', + type: 'func', + value: [ + { + name: 'currentActiveLink', + propType: 'string', + }, + ], + }, + }, ], screenshot: '', title: 'antd', @@ -134,6 +223,19 @@ Generated by [AVA](https://avajs.dev). name: 'className', propType: 'string', }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, { name: 'id', propType: 'string', @@ -145,7 +247,10 @@ Generated by [AVA](https://avajs.dev). value: { type: 'oneOfType', value: [ - 'objectOf', + { + type: 'objectOf', + value: 'any', + }, { type: 'shape', value: [ @@ -168,14 +273,8 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'arrayOf', value: { - 0: 'o', - 1: 'b', - 2: 'j', - 3: 'e', - 4: 'c', - 5: 't', - 6: 'O', - 7: 'f', + type: 'objectOf', + value: 'any', }, }, }, @@ -219,9 +318,8 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'any', + 'bool', + 'func', ], }, }, @@ -235,7 +333,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onSearch', - propType: 'func', + propType: { + raw: '(value: string) => void', + type: 'func', + value: [ + { + name: 'value', + propType: 'string', + }, + ], + }, }, { name: 'allowClear', @@ -260,64 +367,18 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', 'object', { - type: 'shape', + raw: '(props: any) => ReactNode', + type: 'func', value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, { name: 'props', propType: 'any', }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, ], }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', ], }, }, @@ -351,8 +412,7 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'number', - false, - true, + 'bool', ], }, }, @@ -362,7 +422,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'dropdownRender', - propType: 'func', + propType: { + raw: '(menu: ReactElement ReactElement Component)>) | (new (props: any) => Component)>) => ReactElement<...>', + type: 'func', + value: [ + { + name: 'menu', + propType: 'object', + }, + ], + }, }, { name: 'dropdownAlign', @@ -378,7 +447,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'getPopupContainer', - propType: 'any', + propType: { + raw: 'RenderDOMFunc', + type: 'func', + value: [ + { + name: 'props', + propType: 'any', + }, + ], + }, }, { name: 'direction', @@ -427,64 +505,49 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', 'object', { - type: 'shape', + raw: '(omittedValues: LabelValueType[]) => ReactNode', + type: 'func', value: [ { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', + name: 'omittedValues', propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'label', + propType: 'node', + }, + ], + }, }, }, ], }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', ], }, }, @@ -492,26 +555,215 @@ Generated by [AVA](https://avajs.dev). name: 'tokenSeparators', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'tagRender', - propType: 'func', + propType: { + raw: '(props: CustomTagProps) => ReactElement ReactElement Component)>) | (new (props: any) => Component<...>)>', + type: 'func', + value: [ + { + name: 'props', + propType: { + type: 'shape', + value: [ + { + name: 'label', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'shape', + value: [ + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'label', + propType: 'node', + }, + ], + }, + { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'label', + propType: 'node', + }, + ], + }, + }, + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, + }, + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'shape', + value: [ + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'label', + propType: 'node', + }, + ], + }, + { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'label', + propType: 'node', + }, + ], + }, + }, + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'onClose', + propType: { + raw: '(event?: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'closable', + propType: 'bool', + }, + ], + }, + }, + ], + }, }, { name: 'showAction', propType: { type: 'arrayOf', value: { - type: 'oneOfType', + type: 'oneOf', value: [ 'focus', 'click', @@ -525,19 +777,55 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onKeyUp', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDown', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPopupScroll', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDropdownVisibleChange', - propType: 'func', + propType: { + raw: '(open: boolean) => void', + type: 'func', + value: [ + { + name: 'open', + propType: 'bool', + }, + ], + }, }, { name: 'onSelect', @@ -549,31 +837,81 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onInputKeyDown', - propType: 'func', - }, - { - name: 'onClick', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'choiceTransitionName', @@ -591,7 +929,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onClear', - propType: 'any', + propType: 'func', }, { name: 'skipTriggerChange', @@ -603,458 +941,75 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onRawSelect', - propType: 'object', + propType: { + raw: '(value: ReactText, option: OptionsType[number], source: SelectSource) => void', + type: 'func', + value: [ + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'option', + propType: 'object', + }, + { + name: 'source', + propType: { + type: 'oneOf', + value: [ + 'option', + 'selection', + 'input', + ], + }, + }, + ], + }, }, { name: 'onRawDeselect', - propType: 'object', + propType: { + raw: '(value: ReactText, option: OptionsType[number], source: SelectSource) => void', + type: 'func', + value: [ + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'option', + propType: 'object', + }, + { + name: 'source', + propType: { + type: 'oneOf', + value: [ + 'option', + 'selection', + 'input', + ], + }, + }, + ], + }, }, ], }, }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'suffixIcon', propType: 'node', @@ -1062,7 +1017,7 @@ Generated by [AVA](https://avajs.dev). { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'middle', @@ -1079,20 +1034,17 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - 'func', { - type: 'shape', + raw: '(instance: Select) => void', + type: 'func', value: [ { - name: 'T', - propType: 'any', - }, - { - name: 'current', - propType: 'any', + name: 'instance', + propType: 'object', }, ], }, + 'object', ], }, }, @@ -1127,7 +1079,7 @@ Generated by [AVA](https://avajs.dev). description: 'Type of Alert styles, options:`success`, `info`, `warning`, `error`', name: 'type', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'success', 'info', @@ -1162,7 +1114,16 @@ Generated by [AVA](https://avajs.dev). { description: 'Callback when close Alert', name: 'onClose', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { description: 'Trigger when animation ending of Alert', @@ -1196,15 +1157,42 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, ], screenshot: '', @@ -1227,7 +1215,7 @@ Generated by [AVA](https://avajs.dev). description: 'Shape of avatar, options:`circle`, `square`', name: 'shape', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'circle', 'square', @@ -1240,9 +1228,14 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'number', - 'small', - 'large', - 'default', + { + type: 'oneOf', + value: [ + 'small', + 'large', + 'default', + ], + }, ], }, }, @@ -1299,13 +1292,21 @@ Generated by [AVA](https://avajs.dev). }, props: [ { - defaultValue: 400, name: 'visibilityHeight', propType: 'number', }, { name: 'onClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'target', @@ -1345,24 +1346,20 @@ Generated by [AVA](https://avajs.dev). }, props: [ { - defaultValue: null, description: 'Number to show in badge', name: 'count', propType: 'node', }, { - defaultValue: false, name: 'showZero', propType: 'bool', }, { - defaultValue: 99, description: 'Max count to show', name: 'overflowCount', propType: 'number', }, { - defaultValue: false, description: 'whether to show red dot without number', name: 'dot', propType: 'bool', @@ -1386,7 +1383,7 @@ Generated by [AVA](https://avajs.dev). { name: 'status', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'success', 'warning', @@ -1402,19 +1399,24 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'object', - 'pink', - 'red', - 'yellow', - 'orange', - 'cyan', - 'green', - 'blue', - 'purple', - 'geekblue', - 'magenta', - 'volcano', - 'gold', - 'lime', + { + type: 'oneOf', + value: [ + 'pink', + 'red', + 'yellow', + 'orange', + 'cyan', + 'green', + 'blue', + 'purple', + 'geekblue', + 'magenta', + 'volcano', + 'gold', + 'lime', + ], + }, ], }, }, @@ -1424,25 +1426,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'offset', - propType: { - type: 'oneOfType', - value: [ - { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - ], - }, + propType: 'object', }, { name: 'title', @@ -1488,11 +1472,7 @@ Generated by [AVA](https://avajs.dev). name: 'children', propType: { type: 'arrayOf', - value: { - 0: 'a', - 1: 'n', - 2: 'y', - }, + value: 'object', }, }, ], @@ -1509,1727 +1489,217 @@ Generated by [AVA](https://avajs.dev). }, { name: 'itemRender', - propType: 'func', - }, - { - name: 'style', - propType: 'object', - }, - { - name: 'className', - propType: 'string', - }, - ], - screenshot: '', - title: 'antd', - }, - { - componentName: 'Calendar', - devMode: 'proCode', - docUrl: '', - npm: { - destructuring: true, - exportName: 'Calendar', - main: 'components/index.tsx', - package: 'antd', - subName: '', - version: '4.1.4', - }, - props: [ - { - name: 'prefixCls', - propType: 'string', - }, - { - name: 'className', - propType: 'string', - }, - { - name: 'style', - propType: 'object', - }, - { - name: 'locale', - propType: 'any', - }, - { - name: 'validRange', propType: { - type: 'oneOfType', + raw: '(route: Route, params: any, routes: Route[], paths: string[]) => ReactNode', + type: 'func', value: [ { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, - { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, - ], - }, - }, - { - name: 'disabledDate', - propType: 'func', - }, - { - name: 'dateFullCellRender', - propType: 'func', - }, - { - name: 'dateCellRender', - propType: 'func', - }, - { - name: 'monthFullCellRender', - propType: 'func', - }, - { - name: 'monthCellRender', - propType: 'func', - }, - { - name: 'headerRender', - propType: 'any', - }, - { - name: 'value', - propType: { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, - }, - { - name: 'defaultValue', - propType: { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, - }, - { - name: 'mode', - propType: { - type: 'oneOfType', - value: [ - 'year', - 'month', - ], - }, - }, - { - name: 'fullscreen', - propType: 'bool', - }, - { - name: 'onChange', - propType: 'func', - }, - { - name: 'onPanelChange', - propType: 'func', - }, - { - name: 'onSelect', - propType: 'func', - }, - ], - screenshot: '', - title: 'antd', - }, - { - componentName: 'Card', - devMode: 'proCode', - docUrl: '', - npm: { - destructuring: true, - exportName: 'Card', - main: 'components/index.tsx', - package: 'antd', - subName: '', - version: '4.1.4', - }, - props: [ - { - name: 'prefixCls', - propType: 'string', - }, - { - name: 'title', - propType: 'node', - }, - { - name: 'extra', - propType: 'node', - }, - { - name: 'bordered', - propType: 'bool', - }, - { - name: 'headStyle', - propType: 'object', - }, - { - name: 'bodyStyle', - propType: 'object', - }, - { - name: 'style', - propType: 'object', - }, - { - name: 'loading', - propType: 'bool', - }, - { - name: 'hoverable', - propType: 'bool', - }, - { - name: 'id', - propType: 'string', - }, - { - name: 'className', - propType: 'string', - }, - { - name: 'size', - propType: { - type: 'oneOfType', - value: [ - 'small', - 'default', - ], - }, - }, - { - name: 'type', - propType: 'inner', - }, - { - name: 'cover', - propType: 'node', - }, - { - name: 'actions', - propType: { - type: 'arrayOf', - value: { - 0: 'n', - 1: 'o', - 2: 'd', - 3: 'e', - }, - }, - }, - { - name: 'tabList', - propType: { - type: 'arrayOf', - value: { - type: 'shape', - value: [ - { - name: 'key', - propType: 'string', - }, - { - name: 'tab', - propType: 'node', - }, - { - name: 'disabled', - propType: 'bool', - }, - ], - }, - }, - }, - { - name: 'tabBarExtraContent', - propType: 'node', - }, - { - name: 'onTabChange', - propType: 'func', - }, - { - name: 'activeTabKey', - propType: 'string', - }, - { - name: 'defaultActiveTabKey', - propType: 'string', - }, - { - name: 'tabProps', - propType: { - type: 'shape', - value: [ - { - name: 'activeKey', - propType: 'string', - }, - { - name: 'defaultActiveKey', - propType: 'string', - }, - { - name: 'hideAdd', - propType: 'bool', - }, - { - name: 'onChange', - propType: 'object', - }, - { - name: 'onTabClick', - propType: 'object', - }, - { - name: 'onPrevClick', - propType: 'func', - }, - { - name: 'onNextClick', - propType: 'func', - }, - { - name: 'tabBarExtraContent', - propType: 'node', - }, - { - name: 'tabBarStyle', - propType: 'object', - }, - { - name: 'type', + name: 'route', propType: { - type: 'oneOfType', + type: 'shape', value: [ - 'line', - 'card', - 'editable-card', - ], - }, - }, - { - name: 'tabPosition', - propType: { - type: 'oneOfType', - value: [ - 'top', - 'right', - 'bottom', - 'left', - ], - }, - }, - { - name: 'onEdit', - propType: 'object', - }, - { - name: 'size', - propType: { - type: 'oneOfType', - value: [ - 'small', - 'large', - 'default', - ], - }, - }, - { - name: 'style', - propType: 'object', - }, - { - name: 'prefixCls', - propType: 'string', - }, - { - name: 'className', - propType: 'string', - }, - { - name: 'animated', - propType: { - type: 'oneOfType', - value: [ - false, - true, { - type: 'shape', - value: [ - { - name: 'inkBar', - propType: 'bool', - }, - { - name: 'tabPane', - propType: 'bool', - }, - ], + name: 'path', + propType: 'string', + }, + { + name: 'breadcrumbName', + propType: 'string', + }, + { + name: 'children', + propType: { + type: 'arrayOf', + value: 'object', + }, }, ], }, }, { - name: 'tabBarGutter', - propType: 'number', + name: 'params', + propType: 'any', }, { - name: 'renderTabBar', - propType: 'object', + name: 'routes', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'path', + propType: 'string', + }, + { + name: 'breadcrumbName', + propType: 'string', + }, + { + name: 'children', + propType: { + type: 'arrayOf', + value: 'object', + }, + }, + ], + }, + }, }, { - name: 'destroyInactiveTabPane', - propType: 'bool', - }, - { - name: 'keyboard', - propType: 'bool', + name: 'paths', + propType: { + type: 'arrayOf', + value: 'string', + }, }, ], }, }, + { + name: 'style', + propType: 'object', + }, + { + name: 'className', + propType: 'string', + }, + ], + screenshot: '', + title: 'antd', + }, + { + componentName: 'Button', + devMode: 'proCode', + docUrl: '', + npm: { + destructuring: true, + exportName: 'Button', + main: 'components/index.tsx', + package: 'antd', + subName: '', + version: '4.1.4', + }, + props: [ + { + name: 'href', + propType: 'string', + }, + { + name: 'target', + propType: 'string', + }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'type', + propType: { + type: 'oneOf', + value: [ + 'link', + 'default', + 'ghost', + 'danger', + 'primary', + 'dashed', + ], + }, + }, + { + name: 'icon', + propType: 'node', + }, + { + name: 'shape', + propType: { + type: 'oneOf', + value: [ + 'circle', + 'circle-outline', + 'round', + ], + }, + }, + { + name: 'size', + propType: { + type: 'oneOf', + value: [ + 'small', + 'middle', + 'large', + ], + }, + }, + { + name: 'loading', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'shape', + value: [ + { + name: 'delay', + propType: 'number', + }, + ], + }, + ], + }, + }, + { + name: 'prefixCls', + propType: 'string', + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'ghost', + propType: 'bool', + }, + { + name: 'danger', + propType: 'bool', + }, + { + name: 'block', + propType: 'bool', + }, + { + name: 'style', + propType: 'object', + }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'id', + propType: 'string', }, { name: 'defaultValue', @@ -3240,14 +1710,7 @@ Generated by [AVA](https://avajs.dev). 'number', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, @@ -3262,491 +1725,153 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onKeyUp', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDown', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelect', - propType: 'func', - }, - { - name: 'onClick', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', - }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', propType: { - type: 'oneOfType', + raw: '(event: MouseEvent) => void', + type: 'func', value: [ - false, - true, - 'false', - 'true', + { + name: 'event', + propType: 'object', + }, ], }, }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'onError', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'color', propType: 'string', }, + { + name: 'title', + propType: 'string', + }, + { + name: 'download', + propType: 'any', + }, + { + name: 'hrefLang', + propType: 'string', + }, + { + name: 'media', + propType: 'string', + }, + { + name: 'ping', + propType: 'string', + }, + { + name: 'rel', + propType: 'string', + }, + { + name: 'referrerPolicy', + propType: 'string', + }, { name: 'defaultChecked', propType: 'bool', @@ -3768,11 +1893,15 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', - 'inherit', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + 'inherit', + ], + }, ], }, }, @@ -3789,10 +1918,14 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, @@ -3813,17 +1946,21 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, { name: 'translate', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'yes', 'no', @@ -3913,7 +2050,7 @@ Generated by [AVA](https://avajs.dev). { name: 'unselectable', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'off', 'on', @@ -3924,7 +2061,7 @@ Generated by [AVA](https://avajs.dev). description: 'Hints at the type of data that might be entered by the user while editing the element or its contents', name: 'inputMode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'none', 'text', @@ -3956,599 +2093,4469 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onCopy', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCopyCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCut', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCutCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPaste', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPasteCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEnd', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEndCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStart', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStartCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdate', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdateCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocusCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlurCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onChangeCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onReset', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onResetCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmit', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmitCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalid', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalidCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoad', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onErrorCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDownCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPress', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPressCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyUpCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbort', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbortCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThrough', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThroughCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptied', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptiedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncrypted', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncryptedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEnded', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEndedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedData', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedDataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadata', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStart', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStartCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPause', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPauseCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlaying', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgress', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgressCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeked', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeking', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalled', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalledCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspend', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspendCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdate', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdateCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaiting', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaitingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenu', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenuCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrag', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnd', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEndCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnter', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnterCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExit', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExitCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeave', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeaveCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOver', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOverCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStart', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStartCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrop', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDropCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDownCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMove', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMoveCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOut', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOutCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOver', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOverCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUp', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUpCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelectCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancel', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancelCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEnd', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEndCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMove', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMoveCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStart', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStartCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDown', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDownCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMove', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMoveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUp', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUpCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancel', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancelCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnter', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnterCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeave', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeaveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOver', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOverCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOut', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOutCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScroll', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScrollCapture', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheel', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheelCapture', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStart', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStartCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEnd', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEndCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIteration', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIterationCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEnd', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEndCapture', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'htmlType', + propType: { + type: 'oneOf', + value: [ + 'submit', + 'button', + 'reset', + ], + }, + }, + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: 'string', + }, + ], + }, + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'autoFocus', + propType: 'bool', + }, + { + name: 'form', + propType: 'string', + }, + { + name: 'formAction', + propType: 'string', + }, + { + name: 'formEncType', + propType: 'string', + }, + { + name: 'formMethod', + propType: 'string', + }, + { + name: 'formNoValidate', + propType: 'bool', + }, + { + name: 'formTarget', + propType: 'string', + }, + { + name: 'name', + propType: 'string', + }, + ], + screenshot: '', + title: 'antd', + }, + { + componentName: 'Card', + devMode: 'proCode', + docUrl: '', + npm: { + destructuring: true, + exportName: 'Card', + main: 'components/index.tsx', + package: 'antd', + subName: '', + version: '4.1.4', + }, + props: [ + { + name: 'prefixCls', + propType: 'string', + }, + { + name: 'title', + propType: 'node', + }, + { + name: 'extra', + propType: 'node', + }, + { + name: 'bordered', + propType: 'bool', + }, + { + name: 'headStyle', + propType: 'object', + }, + { + name: 'bodyStyle', + propType: 'object', + }, + { + name: 'style', + propType: 'object', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'hoverable', + propType: 'bool', + }, + { + name: 'id', + propType: 'string', + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'size', + propType: { + type: 'oneOf', + value: [ + 'small', + 'default', + ], + }, + }, + { + name: 'type', + propType: { + type: 'oneOf', + value: [ + 'inner', + ], + }, + }, + { + name: 'cover', + propType: 'node', + }, + { + name: 'actions', + propType: { + type: 'arrayOf', + value: 'node', + }, + }, + { + name: 'tabList', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'key', + propType: 'string', + }, + { + name: 'tab', + propType: 'node', + }, + { + name: 'disabled', + propType: 'bool', + }, + ], + }, + }, + }, + { + name: 'tabBarExtraContent', + propType: 'node', + }, + { + name: 'onTabChange', + propType: { + raw: '(key: string) => void', + type: 'func', + value: [ + { + name: 'key', + propType: 'string', + }, + ], + }, + }, + { + name: 'activeTabKey', + propType: 'string', + }, + { + name: 'defaultActiveTabKey', + propType: 'string', + }, + { + name: 'tabProps', + propType: 'object', + }, + { + name: 'onChange', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'defaultValue', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: 'string', + }, + ], + }, + }, + { + name: 'placeholder', + propType: 'string', + }, + { + name: 'tabIndex', + propType: 'number', + }, + { + name: 'onKeyUp', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyDown', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSelect', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBlur', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onFocus', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseDown', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseEnter', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseLeave', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onError', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'color', + propType: 'string', + }, + { + name: 'defaultChecked', + propType: 'bool', + }, + { + name: 'suppressContentEditableWarning', + propType: 'bool', + }, + { + name: 'suppressHydrationWarning', + propType: 'bool', + }, + { + name: 'accessKey', + propType: 'string', + }, + { + name: 'contentEditable', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + 'inherit', + ], + }, + ], + }, + }, + { + name: 'contextMenu', + propType: 'string', + }, + { + name: 'dir', + propType: 'string', + }, + { + name: 'draggable', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, + ], + }, + }, + { + name: 'hidden', + propType: 'bool', + }, + { + name: 'lang', + propType: 'string', + }, + { + name: 'slot', + propType: 'string', + }, + { + name: 'spellCheck', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, + ], + }, + }, + { + name: 'translate', + propType: { + type: 'oneOf', + value: [ + 'yes', + 'no', + ], + }, + }, + { + name: 'radioGroup', + propType: 'string', + }, + { + name: 'role', + propType: 'string', + }, + { + name: 'about', + propType: 'string', + }, + { + name: 'datatype', + propType: 'string', + }, + { + name: 'inlist', + propType: 'any', + }, + { + name: 'prefix', + propType: 'string', + }, + { + name: 'property', + propType: 'string', + }, + { + name: 'resource', + propType: 'string', + }, + { + name: 'typeof', + propType: 'string', + }, + { + name: 'vocab', + propType: 'string', + }, + { + name: 'autoCapitalize', + propType: 'string', + }, + { + name: 'autoCorrect', + propType: 'string', + }, + { + name: 'autoSave', + propType: 'string', + }, + { + name: 'itemProp', + propType: 'string', + }, + { + name: 'itemScope', + propType: 'bool', + }, + { + name: 'itemType', + propType: 'string', + }, + { + name: 'itemID', + propType: 'string', + }, + { + name: 'itemRef', + propType: 'string', + }, + { + name: 'results', + propType: 'number', + }, + { + name: 'security', + propType: 'string', + }, + { + name: 'unselectable', + propType: { + type: 'oneOf', + value: [ + 'off', + 'on', + ], + }, + }, + { + description: 'Hints at the type of data that might be entered by the user while editing the element or its contents', + name: 'inputMode', + propType: { + type: 'oneOf', + value: [ + 'none', + 'text', + 'tel', + 'url', + 'email', + 'numeric', + 'decimal', + 'search', + ], + }, + }, + { + description: 'Specify that a standard HTML element should behave like a defined custom built-in element', + name: 'is', + propType: 'string', + }, + { + name: 'dangerouslySetInnerHTML', + propType: { + type: 'shape', + value: [ + { + name: '__html', + propType: 'string', + }, + ], + }, + }, + { + name: 'onCopy', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCopyCapture', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCut', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCutCapture', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPaste', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPasteCapture', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionEnd', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionEndCapture', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionStart', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionStartCapture', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionUpdate', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionUpdateCapture', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onFocusCapture', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBlurCapture', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onChangeCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBeforeInput', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBeforeInputCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInput', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInputCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onReset', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onResetCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSubmit', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSubmitCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInvalid', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInvalidCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoad', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onErrorCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyDownCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyPress', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyPressCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyUpCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAbort', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAbortCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlay', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayThrough', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayThroughCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDurationChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDurationChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEmptied', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEmptiedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEncrypted', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEncryptedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEnded', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEndedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedData', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedDataCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedMetadata', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedMetadataCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadStart', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadStartCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPause', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPauseCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlay', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlayCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlaying', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlayingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onProgress', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onProgressCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onRateChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onRateChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeeked', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeekedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeeking', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeekingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onStalled', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onStalledCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSuspend', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSuspendCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTimeUpdate', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTimeUpdateCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onVolumeChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onVolumeChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWaiting', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWaitingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAuxClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAuxClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onContextMenu', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onContextMenuCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDoubleClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDoubleClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDrag', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnd', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEndCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnter', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnterCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragExit', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragExitCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragLeave', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragLeaveCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragOver', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragOverCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragStart', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragStartCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDrop', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDropCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseDownCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseMove', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseMoveCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOut', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOutCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOver', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOverCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseUp', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseUpCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSelectCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchCancel', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchCancelCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchEnd', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchEndCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchMove', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchMoveCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchStart', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchStartCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerDown', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerDownCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerMove', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerMoveCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerUp', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerUpCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerCancel', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerCancelCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerEnter', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerEnterCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerLeave', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerLeaveCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOver', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOverCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOut', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOutCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onGotPointerCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onGotPointerCaptureCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLostPointerCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLostPointerCaptureCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onScroll', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onScrollCapture', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWheel', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWheelCapture', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationStart', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationStartCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationEnd', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationEndCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationIteration', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationIterationCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTransitionEnd', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTransitionEndCapture', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, ], screenshot: '', @@ -4618,7 +6625,25 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(key: string | string[]) => void', + type: 'func', + value: [ + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + { + type: 'arrayOf', + value: 'string', + }, + ], + }, + }, + ], + }, }, { name: 'style', @@ -4629,7 +6654,6 @@ Generated by [AVA](https://avajs.dev). propType: 'string', }, { - defaultValue: true, name: 'bordered', propType: 'bool', }, @@ -4639,15 +6663,60 @@ Generated by [AVA](https://avajs.dev). }, { name: 'expandIcon', - propType: 'func', + propType: { + raw: '(panelProps: PanelProps) => ReactNode', + type: 'func', + value: [ + { + name: 'panelProps', + propType: { + type: 'shape', + value: [ + { + name: 'isActive', + propType: 'bool', + }, + { + name: 'header', + propType: 'node', + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'style', + propType: 'object', + }, + { + name: 'showArrow', + propType: 'bool', + }, + { + name: 'forceRender', + propType: 'bool', + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'extra', + propType: 'node', + }, + ], + }, + }, + ], + }, }, { name: 'expandIconPosition', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ - 'right', 'left', + 'right', ], }, }, @@ -4671,7 +6740,7 @@ Generated by [AVA](https://avajs.dev). { name: 'effect', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'fade', 'scrollx', @@ -4693,23 +6762,21 @@ Generated by [AVA](https://avajs.dev). { name: 'dotPosition', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ - 'top', - 'right', - 'bottom', 'left', + 'right', + 'top', + 'bottom', ], }, }, { - defaultValue: true, name: 'dots', propType: { type: 'oneOfType', value: [ - false, - true, + 'bool', { type: 'shape', value: [ @@ -4731,7 +6798,6 @@ Generated by [AVA](https://avajs.dev). propType: 'bool', }, { - defaultValue: false, name: 'draggable', propType: 'bool', }, @@ -4745,14 +6811,31 @@ Generated by [AVA](https://avajs.dev). }, { name: 'afterChange', - propType: 'func', + propType: { + raw: '(currentSlide: number) => void', + type: 'func', + value: [ + { + name: 'currentSlide', + propType: 'number', + }, + ], + }, }, { name: 'appendDots', - propType: 'func', + propType: { + raw: '(dots: ReactNode) => Element', + type: 'func', + value: [ + { + name: 'dots', + propType: 'node', + }, + ], + }, }, { - defaultValue: false, name: 'arrows', propType: 'bool', }, @@ -4763,23 +6846,48 @@ Generated by [AVA](https://avajs.dev). value: [ { name: 'slickNext', - propType: 'object', + propType: { + raw: '() => void', + type: 'func', + }, }, { name: 'slickPause', - propType: 'object', + propType: { + raw: '() => void', + type: 'func', + }, }, { name: 'slickPlay', - propType: 'object', + propType: { + raw: '() => void', + type: 'func', + }, }, { name: 'slickPrev', - propType: 'object', + propType: { + raw: '() => void', + type: 'func', + }, }, { name: 'slickGoTo', - propType: 'func', + propType: { + raw: '(slideNumber: number, dontAnimate?: boolean) => void', + type: 'func', + value: [ + { + name: 'slideNumber', + propType: 'number', + }, + { + name: 'dontAnimate', + propType: 'bool', + }, + ], + }, }, ], }, @@ -4794,7 +6902,20 @@ Generated by [AVA](https://avajs.dev). }, { name: 'beforeChange', - propType: 'func', + propType: { + raw: '(currentSlide: number, nextSlide: number) => void', + type: 'func', + value: [ + { + name: 'currentSlide', + propType: 'number', + }, + { + name: 'nextSlide', + propType: 'number', + }, + ], + }, }, { name: 'centerMode', @@ -4810,7 +6931,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'customPaging', - propType: 'func', + propType: { + raw: '(index: number) => Element', + type: 'func', + value: [ + { + name: 'index', + propType: 'number', + }, + ], + }, }, { name: 'easing', @@ -4839,7 +6969,7 @@ Generated by [AVA](https://avajs.dev). { name: 'lazyLoad', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'ondemand', 'progressive', @@ -4852,23 +6982,59 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onEdge', - propType: 'func', + propType: { + raw: '(swipeDirection: string) => void', + type: 'func', + value: [ + { + name: 'swipeDirection', + propType: 'string', + }, + ], + }, }, { name: 'onInit', - propType: 'object', + propType: { + raw: '() => void', + type: 'func', + }, }, { name: 'onLazyLoad', - propType: 'func', + propType: { + raw: '(slidesToLoad: number[]) => void', + type: 'func', + value: [ + { + name: 'slidesToLoad', + propType: { + type: 'arrayOf', + value: 'number', + }, + }, + ], + }, }, { name: 'onReInit', - propType: 'object', + propType: { + raw: '() => void', + type: 'func', + }, }, { name: 'onSwipe', - propType: 'func', + propType: { + raw: '(swipeDirection: string) => void', + type: 'func', + value: [ + { + name: 'swipeDirection', + propType: 'string', + }, + ], + }, }, { name: 'pauseOnDotsHover', @@ -4902,230 +7068,13 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ + 'object', { - type: 'shape', + type: 'oneOf', value: [ - { - name: 'accessibility', - propType: 'bool', - }, - { - name: 'adaptiveHeight', - propType: 'bool', - }, - { - name: 'afterChange', - propType: 'func', - }, - { - name: 'appendDots', - propType: 'func', - }, - { - name: 'arrows', - propType: 'bool', - }, - { - name: 'asNavFor', - propType: 'object', - }, - { - name: 'autoplaySpeed', - propType: 'number', - }, - { - name: 'autoplay', - propType: 'bool', - }, - { - name: 'beforeChange', - propType: 'func', - }, - { - name: 'centerMode', - propType: 'bool', - }, - { - name: 'centerPadding', - propType: 'string', - }, - { - name: 'className', - propType: 'string', - }, - { - name: 'cssEase', - propType: 'string', - }, - { - name: 'customPaging', - propType: 'func', - }, - { - name: 'dotsClass', - propType: 'string', - }, - { - name: 'dots', - propType: 'bool', - }, - { - name: 'draggable', - propType: 'bool', - }, - { - name: 'easing', - propType: 'string', - }, - { - name: 'edgeFriction', - propType: 'number', - }, - { - name: 'fade', - propType: 'bool', - }, - { - name: 'focusOnSelect', - propType: 'bool', - }, - { - name: 'infinite', - propType: 'bool', - }, - { - name: 'initialSlide', - propType: 'number', - }, - { - name: 'lazyLoad', - propType: { - type: 'oneOfType', - value: [ - 'ondemand', - 'progressive', - ], - }, - }, - { - name: 'nextArrow', - propType: 'element', - }, - { - name: 'onEdge', - propType: 'func', - }, - { - name: 'onInit', - propType: 'object', - }, - { - name: 'onLazyLoad', - propType: 'func', - }, - { - name: 'onReInit', - propType: 'object', - }, - { - name: 'onSwipe', - propType: 'func', - }, - { - name: 'pauseOnDotsHover', - propType: 'bool', - }, - { - name: 'pauseOnFocus', - propType: 'bool', - }, - { - name: 'pauseOnHover', - propType: 'bool', - }, - { - name: 'prevArrow', - propType: 'element', - }, - { - name: 'responsive', - propType: 'any', - }, - { - name: 'rows', - propType: 'number', - }, - { - name: 'rtl', - propType: 'bool', - }, - { - name: 'slide', - propType: 'string', - }, - { - name: 'slidesPerRow', - propType: 'number', - }, - { - name: 'slidesToScroll', - propType: 'number', - }, - { - name: 'slidesToShow', - propType: 'number', - }, - { - name: 'speed', - propType: 'number', - }, - { - name: 'swipeToSlide', - propType: 'bool', - }, - { - name: 'swipe', - propType: 'bool', - }, - { - name: 'swipeEvent', - propType: 'func', - }, - { - name: 'touchMove', - propType: 'bool', - }, - { - name: 'touchThreshold', - propType: 'number', - }, - { - name: 'useCSS', - propType: 'bool', - }, - { - name: 'useTransform', - propType: 'bool', - }, - { - name: 'variableWidth', - propType: 'bool', - }, - { - name: 'vertical', - propType: 'bool', - }, - { - name: 'verticalSwiping', - propType: 'bool', - }, - { - name: 'waitForAnimate', - propType: 'bool', - }, + 'unslick', ], }, - 'unslick', ], }, }, @@ -5171,7 +7120,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'swipeEvent', - propType: 'func', + propType: { + raw: '(swipeDirection: string) => void', + type: 'func', + value: [ + { + name: 'swipeDirection', + propType: 'string', + }, + ], + }, }, { name: 'touchMove', @@ -5219,10 +7177,10 @@ Generated by [AVA](https://avajs.dev). }, props: [ { - defaultValue: [], description: '可选项数据源', name: 'options', propType: { + isRequired: true, type: 'arrayOf', value: { type: 'shape', @@ -5249,7 +7207,10 @@ Generated by [AVA](https://avajs.dev). }, { name: 'children', - propType: 'any', + propType: { + type: 'arrayOf', + value: 'object', + }, }, ], }, @@ -5260,14 +7221,7 @@ Generated by [AVA](https://avajs.dev). name: 'defaultValue', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { @@ -5275,25 +7229,118 @@ Generated by [AVA](https://avajs.dev). name: 'value', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { description: '选择完成后的回调', name: 'onChange', - propType: 'func', + propType: { + raw: '(value: string[], selectedOptions?: CascaderOptionType[]) => void', + type: 'func', + value: [ + { + name: 'value', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + { + name: 'selectedOptions', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'value', + propType: 'string', + }, + { + name: 'label', + propType: 'node', + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'isLeaf', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'children', + propType: { + type: 'arrayOf', + value: 'object', + }, + }, + ], + }, + }, + }, + ], + }, }, { description: '选择后展示的渲染函数', name: 'displayRender', - propType: 'func', + propType: { + raw: '(label: string[], selectedOptions?: CascaderOptionType[]) => ReactNode', + type: 'func', + value: [ + { + name: 'label', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + { + name: 'selectedOptions', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'value', + propType: 'string', + }, + { + name: 'label', + propType: 'node', + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'isLeaf', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'children', + propType: { + type: 'arrayOf', + value: 'object', + }, + }, + ], + }, + }, + }, + ], + }, }, { description: '自定义样式', @@ -5324,7 +7371,7 @@ Generated by [AVA](https://avajs.dev). description: '输入框大小,可选 `large` `default` `small`', name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'middle', @@ -5333,19 +7380,16 @@ Generated by [AVA](https://avajs.dev). }, }, { - defaultValue: true, description: 'whether has border style', name: 'bordered', propType: 'bool', }, { - defaultValue: false, description: '禁用', name: 'disabled', propType: 'bool', }, { - defaultValue: true, description: '是否支持清除', name: 'allowClear', propType: 'bool', @@ -5355,22 +7399,264 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, + 'bool', { type: 'shape', value: [ { name: 'filter', - propType: 'object', + propType: { + raw: '(inputValue: string, path: CascaderOptionType[], names: FilledFieldNamesType) => boolean', + type: 'func', + value: [ + { + name: 'inputValue', + propType: 'string', + }, + { + name: 'path', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'value', + propType: 'string', + }, + { + name: 'label', + propType: 'node', + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'isLeaf', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'children', + propType: { + type: 'arrayOf', + value: 'object', + }, + }, + ], + }, + }, + }, + { + name: 'names', + propType: { + type: 'shape', + value: [ + { + name: 'value', + propType: 'string', + }, + { + name: 'label', + propType: 'string', + }, + { + name: 'children', + propType: 'string', + }, + ], + }, + }, + ], + }, }, { name: 'render', - propType: 'object', + propType: { + raw: '(inputValue: string, path: CascaderOptionType[], prefixCls: string, names: FilledFieldNamesType) => ReactNode', + type: 'func', + value: [ + { + name: 'inputValue', + propType: 'string', + }, + { + name: 'path', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'value', + propType: 'string', + }, + { + name: 'label', + propType: 'node', + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'isLeaf', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'children', + propType: { + type: 'arrayOf', + value: 'object', + }, + }, + ], + }, + }, + }, + { + name: 'prefixCls', + propType: 'string', + }, + { + name: 'names', + propType: { + type: 'shape', + value: [ + { + name: 'value', + propType: 'string', + }, + { + name: 'label', + propType: 'string', + }, + { + name: 'children', + propType: 'string', + }, + ], + }, + }, + ], + }, }, { name: 'sort', - propType: 'object', + propType: { + raw: '(a: CascaderOptionType[], b: CascaderOptionType[], inputValue: string, names: FilledFieldNamesType) => number', + type: 'func', + value: [ + { + name: 'a', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'value', + propType: 'string', + }, + { + name: 'label', + propType: 'node', + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'isLeaf', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'children', + propType: { + type: 'arrayOf', + value: 'object', + }, + }, + ], + }, + }, + }, + { + name: 'b', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'value', + propType: 'string', + }, + { + name: 'label', + propType: 'node', + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'isLeaf', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'children', + propType: { + type: 'arrayOf', + value: 'object', + }, + }, + ], + }, + }, + }, + { + name: 'inputValue', + propType: 'string', + }, + { + name: 'names', + propType: { + type: 'shape', + value: [ + { + name: 'value', + propType: 'string', + }, + { + name: 'label', + propType: 'string', + }, + { + name: 'children', + propType: 'string', + }, + ], + }, + }, + ], + }, }, { name: 'matchInputWidth', @@ -5382,7 +7668,12 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'number', - false, + { + type: 'oneOf', + value: [ + false, + ], + }, ], }, }, @@ -5397,13 +7688,56 @@ Generated by [AVA](https://avajs.dev). }, { name: 'loadData', - propType: 'func', + propType: { + raw: '(selectedOptions?: CascaderOptionType[]) => void', + type: 'func', + value: [ + { + name: 'selectedOptions', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'value', + propType: 'string', + }, + { + name: 'label', + propType: 'node', + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'isLeaf', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'children', + propType: { + type: 'arrayOf', + value: 'object', + }, + }, + ], + }, + }, + }, + ], + }, }, { description: '次级菜单的展开方式,可选 \'click\' 和 \'hover\'', name: 'expandTrigger', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'click', 'hover', @@ -5418,7 +7752,16 @@ Generated by [AVA](https://avajs.dev). { description: '浮层可见变化时回调', name: 'onPopupVisibleChange', - propType: 'func', + propType: { + raw: '(popupVisible: boolean) => void', + type: 'func', + value: [ + { + name: 'popupVisible', + propType: 'bool', + }, + ], + }, }, { name: 'prefixCls', @@ -5430,7 +7773,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'getPopupContainer', - propType: 'func', + propType: { + raw: '(triggerNode: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'triggerNode', + propType: 'object', + }, + ], + }, }, { name: 'popupVisible', @@ -5479,7 +7831,6 @@ Generated by [AVA](https://avajs.dev). }, props: [ { - defaultValue: false, name: 'indeterminate', propType: 'bool', }, @@ -5513,23 +7864,68 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPress', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDown', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'value', @@ -6035,14 +8431,7 @@ Generated by [AVA](https://avajs.dev). 'number', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, @@ -6068,11 +8457,15 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', - 'inherit', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + 'inherit', + ], + }, ], }, }, @@ -6089,10 +8482,14 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, @@ -6121,10 +8518,14 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, @@ -6143,7 +8544,7 @@ Generated by [AVA](https://avajs.dev). { name: 'translate', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'yes', 'no', @@ -6237,7 +8638,7 @@ Generated by [AVA](https://avajs.dev). { name: 'unselectable', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'off', 'on', @@ -6248,7 +8649,7 @@ Generated by [AVA](https://avajs.dev). description: 'Hints at the type of data that might be entered by the user while editing the element or its contents', name: 'inputMode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'none', 'text', @@ -6266,449 +8667,6 @@ Generated by [AVA](https://avajs.dev). name: 'is', propType: 'string', }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'dangerouslySetInnerHTML', propType: { @@ -6723,643 +8681,2083 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onCopy', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCopyCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCut', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCutCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPaste', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPasteCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEnd', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEndCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStart', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStartCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdate', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdateCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocusCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlurCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onChangeCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onReset', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onResetCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmit', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmitCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalid', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalidCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoad', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onError', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onErrorCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDown', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDownCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPress', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPressCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyUp', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyUpCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbort', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbortCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThrough', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThroughCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptied', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptiedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncrypted', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncryptedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEnded', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEndedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedData', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedDataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadata', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStart', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStartCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPause', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPauseCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlaying', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgress', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgressCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeked', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeking', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalled', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalledCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspend', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspendCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdate', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdateCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaiting', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaitingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenu', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenuCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrag', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnd', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEndCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnter', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnterCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExit', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExitCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeave', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeaveCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOver', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOverCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStart', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStartCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrop', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDropCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDownCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMove', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMoveCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOut', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOutCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOver', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOverCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUp', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUpCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelect', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelectCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancel', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancelCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEnd', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEndCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMove', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMoveCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStart', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStartCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDown', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDownCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMove', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMoveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUp', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUpCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancel', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancelCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnter', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnterCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeave', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeaveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOver', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOverCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOut', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOutCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScroll', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScrollCapture', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheel', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheelCapture', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStart', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStartCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEnd', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEndCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIteration', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIterationCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEnd', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEndCapture', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, ], screenshot: '', @@ -7383,12 +10781,7 @@ Generated by [AVA](https://avajs.dev). name: 'actions', propType: { type: 'arrayOf', - value: { - 0: 'n', - 1: 'o', - 2: 'd', - 3: 'e', - }, + value: 'node', }, }, { @@ -7453,7 +10846,16 @@ Generated by [AVA](https://avajs.dev). props: [ { name: 'getPopupContainer', - propType: 'func', + propType: { + raw: '(triggerNode: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'triggerNode', + propType: 'object', + }, + ], + }, }, { name: 'prefixCls', @@ -7461,7 +10863,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'renderEmpty', - propType: 'func', + propType: { + raw: '(componentName?: string) => ReactNode', + type: 'func', + value: [ + { + name: 'componentName', + propType: 'string', + }, + ], + }, }, { name: 'csp', @@ -7486,7 +10897,389 @@ Generated by [AVA](https://avajs.dev). value: [ { name: 'validateMessages', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'default', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'required', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'enum', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'whitespace', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'date', + propType: { + type: 'shape', + value: [ + { + name: 'format', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'parse', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'invalid', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + ], + }, + }, + { + name: 'types', + propType: { + type: 'shape', + value: [ + { + name: 'string', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'method', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'array', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'object', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'number', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'date', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'boolean', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'integer', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'float', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'regexp', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'email', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'url', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'hex', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + ], + }, + }, + { + name: 'string', + propType: { + type: 'shape', + value: [ + { + name: 'len', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'min', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'max', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'range', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + ], + }, + }, + { + name: 'number', + propType: { + type: 'shape', + value: [ + { + name: 'len', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'min', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'max', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'range', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + ], + }, + }, + { + name: 'array', + propType: { + type: 'shape', + value: [ + { + name: 'len', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'min', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'max', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'range', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + ], + }, + }, + { + name: 'pattern', + propType: { + type: 'shape', + value: [ + { + name: 'mismatch', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + ], + }, + }, + ], + }, }, ], }, @@ -7506,7 +11299,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'DatePicker', - propType: 'any', + propType: 'object', }, { name: 'TimePicker', @@ -7518,19 +11311,112 @@ Generated by [AVA](https://avajs.dev). }, { name: 'Table', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'filterTitle', + propType: 'string', + }, + { + name: 'filterConfirm', + propType: 'node', + }, + { + name: 'filterReset', + propType: 'node', + }, + { + name: 'emptyText', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + 'bool', + 'object', + 'func', + ], + }, + }, + { + name: 'selectAll', + propType: 'node', + }, + { + name: 'selectInvert', + propType: 'node', + }, + { + name: 'selectionAll', + propType: 'node', + }, + { + name: 'sortTitle', + propType: 'string', + }, + { + name: 'expand', + propType: 'string', + }, + { + name: 'collapse', + propType: 'string', + }, + { + name: 'triggerDesc', + propType: 'string', + }, + { + name: 'triggerAsc', + propType: 'string', + }, + { + name: 'cancelSort', + propType: 'string', + }, + ], + }, }, { name: 'Modal', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'okText', + propType: 'string', + }, + { + name: 'cancelText', + propType: 'string', + }, + { + name: 'justOkText', + propType: 'string', + }, + ], + }, }, { name: 'Popconfirm', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'okText', + propType: 'string', + }, + { + name: 'cancelText', + propType: 'string', + }, + ], + }, }, { name: 'Transfer', - propType: 'any', + propType: 'object', }, { name: 'Select', @@ -7538,11 +11424,43 @@ Generated by [AVA](https://avajs.dev). }, { name: 'Upload', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'uploading', + propType: 'string', + }, + { + name: 'removeFile', + propType: 'string', + }, + { + name: 'downloadFile', + propType: 'string', + }, + { + name: 'uploadError', + propType: 'string', + }, + { + name: 'previewFile', + propType: 'string', + }, + ], + }, }, { name: 'Empty', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'description', + propType: 'string', + }, + ], + }, }, { name: 'global', @@ -7562,7 +11480,397 @@ Generated by [AVA](https://avajs.dev). }, { name: 'Form', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'defaultValidateMessages', + propType: { + type: 'shape', + value: [ + { + name: 'default', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'required', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'enum', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'whitespace', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'date', + propType: { + type: 'shape', + value: [ + { + name: 'format', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'parse', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'invalid', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + ], + }, + }, + { + name: 'types', + propType: { + type: 'shape', + value: [ + { + name: 'string', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'method', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'array', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'object', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'number', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'date', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'boolean', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'integer', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'float', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'regexp', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'email', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'url', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'hex', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + ], + }, + }, + { + name: 'string', + propType: { + type: 'shape', + value: [ + { + name: 'len', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'min', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'max', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'range', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + ], + }, + }, + { + name: 'number', + propType: { + type: 'shape', + value: [ + { + name: 'len', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'min', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'max', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'range', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + ], + }, + }, + { + name: 'array', + propType: { + type: 'shape', + value: [ + { + name: 'len', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'min', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'max', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'range', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + ], + }, + }, + { + name: 'pattern', + propType: { + type: 'shape', + value: [ + { + name: 'mismatch', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + ], + }, + }, + ], + }, + }, + ], + }, }, ], }, @@ -7582,7 +11890,7 @@ Generated by [AVA](https://avajs.dev). { name: 'componentSize', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'middle', @@ -7593,7 +11901,7 @@ Generated by [AVA](https://avajs.dev). { name: 'direction', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'rtl', 'ltr', @@ -7611,9 +11919,14 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'number', - 'small', - 'middle', - 'large', + { + type: 'oneOf', + value: [ + 'small', + 'middle', + 'large', + ], + }, ], }, }, @@ -7653,18 +11966,31 @@ Generated by [AVA](https://avajs.dev). name: 'className', propType: 'string', }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, { description: '@deprecated Will be removed in next big version. Please use `mode` instead', name: 'mode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'date', 'time', - 'year', - 'month', 'week', + 'month', 'quarter', + 'year', 'decade', ], }, @@ -7675,683 +12001,11 @@ Generated by [AVA](https://avajs.dev). }, { name: 'value', - propType: { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, + propType: 'object', }, { name: 'defaultValue', - propType: { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, + propType: 'object', }, { name: 'allowClear', @@ -8382,47 +12036,50 @@ Generated by [AVA](https://avajs.dev). name: 'points', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'offset', propType: { type: 'arrayOf', - value: { - 0: 'n', - 1: 'u', - 2: 'm', - 3: 'b', - 4: 'e', - 5: 'r', - }, + value: 'number', }, }, { name: 'targetOffset', propType: { type: 'arrayOf', - value: { - 0: 'n', - 1: 'u', - 2: 'm', - 3: 'b', - 4: 'e', - 5: 'r', - }, + value: 'number', }, }, { name: 'overflow', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'adjustX', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + { + name: 'adjustY', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + ], + }, }, { name: 'useCssRight', @@ -8449,12 +12106,21 @@ Generated by [AVA](https://avajs.dev). }, { name: 'getPopupContainer', - propType: 'func', + propType: { + raw: '(node: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'node', + propType: 'object', + }, + ], + }, }, { name: 'direction', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'rtl', 'ltr', @@ -8481,473 +12147,71 @@ Generated by [AVA](https://avajs.dev). name: 'onSelect', propType: 'func', }, - { - name: 'onClick', - propType: 'func', - }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', - }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', propType: { - type: 'oneOfType', + raw: '(event: MouseEvent) => void', + type: 'func', value: [ - false, - true, - 'false', - 'true', + { + name: 'event', + propType: 'object', + }, ], }, }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'suffixIcon', propType: 'node', @@ -8958,11 +12222,29 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onContextMenu', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUp', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'name', @@ -8971,357 +12253,21 @@ Generated by [AVA](https://avajs.dev). { name: 'picker', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'date', 'time', - 'year', - 'month', 'week', + 'month', 'quarter', + 'year', ], }, }, { description: '[Legacy] Set default display picker view date', name: 'defaultPickerValue', - propType: { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, + propType: 'object', }, { name: 'disabledDate', @@ -9329,19 +12275,39 @@ Generated by [AVA](https://avajs.dev). }, { name: 'dateRender', - propType: 'any', - }, - { - name: 'monthCellRender', - propType: 'any', - }, - { - name: 'renderExtraFooter', propType: 'func', }, + { + name: 'monthCellRender', + propType: 'func', + }, + { + name: 'renderExtraFooter', + propType: { + raw: '(mode: PanelMode) => ReactNode', + type: 'func', + value: [ + { + name: 'mode', + propType: { + type: 'oneOf', + value: [ + 'date', + 'time', + 'week', + 'month', + 'quarter', + 'year', + 'decade', + ], + }, + }, + ], + }, + }, { name: 'onPanelChange', - propType: 'any', + propType: 'func', }, { name: 'onOk', @@ -9364,38 +12330,28 @@ Generated by [AVA](https://avajs.dev). 'string', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, }, { name: 'onOpenChange', - propType: 'func', + propType: { + raw: '(open: boolean) => void', + type: 'func', + value: [ + { + name: 'open', + propType: 'bool', + }, + ], + }, }, { description: '@private Internal usage, do not use in production mode!!!', name: 'pickerRef', - propType: { - type: 'shape', - value: [ - { - name: 'T', - propType: 'any', - }, - { - name: 'current', - propType: 'any', - }, - ], - }, + propType: 'object', }, { name: 'autoComplete', @@ -9403,12 +12359,12 @@ Generated by [AVA](https://avajs.dev). }, { name: 'locale', - propType: 'any', + propType: 'object', }, { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'middle', @@ -9429,8 +12385,7 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, + 'bool', { type: 'shape', value: [ @@ -9476,7 +12431,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'defaultValue', - propType: 'any', + propType: 'object', }, ], }, @@ -9485,7 +12440,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'disabledTime', - propType: 'any', + propType: 'func', }, { name: 'showHour', @@ -9525,427 +12480,39 @@ Generated by [AVA](https://avajs.dev). }, { name: 'disabledMinutes', - propType: 'func', + propType: { + raw: '(hour: number) => number[]', + type: 'func', + value: [ + { + name: 'hour', + propType: 'number', + }, + ], + }, }, { name: 'disabledSeconds', - propType: 'func', + propType: { + raw: '(hour: number, minute: number) => number[]', + type: 'func', + value: [ + { + name: 'hour', + propType: 'number', + }, + { + name: 'minute', + propType: 'number', + }, + ], + }, }, { description: '@deprecated Please use `defaultValue` directly instead', name: 'defaultOpenValue', - propType: { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, - }, - ], - screenshot: '', - title: 'antd', - }, - { - componentName: 'Descriptions', - devMode: 'proCode', - docUrl: '', - npm: { - destructuring: true, - exportName: 'Descriptions', - main: 'components/index.tsx', - package: 'antd', - subName: '', - version: '4.1.4', - }, - props: [ - { - name: 'prefixCls', - propType: 'string', - }, - { - name: 'className', - propType: 'string', - }, - { - name: 'style', propType: 'object', }, - { - name: 'bordered', - propType: 'bool', - }, - { - name: 'size', - propType: { - type: 'oneOfType', - value: [ - 'small', - 'middle', - 'default', - ], - }, - }, - { - name: 'title', - propType: 'node', - }, - { - defaultValue: null, - name: 'column', - propType: { - type: 'oneOfType', - value: [ - 'number', - 'any', - ], - }, - }, - { - name: 'layout', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - defaultValue: true, - name: 'colon', - propType: 'bool', - }, ], screenshot: '', title: 'antd', @@ -9970,7 +12537,7 @@ Generated by [AVA](https://avajs.dev). { name: 'type', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'horizontal', 'vertical', @@ -9980,10 +12547,10 @@ Generated by [AVA](https://avajs.dev). { name: 'orientation', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ - 'right', 'left', + 'right', 'center', ], }, @@ -10022,7 +12589,7 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'arrayOf', value: { - type: 'oneOfType', + type: 'oneOf', value: [ 'click', 'contextMenu', @@ -10037,44 +12604,23 @@ Generated by [AVA](https://avajs.dev). isRequired: true, type: 'oneOfType', value: [ - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - 'any', + 'object', + 'func', ], }, }, { name: 'onVisibleChange', - propType: 'func', + propType: { + raw: '(visible: boolean) => void', + type: 'func', + value: [ + { + name: 'visible', + propType: 'bool', + }, + ], + }, }, { name: 'visible', @@ -10086,11 +12632,64 @@ Generated by [AVA](https://avajs.dev). }, { name: 'align', - propType: 'any', + propType: { + type: 'shape', + value: [ + { + name: 'points', + propType: 'object', + }, + { + name: 'offset', + propType: 'object', + }, + { + name: 'targetOffset', + propType: 'object', + }, + { + name: 'overflow', + propType: { + type: 'shape', + value: [ + { + name: 'adjustX', + propType: 'bool', + }, + { + name: 'adjustY', + propType: 'bool', + }, + ], + }, + }, + { + name: 'useCssRight', + propType: 'bool', + }, + { + name: 'useCssBottom', + propType: 'bool', + }, + { + name: 'useCssTransform', + propType: 'bool', + }, + ], + }, }, { name: 'getPopupContainer', - propType: 'func', + propType: { + raw: '(triggerNode: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'triggerNode', + propType: 'object', + }, + ], + }, }, { name: 'prefixCls', @@ -10107,7 +12706,7 @@ Generated by [AVA](https://avajs.dev). { name: 'placement', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'topLeft', 'topCenter', @@ -10131,12 +12730,10 @@ Generated by [AVA](https://avajs.dev). propType: 'bool', }, { - defaultValue: 0.15, name: 'mouseEnterDelay', propType: 'number', }, { - defaultValue: 0.1, name: 'mouseLeaveDelay', propType: 'number', }, @@ -10179,89 +12776,14 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'string', - false, + 'object', + 'func', { - type: 'shape', + type: 'oneOf', value: [ - { - name: 'accessKey', - propType: 'string', - }, - { - name: 'accessKeyLabel', - propType: 'string', - }, - { - name: 'autocapitalize', - propType: 'string', - }, - { - name: 'dir', - propType: 'string', - }, - { - name: 'draggable', - propType: 'bool', - }, - { - name: 'hidden', - propType: 'bool', - }, - { - name: 'innerText', - propType: 'string', - }, - { - name: 'lang', - propType: 'string', - }, - { - name: 'offsetHeight', - propType: 'number', - }, - { - name: 'offsetLeft', - propType: 'number', - }, - { - name: 'offsetParent', - propType: 'object', - }, - { - name: 'offsetTop', - propType: 'number', - }, - { - name: 'offsetWidth', - propType: 'number', - }, - { - name: 'spellcheck', - propType: 'bool', - }, - { - name: 'title', - propType: 'string', - }, - { - name: 'translate', - propType: 'bool', - }, - { - name: 'click', - propType: 'object', - }, - { - name: 'addEventListener', - propType: 'func', - }, - { - name: 'removeEventListener', - propType: 'func', - }, + false, ], }, - 'any', ], }, }, @@ -10337,22 +12859,45 @@ Generated by [AVA](https://avajs.dev). { name: 'placement', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ - 'top', - 'right', - 'bottom', 'left', + 'right', + 'top', + 'bottom', ], }, }, { name: 'onClose', - propType: 'func', + propType: { + raw: '(e: EventType) => void', + type: 'func', + value: [ + { + name: 'e', + propType: { + type: 'oneOfType', + value: [ + 'object', + ], + }, + }, + ], + }, }, { name: 'afterVisibleChange', - propType: 'func', + propType: { + raw: '(visible: boolean) => void', + type: 'func', + value: [ + { + name: 'visible', + propType: 'bool', + }, + ], + }, }, { name: 'className', @@ -10378,6 +12923,48 @@ Generated by [AVA](https://avajs.dev). screenshot: '', title: 'antd', }, + { + componentName: 'Empty', + devMode: 'proCode', + docUrl: '', + npm: { + destructuring: true, + exportName: 'Empty', + main: 'components/index.tsx', + package: 'antd', + subName: '', + version: '4.1.4', + }, + props: [ + { + name: 'prefixCls', + propType: 'string', + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'style', + propType: 'object', + }, + { + description: '@since 3.16.0', + name: 'imageStyle', + propType: 'object', + }, + { + name: 'image', + propType: 'node', + }, + { + name: 'description', + propType: 'node', + }, + ], + screenshot: '', + title: 'antd', + }, { componentName: 'Form', devMode: 'proCode', @@ -10410,7 +12997,7 @@ Generated by [AVA](https://avajs.dev). { name: 'layout', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'inline', 'horizontal', @@ -10421,10 +13008,10 @@ Generated by [AVA](https://avajs.dev). { name: 'labelAlign', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ - 'right', 'left', + 'right', ], }, }, @@ -11359,11 +13946,72 @@ Generated by [AVA](https://avajs.dev). value: [ { name: 'scrollToField', - propType: 'object', + propType: { + raw: '(name: string | number | InternalNamePath, options?: Options) => void', + type: 'func', + value: [ + { + name: 'name', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, + }, + { + name: 'options', + propType: { + type: 'shape', + value: [ + { + name: 'T', + propType: 'any', + }, + { + name: 'behavior', + propType: { + type: 'oneOfType', + value: [ + 'func', + { + type: 'oneOf', + value: [ + 'auto', + 'smooth', + ], + }, + ], + }, + }, + ], + }, + }, + ], + }, }, { name: '__INTERNAL__', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'name', + propType: 'string', + }, + ], + }, }, ], }, @@ -11371,7 +14019,7 @@ Generated by [AVA](https://avajs.dev). { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'middle', @@ -11389,7 +14037,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'target', @@ -11399,6 +14056,19 @@ Generated by [AVA](https://avajs.dev). name: 'className', propType: 'string', }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, { name: 'id', propType: 'string', @@ -11412,14 +14082,7 @@ Generated by [AVA](https://avajs.dev). 'number', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, @@ -11434,486 +14097,120 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onKeyUp', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDown', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelect', - propType: 'func', - }, - { - name: 'onClick', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', - }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', propType: { - type: 'oneOfType', + raw: '(event: MouseEvent) => void', + type: 'func', value: [ - false, - true, - 'false', - 'true', + { + name: 'event', + propType: 'object', + }, ], }, }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'onError', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'color', @@ -11944,11 +14241,15 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', - 'inherit', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + 'inherit', + ], + }, ], }, }, @@ -11965,10 +14266,14 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, @@ -11989,17 +14294,21 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, { name: 'translate', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'yes', 'no', @@ -12089,7 +14398,7 @@ Generated by [AVA](https://avajs.dev). { name: 'unselectable', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'off', 'on', @@ -12100,7 +14409,7 @@ Generated by [AVA](https://avajs.dev). description: 'Hints at the type of data that might be entered by the user while editing the element or its contents', name: 'inputMode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'none', 'text', @@ -12132,595 +14441,1927 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onCopy', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCopyCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCut', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCutCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPaste', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPasteCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEnd', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEndCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStart', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStartCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdate', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdateCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocusCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlurCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onChangeCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onReset', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onResetCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmitCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalid', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalidCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoad', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onErrorCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDownCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPress', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPressCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyUpCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbort', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbortCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThrough', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThroughCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptied', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptiedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncrypted', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncryptedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEnded', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEndedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedData', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedDataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadata', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStart', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStartCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPause', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPauseCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlaying', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgress', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgressCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeked', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeking', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalled', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalledCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspend', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspendCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdate', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdateCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaiting', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaitingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenu', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenuCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrag', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnd', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEndCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnter', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnterCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExit', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExitCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeave', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeaveCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOver', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOverCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStart', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStartCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrop', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDropCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDownCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMove', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMoveCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOut', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOutCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOver', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOverCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUp', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUpCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelectCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancel', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancelCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEnd', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEndCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMove', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMoveCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStart', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStartCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDown', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDownCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMove', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMoveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUp', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUpCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancel', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancelCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnter', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnterCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeave', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeaveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOver', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOverCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOut', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOutCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScroll', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScrollCapture', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheel', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheelCapture', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStart', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStartCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEnd', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEndCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIteration', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIterationCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEnd', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEndCapture', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'autoComplete', @@ -12748,7 +16389,10 @@ Generated by [AVA](https://avajs.dev). }, { name: 'initialValues', - propType: 'objectOf', + propType: { + type: 'objectOf', + value: 'any', + }, }, { name: 'component', @@ -12756,49 +16400,13 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'string', - false, + 'object', { - type: 'shape', + type: 'oneOf', value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'S', - propType: 'any', - }, - { - name: '__new', - propType: 'any', - }, - { - name: 'propTypes', - propType: 'any', - }, - { - name: 'contextType', - propType: 'object', - }, - { - name: 'contextTypes', - propType: 'any', - }, - { - name: 'childContextTypes', - propType: 'any', - }, - { - name: 'defaultProps', - propType: 'any', - }, - { - name: 'displayName', - propType: 'string', - }, + false, ], }, - 'any', ], }, }, @@ -12880,66 +16488,530 @@ Generated by [AVA](https://avajs.dev). }, { name: 'date', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'format', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'parse', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'invalid', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + ], + }, }, { name: 'types', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'string', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'method', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'array', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'object', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'number', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'date', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'boolean', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'integer', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'float', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'regexp', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'email', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'url', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'hex', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + ], + }, }, { name: 'string', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'len', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'min', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'max', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'range', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + ], + }, }, { name: 'number', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'len', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'min', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'max', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'range', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + ], + }, }, { name: 'array', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'len', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'min', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'max', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + { + name: 'range', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + ], + }, }, { name: 'pattern', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'mismatch', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'func', + ], + }, + }, + ], + }, }, ], }, }, { name: 'onValuesChange', - propType: 'func', + propType: { + raw: '(changedValues: Store, values: Store) => void', + type: 'func', + value: [ + { + name: 'changedValues', + propType: { + type: 'objectOf', + value: 'any', + }, + }, + { + name: 'values', + propType: { + type: 'objectOf', + value: 'any', + }, + }, + ], + }, }, { name: 'onFieldsChange', - propType: 'func', + propType: { + raw: '(changedFields: FieldData[], allFields: FieldData[]) => void', + type: 'func', + value: [ + { + name: 'changedFields', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'name', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, + }, + ], + }, + }, + }, + { + name: 'allFields', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'name', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, + }, + ], + }, + }, + }, + ], + }, }, { name: 'onFinish', - propType: 'func', + propType: { + raw: '(values: Store) => void', + type: 'func', + value: [ + { + name: 'values', + propType: { + type: 'objectOf', + value: 'any', + }, + }, + ], + }, }, { name: 'onFinishFailed', - propType: 'func', + propType: { + raw: '(errorInfo: ValidateErrorEntity) => void', + type: 'func', + value: [ + { + name: 'errorInfo', + propType: { + type: 'shape', + value: [ + { + name: 'values', + propType: { + type: 'objectOf', + value: 'any', + }, + }, + { + name: 'errorFields', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'name', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + }, + { + name: 'errors', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + ], + }, + }, + }, + { + name: 'outOfDate', + propType: 'bool', + }, + ], + }, + }, + ], + }, }, { name: 'ref', propType: { type: 'oneOfType', value: [ - 'func', { - type: 'shape', + raw: '(instance: FormInstance) => void', + type: 'func', value: [ { - name: 'T', - propType: 'any', - }, - { - name: 'current', - propType: 'any', + name: 'instance', + propType: 'object', }, ], }, + 'object', ], }, }, @@ -12977,7 +17049,7 @@ Generated by [AVA](https://avajs.dev). { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'middle', @@ -12990,35 +17062,49 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - 'number', 'object', - 'date', - 'time', - 'text', - 'color', - 'hidden', - 'tel', - 'url', - 'email', - 'search', - 'month', - 'week', - 'reset', - 'submit', - 'button', - 'image', - 'checkbox', - 'datetime-local', - 'file', - 'password', - 'radio', - 'range', + { + type: 'oneOf', + value: [ + 'number', + 'date', + 'time', + 'text', + 'color', + 'hidden', + 'tel', + 'url', + 'email', + 'search', + 'submit', + 'button', + 'reset', + 'week', + 'month', + 'image', + 'checkbox', + 'datetime-local', + 'file', + 'password', + 'radio', + 'range', + ], + }, ], }, }, { name: 'onPressEnter', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'addonBefore', @@ -13046,12 +17132,34 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(event: ChangeEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'className', propType: 'string', }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, { name: 'id', propType: 'string', @@ -13065,14 +17173,7 @@ Generated by [AVA](https://avajs.dev). 'number', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, @@ -13086,14 +17187,7 @@ Generated by [AVA](https://avajs.dev). 'number', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, @@ -13116,483 +17210,108 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onKeyUp', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDown', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelect', - propType: 'func', - }, - { - name: 'onClick', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', - }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', propType: { - type: 'oneOfType', + raw: '(event: MouseEvent) => void', + type: 'func', value: [ - false, - true, - 'false', - 'true', + { + name: 'event', + propType: 'object', + }, ], }, }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'list', propType: 'string', @@ -13617,7 +17336,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onError', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'color', @@ -13648,11 +17376,15 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', - 'inherit', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + 'inherit', + ], + }, ], }, }, @@ -13669,10 +17401,14 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, @@ -13693,17 +17429,21 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, { name: 'translate', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'yes', 'no', @@ -13789,7 +17529,7 @@ Generated by [AVA](https://avajs.dev). { name: 'unselectable', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'off', 'on', @@ -13800,7 +17540,7 @@ Generated by [AVA](https://avajs.dev). description: 'Hints at the type of data that might be entered by the user while editing the element or its contents', name: 'inputMode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'none', 'text', @@ -13832,599 +17572,1940 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onCopy', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCopyCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCut', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCutCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPaste', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPasteCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEnd', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEndCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStart', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStartCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdate', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdateCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocusCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlurCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onChangeCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onReset', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onResetCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmit', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmitCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalid', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalidCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoad', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onErrorCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDownCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPress', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPressCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyUpCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbort', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbortCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThrough', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThroughCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptied', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptiedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncrypted', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncryptedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEnded', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEndedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedData', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedDataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadata', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStart', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStartCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPause', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPauseCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlaying', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgress', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgressCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeked', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeking', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalled', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalledCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspend', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspendCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdate', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdateCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaiting', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaitingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenu', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenuCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrag', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnd', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEndCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnter', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnterCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExit', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExitCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeave', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeaveCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOver', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOverCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStart', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStartCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrop', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDropCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDownCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMove', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMoveCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOut', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOutCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOver', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOverCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUp', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUpCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelectCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancel', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancelCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEnd', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEndCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMove', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMoveCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStart', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStartCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDown', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDownCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMove', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMoveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUp', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUpCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancel', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancelCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnter', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnterCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeave', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeaveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOver', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOverCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOut', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOutCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScroll', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScrollCapture', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheel', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheelCapture', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStart', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStartCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEnd', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEndCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIteration', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIterationCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEnd', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEndCapture', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'form', @@ -14482,10 +19563,6 @@ Generated by [AVA](https://avajs.dev). ], }, }, - { - name: 'pattern', - propType: 'string', - }, { name: 'accept', propType: 'string', @@ -14496,8 +19573,7 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'string', - false, - true, + 'bool', ], }, }, @@ -14537,6 +19613,10 @@ Generated by [AVA](https://avajs.dev). name: 'multiple', propType: 'bool', }, + { + name: 'pattern', + propType: 'string', + }, { name: 'readOnly', propType: 'bool', @@ -14579,7 +19659,6 @@ Generated by [AVA](https://avajs.dev). propType: 'number', }, { - defaultValue: 1, name: 'step', propType: { type: 'oneOfType', @@ -14599,7 +19678,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(value: number) => void', + type: 'func', + value: [ + { + name: 'value', + propType: 'number', + }, + ], + }, }, { name: 'disabled', @@ -14608,7 +19696,7 @@ Generated by [AVA](https://avajs.dev). { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'middle', @@ -14618,11 +19706,35 @@ Generated by [AVA](https://avajs.dev). }, { name: 'formatter', - propType: 'func', + propType: { + raw: '(value: ReactText) => string', + type: 'func', + value: [ + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, }, { name: 'parser', - propType: 'func', + propType: { + raw: '(displayValue: string) => ReactText', + type: 'func', + value: [ + { + name: 'displayValue', + propType: 'string', + }, + ], + }, }, { name: 'decimalSeparator', @@ -14654,7 +19766,29 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onPressEnter', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'autoFocus', @@ -14662,483 +19796,108 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onKeyUp', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDown', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelect', - propType: 'func', - }, - { - name: 'onClick', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', - }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', propType: { - type: 'oneOfType', + raw: '(event: MouseEvent) => void', + type: 'func', value: [ - false, - true, - 'false', - 'true', + { + name: 'event', + propType: 'object', + }, ], }, }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'list', propType: 'string', @@ -15157,7 +19916,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onError', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'color', @@ -15188,11 +19956,15 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', - 'inherit', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + 'inherit', + ], + }, ], }, }, @@ -15209,10 +19981,14 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, @@ -15233,17 +20009,21 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, { name: 'translate', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'yes', 'no', @@ -15333,7 +20113,7 @@ Generated by [AVA](https://avajs.dev). { name: 'unselectable', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'off', 'on', @@ -15344,7 +20124,7 @@ Generated by [AVA](https://avajs.dev). description: 'Hints at the type of data that might be entered by the user while editing the element or its contents', name: 'inputMode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'none', 'text', @@ -15376,599 +20156,1940 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onCopy', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCopyCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCut', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCutCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPaste', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPasteCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEnd', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEndCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStart', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStartCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdate', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdateCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocusCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlurCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onChangeCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onReset', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onResetCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmit', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmitCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalid', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalidCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoad', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onErrorCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDownCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPress', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPressCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyUpCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbort', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbortCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThrough', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThroughCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptied', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptiedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncrypted', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncryptedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEnded', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEndedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedData', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedDataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadata', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStart', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStartCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPause', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPauseCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlaying', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgress', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgressCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeked', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeking', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalled', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalledCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspend', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspendCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdate', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdateCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaiting', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaitingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenu', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenuCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrag', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnd', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEndCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnter', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnterCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExit', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExitCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeave', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeaveCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOver', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOverCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStart', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStartCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrop', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDropCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDownCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMove', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMoveCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOut', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOutCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOver', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOverCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUp', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUpCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelectCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancel', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancelCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEnd', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEndCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMove', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMoveCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStart', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStartCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDown', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDownCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMove', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMoveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUp', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUpCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancel', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancelCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnter', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnterCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeave', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeaveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOver', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOverCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOut', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOutCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScroll', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScrollCapture', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheel', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheelCapture', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStart', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStartCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEnd', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEndCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIteration', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIterationCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEnd', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEndCapture', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'form', @@ -16022,10 +22143,6 @@ Generated by [AVA](https://avajs.dev). ], }, }, - { - name: 'pattern', - propType: 'string', - }, { name: 'accept', propType: 'string', @@ -16036,8 +22153,7 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'string', - false, - true, + 'bool', ], }, }, @@ -16057,6 +22173,10 @@ Generated by [AVA](https://avajs.dev). name: 'multiple', propType: 'bool', }, + { + name: 'pattern', + propType: 'string', + }, { name: 'readOnly', propType: 'bool', @@ -16069,6 +22189,2372 @@ Generated by [AVA](https://avajs.dev). screenshot: '', title: 'antd', }, + { + componentName: 'Layout', + devMode: 'proCode', + docUrl: '', + npm: { + destructuring: true, + exportName: 'Layout', + main: 'components/index.tsx', + package: 'antd', + subName: '', + version: '4.1.4', + }, + props: [ + { + name: 'prefixCls', + propType: 'string', + }, + { + name: 'hasSider', + propType: 'bool', + }, + { + name: 'defaultChecked', + propType: 'bool', + }, + { + name: 'defaultValue', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: 'string', + }, + ], + }, + }, + { + name: 'suppressContentEditableWarning', + propType: 'bool', + }, + { + name: 'suppressHydrationWarning', + propType: 'bool', + }, + { + name: 'accessKey', + propType: 'string', + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'contentEditable', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + 'inherit', + ], + }, + ], + }, + }, + { + name: 'contextMenu', + propType: 'string', + }, + { + name: 'dir', + propType: 'string', + }, + { + name: 'draggable', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, + ], + }, + }, + { + name: 'hidden', + propType: 'bool', + }, + { + name: 'id', + propType: 'string', + }, + { + name: 'lang', + propType: 'string', + }, + { + name: 'placeholder', + propType: 'string', + }, + { + name: 'slot', + propType: 'string', + }, + { + name: 'spellCheck', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, + ], + }, + }, + { + name: 'style', + propType: 'object', + }, + { + name: 'tabIndex', + propType: 'number', + }, + { + name: 'title', + propType: 'string', + }, + { + name: 'translate', + propType: { + type: 'oneOf', + value: [ + 'yes', + 'no', + ], + }, + }, + { + name: 'radioGroup', + propType: 'string', + }, + { + name: 'role', + propType: 'string', + }, + { + name: 'about', + propType: 'string', + }, + { + name: 'datatype', + propType: 'string', + }, + { + name: 'inlist', + propType: 'any', + }, + { + name: 'prefix', + propType: 'string', + }, + { + name: 'property', + propType: 'string', + }, + { + name: 'resource', + propType: 'string', + }, + { + name: 'typeof', + propType: 'string', + }, + { + name: 'vocab', + propType: 'string', + }, + { + name: 'autoCapitalize', + propType: 'string', + }, + { + name: 'autoCorrect', + propType: 'string', + }, + { + name: 'autoSave', + propType: 'string', + }, + { + name: 'color', + propType: 'string', + }, + { + name: 'itemProp', + propType: 'string', + }, + { + name: 'itemScope', + propType: 'bool', + }, + { + name: 'itemType', + propType: 'string', + }, + { + name: 'itemID', + propType: 'string', + }, + { + name: 'itemRef', + propType: 'string', + }, + { + name: 'results', + propType: 'number', + }, + { + name: 'security', + propType: 'string', + }, + { + name: 'unselectable', + propType: { + type: 'oneOf', + value: [ + 'off', + 'on', + ], + }, + }, + { + description: 'Hints at the type of data that might be entered by the user while editing the element or its contents', + name: 'inputMode', + propType: { + type: 'oneOf', + value: [ + 'none', + 'text', + 'tel', + 'url', + 'email', + 'numeric', + 'decimal', + 'search', + ], + }, + }, + { + description: 'Specify that a standard HTML element should behave like a defined custom built-in element', + name: 'is', + propType: 'string', + }, + { + name: 'dangerouslySetInnerHTML', + propType: { + type: 'shape', + value: [ + { + name: '__html', + propType: 'string', + }, + ], + }, + }, + { + name: 'onCopy', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCopyCapture', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCut', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCutCapture', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPaste', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPasteCapture', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionEnd', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionEndCapture', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionStart', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionStartCapture', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionUpdate', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionUpdateCapture', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onFocus', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onFocusCapture', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBlur', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBlurCapture', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onChange', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onChangeCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBeforeInput', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBeforeInputCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInput', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInputCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onReset', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onResetCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSubmit', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSubmitCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInvalid', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInvalidCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoad', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onError', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onErrorCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyDown', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyDownCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyPress', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyPressCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyUp', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyUpCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAbort', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAbortCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlay', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayThrough', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayThroughCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDurationChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDurationChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEmptied', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEmptiedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEncrypted', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEncryptedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEnded', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEndedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedData', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedDataCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedMetadata', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedMetadataCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadStart', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadStartCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPause', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPauseCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlay', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlayCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlaying', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlayingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onProgress', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onProgressCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onRateChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onRateChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeeked', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeekedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeeking', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeekingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onStalled', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onStalledCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSuspend', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSuspendCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTimeUpdate', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTimeUpdateCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onVolumeChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onVolumeChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWaiting', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWaitingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAuxClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAuxClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onContextMenu', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onContextMenuCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDoubleClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDoubleClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDrag', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnd', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEndCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnter', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnterCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragExit', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragExitCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragLeave', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragLeaveCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragOver', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragOverCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragStart', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragStartCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDrop', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDropCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseDown', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseDownCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseEnter', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseLeave', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseMove', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseMoveCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOut', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOutCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOver', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOverCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseUp', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseUpCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSelect', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSelectCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchCancel', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchCancelCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchEnd', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchEndCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchMove', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchMoveCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchStart', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchStartCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerDown', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerDownCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerMove', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerMoveCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerUp', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerUpCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerCancel', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerCancelCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerEnter', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerEnterCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerLeave', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerLeaveCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOver', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOverCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOut', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOutCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onGotPointerCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onGotPointerCaptureCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLostPointerCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLostPointerCaptureCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onScroll', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onScrollCapture', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWheel', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWheelCapture', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationStart', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationStartCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationEnd', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationEndCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationIteration', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationIterationCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTransitionEnd', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTransitionEndCapture', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + ], + screenshot: '', + title: 'antd', + }, { componentName: 'List', devMode: 'proCode', @@ -16083,7 +24569,6 @@ Generated by [AVA](https://avajs.dev). }, props: [ { - defaultValue: false, name: 'bordered', propType: 'bool', }, @@ -16096,15 +24581,10 @@ Generated by [AVA](https://avajs.dev). propType: 'object', }, { - defaultValue: [], name: 'dataSource', propType: { type: 'arrayOf', - value: { - 0: 'a', - 1: 'n', - 2: 'y', - }, + value: 'object', }, }, { @@ -16123,7 +24603,7 @@ Generated by [AVA](https://avajs.dev). { name: 'column', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 1, 2, @@ -16139,7 +24619,7 @@ Generated by [AVA](https://avajs.dev). { name: 'xs', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 1, 2, @@ -16155,7 +24635,7 @@ Generated by [AVA](https://avajs.dev). { name: 'sm', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 1, 2, @@ -16171,7 +24651,7 @@ Generated by [AVA](https://avajs.dev). { name: 'md', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 1, 2, @@ -16187,7 +24667,7 @@ Generated by [AVA](https://avajs.dev). { name: 'lg', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 1, 2, @@ -16203,7 +24683,7 @@ Generated by [AVA](https://avajs.dev). { name: 'xl', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 1, 2, @@ -16219,7 +24699,7 @@ Generated by [AVA](https://avajs.dev). { name: 'xxl', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 1, 2, @@ -16242,7 +24722,7 @@ Generated by [AVA](https://avajs.dev). { name: 'itemLayout', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'horizontal', 'vertical', @@ -16250,13 +24730,11 @@ Generated by [AVA](https://avajs.dev). }, }, { - defaultValue: false, name: 'loading', propType: { type: 'oneOfType', value: [ - false, - true, + 'bool', { type: 'shape', value: [ @@ -16279,7 +24757,7 @@ Generated by [AVA](https://avajs.dev). { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'large', @@ -16301,7 +24779,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'indicator', - propType: 'any', + propType: 'object', }, ], }, @@ -16317,7 +24795,6 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, { type: 'shape', value: [ @@ -16326,19 +24803,10 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - 'both', - 'top', - 'bottom', - 'topLeft', - 'topCenter', - 'topRight', - 'bottomLeft', - 'bottomCenter', - 'bottomRight', { type: 'arrayOf', value: { - type: 'oneOfType', + type: 'oneOf', value: [ 'both', 'top', @@ -16352,11 +24820,31 @@ Generated by [AVA](https://avajs.dev). ], }, }, + { + type: 'oneOf', + value: [ + 'both', + 'top', + 'bottom', + 'topLeft', + 'topCenter', + 'topRight', + 'bottomLeft', + 'bottomCenter', + 'bottomRight', + ], + }, ], }, }, ], }, + { + type: 'oneOf', + value: [ + false, + ], + }, ], }, }, @@ -16381,7 +24869,7 @@ Generated by [AVA](https://avajs.dev). { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'large', @@ -16390,7 +24878,6 @@ Generated by [AVA](https://avajs.dev). }, }, { - defaultValue: true, name: 'split', propType: 'bool', }, @@ -16414,63 +24901,8 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', 'object', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, 'func', ], }, @@ -16502,7 +24934,7 @@ Generated by [AVA](https://avajs.dev). { name: 'theme', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'light', 'dark', @@ -16512,7 +24944,7 @@ Generated by [AVA](https://avajs.dev). { name: 'mode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'inline', 'horizontal', @@ -16530,73 +24962,167 @@ Generated by [AVA](https://avajs.dev). name: 'selectedKeys', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'defaultSelectedKeys', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'openKeys', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'defaultOpenKeys', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'onOpenChange', - propType: 'func', + propType: { + raw: '(openKeys: string[]) => void', + type: 'func', + value: [ + { + name: 'openKeys', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + ], + }, }, { name: 'onSelect', - propType: 'func', + propType: { + raw: '(param: SelectParam) => void', + type: 'func', + value: [ + { + name: 'param', + propType: { + type: 'shape', + value: [ + { + name: 'key', + propType: 'string', + }, + { + name: 'keyPath', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + { + name: 'item', + propType: 'any', + }, + { + name: 'domEvent', + propType: 'object', + }, + { + name: 'selectedKeys', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + ], + }, + }, + ], + }, }, { name: 'onDeselect', - propType: 'func', + propType: { + raw: '(param: SelectParam) => void', + type: 'func', + value: [ + { + name: 'param', + propType: { + type: 'shape', + value: [ + { + name: 'key', + propType: 'string', + }, + { + name: 'keyPath', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + { + name: 'item', + propType: 'any', + }, + { + name: 'domEvent', + propType: 'object', + }, + { + name: 'selectedKeys', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + ], + }, + }, + ], + }, }, { name: 'onClick', - propType: 'func', + propType: { + raw: '(param: ClickParam) => void', + type: 'func', + value: [ + { + name: 'param', + propType: { + type: 'shape', + value: [ + { + name: 'key', + propType: 'string', + }, + { + name: 'keyPath', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + { + name: 'item', + propType: 'any', + }, + { + name: 'domEvent', + propType: 'object', + }, + ], + }, + }, + ], + }, }, { name: 'style', @@ -16612,39 +25138,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'motion', - propType: { - type: 'shape', - value: [ - { - name: 'constructor', - propType: 'object', - }, - { - name: 'toString', - propType: 'object', - }, - { - name: 'toLocaleString', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'hasOwnProperty', - propType: 'func', - }, - { - name: 'isPrototypeOf', - propType: 'func', - }, - { - name: 'propertyIsEnumerable', - propType: 'func', - }, - ], - }, + propType: 'object', }, { name: 'className', @@ -16680,11 +25174,29 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(e: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'e', + propType: 'object', + }, + ], + }, }, { name: 'getPopupContainer', - propType: 'func', + propType: { + raw: '(triggerNode: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'triggerNode', + propType: 'object', + }, + ], + }, }, { name: 'overflowedIndicator', @@ -16746,7 +25258,7 @@ Generated by [AVA](https://avajs.dev). { name: 'placement', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'top', 'bottom', @@ -16756,7 +25268,7 @@ Generated by [AVA](https://avajs.dev). { name: 'direction', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'rtl', 'ltr', @@ -16771,14 +25283,7 @@ Generated by [AVA](https://avajs.dev). 'string', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, @@ -16796,39 +25301,184 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - 'func', + { + raw: '(input: string, { value }: OptionProps) => boolean', + type: 'func', + value: [ + { + name: 'input', + propType: 'string', + }, + { + name: '__1', + propType: { + type: 'shape', + value: [ + { + name: 'value', + propType: 'string', + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'children', + propType: 'node', + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'style', + propType: 'object', + }, + ], + }, + }, + ], + }, + { + type: 'oneOf', + value: [ + false, + ], + }, ], }, }, { name: 'validateSearch', - propType: 'func', + propType: { + raw: '(text: string, props: MentionsProps) => boolean', + type: 'func', + value: [ + { + name: 'text', + propType: 'string', + }, + { + name: 'props', + propType: 'object', + }, + ], + }, }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(text: string) => void', + type: 'func', + value: [ + { + name: 'text', + propType: 'string', + }, + ], + }, }, { name: 'onSelect', - propType: 'func', + propType: { + raw: '(option: OptionProps, prefix: string) => void', + type: 'func', + value: [ + { + name: 'option', + propType: { + type: 'shape', + value: [ + { + name: 'value', + propType: 'string', + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'children', + propType: 'node', + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'style', + propType: 'object', + }, + ], + }, + }, + { + name: 'prefix', + propType: 'string', + }, + ], + }, }, { name: 'onSearch', - propType: 'func', + propType: { + raw: '(text: string, prefix: string) => void', + type: 'func', + value: [ + { + name: 'text', + propType: 'string', + }, + { + name: 'prefix', + propType: 'string', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'getPopupContainer', propType: 'func', }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, { name: 'id', propType: 'string', @@ -16847,474 +25497,81 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onKeyUp', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDown', - propType: 'func', - }, - { - name: 'onClick', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', - }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', propType: { - type: 'oneOfType', + raw: '(event: MouseEvent) => void', + type: 'func', value: [ - false, - true, - 'false', - 'true', + { + name: 'event', + propType: 'object', + }, ], }, }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'onError', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'color', @@ -17345,11 +25602,15 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', - 'inherit', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + 'inherit', + ], + }, ], }, }, @@ -17366,10 +25627,14 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, @@ -17390,17 +25655,21 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, { name: 'translate', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'yes', 'no', @@ -17486,7 +25755,7 @@ Generated by [AVA](https://avajs.dev). { name: 'unselectable', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'off', 'on', @@ -17497,7 +25766,7 @@ Generated by [AVA](https://avajs.dev). description: 'Hints at the type of data that might be entered by the user while editing the element or its contents', name: 'inputMode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'none', 'text', @@ -17529,599 +25798,1940 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onCopy', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCopyCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCut', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCutCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPaste', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPasteCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEnd', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEndCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStart', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStartCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdate', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdateCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocusCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlurCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onChangeCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onReset', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onResetCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmit', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmitCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalid', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalidCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoad', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onErrorCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDownCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPress', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPressCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyUpCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbort', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbortCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThrough', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThroughCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptied', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptiedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncrypted', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncryptedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEnded', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEndedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedData', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedDataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadata', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStart', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStartCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPause', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPauseCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlaying', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgress', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgressCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeked', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeking', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalled', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalledCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspend', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspendCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdate', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdateCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaiting', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaitingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenu', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenuCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrag', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnd', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEndCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnter', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnterCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExit', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExitCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeave', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeaveCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOver', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOverCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStart', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStartCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrop', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDropCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDownCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMove', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMoveCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOut', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOutCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOver', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOverCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUp', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUpCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelectCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancel', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancelCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEnd', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEndCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMove', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMoveCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStart', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStartCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDown', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDownCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMove', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMoveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUp', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUpCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancel', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancelCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnter', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnterCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeave', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeaveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOver', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOverCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOut', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOutCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScroll', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScrollCapture', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheel', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheelCapture', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStart', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStartCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEnd', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEndCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIteration', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIterationCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEnd', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEndCapture', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'form', @@ -18207,12 +27817,30 @@ Generated by [AVA](https://avajs.dev). { description: '点击确定回调', name: 'onOk', - propType: 'func', + propType: { + raw: '(e: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'e', + propType: 'object', + }, + ], + }, }, { description: '点击模态框右上角叉、取消按钮、Props.maskClosable 值为 true 时的遮罩层或键盘按下 Esc 时的回调', name: 'onCancel', - propType: 'func', + propType: { + raw: '(e: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'e', + propType: 'object', + }, + ], + }, }, { name: 'afterClose', @@ -18248,14 +27876,14 @@ Generated by [AVA](https://avajs.dev). description: '确认按钮类型', name: 'okType', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'link', 'default', 'ghost', 'danger', - 'dashed', 'primary', + 'dashed', ], }, }, @@ -18276,11 +27904,17 @@ Generated by [AVA](https://avajs.dev). }, { name: 'okButtonProps', - propType: 'any', + propType: { + raw: 'Partial<{ href: string; target?: string; onClick?: (event: MouseEvent) => void; } & BaseButtonProps & Pick<...> & { ...; } & Pick<...>>', + type: 'func', + }, }, { name: 'cancelButtonProps', - propType: 'any', + propType: { + raw: 'Partial<{ href: string; target?: string; onClick?: (event: MouseEvent) => void; } & BaseButtonProps & Pick<...> & { ...; } & Pick<...>>', + type: 'func', + }, }, { name: 'destroyOnClose', @@ -18312,89 +27946,14 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'string', - false, + 'object', + 'func', { - type: 'shape', + type: 'oneOf', value: [ - { - name: 'accessKey', - propType: 'string', - }, - { - name: 'accessKeyLabel', - propType: 'string', - }, - { - name: 'autocapitalize', - propType: 'string', - }, - { - name: 'dir', - propType: 'string', - }, - { - name: 'draggable', - propType: 'bool', - }, - { - name: 'hidden', - propType: 'bool', - }, - { - name: 'innerText', - propType: 'string', - }, - { - name: 'lang', - propType: 'string', - }, - { - name: 'offsetHeight', - propType: 'number', - }, - { - name: 'offsetLeft', - propType: 'number', - }, - { - name: 'offsetParent', - propType: 'object', - }, - { - name: 'offsetTop', - propType: 'number', - }, - { - name: 'offsetWidth', - propType: 'number', - }, - { - name: 'spellcheck', - propType: 'bool', - }, - { - name: 'title', - propType: 'string', - }, - { - name: 'translate', - propType: 'bool', - }, - { - name: 'click', - propType: 'object', - }, - { - name: 'addEventListener', - propType: 'func', - }, - { - name: 'removeEventListener', - propType: 'func', - }, + false, ], }, - 'any', ], }, }, @@ -18434,6 +27993,159 @@ Generated by [AVA](https://avajs.dev). screenshot: '', title: 'antd', }, + { + componentName: 'Statistic', + devMode: 'proCode', + docUrl: '', + npm: { + destructuring: true, + exportName: 'Statistic', + main: 'components/index.tsx', + package: 'antd', + subName: '', + version: '4.1.4', + }, + props: [ + { + name: 'prefixCls', + propType: 'string', + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'style', + propType: 'object', + }, + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'valueStyle', + propType: 'object', + }, + { + name: 'valueRender', + propType: { + raw: '(node: ReactNode) => ReactNode', + type: 'func', + value: [ + { + name: 'node', + propType: 'node', + }, + ], + }, + }, + { + name: 'title', + propType: 'node', + }, + { + name: 'prefix', + propType: 'node', + }, + { + name: 'suffix', + propType: 'node', + }, + { + name: 'formatter', + propType: { + type: 'oneOfType', + value: [ + { + raw: '(value: ReactText, config?: FormatConfig) => ReactNode', + type: 'func', + value: [ + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'config', + propType: { + type: 'shape', + value: [ + { + name: 'formatter', + propType: { + type: 'oneOfType', + value: [ + 'object', + { + type: 'oneOf', + value: [ + false, + 'number', + 'countdown', + ], + }, + ], + }, + }, + { + name: 'decimalSeparator', + propType: 'string', + }, + { + name: 'groupSeparator', + propType: 'string', + }, + { + name: 'precision', + propType: 'number', + }, + { + name: 'prefixCls', + propType: 'string', + }, + ], + }, + }, + ], + }, + { + type: 'oneOf', + value: [ + false, + 'number', + 'countdown', + ], + }, + ], + }, + }, + { + name: 'decimalSeparator', + propType: 'string', + }, + { + name: 'groupSeparator', + propType: 'string', + }, + { + name: 'precision', + propType: 'number', + }, + ], + screenshot: '', + title: 'antd', + }, { componentName: 'PageHeader', devMode: 'proCode', @@ -18498,11 +28210,7 @@ Generated by [AVA](https://avajs.dev). name: 'children', propType: { type: 'arrayOf', - value: { - 0: 'a', - 1: 'n', - 2: 'y', - }, + value: 'object', }, }, ], @@ -18519,7 +28227,72 @@ Generated by [AVA](https://avajs.dev). }, { name: 'itemRender', - propType: 'object', + propType: { + raw: '(route: Route, params: any, routes: Route[], paths: string[]) => ReactNode', + type: 'func', + value: [ + { + name: 'route', + propType: { + type: 'shape', + value: [ + { + name: 'path', + propType: 'string', + }, + { + name: 'breadcrumbName', + propType: 'string', + }, + { + name: 'children', + propType: { + type: 'arrayOf', + value: 'object', + }, + }, + ], + }, + }, + { + name: 'params', + propType: 'any', + }, + { + name: 'routes', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'path', + propType: 'string', + }, + { + name: 'breadcrumbName', + propType: 'string', + }, + { + name: 'children', + propType: { + type: 'arrayOf', + value: 'object', + }, + }, + ], + }, + }, + }, + { + name: 'paths', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + ], + }, }, { name: 'style', @@ -18537,70 +28310,10 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, + 'object', { type: 'arrayOf', - value: { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, + value: 'object', }, ], }, @@ -18621,7 +28334,7 @@ Generated by [AVA](https://avajs.dev). { name: 'shape', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'circle', 'square', @@ -18634,9 +28347,14 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'number', - 'small', - 'large', - 'default', + { + type: 'oneOf', + value: [ + 'small', + 'large', + 'default', + ], + }, ], }, }, @@ -18674,14 +28392,23 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onError', - propType: 'object', + propType: 'func', }, ], }, }, { name: 'onBack', - propType: 'func', + propType: { + raw: '(e: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'e', + propType: 'object', + }, + ], + }, }, { name: 'className', @@ -18734,7 +28461,20 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(page: number, pageSize?: number) => void', + type: 'func', + value: [ + { + name: 'page', + propType: 'number', + }, + { + name: 'pageSize', + propType: 'number', + }, + ], + }, }, { name: 'hideOnSinglePage', @@ -18748,27 +28488,32 @@ Generated by [AVA](https://avajs.dev). name: 'pageSizeOptions', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'onShowSizeChange', - propType: 'func', + propType: { + raw: '(current: number, size: number) => void', + type: 'func', + value: [ + { + name: 'current', + propType: 'number', + }, + { + name: 'size', + propType: 'number', + }, + ], + }, }, { name: 'showQuickJumper', propType: { type: 'oneOfType', value: [ - false, - true, + 'bool', { type: 'shape', value: [ @@ -18787,12 +28532,25 @@ Generated by [AVA](https://avajs.dev). }, { name: 'showTotal', - propType: 'func', + propType: { + raw: '(total: number, range: [number, number]) => ReactNode', + type: 'func', + value: [ + { + name: 'total', + propType: 'number', + }, + { + name: 'range', + propType: 'object', + }, + ], + }, }, { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'default', @@ -18813,39 +28571,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'locale', - propType: { - type: 'shape', - value: [ - { - name: 'constructor', - propType: 'object', - }, - { - name: 'toString', - propType: 'object', - }, - { - name: 'toLocaleString', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'hasOwnProperty', - propType: 'func', - }, - { - name: 'isPrototypeOf', - propType: 'func', - }, - { - name: 'propertyIsEnumerable', - propType: 'func', - }, - ], - }, + propType: 'object', }, { name: 'className', @@ -18861,7 +28587,33 @@ Generated by [AVA](https://avajs.dev). }, { name: 'itemRender', - propType: 'func', + propType: { + raw: '(page: number, type: "page" | "prev" | "next" | "jump-prev" | "jump-next", originalElement: ReactElement ReactElement Component)>) | (new (props: any) => Component<...>)>) => ReactNode', + type: 'func', + value: [ + { + name: 'page', + propType: 'number', + }, + { + name: 'type', + propType: { + type: 'oneOf', + value: [ + 'page', + 'prev', + 'next', + 'jump-prev', + 'jump-next', + ], + }, + }, + { + name: 'originalElement', + propType: 'object', + }, + ], + }, }, { name: 'role', @@ -18896,79 +28648,41 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', 'object', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'any', + 'func', ], }, }, { - defaultValue: false, name: 'disabled', propType: 'bool', }, { name: 'onConfirm', - propType: 'func', + propType: { + raw: '(e?: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'e', + propType: 'object', + }, + ], + }, }, { name: 'onCancel', - propType: 'func', + propType: { + raw: '(e?: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'e', + propType: 'object', + }, + ], + }, }, { name: 'okText', @@ -18977,14 +28691,14 @@ Generated by [AVA](https://avajs.dev). { name: 'okType', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'link', 'default', 'ghost', 'danger', - 'dashed', 'primary', + 'dashed', ], }, }, @@ -18994,11 +28708,11 @@ Generated by [AVA](https://avajs.dev). }, { name: 'okButtonProps', - propType: 'any', + propType: 'object', }, { name: 'cancelButtonProps', - propType: 'any', + propType: 'object', }, { name: 'icon', @@ -19006,7 +28720,20 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onVisibleChange', - propType: 'func', + propType: { + raw: '(visible: boolean, e?: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'visible', + propType: 'bool', + }, + { + name: 'e', + propType: 'object', + }, + ], + }, }, { name: 'style', @@ -19019,12 +28746,12 @@ Generated by [AVA](https://avajs.dev). { name: 'placement', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ - 'top', - 'right', - 'bottom', 'left', + 'right', + 'top', + 'bottom', 'topLeft', 'topRight', 'bottomLeft', @@ -19056,15 +28783,14 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, + 'bool', { type: 'shape', value: [ { name: 'adjustX', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 0, 1, @@ -19074,7 +28800,7 @@ Generated by [AVA](https://avajs.dev). { name: 'adjustY', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 0, 1, @@ -19088,7 +28814,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'getPopupContainer', - propType: 'func', + propType: { + raw: '(triggerNode: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'triggerNode', + propType: 'object', + }, + ], + }, }, { name: 'trigger', @@ -19098,14 +28833,7 @@ Generated by [AVA](https://avajs.dev). 'string', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, @@ -19156,7 +28884,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'getTooltipContainer', - propType: 'func', + propType: { + raw: '(node: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'node', + propType: 'object', + }, + ], + }, }, { name: 'destroyTooltipOnHide', @@ -19171,47 +28908,50 @@ Generated by [AVA](https://avajs.dev). name: 'points', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'offset', propType: { type: 'arrayOf', - value: { - 0: 'n', - 1: 'u', - 2: 'm', - 3: 'b', - 4: 'e', - 5: 'r', - }, + value: 'number', }, }, { name: 'targetOffset', propType: { type: 'arrayOf', - value: { - 0: 'n', - 1: 'u', - 2: 'm', - 3: 'b', - 4: 'e', - 5: 'r', - }, + value: 'number', }, }, { name: 'overflow', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'adjustX', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + { + name: 'adjustY', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + ], + }, }, { name: 'useCssRight', @@ -19246,7 +28986,89 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onPopupAlign', - propType: 'func', + propType: { + raw: '(element: HTMLElement, align: AlignType) => void', + type: 'func', + value: [ + { + name: 'element', + propType: 'object', + }, + { + name: 'align', + propType: { + type: 'shape', + value: [ + { + name: 'points', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + { + name: 'offset', + propType: { + type: 'arrayOf', + value: 'number', + }, + }, + { + name: 'targetOffset', + propType: { + type: 'arrayOf', + value: 'number', + }, + }, + { + name: 'overflow', + propType: { + type: 'shape', + value: [ + { + name: 'adjustX', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + { + name: 'adjustY', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + ], + }, + }, + { + name: 'useCssRight', + propType: 'bool', + }, + { + name: 'useCssBottom', + propType: 'bool', + }, + { + name: 'useCssTransform', + propType: 'bool', + }, + { + name: 'ignoreShake', + propType: 'bool', + }, + ], + }, + }, + ], + }, }, ], screenshot: '', @@ -19272,64 +29094,9 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', 'object', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'any', + 'func', ], }, }, @@ -19340,64 +29107,9 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', 'object', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'any', + 'func', ], }, }, @@ -19412,12 +29124,12 @@ Generated by [AVA](https://avajs.dev). { name: 'placement', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ - 'top', - 'right', - 'bottom', 'left', + 'right', + 'top', + 'bottom', 'topLeft', 'topRight', 'bottomLeft', @@ -19449,15 +29161,14 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, + 'bool', { type: 'shape', value: [ { name: 'adjustX', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 0, 1, @@ -19467,7 +29178,7 @@ Generated by [AVA](https://avajs.dev). { name: 'adjustY', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 0, 1, @@ -19481,7 +29192,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'getPopupContainer', - propType: 'func', + propType: { + raw: '(triggerNode: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'triggerNode', + propType: 'object', + }, + ], + }, }, { name: 'trigger', @@ -19491,14 +29211,7 @@ Generated by [AVA](https://avajs.dev). 'string', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, @@ -19521,7 +29234,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onVisibleChange', - propType: 'func', + propType: { + raw: '(visible: boolean) => void', + type: 'func', + value: [ + { + name: 'visible', + propType: 'bool', + }, + ], + }, }, { name: 'afterVisibleChange', @@ -19532,7 +29254,6 @@ Generated by [AVA](https://avajs.dev). propType: 'any', }, { - defaultValue: {}, name: 'overlayStyle', propType: 'any', }, @@ -19545,18 +29266,25 @@ Generated by [AVA](https://avajs.dev). propType: 'string', }, { - defaultValue: 0.1, name: 'mouseEnterDelay', propType: 'number', }, { - defaultValue: 0.1, name: 'mouseLeaveDelay', propType: 'number', }, { name: 'getTooltipContainer', - propType: 'func', + propType: { + raw: '(node: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'node', + propType: 'object', + }, + ], + }, }, { name: 'destroyTooltipOnHide', @@ -19571,47 +29299,50 @@ Generated by [AVA](https://avajs.dev). name: 'points', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'offset', propType: { type: 'arrayOf', - value: { - 0: 'n', - 1: 'u', - 2: 'm', - 3: 'b', - 4: 'e', - 5: 'r', - }, + value: 'number', }, }, { name: 'targetOffset', propType: { type: 'arrayOf', - value: { - 0: 'n', - 1: 'u', - 2: 'm', - 3: 'b', - 4: 'e', - 5: 'r', - }, + value: 'number', }, }, { name: 'overflow', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'adjustX', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + { + name: 'adjustY', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + ], + }, }, { name: 'useCssRight', @@ -19646,7 +29377,89 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onPopupAlign', - propType: 'func', + propType: { + raw: '(element: HTMLElement, align: AlignType) => void', + type: 'func', + value: [ + { + name: 'element', + propType: 'object', + }, + { + name: 'align', + propType: { + type: 'shape', + value: [ + { + name: 'points', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + { + name: 'offset', + propType: { + type: 'arrayOf', + value: 'number', + }, + }, + { + name: 'targetOffset', + propType: { + type: 'arrayOf', + value: 'number', + }, + }, + { + name: 'overflow', + propType: { + type: 'shape', + value: [ + { + name: 'adjustX', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + { + name: 'adjustY', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + ], + }, + }, + { + name: 'useCssRight', + propType: 'bool', + }, + { + name: 'useCssBottom', + propType: 'bool', + }, + { + name: 'useCssTransform', + propType: 'bool', + }, + { + name: 'ignoreShake', + propType: 'bool', + }, + ], + }, + }, + ], + }, }, ], screenshot: '', @@ -19676,7 +29489,7 @@ Generated by [AVA](https://avajs.dev). { name: 'type', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'circle', 'line', @@ -19685,7 +29498,6 @@ Generated by [AVA](https://avajs.dev). }, }, { - defaultValue: 0, name: 'percent', propType: 'number', }, @@ -19695,12 +29507,25 @@ Generated by [AVA](https://avajs.dev). }, { name: 'format', - propType: 'func', + propType: { + raw: '(percent?: number, successPercent?: number) => ReactNode', + type: 'func', + value: [ + { + name: 'percent', + propType: 'number', + }, + { + name: 'successPercent', + propType: 'number', + }, + ], + }, }, { name: 'status', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'success', 'normal', @@ -19710,7 +29535,6 @@ Generated by [AVA](https://avajs.dev). }, }, { - defaultValue: true, name: 'showInfo', propType: 'bool', }, @@ -19721,7 +29545,7 @@ Generated by [AVA](https://avajs.dev). { name: 'strokeLinecap', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'square', 'round', @@ -19735,13 +29559,15 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'string', - 'objectOf', + { + type: 'objectOf', + value: 'string', + }, 'object', ], }, }, { - defaultValue: null, name: 'trailColor', propType: 'string', }, @@ -19754,26 +29580,25 @@ Generated by [AVA](https://avajs.dev). propType: 'object', }, { - defaultValue: undefined, name: 'gapDegree', propType: 'number', }, { name: 'gapPosition', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ - 'top', - 'right', - 'bottom', 'left', + 'right', + 'top', + 'bottom', ], }, }, { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'default', @@ -19831,23 +29656,68 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPress', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDown', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'value', @@ -19918,23 +29788,34 @@ Generated by [AVA](https://avajs.dev). name: 'tooltips', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(value: number) => void', + type: 'func', + value: [ + { + name: 'value', + propType: 'number', + }, + ], + }, }, { name: 'onHoverChange', - propType: 'func', + propType: { + raw: '(value: number) => void', + type: 'func', + value: [ + { + name: 'value', + propType: 'number', + }, + ], + }, }, { name: 'character', @@ -19952,6 +29833,69 @@ Generated by [AVA](https://avajs.dev). screenshot: '', title: 'antd', }, + { + componentName: 'Result', + devMode: 'proCode', + docUrl: '', + npm: { + destructuring: true, + exportName: 'Result', + main: 'components/index.tsx', + package: 'antd', + subName: '', + version: '4.1.4', + }, + props: [ + { + name: 'icon', + propType: 'node', + }, + { + name: 'status', + propType: { + type: 'oneOf', + value: [ + 'success', + 'info', + 'warning', + 'error', + 403, + 404, + 500, + '403', + '404', + '500', + ], + }, + }, + { + name: 'title', + propType: 'node', + }, + { + name: 'subTitle', + propType: 'node', + }, + { + name: 'extra', + propType: 'node', + }, + { + name: 'prefixCls', + propType: 'string', + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'style', + propType: 'object', + }, + ], + screenshot: '', + title: 'antd', + }, { componentName: 'Row', devMode: 'proCode', @@ -19966,39 +29910,19 @@ Generated by [AVA](https://avajs.dev). }, props: [ { - defaultValue: 0, name: 'gutter', propType: { type: 'oneOfType', value: [ 'number', - 'any', - { - type: 'oneOfType', - value: [ - { - type: 'oneOfType', - value: [ - 'number', - 'any', - ], - }, - { - type: 'oneOfType', - value: [ - 'number', - 'any', - ], - }, - ], - }, + 'object', ], }, }, { name: 'align', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'middle', 'top', @@ -20010,7 +29934,7 @@ Generated by [AVA](https://avajs.dev). { name: 'justify', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'center', 'start', @@ -20037,14 +29961,7 @@ Generated by [AVA](https://avajs.dev). 'number', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, @@ -20070,11 +29987,15 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', - 'inherit', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + 'inherit', + ], + }, ], }, }, @@ -20091,10 +30012,14 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, @@ -20123,10 +30048,14 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, @@ -20145,7 +30074,7 @@ Generated by [AVA](https://avajs.dev). { name: 'translate', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'yes', 'no', @@ -20239,7 +30168,7 @@ Generated by [AVA](https://avajs.dev). { name: 'unselectable', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'off', 'on', @@ -20250,7 +30179,7 @@ Generated by [AVA](https://avajs.dev). description: 'Hints at the type of data that might be entered by the user while editing the element or its contents', name: 'inputMode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'none', 'text', @@ -20268,449 +30197,6 @@ Generated by [AVA](https://avajs.dev). name: 'is', propType: 'string', }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'dangerouslySetInnerHTML', propType: { @@ -20725,643 +30211,2083 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onCopy', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCopyCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCut', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCutCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPaste', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPasteCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEnd', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEndCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStart', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStartCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdate', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdateCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocusCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlurCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onChangeCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onReset', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onResetCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmit', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmitCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalid', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalidCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoad', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onError', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onErrorCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDown', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDownCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPress', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPressCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyUp', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyUpCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbort', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbortCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThrough', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThroughCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptied', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptiedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncrypted', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncryptedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEnded', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEndedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedData', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedDataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadata', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStart', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStartCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPause', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPauseCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlaying', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgress', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgressCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeked', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeking', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalled', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalledCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspend', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspendCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdate', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdateCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaiting', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaitingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenu', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenuCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrag', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnd', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEndCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnter', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnterCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExit', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExitCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeave', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeaveCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOver', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOverCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStart', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStartCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrop', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDropCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDownCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMove', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMoveCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOut', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOutCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOver', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOverCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUp', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUpCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelect', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelectCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancel', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancelCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEnd', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEndCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMove', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMoveCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStart', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStartCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDown', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDownCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMove', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMoveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUp', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUpCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancel', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancelCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnter', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnterCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeave', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeaveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOver', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOverCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOut', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOutCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScroll', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScrollCapture', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheel', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheelCapture', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStart', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStartCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEnd', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEndCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIteration', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIterationCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEnd', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEndCapture', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, ], screenshot: '', @@ -21383,7 +32309,7 @@ Generated by [AVA](https://avajs.dev). { name: 'mode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'multiple', 'tags', @@ -21406,6 +32332,19 @@ Generated by [AVA](https://avajs.dev). name: 'className', propType: 'string', }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, { name: 'loading', propType: 'bool', @@ -21429,7 +32368,10 @@ Generated by [AVA](https://avajs.dev). value: { type: 'oneOfType', value: [ - 'objectOf', + { + type: 'objectOf', + value: 'any', + }, { type: 'shape', value: [ @@ -21452,14 +32394,8 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'arrayOf', value: { - 0: 'o', - 1: 'b', - 2: 'j', - 3: 'e', - 4: 'c', - 5: 't', - 6: 'O', - 7: 'f', + type: 'objectOf', + value: 'any', }, }, }, @@ -21479,11 +32415,11 @@ Generated by [AVA](https://avajs.dev). }, { name: 'value', - propType: 'any', + propType: 'object', }, { name: 'defaultValue', - propType: 'any', + propType: 'object', }, { name: 'inputValue', @@ -21503,9 +32439,8 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'any', + 'bool', + 'func', ], }, }, @@ -21519,7 +32454,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onSearch', - propType: 'func', + propType: { + raw: '(value: string) => void', + type: 'func', + value: [ + { + name: 'value', + propType: 'string', + }, + ], + }, }, { name: 'allowClear', @@ -21544,64 +32488,18 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', 'object', { - type: 'shape', + raw: '(props: any) => ReactNode', + type: 'func', value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, { name: 'props', propType: 'any', }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, ], }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', ], }, }, @@ -21635,8 +32533,7 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'number', - false, - true, + 'bool', ], }, }, @@ -21646,7 +32543,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'dropdownRender', - propType: 'func', + propType: { + raw: '(menu: ReactElement ReactElement Component)>) | (new (props: any) => Component)>) => ReactElement<...>', + type: 'func', + value: [ + { + name: 'menu', + propType: 'object', + }, + ], + }, }, { name: 'dropdownAlign', @@ -21662,7 +32568,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'getPopupContainer', - propType: 'any', + propType: { + raw: 'RenderDOMFunc', + type: 'func', + value: [ + { + name: 'props', + propType: 'any', + }, + ], + }, }, { name: 'direction', @@ -21703,64 +32618,49 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', 'object', { - type: 'shape', + raw: '(omittedValues: LabelValueType[]) => ReactNode', + type: 'func', value: [ { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', + name: 'omittedValues', propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'label', + propType: 'node', + }, + ], + }, }, }, ], }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', ], }, }, @@ -21768,26 +32668,215 @@ Generated by [AVA](https://avajs.dev). name: 'tokenSeparators', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'tagRender', - propType: 'func', + propType: { + raw: '(props: CustomTagProps) => ReactElement ReactElement Component)>) | (new (props: any) => Component<...>)>', + type: 'func', + value: [ + { + name: 'props', + propType: { + type: 'shape', + value: [ + { + name: 'label', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'shape', + value: [ + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'label', + propType: 'node', + }, + ], + }, + { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'label', + propType: 'node', + }, + ], + }, + }, + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, + }, + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'shape', + value: [ + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'label', + propType: 'node', + }, + ], + }, + { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'label', + propType: 'node', + }, + ], + }, + }, + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'onClose', + propType: { + raw: '(event?: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'closable', + propType: 'bool', + }, + ], + }, + }, + ], + }, }, { name: 'showAction', propType: { type: 'arrayOf', value: { - type: 'oneOfType', + type: 'oneOf', value: [ 'focus', 'click', @@ -21801,19 +32890,55 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onKeyUp', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDown', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPopupScroll', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDropdownVisibleChange', - propType: 'func', + propType: { + raw: '(open: boolean) => void', + type: 'func', + value: [ + { + name: 'open', + propType: 'bool', + }, + ], + }, }, { name: 'onSelect', @@ -21825,31 +32950,81 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onInputKeyDown', - propType: 'func', - }, - { - name: 'onClick', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'choiceTransitionName', @@ -21867,7 +33042,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onClear', - propType: 'any', + propType: 'func', }, { name: 'skipTriggerChange', @@ -21879,458 +33054,75 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onRawSelect', - propType: 'object', + propType: { + raw: '(value: ReactText, option: OptionsType[number], source: SelectSource) => void', + type: 'func', + value: [ + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'option', + propType: 'object', + }, + { + name: 'source', + propType: { + type: 'oneOf', + value: [ + 'option', + 'selection', + 'input', + ], + }, + }, + ], + }, }, { name: 'onRawDeselect', - propType: 'object', + propType: { + raw: '(value: ReactText, option: OptionsType[number], source: SelectSource) => void', + type: 'func', + value: [ + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'option', + propType: 'object', + }, + { + name: 'source', + propType: { + type: 'oneOf', + value: [ + 'option', + 'selection', + 'input', + ], + }, + }, + ], + }, }, ], }, }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'suffixIcon', propType: 'node', @@ -22338,7 +33130,7 @@ Generated by [AVA](https://avajs.dev). { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'middle', @@ -22347,7 +33139,6 @@ Generated by [AVA](https://avajs.dev). }, }, { - defaultValue: true, name: 'bordered', propType: 'bool', }, @@ -22355,141 +33146,6 @@ Generated by [AVA](https://avajs.dev). screenshot: '', title: 'antd', }, - { - componentName: 'Skeleton', - devMode: 'proCode', - docUrl: '', - npm: { - destructuring: true, - exportName: 'Skeleton', - main: 'components/index.tsx', - package: 'antd', - subName: '', - version: '4.1.4', - }, - props: [ - { - name: 'active', - propType: 'bool', - }, - { - name: 'loading', - propType: 'bool', - }, - { - name: 'prefixCls', - propType: 'string', - }, - { - name: 'className', - propType: 'string', - }, - { - defaultValue: false, - name: 'avatar', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'any', - ], - }, - }, - { - defaultValue: true, - name: 'title', - propType: { - type: 'oneOfType', - value: [ - false, - true, - { - type: 'shape', - value: [ - { - name: 'prefixCls', - propType: 'string', - }, - { - name: 'className', - propType: 'string', - }, - { - name: 'style', - propType: 'object', - }, - { - name: 'width', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - ], - }, - }, - { - defaultValue: true, - name: 'paragraph', - propType: { - type: 'oneOfType', - value: [ - false, - true, - { - type: 'shape', - value: [ - { - name: 'prefixCls', - propType: 'string', - }, - { - name: 'className', - propType: 'string', - }, - { - name: 'style', - propType: 'object', - }, - { - name: 'width', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - }, - { - name: 'rows', - propType: 'number', - }, - ], - }, - ], - }, - }, - ], - screenshot: '', - title: 'antd', - }, { componentName: 'Slider', devMode: 'proCode', @@ -22548,13 +33204,7 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'number', - { - type: 'oneOfType', - value: [ - 'number', - 'number', - ], - }, + 'object', ], }, }, @@ -22564,13 +33214,7 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'number', - { - type: 'oneOfType', - value: [ - 'number', - 'number', - ], - }, + 'object', ], }, }, @@ -22588,15 +33232,54 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(value: SliderValue) => void', + type: 'func', + value: [ + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'object', + ], + }, + }, + ], + }, }, { name: 'onAfterChange', - propType: 'func', + propType: { + raw: '(value: SliderValue) => void', + type: 'func', + value: [ + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'object', + ], + }, + }, + ], + }, }, { name: 'tipFormatter', - propType: 'func', + propType: { + raw: '(value: number) => ReactNode', + type: 'func', + value: [ + { + name: 'value', + propType: 'number', + }, + ], + }, }, { name: 'className', @@ -22617,12 +33300,12 @@ Generated by [AVA](https://avajs.dev). { name: 'tooltipPlacement', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ - 'top', - 'right', - 'bottom', 'left', + 'right', + 'top', + 'bottom', 'topLeft', 'topRight', 'bottomLeft', @@ -22636,7 +33319,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'getTooltipPopupContainer', - propType: 'func', + propType: { + raw: '(triggerNode: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'triggerNode', + propType: 'object', + }, + ], + }, }, ], screenshot: '', @@ -22673,16 +33365,21 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'number', - 'small', - 'middle', - 'large', + { + type: 'oneOf', + value: [ + 'small', + 'middle', + 'large', + ], + }, ], }, }, { name: 'direction', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'horizontal', 'vertical', @@ -22715,7 +33412,6 @@ Generated by [AVA](https://avajs.dev). propType: 'string', }, { - defaultValue: true, name: 'spinning', propType: 'bool', }, @@ -22726,7 +33422,7 @@ Generated by [AVA](https://avajs.dev). { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'large', @@ -22748,7 +33444,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'indicator', - propType: 'any', + propType: 'object', }, ], screenshot: '', @@ -22770,7 +33466,7 @@ Generated by [AVA](https://avajs.dev). { name: 'type', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'default', 'navigation', @@ -22782,14 +33478,13 @@ Generated by [AVA](https://avajs.dev). propType: 'string', }, { - defaultValue: 0, name: 'current', propType: 'number', }, { name: 'direction', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'horizontal', 'vertical', @@ -22807,7 +33502,7 @@ Generated by [AVA](https://avajs.dev). { name: 'labelPlacement', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'horizontal', 'vertical', @@ -22823,60 +33518,15 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - { - type: 'shape', - value: [ - { - name: 'apply', - propType: 'func', - }, - { - name: 'call', - propType: 'func', - }, - { - name: 'bind', - propType: 'func', - }, - { - name: 'toString', - propType: 'object', - }, - { - name: 'prototype', - propType: 'any', - }, - { - name: 'length', - propType: 'number', - }, - { - name: 'arguments', - propType: 'any', - }, - { - name: 'caller', - propType: 'func', - }, - { - name: 'name', - propType: 'string', - }, - { - name: '__@hasInstance', - propType: 'func', - }, - ], - }, + 'bool', + 'func', ], }, }, { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'default', @@ -22886,7 +33536,7 @@ Generated by [AVA](https://avajs.dev). { name: 'status', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'error', 'wait', @@ -22901,7 +33551,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(current: number) => void', + type: 'func', + value: [ + { + name: 'current', + propType: 'number', + }, + ], + }, }, ], screenshot: '', @@ -22927,7 +33586,7 @@ Generated by [AVA](https://avajs.dev). { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'default', @@ -22948,11 +33607,37 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onChange', - propType: 'any', + propType: { + raw: 'SwitchChangeEventHandler', + type: 'func', + value: [ + { + name: 'checked', + propType: 'bool', + }, + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onClick', - propType: 'any', + propType: { + raw: 'SwitchChangeEventHandler', + type: 'func', + value: [ + { + name: 'checked', + propType: 'bool', + }, + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'checkedChildren', @@ -22986,2293 +33671,6 @@ Generated by [AVA](https://avajs.dev). screenshot: '', title: 'antd', }, - { - componentName: 'Table', - devMode: 'proCode', - docUrl: '', - npm: { - destructuring: true, - exportName: 'Table', - main: 'components/index.tsx', - package: 'antd', - subName: '', - version: '4.1.4', - }, - props: [ - { - name: 'dropdownPrefixCls', - propType: 'string', - }, - { - name: 'dataSource', - propType: { - type: 'arrayOf', - value: { - 0: 'a', - 1: 'n', - 2: 'y', - }, - }, - }, - { - name: 'columns', - propType: { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - { - type: 'shape', - value: [ - { - name: 'RecordType', - propType: 'any', - }, - { - name: 'children', - propType: { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - { - type: 'shape', - value: [ - { - name: 'RecordType', - propType: 'any', - }, - { - name: 'children', - propType: 'any', - }, - ], - }, - { - type: 'shape', - value: [ - { - name: 'RecordType', - propType: 'any', - }, - { - name: 'title', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - false, - true, - 'object', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', - ], - }, - }, - { - name: 'sorter', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'any', - { - type: 'shape', - value: [ - { - name: 'compare', - propType: 'any', - }, - { - name: 'multiple', - propType: 'number', - }, - ], - }, - ], - }, - }, - { - name: 'sortOrder', - propType: { - type: 'oneOfType', - value: [ - 'descend', - 'ascend', - ], - }, - }, - { - name: 'defaultSortOrder', - propType: { - type: 'oneOfType', - value: [ - 'descend', - 'ascend', - ], - }, - }, - { - name: 'sortDirections', - propType: { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - 'descend', - 'ascend', - ], - }, - }, - }, - { - name: 'showSorterTooltip', - propType: 'bool', - }, - { - name: 'filtered', - propType: 'bool', - }, - { - name: 'filters', - propType: { - type: 'arrayOf', - value: { - type: 'shape', - value: [ - { - name: 'text', - propType: 'node', - }, - { - name: 'value', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - false, - true, - ], - }, - }, - { - name: 'children', - propType: 'any', - }, - ], - }, - }, - }, - { - name: 'filterDropdown', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - false, - true, - 'object', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', - ], - }, - }, - { - name: 'filterMultiple', - propType: 'bool', - }, - { - name: 'filteredValue', - propType: { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - }, - { - name: 'defaultFilteredValue', - propType: { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - }, - { - name: 'filterIcon', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - false, - true, - 'object', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', - ], - }, - }, - { - name: 'onFilter', - propType: 'object', - }, - { - name: 'filterDropdownVisible', - propType: 'bool', - }, - { - name: 'onFilterDropdownVisibleChange', - propType: 'object', - }, - ], - }, - ], - }, - }, - }, - ], - }, - { - type: 'shape', - value: [ - { - name: 'RecordType', - propType: 'any', - }, - { - name: 'title', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - false, - true, - 'object', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', - ], - }, - }, - { - name: 'sorter', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'any', - { - type: 'shape', - value: [ - { - name: 'compare', - propType: 'any', - }, - { - name: 'multiple', - propType: 'number', - }, - ], - }, - ], - }, - }, - { - name: 'sortOrder', - propType: { - type: 'oneOfType', - value: [ - 'descend', - 'ascend', - ], - }, - }, - { - name: 'defaultSortOrder', - propType: { - type: 'oneOfType', - value: [ - 'descend', - 'ascend', - ], - }, - }, - { - name: 'sortDirections', - propType: { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - 'descend', - 'ascend', - ], - }, - }, - }, - { - name: 'showSorterTooltip', - propType: 'bool', - }, - { - name: 'filtered', - propType: 'bool', - }, - { - name: 'filters', - propType: { - type: 'arrayOf', - value: { - type: 'shape', - value: [ - { - name: 'text', - propType: 'node', - }, - { - name: 'value', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - false, - true, - ], - }, - }, - { - name: 'children', - propType: 'any', - }, - ], - }, - }, - }, - { - name: 'filterDropdown', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - false, - true, - 'object', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', - ], - }, - }, - { - name: 'filterMultiple', - propType: 'bool', - }, - { - name: 'filteredValue', - propType: { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - }, - { - name: 'defaultFilteredValue', - propType: { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - }, - { - name: 'filterIcon', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - false, - true, - 'object', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', - ], - }, - }, - { - name: 'onFilter', - propType: 'object', - }, - { - name: 'filterDropdownVisible', - propType: 'bool', - }, - { - name: 'onFilterDropdownVisibleChange', - propType: 'object', - }, - ], - }, - ], - }, - }, - }, - { - name: 'pagination', - propType: { - type: 'oneOfType', - value: [ - false, - { - type: 'shape', - value: [ - { - name: 'position', - propType: { - type: 'oneOfType', - value: [ - 'both', - 'top', - 'bottom', - 'topLeft', - 'topCenter', - 'topRight', - 'bottomLeft', - 'bottomCenter', - 'bottomRight', - { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - 'both', - 'top', - 'bottom', - 'topLeft', - 'topCenter', - 'topRight', - 'bottomLeft', - 'bottomCenter', - 'bottomRight', - ], - }, - }, - ], - }, - }, - ], - }, - ], - }, - }, - { - name: 'loading', - propType: { - type: 'oneOfType', - value: [ - false, - true, - { - type: 'shape', - value: [ - { - name: 'prefixCls', - propType: 'string', - }, - { - name: 'className', - propType: 'string', - }, - { - name: 'spinning', - propType: 'bool', - }, - { - name: 'style', - propType: 'object', - }, - { - name: 'size', - propType: { - type: 'oneOfType', - value: [ - 'small', - 'large', - 'default', - ], - }, - }, - { - name: 'tip', - propType: 'string', - }, - { - name: 'delay', - propType: 'number', - }, - { - name: 'wrapperClassName', - propType: 'string', - }, - { - name: 'indicator', - propType: 'any', - }, - ], - }, - ], - }, - }, - { - name: 'size', - propType: { - type: 'oneOfType', - value: [ - 'small', - 'middle', - 'large', - ], - }, - }, - { - name: 'bordered', - propType: 'bool', - }, - { - name: 'locale', - propType: { - type: 'shape', - value: [ - { - name: 'filterTitle', - propType: 'string', - }, - { - name: 'filterConfirm', - propType: 'node', - }, - { - name: 'filterReset', - propType: 'node', - }, - { - name: 'emptyText', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - false, - true, - 'object', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', - ], - }, - }, - { - name: 'selectAll', - propType: 'node', - }, - { - name: 'selectInvert', - propType: 'node', - }, - { - name: 'selectionAll', - propType: 'node', - }, - { - name: 'sortTitle', - propType: 'string', - }, - { - name: 'expand', - propType: 'string', - }, - { - name: 'collapse', - propType: 'string', - }, - { - name: 'triggerDesc', - propType: 'string', - }, - { - name: 'triggerAsc', - propType: 'string', - }, - { - name: 'cancelSort', - propType: 'string', - }, - ], - }, - }, - { - name: 'onChange', - propType: 'func', - }, - { - name: 'rowSelection', - propType: { - type: 'shape', - value: [ - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: { - type: 'oneOfType', - value: [ - 'checkbox', - 'radio', - ], - }, - }, - { - name: 'selectedRowKeys', - propType: { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - }, - { - name: 'onChange', - propType: 'object', - }, - { - name: 'getCheckboxProps', - propType: 'object', - }, - { - name: 'onSelect', - propType: 'any', - }, - { - name: 'onSelectMultiple', - propType: 'object', - }, - { - name: 'onSelectAll', - propType: 'object', - }, - { - name: 'onSelectInvert', - propType: 'object', - }, - { - name: 'selections', - propType: { - type: 'oneOfType', - value: [ - false, - true, - { - type: 'arrayOf', - value: { - type: 'shape', - value: [ - { - name: 'key', - propType: 'string', - }, - { - name: 'text', - propType: 'node', - }, - { - name: 'onSelect', - propType: 'any', - }, - ], - }, - }, - ], - }, - }, - { - name: 'hideDefaultSelections', - propType: 'bool', - }, - { - name: 'fixed', - propType: 'bool', - }, - { - name: 'columnWidth', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'columnTitle', - propType: 'node', - }, - { - name: 'renderCell', - propType: 'object', - }, - ], - }, - }, - { - name: 'getPopupContainer', - propType: 'any', - }, - { - name: 'scroll', - propType: 'object', - }, - { - name: 'sortDirections', - propType: { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - 'descend', - 'ascend', - ], - }, - }, - }, - { - name: 'showSorterTooltip', - propType: 'bool', - }, - { - name: 'style', - propType: 'object', - }, - { - name: 'prefixCls', - propType: 'string', - }, - { - name: 'className', - propType: 'string', - }, - { - name: 'id', - propType: 'string', - }, - { - name: 'direction', - propType: { - type: 'oneOfType', - value: [ - 'rtl', - 'ltr', - ], - }, - }, - { - name: 'title', - propType: 'any', - }, - { - description: '@deprecated Use `expandable.expandIcon` instead', - name: 'expandIcon', - propType: 'any', - }, - { - name: 'components', - propType: { - type: 'shape', - value: [ - { - name: 'RecordType', - propType: 'any', - }, - { - name: 'table', - propType: { - type: 'oneOfType', - value: [ - 'object', - 'style', - 'option', - 'input', - 'time', - 'link', - 'menu', - 'dialog', - 'small', - 'title', - 'slot', - 'form', - 's', - 'span', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: '__call', - propType: 'any', - }, - { - name: 'propTypes', - propType: 'any', - }, - { - name: 'contextTypes', - propType: 'any', - }, - { - name: 'defaultProps', - propType: 'any', - }, - { - name: 'displayName', - propType: 'string', - }, - ], - }, - 'footer', - 'progress', - 'select', - 'a', - 'abbr', - 'address', - 'area', - 'article', - 'aside', - 'audio', - 'b', - 'base', - 'bdi', - 'bdo', - 'blockquote', - 'body', - 'br', - 'button', - 'canvas', - 'caption', - 'cite', - 'code', - 'col', - 'colgroup', - 'data', - 'datalist', - 'dd', - 'del', - 'details', - 'dfn', - 'div', - 'dl', - 'dt', - 'em', - 'embed', - 'fieldset', - 'figcaption', - 'figure', - 'h1', - 'h2', - 'h3', - 'h4', - 'h5', - 'h6', - 'head', - 'header', - 'hgroup', - 'hr', - 'html', - 'i', - 'iframe', - 'img', - 'ins', - 'kbd', - 'label', - 'legend', - 'li', - 'main', - 'map', - 'mark', - 'meta', - 'meter', - 'nav', - 'noscript', - 'ol', - 'optgroup', - 'output', - 'p', - 'param', - 'picture', - 'pre', - 'q', - 'rp', - 'rt', - 'ruby', - 'samp', - 'script', - 'section', - 'source', - 'strong', - 'sub', - 'summary', - 'sup', - 'table', - 'tbody', - 'td', - 'template', - 'textarea', - 'tfoot', - 'th', - 'thead', - 'tr', - 'track', - 'u', - 'ul', - 'var', - 'video', - 'wbr', - 'any', - 'big', - 'keygen', - 'menuitem', - 'webview', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'S', - propType: 'any', - }, - { - name: '__new', - propType: 'any', - }, - { - name: 'propTypes', - propType: 'any', - }, - { - name: 'contextType', - propType: 'object', - }, - { - name: 'contextTypes', - propType: 'any', - }, - { - name: 'childContextTypes', - propType: 'any', - }, - { - name: 'defaultProps', - propType: 'any', - }, - { - name: 'displayName', - propType: 'string', - }, - ], - }, - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'defaultProps', - propType: 'any', - }, - { - name: 'propTypes', - propType: 'any', - }, - ], - }, - ], - }, - }, - { - name: 'header', - propType: 'object', - }, - { - name: 'body', - propType: { - type: 'oneOfType', - value: [ - 'any', - { - type: 'shape', - value: [ - { - name: 'wrapper', - propType: { - type: 'oneOfType', - value: [ - 'object', - 'style', - 'option', - 'input', - 'time', - 'link', - 'menu', - 'dialog', - 'small', - 'title', - 'slot', - 'form', - 's', - 'span', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: '__call', - propType: 'any', - }, - { - name: 'propTypes', - propType: 'any', - }, - { - name: 'contextTypes', - propType: 'any', - }, - { - name: 'defaultProps', - propType: 'any', - }, - { - name: 'displayName', - propType: 'string', - }, - ], - }, - 'footer', - 'progress', - 'select', - 'a', - 'abbr', - 'address', - 'area', - 'article', - 'aside', - 'audio', - 'b', - 'base', - 'bdi', - 'bdo', - 'blockquote', - 'body', - 'br', - 'button', - 'canvas', - 'caption', - 'cite', - 'code', - 'col', - 'colgroup', - 'data', - 'datalist', - 'dd', - 'del', - 'details', - 'dfn', - 'div', - 'dl', - 'dt', - 'em', - 'embed', - 'fieldset', - 'figcaption', - 'figure', - 'h1', - 'h2', - 'h3', - 'h4', - 'h5', - 'h6', - 'head', - 'header', - 'hgroup', - 'hr', - 'html', - 'i', - 'iframe', - 'img', - 'ins', - 'kbd', - 'label', - 'legend', - 'li', - 'main', - 'map', - 'mark', - 'meta', - 'meter', - 'nav', - 'noscript', - 'ol', - 'optgroup', - 'output', - 'p', - 'param', - 'picture', - 'pre', - 'q', - 'rp', - 'rt', - 'ruby', - 'samp', - 'script', - 'section', - 'source', - 'strong', - 'sub', - 'summary', - 'sup', - 'table', - 'tbody', - 'td', - 'template', - 'textarea', - 'tfoot', - 'th', - 'thead', - 'tr', - 'track', - 'u', - 'ul', - 'var', - 'video', - 'wbr', - 'any', - 'big', - 'keygen', - 'menuitem', - 'webview', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'S', - propType: 'any', - }, - { - name: '__new', - propType: 'any', - }, - { - name: 'propTypes', - propType: 'any', - }, - { - name: 'contextType', - propType: 'object', - }, - { - name: 'contextTypes', - propType: 'any', - }, - { - name: 'childContextTypes', - propType: 'any', - }, - { - name: 'defaultProps', - propType: 'any', - }, - { - name: 'displayName', - propType: 'string', - }, - ], - }, - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'defaultProps', - propType: 'any', - }, - { - name: 'propTypes', - propType: 'any', - }, - ], - }, - ], - }, - }, - { - name: 'row', - propType: { - type: 'oneOfType', - value: [ - 'object', - 'style', - 'option', - 'input', - 'time', - 'link', - 'menu', - 'dialog', - 'small', - 'title', - 'slot', - 'form', - 's', - 'span', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: '__call', - propType: 'any', - }, - { - name: 'propTypes', - propType: 'any', - }, - { - name: 'contextTypes', - propType: 'any', - }, - { - name: 'defaultProps', - propType: 'any', - }, - { - name: 'displayName', - propType: 'string', - }, - ], - }, - 'footer', - 'progress', - 'select', - 'a', - 'abbr', - 'address', - 'area', - 'article', - 'aside', - 'audio', - 'b', - 'base', - 'bdi', - 'bdo', - 'blockquote', - 'body', - 'br', - 'button', - 'canvas', - 'caption', - 'cite', - 'code', - 'col', - 'colgroup', - 'data', - 'datalist', - 'dd', - 'del', - 'details', - 'dfn', - 'div', - 'dl', - 'dt', - 'em', - 'embed', - 'fieldset', - 'figcaption', - 'figure', - 'h1', - 'h2', - 'h3', - 'h4', - 'h5', - 'h6', - 'head', - 'header', - 'hgroup', - 'hr', - 'html', - 'i', - 'iframe', - 'img', - 'ins', - 'kbd', - 'label', - 'legend', - 'li', - 'main', - 'map', - 'mark', - 'meta', - 'meter', - 'nav', - 'noscript', - 'ol', - 'optgroup', - 'output', - 'p', - 'param', - 'picture', - 'pre', - 'q', - 'rp', - 'rt', - 'ruby', - 'samp', - 'script', - 'section', - 'source', - 'strong', - 'sub', - 'summary', - 'sup', - 'table', - 'tbody', - 'td', - 'template', - 'textarea', - 'tfoot', - 'th', - 'thead', - 'tr', - 'track', - 'u', - 'ul', - 'var', - 'video', - 'wbr', - 'any', - 'big', - 'keygen', - 'menuitem', - 'webview', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'S', - propType: 'any', - }, - { - name: '__new', - propType: 'any', - }, - { - name: 'propTypes', - propType: 'any', - }, - { - name: 'contextType', - propType: 'object', - }, - { - name: 'contextTypes', - propType: 'any', - }, - { - name: 'childContextTypes', - propType: 'any', - }, - { - name: 'defaultProps', - propType: 'any', - }, - { - name: 'displayName', - propType: 'string', - }, - ], - }, - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'defaultProps', - propType: 'any', - }, - { - name: 'propTypes', - propType: 'any', - }, - ], - }, - ], - }, - }, - { - name: 'cell', - propType: { - type: 'oneOfType', - value: [ - 'object', - 'style', - 'option', - 'input', - 'time', - 'link', - 'menu', - 'dialog', - 'small', - 'title', - 'slot', - 'form', - 's', - 'span', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: '__call', - propType: 'any', - }, - { - name: 'propTypes', - propType: 'any', - }, - { - name: 'contextTypes', - propType: 'any', - }, - { - name: 'defaultProps', - propType: 'any', - }, - { - name: 'displayName', - propType: 'string', - }, - ], - }, - 'footer', - 'progress', - 'select', - 'a', - 'abbr', - 'address', - 'area', - 'article', - 'aside', - 'audio', - 'b', - 'base', - 'bdi', - 'bdo', - 'blockquote', - 'body', - 'br', - 'button', - 'canvas', - 'caption', - 'cite', - 'code', - 'col', - 'colgroup', - 'data', - 'datalist', - 'dd', - 'del', - 'details', - 'dfn', - 'div', - 'dl', - 'dt', - 'em', - 'embed', - 'fieldset', - 'figcaption', - 'figure', - 'h1', - 'h2', - 'h3', - 'h4', - 'h5', - 'h6', - 'head', - 'header', - 'hgroup', - 'hr', - 'html', - 'i', - 'iframe', - 'img', - 'ins', - 'kbd', - 'label', - 'legend', - 'li', - 'main', - 'map', - 'mark', - 'meta', - 'meter', - 'nav', - 'noscript', - 'ol', - 'optgroup', - 'output', - 'p', - 'param', - 'picture', - 'pre', - 'q', - 'rp', - 'rt', - 'ruby', - 'samp', - 'script', - 'section', - 'source', - 'strong', - 'sub', - 'summary', - 'sup', - 'table', - 'tbody', - 'td', - 'template', - 'textarea', - 'tfoot', - 'th', - 'thead', - 'tr', - 'track', - 'u', - 'ul', - 'var', - 'video', - 'wbr', - 'any', - 'big', - 'keygen', - 'menuitem', - 'webview', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'S', - propType: 'any', - }, - { - name: '__new', - propType: 'any', - }, - { - name: 'propTypes', - propType: 'any', - }, - { - name: 'contextType', - propType: 'object', - }, - { - name: 'contextTypes', - propType: 'any', - }, - { - name: 'childContextTypes', - propType: 'any', - }, - { - name: 'defaultProps', - propType: 'any', - }, - { - name: 'displayName', - propType: 'string', - }, - ], - }, - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'defaultProps', - propType: 'any', - }, - { - name: 'propTypes', - propType: 'any', - }, - ], - }, - ], - }, - }, - ], - }, - ], - }, - }, - ], - }, - }, - { - name: 'footer', - propType: 'any', - }, - { - name: 'summary', - propType: 'func', - }, - { - name: 'rowKey', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'any', - ], - }, - }, - { - name: 'tableLayout', - propType: { - type: 'oneOfType', - value: [ - 'auto', - 'fixed', - ], - }, - }, - { - description: 'Config expand rows', - name: 'expandable', - propType: { - type: 'shape', - value: [ - { - name: 'RecordType', - propType: 'any', - }, - { - name: 'rowExpandable', - propType: 'object', - }, - ], - }, - }, - { - name: 'indentSize', - propType: 'number', - }, - { - name: 'rowClassName', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'any', - ], - }, - }, - { - name: 'showHeader', - propType: 'bool', - }, - { - name: 'onRow', - propType: 'any', - }, - { - name: 'onHeaderRow', - propType: 'any', - }, - { - name: 'emptyText', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - false, - true, - 'object', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', - ], - }, - }, - { - description: '@deprecated Use `expandable.expandedRowKeys` instead', - name: 'expandedRowKeys', - propType: { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - }, - { - description: '@deprecated Use `expandable.defaultExpandedRowKeys` instead', - name: 'defaultExpandedRowKeys', - propType: { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - }, - { - description: '@deprecated Use `expandable.expandedRowRender` instead', - name: 'expandedRowRender', - propType: 'any', - }, - { - description: '@deprecated Use `expandable.expandRowByClick` instead', - name: 'expandRowByClick', - propType: 'bool', - }, - { - description: '@deprecated Use `expandable.onExpand` instead', - name: 'onExpand', - propType: 'func', - }, - { - description: '@deprecated Use `expandable.onExpandedRowsChange` instead', - name: 'onExpandedRowsChange', - propType: 'func', - }, - { - description: '@deprecated Use `expandable.defaultExpandAllRows` instead', - name: 'defaultExpandAllRows', - propType: 'bool', - }, - { - description: '@deprecated Use `expandable.expandIconColumnIndex` instead', - name: 'expandIconColumnIndex', - propType: 'number', - }, - { - description: '@deprecated Use `expandable.expandedRowClassName` instead', - name: 'expandedRowClassName', - propType: 'any', - }, - { - description: '@deprecated Use `expandable.childrenColumnName` instead', - name: 'childrenColumnName', - propType: 'string', - }, - ], - screenshot: '', - title: 'antd', - }, { componentName: 'Transfer', devMode: 'proCode', @@ -25299,9 +33697,9 @@ Generated by [AVA](https://avajs.dev). propType: 'bool', }, { - defaultValue: [], name: 'dataSource', propType: { + isRequired: true, type: 'arrayOf', value: { type: 'shape', @@ -25330,41 +33728,98 @@ Generated by [AVA](https://avajs.dev). name: 'targetKeys', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'selectedKeys', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'render', - propType: 'any', + propType: { + raw: 'TransferRender', + type: 'func', + value: [ + { + name: 'item', + propType: { + type: 'shape', + value: [ + { + name: 'key', + propType: 'string', + }, + { + name: 'title', + propType: 'string', + }, + { + name: 'description', + propType: 'string', + }, + { + name: 'disabled', + propType: 'bool', + }, + ], + }, + }, + ], + }, }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(targetKeys: string[], direction: string, moveKeys: string[]) => void', + type: 'func', + value: [ + { + name: 'targetKeys', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + { + name: 'direction', + propType: 'string', + }, + { + name: 'moveKeys', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + ], + }, }, { name: 'onSelectChange', - propType: 'func', + propType: { + raw: '(sourceSelectedKeys: string[], targetSelectedKeys: string[]) => void', + type: 'func', + value: [ + { + name: 'sourceSelectedKeys', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + { + name: 'targetSelectedKeys', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + ], + }, }, { name: 'style', @@ -25373,10 +33828,34 @@ Generated by [AVA](https://avajs.dev). { name: 'listStyle', propType: { + isRequired: true, type: 'oneOfType', value: [ 'object', - 'func', + { + raw: '(style: ListStyle) => CSSProperties', + type: 'func', + value: [ + { + name: 'style', + propType: { + type: 'shape', + value: [ + { + name: 'direction', + propType: { + type: 'oneOf', + value: [ + 'left', + 'right', + ], + }, + }, + ], + }, + }, + ], + }, ], }, }, @@ -25388,59 +33867,152 @@ Generated by [AVA](https://avajs.dev). name: 'titles', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'operations', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { - defaultValue: false, name: 'showSearch', propType: 'bool', }, { name: 'filterOption', - propType: 'func', + propType: { + raw: '(inputValue: string, item: TransferItem) => boolean', + type: 'func', + value: [ + { + name: 'inputValue', + propType: 'string', + }, + { + name: 'item', + propType: { + type: 'shape', + value: [ + { + name: 'key', + propType: 'string', + }, + { + name: 'title', + propType: 'string', + }, + { + name: 'description', + propType: 'string', + }, + { + name: 'disabled', + propType: 'bool', + }, + ], + }, + }, + ], + }, }, { - defaultValue: {}, name: 'locale', - propType: 'any', + propType: 'object', }, { name: 'footer', - propType: 'func', + propType: { + raw: '(props: TransferListProps) => ReactNode', + type: 'func', + value: [ + { + name: 'props', + propType: 'object', + }, + ], + }, }, { name: 'rowKey', - propType: 'func', + propType: { + raw: '(record: TransferItem) => string', + type: 'func', + value: [ + { + name: 'record', + propType: { + type: 'shape', + value: [ + { + name: 'key', + propType: 'string', + }, + { + name: 'title', + propType: 'string', + }, + { + name: 'description', + propType: 'string', + }, + { + name: 'disabled', + propType: 'bool', + }, + ], + }, + }, + ], + }, }, { name: 'onSearch', - propType: 'func', + propType: { + raw: '(direction: ExpandIconPosition, value: string) => void', + type: 'func', + value: [ + { + name: 'direction', + propType: { + type: 'oneOf', + value: [ + 'left', + 'right', + ], + }, + }, + { + name: 'value', + propType: 'string', + }, + ], + }, }, { name: 'onScroll', - propType: 'func', + propType: { + raw: '(direction: ExpandIconPosition, e: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'direction', + propType: { + type: 'oneOf', + value: [ + 'left', + 'right', + ], + }, + }, + { + name: 'e', + propType: 'object', + }, + ], + }, }, { name: 'showSelectAll', @@ -25455,64 +34027,30 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', 'object', { - type: 'shape', + raw: '(info: { selectedCount: number; totalCount: number; }) => ReactNode', + type: 'func', value: [ { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', + name: 'info', propType: { - type: 'oneOfType', + type: 'shape', value: [ - 'string', - 'number', + { + name: 'selectedCount', + propType: 'number', + }, + { + name: 'totalCount', + propType: 'number', + }, ], }, }, ], }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', ], }, }, @@ -25558,7 +34096,6 @@ Generated by [AVA](https://avajs.dev). propType: 'bool', }, { - defaultValue: false, description: '是否支持选中', name: 'checkable', propType: 'bool', @@ -25705,7 +34242,16 @@ Generated by [AVA](https://avajs.dev). { description: '点击树节点触发', name: 'filterAntTreeNode', - propType: 'func', + propType: { + raw: '(node: AntTreeNode) => boolean', + type: 'func', + value: [ + { + name: 'node', + propType: 'object', + }, + ], + }, }, { name: 'loadedKeys', @@ -25730,7 +34276,6 @@ Generated by [AVA](https://avajs.dev). propType: 'object', }, { - defaultValue: false, name: 'showIcon', propType: 'bool', }, @@ -25741,110 +34286,170 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', 'object', { - type: 'shape', + raw: '(nodeProps: AntdTreeNodeAttribute) => ReactNode', + type: 'func', value: [ { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', + name: 'nodeProps', propType: { - type: 'oneOfType', + type: 'shape', value: [ - 'string', - 'number', + { + name: 'eventKey', + propType: 'string', + }, + { + name: 'prefixCls', + propType: 'string', + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'children', + propType: 'node', + }, + { + name: 'title', + propType: 'node', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'isLeaf', + propType: 'bool', + }, + { + name: 'selectable', + propType: 'bool', + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'disableCheckbox', + propType: 'bool', + }, ], }, }, ], }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', ], }, }, { name: 'switcherIcon', - propType: { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, + propType: 'object', }, { name: 'prefixCls', propType: 'string', }, { - defaultValue: false, name: 'blockNode', propType: 'bool', }, + { + name: 'onClick', + propType: { + raw: '(e: MouseEvent, treeNode: EventDataNode) => void', + type: 'func', + value: [ + { + name: 'e', + propType: 'object', + }, + { + name: 'treeNode', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, + }, { name: 'virtual', propType: 'bool', @@ -25855,67 +34460,1132 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onKeyDown', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelect', - propType: 'func', - }, - { - name: 'onClick', - propType: 'func', + propType: { + raw: '(selectedKeys: ReactText[], info: { event: "select"; selected: boolean; node: EventDataNode; selectedNodes: DataNode[]; nativeEvent: MouseEvent; }) => void', + type: 'func', + value: [ + { + name: 'selectedKeys', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + }, + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: { + type: 'oneOf', + value: [ + 'select', + ], + }, + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + { + name: 'selectedNodes', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'checkable', + propType: 'bool', + }, + { + name: 'children', + propType: { + type: 'arrayOf', + value: 'object', + }, + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'disableCheckbox', + propType: 'bool', + }, + { + name: 'icon', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + 'bool', + 'object', + { + raw: '(props: TreeNodeProps) => ReactNode', + type: 'func', + value: [ + { + name: 'props', + propType: 'object', + }, + ], + }, + ], + }, + }, + { + name: 'isLeaf', + propType: 'bool', + }, + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'title', + propType: 'node', + }, + { + name: 'selectable', + propType: 'bool', + }, + { + name: 'switcherIcon', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + 'bool', + 'object', + { + raw: '(props: TreeNodeProps) => ReactNode', + type: 'func', + value: [ + { + name: 'props', + propType: 'object', + }, + ], + }, + ], + }, + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'style', + propType: 'object', + }, + ], + }, + }, + }, + { + name: 'nativeEvent', + propType: 'object', + }, + ], + }, + }, + ], + }, }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(info: { event: MouseEvent; node: EventDataNode; }) => void', + type: 'func', + value: [ + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: 'object', + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', + propType: { + raw: '(info: { event: MouseEvent; node: EventDataNode; }) => void', + type: 'func', + value: [ + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: 'object', + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, + }, + ], + }, }, { name: 'onLoad', - propType: 'func', + propType: { + raw: '(loadedKeys: ReactText[], info: { event: "load"; node: EventDataNode; }) => void', + type: 'func', + value: [ + { + name: 'loadedKeys', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + }, + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: { + type: 'oneOf', + value: [ + 'load', + ], + }, + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, + }, + ], + }, }, { name: 'onDoubleClick', - propType: 'func', + propType: { + raw: '(e: MouseEvent, treeNode: EventDataNode) => void', + type: 'func', + value: [ + { + name: 'e', + propType: 'object', + }, + { + name: 'treeNode', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, }, { name: 'onDragEnd', - propType: 'func', + propType: { + raw: '(info: { event: MouseEvent; node: EventDataNode; }) => void', + type: 'func', + value: [ + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: 'object', + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, + }, + ], + }, }, { name: 'onDragEnter', - propType: 'func', + propType: { + raw: '(info: { event: MouseEvent; node: EventDataNode; expandedKeys: ReactText[]; }) => void', + type: 'func', + value: [ + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: 'object', + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + { + name: 'expandedKeys', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + }, + ], + }, + }, + ], + }, }, { name: 'onDragLeave', - propType: 'func', + propType: { + raw: '(info: { event: MouseEvent; node: EventDataNode; }) => void', + type: 'func', + value: [ + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: 'object', + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, + }, + ], + }, }, { name: 'onDragOver', - propType: 'func', + propType: { + raw: '(info: { event: MouseEvent; node: EventDataNode; }) => void', + type: 'func', + value: [ + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: 'object', + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, + }, + ], + }, }, { name: 'onDragStart', - propType: 'func', + propType: { + raw: '(info: { event: MouseEvent; node: EventDataNode; }) => void', + type: 'func', + value: [ + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: 'object', + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, + }, + ], + }, }, { name: 'onDrop', - propType: 'func', + propType: { + raw: '(info: { event: MouseEvent; node: EventDataNode; dragNode: EventDataNode; dragNodesKeys: ReactText[]; dropPosition: number; dropToGap: boolean; }) => void', + type: 'func', + value: [ + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: 'object', + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + { + name: 'dragNode', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + { + name: 'dragNodesKeys', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + }, + { + name: 'dropPosition', + propType: 'number', + }, + { + name: 'dropToGap', + propType: 'bool', + }, + ], + }, + }, + ], + }, }, { name: 'loadData', - propType: 'func', + propType: { + raw: '(treeNode: EventDataNode) => Promise', + type: 'func', + value: [ + { + name: 'treeNode', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, }, { name: 'height', @@ -25929,10 +35599,6 @@ Generated by [AVA](https://avajs.dev). name: 'focusable', propType: 'bool', }, - { - name: 'onExpand', - propType: 'func', - }, { name: 'treeData', propType: { @@ -25946,7 +35612,10 @@ Generated by [AVA](https://avajs.dev). }, { name: 'children', - propType: 'any', + propType: { + type: 'arrayOf', + value: 'object', + }, }, { name: 'disabled', @@ -25963,64 +35632,18 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', 'object', { - type: 'shape', + raw: '(props: TreeNodeProps) => ReactNode', + type: 'func', value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, { name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, + propType: 'object', }, ], }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', ], }, }, @@ -26053,64 +35676,18 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', 'object', { - type: 'shape', + raw: '(props: TreeNodeProps) => ReactNode', + type: 'func', value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, { name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, + propType: 'object', }, ], }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', ], }, }, @@ -26126,22 +35703,617 @@ Generated by [AVA](https://avajs.dev). }, }, }, + { + name: 'onExpand', + propType: { + raw: '(expandedKeys: ReactText[], info: { node: EventDataNode; expanded: boolean; nativeEvent: MouseEvent; }) => void', + type: 'func', + value: [ + { + name: 'expandedKeys', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + }, + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'nativeEvent', + propType: 'object', + }, + ], + }, + }, + ], + }, + }, { name: 'onCheck', - propType: 'func', + propType: { + raw: '(checked: ReactText[] | { checked: ReactText[]; halfChecked: ReactText[]; }, info: CheckInfo) => void', + type: 'func', + value: [ + { + name: 'checked', + propType: { + type: 'oneOfType', + value: [ + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + type: 'shape', + value: [ + { + name: 'checked', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + }, + { + name: 'halfChecked', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + }, + ], + }, + ], + }, + }, + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: { + type: 'oneOf', + value: [ + 'check', + ], + }, + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'nativeEvent', + propType: 'object', + }, + { + name: 'checkedNodes', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'checkable', + propType: 'bool', + }, + { + name: 'children', + propType: { + type: 'arrayOf', + value: 'object', + }, + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'disableCheckbox', + propType: 'bool', + }, + { + name: 'icon', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + 'bool', + 'object', + { + raw: '(props: TreeNodeProps) => ReactNode', + type: 'func', + value: [ + { + name: 'props', + propType: 'object', + }, + ], + }, + ], + }, + }, + { + name: 'isLeaf', + propType: 'bool', + }, + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'title', + propType: 'node', + }, + { + name: 'selectable', + propType: 'bool', + }, + { + name: 'switcherIcon', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + 'bool', + 'object', + { + raw: '(props: TreeNodeProps) => ReactNode', + type: 'func', + value: [ + { + name: 'props', + propType: 'object', + }, + ], + }, + ], + }, + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'style', + propType: 'object', + }, + ], + }, + }, + }, + { + name: 'checkedNodesPositions', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'checkable', + propType: 'bool', + }, + { + name: 'children', + propType: { + type: 'arrayOf', + value: 'object', + }, + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'disableCheckbox', + propType: 'bool', + }, + { + name: 'icon', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + 'bool', + 'object', + { + raw: '(props: TreeNodeProps) => ReactNode', + type: 'func', + value: [ + { + name: 'props', + propType: 'object', + }, + ], + }, + ], + }, + }, + { + name: 'isLeaf', + propType: 'bool', + }, + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'title', + propType: 'node', + }, + { + name: 'selectable', + propType: 'bool', + }, + { + name: 'switcherIcon', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + 'bool', + 'object', + { + raw: '(props: TreeNodeProps) => ReactNode', + type: 'func', + value: [ + { + name: 'props', + propType: 'object', + }, + ], + }, + ], + }, + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'style', + propType: 'object', + }, + ], + }, + }, + { + name: 'pos', + propType: 'string', + }, + ], + }, + }, + }, + { + name: 'halfCheckedKeys', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + }, + ], + }, + }, + ], + }, }, { name: 'onRightClick', - propType: 'func', + propType: { + raw: '(info: { event: MouseEvent; node: EventDataNode; }) => void', + type: 'func', + value: [ + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: 'object', + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, + }, + ], + }, }, { description: 'Used for `rc-tree-select` only.', name: 'onActiveChange', - propType: 'func', + propType: { + raw: '(key: ReactText) => void', + type: 'func', + value: [ + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, }, { name: 'filterTreeNode', - propType: 'func', + propType: { + raw: '(treeNode: EventDataNode) => boolean', + type: 'func', + value: [ + { + name: 'treeNode', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, }, { name: 'itemHeight', @@ -26171,7 +36343,7 @@ Generated by [AVA](https://avajs.dev). { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'middle', @@ -26180,7 +36352,6 @@ Generated by [AVA](https://avajs.dev). }, }, { - defaultValue: true, name: 'bordered', propType: 'bool', }, @@ -26200,6 +36371,19 @@ Generated by [AVA](https://avajs.dev). name: 'className', propType: 'string', }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, { name: 'loading', propType: 'bool', @@ -26261,7 +36445,10 @@ Generated by [AVA](https://avajs.dev). }, { name: 'children', - propType: 'any', + propType: { + type: 'arrayOf', + value: 'object', + }, }, ], }, @@ -26269,11 +36456,11 @@ Generated by [AVA](https://avajs.dev). }, { name: 'value', - propType: 'any', + propType: 'object', }, { name: 'defaultValue', - propType: 'any', + propType: 'object', }, { description: '@deprecated Use `searchValue` instead', @@ -26298,7 +36485,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onSearch', - propType: 'func', + propType: { + raw: '(value: string) => void', + type: 'func', + value: [ + { + name: 'value', + propType: 'string', + }, + ], + }, }, { name: 'allowClear', @@ -26346,8 +36542,7 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'number', - false, - true, + 'bool', ], }, }, @@ -26365,7 +36560,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'getPopupContainer', - propType: 'any', + propType: { + raw: 'RenderDOMFunc', + type: 'func', + value: [ + { + name: 'props', + propType: 'any', + }, + ], + }, }, { name: 'direction', @@ -26401,18 +36605,258 @@ Generated by [AVA](https://avajs.dev). }, { name: 'maxTagPlaceholder', - propType: 'func', + propType: { + raw: '(omittedValues: LabelValueType[]) => any', + type: 'func', + value: [ + { + name: 'omittedValues', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'label', + propType: 'any', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + ], + }, + }, + }, + ], + }, }, { name: 'tagRender', - propType: 'func', + propType: { + raw: '(props: CustomTagProps) => ReactElement ReactElement Component)>) | (new (props: any) => Component<...>)>', + type: 'func', + value: [ + { + name: 'props', + propType: { + type: 'shape', + value: [ + { + name: 'label', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + type: 'shape', + value: [ + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'label', + propType: 'node', + }, + ], + }, + { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'label', + propType: 'node', + }, + ], + }, + }, + ], + }, + }, + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + type: 'shape', + value: [ + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'label', + propType: 'node', + }, + ], + }, + { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'label', + propType: 'node', + }, + ], + }, + }, + ], + }, + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'onClose', + propType: { + raw: '(event?: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'closable', + propType: 'bool', + }, + ], + }, + }, + ], + }, }, { name: 'showAction', propType: { type: 'arrayOf', value: { - type: 'oneOfType', + type: 'oneOf', value: [ 'focus', 'click', @@ -26426,19 +36870,55 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onKeyUp', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDown', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPopupScroll', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDropdownVisibleChange', - propType: 'func', + propType: { + raw: '(open: boolean) => void', + type: 'func', + value: [ + { + name: 'open', + propType: 'bool', + }, + ], + }, }, { name: 'onSelect', @@ -26450,31 +36930,81 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onInputKeyDown', - propType: 'func', - }, - { - name: 'onClick', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'choiceTransitionName', @@ -26492,7 +37022,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onClear', - propType: 'any', + propType: 'func', }, { name: 'skipTriggerChange', @@ -26504,461 +37034,95 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onRawSelect', - propType: 'object', + propType: { + raw: '(value: ReactText, option: OptionsType[number], source: SelectSource) => void', + type: 'func', + value: [ + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'option', + propType: 'object', + }, + { + name: 'source', + propType: { + type: 'oneOf', + value: [ + 'option', + 'selection', + 'input', + ], + }, + }, + ], + }, }, { name: 'onRawDeselect', - propType: 'object', + propType: { + raw: '(value: ReactText, option: OptionsType[number], source: SelectSource) => void', + type: 'func', + value: [ + { + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'option', + propType: 'object', + }, + { + name: 'source', + propType: { + type: 'oneOf', + value: [ + 'option', + 'selection', + 'input', + ], + }, + }, + ], + }, }, ], }, }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'loadData', - propType: 'func', + propType: { + raw: '(dataNode: LegacyDataNode) => Promise', + type: 'func', + value: [ + { + name: 'dataNode', + propType: { + type: 'shape', + value: [ + { + name: 'props', + propType: 'any', + }, + ], + }, + }, + ], + }, }, { description: '`searchPlaceholder` has been removed since search box has been merged into input box', @@ -27018,7 +37182,10 @@ Generated by [AVA](https://avajs.dev). }, { name: 'children', - propType: 'any', + propType: { + type: 'arrayOf', + value: 'object', + }, }, ], }, @@ -27029,9 +37196,8 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'any', + 'bool', + 'func', ], }, }, @@ -27042,64 +37208,18 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', 'object', { - type: 'shape', + raw: '(props: TreeNodeProps) => ReactNode', + type: 'func', value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, { name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, + propType: 'object', }, ], }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', ], }, }, @@ -27116,8 +37236,7 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, + 'bool', { type: 'shape', value: [ @@ -27206,7 +37325,7 @@ Generated by [AVA](https://avajs.dev). { name: 'showCheckedStrategy', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'SHOW_ALL', 'SHOW_PARENT', @@ -27229,64 +37348,18 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', 'object', { - type: 'shape', + raw: '(props: TreeNodeProps) => ReactNode', + type: 'func', value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, { name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, + propType: 'object', }, ], }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', ], }, }, @@ -27296,11 +37369,47 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onTreeExpand', - propType: 'func', + propType: { + raw: '(expandedKeys: ReactText[]) => void', + type: 'func', + value: [ + { + name: 'expandedKeys', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + }, + ], + }, }, { name: 'onTreeLoad', - propType: 'func', + propType: { + raw: '(loadedKeys: ReactText[]) => void', + type: 'func', + value: [ + { + name: 'loadedKeys', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + }, + ], + }, }, ], screenshot: '', @@ -27328,69 +37437,51 @@ Generated by [AVA](https://avajs.dev). propType: 'string', }, { - defaultValue: false, name: 'hideAdd', propType: 'bool', }, { name: 'onChange', - propType: 'func', - }, - { - name: 'onTabClick', propType: { - type: 'shape', + raw: '(activeKey: string) => void', + type: 'func', value: [ { - name: 'apply', - propType: 'func', - }, - { - name: 'call', - propType: 'func', - }, - { - name: 'bind', - propType: 'func', - }, - { - name: 'toString', - propType: 'object', - }, - { - name: 'prototype', - propType: 'any', - }, - { - name: 'length', - propType: 'number', - }, - { - name: 'arguments', - propType: 'any', - }, - { - name: 'caller', - propType: 'func', - }, - { - name: 'name', + name: 'activeKey', propType: 'string', }, - { - name: '__@hasInstance', - propType: 'func', - }, ], }, }, { - name: 'onPrevClick', + name: 'onTabClick', propType: 'func', }, + { + name: 'onPrevClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, { name: 'onNextClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'tabBarExtraContent', @@ -27403,7 +37494,7 @@ Generated by [AVA](https://avajs.dev). { name: 'type', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'line', 'card', @@ -27414,23 +37505,48 @@ Generated by [AVA](https://avajs.dev). { name: 'tabPosition', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ - 'top', - 'right', - 'bottom', 'left', + 'right', + 'top', + 'bottom', ], }, }, { name: 'onEdit', - propType: 'func', + propType: { + raw: '(targetKey: string | MouseEvent, action: "add" | "remove") => void', + type: 'func', + value: [ + { + name: 'targetKey', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'object', + ], + }, + }, + { + name: 'action', + propType: { + type: 'oneOf', + value: [ + 'add', + 'remove', + ], + }, + }, + ], + }, }, { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'large', @@ -27455,8 +37571,7 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, + 'bool', { type: 'shape', value: [ @@ -27479,7 +37594,20 @@ Generated by [AVA](https://avajs.dev). }, { name: 'renderTabBar', - propType: 'func', + propType: { + raw: '(props: TabsProps, DefaultTabBar: ComponentClass) => ReactElement ReactElement Component)>) | (new (props: any) => Component<...>)>', + type: 'func', + value: [ + { + name: 'props', + propType: 'object', + }, + { + name: 'DefaultTabBar', + propType: 'object', + }, + ], + }, }, { name: 'destroyInactiveTabPane', @@ -27520,29 +37648,33 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'object', - 'success', - 'warning', - 'error', - 'default', - 'processing', - 'pink', - 'red', - 'yellow', - 'orange', - 'cyan', - 'green', - 'blue', - 'purple', - 'geekblue', - 'magenta', - 'volcano', - 'gold', - 'lime', + { + type: 'oneOf', + value: [ + 'success', + 'warning', + 'error', + 'default', + 'processing', + 'pink', + 'red', + 'yellow', + 'orange', + 'cyan', + 'green', + 'blue', + 'purple', + 'geekblue', + 'magenta', + 'volcano', + 'gold', + 'lime', + ], + }, ], }, }, { - defaultValue: false, name: 'closable', propType: 'bool', }, @@ -27552,51 +37684,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onClose', - propType: { - type: 'shape', - value: [ - { - name: 'apply', - propType: 'func', - }, - { - name: 'call', - propType: 'func', - }, - { - name: 'bind', - propType: 'func', - }, - { - name: 'toString', - propType: 'object', - }, - { - name: 'prototype', - propType: 'any', - }, - { - name: 'length', - propType: 'number', - }, - { - name: 'arguments', - propType: 'any', - }, - { - name: 'caller', - propType: 'func', - }, - { - name: 'name', - propType: 'string', - }, - { - name: '__@hasInstance', - propType: 'func', - }, - ], - }, + propType: 'func', }, { name: 'style', @@ -27619,14 +37707,7 @@ Generated by [AVA](https://avajs.dev). 'number', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, @@ -27648,11 +37729,15 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', - 'inherit', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + 'inherit', + ], + }, ], }, }, @@ -27669,10 +37754,14 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, @@ -27701,10 +37790,14 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, @@ -27719,7 +37812,7 @@ Generated by [AVA](https://avajs.dev). { name: 'translate', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'yes', 'no', @@ -27809,7 +37902,7 @@ Generated by [AVA](https://avajs.dev). { name: 'unselectable', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'off', 'on', @@ -27820,7 +37913,7 @@ Generated by [AVA](https://avajs.dev). description: 'Hints at the type of data that might be entered by the user while editing the element or its contents', name: 'inputMode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'none', 'text', @@ -27838,449 +37931,6 @@ Generated by [AVA](https://avajs.dev). name: 'is', propType: 'string', }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'dangerouslySetInnerHTML', propType: { @@ -28295,643 +37945,2620 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onCopy', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCopyCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCut', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCutCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPaste', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPasteCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEnd', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEndCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStart', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStartCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdate', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdateCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocusCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlurCapture', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onChange', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onChangeCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBeforeInput', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBeforeInputCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInput', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInputCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onReset', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onResetCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSubmit', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSubmitCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInvalid', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInvalidCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoad', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onError', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onErrorCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyDown', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyDownCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyPress', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyPressCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyUp', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyUpCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAbort', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAbortCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlay', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayThrough', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayThroughCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDurationChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDurationChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEmptied', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEmptiedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEncrypted', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEncryptedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEnded', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEndedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedData', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedDataCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedMetadata', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedMetadataCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadStart', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadStartCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPause', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPauseCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlay', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlayCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlaying', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlayingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onProgress', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onProgressCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onRateChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onRateChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeeked', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeekedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeeking', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeekingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onStalled', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onStalledCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSuspend', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSuspendCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTimeUpdate', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTimeUpdateCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onVolumeChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onVolumeChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWaiting', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWaitingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAuxClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAuxClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onContextMenu', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onContextMenuCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDoubleClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDoubleClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDrag', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnd', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEndCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnter', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnterCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragExit', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragExitCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragLeave', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragLeaveCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragOver', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragOverCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragStart', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragStartCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDrop', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDropCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseDown', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseDownCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseEnter', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseLeave', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseMove', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseMoveCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOut', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOutCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOver', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOverCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseUp', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseUpCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSelect', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSelectCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchCancel', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchCancelCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchEnd', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchEndCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchMove', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchMoveCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchStart', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchStartCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerDown', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerDownCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerMove', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerMoveCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerUp', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerUpCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerCancel', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerCancelCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerEnter', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerEnterCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerLeave', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerLeaveCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOver', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOverCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOut', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOutCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onGotPointerCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onGotPointerCaptureCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLostPointerCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLostPointerCaptureCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onScroll', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onScrollCapture', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWheel', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWheelCapture', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationStart', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationStartCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationEnd', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationEndCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationIteration', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationIterationCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTransitionEnd', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTransitionEndCapture', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + ], + screenshot: '', + title: 'antd', + }, + { + componentName: 'TimePicker', + devMode: 'proCode', + docUrl: '', + npm: { + destructuring: true, + exportName: 'TimePicker', + main: 'components/index.tsx', + package: 'antd', + subName: '', + version: '4.1.4', + }, + props: [ + { + name: 'addon', propType: 'func', }, + { + name: 'popupClassName', + propType: 'string', + }, + { + name: 'style', + propType: 'object', + }, { name: 'onChange', propType: 'func', }, { - name: 'onChangeCapture', - propType: 'func', + name: 'prefixCls', + propType: 'string', }, { - name: 'onBeforeInput', - propType: 'func', - }, - { - name: 'onBeforeInputCapture', - propType: 'func', - }, - { - name: 'onInput', - propType: 'func', - }, - { - name: 'onInputCapture', - propType: 'func', - }, - { - name: 'onReset', - propType: 'func', - }, - { - name: 'onResetCapture', - propType: 'func', - }, - { - name: 'onSubmit', - propType: 'func', - }, - { - name: 'onSubmitCapture', - propType: 'func', - }, - { - name: 'onInvalid', - propType: 'func', - }, - { - name: 'onInvalidCapture', - propType: 'func', - }, - { - name: 'onLoad', - propType: 'func', - }, - { - name: 'onLoadCapture', - propType: 'func', - }, - { - name: 'onError', - propType: 'func', - }, - { - name: 'onErrorCapture', - propType: 'func', - }, - { - name: 'onKeyDown', - propType: 'func', - }, - { - name: 'onKeyDownCapture', - propType: 'func', - }, - { - name: 'onKeyPress', - propType: 'func', - }, - { - name: 'onKeyPressCapture', - propType: 'func', - }, - { - name: 'onKeyUp', - propType: 'func', - }, - { - name: 'onKeyUpCapture', - propType: 'func', - }, - { - name: 'onAbort', - propType: 'func', - }, - { - name: 'onAbortCapture', - propType: 'func', - }, - { - name: 'onCanPlay', - propType: 'func', - }, - { - name: 'onCanPlayCapture', - propType: 'func', - }, - { - name: 'onCanPlayThrough', - propType: 'func', - }, - { - name: 'onCanPlayThroughCapture', - propType: 'func', - }, - { - name: 'onDurationChange', - propType: 'func', - }, - { - name: 'onDurationChangeCapture', - propType: 'func', - }, - { - name: 'onEmptied', - propType: 'func', - }, - { - name: 'onEmptiedCapture', - propType: 'func', - }, - { - name: 'onEncrypted', - propType: 'func', - }, - { - name: 'onEncryptedCapture', - propType: 'func', - }, - { - name: 'onEnded', - propType: 'func', - }, - { - name: 'onEndedCapture', - propType: 'func', - }, - { - name: 'onLoadedData', - propType: 'func', - }, - { - name: 'onLoadedDataCapture', - propType: 'func', - }, - { - name: 'onLoadedMetadata', - propType: 'func', - }, - { - name: 'onLoadedMetadataCapture', - propType: 'func', - }, - { - name: 'onLoadStart', - propType: 'func', - }, - { - name: 'onLoadStartCapture', - propType: 'func', - }, - { - name: 'onPause', - propType: 'func', - }, - { - name: 'onPauseCapture', - propType: 'func', - }, - { - name: 'onPlay', - propType: 'func', - }, - { - name: 'onPlayCapture', - propType: 'func', - }, - { - name: 'onPlaying', - propType: 'func', - }, - { - name: 'onPlayingCapture', - propType: 'func', - }, - { - name: 'onProgress', - propType: 'func', - }, - { - name: 'onProgressCapture', - propType: 'func', - }, - { - name: 'onRateChange', - propType: 'func', - }, - { - name: 'onRateChangeCapture', - propType: 'func', - }, - { - name: 'onSeeked', - propType: 'func', - }, - { - name: 'onSeekedCapture', - propType: 'func', - }, - { - name: 'onSeeking', - propType: 'func', - }, - { - name: 'onSeekingCapture', - propType: 'func', - }, - { - name: 'onStalled', - propType: 'func', - }, - { - name: 'onStalledCapture', - propType: 'func', - }, - { - name: 'onSuspend', - propType: 'func', - }, - { - name: 'onSuspendCapture', - propType: 'func', - }, - { - name: 'onTimeUpdate', - propType: 'func', - }, - { - name: 'onTimeUpdateCapture', - propType: 'func', - }, - { - name: 'onVolumeChange', - propType: 'func', - }, - { - name: 'onVolumeChangeCapture', - propType: 'func', - }, - { - name: 'onWaiting', - propType: 'func', - }, - { - name: 'onWaitingCapture', - propType: 'func', - }, - { - name: 'onAuxClick', - propType: 'func', - }, - { - name: 'onAuxClickCapture', - propType: 'func', + name: 'className', + propType: 'string', }, { name: 'onClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { - name: 'onClickCapture', - propType: 'func', + description: '@deprecated Will be removed in next big version. Please use `mode` instead', + name: 'mode', + propType: { + type: 'oneOf', + value: [ + 'date', + 'time', + 'week', + 'month', + 'quarter', + 'year', + 'decade', + ], + }, }, { - name: 'onContextMenu', - propType: 'func', + name: 'id', + propType: 'string', }, { - name: 'onContextMenuCapture', - propType: 'func', + name: 'value', + propType: 'object', }, { - name: 'onDoubleClick', - propType: 'func', + name: 'defaultValue', + propType: 'object', }, { - name: 'onDoubleClickCapture', - propType: 'func', + name: 'allowClear', + propType: 'bool', }, { - name: 'onDrag', - propType: 'func', + name: 'clearIcon', + propType: 'node', }, { - name: 'onDragCapture', - propType: 'func', + name: 'open', + propType: 'bool', }, { - name: 'onDragEnd', - propType: 'func', + name: 'defaultOpen', + propType: 'bool', }, { - name: 'onDragEndCapture', - propType: 'func', + name: 'dropdownClassName', + propType: 'string', }, { - name: 'onDragEnter', - propType: 'func', + name: 'dropdownAlign', + propType: { + type: 'shape', + value: [ + { + name: 'points', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + { + name: 'offset', + propType: { + type: 'arrayOf', + value: 'number', + }, + }, + { + name: 'targetOffset', + propType: { + type: 'arrayOf', + value: 'number', + }, + }, + { + name: 'overflow', + propType: { + type: 'shape', + value: [ + { + name: 'adjustX', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + { + name: 'adjustY', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + ], + }, + }, + { + name: 'useCssRight', + propType: 'bool', + }, + { + name: 'useCssBottom', + propType: 'bool', + }, + { + name: 'useCssTransform', + propType: 'bool', + }, + { + name: 'ignoreShake', + propType: 'bool', + }, + ], + }, }, { - name: 'onDragEnterCapture', - propType: 'func', + name: 'transitionName', + propType: 'string', }, { - name: 'onDragExit', - propType: 'func', + name: 'getPopupContainer', + propType: { + raw: '(node: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'node', + propType: 'object', + }, + ], + }, }, { - name: 'onDragExitCapture', - propType: 'func', + name: 'direction', + propType: { + type: 'oneOf', + value: [ + 'rtl', + 'ltr', + ], + }, }, { - name: 'onDragLeave', - propType: 'func', + name: 'disabled', + propType: 'bool', }, { - name: 'onDragLeaveCapture', - propType: 'func', + name: 'autoFocus', + propType: 'bool', }, { - name: 'onDragOver', - propType: 'func', + name: 'placeholder', + propType: 'string', }, { - name: 'onDragOverCapture', - propType: 'func', - }, - { - name: 'onDragStart', - propType: 'func', - }, - { - name: 'onDragStartCapture', - propType: 'func', - }, - { - name: 'onDrop', - propType: 'func', - }, - { - name: 'onDropCapture', - propType: 'func', - }, - { - name: 'onMouseDown', - propType: 'func', - }, - { - name: 'onMouseDownCapture', - propType: 'func', - }, - { - name: 'onMouseEnter', - propType: 'func', - }, - { - name: 'onMouseLeave', - propType: 'func', - }, - { - name: 'onMouseMove', - propType: 'func', - }, - { - name: 'onMouseMoveCapture', - propType: 'func', - }, - { - name: 'onMouseOut', - propType: 'func', - }, - { - name: 'onMouseOutCapture', - propType: 'func', - }, - { - name: 'onMouseOver', - propType: 'func', - }, - { - name: 'onMouseOverCapture', - propType: 'func', - }, - { - name: 'onMouseUp', - propType: 'func', - }, - { - name: 'onMouseUpCapture', - propType: 'func', + name: 'tabIndex', + propType: 'number', }, { name: 'onSelect', propType: 'func', }, { - name: 'onSelectCapture', + name: 'onBlur', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onFocus', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseDown', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseEnter', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseLeave', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'suffixIcon', + propType: 'node', + }, + { + name: 'size', + propType: { + type: 'oneOf', + value: [ + 'small', + 'middle', + 'large', + ], + }, + }, + { + name: 'bordered', + propType: 'bool', + }, + { + name: 'role', + propType: 'string', + }, + { + name: 'onContextMenu', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseUp', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'name', + propType: 'string', + }, + { + name: 'locale', + propType: 'object', + }, + { + description: '[Legacy] Set default display picker view date', + name: 'defaultPickerValue', + propType: 'object', + }, + { + name: 'disabledDate', propType: 'func', }, { - name: 'onTouchCancel', + name: 'dateRender', propType: 'func', }, { - name: 'onTouchCancelCapture', + name: 'monthCellRender', propType: 'func', }, { - name: 'onTouchEnd', + name: 'renderExtraFooter', + propType: { + raw: '(mode: PanelMode) => ReactNode', + type: 'func', + value: [ + { + name: 'mode', + propType: { + type: 'oneOf', + value: [ + 'date', + 'time', + 'week', + 'month', + 'quarter', + 'year', + 'decade', + ], + }, + }, + ], + }, + }, + { + name: 'onPanelChange', propType: 'func', }, { - name: 'onTouchEndCapture', + name: 'onOk', propType: 'func', }, { - name: 'onTouchMove', + name: 'popupStyle', + propType: 'object', + }, + { + description: 'Make input readOnly to avoid popup keyboard in mobile', + name: 'inputReadOnly', + propType: 'bool', + }, + { + name: 'format', + propType: { + type: 'oneOfType', + value: [ + 'string', + { + type: 'arrayOf', + value: 'string', + }, + ], + }, + }, + { + name: 'onOpenChange', + propType: { + raw: '(open: boolean) => void', + type: 'func', + value: [ + { + name: 'open', + propType: 'bool', + }, + ], + }, + }, + { + description: '@private Internal usage, do not use in production mode!!!', + name: 'pickerRef', + propType: 'object', + }, + { + name: 'autoComplete', + propType: 'string', + }, + { + name: 'showHour', + propType: 'bool', + }, + { + name: 'showMinute', + propType: 'bool', + }, + { + name: 'showSecond', + propType: 'bool', + }, + { + name: 'use12Hours', + propType: 'bool', + }, + { + name: 'hourStep', + propType: 'number', + }, + { + name: 'minuteStep', + propType: 'number', + }, + { + name: 'secondStep', + propType: 'number', + }, + { + name: 'hideDisabledOptions', + propType: 'bool', + }, + { + name: 'disabledHours', propType: 'func', }, { - name: 'onTouchMoveCapture', - propType: 'func', + name: 'disabledMinutes', + propType: { + raw: '(hour: number) => number[]', + type: 'func', + value: [ + { + name: 'hour', + propType: 'number', + }, + ], + }, }, { - name: 'onTouchStart', - propType: 'func', + name: 'disabledSeconds', + propType: { + raw: '(hour: number, minute: number) => number[]', + type: 'func', + value: [ + { + name: 'hour', + propType: 'number', + }, + { + name: 'minute', + propType: 'number', + }, + ], + }, }, { - name: 'onTouchStartCapture', - propType: 'func', + description: '@deprecated Please use `defaultValue` directly instead', + name: 'defaultOpenValue', + propType: 'object', }, { - name: 'onPointerDown', - propType: 'func', + name: 'ref', + propType: { + type: 'oneOfType', + value: [ + { + raw: '(instance: any) => void', + type: 'func', + value: [ + { + name: 'instance', + propType: 'object', + }, + ], + }, + 'object', + ], + }, }, { - name: 'onPointerDownCapture', - propType: 'func', - }, - { - name: 'onPointerMove', - propType: 'func', - }, - { - name: 'onPointerMoveCapture', - propType: 'func', - }, - { - name: 'onPointerUp', - propType: 'func', - }, - { - name: 'onPointerUpCapture', - propType: 'func', - }, - { - name: 'onPointerCancel', - propType: 'func', - }, - { - name: 'onPointerCancelCapture', - propType: 'func', - }, - { - name: 'onPointerEnter', - propType: 'func', - }, - { - name: 'onPointerEnterCapture', - propType: 'func', - }, - { - name: 'onPointerLeave', - propType: 'func', - }, - { - name: 'onPointerLeaveCapture', - propType: 'func', - }, - { - name: 'onPointerOver', - propType: 'func', - }, - { - name: 'onPointerOverCapture', - propType: 'func', - }, - { - name: 'onPointerOut', - propType: 'func', - }, - { - name: 'onPointerOutCapture', - propType: 'func', - }, - { - name: 'onGotPointerCapture', - propType: 'func', - }, - { - name: 'onGotPointerCaptureCapture', - propType: 'func', - }, - { - name: 'onLostPointerCapture', - propType: 'func', - }, - { - name: 'onLostPointerCaptureCapture', - propType: 'func', - }, - { - name: 'onScroll', - propType: 'func', - }, - { - name: 'onScrollCapture', - propType: 'func', - }, - { - name: 'onWheel', - propType: 'func', - }, - { - name: 'onWheelCapture', - propType: 'func', - }, - { - name: 'onAnimationStart', - propType: 'func', - }, - { - name: 'onAnimationStartCapture', - propType: 'func', - }, - { - name: 'onAnimationEnd', - propType: 'func', - }, - { - name: 'onAnimationEndCapture', - propType: 'func', - }, - { - name: 'onAnimationIteration', - propType: 'func', - }, - { - name: 'onAnimationIterationCapture', - propType: 'func', - }, - { - name: 'onTransitionEnd', - propType: 'func', - }, - { - name: 'onTransitionEndCapture', - propType: 'func', + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, }, ], screenshot: '', @@ -28972,17 +40599,16 @@ Generated by [AVA](https://avajs.dev). propType: 'object', }, { - defaultValue: false, name: 'reverse', propType: 'bool', }, { name: 'mode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ - 'right', 'left', + 'right', 'alternate', ], }, @@ -29011,64 +40637,9 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', 'object', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'any', + 'func', ], }, }, @@ -29079,64 +40650,9 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', 'object', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'any', + 'func', ], }, }, @@ -29151,12 +40667,12 @@ Generated by [AVA](https://avajs.dev). { name: 'placement', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ - 'top', - 'right', - 'bottom', 'left', + 'right', + 'top', + 'bottom', 'topLeft', 'topRight', 'bottomLeft', @@ -29180,25 +40696,22 @@ Generated by [AVA](https://avajs.dev). propType: 'string', }, { - defaultValue: false, name: 'arrowPointAtCenter', propType: 'bool', }, { - defaultValue: true, name: 'autoAdjustOverflow', propType: { type: 'oneOfType', value: [ - false, - true, + 'bool', { type: 'shape', value: [ { name: 'adjustX', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 0, 1, @@ -29208,7 +40721,7 @@ Generated by [AVA](https://avajs.dev). { name: 'adjustY', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 0, 1, @@ -29222,7 +40735,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'getPopupContainer', - propType: 'func', + propType: { + raw: '(triggerNode: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'triggerNode', + propType: 'object', + }, + ], + }, }, { name: 'trigger', @@ -29232,14 +40754,7 @@ Generated by [AVA](https://avajs.dev). 'string', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, @@ -29262,7 +40777,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onVisibleChange', - propType: 'func', + propType: { + raw: '(visible: boolean) => void', + type: 'func', + value: [ + { + name: 'visible', + propType: 'bool', + }, + ], + }, }, { name: 'afterVisibleChange', @@ -29281,18 +40805,25 @@ Generated by [AVA](https://avajs.dev). propType: 'string', }, { - defaultValue: 0.1, name: 'mouseEnterDelay', propType: 'number', }, { - defaultValue: 0.1, name: 'mouseLeaveDelay', propType: 'number', }, { name: 'getTooltipContainer', - propType: 'func', + propType: { + raw: '(node: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'node', + propType: 'object', + }, + ], + }, }, { name: 'destroyTooltipOnHide', @@ -29307,47 +40838,50 @@ Generated by [AVA](https://avajs.dev). name: 'points', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'offset', propType: { type: 'arrayOf', - value: { - 0: 'n', - 1: 'u', - 2: 'm', - 3: 'b', - 4: 'e', - 5: 'r', - }, + value: 'number', }, }, { name: 'targetOffset', propType: { type: 'arrayOf', - value: { - 0: 'n', - 1: 'u', - 2: 'm', - 3: 'b', - 4: 'e', - 5: 'r', - }, + value: 'number', }, }, { name: 'overflow', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'adjustX', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + { + name: 'adjustY', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + ], + }, }, { name: 'useCssRight', @@ -29382,7 +40916,122 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onPopupAlign', - propType: 'func', + propType: { + raw: '(element: HTMLElement, align: AlignType) => void', + type: 'func', + value: [ + { + name: 'element', + propType: 'object', + }, + { + name: 'align', + propType: { + type: 'shape', + value: [ + { + name: 'points', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + { + name: 'offset', + propType: { + type: 'arrayOf', + value: 'number', + }, + }, + { + name: 'targetOffset', + propType: { + type: 'arrayOf', + value: 'number', + }, + }, + { + name: 'overflow', + propType: { + type: 'shape', + value: [ + { + name: 'adjustX', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + { + name: 'adjustY', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + ], + }, + }, + { + name: 'useCssRight', + propType: 'bool', + }, + { + name: 'useCssBottom', + propType: 'bool', + }, + { + name: 'useCssTransform', + propType: 'bool', + }, + { + name: 'ignoreShake', + propType: 'bool', + }, + ], + }, + }, + ], + }, + }, + ], + screenshot: '', + title: 'antd', + }, + { + componentName: 'Typography', + devMode: 'proCode', + docUrl: '', + npm: { + destructuring: true, + exportName: 'Typography', + main: 'components/index.tsx', + package: 'antd', + subName: '', + version: '4.1.4', + }, + props: [ + { + name: 'id', + propType: 'string', + }, + { + name: 'prefixCls', + propType: 'string', + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'style', + propType: 'object', }, ], screenshot: '', @@ -29404,10 +41053,10 @@ Generated by [AVA](https://avajs.dev). { name: 'type', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ - 'drag', 'select', + 'drag', ], }, }, @@ -29457,11 +41106,11 @@ Generated by [AVA](https://avajs.dev). { name: 'status', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ - 'done', 'success', 'error', + 'done', 'uploading', 'removed', ], @@ -29480,35 +41129,6 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - { - type: 'shape', - value: [ - { - name: 'size', - propType: 'number', - }, - { - name: 'type', - propType: 'string', - }, - { - name: 'arrayBuffer', - propType: 'object', - }, - { - name: 'slice', - propType: 'func', - }, - { - name: 'stream', - propType: 'object', - }, - { - name: 'text', - propType: 'object', - }, - ], - }, { type: 'shape', value: [ @@ -29522,12 +41142,67 @@ Generated by [AVA](https://avajs.dev). }, ], }, + { + type: 'shape', + value: [ + { + name: 'size', + propType: 'number', + }, + { + name: 'type', + propType: 'string', + }, + { + name: 'arrayBuffer', + propType: { + raw: '() => Promise', + type: 'func', + }, + }, + { + name: 'slice', + propType: { + raw: '(start?: number, end?: number, contentType?: string) => Blob', + type: 'func', + value: [ + { + name: 'start', + propType: 'number', + }, + { + name: 'end', + propType: 'number', + }, + { + name: 'contentType', + propType: 'string', + }, + ], + }, + }, + { + name: 'stream', + propType: { + raw: '() => ReadableStream', + type: 'func', + }, + }, + { + name: 'text', + propType: { + raw: '() => Promise', + type: 'func', + }, + }, + ], + }, ], }, }, { name: 'response', - propType: 'any', + propType: 'object', }, { name: 'error', @@ -29543,7 +41218,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'xhr', - propType: 'any', + propType: 'object', }, { name: 'preview', @@ -29595,11 +41270,11 @@ Generated by [AVA](https://avajs.dev). { name: 'status', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ - 'done', 'success', 'error', + 'done', 'uploading', 'removed', ], @@ -29618,35 +41293,6 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - { - type: 'shape', - value: [ - { - name: 'size', - propType: 'number', - }, - { - name: 'type', - propType: 'string', - }, - { - name: 'arrayBuffer', - propType: 'object', - }, - { - name: 'slice', - propType: 'func', - }, - { - name: 'stream', - propType: 'object', - }, - { - name: 'text', - propType: 'object', - }, - ], - }, { type: 'shape', value: [ @@ -29660,12 +41306,67 @@ Generated by [AVA](https://avajs.dev). }, ], }, + { + type: 'shape', + value: [ + { + name: 'size', + propType: 'number', + }, + { + name: 'type', + propType: 'string', + }, + { + name: 'arrayBuffer', + propType: { + raw: '() => Promise', + type: 'func', + }, + }, + { + name: 'slice', + propType: { + raw: '(start?: number, end?: number, contentType?: string) => Blob', + type: 'func', + value: [ + { + name: 'start', + propType: 'number', + }, + { + name: 'end', + propType: 'number', + }, + { + name: 'contentType', + propType: 'string', + }, + ], + }, + }, + { + name: 'stream', + propType: { + raw: '() => ReadableStream', + type: 'func', + }, + }, + { + name: 'text', + propType: { + raw: '() => Promise', + type: 'func', + }, + }, + ], + }, ], }, }, { name: 'response', - propType: 'any', + propType: 'object', }, { name: 'error', @@ -29681,7 +41382,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'xhr', - propType: 'any', + propType: 'object', }, { name: 'preview', @@ -29697,8 +41398,58 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'string', - 'func', - 'func', + { + raw: '(file: RcFile) => string', + type: 'func', + value: [ + { + name: 'file', + propType: { + type: 'shape', + value: [ + { + name: 'uid', + propType: 'string', + }, + { + name: 'lastModifiedDate', + propType: 'object', + }, + { + name: 'webkitRelativePath', + propType: 'string', + }, + ], + }, + }, + ], + }, + { + raw: '(file: RcFile) => PromiseLike', + type: 'func', + value: [ + { + name: 'file', + propType: { + type: 'shape', + value: [ + { + name: 'uid', + propType: 'string', + }, + { + name: 'lastModifiedDate', + propType: 'object', + }, + { + name: 'webkitRelativePath', + propType: 'string', + }, + ], + }, + }, + ], + }, ], }, }, @@ -29707,7 +41458,6 @@ Generated by [AVA](https://avajs.dev). propType: 'bool', }, { - defaultValue: {}, name: 'data', propType: { type: 'oneOfType', @@ -29720,7 +41470,7 @@ Generated by [AVA](https://avajs.dev). { name: 'method', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'POST', 'PUT', @@ -29731,16 +41481,17 @@ Generated by [AVA](https://avajs.dev). }, { name: 'headers', - propType: 'objectOf', + propType: { + type: 'objectOf', + value: 'string', + }, }, { - defaultValue: true, name: 'showUploadList', propType: { type: 'oneOfType', value: [ - false, - true, + 'bool', { type: 'shape', value: [ @@ -29762,7 +41513,6 @@ Generated by [AVA](https://avajs.dev). }, }, { - defaultValue: false, name: 'multiple', propType: 'bool', }, @@ -29771,18 +41521,262 @@ Generated by [AVA](https://avajs.dev). propType: 'string', }, { - defaultValue: null, name: 'beforeUpload', - propType: 'func', + propType: { + raw: '(file: RcFile, FileList: RcFile[]) => boolean | PromiseLike', + type: 'func', + value: [ + { + name: 'file', + propType: { + type: 'shape', + value: [ + { + name: 'uid', + propType: 'string', + }, + { + name: 'lastModifiedDate', + propType: 'object', + }, + { + name: 'webkitRelativePath', + propType: 'string', + }, + ], + }, + }, + { + name: 'FileList', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'uid', + propType: 'string', + }, + { + name: 'lastModifiedDate', + propType: 'object', + }, + { + name: 'webkitRelativePath', + propType: 'string', + }, + ], + }, + }, + }, + ], + }, }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(info: UploadChangeParam>) => void', + type: 'func', + value: [ + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'T', + propType: 'any', + }, + { + name: 'file', + propType: 'object', + }, + { + name: 'fileList', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'T', + propType: 'any', + }, + { + name: 'uid', + propType: 'string', + }, + { + name: 'size', + propType: 'number', + }, + { + name: 'name', + propType: 'string', + }, + { + name: 'fileName', + propType: 'string', + }, + { + name: 'lastModified', + propType: 'number', + }, + { + name: 'lastModifiedDate', + propType: 'object', + }, + { + name: 'url', + propType: 'string', + }, + { + name: 'status', + propType: { + type: 'oneOf', + value: [ + 'success', + 'error', + 'done', + 'uploading', + 'removed', + ], + }, + }, + { + name: 'percent', + propType: 'number', + }, + { + name: 'thumbUrl', + propType: 'string', + }, + { + name: 'originFileObj', + propType: { + type: 'oneOfType', + value: [ + { + type: 'shape', + value: [ + { + name: 'lastModified', + propType: 'number', + }, + { + name: 'name', + propType: 'string', + }, + ], + }, + { + type: 'shape', + value: [ + { + name: 'size', + propType: 'number', + }, + { + name: 'type', + propType: 'string', + }, + { + name: 'arrayBuffer', + propType: { + raw: '() => Promise', + type: 'func', + }, + }, + { + name: 'slice', + propType: { + raw: '(start?: number, end?: number, contentType?: string) => Blob', + type: 'func', + value: [ + { + name: 'start', + propType: 'number', + }, + { + name: 'end', + propType: 'number', + }, + { + name: 'contentType', + propType: 'string', + }, + ], + }, + }, + { + name: 'stream', + propType: { + raw: '() => ReadableStream', + type: 'func', + }, + }, + { + name: 'text', + propType: { + raw: '() => Promise', + type: 'func', + }, + }, + ], + }, + ], + }, + }, + { + name: 'response', + propType: 'object', + }, + { + name: 'error', + propType: 'any', + }, + { + name: 'linkProps', + propType: 'any', + }, + { + name: 'type', + propType: 'string', + }, + { + name: 'xhr', + propType: 'object', + }, + { + name: 'preview', + propType: 'string', + }, + ], + }, + }, + }, + { + name: 'event', + propType: { + type: 'shape', + value: [ + { + name: 'percent', + propType: 'number', + }, + ], + }, + }, + ], + }, + }, + ], + }, }, { name: 'listType', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'text', 'picture', @@ -29807,7 +41801,6 @@ Generated by [AVA](https://avajs.dev). propType: 'func', }, { - defaultValue: true, name: 'supportServerRender', propType: 'bool', }, @@ -29816,7 +41809,6 @@ Generated by [AVA](https://avajs.dev). propType: 'object', }, { - defaultValue: false, name: 'disabled', propType: 'bool', }, @@ -29826,7 +41818,151 @@ Generated by [AVA](https://avajs.dev). }, { name: 'customRequest', - propType: 'func', + propType: { + raw: '(options: RcCustomRequestOptions) => void', + type: 'func', + value: [ + { + name: 'options', + propType: { + type: 'shape', + value: [ + { + name: 'onProgress', + propType: { + raw: '(event: { percent: number; }, file: File) => void', + type: 'func', + value: [ + { + name: 'event', + propType: { + type: 'shape', + value: [ + { + name: 'percent', + propType: 'number', + }, + ], + }, + }, + { + name: 'file', + propType: { + type: 'shape', + value: [ + { + name: 'lastModified', + propType: 'number', + }, + { + name: 'name', + propType: 'string', + }, + ], + }, + }, + ], + }, + }, + { + name: 'onError', + propType: { + raw: '(error: Error) => void', + type: 'func', + value: [ + { + name: 'error', + propType: { + type: 'shape', + value: [ + { + name: 'name', + propType: 'string', + }, + { + name: 'message', + propType: 'string', + }, + { + name: 'stack', + propType: 'string', + }, + ], + }, + }, + ], + }, + }, + { + name: 'onSuccess', + propType: { + raw: '(response: object, file: File) => void', + type: 'func', + value: [ + { + name: 'response', + propType: 'object', + }, + { + name: 'file', + propType: { + type: 'shape', + value: [ + { + name: 'lastModified', + propType: 'number', + }, + { + name: 'name', + propType: 'string', + }, + ], + }, + }, + ], + }, + }, + { + name: 'data', + propType: 'object', + }, + { + name: 'filename', + propType: 'string', + }, + { + name: 'file', + propType: { + type: 'shape', + value: [ + { + name: 'lastModified', + propType: 'number', + }, + { + name: 'name', + propType: 'string', + }, + ], + }, + }, + { + name: 'withCredentials', + propType: 'bool', + }, + { + name: 'action', + propType: 'string', + }, + { + name: 'headers', + propType: 'object', + }, + ], + }, + }, + ], + }, }, { name: 'withCredentials', @@ -29870,11 +42006,117 @@ Generated by [AVA](https://avajs.dev). }, { name: 'previewFile', - propType: 'any', + propType: { + raw: 'PreviewFileHandler', + type: 'func', + value: [ + { + name: 'file', + propType: { + type: 'oneOfType', + value: [ + { + type: 'shape', + value: [ + { + name: 'lastModified', + propType: 'number', + }, + { + name: 'name', + propType: 'string', + }, + ], + }, + { + type: 'shape', + value: [ + { + name: 'size', + propType: 'number', + }, + { + name: 'type', + propType: 'string', + }, + { + name: 'arrayBuffer', + propType: { + raw: '() => Promise', + type: 'func', + }, + }, + { + name: 'slice', + propType: { + raw: '(start?: number, end?: number, contentType?: string) => Blob', + type: 'func', + value: [ + { + name: 'start', + propType: 'number', + }, + { + name: 'end', + propType: 'number', + }, + { + name: 'contentType', + propType: 'string', + }, + ], + }, + }, + { + name: 'stream', + propType: { + raw: '() => ReadableStream', + type: 'func', + }, + }, + { + name: 'text', + propType: { + raw: '() => Promise', + type: 'func', + }, + }, + ], + }, + ], + }, + }, + ], + }, }, { name: 'transformFile', - propType: 'any', + propType: { + raw: 'TransformFileHandler', + type: 'func', + value: [ + { + name: 'file', + propType: { + type: 'shape', + value: [ + { + name: 'uid', + propType: 'string', + }, + { + name: 'lastModifiedDate', + propType: 'object', + }, + { + name: 'webkitRelativePath', + propType: 'string', + }, + ], + }, + }, + ], + }, }, { name: 'iconRender', @@ -30033,38 +42275,8 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - 'any', + 'object', + 'func', ], }, }, @@ -30078,7 +42290,7 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'arrayOf', value: { - type: 'oneOfType', + type: 'oneOf', value: [ 'click', 'contextMenu', @@ -30092,44 +42304,23 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - 'any', + 'object', + 'func', ], }, }, { name: 'onVisibleChange', - propType: 'object', + propType: { + raw: '(visible: boolean) => void', + type: 'func', + value: [ + { + name: 'visible', + propType: 'bool', + }, + ], + }, }, { name: 'visible', @@ -30141,11 +42332,64 @@ Generated by [AVA](https://avajs.dev). }, { name: 'align', - propType: 'any', + propType: { + type: 'shape', + value: [ + { + name: 'points', + propType: 'object', + }, + { + name: 'offset', + propType: 'object', + }, + { + name: 'targetOffset', + propType: 'object', + }, + { + name: 'overflow', + propType: { + type: 'shape', + value: [ + { + name: 'adjustX', + propType: 'bool', + }, + { + name: 'adjustY', + propType: 'bool', + }, + ], + }, + }, + { + name: 'useCssRight', + propType: 'bool', + }, + { + name: 'useCssBottom', + propType: 'bool', + }, + { + name: 'useCssTransform', + propType: 'bool', + }, + ], + }, }, { name: 'getPopupContainer', - propType: 'object', + propType: { + raw: '(triggerNode: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'triggerNode', + propType: 'object', + }, + ], + }, }, { name: 'prefixCls', @@ -30162,7 +42406,7 @@ Generated by [AVA](https://avajs.dev). { name: 'placement', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'topLeft', 'topCenter', @@ -30202,7 +42446,56 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + ], + screenshot: '', + title: 'antd', + }, + { + componentName: 'Button', + devMode: 'proCode', + docUrl: '', + npm: { + destructuring: true, + exportName: 'Button', + main: 'components/index.tsx', + package: 'antd', + subName: 'Group', + version: '4.1.4', + }, + props: [ + { + name: 'size', + propType: { + type: 'oneOf', + value: [ + 'small', + 'middle', + 'large', + ], + }, + }, + { + name: 'style', + propType: 'object', + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'prefixCls', + propType: 'string', }, ], screenshot: '', @@ -30301,8 +42594,7 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', ], }, }, @@ -30316,15 +42608,33 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', ], }, }, }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(checkedValue: CheckboxValueType[]) => void', + type: 'func', + value: [ + { + name: 'checkedValue', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + 'bool', + ], + }, + }, + }, + ], + }, }, { name: 'prefixCls', @@ -30357,8 +42667,7 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', ], }, }, @@ -30372,7 +42681,44 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onChange', - propType: 'object', + propType: { + raw: '(e: CheckboxChangeEvent) => void', + type: 'func', + value: [ + { + name: 'e', + propType: { + type: 'shape', + value: [ + { + name: 'target', + propType: { + type: 'shape', + value: [ + { + name: 'checked', + propType: 'bool', + }, + ], + }, + }, + { + name: 'stopPropagation', + propType: 'func', + }, + { + name: 'preventDefault', + propType: 'func', + }, + { + name: 'nativeEvent', + propType: 'object', + }, + ], + }, + }, + ], + }, }, ], }, @@ -30421,18 +42767,31 @@ Generated by [AVA](https://avajs.dev). name: 'className', propType: 'string', }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, { description: '@deprecated Will be removed in next big version. Please use `mode` instead', name: 'mode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'date', 'time', - 'year', - 'month', 'week', + 'month', 'quarter', + 'year', 'decade', ], }, @@ -30443,683 +42802,11 @@ Generated by [AVA](https://avajs.dev). }, { name: 'value', - propType: { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, + propType: 'object', }, { name: 'defaultValue', - propType: { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, + propType: 'object', }, { name: 'allowClear', @@ -31150,47 +42837,50 @@ Generated by [AVA](https://avajs.dev). name: 'points', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'offset', propType: { type: 'arrayOf', - value: { - 0: 'n', - 1: 'u', - 2: 'm', - 3: 'b', - 4: 'e', - 5: 'r', - }, + value: 'number', }, }, { name: 'targetOffset', propType: { type: 'arrayOf', - value: { - 0: 'n', - 1: 'u', - 2: 'm', - 3: 'b', - 4: 'e', - 5: 'r', - }, + value: 'number', }, }, { name: 'overflow', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'adjustX', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + { + name: 'adjustY', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + ], + }, }, { name: 'useCssRight', @@ -31217,12 +42907,21 @@ Generated by [AVA](https://avajs.dev). }, { name: 'getPopupContainer', - propType: 'func', + propType: { + raw: '(node: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'node', + propType: 'object', + }, + ], + }, }, { name: 'direction', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'rtl', 'ltr', @@ -31249,473 +42948,71 @@ Generated by [AVA](https://avajs.dev). name: 'onSelect', propType: 'func', }, - { - name: 'onClick', - propType: 'func', - }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', - }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', propType: { - type: 'oneOfType', + raw: '(event: MouseEvent) => void', + type: 'func', value: [ - false, - true, - 'false', - 'true', + { + name: 'event', + propType: 'object', + }, ], }, }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'suffixIcon', propType: 'node', @@ -31723,7 +43020,7 @@ Generated by [AVA](https://avajs.dev). { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'middle', @@ -31741,11 +43038,29 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onContextMenu', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUp', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'name', @@ -31753,348 +43068,12 @@ Generated by [AVA](https://avajs.dev). }, { name: 'locale', - propType: 'any', + propType: 'object', }, { description: '[Legacy] Set default display picker view date', name: 'defaultPickerValue', - propType: { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, + propType: 'object', }, { name: 'disabledDate', @@ -32102,19 +43081,39 @@ Generated by [AVA](https://avajs.dev). }, { name: 'dateRender', - propType: 'any', - }, - { - name: 'monthCellRender', - propType: 'any', - }, - { - name: 'renderExtraFooter', propType: 'func', }, + { + name: 'monthCellRender', + propType: 'func', + }, + { + name: 'renderExtraFooter', + propType: { + raw: '(mode: PanelMode) => ReactNode', + type: 'func', + value: [ + { + name: 'mode', + propType: { + type: 'oneOf', + value: [ + 'date', + 'time', + 'week', + 'month', + 'quarter', + 'year', + 'decade', + ], + }, + }, + ], + }, + }, { name: 'onPanelChange', - propType: 'any', + propType: 'func', }, { name: 'onOk', @@ -32137,38 +43136,28 @@ Generated by [AVA](https://avajs.dev). 'string', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, }, { name: 'onOpenChange', - propType: 'func', + propType: { + raw: '(open: boolean) => void', + type: 'func', + value: [ + { + name: 'open', + propType: 'bool', + }, + ], + }, }, { description: '@private Internal usage, do not use in production mode!!!', name: 'pickerRef', - propType: { - type: 'shape', - value: [ - { - name: 'T', - propType: 'any', - }, - { - name: 'current', - propType: 'any', - }, - ], - }, + propType: 'object', }, { name: 'autoComplete', @@ -32183,8 +43172,7 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, + 'bool', { type: 'shape', value: [ @@ -32230,7 +43218,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'defaultValue', - propType: 'any', + propType: 'object', }, ], }, @@ -32239,7 +43227,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'disabledTime', - propType: 'any', + propType: 'func', }, ], screenshot: '', @@ -32274,18 +43262,31 @@ Generated by [AVA](https://avajs.dev). name: 'className', propType: 'string', }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, { description: '@deprecated Will be removed in next big version. Please use `mode` instead', name: 'mode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'date', 'time', - 'year', - 'month', 'week', + 'month', 'quarter', + 'year', 'decade', ], }, @@ -32296,683 +43297,11 @@ Generated by [AVA](https://avajs.dev). }, { name: 'value', - propType: { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, + propType: 'object', }, { name: 'defaultValue', - propType: { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, + propType: 'object', }, { name: 'allowClear', @@ -33003,47 +43332,50 @@ Generated by [AVA](https://avajs.dev). name: 'points', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'offset', propType: { type: 'arrayOf', - value: { - 0: 'n', - 1: 'u', - 2: 'm', - 3: 'b', - 4: 'e', - 5: 'r', - }, + value: 'number', }, }, { name: 'targetOffset', propType: { type: 'arrayOf', - value: { - 0: 'n', - 1: 'u', - 2: 'm', - 3: 'b', - 4: 'e', - 5: 'r', - }, + value: 'number', }, }, { name: 'overflow', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'adjustX', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + { + name: 'adjustY', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + ], + }, }, { name: 'useCssRight', @@ -33070,12 +43402,21 @@ Generated by [AVA](https://avajs.dev). }, { name: 'getPopupContainer', - propType: 'func', + propType: { + raw: '(node: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'node', + propType: 'object', + }, + ], + }, }, { name: 'direction', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'rtl', 'ltr', @@ -33102,473 +43443,71 @@ Generated by [AVA](https://avajs.dev). name: 'onSelect', propType: 'func', }, - { - name: 'onClick', - propType: 'func', - }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', - }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', propType: { - type: 'oneOfType', + raw: '(event: MouseEvent) => void', + type: 'func', value: [ - false, - true, - 'false', - 'true', + { + name: 'event', + propType: 'object', + }, ], }, }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'suffixIcon', propType: 'node', @@ -33576,7 +43515,7 @@ Generated by [AVA](https://avajs.dev). { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'middle', @@ -33594,11 +43533,29 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onContextMenu', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUp', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'name', @@ -33606,348 +43563,12 @@ Generated by [AVA](https://avajs.dev). }, { name: 'locale', - propType: 'any', + propType: 'object', }, { description: '[Legacy] Set default display picker view date', name: 'defaultPickerValue', - propType: { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, + propType: 'object', }, { name: 'disabledDate', @@ -33955,19 +43576,39 @@ Generated by [AVA](https://avajs.dev). }, { name: 'dateRender', - propType: 'any', - }, - { - name: 'monthCellRender', - propType: 'any', - }, - { - name: 'renderExtraFooter', propType: 'func', }, + { + name: 'monthCellRender', + propType: 'func', + }, + { + name: 'renderExtraFooter', + propType: { + raw: '(mode: PanelMode) => ReactNode', + type: 'func', + value: [ + { + name: 'mode', + propType: { + type: 'oneOf', + value: [ + 'date', + 'time', + 'week', + 'month', + 'quarter', + 'year', + 'decade', + ], + }, + }, + ], + }, + }, { name: 'onPanelChange', - propType: 'any', + propType: 'func', }, { name: 'onOk', @@ -33990,38 +43631,28 @@ Generated by [AVA](https://avajs.dev). 'string', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, }, { name: 'onOpenChange', - propType: 'func', + propType: { + raw: '(open: boolean) => void', + type: 'func', + value: [ + { + name: 'open', + propType: 'bool', + }, + ], + }, }, { description: '@private Internal usage, do not use in production mode!!!', name: 'pickerRef', - propType: { - type: 'shape', - value: [ - { - name: 'T', - propType: 'any', - }, - { - name: 'current', - propType: 'any', - }, - ], - }, + propType: 'object', }, { name: 'autoComplete', @@ -34036,8 +43667,7 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, + 'bool', { type: 'shape', value: [ @@ -34083,7 +43713,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'defaultValue', - propType: 'any', + propType: 'object', }, ], }, @@ -34092,7 +43722,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'disabledTime', - propType: 'any', + propType: 'func', }, ], screenshot: '', @@ -34127,18 +43757,31 @@ Generated by [AVA](https://avajs.dev). name: 'className', propType: 'string', }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, { description: '@deprecated Will be removed in next big version. Please use `mode` instead', name: 'mode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'date', 'time', - 'year', - 'month', 'week', + 'month', 'quarter', + 'year', 'decade', ], }, @@ -34149,683 +43792,11 @@ Generated by [AVA](https://avajs.dev). }, { name: 'value', - propType: { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, + propType: 'object', }, { name: 'defaultValue', - propType: { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, + propType: 'object', }, { name: 'allowClear', @@ -34856,47 +43827,50 @@ Generated by [AVA](https://avajs.dev). name: 'points', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'offset', propType: { type: 'arrayOf', - value: { - 0: 'n', - 1: 'u', - 2: 'm', - 3: 'b', - 4: 'e', - 5: 'r', - }, + value: 'number', }, }, { name: 'targetOffset', propType: { type: 'arrayOf', - value: { - 0: 'n', - 1: 'u', - 2: 'm', - 3: 'b', - 4: 'e', - 5: 'r', - }, + value: 'number', }, }, { name: 'overflow', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'adjustX', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + { + name: 'adjustY', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + ], + }, }, { name: 'useCssRight', @@ -34923,12 +43897,21 @@ Generated by [AVA](https://avajs.dev). }, { name: 'getPopupContainer', - propType: 'func', + propType: { + raw: '(node: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'node', + propType: 'object', + }, + ], + }, }, { name: 'direction', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'rtl', 'ltr', @@ -34955,473 +43938,71 @@ Generated by [AVA](https://avajs.dev). name: 'onSelect', propType: 'func', }, - { - name: 'onClick', - propType: 'func', - }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', - }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', propType: { - type: 'oneOfType', + raw: '(event: MouseEvent) => void', + type: 'func', value: [ - false, - true, - 'false', - 'true', + { + name: 'event', + propType: 'object', + }, ], }, }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'suffixIcon', propType: 'node', @@ -35429,7 +44010,7 @@ Generated by [AVA](https://avajs.dev). { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'middle', @@ -35447,11 +44028,29 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onContextMenu', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUp', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'name', @@ -35459,348 +44058,12 @@ Generated by [AVA](https://avajs.dev). }, { name: 'locale', - propType: 'any', + propType: 'object', }, { description: '[Legacy] Set default display picker view date', name: 'defaultPickerValue', - propType: { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, + propType: 'object', }, { name: 'disabledDate', @@ -35808,19 +44071,39 @@ Generated by [AVA](https://avajs.dev). }, { name: 'dateRender', - propType: 'any', - }, - { - name: 'monthCellRender', - propType: 'any', - }, - { - name: 'renderExtraFooter', propType: 'func', }, + { + name: 'monthCellRender', + propType: 'func', + }, + { + name: 'renderExtraFooter', + propType: { + raw: '(mode: PanelMode) => ReactNode', + type: 'func', + value: [ + { + name: 'mode', + propType: { + type: 'oneOf', + value: [ + 'date', + 'time', + 'week', + 'month', + 'quarter', + 'year', + 'decade', + ], + }, + }, + ], + }, + }, { name: 'onPanelChange', - propType: 'any', + propType: 'func', }, { name: 'onOk', @@ -35843,38 +44126,28 @@ Generated by [AVA](https://avajs.dev). 'string', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, }, { name: 'onOpenChange', - propType: 'func', + propType: { + raw: '(open: boolean) => void', + type: 'func', + value: [ + { + name: 'open', + propType: 'bool', + }, + ], + }, }, { description: '@private Internal usage, do not use in production mode!!!', name: 'pickerRef', - propType: { - type: 'shape', - value: [ - { - name: 'T', - propType: 'any', - }, - { - name: 'current', - propType: 'any', - }, - ], - }, + propType: 'object', }, { name: 'autoComplete', @@ -35889,8 +44162,7 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, + 'bool', { type: 'shape', value: [ @@ -35936,7 +44208,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'defaultValue', - propType: 'any', + propType: 'object', }, ], }, @@ -35945,7 +44217,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'disabledTime', - propType: 'any', + propType: 'func', }, ], screenshot: '', @@ -35981,1404 +44253,33 @@ Generated by [AVA](https://avajs.dev). propType: 'string', }, { - name: 'mode', + name: 'onClick', propType: { - type: 'oneOfType', + raw: '(event: MouseEvent) => void', + type: 'func', value: [ { - type: 'oneOfType', - value: [ - 'date', - 'time', - 'year', - 'month', - 'week', - 'quarter', - 'decade', - ], - }, - { - type: 'oneOfType', - value: [ - 'date', - 'time', - 'year', - 'month', - 'week', - 'quarter', - 'decade', - ], + name: 'event', + propType: 'object', }, ], }, }, + { + name: 'mode', + propType: 'object', + }, { name: 'id', propType: 'string', }, { name: 'value', - propType: { - type: 'oneOfType', - value: [ - { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, - { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, - ], - }, + propType: 'object', }, { name: 'defaultValue', - propType: { - type: 'oneOfType', - value: [ - { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, - { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, - ], - }, + propType: 'object', }, { name: 'allowClear', @@ -37409,47 +44310,50 @@ Generated by [AVA](https://avajs.dev). name: 'points', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'offset', propType: { type: 'arrayOf', - value: { - 0: 'n', - 1: 'u', - 2: 'm', - 3: 'b', - 4: 'e', - 5: 'r', - }, + value: 'number', }, }, { name: 'targetOffset', propType: { type: 'arrayOf', - value: { - 0: 'n', - 1: 'u', - 2: 'm', - 3: 'b', - 4: 'e', - 5: 'r', - }, + value: 'number', }, }, { name: 'overflow', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'adjustX', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + { + name: 'adjustY', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + ], + }, }, { name: 'useCssRight', @@ -37476,12 +44380,21 @@ Generated by [AVA](https://avajs.dev). }, { name: 'getPopupContainer', - propType: 'func', + propType: { + raw: '(node: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'node', + propType: 'object', + }, + ], + }, }, { name: 'direction', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'rtl', 'ltr', @@ -37493,15 +44406,8 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - { - type: 'oneOfType', - value: [ - 'bool', - 'bool', - ], - }, + 'bool', + 'object', ], }, }, @@ -37511,485 +44417,77 @@ Generated by [AVA](https://avajs.dev). }, { name: 'placeholder', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'string', - ], - }, + propType: 'object', }, { name: 'tabIndex', propType: 'number', }, - { - name: 'onClick', - propType: 'func', - }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', - }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', propType: { - type: 'oneOfType', + raw: '(event: MouseEvent) => void', + type: 'func', value: [ - false, - true, - 'false', - 'true', + { + name: 'event', + propType: 'object', + }, ], }, }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'suffixIcon', propType: 'node', @@ -38004,11 +44502,29 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onContextMenu', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUp', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'name', @@ -38017,698 +44533,20 @@ Generated by [AVA](https://avajs.dev). { name: 'picker', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'date', 'time', - 'year', - 'month', 'week', + 'month', 'quarter', + 'year', ], }, }, { name: 'defaultPickerValue', - propType: { - type: 'oneOfType', - value: [ - { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, - { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, - ], - }, + propType: 'object', }, { name: 'disabledDate', @@ -38716,15 +44554,35 @@ Generated by [AVA](https://avajs.dev). }, { name: 'dateRender', - propType: 'any', + propType: 'func', }, { name: 'monthCellRender', - propType: 'any', + propType: 'func', }, { name: 'renderExtraFooter', - propType: 'func', + propType: { + raw: '(mode: PanelMode) => ReactNode', + type: 'func', + value: [ + { + name: 'mode', + propType: { + type: 'oneOf', + value: [ + 'date', + 'time', + 'week', + 'month', + 'quarter', + 'year', + 'decade', + ], + }, + }, + ], + }, }, { name: 'onPanelChange', @@ -38751,38 +44609,28 @@ Generated by [AVA](https://avajs.dev). 'string', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, }, { name: 'onOpenChange', - propType: 'func', + propType: { + raw: '(open: boolean) => void', + type: 'func', + value: [ + { + name: 'open', + propType: 'bool', + }, + ], + }, }, { description: '@private Internal usage, do not use in production mode!!!', name: 'pickerRef', - propType: { - type: 'shape', - value: [ - { - name: 'T', - propType: 'any', - }, - { - name: 'current', - propType: 'any', - }, - ], - }, + propType: 'object', }, { name: 'autoComplete', @@ -38794,17 +44642,14 @@ Generated by [AVA](https://avajs.dev). }, { name: 'ranges', - propType: 'any', + propType: { + type: 'objectOf', + value: 'oneOfType', + }, }, { name: 'allowEmpty', - propType: { - type: 'oneOfType', - value: [ - 'bool', - 'bool', - ], - }, + propType: 'object', }, { name: 'onCalendarChange', @@ -38814,7 +44659,7 @@ Generated by [AVA](https://avajs.dev). description: '@private Internal control of active picker. Do not use since it\'s private usage', name: 'activePickerIndex', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 0, 1, @@ -38823,12 +44668,12 @@ Generated by [AVA](https://avajs.dev). }, { name: 'locale', - propType: 'any', + propType: 'object', }, { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'middle', @@ -38845,9 +44690,8 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'any', + 'bool', + 'object', ], }, }, @@ -38893,352 +44737,38 @@ Generated by [AVA](https://avajs.dev). }, { name: 'disabledMinutes', - propType: 'func', + propType: { + raw: '(hour: number) => number[]', + type: 'func', + value: [ + { + name: 'hour', + propType: 'number', + }, + ], + }, }, { name: 'disabledSeconds', - propType: 'func', + propType: { + raw: '(hour: number, minute: number) => number[]', + type: 'func', + value: [ + { + name: 'hour', + propType: 'number', + }, + { + name: 'minute', + propType: 'number', + }, + ], + }, }, { description: '@deprecated Please use `defaultValue` directly instead', name: 'defaultOpenValue', - propType: { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, + propType: 'object', }, ], screenshot: '', @@ -39273,18 +44803,31 @@ Generated by [AVA](https://avajs.dev). name: 'className', propType: 'string', }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, { description: '@deprecated Will be removed in next big version. Please use `mode` instead', name: 'mode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'date', 'time', - 'year', - 'month', 'week', + 'month', 'quarter', + 'year', 'decade', ], }, @@ -39295,683 +44838,11 @@ Generated by [AVA](https://avajs.dev). }, { name: 'value', - propType: { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, + propType: 'object', }, { name: 'defaultValue', - propType: { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, + propType: 'object', }, { name: 'allowClear', @@ -40002,47 +44873,50 @@ Generated by [AVA](https://avajs.dev). name: 'points', propType: { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'offset', propType: { type: 'arrayOf', - value: { - 0: 'n', - 1: 'u', - 2: 'm', - 3: 'b', - 4: 'e', - 5: 'r', - }, + value: 'number', }, }, { name: 'targetOffset', propType: { type: 'arrayOf', - value: { - 0: 'n', - 1: 'u', - 2: 'm', - 3: 'b', - 4: 'e', - 5: 'r', - }, + value: 'number', }, }, { name: 'overflow', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'adjustX', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + { + name: 'adjustY', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + ], + }, }, { name: 'useCssRight', @@ -40069,12 +44943,21 @@ Generated by [AVA](https://avajs.dev). }, { name: 'getPopupContainer', - propType: 'func', + propType: { + raw: '(node: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'node', + propType: 'object', + }, + ], + }, }, { name: 'direction', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'rtl', 'ltr', @@ -40101,473 +44984,71 @@ Generated by [AVA](https://avajs.dev). name: 'onSelect', propType: 'func', }, - { - name: 'onClick', - propType: 'func', - }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', - }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', propType: { - type: 'oneOfType', + raw: '(event: MouseEvent) => void', + type: 'func', value: [ - false, - true, - 'false', - 'true', + { + name: 'event', + propType: 'object', + }, ], }, }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'suffixIcon', propType: 'node', @@ -40575,7 +45056,7 @@ Generated by [AVA](https://avajs.dev). { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'middle', @@ -40593,11 +45074,29 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onContextMenu', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUp', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'name', @@ -40605,348 +45104,12 @@ Generated by [AVA](https://avajs.dev). }, { name: 'locale', - propType: 'any', + propType: 'object', }, { description: '[Legacy] Set default display picker view date', name: 'defaultPickerValue', - propType: { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, + propType: 'object', }, { name: 'disabledDate', @@ -40954,19 +45117,39 @@ Generated by [AVA](https://avajs.dev). }, { name: 'dateRender', - propType: 'any', - }, - { - name: 'monthCellRender', - propType: 'any', - }, - { - name: 'renderExtraFooter', propType: 'func', }, + { + name: 'monthCellRender', + propType: 'func', + }, + { + name: 'renderExtraFooter', + propType: { + raw: '(mode: PanelMode) => ReactNode', + type: 'func', + value: [ + { + name: 'mode', + propType: { + type: 'oneOf', + value: [ + 'date', + 'time', + 'week', + 'month', + 'quarter', + 'year', + 'decade', + ], + }, + }, + ], + }, + }, { name: 'onPanelChange', - propType: 'any', + propType: 'func', }, { name: 'onOk', @@ -40989,38 +45172,28 @@ Generated by [AVA](https://avajs.dev). 'string', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, }, { name: 'onOpenChange', - propType: 'func', + propType: { + raw: '(open: boolean) => void', + type: 'func', + value: [ + { + name: 'open', + propType: 'bool', + }, + ], + }, }, { description: '@private Internal usage, do not use in production mode!!!', name: 'pickerRef', - propType: { - type: 'shape', - value: [ - { - name: 'T', - propType: 'any', - }, - { - name: 'current', - propType: 'any', - }, - ], - }, + propType: 'object', }, { name: 'autoComplete', @@ -41064,352 +45237,38 @@ Generated by [AVA](https://avajs.dev). }, { name: 'disabledMinutes', - propType: 'func', + propType: { + raw: '(hour: number) => number[]', + type: 'func', + value: [ + { + name: 'hour', + propType: 'number', + }, + ], + }, }, { name: 'disabledSeconds', - propType: 'func', + propType: { + raw: '(hour: number, minute: number) => number[]', + type: 'func', + value: [ + { + name: 'hour', + propType: 'number', + }, + { + name: 'minute', + propType: 'number', + }, + ], + }, }, { description: '@deprecated Please use `defaultValue` directly instead', name: 'defaultOpenValue', - propType: { - type: 'shape', - value: [ - { - name: 'format', - propType: 'func', - }, - { - name: 'startOf', - propType: 'func', - }, - { - name: 'endOf', - propType: 'func', - }, - { - name: 'add', - propType: 'func', - }, - { - name: 'subtract', - propType: 'func', - }, - { - name: 'calendar', - propType: 'object', - }, - { - name: 'clone', - propType: 'object', - }, - { - name: 'valueOf', - propType: 'object', - }, - { - name: 'local', - propType: 'func', - }, - { - name: 'isLocal', - propType: 'object', - }, - { - name: 'utc', - propType: 'func', - }, - { - name: 'isUTC', - propType: 'object', - }, - { - name: 'isUtc', - propType: 'object', - }, - { - name: 'parseZone', - propType: 'object', - }, - { - name: 'isValid', - propType: 'object', - }, - { - name: 'invalidAt', - propType: 'object', - }, - { - name: 'hasAlignedHourOffset', - propType: 'func', - }, - { - name: 'creationData', - propType: 'object', - }, - { - name: 'parsingFlags', - propType: 'object', - }, - { - name: 'year', - propType: 'func', - }, - { - name: 'years', - propType: 'func', - }, - { - name: 'quarter', - propType: 'object', - }, - { - name: 'quarters', - propType: 'object', - }, - { - name: 'month', - propType: 'func', - }, - { - name: 'months', - propType: 'func', - }, - { - name: 'day', - propType: 'func', - }, - { - name: 'days', - propType: 'func', - }, - { - name: 'date', - propType: 'func', - }, - { - name: 'dates', - propType: 'func', - }, - { - name: 'hour', - propType: 'func', - }, - { - name: 'hours', - propType: 'func', - }, - { - name: 'minute', - propType: 'func', - }, - { - name: 'minutes', - propType: 'func', - }, - { - name: 'second', - propType: 'func', - }, - { - name: 'seconds', - propType: 'func', - }, - { - name: 'millisecond', - propType: 'func', - }, - { - name: 'milliseconds', - propType: 'func', - }, - { - name: 'weekday', - propType: 'object', - }, - { - name: 'isoWeekday', - propType: 'object', - }, - { - name: 'weekYear', - propType: 'object', - }, - { - name: 'isoWeekYear', - propType: 'object', - }, - { - name: 'week', - propType: 'object', - }, - { - name: 'weeks', - propType: 'object', - }, - { - name: 'isoWeek', - propType: 'object', - }, - { - name: 'isoWeeks', - propType: 'object', - }, - { - name: 'weeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInYear', - propType: 'object', - }, - { - name: 'isoWeeksInISOWeekYear', - propType: 'object', - }, - { - name: 'dayOfYear', - propType: 'object', - }, - { - name: 'from', - propType: 'func', - }, - { - name: 'to', - propType: 'func', - }, - { - name: 'fromNow', - propType: 'func', - }, - { - name: 'toNow', - propType: 'func', - }, - { - name: 'diff', - propType: 'func', - }, - { - name: 'toArray', - propType: 'object', - }, - { - name: 'toDate', - propType: 'object', - }, - { - name: 'toISOString', - propType: 'func', - }, - { - name: 'inspect', - propType: 'object', - }, - { - name: 'toJSON', - propType: 'object', - }, - { - name: 'unix', - propType: 'object', - }, - { - name: 'isLeapYear', - propType: 'object', - }, - { - name: 'zone', - propType: 'object', - }, - { - name: 'utcOffset', - propType: 'object', - }, - { - name: 'isUtcOffset', - propType: 'object', - }, - { - name: 'daysInMonth', - propType: 'object', - }, - { - name: 'isDST', - propType: 'object', - }, - { - name: 'zoneAbbr', - propType: 'object', - }, - { - name: 'zoneName', - propType: 'object', - }, - { - name: 'isBefore', - propType: 'func', - }, - { - name: 'isAfter', - propType: 'func', - }, - { - name: 'isSame', - propType: 'func', - }, - { - name: 'isSameOrAfter', - propType: 'func', - }, - { - name: 'isSameOrBefore', - propType: 'func', - }, - { - name: 'isBetween', - propType: 'func', - }, - { - name: 'lang', - propType: 'func', - }, - { - name: 'locale', - propType: 'object', - }, - { - name: 'localeData', - propType: 'object', - }, - { - name: 'isDSTShifted', - propType: 'object', - }, - { - name: 'max', - propType: 'func', - }, - { - name: 'min', - propType: 'func', - }, - { - name: 'get', - propType: 'func', - }, - { - name: 'set', - propType: 'func', - }, - { - name: 'toObject', - propType: 'object', - }, - ], - }, + propType: 'object', }, ], screenshot: '', @@ -41431,22 +45290,22 @@ Generated by [AVA](https://avajs.dev). { name: 'type', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'ghost', - 'dashed', 'primary', + 'dashed', ], }, }, { name: 'htmlType', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ - 'reset', 'submit', 'button', + 'reset', ], }, }, @@ -41456,7 +45315,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'icon', @@ -41472,12 +45340,24 @@ Generated by [AVA](https://avajs.dev). }, { name: 'buttonsRender', - propType: 'func', + propType: { + raw: '(buttons: ReactNode[]) => ReactNode[]', + type: 'func', + value: [ + { + name: 'buttons', + propType: { + type: 'arrayOf', + value: 'node', + }, + }, + ], + }, }, { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'middle', @@ -41502,7 +45382,7 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'arrayOf', value: { - type: 'oneOfType', + type: 'oneOf', value: [ 'click', 'contextMenu', @@ -41517,44 +45397,23 @@ Generated by [AVA](https://avajs.dev). isRequired: true, type: 'oneOfType', value: [ - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - 'any', + 'object', + 'func', ], }, }, { name: 'onVisibleChange', - propType: 'func', + propType: { + raw: '(visible: boolean) => void', + type: 'func', + value: [ + { + name: 'visible', + propType: 'bool', + }, + ], + }, }, { name: 'visible', @@ -41562,11 +45421,64 @@ Generated by [AVA](https://avajs.dev). }, { name: 'align', - propType: 'any', + propType: { + type: 'shape', + value: [ + { + name: 'points', + propType: 'object', + }, + { + name: 'offset', + propType: 'object', + }, + { + name: 'targetOffset', + propType: 'object', + }, + { + name: 'overflow', + propType: { + type: 'shape', + value: [ + { + name: 'adjustX', + propType: 'bool', + }, + { + name: 'adjustY', + propType: 'bool', + }, + ], + }, + }, + { + name: 'useCssRight', + propType: 'bool', + }, + { + name: 'useCssBottom', + propType: 'bool', + }, + { + name: 'useCssTransform', + propType: 'bool', + }, + ], + }, }, { name: 'getPopupContainer', - propType: 'func', + propType: { + raw: '(triggerNode: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'triggerNode', + propType: 'object', + }, + ], + }, }, { name: 'transitionName', @@ -41575,7 +45487,7 @@ Generated by [AVA](https://avajs.dev). { name: 'placement', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'topLeft', 'topCenter', @@ -41614,134 +45526,6 @@ Generated by [AVA](https://avajs.dev). screenshot: '', title: 'antd', }, - { - componentName: 'Form', - devMode: 'proCode', - docUrl: '', - npm: { - destructuring: true, - exportName: 'Form', - main: 'components/index.tsx', - package: 'antd', - subName: 'useForm', - version: '4.1.4', - }, - props: [ - { - name: 'scrollToField', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - name: '__INTERNAL__', - propType: { - isRequired: true, - type: 'shape', - value: [ - { - name: 'name', - propType: 'string', - }, - ], - }, - }, - { - name: 'getFieldValue', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - name: 'getFieldsValue', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - name: 'getFieldError', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - name: 'getFieldsError', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - name: 'isFieldsTouched', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - name: 'isFieldTouched', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - name: 'isFieldValidating', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - name: 'isFieldsValidating', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - name: 'resetFields', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - name: 'setFields', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - name: 'setFieldsValue', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - name: 'validateFields', - propType: { - isRequired: true, - type: 'any', - }, - }, - { - name: 'submit', - propType: { - isRequired: true, - type: 'func', - }, - }, - ], - screenshot: '', - title: 'antd', - }, { componentName: 'Form', devMode: 'proCode', @@ -41782,7 +45566,7 @@ Generated by [AVA](https://avajs.dev). { name: 'validateStatus', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ '', 'success', @@ -41816,10 +45600,10 @@ Generated by [AVA](https://avajs.dev). { name: 'labelAlign', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ - 'right', 'left', + 'right', ], }, }, @@ -42809,11 +46593,43 @@ Generated by [AVA](https://avajs.dev). }, { name: 'getValueFromEvent', - propType: 'func', + propType: { + raw: '(...args: EventArgs) => any', + type: 'func', + value: [ + { + name: 'args', + propType: { + type: 'arrayOf', + value: 'any', + }, + }, + ], + }, }, { name: 'normalize', - propType: 'func', + propType: { + raw: '(value: any, prevValue: any, allValues: Store) => any', + type: 'func', + value: [ + { + name: 'value', + propType: 'any', + }, + { + name: 'prevValue', + propType: 'any', + }, + { + name: 'allValues', + propType: { + type: 'objectOf', + value: 'any', + }, + }, + ], + }, }, { name: 'rules', @@ -42829,11 +46645,7 @@ Generated by [AVA](https://avajs.dev). name: 'enum', propType: { type: 'arrayOf', - value: { - 0: 'a', - 1: 'n', - 2: 'y', - }, + value: 'any', }, }, { @@ -42850,37 +46662,7 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'string', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, + 'object', ], }, }, @@ -42890,7 +46672,153 @@ Generated by [AVA](https://avajs.dev). }, { name: 'pattern', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'exec', + propType: { + raw: '(string: string) => RegExpExecArray', + type: 'func', + value: [ + { + name: 'string', + propType: 'string', + }, + ], + }, + }, + { + name: 'test', + propType: { + raw: '(string: string) => boolean', + type: 'func', + value: [ + { + name: 'string', + propType: 'string', + }, + ], + }, + }, + { + name: 'source', + propType: 'string', + }, + { + name: 'global', + propType: 'bool', + }, + { + name: 'ignoreCase', + propType: 'bool', + }, + { + name: 'multiline', + propType: 'bool', + }, + { + name: 'lastIndex', + propType: 'number', + }, + { + name: 'compile', + propType: { + raw: '() => this', + type: 'func', + }, + }, + { + name: 'flags', + propType: 'string', + }, + { + name: 'sticky', + propType: 'bool', + }, + { + name: 'unicode', + propType: 'bool', + }, + { + name: '__@match', + propType: { + raw: '(string: string) => RegExpMatchArray', + type: 'func', + value: [ + { + name: 'string', + propType: 'string', + }, + ], + }, + }, + { + name: '__@replace', + propType: { + raw: '{ (string: string, replaceValue: string): string; (string: string, replacer: (substring: string, ...args: any[]) => string): string; }', + type: 'func', + value: [ + { + name: 'string', + propType: 'string', + }, + { + name: 'replaceValue', + propType: 'string', + }, + ], + }, + }, + { + name: '__@search', + propType: { + raw: '(string: string) => number', + type: 'func', + value: [ + { + name: 'string', + propType: 'string', + }, + ], + }, + }, + { + name: '__@split', + propType: { + raw: '(string: string, limit?: number) => string[]', + type: 'func', + value: [ + { + name: 'string', + propType: 'string', + }, + { + name: 'limit', + propType: 'number', + }, + ], + }, + }, + { + name: 'dotAll', + propType: 'bool', + }, + { + name: '__@matchAll', + propType: { + raw: '(str: string) => IterableIterator', + type: 'func', + value: [ + { + name: 'str', + propType: 'string', + }, + ], + }, + }, + ], + }, }, { name: 'required', @@ -42898,12 +46826,21 @@ Generated by [AVA](https://avajs.dev). }, { name: 'transform', - propType: 'object', + propType: { + raw: '(value: any) => any', + type: 'func', + value: [ + { + name: 'value', + propType: 'any', + }, + ], + }, }, { name: 'type', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'string', 'number', @@ -42923,7 +46860,61 @@ Generated by [AVA](https://avajs.dev). }, { name: 'validator', - propType: 'any', + propType: { + raw: 'Validator', + type: 'func', + value: [ + { + name: 'rule', + propType: { + type: 'oneOfType', + value: [ + 'object', + { + type: 'shape', + value: [ + { + name: 'type', + propType: { + type: 'oneOf', + value: [ + 'array', + ], + }, + }, + { + name: 'defaultField', + propType: { + type: 'oneOfType', + value: [ + 'object', + ], + }, + }, + ], + }, + ], + }, + }, + { + name: 'value', + propType: 'any', + }, + { + name: 'callback', + propType: { + raw: '(error?: string) => void', + type: 'func', + value: [ + { + name: 'error', + propType: 'string', + }, + ], + }, + }, + ], + }, }, { name: 'whitespace', @@ -42937,14 +46928,7 @@ Generated by [AVA](https://avajs.dev). 'string', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, @@ -42956,7 +46940,12 @@ Generated by [AVA](https://avajs.dev). value: [ { name: 'type', - propType: 'array', + propType: { + type: 'oneOf', + value: [ + 'array', + ], + }, }, { name: 'defaultField', @@ -42970,11 +46959,7 @@ Generated by [AVA](https://avajs.dev). name: 'enum', propType: { type: 'arrayOf', - value: { - 0: 'a', - 1: 'n', - 2: 'y', - }, + value: 'any', }, }, { @@ -42991,37 +46976,7 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'string', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, + 'object', ], }, }, @@ -43031,7 +46986,153 @@ Generated by [AVA](https://avajs.dev). }, { name: 'pattern', - propType: 'object', + propType: { + type: 'shape', + value: [ + { + name: 'exec', + propType: { + raw: '(string: string) => RegExpExecArray', + type: 'func', + value: [ + { + name: 'string', + propType: 'string', + }, + ], + }, + }, + { + name: 'test', + propType: { + raw: '(string: string) => boolean', + type: 'func', + value: [ + { + name: 'string', + propType: 'string', + }, + ], + }, + }, + { + name: 'source', + propType: 'string', + }, + { + name: 'global', + propType: 'bool', + }, + { + name: 'ignoreCase', + propType: 'bool', + }, + { + name: 'multiline', + propType: 'bool', + }, + { + name: 'lastIndex', + propType: 'number', + }, + { + name: 'compile', + propType: { + raw: '() => this', + type: 'func', + }, + }, + { + name: 'flags', + propType: 'string', + }, + { + name: 'sticky', + propType: 'bool', + }, + { + name: 'unicode', + propType: 'bool', + }, + { + name: '__@match', + propType: { + raw: '(string: string) => RegExpMatchArray', + type: 'func', + value: [ + { + name: 'string', + propType: 'string', + }, + ], + }, + }, + { + name: '__@replace', + propType: { + raw: '{ (string: string, replaceValue: string): string; (string: string, replacer: (substring: string, ...args: any[]) => string): string; }', + type: 'func', + value: [ + { + name: 'string', + propType: 'string', + }, + { + name: 'replaceValue', + propType: 'string', + }, + ], + }, + }, + { + name: '__@search', + propType: { + raw: '(string: string) => number', + type: 'func', + value: [ + { + name: 'string', + propType: 'string', + }, + ], + }, + }, + { + name: '__@split', + propType: { + raw: '(string: string, limit?: number) => string[]', + type: 'func', + value: [ + { + name: 'string', + propType: 'string', + }, + { + name: 'limit', + propType: 'number', + }, + ], + }, + }, + { + name: 'dotAll', + propType: 'bool', + }, + { + name: '__@matchAll', + propType: { + raw: '(str: string) => IterableIterator', + type: 'func', + value: [ + { + name: 'str', + propType: 'string', + }, + ], + }, + }, + ], + }, }, { name: 'required', @@ -43039,12 +47140,21 @@ Generated by [AVA](https://avajs.dev). }, { name: 'transform', - propType: 'object', + propType: { + raw: '(value: any) => any', + type: 'func', + value: [ + { + name: 'value', + propType: 'any', + }, + ], + }, }, { name: 'type', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'string', 'number', @@ -43064,7 +47174,38 @@ Generated by [AVA](https://avajs.dev). }, { name: 'validator', - propType: 'any', + propType: { + raw: 'Validator', + type: 'func', + value: [ + { + name: 'rule', + propType: { + type: 'oneOfType', + value: [ + 'object', + ], + }, + }, + { + name: 'value', + propType: 'any', + }, + { + name: 'callback', + propType: { + raw: '(error?: string) => void', + type: 'func', + value: [ + { + name: 'error', + propType: 'string', + }, + ], + }, + }, + ], + }, }, { name: 'whitespace', @@ -43078,27 +47219,461 @@ Generated by [AVA](https://avajs.dev). 'string', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, }, ], }, - 'any', + 'object', + ], + }, + }, + ], + }, + { + raw: 'RuleRender', + type: 'func', + value: [ + { + name: 'form', + propType: { + type: 'shape', + value: [ + { + name: 'getFieldValue', + propType: { + raw: '(name: NamePath) => any', + type: 'func', + value: [ + { + name: 'name', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, + }, + ], + }, + }, + { + name: 'getFieldsValue', + propType: { + raw: '(nameList?: true | NamePath[], filterFunc?: (meta: Meta) => boolean) => Store', + type: 'func', + value: [ + { + name: 'nameList', + propType: { + type: 'oneOfType', + value: [ + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, + }, + { + type: 'oneOf', + value: [ + true, + ], + }, + ], + }, + }, + { + name: 'filterFunc', + propType: { + raw: '(meta: Meta) => boolean', + type: 'func', + value: [ + { + name: 'meta', + propType: { + type: 'shape', + value: [ + { + name: 'touched', + propType: 'bool', + }, + { + name: 'validating', + propType: 'bool', + }, + { + name: 'errors', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + { + name: 'name', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + }, + ], + }, + }, + ], + }, + }, + ], + }, + }, + { + name: 'getFieldError', + propType: { + raw: '(name: NamePath) => string[]', + type: 'func', + value: [ + { + name: 'name', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, + }, + ], + }, + }, + { + name: 'getFieldsError', + propType: { + raw: '(nameList?: NamePath[]) => FieldError[]', + type: 'func', + value: [ + { + name: 'nameList', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, + }, + }, + ], + }, + }, + { + name: 'isFieldsTouched', + propType: { + raw: '{ (nameList?: NamePath[], allFieldsTouched?: boolean): boolean; (allFieldsTouched?: boolean): boolean; }', + type: 'func', + value: [ + { + name: 'nameList', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, + }, + }, + { + name: 'allFieldsTouched', + propType: 'bool', + }, + ], + }, + }, + { + name: 'isFieldTouched', + propType: { + raw: '(name: NamePath) => boolean', + type: 'func', + value: [ + { + name: 'name', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, + }, + ], + }, + }, + { + name: 'isFieldValidating', + propType: { + raw: '(name: NamePath) => boolean', + type: 'func', + value: [ + { + name: 'name', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, + }, + ], + }, + }, + { + name: 'isFieldsValidating', + propType: { + raw: '(nameList: NamePath[]) => boolean', + type: 'func', + value: [ + { + name: 'nameList', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, + }, + }, + ], + }, + }, + { + name: 'resetFields', + propType: { + raw: '(fields?: NamePath[]) => void', + type: 'func', + value: [ + { + name: 'fields', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, + }, + }, + ], + }, + }, + { + name: 'setFields', + propType: { + raw: '(fields: FieldData[]) => void', + type: 'func', + value: [ + { + name: 'fields', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'name', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, + }, + ], + }, + }, + }, + ], + }, + }, + { + name: 'setFieldsValue', + propType: { + raw: '(value: Store) => void', + type: 'func', + value: [ + { + name: 'value', + propType: { + type: 'objectOf', + value: 'any', + }, + }, + ], + }, + }, + { + name: 'validateFields', + propType: { + raw: 'ValidateFields', + type: 'func', + value: [ + { + name: 'nameList', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, + }, + }, + ], + }, + }, + { + name: 'submit', + propType: 'func', + }, ], }, }, ], }, - 'any', ], }, }, @@ -43108,8 +47683,44 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - true, - 'func', + { + raw: '(prevValues: Store, nextValues: Store, info: { source?: string; }) => boolean', + type: 'func', + value: [ + { + name: 'prevValues', + propType: { + type: 'objectOf', + value: 'any', + }, + }, + { + name: 'nextValues', + propType: { + type: 'objectOf', + value: 'any', + }, + }, + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'source', + propType: 'string', + }, + ], + }, + }, + ], + }, + { + type: 'oneOf', + value: [ + true, + ], + }, ], }, }, @@ -43119,17 +47730,15 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'string', - false, { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', + }, + { + type: 'oneOf', + value: [ + false, + ], }, ], }, @@ -43144,7 +47753,10 @@ Generated by [AVA](https://avajs.dev). }, { name: 'messageVariables', - propType: 'any', + propType: { + type: 'objectOf', + value: 'string', + }, }, ], screenshot: '', @@ -43207,7 +47819,25 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onSearch', - propType: 'func', + propType: { + raw: '(value: string, event?: MouseEvent | KeyboardEvent | ChangeEvent) => void', + type: 'func', + value: [ + { + name: 'value', + propType: 'string', + }, + { + name: 'event', + propType: { + type: 'oneOfType', + value: [ + 'object', + ], + }, + }, + ], + }, }, { defaultValue: false, @@ -43225,7 +47855,7 @@ Generated by [AVA](https://avajs.dev). { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'middle', @@ -43238,35 +47868,49 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - 'number', 'object', - 'date', - 'time', - 'text', - 'color', - 'hidden', - 'tel', - 'url', - 'email', - 'search', - 'month', - 'week', - 'reset', - 'submit', - 'button', - 'image', - 'checkbox', - 'datetime-local', - 'file', - 'password', - 'radio', - 'range', + { + type: 'oneOf', + value: [ + 'number', + 'date', + 'time', + 'text', + 'color', + 'hidden', + 'tel', + 'url', + 'email', + 'search', + 'submit', + 'button', + 'reset', + 'week', + 'month', + 'image', + 'checkbox', + 'datetime-local', + 'file', + 'password', + 'radio', + 'range', + ], + }, ], }, }, { name: 'onPressEnter', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'addonBefore', @@ -43294,12 +47938,34 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(event: ChangeEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'className', propType: 'string', }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, { name: 'id', propType: 'string', @@ -43313,14 +47979,7 @@ Generated by [AVA](https://avajs.dev). 'number', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, @@ -43334,14 +47993,7 @@ Generated by [AVA](https://avajs.dev). 'number', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, @@ -43364,483 +48016,108 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onKeyUp', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDown', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelect', - propType: 'func', - }, - { - name: 'onClick', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', - }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', propType: { - type: 'oneOfType', + raw: '(event: MouseEvent) => void', + type: 'func', value: [ - false, - true, - 'false', - 'true', + { + name: 'event', + propType: 'object', + }, ], }, }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'list', propType: 'string', @@ -43865,7 +48142,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onError', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'color', @@ -43896,11 +48182,15 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', - 'inherit', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + 'inherit', + ], + }, ], }, }, @@ -43917,10 +48207,14 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, @@ -43941,17 +48235,21 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, { name: 'translate', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'yes', 'no', @@ -44037,7 +48335,7 @@ Generated by [AVA](https://avajs.dev). { name: 'unselectable', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'off', 'on', @@ -44048,7 +48346,7 @@ Generated by [AVA](https://avajs.dev). description: 'Hints at the type of data that might be entered by the user while editing the element or its contents', name: 'inputMode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'none', 'text', @@ -44080,599 +48378,1940 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onCopy', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCopyCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCut', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCutCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPaste', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPasteCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEnd', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEndCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStart', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStartCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdate', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdateCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocusCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlurCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onChangeCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onReset', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onResetCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmit', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmitCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalid', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalidCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoad', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onErrorCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDownCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPress', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPressCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyUpCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbort', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbortCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThrough', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThroughCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptied', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptiedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncrypted', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncryptedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEnded', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEndedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedData', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedDataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadata', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStart', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStartCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPause', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPauseCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlaying', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgress', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgressCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeked', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeking', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalled', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalledCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspend', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspendCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdate', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdateCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaiting', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaitingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenu', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenuCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrag', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnd', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEndCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnter', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnterCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExit', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExitCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeave', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeaveCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOver', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOverCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStart', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStartCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrop', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDropCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDownCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMove', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMoveCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOut', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOutCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOver', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOverCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUp', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUpCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelectCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancel', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancelCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEnd', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEndCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMove', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMoveCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStart', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStartCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDown', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDownCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMove', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMoveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUp', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUpCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancel', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancelCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnter', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnterCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeave', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeaveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOver', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOverCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOut', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOutCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScroll', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScrollCapture', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheel', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheelCapture', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStart', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStartCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEnd', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEndCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIteration', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIterationCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEnd', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEndCapture', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'form', @@ -44730,10 +50369,6 @@ Generated by [AVA](https://avajs.dev). ], }, }, - { - name: 'pattern', - propType: 'string', - }, { name: 'accept', propType: 'string', @@ -44744,8 +50379,7 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'string', - false, - true, + 'bool', ], }, }, @@ -44785,6 +50419,10 @@ Generated by [AVA](https://avajs.dev). name: 'multiple', propType: 'bool', }, + { + name: 'pattern', + propType: 'string', + }, { name: 'readOnly', propType: 'bool', @@ -44819,8 +50457,7 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, + 'bool', { type: 'shape', value: [ @@ -44839,7 +50476,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onPressEnter', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'allowClear', @@ -44847,7 +50493,28 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onResize', - propType: 'func', + propType: { + raw: '(size: { width: number; height: number; }) => void', + type: 'func', + value: [ + { + name: 'size', + propType: { + type: 'shape', + value: [ + { + name: 'width', + propType: 'number', + }, + { + name: 'height', + propType: 'number', + }, + ], + }, + }, + ], + }, }, { name: 'autoComplete', @@ -44910,14 +50577,7 @@ Generated by [AVA](https://avajs.dev). 'number', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, @@ -44928,7 +50588,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(event: ChangeEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'defaultChecked', @@ -44943,14 +50612,7 @@ Generated by [AVA](https://avajs.dev). 'number', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, @@ -44976,11 +50638,15 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', - 'inherit', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + 'inherit', + ], + }, ], }, }, @@ -44997,10 +50663,14 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, @@ -45025,10 +50695,14 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, @@ -45047,7 +50721,7 @@ Generated by [AVA](https://avajs.dev). { name: 'translate', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'yes', 'no', @@ -45141,7 +50815,7 @@ Generated by [AVA](https://avajs.dev). { name: 'unselectable', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'off', 'on', @@ -45152,7 +50826,7 @@ Generated by [AVA](https://avajs.dev). description: 'Hints at the type of data that might be entered by the user while editing the element or its contents', name: 'inputMode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'none', 'text', @@ -45170,449 +50844,6 @@ Generated by [AVA](https://avajs.dev). name: 'is', propType: 'string', }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'dangerouslySetInnerHTML', propType: { @@ -45627,639 +50858,2070 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onCopy', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCopyCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCut', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCutCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPaste', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPasteCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEnd', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEndCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStart', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStartCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdate', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdateCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocusCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlurCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onChangeCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onReset', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onResetCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmit', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmitCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalid', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalidCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoad', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onError', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onErrorCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDown', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDownCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPress', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPressCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyUp', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyUpCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbort', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbortCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThrough', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThroughCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptied', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptiedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncrypted', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncryptedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEnded', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEndedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedData', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedDataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadata', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStart', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStartCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPause', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPauseCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlaying', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgress', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgressCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeked', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeking', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalled', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalledCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspend', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspendCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdate', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdateCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaiting', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaitingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenu', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenuCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrag', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnd', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEndCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnter', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnterCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExit', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExitCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeave', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeaveCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOver', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOverCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStart', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStartCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrop', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDropCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDownCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMove', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMoveCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOut', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOutCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOver', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOverCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUp', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUpCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelect', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelectCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancel', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancelCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEnd', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEndCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMove', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMoveCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStart', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStartCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDown', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDownCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMove', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMoveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUp', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUpCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancel', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancelCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnter', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnterCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeave', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeaveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOver', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOverCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOut', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOutCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScroll', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScrollCapture', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheel', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheelCapture', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStart', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStartCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEnd', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEndCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIteration', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIterationCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEnd', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEndCapture', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, ], screenshot: '', @@ -46298,7 +52960,7 @@ Generated by [AVA](https://avajs.dev). { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'middle', @@ -46311,35 +52973,49 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - 'number', 'object', - 'date', - 'time', - 'text', - 'color', - 'hidden', - 'tel', - 'url', - 'email', - 'search', - 'month', - 'week', - 'reset', - 'submit', - 'button', - 'image', - 'checkbox', - 'datetime-local', - 'file', - 'password', - 'radio', - 'range', + { + type: 'oneOf', + value: [ + 'number', + 'date', + 'time', + 'text', + 'color', + 'hidden', + 'tel', + 'url', + 'email', + 'search', + 'submit', + 'button', + 'reset', + 'week', + 'month', + 'image', + 'checkbox', + 'datetime-local', + 'file', + 'password', + 'radio', + 'range', + ], + }, ], }, }, { name: 'onPressEnter', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'addonBefore', @@ -46367,12 +53043,34 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(event: ChangeEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'className', propType: 'string', }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, { name: 'id', propType: 'string', @@ -46386,14 +53084,7 @@ Generated by [AVA](https://avajs.dev). 'number', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, @@ -46407,14 +53098,7 @@ Generated by [AVA](https://avajs.dev). 'number', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, @@ -46437,483 +53121,108 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onKeyUp', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDown', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelect', - propType: 'func', - }, - { - name: 'onClick', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', - }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', propType: { - type: 'oneOfType', + raw: '(event: MouseEvent) => void', + type: 'func', value: [ - false, - true, - 'false', - 'true', + { + name: 'event', + propType: 'object', + }, ], }, }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'list', propType: 'string', @@ -46938,7 +53247,16 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onError', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'color', @@ -46969,11 +53287,15 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', - 'inherit', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + 'inherit', + ], + }, ], }, }, @@ -46990,10 +53312,14 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, @@ -47014,17 +53340,21 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, { name: 'translate', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'yes', 'no', @@ -47110,7 +53440,7 @@ Generated by [AVA](https://avajs.dev). { name: 'unselectable', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'off', 'on', @@ -47121,7 +53451,7 @@ Generated by [AVA](https://avajs.dev). description: 'Hints at the type of data that might be entered by the user while editing the element or its contents', name: 'inputMode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'none', 'text', @@ -47153,599 +53483,1940 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onCopy', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCopyCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCut', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCutCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPaste', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPasteCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEnd', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEndCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStart', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStartCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdate', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdateCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocusCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlurCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onChangeCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onReset', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onResetCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmit', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmitCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalid', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalidCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoad', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onErrorCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDownCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPress', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPressCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyUpCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbort', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbortCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThrough', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThroughCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptied', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptiedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncrypted', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncryptedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEnded', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEndedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedData', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedDataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadata', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStart', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStartCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPause', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPauseCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlaying', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgress', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgressCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeked', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeking', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalled', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalledCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspend', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspendCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdate', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdateCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaiting', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaitingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenu', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenuCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrag', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnd', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEndCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnter', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnterCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExit', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExitCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeave', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeaveCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOver', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOverCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStart', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStartCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrop', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDropCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDownCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMove', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMoveCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOut', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOutCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOver', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOverCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUp', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUpCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelectCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancel', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancelCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEnd', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEndCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMove', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMoveCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStart', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStartCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDown', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDownCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMove', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMoveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUp', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUpCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancel', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancelCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnter', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnterCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeave', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeaveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOver', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOverCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOut', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOutCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScroll', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScrollCapture', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheel', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheelCapture', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStart', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStartCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEnd', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEndCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIteration', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIterationCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEnd', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEndCapture', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'form', @@ -47803,10 +55474,6 @@ Generated by [AVA](https://avajs.dev). ], }, }, - { - name: 'pattern', - propType: 'string', - }, { name: 'accept', propType: 'string', @@ -47817,8 +55484,7 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'string', - false, - true, + 'bool', ], }, }, @@ -47858,6 +55524,10 @@ Generated by [AVA](https://avajs.dev). name: 'multiple', propType: 'bool', }, + { + name: 'pattern', + propType: 'string', + }, { name: 'readOnly', propType: 'bool', @@ -47871,169 +55541,25 @@ Generated by [AVA](https://avajs.dev). title: 'antd', }, { - componentName: 'List', + componentName: 'Layout', devMode: 'proCode', docUrl: '', npm: { destructuring: true, - exportName: 'List', + exportName: 'Layout', main: 'components/index.tsx', package: 'antd', - subName: 'Item', + subName: 'Header', version: '4.1.4', }, props: [ - { - name: 'className', - propType: 'string', - }, { name: 'prefixCls', propType: 'string', }, { - name: 'style', - propType: 'object', - }, - { - name: 'extra', - propType: 'node', - }, - { - name: 'actions', - propType: { - type: 'arrayOf', - value: { - 0: 'n', - 1: 'o', - 2: 'd', - 3: 'e', - }, - }, - }, - { - name: 'grid', - propType: { - type: 'shape', - value: [ - { - name: 'gutter', - propType: 'number', - }, - { - name: 'column', - propType: { - type: 'oneOfType', - value: [ - 1, - 2, - 3, - 4, - 6, - 8, - 12, - 24, - ], - }, - }, - { - name: 'xs', - propType: { - type: 'oneOfType', - value: [ - 1, - 2, - 3, - 4, - 6, - 8, - 12, - 24, - ], - }, - }, - { - name: 'sm', - propType: { - type: 'oneOfType', - value: [ - 1, - 2, - 3, - 4, - 6, - 8, - 12, - 24, - ], - }, - }, - { - name: 'md', - propType: { - type: 'oneOfType', - value: [ - 1, - 2, - 3, - 4, - 6, - 8, - 12, - 24, - ], - }, - }, - { - name: 'lg', - propType: { - type: 'oneOfType', - value: [ - 1, - 2, - 3, - 4, - 6, - 8, - 12, - 24, - ], - }, - }, - { - name: 'xl', - propType: { - type: 'oneOfType', - value: [ - 1, - 2, - 3, - 4, - 6, - 8, - 12, - 24, - ], - }, - }, - { - name: 'xxl', - propType: { - type: 'oneOfType', - value: [ - 1, - 2, - 3, - 4, - 6, - 8, - 12, - 24, - ], - }, - }, - ], - }, + name: 'hasSider', + propType: 'bool', }, { name: 'defaultChecked', @@ -48048,14 +55574,7 @@ Generated by [AVA](https://avajs.dev). 'number', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, @@ -48072,16 +55591,24 @@ Generated by [AVA](https://avajs.dev). name: 'accessKey', propType: 'string', }, + { + name: 'className', + propType: 'string', + }, { name: 'contentEditable', propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', - 'inherit', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + 'inherit', + ], + }, ], }, }, @@ -48098,10 +55625,14 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, @@ -48130,13 +55661,21 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, + { + name: 'style', + propType: 'object', + }, { name: 'tabIndex', propType: 'number', @@ -48148,7 +55687,7 @@ Generated by [AVA](https://avajs.dev). { name: 'translate', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'yes', 'no', @@ -48242,7 +55781,7 @@ Generated by [AVA](https://avajs.dev). { name: 'unselectable', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'off', 'on', @@ -48253,7 +55792,7 @@ Generated by [AVA](https://avajs.dev). description: 'Hints at the type of data that might be entered by the user while editing the element or its contents', name: 'inputMode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'none', 'text', @@ -48272,446 +55811,2369 @@ Generated by [AVA](https://avajs.dev). propType: 'string', }, { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', + name: 'dangerouslySetInnerHTML', + propType: { + type: 'shape', + value: [ + { + name: '__html', + propType: 'string', + }, + ], + }, + }, + { + name: 'onCopy', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCopyCapture', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCut', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCutCapture', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPaste', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPasteCapture', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionEnd', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionEndCapture', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionStart', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionStartCapture', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionUpdate', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionUpdateCapture', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onFocus', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onFocusCapture', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBlur', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBlurCapture', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onChange', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onChangeCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBeforeInput', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBeforeInputCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInput', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInputCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onReset', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onResetCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSubmit', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSubmitCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInvalid', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInvalidCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoad', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onError', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onErrorCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyDown', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyDownCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyPress', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyPressCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyUp', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyUpCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAbort', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAbortCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlay', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayThrough', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayThroughCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDurationChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDurationChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEmptied', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEmptiedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEncrypted', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEncryptedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEnded', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEndedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedData', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedDataCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedMetadata', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedMetadataCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadStart', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadStartCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPause', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPauseCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlay', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlayCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlaying', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlayingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onProgress', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onProgressCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onRateChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onRateChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeeked', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeekedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeeking', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeekingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onStalled', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onStalledCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSuspend', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSuspendCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTimeUpdate', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTimeUpdateCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onVolumeChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onVolumeChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWaiting', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWaitingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAuxClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAuxClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onContextMenu', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onContextMenuCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDoubleClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDoubleClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDrag', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnd', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEndCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnter', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnterCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragExit', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragExitCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragLeave', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragLeaveCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragOver', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragOverCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragStart', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragStartCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDrop', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDropCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseDown', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseDownCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseEnter', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseLeave', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseMove', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseMoveCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOut', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOutCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOver', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOverCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseUp', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseUpCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSelect', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSelectCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchCancel', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchCancelCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchEnd', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchEndCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchMove', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchMoveCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchStart', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchStartCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerDown', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerDownCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerMove', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerMoveCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerUp', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerUpCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerCancel', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerCancelCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerEnter', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerEnterCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerLeave', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerLeaveCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOver', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOverCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOut', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOutCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onGotPointerCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onGotPointerCaptureCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLostPointerCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLostPointerCaptureCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onScroll', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onScrollCapture', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWheel', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWheelCapture', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationStart', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationStartCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationEnd', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationEndCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationIteration', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationIterationCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTransitionEnd', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTransitionEndCapture', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + ], + screenshot: '', + title: 'antd', + }, + { + componentName: 'Layout', + devMode: 'proCode', + docUrl: '', + npm: { + destructuring: true, + exportName: 'Layout', + main: 'components/index.tsx', + package: 'antd', + subName: 'Footer', + version: '4.1.4', + }, + props: [ + { + name: 'prefixCls', propType: 'string', }, { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', + name: 'hasSider', + propType: 'bool', + }, + { + name: 'defaultChecked', + propType: 'bool', + }, + { + name: 'defaultValue', propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'string', + 'number', + { + type: 'arrayOf', + value: 'string', + }, ], }, }, { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', + name: 'suppressContentEditableWarning', + propType: 'bool', + }, + { + name: 'suppressHydrationWarning', + propType: 'bool', + }, + { + name: 'accessKey', + propType: 'string', + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'contentEditable', propType: { type: 'oneOfType', value: [ - 'none', - 'inline', - 'list', - 'both', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + 'inherit', + ], + }, ], }, }, { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', + name: 'contextMenu', + propType: 'string', + }, + { + name: 'dir', + propType: 'string', + }, + { + name: 'draggable', propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', + name: 'hidden', + propType: 'bool', + }, + { + name: 'id', + propType: 'string', + }, + { + name: 'lang', + propType: 'string', + }, + { + name: 'placeholder', + propType: 'string', + }, + { + name: 'slot', + propType: 'string', + }, + { + name: 'spellCheck', propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', - 'mixed', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', + name: 'style', + propType: 'object', + }, + { + name: 'tabIndex', propType: 'number', }, { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', + name: 'title', + propType: 'string', + }, + { + name: 'translate', + propType: { + type: 'oneOf', + value: [ + 'yes', + 'no', + ], + }, + }, + { + name: 'radioGroup', + propType: 'string', + }, + { + name: 'role', + propType: 'string', + }, + { + name: 'about', + propType: 'string', + }, + { + name: 'datatype', + propType: 'string', + }, + { + name: 'inlist', + propType: 'any', + }, + { + name: 'prefix', + propType: 'string', + }, + { + name: 'property', + propType: 'string', + }, + { + name: 'resource', + propType: 'string', + }, + { + name: 'typeof', + propType: 'string', + }, + { + name: 'vocab', + propType: 'string', + }, + { + name: 'autoCapitalize', + propType: 'string', + }, + { + name: 'autoCorrect', + propType: 'string', + }, + { + name: 'autoSave', + propType: 'string', + }, + { + name: 'color', + propType: 'string', + }, + { + name: 'itemProp', + propType: 'string', + }, + { + name: 'itemScope', + propType: 'bool', + }, + { + name: 'itemType', + propType: 'string', + }, + { + name: 'itemID', + propType: 'string', + }, + { + name: 'itemRef', + propType: 'string', + }, + { + name: 'results', propType: 'number', }, { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', + name: 'security', propType: 'string', }, { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', + name: 'unselectable', propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'off', - 'assertive', - 'polite', + 'on', ], }, }, { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', + description: 'Hints at the type of data that might be entered by the user while editing the element or its contents', + name: 'inputMode', propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'none', - 'ascending', - 'descending', - 'other', + 'text', + 'tel', + 'url', + 'email', + 'numeric', + 'decimal', + 'search', ], }, }, { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', + description: 'Specify that a standard HTML element should behave like a defined custom built-in element', + name: 'is', propType: 'string', }, { @@ -48728,643 +58190,9412 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onCopy', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCopyCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCut', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCutCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPaste', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPasteCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEnd', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEndCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStart', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStartCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdate', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdateCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocusCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlurCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onChangeCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onReset', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onResetCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmit', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmitCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalid', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalidCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoad', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onError', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onErrorCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDown', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDownCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPress', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPressCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyUp', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyUpCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbort', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbortCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThrough', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThroughCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptied', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptiedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncrypted', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncryptedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEnded', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEndedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedData', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedDataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadata', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStart', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStartCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPause', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPauseCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlaying', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgress', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgressCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeked', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeking', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalled', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalledCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspend', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspendCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdate', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdateCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaiting', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaitingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenu', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenuCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrag', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnd', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEndCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnter', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnterCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExit', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExitCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeave', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeaveCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOver', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOverCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStart', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStartCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrop', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDropCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDownCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMove', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMoveCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOut', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOutCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOver', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOverCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUp', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUpCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelect', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelectCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancel', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancelCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEnd', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEndCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMove', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMoveCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStart', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStartCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDown', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDownCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMove', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMoveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUp', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUpCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancel', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancelCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnter', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnterCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeave', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeaveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOver', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOverCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOut', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOutCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScroll', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScrollCapture', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheel', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheelCapture', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStart', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStartCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEnd', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEndCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIteration', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIterationCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEnd', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEndCapture', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + ], + screenshot: '', + title: 'antd', + }, + { + componentName: 'Layout', + devMode: 'proCode', + docUrl: '', + npm: { + destructuring: true, + exportName: 'Layout', + main: 'components/index.tsx', + package: 'antd', + subName: 'Content', + version: '4.1.4', + }, + props: [ + { + name: 'prefixCls', + propType: 'string', + }, + { + name: 'hasSider', + propType: 'bool', + }, + { + name: 'defaultChecked', + propType: 'bool', + }, + { + name: 'defaultValue', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: 'string', + }, + ], + }, + }, + { + name: 'suppressContentEditableWarning', + propType: 'bool', + }, + { + name: 'suppressHydrationWarning', + propType: 'bool', + }, + { + name: 'accessKey', + propType: 'string', + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'contentEditable', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + 'inherit', + ], + }, + ], + }, + }, + { + name: 'contextMenu', + propType: 'string', + }, + { + name: 'dir', + propType: 'string', + }, + { + name: 'draggable', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, + ], + }, + }, + { + name: 'hidden', + propType: 'bool', + }, + { + name: 'id', + propType: 'string', + }, + { + name: 'lang', + propType: 'string', + }, + { + name: 'placeholder', + propType: 'string', + }, + { + name: 'slot', + propType: 'string', + }, + { + name: 'spellCheck', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, + ], + }, + }, + { + name: 'style', + propType: 'object', + }, + { + name: 'tabIndex', + propType: 'number', + }, + { + name: 'title', + propType: 'string', + }, + { + name: 'translate', + propType: { + type: 'oneOf', + value: [ + 'yes', + 'no', + ], + }, + }, + { + name: 'radioGroup', + propType: 'string', + }, + { + name: 'role', + propType: 'string', + }, + { + name: 'about', + propType: 'string', + }, + { + name: 'datatype', + propType: 'string', + }, + { + name: 'inlist', + propType: 'any', + }, + { + name: 'prefix', + propType: 'string', + }, + { + name: 'property', + propType: 'string', + }, + { + name: 'resource', + propType: 'string', + }, + { + name: 'typeof', + propType: 'string', + }, + { + name: 'vocab', + propType: 'string', + }, + { + name: 'autoCapitalize', + propType: 'string', + }, + { + name: 'autoCorrect', + propType: 'string', + }, + { + name: 'autoSave', + propType: 'string', + }, + { + name: 'color', + propType: 'string', + }, + { + name: 'itemProp', + propType: 'string', + }, + { + name: 'itemScope', + propType: 'bool', + }, + { + name: 'itemType', + propType: 'string', + }, + { + name: 'itemID', + propType: 'string', + }, + { + name: 'itemRef', + propType: 'string', + }, + { + name: 'results', + propType: 'number', + }, + { + name: 'security', + propType: 'string', + }, + { + name: 'unselectable', + propType: { + type: 'oneOf', + value: [ + 'off', + 'on', + ], + }, + }, + { + description: 'Hints at the type of data that might be entered by the user while editing the element or its contents', + name: 'inputMode', + propType: { + type: 'oneOf', + value: [ + 'none', + 'text', + 'tel', + 'url', + 'email', + 'numeric', + 'decimal', + 'search', + ], + }, + }, + { + description: 'Specify that a standard HTML element should behave like a defined custom built-in element', + name: 'is', + propType: 'string', + }, + { + name: 'dangerouslySetInnerHTML', + propType: { + type: 'shape', + value: [ + { + name: '__html', + propType: 'string', + }, + ], + }, + }, + { + name: 'onCopy', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCopyCapture', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCut', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCutCapture', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPaste', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPasteCapture', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionEnd', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionEndCapture', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionStart', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionStartCapture', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionUpdate', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionUpdateCapture', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onFocus', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onFocusCapture', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBlur', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBlurCapture', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onChange', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onChangeCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBeforeInput', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBeforeInputCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInput', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInputCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onReset', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onResetCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSubmit', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSubmitCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInvalid', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInvalidCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoad', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onError', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onErrorCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyDown', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyDownCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyPress', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyPressCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyUp', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyUpCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAbort', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAbortCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlay', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayThrough', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayThroughCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDurationChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDurationChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEmptied', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEmptiedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEncrypted', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEncryptedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEnded', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEndedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedData', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedDataCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedMetadata', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedMetadataCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadStart', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadStartCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPause', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPauseCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlay', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlayCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlaying', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlayingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onProgress', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onProgressCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onRateChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onRateChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeeked', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeekedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeeking', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeekingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onStalled', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onStalledCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSuspend', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSuspendCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTimeUpdate', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTimeUpdateCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onVolumeChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onVolumeChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWaiting', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWaitingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAuxClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAuxClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onContextMenu', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onContextMenuCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDoubleClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDoubleClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDrag', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnd', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEndCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnter', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnterCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragExit', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragExitCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragLeave', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragLeaveCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragOver', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragOverCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragStart', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragStartCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDrop', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDropCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseDown', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseDownCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseEnter', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseLeave', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseMove', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseMoveCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOut', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOutCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOver', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOverCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseUp', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseUpCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSelect', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSelectCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchCancel', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchCancelCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchEnd', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchEndCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchMove', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchMoveCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchStart', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchStartCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerDown', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerDownCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerMove', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerMoveCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerUp', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerUpCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerCancel', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerCancelCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerEnter', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerEnterCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerLeave', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerLeaveCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOver', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOverCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOut', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOutCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onGotPointerCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onGotPointerCaptureCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLostPointerCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLostPointerCaptureCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onScroll', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onScrollCapture', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWheel', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWheelCapture', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationStart', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationStartCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationEnd', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationEndCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationIteration', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationIterationCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTransitionEnd', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTransitionEndCapture', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + ], + screenshot: '', + title: 'antd', + }, + { + componentName: 'Layout', + devMode: 'proCode', + docUrl: '', + npm: { + destructuring: true, + exportName: 'Layout', + main: 'components/index.tsx', + package: 'antd', + subName: 'Sider', + version: '4.1.4', + }, + props: [ + { + name: 'prefixCls', + propType: 'string', + }, + { + name: 'collapsible', + propType: 'bool', + }, + { + name: 'collapsed', + propType: 'bool', + }, + { + name: 'defaultCollapsed', + propType: 'bool', + }, + { + name: 'reverseArrow', + propType: 'bool', + }, + { + name: 'onCollapse', + propType: { + raw: '(collapsed: boolean, type: CollapseType) => void', + type: 'func', + value: [ + { + name: 'collapsed', + propType: 'bool', + }, + { + name: 'type', + propType: { + type: 'oneOf', + value: [ + 'responsive', + 'clickTrigger', + ], + }, + }, + ], + }, + }, + { + name: 'zeroWidthTriggerStyle', + propType: 'object', + }, + { + name: 'trigger', + propType: 'node', + }, + { + name: 'width', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'collapsedWidth', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'breakpoint', + propType: { + type: 'oneOf', + value: [ + 'xs', + 'sm', + 'md', + 'lg', + 'xl', + 'xxl', + ], + }, + }, + { + name: 'theme', + propType: { + type: 'oneOf', + value: [ + 'light', + 'dark', + ], + }, + }, + { + name: 'onBreakpoint', + propType: { + raw: '(broken: boolean) => void', + type: 'func', + value: [ + { + name: 'broken', + propType: 'bool', + }, + ], + }, + }, + { + name: 'defaultChecked', + propType: 'bool', + }, + { + name: 'defaultValue', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: 'string', + }, + ], + }, + }, + { + name: 'suppressContentEditableWarning', + propType: 'bool', + }, + { + name: 'suppressHydrationWarning', + propType: 'bool', + }, + { + name: 'accessKey', + propType: 'string', + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'contentEditable', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + 'inherit', + ], + }, + ], + }, + }, + { + name: 'contextMenu', + propType: 'string', + }, + { + name: 'dir', + propType: 'string', + }, + { + name: 'draggable', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, + ], + }, + }, + { + name: 'hidden', + propType: 'bool', + }, + { + name: 'id', + propType: 'string', + }, + { + name: 'lang', + propType: 'string', + }, + { + name: 'placeholder', + propType: 'string', + }, + { + name: 'slot', + propType: 'string', + }, + { + name: 'spellCheck', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, + ], + }, + }, + { + name: 'style', + propType: 'object', + }, + { + name: 'tabIndex', + propType: 'number', + }, + { + name: 'title', + propType: 'string', + }, + { + name: 'translate', + propType: { + type: 'oneOf', + value: [ + 'yes', + 'no', + ], + }, + }, + { + name: 'radioGroup', + propType: 'string', + }, + { + name: 'role', + propType: 'string', + }, + { + name: 'about', + propType: 'string', + }, + { + name: 'datatype', + propType: 'string', + }, + { + name: 'inlist', + propType: 'any', + }, + { + name: 'prefix', + propType: 'string', + }, + { + name: 'property', + propType: 'string', + }, + { + name: 'resource', + propType: 'string', + }, + { + name: 'typeof', + propType: 'string', + }, + { + name: 'vocab', + propType: 'string', + }, + { + name: 'autoCapitalize', + propType: 'string', + }, + { + name: 'autoCorrect', + propType: 'string', + }, + { + name: 'autoSave', + propType: 'string', + }, + { + name: 'color', + propType: 'string', + }, + { + name: 'itemProp', + propType: 'string', + }, + { + name: 'itemScope', + propType: 'bool', + }, + { + name: 'itemType', + propType: 'string', + }, + { + name: 'itemID', + propType: 'string', + }, + { + name: 'itemRef', + propType: 'string', + }, + { + name: 'results', + propType: 'number', + }, + { + name: 'security', + propType: 'string', + }, + { + name: 'unselectable', + propType: { + type: 'oneOf', + value: [ + 'off', + 'on', + ], + }, + }, + { + description: 'Hints at the type of data that might be entered by the user while editing the element or its contents', + name: 'inputMode', + propType: { + type: 'oneOf', + value: [ + 'none', + 'text', + 'tel', + 'url', + 'email', + 'numeric', + 'decimal', + 'search', + ], + }, + }, + { + description: 'Specify that a standard HTML element should behave like a defined custom built-in element', + name: 'is', + propType: 'string', + }, + { + name: 'dangerouslySetInnerHTML', + propType: { + type: 'shape', + value: [ + { + name: '__html', + propType: 'string', + }, + ], + }, + }, + { + name: 'onCopy', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCopyCapture', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCut', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCutCapture', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPaste', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPasteCapture', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionEnd', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionEndCapture', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionStart', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionStartCapture', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionUpdate', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionUpdateCapture', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onFocus', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onFocusCapture', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBlur', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBlurCapture', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onChange', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onChangeCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBeforeInput', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBeforeInputCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInput', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInputCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onReset', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onResetCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSubmit', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSubmitCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInvalid', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInvalidCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoad', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onError', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onErrorCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyDown', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyDownCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyPress', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyPressCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyUp', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyUpCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAbort', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAbortCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlay', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayThrough', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayThroughCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDurationChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDurationChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEmptied', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEmptiedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEncrypted', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEncryptedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEnded', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEndedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedData', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedDataCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedMetadata', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedMetadataCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadStart', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadStartCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPause', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPauseCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlay', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlayCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlaying', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlayingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onProgress', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onProgressCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onRateChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onRateChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeeked', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeekedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeeking', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeekingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onStalled', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onStalledCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSuspend', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSuspendCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTimeUpdate', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTimeUpdateCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onVolumeChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onVolumeChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWaiting', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWaitingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAuxClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAuxClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onContextMenu', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onContextMenuCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDoubleClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDoubleClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDrag', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnd', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEndCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnter', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnterCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragExit', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragExitCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragLeave', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragLeaveCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragOver', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragOverCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragStart', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragStartCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDrop', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDropCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseDown', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseDownCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseEnter', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseLeave', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseMove', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseMoveCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOut', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOutCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOver', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOverCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseUp', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseUpCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSelect', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSelectCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchCancel', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchCancelCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchEnd', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchEndCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchMove', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchMoveCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchStart', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchStartCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerDown', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerDownCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerMove', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerMoveCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerUp', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerUpCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerCancel', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerCancelCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerEnter', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerEnterCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerLeave', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerLeaveCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOver', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOverCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOut', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOutCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onGotPointerCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onGotPointerCaptureCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLostPointerCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLostPointerCaptureCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onScroll', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onScrollCapture', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWheel', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWheelCapture', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationStart', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationStartCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationEnd', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationEndCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationIteration', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationIterationCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTransitionEnd', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTransitionEndCapture', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + ], + screenshot: '', + title: 'antd', + }, + { + componentName: 'List', + devMode: 'proCode', + docUrl: '', + npm: { + destructuring: true, + exportName: 'List', + main: 'components/index.tsx', + package: 'antd', + subName: 'Item', + version: '4.1.4', + }, + props: [ + { + name: 'className', + propType: 'string', + }, + { + name: 'prefixCls', + propType: 'string', + }, + { + name: 'style', + propType: 'object', + }, + { + name: 'extra', + propType: 'node', + }, + { + name: 'actions', + propType: { + type: 'arrayOf', + value: 'node', + }, + }, + { + name: 'grid', + propType: { + type: 'shape', + value: [ + { + name: 'gutter', + propType: 'number', + }, + { + name: 'column', + propType: { + type: 'oneOf', + value: [ + 1, + 2, + 3, + 4, + 6, + 8, + 12, + 24, + ], + }, + }, + { + name: 'xs', + propType: { + type: 'oneOf', + value: [ + 1, + 2, + 3, + 4, + 6, + 8, + 12, + 24, + ], + }, + }, + { + name: 'sm', + propType: { + type: 'oneOf', + value: [ + 1, + 2, + 3, + 4, + 6, + 8, + 12, + 24, + ], + }, + }, + { + name: 'md', + propType: { + type: 'oneOf', + value: [ + 1, + 2, + 3, + 4, + 6, + 8, + 12, + 24, + ], + }, + }, + { + name: 'lg', + propType: { + type: 'oneOf', + value: [ + 1, + 2, + 3, + 4, + 6, + 8, + 12, + 24, + ], + }, + }, + { + name: 'xl', + propType: { + type: 'oneOf', + value: [ + 1, + 2, + 3, + 4, + 6, + 8, + 12, + 24, + ], + }, + }, + { + name: 'xxl', + propType: { + type: 'oneOf', + value: [ + 1, + 2, + 3, + 4, + 6, + 8, + 12, + 24, + ], + }, + }, + ], + }, + }, + { + name: 'defaultChecked', + propType: 'bool', + }, + { + name: 'defaultValue', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'arrayOf', + value: 'string', + }, + ], + }, + }, + { + name: 'suppressContentEditableWarning', + propType: 'bool', + }, + { + name: 'suppressHydrationWarning', + propType: 'bool', + }, + { + name: 'accessKey', + propType: 'string', + }, + { + name: 'contentEditable', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + 'inherit', + ], + }, + ], + }, + }, + { + name: 'contextMenu', + propType: 'string', + }, + { + name: 'dir', + propType: 'string', + }, + { + name: 'draggable', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, + ], + }, + }, + { + name: 'hidden', + propType: 'bool', + }, + { + name: 'id', + propType: 'string', + }, + { + name: 'lang', + propType: 'string', + }, + { + name: 'placeholder', + propType: 'string', + }, + { + name: 'slot', + propType: 'string', + }, + { + name: 'spellCheck', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, + ], + }, + }, + { + name: 'tabIndex', + propType: 'number', + }, + { + name: 'title', + propType: 'string', + }, + { + name: 'translate', + propType: { + type: 'oneOf', + value: [ + 'yes', + 'no', + ], + }, + }, + { + name: 'radioGroup', + propType: 'string', + }, + { + name: 'role', + propType: 'string', + }, + { + name: 'about', + propType: 'string', + }, + { + name: 'datatype', + propType: 'string', + }, + { + name: 'inlist', + propType: 'any', + }, + { + name: 'prefix', + propType: 'string', + }, + { + name: 'property', + propType: 'string', + }, + { + name: 'resource', + propType: 'string', + }, + { + name: 'typeof', + propType: 'string', + }, + { + name: 'vocab', + propType: 'string', + }, + { + name: 'autoCapitalize', + propType: 'string', + }, + { + name: 'autoCorrect', + propType: 'string', + }, + { + name: 'autoSave', + propType: 'string', + }, + { + name: 'color', + propType: 'string', + }, + { + name: 'itemProp', + propType: 'string', + }, + { + name: 'itemScope', + propType: 'bool', + }, + { + name: 'itemType', + propType: 'string', + }, + { + name: 'itemID', + propType: 'string', + }, + { + name: 'itemRef', + propType: 'string', + }, + { + name: 'results', + propType: 'number', + }, + { + name: 'security', + propType: 'string', + }, + { + name: 'unselectable', + propType: { + type: 'oneOf', + value: [ + 'off', + 'on', + ], + }, + }, + { + description: 'Hints at the type of data that might be entered by the user while editing the element or its contents', + name: 'inputMode', + propType: { + type: 'oneOf', + value: [ + 'none', + 'text', + 'tel', + 'url', + 'email', + 'numeric', + 'decimal', + 'search', + ], + }, + }, + { + description: 'Specify that a standard HTML element should behave like a defined custom built-in element', + name: 'is', + propType: 'string', + }, + { + name: 'dangerouslySetInnerHTML', + propType: { + type: 'shape', + value: [ + { + name: '__html', + propType: 'string', + }, + ], + }, + }, + { + name: 'onCopy', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCopyCapture', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCut', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCutCapture', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPaste', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPasteCapture', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionEnd', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionEndCapture', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionStart', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionStartCapture', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionUpdate', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCompositionUpdateCapture', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onFocus', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onFocusCapture', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBlur', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBlurCapture', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onChange', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onChangeCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBeforeInput', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onBeforeInputCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInput', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInputCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onReset', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onResetCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSubmit', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSubmitCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInvalid', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onInvalidCapture', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoad', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onError', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onErrorCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyDown', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyDownCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyPress', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyPressCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyUp', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onKeyUpCapture', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAbort', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAbortCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlay', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayThrough', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onCanPlayThroughCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDurationChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDurationChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEmptied', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEmptiedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEncrypted', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEncryptedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEnded', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onEndedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedData', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedDataCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedMetadata', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadedMetadataCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadStart', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLoadStartCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPause', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPauseCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlay', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlayCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlaying', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPlayingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onProgress', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onProgressCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onRateChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onRateChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeeked', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeekedCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeeking', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSeekingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onStalled', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onStalledCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSuspend', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSuspendCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTimeUpdate', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTimeUpdateCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onVolumeChange', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onVolumeChangeCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWaiting', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWaitingCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAuxClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAuxClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onContextMenu', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onContextMenuCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDoubleClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDoubleClickCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDrag', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnd', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEndCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnter', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragEnterCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragExit', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragExitCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragLeave', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragLeaveCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragOver', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragOverCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragStart', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDragStartCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDrop', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onDropCapture', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseDown', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseDownCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseEnter', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseLeave', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseMove', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseMoveCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOut', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOutCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOver', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseOverCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseUp', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseUpCapture', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSelect', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onSelectCapture', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchCancel', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchCancelCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchEnd', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchEndCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchMove', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchMoveCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchStart', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTouchStartCapture', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerDown', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerDownCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerMove', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerMoveCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerUp', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerUpCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerCancel', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerCancelCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerEnter', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerEnterCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerLeave', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerLeaveCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOver', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOverCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOut', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onPointerOutCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onGotPointerCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onGotPointerCaptureCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLostPointerCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onLostPointerCaptureCapture', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onScroll', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onScrollCapture', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWheel', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onWheelCapture', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationStart', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationStartCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationEnd', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationEndCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationIteration', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onAnimationIterationCapture', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTransitionEnd', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onTransitionEndCapture', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, ], screenshot: '', @@ -49409,19 +67640,102 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onClick', - propType: 'func', + propType: { + raw: '(param: ClickParam) => void', + type: 'func', + value: [ + { + name: 'param', + propType: { + type: 'shape', + value: [ + { + name: 'key', + propType: 'string', + }, + { + name: 'keyPath', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + { + name: 'item', + propType: 'any', + }, + { + name: 'domEvent', + propType: 'object', + }, + ], + }, + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(e: { key: string; domEvent: MouseEvent; }) => void', + type: 'func', + value: [ + { + name: 'e', + propType: { + type: 'shape', + value: [ + { + name: 'key', + propType: 'string', + }, + { + name: 'domEvent', + propType: 'object', + }, + ], + }, + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', + propType: { + raw: '(e: { key: string; domEvent: MouseEvent; }) => void', + type: 'func', + value: [ + { + name: 'e', + propType: { + type: 'shape', + value: [ + { + name: 'key', + propType: 'string', + }, + { + name: 'domEvent', + propType: 'object', + }, + ], + }, + }, + ], + }, }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'id', @@ -49436,14 +67750,7 @@ Generated by [AVA](https://avajs.dev). 'number', { type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, ], }, @@ -49458,474 +67765,94 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onKeyUp', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDown', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelect', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDown', - propType: 'func', - }, - { - description: 'Identifies the currently active element when DOM focus is on a composite widget, textbox, group, or application.', - name: 'aria-activedescendant', - propType: 'string', - }, - { - description: 'Indicates whether assistive technologies will present all, or only parts of, the changed region based on the change notifications defined by the aria-relevant attribute.', - name: 'aria-atomic', propType: { - type: 'oneOfType', + raw: '(event: MouseEvent) => void', + type: 'func', value: [ - false, - true, - 'false', - 'true', + { + name: 'event', + propType: 'object', + }, ], }, }, - { - description: 'Indicates whether inputting text could trigger display of one or more predictions of the user\'s intended value for an input and specifies how predictions would be', - name: 'aria-autocomplete', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'inline', - 'list', - 'both', - ], - }, - }, - { - description: 'Indicates an element is being modified and that assistive technologies MAY want to wait until the modifications are complete before exposing them to the user.', - name: 'aria-busy', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the current "checked" state of checkboxes, radio buttons, and other widgets.', - name: 'aria-checked', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Defines the total number of columns in a table, grid, or treegrid.', - name: 'aria-colcount', - propType: 'number', - }, - { - description: 'Defines an element\'s column index or position with respect to the total number of columns within a table, grid, or treegrid.', - name: 'aria-colindex', - propType: 'number', - }, - { - description: 'Defines the number of columns spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-colspan', - propType: 'number', - }, - { - description: 'Identifies the element (or elements) whose contents or presence are controlled by the current element.', - name: 'aria-controls', - propType: 'string', - }, - { - description: 'Indicates the element that represents the current item within a container or set of related elements.', - name: 'aria-current', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'page', - 'step', - 'location', - 'date', - 'time', - ], - }, - }, - { - description: 'Identifies the element (or elements) that describes the object.', - name: 'aria-describedby', - propType: 'string', - }, - { - description: 'Identifies the element that provides a detailed, extended description for the object.', - name: 'aria-details', - propType: 'string', - }, - { - description: 'Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.', - name: 'aria-disabled', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what functions can be performed when a dragged object is released on the drop target.', - name: 'aria-dropeffect', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'copy', - 'execute', - 'link', - 'move', - 'popup', - ], - }, - }, - { - description: 'Identifies the element that provides an error message for the object.', - name: 'aria-errormessage', - propType: 'string', - }, - { - description: 'Indicates whether the element, or another grouping element it controls, is currently expanded or collapsed.', - name: 'aria-expanded', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Identifies the next element (or elements) in an alternate reading order of content which, at the user\'s discretion,', - name: 'aria-flowto', - propType: 'string', - }, - { - description: 'Indicates an element\'s "grabbed" state in a drag-and-drop operation.', - name: 'aria-grabbed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.', - name: 'aria-haspopup', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'menu', - 'listbox', - 'tree', - 'grid', - 'dialog', - ], - }, - }, - { - description: 'Indicates whether the element is exposed to an accessibility API.', - name: 'aria-hidden', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates the entered value does not conform to the format expected by the application.', - name: 'aria-invalid', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'grammar', - 'spelling', - ], - }, - }, - { - description: 'Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.', - name: 'aria-keyshortcuts', - propType: 'string', - }, - { - description: 'Defines a string value that labels the current element.', - name: 'aria-label', - propType: 'string', - }, - { - description: 'Identifies the element (or elements) that labels the current element.', - name: 'aria-labelledby', - propType: 'string', - }, - { - description: 'Defines the hierarchical level of an element within a structure.', - name: 'aria-level', - propType: 'number', - }, - { - description: 'Indicates that an element will be updated, and describes the types of updates the user agents, assistive technologies, and user can expect from the live region.', - name: 'aria-live', - propType: { - type: 'oneOfType', - value: [ - 'off', - 'assertive', - 'polite', - ], - }, - }, - { - description: 'Indicates whether an element is modal when displayed.', - name: 'aria-modal', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether a text box accepts multiple lines of input or only a single line.', - name: 'aria-multiline', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates that the user may select more than one item from the current selectable descendants.', - name: 'aria-multiselectable', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates whether the element\'s orientation is horizontal, vertical, or unknown/ambiguous.', - name: 'aria-orientation', - propType: { - type: 'oneOfType', - value: [ - 'horizontal', - 'vertical', - ], - }, - }, - { - description: 'Identifies an element (or elements) in order to define a visual, functional, or contextual parent/child relationship', - name: 'aria-owns', - propType: 'string', - }, - { - description: 'Defines a short hint (a word or short phrase) intended to aid the user with data entry when the control has no value.', - name: 'aria-placeholder', - propType: 'string', - }, - { - description: 'Defines an element\'s number or position in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-posinset', - propType: 'number', - }, - { - description: 'Indicates the current "pressed" state of toggle buttons.', - name: 'aria-pressed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - 'mixed', - ], - }, - }, - { - description: 'Indicates that the element is not editable, but is otherwise operable.', - name: 'aria-readonly', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.', - name: 'aria-relevant', - propType: { - type: 'oneOfType', - value: [ - 'additions', - 'additions removals', - 'additions text', - 'all', - 'removals', - 'removals additions', - 'removals text', - 'text', - 'text additions', - 'text removals', - ], - }, - }, - { - description: 'Indicates that user input is required on the element before a form may be submitted.', - name: 'aria-required', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines a human-readable, author-localized description for the role of an element.', - name: 'aria-roledescription', - propType: 'string', - }, - { - description: 'Defines the total number of rows in a table, grid, or treegrid.', - name: 'aria-rowcount', - propType: 'number', - }, - { - description: 'Defines an element\'s row index or position with respect to the total number of rows within a table, grid, or treegrid.', - name: 'aria-rowindex', - propType: 'number', - }, - { - description: 'Defines the number of rows spanned by a cell or gridcell within a table, grid, or treegrid.', - name: 'aria-rowspan', - propType: 'number', - }, - { - description: 'Indicates the current "selected" state of various widgets.', - name: 'aria-selected', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'false', - 'true', - ], - }, - }, - { - description: 'Defines the number of items in the current set of listitems or treeitems. Not required if all elements in the set are present in the DOM.', - name: 'aria-setsize', - propType: 'number', - }, - { - description: 'Indicates if items in a table or grid are sorted in ascending or descending order.', - name: 'aria-sort', - propType: { - type: 'oneOfType', - value: [ - 'none', - 'ascending', - 'descending', - 'other', - ], - }, - }, - { - description: 'Defines the maximum allowed value for a range widget.', - name: 'aria-valuemax', - propType: 'number', - }, - { - description: 'Defines the minimum allowed value for a range widget.', - name: 'aria-valuemin', - propType: 'number', - }, - { - description: 'Defines the current value for a range widget.', - name: 'aria-valuenow', - propType: 'number', - }, - { - description: 'Defines the human readable text alternative of aria-valuenow for a range widget.', - name: 'aria-valuetext', - propType: 'string', - }, { name: 'onError', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'color', @@ -49952,11 +67879,15 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', - 'inherit', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + 'inherit', + ], + }, ], }, }, @@ -49973,10 +67904,14 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, @@ -49997,17 +67932,21 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - false, - true, - 'false', - 'true', + 'bool', + { + type: 'oneOf', + value: [ + 'false', + 'true', + ], + }, ], }, }, { name: 'translate', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'yes', 'no', @@ -50097,7 +68036,7 @@ Generated by [AVA](https://avajs.dev). { name: 'unselectable', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'off', 'on', @@ -50108,7 +68047,7 @@ Generated by [AVA](https://avajs.dev). description: 'Hints at the type of data that might be entered by the user while editing the element or its contents', name: 'inputMode', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'none', 'text', @@ -50140,599 +68079,1940 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onCopy', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCopyCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCut', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCutCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPaste', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPasteCapture', - propType: 'func', + propType: { + raw: '(event: ClipboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEnd', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionEndCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStart', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionStartCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdate', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCompositionUpdateCapture', - propType: 'func', + propType: { + raw: '(event: CompositionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocusCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBlurCapture', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onChangeCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onBeforeInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInput', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInputCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onReset', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onResetCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmit', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSubmitCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalid', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onInvalidCapture', - propType: 'func', + propType: { + raw: '(event: FormEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoad', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onErrorCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyDownCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPress', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyPressCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onKeyUpCapture', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbort', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAbortCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThrough', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onCanPlayThroughCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDurationChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptied', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEmptiedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncrypted', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEncryptedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEnded', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onEndedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedData', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedDataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadata', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadedMetadataCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStart', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLoadStartCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPause', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPauseCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlay', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlaying', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPlayingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgress', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onProgressCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onRateChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeked', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekedCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeeking', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSeekingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalled', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onStalledCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspend', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSuspendCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdate', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTimeUpdateCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChange', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onVolumeChangeCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaiting', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWaitingCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAuxClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenu', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onContextMenuCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClick', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDoubleClickCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrag', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnd', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEndCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnter', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragEnterCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExit', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragExitCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeave', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragLeaveCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOver', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragOverCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStart', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDragStartCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDrop', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onDropCapture', - propType: 'func', + propType: { + raw: '(event: DragEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseDownCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMove', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseMoveCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOut', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOutCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOver', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseOverCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUp', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseUpCapture', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelectCapture', - propType: 'func', + propType: { + raw: '(event: SyntheticEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancel', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchCancelCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEnd', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchEndCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMove', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchMoveCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStart', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTouchStartCapture', - propType: 'func', + propType: { + raw: '(event: TouchEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDown', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerDownCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMove', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerMoveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUp', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerUpCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancel', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerCancelCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnter', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerEnterCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeave', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerLeaveCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOver', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOverCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOut', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onPointerOutCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onGotPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onLostPointerCaptureCapture', - propType: 'func', + propType: { + raw: '(event: PointerEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScroll', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onScrollCapture', - propType: 'func', + propType: { + raw: '(event: UIEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheel', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onWheelCapture', - propType: 'func', + propType: { + raw: '(event: WheelEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStart', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationStartCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEnd', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationEndCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIteration', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onAnimationIterationCapture', - propType: 'func', + propType: { + raw: '(event: AnimationEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEnd', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onTransitionEndCapture', - propType: 'func', + propType: { + raw: '(event: TransitionEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, ], screenshot: '', @@ -50773,25 +70053,82 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onTitleClick', - propType: 'func', + propType: { + raw: '(e: TitleEventEntity) => void', + type: 'func', + value: [ + { + name: 'e', + propType: { + type: 'shape', + value: [ + { + name: 'key', + propType: 'string', + }, + { + name: 'domEvent', + propType: 'object', + }, + ], + }, + }, + ], + }, }, { name: 'onTitleMouseEnter', - propType: 'func', + propType: { + raw: '(e: TitleEventEntity) => void', + type: 'func', + value: [ + { + name: 'e', + propType: { + type: 'shape', + value: [ + { + name: 'key', + propType: 'string', + }, + { + name: 'domEvent', + propType: 'object', + }, + ], + }, + }, + ], + }, }, { name: 'onTitleMouseLeave', - propType: 'func', + propType: { + raw: '(e: TitleEventEntity) => void', + type: 'func', + value: [ + { + name: 'e', + propType: { + type: 'shape', + value: [ + { + name: 'key', + propType: 'string', + }, + { + name: 'domEvent', + propType: 'object', + }, + ], + }, + }, + ], + }, }, { name: 'popupOffset', - propType: { - type: 'oneOfType', - value: [ - 'number', - 'number', - ], - }, + propType: 'object', }, { name: 'popupClassName', @@ -50802,60 +70139,20 @@ Generated by [AVA](https://avajs.dev). title: 'antd', }, { - componentName: 'Modal', + componentName: 'Statistic', devMode: 'proCode', docUrl: '', npm: { destructuring: true, - exportName: 'Modal', + exportName: 'Statistic', main: 'components/index.tsx', package: 'antd', - subName: 'info', + subName: 'Countdown', version: '4.1.4', }, props: [ { - name: 'prefixCls', - propType: 'string', - }, - { - name: 'className', - propType: 'string', - }, - { - name: 'visible', - propType: 'bool', - }, - { - name: 'title', - propType: 'node', - }, - { - name: 'content', - propType: 'node', - }, - { - name: 'onOk', - propType: 'func', - }, - { - name: 'onCancel', - propType: 'func', - }, - { - name: 'okButtonProps', - propType: 'any', - }, - { - name: 'cancelButtonProps', - propType: 'any', - }, - { - name: 'centered', - propType: 'bool', - }, - { - name: 'width', + name: 'value', propType: { type: 'oneOfType', value: [ @@ -50865,190 +70162,13 @@ Generated by [AVA](https://avajs.dev). }, }, { - name: 'okText', - propType: 'node', - }, - { - name: 'okType', - propType: { - type: 'oneOfType', - value: [ - 'link', - 'default', - 'ghost', - 'danger', - 'dashed', - 'primary', - ], - }, - }, - { - name: 'cancelText', - propType: 'node', - }, - { - name: 'icon', - propType: 'node', - }, - { - name: 'mask', - propType: 'bool', - }, - { - name: 'maskClosable', - propType: 'bool', - }, - { - name: 'zIndex', - propType: 'number', - }, - { - name: 'okCancel', - propType: 'bool', - }, - { - name: 'style', - propType: 'object', - }, - { - name: 'maskStyle', - propType: 'object', - }, - { - name: 'type', + name: 'format', propType: 'string', }, { - name: 'keyboard', - propType: 'bool', + name: 'onFinish', + propType: 'func', }, - { - name: 'getContainer', - propType: { - type: 'oneOfType', - value: [ - 'string', - false, - { - type: 'shape', - value: [ - { - name: 'accessKey', - propType: 'string', - }, - { - name: 'accessKeyLabel', - propType: 'string', - }, - { - name: 'autocapitalize', - propType: 'string', - }, - { - name: 'dir', - propType: 'string', - }, - { - name: 'draggable', - propType: 'bool', - }, - { - name: 'hidden', - propType: 'bool', - }, - { - name: 'innerText', - propType: 'string', - }, - { - name: 'lang', - propType: 'string', - }, - { - name: 'offsetHeight', - propType: 'number', - }, - { - name: 'offsetLeft', - propType: 'number', - }, - { - name: 'offsetParent', - propType: 'object', - }, - { - name: 'offsetTop', - propType: 'number', - }, - { - name: 'offsetWidth', - propType: 'number', - }, - { - name: 'spellcheck', - propType: 'bool', - }, - { - name: 'title', - propType: 'string', - }, - { - name: 'translate', - propType: 'bool', - }, - { - name: 'click', - propType: 'object', - }, - { - name: 'addEventListener', - propType: 'func', - }, - { - name: 'removeEventListener', - propType: 'func', - }, - ], - }, - 'any', - ], - }, - }, - { - name: 'autoFocusButton', - propType: { - type: 'oneOfType', - value: [ - 'cancel', - 'ok', - ], - }, - }, - { - name: 'transitionName', - propType: 'string', - }, - { - name: 'maskTransitionName', - propType: 'string', - }, - ], - screenshot: '', - title: 'antd', - }, - { - componentName: 'Modal', - devMode: 'proCode', - docUrl: '', - npm: { - destructuring: true, - exportName: 'Modal', - main: 'components/index.tsx', - package: 'antd', - subName: 'success', - version: '4.1.4', - }, - props: [ { name: 'prefixCls', propType: 'string', @@ -51058,1155 +70178,123 @@ Generated by [AVA](https://avajs.dev). propType: 'string', }, { - name: 'visible', - propType: 'bool', + name: 'style', + propType: 'object', + }, + { + name: 'valueStyle', + propType: 'object', + }, + { + name: 'valueRender', + propType: { + raw: '(node: ReactNode) => ReactNode', + type: 'func', + value: [ + { + name: 'node', + propType: 'node', + }, + ], + }, }, { name: 'title', propType: 'node', }, { - name: 'content', + name: 'prefix', propType: 'node', }, { - name: 'onOk', - propType: 'func', + name: 'suffix', + propType: 'node', }, { - name: 'onCancel', - propType: 'func', - }, - { - name: 'okButtonProps', - propType: 'any', - }, - { - name: 'cancelButtonProps', - propType: 'any', - }, - { - name: 'centered', - propType: 'bool', - }, - { - name: 'width', + name: 'formatter', propType: { type: 'oneOfType', value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'okText', - propType: 'node', - }, - { - name: 'okType', - propType: { - type: 'oneOfType', - value: [ - 'link', - 'default', - 'ghost', - 'danger', - 'dashed', - 'primary', - ], - }, - }, - { - name: 'cancelText', - propType: 'node', - }, - { - name: 'icon', - propType: 'node', - }, - { - name: 'mask', - propType: 'bool', - }, - { - name: 'maskClosable', - propType: 'bool', - }, - { - name: 'zIndex', - propType: 'number', - }, - { - name: 'okCancel', - propType: 'bool', - }, - { - name: 'style', - propType: 'object', - }, - { - name: 'maskStyle', - propType: 'object', - }, - { - name: 'type', - propType: 'string', - }, - { - name: 'keyboard', - propType: 'bool', - }, - { - name: 'getContainer', - propType: { - type: 'oneOfType', - value: [ - 'string', - false, { - type: 'shape', + raw: '(value: ReactText, config?: FormatConfig) => ReactNode', + type: 'func', value: [ { - name: 'accessKey', - propType: 'string', + name: 'value', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, }, { - name: 'accessKeyLabel', - propType: 'string', - }, - { - name: 'autocapitalize', - propType: 'string', - }, - { - name: 'dir', - propType: 'string', - }, - { - name: 'draggable', - propType: 'bool', - }, - { - name: 'hidden', - propType: 'bool', - }, - { - name: 'innerText', - propType: 'string', - }, - { - name: 'lang', - propType: 'string', - }, - { - name: 'offsetHeight', - propType: 'number', - }, - { - name: 'offsetLeft', - propType: 'number', - }, - { - name: 'offsetParent', - propType: 'object', - }, - { - name: 'offsetTop', - propType: 'number', - }, - { - name: 'offsetWidth', - propType: 'number', - }, - { - name: 'spellcheck', - propType: 'bool', - }, - { - name: 'title', - propType: 'string', - }, - { - name: 'translate', - propType: 'bool', - }, - { - name: 'click', - propType: 'object', - }, - { - name: 'addEventListener', - propType: 'func', - }, - { - name: 'removeEventListener', - propType: 'func', + name: 'config', + propType: { + type: 'shape', + value: [ + { + name: 'formatter', + propType: { + type: 'oneOfType', + value: [ + 'object', + { + type: 'oneOf', + value: [ + false, + 'number', + 'countdown', + ], + }, + ], + }, + }, + { + name: 'decimalSeparator', + propType: 'string', + }, + { + name: 'groupSeparator', + propType: 'string', + }, + { + name: 'precision', + propType: 'number', + }, + { + name: 'prefixCls', + propType: 'string', + }, + ], + }, }, ], }, - 'any', - ], - }, - }, - { - name: 'autoFocusButton', - propType: { - type: 'oneOfType', - value: [ - 'cancel', - 'ok', - ], - }, - }, - { - name: 'transitionName', - propType: 'string', - }, - { - name: 'maskTransitionName', - propType: 'string', - }, - ], - screenshot: '', - title: 'antd', - }, - { - componentName: 'Modal', - devMode: 'proCode', - docUrl: '', - npm: { - destructuring: true, - exportName: 'Modal', - main: 'components/index.tsx', - package: 'antd', - subName: 'error', - version: '4.1.4', - }, - props: [ - { - name: 'prefixCls', - propType: 'string', - }, - { - name: 'className', - propType: 'string', - }, - { - name: 'visible', - propType: 'bool', - }, - { - name: 'title', - propType: 'node', - }, - { - name: 'content', - propType: 'node', - }, - { - name: 'onOk', - propType: 'func', - }, - { - name: 'onCancel', - propType: 'func', - }, - { - name: 'okButtonProps', - propType: 'any', - }, - { - name: 'cancelButtonProps', - propType: 'any', - }, - { - name: 'centered', - propType: 'bool', - }, - { - name: 'width', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'okText', - propType: 'node', - }, - { - name: 'okType', - propType: { - type: 'oneOfType', - value: [ - 'link', - 'default', - 'ghost', - 'danger', - 'dashed', - 'primary', - ], - }, - }, - { - name: 'cancelText', - propType: 'node', - }, - { - name: 'icon', - propType: 'node', - }, - { - name: 'mask', - propType: 'bool', - }, - { - name: 'maskClosable', - propType: 'bool', - }, - { - name: 'zIndex', - propType: 'number', - }, - { - name: 'okCancel', - propType: 'bool', - }, - { - name: 'style', - propType: 'object', - }, - { - name: 'maskStyle', - propType: 'object', - }, - { - name: 'type', - propType: 'string', - }, - { - name: 'keyboard', - propType: 'bool', - }, - { - name: 'getContainer', - propType: { - type: 'oneOfType', - value: [ - 'string', - false, { - type: 'shape', + type: 'oneOf', value: [ - { - name: 'accessKey', - propType: 'string', - }, - { - name: 'accessKeyLabel', - propType: 'string', - }, - { - name: 'autocapitalize', - propType: 'string', - }, - { - name: 'dir', - propType: 'string', - }, - { - name: 'draggable', - propType: 'bool', - }, - { - name: 'hidden', - propType: 'bool', - }, - { - name: 'innerText', - propType: 'string', - }, - { - name: 'lang', - propType: 'string', - }, - { - name: 'offsetHeight', - propType: 'number', - }, - { - name: 'offsetLeft', - propType: 'number', - }, - { - name: 'offsetParent', - propType: 'object', - }, - { - name: 'offsetTop', - propType: 'number', - }, - { - name: 'offsetWidth', - propType: 'number', - }, - { - name: 'spellcheck', - propType: 'bool', - }, - { - name: 'title', - propType: 'string', - }, - { - name: 'translate', - propType: 'bool', - }, - { - name: 'click', - propType: 'object', - }, - { - name: 'addEventListener', - propType: 'func', - }, - { - name: 'removeEventListener', - propType: 'func', - }, + false, + 'number', + 'countdown', ], }, - 'any', ], }, }, { - name: 'autoFocusButton', - propType: { - type: 'oneOfType', - value: [ - 'cancel', - 'ok', - ], - }, - }, - { - name: 'transitionName', + name: 'decimalSeparator', propType: 'string', }, { - name: 'maskTransitionName', - propType: 'string', - }, - ], - screenshot: '', - title: 'antd', - }, - { - componentName: 'Modal', - devMode: 'proCode', - docUrl: '', - npm: { - destructuring: true, - exportName: 'Modal', - main: 'components/index.tsx', - package: 'antd', - subName: 'warn', - version: '4.1.4', - }, - props: [ - { - name: 'prefixCls', + name: 'groupSeparator', propType: 'string', }, { - name: 'className', - propType: 'string', - }, - { - name: 'visible', - propType: 'bool', - }, - { - name: 'title', - propType: 'node', - }, - { - name: 'content', - propType: 'node', - }, - { - name: 'onOk', - propType: 'func', - }, - { - name: 'onCancel', - propType: 'func', - }, - { - name: 'okButtonProps', - propType: 'any', - }, - { - name: 'cancelButtonProps', - propType: 'any', - }, - { - name: 'centered', - propType: 'bool', - }, - { - name: 'width', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'okText', - propType: 'node', - }, - { - name: 'okType', - propType: { - type: 'oneOfType', - value: [ - 'link', - 'default', - 'ghost', - 'danger', - 'dashed', - 'primary', - ], - }, - }, - { - name: 'cancelText', - propType: 'node', - }, - { - name: 'icon', - propType: 'node', - }, - { - name: 'mask', - propType: 'bool', - }, - { - name: 'maskClosable', - propType: 'bool', - }, - { - name: 'zIndex', + name: 'precision', propType: 'number', }, - { - name: 'okCancel', - propType: 'bool', - }, - { - name: 'style', - propType: 'object', - }, - { - name: 'maskStyle', - propType: 'object', - }, - { - name: 'type', - propType: 'string', - }, - { - name: 'keyboard', - propType: 'bool', - }, - { - name: 'getContainer', - propType: { - type: 'oneOfType', - value: [ - 'string', - false, - { - type: 'shape', - value: [ - { - name: 'accessKey', - propType: 'string', - }, - { - name: 'accessKeyLabel', - propType: 'string', - }, - { - name: 'autocapitalize', - propType: 'string', - }, - { - name: 'dir', - propType: 'string', - }, - { - name: 'draggable', - propType: 'bool', - }, - { - name: 'hidden', - propType: 'bool', - }, - { - name: 'innerText', - propType: 'string', - }, - { - name: 'lang', - propType: 'string', - }, - { - name: 'offsetHeight', - propType: 'number', - }, - { - name: 'offsetLeft', - propType: 'number', - }, - { - name: 'offsetParent', - propType: 'object', - }, - { - name: 'offsetTop', - propType: 'number', - }, - { - name: 'offsetWidth', - propType: 'number', - }, - { - name: 'spellcheck', - propType: 'bool', - }, - { - name: 'title', - propType: 'string', - }, - { - name: 'translate', - propType: 'bool', - }, - { - name: 'click', - propType: 'object', - }, - { - name: 'addEventListener', - propType: 'func', - }, - { - name: 'removeEventListener', - propType: 'func', - }, - ], - }, - 'any', - ], - }, - }, - { - name: 'autoFocusButton', - propType: { - type: 'oneOfType', - value: [ - 'cancel', - 'ok', - ], - }, - }, - { - name: 'transitionName', - propType: 'string', - }, - { - name: 'maskTransitionName', - propType: 'string', - }, - ], - screenshot: '', - title: 'antd', - }, - { - componentName: 'Modal', - devMode: 'proCode', - docUrl: '', - npm: { - destructuring: true, - exportName: 'Modal', - main: 'components/index.tsx', - package: 'antd', - subName: 'warning', - version: '4.1.4', - }, - props: [ - { - name: 'prefixCls', - propType: 'string', - }, - { - name: 'className', - propType: 'string', - }, - { - name: 'visible', - propType: 'bool', - }, - { - name: 'title', - propType: 'node', - }, - { - name: 'content', - propType: 'node', - }, - { - name: 'onOk', - propType: 'func', - }, - { - name: 'onCancel', - propType: 'func', - }, - { - name: 'okButtonProps', - propType: 'any', - }, - { - name: 'cancelButtonProps', - propType: 'any', - }, - { - name: 'centered', - propType: 'bool', - }, - { - name: 'width', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'okText', - propType: 'node', - }, - { - name: 'okType', - propType: { - type: 'oneOfType', - value: [ - 'link', - 'default', - 'ghost', - 'danger', - 'dashed', - 'primary', - ], - }, - }, - { - name: 'cancelText', - propType: 'node', - }, - { - name: 'icon', - propType: 'node', - }, - { - name: 'mask', - propType: 'bool', - }, - { - name: 'maskClosable', - propType: 'bool', - }, - { - name: 'zIndex', - propType: 'number', - }, - { - name: 'okCancel', - propType: 'bool', - }, - { - name: 'style', - propType: 'object', - }, - { - name: 'maskStyle', - propType: 'object', - }, - { - name: 'type', - propType: 'string', - }, - { - name: 'keyboard', - propType: 'bool', - }, - { - name: 'getContainer', - propType: { - type: 'oneOfType', - value: [ - 'string', - false, - { - type: 'shape', - value: [ - { - name: 'accessKey', - propType: 'string', - }, - { - name: 'accessKeyLabel', - propType: 'string', - }, - { - name: 'autocapitalize', - propType: 'string', - }, - { - name: 'dir', - propType: 'string', - }, - { - name: 'draggable', - propType: 'bool', - }, - { - name: 'hidden', - propType: 'bool', - }, - { - name: 'innerText', - propType: 'string', - }, - { - name: 'lang', - propType: 'string', - }, - { - name: 'offsetHeight', - propType: 'number', - }, - { - name: 'offsetLeft', - propType: 'number', - }, - { - name: 'offsetParent', - propType: 'object', - }, - { - name: 'offsetTop', - propType: 'number', - }, - { - name: 'offsetWidth', - propType: 'number', - }, - { - name: 'spellcheck', - propType: 'bool', - }, - { - name: 'title', - propType: 'string', - }, - { - name: 'translate', - propType: 'bool', - }, - { - name: 'click', - propType: 'object', - }, - { - name: 'addEventListener', - propType: 'func', - }, - { - name: 'removeEventListener', - propType: 'func', - }, - ], - }, - 'any', - ], - }, - }, - { - name: 'autoFocusButton', - propType: { - type: 'oneOfType', - value: [ - 'cancel', - 'ok', - ], - }, - }, - { - name: 'transitionName', - propType: 'string', - }, - { - name: 'maskTransitionName', - propType: 'string', - }, - ], - screenshot: '', - title: 'antd', - }, - { - componentName: 'Modal', - devMode: 'proCode', - docUrl: '', - npm: { - destructuring: true, - exportName: 'Modal', - main: 'components/index.tsx', - package: 'antd', - subName: 'confirm', - version: '4.1.4', - }, - props: [ - { - name: 'prefixCls', - propType: 'string', - }, - { - name: 'className', - propType: 'string', - }, - { - name: 'visible', - propType: 'bool', - }, - { - name: 'title', - propType: 'node', - }, - { - name: 'content', - propType: 'node', - }, - { - name: 'onOk', - propType: 'func', - }, - { - name: 'onCancel', - propType: 'func', - }, - { - name: 'okButtonProps', - propType: 'any', - }, - { - name: 'cancelButtonProps', - propType: 'any', - }, - { - name: 'centered', - propType: 'bool', - }, - { - name: 'width', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'okText', - propType: 'node', - }, - { - name: 'okType', - propType: { - type: 'oneOfType', - value: [ - 'link', - 'default', - 'ghost', - 'danger', - 'dashed', - 'primary', - ], - }, - }, - { - name: 'cancelText', - propType: 'node', - }, - { - name: 'icon', - propType: 'node', - }, - { - name: 'mask', - propType: 'bool', - }, - { - name: 'maskClosable', - propType: 'bool', - }, - { - name: 'zIndex', - propType: 'number', - }, - { - name: 'okCancel', - propType: 'bool', - }, - { - name: 'style', - propType: 'object', - }, - { - name: 'maskStyle', - propType: 'object', - }, - { - name: 'type', - propType: 'string', - }, - { - name: 'keyboard', - propType: 'bool', - }, - { - name: 'getContainer', - propType: { - type: 'oneOfType', - value: [ - 'string', - false, - { - type: 'shape', - value: [ - { - name: 'accessKey', - propType: 'string', - }, - { - name: 'accessKeyLabel', - propType: 'string', - }, - { - name: 'autocapitalize', - propType: 'string', - }, - { - name: 'dir', - propType: 'string', - }, - { - name: 'draggable', - propType: 'bool', - }, - { - name: 'hidden', - propType: 'bool', - }, - { - name: 'innerText', - propType: 'string', - }, - { - name: 'lang', - propType: 'string', - }, - { - name: 'offsetHeight', - propType: 'number', - }, - { - name: 'offsetLeft', - propType: 'number', - }, - { - name: 'offsetParent', - propType: 'object', - }, - { - name: 'offsetTop', - propType: 'number', - }, - { - name: 'offsetWidth', - propType: 'number', - }, - { - name: 'spellcheck', - propType: 'bool', - }, - { - name: 'title', - propType: 'string', - }, - { - name: 'translate', - propType: 'bool', - }, - { - name: 'click', - propType: 'object', - }, - { - name: 'addEventListener', - propType: 'func', - }, - { - name: 'removeEventListener', - propType: 'func', - }, - ], - }, - 'any', - ], - }, - }, - { - name: 'autoFocusButton', - propType: { - type: 'oneOfType', - value: [ - 'cancel', - 'ok', - ], - }, - }, - { - name: 'transitionName', - propType: 'string', - }, - { - name: 'maskTransitionName', - propType: 'string', - }, ], screenshot: '', title: 'antd', @@ -52234,12 +70322,49 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(e: RadioChangeEvent) => void', + type: 'func', + value: [ + { + name: 'e', + propType: { + type: 'shape', + value: [ + { + name: 'target', + propType: { + type: 'shape', + value: [ + { + name: 'checked', + propType: 'bool', + }, + ], + }, + }, + { + name: 'stopPropagation', + propType: 'func', + }, + { + name: 'preventDefault', + propType: 'func', + }, + { + name: 'nativeEvent', + propType: 'object', + }, + ], + }, + }, + ], + }, }, { name: 'size', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'small', 'middle', @@ -52249,11 +70374,29 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'name', @@ -52266,7 +70409,7 @@ Generated by [AVA](https://avajs.dev). { name: 'buttonStyle', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'outline', 'solid', @@ -52303,8 +70446,7 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', ], }, }, @@ -52318,7 +70460,44 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onChange', - propType: 'object', + propType: { + raw: '(e: CheckboxChangeEvent) => void', + type: 'func', + value: [ + { + name: 'e', + propType: { + type: 'shape', + value: [ + { + name: 'target', + propType: { + type: 'shape', + value: [ + { + name: 'checked', + propType: 'bool', + }, + ], + }, + }, + { + name: 'stopPropagation', + propType: 'func', + }, + { + name: 'preventDefault', + propType: 'func', + }, + { + name: 'nativeEvent', + propType: 'object', + }, + ], + }, + }, + ], + }, }, ], }, @@ -52338,1787 +70517,6 @@ Generated by [AVA](https://avajs.dev). screenshot: '', title: 'antd', }, - { - componentName: 'Skeleton', - devMode: 'proCode', - docUrl: '', - npm: { - destructuring: true, - exportName: 'Skeleton', - main: 'components/index.tsx', - package: 'antd', - subName: 'Button', - version: '4.1.4', - }, - props: [ - { - name: 'size', - propType: { - type: 'oneOfType', - value: [ - 'small', - 'large', - 'default', - ], - }, - }, - { - name: 'style', - propType: 'object', - }, - { - name: 'prefixCls', - propType: 'string', - }, - { - name: 'className', - propType: 'string', - }, - { - name: 'shape', - propType: { - type: 'oneOfType', - value: [ - 'circle', - 'square', - 'round', - ], - }, - }, - { - name: 'active', - propType: 'bool', - }, - ], - screenshot: '', - title: 'antd', - }, - { - componentName: 'Skeleton', - devMode: 'proCode', - docUrl: '', - npm: { - destructuring: true, - exportName: 'Skeleton', - main: 'components/index.tsx', - package: 'antd', - subName: 'Avatar', - version: '4.1.4', - }, - props: [ - { - name: 'shape', - propType: { - type: 'oneOfType', - value: [ - 'circle', - 'square', - ], - }, - }, - { - name: 'style', - propType: 'object', - }, - { - name: 'prefixCls', - propType: 'string', - }, - { - name: 'className', - propType: 'string', - }, - { - name: 'size', - propType: { - type: 'oneOfType', - value: [ - 'number', - 'small', - 'large', - 'default', - ], - }, - }, - { - name: 'active', - propType: 'bool', - }, - ], - screenshot: '', - title: 'antd', - }, - { - componentName: 'Skeleton', - devMode: 'proCode', - docUrl: '', - npm: { - destructuring: true, - exportName: 'Skeleton', - main: 'components/index.tsx', - package: 'antd', - subName: 'Input', - version: '4.1.4', - }, - props: [ - { - name: 'size', - propType: { - type: 'oneOfType', - value: [ - 'small', - 'large', - 'default', - ], - }, - }, - { - name: 'style', - propType: 'object', - }, - { - name: 'prefixCls', - propType: 'string', - }, - { - name: 'className', - propType: 'string', - }, - { - name: 'active', - propType: 'bool', - }, - ], - screenshot: '', - title: 'antd', - }, - { - componentName: 'Spin', - devMode: 'proCode', - docUrl: '', - npm: { - destructuring: true, - exportName: 'Spin', - main: 'components/index.tsx', - package: 'antd', - subName: 'setDefaultIndicator', - version: '4.1.4', - }, - props: [ - { - description: 'Returns a string representation of a string.', - name: 'toString', - propType: { - type: 'oneOfType', - value: [ - 'object', - 'object', - 'object', - 'func', - ], - }, - }, - { - description: 'Returns the character at the specified index.', - name: 'charAt', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns the Unicode value of the character at the specified location.', - name: 'charCodeAt', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns a string that contains the concatenation of two or more strings.', - name: 'concat', - propType: { - isRequired: true, - type: 'oneOfType', - value: [ - 'func', - 'func', - ], - }, - }, - { - description: 'Returns the position of the first occurrence of a substring.', - name: 'indexOf', - propType: { - isRequired: true, - type: 'oneOfType', - value: [ - 'func', - 'func', - ], - }, - }, - { - description: 'Returns the last occurrence of a substring in the string.', - name: 'lastIndexOf', - propType: { - isRequired: true, - type: 'oneOfType', - value: [ - 'func', - 'func', - ], - }, - }, - { - description: 'Determines whether two strings are equivalent in the current locale.', - name: 'localeCompare', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Matches a string with a regular expression, and returns an array containing the results of that search.', - name: 'match', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Replaces text in a string, using a regular expression or search string.', - name: 'replace', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Finds the first substring match in a regular expression search.', - name: 'search', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns a section of a string.', - name: 'slice', - propType: { - isRequired: true, - type: 'oneOfType', - value: [ - 'func', - 'func', - ], - }, - }, - { - description: 'Split a string into substrings using the specified separator and return them as an array.', - name: 'split', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns the substring at the specified location within a String object.', - name: 'substring', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Converts all the alphabetic characters in a string to lowercase.', - name: 'toLowerCase', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Converts all alphabetic characters to lowercase, taking into account the host environment\'s current locale.', - name: 'toLocaleLowerCase', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Converts all the alphabetic characters in a string to uppercase.', - name: 'toUpperCase', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Returns a string where all alphabetic characters have been converted to uppercase, taking into account the host environment\'s current locale.', - name: 'toLocaleUpperCase', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Removes the leading and trailing white space and line terminator characters from a string.', - name: 'trim', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Returns the length of a String object.', - name: 'length', - propType: { - isRequired: true, - type: 'number', - }, - }, - { - description: 'Gets a substring beginning at the specified location and having the specified length.', - name: 'substr', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns the primitive value of the specified object.', - name: 'valueOf', - propType: { - type: 'oneOfType', - value: [ - 'object', - 'object', - 'object', - 'object', - ], - }, - }, - { - description: 'Returns a nonnegative integer Number less than 1114112 (0x110000) that is the code point', - name: 'codePointAt', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns true if searchString appears as a substring of the result of converting this', - name: 'includes', - propType: { - isRequired: true, - type: 'oneOfType', - value: [ - 'func', - 'func', - ], - }, - }, - { - description: 'Returns true if the sequence of elements of searchString converted to a String is the', - name: 'endsWith', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns the String value result of normalizing the string into the normalization form', - name: 'normalize', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns a String value that is made from count copies appended together. If count is 0,', - name: 'repeat', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns true if the sequence of elements of searchString converted to a String is the', - name: 'startsWith', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns an HTML anchor element and sets the name attribute to the text value', - name: 'anchor', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns a HTML element', - name: 'big', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Returns a HTML element', - name: 'blink', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Returns a HTML element', - name: 'bold', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Returns a HTML element', - name: 'fixed', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Returns a HTML element and sets the color attribute value', - name: 'fontcolor', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns a HTML element and sets the size attribute value', - name: 'fontsize', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns an HTML element', - name: 'italics', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Returns an HTML element and sets the href attribute value', - name: 'link', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns a HTML element', - name: 'small', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Returns a HTML element', - name: 'strike', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Returns a HTML element', - name: 'sub', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Returns a HTML element', - name: 'sup', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Iterator', - name: '__@iterator', - propType: { - isRequired: true, - type: 'oneOfType', - value: [ - 'object', - 'object', - ], - }, - }, - { - description: 'Pads the current string with a given string (possibly repeated) so that the resulting string reaches a given length.', - name: 'padStart', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Pads the current string with a given string (possibly repeated) so that the resulting string reaches a given length.', - name: 'padEnd', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Removes the trailing white space and line terminator characters from a string.', - name: 'trimEnd', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Removes the leading white space and line terminator characters from a string.', - name: 'trimStart', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Removes the leading white space and line terminator characters from a string.', - name: 'trimLeft', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Removes the trailing white space and line terminator characters from a string.', - name: 'trimRight', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Matches a string with a regular expression, and returns an iterable of matches', - name: 'matchAll', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Replace all instances of a substring in a string, using a regular expression or search string.', - name: 'replaceAll', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns a string representing a number in fixed-point notation.', - name: 'toFixed', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns a string containing a number represented in exponential notation.', - name: 'toExponential', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns a string containing a number represented either in exponential or fixed-point notation with a specified number of digits.', - name: 'toPrecision', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns a date converted to a string using the current locale.', - name: 'toLocaleString', - propType: { - type: 'oneOfType', - value: [ - 'object', - 'object', - 'func', - ], - }, - }, - { - name: 'type', - propType: { - isRequired: true, - type: 'oneOfType', - value: [ - 'string', - 'func', - { - type: 'shape', - value: [ - { - name: '__new', - propType: 'any', - }, - ], - }, - ], - }, - }, - { - name: 'props', - propType: { - isRequired: true, - type: 'any', - }, - }, - { - name: 'key', - propType: { - isRequired: true, - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - description: 'Removes the last element from an array and returns it.', - name: 'pop', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Appends new elements to an array, and returns the new length of the array.', - name: 'push', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Adds all the elements of an array separated by the specified separator string.', - name: 'join', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Reverses the elements in an Array.', - name: 'reverse', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Removes the first element from an array and returns it.', - name: 'shift', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Sorts an array.', - name: 'sort', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Removes elements from an array and, if necessary, inserts new elements in their place, returning the deleted elements.', - name: 'splice', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Inserts new elements at the start of an array.', - name: 'unshift', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Determines whether all the members of an array satisfy the specified test.', - name: 'every', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Determines whether the specified callback function returns true for any element of an array.', - name: 'some', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Performs the specified action for each element in an array.', - name: 'forEach', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Calls a defined callback function on each element of an array, and returns an array that contains the results.', - name: 'map', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns the elements of an array that meet the condition specified in a callback function.', - name: 'filter', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Calls the specified callback function for all the elements in an array. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.', - name: 'reduce', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Calls the specified callback function for all the elements in an array, in descending order. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.', - name: 'reduceRight', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns the value of the first element in the array where predicate is true, and undefined', - name: 'find', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns the index of the first element in the array where predicate is true, and -1', - name: 'findIndex', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns the this object after filling the section identified by start and end with value', - name: 'fill', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns the this object after copying a section of the array identified by start and end', - name: 'copyWithin', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns an iterable of key, value pairs for every entry in the array', - name: 'entries', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Returns an iterable of keys in the array', - name: 'keys', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Returns an iterable of values in the array', - name: 'values', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Returns an object whose properties have the value \'true\'', - name: '__@unscopables', - propType: { - isRequired: true, - type: 'object', - }, - }, - { - description: 'Calls a defined callback function on each element of an array. Then, flattens the result into', - name: 'flatMap', - propType: { - isRequired: true, - type: 'func', - }, - }, - { - description: 'Returns a new array with all sub-array elements concatenated into it recursively up to the', - name: 'flat', - propType: { - isRequired: true, - type: 'func', - }, - }, - ], - screenshot: '', - title: 'antd', - }, - { - componentName: 'Table', - devMode: 'proCode', - docUrl: '', - npm: { - destructuring: true, - exportName: 'Table', - main: 'components/index.tsx', - package: 'antd', - subName: 'Column', - version: '4.1.4', - }, - props: [ - { - name: 'title', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - false, - true, - 'object', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', - ], - }, - }, - { - name: 'sorter', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'any', - { - type: 'shape', - value: [ - { - name: 'compare', - propType: 'any', - }, - { - name: 'multiple', - propType: 'number', - }, - ], - }, - ], - }, - }, - { - name: 'sortOrder', - propType: { - type: 'oneOfType', - value: [ - 'descend', - 'ascend', - ], - }, - }, - { - name: 'defaultSortOrder', - propType: { - type: 'oneOfType', - value: [ - 'descend', - 'ascend', - ], - }, - }, - { - name: 'sortDirections', - propType: { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - 'descend', - 'ascend', - ], - }, - }, - }, - { - name: 'showSorterTooltip', - propType: 'bool', - }, - { - name: 'filtered', - propType: 'bool', - }, - { - name: 'filters', - propType: { - type: 'arrayOf', - value: { - type: 'shape', - value: [ - { - name: 'text', - propType: 'node', - }, - { - name: 'value', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - false, - true, - ], - }, - }, - { - name: 'children', - propType: 'any', - }, - ], - }, - }, - }, - { - name: 'filterDropdown', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - false, - true, - 'object', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', - ], - }, - }, - { - name: 'filterMultiple', - propType: 'bool', - }, - { - name: 'filteredValue', - propType: { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - }, - { - name: 'defaultFilteredValue', - propType: { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - }, - { - name: 'filterIcon', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - false, - true, - 'object', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', - ], - }, - }, - { - name: 'onFilter', - propType: 'func', - }, - { - name: 'filterDropdownVisible', - propType: 'bool', - }, - { - name: 'onFilterDropdownVisibleChange', - propType: 'func', - }, - { - name: 'colSpan', - propType: 'number', - }, - { - name: 'dataIndex', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - }, - { - name: 'render', - propType: 'func', - }, - { - name: 'rowSpan', - propType: 'number', - }, - { - name: 'width', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'onCell', - propType: 'any', - }, - { - description: '@deprecated Please use `onCell` instead', - name: 'onCellClick', - propType: 'func', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'className', - propType: 'string', - }, - { - name: 'fixed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'right', - 'left', - ], - }, - }, - { - name: 'onHeaderCell', - propType: 'any', - }, - { - name: 'ellipsis', - propType: 'bool', - }, - { - name: 'align', - propType: { - type: 'oneOfType', - value: [ - 'right', - 'left', - 'center', - ], - }, - }, - ], - screenshot: '', - title: 'antd', - }, - { - componentName: 'Table', - devMode: 'proCode', - docUrl: '', - npm: { - destructuring: true, - exportName: 'Table', - main: 'components/index.tsx', - package: 'antd', - subName: 'ColumnGroup', - version: '4.1.4', - }, - props: [ - { - name: 'className', - propType: 'string', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'title', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - false, - true, - 'object', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', - ], - }, - }, - { - name: 'align', - propType: { - type: 'oneOfType', - value: [ - 'right', - 'left', - 'center', - ], - }, - }, - { - name: 'width', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'dataIndex', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - }, - { - name: 'sorter', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'any', - { - type: 'shape', - value: [ - { - name: 'compare', - propType: 'any', - }, - { - name: 'multiple', - propType: 'number', - }, - ], - }, - ], - }, - }, - { - name: 'sortOrder', - propType: { - type: 'oneOfType', - value: [ - 'descend', - 'ascend', - ], - }, - }, - { - name: 'defaultSortOrder', - propType: { - type: 'oneOfType', - value: [ - 'descend', - 'ascend', - ], - }, - }, - { - name: 'sortDirections', - propType: { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - 'descend', - 'ascend', - ], - }, - }, - }, - { - name: 'showSorterTooltip', - propType: 'bool', - }, - { - name: 'filtered', - propType: 'bool', - }, - { - name: 'filters', - propType: { - type: 'arrayOf', - value: { - type: 'shape', - value: [ - { - name: 'text', - propType: 'node', - }, - { - name: 'value', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - false, - true, - ], - }, - }, - { - name: 'children', - propType: 'any', - }, - ], - }, - }, - }, - { - name: 'filterDropdown', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - false, - true, - 'object', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', - ], - }, - }, - { - name: 'filterMultiple', - propType: 'bool', - }, - { - name: 'filteredValue', - propType: { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - }, - { - name: 'defaultFilteredValue', - propType: { - type: 'arrayOf', - value: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - }, - { - name: 'filterIcon', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - false, - true, - 'object', - { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', - ], - }, - }, - { - name: 'onFilter', - propType: 'func', - }, - { - name: 'filterDropdownVisible', - propType: 'bool', - }, - { - name: 'onFilterDropdownVisibleChange', - propType: 'func', - }, - { - name: 'colSpan', - propType: 'number', - }, - { - name: 'render', - propType: 'func', - }, - { - name: 'rowSpan', - propType: 'number', - }, - { - name: 'onCell', - propType: 'any', - }, - { - description: '@deprecated Please use `onCell` instead', - name: 'onCellClick', - propType: 'func', - }, - { - name: 'fixed', - propType: { - type: 'oneOfType', - value: [ - false, - true, - 'right', - 'left', - ], - }, - }, - { - name: 'onHeaderCell', - propType: 'any', - }, - { - name: 'ellipsis', - propType: 'bool', - }, - ], - screenshot: '', - title: 'antd', - }, { componentName: 'Transfer', devMode: 'proCode', @@ -54173,7 +70571,40 @@ Generated by [AVA](https://avajs.dev). }, { name: 'filterOption', - propType: 'func', + propType: { + raw: '(filterText: string, item: TransferItem) => boolean', + type: 'func', + value: [ + { + name: 'filterText', + propType: 'string', + }, + { + name: 'item', + propType: { + type: 'shape', + value: [ + { + name: 'key', + propType: 'string', + }, + { + name: 'title', + propType: 'string', + }, + { + name: 'description', + propType: 'string', + }, + { + name: 'disabled', + propType: 'bool', + }, + ], + }, + }, + ], + }, }, { name: 'style', @@ -54184,35 +70615,60 @@ Generated by [AVA](https://avajs.dev). propType: { isRequired: true, type: 'arrayOf', - value: { - 0: 's', - 1: 't', - 2: 'r', - 3: 'i', - 4: 'n', - 5: 'g', - }, + value: 'string', }, }, { name: 'handleFilter', propType: { isRequired: true, + raw: '(e: ChangeEvent) => void', type: 'func', + value: [ + { + name: 'e', + propType: 'object', + }, + ], }, }, { name: 'onItemSelect', propType: { isRequired: true, + raw: '(key: string, check: boolean) => void', type: 'func', + value: [ + { + name: 'key', + propType: 'string', + }, + { + name: 'check', + propType: 'bool', + }, + ], }, }, { name: 'onItemSelectAll', propType: { isRequired: true, + raw: '(dataSource: string[], checkAll: boolean) => void', type: 'func', + value: [ + { + name: 'dataSource', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + { + name: 'checkAll', + propType: 'bool', + }, + ], }, }, { @@ -54224,7 +70680,36 @@ Generated by [AVA](https://avajs.dev). }, { name: 'render', - propType: 'func', + propType: { + raw: '(item: TransferItem) => RenderResult', + type: 'func', + value: [ + { + name: 'item', + propType: { + type: 'shape', + value: [ + { + name: 'key', + propType: 'string', + }, + { + name: 'title', + propType: 'string', + }, + { + name: 'description', + propType: 'string', + }, + { + name: 'disabled', + propType: 'bool', + }, + ], + }, + }, + ], + }, }, { defaultValue: false, @@ -54261,17 +70746,123 @@ Generated by [AVA](https://avajs.dev). }, { name: 'renderList', - propType: 'any', + propType: { + raw: 'RenderListFunction', + type: 'func', + value: [ + { + name: 'props', + propType: { + type: 'shape', + value: [ + { + name: 'filteredItems', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'key', + propType: 'string', + }, + { + name: 'title', + propType: 'string', + }, + { + name: 'description', + propType: 'string', + }, + { + name: 'disabled', + propType: 'bool', + }, + ], + }, + }, + }, + { + name: 'filteredRenderItems', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'renderedText', + propType: 'string', + }, + { + name: 'renderedEl', + propType: 'node', + }, + { + name: 'item', + propType: { + type: 'shape', + value: [ + { + name: 'key', + propType: 'string', + }, + { + name: 'title', + propType: 'string', + }, + { + name: 'description', + propType: 'string', + }, + { + name: 'disabled', + propType: 'bool', + }, + ], + }, + }, + ], + }, + }, + }, + { + name: 'selectedKeys', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + ], + }, + }, + ], + }, }, { name: 'footer', - propType: 'func', + propType: { + raw: '(props: TransferListProps) => ReactNode', + type: 'func', + value: [ + { + name: 'props', + propType: 'object', + }, + ], + }, }, { name: 'onScroll', propType: { isRequired: true, + raw: '(e: UIEvent) => void', type: 'func', + value: [ + { + name: 'e', + propType: 'object', + }, + ], }, }, { @@ -54282,10 +70873,10 @@ Generated by [AVA](https://avajs.dev). name: 'direction', propType: { isRequired: true, - type: 'oneOfType', + type: 'oneOf', value: [ - 'right', 'left', + 'right', ], }, }, @@ -54300,127 +70891,30 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', 'object', { - type: 'shape', + raw: '(info: { selectedCount: number; totalCount: number; }) => ReactNode', + type: 'func', value: [ { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', + name: 'info', propType: { - type: 'oneOfType', + type: 'shape', value: [ - 'string', - 'number', + { + name: 'selectedCount', + propType: 'number', + }, + { + name: 'totalCount', + propType: 'number', + }, ], }, }, ], }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', - ], - }, - }, - ], - screenshot: '', - title: 'antd', - }, - { - componentName: 'Transfer', - devMode: 'proCode', - docUrl: '', - npm: { - destructuring: true, - exportName: 'Transfer', - main: 'components/index.tsx', - package: 'antd', - subName: 'Operation', - version: '4.1.4', - }, - props: [ - { - name: 'className', - propType: 'string', - }, - { - name: 'leftArrowText', - propType: 'string', - }, - { - name: 'rightArrowText', - propType: 'string', - }, - { - name: 'moveToLeft', - propType: 'func', - }, - { - name: 'moveToRight', - propType: 'func', - }, - { - name: 'leftActive', - propType: 'bool', - }, - { - name: 'rightActive', - propType: 'bool', - }, - { - name: 'style', - propType: 'object', - }, - { - name: 'disabled', - propType: 'bool', - }, - { - name: 'direction', - propType: { - type: 'oneOfType', - value: [ - 'rtl', - 'ltr', ], }, }, @@ -54451,11 +70945,29 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(e: FormEvent) => void', + type: 'func', + value: [ + { + name: 'e', + propType: 'object', + }, + ], + }, }, { name: 'handleClear', - propType: 'func', + propType: { + raw: '(e: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'e', + propType: 'object', + }, + ], + }, }, { name: 'value', @@ -54485,7 +70997,7 @@ Generated by [AVA](https://avajs.dev). { name: 'expandAction', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ false, 'click', @@ -54663,7 +71175,16 @@ Generated by [AVA](https://avajs.dev). { description: '点击树节点触发', name: 'filterAntTreeNode', - propType: 'func', + propType: { + raw: '(node: AntTreeNode) => boolean', + type: 'func', + value: [ + { + name: 'node', + propType: 'object', + }, + ], + }, }, { name: 'loadedKeys', @@ -54699,100 +71220,96 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', 'object', { - type: 'shape', + raw: '(nodeProps: AntdTreeNodeAttribute) => ReactNode', + type: 'func', value: [ { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', + name: 'nodeProps', propType: { - type: 'oneOfType', + type: 'shape', value: [ - 'string', - 'number', + { + name: 'eventKey', + propType: 'string', + }, + { + name: 'prefixCls', + propType: 'string', + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'children', + propType: 'node', + }, + { + name: 'title', + propType: 'node', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'isLeaf', + propType: 'bool', + }, + { + name: 'selectable', + propType: 'bool', + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'disableCheckbox', + propType: 'bool', + }, ], }, }, ], }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', ], }, }, { name: 'switcherIcon', - propType: { - type: 'shape', - value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, - { - name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - ], - }, + propType: 'object', }, { name: 'prefixCls', @@ -54802,6 +71319,71 @@ Generated by [AVA](https://avajs.dev). name: 'blockNode', propType: 'bool', }, + { + name: 'onClick', + propType: { + raw: '(e: MouseEvent, treeNode: EventDataNode) => void', + type: 'func', + value: [ + { + name: 'e', + propType: 'object', + }, + { + name: 'treeNode', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, + }, { name: 'virtual', propType: 'bool', @@ -54812,67 +71394,1129 @@ Generated by [AVA](https://avajs.dev). }, { name: 'onKeyDown', - propType: 'func', + propType: { + raw: '(event: KeyboardEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onSelect', - propType: 'func', - }, - { - name: 'onClick', - propType: 'func', + propType: { + raw: '(selectedKeys: ReactText[], info: { event: "select"; selected: boolean; node: EventDataNode; selectedNodes: DataNode[]; nativeEvent: MouseEvent; }) => void', + type: 'func', + value: [ + { + name: 'selectedKeys', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + }, + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: { + type: 'oneOf', + value: [ + 'select', + ], + }, + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + { + name: 'selectedNodes', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'checkable', + propType: 'bool', + }, + { + name: 'children', + propType: 'object', + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'disableCheckbox', + propType: 'bool', + }, + { + name: 'icon', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + 'bool', + 'object', + { + raw: '(props: TreeNodeProps) => ReactNode', + type: 'func', + value: [ + { + name: 'props', + propType: 'object', + }, + ], + }, + ], + }, + }, + { + name: 'isLeaf', + propType: 'bool', + }, + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'title', + propType: 'node', + }, + { + name: 'selectable', + propType: 'bool', + }, + { + name: 'switcherIcon', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + 'bool', + 'object', + { + raw: '(props: TreeNodeProps) => ReactNode', + type: 'func', + value: [ + { + name: 'props', + propType: 'object', + }, + ], + }, + ], + }, + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'style', + propType: 'object', + }, + ], + }, + }, + }, + { + name: 'nativeEvent', + propType: 'object', + }, + ], + }, + }, + ], + }, }, { name: 'onBlur', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onFocus', - propType: 'func', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, }, { name: 'onMouseEnter', - propType: 'func', + propType: { + raw: '(info: { event: MouseEvent; node: EventDataNode; }) => void', + type: 'func', + value: [ + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: 'object', + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, + }, + ], + }, }, { name: 'onMouseLeave', - propType: 'func', + propType: { + raw: '(info: { event: MouseEvent; node: EventDataNode; }) => void', + type: 'func', + value: [ + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: 'object', + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, + }, + ], + }, }, { name: 'onLoad', - propType: 'func', + propType: { + raw: '(loadedKeys: ReactText[], info: { event: "load"; node: EventDataNode; }) => void', + type: 'func', + value: [ + { + name: 'loadedKeys', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + }, + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: { + type: 'oneOf', + value: [ + 'load', + ], + }, + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, + }, + ], + }, }, { name: 'onDoubleClick', - propType: 'func', + propType: { + raw: '(e: MouseEvent, treeNode: EventDataNode) => void', + type: 'func', + value: [ + { + name: 'e', + propType: 'object', + }, + { + name: 'treeNode', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, }, { name: 'onDragEnd', - propType: 'func', + propType: { + raw: '(info: { event: MouseEvent; node: EventDataNode; }) => void', + type: 'func', + value: [ + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: 'object', + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, + }, + ], + }, }, { name: 'onDragEnter', - propType: 'func', + propType: { + raw: '(info: { event: MouseEvent; node: EventDataNode; expandedKeys: ReactText[]; }) => void', + type: 'func', + value: [ + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: 'object', + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + { + name: 'expandedKeys', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + }, + ], + }, + }, + ], + }, }, { name: 'onDragLeave', - propType: 'func', + propType: { + raw: '(info: { event: MouseEvent; node: EventDataNode; }) => void', + type: 'func', + value: [ + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: 'object', + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, + }, + ], + }, }, { name: 'onDragOver', - propType: 'func', + propType: { + raw: '(info: { event: MouseEvent; node: EventDataNode; }) => void', + type: 'func', + value: [ + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: 'object', + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, + }, + ], + }, }, { name: 'onDragStart', - propType: 'func', + propType: { + raw: '(info: { event: MouseEvent; node: EventDataNode; }) => void', + type: 'func', + value: [ + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: 'object', + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, + }, + ], + }, }, { name: 'onDrop', - propType: 'func', + propType: { + raw: '(info: { event: MouseEvent; node: EventDataNode; dragNode: EventDataNode; dragNodesKeys: ReactText[]; dropPosition: number; dropToGap: boolean; }) => void', + type: 'func', + value: [ + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: 'object', + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + { + name: 'dragNode', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + { + name: 'dragNodesKeys', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + }, + { + name: 'dropPosition', + propType: 'number', + }, + { + name: 'dropToGap', + propType: 'bool', + }, + ], + }, + }, + ], + }, }, { name: 'loadData', - propType: 'func', + propType: { + raw: '(treeNode: EventDataNode) => Promise', + type: 'func', + value: [ + { + name: 'treeNode', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, }, { name: 'height', @@ -54886,10 +72530,6 @@ Generated by [AVA](https://avajs.dev). name: 'focusable', propType: 'bool', }, - { - name: 'onExpand', - propType: 'func', - }, { name: 'treeData', propType: { @@ -54903,7 +72543,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'children', - propType: 'any', + propType: 'object', }, { name: 'disabled', @@ -54920,64 +72560,18 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', 'object', { - type: 'shape', + raw: '(props: TreeNodeProps) => ReactNode', + type: 'func', value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, { name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, + propType: 'object', }, ], }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', ], }, }, @@ -55010,64 +72604,18 @@ Generated by [AVA](https://avajs.dev). value: [ 'string', 'number', - false, - true, + 'bool', 'object', { - type: 'shape', + raw: '(props: TreeNodeProps) => ReactNode', + type: 'func', value: [ - { - name: 'P', - propType: 'any', - }, - { - name: 'T', - propType: 'any', - }, - { - name: 'type', - propType: 'any', - }, { name: 'props', - propType: 'any', - }, - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, + propType: 'object', }, ], }, - { - type: 'oneOfType', - value: [], - }, - { - type: 'shape', - value: [ - { - name: 'key', - propType: { - type: 'oneOfType', - value: [ - 'string', - 'number', - ], - }, - }, - { - name: 'children', - propType: 'node', - }, - ], - }, - 'func', ], }, }, @@ -55083,22 +72631,611 @@ Generated by [AVA](https://avajs.dev). }, }, }, + { + name: 'onExpand', + propType: { + raw: '(expandedKeys: ReactText[], info: { node: EventDataNode; expanded: boolean; nativeEvent: MouseEvent; }) => void', + type: 'func', + value: [ + { + name: 'expandedKeys', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + }, + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'nativeEvent', + propType: 'object', + }, + ], + }, + }, + ], + }, + }, { name: 'onCheck', - propType: 'func', + propType: { + raw: '(checked: ReactText[] | { checked: ReactText[]; halfChecked: ReactText[]; }, info: CheckInfo) => void', + type: 'func', + value: [ + { + name: 'checked', + propType: { + type: 'oneOfType', + value: [ + { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + type: 'shape', + value: [ + { + name: 'checked', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + }, + { + name: 'halfChecked', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + }, + ], + }, + ], + }, + }, + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: { + type: 'oneOf', + value: [ + 'check', + ], + }, + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'nativeEvent', + propType: 'object', + }, + { + name: 'checkedNodes', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'checkable', + propType: 'bool', + }, + { + name: 'children', + propType: 'object', + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'disableCheckbox', + propType: 'bool', + }, + { + name: 'icon', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + 'bool', + 'object', + { + raw: '(props: TreeNodeProps) => ReactNode', + type: 'func', + value: [ + { + name: 'props', + propType: 'object', + }, + ], + }, + ], + }, + }, + { + name: 'isLeaf', + propType: 'bool', + }, + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'title', + propType: 'node', + }, + { + name: 'selectable', + propType: 'bool', + }, + { + name: 'switcherIcon', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + 'bool', + 'object', + { + raw: '(props: TreeNodeProps) => ReactNode', + type: 'func', + value: [ + { + name: 'props', + propType: 'object', + }, + ], + }, + ], + }, + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'style', + propType: 'object', + }, + ], + }, + }, + }, + { + name: 'checkedNodesPositions', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'checkable', + propType: 'bool', + }, + { + name: 'children', + propType: 'object', + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'disableCheckbox', + propType: 'bool', + }, + { + name: 'icon', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + 'bool', + 'object', + { + raw: '(props: TreeNodeProps) => ReactNode', + type: 'func', + value: [ + { + name: 'props', + propType: 'object', + }, + ], + }, + ], + }, + }, + { + name: 'isLeaf', + propType: 'bool', + }, + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + { + name: 'title', + propType: 'node', + }, + { + name: 'selectable', + propType: 'bool', + }, + { + name: 'switcherIcon', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + 'bool', + 'object', + { + raw: '(props: TreeNodeProps) => ReactNode', + type: 'func', + value: [ + { + name: 'props', + propType: 'object', + }, + ], + }, + ], + }, + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'style', + propType: 'object', + }, + ], + }, + }, + { + name: 'pos', + propType: 'string', + }, + ], + }, + }, + }, + { + name: 'halfCheckedKeys', + propType: { + type: 'arrayOf', + value: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + }, + ], + }, + }, + ], + }, }, { name: 'onRightClick', - propType: 'func', + propType: { + raw: '(info: { event: MouseEvent; node: EventDataNode; }) => void', + type: 'func', + value: [ + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'event', + propType: 'object', + }, + { + name: 'node', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, + }, + ], + }, }, { description: 'Used for `rc-tree-select` only.', name: 'onActiveChange', - propType: 'func', + propType: { + raw: '(key: ReactText) => void', + type: 'func', + value: [ + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + }, }, { name: 'filterTreeNode', - propType: 'func', + propType: { + raw: '(treeNode: EventDataNode) => boolean', + type: 'func', + value: [ + { + name: 'treeNode', + propType: { + type: 'shape', + value: [ + { + name: 'expanded', + propType: 'bool', + }, + { + name: 'selected', + propType: 'bool', + }, + { + name: 'checked', + propType: 'bool', + }, + { + name: 'loaded', + propType: 'bool', + }, + { + name: 'loading', + propType: 'bool', + }, + { + name: 'halfChecked', + propType: 'bool', + }, + { + name: 'dragOver', + propType: 'bool', + }, + { + name: 'dragOverGapTop', + propType: 'bool', + }, + { + name: 'dragOverGapBottom', + propType: 'bool', + }, + { + name: 'pos', + propType: 'string', + }, + { + name: 'active', + propType: 'bool', + }, + ], + }, + }, + ], + }, }, { name: 'itemHeight', @@ -55140,10 +73277,1062 @@ Generated by [AVA](https://avajs.dev). type: 'bool', }, }, + { + name: 'onChange', + propType: { + raw: '(checked: boolean) => void', + type: 'func', + value: [ + { + name: 'checked', + propType: 'bool', + }, + ], + }, + }, + ], + screenshot: '', + title: 'antd', + }, + { + componentName: 'TimePicker', + devMode: 'proCode', + docUrl: '', + npm: { + destructuring: true, + exportName: 'TimePicker', + main: 'components/index.tsx', + package: 'antd', + subName: 'RangePicker', + version: '4.1.4', + }, + props: [ + { + name: 'style', + propType: 'object', + }, { name: 'onChange', propType: 'func', }, + { + name: 'prefixCls', + propType: 'string', + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'onClick', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'mode', + propType: 'object', + }, + { + name: 'id', + propType: 'string', + }, + { + name: 'value', + propType: 'object', + }, + { + name: 'defaultValue', + propType: 'object', + }, + { + name: 'allowClear', + propType: 'bool', + }, + { + name: 'clearIcon', + propType: 'node', + }, + { + name: 'open', + propType: 'bool', + }, + { + name: 'defaultOpen', + propType: 'bool', + }, + { + name: 'dropdownClassName', + propType: 'string', + }, + { + name: 'dropdownAlign', + propType: { + type: 'shape', + value: [ + { + name: 'points', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + { + name: 'offset', + propType: { + type: 'arrayOf', + value: 'number', + }, + }, + { + name: 'targetOffset', + propType: { + type: 'arrayOf', + value: 'number', + }, + }, + { + name: 'overflow', + propType: { + type: 'shape', + value: [ + { + name: 'adjustX', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + { + name: 'adjustY', + propType: { + type: 'oneOfType', + value: [ + 'number', + 'bool', + ], + }, + }, + ], + }, + }, + { + name: 'useCssRight', + propType: 'bool', + }, + { + name: 'useCssBottom', + propType: 'bool', + }, + { + name: 'useCssTransform', + propType: 'bool', + }, + { + name: 'ignoreShake', + propType: 'bool', + }, + ], + }, + }, + { + name: 'transitionName', + propType: 'string', + }, + { + name: 'getPopupContainer', + propType: { + raw: '(node: HTMLElement) => HTMLElement', + type: 'func', + value: [ + { + name: 'node', + propType: 'object', + }, + ], + }, + }, + { + name: 'direction', + propType: { + type: 'oneOf', + value: [ + 'rtl', + 'ltr', + ], + }, + }, + { + name: 'disabled', + propType: { + type: 'oneOfType', + value: [ + 'bool', + 'object', + ], + }, + }, + { + name: 'autoFocus', + propType: 'bool', + }, + { + name: 'placeholder', + propType: 'object', + }, + { + name: 'tabIndex', + propType: 'number', + }, + { + name: 'onBlur', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onFocus', + propType: { + raw: '(event: FocusEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseDown', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseEnter', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseLeave', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'suffixIcon', + propType: 'node', + }, + { + name: 'separator', + propType: 'node', + }, + { + name: 'role', + propType: 'string', + }, + { + name: 'onContextMenu', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'onMouseUp', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + { + name: 'name', + propType: 'string', + }, + { + name: 'order', + propType: 'bool', + }, + { + name: 'picker', + propType: { + isRequired: true, + type: 'oneOf', + value: [ + 'time', + ], + }, + }, + { + name: 'defaultPickerValue', + propType: 'object', + }, + { + name: 'disabledDate', + propType: 'func', + }, + { + name: 'dateRender', + propType: 'func', + }, + { + name: 'monthCellRender', + propType: 'func', + }, + { + name: 'renderExtraFooter', + propType: { + raw: '(mode: PanelMode) => ReactNode', + type: 'func', + value: [ + { + name: 'mode', + propType: { + type: 'oneOf', + value: [ + 'date', + 'time', + 'week', + 'month', + 'quarter', + 'year', + 'decade', + ], + }, + }, + ], + }, + }, + { + name: 'onPanelChange', + propType: 'func', + }, + { + name: 'onOk', + propType: 'func', + }, + { + name: 'popupStyle', + propType: 'object', + }, + { + description: 'Make input readOnly to avoid popup keyboard in mobile', + name: 'inputReadOnly', + propType: 'bool', + }, + { + name: 'format', + propType: { + type: 'oneOfType', + value: [ + 'string', + { + type: 'arrayOf', + value: 'string', + }, + ], + }, + }, + { + name: 'onOpenChange', + propType: { + raw: '(open: boolean) => void', + type: 'func', + value: [ + { + name: 'open', + propType: 'bool', + }, + ], + }, + }, + { + description: '@private Internal usage, do not use in production mode!!!', + name: 'pickerRef', + propType: 'object', + }, + { + name: 'autoComplete', + propType: 'string', + }, + { + name: 'disabledTime', + propType: 'func', + }, + { + name: 'showHour', + propType: 'bool', + }, + { + name: 'showMinute', + propType: 'bool', + }, + { + name: 'showSecond', + propType: 'bool', + }, + { + name: 'use12Hours', + propType: 'bool', + }, + { + name: 'hourStep', + propType: 'number', + }, + { + name: 'minuteStep', + propType: 'number', + }, + { + name: 'secondStep', + propType: 'number', + }, + { + name: 'hideDisabledOptions', + propType: 'bool', + }, + { + name: 'disabledHours', + propType: 'func', + }, + { + name: 'disabledMinutes', + propType: { + raw: '(hour: number) => number[]', + type: 'func', + value: [ + { + name: 'hour', + propType: 'number', + }, + ], + }, + }, + { + name: 'disabledSeconds', + propType: { + raw: '(hour: number, minute: number) => number[]', + type: 'func', + value: [ + { + name: 'hour', + propType: 'number', + }, + { + name: 'minute', + propType: 'number', + }, + ], + }, + }, + { + description: '@deprecated Please use `defaultValue` directly instead', + name: 'defaultOpenValue', + propType: 'object', + }, + { + name: 'ranges', + propType: { + type: 'objectOf', + value: 'oneOfType', + }, + }, + { + name: 'allowEmpty', + propType: 'object', + }, + { + name: 'onCalendarChange', + propType: 'func', + }, + { + description: '@private Internal control of active picker. Do not use since it\'s private usage', + name: 'activePickerIndex', + propType: { + type: 'oneOf', + value: [ + 0, + 1, + ], + }, + }, + { + name: 'locale', + propType: 'object', + }, + { + name: 'size', + propType: { + type: 'oneOf', + value: [ + 'small', + 'middle', + 'large', + ], + }, + }, + { + name: 'bordered', + propType: 'bool', + }, + { + name: 'ref', + propType: { + type: 'oneOfType', + value: [ + { + raw: '(instance: any) => void', + type: 'func', + value: [ + { + name: 'instance', + propType: 'object', + }, + ], + }, + 'object', + ], + }, + }, + { + name: 'key', + propType: { + type: 'oneOfType', + value: [ + 'string', + 'number', + ], + }, + }, + ], + screenshot: '', + title: 'antd', + }, + { + componentName: 'Typography', + devMode: 'proCode', + docUrl: '', + npm: { + destructuring: true, + exportName: 'Typography', + main: 'components/index.tsx', + package: 'antd', + subName: 'Text', + version: '4.1.4', + }, + props: [ + { + name: 'ellipsis', + propType: 'bool', + }, + { + name: 'title', + propType: 'string', + }, + { + name: 'editable', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'shape', + value: [ + { + name: 'editing', + propType: 'bool', + }, + { + name: 'onStart', + propType: 'func', + }, + { + name: 'onChange', + propType: { + raw: '(value: string) => void', + type: 'func', + value: [ + { + name: 'value', + propType: 'string', + }, + ], + }, + }, + ], + }, + ], + }, + }, + { + name: 'copyable', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'shape', + value: [ + { + name: 'text', + propType: 'string', + }, + { + name: 'onCopy', + propType: 'func', + }, + ], + }, + ], + }, + }, + { + name: 'type', + propType: { + type: 'oneOf', + value: [ + 'warning', + 'danger', + 'secondary', + ], + }, + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'code', + propType: 'bool', + }, + { + name: 'mark', + propType: 'bool', + }, + { + name: 'underline', + propType: 'bool', + }, + { + name: 'delete', + propType: 'bool', + }, + { + name: 'strong', + propType: 'bool', + }, + { + name: 'id', + propType: 'string', + }, + { + name: 'prefixCls', + propType: 'string', + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'style', + propType: 'object', + }, + ], + screenshot: '', + title: 'antd', + }, + { + componentName: 'Typography', + devMode: 'proCode', + docUrl: '', + npm: { + destructuring: true, + exportName: 'Typography', + main: 'components/index.tsx', + package: 'antd', + subName: 'Title', + version: '4.1.4', + }, + props: [ + { + name: 'style', + propType: 'object', + }, + { + name: 'prefixCls', + propType: 'string', + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'id', + propType: 'string', + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'type', + propType: { + type: 'oneOf', + value: [ + 'warning', + 'danger', + 'secondary', + ], + }, + }, + { + name: 'title', + propType: 'string', + }, + { + name: 'editable', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'shape', + value: [ + { + name: 'editing', + propType: 'bool', + }, + { + name: 'onStart', + propType: 'func', + }, + { + name: 'onChange', + propType: { + raw: '(value: string) => void', + type: 'func', + value: [ + { + name: 'value', + propType: 'string', + }, + ], + }, + }, + ], + }, + ], + }, + }, + { + name: 'copyable', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'shape', + value: [ + { + name: 'text', + propType: 'string', + }, + { + name: 'onCopy', + propType: 'func', + }, + ], + }, + ], + }, + }, + { + name: 'ellipsis', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'shape', + value: [ + { + name: 'rows', + propType: 'number', + }, + { + name: 'expandable', + propType: 'bool', + }, + { + name: 'suffix', + propType: 'string', + }, + { + name: 'onExpand', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + ], + }, + ], + }, + }, + { + name: 'code', + propType: 'bool', + }, + { + name: 'mark', + propType: 'bool', + }, + { + name: 'underline', + propType: 'bool', + }, + { + name: 'delete', + propType: 'bool', + }, + { + name: 'level', + propType: { + type: 'oneOf', + value: [ + 1, + 2, + 3, + 4, + ], + }, + }, + ], + screenshot: '', + title: 'antd', + }, + { + componentName: 'Typography', + devMode: 'proCode', + docUrl: '', + npm: { + destructuring: true, + exportName: 'Typography', + main: 'components/index.tsx', + package: 'antd', + subName: 'Paragraph', + version: '4.1.4', + }, + props: [ + { + name: 'title', + propType: 'string', + }, + { + name: 'editable', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'shape', + value: [ + { + name: 'editing', + propType: 'bool', + }, + { + name: 'onStart', + propType: 'func', + }, + { + name: 'onChange', + propType: { + raw: '(value: string) => void', + type: 'func', + value: [ + { + name: 'value', + propType: 'string', + }, + ], + }, + }, + ], + }, + ], + }, + }, + { + name: 'copyable', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'shape', + value: [ + { + name: 'text', + propType: 'string', + }, + { + name: 'onCopy', + propType: 'func', + }, + ], + }, + ], + }, + }, + { + name: 'type', + propType: { + type: 'oneOf', + value: [ + 'warning', + 'danger', + 'secondary', + ], + }, + }, + { + name: 'disabled', + propType: 'bool', + }, + { + name: 'ellipsis', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'shape', + value: [ + { + name: 'rows', + propType: 'number', + }, + { + name: 'expandable', + propType: 'bool', + }, + { + name: 'suffix', + propType: 'string', + }, + { + name: 'onExpand', + propType: { + raw: '(event: MouseEvent) => void', + type: 'func', + value: [ + { + name: 'event', + propType: 'object', + }, + ], + }, + }, + ], + }, + ], + }, + }, + { + name: 'code', + propType: 'bool', + }, + { + name: 'mark', + propType: 'bool', + }, + { + name: 'underline', + propType: 'bool', + }, + { + name: 'delete', + propType: 'bool', + }, + { + name: 'strong', + propType: 'bool', + }, + { + name: 'id', + propType: 'string', + }, + { + name: 'prefixCls', + propType: 'string', + }, + { + name: 'className', + propType: 'string', + }, + { + name: 'style', + propType: 'object', + }, ], screenshot: '', title: 'antd', @@ -55164,10 +74353,10 @@ Generated by [AVA](https://avajs.dev). { name: 'type', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ - 'drag', 'select', + 'drag', ], }, }, @@ -55217,11 +74406,11 @@ Generated by [AVA](https://avajs.dev). { name: 'status', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ - 'done', 'success', 'error', + 'done', 'uploading', 'removed', ], @@ -55240,35 +74429,6 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - { - type: 'shape', - value: [ - { - name: 'size', - propType: 'number', - }, - { - name: 'type', - propType: 'string', - }, - { - name: 'arrayBuffer', - propType: 'object', - }, - { - name: 'slice', - propType: 'func', - }, - { - name: 'stream', - propType: 'object', - }, - { - name: 'text', - propType: 'object', - }, - ], - }, { type: 'shape', value: [ @@ -55282,12 +74442,67 @@ Generated by [AVA](https://avajs.dev). }, ], }, + { + type: 'shape', + value: [ + { + name: 'size', + propType: 'number', + }, + { + name: 'type', + propType: 'string', + }, + { + name: 'arrayBuffer', + propType: { + raw: '() => Promise', + type: 'func', + }, + }, + { + name: 'slice', + propType: { + raw: '(start?: number, end?: number, contentType?: string) => Blob', + type: 'func', + value: [ + { + name: 'start', + propType: 'number', + }, + { + name: 'end', + propType: 'number', + }, + { + name: 'contentType', + propType: 'string', + }, + ], + }, + }, + { + name: 'stream', + propType: { + raw: '() => ReadableStream', + type: 'func', + }, + }, + { + name: 'text', + propType: { + raw: '() => Promise', + type: 'func', + }, + }, + ], + }, ], }, }, { name: 'response', - propType: 'any', + propType: 'object', }, { name: 'error', @@ -55303,7 +74518,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'xhr', - propType: 'any', + propType: 'object', }, { name: 'preview', @@ -55355,11 +74570,11 @@ Generated by [AVA](https://avajs.dev). { name: 'status', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ - 'done', 'success', 'error', + 'done', 'uploading', 'removed', ], @@ -55378,35 +74593,6 @@ Generated by [AVA](https://avajs.dev). propType: { type: 'oneOfType', value: [ - { - type: 'shape', - value: [ - { - name: 'size', - propType: 'number', - }, - { - name: 'type', - propType: 'string', - }, - { - name: 'arrayBuffer', - propType: 'object', - }, - { - name: 'slice', - propType: 'func', - }, - { - name: 'stream', - propType: 'object', - }, - { - name: 'text', - propType: 'object', - }, - ], - }, { type: 'shape', value: [ @@ -55420,12 +74606,67 @@ Generated by [AVA](https://avajs.dev). }, ], }, + { + type: 'shape', + value: [ + { + name: 'size', + propType: 'number', + }, + { + name: 'type', + propType: 'string', + }, + { + name: 'arrayBuffer', + propType: { + raw: '() => Promise', + type: 'func', + }, + }, + { + name: 'slice', + propType: { + raw: '(start?: number, end?: number, contentType?: string) => Blob', + type: 'func', + value: [ + { + name: 'start', + propType: 'number', + }, + { + name: 'end', + propType: 'number', + }, + { + name: 'contentType', + propType: 'string', + }, + ], + }, + }, + { + name: 'stream', + propType: { + raw: '() => ReadableStream', + type: 'func', + }, + }, + { + name: 'text', + propType: { + raw: '() => Promise', + type: 'func', + }, + }, + ], + }, ], }, }, { name: 'response', - propType: 'any', + propType: 'object', }, { name: 'error', @@ -55441,7 +74682,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'xhr', - propType: 'any', + propType: 'object', }, { name: 'preview', @@ -55457,8 +74698,58 @@ Generated by [AVA](https://avajs.dev). type: 'oneOfType', value: [ 'string', - 'func', - 'func', + { + raw: '(file: RcFile) => string', + type: 'func', + value: [ + { + name: 'file', + propType: { + type: 'shape', + value: [ + { + name: 'uid', + propType: 'string', + }, + { + name: 'lastModifiedDate', + propType: 'object', + }, + { + name: 'webkitRelativePath', + propType: 'string', + }, + ], + }, + }, + ], + }, + { + raw: '(file: RcFile) => PromiseLike', + type: 'func', + value: [ + { + name: 'file', + propType: { + type: 'shape', + value: [ + { + name: 'uid', + propType: 'string', + }, + { + name: 'lastModifiedDate', + propType: 'object', + }, + { + name: 'webkitRelativePath', + propType: 'string', + }, + ], + }, + }, + ], + }, ], }, }, @@ -55479,7 +74770,7 @@ Generated by [AVA](https://avajs.dev). { name: 'method', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'POST', 'PUT', @@ -55490,15 +74781,17 @@ Generated by [AVA](https://avajs.dev). }, { name: 'headers', - propType: 'objectOf', + propType: { + type: 'objectOf', + value: 'string', + }, }, { name: 'showUploadList', propType: { type: 'oneOfType', value: [ - false, - true, + 'bool', { type: 'shape', value: [ @@ -55529,16 +74822,261 @@ Generated by [AVA](https://avajs.dev). }, { name: 'beforeUpload', - propType: 'func', + propType: { + raw: '(file: RcFile, FileList: RcFile[]) => boolean | PromiseLike', + type: 'func', + value: [ + { + name: 'file', + propType: { + type: 'shape', + value: [ + { + name: 'uid', + propType: 'string', + }, + { + name: 'lastModifiedDate', + propType: 'object', + }, + { + name: 'webkitRelativePath', + propType: 'string', + }, + ], + }, + }, + { + name: 'FileList', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'uid', + propType: 'string', + }, + { + name: 'lastModifiedDate', + propType: 'object', + }, + { + name: 'webkitRelativePath', + propType: 'string', + }, + ], + }, + }, + }, + ], + }, }, { name: 'onChange', - propType: 'func', + propType: { + raw: '(info: UploadChangeParam>) => void', + type: 'func', + value: [ + { + name: 'info', + propType: { + type: 'shape', + value: [ + { + name: 'T', + propType: 'any', + }, + { + name: 'file', + propType: 'object', + }, + { + name: 'fileList', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 'T', + propType: 'any', + }, + { + name: 'uid', + propType: 'string', + }, + { + name: 'size', + propType: 'number', + }, + { + name: 'name', + propType: 'string', + }, + { + name: 'fileName', + propType: 'string', + }, + { + name: 'lastModified', + propType: 'number', + }, + { + name: 'lastModifiedDate', + propType: 'object', + }, + { + name: 'url', + propType: 'string', + }, + { + name: 'status', + propType: { + type: 'oneOf', + value: [ + 'success', + 'error', + 'done', + 'uploading', + 'removed', + ], + }, + }, + { + name: 'percent', + propType: 'number', + }, + { + name: 'thumbUrl', + propType: 'string', + }, + { + name: 'originFileObj', + propType: { + type: 'oneOfType', + value: [ + { + type: 'shape', + value: [ + { + name: 'lastModified', + propType: 'number', + }, + { + name: 'name', + propType: 'string', + }, + ], + }, + { + type: 'shape', + value: [ + { + name: 'size', + propType: 'number', + }, + { + name: 'type', + propType: 'string', + }, + { + name: 'arrayBuffer', + propType: { + raw: '() => Promise', + type: 'func', + }, + }, + { + name: 'slice', + propType: { + raw: '(start?: number, end?: number, contentType?: string) => Blob', + type: 'func', + value: [ + { + name: 'start', + propType: 'number', + }, + { + name: 'end', + propType: 'number', + }, + { + name: 'contentType', + propType: 'string', + }, + ], + }, + }, + { + name: 'stream', + propType: { + raw: '() => ReadableStream', + type: 'func', + }, + }, + { + name: 'text', + propType: { + raw: '() => Promise', + type: 'func', + }, + }, + ], + }, + ], + }, + }, + { + name: 'response', + propType: 'object', + }, + { + name: 'error', + propType: 'any', + }, + { + name: 'linkProps', + propType: 'any', + }, + { + name: 'type', + propType: 'string', + }, + { + name: 'xhr', + propType: 'object', + }, + { + name: 'preview', + propType: 'string', + }, + ], + }, + }, + }, + { + name: 'event', + propType: { + type: 'shape', + value: [ + { + name: 'percent', + propType: 'number', + }, + ], + }, + }, + ], + }, + }, + ], + }, }, { name: 'listType', propType: { - type: 'oneOfType', + type: 'oneOf', value: [ 'text', 'picture', @@ -55580,7 +75118,151 @@ Generated by [AVA](https://avajs.dev). }, { name: 'customRequest', - propType: 'func', + propType: { + raw: '(options: RcCustomRequestOptions) => void', + type: 'func', + value: [ + { + name: 'options', + propType: { + type: 'shape', + value: [ + { + name: 'onProgress', + propType: { + raw: '(event: { percent: number; }, file: File) => void', + type: 'func', + value: [ + { + name: 'event', + propType: { + type: 'shape', + value: [ + { + name: 'percent', + propType: 'number', + }, + ], + }, + }, + { + name: 'file', + propType: { + type: 'shape', + value: [ + { + name: 'lastModified', + propType: 'number', + }, + { + name: 'name', + propType: 'string', + }, + ], + }, + }, + ], + }, + }, + { + name: 'onError', + propType: { + raw: '(error: Error) => void', + type: 'func', + value: [ + { + name: 'error', + propType: { + type: 'shape', + value: [ + { + name: 'name', + propType: 'string', + }, + { + name: 'message', + propType: 'string', + }, + { + name: 'stack', + propType: 'string', + }, + ], + }, + }, + ], + }, + }, + { + name: 'onSuccess', + propType: { + raw: '(response: object, file: File) => void', + type: 'func', + value: [ + { + name: 'response', + propType: 'object', + }, + { + name: 'file', + propType: { + type: 'shape', + value: [ + { + name: 'lastModified', + propType: 'number', + }, + { + name: 'name', + propType: 'string', + }, + ], + }, + }, + ], + }, + }, + { + name: 'data', + propType: 'object', + }, + { + name: 'filename', + propType: 'string', + }, + { + name: 'file', + propType: { + type: 'shape', + value: [ + { + name: 'lastModified', + propType: 'number', + }, + { + name: 'name', + propType: 'string', + }, + ], + }, + }, + { + name: 'withCredentials', + propType: 'bool', + }, + { + name: 'action', + propType: 'string', + }, + { + name: 'headers', + propType: 'object', + }, + ], + }, + }, + ], + }, }, { name: 'withCredentials', @@ -55624,11 +75306,117 @@ Generated by [AVA](https://avajs.dev). }, { name: 'previewFile', - propType: 'any', + propType: { + raw: 'PreviewFileHandler', + type: 'func', + value: [ + { + name: 'file', + propType: { + type: 'oneOfType', + value: [ + { + type: 'shape', + value: [ + { + name: 'lastModified', + propType: 'number', + }, + { + name: 'name', + propType: 'string', + }, + ], + }, + { + type: 'shape', + value: [ + { + name: 'size', + propType: 'number', + }, + { + name: 'type', + propType: 'string', + }, + { + name: 'arrayBuffer', + propType: { + raw: '() => Promise', + type: 'func', + }, + }, + { + name: 'slice', + propType: { + raw: '(start?: number, end?: number, contentType?: string) => Blob', + type: 'func', + value: [ + { + name: 'start', + propType: 'number', + }, + { + name: 'end', + propType: 'number', + }, + { + name: 'contentType', + propType: 'string', + }, + ], + }, + }, + { + name: 'stream', + propType: { + raw: '() => ReadableStream', + type: 'func', + }, + }, + { + name: 'text', + propType: { + raw: '() => Promise', + type: 'func', + }, + }, + ], + }, + ], + }, + }, + ], + }, }, { name: 'transformFile', - propType: 'any', + propType: { + raw: 'TransformFileHandler', + type: 'func', + value: [ + { + name: 'file', + propType: { + type: 'shape', + value: [ + { + name: 'uid', + propType: 'string', + }, + { + name: 'lastModifiedDate', + propType: 'object', + }, + { + name: 'webkitRelativePath', + propType: 'string', + }, + ], + }, + }, + ], + }, }, { name: 'iconRender', @@ -55642,45 +75430,4 @@ Generated by [AVA](https://avajs.dev). screenshot: '', title: 'antd', }, - { - componentName: 'Item', - devMode: 'proCode', - docUrl: '', - npm: { - destructuring: true, - exportName: 'Item', - main: 'components/index.tsx', - package: 'antd', - subName: 'Meta', - version: '4.1.4', - }, - props: [ - { - name: 'avatar', - propType: 'node', - }, - { - name: 'className', - propType: 'string', - }, - { - name: 'description', - propType: 'node', - }, - { - name: 'prefixCls', - propType: 'string', - }, - { - name: 'style', - propType: 'object', - }, - { - name: 'title', - propType: 'node', - }, - ], - screenshot: '', - title: 'antd', - }, ] diff --git a/packages/material-parser/test/fixtures/__snapshots__/test/antd.ts.snap b/packages/material-parser/test/fixtures/__snapshots__/test/antd.ts.snap index 3201c45cff3dcad9bfd45332d8899c0c179ec9be..67ae977572ce175b82fbf33f15410bfef11b644e 100644 GIT binary patch literal 364668 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 VU!H}Uydw1A}LpTvCk5GV}%||W|d7@G* z_H4Hgo|SLpDOjd$xU)!nIRf+NjU}iEk+h&JakA zdxv$NtmMxV@313w(K$%aYbB^6imPyW(&2e`nl2LJk=}g<7eOm&^~)=Q3ljuG4!Zo0 zGgoUrqk!@YQ`lopKZ_4iq{}6VCff!!DwieweiVQYj;k;)~H0 z9l`Vykv1M5ZH#cjRMhL=x#94~ReFiqXG?qP0wA+tH7EZ1uB*&IQ{*sq>c;d4JVccO z-0pj1bM_taJEyUhcLZ-~IP%%VUMm!&qx8M_q%T0e(0xg~_ad$R4&oP}M%YK>0_1Ct z)#v8$9AfR=h4`k&yO%O3>KHRyBg9^Ott!`;3a$~E?B4mo5ywYs(+2zWW`3(&2xV{g z!?q&xag>^uJk2iS6XKSdpY6F&W8kFlW8_3};BqZghHP2{)-S4|s$=*Q&z2 z-=6MAc?DU6D0wdfz4N-C5%(3r{jM5;`x&STUipXo8M)T>;%N|kl(>?}7Y;V$*9+i5 zOx@mDMF4xTXeH&*zz;@8-U+wpDq%WevDA!-0@@f#)$3sKd15a;oOEHa5S33k-S@e` zc7gyFC9O)kLLkQ?=iP+5JaHzp)!q1#0C(M3p#_oA55X)orwtt(vw->m9+1xFS~s<wM?8!LEAZK+)vctt`E@QPe!YEn;OH53hud9V@UAb#J> zD=UQsXQo$lFFbFL>!NkGEgSLnu8uIYN0eHt^1&RW*-7|wSpQ~Ff4Uyj7iGZ|8@G>E z+&Bdqs`>ZRYIrw6@0RvS72sW#D3RcPwM;MUX=W-_4BX2cra0Ic;evOU0baP53rtq@ zD6|pA8PPhMkLDeKn-U^#hg+7(fG5uowz-vFSUiRj@Y;>Ab?l`JlJs`Yp8-$agGsb? zKuF{DpesHxWFBO)hebC8XHIR40zsBDnHgl`d<=(sDg%jp<*`UCeGs-R0)l$vGq4gd zGo^{*%6Lk>YWr9fSsyvzp>IXaXPQ%sXucgho+y1s(n7H(DP&!21zAI|sq(OxGxxtf znm&uqRTV49Av+^Y+}gVK03Cj5JN{(H`;eLIqqwBEXL@_HgD4!`=#hfjK@`82IL$ud zE#i)Njfz4qc<(=TPviY(40vhe=;xb~mX5t&LL+!*|9Mu^gZKthlapV0%2)_>@y2|u zaG{Ii`&2^@e^e}c+LU3Qc=qgt9^+sNzuFDs6@#Vd=+rfvu$7Eug*y(x7faLMlt@h< z8j-#o)*)>paP9=wWo&xVV27spj^|${A-*6KYI+_5ki*U3;V2c%bLY zYNzkCt4omWv};)?71j9r*=M*bQSXMf@%!GopruJ7GYT$c^;>Sb$pPwyn=~|1g-qyq zE9Qo&z_KaJm}fm^h->&rXsk~exd|ES!RY3~_0po6Z!I)7D2wxP%a?$R z?WyNo6f1 z5c9Ue0pX3utIjK&(ki3T@>>7SD}+Z7>1fF_{Jo6Oh`m7%S1;)HBd9-4#tdN3hm|$c zDjO58EhYOP#oZrvpT(6^>zc1WeR9WR zv|1@q;cRh_a=(J zOcE76V`g;VF70cjM&5xHEGn5o$JG8#CUYSVn6#bGd*hK@ReTp~!qt-OdgO45ePc?yp5xD8GJ@I}2~FUb)FPXLJ64U6vlv z0gk(EvULj3LntXPA-dI4ImHAc{=56Vhvy~?YC~TcAnas_q&}7^P#Q*Qc^xgba%`kuCYkSC$N*E`s`?aU zlBJMDw`*N~I2=u;VQVw+ZWLoB`4Kro-9%-nM`xj#>1OJX7h1 z^VD%xkZ%l2k^uQBBNV^pmi;05EHg*D_4XvLCoe#En_A*StoblQU}Sfsbw(rN=HI}U zvdw@kRbo2TjSxb3UFgzy4EZ=R=b(3v^}}yKZmTgqCt`c{1TJZM31-sG{N_#=a44Bk-#MeF!@Z_Lnv#O~Spj}!4Ic_kK5TuY z%$erZ@OO?eJffN&D|tGhH!2`vcTjd+!O9pcYU0U>-AA%6y|-OYfl2_d6?V7y0KvIZ z+bo(N8FGKTvocY+Cr@9{7NYU$vjc`Z*p^<3Tx&f3^oq~iRM0x+Dnt*Xc6f;vTSNNj zyGRPxieV{~H{+`JwX^#FM*6x>bgSat(n^~Ao+Q9+s#fCoQuPo2qgC5~A8G1-DqV|=*(fQ9Do8o zL&LF8$)?B%Po9qhaDSp6y86t%W8>Mu84{`g78ce{R?6oYtf%8=N#WP>87Y*oN8u&s zzmh!GLMXetv*ij`#!!l0nzRc`y>wv*Ey!WRJ!Si%)g7g6;uo=klPIVcca}BeEj@x{ zzq7N@`!Qud#=7Sm0PKdUIRNXmAm4kId=v){CikWd_H5{Lix+AgLl!7aqPV@Jv+Nza z=;CGtQ<+wuTkVcP2%>qM8o4Le-meYRAM<16tSUBxpQi~vQA+(ZGsHI{w(_rG{pG9c z?f|4;sO?^R5muC5I)cP?FVn_P6Mt3}3nI;zb<)NI7fF?Qotb+=xh#?<*Yy0!PB?GW zsElgll@j3DHQiAkGyvVf^z47C=O7~Z+t5SUTyi^-*VFjpPF&wQ;bRZ?C!p`gTc+IK zmz+Jdsfo2J>D!M^`1a@rM+gMPxnNg*Wi55IuUHdmJaUYnj+{10Q2#O6`cVn+&vfhkcpN9@NFp}gZM;udhTA<*Gj=W5pz4;*K{G0KA{v9 zLytXG?Sz}z zr{^)KU_d%~?K$IPXy?S$%-;LOnaJ-mnY~OY(Tkab5U?+6nS&4CwTs#(S64b6&`b_V zpE-DB8qr&~3+?YDoLbz zol3In0?2-yO3HY*K_$Vm)~TezLgax>D#>q?N~)$ZsU&guY&F_S>F{4^zihh^-zsmBHtjA6p z5nKo@sm<)UARI!dO{z9^_q~UhfQiX*U9hHnL1ci`JhYl=&L`(UXxqSwGFLaSqTa|l zR)jMHGmjap@F^pc5{21UahiSzpRX!D7EAU;#zJ0MVXqj1i#mGhe0&U_siq};HeD-- z9D`jwAaEJZs(pXCQ=mqnfiGNlP{Wk z7eJ3kQ0;MH+%Bq6i$H#TuQ4iOPtYU%BJ>DjJ`aT1E?W?0Q5a?Q3kWkjQI&V>DY*)n z1M|$W{^SM1?58&M=Z$cYYUd;e)6rhJpe1gR!tnF|vkC$WHT8IB!;2fIS~QcM>cQ2j zBX5PDG{AiT7z!dM+SU0BEcD2=Kx>NObJj0Ev|kDJOhkM-CyFN|ZD^H1Ptkq>nHQ6|R6KwS<S*M6VG?5a3N55k+M=8ruf+anKzd{;30OqiGmcI2=@6R?pp zC{C{DNq_m$$9BZ+kzAfMAJnqv7cw1 z@B{T8YGqsSa|d_^ky&_{2a;V91lg)3UB+Xnx+7WPTyc*O3~~)X8|l2)6ZwlcLx#Z4 zTlwGgT9pGgm=Wi%8_Wpt?K(5kXF7$#W1*7RLbBd^PUs33-Xs&V|8!2)YLvNov z#G9)YUr8kMBQ@PBy99Ce)Hr(cI6!cBYQI+Q&f}T0jd)GJPTH+g$f%?AVT47ArTwo5 z!Ua9=S*zjvX-TciXES=Df|wxgOOYUi=665psO`ItmQ%?{Q_myT-Z-C4LRyVUNUzi{ zjj6zjD4Ce$o)ZWQd^6P32MyR|6;Gt~8x9YCf_dCo!|y$NLMYtb30_4?b zQid_`Nd?5RzsKs+9|u~LgEDwh?-mv~k5`I&ZClAj6;nJhYQOF1#`r*E9`4=e8&f>+ zo5{v>@J6yhn}jtLJUJnHPV?N>}1So+rMA* ziz6M~bv_)#`BRb2Q%@rRSBO?mdT)3?Fth*tX1WpMN>Xlo@w^*uNL;zGVEprSg5b<% zzVVj+7$aF>h_KzrH$+;DLo@hNW8v794*E8d>ZLqb5=9MT`ui;6C1tzFg43B+`FrML zl}dSP=2jU!bPH0{wI{G#%HdRy!Chw3wb5=;AO44vq^+VI3`cvsLY5>&e!YKkqRD{i zeb*C?k&umqLuqV1;mBYnaUkI+%&B}%X~d*doI*H&R|MIQ7m@EFMaEzx|flJ-Cp!D^)5KMM9^OPzC7V`iz7iOw&su$g%GwhwS%GcHZkCx5Ad;AnpDtoh~MqyUO! zcd8dwdKhIea#+tsw~?-*25OhSd0?)fYR8pZ~wVS5Aw|Y&FjPR?bYR;<2Zk zdzG*1LT1IKZHXj$5Xtc#)DgrED&}U-8Tuvs0qC$#78#8!^+4K;X@dvLYj~cs6CO&S z$Bi2X^-hOG>0gGq4l~-gz+WRgFurvOU0ue3PVH^#XY{6K}pH?c;w zy~ZI+;$D){_7ED~ktBbQ$Ru)aVupH7fwX2AYI7xl?1slfg%1xgQ{Ha(SLZcwXK9Q^ zfoDc=8-iYpw#iISUI@gW58P0Nnfo5f(=)ft=%w3{kc1+@EXzIw40bcKT3X~eaozyO zO;c`r@x%t6K!{9UIM>+Dl=M0hei*WWgp0@4k?<;0((6bVVZMokbvBW(Ahpf4(>T|o z9XtdgcKmc|Z)E_Ht2}wS2rG*Gh3`(1_NfbxOO!w$Xjq!=<>w_3`S_Dw3+loKI8FBrY=S-_#8clIVcsa zv70Jqj;wnw(TkXa@d{`9Yv$m!Xm}R#ri7P>$Gp`75k+o)aos+|E;9vqF+&BPs@m;CBp*V~xXajl zllDj>cHDVuq0w7{qR6V&i74uQUq2xqy-*#gp(+9k)iH zp|#H>_e2Fl5U%I{$8(t?&nVhV8s7|%N*Z3|@WY!4EBE+n4G#YkR^NYTJ+(H$84$9P znAy6|n3KJVvwUfX-#6_4zGs*$tCbvCJ99LqGA@TO9@JsQwweOOXG zEXA>NGbMH&5<_@nO1N@K7a+dc)vR^V9@#HttNBwl=hyxvKFHiS@o5gcl#xL*-R(Ff z()4@hi#U`gJOsBCq$8SV(dDei6_um4t5_R5Jrs#b8R+j`*uJX|AAN~|kc)xg^zg`hAMqd=Nj_S*MAv58}rX2N! z8@a>ed;7>}+(zQm&;rpUEhG48Z!<-Mm&Qm>b2|4FxI^)jzI4MfOBqHPc`yd3t>b{* zo(hByQRl2_lDdVJf(HR$X7 z^>P}eZ1OqPnm>C_p}a`!#Z;ZxD)ZyszY6M%iA$p|nIZTX)Y5>DL1{yze-6w#(12ax&WrX*<63{a_1m<$d(nowfHjNbL+FzI!FLw1N%3Md1-&na>VQu{kEHk% z#8OT{E@SeqhhYi|cY)`?ry#m=3X;%@0s(A%_6dFtdb81S#h1p~E_ zig7CZyme^S!88@HwP2bG*jnN(;Ojo&2)DV8=_J@KTg){hj)yjjf@pcU5_LtI9$xdDb&RXe@z-{w*&c~!kh8hd+=z&Fxjs#%7dUHM)P5TgAl z!`fRoB~7(cQqnA(lKw#US2jqs(RhO-8^RkTz!=xAJw2t`__=DerId7UebF3>q9NeS zi*0@a^(ewW2izBLS$@ixUM7xUt`zvlwsUKUr+T(>f~8g+cS{yjwYo+j%uR=#^M<}G zWJ{%&MT^XbPn|irXJnC5X*Nx%G)tA@O0%DIg*ZFkX3JxR!^lc*8qp;5jwqV;Jh-+u znv*R_I8M;|H{P>x9`Z>XoV?bZ3B_wS$zrZ?ARf?W{8T^Qz4-Ks{w0Ifn*N2 z*vwxkHq*z&X8NcD#>8d`NmTllkeO5uLOTY`{<{M{gBQm?l*RFovN$%^rG16L_nbA- zIbd*e+9w=tCcKns?1QfRbt=5JLSl4T9w3nOgMGV=0SIsEI9c+l3SJ$=Q$GXHA?NHh zSFtc8lA$rqTzU#RW0HZPh0r^@i+YOhzNZ|p$3AB2ga?(#{XF%4{4($JKY0I>n?0$Q zVsbOz2t{zxE1Rgti)_O-a5<)5Li0s?Xjg-L`*s6F75Cum?+X|GYgyc%KuZmN>}kPq zk-FaJ7Y0!L8)E-F?%-jUO#MVsHJmT>75B&%^MBuS3#5FJ%vBTiAmy83r=oJn>rppZ z(Ll`@cItyA!y`mq&|~Xp{B5><`FQB_qVfH^T#RYq1qh0W5y*1e@R$EqtNI8yjrsW_uW;7Fl#kaXhg zD?kbtZUu<*3xLRV0CD;SlX?#T#F>x;IaQ92mZn$^;sp`_2&_QDn!yUB26=6L=Q(2= zHDO?+#T2vjXCUd5&m7b~m$FQrD}Kkk;~gloQzE>jG!1fkpDJuM?MaIkCG9-EG&S}U zjua~H<47S$`ns*Bt1R_=tlyT96pUkqux>D{kaQZu3e8gbA1blJ9!WZe6`sNobBB3= zZLV~lUS15EK0RjK`hC=s7zn}vMPIPJs`_tUKMs*E*HcqMU4n(I2;Q8U99p@{2a?3? ze*DACL8Izx5}aJFsmICX!3d08{%Tz<}H-dqY%l@5I39MM}q4`h`{P&A`euH&GyFXHB0nldJzpDsWdVivMZi6%RV?}L= z*q-@5%89y>J4W1R95)L%>%n{PiZ&zm2}Y$Ffjk;1LT**){+**}J6TfKoUA*7Eii8j zKGyKu0$3c=sL1m0?vzQMU;lqSp>eSH{hGC${`U15LkA|HwSV1Cxv z*+pO#E!HqQn+5b1eeIyBr8~jo){7O@XQnp0-|GK}i)%DHYTqT&gMV#ig16{hqyl@<-{V z``>lXDhUZcB_WYZD{A{NZhauN>H`OFEoDc!HKwXVe~QBK9_lx8X+v7-x15<3(vNuS z&FfRP-c@4#I1Tk}MYEbyEr)71v(&$MF$6L)f9B>Ac`;ThZ@7=_=GvQhLkFDI6ceV#nki%kIYy zWtt}=-~!k_8&3SO5PW|rK>N$~$BGr~{=b#m%S8#ky%gbJ(dFc{QG9y=O&o&z_QEXs z!PIXE&7w0dNBVj_dPmk&?kG)+G^@JCn4Tz>(T?i^TN3cy7Hv*(Tz02lL#&y6qa3A4v|w)3KL znnlowZfDL0>1fNMf>O$-y0l!wO|w%YSV%>Q%UP3^a#mIDlHTbm4?J$)0Uf1DD%&|g z06I$5nm^UcKu5W7P;K(MYnTSN-gH`70RR_BwzLNU7f7};+@>CmH{ZIi@#fp2UAC1U zexiVWTD)N4zl(MrUze0Kf^RJrQhaNn*NVFro|!tw_<%$8xYYNachM+ietk~r?rn*} zHIa(B}w9b7w$3iN@1 z-t+=Z_J0~XbPBDGTBw^{BUQw{k!ufH**`=Y=RM9L<>eru9AL)ZaR&)y2l3$WK2Dyr zz4N|9iLH6m&*|5w@u7~If&@BmT21O`nc5hM>ZG}{hZ7ZJCDDIf)z7;F3 z!kr*m^NMH_&4|qEA%TK&jI8HTEP-tdvE4e9%MG%`g|<5dtSH9J$at$VmrtZk8iXq; zgXsA%y$XP$xL)N3&EP|uJL@id77>`gg61|LWw-r707VsZG#}1iwEcn`lzK9Aoxm3s z%VnZjXeppvW5Kzeng5{+w!bU37Ceixm~D3Bhp&H!Y&ZYF_nWox;+Lv_d9b(r3g5Xn zsG-}NV7GP|2iD(9G?fzRm8#$MyhHD-;l=Rxe zXJtvlu4aO#bl&_(W^P%|nEXQ_pd}uN5IMm#T<KqzZ0HNJiG6PLwVyc-6X^;zz6o0GEeBZJe=UexL8+HDb}5ji*=pQ^;Eo)bSePf z*9w_Z>8E%h+rZbI>E-bC$X_pT`1p_#KK@$?A77NTuYTfCa`FHIicW{x8wd>Pyy-Q` zYsy?kLE#={Uc1k{`kZ9&fmZ%>%Hiv3mN0bFJRbh@=F_PUG4V4BPf{%EDpS6lnO>$l zL^lqZm*ZpcP-ey_qtOWPRuI+NnX#J17P8BJpRY@f{!FOJYnljL8S8v!$&2e-y3+EtTxtLYtie zS~Oa!O=Zx^1YLP$6S30E9Xm0;>B?7GS(K3AEQ&|%?}e*f_i-?lb}`DU}d3{rs_8!X{s5h?y&BuEOv|( zmiEeK+2cKSBSu^fQH|X!`ulSy!k^z#4C-T3zir#P;frD(cN(#coh)L~9D@yer*o2} zNQlq{#*@iL?L0TOw+VC}wQW(XNAM1z{!>Gs9ZC2n{tp?vx}lcpK$>A9RElpqD`0ZIkW@?5>mOTn|F*?*~jSa#)>L2a&5dljqH zV0+Mhww+|1jc#)dN797NG)8j8Wag!t%3pqt0Ec!R?Hg_K3Db5do3TqYd z({Q0^1+6*g!5vlgWuZp$gWMA0JoaVL0_C?Tr_i2W?-_fY;4YvI-BMe$`{}=~q{VO~0R((C;dz-#jHr&?mu3f`j#G(#vU1(@vnh z7@K|rl+!N{rr$u=i^c!nYNex`ehK*W+xUOe@90q+8J51qkl_&|VaKgjNn$JJ);rt5 zMq_09VJJsrMtl3^K#}L`CMb=yt#?Y3DOK2e7b6@vs<5*L{$~hj*`qP&yh+@KA?Lx^ zyinH+MF?+BpDUZwF$vb3PKA<&4*_wJI54bsrF#VPT9Iyu|D6gF|FC@cFpdnbP$I+D zyvgv{ge&Vb5cQ7B*u*$8OnQj4GWYMtzf?gWCZ?5fd4p?ZvL9d@$Yx{+Tg}|-?N6Pq zgoalup<#20;iAV5C70|_wZSG|?W1^aYVw98GKEJZu;3AOoegvfYtM`4A(;$y8h0PD zAW=nSt_GstK@b*=Na-m4UQq?;f;*U3e?}Uhr^H}k5*>$ysiPPy?0|4ZOj1o9!zIau+DTdGLztf>h)X$ z)3=8zL3dTPpXO0k4Zj`YNB*JAZ;+)7yF?1sL^Ebb-UuuUcui{G1UTM8^cxyDtLl`{ z&xoU$CQ&XjZEisaz_jm=LBq3Zf4N5thaq{|wz{wdXz=RF2h%Y&%0K1eBO;6B}wvN z^^TXqljD79jIuAylVE-6W%S@!Uz*_b2aXGayc6NVrpRW3;lflcB`%zY)v{Bd?j*#l z1d7WAXtCO@{8{SD@=u$6xfzA~f*Rk@ zkuS)T(L(LteILvbC$jn(v{gYAcQ=lP^l8WHf+9*@Lu}eNo9ct9vBM;5)`|^Yif6K2 z{Jc9mK!CN8_|v`4oZQ^tlJ;o3j}TreQ2G0^)s~SMdXZO_KAlH+fN69~NX6o(%-lQf z;84K@H0Nn{oo{clw8mRQV*G#iI=!d7^AnO`$b3PkYR8XEA?*uWj%~Mh0rW>Uy)9q~ z!?jgL4QbVXRyuvtPReM_^~_Xj_m6Glef6kZ>Vi23S13#lB87teuEJHO$uC|K zAC)DE{t9WSeGrxZdVL0|hrRq~?1rBgw(aZmo5LMG^YAyrA`>YpmXpu81d@MNy8Ui+R%fM%$7Oz($ib={HEarhW06Q!@X^?InfgX}b(# z_Oy;gsfB3fWL9K#S0u#!dCcL(4|R3#pZ>S@4pd3NB4t=keUCwhe&7p8dcUQ`_(eqZ zq$I1&n>9dDsn0om&E7(&9*K#9Zq4TPQP(-^tSqHhiPta#*YA{Vb2Y`_)0kyrRZBZFej6GB`zxh<8|1bLzu$G!~Zb` zT-<~%Y@gqF{q=~-XJgJ%-}{2XKrnUXoWHh%A-H8m_y%90Wyx19ip$Ygjww547^@v9 zwe`-T-266X@x$HI(otv0p6=ES|MdO*Y!MK@+wp_YDnc=3d~MsFid6G!FAxWeL=C8y zZV(M(ps)|9T`_(4^I_vRBo#w_p`XReu(Lr-;`%Gv-A*D~#jsXDz}J^QZFgQCK2@Md zD%CpBxQ5tVgWD)oG2a3Owh_D-?yH{+w>!Fc^YWK}zqH;hdiUMvN#Y7ymyHj7%$9R2 z((gMLrcr9@8{_L8Uz1Wg-;*{N8u)ku-n!9Q|9S=V0d`Ey2~X$)nyE9@TZ`^yw`PTl z7xZ0nsHl8Jw+vYo;OE~)Wp;*nIB|A2E5iNfc;z%yRKCT?F(3cuh#YgeWA7G>d3&!y zpNEXp#vC<-dlvWmNB7iqf^IxoK;K9x0HQ;!D0zK$R__Usy(9O>SLr&NmnH>k7vJ)@ zLEUnu_L19-|8jmhp*BGlh7tJhYkv;3MKHSbwk;}UEcMI&@AU7S9HV>kpO3%Djdo@{ zbjk_+hh8rZh{N=)$O(u1&4s#TH%zY6DGZFp$9KR!(fHoae)+WCCH0Z>24Pc_ct+ou z5O(Za95^Rzf8A^b+USAhU|~br=-t%cl%&lNttx2Ly-wPou2e~A@^CX40F@XE-1!Eh zUd0BrEb&dI#M=>!WM_y5q36IzhGf-#U?ejX0YbdBM4m!@jkk&7cDzljJtNMOf1dH@ z?J-Spn^HuQs1%XtBN2&woE_TS|0|}2G6Lt}(|i1)SXiX7r;pqBXe8;rRW73YGE@G7 zJ(cv^*lhGBzkir^ne6Gc8U6a9zcdCAmGBpDy$tpb_?82kG%D zOnSTuj8AIEH*K1odr4oL*F!aTp7*hwULk(LY#z!N<YP!P-1C9>c<5HqynXYpcsc}&B$I# zl7tnFw~3uYSev+I6`(9QN8+mFNbV{*l4;U*3xHO(pX*9CQNo!1y*P|ndsD3c6gr8P z)wXsi3~1&kfm3^%J+sEcwAHCs8MX zYe@)7Es45POA;VyZ-!2Sd=+&Pn3hDY1Tl4A$vd6^I&yM1d>GS`$bMI9Nr*^GvUi61 ze{rZ|z_lcQD77TRxR#^>K|uH46^dZR=$>7;^$94680wMdn#uwONv}7MR$jS_nn4Cq zR0AF-WuBSX4tQM8EqFq4H1tYH&ORF^dt5&770Cx;4K`i)Hv#$@-0oPU}sKv_tw;7VQ2LoNMo=K~)LNf#cEVC)F#4$h7Qz+K|PAxitz#k?|Ij z4@`C{jd$rv`M_V|1wX-I+GP!259z_3d=G%+0uo=?J_ksS@ZAbzr~{}E##GeVJxXSz z0%JzTk>cq%@f;uxca=!PG-+Umq~tFRxOAi}`H5FNlcM~7Hsen-^7+j@X{ak@L}9=H~c@tofO$J^5?^iXt!q;`y${r>6(LBuqKi*e>`bvBVyL48WM!= zyl1$408k@bKH$r}UxnlYDBPivs5|TiO%SbPq~w$UklSw?64o^$@rNNxPt6^GTTlMV z%|(C+Wian$zp^>K5nT|oYJ%ttinWE%DvF^$o>|x=O#3&d@yw2$^FY&rm`YZ~KDe}HV9X5GSv1QW2xXB@XR9!pMpjV2^eJ3I$3SLwtRaNMj7iYq>5o$B&Y zPUTxb(TLzqn%W&I5M|Pu+fF)W2wCCTZ{lv-=&X$07e>PTftN%#FfrT#&N+$0@q4Z% z6B?~qbm(lZY_2dFqpyQ~!vo-2AHJKL)DA>GkwO1>#d2PU6wLxPxl5F9te3T7iQ&8X zdM&5sSiD(ybt<^^K&JxW!um>I1zW7iG}Dq@w9;!pHFBPCO}Kd4_!1W{UN3m^3^!NN zIpTZ4wU!5tt){0bw~jqPXX^J|rEnW8)9P*3ZkYo#HwoFc=sctom^cSOpIgvVj|rQy zEqd6%>mwXBQ+N`bjXv7j9a`j4H0{oHQeWU^hYv&3EsH)Y;XdaqwQn=yH6?sogRD4{a<3Cph`1wEOpT2D` zh~MOW;iKcFPx+qH6_%r?zg-~pYJ5D*%s8n(e%96?mHHn0w*5g|mqWA!_q>J_G(fCK zib_N5>13Vd>o06h>2CyFFU9Mu$Ox-9hMf5GAs{byFDxV5Nx%YFkOdH;ZrZi&*#d{S z_5=4M`Nz7FV+XMLBA>(umlr{&sP+ax{PUumsmqZDaj5eU`6Z)0I>Ff1Md%x2G0W_F zlRHey#(eV>`Q85OG&`a(=pjRB2BxymLecNseL=N-(VR+&VUnH>xKayKsWNygP15|J zZ}0>uSQWTw`-!HRMhX4uv`@j;yMO2C!iIZt$9y3@g0L~<(Bfa`B^lS&V2F$>JT0g; z!2zVfcSzP;wSIP9uY19+pC_s;mlq8j_JjBo_4VEp>xCCf4FJO-96z`#|ZIGS) z_NSE}qffSmZ*?MHZp7X3HetG_`?ossk$Tym!w!AI0XmRvS7~L9W2D!r1@X%=$EH<# zm|deLg}T}a9b$NkY7$(_(qts3EwrFaQf~h-Wa;7LH^dxZI6Hz2`=)a)O9BB? zt*c6!lt7`=D=(p^Ba~^q8_*X1#C?5gDA31EOXt{?2&1`*E5MT`2=>X;p)i{r$`AG#g~m1AdCjnEuH{COi0FQxK`go)aT=a9X5uEO(vZvxD0}R94>SNSS(V z(rRYSh4c!waKf>)gObc28)6;a)h-2}j|Txk>CU18`Eu??)0p8a%Yc;xAkH}rcm@lt zaUwY41hN_Yg(=?~teUW%`3hw0i0AcPX0bcp(TxTP4Qvuu%-nIjcE^iLDJCPeIxJFb zS#6zoA+!FDKh>Ojka*SDcU^TFwk~uiVjlYKy}*?KRT>09vJsN!ismDkYrORnCEAd? zA*WbJSo}I}EOQrk0Ej|$(l!JO$OGmjAgQb|a=%e@ANA9oH{Ovuco6a8vOyU4MsC2j zxn4>y2eU}ggu84OH|WUO>7E|R8(W{!#X5Z#+baUz(Wk;B13GA`L~CTz<6PU3>0A^v zl?pwrQ824d8*rV#c6f`Aq=1SNZN~mGH=2Sxz0a1zmBgifOVBc2T#@dZ#PCAb|k}qpTh#F9@FLb^;SfT;jL*rKNq%|JKKdxpkLw(Ut^4Df-*0Sb8;oMm90%`NML7m(eEC)lPxul){ z_{+{~w?A5zh%Yh!0dAZMWM*GzDs)Itbb2CRw2~lxXWVd}m$(%)dciuywe@IyPHs}7KRC}C? z-HU-a7E-F3v*q{gven#3V(RdpqT?_cO!;OzHRxNEK|K;4R{}SW&DLcB?@_u^TjyH& zPGn<-lpHmhV*hjqkgz~uRz>@up;LIqciSv|9ALw}DxS$K7ud@d0zMl&tjh6-WTMWY zM>Pe66Ceij@ga!8PN)w$;assL^GuW7 z@zMfj*}X^^-e)3tc27{0fq3%yHB9xg%1`oN4c%`jKE5HhNVPjMOP*1(>vR*ZITHl6 zM;Va3@Fr_EKwjAH55*hp{`(*bLxtEeG#@ez4A(x=F1@t8O&%ql-j{4xCVNXa2q6S` zTHKSVme@{R+b1q*RS)+kXu3`c(vR|fsX5=|VTU5+=wCtIZ^6Q)-|bK)Sn{b*31KoJgOfLh@XNYt=>AXr{c$6_EGNG^u!TLzCQA|n}-(u#jccGSv zbC^elj5x*;!*U=!rue`NMm-<8qeTcIa&v34T%o|p>nVW5??Xc4#{ftLfYA(8H$#VE zR~`WWcIy}-S!RPkyWC`i{u_i{`1(s^Uzy_*C(!^5K{q`NP^3@(GCn8vR_$$=k*7vE zQa5m`g!_wnc^lBco)GF%BzP9Bm=-d1GM^-&PF#m!&)W+wSkBxtQ6SRBL<@nOO6fq` zf3{W65#wXZTE=k)qNIa4W1>VfO6%Ic#)B_{Stz9auFF`3>@9dG^gDfF$!ugE89oSL zkzr+vLrGyYx?pmsW3V8d&eN_*e#+JzBl&`5_CO`F%tkv0e5{1^V$QU`vkxlhSEAdB zJ17UE&GbOo711|{`?4zdLYdFA%&2z?|A^!aYL~Mqr_$=eEaiWfpqIj=PRILeQlf4@Qb^ z)!q^76Ju5corUX-?H?#ffGtKB(ubZv_Mk#{P$i|;Y2#IKE7N^tacwgI0lw>PWwWte z`GTlRGSIQ*_zCkpsX4>7NKEemJUUpd_LS1E0kZoRa2Xx$XYtwTfhAk0tu#8ox8O1b zszoP+B=b}hiStaYts56n+Xf=QZIF4rtnmW~VrEr(D!Q@B=e<%dOp2l zg0&EoNST zH$cK>G0nPzUt~$S%tIA($L185VR?Y_49YE1n%D#4Jsg0NwBEnQ^Smp$27`=+g2AJT zC9Jibp4nnqAb&|iDJVUkThtt6Z$AjSm)d)GN_xPEH92=2q%HovRQ{Tg-H&_i!*+AW zz^kp8(%{K4g7u(*NtAu|kE+;8iBG z-C`kD%0i>&ta`cbJNXjBV#h;^k84!7NRXJG1kMoMjBB<8uq&fDslb2TN49|i=Qz7o zWQ=v0Q#e3vKUh@iNIBRLTV%w@a{8iW@to@KeDHc12qLOX#lyEDjppqaa+l}RK(Zf- zyxcx1ycN!yU2{VnEFyBEq0?CRz3j#|T7*BOyNN2KgY>zBW+F&}g?NB$H>o4}YeVO` zM{ZvPdRT&sc7^2#;7rS=eNVC+1s}BT6(7c9s*3Z*>o*~u1bOFOKp*j00R}j?eX!us zgt-`8KLMwA+jj^CA_%=1;Dc5GTIR3rb#61#pU(`LPW4i>qSpOHee>u`NeJWyc+`mw zVL=`1I7GxpvK}Jh8#SgY%VHl<4}u}69KctsF{P5ZGgRP$FKyt0C=$^f;z%Iys6Z3! zdTHw**Ctd2T@Wqe^3GRsGyZCDjiidRnT*Usf5Gbm>4as~U@=3zq!T1s-nO!uv{2Ak@1BY$Wo6rGGZa#$iQmB z8<`{A9S(54zqh071&g{nfbRlp!uEp#^+-an7F;g_?eZ{4eet$eW5)M zBJ~{yUqZWHYC%{q!cODaj{0ord!TfPy6(K^vZ>Dd_a0gtb_2dp6xhlUwJ2xU4onwR z_ZB_`oW31LkQ**mF-sbREF<~i!3C3r@)YqqP1yerD-_U;zSr}UZ{c25y=|!V+(>d~0Vx?Fb{U!@lJ@l^_Zj-U01qGJRSb2 zGu3$8Yf5kf8fl*h+M^kZBCjv)5_TNt9tm3KISoQSfnUmJQ#5(f^cQv;1%}btM*|Nn zp7B1rG-F)(A{#4Tn~sdFN|L)6!eMCm%jE9-QJH z3~#V{%X!uniYiLC+Sz3yfJ+XW?k>A6x&$Jm6FpIo|2g_#qzK}+8)Bp9d=+{hy$JV9 zJ)N9C2NZV!=XN{3tf-WcMC8#5;}&x4jTrxFUT3V_#Sg)Vy;oFOdrd56s!WLHPFh?A z@B15pGu0naT0^RUrRBEo%^%wNWo$3ajC|Y6hhr&`-puAYd(0XPGcScOoP$By-5V*Tb&ZL~ zx9#v7dRdRC>_S>Jj3(GH<-O|)3GFK-ac{&f98Q>hxqI-X|E9@XB+DuLW+@cQJhMG8P>XIz%dd*E}9@ zXmQ(Scp*?YmIWtV>e}jD;zHRM0R;b2s%z``Hsh-?K(A6Z1-qGN& z4~LR<1k}5NBq^`Vtk1o&j%m+d3~AHgVsYko0J0|U?^WI5{f0N8JO6WI02tKdUO zA*3tRj<8q=Aw}gTALTlO+ROVCCh=+CJ)l!qdnBl+*TNtEs#?eTq9xEO1SEVr-Q-1hP5Q?dHj)>}Ffz^A=VM`Q z5hz}+L6m_Xj;m48M$)3ig19oCZpt^NZ<*|a{I|hb_R{}J$&2Ysd@zx%faJ87-ENeQ z2A4Y!D?>XE_2uR7l3TP3EUk44o?}ZfunNdUOkUqLk3|v}F47B#3sJrd} zDp9#AfBN^WvLJ5HS75#R^x!9~AX9o0DQ@*S7#NWo4it}SV-t!7Kq#FpNSzRzaTRnI z4Dch8;}HKA!WU08i5N)22f2S57`_wdt7xV6#=@@M;P&;1RgDQzcIZ6x2?%{Phd!ZQ z1m?Dz3RIlZ**hDBP4DRHA#-GY+1;{OzUE9zl*~hPUPvh+u^}D9?NB2u77Q0WgC4Qv z9qT%!PYHTJoAArv3QO$VM>F9E$Ru!{0G;(H!whs;%?f$ED!%S;^E9 z*vTl|yx_qeJ2i$hKJ-4LcwSx-s>_R;=L~9 zK0nWhBor;}Xv;kcX5K7^3QL)MC*Lp17gFPh&8ljxMXO&XH@=g{g6gnDejPaab9dZi zE?nziJ+IrEWN?Rr8fXq>jHi3%+O|&uD~!P<=V=ixy$tgOdw2m@5C)jPuJ;2Af`aHc z6ff$h*||Xx_WbNcep^pHH*E73W+I+m%{h>qzau^US`hzl<|LzfhXgzYrB)O>6t7!w z1|slclV+If>THkO6Gp*c!ZcA7ts|J#?ZCMvK_<8PakH~Ksp?=+L2q2z{HYh z+5u^0Q)n+YY3dwHb;_CJ-;Z~^03qWYZ!hg_j+)xC;u{CsvSR#I`YwF0s2rg$2{G68 z_3xAgJ7-41FVmG=Ia~|z8XP}Rqb%beytA8Hhqt`Pt6e}I|E}}|#UIlNrwVK780I>^ zwKgVu?&b8yfI(wg3}3MnV>($7Q}yqByQx*4xv69Y$}+G8Jn$&*x0)2lr+Pzr=Xq$c zPD#@;`dLgqyF+$JiO+vV_T?}{3p~OJ& zcD-ZrEi{Sid!5y(u*5k$Z}3L#;O{;$>IiQu3cNVLDMb;=g~ODtdg-|rj$A=tgyN$b zWM$n&GpeTZZ)xs~KG1D%{vIgP<@V5^{cdqVuljyUw+clc1>f!D2@|wT8HDja0~N?2 ziWkZ#WudIb3ndq}MkHtT5gHx^9y>9l+~pmZfEP=BvRkQ_#PF)0M4=diOwvR(4AKx; z(z}qumbTXcJi(8F4_79zT`Ywm5lGM3UIR(f-!Qfuu||z8*7fR+;a#s>6T<2*>L*V3 z+=6Istm%ctf+Kgec+;y1my9I;1Chz8QhCR$5_?DousmcO%u(eeGN|Up32!E zX-{3Ky?uK#1o>*B*zl9k*>}9qX!xzoj zDK$(YXm58u{x&6Gxb|0;v6?T`W<=)RqBn}SuRS|0x0D+=oA-!%oX-&KhU%P0wt~Ys zV(KU7L?+H{*M#BBf*Aujp;Kvz`yF~9>QIWvp2E8;0RTT6Lae2}+5OZv zXM^J1S7y40d2(Hdm4}LkEZUcdMUHyB4b-IB5?d)nh>vPYrM{#HC+zWC%jS z8IWIoY1!OtoFUmur73^5leAO!_7*Rw`Zy4d7|?Py^mBG_7DWk|9vhiZ+j`+9ama!mV4lhv~`Zr?Qo_~$FQ)R9yX(ZNDL*O6Z$l`(GaA4)eSQaY;c?{JR3!hH!icCVC7X zf{7mCL%$usR_)t%%+Wq(h7MstR+C1U>5YP{iaLRdYdl^5P0)x0 zSZkc)%1Z(L`IQ-TXBVJ9j;2P&7f|95#!t#JXcqe$dj0@Llm=$$!;pEHmY0&|blekl zoESd|BR$4X621l0EMY^Nx|stPL`>^ta9F{qFWn><06_P|y804!M7&hGUSjZC;76$)s|OLPy!P4?S^?C zA1Z~)q4F>osa*tmk zg)?6o(~jFz9YDMKY}Td?aOen}Zm{XQEjV9FiSt*S(1u+dpD52LC(6Wne4b}X83%~KB;JPTnn)5V%@AYh#xcW!L5~PvX4Du@x)g$>XTP(w zINm&g>=1w3o(g)2xQ6*eYgHoL;%-xOb_0MvH~^3>0T(b!LE+ZB$VuQJZA1wszp*US zd|-pw%n#XICI3_0Z%)iKK~u&C(=S5?oDL}%A6QeN`H%f`#=DuSXWyfewu!Zxia!t8^@yrT)G?CTAoT>I zQuY|xT3+?e4m3~m;;TVq;uU*g(zA&w4vw&T(elV-}IAT}+G@d2%N}w0bm@#h9wrY+1te8t2bJvBoP~I}D;2gAtliK6D zmcEQf)RehF@$0=C&h{V1+`Y@d42|@%t0-f2vDJUErGHf;yj{ zIB`uxLFTGn7jVZnc>+fHZ57&Ie(yV-z*dXlO&MRF<1KEb3gGda{80bv#Qe(67Cobt z28Hyk;mD*v&VIWVSc#&Jes%Vs6oP;0HIoP~d^bpo{jg#WVkYq_ITanq0}M)H9nPTW zz9xNUK;t-ps5ZPvepVLAyt>#XmRz*-hElAWb#j26KP7;zTs`{%iz2 zs5<-WRMNT13aOB^-vsyiYD7)O>U$-gU|W8qlR}oryciE;UCfTmn<#P6o>*dR3j=7d z>E%N?kX8=4V(ue*;7)J?1sX$)Kp6<<=|`T`L-MXWXoGoa!1iDU?U=0lFHbr8@v!Vf$eKly0b@X#*or zw2$HhipdBfP>$_-)rsgylsU?PSTWZJCmphdSuu=hk>l*cWpFQ8frMaWtU!Vq7Zu2E zB+tbKJauAqCT;z0swUUpls9x87~HoTL8hDA4tM*kV|~F^(3s%-37t;p1!j_+jgV=K zKamaN{0T07I#G{wx*!-{u@|^LWF@#JngcOku3qm@%x}}VN89JYK^WqNeP>wZK={-7 zdJP3Y;GXS-qFaSzx@yGE&@xynSHa;rgEKC52!&twjtP47B(?)&L&hi;LX5UIPb72U zTRI6)nMX>xT_EIcF)a!$5t-23$WMDC=fL$?Eq@d|hM^MzPwZ=8GvN^;|D;t|%Fj3U zr8L@^?@4YP1?#rn7aztG$W2`;s*)Fg2SMLB@No4-NRc|X!|gr9!eOse1(a+I$$}0q zlKNmu^@>wX&f&-sUGsyyP=-zR({5FP`e-I~E z4k1}_W2xMdtH0l>unU3ka95*cl`=U;9u#kSg4@{tU0EbR6NMECDin#tzu@c?!Pc;| zN}9b^Nwe$XG<%E|ur`>z9ax(TqUO*}PNOsz&U#|zv;yM0aGcaw1@l2JWZ3x2Ot~-j zHW@c+_iYxJlSe!^Rk%q^@z4POw1m-0SsSo^bFOz+jsMlat6WcyylCqMIZhx z!GNG(8fl4qMr@T#dx?^1_iMnI_J-tux0t-jn>QeHWX6M9(2%QQ>Ns2=qS9I#5~qR8 zZIm2SPfZ)%{uVMjdB4_NSyOKLiZrSc6#rZ1+o{!w(q|9W=Qlx{my@yEDN&Fcp-?sS z%=qgb!Ll_s97D9q8(-0<40?Tc0{HH#skP@_jkX^{xFT6*qEsX^l!|01;DrZwEmpfS zY7AMPD1mJU_1&8goNw=uH1)4q{rAlGAD5F@;s%IRx1sKZn7LI$NusL~s1h<=?d>o8 z!)%pRqE%TXE;nFR;?yz_b4r*~y!TO^l!W_woN(8#UMOKbC@zfvssN=xcmXxcn>W58 zz%N@&J>3LNuNdJ3c#&A5EE0t@gD=5Fz5bK1Yxj5jHol{9XpFgDVYo(rC_eaMydO7LG625C5Dv5dfoJe zb`^s32na|>FH{4$KFQK>m5+x-4`fjvxn4j|!CIbLIR8LX1Hj1wG%S$X?i606d}zQ) z_BBz8|Bx{kI=SaE2J<=~k52zX9wmT07B6doo;P;B*Xipp96;{GmP!v^r%Z#Hsuhg1 z26%~RRF()0bPOJp2tB&u`*tW13(-J;l?ZvJvP2w&Kw}7)U0nnZh?j`QH+YFaLIPrj z@e7Qj1SRM1K=&c%Su{nz!7{Plw%QQ^Rr4S?s4Q*ogRmp~U#?e>u7jb_V8RA8a0S7@ z8J;{3_k>)LH(;^c>If@PrD!&!nL)q*q66x&zou8-_cE7{bUiqd&O2KovvYn}_m|B- z;qblSLsVZKK178a#fGQ_=!h^Jb4*lXjx;6ac#`#CE@6CQ+`I_#{8&LW%_ViDjA zI)b~&@bj7@(+wuUg~g&ud@}qOFvBoJU4wov62%MSLzGB4M18`CDC{gSyhdD8)`+u^ zh<{m&iJAi^=gliCfE~bVgrBlT=+WM~LAG!%$`;0JgrXj=5$X|ye~iIYatcuk$ca@9 ztdcQv;T;#iAf6Ms!|ySUvQ4Y-D4egL-hRIL08qmai0^XI8U{$Y2^>?J4_nMrrrvrV zz#zm##!v#N2sB+Gwf9FTc_WSn2x(CkDm6*+a_NYC?x16eS-{3ha4t`H?~y${xHr&Q zRp%x&38?kBDmsFltiZ(LiQ{+J9T4g<+JjYDW-i{0?+cr=A?My1!lO45zpm){Kt2_b z4JV0~vtvt&UuZxwc9!Tl%8xH(fCM%+*05`8*+b{*BX!jH(49pP`K4GsxN36+sZz|W zIi_c`8;*P(!m(}eTjAKYn0Bgt3+s=Xw!v_eWU*8*h$RL*W5+&6Ud|Lt$1tLDQ1?_0 z>hG0<`l@=hoG0VIthDkA^HDA`9Zd2#jT0?tzt%DS%VR6Iu&K&Mq+QvFbRu5||HJWn zC#x%!N)EAdQm02?i)`0o$b4J`M?m1@KvTB zgRe40wfI;nJf!*jWZe(7>Z~PS{45^HZ21wJZ_2&68AK25@h$tS!M=xgA~kSEE9yj^ zMq-_a|5Exz@VNiyjilpKOIJIp8WSMvKfJPR`pZqhfA~a#5agRzDSymW;9?FB2`=Wyiy<6{ z-nDpoNq`9{3m?~Is!C-0EsktAp)TE;_4@{2#dUEIgj#u0*Kv&?XQ_SzyeN1-;)Md( z?E8eQXr5|K1`Vvea^YH#g8hw7EWqU)TqRFF2t2t7w9_}yWR1x=;HnqZ2#Y);aHJ^yp|E%#0!@(LuN-8# z*t`znE;O$nMvwwNufJB#>-s!tqPg=|2$szbGlO=TiWDDH`f}ULCk6PtPHzzR`*FY>0Os}iXkHIfQ$0&XkB-gjyvLX&EFa{$7_yBp1svJVRwCP69*%5Jim3m{ zpqZ{m2ZfQCuIsmg{TeK25VB-I+t&{rB{v3ju$U$_?tjSkO*nt-p+(CSV>;TmF->aY zNBYu`l~geIL(Y=giEtEm1?Q!f-GcRkBij%Zh-p&QGD(WT=Wxw&1RdeXc9&9<+8&|k zrGdO|08d;E)+r;Qw2dopgwrb8R0d2FlnnUL0pb;Q5rj}8Wxp@y2##yZ;a+e_s>>%_ zk_r|*BuO16z~keR)FVpXH(QBoQ{%X6$DoI>P{88AdEZne@9Y1V`fd^i!WuMYV1j0_ z`FIh{LK7it4XmlXt5o1KIHvt99LKc9_b^QR1Zo{nQo{~vB;+qz!l}l-a9UwgL7t#C zGJ6QpJ!URK*b1Ckt>!20lsUnGlY;Oxu% z7YU${6@V?uK#9mDLP|&dq+VohuJuxw9Zj8At}KL&1Bx2x0(`pasxZ`l<%ph$1>hP(FDb>;j+XC9_rn2l`C8X+hM8pcL-3w! z3!fDLM>|gb8hMd?(g+3tcW0-S1@bTJu!!JeoFJtj^hiS*M8IF4lORU#QpZ?P&B;}o`4sR&K2!xf=fM{z|c#FJ>ftWhbO_)14(+^E7W-0`TKZyY=BGPwsLdy`PR}o#FK`;n&3pq$egyZ|_o>Z})=AWl zIOH$x#UXzx0f+p}$QE@tv2)6|@i+AV{YA8*Rdlpuz6jKW}0 zefizRU=oTk9rLu~s7ln~%*^+ct96s=<5TVHSJ2NX0sr}MqMlW8m*7?;4_T_pCm+jJ zU41a6%In8YbPNOr_>V^6Fb1!KDtHnU&&(XX-9HK08Uv*?N^`V@nprlTZ8<16;&)Aa zoL6n6Y*J4hwOC}9;LElglWPqwvgfUo-xg0WZ+hE9c(fEwhDs3SN#fF8z!{7K(b@m* z*|j)xW`L&R9zOHu0bCMq zRF^9oRlhn6?Vm)4)?$q+oOy$z{eD;r@d^p8;pD`!o1hlM(SC*!?f=S4`^f~fUk@oE zFtp!t5J&qNz0`;3DBL*oSFuJ_eplJ39>5z2n}`>n&d0={dCE?8tO4s(?OLslDzqVz z!d=m?6oY!2*Wj({2Z`bN%qR{XP2F2aG2WXD{zph=+W)VREbJd4*}ipY(?2Mp zeaHL0J!@bN!D=Q`$nPk${P6pi^{4#Pr;?x}OaC)NgrFm9@Jhe0_M6Zgk5%P0OXG;B zt78+vL`J&=a}@}ktN)ltwRH>|=1B9o34ghF%PilY6f>{6uF}j{!W{u$w6C8)G6DGg z2`s_&a+!Ozgno0Wf5d$bk$+B~>C-b~dKXLIJsqRDFwP+O&n0!aWG%n}%e=70W(K8XN*A*ghRfrCVQd@8KfgMUSaAm_zD z9UKWxLvxAHt4oMGT0pA)FAUapW&X<;gc2srHQF3~r>x&;iQjwlyOaFm2}w2NZ-oxl zxo1QzmB90iuehft7UAfEya~MN&6flX#-C0z`2-C{PYSJ<+(O3!|GDn?-z^Hm(9Jl%&I*6JRWZc zWuqbxJKW9rF6Zz6Xwu9*Fn$V>-z94TbyLE}nrfNj)eo_0Jr^e@Vs>y{;`5;eCIV0tgkV8JDVUU`ctgZ zH0SY`pEY`f4}|^!9GFtq`mT zI`FQ)bsL!k-hPGqDf^QrZoIesXaDBR%LshSADz6G>z5d38;&kmeymq4yZ*t;4`j>w zdVaArxCWm^4m`)H)^39sHSnH#t?j-Sz(Em6AQvIgNi4D%~@l6Iw0(Q^xV--!cwKWIJP;Jb_laNoTr9 z=#Rq1oZXQ0x3t>GRqk)F>7Jq(?v+lhpThiQ`{!S9rzp8OTO5CWV(+UkN^{zI-F&z<>8 zq}1$c|B)IJgNm%}C#dQNhuaSn*5pyykq5|h`ThJEK5o0h))#U7dI0A~+r?y*`Qry0 z>AxLKjM+6U(_)RDyEqCE=BfO;hF4Aeb@CDRs8Zkg+tZU`VuM0igy7GPpn}5FPq|)% zUR#grgbU2bR<>lLJP7GvvHWEz*wgc(AiNZz>BKAN&&_yN@kD~acl}S7e~(N{grKz)>HQNQ@v5W`KFiTaSX?8nOnCdEuMT#hM2y&yx_>4 za{W=IQM5~Ho#{5klWR~gT7I#Si-?VKycigG`{r_7dF=7I-_pf#G2cjf-D~>m(X_Wc z;@l=i&sK<*r`#3`HGPJ>NidBr6ZcvXl|}e2JD2$i%@4`(*Y1f1DacOivsPU?48MC< z?DT=`(W8rFPF2dCPLkuvmxFGW$@}6SLFk#pFPF2Gh#b)VQE@s0YBW({C>)HRt8ejx^utumPKO_T#SbDKtR|Hg}1qJ;T4p zFO9(;`wSgjR-0-gEIUG#WQD{Q7db4LHuN9YIZjlV`-JmrchFRP)ProkmA*Vwl2<78 z8|m<%9Kn;%eBW85&1x6k77ymmguvtHL~?`98ZM9BR32TNSkAaDo#_Ih>lqr32rOA;36A{b2QEY4J;jye_f%my>Kk-(F~%G!WFNcKBVh!63MiZ_t@i$HIEY{w69gGK!}q^R3GLh9Z?8-UUNPc-3OY!vba}YGs#h_6WMIRg_jL)JzJ6t}OdSQ4`KSWFD zC+-~|EVndlDZiw2?)iGY2~@gRvE0OTQMvdfcPj9d>}^qFX|QOAdD`U>*Z0fT#dWlM z*UH7Hxod;ciNL9wV%x>y*}=WwC937-xq6mHm+^C@2L8)+d~w(SNg_ErgS?QB*>2OH zfBG+f(Au%T{4Titnv-3`qGhNTPmhvi=pE^mEPoQcRr{rk%Uzb^VBBH_nWaB1;Tn*a zOP`lJT2Hy5{T+wPsXW0ulj`_E?aRuU$Gi2?|MiRepLdMAj9tmZFTVrcyXSJ*tz>uk znMer#HhB1AUcmi$l{occ;%u$g(V)@JXWzp$D7dKWTJS|m@P3dCKn#!Th&8(O*%^%) zN&g|of2v(%cSe8MJ%7GeqRXsWch-Xg#!UR4k#;}NtIcf;JiUmv>z1oO+lG(@@6BBt ze)NFMH{!QjOfF{(>EIq;u4AWzeGsX8*>i|j7~3mjDoqAax^9L#8)T&|Jc zYU5U_yxdCCC3uQk3mZz_X0Qgf^tzkDjT$UiP@3xblE3c7#!P;%^VtC$WcncYg(`}) zevMuB?z-|6PYH)DIQpIpEw$1gj|8oF#M%Zg7%TmlYIk>&9`gQVZhh=_+ zwo=^rW~6vl5aZ7oYHE4B2qvqEwg`z^{*;N>dY&*IwW_NHcwPNAdM;0*0kghTEnFP7@6pZEKe$ zxZb!~Y$L8Gp#SXRB3|S7VvxYP5+wYXnhh6#@7GL|cHAFu`@j;=jJ#wSz^7Zz_{?5( zZ;D*viWu9@-fa%+Lhx8(bli;oTo$DAvj zY+N2nu?5J0{^!I0@7O;!xEi{)r}@I1Q7awvkxli5Y7F37&0s=V&5jHCSJ0f+{11r- z8gn&YBcr|w-Q~Z@$;Zig_Zxp$F6TAQYy7!_oOg3M2|u~N+ceUgJhh%prenS7-NyCtD{d~y&C^}GqYN$_;$Z(`9?#XS32F{R%i!3<0j7RR_RFEt)?cuRGwIw z@zobC0#uO?jQ5`FAQzuZ68DM30=i!8B2+sB7-ok)zHUf6PZe{KFjhaM`9THPw$pk7 z(X^%d?wt@PUPK}*o(nL{lN`U()cYOy!GD5Js-n8O!KoSL8qG6Shm@VW&FMcoLHm08 zeyzd?oA?vc=c+K2E#y847!ujn!n;8#RO!~zC#MmZ+h31T1fVv2>ARg>Z@e0$H*GCJ zYd8k&tOFT8X~jGc4G~bx_YC8xUBYX{dMXWZ>Nv5zo;};3iBA`i>09HgQVbfMq;gMD z_oZ6Q)vTN1sVW+-@=Bk@9KZm~E~UCDfCqy)Korf5InEdv%_G~sS#e&+h=%OzriIqp zH9u;Q_gL!R-WdV&xw0iFuC0E2=z3(G`Bh4)Xfl~Td-#3kb8TVF!T=FrA^_}l{p_b7 zcl4dJ*|px`@20zWe&=()oNjt2fdfS*pz|-;x~BZQ{GtGDXa@tcrKoQX3Bj{)a;0j8 z`+do}yR(Zsk;Wtv0Kt*hBjD3Zqx>g0BF~uSRoLM>wBK+2Bg^nGL1 zj>EITIc5{73&wYg6P=>z4~bceX?T<_7qWb zm5$pV@!x4(=fykK4WqbFwucnw^;5hEd#L68X3|Yf2z5M*OYC)xF>t<5|8yFWVCE2> zY3^E>x{naGl(Qgq*DNptVI)7|i8pUZZCFmWh3*+L$0qKUwY+fci|48t8XGrkf6`*E zA(rUq^5FO!jpMsNxa{}jE~f6WX@&m)(v`xh_S?AcVGG(l3L^afOOURiJan{!@NKySv499x;IeS z_bty#eXi%GW05NJOl&#|^sB>4y-rzIbQ^M6GSt7aT(QtMTR&qM{h{d*$DQW>op6&= z>7cQqW81*KmuJSv^*W)%`47P8|8Rrzto%ONI9`$ul4Wh&RV@;t-d7C)32GPrPb^e z4&lB$JHR z9EvOk%>?`7S+<}0=bC|i+Rncy z>`Ze0hx7U0Ug-bo7i6%o&>8PKN$<(o7gIO0=NmftJ6jQ2*)491uFqujdEg6Lj-NcFDrr07ULF^MxhF}w$ zy*gFsUO98D>3dY)n6oRq&%D*zU-R!<2tDd(9b4s4k9mOFm&%GGRAEv5yt7zb;4_NI z%OiXrsAJBjCM}+}FtP59gzG!mPIPKNCg@yV+T}ZNlvM)mOQ39}eZ6~Lwa^w~w2UeN z_lnUoq9^kscOY{kgM%?`kpNxG;tD6Inl$)&APo7%=>=K3!pQ3D%?nFhuTbO10oM9}LhrZG2}wwHMOL3@Wg2JZ#zR*C ziT2mu{t-#2s!}eQp8EfeX3K8 zksOx{ot4bdGv!iY8%;{?WCK0EEyxp@M|P3x@{B&{QU0QWLB(wA+_X_tkNh`Uu%2ni z_$%$}1Z8)XQ31MQX2&;ZjhH2a=nI5_@}QmW*n;yR+y(nJ>dl>6?(qs@XKrTAfSB+=l{d>|PaF+3;blf|b~p{X#ky0R5Rcn z$)E{(!hF&iUV+g}8D-vjlE**9==|UJCI8$wYH_^zAZuaqd0N`ONw?eA>FC#XMrcQF5*SelHQ}!>d^`Do7%C`4>x`Kx&E9bu$g|J(G0)kM0UH zJq3#0zI`V$@8uN_PuydgOvvrx(O+}zjpvIoLyCPQm=>*IGpn)C6J$91g24=6i{vzB zXScR#?1mP5CYSqd-v7pi)9!!VvJyi|lCjC`D$=B6fT4H2e)G4D#>GhUprmN;lU1a4 zLQ8X6X?~v5$3a=Wp`M%;@5x35Bqe2PV;nVysiayp_fA8Gl$2i)sP!p~&iJsi71@A(K* zAEbId;(o8eODXf~%HoSj7kI(#A{${1@mYQH$tep_0Mg#oMfZ8A-w!<}^)E6Cqx*be z4G%8ltp>*MGEi`twR>er2r)yw@mWeuYtk=d!z!wo?xQ|3V^Yg~^?t@=^6K`xq+2L+ zw@2E6H%PYZE=C92__d3^N~S}+aNSvB*Dk8ccHi9LzGtA(D&@Z$+~Cc~{H96$<1@Jb zK=N6Oe}D2ZBZ6yA?x^hNspCN&gO`HwMB6sm!S}jIbwBp{aRa6erpf2u>GkiAzg8z7 zAyG>Fei^x6Fe^q^Z&B$~`jROU(36?%b1KQL8!uNTI$GOcWR{e9(#KROQW#&c7W9j= zzs5dNeEM))Aeh+>DEV~d{2 z+Z%cc!ICwPvu6b61m;l6YY-9x^n?T*|F6}w{U79IYxZpt@-Cd~zJ`OocP`INn5(8% zJX;wsOZq0I-~z=uEyF>1ZaZL`)zn0D0wlasIvu@y-MPB9hwHZh<5JJ5@?Zi>Zfl0`(@ty8M)>Utf?G3eXV>J!u>z#2P^SNx#` zuU+4l8I4%$sm**;b>`;%fYv)K+ifjhm>IU&E73M(n>HzDD@HQ|VBCORMIsG0@ywhf zwn>TkObyNup9nGIh&>$_;OCmqoJOk8XSd7FY^u6mm0@V8(EYOTly#g%r!K2ueY=RC z3-y!5MPLUG<#r^0aQ?W>;bq$R7`zs=RfH|$Ju8uOnZ3Y_&VA`xVLKV;XwQcSZnUnu9{K0yKm-!{vZ<((V6#VB2chGLP zVjA_|KWCzMfIVo}>?-01Sk7r3)FuTFO{R=F7eB99{zSUTzc4$ttmqGuk2hYvul3*9 zuqFxQ&l*$9wZ>iu4_LW+Cjas7eH#fz*?`;>hu<&8VA&aSVVtj1V-yChhdd(9zSHYT z^yJh*fTt-R^lzGt2Wc4q)}mkAc*?puUHvAwF&I~yUY2k_T|uY%@yMWIx_PvwXaT7+ zDR_z96B5Xwa~nF+`!?U#!CIYqT;h}7rG#=8hIp5W=H7#bxG)F(Q#@l!Na5Rp)N-cL zM+%2C1UI?=W$2~2DVx>@N##M`_rZlD&$Aw;kC|aIRlGFy#|VB~o6Ju#Q;+qBxv2c) zmdJo<#mI#M?wxJuB^fA4<$cB+=kdGMu!g&f_cRW4nBJR_tGoyI<>r$dAnj_hlQR{0 zcU)PWuJf-184mo)Sy&GeWcs3rTltWK@l+C`Hpn{DwMjWeCSLR))`Q|W3KelSKSd66 zUXw+ZP}`ArXb19{;?EF~HI(qNeI2O)80PesuPV}SW?&hcIAG54tVtOy18PMr|nGU>lwt z`+VeGa{&uV=3eu?XqvcPy30+-S5FL66{O1;IAM+bo?X&+NbmHW`5(d24(?f=p`}OI z34=SX_=3{e3SK|Bik}Plpzpf{M%SxL4PGo!VrKxlB+e!1q@-nI6l;m^_!7G`as*)n|YLS6lfAMk2L*HhrhKp^o!M?T2BmIg^_~2MLSR&DvEdtO@ML&pJ7u z0nNGOYD*m`96?E5u@CO~%SS+rWQ`|f1wRE|ucP#V$J+72EyZZ6?%C*4B+-5(fI8g= z$M=GQs5&QKGln%b%F_AE^`TgZf8{RFA~i+r_(Lg$uq^_&j{$~XO*N9RqQ(yw#%^^M zUxN;9Ind+u7bg*%J6!8AWAGlUAF!=;a^}i~&(zwEa%-NJ8yy6^V!4quO~2}25bPOa zwqZ&B^7Qx5@LqhLrD7efgR9BABjD>gRoCvv?!|jeF}z75bEiloZ<0R2b~W-_Wv=ih zHOxI)z0b)@6Aiyu@zCOwx|9ps#NHPh3((9^ZJ(T8UsH_!2v>T@n>0Na7NE`P^#46v z`)rZM49c5Sj10>phR#Ngtwm%`e?$c#{AZP~sV^ z#;WDH>0B@-4yty^R2jzo(4jSfaPBc5D#FqIAH*~N9_`RdLO9x^|Lk+tUiXUl_ZtqE zLS7CFa%vVGSN7T^Kc8R8cMKcByifze1*R#E1m1nWGjsCG?Xo1pPmdaLx640*T8CW* zMaK7OnDvuqM}%i^Hjm=Tflz|ihjnP$xYL|PkZUck{iRfGQNtUg3SxYY^U;Jj>x0bC z-Of~1M#!sKj^x+bmo{pJT>ge&m9M4@%ZnF)Zq~p9$qr=LW~F zZcpAnW?HJyZ_=E<$Y(b^tS4EOEsJn^_BGH*bLz*>9+PN-1!je16A4T|^SeW_LfHLIJ;Qulpi(z)PX@t!$}JY;y~J z8MTjEwxQH>YL{{8Abwt{O3gW(;_;x%xz(@vi(%^^k;otY9)_A=ok2VGp_ah$rCx zO)C7KsjdJ2WAN+CHS1w_ILaM(22m|f1?HYc8o5S4Ro=X3`Y1W6SPlMQ=&V^+5=Xt0 zu6C&V{KhEI?oF-zi?ES2TP@I(#Fy}qOnZ+8$fet1F+D&*kGdV4WqBO=howZ0q)VF2 zoQK2{EX<}asK~YNqE_y8zFbAhGedz&En7b3J1?-Ijw(9u=E>bJb0jaUz`;+4E_ee1 z<_<-F;N43%^QzH)YCNd`tv>ABDT(3qVl>@7`=aI4Uy!4#Bau%+8p1^ln3$>}-ty%0 z-6$bp58RVV?@N@-a`Z^Ec4ayu9t$#ck1K@G5!L{gXQBJn=VgYY{hMXwk8*^j_QR?u z0&iU1+QKKc=q1iJq|K(;x-d)1e#xyeC8HTzd`w<1+h9YW;Ma0lFWT((98TurDGXUMP`r|Si_r4dX z)pox`oUmh(81>W$OQbdDP+$-%HRn)4aU?b=Ml>tY2VUpsL20E6kFV~#va>Go9{s%0`7>aN%&AK3QKY8tA) zA7L;4k-KJFI#SVFn4(AC9>2a$=buA*G=q!MT&_qZB!t{%+9od(&=>`x2ffJ^Mnn+R zf*)dABo%xe!mUJU^vU)O%TJp{eES8=K76jUZ;*xYxP(nee6wZSXumR6m%4Exk>#>O zPQBSOq~{)1v21=wH}?HyKvMfM{D7{btkS1k-HUD~OWmEKf2e6-9PTr$1)@1{x860}WqLP2&SNPpM`z(Af3qrw7jZe%iX} zV)ij}9}DymgtrwqnJ2m&67_BIqq;24R8I<}Y( zN(dNVEq5Aa_cvP^EhPOIATbsab=OAx{F%$UE8j@p=J+X~dcJ1!9om%W6(BKueAHp< zC4LP0(hp}T+6$ds3L{3Nr0$T^+uy3EGzgzp-dLV`WC|zEQNFRD&HXId>zVs4($lA1 zA1Hdoc)FW7o^w5;%yh|)r8FjXc)%wvKBp7RvlmN3Xh#LJup$CJ#IvMw1kjJZO>LK~ zpjUNfy)7XycZ-TYjI=gj`zk_coJ~#e$yJ+9S}T$t*Qi3W9`@RdN6agW-y*{X4@*N> zH6<0Vuh3MjicWmlC^P6!Lt?#io{zO&BOMDB4^D6^U7#!~H@Rj*a{PuTsQ>c?Ic!lGq2G&#!ONGth@B7$ohbDs zd8&nM?7g)J);FGa5P`CD-`Aa%g9mFzz^|>OAS#?GaQ4x3v`u*RLoJ^f|@1F)k1nRw{Cmln>!LjCugJ50gZ=cB6#RtXJ=i z-NJ#e3#7cHUb!GstO@!@*9U~_7>W*T7>-B8|HN_wmG|=~4c2HIg*|)HdYp(_LND&J z=a1kNa?5BAqL{C)1fzXh-joO2U_rkomFp}*Uq8+i%+aH%c~iA7A{6@FA&;`)AqjY( zw!HvTs|R@{L0YaX{hg!tgC3i4i3B5+2xz_==7M>48C9My?sXF%mNVEvbrt$S#;l+Q8+|8syR8;-ztDK z$n;^u@ek|QmjcbVY>2-5+;bQ9Y$SsL-)W#G`cmcCMqgJYxBP5Ay9Z0`5=OMe!yjj< zD3M{5)RA&c^CVirRz)CJtX70LQCR`DMIJ-GZnG-@QTmAmjIEp#&nak+IUqGdZAcPz zah}+U@Y)*z8Ym*90`>as;-;u3x@S6#MnphOWx4OP6vQ{5kmYr8S<(BD3L3A%d8LGu zalHm27Gz|<-mBMglV!d2485<|bGyfa@a_>ET4c{hb2H2JY}^nl_J0STM9Y&}6k$Ij zQIrlGO{%CoB%l^J2c~swPHD3AY!rqmTd_j4J#Y_zV_~@BGX*Ghx6I9M%llYMWE-Ux z#ji&wG452Cun!c4`Zy|V`;~RODnb!Lv;XZ;r_YUVniQJ+d13H}N*ErnG-U#jyr#K0 z)bedD6>DzATlhNKjQEoUXGJ_b9xXw(hp6|2-iK9Ni9*Di;5SC$Xj4oA8fyp4d6q{h znM^2g!8U|W-Y_bGzk}1FpOaMTLMfq*Jtx=CAECC9fK##4fbYk4vh3?1YM{H-9mtrN zv@JbM2CWUA7hASO&r&W)5UCWK=HD6e?q(vf4`cXza^&3hblk#KJgyvlSM*GLUoeh5 z``E+MlTk7}@6`+5>CbkK7PO3juBxB;ngc_-c$!h8s+5+Z=6|p5q8Bv;e)Q5R*i0Ge ziF73@qOH=yy~JvTh|`s2V;^JN$<~Q>i6AONVl&52>vFCa@7;9Y1UFK`w9rAAhE*&O zNZX}{@m|NygBQpa^`Ih9;hr1jOs-9y-0pN(@3)gIwtCX3a8L9w*^bUkH)?Dt;6|7w zH;4!77NLKmE)VO28XURu(q1T{XGfOww5T@#h^jPnRNm_~`>O=4_+XEUu=9ySrF8Dc}KU*aDPAM5eG zQRat&0uYr?W~S0b8g7+x*T-@69J8KleMXgYZr*$9*11RJ9NNGV@S&)BwM%5V>$>%* z{aT&~JDD)8C%en!yvPEtVI*H#BXz$rI4mU^L2+`Uzw+(@rI}{Ol8ZwXl1IcO>{$A1 zOWN1=w-ih_90Y+^yQOXi(_c>4aKaqFXSP(jLq%XdBGD}_DJ-p5MwjE;0doB&4Y&JE zsq6rGf^TIRrTO6>`U-V6jxV@=i}kAOM*o3lKJqzFC5*% zeULDAI((9tA|J#FjqDk`wz6k#B!zTEv?`&nVx@!(9YFGEffKulEGI3J`lW)B zZc4wgesxz6BJB&M)$iP zgrM}Mps!xQ+AfalWw~DIg|2f_a9Y@7v;u~~p?&WzEbs2QIiWQo))j31kO3pLawyWJ zK}uNUcTOvkf}r0eYgqgFcSSWVMqS)#M(uQb$=zRq8);$ecR#dLf}x7A$5wKXmmW9? zm}fT9|Db6VqzODE_^0+ElrET^SXc)t@Q+h@j-qbzUzv97DMx3P_u}6*cSVD-ix_yH zqP^+x4VybY5j;U7pWB&7Nx|=0)|<}6VT+xB9a@|=cKYokBSkjoi9v%>Vb37(S!X3e zxIe&V&lTK>nvXIKhqs{*h;Xj^<}UT66BqaB`oY$HdP6|weqdFUkX(lF870syys|_t z3H}*P>^jh7EyuR!+4unF|4<$R1^;o8XcVh$;M%u=83hQ zfjJ=03~fO4Fj1?kkh~^1)hN#{H-yClCl7m;y-eoC+Ku}2jdme4(G^6aPec-1xSHTM zM>o+|AVr=yK^QrDEyL@6HwuoHxE5Y=b`?6%m3lo{AIb||jNHEme18lA$&kM0GNOJMY+vc(Q154%nkN zlMJ@HIC&_?+kK$Vk>_GE$<$qd0Q^q>(<;gU5}^=1OH~%blTqfM=KA|Yl0%_U#_6eNuUJXfqh{ZvKBiJ*c^Y;~ zwvkb55)d3IP8^qq<;Ds{)KY8}VzZD6Wb2&8;Hak0&8E~^v?A|Xww-HjY=E#bm3EiA z^-|_UD^|~mYoksW#j`^9*K$hB{ly4{t_Lu3(vgZXsNV@~@~WLQr9yeI&ZP(2r6CV@WRaK-^eG>UHj_ z@D^Pp{>Eq}x__m&d>BO!o(r?ZER6m|-G;i2{7|KE&+F&PC}(8+h3uRTo7YKN(^Rt@ zs}{XaObgTlDh?}0`(vijpbgsbh~MZ;+TQX(lr7N7N(kcOj$;GPcWPj!*Fe#3-_^tV z7jHFELH&C+sMYivE!fYfV4pjMFw^T;VQ>(cC~x$92pq6fM`Vxj{)v4K)DD{|A*>6L zXjUSc#oLW?P?zo!GV4DpL>^lHI=x<_13R9IV5Wi)e^Ke(3Fn-Nm(-WRkE3NTYV3`Jsk#N8)df&fMMd_iIdo(=Dln zAN?`OF7R^KeGL5)tt>;QF-3!}bQ;{U`-E8)#tCx68iwhUcol#w*CKj*G_H+UZFCe(W9h;#l%)*i8p|qi5#i(2fvKV#Z+3icfHZ zCB!v_lJrs3eIWfVA7tjYWIf}kSQULM0c?$R>h2OXT?rdgV~Gh*A3d!oq5hE;6QRrI zrSvR0AbG|E2ooeY;Poar)2QJt8)VG0@pugUuqP|pKNOBaA6(VKNL3C@BVGV&JLPvd zeJEdFo9`SziyYI#h=TE3@It>Co0+0@aNtc$7T2>;+hinDg=9rHpft{ zVi~{*S5_)}1LNQZXv7s%2^2TncQ57^drXT#* zULJJ0C4U@GK|&|_7?Dll^7)JC-xCgIE=ak z9s?g(3LtxWp^U^e`;)=avZ)CR)C|P{X=XN-2`dy?dow@_wb`C#Yp4iqwGtsDcthQl1IS=};gpVw)ZeQ#w%>2{2Nz=Utd0EpIw- z|G2WSe>&^%6C3{vf&wv~MNMTHTlO4h8mSc9wO(HlEA~i5OdzAmL)XA_A$Kscsir}K zup4Nms++ILEW`G*o9^|4?cO)K+7Lp779=pZHpN#>!j(IzJQ{x~&*i=w z6tNHKv*N18RUZZ4T)A=_of4VCM9*r&M+%}olI*azCqy&Kyw-|d(vmi>D6ZtS6++_` z{iNsB*~9nm_>i=!zn`gD?GZ@`kL^YF4!`ebRFTo?`Q-vCus@j=kqyh~yipkP)=J?A zWjiT@a>+YJ6-h946T^>A;#~?tY!N!y$;fO|e4Y8tsgO*q464xl)dA_C6-6~vZ~pjx zoI@wSbRZYRpZ?kw+pe*Jwp~#l^|{8AZ}lYD<`E z{wz>*toOYer6h0+j0CW`)NU^*z7wKLTX%2mmU9G>+=dSv_Mo@DTH(wU5LaL&E-E1A z$q^Th78ETN6PM@g*I`9O-yIn0O4#z*xKhLtMaIP$@Zs{;lMfDEDMW_1CVxbynObdK zQI9f)rLMm+yG9rLZmxa)?O{13T7o3J1pWz51?1|I$AH$c{J_d^A_Qs>RSOmhN#}|_ zqxowN$Y-cFWPR7*70=?c2c9Yxp|zv|SK4C^%zFk}s%jbHhO*6cE%)W@r~i^VYclp! zp-ESG?r_%!RudFA;^0iO9bKFxmYu-BFvikAi9A(6p|m8-p@hbSE&(la<<-}?=;FB6 zgoj~7Hi|}?!%8X5MExLe^0fDB;pv*FWzmS+=!)gujIXE!a0?L&!~u+>0Zw*)=nHg# zw=!&}W`WxJdO=bp=s9nnca}tMiy-2w1`-Dat7Nm8bsH}1K>h&{Z_t*3WM#1aR2(rKuxpX)^(0dmMv0TQA0V_kbi_fT_9g+LAe4a$^ zN-H1;5c1FslerAK$tsYdVXh+R`Nw~G>o>|mJ3{w~`1BK+08R6ZTI2+CDe6*U5G2%|-8|0M&4R-%Npkrl{o(jsa` z4HO6&NIyz$#Q=eO;_kyHg?4zB`#t`J@+-f8fWY=4QwX+B6g7J5s**nRIy4qZcv){S zFFZF>XWyjI;y~vUf_$yF;^bw8*c<{)lb1vDke=^ReV1(gf*BTqMKz6eWus2@z)=E&`EyhR<~R_H5c^%_jGc(@gt| zC|=15#qnTN_o>?YD@-0_)1MdJq<+LZg~n)Pyl$#iXAc!#+d`>yL>SX zKe6SXtSK79r9MT?C&2B2QoD?hc~7Ve%m6Kp@m|Jef#Y;VBb;@6w}(-g;M1^b#CA8T zXi4zOj_yn^N*_Gh()z78ejQ{31U$S3p>2|*8TBH-N7`mM^{6s9y5%O+t%Gfo+zXzO zz~8(XB7S=~2gDDR?)D{PEg&#dG~-P{B#_+b^nO$jm^54zQSX5x0Sbqs5cTf3m%!i< ze$igdb&xbLu+s=bwT_JiCx=s)xU6GkfDB#b2EUkKf2l2;uC#b!Alax_RZNTVKgP65 zwVZ$kNx(4KWP~?XnrPHfB&$WdnE>2e3DJRrd!yGBql)kMe13P16|4yGX39g%`vE6b^|yiMy?$S_q6Lk_ZZ69llnCC{#%}MCjSVPiUFK?Axs1%O8x2lD)L)lU{oRKOWx%-mSF)7y2M+ zUYd~ubv|ZJ54J7w-+UG9=Kd~g(r>;7dc>C*riiZu^KLyQdQUpVO7EFF(W9{7$o!KD ziimq!XPi-9z9#WOpCD=Z2D$Zs$K~DtTd?zwd*_>h_&^TV{7u!*n4mG=&INatB^{X7 z0W@=l*0B61PGfW(GB8`p^-w_|!gep_CkMuqJm5jq?6{`rIN*yU068`zd&;yfXB&MO z>_U2EH-3^})j!=b$CdKPz`>Y(N||@tH*4#{M08d-UvfHO?+8hdt||!Uv#p*wdIiIN zoigfueOp-(`1UPF$+o%AxGbidWk#1FQ%BwWI8HY6ZK<8~^j@+;s(!Re6f?8=C)&lwAnEr42G~}rO9pY^rc$ZAI#TgHg5g$bDrfs zMAT#<^oJ}8?OYJJ+;LKKK)>db>>6eq6<_r}pN}9`f?Q~})kmiJGMqNAjMUHzM?(r%cA=fL+32jpJvrujCJRINW{GCye znDo~9>}~&vx$!DSFAU%G>6v%?H%+gd4z@#eiWv@3?ciQRJdMMFIx?W~0+6f3sS@1F ziKp>DR5zRE&@C;&MqQk8^=~8^6)IV0T|^C?a($7W?09^j{`@;fwMlTVE}n)veKWx^ z3HoO5Ce*d%g{OJ1RQ&Hayj4 z-xgXm5%z1cBxB$5jv?L}OSq`6b$^!9vopG~(8K2Ghxb5$cjiBvF51d{$Wb)$hw3R3 zs;d|FPb~K+Ph&p6E-CeK3G8D#jS-&Kk$>00dEGX7Y&$1|nR$&Cyu@K4-Yli(RVom` zGy(sFEA3}-Vkop=o=_AVUtMK$jGDy%6hFyS=q-r@*SO89(7vWmXD$mGVNbT!dOp13 z@13Ww8!VF@Gy)o~Dh+&@!bA!48ySXimK06`^l@t%19Zp<;h`ZJfd=@XPF>Q zNjIT6BtO!DFYCN$YnuBi_*j?V7#@9^d~I0NGW;HsHB#Yr))p*O06P1ls+U}l>OK=L zXuH(wu5U3HXiV-)w$fvH$+O<-JbF^EJPVr)8(jKYGdpE@1Nm<9x_+)PUPHOrEZF<< z?y{`h2m0SHM0s{>mi(OeAcm+%NJf+Q1N{$F_jV5GD%}$+mYq&xDiJTw%i5O@P1k*m ze6a8B>W&uP`&ZQaJp;XTIZQ_OO=AGf{H_R7kGA>Z#?}5hUAIAiYu>{9`I&ytXIct$ zB=sYQ`bvS&N#}Zek=xHT*-IYBKZ<7UO@Vf~KbEPTB70e>hdssPoClXiKnSBrYEC9Fj+`p;g7`HCl@!H=!L(iYG zPeaLSi0jd|TPA2{Q9IhxxlVEiIF{gE(gqzUp6jZ$`TAMi*Xvd_n-|2vhTzRWVIyp< z>FAHI!_H@3og|!sWL9<0WjB{Ea|HJGd@E(Np>;WVJI^C&*~sN4bG(W+t#2w15S9`q z-(`pKR&6e-dlV5rXZD;7H|&UAB7*A2G_D-B;){ITiFT~j=9TEs?t&EN>+qH zLtWNEN^IY&q|a&Bi#G3RZgZDHg_XG|zTuW2SH5v+a z^YU1+qdFR|H(SW6tU>-n9Sxj4dqn5fAL+B|I_{%e}n+ho`R& zXzKs|rjhRMZW!H-bfYLDjUWR?cXy`(Ln)<8MBGL<2s%JvBCsJT2*?CMYQ!`Ae4pPR z_i`@xZd~4Hr(WlEb}urS_TT&tE5692ntO2RrJ1#@A;1(6C%>*DvZo}peWQBytgGo> zx*bzO#iFH*YFq1tx}}z@E}TTcLiN+hXT70gg@-wr6%~Z5eLDv5njJ)!2^)EUeEWJg=WLE}MRJyxE$*60Kx$yK;&+ zKOuLE+F5EX`Qd;H&si2ziHy0|;qK?aR-IBgcC_P08+oIO0kbSE3B+V$bmV>))jKX! z{wm+IVt#Y39fQDbfm_6X4=6T6 zkeKh;+8S#Lv-tQKGqIMNolG#c<{VZy(qS6f993oHCm+HEF)aqQMnM)eQE9D>xpSi`z~o63DnepT7BCP#$(faIG&M zZEWkt(DdllDgi)OiL1MkVk)7+|CN zvI##>3$3$uGTZoe5KQ=hJ0Y4mSC-IY1qb@Ba|&dxV6W=@ZHFappr_pdBCjy~Mrk&{ zh_Q2OheLtzHIuOG(A!3)OclIm+vpuUD7NghCiSUbX_ip?AIbcyd8F%3Mq5#Z(%t}q zPO7ltY~U+hbBRa~=Hhzx(AsGwO6@)-LdxD1(|8&_esYA`5P?r^#H#%M8U2cf``aH~ z40gKWp>BZ6vY8V_@l#=R2j1z9pU&sLlzvF83FLM{&d=(-hR-|w@1KstAb%yJi<%#d zXcv~XEI156fvjIe-bBGp7zHTGyL)!Ku2%*a;h$#{%X-MY<>^oRn40`3Y?=LIF7N%} z8VLDfKa%+oQf{zq^*Dz9TPp5%(Ag*sgiTW2vi$U$Yn96H88xhQI;s`&eMJ@jYeZZ< zansQ?h_gl`v-yhquhrub;`3ACH#eKM6`F?MY`+&91cZpCQJ#Q)bSHgnRdavaT_i+h z3;VM)v}>!O@^Ja%SXzVqIhtqJ);6`lK4P9aL~KA=4;t8Sf8N8>4Gmm;^MU#B-- z@G1PvQ)<+F{WuYwZhOH8zu@!O%L})O8#TJ3siphtM{`Bvb-}lV^_Q)H{6jdP0MRu{O`u?A}j`q#InCP*)cjuK?#wycA)6=4AhRC*y|vI_akBc?^F8!-;O-1m zls}5mBOM7CVPt~0& zFJdoZe?N`fyNdgbuNw55;)0dA{Lz^R(Vw4hE@{bbe!jtteRI=%+G>wJz5g#_`fXV~ zz7qM~cyB<^ybuZaA@M-z`jLI_2d5V)YLFc-6PL=R_wsoH47)_`i*gQPZADlDGB&OG zY>BG>t9mSPb4%rJ>CUXjdUpe-!`6$;$}bNtJzl<9_x;Pjwc&X<;Qc)uSBN|=ZYa7O zJ~$JRJU9IqxmFpMJV)pY=|Xd^(U)I4g(ut01Uop4KE-C7!mf?|tkJLA!gtoX**=@< z>b+qVX3e}2id%v_`V=|cMHZ-(x4xVIK5;or(%7Kq;%kHYcC*#(PtWWg8;ImWkds@t zBNTmbZDWzf3Ru#{D{hz0?T8gGP-5WE9fvVDd3vFeWsAM$p<=a60|J(r^%*9u&lAiw$!jZ*dTbwAKKWf= zC}7e(=1ToB-ag}DNxI8@9t2*FHrrOAZ~8*U0ctxX9t}YfHH@QN2FlW){pRmC10Z zSQ-xi2qylhHr#I}ZZD3-+a@~@3h|UttoiekS@*srlN{H+eOCQL36wP z3|39?+bmBV(CDNf>Pu4~K)r09`%eP1u88GdT&ExfS^J@YpGkH3<9|XGwa^949WJ}r73G~Pqz|>1)4F;nrX>&fLbd}HU461& z5j<5X?)38yV`e8b#WK*)8pNI?3);)4T^NQkKdrN*(HzlX)JOlO#A!s%76^}B7OcOl z+KJ&U`+)_sn*V`WRijGl^P8Ys7|~)^Vf775E(QEG$PF!-bi{i09LoX1@Rd1fb)}^v z6MI5dP``fbaQdA7rbQ%^|F$h$=EMV3Ru*A@;YYZ-%`$yuig>Y@5-IZhqy%AUp z^|pWN)S#NuBOvHXPrz!Iex;A92j@#wb%Exe&DK(>|S zcEVr0TV@Dy4EuP=s=Ytu<&UN-_Z91+r;V#@&M2LhCU|B-fKdDH+ir#UFZ9QPTag}= zsWepLqiTjz>Eg_8gKnz=2aF5Eu>?Fe(IzXliIUs4%&??fn~B)D8Uo}8>os!XJR2h*Fzf>y{Io>TAkCS*BV(W~E?9vSvQzEjAh{V#ik#MqKd|NOC zxiZBDdwN+ywM%MSOy(lQ8A0rzrPeMbt4fiIZ;CrZ*W+UZY>RJajmF8P=@IR)7*QhT z^?dzZHfG-g{)Vtx<0syF#`3eJ@mrE#3OEBE%{gv@Z3O)G+=^vR8;2E)VavTd0&yI?iJ& z22iM_A{|%laqyIRBb~u6bIUA6nyjVL?4rBv)7ySDpHgL_4gcQ{GIH`i1CGyDp&w$V zI^aGy)gnL5;7;IDay|+*Q#cudyp+t1C!D24;N&+#@=ziBbcoZRIvRgEQS-5HIGzD% z!=0vtizhjxXmti*2Ih6DZ6xi5A03w_RKr$M{2`hGYIkq1lgryj7K^hAekIq!syZ(MVi)^el|=nVrPeP&j3; z#k0yah!Vv%R#6)-FXnTO`xo{BO$mZkvdnj^hwzPrRS-GF*7A&;op5iQN?!P>^ zWAc;O4e&Nzde!PJPA}#-hE9=o_v81_YziPiu1(ljl3s7W!AOC(p`!4hiXQC`guikPh zoFa;8I`lwViM*e1+t9cBK@H@bOn+jSd4z*(C#F%@_GQ#+FpkG=oqw2G*`zZ|h>*16 z@hx0_+ZPUf<=4uU^%|lwMih~AQv6xH6dN&biP;HO z;yYHUsQd3k9rCUaq{P(P(df(l>`X^^dvN;3V`-q)VWC)|gS%A`;zee8sSQEpBzsM_Rm?8$>I8HQ&~4fFf9GS1*9efNafFyHxAq5d$KGTEEAWq zh2HjES@a}xrJv(lWlhp(dDB_r>pOfV59SV?;6R`$sx`6gh;|c8B$&{RJiH8?1Mb4I zzuqQ+ry5xz>Bo)y882~%osK2i6P}bL1kgRb;I&JuL=8peD=FP_XcDaWuLzoF2$*e# z=$v^T>Kk7U?{-j*3%)G@$4MXAGi%~)&^pP!7v=C=!Q;z(IM(>2mu}plici{GCWx7w z(9}_9-mbhU`WK$3$b!l81xlT8TU_{tHeds6-y&HyUM2sN=prdRpGZIcaMkKSE__X3 zg^|Kj;t`3Pgpy&2T84!3FHfa`gwb~dMl8dy!k*7G1XpitcLQ}uck#l2x z=PeZ;{@56JMdk!ES#81DGuri&gDms_ph`rPgH@Jk@FBSZ%@Gff z5ko(YdmyibA4~kI%^5`^8n3G5@R>b0dQ8!m)*i&ge42REr!#+;x$6_9hU>{0p4Q#m ziBT?-(mpU=@1I^)T}2S6H$)|NxsaCK%g5y;uo-$L7Gr--=KEwK2v8jVZBWovXxV7r z7Z93owaVN+*T@mgIrB1o6Y8lKB0P}}&mI*owhiI;X zh|0cT34Q1v=so}Mco^Gr&{~iWS!HSfWpdkzeB2Wc0p|N!^74m)nT5CW2w8~z56jrOdve93y1fk5 z=RE=bM2RF=PWR~(rM5&}M2NrQ&k%O`s-eBn5G*qrr_5!LysQla>LT9#ETPCaPVhEa zP;<0UcO~(N^XyJEZolBp+|$TS7Uu1tC)8cI4<@-u5jZ(o-k*K(yZ(5F{GxKZV<_mc z>2TcZo+gc_Mo>qmnz}Sz@2p1l{kzuE_iafi;mL?Hc`Q%k)l;DVCL6O?@0vG7mF=hm z;Pqg66;CH|FyU2v#&gc`VwVILAzN0+FjxE`HJEHZae0+q_}v#+&9l~0Rc8c2j6$J& z$Me=wfGj&3GYKb=?BL^f$zOd)vRtsj_-o|evoQs{nQ~ONtc)UvbXa6KDnB#&i zrW)J1hokf!&AyRDj(e~6;!@hc)WdYYk8)D%_8OrmQ8`Jn)Y;V_19bl#Pvx`Z?($9y zTiJkC5iA{9+T*Z#jK^}@&h%VWqYAaerpmWH@rKUQ&gD)dr8yHIvwOL#2WQ&#fF>l$ z|CZg!ee4_Pl!&IFsdYx(0mjc`>3oS;I-f{i?!Jk)iw}WQpV{tv*}SU_j$d3=^Qy|{(^`Py?w(EzURlYI<8JKeveVin?&}o+GzcA{lxyl4z}sSOG6I!J6-jhE1Ik11a1v%pO%?cd&xs>6mxq92G2R} z#bO^y*oDM3S6rn*2NGA3 z$dZd;W&(QG?++^_g*fyD!K4-VdqW1R{AbUebLyF}eTt!WYrtuWUiE(CyyXC3O+b&T z4Vn__i-xCz(@K?@#&zCSfSsg+6tiPiiCsB8JtoYLXRH30I~}oMDJm4z3_pomMz3=h z`CPIIEfOE3UkP<64la;u;A_(M1mgppk^@*!XD->VPSX0Z&wE|@-wXO*{@)9h%a_I} z018Pn=`1sFE|*KZO!Oal8!!t+wMu6ixDnpVG;W!%Z7L>PKLVz36x{On=qGbiRnjpP zvbSM!z9a#i-QoL@7rig;p_uvwZxkCd>t$52ESm$RhvvTs;f_=rW(Oi?2@B2G+!lNF zLQdrG6A0`ua^xxQdVI}P&)y4FaaJ@_31?*xYA`<{tm6?i@ILl}lRQwj3I2`aOk;f90 zXgALID-izGI5Il}3%pPH!a|O7n)C(hT&Wy!Um6W-yrAwT9`{@o^C!JDHWuG8KYdZ)Y%=b>XG(GJ*}OgWcFb zz1E*&xed4Mk?jVIXpnAJ93}BRg0EUvGcn%pp3U>OV7c{G#LPIf2|3R%DvC)t2sg9= zglf2qg|t5+=V(7U_Yx^2o(?%$zt)hT3A{5djb$rp{h~xD5XI5BrQ>`Z;Pw{jQ?#%4 zT?-~UjahryonM<9f2etYo#Pp`Q5=e3indr5Kv5{i(};KO;RL{BVGo&<`UbVC;)4OK zYIq(Ao`bY+NqZv(VRwZdWWU)tZvOFg`!KaWlMD1b>l+C6;zwOk&bc1WtFnDyZ!@Ln!`6|f<^ zaxv5q$4&Yn$#)$4|Ev47&K_VZS*HR_kWUwbi(b;B(O$9KHyO7xBoCd5+=iYx3oIBL zd(O^|-?I49tKIGU**`#|una0JArqSb-3&!AV~Y$5)H2~V-2q$3$||VTZQ=VW+HG`s zcp0At$?Itww8Ph^M+cyUdr@Oik>|gH_Y_I9!7Q>&)4W`b_XA&E zOP&N7{^%K<-+~gF+Sh18C_2kYkHp^PEE$4kh9B#&qiK*yNI1aJP##zxgk;oDA+HLh zgvmN@ai=vpeA*8J!wf4hqi;5#oThX&ijck1kTQx6YP$>{nTrJp43shWQ$N!>;7_vc z_YqN5WzE5KDxO#}5U*?a=r%&1fzb(#@bSSMxqS)Ub_+NSO^W2bS1hFSHG=kLnQsa$*+i0+ zelO)bE=$NLdf)bD9Ox>_Tftnvt~hs({qp0z(NmniLK$%yIX3YsdPN8Lv)N(KAjijQ z0dq5F6&#)zeX!=o`t_p?)*~vjO4e=H%6eBx$ym{O=$ysalEWevzv|Q74|H@q*EJ9yKW=%1 z*-#>q^>!aHymvZ#yu_Cfy!$qOf!4FO$Upn@F0UJDXK(&J?z;`5vzncb55w=dip%SO#tmXfJhFNQKmLV`3E z@wb(g2aiZT95kdmk8s2~8B0*p(%MuNjN-X!oaEbbPe+$Ywd$bG!yo_gNiWZ<+?@Up z-R3_1fpL~}v^4Lk_I|o5SBXg(sWjJ&i6pfuSGnV-vb?bxhICmjq)9V%mJlx_W+Vs@+B)UbgHQ7re z)%f-u>+K}-#kX#bXX0YL*~2xW#E3pFe$Pk<>6d+n5=;Y3ei0Xa;U+y)>k?!!)P9RwN#UP{xJK>YTylT^ zGfR9}4C12j%g{90xsfw%GQO#gf>&1mjf)&r-d#HQvQTf&b+^(whIfXz`FOHHu5tnw z<9;}MV)1&g+QRj>jmreq7}P&aE|p3uh|T7814PY zhWqPIeN;sC@#82{EffPRTeU!0JpUWF=J$SC29Lu^9xCZ<+~Fj=#cQdxHSi;!*h|JET=RL z+R8#B%jEk=*6gjImV@j`V~?3D=MAX2beE=z^4{GPJ*XUeja`JRiH`+qj5Nps`&A=C zp+3*tzoWS{IgTCV0u6)t;6Kit)+@f4Mq@T)ka5_jqEzaLG{=yY?qgmq#cel#2>Wh0 zi*k|-+9@wt{61;!h;fxc!b%onJIjATnC{P4WxBkKF>{)coPI0Q6$3ZPP-}lo**ZEn zbL{Ti-1C!}nPKZDMp2slQ_`=TAkgc+S*021QdWwqQg{USJtE>)KqcXvBd6w@Im-j4 ztIE`*lD-Q~3Sv?ztOZg!1}cf>5KB?~le@7hX77c6z41~CS8lqQ^FR2beN%5x=1I35 zB6HGM`s}BTrqGxAT65!#xqJ$W=}aQZ>DSsco?oh3WxW81#f4Q1nH|m!C!HjsWkhipva4ktac33W4%*{$3-hYUurj2IzQ;p&vk8JXy&;4b-`RI zlfvv*duerSz?iyd5Tea1AP@W0*q5W6>B_s`_(wE5N3V6qYo_@_1RG_cd!~s_>}h+5 zgcoRe9a=SX$3;zY^6%Gl8Z$I+NXW8YLC?))c;6YM?{jXkVm95cU^8#(9JG0-OI7rM zv>FYtP!EAW#+d|MUMRDAQmO}gz=i0>Zm(fHx$CBhl=JB z8S!72E5H~=hR(iyUC{CDb>-%9jaRQHb9zp&JSFLTSElw5#RKU&qcuVOKnB$Faam|8 zR2$^l^3#J=tUCirW$G)-Pv=YF*2p@U?F*UILpl{^K%<_qED3gIdL2I?SwPbaai}t8 z**QxU#ym;bF=$1PUn}}EUH#sYywLpSV2ZH{s|_is8>3t}Ky#r4V#3R>AT9|ns=%}n z>MfEqEBN8+;*^3EpV|h}0xn9T(swj}^VF?~bTN}1Syc__Z*vXL^s5^DoGJeh=FV`+ zE#D>cy*UZ4k)*w}YgJHiG2@KKwg>RlQsXlC;D0|qMT+#;B5sRo3_BcZcw!a2$Iig& zC=9|kI4U7;rHx*FFIp9JPtVX-PRIdNt zw2gQSr2gT>hWgmjz@iQN&GHfbhqxW<^o;?a$a7nVhaL)7uS7O2Zsb16j~@RvcPX3j z6qz{oH1UdVbTpQ}vJx3Po-r4xyYa^!{I<^Ac~D0?w<1^Maxqp{Ya!}(IM%3lIM=8b z(1Um#{t96Wdepyvzs=V=F2+q+2@;TLTgPY=6p*a zL%LJ(XV)0xSJt%*P1Z|oWhOE!FJC~loz$ZtuM1qPyk}W4vWtkyeXlWkO=EBDK!0d> zI+jc45G}iSPz;%6S$XHJa#$=omjOdn=9W!|3$SjQO0mirOR*jsa@`1`r1dzMC%2NG znbXm;&-9wSO^=P0EVoY+ulZtz-fHaO zhLkKFOI{rskogei$|NuQMB28k=x#6e>)C=Cq^97!b)IpI(&}yR z(sw3H?~CW_+l}Gv6kvsOte{+h6)dpAWQmzq@53?6zPk$TD(-X~vc1T_!`XA6*KX#E z8z7Ru-uj`{z{+y??Am&*{Bf=KdhMq2s7b1qaLLG7p-Ngf@=$s7a-mEYo)?7`47Z54Ee`%l8MP$hI^y!s)I=(iAmbpUbKZ$sF-!qrC_uQuM`0I}qR(`w(sl)ae z*4+v3Z5dy(I9b1Ly`)Y0QL^y#RkGJjnaQuppqD2zU6YR*CnZi^bd6m+d6gt!X{9(DD6RqQQM8Xhd%UAi_ zkNtG(SzkkikuXo3mB4l9$Zp^X>j+rPB-U$NVPubG>0814_q+99^)JTf)AMadh=Ml7 zOfF%U?;gCkVl?Ilj+{a8g^BNL;rP9>Nds25D)-fr>{&ZJX%-`Q;JsfSecxr?(NXw> zP3jMu=CLyA=(174NO|1y-&%$99nW4NA6EMOxZ%2&KUiHS;S$b|Wem(r#^3H;ayx#s zxAbXz$v}@uj3pfFclOe557Mx={8h$5no%B9pmSLHRt9M?7X6l7bxP-*X32)Y^Ypo- zoIgR|_Y15pgd<07C;`Ykd9nJEsA#gsFO**ffDX?9lL4+itUsfj45= z=b=JvzmJ(O>@9VxC^t=r*}zLlpT{$CV&d~hNhw8#jvF*9zw5~CQDn>-j30T&6}=wm z^%_<3u8+L$OjinUXKt-vr1+JYNtA-!d^0mGR#soHWBW=CXU7hrq8c%vvC+?+_oPQY zKlH)5H#XWe?7I0jJSlv~R{BfIy|LCZ>AD%K+I3qr=hQ%4hkswuD>8>nwwW-Nx}ELy z^<@2kFEc`8V=W)8b>K}Z0;4UN!aN>d{RBn>%zw>FxkM9tE*X^=`iAS8)c-&o=um__ ztVwBOb2u!lT&v+&bP?FA$;n2fj!OuiJmO6K2KUZ%DCt@Iy6`RoCEh1;SmcKD#HhWg zSgy56z^oZ)B&}*u!e3wh%a{epDEfEceYM2}PX>jk;8i~VP8$C_#j~-Knw*6Sa`UAM zeqW11sE`qo&JOvk$TccZ#4D=sy}HrA6YjniC}TF5P_6Mz7F4LNI_}HOmz$5*e$-b3 zPj&}tr1)=`*p&IZ3$6()N;_8;1o~qHO84cl`Yc|I?SY@)ii-K| zd@Wq;Z-$@9K7p=CbzC*SyIJw}PxyMsrANkJcke?vR*_n>uci*r|-6 z=1Qpj@HfJTF^%30O;N8&Gi&#qtR6SmNncwT%9N|{vhzJKljAapI7@qa*(3MOD>1P! zcJ?Krv}XEJDs24iw?$zE)-ch`nENk`U7haN7M|%Z98fukvanq~&UozJYtwt2-2c4x z-C?at(WD8@dhN80PAGuz|Hn$t_e-erO#oSM>0 zJr~-U8h}2Zo0^^i-ZniwFt{%*(`k7>y3s3Kwgfm16==$Uax`Z^`I<8nW#t|Uv7!L- zhE~hL3{OJ73?39~e;sSnY0e_DZ~ky&*7GCgC}|gpR214x<6!|VY^CwY*L>yCB>(d0 z4euM3>)O-+(C=2Bt&=QP*Tc;Qk@*xN`7z;kdoyX{GJBhB+Pr!C>QO4}ucZAXq>X)S zO=jMlu+;;7oog?dS!CwO$+O-7d8OYqdu>vQ8fs9{Q zyxA3|i$;a}IzP{q@!rMv-7cq$W(oXbugOhjXTlR&%JWQjs)?mzp>!(Qs zTYA)QIcljf&dBtVVg+iyC};whi;`mOQh3%9o(H9%IMRjBzoHoH3uDccd4S!}IeMis zIeIKN`mWGiUw)6hajfv&i{Hch#W*(3c!_(d|DJt#A|KlEqeMw~Alczr+vW3WExPto zFV`iE9M9etE**!bw5RSZu}qs{q1yd*4*6|fSdsCEic`C=-&y9}($|f%m-XxnFIdHh zLShrfgZ`e+Z@v2v+QxtD zy4fY%PpeXj1jKL1Yn;eR2l(tnTLC0Plumanclm>-V$<8HZ_;@8*!IdG(AZF=@@!d+r3+7FM zLNu{XknAIx8WmbCuK<06#B2jwt4E1nj<_G>OFf@=m$R|2Zh&(KspX>e&C;5&l4{sC!UI?m5XG@2S%|7!_<>?f6Un;N z+W(C@Nn*(suRjrm)jMD7|H4o28~1et>ljYq96@;c#O&A}ztDQGrNUcYAiOE$&hKTH z1}Vdn#z-(7>XmB$yy#LJ?w{b6E_g} zDG7%8N)J)cAY4HV4>~)#1(-Ek&XzlUR~k>YzL@VwYS# zzXspoR!^qv;DSF6>3=t%BBo+BR1k^IaspY7MSb6>|6oI%^s9n@u%R#Ts>_#ZBaggZ zAs=Z6Aj{W906Y6|gQ$#XjC~$}`dmnPV-fm+%?V$4pEd4}@5_MiPbdSU0x<+z421&O z3mX5HKDa6r0J8%0VXQ zFI{uO(W%PmYPF%%u*u<~%;$#f{;p|(NSr#6+43bClzDt9!1b|r`Ucf~*Y#!6^Bn&99OMb$ zdcq(0ET9L^Ln5%^Q5cB9ius(I@OAp%)p@Eq`9E}!$u5UG9qh_?TZLd;&c9w4kybu+ zwed$1)DdEDT@H0kB+I3&=lclcG}x=#+fDN_7pVfs$@d4!24H02rtVCT(ykbsBl5}5 zZp)X?kR$+`f_=o+`iUgmjX#FUH7LlQq>gAdWl4?k0!Nl%QNNW67Us;! zqZ~zR{~SpQ_(~lI{1$|y+Y)l;gfMk2<8_dAnd~!w_M=>~)9HWRJ^fG-4JVu<-MQ=Q z1o9jb*E+GnpN3=s1m!y*Y&TEv;PRudsM`Bc z9;t^qO*Y79NCf~#!8IaxEmRcVHlYCA_K#xRqWzPy1VPpPZocP!SM*fi1P3PJyu=&R z&d6V*4^tqz=qr~J@3sWBE zvR4;r)_C-FQXSD7UD35yc1hf^VfQj>bzt=vad}Yei#}hR<;x`G z6~Lfi8@tx?Zrt;PHJe(lMJR<-uUtLry^(!pu+an%Nai0!utoo;aLE-FNjY4gXdOu1 zE+BEtRHsa9Kl~S7AQVUgseQ=)UZfk7)==*VK;S*miF`a#qy%V_DP!0m=;vkkK zw6pM42U!f3>3+9HCL@w3Ntrn`86;>&n8gC&Lyu)(0l>-(x?4u=V zY5xMb4e%>~S7-RbedWO_hIb%log7q0vhOk;If2@SP}+rgJWvssfXhd|{f56Aq1hP~??AQXV$72 zNN%vDyBfs4(}A>uR@rPn^uOR{E_gx!8*}-{>)WV4=1XrXg|%qU&VLqdu&)f_s1s%Y z8McdzI&MG(OjWU(`PSut*MZk%xK9DvkF^zjoX@K{S3m-ra*5T7w6-^z{B>)9g23j$ zD2gr0b&aA0AWGDQl-sPab<#Hs+&>`>^bYv#`a~7X%4RIXeeIbUWb&76Q08f+DL&OF3jbW5NNlYEGpabXF`d9Nssvd8*eHM? zzHj{VQ)oq%?(KQvI>5TgzBj06=vaHp29t`^1qkIUBKm(Q?1|U%GFiJZwpT=y{)=<9 zP+{1>FkJV<%D(VFceohLKIR(=Rx?xwhM-c1^mykQa#sI&5=lq_O0W_?>3N0j2YnPY z#fm4XF=s231Wvli4q5KJBG>>tXgnx2!Jbq|^h!Ohg%ZPpTp0O08}}#o4VWnQUa+C5^yIq za?I@e0gei)5!d7U>R=(mRKnn_kN;vQH-xy0gF=?Z&TO9tls8zW<7g9Ag!CaR%0wAX zr3529T`GnMxceAiNI@R>G@2!YQ+;aguN*ejyGU|#HC|2lUfealYg@C#>uPfjV7o(? zm|d?R|4$VU8qG#p=UlTX3Wl>X%s%1b6a0wo43lrkZ z%KZi5v3bG-UYxMH4Q#Yq>V**^?WJ9jGH1$tLx3(0B zvuPW3eOW*w&b$Sah~gh7RABjuCqVBY4C9vUI;5#;82XuMEee&GM_BlHT&1j}-cHORG6Ek-H=Dvz(ul0aYo#e~E9lLsKoAh}+# zO;0wm50F;y4e@4G0ZHm(RS+qb?%?I3o|K_iXVp`IlmPVPM#{(vN?1C*W~T43jl`P-at> z8V<-v*FKdjy`BF49Z=p#*yanC|O=N(NiB zPCzm%yO$MtppZ9OC>;&jbD<)0FGV-<%uVe~?jMRTVVzUJZ;4OilR<*&v13tc^d545 zh#?i{rOQ-7^btnBjv!fIE73r1c_{VXh;I~goI5jwu*-q+NC>M!?*AMuNB}DP&rc5_ zLf1lZ-~e|Lh(p&hVGvG)o-aSl3+7_PR|NgiA%lV@dgUEgL#6(iGZI?brmTB3C%?@; z`ec)#pc-u2&w(cbEAPE|e0|*ykSO?$kX#Mrh0D2%L9)8k@q=h0+LwD_#CCqmVZscJ z)Ri1te+Zu4=K=DShvlEb#NglKsNr`u!+;!J%fvwh5yt!cAcs&Oz(NeC6&h7SOHc$!kv7VX`h;yqJcom&iRp zSi$q2jJ_dX5iqGC4n(nwgHo1p(Qsb^)HaOLS39MSdTF;!3;2;=X9$>ODusTC-VYYm z`8Iu@dar;(uiJVjnt7f74^I0^mM^!pYg`Q=&(=i&Z7=L^AI`P+a*afS07UV`Y?tf_6Z~%Xpupf09I4@(K*h&`C zdsK54YaJo?`>qK%6zf?&_^VQRkOV$oYDaxfib$+c(aO8qC4pl@?q#-50tx{v7qB24 zw?ZZ0f}1Lku+FPHZgG~46EXP<^{Dx@!@I8=V#fE$!O9cnz{;Q~k}aabb?SD%P6-kl zPA`jndl2zZwpMKY2?y-f^Hny4NPRRQPLo#A66F-c#-}OgC2sYG`+=%t9=L&pkNiL@ zBf`1PGr`HZIHe&zBy*Hsc-->9ahWd|YAat8Qh&;Kd;f>3m+4<=oJWh{`{x2(5KW!s zxES;9H&AStfNsw* zzPs)`FSH*nM$x3(On5(vkpF$Rn9lgFdCfS9>oHVIj z#;C%cxQOzVH(VtlUjeEMG#mP6_Bp}26K+7wpuJ#5KF*rYcCI!h?odI~82)7JIuZ|) z8x&jHS0Fh6n0yREVQU^;X1$iUscPU8_AkduY~&d8)dUYs=m0$fdI&w30$(nDMa3ot zD7D=a#*WwIAu|DA3vhr^fk?7CO_{&F=eDzN=zC0PM;~p9x4wYVH(!u%Q53HEMG6)p zKLX^jm&*F9(t4=9OI^xFai%Ee^uAUggV{+5Gj!!IF{Mv^{O5xVfqQ}fO1c7U!Q7vE zp6=db=)(v4G2}_>kO_Lw^-m_qiEW8T$D$`WX8REti#xMR^j1mr1%kf zyExPkWM?165w%fB>4IQwsRX4BqnCxR4G1$#uES`F%tlTDR1548xndt$J}}hs%3JS} zViUlBo=$83wLV-j^&DT>2n%a)4fSfxItqk}{9EB`gycpj0bB_Svcv`67FVuuIiT~- zDPkJ}Y`U%ws&%itp`x;v}xsM~_7x{+gg9|#`E7enN( z&Y!1RuO-m;YJcMZy&QV4ePOMdfIJ776l@@_r}wdjY54Kw=$lOiDN~-&k|kYKXex<; zhh#_JOi*qn<8PfsJ(BpJZ=>2n<2nxKz9+TeA=Agp$775NT)tDPj}r06OII+$Zv z5jK3BIJlYwvXRmynATx2kC)D&+^3BaQ@%}6%mdsEziI4K|6x-VODZVI6uXSa)lib# zf*UQyaQ>SPnTvb@_**~?>>A7s@WBD zH3<5bbybIw!@QjpcuN|};jJ6qwY)6WtMctO|I7TbAl)>~-{GCE9HNJRb9K^2r5hVPQf_o+bwz8?VYm>>pb`S1OuaSN$AG;qxdWW$}qKQF=- z{OIJxyxtn960B51gh4r9zcO87sFku#RibOiyZ#aGw|K8hZ0zcARs* z*O%=k-Y5LRRch=WBU*k7Zc_5W@~JKuo#6KJE`K|8H?>8n7mFu7sD1M*oF?9fzJIGR zVrl@jW&^s!q;}=i*oMDE0zjXJ{vS){9naSH|M9lks;XU8n^?71QG4%I6h%?9R;byk zRkcFx85A`dGZYC@tF>yYO=5g%M2%1@YJ}hA`}^aaN0NJPa&GP!Iq%o={XWl>&&m^) z8h8c`dzpY$*HqlzlB~TdSDLr=C2vxs*$D)io%$Q;8Lznv@Hj)5BjX!MDCzM zi1tbP*0r{XJ>5GWt05*r5nrn>tM~LY7Q-lVl>E$~D-_%CSWjI|9Y^OG^F3Z=%Ba$1 z_-B*IbV~Yg7uwtEF6_owCg5-*{(et2(|GecP82HM8|3!UJ9nzvDuup$OT|Omnc1q- zPpOBavTU)J0L)jA*2+duBmZtAN|?fgmOiGc9a3l~ zg2Z=PfEBq9=`p0l01JPVK8W$qwJE(dpE@1w0zq)rv1bhPLD))I#co+dZ*jqko)ao5 z8&gWv@Q!;#k$JM%R@v+++ZlvRdQ5qoUr~Tiqx{Pg_I9J@JdC_ZO!AwF?f<3*I<0;u zApWui@YrUy+TCU=PA-riTcPhBoLFBe3O_q#He8XoDn zme3-*!2Fe&F7S*2j&d0S~`Q#N>G;a%|C8Xx0JfwAv@iydH!krhcw zUMYu6zP6%<$x*9;UwQuguBQ@UjES0w%&%O#UmlBCvP-kGbZ3EVJ*+YzMsFFV^^|VT zmVE*jfHr=q&vRe{-yhZ91+Ct z=eyO{8-i@S5-7oug@(7=fwl`=){Gz>&UNU$a*WtU>2cRtX~|Hj=Lq zN`+M}d=zSQGFlJBb>T%pck0QWZ8@yhGBaf@EZzCzE>EuSm((fxdD^drirQ|8L_e~? za+P)ViSr@CS*$@T`<`hq0e63qG?QDdke8(X02TX6EZ;IezDrJB!Th$3N>v}3_`~Uy zZThYpIpK)sX-Q6$?t4G)+3Vx`9!;%u9h3xW%+idThsLV!>3&MKT`E4KUdVRL`kP@} zRC-3ezmoL?)ZS%v%;n>hXcv{BFEU>C+k_szn{5JZH*b+ zq^Br7WE70$igz$choqZz@M53E*a?H+A4n6KK$9|^uGy+%ZcW5)Do=}15{oL&Ll{7) zLKiad^UoS|Zj}zMsz!?bkupDOsH)_Nipj~6wnpW!K_rCl8fXE(k56O%Q~G8Jfwvj_ z6}ewU_W(XM>t^iWz62QzAozU*Kwoe(_DSWXnn^8}l?E}%LMKz2zKz7a`$JB5zhr9i zndU!Cl}p`B(WHmPxGgQVhTIjV|CYHfbl0W%apP*^+u9HWcxc#&Dn;J|GZNP6*Q_2D z<6?SUbjoagqFfa@x`Ae34DFD=ftc?&U`D!{zUl0m9$QC{6u2P2xilFt!;Rk5gAIwk z{{H1!b;{R|E~2;B%oa3dXCVBmNRa`l(B7BT=}+t2n75q!QDZXr-}GxdM@(dR4WH75 zvIqDHqf-c-z=R8pi9>7^0~~yC_`X~>bs&3a1@h8#YqXo5|CNv2kbH}yM2%2Q;G4jq zu&n7bSPM4Wx8H4>zvh@Sa7e1p{rrWEZ^4V$MX|0kO}$NWR7pt5GO&nHzJi zqb^^L?EMW^ped$!-aO)!lv;m8imrdy!DFtJLqcM45tH*|i*i~Xtkgkd!%VR_Rf%Z4W=VrN{mF%mWe`supTHx$th864 z?{`D{pk<~%{K$|krsp7d$S3L78d#>UBm7?E_cPH70pw?Fmv4%w0R!n%{hI-q=RZW% z%`Ajc2mdh>R$D}E=RRH-U}^RjNj$ymZ;MB>Yq+wymYPkT6punT8SeSZXjd-765>3l zpO2qZhERJuN^u)xafb5O_4QMqZGah>&%S+zdJX!g{}}?i?#~#}lpFk2Lq_mb#n4v1 zdM}AEL&ymH7MGo}iKYwMHe>#!G~fA^`^zv7uKsk$ImpSC`6O!yKfH+XDA-dJ!z@dG zn@bVi&3(Xl;nqEsmDPjFL`yFI2+pFT3d3!%^JlrrRjO5=JrExAh0HcK4tup|c|8sF zPFaXMn_`ZTUH@7j(bCs_HkN4g`cC!Tgs(%y1JW?rXk4QE_43l2pa?Qr9ZOsG{FIKQ zTbu%oPl(6@ho-G&MZgJ>!sJbQ9QP~~;1jrpl{im-x7GGO6Ivt9nS5*Vx5_j-W zxW9zSLpRBvqPmgi_wy3^zqxS4IACoyCB(V>LzB_Zb zBhkDCD_~(wZko_*R}2w^cSsS|y{kcECkMFDcUwGg&BZHQ>LfIXVif_lVz8ql4m#Fd2RnW|6q=hWI5|Ka{heK>O&aiz)) z_Zh!;)=mKUbm?@%(7}}uI~yq}`Cy$FuI1y9a;H{CIN7X^ z7ykojOKVYdy;V~x1{x)N{?t{p}mDGtx4A`5|X0-9$~rY@t>4|Wmsyo zh_))UgnjU6FXR1$Ms#zHC!bRb)0ro)xAa@|*it^+RF`pkHV5)CMnz|!^@C#t;_f0I zb&LA+fULlZ4QM3?s9R1eLMPE#RMSI*ZsD?B?*;7m z)CqeXrI~%OU05);WZxgaWNGoI`UM7oguNR5ih8&}{foBDR6iu|8@P2cPyUI`xfc8x zNMPRd=CgRq%AqF~=I$x;^00}+U&_B!C`U`tUu$rkda+CHMC+_; z|J!rPeA+H(Tkx&T&?VRDxo_;cA70VlfTK7*Blo*aZQ+I7ApBYgtz(|%=tZ@mWt1aY z#5PY-i*Da;{G!g#lAh^#*Fuz0SolW-!$XjSc<9#Qo6Yh^$J^Q@3cWnuy4n{MlBXrz z)#@k8DF_n1QGFWv7pkS?-&3c{RH&Jftbz=*R=vhIGp+9#4(a^siiniGc~JGp-CcI1 zAA8XUhaV@-^eL(>FGk^_=K;$7gg8jjI7YoTuh!(NB)XzF-bFvMCt!`LOJvrJc(6yb z9&UikrT7d+hKn)k+h#UsA15Wj9K1Tgzt=5xh3T}9q7i4^rAQtS4fOeDs5HY`*RwjE zu^y&|5cKCEFJuu}C6$1uq?sl9aSrndaesx~lY@en5uqNn%8J{V&#deG13Q}j783Ue zcj}cDVZb{<9>0>-d`|6hYlz!s!PWKVDH8VXLN&*C0*4xbY1z_d|AVQM#13c8@w338 zq+a*!=lW**dwV%R7{obPNSWHu)$*zSSitw!LBDR|d#CU{uWJk$X?;l~S*?W z8%g>}7jxLg3ffns49`2ik$s)rRhQC#Py0%+iqIlUTnU%1LWXYs8}i(g)>(RY&^kZ0 zpF0FE+2-=!S)6aJc|ldT(68?#XNBIRZa@r2i>Hd>#HZ5nPHJi;l5=z~XiMs_n-Mdb zjXck$OfK#T4Q}Q102x9{HX4tSXHqh<<|gPH$L4u?q*;;)+DF$?QTJ1wKM&GBJT0^G zSCWr!y=QAalG-3tDr&Z85_7A}ANDS$WOBK&Cd@sg@GV|2(5z&Rc%2ziY zJfEHO$k0B~hQtqZ5jeZJP18cDQ~zN$-vVyCZE909%NT(WjsxH?e#|@S^T! zHUDI@&0MlG4XsVXF-mUNJ86$2kBJQupoBSlID(>Pc0{oHr&VY8#Oq(>-{>!f|D&mA zK3DNaFhK#+67R3&%hcDblIIwgG&2( zYy!j7U89(#oe$pUtv;Zj{mzS{m5T#w{qq~7t;aUo!QN%zyW4lY7=vw(R(i*O&4@2X z$F}ik?nKx1)aX`ucs7s`YR+_+bXPt-mrP9Pl9!H?JXu5m`>SgB?DUE1S>AeQm^eAs z51mh2h9MYM@|j#2FOnA1iebR`@Qo+N`mKY76=vN`@*)Wgw#G3T*bSd0Jj!`noFH!F zLA~D-fb1&ZHG#z!(ks=mPdCp{Cn;(~aP;wS@gw_ zo33;)6>x~>xa5(UqXwS@Ps8=byq6yU$E4&+0N0?*3J96-|Mbm=nW?#{53cVcjWN+z z=+e-{`FET@v>6hlYmf1}r5noT@b;O7bhB%zlC#4iRUQRQ74n|fhpCq^7eU9RQm&z-A! z_TG=HP9d$6y$3`J@#tE40I}}91q#UyzP?MYJv;nD(qW9aNW}PKZ>C;D%wNrS)U)Az zB$Os8ijZfbC?E#cC$0Ayx1!2SBk<$9c?m^81#TPNcGYuy#ZAPnk{qtK0X@5AFIku0 z`-nS9`I9mW)oh-2DftWy8%hQ`V565AQx=B+)d{CrLLNEZPf>+_BCfqTYq0W~dqnkx zvJH)Noc2iK6G^4Jevh*pva7BeQ5>iAlIR7*{P{Szsnzh2NNy&;n`1Cwg&Y}yBHUa4 zSKJ7?Na`YAZeY-3=1fPY%#nYf4;Q%f|H|6oIVj5VhT*OKR=?v`%&D3ORKn~w*cjXl zeNJfxDIKW*LS_DLJtImLCr-Lg*HcS#f{A@zy3*1v;!jD2?1uWEkvQKGBeIz93&zbR zf2x)zW(UYcmsQ;sy8QF!K`DFZT{ccrD1cp5i;85MPriPRZ4F$}ezz>gU=I?bv4}j2 z^#l{aG*yza>B_WX6M(orvzx6{m8pI4ewvQqL$;61e-bXn;)NL87N zLd3KrO4!HluB%xNIl)!fLCFfeB95Rveph57((>LeaozRVC?@rDZa8_JStA<@TMeZ; zTPAa=!mpM|T68}OCKDLvWRDb;RD>9y*lPJjc-$( zreIn`qLQ5_LVq`i>pc;RvOIk}C=_!{BW(!hzmnuFB4Yj58gA-ImvA8S=QKJGG_X%| z<1l0*R)F3FTg7w4x8Byg&F~H}0;YvpYSFog`^sK(ez+$K3=Z>TzLbF)aJt6oyjI$L zt-fIZ$7r~&X9AG63v-F#*^y`JV1@sw`$ksD7=(2TZFWk9HAHY2%n!x)D!J);%Q8DZ z09dfPIhzlt@TMqAt8gpfhh8P@$jPR|m{B$dfGxt^fI9V(xNW|^BA=$ZgxeqVKddJW7McyHE80EE^ja=h$eCruvGU~PVLEXY6K{3*N%GRN&hpEkm_ zz-G~*&Fbm2ig^UJghZo*<`Sc`AyvhA=|;Mj)$9h=u^~fX1t>^M+^timV_tj{kS76 ziIjnE_r7q`^a;9#eF&&IMsqO8_XpQ_X_U7(JsCS6Yko74jlf)T!(dQR>p7l(dL|j}5`L4?0@C*gV$-{&^=+uX59aYddRFj~o~2ubKh>aO z>;lU}xwUQrN^)3qcC1Hf18HO9OBS}i;#jg(NeaEtk{5_$rrht?=OK4&OE^-}vhT$} zG@O4OE%q;7TWG5R91$+;6Sr>S$Icx&N(2?9dOdVHSUn4Rlg zN*wQA-J2Q!J5w{UipPwK&;Y+zroH6hrFLMta($1Xb`uBxt0cyTN>TBx?UApWGoFC9~3WJI70TrUCf$2)_6E1^y zg6l$OIzip1RGUAqZiBg7L=*FE@!J;4U@y<34knHKr?UB0YXx7ipr|kqUdq$`$73bL zgwU%g?>mE!R@nBEPiW?34}N+x8`F&*@SKb73>b>2CaX^_e~$kczATB>cb{=}NY!f(#OK!8L2F$ZH^g7?NfV^Q(AbA|R2$|t?AxJO3h z=v;mjDzb&i{=5&GRS+sB7rnF}vBKykL?>oJRzyA)-pi$@p$d#p_qgPd!h`R=T}sCv zEqOc@J7y?4%j_T0JJG@9dvE=YNN4xqOY>)E;7IB0J@s1KQM^?06VcZHLteh%A2(XW zIB*EnGCW(rYXOgiU@W(9MF(uB$chqmJFU4o2j5zos`5YF0pT#>cda;KV zN(9>NOaAFo&s+YMpOj%)N3GO)WNP|2QqQ2ydrBG!qP8Dc)cdIYj_K{W>nJUvJT&m^ zJlX^4h%cQ^kX*?A^Ra^WMZv;kz%A9p0e}B4|IJ|8WXl(O-7m;|X}wuAw^T_9@B0!a zit!|kiXAsW#bpVPdbVCby8!~P7 zJ#6Dzm3ONq26J(LF8r0BCEkD(CS?m((h9|NDw&aJlLKbnY*}AbUwU@c^_Ao@J1R zbMl$Yl;hL_G3@WN{V#JZkFEQi*a0%erJE~ZrkNs~K5CH5^y2Rq_c;v+u2*^Go)1}| zmLuET%>!u)k16C+~9-tECfDMz$#YJEmVnZT3gzHnMa+Jp@(c)T3TZHF31iQz*Kq4bl z9#Q?Bt55~6?{lhiuc)muFfT+Dv_jmhUSBdn(I$-jI05LbUIk!qX}#e~>V2FsQ-B&G zPa`hZ$BB7jI{$H~mJ>c=Z0)e@L1ptpI4&q7WZbLkdM)gA6_5_4AI=l4}``$lc2c&r#aD$j{7)(uUA7+o~A~1z51_BK3-9b z-am?j{CKQdR3_MYg>J{IV|9Nua>;MjQ`$?{kjV2jRp z>uf=GwO#2VbDxYe{h>bG{bJYW_`SU=J}(i`9`OyHOoc9&(x{5olqR9g=cf= z5vPQXTl&PKawFs73zuRw7HtD-q0^UsF=x~it65qX%~if!rmGUbf-pF%1zWQ!adfO| zw$IA>n1^(SCs6*mdm+kh%k%uVcibJ*sK~z~24&oAY-)4FGk%^NY8P9_YKHOlQCr6; ziz+0YghWxaS6j#1iNE7_y(hkUL_KkP(%6A{JGaziEa%zvtKpB1115l99b*UBBw&>Y z_)k6uOkJfK=DleVt_d)hX$j7HR1#NE1fEn>$0P$*9+ukBeEzs0#LX?&AL(NC2I<0x z%0c8I(KGm8Zlid3IXGXU2)@HG)^Nn&fKhi>!sf9`1j0cCk;6W!^@}R42dC&_bV3TU826&SVg3Lx3ZD1*k_OvoYE8GW*ds2ek z0qc~4G>A(kH=Ig7#I!v|9-inT!2hybFa%*$j9MrsmcZps!}W&PH!B$FUoV8>Ne#(Oxd9#{c|iS3L0s%j_=*{qT|^6gR3jZ zjpg%gU|js$8?YO_qwn>nRkfvXG4UV8^>ds#$-z83jxYQP#o=tqKX}os#($rxZkSa& zNiLLhm9LhG2roT6Mey)H1HEBMly%w(yQ}+X*U*EtN?zUrrd`O6mmo7Gq`%Cvq9}zq)=)}x2 zetkM%)3c#~S-Rv8J~^4Kmvz=kha7I9&Pe*dX`b(Xi=u{>J&PXy9u&XaLLb!i#A}g7 zbT|m58Nc6xf5#~7?^bp(F7kA%`eIxfI}&)JXl;Kk2fG-b{G04YDDV^wJK5S#40I<< zvz#abx@XXzivyA1ox%%o)bAh)LP37?jyyhSlSc~62)yE@LF!>}SxERpwnEfw!v?hF z=;BdLAc1I4fzmi9cOm3s3zmg=H6()+eTZ@pLJ3#vv8b1G7Nhqz=qi8WuG9f7#`sJEHlo_25(HRKDd+ilx^FDAMW9a zpXe9bU=dB&>2VeKE%t`6{5(m!^5rD5drJQOwES~g>gOEKaf|9xliju!gi4k)0!duM zizRo)WH0FkTkfzp1Fc6?YY`Vlp%i?PoeA*JF^j^t7RI>6A^+vLG ztGw%c=lTWFNQS`#8}A6O#mDh!pZywK$VYm7+iL5(z^F?9bI~vc1vT21lluo_iq)+x z=HRmnwe7%Sn#GI*1-CqdO8y;F-3!Io;C74HFhws`AYs4@#s}fNkE=+;U~iIIxQ-@N ze7#pvjuE>YW~YeX9GQb}H?(&3Jy;aG9cu5IgX&D z$0I(mHG&{vR)GYls230Th~Y=YSGLY4A}OS6k!Qp08MdHl3!uaI3sVWUcL^MGk@pJk z8i&SitvP0u@wZ0~tB`ohcf|YlQ2cB2T_QT)`}FU9P#zuY-{`fz)xr4@M$E9RFq#Fh zP+-J4&P9OF8=K@VyvA3L!*Yd2E--$9=eOPg<_#F|CY@f^nyrX+z9Ht_i~GRS$JY5_ zqd*z;%VX=S$3-SL~;1$C?3MQW4W;)LX;6Hp{eA2uJ8;Yu zlRn+OdOUsk(NaKl=7H+?ZwjR~y7_s{XE+{cT1-3PpyP{L2L}8JhVlG6QQJLRW%l2| zL!lLot5WqRoDP7{Ib}>+MDkSK&423fFFcYZ_102|$&}iOj*G#YaN~C`ExDX6T!h*L zLPEwXgmq~`3R6qOg`<<)tF3yH+?TDEmeKo}|C)rFxD={+JS~pA6U3zy7E>=yqc9f} z-+ztl$y$YdpR)E053IZUynXM_(OF}{=8vD4sgQ8xuw!3Md=b9>sY)=<;%VXx-GV5N zbO(x$dZT~Z(Y*8$c4)nuclNn?N%olbP4}BUx}CV473-bYofX{$n#I10w}!zyiW~X= z3_=O=K*6CPpkVqDP>^W zSHX`e13yP%oj-aaTaMcKY65?2*5w>!PM^JR!P2u1d^!rxBn<`=J2lsI^PHu5wb^u3 zeH334)^#z!KfF~CygK-NfTu^k=RHsCxxx7x(hM5kjE}&_xtms(ijh9fwEA2cdBYp~ z{RYXSDoT%|Ld0RdMK^h*&EK|9gCHAij<4cQ-RuP1#F;@d%k4mbTG69TPg6E zZt*}aSSZxuqT^uTgl^^Z^Iy894xKdg5orCCjdzi_HJIJq`(5jqXB$OD-oNVJ6NN`| zyF0JOcOqcVL&My&<|Ijnx@~sOb(b{-2>g2?PY=y|vN~*H4Hpm0mnhvv_`UBOo@G3V z>_11pzO(AK_LMd31f*Ouw9O7Sm!(C8yj6Vvqc?RL+lXkW9NEqcpCQ7fkfv7RpE&y}{I1zF;S{p$`#(4RV zRK}|~*!&6n>J_#ti&RCmlI}me#CGkjP*%j}08ry4i@9Hx*M)lkweIzIdvzJOd0yPu zvB^>UvFXy`L{fw|yn-O7jGJ>X4kE9T8z($}OLp^ksmqki@z^I_1yiga1MX(#Kg!b! z-jpWEt7_zSK0IBaD|{)P*}-JHMl}j)IQoplV>Te(C^<(h=?l7^M2)nBV~jplB~(QN zWRg7FE9S^tM6HGun*gzzyiutbH0zcyYmEm0EV&?$Lje7!v3 zu{xSvS!+(G+m(x$S?!IZKuT8jCyLtpv&t(H+#|{_G}<11@sYLiv3kU=NWw(GX zh2;jp_`CFKI9<=MsO*?67@n-r{G})RFutp8ZHlz#(oYm}*V$A=8K9^0n(|2NA4;nM ze&tI)M;|l9f9*07phOh#E8p&nWOpdnAHmr}6_b|%feC+oP@EIaQEPz`yk|n~sthLg zM2Z;o-goo;Ux+-A&wWlIA~3?y2Lu4tTrd0Cab<%2;KzDij@(GDCTrq)dXyg6)pM~U zSi|QDja4?rN5qtp7H}KmZjG~MYl8K!d{Ul9Rxuc15d)!rOejjL0!)PnGKI~J&~z1g zrUxeVeABU|$zqJjv3fP#a+jhcnZFi{f)kD3A-QZ>oiBUX!k%JsuOho&P2iWO<^^j& zw8mozKy<`aXt$9p^vWHJ1QHbB9}d#5kRg|w^fLr%fQBeUUrY19m8L%KzGvz8K_y8O z*#u0zNLKR5#PENT#X&ae0VQ#=wfjwAqH(HqL!63dSa^2ARuRCvXW4mz3|P8^uAHa9 zviR=*gec?Ye9Wu}klka#a|M5UP`-;py4I@cFq#+gxF|rjQCXz0_o3Sx@8&z$H^3S& zrU?kRxv9OXy=CM{`u)CYj!Do5j0jZAQ4Cp%A`m%~`9!0A=M6CAaaw@f`h{zz9w zKMjh&+<~$HIV8M%ufpqM0f%>6_;IA8q4t)lGxI>lGYw0&LJd~gle6Rxi3-iCfOCb) zH7m70mU289&|cpd*PmZ{NLtuT6~Dkt=Z)=NB)%;b%Zhva%q+4j5y3tdt}Uo`Uo1{b zihB(Jpc|;yf2_DdNPB%jCL-%OGBq7EMli{&^6aW>Mr5w~jxyYxY@n1BHD^a3$u1Q~ z(i97*+^t=yz4+cOy>BHy{?PZO^}N73*2$@vme8gILhnUElr$)_v-&J30f)XC_SGI| zSKtb7N)*)3;3JqnRThpC_~9rG;nUIu>59|eC{&H6u}JJ&WW#dgLaKUKNFctwG@wfH z^>m?{4(7g$;TKc(bpmRu7Y;jZ%ehsU9s;o?{yx?9>(|2{I1Z!=GCJ;%34#lsqQ@RQ z>P>BR+Tqew!rR=q0SfX;Ap@~lImWgZ>+cszk1QCcoyZ;S6IPR!599WR0~1zss$s4w z36WJWM;XCZb$Zl_e-QXxV(7jUa6vr7qLKy1ALBKmRt zJ%S(E8i!KX9w)T|)raCc@0Vtdg;wAILKg81or-4Z{8Xs;Meqwa@g7U2+%xfruV0X4 z-3Om%#{&8*wzvlazVU;Y3Ca=4C}MzFzx%Jx$+rqLMgyC~g0FRDtHkI8Epa}iIprXvNiO!~7RZ?mOq`ULPU z-JdoZD&or3^?POO2`krqd^(09PZ$; zuJ0B;4VrAgYTW5qaKRx+4LN% zJ4T-@LmqkNj-w`8TV-KVWKxxS?i|V8 zUp4wK8H^2GbKOoQu#7UCU~zE4OPgOYvytFxFqaFl1$q|cqrV(=@yNBU_~<`^85^-lvL6bC7~u5?a#}vMyWxXorLyhg z03BcJ5@9f`cM*ku!66C^MxDN?8g?UgH~z(C4RoeLeAcKpkC2w_E32ZWWkN_c#SN8K zmpci?*$BwgN}cVV9g-PC*}N{2SG?(0VDt0_1%p$qT?N6V1iv_;apreAy9x~jk_P&^iCU`Jy%Bd!=qohH$|R0W z9v;$;W6P{Op4i`mUp$|)AD9$;a6yTUguYcVh`$hD%6XbKVRjb%RxiwWsl}yV1yz10 zqnKd=g2o~X0&KzRSAE>^!`y}`S(ggBz}&-YX>P;lKn5%MrH{wM$7y-3`~L8&_JgC9 zu{3kl2^ef5@kTi@SxJoxgW%^3gu0$?O@kA~65D**=303pmvShDu2_GT?My$~tYhNy zOIJd=zQRrMIPUQmmKwm;(#$Ylzr5}7k7szR33ag1hZ|K~w0vxt!MZh05_;gfY52rC z63v%AV<5CL@gKkIr^sW~YW)s=i0vPVFZ_S(`ZNMbrxU1DT^o`~ zGG4^YsQiqYD_;@plGk}UV{`s_g&5*-P@7DbE)e}l-!xLsQmI$%kW#<*8q3(yyzuYjUbCpLjhtuo2mk^#~RG~Bn&(LRRn9xrPaav&>4|edT zUCz@cggSybCR-)9L=b*8F!F+>!HfJmcE|7gGwB*WH0X=M%WDuB$h^30ec2K?3>P@) z6nB*U)gMW?mX^S$gHghmK?5E?NB5wIe+ZPYegVU9w1dLwO&@{0tcIFno#V~DYW2BlXNeI-H+CGaZwe_^fyYwC$4WCS1@7VXVONnC%roibuY zzf^K=-2{``#~IPM^0;GejpxC%Wc4wV&;&mNGzzWIBUehnN7}4}DS{eLSfbU@(GDlS zJY3r+18AIOtuq5q4ZsU0Agnf0tgoXUN$}a z$_W~&=m1ju+<-A0>o(hBu0!n(;D{Im;kxhpZSA0En6AkuzOWmUk@AILe?8{AnRrA) zr>KKV27(SL|6W=n=}T)7IBw%1pPBW{CVHy-F>HJ6ya@Mv&=LIz2L>lO43CB6Cdlj$ zK7aNp5T^aCvorO>Lg`j|lFn203jLwpm=9$0s$&H8gRf-9X$F_}-BI`~=wi%+kIwN?uwt(4V7 zE4WGu&@dQeO668rpdBRt@zY*5r+2;8_<*ocZ!C%v>|e@E<8-D zS$+1O#m3v`J`=TzRxz9Xr#hi(R41R%Bq4?y|Kuq{qTUH)U_`pi5fzEg2R055P;yui z`Q(QDhS&|C731A+9no$WhGkWb60-3C31<%Ga`$#8(#<}>(_6cYsOkDF-Sol8UIWw3 z*j3hF0~B46qmNxF+%7xDi9T8t4TFz}s;+L320gc8)zduDL35z1yFFkZ$5@8I>F06Sax_-H#Ji0W%RH8H86>15R9uj2ih^UaF+B~ueL522V?9U!S+dltz zoay{a3X#)R-0G(ya4e2wrlXo(XOZVQg2~AmY4mH~D!*@9_)Z^JDv>$9)Ts8Bl(sB$ zmU%Qc`qz^j?TFT2FW<l?1#W#(kKhmhi{{k+XS`-0MFoF00v457YP};MietjbEWc*Q% z%6=Du*bVK|Wr@}}{ljTpggKD4u=JUGD$_qT7Haw7wvVNanjN3MX}JQji2S}zh|5F$ z&$IUEW}h4kb(fCJyz!j@n0$yV>TlH8F7DT%FRw zA}ll*U3i#_>irV7M}2*~25L3wF=($*TBN!(6|2cDc171mP9|#Z8+?wUT$*e>V>u1> z?rrX64QFy#vF;;kd}aem^j29uLKsQ*^Po_AtZiItmQ^(7Pa7g14co_mbu49`B{m1#zeRDJ{CdhBRPGe7srMxi@kw&jQwCH$YbdxZwSBaNRb5&U^+*D}Z^B&g%H~@%_Q(AavoWEG05<0*;8Z*#SlGeS z*xokqyu#y*LR2~gcT{ENfOA~ql;0)9N^>yEXsm| z>~dW(OyiliwJ;i(Y-k|D%2L?wB15=C*Msos+w%~w566)`AFC=3#g|e8{(cS7cu@=a zxC<^|xS%jk+YHjQF8El?A!JF1lwK-oUN-S+%g*Up)DztFf?1lk6}M|nlm^Hgh#q@x z=qUfNJ68_h(9u>2A)1*VJzpPUIik3?&46F5CHLMx-ff`hL~J{qX6Q~xh&=w@Ze7}B zGu5src=Gctcfy=)0=%I5p(d-$1`E@%-Dj$TYkhgfLm#`%do<28T~;FV67~PRk=o36 z;LqTE(ltGz*kZ5b@(FH&kk6gq*~#tTH~ zWcPQ-$3BjWA2K0MuP`#!e>|pmy+2!&g2Jc##mrq8U79<3m3*TTysBSY+pzm5z(%?ouq+=RZELkQNFu{9Q!o zrUu>5{GJag!Jr2tk;RGnS`Sy&=r$Og2@k+OHJXUukRcV^1EZhFu(5qVk!U9;7dfph za3Cte{rr-s4{2i^k!fKp!WRdXrJdG(jvyKg^;n;I?{ey0=0H=l^AkzF6J17lJ3C8& z$_@4ro_Ew%NQ}o13Df|Lga&Nkq(ylwiebzsqlY`va(AQw(qs zkgJQ>yt;^ztBNN4?;_@b65mRJ5{RqsBfq+Qo+nMT&WhWw-zrUnwrp;N>Rm+DpVp>c zo%iymM$2rHIMd|?9`(qv^_U+x?2;z&*h1;zs)Pj`aZW+M3!Q~2G}{moEm@)TJMG7& zkEcyvn0s4y`_oRFF1*VK`==)&75(Z%*psC)B95Xk^A;lW##05gkp*&ri=i3>L(kqu z0FS`@(t){OY{;2vYYS2E;)z67ZE&H2cQg6rLmGE-qH?RVJU zJ0``30wV#-XHst1c=?tjunG2P_iKpk+QrIUCJFw(8#`wIg{`)}$`1i=PJOLG<((e- zZ@0eEJtj^Z?AfaFV>d%xcd_wHx#` z^kV(ztId4F^Dnq_<0W05?E&wAYcukP8lfh8Yi;sN2kZ)oi=2nTas@niG79|NgV<)1 zhnuZ@!&ol2=^u^OrB4{Msv^wa+jc);rk~~klXRSQE`&zY4%m7AQ1*Uvq`O74G}&e# zwb+<{yW3~v3u35pgLY2j(UU}28x7bk>hssHpNG94KPe1z(YF;ozPJ7dQ8Gouwe&Nl z=^IDSt|3Qx5muc=XhHdREfeFoRXmNQ)YQrCs@_-ESodFuV0C@BzaHxD3xsR}4|xsk zffQ!P=UDmY*9k*GUttGQJ3r9#i!H>P%3=HYC_N%M53lKuIMgfTb0lHBA2w z{Y$g+(QEa47PoUUYD9lk1viE}udb0l<_~-O83XQS9(K=xjYzDfqK z>)y`(Qo!Pv$rAR};@$ZV=k@<%?7gF!ikA4_YeiI=D2ND%Nbdrn6BVQ+R6&q#Kmq{* zN(mh-^e#0Jij+{KO9&m5-b?6-fQ2dqqy_2kz`bv+x885PwccOuGf57|lbxB_^Zo2O z{Ztq%9lK*vlXtoCemh{$2ti|+S*?;vou2Q$y(gM!C%B;4hPTQILEj=Nv=vYGbHdvR z*QEpvQ3b{o(aQbdT6gRX9T#;gt#*S`Z}rM(t|kezIzs7K;7LjjXyg537<^eLBn4~B z;gn?IQ)BEs_!GW-Ed+z*01U_8H7~p~81PtWc39F(K%nvdCIftVQ4Njdy^Bb)@XR&# zUik=LZdFUgmT@4G{M}!zt_}XWl$nroyr5)mm4Lk9tC~V{TcXGD>$o2Lf>YE()>ss7 z>g{Gu|K*F3AXYIO;9wd!P`E9Ovdk-UgqBefjlCz0;LEN}524_HiN^btWqkzKNO5SH ze1}lu#O=!Mr`CN0ooEJVb!3&W;`)oq?L6y#0#&pW)KYd_=%@uSwEgZQL_|tJo#h9F z{N`jTx1)Zy5z1mJg%x)^E4K;1`w8-q($Gw?86m$;z)%kuMs&oWWs={76g}S???+Nw zE&K3JCLOf-W05K+N-1)=Qw4L@7Q>& zhTp1+n_6Fv`rt?F|KgD+$my?#@krK5-!D^Nzs2`oF3oTR{r&Z-@|{LLnnnoJ?)Yi< zX63sa;NZJLyW@|3e)w+3(IB7mK+qH~B2RAnS;`T$m}^gm0&iaD!NrfgF?a`g?J6=+ zL%+XtT6S!e=mQM;W%^f%0waB;G%0WtxflVTSjz+kBftQjc^s43=Ah&8=hm7mt(p0E z*WFIBmenTS5oEpS%Js?v`vI|fQQzPxzb#wzw1*ooD1)P?7iC9Qn}Q|!*H)x~0ak)d zZhK(B&6}ew^VV;r*Gukc4V8T}2)W+X^mmmCY2NO3^O!>B8BHw(QtR;>A{R>2{)3$8_#LbNrF>TXMnG(!M5K= zg?)?Y%GsQ!$7*TQjNg@ye46}BiYJ7HHZ`Q8$AyjO%60|ZcD5q+cN~KDq8n+%ehqe( z>|!2u@~9MlDKoNN;i#7bwJ7#Uf8SSXITEK6^T6eAAw6)b*ZTZ)!Qyfh-mrxXOP_B6 zO2+@zy*gaY=Per{tF!M&uJ0<>znU*i1}?3CRa^st@cLIj^53@w9zPb0m*(VCSmiXIENv_Ns*&3e01^Fy}9{aQX*_Nfp$?yT9$Is#{h&`)TPyi80dY z(=mu7`Ff7tvwUK8=`2Z!J4;fuPm>hSK_E$a69gnF;b%z-{n@1&i_`s6YrY&tQQGk+ zZniap`EV{RU)@UerX(&%?GOd~9sVd9rA~}8mr6DV$TtxVkI6fbt%GWXqQ3RnJ7o`> z16G=QS}A+_y+G0(aLH5Ym(^xh1htWm${K?RQ*;gb;ilC}Xhh+CQQDXqv>Xwtxne}J zu!8(tEiwwbZ&CJl=V9}z*MY75o=VeaAbF&AJeeqQ2;F;88o1E3M4IZIJzQ6TyV%Z_ z(>_+hpJYxRp3u)yntpx*#%;yf0WWW#SdA+drmQp5&)JNNr5Gz);>Rcf@ffMqAFS+T z;Z-9e(%O0c33UCVZmIG5ud_4t_bt9#FdmILZPageO&I1hZ#MF{Xau=;QF>z`bx~ZW2%$eT?)l>CeA)D-bAc0x38G0oqVuV*)d)p zHI*?05~Sf>^Q$D&Nx{qRG}j|4F%J+gbkRm%!IuCaA)?V_Js(fSpK^i);`3KC7K1v*ISoe?|8a?kfqVA98SBOG;ODSLEcF+ z|6M%j_;6Ape$ybK{Jv^10^}s^^XPc%q@uh6lVo+}GBym<$Y5{cQ~$e*=Tk09!+$9Z;newmRk3N_l_rWFXS2dUXfpOEP&4IQj&6>40dt=#_0X0^QKF`4A=7Gk_# z#0Fo^n8jeF4`+lLXLsSt&}L~U_@L3a?m)Y8`@MWW!F0`Ssj*bq-~i*1LQ_-Q>-Z>j8h)W?4a7S1rh3vZ9z{xOa;-MrZ=8lN zvjhM!ar1+*cNZOexzb+@I(zcLcz=YWk5IV|#N$Rap~gja5`lS5913pg6gt{ruiRDu zr(&g#hlLtXV&KcY0g_PgNsh61OCx+aXg3^NJ>y`y{}(t|*-gb-PCF!JxMUi8cl*JY z{SW#Gon#5eiVYaZ{{#l|z`$o07%a!60?*kln5z1w)?b?bW}5>XwyyYRlx~70 zM)s)sT%y%&7|Qa8IB5-o>RWA6?Ce|faRUZIo&9S?Z@#ZKIROKV4=`v220o`2Gv4Ec zj6LviN4d=Lr|cSb<~^&grk(8+#r~6e2V0A*l7JSJ$BJu9>+$q1v=5xF1X~N+&`I^N zI*wn+m^{p_<)u|ZH1ei$7b_tKIJLvMA1K-!G=0hrpyjPxFDHEKpIZ|gyQbIUIzP{vT)aK-dw6dF$_ z9-te1twnnje=qO0R5HpCIL)&52-duqY~QCUCrXyH`3-J6eDm$t^kp?~((HN6Ut2n; zi@@K?hGbqNXjycjvUx6B8Tm@z3lm=Q17yrg?O_RotsQ3JzS^C{I=&coBrD8B*BP;B zFV7+ok5UKf>RagEIg|!_A`#x&3{)1=2zGE>kP@t4F;XUvu0N3yf3wG_eKprI zS2z#Zz{;MaGUuf{sZ&+*wovskA!!_SdqL3TRQTAnjwWy+z!RW7Ejs8O0dM`uQsVeG z$?Vq%Dtmcai69VE-hvd5-r6<+)Q7y2_SU!{fusAYM+rUnub#v7Kz|?kYZ93hC?N9~ zi8bqno3<#8fT(!r#u6!5JXt&)(SUO*OfY|MtdWn^Dj++fI}?5y!Q$;q>GdN`AQ&@} zt|ncoFj4?HVT~s|N6b!8WEVtxyi6w}iAfy>pJ)m2al9y;-cJx|i1e_c5EKz$0_YnX zP-YfzQ=5#bDhV#sf)N%bP#57s$XI+VK17^%IS7z={1!!GP7D@G%iF7vp$P4xT;Y83 zt3FL4H}Vp4&{{;lWj3&+7zyuFGcYIG6Y=f;hSh=FfMSP>vwg(B!%K^M@b@diSRF8| z`fu-OkTgmE(Y&Jd5s$?Simfd1B1m=zSGFR*d}qd2GbzRwL1kBeX-g51 zSzaP7t-o{peX;lGSTc`ni~c-nOspW%wq4IpBxny&)cQERg~+dv@k*ykh80~?gCC{)Sg4xdJyleDv9O@%}nceHfL%kriOR{-*6^WYJ6eXQ99ZWDDL4AJ;g*;HktrmkV)aIIRt;;HyWRj)$W?pcdRGe?lEX zo<<@BH0d}h2&yK88aaNCxu-pB?h*hmt8Wl=7ijZINEV76{*17gM$(hDf2^265`FWWr?yQalm)j{`@-sxVU_eCOyuKy zknfI$DV?U0y#R1q53DW^-$3N^tu(P#W@;0#%oI~;!J_YVq)@5^3Ko4gK?^+aGF(?5 zp$s&j2pqYN2q2&o;ezH#lv;-ZP7COG17BRF$Fh@HTumm=f- zWh5CG@HCZ6;C4FPK4lRGMp2jGZ0U)pq%Zu(Z8f!CCeL)e_d_>F@(sfN=(=uVU+%Z` zkE}7cl!o{Q-i^GiQS`ly5VItu7*+dd<9m?eXQYUx#b-gXII`ZV>67uPw!{qQIN||j z&&Y$9qI!E5TQWw^=AJqrF1e$H-SmkgL>}l8!YibQ`z9q4uY``4Gy~+N(iX>0Tc`4p zsOEc>yX|3tjipF7O|C!uWE!NcHPet1!r9)3ZYyv`M`%^_)DheRBb*WP=OvOr8V5yq zX7LGrjTJhnj-@`%($v^TaNRP?3$15?~(s2-DThc5cSNi zXm+T>h5^X$p$?SkbFAj1ClTN2mM2c=m_V_?ubIb9&Qpw9tPE60Du0|>^5R9vViTw7pa4+9`s`shgURauEu`g@x*OV7+#v z>m$MYP*YH_^_9xVXbn?sQa;)!;kP-g*TIxcKcpr1NRw2Ep2ArYuM%fE54Ab4xA58c zF|jIsT_S|2-KLq3Bp8lU?kpI6X|N4I8BXhGq+``yWreSY71HdC(xM;T5e0+~X)FBj zb3pjO@Ubmo48+pQwQ$Hl#A81!@-x}D?}nTRz$l&ilBro{0Hk;>Ud3ldWFii<_2pO- z@R2`fBD|ia5U!CRq;T|~oA;0_x7q!~;}J!;W1_{k!zbMmS4euKC+J_JPl(z?O6&E! zcA(vo&u!PZ3=NVosgFgLu(TD~a@n3Wa#?i*OG7x7v=tLTFGy}2uQ7U2bb;h-Bz>Ns zRsu+cRDw=-Qzi}pe?ekn3HnrmnxsZrK;tFViA_Y2Z^gOs1j@)+xXCb{6t$KK7ON_V zz#Ubk2c|r($FhAQm!S_5KoR8^s*Y~zN6SIv)k$SyjEH31hpNV)S~Y&~O;qTq?=Psr zDOa(*Wl`mCZm2zzD7*!lBB?@TA&PVsVVx>CbjbOGv zU|hJ$-N(NwP4tiCR}sdV=bq7e+JM8#=rrSjiolZXR^D~1xnqHRrxYz}m)5VEo?fDB zYYU|pT&_v;ei*D~*=L#1uRPf+p5|d?uU~+p!==AZd0LEST$;P1fl1`nCAf=fLNB^&K9Lv1Cdiep|0g6&lNu1^c#sFM%Of`cEX3!cYxptn)#0bMyi61d4V7TvQP4$3?XBGY&t!`} zm^U{PgshxjOnLu#ff-Z}JkL-pRfw$ClQ$VYr9riP-5hwTBunkBAI5PHb!i12abKGR z$ITB2b94)EDdnp^G1U7a+!Et`ZOWoMEOZ%{^L8?uzHvud%!AMUv6n~*QcsiLo(qY_ zUl0d+bmGjb6r*LKWw~UgR$CKf*iQ|+o-`hMlK^n9el341`D+ZY8gHPn_6$`ArbKoq+45;`eQ+f_SKXtCX<51@eavccEZd!iWbg!#7Aa3Ta1j_%g<|lZaBD{5)djxBIuS<3KS%i2nWC4K9di3~PiHp7P&?y;J%(8yeFwUd zPi97oBHrQ1RnsxDkloxPZBpC3EJyDB`Jf{*qYb!oG-r*VG=!3bpGPK9D)60Rwo5vQ zOnVGPLIz5aI1}*{KAcF+5vG zW>Xv}2!Bl+x?F=>M;r()C^Z`CO>Pqx+HdCN5r7}WsRv93=6{hm>vA@33U|b|75C-& z4Nx_nTg;|gjo3i+f43Lc^b!9SPZFzN#^ZvjqKu|S;zBo{GvN#HiDFWGFNhC`wBI7L zr3gtADDVQGVj>VN_&>i~8WCtQ9L9^}iSNYW>+rwD^%3>B9o$)tP;`}~OS+DxEBt~3 zqC(h4UKRl~fdawLvBlyO@xXoLvys|kjKj-{bLcA~4(v$h7}XhbkDig7#fyOD%!R7P z5U(dJMc062>of#Fh-EmM*6mzbLi7mg!h(Dq4_O6i`BF&Av$&XZ^(M0Sr9fOWZlsDF za*FPx=aWVHl?0KBK4*qfd^vAb{|A2cD6Hatso6wI99~d-W%)hMsLC(WOPgbyff9^w7sGa&5>1Je zuiMy5gqdNKAe`4cp3<7#a~$@jsF!SJ)Rb3KKi?3$b2Rn1M z!T(Fzy>R3R7L{4Z0Wf#OZI=^qUR7E~vm$%vW_%M`ThfGho>=1lgNVW*af*Smj|0?679_emuE$!p zSg)}bBV9F3?}(5^kc-wyL;L`-DKUq>4D;&%5iMK*>6DiH!giq8Ki#wUK%i zQ;wdoMLQa(5ei=RA^!1BxqoU#KySJu)Cwpu2(0 z`ODe8x!506^4~O1h)k^8_hMv(#A6k+$%cK}z>0>^hOy!63lmS1ID$_?RnSq9m(-u` z=JmtddZ7@#TUjemvLW4Ypm!DhN?c8o$$FXi?9k&={E&W&%5Ugd6aEv@OY_!dGAQNj z`^dp{pAjZ;RdHp;|6RPQ1I(sB`Wp@cTzf``*{9r+AgvPQIZZwL2V{97rDZ$+5+P3y z)b8J>C#NI5bgnTs5UC)%uFJFesl_1pb5%w2L~fDjx)cq4e}N8b#r9Qitwk8q2n-=; ze*jdg9#$s~z9t%eHOSEh(lXR__zh$dJ{+GcCe0U=T>iXDIFkQy2|yl}#-SK43zfN}tUM3e(S`4LlPxHc3>)soSkO$x1hJ(XOi1SPQeB-zzp ztc;6>kPJy+v4CfWU|1urByun9J(gw|bssKAjs+QzSkdwcpBu|zM5b>E0FZ-<`gyzM zIu=VnjZkhcTnA>K2h!E;FR-?eV+*9209_x6XHq9AlaA0iK(Qf%=s&j(Bv4~V^F^M- z%hq+n1_&R-=?($^MATac}i5QqbzNz6YXt9CaBkLQX)H;+w73^iu~m#~vdi ztb1asalKV+?^&J}Va>D1EPaDFMRg|=i3=@rSUEyzIPhQD&NU{Kj-Rf86cbQU_~rL9 zn5@C~b1e0EfAoKVbV3eUZG|FSKukCsScus+8VI~-+AJ)Q&bts5i^@535){Pm53_Ce-Puc3&I`X6vJe70w4gMxyqTrr1P2OzNO9>{#u@V ze-h;rzFz!bxd~XzYq0{krh20C{0i=Di6DfCX?wlizM5kRtniV4#B`u?`;wZI*5V5L zR=##<95c>5+8DZ+dt^+SxV>BYo!vaBvEZ!uz(eLn=36)AapX1@laYNFAhTLPyiEFL zkV{Lj7(?BJDxhZ+xdy;0?M%<e71Cdl77)rp^q5Vat3av%Fp>f zi|GdbZ_8(h`&M$pw-F>nJ#A%>h{j4z$-$#&RFAao3rpmRbtQ7-Mtzd@4CyZ=>^qzmVQ8Vi;;Iw9m;fs;Psa(z6h1iyR#)&?*<_V*Ja~RnkXbGUkhchXqejd8hk6u|3*1LHTF?{Vi^<>a;4` znJfH>%+{yeBclP7hmWr7C(5atK096L0{gtQ65X34yi}xkT-Owg|1Eflbka=y#}V2h&G^a--g091h?j*TfByLc{qwu?mmY7HrLMZI=!#KEM%uz;t7^HC zdVzbD&W=n8NyXIs&ew_VhQwsMl+03mp1AIsL@PX+YhSn+uMcmG_| zIL77uhl%x7=f-1NwX$^^^OO2$bMWI(qnAD_Y;s3Ji2mdvw572?hr4gfQ7?{S;P zGXVTN1rPlDB9q}rNJ2yRlQSE*$fjq= zPT$HWTR^oK<==K`QSCw6%691cff&2B!_apFF)x6BDhFah!Gp^TUg;delY0zDX&e=8 zdknnk92>+vhK#LrcD>m>hDN|Tw8x+ZSX=fOWSL|Xv+-M8E$JNM6MGC)fOT|_!I)W2 zF*_Krrg4b(?lJfP)~-EOTy z4EPstK7t6!Tg7-$&F!^+o6Mq`qq~2b)}mUj#jowqxPh3zZ~WWr0IQpS+jHQ5ax%Wm z(0=zeY_|xDueeKp6!gK9W|rdfM7r!Ndxa;ghgAK+Nc!Yc!Nh7#i3ZN-UYsgz7$xHK z#bJwgVTZE{lat5IWSd*1bCj5}gvf(SEA$mIYGnaO{X4(aj$=llio!`wN@Fgy)`u#{U3X=kiRq@}K_*;}It%tV9eFa_|DE@%l;2T{=te!!!c6o1%;=ld zUG=F44@v2zKOU~6M@I-J8?UE2`#m4(&9|NyD$g6A*h-S6^kloMR(7#Cq^H8nV|w3| zvv()UQz9;sRS@+^-%n|WkZ?TL&yN_mFW4m z0UPO{;S5o@OgV@jz?xq~m+7>BDy?`SNOGMv4InWx-CVduUoF9S5KQHBXh)*~>zSr{uPCpBwSK7uay??)WVXrS_)p2I z2`Svo%)y*tLNwDXhObmD;Y2xx@8r-fs#5t7oZ+r%vND<(L3aD`2h|(!WA&}(N*eL4 zJ+0Za)84d|?AJA_M~f$B{cAAZ{Y>`(^ToqVcXpJc>L!5LmYY0QI`%(y4)_|rBk^o5 zpl#~$3j3egE%Jy}qZ90-JkJ@#b@cg(5xBV^M%?%3Bsun;ssSCK~yp*R^`t>e;fVF$3}e&XBrq-9GviXsW-ODIMN%jo(li z3f>=NVY3b2(#mJQzto-_ag^j;wUJI`q(rm!Qy=6;Ed=^4s=BuLJLky425Y+0%8jO8 zDZ&=5)Z3n}#L!jV7s(54r~&`7>gkHm;S$LMCWoH{vpz66*xqcUzfdrsIta!^^lzyZ zTh2s!%UP{czOPR9|6b&H*%%?@=J@FRY;0`7ppfj^WMCU7;J+Wg%W?+4wK~AKw03-S)ENkS9{=2o3TJ!s9vGmDAUB|~Fea?Gb@=OtnN!^v)hPIZ&69OOH z<5v#6_dLC*{((Y$9R$6Yl;h zqKj%mfG5^lRBL$cuM&+M2&gOlKO#c4{K<0NK+F|a|2CmTwN=2Mb1ka9BK|zgUy%df z2cpdg5LZZh47+I@ACG+&!RA0TIX4i4o;wU>8vxpl9){xN(@)&Y|BsL`Gka~#CWaE{2)-?yeOL;aphm%TX zH{}vh*=XRKYZ>}f%1KW1=IrygICy){x$Lcs_tOW30S8|{(a(lkI0q;`Ok#|8Tf0NQ z!106Qw(SKji}YglCB}`$z&G23SJ|k?=^v1ysZQ>zD6JpNKgN`312j19EXLk%9zJN3mibEIe!aXaBgsQ;{lu^FNw#5Lsc$L@EI_fUrZ?F!zi*FkvDE#GlZNIROf zOlc!GoIl^tNOTW38@z)K6)G?ZFh5TBNHr-wOeO3Y@e0>nqRS( zw)CxHR;YegdWt8giKS|$LJy7=z*xFZyP>c%k&x<%EWN@*<&yY2m)(&QoPSn?iex~7 zHlxK$Id!t2Kj{T}QCv+4M8Q5vf9y3jOi~B_qt$mrX9xGS4VtRy|9o`4vF5tUFyRjo z@65}+KDMh1rc!gST;rIvbCBw;(4$ta_x7L!tdtd;EL2+txVF^U&VmEfLx1l^sUCH# zJnr-1EhHl^rBFySk-ErcFNr6U{#)=s*@F^iRWVD6*F$DMr!azZGW7LjEUz0qCQ=ez z8$G18^Nzv$Gv+HKuRrYNY#EKT=vLR^bFK=R3NL5OUdh_cm?i9f@^aN1`LNLc^a5R~ zG;@gpV08O=YW$@P7@yMCD)o{6>-@|1^&kEJaOBc-3KNU`HPMC>!}|gAKmhpv6)*P1 zoF}ZqRw~+dUTiumhMjcMxjXuFb?XG(W$8UvsyyqyR8M;pa3a~VPnnJiaRfZPe;454 zcVK{rCxifQU;ZxO_S0WaHu!mTo*L^(PFAc zck|-4XE8#ZX-(3%+#K65KKi|ADzwfMcJDq^Tm=O!ORDwlOCvu3I}M;9ccpFRl{)*U z2GGA39Bo(LxZ+(`YGg?oJ}qhF1Tbs>bzU3zXogFR?~Tnh#)bG;jx@2%z_jJuy$5sl zy#2hKA?b&+ClBUidD9Oc%zXg%uuwF*2Jd42I{V*niPk?6ReXQcysgpYuG9YKR>;Y| z&J*psgC%sBhp|aR^&2-_SjWQ}aymGW;>r5?+H8pC&O`NP4S7RjkKGYKIZjAYQec~B zRGA@cEWU7L*2h9_$;#4Y-x~u9^N5Z+`~=o}VT96Qhl-n(sdz$+l`yEVN+wzcDmpip z?kzkc`y1hv*^|Zq)OKjZ`wNqC=8Q#B>@g{jExSFI1F5y-7o{6KZK%5YymS-snJ^3e zUzL-Ulz84kpht;pL65Px7d~}${OU;bWsQ23vUXr$ZUSL#GbuK5s9>x}UhD3*jxVZG ze?2e~7kM?E5%vB|{?#OQ6QjRI0%9s4Fp4caXpBWga7p~fWk43QcG>SIXLNRFrkR26K+_Qm;q)jy^xC zP823ye)+^M90#;+2a3yJje|yfjMyMw?_kSu!Kqxf8HZ}d|3oVRe1$U6>6@=kvpTQ= z8K_M~WF#pt2Pu~P51(=UA3kI8f8#UU$asrQ9DvUx2R3H?51$eKA3n4GKYWIgfnOH! zF#+(I-WH`{JWC!8O&nhRs*UZ-1%d@4!oi2y^+TLF13ni&C7xkm3g{lEl@>lkuY){C zWgsoYRG;L42B?(huzCRB0=9Q^lJ6lK#egTs;uvx1AB@#~u<6XL$L-%g8G%@LRw?(e zz9^_q|47`&tLBx-F^R>|1pHetzb_iQ$`~8II_8 z?o%b+a7l{;D&l-Ey22o|Pb2d#J<-beDKQfaGSL1+X_Sd>JKA&FE+?4~+)(70N_CgR zVEK-1&4|^%>df6cvNpyu5r9KTvMmBlzMN>3goYz!W z^97%v1_b8K+qfXR>cyndVtaWA0C6P)+hW@={aPZJ}n64#bjAkKd{~Rj|OX+ z))atrq~1doob?}IL5SL&5;qT(K7y4UP9+2r4SBx&FQ+=S8ZoP<&iSja8kn%bOR3(R zOWQO&W_c5J<50wzrjaQ{Y^pF72i-Qoef#%}e&=x7U)b<-)$PFBk9+6lw7i8;fW&
    Z6_cvQm>ls3Jd^v+2;w^>kW0<7@)|M*F?7 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 diff --git a/packages/material-parser/test/fixtures/__snapshots__/test/index.ts.md b/packages/material-parser/test/fixtures/__snapshots__/test/index.ts.md index fa72fe846..9427c2c19 100644 --- a/packages/material-parser/test/fixtures/__snapshots__/test/index.ts.md +++ b/packages/material-parser/test/fixtures/__snapshots__/test/index.ts.md @@ -357,7 +357,7 @@ Generated by [AVA](https://avajs.dev). }, { name: 'optionalElementType', - propType: 'any', + propType: 'object', }, { name: 'optionalMessage', @@ -475,6 +475,60 @@ Generated by [AVA](https://avajs.dev). }, ] +## ts component 2 by local + +> Snapshot 1 + + [ + { + componentName: 'default', + devMode: 'proCode', + docUrl: '', + npm: { + destructuring: false, + exportName: 'default', + main: 'src/index.tsx', + package: '@alife/empty', + subName: '', + version: '1.0.1', + }, + props: [ + { + name: 'className', + propType: 'string', + }, + { + name: 'style', + propType: 'object', + }, + { + name: 'imageStyle', + propType: 'object', + }, + { + name: 'image', + propType: 'node', + }, + { + name: 'description', + propType: 'node', + }, + { + name: 'type', + propType: { + type: 'oneOf', + value: [ + 'default', + 'custom', + ], + }, + }, + ], + screenshot: '', + title: '@alife/empty', + }, + ] + ## ts component by local > Snapshot 1 @@ -493,10 +547,402 @@ Generated by [AVA](https://avajs.dev). version: '1.0.0', }, props: [ + { + name: 'object', + propType: { + isRequired: true, + type: 'object', + }, + }, + { + name: 'trigger', + propType: { + type: 'arrayOf', + value: { + type: 'oneOf', + value: [ + 'click', + 'hover', + 'contextMenu', + ], + }, + }, + }, + { + name: 'str', + propType: 'string', + }, + { + name: 'num', + propType: { + isRequired: true, + type: 'number', + }, + }, + { + name: 'gender', + propType: { + isRequired: true, + type: 'oneOf', + value: [ + 0, + 1, + ], + }, + }, + { + name: 'any', + propType: { + isRequired: true, + type: 'any', + }, + }, + { + name: 'bool', + propType: { + isRequired: true, + type: 'bool', + }, + }, + { + name: 'tuple', + propType: { + isRequired: true, + type: 'object', + }, + }, + { + name: 'enum', + propType: { + isRequired: true, + type: 'oneOf', + value: [ + 'red', + 'yellow', + 'green', + ], + }, + }, + { + name: 'arr', + propType: { + isRequired: true, + type: 'arrayOf', + value: 'number', + }, + }, + { + name: 'halfEmptyObj', + propType: { + isRequired: true, + type: 'shape', + value: [ + { + name: 'fun', + propType: { + raw: '(a: string[]) => void', + type: 'func', + value: [ + { + name: 'a', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + ], + }, + }, + ], + }, + }, + { + name: 'emptyObj', + propType: { + isRequired: true, + type: 'object', + }, + }, + { + name: 'func', + propType: { + isRequired: true, + raw: '{ (arg: string): number; (a: string): Element; }', + type: 'func', + value: [ + { + name: 'arg', + propType: 'string', + }, + ], + }, + }, + { + name: 'funcs', + propType: { + isRequired: true, + type: 'shape', + value: [ + { + name: 'n', + propType: { + raw: '() => number', + type: 'func', + }, + }, + { + name: 'a', + propType: { + raw: '(arg: string, num: number) => void', + type: 'func', + value: [ + { + name: 'arg', + propType: 'string', + }, + { + name: 'num', + propType: 'number', + }, + ], + }, + }, + ], + }, + }, + { + name: 'fuzzy', + propType: { + isRequired: true, + type: 'oneOfType', + value: [ + 'number', + 'bool', + { + type: 'shape', + value: [ + { + name: 'a', + propType: 'any', + }, + { + name: 'sa', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + ], + }, + { + type: 'oneOf', + value: [ + 'number', + 'object', + 'test', + ], + }, + ], + }, + }, + { + name: 'oneOf', + propType: { + isRequired: true, + type: 'oneOfType', + value: [ + 'bool', + { + type: 'shape', + value: [ + { + name: 's', + propType: 'string', + }, + { + name: 'n', + propType: 'number', + }, + ], + }, + { + type: 'oneOf', + value: [ + 'test', + ], + }, + ], + }, + }, + { + name: 'refFunc', + propType: { + isRequired: true, + raw: '(p: Props) => void', + type: 'func', + value: [ + { + name: 'p', + propType: 'object', + }, + ], + }, + }, + { + name: 'elementOrOther', + propType: { + isRequired: true, + type: 'oneOfType', + value: [ + 'element', + { + raw: 'Func', + type: 'func', + value: [ + { + name: 'a', + propType: 'string', + }, + ], + }, + ], + }, + }, + { + name: 'obj', + propType: { + isRequired: true, + type: 'shape', + value: [ + { + name: 'a', + propType: 'number', + }, + { + name: 'arrOfStr', + propType: { + type: 'arrayOf', + value: 'string', + }, + }, + { + name: 'arrOfObj', + propType: { + type: 'arrayOf', + value: { + type: 'shape', + value: [ + { + name: 's', + propType: 'string', + }, + { + name: 'n', + propType: 'number', + }, + ], + }, + }, + }, + { + name: 'func', + propType: 'func', + }, + ], + }, + }, + { + name: 'objOf', + propType: { + isRequired: true, + type: 'objectOf', + value: 'number', + }, + }, + { + name: 'exact', + propType: { + isRequired: true, + type: 'shape', + value: [ + { + name: 'a', + propType: 'number', + }, + ], + }, + }, { name: 'node', propType: 'node', }, + { + name: 'element', + propType: 'element', + }, + { + name: 'elementType', + propType: 'object', + }, + { + name: 'union', + propType: { + isRequired: true, + type: 'oneOfType', + value: [ + 'string', + 'number', + { + type: 'shape', + value: [ + { + name: 'a', + propType: 'string', + }, + ], + }, + ], + }, + }, + { + name: 'func2', + propType: { + isRequired: true, + raw: 'Func', + type: 'func', + value: [ + { + name: 'a', + propType: 'string', + }, + ], + }, + }, + { + name: 'html', + propType: { + isRequired: true, + type: 'object', + }, + }, + { + name: 'loading', + propType: { + type: 'oneOfType', + value: [ + 'bool', + { + type: 'shape', + value: [ + { + name: 'delay', + propType: 'number', + }, + ], + }, + ], + }, + }, ], screenshot: '', title: 'ts-component', diff --git a/packages/material-parser/test/fixtures/__snapshots__/test/index.ts.snap b/packages/material-parser/test/fixtures/__snapshots__/test/index.ts.snap index d8fe96dcb7a48a9ada7f0f1da8fab8a7ef6aa278..2fecf6b64c3412e9858d34c5397cd3c8b589ed3a 100644 GIT binary patch literal 6217 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 literal 3433 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 Lhz=xcUr7J}DC~m4 diff --git a/packages/material-parser/test/fixtures/antd-component/components/anchor/Anchor.tsx b/packages/material-parser/test/fixtures/antd-component/components/anchor/Anchor.tsx index 3e655a41b..81c5bdfe0 100644 --- a/packages/material-parser/test/fixtures/antd-component/components/anchor/Anchor.tsx +++ b/packages/material-parser/test/fixtures/antd-component/components/anchor/Anchor.tsx @@ -46,21 +46,24 @@ export type AnchorContainer = HTMLElement | Window; interface AnchorProps { prefixCls?: string; - // className?: string; - // style?: React.CSSProperties; - // children?: React.ReactNode; - // offsetTop?: number; - // bounds?: number; - // affix?: boolean; - // showInkInFixed?: boolean; - // getContainer?: () => AnchorContainer; - // /** Return customize highlight anchor */ - // getCurrentAnchor?: () => string; - // onClick?: (e: React.MouseEvent, link: { title: React.ReactNode; href: string }) => void; - // /** Scroll to target offset value, if none, it's offsetTop prop value or 0. */ - // targetOffset?: number; - // /** Listening event when scrolling change active link */ - // onChange?: (currentActiveLink: string) => void; + className?: string; + style?: React.CSSProperties; + children?: React.ReactNode; + offsetTop?: number; + bounds?: number; + affix?: boolean; + showInkInFixed?: boolean; + getContainer?: () => AnchorContainer; + /** Return customize highlight anchor */ + getCurrentAnchor?: () => string; + onClick?: ( + e: React.MouseEvent, + link: { title: React.ReactNode; href: string }, + ) => void; + /** Scroll to target offset value, if none, it's offsetTop prop value or 0. */ + targetOffset?: number; + /** Listening event when scrolling change active link */ + onChange?: (currentActiveLink: string) => void; } interface AnchorState { @@ -79,7 +82,10 @@ interface AntAnchor { unregisterLink: (link: string) => void; activeLink: string | null; scrollTo: (link: string) => void; - onClick?: (e: React.MouseEvent, link: { title: React.ReactNode; href: string }) => void; + onClick?: ( + e: React.MouseEvent, + link: { title: React.ReactNode; href: string }, + ) => void; } export default class Anchor extends React.Component { @@ -249,7 +255,10 @@ export default class Anchor extends React.Component { return; } const { offsetTop, bounds, targetOffset } = this.props; - const currentActiveLink = this.getCurrentAnchor(targetOffset !== undefined ? targetOffset : offsetTop || 0, bounds); + const currentActiveLink = this.getCurrentAnchor( + targetOffset !== undefined ? targetOffset : offsetTop || 0, + bounds, + ); this.setCurrentActiveLink(currentActiveLink); }; diff --git a/packages/material-parser/test/fixtures/ts-component/src/index.tsx b/packages/material-parser/test/fixtures/ts-component/src/index.tsx index d647aa34f..71540c1f8 100644 --- a/packages/material-parser/test/fixtures/ts-component/src/index.tsx +++ b/packages/material-parser/test/fixtures/ts-component/src/index.tsx @@ -1,40 +1,9 @@ -import * as React from 'react'; +import App from './main-module'; import SubModule from './sub-module'; -enum Gender { - MALE, - FEMALE, -} - -interface Props { - // str?: string; - // num: number; - // gender: Gender; - // any: any; - // bool: boolean; - // tuple: [1, 'str', true]; - // enum: 'red' | 'yellow' | 'green'; - // arr: number[]; - // obj: { - // a: number; - // [k: string]: number; - // }; - // objOf: { - // [k: string]: number; - // }; - // exact: { - // a: number; - // }; - // empty: {}; - node?: React.ReactNode; - // element?: JSX.Element; - // elementType?: React.ElementType; -} - -const App = (props: Props) => { - return
    hello
    ; +App.SubModule = SubModule; +App.defaultProps = { + str: 'str2', }; -App.SubModule = SubModule; - export default App; diff --git a/packages/material-parser/test/fixtures/ts-component/src/main-module.tsx b/packages/material-parser/test/fixtures/ts-component/src/main-module.tsx new file mode 100644 index 000000000..536b24acd --- /dev/null +++ b/packages/material-parser/test/fixtures/ts-component/src/main-module.tsx @@ -0,0 +1,102 @@ +/* eslint-disable @typescript-eslint/ban-types */ +/* eslint-disable @typescript-eslint/indent */ +/* eslint-disable @typescript-eslint/no-unused-vars */ +/* eslint-disable @typescript-eslint/member-ordering */ +import * as React from 'react'; +import SubModule from './sub-module'; + +enum Gender { + MALE, + FEMALE, +} + +interface Obj { + s: string; + n: number; +} + +type Func = (a: string) => JSX.Element; +type Union = + | string + | number + | { + a: string; + }; + +interface Props { + object: Object; + trigger?: Array<'click' | 'hover' | 'contextMenu'>; + str?: string; + num: number; + gender: Gender; + any: any; + bool: boolean; + tuple: [number, string, true]; + enum: 'red' | 'yellow' | 'green'; + arr: number[]; + halfEmptyObj: { + [k: string]: any; + fun(a: string[]): void; + }; + // eslint-disable-next-line @typescript-eslint/ban-types + emptyObj: {}; + func(arg: string): number; + funcs: { + n(): number; + a(arg: string, num: number): void; + }; + fuzzy: + | boolean + | 'object' + | number + | 'number' + | 'test' + | { + a: any; + sa: string[]; + }; + oneOf: boolean | 'test' | Obj; + refFunc(p: Props): void; + elementOrOther: JSX.Element | Func; + obj: { + a: number; + arrOfStr: string[]; + arrOfObj: Obj[]; + func: () => void; + }; + objOf: { + [k: string]: number; + }; + exact: { + a: number; + }; + node?: React.ReactNode; + element?: JSX.Element; + elementType?: React.ElementType; + union: Union; + // eslint-disable-next-line @typescript-eslint/adjacent-overload-signatures + func(a: string): JSX.Element; + func2: Func; + html: HTMLBaseElement; + loading?: boolean | { delay?: number }; +} + +interface AppProps extends React.FC { + SubModule?: typeof SubModule; +} +const App: AppProps = () => { + return
    hello
    ; +}; + +App.defaultProps = { + object: { + a: '1', + b: '2', + }, + func(a) { + return a; + }, + str: 'str', +}; + +export default App; diff --git a/packages/material-parser/test/fixtures/ts-component/src/sub-module.tsx b/packages/material-parser/test/fixtures/ts-component/src/sub-module.tsx index d3006b55e..acea70b08 100644 --- a/packages/material-parser/test/fixtures/ts-component/src/sub-module.tsx +++ b/packages/material-parser/test/fixtures/ts-component/src/sub-module.tsx @@ -4,6 +4,19 @@ interface Props { name: string; } -export default function SubModule({ name }: Props) { - return
    hello, {name}
    ; +class SubModule extends React.Component { + static defaultProps = { + name: 'abc', + }; + + render() { + const { name } = this.props; + return
    hello, {name}
    ; + } } + +SubModule.defaultProps = { + name: 'abc', +}; + +export default SubModule; diff --git a/packages/material-parser/test/fixtures/ts-component2/package.json b/packages/material-parser/test/fixtures/ts-component2/package.json new file mode 100644 index 000000000..95bb4bd8d --- /dev/null +++ b/packages/material-parser/test/fixtures/ts-component2/package.json @@ -0,0 +1,63 @@ +{ + "name": "@alife/empty", + "version": "1.0.1", + "description": "空组件", + "files": [ + "demo/", + "es/", + "lib/", + "build/", + "dist", + "material-meta.json" + ], + "main": "src/index.tsx", + "module": "src/index.tsx", + "stylePath": "style.js", + "scripts": { + "start": "build-scripts start", + "build": "build-scripts build", + "test": "build-scripts test", + "prepublishOnly": "npm run build", + "doc": "react-doc-gen", + "lint": "eslint --cache --ext .js,.jsx ./" + }, + "keywords": [ + "ice", + "react", + "component" + ], + "dependencies": { + "classnames": "^2.2.6", + "prop-types": "^15.5.8" + }, + "devDependencies": { + "@alife/build-plugin-lowcode": "^1.0.7", + "@alib/build-scripts": "^0.1.3", + "@alifd/adaptor-generate": "^0.1.3", + "build-plugin-component": "^0.2.0", + "build-plugin-fusion": "^0.1.0", + "build-plugin-fusion-cool": "^0.1.0", + "build-plugin-moment-locales": "^0.1.0", + "react": "^16.3.0", + "react-dom": "^16.3.0", + "@ice/spec": "^1.0.0", + "eslint": "^6.0.1", + "@alifd/next": "1.x", + "@types/react": "^16.9.13", + "@types/react-dom": "^16.9.4" + }, + "peerDependencies": { + "react": "^16.3.0", + "@alifd/next": "1.x" + }, + "componentConfig": { + "name": "Empty", + "title": "empty", + "category": "DataDisplay" + }, + "publishConfig": { + "registry": "https://registry.npm.alibaba-inc.com" + }, + "license": "MIT", + "homepage": "https://unpkg.alibaba-inc.com/@alife/empty@1.0.1/build/index.html" +} diff --git a/packages/material-parser/test/fixtures/ts-component2/src/empty.tsx b/packages/material-parser/test/fixtures/ts-component2/src/empty.tsx new file mode 100644 index 000000000..f355d8e95 --- /dev/null +++ b/packages/material-parser/test/fixtures/ts-component2/src/empty.tsx @@ -0,0 +1,22 @@ +import * as React from 'react'; +import classNames from 'classnames'; +import './index'; +interface DefaultEmptyImg { + className?: string; + imageStyle?: React.CSSProperties; +} + +export const DefaultEmptyImg = (props: DefaultEmptyImg) => { + const { className, imageStyle, ...restProps } = props; + const prefixCls = 'design-empty-default'; + const alt = 'empty'; + + return ( +
    +
    + {alt} +
    +

    暂时没有数据

    +
    + ); +}; diff --git a/packages/material-parser/test/fixtures/ts-component2/src/index.scss b/packages/material-parser/test/fixtures/ts-component2/src/index.scss new file mode 100644 index 000000000..e833d2c72 --- /dev/null +++ b/packages/material-parser/test/fixtures/ts-component2/src/index.scss @@ -0,0 +1,49 @@ +.design-empty { + margin: 0 8px; + font-size: 14px; + line-height: 1.5715; + text-align: center; + + &-image { + height: 200px; + margin-bottom: 4px; + + img { + height: 100%; + } + + svg { + height: 100%; + margin: auto; + } + } + + &-description { + margin: 0; + } + + &-footer { + margin-top: 16px; + } +} + +.design-empty-default { + margin: 0 8px; + font-size: 14px; + line-height: 1.5715; + text-align: center; + + &-image { + height: 54px; + margin-bottom: 8px; + + img { + height: 100%; + } + } + + &-description { + font-size: 14px; + color: #c2c2c2; + } +} diff --git a/packages/material-parser/test/fixtures/ts-component2/src/index.tsx b/packages/material-parser/test/fixtures/ts-component2/src/index.tsx new file mode 100644 index 000000000..01d26c722 --- /dev/null +++ b/packages/material-parser/test/fixtures/ts-component2/src/index.tsx @@ -0,0 +1,71 @@ +import * as React from 'react'; +import classNames from 'classnames'; +import { DefaultEmptyImg } from './empty'; + +export interface EmptyProps { + className?: string; + style?: React.CSSProperties; + imageStyle?: React.CSSProperties; + image?: React.ReactNode | string; + description?: React.ReactNode; + children?: React.ReactNode; + type?: 'default' | 'custom'; // default 默认, custom 表示自定义 +} + +const prefixCls = 'design-empty'; +interface EmptyType extends React.FC { + IMAGE_TYPE_SERVERBUSY: string; //服务器繁忙 + IMAGE_TYPE_SERVERNOFOUND: string; // 404 + IMAGE_TYPE_FILENOFOUND: string; //文件不存在 + IMAGE_TYPE_PROJECTNOFOUND: string; // 项目不存在 + IMAGE_TYPE_EMPTY: string; //空 +} + +const Empty: EmptyType = (props: EmptyProps) => { + const { + className, + image = 'Empty.IMAGE_TYPE_EMPTY', + description, + children, + imageStyle, + type = 'custom', + ...restProps + } = props; + + if (type === 'default') { + return ; + } + + let imageNode: React.ReactNode = null; + const alt = typeof description === 'string' ? description : 'empty'; + + if (typeof image === 'string') { + imageNode = {alt}; + } else { + imageNode = image; + } + + return ( +
    +
    + {imageNode} +
    + {description &&

    {description}

    } + {children &&
    {children}
    } +
    + ); +}; + +//服务器繁忙 +Empty.IMAGE_TYPE_SERVERBUSY = 'https://img.alicdn.com/tfs/TB1qPJvTFY7gK0jSZKzXXaikpXa-400-400.png'; +//404 +Empty.IMAGE_TYPE_SERVERNOFOUND = + 'https://img.alicdn.com/tfs/TB18gVGTUH1gK0jSZSyXXXtlpXa-400-400.png'; +//文件不存在 +Empty.IMAGE_TYPE_FILENOFOUND = 'https://img.alicdn.com/tfs/TB1.ClQTUT1gK0jSZFrXXcNCXXa-400-400.png'; +//项目不存在 +Empty.IMAGE_TYPE_PROJECTNOFOUND = + 'https://img.alicdn.com/tfs/TB1ZWumfcieb18jSZFvXXaI3FXa-400-400.png'; +//空 +Empty.IMAGE_TYPE_EMPTY = 'https://img.alicdn.com/tfs/TB13G0LTNv1gK0jSZFFXXb0sXXa-54-54.svg'; +export default Empty; diff --git a/packages/material-parser/test/index.ts b/packages/material-parser/test/index.ts index 9fa9981c5..84959a2ca 100644 --- a/packages/material-parser/test/index.ts +++ b/packages/material-parser/test/index.ts @@ -6,6 +6,7 @@ import { getFromFixtures } from './helpers'; const multiExportedComptPath = getFromFixtures('multiple-exported-component'); const singleExportedComptPath = getFromFixtures('single-exported-component'); const tsComponent = getFromFixtures('ts-component'); +const tsComponent2 = getFromFixtures('ts-component2'); test('materialize single exported component by local', async t => { const options: IMaterializeOptions = { @@ -39,3 +40,14 @@ test('ts component by local', async t => { t.snapshot(actual); }); + +test('ts component 2 by local', async t => { + const options: IMaterializeOptions = { + entry: tsComponent2, + accesser: 'local', + }; + + const actual = await parse(options); + + t.snapshot(actual); +}); From 4e6cab8cb79db1b22239665f244889d130096d40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8D=A3=E5=BD=AC?= Date: Mon, 19 Oct 2020 10:40:55 +0800 Subject: [PATCH 3/3] Publish - @ali/lowcode-code-generator@1.0.11 - @ali/lowcode-datasource-engine@0.1.15 - @ali/lowcode-demo-server@1.0.11 - @ali/lowcode-demo@1.0.11 - @ali/lowcode-designer@1.0.11 - @ali/lowcode-editor-core@1.0.11 - @ali/lowcode-editor-preset-general@1.0.11 - @ali/lowcode-editor-preset-vision@1.0.11 - @ali/lowcode-editor-setters@1.0.11 - @ali/lowcode-editor-skeleton@1.0.11 - @ali/lowcode-material-parser@1.0.11 - @ali/lowcode-plugin-components-pane@1.0.11 - @ali/lowcode-plugin-designer@1.0.11 - @ali/lowcode-plugin-event-bind-dialog@1.0.11 - @ali/lowcode-plugin-outline-pane@1.0.11 - @ali/lowcode-plugin-sample-logo@1.0.11 - @ali/lowcode-plugin-sample-preview@1.0.11 - @ali/lowcode-plugin-source-editor@1.0.11 - @ali/lowcode-plugin-undo-redo@1.0.11 - @ali/lowcode-plugin-variable-bind-dialog@1.0.11 - @ali/lowcode-plugin-zh-en@1.0.11 - @ali/lowcode-rax-provider@1.0.11 - @ali/lowcode-rax-renderer@1.0.11 - @ali/lowcode-rax-simulator-renderer@1.0.11 - @ali/lowcode-react-provider@1.0.13 - @ali/lowcode-react-renderer@1.0.11 - @ali/lowcode-react-simulator-renderer@1.0.11 - @ali/lowcode-runtime@1.0.13 - @ali/lowcode-types@1.0.11 - @ali/lowcode-utils@1.0.11 --- packages/code-generator/CHANGELOG.md | 8 +++++ packages/code-generator/package.json | 4 +-- packages/datasource-engine/CHANGELOG.md | 8 +++++ packages/datasource-engine/package.json | 2 +- packages/demo-server/CHANGELOG.md | 8 +++++ packages/demo-server/package.json | 2 +- packages/demo/CHANGELOG.md | 11 +++++++ packages/demo/package.json | 30 +++++++++---------- packages/designer/CHANGELOG.md | 11 +++++++ packages/designer/package.json | 8 ++--- packages/editor-core/CHANGELOG.md | 8 +++++ packages/editor-core/package.json | 6 ++-- packages/editor-preset-general/CHANGELOG.md | 8 +++++ packages/editor-preset-general/package.json | 16 +++++----- packages/editor-preset-vision/CHANGELOG.md | 8 +++++ packages/editor-preset-vision/package.json | 12 ++++---- packages/editor-setters/CHANGELOG.md | 11 +++++++ packages/editor-setters/package.json | 4 +-- packages/editor-skeleton/CHANGELOG.md | 8 +++++ packages/editor-skeleton/package.json | 10 +++---- packages/material-parser/CHANGELOG.md | 11 +++++++ packages/material-parser/package.json | 2 +- packages/plugin-components-pane/CHANGELOG.md | 8 +++++ packages/plugin-components-pane/package.json | 8 ++--- packages/plugin-designer/CHANGELOG.md | 8 +++++ packages/plugin-designer/package.json | 6 ++-- .../plugin-event-bind-dialog/CHANGELOG.md | 8 +++++ .../plugin-event-bind-dialog/package.json | 6 ++-- packages/plugin-outline-pane/CHANGELOG.md | 8 +++++ packages/plugin-outline-pane/package.json | 10 +++---- packages/plugin-sample-logo/CHANGELOG.md | 8 +++++ packages/plugin-sample-logo/package.json | 4 +-- packages/plugin-sample-preview/CHANGELOG.md | 8 +++++ packages/plugin-sample-preview/package.json | 12 ++++---- packages/plugin-source-editor/CHANGELOG.md | 8 +++++ packages/plugin-source-editor/package.json | 4 +-- packages/plugin-undo-redo/CHANGELOG.md | 8 +++++ packages/plugin-undo-redo/package.json | 12 ++++---- .../plugin-variable-bind-dialog/CHANGELOG.md | 8 +++++ .../plugin-variable-bind-dialog/package.json | 4 +-- packages/plugin-zh-en/CHANGELOG.md | 8 +++++ packages/plugin-zh-en/package.json | 8 ++--- packages/rax-provider/CHANGELOG.md | 8 +++++ packages/rax-provider/package.json | 4 +-- packages/rax-render/CHANGELOG.md | 12 ++++++-- packages/rax-render/package.json | 4 +-- packages/rax-simulator-renderer/CHANGELOG.md | 8 +++++ packages/rax-simulator-renderer/package.json | 12 ++++---- packages/react-provider/CHANGELOG.md | 8 +++++ packages/react-provider/package.json | 6 ++-- packages/react-renderer/CHANGELOG.md | 11 +++++++ packages/react-renderer/package.json | 2 +- .../react-simulator-renderer/CHANGELOG.md | 8 +++++ .../react-simulator-renderer/package.json | 10 +++---- packages/runtime/CHANGELOG.md | 8 +++++ packages/runtime/package.json | 2 +- packages/types/CHANGELOG.md | 8 +++++ packages/types/package.json | 2 +- packages/utils/CHANGELOG.md | 8 +++++ packages/utils/package.json | 4 +-- 60 files changed, 365 insertions(+), 110 deletions(-) diff --git a/packages/code-generator/CHANGELOG.md b/packages/code-generator/CHANGELOG.md index ae621217e..1c2ba7ffb 100644 --- a/packages/code-generator/CHANGELOG.md +++ b/packages/code-generator/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +
    +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-code-generator@1.0.10...@ali/lowcode-code-generator@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-code-generator + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-code-generator@1.0.9...@ali/lowcode-code-generator@1.0.10) (2020-09-29) diff --git a/packages/code-generator/package.json b/packages/code-generator/package.json index dc5535328..332758bfc 100644 --- a/packages/code-generator/package.json +++ b/packages/code-generator/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-code-generator", - "version": "1.0.10", + "version": "1.0.11", "description": "出码引擎 for LowCode Engine", "main": "lib/index.js", "module": "es/index.js", @@ -21,7 +21,7 @@ }, "dependencies": { "@ali/am-eslint-config": "*", - "@ali/lowcode-types": "^1.0.10", + "@ali/lowcode-types": "^1.0.11", "@ali/my-prettier": "^1.0.0", "@babel/generator": "^7.9.5", "@babel/parser": "^7.9.4", diff --git a/packages/datasource-engine/CHANGELOG.md b/packages/datasource-engine/CHANGELOG.md index c43546b6a..c623bb241 100644 --- a/packages/datasource-engine/CHANGELOG.md +++ b/packages/datasource-engine/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [0.1.15](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-datasource-engine@0.1.14...@ali/lowcode-datasource-engine@0.1.15) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-datasource-engine + ## [0.1.14](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-datasource-engine@0.1.13...@ali/lowcode-datasource-engine@0.1.14) (2020-09-29) diff --git a/packages/datasource-engine/package.json b/packages/datasource-engine/package.json index 6959b276c..6b8ce96f0 100644 --- a/packages/datasource-engine/package.json +++ b/packages/datasource-engine/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-datasource-engine", - "version": "0.1.14", + "version": "0.1.15", "description": "DataSource Engine for lowcode", "main": "lib/index.js", "module": "es/index.js", diff --git a/packages/demo-server/CHANGELOG.md b/packages/demo-server/CHANGELOG.md index f6695296f..acd5fd3ad 100644 --- a/packages/demo-server/CHANGELOG.md +++ b/packages/demo-server/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-demo-server@1.0.10...@ali/lowcode-demo-server@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-demo-server + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-demo-server@1.0.9...@ali/lowcode-demo-server@1.0.10) (2020-09-29) diff --git a/packages/demo-server/package.json b/packages/demo-server/package.json index ec0f1bba4..6a9c2e56f 100644 --- a/packages/demo-server/package.json +++ b/packages/demo-server/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-demo-server", - "version": "1.0.10", + "version": "1.0.11", "private": true, "description": "低代码引擎 DEMO Server 端", "scripts": { diff --git a/packages/demo/CHANGELOG.md b/packages/demo/CHANGELOG.md index 3500ebe4a..989906bc9 100644 --- a/packages/demo/CHANGELOG.md +++ b/packages/demo/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-demo@1.0.10...@ali/lowcode-demo@1.0.11) (2020-10-19) + + +### Bug Fixes + +* 将monaco基础包全部移除,采用cdn形式注入 ([510f1c0](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/commit/510f1c0)) + + + + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-demo@1.0.9...@ali/lowcode-demo@1.0.10) (2020-09-29) diff --git a/packages/demo/package.json b/packages/demo/package.json index 416b2c248..c715a2c21 100644 --- a/packages/demo/package.json +++ b/packages/demo/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-demo", - "version": "1.0.10", + "version": "1.0.11", "private": true, "description": "低代码引擎 DEMO", "scripts": { @@ -9,21 +9,21 @@ }, "config": {}, "dependencies": { - "@ali/lowcode-editor-core": "^1.0.10", - "@ali/lowcode-editor-skeleton": "^1.0.10", - "@ali/lowcode-plugin-components-pane": "^1.0.10", - "@ali/lowcode-plugin-designer": "^1.0.10", - "@ali/lowcode-plugin-event-bind-dialog": "^1.0.10", - "@ali/lowcode-plugin-outline-pane": "^1.0.10", - "@ali/lowcode-plugin-sample-logo": "^1.0.10", - "@ali/lowcode-plugin-sample-preview": "^1.0.10", + "@ali/lowcode-editor-core": "^1.0.11", + "@ali/lowcode-editor-skeleton": "^1.0.11", + "@ali/lowcode-plugin-components-pane": "^1.0.11", + "@ali/lowcode-plugin-designer": "^1.0.11", + "@ali/lowcode-plugin-event-bind-dialog": "^1.0.11", + "@ali/lowcode-plugin-outline-pane": "^1.0.11", + "@ali/lowcode-plugin-sample-logo": "^1.0.11", + "@ali/lowcode-plugin-sample-preview": "^1.0.11", "@ali/lowcode-plugin-settings-pane": "^0.8.8", - "@ali/lowcode-plugin-undo-redo": "^1.0.10", - "@ali/lowcode-plugin-variable-bind-dialog": "^1.0.10", - "@ali/lowcode-plugin-zh-en": "^1.0.10", - "@ali/lowcode-react-renderer": "^1.0.10", - "@ali/lowcode-runtime": "^1.0.12", - "@ali/lowcode-utils": "^1.0.10", + "@ali/lowcode-plugin-undo-redo": "^1.0.11", + "@ali/lowcode-plugin-variable-bind-dialog": "^1.0.11", + "@ali/lowcode-plugin-zh-en": "^1.0.11", + "@ali/lowcode-react-renderer": "^1.0.11", + "@ali/lowcode-runtime": "^1.0.13", + "@ali/lowcode-utils": "^1.0.11", "@ali/ve-action-pane": "^4.7.0-beta.0", "@ali/ve-datapool-pane": "^6.4.3", "@ali/ve-history-pane": "4.0.0", diff --git a/packages/designer/CHANGELOG.md b/packages/designer/CHANGELOG.md index 8c150b213..abdaf7938 100644 --- a/packages/designer/CHANGELOG.md +++ b/packages/designer/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-designer@1.0.10...@ali/lowcode-designer@1.0.11) (2020-10-19) + + +### Bug Fixes + +* checkId 需要传递 ([bdff2b1](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/commit/bdff2b1)) + + + + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-designer@1.0.9...@ali/lowcode-designer@1.0.10) (2020-09-29) diff --git a/packages/designer/package.json b/packages/designer/package.json index 9059f58c5..fe7186ac6 100644 --- a/packages/designer/package.json +++ b/packages/designer/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-designer", - "version": "1.0.10", + "version": "1.0.11", "description": "Designer for Ali LowCode Engine", "main": "lib/index.js", "module": "es/index.js", @@ -15,9 +15,9 @@ }, "license": "MIT", "dependencies": { - "@ali/lowcode-editor-core": "^1.0.10", - "@ali/lowcode-types": "^1.0.10", - "@ali/lowcode-utils": "^1.0.10", + "@ali/lowcode-editor-core": "^1.0.11", + "@ali/lowcode-types": "^1.0.11", + "@ali/lowcode-utils": "^1.0.11", "classnames": "^2.2.6", "event": "^1.0.0", "react": "^16", diff --git a/packages/editor-core/CHANGELOG.md b/packages/editor-core/CHANGELOG.md index 454f8d7f1..e14e7988c 100644 --- a/packages/editor-core/CHANGELOG.md +++ b/packages/editor-core/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-editor-core@1.0.10...@ali/lowcode-editor-core@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-editor-core + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-editor-core@1.0.9...@ali/lowcode-editor-core@1.0.10) (2020-09-29) diff --git a/packages/editor-core/package.json b/packages/editor-core/package.json index 92d3a8947..2ee69e042 100644 --- a/packages/editor-core/package.json +++ b/packages/editor-core/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-editor-core", - "version": "1.0.10", + "version": "1.0.11", "description": "Core Api for Ali lowCode engine", "license": "MIT", "main": "lib/index.js", @@ -15,8 +15,8 @@ "cloud-build": "build-scripts build --skip-demo" }, "dependencies": { - "@ali/lowcode-types": "^1.0.10", - "@ali/lowcode-utils": "^1.0.10", + "@ali/lowcode-types": "^1.0.11", + "@ali/lowcode-utils": "^1.0.11", "@alifd/next": "^1.19.16", "@recore/obx": "^1.0.9", "@recore/obx-react": "^1.0.8", diff --git a/packages/editor-preset-general/CHANGELOG.md b/packages/editor-preset-general/CHANGELOG.md index 4a08e4807..c185e8586 100644 --- a/packages/editor-preset-general/CHANGELOG.md +++ b/packages/editor-preset-general/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-editor-preset-general@1.0.10...@ali/lowcode-editor-preset-general@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-editor-preset-general + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-editor-preset-general@1.0.9...@ali/lowcode-editor-preset-general@1.0.10) (2020-09-29) diff --git a/packages/editor-preset-general/package.json b/packages/editor-preset-general/package.json index 3fc3920a2..d994560cf 100644 --- a/packages/editor-preset-general/package.json +++ b/packages/editor-preset-general/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-editor-preset-general", - "version": "1.0.10", + "version": "1.0.11", "description": "Ali General Editor Preset", "main": "lib/index.js", "files": [ @@ -14,12 +14,12 @@ }, "license": "MIT", "dependencies": { - "@ali/lowcode-editor-core": "^1.0.10", - "@ali/lowcode-editor-skeleton": "^1.0.10", - "@ali/lowcode-plugin-designer": "^1.0.10", - "@ali/lowcode-plugin-outline-pane": "^1.0.10", - "@ali/lowcode-types": "^1.0.10", - "@ali/lowcode-utils": "^1.0.10", + "@ali/lowcode-editor-core": "^1.0.11", + "@ali/lowcode-editor-skeleton": "^1.0.11", + "@ali/lowcode-plugin-designer": "^1.0.11", + "@ali/lowcode-plugin-outline-pane": "^1.0.11", + "@ali/lowcode-types": "^1.0.11", + "@ali/lowcode-utils": "^1.0.11", "@alifd/next": "^1.19.12", "@alife/theme-lowcode-dark": "^0.1.0", "@alife/theme-lowcode-light": "^0.1.0", @@ -27,7 +27,7 @@ "react-dom": "^16.8.1" }, "devDependencies": { - "@ali/lowcode-editor-setters": "^1.0.10", + "@ali/lowcode-editor-setters": "^1.0.11", "@alib/build-scripts": "^0.1.18", "@types/events": "^3.0.0", "@types/react": "^16.8.3", diff --git a/packages/editor-preset-vision/CHANGELOG.md b/packages/editor-preset-vision/CHANGELOG.md index 46716ccbc..6466b43f3 100644 --- a/packages/editor-preset-vision/CHANGELOG.md +++ b/packages/editor-preset-vision/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-editor-preset-vision@1.0.10...@ali/lowcode-editor-preset-vision@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-editor-preset-vision + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-editor-preset-vision@1.0.9...@ali/lowcode-editor-preset-vision@1.0.10) (2020-09-29) diff --git a/packages/editor-preset-vision/package.json b/packages/editor-preset-vision/package.json index 7d2257ffc..9ef23593e 100644 --- a/packages/editor-preset-vision/package.json +++ b/packages/editor-preset-vision/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-editor-preset-vision", - "version": "1.0.10", + "version": "1.0.11", "description": "Vision Polyfill for Ali lowCode engine", "main": "lib/index.js", "private": true, @@ -15,11 +15,11 @@ }, "license": "MIT", "dependencies": { - "@ali/lowcode-designer": "^1.0.10", - "@ali/lowcode-editor-core": "^1.0.10", - "@ali/lowcode-editor-skeleton": "^1.0.10", - "@ali/lowcode-plugin-designer": "^1.0.10", - "@ali/lowcode-plugin-outline-pane": "^1.0.10", + "@ali/lowcode-designer": "^1.0.11", + "@ali/lowcode-editor-core": "^1.0.11", + "@ali/lowcode-editor-skeleton": "^1.0.11", + "@ali/lowcode-plugin-designer": "^1.0.11", + "@ali/lowcode-plugin-outline-pane": "^1.0.11", "@ali/ve-i18n-util": "^2.0.0", "@ali/ve-icons": "^4.1.9", "@ali/ve-less-variables": "2.0.3", diff --git a/packages/editor-setters/CHANGELOG.md b/packages/editor-setters/CHANGELOG.md index fd1c7ca5a..3855ac5b1 100644 --- a/packages/editor-setters/CHANGELOG.md +++ b/packages/editor-setters/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-editor-setters@1.0.10...@ali/lowcode-editor-setters@1.0.11) (2020-10-19) + + +### Bug Fixes + +* 将monaco基础包全部移除,采用cdn形式注入 ([510f1c0](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/commit/510f1c0)) + + + + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-editor-setters@1.0.9...@ali/lowcode-editor-setters@1.0.10) (2020-09-29) diff --git a/packages/editor-setters/package.json b/packages/editor-setters/package.json index 07cbb7308..2da7efcf8 100644 --- a/packages/editor-setters/package.json +++ b/packages/editor-setters/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-editor-setters", - "version": "1.0.10", + "version": "1.0.11", "description": "Builtin setters for Ali lowCode engine", "files": [ "es", @@ -21,7 +21,7 @@ "@ali/iceluna-comp-react-node": "^1.0.5", "@ali/iceluna-sdk": "^1.0.5-beta.24", "@ali/lc-style-setter": "^0.0.1", - "@ali/lowcode-editor-core": "^1.0.10", + "@ali/lowcode-editor-core": "^1.0.11", "@alifd/next": "^1.19.16", "acorn": "^6.4.1", "classnames": "^2.2.6", diff --git a/packages/editor-skeleton/CHANGELOG.md b/packages/editor-skeleton/CHANGELOG.md index cfd02409a..8c99a1a1a 100644 --- a/packages/editor-skeleton/CHANGELOG.md +++ b/packages/editor-skeleton/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-editor-skeleton@1.0.10...@ali/lowcode-editor-skeleton@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-editor-skeleton + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-editor-skeleton@1.0.9...@ali/lowcode-editor-skeleton@1.0.10) (2020-09-29) diff --git a/packages/editor-skeleton/package.json b/packages/editor-skeleton/package.json index db8b13cc1..70e2cfc80 100644 --- a/packages/editor-skeleton/package.json +++ b/packages/editor-skeleton/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-editor-skeleton", - "version": "1.0.10", + "version": "1.0.11", "description": "alibaba lowcode editor skeleton", "main": "lib/index.js", "module": "es/index.js", @@ -19,10 +19,10 @@ "editor" ], "dependencies": { - "@ali/lowcode-designer": "^1.0.10", - "@ali/lowcode-editor-core": "^1.0.10", - "@ali/lowcode-types": "^1.0.10", - "@ali/lowcode-utils": "^1.0.10", + "@ali/lowcode-designer": "^1.0.11", + "@ali/lowcode-editor-core": "^1.0.11", + "@ali/lowcode-types": "^1.0.11", + "@ali/lowcode-utils": "^1.0.11", "@ali/ve-icons": "latest", "@ali/ve-less-variables": "^2.0.0", "@alifd/next": "^1.20.12", diff --git a/packages/material-parser/CHANGELOG.md b/packages/material-parser/CHANGELOG.md index 3987bf730..811655640 100644 --- a/packages/material-parser/CHANGELOG.md +++ b/packages/material-parser/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-material-parser@1.0.10...@ali/lowcode-material-parser@1.0.11) (2020-10-19) + + +### Bug Fixes + +* fix typescript related bugs, including the following: ([d4c45d2](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/commit/d4c45d2)) + + + + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-material-parser@1.0.9...@ali/lowcode-material-parser@1.0.10) (2020-09-29) diff --git a/packages/material-parser/package.json b/packages/material-parser/package.json index 160812fa7..5432baed0 100644 --- a/packages/material-parser/package.json +++ b/packages/material-parser/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-material-parser", - "version": "1.0.10", + "version": "1.0.11", "description": "material parser for Ali lowCode engine", "main": "lib/index.js", "files": [ diff --git a/packages/plugin-components-pane/CHANGELOG.md b/packages/plugin-components-pane/CHANGELOG.md index c6581a940..4da7d9f15 100644 --- a/packages/plugin-components-pane/CHANGELOG.md +++ b/packages/plugin-components-pane/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-plugin-components-pane@1.0.10...@ali/lowcode-plugin-components-pane@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-plugin-components-pane + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-plugin-components-pane@1.0.9...@ali/lowcode-plugin-components-pane@1.0.10) (2020-09-29) diff --git a/packages/plugin-components-pane/package.json b/packages/plugin-components-pane/package.json index ab9492366..9c7818c0f 100644 --- a/packages/plugin-components-pane/package.json +++ b/packages/plugin-components-pane/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-plugin-components-pane", - "version": "1.0.10", + "version": "1.0.11", "description": "alibaba lowcode editor component-list plugin", "files": [ "es/", @@ -21,9 +21,9 @@ "author": "xiayang.xy", "dependencies": { "@ali/intl-universal": "^0.4.12", - "@ali/lowcode-designer": "^1.0.10", - "@ali/lowcode-editor-core": "^1.0.10", - "@ali/lowcode-types": "^1.0.10", + "@ali/lowcode-designer": "^1.0.11", + "@ali/lowcode-editor-core": "^1.0.11", + "@ali/lowcode-types": "^1.0.11", "@ali/vu-layer": "^4.0.1", "@ali/vu-uxcore-legao-design": "^1.4.0", "@alifd/next": "^1.19.19", diff --git a/packages/plugin-designer/CHANGELOG.md b/packages/plugin-designer/CHANGELOG.md index bd486264b..72cd7782a 100644 --- a/packages/plugin-designer/CHANGELOG.md +++ b/packages/plugin-designer/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-plugin-designer@1.0.10...@ali/lowcode-plugin-designer@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-plugin-designer + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-plugin-designer@1.0.9...@ali/lowcode-plugin-designer@1.0.10) (2020-09-29) diff --git a/packages/plugin-designer/package.json b/packages/plugin-designer/package.json index 271aa8222..686778317 100644 --- a/packages/plugin-designer/package.json +++ b/packages/plugin-designer/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-plugin-designer", - "version": "1.0.10", + "version": "1.0.11", "description": "alibaba lowcode editor designer plugin", "files": [ "es", @@ -20,8 +20,8 @@ ], "author": "xiayang.xy", "dependencies": { - "@ali/lowcode-designer": "^1.0.10", - "@ali/lowcode-editor-core": "^1.0.10", + "@ali/lowcode-designer": "^1.0.11", + "@ali/lowcode-editor-core": "^1.0.11", "react": "^16.8.1", "react-dom": "^16.8.1" }, diff --git a/packages/plugin-event-bind-dialog/CHANGELOG.md b/packages/plugin-event-bind-dialog/CHANGELOG.md index 5729f5b28..cb3a2f1e9 100644 --- a/packages/plugin-event-bind-dialog/CHANGELOG.md +++ b/packages/plugin-event-bind-dialog/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-plugin-event-bind-dialog@1.0.10...@ali/lowcode-plugin-event-bind-dialog@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-plugin-event-bind-dialog + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-plugin-event-bind-dialog@1.0.9...@ali/lowcode-plugin-event-bind-dialog@1.0.10) (2020-09-29) diff --git a/packages/plugin-event-bind-dialog/package.json b/packages/plugin-event-bind-dialog/package.json index 66c132f28..f7381420c 100644 --- a/packages/plugin-event-bind-dialog/package.json +++ b/packages/plugin-event-bind-dialog/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-plugin-event-bind-dialog", - "version": "1.0.10", + "version": "1.0.11", "description": "alibaba lowcode editor event bind dialog plugin", "files": [ "es", @@ -19,8 +19,8 @@ ], "author": "zude.hzd", "dependencies": { - "@ali/lowcode-editor-core": "^1.0.10", - "@ali/lowcode-types": "^1.0.10", + "@ali/lowcode-editor-core": "^1.0.11", + "@ali/lowcode-types": "^1.0.11", "@alifd/next": "^1.19.16", "react": "^16.8.1", "react-dom": "^16.8.1" diff --git a/packages/plugin-outline-pane/CHANGELOG.md b/packages/plugin-outline-pane/CHANGELOG.md index 05fbe91fd..71651177f 100644 --- a/packages/plugin-outline-pane/CHANGELOG.md +++ b/packages/plugin-outline-pane/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-plugin-outline-pane@1.0.10...@ali/lowcode-plugin-outline-pane@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-plugin-outline-pane + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-plugin-outline-pane@1.0.9...@ali/lowcode-plugin-outline-pane@1.0.10) (2020-09-29) diff --git a/packages/plugin-outline-pane/package.json b/packages/plugin-outline-pane/package.json index 85b2e9470..4102488a5 100644 --- a/packages/plugin-outline-pane/package.json +++ b/packages/plugin-outline-pane/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-plugin-outline-pane", - "version": "1.0.10", + "version": "1.0.11", "description": "Outline pane for Ali lowCode engine", "files": [ "es", @@ -14,10 +14,10 @@ "test:snapshot": "ava --update-snapshots" }, "dependencies": { - "@ali/lowcode-designer": "^1.0.10", - "@ali/lowcode-editor-core": "^1.0.10", - "@ali/lowcode-types": "^1.0.10", - "@ali/lowcode-utils": "^1.0.10", + "@ali/lowcode-designer": "^1.0.11", + "@ali/lowcode-editor-core": "^1.0.11", + "@ali/lowcode-types": "^1.0.11", + "@ali/lowcode-utils": "^1.0.11", "@alifd/next": "^1.19.16", "classnames": "^2.2.6", "react": "^16", diff --git a/packages/plugin-sample-logo/CHANGELOG.md b/packages/plugin-sample-logo/CHANGELOG.md index 85209cb79..ed5640618 100644 --- a/packages/plugin-sample-logo/CHANGELOG.md +++ b/packages/plugin-sample-logo/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-plugin-sample-logo@1.0.10...@ali/lowcode-plugin-sample-logo@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-plugin-sample-logo + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-plugin-sample-logo@1.0.9...@ali/lowcode-plugin-sample-logo@1.0.10) (2020-09-29) diff --git a/packages/plugin-sample-logo/package.json b/packages/plugin-sample-logo/package.json index c53149463..fabd319eb 100644 --- a/packages/plugin-sample-logo/package.json +++ b/packages/plugin-sample-logo/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-plugin-sample-logo", - "version": "1.0.10", + "version": "1.0.11", "description": "alibaba lowcode editor logo plugin", "files": [ "es/", @@ -20,7 +20,7 @@ ], "author": "xiayang.xy", "dependencies": { - "@ali/lowcode-editor-core": "^1.0.10", + "@ali/lowcode-editor-core": "^1.0.11", "react": "^16.8.1" }, "devDependencies": { diff --git a/packages/plugin-sample-preview/CHANGELOG.md b/packages/plugin-sample-preview/CHANGELOG.md index b8fea8343..61cd2249f 100644 --- a/packages/plugin-sample-preview/CHANGELOG.md +++ b/packages/plugin-sample-preview/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-plugin-sample-preview@1.0.10...@ali/lowcode-plugin-sample-preview@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-plugin-sample-preview + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-plugin-sample-preview@1.0.9...@ali/lowcode-plugin-sample-preview@1.0.10) (2020-09-29) diff --git a/packages/plugin-sample-preview/package.json b/packages/plugin-sample-preview/package.json index 81a5998ec..3b2132e5b 100644 --- a/packages/plugin-sample-preview/package.json +++ b/packages/plugin-sample-preview/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-plugin-sample-preview", - "version": "1.0.10", + "version": "1.0.11", "description": "alibaba lowcode editor sample preview plugin", "files": [ "es", @@ -19,11 +19,11 @@ "editor" ], "dependencies": { - "@ali/lowcode-designer": "^1.0.10", - "@ali/lowcode-editor-core": "^1.0.10", - "@ali/lowcode-react-renderer": "^1.0.10", - "@ali/lowcode-types": "^1.0.10", - "@ali/lowcode-utils": "^1.0.10", + "@ali/lowcode-designer": "^1.0.11", + "@ali/lowcode-editor-core": "^1.0.11", + "@ali/lowcode-react-renderer": "^1.0.11", + "@ali/lowcode-types": "^1.0.11", + "@ali/lowcode-utils": "^1.0.11", "@alifd/next": "^1.x", "react": "^16.8.1" }, diff --git a/packages/plugin-source-editor/CHANGELOG.md b/packages/plugin-source-editor/CHANGELOG.md index aee4519ff..b5c099489 100644 --- a/packages/plugin-source-editor/CHANGELOG.md +++ b/packages/plugin-source-editor/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-plugin-source-editor@1.0.10...@ali/lowcode-plugin-source-editor@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-plugin-source-editor + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-plugin-source-editor@1.0.9...@ali/lowcode-plugin-source-editor@1.0.10) (2020-09-29) diff --git a/packages/plugin-source-editor/package.json b/packages/plugin-source-editor/package.json index d14694565..58cf9529a 100644 --- a/packages/plugin-source-editor/package.json +++ b/packages/plugin-source-editor/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-plugin-source-editor", - "version": "1.0.10", + "version": "1.0.11", "description": "alibaba lowcode editor source-editor plugin", "files": [ "es", @@ -19,7 +19,7 @@ ], "author": "zude.hzd", "dependencies": { - "@ali/lowcode-editor-core": "^1.0.10", + "@ali/lowcode-editor-core": "^1.0.11", "@alifd/next": "^1.19.16", "js-beautify": "^1.10.1", "prettier": "^1.18.2", diff --git a/packages/plugin-undo-redo/CHANGELOG.md b/packages/plugin-undo-redo/CHANGELOG.md index c011831f1..dd9adb64c 100644 --- a/packages/plugin-undo-redo/CHANGELOG.md +++ b/packages/plugin-undo-redo/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-plugin-undo-redo@1.0.10...@ali/lowcode-plugin-undo-redo@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-plugin-undo-redo + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-plugin-undo-redo@1.0.9...@ali/lowcode-plugin-undo-redo@1.0.10) (2020-09-29) diff --git a/packages/plugin-undo-redo/package.json b/packages/plugin-undo-redo/package.json index 98680e3f7..eb2061b28 100644 --- a/packages/plugin-undo-redo/package.json +++ b/packages/plugin-undo-redo/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-plugin-undo-redo", - "version": "1.0.10", + "version": "1.0.11", "description": "alibaba lowcode editor undo redo plugin", "files": [ "es", @@ -19,11 +19,11 @@ ], "author": "xiayang.xy", "dependencies": { - "@ali/lowcode-designer": "^1.0.10", - "@ali/lowcode-editor-core": "^1.0.10", - "@ali/lowcode-editor-skeleton": "^1.0.10", - "@ali/lowcode-types": "^1.0.10", - "@ali/lowcode-utils": "^1.0.10", + "@ali/lowcode-designer": "^1.0.11", + "@ali/lowcode-editor-core": "^1.0.11", + "@ali/lowcode-editor-skeleton": "^1.0.11", + "@ali/lowcode-types": "^1.0.11", + "@ali/lowcode-utils": "^1.0.11", "react": "^16.8.1", "react-dom": "^16.8.1" }, diff --git a/packages/plugin-variable-bind-dialog/CHANGELOG.md b/packages/plugin-variable-bind-dialog/CHANGELOG.md index f0b847715..5bf68a3ed 100644 --- a/packages/plugin-variable-bind-dialog/CHANGELOG.md +++ b/packages/plugin-variable-bind-dialog/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-plugin-variable-bind-dialog@1.0.10...@ali/lowcode-plugin-variable-bind-dialog@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-plugin-variable-bind-dialog + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-plugin-variable-bind-dialog@1.0.9...@ali/lowcode-plugin-variable-bind-dialog@1.0.10) (2020-09-29) diff --git a/packages/plugin-variable-bind-dialog/package.json b/packages/plugin-variable-bind-dialog/package.json index 6e624ccce..5b5ebc7d1 100644 --- a/packages/plugin-variable-bind-dialog/package.json +++ b/packages/plugin-variable-bind-dialog/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-plugin-variable-bind-dialog", - "version": "1.0.10", + "version": "1.0.11", "description": "alibaba lowcode editor variable bind dialog plugin", "files": [ "es", @@ -19,7 +19,7 @@ ], "author": "zude.hzd", "dependencies": { - "@ali/lowcode-editor-core": "^1.0.10", + "@ali/lowcode-editor-core": "^1.0.11", "@alifd/next": "^1.19.16", "react": "^16.8.1", "react-dom": "^16.8.1" diff --git a/packages/plugin-zh-en/CHANGELOG.md b/packages/plugin-zh-en/CHANGELOG.md index c2c819e7a..3b97fbe60 100644 --- a/packages/plugin-zh-en/CHANGELOG.md +++ b/packages/plugin-zh-en/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-plugin-zh-en@1.0.10...@ali/lowcode-plugin-zh-en@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-plugin-zh-en + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-plugin-zh-en@1.0.9...@ali/lowcode-plugin-zh-en@1.0.10) (2020-09-29) diff --git a/packages/plugin-zh-en/package.json b/packages/plugin-zh-en/package.json index 383babf9a..19b56e804 100644 --- a/packages/plugin-zh-en/package.json +++ b/packages/plugin-zh-en/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-plugin-zh-en", - "version": "1.0.10", + "version": "1.0.11", "description": "alibaba lowcode editor zhong english plugin", "files": [ "es", @@ -14,9 +14,9 @@ "test:snapshot": "ava --update-snapshots" }, "dependencies": { - "@ali/lowcode-editor-core": "^1.0.10", - "@ali/lowcode-types": "^1.0.10", - "@ali/lowcode-utils": "^1.0.10", + "@ali/lowcode-editor-core": "^1.0.11", + "@ali/lowcode-types": "^1.0.11", + "@ali/lowcode-utils": "^1.0.11", "react": "^16.8.1", "react-dom": "^16.8.1" }, diff --git a/packages/rax-provider/CHANGELOG.md b/packages/rax-provider/CHANGELOG.md index ab07b7540..fd0d16633 100644 --- a/packages/rax-provider/CHANGELOG.md +++ b/packages/rax-provider/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-rax-provider@1.0.10...@ali/lowcode-rax-provider@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-rax-provider + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-rax-provider@1.0.9...@ali/lowcode-rax-provider@1.0.10) (2020-09-29) diff --git a/packages/rax-provider/package.json b/packages/rax-provider/package.json index dfd0d6e11..9a3a18be3 100644 --- a/packages/rax-provider/package.json +++ b/packages/rax-provider/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-rax-provider", - "version": "1.0.10", + "version": "1.0.11", "description": "Rax Provider for Runtime", "files": [ "es", @@ -18,7 +18,7 @@ }, "license": "MIT", "dependencies": { - "@ali/lowcode-runtime": "^1.0.12", + "@ali/lowcode-runtime": "^1.0.13", "driver-universal": "^3.1.3", "history": "^4.10.1", "rax-use-router": "^3.0.0" diff --git a/packages/rax-render/CHANGELOG.md b/packages/rax-render/CHANGELOG.md index 2c45324bc..5e5694000 100644 --- a/packages/rax-render/CHANGELOG.md +++ b/packages/rax-render/CHANGELOG.md @@ -3,7 +3,15 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. - + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-rax-renderer@1.0.10...@ali/lowcode-rax-renderer@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-rax-renderer + + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-rax-renderer@1.0.9...@ali/lowcode-rax-renderer@1.0.10) (2020-09-29) @@ -11,7 +19,7 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline **Note:** Version bump only for package @ali/lowcode-rax-renderer - + ## [1.0.9](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-rax-renderer@1.0.8...@ali/lowcode-rax-renderer@1.0.9) (2020-09-28) diff --git a/packages/rax-render/package.json b/packages/rax-render/package.json index bc27457a5..7de2e6d90 100644 --- a/packages/rax-render/package.json +++ b/packages/rax-render/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-rax-renderer", - "version": "1.0.10", + "version": "1.0.11", "description": "Rax renderer for Ali lowCode engine", "main": "lib/index.js", "module": "lib/index.js", @@ -36,7 +36,7 @@ "@ali/b3-one": "^0.0.17", "@ali/bzb-request": "2.6.1", "@ali/lib-mtop": "^2.5.1", - "@ali/lowcode-utils": "^1.0.10", + "@ali/lowcode-utils": "^1.0.11", "classnames": "^2.2.6", "debug": "^4.1.1", "events": "^3.0.0", diff --git a/packages/rax-simulator-renderer/CHANGELOG.md b/packages/rax-simulator-renderer/CHANGELOG.md index ec2f3fa0a..3ca249898 100644 --- a/packages/rax-simulator-renderer/CHANGELOG.md +++ b/packages/rax-simulator-renderer/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-rax-simulator-renderer@1.0.10...@ali/lowcode-rax-simulator-renderer@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-rax-simulator-renderer + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-rax-simulator-renderer@1.0.9...@ali/lowcode-rax-simulator-renderer@1.0.10) (2020-09-29) diff --git a/packages/rax-simulator-renderer/package.json b/packages/rax-simulator-renderer/package.json index 216f2a82f..ed41b3b7f 100644 --- a/packages/rax-simulator-renderer/package.json +++ b/packages/rax-simulator-renderer/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-rax-simulator-renderer", - "version": "1.0.10", + "version": "1.0.11", "description": "rax simulator renderer for alibaba lowcode designer", "main": "lib/index.js", "module": "es/index.js", @@ -13,10 +13,10 @@ "test:snapshot": "ava --update-snapshots" }, "dependencies": { - "@ali/lowcode-designer": "^1.0.10", - "@ali/lowcode-rax-renderer": "^1.0.10", - "@ali/lowcode-types": "^1.0.10", - "@ali/lowcode-utils": "^1.0.10", + "@ali/lowcode-designer": "^1.0.11", + "@ali/lowcode-rax-renderer": "^1.0.11", + "@ali/lowcode-types": "^1.0.11", + "@ali/lowcode-utils": "^1.0.11", "@ali/recore-rax": "^1.2.4", "@ali/vu-css-style": "^1.0.2", "@recore/obx": "^1.0.8", @@ -55,5 +55,5 @@ "publishConfig": { "registry": "https://registry.npm.alibaba-inc.com" }, - "homepage": "https://unpkg.alibaba-inc.com/@ali/lowcode-rax-simulator-renderer@1.0.9/build/index.html" + "homepage": "https://unpkg.alibaba-inc.com/@ali/lowcode-rax-simulator-renderer@1.0.10/build/index.html" } diff --git a/packages/react-provider/CHANGELOG.md b/packages/react-provider/CHANGELOG.md index 5b3c2a7ec..64a9f090c 100644 --- a/packages/react-provider/CHANGELOG.md +++ b/packages/react-provider/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.13](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-react-provider@1.0.12...@ali/lowcode-react-provider@1.0.13) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-react-provider + ## [1.0.12](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-react-provider@1.0.11...@ali/lowcode-react-provider@1.0.12) (2020-09-29) diff --git a/packages/react-provider/package.json b/packages/react-provider/package.json index 2f0306b9e..0b6a05523 100644 --- a/packages/react-provider/package.json +++ b/packages/react-provider/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-react-provider", - "version": "1.0.12", + "version": "1.0.13", "description": "React Provider for Runtime", "files": [ "es", @@ -25,8 +25,8 @@ }, "license": "MIT", "dependencies": { - "@ali/lowcode-runtime": "^1.0.12", - "@ali/lowcode-utils": "^1.0.10", + "@ali/lowcode-runtime": "^1.0.13", + "@ali/lowcode-utils": "^1.0.11", "@recore/router": "^1.0.11", "react": "^16", "react-dom": "^16" diff --git a/packages/react-renderer/CHANGELOG.md b/packages/react-renderer/CHANGELOG.md index ab235de91..0b0cdd410 100644 --- a/packages/react-renderer/CHANGELOG.md +++ b/packages/react-renderer/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-react-renderer@1.0.10...@ali/lowcode-react-renderer@1.0.11) (2020-10-19) + + +### Features + +* **version:** 发布版本1.0.9 ([eb00490](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/commit/eb00490)) + + + + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-react-renderer@1.0.9...@ali/lowcode-react-renderer@1.0.10) (2020-09-29) diff --git a/packages/react-renderer/package.json b/packages/react-renderer/package.json index b66e28a27..36328b788 100644 --- a/packages/react-renderer/package.json +++ b/packages/react-renderer/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-react-renderer", - "version": "1.0.10", + "version": "1.0.11", "description": "react renderer for ali lowcode engine", "main": "lib/index.js", "module": "es/index.js", diff --git a/packages/react-simulator-renderer/CHANGELOG.md b/packages/react-simulator-renderer/CHANGELOG.md index 554eab793..a7c9c8ad4 100644 --- a/packages/react-simulator-renderer/CHANGELOG.md +++ b/packages/react-simulator-renderer/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-react-simulator-renderer@1.0.10...@ali/lowcode-react-simulator-renderer@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-react-simulator-renderer + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-react-simulator-renderer@1.0.9...@ali/lowcode-react-simulator-renderer@1.0.10) (2020-09-29) diff --git a/packages/react-simulator-renderer/package.json b/packages/react-simulator-renderer/package.json index 70325a94f..b77342ba1 100644 --- a/packages/react-simulator-renderer/package.json +++ b/packages/react-simulator-renderer/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-react-simulator-renderer", - "version": "1.0.10", + "version": "1.0.11", "description": "react simulator renderer for alibaba lowcode designer", "main": "lib/index.js", "module": "es/index.js", @@ -16,10 +16,10 @@ "build": "build-scripts build --skip-demo" }, "dependencies": { - "@ali/lowcode-designer": "^1.0.10", - "@ali/lowcode-react-renderer": "^1.0.10", - "@ali/lowcode-types": "^1.0.10", - "@ali/lowcode-utils": "^1.0.10", + "@ali/lowcode-designer": "^1.0.11", + "@ali/lowcode-react-renderer": "^1.0.11", + "@ali/lowcode-types": "^1.0.11", + "@ali/lowcode-utils": "^1.0.11", "@ali/vu-css-style": "^1.0.2", "@recore/obx": "^1.0.8", "@recore/obx-react": "^1.0.7", diff --git a/packages/runtime/CHANGELOG.md b/packages/runtime/CHANGELOG.md index f2b6cae21..ab207a48f 100644 --- a/packages/runtime/CHANGELOG.md +++ b/packages/runtime/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.13](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-runtime@1.0.12...@ali/lowcode-runtime@1.0.13) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-runtime + ## [1.0.12](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-runtime@1.0.11...@ali/lowcode-runtime@1.0.12) (2020-09-29) diff --git a/packages/runtime/package.json b/packages/runtime/package.json index d91bdad2c..e25568a49 100644 --- a/packages/runtime/package.json +++ b/packages/runtime/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-runtime", - "version": "1.0.12", + "version": "1.0.13", "description": "Runtime for Ali lowCode engine", "files": [ "es", diff --git a/packages/types/CHANGELOG.md b/packages/types/CHANGELOG.md index 2d1389da0..a91df5d88 100644 --- a/packages/types/CHANGELOG.md +++ b/packages/types/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-types@1.0.10...@ali/lowcode-types@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-types + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-types@1.0.9...@ali/lowcode-types@1.0.10) (2020-09-29) diff --git a/packages/types/package.json b/packages/types/package.json index dd5e538b5..f1a527e08 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-types", - "version": "1.0.10", + "version": "1.0.11", "description": "Types for Ali lowCode engine", "files": [ "es", diff --git a/packages/utils/CHANGELOG.md b/packages/utils/CHANGELOG.md index a0c28217e..6d523013c 100644 --- a/packages/utils/CHANGELOG.md +++ b/packages/utils/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. + +## [1.0.11](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-utils@1.0.10...@ali/lowcode-utils@1.0.11) (2020-10-19) + + + + +**Note:** Version bump only for package @ali/lowcode-utils + ## [1.0.10](https://gitlab.alibaba-inc.com/ali-lowcode/ali-lowcode-engine/compare/@ali/lowcode-utils@1.0.9...@ali/lowcode-utils@1.0.10) (2020-09-29) diff --git a/packages/utils/package.json b/packages/utils/package.json index 272fd8679..2d33648dd 100644 --- a/packages/utils/package.json +++ b/packages/utils/package.json @@ -1,6 +1,6 @@ { "name": "@ali/lowcode-utils", - "version": "1.0.10", + "version": "1.0.11", "description": "Utils for Ali lowCode engine", "files": [ "es", @@ -14,7 +14,7 @@ "test:snapshot": "ava --update-snapshots" }, "dependencies": { - "@ali/lowcode-types": "^1.0.10", + "@ali/lowcode-types": "^1.0.11", "@alifd/next": "^1.19.16", "react": "^16" },

AxUSfSFe}LGPBFLSjh>cl{rHjWNM@@ff;a*^ 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 literal 289489 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%0AH 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≷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 z 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 ND!b;DGQ}#T|+lcXxLyF1!04?&rDx zkG%4IT-T4xWHU)lPBN28<_N0^zf-m~w0APMbAIQ_iu~*eFYjK~5HbdNz7$!7=kCxc zX*kl8zy6*tF1^xF*;=?cGsG5^T~zGDxu(LCm6MiP+XGqE`O z$zcE$6$eKd3kwJ5x~8%thux`I5>#^m7a-c%PIcObwg`Fc_;K9o&Fpw)JuIQ`cx2uS zj_{b7;ujI1AkYMyY^m~vH3;pV$^~RetEK7h{frmB722^7LkUC?`?DZlCcmBb;KT$I z#e}qfdYh<-H#CZ%JBs)mGf2@Lk1ggi&TI(r?_Unyfu#0?*NXKq?Vp}y76eke6A+&v zEcbj$0bweG(4{n@ZDzw6(|fP$zwmS8aN=i*c(|{saW&D)8TmS;jx#2#@as_esV16Ys;3U$4n;{%P_+@1vxjeTu_fkN z`A+204*jq!8FyATN;Cy=s96Z+_cV?%mi5rfxdB|#Cm>sjqZWTi2`I!^+Cx9Y`bZS_ z2uf6?zb$4LnAFJC)QeP2#hIL4XJ;s?ke*NmxRK%t>8iN52l7>wK%wFSfGc_=3M;70 z)zpm=^O6D1>M=X-t#+L0d!VUlHJ~ZtM?%#|W~?M1XzC7V%KAG%1X)^Jq%uDij|Joi zA1e=is~u#j3>5c#)GR$aBG4Y&Cm{Pd&Wf267Ih!mX)(MCa0DT%G$_B)cfP&(WKS?))G&D}GKKq=6)b(Ppo!5BE zy^^Q#0tNXs3DJgef@xnI)p-+K{0rk#P`_gAd)o zprIf`Cf9YDMbT`$`XLYD33yJcA3FHXfOUEUqqX~lc1CgnF5?5|?5gfHr(APN@8PKD zn7)9Et+Ww%wVot-%-SAhEUDU?wT3B*^=ss{Ixk4@HE~LR< zj)%WyQt{V0m}KF^y5BiMFOzKVA^xDPmD;S1H2-Mi>FJ#U1*@^@{i) zla5HJ+9C0&m{5dW?jF3N6;9Jdxxt5hwbm>lbMYY|`s!io8lIA3!X3p&3uUcaGY=4E zwz?x7z0MLJv_9-G;TNA%M+rjMg@xt8HGSY3U}^)l)-K)p8czHoh_00!T;>k8)|FE6 zw%49GdTlI7;ydU3x&F$E=-?+tQQp>WJA0o*i41iP=*j;5HFX|op3!UhbqRjatr>PG z;VyFvai|9|*4Zo8Qz~1Cv9=r>!w0U`)f^^CX+RjY>V@ya0o~cV=X#e%Cz}$+F&oKN z4>`&zJJD~*X#ezF05kknBbqs8LVg0C*Xmbs#SdGO@p3OyCmAjB)-x%$XJc?V3vp3qoiH zJ5*x-{)A>5$v4={%o2AA^x`a|<{JGDmKHJ>C1bzWar9a%8*fmT9XfMx&rEIlGHL@& z+HLDWf)HiDXwOf7#qTYss^WF>8NNxA0}SHDCFf^k2)$Jpd{NTjNj$EmM^6lNL?{{ZLABVK-l!)=Rp5*SWNUXH&66&~} zA|n{Rd2>o9-K(J8N-Ac_B^zv!s;%d*BDi#4F$U+ zHF)JlEP|&q7j5|`Ssw>EAD+~45j@v|po3Q?FZ@bQ+9Fb>xC6atuW@JIS9h=0u|o&A z5AH@NO_{FN>5;FENX(zL`KH1WFQL6yY_GIWasGT_{G2L!|3uD@*$0lVDM!4muuN{Y3? zAJQoHj@kfin#?LD&#$Nze$urlVS{xLvgVHWx?&<{FRSz$OiF(HA1dn3M+nSpw|w7Qshk7!KnVFEy4i>blsy; zRPm1Va<|35cHU)?^@3-gkP6G92(~LeL`cx$^=kzI4>x^HDk_V#y~?KZ3l+b!KKa$e z1zdKejStjvhBm$Wq_wAV-RW85JLIaL$W5n5NOEwsJJ>MhB(WAb1{MqAK@1Ks&pxcc-N45X-<Z@Ck6+aM&!Tyk`$%!|7Epgdt$+esZl~7yMT{NEfnU_lr8WV#@qw>( zMRc(muS+aS^o=bhM@?S!RCBvd7RnnC}$7 zcrUBu1Wpek#t403-HGXqzQHXA54eM&hFFAs3F)Po4ORXX&g_&Vff*i8j&JcHP;Gvu(mhx z!IlmPA~Y|Ih_(%^(jOlet_^lvg+;ZG619L(P7J#FQeiEZ(5eugK*RzV(+=vL0k@#H z`h<}DicnQxMuZ z_2TlzT{y1$fq)zw+XpVyCEL#F9dK{&w_;EbD1Tz5?>BZGO-_wF;DDrl`XpD-fP~ci zE^GAKFD>QWU?-Dzpf)Yh$Sq;{o*!UEX+S<8f&&Mnm36m-v>$u$v{pYt@H_?b>k4Ac z`iPIp98gj~wNv&GlHFhsp1y4D^09%l+BU-UCT7dmf-5vaB4?u+CaOo6?_kFh4RCQQ zly+lAQDk|!nF~MR6}TWMTG0;SUV!|R>#*D?@r(YJ%*8?adM8(8kNOWDWL?YEb6gw@%#EgPcN6AI}jhZCTV!x9s zZvS?DsG}YN5aCUA1Lc~+qYL& zLv{^gK`(`d=sS3**{O99R1P_m-OYc;^kB9dfiuCCV)No(qgcAlch3A$Y*)~2WUna@ zzm>@ZgB0^Z$ga|kaI~vRIR`+d2ZvT~Stp|kiCG4EjPZDW8;9Sdc63ruP#khC4beK+wZe2%4Dn?yxVtBvY-5dDmeh8c*AhizN84JKmR zw-qV;54kqHYE2idql^aY?UPehF|X1Ne)Di{-xUT7PIbGf$VLd%6%*E)YMYfA4c4ac zF34~HR&-sg%p0l!Z3UpQn#{Q7ovwzEQS;fVquUJCZSnV}*f|I(ca0j{D|lY=6UMh5 zzKdsC95$}qI5Mug<=o~qX*C+0lKW<5#w2ys{LIhHss{&;yC))?p6!@~pK{W;?bWrO zfl)^lv2jOt!mB#;NYomusOZ_$N+3bV8d`3|+EH-XR}7KRPakEU&S~!hM#qTTM(yndK5l;ZpTt$o;Mh{E1!2>pd0UOs)ivQ*SMPS$sb0=) zuRWv3XB_Z8dZ3-68tcgsl5~!cYT7gi761qNxWjTU@D=hrgXlQ2NV^E;u*DUD}vSs6yv*ONfV=oCTM zborX|+mXP=Nzz=3L-!UM>jqaqK=6WB&wcVj%9#=3w+fm2Ps;9_pYDfT?~w_spf-U< zgVS@vcGWF)<2}aLWzG?OjkPBe(BsClh;cd$mw{YN<6`#NDO(~W+Q52^5cy#k) z7~RTRfT+|ZVvhIzr3B)FL#16w4QLLX*rf7S!QZtxypm(C_pv%%goSf9^wR0Ml!F47 zD3Cf6zar#NqdU!7?kWfv$C_k1UQg#7ffW?eisc^fnR2(7+bgoxQl8nU6O^oKjumiU z6iDBUuWfmeY_7+c=5e_+lUTfc^VYC8xJ3k5F6IG7vUT>?t09W6-ZdTpkqt~PF%7tD z;{B}?#I0jJ&NH^o5qpirb_l8d9RWvPbvhTygjL6HrvOhe=_5H?Q>$KQt@Cx1w?fzWKN&Qd} zAbZn50ug`lasldd2&vuHF-|iYY>*t8HE^o$iz5A{Suxb(+~$<9=gQjsBD!|R8PB#3 zv{bb~Y}8l=Jc&qRbi;yOtGos0_5$w^FbmS#OyGiyTi)ig z9(3PC>rHVO)1$7kD44_M81%*RHMi<`FXR;Qs_BYV0*&K5-JtC@>ShplV|>58GtTup zD^`q8=2ESzGNM45bq{^>w=j=(c|tb9qjzks!*G@YDD{Fta%3Oc(iVQa%bAf??T$9> z%3P{V_YxZG0${Pv4fu`+*jyJvkymHPN~7o6;Hn)2p9IT+OB&tqMf3F4*6< z9(%4#Tc_po^;m~rMj@j|R$RX>SG}H3afG)-fwnqYjQo$>yP4V`$WP z&zd>4hdXa))L4G(227#LSHy)Kk_U(J4Z4c*BnE^Q*_3i`YKmR?zHQ zxli$3QYp_2-!8tB>yZ(sm}u~9Rh}79^`*+@yYu&p!H`+IG8;CVK^JfypgUE+S)oHk zVd&>RmobsIQ9_%5u2J5$I@$TK)5&SNc=Z!9=x(iI3=0R=WZf>FHk++|7s&JhzOi-5 z6*Zf38jQxe*5UJKeT^J&87d8 zVsDC7>{WV=$dN~K#qzXsIrnd8-KpXjft~w5Ai{HEpFz;J)sB*&tyP&=G+&R-k$%5G z^g_xp3gS20wHXn}kvp`(+Nvy3fxAa1{5Ck%Nc>yJ5#N@Z{A|h}Tf}dbP@#?^=ke)a zJ9*w7XWjXpRPf<#cQ3?d$hA0NaC(WEJJl}|EfV$E7_DXl0h(N@S;xDDU&XY@#Jw1` zGJxyT-=o9D^IPZj?fkh64)a2)<<>+LNR>}N1R=8)G}Dd7s;+KQcIAWfhfn*w)O{O% z;H{excCn2FWx*_Vcy_J0R&tr;?>G*nva3^nwf8v_=>y9T7Lv1+0IDR?jm2qe&PW$} zYl}o$MRNF!)vFuq{4)%Wk+bKR4)RV9Z{|0enBN(L)Qs3%DX{X--ur%Jg83hK_!1SR z*O4el9l7sgj^ej~Fsv!OI6U{T zZ!~A&5B_u7@!I{>5tG))rRtH67se=}(a$#$vBCW-=G(kVd^2%JulB+O@k3Z5I+{|x zyeRo4e)s_)YJ=h7H1e{3aNc2wdKHb{+lu7|%>Cx)z4lO+X&QJm1B0haN91uJ+%AN1 zCOgC3adgM<0$3jSik}kXzpbVSqXIum+Ti~4NnpXi{k=BZkHALE1~e+u7ve^&f?eb# zAEj$AWAXN)n&U%SZk|#xJ17|<<>`$Rd6dF_KRVhizdJm zKfh=fE$PfY;gDGV!RJ`G(6!i3f!#6)i!3UL-gZY_T1Cg|0KJVrBg56LCDARibuJFk zh~D_E?CXifBW4_B>YVQkagusx`fA$XwP0^H(E&x~H1QbEXN4`ZG=`Um2TF(J9L!D+N^ zfjGS(45_iOB0`IAw_TL$Sk@g(L|t^=0mV0{em{Pz24u6-Lzq&tQ5(OHs2(W7@(8y+ zko$vB)6O`M;az3-@umsG@{Lu^44@W_&jzA~{Oce@nV-0YvjLsl_wkn@I_cFE{nYCc z^?Dn3!F8u3)A|z;1=KrRLgRd0-k;|rn@xOjlAR^A$7{)9Y<~ zx;PsteC4{RuvK_0qtN)NMTAaWl1mRq1d#*P{vnV%AL>~glI)LI%_yL zBUI!*c+`c0&i8W)V|pi*POmQhF&m-#ciy)@sJu_Kqp6j-QjbM1ddy3@6gSsy5mU#~ zCn9@>l2e9HJD;G4u&=YAo>v@xxkMU15RZ}VGEEOS7b&CL4F;ieP~7MV`I~f=^iUsm z2&Z>&)rYN|?uZ;<>P$y||DA;(;=nG3VfqeL=%KL1Z|r2v*3TgeMPc$z#tHogpAr_i z*1IRlKM7V=+x1f^w)UbXf8J5JzGUxa*nJ^{@{2{30&RkYbRZ_;=;oP(!_#C3tZM`B z!9m5R9HU63qa*^D|2_4?tsf%zqD$4+Gi|9zu-2^YStkR8mW5e|J1wc+zO7*xyHNl~ z$jb-qd?L|vf6AOq?D?HE=-r!*)2D(R;F5M+?42W&I-L>Bu|;mhI>p6$tsSE!0d3Y*j6x!h;m` zxYW3+pU|1tRh`B3Q96LN@WvEOrnau^9R%h6Qhr9^+y0!JkB>ll-D6T*x!GU-pW~fg zYQ`tawO}DS*rVnh{evk2_X|_%-0;j$Z4YAC;IC(ly$Csmq)}@!o2$665834M2yQB( za_m9qyx;NeC|*#2o+`88$yA_e$3{_b2g}q)HHnp&HGJTb2`G+le|dREz1)qE?lv{( zSZM(-Rea!)h;byVqUt z;RWu*;7yWkPomH}Qv_TC9?o~D_x33I57>Ae&ppYWwVFPg!0`1F(f|rM^$SJ(X!pVPHzi{9SF0?;X_e(iK_R|Ioka2;?Y`Qzp}Q zPZ@q<^2L1FxIq?5s3h4VY>Zu|UPq%(aAmC)!^bsHw-}NfYK%>4lpR!fRN|5ZG$Ix% z;=1f2gwDdGD5Ch{Yr2E9MgooIOS^AEH2j%Qv80n+Seqk0SEi21jYXC{P=fOe(2@-P zQw?nWX89jAfYcGcJNjqF(iz zr*#gbfyHqq?rJq8J~m6cR+wW?1VC>G9I)Hery^QgY%jz|EDtfJN}@-F-M-$5vI~>S z{<2K(Ae~~D*ew~6p4v}0F-IYF{=j@uZtFA2)CdW}z>JDMC1Bd%VJ;KbONCrb5lWv5B9QB8Z{+fB0acJ-1vvc>PXDJO<%wdqT^tvVA&J@#2T1lBiW1jPjzgm zlzsZag4R4b^sGXNb+#4plNaaP-Zle%pyiJo*}n=^vZ&nJy(fS0lJovfN6b5!yILOtwzx zs~)8i-Q*`~U@I`R+d2_h)+Gi1bR^JJx zY?caiyf8PSh4G^_WIJRTtqpuO^_?a3q`G*CI!_8FWAZhcHox8?U3$u$-RhuOTk>_+Z<1Ed!S2BUW=nlshE$ zGUSht2AJbVT`1B=e!=dS+#K6|%@wAiCN30?d-Ae&e_5BZic8Fay(sR;kh$5gaN5bP zzELEfH1jA8F}JRdSRvmczR8tDE2+9A1d1|t3oeS^=1o$_%5g{(X7h#hs(?)mG1bUk z@;N-AallkRWgzM3PRr;0x2yMk8-exIM$BFe5SkQs#7aWeY=jQyL_~e5ZI_9E2m!)> zZ9Yi2Vi5E38sf6~oAs(ma?5QKm@&ps?7-yHtL(l$ifsLLE|3zHR-Wt8|Bu~=*3avI zXhIobwwrr)8VYe%s-z9{+}xtj&q=CGcihI8HAYN&*1&s3ErIYr38 zT4d|TGt2LoTG;}gdNo2Pi2NVrW=F!y|AxrgNf7r}r_`oVq&vIdxCNHM0LJOh8$raW?7G|pR-X>@bTEX{j(0_%Xl+sHs5-<=*>HfiI}jHQ!|<&Oo)qwcbT|Z)aU;+7rWL1 zarjG;Y8Vx`5@&q$E^EiQWV+SmXM5sG`y$|NL%L~0hH-}%JNB<;9Pon5jPXedqJqrl zRL`|CZJk?1oyEDgjnK=o-MNN#lXk_`*Tulz|A+nCQi(*33RlrTR{DVpjR<-~_m3G4 z$b2DTVy_+;ZJm;79oe^Aq~3W44Kwi*;<9<<@V_ZU54Qu%lkrIR=a|~|B+&_3%bk6z z!Lb7D6oTc14h>>ml!nB$RuLEm(Gw{%1K&I=;*++Sv_20z6QGVd~+ zCrmYySd!hwiVbmo$a!!Ua&>ueV_~|kD9RU4|9At(qv2m8*-b*!qiMWhw%Be|f4O}Z z{@*il&B)tdZgy(HQ+zAj+{`&91ak8d=k9a@GwRldo$b%qh&dPN-X0szo`A~%y{9#O zs^Ifm^RH^=(f@W_p%Jcf*lw6E#_8LW(K^lMsmTTD73IFK%I|pGsUku-*pMfO3g+a% zj%PGs&3zeUfBT&Or#;Uq=P~3|o4=*=|KUIVrNVsq=Ps-Ca=$dH(kqCXREtsK8VWhy zS*TeA+9uNDpc-5hgrxq{l1d$gUW=c)t%tp6;$=MLdr3GR0q`=4yY3ECU)n3xd?~7M_4(Xl^FQx^3<`7am}Zt_~J((MReb%M2eR5m>!B#%Wr5ueARh)IU`JD7IR6Pp<4qf`6w#qEdBzQ z{CP5>h4^i=Z9--l^)%8y{pT^Pr%2-1JrpEPKVMkIh6!*-RQ>K5sSoJ2e+@Q68*gqa zOB3cGw}deKI0d1tYQ>l$WH__YYJpiKKKxIpm&MP^F}{N+68WzLuWpFcKRF_)pOK|P z?)RceBnL4>4H%buttr7AoahyTo_0%PZdeuQ>YsR1pr~Xw?=+k)o;E^emL+BB1$)WT z+uiDeR?d*bMBHH?|EK={ODLI0gOdo=9E`_NkUsaJT zeO%gY4t0NJXN1hTLCB9Z5n&r(>%3KrzJp{Qrat=07yq+ih&WN6p}+C;MF3h7{ubbJW*nw-^v zIG4Pk^&S2MIY(7naT@eIEmW!#k2~yjeMDM4q7n8%G;+Zgar3~d-Owj5D3CWWqyJvu zQI(lunYOrQp*L^+vSE^CMi;;NT>V>LM{HS(0Tbz3<3RIjYN(O}^N0nT)R4ya>jC!=JUX;Q&=NwYCroo=_#}wztwT!Ctp?|qr|5tSg)}voZFr4& zE5BDUIt3%2V2s))Ne#1#OS6%H|4<_)HpLI@R0<5`m@vDQu?T~5UpeF!nJEa$ ze;@RD&v=UJ?;Zp_p7R|@Ur_EN2*s(7Fu)-_VnJoNc;I3(E)j7mEN~AiGEIZ?iF# zw0Dm1m|RU!+#U_dzJ*&dW<&dvS3!!grUz}Ilbn>4D)#~+ff6YnDH!2rI@KQb8>1m) z?M80{_h1+r2^OdJ6Ql4oK5&T$BvD9@9&y@tMm83>9dkC%A*zv_5SP>Du)K?F?;BcG znOs#F?4$e40ots~8*_B*xAVY&*+-Jw6oGSJw zO;dVeD$`0U$3}D)Njc)G*o(+UHGD?_ejJ>nTFN7%b~&V3Su|nRS9JW1s@T&hsbv4W z%0#tkI7yY5Pg_?t^&lZHwSze^Puq85i(>23?a;RLd4n0nb9pA>9?@^)&icQvvfgBu z&BjDChNeJcDZw)maUl$(QsmOZv7*iV5^peBCFH&mb0O+aU@Vc!I#si(4Ok2l4ea}X zB-BoNh%^PF8!A0*cKY|lh7zZ=In?`aI&|oac081Nn1_@HW}{U1t&q{9C!uQ;656Y& zw-cm-BbC2G&yBxC55~W2WmCYd@A1|I?)55v#cvNhv&&?D{m|*HxjGJnQ0@Nwa21;J zvQnW$_xmvxJ2SnU%X5az4-*1yw?L?I>`H`6D%E)!L!xQn!?r`NCU4tq{y1a&N=a3W zspjQd2>U=G9zpJ2wjL06>TyX9VQ1Ln62KcPNm)58V;4A2JE0%iIZxA0G|he3R?XGq zY12G5N>!aaqaP}|9Wu|=eBag}ZlN|}=Ud9&@+Yk>I8JQpY&s9k5dSP#0@o)HSQuifsLDYJi*wLYhS6D6ED-Vxe$q3R%lk>SG71)W;qG z#{iDD;$FbF;=b+;9Qjb3MKfh98*1y<-L{n*%{vb8>gh5aXm|#eKu(Y~dqZ$4qe2;s ziP_X=y@++KVY#9b3?i46X-yrK-g*osx1J>lTWQToNz696j4M-#mEM`f$XEWVm3Xpx zR9?dK^mDJv%HvwT_tRA3-T096U2ZBE=gZ%U+Tt_${#a(=e@@`&SbLkF4p+{cG;!6m z>5IR%>{A{E&;g*wl0)H2o9UlnA&uonuGMjBcGz|UN~)U5pT@0>3)iQAE9I8N#5<>ri(B*t-;G1NDg#>b&)(NGDvWh6NF@HQY0>(X5RQk@l?vQ^}KB zQ^|7i9i2^uu+rN~VWrfc02%<)2`g!NL2@SjAUV!|#HB3y#W`}X1|X$Emuu!U>+xwv zkx3;DKJ=PaXNAV^HqnI?n|Aa_F6H6 zi42@>>92^Fi;Dx?in&T# zsWg+NVe2FpHrrU2^JVe_-0Ce&%{urVdi+CvqVkNvH10ruu3c>6z!EvbPGV8nBHK^# zBXSC`KZUa)+#+%^ZZDSJ%%rG9(XyyfeB@V0H8D}=vt8eHcq_|XCCjn4iJ^C$Aj9kP z^pk?q)76yxmBA?naF^O#0>+cM$S+s^W`FXPI85-B$&`Suhqu0`OM;tU!&8P|{ z>)iV=HAKO699s^Y`Yw+~fXpk&GOt62%4RX_eD*0`1;x~TZBZU+WuNc@=f?Q0_vHGy zg{@-P#q3jcA#sU$cerC>j~Sb_Gkt$>W21qtl81eIl#zOr+5P&M;h6(`zTol@7{3+S z^dVPMMpq?QQ`@ING1X=Ay|l%2%?U0Cqx2Y%9&;qlG_WkDs zn_o|9_}X5aqMIJuHGjU{OcyffTPb@U*H(;3=|_S{PvXI zHI{~vvt}@si_F^eC3?jam`lLZyW<(m^Gqs6jQhca=zU->(ztFkUdnKR>ljAY9x~0t zMUl!`yY%Oyb>4 zVRY#L(eMd{{VSeojp64P&-P@KJ_e1X`QF@T&}f;LJ*3IVvV2T9?w9o{276daUs`F5 zoj9^$hFpeT&FL^_#_(ZY$2-!DZ|5wAil!&<#pVE<<2u0MEA*jOU(+>wLF1v~8hw?& ziNJf1u=qiU8{i`42T+|yEgHULdTH5yXM5z10q%;If@{>*Y!kur4?)8hc>#dq0l0Z+ z$>N7P9tN&aOtUQn-aUZJ;s!YM;eJ%-BPYk_M{e>hU({>~fmz3%P{Mv7#I|*)!U)gc zObdob=PpUMRPdV7*(9GU&A%VU(`on%G8Sf;$>YO(%(=Sv{t2$XUeX4k^V1lRF8rFqSjqTEs<4U3|tHdLmEp_la&An>o@_X^0c72=({g;c?< zIT|0M?Xp_&r@GD0Ad8+*+U}H72)5C7v{HnJkThtzmAre`Pb>@s3&Y+hV^E5iDVGF! z>Lr2?JypX%$3@si{i<|5>BUMBxqflr3#e4s*h4(_Mru|LJ~NE6d)HMiY-}eL+h~@9 zuBXdNDME852cJ|Y9$W&g!iK;{lp@ZAWI%aP#_p7JAmiSJPCV;CDS~Wf3hZs#e>}9h zx~8D-s-WlDY)jV^aiHYdFq3=OY%4i;yA)HI<}K3CbQzSOdxc8Jcb%r>YGW%s_svdv zuC$rX#BDn-A>%A5K{s4m$(5`w=kSf4)SSsuT&0(@On=#!4PDds1tr&4b-9PEb~1BY zOG%Z*(C~x|IJ1)LS)1fsE|lEF?GlfUFIqqMkQYX8f_Gn>u+$GQ@(=W0s{#5Z=q1oJ z9XQlixg75LFlzLVkVHhk9;IZ~V=fu8ya(#Q6sUH4H@7-+g_tdn)~$lmwe3N}@9Xh* zaCIX5l0Tx{=^{HEpD2Y8w8@ZdLzx0K;8ED%Rbsj>O}8A3i4#e(?d8~yB|hrNpw%+$ z^^zu_q}yxcvodTjl%KBa7XVEUrI0-jOESUds(-kAGlX@w4?L2z&YEdz#?LY*!)`Mt zrN;#d6HC057|@TUN+;nWmfdjl!o)s5$K$a`n2~c`WB`n;<%!FXx@tXJuV>uP|e?N9q#ex9d^lZBy& z+3Z>ApZnqJSl@m;Qqt#rC*=5%Nur(%Lo}oVs;QRb`3!O#u@=A&zJ=^r&Ayty&82b_ z$RJd)WPy~iPOl3?t2cs^dBsy}+VnQfX;M9*3e3iR3btf@(dveM(SC+~3f_i&BV`?N zSqFhsLYc#HS!Dnm02rI~jfk1`MW@LK`|3~%88XFXiQ@5$RqAYtdTo-^XhF%v2ZBz@ z*{1}I8^={nd|c_|ntbthNc&GG;OkmO95P~z7G>-77RUSa79>0L7V@s|xlwhghHS;C zh6Di^0+0eg6DFNXik-+l;}*}3STB{D-z1gl)*zKy4x|F%QmIY2@$AtI)E4qg)E2E8 zgXRt0E?&dtbPlAsh0E(fbaI!tT#6P&b@iIk$}QbK-`S_kO7FTOlMuf?$t@JLl2cFJ zubO6hBy}Ijr2M9_KP6MD7DXdk8wq)LC5a{MQ|eCvFX_^7w)E@RAFX0wGof#V3T%O_ zN<)ExwJQC`KV_fN8doXER?YO2+*^NMz1+E7%>r*ANYP*XD=c!v=$PK35PCqBdnF(v zb>#Nmr23ks3!Y8oc=b98&9?|gN#S@_DG5hQSz2xPV>@y~Lef&Um<6OoX!l;>y&8;g zTA@l~{|ZlKzEZ zPM`^@t9-eos;0(RP|~6v;Wb;J7zJz4yxeCmE-~pFALx%;Vq%clR+Ud0EKg_D^yX>M z%TJ6yaFGXyUm%M!!NDsVPETPpo^%9&L@mCwLoU3?8!tYQ+;QIk;ePQQ{T9CJ)K=M1Zw z8eavwsyPthk^151h2}h{J%|QV%DjUUmG)AZ zmG+tdJOJp840PNIFyHrX?wG(Oee|xP(|01TVBqE%3OSM8)zzlT#-YSAW6i0kL}OJW zhQ1CNtOCZSKM;W6Dk5)kG{Bil+)<0w38SLRRDDfiQ!K3n2B4;vn3G;eF9lMI&v93e&-tnnpF;`I z#;Wl-{6*AKXJt%MuL_x@q)M2Q`%Cs63%ylznG%=v91Bs-;$%$xlXd9XS~iuw?NBB6 z-*Idz5quIMvB{r_kyyBR`^P*@8{k?j`yr)%avs$gddeg=6IT5Y8(V-YRgxjG@tTa2 zSg6+mN@@X|lVu;oW^ewF`9fYT|9sF?lEgv|z@@2blh}|>a?amkIl@1Y@!_mFO!Z{L z!;@vLW-73&^@-_r>v>-`$pYzXmz?jq`_jU71q?5VmDG`WE6T8))pY505nXb>Tg}A# zUlr55Bvw~I=55Htz6kUb_i8h~L*Lpf)c>T6_e*0XE=T;5O6no&=j#xujAcb8F3tGOyEP<$C^rrqoYhna0K-q z6{<1#E8tt;$iGl~5IL%l1?terE+*(v~($u1grUv7;j{H+6*Fam1gyIkNHi zDW~<_rcKBWuZ%PI-yYomNN?N5+j`Kw{h>3=+)R6|!!)#&SuEz{5rSmFgpT=YXp4-z zxPf1ElOs78sT_A-duH``1+B?pR0MTs>~wTmpdb_movk@2RQ;0bl}P z(3UnGsZJPts~n_Dg_$SVobB(IcdRiuK4v|^P^q?+o5TQ11P~Og@`kdx7@+C_* zulx8U;$*d2QjV?-mDKrZY|ibSKeAcb>{C!01wg-E zTrS|hAGvr6IAnQQWq@A3bI#qnJt+^*_q$MH^KFXsPFho?iy|q1d-Ra@13vnLA37A> zNWY<%$Tf$owzXbWN#CCazoUTTU4OML*G%f(;m}O_Ib%#CxO8loG|9cJw*XVPz1Gj8Z>&syzZkM-v&H80(n@7PeVX={ zx}{}fxlV@bZU5BXBT-ZxUmUN`*TCCd7hkNb1rWM6H0m_bSB@_GvwCIn6-Qh9)p;#C z8N=1d#qlzT4ZOF`F~!On072yf5NZG+u=~m0Wnbf;pjFS;C5}u|PcH{-i~sRhpSeeO z17y6!dggvCbCYo~2Ri;#f`R0c>U38Ak7k;@5i~QW|*0$8C~YZ zuo8bAkg2jq-n}s+7Dm$=j;)}DN0)h^o8w;OoVb2=K;MnEq8dh1T8uq1Ri?yGvXtY_ z>l(ivdPLn_m6wJ+5@@T$&r~jRcGJw%jdj+DJ<>mu>&^r)8`DeX9!(t*7DY71DS*dZ zCaIFTzkmZ+QlBPr;1$}byI- z94?Tor zS(zO(j}wJw-?y|$nc+pOmd!z*M?&1L!0ec<0ycbmO|1aOC%p+WIWub^3(tZDG5Q`8 zR^I6OR^IpmI0Ik-Us#G2I(9p z)*b%Q1OCbM06RN-hcP6K_$V&lcI%rDW5d9KvVGg6y5r7@x+7OZ`6g2?fTr@zvg)?Y zGDzE|ZF<`#)11Cz@)2``lb^EV&VAnI@PlbPbUZDtDcnx_cyT38MlY>yGtSIchRMTf zIZkFd5a4#E6_`A1?)s>he`M+Wd2?Tw%zr;6`mgUa+GW=J4%ncKRA=9_5=5a-=t6%1 zXm~2_1rLnX+y0%sy=s1h%ssCpaGM$RWI$;NEhhKRzP|m{MRIQHvi@-91Za|znZg4=|t2JIc(X?23S~7%r;G>l^pOrex}MJ=VACpCWY3&_Hzv_M8?oxg?P4d1R5ZLOL` zcxI;&8cT_p#^jJQODZXP{mdaZ_?ZKqHjonQ0k8}JN){LP3xK8wCC(mz1^{~Pjy)Gh zNo=N$KXv9N{I~jj1vJVIRX=X_ALEg$U)^9pGFCX9&Nh;U)`a$omIreJe-pBh#c7OW z$IX_BP*pepCzhv!|9&^XVrbjj~c$n3{Ljk1|Dqrsl)PWC5YkI^MV8m{uiS^FG_vz{1L&%S0E%|sKy}*1h=7Do@aD&s4EZ> zN@^US9y{;QpE_yl)5(P*&tw=b=J_p>!@sJ~QkzeiQWixAbR;Yej2fRi%)-75$mU6#1tGy;AP+N_PUno4lPycNEBNYxV!hLEjPp^4Qw-Wr!WW)oun|F2pkAI zyOKrNY(dCqHyy#o#cSpAi`RiDFh|Fw2C1?OTuhQOy@uYu078DedQm)zA>Uk>OXbIs zMto4Qoc1-Yca}fifPq_&Tt>)dSCDVy3()=37a-&s@M>q#2!!dD%8!F~j*DR0LlAP$ zE8pCGJ|Sq^XVT7lwbRVL#MZQB%x_1p2S|~t97gsfTYkw|)-^4=quTbehd0j^94<*+ z0cgdLa^0A2pmwK!)#wht9&17INv=`|@I?O#H5g4Xh5@+V3{nQJCK*aw%zX2&ZWW14 zY&}920M}!HvuL&@%G--+i+`rri`A}rYnOTHez3!~FPsl|K>N?vXFOP;EHA0}m_cK~ zTZ8?-cRpo2;FFC{;#fK_A#vwyKm-PCevi17X&)pc&Mho2A=w1Dd&_}4F1>^O+BT6H z4`k4N{kO#xp|Rs2clRYoLQ>wIu7reN;XuDd7B6@2K(V{KF_M=%Y(_*v!Vm%`9Nxpc z+d`U?)ahg2+;<2HLibP7L6SODvbjDdNNHTl+xG-Te_YeKUyW9`$k$Bm=*#5){99Ck zFFKI6E=#*SFkZ5kZDFv`54Mhg!Tavm4##sMvO($_;OhU)rW?H5{F%%-lmSxD5Qh!5 z64(bCS5I>?e7Au?>OL@#00#O#Uow21;r)$FV(LS!T?X!(Ha~?4Gz%|JyXa224cWs# zyU*3d9EZO+QGb4M>Hz|c{o(`%?l%QKop#zyum&%1^ux!L6Mur)RmDtJRK)y&=mdgc zRYgn_o8Tmy#xdZwk546ib-Yc4SziBFZP_o#h9z^hr7`DK{Kr& z9RiSTw1)R#+?5=S-8)X$L4=^Dg$4; zpMZkDDmpM96DO;#gz25U7{>{$mMQM=2}fB=xC$gL?@`}=!EIR?3^l~rNF>R9S#J4T z*_w*OX#NQg?9E=#W{-=G_%g8vO`f=+mOPP>&Qpp?00OvOt9|ob)1??qR}4qX`|w>y0BrEnWF&MFw5aw@=B5b3n0_)63-ZUyD7lPcT0QS z^Og@M^Z~?JaT{1x0U7`Z*>yw%xsQ_4%-emRtwd_@0fsT#kKobhSGpb<EB_3xWY-^YLtYVgm7Fqg78$=WHl0`2{7{cQ7Y7_Hf9XXXN zfpEmD#qyV>JZQuuX-wK?IyG4kt#KNL-07PU@2l2ifq_dNS;;q0&Y9igTi%wV96<0V;OY*Y3jtDhPy#)t15q~p4gyGZ7)2}?~$o}2}PzK z_#+t{1dWyL-WV^2{boy0$Xbsz)Ch8mI`$dA2f}~k(<#H%Ga7%WSE)4p^`v_p#oJ8~ z)r)*@T*Bz+UcyN1)&;$xV06mbj0)ab)vHyO&+>NrSe7ypgMkNY>s2eM&PkRrGhE$i zEgF&J4l&T1MFa@1G*j^Qe4Tn_kE=KUD#~2cRF9v{$?FfN)sS}XQ4z&g<3x(D&I93* zHr|ycQXFyJUWdU&DxZt65uYZw6`%IDTEStV<7V;I)Zu(CKiQKBm-QkH{>iFvp{^{>ki2h6a=BZBRWUs+X z_r4j4eOqg`IX_bi42ZyB_t;qMTX}XVD^h0AROd{rfO=;x^~m(klD5W+e8YG31ej`x`~-WC11WMmKyzg?>9{i z#-m%SiW+@wv|HQa70E~P_e3|Z8;mClSW|{iPxL_(eEDHsmDpv93=TOMrJo+}y&~p@TQ+s z#K}qd#->-TO4Fz%-LjhvHvX{KL8_@VKauDzkDokx{i-rMo}3vVj~6F}l(`OF1tBO& zIvcXw1yc%8waQ_c!wp8?v)#Md>vISFW;!yUb{lVmOUm){jqsASGM>UI+CD z_1gE#_u>*iPXQrX$a$SfQ~jRtP@i)Kg}E{2x+F)vTlEk?dQ4vmooabtd0-7Oq8>HP z&hM8InF;O7o=Rg&-fzan7t8YPcMMcv>(fCZnS3g^#-N{nGFrv+PJaWe-dS%VC0vGk zUeyEohK!Xkm{4B5R`+$cs^szNgkJ4p`KTD4(aL>K6s9@bwfjYMP*TA0i1p^jZN{4B$#B$pGJVezxeZC9Giu(u0swbq;1endD94A?yQIn@L! zJUx<&{n<>W$hVRy7XsRW3%r4}JAd3Oq z-V)Am84+0Crqeu}?N!zEx8L^oef5UiB?*N?vx65gW>+-r4&L>>ZPI|o|9u@=7;2q= zQlsl_*{S(*Nc%^sEEJd8k#t}7j&RnwzSWe!`6~mE>-`YX6tqYUIG_8cep=6nLOjEs zj=iBmUh9g7>SxpI8n$*GDn@C!BCRiDw=7oo92K4mo_-plVE%R(7>m7L{6 zQbqjkSW9N+)eopMvmGVHCB>I$4QqC&v&yno#Y45@cZ643lutJnyK)xBGmm8lRSc>- zB>V1BUskqXsW5-T^AAXguRnW;sG?Ziq1>m>dpOa%M%DYkS>17?Pnw{q-FEmwqP<_m z2CPFr77{ud;8Vt-hgE6VYLQ&d7ZcfUj@A|BIEmNu3~~r{U;8|uLg(@4`lA!i&$7=d zY~HB+4Q{@m_x0bUQw1f5nd_|XAz2`dtr)`^w>YDN8b`pj3RhF_yVmDTv@()_iqqx6aR*#$M_Zi`<#%?WY=j;OHd2WEu6orad?H_aJsqRgKR635{v4Ya$uF2z!g~w*2H-a8~ZB8B` zxkonJk|4I?)V|cG-o7^OIAhii9WmWDLR+rX>|Bcb%$p7v&g}INQ}KMBlEWCv*)4D z3-uYnC4YZ}u7)udxYcMJ-s(L6D2~TOBo!t~2wav`c({0EerXKelpBB~n+eL7xGZ#0rZuJVe03aK zJa^qe|9&mlyh@v|7FI@zW0qH+fYu(ph?P)hKbd;5P-tNG4=h@8>@_(6Az&oby!MH( zhHqMI$_P)ED4$|Ru-6LG+1=vPk;9pWDGL>XknUX`619u{SmWmGPsra(6^N`~!>U+s zHJ171XrzhK`BuB3wd%4UGlT(v(F%l}A4Aqpbg-OC>)<=|*)I@pp zKL3i)XU!*w)>@R1L~$E|4u7*F`m3IUIAKvLu2D@6WT3NcL~=~+)(SyTc z$800hA@I5x)CRI;JP1B^GjrM|?)ROQOUtT54DZ~xeMu~>LTxocPxAlQ1bGa;yaADb z++EjXU27V8PzT-;%;qswONFKS!3MBGQq>o#gP=*8yya`U!XC3jj6afd>uN%760snu z-5a}UxdjM`h-;Sotu6 z5gHe9kut8%U_w`L~G!;7JRdH7SU9^rc~jI$YN0Fxp~hR4Vd| zk>9t}BO&xZm4 zyendj*Q4mHoP8i~N^9`ok1&8Y#tXmQx60cq*7re+$S`cRF z9=h=(I#+KmaUnS#RfIr4Lcgd*+jzdR&7HRL{^YIht=5#`!`awN)PA)(IEY7wdHZVFaA?0mrd=8} z1i$rtgTu?9yuE6HVcNssHY}5hQ)(&)N01H=KW&3n-N#ZG(z`YbdC_8Yj|0h|jR2?> z{}|JN@!azGa{(}j#ByFx!T$0uo$LYX{C&-fS(-(v7q^Qs?4MCDOV`S%BKyaFU48{m z?{=fBD@<5m2|l<7WYor?M7RXB0;I?pFsYY_!XjeIk#jXME=9wZ6!yrgu<7M|%yY3) ze-ba!Pz3p*4RU$7ExIvx-9k-E zs#cWbsQCk%AGTEdtnG_G=?2nC*T~uVh>h<1jRH|d6`}Qh$iwFBXynFt(n?W<>*Q3N zgxWBVqJJu^tqm*k4QwLVYA2SNKPibD8S1k8-dK1}B(hE{9;Jj>xwj(w*}jh!L={g) z^&sH4;mn!&eK7}Yu1~=l8xoG;_R#BVMN~Aty{n~AB&Km#8@IeHP>_V$jf@A04c|4`-KoRM>a`MF4QBb{S>M!SeqjIJxBSbgt z60WIE7&mXq!7aG@Cz$YQpS)P(ArVo;bC?(?g<`h0g<1~beAVz-t+lDB9|-h$G^<8o zMRHXz_C_UmSx~P?N(OEB&<0+V+5Z{zG6n#3YgoafEWhu5IT@J;d~>SD?}%ZRN;p{` zbU+AMThgis{B!epKtB0MP?-n96d?Ehw%h=lhYbXPo2+Z0L(z4PA(kDU%f{M^3aR-~*u2oH(=V#dSKPcFjXp`i95i7^1K1nQ zJy2}GHFOuPYq+ZI0{Q_R+GgF>D3HY?!IHcx9vHaoQRW(9uZgn{qh8$4@}p-^DgW1! zi7*Kb>zDs&A5B%nyMA}d8)lr*KeiMY=0VEuN}$v~MN7Yb z5-3>#K0(C9AuEzC;|D=fD#z`3ua3R18lH+YVPd;^z*zhbX?nVQ?Xzs17qOyL`SW27 z8Ds@(_-B*FYb*CS?+;Mcw6>pNTtBb999#>c>ftY2wP}}I%vOg*n30yVVwlyB);>{1 z@qwMk=$g*MjT=nub6I&n+7Suk*9sqU`sUch{=+}naCGVRg1BM(-RksnpbZrObF4lG zb8%1THveox$YIS15b+7u`V*!enaKJ3C%9rlqr@_<}eCI@6r3$DL6#9kfS3j{89 zjptU@sMDB|j^z!R`?2@`V_aIhLpk4jH)uE2>L3M21;eDaFVdH3IP8fY#tH04UX;nAYDpw(w zazb>oFu4QEk{tCU*JI{COT3&16=xqvnFb77 z@@fgB707<4wjw+CvKAmrfs<^GKt**Z-Os9J5DKU6PJAskLDl&wp#zPsItNbunf&TAnZk6*}>%+BccrCA6Q_6 zg-?+5$4s(BwvWn$tRHu}IZW~BYOe`+ykge$I(xi*d&gfUl^FeHtg&$c03Qc3D`3tH z?)|(}M|N1&@mdYloH%bOUo_=cUVpftP?jCOo#(&zlBO>(-+ukzq@Yaq{ig$0Jf-8t zSB$3#&5PJ>mGN0RTZ{C0K>@QBxu!9=)L46H*&~ww z+4H6UQ(x>SnIA<&RMS6E(Rj=VK zScYM-hBN5`R)kP27E?ydN&$bcXiNCN9(V4)gq=ZARV5MC(G7 z;pyGosGZG4+8lQqk{m3=VbA^RjoEA#&KxVQR-1jqNuCh^7i_QuASFB_=ZXXzC&RtJ zFL&hyji=sw5RY<4#B?H)_L36W8O`R(wJ*UUn#K&9a=>>tSaOhpVF#pFt@IHUc9Y03 z19{s%2`u=p1*+KEcEFMsW+tipLlQPIDC!>K7*dk3b$ffF%q-dfO6m8|^?Oe|`)HZc zO4~xoVS?O$E*D61wV}y(1t;u8oOR3wsYK*Ik?%7cml_TT`1s{twUA5QB7~ zRxiT>k>E?z#R7AnE-Q7F4(rJKE^*ge$IqV#pexudPFc>jPvio@yLLA-wdY5u^hg0+ zs>tN5{dP>5S%`s>SDyq&TP67nZm|A@&393Qk&Aml3mJFk#|OdJ0Pw6cg9Qd~7H8PZ zEa4w4$2Bjg({;ycb9Zg$TE13kIm=L-Pc5dbHMCKoeAm)wX7|g@q|fUK71VwFk=2_~ z1D}GnVDhNI-vBMW^?+A?%0yd>dn1a}uWd=>1pXbP*htt>)IzhN++A?gkaiK(1<&2Q z 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