awing-library 2.1.109-beta → 2.1.111-beta

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.
@@ -22,6 +22,42 @@ var __importStar = (this && this.__importStar) || function (mod) {
22
22
  __setModuleDefault(result, mod);
23
23
  return result;
24
24
  };
25
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
+ return new (P || (P = Promise))(function (resolve, reject) {
28
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
32
+ });
33
+ };
34
+ var __generator = (this && this.__generator) || function (thisArg, body) {
35
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
36
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
37
+ function verb(n) { return function (v) { return step([n, v]); }; }
38
+ function step(op) {
39
+ if (f) throw new TypeError("Generator is already executing.");
40
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
41
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
42
+ if (y = 0, t) op = [op[0] & 2, t.value];
43
+ switch (op[0]) {
44
+ case 0: case 1: t = op; break;
45
+ case 4: _.label++; return { value: op[1], done: false };
46
+ case 5: _.label++; y = op[1]; op = [0]; continue;
47
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
48
+ default:
49
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
50
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
51
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
52
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
53
+ if (t[2]) _.ops.pop();
54
+ _.trys.pop(); continue;
55
+ }
56
+ op = body.call(thisArg, _);
57
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
58
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
59
+ }
60
+ };
25
61
  var __importDefault = (this && this.__importDefault) || function (mod) {
26
62
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
63
  };
@@ -44,16 +80,20 @@ var Utils_1 = require("./Utils");
44
80
  var Helpers_1 = require("../../../Utils/Helpers");
45
81
  var lodash_1 = require("lodash");
46
82
  var Wrapper_1 = __importDefault(require("../../../AWING/HOC/Wrapper"));
