@undp/carbon-library 1.0.16-CARBON-363.46 → 1.0.16-CARBON-363.57

Sign up to get free protection for your applications and to get access to all the features.
package/dist/esm/index.js CHANGED
@@ -24678,7 +24678,7 @@ var EditableRow = function (_a) {
24678
24678
  React.createElement("tr", __assign({}, props)))));
24679
24679
  };
24680
24680
  var EditableCell = function (_a) {
24681
- var title = _a.title, editable = _a.editable, children = _a.children, dataIndex = _a.dataIndex, record = _a.record, handleSave = _a.handleSave, restProps = __rest(_a, ["title", "editable", "children", "dataIndex", "record", "handleSave"]);
24681
+ _a.title; var editable = _a.editable, children = _a.children, dataIndex = _a.dataIndex, record = _a.record, handleSave = _a.handleSave, restProps = __rest(_a, ["title", "editable", "children", "dataIndex", "record", "handleSave"]);
24682
24682
  var _b = useState(false), editing = _b[0], setEditing = _b[1];
24683
24683
  var inputRef = useRef(null);
24684
24684
  var form = useContext(EditableContext);
@@ -24714,12 +24714,7 @@ var EditableCell = function (_a) {
24714
24714
  }); };
24715
24715
  var childNode = children;
