@lokalise/polyglot-sdk 17.0.1 → 17.0.3
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 +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/sdk/helpers/htmlEscaping.d.ts +3 -0
- package/dist/sdk/helpers/htmlEscaping.js +26 -0
- package/dist/sdk/helpers/htmlEscaping.js.map +1 -0
- package/dist/sdk/helpers/isEnumValue.d.ts +1 -0
- package/dist/sdk/helpers/isEnumValue.js +8 -0
- package/dist/sdk/helpers/isEnumValue.js.map +1 -0
- package/dist/sdk/validation/isSegmentUnderLengthLimit.js +3 -1
- package/dist/sdk/validation/isSegmentUnderLengthLimit.js.map +1 -1
- package/package.json +3 -1
package/dist/index.d.ts
CHANGED
|
@@ -18,5 +18,6 @@ export * from './sdk/schemas/translation/translateTextSegmentSchemas';
|
|
|
18
18
|
export * from './sdk/schemas/translation/sharedSchemas';
|
|
19
19
|
export { isSegmentUnderLengthLimit, isSegmentUnderLengthLimit as isSegmentExceedingLengthLimit, } from './sdk/validation/isSegmentUnderLengthLimit';
|
|
20
20
|
export { getRequestSizeLimit, isRequestSizeUnderLimit } from './sdk/validation/requestSizeLimit';
|
|
21
|
+
export * from './sdk/helpers/htmlEscaping';
|
|
21
22
|
export * from './sdk/helpers/nonTranslatableContentHelper';
|
|
22
23
|
export * from './sdk/helpers/nonTranslatableContentWrappers';
|
package/dist/index.js
CHANGED
|
@@ -29,6 +29,7 @@ Object.defineProperty(exports, "isSegmentExceedingLengthLimit", { enumerable: tr
|
|
|
29
29
|
var requestSizeLimit_1 = require("./sdk/validation/requestSizeLimit");
|
|
30
30
|
Object.defineProperty(exports, "getRequestSizeLimit", { enumerable: true, get: function () { return requestSizeLimit_1.getRequestSizeLimit; } });
|
|
31
31
|
Object.defineProperty(exports, "isRequestSizeUnderLimit", { enumerable: true, get: function () { return requestSizeLimit_1.isRequestSizeUnderLimit; } });
|
|
32
|
+
tslib_1.__exportStar(require("./sdk/helpers/htmlEscaping"), exports);
|
|
32
33
|
tslib_1.__exportStar(require("./sdk/helpers/nonTranslatableContentHelper"), exports);
|
|
33
34
|
tslib_1.__exportStar(require("./sdk/helpers/nonTranslatableContentWrappers"), exports);
|
|
34
35
|
//# 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,uDAAqD;AAA5C,gHAAA,cAAc,OAAA;AACvB,4DAA0D;AAAjD,8GAAA,aAAa,OAAA;AAGtB,mFAAwD;AAExD,6EAAkD;AAClD,4EAAiD;AACjD,4FAGuD;AAFrD,uIAAA,0BAA0B,OAAA;AAC1B,mIAAA,sBAAsB,OAAA;AAYxB,iEAAsE;AAA7D,qHAAA,oBAAoB,OAAA;AAC7B,4EAAiD;AACjD,2EAAgD;AAChD,6EAAkD;AAClD,qFAA0D;AAC1D,uFAA4D;AAC5D,yFAA8D;AAC9D,0FAA+D;AAC/D,gGAAqE;AACrE,kFAAuD;AAEvD,wFAGmD;AAFjD,sIAAA,yBAAyB,OAAA;AACzB,0IAAA,yBAAyB,OAAiC;AAE5D,sEAAgG;AAAvF,uHAAA,mBAAmB,OAAA;AAAE,2HAAA,uBAAuB,OAAA;AAErD,qFAA0D;AAC1D,uFAA4D"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;AAAA,uDAAqD;AAA5C,gHAAA,cAAc,OAAA;AACvB,4DAA0D;AAAjD,8GAAA,aAAa,OAAA;AAGtB,mFAAwD;AAExD,6EAAkD;AAClD,4EAAiD;AACjD,4FAGuD;AAFrD,uIAAA,0BAA0B,OAAA;AAC1B,mIAAA,sBAAsB,OAAA;AAYxB,iEAAsE;AAA7D,qHAAA,oBAAoB,OAAA;AAC7B,4EAAiD;AACjD,2EAAgD;AAChD,6EAAkD;AAClD,qFAA0D;AAC1D,uFAA4D;AAC5D,yFAA8D;AAC9D,0FAA+D;AAC/D,gGAAqE;AACrE,kFAAuD;AAEvD,wFAGmD;AAFjD,sIAAA,yBAAyB,OAAA;AACzB,0IAAA,yBAAyB,OAAiC;AAE5D,sEAAgG;AAAvF,uHAAA,mBAAmB,OAAA;AAAE,2HAAA,uBAAuB,OAAA;AAErD,qEAA0C;AAC1C,qFAA0D;AAC1D,uFAA4D"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { type IntegrationEngineEnum } from '../schemas/common/commonSchemas';
|
|
2
|
+
export declare const handleHtmlEscape: (text: string, integration?: IntegrationEngineEnum) => string;
|
|
3
|
+
export declare const handleHtmlUnescape: (text: string, integration?: IntegrationEngineEnum) => string;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.handleHtmlUnescape = exports.handleHtmlEscape = void 0;
|
|
4
|
+
const html_escaper_1 = require("html-escaper");
|
|
5
|
+
const commonSchemas_1 = require("../schemas/common/commonSchemas");
|
|
6
|
+
const isEnumValue_1 = require("./isEnumValue");
|
|
7
|
+
const isHtmlEscapingNeededByMtIntegration = {
|
|
8
|
+
[commonSchemas_1.MtIntegrationEngineEnum.DEEPL]: false,
|
|
9
|
+
[commonSchemas_1.MtIntegrationEngineEnum.GOOGLE_TRANSLATE]: true,
|
|
10
|
+
[commonSchemas_1.MtIntegrationEngineEnum.MICROSOFT_TRANSLATOR]: true,
|
|
11
|
+
};
|
|
12
|
+
const handleHtmlEscape = (text, integration) => {
|
|
13
|
+
if (!integration || !(0, isEnumValue_1.isEnumValue)(commonSchemas_1.MtIntegrationEngineEnum, integration)) {
|
|
14
|
+
return text;
|
|
15
|
+
}
|
|
16
|
+
return isHtmlEscapingNeededByMtIntegration[integration] ? (0, html_escaper_1.escape)(text) : text;
|
|
17
|
+
};
|
|
18
|
+
exports.handleHtmlEscape = handleHtmlEscape;
|
|
19
|
+
const handleHtmlUnescape = (text, integration) => {
|
|
20
|
+
if (!integration || !(0, isEnumValue_1.isEnumValue)(commonSchemas_1.MtIntegrationEngineEnum, integration)) {
|
|
21
|
+
return text;
|
|
22
|
+
}
|
|
23
|
+
return isHtmlEscapingNeededByMtIntegration[integration] ? (0, html_escaper_1.unescape)(text) : text;
|
|
24
|
+
};
|
|
25
|
+
exports.handleHtmlUnescape = handleHtmlUnescape;
|
|
26
|
+
//# sourceMappingURL=htmlEscaping.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"htmlEscaping.js","sourceRoot":"","sources":["../../../src/sdk/helpers/htmlEscaping.ts"],"names":[],"mappings":";;;AAAA,+CAA6E;AAC7E,mEAGwC;AACxC,+CAA2C;AAE3C,MAAM,mCAAmC,GAA6C;IACpF,CAAC,uCAAuB,CAAC,KAAK,CAAC,EAAE,KAAK;IACtC,CAAC,uCAAuB,CAAC,gBAAgB,CAAC,EAAE,IAAI;IAChD,CAAC,uCAAuB,CAAC,oBAAoB,CAAC,EAAE,IAAI;CACrD,CAAA;AAEM,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,WAAmC,EAAU,EAAE;IAC5F,IAAI,CAAC,WAAW,IAAI,CAAC,IAAA,yBAAW,EAAC,uCAAuB,EAAE,WAAW,CAAC,EAAE,CAAC;QACvE,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,mCAAmC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAA,qBAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;AACnF,CAAC,CAAA;AANY,QAAA,gBAAgB,oBAM5B;AAEM,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,WAAmC,EAAU,EAAE;IAC9F,IAAI,CAAC,WAAW,IAAI,CAAC,IAAA,yBAAW,EAAC,uCAAuB,EAAE,WAAW,CAAC,EAAE,CAAC;QACvE,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,mCAAmC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAA,uBAAY,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;AACrF,CAAC,CAAA;AANY,QAAA,kBAAkB,sBAM9B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const isEnumValue: <T extends Record<string, string>>(enumObj: T, value: string) => value is T[keyof T];
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isEnumValue = void 0;
|
|
4
|
+
const isEnumValue = (enumObj, value) => {
|
|
5
|
+
return Object.values(enumObj).includes(value);
|
|
6
|
+
};
|
|
7
|
+
exports.isEnumValue = isEnumValue;
|
|
8
|
+
//# sourceMappingURL=isEnumValue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isEnumValue.js","sourceRoot":"","sources":["../../../src/sdk/helpers/isEnumValue.ts"],"names":[],"mappings":";;;AAAO,MAAM,WAAW,GAAG,CACzB,OAAU,EACV,KAAa,EACQ,EAAE;IACvB,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAmB,CAAC,CAAA;AAC7D,CAAC,CAAA;AALY,QAAA,WAAW,eAKvB"}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.isSegmentUnderLengthLimit = void 0;
|
|
4
|
+
const htmlEscaping_1 = require("../helpers/htmlEscaping");
|
|
4
5
|
const nonTranslatableContentHelper_1 = require("../helpers/nonTranslatableContentHelper");
|
|
5
6
|
const requestSizeLimit_1 = require("./requestSizeLimit");
|
|
6
7
|
const isSegmentUnderLengthLimit = (value, integration) => {
|
|
7
8
|
const limit = (0, requestSizeLimit_1.getRequestSizeLimit)(integration);
|
|
8
|
-
const
|
|
9
|
+
const htmlEscaped = (0, htmlEscaping_1.handleHtmlEscape)(value, integration);
|
|
10
|
+
const ntcWrapped = (0, nonTranslatableContentHelper_1.wrapNonTranslatableRegions)(htmlEscaped, integration);
|
|
9
11
|
return ntcWrapped.length <= limit;
|
|
10
12
|
};
|
|
11
13
|
exports.isSegmentUnderLengthLimit = isSegmentUnderLengthLimit;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"isSegmentUnderLengthLimit.js","sourceRoot":"","sources":["../../../src/sdk/validation/isSegmentUnderLengthLimit.ts"],"names":[],"mappings":";;;AAAA,0FAAoF;AAEpF,yDAAwD;AAEjD,MAAM,yBAAyB,GAAG,CACvC,KAAa,EACb,WAAmC,EAC1B,EAAE;IACX,MAAM,KAAK,GAAG,IAAA,sCAAmB,EAAC,WAAW,CAAC,CAAA;IAC9C,MAAM,UAAU,GAAG,IAAA,yDAA0B,EAAC,
|
|
1
|
+
{"version":3,"file":"isSegmentUnderLengthLimit.js","sourceRoot":"","sources":["../../../src/sdk/validation/isSegmentUnderLengthLimit.ts"],"names":[],"mappings":";;;AAAA,0DAA0D;AAC1D,0FAAoF;AAEpF,yDAAwD;AAEjD,MAAM,yBAAyB,GAAG,CACvC,KAAa,EACb,WAAmC,EAC1B,EAAE;IACX,MAAM,KAAK,GAAG,IAAA,sCAAmB,EAAC,WAAW,CAAC,CAAA;IAC9C,MAAM,WAAW,GAAG,IAAA,+BAAgB,EAAC,KAAK,EAAE,WAAW,CAAC,CAAA;IACxD,MAAM,UAAU,GAAG,IAAA,yDAA0B,EAAC,WAAW,EAAE,WAAW,CAAC,CAAA;IAEvE,OAAO,UAAU,CAAC,MAAM,IAAI,KAAK,CAAA;AACnC,CAAC,CAAA;AATY,QAAA,yBAAyB,6BASrC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lokalise/polyglot-sdk",
|
|
3
|
-
"version": "17.0.
|
|
3
|
+
"version": "17.0.3",
|
|
4
4
|
"author": {
|
|
5
5
|
"name": "Lokalise",
|
|
6
6
|
"url": "https://lokalise.com/"
|
|
@@ -42,6 +42,7 @@
|
|
|
42
42
|
"@lokalise/non-translatable-markup": "^2.9.1",
|
|
43
43
|
"@lokalise/supported-languages": "^2.1.0",
|
|
44
44
|
"@lokalise/zod-extras": "^2.1.0",
|
|
45
|
+
"html-escaper": "^3.0.3",
|
|
45
46
|
"undici": "^7.2.3",
|
|
46
47
|
"undici-retry": "^6.0.0",
|
|
47
48
|
"zod": "^3.24.2"
|
|
@@ -54,6 +55,7 @@
|
|
|
54
55
|
"@biomejs/biome": "^1.9.4",
|
|
55
56
|
"@lokalise/biome-config": "^1.5.0",
|
|
56
57
|
"@lokalise/fastify-extras": "^26.0.0",
|
|
58
|
+
"@types/html-escaper": "^3.0.4",
|
|
57
59
|
"@types/node": "^22.13.8",
|
|
58
60
|
"@vitest/coverage-v8": "^3.0.7",
|
|
59
61
|
"auto-changelog": "^2.5.0",
|