drip-table
Version:
A tiny and powerful enterprise-class solution for building tables.
70 lines • 1.51 kB
JavaScript
/**
* This file is part of the drip-table project.
* @link : https://drip-table.jd.com/
* @author : Emil Zhai (root@derzh.com)
* @modifier : Emil Zhai (root@derzh.com)
* @copyright: Copyright (c) 2021 JD Network Technology Co., Ltd.
*/
import React from 'react';
export var createTableState = function createTableState() {
return {
loading: false,
api: null,
tab: 0,
extraData: null,
pendingChanging: false,
pagination: {
current: 1,
total: 0,
pageSize: 10
},
paginationChanged: false,
sorter: {
key: null,
direction: null,
comparer: null
},
sorterChanged: false,
filters: {},
filtersChanged: false,
tableSize: 'default',
checkPassed: true,
selectedRowKeys: [],
displayColumnKeys: [],
layout: 'table'
};
};
export var DripTableContext = /*#__PURE__*/React.createContext({
props: {
schema: {
columns: []
},
dataSource: []
},
info: {
uuid: '',
schema: {
columns: []
},
dataSource: []
},
state: createTableState(),
setState: function setState() {
return void 0;
},
createEvaluator: function createEvaluator() {
return void 0;
},
evaluate: function evaluate() {
return void 0;
},
safeEvaluate: function safeEvaluate() {
return void 0;
},
finalizeString: function finalizeString() {
return '';
}
});
export var useTableContext = function useTableContext() {
return React.useContext(DripTableContext);
};