@undp/carbon-library 1.0.274-CARBON-363.48 → 1.0.274-CARBON-347.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. package/dist/cjs/index.js +1589 -1129
  2. package/dist/cjs/index.js.map +1 -1
  3. package/dist/cjs/types/Components/Common/AntComponents/antTableComponents.d.ts +6 -9
  4. package/dist/cjs/types/Components/Common/CoBenifits/coBenifits.d.ts +0 -1
  5. package/dist/cjs/types/Components/Common/Models/programmeRetireForm.d.ts +0 -1
  6. package/dist/cjs/types/Components/Common/Models/programmeTransferForm.d.ts +0 -1
  7. package/dist/cjs/types/Components/Common/NdcActionBody/ndcActionBody.d.ts +0 -2
  8. package/dist/cjs/types/Components/Common/ProgrammeDocuments/programmeDocuments.d.ts +0 -2
  9. package/dist/cjs/types/Context/ConnectionContext/connectionContext.d.ts +8 -0
  10. package/dist/cjs/types/Context/SettingsContext/settingsContext.d.ts +10 -0
  11. package/dist/cjs/types/Context/UserInformationContext/userInformationContext.d.ts +6 -0
  12. package/dist/cjs/types/Context/index.d.ts +3 -0
  13. package/dist/cjs/types/Definitions/Definitions/connectionContext.definitions.d.ts +1 -0
  14. package/dist/cjs/types/Definitions/Enums/investment.enum.d.ts +4 -0
  15. package/dist/cjs/types/Storybook/AddNewCompanyComponent.stories.d.ts +12 -0
  16. package/dist/cjs/types/Storybook/AddNewUserComponent.stories.d.ts +12 -0
  17. package/dist/cjs/types/Storybook/Decorators/AddNewCompanyI18nDecorator.d.ts +2 -0
  18. package/dist/cjs/types/Storybook/Decorators/AddNewUserI18nDecorator.d.ts +2 -0
  19. package/dist/cjs/types/Storybook/Decorators/ConnectionContextDecorator.d.ts +2 -0
  20. package/dist/cjs/types/index.d.ts +1 -0
  21. package/dist/esm/index.js +1583 -1131
  22. package/dist/esm/index.js.map +1 -1
  23. package/dist/esm/types/Components/Common/AntComponents/antTableComponents.d.ts +6 -9
  24. package/dist/esm/types/Components/Common/CoBenifits/coBenifits.d.ts +0 -1
  25. package/dist/esm/types/Components/Common/Models/programmeRetireForm.d.ts +0 -1
  26. package/dist/esm/types/Components/Common/Models/programmeTransferForm.d.ts +0 -1
  27. package/dist/esm/types/Components/Common/NdcActionBody/ndcActionBody.d.ts +0 -2
  28. package/dist/esm/types/Components/Common/ProgrammeDocuments/programmeDocuments.d.ts +0 -2
  29. package/dist/esm/types/Context/ConnectionContext/connectionContext.d.ts +8 -0
  30. package/dist/esm/types/Context/SettingsContext/settingsContext.d.ts +10 -0
  31. package/dist/esm/types/Context/UserInformationContext/userInformationContext.d.ts +6 -0
  32. package/dist/esm/types/Context/index.d.ts +3 -0
  33. package/dist/esm/types/Definitions/Definitions/connectionContext.definitions.d.ts +1 -0
  34. package/dist/esm/types/Definitions/Enums/investment.enum.d.ts +4 -0
  35. package/dist/esm/types/Storybook/AddNewCompanyComponent.stories.d.ts +12 -0
  36. package/dist/esm/types/Storybook/AddNewUserComponent.stories.d.ts +12 -0
  37. package/dist/esm/types/Storybook/Decorators/AddNewCompanyI18nDecorator.d.ts +2 -0
  38. package/dist/esm/types/Storybook/Decorators/AddNewUserI18nDecorator.d.ts +2 -0
  39. package/dist/esm/types/Storybook/Decorators/ConnectionContextDecorator.d.ts +2 -0
  40. package/dist/esm/types/index.d.ts +1 -0
  41. package/dist/index.d.ts +25 -8
  42. package/dist/locales/i18n/ndc/en.json +3 -28
  43. package/dist/locales/i18n/programme/en.json +3 -1
  44. package/package.json +29 -2
  45. package/dist/cjs/types/Definitions/Definitions/ndcDetails.definitions.d.ts +0 -42
  46. package/dist/esm/types/Definitions/Definitions/ndcDetails.definitions.d.ts +0 -42
package/dist/esm/index.js CHANGED
@@ -1,8 +1,9 @@
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';
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';
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 } from 'react';
3
+ import React, { createContext, useState, useEffect, useCallback, useContext, useRef } from 'react';
4
4
  import { DateTime } from 'luxon';
5
5
  import { Buffer } from 'buffer';
6
+ import axios from 'axios';
6
7
  import PhoneInput, { formatPhoneNumberIntl, formatPhoneNumber } from 'react-phone-number-input';
7
8
  import validator from 'validator';
8
9
  import { plainToClass } from 'class-transformer';
@@ -489,9 +490,311 @@ var OrganisationStatus = function (props) {
489
490
  return orgState;
490
491
  };
491
492
 
493
+ function e$1(e){this.message=e;}e$1.prototype=new Error,e$1.prototype.name="InvalidCharacterError";var r="undefined"!=typeof window&&window.atob&&window.atob.bind(window)||function(r){var t=String(r).replace(/=+$/,"");if(t.length%4==1)throw new e$1("'atob' failed: The string to be decoded is not correctly encoded.");for(var n,o,a=0,i=0,c="";o=t.charAt(i++);~o&&(n=a%4?64*n+o:o,a++%4)?c+=String.fromCharCode(255&n>>(-2*a&6)):0)o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(o);return c};function t$1(e){var t=e.replace(/-/g,"+").replace(/_/g,"/");switch(t.length%4){case 0:break;case 2:t+="==";break;case 3:t+="=";break;default:throw "Illegal base64url string!"}try{return function(e){return decodeURIComponent(r(e).replace(/(.)/g,(function(e,r){var t=r.charCodeAt(0).toString(16).toUpperCase();return t.length<2&&(t="0"+t),"%"+t})))}(t)}catch(e){return r(t)}}function n$1(e){this.message=e;}function o(e,r){if("string"!=typeof e)throw new n$1("Invalid token specified");var o=!0===(r=r||{}).header?0:1;try{return JSON.parse(t$1(e.split(".")[o]))}catch(e){throw new n$1("Invalid token specified: "+e.message)}}n$1.prototype=new Error,n$1.prototype.name="InvalidTokenError";
494
+
495
+ var ConnectionContext = createContext({});
496
+ var ConnectionContextProvider = function (props) {
497
+ var _a = useState(), token = _a[0], setToken = _a[1];
498
+ var serverURL = props.serverURL, t = props.t, children = props.children;
499
+ useEffect(function () {
500
+ var timer = setInterval(function () { return __awaiter(void 0, void 0, void 0, function () {
501
+ var newToken;
502
+ return __generator(this, function (_a) {
503
+ switch (_a.label) {
504
+ case 0: return [4 /*yield*/, localStorage.getItem('token')];
505
+ case 1:
506
+ newToken = _a.sent();
507
+ if (token !== newToken) {
508
+ setToken(newToken);
509
+ }
510
+ return [2 /*return*/];
511
+ }
512
+ });
513
+ }); }, 3000);
514
+ if (token) {
515
+ clearTimeout(timer);
516
+ }
517
+ return function () {
518
+ clearTimeout(timer);
519
+ };
520
+ }, [token]);
521
+ var send = useCallback(function (method, path, data, config, extraUrl) {
522
+ return new Promise(function (resolve, reject) {
523
+ var url = "".concat(extraUrl ? extraUrl : serverURL, "/").concat(path);
524
+ var headers;
525
+ if (token) {
526
+ headers = { authorization: "Bearer ".concat(token.toString()) };
527
+ }
528
+ else {
529
+ localStorage.getItem('token');
530
+ headers = {
531
+ authorization: "Bearer ".concat(localStorage.getItem('token')),
532
+ };
533
+ }
534
+ axios(__assign({ method: method, url: url, data: data, headers: headers }, config))
535
+ .then(function (response) {
536
+ var _a, _b, _c;
537
+ if (response.status) {
538
+ if (response.status === 200 || response.status === 201) {
539
+ resolve({
540
+ status: response.status,
541
+ data: (_a = response.data.data) !== null && _a !== void 0 ? _a : response.data,
542
+ response: response,
543
+ statusText: 'SUCCESS',
544
+ message: response.data.message,
545
+ });
546
+ }
547
+ else if (response.status === 422) {
548
+ reject({
549
+ status: response.status,
550
+ data: (_b = response.data) === null || _b === void 0 ? void 0 : _b.data,
551
+ statusText: 'ERROR',
552
+ response: response,
553
+ message: response.data.message,
554
+ errors: (_c = response.data) === null || _c === void 0 ? void 0 : _c.errors,
555
+ });
556
+ }
557
+ }
558
+ else {
559
+ reject({
560
+ status: 500,
561
+ statusText: 'UNKNOWN',
562
+ message: t('common:systemError'),
563
+ });
564
+ }
565
+ })
566
+ .catch(function (e) {
567
+ var _a;
568
+ if (e.response) {
569
+ if (e.response.status) {
570
+ if (e.response.data.message === 'jwt expired') {
571
+ localStorage.removeItem('token');
572
+ window.location.reload();
573
+ }
574
+ reject({
575
+ status: e.response.status,
576
+ statusText: 'ERROR',
577
+ errors: (_a = e.response.data) === null || _a === void 0 ? void 0 : _a.errors,
578
+ message: e.response.data.message,
579
+ });
580
+ }
581
+ else {
582
+ reject({
583
+ statusText: 'ERROR',
584
+ message: t('common:systemError'),
585
+ });
586
+ }
587
+ }
588
+ else {
589
+ reject({
590
+ statusText: 'ERROR',
591
+ message: t('common:networkError'),
592
+ });
593
+ }
594
+ });
595
+ });
596
+ }, [token, serverURL]);
597
+ var post = useCallback(function (path, data, config, extraUrl) {
598
+ return send('post', path, data, config, extraUrl);
599
+ }, [send]);
600
+ var put = useCallback(function (path, data, config) {
601
+ return send('put', path, data, config);
602
+ }, [send]);
603
+ var get = useCallback(function (path, config) {
604
+ return send('get', path, undefined, config);
605
+ }, [send]);
606
+ var patch = useCallback(function (path, data, config) {
607
+ return send('patch', path, data, config);
608
+ }, [send]);
609
+ var del = useCallback(function (path, config) {
610
+ return send('delete', path, config);
611
+ }, [send]);
612
+ var updateToken = useCallback(function (newToken) { return __awaiter(void 0, void 0, void 0, function () {
613
+ return __generator(this, function (_a) {
614
+ if (newToken) {
615
+ localStorage.setItem('token', newToken);
616
+ setToken(newToken);
617
+ }
618
+ else {
619
+ localStorage.setItem('token', '');
620
+ setToken(undefined);
621
+ }
622
+ return [2 /*return*/];
623
+ });
624
+ }); }, []);
625
+ var removeToken = function (tkn) {
626
+ if (tkn) {
627
+ var exp = o(tkn).exp;
628
+ if (Date.now() > exp * 1000) {
629
+ localStorage.setItem('token', '');
630
+ localStorage.removeItem('userRole');
631
+ localStorage.removeItem('userId');
632
+ localStorage.removeItem('companyId');
633
+ localStorage.removeItem('companyRole');
634
+ }
635
+ else {
636
+ var diff = exp * 1000 - Date.now();
637
+ setTimeout(function () {
638
+ setToken(undefined);
639
+ localStorage.setItem('token', '');
640
+ localStorage.removeItem('userRole');
641
+ localStorage.removeItem('userId');
642
+ localStorage.removeItem('companyId');
643
+ localStorage.removeItem('companyRole');
644
+ }, diff);
645
+ console.log(diff, 'Remaining Token expire time');
646
+ }
647
+ }
648
+ };
649
+ useEffect(function () {
650
+ removeToken(token);
651
+ }, [token]);
652
+ return (React.createElement(ConnectionContext.Provider, { value: {
653
+ connection: { post: post, put: put, get: get, patch: patch, delete: del, updateToken: updateToken, token: token, removeToken: removeToken },
654
+ } }, children));
655
+ };
656
+ var useConnection = function () {
657
+ var context = useContext(ConnectionContext);
658
+ return context.connection;
659
+ };
660
+
661
+ var UserContext = createContext({
662
+ setUserInfo: function () { },
663
+ removeUserInfo: function () { },
664
+ IsAuthenticated: function (tkn) { return false; },
665
+ isTokenExpired: false,
666
+ setIsTokenExpired: function (val) { },
667
+ });
668
+ var UserInformationContextProvider = function (_a) {
669
+ var children = _a.children;
670
+ var token = useConnection().token;
671
+ var _b = useState(false), isTokenExpired = _b[0], setIsTokenExpired = _b[1];
672
+ var initialUserProps = {
673
+ id: localStorage.getItem('userId') ? localStorage.getItem('userId') : '',
674
+ userRole: localStorage.getItem('userRole') ? localStorage.getItem('userRole') : '',
675
+ companyRole: localStorage.getItem('companyRole')
676
+ ? localStorage.getItem('companyRole')
677
+ : '',
678
+ companyId: localStorage.getItem('companyId')
679
+ ? parseInt(localStorage.getItem('companyId'))
680
+ : -1,
681
+ companyLogo: localStorage.getItem('companyLogo')
682
+ ? localStorage.getItem('companyLogo')
683
+ : '',
684
+ companyName: localStorage.getItem('companyName')
685
+ ? localStorage.getItem('companyName')
686
+ : '',
687
+ companyState: localStorage.getItem('companyState')
688
+ ? parseInt(localStorage.getItem('companyState'))
689
+ : 0,
690
+ };
691
+ var _c = useState(initialUserProps), userInfoState = _c[0], setUserInfoState = _c[1];
692
+ var setUserInfo = function (value) {
693
+ var state = (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyState) === 1 ? userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyState : 0;
694
+ var id = value.id, userRole = value.userRole, companyId = value.companyId, companyRole = value.companyRole, companyLogo = value.companyLogo, companyName = value.companyName, _a = value.companyState, companyState = _a === void 0 ? state : _a;
695
+ if (id) {
696
+ setUserInfoState(function (prev) { return (__assign(__assign({}, prev), { id: id })); });
697
+ localStorage.setItem('userId', id);
698
+ }
699
+ if (userRole) {
700
+ setUserInfoState(function (prev) { return (__assign(__assign({}, prev), { userRole: userRole })); });
701
+ localStorage.setItem('userRole', userRole);
702
+ }
703
+ if (companyId) {
704
+ setUserInfoState(function (prev) { return (__assign(__assign({}, prev), { companyId: companyId })); });
705
+ localStorage.setItem('companyId', companyId + '');
706
+ }
707
+ if (companyLogo) {
708
+ setUserInfoState(function (prev) { return (__assign(__assign({}, prev), { companyLogo: companyLogo })); });
709
+ localStorage.setItem('companyLogo', companyLogo);
710
+ }
711
+ else {
712
+ setUserInfoState(function (prev) { return (__assign(__assign({}, prev), { companyLogo: '' })); });
713
+ localStorage.setItem('companyLogo', '');
714
+ }
715
+ if (companyName) {
716
+ setUserInfoState(function (prev) { return (__assign(__assign({}, prev), { companyName: companyName })); });
717
+ localStorage.setItem('companyName', companyName);
718
+ }
719
+ if (userRole) {
720
+ setUserInfoState(function (prev) { return (__assign(__assign({}, prev), { companyRole: companyRole })); });
721
+ localStorage.setItem('companyRole', companyRole);
722
+ }
723
+ setUserInfoState(function (prev) { return (__assign(__assign({}, prev), { companyState: companyState })); });
724
+ localStorage.setItem('companyState', companyState + '');
725
+ };
726
+ var IsAuthenticated = useCallback(function (tokenNew) {
727
+ var tokenVal;
728
+ if (tokenNew) {
729
+ tokenVal = tokenNew;
730
+ }
731
+ else if (token) {
732
+ tokenVal = token;
733
+ }
734
+ else {
735
+ tokenVal = localStorage.getItem('token');
736
+ if (tokenVal === '') {
737
+ if (history.length !== 1) {
738
+ setIsTokenExpired(true);
739
+ }
740
+ }
741
+ }
742
+ try {
743
+ if (tokenVal) {
744
+ var exp = o(tokenVal).exp;
745
+ return Date.now() < exp * 1000;
746
+ }
747
+ return false;
748
+ }
749
+ catch (err) {
750
+ return false;
751
+ }
752
+ }, [token]);
753
+ var removeUserInfo = function () {
754
+ localStorage.removeItem('userId');
755
+ localStorage.removeItem('userRole');
756
+ localStorage.removeItem('companyId');
757
+ localStorage.removeItem('companyRole');
758
+ localStorage.removeItem('companyName');
759
+ localStorage.removeItem('companyState');
760
+ localStorage.removeItem('companyLogo');
761
+ setUserInfoState(initialUserProps);
762
+ };
763
+ return (React.createElement(UserContext.Provider, { value: {
764
+ userInfoState: userInfoState,
765
+ setUserInfo: setUserInfo,
766
+ removeUserInfo: removeUserInfo,
767
+ IsAuthenticated: IsAuthenticated,
768
+ isTokenExpired: isTokenExpired,
769
+ setIsTokenExpired: setIsTokenExpired,
770
+ } }, children));
771
+ };
772
+ var useUserContext = function () {
773
+ return useContext(UserContext);
774
+ };
775
+
776
+ var SettingsContext = createContext({
777
+ isTransferFrozen: false,
778
+ setTransferFrozen: function (value) { },
779
+ });
780
+ var SettingsContextProvider = function (_a) {
781
+ var children = _a.children;
782
+ var _b = useState(false), isTransferFrozen = _b[0], setIsTransferFrozen = _b[1];
783
+ var setTransferFrozen = function (value) {
784
+ setIsTransferFrozen(value);
785
+ };
786
+ return (React.createElement(SettingsContext.Provider, { value: {
787
+ isTransferFrozen: isTransferFrozen,
788
+ setTransferFrozen: setTransferFrozen,
789
+ } }, children));
790
+ };
791
+ var useSettingsContext = function () {
792
+ return useContext(SettingsContext);
793
+ };
794
+
492
795
  var Search$2 = Input.Search;
