awing-library 2.1.129-beta → 2.1.129

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 (217) hide show
  1. package/lib/ACM-AXN/Campaign/Container.js +52 -54
  2. package/lib/ACM-AXN/Campaign/Container.test.js +1 -3
  3. package/lib/ACM-AXN/Campaign/CreateOrEdit/Recoils.d.ts +8 -1
  4. package/lib/ACM-AXN/Campaign/CreateOrEdit/Recoils.js +27 -3
  5. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RowTable.d.ts +17 -0
  6. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RowTable.js +121 -0
  7. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RowTable.test.d.ts +1 -0
  8. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RowTable.test.js +219 -0
  9. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RunInBackground.d.ts +2 -0
  10. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RunInBackground.js +306 -0
  11. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RunInBackground.test.d.ts +1 -0
  12. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/RunInBackground.test.js +230 -0
  13. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/index.d.ts +1 -0
  14. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/index.js +123 -0
  15. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/index.test.d.ts +1 -0
  16. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabApprove/index.test.js +253 -0
  17. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabInfomation.js +2 -2
  18. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabPartner.d.ts +1 -1
  19. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabPartner.js +47 -78
  20. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/ChartWithType.d.ts +6 -1
  21. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/ChartWithType.js +3 -22
  22. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/Detail/ControlPanel.js +2 -1
  23. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/Detail/index.js +2 -3
  24. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/Utils.d.ts +22 -43
  25. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/Utils.js +321 -103
  26. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/component.js +1 -1
  27. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/container.d.ts +3 -0
  28. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Analytic/container.js +122 -58
  29. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/ChartFilter.d.ts +1 -1
  30. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/ChartFilter.js +46 -8
  31. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Customer/component.js +11 -8
  32. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Customer/container.js +13 -19
  33. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Event/Table.js +5 -1
  34. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Event/Util.d.ts +7 -0
  35. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Event/Util.js +98 -0
  36. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Event/component.js +3 -3
  37. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Event/container.js +35 -70
  38. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/SplitButtonExportType.d.ts +1 -0
  39. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/SplitButtonExportType.js +17 -4
  40. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Types.d.ts +26 -8
  41. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/Utils.js +4 -1
  42. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/common.d.ts +1 -0
  43. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/common.js +3 -2
  44. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/component.js +6 -2
  45. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/container.js +31 -32
  46. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AdList.js +5 -2
  47. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AdRow.js +2 -2
  48. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AddOrEditRule/AddOrEditRule.js +6 -0
  49. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AddOrEditRule/RuleForm/Authentication.d.ts +8 -0
  50. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AddOrEditRule/RuleForm/Authentication.js +47 -0
  51. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AddOrEditRule/RuleForm/LimitEvent.js +52 -6
  52. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AddOrEditRule/RuleForm/TargetOS/container.js +2 -2
  53. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AddOrEditRule/RuleForm/index.d.ts +1 -0
  54. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/AddOrEditRule/RuleForm/index.js +3 -1
  55. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/Advanced.d.ts +4 -3
  56. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/Advanced.js +13 -7
  57. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/EditAds.js +5 -5
  58. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/SubCampaignDetail.d.ts +1 -1
  59. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/SubCampaignDetail.js +75 -123
  60. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/SubCampaignDetail.test.js +3 -13
  61. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/SubCampaignList.js +45 -20
  62. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/atoms.d.ts +2 -0
  63. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/atoms.js +8 -3
  64. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/index.js +3 -2
  65. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabSubCampaign/useSearchPage.js +33 -8
  66. package/lib/ACM-AXN/Campaign/CreateOrEdit/index.d.ts +5 -1
  67. package/lib/ACM-AXN/Campaign/CreateOrEdit/index.js +176 -59
  68. package/lib/ACM-AXN/Campaign/Enum.d.ts +23 -4
  69. package/lib/ACM-AXN/Campaign/Enum.js +30 -10
  70. package/lib/ACM-AXN/Campaign/Types.d.ts +52 -6
  71. package/lib/ACM-AXN/Campaign/Utils.d.ts +5 -0
  72. package/lib/ACM-AXN/Campaign/Utils.js +29 -2
  73. package/lib/ACM-AXN/Campaign/index.js +2 -2
  74. package/lib/ACM-AXN/CampaignPlan/Container.js +21 -10
  75. package/lib/ACM-AXN/CampaignPlan/Container.test.d.ts +1 -1
  76. package/lib/ACM-AXN/CampaignPlan/Container.test.js +1 -2
  77. package/lib/ACM-AXN/CampaignPlan/Detail.js +5 -7
  78. package/lib/ACM-AXN/CampaignPlan/Detail.test.d.ts +1 -1
  79. package/lib/ACM-AXN/CampaignPlan/Detail.test.js +2 -3
  80. package/lib/ACM-AXN/CampaignPlan/Filter.js +11 -4
  81. package/lib/ACM-AXN/CampaignPlan/Filter.test.d.ts +1 -1
  82. package/lib/ACM-AXN/CampaignPlan/Filter.test.js +0 -1
  83. package/lib/ACM-AXN/CampaignPlan/Types.d.ts +6 -74
  84. package/lib/ACM-AXN/CampaignPlan/Types.js +1 -253
  85. package/lib/ACM-AXN/CampaignSchedule/Components/ControlPanel/Filter.js +14 -10
  86. package/lib/ACM-AXN/CampaignSchedule/Components/RowAdvance/component.js +7 -5
  87. package/lib/ACM-AXN/CampaignSchedule/DataConfig.js +4 -4
  88. package/lib/ACM-AXN/CampaignSchedule/DataConfigAXN.js +5 -4
  89. package/lib/ACM-AXN/CampaignSchedule/Enum.d.ts +1 -1
  90. package/lib/ACM-AXN/CampaignSchedule/Enum.js +1 -1
  91. package/lib/ACM-AXN/CampaignSchedule/Recoil/Atom.d.ts +1 -2
  92. package/lib/ACM-AXN/CampaignSchedule/Recoil/Atom.js +1 -5
  93. package/lib/ACM-AXN/Common/Constant.d.ts +3 -0
  94. package/lib/ACM-AXN/Common/Constant.js +2 -0
  95. package/lib/ACM-AXN/Common/Enum.d.ts +8 -3
  96. package/lib/ACM-AXN/Common/Enum.js +19 -4
  97. package/lib/ACM-AXN/GeoFencing/GoongMap/index.d.ts +8 -9
  98. package/lib/ACM-AXN/GeoFencing/component.js +7 -7
  99. package/lib/ACM-AXN/GeoFencing/interface.d.ts +1 -2
  100. package/lib/ACM-AXN/Notifications/NotificationPopover/Container.d.ts +0 -5
  101. package/lib/ACM-AXN/Notifications/NotificationPopover/Container.js +7 -90
  102. package/lib/ACM-AXN/Notifications/NotificationPopover/index.d.ts +0 -5
  103. package/lib/ACM-AXN/Notifications/Types.d.ts +2 -0
  104. package/lib/ACM-AXN/Page/Container.js +3 -3
  105. package/lib/ACM-AXN/Page/CreateOrEdit/ListenTemplate.d.ts +6 -0
  106. package/lib/ACM-AXN/Page/CreateOrEdit/ListenTemplate.js +63 -0
  107. package/lib/ACM-AXN/Page/CreateOrEdit/Recoil.d.ts +11 -1
  108. package/lib/ACM-AXN/Page/CreateOrEdit/Recoil.js +16 -1
  109. package/lib/ACM-AXN/Page/CreateOrEdit/TabInfo/Utils.js +1 -1
  110. package/lib/ACM-AXN/Page/CreateOrEdit/TabInfo/index.js +1 -0
  111. package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/Components/Panel.d.ts +1 -9
  112. package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/Components/Panel.js +0 -9
  113. package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/ViewContent.js +6 -9
  114. package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/ViewInfo.d.ts +2 -3
  115. package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/ViewInfo.js +40 -61
  116. package/lib/ACM-AXN/Page/CreateOrEdit/Tabview/index.js +26 -30
  117. package/lib/ACM-AXN/Page/CreateOrEdit/Utils.js +6 -8
  118. package/lib/ACM-AXN/Page/CreateOrEdit/index.js +5 -3
  119. package/lib/ACM-AXN/Page/enums.d.ts +5 -0
  120. package/lib/ACM-AXN/Page/enums.js +7 -1
  121. package/lib/ACM-AXN/Permission/Components/Styles.d.ts +1 -2
  122. package/lib/ACM-AXN/PlaceFilter/DataTable/component/index.js +2 -5
  123. package/lib/ACM-AXN/PlaceFilter/Input/component/index.js +1 -2
  124. package/lib/ACM-AXN/PlaceFilter/interface.d.ts +1 -0
  125. package/lib/ACM-AXN/ScheduleCompletionRate/Container.js +16 -16
  126. package/lib/ACM-AXN/ScheduleCompletionRate/DataSetConfig.d.ts +14 -9
  127. package/lib/ACM-AXN/ScheduleCompletionRate/DataSetConfig.js +19 -18
  128. package/lib/ACM-AXN/ScheduleCompletionRate/Detail/CompletionRate.js +16 -6
  129. package/lib/ACM-AXN/ScheduleCompletionRate/Detail/CompletionRateDate.js +17 -10
  130. package/lib/ACM-AXN/ScheduleCompletionRate/Filter.d.ts +2 -1
  131. package/lib/ACM-AXN/ScheduleCompletionRate/Filter.js +30 -51
  132. package/lib/ACM-AXN/ScheduleCompletionRate/Filter.test.js +1 -1
  133. package/lib/ACM-AXN/ScheduleCompletionRate/SearchCampaign.d.ts +2 -2
  134. package/lib/ACM-AXN/ScheduleCompletionRate/SearchCampaign.js +3 -9
  135. package/lib/ACM-AXN/ScheduleCompletionRate/Types.d.ts +16 -36
  136. package/lib/ACM-AXN/ScheduleCompletionRate/Utils.d.ts +5 -5
  137. package/lib/ACM-AXN/ScheduleCompletionRate/Utils.js +14 -11
  138. package/lib/ACM-AXN/Statistics/ControlPanel.js +16 -4
  139. package/lib/ACM-AXN/Statistics/Enums.d.ts +2 -1
  140. package/lib/ACM-AXN/Statistics/Enums.js +1 -0
  141. package/lib/ACM-AXN/StatisticsAudienceDemographic/Tabs/AgeRange.js +1 -0
  142. package/lib/ACM-AXN/TaskScheduler/CreateOrEdit.js +3 -3
  143. package/lib/ACM-AXN/Template/Container.js +1 -1
  144. package/lib/ACM-AXN/Template/CreateOrEdit/Recoils.d.ts +1 -0
  145. package/lib/ACM-AXN/Template/CreateOrEdit/Recoils.js +5 -1
  146. package/lib/ACM-AXN/Template/CreateOrEdit/Template/Parameter.d.ts +2 -2
  147. package/lib/ACM-AXN/Template/CreateOrEdit/Template/Parameter.js +56 -39
  148. package/lib/ACM-AXN/Template/CreateOrEdit/Template/Parameter.test.d.ts +1 -1
  149. package/lib/ACM-AXN/Template/CreateOrEdit/Template/Parameter.test.js +62 -51
  150. package/lib/ACM-AXN/Template/CreateOrEdit/Template/Utils.d.ts +28 -4
  151. package/lib/ACM-AXN/Template/CreateOrEdit/Template/Utils.js +43 -15
  152. package/lib/ACM-AXN/Template/CreateOrEdit/index.js +8 -4
  153. package/lib/ACM-AXN/Template/Import.js +6 -3
  154. package/lib/ACM-AXN/Template/Types.d.ts +9 -9
  155. package/lib/ACM-AXN/TransactionLog/Detail.js +1 -1
  156. package/lib/ACM-AXN/ViewTemplate/Preview.js +5 -6
  157. package/lib/ACM-AXN/ViewTemplate/TemplateField/Fields/BasicField/Utils.d.ts +18 -0
  158. package/lib/ACM-AXN/ViewTemplate/TemplateField/Fields/BasicField/Utils.js +170 -0
  159. package/lib/ACM-AXN/ViewTemplate/TemplateField/Fields/BasicField/index.js +46 -160
  160. package/lib/ACM-AXN/ViewTemplate/common.js +2 -3
  161. package/lib/ACM-AXN/ViewTemplate/container.js +23 -24
  162. package/lib/ACM-AXN/Wizard/CreateOrEdit/PageTemplate.d.ts +3 -1
  163. package/lib/ACM-AXN/Wizard/CreateOrEdit/PageTemplate.js +18 -28
  164. package/lib/ACM-AXN/Wizard/CreateOrEdit/PageTemplate.test.js +2 -0
  165. package/lib/ACM-AXN/Wizard/CreateOrEdit/RowTemplate.js +1 -1
  166. package/lib/ACM-AXN/Wizard/CreateOrEdit/index.js +17 -1
  167. package/lib/ACM-AXN/index.d.ts +1 -0
  168. package/lib/ACM-AXN/index.js +1 -0
  169. package/lib/AWING/AsyncAutocomplete/index.js +2 -2
  170. package/lib/AWING/BasicDataForm/BasicDataForm.js +9 -6
  171. package/lib/AWING/BasicDataForm/interface.d.ts +3 -0
  172. package/lib/AWING/Chart/BarLineComponent.js +29 -11
  173. package/lib/AWING/Chart/PieComponent.d.ts +3 -4
  174. package/lib/AWING/Chart/PieComponent.js +16 -16
  175. package/lib/AWING/Chart/Styles.js +51 -16
  176. package/lib/AWING/DataForm/DataInput.js +63 -20
  177. package/lib/AWING/DataForm/interface.d.ts +1 -0
  178. package/lib/AWING/DataGrid/index.js +8 -13
  179. package/lib/AWING/DateRangePicker/component.js +42 -23
  180. package/lib/AWING/DateRangePicker/interface.d.ts +1 -0
  181. package/lib/AWING/Form/useForm.js +3 -2
  182. package/lib/AWING/GoogleMap/GGMap.d.ts +3 -0
  183. package/lib/AWING/GoogleMap/GGMap.js +256 -0
  184. package/lib/AWING/GoogleMap/index.d.ts +4 -0
  185. package/lib/AWING/GoogleMap/index.js +41 -0
  186. package/lib/AWING/GoogleMap/interface.d.ts +21 -0
  187. package/lib/AWING/GoogleMap/interface.js +2 -0
  188. package/lib/AWING/GoogleMap/utils.d.ts +25 -0
  189. package/lib/AWING/GoogleMap/utils.js +135 -0
  190. package/lib/AWING/GroupTable/GroupTable.js +4 -5
  191. package/lib/AWING/GroupTable/component.d.ts +1 -0
  192. package/lib/AWING/GroupTable/component.js +2 -2
  193. package/lib/AWING/NumberFormat/index.d.ts +3 -1
  194. package/lib/AWING/NumberFormat/index.js +2 -2
  195. package/lib/AWING/PageManagement/PageManagement.js +2 -2
  196. package/lib/AWING/Pagination/index.js +10 -3
  197. package/lib/AWING/index.d.ts +1 -0
  198. package/lib/AWING/index.js +1 -0
  199. package/lib/AWING/ultis/validation.d.ts +1 -0
  200. package/lib/AWING/ultis/validation.js +21 -5
  201. package/lib/Commons/Components/ClassicDrawer.js +5 -4
  202. package/lib/Commons/Components/DeprecatedEnhancedDialog.js +1 -1
  203. package/lib/Commons/Hooks/usePath.js +3 -3
  204. package/lib/Utils/Helpers.d.ts +4 -2
  205. package/lib/Utils/Helpers.js +56 -7
  206. package/lib/i18n.js +14 -2
  207. package/lib/translate/en/translation.json +114 -71
  208. package/lib/translate/id/translation.json +870 -0
  209. package/lib/translate/ja/translation.json +870 -0
  210. package/lib/translate/th/translation.json +870 -0
  211. package/lib/translate/vi/translation.json +78 -35
  212. package/package.json +131 -126
  213. package/lib/ACM-AXN/Campaign/CreateOrEdit/TabStatistic/fakeCampaignData.json +0 -397
  214. package/lib/ACM-AXN/ScheduleCompletionRate/json.d.ts +0 -61
  215. package/lib/ACM-AXN/ScheduleCompletionRate/json.js +0 -268
  216. package/lib/ACM-AXN/ViewTemplate/TemplateField/Utils.d.ts +0 -5
  217. package/lib/ACM-AXN/ViewTemplate/TemplateField/Utils.js +0 -14
