@next-libs/cmdb-instances 6.42.0 → 6.42.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/dist/cjs/data-providers/fetchCmdbInstanceDetail.js +3 -2
  3. package/dist/cjs/data-providers/fetchCmdbInstanceDetail.js.map +1 -1
  4. package/dist/cjs/data-providers/fetchCmdbInstanceSearch.js +13 -0
  5. package/dist/cjs/data-providers/fetchCmdbInstanceSearch.js.map +1 -0
  6. package/dist/cjs/data-providers/index.js +13 -0
  7. package/dist/cjs/data-providers/index.js.map +1 -1
  8. package/dist/cjs/index.js +1 -15
  9. package/dist/cjs/index.js.map +1 -1
  10. package/dist/cjs/instance-detail/InstanceDetail.js +72 -17
  11. package/dist/cjs/instance-detail/InstanceDetail.js.map +1 -1
  12. package/dist/cjs/instance-detail/components/instance-relation-table-show/instance-relation-table-show.js +9 -12
  13. package/dist/cjs/instance-detail/components/instance-relation-table-show/instance-relation-table-show.js.map +1 -1
  14. package/dist/esm/data-providers/fetchCmdbInstanceDetail.js +3 -2
  15. package/dist/esm/data-providers/fetchCmdbInstanceDetail.js.map +1 -1
  16. package/dist/esm/data-providers/fetchCmdbInstanceSearch.js +5 -0
  17. package/dist/esm/data-providers/fetchCmdbInstanceSearch.js.map +1 -0
  18. package/dist/esm/data-providers/index.js +1 -0
  19. package/dist/esm/data-providers/index.js.map +1 -1
  20. package/dist/esm/index.js +1 -1
  21. package/dist/esm/index.js.map +1 -1
  22. package/dist/esm/instance-detail/InstanceDetail.js +97 -33
  23. package/dist/esm/instance-detail/InstanceDetail.js.map +1 -1
  24. package/dist/esm/instance-detail/components/instance-relation-table-show/instance-relation-table-show.js +9 -10
  25. package/dist/esm/instance-detail/components/instance-relation-table-show/instance-relation-table-show.js.map +1 -1
  26. package/dist/types/data-providers/fetchCmdbInstanceDetail.d.ts +1 -1
  27. package/dist/types/data-providers/fetchCmdbInstanceSearch.d.ts +2 -0
  28. package/dist/types/data-providers/index.d.ts +1 -0
  29. package/dist/types/index.d.ts +1 -1
  30. package/dist/types/instance-detail/InstanceDetail.d.ts +3 -0
  31. package/dist/types/instance-detail/components/instance-relation-table-show/instance-relation-table-show.d.ts +2 -0
  32. package/package.json +3 -3
@@ -2,14 +2,12 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
4
 
5
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
6
-
7
5
  Object.defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
8
  exports.InstanceRelationTableShow = InstanceRelationTableShow;
11
9
 
12
- var _react = _interopRequireWildcard(require("react"));
10
+ var _react = _interopRequireDefault(require("react"));
13
11
 
14
12
  var _cmdbUtils = require("@next-libs/cmdb-utils");
15
13
 
@@ -27,11 +25,10 @@ function InstanceRelationTableShow(props) {
27
25
  modelDataMap,
28
26
  relationData,
29
27
  value,
30
- relationFieldUrlTemplate
28
+ relationFieldUrlTemplate,
29
+ paginationChange,
30
+ total
31
31
  } = props;
32
- const [instanceListData, setInstanceListData] = (0, _react.useState)({
33
- list: props.value.slice(0, 10)
34
- });
35
32
  let oppositeModelData = (0, _cmdbUtils.modifyModelData)(modelDataMap[relationData.right_object_id]); //过滤掉视图不可见字段
36
33
 
37
34
  const hideModelData = oppositeModelData.view.hide_columns || [];
@@ -49,19 +46,19 @@ function InstanceRelationTableShow(props) {
49
46
  },
50
47
  idObjectMap: props.modelDataMap,
51
48
  modelData: oppositeModelData,
52
- instanceListData: instanceListData,
49
+ instanceListData: {
50
+ list: value
51
+ },
53
52
  fieldIds: oppositeModelData.attrList.map(attr => attr.id),
54
53
  selectDisabled: true,
55
54
  sortDisabled: true,
