@undp/carbon-library 1.0.274-CARBON-338.2 → 1.0.274-CARBON-363.43

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,869 @@ 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\n.ndc-details .btnAddNewMainAct {\n margin-bottom: 16;\n width: 100%;\n height: 45px;\n border-radius: 10px;\n border: 1px solid rgba(58, 53, 65, 0.5);\n background: #FFF;\n color: #16b1ff;\n text-align: center;\n font-family: Inter;\n font-size: 16px;\n font-style: normal;\n font-weight: 500; }\n\n.ndc-details .btnAddNewMainAct:disabled {\n color: rgba(0, 0, 0, 0.25);\n border-color: #d9d9d9;\n background: #f5f5f5;\n text-shadow: none;\n box-shadow: none; }\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
+ if (editingKey) {
26761
+ var action = ndcActionsList.find(function (item) { return item.id === editingKey; });
26762
+ if (action && action.actionType === NdcDetailsActionType.MainAction) {
26763
+ return true;
26764
+ }
26765
+ }
26766
+ return false;
26767
+ };
26734
26768
  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) &&
26769
+ useEffect(function () {
26770
+ if (expandedRowKeys && expandedRowKeys.length > 0) {
26771
+ var expandedKey = expandedRowKeys[0];
26772
+ setNdcSubActionsForMainAction(expandedKey);
26773
+ }
26774
+ }, ndcActionsList);
26775
+ var loginMinistry = (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.GOVERNMENT
26776
+ ? process.env.REACT_APP_GOVERNMENT_MINISTRY
26777
+ ? process.env.REACT_APP_GOVERNMENT_MINISTRY
26778
+ : "Ministry Of Environment"
26779
+ : (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.MINISTRY
26780
+ ? userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyName
26781
+ : undefined;
26782
+ var isGovernmentUser = (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.GOVERNMENT &&
26783
+ (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.userRole) !== Role.ViewOnly;
26784
+ var isMainNdcActionsEditable = !selectedPeriod.finalized &&
26785
+ (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.GOVERNMENT &&
26786
+ (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.userRole) !== Role.ViewOnly;
26787
+ var isSubNdcActionsEditable = function (record) {
26788
+ return (!selectedPeriod.finalized &&
26789
+ record.status !== NdcDetailsActionStatus.Approved &&
26790
+ ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.GOVERNMENT ||
26791
+ ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.MINISTRY &&
26792
+ (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyName) === record.ministryName)) &&
26738
26793
  (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.userRole) !== Role.ViewOnly);
26739
26794
  };
26740
- var isAddNdcActionVisible = function () {
26741
- return ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.GOVERNMENT &&
26795
+ var checkSubNdcActionCreatePermission = function () {
26796
+ return (!selectedPeriod.finalized &&
26797
+ ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.GOVERNMENT ||
26798
+ (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.MINISTRY) &&
26742
26799
  (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.userRole) !== Role.ViewOnly);
26743
26800
  };
26801
+ var isNdcActionEditable = function (record) {
26802
+ if (record.actionType === NdcDetailsActionType.MainAction) {
26803
+ return isMainNdcActionsEditable;
26804
+ }
26805
+ else if (record.actionType === NdcDetailsActionType.SubAction) {
26806
+ return isSubNdcActionsEditable(record);
26807
+ }
26808
+ };
26809
+ var ndcMainDetailsForPeriod = selectedPeriod.key !== "add_new"
26810
+ ? ndcActionsList.filter(function (ndcDetail) {
26811
+ return (ndcDetail.periodId === parseInt(selectedPeriod.key) &&
26812
+ ndcDetail.actionType === NdcDetailsActionType.MainAction);
26813
+ })
26814
+ : [];
26815
+ var setNdcSubActionsForMainAction = function (mainActionId) {
26816
+ var subNdcDetails = ndcActionsList.filter(function (ndcDetail) {
26817
+ return (ndcDetail.parentActionId === mainActionId &&
26818
+ ndcDetail.actionType === NdcDetailsActionType.SubAction);
26819
+ });
26820
+ var emptySubNdcRow = {
26821
+ id: nextAvailableActionId,
26822
+ actionType: NdcDetailsActionType.SubAction,
26823
+ nationalPlanObjective: "",
26824
+ kpi: "",
26825
+ ministryName: loginMinistry,
26826
+ status: NdcDetailsActionStatus.New,
26827
+ parentActionId: mainActionId,
26828
+ };
26829
+ if (checkSubNdcActionCreatePermission()) {
26830
+ subNdcDetails = __spreadArray(__spreadArray([], subNdcDetails, true), [emptySubNdcRow], false);
26831
+ setEditingKey(nextAvailableActionId);
26832
+ setNextAvailableActionId(function (value) { return value + 1; });
26833
+ form.setFieldsValue({
26834
+ nationalPlanObjective: "",
26835
+ kpi: "",
26836
+ });
26837
+ }
26838
+ setSubNdcActionsForPeriod(subNdcDetails);
26839
+ };
26744
26840
  var inRange = function (num, min, max) {
26745
26841
  return num >= min && num <= max;
26746
26842
  };
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
- }
26843
+ var handleSave = function (row) { return __awaiter(void 0, void 0, void 0, function () {
26844
+ var updatedFields, updatedItem, exception_2;
26845
+ return __generator(this, function (_a) {
26846
+ switch (_a.label) {
26847
+ case 0:
26848
+ _a.trys.push([0, 9, , 10]);
26849
+ updatedFields = void 0;
26850
+ _a.label = 1;
26851
+ case 1:
26852
+ _a.trys.push([1, 3, , 4]);
26853
+ return [4 /*yield*/, form.validateFields()];
26854
+ case 2:
26855
+ updatedFields = (_a.sent());
26856
+ return [3 /*break*/, 4];
26857
+ case 3:
26858
+ _a.sent();
26859
+ return [2 /*return*/];
26860
+ case 4:
26861
+ updatedItem = __assign(__assign({}, row), updatedFields);
26862
+ if (!(updatedItem.status === NdcDetailsActionStatus.New)) return [3 /*break*/, 6];
26863
+ if (isGovernmentUser &&
26864
+ updatedItem.actionType === NdcDetailsActionType.SubAction) {
26865
+ updatedItem.status = NdcDetailsActionStatus.Approved;
26792
26866
  }
26793
26867
  else {
26794
- parentItem.subNdcDetails = [row];
26868
+ updatedItem.status = NdcDetailsActionStatus.Pending;
26795
26869
  }
26796
- }
26797
- newData[parentIndex] = __assign({}, parentItem);
26798
- setTableKey(function (key) { return key + 1; });
26870
+ return [4 /*yield*/, post("national/programme/addNdcDetailsAction", __assign(__assign({}, updatedItem), { kpi: parseInt(updatedItem.kpi.toString()) }))];
26871
+ case 5:
26872
+ _a.sent();
26873
+ return [3 /*break*/, 8];
26874
+ case 6:
26875
+ updatedItem.status = NdcDetailsActionStatus.Pending;
26876
+ return [4 /*yield*/, put("national/programme/updateNdcDetailsAction", __assign(__assign({}, updatedItem), { kpi: parseInt(updatedItem.kpi.toString()) }))];
26877
+ case 7:
26878
+ _a.sent();
26879
+ _a.label = 8;
26880
+ case 8:
26881
+ fetchNdcDetailActions();
26882
+ setEditingKey(null);
26883
+ return [3 /*break*/, 10];
26884
+ case 9:
26885
+ exception_2 = _a.sent();
26886
+ setEditingKey(null);
26887
+ message.open({
26888
+ type: "error",
26889
+ content: exception_2.message,
26890
+ duration: 3,
26891
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
26892
+ });
26893
+ return [3 /*break*/, 10];
26894
+ case 10: return [2 /*return*/];
26799
26895
  }
26800
- return newData;
26801
26896
  });
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;
26897
+ }); };
26898
+ var actionMenu = function (record) {
26899
+ if (record.status === NdcDetailsActionStatus.Pending &&
26900
+ isGovernmentUser &&
26901
+ !selectedPeriod.finalized) {
26902
+ return (React.createElement(List, { className: "action-menu", size: "small", dataSource: [
26903
+ {
26904
+ text: t("ndc:approve"),
26905
+ icon: React.createElement(Icon.BoxArrowInDown, null),
26906
+ click: function () {
26907
+ setActionInfo({
26908
+ action: "Approve",
26909
+ headerText: t("ndc:actionApproveTitle"),
26910
+ type: "primary",
26911
+ icon: React.createElement(Icon.BoxArrowInDown, null),
26912
+ recordId: record.id,
26913
+ });
26914
+ setOpenConfirmationModal(true);
26915
+ },
26916
+ },
26917
+ {
26918
+ text: t("ndc:reject"),
26919
+ icon: React.createElement(Icon.XOctagon, null),
26920
+ click: function () {
26921
+ setActionInfo({
26922
+ action: "Reject",
26923
+ headerText: t("ndc:rejectApproveTitle"),
26924
+ type: "danger",
26925
+ icon: React.createElement(Icon.XOctagon, null),
26926
+ recordId: record.id,
26927
+ });
26928
+ setOpenConfirmationModal(true);
26929
+ },
26930
+ },
26931
+ ], renderItem: function (item) { return (React.createElement(List.Item, { onClick: item.click },
26932
+ React.createElement(Typography.Text, { className: "action-icon color-error" }, item.icon),
26933
+ React.createElement("span", null, item.text))); } }));
26828
26934
  }
26829
26935
  else {
26830
- return [];
26936
+ return null;
26831
26937
  }
26832
26938
  };
26833
26939
  var defaultColumns = [
26834
26940
  {
26835
26941
  title: t("ndc:ndcColumnsNationalPlanObj"),
26836
- dataIndex: "nationalPlanObj",
26837
- key: "nationalPlanObj",
26942
+ dataIndex: "nationalPlanObjective",
26943
+ key: "nationalPlanObjective",
26838
26944
  align: "left",
26945
+ width: 400,
26839
26946
  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" })))); },
26947
+ render: function (_, record) { return (React.createElement(Space, { size: "middle" }, record.nationalPlanObjective ? (React.createElement(Tooltip, { title: isNdcActionEditable(record) ? "" : t("ndc:ndcUnauthorisedMsg") },
26948
+ React.createElement("span", null, record.nationalPlanObjective))) : (React.createElement(Input, { placeholder: "Enter National Plan Objective" })))); },
26843
26949
  },
26844
26950
  {
26845
26951
  title: t("ndc:ndcColumnsKpi"),
26846
26952
  dataIndex: "kpi",
26847
26953
  key: "kpi",
26848
26954
  align: "left",
26955
+ width: 100,
26849
26956
  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" })))); },
26957
+ render: function (_, record) { return (React.createElement(Space, { size: "middle" }, record.kpi ? (React.createElement(Tooltip, { title: isNdcActionEditable(record) ? "" : t("ndc:ndcUnauthorisedMsg") },
26958
+ React.createElement("span", null, record.kpi))) : (React.createElement(Input, { placeholder: "Enter Kpi" })))); },
26853
26959
  },
26854
26960
  {
26855
- title: "Government Department",
26856
- dataIndex: "ministry",
26857
- key: "ministry",
26961
+ title: t("ndc:ndcColumnsMinistry"),
26962
+ dataIndex: "ministryName",
26963
+ key: "ministryName",
26858
26964
  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" })))); },
26965
+ width: 300,
26966
+ editable: false,
26967
+ render: function (_, record) { return (React.createElement(Tooltip, { title: isSubNdcActionsEditable(record) ? "" : t("ndc:ndcUnauthorisedMsg") },
26968
+ React.createElement(Select, { disabled: !(isSubNdcActionsEditable(record) && isEditing(record)), defaultValue: record.ministryName ? record.ministryName : loginMinistry, style: { width: 220 }, onChange: function (value, option) {
26969
+ record.ministryName = option.label;
26970
+ handleSave(record);
26971
+ }, options: ministryOrgList }))); },
26972
+ },
26973
+ {
26974
+ title: t("ndc:ndcColumnsStatus"),
26975
+ dataIndex: "status",
26976
+ key: "status",
26977
+ align: "left",
26978
+ width: 200,
26979
+ editable: false,
26980
+ render: function (_, record) {
26981
+ var menu = actionMenu(record);
26982
+ return (React.createElement("div", { onClick: function (event) { return event.stopPropagation(); } },
26983
+ record.actionType === NdcDetailsActionType.SubAction &&
26984
+ record.status !== NdcDetailsActionStatus.New ? (React.createElement(Tooltip, { title: record.status, color: TooltipColor, key: TooltipColor },
26985
+ React.createElement(Tag, { className: "clickable", color: getNdcActionStatusTagType(record.status) }, addSpaces(record.status)))) : (""),
26986
+ record.actionType === NdcDetailsActionType.SubAction && menu ? (React.createElement(Popover, { placement: "bottomRight", content: menu, trigger: "click" },
26987
+ React.createElement(EllipsisOutlined, { rotate: 90, style: {
26988
+ fontWeight: 600,
26989
+ fontSize: "1rem",
26990
+ cursor: "pointer",
26991
+ } }))) : (React.createElement("span", null))));
26992
+ },
26863
26993
  },
26864
26994
  ];
26865
26995
  var columns = defaultColumns.map(function (col) {
26866
26996
  if (!col.editable) {
26867
26997
  return col;
26868
26998
  }
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
- }); } });
26999
+ return __assign(__assign({}, col), { onCell: function (record) {
27000
+ return {
27001
+ record: record,
27002
+ editing: isEditing(record),
27003
+ dataIndex: col.dataIndex,
27004
+ title: col.title,
27005
+ onBlurHandler: function (record) {
27006
+ if (isEditing(record)) {
27007
+ handleSave(record);
27008
+ }
27009
+ },
27010
+ t: t,
27011
+ };
27012
+ } });
26876
27013
  });
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));
27014
+ function onClickedAddNewNdcDetail() {
27015
+ return __awaiter(this, void 0, void 0, function () {
27016
+ var periodId, newData_1, lastPage;
27017
+ return __generator(this, function (_a) {
27018
+ if (selectedPeriod.key !== "add_new") {
27019
+ form.setFieldsValue({
27020
+ nationalPlanObjective: "",
27021
+ kpi: "",
27022
+ });
27023
+ periodId = parseInt(selectedPeriod.key);
27024
+ newData_1 = {
27025
+ id: nextAvailableActionId,
27026
+ actionType: NdcDetailsActionType.MainAction,
27027
+ nationalPlanObjective: "",
27028
+ kpi: "",
27029
+ ministryName: loginMinistry,
27030
+ periodId: periodId,
27031
+ status: NdcDetailsActionStatus.New,
27032
+ };
27033
+ setEditingKey(nextAvailableActionId);
27034
+ setNextAvailableActionId(function (value) { return value + 1; });
27035
+ setNdcActionsList(function (ndcActionsList) { return __spreadArray(__spreadArray([], ndcActionsList, true), [
27036
+ newData_1,
27037
+ ], false); });
27038
+ setTableKey(function (key) { return key + 1; });
27039
+ if (ndcMainDetailsForPeriod.length + 1 > pageSize) {
27040
+ lastPage = Math.ceil(ndcMainDetailsForPeriod.length / pageSize);
27041
+ setCurrentPage(lastPage);
27042
+ }
27043
+ }
27044
+ return [2 /*return*/];
27045
+ });
27046
+ });
26902
27047
  }
