lingo.dev 0.116.5 → 0.117.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/build/cli.mjs CHANGED
@@ -2165,7 +2165,7 @@ function _isMetadataKey(key) {
2165
2165
  }
2166
2166
 
2167
2167
  // src/cli/loaders/android.ts
2168
- import { createRequire } from "node:module";
2168
+ import { createRequire } from "module";
2169
2169
  import { parseStringPromise } from "xml2js";
2170
2170
  var require2 = createRequire(import.meta.url);
2171
2171
  var sax = require2("sax");
@@ -6805,7 +6805,7 @@ function expand_(str, isTop) {
6805
6805
  return expansions;
6806
6806
  }
6807
6807
 
6808
- // ../../node_modules/.pnpm/minimatch@10.0.3/node_modules/minimatch/dist/esm/assert-valid-pattern.js
6808
+ // ../../node_modules/.pnpm/minimatch@10.1.1/node_modules/minimatch/dist/esm/assert-valid-pattern.js
6809
6809
  var MAX_PATTERN_LENGTH = 1024 * 64;
6810
6810
  var assertValidPattern = (pattern) => {
6811
6811
  if (typeof pattern !== "string") {
@@ -6816,7 +6816,7 @@ var assertValidPattern = (pattern) => {
6816
6816
  }
6817
6817
  };
6818
6818
 
6819
- // ../../node_modules/.pnpm/minimatch@10.0.3/node_modules/minimatch/dist/esm/brace-expressions.js
6819
+ // ../../node_modules/.pnpm/minimatch@10.1.1/node_modules/minimatch/dist/esm/brace-expressions.js
6820
6820
  var posixClasses = {
6821
6821
  "[:alnum:]": ["\\p{L}\\p{Nl}\\p{Nd}", true],
6822
6822
  "[:alpha:]": ["\\p{L}\\p{Nl}", true],
@@ -6925,12 +6925,15 @@ var parseClass = (glob3, position) => {
6925
6925
  return [comb, uflag, endPos - pos, true];
6926
6926
  };
6927
6927
 
6928
- // ../../node_modules/.pnpm/minimatch@10.0.3/node_modules/minimatch/dist/esm/unescape.js
6929
- var unescape = (s, { windowsPathsNoEscape = false } = {}) => {
6930
- return windowsPathsNoEscape ? s.replace(/\[([^\/\\])\]/g, "$1") : s.replace(/((?!\\).|^)\[([^\/\\])\]/g, "$1$2").replace(/\\([^\/])/g, "$1");
6928
+ // ../../node_modules/.pnpm/minimatch@10.1.1/node_modules/minimatch/dist/esm/unescape.js
6929
+ var unescape = (s, { windowsPathsNoEscape = false, magicalBraces = true } = {}) => {
6930
+ if (magicalBraces) {
6931
+ return windowsPathsNoEscape ? s.replace(/\[([^\/\\])\]/g, "$1") : s.replace(/((?!\\).|^)\[([^\/\\])\]/g, "$1$2").replace(/\\([^\/])/g, "$1");
6932
+ }
6933
+ return windowsPathsNoEscape ? s.replace(/\[([^\/\\{}])\]/g, "$1") : s.replace(/((?!\\).|^)\[([^\/\\{}])\]/g, "$1$2").replace(/\\([^\/{}])/g, "$1");
6931
6934
  };
6932
6935
 
6933
- // ../../node_modules/.pnpm/minimatch@10.0.3/node_modules/minimatch/dist/esm/ast.js
6936
+ // ../../node_modules/.pnpm/minimatch@10.1.1/node_modules/minimatch/dist/esm/ast.js
6934
6937
  var types = /* @__PURE__ */ new Set(["!", "?", "+", "*", "@"]);
6935
6938
  var isExtglobType = (c) => types.has(c);
6936
6939
  var startNoTraversal = "(?!(?:^|/)\\.\\.?(?:$|/))";
@@ -7281,7 +7284,7 @@ var AST = class _AST {
7281
7284
  if (this.#root === this)
7282
7285
  this.#fillNegs();
7283
7286
  if (!this.type) {
7284
- const noEmpty = this.isStart() && this.isEnd();
7287
+ const noEmpty = this.isStart() && this.isEnd() && !this.#parts.some((s) => typeof s !== "string");
7285
7288
  const src = this.#parts.map((p) => {
7286
7289
  const [re, _37, hasMagic, uflag] = typeof p === "string" ? _AST.#parseGlob(p, this.#hasMagic, noEmpty) : p.toRegExpSource(allowDot);
7287
7290
  this.#hasMagic = this.#hasMagic || hasMagic;
@@ -7391,10 +7394,7 @@ var AST = class _AST {
7391
7394
  }
7392
7395
  }
7393
7396
  if (c === "*") {
7394
- if (noEmpty && glob3 === "*")
7395
- re += starNoEmpty;
7396
- else
7397
- re += star;
7397
+ re += noEmpty && glob3 === "*" ? starNoEmpty : star;
7398
7398
  hasMagic = true;
7399
7399
  continue;
7400
7400
  }
@@ -7409,12 +7409,15 @@ var AST = class _AST {
7409
7409
  }
7410
7410
  };
7411
7411
 
7412
- // ../../node_modules/.pnpm/minimatch@10.0.3/node_modules/minimatch/dist/esm/escape.js
7413
- var escape = (s, { windowsPathsNoEscape = false } = {}) => {
7412
+ // ../../node_modules/.pnpm/minimatch@10.1.1/node_modules/minimatch/dist/esm/escape.js
7413
+ var escape = (s, { windowsPathsNoEscape = false, magicalBraces = false } = {}) => {
7414
+ if (magicalBraces) {
7415
+ return windowsPathsNoEscape ? s.replace(/[?*()[\]{}]/g, "[$&]") : s.replace(/[?*()[\]\\{}]/g, "\\$&");
7416
+ }
7414
7417
  return windowsPathsNoEscape ? s.replace(/[?*()[\]]/g, "[$&]") : s.replace(/[?*()[\]\\]/g, "\\$&");
7415
7418
  };
7416
7419
 
7417
- // ../../node_modules/.pnpm/minimatch@10.0.3/node_modules/minimatch/dist/esm/index.js
7420
+ // ../../node_modules/.pnpm/minimatch@10.1.1/node_modules/minimatch/dist/esm/index.js
7418
7421
  var minimatch = (p, pattern, options = {}) => {
7419
7422
  assertValidPattern(pattern);
7420
7423
  if (!options.nocomment && pattern.charAt(0) === "#") {
@@ -8051,16 +8054,27 @@ var Minimatch = class {
8051
8054
  pp[i] = twoStar;
8052
8055
  }
8053
8056
  } else if (next === void 0) {
8054
- pp[i - 1] = prev + "(?:\\/|" + twoStar + ")?";
8057
+ pp[i - 1] = prev + "(?:\\/|\\/" + twoStar + ")?";
8055
8058
  } else if (next !== GLOBSTAR) {
8056
8059
  pp[i - 1] = prev + "(?:\\/|\\/" + twoStar + "\\/)" + next;
8057
8060
  pp[i + 1] = GLOBSTAR;
8058
8061
  }
8059
8062
  });
8060
- return pp.filter((p) => p !== GLOBSTAR).join("/");
8063
+ const filtered = pp.filter((p) => p !== GLOBSTAR);
8064
+ if (this.partial && filtered.length >= 1) {
8065
+ const prefixes = [];
8066
+ for (let i = 1; i <= filtered.length; i++) {
8067
+ prefixes.push(filtered.slice(0, i).join("/"));
8068
+ }
8069
+ return "(?:" + prefixes.join("|") + ")";
8070
+ }
8071
+ return filtered.join("/");
8061
8072
  }).join("|");
8062
8073
  const [open3, close] = set.length > 1 ? ["(?:", ")"] : ["", ""];
8063
8074
  re = "^" + open3 + re + close + "$";
8075
+ if (this.partial) {
8076
+ re = "^(?:\\/|" + open3 + re.slice(1, -1) + close + ")$";
8077
+ }
8064
8078
  if (this.negate)
8065
8079
  re = "^(?!" + re + ").+$";
8066
8080
  try {
@@ -13388,7 +13402,7 @@ function validateParams2(i18nConfig, flags) {
13388
13402
 
13389
13403
  // src/cli/cmd/may-the-fourth.ts
13390
13404
  import { Command as Command21 } from "interactive-commander";
13391
- import * as cp from "node:child_process";
13405
+ import * as cp from "child_process";
13392
13406
  import figlet2 from "figlet";
13393
13407
  import chalk16 from "chalk";
13394
13408
  import { vice as vice2 } from "gradient-string";
@@ -13468,7 +13482,7 @@ async function renderHero2() {
13468
13482
  // package.json
13469
13483
  var package_default = {
13470
13484
  name: "lingo.dev",
13471
- version: "0.116.5",
13485
+ version: "0.117.0",
13472
13486
  description: "Lingo.dev CLI",
13473
13487
  private: false,
13474
13488
  publishConfig: {
@@ -13590,126 +13604,126 @@ var package_default = {
13590
13604
  author: "",
13591
13605
  license: "Apache-2.0",
13592
13606
  dependencies: {
13593
- "@ai-sdk/anthropic": "^1.2.11",
13594
- "@ai-sdk/google": "^1.2.19",
13595
- "@ai-sdk/mistral": "^1.2.8",
13596
- "@ai-sdk/openai": "^1.3.22",
13597
- "@babel/generator": "^7.27.1",
13598
- "@babel/parser": "^7.27.1",
13599
- "@babel/traverse": "^7.27.4",
13600
- "@babel/types": "^7.27.1",
13601
- "@biomejs/js-api": "^3.0.0",
13602
- "@biomejs/wasm-nodejs": "^2.2.4",
13603
- "@datocms/cma-client-node": "^4.0.1",
13604
- "@gitbeaker/rest": "^39.34.3",
13605
- "@inkjs/ui": "^2.0.0",
13606
- "@inquirer/prompts": "^7.8.0",
13607
+ "@ai-sdk/anthropic": "1.2.11",
13608
+ "@ai-sdk/google": "1.2.19",
13609
+ "@ai-sdk/mistral": "1.2.8",
13610
+ "@ai-sdk/openai": "1.3.22",
13611
+ "@babel/generator": "7.28.5",
13612
+ "@babel/parser": "7.28.5",
13613
+ "@babel/traverse": "7.28.5",
13614
+ "@babel/types": "7.28.5",
13615
+ "@biomejs/js-api": "3.0.0",
13616
+ "@biomejs/wasm-nodejs": "2.3.7",
13617
+ "@datocms/cma-client-node": "4.0.1",
13618
+ "@gitbeaker/rest": "39.34.3",
13619
+ "@inkjs/ui": "2.0.0",
13620
+ "@inquirer/prompts": "7.8.0",
13607
13621
  "@lingo.dev/_compiler": "workspace:*",
13608
13622
  "@lingo.dev/_locales": "workspace:*",
13609
13623
  "@lingo.dev/_react": "workspace:*",
13610
13624
  "@lingo.dev/_sdk": "workspace:*",
13611
13625
  "@lingo.dev/_spec": "workspace:*",
13612
- "@markdoc/markdoc": "^0.5.4",
13613
- "@modelcontextprotocol/sdk": "^1.5.0",
13614
- "@openrouter/ai-sdk-provider": "^0.7.1",
13615
- "@paralleldrive/cuid2": "^2.2.2",
13616
- "@types/ejs": "^3.1.5",
13617
- ai: "^4.3.15",
13618
- bitbucket: "^2.12.0",
13619
- chalk: "^5.4.1",
13620
- chokidar: "^4.0.3",
13621
- "cli-progress": "^3.12.0",
13622
- "cli-table3": "^0.6.5",
13623
- cors: "^2.8.5",
13624
- "csv-parse": "^5.6.0",
13625
- "csv-stringify": "^6.5.2",
13626
- "date-fns": "^4.1.0",
13627
- dedent: "^1.5.3",
13628
- diff: "^7.0.0",
13629
- dotenv: "^16.4.7",
13630
- ejs: "^3.1.10",
13631
- express: "^5.1.0",
13632
- "external-editor": "^3.1.0",
13633
- figlet: "^1.8.2",
13634
- flat: "^6.0.1",
13635
- "gettext-parser": "^8.0.0",
13636
- glob: "<11.0.0",
13637
- "gradient-string": "^3.0.0",
13638
- "gray-matter": "^4.0.3",
13639
- ini: "^5.0.0",
13640
- ink: "^4.2.0",
13641
- "ink-progress-bar": "^3.0.0",
13642
- "ink-spinner": "^5.0.0",
13643
- inquirer: "^12.6.0",
13644
- "interactive-commander": "^0.5.194",
13645
- "is-url": "^1.2.4",
13646
- jsdom: "^25.0.1",
13647
- json5: "^2.2.3",
13648
- "jsonc-parser": "^3.3.1",
13649
- jsonrepair: "^3.11.2",
13650
- listr2: "^8.3.2",
13651
- lodash: "^4.17.21",
13652
- marked: "^15.0.6",
13653
- "mdast-util-from-markdown": "^2.0.2",
13654
- "mdast-util-gfm": "^3.1.0",
13655
- "micromark-extension-gfm": "^3.0.0",
13656
- "node-machine-id": "^1.1.12",
13657
- "node-webvtt": "^1.9.4",
13658
- "object-hash": "^3.0.0",
13659
- octokit: "^4.0.2",
13660
- "ollama-ai-provider": "^1.2.0",
13661
- open: "^10.2.0",
13662
- ora: "^8.1.1",
13663
- "p-limit": "^6.2.0",
13664
- "php-array-reader": "^2.1.2",
13665
- plist: "^3.1.0",
13666
- "posthog-node": "^5.8.1",
13667
- prettier: "^3.6.2",
13668
- react: "^18.3.1",
13669
- "rehype-stringify": "^10.0.1",
13670
- "remark-disable-tokenizers": "^1.1.1",
13671
- "remark-frontmatter": "^5.0.0",
13672
- "remark-gfm": "^4.0.1",
13673
- "remark-mdx": "^3.1.0",
13674
- "remark-mdx-frontmatter": "^5.1.0",
13675
- "remark-parse": "^11.0.0",
13676
- "remark-rehype": "^11.1.2",
13677
- "remark-stringify": "^11.0.0",
13678
- sax: "^1.4.1",
13679
- "srt-parser-2": "^1.2.3",
13680
- unified: "^11.0.5",
13681
- "unist-util-visit": "^5.0.0",
13682
- vfile: "^6.0.3",
13683
- xliff: "^6.2.1",
13684
- xml2js: "^0.6.2",
13685
- xpath: "^0.0.34",
13686
- yaml: "^2.7.0",
13687
- zod: "^3.25.76"
13626
+ "@markdoc/markdoc": "0.5.4",
13627
+ "@modelcontextprotocol/sdk": "1.22.0",
13628
+ "@openrouter/ai-sdk-provider": "0.7.1",
13629
+ "@paralleldrive/cuid2": "2.2.2",
13630
+ "@types/ejs": "3.1.5",
13631
+ ai: "4.3.15",
13632
+ bitbucket: "2.12.0",
13633
+ chalk: "5.6.2",
13634
+ chokidar: "4.0.3",
13635
+ "cli-progress": "3.12.0",
13636
+ "cli-table3": "0.6.5",
13637
+ cors: "2.8.5",
13638
+ "csv-parse": "5.6.0",
13639
+ "csv-stringify": "6.6.0",
13640
+ "date-fns": "4.1.0",
13641
+ dedent: "1.7.0",
13642
+ diff: "7.0.0",
13643
+ dotenv: "16.4.7",
13644
+ ejs: "3.1.10",
13645
+ express: "5.1.0",
13646
+ "external-editor": "3.1.0",
13647
+ figlet: "1.9.4",
13648
+ flat: "6.0.1",
13649
+ "gettext-parser": "8.0.0",
13650
+ glob: "11.1.0",
13651
+ "gradient-string": "3.0.0",
13652
+ "gray-matter": "4.0.3",
13653
+ ini: "5.0.0",
13654
+ ink: "4.2.0",
13655
+ "ink-progress-bar": "3.0.0",
13656
+ "ink-spinner": "5.0.0",
13657
+ inquirer: "12.6.0",
13658
+ "interactive-commander": "0.5.194",
13659
+ "is-url": "1.2.4",
13660
+ jsdom: "25.0.1",
13661
+ json5: "2.2.3",
13662
+ "jsonc-parser": "3.3.1",
13663
+ jsonrepair: "3.13.1",
13664
+ listr2: "8.3.2",
13665
+ lodash: "4.17.21",
13666
+ marked: "15.0.6",
13667
+ "mdast-util-from-markdown": "2.0.2",
13668
+ "mdast-util-gfm": "3.1.0",
13669
+ "micromark-extension-gfm": "3.0.0",
13670
+ "node-machine-id": "1.1.12",
13671
+ "node-webvtt": "1.9.4",
13672
+ "object-hash": "3.0.0",
13673
+ octokit: "4.0.2",
13674
+ "ollama-ai-provider": "1.2.0",
13675
+ open: "10.2.0",
13676
+ ora: "8.1.1",
13677
+ "p-limit": "6.2.0",
13678
+ "php-array-reader": "2.1.2",
13679
+ plist: "3.1.0",
13680
+ "posthog-node": "5.14.0",
13681
+ prettier: "3.6.2",
13682
+ react: "19.2.0",
13683
+ "rehype-stringify": "10.0.1",
13684
+ "remark-disable-tokenizers": "1.1.1",
13685
+ "remark-frontmatter": "5.0.0",
13686
+ "remark-gfm": "4.0.1",
13687
+ "remark-mdx": "3.1.1",
13688
+ "remark-mdx-frontmatter": "5.2.0",
13689
+ "remark-parse": "11.0.0",
13690
+ "remark-rehype": "11.1.2",
13691
+ "remark-stringify": "11.0.0",
13692
+ sax: "1.4.3",
13693
+ "srt-parser-2": "1.2.3",
13694
+ unified: "11.0.5",
13695
+ "unist-util-visit": "5.0.0",
13696
+ vfile: "6.0.3",
13697
+ xliff: "6.2.2",
13698
+ xml2js: "0.6.2",
13699
+ xpath: "0.0.34",
13700
+ yaml: "2.8.1",
13701
+ zod: "3.25.76"
13688
13702
  },
13689
13703
  devDependencies: {
13690
- "@types/babel__generator": "^7.27.0",
13691
- "@types/chokidar": "^2.1.7",
13692
- "@types/cli-progress": "^3.11.6",
13693
- "@types/cors": "^2.8.17",
13694
- "@types/diff": "^7.0.0",
13695
- "@types/express": "^5.0.3",
13696
- "@types/figlet": "^1.7.0",
13697
- "@types/gettext-parser": "^4.0.4",
13698
- "@types/glob": "^8.1.0",
13699
- "@types/ini": "^4.1.1",
13700
- "@types/is-url": "^1.2.32",
13701
- "@types/jsdom": "^21.1.7",
13702
- "@types/lodash": "^4.17.16",
13703
- "@types/mdast": "^4.0.4",
13704
- "@types/node": "^22.10.2",
13705
- "@types/node-gettext": "^3.0.6",
13706
- "@types/object-hash": "^3.0.6",
13707
- "@types/plist": "^3.0.5",
13708
- "@types/react": "^18.3.20",
13709
- "@types/xml2js": "^0.4.14",
13710
- tsup: "^8.3.5",
13711
- typescript: "^5.8.3",
13712
- vitest: "^3.1.2"
13704
+ "@types/babel__generator": "7.27.0",
13705
+ "@types/chokidar": "2.1.7",
13706
+ "@types/cli-progress": "3.11.6",
13707
+ "@types/cors": "2.8.19",
13708
+ "@types/diff": "7.0.0",
13709
+ "@types/express": "5.0.5",
13710
+ "@types/figlet": "1.7.0",
13711
+ "@types/gettext-parser": "4.0.4",
13712
+ "@types/glob": "8.1.0",
13713
+ "@types/ini": "4.1.1",
13714
+ "@types/is-url": "1.2.32",
13715
+ "@types/jsdom": "21.1.7",
13716
+ "@types/lodash": "4.17.21",
13717
+ "@types/mdast": "4.0.4",
13718
+ "@types/node": "22.10.2",
13719
+ "@types/node-gettext": "3.0.6",
13720
+ "@types/object-hash": "3.0.6",
13721
+ "@types/plist": "3.0.5",
13722
+ "@types/react": "19.2.7",
13723
+ "@types/xml2js": "0.4.14",
13724
+ tsup: "8.5.1",
13725
+ typescript: "5.9.3",
13726
+ vitest: "3.1.2"
13713
13727
  },
13714
13728
  engines: {
13715
13729
  node: ">=18"