@next-libs/cmdb-instances 7.4.0 → 7.6.0
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/i18n/constants.js +2 -0
- package/dist/cjs/i18n/constants.js.map +1 -1
- package/dist/cjs/i18n/locales/en.js +3 -1
- package/dist/cjs/i18n/locales/en.js.map +1 -1
- package/dist/cjs/i18n/locales/zh.js +3 -1
- package/dist/cjs/i18n/locales/zh.js.map +1 -1
- package/dist/cjs/instance-list/FilterInstanceSource.js +144 -0
- package/dist/cjs/instance-list/FilterInstanceSource.js.map +1 -0
- package/dist/cjs/instance-list/IconButton.js +10 -0
- package/dist/cjs/instance-list/IconButton.js.map +1 -1
- package/dist/cjs/instance-list/InstanceList.js +54 -0
- package/dist/cjs/instance-list/InstanceList.js.map +1 -1
- package/dist/cjs/instance-list-modal/InstanceListModal.js +6 -1
- package/dist/cjs/instance-list-modal/InstanceListModal.js.map +1 -1
- package/dist/esm/i18n/constants.js +2 -0
- package/dist/esm/i18n/constants.js.map +1 -1
- package/dist/esm/i18n/locales/en.js +3 -1
- package/dist/esm/i18n/locales/en.js.map +1 -1
- package/dist/esm/i18n/locales/zh.js +3 -1
- package/dist/esm/i18n/locales/zh.js.map +1 -1
- package/dist/esm/instance-list/FilterInstanceSource.js +138 -0
- package/dist/esm/instance-list/FilterInstanceSource.js.map +1 -0
- package/dist/esm/instance-list/FilterInstanceSource.module.css +13 -0
- package/dist/esm/instance-list/IconButton.js +10 -0
- package/dist/esm/instance-list/IconButton.js.map +1 -1
- package/dist/esm/instance-list/InstanceList.js +58 -4
- package/dist/esm/instance-list/InstanceList.js.map +1 -1
- package/dist/esm/instance-list-modal/InstanceListModal.js +6 -1
- package/dist/esm/instance-list-modal/InstanceListModal.js.map +1 -1
- package/dist/types/i18n/constants.d.ts +3 -1
- package/dist/types/instance-list/FilterInstanceSource.d.ts +15 -0
- package/dist/types/instance-list/FilterInstanceSource.spec.d.ts +1 -0
- package/dist/types/instance-list/InstanceList.d.ts +11 -0
- package/dist/types/instance-list-modal/InstanceListModal.d.ts +6 -0
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InstanceListModal.js","names":["React","useState","WarningOutlined","Modal","Button","Tooltip","i18n","InstanceApi_postSearch","K","NS_LIBS_CMDB_INSTANCES","InstanceList","addResourceBundle","InstanceListModal","props","selectedInstanceListTemp","setSelectedInstanceListTemp","handleOk","length","every","i","resp","objectId","query","instanceId","$in","page_size","onSelected","onSelectedV2","list","map","selectedInstance","handleCancel","selectedRowKeys","onCancel","handleSelectionChange","event","selectedItems","selectedKeys","handlePaginationChange","getPaginationData","presetConfigs","fixAliveHosts","_agentStatus","useEffect","filter","Boolean","renderFooter","showBindButton","bindButtonDisabled","disabledTooltip","t","PERMISSION_DENIED","position","left","CREATE_AND_BIND","bindEvent","singleSelect","color","marginRight","ONLY_ONE_INSTANCE_TO_ALLOWED","selectDisabled","showCloseBtn","CLOSE","CANCEL","CONFIRM","title","visible","modalZIndex","maxHeight","overflow","aq","Object","values","objectMap","extraFilterBricks","permission","instanceSourceQuery","searchDisabled","filterInstanceSourceDisabled","advancedSearchDisabled","aliveHostsDisabled","relatedToMeDisabled","moreButtonsDisabled","sortDisabled","showSizeChanger","pageSizeOptions","pageSize","page","defaultQuery","enableSearchByApp","hideSearchConditions","isInstanceFilterForm","ipCopy","rowSelectionType","extraFixedFields","limitInstanceRange"],"sources":["../../../src/instance-list-modal/InstanceListModal.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport { WarningOutlined } from \"@ant-design/icons\";\nimport { Modal, Button, Tooltip } from \"antd\";\nimport i18n from \"i18next\";\nimport { CmdbModels, InstanceApi_postSearch } from \"@next-sdk/cmdb-sdk\";\nimport { Query } from \"@next-libs/cmdb-utils\";\nimport { K, NS_LIBS_CMDB_INSTANCES } from \"../i18n/constants\";\nimport { InstanceList } from \"../instance-list/InstanceList\";\nimport { InstanceListPresetConfigs } from \"../instance-list-table/interfaces\";\nimport { addResourceBundle } from \"../i18n\";\nimport {\n ReadPaginationChangeDetail,\n UseBrickConf,\n} from \"@next-core/brick-types\";\naddResourceBundle();\nexport interface InstanceListModalProps {\n objectMap: { [key: string]: Partial<CmdbModels.ModelCmdbObject> };\n objectId: string;\n visible: boolean;\n title: React.ReactNode | string;\n query?: any;\n presetConfigs?: InstanceListPresetConfigs;\n permission?: string[];\n aq?: Query[];\n instanceSourceQuery?: string;\n isInstanceFilterForm?: boolean;\n searchDisabled?: boolean;\n advancedSearchDisabled?: boolean;\n aliveHostsDisabled?: boolean;\n relatedToMeDisabled?: boolean;\n moreButtonsDisabled?: boolean;\n filterInstanceSourceDisabled?: boolean;\n sortDisabled?: boolean;\n selectDisabled?: boolean;\n showCloseBtn?: boolean;\n ipCopy?: boolean;\n singleSelect?: boolean;\n selectedRowKeys?: string[];\n onCancel: () => void;\n onSelected?: (instanceIds: any[]) => void;\n onSelectedV2?: (instanceDataList: any[]) => void;\n modalZIndex?: number;\n pageSize?: number;\n page?: number;\n showSizeChanger?: boolean;\n pageSizeOptions?: string[];\n defaultQuery?: { [fieldId: string]: any }[];\n enableSearchByApp?: boolean;\n hideSearchConditions?: boolean;\n rowSelectionType?: \"checkbox\" | \"radio\";\n getPaginationData?(pagination: ReadPaginationChangeDetail): void;\n extraFixedFields?: string[];\n limitInstanceRange?: boolean;\n extraFilterBricks?: {\n useBrick: UseBrickConf;\n };\n showBindButton?: boolean;\n bindEvent?: () => void;\n bindButtonDisabled?: boolean;\n disabledTooltip?: string;\n}\n\nexport function InstanceListModal(\n props: InstanceListModalProps\n): React.ReactElement {\n const [selectedInstanceListTemp, setSelectedInstanceListTemp] = useState([]);\n\n // istanbul ignore next\n const handleOk = async () => {\n if (\n selectedInstanceListTemp.length &&\n selectedInstanceListTemp.every((i) => typeof i === \"string\")\n ) {\n const resp = await InstanceApi_postSearch(props.objectId, {\n query: {\n instanceId: {\n $in: selectedInstanceListTemp,\n },\n },\n page_size: selectedInstanceListTemp.length,\n });\n props.onSelected?.(selectedInstanceListTemp);\n props.onSelectedV2?.(resp.list);\n return;\n }\n\n props.onSelected?.(\n selectedInstanceListTemp.map(\n (selectedInstance) => selectedInstance.instanceId\n )\n );\n props.onSelectedV2?.(selectedInstanceListTemp);\n };\n // istanbul ignore next\n const handleCancel = () => {\n // reset selected\n setSelectedInstanceListTemp(props.selectedRowKeys ?? []);\n props.onCancel();\n };\n // istanbul ignore next\n const handleSelectionChange = (event: {\n selectedKeys: string[];\n selectedItems: any[];\n }) => {\n if (event.selectedItems.length < event.selectedKeys.length) {\n setSelectedInstanceListTemp(event.selectedKeys);\n } else {\n setSelectedInstanceListTemp(event.selectedItems);\n }\n };\n //istanbul ignore next\n const handlePaginationChange = (event: {\n page: number;\n pageSize: number;\n }) => {\n props.getPaginationData?.(event);\n };\n const presetConfigs = props.presetConfigs ?? {\n query: props.query,\n };\n\n const fixAliveHosts = presetConfigs.query?._agentStatus === \"正常\";\n\n React.useEffect(() => {\n if (props.selectedRowKeys) {\n setSelectedInstanceListTemp(props.selectedRowKeys.filter(Boolean));\n }\n }, [props.selectedRowKeys]);\n\n const renderFooter = (): React.ReactElement => {\n const { showBindButton, bindButtonDisabled, disabledTooltip } = props;\n return (\n <>\n {!!showBindButton &&\n (bindButtonDisabled ? (\n <Tooltip\n title={\n disabledTooltip ||\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.PERMISSION_DENIED}`)\n }\n >\n <Button style={{ position: \"absolute\", left: \"24px\" }} disabled>\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CREATE_AND_BIND}`)}\n </Button>\n </Tooltip>\n ) : (\n <Button\n style={{ position: \"absolute\", left: \"24px\" }}\n onClick={props.bindEvent}\n >\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CREATE_AND_BIND}`)}\n </Button>\n ))}\n {props.singleSelect && selectedInstanceListTemp.length > 1 && (\n <span style={{ color: \"#ff0016\", marginRight: \"20px\" }}>\n <WarningOutlined\n style={{ color: \"#ff0016\", marginRight: \"10px\" }}\n />\n {i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.ONLY_ONE_INSTANCE_TO_ALLOWED}`\n )}\n </span>\n )}\n {(props.selectDisabled || props.showCloseBtn) && (\n <Button key=\"back\" onClick={props.onCancel}>\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CLOSE}`)}\n </Button>\n )}\n {!props.selectDisabled && !props.showCloseBtn && (\n <>\n <Button key=\"back\" onClick={handleCancel} type=\"text\">\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CANCEL}`)}\n </Button>\n <Button\n key=\"submit\"\n type=\"primary\"\n onClick={handleOk}\n disabled={\n !selectedInstanceListTemp.length ||\n (props.singleSelect && selectedInstanceListTemp.length > 1)\n }\n >\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CONFIRM}`)}\n </Button>\n </>\n )}\n </>\n );\n };\n return (\n <Modal\n title={props.title}\n visible={props.visible}\n width={900}\n onOk={handleOk}\n onCancel={handleCancel}\n destroyOnClose={true}\n footer={renderFooter()}\n zIndex={props.modalZIndex ?? 1000}\n >\n <div style={{ maxHeight: 720, overflow: \"auto\" }}>\n <InstanceList\n aq={props.aq}\n objectId={props.objectId}\n objectList={Object.values(props.objectMap)}\n presetConfigs={presetConfigs}\n extraFilterBricks={props.extraFilterBricks}\n permission={props.permission}\n aliveHosts={fixAliveHosts}\n fixAliveHosts={fixAliveHosts}\n instanceSourceQuery={props.instanceSourceQuery}\n searchDisabled={props.searchDisabled}\n filterInstanceSourceDisabled={props.filterInstanceSourceDisabled}\n advancedSearchDisabled={props.advancedSearchDisabled}\n aliveHostsDisabled={props.aliveHostsDisabled}\n relatedToMeDisabled={props.relatedToMeDisabled}\n moreButtonsDisabled={props.moreButtonsDisabled}\n sortDisabled={props.sortDisabled}\n selectDisabled={props.selectDisabled}\n selectedRowKeys={props.selectedRowKeys}\n onSelectionChange={handleSelectionChange}\n showSizeChanger={props.showSizeChanger}\n pageSizeOptions={props.pageSizeOptions}\n pageSize={props.pageSize || 10}\n page={props.page}\n defaultQuery={props.defaultQuery}\n enableSearchByApp={props.enableSearchByApp}\n hideSearchConditions={props.hideSearchConditions}\n isInstanceFilterForm={props.isInstanceFilterForm}\n ipCopy={props.ipCopy}\n rowSelectionType={props.rowSelectionType}\n onPaginationChange={handlePaginationChange}\n extraFixedFields={props.extraFixedFields}\n limitInstanceRange={props.limitInstanceRange}\n />\n </div>\n </Modal>\n );\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"InstanceListModal.js","names":["React","useState","WarningOutlined","Modal","Button","Tooltip","i18n","InstanceApi_postSearch","K","NS_LIBS_CMDB_INSTANCES","InstanceList","addResourceBundle","InstanceListModal","props","selectedInstanceListTemp","setSelectedInstanceListTemp","handleOk","length","every","i","resp","objectId","query","instanceId","$in","page_size","onSelected","onSelectedV2","list","map","selectedInstance","handleCancel","selectedRowKeys","onCancel","handleSelectionChange","event","selectedItems","selectedKeys","handlePaginationChange","getPaginationData","presetConfigs","fixAliveHosts","_agentStatus","useEffect","filter","Boolean","renderFooter","showBindButton","bindButtonDisabled","disabledTooltip","t","PERMISSION_DENIED","position","left","CREATE_AND_BIND","bindEvent","singleSelect","color","marginRight","ONLY_ONE_INSTANCE_TO_ALLOWED","selectDisabled","showCloseBtn","CLOSE","CANCEL","CONFIRM","title","visible","modalZIndex","maxHeight","overflow","aq","Object","values","objectMap","extraFilterBricks","permission","instanceSourceQuery","searchDisabled","filterInstanceSourceDisabled","advancedSearchDisabled","aliveHostsDisabled","relatedToMeDisabled","moreButtonsDisabled","sortDisabled","showSizeChanger","pageSizeOptions","pageSize","page","defaultQuery","enableSearchByApp","hideSearchConditions","isInstanceFilterForm","ipCopy","rowSelectionType","extraFixedFields","limitInstanceRange","showFilterInstanceSource","filterInstanceSource","onFilterInstanceSourceChange","objectIdQuery","onFilterObjectIdChange"],"sources":["../../../src/instance-list-modal/InstanceListModal.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport { WarningOutlined } from \"@ant-design/icons\";\nimport { Modal, Button, Tooltip } from \"antd\";\nimport i18n from \"i18next\";\nimport { CmdbModels, InstanceApi_postSearch } from \"@next-sdk/cmdb-sdk\";\nimport { Query } from \"@next-libs/cmdb-utils\";\nimport { K, NS_LIBS_CMDB_INSTANCES } from \"../i18n/constants\";\nimport {\n InstanceList,\n filterObjectIdQuery,\n} from \"../instance-list/InstanceList\";\nimport { InstanceListPresetConfigs } from \"../instance-list-table/interfaces\";\nimport { addResourceBundle } from \"../i18n\";\nimport {\n ReadPaginationChangeDetail,\n UseBrickConf,\n} from \"@next-core/brick-types\";\naddResourceBundle();\nexport interface InstanceListModalProps {\n objectMap: { [key: string]: Partial<CmdbModels.ModelCmdbObject> };\n objectId: string;\n visible: boolean;\n title: React.ReactNode | string;\n query?: any;\n presetConfigs?: InstanceListPresetConfigs;\n permission?: string[];\n aq?: Query[];\n instanceSourceQuery?: string;\n isInstanceFilterForm?: boolean;\n searchDisabled?: boolean;\n advancedSearchDisabled?: boolean;\n aliveHostsDisabled?: boolean;\n relatedToMeDisabled?: boolean;\n moreButtonsDisabled?: boolean;\n filterInstanceSourceDisabled?: boolean;\n sortDisabled?: boolean;\n selectDisabled?: boolean;\n showCloseBtn?: boolean;\n ipCopy?: boolean;\n singleSelect?: boolean;\n selectedRowKeys?: string[];\n onCancel: () => void;\n onSelected?: (instanceIds: any[]) => void;\n onSelectedV2?: (instanceDataList: any[]) => void;\n modalZIndex?: number;\n pageSize?: number;\n page?: number;\n showSizeChanger?: boolean;\n pageSizeOptions?: string[];\n defaultQuery?: { [fieldId: string]: any }[];\n enableSearchByApp?: boolean;\n hideSearchConditions?: boolean;\n rowSelectionType?: \"checkbox\" | \"radio\";\n getPaginationData?(pagination: ReadPaginationChangeDetail): void;\n extraFixedFields?: string[];\n limitInstanceRange?: boolean;\n extraFilterBricks?: {\n useBrick: UseBrickConf;\n };\n showBindButton?: boolean;\n bindEvent?: () => void;\n bindButtonDisabled?: boolean;\n disabledTooltip?: string;\n // 是否开启实例来源筛选\n showFilterInstanceSource?: boolean;\n filterInstanceSource?: boolean;\n onFilterInstanceSourceChange?(value: boolean): void;\n onFilterObjectIdChange?(value: filterObjectIdQuery): void;\n objectIdQuery?: string;\n}\n\nexport function InstanceListModal(\n props: InstanceListModalProps\n): React.ReactElement {\n const [selectedInstanceListTemp, setSelectedInstanceListTemp] = useState([]);\n\n // istanbul ignore next\n const handleOk = async () => {\n if (\n selectedInstanceListTemp.length &&\n selectedInstanceListTemp.every((i) => typeof i === \"string\")\n ) {\n const resp = await InstanceApi_postSearch(props.objectId, {\n query: {\n instanceId: {\n $in: selectedInstanceListTemp,\n },\n },\n page_size: selectedInstanceListTemp.length,\n });\n props.onSelected?.(selectedInstanceListTemp);\n props.onSelectedV2?.(resp.list);\n return;\n }\n\n props.onSelected?.(\n selectedInstanceListTemp.map(\n (selectedInstance) => selectedInstance.instanceId\n )\n );\n props.onSelectedV2?.(selectedInstanceListTemp);\n };\n // istanbul ignore next\n const handleCancel = () => {\n // reset selected\n setSelectedInstanceListTemp(props.selectedRowKeys ?? []);\n props.onCancel();\n };\n // istanbul ignore next\n const handleSelectionChange = (event: {\n selectedKeys: string[];\n selectedItems: any[];\n }) => {\n if (event.selectedItems.length < event.selectedKeys.length) {\n setSelectedInstanceListTemp(event.selectedKeys);\n } else {\n setSelectedInstanceListTemp(event.selectedItems);\n }\n };\n //istanbul ignore next\n const handlePaginationChange = (event: {\n page: number;\n pageSize: number;\n }) => {\n props.getPaginationData?.(event);\n };\n const presetConfigs = props.presetConfigs ?? {\n query: props.query,\n };\n\n const fixAliveHosts = presetConfigs.query?._agentStatus === \"正常\";\n\n React.useEffect(() => {\n if (props.selectedRowKeys) {\n setSelectedInstanceListTemp(props.selectedRowKeys.filter(Boolean));\n }\n }, [props.selectedRowKeys]);\n\n const renderFooter = (): React.ReactElement => {\n const { showBindButton, bindButtonDisabled, disabledTooltip } = props;\n return (\n <>\n {!!showBindButton &&\n (bindButtonDisabled ? (\n <Tooltip\n title={\n disabledTooltip ||\n i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.PERMISSION_DENIED}`)\n }\n >\n <Button style={{ position: \"absolute\", left: \"24px\" }} disabled>\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CREATE_AND_BIND}`)}\n </Button>\n </Tooltip>\n ) : (\n <Button\n style={{ position: \"absolute\", left: \"24px\" }}\n onClick={props.bindEvent}\n >\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CREATE_AND_BIND}`)}\n </Button>\n ))}\n {props.singleSelect && selectedInstanceListTemp.length > 1 && (\n <span style={{ color: \"#ff0016\", marginRight: \"20px\" }}>\n <WarningOutlined\n style={{ color: \"#ff0016\", marginRight: \"10px\" }}\n />\n {i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.ONLY_ONE_INSTANCE_TO_ALLOWED}`\n )}\n </span>\n )}\n {(props.selectDisabled || props.showCloseBtn) && (\n <Button key=\"back\" onClick={props.onCancel}>\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CLOSE}`)}\n </Button>\n )}\n {!props.selectDisabled && !props.showCloseBtn && (\n <>\n <Button key=\"back\" onClick={handleCancel} type=\"text\">\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CANCEL}`)}\n </Button>\n <Button\n key=\"submit\"\n type=\"primary\"\n onClick={handleOk}\n disabled={\n !selectedInstanceListTemp.length ||\n (props.singleSelect && selectedInstanceListTemp.length > 1)\n }\n >\n {i18n.t(`${NS_LIBS_CMDB_INSTANCES}:${K.CONFIRM}`)}\n </Button>\n </>\n )}\n </>\n );\n };\n return (\n <Modal\n title={props.title}\n visible={props.visible}\n width={900}\n onOk={handleOk}\n onCancel={handleCancel}\n destroyOnClose={true}\n footer={renderFooter()}\n zIndex={props.modalZIndex ?? 1000}\n >\n <div style={{ maxHeight: 720, overflow: \"auto\" }}>\n <InstanceList\n aq={props.aq}\n objectId={props.objectId}\n objectList={Object.values(props.objectMap)}\n presetConfigs={presetConfigs}\n extraFilterBricks={props.extraFilterBricks}\n permission={props.permission}\n aliveHosts={fixAliveHosts}\n fixAliveHosts={fixAliveHosts}\n instanceSourceQuery={props.instanceSourceQuery}\n searchDisabled={props.searchDisabled}\n filterInstanceSourceDisabled={props.filterInstanceSourceDisabled}\n advancedSearchDisabled={props.advancedSearchDisabled}\n aliveHostsDisabled={props.aliveHostsDisabled}\n relatedToMeDisabled={props.relatedToMeDisabled}\n moreButtonsDisabled={props.moreButtonsDisabled}\n sortDisabled={props.sortDisabled}\n selectDisabled={props.selectDisabled}\n selectedRowKeys={props.selectedRowKeys}\n onSelectionChange={handleSelectionChange}\n showSizeChanger={props.showSizeChanger}\n pageSizeOptions={props.pageSizeOptions}\n pageSize={props.pageSize || 10}\n page={props.page}\n defaultQuery={props.defaultQuery}\n enableSearchByApp={props.enableSearchByApp}\n hideSearchConditions={props.hideSearchConditions}\n isInstanceFilterForm={props.isInstanceFilterForm}\n ipCopy={props.ipCopy}\n rowSelectionType={props.rowSelectionType}\n onPaginationChange={handlePaginationChange}\n extraFixedFields={props.extraFixedFields}\n limitInstanceRange={props.limitInstanceRange}\n showFilterInstanceSource={props.showFilterInstanceSource}\n filterInstanceSource={props.filterInstanceSource}\n onFilterInstanceSourceChange={props.onFilterInstanceSourceChange}\n objectIdQuery={props.objectIdQuery}\n onFilterObjectIdChange={props.onFilterObjectIdChange}\n />\n </div>\n </Modal>\n );\n}\n"],"mappings":"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"}
|
|
@@ -107,7 +107,9 @@ export declare enum K {
|
|
|
107
107
|
VIEW_SPECIFIC_INSTANCES = "VIEW_SPECIFIC_INSTANCES",
|
|
108
108
|
VIEW_MORE = "VIEW_MORE",
|
|
109
109
|
CREATE_AND_BIND = "CREATE_AND_BIND",
|
|
110
|
-
PERMISSION_DENIED = "PERMISSION_DENIED"
|
|
110
|
+
PERMISSION_DENIED = "PERMISSION_DENIED",
|
|
111
|
+
CLICK_TO_FILTER_INSTANCE_SOURCE = "CLICK_TO_FILTER_INSTANCE_SOURCE",
|
|
112
|
+
SEARCH_MODEL = "SEARCH_MODEL"
|
|
111
113
|
}
|
|
112
114
|
export declare type Locale = {
|
|
113
115
|
[key in K]: string;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { filterObjectIdQuery } from "./InstanceList";
|
|
3
|
+
interface FilterInstanceSourceProps {
|
|
4
|
+
visible?: boolean;
|
|
5
|
+
checked?: boolean;
|
|
6
|
+
onIconClicKChange?(checked: boolean): void;
|
|
7
|
+
inheritanceModelIdNameMap?: Record<string, string>;
|
|
8
|
+
value?: string;
|
|
9
|
+
onChange: (value: filterObjectIdQuery) => void;
|
|
10
|
+
onPopoverVisibleChange?(visible: boolean): void;
|
|
11
|
+
jsonLocalStorage?: any;
|
|
12
|
+
isAbstract?: boolean;
|
|
13
|
+
}
|
|
14
|
+
declare const _default: React.NamedExoticComponent<FilterInstanceSourceProps>;
|
|
15
|
+
export default _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -26,6 +26,12 @@ export declare function translateConditions(aq: Query[], idObjectMap: Record<str
|
|
|
26
26
|
valuesStr: string;
|
|
27
27
|
}[];
|
|
28
28
|
export declare const initAqToShow: (aq: Query[], modelData: Partial<CmdbModels.ModelCmdbObject>, isToShow?: boolean) => any[];
|
|
29
|
+
export interface filterObjectIdQuery {
|
|
30
|
+
objectId?: string;
|
|
31
|
+
objectName?: string;
|
|
32
|
+
query?: Record<string, string>;
|
|
33
|
+
checked?: boolean;
|
|
34
|
+
}
|
|
29
35
|
interface InstanceListProps {
|
|
30
36
|
objectId: string;
|
|
31
37
|
objectList?: Partial<CmdbModels.ModelCmdbObject>[];
|
|
@@ -107,6 +113,11 @@ interface InstanceListProps {
|
|
|
107
113
|
useBrick: UseBrickConf;
|
|
108
114
|
};
|
|
109
115
|
updateDataTime?: number;
|
|
116
|
+
showFilterInstanceSource?: boolean;
|
|
117
|
+
filterInstanceSource?: boolean;
|
|
118
|
+
onFilterInstanceSourceChange?(value: boolean): void;
|
|
119
|
+
onFilterObjectIdChange?(query: filterObjectIdQuery): void;
|
|
120
|
+
objectIdQuery?: string;
|
|
110
121
|
}
|
|
111
122
|
export declare function LegacyInstanceList(props: InstanceListProps): React.ReactElement;
|
|
112
123
|
/**
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { CmdbModels } from "@next-sdk/cmdb-sdk";
|
|
3
3
|
import { Query } from "@next-libs/cmdb-utils";
|
|
4
|
+
import { filterObjectIdQuery } from "../instance-list/InstanceList";
|
|
4
5
|
import { InstanceListPresetConfigs } from "../instance-list-table/interfaces";
|
|
5
6
|
import { ReadPaginationChangeDetail, UseBrickConf } from "@next-core/brick-types";
|
|
6
7
|
export interface InstanceListModalProps {
|
|
@@ -52,5 +53,10 @@ export interface InstanceListModalProps {
|
|
|
52
53
|
bindEvent?: () => void;
|
|
53
54
|
bindButtonDisabled?: boolean;
|
|
54
55
|
disabledTooltip?: string;
|
|
56
|
+
showFilterInstanceSource?: boolean;
|
|
57
|
+
filterInstanceSource?: boolean;
|
|
58
|
+
onFilterInstanceSourceChange?(value: boolean): void;
|
|
59
|
+
onFilterObjectIdChange?(value: filterObjectIdQuery): void;
|
|
60
|
+
objectIdQuery?: string;
|
|
55
61
|
}
|
|
56
62
|
export declare function InstanceListModal(props: InstanceListModalProps): React.ReactElement;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@next-libs/cmdb-instances",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.6.0",
|
|
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",
|
|
@@ -50,5 +50,5 @@
|
|
|
50
50
|
"immutability-helper": "^3.1.1",
|
|
51
51
|
"marked": "^2.1.3"
|
|
52
52
|
},
|
|
53
|
-
"gitHead": "
|
|
53
|
+
"gitHead": "7748cf46b6d7006435573b9d73e5096de5034b14"
|
|
54
54
|
}
|