@undp/carbon-library 1.0.274-CARBON-363.50 → 1.0.274-CARBON-347.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/dist/cjs/index.js +1597 -1131
  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 +3 -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/Storybook/Decorators/DashboardI18nDecorator.d.ts +2 -0
  21. package/dist/cjs/types/Storybook/Decorators/InvestmentCreationI18nDecorator.d.ts +2 -0
  22. package/dist/cjs/types/Storybook/Decorators/ProgrammeCreateI18nDecorator.d.ts +2 -0
  23. package/dist/cjs/types/Storybook/InvestmentCreationComponent.stories.d.ts +12 -0
  24. package/dist/cjs/types/Storybook/MRVDashboard.stories.d.ts +12 -0
  25. package/dist/cjs/types/Storybook/ProgrammeCreationComponent.stories.d.ts +12 -0
  26. package/dist/cjs/types/Storybook/RegistryDashboard.stories.d.ts +12 -0
  27. package/dist/cjs/types/index.d.ts +1 -0
  28. package/dist/esm/index.js +1591 -1133
  29. package/dist/esm/index.js.map +1 -1
  30. package/dist/esm/types/Components/Common/AntComponents/antTableComponents.d.ts +6 -9
  31. package/dist/esm/types/Components/Common/CoBenifits/coBenifits.d.ts +0 -1
  32. package/dist/esm/types/Components/Common/Models/programmeRetireForm.d.ts +0 -1
  33. package/dist/esm/types/Components/Common/Models/programmeTransferForm.d.ts +0 -1
  34. package/dist/esm/types/Components/Common/NdcActionBody/ndcActionBody.d.ts +0 -2
  35. package/dist/esm/types/Components/Common/ProgrammeDocuments/programmeDocuments.d.ts +0 -2
  36. package/dist/esm/types/Context/ConnectionContext/connectionContext.d.ts +8 -0
  37. package/dist/esm/types/Context/SettingsContext/settingsContext.d.ts +10 -0
  38. package/dist/esm/types/Context/UserInformationContext/userInformationContext.d.ts +6 -0
  39. package/dist/esm/types/Context/index.d.ts +3 -0
  40. package/dist/esm/types/Definitions/Definitions/connectionContext.definitions.d.ts +3 -0
  41. package/dist/esm/types/Definitions/Enums/investment.enum.d.ts +4 -0
  42. package/dist/esm/types/Storybook/AddNewCompanyComponent.stories.d.ts +12 -0
  43. package/dist/esm/types/Storybook/AddNewUserComponent.stories.d.ts +12 -0
  44. package/dist/esm/types/Storybook/Decorators/AddNewCompanyI18nDecorator.d.ts +2 -0
  45. package/dist/esm/types/Storybook/Decorators/AddNewUserI18nDecorator.d.ts +2 -0
  46. package/dist/esm/types/Storybook/Decorators/ConnectionContextDecorator.d.ts +2 -0
  47. package/dist/esm/types/Storybook/Decorators/DashboardI18nDecorator.d.ts +2 -0
  48. package/dist/esm/types/Storybook/Decorators/InvestmentCreationI18nDecorator.d.ts +2 -0
  49. package/dist/esm/types/Storybook/Decorators/ProgrammeCreateI18nDecorator.d.ts +2 -0
  50. package/dist/esm/types/Storybook/InvestmentCreationComponent.stories.d.ts +12 -0
  51. package/dist/esm/types/Storybook/MRVDashboard.stories.d.ts +12 -0
  52. package/dist/esm/types/Storybook/ProgrammeCreationComponent.stories.d.ts +12 -0
  53. package/dist/esm/types/Storybook/RegistryDashboard.stories.d.ts +12 -0
  54. package/dist/esm/types/index.d.ts +1 -0
  55. package/dist/index.d.ts +27 -8
  56. package/dist/locales/i18n/ndc/en.json +3 -28
  57. package/dist/locales/i18n/programme/en.json +3 -1
  58. package/package.json +29 -2
  59. package/dist/cjs/types/Definitions/Definitions/ndcDetails.definitions.d.ts +0 -42
  60. 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,317 @@ 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, statServerUrl = props.statServerUrl;
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
+ if (localStorage.getItem('token')) {
530
+ headers = {
531
+ authorization: "Bearer ".concat(localStorage.getItem('token')),
532
+ };
533
+ }
534
+ else {
535
+ headers = {
536
+ authorization: "Bearer ".concat(process.env.STORYBOOK_ACCESS_TOKEN),
537
+ };
538
+ }
539
+ }
540
+ axios(__assign({ method: method, url: url, data: data, headers: headers }, config))
541
+ .then(function (response) {
542
+ var _a, _b, _c;
543
+ if (response.status) {
544
+ if (response.status === 200 || response.status === 201) {
545
+ resolve({
546
+ status: response.status,
547
+ data: (_a = response.data.data) !== null && _a !== void 0 ? _a : response.data,
548
+ response: response,
549
+ statusText: 'SUCCESS',
550
+ message: response.data.message,
551
+ });
552
+ }
553
+ else if (response.status === 422) {
554
+ reject({
555
+ status: response.status,
556
+ data: (_b = response.data) === null || _b === void 0 ? void 0 : _b.data,
557
+ statusText: 'ERROR',
558
+ response: response,
559
+ message: response.data.message,
560
+ errors: (_c = response.data) === null || _c === void 0 ? void 0 : _c.errors,
561
+ });
562
+ }
563
+ }
564
+ else {
565
+ reject({
566
+ status: 500,
567
+ statusText: 'UNKNOWN',
568
+ message: t('common:systemError'),
569
+ });
570
+ }
571
+ })
572
+ .catch(function (e) {
573
+ var _a;
574
+ if (e.response) {
575
+ if (e.response.status) {
576
+ if (e.response.data.message === 'jwt expired') {
577
+ localStorage.removeItem('token');
578
+ window.location.reload();
579
+ }
580
+ reject({
581
+ status: e.response.status,
582
+ statusText: 'ERROR',
583
+ errors: (_a = e.response.data) === null || _a === void 0 ? void 0 : _a.errors,
584
+ message: e.response.data.message,
585
+ });
586
+ }
587
+ else {
588
+ reject({
589
+ statusText: 'ERROR',
590
+ message: t('common:systemError'),
591
+ });
592
+ }
593
+ }
594
+ else {
595
+ reject({
596
+ statusText: 'ERROR',
597
+ message: t('common:networkError'),
598
+ });
599
+ }
600
+ });
601
+ });
602
+ }, [token, serverURL]);
603
+ var post = useCallback(function (path, data, config, extraUrl) {
604
+ return send('post', path, data, config, extraUrl);
605
+ }, [send]);
606
+ var put = useCallback(function (path, data, config) {
607
+ return send('put', path, data, config);
608
+ }, [send]);
609
+ var get = useCallback(function (path, config) {
610
+ return send('get', path, undefined, config);
611
+ }, [send]);
612
+ var patch = useCallback(function (path, data, config) {
613
+ return send('patch', path, data, config);
614
+ }, [send]);
615
+ var del = useCallback(function (path, config) {
616
+ return send('delete', path, config);
617
+ }, [send]);
618
+ var updateToken = useCallback(function (newToken) { return __awaiter(void 0, void 0, void 0, function () {
619
+ return __generator(this, function (_a) {
620
+ if (newToken) {
621
+ localStorage.setItem('token', newToken);
622
+ setToken(newToken);
623
+ }
624
+ else {
625
+ localStorage.setItem('token', '');
626
+ setToken(undefined);
627
+ }
628
+ return [2 /*return*/];
629
+ });
630
+ }); }, []);
631
+ var removeToken = function (tkn) {
632
+ if (tkn) {
633
+ var exp = o(tkn).exp;
634
+ if (Date.now() > exp * 1000) {
635
+ localStorage.setItem('token', '');
636
+ localStorage.removeItem('userRole');
637
+ localStorage.removeItem('userId');
638
+ localStorage.removeItem('companyId');
639
+ localStorage.removeItem('companyRole');
640
+ }
641
+ else {
642
+ var diff = exp * 1000 - Date.now();
643
+ setTimeout(function () {
644
+ setToken(undefined);
645
+ localStorage.setItem('token', '');
646
+ localStorage.removeItem('userRole');
647
+ localStorage.removeItem('userId');
648
+ localStorage.removeItem('companyId');
649
+ localStorage.removeItem('companyRole');
650
+ }, diff);
651
+ console.log(diff, 'Remaining Token expire time');
652
+ }
653
+ }
654
+ };
655
+ useEffect(function () {
656
+ removeToken(token);
657
+ }, [token]);
658
+ return (React.createElement(ConnectionContext.Provider, { value: {
659
+ connection: { post: post, put: put, get: get, patch: patch, delete: del, updateToken: updateToken, token: token, removeToken: removeToken, statServerUrl: statServerUrl },
660
+ } }, children));
661
+ };
662
+ var useConnection = function () {
663
+ var context = useContext(ConnectionContext);
664
+ return context.connection;
665
+ };
666
+
667
+ var UserContext = createContext({
668
+ setUserInfo: function () { },
669
+ removeUserInfo: function () { },
670
+ IsAuthenticated: function (tkn) { return false; },
671
+ isTokenExpired: false,
672
+ setIsTokenExpired: function (val) { },
673
+ });
674
+ var UserInformationContextProvider = function (_a) {
675
+ var children = _a.children;
676
+ var token = useConnection().token;
677
+ var _b = useState(false), isTokenExpired = _b[0], setIsTokenExpired = _b[1];
678
+ var initialUserProps = {
679
+ id: localStorage.getItem('userId') ? localStorage.getItem('userId') : process.env.STORYBOOK_USER_ID ? process.env.STORYBOOK_USER_ID : '',
680
+ userRole: localStorage.getItem('userRole') ? localStorage.getItem('userRole') : process.env.STORYBOOK_USER_ROLE ? process.env.STORYBOOK_USER_ROLE : '',
681
+ companyRole: localStorage.getItem('companyRole')
682
+ ? localStorage.getItem('companyRole')
683
+ : process.env.STORYBOOK_COMPANY_ROLE ? process.env.STORYBOOK_COMPANY_ROLE : '',
684
+ companyId: localStorage.getItem('companyId')
685
+ ? parseInt(localStorage.getItem('companyId'))
686
+ : process.env.STORYBOOK_COMPANY_ID ? parseInt(process.env.STORYBOOK_COMPANY_ID) : -1,
687
+ companyLogo: localStorage.getItem('companyLogo')
688
+ ? localStorage.getItem('companyLogo')
689
+ : process.env.STORYBOOK_COMPANY_LOGO ? process.env.STORYBOOK_COMPANY_LOGO : '',
690
+ companyName: localStorage.getItem('companyName')
691
+ ? localStorage.getItem('companyName')
692
+ : process.env.STORYBOOK_COMPANY_NAME ? process.env.STORYBOOK_COMPANY_NAME : '',
693
+ companyState: localStorage.getItem('companyState')
694
+ ? parseInt(localStorage.getItem('companyState'))
695
+ : process.env.STORYBOOK_COMPANY_STATE ? parseInt(process.env.STORYBOOK_COMPANY_STATE) : 0,
696
+ };
697
+ var _c = useState(initialUserProps), userInfoState = _c[0], setUserInfoState = _c[1];
698
+ var setUserInfo = function (value) {
699
+ var state = (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyState) === 1 ? userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyState : 0;
700
+ 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;
701
+ if (id) {
702
+ setUserInfoState(function (prev) { return (__assign(__assign({}, prev), { id: id })); });
703
+ localStorage.setItem('userId', id);
704
+ }
705
+ if (userRole) {
706
+ setUserInfoState(function (prev) { return (__assign(__assign({}, prev), { userRole: userRole })); });
707
+ localStorage.setItem('userRole', userRole);
708
+ }
709
+ if (companyId) {
710
+ setUserInfoState(function (prev) { return (__assign(__assign({}, prev), { companyId: companyId })); });
711
+ localStorage.setItem('companyId', companyId + '');
712
+ }
713
+ if (companyLogo) {
714
+ setUserInfoState(function (prev) { return (__assign(__assign({}, prev), { companyLogo: companyLogo })); });
715
+ localStorage.setItem('companyLogo', companyLogo);
716
+ }
717
+ else {
718
+ setUserInfoState(function (prev) { return (__assign(__assign({}, prev), { companyLogo: '' })); });
719
+ localStorage.setItem('companyLogo', '');
720
+ }
721
+ if (companyName) {
722
+ setUserInfoState(function (prev) { return (__assign(__assign({}, prev), { companyName: companyName })); });
723
+ localStorage.setItem('companyName', companyName);
724
+ }
725
+ if (userRole) {
726
+ setUserInfoState(function (prev) { return (__assign(__assign({}, prev), { companyRole: companyRole })); });
727
+ localStorage.setItem('companyRole', companyRole);
728
+ }
729
+ setUserInfoState(function (prev) { return (__assign(__assign({}, prev), { companyState: companyState })); });
730
+ localStorage.setItem('companyState', companyState + '');
731
+ };
732
+ var IsAuthenticated = useCallback(function (tokenNew) {
733
+ var tokenVal;
734
+ if (tokenNew) {
735
+ tokenVal = tokenNew;
736
+ }
737
+ else if (token) {
738
+ tokenVal = token;
739
+ }
740
+ else {
741
+ tokenVal = localStorage.getItem('token');
742
+ if (tokenVal === '') {
743
+ if (history.length !== 1) {
744
+ setIsTokenExpired(true);
745
+ }
746
+ }
747
+ }
748
+ try {
749
+ if (tokenVal) {
750
+ var exp = o(tokenVal).exp;
751
+ return Date.now() < exp * 1000;
752
+ }
753
+ return false;
754
+ }
755
+ catch (err) {
756
+ return false;
757
+ }
758
+ }, [token]);
759
+ var removeUserInfo = function () {
760
+ localStorage.removeItem('userId');
761
+ localStorage.removeItem('userRole');
762
+ localStorage.removeItem('companyId');
763
+ localStorage.removeItem('companyRole');
764
+ localStorage.removeItem('companyName');
765
+ localStorage.removeItem('companyState');
766
+ localStorage.removeItem('companyLogo');
767
+ setUserInfoState(initialUserProps);
768
+ };
769
+ return (React.createElement(UserContext.Provider, { value: {
770
+ userInfoState: userInfoState,
771
+ setUserInfo: setUserInfo,
772
+ removeUserInfo: removeUserInfo,
773
+ IsAuthenticated: IsAuthenticated,
774
+ isTokenExpired: isTokenExpired,
775
+ setIsTokenExpired: setIsTokenExpired,
776
+ } }, children));
777
+ };
778
+ var useUserContext = function () {
779
+ return useContext(UserContext);
780
+ };
781
+
782
+ var SettingsContext = createContext({
783
+ isTransferFrozen: false,
784
+ setTransferFrozen: function (value) { },
785
+ });
786
+ var SettingsContextProvider = function (_a) {
787
+ var children = _a.children;
788
+ var _b = useState(false), isTransferFrozen = _b[0], setIsTransferFrozen = _b[1];
789
+ var setTransferFrozen = function (value) {
790
+ setIsTransferFrozen(value);
791
+ };
792
+ return (React.createElement(SettingsContext.Provider, { value: {
793
+ isTransferFrozen: isTransferFrozen,
794
+ setTransferFrozen: setTransferFrozen,
795
+ } }, children));
796
+ };
797
+ var useSettingsContext = function () {
798
+ return useContext(SettingsContext);
799
+ };
800
+
492
801
  var Search$2 = Input.Search;