@@ -51,13 +51,16 @@ var ImportTemplate = function () {
51
51
  };
52
52
  var handleSubmit = function () {
53
53
  var directoryId = bussinessData.directoryId, id = bussinessData.id, name = bussinessData.name;
54
- return service.templatesImport(directoryId, id, name, {
54
+ return service.templatesImport(directoryId, id || '0', name, {
55
55
  data: tempFile,
56
56
  fileName: tempFile === null || tempFile === void 0 ? void 0 : tempFile.name,
57
57
  });
58
58
  };
59
- var handleChangeFormData = (0, react_1.useCallback)(function (obj) {
60
- setBussinessData(function (prev) { return (__assign(__assign(__assign(__assign({}, prev), { id: prev.id || '0' }), obj), { directoryId: (obj === null || obj === void 0 ? void 0 : obj.directoryId) || rootDirectoryId })); });
59
+ var handleChangeFormData = (0, react_1.useCallback)(function (obj, valid, key) {
60
+ setBussinessData(function (prev) {
61
+ var _a;
62
+ return (__assign(__assign({}, prev), (_a = {}, _a[key] = obj[key], _a.directoryId = (obj === null || obj === void 0 ? void 0 : obj.directoryId) || rootDirectoryId, _a)));
63
+ });
61
64
  }, [rootDirectoryId]);
62
65
  return ((0, jsx_runtime_1.jsxs)(ClassicDrawer_1.default, { title: t('TemplateManagement.ImportTemplate'), onSubmit: handleSubmit, disableButtonSubmit: !(tempFile === null || tempFile === void 0 ? void 0 : tempFile.name), confirmExit: true, childrenWrapperStyle: { padding: 0 }, children: [(0, jsx_runtime_1.jsx)(AWING_1.DataForm, { fields: [
63
66
  {
@@ -10,15 +10,15 @@ export interface ITemplateType {
10
10
  templateTypeCode?: string;
11
11
  }
12
12
  export interface ITemplateParameter {
13
- id?: string;
14
- templateId?: string;
15
- fieldName?: string;
16
- fieldType?: string;
17
- defaultValue?: string;
18
- labelName?: string;
19
- isRequired?: boolean;
20
- childrens?: ITemplateParameter[];
21
- isAdvanced?: boolean;
13
+ id: string;
14
+ templateId: string;
15
+ fieldName: string;
16
+ fieldType: string;
17
+ defaultValue: string | number | boolean | undefined;
18
+ labelName: string | undefined;
19
+ isRequired: boolean;
20
+ childrens: ITemplateParameter[];
21
+ isAdvanced: boolean;
22
22
  }
23
23
  export interface ITemplateEvent {
24
24
  id?: number;
@@ -92,7 +92,7 @@ var newStyles = {
92
92
  removedGutterBackground: '#ececec',
93
93
  },
94
94
  titleBlock: {
95
- fontFamily: "'AW-Roboto', sans-serif",
95
+ fontFamily: "'Roboto', sans-serif",
96
96
  fontSize: '12px',
97
97
  fontWeight: 'bold',
98
98
  },
@@ -43,17 +43,16 @@ var Preview = function (props) {
43
43
  var _a;
44
44
  var classes = useStyles();
45
45
  var t = (0, react_i18next_1.useTranslation)().t;
46
- var validStatus = props.validStatus, pagePath = props.pagePath, templateDatas = props.templateDatas,
47
- // domainId,
48
- configs = props.configs;
46
+ var validStatus = props.validStatus, pagePath = props.pagePath, templateDatas = props.templateDatas, domainId = props.domainId, configs = props.configs;
49
47
  var viewIndex = ((_a = templateDatas[0]) === null || _a === void 0 ? void 0 : _a.viewNumber) || -1;
50
48
  var formRef = react_1.default.useRef(null);
51
49
  var iframeSrc = (0, react_1.useMemo)(function () {
52
- var result = "".concat(configs.CAPTIVE_DOMAIN, "/").concat(configs.TEMPLATE_PREVIEW);
50
+ var result = "".concat(configs.CAPTIVE_DOMAIN, "/").concat(configs.TEMPLATE_PREVIEW, "?domainId=").concat(domainId);
53
51
  if (result.startsWith("http://"))
54
52
  result = result.replace("http://", "https://");
55
53
  return result;
56
- }, [configs.CAPTIVE_DOMAIN, configs.TEMPLATE_PREVIEW]);
54
+ }, [configs.CAPTIVE_DOMAIN, configs.TEMPLATE_PREVIEW, domainId]);
55
+ var iframeName = react_1.default.useMemo(function () { return "iframe-demo".concat(viewIndex); }, [viewIndex]);
57
56
  (0, react_1.useEffect)(function () {
58
57
  var handleFormdata = function (_a) {
59
58
  var formData = _a.formData;
@@ -87,6 +86,6 @@ var Preview = function (props) {
87
86
  }, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "body1", style: {
88
87
  fontWeight: "bold",
89
88
  textTransform: "uppercase",
90
- }, children: t("ViewTemplate.PreviewTitle") }), (0, jsx_runtime_1.jsx)(material_1.Tooltip, { title: t("Common.Refresh") || "", placement: "top", children: (0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)(material_1.IconButton, { onClick: function () { return formRef.current.submit(); }, "aria-label": "refresh", style: { float: "right" }, disabled: !validStatus, children: (0, jsx_runtime_1.jsx)(Refresh_1.default, {}) }) }) })] }), (0, jsx_runtime_1.jsx)("form", { action: iframeSrc, method: "post", target: "iframe-demo", ref: formRef }), (0, jsx_runtime_1.jsx)("iframe", { title: "iframe-demo-".concat(viewIndex), id: "iframe-demo", name: "iframe-demo", className: classes.root, width: "100%" })] }));
89
+ }, children: t("ViewTemplate.PreviewTitle") }), (0, jsx_runtime_1.jsx)(material_1.Tooltip, { title: t("Common.Refresh") || "", placement: "top", children: (0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsx)(material_1.IconButton, { onClick: function () { return formRef.current.submit(); }, "aria-label": "refresh", style: { float: "right" }, disabled: !validStatus, children: (0, jsx_runtime_1.jsx)(Refresh_1.default, {}) }) }) })] }), (0, jsx_runtime_1.jsx)("form", { action: iframeSrc, method: "post", target: iframeName, ref: formRef }), (0, jsx_runtime_1.jsx)("iframe", { title: iframeName, id: iframeName, name: iframeName, className: classes.root, width: "100%" })] }));
91
90
  };
