@undp/carbon-library 1.0.281-CARBON-415.0 → 1.0.281-CARBON-363.4

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/esm/index.js CHANGED
@@ -1,6 +1,6 @@
1
- import { PlusOutlined, FilterOutlined, BankOutlined, SafetyOutlined, AuditOutlined, ExperimentOutlined, UploadOutlined, UserOutlined, MinusCircleOutlined, StarOutlined, ToolOutlined, EyeOutlined, SearchOutlined, EllipsisOutlined, EditOutlined, DeleteOutlined, FileAddOutlined, CheckCircleOutlined, ExclamationCircleOutlined, BookOutlined, CaretDownOutlined, EyeInvisibleOutlined, GlobalOutlined, FlagOutlined, LineChartOutlined, LikeOutlined, DislikeOutlined } from '@ant-design/icons';
1
+ import { PlusOutlined, FilterOutlined, BankOutlined, SafetyOutlined, AuditOutlined, ExperimentOutlined, UploadOutlined, UserOutlined, MinusCircleOutlined, StarOutlined, ToolOutlined, EyeOutlined, SearchOutlined, EllipsisOutlined, EditOutlined, DeleteOutlined, FileAddOutlined, CheckCircleOutlined, ExclamationCircleOutlined, BookOutlined, CaretDownOutlined, LockOutlined, EyeInvisibleOutlined, GlobalOutlined, FlagOutlined, LineChartOutlined, LikeOutlined, DislikeOutlined } from '@ant-design/icons';
2
2
  import { Input, Radio, Space, Row, Col, Button, Dropdown, Table, Empty, message, Form, Steps, Upload, InputNumber, Tooltip, Select, Modal, Alert, Skeleton, Card, Tag, Checkbox, DatePicker, Popover, List, Typography, Spin, Tabs, Progress } from 'antd';
3
- import React, { useState, useEffect, useRef, useContext } from 'react';
3
+ import React, { useState, useEffect, useRef } from 'react';
4
4
  import { DateTime } from 'luxon';
5
5
  import { Buffer } from 'buffer';
6
6
  import PhoneInput, { formatPhoneNumberIntl, formatPhoneNumber } from 'react-phone-number-input';
@@ -2027,7 +2027,7 @@ var NdcActionStatus;
2027
2027
  NdcActionStatus["PENDING"] = "Pending";
2028
2028
  NdcActionStatus["APPROVED"] = "Approved";
2029
2029
  })(NdcActionStatus || (NdcActionStatus = {}));
2030
- var getNdcActionStatusEnumVal = function (value) {
2030
+ var getNdcActionStatusEnumVal$1 = function (value) {
2031
2031
  var index = Object.keys(NdcActionStatus).indexOf(value);
2032
2032
  if (index < 0) {
2033
2033
  return value;
@@ -2035,7 +2035,7 @@ var getNdcActionStatusEnumVal = function (value) {
2035
2035
  return Object.values(NdcActionStatus)[index];
2036
2036
  };
2037
2037
  var getNdcStatusTagType = function (status) {
2038
- switch (getNdcActionStatusEnumVal(status)) {
2038
+ switch (getNdcActionStatusEnumVal$1(status)) {
2039
2039
  case NdcActionStatus.PENDING:
2040
2040
  return "processing";
2041
2041
  case NdcActionStatus.APPROVED:
@@ -26655,622 +26655,891 @@ var RegistryDashboardComponent = function (props) {
26655
26655
  lastUpdateTransferLocations))))))))) : ("")));
26656
26656
  };
26657
26657
 
26658
- var EditableContext = React.createContext(null);
26659
- var EditableRow = function (_a) {
26660
- _a.index; var props = __rest(_a, ["index"]);
26661
- var form = Form.useForm()[0];
26662
- return (React.createElement(Form, { form: form, component: false },
26663
- React.createElement(EditableContext.Provider, { value: form },
26664
- React.createElement("tr", __assign({}, props)))));
26665
- };
26658
+ React.createContext(null);
26666
26659
  var EditableCell = function (_a) {
26667
- 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"]);
26668
- var _b = useState(false), editing = _b[0], setEditing = _b[1];
26669
- var inputRef = useRef(null);
26670
- var form = useContext(EditableContext);
26671
- useEffect(function () {
26672
- if (editing) {
26673
- inputRef.current.focus();
26674
- }
26675
- }, [editing]);
26676
- var toggleEdit = function () {
26677
- var _a;
26678
- setEditing(!editing);
26679
- form.setFieldsValue((_a = {}, _a[dataIndex] = record[dataIndex], _a));
26680
- };
26681
- var save = function () { return __awaiter(void 0, void 0, void 0, function () {
26682
- var values, errInfo_1;
26683
- return __generator(this, function (_a) {
26684
- switch (_a.label) {
26685
- case 0:
26686
- _a.trys.push([0, 2, , 3]);
26687
- return [4 /*yield*/, form.validateFields()];
26688
- case 1:
26689
- values = _a.sent();
26690
- toggleEdit();
26691
- handleSave(__assign(__assign({}, record), values));
26692
- return [3 /*break*/, 3];
26693
- case 2:
26694
- errInfo_1 = _a.sent();
26695
- console.log("Save failed:", errInfo_1);
26696
- return [3 /*break*/, 3];
26697
- case 3: return [2 /*return*/];
26698
- }
26699
- });
26700
- }); };
26701
- var childNode = children;
26702
- if (editable) {
26703
- childNode = editing ? (React.createElement(Form.Item, { style: { margin: 0 }, name: dataIndex, rules: [
26704
- {
26705
- required: true,
26706
- message: "".concat(title, " is required."),
26707
- },
26708
- ] },
26709
- 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));
26710
- }
26711
- return React.createElement("td", __assign({}, restProps), childNode);
26660
+ var editing = _a.editing, dataIndex = _a.dataIndex, title = _a.title; _a.inputType; var record = _a.record; _a.index; var children = _a.children, onBlurHandler = _a.onBlurHandler, t = _a.t, restProps = __rest(_a, ["editing", "dataIndex", "title", "inputType", "record", "index", "children", "onBlurHandler", "t"]);
26661
+ return (React.createElement("td", __assign({}, restProps), editing && dataIndex === "nationalPlanObjective" ? (React.createElement(Form.Item, { name: dataIndex, style: { margin: 0 }, rules: [
26662
+ {
26663
+ validator: function (rule, value) { return __awaiter(void 0, void 0, void 0, function () {
26664
+ var trimValue;
26665
+ return __generator(this, function (_a) {
26666
+ trimValue = typeof value === "string" ? value.trim() : value;
26667
+ if (!trimValue) {
26668
+ throw new Error("".concat(title, " ").concat(t("ndc:isRequired")));
26669
+ }
26670
+ return [2 /*return*/];
26671
+ });
26672
+ }); },
26673
+ },
26674
+ ] },
26675
+ React.createElement(Input, { onBlur: function () { return onBlurHandler(record); }, placeholder: t("ndc:nationalPlanObjectivePlaceHolder") }))) : editing && dataIndex === "kpi" ? (React.createElement(Form.Item, { name: dataIndex, style: { margin: 0 }, rules: [
26676
+ {
26677
+ validator: function (rule, value) { return __awaiter(void 0, void 0, void 0, function () {
26678
+ var trimValue;
26679
+ return __generator(this, function (_a) {
26680
+ trimValue = typeof value === "string" ? value.trim() : value;
26681
+ if (trimValue) {
26682
+ if (isNaN(+trimValue)) {
26683
+ throw new Error(t("ndc:kpiInvalidFormat"));
26684
+ }
26685
+ else if (+trimValue <= 0) {
26686
+ throw new Error(t("ndc:kpiGreaterThanZero"));
26687
+ }
26688
+ else if (trimValue.toString().length > 7) {
26689
+ throw new Error(t("ndc:kpiMaxLength"));
26690
+ }
26691
+ }
26692
+ else {
26693
+ throw new Error("".concat(title, " ").concat(t("ndc:isRequired")));
26694
+ }
26695
+ return [2 /*return*/];
26696
+ });
26697
+ }); },
26698
+ },
26699
+ ] },
26700
+ React.createElement(Input, { onBlur: function () { return onBlurHandler(record); }, placeholder: t("ndc:kpiPlaceHolder") }))) : (children)));
26712
26701
  };
26713
26702
 
26714
- var css_248z$4 = ".ndc-steps-actions {\n display: flex;\n flex-direction: row-reverse;\n margin-right: 1rem;\n justify-content: center; }\n .ndc-steps-actions .action-btn {\n border: 1px solid #16b1ff;\n color: #16b1ff;\n margin-right: 1rem; }\n .ndc-steps-actions .back-btn {\n border: 1px solid rgba(140, 140, 140, 0.7);\n color: rgba(140, 140, 140, 0.7);\n margin-right: 1rem; }\n .ndc-steps-actions .mg-left-1 {\n margin-left: 1rem; }\n";
26703
+ var css_248z$4 = ".ndc-steps-actions {\n display: flex;\n flex-direction: row-reverse;\n margin-right: 1rem;\n justify-content: center; }\n .ndc-steps-actions .action-btn {\n border: 1px solid #16b1ff;\n color: #16b1ff;\n margin-right: 1rem; }\n .ndc-steps-actions .back-btn {\n border: 1px solid rgba(140, 140, 140, 0.7);\n color: rgba(140, 140, 140, 0.7);\n margin-right: 1rem; }\n .ndc-steps-actions .mg-left-1 {\n margin-left: 1rem; }\n\n.ndc-details .ant-input-number-input-wrap {\n margin-right: 10px; }\n\n.ndc-details tbody {\n vertical-align: top; }\n\n.ndc-details td .ant-space-item {\n margin-top: 5px; }\n\n.ndc-details .btn-danger {\n color: #ff4d4f !important;\n border-color: #ff8183 !important; }\n";
26715
26704
  styleInject(css_248z$4);
