jamis
Version:
一种支持通过JSON配置方式生成页面的组件库
47 lines (46 loc) • 1.39 kB
TypeScript
import type { RendererProps, SchemaClassName } from 'jamis-core';
import type { BaseSchema, BasicPaginationProps, SchemaCollection } from '../types';
import type { IPaginationStore } from './PaginationStore';
export * from './Pagination.types';
export interface PaginationSchema extends BaseSchema, Partial<BasicPaginationProps> {
type: 'pagination';
}
export interface PaginationProps extends RendererProps, Omit<PaginationSchema, 'type' | 'className'> {
popOverContainer?: any;
}
/**
* 分页容器功能性渲染器
*/
export interface PaginationWrapperSchema extends Omit<PaginationSchema, 'type'> {
/**
* 指定为分页容器功能性渲染器
*/
type: 'pagination-wrapper';
/**
* 输入字段名
*
* @default items
*/
inputName?: string;
/**
* 输出字段名
*
* @default items
*/
outputName?: string;
/**
* 分页显示位置,如果配置为 none 则需要自己在内容区域配置 pagination 组件,否则不显示。
*/
position?: 'top' | 'bottom' | 'none';
/**
* 内容区域
*/
body?: SchemaCollection;
bodyClassName?: SchemaClassName;
}
export interface PaginationWrapProps extends RendererProps, Omit<PaginationWrapperSchema, 'type' | 'className'> {
inputName: string;
outputName: string;
perPage: number;
store: IPaginationStore;
}