@next-libs/cmdb-instances 7.28.4 → 7.28.5
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/cjs/instance-list/InstanceList.js +1 -1
- package/dist/cjs/instance-list/InstanceList.js.map +1 -1
- package/dist/cjs/instance-list-drawer/InstanceListDrawer.js +6 -1
- package/dist/cjs/instance-list-drawer/InstanceListDrawer.js.map +1 -1
- package/dist/cjs/instance-list-table/InstanceListTable.js +1 -1
- package/dist/cjs/instance-list-table/InstanceListTable.js.map +1 -1
- package/dist/esm/instance-list/InstanceList.js +1 -1
- package/dist/esm/instance-list/InstanceList.js.map +1 -1
- package/dist/esm/instance-list-drawer/InstanceListDrawer.js +6 -1
- package/dist/esm/instance-list-drawer/InstanceListDrawer.js.map +1 -1
- package/dist/esm/instance-list-table/InstanceListTable.js +1 -1
- package/dist/esm/instance-list-table/InstanceListTable.js.map +1 -1
- package/package.json +2 -2
|
@@ -28,6 +28,7 @@ function InstanceListDrawer(props) {
|
|
|
28
28
|
const [state, setState] = (0, _react.useReducer)(reducer, {
|
|
29
29
|
open: false,
|
|
30
30
|
objectId: null,
|
|
31
|
+
detailUrlTemplates: undefined,
|
|
31
32
|
drawerTitle: "",
|
|
32
33
|
query: null
|
|
33
34
|
});
|
|
@@ -47,10 +48,14 @@ function InstanceListDrawer(props) {
|
|
|
47
48
|
}, _i18next.default.t(`${_constants.NS_LIBS_CMDB_INSTANCES}:${_constants.K.BACK}`)));
|
|
48
49
|
};
|
|
49
50
|
const handleRelationMoreIconClick = record => {
|
|
51
|
+
var _Object$values;
|
|
50
52
|
setState({
|
|
51
53
|
open: true,
|
|
52
54
|
objectId: record.objectId,
|
|
53
55
|
drawerTitle: record.left_name,
|
|
56
|
+
detailUrlTemplates: {
|
|
57
|
+
[record.objectId]: (_Object$values = Object.values(props.detailUrlTemplates || {})) === null || _Object$values === void 0 ? void 0 : _Object$values[0]
|
|
58
|
+
},
|
|
54
59
|
query: {
|
|
55
60
|
[`${record.right_id}.instanceId`]: record.instanceId
|
|
56
61
|
}
|
|
@@ -75,7 +80,7 @@ function InstanceListDrawer(props) {
|
|
|
75
80
|
objectId: state.objectId,
|
|
76
81
|
onRelationMoreIconClick: handleRelationMoreIconClick,
|
|
77
82
|
relationLimit: _relationLimit,
|
|
78
|
-
detailUrlTemplates:
|
|
83
|
+
detailUrlTemplates: state.detailUrlTemplates,
|
|
79
84
|
presetConfigs: {
|
|
80
85
|
query: state.query
|
|
81
86
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InstanceListDrawer.js","names":["_react","_interopRequireWildcard","require","_antd","_i18next","_interopRequireDefault","_constants","_InstanceList","_i18n","_brickKit","addResourceBundle","reducer","prevState","updatedProperty","DEFAULT_RELATION_LIMIT","InstanceListDrawer","props","_ref","_props$relationLimit","_getRuntime$getMiscSe","_props$drawerZIndex","state","setState","useReducer","open","objectId","drawerTitle","query","handleClose","renderFooter","default","createElement","Fragment","Button","onClick","type","i18n","t","NS_LIBS_CMDB_INSTANCES","K","BACK","handleRelationMoreIconClick","record","left_name","right_id","instanceId","_relationLimit","relationLimit","getRuntime","getMiscSettings","defaultRelationLimit","LegacyInstanceListWrapper","_extends2","onRelationMoreIconClick","Drawer","title","visible","width","drawerWidth","onClose","destroyOnClose","footer","zIndex","drawerZIndex","footerStyle","background","
|
|
1
|
+
{"version":3,"file":"InstanceListDrawer.js","names":["_react","_interopRequireWildcard","require","_antd","_i18next","_interopRequireDefault","_constants","_InstanceList","_i18n","_brickKit","addResourceBundle","reducer","prevState","updatedProperty","DEFAULT_RELATION_LIMIT","InstanceListDrawer","props","_ref","_props$relationLimit","_getRuntime$getMiscSe","_props$drawerZIndex","state","setState","useReducer","open","objectId","detailUrlTemplates","undefined","drawerTitle","query","handleClose","renderFooter","default","createElement","Fragment","Button","onClick","type","i18n","t","NS_LIBS_CMDB_INSTANCES","K","BACK","handleRelationMoreIconClick","record","_Object$values","left_name","Object","values","right_id","instanceId","_relationLimit","relationLimit","getRuntime","getMiscSettings","defaultRelationLimit","LegacyInstanceListWrapper","_extends2","onRelationMoreIconClick","Drawer","title","visible","width","drawerWidth","onClose","destroyOnClose","footer","zIndex","drawerZIndex","footerStyle","background","presetConfigs","selectDisabled","ipCopy","target","relatedToMe","relatedToMeDisabled","searchDisabled","sortDisabled","advancedSearchDisabled","aliveHostsDisabled","moreButtonsDisabled","showFixedHeader","showTooltip","relationLinkDisabled","showSizeChanger","useExternalCmdbApi","externalSourceId","useAutoDiscoveryProvider","useInstanceArchiveProvider","saveFieldsBackend"],"sources":["../../../src/instance-list-drawer/InstanceListDrawer.tsx"],"sourcesContent":["import React, { useReducer } from \"react\";\nimport { Button, Drawer } from \"antd\";\nimport i18n from \"i18next\";\nimport { K, NS_LIBS_CMDB_INSTANCES } from \"../i18n/constants\";\nimport {\n LegacyInstanceListWrapper,\n InstanceListProps,\n} from \"../instance-list/InstanceList\";\nimport { addResourceBundle } from \"../i18n\";\nimport { getRuntime } from \"@next-core/brick-kit\";\naddResourceBundle();\n\nexport interface InstanceListDrawerProps extends InstanceListProps {\n drawerZIndex?: number;\n drawerWidth?: number;\n}\n/* istanbul ignore next */\nconst reducer = (\n prevState: InstanceListDrawerState,\n updatedProperty: Partial<InstanceListDrawerState>\n): InstanceListDrawerState => {\n return {\n ...prevState,\n ...updatedProperty,\n };\n};\n\nconst DEFAULT_RELATION_LIMIT = 5;\n\ninterface InstanceListDrawerState {\n open: boolean;\n objectId: string;\n drawerTitle: string;\n query: Record<string, any>;\n detailUrlTemplates: Record<string, any>;\n}\n\nexport function InstanceListDrawer(\n props: InstanceListDrawerProps\n): React.ReactElement {\n const [state, setState] = useReducer(reducer, {\n open: false,\n objectId: null,\n detailUrlTemplates: undefined,\n drawerTitle: \"\",\n query: null,\n });\n\n /* istanbul ignore next */\n const handleClose = (): void => {\n setState({\n open: false,\n drawerTitle: \"\",\n });\n };\n\n const renderFooter = (): React.ReactElement => {\n return (\n <>\n <Button\n data-testid={\"back-button\"}\n onClick={handleClose}\n type=\"default\"\n >\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.BACK}`)}\n </Button>\n </>\n );\n };\n const handleRelationMoreIconClick = (record: Record<string, any>): void => {\n setState({\n open: true,\n objectId: record.objectId,\n drawerTitle: record.left_name,\n detailUrlTemplates: {\n [record.objectId]: Object.values(props.detailUrlTemplates || {})?.[0],\n },\n query: {\n [`${record.right_id}.instanceId`]: record.instanceId,\n },\n });\n };\n\n const _relationLimit =\n props.relationLimit ??\n (getRuntime().getMiscSettings()?.defaultRelationLimit as number) ??\n DEFAULT_RELATION_LIMIT;\n return (\n <>\n <LegacyInstanceListWrapper\n {...props}\n onRelationMoreIconClick={handleRelationMoreIconClick}\n relationLimit={_relationLimit}\n />\n <Drawer\n title={state.drawerTitle}\n visible={state.open}\n width={props.drawerWidth || 900}\n onClose={handleClose}\n destroyOnClose={true}\n footer={renderFooter()}\n zIndex={props.drawerZIndex ?? 1000}\n footerStyle={{ background: \"var(--color-fill-bg-base-3)\" }}\n >\n <InstanceListDrawer\n objectId={state.objectId}\n onRelationMoreIconClick={handleRelationMoreIconClick}\n relationLimit={_relationLimit}\n detailUrlTemplates={state.detailUrlTemplates}\n presetConfigs={{ query: state.query }}\n selectDisabled={true}\n ipCopy={props.ipCopy}\n target={props.target}\n relatedToMe={props.relatedToMe}\n relatedToMeDisabled={props.relatedToMeDisabled}\n searchDisabled={props.searchDisabled}\n sortDisabled={props.sortDisabled}\n advancedSearchDisabled={props.advancedSearchDisabled}\n aliveHostsDisabled={props.aliveHostsDisabled}\n moreButtonsDisabled={props.moreButtonsDisabled}\n showFixedHeader={props.showFixedHeader}\n showTooltip={props.showTooltip}\n relationLinkDisabled={props.relationLinkDisabled}\n showSizeChanger={props.showSizeChanger}\n useExternalCmdbApi={props.useExternalCmdbApi}\n externalSourceId={props.externalSourceId}\n useAutoDiscoveryProvider={props.useAutoDiscoveryProvider}\n useInstanceArchiveProvider={props.useInstanceArchiveProvider}\n saveFieldsBackend={props.saveFieldsBackend}\n />\n </Drawer>\n </>\n );\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -213,7 +213,7 @@ class LegacyInstanceListTable extends _react.default.Component {
|
|
|
213
213
|
}
|
|
214
214
|
getChangeColumns(ids) {
|
|
215
215
|
const columns = [];
|
|
216
|
-
(0, _cmdbUtils.forEachAvailableFields)((0, _cmdbUtils.modifyModelData)(this.props.modelData), (attr, firstColumns) => columns.push(this.setColumnSortOrder(this.getAttributeColumnData(attr, this.props.modelData, firstColumns))), (relation, sides, firstColumns) => columns.push(this.setColumnSortOrder(this.getRelationColumnData(relation, this.props.modelData, sides, firstColumns))), ids);
|
|
216
|
+
(0, _cmdbUtils.forEachAvailableFields)((0, _cmdbUtils.modifyModelData)(this.props.modelData), (attr, firstColumns) => columns.push(this.setColumnSortOrder(this.getAttributeColumnData(attr, this.props.modelData, firstColumns))), (relation, sides, firstColumns) => columns.push(this.setColumnSortOrder(this.getRelationColumnData(relation, this.props.modelData, sides, firstColumns))), this.props.modelData.isAbstract ? ids === null || ids === void 0 ? void 0 : ids.filter(i => i !== "_object_id") : ids);
|
|
217
217
|
const idColumnMap = new Map();
|
|
218
218
|
columns.forEach(column => idColumnMap.set(column.dataIndex, column));
|
|
219
219
|
let fieldIds;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InstanceListTable.js","names":["_react","_interopRequireDefault","require","_reactI18next","_classnames","_antd","_lodash","_icons","_brickTypes","_cmdbSdk","_brickHttp","_basicComponents","_cmdbUtils","_ModelAttributeFormControl","_structComponents","_InstanceListTableModule","_utils","_brickKit","_constants","_i18next","_CmdbUrlLink","_FloatDisplayBrick","_JsonDisplayBrick","_XmlDisplayBrick","SortOrder","SELF_RENDER_COLUMNS","HOST","key","brick","CLUSTER","properties","fields","value","showBg","LegacyInstanceListTable","React","Component","constructor","props","_SELF_RENDER_COLUMNS$","_this$props$propertyD","_this$props$onColumns","_this$props4","_defineProperty2","default","createElement","Fragment","i18n","t","NS_LIBS_CMDB_INSTANCES","K","INSTANCE_SOURCE","Tooltip","title","INSTANCE_SOURCE_TOOLTIP","className","styles","titleTooltipIcon","GeneralIcon","icon","lib","theme","pagination","filters","sorter","extra","_filters$_object_id","newInstanceSourceQuery","_object_id","state","instanceSourceQuery","onInstanceSourceChange","current","pageSize","_this$props$onPaginat","_this$props","onPaginationChange","call","page","Array","isArray","asc","Ascend","Descend","order","column","field","undefined","sort","_this$props$onSorting","_this$props2","onSortingChange","selectedRowKeys","selectedRows","_this$props$onSelecti","_this$props3","onSelectionChange","selectedKeys","selectedItems","ev","dataIndex","_selectedRowKeys","stopPropagation","filter","v","objectId","modelData","length","message","warning","SELECT_COPY_DATA","k","every","row","ROM_KEY","_resp","resp","params","query","instanceId","$in","page_size","useExternalCmdbApi","sourceId","externalSourceId","ignore_missing_field_error","http","post","InstanceApi_postSearch","list","inputDom","document","Set","map","join","body","appendChild","select","execCommand","remove","success","COPY_SUCCESS","forEach","config","keyDisplayConfigMap","propertyDisplayConfigs","fieldIds","sortedColumns","getChangeColumns","inheritanceModelIdNameMap","defaultPagination","disabled","paginationDisabled","pageSizeOptions","showSizeChanger","showTotal","totals","totalText","PAGINATION_TOTAL_TEXT","total","PAGINATION_TOTAL_UNIT","currentColumns","getMergedColumns","extraColumns","columns","_this$props$hiddenCol","hiddenColumns","includes","onColumnsChange","instanceListData","openConfirmModal","index","confirm","Modal","DELETE_INSTANCE_CONFIRM_MSG","okText","CONFIRM","okType","cancelText","CANCEL","onOk","processList","splice","handleDeleteFunction","ids","forEachAvailableFields","modifyModelData","attr","firstColumns","push","setColumnSortOrder","getAttributeColumnData","relation","sides","getRelationColumnData","idColumnMap","Map","set","view","attr_order","id","get","delete","isOperate","OPERATION","structTableTd","fixed","render","_text","record","Button","type","DeleteOutlined","style","color","onClick","mergedColumns","processExtraColumns","isAbstract","instanceSourceTitle","filterInstanceSourceDisabled","text","filterMultiple","filteredValue","_this$inheritanceMode","Tag","c","recordUseBrickDataMap","useBrick","processedColumn","data","cellData","rowData","BrickAsComponent","componentDidMount","_this$props$onColumns2","_this$props5","isNil","parentObjectId","CmdbObjectApi_getIdMapName","showFields","changeColumns","_this$props$hiddenCol2","setState","UNSAFE_componentWillReceiveProps","nextProps","_this$props$onColumns3","_this$props6","_this$props$hiddenCol3","handleClickItem","e","onClickItem","onClickItemV2","getCustomPropertyRender","isPrimary","ref","el","Object","assign","dataSource","getDisplayConfigColumn","getUseBrickConfigRender","getLinkContent","node","display","iconWrap","category","linkKey","getSpecialUrlTemplates","object","url","isRenderStructList","role","showTooltip","placement","JUMP_TO","name","INSTANCE_DETAIL","iconWrapOfStruct","Link","to","relationMoreIcon","attribute","instanceListTableCell","displayConfig","getInstanceNameKeys","tempColumns","attrValueType","ModelAttributeValueType","STRUCT","ATTACHMENT","STRUCT_LIST","sortDisabled","PropertyDisplayType","values","valueColorMap","isLegacy","Popover","overlayStyle","maxWidth","width","height","content","StructTable","structData","padding","VIEW","ARR","ENUMS","BOOLEAN","JSON","JsonDisplayBrick","isNumControlEllipsis","STRING","mode","XmlDisplayBrick","repeat","FLOAT","FloatDisplayBrick","floatValue","customRules","isBoolean","compact","toString","split","valStr","item","detailUrlTemplates","detailUrlTemplate","getTemplateFromMap","_this$inheritanceMode2","parseTemplate","_extends2","target","handleRelationMoreIconClick","_this$props7","_this$props7$onRelati","onRelationMoreIconClick","this","instances","that","leftName","rightId","nameKeys","idObjectMap","filterInstances","slice","relationLimit","instanceNodes","instance","subName","instanceName","_this$props$separator","separatorUsedInRelationData","relationLinkDisabled","relationLink","_this$props$separator2","instanceNodesWrapper","classnames","instanceListTableRelationWrapper","instanceListTableRelationText","RELATION_INSTANCE_TOOLTIP","trigger","left_name","right_id","sortOrder","componentDidUpdate","prevProps","_this$props$onColumns4","_this$props8","_this$props$configPro","_this$props$configPro2","_this$state$columns$l","_this$state$columns","_this$props$configPro3","_this$props$configPro4","_this$props$configPro5","rowSelectionType","rowSelection","selectDisabled","preserveSelectedRowKeys","onChange","onSelectChange","classes","shouldEllipsis","autoBreakLine","tableWrapper","_this$props$modelData","_this$props$modelData2","_this$props$modelData3","_this$props$modelData4","attrList","find","CmdbUrlLink","linkStr","ipCopy","filterDropdown","filterIcon","copyWrap","COPY_SELECTED_IP","CopyOutlined","fontSize","handelIpCopyText","overflowX","overflowY","Table","showCustomizedSerialNumber","align","customizedSerialNumber","rowKey","scroll","x","fixedHeader","configProps","y","expandable","childrenColumnName","omit","exports","withProviderDeclare","externalPostSearchV3","useProvider","cache","externalGetIdMapName","InstanceListTable","memo","withTranslation"],"sources":["../../../src/instance-list-table/InstanceListTable.tsx"],"sourcesContent":["import React from \"react\";\nimport { withTranslation, WithTranslation } from \"react-i18next\";\nimport classnames from \"classnames\";\nimport {\n Button,\n Popover,\n Table,\n Tag,\n Tooltip,\n Modal,\n message,\n Typography,\n} from \"antd\";\nimport { isNil, isBoolean, compact, map, divide, omit } from \"lodash\";\nimport { CopyOutlined, DeleteOutlined } from \"@ant-design/icons\";\nimport { ColumnType, TablePaginationConfig, TableProps } from \"antd/lib/table\";\nimport {\n SorterResult,\n TableCurrentDataSource,\n TableRowSelection,\n} from \"antd/lib/table/interface\";\nimport {\n PropertyDisplay,\n PropertyDisplayConfig,\n PropertyDisplayType,\n ReadPaginationChangeDetail,\n ReadSelectionChangeDetail,\n ReadSortingChangeDetail,\n UseBrickConf,\n} from \"@next-core/brick-types\";\nimport {\n CmdbModels,\n InstanceApi_PostSearchV3ResponseBody,\n CmdbObjectApi_getIdMapName,\n InstanceApi_postSearch,\n} from \"@next-sdk/cmdb-sdk\";\nimport { http } from \"@next-core/brick-http\";\nimport { Link, GeneralIcon } from \"@next-libs/basic-components\";\nimport {\n forEachAvailableFields,\n getInstanceNameKeys,\n getTemplateFromMap,\n parseTemplate,\n modifyModelData,\n RelationIdKeys,\n RelationNameKeys,\n RelationObjectIdKeys,\n RelationObjectSides,\n} from \"@next-libs/cmdb-utils\";\nimport { ModelAttributeValueType } from \"../model-attribute-form-control/ModelAttributeFormControl\";\nimport { Attribute, StructTable } from \"../struct-components\";\nimport styles from \"./InstanceListTable.module.css\";\nimport { customRules } from \"./utils\";\nimport { BrickAsComponent, useProvider } from \"@next-core/brick-kit\";\nimport { NS_LIBS_CMDB_INSTANCES, K } from \"../i18n/constants\";\nimport i18n from \"i18next\";\nimport { CmdbUrlLink } from \"../cmdb-url-link/CmdbUrlLink\";\nimport { FloatDisplayBrick } from \"../float-display-brick/FloatDisplayBrick\";\nimport { JsonDisplayBrick } from \"../json-display-brick/JsonDisplayBrick\";\nimport { XmlDisplayBrick } from \"../xml-display-brick/XmlDisplayBrick\";\n// const { Paragraph } = Typography;\nexport interface CustomColumn extends ColumnType<Record<string, unknown>> {\n useBrick: UseBrickConf;\n}\n\nexport type UseBrickAndPropertyDisplayConfig = PropertyDisplayConfig & {\n useBrick?: UseBrickConf;\n};\n\nexport interface InstanceListUseBrickData {\n cellData: unknown;\n rowData: Record<string, unknown>;\n index: number;\n}\n\nenum SortOrder {\n Ascend = \"ascend\",\n Descend = \"descend\",\n}\n\nconst SELF_RENDER_COLUMNS: {\n [objectId: string]: UseBrickAndPropertyDisplayConfig[];\n} = {\n HOST: [\n {\n key: \"_agentStatus\",\n brick: \"presentational-bricks.agent-status\",\n },\n ],\n CLUSTER: [\n {\n key: \"type\",\n brick: \"presentational-bricks.brick-cluster-type\",\n properties: {\n fields: {\n value: \"type\",\n },\n showBg: true,\n },\n },\n ],\n};\n\nexport interface InstanceListTableProps extends WithTranslation {\n detailUrlTemplates?: Record<string, string>;\n fieldIds?: string[];\n idObjectMap: Record<string, Partial<CmdbModels.ModelCmdbObject>>;\n modelData: Partial<CmdbModels.ModelCmdbObject>;\n instanceListData: InstanceApi_PostSearchV3ResponseBody;\n sort?: string;\n asc?: boolean;\n propertyDisplayConfigs?: UseBrickAndPropertyDisplayConfig[];\n selectDisabled?: boolean;\n autoBreakLine?: boolean;\n sortDisabled?: boolean;\n instanceSourceQuery?: string;\n inheritanceModelIdNameMap?: Record<string, string>;\n filterInstanceSourceDisabled?: boolean;\n onClickItem?(\n evt: React.MouseEvent<HTMLAnchorElement, MouseEvent>,\n id: string\n ): void;\n onClickItemV2?(\n evt: React.MouseEvent<HTMLAnchorElement, MouseEvent>,\n record: Record<string, any>\n ): void;\n onPaginationChange?(pagination: ReadPaginationChangeDetail): void;\n onSortingChange?(sorting: ReadSortingChangeDetail): void;\n onSelectionChange?(selection: ReadSelectionChangeDetail): void;\n onInstanceSourceChange?(instanceSourceQuery: string): void;\n relationLinkDisabled?: boolean;\n paginationDisabled?: boolean;\n pageSizeOptions?: string[];\n showSizeChanger?: boolean;\n selectedRowKeys?: string[];\n configProps?: TableProps<Record<string, any>>;\n extraColumns?: CustomColumn[];\n isOperate?: boolean;\n handleDeleteFunction?: (v: any[]) => void;\n target?: string;\n ipCopy?: boolean;\n separatorUsedInRelationData?: string;\n showTooltip?: boolean;\n fixedHeader?: boolean;\n rowSelectionType?: \"checkbox\" | \"radio\";\n onColumnsChange?(columns: ColumnType<{ dataIndex: string }>[]): void;\n useExternalCmdbApi?: boolean;\n externalSourceId?: string;\n hiddenColumns?: Array<string>;\n showCustomizedSerialNumber?: boolean;\n // 关系查询限制数量\n relationLimit?: number;\n onRelationMoreIconClick?(record: Record<string, any>): void;\n}\n\ninterface InstanceListTableState {\n list: Record<string, any>[];\n instanceSourceQuery?: string;\n columns?: ColumnType<Record<string, any>>[];\n pagination: TablePaginationConfig;\n defaultPagination: TablePaginationConfig;\n}\n\nexport class LegacyInstanceListTable extends React.Component<\n InstanceListTableProps,\n InstanceListTableState\n> {\n keyDisplayConfigMap: Record<string, UseBrickAndPropertyDisplayConfig> = {};\n recordUseBrickDataMap: Map<unknown, InstanceListUseBrickData>;\n inheritanceModelIdNameMap: Record<string, string>;\n selectedRows: Record<string, any>[] = [];\n ROM_KEY = \"instanceId\";\n\n instanceSourceTitle: React.ReactElement = (\n <>\n <span>{i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.INSTANCE_SOURCE}`)}</span>\n <Tooltip\n title={i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.INSTANCE_SOURCE_TOOLTIP}`)}\n >\n <span className={styles.titleTooltipIcon}>\n <GeneralIcon\n icon={{\n lib: \"antd\",\n icon: \"question-circle\",\n theme: \"filled\",\n }}\n />\n </span>\n </Tooltip>\n </>\n );\n\n constructor(props: InstanceListTableProps) {\n super(props);\n const objectId = this.props.modelData.objectId;\n SELF_RENDER_COLUMNS[objectId]?.forEach(\n (config) => (this.keyDisplayConfigMap[config.key] = config)\n );\n this.props.propertyDisplayConfigs?.forEach(\n (config) => (this.keyDisplayConfigMap[config.key] = config)\n );\n const fieldIds = this.props.fieldIds;\n\n const sortedColumns = this.getChangeColumns(fieldIds);\n this.inheritanceModelIdNameMap = this.props.inheritanceModelIdNameMap;\n\n const defaultPagination = {\n disabled: this.props.paginationDisabled,\n pageSizeOptions: this.props.pageSizeOptions,\n showSizeChanger: this.props.showSizeChanger,\n showTotal: (totals: number) => (\n <span className={styles.totalText}>\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.PAGINATION_TOTAL_TEXT}`)}{\" \"}\n <strong className={styles.total}>{totals}</strong>{\" \"}\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.PAGINATION_TOTAL_UNIT}`)}\n </span>\n ),\n };\n const currentColumns = this.getMergedColumns(\n sortedColumns,\n this.props.extraColumns\n );\n // 用于支持父模型情况下,可以自定义隐藏实例来源这一列\n const columns = currentColumns?.filter(\n (v) => !this.props.hiddenColumns?.includes(v.dataIndex as string)\n );\n this.props.onColumnsChange?.(\n columns.map(({ dataIndex }) => ({ dataIndex }))\n );\n this.state = {\n list: this.props.instanceListData.list,\n instanceSourceQuery: this.props.instanceSourceQuery,\n columns: columns,\n pagination: {\n ...defaultPagination,\n total: this.props.instanceListData.total,\n current: this.props.instanceListData.page,\n pageSize: this.props.instanceListData.page_size,\n },\n defaultPagination: defaultPagination,\n };\n }\n // istanbul ignore next\n openConfirmModal(index: number) {\n const confirm = Modal.confirm;\n\n confirm({\n title: i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.DELETE_INSTANCE_CONFIRM_MSG}`\n ),\n okText: i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CONFIRM}`),\n okType: \"danger\",\n cancelText: i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CANCEL}`),\n onOk: () => {\n this.remove(index);\n },\n });\n }\n // istanbul ignore next\n remove(index: number) {\n const processList = [...this.props.instanceListData.list];\n processList.splice(index, 1);\n this.props.handleDeleteFunction(processList);\n }\n getChangeColumns(ids: string[]) {\n const columns: InstanceListTableState[\"columns\"] = [];\n forEachAvailableFields(\n modifyModelData(this.props.modelData),\n (attr, firstColumns?: boolean) =>\n columns.push(\n this.setColumnSortOrder(\n this.getAttributeColumnData(\n attr,\n this.props.modelData,\n firstColumns\n )\n )\n ),\n (relation, sides, firstColumns?: boolean) =>\n columns.push(\n this.setColumnSortOrder(\n this.getRelationColumnData(\n relation,\n this.props.modelData,\n sides,\n firstColumns\n )\n )\n ),\n ids\n );\n const idColumnMap = new Map<string, ColumnType<Record<string, any>>>();\n columns.forEach((column) =>\n idColumnMap.set(column.dataIndex as string, column)\n );\n let fieldIds: string[];\n if (ids?.length) {\n fieldIds = ids;\n } else if (\n this.props.modelData.view &&\n this.props.modelData.view.attr_order\n ) {\n fieldIds = this.props.modelData.view.attr_order;\n }\n let sortedColumns: InstanceListTableState[\"columns\"];\n if (fieldIds) {\n sortedColumns = [];\n fieldIds.forEach((id) => {\n const column = idColumnMap.get(id);\n if (column) {\n sortedColumns.push(column);\n idColumnMap.delete(id);\n }\n });\n idColumnMap.forEach((column) => sortedColumns.push(column));\n } else {\n sortedColumns = columns;\n }\n if (this.props.isOperate) {\n sortedColumns.push({\n title: i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.OPERATION}`),\n className: styles.structTableTd,\n dataIndex: \"operation\",\n fixed: \"right\",\n render: (_text: string, record: any, index: number): any => {\n return (\n <Button\n data-testid={\"button-up-\" + index}\n type=\"link\"\n icon={\n <DeleteOutlined style={{ color: \"var(--theme-red-color)\" }} />\n }\n onClick={() => {\n this.openConfirmModal(index);\n }}\n />\n );\n },\n });\n }\n return sortedColumns;\n }\n\n getMergedColumns(\n columns: ColumnType<Record<string, any>>[],\n extraColumns: CustomColumn[]\n ): ColumnType<Record<string, any>>[] {\n let mergedColumns = extraColumns\n ? [...columns, ...this.processExtraColumns(extraColumns)]\n : columns;\n if (this.props.modelData.isAbstract) {\n mergedColumns = [\n {\n title: this.instanceSourceTitle,\n dataIndex: \"_object_id\",\n ...(!this.props.filterInstanceSourceDisabled\n ? {\n filters: map(this.inheritanceModelIdNameMap, (value, key) => ({\n text: value,\n value: key,\n })),\n filterMultiple: false,\n filteredValue: this.props.instanceSourceQuery && [\n this.props.instanceSourceQuery,\n ],\n }\n : {}),\n render: (value, record, index) => (\n <Tag>{this.inheritanceModelIdNameMap?.[value] || value}</Tag>\n ),\n },\n ...mergedColumns.filter((c) => c.dataIndex !== \"_object_id\"),\n ];\n }\n return mergedColumns;\n }\n\n processExtraColumns(\n extraColumns: CustomColumn[]\n ): ColumnType<Record<string, any>>[] {\n this.recordUseBrickDataMap = new Map();\n\n return extraColumns.map((column) => {\n const { useBrick, ...processedColumn } = column;\n\n if (useBrick) {\n processedColumn.render = (value, record, index) => {\n let data = this.recordUseBrickDataMap.get(record);\n\n if (!data) {\n data = { cellData: value, rowData: record, index };\n this.recordUseBrickDataMap.set(record, data);\n }\n\n return <BrickAsComponent useBrick={useBrick} data={data} />;\n };\n }\n\n return processedColumn;\n });\n }\n\n async componentDidMount(): Promise<void> {\n if (\n this.props.modelData.isAbstract &&\n isNil(this.inheritanceModelIdNameMap)\n ) {\n // useExternalCmdbApi为true 调用外部接口\n // istanbul ignore if\n if (this.props.useExternalCmdbApi) {\n this.inheritanceModelIdNameMap = (\n (await http.post(\n `api/gateway/easyops.api.cmdb.topo_center.ProxyGetIdMapName@1.0.1/api/v1/proxy-get-id-map-name`,\n {\n parentObjectId: this.props.modelData.objectId,\n sourceId: this.props.externalSourceId,\n }\n )) as any\n ).data;\n } else {\n this.inheritanceModelIdNameMap = await CmdbObjectApi_getIdMapName({\n parentObjectId: this.props.modelData.objectId,\n } as any);\n }\n }\n const showFields = this.props.fieldIds;\n const changeColumns = this.getChangeColumns(showFields);\n const currentColumns = this.getMergedColumns(\n changeColumns,\n this.props.extraColumns\n );\n const columns = currentColumns?.filter(\n (v) => !this.props.hiddenColumns?.includes(v.dataIndex as string)\n );\n this.setState({\n columns,\n });\n this.props.onColumnsChange?.(\n columns.map(({ dataIndex }) => ({ dataIndex }))\n );\n }\n\n UNSAFE_componentWillReceiveProps(nextProps: InstanceListTableProps): void {\n this.inheritanceModelIdNameMap = {\n ...this.inheritanceModelIdNameMap,\n ...nextProps.inheritanceModelIdNameMap,\n };\n const showFields = nextProps.fieldIds;\n const changeColumns = this.getChangeColumns(showFields);\n const currentColumns = this.getMergedColumns(\n changeColumns,\n nextProps.extraColumns\n );\n const columns = currentColumns?.filter(\n (v) => !this.props.hiddenColumns?.includes(v.dataIndex as string)\n );\n\n this.setState({\n columns,\n });\n\n this.props.onColumnsChange?.(\n columns.map(({ dataIndex }) => ({ dataIndex }))\n );\n }\n handleClickItem(\n e: React.MouseEvent<HTMLAnchorElement, MouseEvent>,\n record: Record<string, any>\n ): void {\n if (this.props.onClickItem) {\n this.props.onClickItem(e, record.instanceId);\n }\n if (this.props.onClickItemV2) {\n this.props.onClickItemV2(e, record);\n }\n }\n getCustomPropertyRender(\n config: UseBrickAndPropertyDisplayConfig,\n isPrimary?: boolean\n ) {\n // eslint-disable-next-line react/display-name\n return (value: any, record: Record<string, any>, index: number) => {\n return (\n <config.brick\n ref={(el: HTMLElement & PropertyDisplay) => {\n if (el) {\n if (config.properties) {\n Object.assign(\n el,\n {\n dataSource: record,\n objectId: this.props.modelData.objectId,\n },\n config.properties\n );\n } else {\n Object.assign(el, {\n key: config.key,\n value,\n isPrimary,\n });\n }\n }\n }}\n />\n );\n };\n }\n getDisplayConfigColumn(\n config: UseBrickAndPropertyDisplayConfig,\n isPrimary?: boolean\n ) {\n return (value: string[], record: Record<string, any>, index: number) => {\n if (config.brick) {\n return this.getCustomPropertyRender(config, isPrimary)(\n value,\n record,\n index\n );\n } else if (config.useBrick) {\n return this.getUseBrickConfigRender(config)(value, record, index);\n }\n };\n }\n getUseBrickConfigRender(config: UseBrickAndPropertyDisplayConfig) {\n // eslint-disable-next-line react/display-name\n return (value: any, record: Record<string, any>, index: number) => {\n const data = { cellData: value, rowData: record, index };\n return <BrickAsComponent useBrick={config.useBrick} data={data} />;\n };\n }\n\n getLinkContent(node: any) {\n return (\n <span style={{ display: \"flex\" }}>\n <span className={styles.iconWrap}>\n <GeneralIcon\n icon={{\n lib: \"easyops\",\n icon: \"search\",\n category: \"app\",\n color: \"#167be0\",\n }}\n />\n </span>\n <span className={styles.linkKey}>{node}</span>\n </span>\n );\n }\n // istanbul ignore next\n getSpecialUrlTemplates(\n object: Partial<CmdbModels.ModelCmdbObject>,\n record: any,\n node: any,\n url?: string,\n isRenderStructList?: boolean\n ) {\n if (!url) {\n return (\n <a\n role=\"button\"\n onClick={(e) => this.handleClickItem(e, record)}\n data-testid=\"instance-detail-link\"\n >\n {this.props.showTooltip ? (\n <Tooltip\n placement=\"top\"\n title={`${i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.JUMP_TO}`)}${\n object.name\n }${i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.INSTANCE_DETAIL}`)}`}\n >\n {this.getLinkContent(node)}\n </Tooltip>\n ) : (\n this.getLinkContent(node)\n )}\n </a>\n );\n }\n return (\n <>\n <span style={{ display: \"flex\" }}>\n <span\n className={\n isRenderStructList ? styles.iconWrapOfStruct : styles.iconWrap\n }\n >\n <Link\n to={url}\n onClick={(e: MouseEvent | React.MouseEvent) =>\n this.handleClickItem(\n e as React.MouseEvent<HTMLAnchorElement, MouseEvent>,\n record\n )\n }\n data-testid=\"instance-detail-link\"\n >\n <Tooltip\n placement=\"top\"\n title={`${i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.JUMP_TO}`)}${\n object.name\n }${i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.INSTANCE_DETAIL}`)}`}\n >\n <span className={styles.relationMoreIcon}>\n <GeneralIcon\n icon={{\n lib: \"easyops\",\n icon: \"search\",\n category: \"app\",\n color: \"#167be0\",\n }}\n />\n </span>\n </Tooltip>\n </Link>\n </span>\n <span className={styles.linkKey}>{node}</span>\n </span>\n </>\n );\n }\n getAttributeColumnData(\n attribute: Partial<CmdbModels.ModelObjectAttr>,\n object: Partial<CmdbModels.ModelCmdbObject>,\n firstColumns?: boolean\n ): ColumnType<Record<string, any>> {\n const column: ColumnType<Record<string, any>> = {\n title: attribute.name,\n dataIndex: attribute.id,\n className: styles.instanceListTableCell,\n };\n const displayConfig = this.keyDisplayConfigMap[attribute.id];\n const isPrimary = attribute.id === getInstanceNameKeys(object)[0];\n let tempColumns: any;\n const attrValueType: any = attribute.value.type;\n switch (attrValueType) {\n case ModelAttributeValueType.STRUCT:\n case ModelAttributeValueType.ATTACHMENT:\n case ModelAttributeValueType.STRUCT_LIST:\n column.sorter = false;\n break;\n default:\n column.sorter = !this.props.sortDisabled;\n }\n if (displayConfig) {\n if (displayConfig.brick || displayConfig.useBrick) {\n tempColumns = this.getDisplayConfigColumn(displayConfig, isPrimary);\n } else if (displayConfig.type) {\n switch (displayConfig.type) {\n case PropertyDisplayType.Tag:\n column.render = (\n values: string | string[],\n record: Record<string, any>,\n index: number\n ) => {\n if (values) {\n if (!(values instanceof Array)) {\n values = [values];\n }\n return values.map((value) => {\n let color: string;\n if (displayConfig.valueColorMap) {\n color = displayConfig.valueColorMap[value];\n }\n return (\n <Tag key={value} color={color}>\n {value}\n </Tag>\n );\n });\n } else {\n return null;\n }\n };\n break;\n }\n }\n } else {\n let isLegacy: boolean;\n const attrValueType: any = attribute.value.type;\n switch (attrValueType) {\n case ModelAttributeValueType.STRUCT:\n isLegacy = true;\n // falls through\n case ModelAttributeValueType.ATTACHMENT:\n case ModelAttributeValueType.STRUCT_LIST:\n tempColumns = (\n value: Record<string, any> | Record<string, any>[],\n record: Record<string, any>,\n index: number\n ) => {\n return value ? (\n <Popover\n overlayStyle={{ maxWidth: 800, width: \"100%\", height: \"auto\" }}\n content={\n <StructTable\n attribute={attribute as Attribute}\n structData={value}\n isLegacy={isLegacy}\n />\n }\n placement=\"bottom\"\n >\n <Button type=\"link\" style={{ padding: \"4px 0\" }}>\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.VIEW}`)}\n </Button>\n </Popover>\n ) : null;\n };\n break;\n case ModelAttributeValueType.ARR:\n case ModelAttributeValueType.ENUMS:\n tempColumns = (\n value: string[],\n record: Record<string, any>,\n index: number\n ) => {\n return value && value.length > 0 ? value.join(\"; \") : null;\n };\n break;\n case ModelAttributeValueType.BOOLEAN:\n tempColumns = (v: boolean) => (isNil(v) ? \"\" : \"\" + v);\n break;\n case ModelAttributeValueType.JSON:\n tempColumns = (value: any) => {\n return (\n <JsonDisplayBrick\n value={value}\n name={attribute.name}\n isNumControlEllipsis={false}\n />\n );\n };\n break;\n case ModelAttributeValueType.STRING:\n switch (attribute.value.mode as any) {\n case \"xml\": {\n tempColumns = (v: string) => {\n return (\n <XmlDisplayBrick value={v} isNumControlEllipsis={false} />\n );\n };\n break;\n }\n case \"password\": {\n tempColumns = (v: string) => {\n return \"*\".repeat(v?.length);\n };\n break;\n }\n default: {\n tempColumns = (v: string) => v;\n }\n }\n break;\n case ModelAttributeValueType.FLOAT:\n tempColumns = (value: number) => {\n return <FloatDisplayBrick floatValue={value} />;\n };\n break;\n default:\n if (object.objectId === \"HOST\" && attribute.id in customRules) {\n tempColumns = (\n text: any,\n record: Record<string, any>,\n index: number\n ) => {\n if (!isBoolean(text) && (text || text === 0)) {\n text = compact(text.toString().split(\" \"));\n const valStr = text\n .map((item: any) => {\n return (customRules as any)[attribute.id](item, attribute);\n })\n .join(\" \");\n return valStr === \"\" ? undefined : valStr;\n }\n return (customRules as any)[attribute.id](text, attribute);\n };\n } else {\n tempColumns = (v: string) => v;\n }\n }\n }\n // istanbul ignore next\n if (tempColumns) {\n column.render =\n firstColumns && this.props.detailUrlTemplates\n ? (value: string, record: Record<string, any>, index: number) => {\n //要跳到的路由\n const detailUrlTemplate = getTemplateFromMap(\n this.props.detailUrlTemplates,\n object.objectId\n );\n if (detailUrlTemplate) {\n const data = {\n ...record,\n objectId: object.isAbstract\n ? record._object_id\n : object.objectId,\n };\n const url = parseTemplate(detailUrlTemplate, data);\n if (\n attribute.value.type === ModelAttributeValueType.STRUCT ||\n attribute.value.type === ModelAttributeValueType.STRUCT_LIST\n ) {\n return this.getSpecialUrlTemplates(\n object,\n record,\n tempColumns(value, record, index),\n url,\n true\n );\n }\n if (displayConfig && displayConfig.brick) {\n return this.getSpecialUrlTemplates(\n object,\n record,\n tempColumns(value, record, index),\n url\n );\n }\n return (\n <Link\n to={url}\n onClick={(e: MouseEvent | React.MouseEvent) =>\n this.handleClickItem(\n e as React.MouseEvent<HTMLAnchorElement, MouseEvent>,\n record\n )\n }\n data-testid=\"instance-detail-link\"\n {...(!firstColumns || object.isAbstract\n ? { target: \"_blank\" }\n : this.props.target\n ? { target: this.props.target }\n : {})}\n >\n {this.props.showTooltip ? (\n <Tooltip\n placement=\"top\"\n title={`${i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.JUMP_TO}`\n )}${\n object.isAbstract\n ? this.inheritanceModelIdNameMap?.[\n record._object_id\n ] || record._object_id\n : object.name\n }${i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.INSTANCE_DETAIL}`\n )}`}\n >\n <span>\n <span className={styles.iconWrap}>\n <GeneralIcon\n icon={{\n lib: \"easyops\",\n icon: \"search\",\n category: \"app\",\n color: \"#167be0\",\n }}\n />\n </span>\n <span className={styles.linkKey}>\n {tempColumns(value, record, index)}\n </span>\n </span>\n </Tooltip>\n ) : (\n <span>\n <span className={styles.iconWrap}>\n <GeneralIcon\n icon={{\n lib: \"easyops\",\n icon: \"search\",\n category: \"app\",\n color: \"#167be0\",\n }}\n />\n </span>\n <span className={styles.linkKey}>\n {tempColumns(value, record, index)}\n </span>\n </span>\n )}\n </Link>\n );\n } else {\n return this.getSpecialUrlTemplates(\n object,\n record,\n tempColumns(value, record, index)\n );\n }\n }\n : tempColumns;\n }\n return column;\n }\n\n handleRelationMoreIconClick(record: Record<string, any>): void {\n this.props?.onRelationMoreIconClick?.(record);\n }\n\n getRelationColumnData(\n relation: Partial<CmdbModels.ModelObjectRelation>,\n object: Partial<CmdbModels.ModelCmdbObject>,\n sides: RelationObjectSides,\n firstColumns?: boolean\n ): ColumnType<Record<string, any>> {\n const key = relation[`${sides.this}_id` as RelationIdKeys];\n\n const column: ColumnType<Record<string, any>> = {\n title: relation[`${sides.this}_name` as RelationNameKeys],\n dataIndex: key,\n sorter: !this.props.sortDisabled,\n className: styles.instanceListTableCell,\n };\n const displayConfig = this.keyDisplayConfigMap[key];\n let tempColumns: any;\n\n if (displayConfig) {\n tempColumns = this.getDisplayConfigColumn(displayConfig);\n } else {\n tempColumns = (\n instances: Record<string, any>[],\n record: Record<string, any>,\n index: number\n ) => {\n if (instances && instances.length > 0) {\n const objectId =\n relation[`${sides.that}_object_id` as RelationObjectIdKeys];\n const leftName = relation[`${sides.this}_name`];\n const rightId = relation[`${sides.that}_id`];\n const nameKeys = getInstanceNameKeys(\n this.props.idObjectMap[objectId]\n );\n let detailUrlTemplate: string;\n\n if (this.props.detailUrlTemplates) {\n detailUrlTemplate = getTemplateFromMap(\n this.props.detailUrlTemplates,\n objectId\n );\n }\n // 过滤后的实例\n const filterInstances = instances?.slice(0, this.props.relationLimit);\n const instanceNodes = filterInstances.map((instance, index) => {\n let subName: string;\n if (nameKeys.length > 1) {\n subName = instance[nameKeys[1]];\n }\n\n let instanceName = subName\n ? `${instance[nameKeys[0]]} (${subName})`\n : instance[nameKeys[0]];\n\n if (detailUrlTemplate) {\n const url = parseTemplate(detailUrlTemplate, {\n ...instance,\n objectId,\n });\n return (\n <React.Fragment key={instance.instanceId}>\n {index > 0 &&\n (this.props.separatorUsedInRelationData ?? \"; \")}\n {this.props.relationLinkDisabled ? (\n instanceName\n ) : (\n <Link\n target={\"_blank\"}\n // 使用 <Link> 以保持链接的原生能力\n to={url}\n className={styles.relationLink}\n // 自定义 onClick 以支持事件配置和拦截\n onClick={(e: MouseEvent | React.MouseEvent) =>\n this.handleClickItem(\n e as React.MouseEvent<HTMLAnchorElement, MouseEvent>,\n record\n )\n }\n >\n {instanceName}\n </Link>\n )}\n </React.Fragment>\n );\n } else {\n if (index > 0) {\n instanceName =\n (this.props.separatorUsedInRelationData ?? \"; \") +\n instanceName;\n }\n return instanceName;\n }\n });\n const instanceNodesWrapper = (\n <span\n className={classnames(styles.instanceListTableRelationWrapper)}\n >\n <span className={styles.instanceListTableRelationText}>\n {instanceNodes}\n </span>\n <Tooltip\n title={i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.RELATION_INSTANCE_TOOLTIP}`\n )}\n placement=\"top\"\n trigger={[\"hover\", \"focus\"]}\n >\n <span className={styles.relationMoreIcon}>\n <GeneralIcon\n icon={{\n lib: \"easyops\",\n category: \"patch-manager\",\n icon: \"patch-list\",\n }}\n onClick={() =>\n this.handleRelationMoreIconClick({\n ...record,\n objectId,\n left_name: leftName,\n right_id: rightId,\n })\n }\n />\n </span>\n </Tooltip>\n </span>\n );\n return instanceNodesWrapper;\n } else {\n return null;\n }\n };\n }\n // istanbul ignore next\n if (tempColumns) {\n column.render =\n firstColumns && this.props.detailUrlTemplates\n ? (value: string, record: Record<string, any>, index: number) => {\n //要跳到的路由\n const detailUrlTemplate = getTemplateFromMap(\n this.props.detailUrlTemplates,\n object.objectId\n );\n if (detailUrlTemplate) {\n const data = {\n ...record,\n objectId: object.objectId,\n };\n const url = parseTemplate(detailUrlTemplate, data);\n return this.getSpecialUrlTemplates(\n object,\n record,\n tempColumns(value, record, index),\n url\n );\n } else {\n return this.getSpecialUrlTemplates(\n object,\n record,\n tempColumns(value, record, index)\n );\n }\n }\n : tempColumns;\n }\n return column;\n }\n\n setColumnSortOrder<T = any>(column: ColumnType<T>) {\n if (\n (column.dataIndex !== undefined &&\n column.dataIndex === this.props.sort) ||\n (column.key !== undefined && column.key === this.props.sort)\n ) {\n column.sortOrder = this.props.asc ? SortOrder.Ascend : SortOrder.Descend;\n } else {\n column.sortOrder = null;\n }\n return column;\n }\n\n onChange = (\n pagination: TablePaginationConfig,\n filters: Record<string, (React.Key | boolean)[]>,\n sorter:\n | SorterResult<Record<string, any>>\n | SorterResult<Record<string, any>>[],\n extra: TableCurrentDataSource<Record<string, any>>\n ) => {\n const newInstanceSourceQuery = filters?._object_id?.[0] as string;\n if (newInstanceSourceQuery !== this.state.instanceSourceQuery) {\n this.props.onInstanceSourceChange(newInstanceSourceQuery);\n }\n if (\n // pagination.current will pass in 0 when total is 0 and sorter has changed\n (pagination.current > 0 &&\n pagination.current !== this.state.pagination.current) ||\n pagination.pageSize !== this.state.pagination.pageSize\n ) {\n this.props.onPaginationChange?.({\n page: pagination.current,\n pageSize: pagination.pageSize,\n });\n }\n if (!Array.isArray(sorter)) {\n const asc = { [SortOrder.Ascend]: true, [SortOrder.Descend]: false }[\n sorter.order\n ];\n if (\n (sorter.column ? sorter.field : undefined) !== this.props.sort ||\n asc !== this.props.asc\n ) {\n this.props.onSortingChange?.({ sort: sorter.field as string, asc });\n }\n }\n };\n\n onSelectChange = (\n selectedRowKeys: (string | number)[],\n selectedRows: Record<string, any>[]\n ) => {\n this.selectedRows = selectedRows;\n this.props.onSelectionChange?.({\n selectedKeys: selectedRowKeys as string[],\n selectedItems: selectedRows,\n });\n };\n handelIpCopyText = async (\n ev: React.MouseEvent<HTMLElement, MouseEvent>,\n dataIndex: string\n ) => {\n ev.stopPropagation();\n let selectedRowKeys = this.props.selectedRowKeys;\n let selectedRows = this.selectedRows.filter((v) => v);\n const objectId = this.props.modelData.objectId;\n if (selectedRowKeys?.length < 1) {\n message.warning(\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.SELECT_COPY_DATA}`)\n );\n return false;\n }\n selectedRowKeys = selectedRowKeys.filter((k) =>\n selectedRows.every((row) => row[this.ROM_KEY] !== k)\n );\n if (selectedRowKeys.length > 0) {\n let resp: any;\n const params = {\n query: {\n instanceId: {\n $in: selectedRowKeys,\n },\n },\n page_size: selectedRowKeys.length,\n page: 1,\n ...(this.props.useExternalCmdbApi\n ? {\n objectId,\n sourceId: this.props.externalSourceId,\n ignore_missing_field_error: true,\n }\n : {}),\n };\n // useExternalCmdbApi为true 调用外部接口\n if (this.props.useExternalCmdbApi) {\n resp = await http.post(\n \"api/gateway/easyops.api.cmdb.topo_center.ProxyPostSearchV3@1.0.1/api/v1/proxy-post-search-v3\",\n params\n );\n } else {\n resp = await InstanceApi_postSearch(objectId, params);\n }\n selectedRows = [...selectedRows, ...(resp?.list || [])];\n }\n const inputDom = document.createElement(\"textarea\");\n inputDom.value = [\n ...new Set(\n map(\n selectedRows.filter((v) => v[dataIndex]),\n dataIndex\n )\n ),\n ].join(\"\\n\");\n document.body.appendChild(inputDom);\n inputDom.select(); //选择对象\n document.execCommand(\"copy\");\n inputDom.remove();\n message.success(i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.COPY_SUCCESS}`));\n };\n componentDidUpdate(prevProps: InstanceListTableProps) {\n if (this.props.instanceListData !== prevProps.instanceListData) {\n this.setState({\n list: this.props.instanceListData.list,\n pagination: {\n ...this.state.defaultPagination,\n total: this.props.instanceListData.total,\n current: this.props.instanceListData.page,\n pageSize: this.props.instanceListData.page_size,\n },\n });\n }\n if (\n this.props.sort !== prevProps.sort ||\n this.props.asc !== prevProps.asc\n ) {\n const columns: ColumnType<Record<string, any>>[] = [];\n this.state.columns.forEach((column) =>\n columns.push(this.setColumnSortOrder(column))\n );\n this.setState({ columns });\n this.props.onColumnsChange?.(\n columns.map(({ dataIndex }) => ({ dataIndex }))\n );\n }\n if (this.props.instanceSourceQuery !== prevProps.instanceSourceQuery) {\n this.setState({\n instanceSourceQuery: this.props.instanceSourceQuery,\n });\n }\n }\n\n render(): React.ReactNode {\n const { selectedRowKeys, rowSelectionType } = this.props;\n const rowSelection: TableRowSelection<Record<string, any>> = this.props\n .selectDisabled\n ? null\n : {\n type: rowSelectionType,\n preserveSelectedRowKeys: true,\n selectedRowKeys,\n onChange: this.onSelectChange,\n };\n\n const classes = classnames({\n [styles.shouldEllipsis]: this.props.autoBreakLine,\n [styles.tableWrapper]: true,\n });\n this.state.columns.map((column) => {\n const dataIndex = column.dataIndex as string;\n // istanbul ignore next\n if (\n this.props.modelData.attrList.find((attr) => attr.id === dataIndex)\n ?.value?.mode === \"url\"\n ) {\n column.render = (text, row, index) => CmdbUrlLink({ linkStr: text });\n }\n if (\n this.props.ipCopy &&\n this.props.modelData.attrList.find((attr) => attr.id === dataIndex)\n ?.value?.type === \"ip\"\n ) {\n column.filterDropdown = () => <div></div>;\n column.filterIcon = () => (\n <Tooltip\n className={styles.copyWrap}\n title={i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.COPY_SELECTED_IP}`)}\n >\n <CopyOutlined\n style={{ fontSize: 16 }}\n onClick={(ev) => this.handelIpCopyText(ev, dataIndex)}\n />\n </Tooltip>\n );\n }\n });\n return (\n <div\n className={classes}\n style={{ overflowX: \"auto\", overflowY: \"hidden\" }}\n >\n <Table\n columns={\n this.props.showCustomizedSerialNumber\n ? [\n {\n dataIndex: \"customizedSerialNumber\",\n title: \"序号\",\n align: \"center\",\n },\n ...this.state.columns,\n ]\n : this.state.columns\n }\n dataSource={\n this.props.showCustomizedSerialNumber\n ? this.props.instanceListData.list.map((item, index) => ({\n ...item,\n customizedSerialNumber: index + 1,\n }))\n : this.props.instanceListData.list\n }\n rowKey={this.ROM_KEY}\n scroll={{\n x:\n this.props.fixedHeader || this.props.configProps?.scroll?.y\n ? (this.state.columns?.length ?? 0) * 150\n : \"max-content\",\n y: this.props.fixedHeader\n ? 560\n : this.props.configProps?.scroll?.y ?? null,\n }}\n pagination={this.state.pagination}\n rowSelection={rowSelection}\n onChange={this.onChange}\n expandable={{\n // ant的table数据中有children字段时会自动展示为树形表格,导致模型设置了id为children的字段或者关系字段时会出现报错或者不必要的展开样式\n // rowExpandable在dataSource含children属性时不生效,见https://github.com/ant-design/ant-design/issues/30444\n // 故这里将默认展开的字段设置为不符合模型属性id校验的值\n childrenColumnName: \"0\",\n }}\n {...omit(this.props.configProps, [\"scroll\"])}\n />\n </div>\n );\n }\n}\n// 临时做法 用HOC来间接声明契约,支持契约被扫描到\nexport const withProviderDeclare = (Component: any) => {\n // eslint-disable-next-line react/display-name\n return (props: any) => {\n const externalPostSearchV3 = useProvider(\n \"easyops.api.cmdb.topo_center@ProxyPostSearchV3:1.0.1\",\n { cache: false }\n );\n const externalGetIdMapName = useProvider(\n \"easyops.api.cmdb.topo_center@ProxyGetIdMapName:1.0.1\",\n { cache: false }\n );\n return <Component {...props} />;\n };\n};\n\nexport const InstanceListTable = React.memo(\n withTranslation(NS_LIBS_CMDB_INSTANCES)(\n withProviderDeclare(LegacyInstanceListTable)\n )\n);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"InstanceListTable.js","names":["_react","_interopRequireDefault","require","_reactI18next","_classnames","_antd","_lodash","_icons","_brickTypes","_cmdbSdk","_brickHttp","_basicComponents","_cmdbUtils","_ModelAttributeFormControl","_structComponents","_InstanceListTableModule","_utils","_brickKit","_constants","_i18next","_CmdbUrlLink","_FloatDisplayBrick","_JsonDisplayBrick","_XmlDisplayBrick","SortOrder","SELF_RENDER_COLUMNS","HOST","key","brick","CLUSTER","properties","fields","value","showBg","LegacyInstanceListTable","React","Component","constructor","props","_SELF_RENDER_COLUMNS$","_this$props$propertyD","_this$props$onColumns","_this$props4","_defineProperty2","default","createElement","Fragment","i18n","t","NS_LIBS_CMDB_INSTANCES","K","INSTANCE_SOURCE","Tooltip","title","INSTANCE_SOURCE_TOOLTIP","className","styles","titleTooltipIcon","GeneralIcon","icon","lib","theme","pagination","filters","sorter","extra","_filters$_object_id","newInstanceSourceQuery","_object_id","state","instanceSourceQuery","onInstanceSourceChange","current","pageSize","_this$props$onPaginat","_this$props","onPaginationChange","call","page","Array","isArray","asc","Ascend","Descend","order","column","field","undefined","sort","_this$props$onSorting","_this$props2","onSortingChange","selectedRowKeys","selectedRows","_this$props$onSelecti","_this$props3","onSelectionChange","selectedKeys","selectedItems","ev","dataIndex","_selectedRowKeys","stopPropagation","filter","v","objectId","modelData","length","message","warning","SELECT_COPY_DATA","k","every","row","ROM_KEY","_resp","resp","params","query","instanceId","$in","page_size","useExternalCmdbApi","sourceId","externalSourceId","ignore_missing_field_error","http","post","InstanceApi_postSearch","list","inputDom","document","Set","map","join","body","appendChild","select","execCommand","remove","success","COPY_SUCCESS","forEach","config","keyDisplayConfigMap","propertyDisplayConfigs","fieldIds","sortedColumns","getChangeColumns","inheritanceModelIdNameMap","defaultPagination","disabled","paginationDisabled","pageSizeOptions","showSizeChanger","showTotal","totals","totalText","PAGINATION_TOTAL_TEXT","total","PAGINATION_TOTAL_UNIT","currentColumns","getMergedColumns","extraColumns","columns","_this$props$hiddenCol","hiddenColumns","includes","onColumnsChange","instanceListData","openConfirmModal","index","confirm","Modal","DELETE_INSTANCE_CONFIRM_MSG","okText","CONFIRM","okType","cancelText","CANCEL","onOk","processList","splice","handleDeleteFunction","ids","forEachAvailableFields","modifyModelData","attr","firstColumns","push","setColumnSortOrder","getAttributeColumnData","relation","sides","getRelationColumnData","isAbstract","i","idColumnMap","Map","set","view","attr_order","id","get","delete","isOperate","OPERATION","structTableTd","fixed","render","_text","record","Button","type","DeleteOutlined","style","color","onClick","mergedColumns","processExtraColumns","instanceSourceTitle","filterInstanceSourceDisabled","text","filterMultiple","filteredValue","_this$inheritanceMode","Tag","c","recordUseBrickDataMap","useBrick","processedColumn","data","cellData","rowData","BrickAsComponent","componentDidMount","_this$props$onColumns2","_this$props5","isNil","parentObjectId","CmdbObjectApi_getIdMapName","showFields","changeColumns","_this$props$hiddenCol2","setState","UNSAFE_componentWillReceiveProps","nextProps","_this$props$onColumns3","_this$props6","_this$props$hiddenCol3","handleClickItem","e","onClickItem","onClickItemV2","getCustomPropertyRender","isPrimary","ref","el","Object","assign","dataSource","getDisplayConfigColumn","getUseBrickConfigRender","getLinkContent","node","display","iconWrap","category","linkKey","getSpecialUrlTemplates","object","url","isRenderStructList","role","showTooltip","placement","JUMP_TO","name","INSTANCE_DETAIL","iconWrapOfStruct","Link","to","relationMoreIcon","attribute","instanceListTableCell","displayConfig","getInstanceNameKeys","tempColumns","attrValueType","ModelAttributeValueType","STRUCT","ATTACHMENT","STRUCT_LIST","sortDisabled","PropertyDisplayType","values","valueColorMap","isLegacy","Popover","overlayStyle","maxWidth","width","height","content","StructTable","structData","padding","VIEW","ARR","ENUMS","BOOLEAN","JSON","JsonDisplayBrick","isNumControlEllipsis","STRING","mode","XmlDisplayBrick","repeat","FLOAT","FloatDisplayBrick","floatValue","customRules","isBoolean","compact","toString","split","valStr","item","detailUrlTemplates","detailUrlTemplate","getTemplateFromMap","_this$inheritanceMode2","parseTemplate","_extends2","target","handleRelationMoreIconClick","_this$props7","_this$props7$onRelati","onRelationMoreIconClick","this","instances","that","leftName","rightId","nameKeys","idObjectMap","filterInstances","slice","relationLimit","instanceNodes","instance","subName","instanceName","_this$props$separator","separatorUsedInRelationData","relationLinkDisabled","relationLink","_this$props$separator2","instanceNodesWrapper","classnames","instanceListTableRelationWrapper","instanceListTableRelationText","RELATION_INSTANCE_TOOLTIP","trigger","left_name","right_id","sortOrder","componentDidUpdate","prevProps","_this$props$onColumns4","_this$props8","_this$props$configPro","_this$props$configPro2","_this$state$columns$l","_this$state$columns","_this$props$configPro3","_this$props$configPro4","_this$props$configPro5","rowSelectionType","rowSelection","selectDisabled","preserveSelectedRowKeys","onChange","onSelectChange","classes","shouldEllipsis","autoBreakLine","tableWrapper","_this$props$modelData","_this$props$modelData2","_this$props$modelData3","_this$props$modelData4","attrList","find","CmdbUrlLink","linkStr","ipCopy","filterDropdown","filterIcon","copyWrap","COPY_SELECTED_IP","CopyOutlined","fontSize","handelIpCopyText","overflowX","overflowY","Table","showCustomizedSerialNumber","align","customizedSerialNumber","rowKey","scroll","x","fixedHeader","configProps","y","expandable","childrenColumnName","omit","exports","withProviderDeclare","externalPostSearchV3","useProvider","cache","externalGetIdMapName","InstanceListTable","memo","withTranslation"],"sources":["../../../src/instance-list-table/InstanceListTable.tsx"],"sourcesContent":["import React from \"react\";\nimport { withTranslation, WithTranslation } from \"react-i18next\";\nimport classnames from \"classnames\";\nimport {\n Button,\n Popover,\n Table,\n Tag,\n Tooltip,\n Modal,\n message,\n Typography,\n} from \"antd\";\nimport { isNil, isBoolean, compact, map, divide, omit } from \"lodash\";\nimport { CopyOutlined, DeleteOutlined } from \"@ant-design/icons\";\nimport { ColumnType, TablePaginationConfig, TableProps } from \"antd/lib/table\";\nimport {\n SorterResult,\n TableCurrentDataSource,\n TableRowSelection,\n} from \"antd/lib/table/interface\";\nimport {\n PropertyDisplay,\n PropertyDisplayConfig,\n PropertyDisplayType,\n ReadPaginationChangeDetail,\n ReadSelectionChangeDetail,\n ReadSortingChangeDetail,\n UseBrickConf,\n} from \"@next-core/brick-types\";\nimport {\n CmdbModels,\n InstanceApi_PostSearchV3ResponseBody,\n CmdbObjectApi_getIdMapName,\n InstanceApi_postSearch,\n} from \"@next-sdk/cmdb-sdk\";\nimport { http } from \"@next-core/brick-http\";\nimport { Link, GeneralIcon } from \"@next-libs/basic-components\";\nimport {\n forEachAvailableFields,\n getInstanceNameKeys,\n getTemplateFromMap,\n parseTemplate,\n modifyModelData,\n RelationIdKeys,\n RelationNameKeys,\n RelationObjectIdKeys,\n RelationObjectSides,\n} from \"@next-libs/cmdb-utils\";\nimport { ModelAttributeValueType } from \"../model-attribute-form-control/ModelAttributeFormControl\";\nimport { Attribute, StructTable } from \"../struct-components\";\nimport styles from \"./InstanceListTable.module.css\";\nimport { customRules } from \"./utils\";\nimport { BrickAsComponent, useProvider } from \"@next-core/brick-kit\";\nimport { NS_LIBS_CMDB_INSTANCES, K } from \"../i18n/constants\";\nimport i18n from \"i18next\";\nimport { CmdbUrlLink } from \"../cmdb-url-link/CmdbUrlLink\";\nimport { FloatDisplayBrick } from \"../float-display-brick/FloatDisplayBrick\";\nimport { JsonDisplayBrick } from \"../json-display-brick/JsonDisplayBrick\";\nimport { XmlDisplayBrick } from \"../xml-display-brick/XmlDisplayBrick\";\n// const { Paragraph } = Typography;\nexport interface CustomColumn extends ColumnType<Record<string, unknown>> {\n useBrick: UseBrickConf;\n}\n\nexport type UseBrickAndPropertyDisplayConfig = PropertyDisplayConfig & {\n useBrick?: UseBrickConf;\n};\n\nexport interface InstanceListUseBrickData {\n cellData: unknown;\n rowData: Record<string, unknown>;\n index: number;\n}\n\nenum SortOrder {\n Ascend = \"ascend\",\n Descend = \"descend\",\n}\n\nconst SELF_RENDER_COLUMNS: {\n [objectId: string]: UseBrickAndPropertyDisplayConfig[];\n} = {\n HOST: [\n {\n key: \"_agentStatus\",\n brick: \"presentational-bricks.agent-status\",\n },\n ],\n CLUSTER: [\n {\n key: \"type\",\n brick: \"presentational-bricks.brick-cluster-type\",\n properties: {\n fields: {\n value: \"type\",\n },\n showBg: true,\n },\n },\n ],\n};\n\nexport interface InstanceListTableProps extends WithTranslation {\n detailUrlTemplates?: Record<string, string>;\n fieldIds?: string[];\n idObjectMap: Record<string, Partial<CmdbModels.ModelCmdbObject>>;\n modelData: Partial<CmdbModels.ModelCmdbObject>;\n instanceListData: InstanceApi_PostSearchV3ResponseBody;\n sort?: string;\n asc?: boolean;\n propertyDisplayConfigs?: UseBrickAndPropertyDisplayConfig[];\n selectDisabled?: boolean;\n autoBreakLine?: boolean;\n sortDisabled?: boolean;\n instanceSourceQuery?: string;\n inheritanceModelIdNameMap?: Record<string, string>;\n filterInstanceSourceDisabled?: boolean;\n onClickItem?(\n evt: React.MouseEvent<HTMLAnchorElement, MouseEvent>,\n id: string\n ): void;\n onClickItemV2?(\n evt: React.MouseEvent<HTMLAnchorElement, MouseEvent>,\n record: Record<string, any>\n ): void;\n onPaginationChange?(pagination: ReadPaginationChangeDetail): void;\n onSortingChange?(sorting: ReadSortingChangeDetail): void;\n onSelectionChange?(selection: ReadSelectionChangeDetail): void;\n onInstanceSourceChange?(instanceSourceQuery: string): void;\n relationLinkDisabled?: boolean;\n paginationDisabled?: boolean;\n pageSizeOptions?: string[];\n showSizeChanger?: boolean;\n selectedRowKeys?: string[];\n configProps?: TableProps<Record<string, any>>;\n extraColumns?: CustomColumn[];\n isOperate?: boolean;\n handleDeleteFunction?: (v: any[]) => void;\n target?: string;\n ipCopy?: boolean;\n separatorUsedInRelationData?: string;\n showTooltip?: boolean;\n fixedHeader?: boolean;\n rowSelectionType?: \"checkbox\" | \"radio\";\n onColumnsChange?(columns: ColumnType<{ dataIndex: string }>[]): void;\n useExternalCmdbApi?: boolean;\n externalSourceId?: string;\n hiddenColumns?: Array<string>;\n showCustomizedSerialNumber?: boolean;\n // 关系查询限制数量\n relationLimit?: number;\n onRelationMoreIconClick?(record: Record<string, any>): void;\n}\n\ninterface InstanceListTableState {\n list: Record<string, any>[];\n instanceSourceQuery?: string;\n columns?: ColumnType<Record<string, any>>[];\n pagination: TablePaginationConfig;\n defaultPagination: TablePaginationConfig;\n}\n\nexport class LegacyInstanceListTable extends React.Component<\n InstanceListTableProps,\n InstanceListTableState\n> {\n keyDisplayConfigMap: Record<string, UseBrickAndPropertyDisplayConfig> = {};\n recordUseBrickDataMap: Map<unknown, InstanceListUseBrickData>;\n inheritanceModelIdNameMap: Record<string, string>;\n selectedRows: Record<string, any>[] = [];\n ROM_KEY = \"instanceId\";\n\n instanceSourceTitle: React.ReactElement = (\n <>\n <span>{i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.INSTANCE_SOURCE}`)}</span>\n <Tooltip\n title={i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.INSTANCE_SOURCE_TOOLTIP}`)}\n >\n <span className={styles.titleTooltipIcon}>\n <GeneralIcon\n icon={{\n lib: \"antd\",\n icon: \"question-circle\",\n theme: \"filled\",\n }}\n />\n </span>\n </Tooltip>\n </>\n );\n\n constructor(props: InstanceListTableProps) {\n super(props);\n const objectId = this.props.modelData.objectId;\n SELF_RENDER_COLUMNS[objectId]?.forEach(\n (config) => (this.keyDisplayConfigMap[config.key] = config)\n );\n this.props.propertyDisplayConfigs?.forEach(\n (config) => (this.keyDisplayConfigMap[config.key] = config)\n );\n const fieldIds = this.props.fieldIds;\n\n const sortedColumns = this.getChangeColumns(fieldIds);\n this.inheritanceModelIdNameMap = this.props.inheritanceModelIdNameMap;\n\n const defaultPagination = {\n disabled: this.props.paginationDisabled,\n pageSizeOptions: this.props.pageSizeOptions,\n showSizeChanger: this.props.showSizeChanger,\n showTotal: (totals: number) => (\n <span className={styles.totalText}>\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.PAGINATION_TOTAL_TEXT}`)}{\" \"}\n <strong className={styles.total}>{totals}</strong>{\" \"}\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.PAGINATION_TOTAL_UNIT}`)}\n </span>\n ),\n };\n const currentColumns = this.getMergedColumns(\n sortedColumns,\n this.props.extraColumns\n );\n // 用于支持父模型情况下,可以自定义隐藏实例来源这一列\n const columns = currentColumns?.filter(\n (v) => !this.props.hiddenColumns?.includes(v.dataIndex as string)\n );\n this.props.onColumnsChange?.(\n columns.map(({ dataIndex }) => ({ dataIndex }))\n );\n this.state = {\n list: this.props.instanceListData.list,\n instanceSourceQuery: this.props.instanceSourceQuery,\n columns: columns,\n pagination: {\n ...defaultPagination,\n total: this.props.instanceListData.total,\n current: this.props.instanceListData.page,\n pageSize: this.props.instanceListData.page_size,\n },\n defaultPagination: defaultPagination,\n };\n }\n // istanbul ignore next\n openConfirmModal(index: number) {\n const confirm = Modal.confirm;\n\n confirm({\n title: i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.DELETE_INSTANCE_CONFIRM_MSG}`\n ),\n okText: i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CONFIRM}`),\n okType: \"danger\",\n cancelText: i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CANCEL}`),\n onOk: () => {\n this.remove(index);\n },\n });\n }\n // istanbul ignore next\n remove(index: number) {\n const processList = [...this.props.instanceListData.list];\n processList.splice(index, 1);\n this.props.handleDeleteFunction(processList);\n }\n getChangeColumns(ids: string[]) {\n const columns: InstanceListTableState[\"columns\"] = [];\n forEachAvailableFields(\n modifyModelData(this.props.modelData),\n (attr, firstColumns?: boolean) =>\n columns.push(\n this.setColumnSortOrder(\n this.getAttributeColumnData(\n attr,\n this.props.modelData,\n firstColumns\n )\n )\n ),\n (relation, sides, firstColumns?: boolean) =>\n columns.push(\n this.setColumnSortOrder(\n this.getRelationColumnData(\n relation,\n this.props.modelData,\n sides,\n firstColumns\n )\n )\n ),\n this.props.modelData.isAbstract\n ? ids?.filter((i) => i !== \"_object_id\")\n : ids\n );\n const idColumnMap = new Map<string, ColumnType<Record<string, any>>>();\n columns.forEach((column) =>\n idColumnMap.set(column.dataIndex as string, column)\n );\n let fieldIds: string[];\n if (ids?.length) {\n fieldIds = ids;\n } else if (\n this.props.modelData.view &&\n this.props.modelData.view.attr_order\n ) {\n fieldIds = this.props.modelData.view.attr_order;\n }\n let sortedColumns: InstanceListTableState[\"columns\"];\n if (fieldIds) {\n sortedColumns = [];\n fieldIds.forEach((id) => {\n const column = idColumnMap.get(id);\n if (column) {\n sortedColumns.push(column);\n idColumnMap.delete(id);\n }\n });\n idColumnMap.forEach((column) => sortedColumns.push(column));\n } else {\n sortedColumns = columns;\n }\n if (this.props.isOperate) {\n sortedColumns.push({\n title: i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.OPERATION}`),\n className: styles.structTableTd,\n dataIndex: \"operation\",\n fixed: \"right\",\n render: (_text: string, record: any, index: number): any => {\n return (\n <Button\n data-testid={\"button-up-\" + index}\n type=\"link\"\n icon={\n <DeleteOutlined style={{ color: \"var(--theme-red-color)\" }} />\n }\n onClick={() => {\n this.openConfirmModal(index);\n }}\n />\n );\n },\n });\n }\n return sortedColumns;\n }\n\n getMergedColumns(\n columns: ColumnType<Record<string, any>>[],\n extraColumns: CustomColumn[]\n ): ColumnType<Record<string, any>>[] {\n let mergedColumns = extraColumns\n ? [...columns, ...this.processExtraColumns(extraColumns)]\n : columns;\n if (this.props.modelData.isAbstract) {\n mergedColumns = [\n {\n title: this.instanceSourceTitle,\n dataIndex: \"_object_id\",\n ...(!this.props.filterInstanceSourceDisabled\n ? {\n filters: map(this.inheritanceModelIdNameMap, (value, key) => ({\n text: value,\n value: key,\n })),\n filterMultiple: false,\n filteredValue: this.props.instanceSourceQuery && [\n this.props.instanceSourceQuery,\n ],\n }\n : {}),\n render: (value, record, index) => (\n <Tag>{this.inheritanceModelIdNameMap?.[value] || value}</Tag>\n ),\n },\n ...mergedColumns.filter((c) => c.dataIndex !== \"_object_id\"),\n ];\n }\n return mergedColumns;\n }\n\n processExtraColumns(\n extraColumns: CustomColumn[]\n ): ColumnType<Record<string, any>>[] {\n this.recordUseBrickDataMap = new Map();\n\n return extraColumns.map((column) => {\n const { useBrick, ...processedColumn } = column;\n\n if (useBrick) {\n processedColumn.render = (value, record, index) => {\n let data = this.recordUseBrickDataMap.get(record);\n\n if (!data) {\n data = { cellData: value, rowData: record, index };\n this.recordUseBrickDataMap.set(record, data);\n }\n\n return <BrickAsComponent useBrick={useBrick} data={data} />;\n };\n }\n\n return processedColumn;\n });\n }\n\n async componentDidMount(): Promise<void> {\n if (\n this.props.modelData.isAbstract &&\n isNil(this.inheritanceModelIdNameMap)\n ) {\n // useExternalCmdbApi为true 调用外部接口\n // istanbul ignore if\n if (this.props.useExternalCmdbApi) {\n this.inheritanceModelIdNameMap = (\n (await http.post(\n `api/gateway/easyops.api.cmdb.topo_center.ProxyGetIdMapName@1.0.1/api/v1/proxy-get-id-map-name`,\n {\n parentObjectId: this.props.modelData.objectId,\n sourceId: this.props.externalSourceId,\n }\n )) as any\n ).data;\n } else {\n this.inheritanceModelIdNameMap = await CmdbObjectApi_getIdMapName({\n parentObjectId: this.props.modelData.objectId,\n } as any);\n }\n }\n const showFields = this.props.fieldIds;\n const changeColumns = this.getChangeColumns(showFields);\n const currentColumns = this.getMergedColumns(\n changeColumns,\n this.props.extraColumns\n );\n const columns = currentColumns?.filter(\n (v) => !this.props.hiddenColumns?.includes(v.dataIndex as string)\n );\n this.setState({\n columns,\n });\n this.props.onColumnsChange?.(\n columns.map(({ dataIndex }) => ({ dataIndex }))\n );\n }\n\n UNSAFE_componentWillReceiveProps(nextProps: InstanceListTableProps): void {\n this.inheritanceModelIdNameMap = {\n ...this.inheritanceModelIdNameMap,\n ...nextProps.inheritanceModelIdNameMap,\n };\n const showFields = nextProps.fieldIds;\n const changeColumns = this.getChangeColumns(showFields);\n const currentColumns = this.getMergedColumns(\n changeColumns,\n nextProps.extraColumns\n );\n const columns = currentColumns?.filter(\n (v) => !this.props.hiddenColumns?.includes(v.dataIndex as string)\n );\n\n this.setState({\n columns,\n });\n\n this.props.onColumnsChange?.(\n columns.map(({ dataIndex }) => ({ dataIndex }))\n );\n }\n handleClickItem(\n e: React.MouseEvent<HTMLAnchorElement, MouseEvent>,\n record: Record<string, any>\n ): void {\n if (this.props.onClickItem) {\n this.props.onClickItem(e, record.instanceId);\n }\n if (this.props.onClickItemV2) {\n this.props.onClickItemV2(e, record);\n }\n }\n getCustomPropertyRender(\n config: UseBrickAndPropertyDisplayConfig,\n isPrimary?: boolean\n ) {\n // eslint-disable-next-line react/display-name\n return (value: any, record: Record<string, any>, index: number) => {\n return (\n <config.brick\n ref={(el: HTMLElement & PropertyDisplay) => {\n if (el) {\n if (config.properties) {\n Object.assign(\n el,\n {\n dataSource: record,\n objectId: this.props.modelData.objectId,\n },\n config.properties\n );\n } else {\n Object.assign(el, {\n key: config.key,\n value,\n isPrimary,\n });\n }\n }\n }}\n />\n );\n };\n }\n getDisplayConfigColumn(\n config: UseBrickAndPropertyDisplayConfig,\n isPrimary?: boolean\n ) {\n return (value: string[], record: Record<string, any>, index: number) => {\n if (config.brick) {\n return this.getCustomPropertyRender(config, isPrimary)(\n value,\n record,\n index\n );\n } else if (config.useBrick) {\n return this.getUseBrickConfigRender(config)(value, record, index);\n }\n };\n }\n getUseBrickConfigRender(config: UseBrickAndPropertyDisplayConfig) {\n // eslint-disable-next-line react/display-name\n return (value: any, record: Record<string, any>, index: number) => {\n const data = { cellData: value, rowData: record, index };\n return <BrickAsComponent useBrick={config.useBrick} data={data} />;\n };\n }\n\n getLinkContent(node: any) {\n return (\n <span style={{ display: \"flex\" }}>\n <span className={styles.iconWrap}>\n <GeneralIcon\n icon={{\n lib: \"easyops\",\n icon: \"search\",\n category: \"app\",\n color: \"#167be0\",\n }}\n />\n </span>\n <span className={styles.linkKey}>{node}</span>\n </span>\n );\n }\n // istanbul ignore next\n getSpecialUrlTemplates(\n object: Partial<CmdbModels.ModelCmdbObject>,\n record: any,\n node: any,\n url?: string,\n isRenderStructList?: boolean\n ) {\n if (!url) {\n return (\n <a\n role=\"button\"\n onClick={(e) => this.handleClickItem(e, record)}\n data-testid=\"instance-detail-link\"\n >\n {this.props.showTooltip ? (\n <Tooltip\n placement=\"top\"\n title={`${i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.JUMP_TO}`)}${\n object.name\n }${i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.INSTANCE_DETAIL}`)}`}\n >\n {this.getLinkContent(node)}\n </Tooltip>\n ) : (\n this.getLinkContent(node)\n )}\n </a>\n );\n }\n return (\n <>\n <span style={{ display: \"flex\" }}>\n <span\n className={\n isRenderStructList ? styles.iconWrapOfStruct : styles.iconWrap\n }\n >\n <Link\n to={url}\n onClick={(e: MouseEvent | React.MouseEvent) =>\n this.handleClickItem(\n e as React.MouseEvent<HTMLAnchorElement, MouseEvent>,\n record\n )\n }\n data-testid=\"instance-detail-link\"\n >\n <Tooltip\n placement=\"top\"\n title={`${i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.JUMP_TO}`)}${\n object.name\n }${i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.INSTANCE_DETAIL}`)}`}\n >\n <span className={styles.relationMoreIcon}>\n <GeneralIcon\n icon={{\n lib: \"easyops\",\n icon: \"search\",\n category: \"app\",\n color: \"#167be0\",\n }}\n />\n </span>\n </Tooltip>\n </Link>\n </span>\n <span className={styles.linkKey}>{node}</span>\n </span>\n </>\n );\n }\n getAttributeColumnData(\n attribute: Partial<CmdbModels.ModelObjectAttr>,\n object: Partial<CmdbModels.ModelCmdbObject>,\n firstColumns?: boolean\n ): ColumnType<Record<string, any>> {\n const column: ColumnType<Record<string, any>> = {\n title: attribute.name,\n dataIndex: attribute.id,\n className: styles.instanceListTableCell,\n };\n const displayConfig = this.keyDisplayConfigMap[attribute.id];\n const isPrimary = attribute.id === getInstanceNameKeys(object)[0];\n let tempColumns: any;\n const attrValueType: any = attribute.value.type;\n switch (attrValueType) {\n case ModelAttributeValueType.STRUCT:\n case ModelAttributeValueType.ATTACHMENT:\n case ModelAttributeValueType.STRUCT_LIST:\n column.sorter = false;\n break;\n default:\n column.sorter = !this.props.sortDisabled;\n }\n if (displayConfig) {\n if (displayConfig.brick || displayConfig.useBrick) {\n tempColumns = this.getDisplayConfigColumn(displayConfig, isPrimary);\n } else if (displayConfig.type) {\n switch (displayConfig.type) {\n case PropertyDisplayType.Tag:\n column.render = (\n values: string | string[],\n record: Record<string, any>,\n index: number\n ) => {\n if (values) {\n if (!(values instanceof Array)) {\n values = [values];\n }\n return values.map((value) => {\n let color: string;\n if (displayConfig.valueColorMap) {\n color = displayConfig.valueColorMap[value];\n }\n return (\n <Tag key={value} color={color}>\n {value}\n </Tag>\n );\n });\n } else {\n return null;\n }\n };\n break;\n }\n }\n } else {\n let isLegacy: boolean;\n const attrValueType: any = attribute.value.type;\n switch (attrValueType) {\n case ModelAttributeValueType.STRUCT:\n isLegacy = true;\n // falls through\n case ModelAttributeValueType.ATTACHMENT:\n case ModelAttributeValueType.STRUCT_LIST:\n tempColumns = (\n value: Record<string, any> | Record<string, any>[],\n record: Record<string, any>,\n index: number\n ) => {\n return value ? (\n <Popover\n overlayStyle={{ maxWidth: 800, width: \"100%\", height: \"auto\" }}\n content={\n <StructTable\n attribute={attribute as Attribute}\n structData={value}\n isLegacy={isLegacy}\n />\n }\n placement=\"bottom\"\n >\n <Button type=\"link\" style={{ padding: \"4px 0\" }}>\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.VIEW}`)}\n </Button>\n </Popover>\n ) : null;\n };\n break;\n case ModelAttributeValueType.ARR:\n case ModelAttributeValueType.ENUMS:\n tempColumns = (\n value: string[],\n record: Record<string, any>,\n index: number\n ) => {\n return value && value.length > 0 ? value.join(\"; \") : null;\n };\n break;\n case ModelAttributeValueType.BOOLEAN:\n tempColumns = (v: boolean) => (isNil(v) ? \"\" : \"\" + v);\n break;\n case ModelAttributeValueType.JSON:\n tempColumns = (value: any) => {\n return (\n <JsonDisplayBrick\n value={value}\n name={attribute.name}\n isNumControlEllipsis={false}\n />\n );\n };\n break;\n case ModelAttributeValueType.STRING:\n switch (attribute.value.mode as any) {\n case \"xml\": {\n tempColumns = (v: string) => {\n return (\n <XmlDisplayBrick value={v} isNumControlEllipsis={false} />\n );\n };\n break;\n }\n case \"password\": {\n tempColumns = (v: string) => {\n return \"*\".repeat(v?.length);\n };\n break;\n }\n default: {\n tempColumns = (v: string) => v;\n }\n }\n break;\n case ModelAttributeValueType.FLOAT:\n tempColumns = (value: number) => {\n return <FloatDisplayBrick floatValue={value} />;\n };\n break;\n default:\n if (object.objectId === \"HOST\" && attribute.id in customRules) {\n tempColumns = (\n text: any,\n record: Record<string, any>,\n index: number\n ) => {\n if (!isBoolean(text) && (text || text === 0)) {\n text = compact(text.toString().split(\" \"));\n const valStr = text\n .map((item: any) => {\n return (customRules as any)[attribute.id](item, attribute);\n })\n .join(\" \");\n return valStr === \"\" ? undefined : valStr;\n }\n return (customRules as any)[attribute.id](text, attribute);\n };\n } else {\n tempColumns = (v: string) => v;\n }\n }\n }\n // istanbul ignore next\n if (tempColumns) {\n column.render =\n firstColumns && this.props.detailUrlTemplates\n ? (value: string, record: Record<string, any>, index: number) => {\n //要跳到的路由\n const detailUrlTemplate = getTemplateFromMap(\n this.props.detailUrlTemplates,\n object.objectId\n );\n if (detailUrlTemplate) {\n const data = {\n ...record,\n objectId: object.isAbstract\n ? record._object_id\n : object.objectId,\n };\n const url = parseTemplate(detailUrlTemplate, data);\n if (\n attribute.value.type === ModelAttributeValueType.STRUCT ||\n attribute.value.type === ModelAttributeValueType.STRUCT_LIST\n ) {\n return this.getSpecialUrlTemplates(\n object,\n record,\n tempColumns(value, record, index),\n url,\n true\n );\n }\n if (displayConfig && displayConfig.brick) {\n return this.getSpecialUrlTemplates(\n object,\n record,\n tempColumns(value, record, index),\n url\n );\n }\n return (\n <Link\n to={url}\n onClick={(e: MouseEvent | React.MouseEvent) =>\n this.handleClickItem(\n e as React.MouseEvent<HTMLAnchorElement, MouseEvent>,\n record\n )\n }\n data-testid=\"instance-detail-link\"\n {...(!firstColumns || object.isAbstract\n ? { target: \"_blank\" }\n : this.props.target\n ? { target: this.props.target }\n : {})}\n >\n {this.props.showTooltip ? (\n <Tooltip\n placement=\"top\"\n title={`${i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.JUMP_TO}`\n )}${\n object.isAbstract\n ? this.inheritanceModelIdNameMap?.[\n record._object_id\n ] || record._object_id\n : object.name\n }${i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.INSTANCE_DETAIL}`\n )}`}\n >\n <span>\n <span className={styles.iconWrap}>\n <GeneralIcon\n icon={{\n lib: \"easyops\",\n icon: \"search\",\n category: \"app\",\n color: \"#167be0\",\n }}\n />\n </span>\n <span className={styles.linkKey}>\n {tempColumns(value, record, index)}\n </span>\n </span>\n </Tooltip>\n ) : (\n <span>\n <span className={styles.iconWrap}>\n <GeneralIcon\n icon={{\n lib: \"easyops\",\n icon: \"search\",\n category: \"app\",\n color: \"#167be0\",\n }}\n />\n </span>\n <span className={styles.linkKey}>\n {tempColumns(value, record, index)}\n </span>\n </span>\n )}\n </Link>\n );\n } else {\n return this.getSpecialUrlTemplates(\n object,\n record,\n tempColumns(value, record, index)\n );\n }\n }\n : tempColumns;\n }\n return column;\n }\n\n handleRelationMoreIconClick(record: Record<string, any>): void {\n this.props?.onRelationMoreIconClick?.(record);\n }\n\n getRelationColumnData(\n relation: Partial<CmdbModels.ModelObjectRelation>,\n object: Partial<CmdbModels.ModelCmdbObject>,\n sides: RelationObjectSides,\n firstColumns?: boolean\n ): ColumnType<Record<string, any>> {\n const key = relation[`${sides.this}_id` as RelationIdKeys];\n\n const column: ColumnType<Record<string, any>> = {\n title: relation[`${sides.this}_name` as RelationNameKeys],\n dataIndex: key,\n sorter: !this.props.sortDisabled,\n className: styles.instanceListTableCell,\n };\n const displayConfig = this.keyDisplayConfigMap[key];\n let tempColumns: any;\n\n if (displayConfig) {\n tempColumns = this.getDisplayConfigColumn(displayConfig);\n } else {\n tempColumns = (\n instances: Record<string, any>[],\n record: Record<string, any>,\n index: number\n ) => {\n if (instances && instances.length > 0) {\n const objectId =\n relation[`${sides.that}_object_id` as RelationObjectIdKeys];\n const leftName = relation[`${sides.this}_name`];\n const rightId = relation[`${sides.that}_id`];\n const nameKeys = getInstanceNameKeys(\n this.props.idObjectMap[objectId]\n );\n let detailUrlTemplate: string;\n\n if (this.props.detailUrlTemplates) {\n detailUrlTemplate = getTemplateFromMap(\n this.props.detailUrlTemplates,\n objectId\n );\n }\n // 过滤后的实例\n const filterInstances = instances?.slice(0, this.props.relationLimit);\n const instanceNodes = filterInstances.map((instance, index) => {\n let subName: string;\n if (nameKeys.length > 1) {\n subName = instance[nameKeys[1]];\n }\n\n let instanceName = subName\n ? `${instance[nameKeys[0]]} (${subName})`\n : instance[nameKeys[0]];\n\n if (detailUrlTemplate) {\n const url = parseTemplate(detailUrlTemplate, {\n ...instance,\n objectId,\n });\n return (\n <React.Fragment key={instance.instanceId}>\n {index > 0 &&\n (this.props.separatorUsedInRelationData ?? \"; \")}\n {this.props.relationLinkDisabled ? (\n instanceName\n ) : (\n <Link\n target={\"_blank\"}\n // 使用 <Link> 以保持链接的原生能力\n to={url}\n className={styles.relationLink}\n // 自定义 onClick 以支持事件配置和拦截\n onClick={(e: MouseEvent | React.MouseEvent) =>\n this.handleClickItem(\n e as React.MouseEvent<HTMLAnchorElement, MouseEvent>,\n record\n )\n }\n >\n {instanceName}\n </Link>\n )}\n </React.Fragment>\n );\n } else {\n if (index > 0) {\n instanceName =\n (this.props.separatorUsedInRelationData ?? \"; \") +\n instanceName;\n }\n return instanceName;\n }\n });\n const instanceNodesWrapper = (\n <span\n className={classnames(styles.instanceListTableRelationWrapper)}\n >\n <span className={styles.instanceListTableRelationText}>\n {instanceNodes}\n </span>\n <Tooltip\n title={i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.RELATION_INSTANCE_TOOLTIP}`\n )}\n placement=\"top\"\n trigger={[\"hover\", \"focus\"]}\n >\n <span className={styles.relationMoreIcon}>\n <GeneralIcon\n icon={{\n lib: \"easyops\",\n category: \"patch-manager\",\n icon: \"patch-list\",\n }}\n onClick={() =>\n this.handleRelationMoreIconClick({\n ...record,\n objectId,\n left_name: leftName,\n right_id: rightId,\n })\n }\n />\n </span>\n </Tooltip>\n </span>\n );\n return instanceNodesWrapper;\n } else {\n return null;\n }\n };\n }\n // istanbul ignore next\n if (tempColumns) {\n column.render =\n firstColumns && this.props.detailUrlTemplates\n ? (value: string, record: Record<string, any>, index: number) => {\n //要跳到的路由\n const detailUrlTemplate = getTemplateFromMap(\n this.props.detailUrlTemplates,\n object.objectId\n );\n if (detailUrlTemplate) {\n const data = {\n ...record,\n objectId: object.objectId,\n };\n const url = parseTemplate(detailUrlTemplate, data);\n return this.getSpecialUrlTemplates(\n object,\n record,\n tempColumns(value, record, index),\n url\n );\n } else {\n return this.getSpecialUrlTemplates(\n object,\n record,\n tempColumns(value, record, index)\n );\n }\n }\n : tempColumns;\n }\n return column;\n }\n\n setColumnSortOrder<T = any>(column: ColumnType<T>) {\n if (\n (column.dataIndex !== undefined &&\n column.dataIndex === this.props.sort) ||\n (column.key !== undefined && column.key === this.props.sort)\n ) {\n column.sortOrder = this.props.asc ? SortOrder.Ascend : SortOrder.Descend;\n } else {\n column.sortOrder = null;\n }\n return column;\n }\n\n onChange = (\n pagination: TablePaginationConfig,\n filters: Record<string, (React.Key | boolean)[]>,\n sorter:\n | SorterResult<Record<string, any>>\n | SorterResult<Record<string, any>>[],\n extra: TableCurrentDataSource<Record<string, any>>\n ) => {\n const newInstanceSourceQuery = filters?._object_id?.[0] as string;\n if (newInstanceSourceQuery !== this.state.instanceSourceQuery) {\n this.props.onInstanceSourceChange(newInstanceSourceQuery);\n }\n if (\n // pagination.current will pass in 0 when total is 0 and sorter has changed\n (pagination.current > 0 &&\n pagination.current !== this.state.pagination.current) ||\n pagination.pageSize !== this.state.pagination.pageSize\n ) {\n this.props.onPaginationChange?.({\n page: pagination.current,\n pageSize: pagination.pageSize,\n });\n }\n if (!Array.isArray(sorter)) {\n const asc = { [SortOrder.Ascend]: true, [SortOrder.Descend]: false }[\n sorter.order\n ];\n if (\n (sorter.column ? sorter.field : undefined) !== this.props.sort ||\n asc !== this.props.asc\n ) {\n this.props.onSortingChange?.({ sort: sorter.field as string, asc });\n }\n }\n };\n\n onSelectChange = (\n selectedRowKeys: (string | number)[],\n selectedRows: Record<string, any>[]\n ) => {\n this.selectedRows = selectedRows;\n this.props.onSelectionChange?.({\n selectedKeys: selectedRowKeys as string[],\n selectedItems: selectedRows,\n });\n };\n handelIpCopyText = async (\n ev: React.MouseEvent<HTMLElement, MouseEvent>,\n dataIndex: string\n ) => {\n ev.stopPropagation();\n let selectedRowKeys = this.props.selectedRowKeys;\n let selectedRows = this.selectedRows.filter((v) => v);\n const objectId = this.props.modelData.objectId;\n if (selectedRowKeys?.length < 1) {\n message.warning(\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.SELECT_COPY_DATA}`)\n );\n return false;\n }\n selectedRowKeys = selectedRowKeys.filter((k) =>\n selectedRows.every((row) => row[this.ROM_KEY] !== k)\n );\n if (selectedRowKeys.length > 0) {\n let resp: any;\n const params = {\n query: {\n instanceId: {\n $in: selectedRowKeys,\n },\n },\n page_size: selectedRowKeys.length,\n page: 1,\n ...(this.props.useExternalCmdbApi\n ? {\n objectId,\n sourceId: this.props.externalSourceId,\n ignore_missing_field_error: true,\n }\n : {}),\n };\n // useExternalCmdbApi为true 调用外部接口\n if (this.props.useExternalCmdbApi) {\n resp = await http.post(\n \"api/gateway/easyops.api.cmdb.topo_center.ProxyPostSearchV3@1.0.1/api/v1/proxy-post-search-v3\",\n params\n );\n } else {\n resp = await InstanceApi_postSearch(objectId, params);\n }\n selectedRows = [...selectedRows, ...(resp?.list || [])];\n }\n const inputDom = document.createElement(\"textarea\");\n inputDom.value = [\n ...new Set(\n map(\n selectedRows.filter((v) => v[dataIndex]),\n dataIndex\n )\n ),\n ].join(\"\\n\");\n document.body.appendChild(inputDom);\n inputDom.select(); //选择对象\n document.execCommand(\"copy\");\n inputDom.remove();\n message.success(i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.COPY_SUCCESS}`));\n };\n componentDidUpdate(prevProps: InstanceListTableProps) {\n if (this.props.instanceListData !== prevProps.instanceListData) {\n this.setState({\n list: this.props.instanceListData.list,\n pagination: {\n ...this.state.defaultPagination,\n total: this.props.instanceListData.total,\n current: this.props.instanceListData.page,\n pageSize: this.props.instanceListData.page_size,\n },\n });\n }\n if (\n this.props.sort !== prevProps.sort ||\n this.props.asc !== prevProps.asc\n ) {\n const columns: ColumnType<Record<string, any>>[] = [];\n this.state.columns.forEach((column) =>\n columns.push(this.setColumnSortOrder(column))\n );\n this.setState({ columns });\n this.props.onColumnsChange?.(\n columns.map(({ dataIndex }) => ({ dataIndex }))\n );\n }\n if (this.props.instanceSourceQuery !== prevProps.instanceSourceQuery) {\n this.setState({\n instanceSourceQuery: this.props.instanceSourceQuery,\n });\n }\n }\n\n render(): React.ReactNode {\n const { selectedRowKeys, rowSelectionType } = this.props;\n const rowSelection: TableRowSelection<Record<string, any>> = this.props\n .selectDisabled\n ? null\n : {\n type: rowSelectionType,\n preserveSelectedRowKeys: true,\n selectedRowKeys,\n onChange: this.onSelectChange,\n };\n\n const classes = classnames({\n [styles.shouldEllipsis]: this.props.autoBreakLine,\n [styles.tableWrapper]: true,\n });\n this.state.columns.map((column) => {\n const dataIndex = column.dataIndex as string;\n // istanbul ignore next\n if (\n this.props.modelData.attrList.find((attr) => attr.id === dataIndex)\n ?.value?.mode === \"url\"\n ) {\n column.render = (text, row, index) => CmdbUrlLink({ linkStr: text });\n }\n if (\n this.props.ipCopy &&\n this.props.modelData.attrList.find((attr) => attr.id === dataIndex)\n ?.value?.type === \"ip\"\n ) {\n column.filterDropdown = () => <div></div>;\n column.filterIcon = () => (\n <Tooltip\n className={styles.copyWrap}\n title={i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.COPY_SELECTED_IP}`)}\n >\n <CopyOutlined\n style={{ fontSize: 16 }}\n onClick={(ev) => this.handelIpCopyText(ev, dataIndex)}\n />\n </Tooltip>\n );\n }\n });\n return (\n <div\n className={classes}\n style={{ overflowX: \"auto\", overflowY: \"hidden\" }}\n >\n <Table\n columns={\n this.props.showCustomizedSerialNumber\n ? [\n {\n dataIndex: \"customizedSerialNumber\",\n title: \"序号\",\n align: \"center\",\n },\n ...this.state.columns,\n ]\n : this.state.columns\n }\n dataSource={\n this.props.showCustomizedSerialNumber\n ? this.props.instanceListData.list.map((item, index) => ({\n ...item,\n customizedSerialNumber: index + 1,\n }))\n : this.props.instanceListData.list\n }\n rowKey={this.ROM_KEY}\n scroll={{\n x:\n this.props.fixedHeader || this.props.configProps?.scroll?.y\n ? (this.state.columns?.length ?? 0) * 150\n : \"max-content\",\n y: this.props.fixedHeader\n ? 560\n : this.props.configProps?.scroll?.y ?? null,\n }}\n pagination={this.state.pagination}\n rowSelection={rowSelection}\n onChange={this.onChange}\n expandable={{\n // ant的table数据中有children字段时会自动展示为树形表格,导致模型设置了id为children的字段或者关系字段时会出现报错或者不必要的展开样式\n // rowExpandable在dataSource含children属性时不生效,见https://github.com/ant-design/ant-design/issues/30444\n // 故这里将默认展开的字段设置为不符合模型属性id校验的值\n childrenColumnName: \"0\",\n }}\n {...omit(this.props.configProps, [\"scroll\"])}\n />\n </div>\n );\n }\n}\n// 临时做法 用HOC来间接声明契约,支持契约被扫描到\nexport const withProviderDeclare = (Component: any) => {\n // eslint-disable-next-line react/display-name\n return (props: any) => {\n const externalPostSearchV3 = useProvider(\n \"easyops.api.cmdb.topo_center@ProxyPostSearchV3:1.0.1\",\n { cache: false }\n );\n const externalGetIdMapName = useProvider(\n \"easyops.api.cmdb.topo_center@ProxyGetIdMapName:1.0.1\",\n { cache: false }\n );\n return <Component {...props} />;\n };\n};\n\nexport const InstanceListTable = React.memo(\n withTranslation(NS_LIBS_CMDB_INSTANCES)(\n withProviderDeclare(LegacyInstanceListTable)\n )\n);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -598,7 +598,7 @@ export function LegacyInstanceList(props) {
|
|
|
598
598
|
}
|
|
599
599
|
if (state.fieldIds) {
|
|
600
600
|
data.fields = Object.fromEntries(state.fieldIds.map(fieldId => [fieldId, true]));
|
|
601
|
-
v3Data.fields = [...state.fieldIds, ...v3Data.fields];
|
|
601
|
+
v3Data.fields = [...state.fieldIds, ...v3Data.fields, ...(modelData.isAbstract ? ["_object_id"] : [])];
|
|
602
602
|
v3Data.ignore_missing_field_error = true;
|
|
603
603
|
}
|
|
604
604
|
if (props.useAutoDiscoveryProvider) {
|