@gitlab/ui 114.3.0 → 114.5.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.
@@ -97671,324 +97671,97 @@ var require_globby = __commonJS({
97671
97671
  }
97672
97672
  });
97673
97673
 
97674
- // node_modules/yargs/lib/platform-shims/esm.mjs
97675
- import { notStrictEqual, strictEqual } from "assert";
97674
+ // bin/migrate_custom_utils_to_tw.mjs
97675
+ import { readFile as readFile3, writeFile as writeFile2 } from "node:fs/promises";
97676
+ import { fileURLToPath as fileURLToPath6 } from "node:url";
97677
+ import readline from "node:readline/promises";
97676
97678
 
97677
- // node_modules/cliui/build/lib/index.js
97678
- var align = {
97679
- right: alignRight,
97680
- center: alignCenter
97681
- };
97682
- var top = 0;
97683
- var right = 1;
97684
- var bottom = 2;
97685
- var left = 3;
97686
- var UI = class {
97687
- constructor(opts) {
97688
- var _a4;
97689
- this.width = opts.width;
97690
- this.wrap = (_a4 = opts.wrap) !== null && _a4 !== void 0 ? _a4 : true;
97691
- this.rows = [];
97692
- }
97693
- span(...args) {
97694
- const cols = this.div(...args);
97695
- cols.span = true;
97696
- }
97697
- resetOutput() {
97698
- this.rows = [];
97699
- }
97700
- div(...args) {
97701
- if (args.length === 0) {
97702
- this.div("");
97703
- }
97704
- if (this.wrap && this.shouldApplyLayoutDSL(...args) && typeof args[0] === "string") {
97705
- return this.applyLayoutDSL(args[0]);
97706
- }
97707
- const cols = args.map((arg) => {
97708
- if (typeof arg === "string") {
97709
- return this.colFromString(arg);
97710
- }
97711
- return arg;
97712
- });
97713
- this.rows.push(cols);
97714
- return cols;
97715
- }
97716
- shouldApplyLayoutDSL(...args) {
97717
- return args.length === 1 && typeof args[0] === "string" && /[\t\n]/.test(args[0]);
97718
- }
97719
- applyLayoutDSL(str2) {
97720
- const rows = str2.split("\n").map((row) => row.split(" "));
97721
- let leftColumnWidth = 0;
97722
- rows.forEach((columns) => {
97723
- if (columns.length > 1 && mixin.stringWidth(columns[0]) > leftColumnWidth) {
97724
- leftColumnWidth = Math.min(Math.floor(this.width * 0.5), mixin.stringWidth(columns[0]));
97725
- }
97726
- });
97727
- rows.forEach((columns) => {
97728
- this.div(...columns.map((r3, i3) => {
97729
- return {
97730
- text: r3.trim(),
97731
- padding: this.measurePadding(r3),
97732
- width: i3 === 0 && columns.length > 1 ? leftColumnWidth : void 0
97733
- };
97734
- }));
97735
- });
97736
- return this.rows[this.rows.length - 1];
97737
- }
97738
- colFromString(text) {
97739
- return {
97740
- text,
97741
- padding: this.measurePadding(text)
97742
- };
97743
- }
97744
- measurePadding(str2) {
97745
- const noAnsi = mixin.stripAnsi(str2);
97746
- return [0, noAnsi.match(/\s*$/)[0].length, 0, noAnsi.match(/^\s*/)[0].length];
97747
- }
97748
- toString() {
97749
- const lines = [];
97750
- this.rows.forEach((row) => {
97751
- this.rowToString(row, lines);
97752
- });
97753
- return lines.filter((line3) => !line3.hidden).map((line3) => line3.text).join("\n");
97754
- }
97755
- rowToString(row, lines) {
97756
- this.rasterize(row).forEach((rrow, r3) => {
97757
- let str2 = "";
97758
- rrow.forEach((col, c5) => {
97759
- const { width } = row[c5];
97760
- const wrapWidth = this.negatePadding(row[c5]);
97761
- let ts7 = col;
97762
- if (wrapWidth > mixin.stringWidth(col)) {
97763
- ts7 += " ".repeat(wrapWidth - mixin.stringWidth(col));
97764
- }
97765
- if (row[c5].align && row[c5].align !== "left" && this.wrap) {
97766
- const fn6 = align[row[c5].align];
97767
- ts7 = fn6(ts7, wrapWidth);
97768
- if (mixin.stringWidth(ts7) < wrapWidth) {
97769
- ts7 += " ".repeat((width || 0) - mixin.stringWidth(ts7) - 1);
97770
- }
97771
- }
97772
- const padding = row[c5].padding || [0, 0, 0, 0];
97773
- if (padding[left]) {
97774
- str2 += " ".repeat(padding[left]);
97775
- }
97776
- str2 += addBorder(row[c5], ts7, "| ");
97777
- str2 += ts7;
97778
- str2 += addBorder(row[c5], ts7, " |");
97779
- if (padding[right]) {
97780
- str2 += " ".repeat(padding[right]);
97781
- }
97782
- if (r3 === 0 && lines.length > 0) {
97783
- str2 = this.renderInline(str2, lines[lines.length - 1]);
97784
- }
97785
- });
97786
- lines.push({
97787
- text: str2.replace(/ +$/, ""),
97788
- span: row.span
97789
- });
97790
- });
97791
- return lines;
97792
- }
97793
- // if the full 'source' can render in
97794
- // the target line, do so.
97795
- renderInline(source2, previousLine) {
97796
- const match = source2.match(/^ */);
97797
- const leadingWhitespace = match ? match[0].length : 0;
97798
- const target = previousLine.text;
97799
- const targetTextWidth = mixin.stringWidth(target.trimRight());
97800
- if (!previousLine.span) {
97801
- return source2;
97802
- }
97803
- if (!this.wrap) {
97804
- previousLine.hidden = true;
97805
- return target + source2;
97806
- }
97807
- if (leadingWhitespace < targetTextWidth) {
97808
- return source2;
97809
- }
97810
- previousLine.hidden = true;
97811
- return target.trimRight() + " ".repeat(leadingWhitespace - targetTextWidth) + source2.trimLeft();
97812
- }
97813
- rasterize(row) {
97814
- const rrows = [];
97815
- const widths = this.columnWidths(row);
97816
- let wrapped;
97817
- row.forEach((col, c5) => {
97818
- col.width = widths[c5];
97819
- if (this.wrap) {
97820
- wrapped = mixin.wrap(col.text, this.negatePadding(col), { hard: true }).split("\n");
97821
- } else {
97822
- wrapped = col.text.split("\n");
97823
- }
97824
- if (col.border) {
97825
- wrapped.unshift("." + "-".repeat(this.negatePadding(col) + 2) + ".");
97826
- wrapped.push("'" + "-".repeat(this.negatePadding(col) + 2) + "'");
97827
- }
97828
- if (col.padding) {
97829
- wrapped.unshift(...new Array(col.padding[top] || 0).fill(""));
97830
- wrapped.push(...new Array(col.padding[bottom] || 0).fill(""));
97831
- }
97832
- wrapped.forEach((str2, r3) => {
97833
- if (!rrows[r3]) {
97834
- rrows.push([]);
97835
- }
97836
- const rrow = rrows[r3];
97837
- for (let i3 = 0; i3 < c5; i3++) {
97838
- if (rrow[i3] === void 0) {
97839
- rrow.push("");
97840
- }
97841
- }
97842
- rrow.push(str2);
97843
- });
97844
- });
97845
- return rrows;
97846
- }
97847
- negatePadding(col) {
97848
- let wrapWidth = col.width || 0;
97849
- if (col.padding) {
97850
- wrapWidth -= (col.padding[left] || 0) + (col.padding[right] || 0);
97851
- }
97852
- if (col.border) {
97853
- wrapWidth -= 4;
97854
- }
97855
- return wrapWidth;
97856
- }
97857
- columnWidths(row) {
97858
- if (!this.wrap) {
97859
- return row.map((col) => {
97860
- return col.width || mixin.stringWidth(col.text);
97861
- });
97679
+ // node_modules/yargs/build/lib/yerror.js
97680
+ var YError = class _YError extends Error {
97681
+ constructor(msg) {
97682
+ super(msg || "yargs error");
97683
+ this.name = "YError";
97684
+ if (Error.captureStackTrace) {
97685
+ Error.captureStackTrace(this, _YError);
97862
97686
  }
97863
- let unset = row.length;
97864
- let remainingWidth = this.width;
97865
- const widths = row.map((col) => {
97866
- if (col.width) {
97867
- unset--;
97868
- remainingWidth -= col.width;
97869
- return col.width;
97870
- }
97871
- return void 0;
97872
- });
97873
- const unsetWidth = unset ? Math.floor(remainingWidth / unset) : 0;
97874
- return widths.map((w7, i3) => {
97875
- if (w7 === void 0) {
97876
- return Math.max(unsetWidth, _minWidth(row[i3]));
97877
- }
97878
- return w7;
97879
- });
97880
97687
  }
97881
97688
  };
97882
- function addBorder(col, ts7, style) {
97883
- if (col.border) {
97884
- if (/[.']-+[.']/.test(ts7)) {
97885
- return "";
97886
- }
97887
- if (ts7.trim().length !== 0) {
97888
- return style;
97689
+
97690
+ // node_modules/yargs/build/lib/utils/apply-extends.js
97691
+ var previouslyVisitedConfigs = [];
97692
+ var shim;
97693
+ function applyExtends(config, cwd, mergeExtends, _shim) {
97694
+ shim = _shim;
97695
+ let defaultConfig = {};
97696
+ if (Object.prototype.hasOwnProperty.call(config, "extends")) {
97697
+ if (typeof config.extends !== "string")
97698
+ return defaultConfig;
97699
+ const isPath = /\.json|\..*rc$/.test(config.extends);
97700
+ let pathToDefault = null;
97701
+ if (!isPath) {
97702
+ try {
97703
+ pathToDefault = __require.resolve(config.extends);
97704
+ } catch (_err) {
97705
+ return config;
97706
+ }
97707
+ } else {
97708
+ pathToDefault = getPathToDefaultConfig(cwd, config.extends);
97889
97709
  }
97890
- return " ";
97710
+ checkForCircularExtends(pathToDefault);
97711
+ previouslyVisitedConfigs.push(pathToDefault);
97712
+ defaultConfig = isPath ? JSON.parse(shim.readFileSync(pathToDefault, "utf8")) : __require(config.extends);
97713
+ delete config.extends;
97714
+ defaultConfig = applyExtends(defaultConfig, shim.path.dirname(pathToDefault), mergeExtends, shim);
97891
97715
  }
97892
- return "";
97716
+ previouslyVisitedConfigs = [];
97717
+ return mergeExtends ? mergeDeep(defaultConfig, config) : Object.assign({}, defaultConfig, config);
97893
97718
  }
97894
- function _minWidth(col) {
97895
- const padding = col.padding || [];
97896
- const minWidth = 1 + (padding[left] || 0) + (padding[right] || 0);
97897
- if (col.border) {
97898
- return minWidth + 4;
97719
+ function checkForCircularExtends(cfgPath) {
97720
+ if (previouslyVisitedConfigs.indexOf(cfgPath) > -1) {
97721
+ throw new YError(`Circular extended configurations: '${cfgPath}'.`);
97899
97722
  }
97900
- return minWidth;
97901
97723
  }
97902
- function getWindowWidth() {
97903
- if (typeof process === "object" && process.stdout && process.stdout.columns) {
97904
- return process.stdout.columns;
97905
- }
97906
- return 80;
97724
+ function getPathToDefaultConfig(cwd, pathToExtend) {
97725
+ return shim.path.resolve(cwd, pathToExtend);
97907
97726
  }
97908
- function alignRight(str2, width) {
97909
- str2 = str2.trim();
97910
- const strWidth = mixin.stringWidth(str2);
97911
- if (strWidth < width) {
97912
- return " ".repeat(width - strWidth) + str2;
97727
+ function mergeDeep(config1, config2) {
97728
+ const target = {};
97729
+ function isObject3(obj) {
97730
+ return obj && typeof obj === "object" && !Array.isArray(obj);
97913
97731
  }
97914
- return str2;
97915
- }
97916
- function alignCenter(str2, width) {
97917
- str2 = str2.trim();
97918
- const strWidth = mixin.stringWidth(str2);
97919
- if (strWidth >= width) {
97920
- return str2;
97732
+ Object.assign(target, config1);
97733
+ for (const key2 of Object.keys(config2)) {
97734
+ if (isObject3(config2[key2]) && isObject3(target[key2])) {
97735
+ target[key2] = mergeDeep(config1[key2], config2[key2]);
97736
+ } else {
97737
+ target[key2] = config2[key2];
97738
+ }
97921
97739
  }
97922
- return " ".repeat(width - strWidth >> 1) + str2;
97923
- }
97924
- var mixin;
97925
- function cliui(opts, _mixin) {
97926
- mixin = _mixin;
97927
- return new UI({
97928
- width: (opts === null || opts === void 0 ? void 0 : opts.width) || getWindowWidth(),
97929
- wrap: opts === null || opts === void 0 ? void 0 : opts.wrap
97930
- });
97740
+ return target;
97931
97741
  }
97932
97742
 
97933
- // node_modules/cliui/build/lib/string-utils.js
97934
- var ansi = new RegExp("\x1B(?:\\[(?:\\d+[ABCDEFGJKSTm]|\\d+;\\d+[Hfm]|\\d+;\\d+;\\d+m|6n|s|u|\\?25[lh])|\\w)", "g");
97935
- function stripAnsi(str2) {
97936
- return str2.replace(ansi, "");
97743
+ // node_modules/yargs/build/lib/utils/process-argv.js
97744
+ function getProcessArgvBinIndex() {
97745
+ if (isBundledElectronApp())
97746
+ return 0;
97747
+ return 1;
97937
97748
  }
97938
- function wrap(str2, width) {
97939
- const [start, end] = str2.match(ansi) || ["", ""];
97940
- str2 = stripAnsi(str2);
97941
- let wrapped = "";
97942
- for (let i3 = 0; i3 < str2.length; i3++) {
97943
- if (i3 !== 0 && i3 % width === 0) {
97944
- wrapped += "\n";
97945
- }
97946
- wrapped += str2.charAt(i3);
97947
- }
97948
- if (start && end) {
97949
- wrapped = `${start}${wrapped}${end}`;
97950
- }
97951
- return wrapped;
97749
+ function isBundledElectronApp() {
97750
+ return isElectronApp() && !process.defaultApp;
97952
97751
  }
97953
-
97954
- // node_modules/cliui/index.mjs
97955
- function ui(opts) {
97956
- return cliui(opts, {
97957
- stringWidth: (str2) => {
97958
- return [...str2].length;
97959
- },
97960
- stripAnsi,
97961
- wrap
97962
- });
97752
+ function isElectronApp() {
97753
+ return !!process.versions.electron;
97963
97754
  }
97964
-
97965
- // node_modules/escalade/sync/index.mjs
97966
- import { dirname, resolve } from "path";
97967
- import { readdirSync, statSync } from "fs";
97968
- function sync_default(start, callback) {
97969
- let dir = resolve(".", start);
97970
- let tmp, stats = statSync(dir);
97971
- if (!stats.isDirectory()) {
97972
- dir = dirname(dir);
97973
- }
97974
- while (true) {
97975
- tmp = callback(dir, readdirSync(dir));
97976
- if (tmp)
97977
- return resolve(dir, tmp);
97978
- dir = dirname(tmp = dir);
97979
- if (tmp === dir)
97980
- break;
97981
- }
97755
+ function hideBin(argv) {
97756
+ return argv.slice(getProcessArgvBinIndex() + 1);
97757
+ }
97758
+ function getProcessArgvBin() {
97759
+ return process.argv[getProcessArgvBinIndex()];
97982
97760
  }
97983
-
97984
- // node_modules/yargs/lib/platform-shims/esm.mjs
97985
- import { inspect } from "util";
97986
- import { readFileSync as readFileSync3 } from "fs";
97987
- import { fileURLToPath } from "url";
97988
97761
 
97989
97762
  // node_modules/yargs-parser/build/lib/index.js
97990
97763
  import { format } from "util";
97991
- import { normalize, resolve as resolve2 } from "path";
97764
+ import { normalize, resolve } from "path";
97992
97765
 
97993
97766
  // node_modules/yargs-parser/build/lib/string-utils.js
97994
97767
  function camelCase(str2) {
@@ -98086,10 +97859,10 @@ var DefaultValuesForTypeKey;
98086
97859
  })(DefaultValuesForTypeKey || (DefaultValuesForTypeKey = {}));
98087
97860
 
98088
97861
  // node_modules/yargs-parser/build/lib/yargs-parser.js
98089
- var mixin2;
97862
+ var mixin;
98090
97863
  var YargsParser = class {
98091
97864
  constructor(_mixin) {
98092
- mixin2 = _mixin;
97865
+ mixin = _mixin;
98093
97866
  }
98094
97867
  parse(argsInput, options8) {
98095
97868
  const opts = Object.assign({
@@ -98140,7 +97913,7 @@ var YargsParser = class {
98140
97913
  const notFlagsArgv = notFlagsOption ? "--" : "_";
98141
97914
  const newAliases = /* @__PURE__ */ Object.create(null);
98142
97915
  const defaulted = /* @__PURE__ */ Object.create(null);
98143
- const __ = opts.__ || mixin2.format;
97916
+ const __ = opts.__ || mixin.format;
98144
97917
  const flags = {
98145
97918
  aliases: /* @__PURE__ */ Object.create(null),
98146
97919
  arrays: /* @__PURE__ */ Object.create(null),
@@ -98511,7 +98284,7 @@ var YargsParser = class {
98511
98284
  return val;
98512
98285
  },
98513
98286
  set(value3) {
98514
- val = typeof value3 === "string" ? mixin2.normalize(value3) : value3;
98287
+ val = typeof value3 === "string" ? mixin.normalize(value3) : value3;
98515
98288
  }
98516
98289
  });
98517
98290
  });
@@ -98543,10 +98316,10 @@ var YargsParser = class {
98543
98316
  if (checkAllAliases(key2, flags.normalize) && checkAllAliases(key2, flags.arrays)) {
98544
98317
  if (Array.isArray(val))
98545
98318
  value2 = val.map((val2) => {
98546
- return mixin2.normalize(val2);
98319
+ return mixin.normalize(val2);
98547
98320
  });
98548
98321
  else
98549
- value2 = mixin2.normalize(val);
98322
+ value2 = mixin.normalize(val);
98550
98323
  }
98551
98324
  return value2;
98552
98325
  }
@@ -98569,7 +98342,7 @@ var YargsParser = class {
98569
98342
  if (configPath) {
98570
98343
  try {
98571
98344
  let config = null;
98572
- const resolvedConfigPath = mixin2.resolve(mixin2.cwd(), configPath);
98345
+ const resolvedConfigPath = mixin.resolve(mixin.cwd(), configPath);
98573
98346
  const resolveConfig2 = flags.configs[configKey];
98574
98347
  if (typeof resolveConfig2 === "function") {
98575
98348
  try {
@@ -98582,7 +98355,7 @@ var YargsParser = class {
98582
98355
  return;
98583
98356
  }
98584
98357
  } else {
98585
- config = mixin2.require(resolvedConfigPath);
98358
+ config = mixin.require(resolvedConfigPath);
98586
98359
  }
98587
98360
  setConfigObject(config);
98588
98361
  } catch (ex) {
@@ -98618,7 +98391,7 @@ var YargsParser = class {
98618
98391
  if (typeof envPrefix === "undefined")
98619
98392
  return;
98620
98393
  const prefix = typeof envPrefix === "string" ? envPrefix : "";
98621
- const env3 = mixin2.env();
98394
+ const env3 = mixin.env();
98622
98395
  Object.keys(env3).forEach(function(envVar) {
98623
98396
  if (prefix === "" || envVar.lastIndexOf(prefix, 0) === 0) {
98624
98397
  const keys = envVar.split("__").map(function(key2, i3) {
@@ -98946,7 +98719,7 @@ var parser = new YargsParser({
98946
98719
  },
98947
98720
  format,
98948
98721
  normalize,
98949
- resolve: resolve2,
98722
+ resolve,
98950
98723
  // TODO: figure out a way to combine ESM and CJS coverage, such that
98951
98724
  // we can exercise all the lines below:
98952
98725
  require: (path13) => {
@@ -98972,37 +98745,320 @@ yargsParser.looksLikeNumber = looksLikeNumber;
98972
98745
  var lib_default = yargsParser;
98973
98746
 
98974
98747
  // node_modules/yargs/lib/platform-shims/esm.mjs
98975
- import { basename, dirname as dirname2, extname, relative, resolve as resolve4 } from "path";
98748
+ import { notStrictEqual, strictEqual } from "assert";
98976
98749
 
98977
- // node_modules/yargs/build/lib/utils/process-argv.js
98978
- function getProcessArgvBinIndex() {
98979
- if (isBundledElectronApp())
98980
- return 0;
98981
- return 1;
98750
+ // node_modules/cliui/build/lib/index.js
98751
+ var align = {
98752
+ right: alignRight,
98753
+ center: alignCenter
98754
+ };
98755
+ var top = 0;
98756
+ var right = 1;
98757
+ var bottom = 2;
98758
+ var left = 3;
98759
+ var UI = class {
98760
+ constructor(opts) {
98761
+ var _a4;
98762
+ this.width = opts.width;
98763
+ this.wrap = (_a4 = opts.wrap) !== null && _a4 !== void 0 ? _a4 : true;
98764
+ this.rows = [];
98765
+ }
98766
+ span(...args) {
98767
+ const cols = this.div(...args);
98768
+ cols.span = true;
98769
+ }
98770
+ resetOutput() {
98771
+ this.rows = [];
98772
+ }
98773
+ div(...args) {
98774
+ if (args.length === 0) {
98775
+ this.div("");
98776
+ }
98777
+ if (this.wrap && this.shouldApplyLayoutDSL(...args) && typeof args[0] === "string") {
98778
+ return this.applyLayoutDSL(args[0]);
98779
+ }
98780
+ const cols = args.map((arg) => {
98781
+ if (typeof arg === "string") {
98782
+ return this.colFromString(arg);
98783
+ }
98784
+ return arg;
98785
+ });
98786
+ this.rows.push(cols);
98787
+ return cols;
98788
+ }
98789
+ shouldApplyLayoutDSL(...args) {
98790
+ return args.length === 1 && typeof args[0] === "string" && /[\t\n]/.test(args[0]);
98791
+ }
98792
+ applyLayoutDSL(str2) {
98793
+ const rows = str2.split("\n").map((row) => row.split(" "));
98794
+ let leftColumnWidth = 0;
98795
+ rows.forEach((columns) => {
98796
+ if (columns.length > 1 && mixin2.stringWidth(columns[0]) > leftColumnWidth) {
98797
+ leftColumnWidth = Math.min(Math.floor(this.width * 0.5), mixin2.stringWidth(columns[0]));
98798
+ }
98799
+ });
98800
+ rows.forEach((columns) => {
98801
+ this.div(...columns.map((r3, i3) => {
98802
+ return {
98803
+ text: r3.trim(),
98804
+ padding: this.measurePadding(r3),
98805
+ width: i3 === 0 && columns.length > 1 ? leftColumnWidth : void 0
98806
+ };
98807
+ }));
98808
+ });
98809
+ return this.rows[this.rows.length - 1];
98810
+ }
98811
+ colFromString(text) {
98812
+ return {
98813
+ text,
98814
+ padding: this.measurePadding(text)
98815
+ };
98816
+ }
98817
+ measurePadding(str2) {
98818
+ const noAnsi = mixin2.stripAnsi(str2);
98819
+ return [0, noAnsi.match(/\s*$/)[0].length, 0, noAnsi.match(/^\s*/)[0].length];
98820
+ }
98821
+ toString() {
98822
+ const lines = [];
98823
+ this.rows.forEach((row) => {
98824
+ this.rowToString(row, lines);
98825
+ });
98826
+ return lines.filter((line3) => !line3.hidden).map((line3) => line3.text).join("\n");
98827
+ }
98828
+ rowToString(row, lines) {
98829
+ this.rasterize(row).forEach((rrow, r3) => {
98830
+ let str2 = "";
98831
+ rrow.forEach((col, c5) => {
98832
+ const { width } = row[c5];
98833
+ const wrapWidth = this.negatePadding(row[c5]);
98834
+ let ts7 = col;
98835
+ if (wrapWidth > mixin2.stringWidth(col)) {
98836
+ ts7 += " ".repeat(wrapWidth - mixin2.stringWidth(col));
98837
+ }
98838
+ if (row[c5].align && row[c5].align !== "left" && this.wrap) {
98839
+ const fn6 = align[row[c5].align];
98840
+ ts7 = fn6(ts7, wrapWidth);
98841
+ if (mixin2.stringWidth(ts7) < wrapWidth) {
98842
+ ts7 += " ".repeat((width || 0) - mixin2.stringWidth(ts7) - 1);
98843
+ }
98844
+ }
98845
+ const padding = row[c5].padding || [0, 0, 0, 0];
98846
+ if (padding[left]) {
98847
+ str2 += " ".repeat(padding[left]);
98848
+ }
98849
+ str2 += addBorder(row[c5], ts7, "| ");
98850
+ str2 += ts7;
98851
+ str2 += addBorder(row[c5], ts7, " |");
98852
+ if (padding[right]) {
98853
+ str2 += " ".repeat(padding[right]);
98854
+ }
98855
+ if (r3 === 0 && lines.length > 0) {
98856
+ str2 = this.renderInline(str2, lines[lines.length - 1]);
98857
+ }
98858
+ });
98859
+ lines.push({
98860
+ text: str2.replace(/ +$/, ""),
98861
+ span: row.span
98862
+ });
98863
+ });
98864
+ return lines;
98865
+ }
98866
+ // if the full 'source' can render in
98867
+ // the target line, do so.
98868
+ renderInline(source2, previousLine) {
98869
+ const match = source2.match(/^ */);
98870
+ const leadingWhitespace = match ? match[0].length : 0;
98871
+ const target = previousLine.text;
98872
+ const targetTextWidth = mixin2.stringWidth(target.trimRight());
98873
+ if (!previousLine.span) {
98874
+ return source2;
98875
+ }
98876
+ if (!this.wrap) {
98877
+ previousLine.hidden = true;
98878
+ return target + source2;
98879
+ }
98880
+ if (leadingWhitespace < targetTextWidth) {
98881
+ return source2;
98882
+ }
98883
+ previousLine.hidden = true;
98884
+ return target.trimRight() + " ".repeat(leadingWhitespace - targetTextWidth) + source2.trimLeft();
98885
+ }
98886
+ rasterize(row) {
98887
+ const rrows = [];
98888
+ const widths = this.columnWidths(row);
98889
+ let wrapped;
98890
+ row.forEach((col, c5) => {
98891
+ col.width = widths[c5];
98892
+ if (this.wrap) {
98893
+ wrapped = mixin2.wrap(col.text, this.negatePadding(col), { hard: true }).split("\n");
98894
+ } else {
98895
+ wrapped = col.text.split("\n");
98896
+ }
98897
+ if (col.border) {
98898
+ wrapped.unshift("." + "-".repeat(this.negatePadding(col) + 2) + ".");
98899
+ wrapped.push("'" + "-".repeat(this.negatePadding(col) + 2) + "'");
98900
+ }
98901
+ if (col.padding) {
98902
+ wrapped.unshift(...new Array(col.padding[top] || 0).fill(""));
98903
+ wrapped.push(...new Array(col.padding[bottom] || 0).fill(""));
98904
+ }
98905
+ wrapped.forEach((str2, r3) => {
98906
+ if (!rrows[r3]) {
98907
+ rrows.push([]);
98908
+ }
98909
+ const rrow = rrows[r3];
98910
+ for (let i3 = 0; i3 < c5; i3++) {
98911
+ if (rrow[i3] === void 0) {
98912
+ rrow.push("");
98913
+ }
98914
+ }
98915
+ rrow.push(str2);
98916
+ });
98917
+ });
98918
+ return rrows;
98919
+ }
98920
+ negatePadding(col) {
98921
+ let wrapWidth = col.width || 0;
98922
+ if (col.padding) {
98923
+ wrapWidth -= (col.padding[left] || 0) + (col.padding[right] || 0);
98924
+ }
98925
+ if (col.border) {
98926
+ wrapWidth -= 4;
98927
+ }
98928
+ return wrapWidth;
98929
+ }
98930
+ columnWidths(row) {
98931
+ if (!this.wrap) {
98932
+ return row.map((col) => {
98933
+ return col.width || mixin2.stringWidth(col.text);
98934
+ });
98935
+ }
98936
+ let unset = row.length;
98937
+ let remainingWidth = this.width;
98938
+ const widths = row.map((col) => {
98939
+ if (col.width) {
98940
+ unset--;
98941
+ remainingWidth -= col.width;
98942
+ return col.width;
98943
+ }
98944
+ return void 0;
98945
+ });
98946
+ const unsetWidth = unset ? Math.floor(remainingWidth / unset) : 0;
98947
+ return widths.map((w7, i3) => {
98948
+ if (w7 === void 0) {
98949
+ return Math.max(unsetWidth, _minWidth(row[i3]));
98950
+ }
98951
+ return w7;
98952
+ });
98953
+ }
98954
+ };
98955
+ function addBorder(col, ts7, style) {
98956
+ if (col.border) {
98957
+ if (/[.']-+[.']/.test(ts7)) {
98958
+ return "";
98959
+ }
98960
+ if (ts7.trim().length !== 0) {
98961
+ return style;
98962
+ }
98963
+ return " ";
98964
+ }
98965
+ return "";
98982
98966
  }
98983
- function isBundledElectronApp() {
98984
- return isElectronApp() && !process.defaultApp;
98967
+ function _minWidth(col) {
98968
+ const padding = col.padding || [];
98969
+ const minWidth = 1 + (padding[left] || 0) + (padding[right] || 0);
98970
+ if (col.border) {
98971
+ return minWidth + 4;
98972
+ }
98973
+ return minWidth;
98985
98974
  }
98986
- function isElectronApp() {
98987
- return !!process.versions.electron;
98975
+ function getWindowWidth() {
98976
+ if (typeof process === "object" && process.stdout && process.stdout.columns) {
98977
+ return process.stdout.columns;
98978
+ }
98979
+ return 80;
98988
98980
  }
98989
- function hideBin(argv) {
98990
- return argv.slice(getProcessArgvBinIndex() + 1);
98981
+ function alignRight(str2, width) {
98982
+ str2 = str2.trim();
98983
+ const strWidth = mixin2.stringWidth(str2);
98984
+ if (strWidth < width) {
98985
+ return " ".repeat(width - strWidth) + str2;
98986
+ }
98987
+ return str2;
98991
98988
  }
98992
- function getProcessArgvBin() {
98993
- return process.argv[getProcessArgvBinIndex()];
98989
+ function alignCenter(str2, width) {
98990
+ str2 = str2.trim();
98991
+ const strWidth = mixin2.stringWidth(str2);
98992
+ if (strWidth >= width) {
98993
+ return str2;
98994
+ }
98995
+ return " ".repeat(width - strWidth >> 1) + str2;
98996
+ }
98997
+ var mixin2;
98998
+ function cliui(opts, _mixin) {
98999
+ mixin2 = _mixin;
99000
+ return new UI({
99001
+ width: (opts === null || opts === void 0 ? void 0 : opts.width) || getWindowWidth(),
99002
+ wrap: opts === null || opts === void 0 ? void 0 : opts.wrap
99003
+ });
98994
99004
  }
98995
99005
 
98996
- // node_modules/yargs/build/lib/yerror.js
98997
- var YError = class _YError extends Error {
98998
- constructor(msg) {
98999
- super(msg || "yargs error");
99000
- this.name = "YError";
99001
- if (Error.captureStackTrace) {
99002
- Error.captureStackTrace(this, _YError);
99006
+ // node_modules/cliui/build/lib/string-utils.js
99007
+ var ansi = new RegExp("\x1B(?:\\[(?:\\d+[ABCDEFGJKSTm]|\\d+;\\d+[Hfm]|\\d+;\\d+;\\d+m|6n|s|u|\\?25[lh])|\\w)", "g");
99008
+ function stripAnsi(str2) {
99009
+ return str2.replace(ansi, "");
99010
+ }
99011
+ function wrap(str2, width) {
99012
+ const [start, end] = str2.match(ansi) || ["", ""];
99013
+ str2 = stripAnsi(str2);
99014
+ let wrapped = "";
99015
+ for (let i3 = 0; i3 < str2.length; i3++) {
99016
+ if (i3 !== 0 && i3 % width === 0) {
99017
+ wrapped += "\n";
99003
99018
  }
99019
+ wrapped += str2.charAt(i3);
99004
99020
  }
99005
- };
99021
+ if (start && end) {
99022
+ wrapped = `${start}${wrapped}${end}`;
99023
+ }
99024
+ return wrapped;
99025
+ }
99026
+
99027
+ // node_modules/cliui/index.mjs
99028
+ function ui(opts) {
99029
+ return cliui(opts, {
99030
+ stringWidth: (str2) => {
99031
+ return [...str2].length;
99032
+ },
99033
+ stripAnsi,
99034
+ wrap
99035
+ });
99036
+ }
99037
+
99038
+ // node_modules/escalade/sync/index.mjs
99039
+ import { dirname, resolve as resolve2 } from "path";
99040
+ import { readdirSync, statSync } from "fs";
99041
+ function sync_default(start, callback) {
99042
+ let dir = resolve2(".", start);
99043
+ let tmp, stats = statSync(dir);
99044
+ if (!stats.isDirectory()) {
99045
+ dir = dirname(dir);
99046
+ }
99047
+ while (true) {
99048
+ tmp = callback(dir, readdirSync(dir));
99049
+ if (tmp)
99050
+ return resolve2(dir, tmp);
99051
+ dir = dirname(tmp = dir);
99052
+ if (tmp === dir)
99053
+ break;
99054
+ }
99055
+ }
99056
+
99057
+ // node_modules/yargs/lib/platform-shims/esm.mjs
99058
+ import { inspect } from "util";
99059
+ import { readFileSync as readFileSync3 } from "fs";
99060
+ import { fileURLToPath } from "url";
99061
+ import { basename, dirname as dirname2, extname, relative, resolve as resolve4 } from "path";
99006
99062
 
99007
99063
  // node_modules/y18n/build/lib/platform-shims/node.js
99008
99064
  import { readFileSync as readFileSync2, statSync as statSync2, writeFile } from "fs";
@@ -99025,7 +99081,7 @@ var node_default = {
99025
99081
  };
99026
99082
 
99027
99083
  // node_modules/y18n/build/lib/index.js
99028
- var shim;
99084
+ var shim2;
99029
99085
  var Y18N = class {
99030
99086
  constructor(opts) {
99031
99087
  opts = opts || {};
@@ -99059,7 +99115,7 @@ var Y18N = class {
99059
99115
  } else {
99060
99116
  cb();
99061
99117
  }
99062
- return shim.format.apply(shim.format, [this.cache[this.locale][str2] || str2].concat(args));
99118
+ return shim2.format.apply(shim2.format, [this.cache[this.locale][str2] || str2].concat(args));
99063
99119
  }
99064
99120
  __n() {
99065
99121
  const args = Array.prototype.slice.call(arguments);
@@ -99093,7 +99149,7 @@ var Y18N = class {
99093
99149
  const values = [str2];
99094
99150
  if (~str2.indexOf("%d"))
99095
99151
  values.push(quantity);
99096
- return shim.format.apply(shim.format, values.concat(args));
99152
+ return shim2.format.apply(shim2.format, values.concat(args));
99097
99153
  }
99098
99154
  setLocale(locale) {
99099
99155
  this.locale = locale;
@@ -99134,7 +99190,7 @@ var Y18N = class {
99134
99190
  const cb = work.cb;
99135
99191
  const languageFile = this._resolveLocaleFile(directory, locale);
99136
99192
  const serializedLocale = JSON.stringify(this.cache[locale], null, 2);
99137
- shim.fs.writeFile(languageFile, serializedLocale, "utf-8", function(err) {
99193
+ shim2.fs.writeFile(languageFile, serializedLocale, "utf-8", function(err) {
99138
99194
  _this.writeQueue.shift();
99139
99195
  if (_this.writeQueue.length > 0)
99140
99196
  _this._processWriteQueue();
@@ -99145,8 +99201,8 @@ var Y18N = class {
99145
99201
  let localeLookup = {};
99146
99202
  const languageFile = this._resolveLocaleFile(this.directory, this.locale);
99147
99203
  try {
99148
- if (shim.fs.readFileSync) {
99149
- localeLookup = JSON.parse(shim.fs.readFileSync(languageFile, "utf-8"));
99204
+ if (shim2.fs.readFileSync) {
99205
+ localeLookup = JSON.parse(shim2.fs.readFileSync(languageFile, "utf-8"));
99150
99206
  }
99151
99207
  } catch (err) {
99152
99208
  if (err instanceof SyntaxError) {
@@ -99160,20 +99216,20 @@ var Y18N = class {
99160
99216
  this.cache[this.locale] = localeLookup;
99161
99217
  }
99162
99218
  _resolveLocaleFile(directory, locale) {
99163
- let file = shim.resolve(directory, "./", locale + ".json");
99219
+ let file = shim2.resolve(directory, "./", locale + ".json");
99164
99220
  if (this.fallbackToLanguage && !this._fileExistsSync(file) && ~locale.lastIndexOf("_")) {
99165
- const languageFile = shim.resolve(directory, "./", locale.split("_")[0] + ".json");
99221
+ const languageFile = shim2.resolve(directory, "./", locale.split("_")[0] + ".json");
99166
99222
  if (this._fileExistsSync(languageFile))
99167
99223
  file = languageFile;
99168
99224
  }
99169
99225
  return file;
99170
99226
  }
99171
99227
  _fileExistsSync(file) {
99172
- return shim.exists(file);
99228
+ return shim2.exists(file);
99173
99229
  }
99174
99230
  };
99175
99231
  function y18n(opts, _shim) {
99176
- shim = _shim;
99232
+ shim2 = _shim;
99177
99233
  const y18n3 = new Y18N(opts);
99178
99234
  return {
99179
99235
  __: y18n3.__.bind(y18n3),
@@ -100971,59 +101027,6 @@ ${customMsgs.join("\n")}` : "";
100971
101027
  return self2;
100972
101028
  }
100973
101029
 
100974
- // node_modules/yargs/build/lib/utils/apply-extends.js
100975
- var previouslyVisitedConfigs = [];
100976
- var shim2;
100977
- function applyExtends(config, cwd, mergeExtends, _shim) {
100978
- shim2 = _shim;
100979
- let defaultConfig = {};
100980
- if (Object.prototype.hasOwnProperty.call(config, "extends")) {
100981
- if (typeof config.extends !== "string")
100982
- return defaultConfig;
100983
- const isPath = /\.json|\..*rc$/.test(config.extends);
100984
- let pathToDefault = null;
100985
- if (!isPath) {
100986
- try {
100987
- pathToDefault = __require.resolve(config.extends);
100988
- } catch (_err) {
100989
- return config;
100990
- }
100991
- } else {
100992
- pathToDefault = getPathToDefaultConfig(cwd, config.extends);
100993
- }
100994
- checkForCircularExtends(pathToDefault);
100995
- previouslyVisitedConfigs.push(pathToDefault);
100996
- defaultConfig = isPath ? JSON.parse(shim2.readFileSync(pathToDefault, "utf8")) : __require(config.extends);
100997
- delete config.extends;
100998
- defaultConfig = applyExtends(defaultConfig, shim2.path.dirname(pathToDefault), mergeExtends, shim2);
100999
- }
101000
- previouslyVisitedConfigs = [];
101001
- return mergeExtends ? mergeDeep(defaultConfig, config) : Object.assign({}, defaultConfig, config);
101002
- }
101003
- function checkForCircularExtends(cfgPath) {
101004
- if (previouslyVisitedConfigs.indexOf(cfgPath) > -1) {
101005
- throw new YError(`Circular extended configurations: '${cfgPath}'.`);
101006
- }
101007
- }
101008
- function getPathToDefaultConfig(cwd, pathToExtend) {
101009
- return shim2.path.resolve(cwd, pathToExtend);
101010
- }
101011
- function mergeDeep(config1, config2) {
101012
- const target = {};
101013
- function isObject3(obj) {
101014
- return obj && typeof obj === "object" && !Array.isArray(obj);
101015
- }
101016
- Object.assign(target, config1);
101017
- for (const key2 of Object.keys(config2)) {
101018
- if (isObject3(config2[key2]) && isObject3(target[key2])) {
101019
- target[key2] = mergeDeep(config1[key2], config2[key2]);
101020
- } else {
101021
- target[key2] = config2[key2];
101022
- }
101023
- }
101024
- return target;
101025
- }
101026
-
101027
101030
  // node_modules/yargs/build/lib/yargs-factory.js
101028
101031
  var __classPrivateFieldSet = function(receiver, state, value2, kind, f7) {
101029
101032
  if (kind === "m")
@@ -102527,11 +102530,6 @@ function isYargsInstance(y5) {
102527
102530
  var Yargs = YargsFactory(esm_default);
102528
102531
  var yargs_default = Yargs;
102529
102532
 
102530
- // bin/migrate_custom_utils_to_tw.mjs
102531
- import { readFile as readFile3, writeFile as writeFile2 } from "node:fs/promises";
102532
- import { fileURLToPath as fileURLToPath6 } from "node:url";
102533
- import readline from "node:readline/promises";
102534
-
102535
102533
  // node_modules/prettier/index.mjs
102536
102534
  import { createRequire as __prettierCreateRequire } from "module";
102537
102535
  import { fileURLToPath as __prettierFileUrlToPath } from "url";
@@ -184457,9 +184455,8 @@ function tailwindClassToImportant(klass) {
184457
184455
  }
184458
184456
  if (klass.includes("!gl-")) {
184459
184457
  return klass;
184460
- } else {
184461
- return klass.replace(/(^|:)(-?gl-)/, "$1!$2");
184462
184458
  }
184459
+ return klass.replace(/(^|:)(-?gl-)/, "$1!$2");
184463
184460
  }
184464
184461
  function filterOutNonStringValues(rawMigrations) {
184465
184462
  return Object.entries(rawMigrations).filter(([, to4]) => typeof to4 === "string");
@@ -184468,14 +184465,14 @@ function addImportantVariants(rawMigrations) {
184468
184465
  const map2 = rawMigrations.reduce((acc, [from, to4]) => {
184469
184466
  acc.set(from, to4);
184470
184467
  if (to4.includes(" ")) {
184471
- acc.set("\\." + from, "." + to4.replace(/ /g, "."));
184468
+ acc.set(`\\.${from}`, `.${to4.replace(/ /g, ".")}`);
184472
184469
  }
184473
184470
  const importantFrom = legacyClassToImportant(from);
184474
184471
  if (!Object.hasOwn(rawMigrations, importantFrom)) {
184475
184472
  const importantTo = tailwindClassToImportant(to4);
184476
184473
  acc.set(importantFrom, importantTo);
184477
184474
  if (to4.includes(" ")) {
184478
- acc.set("\\." + importantFrom, "." + importantTo.replace(/ /g, "."));
184475
+ acc.set(`\\.${importantFrom}`, `.${importantTo.replace(/ /g, ".")}`);
184479
184476
  }
184480
184477
  }
184481
184478
  return acc;