awing-library 2.1.20 → 2.1.21

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 (92) hide show
  1. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AddOrEditRule/RuleForm/RetargetMacAddress/component.js +2 -1
  2. package/lib/ACM-AXN/CampaignSchedule/Components/ControlPanel/Filter.d.ts +1 -1
  3. package/lib/ACM-AXN/CampaignSchedule/Components/ControlPanel/Filter.js +2 -2
  4. package/lib/ACM-AXN/CampaignSchedule/Components/ControlPanel/index.d.ts +1 -1
  5. package/lib/ACM-AXN/CampaignSchedule/Components/ControlPanel/index.js +2 -2
  6. package/lib/ACM-AXN/CampaignSchedule/Components/RowAdvance/component.js +6 -2
  7. package/lib/ACM-AXN/CampaignSchedule/Components/RowAdvance/container.js +42 -41
  8. package/lib/ACM-AXN/CampaignSchedule/component.js +30 -4
  9. package/lib/ACM-AXN/CampaignSchedule/container.d.ts +1 -1
  10. package/lib/ACM-AXN/CampaignSchedule/container.js +2 -2
  11. package/lib/ACM-AXN/CampaignSchedule/interface.d.ts +3 -0
  12. package/lib/ACM-AXN/GroupUser/User/UserComponent.js +1 -1
  13. package/lib/ACM-AXN/Page/CreateOrEdit/Components/useListPageView.js +9 -4
  14. package/lib/ACM-AXN/Page/CreateOrEdit/Recoil.d.ts +2 -1
  15. package/lib/ACM-AXN/Page/CreateOrEdit/Recoil.js +14 -1
  16. package/lib/ACM-AXN/Page/CreateOrEdit/TabFile/FileUtils.d.ts +3 -1
  17. package/lib/ACM-AXN/Page/CreateOrEdit/TabFile/FileUtils.js +1 -6
  18. package/lib/ACM-AXN/Page/CreateOrEdit/TabFile/index.d.ts +7 -0
  19. package/lib/ACM-AXN/Page/CreateOrEdit/TabFile/index.js +13 -15
  20. package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/ViewContent.js +23 -2
  21. package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/ViewInfo.d.ts +3 -2
  22. package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/index.test.js +2 -1
  23. package/lib/ACM-AXN/Page/CreateOrEdit/Utils.d.ts +4 -3
  24. package/lib/ACM-AXN/Page/CreateOrEdit/Utils.js +4 -2
  25. package/lib/ACM-AXN/Page/Types.d.ts +10 -37
  26. package/lib/ACM-AXN/Page/enums.d.ts +6 -0
  27. package/lib/ACM-AXN/Page/enums.js +8 -1
  28. package/lib/ACM-AXN/PlaceFilter/DataTable/container.js +1 -2
  29. package/lib/ACM-AXN/PlaceFilter/Input/container.js +12 -2
  30. package/lib/ACM-AXN/PlaceFilter/common.d.ts +1 -0
  31. package/lib/ACM-AXN/PlaceFilter/common.js +27 -1
  32. package/lib/ACM-AXN/Statistics/ControlPanel.js +4 -4
  33. package/lib/ACM-AXN/Template/Constants.d.ts +0 -0
  34. package/lib/ACM-AXN/Template/Constants.js +1 -0
  35. package/lib/ACM-AXN/Template/Container.d.ts +2 -0
  36. package/lib/ACM-AXN/Template/Container.js +74 -0
  37. package/lib/ACM-AXN/Template/Container.test.d.ts +1 -0
  38. package/lib/ACM-AXN/Template/Container.test.js +259 -0
  39. package/lib/ACM-AXN/Template/CreateOrEdit/CreateOrEdit.test.d.ts +1 -0
  40. package/lib/ACM-AXN/Template/CreateOrEdit/CreateOrEdit.test.js +370 -0
  41. package/lib/ACM-AXN/Template/CreateOrEdit/Infomation.d.ts +9 -0
  42. package/lib/ACM-AXN/Template/CreateOrEdit/Infomation.js +78 -0
  43. package/lib/ACM-AXN/Template/CreateOrEdit/Infomation.test.d.ts +1 -0
  44. package/lib/ACM-AXN/Template/CreateOrEdit/Infomation.test.js +150 -0
  45. package/lib/ACM-AXN/Template/CreateOrEdit/Recoils.d.ts +6 -0
  46. package/lib/ACM-AXN/Template/CreateOrEdit/Recoils.js +79 -0
  47. package/lib/ACM-AXN/Template/CreateOrEdit/Script.d.ts +3 -0
  48. package/lib/ACM-AXN/Template/CreateOrEdit/Script.js +58 -0
  49. package/lib/ACM-AXN/Template/CreateOrEdit/Script.test.d.ts +1 -0
  50. package/lib/ACM-AXN/Template/CreateOrEdit/Script.test.js +162 -0
  51. package/lib/ACM-AXN/Template/CreateOrEdit/Template/Events.d.ts +5 -0
  52. package/lib/ACM-AXN/Template/CreateOrEdit/Template/Events.js +41 -0
  53. package/lib/ACM-AXN/Template/CreateOrEdit/Template/Parameter.d.ts +20 -0
  54. package/lib/ACM-AXN/Template/CreateOrEdit/Template/Parameter.js +283 -0
  55. package/lib/ACM-AXN/Template/CreateOrEdit/Template/Parameter.test.d.ts +1 -0
  56. package/lib/ACM-AXN/Template/CreateOrEdit/Template/Parameter.test.js +220 -0
  57. package/lib/ACM-AXN/Template/CreateOrEdit/Template/Utils.d.ts +25 -0
  58. package/lib/ACM-AXN/Template/CreateOrEdit/Template/Utils.js +138 -0
  59. package/lib/ACM-AXN/Template/CreateOrEdit/Template/index.d.ts +3 -0
  60. package/lib/ACM-AXN/Template/CreateOrEdit/Template/index.js +46 -0
  61. package/lib/ACM-AXN/Template/CreateOrEdit/index.d.ts +3 -0
  62. package/lib/ACM-AXN/Template/CreateOrEdit/index.js +215 -0
  63. package/lib/ACM-AXN/Template/Hooks.d.ts +5 -0
  64. package/lib/ACM-AXN/Template/Hooks.js +13 -0
  65. package/lib/ACM-AXN/Template/Import.d.ts +2 -0
  66. package/lib/ACM-AXN/Template/Import.js +123 -0
  67. package/lib/ACM-AXN/Template/Import.test.d.ts +1 -0
  68. package/lib/ACM-AXN/Template/Import.test.js +188 -0
  69. package/lib/ACM-AXN/Template/Types.d.ts +84 -0
  70. package/lib/ACM-AXN/Template/Types.js +2 -0
  71. package/lib/ACM-AXN/Template/UploadButton.d.ts +2 -0
  72. package/lib/ACM-AXN/Template/UploadButton.js +14 -0
  73. package/lib/ACM-AXN/Template/index.d.ts +5 -0
  74. package/lib/ACM-AXN/Template/index.js +44 -0
  75. package/lib/ACM-AXN/TransactionLog/Container.js +1 -1
  76. package/lib/ACM-AXN/ViewTemplate/index.d.ts +2 -1
  77. package/lib/ACM-AXN/ViewTemplate/interface.d.ts +6 -1
  78. package/lib/AWING/ButtonSelect/index.js +2 -2
  79. package/lib/AWING/DateRangePicker/component.js +101 -132
  80. package/lib/AWING/DateRangePicker/configDate.d.ts +8 -0
  81. package/lib/AWING/DateRangePicker/configDate.js +71 -0
  82. package/lib/AWING/DateRangePicker/interface.d.ts +1 -0
  83. package/lib/AWING/HOC/Wrapper.d.ts +6 -0
  84. package/lib/AWING/HOC/Wrapper.js +10 -0
  85. package/lib/AWING/LogicExpression/script.js +0 -1
  86. package/lib/AWING/PageManagement/PageManagement.js +2 -2
  87. package/lib/AWING/PageManagement/interface.d.ts +1 -2
  88. package/lib/translate/en/translation.json +32 -2
  89. package/lib/translate/vi/translation.json +32 -2
  90. package/package.json +1 -1
  91. package/lib/ACM-AXN/Page/CreateOrEdit/TabFile/index.test.d.ts +0 -1
  92. package/lib/ACM-AXN/Page/CreateOrEdit/TabFile/index.test.js +0 -326
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var moment_1 = __importDefault(require("moment"));
7
+ var configInitialDate = function (t, isFutureDate) {
8
+ var today = (0, moment_1.default)();
9
+ var initDatePast = [
10
+ {
11
+ text: t('DatePicker.ToDay'),
12
+ start: today,
13
+ end: today,
14
+ },
15
+ {
16
+ text: t('DatePicker.Yesterday'),
17
+ start: (0, moment_1.default)().subtract(1, 'days'),
18
+ end: (0, moment_1.default)().subtract(1, 'days'),
19
+ },
20
+ {
21
+ text: t('DatePicker.LastSevenDay'),
22
+ start: (0, moment_1.default)().subtract(6, 'days'),
23
+ end: today,
24
+ },
25
+ {
26
+ text: t('DatePicker.LastThirtyDay'),
27
+ start: (0, moment_1.default)().subtract(29, 'days'),
28
+ end: today,
29
+ },
30
+ {
31
+ text: t('DatePicker.ThisMonth'),
32
+ start: (0, moment_1.default)().startOf('month'),
33
+ end: (0, moment_1.default)().endOf('month'),
34
+ },
35
+ {
36
+ text: t('DatePicker.LastMonth'),
37
+ start: (0, moment_1.default)().subtract(1, 'month').startOf('month'),
38
+ end: (0, moment_1.default)().subtract(1, 'month').endOf('month'),
39
+ },
40
+ ];
41
+ var initDateFuture = [
42
+ {
43
+ text: t('DatePicker.ToDay'),
44
+ start: today,
45
+ end: today,
46
+ },
47
+ {
48
+ text: t('DatePicker.Tomorrow'),
49
+ start: (0, moment_1.default)(),
50
+ end: (0, moment_1.default)().add(1, 'days'),
51
+ },
52
+ {
53
+ text: t('DatePicker.NextSevenDay'),
54
+ start: today,
55
+ end: (0, moment_1.default)().add(6, 'days'),
56
+ },
57
+ {
58
+ text: t('DatePicker.NextThirtyDay'),
59
+ start: today,
60
+ end: (0, moment_1.default)().add(29, 'days'),
61
+ },
62
+ {
63
+ text: t('DatePicker.NextMonth'),
64
+ start: (0, moment_1.default)().add(1, 'month').startOf('month'),
65
+ end: (0, moment_1.default)().add(1, 'month').endOf('month'),
66
+ },
67
+ ];
68
+ var initDate = isFutureDate ? initDateFuture : initDatePast;
69
+ return initDate;
70
+ };
71
+ exports.default = configInitialDate;
@@ -11,6 +11,7 @@ export interface DateRangePickerProps {
11
11
  }) => void;