493
802
  var CompanyManagementComponent = function (props) {
494
- var t = props.t, useAbilityContext = props.useAbilityContext, post = props.post, visibleColumns = props.visibleColumns, onNavigateToCompanyProfile = props.onNavigateToCompanyProfile, onClickAddCompany = props.onClickAddCompany;
803
+ var t = props.t, useAbilityContext = props.useAbilityContext, visibleColumns = props.visibleColumns, onNavigateToCompanyProfile = props.onNavigateToCompanyProfile, onClickAddCompany = props.onClickAddCompany;
495
804
  var _a = useState(), totalCompany = _a[0], setTotalCompany = _a[1];
496
805
  var _b = useState(false), loading = _b[0], setLoading = _b[1];
497
806
  var _c = useState([]), tableData = _c[0], setTableData = _c[1];
@@ -505,6 +814,7 @@ var CompanyManagementComponent = function (props) {
505
814
  var _k = useState(""), sortOrder = _k[0], setSortOrder = _k[1];
506
815
  var _l = useState(""), sortField = _l[0], setSortField = _l[1];
507
816
  var ability = useAbilityContext();
817
+ var post = useConnection().post;
508
818
  document.addEventListener("mousedown", function (event) {
509
819
  var organisationFilterArea1 = document.querySelector(".filter-bar");
510
820
  var organisationFilterArea2 = document.querySelector(".filter-dropdown");
@@ -837,7 +1147,7 @@ var CompanyManagementComponent = function (props) {
837
1147
  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
1148
  styleInject(css_248z$s);
839
1149
 
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";
1150
+ 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
1151
  styleInject(css_248z$r);
842
1152
 
843
1153
  var UserManagementColumns;
@@ -909,6 +1219,11 @@ var InvestmentCreationType;
909
1219
  InvestmentCreationType["EXISTING"] = "Existing";
910
1220
  InvestmentCreationType["NEW"] = "New";
911
1221
  })(InvestmentCreationType || (InvestmentCreationType = {}));
1222
+ var InvestmentOwnershipType;
1223
+ (function (InvestmentOwnershipType) {
1224
+ InvestmentOwnershipType["PROJECT"] = "Project";
1225
+ InvestmentOwnershipType["NATIONAL"] = "National";
1226
+ })(InvestmentOwnershipType || (InvestmentOwnershipType = {}));
912
1227
  var InvestmentStream;
913
1228
  (function (InvestmentStream) {
914
1229
  InvestmentStream["CLIMATE_FINANCE"] = "ClimateFinance";
@@ -2027,7 +2342,7 @@ var NdcActionStatus;
2027
2342
  NdcActionStatus["PENDING"] = "Pending";
2028
2343
  NdcActionStatus["APPROVED"] = "Approved";
2029
2344
  })(NdcActionStatus || (NdcActionStatus = {}));
2030
- var getNdcActionStatusEnumVal$1 = function (value) {
2345
+ var getNdcActionStatusEnumVal = function (value) {
2031
2346
  var index = Object.keys(NdcActionStatus).indexOf(value);
2032
2347
  if (index < 0) {
2033
2348
  return value;
@@ -2035,7 +2350,7 @@ var getNdcActionStatusEnumVal$1 = function (value) {
2035
2350
  return Object.values(NdcActionStatus)[index];
2036
2351
  };
2037
2352
  var getNdcStatusTagType = function (status) {
2038
- switch (getNdcActionStatusEnumVal$1(status)) {
2353
+ switch (getNdcActionStatusEnumVal(status)) {
2039
2354
  case NdcActionStatus.PENDING:
2040
2355
  return "processing";
2041
2356
  case NdcActionStatus.APPROVED:
@@ -5734,7 +6049,7 @@ var ProgrammeCertify = /** @class */ (function () {
5734
6049
 
5735
6050
  var AddNewCompanyComponent = function (props) {
5736
6051
  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;
6052
+ 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
6053
  var formOne = Form.useForm()[0];
5739
6054
  var formTwo = Form.useForm()[0];
5740
6055
  var _b = useState(), stepOneData = _b[0], setStepOneData = _b[1];
@@ -6523,7 +6838,7 @@ var css_248z$q = ".company-profile {\n padding: 0px 50px; }\n .company-profile
6523
6838
  styleInject(css_248z$q);
6524
6839
 
6525
6840
  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;
6841
+ var t = props.t, useAbilityContext = props.useAbilityContext, useLocation = props.useLocation, onNavigateToCompanyManagement = props.onNavigateToCompanyManagement, onNavigateToCompanyEdit = props.onNavigateToCompanyEdit, regionField = props.regionField, systemType = props.systemType;
6527
6842
  var _a = useConnection(), get = _a.get, put = _a.put, post = _a.post;
6528
6843
  var _b = useState(undefined), companyDetails = _b[0], setCompanyDetails = _b[1];
6529
6844
  var _c = useState(undefined), userDetails = _c[0], setUserDetails = _c[1];
@@ -6956,7 +7271,7 @@ styleInject(css_248z$p);
6956
7271
 
6957
7272
  var Search$1 = Input.Search;
6958
7273
  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;
7274
+ var t = props.t, visibleColumns = props.visibleColumns, onNavigateToProgrammeView = props.onNavigateToProgrammeView, onClickAddProgramme = props.onClickAddProgramme, enableAddProgramme = props.enableAddProgramme, useAbilityContext = props.useAbilityContext;
6960
7275
  var _a = useConnection(); _a.get; _a.delete; var post = _a.post;
6961
7276
  var _b = useState(), totalProgramme = _b[0], setTotalProgramme = _b[1];
6962
7277
  var _c = useState(false), loading = _c[0], setLoading = _c[1];
@@ -7341,7 +7656,7 @@ var ProgrammeManagementComponent = function (props) {
7341
7656
  React.createElement("div", { className: "filter-section" },
7342
7657
  React.createElement("div", { className: "search-filter" },
7343
7658
  React.createElement(Checkbox, { className: "label", onChange: function (v) {
7344
- if (userInfoState.companyRole === CompanyRole.MINISTRY) {
7659
+ if ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.MINISTRY) {
7345
7660
  if (v.target.checked) {
7346
7661
  setMinistryLevelFilter(true);
7347
7662
  }
@@ -7358,7 +7673,7 @@ var ProgrammeManagementComponent = function (props) {
7358
7673
  }
7359
7674
  : undefined);
7360
7675
  }
7361
- } }, userInfoState.companyRole === CompanyRole.MINISTRY
7676
+ } }, (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.MINISTRY
7362
7677
  ? t("view:ministryLevel")
7363
7678
  : t("view:seeMine"))),
7364
7679
  React.createElement("div", { className: "search-bar" },
@@ -13139,7 +13454,7 @@ var sectoralScopes = {
13139
13454
  };
13140
13455
  var ProgrammeCreationComponent = function (props) {
13141
13456
  var _a, _b, _c;
13142
- var useUserContext = props.useUserContext, useConnection = props.useConnection, useLocation = props.useLocation, onNavigateToProgrammeView = props.onNavigateToProgrammeView, translator = props.translator;
13457
+ var useLocation = props.useLocation, onNavigateToProgrammeView = props.onNavigateToProgrammeView, translator = props.translator;
13143
13458
  var t = translator.t;
13144
13459
  var state = useLocation().state;
13145
13460
  var formOne = Form.useForm()[0];
@@ -14204,7 +14519,7 @@ var ChangePasswordModel = function (props) {
14204
14519
 
14205
14520
  var AddNewUserComponent = function (props) {
14206
14521
  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;
14522
+ var t = props.t, onNavigateToUserManagement = props.onNavigateToUserManagement, onNavigateLogin = props.onNavigateLogin, useLocation = props.useLocation, useAbilityContext = props.useAbilityContext, themeColor = props.themeColor;
14208
14523
  var _g = useConnection(), post = _g.post, put = _g.put, del = _g.delete, get = _g.get;
14209
14524
  var formOne = Form.useForm()[0];
14210
14525
  var state = useLocation().state;
@@ -14622,7 +14937,7 @@ var LanguageSelection = function (props) {
14622
14937
  };
14623
14938
 
14624
14939
  var UserProfileComponent = function (props) {
14625
- var t = props.t, i18n = props.i18n, useConnection = props.useConnection, onNavigateUpdateUser = props.onNavigateUpdateUser, onNavigateLogin = props.onNavigateLogin, useUserContext = props.useUserContext;
14940
+ var t = props.t, i18n = props.i18n, onNavigateUpdateUser = props.onNavigateUpdateUser, onNavigateLogin = props.onNavigateLogin;
14626
14941
  var get = useConnection().get;
14627
14942
  var _a = useState(undefined), organisationDetails = _a[0], setOrganisationDetails = _a[1];
14628
14943
  var _b = useState(undefined), userDetails = _b[0], setUserDetails = _b[1];
@@ -14790,7 +15105,7 @@ styleInject(css_248z$k);
14790
15105
 
14791
15106
  var Search = Input.Search;
14792
15107
  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;
15108
+ var t = props.t, useAbilityContext = props.useAbilityContext, visibleColumns = props.visibleColumns, onNavigateToUpdateUser = props.onNavigateToUpdateUser, onClickAddUser = props.onClickAddUser;
14794
15109
  Form.useForm()[0];
14795
15110
  var _a = useConnection(), post = _a.post, del = _a.delete;
14796
15111
  var _b = useState(), totalUser = _b[0], setTotalUser = _b[1];
@@ -14812,6 +15127,7 @@ var UserManagementComponent = function (props) {
14812
15127
  var _s = useState(""), errorMsg = _s[0], setErrorMsg = _s[1];
14813
15128
  var _t = useState(false), openDeleteConfirmationModal = _t[0], setOpenDeleteConfirmationModal = _t[1];
14814
15129
  var ability = useAbilityContext();
15130
+ var userInfoState = useUserContext().userInfoState;
14815
15131
  document.addEventListener("mousedown", function (event) {
14816
15132
  var userFilterArea1 = document.querySelector(".filter-bar");
14817
15133
  var userFilterArea2 = document.querySelector(".filter-dropdown");
@@ -15324,7 +15640,7 @@ var UserManagementComponent = function (props) {
15324
15640
  React.createElement(UserActionConfirmationModel, { t: t, actionInfo: actionInfo, onActionConfirmed: handleOk, onActionCanceled: handleCancel, openModal: openDeleteConfirmationModal, errorMsg: errorMsg, loading: loading })));
15325
15641
  };
15326
15642
 
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";
15643
+ 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
15644
  styleInject(css_248z$j);
15329
15645
 
15330
15646
  var Loading = function () {
@@ -15332,21 +15648,34 @@ var Loading = function () {
15332
15648
  };
15333
15649
 
15334
15650
  var InvestmentCreationComponent = function (props) {
15335
- var t = props.t, useConnection = props.useConnection, userInfoState = props.userInfoState, useLocation = props.useLocation, onNavigateToProgrammeManagementView = props.onNavigateToProgrammeManagementView, onNavigateToProgrammeView = props.onNavigateToProgrammeView;
15651
+ var t = props.t, useLocation = props.useLocation, onNavigateToProgrammeManagementView = props.onNavigateToProgrammeManagementView, onNavigateToProgrammeView = props.onNavigateToProgrammeView, onNavigateToInvestmentManagementView = props.onNavigateToInvestmentManagementView;
15336
15652
  var state = useLocation().state;
15337
15653
  var _a = useState(), data = _a[0], setData = _a[1];
15654
+ var _b = useState({}), companyNames = _b[0], setCompanyNames = _b[1];
15655
+ var _c = useState({}); _c[0]; var setUserOrganization = _c[1];
15656
+ var _d = useState({}), investmentNames = _d[0], setInvestmentNames = _d[1];
15657
+ var _e = useState(), projectData = _e[0], setProjectData = _e[1];
15658
+ var _f = useState(), investmentData = _f[0], setInvestmentData = _f[1];
15659
+ var _g = useState([]), allProjectData = _g[0], setAllProjectData = _g[1];
15338
15660
  var formOne = Form.useForm()[0];
15339
15661
  var formTwo = Form.useForm()[0];
15340
15662
  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];
15663
+ var _h = useState(false), loading = _h[0], setLoading = _h[1];
15664
+ var _j = useState("New"), typeCreation = _j[0], setTypeCreation = _j[1];
15665
+ var _k = useState(InvestmentOwnershipType.PROJECT), investmentOwnershipType = _k[0], setInvestmentOwnershipType = _k[1];
15666
+ var _l = useState(false), loadingList = _l[0], setLoadingList = _l[1];
15667
+ var _m = useState(false), loadingInvestment = _m[0], setLoadingInvestment = _m[1];
15668
+ var _o = useState(false), loadingProgData = _o[0], setLoadingProgData = _o[1];
15669
+ var _p = useState(0), current = _p[0], setCurrent = _p[1];
15670
+ var _q = useState(0), currentPercTotal = _q[0], setCurrentPercTotal = _q[1];
15671
+ var _r = useState([]), organisationsList = _r[0], setOrganisationList = _r[1];
15672
+ var _s = useState([]), nationalInvestmentList = _s[0], setNationalInvestmentList = _s[1];
15673
+ var _t = useState([]), instrument = _t[0], setInstrument = _t[1];
15674
+ var _u = useState(), stepOneData = _u[0], setStepOneData = _u[1];
15675
+ var _v = useState(), govData = _v[0], setGovData = _v[1];
15676
+ var userInfoState = useUserContext().userInfoState;
15677
+ var _w = useState([]), ministrySectoralScope = _w[0], setMinistrySectoralScope = _w[1];
15678
+ var _x = useState({}), prevInvestor = _x[0], setPrevInvestor = _x[1];
15350
15679
  var instrumentOptions = Object.keys(Instrument).map(function (k, index) { return ({
15351
15680
  label: addSpaces(Object.values(Instrument)[index]),
15352
15681
  value: Object.values(Instrument)[index],
@@ -15397,52 +15726,215 @@ var InvestmentCreationComponent = function (props) {
15397
15726
  }
15398
15727
  });
15399
15728
  }); };
15400
- var getOrganisationsDetails = function () { return __awaiter(void 0, void 0, void 0, function () {
15401
- var filterAnd, _i, _a, c, response, error_2;
15729
+ var getAllProjectData = function () { return __awaiter(void 0, void 0, void 0, function () {
15730
+ var response, error_2;
15731
+ return __generator(this, function (_a) {
15732
+ switch (_a.label) {
15733
+ case 0:
15734
+ setLoadingProgData(true);
15735
+ _a.label = 1;
15736
+ case 1:
15737
+ _a.trys.push([1, 5, 6, 7]);
15738
+ if (!data) return [3 /*break*/, 4];
15739
+ if (!!(data === null || data === void 0 ? void 0 : data.programmeId)) return [3 /*break*/, 3];
15740
+ console.log("data non existing", data);
15741
+ console.log("getting all Project data");
15742
+ return [4 /*yield*/, post("national/programme/query", {
15743
+ page: 1,
15744
+ size: 100,
15745
+ filterAnd: [
15746
+ {
15747
+ key: "currentStage",
15748
+ operation: "!=",
15749
+ value: ProgrammeStageUnified.Rejected,
15750
+ },
15751
+ ],
15752
+ })];
15753
+ case 2:
15754
+ response = _a.sent();
15755
+ if (response.data) {
15756
+ setAllProjectData(response === null || response === void 0 ? void 0 : response.data);
15757
+ console.log("all Project data", response === null || response === void 0 ? void 0 : response.data);
15758
+ }
15759
+ return [3 /*break*/, 4];
15760
+ case 3:
15761
+ console.log("setting current Project data");
15762
+ setAllProjectData([data]);
15763
+ _a.label = 4;
15764
+ case 4: return [3 /*break*/, 7];
15765
+ case 5:
15766
+ error_2 = _a.sent();
15767
+ console.log("Error in getting all programme data", error_2);
15768
+ return [3 /*break*/, 7];
15769
+ case 6:
15770
+ setLoadingProgData(false);
15771
+ return [7 /*endfinally*/];
15772
+ case 7: return [2 /*return*/];
15773
+ }
15774
+ });
15775
+ }); };
15776
+ var setSelectedProgramme = function (value) { return __awaiter(void 0, void 0, void 0, function () {
15777
+ var _i, allProjectData_1, obj;
15778
+ return __generator(this, function (_a) {
15779
+ console.log("setSelectedProgramme", value);
15780
+ for (_i = 0, allProjectData_1 = allProjectData; _i < allProjectData_1.length; _i++) {
15781
+ obj = allProjectData_1[_i];
15782
+ if (obj.programmeId == value) {
15783
+ setProjectData(obj);
15784
+ break;
15785
+ }
15786
+ }
15787
+ return [2 /*return*/];
15788
+ });
15789
+ }); };
15790
+ var setSelectedInvestment = function (value) { return __awaiter(void 0, void 0, void 0, function () {
15791
+ return __generator(this, function (_a) {
15792
+ console.log("setSelectedInvestment", value);
15793
+ setInvestmentData(investmentNames[value]);
15794
+ return [2 /*return*/];
15795
+ });
15796
+ }); };
15797
+ var getNationalInvestmentDetails = function () { return __awaiter(void 0, void 0, void 0, function () {
15798
+ var filterAnd, response, investmentData_1, _i, _a, investment, error_3;
15402
15799
  return __generator(this, function (_b) {
15403
15800
  switch (_b.label) {
15404
15801
  case 0:
15405
- setLoadingList(true);
15802
+ setLoadingInvestment(true);
15406
15803
  _b.label = 1;
15407
15804
  case 1:
15408
15805
  _b.trys.push([1, 3, 4, 5]);
15409
15806
  filterAnd = [];
15410
15807
  filterAnd = [
15411
15808
  {
15412
- key: "companyRole",
15809
+ key: "category",
15413
15810
  operation: "=",
15414
- value: CompanyRole.PROGRAMME_DEVELOPER.toString(),
15811
+ value: InvestmentOwnershipType.NATIONAL.toString(),
15812
+ },
15813
+ {
15814
+ key: "amount",
15815
+ operation: ">",
15816
+ value: 0,
15415
15817
  },
15416
15818
  ];
15417
15819
  if ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.PROGRAMME_DEVELOPER) {
15418
15820
  filterAnd.push({
15419
- key: "companyId",
15420
- operation: "!=",
15821
+ key: "toCompanyId",
15822
+ operation: "=",
15421
15823
  value: userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyId,
15422
15824
  });
15423
15825
  }
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", {
15826
+ return [4 /*yield*/, post("national/programme/investmentQuery", {
15433
15827
  page: 1,
15434
15828
  size: 100,
15435
15829
  filterAnd: filterAnd,
15436
15830
  })];
15437
15831
  case 2:
15438
15832
  response = _b.sent();
15833
+ if (response.data) {
15834
+ setNationalInvestmentList(response === null || response === void 0 ? void 0 : response.data);
15835
+ investmentData_1 = {};
15836
+ for (_i = 0, _a = response === null || response === void 0 ? void 0 : response.data; _i < _a.length; _i++) {
15837
+ investment = _a[_i];
15838
+ investmentData_1[investment.requestId] = investment;
15839
+ }
15840
+ setInvestmentNames(investmentData_1);
15841
+ console.log(investmentData_1);
15842
+ }
15843
+ return [3 /*break*/, 5];
15844
+ case 3:
15845
+ error_3 = _b.sent();
15846
+ console.log("Error in getting national Investments list", error_3);
15847
+ return [3 /*break*/, 5];
15848
+ case 4:
15849
+ setLoadingInvestment(false);
15850
+ return [7 /*endfinally*/];
15851
+ case 5: return [2 /*return*/];
15852
+ }
15853
+ });
15854
+ }); };
15855
+ var getUserOrganization = function () { return __awaiter(void 0, void 0, void 0, function () {
15856
+ var response, error_4;
15857
+ return __generator(this, function (_a) {
15858
+ switch (_a.label) {
15859
+ case 0:
15860
+ _a.trys.push([0, 2, , 3]);
15861
+ return [4 /*yield*/, post("national/organisation/query", {
15862
+ page: 1,
15863
+ size: 100,
15864
+ filterAnd: [
15865
+ { key: "companyId", operation: "=", value: userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyId },
15866
+ ],
15867
+ })];
15868
+ case 1:
15869
+ response = _a.sent();
15870
+ console.log("getUserOrganization", response.data[0]);
15871
+ setUserOrganization(response.data[0]);
15872
+ setMinistrySectoralScope(response.data[0].sectoralScope);
15873
+ return [3 /*break*/, 3];
15874
+ case 2:
15875
+ error_4 = _a.sent();
15876
+ console.log("Error in getting user organization", error_4);
15877
+ return [3 /*break*/, 3];
15878
+ case 3: return [2 /*return*/];
15879
+ }
15880
+ });
15881
+ }); };
15882
+ var getOrganisationsDetails = function () { return __awaiter(void 0, void 0, void 0, function () {
15883
+ var filterAnd, filterOr, _i, _a, c, filters, response, companyName, _b, _c, company, error_5;
15884
+ return __generator(this, function (_d) {
15885
+ switch (_d.label) {
15886
+ case 0:
15887
+ setLoadingList(true);
15888
+ _d.label = 1;
15889
+ case 1:
15890
+ _d.trys.push([1, 3, 4, 5]);
15891
+ filterAnd = [];
15892
+ filterOr = [];
15893
+ filterAnd = [
15894
+ {
15895
+ key: "companyRole",
15896
+ operation: "=",
15897
+ value: CompanyRole.PROGRAMME_DEVELOPER.toString(),
15898
+ },
15899
+ ];
15900
+ // if (userInfoState?.companyRole === CompanyRole.PROGRAMME_DEVELOPER) {
15901
+ // filterAnd.push({
15902
+ // key: "companyId",
15903
+ // operation: "!=",
15904
+ // value: userInfoState?.companyId,
15905
+ // });
15906
+ // }
15907
+ if (data === null || data === void 0 ? void 0 : data.companyId) {
15908
+ for (_i = 0, _a = data === null || data === void 0 ? void 0 : data.companyId; _i < _a.length; _i++) {
15909
+ c = _a[_i];
15910
+ filterOr.push({
15911
+ key: "companyId",
15912
+ operation: "=",
15913
+ value: c,
15914
+ });
15915
+ }
15916
+ }
15917
+ filters = void 0;
15918
+ if (filterOr.length) {
15919
+ filters.filterOr = filterOr;
15920
+ }
15921
+ return [4 /*yield*/, post("national/organisation/queryNames", __assign({ page: 1, size: 100, filterAnd: filterAnd }, filters))];
15922
+ case 2:
15923
+ response = _d.sent();
15439
15924
  if (response.data) {
15440
15925
  setOrganisationList(response === null || response === void 0 ? void 0 : response.data);
15926
+ companyName = {};
15927
+ for (_b = 0, _c = response === null || response === void 0 ? void 0 : response.data; _b < _c.length; _b++) {
15928
+ company = _c[_b];
15929
+ companyName[Number(company.companyId)] = company.name;
15930
+ }
15931
+ setCompanyNames(companyName);
15932
+ console.log(companyName);
15441
15933
  }
15442
15934
  return [3 /*break*/, 5];
15443
15935
  case 3:
15444
- error_2 = _b.sent();
15445
- console.log("Error in getting organization list", error_2);
15936
+ error_5 = _d.sent();
15937
+ console.log("Error in getting organization list", error_5);
15446
15938
  return [3 /*break*/, 5];
15447
15939
  case 4:
15448
15940
  setLoadingList(false);
@@ -15457,52 +15949,71 @@ var InvestmentCreationComponent = function (props) {
15457
15949
  return;
15458
15950
  }
15459
15951
  if (state === null || state === void 0 ? void 0 : state.record) {
15952
+ console.log("condition 1 data", state === null || state === void 0 ? void 0 : state.record);
15460
15953
  setData(state === null || state === void 0 ? void 0 : state.record);
15461
15954
  }
15462
15955
  else {
15956
+ console.log("condition 2 data", { ownership: true });
15463
15957
  setData({ ownership: true });
15464
15958
  }
15465
15959
  }, []);
15466
15960
  useEffect(function () {
15467
- if (data) {
15468
- var keys = Object.keys(data);
15469
- if (keys[0] !== "ownership") {
15470
- getOrganisationsDetails();
15471
- }
15472
- }
15961
+ // if (data) {
15962
+ // const keys = Object.keys(data);
15963
+ // if (keys[0] !== "ownership") {
15964
+ // getOrganisationsDetails();
15965
+ // }
15966
+ // }
15967
+ getNationalInvestmentDetails();
15968
+ getOrganisationsDetails();
15473
15969
  getGovernmentDetails();
15970
+ getAllProjectData();
15971
+ getUserOrganization();
15474
15972
  }, [data]);
15475
- if (!data) {
15973
+ if (!data && allProjectData.length == 0) {
15476
15974
  return React.createElement(Loading, null);
15477
15975
  }
15478
- console.log('data', data);
15479
- var companyName = {};
15976
+ console.log("data", data);
15480
15977
  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
- }
15978
+ // for (const company of data!?.company) {
15979
+ // companyName[company?.companyId] = company;
15980
+ // }
15485
15981
  if (!data.proponentPercentage) {
15486
15982
  data.proponentPercentage = [100];
15487
15983
  }
15488
15984
  }
15489
15985
  var nextOne = function (val) {
15986
+ console.log("step 1 values", val);
15987
+ if (val.typeCreation == InvestmentCreationType.EXISTING) {
15988
+ val.toCompanyId = investmentData.toCompanyId;
15989
+ }
15490
15990
  setCurrent(current + 1);
15491
15991
  setStepOneData(val);
15992
+ if (data === null || data === void 0 ? void 0 : data.programmeId)
15993
+ setSelectedProgramme(data.programmeId);
15994
+ if (prevInvestor && prevInvestor != val.toCompanyId && !(data === null || data === void 0 ? void 0 : data.programmeId)) {
15995
+ formTwo.resetFields();
15996
+ setCurrentPercTotal(0);
15997
+ setProjectData(undefined);
15998
+ }
15492
15999
  };
15493
16000
  var prevOne = function () {
15494
16001
  setCurrent(current - 1);
16002
+ setPrevInvestor(stepOneData.toCompanyId);
16003
+ // formTwo.resetFields();
16004
+ // setCurrentPercTotal(0);
16005
+ // setProjectData(undefined);
15495
16006
  };
15496
16007
  var submitInvestment = function (val) { return __awaiter(void 0, void 0, void 0, function () {
15497
- var payload, response, error_3;
16008
+ var payload, response, error_6;
15498
16009
  return __generator(this, function (_a) {
15499
16010
  switch (_a.label) {
15500
16011
  case 0:
15501
16012
  console.log(val);
15502
16013
  console.log(stepOneData);
16014
+ console.log("OwnershipType", investmentOwnershipType);
15503
16015
  setLoading(true);
15504
16016
  payload = stepOneData;
15505
- payload.programmeId = data.programmeId;
15506
16017
  payload.amount = parseFloat(payload.amount);
15507
16018
  if (payload.interestRate) {
15508
16019
  payload.interestRate = parseFloat(payload.interestRate);
@@ -15510,15 +16021,27 @@ var InvestmentCreationComponent = function (props) {
15510
16021
  if (payload.paymentPerMetric) {
15511
16022
  payload.paymentPerMetric = parseFloat(payload.paymentPerMetric);
15512
16023
  }
15513
- payload.fromCompanyIds = data.companyId.map(function (e) { return Number(e); });
15514
- payload.percentage = val.percentage;
15515
16024
  payload.toCompanyId = Number(payload.toCompanyId);
15516
16025
  _a.label = 1;
15517
16026
  case 1:
15518
- _a.trys.push([1, 3, 4, 5]);
16027
+ _a.trys.push([1, 6, 7, 8]);
16028
+ response = void 0;
16029
+ if (!(investmentOwnershipType == InvestmentOwnershipType.PROJECT)) return [3 /*break*/, 3];
16030
+ if (typeCreation == InvestmentCreationType.EXISTING) {
16031
+ payload.nationalInvestmentId = investmentData.requestId;
16032
+ }
16033
+ payload.programmeId = projectData === null || projectData === void 0 ? void 0 : projectData.programmeId;
16034
+ payload.fromCompanyIds = projectData === null || projectData === void 0 ? void 0 : projectData.companyId.map(function (e) { return Number(e); });
16035
+ payload.percentage = val.percentage;
15519
16036
  return [4 /*yield*/, post("national/programme/addInvestment", payload)];
15520
16037
  case 2:
15521
16038
  response = _a.sent();
16039
+ return [3 /*break*/, 5];
16040
+ case 3: return [4 /*yield*/, post("national/organisation/addInvestment", payload)];
16041
+ case 4:
16042
+ response = _a.sent();
16043
+ _a.label = 5;
16044
+ case 5:
15522
16045
  console.log("investment creation -> ", response);
15523
16046
  if ((response === null || response === void 0 ? void 0 : response.statusText) === "SUCCESS") {
15524
16047
  message.open({
@@ -15528,22 +16051,24 @@ var InvestmentCreationComponent = function (props) {
15528
16051
  style: { textAlign: "right", marginRight: 15, marginTop: 10 },
15529
16052
  });
15530
16053
  }
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);
16054
+ (data === null || data === void 0 ? void 0 : data.programmeId)
16055
+ ? onNavigateToProgrammeView(data === null || data === void 0 ? void 0 : data.programmeId)
16056
+ : onNavigateToInvestmentManagementView();
16057
+ return [3 /*break*/, 8];
16058
+ case 6:
16059
+ error_6 = _a.sent();
16060
+ console.log("Error in investment creation - ", error_6);
15536
16061
  message.open({
15537
16062
  type: "error",
15538
- content: error_3 === null || error_3 === void 0 ? void 0 : error_3.message,
16063
+ content: error_6 === null || error_6 === void 0 ? void 0 : error_6.message,
15539
16064
  duration: 4,
15540
16065
  style: { textAlign: "right", marginRight: 15, marginTop: 10 },
15541
16066
  });
15542
- return [3 /*break*/, 5];
15543
- case 4:
16067
+ return [3 /*break*/, 8];
16068
+ case 7:
15544
16069
  setLoading(false);
15545
16070
  return [7 /*endfinally*/];
15546
- case 5: return [2 /*return*/];
16071
+ case 8: return [2 /*return*/];
15547
16072
  }
15548
16073
  });
15549
16074
  }); };
@@ -15555,8 +16080,16 @@ var InvestmentCreationComponent = function (props) {
15555
16080
  }
15556
16081
  };
15557
16082
  var onChangeTypeCreation = function (e) {
15558
- console.log('radio checked', e.target.value);
16083
+ console.log("radio checked", e.target.value);
15559
16084
  setTypeCreation(e.target.value);
16085
+ formOne.resetFields();
16086
+ formTwo.resetFields();
16087
+ setCurrentPercTotal(0);
16088
+ setProjectData(undefined);
16089
+ };
16090
+ var onChangeInvestmentOwnershipType = function (e) {
16091
+ console.log("investment ownership type radio checked", e.target.value);
16092
+ setInvestmentOwnershipType(e.target.value);
15560
16093
  };
15561
16094
  return (React.createElement("div", { className: "add-programme-main-container" },
15562
16095
  React.createElement("div", { className: "title-container" },
@@ -15581,242 +16114,263 @@ var InvestmentCreationComponent = function (props) {
15581
16114
  ] },
15582
16115
  React.createElement(Radio.Group, { size: "large", defaultValue: typeCreation }, Object.values(InvestmentCreationType).map(function (k, index) { return (React.createElement("div", { className: "condition-radio-container" },
15583
16116
  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
- },
16117
+ typeCreation == InvestmentCreationType.NEW && (React.createElement("div", null,
16118
+ React.createElement(Row, { className: "row", gutter: [16, 16] },
16119
+ React.createElement(Col, { xl: 12, md: 24 },
16120
+ React.createElement("div", { className: "details-part-one" },
16121
+ React.createElement(Form.Item, { label: t("programme:investorName"), name: "toCompanyId", wrapperCol: { span: 24 }, className: "organisation", rules: [
16122
+ {
16123
+ required: true,
16124
+ message: "".concat(t("programme:investorName"), " ").concat(t("isRequired")),
16125
+ },
16126
+ ] },
16127
+ React.createElement(Select, { size: "large", loading: loadingList }, organisationsList.map(function (organisation) {
16128
+ if (data === null || data === void 0 ? void 0 : data.programmeId) {
16129
+ if (data.companyId
16130
+ .map(function (id) { return Number(id); })
16131
+ .includes(Number(organisation.companyId))) {
16132
+ return (React.createElement(Select.Option, { key: organisation.companyId, value: organisation.companyId }, organisation.name));
16133
+ }
16134
+ }
16135
+ else {
16136
+ return (React.createElement(Select.Option, { key: organisation.companyId, value: organisation.companyId }, organisation.name));
16137
+ }
16138
+ }))))),
16139
+ React.createElement(Col, { xl: 12, md: 24 },
16140
+ React.createElement("div", { className: "details-part-two" },
16141
+ React.createElement(Form.Item, { label: t("programme:amountInvested"), name: "amount", rules: [
16142
+ {
16143
+ required: true,
16144
+ message: "",
16145
+ },
16146
+ {
16147
+ validator: function (rule, value) { return __awaiter(void 0, void 0, void 0, function () {
16148
+ return __generator(this, function (_a) {
16149
+ if (String(value).trim() === "" ||
16150
+ String(value).trim() ===
16151
+ undefined ||
16152
+ value === null ||
16153
+ value === undefined) {
16154
+ throw new Error("".concat(t("programme:amountInvested"), " ").concat(t("isRequired")));
16155
+ }
16156
+ else if (!isNaN(value) &&
16157
+ Number(value) > 0) {
16158
+ return [2 /*return*/, Promise.resolve()];
16159
+ }
16160
+ else {
16161
+ throw new Error("".concat(t("programme:amountInvested"), " ").concat(t("isInvalid")));
16162
+ }
16163
+ });
16164
+ }); },
16165
+ },
16166
+ ] },
16167
+ React.createElement(Input, { size: "large" }))))),
16168
+ React.createElement(Row, { className: "row", gutter: [16, 16] },
16169
+ React.createElement(Col, { xl: 24, md: 24 },
16170
+ React.createElement(Form.Item, { label: t("programme:instrument"), name: "instrument", wrapperCol: { span: 24 }, className: "" },
16171
+ React.createElement(Checkbox.Group, { options: instrumentOptions, defaultValue: instrumentOptions.map(function (e) { return e.value; }), onChange: onInstrumentChange })))),
16172
+ instrument &&
16173
+ instrument.indexOf(Instrument.LOAN) >= 0 && (React.createElement(Row, { className: "row", gutter: [16, 16] },
16174
+ React.createElement(Col, { xl: 8, md: 12 },
16175
+ React.createElement("div", { className: "details-part-two" },
16176
+ React.createElement(Form.Item, { label: t("programme:interestRate"), name: "interestRate", rules: [
16177
+ {
16178
+ required: true,
16179
+ message: "",
16180
+ },
16181
+ {
16182
+ validator: function (rule, value) { return __awaiter(void 0, void 0, void 0, function () {
16183
+ return __generator(this, function (_a) {
16184
+ if (String(value).trim() === "" ||
16185
+ String(value).trim() ===
16186
+ undefined ||
16187
+ value === null ||
16188
+ value === undefined) {
16189
+ throw new Error("".concat(t("programme:interestRate"), " ").concat(t("isRequired")));
16190
+ }
16191
+ else if (!isNaN(value)) {
16192
+ return [2 /*return*/, Promise.resolve()];
16193
+ }
16194
+ else {
16195
+ throw new Error("".concat(t("programme:interestRate"), " ").concat(t("isInvalid")));
16196
+ }
16197
+ });
16198
+ }); },
16199
+ },
16200
+ ] },
16201
+ React.createElement(Input, { size: "large" })))))),
16202
+ instrument &&
16203
+ instrument.indexOf(Instrument.RESULT_BASED) >=
16204
+ 0 && (React.createElement(Row, { className: "row", gutter: [16, 16] },
16205
+ React.createElement(Col, { xl: 12, md: 24 },
16206
+ React.createElement("div", { className: "details-part-two" },
16207
+ React.createElement(Form.Item, { label: t("programme:resultMetric"), name: "resultMetric", rules: [
16208
+ {
16209
+ required: true,
16210
+ message: "",
16211
+ },
16212
+ {
16213
+ validator: function (rule, value) { return __awaiter(void 0, void 0, void 0, function () {
16214
+ return __generator(this, function (_a) {
16215
+ if (String(value).trim() === "" ||
16216
+ String(value).trim() ===
16217
+ undefined ||
16218
+ value === null ||
16219
+ value === undefined) {
16220
+ throw new Error("".concat(t("programme:resultMetric"), " ").concat(t("isRequired")));
16221
+ }
16222
+ return [2 /*return*/];
16223
+ });
16224
+ }); },
16225
+ },
16226
+ ] },
16227
+ React.createElement(Input, { size: "large" })))),
16228
+ React.createElement(Col, { xl: 12, md: 24 },
16229
+ React.createElement("div", { className: "details-part-two" },
16230
+ React.createElement(Form.Item, { label: t("programme:paymentPerMetric"), name: "paymentPerMetric", rules: [
16231
+ {
16232
+ required: true,
16233
+ message: "",
16234
+ },
16235
+ {
16236
+ validator: function (rule, value) { return __awaiter(void 0, void 0, void 0, function () {
16237
+ return __generator(this, function (_a) {
16238
+ if (String(value).trim() === "" ||
16239
+ String(value).trim() ===
16240
+ undefined ||
16241
+ value === null ||
16242
+ value === undefined) {
16243
+ throw new Error("".concat(t("programme:paymentPerMetric"), " ").concat(t("isRequired")));
16244
+ }
16245
+ else if (!isNaN(value)) {
16246
+ return [2 /*return*/, Promise.resolve()];
16247
+ }
16248
+ else {
16249
+ throw new Error("".concat(t("programme:paymentPerMetric"), " ").concat(t("isInvalid")));
16250
+ }
16251
+ });
16252
+ }); },
16253
+ },
16254
+ ] },
16255
+ React.createElement(Input, { size: "large" })))))),
16256
+ instrument &&
16257
+ instrument.indexOf(Instrument.INKIND) >= 0 && (React.createElement(Row, { className: "row", gutter: [16, 16] },
16258
+ React.createElement(Col, { xl: 12, md: 24 },
16259
+ React.createElement("div", { className: "details-part-two" },
16260
+ React.createElement(Form.Item, { label: t("programme:description"), name: "description", rules: [
16261
+ {
16262
+ required: false,
16263
+ message: "",
16264
+ },
16265
+ ] },
16266
+ React.createElement(Input, { size: "large" })))))),
16267
+ instrument &&
16268
+ instrument.indexOf(Instrument.OTHER) >= 0 && (React.createElement(Row, { className: "row", gutter: [16, 16] },
16269
+ React.createElement(Col, { xl: 12, md: 24 },
16270
+ React.createElement("div", { className: "details-part-two" },
16271
+ React.createElement(Form.Item, { label: t("programme:comments"), name: "comments", rules: [
16272
+ {
16273
+ required: true,
16274
+ message: "",
16275
+ },
16276
+ {
16277
+ validator: function (rule, value) { return __awaiter(void 0, void 0, void 0, function () {
16278
+ return __generator(this, function (_a) {
16279
+ if (String(value).trim() === "" ||
16280
+ String(value).trim() ===
16281
+ undefined ||
16282
+ value === null ||
16283
+ value === undefined) {
16284
+ throw new Error("".concat(t("programme:comments"), " ").concat(t("isRequired")));
16285
+ }
16286
+ return [2 /*return*/];
16287
+ });
16288
+ }); },
16289
+ },
16290
+ ] },
16291
+ React.createElement(Input, { size: "large" })))))),
16292
+ React.createElement(Row, { className: "row", gutter: [4, 4] },
16293
+ React.createElement(Col, { xl: 8, md: 12 },
16294
+ React.createElement(Form.Item, { label: t("programme:type"), wrapperCol: { span: 13 }, className: "role-group", name: "type", rules: [
15688
16295
  {
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
- }); },
16296
+ required: false,
15706
16297
  },
15707
16298
  ] },
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: [
16299
+ React.createElement(Radio.Group, { size: "large" }, Object.values(InvestmentType).map(function (k, index) { return (React.createElement("div", { className: "condition-radio-container" },
16300
+ React.createElement(Radio.Button, { className: "condition-radio", value: k, onClick: function (e) {
16301
+ return deselectOnClick(e, "type");
16302
+ } }, t("programme:" + k)))); })))),
16303
+ React.createElement(Col, { xl: 8, md: 12 },
16304
+ React.createElement(Form.Item, { label: t("programme:level"), wrapperCol: { span: 13 }, className: "role-group", name: "level", rules: [
15714
16305
  {
15715
16306
  required: false,
15716
- message: "",
15717
16307
  },
15718
16308
  ] },
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
- },
16309
+ React.createElement(Radio.Group, { size: "large" }, Object.values(InvestmentLevel).map(function (k, index) { return (React.createElement("div", { className: "condition-radio-container" },
16310
+ React.createElement(Radio.Button, { className: "condition-radio", value: k, onClick: function (e) {
16311
+ return deselectOnClick(e, "level");
16312
+ } }, t("programme:" + k)))); })))),
16313
+ React.createElement(Col, { xl: 8, md: 12 },
16314
+ React.createElement(Form.Item, { label: t("programme:stream"), wrapperCol: { span: 13 }, className: "role-group", name: "stream", rules: [
15729
16315
  {
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
- }); },
16316
+ required: false,
15742
16317
  },
15743
16318
  ] },
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: [
16319
+ React.createElement(Radio.Group, { size: "large" }, Object.values(InvestmentStream).map(function (k, index) { return (React.createElement("div", { className: "condition-radio-container" },
16320
+ React.createElement(Radio.Button, { className: "condition-radio", value: k, onClick: function (e) {
16321
+ return deselectOnClick(e, "stream");
16322
+ } }, t("programme:" + k)))); }))))),
16323
+ React.createElement(Row, { className: "row", gutter: [16, 16] },
16324
+ React.createElement(Col, { xl: 12, md: 24 },
16325
+ React.createElement(Form.Item, { label: t("programme:esgType"), name: "esgClassification" },
16326
+ React.createElement(Select, { size: "large" }, Object.values(ESGType).map(function (esg) { return (React.createElement(Select.Option, { value: esg }, esg)); }))))))),
16327
+ typeCreation == InvestmentCreationType.EXISTING && (React.createElement("div", null,
16328
+ React.createElement(Row, { className: "row", gutter: [16, 16] },
16329
+ React.createElement(Col, { xl: 12, md: 24 },
16330
+ React.createElement("div", { className: "details-part-one" },
16331
+ React.createElement(Form.Item, { label: t("programme:existingInvestmentSource"), name: "existinngInvestmentId", wrapperCol: { span: 24 }, rules: [
15800
16332
  {
15801
- pattern: new RegExp(/^[+]?([.]\d+|\d+[.]?\d*)$/g),
15802
- message: "Percentage Should be a positive number",
16333
+ required: true,
16334
+ message: "".concat(t("programme:existingInvestmentSource"), " ").concat(t("isRequired")),
15803
16335
  },
16336
+ ] },
16337
+ 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)); })))))),
16338
+ React.createElement(Row, { className: "row", gutter: [16, 16] },
16339
+ React.createElement(Col, { xl: 12, md: 24 },
16340
+ React.createElement("div", { className: "details-part-two" },
16341
+ React.createElement(Form.Item, { label: t("programme:amountInvested"), name: "amount", rules: [
15804
16342
  {
15805
16343
  required: true,
15806
- message: "Required field",
16344
+ message: "",
16345
+ },
16346
+ {
16347
+ validator: function (rule, value) { return __awaiter(void 0, void 0, void 0, function () {
16348
+ return __generator(this, function (_a) {
16349
+ if (String(value).trim() === "" ||
16350
+ String(value).trim() ===
16351
+ undefined ||
16352
+ value === null ||
16353
+ value === undefined) {
16354
+ throw new Error("".concat(t("programme:amountInvested"), " ").concat(t("isRequired")));
16355
+ }
16356
+ else if (!isNaN(value) &&
16357
+ Number(value) > 0) {
16358
+ return [2 /*return*/, Promise.resolve()];
16359
+ }
16360
+ else {
16361
+ throw new Error("".concat(t("programme:amountInvested"), " ").concat(t("isInvalid")));
16362
+ }
16363
+ });
16364
+ }); },
15807
16365
  },
15808
16366
  function (_a) {
15809
16367
  var getFieldValue = _a.getFieldValue;
15810
16368
  return ({
15811
16369
  validator: function (rule, v) {
15812
- if (getFieldValue([
15813
- "percentage",
15814
- index,
15815
- ]) &&
15816
- parseFloat(getFieldValue([
15817
- "percentage",
15818
- index,
15819
- ])) > data.proponentPercentage[index]) {
16370
+ if (getFieldValue("amount") &&
16371
+ investmentData &&
16372
+ investmentData.amount <
16373
+ parseFloat(getFieldValue("amount"))) {
15820
16374
  // eslint-disable-next-line prefer-promise-reject-errors
15821
16375
  return Promise.reject("Amount > Available");
15822
16376
  }
@@ -15825,30 +16379,178 @@ var InvestmentCreationComponent = function (props) {
15825
16379
  });
15826
16380
  },
15827
16381
  ] },
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();
16382
+ React.createElement(Input, { size: "large" })))),
16383
+ React.createElement(Col, { xl: 12, md: 24 },
16384
+ React.createElement("div", { className: "details-part-two" },
16385
+ React.createElement(Form.Item, { label: " ", name: "sourceAmount" },
16386
+ React.createElement("div", null,
16387
+ "/",
16388
+ React.createElement(InputNumber, { size: "large", width: "100%", formatter: function (value) {
16389
+ return "$".concat(addCommSep(value));
16390
+ }, disabled: true, value: investmentData
16391
+ ? investmentData.amount
16392
+ : 0 })))))))),
16393
+ React.createElement(Form.Item, null,
16394
+ React.createElement("div", { className: "steps-actions" },
16395
+ React.createElement(Button, { type: "primary", htmlType: "submit", loading: loading, onSubmit: nextOne }, t("programme:next")))))))),
16396
+ },
16397
+ {
16398
+ title: (React.createElement("div", { className: "step-title-container" },
16399
+ React.createElement("div", { className: "step-count" }, "02"),
16400
+ React.createElement("div", { className: "title" }, t("programme:ownership")))),
16401
+ description: current === 1 && (React.createElement("div", null,
16402
+ React.createElement("div", { className: "investment-sought-form-container" },
16403
+ React.createElement("div", { className: "investment-sought-form" },
16404
+ React.createElement(Form, { labelCol: { span: 20 }, wrapperCol: { span: 24 }, name: "investment-sought", className: "investment-sought-form", layout: "vertical", requiredMark: true },
16405
+ React.createElement(Row, { className: "row", gutter: [4, 4] },
16406
+ React.createElement(Col, { xl: 8, md: 12 },
16407
+ React.createElement(Form.Item, { label: t("programme:typeCreation"), wrapperCol: { span: 13 }, className: "role-group", name: "investmentOwnershipType", rules: [
16408
+ {
16409
+ required: false,
16410
+ },
16411
+ ] },
16412
+ React.createElement(Radio.Group, { size: "large", defaultValue: typeCreation ==
16413
+ InvestmentCreationType.EXISTING
16414
+ ? InvestmentOwnershipType.PROJECT
16415
+ : investmentOwnershipType }, Object.values(InvestmentOwnershipType).map(function (k, index) {
16416
+ if (!(typeCreation ==
16417
+ InvestmentCreationType.EXISTING &&
16418
+ k == InvestmentOwnershipType.NATIONAL) &&
16419
+ !(k ==
16420
+ InvestmentOwnershipType.NATIONAL &&
16421
+ (data === null || data === void 0 ? void 0 : data.programmeId))) {
16422
+ return (React.createElement("div", { className: "condition-radio-container" },
16423
+ React.createElement(Tooltip, { title: (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) ==
16424
+ CompanyRole.PROGRAMME_DEVELOPER &&
16425
+ stepOneData.toCompanyId !=
16426
+ userInfoState.companyId &&
16427
+ k ==
16428
+ InvestmentOwnershipType.NATIONAL
16429
+ ? "This action is unauthorized due to the selected investor name."
16430
+ : "", color: TooltipColor, key: TooltipColor },
16431
+ React.createElement(Radio.Button, { className: "condition-radio", value: k, onChange: onChangeInvestmentOwnershipType, disabled: (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) ==
16432
+ CompanyRole.PROGRAMME_DEVELOPER &&
16433
+ stepOneData.toCompanyId !=
16434
+ userInfoState.companyId &&
16435
+ k ==
16436
+ InvestmentOwnershipType.NATIONAL }, t("programme:" + k)))));
16437
+ }
16438
+ })))))))),
16439
+ React.createElement("div", { className: "programme-sought-form-container ownership-container" },
16440
+ React.createElement("div", { className: "programme-sought-form" },
16441
+ 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 },
16442
+ allProjectData.length > 0 &&
16443
+ investmentOwnershipType ==
16444
+ InvestmentOwnershipType.PROJECT && (React.createElement("div", null,
16445
+ React.createElement(Row, { className: "row", gutter: [16, 16] },
16446
+ React.createElement(Col, { xl: 12, md: 24 },
16447
+ React.createElement("div", { className: "details-part-one" },
16448
+ React.createElement(Form.Item, { label: t("programme:title"), name: "projectId", wrapperCol: { span: 24 }, initialValue: (data === null || data === void 0 ? void 0 : data.programmeId) != undefined
16449
+ ? allProjectData[0].programmeId
16450
+ : null, rules: [
16451
+ {
16452
+ required: true,
16453
+ message: "".concat(t("programme:title"), " ").concat(t("isRequired")),
16454
+ },
16455
+ ] },
16456
+ React.createElement(Select, { size: "large", loading: loadingProgData,
16457
+ // defaultValue={
16458
+ // allProjectData.length == 1
16459
+ // ? allProjectData[0].programmeId
16460
+ // : null
16461
+ // }
16462
+ disabled: allProjectData.length == 1 &&
16463
+ (data === null || data === void 0 ? void 0 : data.programmeId) != undefined, onChange: setSelectedProgramme }, allProjectData.map(function (project) {
16464
+ if ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) ==
16465
+ CompanyRole.PROGRAMME_DEVELOPER &&
16466
+ Number(stepOneData.toCompanyId) !=
16467
+ userInfoState.companyId) {
16468
+ if (project.companyId
16469
+ .map(function (id) { return Number(id); })
16470
+ .includes(userInfoState.companyId)) {
16471
+ return (React.createElement(Select.Option, { key: project.programmeId, value: project.programmeId }, project.title));
16472
+ }
16473
+ }
16474
+ else if ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) ===
16475
+ CompanyRole.MINISTRY) {
16476
+ if (ministrySectoralScope.includes(project.sectoralScope)) {
16477
+ return (React.createElement(Select.Option, { key: project.programmeId, value: project.programmeId }, project.title));
16478
+ }
16479
+ }
16480
+ else {
16481
+ return (React.createElement(Select.Option, { key: project.programmeId, value: project.programmeId }, project.title));
16482
+ }
16483
+ })))))), projectData === null || projectData === void 0 ? void 0 :
16484
+ projectData.companyId.map(function (companyId, index) {
16485
+ if (formTwo.getFieldValue("percentage") &&
16486
+ formTwo.getFieldValue("percentage")[index] &&
16487
+ companyId == stepOneData.toCompanyId) {
16488
+ formTwo.getFieldValue("percentage")[index] = 0;
16489
+ }
16490
+ return (React.createElement(Row, { className: "row", gutter: [16, 16] },
16491
+ React.createElement(Col, { xl: 8, md: 15 },
16492
+ React.createElement("div", { className: "label" },
16493
+ companyNames[Number(companyId)],
16494
+ React.createElement("span", { className: "required-mark" }, "*"))),
16495
+ React.createElement(Col, { xl: 8, md: 9 },
16496
+ React.createElement(Form.Item, { className: "inline", name: ["percentage", index], initialValue: 0, rules: [
16497
+ {
16498
+ pattern: new RegExp(/^[+]?([.]\d+|\d+[.]?\d*)$/g),
16499
+ message: "Percentage Should be a positive number",
16500
+ },
16501
+ {
16502
+ required: true,
16503
+ message: "Required field",
16504
+ },
16505
+ function (_a) {
16506
+ var getFieldValue = _a.getFieldValue;
16507
+ return ({
16508
+ validator: function (rule, v) {
16509
+ if (getFieldValue([
16510
+ "percentage",
16511
+ index,
16512
+ ]) &&
16513
+ parseFloat(getFieldValue([
16514
+ "percentage",
16515
+ index,
16516
+ ])) >
16517
+ projectData
16518
+ .proponentPercentage[index]) {
16519
+ // eslint-disable-next-line prefer-promise-reject-errors
16520
+ return Promise.reject("Amount > Available");
16521
+ }
16522
+ return Promise.resolve();
16523
+ },
16524
+ });
16525
+ },
16526
+ ] },
16527
+ React.createElement(InputNumber, { placeholder: "", controls: false, disabled: govData.companyId ==
16528
+ companyId ||
16529
+ companyId ==
16530
+ stepOneData.toCompanyId, value: 0,
16531
+ // disabled={userInfoState?.companyId === Number(companyId)}
16532
+ onKeyPress: function (event) {
16533
+ if (!/[0-9\.]/.test(event.key)) {
16534
+ event.preventDefault();
16535
+ }
16536
+ } })),
16537
+ React.createElement("div", { className: "inline separator" }, "/"),
16538
+ React.createElement(Form.Item, { className: "inline" },
16539
+ React.createElement(InputNumber, { placeholder: String(projectData === null || projectData === void 0 ? void 0 : projectData.proponentPercentage[index]), disabled: true })))));
16540
+ }),
16541
+ React.createElement(Row, { className: "row", gutter: [16, 16] },
16542
+ React.createElement(Col, { xl: 8, md: 15 },
16543
+ React.createElement("div", { className: "label" }, t("programme:total"))),
16544
+ React.createElement(Col, { xl: 8, md: 9 },
16545
+ React.createElement(Form.Item, { className: "inline", name: ["total"] },
16546
+ React.createElement(InputNumber, { placeholder: currentPercTotal + "", controls: false, disabled: true, onKeyPress: function (event) {
16547
+ if (!/[0-9\.]/.test(event.key)) {
16548
+ event.preventDefault();
15833
16549
  }
15834
16550
  } })),
15835
16551
  React.createElement("div", { className: "inline separator" }, "/"),
15836
16552
  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" })))),
16553
+ React.createElement(InputNumber, { disabled: true, placeholder: "100" })))))),
15852
16554
  React.createElement(Form.Item, null,
15853
16555
  React.createElement("div", { className: "steps-actions" },
15854
16556
  React.createElement(Button, { type: "primary", htmlType: "submit", loading: loading, onSubmit: submitInvestment }, t("programme:submit")),
@@ -15963,7 +16665,7 @@ var InvestmentActionModel = function (props) {
15963
16665
  };
15964
16666
 
15965
16667
  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;
16668
+ var translator = props.translator, onNavigateToProgrammeView = props.onNavigateToProgrammeView, onClickAddOwnership = props.onClickAddOwnership, enableAddOwnership = props.enableAddOwnership;
15967
16669
  var t = translator.t;
15968
16670
  var statusOptions = Object.keys(InvestmentStatus).map(function (k, index) { return ({
15969
16671
  label: addSpaces(Object.values(InvestmentStatus)[index]),
@@ -16301,7 +17003,10 @@ var InvestmentManagementComponent = function (props) {
16301
17003
  sorter: true,
16302
17004
  align: "left",
16303
17005
  render: function (item) {
16304
- return React.createElement("span", { className: "clickable" }, item);
17006
+ if (item) {
17007
+ return React.createElement("span", { className: "clickable" }, item);
17008
+ }
17009
+ return React.createElement("span", null, "-");
16305
17010
  },
16306
17011
  onCell: function (record, rowIndex) {
16307
17012
  return {
@@ -16359,6 +17064,12 @@ var InvestmentManagementComponent = function (props) {
16359
17064
  key: "programmeSector",
16360
17065
  sorter: true,
16361
17066
  align: "left",
17067
+ render: function (item) {
17068
+ if (item) {
17069
+ return React.createElement("span", null, item);
17070
+ }
17071
+ return React.createElement("span", null, "-");
17072
+ },
16362
17073
  },
16363
17074
  {
16364
17075
  title: t("programme:investor"),
@@ -16442,7 +17153,11 @@ var InvestmentManagementComponent = function (props) {
16442
17153
  React.createElement("div", { className: "title-bar" },
16443
17154
  React.createElement("div", { className: "body-title" }, t("programme:investmentTitle")),
16444
17155
  React.createElement("div", { className: "body-sub-title" }, t("programme:investmentDesc"))),
16445
- React.createElement("div", { className: "actions" }, enableAddOwnership && (React.createElement("div", { className: "action-bar" },
17156
+ React.createElement("div", { className: "actions" }, enableAddOwnership &&
17157
+ ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) == CompanyRole.MINISTRY ||
17158
+ (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) == CompanyRole.GOVERNMENT ||
17159
+ (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) == CompanyRole.PROGRAMME_DEVELOPER) &&
17160
+ userInfoState.userRole != Role.ViewOnly && (React.createElement("div", { className: "action-bar" },
16446
17161
  React.createElement(Button, { type: "primary", size: "large", block: true, icon: React.createElement(PlusOutlined, null), onClick: onClickAddOwnership }, t("programme:addOwnership")))))),
16447
17162
  React.createElement("div", { className: "content-card" },
16448
17163
  React.createElement(Row, null,
@@ -16483,7 +17198,7 @@ var InvestmentManagementComponent = function (props) {
16483
17198
  return handleTableChange(val, sorter);
16484
17199
  }, locale: {
16485
17200
  emptyText: (React.createElement(Empty, { image: Empty.PRESENTED_IMAGE_SIMPLE, description: tableData.length === 0
16486
- ? t("creditTransfer:noTransfer")
17201
+ ? t("programme:noInvestmentData")
16487
17202
  : null })),
16488
17203
  } }))))),
16489
17204
  popupInfo && selectedReq && (React.createElement(InvestmentActionModel, { investment: selectedReq, onCancel: function () {
@@ -16496,7 +17211,7 @@ var css_248z$i = ".steps-actions {\n display: flex;\n flex-direction: row-reve
16496
17211
  styleInject(css_248z$i);
16497
17212
 
16498
17213
  var SupportCreationComponent = function (props) {
16499
- var t = props.t, useConnection = props.useConnection, userInfoState = props.userInfoState, useLocation = props.useLocation; props.onNavigateToProgrammeManagementView; props.onNavigateToProgrammeView;
17214
+ var t = props.t, useLocation = props.useLocation; props.onNavigateToProgrammeManagementView; props.onNavigateToProgrammeView;
16500
17215
  useLocation().state;
16501
17216
  var _a = useState(); _a[0]; _a[1];
16502
17217
  var formOne = Form.useForm()[0];
@@ -16509,6 +17224,7 @@ var SupportCreationComponent = function (props) {
16509
17224
  var _f = useState([]), organisationsList = _f[0], setOrganisationList = _f[1];
16510
17225
  var _g = useState([]), instrument = _g[0], setInstrument = _g[1];
16511
17226
  var _h = useState(); _h[0]; var setStepOneData = _h[1];
17227
+ var userInfoState = useUserContext().userInfoState;
16512
17228
  var instrumentOptions = Object.keys(Instrument).map(function (k, index) { return ({
16513
17229
  label: addSpaces(Object.values(Instrument)[index]),
16514
17230
  value: Object.values(Instrument)[index],
@@ -16851,7 +17567,7 @@ var SupportCreationComponent = function (props) {
16851
17567
  };
16852
17568
 
16853
17569
  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;
17570
+ var translator = props.translator; props.onNavigateToProgrammeView; var enableAddSupport = props.enableAddSupport, onClickAddSupport = props.onClickAddSupport;
16855
17571
  var t = translator.t;
16856
17572
  var statusOptions = Object.keys(InvestmentStatus).map(function (k, index) { return ({
16857
17573
  label: addSpaces(Object.values(InvestmentStatus)[index]),
@@ -17353,7 +18069,7 @@ var css_248z$h = ".ndc-management .ant-checkbox-checked .ant-checkbox-input[valu
17353
18069
  styleInject(css_248z$h);
17354
18070
 
17355
18071
  var NdcActionManagementComponent = function (props) {
17356
- var t = props.t, useConnection = props.useConnection, useUserContext = props.useUserContext, onNavigateToNdcManagementView = props.onNavigateToNdcManagementView, onNavigateToProgrammeManagementView = props.onNavigateToProgrammeManagementView;
18072
+ var t = props.t, onNavigateToNdcManagementView = props.onNavigateToNdcManagementView, onNavigateToProgrammeManagementView = props.onNavigateToProgrammeManagementView;
17357
18073
  var _a = useState(true), checkAll = _a[0], setCheckAll = _a[1];
17358
18074
  var _b = useState([]), tableData = _b[0], setTableData = _b[1];
17359
18075
  var _c = useState(), totalProgramme = _c[0], setTotalProgramme = _c[1];
@@ -18712,7 +19428,7 @@ var GenderParity = function (props) {
18712
19428
  };
18713
19429
 
18714
19430
  var Assessment = function (props) {
18715
- var onFormSubmit = props.onFormSubmit, assessmentViewData = props.assessmentViewData, viewOnly = props.viewOnly, useConnection = props.useConnection, translator = props.translator;
19431
+ var onFormSubmit = props.onFormSubmit, assessmentViewData = props.assessmentViewData, viewOnly = props.viewOnly, translator = props.translator;
18716
19432
  translator.setDefaultNamespace("coBenifits");
18717
19433
  var t = translator.t;
18718
19434
  var form1 = Form.useForm()[0];
@@ -21117,7 +21833,7 @@ var SocialEnvironmentalRisk = function (props) {
21117
21833
  };
21118
21834
 
21119
21835
  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;
21836
+ 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
21837
  var _b = useState(), coBenefitDetails = _b[0], setCoBenefitDetails = _b[1];
21122
21838
  var _c = useState(true), isSocialFormValid = _c[0], setIsSocialFormValid = _c[1];
21123
21839
  var _d = useState(true), isAssessmentFormValid = _d[0], setIsAssessmentFormValid = _d[1];
@@ -21191,7 +21907,7 @@ var CoBenifitsComponent = function (props) {
21191
21907
  label: t("coBenifits:assessment"),
21192
21908
  key: "7",
21193
21909
  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 })),
21910
+ (!viewOnly && (coBenefitsDetails === null || coBenefitsDetails === void 0 ? void 0 : coBenefitsDetails.assessmentDetails)), viewOnly: viewOnly || false, translator: translator })),
21195
21911
  },
21196
21912
  {
21197
21913
  label: t("coBenifits:socialEnvironmentalRisk"),
@@ -21360,7 +22076,7 @@ var CoBenifitsComponent = function (props) {
21360
22076
  };
21361
22077
 
21362
22078
  var AddNdcActionComponent = function (props) {
21363
- var useConnection = props.useConnection, useLocation = props.useLocation, onNavigateToProgrammeManagementView = props.onNavigateToProgrammeManagementView, onNavigateToProgrammeView = props.onNavigateToProgrammeView, sdgGoalImages = props.sdgGoalImages, translator = props.translator;
22079
+ var useLocation = props.useLocation, onNavigateToProgrammeManagementView = props.onNavigateToProgrammeManagementView, onNavigateToProgrammeView = props.onNavigateToProgrammeView, sdgGoalImages = props.sdgGoalImages, translator = props.translator;
21364
22080
  translator.setDefaultNamespace("ndcAction");
21365
22081
  var t = translator.t;
21366
22082
  var _a = useState(1), current = _a[0], setCurrent = _a[1];
@@ -21502,7 +22218,7 @@ var AddNdcActionComponent = function (props) {
21502
22218
  description: (React.createElement("div", { className: current !== 2 ? "hide" : "" },
21503
22219
  React.createElement(CoBenifitsComponent, { onClickedBackBtn: onClickBackCoBenefits, coBenefitsDetails: ndcActionDetails ? ndcActionDetails.coBenefitsProperties : {}, onFormSubmit: onCoBenefitsSubmit, submitButtonText: isProjectReportsVisible()
21504
22220
  ? t("ndcAction:next")
21505
- : t("ndcAction:submit"), loading: loading, sdgGoalImages: sdgGoalImages, useConnection: useConnection, translator: translator }))),
22221
+ : t("ndcAction:submit"), loading: loading, sdgGoalImages: sdgGoalImages, translator: translator }))),
21506
22222
  },
21507
22223
  ];
21508
22224
  if (isProjectReportsVisible()) {
@@ -21639,7 +22355,7 @@ var uploadDocUserPermission = function (userInfoState, docType, programmeOwnerId
21639
22355
  var NdcActionViewComponent = function (props) {
21640
22356
  var _a;
21641
22357
  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;
22358
+ var useLocation = props.useLocation, onNavigateToNdcManagementView = props.onNavigateToNdcManagementView, translator = props.translator, sdgGoalImages = props.sdgGoalImages, Chart = props.Chart;
21643
22359
  translator.setDefaultNamespace("ndcAction");
21644
22360
  var t = translator.t;
21645
22361
  var userInfoState = useUserContext().userInfoState;
@@ -22132,7 +22848,7 @@ var NdcActionViewComponent = function (props) {
22132
22848
  React.createElement(Card, { className: "card-container" },
22133
22849
  React.createElement("div", { className: "co-benifits-view" },
22134
22850
  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 })))))))));
22851
+ 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
22852
  };
22137
22853
 
22138
22854
  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 +23001,7 @@ var TransferActionModel = function (props) {
22285
23001
  };
22286
23002
 
22287
23003
  var CreditTransferComponent = function (props) {
22288
- var useConnection = props.useConnection, useUserContext = props.useUserContext, useSettingsContext = props.useSettingsContext, translator = props.translator, onNavigateToProgrammeView = props.onNavigateToProgrammeView;
23004
+ var translator = props.translator, onNavigateToProgrammeView = props.onNavigateToProgrammeView;
22289
23005
  var userInfoState = useUserContext().userInfoState;
22290
23006
  var t = translator.t;
22291
23007
  var statusOptions = Object.keys(CreditTransferStage).map(function (k, index) { return ({
@@ -23220,8 +23936,8 @@ var MapStatsComponent = function (props) {
23220
23936
 
23221
23937
  var RangePicker$1 = DatePicker.RangePicker;
23222
23938
  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;
23224
- var _b = useConnection(); _b.get; var post = _b.post; _b.delete;
23939
+ var Link = props.Link, Chart = props.Chart, t = props.t, ButtonGroup = props.ButtonGroup, _a = props.isMultipleDashboardsVisible, isMultipleDashboardsVisible = _a === void 0 ? false : _a;
23940
+ var _b = useConnection(); _b.get; var post = _b.post; _b.delete; var statServerUrl = _b.statServerUrl;
23225
23941
  var _c = useState({}), data = _c[0], setData = _c[1];
23226
23942
  var _e = useState(false), loading = _e[0], setLoading = _e[1];
23227
23943
  var userInfoState = useUserContext().userInfoState;
@@ -23704,7 +24420,7 @@ var MrvDashboardComponent = function (props) {
23704
24420
  _e.label = 1;
23705
24421
  case 1:
23706
24422
  _e.trys.push([1, 3, 4, 5]);
23707
- return [4 /*yield*/, post("stats/programme/agg", genPayload(), undefined, process.env.REACT_APP_STAT_URL)];
24423
+ return [4 /*yield*/, post("stats/programme/agg", genPayload(), undefined, statServerUrl)];
23708
24424
  case 2:
23709
24425
  response = _e.sent();
23710
24426
  console.log("Response", response);
@@ -24953,8 +25669,8 @@ var RegistryBarChartsStatComponent = function (props) {
24953
25669
 
24954
25670
  var RangePicker = DatePicker.RangePicker;
24955
25671
  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;
24957
- var _b = useConnection(); _b.get; var post = _b.post; _b.delete;
25672
+ var Chart = props.Chart, t = props.t, ButtonGroup = props.ButtonGroup, Link = props.Link, _a = props.isMultipleDashboardsVisible, isMultipleDashboardsVisible = _a === void 0 ? false : _a;
25673
+ var _b = useConnection(); _b.get; var post = _b.post; _b.delete; var statServerUrl = _b.statServerUrl;
24958
25674
  var userInfoState = useUserContext().userInfoState;
24959
25675
  var _c = useState(false), loadingWithoutTimeRange = _c[0], setLoadingWithoutTimeRange = _c[1];
24960
25676
  var _e = useState(false), loading = _e[0], setLoading = _e[1];
@@ -25401,7 +26117,7 @@ var RegistryDashboardComponent = function (props) {
25401
26117
  _253.label = 1;
25402
26118
  case 1:
25403
26119
  _253.trys.push([1, 3, 4, 5]);
25404
- return [4 /*yield*/, post("stats/programme/agg", getAllChartsParams(), undefined, process.env.REACT_APP_STAT_URL)];
26120
+ return [4 /*yield*/, post("stats/programme/agg", getAllChartsParams(), undefined, statServerUrl)];
25405
26121
  case 2:
25406
26122
  response = _253.sent();
25407
26123
  totalCreditsCertifiedStats = void 0;
@@ -25678,7 +26394,7 @@ var RegistryDashboardComponent = function (props) {
25678
26394
  _77.label = 1;
25679
26395
  case 1:
25680
26396
  _77.trys.push([1, 3, 4, 5]);
25681
- return [4 /*yield*/, post("stats/programme/agg", getAllProgrammeAnalyticsStatsParamsWithoutTimeRange(), undefined, process.env.REACT_APP_STAT_URL)];
26397
+ return [4 /*yield*/, post("stats/programme/agg", getAllProgrammeAnalyticsStatsParamsWithoutTimeRange(), undefined, statServerUrl)];
25682
26398
  case 2:
25683
26399
  response = _77.sent();
25684
26400
  programmeByStatusAggregationResponse = (_c = (_b = (_a = response === null || response === void 0 ? void 0 : response.data) === null || _a === void 0 ? void 0 : _a.stats) === null || _b === void 0 ? void 0 : _b.AGG_PROGRAMME_BY_STATUS) === null || _c === void 0 ? void 0 : _c.data;
@@ -25771,7 +26487,7 @@ var RegistryDashboardComponent = function (props) {
25771
26487
  _188.label = 1;
25772
26488
  case 1:
25773
26489
  _188.trys.push([1, 3, 4, 5]);
25774
- return [4 /*yield*/, post("stats/programme/agg", getAllProgrammeAnalyticsStatsParams(), undefined, process.env.REACT_APP_STAT_URL)];
26490
+ return [4 /*yield*/, post("stats/programme/agg", getAllProgrammeAnalyticsStatsParams(), undefined, statServerUrl)];
25775
26491
  case 2:
25776
26492
  response = _188.sent();
25777
26493
  programmeByStatusAuthAggregationResponse = void 0;
@@ -26655,880 +27371,622 @@ var RegistryDashboardComponent = function (props) {
26655
27371
  lastUpdateTransferLocations))))))))) : ("")));
26656
27372
  };
26657
27373
 
26658
- React.createContext(null);
27374
+ var EditableContext = React.createContext(null);
27375
+ var EditableRow = function (_a) {
27376
+ _a.index; var props = __rest(_a, ["index"]);
27377
+ var form = Form.useForm()[0];
27378
+ return (React.createElement(Form, { form: form, component: false },
27379
+ React.createElement(EditableContext.Provider, { value: form },
27380
+ React.createElement("tr", __assign({}, props)))));
27381
+ };
26659
27382
  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)));
27383
+ 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"]);
27384
+ var _b = useState(false), editing = _b[0], setEditing = _b[1];
27385
+ var inputRef = useRef(null);
27386
+ var form = useContext(EditableContext);
27387
+ useEffect(function () {
27388
+ if (editing) {
27389
+ inputRef.current.focus();
27390
+ }
27391
+ }, [editing]);
27392
+ var toggleEdit = function () {
27393
+ var _a;
27394
+ setEditing(!editing);
27395
+ form.setFieldsValue((_a = {}, _a[dataIndex] = record[dataIndex], _a));
27396
+ };
27397
+ var save = function () { return __awaiter(void 0, void 0, void 0, function () {
27398
+ var values, errInfo_1;
27399
+ return __generator(this, function (_a) {
27400
+ switch (_a.label) {
27401
+ case 0:
27402
+ _a.trys.push([0, 2, , 3]);
27403
+ return [4 /*yield*/, form.validateFields()];
27404
+ case 1:
27405
+ values = _a.sent();
27406
+ toggleEdit();
27407
+ handleSave(__assign(__assign({}, record), values));
27408
+ return [3 /*break*/, 3];
27409
+ case 2:
27410
+ errInfo_1 = _a.sent();
27411
+ console.log("Save failed:", errInfo_1);
27412
+ return [3 /*break*/, 3];
27413
+ case 3: return [2 /*return*/];
27414
+ }
27415
+ });
27416
+ }); };
27417
+ var childNode = children;
27418
+ if (editable) {
27419
+ childNode = editing ? (React.createElement(Form.Item, { style: { margin: 0 }, name: dataIndex, rules: [
27420
+ {
27421
+ required: true,
27422
+ message: "".concat(title, " is required."),
27423
+ },
27424
+ ] },
27425
+ 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));
27426
+ }
27427
+ return React.createElement("td", __assign({}, restProps), childNode);
26701
27428
  };
26702
27429
 
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\n.ndc-details .footer-btns: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";
27430
+ 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
27431
  styleInject(css_248z$4);
26705
27432
 
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
-
27433
+ var NdcActionType;
27434
+ (function (NdcActionType) {
27435
+ NdcActionType[NdcActionType["main"] = 0] = "main";
27436
+ NdcActionType[NdcActionType["sub"] = 1] = "sub";
27437
+ })(NdcActionType || (NdcActionType = {}));
26738
27438
  var NdcDetailsComponent = function (props) {
26739
- var t = props.t, useConnection = props.useConnection, useUserContext = props.useUserContext;
27439
+ var t = props.t;
26740
27440
  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];
27441
+ var _a = useState([]), ndcDetailsData = _a[0], setNdcDetailsData = _a[1];
27442
+ var _b = useState(false), loading = _b[0]; _b[1];
27443
+ var periodItemsRef = useRef([]);
26743
27444
  var _c = useState([]), periodItems = _c[0], setPeriodItems = _c[1];
26744
- var _d = useState({}), selectedPeriod = _d[0], setSelectedPeriod = _d[1];
26745
- var selectedDateRangeRef = useRef({});
27445
+ var _d = useState("add_new"), selectedTab = _d[0], setSelectedTab = _d[1];
27446
+ var selectedPeriod = useRef({});
27447
+ var addedNdcDetailId = useRef(0);
27448
+ var selectedNdcDetail = useRef({});
26746
27449
  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
27450
  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)) &&
27451
+ var isAddRangeVisible = function () {
27452
+ return (((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.MINISTRY ||
27453
+ (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.GOVERNMENT) &&
26793
27454
  (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.userRole) !== Role.ViewOnly);
26794
27455
  };
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) &&
27456
+ var isAddNdcActionVisible = function () {
27457
+ return ((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.GOVERNMENT &&
26799
27458
  (userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.userRole) !== Role.ViewOnly);
26800
27459
  };
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
27460
  var inRange = function (num, min, max) {
26841
27461
  return num >= min && num <= max;
26842
27462
  };
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;
27463
+ function onAddNewSubNdcDetail() {
27464
+ var range = selectedTab.split("-");
27465
+ var ndcDetail = ndcDetailsData.find(function (item) { return item.key === selectedNdcDetail.current.key; });
27466
+ var ndcDetailItemIndex = ndcDetailsData.findIndex(function (item) { return item.key === selectedNdcDetail.current.key; });
27467
+ if (ndcDetail) {
27468
+ addedNdcDetailId.current = addedNdcDetailId.current + 1;
27469
+ var newData = {
27470
+ key: addedNdcDetailId.current,
27471
+ startDate: new Date("".concat(Number(range[0]), "-01-24 23:12:00")),
27472
+ endDate: new Date("".concat(Number(range[0]), "-12-24 23:12:00")),
27473
+ ndcActionId: ndcDetail === null || ndcDetail === void 0 ? void 0 : ndcDetail.key,
27474
+ nationalPlanObj: "",
27475
+ kpi: "",
27476
+ ministry: "",
27477
+ };
27478
+ if (!ndcDetail.subNdcDetails) {
27479
+ ndcDetail.subNdcDetails = [];
27480
+ }
27481
+ ndcDetail.subNdcDetails.push(newData);
27482
+ }
27483
+ ndcDetailsData[ndcDetailItemIndex] = ndcDetail;
27484
+ setNdcDetailsData(ndcDetailsData);
27485
+ setTableKey(function (key) { return key + 1; });
27486
+ }
27487
+ var handleSave = function (row) {
27488
+ setNdcDetailsData(function (prevData) {
27489
+ var newData = JSON.parse(JSON.stringify(prevData));
27490
+ if (row.type === NdcActionType.main) {
27491
+ var index = newData.findIndex(function (item) { return row.key === item.key; });
27492
+ if (index !== -1) {
27493
+ newData[index] = __assign(__assign({}, newData[index]), row);
27494
+ }
27495
+ }
27496
+ else {
27497
+ var parentIndex = newData.findIndex(function (item) { return row.ndcActionId === item.key; });
27498
+ var parentItem = newData[parentIndex];
27499
+ if (parentItem) {
27500
+ if (parentItem.subNdcDetails) {
27501
+ var itemIndex = parentItem.subNdcDetails.findIndex(function (item) { return row.key === item.key; });
27502
+ if (itemIndex === -1) {
27503
+ parentItem.subNdcDetails.push(row);
27504
+ }
27505
+ else {
27506
+ parentItem.subNdcDetails[itemIndex] = __assign({}, row);
27507
+ }
26875
27508
  }
26876
27509
  else {
26877
- updatedItem.status = NdcDetailsActionStatus.Pending;
27510
+ parentItem.subNdcDetails = [row];
26878
27511
  }
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*/];
27512
+ }
27513
+ newData[parentIndex] = __assign({}, parentItem);
27514
+ setTableKey(function (key) { return key + 1; });
26904
27515
  }
27516
+ return newData;
26905
27517
  });
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))); } }));
27518
+ };
27519
+ var getNdcDetailsForPeriod = function () {
27520
+ var range = selectedTab.split("-");
27521
+ if (range.length > 1) {
27522
+ var filteredData = ndcDetailsData.filter(function (item) {
27523
+ return inRange(Number(moment(item.startDate).year()), Number(range[0]), Number(range[1]));
27524
+ });
27525
+ return filteredData;
27526
+ }
27527
+ else {
27528
+ return [];
27529
+ }
27530
+ };
27531
+ var getSubNdcDetails = function (key) {
27532
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
27533
+ var ndcDetail = ndcDetailsData.find(function (item) { return item.key === key; });
27534
+ if (ndcDetail) {
27535
+ 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()) !== "" &&
27536
+ ((_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) &&
27537
+ ((_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()) !== "" &&
27538
+ ((_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) &&
27539
+ 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() !== "" &&
27540
+ 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)) {
27541
+ onAddNewSubNdcDetail();
27542
+ }
27543
+ return ndcDetail.subNdcDetails;
26945
27544
  }
26946
27545
  else {
26947
- return null;
27546
+ return [];
26948
27547
  }
26949
27548
  };
26950
27549
  var defaultColumns = [
26951
27550
  {
26952
27551
  title: t("ndc:ndcColumnsNationalPlanObj"),
26953
- dataIndex: "nationalPlanObjective",
26954
- key: "nationalPlanObjective",
27552
+ dataIndex: "nationalPlanObj",
27553
+ key: "nationalPlanObj",
26955
27554
  align: "left",
26956
- width: 400,
26957
27555
  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" })))); },
27556
+ width: "50%",
27557
+ render: function (_, record) { return (React.createElement(React.Fragment, null, record.nationalPlanObj ? (React.createElement(Space, { size: "middle" },
27558
+ React.createElement("span", null, record.nationalPlanObj))) : (React.createElement("input", { placeholder: "Please add Programmes", className: "ant-input", type: "text" })))); },
26960
27559
  },
26961
27560
  {
26962
27561
  title: t("ndc:ndcColumnsKpi"),
26963
27562
  dataIndex: "kpi",
26964
27563
  key: "kpi",
26965
27564
  align: "left",
26966
- width: 100,
26967
27565
  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 }))); },
27566
+ width: "10%",
27567
+ render: function (_, record) { return (React.createElement(React.Fragment, null, record.nationalPlanObj ? (React.createElement(Space, { size: "middle" },
27568
+ React.createElement("span", null, record.kpi))) : (React.createElement("input", { placeholder: "Enter Kpi", className: "ant-input", type: "text" })))); },
26983
27569
  },
26984
27570
  {
26985
- title: t("ndc:ndcColumnsStatus"),
26986
- dataIndex: "status",
26987
- key: "status",
27571
+ title: "Government Department",
27572
+ dataIndex: "ministry",
27573
+ key: "ministry",
26988
27574
  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
- },
27575
+ editable: true,
27576
+ width: "40%",
27577
+ render: function (_, record) { return (React.createElement(React.Fragment, null, record.nationalPlanObj ? (React.createElement(Space, { size: "middle" },
27578
+ React.createElement("span", null, record.ministry))) : (React.createElement("input", { placeholder: "Please add the Government Department", className: "ant-input", type: "text" })))); },
27004
27579
  },
27005
27580
  ];
27006
27581
  var columns = defaultColumns.map(function (col) {
27007
27582
  if (!col.editable) {
27008
27583
  return col;
27009
27584
  }
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
- } });
27585
+ return __assign(__assign({}, col), { onCell: function (record) { return ({
27586
+ record: record,
27587
+ editable: col.editable,
27588
+ dataIndex: col.dataIndex,
27589
+ title: col.title,
27590
+ handleSave: handleSave,
27591
+ }); } });
27024
27592
  });
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
- });
27593
+ function onAddNewNdcDetail() {
27594
+ var range = selectedTab.split("-");
27595
+ var ndcActionId = ++addedNdcDetailId.current;
27596
+ var newData = {
27597
+ key: ndcActionId,
27598
+ type: NdcActionType.main,
27599
+ startDate: new Date("".concat(Number(range[0]), "-01-24 23:12:00")),
27600
+ endDate: new Date("".concat(Number(range[0]), "-12-24 23:12:00")),
27601
+ nationalPlanObj: "",
27602
+ kpi: "",
27603
+ ministry: "",
27604
+ subNdcDetails: [
27605
+ {
27606
+ key: ++addedNdcDetailId.current,
27607
+ ndcActionId: ndcActionId,
27608
+ type: NdcActionType.sub,
27609
+ startDate: new Date("2019-03-25"),
27610
+ endDate: new Date("2020-03-25"),
27611
+ nationalPlanObj: "",
27612
+ kpi: "",
27613
+ ministry: "",
27614
+ },
27615
+ ],
27616
+ };
27617
+ setNdcDetailsData(__spreadArray(__spreadArray([], ndcDetailsData, true), [newData], false));
27058
27618
  }
27059
27619
  var components = {
27060
27620
  body: {
27621
+ row: EditableRow,
27061
27622
  cell: EditableCell,
27062
27623
  },
27063
27624
  };
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,
27625
+ //commented because rendering issue
27626
+ function ndcDetailsTableContent() {
27627
+ return (React.createElement("div", null)
27628
+ // <div>
27629
+ // <Button
27630
+ // onClick={onAddNewNdcDetail}
27631
+ // type="primary"
27632
+ // style={{
27633
+ // marginBottom: 16,
27634
+ // }}
27635
+ // >
27636
+ // Add a row
27637
+ // </Button>
27638
+ // <Table
27639
+ // components={components}
27640
+ // rowClassName={() => 'editable-row'}
27641
+ // bordered
27642
+ // dataSource={ndcDetailsData}
27643
+ // columns={columns}
27644
+ // />
27645
+ // </div>
27646
+ );
27647
+ }
27648
+ var onCancelPeriod = function () { };
27649
+ var onAddNewPeriod = function () {
27650
+ if (selectedPeriod &&
27651
+ selectedPeriod.current &&
27652
+ selectedPeriod.current.start &&
27653
+ selectedPeriod.current.end) {
27654
+ var newPeriodItem_1 = {
27655
+ key: "".concat(selectedPeriod.current.start, "-").concat(selectedPeriod.current.end),
27656
+ label: "".concat(selectedPeriod.current.start, "-").concat(selectedPeriod.current.end),
27657
+ start: selectedPeriod.current.start,
27658
+ end: selectedPeriod.current.end,
27659
+ children: ndcDetailsTableContent(),
27660
+ };
27661
+ var existingIndex = periodItemsRef.current.findIndex(function (item) {
27662
+ return inRange(newPeriodItem_1.start, item.start, item.end) ||
27663
+ inRange(newPeriodItem_1.end, item.start, item.end);
27072
27664
  });
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*/];
27665
+ if (existingIndex === -1) {
27666
+ setPeriodItems(function (items) { return __spreadArray(__spreadArray([], items, true), [newPeriodItem_1], false); });
27667
+ periodItemsRef.current = __spreadArray(__spreadArray([], periodItemsRef.current, true), [newPeriodItem_1], false);
27088
27668
  }
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) {
27669
+ else {
27102
27670
  message.open({
27103
27671
  type: "error",
27104
- content: t("ndc:finalizeErrorText"),
27672
+ content: t("ndc:rangeAlreadyExists"),
27105
27673
  duration: 3,
27106
27674
  style: { textAlign: "right", marginRight: 15, marginTop: 10 },
27107
27675
  });
27108
27676
  }
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
27677
  }
27128
- setExpandedRowKeys(keys);
27129
- setNdcSubActionsForMainAction(record.id);
27678
+ };
27679
+ useEffect(function () {
27680
+ if (periodItems && periodItems.length > 3) {
27681
+ setSelectedTab(periodItems[periodItems.length - 1].key);
27682
+ }
27683
+ }, [periodItems]);
27684
+ var onDateRangeChanged = function (range) {
27685
+ var period = {
27686
+ start: Number(moment(range[0]).year()),
27687
+ end: Number(moment(range[1]).year()),
27688
+ };
27689
+ selectedPeriod.current = period;
27130
27690
  };
27131
27691
  function addNewPeriodContent() {
27132
27692
  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"))))));
27693
+ React.createElement(Row, null,
27694
+ React.createElement(RangePicker, { onChange: onDateRangeChanged, picker: "year" })),
27695
+ React.createElement(Row, { className: "mg-top-1" },
27696
+ React.createElement("div", { className: "ndc-steps-actions" },
27697
+ React.createElement(Button, { type: "primary", onClick: onAddNewPeriod, htmlType: "submit", loading: loading }, t("ndc:submit")),
27698
+ React.createElement(Button, { className: "back-btn", onClick: onCancelPeriod, loading: loading }, t("ndc:back"))))));
27138
27699
  }