26716
26705
 
26717
- var NdcActionType;
26718
- (function (NdcActionType) {
26719
- NdcActionType[NdcActionType["main"] = 0] = "main";
26720
- NdcActionType[NdcActionType["sub"] = 1] = "sub";
26721
- })(NdcActionType || (NdcActionType = {}));
26706
+ var NdcDetailsActionType;
26707
+ (function (NdcDetailsActionType) {
26708
+ NdcDetailsActionType["MainAction"] = "MainAction";
26709
+ NdcDetailsActionType["SubAction"] = "SubAction";
26710
+ })(NdcDetailsActionType || (NdcDetailsActionType = {}));
26711
+ var NdcDetailsActionStatus;
26712
+ (function (NdcDetailsActionStatus) {
26713
+ NdcDetailsActionStatus["New"] = "New";
26714
+ NdcDetailsActionStatus["Pending"] = "Pending";
26715
+ NdcDetailsActionStatus["Approved"] = "Approved";
26716
+ NdcDetailsActionStatus["Rejected"] = "Rejected";
26717
+ })(NdcDetailsActionStatus || (NdcDetailsActionStatus = {}));
26718
+ var getNdcActionStatusEnumVal = function (value) {
26719
+ var index = Object.keys(NdcDetailsActionStatus).indexOf(value);
26720
+ if (index < 0) {
26721
+ return value;
26722
+ }
26723
+ return Object.values(NdcDetailsActionStatus)[index];
26724
+ };
26725
+ var getNdcActionStatusTagType = function (status) {
26726
+ switch (getNdcActionStatusEnumVal(status)) {
26727
+ case NdcDetailsActionStatus.Rejected:
26728
+ return "error";
26729
+ case NdcDetailsActionStatus.Pending:
26730
+ return "processing";
26731
+ case NdcDetailsActionStatus.Approved:
26732
+ return "success";
26733
+ default:
26734
+ return "default";
26735
+ }
26736
+ };
26737
+
26722
26738
  var NdcDetailsComponent = function (props) {
26723
- var t = props.t; props.useConnection; var useUserContext = props.useUserContext;
26739
+ var t = props.t, useConnection = props.useConnection, useUserContext = props.useUserContext;
26724
26740
  var RangePicker = DatePicker.RangePicker;
26725
- var _a = useState([]), ndcDetailsData = _a[0], setNdcDetailsData = _a[1];
26726
- var _b = useState(false), loading = _b[0]; _b[1];
26727
- var periodItemsRef = useRef([]);
26741
+ var _a = useState([]), ndcActionsList = _a[0], setNdcActionsList = _a[1];
26742
+ var _b = useState(false), loading = _b[0], setLoading = _b[1];
26728
26743
  var _c = useState([]), periodItems = _c[0], setPeriodItems = _c[1];
26729
- var _d = useState("add_new"), selectedTab = _d[0], setSelectedTab = _d[1];
26730
- var selectedPeriod = useRef({});
26731
- var addedNdcDetailId = useRef(0);
26732
- var selectedNdcDetail = useRef({});
26744
+ var _d = useState({}), selectedPeriod = _d[0], setSelectedPeriod = _d[1];
26745
+ var selectedDateRangeRef = useRef({});
26733
26746
  var _e = useState(0), tableKey = _e[0], setTableKey = _e[1];
26747
+ var _f = useConnection(), get = _f.get, post = _f.post, put = _f.put;
26748
+ var _g = useState([]), ministryOrgList = _g[0], setMinistryOrgList = _g[1];
26749
+ var _h = useState({}), actionInfo = _h[0], setActionInfo = _h[1];
26750
+ var _j = useState(false), openConfirmationModal = _j[0], setOpenConfirmationModal = _j[1];
26751
+ var form = Form.useForm()[0];
26752
+ var _k = useState(null), editingKey = _k[0], setEditingKey = _k[1];
26753
+ var _l = useState(0), nextAvailableActionId = _l[0], setNextAvailableActionId = _l[1];
26754
+ var _m = useState([]), expandedRowKeys = _m[0], setExpandedRowKeys = _m[1];
26755
+ var _o = useState([]), subNdcActionsForPeriod = _o[0], setSubNdcActionsForPeriod = _o[1];
26756
+ var _p = useState(1), currentPage = _p[0], setCurrentPage = _p[1];
26757
+ var _q = useState(10), pageSize = _q[0], setPageSize = _q[1];
26758
+ var isEditing = function (record) { return record.id === editingKey; };
26759
+ var isMainActionInEditMode = function () {
26760
+ var unsavedMainActions = ndcMainDetailsForPeriod.filter(function (item) {
26761
+ return item.status === NdcDetailsActionStatus.New &&
26762
+ item.actionType === NdcDetailsActionType.MainAction;
26763
+ });
26764
+ return unsavedMainActions.length > 0 ? true : false;
26765
+ };
26734
26766
  var userInfoState = useUserContext().userInfoState;
26735
- var isAddRangeVisible = function () {
26736
- return (((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.MINISTRY ||
26737
- (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.GOVERNMENT) &&
26767
+ useEffect(function () {
26768
+ if (expandedRowKeys && expandedRowKeys.length > 0) {
26769
+ var expandedKey = expandedRowKeys[0];
26770
+ setNdcSubActionsForMainAction(expandedKey);
26771
+ }
26772
+ }, ndcActionsList);
26773
+ var loginMinistry = (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.GOVERNMENT
26774
+ ? process.env.REACT_APP_GOVERNMENT_MINISTRY
26775
+ ? process.env.REACT_APP_GOVERNMENT_MINISTRY
26776
+ : "Ministry Of Environment"
26777
+ : (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.MINISTRY
26778
+ ? userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyName
26779
+ : undefined;
26780
+ var isGovernmentUser = (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.GOVERNMENT &&
26781
+ (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.userRole) !== Role.ViewOnly;
26782
+ var isMainNdcActionsEditable = !selectedPeriod.finalized &&
26783
+ (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.GOVERNMENT &&
26784
+ (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.userRole) !== Role.ViewOnly;
26785
+ var isSubNdcActionsEditable = function (record) {
26786
+ return (!selectedPeriod.finalized &&
26787
+ record.status !== NdcDetailsActionStatus.Approved &&
26788
+ ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.GOVERNMENT ||
26789
+ ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.MINISTRY &&
26790
+ (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyName) === record.ministryName)) &&
26738
26791
  (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.userRole) !== Role.ViewOnly);
26739
26792
  };
26740
- var isAddNdcActionVisible = function () {
26741
- return ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.GOVERNMENT &&
26793
+ var checkSubNdcActionCreatePermission = function () {
26794
+ return (!selectedPeriod.finalized &&
26795
+ ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.GOVERNMENT ||
26796
+ (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.MINISTRY) &&
26742
26797
  (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.userRole) !== Role.ViewOnly);
26743
26798
  };
26799
+ var isNdcActionEditable = function (record) {
26800
+ if (record.actionType === NdcDetailsActionType.MainAction) {
26801
+ return isMainNdcActionsEditable;
26802
+ }
26803
+ else if (record.actionType === NdcDetailsActionType.SubAction) {
26804
+ return isSubNdcActionsEditable(record);
26805
+ }
26806
+ };
26807
+ var ndcMainDetailsForPeriod = selectedPeriod.key !== "add_new"
26808
+ ? ndcActionsList.filter(function (ndcDetail) {
26809
+ return (ndcDetail.periodId === parseInt(selectedPeriod.key) &&
26810
+ ndcDetail.actionType === NdcDetailsActionType.MainAction);
26811
+ })
26812
+ : [];
26813
+ var setNdcSubActionsForMainAction = function (mainActionId) {
26814
+ var subNdcDetails = ndcActionsList.filter(function (ndcDetail) {
26815
+ return (ndcDetail.parentActionId === mainActionId &&
26816
+ ndcDetail.actionType === NdcDetailsActionType.SubAction);
26817
+ });
26818
+ var emptySubNdcRow = {
26819
+ id: nextAvailableActionId,
26820
+ actionType: NdcDetailsActionType.SubAction,
26821
+ nationalPlanObjective: "",
26822
+ kpi: "",
26823
+ ministryName: loginMinistry,
26824
+ status: NdcDetailsActionStatus.New,
26825
+ parentActionId: mainActionId,
26826
+ };
26827
+ if (checkSubNdcActionCreatePermission()) {
26828
+ subNdcDetails = __spreadArray(__spreadArray([], subNdcDetails, true), [emptySubNdcRow], false);
26829
+ setEditingKey(nextAvailableActionId);
26830
+ setNextAvailableActionId(function (value) { return value + 1; });
26831
+ form.setFieldsValue({
26832
+ nationalPlanObjective: "",
26833
+ kpi: "",
26834
+ });
26835
+ }
26836
+ setSubNdcActionsForPeriod(subNdcDetails);
26837
+ };
26744
26838
  var inRange = function (num, min, max) {
26745
26839
  return num >= min && num <= max;
26746
26840
  };
26747
- function onAddNewSubNdcDetail() {
26748
- var range = selectedTab.split("-");
26749
- var ndcDetail = ndcDetailsData.find(function (item) { return item.key === selectedNdcDetail.current.key; });
26750
- var ndcDetailItemIndex = ndcDetailsData.findIndex(function (item) { return item.key === selectedNdcDetail.current.key; });
26751
- if (ndcDetail) {
26752
- addedNdcDetailId.current = addedNdcDetailId.current + 1;
26753
- var newData = {
26754
- key: addedNdcDetailId.current,
26755
- startDate: new Date("".concat(Number(range[0]), "-01-24 23:12:00")),
26756
- endDate: new Date("".concat(Number(range[0]), "-12-24 23:12:00")),
26757
- ndcActionId: ndcDetail === null || ndcDetail === void 0 ? void 0 : ndcDetail.key,
26758
- nationalPlanObj: "",
26759
- kpi: "",
26760
- ministry: "",
26761
- };
26762
- if (!ndcDetail.subNdcDetails) {
26763
- ndcDetail.subNdcDetails = [];
26764
- }
26765
- ndcDetail.subNdcDetails.push(newData);
26766
- }
26767
- ndcDetailsData[ndcDetailItemIndex] = ndcDetail;
26768
- setNdcDetailsData(ndcDetailsData);
26769
- setTableKey(function (key) { return key + 1; });
26770
- }
26771
- var handleSave = function (row) {
26772
- setNdcDetailsData(function (prevData) {
26773
- var newData = JSON.parse(JSON.stringify(prevData));
26774
- if (row.type === NdcActionType.main) {
26775
- var index = newData.findIndex(function (item) { return row.key === item.key; });
26776
- if (index !== -1) {
26777
- newData[index] = __assign(__assign({}, newData[index]), row);
26778
- }
26779
- }
26780
- else {
26781
- var parentIndex = newData.findIndex(function (item) { return row.ndcActionId === item.key; });
26782
- var parentItem = newData[parentIndex];
26783
- if (parentItem) {
26784
- if (parentItem.subNdcDetails) {
26785
- var itemIndex = parentItem.subNdcDetails.findIndex(function (item) { return row.key === item.key; });
26786
- if (itemIndex === -1) {
26787
- parentItem.subNdcDetails.push(row);
26788
- }
26789
- else {
26790
- parentItem.subNdcDetails[itemIndex] = __assign({}, row);
26791
- }
26841
+ var ClearEditMode = function () {
26842
+ var unsavedMainActions = ndcActionsList.filter(function (item) {
26843
+ return item.status === NdcDetailsActionStatus.New &&
26844
+ item.actionType === NdcDetailsActionType.MainAction;
26845
+ });
26846
+ if (unsavedMainActions && unsavedMainActions.length) {
26847
+ var updatedActions = ndcActionsList.filter(function (item) { return !unsavedMainActions.includes(item); });
26848
+ setNdcActionsList(updatedActions);
26849
+ }
26850
+ setEditingKey(null);
26851
+ };
26852
+ var handleSave = function (row) { return __awaiter(void 0, void 0, void 0, function () {
26853
+ var updatedFields, updatedItem, exception_2;
26854
+ return __generator(this, function (_a) {
26855
+ switch (_a.label) {
26856
+ case 0:
26857
+ _a.trys.push([0, 9, , 10]);
26858
+ updatedFields = void 0;
26859
+ _a.label = 1;
26860
+ case 1:
26861
+ _a.trys.push([1, 3, , 4]);
26862
+ return [4 /*yield*/, form.validateFields()];
26863
+ case 2:
26864
+ updatedFields = (_a.sent());
26865
+ return [3 /*break*/, 4];
26866
+ case 3:
26867
+ _a.sent();
26868
+ return [2 /*return*/];
26869
+ case 4:
26870
+ if (!updatedFields) {
26871
+ ClearEditMode();
26872
+ return [2 /*return*/];
26873
+ }
26874
+ else if (updatedFields.kpi === row.kpi &&
26875
+ updatedFields.nationalPlanObjective === row.nationalPlanObjective) {
26876
+ ClearEditMode();
26877
+ return [2 /*return*/];
26878
+ }
26879
+ updatedItem = __assign(__assign({}, row), updatedFields);
26880
+ if (!(updatedItem.status === NdcDetailsActionStatus.New)) return [3 /*break*/, 6];
26881
+ if (isGovernmentUser &&
26882
+ updatedItem.actionType === NdcDetailsActionType.SubAction) {
26883
+ updatedItem.status = NdcDetailsActionStatus.Approved;
26792
26884
  }
26793
26885
  else {
26794
- parentItem.subNdcDetails = [row];
26886
+ updatedItem.status = NdcDetailsActionStatus.Pending;
26795
26887
  }
26796
- }
26797
- newData[parentIndex] = __assign({}, parentItem);
26798
- setTableKey(function (key) { return key + 1; });
26888
+ return [4 /*yield*/, post("national/programme/addNdcDetailsAction", __assign(__assign({}, updatedItem), { kpi: parseInt(updatedItem.kpi.toString()) }))];
26889
+ case 5:
26890
+ _a.sent();
26891
+ return [3 /*break*/, 8];
26892
+ case 6:
26893
+ updatedItem.status = NdcDetailsActionStatus.Pending;
26894
+ return [4 /*yield*/, put("national/programme/updateNdcDetailsAction", __assign(__assign({}, updatedItem), { kpi: parseInt(updatedItem.kpi.toString()) }))];
26895
+ case 7:
26896
+ _a.sent();
26897
+ _a.label = 8;
26898
+ case 8:
26899
+ fetchNdcDetailActions();
26900
+ ClearEditMode();
26901
+ return [3 /*break*/, 10];
26902
+ case 9:
26903
+ exception_2 = _a.sent();
26904
+ ClearEditMode();
26905
+ message.open({
26906
+ type: "error",
26907
+ content: exception_2.message,
26908
+ duration: 3,
26909
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
26910
+ });
26911
+ return [3 /*break*/, 10];
26912
+ case 10: return [2 /*return*/];
26799
26913
  }
26800
- return newData;
26801
26914
  });
26802
- };
26803
- var getNdcDetailsForPeriod = function () {
26804
- var range = selectedTab.split("-");
26805
- if (range.length > 1) {
26806
- var filteredData = ndcDetailsData.filter(function (item) {
26807
- return inRange(Number(moment(item.startDate).year()), Number(range[0]), Number(range[1]));
26808
- });
26809
- return filteredData;
26810
- }
26811
- else {
26812
- return [];
26813
- }
26814
- };
26815
- var getSubNdcDetails = function (key) {
26816
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
26817
- var ndcDetail = ndcDetailsData.find(function (item) { return item.key === key; });
26818
- if (ndcDetail) {
26819
- 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()) !== "" &&
26820
- ((_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) &&
26821
- ((_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()) !== "" &&
26822
- ((_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) &&
26823
- 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() !== "" &&
26824
- 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)) {
26825
- onAddNewSubNdcDetail();
26826
- }
26827
- return ndcDetail.subNdcDetails;
26915
+ }); };
26916
+ var actionMenu = function (record) {
26917
+ if (record.status === NdcDetailsActionStatus.Pending &&
26918
+ isGovernmentUser &&
26919
+ !selectedPeriod.finalized) {
26920
+ return (React.createElement(List, { className: "action-menu", size: "small", dataSource: [
26921
+ {
26922
+ text: t("ndc:approve"),
26923
+ icon: React.createElement(Icon.BoxArrowInDown, null),
26924
+ style: "color-primary",
26925
+ click: function () {
26926
+ setActionInfo({
26927
+ action: "Approve",
26928
+ headerText: t("ndc:actionApproveTitle"),
26929
+ type: "primary",
26930
+ icon: React.createElement(Icon.BoxArrowInDown, null),
26931
+ recordId: record.id,
26932
+ });
26933
+ setOpenConfirmationModal(true);
26934
+ },
26935
+ },
26936
+ {
26937
+ text: t("ndc:reject"),
26938
+ icon: React.createElement(Icon.XOctagon, null),
26939
+ style: "color-error",
26940
+ click: function () {
26941
+ setActionInfo({
26942
+ action: "Reject",
26943
+ headerText: t("ndc:rejectApproveTitle"),
26944
+ type: "danger",
26945
+ icon: React.createElement(Icon.XOctagon, null),
26946
+ recordId: record.id,
26947
+ });
26948
+ setOpenConfirmationModal(true);
26949
+ },
26950
+ },
26951
+ ], renderItem: function (item) { return (React.createElement(List.Item, { onClick: item.click },
26952
+ React.createElement(Typography.Text, { className: "action-icon ".concat(item.style) }, item.icon),
26953
+ React.createElement("span", null, item.text))); } }));
26828
26954
  }
26829
26955
  else {
26830
- return [];
26956
+ return null;
26831
26957
  }
26832
26958
  };
26833
26959
  var defaultColumns = [
26834
26960
  {
26835
26961
  title: t("ndc:ndcColumnsNationalPlanObj"),
26836
- dataIndex: "nationalPlanObj",
26837
- key: "nationalPlanObj",
26962
+ dataIndex: "nationalPlanObjective",
26963
+ key: "nationalPlanObjective",
26838
26964
  align: "left",
26965
+ width: 400,
26839
26966
  editable: true,
26840
- width: "50%",
26841
- render: function (_, record) { return (React.createElement(React.Fragment, null, record.nationalPlanObj ? (React.createElement(Space, { size: "middle" },
26842
- React.createElement("span", null, record.nationalPlanObj))) : (React.createElement("input", { placeholder: "Please add Programmes", className: "ant-input", type: "text" })))); },
26967
+ render: function (_, record) { return (React.createElement(Space, { size: "middle" }, record.nationalPlanObjective ? (React.createElement(Tooltip, { title: isNdcActionEditable(record) ? "" : t("ndc:ndcUnauthorisedMsg") },
26968
+ React.createElement("span", null, record.nationalPlanObjective))) : (React.createElement(Input, { placeholder: t("ndc:nationalPlanObjectivePlaceHolder") })))); },
26843
26969
  },
26844
26970
  {
26845
26971
  title: t("ndc:ndcColumnsKpi"),
26846
26972
  dataIndex: "kpi",
26847
26973
  key: "kpi",
26848
26974
  align: "left",
26975
+ width: 100,
26849
26976
  editable: true,
26850
- width: "10%",
26851
- render: function (_, record) { return (React.createElement(React.Fragment, null, record.nationalPlanObj ? (React.createElement(Space, { size: "middle" },
26852
- React.createElement("span", null, record.kpi))) : (React.createElement("input", { placeholder: "Enter Kpi", className: "ant-input", type: "text" })))); },
26977
+ render: function (_, record) { return (React.createElement(Space, { size: "middle" }, record.kpi ? (React.createElement(Tooltip, { title: isNdcActionEditable(record) ? "" : t("ndc:ndcUnauthorisedMsg") },
26978
+ React.createElement("span", null, record.kpi))) : (React.createElement(Input, { placeholder: "Enter Kpi" })))); },
26853
26979
  },
26854
26980
  {
26855
- title: "Government Department",
26856
- dataIndex: "ministry",
26857
- key: "ministry",
26981
+ title: t("ndc:ndcColumnsMinistry"),
26982
+ dataIndex: "ministryName",
26983
+ key: "ministryName",
26858
26984
  align: "left",
26859
- editable: true,
26860
- width: "40%",
26861
- render: function (_, record) { return (React.createElement(React.Fragment, null, record.nationalPlanObj ? (React.createElement(Space, { size: "middle" },
26862
- React.createElement("span", null, record.ministry))) : (React.createElement("input", { placeholder: "Please add the Government Department", className: "ant-input", type: "text" })))); },
26985
+ width: 300,
26986
+ editable: false,
26987
+ render: function (_, record) { return (React.createElement(Tooltip, { title: isSubNdcActionsEditable(record) ? "" : t("ndc:ndcUnauthorisedMsg") },
26988
+ React.createElement(Select, { disabled: !(isSubNdcActionsEditable(record) && isEditing(record)), defaultValue: record.ministryName ? record.ministryName : loginMinistry, style: { width: 220 }, onChange: function (value, option) {
26989
+ record.ministryName = option.label;
26990
+ handleSave(record);
26991
+ }, options: ministryOrgList }))); },
26992
+ },
26993
+ {
26994
+ title: t("ndc:ndcColumnsStatus"),
26995
+ dataIndex: "status",
26996
+ key: "status",
26997
+ align: "left",
26998
+ width: 200,
26999
+ editable: false,
27000
+ render: function (_, record) {
27001
+ var menu = actionMenu(record);
27002
+ return (React.createElement("div", { onClick: function (event) { return event.stopPropagation(); } },
27003
+ record.actionType === NdcDetailsActionType.SubAction &&
27004
+ record.status !== NdcDetailsActionStatus.New ? (React.createElement(Tooltip, { title: record.status, color: TooltipColor, key: TooltipColor },
27005
+ React.createElement(Tag, { className: "clickable", color: getNdcActionStatusTagType(record.status) }, addSpaces(record.status)))) : (""),
27006
+ record.actionType === NdcDetailsActionType.SubAction && menu ? (React.createElement(Popover, { placement: "bottomRight", content: menu, trigger: "click" },
27007
+ React.createElement(EllipsisOutlined, { rotate: 90, style: {
27008
+ fontWeight: 600,
27009
+ fontSize: "1rem",
27010
+ cursor: "pointer",
27011
+ } }))) : (React.createElement("span", null))));
27012
+ },
26863
27013
  },
26864
27014
  ];
26865
27015
  var columns = defaultColumns.map(function (col) {
26866
27016
  if (!col.editable) {
26867
27017
  return col;
26868
27018
  }
26869
- return __assign(__assign({}, col), { onCell: function (record) { return ({
26870
- record: record,
26871
- editable: col.editable,
26872
- dataIndex: col.dataIndex,
26873
- title: col.title,
26874
- handleSave: handleSave,
26875
- }); } });
27019
+ return __assign(__assign({}, col), { onCell: function (record) {
27020
+ return {
27021
+ record: record,
27022
+ editing: isEditing(record),
27023
+ dataIndex: col.dataIndex,
27024
+ title: col.title,
27025
+ onBlurHandler: function (record) {
27026
+ if (isEditing(record)) {
27027
+ handleSave(record);
27028
+ }
27029
+ },
27030
+ t: t,
27031
+ };
27032
+ } });
26876
27033
  });
26877
- function onAddNewNdcDetail() {
26878
- var range = selectedTab.split("-");
26879
- var ndcActionId = ++addedNdcDetailId.current;
26880
- var newData = {
26881
- key: ndcActionId,
26882
- type: NdcActionType.main,
26883
- startDate: new Date("".concat(Number(range[0]), "-01-24 23:12:00")),
26884
- endDate: new Date("".concat(Number(range[0]), "-12-24 23:12:00")),
26885
- nationalPlanObj: "",
26886
- kpi: "",
26887
- ministry: "",
26888
- subNdcDetails: [
26889
- {
26890
- key: ++addedNdcDetailId.current,
26891
- ndcActionId: ndcActionId,
26892
- type: NdcActionType.sub,
26893
- startDate: new Date("2019-03-25"),
26894
- endDate: new Date("2020-03-25"),
26895
- nationalPlanObj: "",
26896
- kpi: "",
26897
- ministry: "",
26898
- },
26899
- ],
26900
- };
26901
- setNdcDetailsData(__spreadArray(__spreadArray([], ndcDetailsData, true), [newData], false));
27034
+ function onClickedAddNewNdcDetail() {
27035
+ return __awaiter(this, void 0, void 0, function () {
27036
+ var periodId, newData_1, lastPage;
27037
+ return __generator(this, function (_a) {
27038
+ if (selectedPeriod.key !== "add_new") {
27039
+ form.setFieldsValue({
27040
+ nationalPlanObjective: "",
27041
+ kpi: "",
27042
+ });
27043
+ periodId = parseInt(selectedPeriod.key);
27044
+ newData_1 = {
27045
+ id: nextAvailableActionId,
27046
+ actionType: NdcDetailsActionType.MainAction,
27047
+ nationalPlanObjective: "",
27048
+ kpi: "",
27049
+ ministryName: loginMinistry,
27050
+ periodId: periodId,
27051
+ status: NdcDetailsActionStatus.New,
27052
+ };
27053
+ setEditingKey(nextAvailableActionId);
27054
+ setNextAvailableActionId(function (value) { return value + 1; });
27055
+ setNdcActionsList(function (ndcActionsList) { return __spreadArray(__spreadArray([], ndcActionsList, true), [
27056
+ newData_1,
27057
+ ], false); });
27058
+ setTableKey(function (key) { return key + 1; });
27059
+ if (ndcMainDetailsForPeriod.length + 1 > pageSize) {
27060
+ lastPage = Math.ceil(ndcMainDetailsForPeriod.length / pageSize);
27061
+ setCurrentPage(lastPage);
27062
+ }
27063
+ }
27064
+ return [2 /*return*/];
27065
+ });
27066
+ });
26902
27067
  }
26903
27068
  var components = {
26904
27069
  body: {
26905
- row: EditableRow,
26906
27070
  cell: EditableCell,
26907
27071
  },
26908
27072
  };
26909
- //commented because rendering issue
26910
- function ndcDetailsTableContent() {
26911
- return (React.createElement("div", null)
26912
- // <div>
26913
- // <Button
26914
- // onClick={onAddNewNdcDetail}
26915
- // type="primary"
26916
- // style={{
26917
- // marginBottom: 16,
26918
- // }}
26919
- // >
26920
- // Add a row
26921
- // </Button>
26922
- // <Table
26923
- // components={components}
26924
- // rowClassName={() => 'editable-row'}
26925
- // bordered
26926
- // dataSource={ndcDetailsData}
26927
- // columns={columns}
26928
- // />
26929
- // </div>
26930
- );
26931
- }
26932
- var onCancelPeriod = function () { };
26933
- var onAddNewPeriod = function () {
26934
- if (selectedPeriod &&
26935
- selectedPeriod.current &&
26936
- selectedPeriod.current.start &&
26937
- selectedPeriod.current.end) {
26938
- var newPeriodItem_1 = {
26939
- key: "".concat(selectedPeriod.current.start, "-").concat(selectedPeriod.current.end),
26940
- label: "".concat(selectedPeriod.current.start, "-").concat(selectedPeriod.current.end),
26941
- start: selectedPeriod.current.start,
26942
- end: selectedPeriod.current.end,
26943
- children: ndcDetailsTableContent(),
26944
- };
26945
- var existingIndex = periodItemsRef.current.findIndex(function (item) {
26946
- return inRange(newPeriodItem_1.start, item.start, item.end) ||
26947
- inRange(newPeriodItem_1.end, item.start, item.end);
27073
+ var onClickedDeletePeriod = function () { return __awaiter(void 0, void 0, void 0, function () {
27074
+ return __generator(this, function (_a) {
27075
+ setActionInfo({
27076
+ action: "Delete",
27077
+ headerText: t("ndc:periodDeleteConfirmTitle"),
27078
+ type: "danger",
27079
+ icon: React.createElement(Icon.XCircle, null),
27080
+ recordId: selectedPeriod.key,
26948
27081
  });
26949
- if (existingIndex === -1) {
26950
- setPeriodItems(function (items) { return __spreadArray(__spreadArray([], items, true), [newPeriodItem_1], false); });
26951
- periodItemsRef.current = __spreadArray(__spreadArray([], periodItemsRef.current, true), [newPeriodItem_1], false);
27082
+ setOpenConfirmationModal(true);
27083
+ return [2 /*return*/];
27084
+ });
27085
+ }); };
27086
+ var onClickedFinalizePeriod = function () { return __awaiter(void 0, void 0, void 0, function () {
27087
+ var isPendingActionAvailable;
27088
+ return __generator(this, function (_a) {
27089
+ if (ndcMainDetailsForPeriod.length === 0) {
27090
+ message.open({
27091
+ type: "error",
27092
+ content: t("ndc:finalizeNdcEmptyErrorText"),
27093
+ duration: 3,
27094
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27095
+ });
27096
+ return [2 /*return*/];
26952
27097
  }
26953
- else {
27098
+ isPendingActionAvailable = false;
27099
+ ndcMainDetailsForPeriod.forEach(function (mainAction) {
27100
+ var pendingActions = ndcActionsList.filter(function (action) {
27101
+ return (action.status === NdcDetailsActionStatus.Pending &&
27102
+ action.actionType === NdcDetailsActionType.SubAction &&
27103
+ action.parentActionId === mainAction.id);
27104
+ });
27105
+ if (pendingActions && pendingActions.length > 0) {
27106
+ isPendingActionAvailable = true;
27107
+ return;
27108
+ }
27109
+ });
27110
+ if (isPendingActionAvailable) {
26954
27111
  message.open({
26955
27112
  type: "error",
26956
- content: t("ndc:rangeAlreadyExists"),
27113
+ content: t("ndc:finalizeErrorText"),
26957
27114
  duration: 3,
26958
27115
  style: { textAlign: "right", marginRight: 15, marginTop: 10 },
26959
27116
  });
26960
27117
  }
27118
+ else {
27119
+ setActionInfo({
27120
+ action: "Finalize",
27121
+ headerText: t("ndc:finalizeApproveTitle"),
27122
+ text: t("ndc:finalizeApproveSubTitle"),
27123
+ type: "primary",
27124
+ icon: React.createElement(Icon.Clipboard2Check, null),
27125
+ recordId: selectedPeriod.key,
27126
+ });
27127
+ setOpenConfirmationModal(true);
27128
+ }
27129
+ return [2 /*return*/];
27130
+ });
27131
+ }); };
27132
+ var onMainTableRowExpand = function (expanded, record) {
27133
+ var keys = [];
27134
+ if (expanded) {
27135
+ keys.push(record.id);
26961
27136
  }
26962
- };
26963
- useEffect(function () {
26964
- if (periodItems && periodItems.length > 3) {
26965
- setSelectedTab(periodItems[periodItems.length - 1].key);
26966
- }
26967
- }, [periodItems]);
26968
- var onDateRangeChanged = function (range) {
26969
- var period = {
26970
- start: Number(moment(range[0]).year()),
26971
- end: Number(moment(range[1]).year()),
26972
- };
26973
- selectedPeriod.current = period;
27137
+ setExpandedRowKeys(keys);
27138
+ setNdcSubActionsForMainAction(record.id);
26974
27139
  };
26975
27140
  function addNewPeriodContent() {
26976
27141
  return (React.createElement("div", null,
26977
- React.createElement(Row, null,
26978
- React.createElement(RangePicker, { onChange: onDateRangeChanged, picker: "year" })),
26979
- React.createElement(Row, { className: "mg-top-1" },
26980
- React.createElement("div", { className: "ndc-steps-actions" },
26981
- React.createElement(Button, { type: "primary", onClick: onAddNewPeriod, htmlType: "submit", loading: loading }, t("ndc:submit")),
26982
- React.createElement(Button, { className: "back-btn", onClick: onCancelPeriod, loading: loading }, t("ndc:back"))))));
27142
+ React.createElement(Row, { justify: "start", align: "middle", gutter: [16, 16] },
27143
+ React.createElement(Col, { flex: "340px" },
27144
+ React.createElement(RangePicker, { disabledDate: function (current) { return moment(current).year() < 1900; }, onChange: onDateRangeChanged, picker: "year" })),
27145
+ React.createElement(Col, { flex: "auto" },
27146
+ React.createElement(Button, { type: "primary", onClick: onAddNewPeriod, htmlType: "submit", loading: loading }, t("ndc:submit"))))));
26983
27147
  }
26984
- function getSubNdcActionContent(record) {
26985
- selectedNdcDetail.current = record;
26986
- return (React.createElement(Table, { components: components, rowClassName: function () { return "editable-row"; }, bordered: true, dataSource: getSubNdcDetails(record.key), columns: columns, showHeader: false, pagination: false }));
26987
- }
26988
- var onTabChange = function (key) {
26989
- setSelectedTab(key);
27148
+ var onChange = function (page, size) {
27149
+ setCurrentPage(page);
27150
+ setPageSize(size);
26990
27151
  };
26991
- useEffect(function () {
26992
- var defaultNdcDetails = [
26993
- {
26994
- key: 1,
26995
- type: NdcActionType.main,
26996
- startDate: new Date("2019-03-25"),
26997
- endDate: new Date("2020-03-25"),
26998
- nationalPlanObj: "Enhance value addition in key growth opportunities",
26999
- kpi: 25,
27000
- ministry: "Ministry of Environment",
27001
- subNdcDetails: [
27002
- {
27003
- key: 6,
27004
- ndcActionId: 1,
27005
- type: NdcActionType.sub,
27006
- startDate: new Date("2019-03-25"),
27007
- endDate: new Date("2020-03-25"),
27008
- nationalPlanObj: "Enhance value addition in key growth opportunities sub details",
27009
- kpi: 25,
27010
- ministry: "Ministry of Agriculture, Water and Forestry (MAWF)",
27011
- },
27012
- {
27013
- key: 7,
27014
- ndcActionId: 1,
27015
- type: NdcActionType.sub,
27016
- startDate: new Date("2019-03-25"),
27017
- endDate: new Date("2020-03-25"),
27018
- nationalPlanObj: "",
27019
- kpi: "",
27020
- ministry: "",
27021
- },
27022
- ],
27023
- },
27024
- {
27025
- key: 2,
27026
- type: NdcActionType.main,
27027
- startDate: new Date("2019-03-25"),
27028
- endDate: new Date("2019-08-25"),
27029
- nationalPlanObj: "Strengthen the private sector to create 10,000 jobs",
27030
- kpi: 10500,
27031
- ministry: "Ministry of Environment",
27032
- subNdcDetails: [
27033
- {
27034
- key: 8,
27035
- ndcActionId: 2,
27036
- type: NdcActionType.sub,
27037
- startDate: new Date("2019-03-25"),
27038
- endDate: new Date("2020-03-25"),
27039
- nationalPlanObj: "",
27040
- kpi: "",
27041
- ministry: "",
27042
- },
27043
- ],
27044
- },
27045
- {
27046
- key: 12,
27047
- type: NdcActionType.main,
27048
- startDate: new Date("2019-03-25"),
27049
- endDate: new Date("2019-08-25"),
27050
- nationalPlanObj: "Other",
27051
- kpi: 10500,
27052
- ministry: "Ministry of Environment",
27053
- subNdcDetails: [
27054
- {
27055
- key: 8,
27056
- ndcActionId: 12,
27057
- type: NdcActionType.sub,
27058
- startDate: new Date("2019-03-25"),
27059
- endDate: new Date("2020-03-25"),
27060
- nationalPlanObj: "",
27061
- kpi: "",
27062
- ministry: "",
27063
- },
27064
- ],
27065
- },
27066
- {
27067
- key: 3,
27068
- type: NdcActionType.main,
27069
- startDate: new Date("2021-03-25"),
27070
- endDate: new Date("2022-03-25"),
27071
- nationalPlanObj: "Consolidate and increase the stock and quality of productive infrastructure by 50%",
27072
- kpi: 48,
27073
- ministry: "Ministry of Environment",
27074
- subNdcDetails: [
27075
- {
27076
- key: 9,
27077
- ndcActionId: 3,
27078
- type: NdcActionType.sub,
27079
- startDate: new Date("2019-03-25"),
27080
- endDate: new Date("2020-03-25"),
27081
- nationalPlanObj: "",
27082
- kpi: "",
27083
- ministry: "",
27084
- },
27085
- ],
27086
- },
27087
- {
27088
- key: 4,
27089
- type: NdcActionType.main,
27090
- startDate: new Date("2022-03-25"),
27091
- endDate: new Date("2022-05-25"),
27092
- nationalPlanObj: "Enhance the productivity and social wellbeing of the population",
27093
- kpi: 20,
27094
- ministry: "Ministry of Environment",
27095
- subNdcDetails: [
27096
- {
27097
- key: 10,
27098
- ndcActionId: 4,
27099
- type: NdcActionType.sub,
27100
- startDate: new Date("2019-03-25"),
27101
- endDate: new Date("2020-03-25"),
27102
- nationalPlanObj: "",
27103
- kpi: "",
27104
- ministry: "",
27105
- },
27106
- ],
27107
- },
27108
- {
27109
- key: 5,
27110
- type: NdcActionType.main,
27111
- startDate: new Date("2022-03-25"),
27112
- endDate: new Date("2023-03-25"),
27113
- nationalPlanObj: "Strengthen the role of the state in guiding and facilitating development",
27114
- kpi: 10,
27115
- ministry: "Ministry of Environment",
27116
- subNdcDetails: [
27117
- {
27118
- key: 11,
27119
- ndcActionId: 5,
27120
- type: NdcActionType.sub,
27121
- startDate: new Date("2019-03-25"),
27122
- endDate: new Date("2020-03-25"),
27123
- nationalPlanObj: "",
27124
- kpi: "",
27125
- ministry: "",
27126
- },
27127
- ],
27128
- },
27129
- {
27130
- key: 13,
27131
- type: NdcActionType.main,
27132
- startDate: new Date("2022-03-25"),
27133
- endDate: new Date("2023-03-25"),
27134
- nationalPlanObj: "Convert to solar energy",
27135
- kpi: 50000,
27136
- ministry: "Ministry of Environment",
27137
- subNdcDetails: [
27138
- {
27139
- key: 11,
27140
- ndcActionId: 13,
27141
- type: NdcActionType.sub,
27142
- startDate: new Date("2019-03-25"),
27143
- endDate: new Date("2020-03-25"),
27144
- nationalPlanObj: "Convert to solar energy",
27145
- kpi: "3000",
27146
- ministry: "Ministry of Agriculture, Water and Forestry (MAWF)",
27147
- },
27148
- {
27149
- key: 14,
27150
- ndcActionId: 13,
27151
- type: NdcActionType.sub,
27152
- startDate: new Date("2019-03-25"),
27153
- endDate: new Date("2020-03-25"),
27154
- nationalPlanObj: "",
27155
- kpi: "",
27156
- ministry: "",
27157
- },
27158
- ],
27159
- },
27160
- {
27161
- key: 15,
27162
- type: NdcActionType.main,
27163
- startDate: new Date("2022-03-25"),
27164
- endDate: new Date("2023-03-25"),
27165
- nationalPlanObj: "Strengthen the private sector to create jobs",
27166
- kpi: 10000,
27167
- ministry: "Ministry of Environment",
27168
- subNdcDetails: [
27169
- {
27170
- key: 16,
27171
- ndcActionId: 15,
27172
- type: NdcActionType.sub,
27173
- startDate: new Date("2019-03-25"),
27174
- endDate: new Date("2020-03-25"),
27175
- nationalPlanObj: "Strengthen the private sector to create jobs",
27176
- kpi: "7200",
27177
- ministry: "Ministry of Tourism (MoT)",
27178
- },
27179
- {
27180
- key: 17,
27181
- ndcActionId: 15,
27182
- type: NdcActionType.sub,
27183
- startDate: new Date("2019-03-25"),
27184
- endDate: new Date("2020-03-25"),
27185
- nationalPlanObj: "",
27186
- kpi: "",
27187
- ministry: "",
27188
- },
27189
- ],
27190
- },
27191
- {
27192
- key: 18,
27193
- type: NdcActionType.main,
27194
- startDate: new Date("2022-03-25"),
27195
- endDate: new Date("2023-03-25"),
27196
- nationalPlanObj: "Other",
27197
- kpi: "",
27198
- ministry: "Ministry of Environment",
27199
- subNdcDetails: [
27200
- {
27201
- key: 19,
27202
- ndcActionId: 18,
27203
- type: NdcActionType.sub,
27204
- startDate: new Date("2019-03-25"),
27205
- endDate: new Date("2020-03-25"),
27206
- nationalPlanObj: "Strengthen the private sector to create jobs",
27207
- kpi: "",
27208
- ministry: "Ministry of Agriculture, Water and Forestry (MAWF)",
27152
+ function mainNdcActionTableContent() {
27153
+ return (React.createElement("div", null,
27154
+ React.createElement(Row, null,
27155
+ React.createElement(Col, { span: 24 },
27156
+ React.createElement(Form, { form: form, component: false },
27157
+ React.createElement(Table, { tableLayout: "fixed", key: tableKey, className: "common-table-class", rowKey: "id", pagination: {
27158
+ current: currentPage,
27159
+ pageSize: pageSize,
27160
+ total: ndcMainDetailsForPeriod.length,
27161
+ showQuickJumper: true,
27162
+ showSizeChanger: true,
27163
+ onChange: onChange,
27164
+ }, components: components, rowClassName: function () { return "editable-row"; }, bordered: true, loading: loading, dataSource: ndcMainDetailsForPeriod, columns: columns, expandedRowKeys: expandedRowKeys, onExpand: onMainTableRowExpand, expandable: {
27165
+ expandedRowRender: function (record) {
27166
+ return subNdcActionTableContent();
27167
+ },
27168
+ columnWidth: 40,
27169
+ }, onRow: function (record, rowIndex) {
27170
+ return {
27171
+ onClick: function (event) {
27172
+ if (record.id &&
27173
+ isNdcActionEditable(record) &&
27174
+ !isEditing(record)) {
27175
+ form.setFieldsValue(__assign({}, record));
27176
+ setEditingKey(record.id);
27177
+ }
27178
+ },
27179
+ onMouseLeave: function () {
27180
+ if (isEditing(record)) {
27181
+ handleSave(record);
27182
+ }
27183
+ },
27184
+ };
27185
+ }, footer: function () {
27186
+ return isGovernmentUser &&
27187
+ !selectedPeriod.finalized && (React.createElement(Row, { justify: "center" },
27188
+ React.createElement(Button, { className: "btnAddNewMainAct", disabled: isMainActionInEditMode(), onClick: onClickedAddNewNdcDetail, type: "default" }, t("ndc:addNdcAction"))));
27189
+ } })))),
27190
+ isGovernmentUser && !selectedPeriod.finalized ? (React.createElement(Row, { justify: "end" }, isMainActionInEditMode() ? (React.createElement(React.Fragment, null,
27191
+ React.createElement(Button, { className: "mg-left-1", disabled: true }, t("ndc:delete")),
27192
+ React.createElement(Button, { className: "mg-left-1", disabled: true }, t("ndc:finalize")))) : (React.createElement(React.Fragment, null,
27193
+ React.createElement(Button, { className: "mg-left-1 btn-danger", onClick: onClickedDeletePeriod, htmlType: "submit", loading: loading }, t("ndc:delete")),
27194
+ React.createElement(Button, { className: "mg-left-1", type: "primary", onClick: onClickedFinalizePeriod, htmlType: "submit", loading: loading }, t("ndc:finalize")))))) : ("")));
27195
+ }
27196
+ function subNdcActionTableContent(record) {
27197
+ return (React.createElement(Table, { tableLayout: "fixed", rowKey: "id", components: components, rowClassName: function () { return "editable-row"; }, className: "common-table-class", bordered: true, dataSource: subNdcActionsForPeriod, loading: loading, onRow: function (record, rowIndex) {
27198
+ return {
27199
+ onClick: function (event) {
27200
+ if (record.id &&
27201
+ isNdcActionEditable(record) &&
27202
+ !isEditing(record)) {
27203
+ form.setFieldsValue(__assign({}, record));
27204
+ setEditingKey(record.id);
27205
+ }
27209
27206
  },
27210
- {
27211
- key: 20,
27212
- ndcActionId: 18,
27213
- type: NdcActionType.sub,
27214
- startDate: new Date("2019-03-25"),
27215
- endDate: new Date("2020-03-25"),
27216
- nationalPlanObj: "",
27217
- kpi: "",
27218
- ministry: "",
27207
+ onMouseLeave: function () {
27208
+ if (isEditing(record)) {
27209
+ handleSave(record);
27210
+ }
27219
27211
  },
27220
- ],
27221
- },
27222
- ];
27223
- var initialPeriods = [
27224
- {
27225
- key: "2019-2020",
27226
- label: "2019-2020",
27227
- start: 2019,
27228
- end: 2020,
27229
- children: ndcDetailsTableContent(),
27230
- },
27231
- {
27232
- key: "2021-2023",
27233
- label: "2021-2023",
27234
- start: 2021,
27235
- end: 2021,
27236
- children: ndcDetailsTableContent(),
27237
- },
27238
- ];
27239
- if (isAddRangeVisible()) {
27240
- initialPeriods.unshift({
27241
- key: "add_new",
27242
- label: "Add New",
27243
- start: 0,
27244
- end: 0,
27245
- children: addNewPeriodContent(),
27246
- });
27212
+ };
27213
+ }, columns: columns, showHeader: false, pagination: false }));
27214
+ }
27215
+ var onAddNewPeriod = function () { return __awaiter(void 0, void 0, void 0, function () {
27216
+ var periodItem_1, existingIndex, response, addedPeriodItem, updatedPeriodItem_1, exception_3;
27217
+ return __generator(this, function (_a) {
27218
+ switch (_a.label) {
27219
+ case 0:
27220
+ _a.trys.push([0, 4, , 5]);
27221
+ if (!(selectedDateRangeRef &&
27222
+ selectedDateRangeRef.current &&
27223
+ selectedDateRangeRef.current.startYear &&
27224
+ selectedDateRangeRef.current.endYear)) return [3 /*break*/, 3];
27225
+ periodItem_1 = {
27226
+ startYear: selectedDateRangeRef.current.startYear,
27227
+ endYear: selectedDateRangeRef.current.endYear,
27228
+ finalized: false,
27229
+ };
27230
+ existingIndex = periodItems.findIndex(function (item) {
27231
+ return inRange(periodItem_1.startYear, item.startYear, item.endYear) ||
27232
+ inRange(periodItem_1.endYear, item.startYear, item.endYear);
27233
+ });
27234
+ if (!(existingIndex === -1)) return [3 /*break*/, 2];
27235
+ return [4 /*yield*/, post("national/programme/addNdcDetailsPeriod", __assign({}, periodItem_1))];
27236
+ case 1:
27237
+ response = _a.sent();
27238
+ if (response && response.data) {
27239
+ addedPeriodItem = response.data;
27240
+ updatedPeriodItem_1 = __assign(__assign({}, addedPeriodItem), { key: addedPeriodItem.id, label: "".concat(addedPeriodItem.startYear, "-").concat(addedPeriodItem.endYear) });
27241
+ setPeriodItems(function (items) { return __spreadArray(__spreadArray([], items, true), [updatedPeriodItem_1], false); });
27242
+ setSelectedPeriod(updatedPeriodItem_1);
27243
+ }
27244
+ return [3 /*break*/, 3];
27245
+ case 2:
27246
+ message.open({
27247
+ type: "error",
27248
+ content: t("ndc:rangeAlreadyExists"),
27249
+ duration: 3,
27250
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27251
+ });
27252
+ _a.label = 3;
27253
+ case 3: return [3 /*break*/, 5];
27254
+ case 4:
27255
+ exception_3 = _a.sent();
27256
+ message.open({
27257
+ type: "error",
27258
+ content: exception_3.message,
27259
+ duration: 3,
27260
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27261
+ });
27262
+ return [3 /*break*/, 5];
27263
+ case 5: return [2 /*return*/];
27264
+ }
27265
+ });
27266
+ }); };
27267
+ var onDateRangeChanged = function (range) {
27268
+ if (range) {
27269
+ var period = {
27270
+ startYear: Number(moment(range[0]).year()),
27271
+ endYear: Number(moment(range[1]).year()),
27272
+ };
27273
+ if (period.startYear === period.endYear) {
27274
+ message.open({
27275
+ type: "error",
27276
+ content: t("ndc:sameStartEndDates"),
27277
+ duration: 3,
27278
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27279
+ });
27280
+ }
27281
+ else {
27282
+ selectedDateRangeRef.current = period;
27283
+ }
27247
27284
  }
27248
- addedNdcDetailId.current = 20;
27249
- setPeriodItems(initialPeriods);
27250
- periodItemsRef.current = initialPeriods;
27251
- setNdcDetailsData(defaultNdcDetails);
27285
+ };
27286
+ var onTabChange = function (key) {
27287
+ var selectedPeriod = periodItems.find(function (item) { return item.key === key; });
27288
+ if (selectedPeriod) {
27289
+ setSelectedPeriod(selectedPeriod);
27290
+ }
27291
+ };
27292
+ var onActionConfirmed = function () { return __awaiter(void 0, void 0, void 0, function () {
27293
+ var actionResponse, exception_4;
27294
+ return __generator(this, function (_a) {
27295
+ switch (_a.label) {
27296
+ case 0:
27297
+ setLoading(true);
27298
+ _a.label = 1;
27299
+ case 1:
27300
+ _a.trys.push([1, 10, , 11]);
27301
+ if (!(actionInfo.action === "Approve")) return [3 /*break*/, 3];
27302
+ return [4 /*yield*/, post("national/programme/approveNdcDetailsAction", {
27303
+ id: actionInfo.recordId,
27304
+ })];
27305
+ case 2:
27306
+ actionResponse = _a.sent();
27307
+ return [3 /*break*/, 9];
27308
+ case 3:
27309
+ if (!(actionInfo.action === "Reject")) return [3 /*break*/, 5];
27310
+ return [4 /*yield*/, post("national/programme/rejectNdcDetailsAction", {
27311
+ id: actionInfo.recordId,
27312
+ })];
27313
+ case 4:
27314
+ actionResponse = _a.sent();
27315
+ return [3 /*break*/, 9];
27316
+ case 5:
27317
+ if (!(actionInfo.action === "Finalize")) return [3 /*break*/, 7];
27318
+ return [4 /*yield*/, post("national/programme/finalizeNdcDetailsPeriod", {
27319
+ id: selectedPeriod.key,
27320
+ })];
27321
+ case 6:
27322
+ actionResponse = _a.sent();
27323
+ return [3 /*break*/, 9];
27324
+ case 7:
27325
+ if (!(actionInfo.action === "Delete")) return [3 /*break*/, 9];
27326
+ return [4 /*yield*/, post("national/programme/deleteNdcDetailsPeriod", {
27327
+ id: selectedPeriod.key,
27328
+ })];
27329
+ case 8:
27330
+ actionResponse = _a.sent();
27331
+ _a.label = 9;
27332
+ case 9: return [3 /*break*/, 11];
27333
+ case 10:
27334
+ exception_4 = _a.sent();
27335
+ message.open({
27336
+ type: "error",
27337
+ content: exception_4.message,
27338
+ duration: 3,
27339
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27340
+ });
27341
+ return [3 /*break*/, 11];
27342
+ case 11:
27343
+ if (actionResponse) {
27344
+ if (actionInfo.action === "Delete") {
27345
+ message.open({
27346
+ type: "success",
27347
+ content: t("ndc:deletePeriodSuccessMsg"),
27348
+ duration: 3,
27349
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27350
+ });
27351
+ fetchNdcDetailPeriods();
27352
+ }
27353
+ else if (actionInfo.action === "Finalize") {
27354
+ message.open({
27355
+ type: "success",
27356
+ content: t("ndc:finalizeSuccessMsg"),
27357
+ duration: 3,
27358
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27359
+ });
27360
+ fetchNdcDetailPeriods();
27361
+ setExpandedRowKeys([]);
27362
+ ClearEditMode();
27363
+ }
27364
+ else if (actionInfo.action === "Approve") {
27365
+ message.open({
27366
+ type: "success",
27367
+ content: t("ndc:approveSuccessMsg"),
27368
+ duration: 3,
27369
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27370
+ });
27371
+ fetchNdcDetailActions();
27372
+ }
27373
+ else if (actionInfo.action === "Reject") {
27374
+ message.open({
27375
+ type: "success",
27376
+ content: t("ndc:rejectSuccessMsg"),
27377
+ duration: 3,
27378
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27379
+ });
27380
+ fetchNdcDetailActions();
27381
+ }
27382
+ }
27383
+ setOpenConfirmationModal(false);
27384
+ setLoading(false);
27385
+ return [2 /*return*/];
27386
+ }
27387
+ });
27388
+ }); };
27389
+ var onActionCanceled = function () {
27390
+ setOpenConfirmationModal(false);
27391
+ };
27392
+ var fetchNdcDetailPeriods = function () { return __awaiter(void 0, void 0, void 0, function () {
27393
+ var periods, addNewTab, response, exception_5;
27394
+ return __generator(this, function (_a) {
27395
+ switch (_a.label) {
27396
+ case 0:
27397
+ setLoading(true);
27398
+ _a.label = 1;
27399
+ case 1:
27400
+ _a.trys.push([1, 3, 4, 5]);
27401
+ periods = [];
27402
+ addNewTab = {
27403
+ key: "add_new",
27404
+ label: "Add New",
27405
+ startYear: 0,
27406
+ endYear: 0,
27407
+ finalized: false,
27408
+ deleted: false,
27409
+ };
27410
+ return [4 /*yield*/, get("national/programme/queryNdcDetailsPeriod")];
27411
+ case 2:
27412
+ response = _a.sent();
27413
+ if (response && response.data) {
27414
+ periods = response.data.map(function (period) {
27415
+ return __assign(__assign({}, period), { key: period.id, label: period.finalized ? (React.createElement("span", null,
27416
+ React.createElement(LockOutlined, null),
27417
+ " ",
27418
+ period.startYear,
27419
+ "-",
27420
+ period.endYear,
27421
+ " ")) : ("".concat(period.startYear, "-").concat(period.endYear)) });
27422
+ });
27423
+ }
27424
+ if (isGovernmentUser) {
27425
+ periods.unshift(addNewTab);
27426
+ }
27427
+ setPeriodItems(periods);
27428
+ if (isGovernmentUser) {
27429
+ setSelectedPeriod(addNewTab);
27430
+ }
27431
+ else {
27432
+ setSelectedPeriod(periods[0]);
27433
+ }
27434
+ setLoading(false);
27435
+ return [3 /*break*/, 5];
27436
+ case 3:
27437
+ exception_5 = _a.sent();
27438
+ message.open({
27439
+ type: "error",
27440
+ content: exception_5.message,
27441
+ duration: 3,
27442
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27443
+ });
27444
+ return [3 /*break*/, 5];
27445
+ case 4:
27446
+ setLoading(false);
27447
+ return [7 /*endfinally*/];
27448
+ case 5: return [2 /*return*/];
27449
+ }
27450
+ });
27451
+ }); };
27452
+ var fetchNdcDetailActions = function () { return __awaiter(void 0, void 0, void 0, function () {
27453
+ var response, maxActionId, exception_6;
27454
+ return __generator(this, function (_a) {
27455
+ switch (_a.label) {
27456
+ case 0:
27457
+ setLoading(true);
27458
+ _a.label = 1;
27459
+ case 1:
27460
+ _a.trys.push([1, 3, 4, 5]);
27461
+ return [4 /*yield*/, get("national/programme/queryNdcDetailsAction")];
27462
+ case 2:
27463
+ response = _a.sent();
27464
+ if (response && response.data) {
27465
+ maxActionId = Math.max.apply(Math, response.data.map(function (item) { return item.id; }));
27466
+ setNextAvailableActionId(maxActionId + 1);
27467
+ setNdcActionsList(response.data);
27468
+ }
27469
+ setLoading(false);
27470
+ return [3 /*break*/, 5];
27471
+ case 3:
27472
+ exception_6 = _a.sent();
27473
+ message.open({
27474
+ type: "error",
27475
+ content: exception_6.message,
27476
+ duration: 3,
27477
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27478
+ });
27479
+ return [3 /*break*/, 5];
27480
+ case 4:
27481
+ setLoading(false);
27482
+ return [7 /*endfinally*/];
27483
+ case 5: return [2 /*return*/];
27484
+ }
27485
+ });
27486
+ }); };
27487
+ var fetchMinistries = function () { return __awaiter(void 0, void 0, void 0, function () {
27488
+ var response, ministryOrgDetails, exception_7;
27489
+ return __generator(this, function (_a) {
27490
+ switch (_a.label) {
27491
+ case 0:
27492
+ setLoading(true);
27493
+ _a.label = 1;
27494
+ case 1:
27495
+ _a.trys.push([1, 3, 4, 5]);
27496
+ return [4 /*yield*/, get("national/organisation/getMinistries")];
27497
+ case 2:
27498
+ response = _a.sent();
27499
+ if (response && response.data) {
27500
+ ministryOrgDetails = response.data.map(function (value) {
27501
+ return {
27502
+ value: value.company_companyId,
27503
+ label: value.company_name,
27504
+ };
27505
+ });
27506
+ setMinistryOrgList(ministryOrgDetails);
27507
+ }
27508
+ setLoading(false);
27509
+ return [3 /*break*/, 5];
27510
+ case 3:
27511
+ exception_7 = _a.sent();
27512
+ message.open({
27513
+ type: "error",
27514
+ content: exception_7.message,
27515
+ duration: 3,
27516
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27517
+ });
27518
+ return [3 /*break*/, 5];
27519
+ case 4:
27520
+ setLoading(false);
27521
+ return [7 /*endfinally*/];
27522
+ case 5: return [2 /*return*/];
27523
+ }
27524
+ });
27525
+ }); };
27526
+ useEffect(function () {
27527
+ fetchNdcDetailPeriods();
27528
+ fetchNdcDetailActions();
27529
+ fetchMinistries();
27252
27530
  }, []);
27253
- return (React.createElement("div", { className: "ndc-management content-container" },
27531
+ return (React.createElement("div", { className: "ndc-details content-container" },
27254
27532
  React.createElement("div", { className: "title-bar" },
27255
27533
  React.createElement(Row, { justify: "space-between", align: "middle" },
27256
27534
  React.createElement(Col, { span: 20 },
27257
27535
  React.createElement("div", { className: "body-title" }, t("ndc:ndcTitle")),
27258
27536
  React.createElement("div", { className: "body-sub-title" }, t("ndc:ndcSubTitle"))))),
27259
27537
  React.createElement("div", null,
27260
- React.createElement(Tabs, { centered: false, defaultActiveKey: "1", items: periodItems, activeKey: selectedTab, onChange: onTabChange })),
27261
- selectedTab !== "add_new" && (React.createElement("div", null,
27262
- React.createElement("div", null,
27263
- React.createElement(Table, { key: tableKey, components: components, rowClassName: function () { return "editable-row"; }, bordered: true, dataSource: getNdcDetailsForPeriod(), columns: columns, expandable: {
27264
- expandedRowRender: function (record) { return getSubNdcActionContent(record); },
27265
- indentSize: 0,
27266
- defaultExpandedRowKeys: [selectedNdcDetail.current.key],
27267
- }, footer: function () {
27268
- return isAddNdcActionVisible() && (React.createElement(Row, { justify: "center" },
27269
- React.createElement(Button, { onClick: onAddNewNdcDetail, type: "default", style: {
27270
- marginBottom: 16,
27271
- width: "100%",
27272
- } }, t("ndc:addNdcAction"))));
27273
- } }))))));
27538
+ React.createElement(Tabs, { centered: false, defaultActiveKey: "1", items: periodItems, activeKey: selectedPeriod.key, onChange: onTabChange })),
27539
+ React.createElement("div", null, selectedPeriod.key === "add_new"
27540
+ ? addNewPeriodContent()
27541
+ : mainNdcActionTableContent()),
27542
+ React.createElement(UserActionConfirmationModel, { t: t, actionInfo: actionInfo, onActionConfirmed: onActionConfirmed, onActionCanceled: onActionCanceled, openModal: openConfirmationModal, errorMsg: "", loading: loading })));
27274
27543
  };
27275
27544
 
27276
27545
  var ImgWithFallback = function (_a) {
@@ -28980,5 +29249,5 @@ var TimelineBody = function (props) {
28980
29249
  React.createElement("div", { className: "remark-body" }, remark)))));
28981
29250
  };
28982
29251
 
28983
- export { Action, AddNdcActionComponent, AddNewCompanyComponent, AddNewUserComponent, AdminBGColor, AdminColor, BaseEntity, CarbonSystemType, CertBGColor, CertColor, CoBenifitsComponent, Company, CompanyManagementColumns, CompanyManagementComponent, CompanyProfileComponent, CompanyRole, CompanyState, ConfigurationSettingsType, CreditTransferComponent, CreditTransferStage, DevBGColor, DevColor, DocType, DocumentStatus, ESGType, EnergyGenerationUnits, FormElementType, GovBGColor, GovColor, ImgWithFallback, InfoView, Instrument, InvestmentBGColor, InvestmentBody, InvestmentColor, InvestmentCreationComponent, InvestmentCreationType, InvestmentLevel, InvestmentManagementComponent, InvestmentStatus, InvestmentStream, InvestmentType, LandAreaUnits, LegendItem, Loading, ManagerBGColor, ManagerColor, MapComponent, MapTypes, MapboxComponent, MinBGColor, MinColor, MitigationSubTypes, MitigationTypes, MrvDashboardComponent, MrvStatsCardsTypes, NdcActionBody, NdcActionManagementComponent, NdcActionStatus, NdcActionTypes, NdcActionViewComponent, NdcDetailsComponent, OrganisationStatus, ProfileIcon, ProgrammeCertify, ProgrammeCreationComponent, ProgrammeDocuments, ProgrammeEntity, ProgrammeIssueForm, ProgrammeManagementColumns, ProgrammeManagementComponent, ProgrammeRetireForm, ProgrammeRevokeForm, ProgrammeStageLegend, ProgrammeStageMRV, ProgrammeStageR, ProgrammeStageUnified, ProgrammeTransfer, ProgrammeTransferForm, RadioButtonStatus, RadioButtonStatus2, RegistryDashboardComponent, RejectDocumentationConfirmationModel, RetireType, Role, RoleIcon, RootBGColor, RootColor, SdgGoals$1 as SdgGoals, Sector, SectoralScope, StasticCard, StatsCardsTypes, SubTypeOfMitigation, SupportCreationComponent, SupportManagementComponent, SystemNames, TimelineBody, Titles, TooltipColor, TransferActionModel, TxType, TypeOfMitigation, UnitField, User, UserManagementColumns, UserManagementComponent, UserProfileComponent, UserRoleIcon, ViewBGColor, ViewColor, WidgetType, addCommSep, addCommSepRound, addNdcDesc, addRoundNumber, addSpaces, consumerGroupList, creditUnit, dateFormat, dateTimeFormat, energyGenerationUnitList, getBase64, getCompanyBgColor, getCreditStageVal, getFinancialFields, getGeneralFields, getInvestmentStatusEnumVal, getNdcActionStatusEnumVal, getNdcStatusTagType, getRetirementTypeString, getStageEnumVal, getStageTagType, getStageTagTypeMRV, getStageTransferEnumVal, getStatusTagType, getTransferStageTagType, getValidNdcActions, isBase64, landAreaUnitList, methodologyOptions, mitigationSubTypeList, mitigationSubTypesListMapped, mitigationTypeList, ndcActionTypeList, sectorMitigationTypesListMapped, sumArray, titleList };
29252
+ export { Action, AddNdcActionComponent, AddNewCompanyComponent, AddNewUserComponent, AdminBGColor, AdminColor, BaseEntity, CarbonSystemType, CertBGColor, CertColor, CoBenifitsComponent, Company, CompanyManagementColumns, CompanyManagementComponent, CompanyProfileComponent, CompanyRole, CompanyState, ConfigurationSettingsType, CreditTransferComponent, CreditTransferStage, DevBGColor, DevColor, DocType, DocumentStatus, ESGType, EnergyGenerationUnits, FormElementType, GovBGColor, GovColor, ImgWithFallback, InfoView, Instrument, InvestmentBGColor, InvestmentBody, InvestmentColor, InvestmentCreationComponent, InvestmentCreationType, InvestmentLevel, InvestmentManagementComponent, InvestmentStatus, InvestmentStream, InvestmentType, LandAreaUnits, LegendItem, Loading, ManagerBGColor, ManagerColor, MapComponent, MapTypes, MapboxComponent, MinBGColor, MinColor, MitigationSubTypes, MitigationTypes, MrvDashboardComponent, MrvStatsCardsTypes, NdcActionBody, NdcActionManagementComponent, NdcActionStatus, NdcActionTypes, NdcActionViewComponent, NdcDetailsComponent, OrganisationStatus, ProfileIcon, ProgrammeCertify, ProgrammeCreationComponent, ProgrammeDocuments, ProgrammeEntity, ProgrammeIssueForm, ProgrammeManagementColumns, ProgrammeManagementComponent, ProgrammeRetireForm, ProgrammeRevokeForm, ProgrammeStageLegend, ProgrammeStageMRV, ProgrammeStageR, ProgrammeStageUnified, ProgrammeTransfer, ProgrammeTransferForm, RadioButtonStatus, RadioButtonStatus2, RegistryDashboardComponent, RejectDocumentationConfirmationModel, RetireType, Role, RoleIcon, RootBGColor, RootColor, SdgGoals$1 as SdgGoals, Sector, SectoralScope, StasticCard, StatsCardsTypes, SubTypeOfMitigation, SupportCreationComponent, SupportManagementComponent, SystemNames, TimelineBody, Titles, TooltipColor, TransferActionModel, TxType, TypeOfMitigation, UnitField, User, UserManagementColumns, UserManagementComponent, UserProfileComponent, UserRoleIcon, ViewBGColor, ViewColor, WidgetType, addCommSep, addCommSepRound, addNdcDesc, addRoundNumber, addSpaces, consumerGroupList, creditUnit, dateFormat, dateTimeFormat, energyGenerationUnitList, getBase64, getCompanyBgColor, getCreditStageVal, getFinancialFields, getGeneralFields, getInvestmentStatusEnumVal, getNdcActionStatusEnumVal$1 as getNdcActionStatusEnumVal, getNdcStatusTagType, getRetirementTypeString, getStageEnumVal, getStageTagType, getStageTagTypeMRV, getStageTransferEnumVal, getStatusTagType, getTransferStageTagType, getValidNdcActions, isBase64, landAreaUnitList, methodologyOptions, mitigationSubTypeList, mitigationSubTypesListMapped, mitigationTypeList, ndcActionTypeList, sectorMitigationTypesListMapped, sumArray, titleList };
28984
29253
  //# sourceMappingURL=index.js.map