92
91
  exports.default = Preview;
@@ -0,0 +1,18 @@
1
+ /// <reference types="lodash" />
2
+ import { Configs, FieldInfo } from "../../../../../ACM-AXN/ViewTemplate/interface";
3
+ export declare const getValidationParams: (templateDatas: FieldInfo[], pagePath: string, configs: Configs) => {
4
+ fieldValue: any;
5
+ id?: string | undefined;
6
+ defaultValue?: string | undefined;
7
+ fieldName: string;
8
+ fieldType: "object" | "color" | "html" | "textarea" | "video" | "image" | "list" | "checkbox" | "url" | "textfield" | "textfield_number" | "dropdownlist" | "checkboxlist";
9
+ isRequired: boolean;
10
+ labelName?: string | undefined;
11
+ pageId?: string | undefined;
12
+ templateId?: string | undefined;
13
+ viewNumber?: number | undefined;
14
+ childrens?: FieldInfo[] | undefined;
15
+ }[][];
16
+ export declare const runValidate: import("lodash").DebouncedFunc<(scriptValidate: string, fields: FieldInfo[], pagePath: string, notifyError: (errorMessage: string) => void, changeViewValidStatus: (status: boolean) => void, changeViewValidProcess: (processValue: number) => void, configs: Configs) => void>;
17
+ export declare const getAutoFieldParams: (templateDatas: FieldInfo[], fieldPath: string, pagePath: string, configs: Configs) => any[];
18
+ export declare const runAutoField: import("lodash").DebouncedFunc<(scriptAutoField: string, fields: FieldInfo[], fieldPath: string, pagePath: string, updateNewValue: (needUpdateFieldPath: string, newValue: any) => void, configs: Configs) => void>;
@@ -0,0 +1,170 @@
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 __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.runAutoField = exports.getAutoFieldParams = exports.runValidate = exports.getValidationParams = void 0;
18
+ var Enum_1 = require("../../../../../ACM-AXN/ViewTemplate/Enum");
19
+ var common_1 = require("../../../../../ACM-AXN/ViewTemplate/common");
20
+ var constant_1 = require("../../../../../ACM-AXN/ViewTemplate/constant");
21
+ var validation_1 = require("../../../../../AWING/ultis/validation");
22
+ var i18n_1 = __importDefault(require("../../../../../i18n"));
23
+ var lodash_1 = require("lodash");
24
+ var getValidationParams = function (templateDatas, pagePath, configs) {
25
+ var fields = templateDatas.map(function (dt) {
26
+ // Convert all video, image link
27
+ var fieldValue = dt.fieldValue;
28
+ if ([
29
+ Enum_1.TYPE_FIELD_TEMPLATE.IMAGE,
30
+ Enum_1.TYPE_FIELD_TEMPLATE.VIDEO,
31
+ Enum_1.TYPE_FIELD_TEMPLATE.OBJECT,
32
+ Enum_1.TYPE_FIELD_TEMPLATE.LIST,
33
+ ].includes(dt.fieldType)) {
34
+ var jsonValue = JSON.stringify(fieldValue);
35
+ if (jsonValue.includes(constant_1.ACM_TEMPLATE_PATH)) {
36
+ jsonValue = jsonValue.replaceAll('/' + constant_1.ACM_TEMPLATE_PATH, "".concat(configs.TEMPLATE_FILE_PATH, "/").concat(dt.templateId));
37
+ }
38
+ if (jsonValue.includes(configs.FILE_RELATIVE_PATH || '')) {
39
+ jsonValue = jsonValue.replaceAll(configs.FILE_RELATIVE_PATH || '', pagePath);
40
+ }
41
+ fieldValue = JSON.parse(jsonValue);
42
+ }
43
+ return __assign(__assign({}, dt), { fieldValue: fieldValue });
44
+ });
45
+ return [fields];
46
+ };
47
+ exports.getValidationParams = getValidationParams;
48
+ var nomalValidate = function (parmas) {
49
+ return new Promise(function (resolve, reject) {
50
+ var result = [];
51
+ parmas.flatMap(function (f) { return f; }).forEach(function (field) {
52
+ var errorObj = {
53
+ code: Enum_1.VALID_TEMPLATE_CODE.ERROR,
54
+ fieldName: field.labelName || field.fieldName,
55
+ errorMessage: i18n_1.default.t('Common.InvalidData'),
56
+ };
57
+ if (field.fieldValue)
58
+ switch (field.fieldType) {
59
+ case Enum_1.TYPE_FIELD_TEMPLATE.COLOR: {
60
+ if (!(0, validation_1.colorValid)(field.fieldValue)) {
61
+ result.push(errorObj);
62
+ }
63
+ break;
64
+ }
65
+ case Enum_1.TYPE_FIELD_TEMPLATE.URL: {
66
+ if (!(0, validation_1.urlValid)(field.fieldValue)) {
67
+ result.push(errorObj);
68
+ }
69
+ break;
70
+ }
71
+ default:
72
+ break;
73
+ }
74
+ });
75
+ resolve(result);
76
+ });
77
+ };
78
+ exports.runValidate = (0, lodash_1.debounce)(function (scriptValidate, fields, pagePath, notifyError, changeViewValidStatus, changeViewValidProcess, configs) {
79
+ changeViewValidProcess(Enum_1.VALIDATE_PROCESS_CODE.VALIDATING);
80
+ Promise.all([
81
+ scriptValidate
82
+ ? (0, common_1.runScript)((0, exports.getValidationParams)(fields, pagePath, configs), scriptValidate)
83
+ : Promise.resolve([]),
84
+ nomalValidate((0, exports.getValidationParams)(fields, pagePath, configs)),
85
+ ]).then(function (_a) {
86
+ var resultScript = _a[0], resultNormal = _a[1];
87
+ var result = Array.from(resultNormal).concat(resultScript);
88
+ if (result) {
89
+ var fieldsError_1 = [];
90
+ var newAnswer = result.map(function (validInfo) {
91
+ var _a;
92
+ if (validInfo.code === Enum_1.VALID_TEMPLATE_CODE.SUCCESS) {
93
+ return true;
94
+ }
95
+ else {
96
+ var displayName = ((_a = fields.find(function (dt) {
97
+ return validInfo.fieldName === dt.fieldName;
98
+ })) === null || _a === void 0 ? void 0 : _a.labelName) || validInfo.fieldName;
99
+ fieldsError_1.push("".concat(displayName).concat(validInfo.errorMessage
100
+ ? ": ".concat(validInfo.errorMessage)
101
+ : ''));
102
+ return false;
103
+ }
104
+ });
105
+ if (fieldsError_1.length > 0) {
106
+ notifyError(fieldsError_1.toString());
107
+ }
108
+ changeViewValidStatus(newAnswer.length === 0 || !newAnswer.includes(false));
109
+ }
110
+ changeViewValidProcess(Enum_1.VALIDATE_PROCESS_CODE.VALIDATED);
111
+ });
112
+ }, constant_1.DELAY_TIME_RUN_SCRIPT);
113
+ var getAutoFieldParams = function (templateDatas, fieldPath, pagePath, configs) {
114
+ var fields = templateDatas.map(function (dt) {
115
+ // Convert all video, image link
116
+ var fieldValue = dt.fieldValue;
117
+ if ([
118
+ Enum_1.TYPE_FIELD_TEMPLATE.IMAGE,
119
+ Enum_1.TYPE_FIELD_TEMPLATE.VIDEO,
120
+ Enum_1.TYPE_FIELD_TEMPLATE.OBJECT,
121
+ Enum_1.TYPE_FIELD_TEMPLATE.LIST,
122
+ ].includes(dt.fieldType)) {
123
+ var jsonValue = JSON.stringify(fieldValue);
124
+ if (jsonValue.includes(constant_1.ACM_TEMPLATE_PATH)) {
125
+ jsonValue = jsonValue.replaceAll('/' + constant_1.ACM_TEMPLATE_PATH, "".concat(configs.TEMPLATE_FILE_PATH, "/").concat(dt.templateId));
126
+ }
127
+ if (jsonValue.includes(configs.FILE_RELATIVE_PATH || '')) {
128
+ jsonValue = jsonValue.replaceAll(configs.FILE_RELATIVE_PATH || '', pagePath);
129
+ }
130
+ fieldValue = JSON.parse(jsonValue);
131
+ }
132
+ return __assign(__assign({}, dt), { fieldValue: fieldValue });
133
+ });
134
+ var keys = fieldPath.split('.');
135
+ var fieldChange = fields[Number(keys[1])];
136
+ return [fields, __assign(__assign({}, fieldChange), { changePath: fieldPath })];
137
+ };
138
+ exports.getAutoFieldParams = getAutoFieldParams;
139
+ exports.runAutoField = (0, lodash_1.debounce)(function (scriptAutoField, fields, fieldPath, pagePath, updateNewValue, configs) {
140
+ if (scriptAutoField) {
141
+ (0, common_1.runScript)((0, exports.getAutoFieldParams)(fields, fieldPath, pagePath, configs), scriptAutoField).then(function (result) {
142
+ if (result) {
143
+ result === null || result === void 0 ? void 0 : result.map(function (r) {
144
+ var _a;
145
+ var idx = fields.findIndex(function (f) { return f.fieldName === r.fieldName; });
146
+ if ([
147
+ Enum_1.TYPE_FIELD_TEMPLATE.IMAGE,
148
+ Enum_1.TYPE_FIELD_TEMPLATE.VIDEO,
149
+ Enum_1.TYPE_FIELD_TEMPLATE.OBJECT,
150
+ Enum_1.TYPE_FIELD_TEMPLATE.LIST,
151
+ ].includes(fields[idx].fieldType)) {
152
+ var jsonValue = JSON.stringify(r.newValue);
153
+ if (jsonValue.includes(pagePath)) {
154
+ jsonValue = jsonValue.replaceAll(pagePath, configs.FILE_RELATIVE_PATH || '');
155
+ }
156
+ if (configs.TEMPLATE_FILE_PATH &&
157
+ jsonValue.includes(configs.TEMPLATE_FILE_PATH)) {
158
+ var templatePath = "".concat(configs.TEMPLATE_FILE_PATH, "/").concat((_a = fields === null || fields === void 0 ? void 0 : fields[0]) === null || _a === void 0 ? void 0 : _a.templateId);
159
+ jsonValue = jsonValue.replaceAll(templatePath, "\"/".concat(constant_1.ACM_TEMPLATE_PATH));
160
+ }
161
+ r.newValue = JSON.parse(jsonValue);
162
+ }
163
+ var needUpdateFieldPath = "templateDatas.".concat(idx, ".fieldValue");
164
+ updateNewValue(needUpdateFieldPath, r.newValue);
165
+ return r;
166
+ });
167
+ }
168
+ });
169
+ }
170
+ }, constant_1.DELAY_TIME_RUN_SCRIPT);
@@ -17,16 +17,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  var jsx_runtime_1 = require("react/jsx-runtime");
18
18
  var material_1 = require("@mui/material");
