@automattic/vip 3.13.0 → 3.14.1-dev.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 (40) hide show
  1. package/dist/bin/vip-app-deploy.js +1 -2
  2. package/dist/bin/vip-app.js +1 -2
  3. package/dist/bin/vip-cache-purge-url.js +1 -2
  4. package/dist/bin/vip-dev-env-create.js +1 -2
  5. package/dist/bin/vip-import-media-abort.js +1 -2
  6. package/dist/bin/vip-import-media-status.js +1 -2
  7. package/dist/bin/vip-import-sql-status.js +1 -2
  8. package/dist/bin/vip-import-sql.js +1 -2
  9. package/dist/bin/vip-import-validate-sql.js +1 -2
  10. package/dist/bin/vip-logs.js +1 -2
  11. package/dist/bin/vip-search-replace.js +1 -2
  12. package/dist/bin/vip-slowlogs.js +1 -2
  13. package/dist/bin/vip-validate-preflight.js +1 -2
  14. package/dist/bin/vip-whoami.js +1 -2
  15. package/dist/bin/vip-wp.js +10 -2
  16. package/dist/bin/vip.js +1 -2
  17. package/dist/commands/backup-db.js +1 -2
  18. package/dist/commands/dev-env-import-sql.js +1 -2
  19. package/dist/commands/dev-env-sync-sql.js +1 -2
  20. package/dist/commands/export-sql.js +1 -2
  21. package/dist/commands/phpmyadmin.js +1 -2
  22. package/dist/commands/wp-ssh.js +212 -0
  23. package/dist/lib/api.js +7 -1
  24. package/dist/lib/cli/apiConfig.js +1 -2
  25. package/dist/lib/cli/command.js +1 -2
  26. package/dist/lib/custom-deploy/custom-deploy.js +1 -2
  27. package/dist/lib/dev-environment/dev-environment-configuration-file.js +1 -2
  28. package/dist/lib/dev-environment/dev-environment-database.js +19 -1
  29. package/dist/lib/dev-environment/dev-environment-lando.js +8 -4
  30. package/dist/lib/dev-environment/docker-utils.js +2 -2
  31. package/dist/lib/read-file.js +1 -2
  32. package/dist/lib/search-and-replace.js +1 -2
  33. package/dist/lib/site-import/status.js +1 -2
  34. package/dist/lib/validations/custom-deploy.js +1 -2
  35. package/dist/lib/validations/is-multi-site.js +1 -2
  36. package/dist/lib/validations/is-multisite-domain-mapped.js +1 -2
  37. package/dist/lib/validations/line-by-line.js +1 -2
  38. package/dist/lib/validations/sql.js +1 -2
  39. package/npm-shrinkwrap.json +1159 -1068
  40. package/package.json +8 -6
@@ -2,10 +2,28 @@
2
2
 
3
3
  exports.__esModule = true;
4
4
  exports.reIndexSearch = exports.flushCache = exports.executeQuery = exports.dataCleanup = exports.addAdminUser = void 0;
5
+ var _nodeCrypto = require("node:crypto");
5
6
  var _devEnvironmentCore = require("./dev-environment-core");
7
+ const generatePassword = () => {
8
+ const chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_';
9
+ const passwordLength = 12;
10
+ let password = '';
11
+ for (let idx = 0; idx < passwordLength; idx++) {
12
+ const randomIndex = (0, _nodeCrypto.randomInt)(0, chars.length);
13
+ password += chars[randomIndex];
14
+ }
15
+ return password;
16
+ };
6
17
  const addAdminUser = async (lando, slug, quiet) => {
7
- const addUserArg = ['wp', 'dev-env-add-admin', '--username=vipgo', '--password=password', '--skip-plugins', '--skip-themes'].concat(quiet ? ['--quiet'] : []);
18
+ const instanceData = (0, _devEnvironmentCore.readEnvironmentData)(slug);
19
+ const password = !instanceData.adminPassword || instanceData.adminPassword === 'password' ? generatePassword() : instanceData.adminPassword;
20
+ const addUserArg = ['wp', 'dev-env-add-admin', '--username=vipgo', `--password=${password}`, '--skip-plugins', '--skip-themes'].concat(quiet ? ['--quiet'] : []);
8
21
  await (0, _devEnvironmentCore.exec)(lando, slug, addUserArg);
22
+ // eslint-disable-next-line security/detect-possible-timing-attacks
23
+ if (password !== instanceData.adminPassword) {
24
+ instanceData.adminPassword = password;
25
+ await (0, _devEnvironmentCore.writeEnvironmentData)(slug, instanceData);
26
+ }
9
27
  };
10
28
  exports.addAdminUser = addAdminUser;
