@next-libs/cmdb-instances 7.30.10 → 7.30.12

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.
@@ -1 +1 @@
1
- {"version":3,"file":"InstanceListTable.js","names":["React","withTranslation","classnames","Button","Popover","Table","Tag","Tooltip","Modal","message","isNil","isBoolean","compact","map","omit","CopyOutlined","DeleteOutlined","PropertyDisplayType","CmdbObjectApi_getIdMapName","InstanceApi_postSearch","http","Link","GeneralIcon","forEachAvailableFields","getInstanceNameKeys","getTemplateFromMap","parseTemplate","modifyModelData","ModelAttributeValueType","StructTable","styles","customRules","BrickAsComponent","useProvider","NS_LIBS_CMDB_INSTANCES","K","i18n","CmdbUrlLink","FloatDisplayBrick","JsonDisplayBrick","XmlDisplayBrick","SortOrder","SELF_RENDER_COLUMNS","HOST","key","brick","CLUSTER","properties","fields","value","showBg","LegacyInstanceListTable","Component","constructor","props","_this","_SELF_RENDER_COLUMNS$","_this$props$propertyD","_this$props$onColumns","_this$props4","this","_defineProperty","createElement","Fragment","t","concat","INSTANCE_SOURCE","title","INSTANCE_SOURCE_TOOLTIP","className","titleTooltipIcon","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","_ref","_asyncToGenerator","ev","dataIndex","_selectedRowKeys","stopPropagation","filter","v","objectId","modelData","length","warning","SELECT_COPY_DATA","k","every","row","ROM_KEY","_resp","resp","params","_objectSpread","query","instanceId","$in","page_size","useExternalCmdbApi","sourceId","externalSourceId","ignore_missing_field_error","post","list","inputDom","document","Set","join","body","appendChild","select","execCommand","remove","success","COPY_SUCCESS","_x","_x2","apply","arguments","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","_ref2","instanceListData","openConfirmModal","index","confirm","DELETE_INSTANCE_CONFIRM_MSG","okText","CONFIRM","okType","cancelText","CANCEL","onOk","processList","splice","handleDeleteFunction","ids","attr","firstColumns","push","setColumnSortOrder","getAttributeColumnData","relation","sides","getRelationColumnData","isAbstract","i","getTransHierRelationColumnData","idColumnMap","Map","set","view","attr_order","id","get","delete","isOperate","OPERATION","structTableTd","fixed","render","_text","record","type","style","color","onClick","mergedColumns","processExtraColumns","instanceSourceTitle","filterInstanceSourceDisabled","text","filterMultiple","filteredValue","_this$inheritanceMode","c","recordUseBrickDataMap","useBrick","processedColumn","_objectWithoutProperties","_excluded","data","cellData","rowData","componentDidMount","_this2","_this2$props$onColumn","_this2$props","parentObjectId","showFields","changeColumns","_this2$props$hiddenCo","setState","_ref3","UNSAFE_componentWillReceiveProps","nextProps","_this$props$onColumns2","_this$props5","_this$props$hiddenCol2","_ref4","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","to","relationMoreIcon","attribute","_this$props$fixedFiel","instanceListTableCell","fixedFieldIds","displayConfig","tempColumns","attrValueType","STRUCT","ATTACHMENT","STRUCT_LIST","sortDisabled","values","valueColorMap","isLegacy","overlayStyle","maxWidth","width","height","content","structData","padding","VIEW","ARR","ENUMS","BOOLEAN","JSON","isNumControlEllipsis","STRING","mode","repeat","FLOAT","floatValue","toString","split","valStr","item","detailUrlTemplates","detailUrlTemplate","_this$inheritanceMode2","_extends","target","handleRelationMoreIconClick","sourceObjectId","_this$props6","_this$props6$onRelati","onRelationMoreIconClick","_this$props$fixedFiel2","instances","that","leftName","rightId","nameKeys","idObjectMap","filterInstances","slice","relationLimit","instanceNodes","instance","subName","instanceName","_this$props$separator","separatorUsedInRelationData","relationLinkDisabled","relationLink","_this$props$separator2","instanceNodesWrapper","instanceListTableRelationWrapper","instanceListTableRelationText","RELATION_INSTANCE_TOOLTIP","trigger","left_name","right_id","_this$props$fixedFiel3","relation_id","relation_name","_relation$display_key","relation_object","reverse_query_path","display_keys","_this$props$separator3","_this$props$separator4","instanceIds","sortOrder","componentDidUpdate","prevProps","_this$props$onColumns3","_this$props7","_ref5","_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","linkStr","ipCopy","filterDropdown","filterIcon","copyWrap","COPY_SELECTED_IP","fontSize","handelIpCopyText","overflowX","overflowY","showCustomizedSerialNumber","align","customizedSerialNumber","rowKey","scroll","x","fixedHeader","configProps","y","expandable","childrenColumnName","withProviderDeclare","externalPostSearchV3","cache","externalGetIdMapName","InstanceListTable","memo"],"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\";\nimport { TransHierRelationType } from \"@next-libs/cmdb-utils\";\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\ntype ObjectType = Partial<CmdbModels.ModelCmdbObject> & {\n view?: Partial<CmdbModels.ModelObjectView> & {\n trans_hier_relation_list?: TransHierRelationType[];\n };\n};\nexport interface InstanceListTableProps extends WithTranslation {\n detailUrlTemplates?: Record<string, string>;\n fieldIds?: string[];\n idObjectMap: Record<string, ObjectType>;\n modelData: Partial<ObjectType>;\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 // 支持表格项固定列展示的字段数组\n fixedFieldIds?: string[];\n onRelationMoreIconClick?(\n record: Record<string, any>,\n relation?: Record<string, any>,\n sourceObjectId?: string\n ): 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, true),\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 (relation, firstColumns?: boolean) => {\n columns.push(\n this.setColumnSortOrder(\n this.getTransHierRelationColumnData(\n relation,\n this.props.modelData,\n firstColumns\n )\n )\n );\n }\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<ObjectType>,\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<ObjectType>,\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 fixed: this.props.fixedFieldIds?.includes(attribute.id) ? \"right\" : false,\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(\n record: Record<string, any>,\n relation?: Record<string, any>,\n sourceObjectId?: string\n ): void {\n this.props?.onRelationMoreIconClick?.(record, relation, sourceObjectId);\n }\n\n getRelationColumnData(\n relation: Partial<CmdbModels.ModelObjectRelation>,\n object: Partial<ObjectType>,\n sides: RelationObjectSides,\n firstColumns?: boolean\n ): ColumnType<Record<string, any>> {\n const key = relation[`${sides.this}_id` as RelationIdKeys];\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 fixed: this.props.fixedFieldIds?.includes(key) ? \"right\" : false,\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 getTransHierRelationColumnData(\n relation: TransHierRelationType,\n object: Partial<ObjectType>,\n firstColumns?: boolean\n ): ColumnType<Record<string, any>> {\n const key = relation.relation_id;\n const column: ColumnType<Record<string, any>> = {\n title: relation.relation_name,\n dataIndex: key,\n sorter: false,\n className: styles.instanceListTableCell,\n fixed: this.props.fixedFieldIds?.includes(key) ? \"right\" : false,\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 = relation.relation_object;\n const leftName = relation.relation_name;\n const rightId = relation.reverse_query_path;\n const nameKeys = relation.display_keys?.length\n ? relation.display_keys\n : getInstanceNameKeys(this.props.idObjectMap[objectId]);\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 {\n ...record,\n objectId,\n left_name: leftName,\n right_id: rightId,\n instanceIds: instances.map((i) => i.instanceId),\n },\n relation,\n this.props.modelData.objectId\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","withTranslation","classnames","Button","Popover","Table","Tag","Tooltip","Modal","message","isNil","isBoolean","compact","map","omit","CopyOutlined","DeleteOutlined","PropertyDisplayType","CmdbObjectApi_getIdMapName","InstanceApi_postSearch","http","Link","GeneralIcon","forEachAvailableFields","getInstanceNameKeys","getTemplateFromMap","parseTemplate","modifyModelData","ModelAttributeValueType","StructTable","styles","customRules","BrickAsComponent","useProvider","NS_LIBS_CMDB_INSTANCES","K","i18n","CmdbUrlLink","FloatDisplayBrick","JsonDisplayBrick","XmlDisplayBrick","SortOrder","SELF_RENDER_COLUMNS","HOST","key","brick","CLUSTER","properties","fields","value","showBg","LegacyInstanceListTable","Component","constructor","props","_this","_SELF_RENDER_COLUMNS$","_this$props$propertyD","_this$props$onColumns","_this$props4","this","_defineProperty","createElement","Fragment","t","concat","INSTANCE_SOURCE","title","INSTANCE_SOURCE_TOOLTIP","className","titleTooltipIcon","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","_ref","_asyncToGenerator","ev","dataIndex","_selectedRowKeys","stopPropagation","filter","v","objectId","modelData","length","warning","SELECT_COPY_DATA","k","every","row","ROM_KEY","_resp","resp","params","_objectSpread","query","instanceId","$in","page_size","useExternalCmdbApi","sourceId","externalSourceId","ignore_missing_field_error","post","list","inputDom","document","Set","join","body","appendChild","select","execCommand","remove","success","COPY_SUCCESS","_x","_x2","apply","arguments","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","_ref2","instanceListData","openConfirmModal","index","confirm","DELETE_INSTANCE_CONFIRM_MSG","okText","CONFIRM","okType","cancelText","CANCEL","onOk","processList","splice","handleDeleteFunction","ids","attr","firstColumns","push","setColumnSortOrder","getAttributeColumnData","relation","sides","getRelationColumnData","isAbstract","i","getTransHierRelationColumnData","idColumnMap","Map","set","view","attr_order","id","get","delete","isOperate","OPERATION","structTableTd","fixed","render","_text","record","type","style","color","onClick","mergedColumns","processExtraColumns","instanceSourceTitle","filterInstanceSourceDisabled","text","filterMultiple","filteredValue","_this$inheritanceMode","c","recordUseBrickDataMap","useBrick","processedColumn","_objectWithoutProperties","_excluded","data","cellData","rowData","componentDidMount","_this2","_this2$props$onColumn","_this2$props","parentObjectId","showFields","changeColumns","_this2$props$hiddenCo","setState","_ref3","UNSAFE_componentWillReceiveProps","nextProps","_this$props$onColumns2","_this$props5","_this$props$hiddenCol2","_ref4","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","to","relationMoreIcon","attribute","_this$props$fixedFiel","instanceListTableCell","fixedFieldIds","displayConfig","tempColumns","attrValueType","STRUCT","ATTACHMENT","STRUCT_LIST","sortDisabled","values","valueColorMap","isLegacy","overlayStyle","maxWidth","width","height","content","structData","padding","VIEW","ARR","ENUMS","BOOLEAN","JSON","isNumControlEllipsis","STRING","mode","repeat","FLOAT","floatValue","toString","split","valStr","item","detailUrlTemplates","detailUrlTemplate","_this$inheritanceMode2","_extends","target","handleRelationMoreIconClick","sourceObjectId","_this$props6","_this$props6$onRelati","onRelationMoreIconClick","_this$props$fixedFiel2","instances","that","leftName","rightId","nameKeys","idObjectMap","filterInstances","slice","relationLimit","instanceNodes","instance","subName","instanceName","_this$props$separator","separatorUsedInRelationData","relationLinkDisabled","relationLink","_this$props$separator2","instanceNodesWrapper","instanceListTableRelationWrapper","instanceListTableRelationText","RELATION_INSTANCE_TOOLTIP","trigger","left_name","right_id","_this$props$fixedFiel3","relation_id","relation_name","_relation$display_key","relation_object","reverse_query_path","display_keys","_this$props$separator3","_this$props$separator4","instanceIds","sortOrder","componentDidUpdate","prevProps","_this$props$onColumns3","_this$props7","_ref5","_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","linkStr","ipCopy","filterDropdown","filterIcon","copyWrap","COPY_SELECTED_IP","fontSize","handelIpCopyText","overflowX","overflowY","showCustomizedSerialNumber","align","customizedSerialNumber","rowKey","scroll","x","fixedHeader","configProps","y","expandable","childrenColumnName","withProviderDeclare","externalPostSearchV3","cache","externalGetIdMapName","InstanceListTable","memo"],"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\";\nimport { TransHierRelationType } from \"@next-libs/cmdb-utils\";\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\ntype ObjectType = Partial<CmdbModels.ModelCmdbObject> & {\n view?: Partial<CmdbModels.ModelObjectView> & {\n trans_hier_relation_list?: TransHierRelationType[];\n };\n};\nexport interface InstanceListTableProps extends WithTranslation {\n detailUrlTemplates?: Record<string, string>;\n fieldIds?: string[];\n idObjectMap: Record<string, ObjectType>;\n modelData: Partial<ObjectType>;\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 // 支持表格项固定列展示的字段数组\n fixedFieldIds?: string[];\n onRelationMoreIconClick?(\n record: Record<string, any>,\n relation?: Record<string, any>,\n sourceObjectId?: string\n ): 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, true),\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 (relation, firstColumns?: boolean) => {\n columns.push(\n this.setColumnSortOrder(\n this.getTransHierRelationColumnData(\n relation,\n this.props.modelData,\n firstColumns\n )\n )\n );\n }\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<ObjectType>,\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<ObjectType>,\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 fixed: this.props.fixedFieldIds?.includes(attribute.id) ? \"right\" : false,\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(\n record: Record<string, any>,\n relation?: Record<string, any>,\n sourceObjectId?: string\n ): void {\n this.props?.onRelationMoreIconClick?.(record, relation, sourceObjectId);\n }\n\n getRelationColumnData(\n relation: Partial<CmdbModels.ModelObjectRelation>,\n object: Partial<ObjectType>,\n sides: RelationObjectSides,\n firstColumns?: boolean\n ): ColumnType<Record<string, any>> {\n const key = relation[`${sides.this}_id` as RelationIdKeys];\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 fixed: this.props.fixedFieldIds?.includes(key) ? \"right\" : false,\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 getTransHierRelationColumnData(\n relation: TransHierRelationType,\n object: Partial<ObjectType>,\n firstColumns?: boolean\n ): ColumnType<Record<string, any>> {\n const key = relation.relation_id;\n const column: ColumnType<Record<string, any>> = {\n title: relation.relation_name,\n dataIndex: key,\n sorter: false,\n className: styles.instanceListTableCell,\n fixed: this.props.fixedFieldIds?.includes(key) ? \"right\" : false,\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 = relation.relation_object;\n const leftName = relation.relation_name;\n const rightId = relation.reverse_query_path;\n const nameKeys = relation.display_keys?.length\n ? relation.display_keys\n : getInstanceNameKeys(this.props.idObjectMap[objectId]);\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]] || undefined}`;\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 {\n ...record,\n objectId,\n left_name: leftName,\n right_id: rightId,\n instanceIds: instances.map((i) => i.instanceId),\n },\n relation,\n this.props.modelData.objectId\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":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@next-libs/cmdb-instances",
3
- "version": "7.30.10",
3
+ "version": "7.30.12",
4
4
  "description": "> TODO: description",
5
5
  "homepage": "https://github.com/easyops-cn/next-libs/tree/master/libs/cmdb-instances",
6
6
  "license": "GPL-3.0",
@@ -52,5 +52,5 @@
52
52
  "js-base64": "^3.7.7",
53
53
  "marked": "^2.1.3"
54
54
  },
55
- "gitHead": "513ee4d36de0fd815a96b115f6e9f78cbb94ecf3"
55
+ "gitHead": "667088dfa9c5571b2dc41d7180230046ca031691"
56
56
  }