awing-library 2.1.149-beta → 2.1.149
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/lib/ACM-AXN/AuthenticationProfile/Container.js +4 -4
- package/lib/ACM-AXN/AuthenticationProfile/CreateOrEdit/index.js +2 -2
- package/lib/ACM-AXN/Campaign/Container.js +52 -54
- package/lib/ACM-AXN/Campaign/Container.test.js +1 -3
- package/lib/ACM-AXN/Campaign/CreateOrEdit/Recoils.d.ts +8 -1
- package/lib/ACM-AXN/Campaign/CreateOrEdit/Recoils.js +27 -3
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RowTable.d.ts +17 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RowTable.js +121 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RowTable.test.d.ts +1 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RowTable.test.js +219 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RunInBackground.d.ts +2 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RunInBackground.js +306 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RunInBackground.test.d.ts +1 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RunInBackground.test.js +230 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/index.d.ts +1 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/index.js +123 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/index.test.d.ts +1 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/index.test.js +253 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabInfomation.js +21 -5
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabPartner.d.ts +1 -1
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabPartner.js +47 -78
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/ChartWithType.d.ts +2 -1
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/ChartWithType.js +2 -2
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/Detail/ControlPanel.js +2 -1
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/Detail/index.js +2 -1
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/Utils.d.ts +19 -42
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/Utils.js +298 -96
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/container.d.ts +3 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/container.js +119 -54
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/ChartFilter.d.ts +1 -1
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/ChartFilter.js +46 -8
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Customer/component.js +6 -4
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Customer/container.js +1 -1
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Event/PasswordDialog.d.ts +9 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Event/PasswordDialog.js +56 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Event/Table.js +5 -1
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Event/Util.d.ts +12 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Event/Util.js +22 -7
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Event/container.js +63 -12
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/SplitButtonExportType.d.ts +1 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/SplitButtonExportType.js +17 -4
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Types.d.ts +10 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Utils.js +4 -1
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/common.d.ts +1 -0
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/common.js +3 -2
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/component.js +6 -2
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/container.js +31 -29
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AdList.js +1 -1
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AdRow.js +1 -1
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AddOrEditRule/RuleForm/TargetOS/container.js +2 -2
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/Advanced.js +1 -1
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/EditAds.js +5 -5
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/SubCampaignDetail.js +44 -33
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/SubCampaignDetail.test.js +3 -13
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/SubCampaignList.js +45 -20
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/atoms.js +3 -2
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/index.js +3 -2
- package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/useSearchPage.js +33 -8
- package/lib/ACM-AXN/Campaign/CreateOrEdit/index.d.ts +5 -1
- package/lib/ACM-AXN/Campaign/CreateOrEdit/index.js +172 -59
- package/lib/ACM-AXN/Campaign/Enum.d.ts +24 -6
- package/lib/ACM-AXN/Campaign/Enum.js +30 -11
- package/lib/ACM-AXN/Campaign/Types.d.ts +53 -5
- package/lib/ACM-AXN/Campaign/Utils.d.ts +6 -1
- package/lib/ACM-AXN/Campaign/Utils.js +50 -3
- package/lib/ACM-AXN/Campaign/index.js +2 -2
- package/lib/ACM-AXN/CampaignPlan/Container.js +4 -6
- package/lib/ACM-AXN/CampaignPlan/Detail.js +3 -3
- package/lib/ACM-AXN/CampaignPlan/Filter.js +3 -3
- package/lib/ACM-AXN/CampaignSchedule/Components/ControlPanel/Filter.js +14 -10
- package/lib/ACM-AXN/CampaignSchedule/Components/EnhancedPagination/index.js +3 -2
- package/lib/ACM-AXN/CampaignSchedule/DataConfig.js +4 -4
- package/lib/ACM-AXN/CampaignSchedule/DataConfigAXN.js +5 -4
- package/lib/ACM-AXN/CampaignSchedule/Recoil/Atom.d.ts +1 -2
- package/lib/ACM-AXN/CampaignSchedule/Recoil/Atom.js +1 -5
- package/lib/ACM-AXN/Common/Constant.d.ts +3 -0
- package/lib/ACM-AXN/Common/Constant.js +2 -0
- package/lib/ACM-AXN/Common/Enum.d.ts +8 -3
- package/lib/ACM-AXN/Common/Enum.js +19 -4
- package/lib/ACM-AXN/Common/Types.d.ts +5 -0
- package/lib/ACM-AXN/GeoFencing/GoongMap/index.d.ts +8 -9
- package/lib/ACM-AXN/GeoFencing/component.js +7 -7
- package/lib/ACM-AXN/GeoFencing/interface.d.ts +1 -2
- package/lib/ACM-AXN/Holiday/FormHoliday.js +1 -0
- package/lib/ACM-AXN/Notifications/NotificationPopover/Container.d.ts +0 -5
- package/lib/ACM-AXN/Notifications/NotificationPopover/Container.js +7 -90
- package/lib/ACM-AXN/Notifications/NotificationPopover/index.d.ts +0 -5
- package/lib/ACM-AXN/Notifications/Types.d.ts +2 -0
- package/lib/ACM-AXN/Page/Constant.js +2 -0
- package/lib/ACM-AXN/Page/Container.js +3 -3
- package/lib/ACM-AXN/Page/CreateOrEdit/ListenTemplate.d.ts +6 -0
- package/lib/ACM-AXN/Page/CreateOrEdit/ListenTemplate.js +63 -0
- package/lib/ACM-AXN/Page/CreateOrEdit/Recoil.d.ts +11 -2
- package/lib/ACM-AXN/Page/CreateOrEdit/Recoil.js +16 -12
- package/lib/ACM-AXN/Page/CreateOrEdit/TabInfo/TrackingCode.js +1 -1
- package/lib/ACM-AXN/Page/CreateOrEdit/TabInfo/Utils.js +1 -1
- package/lib/ACM-AXN/Page/CreateOrEdit/TabInfo/index.js +1 -0
- package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/Components/Panel.d.ts +1 -9
- package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/Components/Panel.js +0 -9
- package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/ViewContent.js +11 -44
- package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/ViewInfo.d.ts +2 -3
- package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/ViewInfo.js +39 -61
- package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/index.js +29 -32
- package/lib/ACM-AXN/Page/CreateOrEdit/Utils.js +6 -6
- package/lib/ACM-AXN/Page/CreateOrEdit/index.js +19 -4
- package/lib/ACM-AXN/Page/Import/index.js +2 -2
- package/lib/ACM-AXN/Page/Types.d.ts +3 -0
- package/lib/ACM-AXN/Page/enums.d.ts +5 -0
- package/lib/ACM-AXN/Page/enums.js +7 -1
- package/lib/ACM-AXN/Permission/Components/Styles.d.ts +1 -2
- package/lib/ACM-AXN/PlaceFilter/DataTable/component/index.js +2 -5
- package/lib/ACM-AXN/PlaceFilter/Input/component/index.js +1 -2
- package/lib/ACM-AXN/PlaceFilter/Tag/component/TagChip.js +1 -1
- package/lib/ACM-AXN/PlaceFilter/interface.d.ts +1 -0
- package/lib/ACM-AXN/ScheduleCompletionRate/Container.js +16 -16
- package/lib/ACM-AXN/ScheduleCompletionRate/DataSetConfig.d.ts +14 -9
- package/lib/ACM-AXN/ScheduleCompletionRate/DataSetConfig.js +19 -18
- package/lib/ACM-AXN/ScheduleCompletionRate/Detail/CompletionRate.js +16 -6
- package/lib/ACM-AXN/ScheduleCompletionRate/Detail/CompletionRateDate.js +17 -10
- package/lib/ACM-AXN/ScheduleCompletionRate/Filter.d.ts +2 -1
- package/lib/ACM-AXN/ScheduleCompletionRate/Filter.js +30 -51
- package/lib/ACM-AXN/ScheduleCompletionRate/Filter.test.js +1 -1
- package/lib/ACM-AXN/ScheduleCompletionRate/SearchCampaign.d.ts +2 -2
- package/lib/ACM-AXN/ScheduleCompletionRate/SearchCampaign.js +3 -9
- package/lib/ACM-AXN/ScheduleCompletionRate/Types.d.ts +16 -36
- package/lib/ACM-AXN/ScheduleCompletionRate/Utils.d.ts +5 -5
- package/lib/ACM-AXN/ScheduleCompletionRate/Utils.js +13 -10
- package/lib/ACM-AXN/Statistics/ControlPanel.js +17 -5
- package/lib/ACM-AXN/Statistics/Enums.d.ts +2 -1
- package/lib/ACM-AXN/Statistics/Enums.js +1 -0
- package/lib/ACM-AXN/StatisticsAudienceDemographic/Tabs/AgeRange.js +1 -0
- package/lib/ACM-AXN/StatisticsByProvince/DataTable.js +1 -1
- package/lib/ACM-AXN/TaskScheduler/CreateOrEdit.js +4 -4
- package/lib/ACM-AXN/Template/Container.js +2 -2
- package/lib/ACM-AXN/Template/CreateOrEdit/Recoils.d.ts +1 -0
- package/lib/ACM-AXN/Template/CreateOrEdit/Recoils.js +5 -1
- package/lib/ACM-AXN/Template/CreateOrEdit/Template/Parameter.d.ts +2 -2
- package/lib/ACM-AXN/Template/CreateOrEdit/Template/Parameter.js +56 -37
- package/lib/ACM-AXN/Template/CreateOrEdit/Template/Parameter.test.d.ts +1 -1
- package/lib/ACM-AXN/Template/CreateOrEdit/Template/Parameter.test.js +62 -51
- package/lib/ACM-AXN/Template/CreateOrEdit/Template/Utils.d.ts +28 -4
- package/lib/ACM-AXN/Template/CreateOrEdit/Template/Utils.js +43 -15
- package/lib/ACM-AXN/Template/CreateOrEdit/index.js +8 -4
- package/lib/ACM-AXN/Template/Import.js +2 -2
- package/lib/ACM-AXN/Template/Types.d.ts +9 -9
- package/lib/ACM-AXN/TransactionLog/Detail.js +1 -1
- package/lib/ACM-AXN/ViewTemplate/Preview.js +5 -6
- package/lib/ACM-AXN/ViewTemplate/TemplateField/Event.js +23 -11
- package/lib/ACM-AXN/ViewTemplate/TemplateField/Fields/BasicField/Utils.d.ts +18 -0
- package/lib/ACM-AXN/ViewTemplate/TemplateField/Fields/BasicField/Utils.js +170 -0
- package/lib/ACM-AXN/ViewTemplate/TemplateField/Fields/BasicField/index.js +42 -129
- package/lib/ACM-AXN/ViewTemplate/common.d.ts +2 -1
- package/lib/ACM-AXN/ViewTemplate/common.js +47 -7
- package/lib/ACM-AXN/ViewTemplate/container.js +8 -2
- package/lib/ACM-AXN/Wizard/CreateOrEdit/PageTemplate.d.ts +3 -1
- package/lib/ACM-AXN/Wizard/CreateOrEdit/PageTemplate.js +18 -28
- package/lib/ACM-AXN/Wizard/CreateOrEdit/PageTemplate.test.js +2 -0
- package/lib/ACM-AXN/Wizard/CreateOrEdit/RowTemplate.js +1 -1
- package/lib/ACM-AXN/Wizard/CreateOrEdit/index.js +17 -1
- package/lib/ACM-AXN/index.d.ts +1 -0
- package/lib/ACM-AXN/index.js +1 -0
- package/lib/AWING/AsyncAutocomplete/index.js +2 -2
- package/lib/AWING/BasicDataForm/BasicDataForm.js +9 -6
- package/lib/AWING/BasicDataForm/interface.d.ts +3 -0
- package/lib/AWING/Chart/BarLineComponent.js +20 -24
- package/lib/AWING/Chart/PieComponent.d.ts +3 -4
- package/lib/AWING/Chart/PieComponent.js +16 -16
- package/lib/AWING/Chart/Styles.js +51 -16
- package/lib/AWING/DataForm/DataInput.js +105 -23
- package/lib/AWING/DataForm/interface.d.ts +2 -0
- package/lib/AWING/DataGrid/index.js +8 -13
- package/lib/AWING/DateRangePicker/component.js +81 -33
- package/lib/AWING/DateRangePicker/configDate.d.ts +1 -2
- package/lib/AWING/DateRangePicker/configDate.js +12 -12
- package/lib/AWING/DateRangePicker/interface.d.ts +1 -0
- package/lib/AWING/Form/useForm.js +3 -2
- package/lib/AWING/GoogleMap/GGMap.d.ts +3 -0
- package/lib/AWING/GoogleMap/GGMap.js +256 -0
- package/lib/AWING/GoogleMap/index.d.ts +4 -0
- package/lib/AWING/GoogleMap/index.js +41 -0
- package/lib/AWING/GoogleMap/interface.d.ts +21 -0
- package/lib/AWING/GoogleMap/interface.js +2 -0
- package/lib/AWING/GoogleMap/utils.d.ts +25 -0
- package/lib/AWING/GoogleMap/utils.js +135 -0
- package/lib/AWING/GroupTable/GroupTable.js +2 -2
- package/lib/AWING/GroupTable/component.d.ts +1 -0
- package/lib/AWING/GroupTable/component.js +2 -2
- package/lib/AWING/NumberFormat/index.d.ts +3 -1
- package/lib/AWING/NumberFormat/index.js +2 -2
- package/lib/AWING/PageManagement/PageManagement.js +4 -3
- package/lib/AWING/Pagination/index.js +11 -3
- package/lib/AWING/index.d.ts +1 -0
- package/lib/AWING/index.js +1 -0
- package/lib/AWING/ultis/validation.d.ts +1 -0
- package/lib/AWING/ultis/validation.js +25 -6
- package/lib/Commons/Components/ClassicDrawer.js +5 -4
- package/lib/Commons/Components/HighlightedCode/MarkdownElement.js +6 -1
- package/lib/Commons/Hooks/usePath.js +3 -3
- package/lib/Utils/Helpers.d.ts +4 -3
- package/lib/Utils/Helpers.js +54 -23
- package/lib/i18n.js +31 -2
- package/lib/translate/en/translation.json +131 -71
- package/lib/translate/id/translation.json +893 -0
- package/lib/translate/ind/translation.json +893 -0
- package/lib/translate/ja/translation.json +893 -0
- package/lib/translate/lao/translation.json +893 -0
- package/lib/translate/mys/translation.json +893 -0
- package/lib/translate/phl/translation.json +893 -0
- package/lib/translate/th/translation.json +893 -0
- package/lib/translate/vi/translation.json +91 -31
- package/package.json +10 -5
|
@@ -93,7 +93,7 @@ function ControlPanel(_a) {
|
|
|
93
93
|
var handleElementInput = function (initialFilters) {
|
|
94
94
|
var updatedElementInputs = [];
|
|
95
95
|
initialFilters.map(function (item, idx) {
|
|
96
|
-
var _a, _b, _c, _d, _e, _f;
|
|
96
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
|
97
97
|
switch (item === null || item === void 0 ? void 0 : item.type) {
|
|
98
98
|
case Enums_1.TYPE_FILTERS.VIEW_BY: {
|
|
99
99
|
var element = __assign({ component: ((0, jsx_runtime_1.jsx)(material_1.TextField, { select: true, fullWidth: true, label: t('Common.ViewBy'), size: "small", onChange: function (e) {
|
|
@@ -123,8 +123,20 @@ function ControlPanel(_a) {
|
|
|
123
123
|
updatedElementInputs.push(element);
|
|
124
124
|
break;
|
|
125
125
|
}
|
|
126
|
+
case Enums_1.TYPE_FILTERS.SEARCH_BY_PLACE: {
|
|
127
|
+
var element = __assign({ component: ((0, jsx_runtime_1.jsx)(material_1.TextField, { select: true, fullWidth: true, label: t('Common.TitleTypeView'), size: "small", onChange: function (e) {
|
|
128
|
+
return handleChangeQueryInput &&
|
|
129
|
+
handleChangeQueryInput(item === null || item === void 0 ? void 0 : item.name, e.target.value);
|
|
130
|
+
}, SelectProps: {
|
|
131
|
+
native: true,
|
|
132
|
+
}, variant: "outlined", style: { minWidth: 150 }, disabled: false, children: (_a = item === null || item === void 0 ? void 0 : item.initialData) === null || _a === void 0 ? void 0 : _a.map(function (data, index) {
|
|
133
|
+
return ((0, jsx_runtime_1.jsx)("option", { value: data.value, children: data.label }, item.value));
|
|
134
|
+
}) }, idx)), isEnhanced: (item === null || item === void 0 ? void 0 : item.isEnhanced) ? item === null || item === void 0 ? void 0 : item.isEnhanced : false, name: 'SearchByPlace' }, item);
|
|
135
|
+
updatedElementInputs.push(element);
|
|
136
|
+
break;
|
|
137
|
+
}
|
|
126
138
|
case Enums_1.TYPE_FILTERS.DATE_RANGE_PICKER: {
|
|
127
|
-
var element = __assign({ component: ((0, jsx_runtime_1.jsx)(AWING_1.DateRangePicker, __assign({ isShowCalendarInfo: (
|
|
139
|
+
var element = __assign({ component: ((0, jsx_runtime_1.jsx)(AWING_1.DateRangePicker, __assign({ isShowCalendarInfo: (_b = item === null || item === void 0 ? void 0 : item.isShowCalendarInfo) !== null && _b !== void 0 ? _b : true, isFutureDate: (_c = item === null || item === void 0 ? void 0 : item.isFutureDate) !== null && _c !== void 0 ? _c : false, label: "".concat(t('Common.StartDate'), " - ").concat(t('Common.EndDate')), initialStartDate: (_d = item === null || item === void 0 ? void 0 : item.defaultValue) === null || _d === void 0 ? void 0 : _d.startDate, initialEndDate: (_e = item === null || item === void 0 ? void 0 : item.defaultValue) === null || _e === void 0 ? void 0 : _e.endDate, variant: "outlined", textFieldProps: {
|
|
128
140
|
fullWidth: true,
|
|
129
141
|
className: classes.outlinedInput,
|
|
130
142
|
}, callback: handleChangeDateRange }, ((item === null || item === void 0 ? void 0 : item.isDayBlocked) && {
|
|
@@ -167,7 +179,7 @@ function ControlPanel(_a) {
|
|
|
167
179
|
break;
|
|
168
180
|
}
|
|
169
181
|
case Enums_1.TYPE_FILTERS.NETWORK: {
|
|
170
|
-
var element = __assign({ component: ((0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { control: (0, jsx_runtime_1.jsx)(material_1.Checkbox, { color: "primary", defaultChecked: (
|
|
182
|
+
var element = __assign({ component: ((0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { control: (0, jsx_runtime_1.jsx)(material_1.Checkbox, { color: "primary", defaultChecked: (_f = queryInput === null || queryInput === void 0 ? void 0 : queryInput.isCampaignNetwork) !== null && _f !== void 0 ? _f : true }), label: t('Statistic.Network.Title'), labelPlacement: "start", onChange: function (e) {
|
|
171
183
|
handleChangeQueryInput(item === null || item === void 0 ? void 0 : item.name, e.target.checked);
|
|
172
184
|
} }, idx)), isEnhanced: (item === null || item === void 0 ? void 0 : item.isEnhanced) ? item === null || item === void 0 ? void 0 : item.isEnhanced : false, name: 'isCampaignNetwork' }, item);
|
|
173
185
|
updatedElementInputs.push(element);
|
|
@@ -181,7 +193,7 @@ function ControlPanel(_a) {
|
|
|
181
193
|
break;
|
|
182
194
|
}
|
|
183
195
|
case Enums_1.TYPE_FILTERS.INCLUDE_RESERVED: {
|
|
184
|
-
var element = __assign({ component: ((0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { control: (0, jsx_runtime_1.jsx)(material_1.Checkbox, { color: "primary", defaultChecked: (
|
|
196
|
+
var element = __assign({ component: ((0, jsx_runtime_1.jsx)(material_1.FormControlLabel, { control: (0, jsx_runtime_1.jsx)(material_1.Checkbox, { color: "primary", defaultChecked: (_g = queryInput === null || queryInput === void 0 ? void 0 : queryInput.includeReserved) !== null && _g !== void 0 ? _g : true }), label: t('StatisticSchedulePlan.IncludeCampaignReserved'), labelPlacement: "start", onChange: function (e) {
|
|
185
197
|
handleChangeQueryInput(item === null || item === void 0 ? void 0 : item.name, e.target.checked);
|
|
186
198
|
} }, idx)), isEnhanced: (item === null || item === void 0 ? void 0 : item.isEnhanced) ? item === null || item === void 0 ? void 0 : item.isEnhanced : false, name: 'includeReserved' }, item);
|
|
187
199
|
updatedElementInputs.push(element);
|
|
@@ -196,7 +208,7 @@ function ControlPanel(_a) {
|
|
|
196
208
|
}, []);
|
|
197
209
|
(0, react_1.useEffect)(function () {
|
|
198
210
|
handleElementInput(initialFilters);
|
|
199
|
-
}, [initialFilters, queryInput]);
|
|
211
|
+
}, [initialFilters, queryInput, t]);
|
|
200
212
|
(0, react_1.useEffect)(function () {
|
|
201
213
|
var tmpQueryInput = queryInput;
|
|
202
214
|
if (!tmpQueryInput) {
|
|
@@ -9,7 +9,8 @@ export declare enum TYPE_FILTERS {
|
|
|
9
9
|
NETWORK = "NetWork",
|
|
10
10
|
CAMPAIGN_DEFAULT = "CampaignDefault",
|
|
11
11
|
INCLUDE_RESERVED = "IncludeReserved",
|
|
12
|
-
DATE_RANGE_PICKER = "DateRangePicker"
|
|
12
|
+
DATE_RANGE_PICKER = "DateRangePicker",
|
|
13
|
+
SEARCH_BY_PLACE = "SearchByPlace"
|
|
13
14
|
}
|
|
14
15
|
export declare enum TYPE_CHART {
|
|
15
16
|
PIE = "Pie",
|
|
@@ -14,6 +14,7 @@ var TYPE_FILTERS;
|
|
|
14
14
|
TYPE_FILTERS["CAMPAIGN_DEFAULT"] = "CampaignDefault";
|
|
15
15
|
TYPE_FILTERS["INCLUDE_RESERVED"] = "IncludeReserved";
|
|
16
16
|
TYPE_FILTERS["DATE_RANGE_PICKER"] = "DateRangePicker";
|
|
17
|
+
TYPE_FILTERS["SEARCH_BY_PLACE"] = "SearchByPlace";
|
|
17
18
|
})(TYPE_FILTERS || (exports.TYPE_FILTERS = TYPE_FILTERS = {}));
|
|
18
19
|
var TYPE_CHART;
|
|
19
20
|
(function (TYPE_CHART) {
|
|
@@ -105,7 +105,7 @@ var DataTable = function (props) {
|
|
|
105
105
|
: row[headCellItem
|
|
106
106
|
.id] }));
|
|
107
107
|
}) }));
|
|
108
|
-
})) })) : ((0, jsx_runtime_1.jsx)(NoDataTable_1.default, { colSpan: (headCells === null || headCells === void 0 ? void 0 : headCells.length) + 1 }))] }), rowsData && (rowsData === null || rowsData === void 0 ? void 0 : rowsData.length) > 0 && isPagination && ((0, jsx_runtime_1.jsx)(
|
|
108
|
+
})) })) : ((0, jsx_runtime_1.jsx)(NoDataTable_1.default, { colSpan: (headCells === null || headCells === void 0 ? void 0 : headCells.length) + 1 }))] }), rowsData && (rowsData === null || rowsData === void 0 ? void 0 : rowsData.length) > 0 && isPagination && ((0, jsx_runtime_1.jsx)(AWING_1.Pagination, { rowsPerPageOptions: [
|
|
109
109
|
AWING_1.PAGE_SIZE_DEFAULT,
|
|
110
110
|
AWING_1.PAGE_SIZE_DEFAULT + 10,
|
|
111
111
|
AWING_1.PAGE_SIZE_DEFAULT + 20,
|
|
@@ -41,7 +41,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
41
41
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
42
42
|
var icons_material_1 = require("@mui/icons-material");
|
|
43
43
|
var material_1 = require("@mui/material");
|
|
44
|
-
var immer_1 =
|
|
44
|
+
var immer_1 = require("immer");
|
|
45
45
|
var react_1 = __importDefault(require("react"));
|
|
46
46
|
var react_i18next_1 = require("react-i18next");
|
|
47
47
|
var react_router_dom_1 = require("react-router-dom");
|
|
@@ -119,13 +119,13 @@ var CreateOrEdit = function () {
|
|
|
119
119
|
var handleInputParamChange = function (path, value) {
|
|
120
120
|
setConfirmExit(true);
|
|
121
121
|
var keys = path.split('.');
|
|
122
|
-
setJobModel((0, immer_1.
|
|
122
|
+
setJobModel((0, immer_1.produce)(function (draft) {
|
|
123
123
|
(0, Helpers_1.setObject)(draft, keys, value);
|
|
124
124
|
// draft.inputParameters[index] = item
|
|
125
125
|
}));
|
|
126
126
|
};
|
|
127
127
|
var handleJobActionChange = function (jobAction) {
|
|
128
|
-
setJobModel((0, immer_1.
|
|
128
|
+
setJobModel((0, immer_1.produce)(function (draf) {
|
|
129
129
|
draf.inputParameters = jobAction.parameters.map(function (x) { return ({
|
|
130
130
|
key: x.name,
|
|
131
131
|
operator: x.operators[0],
|
|
@@ -145,7 +145,7 @@ var CreateOrEdit = function () {
|
|
|
145
145
|
? { cronTime: '* * * * *' }
|
|
146
146
|
: { triggerTopic: '', triggerEvent: '' }))); });
|
|
147
147
|
};
|
|
148
|
-
return ((0, jsx_runtime_1.jsx)(ClassicDrawer_1.default, { title: t("Common.".concat(taskId ? 'Edit' : 'Create')), onSubmit: handleSubmit, disableButtonSubmit: !enableSubmit, confirmExit: confirmExit, childrenWrapperStyle: { padding: function (theme) { return theme.spacing(3); } }, children: loading ? ((0, jsx_runtime_1.jsx)(AWING_1.CircularProgress, {})) : ((0, jsx_runtime_1.jsxs)(material_1.Grid, { container: true, component: material_1.Paper, sx: { p: 2 }, children: [(0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 12, children: (0, jsx_runtime_1.jsx)(BasicInput_1.default, { name: "name", label: t('Common.Name'), fullWidth: true, variant: "standard", checkValid: validation_1.textValidation, value: jobModel.name, onChange: handleChange }) }), (0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 12, children: (0, jsx_runtime_1.jsxs)(material_1.Grid, { container: true, style: { marginTop: '20px', marginBottom: '20px' }, children: [(0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 4, style: { paddingRight: '10px' }, children: (0, jsx_runtime_1.jsx)(BasicInput_1.default, { fullWidth: true, select: true, required: false, name: "jobType", variant: "standard", label: t('TaskScheduler.JobType'), onChange: handleChangeJobType, value: jobModel.jobType, children: Utils_1.JobTypes.map(function (item) { return ((0, jsx_runtime_1.jsx)(material_1.MenuItem, { value: item.name, children: item.name }, item.name)); }) }) }), (0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 8, children: (0, jsx_runtime_1.jsx)(material_1.Box, { component: JobInput[jobModel.jobType], jobModel: jobModel, handleChange: handleChange }) })] }) }), (0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 12, children: (0, jsx_runtime_1.jsxs)(material_1.Grid, { container: true, children: [(0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 4, style: { paddingRight: '10px' }, children: (0, jsx_runtime_1.jsx)(BasicInput_1.default, { fullWidth: true, select: true, name: "jobAction", label: t('TaskScheduler.JobAction'),
|
|
148
|
+
return ((0, jsx_runtime_1.jsx)(ClassicDrawer_1.default, { title: t("Common.".concat(taskId ? 'Edit' : 'Create')), onSubmit: handleSubmit, disableButtonSubmit: !enableSubmit, confirmExit: confirmExit, childrenWrapperStyle: { padding: function (theme) { return theme.spacing(3); } }, children: loading ? ((0, jsx_runtime_1.jsx)(AWING_1.CircularProgress, {})) : ((0, jsx_runtime_1.jsxs)(material_1.Grid, { container: true, component: material_1.Paper, sx: { p: 2 }, children: [(0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 12, children: (0, jsx_runtime_1.jsx)(BasicInput_1.default, { name: "name", label: t('Common.Name'), fullWidth: true, variant: "standard", checkValid: validation_1.textValidation, value: jobModel.name, onChange: handleChange }) }), (0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 12, children: (0, jsx_runtime_1.jsxs)(material_1.Grid, { container: true, style: { marginTop: '20px', marginBottom: '20px' }, children: [(0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 4, style: { paddingRight: '10px' }, children: (0, jsx_runtime_1.jsx)(BasicInput_1.default, { fullWidth: true, select: true, required: false, name: "jobType", variant: "standard", label: t('TaskScheduler.JobType'), onChange: handleChangeJobType, value: jobModel.jobType, children: Utils_1.JobTypes.map(function (item) { return ((0, jsx_runtime_1.jsx)(material_1.MenuItem, { value: item.name, children: t("TaskScheduler.Type.".concat(item.name)) }, item.name)); }) }) }), (0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 8, children: (0, jsx_runtime_1.jsx)(material_1.Box, { component: JobInput[jobModel.jobType], jobModel: jobModel, handleChange: handleChange }) })] }) }), (0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 12, children: (0, jsx_runtime_1.jsxs)(material_1.Grid, { container: true, children: [(0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 4, style: { paddingRight: '10px' }, children: (0, jsx_runtime_1.jsx)(BasicInput_1.default, { fullWidth: true, select: true, name: "jobAction", label: t('TaskScheduler.JobAction'),
|
|
149
149
|
// isError={Boolean(jobValid?.jobActionValid)}
|
|
150
150
|
onChange: function (_k, name) {
|
|
151
151
|
handleJobActionChange(jobActions.filter(function (x) { return x.name === name; })[0]);
|
|
@@ -56,9 +56,9 @@ var TemplateContainer = function () {
|
|
|
56
56
|
},
|
|
57
57
|
{
|
|
58
58
|
field: 'PageCode',
|
|
59
|
-
headerName: '
|
|
59
|
+
headerName: t('Common.TypePage'),
|
|
60
60
|
valueGetter: function (row) {
|
|
61
|
-
return t("TemplateManagement.Page_".concat(row.pageCode));
|
|
61
|
+
return t("TemplateManagement.Page_".concat(['wlc', 'lgn'].includes(row.pageCode) ? row.pageCode : row.pageCode === '0' ? 'wlc' : 'lgn'));
|
|
62
62
|
},
|
|
63
63
|
},
|
|
64
64
|
], loading: loading, rows: (templates === null || templates === void 0 ? void 0 : templates.templates) || [], onCreateButtonClick: handleNavigate, customActions: (0, jsx_runtime_1.jsx)(material_1.Button, { component: Router_1.Link, to: Constant_1.Constants.IMPORT_PATH, variant: "outlined", size: "medium", sx: { marginLeft: '16px', fontWeight: 'bold' }, children: t('Common.Import') }), rowActions: [
|
|
@@ -4,3 +4,4 @@ export declare const templateInfoState: import("recoil").RecoilState<ITemplate>;
|
|
|
4
4
|
export declare const templateEventState: import("recoil").RecoilState<ITemplateEvent[]>;
|
|
5
5
|
export declare const templateParametersState: import("recoil").RecoilState<ITemplateParameter[]>;
|
|
6
6
|
export declare const isEditState: import("recoil").RecoilState<boolean>;
|
|
7
|
+
export declare const isErrorParameterState: import("recoil").RecoilState<boolean>;
|
|
@@ -11,7 +11,7 @@ var __assign = (this && this.__assign) || function () {
|
|
|
11
11
|
return __assign.apply(this, arguments);
|
|
12
12
|
};
|
|
13
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
-
exports.isEditState = exports.templateParametersState = exports.templateEventState = exports.templateInfoState = exports.templateState = void 0;
|
|
14
|
+
exports.isErrorParameterState = exports.isEditState = exports.templateParametersState = exports.templateEventState = exports.templateInfoState = exports.templateState = void 0;
|
|
15
15
|
var recoil_1 = require("recoil");
|
|
16
16
|
var defaultValidation = "<!-- return function(fields) {\n // Parameter fields: [{fieldName, fieldValue}]\n // VALID_CODE: 200, NOT_VALID_CODE: 100\n // Return array include field name, error message and check code of them\n // Eg: Check field \"text\" must have equal or more than 10 character\n return new Promise((resolve, reject) => {\n const needCheckField = fields.find(field => field.fieldName === \"text\")\n const isOk = needCheckField.fieldValue.length >= 10\n resolve([\n {\n fieldName: needCheckField.fieldName,\n code: isOk ? 200 : 100,\n errorMessage: \"Text has less than 10 character\"\n }\n ])\n })\n} -->";
|
|
17
17
|
var defaultHandleEvent = "<!-- return function(fields, fieldChange) {\n // Parameter fields: [{fieldName, fieldValue}], fieldChange: field which change\n // Return array of field need update with new value\n // In case no update, return empty array\n // Eg: Auto update value of \"textUpperCase\" field when value of \"text\" field changed\n return new Promise((resolve, reject) => {\n if(fieldChange.fieldName === \"text\") {\n resolve([\n {\n fieldName: \"textUpperCase\",\n newValue: fieldChange.fieldValue.toUpperCase()\n }\n ])\n }else resolve([])\n })\n} -->";
|
|
@@ -77,3 +77,7 @@ exports.isEditState = (0, recoil_1.atom)({
|
|
|
77
77
|
key: "isEditState",
|
|
78
78
|
default: false,
|
|
79
79
|
});
|
|
80
|
+
exports.isErrorParameterState = (0, recoil_1.atom)({
|
|
81
|
+
key: "isErrorParameterState",
|
|
82
|
+
default: false,
|
|
83
|
+
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
import React from 'react';
|
|
2
2
|
interface ParameterProps {
|
|
3
3
|
templateId: string;
|
|
4
4
|
}
|
|
@@ -17,5 +17,5 @@ export declare const OmitListType: {
|
|
|
17
17
|
COLOR: string;
|
|
18
18
|
URL: string;
|
|
19
19
|
};
|
|
20
|
-
declare const _default:
|
|
20
|
+
declare const _default: React.NamedExoticComponent<ParameterProps>;
|
|
21
21
|
export default _default;
|
|
@@ -10,6 +10,29 @@ var __assign = (this && this.__assign) || function () {
|
|
|
10
10
|
};
|
|
11
11
|
return __assign.apply(this, arguments);
|
|
12
12
|
};
|
|
13
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
16
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
17
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
18
|
+
}
|
|
19
|
+
Object.defineProperty(o, k2, desc);
|
|
20
|
+
}) : (function(o, m, k, k2) {
|
|
21
|
+
if (k2 === undefined) k2 = k;
|
|
22
|
+
o[k2] = m[k];
|
|
23
|
+
}));
|
|
24
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
+
}) : function(o, v) {
|
|
27
|
+
o["default"] = v;
|
|
28
|
+
});
|
|
29
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
13
36
|
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
14
37
|
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
15
38
|
if (ar || !(i in from)) {
|
|
@@ -28,10 +51,10 @@ var jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
28
51
|
var icons_material_1 = require("@mui/icons-material");
|
|
29
52
|
var Add_1 = __importDefault(require("@mui/icons-material/Add"));
|
|
30
53
|
var material_1 = require("@mui/material");
|
|
31
|
-
var immer_1 = __importDefault(require("immer"));
|
|
32
54
|
var Enum_1 = require("../../../../ACM-AXN/ViewTemplate/Enum");
|
|
33
55
|
var AWING_1 = require("../../../../AWING");
|
|
34
|
-
var
|
|
56
|
+
var immer_1 = require("immer");
|
|
57
|
+
var react_1 = __importStar(require("react"));
|
|
35
58
|
var react_i18next_1 = require("react-i18next");
|
|
36
59
|
var recoil_1 = require("recoil");
|
|
37
60
|
var Recoils_1 = require("../Recoils");
|
|
@@ -41,6 +64,7 @@ delete exports.OmitListType.LIST;
|
|
|
41
64
|
var Parameter = function (_a) {
|
|
42
65
|
var templateId = _a.templateId;
|
|
43
66
|
var _b = (0, recoil_1.useRecoilState)(Recoils_1.templateParametersState), rows = _b[0], handleSetParameter = _b[1];
|
|
67
|
+
var setErrors = (0, recoil_1.useSetRecoilState)(Recoils_1.isErrorParameterState);
|
|
44
68
|
var t = (0, react_i18next_1.useTranslation)().t;
|
|
45
69
|
var defaultParam = {
|
|
46
70
|
id: String(Date.now()),
|
|
@@ -50,48 +74,48 @@ var Parameter = function (_a) {
|
|
|
50
74
|
defaultValue: undefined,
|
|
51
75
|
labelName: undefined,
|
|
52
76
|
isRequired: false,
|
|
77
|
+
isAdvanced: false,
|
|
53
78
|
childrens: [],
|
|
54
79
|
};
|
|
80
|
+
var tableRow = react_1.default.useMemo(function () { return (0, Utils_1.flattenParameter)(rows); }, [rows]);
|
|
81
|
+
react_1.default.useEffect(function () {
|
|
82
|
+
setErrors(tableRow.some(function (item) { return item.errField; }));
|
|
83
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
84
|
+
}, [tableRow]);
|
|
55
85
|
var handleAddParameter = function () {
|
|
56
86
|
handleSetParameter(function (prev) { return __spreadArray(__spreadArray([], prev, true), [defaultParam], false); });
|
|
57
87
|
};
|
|
58
88
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
59
89
|
var handleChange = function (event) {
|
|
60
|
-
var _a
|
|
61
|
-
var
|
|
62
|
-
|
|
63
|
-
|
|
90
|
+
var _a, _b;
|
|
91
|
+
var _c = event.target, name = _c.name, value = _c.value, checked = _c.checked;
|
|
92
|
+
var _d = name.split('-').filter(Boolean), field = _d[0], ids = _d.slice(1);
|
|
93
|
+
var handleValue = [
|
|
94
|
+
Utils_1.FIELDS.IS_REQUIRED,
|
|
95
|
+
Utils_1.FIELDS.IS_ADVANCED,
|
|
96
|
+
].includes(field)
|
|
97
|
+
? checked
|
|
98
|
+
: field === Utils_1.FIELDS.FIELD_NAME ? ((_b = (_a = value === null || value === void 0 ? void 0 : value.split('.')) === null || _a === void 0 ? void 0 : _a.at(ids.length - 1)) !== null && _b !== void 0 ? _b : '').trim() : value;
|
|
99
|
+
handleSetParameter((0, immer_1.produce)(function (rows) {
|
|
100
|
+
(0, Utils_1.enhancedUpdate)(rows, ids, field, handleValue, defaultParam);
|
|
64
101
|
}));
|
|
65
102
|
};
|
|
66
103
|
var handleRemoveRow = function (id) {
|
|
67
104
|
handleChange({
|
|
68
105
|
target: {
|
|
69
|
-
name: [Utils_1.
|
|
106
|
+
name: [Utils_1.FIELDS.REMOVE, id].join('-'),
|
|
70
107
|
value: defaultParam,
|
|
71
108
|
},
|
|
72
109
|
});
|
|
73
110
|
};
|
|
74
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
75
|
-
// const handleChangeParameter = useCallback(
|
|
76
|
-
// debounce(handleChange, DEBOUNCE_TIME),
|
|
77
|
-
// []
|
|
78
|
-
// )
|
|
79
111
|
var handleAddChildren = function (id) {
|
|
80
112
|
handleChange({
|
|
81
113
|
target: {
|
|
82
|
-
name: [Utils_1.
|
|
114
|
+
name: [Utils_1.FIELDS.CHILDRENS, id].join('-'),
|
|
83
115
|
value: defaultParam,
|
|
84
116
|
},
|
|
85
117
|
});
|
|
86
118
|
};
|
|
87
|
-
var tableRow = (0, Utils_1.flattenParameter)(rows).map(function (row) {
|
|
88
|
-
Object.keys(row).forEach(function (key) {
|
|
89
|
-
if (Array.isArray(row[key])) {
|
|
90
|
-
row[key] = row[key].filter(function (item) { return item !== ''; });
|
|
91
|
-
}
|
|
92
|
-
});
|
|
93
|
-
return row;
|
|
94
|
-
});
|
|
95
119
|
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(material_1.Box, { mt: 3, children: (0, jsx_runtime_1.jsx)(material_1.Grid, { container: true, justifyContent: "space-between", alignItems: "center", children: (0, jsx_runtime_1.jsx)(material_1.Grid, { item: true, xs: 6, children: (0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "subtitle1", sx: {
|
|
96
120
|
fontWeight: 'bold',
|
|
97
121
|
color: '#000000',
|
|
@@ -102,7 +126,7 @@ var Parameter = function (_a) {
|
|
|
102
126
|
}, component: 'form', onChange: handleChange, children: (0, jsx_runtime_1.jsx)(AWING_1.DataGrid, { getRowId: function (obj) { return [obj.parentId, obj.id].flat().join('-'); }, columns: [
|
|
103
127
|
{
|
|
104
128
|
// width: '150px',
|
|
105
|
-
field:
|
|
129
|
+
field: Utils_1.FIELDS.FIELD_TYPE,
|
|
106
130
|
headerName: t('TemplateManagement.fieldType'),
|
|
107
131
|
dynamicTableCellProps: function (row) {
|
|
108
132
|
return {
|
|
@@ -141,7 +165,7 @@ var Parameter = function (_a) {
|
|
|
141
165
|
},
|
|
142
166
|
},
|
|
143
167
|
{
|
|
144
|
-
field:
|
|
168
|
+
field: Utils_1.FIELDS.FIELD_NAME,
|
|
145
169
|
headerName: t('TemplateManagement.FieldName'),
|
|
146
170
|
TableCellProps: {
|
|
147
171
|
sx: {
|
|
@@ -153,22 +177,17 @@ var Parameter = function (_a) {
|
|
|
153
177
|
// inputProps={{}}
|
|
154
178
|
, {
|
|
155
179
|
// inputProps={{}}
|
|
156
|
-
error: row.errField,
|
|
157
|
-
startAdornment: ((0, jsx_runtime_1.jsx)(material_1.Box, { component: 'span', sx: {
|
|
158
|
-
padding: '4px 0 5px',
|
|
159
|
-
}, children: row.parentFieldName.length ? (row.parentFieldName.push(''), row.parentFieldName).join('.')
|
|
160
|
-
: null })),
|
|
161
|
-
}, required: true, fullWidth: true, name: [
|
|
180
|
+
error: row.errField, required: true, fullWidth: true, name: [
|
|
162
181
|
'fieldName',
|
|
163
182
|
row.parentId,
|
|
164
183
|
row.id,
|
|
165
184
|
]
|
|
166
185
|
.flat()
|
|
167
|
-
.join('-'), variant: "standard",
|
|
186
|
+
.join('-'), variant: "standard", value: (0, Utils_1.getFieldName)(row) }, idx));
|
|
168
187
|
},
|
|
169
188
|
},
|
|
170
189
|
{
|
|
171
|
-
field:
|
|
190
|
+
field: Utils_1.FIELDS.LABEL_NAME,
|
|
172
191
|
headerName: t('Common.Label'),
|
|
173
192
|
TableCellProps: {
|
|
174
193
|
sx: {
|
|
@@ -177,7 +196,7 @@ var Parameter = function (_a) {
|
|
|
177
196
|
},
|
|
178
197
|
valueGetter: function (row, idx) {
|
|
179
198
|
return ((0, jsx_runtime_1.jsx)(material_1.TextField, { fullWidth: true, name: [
|
|
180
|
-
|
|
199
|
+
Utils_1.FIELDS.LABEL_NAME,
|
|
181
200
|
row.parentId,
|
|
182
201
|
row.id,
|
|
183
202
|
]
|
|
@@ -186,7 +205,7 @@ var Parameter = function (_a) {
|
|
|
186
205
|
},
|
|
187
206
|
},
|
|
188
207
|
{
|
|
189
|
-
field:
|
|
208
|
+
field: Utils_1.FIELDS.DEFAULT_VALUE,
|
|
190
209
|
headerName: t('Common.DefaultValue'),
|
|
191
210
|
TableCellProps: {
|
|
192
211
|
sx: {
|
|
@@ -207,7 +226,7 @@ var Parameter = function (_a) {
|
|
|
207
226
|
},
|
|
208
227
|
},
|
|
209
228
|
{
|
|
210
|
-
field:
|
|
229
|
+
field: Utils_1.FIELDS.IS_REQUIRED,
|
|
211
230
|
width: '85px',
|
|
212
231
|
headerName: t('Common.Require'),
|
|
213
232
|
TableCellProps: {
|
|
@@ -231,7 +250,7 @@ var Parameter = function (_a) {
|
|
|
231
250
|
},
|
|
232
251
|
valueGetter: function (row, idx) {
|
|
233
252
|
return ((0, jsx_runtime_1.jsx)(material_1.Checkbox, { name: [
|
|
234
|
-
|
|
253
|
+
Utils_1.FIELDS.IS_REQUIRED,
|
|
235
254
|
row.parentId,
|
|
236
255
|
row.id,
|
|
237
256
|
]
|
|
@@ -240,7 +259,7 @@ var Parameter = function (_a) {
|
|
|
240
259
|
},
|
|
241
260
|
},
|
|
242
261
|
{
|
|
243
|
-
field:
|
|
262
|
+
field: Utils_1.FIELDS.IS_ADVANCED,
|
|
244
263
|
width: '85px',
|
|
245
264
|
headerName: t('Common.Advance'),
|
|
246
265
|
TableCellProps: {
|
|
@@ -284,6 +303,6 @@ var Parameter = function (_a) {
|
|
|
284
303
|
return !(Enum_1.TYPE_FIELD_TEMPLATE.OBJECT === row.fieldType);
|
|
285
304
|
},
|
|
286
305
|
},
|
|
287
|
-
] }) }), (0, jsx_runtime_1.jsx)(material_1.Box, { mt: 3, children: (0, jsx_runtime_1.jsxs)(material_1.Grid, { container: true, justifyContent: "space-between", alignItems: "center", children: [(0, jsx_runtime_1.jsx)(material_1.Grid, { xs: 6, container: true, item: true, children: (0, jsx_runtime_1.jsx)(material_1.Button, { "aria-label": "button-add", variant: "contained", onClick: handleAddParameter, disabled: false, title: t('Common.Add'), children: (0, jsx_runtime_1.jsx)(Add_1.default, {}) }) }), (0, jsx_runtime_1.jsx)(material_1.Grid, { xs: 6, container: true, item: true, justifyContent: "flex-end", children: (0, jsx_runtime_1.jsx)(material_1.Typography, { sx: { padding: '8px' }, children: t('TemplateManagement.NamingFieldNotice') }) })] }) })] }));
|
|
306
|
+
] }) }), (0, jsx_runtime_1.jsx)(material_1.Box, { mt: 3, children: (0, jsx_runtime_1.jsxs)(material_1.Grid, { container: true, justifyContent: "space-between", alignItems: "center", children: [(0, jsx_runtime_1.jsx)(material_1.Grid, { xs: 6, container: true, item: true, children: (0, jsx_runtime_1.jsx)(material_1.Button, { name: "master-add-parameter", "aria-label": "button-add", variant: "contained", onClick: handleAddParameter, disabled: false, title: t('Common.Add'), children: (0, jsx_runtime_1.jsx)(Add_1.default, {}) }) }), (0, jsx_runtime_1.jsx)(material_1.Grid, { xs: 6, container: true, item: true, justifyContent: "flex-end", children: (0, jsx_runtime_1.jsx)(material_1.Typography, { sx: { padding: '8px' }, children: t('TemplateManagement.NamingFieldNotice') }) })] }) })] }));
|
|
288
307
|
};
|
|
289
308
|
exports.default = (0, react_1.memo)(Parameter);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
export {};
|
|
@@ -77,7 +77,6 @@ var jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
77
77
|
/* eslint-disable testing-library/no-node-access */
|
|
78
78
|
/* eslint-disable testing-library/no-container */
|
|
79
79
|
/* eslint-disable testing-library/no-wait-for-side-effects */
|
|
80
|
-
require("@testing-library/jest-dom/extend-expect");
|
|
81
80
|
var react_1 = require("@testing-library/react");
|
|
82
81
|
var Parameter_1 = __importDefault(require("./Parameter"));
|
|
83
82
|
var Utils = __importStar(require("./Utils"));
|
|
@@ -111,27 +110,6 @@ var rows = [
|
|
|
111
110
|
isRequired: true,
|
|
112
111
|
childrens: [],
|
|
113
112
|
},
|
|
114
|
-
{
|
|
115
|
-
id: '14896',
|
|
116
|
-
templateId: '4671435926616395650',
|
|
117
|
-
fieldName: 'video_inbanner_2',
|
|
118
|
-
fieldType: 'object',
|
|
119
|
-
defaultValue: null,
|
|
120
|
-
labelName: 'File banner nền video',
|
|
121
|
-
isRequired: true,
|
|
122
|
-
childrens: [
|
|
123
|
-
{
|
|
124
|
-
id: '148967',
|
|
125
|
-
templateId: '4671435926616395650',
|
|
126
|
-
fieldName: 'video_inbanner_2',
|
|
127
|
-
fieldType: 'image',
|
|
128
|
-
defaultValue: null,
|
|
129
|
-
labelName: 'File banner nền video',
|
|
130
|
-
isRequired: true,
|
|
131
|
-
childrens: [],
|
|
132
|
-
},
|
|
133
|
-
],
|
|
134
|
-
},
|
|
135
113
|
{
|
|
136
114
|
id: '148961',
|
|
137
115
|
templateId: '4671435926616395650',
|
|
@@ -154,13 +132,11 @@ var rows = [
|
|
|
154
132
|
],
|
|
155
133
|
},
|
|
156
134
|
];
|
|
157
|
-
var props = {
|
|
158
|
-
handleSetParameter: function (fn) {
|
|
159
|
-
return fn(rows);
|
|
160
|
-
},
|
|
161
|
-
};
|
|
162
135
|
describe('Template Infomation Tab Component', function () {
|
|
163
|
-
beforeAll(function () {
|
|
136
|
+
beforeAll(function () {
|
|
137
|
+
;
|
|
138
|
+
Utils.enhancedUpdate.mockImplementation(utils.enhancedUpdate);
|
|
139
|
+
});
|
|
164
140
|
var renderUi = function () {
|
|
165
141
|
return (0, react_1.render)((0, jsx_runtime_1.jsx)(recoil_1.RecoilRoot, { initializeState: function (_a) {
|
|
166
142
|
var set = _a.set;
|
|
@@ -170,33 +146,62 @@ describe('Template Infomation Tab Component', function () {
|
|
|
170
146
|
it('renders without crashing', function () {
|
|
171
147
|
renderUi();
|
|
172
148
|
});
|
|
173
|
-
it('trigger add rows', function () {
|
|
174
|
-
var
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
149
|
+
it('trigger add rows', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
150
|
+
var addBtn;
|
|
151
|
+
return __generator(this, function (_a) {
|
|
152
|
+
switch (_a.label) {
|
|
153
|
+
case 0:
|
|
154
|
+
renderUi();
|
|
155
|
+
addBtn = react_1.screen.getByRole('button', { name: /button-add/i });
|
|
156
|
+
react_1.fireEvent.click(addBtn);
|
|
157
|
+
return [4 /*yield*/, (0, react_1.waitFor)(function () {
|
|
158
|
+
expect(react_1.screen.getAllByText('image')[0]).toBeInTheDocument();
|
|
159
|
+
})];
|
|
160
|
+
case 1:
|
|
161
|
+
_a.sent();
|
|
162
|
+
return [2 /*return*/];
|
|
163
|
+
}
|
|
164
|
+
});
|
|
165
|
+
}); });
|
|
166
|
+
it('trigger add Object Children', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
167
|
+
var addBtn;
|
|
168
|
+
return __generator(this, function (_a) {
|
|
169
|
+
switch (_a.label) {
|
|
170
|
+
case 0:
|
|
171
|
+
renderUi();
|
|
172
|
+
addBtn = react_1.screen.getAllByTitle('Common.Add');
|
|
173
|
+
addBtn.forEach(function (btn) {
|
|
174
|
+
react_1.fireEvent.click(btn);
|
|
175
|
+
});
|
|
176
|
+
return [4 /*yield*/, (0, react_1.waitFor)(function () {
|
|
177
|
+
expect(react_1.screen.getAllByText('image')[0]).toBeInTheDocument();
|
|
178
|
+
})];
|
|
179
|
+
case 1:
|
|
180
|
+
_a.sent();
|
|
181
|
+
return [2 /*return*/];
|
|
182
|
+
}
|
|
183
|
+
});
|
|
184
|
+
}); });
|
|
181
185
|
it('trigger edit cell', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
182
|
-
var
|
|
186
|
+
var container, labelNameInput, fieldTypeInput;
|
|
183
187
|
return __generator(this, function (_a) {
|
|
184
188
|
switch (_a.label) {
|
|
185
189
|
case 0:
|
|
186
|
-
updateSpy = jest.spyOn(props, 'handleSetParameter');
|
|
187
190
|
container = renderUi().container;
|
|
188
|
-
labelNameInput = container.querySelector("input[name=\"labelName
|
|
189
|
-
fieldTypeInput = container.querySelector("input[name=\"fieldType
|
|
191
|
+
labelNameInput = container.querySelector("input[name=\"labelName-148961-148967s\"]");
|
|
192
|
+
fieldTypeInput = container.querySelector("input[name=\"fieldType-148961-148967s\"]");
|
|
190
193
|
react_1.fireEvent.change(labelNameInput, {
|
|
191
194
|
target: { value: 'fieldInput-change' },
|
|
192
195
|
});
|
|
193
196
|
react_1.fireEvent.change(fieldTypeInput, {
|
|
194
197
|
target: { value: 'video' },
|
|
195
198
|
});
|
|
199
|
+
// expect(screen.getAllByText('color')[0]).toBeInTheDocument()
|
|
196
200
|
return [4 /*yield*/, (0, react_1.waitFor)(function () {
|
|
197
|
-
expect(
|
|
201
|
+
expect(Utils.enhancedUpdate).toBeCalledTimes(3);
|
|
198
202
|
})];
|
|
199
203
|
case 1:
|
|
204
|
+
// expect(screen.getAllByText('color')[0]).toBeInTheDocument()
|
|
200
205
|
_a.sent();
|
|
201
206
|
return [2 /*return*/];
|
|
202
207
|
}
|
|
@@ -205,16 +210,22 @@ describe('Template Infomation Tab Component', function () {
|
|
|
205
210
|
it('Remove row', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
206
211
|
var removeBtn;
|
|
207
212
|
return __generator(this, function (_a) {
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
213
|
+
switch (_a.label) {
|
|
214
|
+
case 0:
|
|
215
|
+
renderUi();
|
|
216
|
+
removeBtn = react_1.screen.getAllByRole('button', {
|
|
217
|
+
name: /Common.Delete/i,
|
|
218
|
+
});
|
|
219
|
+
removeBtn.forEach(function (btn) {
|
|
220
|
+
react_1.fireEvent.click(btn);
|
|
221
|
+
});
|
|
222
|
+
return [4 /*yield*/, (0, react_1.waitFor)(function () {
|
|
223
|
+
expect(Utils.enhancedUpdate).toBeCalledTimes(2);
|
|
224
|
+
})];
|
|
225
|
+
case 1:
|
|
226
|
+
_a.sent();
|
|
227
|
+
return [2 /*return*/];
|
|
228
|
+
}
|
|
218
229
|
});
|
|
219
230
|
}); });
|
|
220
231
|
});
|
|
@@ -1,15 +1,36 @@
|
|
|
1
|
+
/// <reference types="lodash" />
|
|
1
2
|
import { ITemplateParameter } from '../../Types';
|
|
2
3
|
import { DataObject } from '../../../../AWING';
|
|
3
|
-
export
|
|
4
|
+
export interface IFlatParameter {
|
|
5
|
+
parentFieldType: string | undefined;
|
|
6
|
+
parentId: string[];
|
|
7
|
+
parentFieldName: string[];
|
|
8
|
+
errField: boolean;
|
|
9
|
+
shouldRemove: boolean;
|
|
10
|
+
id: string;
|
|
11
|
+
templateId: string;
|
|
12
|
+
fieldName: string;
|
|
13
|
+
fieldType: string;
|
|
14
|
+
defaultValue: string | number | boolean | null;
|
|
15
|
+
labelName: string;
|
|
16
|
+
isRequired: boolean;
|
|
17
|
+
childrens: IFlatParameter[];
|
|
18
|
+
isAdvanced: boolean;
|
|
19
|
+
}
|
|
20
|
+
export declare const FIELDS: {
|
|
4
21
|
CHILDRENS: string;
|
|
5
22
|
REMOVE: string;
|
|
6
23
|
FIELD_TYPE: string;
|
|
24
|
+
FIELD_NAME: string;
|
|
7
25
|
IS_REQUIRED: string;
|
|
8
26
|
IS_ADVANCED: string;
|
|
27
|
+
LABEL_NAME: string;
|
|
28
|
+
DEFAULT_VALUE: string;
|
|
29
|
+
PARENT_ID: string;
|
|
9
30
|
};
|
|
10
31
|
export declare const removeFiledName: (templateParameters: ITemplateParameter[]) => ITemplateParameter[];
|
|
11
|
-
export declare const flattenParameter4Parent: (rows: DataObject[], parentFieldName?: string[]) => DataObject[];
|
|
12
|
-
export declare const flattenParameter: (parameters: DataObject[], parentId?: string[], parentFieldType?: string, parentFieldName?: string[]) =>
|
|
32
|
+
export declare const flattenParameter4Parent: ((rows: DataObject[], parentFieldName?: string[]) => DataObject[]) & import("lodash").MemoizedFunction;
|
|
33
|
+
export declare const flattenParameter: ((parameters: DataObject[], parentId?: string[], parentFieldType?: string, parentFieldName?: string[]) => IFlatParameter[]) & import("lodash").MemoizedFunction;
|
|
13
34
|
export declare const enhancedFindIndex: (rows: DataObject[], ids: string[]) => number[];
|
|
14
35
|
/**
|
|
15
36
|
* function enhancedUpdate
|
|
@@ -22,4 +43,7 @@ export declare const enhancedFindIndex: (rows: DataObject[], ids: string[]) => n
|
|
|
22
43
|
* @param defaultParam
|
|
23
44
|
*/
|
|
24
45
|
export declare const enhancedUpdate: (rows: DataObject[], ids: string[], field: string, value: any, defaultParam: ITemplateParameter) => void;
|
|
25
|
-
|
|
46
|
+
/**
|
|
47
|
+
* viết type là DataObject thôi nhưng type của nó là:
|
|
48
|
+
*/
|
|
49
|
+
export declare const getFieldName: ((row: IFlatParameter) => string) & import("lodash").MemoizedFunction;
|