56
55
  configProps: {
57
56
  pagination: props.isPagination ? {
58
57
  showSizeChanger: true,
59
- total: value === null || value === void 0 ? void 0 : value.length,
58
+ total: total,
60
59
  pageSizeOptions: ["10", "20", "50"],
61
60
  onChange: (page, pageSize) => {
62
- setInstanceListData({
63
- list: value.slice((page - 1) * pageSize, (page - 1) * pageSize + pageSize)
64
- });
61
+ paginationChange(page, pageSize, relationData);
65
62
  },
66
63
  showTotal: totals => /*#__PURE__*/_react.default.createElement("span", {
67
64
  className: _InstanceListTableModule.default.totalText
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/instance-detail/components/instance-relation-table-show/instance-relation-table-show.tsx"],"names":["InstanceRelationTableShow","props","modelDataMap","relationData","value","relationFieldUrlTemplate","instanceListData","setInstanceListData","list","slice","oppositeModelData","right_object_id","hideModelData","view","hide_columns","attrList","filter","item","includes","id","relation_list","left_id","left_object_id","right_id","display","map","attr","pagination","isPagination","showSizeChanger","total","length","pageSizeOptions","onChange","page","pageSize","showTotal","totals","styles","totalText","i18n","t","NS_LIBS_CMDB_INSTANCES","K","PAGINATION_TOTAL_TEXT","PAGINATION_TOTAL_UNIT"],"mappings":"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","sourcesContent":["import React, { useState } from \"react\";\nimport { Table } from \"antd\";\nimport {\n ModifiedModelObjectRelation,\n modifyModelData,\n} from \"@next-libs/cmdb-utils\";\nimport { CmdbModels } from \"@next-sdk/cmdb-sdk\";\nimport { InstanceListTable } from \"../../../instance-list-table\";\nimport { NS_LIBS_CMDB_INSTANCES, K } from \"../../../i18n/constants\";\nimport i18n from \"i18next\";\nimport styles from \"../../../instance-list-table/InstanceListTable.module.css\";\nexport interface InstanceRelationTableShowProps {\n modelDataMap: { [objectId: string]: CmdbModels.ModelCmdbObject };\n relationData: ModifiedModelObjectRelation;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n value: any[];\n relationFieldUrlTemplate?: string;\n isPagination?: boolean;\n}\n\n//istanbul ignore next\nexport function InstanceRelationTableShow(\n props: InstanceRelationTableShowProps\n): React.ReactElement {\n const { modelDataMap, relationData, value, relationFieldUrlTemplate } = props;\n const [instanceListData, setInstanceListData] = useState({\n list: props.value.slice(0, 10),\n });\n let oppositeModelData = modifyModelData(\n modelDataMap[relationData.right_object_id]\n );\n //过滤掉视图不可见字段\n const hideModelData = oppositeModelData.view.hide_columns || [];\n oppositeModelData = {\n ...oppositeModelData,\n attrList: oppositeModelData.attrList.filter(\n (item: any) => !hideModelData.includes(item.id)\n ),\n relation_list: oppositeModelData.relation_list.filter(\n (item: any) =>\n !(\n (hideModelData.includes(item.left_id) &&\n item.left_object_id === props.relationData.right_object_id) ||\n (hideModelData.includes(item.right_id) &&\n item.right_object_id === props.relationData.right_object_id)\n )\n ),\n };\n\n return (\n <div style={{ display: \"grid\" }}>\n <InstanceListTable\n detailUrlTemplates={{\n [relationData.right_object_id]:\n \"/next-cmdb-instance-management/next/#{objectId}/instance/#{instanceId}\",\n }}\n idObjectMap={props.modelDataMap}\n modelData={oppositeModelData}\n instanceListData={instanceListData}\n fieldIds={oppositeModelData.attrList.map((attr) => attr.id)}\n selectDisabled={true}\n sortDisabled={true}\n configProps={{\n pagination: props.isPagination\n ? {\n showSizeChanger: true,\n total: value?.length,\n pageSizeOptions: [\"10\", \"20\", \"50\"],\n onChange: (page, pageSize) => {\n setInstanceListData({\n list: value.slice(\n (page - 1) * pageSize,\n (page - 1) * pageSize + pageSize\n ),\n });\n },\n showTotal: (totals: number) => (\n <span className={styles.totalText}>\n {i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.PAGINATION_TOTAL_TEXT}`\n )}{\" \"}\n <strong className={styles.total}>{totals}</strong>{\" \"}\n {i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.PAGINATION_TOTAL_UNIT}`\n )}\n </span>\n ),\n }\n : false,\n }}\n target={\"_blank\"}\n ></InstanceListTable>\n </div>\n );\n}\n"],"file":"instance-relation-table-show.js"}
1
+ {"version":3,"sources":["../../../../../src/instance-detail/components/instance-relation-table-show/instance-relation-table-show.tsx"],"names":["InstanceRelationTableShow","props","modelDataMap","relationData","value","relationFieldUrlTemplate","paginationChange","total","oppositeModelData","right_object_id","hideModelData","view","hide_columns","attrList","filter","item","includes","id","relation_list","left_id","left_object_id","right_id","display","list","map","attr","pagination","isPagination","showSizeChanger","pageSizeOptions","onChange","page","pageSize","showTotal","totals","styles","totalText","i18n","t","NS_LIBS_CMDB_INSTANCES","K","PAGINATION_TOTAL_TEXT","PAGINATION_TOTAL_UNIT"],"mappings":";;;;;;;;;AAAA;;AAEA;;AAKA;;AACA;;AACA;;AACA;;AAgBA;AACO,SAASA,yBAAT,CACLC,KADK,EAEe;AACpB,QAAM;AACJC,IAAAA,YADI;AAEJC,IAAAA,YAFI;AAGJC,IAAAA,KAHI;AAIJC,IAAAA,wBAJI;AAKJC,IAAAA,gBALI;AAMJC,IAAAA;AANI,MAOFN,KAPJ;AAQA,MAAIO,iBAAiB,GAAG,gCACtBN,YAAY,CAACC,YAAY,CAACM,eAAd,CADU,CAAxB,CAToB,CAYpB;;AACA,QAAMC,aAAa,GAAGF,iBAAiB,CAACG,IAAlB,CAAuBC,YAAvB,IAAuC,EAA7D;AACAJ,EAAAA,iBAAiB,GAAG,EAClB,GAAGA,iBADe;AAElBK,IAAAA,QAAQ,EAAEL,iBAAiB,CAACK,QAAlB,CAA2BC,MAA3B,CACPC,IAAD,IAAe,CAACL,aAAa,CAACM,QAAd,CAAuBD,IAAI,CAACE,EAA5B,CADR,CAFQ;AAKlBC,IAAAA,aAAa,EAAEV,iBAAiB,CAACU,aAAlB,CAAgCJ,MAAhC,CACZC,IAAD,IACE,EACGL,aAAa,CAACM,QAAd,CAAuBD,IAAI,CAACI,OAA5B,KACCJ,IAAI,CAACK,cAAL,KAAwBnB,KAAK,CAACE,YAAN,CAAmBM,eAD7C,IAECC,aAAa,CAACM,QAAd,CAAuBD,IAAI,CAACM,QAA5B,KACCN,IAAI,CAACN,eAAL,KAAyBR,KAAK,CAACE,YAAN,CAAmBM,eAJhD,CAFW;AALG,GAApB;AAgBA,sBACE;AAAK,IAAA,KAAK,EAAE;AAAEa,MAAAA,OAAO,EAAE;AAAX;AAAZ,kBACE,6BAAC,oCAAD;AACE,IAAA,kBAAkB,EAAE;AAClB,OAACnB,YAAY,CAACM,eAAd,GACE;AAFgB,KADtB;AAKE,IAAA,WAAW,EAAER,KAAK,CAACC,YALrB;AAME,IAAA,SAAS,EAAEM,iBANb;AAOE,IAAA,gBAAgB,EAAE;AAChBe,MAAAA,IAAI,EAAEnB;AADU,KAPpB;AAUE,IAAA,QAAQ,EAAEI,iBAAiB,CAACK,QAAlB,CAA2BW,GAA3B,CAAgCC,IAAD,IAAUA,IAAI,CAACR,EAA9C,CAVZ;AAWE,IAAA,cAAc,EAAE,IAXlB;AAYE,IAAA,YAAY,EAAE,IAZhB;AAaE,IAAA,WAAW,EAAE;AACXS,MAAAA,UAAU,EAAEzB,KAAK,CAAC0B,YAAN,GACR;AACEC,QAAAA,eAAe,EAAE,IADnB;AAEErB,QAAAA,KAAK,EAAEA,KAFT;AAGEsB,QAAAA,eAAe,EAAE,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,CAHnB;AAIEC,QAAAA,QAAQ,EAAE,CAACC,IAAD,EAAOC,QAAP,KAAoB;AAC5B1B,UAAAA,gBAAgB,CAACyB,IAAD,EAAOC,QAAP,EAAiB7B,YAAjB,CAAhB;AACD,SANH;AAOE8B,QAAAA,SAAS,EAAGC,MAAD,iBACT;AAAM,UAAA,SAAS,EAAEC,iCAAOC;AAAxB,WACGC,iBAAKC,CAAL,CACE,GAAEC,iCAAuB,IAAGC,aAAEC,qBAAsB,EADtD,CADH,EAGK,GAHL,eAIE;AAAQ,UAAA,SAAS,EAAEN,iCAAO5B;AAA1B,WAAkC2B,MAAlC,CAJF,EAIqD,GAJrD,EAKGG,iBAAKC,CAAL,CACE,GAAEC,iCAAuB,IAAGC,aAAEE,qBAAsB,EADtD,CALH;AARJ,OADQ,GAoBR;AArBO,KAbf;AAoCE,IAAA,MAAM,EAAE;AApCV,IADF,CADF;AA0CD","sourcesContent":["import React from \"react\";\nimport { Table } from \"antd\";\nimport {\n ModifiedModelObjectRelation,\n modifyModelData,\n} from \"@next-libs/cmdb-utils\";\nimport { CmdbModels } from \"@next-sdk/cmdb-sdk\";\nimport { InstanceListTable } from \"../../../instance-list-table\";\nimport { NS_LIBS_CMDB_INSTANCES, K } from \"../../../i18n/constants\";\nimport i18n from \"i18next\";\nimport styles from \"../../../instance-list-table/InstanceListTable.module.css\";\nexport interface InstanceRelationTableShowProps {\n modelDataMap: { [objectId: string]: CmdbModels.ModelCmdbObject };\n relationData: ModifiedModelObjectRelation;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n value: any[];\n relationFieldUrlTemplate?: string;\n isPagination?: boolean;\n total?: number;\n paginationChange?: (\n page: number,\n pageSize: number,\n relationData: ModifiedModelObjectRelation\n ) => Promise<void>;\n}\n\n//istanbul ignore next\nexport function InstanceRelationTableShow(\n props: InstanceRelationTableShowProps\n): React.ReactElement {\n const {\n modelDataMap,\n relationData,\n value,\n relationFieldUrlTemplate,\n paginationChange,\n total,\n } = props;\n let oppositeModelData = modifyModelData(\n modelDataMap[relationData.right_object_id]\n );\n //过滤掉视图不可见字段\n const hideModelData = oppositeModelData.view.hide_columns || [];\n oppositeModelData = {\n ...oppositeModelData,\n attrList: oppositeModelData.attrList.filter(\n (item: any) => !hideModelData.includes(item.id)\n ),\n relation_list: oppositeModelData.relation_list.filter(\n (item: any) =>\n !(\n (hideModelData.includes(item.left_id) &&\n item.left_object_id === props.relationData.right_object_id) ||\n (hideModelData.includes(item.right_id) &&\n item.right_object_id === props.relationData.right_object_id)\n )\n ),\n };\n\n return (\n <div style={{ display: \"grid\" }}>\n <InstanceListTable\n detailUrlTemplates={{\n [relationData.right_object_id]:\n \"/next-cmdb-instance-management/next/#{objectId}/instance/#{instanceId}\",\n }}\n idObjectMap={props.modelDataMap}\n modelData={oppositeModelData}\n instanceListData={{\n list: value,\n }}\n fieldIds={oppositeModelData.attrList.map((attr) => attr.id)}\n selectDisabled={true}\n sortDisabled={true}\n configProps={{\n pagination: props.isPagination\n ? {\n showSizeChanger: true,\n total: total,\n pageSizeOptions: [\"10\", \"20\", \"50\"],\n onChange: (page, pageSize) => {\n paginationChange(page, pageSize, relationData);\n },\n showTotal: (totals: number) => (\n <span className={styles.totalText}>\n {i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.PAGINATION_TOTAL_TEXT}`\n )}{\" \"}\n <strong className={styles.total}>{totals}</strong>{\" \"}\n {i18n.t(\n `${NS_LIBS_CMDB_INSTANCES}:${K.PAGINATION_TOTAL_UNIT}`\n )}\n </span>\n ),\n }\n : false,\n }}\n target={\"_blank\"}\n ></InstanceListTable>\n </div>\n );\n}\n"],"file":"instance-relation-table-show.js"}
@@ -2,9 +2,10 @@ import { InstanceApi_getDetail } from "@next-sdk/cmdb-sdk";
2
2
  export function fetchCmdbInstanceDetail(objectId, instanceId) {
3
3
  return InstanceApi_getDetail(objectId, instanceId, {});
4
4
  }
5
- export function fetchCmdbInstanceDetailByFields(objectId, instanceId, fields) {
5
+ export function fetchCmdbInstanceDetailByFields(objectId, instanceId, fields, relation_limit) {
6
6
  return InstanceApi_getDetail(objectId, instanceId, {
7
- fields
7
+ fields,
8
+ relation_limit
8
9
  });
9
10
  }
10
11
  //# sourceMappingURL=fetchCmdbInstanceDetail.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/data-providers/fetchCmdbInstanceDetail.ts"],"names":["InstanceApi_getDetail","fetchCmdbInstanceDetail","objectId","instanceId","fetchCmdbInstanceDetailByFields","fields"],"mappings":"AAAA,SAEEA,qBAFF,QAIO,oBAJP;AAMA,OAAO,SAASC,uBAAT,CACLC,QADK,EAELC,UAFK,EAGgD;AACrD,SAAOH,qBAAqB,CAACE,QAAD,EAAWC,UAAX,EAAuB,EAAvB,CAA5B;AACD;AAED,OAAO,SAASC,+BAAT,CACLF,QADK,EAELC,UAFK,EAGLE,MAHK,EAIgD;AACrD,SAAOL,qBAAqB,CAACE,QAAD,EAAWC,UAAX,EAAuB;AACjDE,IAAAA;AADiD,GAAvB,CAA5B;AAGD","sourcesContent":["import {\n InstanceApi_GetDetailResponseBody,\n InstanceApi_getDetail,\n InstanceApi_GetDetailRequestParams,\n} from \"@next-sdk/cmdb-sdk\";\n\nexport function fetchCmdbInstanceDetail(\n objectId: string,\n instanceId: string\n): Promise<Partial<InstanceApi_GetDetailResponseBody>> {\n return InstanceApi_getDetail(objectId, instanceId, {});\n}\n\nexport function fetchCmdbInstanceDetailByFields(\n objectId: string,\n instanceId: string,\n fields: string\n): Promise<Partial<InstanceApi_GetDetailResponseBody>> {\n return InstanceApi_getDetail(objectId, instanceId, {\n fields,\n } as InstanceApi_GetDetailRequestParams);\n}\n"],"file":"fetchCmdbInstanceDetail.js"}
1
+ {"version":3,"sources":["../../../src/data-providers/fetchCmdbInstanceDetail.ts"],"names":["InstanceApi_getDetail","fetchCmdbInstanceDetail","objectId","instanceId","fetchCmdbInstanceDetailByFields","fields","relation_limit"],"mappings":"AAAA,SAEEA,qBAFF,QAIO,oBAJP;AAMA,OAAO,SAASC,uBAAT,CACLC,QADK,EAELC,UAFK,EAGgD;AACrD,SAAOH,qBAAqB,CAACE,QAAD,EAAWC,UAAX,EAAuB,EAAvB,CAA5B;AACD;AAED,OAAO,SAASC,+BAAT,CACLF,QADK,EAELC,UAFK,EAGLE,MAHK,EAILC,cAJK,EAKgD;AACrD,SAAON,qBAAqB,CAACE,QAAD,EAAWC,UAAX,EAAuB;AACjDE,IAAAA,MADiD;AAEjDC,IAAAA;AAFiD,GAAvB,CAA5B;AAID","sourcesContent":["import {\n InstanceApi_GetDetailResponseBody,\n InstanceApi_getDetail,\n InstanceApi_GetDetailRequestParams,\n} from \"@next-sdk/cmdb-sdk\";\n\nexport function fetchCmdbInstanceDetail(\n objectId: string,\n instanceId: string\n): Promise<Partial<InstanceApi_GetDetailResponseBody>> {\n return InstanceApi_getDetail(objectId, instanceId, {});\n}\n\nexport function fetchCmdbInstanceDetailByFields(\n objectId: string,\n instanceId: string,\n fields: string,\n relation_limit?: number\n): Promise<Partial<InstanceApi_GetDetailResponseBody>> {\n return InstanceApi_getDetail(objectId, instanceId, {\n fields,\n relation_limit,\n } as InstanceApi_GetDetailRequestParams);\n}\n"],"file":"fetchCmdbInstanceDetail.js"}
@@ -0,0 +1,5 @@
1
+ import { InstanceApi_postSearchV3 } from "@next-sdk/cmdb-sdk";
2
+ export function fetchCmdbInstanceSearch(objectId, params) {
3
+ return InstanceApi_postSearchV3(objectId, params);
4
+ }
5
+ //# sourceMappingURL=fetchCmdbInstanceSearch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/data-providers/fetchCmdbInstanceSearch.ts"],"names":["InstanceApi_postSearchV3","fetchCmdbInstanceSearch","objectId","params"],"mappings":"AAAA,SAGEA,wBAHF,QAIO,oBAJP;AAMA,OAAO,SAASC,uBAAT,CACLC,QADK,EAELC,MAFK,EAGmD;AACxD,SAAOH,wBAAwB,CAACE,QAAD,EAAWC,MAAX,CAA/B;AACD","sourcesContent":["import {\n InstanceApi_PostSearchV3RequestBody,\n InstanceApi_PostSearchV3ResponseBody,\n InstanceApi_postSearchV3,\n} from \"@next-sdk/cmdb-sdk\";\n\nexport function fetchCmdbInstanceSearch(\n objectId: string,\n params: InstanceApi_PostSearchV3RequestBody\n): Promise<Partial<InstanceApi_PostSearchV3ResponseBody>> {\n return InstanceApi_postSearchV3(objectId, params);\n}\n"],"file":"fetchCmdbInstanceSearch.js"}
@@ -2,4 +2,5 @@ export * from "./fetchCmdbObjectDetail";
2
2
  export * from "./fetchCmdbInstanceDetail";
3
3
  export * from "./fetchCmdbObjectList";
4
4
  export * from "./fetchCmdbObjectRef";
5
+ export * from "./fetchCmdbInstanceSearch";
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/data-providers/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAd;AACA,cAAc,2BAAd;AACA,cAAc,uBAAd;AACA,cAAc,sBAAd","sourcesContent":["export * from \"./fetchCmdbObjectDetail\";\nexport * from \"./fetchCmdbInstanceDetail\";\nexport * from \"./fetchCmdbObjectList\";\nexport * from \"./fetchCmdbObjectRef\";\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/data-providers/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAd;AACA,cAAc,2BAAd;AACA,cAAc,uBAAd;AACA,cAAc,sBAAd;AACA,cAAc,2BAAd","sourcesContent":["export * from \"./fetchCmdbObjectDetail\";\nexport * from \"./fetchCmdbInstanceDetail\";\nexport * from \"./fetchCmdbObjectList\";\nexport * from \"./fetchCmdbObjectRef\";\nexport * from \"./fetchCmdbInstanceSearch\";\n"],"file":"index.js"}
package/dist/esm/index.js CHANGED
@@ -13,5 +13,5 @@ export * from "./cmdb-instances-select-panel/CmdbInstancesSelectPanel";
13
13
  export * from "./instance-detail/InstanceDetail";
14
14
  export * from "./float-display-brick/FloatDisplayBrick"; // For compatibility
15
15
 
16
- export { ComparisonOperators, ElementOperators, LogicalOperators, Query, QueryOperatorExpressions } from "@next-libs/cmdb-utils";
16
+ export { ComparisonOperators, ElementOperators, LogicalOperators } from "@next-libs/cmdb-utils";
17
17
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts"],"names":["ComparisonOperators","ElementOperators","LogicalOperators","Query","QueryOperatorExpressions"],"mappings":"AAAA,cAAc,iDAAd;AACA,cAAc,2CAAd;AACA,cAAc,yCAAd;AACA,cAAc,sDAAd;AACA,cAAc,0DAAd;AACA,cAAc,qBAAd;AACA,cAAc,uBAAd;AACA,cAAc,+CAAd;AACA,cAAc,yCAAd;AACA,cAAc,8BAAd;AACA,cAAc,wDAAd;AACA,cAAc,wDAAd;AACA,cAAc,kCAAd;AACA,cAAc,yCAAd,C,CACA;;AACA,SACEA,mBADF,EAEEC,gBAFF,EAGEC,gBAHF,EAIEC,KAJF,EAKEC,wBALF,QAMO,uBANP","sourcesContent":["export * from \"./instance-attribute-form/InstanceAttributeForm\";\nexport * from \"./model-attribute-form/ModelAttributeForm\";\nexport * from \"./model-relation-form/ModelRelationForm\";\nexport * from \"./attribute-form-control-url/AttributeFormControlUrl\";\nexport * from \"./model-attribute-form-control/ModelAttributeFormControl\";\nexport * from \"./struct-components\";\nexport * from \"./instance-list-table\";\nexport * from \"./instance-list-table/AdvancedSearchCondition\";\nexport * from \"./instance-list-modal/InstanceListModal\";\nexport * from \"./instance-list/InstanceList\";\nexport * from \"./cmdb-instances-input-form/CmdbInstancesInputFormItem\";\nexport * from \"./cmdb-instances-select-panel/CmdbInstancesSelectPanel\";\nexport * from \"./instance-detail/InstanceDetail\";\nexport * from \"./float-display-brick/FloatDisplayBrick\";\n// For compatibility\nexport {\n ComparisonOperators,\n ElementOperators,\n LogicalOperators,\n Query,\n QueryOperatorExpressions,\n} from \"@next-libs/cmdb-utils\";\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../src/index.ts"],"names":["ComparisonOperators","ElementOperators","LogicalOperators"],"mappings":"AAAA,cAAc,iDAAd;AACA,cAAc,2CAAd;AACA,cAAc,yCAAd;AACA,cAAc,sDAAd;AACA,cAAc,0DAAd;AACA,cAAc,qBAAd;AACA,cAAc,uBAAd;AACA,cAAc,+CAAd;AACA,cAAc,yCAAd;AACA,cAAc,8BAAd;AACA,cAAc,wDAAd;AACA,cAAc,wDAAd;AACA,cAAc,kCAAd;AACA,cAAc,yCAAd,C,CACA;;AACA,SACEA,mBADF,EAEEC,gBAFF,EAGEC,gBAHF,QAMO,uBANP","sourcesContent":["export * from \"./instance-attribute-form/InstanceAttributeForm\";\nexport * from \"./model-attribute-form/ModelAttributeForm\";\nexport * from \"./model-relation-form/ModelRelationForm\";\nexport * from \"./attribute-form-control-url/AttributeFormControlUrl\";\nexport * from \"./model-attribute-form-control/ModelAttributeFormControl\";\nexport * from \"./struct-components\";\nexport * from \"./instance-list-table\";\nexport * from \"./instance-list-table/AdvancedSearchCondition\";\nexport * from \"./instance-list-modal/InstanceListModal\";\nexport * from \"./instance-list/InstanceList\";\nexport * from \"./cmdb-instances-input-form/CmdbInstancesInputFormItem\";\nexport * from \"./cmdb-instances-select-panel/CmdbInstancesSelectPanel\";\nexport * from \"./instance-detail/InstanceDetail\";\nexport * from \"./float-display-brick/FloatDisplayBrick\";\n// For compatibility\nexport {\n ComparisonOperators,\n ElementOperators,\n LogicalOperators,\n type Query,\n type QueryOperatorExpressions,\n} from \"@next-libs/cmdb-utils\";\n"],"file":"index.js"}
@@ -17,7 +17,7 @@ import i18n from "i18next";
17
17
  import { NS_LIBS_CMDB_INSTANCES, K } from "../i18n/constants";
