phx-node 1.0.96 → 1.0.98
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/utils/email-render-to-HTML.d.ts +1 -1
- package/dist/lib/utils/email-render-to-HTML.js +17 -16
- package/dist/lib/utils/email-render-to-HTML.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -46,5 +46,5 @@ import { PHXConvertHeadersRequest } from "./lib/helper";
|
|
|
46
46
|
import { GetActualWorkingHoursService } from "./module/hrm-checkin/get-actual-working-hours.service";
|
|
47
47
|
import { DepartmentManagerService } from "./module/department-manager/department-manager.service";
|
|
48
48
|
import { PHXGetUserManagerByUserId } from "./module/department-manager/user-manager.service";
|
|
49
|
-
import { PHXEmailRenderToHTML } from "./lib/utils/email-render-to-HTML";
|
|
50
|
-
export { PHXNestModule, GetSchoolYearService, GetListActiveSchoolYearService, GetActiveSchoolYearAndNextYearService, GetListActiveSchoolYearAndNextYearService, GetListNextSchoolYearService, PHXGraphqlService, PHXGraphqlV2Service, ApiService, PHXStudentInfoService, PHXStudentInfoServiceV3, PHXStudentInfoServiceSystemV3, PHXDateHelpers, PHXGrpcClientService, PHXGrpcClientSystemService, GetActiveSchoolYearAndNextYearServiceV3, GetActiveSchoolYearAndNextYearServiceSystemV3, GetListActiveSchoolYearAndNextYearServiceV3, GetListActiveSchoolYearAndNextYearServiceSystemV3, GetListActiveSchoolYearServiceV3, GetListActiveSchoolYearServiceSystemV3, GetListNextSchoolYearServiceV3, GetListNextSchoolYearServiceSystemV3, GetSchoolYearServiceV3, GetSchoolYearServiceSystemV3, PHXDevToolDataService, PHXCronjobManagerService, PHXCloneCronjob, PHXConfigByHostNameService, runWithSentryCheckIn, PHXHostnameService, PHXEnvPublicService, PHXContextStorageService, PHXSettingFormulaPromotion, PHXSettingFormulaPromotionV2, PHXQueryListDetailFeeAdjustment, PHXQueryAdmissionTuition, PHXQueryListDetailFeeAdjustmentBM, PHXQueryAdmissionTuitionBM, PHXSchoolMonthSystemService, PHXSchoolMonthClientService, PHXNotificationByModuleService, PHXStatisticalNotificationByModuleService, GetPrevCurrentNextYearsService, GetPrevCurrentNextYearsServiceSystem, PHXTransactionContentService, PHXUserDevicesService, PHXConvertHeadersRequest, GetActualWorkingHoursService, DepartmentManagerService, PHXGetUserManagerByUserId, PHXEmailRenderToHTML, };
|
|
49
|
+
import { PHXEmailRenderToHTML, PHXAllowTags } from "./lib/utils/email-render-to-HTML";
|
|
50
|
+
export { PHXNestModule, GetSchoolYearService, GetListActiveSchoolYearService, GetActiveSchoolYearAndNextYearService, GetListActiveSchoolYearAndNextYearService, GetListNextSchoolYearService, PHXGraphqlService, PHXGraphqlV2Service, ApiService, PHXStudentInfoService, PHXStudentInfoServiceV3, PHXStudentInfoServiceSystemV3, PHXDateHelpers, PHXGrpcClientService, PHXGrpcClientSystemService, GetActiveSchoolYearAndNextYearServiceV3, GetActiveSchoolYearAndNextYearServiceSystemV3, GetListActiveSchoolYearAndNextYearServiceV3, GetListActiveSchoolYearAndNextYearServiceSystemV3, GetListActiveSchoolYearServiceV3, GetListActiveSchoolYearServiceSystemV3, GetListNextSchoolYearServiceV3, GetListNextSchoolYearServiceSystemV3, GetSchoolYearServiceV3, GetSchoolYearServiceSystemV3, PHXDevToolDataService, PHXCronjobManagerService, PHXCloneCronjob, PHXConfigByHostNameService, runWithSentryCheckIn, PHXHostnameService, PHXEnvPublicService, PHXContextStorageService, PHXSettingFormulaPromotion, PHXSettingFormulaPromotionV2, PHXQueryListDetailFeeAdjustment, PHXQueryAdmissionTuition, PHXQueryListDetailFeeAdjustmentBM, PHXQueryAdmissionTuitionBM, PHXSchoolMonthSystemService, PHXSchoolMonthClientService, PHXNotificationByModuleService, PHXStatisticalNotificationByModuleService, GetPrevCurrentNextYearsService, GetPrevCurrentNextYearsServiceSystem, PHXTransactionContentService, PHXUserDevicesService, PHXConvertHeadersRequest, GetActualWorkingHoursService, DepartmentManagerService, PHXGetUserManagerByUserId, PHXEmailRenderToHTML, PHXAllowTags, };
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DepartmentManagerService = exports.GetActualWorkingHoursService = exports.PHXConvertHeadersRequest = exports.PHXUserDevicesService = exports.PHXTransactionContentService = exports.GetPrevCurrentNextYearsServiceSystem = exports.GetPrevCurrentNextYearsService = exports.PHXStatisticalNotificationByModuleService = exports.PHXNotificationByModuleService = exports.PHXSchoolMonthClientService = exports.PHXSchoolMonthSystemService = exports.PHXQueryAdmissionTuitionBM = exports.PHXQueryListDetailFeeAdjustmentBM = exports.PHXQueryAdmissionTuition = exports.PHXQueryListDetailFeeAdjustment = exports.PHXSettingFormulaPromotionV2 = exports.PHXSettingFormulaPromotion = exports.PHXContextStorageService = exports.PHXEnvPublicService = exports.PHXHostnameService = exports.runWithSentryCheckIn = exports.PHXConfigByHostNameService = exports.PHXCloneCronjob = exports.PHXCronjobManagerService = exports.PHXDevToolDataService = exports.GetSchoolYearServiceSystemV3 = exports.GetSchoolYearServiceV3 = exports.GetListNextSchoolYearServiceSystemV3 = exports.GetListNextSchoolYearServiceV3 = exports.GetListActiveSchoolYearServiceSystemV3 = exports.GetListActiveSchoolYearServiceV3 = exports.GetListActiveSchoolYearAndNextYearServiceSystemV3 = exports.GetListActiveSchoolYearAndNextYearServiceV3 = exports.GetActiveSchoolYearAndNextYearServiceSystemV3 = exports.GetActiveSchoolYearAndNextYearServiceV3 = exports.PHXGrpcClientSystemService = exports.PHXGrpcClientService = exports.PHXDateHelpers = exports.PHXStudentInfoServiceSystemV3 = exports.PHXStudentInfoServiceV3 = exports.PHXStudentInfoService = exports.ApiService = exports.PHXGraphqlV2Service = exports.PHXGraphqlService = exports.GetListNextSchoolYearService = exports.GetListActiveSchoolYearAndNextYearService = exports.GetActiveSchoolYearAndNextYearService = exports.GetListActiveSchoolYearService = exports.GetSchoolYearService = exports.PHXNestModule = void 0;
|
|
4
|
-
exports.PHXEmailRenderToHTML = exports.PHXGetUserManagerByUserId = void 0;
|
|
4
|
+
exports.PHXAllowTags = exports.PHXEmailRenderToHTML = exports.PHXGetUserManagerByUserId = void 0;
|
|
5
5
|
const tuititon_formula_setting_v2_service_1 = require("./module/helpers-service/tuition-helper-service/tuititon-formula-setting-v2.service");
|
|
6
6
|
Object.defineProperty(exports, "PHXSettingFormulaPromotionV2", { enumerable: true, get: function () { return tuititon_formula_setting_v2_service_1.PHXSettingFormulaPromotionV2; } });
|
|
7
7
|
const config_by_hostname_service_1 = require("./module/cronjob-manager/config-by-hostname.service");
|
|
@@ -103,4 +103,5 @@ const user_manager_service_1 = require("./module/department-manager/user-manager
|
|
|
103
103
|
Object.defineProperty(exports, "PHXGetUserManagerByUserId", { enumerable: true, get: function () { return user_manager_service_1.PHXGetUserManagerByUserId; } });
|
|
104
104
|
const email_render_to_HTML_1 = require("./lib/utils/email-render-to-HTML");
|
|
105
105
|
Object.defineProperty(exports, "PHXEmailRenderToHTML", { enumerable: true, get: function () { return email_render_to_HTML_1.PHXEmailRenderToHTML; } });
|
|
106
|
+
Object.defineProperty(exports, "PHXAllowTags", { enumerable: true, get: function () { return email_render_to_HTML_1.PHXAllowTags; } });
|
|
106
107
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AAAA,6IAAmI;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const
|
|
1
|
+
export declare const PHXAllowTags: (html: string) => string;
|
|
2
2
|
export declare const PHXEmailRenderToHTML: (html: string, obj: Record<string, any>) => any;
|
|
@@ -1,40 +1,41 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PHXEmailRenderToHTML = exports.
|
|
3
|
+
exports.PHXEmailRenderToHTML = exports.PHXAllowTags = void 0;
|
|
4
4
|
const liquidjs_1 = require("liquidjs");
|
|
5
|
-
const
|
|
5
|
+
const PHXAllowTags = (html) => {
|
|
6
6
|
const allowedTags = ["p", "b", "i", "a", "br"];
|
|
7
7
|
const tagRegex = /<\/?([a-zA-Z0-9]+)(\s[^>]*)?>/g;
|
|
8
|
-
|
|
8
|
+
let match;
|
|
9
|
+
while ((match = tagRegex.exec(html)) !== null) {
|
|
10
|
+
const [_fullMatch, tagName, attrs] = match;
|
|
9
11
|
const lowerTag = tagName.toLowerCase();
|
|
10
12
|
if (!allowedTags.includes(lowerTag)) {
|
|
11
13
|
throw new Error(`Tag <${lowerTag}> is not allowed`);
|
|
12
14
|
}
|
|
13
|
-
if (
|
|
14
|
-
return `<${lowerTag}>`;
|
|
15
|
-
if (/class\s*=|style\s*=|on[a-z]+\s*=/i.test(attrs)) {
|
|
15
|
+
if (attrs && /class\s*=|style\s*=|on[a-z]+\s*=/i.test(attrs)) {
|
|
16
16
|
throw new Error(`Tag <${lowerTag}> contains forbidden attributes (class/style/event)`);
|
|
17
17
|
}
|
|
18
18
|
if (lowerTag === "a") {
|
|
19
|
-
const hrefMatch = attrs.match(/\s*href\s*=\s*(['"])(.*?)\1/i);
|
|
19
|
+
const hrefMatch = attrs === null || attrs === void 0 ? void 0 : attrs.match(/\s*href\s*=\s*(['"])(.*?)\1/i);
|
|
20
20
|
if (!hrefMatch) {
|
|
21
21
|
throw new Error(`<a> tag must have valid href`);
|
|
22
22
|
}
|
|
23
|
-
return `<a href="${hrefMatch[2]}">`;
|
|
24
23
|
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
24
|
+
if (attrs && lowerTag !== "a") {
|
|
25
|
+
const cleanedAttrs = attrs.trim();
|
|
26
|
+
if (cleanedAttrs) {
|
|
27
|
+
throw new Error(`Tag <${lowerTag}> should not have attributes`);
|
|
28
|
+
}
|
|
28
29
|
}
|
|
29
|
-
|
|
30
|
-
|
|
30
|
+
}
|
|
31
|
+
return html;
|
|
31
32
|
};
|
|
32
|
-
exports.
|
|
33
|
+
exports.PHXAllowTags = PHXAllowTags;
|
|
33
34
|
const PHXEmailRenderToHTML = (html, obj) => {
|
|
34
|
-
const htmlSanitize = (0, exports.
|
|
35
|
+
const htmlSanitize = (0, exports.PHXAllowTags)(html);
|
|
35
36
|
const validatedValue = {};
|
|
36
37
|
for (const [key, value] of Object.entries(obj)) {
|
|
37
|
-
validatedValue[key] = (0, exports.
|
|
38
|
+
validatedValue[key] = (0, exports.PHXAllowTags)(value);
|
|
38
39
|
}
|
|
39
40
|
const liquid = new liquidjs_1.Liquid({
|
|
40
41
|
strictVariables: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"email-render-to-HTML.js","sourceRoot":"","sources":["../../../src/lib/utils/email-render-to-HTML.ts"],"names":[],"mappings":";;;AAAA,uCAAkC;AAM3B,MAAM,
|
|
1
|
+
{"version":3,"file":"email-render-to-HTML.js","sourceRoot":"","sources":["../../../src/lib/utils/email-render-to-HTML.ts"],"names":[],"mappings":";;;AAAA,uCAAkC;AAM3B,MAAM,YAAY,GAAG,CAAC,IAAY,EAAU,EAAE;IACnD,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,gCAAgC,CAAC;IAElD,IAAI,KAA6B,CAAC;IAClC,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC9C,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;QAC3C,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAEvC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,QAAQ,QAAQ,kBAAkB,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,KAAK,IAAI,mCAAmC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7D,MAAM,IAAI,KAAK,CACb,QAAQ,QAAQ,qDAAqD,CACtE,CAAC;QACJ,CAAC;QACD,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;YACrB,MAAM,SAAS,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAC,8BAA8B,CAAC,CAAC;YAC/D,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;QACD,IAAI,KAAK,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;YAC9B,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;YAClC,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,IAAI,KAAK,CAAC,QAAQ,QAAQ,8BAA8B,CAAC,CAAC;YAClE,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAhCW,QAAA,YAAY,gBAgCvB;AAOK,MAAM,oBAAoB,GAAG,CAClC,IAAY,EACZ,GAAwB,EACxB,EAAE;IACF,MAAM,YAAY,GAAG,IAAA,oBAAY,EAAC,IAAI,CAAC,CAAC;IACxC,MAAM,cAAc,GAA2B,EAAE,CAAC;IAElD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/C,cAAc,CAAC,GAAG,CAAC,GAAG,IAAA,oBAAY,EAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,iBAAM,CAAC;QACxB,eAAe,EAAE,IAAI;QACrB,aAAa,EAAE,IAAI;KACpB,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC,kBAAkB,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;AACjE,CAAC,CAAC;AAhBW,QAAA,oBAAoB,wBAgB/B"}
|