27139
- var onChange = function (page, size) {
27140
- setCurrentPage(page);
27141
- setPageSize(size);
27700
+ function getSubNdcActionContent(record) {
27701
+ selectedNdcDetail.current = record;
27702
+ return (React.createElement(Table, { components: components, rowClassName: function () { return "editable-row"; }, bordered: true, dataSource: getSubNdcDetails(record.key), columns: columns, showHeader: false, pagination: false }));
27703
+ }
27704
+ var onTabChange = function (key) {
27705
+ setSelectedTab(key);
27142
27706
  };
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 footer-btns", onClick: onClickedDeletePeriod, htmlType: "submit", disabled: isMainActionInEditMode(), loading: loading }, t("ndc:delete")),
27183
- React.createElement(Button, { className: "mg-left-1 footer-btns", 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
- }
27707
+ useEffect(function () {
27708
+ var defaultNdcDetails = [
27709
+ {
27710
+ key: 1,
27711
+ type: NdcActionType.main,
27712
+ startDate: new Date("2019-03-25"),
27713
+ endDate: new Date("2020-03-25"),
27714
+ nationalPlanObj: "Enhance value addition in key growth opportunities",
27715
+ kpi: 25,
27716
+ ministry: "Ministry of Environment",
27717
+ subNdcDetails: [
27718
+ {
27719
+ key: 6,
27720
+ ndcActionId: 1,
27721
+ type: NdcActionType.sub,
27722
+ startDate: new Date("2019-03-25"),
27723
+ endDate: new Date("2020-03-25"),
27724
+ nationalPlanObj: "Enhance value addition in key growth opportunities sub details",
27725
+ kpi: 25,
27726
+ ministry: "Ministry of Agriculture, Water and Forestry (MAWF)",
27195
27727
  },
27196
- onMouseLeave: function () {
27197
- if (isEditing(record)) {
27198
- handleSave(record);
27199
- }
27728
+ {
27729
+ key: 7,
27730
+ ndcActionId: 1,
27731
+ type: NdcActionType.sub,
27732
+ startDate: new Date("2019-03-25"),
27733
+ endDate: new Date("2020-03-25"),
27734
+ nationalPlanObj: "",
27735
+ kpi: "",
27736
+ ministry: "",
27200
27737
  },
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);
27738
+ ],
27739
+ },
27740
+ {
27741
+ key: 2,
27742
+ type: NdcActionType.main,
27743
+ startDate: new Date("2019-03-25"),
27744
+ endDate: new Date("2019-08-25"),
27745
+ nationalPlanObj: "Strengthen the private sector to create 10,000 jobs",
27746
+ kpi: 10500,
27747
+ ministry: "Ministry of Environment",
27748
+ subNdcDetails: [
27749
+ {
27750
+ key: 8,
27751
+ ndcActionId: 2,
27752
+ type: NdcActionType.sub,
27753
+ startDate: new Date("2019-03-25"),
27754
+ endDate: new Date("2020-03-25"),
27755
+ nationalPlanObj: "",
27756
+ kpi: "",
27757
+ ministry: "",
27758
+ },
27759
+ ],
27760
+ },
27761
+ {
27762
+ key: 12,
27763
+ type: NdcActionType.main,
27764
+ startDate: new Date("2019-03-25"),
27765
+ endDate: new Date("2019-08-25"),
27766
+ nationalPlanObj: "Other",
27767
+ kpi: 10500,
27768
+ ministry: "Ministry of Environment",
27769
+ subNdcDetails: [
27770
+ {
27771
+ key: 8,
27772
+ ndcActionId: 12,
27773
+ type: NdcActionType.sub,
27774
+ startDate: new Date("2019-03-25"),
27775
+ endDate: new Date("2020-03-25"),
27776
+ nationalPlanObj: "",
27777
+ kpi: "",
27778
+ ministry: "",
27779
+ },
27780
+ ],
27781
+ },
27782
+ {
27783
+ key: 3,
27784
+ type: NdcActionType.main,
27785
+ startDate: new Date("2021-03-25"),
27786
+ endDate: new Date("2022-03-25"),
27787
+ nationalPlanObj: "Consolidate and increase the stock and quality of productive infrastructure by 50%",
27788
+ kpi: 48,
27789
+ ministry: "Ministry of Environment",
27790
+ subNdcDetails: [
27791
+ {
27792
+ key: 9,
27793
+ ndcActionId: 3,
27794
+ type: NdcActionType.sub,
27795
+ startDate: new Date("2019-03-25"),
27796
+ endDate: new Date("2020-03-25"),
27797
+ nationalPlanObj: "",
27798
+ kpi: "",
27799
+ ministry: "",
27800
+ },
27801
+ ],
27802
+ },
27803
+ {
27804
+ key: 4,
27805
+ type: NdcActionType.main,
27806
+ startDate: new Date("2022-03-25"),
27807
+ endDate: new Date("2022-05-25"),
27808
+ nationalPlanObj: "Enhance the productivity and social wellbeing of the population",
27809
+ kpi: 20,
27810
+ ministry: "Ministry of Environment",
27811
+ subNdcDetails: [
27812
+ {
27813
+ key: 10,
27814
+ ndcActionId: 4,
27815
+ type: NdcActionType.sub,
27816
+ startDate: new Date("2019-03-25"),
27817
+ endDate: new Date("2020-03-25"),
27818
+ nationalPlanObj: "",
27819
+ kpi: "",
27820
+ ministry: "",
27821
+ },
27822
+ ],
27823
+ },
27824
+ {
27825
+ key: 5,
27826
+ type: NdcActionType.main,
27827
+ startDate: new Date("2022-03-25"),
27828
+ endDate: new Date("2023-03-25"),
27829
+ nationalPlanObj: "Strengthen the role of the state in guiding and facilitating development",
27830
+ kpi: 10,
27831
+ ministry: "Ministry of Environment",
27832
+ subNdcDetails: [
27833
+ {
27834
+ key: 11,
27835
+ ndcActionId: 5,
27836
+ type: NdcActionType.sub,
27837
+ startDate: new Date("2019-03-25"),
27838
+ endDate: new Date("2020-03-25"),
27839
+ nationalPlanObj: "",
27840
+ kpi: "",
27841
+ ministry: "",
27842
+ },
27843
+ ],
27844
+ },
27845
+ {
27846
+ key: 13,
27847
+ type: NdcActionType.main,
27848
+ startDate: new Date("2022-03-25"),
27849
+ endDate: new Date("2023-03-25"),
27850
+ nationalPlanObj: "Convert to solar energy",
27851
+ kpi: 50000,
27852
+ ministry: "Ministry of Environment",
27853
+ subNdcDetails: [
27854
+ {
27855
+ key: 11,
27856
+ ndcActionId: 13,
27857
+ type: NdcActionType.sub,
27858
+ startDate: new Date("2019-03-25"),
27859
+ endDate: new Date("2020-03-25"),
27860
+ nationalPlanObj: "Convert to solar energy",
27861
+ kpi: "3000",
27862
+ ministry: "Ministry of Agriculture, Water and Forestry (MAWF)",
27863
+ },
27864
+ {
27865
+ key: 14,
27866
+ ndcActionId: 13,
27867
+ type: NdcActionType.sub,
27868
+ startDate: new Date("2019-03-25"),
27869
+ endDate: new Date("2020-03-25"),
27870
+ nationalPlanObj: "",
27871
+ kpi: "",
27872
+ ministry: "",
27873
+ },
27874
+ ],
27875
+ },
27876
+ {
27877
+ key: 15,
27878
+ type: NdcActionType.main,
27879
+ startDate: new Date("2022-03-25"),
27880
+ endDate: new Date("2023-03-25"),
27881
+ nationalPlanObj: "Strengthen the private sector to create jobs",
27882
+ kpi: 10000,
27883
+ ministry: "Ministry of Environment",
27884
+ subNdcDetails: [
27885
+ {
27886
+ key: 16,
27887
+ ndcActionId: 15,
27888
+ type: NdcActionType.sub,
27889
+ startDate: new Date("2019-03-25"),
27890
+ endDate: new Date("2020-03-25"),
27891
+ nationalPlanObj: "Strengthen the private sector to create jobs",
27892
+ kpi: "7200",
27893
+ ministry: "Ministry of Tourism (MoT)",
27894
+ },
27895
+ {
27896
+ key: 17,
27897
+ ndcActionId: 15,
27898
+ type: NdcActionType.sub,
27899
+ startDate: new Date("2019-03-25"),
27900
+ endDate: new Date("2020-03-25"),
27901
+ nationalPlanObj: "",
27902
+ kpi: "",
27903
+ ministry: "",
27904
+ },
27905
+ ],
27906
+ },
27907
+ {
27908
+ key: 18,
27909
+ type: NdcActionType.main,
27910
+ startDate: new Date("2022-03-25"),
27911
+ endDate: new Date("2023-03-25"),
27912
+ nationalPlanObj: "Other",
27913
+ kpi: "",
27914
+ ministry: "Ministry of Environment",
27915
+ subNdcDetails: [
27916
+ {
27917
+ key: 19,
27918
+ ndcActionId: 18,
27919
+ type: NdcActionType.sub,
27920
+ startDate: new Date("2019-03-25"),
27921
+ endDate: new Date("2020-03-25"),
27922
+ nationalPlanObj: "Strengthen the private sector to create jobs",
27923
+ kpi: "",
27924
+ ministry: "Ministry of Agriculture, Water and Forestry (MAWF)",
27925
+ },
27926
+ {
27927
+ key: 20,
27928
+ ndcActionId: 18,
27929
+ type: NdcActionType.sub,
27930
+ startDate: new Date("2019-03-25"),
27931
+ endDate: new Date("2020-03-25"),
27932
+ nationalPlanObj: "",
27933
+ kpi: "",
27934
+ ministry: "",
27935
+ },
27936
+ ],
27937
+ },
27938
+ ];
27939
+ var initialPeriods = [
27940
+ {
27941
+ key: "2019-2020",
27942
+ label: "2019-2020",
27943
+ start: 2019,
27944
+ end: 2020,
27945
+ children: ndcDetailsTableContent(),
27946
+ },
27947
+ {
27948
+ key: "2021-2023",
27949
+ label: "2021-2023",
27950
+ start: 2021,
27951
+ end: 2021,
27952
+ children: ndcDetailsTableContent(),
27953
+ },
27954
+ ];
27955
+ if (isAddRangeVisible()) {
27956
+ initialPeriods.unshift({
27957
+ key: "add_new",
27958
+ label: "Add New",
27959
+ start: 0,
27960
+ end: 0,
27961
+ children: addNewPeriodContent(),
27962
+ });
27279
27963
  }
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();
27964
+ addedNdcDetailId.current = 20;
27965
+ setPeriodItems(initialPeriods);
27966
+ periodItemsRef.current = initialPeriods;
27967
+ setNdcDetailsData(defaultNdcDetails);
27519
27968
  }, []);
27520
- return (React.createElement("div", { className: "ndc-details content-container" },
27969
+ return (React.createElement("div", { className: "ndc-management content-container" },
27521
27970
  React.createElement("div", { className: "title-bar" },
27522
27971
  React.createElement(Row, { justify: "space-between", align: "middle" },
27523
27972
  React.createElement(Col, { span: 20 },
27524
27973
  React.createElement("div", { className: "body-title" }, t("ndc:ndcTitle")),
27525
27974
  React.createElement("div", { className: "body-sub-title" }, t("ndc:ndcSubTitle"))))),
27526
27975
  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 })));
27976
+ React.createElement(Tabs, { centered: false, defaultActiveKey: "1", items: periodItems, activeKey: selectedTab, onChange: onTabChange })),
27977
+ selectedTab !== "add_new" && (React.createElement("div", null,
27978
+ React.createElement("div", null,
27979
+ React.createElement(Table, { key: tableKey, components: components, rowClassName: function () { return "editable-row"; }, bordered: true, dataSource: getNdcDetailsForPeriod(), columns: columns, expandable: {
27980
+ expandedRowRender: function (record) { return getSubNdcActionContent(record); },
27981
+ indentSize: 0,
27982
+ defaultExpandedRowKeys: [selectedNdcDetail.current.key],
27983
+ }, footer: function () {
27984
+ return isAddNdcActionVisible() && (React.createElement(Row, { justify: "center" },
27985
+ React.createElement(Button, { onClick: onAddNewNdcDetail, type: "default", style: {
27986
+ marginBottom: 16,
27987
+ width: "100%",
27988
+ } }, t("ndc:addNdcAction"))));
27989
+ } }))))));
27532
27990
  };