493
796
  var CompanyManagementComponent = function (props) {
494
- var t = props.t, useAbilityContext = props.useAbilityContext, post = props.post, visibleColumns = props.visibleColumns, onNavigateToCompanyProfile = props.onNavigateToCompanyProfile, onClickAddCompany = props.onClickAddCompany;
797
+ var t = props.t, useAbilityContext = props.useAbilityContext, visibleColumns = props.visibleColumns, onNavigateToCompanyProfile = props.onNavigateToCompanyProfile, onClickAddCompany = props.onClickAddCompany;
495
798
  var _a = useState(), totalCompany = _a[0], setTotalCompany = _a[1];
496
799
  var _b = useState(false), loading = _b[0], setLoading = _b[1];
497
800
  var _c = useState([]), tableData = _c[0], setTableData = _c[1];
@@ -505,6 +808,7 @@ var CompanyManagementComponent = function (props) {
505
808
  var _k = useState(""), sortOrder = _k[0], setSortOrder = _k[1];
506
809
  var _l = useState(""), sortField = _l[0], setSortField = _l[1];
507
810
  var ability = useAbilityContext();
811
+ var post = useConnection().post;
508
812
  document.addEventListener("mousedown", function (event) {
509
813
  var organisationFilterArea1 = document.querySelector(".filter-bar");
510
814
  var organisationFilterArea2 = document.querySelector(".filter-dropdown");
@@ -837,7 +1141,7 @@ var CompanyManagementComponent = function (props) {
837
1141
  var css_248z$s = ".company-details-form-container {\n width: 100%; }\n .company-details-form-container .company-details-form .steps-actions {\n display: flex;\n flex-direction: row-reverse; }\n .company-details-form-container .company-details-form .steps-actions .mg-left-1 {\n margin-left: 1rem; }\n .company-details-form-container .company-details-form .row .website .ant-input {\n margin-left: 0.3rem; }\n .company-details-form-container .company-details-form .row .website .ant-input-group-addon {\n border: 1px solid #d9d9d9; }\n .company-details-form-container .company-details-form .row .logo-upload-section {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n align-items: start;\n width: 100%; }\n .company-details-form-container .company-details-form .row .logo-upload-section .ant-upload {\n width: 20%; }\n .company-details-form-container .company-details-form .row .logo-upload-section .ant-upload-list {\n align-items: center;\n justify-content: center;\n width: 75%; }\n .company-details-form-container .company-details-form .row .logo-upload-section .ant-upload-list .ant-upload-list-item {\n margin-top: 0; }\n .company-details-form-container .company-details-form .row .details-part-one .space-container {\n width: 100%; }\n .company-details-form-container .company-details-form .row .details-part-one .space-container .ant-space-item {\n width: 100%; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .certifier-radio-container {\n width: 30%; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .certifier-radio-container .ant-radio-button-wrapper-checked:not(\n .ant-radio-button-wrapper-disabled\n) {\n color: #519e4f !important;\n border-color: #519e4f !important;\n box-shadow: none; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .certifier-radio-container .anticon {\n background: #eeeeee;\n border-radius: 50px;\n padding: 0.2rem;\n color: #519e4f; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .dev-radio-container {\n width: 30%; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .dev-radio-container .ant-radio-button-wrapper-checked:not(\n .ant-radio-button-wrapper-disabled\n) {\n color: #ffa070 !important;\n border-color: #ffa070 !important;\n box-shadow: none; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .dev-radio-container .anticon {\n background: #eeeeee;\n border-radius: 50px;\n padding: 0.2rem;\n color: #ffa070; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .minister-radio-container {\n width: 30%; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .minister-radio-container .ant-radio-button-wrapper-checked:not(\n .ant-radio-button-wrapper-disabled\n) {\n color: #9155fd !important;\n border-color: #9155fd !important;\n box-shadow: none; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .minister-radio-container .anticon {\n background: #eeeeee;\n border-radius: 50px;\n padding: 0.2rem;\n color: #9155fd; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .gov-radio-container {\n width: 45%; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .gov-radio-container .ant-radio-button-wrapper-checked:not(\n .ant-radio-button-wrapper-disabled\n) {\n color: #16b1ff !important;\n border-color: #16b1ff !important;\n box-shadow: none; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .gov-radio-container .anticon {\n background: #eeeeee;\n border-radius: 50px;\n padding: 0.2rem;\n color: #16b1ff; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .observer-radio-container {\n width: 25%; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .observer-radio-container .ant-radio-button-wrapper-checked:not(\n .ant-radio-button-wrapper-disabled\n) {\n color: #707070 !important;\n border-color: #707070 !important;\n box-shadow: none; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .observer-radio-container .anticon {\n background: #eeeeee;\n border-radius: 50px;\n padding: 0.2rem;\n color: #707070; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .ant-radio-button-wrapper::before {\n background-color: transparent; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .ant-radio-button-wrapper {\n border: 1px solid #d9d9d9; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .anticon {\n margin-right: 0.5rem; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .certifier {\n width: 100%; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .certifier .ant-radio-button-checked {\n background: rgba(128, 255, 0, 0.12);\n color: #519e4f; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .dev {\n width: 100%; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .dev .ant-radio-button-checked {\n background: rgba(254, 241, 173, 0.5);\n color: #ffa070; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .gov {\n width: 100%; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .gov .ant-radio-button-checked {\n background: rgba(185, 226, 244, 0.56);\n color: #16b1ff; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .minister {\n width: 100%; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .minister .ant-radio-button-checked {\n background: rgba(198, 144, 251, 0.12);\n color: #9155fd; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .observer {\n width: 100%; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .observer .ant-radio-button-checked {\n background: rgba(176, 190, 197, 0.23);\n color: #707070; }\n .company-details-form-container .company-details-form .row .details-part-two .role-group .role-icons {\n margin-right: 5px; }\n .company-details-form-container .company-details-form .row .details-part-two .space-container {\n width: 100%; }\n .company-details-form-container .company-details-form .row .details-part-two .space-container .ant-space-item {\n width: 100%; }\n\n.step-title-container {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n margin-bottom: 1rem; }\n .step-title-container .step-count {\n font-size: 2.2rem;\n font-weight: 800;\n margin-right: 0.4rem;\n color: rgba(58, 53, 65, 0.8); }\n .step-title-container .title {\n font-size: 1rem;\n font-weight: 600;\n color: #3a3541; }\n\n.add-company-main-container {\n display: flex;\n flex-direction: column;\n border-radius: 5px;\n padding: 0 50px; }\n .add-company-main-container .title-container {\n display: flex;\n flex-direction: column;\n border-radius: 5px; }\n .add-company-main-container .title-container .main {\n font-size: 1.25rem;\n font-weight: 500;\n color: #16b1ff; }\n .add-company-main-container .title-container .sub {\n font-size: 0.8rem;\n color: #555657; }\n .add-company-main-container .adding-section {\n display: flex;\n flex-direction: column;\n background-color: #ffffff;\n margin: 1rem 0 1rem 0;\n border-radius: 10px;\n padding: 2.5rem 1.5rem 2.5rem 1.5rem; }\n .add-company-main-container .adding-section .form-section {\n display: flex;\n margin-bottom: 2rem; }\n .add-company-main-container .adding-section .form-section .form-one {\n width: 100%; }\n .add-company-main-container .adding-section .form-section .steps {\n width: 15%; }\n .add-company-main-container .adding-section .form-section .steps-content {\n width: 85%; }\n .add-company-main-container .adding-section .steps-action {\n display: flex;\n flex-direction: row-reverse; }\n\n.ant-upload-list-picture .ant-upload-list-item-error,\n.ant-upload-list-picture-card .ant-upload-list-item-error {\n height: auto;\n max-height: 200px; }\n\n.hide {\n display: none !important; }\n";
838
1142
  styleInject(css_248z$s);
839
1143
 
840
- var css_248z$r = "body {\n background-color: #f4f5fa;\n font-family: \"Inter\";\n font-weight: 400; }\n\n.ant-menu {\n background-color: #f4f5fa; }\n\n.ant-layout-header {\n background-color: #f4f5fa; }\n\n.ant-layout {\n background-color: #f4f5fa; }\n\n.ant-menu-submenu .ant-menu {\n background-color: #f4f5fa; }\n\n.ant-menu-item {\n background-color: #f4f5fa; }\n\n.ant-menu-sub {\n background-color: #f4f5fa; }\n\n.ant-table-content {\n font-family: \"Inter\"; }\n\n.ant-input {\n border-radius: 5px !important; }\n\n.ant-btn {\n border-radius: 5px !important; }\n\n.ant-input-group-addon:first-child {\n border-radius: 5px !important; }\n\n.ant-input-group .ant-input {\n width: 99% !important; }\n\n.ant-radio-group {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between; }\n\n.ant-radio-group-large .ant-radio-button-wrapper {\n font-size: 0.8rem;\n width: 25%;\n border-radius: 5px !important; }\n\n.ant-upload-list-picture .ant-upload-list-item-error,\n.ant-upload-list-picture-card .ant-upload-list-item-error {\n border-color: #40a9ff;\n border-radius: 5px;\n height: 40px; }\n .ant-upload-list-picture .ant-upload-list-item-error .ant-upload-list-item-name,\n .ant-upload-list-picture-card .ant-upload-list-item-error .ant-upload-list-item-name {\n color: #40a9ff !important; }\n\n.ant-upload-list-item-error .ant-upload-list-item-card-actions .anticon {\n color: #40a9ff; }\n\n.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input,\n.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:hover {\n border-color: #d9d9d9 !important; }\n\n.ant-input-group-wrapper-status-error .ant-input-group-addon {\n border-color: #d9d9d9 !important; }\n\n.ant-form-item-explain-error {\n font-size: 13px;\n color: rgba(255, 77, 79, 0.8); }\n\n.ant-table-thead\n> tr\n> th:not(:last-child):not(.ant-table-selection-column):not(.ant-table-row-expand-icon-cell):not([colspan])::before {\n background-color: transparent !important; }\n\n.ant-form-item-label > label {\n flex-direction: row-reverse !important;\n color: rgba(58, 53, 65, 0.5); }\n\n.ant-form-item-label\n> label.ant-form-item-required:not(.ant-form-item-required-mark-optional)::before {\n margin-left: 0.2rem !important;\n color: rgba(255, 77, 79, 0.8) !important; }\n\n.ant-picker {\n border-radius: 5px !important;\n height: 35px !important; }\n\n.space-container {\n width: 100%; }\n .space-container .ant-space-item {\n width: 100%; }\n\n.PhoneInput .PhoneInputCountry {\n border: 1px solid #d9d9d9 !important;\n border-radius: 5px !important;\n padding: 0 1rem 0 1rem; }\n\n.PhoneInput .PhoneInputInput {\n flex: 1 1;\n min-width: 0;\n border-radius: 5px !important;\n height: 40px;\n border: 1px solid #d9d9d9 !important;\n outline: none; }\n\n.filter-title {\n color: rgba(58, 53, 65, 0.8);\n font-family: 'Inter';\n font-style: normal;\n font-weight: 600;\n font-size: 0.875rem; }\n\n.ant-radio-wrapper {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 400;\n font-size: 0.875rem;\n line-height: 22px;\n color: rgba(58, 53, 65, 0.8); }\n\n.ant-list-item {\n color: rgba(58, 53, 65, 0.8); }\n\n.PhoneInput .PhoneInputInput:focus-visible,\n.PhoneInput .PhoneInputInput:hover {\n flex: 1 1;\n min-width: 0;\n border-radius: 5px !important;\n height: 40px;\n border-right: 1px solid #40a9ff !important;\n outline: 1px solid #40a9ff; }\n\n.layout-content-container {\n padding-bottom: 100px; }\n .layout-content-container .ant-btn-primary {\n background-color: #16b1ff;\n color: #ffffff;\n border: none; }\n .layout-content-container .ant-btn {\n height: 32px;\n font-weight: 500;\n font-size: 0.8rem;\n border-radius: 0.3rem;\n box-shadow: 0px 8px 16px rgba(0, 0, 0, 0.25);\n min-width: 80px;\n box-shadow: none; }\n .layout-content-container .ant-btn span {\n text-transform: uppercase; }\n\n.content-container {\n padding: 0px 20px; }\n .content-container .title-bar {\n padding: 0px 0px 30px 0px; }\n .content-container .body-title {\n color: #16b1ff;\n font-weight: 500;\n font-size: 1.2rem; }\n .content-container .body-sub-title {\n color: rgba(58, 53, 65, 0.6);\n font-weight: 400;\n font-size: 0.8rem; }\n\n.content-card {\n background-color: #ffffff;\n border-radius: 10px;\n width: 100%; }\n .content-card .action-bar {\n padding: 1.6rem 1.3rem 1.6rem 1.3rem; }\n .content-card .action-bar button {\n width: fit-content; }\n .content-card .filter-section {\n padding: 1.4rem 1.3rem 1.6rem 1.3rem;\n display: flex;\n width: 100%;\n flex-direction: row;\n align-items: center;\n justify-content: end; }\n .content-card .filter-section .search-bar {\n display: flex;\n flex-direction: row-reverse; }\n .content-card .filter-section .filter-bar {\n display: flex;\n flex-direction: row-reverse;\n margin-top: 0.8rem;\n width: 5%; }\n .content-card .filter-section .ant-input-affix-wrapper {\n border-radius: 0.313rem 0 0 0.313rem !important; }\n .content-card .filter-section .ant-input-search\n> .ant-input-group\n> .ant-input-group-addon:last-child\n.ant-input-search-button {\n padding-top: 0;\n padding-bottom: 0;\n border-radius: 0 0.313rem 0.313rem 0 !important; }\n\n.layout-content-container .ant-btn {\n min-width: 50px !important; }\n\n.table-actions-section {\n width: 100%;\n margin-bottom: 1rem; }\n\n.action-menu {\n min-width: 120px;\n color: rgba(58, 53, 65, 0.6); }\n .action-menu .action-icon {\n margin-right: 12px;\n display: flex; }\n .action-menu .anticon-edit {\n color: #16b1ff; }\n .action-menu .anticon-delete {\n color: #f25a29; }\n\n.ant-dropdown-menu {\n padding: 1rem 2rem 1rem 1rem !important;\n border-radius: 5px; }\n\n.ant-dropdown-menu-item-active {\n background-color: transparent !important; }\n\n.ant-popover-inner-content .action-menu {\n margin: -12px -16px; }\n .ant-popover-inner-content .action-menu .ant-list-item {\n padding: 11px 16px;\n justify-content: flex-start;\n cursor: pointer; }\n\n.ant-tag {\n border-radius: 20px; }\n\n.clickable {\n cursor: pointer; }\n\n.text-center {\n text-align: center; }\n\n.float-left {\n float: left; }\n\n.float-right {\n float: right; }\n\n.apexcharts-canvas {\n font-family: \"Inter\" !important; }\n\n.apexcharts-legend-text {\n font-family: \"Inter\" !important; }\n\n.ant-tag {\n padding: 1px 10px; }\n\n.flex-display {\n display: flex; }\n\n.ant-modal-footer {\n border-top: none;\n text-align: center; }\n .ant-modal-footer button {\n margin: 10px 20px;\n text-transform: uppercase;\n font-size: 0.8rem; }\n\n.ant-modal-header {\n border-radius: 15px;\n border: none; }\n\n.ant-modal-content {\n border-radius: 15px;\n border: none; }\n\n.ant-modal-header {\n border: none; }\n\n.ant-modal-body {\n text-align: center;\n color: rgba(58, 53, 65, 0.6);\n font-size: 0.8rem; }\n .ant-modal-body .ant-select-selector {\n text-align: left;\n border-radius: 5px !important;\n height: 32px; }\n .ant-modal-body .form-label {\n text-align: left; }\n .ant-modal-body .form-label .req-ast {\n color: rgba(255, 77, 79, 0.8);\n padding-left: 5px; }\n .ant-modal-body .ant-form .ant-input-password {\n padding: 6.5px 11px;\n font-size: 16px; }\n .ant-modal-body .ant-form .ant-form-item-explain-error {\n text-align: start; }\n\n.popup-header {\n text-align: center;\n color: rgba(58, 53, 65, 0.8);\n font-weight: 600;\n font-family: \"Inter\";\n font-size: 0.9rem;\n margin: 25px 20px -20px 20px; }\n .popup-header .icon {\n font-size: 4rem;\n margin-bottom: 15px;\n font-weight: 400; }\n .popup-header img {\n height: 100px; }\n\n.popup-success .icon {\n color: #5dc380; }\n\n.popup-success .ant-btn-primary {\n background: #16b1ff;\n border-radius: #16b1ff;\n border: none; }\n\n.popup-success .ant-btn-default {\n color: rgba(58, 53, 65, 0.6);\n border-color: rgba(58, 53, 65, 0.6); }\n\n.popup-success .ant-btn-primary[disabled] {\n border-color: #d9d9d9;\n background: #f5f5f5; }\n\n.popup-primary .icon {\n color: #16b1ff; }\n\n.popup-primary .ant-btn-primary {\n background: #16b1ff;\n border-radius: #16b1ff;\n border: none; }\n\n.popup-primary .ant-btn-default {\n color: rgba(58, 53, 65, 0.6);\n border-color: rgba(58, 53, 65, 0.6); }\n\n.popup-primary .ant-btn-primary[disabled] {\n border-color: #d9d9d9;\n background: #f5f5f5; }\n\n.popup-danger .icon {\n color: rgba(255, 77, 79, 0.8); }\n\n.popup-danger .ant-btn-primary {\n background: rgba(255, 77, 79, 0.8);\n border-radius: rgba(255, 77, 79, 0.8);\n border: none; }\n\n.popup-danger .ant-btn-primary[disabled] {\n border-color: #d9d9d9;\n background: #f5f5f5; }\n\n.popup-danger .ant-btn-default {\n color: rgba(58, 53, 65, 0.6);\n border-color: rgba(58, 53, 65, 0.6); }\n\n.ant-modal-footer .ant-btn {\n height: 32px;\n border-radius: 4px;\n padding: 6px 16px;\n font-weight: 500; }\n\n.ant-modal-footer .ant-btn-default {\n color: rgba(140, 140, 140, 0.7) !important;\n border-color: rgba(140, 140, 140, 0.7) !important; }\n\n.ant-tag-processing {\n color: #16b1ff;\n background: rgba(185, 226, 244, 0.4); }\n\n.filter-section input {\n font-family: 'Inter';\n font-size: 0.8rem !important; }\n\n.pull-right {\n float: right; }\n\n.disabled {\n opacity: 0.5; }\n\n.mg-left-3 {\n margin-left: 3rem; }\n\n.mg-left-2 {\n margin-left: 2rem !important; }\n\n.mg-left-1 {\n margin-left: 1rem; }\n\n.mg-top-1 {\n margin-top: 1rem; }\n\n.mg-top-2 {\n margin-top: 2rem; }\n\n.mg-bottom-1 {\n margin-bottom: 1rem !important; }\n\n.transfer-form {\n padding: 0px 15px;\n color: rgba(58, 53, 65, 0.6); }\n .transfer-form .popup-credit-input .ant-form-item-explain-error {\n width: 200px; }\n .transfer-form .info-container {\n display: flex;\n flex-direction: row;\n width: 10%;\n height: 20px;\n align-items: center;\n justify-content: start;\n margin-left: 5px; }\n .transfer-form .ant-row {\n align-items: unset; }\n .transfer-form .sub-text {\n margin-bottom: 35px;\n font-size: 0.9rem;\n font-weight: 500; }\n .transfer-form .label {\n text-align: left;\n font-size: 0.9rem;\n color: rgba(58, 53, 65, 0.6); }\n .transfer-form .seperator {\n font-size: 1.2rem;\n color: #d9d9d9; }\n .transfer-form .footer {\n margin-bottom: 0px;\n margin-top: 15px; }\n .transfer-form label {\n font-size: 0.8rem; }\n .transfer-form .ant-radio-wrapper {\n font-size: 0.9rem; }\n .transfer-form input {\n color: rgba(58, 53, 65, 0.6); }\n .transfer-form button {\n text-transform: uppercase;\n font-weight: 500; }\n\n.color-error {\n color: rgba(255, 77, 79, 0.8); }\n\n.color-primary {\n color: #16b1ff; }\n\n.ant-input-number-input {\n text-align: right; }\n\n.text-left {\n text-align: left; }\n\n.ant-form-item .ant-radio-group {\n text-align: left; }\n\n.loading-center {\n margin: auto;\n text-align: center;\n position: absolute;\n top: 50%;\n left: 50%; }\n\n.ant-tag-purple {\n color: #976ed7; }\n\n.ant-tag-orange {\n color: #ff8f56; }\n\n.ant-tag-default {\n color: rgba(58, 53, 65, 0.5); }\n\n.ant-popover-inner {\n border-radius: 4px; }\n\n.ant-input-number {\n border-radius: 5px; }\n\n.ret-icon {\n background-color: rgba(254, 241, 173, 0.5);\n color: #ff8f56; }\n\n.flag-ret-icon {\n display: flex !important;\n background-color: #f4f5fa;\n font-size: 1.1rem !important;\n padding: 7px; }\n\n.b-icon {\n vertical-align: middle; }\n\n.ant-message-notice-content {\n padding: 0px;\n border-radius: 5px; }\n .ant-message-notice-content .ant-message-custom-content {\n font-size: 0.8rem;\n border-radius: 5px;\n padding: 17px 24px; }\n .ant-message-notice-content .ant-message-error {\n color: rgba(255, 77, 79, 0.8);\n border: 1px solid rgba(255, 77, 79, 0.8); }\n .ant-message-notice-content .ant-message-success {\n color: #5bce00;\n border: 1px solid #5bce00; }\n\n.ant-select-selection-item {\n color: rgba(58, 53, 65, 0.6); }\n\n.sub-text {\n font-size: 0.9rem;\n font-weight: 500; }\n\n.search-filter {\n margin-right: 15px; }\n\n.mg-bottom-0 {\n margin-bottom: 0px; }\n\n.padding-bottom-0 {\n padding-bottom: 0px; }\n\n.ellipsis-overflow {\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 1;\n -webkit-box-orient: vertical; }\n\n.nextline-overflow {\n overflow-wrap: break-word; }\n\n.ant-message {\n width: 50%;\n right: 0px;\n left: auto;\n min-width: 400px; }\n";
1144
+ var css_248z$r = "body {\n background-color: #f4f5fa;\n font-family: \"Inter\";\n font-weight: 400; }\n body .ant-menu {\n background-color: #f4f5fa; }\n body .ant-layout-header {\n background-color: #f4f5fa; }\n body .ant-layout {\n background-color: #f4f5fa; }\n body .ant-menu-submenu .ant-menu {\n background-color: #f4f5fa; }\n body .ant-menu-item {\n background-color: #f4f5fa; }\n body .ant-menu-sub {\n background-color: #f4f5fa; }\n body .ant-table-content {\n font-family: \"Inter\"; }\n body .ant-input {\n border-radius: 5px !important; }\n body .ant-btn {\n border-radius: 5px !important; }\n body .ant-input-group-addon:first-child {\n border-radius: 5px !important; }\n body .ant-input-group .ant-input {\n width: 99% !important; }\n body .ant-radio-group {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between; }\n body .ant-radio-group-large .ant-radio-button-wrapper {\n font-size: 0.8rem;\n width: 25%;\n border-radius: 5px !important; }\n body .ant-upload-list-picture .ant-upload-list-item-error,\n body .ant-upload-list-picture-card .ant-upload-list-item-error {\n border-color: #40a9ff;\n border-radius: 5px;\n height: 40px; }\n body .ant-upload-list-picture .ant-upload-list-item-error .ant-upload-list-item-name,\n body .ant-upload-list-picture-card .ant-upload-list-item-error .ant-upload-list-item-name {\n color: #40a9ff !important; }\n body .ant-upload-list-item-error .ant-upload-list-item-card-actions .anticon {\n color: #40a9ff; }\n body .ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input,\n body .ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:hover {\n border-color: #d9d9d9 !important; }\n body .ant-input-group-wrapper-status-error .ant-input-group-addon {\n border-color: #d9d9d9 !important; }\n body .ant-form-item-explain-error {\n font-size: 13px;\n color: rgba(255, 77, 79, 0.8); }\n body .ant-table-thead\n> tr\n> th:not(:last-child):not(.ant-table-selection-column):not(.ant-table-row-expand-icon-cell):not([colspan])::before {\n background-color: transparent !important; }\n body .ant-form-item-label > label {\n flex-direction: row-reverse !important;\n color: rgba(58, 53, 65, 0.5); }\n body .ant-form-item-label\n> label.ant-form-item-required:not(.ant-form-item-required-mark-optional)::before {\n margin-left: 0.2rem !important;\n color: rgba(255, 77, 79, 0.8) !important; }\n body .ant-picker {\n border-radius: 5px !important;\n height: 35px !important; }\n body .space-container {\n width: 100%; }\n body .space-container .ant-space-item {\n width: 100%; }\n body .PhoneInput .PhoneInputCountry {\n border: 1px solid #d9d9d9 !important;\n border-radius: 5px !important;\n padding: 0 1rem 0 1rem; }\n body .PhoneInput .PhoneInputInput {\n flex: 1 1;\n min-width: 0;\n border-radius: 5px !important;\n height: 40px;\n border: 1px solid #d9d9d9 !important;\n outline: none; }\n body .filter-title {\n color: rgba(58, 53, 65, 0.8);\n font-family: 'Inter';\n font-style: normal;\n font-weight: 600;\n font-size: 0.875rem; }\n body .ant-radio-wrapper {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 400;\n font-size: 0.875rem;\n line-height: 22px;\n color: rgba(58, 53, 65, 0.8); }\n body .ant-list-item {\n color: rgba(58, 53, 65, 0.8); }\n body .PhoneInput .PhoneInputInput:focus-visible,\n body .PhoneInput .PhoneInputInput:hover {\n flex: 1 1;\n min-width: 0;\n border-radius: 5px !important;\n height: 40px;\n border-right: 1px solid #40a9ff !important;\n outline: 1px solid #40a9ff; }\n body .layout-content-container {\n padding-bottom: 100px; }\n body .layout-content-container .ant-btn-primary {\n background-color: #16b1ff;\n color: #ffffff;\n border: none; }\n body .layout-content-container .ant-btn {\n height: 32px;\n font-weight: 500;\n font-size: 0.8rem;\n border-radius: 0.3rem;\n box-shadow: 0px 8px 16px rgba(0, 0, 0, 0.25);\n min-width: 80px;\n box-shadow: none; }\n body .layout-content-container .ant-btn span {\n text-transform: uppercase; }\n body .content-container {\n padding: 0px 20px; }\n body .content-container .title-bar {\n padding: 0px 0px 30px 0px; }\n body .content-container .body-title {\n color: #16b1ff;\n font-weight: 500;\n font-size: 1.2rem; }\n body .content-container .body-sub-title {\n color: rgba(58, 53, 65, 0.6);\n font-weight: 400;\n font-size: 0.8rem; }\n body .content-card {\n background-color: #ffffff;\n border-radius: 10px;\n width: 100%; }\n body .content-card .action-bar {\n padding: 1.6rem 1.3rem 1.6rem 1.3rem; }\n body .content-card .action-bar button {\n width: fit-content; }\n body .content-card .filter-section {\n padding: 1.4rem 1.3rem 1.6rem 1.3rem;\n display: flex;\n width: 100%;\n flex-direction: row;\n align-items: center;\n justify-content: end; }\n body .content-card .filter-section .search-bar {\n display: flex;\n flex-direction: row-reverse; }\n body .content-card .filter-section .filter-bar {\n display: flex;\n flex-direction: row-reverse;\n margin-top: 0.8rem;\n width: 5%; }\n body .content-card .filter-section .ant-input-affix-wrapper {\n border-radius: 0.313rem 0 0 0.313rem !important; }\n body .content-card .filter-section .ant-input-search\n> .ant-input-group\n> .ant-input-group-addon:last-child\n.ant-input-search-button {\n padding-top: 0;\n padding-bottom: 0;\n border-radius: 0 0.313rem 0.313rem 0 !important; }\n body .layout-content-container .ant-btn {\n min-width: 50px !important; }\n body .table-actions-section {\n width: 100%;\n margin-bottom: 1rem; }\n body .action-menu {\n min-width: 120px;\n color: rgba(58, 53, 65, 0.6); }\n body .action-menu .action-icon {\n margin-right: 12px;\n display: flex; }\n body .action-menu .anticon-edit {\n color: #16b1ff; }\n body .action-menu .anticon-delete {\n color: #f25a29; }\n body .ant-dropdown-menu {\n padding: 1rem 2rem 1rem 1rem !important;\n border-radius: 5px; }\n body .ant-dropdown-menu-item-active {\n background-color: transparent !important; }\n body .ant-popover-inner-content .action-menu {\n margin: -12px -16px; }\n body .ant-popover-inner-content .action-menu .ant-list-item {\n padding: 11px 16px;\n justify-content: flex-start;\n cursor: pointer; }\n body .ant-tag {\n border-radius: 20px; }\n body .clickable {\n cursor: pointer; }\n body .text-center {\n text-align: center; }\n body .float-left {\n float: left; }\n body .float-right {\n float: right; }\n body .apexcharts-canvas {\n font-family: \"Inter\" !important; }\n body .apexcharts-legend-text {\n font-family: \"Inter\" !important; }\n body .ant-tag {\n padding: 1px 10px; }\n body .flex-display {\n display: flex; }\n body .ant-modal-footer {\n border-top: none;\n text-align: center; }\n body .ant-modal-footer button {\n margin: 10px 20px;\n text-transform: uppercase;\n font-size: 0.8rem; }\n body .ant-modal-header {\n border-radius: 15px;\n border: none; }\n body .ant-modal-content {\n border-radius: 15px;\n border: none; }\n body .ant-modal-header {\n border: none; }\n body .ant-modal-body {\n text-align: center;\n color: rgba(58, 53, 65, 0.6);\n font-size: 0.8rem; }\n body .ant-modal-body .ant-select-selector {\n text-align: left;\n border-radius: 5px !important;\n height: 32px; }\n body .ant-modal-body .form-label {\n text-align: left; }\n body .ant-modal-body .form-label .req-ast {\n color: rgba(255, 77, 79, 0.8);\n padding-left: 5px; }\n body .ant-modal-body .ant-form .ant-input-password {\n padding: 6.5px 11px;\n font-size: 16px; }\n body .ant-modal-body .ant-form .ant-form-item-explain-error {\n text-align: start; }\n body .popup-header {\n text-align: center;\n color: rgba(58, 53, 65, 0.8);\n font-weight: 600;\n font-family: \"Inter\";\n font-size: 0.9rem;\n margin: 25px 20px -20px 20px; }\n body .popup-header .icon {\n font-size: 4rem;\n margin-bottom: 15px;\n font-weight: 400; }\n body .popup-header img {\n height: 100px; }\n body .popup-success .icon {\n color: #5dc380; }\n body .popup-success .ant-btn-primary {\n background: #16b1ff;\n border-radius: #16b1ff;\n border: none; }\n body .popup-success .ant-btn-default {\n color: rgba(58, 53, 65, 0.6);\n border-color: rgba(58, 53, 65, 0.6); }\n body .popup-success .ant-btn-primary[disabled] {\n border-color: #d9d9d9;\n background: #f5f5f5; }\n body .popup-primary .icon {\n color: #16b1ff; }\n body .popup-primary .ant-btn-primary {\n background: #16b1ff;\n border-radius: #16b1ff;\n border: none; }\n body .popup-primary .ant-btn-default {\n color: rgba(58, 53, 65, 0.6);\n border-color: rgba(58, 53, 65, 0.6); }\n body .popup-primary .ant-btn-primary[disabled] {\n border-color: #d9d9d9;\n background: #f5f5f5; }\n body .popup-danger .icon {\n color: rgba(255, 77, 79, 0.8); }\n body .popup-danger .ant-btn-primary {\n background: rgba(255, 77, 79, 0.8);\n border-radius: rgba(255, 77, 79, 0.8);\n border: none; }\n body .popup-danger .ant-btn-primary[disabled] {\n border-color: #d9d9d9;\n background: #f5f5f5; }\n body .popup-danger .ant-btn-default {\n color: rgba(58, 53, 65, 0.6);\n border-color: rgba(58, 53, 65, 0.6); }\n body .ant-modal-footer .ant-btn {\n height: 32px;\n border-radius: 4px;\n padding: 6px 16px;\n font-weight: 500; }\n body .ant-modal-footer .ant-btn-default {\n color: rgba(140, 140, 140, 0.7) !important;\n border-color: rgba(140, 140, 140, 0.7) !important; }\n body .ant-tag-processing {\n color: #16b1ff;\n background: rgba(185, 226, 244, 0.4); }\n body .filter-section input {\n font-family: 'Inter';\n font-size: 0.8rem !important; }\n body .pull-right {\n float: right; }\n body .disabled {\n opacity: 0.5; }\n body .mg-left-3 {\n margin-left: 3rem; }\n body .mg-left-2 {\n margin-left: 2rem !important; }\n body .mg-left-1 {\n margin-left: 1rem; }\n body .mg-top-1 {\n margin-top: 1rem; }\n body .mg-top-2 {\n margin-top: 2rem; }\n body .mg-bottom-1 {\n margin-bottom: 1rem !important; }\n body .transfer-form {\n padding: 0px 15px;\n color: rgba(58, 53, 65, 0.6); }\n body .transfer-form .popup-credit-input .ant-form-item-explain-error {\n width: 200px; }\n body .transfer-form .ant-row {\n align-items: unset; }\n body .transfer-form .sub-text {\n margin-bottom: 35px;\n font-size: 0.9rem;\n font-weight: 500; }\n body .transfer-form .label {\n text-align: left;\n font-size: 0.9rem;\n color: rgba(58, 53, 65, 0.6); }\n body .transfer-form .seperator {\n font-size: 1.2rem;\n color: #d9d9d9; }\n body .transfer-form .footer {\n margin-bottom: 0px;\n margin-top: 15px; }\n body .transfer-form label {\n font-size: 0.8rem; }\n body .transfer-form .ant-radio-wrapper {\n font-size: 0.9rem; }\n body .transfer-form input {\n color: rgba(58, 53, 65, 0.6); }\n body .transfer-form button {\n text-transform: uppercase;\n font-weight: 500; }\n body .color-error {\n color: rgba(255, 77, 79, 0.8); }\n body .color-primary {\n color: #16b1ff; }\n body .ant-input-number-input {\n text-align: right; }\n body .text-left {\n text-align: left; }\n body .ant-form-item .ant-radio-group {\n text-align: left; }\n body .loading-center {\n margin: auto;\n text-align: center;\n position: absolute;\n top: 50%;\n left: 50%; }\n body .ant-tag-purple {\n color: #976ed7; }\n body .ant-tag-orange {\n color: #ff8f56; }\n body .ant-tag-default {\n color: rgba(58, 53, 65, 0.5); }\n body .ant-popover-inner {\n border-radius: 4px; }\n body .ant-input-number {\n border-radius: 5px; }\n body .ret-icon {\n background-color: rgba(254, 241, 173, 0.5);\n color: #ff8f56; }\n body .flag-ret-icon {\n display: flex !important;\n background-color: #f4f5fa;\n font-size: 1.1rem !important;\n padding: 7px; }\n body .b-icon {\n vertical-align: middle; }\n body .ant-message-notice-content {\n padding: 0px;\n border-radius: 5px; }\n body .ant-message-notice-content .ant-message-custom-content {\n font-size: 0.8rem;\n border-radius: 5px;\n padding: 17px 24px; }\n body .ant-message-notice-content .ant-message-error {\n color: rgba(255, 77, 79, 0.8);\n border: 1px solid rgba(255, 77, 79, 0.8); }\n body .ant-message-notice-content .ant-message-success {\n color: #5bce00;\n border: 1px solid #5bce00; }\n body .ant-select-selection-item {\n color: rgba(58, 53, 65, 0.6); }\n body .info-container {\n display: flex;\n flex-direction: row;\n width: 10%;\n height: 20px;\n align-items: center;\n justify-content: start;\n margin-left: 5px; }\n body .ant-row {\n align-items: unset; }\n body .sub-text {\n font-size: 0.9rem;\n font-weight: 500; }\n body .search-filter {\n margin-right: 15px; }\n body .mg-bottom-0 {\n margin-bottom: 0px; }\n body .padding-bottom-0 {\n padding-bottom: 0px; }\n body .ellipsis-overflow {\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 1;\n -webkit-box-orient: vertical; }\n body .nextline-overflow {\n overflow-wrap: break-word; }\n body .ant-message {\n width: 50%;\n right: 0px;\n left: auto;\n min-width: 400px; }\n";
841
1145
  styleInject(css_248z$r);
842
1146
 
843
1147
  var UserManagementColumns;
@@ -909,6 +1213,11 @@ var InvestmentCreationType;
909
1213
  InvestmentCreationType["EXISTING"] = "Existing";
910
1214
  InvestmentCreationType["NEW"] = "New";
911
1215
  })(InvestmentCreationType || (InvestmentCreationType = {}));
1216
+ var InvestmentOwnershipType;
1217
+ (function (InvestmentOwnershipType) {
1218
+ InvestmentOwnershipType["PROJECT"] = "Project";
1219
+ InvestmentOwnershipType["NATIONAL"] = "National";
1220
+ })(InvestmentOwnershipType || (InvestmentOwnershipType = {}));
912
1221
  var InvestmentStream;
913
1222
  (function (InvestmentStream) {
914
1223
  InvestmentStream["CLIMATE_FINANCE"] = "ClimateFinance";
@@ -2027,7 +2336,7 @@ var NdcActionStatus;
2027
2336
  NdcActionStatus["PENDING"] = "Pending";
2028
2337
  NdcActionStatus["APPROVED"] = "Approved";
2029
2338
  })(NdcActionStatus || (NdcActionStatus = {}));
2030
- var getNdcActionStatusEnumVal$1 = function (value) {
2339
+ var getNdcActionStatusEnumVal = function (value) {
2031
2340
  var index = Object.keys(NdcActionStatus).indexOf(value);
2032
2341
  if (index < 0) {
2033
2342
  return value;
@@ -2035,7 +2344,7 @@ var getNdcActionStatusEnumVal$1 = function (value) {
2035
2344
  return Object.values(NdcActionStatus)[index];
2036
2345
  };
2037
2346
  var getNdcStatusTagType = function (status) {
2038
- switch (getNdcActionStatusEnumVal$1(status)) {
2347
+ switch (getNdcActionStatusEnumVal(status)) {
2039
2348
  case NdcActionStatus.PENDING:
2040
2349
  return "processing";
2041
2350
  case NdcActionStatus.APPROVED:
@@ -5734,7 +6043,7 @@ var ProgrammeCertify = /** @class */ (function () {
5734
6043
 
5735
6044
  var AddNewCompanyComponent = function (props) {
5736
6045
  var _a;
5737
- var t = props.t, onNavigateToCompanyManagement = props.onNavigateToCompanyManagement, maximumImageSize = props.maximumImageSize, useConnection = props.useConnection, useUserContext = props.useUserContext, useLocation = props.useLocation, regionField = props.regionField, isGuest = props.isGuest, onNavigateToHome = props.onNavigateToHome, systemType = props.systemType;
6046
+ var t = props.t, onNavigateToCompanyManagement = props.onNavigateToCompanyManagement, maximumImageSize = props.maximumImageSize, useLocation = props.useLocation, regionField = props.regionField, isGuest = props.isGuest, onNavigateToHome = props.onNavigateToHome, systemType = props.systemType;
5738
6047
  var formOne = Form.useForm()[0];
5739
6048
  var formTwo = Form.useForm()[0];
5740
6049
  var _b = useState(), stepOneData = _b[0], setStepOneData = _b[1];
@@ -6523,7 +6832,7 @@ var css_248z$q = ".company-profile {\n padding: 0px 50px; }\n .company-profile
6523
6832
  styleInject(css_248z$q);
6524
6833
 
6525
6834
  var CompanyProfileComponent = function (props) {
6526
- var t = props.t, useAbilityContext = props.useAbilityContext, useLocation = props.useLocation, useConnection = props.useConnection, onNavigateToCompanyManagement = props.onNavigateToCompanyManagement, onNavigateToCompanyEdit = props.onNavigateToCompanyEdit, regionField = props.regionField, systemType = props.systemType;
6835
+ var t = props.t, useAbilityContext = props.useAbilityContext, useLocation = props.useLocation, onNavigateToCompanyManagement = props.onNavigateToCompanyManagement, onNavigateToCompanyEdit = props.onNavigateToCompanyEdit, regionField = props.regionField, systemType = props.systemType;
6527
6836
  var _a = useConnection(), get = _a.get, put = _a.put, post = _a.post;
6528
6837
  var _b = useState(undefined), companyDetails = _b[0], setCompanyDetails = _b[1];
6529
6838
  var _c = useState(undefined), userDetails = _c[0], setUserDetails = _c[1];
@@ -6956,7 +7265,7 @@ styleInject(css_248z$p);
6956
7265
 
6957
7266
  var Search$1 = Input.Search;
6958
7267
  var ProgrammeManagementComponent = function (props) {
6959
- var t = props.t, visibleColumns = props.visibleColumns, useUserContext = props.useUserContext, useConnection = props.useConnection, onNavigateToProgrammeView = props.onNavigateToProgrammeView, onClickAddProgramme = props.onClickAddProgramme, enableAddProgramme = props.enableAddProgramme, useAbilityContext = props.useAbilityContext;
7268
+ var t = props.t, visibleColumns = props.visibleColumns, onNavigateToProgrammeView = props.onNavigateToProgrammeView, onClickAddProgramme = props.onClickAddProgramme, enableAddProgramme = props.enableAddProgramme, useAbilityContext = props.useAbilityContext;
6960
7269
  var _a = useConnection(); _a.get; _a.delete; var post = _a.post;
6961
7270
  var _b = useState(), totalProgramme = _b[0], setTotalProgramme = _b[1];
6962
7271
  var _c = useState(false), loading = _c[0], setLoading = _c[1];
@@ -7341,7 +7650,7 @@ var ProgrammeManagementComponent = function (props) {
7341
7650
  React.createElement("div", { className: "filter-section" },
7342
7651
  React.createElement("div", { className: "search-filter" },
7343
7652
  React.createElement(Checkbox, { className: "label", onChange: function (v) {
7344
- if (userInfoState.companyRole === CompanyRole.MINISTRY) {
7653
+ if ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.MINISTRY) {
7345
7654
  if (v.target.checked) {
7346
7655
  setMinistryLevelFilter(true);
7347
7656
  }
@@ -7358,7 +7667,7 @@ var ProgrammeManagementComponent = function (props) {
7358
7667
  }
7359
7668
  : undefined);
7360
7669
  }
7361
- } }, userInfoState.companyRole === CompanyRole.MINISTRY
7670
+ } }, (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.MINISTRY
7362
7671
  ? t("view:ministryLevel")
7363
7672
  : t("view:seeMine"))),
7364
7673
  React.createElement("div", { className: "search-bar" },
@@ -13139,7 +13448,7 @@ var sectoralScopes = {
13139
13448
  };
13140
13449
  var ProgrammeCreationComponent = function (props) {
13141
13450
  var _a, _b, _c;
13142
- var useUserContext = props.useUserContext, useConnection = props.useConnection, useLocation = props.useLocation, onNavigateToProgrammeView = props.onNavigateToProgrammeView, translator = props.translator;
13451
+ var useLocation = props.useLocation, onNavigateToProgrammeView = props.onNavigateToProgrammeView, translator = props.translator;
13143
13452
  var t = translator.t;
13144
13453
  var state = useLocation().state;
13145
13454
  var formOne = Form.useForm()[0];
@@ -14204,7 +14513,7 @@ var ChangePasswordModel = function (props) {
14204
14513
 
14205
14514
  var AddNewUserComponent = function (props) {
14206
14515
  var _a, _b, _c, _d, _e, _f;
14207
- var t = props.t, onNavigateToUserManagement = props.onNavigateToUserManagement, onNavigateLogin = props.onNavigateLogin, useConnection = props.useConnection, useUserContext = props.useUserContext, useLocation = props.useLocation, useAbilityContext = props.useAbilityContext, themeColor = props.themeColor;
14516
+ var t = props.t, onNavigateToUserManagement = props.onNavigateToUserManagement, onNavigateLogin = props.onNavigateLogin, useLocation = props.useLocation, useAbilityContext = props.useAbilityContext, themeColor = props.themeColor;
14208
14517
  var _g = useConnection(), post = _g.post, put = _g.put, del = _g.delete, get = _g.get;
14209
14518
  var formOne = Form.useForm()[0];
14210
14519
  var state = useLocation().state;
@@ -14622,7 +14931,7 @@ var LanguageSelection = function (props) {
14622
14931
  };
14623
14932
 
14624
14933
  var UserProfileComponent = function (props) {
14625
- var t = props.t, i18n = props.i18n, useConnection = props.useConnection, onNavigateUpdateUser = props.onNavigateUpdateUser, onNavigateLogin = props.onNavigateLogin, useUserContext = props.useUserContext;
14934
+ var t = props.t, i18n = props.i18n, onNavigateUpdateUser = props.onNavigateUpdateUser, onNavigateLogin = props.onNavigateLogin;
14626
14935
  var get = useConnection().get;
14627
14936
  var _a = useState(undefined), organisationDetails = _a[0], setOrganisationDetails = _a[1];
14628
14937
  var _b = useState(undefined), userDetails = _b[0], setUserDetails = _b[1];
@@ -14790,7 +15099,7 @@ styleInject(css_248z$k);
14790
15099
 
14791
15100
  var Search = Input.Search;
14792
15101
  var UserManagementComponent = function (props) {
14793
- var t = props.t, useAbilityContext = props.useAbilityContext, useConnection = props.useConnection, visibleColumns = props.visibleColumns, onNavigateToUpdateUser = props.onNavigateToUpdateUser, onClickAddUser = props.onClickAddUser, userInfoState = props.userInfoState;
15102
+ var t = props.t, useAbilityContext = props.useAbilityContext, visibleColumns = props.visibleColumns, onNavigateToUpdateUser = props.onNavigateToUpdateUser, onClickAddUser = props.onClickAddUser;
14794
15103
  Form.useForm()[0];
14795
15104
  var _a = useConnection(), post = _a.post, del = _a.delete;
14796
15105
  var _b = useState(), totalUser = _b[0], setTotalUser = _b[1];
@@ -14812,6 +15121,7 @@ var UserManagementComponent = function (props) {
14812
15121
  var _s = useState(""), errorMsg = _s[0], setErrorMsg = _s[1];
14813
15122
  var _t = useState(false), openDeleteConfirmationModal = _t[0], setOpenDeleteConfirmationModal = _t[1];
14814
15123
  var ability = useAbilityContext();
15124
+ var userInfoState = useUserContext().userInfoState;
14815
15125
  document.addEventListener("mousedown", function (event) {
14816
15126
  var userFilterArea1 = document.querySelector(".filter-bar");
14817
15127
  var userFilterArea2 = document.querySelector(".filter-dropdown");
@@ -15324,7 +15634,7 @@ var UserManagementComponent = function (props) {
15324
15634
  React.createElement(UserActionConfirmationModel, { t: t, actionInfo: actionInfo, onActionConfirmed: handleOk, onActionCanceled: handleCancel, openModal: openDeleteConfirmationModal, errorMsg: errorMsg, loading: loading })));
15325
15635
  };
15326
15636
 
15327
- var css_248z$j = ".steps-actions {\n display: flex;\n flex-direction: row-reverse;\n margin-right: 1rem;\n justify-content: flex-start; }\n\n.investment-title-bar {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n padding: 0px 0px 30px 0px; }\n .investment-title-bar .title {\n display: flex;\n flex-direction: column;\n justify-content: space-between; }\n .investment-title-bar .actions {\n display: flex;\n align-items: center;\n justify-content: flex-end; }\n .investment-title-bar .flex-display {\n margin-left: 15px; }\n\n.ownership-container {\n padding: 15px 0px; }\n .ownership-container .label {\n color: rgba(58, 53, 65, 0.5); }\n\n.separator {\n padding: 5px;\n color: #d8d8d8; }\n\n.role-group .ant-col-13 {\n max-width: 320px; }\n\n.role-group .condition-radio-container {\n width: 48%;\n text-align: center; }\n .role-group .condition-radio-container .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled) {\n color: #ffffff !important;\n border-color: #9155fd !important;\n box-shadow: none;\n max-width: 200px; }\n\n.role-group .ant-radio-button-wrapper::before {\n background-color: transparent; }\n\n.role-group .anticon {\n margin-right: 0.5rem; }\n\n.role-group .ant-radio-button-wrapper {\n border: 1px solid #d9d9d9;\n color: rgba(140, 140, 140, 0.7) !important;\n width: 100% !important; }\n\n.role-group .condition-radio {\n width: 100%;\n text-transform: uppercase; }\n .role-group .condition-radio .ant-radio-button-checked {\n background: #9155fd;\n color: #ffffff; }\n\n.role-group .role-icons {\n margin-right: 5px; }\n\n.investment-management .role-icon {\n padding: 0.5rem 0.6rem; }\n\n.investment-management .ant-tag {\n border: none; }\n\n.investment-management .ant-checkbox-checked .ant-checkbox-input[value='Rejected'] + .ant-checkbox-inner {\n background-color: rgba(237, 77, 71, 0.6);\n border: none; }\n\n.investment-management .ant-checkbox-checked .ant-checkbox-input[value='Cancelled'] + .ant-checkbox-inner {\n background-color: rgba(58, 53, 65, 0.4);\n border: none; }\n\n.investment-management .ant-checkbox-checked .ant-checkbox-input[value='Accepted'] + .ant-checkbox-inner {\n background-color: #16b1ff;\n border: none; }\n\n.investment-management .ant-checkbox-checked .ant-checkbox-input[value='Pending'] + .ant-checkbox-inner {\n background-color: rgba(118, 195, 39, 0.6);\n border: none; }\n\n.investment-management .ant-checkbox-checked .ant-checkbox-input[value='Recognised'] + .ant-checkbox-inner {\n background-color: #976ed7;\n border: none; }\n\n.investment-management .ant-checkbox-checked .ant-checkbox-input[value='NotRecognised'] + .ant-checkbox-inner {\n background-color: #ffa070;\n border: none; }\n";
15637
+ var css_248z$j = ".steps-actions {\n display: flex;\n flex-direction: row-reverse;\n margin-right: 1rem;\n justify-content: flex-start; }\n\n.details-part-two .ant-input-number {\n width: 50%;\n margin-left: 15px; }\n\n.investment-title-bar {\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n padding: 0px 0px 30px 0px; }\n .investment-title-bar .title {\n display: flex;\n flex-direction: column;\n justify-content: space-between; }\n .investment-title-bar .actions {\n display: flex;\n align-items: center;\n justify-content: flex-end; }\n .investment-title-bar .flex-display {\n margin-left: 15px; }\n\n.ownership-container {\n padding: 15px 0px; }\n .ownership-container .label {\n color: rgba(58, 53, 65, 0.5); }\n\n.separator {\n padding: 5px;\n color: #d8d8d8; }\n\n.role-group .ant-col-13 {\n max-width: 320px; }\n\n.role-group .condition-radio-container {\n width: 48%;\n text-align: center; }\n .role-group .condition-radio-container .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled) {\n color: #ffffff !important;\n border-color: #9155fd !important;\n box-shadow: none;\n max-width: 200px; }\n\n.role-group .ant-radio-button-wrapper::before {\n background-color: transparent; }\n\n.role-group .anticon {\n margin-right: 0.5rem; }\n\n.role-group .ant-radio-button-wrapper {\n border: 1px solid #d9d9d9;\n color: rgba(140, 140, 140, 0.7) !important;\n width: 100% !important; }\n\n.role-group .condition-radio {\n width: 100%;\n text-transform: uppercase; }\n .role-group .condition-radio .ant-radio-button-checked {\n background: #9155fd;\n color: #ffffff; }\n\n.role-group .role-icons {\n margin-right: 5px; }\n\n.investment-management .role-icon {\n padding: 0.5rem 0.6rem; }\n\n.investment-management .ant-tag {\n border: none; }\n\n.investment-management .ant-checkbox-checked .ant-checkbox-input[value=\"Rejected\"] + .ant-checkbox-inner {\n background-color: rgba(237, 77, 71, 0.6);\n border: none; }\n\n.investment-management .ant-checkbox-checked .ant-checkbox-input[value=\"Cancelled\"] + .ant-checkbox-inner {\n background-color: rgba(58, 53, 65, 0.4);\n border: none; }\n\n.investment-management .ant-checkbox-checked .ant-checkbox-input[value=\"Accepted\"] + .ant-checkbox-inner {\n background-color: #16b1ff;\n border: none; }\n\n.investment-management .ant-checkbox-checked .ant-checkbox-input[value=\"Pending\"] + .ant-checkbox-inner {\n background-color: rgba(118, 195, 39, 0.6);\n border: none; }\n\n.investment-management .ant-checkbox-checked .ant-checkbox-input[value=\"Recognised\"] + .ant-checkbox-inner {\n background-color: #976ed7;\n border: none; }\n\n.investment-management .ant-checkbox-checked .ant-checkbox-input[value=\"NotRecognised\"] + .ant-checkbox-inner {\n background-color: #ffa070;\n border: none; }\n";
15328
15638
  styleInject(css_248z$j);
15329
15639
 
15330
15640
  var Loading = function () {
@@ -15332,21 +15642,34 @@ var Loading = function () {
15332
15642
  };
15333
15643
 
15334
15644
  var InvestmentCreationComponent = function (props) {
15335
- var t = props.t, useConnection = props.useConnection, userInfoState = props.userInfoState, useLocation = props.useLocation, onNavigateToProgrammeManagementView = props.onNavigateToProgrammeManagementView, onNavigateToProgrammeView = props.onNavigateToProgrammeView;
15645
+ var t = props.t, useLocation = props.useLocation, onNavigateToProgrammeManagementView = props.onNavigateToProgrammeManagementView, onNavigateToProgrammeView = props.onNavigateToProgrammeView, onNavigateToInvestmentManagementView = props.onNavigateToInvestmentManagementView;
15336
15646
  var state = useLocation().state;
15337
15647
  var _a = useState(), data = _a[0], setData = _a[1];
15648
+ var _b = useState({}), companyNames = _b[0], setCompanyNames = _b[1];
15649
+ var _c = useState({}); _c[0]; var setUserOrganization = _c[1];
15650
+ var _d = useState({}), investmentNames = _d[0], setInvestmentNames = _d[1];
15651
+ var _e = useState(), projectData = _e[0], setProjectData = _e[1];
15652
+ var _f = useState(), investmentData = _f[0], setInvestmentData = _f[1];
15653
+ var _g = useState([]), allProjectData = _g[0], setAllProjectData = _g[1];
15338
15654
  var formOne = Form.useForm()[0];
15339
15655
  var formTwo = Form.useForm()[0];
15340
15656
  var post = useConnection().post;
15341
- var _b = useState(false), loading = _b[0], setLoading = _b[1];
15342
- var _c = useState("New"), typeCreation = _c[0], setTypeCreation = _c[1];
15343
- var _d = useState(false), loadingList = _d[0], setLoadingList = _d[1];
15344
- var _e = useState(0), current = _e[0], setCurrent = _e[1];
15345
- var _f = useState(0), currentPercTotal = _f[0], setCurrentPercTotal = _f[1];
15346
- var _g = useState([]), organisationsList = _g[0], setOrganisationList = _g[1];
15347
- var _h = useState([]), instrument = _h[0], setInstrument = _h[1];
15348
- var _j = useState(), stepOneData = _j[0], setStepOneData = _j[1];
15349
- var _k = useState(), govData = _k[0], setGovData = _k[1];
15657
+ var _h = useState(false), loading = _h[0], setLoading = _h[1];
15658
+ var _j = useState("New"), typeCreation = _j[0], setTypeCreation = _j[1];
15659
+ var _k = useState(InvestmentOwnershipType.PROJECT), investmentOwnershipType = _k[0], setInvestmentOwnershipType = _k[1];
15660
+ var _l = useState(false), loadingList = _l[0], setLoadingList = _l[1];
15661
+ var _m = useState(false), loadingInvestment = _m[0], setLoadingInvestment = _m[1];
15662
+ var _o = useState(false), loadingProgData = _o[0], setLoadingProgData = _o[1];
15663
+ var _p = useState(0), current = _p[0], setCurrent = _p[1];
15664
+ var _q = useState(0), currentPercTotal = _q[0], setCurrentPercTotal = _q[1];
15665
+ var _r = useState([]), organisationsList = _r[0], setOrganisationList = _r[1];
15666
+ var _s = useState([]), nationalInvestmentList = _s[0], setNationalInvestmentList = _s[1];
15667
+ var _t = useState([]), instrument = _t[0], setInstrument = _t[1];
15668
+ var _u = useState(), stepOneData = _u[0], setStepOneData = _u[1];
15669
+ var _v = useState(), govData = _v[0], setGovData = _v[1];
15670
+ var userInfoState = useUserContext().userInfoState;
15671
+ var _w = useState([]), ministrySectoralScope = _w[0], setMinistrySectoralScope = _w[1];
15672
+ var _x = useState({}), prevInvestor = _x[0], setPrevInvestor = _x[1];
15350
15673
  var instrumentOptions = Object.keys(Instrument).map(function (k, index) { return ({
15351
15674
  label: addSpaces(Object.values(Instrument)[index]),
15352
15675
  value: Object.values(Instrument)[index],
@@ -15397,52 +15720,215 @@ var InvestmentCreationComponent = function (props) {
15397
15720
  }
15398
15721
  });
15399
15722
  }); };
15400
- var getOrganisationsDetails = function () { return __awaiter(void 0, void 0, void 0, function () {
15401
- var filterAnd, _i, _a, c, response, error_2;
15723
+ var getAllProjectData = function () { return __awaiter(void 0, void 0, void 0, function () {
15724
+ var response, error_2;
15725
+ return __generator(this, function (_a) {
15726
+ switch (_a.label) {
15727
+ case 0:
15728
+ setLoadingProgData(true);
15729
+ _a.label = 1;
15730
+ case 1:
15731
+ _a.trys.push([1, 5, 6, 7]);
15732
+ if (!data) return [3 /*break*/, 4];
15733
+ if (!!(data === null || data === void 0 ? void 0 : data.programmeId)) return [3 /*break*/, 3];
15734
+ console.log("data non existing", data);
15735
+ console.log("getting all Project data");
15736
+ return [4 /*yield*/, post("national/programme/query", {
15737
+ page: 1,
15738
+ size: 100,
15739
+ filterAnd: [
15740
+ {
15741
+ key: "currentStage",
15742
+ operation: "!=",
15743
+ value: ProgrammeStageUnified.Rejected,
15744
+ },
15745
+ ],
15746
+ })];
15747
+ case 2:
15748
+ response = _a.sent();
15749
+ if (response.data) {
15750
+ setAllProjectData(response === null || response === void 0 ? void 0 : response.data);
15751
+ console.log("all Project data", response === null || response === void 0 ? void 0 : response.data);
15752
+ }
15753
+ return [3 /*break*/, 4];
15754
+ case 3:
15755
+ console.log("setting current Project data");
15756
+ setAllProjectData([data]);
15757
+ _a.label = 4;
15758
+ case 4: return [3 /*break*/, 7];
15759
+ case 5:
15760
+ error_2 = _a.sent();
15761
+ console.log("Error in getting all programme data", error_2);
15762
+ return [3 /*break*/, 7];
15763
+ case 6:
15764
+ setLoadingProgData(false);
15765
+ return [7 /*endfinally*/];
15766
+ case 7: return [2 /*return*/];
15767
+ }
15768
+ });
15769
+ }); };
15770
+ var setSelectedProgramme = function (value) { return __awaiter(void 0, void 0, void 0, function () {
15771
+ var _i, allProjectData_1, obj;
15772
+ return __generator(this, function (_a) {
15773
+ console.log("setSelectedProgramme", value);
15774
+ for (_i = 0, allProjectData_1 = allProjectData; _i < allProjectData_1.length; _i++) {
15775
+ obj = allProjectData_1[_i];
15776
+ if (obj.programmeId == value) {
15777
+ setProjectData(obj);
15778
+ break;
15779
+ }
15780
+ }
15781
+ return [2 /*return*/];
15782
+ });
15783
+ }); };
15784
+ var setSelectedInvestment = function (value) { return __awaiter(void 0, void 0, void 0, function () {
15785
+ return __generator(this, function (_a) {
15786
+ console.log("setSelectedInvestment", value);
15787
+ setInvestmentData(investmentNames[value]);
15788
+ return [2 /*return*/];
15789
+ });
15790
+ }); };
15791
+ var getNationalInvestmentDetails = function () { return __awaiter(void 0, void 0, void 0, function () {
15792
+ var filterAnd, response, investmentData_1, _i, _a, investment, error_3;
15402
15793
  return __generator(this, function (_b) {
15403
15794
  switch (_b.label) {
15404
15795
  case 0:
15405
- setLoadingList(true);
15796
+ setLoadingInvestment(true);
15406
15797
  _b.label = 1;
15407
15798
  case 1:
15408
15799
  _b.trys.push([1, 3, 4, 5]);
15409
15800
  filterAnd = [];
15410
15801
  filterAnd = [
15411
15802
  {
15412
- key: "companyRole",
15803
+ key: "category",
15413
15804
  operation: "=",
15414
- value: CompanyRole.PROGRAMME_DEVELOPER.toString(),
15805
+ value: InvestmentOwnershipType.NATIONAL.toString(),
15806
+ },
15807
+ {
15808
+ key: "amount",
15809
+ operation: ">",
15810
+ value: 0,
15415
15811
  },
15416
15812
  ];
15417
15813
  if ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.PROGRAMME_DEVELOPER) {
15418
15814
  filterAnd.push({
15419
- key: "companyId",
15420
- operation: "!=",
15815
+ key: "toCompanyId",
15816
+ operation: "=",
15421
15817
  value: userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyId,
15422
15818
  });
15423
15819
  }
15424
- for (_i = 0, _a = data === null || data === void 0 ? void 0 : data.companyId; _i < _a.length; _i++) {
15425
- c = _a[_i];
15426
- filterAnd.push({
15427
- key: "companyId",
15428
- operation: "!=",
15429
- value: c,
15430
- });
15431
- }
15432
- return [4 /*yield*/, post("national/organisation/queryNames", {
15820
+ return [4 /*yield*/, post("national/programme/investmentQuery", {
15433
15821
  page: 1,
15434
15822
  size: 100,
15435
15823
  filterAnd: filterAnd,
15436
15824
  })];
15437
15825
  case 2:
15438
15826
  response = _b.sent();
15827
+ if (response.data) {
15828
+ setNationalInvestmentList(response === null || response === void 0 ? void 0 : response.data);
15829
+ investmentData_1 = {};
15830
+ for (_i = 0, _a = response === null || response === void 0 ? void 0 : response.data; _i < _a.length; _i++) {
15831
+ investment = _a[_i];
15832
+ investmentData_1[investment.requestId] = investment;
15833
+ }
15834
+ setInvestmentNames(investmentData_1);
15835
+ console.log(investmentData_1);
15836
+ }
15837
+ return [3 /*break*/, 5];
15838
+ case 3:
15839
+ error_3 = _b.sent();
15840
+ console.log("Error in getting national Investments list", error_3);
15841
+ return [3 /*break*/, 5];
15842
+ case 4:
15843
+ setLoadingInvestment(false);
15844
+ return [7 /*endfinally*/];
15845
+ case 5: return [2 /*return*/];
15846
+ }
15847
+ });
15848
+ }); };
15849
+ var getUserOrganization = function () { return __awaiter(void 0, void 0, void 0, function () {
15850
+ var response, error_4;
15851
+ return __generator(this, function (_a) {
15852
+ switch (_a.label) {
15853
+ case 0:
15854
+ _a.trys.push([0, 2, , 3]);
15855
+ return [4 /*yield*/, post("national/organisation/query", {
15856
+ page: 1,
15857
+ size: 100,
15858
+ filterAnd: [
15859
+ { key: "companyId", operation: "=", value: userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyId },
15860
+ ],
15861
+ })];
15862
+ case 1:
15863
+ response = _a.sent();
15864
+ console.log("getUserOrganization", response.data[0]);
15865
+ setUserOrganization(response.data[0]);
15866
+ setMinistrySectoralScope(response.data[0].sectoralScope);
15867
+ return [3 /*break*/, 3];
15868
+ case 2:
15869
+ error_4 = _a.sent();
15870
+ console.log("Error in getting user organization", error_4);
15871
+ return [3 /*break*/, 3];
15872
+ case 3: return [2 /*return*/];
15873
+ }
15874
+ });
15875
+ }); };
15876
+ var getOrganisationsDetails = function () { return __awaiter(void 0, void 0, void 0, function () {
15877
+ var filterAnd, filterOr, _i, _a, c, filters, response, companyName, _b, _c, company, error_5;
15878
+ return __generator(this, function (_d) {
15879
+ switch (_d.label) {
15880
+ case 0:
15881
+ setLoadingList(true);
15882
+ _d.label = 1;
15883
+ case 1:
15884
+ _d.trys.push([1, 3, 4, 5]);
15885
+ filterAnd = [];
15886
+ filterOr = [];
15887
+ filterAnd = [
15888
+ {
15889
+ key: "companyRole",
15890
+ operation: "=",
15891
+ value: CompanyRole.PROGRAMME_DEVELOPER.toString(),
15892
+ },
15893
+ ];
15894
+ // if (userInfoState?.companyRole === CompanyRole.PROGRAMME_DEVELOPER) {
15895
+ // filterAnd.push({
15896
+ // key: "companyId",
15897
+ // operation: "!=",
15898
+ // value: userInfoState?.companyId,
15899
+ // });
15900
+ // }
15901
+ if (data === null || data === void 0 ? void 0 : data.companyId) {
15902
+ for (_i = 0, _a = data === null || data === void 0 ? void 0 : data.companyId; _i < _a.length; _i++) {
15903
+ c = _a[_i];
15904
+ filterOr.push({
15905
+ key: "companyId",
15906
+ operation: "=",
15907
+ value: c,
15908
+ });
15909
+ }
15910
+ }
15911
+ filters = void 0;
15912
+ if (filterOr.length) {
15913
+ filters.filterOr = filterOr;
15914
+ }
15915
+ return [4 /*yield*/, post("national/organisation/queryNames", __assign({ page: 1, size: 100, filterAnd: filterAnd }, filters))];
15916
+ case 2:
15917
+ response = _d.sent();
15439
15918
  if (response.data) {
15440
15919
  setOrganisationList(response === null || response === void 0 ? void 0 : response.data);
15920
+ companyName = {};
15921
+ for (_b = 0, _c = response === null || response === void 0 ? void 0 : response.data; _b < _c.length; _b++) {
15922
+ company = _c[_b];
15923
+ companyName[Number(company.companyId)] = company.name;
15924
+ }
15925
+ setCompanyNames(companyName);
15926
+ console.log(companyName);
15441
15927
  }
15442
15928
  return [3 /*break*/, 5];
15443
15929
  case 3:
15444
- error_2 = _b.sent();
15445
- console.log("Error in getting organization list", error_2);
15930
+ error_5 = _d.sent();
15931
+ console.log("Error in getting organization list", error_5);
15446
15932
  return [3 /*break*/, 5];
15447
15933
  case 4:
15448
15934
  setLoadingList(false);
@@ -15457,52 +15943,71 @@ var InvestmentCreationComponent = function (props) {
15457
15943
  return;
15458
15944
  }
15459
15945
  if (state === null || state === void 0 ? void 0 : state.record) {
15946
+ console.log("condition 1 data", state === null || state === void 0 ? void 0 : state.record);
15460
15947
  setData(state === null || state === void 0 ? void 0 : state.record);
15461
15948
  }
15462
15949
  else {
15950
+ console.log("condition 2 data", { ownership: true });
15463
15951
  setData({ ownership: true });
15464
15952
  }
15465
15953
  }, []);
15466
15954
  useEffect(function () {
15467
- if (data) {
15468
- var keys = Object.keys(data);
15469
- if (keys[0] !== "ownership") {
15470
- getOrganisationsDetails();
15471
- }
15472
- }
15955
+ // if (data) {
15956
+ // const keys = Object.keys(data);
15957
+ // if (keys[0] !== "ownership") {
15958
+ // getOrganisationsDetails();
15959
+ // }
15960
+ // }
15961
+ getNationalInvestmentDetails();
15962
+ getOrganisationsDetails();
15473
15963
  getGovernmentDetails();
15964
+ getAllProjectData();
15965
+ getUserOrganization();
15474
15966
  }, [data]);
15475
- if (!data) {
15967
+ if (!data && allProjectData.length == 0) {
15476
15968
  return React.createElement(Loading, null);
15477
15969
  }
15478
- console.log('data', data);
15479
- var companyName = {};
15970
+ console.log("data", data);
15480
15971
  if (data && Object.keys(data)[0] !== "ownership") {
15481
- for (var _i = 0, _l = data === null || data === void 0 ? void 0 : data.company; _i < _l.length; _i++) {
15482
- var company = _l[_i];
15483
- companyName[company === null || company === void 0 ? void 0 : company.companyId] = company;
15484
- }
15972
+ // for (const company of data!?.company) {
15973
+ // companyName[company?.companyId] = company;
15974
+ // }
15485
15975
  if (!data.proponentPercentage) {
15486
15976
  data.proponentPercentage = [100];
15487
15977
  }
15488
15978
  }
15489
15979
  var nextOne = function (val) {
15980
+ console.log("step 1 values", val);
15981
+ if (val.typeCreation == InvestmentCreationType.EXISTING) {
15982
+ val.toCompanyId = investmentData.toCompanyId;
15983
+ }
15490
15984
  setCurrent(current + 1);
15491
15985
  setStepOneData(val);
15986
+ if (data === null || data === void 0 ? void 0 : data.programmeId)
15987
+ setSelectedProgramme(data.programmeId);
15988
+ if (prevInvestor && prevInvestor != val.toCompanyId && !(data === null || data === void 0 ? void 0 : data.programmeId)) {
15989
+ formTwo.resetFields();
15990
+ setCurrentPercTotal(0);
15991
+ setProjectData(undefined);
15992
+ }
15492
15993
  };
15493
15994
  var prevOne = function () {
15494
15995
  setCurrent(current - 1);
15996
+ setPrevInvestor(stepOneData.toCompanyId);
15997
+ // formTwo.resetFields();
15998
+ // setCurrentPercTotal(0);
15999
+ // setProjectData(undefined);
15495
16000
  };
15496
16001
  var submitInvestment = function (val) { return __awaiter(void 0, void 0, void 0, function () {
15497
- var payload, response, error_3;
16002
+ var payload, response, error_6;
15498
16003
  return __generator(this, function (_a) {
15499
16004
  switch (_a.label) {
15500
16005
  case 0:
15501
16006
  console.log(val);
15502
16007
  console.log(stepOneData);
16008
+ console.log("OwnershipType", investmentOwnershipType);
15503
16009
  setLoading(true);
15504
16010
  payload = stepOneData;
15505
- payload.programmeId = data.programmeId;
15506
16011
  payload.amount = parseFloat(payload.amount);
15507
16012
  if (payload.interestRate) {
15508
16013
  payload.interestRate = parseFloat(payload.interestRate);
@@ -15510,15 +16015,27 @@ var InvestmentCreationComponent = function (props) {
15510
16015
  if (payload.paymentPerMetric) {
15511
16016
  payload.paymentPerMetric = parseFloat(payload.paymentPerMetric);
15512
16017
  }
15513
- payload.fromCompanyIds = data.companyId.map(function (e) { return Number(e); });
15514
- payload.percentage = val.percentage;
15515
16018
  payload.toCompanyId = Number(payload.toCompanyId);
15516
16019
  _a.label = 1;
15517
16020
  case 1:
15518
- _a.trys.push([1, 3, 4, 5]);
16021
+ _a.trys.push([1, 6, 7, 8]);
16022
+ response = void 0;
16023
+ if (!(investmentOwnershipType == InvestmentOwnershipType.PROJECT)) return [3 /*break*/, 3];
16024
+ if (typeCreation == InvestmentCreationType.EXISTING) {
16025
+ payload.nationalInvestmentId = investmentData.requestId;
16026
+ }
16027
+ payload.programmeId = projectData === null || projectData === void 0 ? void 0 : projectData.programmeId;
16028
+ payload.fromCompanyIds = projectData === null || projectData === void 0 ? void 0 : projectData.companyId.map(function (e) { return Number(e); });
16029
+ payload.percentage = val.percentage;
15519
16030
  return [4 /*yield*/, post("national/programme/addInvestment", payload)];
15520
16031
  case 2:
15521
16032
  response = _a.sent();
16033
+ return [3 /*break*/, 5];
16034
+ case 3: return [4 /*yield*/, post("national/organisation/addInvestment", payload)];
16035
+ case 4:
16036
+ response = _a.sent();
16037
+ _a.label = 5;
16038
+ case 5:
15522
16039
  console.log("investment creation -> ", response);
15523
16040
  if ((response === null || response === void 0 ? void 0 : response.statusText) === "SUCCESS") {
15524
16041
  message.open({
@@ -15528,22 +16045,24 @@ var InvestmentCreationComponent = function (props) {
15528
16045
  style: { textAlign: "right", marginRight: 15, marginTop: 10 },
15529
16046
  });
15530
16047
  }
15531
- onNavigateToProgrammeView(data.programmeId);
15532
- return [3 /*break*/, 5];
15533
- case 3:
15534
- error_3 = _a.sent();
15535
- console.log("Error in investment creation - ", error_3);
16048
+ (data === null || data === void 0 ? void 0 : data.programmeId)
16049
+ ? onNavigateToProgrammeView(data === null || data === void 0 ? void 0 : data.programmeId)
16050
+ : onNavigateToInvestmentManagementView();
16051
+ return [3 /*break*/, 8];
16052
+ case 6:
16053
+ error_6 = _a.sent();
16054
+ console.log("Error in investment creation - ", error_6);
15536
16055
  message.open({
15537
16056
  type: "error",
15538
- content: error_3 === null || error_3 === void 0 ? void 0 : error_3.message,
16057
+ content: error_6 === null || error_6 === void 0 ? void 0 : error_6.message,
15539
16058
  duration: 4,
15540
16059
  style: { textAlign: "right", marginRight: 15, marginTop: 10 },
15541
16060
  });
15542
- return [3 /*break*/, 5];
15543
- case 4:
16061
+ return [3 /*break*/, 8];
16062
+ case 7:
15544
16063
  setLoading(false);
15545
16064
  return [7 /*endfinally*/];
15546
- case 5: return [2 /*return*/];
16065
+ case 8: return [2 /*return*/];
15547
16066
  }
15548
16067
  });
15549
16068
  }); };
@@ -15555,8 +16074,16 @@ var InvestmentCreationComponent = function (props) {
15555
16074
  }
15556
16075
  };
15557
16076
  var onChangeTypeCreation = function (e) {
15558
- console.log('radio checked', e.target.value);
16077
+ console.log("radio checked", e.target.value);
15559
16078
  setTypeCreation(e.target.value);
16079
+ formOne.resetFields();
16080
+ formTwo.resetFields();
16081
+ setCurrentPercTotal(0);
16082
+ setProjectData(undefined);
16083
+ };
16084
+ var onChangeInvestmentOwnershipType = function (e) {
16085
+ console.log("investment ownership type radio checked", e.target.value);
16086
+ setInvestmentOwnershipType(e.target.value);
15560
16087
  };
15561
16088
  return (React.createElement("div", { className: "add-programme-main-container" },
15562
16089
  React.createElement("div", { className: "title-container" },
@@ -15581,242 +16108,263 @@ var InvestmentCreationComponent = function (props) {
15581
16108
  ] },
15582
16109
  React.createElement(Radio.Group, { size: "large", defaultValue: typeCreation }, Object.values(InvestmentCreationType).map(function (k, index) { return (React.createElement("div", { className: "condition-radio-container" },
15583
16110
  React.createElement(Radio.Button, { className: "condition-radio", value: k, onChange: onChangeTypeCreation }, t("programme:" + k)))); }))))),
15584
- React.createElement(Row, { className: "row", gutter: [16, 16] },
15585
- React.createElement(Col, { xl: 12, md: 24 },
15586
- React.createElement("div", { className: "details-part-one" },
15587
- React.createElement(Form.Item, { label: t("programme:investorName"), name: "toCompanyId", wrapperCol: { span: 24 }, className: "organisation", rules: [
15588
- {
15589
- required: true,
15590
- message: "".concat(t("programme:investorName"), " ").concat(t("isRequired")),
15591
- },
15592
- ] },
15593
- React.createElement(Select, { size: "large", loading: loadingList }, organisationsList.map(function (organisation) { return (React.createElement(Select.Option, { key: organisation.companyId, value: organisation.companyId }, organisation.name)); }))))),
15594
- React.createElement(Col, { xl: 12, md: 24 },
15595
- React.createElement("div", { className: "details-part-two" },
15596
- React.createElement(Form.Item, { label: t("programme:amountInvested"), name: "amount", rules: [
15597
- {
15598
- required: true,
15599
- message: "",
15600
- },
15601
- {
15602
- validator: function (rule, value) { return __awaiter(void 0, void 0, void 0, function () {
15603
- return __generator(this, function (_a) {
15604
- if (String(value).trim() === "" ||
15605
- String(value).trim() === undefined ||
15606
- value === null ||
15607
- value === undefined) {
15608
- throw new Error("".concat(t("programme:amountInvested"), " ").concat(t("isRequired")));
15609
- }
15610
- else if (!isNaN(value) &&
15611
- Number(value) > 0) {
15612
- return [2 /*return*/, Promise.resolve()];
15613
- }
15614
- else {
15615
- throw new Error("".concat(t("programme:amountInvested"), " ").concat(t("isInvalid")));
15616
- }
15617
- });
15618
- }); },
15619
- },
15620
- ] },
15621
- React.createElement(Input, { size: "large" }))))),
15622
- React.createElement(Row, { className: "row", gutter: [16, 16] },
15623
- React.createElement(Col, { xl: 24, md: 24 },
15624
- React.createElement(Form.Item, { label: t("programme:instrument"), name: "instrument", wrapperCol: { span: 24 }, className: "" },
15625
- React.createElement(Checkbox.Group, { options: instrumentOptions, defaultValue: instrumentOptions.map(function (e) { return e.value; }), onChange: onInstrumentChange })))),
15626
- instrument &&
15627
- instrument.indexOf(Instrument.LOAN) >= 0 && (React.createElement(Row, { className: "row", gutter: [16, 16] },
15628
- React.createElement(Col, { xl: 8, md: 12 },
15629
- React.createElement("div", { className: "details-part-two" },
15630
- React.createElement(Form.Item, { label: t("programme:interestRate"), name: "interestRate", rules: [
15631
- {
15632
- required: true,
15633
- message: "",
15634
- },
15635
- {
15636
- validator: function (rule, value) { return __awaiter(void 0, void 0, void 0, function () {
15637
- return __generator(this, function (_a) {
15638
- if (String(value).trim() === "" ||
15639
- String(value).trim() ===
15640
- undefined ||
15641
- value === null ||
15642
- value === undefined) {
15643
- throw new Error("".concat(t("programme:interestRate"), " ").concat(t("isRequired")));
15644
- }
15645
- else if (!isNaN(value)) {
15646
- return [2 /*return*/, Promise.resolve()];
15647
- }
15648
- else {
15649
- throw new Error("".concat(t("programme:interestRate"), " ").concat(t("isInvalid")));
15650
- }
15651
- });
15652
- }); },
15653
- },
15654
- ] },
15655
- React.createElement(Input, { size: "large" })))))),
15656
- instrument &&
15657
- instrument.indexOf(Instrument.RESULT_BASED) >= 0 && (React.createElement(Row, { className: "row", gutter: [16, 16] },
15658
- React.createElement(Col, { xl: 12, md: 24 },
15659
- React.createElement("div", { className: "details-part-two" },
15660
- React.createElement(Form.Item, { label: t("programme:resultMetric"), name: "resultMetric", rules: [
15661
- {
15662
- required: true,
15663
- message: "",
15664
- },
15665
- {
15666
- validator: function (rule, value) { return __awaiter(void 0, void 0, void 0, function () {
15667
- return __generator(this, function (_a) {
15668
- if (String(value).trim() === "" ||
15669
- String(value).trim() ===
15670
- undefined ||
15671
- value === null ||
15672
- value === undefined) {
15673
- throw new Error("".concat(t("programme:resultMetric"), " ").concat(t("isRequired")));
15674
- }
15675
- return [2 /*return*/];
15676
- });
15677
- }); },
15678
- },
15679
- ] },
15680
- React.createElement(Input, { size: "large" })))),
15681
- React.createElement(Col, { xl: 12, md: 24 },
15682
- React.createElement("div", { className: "details-part-two" },
15683
- React.createElement(Form.Item, { label: t("programme:paymentPerMetric"), name: "paymentPerMetric", rules: [
15684
- {
15685
- required: true,
15686
- message: "",
15687
- },
16111
+ typeCreation == InvestmentCreationType.NEW && (React.createElement("div", null,
16112
+ React.createElement(Row, { className: "row", gutter: [16, 16] },
16113
+ React.createElement(Col, { xl: 12, md: 24 },
16114
+ React.createElement("div", { className: "details-part-one" },
16115
+ React.createElement(Form.Item, { label: t("programme:investorName"), name: "toCompanyId", wrapperCol: { span: 24 }, className: "organisation", rules: [
16116
+ {
16117
+ required: true,
16118
+ message: "".concat(t("programme:investorName"), " ").concat(t("isRequired")),
16119
+ },
16120
+ ] },
16121
+ React.createElement(Select, { size: "large", loading: loadingList }, organisationsList.map(function (organisation) {
16122
+ if (data === null || data === void 0 ? void 0 : data.programmeId) {
16123
+ if (data.companyId
16124
+ .map(function (id) { return Number(id); })
16125
+ .includes(Number(organisation.companyId))) {
16126
+ return (React.createElement(Select.Option, { key: organisation.companyId, value: organisation.companyId }, organisation.name));
16127
+ }
16128
+ }
16129
+ else {
16130
+ return (React.createElement(Select.Option, { key: organisation.companyId, value: organisation.companyId }, organisation.name));
16131
+ }
16132
+ }))))),
16133
+ React.createElement(Col, { xl: 12, md: 24 },
16134
+ React.createElement("div", { className: "details-part-two" },
16135
+ React.createElement(Form.Item, { label: t("programme:amountInvested"), name: "amount", rules: [
16136
+ {
16137
+ required: true,
16138
+ message: "",
16139
+ },
16140
+ {
16141
+ validator: function (rule, value) { return __awaiter(void 0, void 0, void 0, function () {
16142
+ return __generator(this, function (_a) {
16143
+ if (String(value).trim() === "" ||
16144
+ String(value).trim() ===
16145
+ undefined ||
16146
+ value === null ||
16147
+ value === undefined) {
16148
+ throw new Error("".concat(t("programme:amountInvested"), " ").concat(t("isRequired")));
16149
+ }
16150
+ else if (!isNaN(value) &&
16151
+ Number(value) > 0) {
16152
+ return [2 /*return*/, Promise.resolve()];
16153
+ }
16154
+ else {
16155
+ throw new Error("".concat(t("programme:amountInvested"), " ").concat(t("isInvalid")));
16156
+ }
16157
+ });
16158
+ }); },
16159
+ },
16160
+ ] },
16161
+ React.createElement(Input, { size: "large" }))))),
16162
+ React.createElement(Row, { className: "row", gutter: [16, 16] },
16163
+ React.createElement(Col, { xl: 24, md: 24 },
16164
+ React.createElement(Form.Item, { label: t("programme:instrument"), name: "instrument", wrapperCol: { span: 24 }, className: "" },
16165
+ React.createElement(Checkbox.Group, { options: instrumentOptions, defaultValue: instrumentOptions.map(function (e) { return e.value; }), onChange: onInstrumentChange })))),
16166
+ instrument &&
16167
+ instrument.indexOf(Instrument.LOAN) >= 0 && (React.createElement(Row, { className: "row", gutter: [16, 16] },
16168
+ React.createElement(Col, { xl: 8, md: 12 },
16169
+ React.createElement("div", { className: "details-part-two" },
16170
+ React.createElement(Form.Item, { label: t("programme:interestRate"), name: "interestRate", rules: [
16171
+ {
16172
+ required: true,
16173
+ message: "",
16174
+ },
16175
+ {
16176
+ validator: function (rule, value) { return __awaiter(void 0, void 0, void 0, function () {
16177
+ return __generator(this, function (_a) {
16178
+ if (String(value).trim() === "" ||
16179
+ String(value).trim() ===
16180
+ undefined ||
16181
+ value === null ||
16182
+ value === undefined) {
16183
+ throw new Error("".concat(t("programme:interestRate"), " ").concat(t("isRequired")));
16184
+ }
16185
+ else if (!isNaN(value)) {
16186
+ return [2 /*return*/, Promise.resolve()];
16187
+ }
16188
+ else {
16189
+ throw new Error("".concat(t("programme:interestRate"), " ").concat(t("isInvalid")));
16190
+ }
16191
+ });
16192
+ }); },
16193
+ },
16194
+ ] },
16195
+ React.createElement(Input, { size: "large" })))))),
16196
+ instrument &&
16197
+ instrument.indexOf(Instrument.RESULT_BASED) >=
16198
+ 0 && (React.createElement(Row, { className: "row", gutter: [16, 16] },
16199
+ React.createElement(Col, { xl: 12, md: 24 },
16200
+ React.createElement("div", { className: "details-part-two" },
16201
+ React.createElement(Form.Item, { label: t("programme:resultMetric"), name: "resultMetric", rules: [
16202
+ {
16203
+ required: true,
16204
+ message: "",
16205
+ },
16206
+ {
16207
+ validator: function (rule, value) { return __awaiter(void 0, void 0, void 0, function () {
16208
+ return __generator(this, function (_a) {
16209
+ if (String(value).trim() === "" ||
16210
+ String(value).trim() ===
16211
+ undefined ||
16212
+ value === null ||
16213
+ value === undefined) {
16214
+ throw new Error("".concat(t("programme:resultMetric"), " ").concat(t("isRequired")));
16215
+ }
16216
+ return [2 /*return*/];
16217
+ });
16218
+ }); },
16219
+ },
16220
+ ] },
16221
+ React.createElement(Input, { size: "large" })))),
16222
+ React.createElement(Col, { xl: 12, md: 24 },
16223
+ React.createElement("div", { className: "details-part-two" },
16224
+ React.createElement(Form.Item, { label: t("programme:paymentPerMetric"), name: "paymentPerMetric", rules: [
16225
+ {
16226
+ required: true,
16227
+ message: "",
16228
+ },
16229
+ {
16230
+ validator: function (rule, value) { return __awaiter(void 0, void 0, void 0, function () {
16231
+ return __generator(this, function (_a) {
16232
+ if (String(value).trim() === "" ||
16233
+ String(value).trim() ===
16234
+ undefined ||
16235
+ value === null ||
16236
+ value === undefined) {
16237
+ throw new Error("".concat(t("programme:paymentPerMetric"), " ").concat(t("isRequired")));
16238
+ }
16239
+ else if (!isNaN(value)) {
16240
+ return [2 /*return*/, Promise.resolve()];
16241
+ }
16242
+ else {
16243
+ throw new Error("".concat(t("programme:paymentPerMetric"), " ").concat(t("isInvalid")));
16244
+ }
16245
+ });
16246
+ }); },
16247
+ },
16248
+ ] },
16249
+ React.createElement(Input, { size: "large" })))))),
16250
+ instrument &&
16251
+ instrument.indexOf(Instrument.INKIND) >= 0 && (React.createElement(Row, { className: "row", gutter: [16, 16] },
16252
+ React.createElement(Col, { xl: 12, md: 24 },
16253
+ React.createElement("div", { className: "details-part-two" },
16254
+ React.createElement(Form.Item, { label: t("programme:description"), name: "description", rules: [
16255
+ {
16256
+ required: false,
16257
+ message: "",
16258
+ },
16259
+ ] },
16260
+ React.createElement(Input, { size: "large" })))))),
16261
+ instrument &&
16262
+ instrument.indexOf(Instrument.OTHER) >= 0 && (React.createElement(Row, { className: "row", gutter: [16, 16] },
16263
+ React.createElement(Col, { xl: 12, md: 24 },
16264
+ React.createElement("div", { className: "details-part-two" },
16265
+ React.createElement(Form.Item, { label: t("programme:comments"), name: "comments", rules: [
16266
+ {
16267
+ required: true,
16268
+ message: "",
16269
+ },
16270
+ {
16271
+ validator: function (rule, value) { return __awaiter(void 0, void 0, void 0, function () {
16272
+ return __generator(this, function (_a) {
16273
+ if (String(value).trim() === "" ||
16274
+ String(value).trim() ===
16275
+ undefined ||
16276
+ value === null ||
16277
+ value === undefined) {
16278
+ throw new Error("".concat(t("programme:comments"), " ").concat(t("isRequired")));
16279
+ }
16280
+ return [2 /*return*/];
16281
+ });
16282
+ }); },
16283
+ },
16284
+ ] },
16285
+ React.createElement(Input, { size: "large" })))))),
16286
+ React.createElement(Row, { className: "row", gutter: [4, 4] },
16287
+ React.createElement(Col, { xl: 8, md: 12 },
16288
+ React.createElement(Form.Item, { label: t("programme:type"), wrapperCol: { span: 13 }, className: "role-group", name: "type", rules: [
15688
16289
  {
15689
- validator: function (rule, value) { return __awaiter(void 0, void 0, void 0, function () {
15690
- return __generator(this, function (_a) {
15691
- if (String(value).trim() === "" ||
15692
- String(value).trim() ===
15693
- undefined ||
15694
- value === null ||
15695
- value === undefined) {
15696
- throw new Error("".concat(t("programme:paymentPerMetric"), " ").concat(t("isRequired")));
15697
- }
15698
- else if (!isNaN(value)) {
15699
- return [2 /*return*/, Promise.resolve()];
15700
- }
15701
- else {
15702
- throw new Error("".concat(t("programme:paymentPerMetric"), " ").concat(t("isInvalid")));
15703
- }
15704
- });
15705
- }); },
16290
+ required: false,
15706
16291
  },
15707
16292
  ] },
15708
- React.createElement(Input, { size: "large" })))))),
15709
- instrument &&
15710
- instrument.indexOf(Instrument.INKIND) >= 0 && (React.createElement(Row, { className: "row", gutter: [16, 16] },
15711
- React.createElement(Col, { xl: 12, md: 24 },
15712
- React.createElement("div", { className: "details-part-two" },
15713
- React.createElement(Form.Item, { label: t("programme:description"), name: "description", rules: [
16293
+ React.createElement(Radio.Group, { size: "large" }, Object.values(InvestmentType).map(function (k, index) { return (React.createElement("div", { className: "condition-radio-container" },
16294
+ React.createElement(Radio.Button, { className: "condition-radio", value: k, onClick: function (e) {
16295
+ return deselectOnClick(e, "type");
16296
+ } }, t("programme:" + k)))); })))),
16297
+ React.createElement(Col, { xl: 8, md: 12 },
16298
+ React.createElement(Form.Item, { label: t("programme:level"), wrapperCol: { span: 13 }, className: "role-group", name: "level", rules: [
15714
16299
  {
15715
16300
  required: false,
15716
- message: "",
15717
16301
  },
15718
16302
  ] },
15719
- React.createElement(Input, { size: "large" })))))),
15720
- instrument &&
15721
- instrument.indexOf(Instrument.OTHER) >= 0 && (React.createElement(Row, { className: "row", gutter: [16, 16] },
15722
- React.createElement(Col, { xl: 12, md: 24 },
15723
- React.createElement("div", { className: "details-part-two" },
15724
- React.createElement(Form.Item, { label: t("programme:comments"), name: "comments", rules: [
15725
- {
15726
- required: true,
15727
- message: "",
15728
- },
16303
+ React.createElement(Radio.Group, { size: "large" }, Object.values(InvestmentLevel).map(function (k, index) { return (React.createElement("div", { className: "condition-radio-container" },
16304
+ React.createElement(Radio.Button, { className: "condition-radio", value: k, onClick: function (e) {
16305
+ return deselectOnClick(e, "level");
16306
+ } }, t("programme:" + k)))); })))),
16307
+ React.createElement(Col, { xl: 8, md: 12 },
16308
+ React.createElement(Form.Item, { label: t("programme:stream"), wrapperCol: { span: 13 }, className: "role-group", name: "stream", rules: [
15729
16309
  {
15730
- validator: function (rule, value) { return __awaiter(void 0, void 0, void 0, function () {
15731
- return __generator(this, function (_a) {
15732
- if (String(value).trim() === "" ||
15733
- String(value).trim() ===
15734
- undefined ||
15735
- value === null ||
15736
- value === undefined) {
15737
- throw new Error("".concat(t("programme:comments"), " ").concat(t("isRequired")));
15738
- }
15739
- return [2 /*return*/];
15740
- });
15741
- }); },
16310
+ required: false,
15742
16311
  },
15743
16312
  ] },
15744
- React.createElement(Input, { size: "large" })))))),
15745
- React.createElement(Row, { className: "row", gutter: [4, 4] },
15746
- React.createElement(Col, { xl: 8, md: 12 },
15747
- React.createElement(Form.Item, { label: t("programme:type"), wrapperCol: { span: 13 }, className: "role-group", name: "type", rules: [
15748
- {
15749
- required: false,
15750
- },
15751
- ] },
15752
- React.createElement(Radio.Group, { size: "large" }, Object.values(InvestmentType).map(function (k, index) { return (React.createElement("div", { className: "condition-radio-container" },
15753
- React.createElement(Radio.Button, { className: "condition-radio", value: k, onClick: function (e) {
15754
- return deselectOnClick(e, "type");
15755
- } }, t("programme:" + k)))); })))),
15756
- React.createElement(Col, { xl: 8, md: 12 },
15757
- React.createElement(Form.Item, { label: t("programme:level"), wrapperCol: { span: 13 }, className: "role-group", name: "level", rules: [
15758
- {
15759
- required: false,
15760
- },
15761
- ] },
15762
- React.createElement(Radio.Group, { size: "large" }, Object.values(InvestmentLevel).map(function (k, index) { return (React.createElement("div", { className: "condition-radio-container" },
15763
- React.createElement(Radio.Button, { className: "condition-radio", value: k, onClick: function (e) {
15764
- return deselectOnClick(e, "level");
15765
- } }, t("programme:" + k)))); })))),
15766
- React.createElement(Col, { xl: 8, md: 12 },
15767
- React.createElement(Form.Item, { label: t("programme:stream"), wrapperCol: { span: 13 }, className: "role-group", name: "stream", rules: [
15768
- {
15769
- required: false,
15770
- },
15771
- ] },
15772
- React.createElement(Radio.Group, { size: "large" }, Object.values(InvestmentStream).map(function (k, index) { return (React.createElement("div", { className: "condition-radio-container" },
15773
- React.createElement(Radio.Button, { className: "condition-radio", value: k, onClick: function (e) {
15774
- return deselectOnClick(e, "stream");
15775
- } }, t("programme:" + k)))); }))))),
15776
- React.createElement(Row, { className: "row", gutter: [16, 16] },
15777
- React.createElement(Col, { xl: 12, md: 24 },
15778
- React.createElement(Form.Item, { label: t("programme:esgType"), name: "esgClassification" },
15779
- React.createElement(Select, { size: "large" }, Object.values(ESGType).map(function (esg) { return (React.createElement(Select.Option, { value: esg }, esg)); }))))),
15780
- React.createElement(Form.Item, null,
15781
- React.createElement("div", { className: "steps-actions" },
15782
- React.createElement(Button, { type: "primary", htmlType: "submit", loading: loading, onSubmit: nextOne }, t("programme:next")))))))),
15783
- },
15784
- {
15785
- title: (React.createElement("div", { className: "step-title-container" },
15786
- React.createElement("div", { className: "step-count" }, "02"),
15787
- React.createElement("div", { className: "title" }, t("programme:ownership")))),
15788
- description: current === 1 && (React.createElement("div", null,
15789
- React.createElement("div", { className: "programme-sought-form-container ownership-container" }, Object.keys(data).length > 0 &&
15790
- React.createElement("div", { className: "programme-sought-form" },
15791
- React.createElement(Form, { labelCol: { span: 20 }, wrapperCol: { span: 24 }, form: formTwo, name: "investment-sought", className: "investment-sought-form", layout: "vertical", requiredMark: true, onChange: onPercentageChange, onFinish: submitInvestment }, data === null || data === void 0 ? void 0 :
15792
- data.companyId.map(function (companyId, index) {
15793
- return (React.createElement(Row, { className: "row", gutter: [16, 16] },
15794
- React.createElement(Col, { xl: 8, md: 15 },
15795
- React.createElement("div", { className: "label" },
15796
- companyName[companyId].name,
15797
- React.createElement("span", { className: "required-mark" }, "*"))),
15798
- React.createElement(Col, { xl: 8, md: 9 },
15799
- React.createElement(Form.Item, { className: "inline", name: ["percentage", index], initialValue: 0, rules: [
16313
+ React.createElement(Radio.Group, { size: "large" }, Object.values(InvestmentStream).map(function (k, index) { return (React.createElement("div", { className: "condition-radio-container" },
16314
+ React.createElement(Radio.Button, { className: "condition-radio", value: k, onClick: function (e) {
16315
+ return deselectOnClick(e, "stream");
16316
+ } }, t("programme:" + k)))); }))))),
16317
+ React.createElement(Row, { className: "row", gutter: [16, 16] },
16318
+ React.createElement(Col, { xl: 12, md: 24 },
16319
+ React.createElement(Form.Item, { label: t("programme:esgType"), name: "esgClassification" },
16320
+ React.createElement(Select, { size: "large" }, Object.values(ESGType).map(function (esg) { return (React.createElement(Select.Option, { value: esg }, esg)); }))))))),
16321
+ typeCreation == InvestmentCreationType.EXISTING && (React.createElement("div", null,
16322
+ React.createElement(Row, { className: "row", gutter: [16, 16] },
16323
+ React.createElement(Col, { xl: 12, md: 24 },
16324
+ React.createElement("div", { className: "details-part-one" },
16325
+ React.createElement(Form.Item, { label: t("programme:existingInvestmentSource"), name: "existinngInvestmentId", wrapperCol: { span: 24 }, rules: [
15800
16326
  {
15801
- pattern: new RegExp(/^[+]?([.]\d+|\d+[.]?\d*)$/g),
15802
- message: "Percentage Should be a positive number",
16327
+ required: true,
16328
+ message: "".concat(t("programme:existingInvestmentSource"), " ").concat(t("isRequired")),
15803
16329
  },
16330
+ ] },
16331
+ React.createElement(Select, { size: "large", loading: loadingInvestment, onChange: setSelectedInvestment }, nationalInvestmentList.map(function (investment) { return (React.createElement(Select.Option, { key: investment.requestId, value: investment.requestId }, investment.investmentName)); })))))),
16332
+ React.createElement(Row, { className: "row", gutter: [16, 16] },
16333
+ React.createElement(Col, { xl: 12, md: 24 },
16334
+ React.createElement("div", { className: "details-part-two" },
16335
+ React.createElement(Form.Item, { label: t("programme:amountInvested"), name: "amount", rules: [
15804
16336
  {
15805
16337
  required: true,
15806
- message: "Required field",
16338
+ message: "",
16339
+ },
16340
+ {
16341
+ validator: function (rule, value) { return __awaiter(void 0, void 0, void 0, function () {
16342
+ return __generator(this, function (_a) {
16343
+ if (String(value).trim() === "" ||
16344
+ String(value).trim() ===
16345
+ undefined ||
16346
+ value === null ||
16347
+ value === undefined) {
16348
+ throw new Error("".concat(t("programme:amountInvested"), " ").concat(t("isRequired")));
16349
+ }
16350
+ else if (!isNaN(value) &&
16351
+ Number(value) > 0) {
16352
+ return [2 /*return*/, Promise.resolve()];
16353
+ }
16354
+ else {
16355
+ throw new Error("".concat(t("programme:amountInvested"), " ").concat(t("isInvalid")));
16356
+ }
16357
+ });
16358
+ }); },
15807
16359
  },
15808
16360
  function (_a) {
15809
16361
  var getFieldValue = _a.getFieldValue;
15810
16362
  return ({
15811
16363
  validator: function (rule, v) {
15812
- if (getFieldValue([
15813
- "percentage",
15814
- index,
15815
- ]) &&
15816
- parseFloat(getFieldValue([
15817
- "percentage",
15818
- index,
15819
- ])) > data.proponentPercentage[index]) {
16364
+ if (getFieldValue("amount") &&
16365
+ investmentData &&
16366
+ investmentData.amount <
16367
+ parseFloat(getFieldValue("amount"))) {
15820
16368
  // eslint-disable-next-line prefer-promise-reject-errors
15821
16369
  return Promise.reject("Amount > Available");
15822
16370
  }
@@ -15825,30 +16373,178 @@ var InvestmentCreationComponent = function (props) {
15825
16373
  });
15826
16374
  },
15827
16375
  ] },
15828
- React.createElement(InputNumber, { placeholder: "", controls: false, disabled: govData.companyId == companyId,
15829
- // disabled={userInfoState?.companyId === Number(companyId)}
15830
- onKeyPress: function (event) {
15831
- if (!/[0-9\.]/.test(event.key)) {
15832
- event.preventDefault();
15833
- }
15834
- } })),
15835
- React.createElement("div", { className: "inline separator" }, "/"),
15836
- React.createElement(Form.Item, { className: "inline" },
15837
- React.createElement(InputNumber, { placeholder: String(data === null || data === void 0 ? void 0 : data.proponentPercentage[index]), disabled: true })))));
15838
- }),
15839
- React.createElement(Row, { className: "row", gutter: [16, 16] },
15840
- React.createElement(Col, { xl: 8, md: 15 },
15841
- React.createElement("div", { className: "label" }, t("programme:total"))),
15842
- React.createElement(Col, { xl: 8, md: 9 },
15843
- React.createElement(Form.Item, { className: "inline", name: ["total"] },
15844
- React.createElement(InputNumber, { placeholder: currentPercTotal + "", controls: false, disabled: true, onKeyPress: function (event) {
15845
- if (!/[0-9\.]/.test(event.key)) {
15846
- event.preventDefault();
15847
- }
15848
- } })),
15849
- React.createElement("div", { className: "inline separator" }, "/"),
15850
- React.createElement(Form.Item, { className: "inline" },
15851
- React.createElement(InputNumber, { disabled: true, placeholder: "100" })))),
16376
+ React.createElement(Input, { size: "large" })))),
16377
+ React.createElement(Col, { xl: 12, md: 24 },
16378
+ React.createElement("div", { className: "details-part-two" },
16379
+ React.createElement(Form.Item, { label: " ", name: "sourceAmount" },
16380
+ React.createElement("div", null,
16381
+ "/",
16382
+ React.createElement(InputNumber, { size: "large", width: "100%", formatter: function (value) {
16383
+ return "$".concat(addCommSep(value));
16384
+ }, disabled: true, value: investmentData
16385
+ ? investmentData.amount
16386
+ : 0 })))))))),
16387
+ React.createElement(Form.Item, null,
16388
+ React.createElement("div", { className: "steps-actions" },
16389
+ React.createElement(Button, { type: "primary", htmlType: "submit", loading: loading, onSubmit: nextOne }, t("programme:next")))))))),
16390
+ },
16391
+ {
16392
+ title: (React.createElement("div", { className: "step-title-container" },
16393
+ React.createElement("div", { className: "step-count" }, "02"),
16394
+ React.createElement("div", { className: "title" }, t("programme:ownership")))),
16395
+ description: current === 1 && (React.createElement("div", null,
16396
+ React.createElement("div", { className: "investment-sought-form-container" },
16397
+ React.createElement("div", { className: "investment-sought-form" },
16398
+ React.createElement(Form, { labelCol: { span: 20 }, wrapperCol: { span: 24 }, name: "investment-sought", className: "investment-sought-form", layout: "vertical", requiredMark: true },
16399
+ React.createElement(Row, { className: "row", gutter: [4, 4] },
16400
+ React.createElement(Col, { xl: 8, md: 12 },
16401
+ React.createElement(Form.Item, { label: t("programme:typeCreation"), wrapperCol: { span: 13 }, className: "role-group", name: "investmentOwnershipType", rules: [
16402
+ {
16403
+ required: false,
16404
+ },
16405
+ ] },
16406
+ React.createElement(Radio.Group, { size: "large", defaultValue: typeCreation ==
16407
+ InvestmentCreationType.EXISTING
16408
+ ? InvestmentOwnershipType.PROJECT
16409
+ : investmentOwnershipType }, Object.values(InvestmentOwnershipType).map(function (k, index) {
16410
+ if (!(typeCreation ==
16411
+ InvestmentCreationType.EXISTING &&
16412
+ k == InvestmentOwnershipType.NATIONAL) &&
16413
+ !(k ==
16414
+ InvestmentOwnershipType.NATIONAL &&
16415
+ (data === null || data === void 0 ? void 0 : data.programmeId))) {
16416
+ return (React.createElement("div", { className: "condition-radio-container" },
16417
+ React.createElement(Tooltip, { title: (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) ==
16418
+ CompanyRole.PROGRAMME_DEVELOPER &&
16419
+ stepOneData.toCompanyId !=
16420
+ userInfoState.companyId &&
16421
+ k ==
16422
+ InvestmentOwnershipType.NATIONAL
16423
+ ? "This action is unauthorized due to the selected investor name."
16424
+ : "", color: TooltipColor, key: TooltipColor },
16425
+ React.createElement(Radio.Button, { className: "condition-radio", value: k, onChange: onChangeInvestmentOwnershipType, disabled: (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) ==
16426
+ CompanyRole.PROGRAMME_DEVELOPER &&
16427
+ stepOneData.toCompanyId !=
16428
+ userInfoState.companyId &&
16429
+ k ==
16430
+ InvestmentOwnershipType.NATIONAL }, t("programme:" + k)))));
16431
+ }
16432
+ })))))))),
16433
+ React.createElement("div", { className: "programme-sought-form-container ownership-container" },
16434
+ React.createElement("div", { className: "programme-sought-form" },
16435
+ React.createElement(Form, { labelCol: { span: 20 }, wrapperCol: { span: 24 }, form: formTwo, name: "investment-sought", className: "investment-sought-form", layout: "vertical", requiredMark: true, onChange: onPercentageChange, onFinish: submitInvestment },
16436
+ allProjectData.length > 0 &&
16437
+ investmentOwnershipType ==
16438
+ InvestmentOwnershipType.PROJECT && (React.createElement("div", null,
16439
+ React.createElement(Row, { className: "row", gutter: [16, 16] },
16440
+ React.createElement(Col, { xl: 12, md: 24 },
16441
+ React.createElement("div", { className: "details-part-one" },
16442
+ React.createElement(Form.Item, { label: t("programme:title"), name: "projectId", wrapperCol: { span: 24 }, initialValue: (data === null || data === void 0 ? void 0 : data.programmeId) != undefined
16443
+ ? allProjectData[0].programmeId
16444
+ : null, rules: [
16445
+ {
16446
+ required: true,
16447
+ message: "".concat(t("programme:title"), " ").concat(t("isRequired")),
16448
+ },
16449
+ ] },
16450
+ React.createElement(Select, { size: "large", loading: loadingProgData,
16451
+ // defaultValue={
16452
+ // allProjectData.length == 1
16453
+ // ? allProjectData[0].programmeId
16454
+ // : null
16455
+ // }
16456
+ disabled: allProjectData.length == 1 &&
16457
+ (data === null || data === void 0 ? void 0 : data.programmeId) != undefined, onChange: setSelectedProgramme }, allProjectData.map(function (project) {
16458
+ if ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) ==
16459
+ CompanyRole.PROGRAMME_DEVELOPER &&
16460
+ Number(stepOneData.toCompanyId) !=
16461
+ userInfoState.companyId) {
16462
+ if (project.companyId
16463
+ .map(function (id) { return Number(id); })
16464
+ .includes(userInfoState.companyId)) {
16465
+ return (React.createElement(Select.Option, { key: project.programmeId, value: project.programmeId }, project.title));
16466
+ }
16467
+ }
16468
+ else if ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) ===
16469
+ CompanyRole.MINISTRY) {
16470
+ if (ministrySectoralScope.includes(project.sectoralScope)) {
16471
+ return (React.createElement(Select.Option, { key: project.programmeId, value: project.programmeId }, project.title));
16472
+ }
16473
+ }
16474
+ else {
16475
+ return (React.createElement(Select.Option, { key: project.programmeId, value: project.programmeId }, project.title));
16476
+ }
16477
+ })))))), projectData === null || projectData === void 0 ? void 0 :
16478
+ projectData.companyId.map(function (companyId, index) {
16479
+ if (formTwo.getFieldValue("percentage") &&
16480
+ formTwo.getFieldValue("percentage")[index] &&
16481
+ companyId == stepOneData.toCompanyId) {
16482
+ formTwo.getFieldValue("percentage")[index] = 0;
16483
+ }
16484
+ return (React.createElement(Row, { className: "row", gutter: [16, 16] },
16485
+ React.createElement(Col, { xl: 8, md: 15 },
16486
+ React.createElement("div", { className: "label" },
16487
+ companyNames[Number(companyId)],
16488
+ React.createElement("span", { className: "required-mark" }, "*"))),
16489
+ React.createElement(Col, { xl: 8, md: 9 },
16490
+ React.createElement(Form.Item, { className: "inline", name: ["percentage", index], initialValue: 0, rules: [
16491
+ {
16492
+ pattern: new RegExp(/^[+]?([.]\d+|\d+[.]?\d*)$/g),
16493
+ message: "Percentage Should be a positive number",
16494
+ },
16495
+ {
16496
+ required: true,
16497
+ message: "Required field",
16498
+ },
16499
+ function (_a) {
16500
+ var getFieldValue = _a.getFieldValue;
16501
+ return ({
16502
+ validator: function (rule, v) {
16503
+ if (getFieldValue([
16504
+ "percentage",
16505
+ index,
16506
+ ]) &&
16507
+ parseFloat(getFieldValue([
16508
+ "percentage",
16509
+ index,
16510
+ ])) >
16511
+ projectData
16512
+ .proponentPercentage[index]) {
16513
+ // eslint-disable-next-line prefer-promise-reject-errors
16514
+ return Promise.reject("Amount > Available");
16515
+ }
16516
+ return Promise.resolve();
16517
+ },
16518
+ });
16519
+ },
16520
+ ] },
16521
+ React.createElement(InputNumber, { placeholder: "", controls: false, disabled: govData.companyId ==
16522
+ companyId ||
16523
+ companyId ==
16524
+ stepOneData.toCompanyId, value: 0,
16525
+ // disabled={userInfoState?.companyId === Number(companyId)}
16526
+ onKeyPress: function (event) {
16527
+ if (!/[0-9\.]/.test(event.key)) {
16528
+ event.preventDefault();
16529
+ }
16530
+ } })),
16531
+ React.createElement("div", { className: "inline separator" }, "/"),
16532
+ React.createElement(Form.Item, { className: "inline" },
16533
+ React.createElement(InputNumber, { placeholder: String(projectData === null || projectData === void 0 ? void 0 : projectData.proponentPercentage[index]), disabled: true })))));
16534
+ }),
16535
+ React.createElement(Row, { className: "row", gutter: [16, 16] },
16536
+ React.createElement(Col, { xl: 8, md: 15 },
16537
+ React.createElement("div", { className: "label" }, t("programme:total"))),
16538
+ React.createElement(Col, { xl: 8, md: 9 },
16539
+ React.createElement(Form.Item, { className: "inline", name: ["total"] },
16540
+ React.createElement(InputNumber, { placeholder: currentPercTotal + "", controls: false, disabled: true, onKeyPress: function (event) {
16541
+ if (!/[0-9\.]/.test(event.key)) {
16542
+ event.preventDefault();
16543
+ }
16544
+ } })),
16545
+ React.createElement("div", { className: "inline separator" }, "/"),
16546
+ React.createElement(Form.Item, { className: "inline" },
16547
+ React.createElement(InputNumber, { disabled: true, placeholder: "100" })))))),
15852
16548
  React.createElement(Form.Item, null,
15853
16549
  React.createElement("div", { className: "steps-actions" },
15854
16550
  React.createElement(Button, { type: "primary", htmlType: "submit", loading: loading, onSubmit: submitInvestment }, t("programme:submit")),
@@ -15963,7 +16659,7 @@ var InvestmentActionModel = function (props) {
15963
16659
  };
15964
16660
 
15965
16661
  var InvestmentManagementComponent = function (props) {
15966
- var translator = props.translator, useConnection = props.useConnection, onNavigateToProgrammeView = props.onNavigateToProgrammeView, useUserContext = props.useUserContext, useSettingsContext = props.useSettingsContext, onClickAddOwnership = props.onClickAddOwnership, enableAddOwnership = props.enableAddOwnership;
16662
+ var translator = props.translator, onNavigateToProgrammeView = props.onNavigateToProgrammeView, onClickAddOwnership = props.onClickAddOwnership, enableAddOwnership = props.enableAddOwnership;
15967
16663
  var t = translator.t;
15968
16664
  var statusOptions = Object.keys(InvestmentStatus).map(function (k, index) { return ({
15969
16665
  label: addSpaces(Object.values(InvestmentStatus)[index]),
@@ -16301,7 +16997,10 @@ var InvestmentManagementComponent = function (props) {
16301
16997
  sorter: true,
16302
16998
  align: "left",
16303
16999
  render: function (item) {
16304
- return React.createElement("span", { className: "clickable" }, item);
17000
+ if (item) {
17001
+ return React.createElement("span", { className: "clickable" }, item);
17002
+ }
17003
+ return React.createElement("span", null, "-");
16305
17004
  },
16306
17005
  onCell: function (record, rowIndex) {
16307
17006
  return {
@@ -16359,6 +17058,12 @@ var InvestmentManagementComponent = function (props) {
16359
17058
  key: "programmeSector",
16360
17059
  sorter: true,
16361
17060
  align: "left",
17061
+ render: function (item) {
17062
+ if (item) {
17063
+ return React.createElement("span", null, item);
17064
+ }
17065
+ return React.createElement("span", null, "-");
17066
+ },
16362
17067
  },
16363
17068
  {
16364
17069
  title: t("programme:investor"),
@@ -16442,7 +17147,11 @@ var InvestmentManagementComponent = function (props) {
16442
17147
  React.createElement("div", { className: "title-bar" },
16443
17148
  React.createElement("div", { className: "body-title" }, t("programme:investmentTitle")),
16444
17149
  React.createElement("div", { className: "body-sub-title" }, t("programme:investmentDesc"))),
16445
- React.createElement("div", { className: "actions" }, enableAddOwnership && (React.createElement("div", { className: "action-bar" },
17150
+ React.createElement("div", { className: "actions" }, enableAddOwnership &&
17151
+ ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) == CompanyRole.MINISTRY ||
17152
+ (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) == CompanyRole.GOVERNMENT ||
17153
+ (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) == CompanyRole.PROGRAMME_DEVELOPER) &&
17154
+ userInfoState.userRole != Role.ViewOnly && (React.createElement("div", { className: "action-bar" },
16446
17155
  React.createElement(Button, { type: "primary", size: "large", block: true, icon: React.createElement(PlusOutlined, null), onClick: onClickAddOwnership }, t("programme:addOwnership")))))),
16447
17156
  React.createElement("div", { className: "content-card" },
16448
17157
  React.createElement(Row, null,
@@ -16483,7 +17192,7 @@ var InvestmentManagementComponent = function (props) {
16483
17192
  return handleTableChange(val, sorter);
16484
17193
  }, locale: {
16485
17194
  emptyText: (React.createElement(Empty, { image: Empty.PRESENTED_IMAGE_SIMPLE, description: tableData.length === 0
16486
- ? t("creditTransfer:noTransfer")
17195
+ ? t("programme:noInvestmentData")
16487
17196
  : null })),
16488
17197
  } }))))),
16489
17198
  popupInfo && selectedReq && (React.createElement(InvestmentActionModel, { investment: selectedReq, onCancel: function () {
@@ -16496,7 +17205,7 @@ var css_248z$i = ".steps-actions {\n display: flex;\n flex-direction: row-reve
16496
17205
  styleInject(css_248z$i);
16497
17206
 
16498
17207
  var SupportCreationComponent = function (props) {
16499
- var t = props.t, useConnection = props.useConnection, userInfoState = props.userInfoState, useLocation = props.useLocation; props.onNavigateToProgrammeManagementView; props.onNavigateToProgrammeView;
17208
+ var t = props.t, useLocation = props.useLocation; props.onNavigateToProgrammeManagementView; props.onNavigateToProgrammeView;
16500
17209
  useLocation().state;
16501
17210
  var _a = useState(); _a[0]; _a[1];
16502
17211
  var formOne = Form.useForm()[0];
@@ -16509,6 +17218,7 @@ var SupportCreationComponent = function (props) {
16509
17218
  var _f = useState([]), organisationsList = _f[0], setOrganisationList = _f[1];
16510
17219
  var _g = useState([]), instrument = _g[0], setInstrument = _g[1];
16511
17220
  var _h = useState(); _h[0]; var setStepOneData = _h[1];
17221
+ var userInfoState = useUserContext().userInfoState;
16512
17222
  var instrumentOptions = Object.keys(Instrument).map(function (k, index) { return ({
16513
17223
  label: addSpaces(Object.values(Instrument)[index]),
16514
17224
  value: Object.values(Instrument)[index],
@@ -16851,7 +17561,7 @@ var SupportCreationComponent = function (props) {
16851
17561
  };
16852
17562
 
16853
17563
  var SupportManagementComponent = function (props) {
16854
- var translator = props.translator, useConnection = props.useConnection; props.onNavigateToProgrammeView; var useUserContext = props.useUserContext, useSettingsContext = props.useSettingsContext, enableAddSupport = props.enableAddSupport, onClickAddSupport = props.onClickAddSupport;
17564
+ var translator = props.translator; props.onNavigateToProgrammeView; var enableAddSupport = props.enableAddSupport, onClickAddSupport = props.onClickAddSupport;
16855
17565
  var t = translator.t;
16856
17566
  var statusOptions = Object.keys(InvestmentStatus).map(function (k, index) { return ({
16857
17567
  label: addSpaces(Object.values(InvestmentStatus)[index]),
@@ -17353,7 +18063,7 @@ var css_248z$h = ".ndc-management .ant-checkbox-checked .ant-checkbox-input[valu
17353
18063
  styleInject(css_248z$h);
17354
18064
 
17355
18065
  var NdcActionManagementComponent = function (props) {
17356
- var t = props.t, useConnection = props.useConnection, useUserContext = props.useUserContext, onNavigateToNdcManagementView = props.onNavigateToNdcManagementView, onNavigateToProgrammeManagementView = props.onNavigateToProgrammeManagementView;
18066
+ var t = props.t, onNavigateToNdcManagementView = props.onNavigateToNdcManagementView, onNavigateToProgrammeManagementView = props.onNavigateToProgrammeManagementView;
17357
18067
  var _a = useState(true), checkAll = _a[0], setCheckAll = _a[1];
17358
18068
  var _b = useState([]), tableData = _b[0], setTableData = _b[1];
17359
18069
  var _c = useState(), totalProgramme = _c[0], setTotalProgramme = _c[1];
@@ -18712,7 +19422,7 @@ var GenderParity = function (props) {
18712
19422
  };
18713
19423
 
18714
19424
  var Assessment = function (props) {
18715
- var onFormSubmit = props.onFormSubmit, assessmentViewData = props.assessmentViewData, viewOnly = props.viewOnly, useConnection = props.useConnection, translator = props.translator;
19425
+ var onFormSubmit = props.onFormSubmit, assessmentViewData = props.assessmentViewData, viewOnly = props.viewOnly, translator = props.translator;
18716
19426
  translator.setDefaultNamespace("coBenifits");
18717
19427
  var t = translator.t;
18718
19428
  var form1 = Form.useForm()[0];
@@ -21117,7 +21827,7 @@ var SocialEnvironmentalRisk = function (props) {
21117
21827
  };
21118
21828
 
21119
21829
  var CoBenifitsComponent = function (props) {
21120
- var onClickedBackBtn = props.onClickedBackBtn, onFormSubmit = props.onFormSubmit, coBenefitsDetails = props.coBenefitsDetails, submitButtonText = props.submitButtonText, viewOnly = props.viewOnly, coBenifitsViewDetails = props.coBenifitsViewDetails, _a = props.loading, loading = _a === void 0 ? false : _a, sdgGoalImages = props.sdgGoalImages, translator = props.translator, useConnection = props.useConnection;
21830
+ var onClickedBackBtn = props.onClickedBackBtn, onFormSubmit = props.onFormSubmit, coBenefitsDetails = props.coBenefitsDetails, submitButtonText = props.submitButtonText, viewOnly = props.viewOnly, coBenifitsViewDetails = props.coBenifitsViewDetails, _a = props.loading, loading = _a === void 0 ? false : _a, sdgGoalImages = props.sdgGoalImages, translator = props.translator;
21121
21831
  var _b = useState(), coBenefitDetails = _b[0], setCoBenefitDetails = _b[1];
21122
21832
  var _c = useState(true), isSocialFormValid = _c[0], setIsSocialFormValid = _c[1];
21123
21833
  var _d = useState(true), isAssessmentFormValid = _d[0], setIsAssessmentFormValid = _d[1];
@@ -21191,7 +21901,7 @@ var CoBenifitsComponent = function (props) {
21191
21901
  label: t("coBenifits:assessment"),
21192
21902
  key: "7",
21193
21903
  children: (React.createElement(Assessment, { onFormSubmit: onAssessmentFormSubmit, assessmentViewData: (viewOnly && (coBenifitsViewDetails === null || coBenifitsViewDetails === void 0 ? void 0 : coBenifitsViewDetails.assessmentDetails)) ||
21194
- (!viewOnly && (coBenefitsDetails === null || coBenefitsDetails === void 0 ? void 0 : coBenefitsDetails.assessmentDetails)), viewOnly: viewOnly || false, useConnection: useConnection, translator: translator })),
21904
+ (!viewOnly && (coBenefitsDetails === null || coBenefitsDetails === void 0 ? void 0 : coBenefitsDetails.assessmentDetails)), viewOnly: viewOnly || false, translator: translator })),
21195
21905
  },
21196
21906
  {
21197
21907
  label: t("coBenifits:socialEnvironmentalRisk"),
@@ -21360,7 +22070,7 @@ var CoBenifitsComponent = function (props) {
21360
22070
  };
21361
22071
 
21362
22072
  var AddNdcActionComponent = function (props) {
21363
- var useConnection = props.useConnection, useLocation = props.useLocation, onNavigateToProgrammeManagementView = props.onNavigateToProgrammeManagementView, onNavigateToProgrammeView = props.onNavigateToProgrammeView, sdgGoalImages = props.sdgGoalImages, translator = props.translator;
22073
+ var useLocation = props.useLocation, onNavigateToProgrammeManagementView = props.onNavigateToProgrammeManagementView, onNavigateToProgrammeView = props.onNavigateToProgrammeView, sdgGoalImages = props.sdgGoalImages, translator = props.translator;
21364
22074
  translator.setDefaultNamespace("ndcAction");
21365
22075
  var t = translator.t;
21366
22076
  var _a = useState(1), current = _a[0], setCurrent = _a[1];
@@ -21502,7 +22212,7 @@ var AddNdcActionComponent = function (props) {
21502
22212
  description: (React.createElement("div", { className: current !== 2 ? "hide" : "" },
21503
22213
  React.createElement(CoBenifitsComponent, { onClickedBackBtn: onClickBackCoBenefits, coBenefitsDetails: ndcActionDetails ? ndcActionDetails.coBenefitsProperties : {}, onFormSubmit: onCoBenefitsSubmit, submitButtonText: isProjectReportsVisible()
21504
22214
  ? t("ndcAction:next")
21505
- : t("ndcAction:submit"), loading: loading, sdgGoalImages: sdgGoalImages, useConnection: useConnection, translator: translator }))),
22215
+ : t("ndcAction:submit"), loading: loading, sdgGoalImages: sdgGoalImages, translator: translator }))),
21506
22216
  },
21507
22217
  ];
21508
22218
  if (isProjectReportsVisible()) {
@@ -21639,7 +22349,7 @@ var uploadDocUserPermission = function (userInfoState, docType, programmeOwnerId
21639
22349
  var NdcActionViewComponent = function (props) {
21640
22350
  var _a;
21641
22351
  var _b, _c;
21642
- var useUserContext = props.useUserContext, useConnection = props.useConnection, useLocation = props.useLocation, onNavigateToNdcManagementView = props.onNavigateToNdcManagementView, translator = props.translator, sdgGoalImages = props.sdgGoalImages, Chart = props.Chart;
22352
+ var useLocation = props.useLocation, onNavigateToNdcManagementView = props.onNavigateToNdcManagementView, translator = props.translator, sdgGoalImages = props.sdgGoalImages, Chart = props.Chart;
21643
22353
  translator.setDefaultNamespace("ndcAction");
21644
22354
  var t = translator.t;
21645
22355
  var userInfoState = useUserContext().userInfoState;
@@ -22132,7 +22842,7 @@ var NdcActionViewComponent = function (props) {
22132
22842
  React.createElement(Card, { className: "card-container" },
22133
22843
  React.createElement("div", { className: "co-benifits-view" },
22134
22844
  React.createElement("div", { className: "title" }, t("ndcAction:coBenefitsSubTitle")),
22135
- React.createElement(CoBenifitsComponent, { viewOnly: true, coBenifitsViewDetails: (_c = state === null || state === void 0 ? void 0 : state.record) === null || _c === void 0 ? void 0 : _c.coBenefitsProperties, sdgGoalImages: sdgGoalImages, useConnection: useConnection, translator: translator })))))))));
22845
+ React.createElement(CoBenifitsComponent, { viewOnly: true, coBenifitsViewDetails: (_c = state === null || state === void 0 ? void 0 : state.record) === null || _c === void 0 ? void 0 : _c.coBenefitsProperties, sdgGoalImages: sdgGoalImages, translator: translator })))))))));
22136
22846
  };
22137
22847
 
22138
22848
  var css_248z$b = ".credit-transfer-management .certify-list {\n width: 110px;\n display: flex;\n align-items: center;\n flex-wrap: wrap; }\n .credit-transfer-management .certify-list .profile-icon {\n margin-bottom: 4px; }\n\n.credit-transfer-management .table-actions-section {\n margin-bottom: 0px; }\n .credit-transfer-management .table-actions-section input {\n font-family: \"Inter\";\n font-size: 0.8rem; }\n\n.credit-transfer-management .all-check {\n margin-right: 10px; }\n .credit-transfer-management .all-check .ant-checkbox-inner::after {\n background-color: rgba(58, 53, 65, 0.5); }\n .credit-transfer-management .all-check .ant-checkbox-checked .ant-checkbox-inner::after {\n background-color: transparent; }\n .credit-transfer-management .all-check .ant-checkbox-checked .ant-checkbox-inner {\n background-color: rgba(58, 53, 65, 0.5);\n border: none; }\n\n.credit-transfer-management .ant-checkbox-checked .ant-checkbox-input[value='Retired'] + .ant-checkbox-inner {\n background-color: rgba(58, 53, 65, 0.4);\n border: none; }\n\n.credit-transfer-management .ant-checkbox-checked .ant-checkbox-input[value='AwaitingAuthorization'] + .ant-checkbox-inner {\n background-color: rgba(237, 77, 71, 0.6);\n border: none; }\n\n.credit-transfer-management .ant-checkbox-checked .ant-checkbox-input[value='Rejected'] + .ant-checkbox-inner {\n background-color: rgba(58, 53, 65, 0.4);\n border: none; }\n\n.credit-transfer-management .ant-checkbox-checked .ant-checkbox-input[value='Issued'] + .ant-checkbox-inner {\n background-color: #16b1ff;\n border: none; }\n\n.credit-transfer-management .ant-checkbox-checked .ant-checkbox-input[value='Transferred'] + .ant-checkbox-inner {\n background-color: rgba(118, 195, 39, 0.6);\n border: none; }\n\n.credit-transfer-modal-container {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n margin: 2rem 0 0 0;\n width: 100%; }\n .credit-transfer-modal-container .icon-credit {\n margin-bottom: 15px; }\n .credit-transfer-modal-container .credit-transfer-details {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n width: 100%;\n margin-bottom: 10px; }\n .credit-transfer-modal-container .credit-transfer-details .content-credit-transfer {\n font-family: 'Inter' !important;\n font-style: normal;\n font-weight: 600;\n font-size: 0.9rem;\n line-height: 1.3rem;\n padding: 0 1rem 0 1rem;\n text-align: center;\n color: rgba(58, 53, 65, 0.8) !important; }\n .credit-transfer-modal-container .credit-transfer-details .sub-content-credit-transfer {\n font-family: 'Inter';\n font-style: normal;\n font-weight: 600;\n font-size: 0.8rem;\n line-height: 1.375rem;\n text-align: center;\n color: rgba(58, 53, 65, 0.5); }\n .credit-transfer-modal-container .remarks-credit-transfer {\n flex-direction: row;\n width: 100%;\n padding: 0.5rem 1rem 0 1rem; }\n .credit-transfer-modal-container .remarks-credit-transfer .modal-form .ant-form-item-explain-error {\n display: flex;\n flex-direction: row; }\n .credit-transfer-modal-container .remarks-credit-transfer .modal-form .ant-form {\n width: 100%; }\n .credit-transfer-modal-container .remarks-credit-transfer .modal-form .ant-form .ant-form-item-label > label {\n font-size: 0.8rem; }\n .credit-transfer-modal-container .remarks-credit-transfer .modal-form .modal-credit-transfer-btns {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n width: 100%;\n margin-top: 1rem; }\n .credit-transfer-modal-container .remarks-credit-transfer .modal-form .modal-credit-transfer-btns .center {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between; }\n .credit-transfer-modal-container .remarks-credit-transfer .modal-form .modal-credit-transfer-btns .width-60 {\n width: 60%; }\n\n.common-table-class .ant-table .ant-table-thead .ant-table-cell {\n font-size: 0.75rem;\n font-weight: 600; }\n";
@@ -22285,7 +22995,7 @@ var TransferActionModel = function (props) {
22285
22995
  };
22286
22996
 
22287
22997
  var CreditTransferComponent = function (props) {
22288
- var useConnection = props.useConnection, useUserContext = props.useUserContext, useSettingsContext = props.useSettingsContext, translator = props.translator, onNavigateToProgrammeView = props.onNavigateToProgrammeView;
22998
+ var translator = props.translator, onNavigateToProgrammeView = props.onNavigateToProgrammeView;
22289
22999
  var userInfoState = useUserContext().userInfoState;
22290
23000
  var t = translator.t;
22291
23001
  var statusOptions = Object.keys(CreditTransferStage).map(function (k, index) { return ({
@@ -23220,7 +23930,7 @@ var MapStatsComponent = function (props) {
23220
23930
 
23221
23931
  var RangePicker$1 = DatePicker.RangePicker;
23222
23932
  var MrvDashboardComponent = function (props) {
23223
- var useConnection = props.useConnection, useUserContext = props.useUserContext, Link = props.Link, Chart = props.Chart, t = props.t, ButtonGroup = props.ButtonGroup, _a = props.isMultipleDashboardsVisible, isMultipleDashboardsVisible = _a === void 0 ? false : _a;
23933
+ var Link = props.Link, Chart = props.Chart, t = props.t, ButtonGroup = props.ButtonGroup, _a = props.isMultipleDashboardsVisible, isMultipleDashboardsVisible = _a === void 0 ? false : _a;
23224
23934
  var _b = useConnection(); _b.get; var post = _b.post; _b.delete;
23225
23935
  var _c = useState({}), data = _c[0], setData = _c[1];
23226
23936
  var _e = useState(false), loading = _e[0], setLoading = _e[1];
@@ -24953,7 +25663,7 @@ var RegistryBarChartsStatComponent = function (props) {
24953
25663
 
24954
25664
  var RangePicker = DatePicker.RangePicker;
24955
25665
  var RegistryDashboardComponent = function (props) {
24956
- var useUserContext = props.useUserContext, useConnection = props.useConnection, Chart = props.Chart, t = props.t, ButtonGroup = props.ButtonGroup, Link = props.Link, _a = props.isMultipleDashboardsVisible, isMultipleDashboardsVisible = _a === void 0 ? false : _a;
25666
+ var Chart = props.Chart, t = props.t, ButtonGroup = props.ButtonGroup, Link = props.Link, _a = props.isMultipleDashboardsVisible, isMultipleDashboardsVisible = _a === void 0 ? false : _a;
24957
25667
  var _b = useConnection(); _b.get; var post = _b.post; _b.delete;
24958
25668
  var userInfoState = useUserContext().userInfoState;
24959
25669
  var _c = useState(false), loadingWithoutTimeRange = _c[0], setLoadingWithoutTimeRange = _c[1];
@@ -26655,880 +27365,622 @@ var RegistryDashboardComponent = function (props) {
26655
27365
  lastUpdateTransferLocations))))))))) : ("")));
26656
27366
  };
26657
27367
 
26658
- React.createContext(null);
27368
+ var EditableContext = React.createContext(null);
27369
+ var EditableRow = function (_a) {
27370
+ _a.index; var props = __rest(_a, ["index"]);
27371
+ var form = Form.useForm()[0];
27372
+ return (React.createElement(Form, { form: form, component: false },
27373
+ React.createElement(EditableContext.Provider, { value: form },
27374
+ React.createElement("tr", __assign({}, props)))));
27375
+ };
26659
27376
  var EditableCell = function (_a) {
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)));
27377
+ 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"]);
27378
+ var _b = useState(false), editing = _b[0], setEditing = _b[1];
27379
+ var inputRef = useRef(null);
27380
+ var form = useContext(EditableContext);
27381
+ useEffect(function () {
27382
+ if (editing) {
27383
+ inputRef.current.focus();
27384
+ }
27385
+ }, [editing]);
27386
+ var toggleEdit = function () {
27387
+ var _a;
27388
+ setEditing(!editing);
27389
+ form.setFieldsValue((_a = {}, _a[dataIndex] = record[dataIndex], _a));
27390
+ };
27391
+ var save = function () { return __awaiter(void 0, void 0, void 0, function () {
27392
+ var values, errInfo_1;
27393
+ return __generator(this, function (_a) {
27394
+ switch (_a.label) {
27395
+ case 0:
27396
+ _a.trys.push([0, 2, , 3]);
27397
+ return [4 /*yield*/, form.validateFields()];
27398
+ case 1:
27399
+ values = _a.sent();
27400
+ toggleEdit();
27401
+ handleSave(__assign(__assign({}, record), values));
27402
+ return [3 /*break*/, 3];
27403
+ case 2:
27404
+ errInfo_1 = _a.sent();
27405
+ console.log("Save failed:", errInfo_1);
27406
+ return [3 /*break*/, 3];
27407
+ case 3: return [2 /*return*/];
27408
+ }
27409
+ });
27410
+ }); };
27411
+ var childNode = children;
27412
+ if (editable) {
27413
+ childNode = editing ? (React.createElement(Form.Item, { style: { margin: 0 }, name: dataIndex, rules: [
27414
+ {
27415
+ required: true,
27416
+ message: "".concat(title, " is required."),
27417
+ },
27418
+ ] },
27419
+ 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));
27420
+ }
27421
+ return React.createElement("td", __assign({}, restProps), childNode);
26701
27422
  };
26702
27423
 
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";
27424
+ 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";
26704
27425
  styleInject(css_248z$4);
26705
27426
 
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
-
27427
+ var NdcActionType;
27428
+ (function (NdcActionType) {
27429
+ NdcActionType[NdcActionType["main"] = 0] = "main";
27430
+ NdcActionType[NdcActionType["sub"] = 1] = "sub";
27431
+ })(NdcActionType || (NdcActionType = {}));
26738
27432
  var NdcDetailsComponent = function (props) {
26739
- var t = props.t, useConnection = props.useConnection, useUserContext = props.useUserContext;
27433
+ var t = props.t;
26740
27434
  var RangePicker = DatePicker.RangePicker;
26741
- var _a = useState([]), ndcActionsList = _a[0], setNdcActionsList = _a[1];
26742
- var _b = useState(false), loading = _b[0], setLoading = _b[1];
27435
+ var _a = useState([]), ndcDetailsData = _a[0], setNdcDetailsData = _a[1];
27436
+ var _b = useState(false), loading = _b[0]; _b[1];
27437
+ var periodItemsRef = useRef([]);
26743
27438
  var _c = useState([]), periodItems = _c[0], setPeriodItems = _c[1];
26744
- var _d = useState({}), selectedPeriod = _d[0], setSelectedPeriod = _d[1];
26745
- var selectedDateRangeRef = useRef({});
27439
+ var _d = useState("add_new"), selectedTab = _d[0], setSelectedTab = _d[1];
27440
+ var selectedPeriod = useRef({});
27441
+ var addedNdcDetailId = useRef(0);
27442
+ var selectedNdcDetail = useRef({});
26746
27443
  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
- };
26768
27444
  var userInfoState = useUserContext().userInfoState;
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)) &&
27445
+ var isAddRangeVisible = function () {
27446
+ return (((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.MINISTRY ||
27447
+ (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.GOVERNMENT) &&
26793
27448
  (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.userRole) !== Role.ViewOnly);
26794
27449
  };
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) &&
27450
+ var isAddNdcActionVisible = function () {
27451
+ return ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.GOVERNMENT &&
26799
27452
  (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.userRole) !== Role.ViewOnly);
26800
27453
  };
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
- };
26840
27454
  var inRange = function (num, min, max) {
26841
27455
  return num >= min && num <= max;
26842
27456
  };
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
- if (!updatedFields) {
26862
- setEditingKey(null);
26863
- return [2 /*return*/];
26864
- }
26865
- else if (updatedFields.kpi === row.kpi &&
26866
- updatedFields.nationalPlanObjective === row.nationalPlanObjective) {
26867
- setEditingKey(null);
26868
- return [2 /*return*/];
26869
- }
26870
- updatedItem = __assign(__assign({}, row), updatedFields);
26871
- if (!(updatedItem.status === NdcDetailsActionStatus.New)) return [3 /*break*/, 6];
26872
- if (isGovernmentUser &&
26873
- updatedItem.actionType === NdcDetailsActionType.SubAction) {
26874
- updatedItem.status = NdcDetailsActionStatus.Approved;
27457
+ function onAddNewSubNdcDetail() {
27458
+ var range = selectedTab.split("-");
27459
+ var ndcDetail = ndcDetailsData.find(function (item) { return item.key === selectedNdcDetail.current.key; });
27460
+ var ndcDetailItemIndex = ndcDetailsData.findIndex(function (item) { return item.key === selectedNdcDetail.current.key; });
27461
+ if (ndcDetail) {
27462
+ addedNdcDetailId.current = addedNdcDetailId.current + 1;
27463
+ var newData = {
27464
+ key: addedNdcDetailId.current,
27465
+ startDate: new Date("".concat(Number(range[0]), "-01-24 23:12:00")),
27466
+ endDate: new Date("".concat(Number(range[0]), "-12-24 23:12:00")),
27467
+ ndcActionId: ndcDetail === null || ndcDetail === void 0 ? void 0 : ndcDetail.key,
27468
+ nationalPlanObj: "",
27469
+ kpi: "",
27470
+ ministry: "",
27471
+ };
27472
+ if (!ndcDetail.subNdcDetails) {
27473
+ ndcDetail.subNdcDetails = [];
27474
+ }
27475
+ ndcDetail.subNdcDetails.push(newData);
27476
+ }
27477
+ ndcDetailsData[ndcDetailItemIndex] = ndcDetail;
27478
+ setNdcDetailsData(ndcDetailsData);
27479
+ setTableKey(function (key) { return key + 1; });
27480
+ }
27481
+ var handleSave = function (row) {
27482
+ setNdcDetailsData(function (prevData) {
27483
+ var newData = JSON.parse(JSON.stringify(prevData));
27484
+ if (row.type === NdcActionType.main) {
27485
+ var index = newData.findIndex(function (item) { return row.key === item.key; });
27486
+ if (index !== -1) {
27487
+ newData[index] = __assign(__assign({}, newData[index]), row);
27488
+ }
27489
+ }
27490
+ else {
27491
+ var parentIndex = newData.findIndex(function (item) { return row.ndcActionId === item.key; });
27492
+ var parentItem = newData[parentIndex];
27493
+ if (parentItem) {
27494
+ if (parentItem.subNdcDetails) {
27495
+ var itemIndex = parentItem.subNdcDetails.findIndex(function (item) { return row.key === item.key; });
27496
+ if (itemIndex === -1) {
27497
+ parentItem.subNdcDetails.push(row);
27498
+ }
27499
+ else {
27500
+ parentItem.subNdcDetails[itemIndex] = __assign({}, row);
27501
+ }
26875
27502
  }
26876
27503
  else {
26877
- updatedItem.status = NdcDetailsActionStatus.Pending;
27504
+ parentItem.subNdcDetails = [row];
26878
27505
  }
26879
- return [4 /*yield*/, post("national/programme/addNdcDetailsAction", __assign(__assign({}, updatedItem), { kpi: parseInt(updatedItem.kpi.toString()) }))];
26880
- case 5:
26881
- _a.sent();
26882
- return [3 /*break*/, 8];
26883
- case 6:
26884
- updatedItem.status = NdcDetailsActionStatus.Pending;
26885
- return [4 /*yield*/, put("national/programme/updateNdcDetailsAction", __assign(__assign({}, updatedItem), { kpi: parseInt(updatedItem.kpi.toString()) }))];
26886
- case 7:
26887
- _a.sent();
26888
- _a.label = 8;
26889
- case 8:
26890
- fetchNdcDetailActions();
26891
- setEditingKey(null);
26892
- return [3 /*break*/, 10];
26893
- case 9:
26894
- exception_2 = _a.sent();
26895
- setEditingKey(null);
26896
- message.open({
26897
- type: "error",
26898
- content: exception_2.message,
26899
- duration: 3,
26900
- style: { textAlign: "right", marginRight: 15, marginTop: 10 },
26901
- });
26902
- return [3 /*break*/, 10];
26903
- case 10: return [2 /*return*/];
27506
+ }
27507
+ newData[parentIndex] = __assign({}, parentItem);
27508
+ setTableKey(function (key) { return key + 1; });
26904
27509
  }
27510
+ return newData;
26905
27511
  });
26906
- }); };
26907
- var actionMenu = function (record) {
26908
- if (record.status === NdcDetailsActionStatus.Pending &&
26909
- isGovernmentUser &&
26910
- !selectedPeriod.finalized) {
26911
- return (React.createElement(List, { className: "action-menu", size: "small", dataSource: [
26912
- {
26913
- text: t("ndc:approve"),
26914
- icon: React.createElement(Icon.BoxArrowInDown, null),
26915
- style: "color-primary",
26916
- click: function () {
26917
- setActionInfo({
26918
- action: "Approve",
26919
- headerText: t("ndc:actionApproveTitle"),
26920
- type: "primary",
26921
- icon: React.createElement(Icon.BoxArrowInDown, null),
26922
- recordId: record.id,
26923
- });
26924
- setOpenConfirmationModal(true);
26925
- },
26926
- },
26927
- {
26928
- text: t("ndc:reject"),
26929
- icon: React.createElement(Icon.XOctagon, null),
26930
- style: "color-error",
26931
- click: function () {
26932
- setActionInfo({
26933
- action: "Reject",
26934
- headerText: t("ndc:rejectApproveTitle"),
26935
- type: "danger",
26936
- icon: React.createElement(Icon.XOctagon, null),
26937
- recordId: record.id,
26938
- });
26939
- setOpenConfirmationModal(true);
26940
- },
26941
- },
26942
- ], renderItem: function (item) { return (React.createElement(List.Item, { onClick: item.click },
26943
- React.createElement(Typography.Text, { className: "action-icon ".concat(item.style) }, item.icon),
26944
- React.createElement("span", null, item.text))); } }));
27512
+ };
27513
+ var getNdcDetailsForPeriod = function () {
27514
+ var range = selectedTab.split("-");
27515
+ if (range.length > 1) {
27516
+ var filteredData = ndcDetailsData.filter(function (item) {
27517
+ return inRange(Number(moment(item.startDate).year()), Number(range[0]), Number(range[1]));
27518
+ });
27519
+ return filteredData;
27520
+ }
27521
+ else {
27522
+ return [];
27523
+ }
27524
+ };
27525
+ var getSubNdcDetails = function (key) {
27526
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
27527
+ var ndcDetail = ndcDetailsData.find(function (item) { return item.key === key; });
27528
+ if (ndcDetail) {
27529
+ 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()) !== "" &&
27530
+ ((_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) &&
27531
+ ((_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()) !== "" &&
27532
+ ((_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) &&
27533
+ 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() !== "" &&
27534
+ 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)) {
27535
+ onAddNewSubNdcDetail();
27536
+ }
27537
+ return ndcDetail.subNdcDetails;
26945
27538
  }
26946
27539
  else {
26947
- return null;
27540
+ return [];
26948
27541
  }
26949
27542
  };
26950
27543
  var defaultColumns = [
26951
27544
  {
26952
27545
  title: t("ndc:ndcColumnsNationalPlanObj"),
26953
- dataIndex: "nationalPlanObjective",
26954
- key: "nationalPlanObjective",
27546
+ dataIndex: "nationalPlanObj",
27547
+ key: "nationalPlanObj",
26955
27548
  align: "left",
26956
- width: 400,
26957
27549
  editable: true,
26958
- render: function (_, record) { return (React.createElement(Space, { size: "middle" }, record.nationalPlanObjective ? (React.createElement(Tooltip, { title: isNdcActionEditable(record) ? "" : t("ndc:ndcUnauthorisedMsg") },
26959
- React.createElement("span", null, record.nationalPlanObjective))) : (React.createElement(Input, { placeholder: "Enter National Plan Objective" })))); },
27550
+ width: "50%",
27551
+ render: function (_, record) { return (React.createElement(React.Fragment, null, record.nationalPlanObj ? (React.createElement(Space, { size: "middle" },
27552
+ React.createElement("span", null, record.nationalPlanObj))) : (React.createElement("input", { placeholder: "Please add Programmes", className: "ant-input", type: "text" })))); },
26960
27553
  },
26961
27554
  {
26962
27555
  title: t("ndc:ndcColumnsKpi"),
26963
27556
  dataIndex: "kpi",
26964
27557
  key: "kpi",
26965
27558
  align: "left",
26966
- width: 100,
26967
27559
  editable: true,
26968
- render: function (_, record) { return (React.createElement(Space, { size: "middle" }, record.kpi ? (React.createElement(Tooltip, { title: isNdcActionEditable(record) ? "" : t("ndc:ndcUnauthorisedMsg") },
26969
- React.createElement("span", null, record.kpi))) : (React.createElement(Input, { placeholder: "Enter Kpi" })))); },
26970
- },
26971
- {
26972
- title: t("ndc:ndcColumnsMinistry"),
26973
- dataIndex: "ministryName",
26974
- key: "ministryName",
26975
- align: "left",
26976
- width: 300,
26977
- editable: false,
26978
- render: function (_, record) { return (React.createElement(Tooltip, { title: isSubNdcActionsEditable(record) ? "" : t("ndc:ndcUnauthorisedMsg") },
26979
- React.createElement(Select, { disabled: !(isSubNdcActionsEditable(record) && isEditing(record)), defaultValue: record.ministryName ? record.ministryName : loginMinistry, style: { width: 220 }, onChange: function (value, option) {
26980
- record.ministryName = option.label;
26981
- handleSave(record);
26982
- }, options: ministryOrgList }))); },
27560
+ width: "10%",
27561
+ render: function (_, record) { return (React.createElement(React.Fragment, null, record.nationalPlanObj ? (React.createElement(Space, { size: "middle" },
27562
+ React.createElement("span", null, record.kpi))) : (React.createElement("input", { placeholder: "Enter Kpi", className: "ant-input", type: "text" })))); },
26983
27563
  },
26984
27564
  {
26985
- title: t("ndc:ndcColumnsStatus"),
26986
- dataIndex: "status",
26987
- key: "status",
27565
+ title: "Government Department",
27566
+ dataIndex: "ministry",
27567
+ key: "ministry",
26988
27568
  align: "left",
26989
- width: 200,
26990
- editable: false,
26991
- render: function (_, record) {
26992
- var menu = actionMenu(record);
26993
- return (React.createElement("div", { onClick: function (event) { return event.stopPropagation(); } },
26994
- record.actionType === NdcDetailsActionType.SubAction &&
26995
- record.status !== NdcDetailsActionStatus.New ? (React.createElement(Tooltip, { title: record.status, color: TooltipColor, key: TooltipColor },
26996
- React.createElement(Tag, { className: "clickable", color: getNdcActionStatusTagType(record.status) }, addSpaces(record.status)))) : (""),
26997
- record.actionType === NdcDetailsActionType.SubAction && menu ? (React.createElement(Popover, { placement: "bottomRight", content: menu, trigger: "click" },
26998
- React.createElement(EllipsisOutlined, { rotate: 90, style: {
26999
- fontWeight: 600,
27000
- fontSize: "1rem",
27001
- cursor: "pointer",
27002
- } }))) : (React.createElement("span", null))));
27003
- },
27569
+ editable: true,
27570
+ width: "40%",
27571
+ render: function (_, record) { return (React.createElement(React.Fragment, null, record.nationalPlanObj ? (React.createElement(Space, { size: "middle" },
27572
+ React.createElement("span", null, record.ministry))) : (React.createElement("input", { placeholder: "Please add the Government Department", className: "ant-input", type: "text" })))); },
27004
27573
  },
27005
27574
  ];
27006
27575
  var columns = defaultColumns.map(function (col) {
27007
27576
  if (!col.editable) {
27008
27577
  return col;
27009
27578
  }
27010
- return __assign(__assign({}, col), { onCell: function (record) {
27011
- return {
27012
- record: record,
27013
- editing: isEditing(record),
27014
- dataIndex: col.dataIndex,
27015
- title: col.title,
27016
- onBlurHandler: function (record) {
27017
- if (isEditing(record)) {
27018
- handleSave(record);
27019
- }
27020
- },
27021
- t: t,
27022
- };
27023
- } });
27579
+ return __assign(__assign({}, col), { onCell: function (record) { return ({
27580
+ record: record,
27581
+ editable: col.editable,
27582
+ dataIndex: col.dataIndex,
27583
+ title: col.title,
27584
+ handleSave: handleSave,
27585
+ }); } });
27024
27586
  });
27025
- function onClickedAddNewNdcDetail() {
27026
- return __awaiter(this, void 0, void 0, function () {
27027
- var periodId, newData_1, lastPage;
27028
- return __generator(this, function (_a) {
27029
- if (selectedPeriod.key !== "add_new") {
27030
- form.setFieldsValue({
27031
- nationalPlanObjective: "",
27032
- kpi: "",
27033
- });
27034
- periodId = parseInt(selectedPeriod.key);
27035
- newData_1 = {
27036
- id: nextAvailableActionId,
27037
- actionType: NdcDetailsActionType.MainAction,
27038
- nationalPlanObjective: "",
27039
- kpi: "",
27040
- ministryName: loginMinistry,
27041
- periodId: periodId,
27042
- status: NdcDetailsActionStatus.New,
27043
- };
27044
- setEditingKey(nextAvailableActionId);
27045
- setNextAvailableActionId(function (value) { return value + 1; });
27046
- setNdcActionsList(function (ndcActionsList) { return __spreadArray(__spreadArray([], ndcActionsList, true), [
27047
- newData_1,
27048
- ], false); });
27049
- setTableKey(function (key) { return key + 1; });
27050
- if (ndcMainDetailsForPeriod.length + 1 > pageSize) {
27051
- lastPage = Math.ceil(ndcMainDetailsForPeriod.length / pageSize);
27052
- setCurrentPage(lastPage);
27053
- }
27054
- }
27055
- return [2 /*return*/];
27056
- });
27057
- });
27587
+ function onAddNewNdcDetail() {
27588
+ var range = selectedTab.split("-");
27589
+ var ndcActionId = ++addedNdcDetailId.current;
27590
+ var newData = {
27591
+ key: ndcActionId,
27592
+ type: NdcActionType.main,
27593
+ startDate: new Date("".concat(Number(range[0]), "-01-24 23:12:00")),
27594
+ endDate: new Date("".concat(Number(range[0]), "-12-24 23:12:00")),
27595
+ nationalPlanObj: "",
27596
+ kpi: "",
27597
+ ministry: "",
27598
+ subNdcDetails: [
27599
+ {
27600
+ key: ++addedNdcDetailId.current,
27601
+ ndcActionId: ndcActionId,
27602
+ type: NdcActionType.sub,
27603
+ startDate: new Date("2019-03-25"),
27604
+ endDate: new Date("2020-03-25"),
27605
+ nationalPlanObj: "",
27606
+ kpi: "",
27607
+ ministry: "",
27608
+ },
27609
+ ],
27610
+ };
27611
+ setNdcDetailsData(__spreadArray(__spreadArray([], ndcDetailsData, true), [newData], false));
27058
27612
  }
27059
27613
  var components = {
27060
27614
  body: {
27615
+ row: EditableRow,
27061
27616
  cell: EditableCell,
27062
27617
  },
27063
27618
  };
27064
- var onClickedDeletePeriod = function () { return __awaiter(void 0, void 0, void 0, function () {
27065
- return __generator(this, function (_a) {
27066
- setActionInfo({
27067
- action: "Delete",
27068
- headerText: t("ndc:periodDeleteConfirmTitle"),
27069
- type: "danger",
27070
- icon: React.createElement(Icon.XCircle, null),
27071
- recordId: selectedPeriod.key,
27619
+ //commented because rendering issue
27620
+ function ndcDetailsTableContent() {
27621
+ return (React.createElement("div", null)
27622
+ // <div>
27623
+ // <Button
27624
+ // onClick={onAddNewNdcDetail}
27625
+ // type="primary"
27626
+ // style={{
27627
+ // marginBottom: 16,
27628
+ // }}
27629
+ // >
27630
+ // Add a row
27631
+ // </Button>
27632
+ // <Table
27633
+ // components={components}
27634
+ // rowClassName={() => 'editable-row'}
27635
+ // bordered
27636
+ // dataSource={ndcDetailsData}
27637
+ // columns={columns}
27638
+ // />
27639
+ // </div>
27640
+ );
27641
+ }
27642
+ var onCancelPeriod = function () { };
27643
+ var onAddNewPeriod = function () {
27644
+ if (selectedPeriod &&
27645
+ selectedPeriod.current &&
27646
+ selectedPeriod.current.start &&
27647
+ selectedPeriod.current.end) {
27648
+ var newPeriodItem_1 = {
27649
+ key: "".concat(selectedPeriod.current.start, "-").concat(selectedPeriod.current.end),
27650
+ label: "".concat(selectedPeriod.current.start, "-").concat(selectedPeriod.current.end),
27651
+ start: selectedPeriod.current.start,
27652
+ end: selectedPeriod.current.end,
27653
+ children: ndcDetailsTableContent(),
27654
+ };
27655
+ var existingIndex = periodItemsRef.current.findIndex(function (item) {
27656
+ return inRange(newPeriodItem_1.start, item.start, item.end) ||
27657
+ inRange(newPeriodItem_1.end, item.start, item.end);
27072
27658
  });
27073
- setOpenConfirmationModal(true);
27074
- return [2 /*return*/];
27075
- });
27076
- }); };
27077
- var onClickedFinalizePeriod = function () { return __awaiter(void 0, void 0, void 0, function () {
27078
- var isPendingActionAvailable;
27079
- return __generator(this, function (_a) {
27080
- if (ndcMainDetailsForPeriod.length === 0) {
27081
- message.open({
27082
- type: "error",
27083
- content: t("ndc:finalizeNdcEmptyErrorText"),
27084
- duration: 3,
27085
- style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27086
- });
27087
- return [2 /*return*/];
27659
+ if (existingIndex === -1) {
27660
+ setPeriodItems(function (items) { return __spreadArray(__spreadArray([], items, true), [newPeriodItem_1], false); });
27661
+ periodItemsRef.current = __spreadArray(__spreadArray([], periodItemsRef.current, true), [newPeriodItem_1], false);
27088
27662
  }
27089
- isPendingActionAvailable = false;
27090
- ndcMainDetailsForPeriod.forEach(function (mainAction) {
27091
- var pendingActions = ndcActionsList.filter(function (action) {
27092
- return (action.status === NdcDetailsActionStatus.Pending &&
27093
- action.actionType === NdcDetailsActionType.SubAction &&
27094
- action.parentActionId === mainAction.id);
27095
- });
27096
- if (pendingActions && pendingActions.length > 0) {
27097
- isPendingActionAvailable = true;
27098
- return;
27099
- }
27100
- });
27101
- if (isPendingActionAvailable) {
27663
+ else {
27102
27664
  message.open({
27103
27665
  type: "error",
27104
- content: t("ndc:finalizeErrorText"),
27666
+ content: t("ndc:rangeAlreadyExists"),
27105
27667
  duration: 3,
27106
27668
  style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27107
27669
  });
27108
27670
  }
27109
- else {
27110
- setActionInfo({
27111
- action: "Finalize",
27112
- headerText: t("ndc:finalizeApproveTitle"),
27113
- text: t("ndc:finalizeApproveSubTitle"),
27114
- type: "primary",
27115
- icon: React.createElement(Icon.Clipboard2Check, null),
27116
- recordId: selectedPeriod.key,
27117
- });
27118
- setOpenConfirmationModal(true);
27119
- }
27120
- return [2 /*return*/];
27121
- });
27122
- }); };
27123
- var onMainTableRowExpand = function (expanded, record) {
27124
- var keys = [];
27125
- if (expanded) {
27126
- keys.push(record.id);
27127
27671
  }
27128
- setExpandedRowKeys(keys);
27129
- setNdcSubActionsForMainAction(record.id);
27672
+ };
27673
+ useEffect(function () {
27674
+ if (periodItems && periodItems.length > 3) {
27675
+ setSelectedTab(periodItems[periodItems.length - 1].key);
27676
+ }
27677
+ }, [periodItems]);
27678
+ var onDateRangeChanged = function (range) {
27679
+ var period = {
27680
+ start: Number(moment(range[0]).year()),
27681
+ end: Number(moment(range[1]).year()),
27682
+ };
27683
+ selectedPeriod.current = period;
27130
27684
  };
27131
27685
  function addNewPeriodContent() {
27132
27686
  return (React.createElement("div", null,
27133
- React.createElement(Row, { justify: "start", align: "middle", gutter: [16, 16] },
27134
- React.createElement(Col, { flex: "340px" },
27135
- React.createElement(RangePicker, { disabledDate: function (current) { return moment(current).year() < 1900; }, onChange: onDateRangeChanged, picker: "year" })),
27136
- React.createElement(Col, { flex: "auto" },
27137
- React.createElement(Button, { type: "primary", onClick: onAddNewPeriod, htmlType: "submit", loading: loading }, t("ndc:submit"))))));
27687
+ React.createElement(Row, null,
27688
+ React.createElement(RangePicker, { onChange: onDateRangeChanged, picker: "year" })),
27689
+ React.createElement(Row, { className: "mg-top-1" },
27690
+ React.createElement("div", { className: "ndc-steps-actions" },
27691
+ React.createElement(Button, { type: "primary", onClick: onAddNewPeriod, htmlType: "submit", loading: loading }, t("ndc:submit")),
27692
+ React.createElement(Button, { className: "back-btn", onClick: onCancelPeriod, loading: loading }, t("ndc:back"))))));
27138
27693
  }
27139
- var onChange = function (page, size) {
27140
- setCurrentPage(page);
27141
- setPageSize(size);
27694
+ function getSubNdcActionContent(record) {
27695
+ selectedNdcDetail.current = record;
27696
+ return (React.createElement(Table, { components: components, rowClassName: function () { return "editable-row"; }, bordered: true, dataSource: getSubNdcDetails(record.key), columns: columns, showHeader: false, pagination: false }));
27697
+ }
27698
+ var onTabChange = function (key) {
27699
+ setSelectedTab(key);
27142
27700
  };
27143
- function mainNdcActionTableContent() {
27144
- return (React.createElement("div", null,
27145
- React.createElement(Row, null,
27146
- React.createElement(Col, { span: 24 },
27147
- React.createElement(Form, { form: form, component: false },
27148
- React.createElement(Table, { tableLayout: "fixed", key: tableKey, className: "common-table-class", rowKey: "id", pagination: {
27149
- current: currentPage,
27150
- pageSize: pageSize,
27151
- total: ndcMainDetailsForPeriod.length,
27152
- showQuickJumper: true,
27153
- showSizeChanger: true,
27154
- onChange: onChange,
27155
- }, components: components, rowClassName: function () { return "editable-row"; }, bordered: true, loading: loading, dataSource: ndcMainDetailsForPeriod, columns: columns, expandedRowKeys: expandedRowKeys, onExpand: onMainTableRowExpand, expandable: {
27156
- expandedRowRender: function (record) {
27157
- return subNdcActionTableContent();
27158
- },
27159
- columnWidth: 40,
27160
- }, onRow: function (record, rowIndex) {
27161
- return {
27162
- onClick: function (event) {
27163
- if (record.id &&
27164
- isNdcActionEditable(record) &&
27165
- !isEditing(record)) {
27166
- form.setFieldsValue(__assign({}, record));
27167
- setEditingKey(record.id);
27168
- }
27169
- },
27170
- onMouseLeave: function () {
27171
- if (isEditing(record)) {
27172
- handleSave(record);
27173
- }
27174
- },
27175
- };
27176
- }, footer: function () {
27177
- return isGovernmentUser &&
27178
- !selectedPeriod.finalized && (React.createElement(Row, { justify: "center" },
27179
- React.createElement(Button, { className: "btnAddNewMainAct", disabled: isMainActionInEditMode(), onClick: onClickedAddNewNdcDetail, type: "default" }, t("ndc:addNdcAction"))));
27180
- } })))),
27181
- isGovernmentUser && !selectedPeriod.finalized ? (React.createElement(Row, { justify: "end" },
27182
- React.createElement(Button, { className: "mg-left-1 btn-danger", onClick: onClickedDeletePeriod, htmlType: "submit", disabled: isMainActionInEditMode(), loading: loading }, t("ndc:delete")),
27183
- React.createElement(Button, { className: "mg-left-1", type: "primary", onClick: onClickedFinalizePeriod, disabled: isMainActionInEditMode(), htmlType: "submit", loading: loading }, t("ndc:finalize")))) : ("")));
27184
- }
27185
- function subNdcActionTableContent(record) {
27186
- 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) {
27187
- return {
27188
- onClick: function (event) {
27189
- if (record.id &&
27190
- isNdcActionEditable(record) &&
27191
- !isEditing(record)) {
27192
- form.setFieldsValue(__assign({}, record));
27193
- setEditingKey(record.id);
27194
- }
27701
+ useEffect(function () {
27702
+ var defaultNdcDetails = [
27703
+ {
27704
+ key: 1,
27705
+ type: NdcActionType.main,
27706
+ startDate: new Date("2019-03-25"),
27707
+ endDate: new Date("2020-03-25"),
27708
+ nationalPlanObj: "Enhance value addition in key growth opportunities",
27709
+ kpi: 25,
27710
+ ministry: "Ministry of Environment",
27711
+ subNdcDetails: [
27712
+ {
27713
+ key: 6,
27714
+ ndcActionId: 1,
27715
+ type: NdcActionType.sub,
27716
+ startDate: new Date("2019-03-25"),
27717
+ endDate: new Date("2020-03-25"),
27718
+ nationalPlanObj: "Enhance value addition in key growth opportunities sub details",
27719
+ kpi: 25,
27720
+ ministry: "Ministry of Agriculture, Water and Forestry (MAWF)",
27195
27721
  },
27196
- onMouseLeave: function () {
27197
- if (isEditing(record)) {
27198
- handleSave(record);
27199
- }
27722
+ {
27723
+ key: 7,
27724
+ ndcActionId: 1,
27725
+ type: NdcActionType.sub,
27726
+ startDate: new Date("2019-03-25"),
27727
+ endDate: new Date("2020-03-25"),
27728
+ nationalPlanObj: "",
27729
+ kpi: "",
27730
+ ministry: "",
27200
27731
  },
27201
- };
27202
- }, columns: columns, showHeader: false, pagination: false }));
27203
- }
27204
- var onAddNewPeriod = function () { return __awaiter(void 0, void 0, void 0, function () {
27205
- var periodItem_1, existingIndex, response, addedPeriodItem, updatedPeriodItem_1, exception_3;
27206
- return __generator(this, function (_a) {
27207
- switch (_a.label) {
27208
- case 0:
27209
- _a.trys.push([0, 4, , 5]);
27210
- if (!(selectedDateRangeRef &&
27211
- selectedDateRangeRef.current &&
27212
- selectedDateRangeRef.current.startYear &&
27213
- selectedDateRangeRef.current.endYear)) return [3 /*break*/, 3];
27214
- periodItem_1 = {
27215
- startYear: selectedDateRangeRef.current.startYear,
27216
- endYear: selectedDateRangeRef.current.endYear,
27217
- finalized: false,
27218
- };
27219
- existingIndex = periodItems.findIndex(function (item) {
27220
- return inRange(periodItem_1.startYear, item.startYear, item.endYear) ||
27221
- inRange(periodItem_1.endYear, item.startYear, item.endYear);
27222
- });
27223
- if (!(existingIndex === -1)) return [3 /*break*/, 2];
27224
- return [4 /*yield*/, post("national/programme/addNdcDetailsPeriod", __assign({}, periodItem_1))];
27225
- case 1:
27226
- response = _a.sent();
27227
- if (response && response.data) {
27228
- addedPeriodItem = response.data;
27229
- updatedPeriodItem_1 = __assign(__assign({}, addedPeriodItem), { key: addedPeriodItem.id, label: "".concat(addedPeriodItem.startYear, "-").concat(addedPeriodItem.endYear) });
27230
- setPeriodItems(function (items) { return __spreadArray(__spreadArray([], items, true), [updatedPeriodItem_1], false); });
27231
- setSelectedPeriod(updatedPeriodItem_1);
27232
- }
27233
- return [3 /*break*/, 3];
27234
- case 2:
27235
- message.open({
27236
- type: "error",
27237
- content: t("ndc:rangeAlreadyExists"),
27238
- duration: 3,
27239
- style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27240
- });
27241
- _a.label = 3;
27242
- case 3: return [3 /*break*/, 5];
27243
- case 4:
27244
- exception_3 = _a.sent();
27245
- message.open({
27246
- type: "error",
27247
- content: exception_3.message,
27248
- duration: 3,
27249
- style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27250
- });
27251
- return [3 /*break*/, 5];
27252
- case 5: return [2 /*return*/];
27253
- }
27254
- });
27255
- }); };
27256
- var onDateRangeChanged = function (range) {
27257
- if (range) {
27258
- var period = {
27259
- startYear: Number(moment(range[0]).year()),
27260
- endYear: Number(moment(range[1]).year()),
27261
- };
27262
- if (period.startYear === period.endYear) {
27263
- message.open({
27264
- type: "error",
27265
- content: t("ndc:sameStartEndDates"),
27266
- duration: 3,
27267
- style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27268
- });
27269
- }
27270
- else {
27271
- selectedDateRangeRef.current = period;
27272
- }
27273
- }
27274
- };
27275
- var onTabChange = function (key) {
27276
- var selectedPeriod = periodItems.find(function (item) { return item.key === key; });
27277
- if (selectedPeriod) {
27278
- setSelectedPeriod(selectedPeriod);
27732
+ ],
27733
+ },
27734
+ {
27735
+ key: 2,
27736
+ type: NdcActionType.main,
27737
+ startDate: new Date("2019-03-25"),
27738
+ endDate: new Date("2019-08-25"),
27739
+ nationalPlanObj: "Strengthen the private sector to create 10,000 jobs",
27740
+ kpi: 10500,
27741
+ ministry: "Ministry of Environment",
27742
+ subNdcDetails: [
27743
+ {
27744
+ key: 8,
27745
+ ndcActionId: 2,
27746
+ type: NdcActionType.sub,
27747
+ startDate: new Date("2019-03-25"),
27748
+ endDate: new Date("2020-03-25"),
27749
+ nationalPlanObj: "",
27750
+ kpi: "",
27751
+ ministry: "",
27752
+ },
27753
+ ],
27754
+ },
27755
+ {
27756
+ key: 12,
27757
+ type: NdcActionType.main,
27758
+ startDate: new Date("2019-03-25"),
27759
+ endDate: new Date("2019-08-25"),
27760
+ nationalPlanObj: "Other",
27761
+ kpi: 10500,
27762
+ ministry: "Ministry of Environment",
27763
+ subNdcDetails: [
27764
+ {
27765
+ key: 8,
27766
+ ndcActionId: 12,
27767
+ type: NdcActionType.sub,
27768
+ startDate: new Date("2019-03-25"),
27769
+ endDate: new Date("2020-03-25"),
27770
+ nationalPlanObj: "",
27771
+ kpi: "",
27772
+ ministry: "",
27773
+ },
27774
+ ],
27775
+ },
27776
+ {
27777
+ key: 3,
27778
+ type: NdcActionType.main,
27779
+ startDate: new Date("2021-03-25"),
27780
+ endDate: new Date("2022-03-25"),
27781
+ nationalPlanObj: "Consolidate and increase the stock and quality of productive infrastructure by 50%",
27782
+ kpi: 48,
27783
+ ministry: "Ministry of Environment",
27784
+ subNdcDetails: [
27785
+ {
27786
+ key: 9,
27787
+ ndcActionId: 3,
27788
+ type: NdcActionType.sub,
27789
+ startDate: new Date("2019-03-25"),
27790
+ endDate: new Date("2020-03-25"),
27791
+ nationalPlanObj: "",
27792
+ kpi: "",
27793
+ ministry: "",
27794
+ },
27795
+ ],
27796
+ },
27797
+ {
27798
+ key: 4,
27799
+ type: NdcActionType.main,
27800
+ startDate: new Date("2022-03-25"),
27801
+ endDate: new Date("2022-05-25"),
27802
+ nationalPlanObj: "Enhance the productivity and social wellbeing of the population",
27803
+ kpi: 20,
27804
+ ministry: "Ministry of Environment",
27805
+ subNdcDetails: [
27806
+ {
27807
+ key: 10,
27808
+ ndcActionId: 4,
27809
+ type: NdcActionType.sub,
27810
+ startDate: new Date("2019-03-25"),
27811
+ endDate: new Date("2020-03-25"),
27812
+ nationalPlanObj: "",
27813
+ kpi: "",
27814
+ ministry: "",
27815
+ },
27816
+ ],
27817
+ },
27818
+ {
27819
+ key: 5,
27820
+ type: NdcActionType.main,
27821
+ startDate: new Date("2022-03-25"),
27822
+ endDate: new Date("2023-03-25"),
27823
+ nationalPlanObj: "Strengthen the role of the state in guiding and facilitating development",
27824
+ kpi: 10,
27825
+ ministry: "Ministry of Environment",
27826
+ subNdcDetails: [
27827
+ {
27828
+ key: 11,
27829
+ ndcActionId: 5,
27830
+ type: NdcActionType.sub,
27831
+ startDate: new Date("2019-03-25"),
27832
+ endDate: new Date("2020-03-25"),
27833
+ nationalPlanObj: "",
27834
+ kpi: "",
27835
+ ministry: "",
27836
+ },
27837
+ ],
27838
+ },
27839
+ {
27840
+ key: 13,
27841
+ type: NdcActionType.main,
27842
+ startDate: new Date("2022-03-25"),
27843
+ endDate: new Date("2023-03-25"),
27844
+ nationalPlanObj: "Convert to solar energy",
27845
+ kpi: 50000,
27846
+ ministry: "Ministry of Environment",
27847
+ subNdcDetails: [
27848
+ {
27849
+ key: 11,
27850
+ ndcActionId: 13,
27851
+ type: NdcActionType.sub,
27852
+ startDate: new Date("2019-03-25"),
27853
+ endDate: new Date("2020-03-25"),
27854
+ nationalPlanObj: "Convert to solar energy",
27855
+ kpi: "3000",
27856
+ ministry: "Ministry of Agriculture, Water and Forestry (MAWF)",
27857
+ },
27858
+ {
27859
+ key: 14,
27860
+ ndcActionId: 13,
27861
+ type: NdcActionType.sub,
27862
+ startDate: new Date("2019-03-25"),
27863
+ endDate: new Date("2020-03-25"),
27864
+ nationalPlanObj: "",
27865
+ kpi: "",
27866
+ ministry: "",
27867
+ },
27868
+ ],
27869
+ },
27870
+ {
27871
+ key: 15,
27872
+ type: NdcActionType.main,
27873
+ startDate: new Date("2022-03-25"),
27874
+ endDate: new Date("2023-03-25"),
27875
+ nationalPlanObj: "Strengthen the private sector to create jobs",
27876
+ kpi: 10000,
27877
+ ministry: "Ministry of Environment",
27878
+ subNdcDetails: [
27879
+ {
27880
+ key: 16,
27881
+ ndcActionId: 15,
27882
+ type: NdcActionType.sub,
27883
+ startDate: new Date("2019-03-25"),
27884
+ endDate: new Date("2020-03-25"),
27885
+ nationalPlanObj: "Strengthen the private sector to create jobs",
27886
+ kpi: "7200",
27887
+ ministry: "Ministry of Tourism (MoT)",
27888
+ },
27889
+ {
27890
+ key: 17,
27891
+ ndcActionId: 15,
27892
+ type: NdcActionType.sub,
27893
+ startDate: new Date("2019-03-25"),
27894
+ endDate: new Date("2020-03-25"),
27895
+ nationalPlanObj: "",
27896
+ kpi: "",
27897
+ ministry: "",
27898
+ },
27899
+ ],
27900
+ },
27901
+ {
27902
+ key: 18,
27903
+ type: NdcActionType.main,
27904
+ startDate: new Date("2022-03-25"),
27905
+ endDate: new Date("2023-03-25"),
27906
+ nationalPlanObj: "Other",
27907
+ kpi: "",
27908
+ ministry: "Ministry of Environment",
27909
+ subNdcDetails: [
27910
+ {
27911
+ key: 19,
27912
+ ndcActionId: 18,
27913
+ type: NdcActionType.sub,
27914
+ startDate: new Date("2019-03-25"),
27915
+ endDate: new Date("2020-03-25"),
27916
+ nationalPlanObj: "Strengthen the private sector to create jobs",
27917
+ kpi: "",
27918
+ ministry: "Ministry of Agriculture, Water and Forestry (MAWF)",
27919
+ },
27920
+ {
27921
+ key: 20,
27922
+ ndcActionId: 18,
27923
+ type: NdcActionType.sub,
27924
+ startDate: new Date("2019-03-25"),
27925
+ endDate: new Date("2020-03-25"),
27926
+ nationalPlanObj: "",
27927
+ kpi: "",
27928
+ ministry: "",
27929
+ },
27930
+ ],
27931
+ },
27932
+ ];
27933
+ var initialPeriods = [
27934
+ {
27935
+ key: "2019-2020",
27936
+ label: "2019-2020",
27937
+ start: 2019,
27938
+ end: 2020,
27939
+ children: ndcDetailsTableContent(),
27940
+ },
27941
+ {
27942
+ key: "2021-2023",
27943
+ label: "2021-2023",
27944
+ start: 2021,
27945
+ end: 2021,
27946
+ children: ndcDetailsTableContent(),
27947
+ },
27948
+ ];
27949
+ if (isAddRangeVisible()) {
27950
+ initialPeriods.unshift({
27951
+ key: "add_new",
27952
+ label: "Add New",
27953
+ start: 0,
27954
+ end: 0,
27955
+ children: addNewPeriodContent(),
27956
+ });
27279
27957
  }
27280
- };
27281
- var onActionConfirmed = function () { return __awaiter(void 0, void 0, void 0, function () {
27282
- var actionResponse, exception_4;
27283
- return __generator(this, function (_a) {
27284
- switch (_a.label) {
27285
- case 0:
27286
- setLoading(true);
27287
- _a.label = 1;
27288
- case 1:
27289
- _a.trys.push([1, 10, , 11]);
27290
- if (!(actionInfo.action === "Approve")) return [3 /*break*/, 3];
27291
- return [4 /*yield*/, post("national/programme/approveNdcDetailsAction", {
27292
- id: actionInfo.recordId,
27293
- })];
27294
- case 2:
27295
- actionResponse = _a.sent();
27296
- return [3 /*break*/, 9];
27297
- case 3:
27298
- if (!(actionInfo.action === "Reject")) return [3 /*break*/, 5];
27299
- return [4 /*yield*/, post("national/programme/rejectNdcDetailsAction", {
27300
- id: actionInfo.recordId,
27301
- })];
27302
- case 4:
27303
- actionResponse = _a.sent();
27304
- return [3 /*break*/, 9];
27305
- case 5:
27306
- if (!(actionInfo.action === "Finalize")) return [3 /*break*/, 7];
27307
- return [4 /*yield*/, post("national/programme/finalizeNdcDetailsPeriod", {
27308
- id: selectedPeriod.key,
27309
- })];
27310
- case 6:
27311
- actionResponse = _a.sent();
27312
- return [3 /*break*/, 9];
27313
- case 7:
27314
- if (!(actionInfo.action === "Delete")) return [3 /*break*/, 9];
27315
- return [4 /*yield*/, post("national/programme/deleteNdcDetailsPeriod", {
27316
- id: selectedPeriod.key,
27317
- })];
27318
- case 8:
27319
- actionResponse = _a.sent();
27320
- _a.label = 9;
27321
- case 9: return [3 /*break*/, 11];
27322
- case 10:
27323
- exception_4 = _a.sent();
27324
- message.open({
27325
- type: "error",
27326
- content: exception_4.message,
27327
- duration: 3,
27328
- style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27329
- });
27330
- return [3 /*break*/, 11];
27331
- case 11:
27332
- if (actionResponse) {
27333
- if (actionInfo.action === "Delete") {
27334
- message.open({
27335
- type: "success",
27336
- content: t("ndc:deletePeriodSuccessMsg"),
27337
- duration: 3,
27338
- style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27339
- });
27340
- fetchNdcDetailPeriods();
27341
- }
27342
- else if (actionInfo.action === "Finalize") {
27343
- message.open({
27344
- type: "success",
27345
- content: t("ndc:finalizeSuccessMsg"),
27346
- duration: 3,
27347
- style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27348
- });
27349
- fetchNdcDetailPeriods();
27350
- setExpandedRowKeys([]);
27351
- setEditingKey(null);
27352
- }
27353
- else if (actionInfo.action === "Approve") {
27354
- message.open({
27355
- type: "success",
27356
- content: t("ndc:approveSuccessMsg"),
27357
- duration: 3,
27358
- style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27359
- });
27360
- fetchNdcDetailActions();
27361
- }
27362
- else if (actionInfo.action === "Reject") {
27363
- message.open({
27364
- type: "success",
27365
- content: t("ndc:rejectSuccessMsg"),
27366
- duration: 3,
27367
- style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27368
- });
27369
- fetchNdcDetailActions();
27370
- }
27371
- }
27372
- setOpenConfirmationModal(false);
27373
- setLoading(false);
27374
- return [2 /*return*/];
27375
- }
27376
- });
27377
- }); };
27378
- var onActionCanceled = function () {
27379
- setOpenConfirmationModal(false);
27380
- };
27381
- var fetchNdcDetailPeriods = function () { return __awaiter(void 0, void 0, void 0, function () {
27382
- var periods, addNewTab, response, exception_5;
27383
- return __generator(this, function (_a) {
27384
- switch (_a.label) {
27385
- case 0:
27386
- setLoading(true);
27387
- _a.label = 1;
27388
- case 1:
27389
- _a.trys.push([1, 3, 4, 5]);
27390
- periods = [];
27391
- addNewTab = {
27392
- key: "add_new",
27393
- label: "Add New",
27394
- startYear: 0,
27395
- endYear: 0,
27396
- finalized: false,
27397
- deleted: false,
27398
- };
27399
- return [4 /*yield*/, get("national/programme/queryNdcDetailsPeriod")];
27400
- case 2:
27401
- response = _a.sent();
27402
- if (response && response.data) {
27403
- periods = response.data.map(function (period) {
27404
- return __assign(__assign({}, period), { key: period.id, label: period.finalized ? (React.createElement("span", null,
27405
- React.createElement(LockOutlined, null),
27406
- " ",
27407
- period.startYear,
27408
- "-",
27409
- period.endYear,
27410
- " ")) : ("".concat(period.startYear, "-").concat(period.endYear)) });
27411
- });
27412
- }
27413
- if (isGovernmentUser) {
27414
- periods.unshift(addNewTab);
27415
- }
27416
- setPeriodItems(periods);
27417
- if (isGovernmentUser) {
27418
- setSelectedPeriod(addNewTab);
27419
- }
27420
- else {
27421
- setSelectedPeriod(periods[0]);
27422
- }
27423
- setLoading(false);
27424
- return [3 /*break*/, 5];
27425
- case 3:
27426
- exception_5 = _a.sent();
27427
- message.open({
27428
- type: "error",
27429
- content: exception_5.message,
27430
- duration: 3,
27431
- style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27432
- });
27433
- return [3 /*break*/, 5];
27434
- case 4:
27435
- setLoading(false);
27436
- return [7 /*endfinally*/];
27437
- case 5: return [2 /*return*/];
27438
- }
27439
- });
27440
- }); };
27441
- var fetchNdcDetailActions = function () { return __awaiter(void 0, void 0, void 0, function () {
27442
- var response, maxActionId, exception_6;
27443
- return __generator(this, function (_a) {
27444
- switch (_a.label) {
27445
- case 0:
27446
- setLoading(true);
27447
- _a.label = 1;
27448
- case 1:
27449
- _a.trys.push([1, 3, 4, 5]);
27450
- return [4 /*yield*/, get("national/programme/queryNdcDetailsAction")];
27451
- case 2:
27452
- response = _a.sent();
27453
- if (response && response.data) {
27454
- maxActionId = Math.max.apply(Math, response.data.map(function (item) { return item.id; }));
27455
- setNextAvailableActionId(maxActionId + 1);
27456
- setNdcActionsList(response.data);
27457
- }
27458
- setLoading(false);
27459
- return [3 /*break*/, 5];
27460
- case 3:
27461
- exception_6 = _a.sent();
27462
- message.open({
27463
- type: "error",
27464
- content: exception_6.message,
27465
- duration: 3,
27466
- style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27467
- });
27468
- return [3 /*break*/, 5];
27469
- case 4:
27470
- setLoading(false);
27471
- return [7 /*endfinally*/];
27472
- case 5: return [2 /*return*/];
27473
- }
27474
- });
27475
- }); };
27476
- var fetchMinistries = function () { return __awaiter(void 0, void 0, void 0, function () {
27477
- var response, ministryOrgDetails, exception_7;
27478
- return __generator(this, function (_a) {
27479
- switch (_a.label) {
27480
- case 0:
27481
- setLoading(true);
27482
- _a.label = 1;
27483
- case 1:
27484
- _a.trys.push([1, 3, 4, 5]);
27485
- return [4 /*yield*/, get("national/organisation/getMinistries")];
27486
- case 2:
27487
- response = _a.sent();
27488
- if (response && response.data) {
27489
- ministryOrgDetails = response.data.map(function (value) {
27490
- return {
27491
- value: value.company_companyId,
27492
- label: value.company_name,
27493
- };
27494
- });
27495
- setMinistryOrgList(ministryOrgDetails);
27496
- }
27497
- setLoading(false);
27498
- return [3 /*break*/, 5];
27499
- case 3:
27500
- exception_7 = _a.sent();
27501
- message.open({
27502
- type: "error",
27503
- content: exception_7.message,
27504
- duration: 3,
27505
- style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27506
- });
27507
- return [3 /*break*/, 5];
27508
- case 4:
27509
- setLoading(false);
27510
- return [7 /*endfinally*/];
27511
- case 5: return [2 /*return*/];
27512
- }
27513
- });
27514
- }); };
27515
- useEffect(function () {
27516
- fetchNdcDetailPeriods();
27517
- fetchNdcDetailActions();
27518
- fetchMinistries();
27958
+ addedNdcDetailId.current = 20;
27959
+ setPeriodItems(initialPeriods);
27960
+ periodItemsRef.current = initialPeriods;
27961
+ setNdcDetailsData(defaultNdcDetails);
27519
27962
  }, []);
27520
- return (React.createElement("div", { className: "ndc-details content-container" },
27963
+ return (React.createElement("div", { className: "ndc-management content-container" },
27521
27964
  React.createElement("div", { className: "title-bar" },
27522
27965
  React.createElement(Row, { justify: "space-between", align: "middle" },
27523
27966
  React.createElement(Col, { span: 20 },
27524
27967
  React.createElement("div", { className: "body-title" }, t("ndc:ndcTitle")),
27525
27968
  React.createElement("div", { className: "body-sub-title" }, t("ndc:ndcSubTitle"))))),
27526
27969
  React.createElement("div", null,
27527
- React.createElement(Tabs, { centered: false, defaultActiveKey: "1", items: periodItems, activeKey: selectedPeriod.key, onChange: onTabChange })),
27528
- React.createElement("div", null, selectedPeriod.key === "add_new"
27529
- ? addNewPeriodContent()
27530
- : mainNdcActionTableContent()),
27531
- React.createElement(UserActionConfirmationModel, { t: t, actionInfo: actionInfo, onActionConfirmed: onActionConfirmed, onActionCanceled: onActionCanceled, openModal: openConfirmationModal, errorMsg: "", loading: loading })));
27970
+ React.createElement(Tabs, { centered: false, defaultActiveKey: "1", items: periodItems, activeKey: selectedTab, onChange: onTabChange })),
27971
+ selectedTab !== "add_new" && (React.createElement("div", null,
27972
+ React.createElement("div", null,
27973
+ React.createElement(Table, { key: tableKey, components: components, rowClassName: function () { return "editable-row"; }, bordered: true, dataSource: getNdcDetailsForPeriod(), columns: columns, expandable: {
27974
+ expandedRowRender: function (record) { return getSubNdcActionContent(record); },
27975
+ indentSize: 0,
27976
+ defaultExpandedRowKeys: [selectedNdcDetail.current.key],
27977
+ }, footer: function () {
27978
+ return isAddNdcActionVisible() && (React.createElement(Row, { justify: "center" },
27979
+ React.createElement(Button, { onClick: onAddNewNdcDetail, type: "default", style: {
27980
+ marginBottom: 16,
27981
+ width: "100%",
27982
+ } }, t("ndc:addNdcAction"))));
27983
+ } }))))));
27532
27984
  };
27533
27985
 
27534
27986
  var ImgWithFallback = function (_a) {
@@ -27700,7 +28152,7 @@ var ProgrammeIssueForm = function (props) {
27700
28152
  };
27701
28153
 
27702
28154
  var ProgrammeRetireForm = function (props) {
27703
- var programme = props.programme, onFinish = props.onFinish, onCancel = props.onCancel, actionBtnText = props.actionBtnText, subText = props.subText, hideType = props.hideType, myCompanyId = props.myCompanyId, translator = props.translator, useConnection = props.useConnection;
28155
+ var programme = props.programme, onFinish = props.onFinish, onCancel = props.onCancel, actionBtnText = props.actionBtnText, subText = props.subText, hideType = props.hideType, myCompanyId = props.myCompanyId, translator = props.translator;
27704
28156
  var t = translator.t;
27705
28157
  var _a = useState(undefined), popupError = _a[0], setPopupError = _a[1];
27706
28158
  var _b = useState(false), loading = _b[0], setLoading = _b[1];
@@ -28076,7 +28528,7 @@ var ProgrammeRevokeForm = function (props) {
28076
28528
  };
28077
28529
 
28078
28530
  var ProgrammeTransferForm = function (props) {
28079
- var programme = props.programme, onFinish = props.onFinish, onCancel = props.onCancel, actionBtnText = props.actionBtnText; props.subText; var toCompanyDefault = props.toCompanyDefault, disableToCompany = props.disableToCompany, receiverLabelText = props.receiverLabelText, userCompanyId = props.userCompanyId, companyRole = props.companyRole, translator = props.translator, useConnection = props.useConnection, _a = props.ministryLevelPermission, ministryLevelPermission = _a === void 0 ? false : _a;
28531
+ var programme = props.programme, onFinish = props.onFinish, onCancel = props.onCancel, actionBtnText = props.actionBtnText; props.subText; var toCompanyDefault = props.toCompanyDefault, disableToCompany = props.disableToCompany, receiverLabelText = props.receiverLabelText, userCompanyId = props.userCompanyId, companyRole = props.companyRole, translator = props.translator, _a = props.ministryLevelPermission, ministryLevelPermission = _a === void 0 ? false : _a;
28080
28532
  var t = translator.t;
28081
28533
  var _b = useState(undefined), popupError = _b[0], setPopupError = _b[1];
28082
28534
  var _c = useState(false), loading = _c[0], setLoading = _c[1];
@@ -28307,7 +28759,7 @@ var css_248z$2 = ".ndc-action-body {\n display: flex;\n flex-direction: column
28307
28759
  styleInject(css_248z$2);
28308
28760
 
28309
28761
  var NdcActionBody = function (props) {
28310
- var data = props.data, programmeId = props.programmeId, canUploadMonitorReport = props.canUploadMonitorReport, programmeOwnerId = props.programmeOwnerId, getProgrammeDocs = props.getProgrammeDocs, ministryLevelPermission = props.ministryLevelPermission, useConnection = props.useConnection, translator = props.translator, useUserContext = props.useUserContext, onFinish = props.onFinish, programme = props.programme;
28762
+ var data = props.data, programmeId = props.programmeId, canUploadMonitorReport = props.canUploadMonitorReport, programmeOwnerId = props.programmeOwnerId, getProgrammeDocs = props.getProgrammeDocs, ministryLevelPermission = props.ministryLevelPermission, translator = props.translator, onFinish = props.onFinish, programme = props.programme;
28311
28763
  var t = translator.t;
28312
28764
  var userInfoState = useUserContext().userInfoState;
28313
28765
  var fileInputMonitoringRef = useRef(null);
@@ -28743,7 +29195,7 @@ var css_248z$1 = ".info-view .title-icon {\n padding-right: 10px; }\n\n.info-vi
28743
29195
  styleInject(css_248z$1);
28744
29196
 
28745
29197
  var ProgrammeDocuments = function (props) {
28746
- var data = props.data, title = props.title, icon = props.icon, programmeId = props.programmeId, programmeOwnerId = props.programmeOwnerId, getDocumentDetails = props.getDocumentDetails, getProgrammeById = props.getProgrammeById, ministryLevelPermission = props.ministryLevelPermission, useConnection = props.useConnection, useUserContext = props.useUserContext, translator = props.translator, methodologyDocumentUpdated = props.methodologyDocumentUpdated, programmeStatus = props.programmeStatus;
29198
+ var data = props.data, title = props.title, icon = props.icon, programmeId = props.programmeId, programmeOwnerId = props.programmeOwnerId, getDocumentDetails = props.getDocumentDetails, getProgrammeById = props.getProgrammeById, ministryLevelPermission = props.ministryLevelPermission, translator = props.translator, methodologyDocumentUpdated = props.methodologyDocumentUpdated, programmeStatus = props.programmeStatus;
28747
29199
  var t = translator.t;
28748
29200
  var userInfoState = useUserContext().userInfoState;
28749
29201
  var _a = useConnection(); _a.delete; var post = _a.post;
@@ -29238,5 +29690,5 @@ var TimelineBody = function (props) {
29238
29690
  React.createElement("div", { className: "remark-body" }, remark)))));
29239
29691
  };
29240
29692
 
29241
- 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 };
29693
+ export { Action, AddNdcActionComponent, AddNewCompanyComponent, AddNewUserComponent, AdminBGColor, AdminColor, BaseEntity, CarbonSystemType, CertBGColor, CertColor, CoBenifitsComponent, Company, CompanyManagementColumns, CompanyManagementComponent, CompanyProfileComponent, CompanyRole, CompanyState, ConfigurationSettingsType, ConnectionContextProvider, CreditTransferComponent, CreditTransferStage, DevBGColor, DevColor, DocType, DocumentStatus, ESGType, EnergyGenerationUnits, FormElementType, GovBGColor, GovColor, ImgWithFallback, InfoView, Instrument, InvestmentBGColor, InvestmentBody, InvestmentColor, InvestmentCreationComponent, InvestmentCreationType, InvestmentLevel, InvestmentManagementComponent, InvestmentOwnershipType, 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, SettingsContext, SettingsContextProvider, StasticCard, StatsCardsTypes, SubTypeOfMitigation, SupportCreationComponent, SupportManagementComponent, SystemNames, TimelineBody, Titles, TooltipColor, TransferActionModel, TxType, TypeOfMitigation, UnitField, User, UserContext, UserInformationContextProvider, 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, useConnection, useSettingsContext, useUserContext };
29242
29694
  //# sourceMappingURL=index.js.map