@shopify/cli-kit 3.0.10 → 3.0.13
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/CHANGELOG.md +25 -0
- package/dist/{index-84d3a745.js → index-6d1cf8d0.js} +1615 -411
- package/dist/index-6d1cf8d0.js.map +1 -0
- package/dist/index.d.ts +371 -304
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/{multipart-parser-44064309.js → multipart-parser-cfdda463.js} +3 -2
- package/dist/multipart-parser-cfdda463.js.map +1 -0
- package/package.json +5 -3
- package/dist/index-84d3a745.js.map +0 -1
- package/dist/multipart-parser-44064309.js.map +0 -1
|
@@ -3,7 +3,7 @@ import require$$0$3 from 'events';
|
|
|
3
3
|
import require$$0$2 from 'readline';
|
|
4
4
|
import require$$0$5, { sep as sep$1, extname as extname$1, resolve as resolve$4, dirname as dirname$2 } from 'path';
|
|
5
5
|
import path$I from 'node:path';
|
|
6
|
-
import url$1, { fileURLToPath, format as format$
|
|
6
|
+
import url$1, { fileURLToPath, format as format$6 } from 'node:url';
|
|
7
7
|
import process$2, { platform as platform$1 } from 'node:process';
|
|
8
8
|
import fs$L, { promises } from 'node:fs';
|
|
9
9
|
import require$$1$2, { constants as constants$8, EOL, networkInterfaces } from 'os';
|
|
@@ -19,6 +19,7 @@ import require$$0$b from 'constants';
|
|
|
19
19
|
import Stream$5, { Writable as Writable$1, PassThrough as PassThrough$7, pipeline as pipeline$2 } from 'node:stream';
|
|
20
20
|
import { promisify as promisify$8, types as types$6, deprecate } from 'node:util';
|
|
21
21
|
import crypto$1, { randomUUID } from 'crypto';
|
|
22
|
+
import prettier from 'prettier';
|
|
22
23
|
import * as tty$1 from 'tty';
|
|
23
24
|
import tty__default from 'tty';
|
|
24
25
|
import StackTracey from 'stacktracey';
|
|
@@ -38,7 +39,7 @@ import require$$0$d from 'http2';
|
|
|
38
39
|
import require$$1$4 from 'tls';
|
|
39
40
|
import require$$0$e, { createServer } from 'net';
|
|
40
41
|
import require$$0$f from 'punycode';
|
|
41
|
-
import { parse as parse$i, stringify as stringify$
|
|
42
|
+
import { parse as parse$i, stringify as stringify$f } from 'envfile';
|
|
42
43
|
|
|
43
44
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
44
45
|
|
|
@@ -142,7 +143,7 @@ Reflect.defineProperty(module.exports, 'windows', { enumerable: false, value: wi
|
|
|
142
143
|
Reflect.defineProperty(module.exports, 'other', { enumerable: false, value: other });
|
|
143
144
|
}(symbols$2));
|
|
144
145
|
|
|
145
|
-
const isObject$
|
|
146
|
+
const isObject$7 = val => val !== null && typeof val === 'object' && !Array.isArray(val);
|
|
146
147
|
|
|
147
148
|
/* eslint-disable no-control-regex */
|
|
148
149
|
// this is a modified version of https://github.com/chalk/ansi-regex (MIT License)
|
|
@@ -298,7 +299,7 @@ const create$3 = () => {
|
|
|
298
299
|
};
|
|
299
300
|
|
|
300
301
|
colors.theme = custom => {
|
|
301
|
-
if (!isObject$
|
|
302
|
+
if (!isObject$7(custom)) throw new TypeError('Expected theme to be an object');
|
|
302
303
|
for (let name of Object.keys(custom)) {
|
|
303
304
|
colors.alias(name, custom[name]);
|
|
304
305
|
}
|
|
@@ -1892,7 +1893,7 @@ const colors$5 = ansiColors.exports;
|
|
|
1892
1893
|
const Prompt$5 = prompt$1;
|
|
1893
1894
|
const roles = roles_1;
|
|
1894
1895
|
const utils$t = utils$z;
|
|
1895
|
-
const { reorder, scrollUp, scrollDown, isObject: isObject$
|
|
1896
|
+
const { reorder, scrollUp, scrollDown, isObject: isObject$6, swap } = utils$t;
|
|
1896
1897
|
|
|
1897
1898
|
class ArrayPrompt$3 extends Prompt$5 {
|
|
1898
1899
|
constructor(options) {
|
|
@@ -1926,7 +1927,7 @@ class ArrayPrompt$3 extends Prompt$5 {
|
|
|
1926
1927
|
throw new Error('At least one choice must be selectable');
|
|
1927
1928
|
}
|
|
1928
1929
|
|
|
1929
|
-
if (isObject$
|
|
1930
|
+
if (isObject$6(initial)) initial = Object.keys(initial);
|
|
1930
1931
|
if (Array.isArray(initial)) {
|
|
1931
1932
|
if (autofocus != null) this.index = this.findIndex(autofocus);
|
|
1932
1933
|
initial.forEach(v => this.enable(this.find(v)));
|
|
@@ -2190,7 +2191,7 @@ class ArrayPrompt$3 extends Prompt$5 {
|
|
|
2190
2191
|
let len = this.choices.length;
|
|
2191
2192
|
let num = this.num;
|
|
2192
2193
|
|
|
2193
|
-
let handle = (val, res) => {
|
|
2194
|
+
let handle = (val = false, res) => {
|
|
2194
2195
|
clearTimeout(this.numberTimeout);
|
|
2195
2196
|
if (val) res = number(num);
|
|
2196
2197
|
this.num = '';
|
|
@@ -2402,7 +2403,7 @@ class ArrayPrompt$3 extends Prompt$5 {
|
|
|
2402
2403
|
}
|
|
2403
2404
|
|
|
2404
2405
|
find(value, prop) {
|
|
2405
|
-
if (isObject$
|
|
2406
|
+
if (isObject$6(value)) return prop ? value[prop] : value;
|
|
2406
2407
|
let isChoice = (ele, i) => [ele.name, i].includes(value);
|
|
2407
2408
|
let fn = typeof value === 'function' ? value : isChoice;
|
|
2408
2409
|
let choice = this.choices.find(fn);
|
|
@@ -2810,7 +2811,7 @@ const utils$r = utils$z;
|
|
|
2810
2811
|
* @api public
|
|
2811
2812
|
*/
|
|
2812
2813
|
|
|
2813
|
-
var placeholder$2 = (prompt, options) => {
|
|
2814
|
+
var placeholder$2 = (prompt, options = {}) => {
|
|
2814
2815
|
prompt.cursorHide();
|
|
2815
2816
|
|
|
2816
2817
|
let { input = '', initial = '', pos, showCursor = true, color } = options;
|
|
@@ -4059,7 +4060,7 @@ class Item {
|
|
|
4059
4060
|
}
|
|
4060
4061
|
}
|
|
4061
4062
|
|
|
4062
|
-
const tokenize = async(options = {}, defaults, fn = token => token) => {
|
|
4063
|
+
const tokenize = async(options = {}, defaults = {}, fn = token => token) => {
|
|
4063
4064
|
let unique = new Set();
|
|
4064
4065
|
let fields = options.fields || [];
|
|
4065
4066
|
let input = options.template;
|
|
@@ -5417,7 +5418,7 @@ const relative = function(from, to) {
|
|
|
5417
5418
|
const dirname$1 = function(p) {
|
|
5418
5419
|
return require$$0$5.posix.dirname(normalizeWindowsPath(p));
|
|
5419
5420
|
};
|
|
5420
|
-
const format$
|
|
5421
|
+
const format$5 = function(p) {
|
|
5421
5422
|
return normalizeWindowsPath(require$$0$5.posix.format(p));
|
|
5422
5423
|
};
|
|
5423
5424
|
const basename = function(p, ext) {
|
|
@@ -5440,7 +5441,7 @@ const _path = /*#__PURE__*/Object.freeze({
|
|
|
5440
5441
|
extname: extname,
|
|
5441
5442
|
relative: relative,
|
|
5442
5443
|
dirname: dirname$1,
|
|
5443
|
-
format: format$
|
|
5444
|
+
format: format$5,
|
|
5444
5445
|
basename: basename,
|
|
5445
5446
|
parse: parse$h
|
|
5446
5447
|
});
|
|
@@ -5610,7 +5611,7 @@ async function pLocate$2(
|
|
|
5610
5611
|
{
|
|
5611
5612
|
concurrency = Number.POSITIVE_INFINITY,
|
|
5612
5613
|
preserveOrder = true,
|
|
5613
|
-
},
|
|
5614
|
+
} = {},
|
|
5614
5615
|
) {
|
|
5615
5616
|
const limit = pLimit$3(concurrency);
|
|
5616
5617
|
|
|
@@ -5637,14 +5638,14 @@ const typeMappings = {
|
|
|
5637
5638
|
};
|
|
5638
5639
|
|
|
5639
5640
|
function checkType(type) {
|
|
5640
|
-
if (type
|
|
5641
|
+
if (Object.hasOwnProperty.call(typeMappings, type)) {
|
|
5641
5642
|
return;
|
|
5642
5643
|
}
|
|
5643
5644
|
|
|
5644
5645
|
throw new Error(`Invalid type specified: ${type}`);
|
|
5645
5646
|
}
|
|
5646
5647
|
|
|
5647
|
-
const matchType = (type, stat) =>
|
|
5648
|
+
const matchType = (type, stat) => stat[typeMappings[type]]();
|
|
5648
5649
|
|
|
5649
5650
|
const toPath$1 = urlOrPath => urlOrPath instanceof URL ? fileURLToPath(urlOrPath) : urlOrPath;
|
|
5650
5651
|
|
|
@@ -5677,7 +5678,7 @@ const toPath = urlOrPath => urlOrPath instanceof URL ? fileURLToPath(urlOrPath)
|
|
|
5677
5678
|
|
|
5678
5679
|
const findUpStop = Symbol('findUpStop');
|
|
5679
5680
|
|
|
5680
|
-
async function findUpMultiple(name, options) {
|
|
5681
|
+
async function findUpMultiple(name, options = {}) {
|
|
5681
5682
|
let directory = path$I.resolve(toPath(options.cwd) || '');
|
|
5682
5683
|
const {root} = path$I.parse(directory);
|
|
5683
5684
|
const stopAt = path$I.resolve(directory, options.stopAt || root);
|
|
@@ -6152,7 +6153,7 @@ exports.flatten = (...args) => {
|
|
|
6152
6153
|
|
|
6153
6154
|
const utils$m = utils$n;
|
|
6154
6155
|
|
|
6155
|
-
var stringify$
|
|
6156
|
+
var stringify$e = (ast, options = {}) => {
|
|
6156
6157
|
let stringify = (node, parent = {}) => {
|
|
6157
6158
|
let invalidBlock = options.escapeInvalid && utils$m.isInvalidBrace(parent);
|
|
6158
6159
|
let invalidNode = node.invalid === true && options.escapeInvalid === true;
|
|
@@ -6494,7 +6495,7 @@ var toRegexRange_1 = toRegexRange$1;
|
|
|
6494
6495
|
const util$9 = require$$0$6;
|
|
6495
6496
|
const toRegexRange = toRegexRange_1;
|
|
6496
6497
|
|
|
6497
|
-
const isObject$
|
|
6498
|
+
const isObject$5 = val => val !== null && typeof val === 'object' && !Array.isArray(val);
|
|
6498
6499
|
|
|
6499
6500
|
const transform$1 = toNumber => {
|
|
6500
6501
|
return value => toNumber === true ? Number(value) : String(value);
|
|
@@ -6515,7 +6516,7 @@ const zeros = input => {
|
|
|
6515
6516
|
return index > 0;
|
|
6516
6517
|
};
|
|
6517
6518
|
|
|
6518
|
-
const stringify$
|
|
6519
|
+
const stringify$d = (start, end, options) => {
|
|
6519
6520
|
if (typeof start === 'string' || typeof end === 'string') {
|
|
6520
6521
|
return true;
|
|
6521
6522
|
}
|
|
@@ -6611,7 +6612,7 @@ const invalidStep = (step, options) => {
|
|
|
6611
6612
|
return [];
|
|
6612
6613
|
};
|
|
6613
6614
|
|
|
6614
|
-
const fillNumbers = (start, end, step = 1, options) => {
|
|
6615
|
+
const fillNumbers = (start, end, step = 1, options = {}) => {
|
|
6615
6616
|
let a = Number(start);
|
|
6616
6617
|
let b = Number(end);
|
|
6617
6618
|
|
|
@@ -6632,7 +6633,7 @@ const fillNumbers = (start, end, step = 1, options) => {
|
|
|
6632
6633
|
|
|
6633
6634
|
let padded = zeros(startString) || zeros(endString) || zeros(stepString);
|
|
6634
6635
|
let maxLen = padded ? Math.max(startString.length, endString.length, stepString.length) : 0;
|
|
6635
|
-
let toNumber = padded === false && stringify$
|
|
6636
|
+
let toNumber = padded === false && stringify$d(start, end, options) === false;
|
|
6636
6637
|
let format = options.transform || transform$1(toNumber);
|
|
6637
6638
|
|
|
6638
6639
|
if (options.toRegex && step === 1) {
|
|
@@ -6663,7 +6664,7 @@ const fillNumbers = (start, end, step = 1, options) => {
|
|
|
6663
6664
|
return range;
|
|
6664
6665
|
};
|
|
6665
6666
|
|
|
6666
|
-
const fillLetters = (start, end, step = 1, options) => {
|
|
6667
|
+
const fillLetters = (start, end, step = 1, options = {}) => {
|
|
6667
6668
|
if ((!isNumber$3(start) && start.length > 1) || (!isNumber$3(end) && end.length > 1)) {
|
|
6668
6669
|
return invalidRange(start, end, options);
|
|
6669
6670
|
}
|
|
@@ -6710,7 +6711,7 @@ const fill$2 = (start, end, step, options = {}) => {
|
|
|
6710
6711
|
return fill$2(start, end, 1, { transform: step });
|
|
6711
6712
|
}
|
|
6712
6713
|
|
|
6713
|
-
if (isObject$
|
|
6714
|
+
if (isObject$5(step)) {
|
|
6714
6715
|
return fill$2(start, end, 0, step);
|
|
6715
6716
|
}
|
|
6716
6717
|
|
|
@@ -6719,7 +6720,7 @@ const fill$2 = (start, end, step, options = {}) => {
|
|
|
6719
6720
|
step = step || opts.step || 1;
|
|
6720
6721
|
|
|
6721
6722
|
if (!isNumber$3(step)) {
|
|
6722
|
-
if (step != null && !isObject$
|
|
6723
|
+
if (step != null && !isObject$5(step)) return invalidStep(step, opts);
|
|
6723
6724
|
return fill$2(start, end, 1, step);
|
|
6724
6725
|
}
|
|
6725
6726
|
|
|
@@ -6789,7 +6790,7 @@ const compile$2 = (ast, options = {}) => {
|
|
|
6789
6790
|
var compile_1$2 = compile$2;
|
|
6790
6791
|
|
|
6791
6792
|
const fill = fillRange;
|
|
6792
|
-
const stringify$
|
|
6793
|
+
const stringify$c = stringify$e;
|
|
6793
6794
|
const utils$k = utils$n;
|
|
6794
6795
|
|
|
6795
6796
|
const append$3 = (queue = '', stash = '', enclose = false) => {
|
|
@@ -6833,7 +6834,7 @@ const expand$1 = (ast, options = {}) => {
|
|
|
6833
6834
|
}
|
|
6834
6835
|
|
|
6835
6836
|
if (node.invalid || node.dollar) {
|
|
6836
|
-
q.push(append$3(q.pop(), stringify$
|
|
6837
|
+
q.push(append$3(q.pop(), stringify$c(node, options)));
|
|
6837
6838
|
return;
|
|
6838
6839
|
}
|
|
6839
6840
|
|
|
@@ -6851,7 +6852,7 @@ const expand$1 = (ast, options = {}) => {
|
|
|
6851
6852
|
|
|
6852
6853
|
let range = fill(...args, options);
|
|
6853
6854
|
if (range.length === 0) {
|
|
6854
|
-
range = stringify$
|
|
6855
|
+
range = stringify$c(node, options);
|
|
6855
6856
|
}
|
|
6856
6857
|
|
|
6857
6858
|
q.push(append$3(q.pop(), range));
|
|
@@ -6956,7 +6957,7 @@ var constants$7 = {
|
|
|
6956
6957
|
CHAR_ZERO_WIDTH_NOBREAK_SPACE: '\uFEFF' /* \uFEFF */
|
|
6957
6958
|
};
|
|
6958
6959
|
|
|
6959
|
-
const stringify$
|
|
6960
|
+
const stringify$b = stringify$e;
|
|
6960
6961
|
|
|
6961
6962
|
/**
|
|
6962
6963
|
* Constants
|
|
@@ -7199,7 +7200,7 @@ const parse$g = (input, options = {}) => {
|
|
|
7199
7200
|
if (block.ranges > 0) {
|
|
7200
7201
|
block.ranges = 0;
|
|
7201
7202
|
let open = block.nodes.shift();
|
|
7202
|
-
block.nodes = [open, { type: 'text', value: stringify$
|
|
7203
|
+
block.nodes = [open, { type: 'text', value: stringify$b(block) }];
|
|
7203
7204
|
}
|
|
7204
7205
|
|
|
7205
7206
|
push({ type: 'comma', value });
|
|
@@ -7285,7 +7286,7 @@ const parse$g = (input, options = {}) => {
|
|
|
7285
7286
|
|
|
7286
7287
|
var parse_1$3 = parse$g;
|
|
7287
7288
|
|
|
7288
|
-
const stringify$
|
|
7289
|
+
const stringify$a = stringify$e;
|
|
7289
7290
|
const compile$1 = compile_1$2;
|
|
7290
7291
|
const expand = expand_1;
|
|
7291
7292
|
const parse$f = parse_1$3;
|
|
@@ -7358,9 +7359,9 @@ braces$1.parse = (input, options = {}) => parse$f(input, options);
|
|
|
7358
7359
|
|
|
7359
7360
|
braces$1.stringify = (input, options = {}) => {
|
|
7360
7361
|
if (typeof input === 'string') {
|
|
7361
|
-
return stringify$
|
|
7362
|
+
return stringify$a(braces$1.parse(input, options), options);
|
|
7362
7363
|
}
|
|
7363
|
-
return stringify$
|
|
7364
|
+
return stringify$a(input, options);
|
|
7364
7365
|
};
|
|
7365
7366
|
|
|
7366
7367
|
/**
|
|
@@ -9185,7 +9186,7 @@ const scan = scan_1;
|
|
|
9185
9186
|
const parse$d = parse_1$2;
|
|
9186
9187
|
const utils$g = utils$j;
|
|
9187
9188
|
const constants$4 = constants$6;
|
|
9188
|
-
const isObject$
|
|
9189
|
+
const isObject$4 = val => val && typeof val === 'object' && !Array.isArray(val);
|
|
9189
9190
|
|
|
9190
9191
|
/**
|
|
9191
9192
|
* Creates a matcher function from one or more glob patterns. The
|
|
@@ -9222,7 +9223,7 @@ const picomatch$2 = (glob, options, returnState = false) => {
|
|
|
9222
9223
|
return arrayMatcher;
|
|
9223
9224
|
}
|
|
9224
9225
|
|
|
9225
|
-
const isState = isObject$
|
|
9226
|
+
const isState = isObject$4(glob) && glob.tokens && glob.input;
|
|
9226
9227
|
|
|
9227
9228
|
if (glob === '' || (typeof glob !== 'string' && !isState)) {
|
|
9228
9229
|
throw new TypeError('Expected pattern to be a non-empty string');
|
|
@@ -10354,7 +10355,7 @@ utils$o.string = string$1;
|
|
|
10354
10355
|
Object.defineProperty(tasks, "__esModule", { value: true });
|
|
10355
10356
|
tasks.convertPatternGroupToTask = tasks.convertPatternGroupsToTasks = tasks.groupPatternsByBaseDirectory = tasks.getNegativePatternsAsPositive = tasks.getPositivePatterns = tasks.convertPatternsToTasks = tasks.generate = void 0;
|
|
10356
10357
|
const utils$e = utils$o;
|
|
10357
|
-
function generate(patterns, settings) {
|
|
10358
|
+
function generate$1(patterns, settings) {
|
|
10358
10359
|
const positivePatterns = getPositivePatterns(patterns);
|
|
10359
10360
|
const negativePatterns = getNegativePatternsAsPositive(patterns, settings.ignore);
|
|
10360
10361
|
const staticPatterns = positivePatterns.filter((pattern) => utils$e.pattern.isStaticPattern(pattern, settings));
|
|
@@ -10363,7 +10364,7 @@ function generate(patterns, settings) {
|
|
|
10363
10364
|
const dynamicTasks = convertPatternsToTasks(dynamicPatterns, negativePatterns, /* dynamic */ true);
|
|
10364
10365
|
return staticTasks.concat(dynamicTasks);
|
|
10365
10366
|
}
|
|
10366
|
-
tasks.generate = generate;
|
|
10367
|
+
tasks.generate = generate$1;
|
|
10367
10368
|
/**
|
|
10368
10369
|
* Returns tasks grouped by basic pattern directories.
|
|
10369
10370
|
*
|
|
@@ -12288,10 +12289,12 @@ var out = FastGlob;
|
|
|
12288
12289
|
|
|
12289
12290
|
function relativize(path) {
|
|
12290
12291
|
const result = commondir([path, process.cwd()]);
|
|
12291
|
-
|
|
12292
|
+
const relativePath = relative(process.cwd(), path);
|
|
12293
|
+
const relativeComponents = relativePath.split("/").filter((component) => component === "..").length;
|
|
12294
|
+
if (result === "/" || relativeComponents > 2) {
|
|
12292
12295
|
return path;
|
|
12293
12296
|
} else {
|
|
12294
|
-
return
|
|
12297
|
+
return relativePath;
|
|
12295
12298
|
}
|
|
12296
12299
|
}
|
|
12297
12300
|
|
|
@@ -12304,7 +12307,7 @@ var path$w = /*#__PURE__*/Object.freeze({
|
|
|
12304
12307
|
delimiter: delimiter,
|
|
12305
12308
|
dirname: dirname$1,
|
|
12306
12309
|
extname: extname,
|
|
12307
|
-
format: format$
|
|
12310
|
+
format: format$5,
|
|
12308
12311
|
isAbsolute: isAbsolute,
|
|
12309
12312
|
join: join$3,
|
|
12310
12313
|
normalize: normalize$2,
|
|
@@ -12317,7 +12320,7 @@ var path$w = /*#__PURE__*/Object.freeze({
|
|
|
12317
12320
|
});
|
|
12318
12321
|
|
|
12319
12322
|
var name = "@shopify/cli-kit";
|
|
12320
|
-
var version$
|
|
12323
|
+
var version$2 = "3.0.13";
|
|
12321
12324
|
var description$1 = "A set of utilities, interfaces, and models that are common across all the platform features";
|
|
12322
12325
|
var keywords = [
|
|
12323
12326
|
"shopify",
|
|
@@ -12370,7 +12373,8 @@ var dependencies$1 = {
|
|
|
12370
12373
|
keytar: "^7.9.0",
|
|
12371
12374
|
open: "^8.4.0",
|
|
12372
12375
|
"source-map-support": "^0.5.21",
|
|
12373
|
-
stacktracey: "^2.1.8"
|
|
12376
|
+
stacktracey: "^2.1.8",
|
|
12377
|
+
prettier: "^2.6.2"
|
|
12374
12378
|
};
|
|
12375
12379
|
var devDependencies = {
|
|
12376
12380
|
"@iarna/toml": "^2.2.5",
|
|
@@ -12380,12 +12384,12 @@ var devDependencies = {
|
|
|
12380
12384
|
"abort-controller": "^3.0.0",
|
|
12381
12385
|
"ansi-colors": "^4.1.1",
|
|
12382
12386
|
"change-case": "^4.1.2",
|
|
12383
|
-
"color-json": "^2.0.1",
|
|
12384
12387
|
commondir: "^1.0.1",
|
|
12385
12388
|
conf: "^10.1.2",
|
|
12386
12389
|
"cross-zip": "^4.0.0",
|
|
12387
12390
|
del: "^6.0.0",
|
|
12388
12391
|
enquirer: "^2.3.6",
|
|
12392
|
+
"color-json": "^2.0.1",
|
|
12389
12393
|
"env-paths": "^3.0.0",
|
|
12390
12394
|
execa: "^6.0.0",
|
|
12391
12395
|
"fast-glob": "^3.2.11",
|
|
@@ -12396,6 +12400,7 @@ var devDependencies = {
|
|
|
12396
12400
|
"get-port-please": "^2.5.0",
|
|
12397
12401
|
graphql: "^16.4.0",
|
|
12398
12402
|
"graphql-request": "^4.3.0",
|
|
12403
|
+
haikunator: "^2.1.2",
|
|
12399
12404
|
"js-yaml": "^4.1.0",
|
|
12400
12405
|
"latest-version": "^6.0.0",
|
|
12401
12406
|
liquidjs: "^9.36.0",
|
|
@@ -12413,7 +12418,7 @@ var devDependencies = {
|
|
|
12413
12418
|
};
|
|
12414
12419
|
var cliKitPackageJson = {
|
|
12415
12420
|
name: name,
|
|
12416
|
-
version: version$
|
|
12421
|
+
version: version$2,
|
|
12417
12422
|
"private": false,
|
|
12418
12423
|
description: description$1,
|
|
12419
12424
|
keywords: keywords,
|
|
@@ -12517,7 +12522,9 @@ const constants$2 = {
|
|
|
12517
12522
|
spinWorkspace: "SPIN_WORKSPACE",
|
|
12518
12523
|
spinNamespace: "SPIN_NAMESPACE",
|
|
12519
12524
|
spinHost: "SPIN_HOST",
|
|
12520
|
-
partnersToken: "SHOPIFY_CLI_PARTNERS_TOKEN"
|
|
12525
|
+
partnersToken: "SHOPIFY_CLI_PARTNERS_TOKEN",
|
|
12526
|
+
verbose: "SHOPIFY_FLAG_VERBOSE",
|
|
12527
|
+
noAnalytics: "SHOPIFY_CLI_NO_ANALYTICS"
|
|
12521
12528
|
},
|
|
12522
12529
|
paths: {
|
|
12523
12530
|
executables: {
|
|
@@ -12540,7 +12547,7 @@ const constants$2 = {
|
|
|
12540
12547
|
}
|
|
12541
12548
|
},
|
|
12542
12549
|
versions: {
|
|
12543
|
-
cliKit: version$
|
|
12550
|
+
cliKit: version$2
|
|
12544
12551
|
},
|
|
12545
12552
|
keychain: {
|
|
12546
12553
|
service: "shopify-cli"
|
|
@@ -13217,7 +13224,7 @@ function npmRunPath(options = {}) {
|
|
|
13217
13224
|
return [...result, path_].join(path$I.delimiter);
|
|
13218
13225
|
}
|
|
13219
13226
|
|
|
13220
|
-
function npmRunPathEnv({env = process$2.env, ...options}) {
|
|
13227
|
+
function npmRunPathEnv({env = process$2.env, ...options} = {}) {
|
|
13221
13228
|
env = {...env};
|
|
13222
13229
|
|
|
13223
13230
|
const path = pathKey({env});
|
|
@@ -14652,11 +14659,30 @@ const open = async (url) => {
|
|
|
14652
14659
|
const externalOpen = await import('open');
|
|
14653
14660
|
await externalOpen.default(url);
|
|
14654
14661
|
};
|
|
14655
|
-
const captureOutput = async (command, args) => {
|
|
14656
|
-
const result = await
|
|
14662
|
+
const captureOutput = async (command, args, options) => {
|
|
14663
|
+
const result = await buildExec(command, args, options);
|
|
14657
14664
|
return result.stdout;
|
|
14658
14665
|
};
|
|
14659
|
-
const exec$2 = (command, args, options) => {
|
|
14666
|
+
const exec$2 = async (command, args, options) => {
|
|
14667
|
+
const commandProcess = buildExec(command, args, options);
|
|
14668
|
+
if (options?.stderr) {
|
|
14669
|
+
commandProcess.stderr?.pipe(options.stderr);
|
|
14670
|
+
}
|
|
14671
|
+
if (options?.stdout) {
|
|
14672
|
+
commandProcess.stdout?.pipe(options.stdout);
|
|
14673
|
+
}
|
|
14674
|
+
options?.signal?.addEventListener("abort", () => {
|
|
14675
|
+
commandProcess.kill("SIGTERM", { forceKillAfterTimeout: 1e3 });
|
|
14676
|
+
});
|
|
14677
|
+
try {
|
|
14678
|
+
await commandProcess;
|
|
14679
|
+
} catch (processError) {
|
|
14680
|
+
const abortError = new Abort(processError.message);
|
|
14681
|
+
abortError.stack = processError.stack;
|
|
14682
|
+
throw abortError;
|
|
14683
|
+
}
|
|
14684
|
+
};
|
|
14685
|
+
const buildExec = (command, args, options) => {
|
|
14660
14686
|
const env = options?.env ?? process.env;
|
|
14661
14687
|
if (shouldDisplayColors()) {
|
|
14662
14688
|
env.FORCE_COLOR = "1";
|
|
@@ -14671,17 +14697,7 @@ Running system process:
|
|
|
14671
14697
|
\xB7 Command: ${command} ${args.join(" ")}
|
|
14672
14698
|
\xB7 Working directory: ${options?.cwd ?? process.cwd()}
|
|
14673
14699
|
`);
|
|
14674
|
-
|
|
14675
|
-
commandProcess.stderr?.pipe(options.stderr);
|
|
14676
|
-
}
|
|
14677
|
-
if (options?.stdout) {
|
|
14678
|
-
commandProcess.stdout?.pipe(options.stdout);
|
|
14679
|
-
}
|
|
14680
|
-
return commandProcess.catch((processError) => {
|
|
14681
|
-
const abortError = new Abort(processError.message);
|
|
14682
|
-
abortError.stack = processError.stack;
|
|
14683
|
-
throw abortError;
|
|
14684
|
-
});
|
|
14700
|
+
return commandProcess;
|
|
14685
14701
|
};
|
|
14686
14702
|
const concurrentExec = async (commands) => {
|
|
14687
14703
|
await concurrent(commands.map((command) => {
|
|
@@ -16492,7 +16508,7 @@ const assert$2 = require$$0$4;
|
|
|
16492
16508
|
|
|
16493
16509
|
const isWindows$2 = (process.platform === 'win32');
|
|
16494
16510
|
|
|
16495
|
-
function defaults$
|
|
16511
|
+
function defaults$3 (options) {
|
|
16496
16512
|
const methods = [
|
|
16497
16513
|
'unlink',
|
|
16498
16514
|
'chmod',
|
|
@@ -16524,7 +16540,7 @@ function rimraf$3 (p, options, cb) {
|
|
|
16524
16540
|
assert$2(options, 'rimraf: invalid options argument provided');
|
|
16525
16541
|
assert$2.strictEqual(typeof options, 'object', 'rimraf: options should be object');
|
|
16526
16542
|
|
|
16527
|
-
defaults$
|
|
16543
|
+
defaults$3(options);
|
|
16528
16544
|
|
|
16529
16545
|
rimraf_$1(p, options, function CB (er) {
|
|
16530
16546
|
if (er) {
|
|
@@ -16703,7 +16719,7 @@ function rimrafSync$1 (p, options) {
|
|
|
16703
16719
|
let st;
|
|
16704
16720
|
|
|
16705
16721
|
options = options || {};
|
|
16706
|
-
defaults$
|
|
16722
|
+
defaults$3(options);
|
|
16707
16723
|
|
|
16708
16724
|
assert$2(p, 'rimraf: missing path');
|
|
16709
16725
|
assert$2.strictEqual(typeof p, 'string', 'rimraf: path should be a string');
|
|
@@ -17208,7 +17224,7 @@ var ensure = {
|
|
|
17208
17224
|
ensureSymlinkSync: createSymlinkSync
|
|
17209
17225
|
};
|
|
17210
17226
|
|
|
17211
|
-
function stringify$
|
|
17227
|
+
function stringify$9 (obj, { EOL = '\n', finalEOL = true, replacer = null, spaces } = {}) {
|
|
17212
17228
|
const EOF = finalEOL ? EOL : '';
|
|
17213
17229
|
const str = JSON.stringify(obj, replacer, spaces);
|
|
17214
17230
|
|
|
@@ -17221,7 +17237,7 @@ function stripBom$1 (content) {
|
|
|
17221
17237
|
return content.replace(/^\uFEFF/, '')
|
|
17222
17238
|
}
|
|
17223
17239
|
|
|
17224
|
-
var utils$2 = { stringify: stringify$
|
|
17240
|
+
var utils$2 = { stringify: stringify$9, stripBom: stripBom$1 };
|
|
17225
17241
|
|
|
17226
17242
|
let _fs;
|
|
17227
17243
|
try {
|
|
@@ -17230,7 +17246,7 @@ try {
|
|
|
17230
17246
|
_fs = require$$0$8;
|
|
17231
17247
|
}
|
|
17232
17248
|
const universalify = universalify$1;
|
|
17233
|
-
const { stringify: stringify$
|
|
17249
|
+
const { stringify: stringify$8, stripBom } = utils$2;
|
|
17234
17250
|
|
|
17235
17251
|
async function _readFile (file, options = {}) {
|
|
17236
17252
|
if (typeof options === 'string') {
|
|
@@ -17288,7 +17304,7 @@ function readFileSync$2 (file, options = {}) {
|
|
|
17288
17304
|
async function _writeFile (file, obj, options = {}) {
|
|
17289
17305
|
const fs = options.fs || _fs;
|
|
17290
17306
|
|
|
17291
|
-
const str = stringify$
|
|
17307
|
+
const str = stringify$8(obj, options);
|
|
17292
17308
|
|
|
17293
17309
|
await universalify.fromCallback(fs.writeFile)(file, str, options);
|
|
17294
17310
|
}
|
|
@@ -17298,7 +17314,7 @@ const writeFile$1 = universalify.fromPromise(_writeFile);
|
|
|
17298
17314
|
function writeFileSync$1 (file, obj, options = {}) {
|
|
17299
17315
|
const fs = options.fs || _fs;
|
|
17300
17316
|
|
|
17301
|
-
const str = stringify$
|
|
17317
|
+
const str = stringify$8(obj, options);
|
|
17302
17318
|
// not sure if fs.writeFileSync returns anything, but just in case
|
|
17303
17319
|
return fs.writeFileSync(file, str, options)
|
|
17304
17320
|
}
|
|
@@ -17361,22 +17377,22 @@ var outputFile_1 = {
|
|
|
17361
17377
|
outputFileSync: outputFileSync$1
|
|
17362
17378
|
};
|
|
17363
17379
|
|
|
17364
|
-
const { stringify: stringify$
|
|
17380
|
+
const { stringify: stringify$7 } = utils$2;
|
|
17365
17381
|
const { outputFile } = outputFile_1;
|
|
17366
17382
|
|
|
17367
17383
|
async function outputJson (file, data, options = {}) {
|
|
17368
|
-
const str = stringify$
|
|
17384
|
+
const str = stringify$7(data, options);
|
|
17369
17385
|
|
|
17370
17386
|
await outputFile(file, str, options);
|
|
17371
17387
|
}
|
|
17372
17388
|
|
|
17373
17389
|
var outputJson_1 = outputJson;
|
|
17374
17390
|
|
|
17375
|
-
const { stringify: stringify$
|
|
17391
|
+
const { stringify: stringify$6 } = utils$2;
|
|
17376
17392
|
const { outputFileSync } = outputFile_1;
|
|
17377
17393
|
|
|
17378
17394
|
function outputJsonSync (file, data, options) {
|
|
17379
|
-
const str = stringify$
|
|
17395
|
+
const str = stringify$6(data, options);
|
|
17380
17396
|
|
|
17381
17397
|
outputFileSync(file, str, options);
|
|
17382
17398
|
}
|
|
@@ -18689,7 +18705,7 @@ let timeout = 0;
|
|
|
18689
18705
|
|
|
18690
18706
|
const isWindows$1 = (process.platform === "win32");
|
|
18691
18707
|
|
|
18692
|
-
const defaults$
|
|
18708
|
+
const defaults$2 = options => {
|
|
18693
18709
|
const methods = [
|
|
18694
18710
|
'unlink',
|
|
18695
18711
|
'chmod',
|
|
@@ -18728,7 +18744,7 @@ const rimraf$1 = (p, options, cb) => {
|
|
|
18728
18744
|
assert$1(options, 'rimraf: invalid options argument provided');
|
|
18729
18745
|
assert$1.equal(typeof options, 'object', 'rimraf: options should be object');
|
|
18730
18746
|
|
|
18731
|
-
defaults$
|
|
18747
|
+
defaults$2(options);
|
|
18732
18748
|
|
|
18733
18749
|
let busyTries = 0;
|
|
18734
18750
|
let errState = null;
|
|
@@ -18928,7 +18944,7 @@ const rmkids = (p, options, cb) => {
|
|
|
18928
18944
|
// deep directory trees.
|
|
18929
18945
|
const rimrafSync = (p, options) => {
|
|
18930
18946
|
options = options || {};
|
|
18931
|
-
defaults$
|
|
18947
|
+
defaults$2(options);
|
|
18932
18948
|
|
|
18933
18949
|
assert$1(p, 'rimraf: missing path');
|
|
18934
18950
|
assert$1.equal(typeof p, 'string', 'rimraf: path should be a string');
|
|
@@ -19030,7 +19046,7 @@ const rmkidsSync = (p, options) => {
|
|
|
19030
19046
|
var rimraf_1 = rimraf$1;
|
|
19031
19047
|
rimraf$1.sync = rimrafSync;
|
|
19032
19048
|
|
|
19033
|
-
var indentString$3 = (string, count, options) => {
|
|
19049
|
+
var indentString$3 = (string, count = 1, options) => {
|
|
19034
19050
|
options = {
|
|
19035
19051
|
indent: ' ',
|
|
19036
19052
|
includeEmptyLines: false,
|
|
@@ -19606,6 +19622,12 @@ Object.defineProperty(tempy, 'root', {
|
|
|
19606
19622
|
},
|
|
19607
19623
|
});
|
|
19608
19624
|
|
|
19625
|
+
const DEFAULT_PRETTIER_CONFIG = {
|
|
19626
|
+
arrowParens: "always",
|
|
19627
|
+
singleQuote: true,
|
|
19628
|
+
bracketSpacing: false,
|
|
19629
|
+
trailingComma: "all"
|
|
19630
|
+
};
|
|
19609
19631
|
function stripUp(path, strip) {
|
|
19610
19632
|
const parts = path.split(sep);
|
|
19611
19633
|
return join$3(...parts.slice(strip));
|
|
@@ -19620,6 +19642,9 @@ async function read$1(path) {
|
|
|
19620
19642
|
async function copy(from, to) {
|
|
19621
19643
|
await fs$g.copy(from, to);
|
|
19622
19644
|
}
|
|
19645
|
+
async function touch(path) {
|
|
19646
|
+
await fs$g.ensureFile(path);
|
|
19647
|
+
}
|
|
19623
19648
|
async function write$1(path, data) {
|
|
19624
19649
|
await fs$g.writeFile(path, data);
|
|
19625
19650
|
}
|
|
@@ -19664,6 +19689,21 @@ async function exists$1(path) {
|
|
|
19664
19689
|
return false;
|
|
19665
19690
|
}
|
|
19666
19691
|
}
|
|
19692
|
+
async function format$4(content, options) {
|
|
19693
|
+
const ext = extname(options.path);
|
|
19694
|
+
const prettierConfig = {
|
|
19695
|
+
...DEFAULT_PRETTIER_CONFIG,
|
|
19696
|
+
parser: "babel"
|
|
19697
|
+
};
|
|
19698
|
+
switch (ext) {
|
|
19699
|
+
case ".html":
|
|
19700
|
+
case ".css":
|
|
19701
|
+
prettierConfig.parser = ext.slice(1);
|
|
19702
|
+
break;
|
|
19703
|
+
}
|
|
19704
|
+
const formattedContent = await prettier.format(content, prettierConfig);
|
|
19705
|
+
return formattedContent;
|
|
19706
|
+
}
|
|
19667
19707
|
|
|
19668
19708
|
var file$1 = /*#__PURE__*/Object.freeze({
|
|
19669
19709
|
__proto__: null,
|
|
@@ -19671,6 +19711,7 @@ var file$1 = /*#__PURE__*/Object.freeze({
|
|
|
19671
19711
|
inTemporaryDirectory: inTemporaryDirectory,
|
|
19672
19712
|
read: read$1,
|
|
19673
19713
|
copy: copy,
|
|
19714
|
+
touch: touch,
|
|
19674
19715
|
write: write$1,
|
|
19675
19716
|
append: append$2,
|
|
19676
19717
|
mkdir: mkdir,
|
|
@@ -19681,7 +19722,8 @@ var file$1 = /*#__PURE__*/Object.freeze({
|
|
|
19681
19722
|
move: move,
|
|
19682
19723
|
chmod: chmod,
|
|
19683
19724
|
hasExecutablePermissions: hasExecutablePermissions,
|
|
19684
|
-
exists: exists$1
|
|
19725
|
+
exists: exists$1,
|
|
19726
|
+
format: format$4
|
|
19685
19727
|
});
|
|
19686
19728
|
|
|
19687
19729
|
function homeDirectory() {
|
|
@@ -19690,6 +19732,9 @@ function homeDirectory() {
|
|
|
19690
19732
|
function isDebug(env = process.env) {
|
|
19691
19733
|
return env[constants$2.environmentVariables.shopifyConfig] === "debug";
|
|
19692
19734
|
}
|
|
19735
|
+
function isVerbose(env = process.env) {
|
|
19736
|
+
return isTruthy$1(env[constants$2.environmentVariables.verbose]) || process.argv.includes("--verbose");
|
|
19737
|
+
}
|
|
19693
19738
|
async function isShopify(env = process.env) {
|
|
19694
19739
|
const runAsUser = isTruthy$1(env[constants$2.environmentVariables.runAsUser]);
|
|
19695
19740
|
if (runAsUser) {
|
|
@@ -19701,13 +19746,18 @@ async function isShopify(env = process.env) {
|
|
|
19701
19746
|
function isUnitTest(env = process.env) {
|
|
19702
19747
|
return isTruthy$1(env[constants$2.environmentVariables.unitTest]);
|
|
19703
19748
|
}
|
|
19749
|
+
function analyticsDisabled(env = process.env) {
|
|
19750
|
+
return isTruthy$1(env[constants$2.environmentVariables.noAnalytics]);
|
|
19751
|
+
}
|
|
19704
19752
|
|
|
19705
19753
|
var local = /*#__PURE__*/Object.freeze({
|
|
19706
19754
|
__proto__: null,
|
|
19707
19755
|
homeDirectory: homeDirectory,
|
|
19708
19756
|
isDebug: isDebug,
|
|
19757
|
+
isVerbose: isVerbose,
|
|
19709
19758
|
isShopify: isShopify,
|
|
19710
|
-
isUnitTest: isUnitTest
|
|
19759
|
+
isUnitTest: isUnitTest,
|
|
19760
|
+
analyticsDisabled: analyticsDisabled
|
|
19711
19761
|
});
|
|
19712
19762
|
|
|
19713
19763
|
const ESC = '\u001B[';
|
|
@@ -20630,7 +20680,7 @@ const ATTRIBUTE = 3;
|
|
|
20630
20680
|
* @param {any} x The value to check.
|
|
20631
20681
|
* @returns {boolean} `true` if the value is an object.
|
|
20632
20682
|
*/
|
|
20633
|
-
function isObject$
|
|
20683
|
+
function isObject$3(x) {
|
|
20634
20684
|
return x !== null && typeof x === "object" //eslint-disable-line no-restricted-syntax
|
|
20635
20685
|
}
|
|
20636
20686
|
|
|
@@ -20671,7 +20721,7 @@ function defineEventAttributeDescriptor(eventName) {
|
|
|
20671
20721
|
},
|
|
20672
20722
|
|
|
20673
20723
|
set(listener) {
|
|
20674
|
-
if (typeof listener !== "function" && !isObject$
|
|
20724
|
+
if (typeof listener !== "function" && !isObject$3(listener)) {
|
|
20675
20725
|
listener = null; // eslint-disable-line no-param-reassign
|
|
20676
20726
|
}
|
|
20677
20727
|
const listeners = getListeners(this);
|
|
@@ -20804,12 +20854,12 @@ EventTarget.prototype = {
|
|
|
20804
20854
|
if (listener == null) {
|
|
20805
20855
|
return
|
|
20806
20856
|
}
|
|
20807
|
-
if (typeof listener !== "function" && !isObject$
|
|
20857
|
+
if (typeof listener !== "function" && !isObject$3(listener)) {
|
|
20808
20858
|
throw new TypeError("'listener' should be a function or an object.")
|
|
20809
20859
|
}
|
|
20810
20860
|
|
|
20811
20861
|
const listeners = getListeners(this);
|
|
20812
|
-
const optionsIsObj = isObject$
|
|
20862
|
+
const optionsIsObj = isObject$3(options);
|
|
20813
20863
|
const capture = optionsIsObj
|
|
20814
20864
|
? Boolean(options.capture)
|
|
20815
20865
|
: Boolean(options);
|
|
@@ -20860,7 +20910,7 @@ EventTarget.prototype = {
|
|
|
20860
20910
|
}
|
|
20861
20911
|
|
|
20862
20912
|
const listeners = getListeners(this);
|
|
20863
|
-
const capture = isObject$
|
|
20913
|
+
const capture = isObject$3(options)
|
|
20864
20914
|
? Boolean(options.capture)
|
|
20865
20915
|
: Boolean(options);
|
|
20866
20916
|
const listenerType = capture ? CAPTURE : BUBBLE;
|
|
@@ -21127,7 +21177,7 @@ const defaultColors = {
|
|
|
21127
21177
|
key: 'white'
|
|
21128
21178
|
};
|
|
21129
21179
|
|
|
21130
|
-
var colorJson
|
|
21180
|
+
var colorJson = supportsColor() ? function syntaxHighlight(json, colors = defaultColors, colorMap = defaultColorMap, spacing = 2) { // thanks: https://stackoverflow.com/a/7220510/4151489
|
|
21131
21181
|
if (typeof json != 'string') json = JSON.stringify(json, undefined, spacing);
|
|
21132
21182
|
else json = JSON.stringify(JSON.parse(json), undefined, spacing);
|
|
21133
21183
|
return colorMap[colors.separator] + json.replace(/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)/g, function (match) {
|
|
@@ -21154,41 +21204,53 @@ class ContentToken {
|
|
|
21154
21204
|
}
|
|
21155
21205
|
}
|
|
21156
21206
|
const token = {
|
|
21207
|
+
raw: (value) => {
|
|
21208
|
+
return new ContentToken(value, {}, 0 /* Raw */);
|
|
21209
|
+
},
|
|
21157
21210
|
genericShellCommand: (value) => {
|
|
21158
|
-
return new ContentToken(value, {},
|
|
21211
|
+
return new ContentToken(value, {}, 1 /* Command */);
|
|
21212
|
+
},
|
|
21213
|
+
json: (value) => {
|
|
21214
|
+
return new ContentToken(value, {}, 2 /* Json */);
|
|
21159
21215
|
},
|
|
21160
21216
|
path: (value) => {
|
|
21161
|
-
return new ContentToken(value, {},
|
|
21217
|
+
return new ContentToken(value, {}, 3 /* Path */);
|
|
21162
21218
|
},
|
|
21163
21219
|
link: (value, link) => {
|
|
21164
|
-
return new ContentToken(value, { link },
|
|
21220
|
+
return new ContentToken(value, { link }, 4 /* Link */);
|
|
21165
21221
|
},
|
|
21166
21222
|
heading: (value) => {
|
|
21167
|
-
return new ContentToken(value, {},
|
|
21223
|
+
return new ContentToken(value, {}, 5 /* Heading */);
|
|
21168
21224
|
},
|
|
21169
21225
|
subheading: (value) => {
|
|
21170
|
-
return new ContentToken(value, {},
|
|
21226
|
+
return new ContentToken(value, {}, 6 /* SubHeading */);
|
|
21171
21227
|
},
|
|
21172
21228
|
italic: (value) => {
|
|
21173
|
-
return new ContentToken(value, {},
|
|
21229
|
+
return new ContentToken(value, {}, 7 /* Italic */);
|
|
21174
21230
|
},
|
|
21175
21231
|
errorText: (value) => {
|
|
21176
|
-
return new ContentToken(value, {},
|
|
21232
|
+
return new ContentToken(value, {}, 8 /* ErrorText */);
|
|
21177
21233
|
},
|
|
21178
21234
|
cyan: (value) => {
|
|
21179
|
-
return new ContentToken(value, {},
|
|
21235
|
+
return new ContentToken(value, {}, 10 /* Cyan */);
|
|
21180
21236
|
},
|
|
21181
21237
|
yellow: (value) => {
|
|
21182
|
-
return new ContentToken(value, {},
|
|
21238
|
+
return new ContentToken(value, {}, 9 /* Yellow */);
|
|
21183
21239
|
},
|
|
21184
21240
|
magenta: (value) => {
|
|
21185
|
-
return new ContentToken(value, {},
|
|
21241
|
+
return new ContentToken(value, {}, 11 /* Magenta */);
|
|
21186
21242
|
},
|
|
21187
21243
|
green: (value) => {
|
|
21188
|
-
return new ContentToken(value, {},
|
|
21244
|
+
return new ContentToken(value, {}, 12 /* Green */);
|
|
21189
21245
|
},
|
|
21190
|
-
|
|
21191
|
-
return new ContentToken(formatPackageManagerCommand(dependencyManager, scriptName, scriptArgs), {},
|
|
21246
|
+
packagejsonScript: (dependencyManager, scriptName, ...scriptArgs) => {
|
|
21247
|
+
return new ContentToken(formatPackageManagerCommand(dependencyManager, scriptName, scriptArgs), {}, 1 /* Command */);
|
|
21248
|
+
},
|
|
21249
|
+
successIcon: () => {
|
|
21250
|
+
return new ContentToken("\u2714", {}, 12 /* Green */);
|
|
21251
|
+
},
|
|
21252
|
+
failIcon: () => {
|
|
21253
|
+
return new ContentToken("\u2716", {}, 8 /* ErrorText */);
|
|
21192
21254
|
}
|
|
21193
21255
|
};
|
|
21194
21256
|
function formatPackageManagerCommand(dependencyManager, scriptName, scriptArgs) {
|
|
@@ -21226,38 +21288,48 @@ function content(strings, ...keys) {
|
|
|
21226
21288
|
} else {
|
|
21227
21289
|
const enumToken = token2;
|
|
21228
21290
|
switch (enumToken.type) {
|
|
21229
|
-
case 0 /*
|
|
21230
|
-
output +=
|
|
21291
|
+
case 0 /* Raw */:
|
|
21292
|
+
output += enumToken.value;
|
|
21293
|
+
break;
|
|
21294
|
+
case 1 /* Command */:
|
|
21295
|
+
output += colors$9.bold(colors$9.yellow(stringifyMessage(enumToken.value)));
|
|
21231
21296
|
break;
|
|
21232
|
-
case
|
|
21233
|
-
output += colors$9.
|
|
21297
|
+
case 3 /* Path */:
|
|
21298
|
+
output += colors$9.cyan(relativize(stringifyMessage(enumToken.value)));
|
|
21299
|
+
break;
|
|
21300
|
+
case 2 /* Json */:
|
|
21301
|
+
try {
|
|
21302
|
+
output += colorJson(stringifyMessage(enumToken.value) ?? {});
|
|
21303
|
+
} catch (_) {
|
|
21304
|
+
output += JSON.stringify(stringifyMessage(enumToken.value) ?? {}, null, 2);
|
|
21305
|
+
}
|
|
21234
21306
|
break;
|
|
21235
|
-
case
|
|
21236
|
-
output += terminalLink(colors$9.green(enumToken.value), enumToken.metadata.link ?? "");
|
|
21307
|
+
case 4 /* Link */:
|
|
21308
|
+
output += terminalLink(colors$9.green(stringifyMessage(enumToken.value)), enumToken.metadata.link ?? "");
|
|
21237
21309
|
break;
|
|
21238
|
-
case
|
|
21239
|
-
output += colors$9.bold.underline(enumToken.value);
|
|
21310
|
+
case 5 /* Heading */:
|
|
21311
|
+
output += colors$9.bold.underline(stringifyMessage(enumToken.value));
|
|
21240
21312
|
break;
|
|
21241
|
-
case
|
|
21242
|
-
output += colors$9.underline(enumToken.value);
|
|
21313
|
+
case 6 /* SubHeading */:
|
|
21314
|
+
output += colors$9.underline(stringifyMessage(enumToken.value));
|
|
21243
21315
|
break;
|
|
21244
|
-
case
|
|
21245
|
-
output += colors$9.italic(enumToken.value);
|
|
21316
|
+
case 7 /* Italic */:
|
|
21317
|
+
output += colors$9.italic(stringifyMessage(enumToken.value));
|
|
21246
21318
|
break;
|
|
21247
|
-
case
|
|
21248
|
-
output += colors$9.bold.redBright(enumToken.value);
|
|
21319
|
+
case 8 /* ErrorText */:
|
|
21320
|
+
output += colors$9.bold.redBright(stringifyMessage(enumToken.value));
|
|
21249
21321
|
break;
|
|
21250
|
-
case
|
|
21251
|
-
output += colors$9.yellow(enumToken.value);
|
|
21322
|
+
case 9 /* Yellow */:
|
|
21323
|
+
output += colors$9.yellow(stringifyMessage(enumToken.value));
|
|
21252
21324
|
break;
|
|
21253
|
-
case
|
|
21254
|
-
output += colors$9.cyan(enumToken.value);
|
|
21325
|
+
case 10 /* Cyan */:
|
|
21326
|
+
output += colors$9.cyan(stringifyMessage(enumToken.value));
|
|
21255
21327
|
break;
|
|
21256
|
-
case
|
|
21257
|
-
output += colors$9.magenta(enumToken.value);
|
|
21328
|
+
case 11 /* Magenta */:
|
|
21329
|
+
output += colors$9.magenta(stringifyMessage(enumToken.value));
|
|
21258
21330
|
break;
|
|
21259
|
-
case
|
|
21260
|
-
output += colors$9.green(enumToken.value);
|
|
21331
|
+
case 12 /* Green */:
|
|
21332
|
+
output += colors$9.green(stringifyMessage(enumToken.value));
|
|
21261
21333
|
break;
|
|
21262
21334
|
}
|
|
21263
21335
|
}
|
|
@@ -21283,7 +21355,7 @@ const logLevelValue = (level) => {
|
|
|
21283
21355
|
}
|
|
21284
21356
|
};
|
|
21285
21357
|
const currentLogLevel = () => {
|
|
21286
|
-
if (
|
|
21358
|
+
if (isVerbose()) {
|
|
21287
21359
|
return "debug";
|
|
21288
21360
|
} else {
|
|
21289
21361
|
return "info";
|
|
@@ -21319,9 +21391,6 @@ const warn = (content2) => {
|
|
|
21319
21391
|
const newline = () => {
|
|
21320
21392
|
console.log();
|
|
21321
21393
|
};
|
|
21322
|
-
const colorJson = (json) => {
|
|
21323
|
-
return colorJson$1(json);
|
|
21324
|
-
};
|
|
21325
21394
|
const error$k = async (content2) => {
|
|
21326
21395
|
if (shouldOutput("error")) {
|
|
21327
21396
|
if (!content2.message) {
|
|
@@ -21375,13 +21444,15 @@ function stringifyMessage(message2) {
|
|
|
21375
21444
|
return message2;
|
|
21376
21445
|
}
|
|
21377
21446
|
}
|
|
21378
|
-
const message = (content2, level) => {
|
|
21447
|
+
const message = (content2, level = "info") => {
|
|
21379
21448
|
if (shouldOutput(level)) {
|
|
21380
21449
|
consoleLog(stringifyMessage(content2));
|
|
21381
21450
|
}
|
|
21382
21451
|
};
|
|
21383
|
-
async function concurrent(processes) {
|
|
21452
|
+
async function concurrent(processes, callback = void 0) {
|
|
21384
21453
|
const abortController = new AbortController$1();
|
|
21454
|
+
if (callback)
|
|
21455
|
+
callback(abortController.signal);
|
|
21385
21456
|
const concurrentColors = [token.yellow, token.cyan, token.magenta, token.green];
|
|
21386
21457
|
const prefixColumnSize = Math.max(...processes.map((process2) => process2.prefix.length));
|
|
21387
21458
|
function linePrefix(prefix, index) {
|
|
@@ -21404,7 +21475,7 @@ async function concurrent(processes) {
|
|
|
21404
21475
|
write(chunk, _encoding, next) {
|
|
21405
21476
|
const lines = stripAnsiEraseCursorEscapeCharacters(chunk.toString("ascii")).split(/\n/);
|
|
21406
21477
|
for (const line of lines) {
|
|
21407
|
-
message(content`${linePrefix(process2.prefix, index)}${colors$9.bold(
|
|
21478
|
+
message(content`${linePrefix(process2.prefix, index)}${colors$9.bold(line)}`, "error");
|
|
21408
21479
|
}
|
|
21409
21480
|
next();
|
|
21410
21481
|
}
|
|
@@ -21459,7 +21530,6 @@ var output = /*#__PURE__*/Object.freeze({
|
|
|
21459
21530
|
debug: debug$5,
|
|
21460
21531
|
warn: warn,
|
|
21461
21532
|
newline: newline,
|
|
21462
|
-
colorJson: colorJson,
|
|
21463
21533
|
error: error$k,
|
|
21464
21534
|
stringifyMessage: stringifyMessage,
|
|
21465
21535
|
concurrent: concurrent,
|
|
@@ -21470,8 +21540,8 @@ var output = /*#__PURE__*/Object.freeze({
|
|
|
21470
21540
|
sourceMapSupport.install();
|
|
21471
21541
|
class Fatal extends Error {
|
|
21472
21542
|
constructor(message, type, tryMessage = null) {
|
|
21473
|
-
super(message);
|
|
21474
|
-
this.tryMessage = tryMessage;
|
|
21543
|
+
super(stringifyMessage(message));
|
|
21544
|
+
this.tryMessage = tryMessage ? stringifyMessage(tryMessage) : null;
|
|
21475
21545
|
this.type = type;
|
|
21476
21546
|
}
|
|
21477
21547
|
}
|
|
@@ -21619,7 +21689,7 @@ function __spreadArray$1(to, from, pack) {
|
|
|
21619
21689
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
21620
21690
|
}
|
|
21621
21691
|
|
|
21622
|
-
function isFunction$
|
|
21692
|
+
function isFunction$2(value) {
|
|
21623
21693
|
return typeof value === 'function';
|
|
21624
21694
|
}
|
|
21625
21695
|
|
|
@@ -21687,7 +21757,7 @@ var Subscription = (function () {
|
|
|
21687
21757
|
}
|
|
21688
21758
|
}
|
|
21689
21759
|
var initialFinalizer = this.initialTeardown;
|
|
21690
|
-
if (isFunction$
|
|
21760
|
+
if (isFunction$2(initialFinalizer)) {
|
|
21691
21761
|
try {
|
|
21692
21762
|
initialFinalizer();
|
|
21693
21763
|
}
|
|
@@ -21779,10 +21849,10 @@ var Subscription = (function () {
|
|
|
21779
21849
|
var EMPTY_SUBSCRIPTION = Subscription.EMPTY;
|
|
21780
21850
|
function isSubscription(value) {
|
|
21781
21851
|
return (value instanceof Subscription ||
|
|
21782
|
-
(value && 'closed' in value && isFunction$
|
|
21852
|
+
(value && 'closed' in value && isFunction$2(value.remove) && isFunction$2(value.add) && isFunction$2(value.unsubscribe)));
|
|
21783
21853
|
}
|
|
21784
21854
|
function execFinalizer(finalizer) {
|
|
21785
|
-
if (isFunction$
|
|
21855
|
+
if (isFunction$2(finalizer)) {
|
|
21786
21856
|
finalizer();
|
|
21787
21857
|
}
|
|
21788
21858
|
else {
|
|
@@ -21966,7 +22036,7 @@ var SafeSubscriber = (function (_super) {
|
|
|
21966
22036
|
function SafeSubscriber(observerOrNext, error, complete) {
|
|
21967
22037
|
var _this = _super.call(this) || this;
|
|
21968
22038
|
var partialObserver;
|
|
21969
|
-
if (isFunction$
|
|
22039
|
+
if (isFunction$2(observerOrNext) || !observerOrNext) {
|
|
21970
22040
|
partialObserver = {
|
|
21971
22041
|
next: observerOrNext !== null && observerOrNext !== void 0 ? observerOrNext : undefined,
|
|
21972
22042
|
error: error !== null && error !== void 0 ? error : undefined,
|
|
@@ -22114,7 +22184,7 @@ function getPromiseCtor(promiseCtor) {
|
|
|
22114
22184
|
return (_a = promiseCtor !== null && promiseCtor !== void 0 ? promiseCtor : config.Promise) !== null && _a !== void 0 ? _a : Promise;
|
|
22115
22185
|
}
|
|
22116
22186
|
function isObserver(value) {
|
|
22117
|
-
return value && isFunction$
|
|
22187
|
+
return value && isFunction$2(value.next) && isFunction$2(value.error) && isFunction$2(value.complete);
|
|
22118
22188
|
}
|
|
22119
22189
|
function isSubscriber(value) {
|
|
22120
22190
|
return (value && value instanceof Subscriber) || (isObserver(value) && isSubscription(value));
|
|
@@ -25007,16 +25077,17 @@ const argv = process.argv || [];
|
|
|
25007
25077
|
const isDisabled = "NO_COLOR" in env$1 || argv.includes("--no-color");
|
|
25008
25078
|
const isForced = "FORCE_COLOR" in env$1 || argv.includes("--color");
|
|
25009
25079
|
const isWindows = process.platform === "win32";
|
|
25080
|
+
const isDumbTerminal = env$1.TERM === "dumb";
|
|
25010
25081
|
|
|
25011
25082
|
const isCompatibleTerminal =
|
|
25012
|
-
tty$1 && tty$1.isatty && tty$1.isatty(1) && env$1.TERM &&
|
|
25083
|
+
tty$1 && tty$1.isatty && tty$1.isatty(1) && env$1.TERM && !isDumbTerminal;
|
|
25013
25084
|
|
|
25014
25085
|
const isCI =
|
|
25015
25086
|
"CI" in env$1 &&
|
|
25016
25087
|
("GITHUB_ACTIONS" in env$1 || "GITLAB_CI" in env$1 || "CIRCLECI" in env$1);
|
|
25017
25088
|
|
|
25018
25089
|
const isColorSupported =
|
|
25019
|
-
!isDisabled && (isForced || isWindows || isCompatibleTerminal || isCI);
|
|
25090
|
+
!isDisabled && (isForced || (isWindows && !isDumbTerminal) || isCompatibleTerminal || isCI);
|
|
25020
25091
|
|
|
25021
25092
|
const replaceClose = (
|
|
25022
25093
|
index,
|
|
@@ -25093,13 +25164,11 @@ const colors = {
|
|
|
25093
25164
|
bgWhiteBright: init(107, 49),
|
|
25094
25165
|
};
|
|
25095
25166
|
|
|
25096
|
-
const none = (any) => any;
|
|
25097
|
-
|
|
25098
25167
|
const createColors = ({ useColor = isColorSupported } = {}) =>
|
|
25099
25168
|
useColor
|
|
25100
25169
|
? colors
|
|
25101
25170
|
: Object.keys(colors).reduce(
|
|
25102
|
-
(colors, key) => ({ ...colors, [key]:
|
|
25171
|
+
(colors, key) => ({ ...colors, [key]: String }),
|
|
25103
25172
|
{}
|
|
25104
25173
|
);
|
|
25105
25174
|
|
|
@@ -26590,12 +26659,12 @@ var Drop = /** @class */ (function () {
|
|
|
26590
26659
|
|
|
26591
26660
|
var toString$1 = Object.prototype.toString;
|
|
26592
26661
|
var toLowerCase = String.prototype.toLowerCase;
|
|
26593
|
-
var hasOwnProperty$
|
|
26662
|
+
var hasOwnProperty$2 = Object.hasOwnProperty;
|
|
26594
26663
|
function isString(value) {
|
|
26595
26664
|
return typeof value === 'string';
|
|
26596
26665
|
}
|
|
26597
26666
|
// eslint-disable-next-line @typescript-eslint/ban-types
|
|
26598
|
-
function isFunction(value) {
|
|
26667
|
+
function isFunction$1(value) {
|
|
26599
26668
|
return typeof value === 'function';
|
|
26600
26669
|
}
|
|
26601
26670
|
function escapeRegex(str) {
|
|
@@ -26614,14 +26683,14 @@ function promisify$2(fn) {
|
|
|
26614
26683
|
});
|
|
26615
26684
|
};
|
|
26616
26685
|
}
|
|
26617
|
-
function stringify$
|
|
26686
|
+
function stringify$5(value) {
|
|
26618
26687
|
value = toValue$1(value);
|
|
26619
26688
|
if (isString(value))
|
|
26620
26689
|
return value;
|
|
26621
26690
|
if (isNil(value))
|
|
26622
26691
|
return '';
|
|
26623
|
-
if (isArray(value))
|
|
26624
|
-
return value.map(function (x) { return stringify$
|
|
26692
|
+
if (isArray$1(value))
|
|
26693
|
+
return value.map(function (x) { return stringify$5(x); }).join('');
|
|
26625
26694
|
return String(value);
|
|
26626
26695
|
}
|
|
26627
26696
|
function toValue$1(value) {
|
|
@@ -26631,14 +26700,14 @@ function isNumber$2(value) {
|
|
|
26631
26700
|
return typeof value === 'number';
|
|
26632
26701
|
}
|
|
26633
26702
|
function toLiquid(value) {
|
|
26634
|
-
if (value && isFunction(value.toLiquid))
|
|
26703
|
+
if (value && isFunction$1(value.toLiquid))
|
|
26635
26704
|
return toLiquid(value.toLiquid());
|
|
26636
26705
|
return value;
|
|
26637
26706
|
}
|
|
26638
26707
|
function isNil(value) {
|
|
26639
26708
|
return value == null;
|
|
26640
26709
|
}
|
|
26641
|
-
function isArray(value) {
|
|
26710
|
+
function isArray$1(value) {
|
|
26642
26711
|
// be compatible with IE 8
|
|
26643
26712
|
return toString$1.call(value) === '[object Array]';
|
|
26644
26713
|
}
|
|
@@ -26653,7 +26722,7 @@ function isArray(value) {
|
|
|
26653
26722
|
function forOwn(obj, iteratee) {
|
|
26654
26723
|
obj = obj || {};
|
|
26655
26724
|
for (var k in obj) {
|
|
26656
|
-
if (hasOwnProperty$
|
|
26725
|
+
if (hasOwnProperty$2.call(obj, k)) {
|
|
26657
26726
|
if (iteratee(obj[k], k, obj) === false)
|
|
26658
26727
|
break;
|
|
26659
26728
|
}
|
|
@@ -26669,7 +26738,7 @@ function last$1(arr) {
|
|
|
26669
26738
|
* @param {any} value The value to check.
|
|
26670
26739
|
* @return {Boolean} Returns true if value is an object, else false.
|
|
26671
26740
|
*/
|
|
26672
|
-
function isObject$
|
|
26741
|
+
function isObject$2(value) {
|
|
26673
26742
|
var type = typeof value;
|
|
26674
26743
|
return value !== null && (type === 'object' || type === 'function');
|
|
26675
26744
|
}
|
|
@@ -26877,7 +26946,7 @@ var fs$a = /*#__PURE__*/Object.freeze({
|
|
|
26877
26946
|
});
|
|
26878
26947
|
|
|
26879
26948
|
function isComparable(arg) {
|
|
26880
|
-
return arg && isFunction(arg.equals);
|
|
26949
|
+
return arg && isFunction$1(arg.equals);
|
|
26881
26950
|
}
|
|
26882
26951
|
|
|
26883
26952
|
function isTruthy(val, ctx) {
|
|
@@ -26938,7 +27007,7 @@ var defaultOperators = {
|
|
|
26938
27007
|
'contains': function (l, r) {
|
|
26939
27008
|
l = toValue$1(l);
|
|
26940
27009
|
r = toValue$1(r);
|
|
26941
|
-
return l && isFunction(l.indexOf) ? l.indexOf(r) > -1 : false;
|
|
27010
|
+
return l && isFunction$1(l.indexOf) ? l.indexOf(r) > -1 : false;
|
|
26942
27011
|
},
|
|
26943
27012
|
'and': function (l, r, ctx) { return isTruthy(l, ctx) && isTruthy(r, ctx); },
|
|
26944
27013
|
'or': function (l, r, ctx) { return isTruthy(l, ctx) || isTruthy(r, ctx); }
|
|
@@ -27001,19 +27070,19 @@ var unescapeMap = {
|
|
|
27001
27070
|
''': "'"
|
|
27002
27071
|
};
|
|
27003
27072
|
function escape(str) {
|
|
27004
|
-
return stringify$
|
|
27073
|
+
return stringify$5(str).replace(/&|<|>|"|'/g, function (m) { return escapeMap[m]; });
|
|
27005
27074
|
}
|
|
27006
27075
|
function unescape$1(str) {
|
|
27007
|
-
return stringify$
|
|
27076
|
+
return stringify$5(str).replace(/&(amp|lt|gt|#34|#39);/g, function (m) { return unescapeMap[m]; });
|
|
27008
27077
|
}
|
|
27009
27078
|
function escapeOnce(str) {
|
|
27010
|
-
return escape(unescape$1(stringify$
|
|
27079
|
+
return escape(unescape$1(stringify$5(str)));
|
|
27011
27080
|
}
|
|
27012
27081
|
function newlineToBr(v) {
|
|
27013
|
-
return stringify$
|
|
27082
|
+
return stringify$5(v).replace(/\n/g, '<br />\n');
|
|
27014
27083
|
}
|
|
27015
27084
|
function stripHtml(v) {
|
|
27016
|
-
return stringify$
|
|
27085
|
+
return stringify$5(v).replace(/<script.*?<\/script>|<!--.*?-->|<style.*?<\/style>|<.*?>/g, '');
|
|
27017
27086
|
}
|
|
27018
27087
|
|
|
27019
27088
|
var abs = argumentsToValue(Math.abs);
|
|
@@ -27041,34 +27110,34 @@ function plus(v, arg) {
|
|
|
27041
27110
|
return Number(v) + Number(arg);
|
|
27042
27111
|
}
|
|
27043
27112
|
|
|
27044
|
-
var urlDecode = function (x) { return stringify$
|
|
27045
|
-
var urlEncode = function (x) { return stringify$
|
|
27113
|
+
var urlDecode = function (x) { return stringify$5(x).split('+').map(decodeURIComponent).join(' '); };
|
|
27114
|
+
var urlEncode = function (x) { return stringify$5(x).split(' ').map(encodeURIComponent).join('+'); };
|
|
27046
27115
|
|
|
27047
27116
|
function toEnumerable(val) {
|
|
27048
|
-
if (isArray(val))
|
|
27117
|
+
if (isArray$1(val))
|
|
27049
27118
|
return val;
|
|
27050
27119
|
if (isString(val) && val.length > 0)
|
|
27051
27120
|
return [val];
|
|
27052
|
-
if (isObject$
|
|
27121
|
+
if (isObject$2(val))
|
|
27053
27122
|
return Object.keys(val).map(function (key) { return [key, val[key]]; });
|
|
27054
27123
|
return [];
|
|
27055
27124
|
}
|
|
27056
27125
|
function toArray$1(val) {
|
|
27057
27126
|
if (isNil(val))
|
|
27058
27127
|
return [];
|
|
27059
|
-
if (isArray(val))
|
|
27128
|
+
if (isArray$1(val))
|
|
27060
27129
|
return val;
|
|
27061
27130
|
return [val];
|
|
27062
27131
|
}
|
|
27063
27132
|
|
|
27064
27133
|
var join$2 = argumentsToValue(function (v, arg) { return toArray$1(v).join(arg === undefined ? ' ' : arg); });
|
|
27065
|
-
var last$2 = argumentsToValue(function (v) { return isArray(v) ? last$1(v) : ''; });
|
|
27066
|
-
var first$1 = argumentsToValue(function (v) { return isArray(v) ? v[0] : ''; });
|
|
27134
|
+
var last$2 = argumentsToValue(function (v) { return isArray$1(v) ? last$1(v) : ''; });
|
|
27135
|
+
var first$1 = argumentsToValue(function (v) { return isArray$1(v) ? v[0] : ''; });
|
|
27067
27136
|
var reverse = argumentsToValue(function (v) { return __spreadArray([], __read(toArray$1(v)), false).reverse(); });
|
|
27068
27137
|
function sort$1(arr, property) {
|
|
27069
27138
|
var _this = this;
|
|
27070
27139
|
arr = toValue$1(arr);
|
|
27071
|
-
var getValue = function (obj) { return property ? _this.context.getFromScope(obj, stringify$
|
|
27140
|
+
var getValue = function (obj) { return property ? _this.context.getFromScope(obj, stringify$5(property).split('.')) : obj; };
|
|
27072
27141
|
return __spreadArray([], __read(toArray$1(arr)), false).sort(function (lhs, rhs) {
|
|
27073
27142
|
lhs = getValue(lhs);
|
|
27074
27143
|
rhs = getValue(rhs);
|
|
@@ -27077,7 +27146,7 @@ function sort$1(arr, property) {
|
|
|
27077
27146
|
}
|
|
27078
27147
|
function sortNatural(input, property) {
|
|
27079
27148
|
input = toValue$1(input);
|
|
27080
|
-
var propertyString = stringify$
|
|
27149
|
+
var propertyString = stringify$5(property);
|
|
27081
27150
|
var compare = property === undefined
|
|
27082
27151
|
? caseInsensitiveCompare
|
|
27083
27152
|
: function (lhs, rhs) { return caseInsensitiveCompare(lhs[propertyString], rhs[propertyString]); };
|
|
@@ -27087,7 +27156,7 @@ var size = function (v) { return (v && v.length) || 0; };
|
|
|
27087
27156
|
function map$1(arr, property) {
|
|
27088
27157
|
var _this = this;
|
|
27089
27158
|
arr = toValue$1(arr);
|
|
27090
|
-
return toArray$1(arr).map(function (obj) { return _this.context.getFromScope(obj, stringify$
|
|
27159
|
+
return toArray$1(arr).map(function (obj) { return _this.context.getFromScope(obj, stringify$5(property).split('.')); });
|
|
27091
27160
|
}
|
|
27092
27161
|
function compact(arr) {
|
|
27093
27162
|
arr = toValue$1(arr);
|
|
@@ -27104,8 +27173,8 @@ function slice(v, begin, length) {
|
|
|
27104
27173
|
v = toValue$1(v);
|
|
27105
27174
|
if (isNil(v))
|
|
27106
27175
|
return [];
|
|
27107
|
-
if (!isArray(v))
|
|
27108
|
-
v = stringify$
|
|
27176
|
+
if (!isArray$1(v))
|
|
27177
|
+
v = stringify$5(v);
|
|
27109
27178
|
begin = begin < 0 ? v.length + begin : begin;
|
|
27110
27179
|
return v.slice(begin, begin + length);
|
|
27111
27180
|
}
|
|
@@ -27113,7 +27182,7 @@ function where(arr, property, expected) {
|
|
|
27113
27182
|
var _this = this;
|
|
27114
27183
|
arr = toValue$1(arr);
|
|
27115
27184
|
return toArray$1(arr).filter(function (obj) {
|
|
27116
|
-
var value = _this.context.getFromScope(obj, stringify$
|
|
27185
|
+
var value = _this.context.getFromScope(obj, stringify$5(property).split('.'));
|
|
27117
27186
|
if (expected === undefined)
|
|
27118
27187
|
return isTruthy(value, _this.context);
|
|
27119
27188
|
if (isComparable(expected))
|
|
@@ -27125,7 +27194,7 @@ function uniq(arr) {
|
|
|
27125
27194
|
arr = toValue$1(arr);
|
|
27126
27195
|
var u = {};
|
|
27127
27196
|
return (arr || []).filter(function (val) {
|
|
27128
|
-
if (hasOwnProperty$
|
|
27197
|
+
if (hasOwnProperty$2.call(u, String(val)))
|
|
27129
27198
|
return false;
|
|
27130
27199
|
u[String(val)] = true;
|
|
27131
27200
|
return true;
|
|
@@ -27402,7 +27471,7 @@ function date(v, arg) {
|
|
|
27402
27471
|
var opts = this.context.opts;
|
|
27403
27472
|
var date;
|
|
27404
27473
|
v = toValue$1(v);
|
|
27405
|
-
arg = stringify$
|
|
27474
|
+
arg = stringify$5(arg);
|
|
27406
27475
|
if (v === 'now' || v === 'today') {
|
|
27407
27476
|
date = new Date();
|
|
27408
27477
|
}
|
|
@@ -27440,7 +27509,7 @@ function Default(value, defaultValue) {
|
|
|
27440
27509
|
args[_i - 2] = arguments[_i];
|
|
27441
27510
|
}
|
|
27442
27511
|
value = toValue$1(value);
|
|
27443
|
-
if (isArray(value) || isString(value))
|
|
27512
|
+
if (isArray$1(value) || isString(value))
|
|
27444
27513
|
return value.length ? value : defaultValue;
|
|
27445
27514
|
if (value === false && (new Map(args)).get('allow_false'))
|
|
27446
27515
|
return false;
|
|
@@ -27576,40 +27645,40 @@ function assert(predicate, message) {
|
|
|
27576
27645
|
*/
|
|
27577
27646
|
function append$1(v, arg) {
|
|
27578
27647
|
assert(arguments.length === 2, 'append expect 2 arguments');
|
|
27579
|
-
return stringify$
|
|
27648
|
+
return stringify$5(v) + stringify$5(arg);
|
|
27580
27649
|
}
|
|
27581
27650
|
function prepend(v, arg) {
|
|
27582
27651
|
assert(arguments.length === 2, 'prepend expect 2 arguments');
|
|
27583
|
-
return stringify$
|
|
27652
|
+
return stringify$5(arg) + stringify$5(v);
|
|
27584
27653
|
}
|
|
27585
27654
|
function lstrip(v, chars) {
|
|
27586
27655
|
if (chars) {
|
|
27587
|
-
chars = escapeRegExp(stringify$
|
|
27588
|
-
return stringify$
|
|
27656
|
+
chars = escapeRegExp(stringify$5(chars));
|
|
27657
|
+
return stringify$5(v).replace(new RegExp("^[".concat(chars, "]+"), 'g'), '');
|
|
27589
27658
|
}
|
|
27590
|
-
return stringify$
|
|
27659
|
+
return stringify$5(v).replace(/^\s+/, '');
|
|
27591
27660
|
}
|
|
27592
27661
|
function downcase(v) {
|
|
27593
|
-
return stringify$
|
|
27662
|
+
return stringify$5(v).toLowerCase();
|
|
27594
27663
|
}
|
|
27595
27664
|
function upcase(str) {
|
|
27596
|
-
return stringify$
|
|
27665
|
+
return stringify$5(str).toUpperCase();
|
|
27597
27666
|
}
|
|
27598
27667
|
function remove$3(v, arg) {
|
|
27599
|
-
return stringify$
|
|
27668
|
+
return stringify$5(v).split(String(arg)).join('');
|
|
27600
27669
|
}
|
|
27601
27670
|
function removeFirst(v, l) {
|
|
27602
|
-
return stringify$
|
|
27671
|
+
return stringify$5(v).replace(String(l), '');
|
|
27603
27672
|
}
|
|
27604
27673
|
function rstrip(str, chars) {
|
|
27605
27674
|
if (chars) {
|
|
27606
|
-
chars = escapeRegExp(stringify$
|
|
27607
|
-
return stringify$
|
|
27675
|
+
chars = escapeRegExp(stringify$5(chars));
|
|
27676
|
+
return stringify$5(str).replace(new RegExp("[".concat(chars, "]+$"), 'g'), '');
|
|
27608
27677
|
}
|
|
27609
|
-
return stringify$
|
|
27678
|
+
return stringify$5(str).replace(/\s+$/, '');
|
|
27610
27679
|
}
|
|
27611
27680
|
function split(v, arg) {
|
|
27612
|
-
var arr = stringify$
|
|
27681
|
+
var arr = stringify$5(v).split(String(arg));
|
|
27613
27682
|
// align to ruby split, which is the behavior of shopify/liquid
|
|
27614
27683
|
// see: https://ruby-doc.org/core-2.4.0/String.html#method-i-split
|
|
27615
27684
|
while (arr.length && arr[arr.length - 1] === '')
|
|
@@ -27618,30 +27687,30 @@ function split(v, arg) {
|
|
|
27618
27687
|
}
|
|
27619
27688
|
function strip(v, chars) {
|
|
27620
27689
|
if (chars) {
|
|
27621
|
-
chars = escapeRegExp(stringify$
|
|
27622
|
-
return stringify$
|
|
27690
|
+
chars = escapeRegExp(stringify$5(chars));
|
|
27691
|
+
return stringify$5(v)
|
|
27623
27692
|
.replace(new RegExp("^[".concat(chars, "]+"), 'g'), '')
|
|
27624
27693
|
.replace(new RegExp("[".concat(chars, "]+$"), 'g'), '');
|
|
27625
27694
|
}
|
|
27626
|
-
return stringify$
|
|
27695
|
+
return stringify$5(v).trim();
|
|
27627
27696
|
}
|
|
27628
27697
|
function stripNewlines(v) {
|
|
27629
|
-
return stringify$
|
|
27698
|
+
return stringify$5(v).replace(/\n/g, '');
|
|
27630
27699
|
}
|
|
27631
27700
|
function capitalize$1(str) {
|
|
27632
|
-
str = stringify$
|
|
27701
|
+
str = stringify$5(str);
|
|
27633
27702
|
return str.charAt(0).toUpperCase() + str.slice(1).toLowerCase();
|
|
27634
27703
|
}
|
|
27635
27704
|
function replace$1(v, pattern, replacement) {
|
|
27636
|
-
return stringify$
|
|
27705
|
+
return stringify$5(v).split(String(pattern)).join(replacement);
|
|
27637
27706
|
}
|
|
27638
27707
|
function replaceFirst(v, arg1, arg2) {
|
|
27639
|
-
return stringify$
|
|
27708
|
+
return stringify$5(v).replace(String(arg1), arg2);
|
|
27640
27709
|
}
|
|
27641
27710
|
function truncate(v, l, o) {
|
|
27642
27711
|
if (l === void 0) { l = 50; }
|
|
27643
27712
|
if (o === void 0) { o = '...'; }
|
|
27644
|
-
v = stringify$
|
|
27713
|
+
v = stringify$5(v);
|
|
27645
27714
|
if (v.length <= l)
|
|
27646
27715
|
return v;
|
|
27647
27716
|
return v.substring(0, l - o.length) + o;
|
|
@@ -27649,7 +27718,7 @@ function truncate(v, l, o) {
|
|
|
27649
27718
|
function truncatewords(v, l, o) {
|
|
27650
27719
|
if (l === void 0) { l = 15; }
|
|
27651
27720
|
if (o === void 0) { o = '...'; }
|
|
27652
|
-
var arr = stringify$
|
|
27721
|
+
var arr = stringify$5(v).split(/\s+/);
|
|
27653
27722
|
var ret = arr.slice(0, l).join(' ');
|
|
27654
27723
|
if (arr.length >= l)
|
|
27655
27724
|
ret += o;
|
|
@@ -27799,9 +27868,9 @@ var EmptyDrop = /** @class */ (function (_super) {
|
|
|
27799
27868
|
if (value instanceof EmptyDrop)
|
|
27800
27869
|
return false;
|
|
27801
27870
|
value = toValue$1(value);
|
|
27802
|
-
if (isString(value) || isArray(value))
|
|
27871
|
+
if (isString(value) || isArray$1(value))
|
|
27803
27872
|
return value.length === 0;
|
|
27804
|
-
if (isObject$
|
|
27873
|
+
if (isObject$2(value))
|
|
27805
27874
|
return Object.keys(value).length === 0;
|
|
27806
27875
|
return false;
|
|
27807
27876
|
};
|
|
@@ -28897,7 +28966,7 @@ var Hash = /** @class */ (function () {
|
|
|
28897
28966
|
}());
|
|
28898
28967
|
|
|
28899
28968
|
function isKeyValuePair(arr) {
|
|
28900
|
-
return isArray(arr);
|
|
28969
|
+
return isArray$1(arr);
|
|
28901
28970
|
}
|
|
28902
28971
|
|
|
28903
28972
|
var Filter = /** @class */ (function () {
|
|
@@ -29006,10 +29075,10 @@ function createRejectedThenable(err) {
|
|
|
29006
29075
|
return ret;
|
|
29007
29076
|
}
|
|
29008
29077
|
function isThenable(val) {
|
|
29009
|
-
return val && isFunction(val.then);
|
|
29078
|
+
return val && isFunction$1(val.then);
|
|
29010
29079
|
}
|
|
29011
29080
|
function isAsyncIterator(val) {
|
|
29012
|
-
return val && isFunction(val.next) && isFunction(val.throw) && isFunction(val.return);
|
|
29081
|
+
return val && isFunction$1(val.next) && isFunction$1(val.throw) && isFunction$1(val.return);
|
|
29013
29082
|
}
|
|
29014
29083
|
// convert an async iterator to a thenable (Promise compatible)
|
|
29015
29084
|
function toThenable(val) {
|
|
@@ -29589,7 +29658,7 @@ var decrement = {
|
|
|
29589
29658
|
if (!isNumber$2(scope[this.variable])) {
|
|
29590
29659
|
scope[this.variable] = 0;
|
|
29591
29660
|
}
|
|
29592
|
-
emitter.write(stringify$
|
|
29661
|
+
emitter.write(stringify$5(--scope[this.variable]));
|
|
29593
29662
|
}
|
|
29594
29663
|
};
|
|
29595
29664
|
|
|
@@ -29710,7 +29779,7 @@ var increment = {
|
|
|
29710
29779
|
}
|
|
29711
29780
|
var val = scope[this.variable];
|
|
29712
29781
|
scope[this.variable]++;
|
|
29713
|
-
emitter.write(stringify$
|
|
29782
|
+
emitter.write(stringify$5(val));
|
|
29714
29783
|
}
|
|
29715
29784
|
};
|
|
29716
29785
|
|
|
@@ -30170,17 +30239,17 @@ function normalize$1(options) {
|
|
|
30170
30239
|
function getOutputEscapeFunction(nameOrFunction) {
|
|
30171
30240
|
if (isString(nameOrFunction)) {
|
|
30172
30241
|
var filterImpl = filters.get(nameOrFunction);
|
|
30173
|
-
assert(isFunction(filterImpl), "filter \"".concat(nameOrFunction, "\" not found"));
|
|
30242
|
+
assert(isFunction$1(filterImpl), "filter \"".concat(nameOrFunction, "\" not found"));
|
|
30174
30243
|
return filterImpl;
|
|
30175
30244
|
}
|
|
30176
30245
|
else {
|
|
30177
|
-
assert(isFunction(nameOrFunction), '`outputEscape` need to be of type string or function');
|
|
30246
|
+
assert(isFunction$1(nameOrFunction), '`outputEscape` need to be of type string or function');
|
|
30178
30247
|
return nameOrFunction;
|
|
30179
30248
|
}
|
|
30180
30249
|
}
|
|
30181
30250
|
function normalizeDirectoryList(value) {
|
|
30182
30251
|
var list = [];
|
|
30183
|
-
if (isArray(value))
|
|
30252
|
+
if (isArray$1(value))
|
|
30184
30253
|
list = value;
|
|
30185
30254
|
if (isString(value))
|
|
30186
30255
|
list = [value];
|
|
@@ -30270,12 +30339,12 @@ function readProperty(obj, key, ownPropertyOnly) {
|
|
|
30270
30339
|
if (isNil(obj))
|
|
30271
30340
|
return obj;
|
|
30272
30341
|
obj = toLiquid(obj);
|
|
30273
|
-
if (isArray(obj) && key < 0)
|
|
30342
|
+
if (isArray$1(obj) && key < 0)
|
|
30274
30343
|
return obj[obj.length + +key];
|
|
30275
30344
|
var jsProperty = readJSProperty(obj, key, ownPropertyOnly);
|
|
30276
30345
|
if (jsProperty === undefined && obj instanceof Drop)
|
|
30277
30346
|
return obj.liquidMethodMissing(key);
|
|
30278
|
-
if (isFunction(jsProperty))
|
|
30347
|
+
if (isFunction$1(jsProperty))
|
|
30279
30348
|
return jsProperty.call(obj);
|
|
30280
30349
|
if (key === 'size')
|
|
30281
30350
|
return readSize(obj);
|
|
@@ -30291,19 +30360,19 @@ function readJSProperty(obj, key, ownPropertyOnly) {
|
|
|
30291
30360
|
return obj[key];
|
|
30292
30361
|
}
|
|
30293
30362
|
function readFirst(obj) {
|
|
30294
|
-
if (isArray(obj))
|
|
30363
|
+
if (isArray$1(obj))
|
|
30295
30364
|
return obj[0];
|
|
30296
30365
|
return obj['first'];
|
|
30297
30366
|
}
|
|
30298
30367
|
function readLast(obj) {
|
|
30299
|
-
if (isArray(obj))
|
|
30368
|
+
if (isArray$1(obj))
|
|
30300
30369
|
return obj[obj.length - 1];
|
|
30301
30370
|
return obj['last'];
|
|
30302
30371
|
}
|
|
30303
30372
|
function readSize(obj) {
|
|
30304
30373
|
if (obj.hasOwnProperty('size') || obj['size'] !== undefined)
|
|
30305
30374
|
return obj['size'];
|
|
30306
|
-
if (isArray(obj) || isString(obj))
|
|
30375
|
+
if (isArray$1(obj) || isString(obj))
|
|
30307
30376
|
return obj.length;
|
|
30308
30377
|
if (typeof obj === 'object')
|
|
30309
30378
|
return Object.keys(obj).length;
|
|
@@ -30470,7 +30539,7 @@ var SimpleEmitter = /** @class */ (function () {
|
|
|
30470
30539
|
this.buffer = '';
|
|
30471
30540
|
}
|
|
30472
30541
|
SimpleEmitter.prototype.write = function (html) {
|
|
30473
|
-
this.buffer += stringify$
|
|
30542
|
+
this.buffer += stringify$5(html);
|
|
30474
30543
|
};
|
|
30475
30544
|
return SimpleEmitter;
|
|
30476
30545
|
}());
|
|
@@ -30481,7 +30550,7 @@ var StreamedEmitter = /** @class */ (function () {
|
|
|
30481
30550
|
this.stream = new PassThrough$6();
|
|
30482
30551
|
}
|
|
30483
30552
|
StreamedEmitter.prototype.write = function (html) {
|
|
30484
|
-
this.stream.write(stringify$
|
|
30553
|
+
this.stream.write(stringify$5(html));
|
|
30485
30554
|
};
|
|
30486
30555
|
StreamedEmitter.prototype.error = function (err) {
|
|
30487
30556
|
this.stream.emit('error', err);
|
|
@@ -30506,7 +30575,7 @@ var KeepingTypeEmitter = /** @class */ (function () {
|
|
|
30506
30575
|
this.buffer = html;
|
|
30507
30576
|
}
|
|
30508
30577
|
else {
|
|
30509
|
-
this.buffer = stringify$
|
|
30578
|
+
this.buffer = stringify$5(this.buffer) + stringify$5(html);
|
|
30510
30579
|
}
|
|
30511
30580
|
};
|
|
30512
30581
|
return KeepingTypeEmitter;
|
|
@@ -30605,7 +30674,7 @@ var Tag = /** @class */ (function (_super) {
|
|
|
30605
30674
|
case 1:
|
|
30606
30675
|
hash = (_a.sent());
|
|
30607
30676
|
impl = this.impl;
|
|
30608
|
-
if (!isFunction(impl.render)) return [3 /*break*/, 3];
|
|
30677
|
+
if (!isFunction$1(impl.render)) return [3 /*break*/, 3];
|
|
30609
30678
|
return [4 /*yield*/, impl.render(ctx, emitter, hash)];
|
|
30610
30679
|
case 2: return [2 /*return*/, _a.sent()];
|
|
30611
30680
|
case 3: return [2 /*return*/];
|
|
@@ -32332,14 +32401,14 @@ function splitOn(input, char) {
|
|
|
32332
32401
|
];
|
|
32333
32402
|
}
|
|
32334
32403
|
function first(input, offset = 0) {
|
|
32335
|
-
return isArrayLike(input) && input.length > offset ? input[offset] : void 0;
|
|
32404
|
+
return isArrayLike$1(input) && input.length > offset ? input[offset] : void 0;
|
|
32336
32405
|
}
|
|
32337
32406
|
function last(input, offset = 0) {
|
|
32338
|
-
if (isArrayLike(input) && input.length > offset) {
|
|
32407
|
+
if (isArrayLike$1(input) && input.length > offset) {
|
|
32339
32408
|
return input[input.length - 1 - offset];
|
|
32340
32409
|
}
|
|
32341
32410
|
}
|
|
32342
|
-
function isArrayLike(input) {
|
|
32411
|
+
function isArrayLike$1(input) {
|
|
32343
32412
|
return !!(input && typeof input.length === "number");
|
|
32344
32413
|
}
|
|
32345
32414
|
function toLinesWithContent(input = "", trimmed2 = true, separator = "\n") {
|
|
@@ -32413,13 +32482,13 @@ function pick(source, properties) {
|
|
|
32413
32482
|
function delay(duration = 0) {
|
|
32414
32483
|
return new Promise((done) => setTimeout(done, duration));
|
|
32415
32484
|
}
|
|
32416
|
-
var NULL, NOOP$1, objectToString;
|
|
32485
|
+
var NULL, NOOP$1, objectToString$1;
|
|
32417
32486
|
var init_util = __esm({
|
|
32418
32487
|
"src/lib/utils/util.ts"() {
|
|
32419
32488
|
NULL = "\0";
|
|
32420
32489
|
NOOP$1 = () => {
|
|
32421
32490
|
};
|
|
32422
|
-
objectToString = Object.prototype.toString.call.bind(Object.prototype.toString);
|
|
32491
|
+
objectToString$1 = Object.prototype.toString.call.bind(Object.prototype.toString);
|
|
32423
32492
|
}
|
|
32424
32493
|
});
|
|
32425
32494
|
|
|
@@ -32434,7 +32503,7 @@ function filterPrimitives(input, omit) {
|
|
|
32434
32503
|
return /number|string|boolean/.test(typeof input) && (!omit || !omit.includes(typeof input));
|
|
32435
32504
|
}
|
|
32436
32505
|
function filterPlainObject(input) {
|
|
32437
|
-
return !!input && objectToString(input) === "[object Object]";
|
|
32506
|
+
return !!input && objectToString$1(input) === "[object Object]";
|
|
32438
32507
|
}
|
|
32439
32508
|
function filterFunction(input) {
|
|
32440
32509
|
return typeof input === "function";
|
|
@@ -32669,7 +32738,7 @@ __export(utils_exports, {
|
|
|
32669
32738
|
including: () => including,
|
|
32670
32739
|
isUserFunction: () => isUserFunction,
|
|
32671
32740
|
last: () => last,
|
|
32672
|
-
objectToString: () => objectToString,
|
|
32741
|
+
objectToString: () => objectToString$1,
|
|
32673
32742
|
parseStringResponse: () => parseStringResponse,
|
|
32674
32743
|
pick: () => pick,
|
|
32675
32744
|
prefixedArray: () => prefixedArray,
|
|
@@ -33274,7 +33343,7 @@ var init_git_logger = __esm({
|
|
|
33274
33343
|
if (Buffer.isBuffer(value)) {
|
|
33275
33344
|
return value.toString("utf8");
|
|
33276
33345
|
}
|
|
33277
|
-
return objectToString(value);
|
|
33346
|
+
return objectToString$1(value);
|
|
33278
33347
|
};
|
|
33279
33348
|
}
|
|
33280
33349
|
});
|
|
@@ -33448,7 +33517,7 @@ var init_git_executor_chain = __esm({
|
|
|
33448
33517
|
logger.info(`exitCode=%s handling with custom error handler`);
|
|
33449
33518
|
return task.onError(result, error, (newStdOut) => {
|
|
33450
33519
|
logger.info(`custom error handler treated as success`);
|
|
33451
|
-
logger(`custom error returned a %s`, objectToString(newStdOut));
|
|
33520
|
+
logger(`custom error returned a %s`, objectToString$1(newStdOut));
|
|
33452
33521
|
done(new GitOutputStreams(Array.isArray(newStdOut) ? Buffer.concat(newStdOut) : newStdOut, Buffer.concat(stdErr)));
|
|
33453
33522
|
}, fail);
|
|
33454
33523
|
}
|
|
@@ -35689,7 +35758,7 @@ function isTaskError(result) {
|
|
|
35689
35758
|
function getErrorMessage(result) {
|
|
35690
35759
|
return Buffer.concat([...result.stdOut, ...result.stdErr]);
|
|
35691
35760
|
}
|
|
35692
|
-
function errorDetectionHandler(overwrite, isError = isTaskError, errorMessage = getErrorMessage) {
|
|
35761
|
+
function errorDetectionHandler(overwrite = false, isError = isTaskError, errorMessage = getErrorMessage) {
|
|
35693
35762
|
return (error, result) => {
|
|
35694
35763
|
if (!overwrite && error || !isError(result)) {
|
|
35695
35764
|
return error;
|
|
@@ -35857,6 +35926,9 @@ init_git_response_error();
|
|
|
35857
35926
|
var esm_default = gitInstanceFactory;
|
|
35858
35927
|
|
|
35859
35928
|
const factory = esm_default;
|
|
35929
|
+
async function initializeRepository(directory) {
|
|
35930
|
+
await esm_default(directory).init();
|
|
35931
|
+
}
|
|
35860
35932
|
async function downloadRepository({ repoUrl, destination }) {
|
|
35861
35933
|
const [repository, branch] = repoUrl.split("#");
|
|
35862
35934
|
const options = { "--recurse-submodules": null };
|
|
@@ -35873,6 +35945,7 @@ async function downloadRepository({ repoUrl, destination }) {
|
|
|
35873
35945
|
var git = /*#__PURE__*/Object.freeze({
|
|
35874
35946
|
__proto__: null,
|
|
35875
35947
|
factory: factory,
|
|
35948
|
+
initializeRepository: initializeRepository,
|
|
35876
35949
|
downloadRepository: downloadRepository
|
|
35877
35950
|
});
|
|
35878
35951
|
|
|
@@ -40202,7 +40275,7 @@ try {
|
|
|
40202
40275
|
const POOL_SIZE = 65536;
|
|
40203
40276
|
|
|
40204
40277
|
/** @param {(Blob | Uint8Array)[]} parts */
|
|
40205
|
-
async function * toIterator (parts, clone) {
|
|
40278
|
+
async function * toIterator (parts, clone = true) {
|
|
40206
40279
|
for (const part of parts) {
|
|
40207
40280
|
if ('stream' in part) {
|
|
40208
40281
|
yield * (/** @type {AsyncIterableIterator<Uint8Array>} */ (part.stream()));
|
|
@@ -40744,7 +40817,7 @@ class Body$1 {
|
|
|
40744
40817
|
return formData;
|
|
40745
40818
|
}
|
|
40746
40819
|
|
|
40747
|
-
const {toFormData} = await import('./multipart-parser-
|
|
40820
|
+
const {toFormData} = await import('./multipart-parser-cfdda463.js');
|
|
40748
40821
|
return toFormData(this.body, ct);
|
|
40749
40822
|
}
|
|
40750
40823
|
|
|
@@ -41923,7 +41996,7 @@ class Request$1 extends Body$1 {
|
|
|
41923
41996
|
|
|
41924
41997
|
/** @returns {string} */
|
|
41925
41998
|
get url() {
|
|
41926
|
-
return format$
|
|
41999
|
+
return format$6(this[INTERNALS$3].parsedURL);
|
|
41927
42000
|
}
|
|
41928
42001
|
|
|
41929
42002
|
/** @returns {Headers} */
|
|
@@ -42053,7 +42126,7 @@ const getNodeRequestOptions$1 = request => {
|
|
|
42053
42126
|
|
|
42054
42127
|
// HTTP-network-or-cache fetch step 2.15
|
|
42055
42128
|
if (request.compress && !headers.has('Accept-Encoding')) {
|
|
42056
|
-
headers.set('Accept-Encoding', 'gzip,deflate,br');
|
|
42129
|
+
headers.set('Accept-Encoding', 'gzip, deflate, br');
|
|
42057
42130
|
}
|
|
42058
42131
|
|
|
42059
42132
|
let {agent} = request;
|
|
@@ -42472,13 +42545,7 @@ function fixResponseChunkedTransferBadEnding(request, errorCallback) {
|
|
|
42472
42545
|
}
|
|
42473
42546
|
};
|
|
42474
42547
|
|
|
42475
|
-
|
|
42476
|
-
|
|
42477
|
-
request.on('abort', () => {
|
|
42478
|
-
socket.removeListener('close', onSocketClose);
|
|
42479
|
-
});
|
|
42480
|
-
|
|
42481
|
-
socket.on('data', buf => {
|
|
42548
|
+
const onData = buf => {
|
|
42482
42549
|
properLastChunkReceived = Buffer$1.compare(buf.slice(-5), LAST_CHUNK) === 0;
|
|
42483
42550
|
|
|
42484
42551
|
// Sometimes final 0-length chunk and end of message code are in separate packets
|
|
@@ -42490,6 +42557,14 @@ function fixResponseChunkedTransferBadEnding(request, errorCallback) {
|
|
|
42490
42557
|
}
|
|
42491
42558
|
|
|
42492
42559
|
previousChunk = buf;
|
|
42560
|
+
};
|
|
42561
|
+
|
|
42562
|
+
socket.prependListener('close', onSocketClose);
|
|
42563
|
+
socket.on('data', onData);
|
|
42564
|
+
|
|
42565
|
+
request.on('close', () => {
|
|
42566
|
+
socket.removeListener('close', onSocketClose);
|
|
42567
|
+
socket.removeListener('data', onData);
|
|
42493
42568
|
});
|
|
42494
42569
|
});
|
|
42495
42570
|
}
|
|
@@ -54673,147 +54748,1062 @@ var github = /*#__PURE__*/Object.freeze({
|
|
|
54673
54748
|
parseRepoUrl: parseRepoUrl
|
|
54674
54749
|
});
|
|
54675
54750
|
|
|
54676
|
-
|
|
54677
|
-
|
|
54678
|
-
|
|
54679
|
-
|
|
54680
|
-
function
|
|
54681
|
-
|
|
54682
|
-
|
|
54683
|
-
|
|
54684
|
-
|
|
54685
|
-
|
|
54686
|
-
|
|
54751
|
+
var distWeb = {exports: {}};
|
|
54752
|
+
|
|
54753
|
+
var stringify$4 = {exports: {}};
|
|
54754
|
+
|
|
54755
|
+
(function (module, exports) {
|
|
54756
|
+
exports = module.exports = stringify;
|
|
54757
|
+
exports.getSerialize = serializer;
|
|
54758
|
+
|
|
54759
|
+
function stringify(obj, replacer, spaces, cycleReplacer) {
|
|
54760
|
+
return JSON.stringify(obj, serializer(replacer, cycleReplacer), spaces)
|
|
54761
|
+
}
|
|
54762
|
+
|
|
54763
|
+
function serializer(replacer, cycleReplacer) {
|
|
54764
|
+
var stack = [], keys = [];
|
|
54765
|
+
|
|
54766
|
+
if (cycleReplacer == null) cycleReplacer = function(key, value) {
|
|
54767
|
+
if (stack[0] === value) return "[Circular ~]"
|
|
54768
|
+
return "[Circular ~." + keys.slice(0, stack.indexOf(value)).join(".") + "]"
|
|
54769
|
+
};
|
|
54770
|
+
|
|
54771
|
+
return function(key, value) {
|
|
54772
|
+
if (stack.length > 0) {
|
|
54773
|
+
var thisPos = stack.indexOf(this);
|
|
54774
|
+
~thisPos ? stack.splice(thisPos + 1) : stack.push(this);
|
|
54775
|
+
~thisPos ? keys.splice(thisPos, Infinity, key) : keys.push(key);
|
|
54776
|
+
if (~stack.indexOf(value)) value = cycleReplacer.call(this, key, value);
|
|
54777
|
+
}
|
|
54778
|
+
else stack.push(value);
|
|
54779
|
+
|
|
54780
|
+
return replacer == null ? value : replacer.call(this, key, value)
|
|
54687
54781
|
}
|
|
54688
54782
|
}
|
|
54689
|
-
|
|
54690
|
-
|
|
54691
|
-
|
|
54692
|
-
|
|
54693
|
-
|
|
54694
|
-
|
|
54695
|
-
|
|
54696
|
-
|
|
54697
|
-
|
|
54698
|
-
|
|
54699
|
-
|
|
54700
|
-
|
|
54701
|
-
|
|
54702
|
-
|
|
54703
|
-
|
|
54704
|
-
|
|
54783
|
+
}(stringify$4, stringify$4.exports));
|
|
54784
|
+
|
|
54785
|
+
/*
|
|
54786
|
+
* random-seed
|
|
54787
|
+
* https://github.com/skratchdot/random-seed
|
|
54788
|
+
*
|
|
54789
|
+
* This code was originally written by Steve Gibson and can be found here:
|
|
54790
|
+
*
|
|
54791
|
+
* https://www.grc.com/otg/uheprng.htm
|
|
54792
|
+
*
|
|
54793
|
+
* It was slightly modified for use in node, to pass jshint, and a few additional
|
|
54794
|
+
* helper functions were added.
|
|
54795
|
+
*
|
|
54796
|
+
* Copyright (c) 2013 skratchdot
|
|
54797
|
+
* Dual Licensed under the MIT license and the original GRC copyright/license
|
|
54798
|
+
* included below.
|
|
54799
|
+
*/
|
|
54800
|
+
var stringify$3 = stringify$4.exports;
|
|
54801
|
+
|
|
54802
|
+
/* ============================================================================
|
|
54803
|
+
This is based upon Johannes Baagoe's carefully designed and efficient hash
|
|
54804
|
+
function for use with JavaScript. It has a proven "avalanche" effect such
|
|
54805
|
+
that every bit of the input affects every bit of the output 50% of the time,
|
|
54806
|
+
which is good. See: http://baagoe.com/en/RandomMusings/hash/avalanche.xhtml
|
|
54807
|
+
============================================================================
|
|
54808
|
+
*/
|
|
54809
|
+
var Mash = function () {
|
|
54810
|
+
var n = 0xefc8249d;
|
|
54811
|
+
var mash = function (data) {
|
|
54812
|
+
if (data) {
|
|
54813
|
+
data = data.toString();
|
|
54814
|
+
for (var i = 0; i < data.length; i++) {
|
|
54815
|
+
n += data.charCodeAt(i);
|
|
54816
|
+
var h = 0.02519603282416938 * n;
|
|
54817
|
+
n = h >>> 0;
|
|
54818
|
+
h -= n;
|
|
54819
|
+
h *= n;
|
|
54820
|
+
n = h >>> 0;
|
|
54821
|
+
h -= n;
|
|
54822
|
+
n += h * 0x100000000; // 2^32
|
|
54823
|
+
}
|
|
54824
|
+
return (n >>> 0) * 2.3283064365386963e-10; // 2^-32
|
|
54825
|
+
} else {
|
|
54826
|
+
n = 0xefc8249d;
|
|
54827
|
+
}
|
|
54828
|
+
};
|
|
54829
|
+
return mash;
|
|
54830
|
+
};
|
|
54831
|
+
|
|
54832
|
+
var uheprng = function (seed) {
|
|
54833
|
+
return (function () {
|
|
54834
|
+
var o = 48; // set the 'order' number of ENTROPY-holding 32-bit values
|
|
54835
|
+
var c = 1; // init the 'carry' used by the multiply-with-carry (MWC) algorithm
|
|
54836
|
+
var p = o; // init the 'phase' (max-1) of the intermediate variable pointer
|
|
54837
|
+
var s = new Array(o); // declare our intermediate variables array
|
|
54838
|
+
var i; // general purpose local
|
|
54839
|
+
var j; // general purpose local
|
|
54840
|
+
var k = 0; // general purpose local
|
|
54841
|
+
|
|
54842
|
+
// when our "uheprng" is initially invoked our PRNG state is initialized from the
|
|
54843
|
+
// browser's own local PRNG. This is okay since although its generator might not
|
|
54844
|
+
// be wonderful, it's useful for establishing large startup entropy for our usage.
|
|
54845
|
+
var mash = new Mash(); // get a pointer to our high-performance "Mash" hash
|
|
54846
|
+
|
|
54847
|
+
// fill the array with initial mash hash values
|
|
54848
|
+
for (i = 0; i < o; i++) {
|
|
54849
|
+
s[i] = mash(Math.random());
|
|
54850
|
+
}
|
|
54851
|
+
|
|
54852
|
+
// this PRIVATE (internal access only) function is the heart of the multiply-with-carry
|
|
54853
|
+
// (MWC) PRNG algorithm. When called it returns a pseudo-random number in the form of a
|
|
54854
|
+
// 32-bit JavaScript fraction (0.0 to <1.0) it is a PRIVATE function used by the default
|
|
54855
|
+
// [0-1] return function, and by the random 'string(n)' function which returns 'n'
|
|
54856
|
+
// characters from 33 to 126.
|
|
54857
|
+
var rawprng = function () {
|
|
54858
|
+
if (++p >= o) {
|
|
54859
|
+
p = 0;
|
|
54860
|
+
}
|
|
54861
|
+
var t = 1768863 * s[p] + c * 2.3283064365386963e-10; // 2^-32
|
|
54862
|
+
return s[p] = t - (c = t | 0);
|
|
54863
|
+
};
|
|
54864
|
+
|
|
54865
|
+
// this EXPORTED function is the default function returned by this library.
|
|
54866
|
+
// The values returned are integers in the range from 0 to range-1. We first
|
|
54867
|
+
// obtain two 32-bit fractions (from rawprng) to synthesize a single high
|
|
54868
|
+
// resolution 53-bit prng (0 to <1), then we multiply this by the caller's
|
|
54869
|
+
// "range" param and take the "floor" to return a equally probable integer.
|
|
54870
|
+
var random = function (range) {
|
|
54871
|
+
return Math.floor(range * (rawprng() + (rawprng() * 0x200000 | 0) * 1.1102230246251565e-16)); // 2^-53
|
|
54872
|
+
};
|
|
54873
|
+
|
|
54874
|
+
// this EXPORTED function 'string(n)' returns a pseudo-random string of
|
|
54875
|
+
// 'n' printable characters ranging from chr(33) to chr(126) inclusive.
|
|
54876
|
+
random.string = function (count) {
|
|
54877
|
+
var i;
|
|
54878
|
+
var s = '';
|
|
54879
|
+
for (i = 0; i < count; i++) {
|
|
54880
|
+
s += String.fromCharCode(33 + random(94));
|
|
54881
|
+
}
|
|
54882
|
+
return s;
|
|
54883
|
+
};
|
|
54884
|
+
|
|
54885
|
+
// this PRIVATE "hash" function is used to evolve the generator's internal
|
|
54886
|
+
// entropy state. It is also called by the EXPORTED addEntropy() function
|
|
54887
|
+
// which is used to pour entropy into the PRNG.
|
|
54888
|
+
var hash = function () {
|
|
54889
|
+
var args = Array.prototype.slice.call(arguments);
|
|
54890
|
+
for (i = 0; i < args.length; i++) {
|
|
54891
|
+
for (j = 0; j < o; j++) {
|
|
54892
|
+
s[j] -= mash(args[i]);
|
|
54893
|
+
if (s[j] < 0) {
|
|
54894
|
+
s[j] += 1;
|
|
54895
|
+
}
|
|
54896
|
+
}
|
|
54897
|
+
}
|
|
54898
|
+
};
|
|
54899
|
+
|
|
54900
|
+
// this EXPORTED "clean string" function removes leading and trailing spaces and non-printing
|
|
54901
|
+
// control characters, including any embedded carriage-return (CR) and line-feed (LF) characters,
|
|
54902
|
+
// from any string it is handed. this is also used by the 'hashstring' function (below) to help
|
|
54903
|
+
// users always obtain the same EFFECTIVE uheprng seeding key.
|
|
54904
|
+
random.cleanString = function (inStr) {
|
|
54905
|
+
inStr = inStr.replace(/(^\s*)|(\s*$)/gi, ''); // remove any/all leading spaces
|
|
54906
|
+
inStr = inStr.replace(/[\x00-\x1F]/gi, ''); // remove any/all control characters
|
|
54907
|
+
inStr = inStr.replace(/\n /, '\n'); // remove any/all trailing spaces
|
|
54908
|
+
return inStr; // return the cleaned up result
|
|
54909
|
+
};
|
|
54910
|
+
|
|
54911
|
+
// this EXPORTED "hash string" function hashes the provided character string after first removing
|
|
54912
|
+
// any leading or trailing spaces and ignoring any embedded carriage returns (CR) or Line Feeds (LF)
|
|
54913
|
+
random.hashString = function (inStr) {
|
|
54914
|
+
inStr = random.cleanString(inStr);
|
|
54915
|
+
mash(inStr); // use the string to evolve the 'mash' state
|
|
54916
|
+
for (i = 0; i < inStr.length; i++) { // scan through the characters in our string
|
|
54917
|
+
k = inStr.charCodeAt(i); // get the character code at the location
|
|
54918
|
+
for (j = 0; j < o; j++) { // "mash" it into the UHEPRNG state
|
|
54919
|
+
s[j] -= mash(k);
|
|
54920
|
+
if (s[j] < 0) {
|
|
54921
|
+
s[j] += 1;
|
|
54922
|
+
}
|
|
54923
|
+
}
|
|
54924
|
+
}
|
|
54925
|
+
};
|
|
54926
|
+
|
|
54927
|
+
// this EXPORTED function allows you to seed the random generator.
|
|
54928
|
+
random.seed = function (seed) {
|
|
54929
|
+
if (typeof seed === 'undefined' || seed === null) {
|
|
54930
|
+
seed = Math.random();
|
|
54931
|
+
}
|
|
54932
|
+
if (typeof seed !== 'string') {
|
|
54933
|
+
seed = stringify$3(seed, function (key, value) {
|
|
54934
|
+
if (typeof value === 'function') {
|
|
54935
|
+
return (value).toString();
|
|
54936
|
+
}
|
|
54937
|
+
return value;
|
|
54938
|
+
});
|
|
54939
|
+
}
|
|
54940
|
+
random.initState();
|
|
54941
|
+
random.hashString(seed);
|
|
54942
|
+
};
|
|
54943
|
+
|
|
54944
|
+
// this handy exported function is used to add entropy to our uheprng at any time
|
|
54945
|
+
random.addEntropy = function ( /* accept zero or more arguments */ ) {
|
|
54946
|
+
var args = [];
|
|
54947
|
+
for (i = 0; i < arguments.length; i++) {
|
|
54948
|
+
args.push(arguments[i]);
|
|
54949
|
+
}
|
|
54950
|
+
hash((k++) + (new Date().getTime()) + args.join('') + Math.random());
|
|
54951
|
+
};
|
|
54952
|
+
|
|
54953
|
+
// if we want to provide a deterministic startup context for our PRNG,
|
|
54954
|
+
// but without directly setting the internal state variables, this allows
|
|
54955
|
+
// us to initialize the mash hash and PRNG's internal state before providing
|
|
54956
|
+
// some hashing input
|
|
54957
|
+
random.initState = function () {
|
|
54958
|
+
mash(); // pass a null arg to force mash hash to init
|
|
54959
|
+
for (i = 0; i < o; i++) {
|
|
54960
|
+
s[i] = mash(' '); // fill the array with initial mash hash values
|
|
54961
|
+
}
|
|
54962
|
+
c = 1; // init our multiply-with-carry carry
|
|
54963
|
+
p = o; // init our phase
|
|
54964
|
+
};
|
|
54965
|
+
|
|
54966
|
+
// we use this (optional) exported function to signal the JavaScript interpreter
|
|
54967
|
+
// that we're finished using the "Mash" hash function so that it can free up the
|
|
54968
|
+
// local "instance variables" is will have been maintaining. It's not strictly
|
|
54969
|
+
// necessary, of course, but it's good JavaScript citizenship.
|
|
54970
|
+
random.done = function () {
|
|
54971
|
+
mash = null;
|
|
54972
|
+
};
|
|
54973
|
+
|
|
54974
|
+
// if we called "uheprng" with a seed value, then execute random.seed() before returning
|
|
54975
|
+
if (typeof seed !== 'undefined') {
|
|
54976
|
+
random.seed(seed);
|
|
54977
|
+
}
|
|
54978
|
+
|
|
54979
|
+
// Returns a random integer between 0 (inclusive) and range (exclusive)
|
|
54980
|
+
random.range = function (range) {
|
|
54981
|
+
return random(range);
|
|
54982
|
+
};
|
|
54983
|
+
|
|
54984
|
+
// Returns a random float between 0 (inclusive) and 1 (exclusive)
|
|
54985
|
+
random.random = function () {
|
|
54986
|
+
return random(Number.MAX_VALUE - 1) / Number.MAX_VALUE;
|
|
54987
|
+
};
|
|
54988
|
+
|
|
54989
|
+
// Returns a random float between min (inclusive) and max (exclusive)
|
|
54990
|
+
random.floatBetween = function (min, max) {
|
|
54991
|
+
return random.random() * (max - min) + min;
|
|
54992
|
+
};
|
|
54993
|
+
|
|
54994
|
+
// Returns a random integer between min (inclusive) and max (inclusive)
|
|
54995
|
+
random.intBetween = function (min, max) {
|
|
54996
|
+
return Math.floor(random.random() * (max - min + 1)) + min;
|
|
54997
|
+
};
|
|
54998
|
+
|
|
54999
|
+
// when our main outer "uheprng" function is called, after setting up our
|
|
55000
|
+
// initial variables and entropic state, we return an "instance pointer"
|
|
55001
|
+
// to the internal anonymous function which can then be used to access
|
|
55002
|
+
// the uheprng's various exported functions. As with the ".done" function
|
|
55003
|
+
// above, we should set the returned value to 'null' once we're finished
|
|
55004
|
+
// using any of these functions.
|
|
55005
|
+
return random;
|
|
55006
|
+
}());
|
|
55007
|
+
};
|
|
55008
|
+
|
|
55009
|
+
// Modification for use in node:
|
|
55010
|
+
uheprng.create = function (seed) {
|
|
55011
|
+
return new uheprng(seed);
|
|
55012
|
+
};
|
|
55013
|
+
var randomSeed = uheprng;
|
|
55014
|
+
|
|
55015
|
+
/**
|
|
55016
|
+
* lodash (Custom Build) <https://lodash.com/>
|
|
55017
|
+
* Build: `lodash modularize exports="npm" -o ./`
|
|
55018
|
+
* Copyright jQuery Foundation and other contributors <https://jquery.org/>
|
|
55019
|
+
* Released under MIT license <https://lodash.com/license>
|
|
55020
|
+
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
|
|
55021
|
+
* Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
|
|
55022
|
+
*/
|
|
55023
|
+
|
|
55024
|
+
/** Used as references for various `Number` constants. */
|
|
55025
|
+
var MAX_SAFE_INTEGER$2 = 9007199254740991;
|
|
55026
|
+
|
|
55027
|
+
/** `Object#toString` result references. */
|
|
55028
|
+
var argsTag = '[object Arguments]',
|
|
55029
|
+
funcTag = '[object Function]',
|
|
55030
|
+
genTag = '[object GeneratorFunction]';
|
|
55031
|
+
|
|
55032
|
+
/** Used to detect unsigned integer values. */
|
|
55033
|
+
var reIsUint = /^(?:0|[1-9]\d*)$/;
|
|
55034
|
+
|
|
55035
|
+
/**
|
|
55036
|
+
* A faster alternative to `Function#apply`, this function invokes `func`
|
|
55037
|
+
* with the `this` binding of `thisArg` and the arguments of `args`.
|
|
55038
|
+
*
|
|
55039
|
+
* @private
|
|
55040
|
+
* @param {Function} func The function to invoke.
|
|
55041
|
+
* @param {*} thisArg The `this` binding of `func`.
|
|
55042
|
+
* @param {Array} args The arguments to invoke `func` with.
|
|
55043
|
+
* @returns {*} Returns the result of `func`.
|
|
55044
|
+
*/
|
|
55045
|
+
function apply(func, thisArg, args) {
|
|
55046
|
+
switch (args.length) {
|
|
55047
|
+
case 0: return func.call(thisArg);
|
|
55048
|
+
case 1: return func.call(thisArg, args[0]);
|
|
55049
|
+
case 2: return func.call(thisArg, args[0], args[1]);
|
|
55050
|
+
case 3: return func.call(thisArg, args[0], args[1], args[2]);
|
|
54705
55051
|
}
|
|
55052
|
+
return func.apply(thisArg, args);
|
|
54706
55053
|
}
|
|
54707
|
-
|
|
54708
|
-
|
|
54709
|
-
|
|
55054
|
+
|
|
55055
|
+
/**
|
|
55056
|
+
* The base implementation of `_.times` without support for iteratee shorthands
|
|
55057
|
+
* or max array length checks.
|
|
55058
|
+
*
|
|
55059
|
+
* @private
|
|
55060
|
+
* @param {number} n The number of times to invoke `iteratee`.
|
|
55061
|
+
* @param {Function} iteratee The function invoked per iteration.
|
|
55062
|
+
* @returns {Array} Returns the array of results.
|
|
55063
|
+
*/
|
|
55064
|
+
function baseTimes(n, iteratee) {
|
|
55065
|
+
var index = -1,
|
|
55066
|
+
result = Array(n);
|
|
55067
|
+
|
|
55068
|
+
while (++index < n) {
|
|
55069
|
+
result[index] = iteratee(index);
|
|
55070
|
+
}
|
|
55071
|
+
return result;
|
|
54710
55072
|
}
|
|
54711
|
-
|
|
54712
|
-
|
|
54713
|
-
|
|
55073
|
+
|
|
55074
|
+
/** Used for built-in method references. */
|
|
55075
|
+
var objectProto = Object.prototype;
|
|
55076
|
+
|
|
55077
|
+
/** Used to check objects for own properties. */
|
|
55078
|
+
var hasOwnProperty$1 = objectProto.hasOwnProperty;
|
|
55079
|
+
|
|
55080
|
+
/**
|
|
55081
|
+
* Used to resolve the
|
|
55082
|
+
* [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
|
|
55083
|
+
* of values.
|
|
55084
|
+
*/
|
|
55085
|
+
var objectToString = objectProto.toString;
|
|
55086
|
+
|
|
55087
|
+
/** Built-in value references. */
|
|
55088
|
+
var propertyIsEnumerable = objectProto.propertyIsEnumerable;
|
|
55089
|
+
|
|
55090
|
+
/* Built-in method references for those with the same name as other `lodash` methods. */
|
|
55091
|
+
var nativeMax = Math.max;
|
|
55092
|
+
|
|
55093
|
+
/**
|
|
55094
|
+
* Creates an array of the enumerable property names of the array-like `value`.
|
|
55095
|
+
*
|
|
55096
|
+
* @private
|
|
55097
|
+
* @param {*} value The value to query.
|
|
55098
|
+
* @param {boolean} inherited Specify returning inherited property names.
|
|
55099
|
+
* @returns {Array} Returns the array of property names.
|
|
55100
|
+
*/
|
|
55101
|
+
function arrayLikeKeys(value, inherited) {
|
|
55102
|
+
// Safari 8.1 makes `arguments.callee` enumerable in strict mode.
|
|
55103
|
+
// Safari 9 makes `arguments.length` enumerable in strict mode.
|
|
55104
|
+
var result = (isArray(value) || isArguments(value))
|
|
55105
|
+
? baseTimes(value.length, String)
|
|
55106
|
+
: [];
|
|
55107
|
+
|
|
55108
|
+
var length = result.length,
|
|
55109
|
+
skipIndexes = !!length;
|
|
55110
|
+
|
|
55111
|
+
for (var key in value) {
|
|
55112
|
+
if ((inherited || hasOwnProperty$1.call(value, key)) &&
|
|
55113
|
+
!(skipIndexes && (key == 'length' || isIndex(key, length)))) {
|
|
55114
|
+
result.push(key);
|
|
55115
|
+
}
|
|
55116
|
+
}
|
|
55117
|
+
return result;
|
|
54714
55118
|
}
|
|
54715
|
-
|
|
54716
|
-
|
|
54717
|
-
|
|
54718
|
-
|
|
54719
|
-
|
|
55119
|
+
|
|
55120
|
+
/**
|
|
55121
|
+
* Used by `_.defaults` to customize its `_.assignIn` use.
|
|
55122
|
+
*
|
|
55123
|
+
* @private
|
|
55124
|
+
* @param {*} objValue The destination value.
|
|
55125
|
+
* @param {*} srcValue The source value.
|
|
55126
|
+
* @param {string} key The key of the property to assign.
|
|
55127
|
+
* @param {Object} object The parent object of `objValue`.
|
|
55128
|
+
* @returns {*} Returns the value to assign.
|
|
55129
|
+
*/
|
|
55130
|
+
function assignInDefaults(objValue, srcValue, key, object) {
|
|
55131
|
+
if (objValue === undefined ||
|
|
55132
|
+
(eq$3(objValue, objectProto[key]) && !hasOwnProperty$1.call(object, key))) {
|
|
55133
|
+
return srcValue;
|
|
55134
|
+
}
|
|
55135
|
+
return objValue;
|
|
54720
55136
|
}
|
|
54721
|
-
|
|
54722
|
-
|
|
54723
|
-
|
|
55137
|
+
|
|
55138
|
+
/**
|
|
55139
|
+
* Assigns `value` to `key` of `object` if the existing value is not equivalent
|
|
55140
|
+
* using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
|
|
55141
|
+
* for equality comparisons.
|
|
55142
|
+
*
|
|
55143
|
+
* @private
|
|
55144
|
+
* @param {Object} object The object to modify.
|
|
55145
|
+
* @param {string} key The key of the property to assign.
|
|
55146
|
+
* @param {*} value The value to assign.
|
|
55147
|
+
*/
|
|
55148
|
+
function assignValue(object, key, value) {
|
|
55149
|
+
var objValue = object[key];
|
|
55150
|
+
if (!(hasOwnProperty$1.call(object, key) && eq$3(objValue, value)) ||
|
|
55151
|
+
(value === undefined && !(key in object))) {
|
|
55152
|
+
object[key] = value;
|
|
54724
55153
|
}
|
|
54725
|
-
return JSON.parse(await read$1(packageJsonPath));
|
|
54726
55154
|
}
|
|
54727
|
-
|
|
54728
|
-
|
|
54729
|
-
|
|
54730
|
-
|
|
55155
|
+
|
|
55156
|
+
/**
|
|
55157
|
+
* The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.
|
|
55158
|
+
*
|
|
55159
|
+
* @private
|
|
55160
|
+
* @param {Object} object The object to query.
|
|
55161
|
+
* @returns {Array} Returns the array of property names.
|
|
55162
|
+
*/
|
|
55163
|
+
function baseKeysIn(object) {
|
|
55164
|
+
if (!isObject$1(object)) {
|
|
55165
|
+
return nativeKeysIn(object);
|
|
54731
55166
|
}
|
|
54732
|
-
|
|
54733
|
-
|
|
54734
|
-
|
|
54735
|
-
|
|
54736
|
-
|
|
54737
|
-
|
|
55167
|
+
var isProto = isPrototype(object),
|
|
55168
|
+
result = [];
|
|
55169
|
+
|
|
55170
|
+
for (var key in object) {
|
|
55171
|
+
if (!(key == 'constructor' && (isProto || !hasOwnProperty$1.call(object, key)))) {
|
|
55172
|
+
result.push(key);
|
|
55173
|
+
}
|
|
54738
55174
|
}
|
|
54739
|
-
|
|
54740
|
-
|
|
54741
|
-
|
|
54742
|
-
|
|
54743
|
-
|
|
54744
|
-
|
|
54745
|
-
|
|
54746
|
-
|
|
54747
|
-
|
|
54748
|
-
|
|
54749
|
-
|
|
55175
|
+
return result;
|
|
55176
|
+
}
|
|
55177
|
+
|
|
55178
|
+
/**
|
|
55179
|
+
* The base implementation of `_.rest` which doesn't validate or coerce arguments.
|
|
55180
|
+
*
|
|
55181
|
+
* @private
|
|
55182
|
+
* @param {Function} func The function to apply a rest parameter to.
|
|
55183
|
+
* @param {number} [start=func.length-1] The start position of the rest parameter.
|
|
55184
|
+
* @returns {Function} Returns the new function.
|
|
55185
|
+
*/
|
|
55186
|
+
function baseRest(func, start) {
|
|
55187
|
+
start = nativeMax(start === undefined ? (func.length - 1) : start, 0);
|
|
55188
|
+
return function() {
|
|
55189
|
+
var args = arguments,
|
|
55190
|
+
index = -1,
|
|
55191
|
+
length = nativeMax(args.length - start, 0),
|
|
55192
|
+
array = Array(length);
|
|
55193
|
+
|
|
55194
|
+
while (++index < length) {
|
|
55195
|
+
array[index] = args[start + index];
|
|
55196
|
+
}
|
|
55197
|
+
index = -1;
|
|
55198
|
+
var otherArgs = Array(start + 1);
|
|
55199
|
+
while (++index < start) {
|
|
55200
|
+
otherArgs[index] = args[index];
|
|
55201
|
+
}
|
|
55202
|
+
otherArgs[start] = array;
|
|
55203
|
+
return apply(func, this, otherArgs);
|
|
55204
|
+
};
|
|
55205
|
+
}
|
|
55206
|
+
|
|
55207
|
+
/**
|
|
55208
|
+
* Copies properties of `source` to `object`.
|
|
55209
|
+
*
|
|
55210
|
+
* @private
|
|
55211
|
+
* @param {Object} source The object to copy properties from.
|
|
55212
|
+
* @param {Array} props The property identifiers to copy.
|
|
55213
|
+
* @param {Object} [object={}] The object to copy properties to.
|
|
55214
|
+
* @param {Function} [customizer] The function to customize copied values.
|
|
55215
|
+
* @returns {Object} Returns `object`.
|
|
55216
|
+
*/
|
|
55217
|
+
function copyObject(source, props, object, customizer) {
|
|
55218
|
+
object || (object = {});
|
|
55219
|
+
|
|
55220
|
+
var index = -1,
|
|
55221
|
+
length = props.length;
|
|
55222
|
+
|
|
55223
|
+
while (++index < length) {
|
|
55224
|
+
var key = props[index];
|
|
55225
|
+
|
|
55226
|
+
var newValue = customizer
|
|
55227
|
+
? customizer(object[key], source[key], key, object, source)
|
|
55228
|
+
: undefined;
|
|
55229
|
+
|
|
55230
|
+
assignValue(object, key, newValue === undefined ? source[key] : newValue);
|
|
54750
55231
|
}
|
|
54751
|
-
|
|
54752
|
-
|
|
54753
|
-
|
|
54754
|
-
|
|
54755
|
-
|
|
55232
|
+
return object;
|
|
55233
|
+
}
|
|
55234
|
+
|
|
55235
|
+
/**
|
|
55236
|
+
* Creates a function like `_.assign`.
|
|
55237
|
+
*
|
|
55238
|
+
* @private
|
|
55239
|
+
* @param {Function} assigner The function to assign values.
|
|
55240
|
+
* @returns {Function} Returns the new assigner function.
|
|
55241
|
+
*/
|
|
55242
|
+
function createAssigner(assigner) {
|
|
55243
|
+
return baseRest(function(object, sources) {
|
|
55244
|
+
var index = -1,
|
|
55245
|
+
length = sources.length,
|
|
55246
|
+
customizer = length > 1 ? sources[length - 1] : undefined,
|
|
55247
|
+
guard = length > 2 ? sources[2] : undefined;
|
|
55248
|
+
|
|
55249
|
+
customizer = (assigner.length > 3 && typeof customizer == 'function')
|
|
55250
|
+
? (length--, customizer)
|
|
55251
|
+
: undefined;
|
|
55252
|
+
|
|
55253
|
+
if (guard && isIterateeCall(sources[0], sources[1], guard)) {
|
|
55254
|
+
customizer = length < 3 ? undefined : customizer;
|
|
55255
|
+
length = 1;
|
|
55256
|
+
}
|
|
55257
|
+
object = Object(object);
|
|
55258
|
+
while (++index < length) {
|
|
55259
|
+
var source = sources[index];
|
|
55260
|
+
if (source) {
|
|
55261
|
+
assigner(object, source, index, customizer);
|
|
55262
|
+
}
|
|
55263
|
+
}
|
|
55264
|
+
return object;
|
|
54756
55265
|
});
|
|
54757
55266
|
}
|
|
54758
|
-
|
|
54759
|
-
|
|
54760
|
-
|
|
54761
|
-
|
|
54762
|
-
|
|
54763
|
-
|
|
54764
|
-
|
|
54765
|
-
|
|
54766
|
-
|
|
54767
|
-
|
|
54768
|
-
|
|
54769
|
-
|
|
54770
|
-
|
|
55267
|
+
|
|
55268
|
+
/**
|
|
55269
|
+
* Checks if `value` is a valid array-like index.
|
|
55270
|
+
*
|
|
55271
|
+
* @private
|
|
55272
|
+
* @param {*} value The value to check.
|
|
55273
|
+
* @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.
|
|
55274
|
+
* @returns {boolean} Returns `true` if `value` is a valid index, else `false`.
|
|
55275
|
+
*/
|
|
55276
|
+
function isIndex(value, length) {
|
|
55277
|
+
length = length == null ? MAX_SAFE_INTEGER$2 : length;
|
|
55278
|
+
return !!length &&
|
|
55279
|
+
(typeof value == 'number' || reIsUint.test(value)) &&
|
|
55280
|
+
(value > -1 && value % 1 == 0 && value < length);
|
|
55281
|
+
}
|
|
55282
|
+
|
|
55283
|
+
/**
|
|
55284
|
+
* Checks if the given arguments are from an iteratee call.
|
|
55285
|
+
*
|
|
55286
|
+
* @private
|
|
55287
|
+
* @param {*} value The potential iteratee value argument.
|
|
55288
|
+
* @param {*} index The potential iteratee index or key argument.
|
|
55289
|
+
* @param {*} object The potential iteratee object argument.
|
|
55290
|
+
* @returns {boolean} Returns `true` if the arguments are from an iteratee call,
|
|
55291
|
+
* else `false`.
|
|
55292
|
+
*/
|
|
55293
|
+
function isIterateeCall(value, index, object) {
|
|
55294
|
+
if (!isObject$1(object)) {
|
|
55295
|
+
return false;
|
|
54771
55296
|
}
|
|
54772
|
-
|
|
55297
|
+
var type = typeof index;
|
|
55298
|
+
if (type == 'number'
|
|
55299
|
+
? (isArrayLike(object) && isIndex(index, object.length))
|
|
55300
|
+
: (type == 'string' && index in object)
|
|
55301
|
+
) {
|
|
55302
|
+
return eq$3(object[index], value);
|
|
55303
|
+
}
|
|
55304
|
+
return false;
|
|
54773
55305
|
}
|
|
54774
|
-
|
|
54775
|
-
|
|
54776
|
-
|
|
54777
|
-
|
|
54778
|
-
|
|
54779
|
-
|
|
54780
|
-
|
|
54781
|
-
|
|
54782
|
-
|
|
54783
|
-
|
|
54784
|
-
|
|
54785
|
-
|
|
54786
|
-
|
|
55306
|
+
|
|
55307
|
+
/**
|
|
55308
|
+
* Checks if `value` is likely a prototype object.
|
|
55309
|
+
*
|
|
55310
|
+
* @private
|
|
55311
|
+
* @param {*} value The value to check.
|
|
55312
|
+
* @returns {boolean} Returns `true` if `value` is a prototype, else `false`.
|
|
55313
|
+
*/
|
|
55314
|
+
function isPrototype(value) {
|
|
55315
|
+
var Ctor = value && value.constructor,
|
|
55316
|
+
proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;
|
|
55317
|
+
|
|
55318
|
+
return value === proto;
|
|
55319
|
+
}
|
|
55320
|
+
|
|
55321
|
+
/**
|
|
55322
|
+
* This function is like
|
|
55323
|
+
* [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)
|
|
55324
|
+
* except that it includes inherited enumerable properties.
|
|
55325
|
+
*
|
|
55326
|
+
* @private
|
|
55327
|
+
* @param {Object} object The object to query.
|
|
55328
|
+
* @returns {Array} Returns the array of property names.
|
|
55329
|
+
*/
|
|
55330
|
+
function nativeKeysIn(object) {
|
|
55331
|
+
var result = [];
|
|
55332
|
+
if (object != null) {
|
|
55333
|
+
for (var key in Object(object)) {
|
|
55334
|
+
result.push(key);
|
|
55335
|
+
}
|
|
54787
55336
|
}
|
|
54788
|
-
return
|
|
55337
|
+
return result;
|
|
54789
55338
|
}
|
|
54790
|
-
|
|
54791
|
-
|
|
54792
|
-
|
|
54793
|
-
|
|
54794
|
-
|
|
54795
|
-
|
|
54796
|
-
|
|
54797
|
-
|
|
54798
|
-
|
|
54799
|
-
|
|
54800
|
-
|
|
54801
|
-
|
|
54802
|
-
|
|
55339
|
+
|
|
55340
|
+
/**
|
|
55341
|
+
* Performs a
|
|
55342
|
+
* [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
|
|
55343
|
+
* comparison between two values to determine if they are equivalent.
|
|
55344
|
+
*
|
|
55345
|
+
* @static
|
|
55346
|
+
* @memberOf _
|
|
55347
|
+
* @since 4.0.0
|
|
55348
|
+
* @category Lang
|
|
55349
|
+
* @param {*} value The value to compare.
|
|
55350
|
+
* @param {*} other The other value to compare.
|
|
55351
|
+
* @returns {boolean} Returns `true` if the values are equivalent, else `false`.
|
|
55352
|
+
* @example
|
|
55353
|
+
*
|
|
55354
|
+
* var object = { 'a': 1 };
|
|
55355
|
+
* var other = { 'a': 1 };
|
|
55356
|
+
*
|
|
55357
|
+
* _.eq(object, object);
|
|
55358
|
+
* // => true
|
|
55359
|
+
*
|
|
55360
|
+
* _.eq(object, other);
|
|
55361
|
+
* // => false
|
|
55362
|
+
*
|
|
55363
|
+
* _.eq('a', 'a');
|
|
55364
|
+
* // => true
|
|
55365
|
+
*
|
|
55366
|
+
* _.eq('a', Object('a'));
|
|
55367
|
+
* // => false
|
|
55368
|
+
*
|
|
55369
|
+
* _.eq(NaN, NaN);
|
|
55370
|
+
* // => true
|
|
55371
|
+
*/
|
|
55372
|
+
function eq$3(value, other) {
|
|
55373
|
+
return value === other || (value !== value && other !== other);
|
|
55374
|
+
}
|
|
55375
|
+
|
|
55376
|
+
/**
|
|
55377
|
+
* Checks if `value` is likely an `arguments` object.
|
|
55378
|
+
*
|
|
55379
|
+
* @static
|
|
55380
|
+
* @memberOf _
|
|
55381
|
+
* @since 0.1.0
|
|
55382
|
+
* @category Lang
|
|
55383
|
+
* @param {*} value The value to check.
|
|
55384
|
+
* @returns {boolean} Returns `true` if `value` is an `arguments` object,
|
|
55385
|
+
* else `false`.
|
|
55386
|
+
* @example
|
|
55387
|
+
*
|
|
55388
|
+
* _.isArguments(function() { return arguments; }());
|
|
55389
|
+
* // => true
|
|
55390
|
+
*
|
|
55391
|
+
* _.isArguments([1, 2, 3]);
|
|
55392
|
+
* // => false
|
|
55393
|
+
*/
|
|
55394
|
+
function isArguments(value) {
|
|
55395
|
+
// Safari 8.1 makes `arguments.callee` enumerable in strict mode.
|
|
55396
|
+
return isArrayLikeObject(value) && hasOwnProperty$1.call(value, 'callee') &&
|
|
55397
|
+
(!propertyIsEnumerable.call(value, 'callee') || objectToString.call(value) == argsTag);
|
|
55398
|
+
}
|
|
55399
|
+
|
|
55400
|
+
/**
|
|
55401
|
+
* Checks if `value` is classified as an `Array` object.
|
|
55402
|
+
*
|
|
55403
|
+
* @static
|
|
55404
|
+
* @memberOf _
|
|
55405
|
+
* @since 0.1.0
|
|
55406
|
+
* @category Lang
|
|
55407
|
+
* @param {*} value The value to check.
|
|
55408
|
+
* @returns {boolean} Returns `true` if `value` is an array, else `false`.
|
|
55409
|
+
* @example
|
|
55410
|
+
*
|
|
55411
|
+
* _.isArray([1, 2, 3]);
|
|
55412
|
+
* // => true
|
|
55413
|
+
*
|
|
55414
|
+
* _.isArray(document.body.children);
|
|
55415
|
+
* // => false
|
|
55416
|
+
*
|
|
55417
|
+
* _.isArray('abc');
|
|
55418
|
+
* // => false
|
|
55419
|
+
*
|
|
55420
|
+
* _.isArray(_.noop);
|
|
55421
|
+
* // => false
|
|
55422
|
+
*/
|
|
55423
|
+
var isArray = Array.isArray;
|
|
55424
|
+
|
|
55425
|
+
/**
|
|
55426
|
+
* Checks if `value` is array-like. A value is considered array-like if it's
|
|
55427
|
+
* not a function and has a `value.length` that's an integer greater than or
|
|
55428
|
+
* equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.
|
|
55429
|
+
*
|
|
55430
|
+
* @static
|
|
55431
|
+
* @memberOf _
|
|
55432
|
+
* @since 4.0.0
|
|
55433
|
+
* @category Lang
|
|
55434
|
+
* @param {*} value The value to check.
|
|
55435
|
+
* @returns {boolean} Returns `true` if `value` is array-like, else `false`.
|
|
55436
|
+
* @example
|
|
55437
|
+
*
|
|
55438
|
+
* _.isArrayLike([1, 2, 3]);
|
|
55439
|
+
* // => true
|
|
55440
|
+
*
|
|
55441
|
+
* _.isArrayLike(document.body.children);
|
|
55442
|
+
* // => true
|
|
55443
|
+
*
|
|
55444
|
+
* _.isArrayLike('abc');
|
|
55445
|
+
* // => true
|
|
55446
|
+
*
|
|
55447
|
+
* _.isArrayLike(_.noop);
|
|
55448
|
+
* // => false
|
|
55449
|
+
*/
|
|
55450
|
+
function isArrayLike(value) {
|
|
55451
|
+
return value != null && isLength(value.length) && !isFunction(value);
|
|
55452
|
+
}
|
|
55453
|
+
|
|
55454
|
+
/**
|
|
55455
|
+
* This method is like `_.isArrayLike` except that it also checks if `value`
|
|
55456
|
+
* is an object.
|
|
55457
|
+
*
|
|
55458
|
+
* @static
|
|
55459
|
+
* @memberOf _
|
|
55460
|
+
* @since 4.0.0
|
|
55461
|
+
* @category Lang
|
|
55462
|
+
* @param {*} value The value to check.
|
|
55463
|
+
* @returns {boolean} Returns `true` if `value` is an array-like object,
|
|
55464
|
+
* else `false`.
|
|
55465
|
+
* @example
|
|
55466
|
+
*
|
|
55467
|
+
* _.isArrayLikeObject([1, 2, 3]);
|
|
55468
|
+
* // => true
|
|
55469
|
+
*
|
|
55470
|
+
* _.isArrayLikeObject(document.body.children);
|
|
55471
|
+
* // => true
|
|
55472
|
+
*
|
|
55473
|
+
* _.isArrayLikeObject('abc');
|
|
55474
|
+
* // => false
|
|
55475
|
+
*
|
|
55476
|
+
* _.isArrayLikeObject(_.noop);
|
|
55477
|
+
* // => false
|
|
55478
|
+
*/
|
|
55479
|
+
function isArrayLikeObject(value) {
|
|
55480
|
+
return isObjectLike$1(value) && isArrayLike(value);
|
|
55481
|
+
}
|
|
55482
|
+
|
|
55483
|
+
/**
|
|
55484
|
+
* Checks if `value` is classified as a `Function` object.
|
|
55485
|
+
*
|
|
55486
|
+
* @static
|
|
55487
|
+
* @memberOf _
|
|
55488
|
+
* @since 0.1.0
|
|
55489
|
+
* @category Lang
|
|
55490
|
+
* @param {*} value The value to check.
|
|
55491
|
+
* @returns {boolean} Returns `true` if `value` is a function, else `false`.
|
|
55492
|
+
* @example
|
|
55493
|
+
*
|
|
55494
|
+
* _.isFunction(_);
|
|
55495
|
+
* // => true
|
|
55496
|
+
*
|
|
55497
|
+
* _.isFunction(/abc/);
|
|
55498
|
+
* // => false
|
|
55499
|
+
*/
|
|
55500
|
+
function isFunction(value) {
|
|
55501
|
+
// The use of `Object#toString` avoids issues with the `typeof` operator
|
|
55502
|
+
// in Safari 8-9 which returns 'object' for typed array and other constructors.
|
|
55503
|
+
var tag = isObject$1(value) ? objectToString.call(value) : '';
|
|
55504
|
+
return tag == funcTag || tag == genTag;
|
|
55505
|
+
}
|
|
55506
|
+
|
|
55507
|
+
/**
|
|
55508
|
+
* Checks if `value` is a valid array-like length.
|
|
55509
|
+
*
|
|
55510
|
+
* **Note:** This method is loosely based on
|
|
55511
|
+
* [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).
|
|
55512
|
+
*
|
|
55513
|
+
* @static
|
|
55514
|
+
* @memberOf _
|
|
55515
|
+
* @since 4.0.0
|
|
55516
|
+
* @category Lang
|
|
55517
|
+
* @param {*} value The value to check.
|
|
55518
|
+
* @returns {boolean} Returns `true` if `value` is a valid length, else `false`.
|
|
55519
|
+
* @example
|
|
55520
|
+
*
|
|
55521
|
+
* _.isLength(3);
|
|
55522
|
+
* // => true
|
|
55523
|
+
*
|
|
55524
|
+
* _.isLength(Number.MIN_VALUE);
|
|
55525
|
+
* // => false
|
|
55526
|
+
*
|
|
55527
|
+
* _.isLength(Infinity);
|
|
55528
|
+
* // => false
|
|
55529
|
+
*
|
|
55530
|
+
* _.isLength('3');
|
|
55531
|
+
* // => false
|
|
55532
|
+
*/
|
|
55533
|
+
function isLength(value) {
|
|
55534
|
+
return typeof value == 'number' &&
|
|
55535
|
+
value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER$2;
|
|
55536
|
+
}
|
|
55537
|
+
|
|
55538
|
+
/**
|
|
55539
|
+
* Checks if `value` is the
|
|
55540
|
+
* [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
|
|
55541
|
+
* of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
|
|
55542
|
+
*
|
|
55543
|
+
* @static
|
|
55544
|
+
* @memberOf _
|
|
55545
|
+
* @since 0.1.0
|
|
55546
|
+
* @category Lang
|
|
55547
|
+
* @param {*} value The value to check.
|
|
55548
|
+
* @returns {boolean} Returns `true` if `value` is an object, else `false`.
|
|
55549
|
+
* @example
|
|
55550
|
+
*
|
|
55551
|
+
* _.isObject({});
|
|
55552
|
+
* // => true
|
|
55553
|
+
*
|
|
55554
|
+
* _.isObject([1, 2, 3]);
|
|
55555
|
+
* // => true
|
|
55556
|
+
*
|
|
55557
|
+
* _.isObject(_.noop);
|
|
55558
|
+
* // => true
|
|
55559
|
+
*
|
|
55560
|
+
* _.isObject(null);
|
|
55561
|
+
* // => false
|
|
55562
|
+
*/
|
|
55563
|
+
function isObject$1(value) {
|
|
55564
|
+
var type = typeof value;
|
|
55565
|
+
return !!value && (type == 'object' || type == 'function');
|
|
55566
|
+
}
|
|
55567
|
+
|
|
55568
|
+
/**
|
|
55569
|
+
* Checks if `value` is object-like. A value is object-like if it's not `null`
|
|
55570
|
+
* and has a `typeof` result of "object".
|
|
55571
|
+
*
|
|
55572
|
+
* @static
|
|
55573
|
+
* @memberOf _
|
|
55574
|
+
* @since 4.0.0
|
|
55575
|
+
* @category Lang
|
|
55576
|
+
* @param {*} value The value to check.
|
|
55577
|
+
* @returns {boolean} Returns `true` if `value` is object-like, else `false`.
|
|
55578
|
+
* @example
|
|
55579
|
+
*
|
|
55580
|
+
* _.isObjectLike({});
|
|
55581
|
+
* // => true
|
|
55582
|
+
*
|
|
55583
|
+
* _.isObjectLike([1, 2, 3]);
|
|
55584
|
+
* // => true
|
|
55585
|
+
*
|
|
55586
|
+
* _.isObjectLike(_.noop);
|
|
55587
|
+
* // => false
|
|
55588
|
+
*
|
|
55589
|
+
* _.isObjectLike(null);
|
|
55590
|
+
* // => false
|
|
55591
|
+
*/
|
|
55592
|
+
function isObjectLike$1(value) {
|
|
55593
|
+
return !!value && typeof value == 'object';
|
|
55594
|
+
}
|
|
55595
|
+
|
|
55596
|
+
/**
|
|
55597
|
+
* This method is like `_.assignIn` except that it accepts `customizer`
|
|
55598
|
+
* which is invoked to produce the assigned values. If `customizer` returns
|
|
55599
|
+
* `undefined`, assignment is handled by the method instead. The `customizer`
|
|
55600
|
+
* is invoked with five arguments: (objValue, srcValue, key, object, source).
|
|
55601
|
+
*
|
|
55602
|
+
* **Note:** This method mutates `object`.
|
|
55603
|
+
*
|
|
55604
|
+
* @static
|
|
55605
|
+
* @memberOf _
|
|
55606
|
+
* @since 4.0.0
|
|
55607
|
+
* @alias extendWith
|
|
55608
|
+
* @category Object
|
|
55609
|
+
* @param {Object} object The destination object.
|
|
55610
|
+
* @param {...Object} sources The source objects.
|
|
55611
|
+
* @param {Function} [customizer] The function to customize assigned values.
|
|
55612
|
+
* @returns {Object} Returns `object`.
|
|
55613
|
+
* @see _.assignWith
|
|
55614
|
+
* @example
|
|
55615
|
+
*
|
|
55616
|
+
* function customizer(objValue, srcValue) {
|
|
55617
|
+
* return _.isUndefined(objValue) ? srcValue : objValue;
|
|
55618
|
+
* }
|
|
55619
|
+
*
|
|
55620
|
+
* var defaults = _.partialRight(_.assignInWith, customizer);
|
|
55621
|
+
*
|
|
55622
|
+
* defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });
|
|
55623
|
+
* // => { 'a': 1, 'b': 2 }
|
|
55624
|
+
*/
|
|
55625
|
+
var assignInWith = createAssigner(function(object, source, srcIndex, customizer) {
|
|
55626
|
+
copyObject(source, keysIn(source), object, customizer);
|
|
55627
|
+
});
|
|
55628
|
+
|
|
55629
|
+
/**
|
|
55630
|
+
* Assigns own and inherited enumerable string keyed properties of source
|
|
55631
|
+
* objects to the destination object for all destination properties that
|
|
55632
|
+
* resolve to `undefined`. Source objects are applied from left to right.
|
|
55633
|
+
* Once a property is set, additional values of the same property are ignored.
|
|
55634
|
+
*
|
|
55635
|
+
* **Note:** This method mutates `object`.
|
|
55636
|
+
*
|
|
55637
|
+
* @static
|
|
55638
|
+
* @since 0.1.0
|
|
55639
|
+
* @memberOf _
|
|
55640
|
+
* @category Object
|
|
55641
|
+
* @param {Object} object The destination object.
|
|
55642
|
+
* @param {...Object} [sources] The source objects.
|
|
55643
|
+
* @returns {Object} Returns `object`.
|
|
55644
|
+
* @see _.defaultsDeep
|
|
55645
|
+
* @example
|
|
55646
|
+
*
|
|
55647
|
+
* _.defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });
|
|
55648
|
+
* // => { 'a': 1, 'b': 2 }
|
|
55649
|
+
*/
|
|
55650
|
+
var defaults$1 = baseRest(function(args) {
|
|
55651
|
+
args.push(undefined, assignInDefaults);
|
|
55652
|
+
return apply(assignInWith, undefined, args);
|
|
55653
|
+
});
|
|
55654
|
+
|
|
55655
|
+
/**
|
|
55656
|
+
* Creates an array of the own and inherited enumerable property names of `object`.
|
|
55657
|
+
*
|
|
55658
|
+
* **Note:** Non-object values are coerced to objects.
|
|
55659
|
+
*
|
|
55660
|
+
* @static
|
|
55661
|
+
* @memberOf _
|
|
55662
|
+
* @since 3.0.0
|
|
55663
|
+
* @category Object
|
|
55664
|
+
* @param {Object} object The object to query.
|
|
55665
|
+
* @returns {Array} Returns the array of property names.
|
|
55666
|
+
* @example
|
|
55667
|
+
*
|
|
55668
|
+
* function Foo() {
|
|
55669
|
+
* this.a = 1;
|
|
55670
|
+
* this.b = 2;
|
|
55671
|
+
* }
|
|
55672
|
+
*
|
|
55673
|
+
* Foo.prototype.c = 3;
|
|
55674
|
+
*
|
|
55675
|
+
* _.keysIn(new Foo);
|
|
55676
|
+
* // => ['a', 'b', 'c'] (iteration order is not guaranteed)
|
|
55677
|
+
*/
|
|
55678
|
+
function keysIn(object) {
|
|
55679
|
+
return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);
|
|
55680
|
+
}
|
|
55681
|
+
|
|
55682
|
+
var lodash_defaults = defaults$1;
|
|
55683
|
+
|
|
55684
|
+
(function (module, exports) {
|
|
55685
|
+
Object.defineProperty(exports, "__esModule", {
|
|
55686
|
+
value: true
|
|
55687
|
+
});
|
|
55688
|
+
exports["default"] = void 0;
|
|
55689
|
+
|
|
55690
|
+
var _randomSeed = _interopRequireDefault(randomSeed);
|
|
55691
|
+
|
|
55692
|
+
var _lodash = _interopRequireDefault(lodash_defaults);
|
|
55693
|
+
|
|
55694
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
55695
|
+
|
|
55696
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
55697
|
+
|
|
55698
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
55699
|
+
|
|
55700
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
55701
|
+
|
|
55702
|
+
/**
|
|
55703
|
+
* Adjectives used by haikunator
|
|
55704
|
+
*/
|
|
55705
|
+
var defaultAdjectives = ['aged', 'ancient', 'autumn', 'billowing', 'bitter', 'black', 'blue', 'bold', 'broad', 'broken', 'calm', 'cold', 'cool', 'crimson', 'curly', 'damp', 'dark', 'dawn', 'delicate', 'divine', 'dry', 'empty', 'falling', 'fancy', 'flat', 'floral', 'fragrant', 'frosty', 'gentle', 'green', 'hidden', 'holy', 'icy', 'jolly', 'late', 'lingering', 'little', 'lively', 'long', 'lucky', 'misty', 'morning', 'muddy', 'mute', 'nameless', 'noisy', 'odd', 'old', 'orange', 'patient', 'plain', 'polished', 'proud', 'purple', 'quiet', 'rapid', 'raspy', 'red', 'restless', 'rough', 'round', 'royal', 'shiny', 'shrill', 'shy', 'silent', 'small', 'snowy', 'soft', 'solitary', 'sparkling', 'spring', 'square', 'steep', 'still', 'summer', 'super', 'sweet', 'throbbing', 'tight', 'tiny', 'twilight', 'wandering', 'weathered', 'white', 'wild', 'winter', 'wispy', 'withered', 'yellow', 'young'];
|
|
55706
|
+
/**
|
|
55707
|
+
* Nouns used by haikunator
|
|
55708
|
+
*/
|
|
55709
|
+
|
|
55710
|
+
var defaultNouns = ['art', 'band', 'bar', 'base', 'bird', 'block', 'boat', 'bonus', 'bread', 'breeze', 'brook', 'bush', 'butterfly', 'cake', 'cell', 'cherry', 'cloud', 'credit', 'darkness', 'dawn', 'dew', 'disk', 'dream', 'dust', 'feather', 'field', 'fire', 'firefly', 'flower', 'fog', 'forest', 'frog', 'frost', 'glade', 'glitter', 'grass', 'hall', 'hat', 'haze', 'heart', 'hill', 'king', 'lab', 'lake', 'leaf', 'limit', 'math', 'meadow', 'mode', 'moon', 'morning', 'mountain', 'mouse', 'mud', 'night', 'paper', 'pine', 'poetry', 'pond', 'queen', 'rain', 'recipe', 'resonance', 'rice', 'river', 'salad', 'scene', 'sea', 'shadow', 'shape', 'silence', 'sky', 'smoke', 'snow', 'snowflake', 'sound', 'star', 'sun', 'sun', 'sunset', 'surf', 'term', 'thunder', 'tooth', 'tree', 'truth', 'union', 'unit', 'violet', 'voice', 'water', 'waterfall', 'wave', 'wildflower', 'wind', 'wood'];
|
|
55711
|
+
|
|
55712
|
+
/**
|
|
55713
|
+
* Default options used by haikunate method
|
|
55714
|
+
*/
|
|
55715
|
+
var defaultOptions = {
|
|
55716
|
+
delimiter: '-',
|
|
55717
|
+
tokenLength: 4,
|
|
55718
|
+
tokenHex: false,
|
|
55719
|
+
tokenChars: '0123456789'
|
|
55720
|
+
};
|
|
55721
|
+
|
|
55722
|
+
var Haikunator =
|
|
55723
|
+
/*#__PURE__*/
|
|
55724
|
+
function () {
|
|
55725
|
+
/**
|
|
55726
|
+
* Initialize new haikunator
|
|
55727
|
+
*/
|
|
55728
|
+
function Haikunator() {
|
|
55729
|
+
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
55730
|
+
|
|
55731
|
+
_classCallCheck(this, Haikunator);
|
|
55732
|
+
|
|
55733
|
+
this.adjectives = options.adjectives || defaultAdjectives;
|
|
55734
|
+
this.nouns = options.nouns || defaultNouns;
|
|
55735
|
+
this.random = _randomSeed["default"].create(options.seed);
|
|
55736
|
+
this.config = (0, _lodash["default"])(options.defaults, defaultOptions);
|
|
54803
55737
|
}
|
|
54804
|
-
|
|
55738
|
+
/**
|
|
55739
|
+
* Generate heroku-like random names
|
|
55740
|
+
*/
|
|
55741
|
+
|
|
55742
|
+
|
|
55743
|
+
_createClass(Haikunator, [{
|
|
55744
|
+
key: "haikunate",
|
|
55745
|
+
value: function haikunate(options) {
|
|
55746
|
+
// set specified options
|
|
55747
|
+
var config = (0, _lodash["default"])(options, this.config); // set tokenChars if tokenHex is set
|
|
55748
|
+
|
|
55749
|
+
if (config.tokenHex === true) {
|
|
55750
|
+
config.tokenChars = '0123456789abcdef';
|
|
55751
|
+
} // pick adjective and noun
|
|
55752
|
+
|
|
55753
|
+
|
|
55754
|
+
var adjective = this._randomElement(this.adjectives);
|
|
55755
|
+
|
|
55756
|
+
var noun = this._randomElement(this.nouns); // create random token
|
|
55757
|
+
|
|
55758
|
+
|
|
55759
|
+
if (!config.tokenLength) config.tokenLength = 0;
|
|
55760
|
+
var token = '';
|
|
55761
|
+
|
|
55762
|
+
for (var i = 0; i < config.tokenLength; i++) {
|
|
55763
|
+
token += this._randomElement(config.tokenChars);
|
|
55764
|
+
} // create result and return
|
|
55765
|
+
|
|
55766
|
+
|
|
55767
|
+
var sections = [adjective, noun, token];
|
|
55768
|
+
return sections.filter(function (e) {
|
|
55769
|
+
return !!e;
|
|
55770
|
+
}).join(config.delimiter);
|
|
55771
|
+
}
|
|
55772
|
+
/**
|
|
55773
|
+
* Get a random element from an array/string
|
|
55774
|
+
* @param {(string|Array)} array
|
|
55775
|
+
* @returns {*}
|
|
55776
|
+
* @private
|
|
55777
|
+
*/
|
|
55778
|
+
|
|
55779
|
+
}, {
|
|
55780
|
+
key: "_randomElement",
|
|
55781
|
+
value: function _randomElement(array) {
|
|
55782
|
+
if (!array) return undefined;
|
|
55783
|
+
return array[this.random(array.length)];
|
|
55784
|
+
}
|
|
55785
|
+
}]);
|
|
55786
|
+
|
|
55787
|
+
return Haikunator;
|
|
55788
|
+
}();
|
|
55789
|
+
|
|
55790
|
+
exports["default"] = Haikunator;
|
|
55791
|
+
module.exports = exports.default;
|
|
55792
|
+
|
|
55793
|
+
}(distWeb, distWeb.exports));
|
|
55794
|
+
|
|
55795
|
+
var Haikunator = /*@__PURE__*/getDefaultExportFromCjs(distWeb.exports);
|
|
55796
|
+
|
|
55797
|
+
const haikunator = new Haikunator();
|
|
55798
|
+
function generate(suffix) {
|
|
55799
|
+
const generated = haikunator.haikunate();
|
|
55800
|
+
const [adjective, noun, token] = generated.split("-");
|
|
55801
|
+
return [adjective, noun, suffix, token].join("-");
|
|
54805
55802
|
}
|
|
54806
55803
|
|
|
54807
|
-
var
|
|
55804
|
+
var haiku = /*#__PURE__*/Object.freeze({
|
|
54808
55805
|
__proto__: null,
|
|
54809
|
-
|
|
54810
|
-
PackageJsonNotFoundError: PackageJsonNotFoundError,
|
|
54811
|
-
dependencyManagerUsedForCreating: dependencyManagerUsedForCreating,
|
|
54812
|
-
installNPMDependenciesRecursively: installNPMDependenciesRecursively,
|
|
54813
|
-
install: install,
|
|
54814
|
-
getPackageName: getPackageName,
|
|
54815
|
-
getDependencies: getDependencies,
|
|
54816
|
-
addNPMDependenciesIfNeeded: addNPMDependenciesIfNeeded
|
|
55806
|
+
generate: generate
|
|
54817
55807
|
});
|
|
54818
55808
|
|
|
54819
55809
|
var packageJson$2 = {exports: {}};
|
|
@@ -57476,6 +58466,7 @@ const compressBrotli = src$2.exports;
|
|
|
57476
58466
|
const loadStore = options => {
|
|
57477
58467
|
const adapters = {
|
|
57478
58468
|
redis: '@keyv/redis',
|
|
58469
|
+
rediss: '@keyv/redis',
|
|
57479
58470
|
mongodb: '@keyv/mongo',
|
|
57480
58471
|
mongo: '@keyv/mongo',
|
|
57481
58472
|
sqlite: '@keyv/sqlite',
|
|
@@ -57483,9 +58474,11 @@ const loadStore = options => {
|
|
|
57483
58474
|
postgres: '@keyv/postgres',
|
|
57484
58475
|
mysql: '@keyv/mysql',
|
|
57485
58476
|
etcd: '@keyv/etcd',
|
|
58477
|
+
offline: '@keyv/offline',
|
|
58478
|
+
tiered: '@keyv/tiered',
|
|
57486
58479
|
};
|
|
57487
58480
|
if (options.adapter || options.uri) {
|
|
57488
|
-
const adapter = options.adapter || /^[
|
|
58481
|
+
const adapter = options.adapter || /^[^:+]*/.exec(options.uri)[0];
|
|
57489
58482
|
return new (commonjsRequire(adapters[adapter]))(options);
|
|
57490
58483
|
}
|
|
57491
58484
|
|
|
@@ -57498,10 +58491,11 @@ const iterableAdapters = [
|
|
|
57498
58491
|
'mysql',
|
|
57499
58492
|
'mongo',
|
|
57500
58493
|
'redis',
|
|
58494
|
+
'tiered',
|
|
57501
58495
|
];
|
|
57502
58496
|
|
|
57503
58497
|
class Keyv$1 extends EventEmitter$2 {
|
|
57504
|
-
constructor(uri, options) {
|
|
58498
|
+
constructor(uri, {emitErrors = true, ...options} = {}) {
|
|
57505
58499
|
super();
|
|
57506
58500
|
this.opts = {
|
|
57507
58501
|
namespace: 'keyv',
|
|
@@ -57525,30 +58519,29 @@ class Keyv$1 extends EventEmitter$2 {
|
|
|
57525
58519
|
};
|
|
57526
58520
|
}
|
|
57527
58521
|
|
|
57528
|
-
if (typeof this.opts.store.on === 'function') {
|
|
58522
|
+
if (typeof this.opts.store.on === 'function' && emitErrors) {
|
|
57529
58523
|
this.opts.store.on('error', error => this.emit('error', error));
|
|
57530
58524
|
}
|
|
57531
58525
|
|
|
57532
58526
|
this.opts.store.namespace = this.opts.namespace;
|
|
57533
58527
|
|
|
57534
|
-
const generateIterator = iterator =>
|
|
57535
|
-
|
|
57536
|
-
|
|
57537
|
-
|
|
57538
|
-
|
|
57539
|
-
|
|
57540
|
-
|
|
57541
|
-
|
|
57542
|
-
}
|
|
57543
|
-
|
|
57544
|
-
if (typeof data.expires === 'number' && Date.now() > data.expires) {
|
|
57545
|
-
this.delete(key);
|
|
57546
|
-
continue;
|
|
57547
|
-
}
|
|
58528
|
+
const generateIterator = iterator => async function * () {
|
|
58529
|
+
for await (const [key, raw] of typeof iterator === 'function'
|
|
58530
|
+
? iterator(this.opts.store.namespace)
|
|
58531
|
+
: iterator) {
|
|
58532
|
+
const data = this.opts.deserialize(raw);
|
|
58533
|
+
if (this.opts.store.namespace && !key.includes(this.opts.store.namespace)) {
|
|
58534
|
+
continue;
|
|
58535
|
+
}
|
|
57548
58536
|
|
|
57549
|
-
|
|
58537
|
+
if (typeof data.expires === 'number' && Date.now() > data.expires) {
|
|
58538
|
+
this.delete(key);
|
|
58539
|
+
continue;
|
|
57550
58540
|
}
|
|
57551
|
-
|
|
58541
|
+
|
|
58542
|
+
yield [this._getKeyUnprefix(key), data.value];
|
|
58543
|
+
}
|
|
58544
|
+
};
|
|
57552
58545
|
|
|
57553
58546
|
// Attach iterators
|
|
57554
58547
|
if (typeof this.opts.store[Symbol.iterator] === 'function' && this.opts.store instanceof Map) {
|
|
@@ -57573,12 +58566,10 @@ class Keyv$1 extends EventEmitter$2 {
|
|
|
57573
58566
|
}
|
|
57574
58567
|
|
|
57575
58568
|
_getKeyUnprefix(key) {
|
|
57576
|
-
return
|
|
57577
|
-
|
|
57578
|
-
|
|
57579
|
-
|
|
57580
|
-
.join(':')
|
|
57581
|
-
: key;
|
|
58569
|
+
return key
|
|
58570
|
+
.split(':')
|
|
58571
|
+
.splice(1)
|
|
58572
|
+
.join(':');
|
|
57582
58573
|
}
|
|
57583
58574
|
|
|
57584
58575
|
get(key, options) {
|
|
@@ -57620,13 +58611,13 @@ class Keyv$1 extends EventEmitter$2 {
|
|
|
57620
58611
|
.then(() => isArray ? store.getMany(keyPrefixed) : store.get(keyPrefixed))
|
|
57621
58612
|
.then(data => (typeof data === 'string') ? this.opts.deserialize(data) : data)
|
|
57622
58613
|
.then(data => {
|
|
57623
|
-
// Console.log('get', data);
|
|
57624
58614
|
if (data === undefined || data === null) {
|
|
57625
58615
|
return undefined;
|
|
57626
58616
|
}
|
|
57627
58617
|
|
|
57628
58618
|
if (isArray) {
|
|
57629
58619
|
const result = [];
|
|
58620
|
+
|
|
57630
58621
|
if (data.length === 0) {
|
|
57631
58622
|
return [];
|
|
57632
58623
|
}
|
|
@@ -57728,6 +58719,13 @@ class Keyv$1 extends EventEmitter$2 {
|
|
|
57728
58719
|
return value !== undefined;
|
|
57729
58720
|
});
|
|
57730
58721
|
}
|
|
58722
|
+
|
|
58723
|
+
disconnect() {
|
|
58724
|
+
const {store} = this.opts;
|
|
58725
|
+
if (typeof store.disconnect === 'function') {
|
|
58726
|
+
return store.disconnect();
|
|
58727
|
+
}
|
|
58728
|
+
}
|
|
57731
58729
|
}
|
|
57732
58730
|
|
|
57733
58731
|
var src$1 = Keyv$1;
|
|
@@ -61113,6 +62111,14 @@ class Request extends stream_1.Duplex {
|
|
|
61113
62111
|
const redirectUrl = new url_1.URL(redirectBuffer, url);
|
|
61114
62112
|
const redirectString = redirectUrl.toString();
|
|
61115
62113
|
decodeURI(redirectString);
|
|
62114
|
+
// eslint-disable-next-line no-inner-declarations
|
|
62115
|
+
function isUnixSocketURL(url) {
|
|
62116
|
+
return url.protocol === 'unix:' || url.hostname === 'unix';
|
|
62117
|
+
}
|
|
62118
|
+
if (!isUnixSocketURL(url) && isUnixSocketURL(redirectUrl)) {
|
|
62119
|
+
this._beforeError(new RequestError('Cannot redirect to UNIX socket', {}, this));
|
|
62120
|
+
return;
|
|
62121
|
+
}
|
|
61116
62122
|
// Redirecting to a different site, clear sensitive data.
|
|
61117
62123
|
if (redirectUrl.hostname !== url.hostname || redirectUrl.port !== url.port) {
|
|
61118
62124
|
if ('host' in options.headers) {
|
|
@@ -61930,11 +62936,11 @@ function asPromise(normalizedOptions) {
|
|
|
61930
62936
|
request._beforeError(new types_1.RequestError(error.message, error, request));
|
|
61931
62937
|
return;
|
|
61932
62938
|
}
|
|
62939
|
+
globalResponse = response;
|
|
61933
62940
|
if (!is_response_ok_1.isResponseOk(response)) {
|
|
61934
62941
|
request._beforeError(new types_1.HTTPError(response));
|
|
61935
62942
|
return;
|
|
61936
62943
|
}
|
|
61937
|
-
globalResponse = response;
|
|
61938
62944
|
resolve(request.options.resolveBodyOnly ? response.body : response);
|
|
61939
62945
|
});
|
|
61940
62946
|
const onError = (error) => {
|
|
@@ -66358,11 +67364,178 @@ async function latestNpmPackageVersion(name) {
|
|
|
66358
67364
|
return latestVersion(name);
|
|
66359
67365
|
}
|
|
66360
67366
|
|
|
66361
|
-
var version = /*#__PURE__*/Object.freeze({
|
|
67367
|
+
var version$1 = /*#__PURE__*/Object.freeze({
|
|
66362
67368
|
__proto__: null,
|
|
66363
67369
|
latestNpmPackageVersion: latestNpmPackageVersion
|
|
66364
67370
|
});
|
|
66365
67371
|
|
|
67372
|
+
var semver = /*#__PURE__*/Object.freeze({
|
|
67373
|
+
__proto__: null,
|
|
67374
|
+
Version: semver$3,
|
|
67375
|
+
coerce: coerce_1
|
|
67376
|
+
});
|
|
67377
|
+
|
|
67378
|
+
const dependencyManager = ["yarn", "npm", "pnpm"];
|
|
67379
|
+
const PackageJsonNotFoundError = (directory) => {
|
|
67380
|
+
return new Abort(`The directory ${directory} doesn't have a package.json.`);
|
|
67381
|
+
};
|
|
67382
|
+
function dependencyManagerUsedForCreating(env = process.env) {
|
|
67383
|
+
if (env.npm_config_user_agent?.includes("yarn")) {
|
|
67384
|
+
return "yarn";
|
|
67385
|
+
} else if (env.npm_config_user_agent?.includes("pnpm")) {
|
|
67386
|
+
return "pnpm";
|
|
67387
|
+
} else {
|
|
67388
|
+
return "npm";
|
|
67389
|
+
}
|
|
67390
|
+
}
|
|
67391
|
+
async function installNPMDependenciesRecursively(options) {
|
|
67392
|
+
const packageJsons = await out(join$3(options.directory, "**/package.json"), {
|
|
67393
|
+
ignore: [join$3(options.directory, "node_modules/**/package.json")],
|
|
67394
|
+
cwd: options.directory,
|
|
67395
|
+
onlyFiles: true,
|
|
67396
|
+
deep: options.deep
|
|
67397
|
+
});
|
|
67398
|
+
const abortController = new AbortController$1();
|
|
67399
|
+
try {
|
|
67400
|
+
await Promise.all(packageJsons.map(async (packageJsonPath) => {
|
|
67401
|
+
const directory = dirname$1(packageJsonPath);
|
|
67402
|
+
await install(directory, options.dependencyManager, void 0, void 0, abortController.signal);
|
|
67403
|
+
}));
|
|
67404
|
+
} catch (error) {
|
|
67405
|
+
abortController.abort();
|
|
67406
|
+
throw error;
|
|
67407
|
+
}
|
|
67408
|
+
}
|
|
67409
|
+
async function install(directory, dependencyManager2, stdout, stderr, signal) {
|
|
67410
|
+
const options = { cwd: directory, stdout, stderr, signal };
|
|
67411
|
+
await exec$2(dependencyManager2, ["install"], options);
|
|
67412
|
+
}
|
|
67413
|
+
async function getPackageName(packageJsonPath) {
|
|
67414
|
+
const packageJsonContent = await packageJSONContents(packageJsonPath);
|
|
67415
|
+
return packageJsonContent.name;
|
|
67416
|
+
}
|
|
67417
|
+
async function getDependencies(packageJsonPath) {
|
|
67418
|
+
const packageJsonContent = await packageJSONContents(packageJsonPath);
|
|
67419
|
+
const dependencies = packageJsonContent.dependencies ?? {};
|
|
67420
|
+
const devDependencies = packageJsonContent.devDependencies ?? {};
|
|
67421
|
+
return { ...dependencies, ...devDependencies };
|
|
67422
|
+
}
|
|
67423
|
+
async function checkForNewVersion(dependency, currentVersion) {
|
|
67424
|
+
try {
|
|
67425
|
+
const lastVersion = await latestNpmPackageVersion(dependency);
|
|
67426
|
+
if (lastVersion && new semver$3(currentVersion).compare(lastVersion) < 0) {
|
|
67427
|
+
return lastVersion;
|
|
67428
|
+
} else {
|
|
67429
|
+
return void 0;
|
|
67430
|
+
}
|
|
67431
|
+
} catch (error) {
|
|
67432
|
+
return void 0;
|
|
67433
|
+
}
|
|
67434
|
+
}
|
|
67435
|
+
function getOutputUpdateCLIReminder(dependencyManager2, packages) {
|
|
67436
|
+
const updateCommand = dependencyManager2 === "yarn" ? "upgrade" : "update";
|
|
67437
|
+
return content`To update to the latest version of the Shopify CLI, run ${token.genericShellCommand(`${dependencyManager2} ${updateCommand}${packages === void 0 ? "" : ` ${packages.join(", ")}`}`)}`.value;
|
|
67438
|
+
}
|
|
67439
|
+
async function packageJSONContents(packageJsonPath) {
|
|
67440
|
+
if (!await exists$1(packageJsonPath)) {
|
|
67441
|
+
throw PackageJsonNotFoundError(dirname$1(packageJsonPath));
|
|
67442
|
+
}
|
|
67443
|
+
return JSON.parse(await read$1(packageJsonPath));
|
|
67444
|
+
}
|
|
67445
|
+
async function addNPMDependenciesIfNeeded(dependencies, options) {
|
|
67446
|
+
const packageJsonPath = join$3(options.directory, "package.json");
|
|
67447
|
+
if (!await exists$1(packageJsonPath)) {
|
|
67448
|
+
throw PackageJsonNotFoundError(options.directory);
|
|
67449
|
+
}
|
|
67450
|
+
const existingDependencies = Object.keys(await getDependencies(packageJsonPath));
|
|
67451
|
+
const dependenciesToAdd = dependencies.filter((dep) => {
|
|
67452
|
+
return !existingDependencies.includes(dep);
|
|
67453
|
+
});
|
|
67454
|
+
if (dependenciesToAdd.length === 0) {
|
|
67455
|
+
return;
|
|
67456
|
+
}
|
|
67457
|
+
let args;
|
|
67458
|
+
switch (options.dependencyManager) {
|
|
67459
|
+
case "npm":
|
|
67460
|
+
args = argumentsToAddDependenciesWithNPM(dependenciesToAdd, options.type);
|
|
67461
|
+
break;
|
|
67462
|
+
case "yarn":
|
|
67463
|
+
args = argumentsToAddDependenciesWithYarn(dependenciesToAdd, options.type);
|
|
67464
|
+
break;
|
|
67465
|
+
case "pnpm":
|
|
67466
|
+
args = argumentsToAddDependenciesWithPNPM(dependenciesToAdd, options.type);
|
|
67467
|
+
break;
|
|
67468
|
+
}
|
|
67469
|
+
await exec$2(options.dependencyManager, args, {
|
|
67470
|
+
cwd: options.directory,
|
|
67471
|
+
stdout: options.stdout,
|
|
67472
|
+
stderr: options.stderr,
|
|
67473
|
+
signal: options.signal
|
|
67474
|
+
});
|
|
67475
|
+
}
|
|
67476
|
+
function argumentsToAddDependenciesWithNPM(dependencies, type) {
|
|
67477
|
+
let command = ["install"];
|
|
67478
|
+
command = command.concat(dependencies);
|
|
67479
|
+
switch (type) {
|
|
67480
|
+
case "dev":
|
|
67481
|
+
command.push("--save-dev");
|
|
67482
|
+
break;
|
|
67483
|
+
case "peer":
|
|
67484
|
+
command.push("--save-peer");
|
|
67485
|
+
break;
|
|
67486
|
+
case "prod":
|
|
67487
|
+
command.push("--save-prod");
|
|
67488
|
+
break;
|
|
67489
|
+
}
|
|
67490
|
+
return command;
|
|
67491
|
+
}
|
|
67492
|
+
function argumentsToAddDependenciesWithYarn(dependencies, type) {
|
|
67493
|
+
let command = ["add"];
|
|
67494
|
+
command = command.concat(dependencies);
|
|
67495
|
+
switch (type) {
|
|
67496
|
+
case "dev":
|
|
67497
|
+
command.push("--dev");
|
|
67498
|
+
break;
|
|
67499
|
+
case "peer":
|
|
67500
|
+
command.push("--peer");
|
|
67501
|
+
break;
|
|
67502
|
+
case "prod":
|
|
67503
|
+
command.push("--prod");
|
|
67504
|
+
break;
|
|
67505
|
+
}
|
|
67506
|
+
return command;
|
|
67507
|
+
}
|
|
67508
|
+
function argumentsToAddDependenciesWithPNPM(dependencies, type) {
|
|
67509
|
+
let command = ["add"];
|
|
67510
|
+
command = command.concat(dependencies);
|
|
67511
|
+
switch (type) {
|
|
67512
|
+
case "dev":
|
|
67513
|
+
command.push("--save-dev");
|
|
67514
|
+
break;
|
|
67515
|
+
case "peer":
|
|
67516
|
+
command.push("--save-peer");
|
|
67517
|
+
break;
|
|
67518
|
+
case "prod":
|
|
67519
|
+
command.push("--save-prod");
|
|
67520
|
+
break;
|
|
67521
|
+
}
|
|
67522
|
+
return command;
|
|
67523
|
+
}
|
|
67524
|
+
|
|
67525
|
+
var dependency = /*#__PURE__*/Object.freeze({
|
|
67526
|
+
__proto__: null,
|
|
67527
|
+
dependencyManager: dependencyManager,
|
|
67528
|
+
PackageJsonNotFoundError: PackageJsonNotFoundError,
|
|
67529
|
+
dependencyManagerUsedForCreating: dependencyManagerUsedForCreating,
|
|
67530
|
+
installNPMDependenciesRecursively: installNPMDependenciesRecursively,
|
|
67531
|
+
install: install,
|
|
67532
|
+
getPackageName: getPackageName,
|
|
67533
|
+
getDependencies: getDependencies,
|
|
67534
|
+
checkForNewVersion: checkForNewVersion,
|
|
67535
|
+
getOutputUpdateCLIReminder: getOutputUpdateCLIReminder,
|
|
67536
|
+
addNPMDependenciesIfNeeded: addNPMDependenciesIfNeeded
|
|
67537
|
+
});
|
|
67538
|
+
|
|
66366
67539
|
const getEnvironmentVariable = () => {
|
|
66367
67540
|
const { env } = process;
|
|
66368
67541
|
return env.SUDO_USER || env.C9_USER || env.LOGNAME || env.USER || env.LNAME || env.USERNAME;
|
|
@@ -84341,7 +85514,7 @@ var mimicFn_1 = mimicFn$1;
|
|
|
84341
85514
|
|
|
84342
85515
|
const mimicFn = mimicFn_1;
|
|
84343
85516
|
|
|
84344
|
-
var debounceFn = (inputFunction, options) => {
|
|
85517
|
+
var debounceFn = (inputFunction, options = {}) => {
|
|
84345
85518
|
if (typeof inputFunction !== 'function') {
|
|
84346
85519
|
throw new TypeError(`Expected the first argument to be a function, got \`${typeof inputFunction}\``);
|
|
84347
85520
|
}
|
|
@@ -162947,6 +164120,7 @@ var combiningMarksRegex = /[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\
|
|
|
162947
164120
|
function validateLabel(label, processing_option) {
|
|
162948
164121
|
if (label.substr(0, 4) === "xn--") {
|
|
162949
164122
|
label = punycode.toUnicode(label);
|
|
164123
|
+
PROCESSING_OPTIONS.NONTRANSITIONAL;
|
|
162950
164124
|
}
|
|
162951
164125
|
|
|
162952
164126
|
var error = false;
|
|
@@ -170692,7 +171866,7 @@ const printDocASTReducer = {
|
|
|
170692
171866
|
* print all items together separated by separator if provided
|
|
170693
171867
|
*/
|
|
170694
171868
|
|
|
170695
|
-
function join(maybeArray, separator) {
|
|
171869
|
+
function join(maybeArray, separator = '') {
|
|
170696
171870
|
var _maybeArray$filter$jo;
|
|
170697
171871
|
|
|
170698
171872
|
return (_maybeArray$filter$jo =
|
|
@@ -172147,7 +173321,7 @@ function makeRequest(_a) {
|
|
|
172147
173321
|
successfullyPassedErrorPolicy = !result.errors || fetchOptions.errorPolicy === 'all' || fetchOptions.errorPolicy === 'ignore';
|
|
172148
173322
|
if (response.ok && successfullyPassedErrorPolicy && successfullyReceivedData) {
|
|
172149
173323
|
headers_1 = response.headers, status_1 = response.status;
|
|
172150
|
-
rest = __rest(result, ["errors"]);
|
|
173324
|
+
result.errors, rest = __rest(result, ["errors"]);
|
|
172151
173325
|
data = fetchOptions.errorPolicy === 'ignore' ? rest : result;
|
|
172152
173326
|
return [2 /*return*/, __assign(__assign({}, (isBathchingQuery ? { data: data } : data)), { headers: headers_1, status: status_1 })];
|
|
172153
173327
|
}
|
|
@@ -172284,10 +173458,12 @@ Object.defineProperty(exports, "GraphQLWebSocketClient", { enumerable: true, get
|
|
|
172284
173458
|
|
|
172285
173459
|
}(dist$1));
|
|
172286
173460
|
|
|
172287
|
-
const UnauthorizedAccessError = () => {
|
|
172288
|
-
|
|
172289
|
-
|
|
172290
|
-
|
|
173461
|
+
const UnauthorizedAccessError = (store) => {
|
|
173462
|
+
const adminLink = token.link(`URL`, `https://${store}/admin`);
|
|
173463
|
+
const storeName = store.replace(".myshopify.com", "");
|
|
173464
|
+
return new Abort(content`Looks like you need access to this dev store (${token.link(storeName, `https://${store}`)})`, content`• Log in to the store directly from this ${adminLink}. If you're the store owner, then that direct log in should solve your access issue.
|
|
173465
|
+
• If you're not the owner, create a dev store staff account for yourself. Then log in directly from the link above.
|
|
173466
|
+
`);
|
|
172291
173467
|
};
|
|
172292
173468
|
const UnknownError = () => {
|
|
172293
173469
|
return new Bug(`Unknown error connecting to your store`);
|
|
@@ -172311,12 +173487,12 @@ ${sanitizedHeadersOutput(headers)}
|
|
|
172311
173487
|
return response;
|
|
172312
173488
|
} catch (error) {
|
|
172313
173489
|
if (error instanceof dist$1.ClientError) {
|
|
172314
|
-
const errorMessage = `
|
|
172315
|
-
The Admin GraphQL API responded unsuccessfully with the HTTP status ${error.response.status} and errors:
|
|
173490
|
+
const errorMessage = content`
|
|
173491
|
+
The Admin GraphQL API responded unsuccessfully with the HTTP status ${`${error.response.status}`} and errors:
|
|
172316
173492
|
|
|
172317
|
-
${
|
|
173493
|
+
${token.json(error.response.errors)}
|
|
172318
173494
|
`;
|
|
172319
|
-
const abortError = new Abort(errorMessage);
|
|
173495
|
+
const abortError = new Abort(errorMessage.value);
|
|
172320
173496
|
abortError.stack = error.stack;
|
|
172321
173497
|
throw abortError;
|
|
172322
173498
|
} else {
|
|
@@ -172333,7 +173509,7 @@ Sending Admin GraphQL request to URL ${url} with query:
|
|
|
172333
173509
|
${query}
|
|
172334
173510
|
`);
|
|
172335
173511
|
const data = await dist$1.request(url, query, {}, headers).catch((err) => {
|
|
172336
|
-
throw err.response.status === 403 ? UnauthorizedAccessError() : UnknownError();
|
|
173512
|
+
throw err.response.status === 403 ? UnauthorizedAccessError(session.storeFqdn) : UnknownError();
|
|
172337
173513
|
});
|
|
172338
173514
|
return data.publicApiVersions.filter((item) => item.supported).map((item) => item.handle).sort().reverse()[0];
|
|
172339
173515
|
}
|
|
@@ -172488,8 +173664,8 @@ const GenerateSignedUploadUrl = dist$1.gql`
|
|
|
172488
173664
|
`;
|
|
172489
173665
|
|
|
172490
173666
|
const CreateDeployment = dist$1.gql`
|
|
172491
|
-
mutation CreateDeployment($apiKey: String!, $uuid: String!, $bundleUrl: String!) {
|
|
172492
|
-
deploymentCreate(input: {apiKey: $apiKey, uuid: $uuid, bundleUrl: $bundleUrl}) {
|
|
173667
|
+
mutation CreateDeployment($apiKey: String!, $uuid: String!, $bundleUrl: String!, $extensions: [ExtensionSettings!]) {
|
|
173668
|
+
deploymentCreate(input: {apiKey: $apiKey, uuid: $uuid, bundleUrl: $bundleUrl, extensions: $extensions}) {
|
|
172493
173669
|
deployment {
|
|
172494
173670
|
uuid
|
|
172495
173671
|
}
|
|
@@ -172707,10 +173883,10 @@ var index = /*#__PURE__*/Object.freeze({
|
|
|
172707
173883
|
AppFunctionSetMutation: AppFunctionSetMutation
|
|
172708
173884
|
});
|
|
172709
173885
|
|
|
172710
|
-
async function request(query, token, variables) {
|
|
173886
|
+
async function request(query, token$1, variables) {
|
|
172711
173887
|
const fqdn = await partners$1();
|
|
172712
173888
|
const url = `https://${fqdn}/api/cli/graphql`;
|
|
172713
|
-
const headers = await buildHeaders(token);
|
|
173889
|
+
const headers = await buildHeaders(token$1);
|
|
172714
173890
|
debug$5(`
|
|
172715
173891
|
Sending Partners GraphQL request:
|
|
172716
173892
|
${query}
|
|
@@ -172726,10 +173902,10 @@ ${sanitizedHeadersOutput(headers)}
|
|
|
172726
173902
|
return response;
|
|
172727
173903
|
} catch (error) {
|
|
172728
173904
|
if (error instanceof dist$1.ClientError) {
|
|
172729
|
-
const errorMessage = `
|
|
172730
|
-
The Partners GraphQL API responded unsuccessfully with the HTTP status ${error.response.status} and errors:
|
|
173905
|
+
const errorMessage = content`
|
|
173906
|
+
The Partners GraphQL API responded unsuccessfully with the HTTP status ${`${error.response.status}`} and errors:
|
|
172731
173907
|
|
|
172732
|
-
${
|
|
173908
|
+
${token.json(error.response.errors)}
|
|
172733
173909
|
`;
|
|
172734
173910
|
const abortError = new Abort(errorMessage);
|
|
172735
173911
|
abortError.stack = error.stack;
|
|
@@ -173005,12 +174181,6 @@ var checksum = /*#__PURE__*/Object.freeze({
|
|
|
173005
174181
|
validateMD5: validateMD5
|
|
173006
174182
|
});
|
|
173007
174183
|
|
|
173008
|
-
var semver = /*#__PURE__*/Object.freeze({
|
|
173009
|
-
__proto__: null,
|
|
173010
|
-
Version: semver$3,
|
|
173011
|
-
coerce: coerce_1
|
|
173012
|
-
});
|
|
173013
|
-
|
|
173014
174184
|
const RubyCLIVersion = "2.16.0";
|
|
173015
174185
|
const ThemeCheckVersion = "1.10.2";
|
|
173016
174186
|
const MinBundlerVersion = "2.3.8";
|
|
@@ -173106,7 +174276,7 @@ async function validateRubyEnv() {
|
|
|
173106
174276
|
}
|
|
173107
174277
|
async function getBundlerVersion() {
|
|
173108
174278
|
try {
|
|
173109
|
-
const
|
|
174279
|
+
const stdout = await captureOutput("bundler", ["-v"]);
|
|
173110
174280
|
return coerce_1(stdout);
|
|
173111
174281
|
} catch {
|
|
173112
174282
|
throw new Abort("Bundler not found", "Make sure you have Bundler installed on your system: https://bundler.io/");
|
|
@@ -173142,11 +174312,16 @@ function shopifyCLIDirectory() {
|
|
|
173142
174312
|
function themeCheckDirectory() {
|
|
173143
174313
|
return join$3(constants$2.paths.directories.cache.vendor.path(), "theme-check", ThemeCheckVersion);
|
|
173144
174314
|
}
|
|
174315
|
+
async function version() {
|
|
174316
|
+
const parseOutput = (version2) => version2.match(/ruby (\d+\.\d+\.\d+)/)?.[1];
|
|
174317
|
+
return captureOutput("ruby", ["-v"]).then(parseOutput).catch(() => void 0);
|
|
174318
|
+
}
|
|
173145
174319
|
|
|
173146
174320
|
var ruby = /*#__PURE__*/Object.freeze({
|
|
173147
174321
|
__proto__: null,
|
|
173148
174322
|
execCLI: execCLI,
|
|
173149
|
-
execThemeCheckCLI: execThemeCheckCLI
|
|
174323
|
+
execThemeCheckCLI: execThemeCheckCLI,
|
|
174324
|
+
version: version
|
|
173150
174325
|
});
|
|
173151
174326
|
|
|
173152
174327
|
async function readPackageJSON(directory) {
|
|
@@ -173434,7 +174609,7 @@ async function read(path) {
|
|
|
173434
174609
|
};
|
|
173435
174610
|
}
|
|
173436
174611
|
async function write(file) {
|
|
173437
|
-
await write$1(file.path, stringify$
|
|
174612
|
+
await write$1(file.path, stringify$f(file.variables));
|
|
173438
174613
|
}
|
|
173439
174614
|
|
|
173440
174615
|
var dotEnv = /*#__PURE__*/Object.freeze({
|
|
@@ -173464,5 +174639,34 @@ var plugins = /*#__PURE__*/Object.freeze({
|
|
|
173464
174639
|
lookupTunnelPlugin: lookupTunnelPlugin
|
|
173465
174640
|
});
|
|
173466
174641
|
|
|
173467
|
-
|
|
173468
|
-
|
|
174642
|
+
const isVSCode = async (root = process.cwd()) => {
|
|
174643
|
+
const config = await findUp$2(join$3(root, ".vscode"), { type: "directory" });
|
|
174644
|
+
if (!config) {
|
|
174645
|
+
return false;
|
|
174646
|
+
}
|
|
174647
|
+
return exists$1(config);
|
|
174648
|
+
};
|
|
174649
|
+
async function addRecommendedExtensions(directory, recommendations) {
|
|
174650
|
+
const extensionsPath = join$3(directory, ".vscode/extensions.json");
|
|
174651
|
+
if (await isVSCode(directory)) {
|
|
174652
|
+
let originalExtensionsJson = { recommendations: [] };
|
|
174653
|
+
if (await exists$1(extensionsPath)) {
|
|
174654
|
+
const originalExtensionsFile = await read$1(extensionsPath);
|
|
174655
|
+
originalExtensionsJson = JSON.parse(originalExtensionsFile);
|
|
174656
|
+
}
|
|
174657
|
+
const newExtensionsJson = {
|
|
174658
|
+
...originalExtensionsJson,
|
|
174659
|
+
recommendations: [...originalExtensionsJson.recommendations, ...recommendations]
|
|
174660
|
+
};
|
|
174661
|
+
await write$1(extensionsPath, JSON.stringify(newExtensionsJson, null, 2));
|
|
174662
|
+
}
|
|
174663
|
+
}
|
|
174664
|
+
|
|
174665
|
+
var vscode = /*#__PURE__*/Object.freeze({
|
|
174666
|
+
__proto__: null,
|
|
174667
|
+
isVSCode: isVSCode,
|
|
174668
|
+
addRecommendedExtensions: addRecommendedExtensions
|
|
174669
|
+
});
|
|
174670
|
+
|
|
174671
|
+
export { semver as A, npm as B, port as C, cli as D, id as E, FormData$3 as F, temporary as G, dotEnv as H, abort as I, constants$2 as J, plugins as K, vscode as L, File$1 as a, string as b, github as c, dependency as d, error$j as e, file$1 as f, git as g, haiku as h, os$2 as i, environment as j, session as k, schema$2 as l, toml as m, store as n, output as o, path$w as p, api as q, http$2 as r, system as s, template as t, ui as u, version$1 as v, archiver as w, checksum as x, yaml as y, ruby as z };
|
|
174672
|
+
//# sourceMappingURL=index-6d1cf8d0.js.map
|