@formatjs/intl-segmenter 11.5.0 → 11.5.1
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/polyfill-force.js +4 -2
- package/lib/polyfill.js +6 -4
- package/lib/should-polyfill.js +5 -1
- package/lib/src/cldr-segmentation-rules.generated.js +4 -1
- package/lib/src/segmentation-utils.js +7 -2
- package/lib/src/segmenter.js +32 -29
- package/lib/test262-main.js +3 -1
- package/package.json +3 -3
- package/polyfill.iife.js +9147 -1874
- package/src/segmenter.js +7 -7
package/src/segmenter.js
CHANGED
|
@@ -41,7 +41,7 @@ var breaksAtResult = function (breaks, matchingRule) { return ({
|
|
|
41
41
|
breaks: breaks,
|
|
42
42
|
matchingRule: matchingRule,
|
|
43
43
|
}); };
|
|
44
|
-
var Segmenter =
|
|
44
|
+
var Segmenter = /** @class */ (function () {
|
|
45
45
|
function Segmenter(locales, options) {
|
|
46
46
|
var _newTarget = this.constructor;
|
|
47
47
|
if (_newTarget === undefined) {
|
|
@@ -78,7 +78,6 @@ var Segmenter = exports.Segmenter = /** @class */ (function () {
|
|
|
78
78
|
this.ruleSortedKeys = Object.keys(this.rules).sort(function (a, b) { return Number(a) - Number(b); });
|
|
79
79
|
}
|
|
80
80
|
Segmenter.prototype.breaksAt = function (position, input) {
|
|
81
|
-
var _a;
|
|
82
81
|
var ruleSortedKeys = this.ruleSortedKeys;
|
|
83
82
|
var rules = this.rules;
|
|
84
83
|
var mergedSegmentationTypeValue = this.mergedSegmentationTypeValue;
|
|
@@ -99,17 +98,17 @@ var Segmenter = exports.Segmenter = /** @class */ (function () {
|
|
|
99
98
|
var stringAfterBreak = input.substring(position);
|
|
100
99
|
//artificial rule 0.4: handle suppressions
|
|
101
100
|
if ('suppressions' in mergedSegmentationTypeValue) {
|
|
102
|
-
for (var _i = 0,
|
|
103
|
-
var suppressions =
|
|
101
|
+
for (var _i = 0, _a = mergedSegmentationTypeValue.suppressions; _i < _a.length; _i++) {
|
|
102
|
+
var suppressions = _a[_i];
|
|
104
103
|
if (stringBeforeBreak.trim().endsWith(suppressions)) {
|
|
105
104
|
return breaksAtResult(false, '0.4');
|
|
106
105
|
}
|
|
107
106
|
}
|
|
108
107
|
}
|
|
109
108
|
// loop through rules and find a match
|
|
110
|
-
for (var
|
|
111
|
-
var ruleKey = ruleSortedKeys_1[
|
|
112
|
-
var
|
|
109
|
+
for (var _b = 0, ruleSortedKeys_1 = ruleSortedKeys; _b < ruleSortedKeys_1.length; _b++) {
|
|
110
|
+
var ruleKey = ruleSortedKeys_1[_b];
|
|
111
|
+
var _c = rules[ruleKey], before = _c.before, after = _c.after, breaks = _c.breaks;
|
|
113
112
|
// for debugging
|
|
114
113
|
// if (ruleKey === '16' && position === 4) {
|
|
115
114
|
// console.log({before, after, stringBeforeBreak, stringAfterBreak})
|
|
@@ -146,6 +145,7 @@ var Segmenter = exports.Segmenter = /** @class */ (function () {
|
|
|
146
145
|
Segmenter.polyfilled = true;
|
|
147
146
|
return Segmenter;
|
|
148
147
|
}());
|
|
148
|
+
exports.Segmenter = Segmenter;
|
|
149
149
|
var createSegmentDataObject = function (segmenter, segment, index, input, matchingRule) {
|
|
150
150
|
var returnValue = {
|
|
151
151
|
segment: segment,
|