26903
27048
  var components = {
26904
27049
  body: {
26905
- row: EditableRow,
26906
27050
  cell: EditableCell,
26907
27051
  },
26908
27052
  };
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);
27053
+ var onClickedDeletePeriod = function () { return __awaiter(void 0, void 0, void 0, function () {
27054
+ return __generator(this, function (_a) {
27055
+ setActionInfo({
27056
+ action: "Delete",
27057
+ headerText: t("ndc:periodDeleteConfirmTitle"),
27058
+ type: "danger",
27059
+ icon: React.createElement(Icon.XCircle, null),
27060
+ recordId: selectedPeriod.key,
26948
27061
  });
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);
27062
+ setOpenConfirmationModal(true);
27063
+ return [2 /*return*/];
27064
+ });
27065
+ }); };
27066
+ var onClickedFinalizePeriod = function () { return __awaiter(void 0, void 0, void 0, function () {
27067
+ var isPendingActionAvailable;
27068
+ return __generator(this, function (_a) {
27069
+ if (ndcMainDetailsForPeriod.length === 0) {
27070
+ message.open({
27071
+ type: "error",
27072
+ content: t("ndc:finalizeNdcEmptyErrorText"),
27073
+ duration: 3,
27074
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27075
+ });
27076
+ return [2 /*return*/];
26952
27077
  }
26953
- else {
27078
+ isPendingActionAvailable = false;
27079
+ ndcMainDetailsForPeriod.forEach(function (mainAction) {
27080
+ var pendingActions = ndcActionsList.filter(function (action) {
27081
+ return (action.status === NdcDetailsActionStatus.Pending &&
27082
+ action.actionType === NdcDetailsActionType.SubAction &&
27083
+ action.parentActionId === mainAction.id);
27084
+ });
27085
+ if (pendingActions && pendingActions.length > 0) {
27086
+ isPendingActionAvailable = true;
27087
+ return;
27088
+ }
27089
+ });
27090
+ if (isPendingActionAvailable) {
26954
27091
  message.open({
26955
27092
  type: "error",
26956
- content: t("ndc:rangeAlreadyExists"),
27093
+ content: t("ndc:finalizeErrorText"),
26957
27094
  duration: 3,
26958
27095
  style: { textAlign: "right", marginRight: 15, marginTop: 10 },
26959
27096
  });
26960
27097
  }
27098
+ else {
27099
+ setActionInfo({
27100
+ action: "Finalize",
27101
+ headerText: t("ndc:finalizeApproveTitle"),
27102
+ text: t("ndc:finalizeApproveSubTitle"),
27103
+ type: "primary",
27104
+ icon: React.createElement(Icon.Clipboard2Check, null),
27105
+ recordId: selectedPeriod.key,
27106
+ });
27107
+ setOpenConfirmationModal(true);
27108
+ }
27109
+ return [2 /*return*/];
27110
+ });
27111
+ }); };
27112
+ var onMainTableRowExpand = function (expanded, record) {
27113
+ var keys = [];
27114
+ if (expanded) {
27115
+ keys.push(record.id);
26961
27116
  }
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;
27117
+ setExpandedRowKeys(keys);
27118
+ setNdcSubActionsForMainAction(record.id);
26974
27119
  };
26975
27120
  function addNewPeriodContent() {
26976
27121
  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"))))));
26983
- }
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 }));
27122
+ React.createElement(Row, { justify: "start", align: "middle", gutter: [16, 16] },
27123
+ React.createElement(Col, { flex: "340px" },
27124
+ React.createElement(RangePicker, { disabledDate: function (current) { return moment(current).year() < 1900; }, onChange: onDateRangeChanged, picker: "year" })),
27125
+ React.createElement(Col, { flex: "auto" },
27126
+ React.createElement(Button, { type: "primary", onClick: onAddNewPeriod, htmlType: "submit", loading: loading }, t("ndc:submit"))))));
26987
27127
  }