18
18
  import style from "./index.module.css";
19
19
  import shared from "./shared.module.css";
20
- import { fetchCmdbObjectRef, fetchCmdbInstanceDetail, fetchCmdbInstanceDetailByFields } from "../data-providers";
20
+ import { fetchCmdbObjectRef, fetchCmdbInstanceDetail, fetchCmdbInstanceDetailByFields, fetchCmdbInstanceSearch } from "../data-providers";
21
21
  import { BASIC_INFORMATION_RELATION_GROUP_ID, DEFAULT_ATTRIBUTE_TAG } from "./constants";
22
22
  import { isArray } from "util";
23
23
  import { CmdbUrlLink } from "../cmdb-url-link/CmdbUrlLink";
@@ -57,15 +57,18 @@ export class LegacyInstanceDetail extends React.Component {
57
57
  basicInfoGroupListShow: [],
58
58
  formattedInstanceData: null,
59
59
  loaded: false,
60
- currentAttr: null
60
+ currentAttr: null,
61
+ instanceRelationModalData: null
61
62
  };
62
63
  }
63
64
 
64
65
  render() {
65
- var _this$state$currentAt, _this$state$currentAt2, _this$props$brickConf;
66
+ var _this$props$brickConf;
66
67
 
67
68
  var {
68
- loaded
69
+ loaded,
70
+ currentAttr,
71
+ instanceRelationModalData
69
72
  } = this.state;
70
73
  var {
71
74
  showCard = true
@@ -81,8 +84,8 @@ export class LegacyInstanceDetail extends React.Component {
81
84
  extra: this.getCardExtra()
82
85
  }, this.getCardContent()) : this.getCardContent(), /*#__PURE__*/React.createElement(Modal, {
83
86
  width: 850,
84
- title: ((_this$state$currentAt = this.state.currentAttr) === null || _this$state$currentAt === void 0 ? void 0 : _this$state$currentAt.right_description) || i18n.t("".concat(NS_LIBS_CMDB_INSTANCES, ":").concat(K.VIEW_MORE)),
85
- visible: !!this.state.currentAttr,
87
+ title: (currentAttr === null || currentAttr === void 0 ? void 0 : currentAttr.right_description) || i18n.t("".concat(NS_LIBS_CMDB_INSTANCES, ":").concat(K.VIEW_MORE)),
88
+ visible: !!currentAttr,
86
89
  onCancel: () => this.setState({
87
90
  currentAttr: null
88
91
  }),
@@ -96,10 +99,12 @@ export class LegacyInstanceDetail extends React.Component {
96
99
  }
97
100
  }, /*#__PURE__*/React.createElement(InstanceRelationTableShow, {
98
101
  modelDataMap: this.state.modelDataMap,
99
- relationData: this.state.currentAttr,
100
- value: this.state.instanceData ? this.state.instanceData[(_this$state$currentAt2 = this.state.currentAttr) === null || _this$state$currentAt2 === void 0 ? void 0 : _this$state$currentAt2.__id] : [],
102
+ relationData: currentAttr,
103
+ value: instanceRelationModalData ? (instanceRelationModalData === null || instanceRelationModalData === void 0 ? void 0 : instanceRelationModalData.list) || [] : [],
101
104
  relationFieldUrlTemplate: this.props.relationFieldUrlTemplate,
102
- isPagination: true
105
+ isPagination: true,
106
+ total: (instanceRelationModalData === null || instanceRelationModalData === void 0 ? void 0 : instanceRelationModalData.total) || 0,
107
+ paginationChange: (page, pageSize, relationData) => this.searchInstanceRelationData(page, pageSize, relationData)
103
108
  }))), (_this$props$brickConf = this.props.brickConfigList) === null || _this$props$brickConf === void 0 ? void 0 : _this$props$brickConf.map(config => /*#__PURE__*/React.createElement(Card, {
104
109
  bordered: false,
105
110
  title: config.label,
@@ -326,14 +331,10 @@ export class LegacyInstanceDetail extends React.Component {
326
331
  relationData: attr,
327
332
  value: (_instanceData$attr$__ = instanceData[attr.__id]) === null || _instanceData$attr$__ === void 0 ? void 0 : _instanceData$attr$__.slice(0, 10),
328
333
  relationFieldUrlTemplate: this.props.relationFieldUrlTemplate
329
- }), ((_instanceData$attr$__2 = instanceData[attr.__id]) === null || _instanceData$attr$__2 === void 0 ? void 0 : _instanceData$attr$__2.length) > 10 && /*#__PURE__*/React.createElement(Button, {
334
+ }), ((_instanceData$attr$__2 = instanceData[attr.__id]) === null || _instanceData$attr$__2 === void 0 ? void 0 : _instanceData$attr$__2.length) >= 10 && /*#__PURE__*/React.createElement(Button, {
330
335
  "data-testid": "view-more-" + attr.__id,
331
336
  type: "link",
332
- onClick: () => {
333
- this.setState({
334
- currentAttr: attr
335
- });
336
- }
337
+ onClick: () => this.handleRelationModal(attr)
337
338
  }, i18n.t("".concat(NS_LIBS_CMDB_INSTANCES, ":").concat(K.VIEW_MORE)))), !isStructs(attr) && !isStruct(attr) && !isRelation(attr) && isComponentMode && !isUrl(attr) && !isFloat(attr) && (attrCustomConfig.useBrick ? /*#__PURE__*/React.createElement(BrickAsComponent, {
338
339
  useBrick: attrCustomConfig.useBrick,
339
340
  data: {
@@ -368,6 +369,66 @@ export class LegacyInstanceDetail extends React.Component {
368
369
  } // istanbul ignore next
369
370
 
370
371
 
372
+ handleRelationModal(attr) {
373
+ var _this = this;
374
+
375
+ return _asyncToGenerator(function* () {
376
+ yield _this.searchInstanceRelationData(1, 10, attr);
377
+ })();
378
+ } // istanbul ignore next
379
+
380
+
381
+ searchInstanceRelationData(page, pageSize, attr) {
382
+ var _this2 = this;
383
+
384
+ return _asyncToGenerator(function* () {
385
+ var _modelData$view;
386
+
387
+ var {
388
+ right_id,
389
+ left_object_id,
390
+ right_object_id,
391
+ left_id
392
+ } = attr;
393
+ var objectId, queryId;
394
+ var {
395
+ modelData,
396
+ modelDataMap
397
+ } = _this2.state;
398
+ var hideColumns = (modelData === null || modelData === void 0 ? void 0 : (_modelData$view = modelData.view) === null || _modelData$view === void 0 ? void 0 : _modelData$view.hide_columns) || [];
399
+
400
+ if (left_object_id === modelData.objectId && !hideColumns.includes(left_id)) {
401
+ objectId = right_object_id;
402
+ queryId = right_id;
403
+ }
404
+
405
+ if (right_object_id === modelData.objectId && !hideColumns.includes(right_id)) {
406
+ objectId = left_object_id;
407
+ queryId = left_id;
408
+ }
409
+
410
+ var fields = uniq(map(modelDataMap[objectId].attrList, "id"));
411
+ var params = {
412
+ fields,
413
+ page,
414
+ page_size: pageSize,
415
+ ignore_missing_field_error: true,
416
+ query: {
417
+ ["".concat(queryId, ".instanceId")]: {
418
+ $eq: _this2.props.instanceId
419
+ }
420
+ }
421
+ };
422
+ var instanceRelationModalData = yield fetchCmdbInstanceSearch(objectId, params);
423
+
424
+ _this2.setState({
425
+ instanceRelationModalData,
426
+ currentAttr: attr
427
+ });
428
+ })();
429
+ } // istanbul ignore next
430
+
431
+
371
432
  formatBasicInfoGroupList(modelData, basicInfoGroupList) {
372
433
  // let { modelData, basicInfoGroupList } = state;
373
434
  var {
@@ -412,8 +473,10 @@ export class LegacyInstanceDetail extends React.Component {
412
473
 
413
474
  groupTag = (_field$left_tags = field.left_tags) !== null && _field$left_tags !== void 0 && _field$left_tags.length && field.left_tags[0].trim() !== "" ? field.left_tags[0] : DEFAULT_ATTRIBUTE_TAG;
414
475
  } else {
476
+ var _field$tag;
477
+
415
478
  var basicInfoText = i18n.t("".concat(NS_LIBS_CMDB_INSTANCES, ":").concat(K.BASIC_INFORMATION));
416
- groupTag = field.tag.length > 0 ? field.tag[0] || basicInfoText : basicInfoText;
479
+ groupTag = ((_field$tag = field.tag) === null || _field$tag === void 0 ? void 0 : _field$tag.length) > 0 ? field.tag[0] || basicInfoText : basicInfoText;
417
480
  }
418
481
 
419
482
  var basicInfoGroup = basicInfoGroupList.find(item => item.name === groupTag);
@@ -455,24 +518,24 @@ export class LegacyInstanceDetail extends React.Component {
455
518
  }
456
519
 
457
520
  componentDidUpdate(prevProps) {
458
- var _this = this;
521
+ var _this3 = this;
459
522
 
460
523
  if (this.props.objectId && this.props.instanceId && prevProps.instanceId !== this.props.instanceId) {
461
524
  _asyncToGenerator(function* () {
462
- return yield _this.fetchData(_this.props);
525
+ return yield _this3.fetchData(_this3.props);
463
526
  })();
464
527
  }
465
528
  }
466
529
 
467
530
  componentDidMount() {
468
- var _this2 = this;
531
+ var _this4 = this;
469
532
 
470
533
  return _asyncToGenerator(function* () {
471
- if (_this2.props.actions) {
534
+ if (_this4.props.actions) {
472
535
  var buttonActions = [];
473
536
  var dropdownActions = [];
474
537
 
475
- _this2.props.actions.forEach(action => {
538
+ _this4.props.actions.forEach(action => {
476
539
  switch (action.type) {
477
540
  case "dropdown":
478
541
  dropdownActions.push(action);
@@ -485,14 +548,14 @@ export class LegacyInstanceDetail extends React.Component {
485
548
  }
486
549
  });
487
550
 
488
- _this2.setState({
551
+ _this4.setState({
489
552
  buttonActions,
490
553
  dropdownActions
491
554
  });
492
555
  }
493
556
 
494
- if (_this2.props.instanceId && _this2.props.objectId) {
495
- yield _this2.fetchData(_this2.props);
557
+ if (_this4.props.instanceId && _this4.props.objectId) {
558
+ yield _this4.fetchData(_this4.props);
496
559
  }
497
560
  })();
498
561
  }
@@ -542,10 +605,11 @@ export class LegacyInstanceDetail extends React.Component {
542
605
 
543
606
 
544
607
  fetchData(props) {
545
- var _this3 = this;
608
+ var _this5 = this;
546
609
 
547
610
  return _asyncToGenerator(function* () {
548
611
  var modelListData, modelDataMap, instanceData;
612
+ var relationLimit = 10;
549
613
 
550
614
  try {
551
615
  if (props.modelDataList) {
@@ -554,9 +618,9 @@ export class LegacyInstanceDetail extends React.Component {
554
618
  if (props.showFields) {
555
619
  var {
556
620
  fields
557
- } = _this3.getInstanceDetailData(props, modelDataMap);
621
+ } = _this5.getInstanceDetailData(props, modelDataMap);
558
622
 
559
- instanceData = yield fetchCmdbInstanceDetailByFields(props.objectId, props.instanceId, fields);
623
+ instanceData = yield fetchCmdbInstanceDetailByFields(props.objectId, props.instanceId, fields, relationLimit);
560
624
  } else {
561
625
  instanceData = yield fetchCmdbInstanceDetail(props.objectId, props.instanceId);
562
626
  }
@@ -567,9 +631,9 @@ export class LegacyInstanceDetail extends React.Component {
567
631
 
568
632
  var {
569
633
  fields: _fields
570
- } = _this3.getInstanceDetailData(props, modelDataMap);
634
+ } = _this5.getInstanceDetailData(props, modelDataMap);
571
635
 
572
- instanceData = yield fetchCmdbInstanceDetailByFields(props.objectId, props.instanceId, _fields);
636
+ instanceData = yield fetchCmdbInstanceDetailByFields(props.objectId, props.instanceId, _fields, relationLimit);
573
637
  } else {
574
638
  [modelListData, instanceData] = yield Promise.all([fetchCmdbObjectRef(props.objectId), fetchCmdbInstanceDetail(props.objectId, props.instanceId)]);
575
639
  modelDataMap = keyBy(modelListData.data, "objectId");
@@ -578,9 +642,9 @@ export class LegacyInstanceDetail extends React.Component {
578
642
 
579
643
  var {
580
644
  filterModelData
581
- } = _this3.getInstanceDetailData(props, modelDataMap);
645
+ } = _this5.getInstanceDetailData(props, modelDataMap);
582
646
 
583
- _this3.setState({
647
+ _this5.setState({
584
648
  modelDataMap,
585
649
  modelData: modifyModelData(filterModelData),
586
650
  instanceData,
@@ -589,13 +653,13 @@ export class LegacyInstanceDetail extends React.Component {
589
653
  basicInfoGroupList: []
590
654
  });
591
655
 
592
- _this3.setBasicInfoGroupList(_this3.state); // this.setFormattedInstanceData(this.state);
656
+ _this5.setBasicInfoGroupList(_this5.state); // this.setFormattedInstanceData(this.state);
593
657
 
594
658
  } catch (e) {
595
659
  // 统一处理请求错误
596
660
  handleHttpError(e); // 标记 `loaded` 和 `failed` 状态
597
661
 
598
- _this3.setState({
662
+ _this5.setState({
599
663
  loaded: true
600
664
  });
601
665
  }