@c-rex/utils 0.3.0-build.38 → 0.3.0-build.40

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.mjs CHANGED
@@ -1352,6 +1352,10 @@ var FLAGS_BY_LANG = {
1352
1352
  "de": "DE"
1353
1353
  };
1354
1354
  var EN_LANG = "en";
1355
+ var TOPIC = "TOPIC";
1356
+ var DOCUMENT = "DOCUMENT";
1357
+ var PACKAGE = "PACKAGE";
1358
+ var FRAGMENT = "FRAGMENT";
1355
1359
  var DEFAULT_COOKIE_LIMIT = 30 * 24 * 60 * 60 * 1e3;
1356
1360
 
1357
1361
  // src/utils.ts
@@ -1720,9 +1724,28 @@ var resolveLabelByLanguage = (labels, lang = EN_LANG) => {
1720
1724
  if (noLanguage) return noLanguage;
1721
1725
  return normalizedLabels[0]?.value;
1722
1726
  };
1727
+ var RESULT_TYPE_BY_CLASS_KEY = {
1728
+ document: DOCUMENT,
1729
+ topic: TOPIC,
1730
+ package: PACKAGE,
1731
+ fragment: FRAGMENT
1732
+ };
1733
+ var normalizeClassKey = (value) => {
1734
+ const trimmed = value?.trim();
1735
+ if (!trimmed) return void 0;
1736
+ const lastHash = trimmed.lastIndexOf("#");
1737
+ const lastSlash = trimmed.lastIndexOf("/");
1738
+ const lastSeparator = Math.max(lastHash, lastSlash);
1739
+ const token = lastSeparator >= 0 ? trimmed.slice(lastSeparator + 1) : trimmed;
1740
+ return token.trim().toLowerCase();
1741
+ };
1723
1742
  var getType = (classObj, lang = EN_LANG) => {
1743
+ const explicitType = RESULT_TYPE_BY_CLASS_KEY[normalizeClassKey(classObj?.shortId) || ""] || RESULT_TYPE_BY_CLASS_KEY[normalizeClassKey(classObj?.id) || ""];
1744
+ if (explicitType) {
1745
+ return explicitType;
1746
+ }
1724
1747
  const type = resolveLabelByLanguage(classObj?.labels, lang)?.toUpperCase();
1725
- return type;
1748
+ return RESULT_TYPE_BY_CLASS_KEY[type?.toLowerCase() || ""] || type;
1726
1749
  };
1727
1750
  var getTitle = (titles, labels) => {
1728
1751
  if (titles) {