26988
- var onTabChange = function (key) {
26989
- setSelectedTab(key);
27128
+ var onChange = function (page, size) {
27129
+ setCurrentPage(page);
27130
+ setPageSize(size);
26990
27131
  };
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)",
27132
+ function mainNdcActionTableContent() {
27133
+ return (React.createElement("div", null,
27134
+ React.createElement(Row, null,
27135
+ React.createElement(Col, { span: 24 },
27136
+ React.createElement(Form, { form: form, component: false },
27137
+ React.createElement(Table, { tableLayout: "fixed", key: tableKey, className: "common-table-class", rowKey: "id", pagination: {
27138
+ current: currentPage,
27139
+ pageSize: pageSize,
27140
+ total: ndcMainDetailsForPeriod.length,
27141
+ showQuickJumper: true,
27142
+ showSizeChanger: true,
27143
+ onChange: onChange,
27144
+ }, components: components, rowClassName: function () { return "editable-row"; }, bordered: true, loading: loading, dataSource: ndcMainDetailsForPeriod, columns: columns, expandedRowKeys: expandedRowKeys, onExpand: onMainTableRowExpand, expandable: {
27145
+ expandedRowRender: function (record) {
27146
+ return subNdcActionTableContent();
27147
+ },
27148
+ columnWidth: 40,
27149
+ }, onRow: function (record, rowIndex) {
27150
+ return {
27151
+ onClick: function (event) {
27152
+ if (record.id &&
27153
+ isNdcActionEditable(record) &&
27154
+ !isEditing(record)) {
27155
+ form.setFieldsValue(__assign({}, record));
27156
+ setEditingKey(record.id);
27157
+ }
27158
+ },
27159
+ onMouseLeave: function () {
27160
+ if (isEditing(record)) {
27161
+ handleSave(record);
27162
+ }
27163
+ },
27164
+ };
27165
+ }, footer: function () {
27166
+ return isGovernmentUser &&
27167
+ !selectedPeriod.finalized && (React.createElement(Row, { justify: "center" },
27168
+ React.createElement(Button, { className: "btnAddNewMainAct", disabled: isMainActionInEditMode(), onClick: onClickedAddNewNdcDetail, type: "default" }, t("ndc:addNdcAction"))));
27169
+ } })))),
27170
+ isGovernmentUser && !selectedPeriod.finalized ? (React.createElement(Row, { justify: "end" },
27171
+ React.createElement(Button, { className: "mg-left-1 btn-danger", onClick: onClickedDeletePeriod, htmlType: "submit", disabled: isMainActionInEditMode(), loading: loading }, t("ndc:delete")),
27172
+ React.createElement(Button, { className: "mg-left-1", type: "primary", onClick: onClickedFinalizePeriod, disabled: isMainActionInEditMode(), htmlType: "submit", loading: loading }, t("ndc:finalize")))) : ("")));
27173
+ }
27174
+ function subNdcActionTableContent(record) {
27175
+ 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) {
27176
+ return {
27177
+ onClick: function (event) {
27178
+ if (record.id &&
27179
+ isNdcActionEditable(record) &&
27180
+ !isEditing(record)) {
27181
+ form.setFieldsValue(__assign({}, record));
27182
+ setEditingKey(record.id);
27183
+ }
27209
27184
  },
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: "",
27185
+ onMouseLeave: function () {
27186
+ if (isEditing(record)) {
27187
+ handleSave(record);
27188
+ }
27219
27189
  },
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
- });
27190
+ };
27191
+ }, columns: columns, showHeader: false, pagination: false }));
27192
+ }
27193
+ var onAddNewPeriod = function () { return __awaiter(void 0, void 0, void 0, function () {
27194
+ var periodItem_1, existingIndex, response, addedPeriodItem, updatedPeriodItem_1, exception_3;
27195
+ return __generator(this, function (_a) {
27196
+ switch (_a.label) {
27197
+ case 0:
27198
+ _a.trys.push([0, 4, , 5]);
27199
+ if (!(selectedDateRangeRef &&
27200
+ selectedDateRangeRef.current &&
27201
+ selectedDateRangeRef.current.startYear &&
27202
+ selectedDateRangeRef.current.endYear)) return [3 /*break*/, 3];
27203
+ periodItem_1 = {
27204
+ startYear: selectedDateRangeRef.current.startYear,
27205
+ endYear: selectedDateRangeRef.current.endYear,
27206
+ finalized: false,
27207
+ };
27208
+ existingIndex = periodItems.findIndex(function (item) {
27209
+ return inRange(periodItem_1.startYear, item.startYear, item.endYear) ||
27210
+ inRange(periodItem_1.endYear, item.startYear, item.endYear);
27211
+ });
27212
+ if (!(existingIndex === -1)) return [3 /*break*/, 2];
27213
+ return [4 /*yield*/, post("national/programme/addNdcDetailsPeriod", __assign({}, periodItem_1))];
27214
+ case 1:
27215
+ response = _a.sent();
27216
+ if (response && response.data) {
27217
+ addedPeriodItem = response.data;
27218
+ updatedPeriodItem_1 = __assign(__assign({}, addedPeriodItem), { key: addedPeriodItem.id, label: "".concat(addedPeriodItem.startYear, "-").concat(addedPeriodItem.endYear) });
27219
+ setPeriodItems(function (items) { return __spreadArray(__spreadArray([], items, true), [updatedPeriodItem_1], false); });
27220
+ setSelectedPeriod(updatedPeriodItem_1);
27221
+ }
27222
+ return [3 /*break*/, 3];
27223
+ case 2:
27224
+ message.open({
27225
+ type: "error",
27226
+ content: t("ndc:rangeAlreadyExists"),
27227
+ duration: 3,
27228
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27229
+ });
27230
+ _a.label = 3;
27231
+ case 3: return [3 /*break*/, 5];
27232
+ case 4:
27233
+ exception_3 = _a.sent();
27234
+ message.open({
27235
+ type: "error",
27236
+ content: exception_3.message,
27237
+ duration: 3,
27238
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27239
+ });
27240
+ return [3 /*break*/, 5];
27241
+ case 5: return [2 /*return*/];
27242
+ }
27243
+ });
27244
+ }); };
27245
+ var onDateRangeChanged = function (range) {
27246
+ if (range) {
27247
+ var period = {
27248
+ startYear: Number(moment(range[0]).year()),
27249
+ endYear: Number(moment(range[1]).year()),
27250
+ };
27251
+ if (period.startYear === period.endYear) {
27252
+ message.open({
27253
+ type: "error",
27254
+ content: t("ndc:sameStartEndDates"),
27255
+ duration: 3,
27256
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27257
+ });
27258
+ }
27259
+ else {
27260
+ selectedDateRangeRef.current = period;
27261
+ }
27247
27262
  }
27248
- addedNdcDetailId.current = 20;
27249
- setPeriodItems(initialPeriods);
27250
- periodItemsRef.current = initialPeriods;
27251
- setNdcDetailsData(defaultNdcDetails);
27263
+ };
27264
+ var onTabChange = function (key) {
27265
+ var selectedPeriod = periodItems.find(function (item) { return item.key === key; });
27266
+ if (selectedPeriod) {
27267
+ setSelectedPeriod(selectedPeriod);
27268
+ }
27269
+ };
27270
+ var onActionConfirmed = function () { return __awaiter(void 0, void 0, void 0, function () {
27271
+ var actionResponse, exception_4;
27272
+ return __generator(this, function (_a) {
27273
+ switch (_a.label) {
27274
+ case 0:
27275
+ setLoading(true);
27276
+ _a.label = 1;
27277
+ case 1:
27278
+ _a.trys.push([1, 10, , 11]);
27279
+ if (!(actionInfo.action === "Approve")) return [3 /*break*/, 3];
27280
+ return [4 /*yield*/, post("national/programme/approveNdcDetailsAction", {
27281
+ id: actionInfo.recordId,
27282
+ })];
27283
+ case 2:
27284
+ actionResponse = _a.sent();
27285
+ return [3 /*break*/, 9];
27286
+ case 3:
27287
+ if (!(actionInfo.action === "Reject")) return [3 /*break*/, 5];
27288
+ return [4 /*yield*/, post("national/programme/rejectNdcDetailsAction", {
27289
+ id: actionInfo.recordId,
27290
+ })];
27291
+ case 4:
27292
+ actionResponse = _a.sent();
27293
+ return [3 /*break*/, 9];
27294
+ case 5:
27295
+ if (!(actionInfo.action === "Finalize")) return [3 /*break*/, 7];
27296
+ return [4 /*yield*/, post("national/programme/finalizeNdcDetailsPeriod", {
27297
+ id: selectedPeriod.key,
27298
+ })];
27299
+ case 6:
27300
+ actionResponse = _a.sent();
27301
+ return [3 /*break*/, 9];
27302
+ case 7:
27303
+ if (!(actionInfo.action === "Delete")) return [3 /*break*/, 9];
27304
+ return [4 /*yield*/, post("national/programme/deleteNdcDetailsPeriod", {
27305
+ id: selectedPeriod.key,
27306
+ })];
27307
+ case 8:
27308
+ actionResponse = _a.sent();
27309
+ _a.label = 9;
27310
+ case 9: return [3 /*break*/, 11];
27311
+ case 10:
27312
+ exception_4 = _a.sent();
27313
+ message.open({
27314
+ type: "error",
27315
+ content: exception_4.message,
27316
+ duration: 3,
27317
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27318
+ });
27319
+ return [3 /*break*/, 11];
27320
+ case 11:
27321
+ if (actionResponse) {
27322
+ if (actionInfo.action === "Delete") {
27323
+ message.open({
27324
+ type: "success",
27325
+ content: t("ndc:deletePeriodSuccessMsg"),
27326
+ duration: 3,
27327
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27328
+ });
27329
+ fetchNdcDetailPeriods();
27330
+ }
27331
+ else if (actionInfo.action === "Finalize") {
27332
+ message.open({
27333
+ type: "success",
27334
+ content: t("ndc:finalizeSuccessMsg"),
27335
+ duration: 3,
27336
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27337
+ });
27338
+ fetchNdcDetailPeriods();
27339
+ setExpandedRowKeys([]);
27340
+ setEditingKey(null);
27341
+ }
27342
+ else if (actionInfo.action === "Approve") {
27343
+ message.open({
27344
+ type: "success",
27345
+ content: t("ndc:approveSuccessMsg"),
27346
+ duration: 3,
27347
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27348
+ });
27349
+ fetchNdcDetailActions();
27350
+ }
27351
+ else if (actionInfo.action === "Reject") {
27352
+ message.open({
27353
+ type: "success",
27354
+ content: t("ndc:rejectSuccessMsg"),
27355
+ duration: 3,
27356
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27357
+ });
27358
+ fetchNdcDetailActions();
27359
+ }
27360
+ }
27361
+ setOpenConfirmationModal(false);
27362
+ setLoading(false);
27363
+ return [2 /*return*/];
27364
+ }
27365
+ });
27366
+ }); };
27367
+ var onActionCanceled = function () {
27368
+ setOpenConfirmationModal(false);
27369
+ };
27370
+ var fetchNdcDetailPeriods = function () { return __awaiter(void 0, void 0, void 0, function () {
27371
+ var periods, addNewTab, response, exception_5;
27372
+ return __generator(this, function (_a) {
27373
+ switch (_a.label) {
27374
+ case 0:
27375
+ setLoading(true);
27376
+ _a.label = 1;
27377
+ case 1:
27378
+ _a.trys.push([1, 3, 4, 5]);
27379
+ periods = [];
27380
+ addNewTab = {
27381
+ key: "add_new",
27382
+ label: "Add New",
27383
+ startYear: 0,
27384
+ endYear: 0,
27385
+ finalized: false,
27386
+ deleted: false,
27387
+ };
27388
+ return [4 /*yield*/, get("national/programme/queryNdcDetailsPeriod")];
27389
+ case 2:
27390
+ response = _a.sent();
27391
+ if (response && response.data) {
27392
+ periods = response.data.map(function (period) {
27393
+ return __assign(__assign({}, period), { key: period.id, label: period.finalized ? (React.createElement("span", null,
27394
+ React.createElement(LockOutlined, null),
27395
+ " ",
27396
+ period.startYear,
27397
+ "-",
27398
+ period.endYear,
27399
+ " ")) : ("".concat(period.startYear, "-").concat(period.endYear)) });
27400
+ });
27401
+ }
27402
+ if (isGovernmentUser) {
27403
+ periods.unshift(addNewTab);
27404
+ }
27405
+ setPeriodItems(periods);
27406
+ if (isGovernmentUser) {
27407
+ setSelectedPeriod(addNewTab);
27408
+ }
27409
+ else {
27410
+ setSelectedPeriod(periods[0]);
27411
+ }
27412
+ setLoading(false);
27413
+ return [3 /*break*/, 5];
27414
+ case 3:
27415
+ exception_5 = _a.sent();
27416
+ message.open({
27417
+ type: "error",
27418
+ content: exception_5.message,
27419
+ duration: 3,
27420
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27421
+ });
27422
+ return [3 /*break*/, 5];
27423
+ case 4:
27424
+ setLoading(false);
27425
+ return [7 /*endfinally*/];
27426
+ case 5: return [2 /*return*/];
27427
+ }
27428
+ });
27429
+ }); };
27430
+ var fetchNdcDetailActions = function () { return __awaiter(void 0, void 0, void 0, function () {
27431
+ var response, maxActionId, exception_6;
27432
+ return __generator(this, function (_a) {
27433
+ switch (_a.label) {
27434
+ case 0:
27435
+ setLoading(true);
27436
+ _a.label = 1;
27437
+ case 1:
27438
+ _a.trys.push([1, 3, 4, 5]);
27439
+ return [4 /*yield*/, get("national/programme/queryNdcDetailsAction")];
27440
+ case 2:
27441
+ response = _a.sent();
27442
+ if (response && response.data) {
27443
+ maxActionId = Math.max.apply(Math, response.data.map(function (item) { return item.id; }));
27444
+ setNextAvailableActionId(maxActionId + 1);
27445
+ setNdcActionsList(response.data);
27446
+ }
27447
+ setLoading(false);
27448
+ return [3 /*break*/, 5];
27449
+ case 3:
27450
+ exception_6 = _a.sent();
27451
+ message.open({
27452
+ type: "error",
27453
+ content: exception_6.message,
27454
+ duration: 3,
27455
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27456
+ });
27457
+ return [3 /*break*/, 5];
27458
+ case 4:
27459
+ setLoading(false);
27460
+ return [7 /*endfinally*/];
27461
+ case 5: return [2 /*return*/];
27462
+ }
27463
+ });
27464
+ }); };
27465
+ var fetchMinistries = function () { return __awaiter(void 0, void 0, void 0, function () {
27466
+ var response, ministryOrgDetails, exception_7;
27467
+ return __generator(this, function (_a) {
27468
+ switch (_a.label) {
27469
+ case 0:
27470
+ setLoading(true);
27471
+ _a.label = 1;
27472
+ case 1:
27473
+ _a.trys.push([1, 3, 4, 5]);
27474
+ return [4 /*yield*/, get("national/organisation/getMinistries")];
27475
+ case 2:
27476
+ response = _a.sent();
27477
+ if (response && response.data) {
27478
+ ministryOrgDetails = response.data.map(function (value) {
27479
+ return {
27480
+ value: value.company_companyId,
27481
+ label: value.company_name,
27482
+ };
27483
+ });
27484
+ setMinistryOrgList(ministryOrgDetails);
27485
+ }
27486
+ setLoading(false);
27487
+ return [3 /*break*/, 5];
27488
+ case 3:
27489
+ exception_7 = _a.sent();
27490
+ message.open({
27491
+ type: "error",
27492
+ content: exception_7.message,
27493
+ duration: 3,
27494
+ style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27495
+ });
27496
+ return [3 /*break*/, 5];
27497
+ case 4:
27498
+ setLoading(false);
27499
+ return [7 /*endfinally*/];
27500
+ case 5: return [2 /*return*/];
27501
+ }
27502
+ });
27503
+ }); };
27504
+ useEffect(function () {
27505
+ fetchNdcDetailPeriods();
27506
+ fetchNdcDetailActions();
27507
+ fetchMinistries();
27252
27508
  }, []);
