villianjs-pro 1.0.0 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{ProTable3 → Beyond}/index.d.ts +1 -1
- package/dist/Beyond/index.js +1 -0
- package/dist/Beyond/list.d.ts +5 -0
- package/dist/Beyond/list.js +1 -0
- package/dist/Beyond/styles/index.d.ts +8 -0
- package/dist/Beyond/styles/index.js +1 -0
- package/dist/Beyond/types.d.ts +26 -0
- package/dist/Button/types.d.ts +1 -1
- package/dist/ButtonGroup/styles.js +1 -1
- package/dist/Exports/exports.d.ts +3 -0
- package/dist/Exports/exports.js +1 -0
- package/dist/Exports/index.d.ts +2 -0
- package/dist/Exports/index.js +1 -0
- package/dist/Exports/types.d.ts +61 -0
- package/dist/List/index.d.ts +8 -0
- package/dist/List/index.js +1 -0
- package/dist/List/list-container.d.ts +37 -0
- package/dist/List/list-container.js +1 -0
- package/dist/ProTable/components/Container.d.ts +27 -0
- package/dist/ProTable/components/Container.js +1 -0
- package/dist/ProTable/components/form-content.d.ts +34 -0
- package/dist/ProTable/{update/update.js → components/form-content.js} +1 -1
- package/dist/ProTable/components/form-footer.d.ts +32 -0
- package/dist/ProTable/components/form-footer.js +1 -0
- package/dist/ProTable/components/grid-card.d.ts +27 -0
- package/dist/ProTable/components/grid-card.js +1 -0
- package/dist/ProTable/components/grid-view.d.ts +52 -0
- package/dist/ProTable/components/grid-view.js +1 -0
- package/dist/ProTable/components/header-buttons-wrapper.d.ts +10 -0
- package/dist/ProTable/components/header-buttons-wrapper.js +1 -0
- package/dist/ProTable/components/list/index.d.ts +19 -0
- package/dist/ProTable/components/list/index.js +1 -0
- package/dist/ProTable/components/operation-container.d.ts +39 -0
- package/dist/ProTable/components/operation-container.js +1 -0
- package/dist/ProTable/components/operation-content-router.d.ts +37 -0
- package/dist/ProTable/components/operation-content-router.js +1 -0
- package/dist/ProTable/components/operation-content.d.ts +35 -0
- package/dist/ProTable/components/operation-content.js +1 -0
- package/dist/ProTable/components/row-actions-router.d.ts +8 -0
- package/dist/{ProTable3/hooks/utils.js → ProTable/components/row-actions-router.js} +1 -1
- package/dist/ProTable/components/row-actions.d.ts +59 -0
- package/dist/ProTable/components/row-actions.js +1 -0
- package/dist/ProTable/components/search.d.ts +3 -0
- package/dist/{ProTable2 → ProTable}/components/search.js +1 -1
- package/dist/ProTable/context.d.ts +20 -58
- package/dist/ProTable/context.js +1 -1
- package/dist/ProTable/hooks/usePagination.js +1 -0
- package/dist/ProTable/hooks/useRouterNavigation.d.ts +10 -0
- package/dist/ProTable/hooks/useRouterNavigation.js +1 -0
- package/dist/ProTable/index.d.ts +3 -2
- package/dist/ProTable/index.js +1 -1
- package/dist/ProTable/styles.d.ts +1 -0
- package/dist/ProTable/styles.js +1 -1
- package/dist/ProTable/table.d.ts +2 -3
- package/dist/ProTable/table.js +1 -1
- package/dist/ProTable/types.d.ts +389 -90
- package/dist/ProTable/utils.d.ts +83 -0
- package/dist/ProTable/utils.js +1 -0
- package/dist/TabSelector/TabSelector.d.ts +3 -0
- package/dist/TabSelector/TabSelector.js +1 -0
- package/dist/TabSelector/index.d.ts +2 -0
- package/dist/TabSelector/index.js +1 -0
- package/dist/TabSelector/modal.d.ts +16 -0
- package/dist/TabSelector/modal.js +1 -0
- package/dist/TabSelector/selected-items-display.d.ts +11 -0
- package/dist/TabSelector/selected-items-display.js +1 -0
- package/dist/TabSelector/styles.d.ts +2 -0
- package/dist/TabSelector/styles.js +1 -0
- package/dist/TabSelector/types.d.ts +24 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +1 -1
- package/dist/locale/langs/zh-cn/index.js +1 -1
- package/package.json +30 -17
- package/dist/ProTable/form-footer.d.ts +0 -26
- package/dist/ProTable/form-footer.js +0 -1
- package/dist/ProTable/list.d.ts +0 -5
- package/dist/ProTable/list.js +0 -1
- package/dist/ProTable/update/index.d.ts +0 -1
- package/dist/ProTable/update/index.js +0 -1
- package/dist/ProTable/update/update.d.ts +0 -3
- package/dist/ProTable2/components/search.d.ts +0 -2
- package/dist/ProTable2/index.d.ts +0 -2
- package/dist/ProTable2/index.js +0 -1
- package/dist/ProTable2/styles.d.ts +0 -7
- package/dist/ProTable2/styles.js +0 -1
- package/dist/ProTable2/table.d.ts +0 -2
- package/dist/ProTable2/table.js +0 -1
- package/dist/ProTable2/types.d.ts +0 -23
- package/dist/ProTable3/components/index.d.ts +0 -2
- package/dist/ProTable3/components/index.js +0 -1
- package/dist/ProTable3/components/list/index.d.ts +0 -19
- package/dist/ProTable3/components/list/index.js +0 -1
- package/dist/ProTable3/components/search/index.d.ts +0 -2
- package/dist/ProTable3/components/search/index.js +0 -1
- package/dist/ProTable3/container.d.ts +0 -3
- package/dist/ProTable3/container.js +0 -1
- package/dist/ProTable3/context.d.ts +0 -13
- package/dist/ProTable3/context.js +0 -1
- package/dist/ProTable3/hooks/types.d.ts +0 -72
- package/dist/ProTable3/hooks/useBatchRemoveButton.d.ts +0 -38
- package/dist/ProTable3/hooks/useBatchRemoveButton.js +0 -1
- package/dist/ProTable3/hooks/useCreateButton.d.ts +0 -34
- package/dist/ProTable3/hooks/useCreateButton.js +0 -1
- package/dist/ProTable3/hooks/useExtraButtons.d.ts +0 -26
- package/dist/ProTable3/hooks/useExtraButtons.js +0 -1
- package/dist/ProTable3/hooks/useOptionRender.d.ts +0 -30
- package/dist/ProTable3/hooks/useOptionRender.js +0 -1
- package/dist/ProTable3/hooks/usePagination.js +0 -1
- package/dist/ProTable3/hooks/utils.d.ts +0 -12
- package/dist/ProTable3/index.js +0 -1
- package/dist/ProTable3/styles.d.ts +0 -7
- package/dist/ProTable3/styles.js +0 -1
- package/dist/ProTable3/table.d.ts +0 -2
- package/dist/ProTable3/table.js +0 -1
- package/dist/ProTable3/types.d.ts +0 -106
- /package/dist/{ProTable2 → Beyond}/types.js +0 -0
- /package/dist/{ProTable3/hooks → Exports}/types.js +0 -0
- /package/dist/{ProTable3 → ProTable}/hooks/usePagination.d.ts +0 -0
- /package/dist/{ProTable3 → TabSelector}/types.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function _array_like_to_array(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++)arr2[i]=arr[i];return arr2}function _array_with_holes(arr){if(Array.isArray(arr))return arr}function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _iterable_to_array_limit(arr,i){var _i=arr==null?null:typeof Symbol!=="undefined"&&arr[Symbol.iterator]||arr["@@iterator"];if(_i==null)return;var _arr=[];var _n=true;var _d=false;var _s,_e;try{for(_i=_i.call(arr);!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break}}catch(err){_d=true;_e=err}finally{try{if(!_n&&_i["return"]!=null)_i["return"]()}finally{if(_d)throw _e}}return _arr}function _non_iterable_rest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _sliced_to_array(arr,i){return _array_with_holes(arr)||_iterable_to_array_limit(arr,i)||_unsupported_iterable_to_array(arr,i)||_non_iterable_rest()}function _unsupported_iterable_to_array(o,minLen){if(!o)return;if(typeof o==="string")return _array_like_to_array(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _array_like_to_array(o,minLen)}import{forwardRef,useImperativeHandle,useState,useEffect}from"react";import*as React from"react";import{Modal}from"../Modal";import{Tabs,Badge}from"antd";import{ProTable}from"@ant-design/pro-components";import{Typography}from"../Text";export var SelectorModal=forwardRef(function(param,ref){var _param_tabs=param.tabs,tabs=_param_tabs===void 0?[]:_param_tabs,initialValue=param.initialValue,onConfirm=param.onConfirm,columns=param.columns,_param_rowKey=param.rowKey,rowKey=_param_rowKey===void 0?"id":_param_rowKey,_param_width=param.width,width=_param_width===void 0?"800px":_param_width;var _tabs_;var _useState=_sliced_to_array(useState(false),2),open=_useState[0],setOpen=_useState[1];var _useState1=_sliced_to_array(useState(initialValue),2),selectedData=_useState1[0],setSelectedData=_useState1[1];var _useState2=_sliced_to_array(useState(((_tabs_=tabs[0])===null||_tabs_===void 0?void 0:_tabs_.key)||""),2),activeTab=_useState2[0],setActiveTab=_useState2[1];useEffect(function(){if(open){var _tabs_;setSelectedData(initialValue);setActiveTab(((_tabs_=tabs[0])===null||_tabs_===void 0?void 0:_tabs_.key)||"")}},[open,initialValue,tabs]);var handleSelectionChange=function(tabKey,items){setSelectedData(function(prev){return _object_spread_props(_object_spread({},prev),_define_property({},tabKey,items))})};var handleCancel=function(e){e===null||e===void 0?void 0:e.stopPropagation();e===null||e===void 0?void 0:e.preventDefault();setOpen(false)};var handleConfirm=function(e){e.stopPropagation();e.preventDefault();onConfirm===null||onConfirm===void 0?void 0:onConfirm(selectedData);handleCancel(e)};var getTotalSelectedCount=function(){return Object.values(selectedData).reduce(function(total,items){return total+items.length},0)};var getTabSelectedCount=function(tabKey){var _selectedData_tabKey;return((_selectedData_tabKey=selectedData[tabKey])===null||_selectedData_tabKey===void 0?void 0:_selectedData_tabKey.length)||0};useImperativeHandle(ref,function(){return{open:function(){setOpen(true)},close:function(){return handleCancel()}}});return React.createElement(Modal.CustomModal,{width:width,maxHeight:"80vh",title:React.createElement(Tabs,{activeKey:activeTab,items:tabs,onChange:setActiveTab}),open:open,maskClosable:false,keyboard:false,destroyOnHidden:true,okText:"确认选择 (".concat(getTotalSelectedCount()>0?getTotalSelectedCount():0,")"),onCancel:handleCancel,onOk:handleConfirm,getContainer:false,styles:{body:{padding:0}}},tabs.map(function(tab){return React.createElement(ProTable,{style:{display:activeTab!==tab.key?"none":"block"},cardProps:{bodyStyle:{padding:0}},key:tab.key,columns:columns,dataSource:tab.data,headerTitle:React.createElement(Typography,null,tab.label,React.createElement(Badge,null,getTabSelectedCount(tab.key)," ")),search:false,toolbar:{search:(tab===null||tab===void 0?void 0:tab.onSearch)?{onSearch:tab===null||tab===void 0?void 0:tab.onSearch,placeholder:"请输入关键字"}:undefined},options:false,rowKey:rowKey,rowSelection:{type:tab.selectionType,defaultSelectedRowKeys:(selectedData[tab.key]||[]).map(function(item){console.info("ad",item,item[rowKey]);return item[rowKey]}),onChange:function(_,selectedRows){handleSelectionChange(tab.key,selectedRows)}}})}))});
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { TableItem } from "./types";
|
|
3
|
+
interface SelectedItemsDisplayProps {
|
|
4
|
+
items: TableItem[];
|
|
5
|
+
onRemove?: (item: TableItem) => void;
|
|
6
|
+
readonly?: boolean;
|
|
7
|
+
compact?: boolean;
|
|
8
|
+
renderItem?: (item: TableItem) => React.ReactNode;
|
|
9
|
+
}
|
|
10
|
+
export declare function SelectedItemsDisplay({ items, onRemove, readonly, compact, renderItem, }: SelectedItemsDisplayProps): import("react/jsx-runtime").JSX.Element | null;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function _array_like_to_array(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++)arr2[i]=arr[i];return arr2}function _array_with_holes(arr){if(Array.isArray(arr))return arr}function _iterable_to_array_limit(arr,i){var _i=arr==null?null:typeof Symbol!=="undefined"&&arr[Symbol.iterator]||arr["@@iterator"];if(_i==null)return;var _arr=[];var _n=true;var _d=false;var _s,_e;try{for(_i=_i.call(arr);!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break}}catch(err){_d=true;_e=err}finally{try{if(!_n&&_i["return"]!=null)_i["return"]()}finally{if(_d)throw _e}}return _arr}function _non_iterable_rest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _sliced_to_array(arr,i){return _array_with_holes(arr)||_iterable_to_array_limit(arr,i)||_unsupported_iterable_to_array(arr,i)||_non_iterable_rest()}function _unsupported_iterable_to_array(o,minLen){if(!o)return;if(typeof o==="string")return _array_like_to_array(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _array_like_to_array(o,minLen)}import{useState,useRef,useEffect}from"react";import*as React from"react";import{useSelectedItemStyles}from"./styles";import classNames from"classnames";import{Tag,theme,Popover}from"antd";import{PlusOutlined}from"@ant-design/icons";export function SelectedItemsDisplay(param){var items=param.items,onRemove=param.onRemove,_param_readonly=param.readonly,readonly=_param_readonly===void 0?false:_param_readonly,_param_compact=param.compact,compact=_param_compact===void 0?false:_param_compact,renderItem=param.renderItem;var hashId=theme.useToken().hashId;var _useState=_sliced_to_array(useState(items.length),2),visibleCount=_useState[0],setVisibleCount=_useState[1];var containerRef=useRef(null);var itemRefs=useRef([]);useSelectedItemStyles();useEffect(function(){var calculateVisibleItems=function(){if(!containerRef.current||items.length===0)return;var container=containerRef.current;var containerWidth=container.offsetWidth;var reservedWidth=80;var currentWidth=0;var visibleItems=0;for(var i=0;i<items.length;i++){var itemRef=itemRefs.current[i];if(!itemRef)continue;var itemWidth=itemRef.offsetWidth+(compact?4:8);if(currentWidth+itemWidth>containerWidth){break}if(i<items.length-1&¤tWidth+itemWidth+reservedWidth>containerWidth){break}currentWidth+=itemWidth;visibleItems=i+1}setVisibleCount(Math.max(1,visibleItems))};var timer=setTimeout(calculateVisibleItems,100);window.addEventListener("resize",calculateVisibleItems);return function(){clearTimeout(timer);window.removeEventListener("resize",calculateVisibleItems)}},[items,compact]);if(items.length===0){return null}var visibleItems=items.slice(0,visibleCount);var hiddenItems=items.slice(visibleCount);var hasHiddenItems=hiddenItems.length>0;return React.createElement("div",{ref:containerRef,className:classNames(hashId,"vlian-tab-modal__slected-items")},visibleItems.map(function(item,index){return React.createElement(Tag,{key:item.id,ref:function(el){return itemRefs.current[index]=el},closable:!readonly,onClose:function(e){e.preventDefault();e.stopPropagation();onRemove===null||onRemove===void 0?void 0:onRemove(item)}},renderItem?renderItem(item):item.name)}),hasHiddenItems&&React.createElement(Popover,{content:React.createElement("div",{className:classNames(hashId,"vlian-tab-modal__slected-items-hidden")},hiddenItems.map(function(item){return React.createElement(Tag,{key:item.id,closable:!readonly,onClose:function(e){e.preventDefault();e.stopPropagation();onRemove===null||onRemove===void 0?void 0:onRemove(item)}},renderItem?renderItem(item):item.name)})),title:"title"},React.createElement(PlusOutlined,null),hiddenItems.length))}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{theme}from"antd";import{useStyleRegister}from"@ant-design/cssinjs";export var useStyles=function(){var _theme_useToken=theme.useToken(),hashId=_theme_useToken.hashId,token=_theme_useToken.token,GlobalToken=_theme_useToken.theme;useStyleRegister({theme:GlobalToken,token:token,path:["VlianTabModal"],hashId:hashId},function(){return{".vlian-tab-modal":{width:"100%",padding:token.paddingXS,borderRadius:token.borderRadiusSM,border:"1px solid ".concat(token.colorBorderSecondary),cursor:"pointer","& .ant-tabs-nav":{marginBottom:0}}}})};export var useSelectedItemStyles=function(){var _theme_useToken=theme.useToken(),hashId=_theme_useToken.hashId,token=_theme_useToken.token,GlobalToken=_theme_useToken.theme;useStyleRegister({theme:GlobalToken,token:token,path:["VlianTabModalSelectedItems"],hashId:hashId},function(){return{".vlian-tab-modal__slected-items":{display:"flex",flexWrap:"wrap",gap:"5px",alignItems:"center",width:"100%"},".vlian-tab-modal__slected-items-hidden":{display:"flex",flexWrap:"wrap",gap:"5px",alignItems:"center"}}})};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { ProColumns } from "@ant-design/pro-components";
|
|
2
|
+
export interface TableItem {
|
|
3
|
+
id: number;
|
|
4
|
+
name: string;
|
|
5
|
+
code: string;
|
|
6
|
+
category: string;
|
|
7
|
+
[key: string]: any;
|
|
8
|
+
}
|
|
9
|
+
export interface TabConfig {
|
|
10
|
+
key: string;
|
|
11
|
+
label: string;
|
|
12
|
+
selectionType: 'checkbox' | 'radio';
|
|
13
|
+
data: TableItem[];
|
|
14
|
+
onSearch?: (value: string) => void;
|
|
15
|
+
}
|
|
16
|
+
export interface TabSelectorProps {
|
|
17
|
+
tabs: TabConfig[];
|
|
18
|
+
value?: Record<string, TableItem[]>;
|
|
19
|
+
onChange?: (value: Record<string, TableItem[]>) => void;
|
|
20
|
+
placeholder?: string;
|
|
21
|
+
disabled?: boolean;
|
|
22
|
+
readonly?: boolean;
|
|
23
|
+
columns?: ProColumns<Record<string, any>>[];
|
|
24
|
+
}
|
package/dist/index.d.ts
CHANGED
|
@@ -9,3 +9,7 @@ export { Image } from "./images";
|
|
|
9
9
|
export * from "./ProTable";
|
|
10
10
|
export { ButtonGroup, type ButtonGroupProps, type ButtonGroupItem } from './ButtonGroup';
|
|
11
11
|
export { ConfirmButton, type ConfirmButtonProps } from './ConfirmButton';
|
|
12
|
+
export * from "./TabSelector";
|
|
13
|
+
export * from "./Beyond";
|
|
14
|
+
export * from "./List";
|
|
15
|
+
export * from "./Exports";
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{Card}from"./Card";export*from"./Card";export{Modal}from"./Modal";export*from"./Modal";export{VaSwitch}from"./Switch";export{CheckCard}from"./CheckCard";export{Typography}from"./Text";export{Image}from"./images";export*from"./ProTable";export{ButtonGroup}from"./ButtonGroup";export{ConfirmButton}from"./ConfirmButton";
|
|
1
|
+
export{Card}from"./Card";export*from"./Card";export{Modal}from"./Modal";export*from"./Modal";export{VaSwitch}from"./Switch";export{CheckCard}from"./CheckCard";export{Typography}from"./Text";export{Image}from"./images";export*from"./ProTable";export{ButtonGroup}from"./ButtonGroup";export{ConfirmButton}from"./ConfirmButton";export*from"./TabSelector";export*from"./Beyond";export*from"./List";export*from"./Exports";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var local={switch:{activeText:"启用",inactiveText:"禁用"},form:{text:"请输入",select:"请选择",start:"开始",ended:"结束",reset:"重置",submit:"提交",query:"查询"},table:{createBtnText:"新增",batchRemoveBtnText:"批量删除",batchRemoveModalTitle:"警告",batchRemoveModalContent:"即将删除{count}项数据,删除后无法恢复,是否继续?",createTitle:"新增",updateTitle:"更新",viewTitle:"详情",operateColumnTitle:"操作",viewBtnText:"查看",updateBtnText:"编辑",removeBtnText:"删除",moreBtnText:"更多",removeConfirm:"确定要删除这项吗?",removeTip:"警告?",backText:"返回",pagePt:"请输入添加项",pageAddText:"保存"},upload:{btnText:"上传",limitSize:"文件大小不能超过 {limit}MB!",uploadFail:"上传失败"},adminTransfer:{unSelectText:"取消选择",selectText:"选择",selectedOption:"已选{length}项",clear:"清空",removeBtnText:"删除"},treeTable:{triggerText:"选择",selectedOption:"已选{length}项",clear:"清空",removeBtnText:"删除",waitSelectListText:"待选列表",selectedListText:"已选列表",searchTextPt:"请输入关键字",selectedText:"已选",unselectedText:"未选",treeTitle:"树型列表"},exports:{text:"导出",progressResText:"正在导出",successResText:"导出成功",errorResText:"导出失败",cancelBtnText:"取消",exportTitle:"导出",retryText:"重试"},treePanel:{selectedText:"已选",clearText:"清空",rootText:"全部",limitText:"最多选择${maxCount}项。",searchPlaceholder:"请输入关键字"}};export default local;
|
|
1
|
+
var local={switch:{activeText:"启用",inactiveText:"禁用"},form:{text:"请输入",select:"请选择",start:"开始",ended:"结束",reset:"重置",submit:"提交",query:"查询"},table:{createBtnText:"新增",batchRemoveBtnText:"批量删除",batchRemoveModalTitle:"警告",batchRemoveModalContent:"即将删除{count}项数据,删除后无法恢复,是否继续?",createTitle:"新增",updateTitle:"更新",viewTitle:"详情",operateColumnTitle:"操作",viewBtnText:"查看",updateBtnText:"编辑",removeBtnText:"删除",moreBtnText:"更多",removeConfirm:"确定要删除这项吗?",removeTip:"警告?",backText:"返回",pagePt:"请输入添加项",pageAddText:"保存",createSubmitText:"创建",updateSubmitText:"保存",submitText:"提交",cancelText:"取消",closeText:"关闭"},upload:{btnText:"上传",limitSize:"文件大小不能超过 {limit}MB!",uploadFail:"上传失败"},adminTransfer:{unSelectText:"取消选择",selectText:"选择",selectedOption:"已选{length}项",clear:"清空",removeBtnText:"删除"},treeTable:{triggerText:"选择",selectedOption:"已选{length}项",clear:"清空",removeBtnText:"删除",waitSelectListText:"待选列表",selectedListText:"已选列表",searchTextPt:"请输入关键字",selectedText:"已选",unselectedText:"未选",treeTitle:"树型列表"},exports:{text:"导出",progressResText:"正在导出",successResText:"导出成功",errorResText:"导出失败",cancelBtnText:"取消",exportTitle:"导出",retryText:"重试"},treePanel:{selectedText:"已选",clearText:"清空",rootText:"全部",limitText:"最多选择${maxCount}项。",searchPlaceholder:"请输入关键字"}};export default local;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "villianjs-pro",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.3",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"module": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -17,27 +17,38 @@
|
|
|
17
17
|
"prepublishOnly": "npm run build"
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
|
+
"@vlian/utils": "^0.0.29",
|
|
21
|
+
"ahooks": "^3.9.5",
|
|
22
|
+
"lodash": "^4.17.21",
|
|
23
|
+
"nanoid": "^5.1.5"
|
|
24
|
+
},
|
|
25
|
+
"peerDependencies": {
|
|
26
|
+
"@ant-design/cssinjs": ">=1.21.0",
|
|
27
|
+
"@ant-design/icons": ">=5.0.0",
|
|
28
|
+
"@ant-design/pro-components": ">=2.8.2",
|
|
29
|
+
"@ant-design/pro-form": ">=2.31.2",
|
|
30
|
+
"@ant-design/pro-table": ">=3.18.2",
|
|
31
|
+
"@ant-design/pro-utils": ">=2.16.2",
|
|
32
|
+
"antd": ">=5.26.3",
|
|
33
|
+
"classnames": ">=2.3.0",
|
|
34
|
+
"react": ">=16.9.0",
|
|
35
|
+
"react-dom": ">=16.9.0",
|
|
36
|
+
"react-router-dom": ">=6.0.0"
|
|
37
|
+
},
|
|
38
|
+
"devDependencies": {
|
|
20
39
|
"@ant-design/cssinjs": "^1.24.0",
|
|
21
40
|
"@ant-design/icons": "^6.0.2",
|
|
22
41
|
"@ant-design/pro-components": "^2.8.10",
|
|
23
42
|
"@ant-design/pro-form": "^2.32.0",
|
|
24
43
|
"@ant-design/pro-table": "^3.21.0",
|
|
25
44
|
"@ant-design/v5-patch-for-react-19": "^1.0.3",
|
|
26
|
-
"@testing-library/react": "^16.3.0",
|
|
27
|
-
"@types/lodash": "^4.17.20",
|
|
28
|
-
"@vlian/utils": "^0.0.29",
|
|
29
|
-
"ahooks": "^3.9.5",
|
|
30
|
-
"antd": "^5.27.3",
|
|
31
|
-
"classnames": "^2.5.1",
|
|
32
|
-
"lodash": "^4.17.21",
|
|
33
|
-
"nanoid": "^5.1.5",
|
|
34
|
-
"react": "^19.1.1",
|
|
35
|
-
"react-dom": "^19.1.1",
|
|
36
|
-
"react-router-dom": "^7.9.1"
|
|
37
|
-
},
|
|
38
|
-
"devDependencies": {
|
|
39
45
|
"@chromatic-com/storybook": "^4.1.1",
|
|
40
46
|
"@eslint/js": "^9.33.0",
|
|
47
|
+
"@testing-library/react": "^16.3.0",
|
|
48
|
+
"@types/lodash": "^4.17.20",
|
|
49
|
+
"@types/node": "^24.10.0",
|
|
50
|
+
"@types/react": "^19.1.13",
|
|
51
|
+
"@types/react-dom": "^19.1.9",
|
|
41
52
|
"@storybook/addon-a11y": "^9.1.5",
|
|
42
53
|
"@storybook/addon-docs": "^9.1.5",
|
|
43
54
|
"@storybook/addon-onboarding": "^9.1.5",
|
|
@@ -45,10 +56,12 @@
|
|
|
45
56
|
"@storybook/react-vite": "^9.1.5",
|
|
46
57
|
"@swc/cli": "^0.7.8",
|
|
47
58
|
"@swc/core": "^1.15.0",
|
|
48
|
-
"@types/node": "^24.10.0",
|
|
49
|
-
"@types/react": "^19.1.13",
|
|
50
|
-
"@types/react-dom": "^19.1.9",
|
|
51
59
|
"@vitejs/plugin-react": "^5.0.0",
|
|
60
|
+
"antd": "^5.27.3",
|
|
61
|
+
"classnames": "^2.5.1",
|
|
62
|
+
"react": "^19.1.1",
|
|
63
|
+
"react-dom": "^19.1.1",
|
|
64
|
+
"react-router-dom": "^7.9.1",
|
|
52
65
|
"@vitest/browser": "^3.2.4",
|
|
53
66
|
"@vitest/coverage-v8": "^3.2.4",
|
|
54
67
|
"eslint": "^9.33.0",
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import * as React from 'react';
|
|
2
|
-
import { type ButtonProps } from "../Button";
|
|
3
|
-
export type FormFooterConfig = {
|
|
4
|
-
cancelText?: React.ReactNode;
|
|
5
|
-
confirmText?: React.ReactNode;
|
|
6
|
-
};
|
|
7
|
-
export type FormFooterProps = {
|
|
8
|
-
config?: FormFooterConfig;
|
|
9
|
-
/** @name 提交按钮的 props */
|
|
10
|
-
submitButtonProps?: false | (ButtonProps & {
|
|
11
|
-
preventDefault?: boolean;
|
|
12
|
-
});
|
|
13
|
-
/** @name 重置按钮的 props */
|
|
14
|
-
resetButtonProps?: false | (ButtonProps & {
|
|
15
|
-
preventDefault?: boolean;
|
|
16
|
-
});
|
|
17
|
-
render?: ((props: FormFooterProps & Record<string, any> & {
|
|
18
|
-
submit: () => void;
|
|
19
|
-
reset: () => void;
|
|
20
|
-
}, dom: React.JSX.Element[]) => React.ReactNode[] | React.ReactNode | false) | false;
|
|
21
|
-
onSubmit?: () => void;
|
|
22
|
-
onReset?: () => void;
|
|
23
|
-
submitterPosition?: React.CSSProperties['justifyContent'];
|
|
24
|
-
submitLoading?: boolean;
|
|
25
|
-
};
|
|
26
|
-
export declare const FormFooter: React.FC<FormFooterProps>;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value}catch(error){reject(error);return}if(info.done){resolve(value)}else{Promise.resolve(value).then(_next,_throw)}}function _async_to_generator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value)}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err)}_next(undefined)})}}function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _ts_generator(thisArg,body){var f,y,t,_={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},g=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return g.next=verb(0),g["throw"]=verb(1),g["return"]=verb(2),typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(g&&(g=0,op[0]&&(_=0)),_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]<t[3])){_.label=op[1];break}if(op[0]===6&&_.label<t[1]){_.label=t[1];t=op;break}if(t&&_.label<t[2]){_.label=t[2];_.ops.push(op);break}if(t[2])_.ops.pop();_.trys.pop();continue}op=body.call(thisArg,_)}catch(e){op=[6,e];y=0}finally{f=t=0}if(op[0]&5)throw op[1];return{value:op[0]?op[1]:void 0,done:true}}}import*as React from"react";import{Flex}from"antd";import{Button}from"../Button";import{useLocale}from"../locale";import{useContext}from"react";import{VlianTableContext}from"./context.ts";export var FormFooter=function(props){var tmp=props.config,_ref=tmp===void 0?{}:tmp,cancelText=_ref.cancelText,confirmText=_ref.confirmText,resetButtonProps=props.resetButtonProps,submitButtonProps=props.submitButtonProps,onSubmit=props.onSubmit,onReset=props.onReset,render=props.render,submitLoading=props.submitLoading,submitterPosition=props.submitterPosition;var context=useContext(VlianTableContext);var size=(context||{}).size;var messages=useLocale().messages;var handleSubmitClick=function(){return _async_to_generator(function(){return _ts_generator(this,function(_state){onSubmit===null||onSubmit===void 0?void 0:onSubmit();return[2]})})()};var handleCancelClick=function(){return _async_to_generator(function(){return _ts_generator(this,function(_state){onReset===null||onReset===void 0?void 0:onReset();return[2]})})()};var ResetButton=React.useMemo(function(){if(resetButtonProps===false){return null}var _$props=_object_spread_props(_object_spread({size:size},resetButtonProps),{onClick:handleCancelClick});return React.createElement(Button,_object_spread({key:"cancel"},_$props),cancelText!==null&&cancelText!==void 0?cancelText:messages.form.reset)},[cancelText,resetButtonProps]);var SubmitButton=React.useMemo(function(){if(resetButtonProps===false){return null}var _$props=_object_spread_props(_object_spread({type:"primary",size:size,loading:submitLoading},submitButtonProps),{onClick:handleSubmitClick});return React.createElement(Button,_object_spread({key:"submit"},_$props),confirmText!==null&&confirmText!==void 0?confirmText:messages.form.submit)},[confirmText,submitButtonProps,handleSubmitClick]);var currentRender=React.useCallback(function(){if(render===false){return null}if(render){return render(_object_spread_props(_object_spread({},props),{submit:handleSubmitClick,reset:handleCancelClick}),[ResetButton,SubmitButton].filter(Boolean))}return[ResetButton,SubmitButton]},[ResetButton,SubmitButton]);return React.createElement(Flex,{justify:submitterPosition,align:"center",gap:8},currentRender())};
|
package/dist/ProTable/list.d.ts
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import type { ParamsType, VlianTableListInst, VlianTableListProps } from "./types.ts";
|
|
2
|
-
import React from "react";
|
|
3
|
-
export declare const VlianListTable: <DataSource extends Record<string, any> = any, U extends ParamsType = ParamsType, ValueType = "text">(props: VlianTableListProps<DataSource, U, ValueType> & {
|
|
4
|
-
ref?: React.Ref<Partial<VlianTableListInst>>;
|
|
5
|
-
}) => React.ReactElement | null;
|
package/dist/ProTable/list.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function _array_like_to_array(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++)arr2[i]=arr[i];return arr2}function _array_with_holes(arr){if(Array.isArray(arr))return arr}function _array_without_holes(arr){if(Array.isArray(arr))return _array_like_to_array(arr)}function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value}catch(error){reject(error);return}if(info.done){resolve(value)}else{Promise.resolve(value).then(_next,_throw)}}function _async_to_generator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value)}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err)}_next(undefined)})}}function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _extends(){_extends=Object.assign||function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return _extends.apply(this,arguments)}function _iterable_to_array(iter){if(typeof Symbol!=="undefined"&&iter[Symbol.iterator]!=null||iter["@@iterator"]!=null)return Array.from(iter)}function _iterable_to_array_limit(arr,i){var _i=arr==null?null:typeof Symbol!=="undefined"&&arr[Symbol.iterator]||arr["@@iterator"];if(_i==null)return;var _arr=[];var _n=true;var _d=false;var _s,_e;try{for(_i=_i.call(arr);!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break}}catch(err){_d=true;_e=err}finally{try{if(!_n&&_i["return"]!=null)_i["return"]()}finally{if(_d)throw _e}}return _arr}function _non_iterable_rest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _non_iterable_spread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _object_destructuring_empty(o){if(o===null||o===void 0)throw new TypeError("Cannot destructure "+o);return o}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target=_object_without_properties_loose(source,excluded);var key,i;if(Object.getOwnPropertySymbols){var sourceSymbolKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceSymbolKeys.length;i++){key=sourceSymbolKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _object_without_properties_loose(source,excluded){if(source==null)return{};var target={};var sourceKeys=Object.keys(source);var key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;target[key]=source[key]}return target}function _sliced_to_array(arr,i){return _array_with_holes(arr)||_iterable_to_array_limit(arr,i)||_unsupported_iterable_to_array(arr,i)||_non_iterable_rest()}function _to_consumable_array(arr){return _array_without_holes(arr)||_iterable_to_array(arr)||_unsupported_iterable_to_array(arr)||_non_iterable_spread()}function _type_of(obj){"@swc/helpers - typeof";return obj&&typeof Symbol!=="undefined"&&obj.constructor===Symbol?"symbol":typeof obj}function _unsupported_iterable_to_array(o,minLen){if(!o)return;if(typeof o==="string")return _array_like_to_array(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _array_like_to_array(o,minLen)}function _ts_generator(thisArg,body){var f,y,t,_={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},g=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return g.next=verb(0),g["throw"]=verb(1),g["return"]=verb(2),typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(g&&(g=0,op[0]&&(_=0)),_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]<t[3])){_.label=op[1];break}if(op[0]===6&&_.label<t[1]){_.label=t[1];t=op;break}if(t&&_.label<t[2]){_.label=t[2];_.ops.push(op);break}if(t[2])_.ops.pop();_.trys.pop();continue}op=body.call(thisArg,_)}catch(e){op=[6,e];y=0}finally{f=t=0}if(op[0]&5)throw op[1];return{value:op[0]?op[1]:void 0,done:true}}}import React,{forwardRef,useContext,useImperativeHandle}from"react";import{useLocale}from"../locale";import{VlianTableContext}from"./context.ts";import{ButtonGroup}from"../ButtonGroup";import{EyeOutlined,EditOutlined,DeleteOutlined}from"@ant-design/icons";import{ConfirmButton}from"../ConfirmButton";import{BetaSchemaForm,ProTable}from"@ant-design/pro-components";import{useComponentConfig}from"antd/es/config-provider/context";import useStyle from"./styles.ts";import{inputValueType,sectionValueType,selectValueType}from"../library";import classNames from"classnames";import{Button}from"antd";import{useNavigate}from"react-router-dom";function VlianTableInner(props,ref){var messages=useLocale().messages;var customizePrefixCls=props.prefixCls,className=props.className,style=props.style,columns=props.columns,_props_searchType=props.searchType,searchType=_props_searchType===void 0?"QueryFilter":_props_searchType,size=props.size,_props_params=props.params,params=_props_params===void 0?{}:_props_params,scroll=props.scroll,searchFormProps=props.searchFormProps,_props_showSearch=props.showSearch,showSearch=_props_showSearch===void 0?true:_props_showSearch,request=props.request,_props_searchResetText=props.searchResetText,searchResetText=_props_searchResetText===void 0?messages.form.reset:_props_searchResetText,_props_searchSubmitText=props.searchSubmitText,searchSubmitText=_props_searchSubmitText===void 0?messages.form.query:_props_searchSubmitText,optionProps=props.optionProps,updateBtnProps=props.updateBtnProps,viewBtnProps=props.viewBtnProps,removeBtnProps=props.removeBtnProps,rowKey=props.rowKey,_props_optionExtra=props.optionExtra,optionExtra=_props_optionExtra===void 0?[]:_props_optionExtra,_props_maxOptionCount=props.maxOptionCount,maxOptionCount=_props_maxOptionCount===void 0?3:_props_maxOptionCount,onUpdateBefore=props.onUpdateBefore,tableId=props.tableId,restProps=_object_without_properties(props,["prefixCls","className","style","columns","searchType","size","params","scroll","searchFormProps","showSearch","request","searchResetText","searchSubmitText","optionProps","updateBtnProps","viewBtnProps","removeBtnProps","rowKey","optionExtra","maxOptionCount","onUpdateBefore","tableId"]);var searchFormRef=React.useRef(null);var context=useContext(VlianTableContext);var _ref=context||{},baseUrl=_ref.baseUrl,_ref_visibleSearch=_ref.visibleSearch,visibleSearch=_ref_visibleSearch===void 0?true:_ref_visibleSearch,_ref_removeMode=_ref.removeMode,removeMode=_ref_removeMode===void 0?"popconfirm":_ref_removeMode,mode=_ref.mode,handleOpenPopup=_ref.handleOpenPopup,permission=_ref.permission,hasPermission=_ref.hasPermission,setCurrentInfo=_ref.setCurrentInfo;var _React_useState=_sliced_to_array(React.useState([]),2),searchColumns=_React_useState[0],setSearchColumns=_React_useState[1];var _React_useState1=_sliced_to_array(React.useState({}),2),searchData=_React_useState1[0],setSearchData=_React_useState1[1];var _React_useState2=_sliced_to_array(React.useState(false),2),searchLoading=_React_useState2[0],setSearchLoading=_React_useState2[1];var navigate=useNavigate();var actionRef=React.useRef(null);var getPrefixCls=useComponentConfig("vlian-table").getPrefixCls;var prefixCls=getPrefixCls("vlian-table",customizePrefixCls);var _useStyle=_sliced_to_array(useStyle(prefixCls),3),wrapCSSVar=_useStyle[0],hashId=_useStyle[1],cssVarCls=_useStyle[2];var getTableFilter=function(){var _actionRef_current,_searchFormRef_current_getFieldsFormatValue,_searchFormRef_current;var pageInfo=(_actionRef_current=actionRef.current)===null||_actionRef_current===void 0?void 0:_actionRef_current.pageInfo;var formData=(_searchFormRef_current=searchFormRef.current)===null||_searchFormRef_current===void 0?void 0:(_searchFormRef_current_getFieldsFormatValue=_searchFormRef_current.getFieldsFormatValue)===null||_searchFormRef_current_getFieldsFormatValue===void 0?void 0:_searchFormRef_current_getFieldsFormatValue.call(_searchFormRef_current);return _object_spread({},pageInfo,formData,params)};useImperativeHandle(ref,function(){return _object_spread_props(_object_spread({},actionRef.current||{}),{search:searchFormRef.current,getTableFilter:getTableFilter})});var formatListColumns=function(){var columns=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];var searchColumns=[];var listColumns=columns.map(function(column){var tmp=column.fieldProps,_ref=tmp===void 0?{}:tmp,tmp1=_ref.placeholder,sourcePlaceholder=tmp1===void 0?"":tmp1,_column_valueType=column.valueType,valueType=_column_valueType===void 0?"text":_column_valueType,title=column.title,_column_hideInSearch=column.hideInSearch,hideInSearch=_column_hideInSearch===void 0?true:_column_hideInSearch,_column_textType=column.textType,textType=_column_textType===void 0?"input":_column_textType,otherFieldProps=_object_without_properties(column.fieldProps,["placeholder"]),other=_object_without_properties(column,["fieldProps","valueType","title","hideInSearch","textType"]);var placeholder;switch(valueType){case inputValueType.includes(valueType):placeholder=sourcePlaceholder?sourcePlaceholder:"".concat(messages.form.text).concat(title);break;case selectValueType.includes(valueType):placeholder=sourcePlaceholder?sourcePlaceholder:"".concat(messages.form.select).concat(title);break;case sectionValueType.includes(valueType):placeholder=sourcePlaceholder?sourcePlaceholder:["".concat(messages.form.start).concat(title),"".concat(messages.form.ended).concat(title)];break;default:placeholder=sourcePlaceholder?sourcePlaceholder:textType==="input"?"".concat(messages.form.text).concat(title):"".concat(messages.form.select).concat(title)}var newColumn=_object_spread({labelWidth:"auto",fieldProps:_object_spread({placeholder:placeholder},otherFieldProps),valueType:valueType,title:title},other);if(!hideInSearch){searchColumns.push(newColumn)}return _object_spread({minWidth:150},newColumn)});setSearchColumns===null||setSearchColumns===void 0?void 0:setSearchColumns(searchColumns);return listColumns};var currentSearchProps=React.useMemo(function(){var rest=_extends({},_object_destructuring_empty(searchFormProps||{}));return _object_spread({submitter:{searchConfig:{submitText:searchSubmitText,resetText:searchResetText},render:function(props,doms){void props;return _to_consumable_array(doms.reverse()).concat([React.createElement(Button,{key:"test",onClick:function(){setSearchData({aaa:Date.now()})}},"刷新")])}}},rest)},[searchFormProps]);var currentColumns=React.useMemo(function(){return formatListColumns(columns||[])},[columns]);var operateColumn=React.useMemo(function(){var createButtonItems=function(record,index,action){var defBtn={type:"link",variant:"link",size:"small"};var items=[];if(viewBtnProps!==false){var viewConfig=(typeof viewBtnProps==="undefined"?"undefined":_type_of(viewBtnProps))==="object"?viewBtnProps:{};var onClick=viewConfig.onClick,viewRest=_object_without_properties(viewConfig,["onClick"]);items.push(_object_spread(_object_spread_props(_object_spread({},defBtn),{key:"view",label:messages.table.viewBtnText,order:1,icon:React.createElement(EyeOutlined,null),onClick:function(){console.log("View button clicked",record,index,action);onClick===null||onClick===void 0?void 0:onClick(record,index,action)}}),viewRest))}if(updateBtnProps!==false){var updateConfig=(typeof updateBtnProps==="undefined"?"undefined":_type_of(updateBtnProps))==="object"?updateBtnProps:{};var onClick1=updateConfig.onClick,updateRest=_object_without_properties(updateConfig,["onClick"]);void onClick1;items.push(_object_spread(_object_spread_props(_object_spread({},defBtn),{key:"update",label:messages.table.updateBtnText,order:2,icon:React.createElement(EditOutlined,null),onClick:function(){return _async_to_generator(function(){var _permission_update,result,result1;return _ts_generator(this,function(_state){switch(_state.label){case 0:console.log("Update button clicked",record,index,action);if(hasPermission){;result=hasPermission((_permission_update=permission===null||permission===void 0?void 0:permission.update)!==null&&_permission_update!==void 0?_permission_update:"".concat(tableId,":update"),record);if(!result){console.error("权限不足");return[2,false]}}if(!onUpdateBefore)return[3,2];return[4,onUpdateBefore(record,index,action)];case 1:result1=_state.sent();if(!result1){return[2,false]}_state.label=2;case 2:return[4,setCurrentInfo===null||setCurrentInfo===void 0?void 0:setCurrentInfo("update",record,index)];case 3:_state.sent();if(mode==="router"){navigate("".concat(baseUrl,"/edit"))}return[2,handleOpenPopup===null||handleOpenPopup===void 0?void 0:handleOpenPopup()]}})})()}}),updateRest))}if(removeBtnProps!==false){var removeConfig=(typeof removeBtnProps==="undefined"?"undefined":_type_of(removeBtnProps))==="object"?removeBtnProps:{};var label=removeConfig.label,icon=removeConfig.icon,onClick2=removeConfig.onClick,removeRest=_object_without_properties(removeConfig,["label","icon","onClick"]);items.push(_object_spread(_object_spread_props(_object_spread({},defBtn),{key:"remove",label:messages.table.removeBtnText,isCustom:true,component:React.createElement(ConfirmButton,{key:"remove",mode:removeMode,title:messages.table.removeTip,content:messages.table.removeConfirm,triggerBtnProps:_object_spread(_object_spread_props(_object_spread({key:"remove"},defBtn),{icon:icon||React.createElement(DeleteOutlined,null),color:"danger"}),removeRest),onConfirm:function(){return _async_to_generator(function(){return _ts_generator(this,function(_state){console.log("Remove button clicked",record,index,action);onClick2===null||onClick2===void 0?void 0:onClick2(record,index,action);return[2,true]})})()}},label||messages.table.removeBtnText),order:3,color:"danger",icon:undefined,onClick:function(){},style:{padding:0}}),removeRest))}if(Array.isArray(optionExtra)&&optionExtra.length>0){items=items.concat(optionExtra.map(function(item){var onClick=item.onClick,rest=_object_without_properties(item,["onClick"]);return _object_spread_props(_object_spread({},defBtn,rest),{onClick:function(){onClick===null||onClick===void 0?void 0:onClick(record,index,action)}})}))}return items};return _object_spread_props(_object_spread({title:messages.table.operateColumnTitle,width:150},optionProps),{valueType:"option",render:function(_text,record,index,action){var buttonItems=createButtonItems(record,index,action);if(buttonItems.length===0){return null}return React.createElement(ButtonGroup,{moreProps:{icon:undefined,type:"link",variant:"link",size:"small",color:"default",children:messages.table.moreBtnText},items:buttonItems,maxCount:maxOptionCount})}})},[optionProps,updateBtnProps,viewBtnProps,removeBtnProps,messages,optionExtra,maxOptionCount,mode]);return wrapCSSVar(React.createElement("div",{className:classNames("".concat(prefixCls,"-list"),className,cssVarCls,hashId),style:style},visibleSearch&&showSearch&&React.createElement("div",null,React.createElement(BetaSchemaForm,_object_spread({ref:searchFormRef,size:size,layoutType:searchType,layout:"inline",loading:searchLoading,columns:searchColumns||[],onFinish:function(values){setSearchData(_object_spread_props(_object_spread({},values),{$key:Date.now()}))},onReset:function(){var _searchFormRef_current;(_searchFormRef_current=searchFormRef.current)===null||_searchFormRef_current===void 0?void 0:_searchFormRef_current.resetFields();setSearchData({$key:Date.now()})}},currentSearchProps))),React.createElement(ProTable,_object_spread_props(_object_spread({scroll:scroll!==null&&scroll!==void 0?scroll:{x:"max-content"}},restProps),{params:_object_spread({},params,searchData),columns:_to_consumable_array(currentColumns).concat([operateColumn]),actionRef:actionRef,search:false,ghost:true,rowKey:rowKey,onLoadingChange:function(v){setSearchLoading(Boolean(v))},request:function(params,sort,filter){return _async_to_generator(function(){var $key,reset;return _ts_generator(this,function(_state){$key=params.$key,reset=_object_without_properties(params,["$key"]);void $key;return[2,request===null||request===void 0?void 0:request(reset,sort,filter)]})})()}}))))}export var VlianListTable=forwardRef(VlianTableInner);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./update.tsx";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export*from"./update.tsx";
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import { type PropsWithChildren } from "react";
|
|
2
|
-
import type { UpdateOperateFormProps } from "../types.ts";
|
|
3
|
-
export declare const UpdateView: <DataSource, FormValue>(props: PropsWithChildren<UpdateOperateFormProps<DataSource, FormValue>>) => import("react/jsx-runtime").JSX.Element;
|
package/dist/ProTable2/index.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export*from"./types";export*from"./table";
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { FullToken, GenerateStyle, GetDefaultToken } from 'antd/es/theme/internal';
|
|
2
|
-
type VlianTableToken = FullToken<'VlianTable'> & {};
|
|
3
|
-
export declare const genBaseStyle: GenerateStyle<VlianTableToken>;
|
|
4
|
-
export declare const genListStyle: GenerateStyle<VlianTableToken>;
|
|
5
|
-
export declare const prepareComponentToken: GetDefaultToken<'VlianTable'>;
|
|
6
|
-
declare const _default: (prefixCls: string, rootCls?: string) => readonly [(node: React.ReactElement) => React.ReactElement, string, string];
|
|
7
|
-
export default _default;
|
package/dist/ProTable2/styles.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}import{genStyleHooks}from"antd/es/theme/internal";export var genBaseStyle=function(token){var componentCls=token.componentCls;return _define_property({},componentCls,{backgroundColor:token.colorBgContainer,"&&":{padding:token.paddingSM},".ant-pro-query-filter.ant-pro-query-filter":{padding:0}})};export var genListStyle=function(token){var componentCls=token.componentCls;return _define_property({},"".concat(componentCls,"-list"),{})};export var prepareComponentToken=function(){return{}};export default genStyleHooks("VlianTable",function(token){return[genBaseStyle(token),genListStyle(token)]},prepareComponentToken);
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import type { ProTableProps } from "./types";
|
|
2
|
-
export declare const ProTable: <DataSource extends Record<string, any> = Record<string, any>, ParamsType extends Record<string, any> = Record<string, any>, ValueType = "text">(props: ProTableProps<DataSource, ParamsType, ValueType>) => any;
|
package/dist/ProTable2/table.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import React from"react";import{useCommonStyles}from"../hooks";import useStyle from"./styles";import{Flex}from"antd";import classNames from"classnames";import ProTableSearch from"./components/search";export var ProTable=function(props){var _useCommonStyles=useCommonStyles("pro-table",props,useStyle),prefixCls=_useCommonStyles.prefixCls,cssVarCls=_useCommonStyles.cssVarCls,wrapCSS=_useCommonStyles.wrapCSS;return wrapCSS(React.createElement(Flex,{vertical:true,gap:8,className:classNames(prefixCls,cssVarCls)},React.createElement(ProTableSearch,null)))};
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
|
-
import type { SizeType } from "antd/es/config-provider/SizeContext";
|
|
3
|
-
import { type ProTableProps as AntdProTableProps } from "@ant-design/pro-components";
|
|
4
|
-
import type { FormSchema } from "@ant-design/pro-form/es/components/SchemaForm/typing";
|
|
5
|
-
/**
|
|
6
|
-
* 搜索表单类型
|
|
7
|
-
*/
|
|
8
|
-
export type SearchType = Extract<FormSchema["layoutType"], "QueryFilter" | "Form">;
|
|
9
|
-
/**
|
|
10
|
-
* 公共属性
|
|
11
|
-
*/
|
|
12
|
-
export type ProTableProps<DataSource = Record<string, any>, ParamsType = Record<string, any>, ValueType = "text"> = AntdProTableProps<DataSource, ParamsType, ValueType> & {
|
|
13
|
-
prefixCls?: string;
|
|
14
|
-
className?: string;
|
|
15
|
-
style?: React.CSSProperties;
|
|
16
|
-
size?: SizeType;
|
|
17
|
-
tableKey?: string;
|
|
18
|
-
/**
|
|
19
|
-
* @description 搜索表单类型
|
|
20
|
-
* @default QueryFilter
|
|
21
|
-
*/
|
|
22
|
-
searchType?: SearchType;
|
|
23
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export*from"./search";export*from"./list";
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import React from "react";
|
|
2
|
-
import type { SizeType } from "antd/es/config-provider/SizeContext";
|
|
3
|
-
import type { TableProps, SearchProps, SearchType } from "../../types";
|
|
4
|
-
import { type ProFormColumnsType } from "@ant-design/pro-components";
|
|
5
|
-
export type ProTableListProps<DataSource extends Record<string, any> = Record<string, any>, ParamsType = Record<string, any>, ValueType = "text"> = {
|
|
6
|
-
prefixCls?: string;
|
|
7
|
-
className?: string;
|
|
8
|
-
style?: React.CSSProperties;
|
|
9
|
-
size?: SizeType;
|
|
10
|
-
options?: TableProps<DataSource, ParamsType, ValueType>;
|
|
11
|
-
columns: ProFormColumnsType<DataSource>[];
|
|
12
|
-
searchOptions?: {
|
|
13
|
-
searchType?: SearchType;
|
|
14
|
-
className?: string;
|
|
15
|
-
style?: React.CSSProperties;
|
|
16
|
-
searchProps?: false | (Omit<SearchProps, "columns" | "onFinish" | "onReset">);
|
|
17
|
-
};
|
|
18
|
-
};
|
|
19
|
-
export declare const ProTableList: <DataSource extends Record<string, any> = Record<string, any>, ParamsType extends Record<string, any> = Record<string, any>, ValueType = "text">(props: ProTableListProps<DataSource, ParamsType, ValueType>) => React.ReactElement<unknown, string | React.JSXElementConstructor<any>>;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function _array_like_to_array(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++)arr2[i]=arr[i];return arr2}function _array_with_holes(arr){if(Array.isArray(arr))return arr}function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value}catch(error){reject(error);return}if(info.done){resolve(value)}else{Promise.resolve(value).then(_next,_throw)}}function _async_to_generator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value)}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err)}_next(undefined)})}}function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _iterable_to_array_limit(arr,i){var _i=arr==null?null:typeof Symbol!=="undefined"&&arr[Symbol.iterator]||arr["@@iterator"];if(_i==null)return;var _arr=[];var _n=true;var _d=false;var _s,_e;try{for(_i=_i.call(arr);!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break}}catch(err){_d=true;_e=err}finally{try{if(!_n&&_i["return"]!=null)_i["return"]()}finally{if(_d)throw _e}}return _arr}function _non_iterable_rest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target=_object_without_properties_loose(source,excluded);var key,i;if(Object.getOwnPropertySymbols){var sourceSymbolKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceSymbolKeys.length;i++){key=sourceSymbolKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _object_without_properties_loose(source,excluded){if(source==null)return{};var target={};var sourceKeys=Object.keys(source);var key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;target[key]=source[key]}return target}function _sliced_to_array(arr,i){return _array_with_holes(arr)||_iterable_to_array_limit(arr,i)||_unsupported_iterable_to_array(arr,i)||_non_iterable_rest()}function _type_of(obj){"@swc/helpers - typeof";return obj&&typeof Symbol!=="undefined"&&obj.constructor===Symbol?"symbol":typeof obj}function _unsupported_iterable_to_array(o,minLen){if(!o)return;if(typeof o==="string")return _array_like_to_array(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _array_like_to_array(o,minLen)}function _ts_generator(thisArg,body){var f,y,t,_={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},g=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return g.next=verb(0),g["throw"]=verb(1),g["return"]=verb(2),typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(g&&(g=0,op[0]&&(_=0)),_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]<t[3])){_.label=op[1];break}if(op[0]===6&&_.label<t[1]){_.label=t[1];t=op;break}if(t&&_.label<t[2]){_.label=t[2];_.ops.push(op);break}if(t[2])_.ops.pop();_.trys.pop();continue}op=body.call(thisArg,_)}catch(e){op=[6,e];y=0}finally{f=t=0}if(op[0]&5)throw op[1];return{value:op[0]?op[1]:void 0,done:true}}}import React from"react";import{ProTable}from"@ant-design/pro-components";import{useComponentConfig}from"antd/es/config-provider/context";import useStyle from"../../styles.ts";import classNames from"classnames";import{ProTableSearch}from"../search";import{VlianTableContext}from"../../context";import{useContext,useMemo,useCallback}from"react";export var ProTableList=function(props){var customizePrefixCls=props.prefixCls,className=props.className,style=props.style,_props_columns=props.columns,columns=_props_columns===void 0?[]:_props_columns,searchOptions=props.searchOptions,tmp=props.options,_ref=tmp===void 0?{}:tmp,params=_ref.params,request=_ref.request,actionRef=_ref.actionRef,_ref_resetAndSearch=_ref.resetAndSearch,resetAndSearch=_ref_resetAndSearch===void 0?true:_ref_resetAndSearch,tableRowSelection=_ref.rowSelection,tableProps=_object_without_properties(props.options,["params","request","actionRef","resetAndSearch","rowSelection"]);var _useContext=useContext(VlianTableContext),selectedRowKeys=_useContext.selectedRowKeys,setSelectedRowKeys=_useContext.setSelectedRowKeys,setSelectedRows=_useContext.setSelectedRows;var innerActionRef=React.useRef(undefined);React.useImperativeHandle(actionRef,function(){return innerActionRef.current},[innerActionRef.current]);var _useContext1=useContext(VlianTableContext),loading=_useContext1.loading,setLoading=_useContext1.setLoading;var getPrefixCls=useComponentConfig("vlian-table").getPrefixCls;var prefixCls=getPrefixCls("vlian-table",customizePrefixCls);var _useStyle=_sliced_to_array(useStyle(prefixCls),3),wrapCSS=_useStyle[0],hashId=_useStyle[1],cssVarCls=_useStyle[2];var _React_useState=_sliced_to_array(React.useState([]),2),searchColumns=_React_useState[0],setSearchColumns=_React_useState[1];var _React_useState1=_sliced_to_array(React.useState({}),2),searchData=_React_useState1[0],setSearchData=_React_useState1[1];var formatListColumns=function(columns){var filterColumns=[];var newColumns=columns.map(function(column){var _column_hideInSearch=column.hideInSearch,hideInSearch=_column_hideInSearch===void 0?true:_column_hideInSearch,restColumn=_object_without_properties(column,["hideInSearch"]);if(!hideInSearch){filterColumns.push(restColumn)}return _object_spread({hideInSearch:hideInSearch},restColumn)});setSearchColumns(filterColumns);return newColumns};var currentColumns=React.useMemo(function(){return formatListColumns(columns)},[columns]);var currentParams=React.useMemo(function(){return _object_spread({},params,searchData)},[params,searchData]);var handleSearch=function(params){return _async_to_generator(function(){return _ts_generator(this,function(_state){setSearchData(_object_spread_props(_object_spread({},params),{$key:Date.now()}));return[2]})})()};var handleReset=function(){setSearchData(resetAndSearch?{$key:Date.now()}:{})};var showSearch=React.useMemo(function(){var searchProps=(searchOptions||{}).searchProps;return searchProps!==false},[searchOptions]);var handleRowSelectionChange=useCallback(function(selectedKeys,selectedRowsData,info){setSelectedRowKeys(selectedKeys);setSelectedRows(selectedRowsData);if(tableRowSelection&&(typeof tableRowSelection==="undefined"?"undefined":_type_of(tableRowSelection))==="object"&&tableRowSelection.onChange){if(tableRowSelection.onChange.length===3){tableRowSelection.onChange(selectedKeys,selectedRowsData,info)}else{tableRowSelection.onChange(selectedKeys,selectedRowsData)}}},[setSelectedRowKeys,setSelectedRows,tableRowSelection]);var rowSelection=useMemo(function(){if(tableRowSelection===false){return undefined}var defaultType=tableRowSelection&&(typeof tableRowSelection==="undefined"?"undefined":_type_of(tableRowSelection))==="object"?tableRowSelection.type||"checkbox":"checkbox";var _ref=tableRowSelection&&(typeof tableRowSelection==="undefined"?"undefined":_type_of(tableRowSelection))==="object"?tableRowSelection:{},_=_ref.onChange,otherRowSelectionProps=_object_without_properties(_ref,["onChange"]);return _object_spread({type:defaultType,selectedRowKeys:selectedRowKeys,onChange:handleRowSelectionChange},otherRowSelectionProps)},[selectedRowKeys,handleRowSelectionChange,tableRowSelection]);return wrapCSS(React.createElement("div",{className:classNames("".concat(prefixCls,"-list"),className,cssVarCls,hashId),style:style},showSearch&&React.createElement(ProTableSearch,{className:classNames("".concat(prefixCls,"-search"),hashId,searchOptions===null||searchOptions===void 0?void 0:searchOptions.className),style:searchOptions===null||searchOptions===void 0?void 0:searchOptions.style,columns:searchColumns,layoutType:(searchOptions===null||searchOptions===void 0?void 0:searchOptions.searchType)||"QueryFilter",loading:loading,onFinish:handleSearch,onReset:handleReset}),React.createElement(ProTable,_object_spread({columns:currentColumns,ghost:true,params:currentParams,actionRef:innerActionRef,onLoadingChange:function(loading){var _tableProps_onLoadingChange;if(typeof loading==="boolean"){setLoading(loading)}tableProps===null||tableProps===void 0?void 0:(_tableProps_onLoadingChange=tableProps.onLoadingChange)===null||_tableProps_onLoadingChange===void 0?void 0:_tableProps_onLoadingChange.call(tableProps,loading)},search:false,loading:loading,request:function(params,sort,filter){return _async_to_generator(function(){var $key,other;return _ts_generator(this,function(_state){$key=params.$key,other=_object_without_properties(params,["$key"]);void $key;return[2,request===null||request===void 0?void 0:request(other,sort,filter)]})})()},rowSelection:rowSelection},tableProps))))};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function _array_like_to_array(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++)arr2[i]=arr[i];return arr2}function _array_without_holes(arr){if(Array.isArray(arr))return _array_like_to_array(arr)}function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _iterable_to_array(iter){if(typeof Symbol!=="undefined"&&iter[Symbol.iterator]!=null||iter["@@iterator"]!=null)return Array.from(iter)}function _non_iterable_spread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target=_object_without_properties_loose(source,excluded);var key,i;if(Object.getOwnPropertySymbols){var sourceSymbolKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceSymbolKeys.length;i++){key=sourceSymbolKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _object_without_properties_loose(source,excluded){if(source==null)return{};var target={};var sourceKeys=Object.keys(source);var key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;target[key]=source[key]}return target}function _to_consumable_array(arr){return _array_without_holes(arr)||_iterable_to_array(arr)||_unsupported_iterable_to_array(arr)||_non_iterable_spread()}function _unsupported_iterable_to_array(o,minLen){if(!o)return;if(typeof o==="string")return _array_like_to_array(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _array_like_to_array(o,minLen)}import React from"react";import{BetaSchemaForm}from"@ant-design/pro-components";import{inputValueType,sectionValueType,selectValueType}from"../../../library";import{useLocale}from"../../../locale";export var ProTableSearch=function(props){var _props_columns=props.columns,columns=_props_columns===void 0?[]:_props_columns,className=props.className,style=props.style,layoutType=props.layoutType,otherProps=_object_without_properties(props,["columns","className","style","layoutType"]);var messages=useLocale().messages;var formatListColumns=function(){var columns=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];return columns.map(function(column){var tmp=column.fieldProps,_ref=tmp===void 0?{}:tmp,tmp1=_ref.placeholder,sourcePlaceholder=tmp1===void 0?"":tmp1,_column_valueType=column.valueType,valueType=_column_valueType===void 0?"text":_column_valueType,title=column.title,otherFieldProps=_object_without_properties(column.fieldProps,["placeholder"]),other=_object_without_properties(column,["fieldProps","valueType","title"]);var placeholder;if(inputValueType.includes(valueType)){placeholder=sourcePlaceholder?sourcePlaceholder:"".concat(messages.form.text).concat(title)}else if(selectValueType.includes(valueType)){placeholder=sourcePlaceholder?sourcePlaceholder:"".concat(messages.form.select).concat(title)}else if(sectionValueType.includes(valueType)){placeholder=sourcePlaceholder?sourcePlaceholder:["".concat(messages.form.start).concat(title),"".concat(messages.form.ended).concat(title)]}else{placeholder=sourcePlaceholder?sourcePlaceholder:title}var newColumn=_object_spread({fieldProps:_object_spread({placeholder:placeholder},otherFieldProps),valueType:valueType,title:title},other);return newColumn})};var currentColumns=React.useMemo(function(){return formatListColumns(columns)},[columns]);return React.createElement("div",{className:className,style:style},React.createElement(BetaSchemaForm,_object_spread({labelWidth:"auto",colProps:{flex:"auto"},layout:"inline",layoutType:layoutType,columns:currentColumns,submitter:{searchConfig:{submitText:messages.form.query,resetText:messages.form.reset},render:function(_props,doms){return _to_consumable_array(doms.reverse())}}},otherProps)))};
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
|
-
import type { ProTableProps } from "./types";
|
|
3
|
-
export declare const Container: <DataSource extends Record<string, any> = Record<string, any>, ParamsType extends Record<string, any> = Record<string, any>, ValueType = "text">(props: ProTableProps<DataSource, ParamsType, FormData, ValueType>) => React.ReactElement<unknown, string | React.JSXElementConstructor<any>>;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function _array_like_to_array(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++)arr2[i]=arr[i];return arr2}function _array_with_holes(arr){if(Array.isArray(arr))return arr}function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _iterable_to_array_limit(arr,i){var _i=arr==null?null:typeof Symbol!=="undefined"&&arr[Symbol.iterator]||arr["@@iterator"];if(_i==null)return;var _arr=[];var _n=true;var _d=false;var _s,_e;try{for(_i=_i.call(arr);!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break}}catch(err){_d=true;_e=err}finally{try{if(!_n&&_i["return"]!=null)_i["return"]()}finally{if(_d)throw _e}}return _arr}function _non_iterable_rest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _object_without_properties(source,excluded){if(source==null)return{};var target=_object_without_properties_loose(source,excluded);var key,i;if(Object.getOwnPropertySymbols){var sourceSymbolKeys=Object.getOwnPropertySymbols(source);for(i=0;i<sourceSymbolKeys.length;i++){key=sourceSymbolKeys[i];if(excluded.indexOf(key)>=0)continue;if(!Object.prototype.propertyIsEnumerable.call(source,key))continue;target[key]=source[key]}}return target}function _object_without_properties_loose(source,excluded){if(source==null)return{};var target={};var sourceKeys=Object.keys(source);var key,i;for(i=0;i<sourceKeys.length;i++){key=sourceKeys[i];if(excluded.indexOf(key)>=0)continue;target[key]=source[key]}return target}function _sliced_to_array(arr,i){return _array_with_holes(arr)||_iterable_to_array_limit(arr,i)||_unsupported_iterable_to_array(arr,i)||_non_iterable_rest()}function _unsupported_iterable_to_array(o,minLen){if(!o)return;if(typeof o==="string")return _array_like_to_array(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(n);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _array_like_to_array(o,minLen)}import*as React from"react";import{Flex}from"antd";import classNames from"classnames";import{MemoryRouter,Route,Routes}from"react-router-dom";import{ProTableList}from"./components";import{usePagination}from"./hooks/usePagination.tsx";import{useComponentConfig}from"antd/es/config-provider/context";import useStyle from"./styles.ts";import{useContext}from"react";import{VlianTableContext}from"./context.ts";import{useOptionRender}from"./hooks/useOptionRender.tsx";export var Container=function(props){var customizePrefixCls=props.prefixCls,className=props.className,style=props.style,searchClassName=props.searchClassName,searchStyle=props.searchStyle,_props_columns=props.columns,columns=_props_columns===void 0?[]:_props_columns,_props_searchType=props.searchType,searchType=_props_searchType===void 0?"QueryFilter":_props_searchType,_props_baseUrl=props.baseUrl,baseUrl=_props_baseUrl===void 0?"":_props_baseUrl,_props_initialEntries=props.initialEntries,initialEntries=_props_initialEntries===void 0?"/":_props_initialEntries,tableStyle=props.tableStyle,tableClassName=props.tableClassName,tmp=props.tableProps,actionRef=(tmp===void 0?{}:tmp).actionRef,searchProps=props.searchProps,tableProps=_object_without_properties(props.tableProps,["actionRef"]);var innerActionRef=React.useRef(undefined);var loading=useContext(VlianTableContext).loading;var currentPagination=usePagination(props).currentPagination;React.useImperativeHandle(actionRef,function(){return innerActionRef.current},[innerActionRef.current]);var getPrefixCls=useComponentConfig("vlian-table").getPrefixCls;var prefixCls=getPrefixCls("vlian-table",customizePrefixCls);var _useStyle=_sliced_to_array(useStyle(prefixCls),3),wrapCSS=_useStyle[0],hashId=_useStyle[1],cssVarCls=_useStyle[2];var headerTitle=useOptionRender(props).headerTitle;var currentTableOptions=React.useMemo(function(){return _object_spread_props(_object_spread({actionRef:innerActionRef},tableProps),{headerTitle:headerTitle,pagination:currentPagination})},[currentPagination,innerActionRef,tableProps,loading]);return wrapCSS(React.createElement(Flex,{vertical:true,gap:8,className:classNames(prefixCls,className,cssVarCls,hashId),style:style},React.createElement(MemoryRouter,{basename:baseUrl,initialEntries:[initialEntries]},React.createElement(Routes,null,React.createElement(Route,{path:"",element:React.createElement(ProTableList,_object_spread_props(_object_spread({},props),{className:tableClassName,columns:columns,style:tableStyle,options:currentTableOptions,searchOptions:{searchType:searchType,className:searchClassName,style:searchStyle,searchProps:searchProps}}))})))))};
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { type Key } from "react";
|
|
2
|
-
import type { ViewMode } from "./types";
|
|
3
|
-
export type VlianTableContextType = {
|
|
4
|
-
selectedRowKeys: Key[];
|
|
5
|
-
setSelectedRowKeys: (keys: Key[]) => void;
|
|
6
|
-
selectedRows: Record<string, any>[];
|
|
7
|
-
setSelectedRows: (rows: Record<string, any>[]) => void;
|
|
8
|
-
loading: boolean;
|
|
9
|
-
setLoading: (loading: boolean) => void;
|
|
10
|
-
viewMode: ViewMode;
|
|
11
|
-
setViewMode: (mode: ViewMode) => void;
|
|
12
|
-
};
|
|
13
|
-
export declare const VlianTableContext: import("react").Context<VlianTableContextType>;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{createContext}from"react";export var VlianTableContext=createContext({selectedRowKeys:[],setSelectedRowKeys:function(keys){void keys},selectedRows:[],setSelectedRows:function(rows){void rows},loading:false,setLoading:function(loading){void loading},viewMode:"list",setViewMode:function(mode){void mode}});
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import { type Key } from "react";
|
|
2
|
-
import { type ButtonGroupItem } from "../../ButtonGroup";
|
|
3
|
-
/**
|
|
4
|
-
* 操作按钮 Props 类型
|
|
5
|
-
*/
|
|
6
|
-
export interface OptionButtonProps extends Omit<ButtonGroupItem, 'key' | 'onClick' | 'disabled'> {
|
|
7
|
-
/**
|
|
8
|
-
* @description 按钮是否可见
|
|
9
|
-
*/
|
|
10
|
-
visible?: boolean | ((selectKeys: Key[]) => boolean);
|
|
11
|
-
/**
|
|
12
|
-
* @description 按钮是否禁用(支持函数形式,根据 selectedRowKeys 动态判断)
|
|
13
|
-
*/
|
|
14
|
-
disabled?: boolean | ((selectKeys: Key[]) => boolean);
|
|
15
|
-
/**
|
|
16
|
-
* @description 点击回调
|
|
17
|
-
*/
|
|
18
|
-
onClick?: (selectKeys: Key[]) => void | Promise<void>;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* useOptionRender Hook 的 Props 类型
|
|
22
|
-
*/
|
|
23
|
-
export interface UseOptionRenderProps {
|
|
24
|
-
/**
|
|
25
|
-
* @description 是否显示新增按钮
|
|
26
|
-
* @default true
|
|
27
|
-
*/
|
|
28
|
-
showCreateBtn?: boolean;
|
|
29
|
-
/**
|
|
30
|
-
* @description 新增按钮属性,可以是函数,接收 selectedRowKeys 作为参数,设置为 false 时不显示
|
|
31
|
-
*/
|
|
32
|
-
createBtnProps?: OptionButtonProps | ((selectKeys: Key[]) => OptionButtonProps) | false;
|
|
33
|
-
/**
|
|
34
|
-
* @description 新增按钮点击回调
|
|
35
|
-
*/
|
|
36
|
-
onCreate?: (selectKeys: Key[]) => void | Promise<void>;
|
|
37
|
-
/**
|
|
38
|
-
* @description 是否显示批量删除按钮
|
|
39
|
-
* @default false
|
|
40
|
-
*/
|
|
41
|
-
showBatchRemoveBtn?: boolean;
|
|
42
|
-
/**
|
|
43
|
-
* @description 批量删除按钮属性,可以是函数,接收 selectedRowKeys 作为参数,设置为 false 时不显示
|
|
44
|
-
*/
|
|
45
|
-
batchRemoveBtnProps?: OptionButtonProps | ((selectKeys: Key[]) => OptionButtonProps) | false;
|
|
46
|
-
/**
|
|
47
|
-
* @description 批量删除点击回调
|
|
48
|
-
*/
|
|
49
|
-
onBatchRemove?: (selectKeys: Key[]) => void | Promise<void>;
|
|
50
|
-
/**
|
|
51
|
-
* @description 批量删除确认方式
|
|
52
|
-
* @default 'modal'
|
|
53
|
-
*/
|
|
54
|
-
batchRemoveConfirmMode?: 'modal' | 'popconfirm';
|
|
55
|
-
/**
|
|
56
|
-
* @description 自定义操作按钮列表,设置为 false 或 null 时不显示对应按钮
|
|
57
|
-
*/
|
|
58
|
-
optionExtra?: (OptionButtonProps | ((selectKeys: Key[]) => OptionButtonProps) | false | null)[];
|
|
59
|
-
/**
|
|
60
|
-
* @description ButtonGroup 最大显示按钮数量
|
|
61
|
-
* @default 3
|
|
62
|
-
*/
|
|
63
|
-
maxCount?: number;
|
|
64
|
-
/**
|
|
65
|
-
* @description ButtonGroup 自定义类名
|
|
66
|
-
*/
|
|
67
|
-
headerClassName?: string;
|
|
68
|
-
/**
|
|
69
|
-
* @description ButtonGroup 自定义样式
|
|
70
|
-
*/
|
|
71
|
-
headerStyle?: React.CSSProperties;
|
|
72
|
-
}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { type Key } from "react";
|
|
2
|
-
import { type ButtonGroupItem } from "../../ButtonGroup";
|
|
3
|
-
import { type OptionButtonProps } from "./types";
|
|
4
|
-
/**
|
|
5
|
-
* 批量删除按钮配置
|
|
6
|
-
*/
|
|
7
|
-
export interface UseBatchRemoveButtonProps {
|
|
8
|
-
/**
|
|
9
|
-
* @description 是否显示批量删除按钮
|
|
10
|
-
*/
|
|
11
|
-
showBatchRemoveBtn?: boolean;
|
|
12
|
-
/**
|
|
13
|
-
* @description 批量删除按钮属性
|
|
14
|
-
*/
|
|
15
|
-
batchRemoveBtnProps?: OptionButtonProps | ((selectKeys: Key[]) => OptionButtonProps) | false;
|
|
16
|
-
/**
|
|
17
|
-
* @description 批量删除点击回调
|
|
18
|
-
*/
|
|
19
|
-
onBatchRemove?: (selectKeys: Key[]) => void | Promise<void>;
|
|
20
|
-
/**
|
|
21
|
-
* @description 批量删除确认方式
|
|
22
|
-
*/
|
|
23
|
-
batchRemoveConfirmMode?: 'modal' | 'popconfirm';
|
|
24
|
-
/**
|
|
25
|
-
* @description 当前选中的行 keys
|
|
26
|
-
*/
|
|
27
|
-
selectedRowKeys: Key[];
|
|
28
|
-
/**
|
|
29
|
-
* @description 全局 loading 状态
|
|
30
|
-
*/
|
|
31
|
-
loading?: boolean;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* 批量删除按钮 Hook
|
|
35
|
-
* @param props - 配置项
|
|
36
|
-
* @returns 批量删除按钮的 ButtonGroupItem 或 null
|
|
37
|
-
*/
|
|
38
|
-
export declare const useBatchRemoveButton: (props: UseBatchRemoveButtonProps) => ButtonGroupItem | null;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg);var value=info.value}catch(error){reject(error);return}if(info.done){resolve(value)}else{Promise.resolve(value).then(_next,_throw)}}function _async_to_generator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value)}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err)}_next(undefined)})}}function _define_property(obj,key,value){if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _object_spread(target){for(var i=1;i<arguments.length;i++){var source=arguments[i]!=null?arguments[i]:{};var ownKeys=Object.keys(source);if(typeof Object.getOwnPropertySymbols==="function"){ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))}ownKeys.forEach(function(key){_define_property(target,key,source[key])})}return target}function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);if(enumerableOnly){symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable})}keys.push.apply(keys,symbols)}return keys}function _object_spread_props(target,source){source=source!=null?source:{};if(Object.getOwnPropertyDescriptors){Object.defineProperties(target,Object.getOwnPropertyDescriptors(source))}else{ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key))})}return target}function _ts_generator(thisArg,body){var f,y,t,_={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},g=Object.create((typeof Iterator==="function"?Iterator:Object).prototype);return g.next=verb(0),g["throw"]=verb(1),g["return"]=verb(2),typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(g&&(g=0,op[0]&&(_=0)),_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]<t[3])){_.label=op[1];break}if(op[0]===6&&_.label<t[1]){_.label=t[1];t=op;break}if(t&&_.label<t[2]){_.label=t[2];_.ops.push(op);break}if(t[2])_.ops.pop();_.trys.pop();continue}op=body.call(thisArg,_)}catch(e){op=[6,e];y=0}finally{f=t=0}if(op[0]&5)throw op[1];return{value:op[0]?op[1]:void 0,done:true}}}import{useCallback,useMemo}from"react";import{DeleteOutlined}from"@ant-design/icons";import{useLocale}from"../../locale";import{Modal}from"antd";import{convertToButtonItem}from"./utils";export var useBatchRemoveButton=function(props){var messages=useLocale().messages;var _props_showBatchRemoveBtn=props.showBatchRemoveBtn,showBatchRemoveBtn=_props_showBatchRemoveBtn===void 0?false:_props_showBatchRemoveBtn,batchRemoveBtnProps=props.batchRemoveBtnProps,onBatchRemove=props.onBatchRemove,_props_batchRemoveConfirmMode=props.batchRemoveConfirmMode,batchRemoveConfirmMode=_props_batchRemoveConfirmMode===void 0?"modal":_props_batchRemoveConfirmMode,selectedRowKeys=props.selectedRowKeys,_props_loading=props.loading,loading=_props_loading===void 0?false:_props_loading;var handleBatchRemoveClick=useCallback(function(selectKeys){return _async_to_generator(function(){return _ts_generator(this,function(_state){switch(_state.label){case 0:if(!onBatchRemove||selectKeys.length===0){return[2]}if(!(batchRemoveConfirmMode==="modal"))return[3,1];Modal.confirm({title:messages.table.batchRemoveModalTitle,content:messages.table.batchRemoveModalContent.replace("{count}",String(selectKeys.length)),onOk:function(){return _async_to_generator(function(){return _ts_generator(this,function(_state){switch(_state.label){case 0:return[4,onBatchRemove(selectKeys)];case 1:_state.sent();return[2]}})})()},okText:"确定",cancelText:"取消"});return[3,3];case 1:return[4,onBatchRemove(selectKeys)];case 2:_state.sent();_state.label=3;case 3:return[2]}})})()},[onBatchRemove,batchRemoveConfirmMode,messages]);var batchRemoveButton=useMemo(function(){if(!showBatchRemoveBtn||batchRemoveBtnProps===false){return null}var batchRemoveBtnConfig=_object_spread({variant:"outlined",color:"danger"},batchRemoveBtnProps||{});var batchRemoveBtn=convertToButtonItem(batchRemoveBtnConfig,selectedRowKeys,"$batchRemove",handleBatchRemoveClick);if(!batchRemoveBtn){return null}if(!batchRemoveBtn.icon){batchRemoveBtn.icon=React.createElement(DeleteOutlined,null)}if(batchRemoveBtn.order===undefined){batchRemoveBtn.order=2}if(!batchRemoveBtn.label){batchRemoveBtn.label=messages.table.batchRemoveBtnText}return _object_spread_props(_object_spread({},batchRemoveBtn),{disabled:selectedRowKeys.length===0||batchRemoveBtn.disabled,loading:loading})},[showBatchRemoveBtn,batchRemoveBtnProps,selectedRowKeys,handleBatchRemoveClick,messages,loading]);return batchRemoveButton};
|