@lokascript/framework 2.11.0 → 3.0.0

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.cjs CHANGED
@@ -1953,6 +1953,9 @@ var StringLiteralExtractor = class {
1953
1953
  }
1954
1954
  canExtract(input, position) {
1955
1955
  const char = input[position];
1956
+ if (char === "'" && position > 0 && /[\p{L}\p{N}_)\]]/u.test(input[position - 1])) {
1957
+ return false;
1958
+ }
1956
1959
  return char === '"' || char === "'" || char === "`" || char === "\u201C" || // Chinese double quote open "
1957
1960
  char === "\u2018";
1958
1961
  }
@@ -5227,6 +5230,9 @@ var MARKER_CONCEPT_NORMALIZEDS = /* @__PURE__ */ new Set([
5227
5230
  "through",
5228
5231
  "without"
5229
5232
  ]);
5233
+ function isHyphenatedWord(native) {
5234
+ return native.includes("-") && /^[\p{L}\p{N}_]+(-[\p{L}\p{N}_]+)+$/u.test(native);
5235
+ }
5230
5236
  var ENGLISH_DOM_EVENT_NAMES = [
5231
5237
  "click",
5232
5238
  "dblclick",
@@ -5546,7 +5552,7 @@ var _BaseTokenizer = class _BaseTokenizer {
5546
5552
  (a, b) => b.native.length - a.native.length
5547
5553
  );
5548
5554
  this.multiWordKeywords = this.profileKeywords.filter(
5549
- (k) => k.native.includes(" ") && !MARKER_CONCEPT_NORMALIZEDS.has(k.normalized)
5555
+ (k) => (k.native.includes(" ") || isHyphenatedWord(k.native)) && !MARKER_CONCEPT_NORMALIZEDS.has(k.normalized)
5550
5556
  );
5551
5557
  this.profileKeywordMap = /* @__PURE__ */ new Map();
5552
5558
  for (const keyword of this.profileKeywords) {