@automattic/vip 2.25.0 → 2.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/CHANGELOG.md +34 -6
  2. package/assets/dev-env.lando.template.yml.ejs +7 -3
  3. package/automattic-vip-2.26.0.tgz +0 -0
  4. package/dist/bin/vip-config-software-get.js +1 -1
  5. package/dist/bin/vip-dev-env-import-sql.js +1 -1
  6. package/dist/bin/vip-dev-env-start.js +1 -1
  7. package/dist/bin/vip-import-media-abort.js +2 -2
  8. package/dist/bin/vip-import-sql.js +4 -4
  9. package/dist/bin/vip-import-validate-files.js +2 -4
  10. package/dist/bin/vip-logs.js +10 -1
  11. package/dist/bin/vip-sync.js +1 -1
  12. package/dist/bin/vip-validate-preflight.js +2 -2
  13. package/dist/bin/vip-wp.js +4 -4
  14. package/dist/lib/analytics/clients/pendo.js +1 -1
  15. package/dist/lib/analytics/clients/stub.js +1 -2
  16. package/dist/lib/analytics/index.js +0 -2
  17. package/dist/lib/api/app.js +1 -1
  18. package/dist/lib/api/cache-purge.js +1 -1
  19. package/dist/lib/api/feature-flags.js +1 -1
  20. package/dist/lib/api/http.js +7 -7
  21. package/dist/lib/api/user.js +1 -1
  22. package/dist/lib/api.js +1 -1
  23. package/dist/lib/app-logs/app-logs.js +1 -1
  24. package/dist/lib/app.js +6 -6
  25. package/dist/lib/cli/apiConfig.js +21 -28
  26. package/dist/lib/cli/command.js +91 -81
  27. package/dist/lib/cli/envAlias.js +15 -10
  28. package/dist/lib/cli/exit.js +1 -1
  29. package/dist/lib/cli/format.js +22 -7
  30. package/dist/lib/cli/progress.js +1 -2
  31. package/dist/lib/cli/prompt.js +1 -3
  32. package/dist/lib/cli/repo.js +0 -1
  33. package/dist/lib/client-file-uploader.js +14 -16
  34. package/dist/lib/config/software.js +0 -2
  35. package/dist/lib/dev-environment/dev-environment-cli.js +11 -5
  36. package/dist/lib/dev-environment/dev-environment-core.js +44 -19
  37. package/dist/lib/dev-environment/dev-environment-lando.js +76 -33
  38. package/dist/lib/envvar/api-delete.js +1 -1
  39. package/dist/lib/envvar/api-get-all.js +1 -1
  40. package/dist/lib/envvar/api-get.js +1 -1
  41. package/dist/lib/envvar/api-list.js +1 -1
  42. package/dist/lib/envvar/api-set.js +1 -1
  43. package/dist/lib/envvar/api.js +1 -1
  44. package/dist/lib/envvar/logging.js +1 -1
  45. package/dist/lib/envvar/read-file.js +1 -1
  46. package/dist/lib/http/proxy-agent.js +5 -6
  47. package/dist/lib/keychain/secure.js +0 -6
  48. package/dist/lib/keychain.js +6 -1
  49. package/dist/lib/logout.js +3 -3
  50. package/dist/lib/media-import/media-file-import.js +1 -1
  51. package/dist/lib/media-import/progress.js +2 -2
  52. package/dist/lib/media-import/status.js +6 -5
  53. package/dist/lib/read-file.js +1 -1
  54. package/dist/lib/rollbar.js +1 -1
  55. package/dist/lib/search-and-replace.js +11 -9
  56. package/dist/lib/site-import/db-file-import.js +1 -1
  57. package/dist/lib/site-import/status.js +6 -5
  58. package/dist/lib/sql-export.js +360 -0
  59. package/dist/lib/tracker.js +2 -2
  60. package/dist/lib/utils.js +28 -0
  61. package/dist/lib/validations/is-multi-site-sql-dump.js +3 -40
  62. package/dist/lib/validations/is-multi-site.js +4 -5
  63. package/dist/lib/validations/is-multisite-domain-mapped.js +15 -18
  64. package/dist/lib/validations/line-by-line.js +4 -14
  65. package/dist/lib/validations/site-type.js +5 -5
  66. package/dist/lib/validations/sql.js +16 -16
  67. package/dist/lib/validations/utils.js +2 -2
  68. package/dist/lib/vip-import-validate-files.js +44 -44
  69. package/npm-shrinkwrap.json +21091 -4237
  70. package/package.json +9 -15