12
12
  label?: string;
13
13
  isShowCalendarInfo?: boolean;
14
+ isFutureDate?: boolean;
14
15
  variant?: string;
15
16
  className?: any;
16
17
  value?: {
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ declare const Wrapper: <T extends React.FC<any> = () => JSX.Element, W extends React.FC<any> = () => JSX.Element>(Compoent: T, Parrent: {
3
+ component: W;
4
+ props?: React.ComponentProps<W>;
5
+ }) => React.FC<React.ComponentProps<T>>;
6
+ export default Wrapper;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var react_1 = require("react");
4
+ var Wrapper = function (Compoent, Parrent) {
5
+ var wrapped = function (props) {
6
+ return (0, react_1.createElement)(Parrent.component, Parrent.props, (0, react_1.createElement)(Compoent, props));
7
+ };
8
+ return wrapped;
9
+ };
10
+ exports.default = Wrapper;
@@ -470,7 +470,6 @@ var validateExpression = function (oc, f, functionList, expression) {
470
470
  console.log("Look bad the expression is boolean: ".concat(expression));
471
471
  return false;
472
472
  }
473
- debugger;
474
473
  var elements = expression.trim();
475
474
  var rootNode = (0, exports.getNewNode)();
476
475
  var currentNode = rootNode;
@@ -39,7 +39,7 @@ var PageManagement = function (props) {
39
39
  var t = (0, react_i18next_1.useTranslation)().t;
40
40
  // const params = useParams<"*">();
41
41
  var location = (0, react_router_dom_1.useLocation)();
42
- var title = props.title, columns = props.columns, rows = props.rows, _a = props.totalOfRows, totalOfRows = _a === void 0 ? rows.length : _a, getRowId = props.getRowId, checkboxSelection = props.checkboxSelection, onDeleteSelected = props.onDeleteSelected, advancedSearchFields = props.advancedSearchFields, onlyNumberSearch = props.onlyNumberSearch, _b = props.disableSearch, disableSearch = _b === void 0 ? false : _b, includeSearchById = props.includeSearchById, _c = props.disablePagination, disablePagination = _c === void 0 ? false : _c, onChangeQueryInput = props.onChangeQueryInput, _d = props.loading, loading = _d === void 0 ? true : _d, onCreateButtonClick = props.onCreateButtonClick, onRowClick = props.onRowClick, onCreateFolderButtonClick = props.onCreateFolderButtonClick, onDelete = props.onDelete, inputSearchPlaceholder = props.inputSearchPlaceholder, rowActions = props.rowActions, showNotificationSuccess = props.showNotificationSuccess, confirmDelete = props.confirmDelete, customActions = props.customActions, variantPaperSearch = props.variantPaperSearch, selectionActions = props.selectionActions;
42
+ var title = props.title, columns = props.columns, rows = props.rows, _a = props.totalOfRows, totalOfRows = _a === void 0 ? rows.length : _a, getRowId = props.getRowId, checkboxSelection = props.checkboxSelection, onDeleteSelected = props.onDeleteSelected, advancedSearchFields = props.advancedSearchFields, onlyNumberSearch = props.onlyNumberSearch, _b = props.disableSearch, disableSearch = _b === void 0 ? false : _b, includeSearchById = props.includeSearchById, _c = props.disablePagination, disablePagination = _c === void 0 ? false : _c, onChangeQueryInput = props.onChangeQueryInput, _d = props.loading, loading = _d === void 0 ? true : _d, onCreateButtonClick = props.onCreateButtonClick, onRowClick = props.onRowClick, onCreateFolderButtonClick = props.onCreateFolderButtonClick, onDelete = props.onDelete, inputSearchPlaceholder = props.inputSearchPlaceholder, rowActions = props.rowActions, showNotificationSuccess = props.showNotificationSuccess, confirmDelete = props.confirmDelete, customActions = props.customActions, variantPaperSearch = props.variantPaperSearch;
43
43
  var _e = (0, react_1.useState)(false), openAdvancedSearch = _e[0], setOpenAdvancedSearch = _e[1];
44
44
  var _f = (0, react_1.useState)([]), rowSelected = _f[0], setRowSelected = _f[1];
45
45
  var _g = (0, react_1.useState)({
@@ -131,7 +131,7 @@ var PageManagement = function (props) {
131
131
  } }, (checkboxSelection && {
132
132
  selected: rowSelected,
133
133
  onSelectedChange: function (ids) { return setRowSelected(ids); },
134
- selectionActions: selectionActions || [
134
+ selectionActions: [
135
135
  {
136
136
  icon: (0, jsx_runtime_1.jsx)(Delete_1.default, {}),
137
137
  tooltipTitle: t('Common.DeleteSelectedItems'),
@@ -1,4 +1,4 @@
1
- import { GridSortModel, DataObject, MenuOption, RowActionDefinition, DataGridColumnDefinition, SelectionActionDefinition } from '../DataGrid/interface';
1
+ import { GridSortModel, DataObject, MenuOption, RowActionDefinition, DataGridColumnDefinition } from '../DataGrid/interface';
2
2
  import { ReactNode } from 'react';
3
3
  import { AutocompleteRenderOptionState } from '@mui/material/Autocomplete';
4
4
  import { TextFieldProps } from '@mui/material/TextField';
@@ -94,5 +94,4 @@ export interface PageManagementProps {
94
94
  showNotificationSuccess?: () => void;
95
95
  confirmDelete?: (f: () => void) => void;
96
96
  customActions?: ReactNode;
97
- selectionActions?: SelectionActionDefinition[];
98
97
  }
@@ -112,7 +112,10 @@
112
112
  "GroupName": "Group Name",
113
113
  "InvalidChars": "Invalid characters",
114
114
  "InvalidLength": "Invalid string length",
115
- "RequestHasApprove": "Your request have approved"
115
+ "RequestHasApprove": "Your request have approved",
116
+ "Advance": "Advance",
117
+ "Default": "Default",
118
+ "Events": "Events"
116
119
  },
117
120
  "User": {
118
121
  "Username": "Username",
@@ -132,6 +135,29 @@
132
135
  "All": "All",
133
136
  "TotalSelected": "Total selected"
134
137
  },
138
+ "TemplateManagement": {
139
+ "Create": "Create template",
140
+ "Edit": "Edit template",
141
+ "title": "Template Management",
142
+ "TemplateName": "Template name",
143
+ "Page_lgn": "Page Login",
144
+ "Page_wlc": "Page Welcome",
145
+ "TemplateId": "Template ID",
146
+ "ImportTemplate": "Import template",
147
+ "Information": "Information",
148
+ "Template": "Template",
149
+ "Advance": "Advance",
150
+ "Script": "Script",
151
+ "TemplateHtml": "Html",
152
+ "TemplateValidation": "Validation",
153
+ "FieldAutoUpdate": "Field Auto Update",
154
+ "Parameter": "Parameter",
155
+ "FieldName": "Name",
156
+ "fieldType": "Type",
157
+ "NamingFieldNotice": "Do not use period characters (\". \") when naming fields",
158
+ "DuplicateFieldName": "Field name duplicated. Please check again",
159
+ "isDeprecate": "Unsupport"
160
+ },
135
161
  "InvalidMessage": {
136
162
  "InvalidNotExistedUsername": "Username is invalid or not existed",
137
163
  "InvalidAccountConnected": "Account has been added to this domain!"
@@ -167,7 +193,11 @@
167
193
  "LastSevenDay": "Last 7 days",
168
194
  "LastThirtyDay": "Last 30 days",
169
195
  "ThisMonth": "This month",
170
- "LastMonth": "Last month"
196
+ "LastMonth": "Last month",
197
+ "Tomorrow": "Tomorrow",
198
+ "NextSevenDay": "Next 7 days",
199
+ "NextThirtyDay": "Next 30 days",
200
+ "NextMonth": "Next month"
171
201
  },
172
202
  "Notifications": {
173
203
  "SelectAll": "Mark all as read",
@@ -117,7 +117,10 @@
117
117
  "Copied": "Đã sao chép",
118
118
  "InvalidChars": "Ký tự không hợp lệ",
119
119
  "InvalidLength": "Độ dài chuỗi không hợp lệ",
120
- "RequestHasApprove": "Yêu cầu đã được thay đổi"
120
+ "RequestHasApprove": "Yêu cầu đã được thay đổi",
121
+ "Advance": "Nâng cao",
122
+ "Default": "Mặc định",
123
+ "Events": "Sự kiện"
121
124
  },
122
125
  "InvalidMessage": {
123
126
  "InvalidNotExistedUsername": "Tài khoản không tồn tại",
@@ -172,7 +175,11 @@
172
175
  "LastSevenDay": "7 ngày qua",
173
176
  "LastThirtyDay": "30 ngày qua",
174
177
  "ThisMonth": "Tháng này",
175
- "LastMonth": "Tháng trước"
178
+ "LastMonth": "Tháng trước",
179
+ "Tomorrow": "Ngày mai",
180
+ "NextSevenDay": "7 Ngày tới",
181
+ "NextThirtyDay": "30 Ngày tới",
182
+ "NextMonth": "Tháng tới"
176
183
  },
177
184
  "Notifications": {
178
185
  "SelectAll": "Đánh dấu tất cả là đã đọc",
@@ -458,6 +465,29 @@
458
465
  "CantBeDelete": "Không thể xoá chiến dịch này",
459
466
  "Attributes": "Thuộc tính"
460
467
  },
468
+ "TemplateManagement": {
469
+ "Create": "Tạo mới template",
470
+ "Edit": "Sửa template",
471
+ "title": "Quản trị template",
472
+ "TemplateName": "Tên Template",
473
+ "Page_lgn": "Trang Login",
474
+ "Page_wlc": "Trang Welcome",
475
+ "TemplateId": "Template ID",
476
+ "ImportTemplate": "Nhập Template",
477
+ "Information": "Thông tin",
478
+ "Template": "Template",
479
+ "Advance": "Nâng cao",
480
+ "Script": "Kịch bản",
481
+ "TemplateHtml": "Html",
482
+ "TemplateValidation": "Validation",
483
+ "FieldAutoUpdate": "Trường tự động cập nhật",
484
+ "Parameter": "Parameter",
485
+ "FieldName": "Tên",
486
+ "fieldType": "Kiểu",
487
+ "NamingFieldNotice": "Không sử dụng ký tự dấu chấm (\".\") khi đặt tên cho trường",
488
+ "DuplicateFieldName": "Tên trường trùng lặp. Vui lòng kiểm tra lại",
489
+ "isDeprecate": "Không hỗ trợ"
490
+ },
461
491
  "DirectoryManagement": {
462
492
  "DirectoryName": "Tên thư mục",
463
493
  "CreateNewFolder": "Điền tên thư mục để tạo.",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "awing-library",
3
- "version": "2.1.20",
3
+ "version": "2.1.21",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
@@ -1 +0,0 @@
1
- import '@testing-library/jest-dom';
@@ -1,326 +0,0 @@
1
- "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
- return new (P || (P = Promise))(function (resolve, reject) {
16
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
- step((generator = generator.apply(thisArg, _arguments || [])).next());
20
- });
21
- };
22
- var __generator = (this && this.__generator) || function (thisArg, body) {
23
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
- function verb(n) { return function (v) { return step([n, v]); }; }
26
- function step(op) {
27
- if (f) throw new TypeError("Generator is already executing.");
28
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
- if (y = 0, t) op = [op[0] & 2, t.value];
31
- switch (op[0]) {
32
- case 0: case 1: t = op; break;
33
- case 4: _.label++; return { value: op[1], done: false };
34
- case 5: _.label++; y = op[1]; op = [0]; continue;
35
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
- default:
37
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
- if (t[2]) _.ops.pop();
42
- _.trys.pop(); continue;
43
- }
44
- op = body.call(thisArg, _);
45
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
- }
48
- };
49
- var __importDefault = (this && this.__importDefault) || function (mod) {
50
- return (mod && mod.__esModule) ? mod : { "default": mod };
51
- };
52
- Object.defineProperty(exports, "__esModule", { value: true });
53
- var jsx_runtime_1 = require("react/jsx-runtime");
54
- /* eslint-disable testing-library/no-wait-for-side-effects */
55
- /* eslint-disable testing-library/no-wait-for-multiple-assertions */
56
- /* eslint-disable testing-library/no-unnecessary-act */
57
- /* eslint-disable testing-library/no-node-access */
58
- /* eslint-disable testing-library/no-container */
59
- /* eslint-disable testing-library/no-wait-for-side-effects */
60
- var react_1 = require("@testing-library/react");
61
- var user_event_1 = __importDefault(require("@testing-library/user-event"));
62
- var _1 = __importDefault(require("."));
63
- var recoil_1 = require("recoil");
64
- require("@testing-library/jest-dom");
65
- // Mock Axios client
66
- var directory = {
67
- folderChildrens: [
68
- {
69
- folderChildrens: [
70
- {
71
- folderChildrens: [],
72
- fileChildrens: [],
73
- name: 'hu',
74
- path: '/chào bạn/hu',
75
- },
76
- ],
77
- fileChildrens: [
78
- {
79
- name: 'CompressJPEG.online_512x512_image.jpg',
80
- path: '/chào bạn/CompressJPEG.online_512x512_image.jpg',
81
- },
82
- ],
83
- name: 'chào bạn',
84
- path: '/chào bạn',
85
- },
86
- {
87
- folderChildrens: [],
88
- fileChildrens: [],
89
- name: 'ahihi',
90
- path: '/ahihi',
91
- },
92
- ],
93
- fileChildrens: [],
94
- name: '4671435926616395650',
95
- path: '',
96
- };
97
- var clientMethod = {
98
- pageFilesCreateFolderPUT: function () {
99
- var params = [];
100
- for (var _i = 0; _i < arguments.length; _i++) {
101
- params[_i] = arguments[_i];
102
- }
103
- return Promise.resolve();
104
- },
105
- pageFilesDelete2: function () {
106
- var params = [];
107
- for (var _i = 0; _i < arguments.length; _i++) {
108
- params[_i] = arguments[_i];
109
- }
110
- return Promise.resolve();
111
- },
112
- pageFilesUploadPUT: function () {
113
- var params = [];
114
- for (var _i = 0; _i < arguments.length; _i++) {
115
- params[_i] = arguments[_i];
116
- }
117
- return Promise.resolve();
118
- },
119
- pageFilesDownload2: function () {
120
- var params = [];
121
- for (var _i = 0; _i < arguments.length; _i++) {
122
- params[_i] = arguments[_i];
123
- }
124
- return Promise.resolve();
125
- },
126
- pageFilesDownloadFolder2: function () {
127
- var params = [];
128
- for (var _i = 0; _i < arguments.length; _i++) {
129
- params[_i] = arguments[_i];
130
- }
131
- return Promise.resolve();
132
- },
133
- pageFilesCreateGetTreeFolder: function () {
134
- var params = [];
135
- for (var _i = 0; _i < arguments.length; _i++) {
136
- params[_i] = arguments[_i];
137
- }
138
- return Promise.resolve(directory);
139
- },
140
- pageFilesUpdateGetTreeFolder: function () {
141
- var params = [];
142
- for (var _i = 0; _i < arguments.length; _i++) {
143
- params[_i] = arguments[_i];
144
- }
145
- return Promise.resolve(directory);
146
- },
147
- };
148
- jest.mock('../../Context', function () { return ({
149
- __esModule: true,
150
- default: function () { return ({
151
- service: {
152
- pageFilesCreateGetTreeFolder: jest.fn(clientMethod.pageFilesCreateGetTreeFolder),
153
- pageFilesUpdateGetTreeFolder: jest.fn(clientMethod.pageFilesUpdateGetTreeFolder),
154
- },
155
- pageCode: 1,
156
- domainId: 'dat0910jqka',
157
- configs: {
158
- CAPTIVE_DOMAIN: 'CAPTIVE_DOMAIN',
159
- PAGE_LOGIN_PREVIEW: 'PAGE_LOGIN_PREVIEW',
160
- },
161
- }); },
162
- }); });
163
- var mockFn = {
164
- confirm: function (ok) {
165
- ok();
166
- },
167
- };
168
- jest.mock('../../../../Context', function () { return ({
169
- __esModule: true,
170
- useAwing: function () { return ({
171
- appHelper: {
172
- confirm: jest.fn(function (ok) { return mockFn.confirm(ok); }),
173
- snackbar: jest.fn(function (str) { }),
174
- },
175
- }); },
176
- }); });
177
- jest.mock('./FileUtils', function () { return ({
178
- __esModule: true,
179
- useFileUtils: function () {
180
- var params = [];
181
- for (var _i = 0; _i < arguments.length; _i++) {
182
- params[_i] = arguments[_i];
183
- }
184
- return ({
185
- createFolder: jest.fn(function () {
186
- var params = [];
187
- for (var _i = 0; _i < arguments.length; _i++) {
188
- params[_i] = arguments[_i];
189
- }
190
- return Promise.resolve(clientMethod.pageFilesCreateFolderPUT.apply(clientMethod, params));
191
- }),
192
- delete: jest.fn(function () {
193
- var params = [];
194
- for (var _i = 0; _i < arguments.length; _i++) {
195
- params[_i] = arguments[_i];
196
- }
197
- return Promise.resolve(clientMethod.pageFilesDelete2.apply(clientMethod, params));
198
- }),
199
- upload: jest.fn(function () {
200
- var params = [];
201
- for (var _i = 0; _i < arguments.length; _i++) {
202
- params[_i] = arguments[_i];
203
- }
204
- return Promise.resolve(clientMethod.pageFilesUploadPUT.apply(clientMethod, params));
205
- }),
206
- downloadFolder: jest.fn(function () {
207
- var params = [];
208
- for (var _i = 0; _i < arguments.length; _i++) {
209
- params[_i] = arguments[_i];
210
- }
211
- return Promise.resolve(clientMethod.pageFilesDownloadFolder2.apply(clientMethod, params));
212
- }),
213
- downloadFile: jest.fn(function () {
214
- var params = [];
215
- for (var _i = 0; _i < arguments.length; _i++) {
216
- params[_i] = arguments[_i];
217
- }
218
- return Promise.resolve(clientMethod.pageFilesDownload2.apply(clientMethod, params));
219
- }),
220
- });
221
- },
222
- }); });
223
- // Mock i18next
224
- jest.mock('react-i18next', function () { return (__assign(__assign({}, jest.requireActual('react-i18next')), { useTranslation: function () { return ({ t: jest.fn(function (key) { return key; }) }); } })); });
225
- // Mock DataForm
226
- jest.mock('../../../../Commons/Components/DeprecatedEnhancedDialog', function () { return function (props) {
227
- return ((0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)("button", { "data-testid": "creatDirectoryCallBack", onClick: function () {
228
- props.onSubmit('DirectoryName');
229
- } }) }));
230
- }; });
231
- jest.mock('../../../../Commons/Components/FolderTreeView', function () { return function (props) {
232
- return ((0, jsx_runtime_1.jsx)("div", { children: Object.entries(props).map(function (_a) {
233
- var key = _a[0], val = _a[1];
234
- return key === 'rootItem' ? ((0, jsx_runtime_1.jsx)("p", { children: JSON.stringify(props.rootItem) }, key)) : ((0, jsx_runtime_1.jsx)("button", { "data-testid": key, onClick: function () {
235
- val(key + 'path');
236
- } }, key));
237
- }) }));
238
- }; });
239
- var renderUi = function (isCreat) {
240
- if (isCreat === void 0) { isCreat = false; }
241
- return (0, react_1.render)((0, jsx_runtime_1.jsx)(recoil_1.RecoilRoot, { children: (0, jsx_runtime_1.jsx)(_1.default, { isCreate: isCreat }) }));
242
- };
243
- describe('Tab File component', function () {
244
- it('render without crash', function () {
245
- renderUi();
246
- });
247
- it('trigger Download', function () { return __awaiter(void 0, void 0, void 0, function () {
248
- var pageFilesDownload2Spy, pageFilesDownloadFolder2Spy;
249
- return __generator(this, function (_a) {
250
- switch (_a.label) {
251
- case 0:
252
- pageFilesDownload2Spy = jest.spyOn(clientMethod, 'pageFilesDownload2');
253
- pageFilesDownloadFolder2Spy = jest.spyOn(clientMethod, 'pageFilesDownloadFolder2');
254
- renderUi();
255
- return [4 /*yield*/, (0, react_1.waitFor)(function () {
256
- react_1.fireEvent.click(react_1.screen.getByTestId('onDownload'));
257
- expect(pageFilesDownload2Spy).toHaveBeenCalledWith('onDownloadpath');
258
- react_1.fireEvent.click(react_1.screen.getByTestId('onDownloadFolder'));
259
- expect(pageFilesDownloadFolder2Spy).toHaveBeenCalledWith('onDownloadFolderpath');
260
- })];
261
- case 1:
262
- _a.sent();
263
- return [2 /*return*/];
264
- }
265
- });
266
- }); });
267
- it('trigger Delete', function () { return __awaiter(void 0, void 0, void 0, function () {
268
- var pageFilesDelete2Spy;
269
- return __generator(this, function (_a) {
270
- switch (_a.label) {
271
- case 0:
272
- pageFilesDelete2Spy = jest.spyOn(clientMethod, 'pageFilesDelete2');
273
- renderUi();
274
- return [4 /*yield*/, (0, react_1.waitFor)(function () {
275
- react_1.fireEvent.click(react_1.screen.getByTestId('onDelete'));
276
- expect(pageFilesDelete2Spy).toHaveBeenCalledWith('onDeletepath');
277
- })];
278
- case 1:
279
- _a.sent();
280
- return [2 /*return*/];
281
- }
282
- });
283
- }); });
284
- it('trigger creatDirectoryCallBack', function () { return __awaiter(void 0, void 0, void 0, function () {
285
- var pageFilesCreateFolderPUTSpy;
286
- return __generator(this, function (_a) {
287
- switch (_a.label) {
288
- case 0:
289
- pageFilesCreateFolderPUTSpy = jest.spyOn(clientMethod, 'pageFilesCreateFolderPUT');
290
- renderUi(true);
291
- return [4 /*yield*/, (0, react_1.waitFor)(function () {
292
- react_1.fireEvent.click(react_1.screen.getByTestId('onCreateDirectory'));
293
- react_1.fireEvent.click(react_1.screen.getByTestId('creatDirectoryCallBack'));
294
- expect(pageFilesCreateFolderPUTSpy).toHaveBeenCalledWith('onCreateDirectorypath', 'DirectoryName');
295
- })];
296
- case 1:
297
- _a.sent();
298
- return [2 /*return*/];
299
- }
300
- });
301
- }); });
302
- it('trigger upload file', function () { return __awaiter(void 0, void 0, void 0, function () {
303
- var pageFilesUploadPUTSpy, file, container, input;
304
- return __generator(this, function (_a) {
305
- switch (_a.label) {
306
- case 0:
307
- pageFilesUploadPUTSpy = jest.spyOn(clientMethod, 'pageFilesUploadPUT');
308
- file = new File(['abc'], 'test.zip', {
309
- type: 'application/x-zip-compressed',
310
- });
311
- container = renderUi().container;
312
- input = container.querySelector("input#upload-files");
313
- return [4 /*yield*/, (0, react_1.waitFor)(function () {
314
- // Case này fail do không thể mock usref cùng với recoil
315
- react_1.fireEvent.click(react_1.screen.getByTestId('onUploadFiles'));
316
- react_1.fireEvent.change(input, { target: { files: undefined } });
317
- user_event_1.default.upload(input, file);
318
- expect(pageFilesUploadPUTSpy).toBeCalled();
319
- })];
320
- case 1:
321
- _a.sent();
322
- return [2 /*return*/];
323
- }
324
- });
325
- }); });
326
- });