24716
24716
  if (editable) {
24717
- childNode = editing ? (React.createElement(Form.Item, { style: { margin: 0 }, name: dataIndex, rules: [
24718
- {
24719
- required: true,
24720
- message: "".concat(title, " is required."),
24721
- },
24722
- ] },
24717
+ childNode = editing ? (React.createElement(Form.Item, { style: { margin: 0 }, name: dataIndex },
24723
24718
  React.createElement(Input, { ref: inputRef, onPressEnter: save, onBlur: save }))) : (React.createElement("div", { className: "editable-cell-value-wrap", style: { paddingRight: 24, minWidth: "100px", minHeight: "20px" }, onClick: toggleEdit }, children));
24724
24719
  }
24725
24720
  return React.createElement("td", __assign({}, restProps), childNode);
@@ -24730,9 +24725,15 @@ styleInject(css_248z$4);
24730
24725
 
24731
24726
  var NdcActionType;
24732
24727
  (function (NdcActionType) {
24733
- NdcActionType[NdcActionType["main"] = 0] = "main";
24734
- NdcActionType[NdcActionType["sub"] = 1] = "sub";
24728
+ NdcActionType[NdcActionType["mainAction"] = 0] = "mainAction";
24729
+ NdcActionType[NdcActionType["subAction"] = 1] = "subAction";
24735
24730
  })(NdcActionType || (NdcActionType = {}));
24731
+ var NdcDetailsActionStatus;
24732
+ (function (NdcDetailsActionStatus) {
24733
+ NdcDetailsActionStatus[NdcDetailsActionStatus["pending"] = 0] = "pending";
24734
+ NdcDetailsActionStatus[NdcDetailsActionStatus["approved"] = 1] = "approved";
24735
+ })(NdcDetailsActionStatus || (NdcDetailsActionStatus = {}));
24736
+
24736
24737
  var NdcDetailsComponent = function (props) {
24737
24738
  var t = props.t, useConnection = props.useConnection, useUserContext = props.useUserContext;
24738
24739
  var RangePicker = DatePicker.RangePicker;
@@ -24741,14 +24742,23 @@ var NdcDetailsComponent = function (props) {
24741
24742
  var _c = useState([]), periodItems = _c[0], setPeriodItems = _c[1];
24742
24743
  var _d = useState({}), selectedPeriod = _d[0], setSelectedPeriod = _d[1];
24743
24744
  var selectedDateRangeRef = useRef({});
24744
- var addedNdcDetailId = useRef(0);
24745
+ useRef(0);
24745
24746
  var selectedNdcDetail = useRef({});
24746
24747
  var _e = useState(0), tableKey = _e[0], setTableKey = _e[1];
24747
- var _f = useConnection(), get = _f.get, post = _f.post;
24748
+ var _f = useConnection(), get = _f.get, post = _f.post, put = _f.put;
24748
24749
  var userInfoState = useUserContext().userInfoState;
24750
+ var governmentMinistry = process.env.REACT_APP_GOVERNMENT_MINISTRY
24751
+ ? process.env.REACT_APP_GOVERNMENT_MINISTRY
24752
+ : "Test ministryName";
24749
24753
  var isAddRangeVisible = ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.MINISTRY ||
24750
24754
  (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.GOVERNMENT) &&
24751
24755
  (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.userRole) !== Role.ViewOnly;
24756
+ var ndcMainDetailsForPeriod = selectedPeriod.key !== "add_new"
24757
+ ? ndcDetailsData.filter(function (ndcDetail) {
24758
+ return (ndcDetail.periodId === parseInt(selectedPeriod.key) &&
24759
+ ndcDetail.actionType === NdcActionType.mainAction);
24760
+ })
24761
+ : [];
24752
24762
  var isAddNdcActionVisible = function () {
24753
24763
  return ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.GOVERNMENT &&
24754
24764
  (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.userRole) !== Role.ViewOnly);
@@ -24756,104 +24766,98 @@ var NdcDetailsComponent = function (props) {
24756
24766
  var inRange = function (num, min, max) {
24757
24767
  return num >= min && num <= max;
24758
24768
  };
24759
- function onAddNewSubNdcDetail() {
24760
- //const range = selectedPeriod.split("-");
24761
- var range = [];
24762
- var ndcDetail = ndcDetailsData.find(function (item) { return item.key === selectedNdcDetail.current.key; });
24763
- var ndcDetailItemIndex = ndcDetailsData.findIndex(function (item) { return item.key === selectedNdcDetail.current.key; });
24764
- if (ndcDetail) {
24765
- addedNdcDetailId.current = addedNdcDetailId.current + 1;
24766
- var newData = {
24767
- key: addedNdcDetailId.current,
24768
- startDate: new Date("".concat(Number(range[0]), "-01-24 23:12:00")),
24769
- endDate: new Date("".concat(Number(range[0]), "-12-24 23:12:00")),
24770
- ndcActionId: ndcDetail === null || ndcDetail === void 0 ? void 0 : ndcDetail.key,
24771
- nationalPlanObj: "",
24772
- kpi: "",
24773
- ministry: "",
24774
- };
24775
- if (!ndcDetail.subNdcDetails) {
24776
- ndcDetail.subNdcDetails = [];
24777
- }
24778
- ndcDetail.subNdcDetails.push(newData);
24779
- }
24780
- ndcDetailsData[ndcDetailItemIndex] = ndcDetail;
24781
- setNdcDetailsData(ndcDetailsData);
24782
- setTableKey(function (key) { return key + 1; });
24783
- }
24784
- var handleSave = function (row) {
24785
- setNdcDetailsData(function (prevData) {
24786
- var newData = JSON.parse(JSON.stringify(prevData));
24787
- if (row.type === NdcActionType.main) {
24788
- var index = newData.findIndex(function (item) { return row.key === item.key; });
24789
- if (index !== -1) {
24790
- newData[index] = __assign(__assign({}, newData[index]), row);
24791
- }
24792
- }
24793
- else {
24794
- var parentIndex = newData.findIndex(function (item) { return row.ndcActionId === item.key; });
24795
- var parentItem = newData[parentIndex];
24796
- if (parentItem) {
24797
- if (parentItem.subNdcDetails) {
24798
- var itemIndex = parentItem.subNdcDetails.findIndex(function (item) { return row.key === item.key; });
24799
- if (itemIndex === -1) {
24800
- parentItem.subNdcDetails.push(row);
24801
- }
24802
- else {
24803
- parentItem.subNdcDetails[itemIndex] = __assign({}, row);
24804
- }
24805
- }
24806
- else {
24807
- parentItem.subNdcDetails = [row];
24808
- }
24809
- }
24810
- newData[parentIndex] = __assign({}, parentItem);
24811
- setTableKey(function (key) { return key + 1; });
24769
+ var handleSave = function (row) { return __awaiter(void 0, void 0, void 0, function () {
24770
+ var updatedItemIndex, response, response;
24771
+ return __generator(this, function (_a) {
24772
+ switch (_a.label) {
24773
+ case 0:
24774
+ console.log("handleSave", row);
24775
+ updatedItemIndex = ndcDetailsData.findIndex(function (item) { return item.id === row.id; });
24776
+ if (!(updatedItemIndex === -1)) return [3 /*break*/, 2];
24777
+ return [4 /*yield*/, post("national/programme/addNdcDetailsAction", __assign(__assign({}, row), { kpi: parseInt(row.kpi) }))];
24778
+ case 1:
24779
+ response = _a.sent();
24780
+ console.log("handleSave created", response);
24781
+ return [3 /*break*/, 4];
24782
+ case 2: return [4 /*yield*/, put("national/programme/updateNdcDetailsAction", __assign(__assign({}, row), { kpi: parseInt(row.kpi) }))];
24783
+ case 3:
24784
+ response = _a.sent();
24785
+ console.log("handleSave updated", response);
24786
+ _a.label = 4;
24787
+ case 4:
24788
+ fetchNdcDetailActions();
24789
+ return [2 /*return*/];
24812
24790
  }
24813
- return newData;
24814
24791
  });
24815
- };
24816
- var getNdcDetailsForPeriod = function () {
24817
- //const range = selectedPeriod.split("-");
24818
- var range = [];
24819
- if (range.length > 1) {
24820
- var filteredData = ndcDetailsData.filter(function (item) {
24821
- return inRange(Number(moment(item.startDate).year()), Number(range[0]), Number(range[1]));
24822
- });
24823
- return filteredData;
24824
- }
24825
- else {
24826
- return [];
24827
- }
24828
- };
24829
- var getSubNdcDetails = function (key) {
24830
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
24831
- var ndcDetail = ndcDetailsData.find(function (item) { return item.key === key; });
24832
- if (ndcDetail) {
24833
- if (((_b = ndcDetail === null || ndcDetail === void 0 ? void 0 : ndcDetail.subNdcDetails[((_a = ndcDetail === null || ndcDetail === void 0 ? void 0 : ndcDetail.subNdcDetails) === null || _a === void 0 ? void 0 : _a.length) - 1]) === null || _b === void 0 ? void 0 : _b.ministry.trim()) !== "" &&
24834
- ((_d = ndcDetail === null || ndcDetail === void 0 ? void 0 : ndcDetail.subNdcDetails[((_c = ndcDetail === null || ndcDetail === void 0 ? void 0 : ndcDetail.subNdcDetails) === null || _c === void 0 ? void 0 : _c.length) - 1]) === null || _d === void 0 ? void 0 : _d.ministry) &&
24835
- ((_f = ndcDetail === null || ndcDetail === void 0 ? void 0 : ndcDetail.subNdcDetails[((_e = ndcDetail === null || ndcDetail === void 0 ? void 0 : ndcDetail.subNdcDetails) === null || _e === void 0 ? void 0 : _e.length) - 1]) === null || _f === void 0 ? void 0 : _f.nationalPlanObj.trim()) !== "" &&
24836
- ((_h = ndcDetail === null || ndcDetail === void 0 ? void 0 : ndcDetail.subNdcDetails[((_g = ndcDetail === null || ndcDetail === void 0 ? void 0 : ndcDetail.subNdcDetails) === null || _g === void 0 ? void 0 : _g.length) - 1]) === null || _h === void 0 ? void 0 : _h.nationalPlanObj) &&
24837
- String((_k = ndcDetail === null || ndcDetail === void 0 ? void 0 : ndcDetail.subNdcDetails[((_j = ndcDetail === null || ndcDetail === void 0 ? void 0 : ndcDetail.subNdcDetails) === null || _j === void 0 ? void 0 : _j.length) - 1]) === null || _k === void 0 ? void 0 : _k.kpi).trim() !== "" &&
24838
- String((_m = ndcDetail === null || ndcDetail === void 0 ? void 0 : ndcDetail.subNdcDetails[((_l = ndcDetail === null || ndcDetail === void 0 ? void 0 : ndcDetail.subNdcDetails) === null || _l === void 0 ? void 0 : _l.length) - 1]) === null || _m === void 0 ? void 0 : _m.kpi)) {
24839
- onAddNewSubNdcDetail();
24840
- }
24841
- return ndcDetail.subNdcDetails;
24842
- }
24843
- else {
24844
- return [];
24845
- }
24792
+ }); };
24793
+ // const getNdcDetailsForPeriod = () => {
24794
+ // //const range = selectedPeriod.split("-");
24795
+ // const range: any = [];
24796
+ // if (range.length > 1) {
24797
+ // const filteredData = ndcDetailsData.filter((item: NdcDetail) => {
24798
+ // return inRange(
24799
+ // Number(moment(item.startDate).year()),
24800
+ // Number(range[0]),
24801
+ // Number(range[1])
24802
+ // );
24803
+ // });
24804
+ // return filteredData;
24805
+ // } else {
24806
+ // return [];
24807
+ // }
24808
+ // };
24809
+ var getSubNdcDetailsForPeriod = function (id) {
24810
+ ndcDetailsData.find(function (item) { return item.id === id; });
24811
+ var subNdcDetails = ndcDetailsData.filter(function (ndcDetail) {
24812
+ return (ndcDetail.parentActionId === id &&
24813
+ ndcDetail.actionType === NdcActionType.subAction);
24814
+ });
24815
+ var emptySubNdcRow = {
24816
+ actionType: NdcActionType.subAction,
24817
+ nationalPlanObjective: "",
24818
+ kpi: 0,
24819
+ ministryName: governmentMinistry,
24820
+ status: NdcDetailsActionStatus.pending,
24821
+ parentActionId: id,
24822
+ };
24823
+ return __spreadArray(__spreadArray([], subNdcDetails, true), [emptySubNdcRow], false);
24824
+ // if (ndcDetail) {
24825
+ // if (
24826
+ // ndcDetail?.subNdcDetails[
24827
+ // ndcDetail?.subNdcDetails?.length - 1
24828
+ // ]?.ministryName.trim() !== "" &&
24829
+ // ndcDetail?.subNdcDetails[ndcDetail?.subNdcDetails?.length - 1]
24830
+ // ?.ministryName &&
24831
+ // ndcDetail?.subNdcDetails[
24832
+ // ndcDetail?.subNdcDetails?.length - 1
24833
+ // ]?.nationalPlanObjective.trim() !== "" &&
24834
+ // ndcDetail?.subNdcDetails[ndcDetail?.subNdcDetails?.length - 1]
24835
+ // ?.nationalPlanObjective &&
24836
+ // String(
24837
+ // ndcDetail?.subNdcDetails[ndcDetail?.subNdcDetails?.length - 1]?.kpi
24838
+ // ).trim() !== "" &&
24839
+ // String(
24840
+ // ndcDetail?.subNdcDetails[ndcDetail?.subNdcDetails?.length - 1]?.kpi
24841
+ // )
24842
+ // ) {
24843
+ // onAddNewSubNdcDetail();
24844
+ // }
24845
+ // return ndcDetail.subNdcDetails;
24846
+ // } else {
24847
+ // return [];
24848
+ // }
24849
+ //return [];
24846
24850
  };
24847
24851
  var defaultColumns = [
24848
24852
  {
24849
24853
  title: t("ndc:ndcColumnsNationalPlanObj"),
24850
- dataIndex: "nationalPlanObj",
24851
- key: "nationalPlanObj",
24854
+ dataIndex: "nationalPlanObjective",
24855
+ key: "nationalPlanObjective",
24852
24856
  align: "left",
24853
24857
  editable: true,
24854
24858
  width: "50%",
24855
- render: function (_, record) { return (React.createElement(React.Fragment, null, record.nationalPlanObj ? (React.createElement(Space, { size: "middle" },
24856
- React.createElement("span", null, record.nationalPlanObj))) : (React.createElement("input", { placeholder: "Please add the National Plan Objective", className: "ant-input", type: "text" })))); },
24859
+ render: function (_, record) { return (React.createElement(React.Fragment, null, record.nationalPlanObjective ? (React.createElement(Space, { size: "middle" },
24860
+ React.createElement("span", null, record.nationalPlanObjective))) : (React.createElement("input", { placeholder: "Please add the National Plan Objective", className: "ant-input", type: "text" })))); },
24857
24861
  },
24858
24862
  {
24859
24863
  title: t("ndc:ndcColumnsKpi"),
@@ -24862,18 +24866,18 @@ var NdcDetailsComponent = function (props) {
24862
24866
  align: "left",
24863
24867
  editable: true,
24864
24868
  width: "10%",
24865
- render: function (_, record) { return (React.createElement(React.Fragment, null, record.nationalPlanObj ? (React.createElement(Space, { size: "middle" },
24869
+ render: function (_, record) { return (React.createElement(React.Fragment, null, record.kpi ? (React.createElement(Space, { size: "middle" },
24866
24870
  React.createElement("span", null, record.kpi))) : (React.createElement("input", { placeholder: "Enter Kpi", className: "ant-input", type: "text" })))); },
24867
24871
  },
24868
24872
  {
24869
- title: "Ministry",
24870
- dataIndex: "ministry",
24871
- key: "ministry",
24873
+ title: "ministryName",
24874
+ dataIndex: "ministryName",
24875
+ key: "ministryName",
24872
24876
  align: "left",
24873
24877
  editable: true,
24874
24878
  width: "40%",
24875
- render: function (_, record) { return (React.createElement(React.Fragment, null, record.nationalPlanObj ? (React.createElement(Space, { size: "middle" },
24876
- React.createElement("span", null, record.ministry))) : (React.createElement("input", { placeholder: "Please add the Ministry name", className: "ant-input", type: "text" })))); },
24879
+ render: function (_, record) { return (React.createElement(React.Fragment, null, record.ministryName ? (React.createElement(Space, { size: "middle" },
24880
+ React.createElement("span", null, record.ministryName))) : (React.createElement("input", { placeholder: "Please add the ministryName name", className: "ant-input", type: "text" })))); },
24877
24881
  },
24878
24882
  ];
24879
24883
  var columns = defaultColumns.map(function (col) {
@@ -24888,32 +24892,38 @@ var NdcDetailsComponent = function (props) {
24888
24892
  handleSave: handleSave,
24889
24893
  }); } });
24890
24894
  });
24891
- function onAddNewNdcDetail() {
24892
- //const range = selectedPeriod.split("-");
24893
- var range = [];
24894
- var ndcActionId = ++addedNdcDetailId.current;
24895
- var newData = {
24896
- key: ndcActionId,
24897
- type: NdcActionType.main,
24898
- startDate: new Date("".concat(Number(range[0]), "-01-24 23:12:00")),
24899
- endDate: new Date("".concat(Number(range[0]), "-12-24 23:12:00")),
24900
- nationalPlanObj: "",
24901
- kpi: "",
24902
- ministry: "",
24903
- subNdcDetails: [
24904
- {
24905
- key: ++addedNdcDetailId.current,
24906
- ndcActionId: ndcActionId,
24907
- type: NdcActionType.sub,
24908
- startDate: new Date("2019-03-25"),
24909
- endDate: new Date("2020-03-25"),
24910
- nationalPlanObj: "",
24911
- kpi: "",
24912
- ministry: "",
24913
- },
24914
- ],
24915
- };
24916
- setNdcDetailsData(__spreadArray(__spreadArray([], ndcDetailsData, true), [newData], false));
24895
+ function onClickedAddNewNdcDetail() {
24896
+ return __awaiter(this, void 0, void 0, function () {
24897
+ var periodId, newData, response, newlyCreatedNdcAction_1;
24898
+ return __generator(this, function (_a) {
24899
+ switch (_a.label) {
24900
+ case 0:
24901
+ if (!(selectedPeriod.key !== "add_new")) return [3 /*break*/, 2];
24902
+ periodId = parseInt(selectedPeriod.key);
24903
+ newData = {
24904
+ actionType: NdcActionType.mainAction,
24905
+ nationalPlanObjective: "",
24906
+ kpi: 0,
24907
+ ministryName: governmentMinistry,
24908
+ periodId: periodId,
24909
+ status: NdcDetailsActionStatus.pending,
24910
+ };
24911
+ return [4 /*yield*/, post("national/programme/addNdcDetailsAction", __assign({}, newData))];
24912
+ case 1:
24913
+ response = _a.sent();
24914
+ if (response && response.data) {
24915
+ newlyCreatedNdcAction_1 = response.data;
24916
+ newlyCreatedNdcAction_1.key = newlyCreatedNdcAction_1.id;
24917
+ setNdcDetailsData(function (ndcDetailsData) { return __spreadArray(__spreadArray([], ndcDetailsData, true), [
24918
+ newlyCreatedNdcAction_1,
24919
+ ], false); });
24920
+ setTableKey(function (key) { return key + 1; });
24921
+ }
24922
+ _a.label = 2;
24923
+ case 2: return [2 /*return*/];
24924
+ }
24925
+ });
24926
+ });
24917
24927
  }
24918
24928
  var components = {
24919
24929
  body: {
@@ -24926,7 +24936,7 @@ var NdcDetailsComponent = function (props) {
24926
24936
  return __generator(this, function (_a) {
24927
24937
  switch (_a.label) {
24928
24938
  case 0: return [4 /*yield*/, post("national/programme/deleteNdcDetailsPeriod", {
24929
- id: selectedPeriod.id,
24939
+ id: selectedPeriod.key,
24930
24940
  })];
24931
24941
  case 1:
24932
24942
  result = _a.sent();
@@ -24944,21 +24954,20 @@ var NdcDetailsComponent = function (props) {
24944
24954
  return (React.createElement("div", null,
24945
24955
  React.createElement(Row, null,
24946
24956
  React.createElement(Col, { span: 24 },
24947
- React.createElement(Table, { key: tableKey, components: components, rowClassName: function () { return "editable-row"; }, bordered: true, dataSource: getNdcDetailsForPeriod(), columns: columns, expandable: {
24957
+ React.createElement(Table, { key: tableKey, components: components, rowClassName: function () { return "editable-row"; }, bordered: true, dataSource: ndcMainDetailsForPeriod, columns: columns, expandable: {
24948
24958
  expandedRowRender: function (record) { return getSubNdcActionContent(record); },
24949
24959
  indentSize: 0,
24950
- defaultExpandedRowKeys: [selectedNdcDetail.current.key],
24960
+ //defaultExpandedRowKeys: [parseInt(selectedNdcDetail.current.id)],
24951
24961
  }, footer: function () {
24952
24962
  return isAddNdcActionVisible() && (React.createElement(Row, { justify: "center" },
24953
- React.createElement(Button, { onClick: onAddNewNdcDetail, type: "default", style: {
24963
+ React.createElement(Button, { onClick: onClickedAddNewNdcDetail, type: "default", style: {
24954
24964
  marginBottom: 16,
24955
24965
  width: "100%",
24956
24966
  } }, t("ndc:addNdcAction"))));
24957
24967
  } }))),
24958
- React.createElement(Row, null,
24959
- React.createElement(Col, { span: 24 },
24960
- React.createElement(Button, { type: "primary", onClick: onDeletePeriod, htmlType: "submit", loading: loading }, t("ndc:delete")),
24961
- React.createElement(Button, { type: "primary", onClick: onFinalizePeriod, htmlType: "submit", loading: loading }, t("ndc:finalize"))))));
24968
+ React.createElement(Row, { justify: "end" },
24969
+ React.createElement(Button, { className: "mg-left-1", type: "primary", onClick: onDeletePeriod, htmlType: "submit", loading: loading }, t("ndc:delete")),
24970
+ React.createElement(Button, { className: "mg-left-1", type: "primary", onClick: onFinalizePeriod, htmlType: "submit", loading: loading }, t("ndc:finalize")))));
24962
24971
  }
24963
24972
  var onAddNewPeriod = function () { return __awaiter(void 0, void 0, void 0, function () {
24964
24973
  var periodItem_1, existingIndex, response, addedPeriodItem, updatedPeriodItem_1;
@@ -25015,11 +25024,13 @@ var NdcDetailsComponent = function (props) {
25015
25024
  }
25016
25025
  function getSubNdcActionContent(record) {
25017
25026
  selectedNdcDetail.current = record;
25018
- return (React.createElement(Table, { components: components, rowClassName: function () { return "editable-row"; }, bordered: true, dataSource: getSubNdcDetails(record.key), columns: columns, showHeader: false, pagination: false }));
25027
+ return (React.createElement(Table, { components: components, rowClassName: function () { return "editable-row"; }, bordered: true, dataSource: getSubNdcDetailsForPeriod(record.id), columns: columns, showHeader: false, pagination: false }));
25019
25028
  }
25020
25029
  var onTabChange = function (key) {
25021
25030
  var selectedPeriod = periodItems.find(function (item) { return item.key === key; });
25022
- setSelectedPeriod(selectedPeriod);
25031
+ if (selectedPeriod) {
25032
+ setSelectedPeriod(selectedPeriod);
25033
+ }
25023
25034
  };
25024
25035
  var fetchNdcDetailPeriods = function () { return __awaiter(void 0, void 0, void 0, function () {
25025
25036
  var periods, addNewTab, response;
@@ -25028,11 +25039,12 @@ var NdcDetailsComponent = function (props) {
25028
25039
  case 0:
25029
25040
  periods = [];
25030
25041
  addNewTab = {
25031
- id: "add_new",
25032
25042
  key: "add_new",
25033
25043
  label: "Add New",
25034
25044
  startYear: 0,
25035
25045
  endYear: 0,
25046
+ finalized: false,
25047
+ deleted: false,
25036
25048
  };
25037
25049
  return [4 /*yield*/, get("national/programme/queryNdcDetailsPeriod")];
25038
25050
  case 1:
@@ -25051,241 +25063,26 @@ var NdcDetailsComponent = function (props) {
25051
25063
  }
25052
25064
  });
25053
25065
  }); };
25066
+ var fetchNdcDetailActions = function () { return __awaiter(void 0, void 0, void 0, function () {
25067
+ var response, updatedData;
25068
+ return __generator(this, function (_a) {
25069
+ switch (_a.label) {
25070
+ case 0: return [4 /*yield*/, get("national/programme/queryNdcDetailsAction")];
25071
+ case 1:
25072
+ response = _a.sent();
25073
+ if (response && response.data) {
25074
+ updatedData = response.data.map(function (item) {
25075
+ return __assign(__assign({}, item), { key: item.id });
25076
+ });
25077
+ setNdcDetailsData(updatedData);
25078
+ }
25079
+ return [2 /*return*/];
25080
+ }
25081
+ });
25082
+ }); };
25054
25083
  useEffect(function () {
25055
25084
  fetchNdcDetailPeriods();
25056
- var defaultNdcDetails = [
25057
- {
25058
- key: 1,
25059
- type: NdcActionType.main,
25060
- startDate: new Date("2019-03-25"),
25061
- endDate: new Date("2020-03-25"),
25062
- nationalPlanObj: "Enhance value addition in key growth opportunities",
25063
- kpi: 25,
25064
- ministry: "Ministry of Environment",
25065
- subNdcDetails: [
25066
- {
25067
- key: 6,
25068
- ndcActionId: 1,
25069
- type: NdcActionType.sub,
25070
- startDate: new Date("2019-03-25"),
25071
- endDate: new Date("2020-03-25"),
25072
- nationalPlanObj: "Enhance value addition in key growth opportunities sub details",
25073
- kpi: 25,
25074
- ministry: "Ministry of Agriculture, Water and Forestry (MAWF)",
25075
- },
25076
- {
25077
- key: 7,
25078
- ndcActionId: 1,
25079
- type: NdcActionType.sub,
25080
- startDate: new Date("2019-03-25"),
25081
- endDate: new Date("2020-03-25"),
25082
- nationalPlanObj: "",
25083
- kpi: "",
25084
- ministry: "",
25085
- },
25086
- ],
25087
- },
25088
- {
25089
- key: 2,
25090
- type: NdcActionType.main,
25091
- startDate: new Date("2019-03-25"),
25092
- endDate: new Date("2019-08-25"),
25093
- nationalPlanObj: "Strengthen the private sector to create 10,000 jobs",
25094
- kpi: 10500,
25095
- ministry: "Ministry of Environment",
25096
- subNdcDetails: [
25097
- {
25098
- key: 8,
25099
- ndcActionId: 2,
25100
- type: NdcActionType.sub,
25101
- startDate: new Date("2019-03-25"),
25102
- endDate: new Date("2020-03-25"),
25103
- nationalPlanObj: "",
25104
- kpi: "",
25105
- ministry: "",
25106
- },
25107
- ],
25108
- },
25109
- {
25110
- key: 12,
25111
- type: NdcActionType.main,
25112
- startDate: new Date("2019-03-25"),
25113
- endDate: new Date("2019-08-25"),
25114
- nationalPlanObj: "Other",
25115
- kpi: 10500,
25116
- ministry: "Ministry of Environment",
25117
- subNdcDetails: [
25118
- {
25119
- key: 8,
25120
- ndcActionId: 12,
25121
- type: NdcActionType.sub,
25122
- startDate: new Date("2019-03-25"),
25123
- endDate: new Date("2020-03-25"),
25124
- nationalPlanObj: "",
25125
- kpi: "",
25126
- ministry: "",
25127
- },
25128
- ],
25129
- },
25130
- {
25131
- key: 3,
25132
- type: NdcActionType.main,
25133
- startDate: new Date("2021-03-25"),
25134
- endDate: new Date("2022-03-25"),
25135
- nationalPlanObj: "Consolidate and increase the stock and quality of productive infrastructure by 50%",
25136
- kpi: 48,
25137
- ministry: "Ministry of Environment",
25138
- subNdcDetails: [
25139
- {
25140
- key: 9,
25141
- ndcActionId: 3,
25142
- type: NdcActionType.sub,
25143
- startDate: new Date("2019-03-25"),
25144
- endDate: new Date("2020-03-25"),
25145
- nationalPlanObj: "",
25146
- kpi: "",
25147
- ministry: "",
25148
- },
25149
- ],
25150
- },
25151
- {
25152
- key: 4,
25153
- type: NdcActionType.main,
25154
- startDate: new Date("2022-03-25"),
25155
- endDate: new Date("2022-05-25"),
25156
- nationalPlanObj: "Enhance the productivity and social wellbeing of the population",
25157
- kpi: 20,
25158
- ministry: "Ministry of Environment",
25159
- subNdcDetails: [
25160
- {
25161
- key: 10,
25162
- ndcActionId: 4,
25163
- type: NdcActionType.sub,
25164
- startDate: new Date("2019-03-25"),
25165
- endDate: new Date("2020-03-25"),
25166
- nationalPlanObj: "",
25167
- kpi: "",
25168
- ministry: "",
25169
- },
25170
- ],
25171
- },
25172
- {
25173
- key: 5,
25174
- type: NdcActionType.main,
25175
- startDate: new Date("2022-03-25"),
25176
- endDate: new Date("2023-03-25"),
25177
- nationalPlanObj: "Strengthen the role of the state in guiding and facilitating development",
25178
- kpi: 10,
25179
- ministry: "Ministry of Environment",
25180
- subNdcDetails: [
25181
- {
25182
- key: 11,
25183
- ndcActionId: 5,
25184
- type: NdcActionType.sub,
25185
- startDate: new Date("2019-03-25"),
25186
- endDate: new Date("2020-03-25"),
25187
- nationalPlanObj: "",
25188
- kpi: "",
25189
- ministry: "",
25190
- },
25191
- ],
25192
- },
25193
- {
25194
- key: 13,
25195
- type: NdcActionType.main,
25196
- startDate: new Date("2022-03-25"),
25197
- endDate: new Date("2023-03-25"),
25198
- nationalPlanObj: "Convert to solar energy",
25199
- kpi: 50000,
25200
- ministry: "Ministry of Environment",
25201
- subNdcDetails: [
25202
- {
25203
- key: 11,
25204
- ndcActionId: 13,
25205
- type: NdcActionType.sub,
25206
- startDate: new Date("2019-03-25"),
25207
- endDate: new Date("2020-03-25"),
25208
- nationalPlanObj: "Convert to solar energy",
25209
- kpi: "3000",
25210
- ministry: "Ministry of Agriculture, Water and Forestry (MAWF)",
25211
- },
25212
- {
25213
- key: 14,
25214
- ndcActionId: 13,
25215
- type: NdcActionType.sub,
25216
- startDate: new Date("2019-03-25"),
25217
- endDate: new Date("2020-03-25"),
25218
- nationalPlanObj: "",
25219
- kpi: "",
25220
- ministry: "",
25221
- },
25222
- ],
25223
- },
25224
- {
25225
- key: 15,
25226
- type: NdcActionType.main,
25227
- startDate: new Date("2022-03-25"),
25228
- endDate: new Date("2023-03-25"),
25229
- nationalPlanObj: "Strengthen the private sector to create jobs",
25230
- kpi: 10000,
25231
- ministry: "Ministry of Environment",
25232
- subNdcDetails: [
25233
- {
25234
- key: 16,
25235
- ndcActionId: 15,
25236
- type: NdcActionType.sub,
25237
- startDate: new Date("2019-03-25"),
25238
- endDate: new Date("2020-03-25"),
25239
- nationalPlanObj: "Strengthen the private sector to create jobs",
25240
- kpi: "7200",
25241
- ministry: "Ministry of Tourism (MoT)",
25242
- },
25243
- {
25244
- key: 17,
25245
- ndcActionId: 15,
25246
- type: NdcActionType.sub,
25247
- startDate: new Date("2019-03-25"),
25248
- endDate: new Date("2020-03-25"),
25249
- nationalPlanObj: "",
25250
- kpi: "",
25251
- ministry: "",
25252
- },
25253
- ],
25254
- },
25255
- {
25256
- key: 18,
25257
- type: NdcActionType.main,
25258
- startDate: new Date("2022-03-25"),
25259
- endDate: new Date("2023-03-25"),
25260
- nationalPlanObj: "Other",
25261
- kpi: "",
25262
- ministry: "Ministry of Environment",
25263
- subNdcDetails: [
25264
- {
25265
- key: 19,
25266
- ndcActionId: 18,
25267
- type: NdcActionType.sub,
25268
- startDate: new Date("2019-03-25"),
25269
- endDate: new Date("2020-03-25"),
25270
- nationalPlanObj: "Strengthen the private sector to create jobs",
25271
- kpi: "",
25272
- ministry: "Ministry of Agriculture, Water and Forestry (MAWF)",
25273
- },
25274
- {
25275
- key: 20,
25276
- ndcActionId: 18,
25277
- type: NdcActionType.sub,
25278
- startDate: new Date("2019-03-25"),
25279
- endDate: new Date("2020-03-25"),
25280
- nationalPlanObj: "",
25281
- kpi: "",
25282
- ministry: "",
25283
- },
25284
- ],
25285
- },
25286
- ];
25287
- addedNdcDetailId.current = 20;
25288
- setNdcDetailsData(defaultNdcDetails);
25085
+ fetchNdcDetailActions();
25289
25086
  }, []);
25290
25087
  return (React.createElement("div", { className: "ndc-management content-container" },
25291
25088
  React.createElement("div", { className: "title-bar" },
@@ -25294,8 +25091,8 @@ var NdcDetailsComponent = function (props) {
25294
25091
  React.createElement("div", { className: "body-title" }, t("ndc:ndcTitle")),
25295
25092
  React.createElement("div", { className: "body-sub-title" }, t("ndc:ndcSubTitle"))))),
25296
25093
  React.createElement("div", null,
25297
- React.createElement(Tabs, { centered: false, defaultActiveKey: "1", items: periodItems, activeKey: selectedPeriod, onChange: onTabChange })),
25298
- React.createElement("div", null, selectedPeriod.id === "add_new"
25094
+ React.createElement(Tabs, { centered: false, defaultActiveKey: "1", items: periodItems, activeKey: selectedPeriod.key, onChange: onTabChange })),
25095
+ React.createElement("div", null, selectedPeriod.key === "add_new"
25299
25096
  ? addNewPeriodContent()
25300
25097
  : ndcDetailsTableContent())));
25301
25098
  };