@@ -131,6 +131,12 @@ function preProcessInstanceData(instanceData) {
131
131
  if (!newInstanceData.xdebugConfig) {
132
132
  newInstanceData.xdebugConfig = '';
133
133
  }
134
+ if (!newInstanceData.xdebug) {
135
+ newInstanceData.xdebug = false;
136
+ }
137
+ if (!newInstanceData.phpmyadmin) {
138
+ newInstanceData.phpmyadmin = false;
139
+ }
134
140
 
135
141
  // Mailhog migration
136
142
  if (!newInstanceData.mailhog) {
@@ -167,6 +173,7 @@ async function printAllEnvironmentsInfo(lando, options) {
167
173
  for (const envName of allEnvNames) {
168
174
  try {
169
175
  console.log('\n');
176
+ // eslint-disable-next-line no-await-in-loop
170
177
  await printEnvironmentInfo(lando, envName, options);
171
178
  } catch (error) {
172
179
  if (error instanceof _userError.default) {
@@ -233,7 +240,8 @@ function readEnvironmentData(slug) {
233
240
  /**
234
241
  ***********************************
235
242
  * BACKWARDS COMPATIBILITY SECTION
236
- ***********************************/
243
+ **********************************
244
+ */
237
245
 
238
246
  // REMOVEME after the wheel of time spins around few times
239
247
  if (instanceData.enterpriseSearchEnabled || instanceData.elasticsearchEnabled) {
@@ -252,9 +260,9 @@ function readEnvironmentData(slug) {
252
260
  /**
253
261
  * Writes the instance data.
254
262
  *
255
- * @param {string} slug Env slug
263
+ * @param {string} slug Env slug
256
264
  * @param {InstanceData} data instance data
257
- * @returns {Promise} Promise
265
+ * @return {Promise} Promise
258
266
  */
259
267
  function writeEnvironmentData(slug, data) {
260
268
  debug('Will try to write instance data for environment', slug);
@@ -429,17 +437,23 @@ async function importMediaPath(slug, filePath) {
429
437
  * - If there is a newer version of the WordPress version currently used
430
438
  * - A choice to use a different image
431
439
  *
432
- * @param {Object=} slug slug
440
+ * @param {string} slug slug
433
441
  * @return {boolean} boolean
434
442
  */
435
443
  async function updateWordPressImage(slug) {
436
444
  const versions = await getVersionList();
445
+ if (!versions.length) {
446
+ return false;
447
+ }
437
448
  let message, envData, currentWordPressTag;
438
449
 
439
450
  // Get the current environment configuration
440
451
  try {
441
452
  envData = readEnvironmentData(slug);
442
453
  currentWordPressTag = envData.wordpress.tag;
454
+ if (currentWordPressTag === 'trunk') {
455
+ return false;
456
+ }
443
457
  } catch (error) {
444
458
  // This can throw an exception if the env is build with older vip version
445
459
  if ('ENOENT' === error.code) {
@@ -519,22 +533,28 @@ async function updateWordPressImage(slug) {
519
533
  /**
520
534
  * Makes a web call to raw.githubusercontent.com
521
535
  */
522
- async function fetchVersionList() {
536
+ function fetchVersionList() {
523
537
  const url = `https://${_devEnvironment.DEV_ENVIRONMENT_RAW_GITHUB_HOST}${_devEnvironment.DEV_ENVIRONMENT_WORDPRESS_VERSIONS_URI}`;
524
- return (0, _nodeFetch.default)(url).then(res => res.text());
538
+ return (0, _nodeFetch.default)(url).then(res => res.json());
525
539
  }
526
540
 
527
541
  /**
528
542
  * Encapsulates the logic for determining if a file is expired by an arbitrary TTL
529
- * @param {string} cacheFile uri of cache file
530
- * @param {number} ttl time to live in seconds
531
- * @returns {boolean} version list expired true/false
543
+ *
544
+ * @param {string} cacheFile uri of cache file
545
+ * @param {number} ttl time to live in seconds
546
+ * @return {Promise<boolean>} version list expired true/false
532
547
  */
533
- function isVersionListExpired(cacheFile, ttl) {
534
- const stats = _fs.default.statSync(cacheFile);
535
- const expire = new Date(stats.mtime);
536
- expire.setSeconds(expire.getSeconds() + ttl);
537
- return +new Date() > expire;
548
+ async function isVersionListExpired(cacheFile, ttl) {
549
+ try {
550
+ const {
551
+ mtime: expire
552
+ } = await _fs.default.promises.stat(cacheFile);
553
+ expire.setSeconds(expire.getSeconds() + ttl);
554
+ return +new Date() > expire;
555
+ } catch (err) {
556
+ return true;
557
+ }
538
558
  }
539
559
 
540
560
  /**
@@ -554,11 +574,10 @@ async function getVersionList() {
554
574
  });
555
575
  }
556
576
 
557
- // If the cache doesn't exist, create it
558
- // If the cache is expired, refresh it
559
- if (!_fs.default.existsSync(cacheFile) || isVersionListExpired(cacheFile, _devEnvironment.DEV_ENVIRONMENT_WORDPRESS_VERSION_TTL)) {
577
+ // If the cache does not exist or has expired, refresh it
578
+ if (await isVersionListExpired(cacheFile, _devEnvironment.DEV_ENVIRONMENT_WORDPRESS_VERSION_TTL)) {
560
579
  res = await fetchVersionList();
561
- await _fs.default.promises.writeFile(cacheFile, res);
580
+ await _fs.default.promises.writeFile(cacheFile, JSON.stringify(res));
562
581
  }
563
582
  } catch (err) {
564
583
  // Soft error handling here, since it's still possible to use a previously cached file.
@@ -572,6 +591,12 @@ async function getVersionList() {
572
591
  return JSON.parse(data);
573
592
  } catch (err) {
574
593
  debug(err);
575
- return [];
594
+ return [{
595
+ ref: 'HEAD',
596
+ tag: 'trunk',
597
+ cacheable: false,
598
+ locked: false,
599
+ prerelease: true
600
+ }];
576
601
  }
577
602
  }
@@ -15,6 +15,7 @@ exports.validateDockerAccess = validateDockerAccess;
15
15
  exports.validateDockerInstalled = validateDockerInstalled;
16
16
  var _debug = _interopRequireDefault(require("debug"));
17
17
  var _os = _interopRequireDefault(require("os"));
18
+ var _fs = _interopRequireDefault(require("fs"));
18
19
  var _path = _interopRequireDefault(require("path"));
19
20
  var _lando = _interopRequireDefault(require("lando/lib/lando"));
20
21
  var _utils = _interopRequireDefault(require("lando/plugins/lando-core/lib/utils"));
@@ -22,51 +23,52 @@ var _build = _interopRequireDefault(require("lando/plugins/lando-tooling/lib/bui
22
23
  var _chalk = _interopRequireDefault(require("chalk"));
23
24
  var _app = _interopRequireDefault(require("lando/lib/app"));
24
25
  var _dns = _interopRequireDefault(require("dns"));
26
+ var _xdgBasedir = _interopRequireDefault(require("xdg-basedir"));
25
27
  var _devEnvironmentCore = require("./dev-environment-core");
26
28
  var _devEnvironment = require("../constants/dev-environment");
27
29
  var _userError = _interopRequireDefault(require("../user-error"));
28
30
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29
- /**
30
- *
31
- * @format
32
- */
33
-
31
+ // @format
34
32
  /**
35
33
  * External dependencies
36
34
  */
37
-
38
35
  /**
39
36
  * Internal dependencies
40
37
  */
41
-
42
38
  /**
43
39
  * This file will hold all the interactions with lando library
44
40
  */
45
41
  const DEBUG_KEY = '@automattic/vip:bin:dev-environment';
46
42
  const debug = (0, _debug.default)(DEBUG_KEY);
47
- let landoConfRoot;
48
-
49
- /**
50
- * @returns {string} User configuration root directory (aka userConfRoot in Lando)
51
- */
52
- function getLandoUserConfigurationRoot() {
53
- if (!landoConfRoot) {
54
- landoConfRoot = _path.default.join(_os.default.tmpdir(), 'lando');
55
- }
56
- return landoConfRoot;
57
- }
58
43
 
59
44
  /**
60
- * @returns {object} Lando configuration
45
+ * @return {Promise<object>} Lando configuration
61
46
  */
62
- function getLandoConfig() {
47
+ async function getLandoConfig() {
63
48
  const nodeModulesPath = _path.default.join(__dirname, '..', '..', '..', 'node_modules');
64
49
  const landoPath = _path.default.join(nodeModulesPath, 'lando');
65
50
  const atLandoPath = _path.default.join(nodeModulesPath, '@lando');
66
51
  debug(`Getting lando config, using paths '${landoPath}' and '${atLandoPath}' for plugins`);
67
- const isLandoDebugSelected = (process.env.DEBUG || '').includes(DEBUG_KEY);
68
- const isAllDebugSelected = process.env.DEBUG === '*';
69
- const logLevelConsole = isAllDebugSelected || isLandoDebugSelected ? 'debug' : 'warn';
52
+ const isLandoDebugSelected = _debug.default.enabled(DEBUG_KEY);
53
+ const isAllDebugSelected = _debug.default.enabled('"*"');
54
+ let logLevelConsole;
55
+ if (isAllDebugSelected) {
56
+ logLevelConsole = 'silly';
57
+ } else if (isLandoDebugSelected) {
58
+ logLevelConsole = 'debug';
59
+ } else {
60
+ logLevelConsole = 'warn';
61
+ }
62
+ const vipDir = _path.default.join(_xdgBasedir.default.data || _os.default.tmpdir(), 'vip');
63
+ const landoDir = _path.default.join(vipDir, 'lando');
64
+ const fakeHomeDir = _path.default.join(landoDir, 'home');
65
+ try {
66
+ await _fs.default.promises.mkdir(fakeHomeDir, {
67
+ recursive: true
68
+ });
69
+ } catch (err) {
70
+ // Ignore
71
+ }
70
72
  return {
71
73
  logLevelConsole,
72
74
  landoFile: '.lando.yml',
@@ -81,16 +83,51 @@ function getLandoConfig() {
81
83
  // Plugins we need:
82
84
  // '@lando/compose',
83
85
  // '@lando/mailhog',
84
- // '@lando/memcached',
85
86
  // '@lando/phpmyadmin',
86
87
  // The rest we don't need
87
- '@lando/acquia', '@lando/apache', '@lando/argv', '@lando/backdrop', '@lando/dotnet', '@lando/drupal', '@lando/elasticsearch', '@lando/go', '@lando/joomla', '@lando/lagoon', '@lando/lamp', '@lando/laravel', '@lando/lemp', '@lando/mariadb', '@lando/mean', '@lando/mongo', '@lando/mssql', '@lando/mysql', '@lando/nginx', '@lando/node', '@lando/pantheon', '@lando/php', '@lando/platformsh', '@lando/postgres', '@lando/python', '@lando/redis', '@lando/ruby', '@lando/solr', '@lando/symfony', '@lando/tomcat', '@lando/varnish', '@lando/wordpress'],
88
+ '@lando/acquia', '@lando/apache', '@lando/argv', '@lando/backdrop', '@lando/dotnet', '@lando/drupal', '@lando/elasticsearch', '@lando/go', '@lando/joomla', '@lando/lagoon', '@lando/lamp', '@lando/laravel', '@lando/lemp', '@lando/mariadb', '@lando/mean', '@lando/memcached', '@lando/mongo', '@lando/mssql', '@lando/mysql', '@lando/nginx', '@lando/node', '@lando/pantheon', '@lando/php', '@lando/platformsh', '@lando/postgres', '@lando/python', '@lando/redis', '@lando/ruby', '@lando/solr', '@lando/symfony', '@lando/tomcat', '@lando/varnish', '@lando/wordpress'],
88
89
  proxyName: 'vip-dev-env-proxy',
89
- userConfRoot: getLandoUserConfigurationRoot(),
90
- home: ''
90
+ userConfRoot: landoDir,
91
+ home: fakeHomeDir,
92
+ domain: 'lndo.site',
93
+ version: 'unknown'
91
94
  };
92
95
  }
93
96
  const appMap = new Map();
97
+ async function regenerateLandofile(instancePath) {
98
+ const landoFile = _path.default.join(instancePath, '.lando.yml');
99
+ try {
100
+ const now = new Date().toISOString().replace(/[^\d]/g, '').slice(0, -3);
101
+ const backup = `${landoFile}.${now}`;
102
+ await _fs.default.promises.rename(landoFile, backup);
103
+ console.warn(_chalk.default.yellow('Backed up %s to %s'), landoFile, backup);
104
+ } catch (err) {
105
+ // Rename failed - possible the file does not exist. Silently ignoring.
106
+ }
107
+ const slug = _path.default.basename(instancePath);
108
+ const currentInstanceData = (0, _devEnvironmentCore.readEnvironmentData)(slug);
109
+ await (0, _devEnvironmentCore.updateEnvironment)(currentInstanceData);
110
+ }
111
+ async function landoRecovery(lando, instancePath, error) {
112
+ debug('Error initializing Lando app', error);
113
+ console.warn(_chalk.default.yellow('There was an error initializing Lando, trying to recover...'));
114
+ try {
115
+ await regenerateLandofile(instancePath);
116
+ } catch (err) {
117
+ console.error(`${_chalk.default.bold.red('Recovery failed, aborting.')} Please recreate the environment or contact support.`);
118
+ throw err;
119
+ }
120
+ console.error(_chalk.default.green('Recovery successful, trying to initialize again...'));
121
+ try {
122
+ const app = lando.getApp(instancePath);
123
+ addHooks(app, lando);
124
+ await app.init();
125
+ return app;
126
+ } catch (initError) {
127
+ console.error(`${_chalk.default.bold.red('Initialization failed, aborting.')} Please recreate the environment or contact support.`);
128
+ throw initError;
129
+ }
130
+ }
94
131
  async function getLandoApplication(lando, instancePath) {
95
132
  if (appMap.has(instancePath)) {
96
133
  return Promise.resolve(appMap.get(instancePath));
@@ -98,16 +135,19 @@ async function getLandoApplication(lando, instancePath) {
98
135
  if (!(await (0, _devEnvironmentCore.doesEnvironmentExist)(instancePath))) {
99
136
  throw new Error(_devEnvironment.DEV_ENVIRONMENT_NOT_FOUND);
100
137
  }
101
- const app = lando.getApp(instancePath);
102
- addHooks(app, lando);
103
- appMap.set(instancePath, app);
104
- if (!app.initialized) {
138
+ let app;
139
+ try {
140
+ app = lando.getApp(instancePath);
141
+ addHooks(app, lando);
105
142
  await app.init();
143
+ } catch (error) {
144
+ app = await landoRecovery(lando, instancePath, error);
106
145
  }
146
+ appMap.set(instancePath, app);
107
147
  return app;
108
148
  }
109
149
  async function bootstrapLando() {
110
- const lando = new _lando.default(getLandoConfig());
150
+ const lando = new _lando.default(await getLandoConfig());
111
151
  await lando.bootstrap();
112
152
  return lando;
113
153
  }
@@ -258,6 +298,8 @@ async function getExtraServicesConnections(lando, app) {
258
298
  if (displayConfiguration.skip) {
259
299
  continue;
260
300
  }
301
+
302
+ // eslint-disable-next-line no-await-in-loop
261
303
  const containerScan = service !== null && service !== void 0 && service.id ? await lando.engine.docker.scan(service === null || service === void 0 ? void 0 : service.id) : null;
262
304
  if (containerScan !== null && containerScan !== void 0 && (_containerScan$Networ = containerScan.NetworkSettings) !== null && _containerScan$Networ !== void 0 && _containerScan$Networ.Ports) {
263
305
  const mappings = Object.keys(containerScan.NetworkSettings.Ports).map(internalPort => containerScan.NetworkSettings.Ports[internalPort]).filter(externalMapping => externalMapping === null || externalMapping === void 0 ? void 0 : externalMapping.length);
@@ -304,6 +346,7 @@ async function landoExec(lando, instancePath, toolName, args, options) {
304
346
  process.argv = ['0', '1', '3'].concat(args);
305
347
  tool.app = app;
306
348
  tool.name = toolName;
349
+ tool.dir = '/';
307
350
  if (options.stdio) {
308
351
  tool.stdio = options.stdio;
309
352
  }
@@ -326,7 +369,7 @@ async function landoExec(lando, instancePath, toolName, args, options) {
326
369
  * This function tries to detect such scenario and remove the orphant. So that regular flow
327
370
  * can safelly add a network and a new proxy container.
328
371
  *
329
- * @param {object} lando Bootstrapped Lando object
372
+ * @param {Object} lando Bootstrapped Lando object
330
373
  */
331
374
  async function ensureNoOrphantProxyContainer(lando) {
332
375
  var _status$State;
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = deleteEnvVar;
7
7
  var _graphqlTag = _interopRequireDefault(require("graphql-tag"));
8
- var _api = _interopRequireDefault(require("../api"));
8
+ var _api = _interopRequireDefault(require("../../lib/api"));
9
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
10
  /**
11
11
  * External dependencies
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = getEnvVars;
7
7
  var _graphqlTag = _interopRequireDefault(require("graphql-tag"));
8
- var _api = _interopRequireDefault(require("../api"));
8
+ var _api = _interopRequireDefault(require("../../lib/api"));
9
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
10
  /**
11
11
  * External dependencies
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = getEnvVar;
7
- var _apiGetAll = _interopRequireDefault(require("./api-get-all"));
7
+ var _apiGetAll = _interopRequireDefault(require("../../lib/envvar/api-get-all"));
8
8
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
9
  /**
10
10
  * External dependencies
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = listEnvVars;
7
7
  var _graphqlTag = _interopRequireDefault(require("graphql-tag"));
8
- var _api = _interopRequireDefault(require("../api"));
8
+ var _api = _interopRequireDefault(require("../../lib/api"));
9
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
10
  /**
11
11
  * External dependencies
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = setEnvVar;
7
7
  var _graphqlTag = _interopRequireDefault(require("graphql-tag"));
8
- var _api = _interopRequireDefault(require("../api"));
8
+ var _api = _interopRequireDefault(require("../../lib/api"));
9
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
10
  /**
11
11
  * External dependencies
@@ -37,7 +37,7 @@ Object.defineProperty(exports, "setEnvVar", {
37
37
  exports.validateName = validateName;
38
38
  exports.validateNameWithMessage = validateNameWithMessage;
39
39
  var _chalk = _interopRequireDefault(require("chalk"));
40
- var _logging = require("./logging");
40
+ var _logging = require("../../lib/envvar/logging");
41
41
  var _apiDelete = _interopRequireDefault(require("./api-delete"));
42
42
  var _apiGet = _interopRequireDefault(require("./api-get"));
43
43
  var _apiGetAll = _interopRequireDefault(require("./api-get-all"));
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.debug = void 0;
7
7
  exports.getEnvContext = getEnvContext;
8
8
  var _debug = _interopRequireDefault(require("debug"));
9
- var _command = require("../cli/command");
9
+ var _command = require("../../lib/cli/command");
10
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
11
  /**
12
12
  *
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.readVariableFromFile = readVariableFromFile;
7
- var _logging = require("./logging");
7
+ var _logging = require("../../lib/envvar/logging");
8
8
  var _readFile = require("../read-file");
9
9
  /**
10
10
  *
@@ -1,5 +1,9 @@
1
1
  "use strict";
2
2
 
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createProxyAgent = createProxyAgent;
3
7
  var _socksProxyAgent = require("socks-proxy-agent");
4
8
  var _httpsProxyAgent = require("https-proxy-agent");
5
9
  var _proxyFromEnv = require("proxy-from-env");
@@ -72,9 +76,4 @@ function coveredInNoProxy(url, noProxyString) {
72
76
  // If getProxyForUrl returns an empty string, then the host should not be proxied
73
77
  // This isn't the most straight forward way to determine if a NO_PROXY is applicable, but the only package I could find that is relatively new and maintained
74
78
  return (0, _proxyFromEnv.getProxyForUrl)(url) === '';
75
- }
76
-
77
- // Exports
78
- module.exports = {
79
- createProxyAgent
80
- };
79
+ }
@@ -5,16 +5,10 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _keytar = _interopRequireDefault(require("keytar"));
8
- var _keychain = _interopRequireDefault(require("./keychain"));
9
8
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
9
  /**
11
10
  * External dependencies
12
11
  */
13
-
14
- /**
15
- * Internal dependencies
16
- */
17
-
18
12
  class Secure {
19
13
  getPassword(service) {
20
14
  return _keytar.default.getPassword(service, service);
@@ -1,5 +1,9 @@
1
1
  "use strict";
2
2
 
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
3
7
  var _insecure = _interopRequireDefault(require("./keychain/insecure"));
4
8
  var _browser = _interopRequireDefault(require("./keychain/browser"));
5
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -29,4 +33,5 @@ if (typeof window === 'undefined' || typeof window.localStorage === 'undefined')
29
33
  } else {
30
34
  exportValue = new _browser.default();
31
35
  }
32
- module.exports = exportValue;
36
+ var _default = exportValue;
37
+ exports.default = _default;
@@ -4,9 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- var _token = _interopRequireDefault(require("./token"));
8
- var _tracker = require("./tracker");
9
- var _http = _interopRequireDefault(require("./api/http"));
7
+ var _token = _interopRequireDefault(require("../lib/token"));
8
+ var _tracker = require("../lib/tracker");
9
+ var _http = _interopRequireDefault(require("../lib/api/http"));
10
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
11
  /**
12
12
  * Internal dependencies
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.SUPPORTED_MEDIA_FILE_IMPORT_SITE_TYPES = exports.MEDIA_IMPORT_FILE_SIZE_LIMIT = void 0;
7
7
  exports.currentUserCanImportForApp = currentUserCanImportForApp;
8
8
  exports.isSupportedApp = void 0;
9
- var _fileSize = require("../constants/file-size");
9
+ var _fileSize = require("../../lib/constants/file-size");
10
10
  /**
11
11
  *
12
12
  * @format
@@ -5,8 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.MediaImportProgressTracker = void 0;
7
7
  var _singleLineLog = require("single-line-log");
8
- var _status = require("./status");
9
- var _format = require("../cli/format");
8
+ var _status = require("../../lib/media-import/status");
9
+ var _format = require("../../lib/cli/format");
10
10
  /** @format */
11
11
  /**
12
12
  * External dependencies
@@ -10,10 +10,11 @@ var _chalk = _interopRequireDefault(require("chalk"));
10
10
  var _graphqlTag = _interopRequireDefault(require("graphql-tag"));
11
11
  var _fs = require("fs");
12
12
  var path = _interopRequireWildcard(require("path"));
13
- var _api = _interopRequireDefault(require("../api"));
14
- var _mediaFileImport = require("./media-file-import");
15
- var _progress = require("./progress");
16
- var _format = require("../cli/format");
13
+ var _api = _interopRequireDefault(require("../../lib/api"));
14
+ var _mediaFileImport = require("../../lib/media-import/media-file-import");
15
+ var _progress = require("../../lib/media-import/progress");
16
+ var _format = require("../../lib/cli/format");
17
+ var _format2 = require("../cli/format");
17
18
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
18
19
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -254,7 +255,7 @@ ${maybeExitPrompt}
254
255
  progressTracker.suffix += `. ${_chalk.default.italic.yellow('File-errors report size threshold reached.')}`;
255
256
  }
256
257
  const formattedData = buildFileErrors(fileErrors, exportFileErrorsToJson);
257
- const errorsFile = `media-import-${app.name}-${Date.now()}${!!exportFileErrorsToJson ? '.json' : '.txt'}`;
258
+ const errorsFile = `media-import-${app.name}-${Date.now()}${exportFileErrorsToJson ? '.json' : '.txt'}`;
258
259
  try {
259
260
  await _fs.promises.writeFile(errorsFile, formattedData);
260
261
  progressTracker.suffix += `\n\n${_chalk.default.yellow(`All errors have been exported to ${_chalk.default.bold(path.resolve(errorsFile))}`)}\n\n`;
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.readFromFile = readFromFile;
7
7
  var _fs = require("fs");
8
- var exit = _interopRequireWildcard(require("./cli/exit"));
8
+ var exit = _interopRequireWildcard(require("../lib/cli/exit"));
9
9
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
10
10
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
11
11
  /**
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.rollbar = void 0;
7
7
  var _env = _interopRequireDefault(require("./env"));
8
- var _config = _interopRequireDefault(require("./cli/config"));
8
+ var _config = _interopRequireDefault(require("../lib/cli/config"));
9
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
10
  /**
11
11
  * Internal dependencies
@@ -11,10 +11,10 @@ var _path = _interopRequireDefault(require("path"));
11
11
  var _chalk = _interopRequireDefault(require("chalk"));
12
12
  var _debug = _interopRequireDefault(require("debug"));
13
13
  var _vipSearchReplace = require("@automattic/vip-search-replace");
14
- var _tracker = require("./tracker");
15
- var _prompt = require("./cli/prompt");
16
- var _clientFileUploader = require("./client-file-uploader");
17
- var exit = _interopRequireWildcard(require("./cli/exit"));
14
+ var _tracker = require("../lib/tracker");
15
+ var _prompt = require("../lib/cli/prompt");
16
+ var _clientFileUploader = require("../lib/client-file-uploader");
17
+ var exit = _interopRequireWildcard(require("../lib/cli/exit"));
18
18
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
19
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
20
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -80,11 +80,13 @@ function getReadAndWriteStreams({
80
80
  }
81
81
  break;
82
82
  default:
83
- const tmpOutFile = _path.default.join(makeTempDir(), _path.default.basename(fileName));
84
- writeStream = _fs.default.createWriteStream(tmpOutFile);
85
- outputFileName = tmpOutFile;
86
- debug(`Outputting to file: ${outputFileName}`);
87
- break;
83
+ {
84
+ const tmpOutFile = _path.default.join(makeTempDir(), _path.default.basename(fileName));
85
+ writeStream = _fs.default.createWriteStream(tmpOutFile);
86
+ outputFileName = tmpOutFile;
87
+ debug(`Outputting to file: ${outputFileName}`);
88
+ break;
89
+ }
88
90
  }
89
91
  return {
90
92
  outputFileName,
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.SYNC_STATUS_NOT_SYNCING = exports.SUPPORTED_DB_FILE_IMPORT_SITE_TYPES = exports.SQL_IMPORT_FILE_SIZE_LIMIT_LAUNCHED = exports.SQL_IMPORT_FILE_SIZE_LIMIT = void 0;
7
7
  exports.currentUserCanImportForApp = currentUserCanImportForApp;
8
8
  exports.isSupportedApp = exports.isImportingBlockedBySync = void 0;
9
- var _fileSize = require("../constants/file-size");
9
+ var _fileSize = require("../../lib/constants/file-size");
10
10
  /**
11
11
  *
12
12
  * @format
@@ -8,11 +8,11 @@ exports.importSqlCheckStatus = importSqlCheckStatus;
8
8
  var _chalk = _interopRequireDefault(require("chalk"));
9
9
  var _graphqlTag = _interopRequireDefault(require("graphql-tag"));
10
10
  var _debug = _interopRequireDefault(require("debug"));
11
- var _api = _interopRequireDefault(require("../api"));
12
- var _dbFileImport = require("./db-file-import");
13
- var _progress = require("../cli/progress");
14
- var exit = _interopRequireWildcard(require("../cli/exit"));
15
- var _format = require("../cli/format");
11
+ var _api = _interopRequireDefault(require("../../lib/api"));
12
+ var _dbFileImport = require("../../lib/site-import/db-file-import");
13
+ var _progress = require("../../lib/cli/progress");
14
+ var exit = _interopRequireWildcard(require("../../lib/cli/exit"));
15
+ var _format = require("../../lib/cli/format");
16
16
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
17
17
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
18
18
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -193,6 +193,7 @@ async function importSqlCheckStatus({
193
193
  break;
194
194
  }
195
195
  // Intentionally no break to get default case:
196
+ // eslint-disable-next-line no-fallthrough
196
197
  default:
197
198
  statusMessage = `${(0, _format.capitalize)(overallStatus)} ${sprite}`;
198
199
  }