@knockout-js/org
Version:
Knockout组织相关组件
197 lines (196 loc) • 9.51 kB
JavaScript
import { _ as _async_to_generator } from "@swc/helpers/_/_async_to_generator";
import { _ as _object_spread } from "@swc/helpers/_/_object_spread";
import { _ as _object_spread_props } from "@swc/helpers/_/_object_spread_props";
import { _ as _sliced_to_array } from "@swc/helpers/_/_sliced_to_array";
import { _ as _to_consumable_array } from "@swc/helpers/_/_to_consumable_array";
import { _ as _ts_generator } from "@swc/helpers/_/_ts_generator";
import { jsx as _jsx } from "@ice/jsx-runtime/jsx-runtime";
import { useState } from "react";
import { ProTable } from "@ant-design/pro-components";
import { gid, instanceName } from "@knockout-js/api";
import { useLocale } from "../locale";
import { gql, paging } from "@knockout-js/ice-urql/request";
import { Modal } from "@knockout-js/layout";
export var EnumAppKind = {
web: {
text: "web"
},
native: {
text: "native"
},
server: {
text: "server"
}
};
var orgAppListQuery = gql("query orgAppList($gid: GID!,$first: Int,$orderBy:AppOrder,$where:AppWhereInput){\n node(id:$gid){\n ... on Org{\n id\n apps(first:$first,orderBy: $orderBy,where: $where){\n totalCount,pageInfo{ hasNextPage,hasPreviousPage,startCursor,endCursor }\n edges{\n cursor,node{\n id,name,code,kind,comments,status\n }\n }\n }\n }\n }\n}");
var appListQuery = gql("query appList($first: Int,$orderBy:AppOrder,$where:AppWhereInput){\n apps(first:$first,orderBy: $orderBy,where: $where){\n totalCount,pageInfo{ hasNextPage,hasPreviousPage,startCursor,endCursor }\n edges{\n cursor,node{\n id,name,code,kind,comments,status\n }\n }\n }\n}");
export default function(props) {
var locale = useLocale("AppModal"), glocale = useLocale("global"), columns = [
// 有需要排序配置 sorter: true
{
title: locale.name,
dataIndex: "name",
width: 120
},
{
title: locale.code,
dataIndex: "code",
width: 120
},
{
title: locale.type,
dataIndex: "kind",
filters: true,
search: false,
width: 100,
valueEnum: EnumAppKind
},
{
title: locale.desc,
dataIndex: "comments",
width: 160,
search: false
}
], _useState = _sliced_to_array(useState([]), 2), dataSource = _useState[0], setDataSource = _useState[1], _useState1 = _sliced_to_array(useState([]), 2), selectedRowKeys = _useState1[0], setSelectedRowKeys = _useState1[1];
return /*#__PURE__*/ _jsx(Modal, _object_spread_props(_object_spread({
width: 900,
title: props.title
}, props.modalProps), {
open: props.open,
onOk: function() {
props.onClose(dataSource.filter(function(item) {
return selectedRowKeys.includes(item.id);
}));
},
onCancel: function() {
props.onClose();
},
children: /*#__PURE__*/ _jsx(ProTable, _object_spread_props(_object_spread({
size: "small",
scroll: {
x: "max-content",
y: 300
}
}, props.proTableProps), {
rowKey: "id",
search: {
searchText: glocale.query,
resetText: glocale.reset,
labelWidth: "auto"
},
options: false,
columns: columns,
request: function() {
var _ref = _async_to_generator(function(params, sort, filter) {
var table, where, _result_data_node, _result_data, result, _result_data_node_apps_edges, _result_data1, result1, _result_data_apps_edges;
return _ts_generator(this, function(_state) {
switch(_state.label){
case 0:
table = {
data: [],
success: true,
total: 0
}, where = {};
where.nameContains = params.name;
where.codeContains = params.code;
where.kindIn = filter.kind;
if (!props.orgId) return [
3,
2
];
return [
4,
paging(orgAppListQuery, {
gid: gid("Org", props.orgId),
first: params.pageSize,
where: where
}, params.current || 1, {
instanceName: instanceName.UCENTER
})
];
case 1:
result = _state.sent();
if (((_result_data = result.data) === null || _result_data === void 0 ? void 0 : (_result_data_node = _result_data.node) === null || _result_data_node === void 0 ? void 0 : _result_data_node.__typename) === "Org") {
;
(_result_data_node_apps_edges = result.data.node.apps.edges) === null || _result_data_node_apps_edges === void 0 ? void 0 : _result_data_node_apps_edges.forEach(function(item) {
var _item;
if ((_item = item) === null || _item === void 0 ? void 0 : _item.node) {
table.data.push(item.node);
}
});
table.total = result.data.node.apps.totalCount;
}
return [
3,
4
];
case 2:
return [
4,
paging(appListQuery, {
first: params.pageSize,
where: where
}, params.current || 1, {
instanceName: instanceName.UCENTER
})
];
case 3:
result1 = _state.sent();
if ((_result_data1 = result1.data) === null || _result_data1 === void 0 ? void 0 : _result_data1.apps.totalCount) {
;
(_result_data_apps_edges = result1.data.apps.edges) === null || _result_data_apps_edges === void 0 ? void 0 : _result_data_apps_edges.forEach(function(item) {
var _item;
if ((_item = item) === null || _item === void 0 ? void 0 : _item.node) {
table.data.push(item.node);
}
});
table.total = result1.data.apps.totalCount;
}
_state.label = 4;
case 4:
setDataSource(table.data);
return [
2,
table
];
}
});
});
return function(params, sort, filter) {
return _ref.apply(this, arguments);
};
}(),
pagination: {
showSizeChanger: true
},
rowSelection: {
selectedRowKeys: selectedRowKeys,
onChange: function(selectedRowKeys) {
setSelectedRowKeys(selectedRowKeys);
},
type: props.isMultiple ? "checkbox" : "radio"
},
onRow: function(record) {
return {
onClick: function() {
if (props.isMultiple) {
if (selectedRowKeys.includes(record.id)) {
setSelectedRowKeys(selectedRowKeys.filter(function(id) {
return id != record.id;
}));
} else {
selectedRowKeys.push(record.id);
setSelectedRowKeys(_to_consumable_array(selectedRowKeys));
}
} else {
setSelectedRowKeys([
record.id
]);
}
}
};
}
}))
}));
};
//# sourceMappingURL=index.js.map