19
19
  var styles_1 = require("@mui/styles");
20
- var ImageField_1 = __importDefault(require("./ImageField"));
21
- var VideoField_1 = __importDefault(require("./VideoField"));
22
- var MonacoEditor_1 = __importDefault(require("./MonacoEditor"));
23
- var common_1 = require("../../../common");
24
- var constant_1 = require("../../../constant");
25
- var Enum_1 = require("../../../Enum");
20
+ var validation_1 = require("../../../../../AWING/ultis/validation");
26
21
  var react_1 = require("react");
27
22
  var react_i18next_1 = require("react-i18next");
28
- var validation_1 = require("../../../../../AWING/ultis/validation");
29
- var debounce = require('lodash/debounce');
23
+ var Enum_1 = require("../../../Enum");
24
+ var ImageField_1 = __importDefault(require("./ImageField"));
25
+ var MonacoEditor_1 = __importDefault(require("./MonacoEditor"));
26
+ var Utils_1 = require("./Utils");
27
+ var VideoField_1 = __importDefault(require("./VideoField"));
30
28
  var useStyles = (0, styles_1.makeStyles)(function (theme) { return ({
31
29
  paper: {
32
30
  padding: '16px',
@@ -65,6 +63,7 @@ function BasicField(props) {
65
63
  register = hookControl.register, errors = hookControl.formState.errors, getValues = hookControl.getValues, setFormValue = hookControl.setFormValue;
66
64
  (0, react_1.useEffect)(function () {
67
65
  var isNotSubField = fieldPath.split('.').length === 3;
66
+ var timeOut;
68
67
  if (isNotSubField) {
69
68
  if (fieldType === Enum_1.TYPE_FIELD_TEMPLATE.CHECKBOX) {
70
69
  if (defaultValue === 'true' &&
@@ -77,13 +76,17 @@ function BasicField(props) {
77
76
  }
78
77
  else {
79
78
  if (defaultValue && !fieldValue) {
80
- setTimeout(function () {
79
+ timeOut = setTimeout(function () {
81
80
  setFormValue(fieldPath, defaultValue);
82
81
  onChange(fieldPath);
83
82
  }, 0);
84
83
  }
85
84
  }
86
85
  }
86
+ return function () {
87
+ if (timeOut)
88
+ clearTimeout(timeOut);
89
+ };
87
90
  // eslint-disable-next-line react-hooks/exhaustive-deps
88
91
  }, []);
89
92
  var handleChange = function (newValue) {
@@ -93,8 +96,8 @@ function BasicField(props) {
93
96
  if (scriptValidate) {
94
97
  onChangeValidateProcess(Enum_1.VALIDATE_PROCESS_CODE.NOT_VALIDATE);
95
98
  }
96
- runValidate(scriptValidate || '', fields, pagePath, onNotifyError, onChangeViewValid, onChangeValidateProcess, configs);
97
- runAutoField(scriptAutoField || '', fields, fieldPath, pagePath, function (needUpdateFieldPath, newValue) {
99
+ (0, Utils_1.runValidate)(scriptValidate || '', fields, pagePath, onNotifyError, onChangeViewValid, onChangeValidateProcess, configs);
100
+ (0, Utils_1.runAutoField)(scriptAutoField || '', fields, fieldPath, pagePath, function (needUpdateFieldPath, newValue) {
98
101
  setFormValue(needUpdateFieldPath, newValue);
99
102
  onChange(needUpdateFieldPath);
100
103
  }, configs);
@@ -102,12 +105,15 @@ function BasicField(props) {
102
105
  var renderField = function () {
103
106
  // const isError = !!getValueByPath(/*errors*/ {}, fieldPath)
104
107
  var isError = errors.includes(fieldPath);
105
- var field = register(fieldPath, __assign({ required: isRequired }, fieldType === Enum_1.TYPE_FIELD_TEMPLATE.URL && {
106
- onValidate: function (value) { return (0, validation_1.urlValid)(value); }
108
+ var field = register(fieldPath, __assign(__assign({ required: isRequired }, fieldType === Enum_1.TYPE_FIELD_TEMPLATE.URL && {
109
+ onValidate: validation_1.urlValid
110
+ }), fieldType === Enum_1.TYPE_FIELD_TEMPLATE.COLOR && {
111
+ onValidate: validation_1.colorValid
107
112
  }));
113
+ // onChangeViewValid(isError)
108
114
  switch (fieldType) {
115
+ // return renderNumberField(field, isError)
109
116
  case Enum_1.TYPE_FIELD_TEMPLATE.TEXT_FIELD_NUMBER:
110
- return renderTextField(field, isError);
111
117
  case Enum_1.TYPE_FIELD_TEMPLATE.TEXT_FIELD:
112
118
  case Enum_1.TYPE_FIELD_TEMPLATE.URL:
113
119
  return renderTextField(field, isError);
@@ -128,42 +134,35 @@ function BasicField(props) {
128
134
  default:
129
135
  return null;
130
136
  }
131
- // return (
132
- // <Controller
133
- // name={fieldPath}
134
- // {...register(fieldPath, { required: isRequired })}
135
- // ref={null}
136
- // control={control}
137
- // render={({ field }) => {
138
- // switch (fieldType) {
139
- // case TYPE_FIELD_TEMPLATE.TEXT_FIELD_NUMBER:
140
- // return renderTextField(field, isError)
141
- // case TYPE_FIELD_TEMPLATE.TEXT_FIELD:
142
- // return renderTextField(field, isError)
143
- // case TYPE_FIELD_TEMPLATE.TEXTAREA:
144
- // return renderTextField(field, isError)
145
- // case TYPE_FIELD_TEMPLATE.DROPDOWN_LIST:
146
- // return renderDropdownListField(field, isError)
147
- // case TYPE_FIELD_TEMPLATE.CHECKBOX:
148
- // return renderCheckboxField(field)
149
- // case TYPE_FIELD_TEMPLATE.COLOR:
150
- // return renderColorField(field, isError)
151
- // case TYPE_FIELD_TEMPLATE.IMAGE:
152
- // return renderImageOrVideoField(isError)
153
- // case TYPE_FIELD_TEMPLATE.VIDEO:
154
- // return renderImageOrVideoField(isError)
155
- // case TYPE_FIELD_TEMPLATE.HTML:
156
- // return renderHTMLField()
157
- // default:
158
- // return null
159
- // }
160
- // }}
161
- // ></Controller>
162
- // )
163
137
  };
138
+ // const renderNumberField = React.useCallback((field: any, isError: boolean) => {
139
+ // return (
140
+ // <NumberFormat
141
+ // {...field}
142
+ // inputProps={{ min: 0 }}
143
+ // className={classes.text}
144
+ // required={isRequired}
145
+ // min={0}
146
+ // fullWidth
147
+ // variant="standard"
148
+ // label={labelName || fieldName}
149
+ // onChange={(e) => {
150
+ // let newValue = Number(e.target.value)
151
+ // console.log('newValue', newValue)
152
+ // handleChange(newValue)
153
+ // }}
154
+ // error={isError}
155
+ // helperText={isError ? t('Common.Required') : ''}
156
+ // />
157
+ // )
158
+ // // eslint-disable-next-line react-hooks/exhaustive-deps
159
+ // }, [classes, fieldName, isRequired, labelName, t])
164
160
  var renderTextField = function (field, isError) {
165
161
  return ((0, jsx_runtime_1.jsx)(material_1.TextField, __assign({}, field, { className: classes.text, required: isRequired, fullWidth: true }, (fieldType === Enum_1.TYPE_FIELD_TEMPLATE.TEXT_FIELD_NUMBER
166
- ? { type: 'number' }
162
+ ? { inputProps: {
163
+ min: 0,
164
+ type: 'number',
165
+ } }
167
166
  : {}), (fieldType === Enum_1.TYPE_FIELD_TEMPLATE.TEXTAREA
168
167
  ? { multiline: true, rows: 4 }
169
168
  : {}), { variant: "standard", label: labelName || fieldName, onChange: function (e) {
@@ -240,116 +239,3 @@ function BasicField(props) {
240
239
  return renderField();
241
240
  }
242
241
  exports.default = BasicField;
243
- var getValidationParams = function (templateDatas, pagePath, configs) {
244
- var fields = templateDatas.map(function (dt) {
245
- // Convert all video, image link
246
- var fieldValue = dt.fieldValue;
247
- if ([
248
- Enum_1.TYPE_FIELD_TEMPLATE.IMAGE,
249
- Enum_1.TYPE_FIELD_TEMPLATE.VIDEO,
250
- Enum_1.TYPE_FIELD_TEMPLATE.OBJECT,
251
- Enum_1.TYPE_FIELD_TEMPLATE.LIST,
252
- ].includes(dt.fieldType)) {
253
- var jsonValue = JSON.stringify(fieldValue);
254
- if (jsonValue.includes(constant_1.ACM_TEMPLATE_PATH)) {
255
- jsonValue = jsonValue.replaceAll('/' + constant_1.ACM_TEMPLATE_PATH, "".concat(configs.TEMPLATE_FILE_PATH, "/").concat(dt.templateId));
256
- }
257
- if (jsonValue.includes(configs.FILE_RELATIVE_PATH || '')) {
258
- jsonValue = jsonValue.replaceAll(configs.FILE_RELATIVE_PATH || '', pagePath);
259
- }
260
- fieldValue = JSON.parse(jsonValue);
261
- }
262
- return __assign(__assign({}, dt), { fieldValue: fieldValue });
263
- });
264
- return [fields];
265
- };
266
- var runValidate = debounce(function (scriptValidate, fields, pagePath, notifyError, changeViewValidStatus, changeViewValidProcess, configs) {
267
- if (scriptValidate) {
268
- changeViewValidProcess(Enum_1.VALIDATE_PROCESS_CODE.VALIDATING);
269
- var params = getValidationParams(fields, pagePath, configs);
270
- (0, common_1.runScript)(
271
- // getValidationParams(fields, pagePath, configs),
272
- params, scriptValidate).then(function (result) {
273
- if (result) {
274
- var fieldsError_1 = [];
275
- var newAnswer = result.map(function (validInfo) {
276
- var _a;
277
- if (validInfo.code === Enum_1.VALID_TEMPLATE_CODE.SUCCESS) {
278
- return true;
279
- }
280
- else {
281
- var displayName = ((_a = fields.find(function (dt) {
282
- return validInfo.fieldName === dt.fieldName;
283
- })) === null || _a === void 0 ? void 0 : _a.labelName) || validInfo.fieldName;
284
- fieldsError_1.push("".concat(displayName).concat(validInfo.errorMessage
285
- ? ": ".concat(validInfo.errorMessage)
286
- : ''));
287
- return false;
288
- }
289
- });
290
- if (fieldsError_1.length > 0) {
291
- notifyError(fieldsError_1.toString());
292
- }
293
- changeViewValidStatus(newAnswer.length === 0 || !newAnswer.includes(false));
294
- }
295
- changeViewValidProcess(Enum_1.VALIDATE_PROCESS_CODE.VALIDATED);
296
- });
297
- }
298
- }, constant_1.DELAY_TIME_RUN_SCRIPT);
299
- var getAutoFieldParams = function (templateDatas, fieldPath, pagePath, configs) {
300
- var fields = templateDatas.map(function (dt) {
301
- // Convert all video, image link
302
- var fieldValue = dt.fieldValue;
303
- if ([
304
- Enum_1.TYPE_FIELD_TEMPLATE.IMAGE,
305
- Enum_1.TYPE_FIELD_TEMPLATE.VIDEO,
306
- Enum_1.TYPE_FIELD_TEMPLATE.OBJECT,
307
- Enum_1.TYPE_FIELD_TEMPLATE.LIST,
308
- ].includes(dt.fieldType)) {
309
- var jsonValue = JSON.stringify(fieldValue);
310
- if (jsonValue.includes(constant_1.ACM_TEMPLATE_PATH)) {
311
- jsonValue = jsonValue.replaceAll('/' + constant_1.ACM_TEMPLATE_PATH, "".concat(configs.TEMPLATE_FILE_PATH, "/").concat(dt.templateId));
312
- }
313
- if (jsonValue.includes(configs.FILE_RELATIVE_PATH || '')) {
314
- jsonValue = jsonValue.replaceAll(configs.FILE_RELATIVE_PATH || '', pagePath);
315
- }
316
- fieldValue = JSON.parse(jsonValue);
317
- }
318
- return __assign(__assign({}, dt), { fieldValue: fieldValue });
319
- });
320
- var keys = fieldPath.split('.');
321
- var fieldChange = fields[Number(keys[1])];
322
- return [fields, __assign(__assign({}, fieldChange), { changePath: fieldPath })];
323
- };
324
- var runAutoField = debounce(function (scriptAutoField, fields, fieldPath, pagePath, updateNewValue, configs) {
325
- if (scriptAutoField) {
326
- (0, common_1.runScript)(getAutoFieldParams(fields, fieldPath, pagePath, configs), scriptAutoField).then(function (result) {
327
- if (result) {
328
- result === null || result === void 0 ? void 0 : result.map(function (r) {
329
- var _a;
330
- var idx = fields.findIndex(function (f) { return f.fieldName === r.fieldName; });
331
- if ([
332
- Enum_1.TYPE_FIELD_TEMPLATE.IMAGE,
333
- Enum_1.TYPE_FIELD_TEMPLATE.VIDEO,
334
- Enum_1.TYPE_FIELD_TEMPLATE.OBJECT,
335
- Enum_1.TYPE_FIELD_TEMPLATE.LIST,
336
- ].includes(fields[idx].fieldType)) {
337
- var jsonValue = JSON.stringify(r.newValue);
338
- if (jsonValue.includes(pagePath)) {
339
- jsonValue = jsonValue.replaceAll(pagePath, configs.FILE_RELATIVE_PATH || '');
340
- }
341
- if (configs.TEMPLATE_FILE_PATH &&
342
- jsonValue.includes(configs.TEMPLATE_FILE_PATH)) {
343
- var templatePath = "".concat(configs.TEMPLATE_FILE_PATH, "/").concat((_a = fields === null || fields === void 0 ? void 0 : fields[0]) === null || _a === void 0 ? void 0 : _a.templateId);
344
- jsonValue = jsonValue.replaceAll(templatePath, "\"/".concat(constant_1.ACM_TEMPLATE_PATH));
345
- }
346
- r.newValue = JSON.parse(jsonValue);
347
- }
348
- var needUpdateFieldPath = "templateDatas.".concat(idx, ".fieldValue");
349
- updateNewValue(needUpdateFieldPath, r.newValue);
350
- return r;
351
- });
352
- }
353
- });
354
- }
355
- }, constant_1.DELAY_TIME_RUN_SCRIPT);
@@ -58,12 +58,11 @@ var runScript = function (params, script) {
58
58
  };
59
59
  exports.runScript = runScript;
60
60
  var convertRelativeLink = function (link, pagePath, templateId, configs) {
61
- var isTemplatePath = (link === null || link === void 0 ? void 0 : link.includes(constant_1.ACM_TEMPLATE_PATH)) || (link === null || link === void 0 ? void 0 : link.includes(constant_1.ACM_PAGE_PATH));
61
+ var isTemplatePath = link === null || link === void 0 ? void 0 : link.includes(constant_1.ACM_TEMPLATE_PATH);
62
62
  if (isTemplatePath) {
63
63
  return "".concat(configs.TEMPLATE_FILE_PATH, "/").concat(templateId, "/").concat(link.split("/")[link.split("/").length - 1]);
64
64
  }
65
- return link;
66
- // return `${pagePath}/${link.split("/")[link.split("/").length - 1]}` || "";
65
+ return (link === null || link === void 0 ? void 0 : link.includes(constant_1.ACM_PAGE_PATH)) ? "".concat(pagePath, "/").concat(link.split("/")[link.split("/").length - 1]) || "" : link;
67
66
  };
68
67
  exports.convertRelativeLink = convertRelativeLink;
69
68
  var generateRandomInteger = function (max) {
@@ -60,10 +60,6 @@ function ViewTemplate(_a) {
60
60
  control: control,
61
61
  name: "templateDatas",
62
62
  }).fields;
63
- // const { fields } = useFieldArray({
64
- // control,
65
- // name: "templateDatas",
66
- // });
67
63
  (0, react_1.useEffect)(function () {
68
64
  var language = localStorage.getItem("i18nextLng");
69
65
  i18n_1.default.changeLanguage(language || "vi");
@@ -89,7 +85,7 @@ function ViewTemplate(_a) {
89
85
  return ((0, jsx_runtime_1.jsxs)(material_1.Grid, { container: true, spacing: 4, children: [(0, jsx_runtime_1.jsxs)(material_1.Grid, { item: true, xs: enablePreview ? 8 : 12, children: [templateLabelName && ((0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "body1", style: {
90
86
  fontWeight: "bold",
91
87
  textTransform: "uppercase",
92
- }, children: templateLabelName })), fields && renderFields(fields, false), (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)("div", { id: "advance-option", style: {
88
+ }, children: templateLabelName })), fields && renderFields(fields, false), enablePreview && ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)("div", { id: "advance-option", style: {
93
89
  display: "flex",
94
90
  flexDirection: "row",
95
91
  justifyContent: "space-between",
@@ -97,7 +93,13 @@ function ViewTemplate(_a) {
97
93
  cursor: "pointer",
98
94
  }, onClick: function () {
99
95
  setAdvanceOptionExpand(!advanceOptionExpand);
100
- }, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { style: { fontWeight: "bold" }, children: t("ViewTemplate.AdvanceOption") }), (0, jsx_runtime_1.jsx)(material_1.IconButton, { children: advanceOptionExpand ? ((0, jsx_runtime_1.jsx)(icons_material_1.ExpandLess, {})) : ((0, jsx_runtime_1.jsx)(icons_material_1.ExpandMore, {})) })] }), advanceOptionExpand && ((0, jsx_runtime_1.jsxs)(material_1.Grid, { container: true, children: [fields && advanceFields.length > 0 && renderFields(fields, true), (0, jsx_runtime_1.jsx)(Event_1.default, __assign({}, props))] }))] })] }), enablePreview && ((0, jsx_runtime_1.jsxs)(material_1.Grid, { item: true, xs: 4, children: [(0, jsx_runtime_1.jsx)(Preview_1.default, { domainId: domainId || "", validStatus: validStatus, configs: CONFIGS, pagePath: pagePath, templateDatas: templateDatas }), (0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "caption", children: t("ViewTemplate.PreviewLoadingNote") })] }))] }));
96
+ }, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { style: { fontWeight: "bold" }, children: t("ViewTemplate.AdvanceOption") }), (0, jsx_runtime_1.jsx)(material_1.IconButton, { children: advanceOptionExpand ? ((0, jsx_runtime_1.jsx)(icons_material_1.ExpandLess, {})) : ((0, jsx_runtime_1.jsx)(icons_material_1.ExpandMore, {})) })] }), (0, jsx_runtime_1.jsxs)(material_1.Grid, { container: true, sx: {
97
+ transition: "all 3s",
98
+ }, style: advanceOptionExpand ? {
99
+ display: "block",
100
+ } : {
101
+ display: "none",
102
+ }, children: [fields && advanceFields.length > 0 && renderFields(fields, true), (0, jsx_runtime_1.jsx)(Event_1.default, __assign({}, props))] })] }))] }), enablePreview && ((0, jsx_runtime_1.jsxs)(material_1.Grid, { item: true, xs: 4, children: [(0, jsx_runtime_1.jsx)(Preview_1.default, { domainId: domainId || "", validStatus: validStatus, configs: CONFIGS, pagePath: pagePath, templateDatas: templateDatas }), (0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "caption", children: t("ViewTemplate.PreviewLoadingNote") })] }))] }));
101
103
  }
102
104
  exports.default = ViewTemplate;
103
105
  var getChilds = function (fields, fieldInfo) {
@@ -117,21 +119,18 @@ var addChilds = function (fields, fieldInfo) {
117
119
  }
118
120
  return result;
119
121
  };
120
- var convertToTreeData = function (data) {
121
- var treeData = data
122
- .map(function (item) { return addChilds(data, item); })
123
- .filter(function (item) { return !item.fieldName.includes("."); })
124
- .map(function (item) {
125
- if ([Enum_1.TYPE_FIELD_TEMPLATE.LIST, Enum_1.TYPE_FIELD_TEMPLATE.OBJECT].includes(item.fieldType)) {
126
- return __assign(__assign({}, item), { fieldValue: item.fieldValue && (0, common_1.isJSON)(item.fieldValue)
127
- ? JSON.parse(item.fieldValue)
128
- : item.fieldType === Enum_1.TYPE_FIELD_TEMPLATE.LIST
129
- ? []
130
- : {} });
131
- }
132
- else {
133
- return item;
134
- }
135
- });
136
- return treeData;
137
- };
122
+ var convertToTreeData = function (data) { return data
123
+ .map(function (item) { return addChilds(data, item); })
124
+ .filter(function (item) { return !item.fieldName.includes("."); })
125
+ .map(function (item) {
126
+ if ([Enum_1.TYPE_FIELD_TEMPLATE.LIST, Enum_1.TYPE_FIELD_TEMPLATE.OBJECT].includes(item.fieldType)) {
127
+ return __assign(__assign({}, item), { fieldValue: item.fieldValue && (0, common_1.isJSON)(item.fieldValue)
128
+ ? JSON.parse(item.fieldValue)
129
+ : item.fieldType === Enum_1.TYPE_FIELD_TEMPLATE.LIST
130
+ ? []
131
+ : {} });
132
+ }
133
+ else {
134
+ return item;
135
+ }
136
+ }); };
@@ -1,7 +1,9 @@
1
1
  /// <reference types="react" />
2
- import { IWizardTemplate } from '../Types';
2
+ import { Directory, TemplateType, IWizardTemplate } from '../Types';
3
3
  interface PropsPageTemplate {
4
4
  pageCodeValue: number;
5
+ directories: Directory[];
6
+ templateTypes: TemplateType[];
5
7
  wizardTemplates: IWizardTemplate[];
6
8
  onConfirmExit: () => void;
7
9
  onChange: (wizardNew: object) => void;