27533
27991
 
27534
27992
  var ImgWithFallback = function (_a) {
@@ -27700,7 +28158,7 @@ var ProgrammeIssueForm = function (props) {
27700
28158
  };
27701
28159
 
27702
28160
  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;
28161
+ 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
28162
  var t = translator.t;
27705
28163
  var _a = useState(undefined), popupError = _a[0], setPopupError = _a[1];
27706
28164
  var _b = useState(false), loading = _b[0], setLoading = _b[1];
@@ -28076,7 +28534,7 @@ var ProgrammeRevokeForm = function (props) {
28076
28534
  };
28077
28535
 
28078
28536
  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;
28537
+ 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
28538
  var t = translator.t;
28081
28539
  var _b = useState(undefined), popupError = _b[0], setPopupError = _b[1];
28082
28540
  var _c = useState(false), loading = _c[0], setLoading = _c[1];
@@ -28307,7 +28765,7 @@ var css_248z$2 = ".ndc-action-body {\n display: flex;\n flex-direction: column
28307
28765
  styleInject(css_248z$2);
28308
28766
 
28309
28767
  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;
28768
+ 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
28769
  var t = translator.t;
28312
28770
  var userInfoState = useUserContext().userInfoState;
28313
28771
  var fileInputMonitoringRef = useRef(null);
@@ -28743,7 +29201,7 @@ var css_248z$1 = ".info-view .title-icon {\n padding-right: 10px; }\n\n.info-vi
28743
29201
  styleInject(css_248z$1);
28744
29202
 
28745
29203
  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;
29204
+ 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
29205
  var t = translator.t;
28748
29206
  var userInfoState = useUserContext().userInfoState;
28749
29207
  var _a = useConnection(); _a.delete; var post = _a.post;
@@ -29238,5 +29696,5 @@ var TimelineBody = function (props) {
29238
29696
  React.createElement("div", { className: "remark-body" }, remark)))));
29239
29697
  };
29240
29698
 
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 };
29699
+ 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
29700
  //# sourceMappingURL=index.js.map