lingo.dev 0.113.8 → 0.114.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/build/cli.mjs CHANGED
@@ -1908,10 +1908,11 @@ function createDenormalizeLoader(options) {
1908
1908
  return encodeURIComponent(String(key));
1909
1909
  }
1910
1910
  });
1911
- const denormalized = {
1912
- ...flattened,
1913
- ...preservedObjects
1914
- };
1911
+ const denormalized = { ...flattened };
1912
+ for (const [key, value] of Object.entries(preservedObjects)) {
1913
+ const encodedKey = encodeURIComponent(String(key));
1914
+ denormalized[encodedKey] = value;
1915
+ }
1915
1916
  const keysMap = buildDenormalizedKeysMap(denormalized);
1916
1917
  return { denormalized, keysMap };
1917
1918
  },
@@ -2362,7 +2363,7 @@ async function parseAndroidDocument(input2) {
2362
2363
  function buildPullResult(document) {
2363
2364
  const result = {};
2364
2365
  for (const resource of document.resourceNodes) {
2365
- if (!resource.translatable) {
2366
+ if (!isTranslatable(resource)) {
2366
2367
  continue;
2367
2368
  }
2368
2369
  switch (resource.type) {
@@ -2405,6 +2406,9 @@ function buildPullResult(document) {
2405
2406
  }
2406
2407
  return result;
2407
2408
  }
2409
+ function isTranslatable(resource) {
2410
+ return resource.translatable;
2411
+ }
2408
2412
  function buildTranslatedDocument(payload, existingDocument, sourceDocument) {
2409
2413
  const templateDocument = sourceDocument;
2410
2414
  const finalDocument = cloneDocumentStructure(templateDocument);
@@ -2433,6 +2437,9 @@ function buildTranslatedDocument(payload, existingDocument, sourceDocument) {
2433
2437
  if (finalMap.has(resource.name)) {
2434
2438
  continue;
2435
2439
  }
2440
+ if (!isTranslatable(resource)) {
2441
+ continue;
2442
+ }
2436
2443
  const cloned = cloneResourceNode(resource);
2437
2444
  appendResourceNode(finalDocument, cloned);
2438
2445
  finalMap.set(cloned.name, cloned);
@@ -2549,7 +2556,7 @@ function appendResourceNode(document, resourceNode) {
2549
2556
  document.resourceNodes.push(resourceNode);
2550
2557
  }
2551
2558
  function setTextualNodeContent(node, value, useCdata) {
2552
- const escapedValue = useCdata ? value : escapeAndroidString(value);
2559
+ const escapedValue = useCdata ? escapeApostrophesOnly(value) : escapeAndroidString(value);
2553
2560
  node._ = escapedValue;
2554
2561
  node.$$ = node.$$ ?? [];
2555
2562
  let textNode = node.$$.find(
@@ -2560,7 +2567,7 @@ function setTextualNodeContent(node, value, useCdata) {
2560
2567
  node.$$.push(textNode);
2561
2568
  }
2562
2569
  textNode["#name"] = useCdata ? "__cdata" : "__text__";
2563
- textNode._ = useCdata ? value : escapedValue;
2570
+ textNode._ = escapedValue;
2564
2571
  }
2565
2572
  function buildResourceNameMap(document) {
2566
2573
  const map = /* @__PURE__ */ new Map();
@@ -2720,6 +2727,9 @@ function asInteger(value, name) {
2720
2727
  function escapeAndroidString(value) {
2721
2728
  return value.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/(?<!\\)'/g, "\\'");
2722
2729
  }
2730
+ function escapeApostrophesOnly(value) {
2731
+ return value.replace(/(?<!\\)'/g, "\\'");
2732
+ }
2723
2733
  function segmentsToString(segments) {
2724
2734
  return segments.map((segment) => segment.value).join("");
2725
2735
  }
@@ -2850,13 +2860,42 @@ function createResourceNodeFromValue(name, value) {
2850
2860
  }
2851
2861
  }
2852
2862
  function cloneDocumentStructure(document) {
2863
+ const translatableResources = document.resourceNodes.filter(isTranslatable);
2853
2864
  const resourcesClone = deepClone(document.resources);
2854
2865
  const lookup = buildResourceLookup(resourcesClone);
2855
2866
  const resourceNodes = [];
2856
- for (const resource of document.resourceNodes) {
2867
+ for (const resource of translatableResources) {
2857
2868
  const cloned = cloneResourceNodeFromLookup(resource, lookup);
2858
2869
  resourceNodes.push(cloned);
2859
2870
  }
2871
+ if (resourcesClone.$$ && Array.isArray(resourcesClone.$$)) {
2872
+ const includedKeys = new Set(
2873
+ resourceNodes.map((r) => resourceLookupKey(r.type, r.name))
2874
+ );
2875
+ let filtered = resourcesClone.$$.filter((child) => {
2876
+ const elementName = child?.["#name"];
2877
+ const name = child?.$?.name;
2878
+ if (!isResourceElementName(elementName) || !name) {
2879
+ return true;
2880
+ }
2881
+ return includedKeys.has(resourceLookupKey(elementName, name));
2882
+ });
2883
+ const cleaned = [];
2884
+ let lastWasWhitespace = false;
2885
+ for (const child of filtered) {
2886
+ const isWhitespace = child?.["#name"] === "__text__" && (!child._ || child._.trim() === "");
2887
+ if (isWhitespace) {
2888
+ if (!lastWasWhitespace) {
2889
+ cleaned.push(child);
2890
+ lastWasWhitespace = true;
2891
+ }
2892
+ } else {
2893
+ cleaned.push(child);
2894
+ lastWasWhitespace = false;
2895
+ }
2896
+ }
2897
+ resourcesClone.$$ = cleaned;
2898
+ }
2860
2899
  return {
2861
2900
  resources: resourcesClone,
2862
2901
  resourceNodes
@@ -8423,7 +8462,7 @@ function createMdxSectionsSplit2Loader() {
8423
8462
  });
8424
8463
  }
8425
8464
 
8426
- // src/cli/loaders/mdx2/locked-patterns.ts
8465
+ // src/cli/loaders/locked-patterns.ts
8427
8466
  function extractLockedPatterns(content, patterns = []) {
8428
8467
  let finalContent = content;
8429
8468
  const lockedPlaceholders = {};
@@ -8450,7 +8489,7 @@ function extractLockedPatterns(content, patterns = []) {
8450
8489
  lockedPlaceholders
8451
8490
  };
8452
8491
  }
8453
- function createMdxLockedPatternsLoader(defaultPatterns) {
8492
+ function createLockedPatternsLoader(defaultPatterns) {
8454
8493
  return createLoader({
8455
8494
  async pull(locale, input2, initCtx, originalLocale) {
8456
8495
  const patterns = defaultPatterns || [];
@@ -8784,18 +8823,24 @@ function createBucketLoader(bucketType, bucketPathPattern, options, lockedKeys,
8784
8823
  case "android":
8785
8824
  return composeLoaders(
8786
8825
  createTextFileLoader(bucketPathPattern),
8826
+ createLockedPatternsLoader(lockedPatterns),
8787
8827
  createAndroidLoader(),
8788
8828
  createEnsureKeyOrderLoader(),
8789
8829
  createFlatLoader(),
8830
+ createLockedKeysLoader(lockedKeys || []),
8831
+ createIgnoredKeysLoader(ignoredKeys || []),
8790
8832
  createSyncLoader(),
8791
8833
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
8792
8834
  );
8793
8835
  case "csv":
8794
8836
  return composeLoaders(
8795
8837
  createTextFileLoader(bucketPathPattern),
8838
+ createLockedPatternsLoader(lockedPatterns),
8796
8839
  createCsvLoader(),
8797
8840
  createEnsureKeyOrderLoader(),
8798
8841
  createFlatLoader(),
8842
+ createLockedKeysLoader(lockedKeys || []),
8843
+ createIgnoredKeysLoader(ignoredKeys || []),
8799
8844
  createSyncLoader(),
8800
8845
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
8801
8846
  );
@@ -8803,14 +8848,20 @@ function createBucketLoader(bucketType, bucketPathPattern, options, lockedKeys,
8803
8848
  return composeLoaders(
8804
8849
  createTextFileLoader(bucketPathPattern),
8805
8850
  createFormatterLoader(options.formatter, "html", bucketPathPattern),
8851
+ createLockedPatternsLoader(lockedPatterns),
8806
8852
  createHtmlLoader(),
8853
+ createLockedKeysLoader(lockedKeys || []),
8854
+ createIgnoredKeysLoader(ignoredKeys || []),
8807
8855
  createSyncLoader(),
8808
8856
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
8809
8857
  );
8810
8858
  case "ejs":
8811
8859
  return composeLoaders(
8812
8860
  createTextFileLoader(bucketPathPattern),
8861
+ createLockedPatternsLoader(lockedPatterns),
8813
8862
  createEjsLoader(),
8863
+ createLockedKeysLoader(lockedKeys || []),
8864
+ createIgnoredKeysLoader(ignoredKeys || []),
8814
8865
  createSyncLoader(),
8815
8866
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
8816
8867
  );
@@ -8818,6 +8869,7 @@ function createBucketLoader(bucketType, bucketPathPattern, options, lockedKeys,
8818
8869
  return composeLoaders(
8819
8870
  createTextFileLoader(bucketPathPattern),
8820
8871
  createFormatterLoader(options.formatter, "json", bucketPathPattern),
8872
+ createLockedPatternsLoader(lockedPatterns),
8821
8873
  createJsonLoader(),
8822
8874
  createEnsureKeyOrderLoader(),
8823
8875
  createFlatLoader(),
@@ -8830,6 +8882,7 @@ function createBucketLoader(bucketType, bucketPathPattern, options, lockedKeys,
8830
8882
  case "json5":
8831
8883
  return composeLoaders(
8832
8884
  createTextFileLoader(bucketPathPattern),
8885
+ createLockedPatternsLoader(lockedPatterns),
8833
8886
  createJson5Loader(),
8834
8887
  createEnsureKeyOrderLoader(),
8835
8888
  createFlatLoader(),
@@ -8842,6 +8895,7 @@ function createBucketLoader(bucketType, bucketPathPattern, options, lockedKeys,
8842
8895
  case "jsonc":
8843
8896
  return composeLoaders(
8844
8897
  createTextFileLoader(bucketPathPattern),
8898
+ createLockedPatternsLoader(lockedPatterns),
8845
8899
  createJsoncLoader(),
8846
8900
  createEnsureKeyOrderLoader(),
8847
8901
  createFlatLoader(),
@@ -8855,16 +8909,22 @@ function createBucketLoader(bucketType, bucketPathPattern, options, lockedKeys,
8855
8909
  return composeLoaders(
8856
8910
  createTextFileLoader(bucketPathPattern),
8857
8911
  createFormatterLoader(options.formatter, "markdown", bucketPathPattern),
8912
+ createLockedPatternsLoader(lockedPatterns),
8858
8913
  createMarkdownLoader(),
8914
+ createLockedKeysLoader(lockedKeys || []),
8915
+ createIgnoredKeysLoader(ignoredKeys || []),
8859
8916
  createSyncLoader(),
8860
8917
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
8861
8918
  );
8862
8919
  case "markdoc":
8863
8920
  return composeLoaders(
8864
8921
  createTextFileLoader(bucketPathPattern),
8922
+ createLockedPatternsLoader(lockedPatterns),
8865
8923
  createMarkdocLoader(),
8866
8924
  createFlatLoader(),
8867
8925
  createEnsureKeyOrderLoader(),
8926
+ createLockedKeysLoader(lockedKeys || []),
8927
+ createIgnoredKeysLoader(ignoredKeys || []),
8868
8928
  createSyncLoader(),
8869
8929
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
8870
8930
  );
@@ -8873,7 +8933,7 @@ function createBucketLoader(bucketType, bucketPathPattern, options, lockedKeys,
8873
8933
  createTextFileLoader(bucketPathPattern),
8874
8934
  createFormatterLoader(options.formatter, "mdx", bucketPathPattern),
8875
8935
  createMdxCodePlaceholderLoader(),
8876
- createMdxLockedPatternsLoader(lockedPatterns),
8936
+ createLockedPatternsLoader(lockedPatterns),
8877
8937
  createMdxFrontmatterSplitLoader(),
8878
8938
  createMdxSectionsSplit2Loader(),
8879
8939
  createLocalizableMdxDocumentLoader(),
@@ -8887,9 +8947,12 @@ function createBucketLoader(bucketType, bucketPathPattern, options, lockedKeys,
8887
8947
  case "po":
8888
8948
  return composeLoaders(
8889
8949
  createTextFileLoader(bucketPathPattern),
8950
+ createLockedPatternsLoader(lockedPatterns),
8890
8951
  createPoLoader(),
8891
8952
  createFlatLoader(),
8892
8953
  createEnsureKeyOrderLoader(),
8954
+ createLockedKeysLoader(lockedKeys || []),
8955
+ createIgnoredKeysLoader(ignoredKeys || []),
8893
8956
  createSyncLoader(),
8894
8957
  createVariableLoader({ type: "python" }),
8895
8958
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
@@ -8897,23 +8960,32 @@ function createBucketLoader(bucketType, bucketPathPattern, options, lockedKeys,
8897
8960
  case "properties":
8898
8961
  return composeLoaders(
8899
8962
  createTextFileLoader(bucketPathPattern),
8963
+ createLockedPatternsLoader(lockedPatterns),
8900
8964
  createPropertiesLoader(),
8965
+ createLockedKeysLoader(lockedKeys || []),
8966
+ createIgnoredKeysLoader(ignoredKeys || []),
8901
8967
  createSyncLoader(),
8902
8968
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
8903
8969
  );
8904
8970
  case "xcode-strings":
8905
8971
  return composeLoaders(
8906
8972
  createTextFileLoader(bucketPathPattern),
8973
+ createLockedPatternsLoader(lockedPatterns),
8907
8974
  createXcodeStringsLoader(),
8975
+ createLockedKeysLoader(lockedKeys || []),
8976
+ createIgnoredKeysLoader(ignoredKeys || []),
8908
8977
  createSyncLoader(),
8909
8978
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
8910
8979
  );
8911
8980
  case "xcode-stringsdict":
8912
8981
  return composeLoaders(
8913
8982
  createTextFileLoader(bucketPathPattern),
8983
+ createLockedPatternsLoader(lockedPatterns),
8914
8984
  createXcodeStringsdictLoader(),
8915
8985
  createFlatLoader(),
8916
8986
  createEnsureKeyOrderLoader(),
8987
+ createLockedKeysLoader(lockedKeys || []),
8988
+ createIgnoredKeysLoader(ignoredKeys || []),
8917
8989
  createSyncLoader(),
8918
8990
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
8919
8991
  );
@@ -8921,6 +8993,7 @@ function createBucketLoader(bucketType, bucketPathPattern, options, lockedKeys,
8921
8993
  return composeLoaders(
8922
8994
  createTextFileLoader(bucketPathPattern),
8923
8995
  createPlutilJsonTextLoader(),
8996
+ createLockedPatternsLoader(lockedPatterns),
8924
8997
  createJsonLoader(),
8925
8998
  createXcodeXcstringsLoader(options.defaultLocale),
8926
8999
  createFlatLoader(),
@@ -8935,12 +9008,14 @@ function createBucketLoader(bucketType, bucketPathPattern, options, lockedKeys,
8935
9008
  return composeLoaders(
8936
9009
  createTextFileLoader(bucketPathPattern),
8937
9010
  createPlutilJsonTextLoader(),
9011
+ createLockedPatternsLoader(lockedPatterns),
8938
9012
  createJsonLoader(),
8939
9013
  createXcodeXcstringsLoader(options.defaultLocale),
8940
9014
  createXcodeXcstringsV2Loader(options.defaultLocale),
8941
9015
  createFlatLoader({ shouldPreserveObject: isICUPluralObject }),
8942
9016
  createEnsureKeyOrderLoader(),
8943
9017
  createLockedKeysLoader(lockedKeys || []),
9018
+ createIgnoredKeysLoader(ignoredKeys || []),
8944
9019
  createSyncLoader(),
8945
9020
  createVariableLoader({ type: "ieee" }),
8946
9021
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
@@ -8949,6 +9024,7 @@ function createBucketLoader(bucketType, bucketPathPattern, options, lockedKeys,
8949
9024
  return composeLoaders(
8950
9025
  createTextFileLoader(bucketPathPattern),
8951
9026
  createFormatterLoader(options.formatter, "yaml", bucketPathPattern),
9027
+ createLockedPatternsLoader(lockedPatterns),
8952
9028
  createYamlLoader(),
8953
9029
  createFlatLoader(),
8954
9030
  createEnsureKeyOrderLoader(),
@@ -8961,10 +9037,13 @@ function createBucketLoader(bucketType, bucketPathPattern, options, lockedKeys,
8961
9037
  return composeLoaders(
8962
9038
  createTextFileLoader(bucketPathPattern),
8963
9039
  createFormatterLoader(options.formatter, "yaml", bucketPathPattern),
9040
+ createLockedPatternsLoader(lockedPatterns),
8964
9041
  createYamlLoader(),
8965
9042
  createRootKeyLoader(true),
8966
9043
  createFlatLoader(),
8967
9044
  createEnsureKeyOrderLoader(),
9045
+ createLockedKeysLoader(lockedKeys || []),
9046
+ createIgnoredKeysLoader(ignoredKeys || []),
8968
9047
  createSyncLoader(),
8969
9048
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
8970
9049
  );
@@ -8972,35 +9051,47 @@ function createBucketLoader(bucketType, bucketPathPattern, options, lockedKeys,
8972
9051
  return composeLoaders(
8973
9052
  createTextFileLoader(bucketPathPattern),
8974
9053
  createFormatterLoader(options.formatter, "json", bucketPathPattern),
9054
+ createLockedPatternsLoader(lockedPatterns),
8975
9055
  createJsonLoader(),
8976
9056
  createEnsureKeyOrderLoader(),
8977
9057
  createFlutterLoader(),
8978
9058
  createFlatLoader(),
9059
+ createLockedKeysLoader(lockedKeys || []),
9060
+ createIgnoredKeysLoader(ignoredKeys || []),
8979
9061
  createSyncLoader(),
8980
9062
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
8981
9063
  );
8982
9064
  case "xliff":
8983
9065
  return composeLoaders(
8984
9066
  createTextFileLoader(bucketPathPattern),
9067
+ createLockedPatternsLoader(lockedPatterns),
8985
9068
  createXliffLoader(),
8986
9069
  createFlatLoader(),
8987
9070
  createEnsureKeyOrderLoader(),
9071
+ createLockedKeysLoader(lockedKeys || []),
9072
+ createIgnoredKeysLoader(ignoredKeys || []),
8988
9073
  createSyncLoader(),
8989
9074
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
8990
9075
  );
8991
9076
  case "xml":
8992
9077
  return composeLoaders(
8993
9078
  createTextFileLoader(bucketPathPattern),
9079
+ createLockedPatternsLoader(lockedPatterns),
8994
9080
  createXmlLoader(),
8995
9081
  createFlatLoader(),
8996
9082
  createEnsureKeyOrderLoader(),
9083
+ createLockedKeysLoader(lockedKeys || []),
9084
+ createIgnoredKeysLoader(ignoredKeys || []),
8997
9085
  createSyncLoader(),
8998
9086
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
8999
9087
  );
9000
9088
  case "srt":
9001
9089
  return composeLoaders(
9002
9090
  createTextFileLoader(bucketPathPattern),
9091
+ createLockedPatternsLoader(lockedPatterns),
9003
9092
  createSrtLoader(),
9093
+ createLockedKeysLoader(lockedKeys || []),
9094
+ createIgnoredKeysLoader(ignoredKeys || []),
9004
9095
  createSyncLoader(),
9005
9096
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
9006
9097
  );
@@ -9010,31 +9101,42 @@ function createBucketLoader(bucketType, bucketPathPattern, options, lockedKeys,
9010
9101
  createSyncLoader(),
9011
9102
  createFlatLoader(),
9012
9103
  createEnsureKeyOrderLoader(),
9104
+ createLockedKeysLoader(lockedKeys || []),
9105
+ createIgnoredKeysLoader(ignoredKeys || []),
9013
9106
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
9014
9107
  );
9015
9108
  case "vtt":
9016
9109
  return composeLoaders(
9017
9110
  createTextFileLoader(bucketPathPattern),
9111
+ createLockedPatternsLoader(lockedPatterns),
9018
9112
  createVttLoader(),
9113
+ createLockedKeysLoader(lockedKeys || []),
9114
+ createIgnoredKeysLoader(ignoredKeys || []),
9019
9115
  createSyncLoader(),
9020
9116
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
9021
9117
  );
9022
9118
  case "php":
9023
9119
  return composeLoaders(
9024
9120
  createTextFileLoader(bucketPathPattern),
9121
+ createLockedPatternsLoader(lockedPatterns),
9025
9122
  createPhpLoader(),
9026
9123
  createSyncLoader(),
9027
9124
  createFlatLoader(),
9028
9125
  createEnsureKeyOrderLoader(),
9126
+ createLockedKeysLoader(lockedKeys || []),
9127
+ createIgnoredKeysLoader(ignoredKeys || []),
9029
9128
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
9030
9129
  );
9031
9130
  case "vue-json":
9032
9131
  return composeLoaders(
9033
9132
  createTextFileLoader(bucketPathPattern),
9133
+ createLockedPatternsLoader(lockedPatterns),
9034
9134
  createVueJsonLoader(),
9035
9135
  createSyncLoader(),
9036
9136
  createFlatLoader(),
9037
9137
  createEnsureKeyOrderLoader(),
9138
+ createLockedKeysLoader(lockedKeys || []),
9139
+ createIgnoredKeysLoader(ignoredKeys || []),
9038
9140
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
9039
9141
  );
9040
9142
  case "typescript":
@@ -9045,6 +9147,7 @@ function createBucketLoader(bucketType, bucketPathPattern, options, lockedKeys,
9045
9147
  "typescript",
9046
9148
  bucketPathPattern
9047
9149
  ),
9150
+ createLockedPatternsLoader(lockedPatterns),
9048
9151
  createTypescriptLoader(),
9049
9152
  createFlatLoader(),
9050
9153
  createEnsureKeyOrderLoader(),
@@ -9056,7 +9159,10 @@ function createBucketLoader(bucketType, bucketPathPattern, options, lockedKeys,
9056
9159
  case "txt":
9057
9160
  return composeLoaders(
9058
9161
  createTextFileLoader(bucketPathPattern),
9162
+ createLockedPatternsLoader(lockedPatterns),
9059
9163
  createTxtLoader(),
9164
+ createLockedKeysLoader(lockedKeys || []),
9165
+ createIgnoredKeysLoader(ignoredKeys || []),
9060
9166
  createSyncLoader(),
9061
9167
  createUnlocalizableLoader(options.returnUnlocalizedKeys)
9062
9168
  );
@@ -9064,6 +9170,7 @@ function createBucketLoader(bucketType, bucketPathPattern, options, lockedKeys,
9064
9170
  return composeLoaders(
9065
9171
  createTextFileLoader(bucketPathPattern),
9066
9172
  createFormatterLoader(options.formatter, "json", bucketPathPattern),
9173
+ createLockedPatternsLoader(lockedPatterns),
9067
9174
  createJsonLoader(),
9068
9175
  createJsonDictionaryLoader(),
9069
9176
  createEnsureKeyOrderLoader(),
@@ -9973,7 +10080,9 @@ var i18n_default = new Command14().command("i18n").description(
9973
10080
  returnUnlocalizedKeys: true,
9974
10081
  injectLocale: bucket.injectLocale
9975
10082
  },
9976
- bucket.lockedKeys
10083
+ bucket.lockedKeys,
10084
+ bucket.lockedPatterns,
10085
+ bucket.ignoredKeys
9977
10086
  );
9978
10087
  bucketLoader.setDefaultLocale(sourceLocale);
9979
10088
  await bucketLoader.init();
@@ -10572,7 +10681,10 @@ var lockfile_default = new Command15().command("lockfile").description(
10572
10681
  {
10573
10682
  defaultLocale: sourceLocale,
10574
10683
  formatter: i18nConfig.formatter
10575
- }
10684
+ },
10685
+ bucket.lockedKeys,
10686
+ bucket.lockedPatterns,
10687
+ bucket.ignoredKeys
10576
10688
  );
10577
10689
  bucketLoader.setDefaultLocale(sourceLocale);
10578
10690
  const sourceData = await bucketLoader.pull(sourceLocale);
@@ -10640,7 +10752,10 @@ var cleanup_default = new Command16().command("cleanup").description(
10640
10752
  {
10641
10753
  defaultLocale: sourceLocale,
10642
10754
  formatter: i18nConfig.formatter
10643
- }
10755
+ },
10756
+ bucket.lockedKeys,
10757
+ bucket.lockedPatterns,
10758
+ bucket.ignoredKeys
10644
10759
  );
10645
10760
  bucketLoader.setDefaultLocale(sourceLocale);
10646
10761
  const sourceData = await bucketLoader.pull(sourceLocale);
@@ -12912,7 +13027,9 @@ var status_default = new Command20().command("status").description("Show the sta
12912
13027
  injectLocale: bucket.injectLocale,
12913
13028
  formatter: i18nConfig.formatter
12914
13029
  },
12915
- bucket.lockedKeys
13030
+ bucket.lockedKeys,
13031
+ bucket.lockedPatterns,
13032
+ bucket.ignoredKeys
12916
13033
  );
12917
13034
  bucketLoader.setDefaultLocale(sourceLocale);
12918
13035
  await bucketLoader.init();
@@ -13379,7 +13496,7 @@ async function renderHero2() {
13379
13496
  // package.json
13380
13497
  var package_default = {
13381
13498
  name: "lingo.dev",
13382
- version: "0.113.8",
13499
+ version: "0.114.1",
13383
13500
  description: "Lingo.dev CLI",
13384
13501
  private: false,
13385
13502
  publishConfig: {