11
29
  const dataCleanup = async (lando, slug, quiet) => {
@@ -29,8 +29,7 @@ var _devEnvironmentCore = require("./dev-environment-core");
29
29
  var _dockerUtils = require("./docker-utils");
30
30
  var _devEnvironment = require("../constants/dev-environment");
31
31
  var _userError = _interopRequireDefault(require("../user-error"));
32
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
33
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
32
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
34
33
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
35
34
  /**
36
35
  * This file will hold all the interactions with lando library
@@ -163,8 +162,10 @@ async function bootstrapLando() {
163
162
  try {
164
163
  const socket = await (0, _dockerUtils.getDockerSocket)();
165
164
  const config = await getLandoConfig();
165
+ debug('Docker socket: %j', socket);
166
166
  if (socket) {
167
167
  config.engineConfig = await (0, _dockerUtils.getEngineConfig)(socket);
168
+ debug('Engine config: %j', config.engineConfig);
168
169
  }
169
170
  const lando = new _lando.default(config);
170
171
  lando.events.once('pre-engine-build', async data => {
@@ -173,7 +174,7 @@ async function bootstrapLando() {
173
174
  try {
174
175
  registryResolvable = (await (0, _promises.lookup)('ghcr.io')).address.length > 0 || false;
175
176
  debug('Registry ghcr.io is resolvable');
176
- } catch (err) {
177
+ } catch {
177
178
  debug('Registry ghcr.io is not resolvable, image pull might be broken.');
178
179
  registryResolvable = false;
179
180
  }
@@ -316,7 +317,10 @@ async function landoInfo(lando, instancePath, options = {}) {
316
317
  }
317
318
  appInfo['Login URL'] = loginUrl;
318
319
  appInfo['Default username'] = 'vipgo';
319
- appInfo['Default password'] = 'password';
320
+
321
+ // Get the stored password from instance data
322
+ const instanceData = (0, _devEnvironmentCore.readEnvironmentData)(appInfo.slug);
323
+ appInfo['Default password'] = instanceData.adminPassword || 'password'; // NOSONAR
320
324
  }
321
325
  if (!options.suppressWarnings && hasWarnings) {
322
326
  let message = _chalk.default.bold.yellow('The following services have failed health checks:\n');
@@ -40,7 +40,7 @@ async function canReadWrite(what) {
40
40
  // eslint-disable-next-line no-bitwise
41
41
  await (0, _promises.access)(what, _nodeFs.constants.R_OK | _nodeFs.constants.W_OK);
42
42
  return true;
43
- } catch (err) {
43
+ } catch {
44
44
  return false;
45
45
  }
46
46
  }
@@ -72,7 +72,7 @@ async function getDockerSocket() {
72
72
  process.env.DOCKER_HOST = `unix://${socketPath}`;
73
73
  return socketPath;
74
74
  }
75
- } catch (err) {
75
+ } catch {
76
76
  // Do nothing
77
77
  }
78
78
  }
@@ -4,8 +4,7 @@ exports.__esModule = true;
4
4
  exports.readFromFile = readFromFile;
5
5
  var _promises = require("node:fs/promises");
6
6
  var exit = _interopRequireWildcard(require("../lib/cli/exit"));
7
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
8
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
7
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
9
8
  async function readFromFile(path) {
10
9
  try {
11
10
  const data = await (0, _promises.readFile)(path, 'utf-8');
@@ -15,8 +15,7 @@ var exit = _interopRequireWildcard(require("../lib/cli/exit"));
15
15
  var _prompt = require("../lib/cli/prompt");
16
16
  var _clientFileUploader = require("../lib/client-file-uploader");
17
17
  var _tracker = require("../lib/tracker");
18
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
19
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
18
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
20
19
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
21
20
  const debug = (0, _debug.default)('@automattic/vip:lib:search-and-replace');
22
21
  function getReadAndWriteStreams({
@@ -10,8 +10,7 @@ var _dbFileImport = require("./db-file-import");
10
10
  var _api = _interopRequireDefault(require("../../lib/api"));
11
11
  var exit = _interopRequireWildcard(require("../../lib/cli/exit"));
12
12
  var _format = require("../../lib/cli/format");
13
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
14
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
13
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
15
14
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
16
15
  /* eslint-disable complexity */
17
16
 
@@ -11,8 +11,7 @@ var _nodeFs = require("node:fs");
11
11
  var _path = _interopRequireDefault(require("path"));
12
12
  var tar = _interopRequireWildcard(require("tar"));
13
13
  var exit = _interopRequireWildcard(require("../../lib/cli/exit"));
14
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
14
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
16
15
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
17
16
  const errorMessages = {
18
17
  missingThemes: 'Missing `themes` directory from root folder.',
@@ -6,8 +6,7 @@ var _graphqlTag = _interopRequireDefault(require("graphql-tag"));
6
6
  var _api = _interopRequireDefault(require("../../lib/api"));
7
7
  var exit = _interopRequireWildcard(require("../../lib/cli/exit"));
8
8
  var _tracker = require("../../lib/tracker");
9
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
10
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
9
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
11
10
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
11
  const isMultiSite = new WeakMap();
13
12
  async function isMultiSiteInSiteMeta(appId, envId) {
@@ -8,8 +8,7 @@ var _graphqlTag = _interopRequireDefault(require("graphql-tag"));
8
8
  var _api = _interopRequireDefault(require("../../lib/api"));
9
9
  var exit = _interopRequireWildcard(require("../../lib/cli/exit"));
10
10
  var _tracker = require("../../lib/tracker");
11
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
12
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
11
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
13
12
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
13
  /**
15
14
  * Extracts the domain for site with ID 1 from an INSERT INTO `wp_site` SQL statement
@@ -8,8 +8,7 @@ var _nodeFs = require("node:fs");
8
8
  var _promises = require("node:fs/promises");
9
9
  var _nodeReadline = require("node:readline");
10
10
  var exit = _interopRequireWildcard(require("../../lib/cli/exit"));
11
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
12
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
11
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
13
12
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
13
  const debug = (0, _debug.default)('vip:validations:line-by-line');
15
14
  async function getReadInterface(filename) {
@@ -11,8 +11,7 @@ var exit = _interopRequireWildcard(require("../../lib/cli/exit"));
11
11
  var _clientFileUploader = require("../../lib/client-file-uploader");
12
12
  var _tracker = require("../../lib/tracker");
13
13
  var _lineByLine = require("../../lib/validations/line-by-line");
14
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
14
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
16
15
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
17
16
  let problemsFound = 0;
18
17
  let lineNum = 1;