@undp/carbon-library 1.0.152 → 1.0.155
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.js +103 -114
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/Components/Common/AntComponents/antTableComponents.d.ts +13 -14
- package/dist/esm/index.js +105 -116
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/Components/Common/AntComponents/antTableComponents.d.ts +13 -14
- package/package.json +1 -1
@@ -1,21 +1,20 @@
|
|
1
1
|
import React from "react";
|
2
|
-
|
2
|
+
type NdcDetail = {
|
3
3
|
key: string;
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
4
|
+
startDate: Date;
|
5
|
+
endDate: Date;
|
6
|
+
nationalPlanObj: string;
|
7
|
+
kpi: number;
|
8
|
+
subNdcDetails?: [];
|
9
|
+
};
|
10
|
+
interface EditableCellProps extends React.HTMLAttributes<HTMLElement> {
|
11
|
+
editing: boolean;
|
12
|
+
dataIndex: string;
|
13
|
+
title: any;
|
14
|
+
inputType: "number" | "text";
|
15
|
+
record: NdcDetail;
|
9
16
|
index: number;
|
10
|
-
}
|
11
|
-
export declare const EditableRow: React.FC<EditableRowProps>;
|
12
|
-
interface EditableCellProps {
|
13
|
-
title: React.ReactNode;
|
14
|
-
editable: boolean;
|
15
17
|
children: React.ReactNode;
|
16
|
-
dataIndex: keyof Item;
|
17
|
-
record: Item;
|
18
|
-
handleSave: (record: Item) => void;
|
19
18
|
}
|
20
19
|
export declare const EditableCell: React.FC<EditableCellProps>;
|
21
20
|
export {};
|
package/dist/esm/index.js
CHANGED
@@ -1,6 +1,6 @@
|
|
1
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
|
-
import { Input, Radio, Space, Row, Col, Button, Dropdown, Table, Empty, message, Form, Steps, Upload, Tooltip, Select, Modal, Alert, Skeleton, Card, Tag, Checkbox, DatePicker, InputNumber, Popover, List, Typography, Spin, Tabs, Progress } from 'antd';
|
3
|
-
import React, { useState, useEffect, useRef
|
2
|
+
import { Input, Radio, Space, Row, Col, Button, Dropdown, Table, Empty, message, Form, Steps, Upload, Tooltip, Select, Modal, Alert, Skeleton, Card, Tag, Checkbox, DatePicker, InputNumber, Popover, List, Typography, Spin, Tabs, Progress, Popconfirm } from 'antd';
|
3
|
+
import React, { useState, useEffect, useRef } from 'react';
|
4
4
|
import { DateTime } from 'luxon';
|
5
5
|
import { Buffer } from 'buffer';
|
6
6
|
import PhoneInput, { formatPhoneNumberIntl, formatPhoneNumber } from 'react-phone-number-input';
|
@@ -24435,60 +24435,16 @@ var RegistryDashboardComponent = function (props) {
|
|
24435
24435
|
lastUpdateTransferLocations))))))))) : ("")));
|
24436
24436
|
};
|
24437
24437
|
|
24438
|
-
|
24439
|
-
var EditableRow = function (_a) {
|
24440
|
-
_a.index; var props = __rest(_a, ["index"]);
|
24441
|
-
var form = Form.useForm()[0];
|
24442
|
-
return (React.createElement(Form, { form: form, component: false },
|
24443
|
-
React.createElement(EditableContext.Provider, { value: form },
|
24444
|
-
React.createElement("tr", __assign({}, props)))));
|
24445
|
-
};
|
24438
|
+
React.createContext(null);
|
24446
24439
|
var EditableCell = function (_a) {
|
24447
|
-
var
|
24448
|
-
var
|
24449
|
-
|
24450
|
-
|
24451
|
-
|
24452
|
-
|
24453
|
-
|
24454
|
-
}
|
24455
|
-
}, [editing]);
|
24456
|
-
var toggleEdit = function () {
|
24457
|
-
var _a;
|
24458
|
-
setEditing(!editing);
|
24459
|
-
form.setFieldsValue((_a = {}, _a[dataIndex] = record[dataIndex], _a));
|
24460
|
-
};
|
24461
|
-
var save = function () { return __awaiter(void 0, void 0, void 0, function () {
|
24462
|
-
var values, errInfo_1;
|
24463
|
-
return __generator(this, function (_a) {
|
24464
|
-
switch (_a.label) {
|
24465
|
-
case 0:
|
24466
|
-
_a.trys.push([0, 2, , 3]);
|
24467
|
-
return [4 /*yield*/, form.validateFields()];
|
24468
|
-
case 1:
|
24469
|
-
values = _a.sent();
|
24470
|
-
toggleEdit();
|
24471
|
-
handleSave(__assign(__assign({}, record), values));
|
24472
|
-
return [3 /*break*/, 3];
|
24473
|
-
case 2:
|
24474
|
-
errInfo_1 = _a.sent();
|
24475
|
-
console.log("Save failed:", errInfo_1);
|
24476
|
-
return [3 /*break*/, 3];
|
24477
|
-
case 3: return [2 /*return*/];
|
24478
|
-
}
|
24479
|
-
});
|
24480
|
-
}); };
|
24481
|
-
var childNode = children;
|
24482
|
-
if (editable) {
|
24483
|
-
childNode = editing ? (React.createElement(Form.Item, { style: { margin: 0 }, name: dataIndex, rules: [
|
24484
|
-
{
|
24485
|
-
required: true,
|
24486
|
-
message: "".concat(title, " is required."),
|
24487
|
-
},
|
24488
|
-
] },
|
24489
|
-
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));
|
24490
|
-
}
|
24491
|
-
return React.createElement("td", __assign({}, restProps), childNode);
|
24440
|
+
var editing = _a.editing, dataIndex = _a.dataIndex, title = _a.title, inputType = _a.inputType; _a.record; _a.index; var children = _a.children, restProps = __rest(_a, ["editing", "dataIndex", "title", "inputType", "record", "index", "children"]);
|
24441
|
+
var inputNode = inputType === "number" ? React.createElement(InputNumber, null) : React.createElement(Input, null);
|
24442
|
+
return (React.createElement("td", __assign({}, restProps), editing ? (React.createElement(Form.Item, { name: dataIndex, style: { margin: 0 }, rules: [
|
24443
|
+
{
|
24444
|
+
required: true,
|
24445
|
+
message: "Please Input ".concat(title, "!"),
|
24446
|
+
},
|
24447
|
+
] }, inputNode)) : (children)));
|
24492
24448
|
};
|
24493
24449
|
|
24494
24450
|
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";
|
@@ -24511,7 +24467,17 @@ var NdcDetailsComponent = function (props) {
|
|
24511
24467
|
var addedNdcDetailId = useRef(0);
|
24512
24468
|
var selectedNdcDetail = useRef({});
|
24513
24469
|
var _e = useState(0), tableKey = _e[0], setTableKey = _e[1];
|
24470
|
+
var form = Form.useForm()[0];
|
24471
|
+
var _f = useState(""), editingKey = _f[0], setEditingKey = _f[1];
|
24514
24472
|
var userInfoState = useUserContext().userInfoState;
|
24473
|
+
var isEditing = function (record) { return record.key === editingKey; };
|
24474
|
+
var onEditRow = function (record) {
|
24475
|
+
form.setFieldsValue(__assign({ nationalPlanObj: "", kpi: "", ministry: "" }, record));
|
24476
|
+
setEditingKey(record.key);
|
24477
|
+
};
|
24478
|
+
var onEditCancel = function () {
|
24479
|
+
setEditingKey("");
|
24480
|
+
};
|
24515
24481
|
var isAddRangeVisible = function () {
|
24516
24482
|
return (((userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.MINISTRY ||
|
24517
24483
|
(userInfoState === null || userInfoState === void 0 ? void 0 : userInfoState.companyRole) === CompanyRole.GOVERNMENT) &&
|
@@ -24524,37 +24490,63 @@ var NdcDetailsComponent = function (props) {
|
|
24524
24490
|
var inRange = function (num, min, max) {
|
24525
24491
|
return num >= min && num <= max;
|
24526
24492
|
};
|
24527
|
-
var
|
24528
|
-
|
24529
|
-
|
24530
|
-
|
24531
|
-
|
24532
|
-
|
24533
|
-
|
24534
|
-
|
24535
|
-
|
24536
|
-
|
24537
|
-
|
24538
|
-
|
24539
|
-
|
24540
|
-
|
24541
|
-
|
24542
|
-
|
24543
|
-
|
24493
|
+
var onHandleSave = function (record) { return __awaiter(void 0, void 0, void 0, function () {
|
24494
|
+
var updatedNdcDetails, editedData, index, parentIndex, parentItem, itemIndex, errInfo_1;
|
24495
|
+
return __generator(this, function (_a) {
|
24496
|
+
switch (_a.label) {
|
24497
|
+
case 0:
|
24498
|
+
_a.trys.push([0, 2, , 3]);
|
24499
|
+
updatedNdcDetails = __spreadArray([], ndcDetailsData, true);
|
24500
|
+
return [4 /*yield*/, form.validateFields()];
|
24501
|
+
case 1:
|
24502
|
+
editedData = (_a.sent());
|
24503
|
+
if (record) {
|
24504
|
+
if (record.type === NdcActionType.main) {
|
24505
|
+
index = updatedNdcDetails.findIndex(function (item) { return record.key === item.key; });
|
24506
|
+
updatedNdcDetails.splice(index, 1, __assign(__assign({}, record), editedData));
|
24507
|
+
setNdcDetailsData(updatedNdcDetails);
|
24508
|
+
}
|
24509
|
+
else {
|
24510
|
+
parentIndex = updatedNdcDetails.findIndex(function (item) { return record.ndcActionId === item.key; });
|
24511
|
+
parentItem = updatedNdcDetails[parentIndex];
|
24512
|
+
if (parentItem) {
|
24513
|
+
if (parentItem.subNdcDetails) {
|
24514
|
+
itemIndex = parentItem.subNdcDetails.findIndex(function (item) { return record.key === item.key; });
|
24515
|
+
if (itemIndex !== -1) {
|
24516
|
+
parentItem.subNdcDetails.splice(itemIndex, 1, __assign(__assign({}, record), editedData));
|
24517
|
+
}
|
24518
|
+
if (itemIndex + 1 === parentItem.subNdcDetails.length) {
|
24519
|
+
parentItem.subNdcDetails.push({
|
24520
|
+
key: ++addedNdcDetailId.current,
|
24521
|
+
ndcActionId: parentItem.key,
|
24522
|
+
type: NdcActionType.sub,
|
24523
|
+
startDate: new Date("2019-03-25"),
|
24524
|
+
endDate: new Date("2020-03-25"),
|
24525
|
+
nationalPlanObj: "",
|
24526
|
+
kpi: "",
|
24527
|
+
ministry: "",
|
24528
|
+
});
|
24529
|
+
}
|
24530
|
+
}
|
24531
|
+
updatedNdcDetails.splice(parentIndex, 1, __assign({}, parentItem));
|
24532
|
+
setNdcDetailsData(updatedNdcDetails);
|
24533
|
+
}
|
24534
|
+
}
|
24535
|
+
setEditingKey("");
|
24536
|
+
setTableKey(function (key) { return key + 1; });
|
24544
24537
|
}
|
24545
24538
|
else {
|
24546
|
-
|
24539
|
+
throw new Error("Save failed");
|
24547
24540
|
}
|
24548
|
-
|
24549
|
-
|
24550
|
-
|
24551
|
-
|
24541
|
+
return [3 /*break*/, 3];
|
24542
|
+
case 2:
|
24543
|
+
errInfo_1 = _a.sent();
|
24544
|
+
console.log("Validate Failed:", errInfo_1);
|
24545
|
+
return [3 /*break*/, 3];
|
24546
|
+
case 3: return [2 /*return*/];
|
24552
24547
|
}
|
24553
|
-
|
24554
|
-
|
24555
|
-
setTableKey(function (key) { return key + 1; });
|
24556
|
-
}
|
24557
|
-
};
|
24548
|
+
});
|
24549
|
+
}); };
|
24558
24550
|
var getNdcDetailsForPeriod = function () {
|
24559
24551
|
var range = selectedTab.split("-");
|
24560
24552
|
if (range.length > 1) {
|
@@ -24584,6 +24576,8 @@ var NdcDetailsComponent = function (props) {
|
|
24584
24576
|
align: "left",
|
24585
24577
|
editable: true,
|
24586
24578
|
width: 800,
|
24579
|
+
render: function (_, record) { return (React.createElement(React.Fragment, null, record.nationalPlanObj ? (React.createElement(Space, { size: "middle" },
|
24580
|
+
React.createElement("span", null, record.nationalPlanObj))) : (React.createElement("input", { className: "ant-input", disabled: true, type: "text" })))); },
|
24587
24581
|
},
|
24588
24582
|
{
|
24589
24583
|
title: t("ndc:ndcColumnsKpi"),
|
@@ -24592,6 +24586,8 @@ var NdcDetailsComponent = function (props) {
|
|
24592
24586
|
align: "left",
|
24593
24587
|
editable: true,
|
24594
24588
|
width: 100,
|
24589
|
+
render: function (_, record) { return (React.createElement(React.Fragment, null, record.nationalPlanObj ? (React.createElement(Space, { size: "middle" },
|
24590
|
+
React.createElement("span", null, record.kpi))) : (React.createElement("input", { className: "ant-input", disabled: true, type: "text" })))); },
|
24595
24591
|
},
|
24596
24592
|
{
|
24597
24593
|
title: "Ministry",
|
@@ -24599,6 +24595,19 @@ var NdcDetailsComponent = function (props) {
|
|
24599
24595
|
key: "ministry",
|
24600
24596
|
align: "left",
|
24601
24597
|
editable: true,
|
24598
|
+
render: function (_, record) { return (React.createElement(React.Fragment, null, record.nationalPlanObj ? (React.createElement(Space, { size: "middle" },
|
24599
|
+
React.createElement("span", null, record.ministry))) : (React.createElement("input", { className: "ant-input", disabled: true, type: "text" })))); },
|
24600
|
+
},
|
24601
|
+
{
|
24602
|
+
title: "operation",
|
24603
|
+
dataIndex: "operation",
|
24604
|
+
render: function (_, record) {
|
24605
|
+
var editable = isEditing(record);
|
24606
|
+
return editable ? (React.createElement("span", null,
|
24607
|
+
React.createElement(Typography.Link, { onClick: function () { return onHandleSave(record); }, style: { marginRight: 8 } }, "Save"),
|
24608
|
+
React.createElement(Popconfirm, { title: "Sure to cancel?", onConfirm: onEditCancel },
|
24609
|
+
React.createElement("a", null, "Cancel")))) : (React.createElement(Typography.Link, { disabled: editingKey !== "", onClick: function () { return onEditRow(record); } }, "Edit"));
|
24610
|
+
},
|
24602
24611
|
},
|
24603
24612
|
];
|
24604
24613
|
var columns = defaultColumns.map(function (col) {
|
@@ -24610,7 +24619,7 @@ var NdcDetailsComponent = function (props) {
|
|
24610
24619
|
editable: col.editable,
|
24611
24620
|
dataIndex: col.dataIndex,
|
24612
24621
|
title: col.title,
|
24613
|
-
|
24622
|
+
editing: isEditing(record),
|
24614
24623
|
}); } });
|
24615
24624
|
});
|
24616
24625
|
function onAddNewNdcDetail() {
|
@@ -24641,32 +24650,11 @@ var NdcDetailsComponent = function (props) {
|
|
24641
24650
|
}
|
24642
24651
|
var components = {
|
24643
24652
|
body: {
|
24644
|
-
row: EditableRow,
|
24645
24653
|
cell: EditableCell,
|
24646
24654
|
},
|
24647
24655
|
};
|
24648
|
-
//commented because rendering issue
|
24649
24656
|
function ndcDetailsTableContent() {
|
24650
|
-
return
|
24651
|
-
// <div>
|
24652
|
-
// <Button
|
24653
|
-
// onClick={onAddNewNdcDetail}
|
24654
|
-
// type="primary"
|
24655
|
-
// style={{
|
24656
|
-
// marginBottom: 16,
|
24657
|
-
// }}
|
24658
|
-
// >
|
24659
|
-
// Add a row
|
24660
|
-
// </Button>
|
24661
|
-
// <Table
|
24662
|
-
// components={components}
|
24663
|
-
// rowClassName={() => 'editable-row'}
|
24664
|
-
// bordered
|
24665
|
-
// dataSource={ndcDetailsData}
|
24666
|
-
// columns={columns}
|
24667
|
-
// />
|
24668
|
-
// </div>
|
24669
|
-
);
|
24657
|
+
return React.createElement("div", null);
|
24670
24658
|
}
|
24671
24659
|
var onCancelPeriod = function () { };
|
24672
24660
|
var onAddNewPeriod = function () {
|
@@ -24924,17 +24912,18 @@ var NdcDetailsComponent = function (props) {
|
|
24924
24912
|
React.createElement(Tabs, { centered: false, defaultActiveKey: "1", items: periodItems, activeKey: selectedTab, onChange: onTabChange })),
|
24925
24913
|
selectedTab !== "add_new" && (React.createElement("div", null,
|
24926
24914
|
React.createElement("div", null,
|
24927
|
-
React.createElement(
|
24928
|
-
|
24929
|
-
|
24930
|
-
|
24931
|
-
|
24932
|
-
|
24933
|
-
React.createElement(
|
24934
|
-
|
24935
|
-
|
24936
|
-
|
24937
|
-
|
24915
|
+
React.createElement(Form, { form: form, component: false },
|
24916
|
+
React.createElement(Table, { key: tableKey, components: components, rowClassName: function () { return "editable-row"; }, bordered: true, dataSource: getNdcDetailsForPeriod(), columns: columns, expandable: {
|
24917
|
+
expandedRowRender: function (record) { return getSubNdcActionContent(record); },
|
24918
|
+
indentSize: 0,
|
24919
|
+
defaultExpandedRowKeys: [selectedNdcDetail.current.key],
|
24920
|
+
}, footer: function () {
|
24921
|
+
return isAddNdcActionVisible() && (React.createElement(Row, { justify: "center" },
|
24922
|
+
React.createElement(Button, { onClick: onAddNewNdcDetail, type: "default", style: {
|
24923
|
+
marginBottom: 16,
|
24924
|
+
width: "100%",
|
24925
|
+
} }, t("ndc:addNdcAction"))));
|
24926
|
+
} })))))));
|
24938
24927
|
};
|
24939
24928
|
|
24940
24929
|
var ImgWithFallback = function (_a) {
|