27253
- return (React.createElement("div", { className: "ndc-management content-container" },
27509
+ return (React.createElement("div", { className: "ndc-details content-container" },
27254
27510
  React.createElement("div", { className: "title-bar" },
27255
27511
  React.createElement(Row, { justify: "space-between", align: "middle" },
27256
27512
  React.createElement(Col, { span: 20 },
27257
27513
  React.createElement("div", { className: "body-title" }, t("ndc:ndcTitle")),
27258
27514
  React.createElement("div", { className: "body-sub-title" }, t("ndc:ndcSubTitle"))))),
27259
27515
  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
- } }))))));
27516
+ React.createElement(Tabs, { centered: false, defaultActiveKey: "1", items: periodItems, activeKey: selectedPeriod.key, onChange: onTabChange })),
27517
+ React.createElement("div", null, selectedPeriod.key === "add_new"
27518
+ ? addNewPeriodContent()
27519
+ : mainNdcActionTableContent()),
27520
+ React.createElement(UserActionConfirmationModel, { t: t, actionInfo: actionInfo, onActionConfirmed: onActionConfirmed, onActionCanceled: onActionCanceled, openModal: openConfirmationModal, errorMsg: "", loading: loading })));
27274
27521
  };
27275
27522
 
27276
27523
  var ImgWithFallback = function (_a) {
@@ -27843,8 +28090,8 @@ var ProgrammeTransferForm = function (props) {
27843
28090
  },
27844
28091
  {
27845
28092
  key: "companyRole",
27846
- operation: "=",
27847
- value: CompanyRole.PROGRAMME_DEVELOPER,
28093
+ operation: "!=",
28094
+ value: "Certifier",
27848
28095
  },
27849
28096
  ],
27850
28097
  sort: {
@@ -28980,5 +29227,5 @@ var TimelineBody = function (props) {
28980
29227
  React.createElement("div", { className: "remark-body" }, remark)))));
28981
29228
  };
28982
29229
 
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 };
29230
+ 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
29231
  //# sourceMappingURL=index.js.map