83
+ var Context_2 = require("../../../Context");
47
84
  var CreateOrEdit = function (_a) {
48
85
  var type = _a.type;
49
86
  var t = (0, react_i18next_1.useTranslation)().t;
50
87
  var pageId = (0, react_router_dom_1.useParams)().pageId;
88
+ var na = (0, react_router_dom_1.useNavigate)();
89
+ var appHelper = (0, Context_2.useAwing)().appHelper;
51
90
  var _b = (0, Context_1.default)(), service = _b.service, pageCode = _b.pageCode;
52
91
  var _c = react_1.default.useState(false), loading = _c[0], setLoading = _c[1];
92
+ var _d = react_1.default.useState(true), isDeprecated = _d[0], setDeprecated = _d[1];
53
93
  var setDirectories = (0, recoil_1.useSetRecoilState)(Recoil_1.pageDirectoriesState);
54
94
  var formValid = (0, recoil_1.useRecoilValue)(Recoil_1.validForm);
55
95
  var pageChangedForm = (0, recoil_1.useRecoilValue)(Recoil_1.pageChangedFormState);
56
- var _d = (0, recoil_1.useRecoilState)(Recoil_1.pageRootState), pageRoot = _d[0], setPageRoot = _d[1];
96
+ var _e = (0, recoil_1.useRecoilState)(Recoil_1.pageRootState), pageRoot = _e[0], setPageRoot = _e[1];
57
97
  (0, react_1.useEffect)(function () {
58
98
  fetchDirectories();
59
99
  setPageRoot((0, immer_1.default)(function (draf) {
@@ -71,11 +111,31 @@ var CreateOrEdit = function (_a) {
71
111
  else {
72
112
  setLoading(true);
73
113
  service[type === enums_1.PathType.CLONE ? 'pagesClone' : 'pagesGet'](pageId)
74
- .then(Utils_1.updateStateByPageModel.bind({ setPageRoot: setPageRoot }))
114
+ .then(function (res) { return __awaiter(void 0, void 0, void 0, function () {
115
+ var isDeprecated;
116
+ return __generator(this, function (_a) {
117
+ switch (_a.label) {
118
+ case 0: return [4 /*yield*/, checkDeprecated(res.views.map(function (x) { return x.templateId; }))];
119
+ case 1:
120
+ isDeprecated = _a.sent();
121
+ setDeprecated(isDeprecated);
122
+ if (isDeprecated && type === enums_1.PathType.CLONE) {
123
+ na('..', { replace: true });
124
+ appHelper.snackbar('error', t('Page.DeprecatedTemplate'));
125
+ throw new Error(t('Page.DeprecatedTemplate'));
126
+ }
127
+ Utils_1.updateStateByPageModel.call({ setPageRoot: setPageRoot }, res);
128
+ return [2 /*return*/];
129
+ }
130
+ });
131
+ }); })
75
132
  .finally(function () { return setLoading(false); });
76
133
  }
77
134
  // eslint-disable-next-line react-hooks/exhaustive-deps
78
135
  }, []);
136
+ var checkDeprecated = function (templateIds) {
137
+ return Promise.all(templateIds.map(function (id) { return service.templatesGet(id); })).then(function (res) { return res.some(function (x) { return x.template.isDeprecated; }); });
138
+ };
79
139
  var fetchDirectories = function () {
80
140
  service
81
141
  .directoriesGetByObjectTypeCode(Enum_1.DirectoryRoot[pageCode === enums_1.PageCode.Lgn ? 'PageLogin' : 'PageWelcome'])
@@ -89,6 +149,10 @@ var CreateOrEdit = function (_a) {
89
149
  });
90
150
  };
91
151
  var handleSubmit = function () {
152
+ if (isDeprecated) {
153
+ appHelper.snackbar('error', t('Page.DeprecatedTemplate'));
154
+ return;
155
+ }
92
156
  var params = [pageRoot];
93
157
  if (type === enums_1.PathType.EDIT)
94
158
  params.unshift(pageId);
@@ -193,11 +193,11 @@ var CreateOrEdit = function () {
193
193
  return;
194
194
  }
195
195
  var data4Update = {
196
- template: __assign(__assign({}, templateData.template), { id: templateId }),
196
+ template: templateData.template,
197
197
  // eslint-disable-next-line no-sequences
198
198
  templateParameters: parameters.map(function (parameter) { return (
199
199
  // eslint-disable-next-line no-sequences
200
- delete parameter.childrens, __assign(__assign({}, parameter), { templateId: templateId })); }),
200
+ delete parameter.childrens, __assign(__assign({}, parameter), { templateId: templateId || templateData.template.id })); }),
201
201
  templateEvents: templateData.templateEvents
202
202
  };
203
203
  if (templateId) {
@@ -547,7 +547,8 @@
547
547
  "ErrorValidField": "View have fields that does not satisfy the validation code",
548
548
  "AdvanceOption": "Advance option",
549
549
  "PreviewTitle": "Preview (on mobile)",
550
- "PreviewLoadingNote": "Your preview is being generated and might take few minutes"
550
+ "PreviewLoadingNote": "Your preview is being generated and might take few minutes",
551
+ "DeprecatedTemplate": "This Page is using deprecated template!"
551
552
  },
552
553
  "Statistic": {
553
554
  "View": "View",
@@ -551,7 +551,8 @@
551
551
  "ErrorValidField": "View có trường không thỏa mãn validation code",
552
552
  "AdvanceOption": "Tùy chọn nâng cao",
553
553
  "PreviewTitle": "Bản xem thử (Giao diện mobile)",
554
- "PreviewLoadingNote": "Hệ thống đang xử lý bản xem thử, vui lòng đợi trong giây lát..."
554
+ "PreviewLoadingNote": "Hệ thống đang xử lý bản xem thử, vui lòng đợi trong giây lát...",
555
+ "DeprecatedTemplate": "Page sử dụng Template đã bị xóa hoặc không còn hỗ trợ"
555
556
  },
556
557
  "Statistic": {
557
558
  "View": "Số lượt",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "awing-library",
3
- "version": "2.1.109-beta",
3
+ "version": "2.1.111-beta",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",