create-expo 3.7.3 → 4.0.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.
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
- exports.id = 261;
3
- exports.ids = [261,601];
2
+ exports.id = 205;
3
+ exports.ids = [205,601];
4
4
  exports.modules = {
5
5
 
6
- /***/ 5261:
6
+ /***/ 8205:
7
7
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
8
8
 
9
9
 
@@ -38,8 +38,8 @@ var ora = __webpack_require__(5344);
38
38
  var ora_default = /*#__PURE__*/__webpack_require__.n(ora);
39
39
  // EXTERNAL MODULE: ../../node_modules/.pnpm/multitars@1.0.0/node_modules/multitars/dist/multitars.mjs
40
40
  var multitars = __webpack_require__(912);
41
- // EXTERNAL MODULE: ../../node_modules/.pnpm/picomatch@2.3.1/node_modules/picomatch/index.js
42
- var picomatch = __webpack_require__(5675);
41
+ // EXTERNAL MODULE: ../../node_modules/.pnpm/picomatch@2.3.2/node_modules/picomatch/index.js
42
+ var picomatch = __webpack_require__(3268);
43
43
  var picomatch_default = /*#__PURE__*/__webpack_require__.n(picomatch);
44
44
  ;// CONCATENATED MODULE: ./src/createFileTransform.ts
45
45
 
@@ -121,7 +121,7 @@ function wrapFetchWithAssert(fetchFunction) {
121
121
  };
122
122
  }
123
123
  /** Export a fetch method that ensures fetch is available */
124
- const fetch = wrapFetchWithAssert(globalThis.fetch);
124
+ const fetch_fetch = wrapFetchWithAssert(globalThis.fetch);
125
125
 
126
126
  // EXTERNAL MODULE: ../../node_modules/.pnpm/@expo+spawn-async@1.7.2/node_modules/@expo/spawn-async/build/spawnAsync.js
127
127
  var spawnAsync = __webpack_require__(2229);
@@ -515,7 +515,7 @@ async function getGitHubRepoAsync(url) {
515
515
  // Support repos whose entire purpose is to be an example, e.g.
516
516
  // https://github.com/:owner/:my-cool-example-repo-name.
517
517
  if (t === undefined) {
518
- const response = await fetch(`https://api.github.com/repos/${owner}/${name}`);
518
+ const response = await fetch_fetch(`https://api.github.com/repos/${owner}/${name}`);
519
519
  if (!response.ok && response.status === 404) {
520
520
  // Private or non-existing repositories
521
521
  throw new Error(`GitHub repository not found for url: ${url}`);
@@ -536,12 +536,12 @@ async function getGitHubRepoAsync(url) {
536
536
  async function isValidGitHubRepoAsync(repo) {
537
537
  const contentsUrl = `https://api.github.com/repos/${repo.owner}/${repo.name}/contents`;
538
538
  const packagePath = `${repo.filePath ? `/${repo.filePath}` : ''}/package.json`;
539
- const response = await fetch(contentsUrl + packagePath + `?ref=${repo.branch}`);
539
+ const response = await fetch_fetch(contentsUrl + packagePath + `?ref=${repo.branch}`);
540
540
  return response.ok;
541
541
  }
542
542
  // See: https://github.com/expo/expo/blob/a5a6eecb082b2c7a7fc9956141738231c7df473f/packages/%40expo/cli/src/utils/npm.ts#L134-L139
543
543
  async function extractRemoteGitHubTarballAsync(url, repo, output, props) {
544
- const response = await fetch(url);
544
+ const response = await fetch_fetch(url);
545
545
  if (!response.ok)
546
546
  throw new Error(`Unexpected response: ${response.statusText} (${url})`);
547
547
  if (!response.body)
@@ -1014,7 +1014,7 @@ function logNewSection(title) {
1014
1014
  const Examples_debug = __webpack_require__(6675)('expo:init:template');
1015
1015
  /** List all existing examples directory from https://github.com/expo/examples. */
1016
1016
  async function listExamplesAsync() {
1017
- const response = await fetch('https://api.github.com/repos/expo/examples/contents');
1017
+ const response = await fetch_fetch('https://api.github.com/repos/expo/examples/contents');
1018
1018
  if (!response.ok) {
1019
1019
  throw new Error('Unexpected GitHub API response: https://github.com/expo/examples');
1020
1020
  }
@@ -1023,7 +1023,7 @@ async function listExamplesAsync() {
1023
1023
  }
1024
1024
  /** Fetch the metadata for the examples from https://github.com/expo/examples. This includes aliases and deprecated examples. */
1025
1025
  async function fetchMetadataAsync() {
1026
- const response = await fetch(`https://raw.githubusercontent.com/expo/examples/master/meta.json`);
1026
+ const response = await fetch_fetch(`https://raw.githubusercontent.com/expo/examples/master/meta.json`);
1027
1027
  if (!response.ok) {
1028
1028
  throw new Error(`Unexpected GitHub API response: ${response.status} - ${response.statusText}`);
1029
1029
  }
@@ -1031,7 +1031,7 @@ async function fetchMetadataAsync() {
1031
1031
  }
1032
1032
  /** Determine if an example exists, using only its name */
1033
1033
  async function hasExampleAsync(name) {
1034
- const response = await fetch(`https://api.github.com/repos/expo/examples/contents/${encodeURIComponent(name)}/package.json`);
1034
+ const response = await fetch_fetch(`https://api.github.com/repos/expo/examples/contents/${encodeURIComponent(name)}/package.json`);
1035
1035
  // Either ok or 404 responses are expected
1036
1036
  if (response.status === 404 || response.ok) {
1037
1037
  return response.ok;
@@ -1069,7 +1069,7 @@ async function promptExamplesAsync() {
1069
1069
  /** Download and move the selected example from https://github.com/expo/examples. */
1070
1070
  async function downloadAndExtractExampleAsync(root, name) {
1071
1071
  const projectName = external_path_default().basename(root);
1072
- const response = await fetch('https://codeload.github.com/expo/examples/tar.gz/master');
1072
+ const response = await fetch_fetch('https://codeload.github.com/expo/examples/tar.gz/master');
1073
1073
  if (!response.ok) {
1074
1074
  Examples_debug(`Failed to fetch the examples code, received status "${response.status}"`);
1075
1075
  throw new Error('Failed to fetch the examples code from https://github.com/expo/examples');
@@ -1167,6 +1167,175 @@ function generateAgentFiles(root) {
1167
1167
  }
1168
1168
  }
1169
1169
 
1170
+ ;// CONCATENATED MODULE: ./src/promptSdkVersion.ts
1171
+
1172
+
1173
+
1174
+
1175
+
1176
+
1177
+
1178
+ const promptSdkVersion_debug = __webpack_require__(6675)('expo:init:sdk');
1179
+ // SDKs without a `releaseNoteUrl` are canary/in-development. The top-level
1180
+ // `expoGoSdkVersion` reports the SDK currently shipping in store Expo Go and
1181
+ // is treated as optional — when absent, the "For learning with Expo Go" choice
1182
+ // is hidden.
1183
+ const VERSIONS_URL = 'https://api.expo.dev/v2/versions';
1184
+ async function fetchSdkVersionsAsync() {
1185
+ let json;
1186
+ try {
1187
+ const response = await fetch(VERSIONS_URL);
1188
+ if (!response.ok) {
1189
+ promptSdkVersion_debug(`versions endpoint returned ${response.status}`);
1190
+ return null;
1191
+ }
1192
+ json = (await response.json());
1193
+ }
1194
+ catch (error) {
1195
+ promptSdkVersion_debug('Failed to fetch versions endpoint:', error);
1196
+ return null;
1197
+ }
1198
+ const sdkVersions = json.sdkVersions ?? {};
1199
+ const available = Object.entries(sdkVersions)
1200
+ .filter(([, info]) => !!info.releaseNoteUrl && !info.isDeprecated)
1201
+ .map(([version]) => parseSdkMajor(version))
1202
+ .filter((major) => major != null)
1203
+ .sort((a, b) => b - a);
1204
+ const latest = available[0];
1205
+ if (latest == null) {
1206
+ return null;
1207
+ }
1208
+ return {
1209
+ latest,
1210
+ expoGoCompatible: parseSdkMajor(json.expoGoSdkVersion),
1211
+ available,
1212
+ };
1213
+ }
1214
+ function parseSdkMajor(version) {
1215
+ const major = parseInt(version?.split('.')[0] ?? '', 10);
1216
+ return Number.isFinite(major) ? major : null;
1217
+ }
1218
+ /**
1219
+ * If the resolved template is an Expo-published template without an explicit
1220
+ * SDK tag, prompt the user to pick which Expo SDK to use and return the
1221
+ * template name with the chosen SDK tag appended.
1222
+ *
1223
+ * Returns the template unchanged if the user is non-interactive, the template
1224
+ * already targets a specific version, or we can't reach the versions endpoint.
1225
+ */
1226
+ async function applySdkVersionToTemplateAsync(template, { yes, showAlternatives = true, projectName, }) {
1227
+ if (env.env.EXPO_BETA) {
1228
+ logCreatingProject(template, projectName);
1229
+ return template;
1230
+ }
1231
+ const [name, tag] = splitNpmNameAndTag(template);
1232
+ if (tag) {
1233
+ logCreatingProject(template, projectName);
1234
+ return template;
1235
+ }
1236
+ if (!isKnownExpoTemplate(name)) {
1237
+ logCreatingProject(template, projectName);
1238
+ return template;
1239
+ }
1240
+ const nonInteractive = yes || env.env.CI || !process.stdin.isTTY;
1241
+ // Non-interactive + user explicitly chose a template: fall through to that
1242
+ // template's npm `latest` dist-tag. No need to fetch the versions endpoint.
1243
+ if (nonInteractive && !showAlternatives) {
1244
+ logCreatingProject(template, projectName);
1245
+ return template;
1246
+ }
1247
+ const versions = await fetchSdkVersionsAsync();
1248
+ if (!versions) {
1249
+ logCreatingProject(template, projectName);
1250
+ return template;
1251
+ }
1252
+ // Non-interactive + default template: pin to the actual latest released SDK.
1253
+ if (nonInteractive) {
1254
+ const pinned = `${name}@sdk-${versions.latest}`;
1255
+ logCreatingProject(pinned, projectName);
1256
+ return pinned;
1257
+ }
1258
+ const selectedSdk = await promptSdkVersionAsync(versions, name, showAlternatives, projectName);
1259
+ if (selectedSdk == null) {
1260
+ logCreatingProject(template, projectName);
1261
+ return template;
1262
+ }
1263
+ return `${name}@sdk-${selectedSdk}`;
1264
+ }
1265
+ function logCreatingProject(template, projectName) {
1266
+ const subject = projectName ? source_default().cyan(projectName) : 'a project';
1267
+ console.log(source_default() `Creating ${subject} using the {cyan ${template}} template.\n`);
1268
+ }
1269
+ function isKnownExpoTemplate(name) {
1270
+ if (ALIASES.includes(name)) {
1271
+ return true;
1272
+ }
1273
+ // Short aliases like `default` and `blank` are expanded to `expo-template-*` later.
1274
+ return ALIASES.includes(`expo-template-${name}`);
1275
+ }
1276
+ async function promptSdkVersionAsync(versions, templateName, showAlternatives, projectName) {
1277
+ const { latest, expoGoCompatible, available } = versions;
1278
+ const choices = [
1279
+ {
1280
+ title: `Latest (SDK ${latest})`,
1281
+ value: latest,
1282
+ description: 'Recommended for most projects',
1283
+ },
1284
+ ];
1285
+ if (expoGoCompatible != null && expoGoCompatible !== latest) {
1286
+ choices.push({
1287
+ title: `For learning with Expo Go (SDK ${expoGoCompatible})`,
1288
+ value: expoGoCompatible,
1289
+ description: 'Compatible with Expo Go on App Store and Play Store',
1290
+ });
1291
+ }
1292
+ choices.push({ title: 'Other SDK version…', value: 'other' });
1293
+ const { answer } = await prompts_default()({
1294
+ type: 'select',
1295
+ name: 'answer',
1296
+ message: 'Select an Expo SDK version:',
1297
+ choices,
1298
+ });
1299
+ if (answer == null) {
1300
+ log/* Log */.tG.log();
1301
+ log/* Log */.tG.log(source_default() `Specify the SDK version, example: {cyan --template default@${latest}}`);
1302
+ process.exit(1);
1303
+ }
1304
+ let resolved;
1305
+ if (answer !== 'other') {
1306
+ resolved = answer;
1307
+ }
1308
+ else {
1309
+ const { sdkAnswer } = await prompts_default()({
1310
+ type: 'select',
1311
+ name: 'sdkAnswer',
1312
+ message: 'Select an SDK version:',
1313
+ choices: available.slice(0, 4).map((sdk) => ({
1314
+ title: `SDK ${sdk}`,
1315
+ value: sdk,
1316
+ })),
1317
+ });
1318
+ if (sdkAnswer == null) {
1319
+ log/* Log */.tG.log();
1320
+ log/* Log */.tG.log(source_default() `Specify the SDK version, example: {cyan --template default@${latest}}`);
1321
+ process.exit(1);
1322
+ }
1323
+ resolved = sdkAnswer;
1324
+ }
1325
+ const friendly = templateName.replace(/^expo-template-/, '');
1326
+ const subject = projectName ? source_default().cyan(projectName) : 'a project';
1327
+ console.log(source_default() `Creating ${subject} using the {cyan ${friendly}} template.`);
1328
+ if (showAlternatives) {
1329
+ const cmd = (0,resolvePackageManager/* formatSelfCommand */.fZ)();
1330
+ console.log();
1331
+ console.log(source_default().gray('Tip:'));
1332
+ console.log(` ${source_default().gray('•')} ${source_default().gray(cmd)} ${source_default().cyan('--template')} ${source_default().gray('to pick from other templates')}`);
1333
+ console.log(` ${source_default().gray('•')} ${source_default().gray(cmd)} ${source_default().cyan('--example')} ${source_default().gray('to explore')} ${source_default().gray.underline('https://github.com/expo/examples')}`);
1334
+ }
1335
+ console.log();
1336
+ return resolved;
1337
+ }
1338
+
1170
1339
  ;// CONCATENATED MODULE: ./src/utils/dir.ts
1171
1340
 
1172
1341
  // Any of these files are allowed to exist in the projectRoot
@@ -1374,6 +1543,7 @@ function withSectionLog(action, message) {
1374
1543
 
1375
1544
 
1376
1545
 
1546
+
1377
1547
  const createAsync_debug = __webpack_require__(6675)('expo:init:create');
1378
1548
  async function resolveProjectRootArgAsync(inputPath, { yes }) {
1379
1549
  if (!inputPath && yes) {
@@ -1425,15 +1595,13 @@ async function createTemplateAsync(inputPath, props) {
1425
1595
  }
1426
1596
  else {
1427
1597
  resolvedTemplate = props.template ?? null;
1428
- console.log(source_default() `Creating an Expo project using the {cyan ${resolvedTemplate ?? 'default'}} template.\n`);
1429
- if (!resolvedTemplate) {
1430
- console.log(source_default() `{gray To choose from all available templates ({underline https://github.com/expo/expo/tree/main/templates}) pass in the --template arg:}`);
1431
- console.log(source_default() ` {gray $} ${(0,resolvePackageManager/* formatSelfCommand */.fZ)()} {cyan --template}\n`);
1432
- console.log(source_default() `{gray To choose from all available examples ({underline https://github.com/expo/examples}) pass in the --example arg:}`);
1433
- console.log(source_default() ` {gray $} ${(0,resolvePackageManager/* formatSelfCommand */.fZ)()} {cyan --example}\n`);
1434
- }
1435
1598
  }
1436
1599
  const projectRoot = await resolveProjectRootArgAsync(inputPath, props);
1600
+ resolvedTemplate = await applySdkVersionToTemplateAsync(resolvedTemplate ?? 'expo-template-default', {
1601
+ yes: props.yes,
1602
+ showAlternatives: !props.template,
1603
+ projectName: external_path_default().basename(projectRoot),
1604
+ });
1437
1605
  await external_fs_default().promises.mkdir(projectRoot, { recursive: true });
1438
1606
  // Setup telemetry attempt after a reasonable point.
1439
1607
  // Telemetry is used to ensure safe feature deprecation since the command is unversioned.
@@ -1506,9 +1674,8 @@ async function createExampleAsync(inputPath, props) {
1506
1674
  }
1507
1675
  // Ensure the example exists after performing remapping and deprecation checks.
1508
1676
  await ensureExampleExists(resolvedExample);
1509
- // Log the status after aliases and deprecated examples are handled.
1510
- console.log(source_default() `Creating an Expo project using the {cyan ${resolvedExample}} example.\n`);
1511
1677
  const projectRoot = await resolveProjectRootArgAsync(inputPath, props);
1678
+ console.log(source_default() `Creating {cyan ${external_path_default().basename(projectRoot)}} using the {cyan ${resolvedExample}} example.\n`);
1512
1679
  await external_fs_default().promises.mkdir(projectRoot, { recursive: true });
1513
1680
  // Setup telemetry attempt after a reasonable point.
1514
1681
  // Telemetry is used to ensure safe feature deprecation since the command is unversioned.
@@ -1,5 +1,5 @@
1
- exports.id = 94;
2
- exports.ids = [94];
1
+ exports.id = 525;
2
+ exports.ids = [525];
3
3
  exports.modules = {
4
4
 
5
5
  /***/ 2671:
@@ -2549,18 +2549,18 @@ module.exports.promise = (action, options) => {
2549
2549
 
2550
2550
  /***/ }),
2551
2551
 
2552
- /***/ 5675:
2552
+ /***/ 3268:
2553
2553
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2554
2554
 
2555
2555
  "use strict";
2556
2556
 
2557
2557
 
2558
- module.exports = __webpack_require__(3193);
2558
+ module.exports = __webpack_require__(1614);
2559
2559
 
2560
2560
 
2561
2561
  /***/ }),
2562
2562
 
2563
- /***/ 7054:
2563
+ /***/ 1237:
2564
2564
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2565
2565
 
2566
2566
  "use strict";
@@ -2570,6 +2570,8 @@ const path = __webpack_require__(6928);
2570
2570
  const WIN_SLASH = '\\\\/';
2571
2571
  const WIN_NO_SLASH = `[^${WIN_SLASH}]`;
2572
2572
 
2573
+ const DEFAULT_MAX_EXTGLOB_RECURSION = 0;
2574
+
2573
2575
  /**
2574
2576
  * Posix glob regex
2575
2577
  */
@@ -2633,6 +2635,7 @@ const WINDOWS_CHARS = {
2633
2635
  */
2634
2636
 
2635
2637
  const POSIX_REGEX_SOURCE = {
2638
+ __proto__: null,
2636
2639
  alnum: 'a-zA-Z0-9',
2637
2640
  alpha: 'a-zA-Z',
2638
2641
  ascii: '\\x00-\\x7F',
@@ -2650,6 +2653,7 @@ const POSIX_REGEX_SOURCE = {
2650
2653
  };
2651
2654
 
2652
2655
  module.exports = {
2656
+ DEFAULT_MAX_EXTGLOB_RECURSION,
2653
2657
  MAX_LENGTH: 1024 * 64,
2654
2658
  POSIX_REGEX_SOURCE,
2655
2659
 
@@ -2663,6 +2667,7 @@ module.exports = {
2663
2667
 
2664
2668
  // Replace globs with equivalent patterns to reduce parsing time.
2665
2669
  REPLACEMENTS: {
2670
+ __proto__: null,
2666
2671
  '***': '*',
2667
2672
  '**/**': '**',
2668
2673
  '**/**/**': '**'
@@ -2747,14 +2752,14 @@ module.exports = {
2747
2752
 
2748
2753
  /***/ }),
2749
2754
 
2750
- /***/ 4356:
2755
+ /***/ 51:
2751
2756
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
2752
2757
 
2753
2758
  "use strict";
2754
2759
 
2755
2760
 
2756
- const constants = __webpack_require__(7054);
2757
- const utils = __webpack_require__(7910);
2761
+ const constants = __webpack_require__(1237);
2762
+ const utils = __webpack_require__(3753);
2758
2763
 
2759
2764
  /**
2760
2765
  * Constants
@@ -2798,6 +2803,277 @@ const syntaxError = (type, char) => {
2798
2803
  return `Missing ${type}: "${char}" - use "\\\\${char}" to match literal characters`;
2799
2804
  };
2800
2805
 
2806
+ const splitTopLevel = input => {
2807
+ const parts = [];
2808
+ let bracket = 0;
2809
+ let paren = 0;
2810
+ let quote = 0;
2811
+ let value = '';
2812
+ let escaped = false;
2813
+
2814
+ for (const ch of input) {
2815
+ if (escaped === true) {
2816
+ value += ch;
2817
+ escaped = false;
2818
+ continue;
2819
+ }
2820
+
2821
+ if (ch === '\\') {
2822
+ value += ch;
2823
+ escaped = true;
2824
+ continue;
2825
+ }
2826
+
2827
+ if (ch === '"') {
2828
+ quote = quote === 1 ? 0 : 1;
2829
+ value += ch;
2830
+ continue;
2831
+ }
2832
+
2833
+ if (quote === 0) {
2834
+ if (ch === '[') {
2835
+ bracket++;
2836
+ } else if (ch === ']' && bracket > 0) {
2837
+ bracket--;
2838
+ } else if (bracket === 0) {
2839
+ if (ch === '(') {
2840
+ paren++;
2841
+ } else if (ch === ')' && paren > 0) {
2842
+ paren--;
2843
+ } else if (ch === '|' && paren === 0) {
2844
+ parts.push(value);
2845
+ value = '';
2846
+ continue;
2847
+ }
2848
+ }
2849
+ }
2850
+
2851
+ value += ch;
2852
+ }
2853
+
2854
+ parts.push(value);
2855
+ return parts;
2856
+ };
2857
+
2858
+ const isPlainBranch = branch => {
2859
+ let escaped = false;
2860
+
2861
+ for (const ch of branch) {
2862
+ if (escaped === true) {
2863
+ escaped = false;
2864
+ continue;
2865
+ }
2866
+
2867
+ if (ch === '\\') {
2868
+ escaped = true;
2869
+ continue;
2870
+ }
2871
+
2872
+ if (/[?*+@!()[\]{}]/.test(ch)) {
2873
+ return false;
2874
+ }
2875
+ }
2876
+
2877
+ return true;
2878
+ };
2879
+
2880
+ const normalizeSimpleBranch = branch => {
2881
+ let value = branch.trim();
2882
+ let changed = true;
2883
+
2884
+ while (changed === true) {
2885
+ changed = false;
2886
+
2887
+ if (/^@\([^\\()[\]{}|]+\)$/.test(value)) {
2888
+ value = value.slice(2, -1);
2889
+ changed = true;
2890
+ }
2891
+ }
2892
+
2893
+ if (!isPlainBranch(value)) {
2894
+ return;
2895
+ }
2896
+
2897
+ return value.replace(/\\(.)/g, '$1');
2898
+ };
2899
+
2900
+ const hasRepeatedCharPrefixOverlap = branches => {
2901
+ const values = branches.map(normalizeSimpleBranch).filter(Boolean);
2902
+
2903
+ for (let i = 0; i < values.length; i++) {
2904
+ for (let j = i + 1; j < values.length; j++) {
2905
+ const a = values[i];
2906
+ const b = values[j];
2907
+ const char = a[0];
2908
+
2909
+ if (!char || a !== char.repeat(a.length) || b !== char.repeat(b.length)) {
2910
+ continue;
2911
+ }
2912
+
2913
+ if (a === b || a.startsWith(b) || b.startsWith(a)) {
2914
+ return true;
2915
+ }
2916
+ }
2917
+ }
2918
+
2919
+ return false;
2920
+ };
2921
+
2922
+ const parseRepeatedExtglob = (pattern, requireEnd = true) => {
2923
+ if ((pattern[0] !== '+' && pattern[0] !== '*') || pattern[1] !== '(') {
2924
+ return;
2925
+ }
2926
+
2927
+ let bracket = 0;
2928
+ let paren = 0;
2929
+ let quote = 0;
2930
+ let escaped = false;
2931
+
2932
+ for (let i = 1; i < pattern.length; i++) {
2933
+ const ch = pattern[i];
2934
+
2935
+ if (escaped === true) {
2936
+ escaped = false;
2937
+ continue;
2938
+ }
2939
+
2940
+ if (ch === '\\') {
2941
+ escaped = true;
2942
+ continue;
2943
+ }
2944
+
2945
+ if (ch === '"') {
2946
+ quote = quote === 1 ? 0 : 1;
2947
+ continue;
2948
+ }
2949
+
2950
+ if (quote === 1) {
2951
+ continue;
2952
+ }
2953
+
2954
+ if (ch === '[') {
2955
+ bracket++;
2956
+ continue;
2957
+ }
2958
+
2959
+ if (ch === ']' && bracket > 0) {
2960
+ bracket--;
2961
+ continue;
2962
+ }
2963
+
2964
+ if (bracket > 0) {
2965
+ continue;
2966
+ }
2967
+
2968
+ if (ch === '(') {
2969
+ paren++;
2970
+ continue;
2971
+ }
2972
+
2973
+ if (ch === ')') {
2974
+ paren--;
2975
+
2976
+ if (paren === 0) {
2977
+ if (requireEnd === true && i !== pattern.length - 1) {
2978
+ return;
2979
+ }
2980
+
2981
+ return {
2982
+ type: pattern[0],
2983
+ body: pattern.slice(2, i),
2984
+ end: i
2985
+ };
2986
+ }
2987
+ }
2988
+ }
2989
+ };
2990
+
2991
+ const getStarExtglobSequenceOutput = pattern => {
2992
+ let index = 0;
2993
+ const chars = [];
2994
+
2995
+ while (index < pattern.length) {
2996
+ const match = parseRepeatedExtglob(pattern.slice(index), false);
2997
+
2998
+ if (!match || match.type !== '*') {
2999
+ return;
3000
+ }
3001
+
3002
+ const branches = splitTopLevel(match.body).map(branch => branch.trim());
3003
+ if (branches.length !== 1) {
3004
+ return;
3005
+ }
3006
+
3007
+ const branch = normalizeSimpleBranch(branches[0]);
3008
+ if (!branch || branch.length !== 1) {
3009
+ return;
3010
+ }
3011
+
3012
+ chars.push(branch);
3013
+ index += match.end + 1;
3014
+ }
3015
+
3016
+ if (chars.length < 1) {
3017
+ return;
3018
+ }
3019
+
3020
+ const source = chars.length === 1
3021
+ ? utils.escapeRegex(chars[0])
3022
+ : `[${chars.map(ch => utils.escapeRegex(ch)).join('')}]`;
3023
+
3024
+ return `${source}*`;
3025
+ };
3026
+
3027
+ const repeatedExtglobRecursion = pattern => {
3028
+ let depth = 0;
3029
+ let value = pattern.trim();
3030
+ let match = parseRepeatedExtglob(value);
3031
+
3032
+ while (match) {
3033
+ depth++;
3034
+ value = match.body.trim();
3035
+ match = parseRepeatedExtglob(value);
3036
+ }
3037
+
3038
+ return depth;
3039
+ };
3040
+
3041
+ const analyzeRepeatedExtglob = (body, options) => {
3042
+ if (options.maxExtglobRecursion === false) {
3043
+ return { risky: false };
3044
+ }
3045
+
3046
+ const max =
3047
+ typeof options.maxExtglobRecursion === 'number'
3048
+ ? options.maxExtglobRecursion
3049
+ : constants.DEFAULT_MAX_EXTGLOB_RECURSION;
3050
+
3051
+ const branches = splitTopLevel(body).map(branch => branch.trim());
3052
+
3053
+ if (branches.length > 1) {
3054
+ if (
3055
+ branches.some(branch => branch === '') ||
3056
+ branches.some(branch => /^[*?]+$/.test(branch)) ||
3057
+ hasRepeatedCharPrefixOverlap(branches)
3058
+ ) {
3059
+ return { risky: true };
3060
+ }
3061
+ }
3062
+
3063
+ for (const branch of branches) {
3064
+ const safeOutput = getStarExtglobSequenceOutput(branch);
3065
+ if (safeOutput) {
3066
+ return { risky: true, safeOutput };
3067
+ }
3068
+
3069
+ if (repeatedExtglobRecursion(branch) > max) {
3070
+ return { risky: true };
3071
+ }
3072
+ }
3073
+
3074
+ return { risky: false };
3075
+ };
3076
+
2801
3077
  /**
2802
3078
  * Parse the given input string.
2803
3079
  * @param {String} input
@@ -2979,6 +3255,8 @@ const parse = (input, options) => {
2979
3255
  token.prev = prev;
2980
3256
  token.parens = state.parens;
2981
3257
  token.output = state.output;
3258
+ token.startIndex = state.index;
3259
+ token.tokensIndex = tokens.length;
2982
3260
  const output = (opts.capture ? '(' : '') + token.open;
2983
3261
 
2984
3262
  increment('parens');
@@ -2988,6 +3266,34 @@ const parse = (input, options) => {
2988
3266
  };
2989
3267
 
2990
3268
  const extglobClose = token => {
3269
+ const literal = input.slice(token.startIndex, state.index + 1);
3270
+ const body = input.slice(token.startIndex + 2, state.index);
3271
+ const analysis = analyzeRepeatedExtglob(body, opts);
3272
+
3273
+ if ((token.type === 'plus' || token.type === 'star') && analysis.risky) {
3274
+ const safeOutput = analysis.safeOutput
3275
+ ? (token.output ? '' : ONE_CHAR) + (opts.capture ? `(${analysis.safeOutput})` : analysis.safeOutput)
3276
+ : undefined;
3277
+ const open = tokens[token.tokensIndex];
3278
+
3279
+ open.type = 'text';
3280
+ open.value = literal;
3281
+ open.output = safeOutput || utils.escapeRegex(literal);
3282
+
3283
+ for (let i = token.tokensIndex + 1; i < tokens.length; i++) {
3284
+ tokens[i].value = '';
3285
+ tokens[i].output = '';
3286
+ delete tokens[i].suffix;
3287
+ }
3288
+
3289
+ state.output = token.output + open.output;
3290
+ state.backtrack = true;
3291
+
3292
+ push({ type: 'paren', extglob: true, value, output: '' });
3293
+ decrement('parens');
3294
+ return;
3295
+ }
3296
+
2991
3297
  let output = token.close + (opts.capture ? ')' : '');
2992
3298
  let rest;
2993
3299
 
@@ -3846,17 +4152,17 @@ module.exports = parse;
3846
4152
 
3847
4153
  /***/ }),
3848
4154
 
3849
- /***/ 3193:
4155
+ /***/ 1614:
3850
4156
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
3851
4157
 
3852
4158
  "use strict";
3853
4159
 
3854
4160
 
3855
4161
  const path = __webpack_require__(6928);
3856
- const scan = __webpack_require__(5330);
3857
- const parse = __webpack_require__(4356);
3858
- const utils = __webpack_require__(7910);
3859
- const constants = __webpack_require__(7054);
4162
+ const scan = __webpack_require__(3999);
4163
+ const parse = __webpack_require__(51);
4164
+ const utils = __webpack_require__(3753);
4165
+ const constants = __webpack_require__(1237);
3860
4166
  const isObject = val => val && typeof val === 'object' && !Array.isArray(val);
3861
4167
 
3862
4168
  /**
@@ -4196,13 +4502,13 @@ module.exports = picomatch;
4196
4502
 
4197
4503
  /***/ }),
4198
4504
 
4199
- /***/ 5330:
4505
+ /***/ 3999:
4200
4506
  /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
4201
4507
 
4202
4508
  "use strict";
4203
4509
 
4204
4510
 
4205
- const utils = __webpack_require__(7910);
4511
+ const utils = __webpack_require__(3753);
4206
4512
  const {
4207
4513
  CHAR_ASTERISK, /* * */
4208
4514
  CHAR_AT, /* @ */
@@ -4219,7 +4525,7 @@ const {
4219
4525
  CHAR_RIGHT_CURLY_BRACE, /* } */
4220
4526
  CHAR_RIGHT_PARENTHESES, /* ) */
4221
4527
  CHAR_RIGHT_SQUARE_BRACKET /* ] */
4222
- } = __webpack_require__(7054);
4528
+ } = __webpack_require__(1237);
4223
4529
 
4224
4530
  const isPathSeparator = code => {
4225
4531
  return code === CHAR_FORWARD_SLASH || code === CHAR_BACKWARD_SLASH;
@@ -4595,7 +4901,7 @@ module.exports = scan;
4595
4901
 
4596
4902
  /***/ }),
4597
4903
 
4598
- /***/ 7910:
4904
+ /***/ 3753:
4599
4905
  /***/ ((__unused_webpack_module, exports, __webpack_require__) => {
4600
4906
 
4601
4907
  "use strict";
@@ -4608,7 +4914,7 @@ const {
4608
4914
  REGEX_REMOVE_BACKSLASH,
4609
4915
  REGEX_SPECIAL_CHARS,
4610
4916
  REGEX_SPECIAL_CHARS_GLOBAL
4611
- } = __webpack_require__(7054);
4917
+ } = __webpack_require__(1237);
4612
4918
 
4613
4919
  exports.isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val);
4614
4920
  exports.hasRegexChars = str => REGEX_SPECIAL_CHARS.test(str);
package/build/index.js CHANGED
@@ -46,4 +46,4 @@ const n=r(5680);const toRegexRange=(e,t,r)=>{if(n(e)===false){throw new TypeErro
46
46
  {bold yarn:} {cyan yarn create ${e}}
47
47
  {bold pnpm:} {cyan pnpm create ${e}}
48
48
  {bold bun:} {cyan bun create ${e}}
49
- `)}const{AnalyticsEventPhases:c,AnalyticsEventTypes:l,flushAsync:p,track:h}=await r.e(601).then(r.bind(r,601));try{const s=await resolveStringOrBooleanArgsAsync(e,t,{"--template":Boolean,"--example":Boolean,"-t":"--template","-e":"--example"});f(`Default args:\n%O`,n);f(`Parsed:\n%O`,s);const{createAsync:i}=await Promise.all([r.e(94),r.e(261)]).then(r.bind(r,5261));await i(s.projectRoot,{yes:!!n["--yes"],template:s.args["--template"],example:s.args["--example"],install:!n["--no-install"],agentsMd:!n["--no-agents-md"]});h({event:l.CREATE_EXPO_APP,properties:{phase:c.SUCCESS}});await p()}catch(e){if(!(e instanceof o.R)){u.tG.exception(e)}h({event:l.CREATE_EXPO_APP,properties:{phase:c.FAIL,message:e.cause}});await p().finally((()=>{process.exit(e.code||1)}))}finally{const e=await(await r.e(517).then(r.bind(r,7517))).default;await e()}}run()},6467:(e,t,r)=>{"use strict";r.d(t,{V:()=>n});const n=r(8330).name},6725:(e,t,r)=>{"use strict";r.d(t,{R:()=>ExitError});class ExitError extends Error{cause;code;constructor(e,t){super(e instanceof Error?e.message:e);this.cause=e;this.code=t}}},1545:(e,t,r)=>{"use strict";r.d(t,{NS:()=>exit,tG:()=>o});var n=r(2314);var s=r.n(n);var i=r(6725);function error(...e){console.error(...e)}function exception(e){const{env:t}=r(4342);error(s().red(e.toString())+(t.EXPO_DEBUG?"\n"+s().gray(e.stack):""))}function log(...e){console.log(...e)}function exit(e,t=1){if(e instanceof Error){exception(e)}else if(e){if(t===0){log(e)}else{error(e)}}if(t!==0){throw new i.R(e,t)}process.exit(t)}const o={error:error,exception:exception,log:log,exit:exit}},9560:(e,t,r)=>{"use strict";r.d(t,{DC:()=>installDependenciesAsync,MZ:()=>configurePackageManager,Wq:()=>formatRunCommand,_c:()=>resolvePackageManager,fZ:()=>formatSelfCommand});var n=r(6268);var s=r.n(n);var i=r(5317);var o=r.n(i);var u=r(6467);const a=r(6675)("expo:init:resolvePackageManager");function resolvePackageManager(){const e=process.env.npm_config_user_agent;a("npm_config_user_agent:",e);if(e?.startsWith("yarn")){return"yarn"}else if(e?.startsWith("pnpm")){return"pnpm"}else if(e?.startsWith("bun")){return"bun"}else if(e?.startsWith("npm")){return"npm"}if(isPackageManagerAvailable("yarn")){return"yarn"}else if(isPackageManagerAvailable("pnpm")){return"pnpm"}else if(isPackageManagerAvailable("bun")){return"bun"}return"npm"}function isPackageManagerAvailable(e){try{(0,i.execSync)(`${e} --version`,{stdio:"ignore"});return true}catch{}return false}function formatRunCommand(e,t){switch(e){case"pnpm":return`pnpm run ${t}`;case"yarn":return`yarn ${t}`;case"bun":return`bun run ${t}`;case"npm":default:return`npm run ${t}`}}function formatSelfCommand(){const e=resolvePackageManager();switch(e){case"pnpm":return`pnpx ${u.V}`;case"bun":return`bunx ${u.V}`;case"yarn":case"npm":default:return`npx ${u.V}`}}function createPackageManager(e,t){switch(e){case"yarn":return new n.YarnPackageManager(t);case"pnpm":return new n.PnpmPackageManager(t);case"bun":return new n.BunPackageManager(t);case"npm":default:return new n.NpmPackageManager(t)}}async function installDependenciesAsync(e,t,r={silent:false}){await createPackageManager(t,{cwd:e,silent:r.silent}).installAsync()}async function configurePackageManager(e,t,r={silent:false}){const n=createPackageManager(t,{cwd:e,...r});switch(n.name){case"yarn":{const e=await n.versionAsync();const t=parseInt(e.split(".")[0]??"",10);if(t>=2){await n.runAsync(["config","set","nodeLinker","node-modules"])}break}}}},4342:(e,t,r)=>{"use strict";r.r(t);r.d(t,{env:()=>i});var n=r(277);var s=r.n(n);class Env{get EXPO_DEBUG(){return(0,n.boolish)("EXPO_DEBUG",false)}get EXPO_BETA(){return(0,n.boolish)("EXPO_BETA",false)}get CI(){return(0,n.boolish)("CI",false)}get EXPO_NO_CACHE(){return(0,n.boolish)("EXPO_NO_CACHE",false)}get EXPO_NO_TELEMETRY(){return(0,n.boolish)("EXPO_NO_TELEMETRY",false)}}const i=new Env},2613:e=>{"use strict";e.exports=require("assert")},181:e=>{"use strict";e.exports=require("buffer")},5317:e=>{"use strict";e.exports=require("child_process")},6982:e=>{"use strict";e.exports=require("crypto")},2250:e=>{"use strict";e.exports=require("dns")},4434:e=>{"use strict";e.exports=require("events")},9896:e=>{"use strict";e.exports=require("fs")},8611:e=>{"use strict";e.exports=require("http")},5692:e=>{"use strict";e.exports=require("https")},3339:e=>{"use strict";e.exports=require("module")},5217:e=>{"use strict";e.exports=require("node:crypto")},8474:e=>{"use strict";e.exports=require("node:events")},3024:e=>{"use strict";e.exports=require("node:fs")},1455:e=>{"use strict";e.exports=require("node:fs/promises")},6760:e=>{"use strict";e.exports=require("node:path")},1708:e=>{"use strict";e.exports=require("node:process")},7075:e=>{"use strict";e.exports=require("node:stream")},6193:e=>{"use strict";e.exports=require("node:string_decoder")},3136:e=>{"use strict";e.exports=require("node:url")},857:e=>{"use strict";e.exports=require("os")},6928:e=>{"use strict";e.exports=require("path")},3785:e=>{"use strict";e.exports=require("readline")},2203:e=>{"use strict";e.exports=require("stream")},2018:e=>{"use strict";e.exports=require("tty")},7016:e=>{"use strict";e.exports=require("url")},9023:e=>{"use strict";e.exports=require("util")},5112:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});var n=r(6831);var s=r(7815);var i=r(8740);function isColorSupported(){return typeof process==="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?false:n.isColorSupported}const compose=(e,t)=>r=>e(t(r));function buildDefs(e){return{keyword:e.cyan,capitalized:e.yellow,jsxIdentifier:e.yellow,punctuator:e.yellow,number:e.magenta,string:e.green,regex:e.magenta,comment:e.gray,invalid:compose(compose(e.white,e.bgRed),e.bold),gutter:e.gray,marker:compose(e.red,e.bold),message:compose(e.red,e.bold),reset:e.reset}}const o=buildDefs(n.createColors(true));const u=buildDefs(n.createColors(false));function getDefs(e){return e?o:u}const a=new Set(["as","async","from","get","of","set"]);const c=/\r\n|[\n\r\u2028\u2029]/;const l=/^[()[\]{}]$/;let f;const p=/^[a-z][\w-]*$/i;const getTokenType=function(e,t,r){if(e.type==="name"){const n=e.value;if(i.isKeyword(n)||i.isStrictReservedWord(n,true)||a.has(n)){return"keyword"}if(p.test(n)&&(r[t-1]==="<"||r.slice(t-2,t)==="</")){return"jsxIdentifier"}const s=String.fromCodePoint(n.codePointAt(0));if(s!==s.toLowerCase()){return"capitalized"}}if(e.type==="punctuator"&&l.test(e.value)){return"bracket"}if(e.type==="invalid"&&(e.value==="@"||e.value==="#")){return"punctuator"}return e.type};f=function*(e){let t;while(t=s.default.exec(e)){const r=s.matchToToken(t);yield{type:getTokenType(r,t.index,e),value:r.value}}};function highlight(e){if(e==="")return"";const t=getDefs(true);let r="";for(const{type:n,value:s}of f(e)){if(n in t){r+=s.split(c).map((e=>t[n](e))).join("\n")}else{r+=s}}return r}let h=false;const d=/\r\n|[\n\r\u2028\u2029]/;function getMarkerLines(e,t,r,n){const s=Object.assign({column:0,line:-1},e.start);const i=Object.assign({},s,e.end);const{linesAbove:o=2,linesBelow:u=3}=r||{};const a=s.line-n;const c=s.column;const l=i.line-n;const f=i.column;let p=Math.max(a-(o+1),0);let h=Math.min(t.length,l+u);if(a===-1){p=0}if(l===-1){h=t.length}const d=l-a;const g={};if(d){for(let e=0;e<=d;e++){const r=e+a;if(!c){g[r]=true}else if(e===0){const e=t[r-1].length;g[r]=[c,e-c+1]}else if(e===d){g[r]=[0,f]}else{const n=t[r-e].length;g[r]=[0,n]}}}else{if(c===f){if(c){g[a]=[c,0]}else{g[a]=true}}else{g[a]=[c,f-c]}}return{start:p,end:h,markerLines:g}}function codeFrameColumns(e,t,r={}){const n=r.forceColor||isColorSupported()&&r.highlightCode;const s=(r.startLine||1)-1;const i=getDefs(n);const o=e.split(d);const{start:u,end:a,markerLines:c}=getMarkerLines(t,o,r,s);const l=t.start&&typeof t.start.column==="number";const f=String(a+s).length;const p=n?highlight(e):e;let h=p.split(d,a).slice(u,a).map(((e,t)=>{const n=u+1+t;const o=` ${n+s}`.slice(-f);const a=` ${o} |`;const l=c[n];const p=!c[n+1];if(l){let t="";if(Array.isArray(l)){const n=e.slice(0,Math.max(l[0]-1,0)).replace(/[^\t]/g," ");const s=l[1]||1;t=["\n ",i.gutter(a.replace(/\d/g," "))," ",n,i.marker("^").repeat(s)].join("");if(p&&r.message){t+=" "+i.message(r.message)}}return[i.marker(">"),i.gutter(a),e.length>0?` ${e}`:"",t].join("")}else{return` ${i.gutter(a)}${e.length>0?` ${e}`:""}`}})).join("\n");if(r.message&&!l){h=`${" ".repeat(f+1)}${r.message}\n${h}`}if(n){return i.reset(h)}else{return h}}function index(e,t,r,n={}){if(!h){h=true;const e="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning){process.emitWarning(e,"DeprecationWarning")}else{const t=new Error(e);t.name="DeprecationWarning";console.warn(new Error(e))}}r=Math.max(r,0);const s={start:{column:r,line:t}};return codeFrameColumns(e,s,n)}t.codeFrameColumns=codeFrameColumns;t["default"]=index;t.highlight=highlight},3357:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.isIdentifierChar=isIdentifierChar;t.isIdentifierName=isIdentifierName;t.isIdentifierStart=isIdentifierStart;let r="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-࢏ࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚ౜ౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽ೜-ೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲊᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-Ƛ꟱-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ";let n="·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛ࢗ-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ೳഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-໎໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ-᫝᫠-᫫ᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‌‍‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯・꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_・";const s=new RegExp("["+r+"]");const i=new RegExp("["+r+n+"]");r=n=null;const o=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,4,51,13,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,7,25,39,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,39,27,10,22,251,41,7,1,17,5,57,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,24,43,261,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,33,24,3,24,45,74,6,0,67,12,65,1,2,0,15,4,10,7381,42,31,98,114,8702,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,229,29,3,0,208,30,2,2,2,1,2,6,3,4,10,1,225,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4381,3,5773,3,7472,16,621,2467,541,1507,4938,6,8489];const u=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,78,5,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,199,7,137,9,54,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,55,9,266,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,245,1,2,9,233,0,3,0,8,1,6,0,475,6,110,6,6,9,4759,9,787719,239];function isInAstralSet(e,t){let r=65536;for(let n=0,s=t.length;n<s;n+=2){r+=t[n];if(r>e)return false;r+=t[n+1];if(r>=e)return true}return false}function isIdentifierStart(e){if(e<65)return e===36;if(e<=90)return true;if(e<97)return e===95;if(e<=122)return true;if(e<=65535){return e>=170&&s.test(String.fromCharCode(e))}return isInAstralSet(e,o)}function isIdentifierChar(e){if(e<48)return e===36;if(e<58)return true;if(e<65)return false;if(e<=90)return true;if(e<97)return e===95;if(e<=122)return true;if(e<=65535){return e>=170&&i.test(String.fromCharCode(e))}return isInAstralSet(e,o)||isInAstralSet(e,u)}function isIdentifierName(e){let t=true;for(let r=0;r<e.length;r++){let n=e.charCodeAt(r);if((n&64512)===55296&&r+1<e.length){const t=e.charCodeAt(++r);if((t&64512)===56320){n=65536+((n&1023)<<10)+(t&1023)}}if(t){t=false;if(!isIdentifierStart(n)){return false}}else if(!isIdentifierChar(n)){return false}}return!t}},8740:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});Object.defineProperty(t,"isIdentifierChar",{enumerable:true,get:function(){return n.isIdentifierChar}});Object.defineProperty(t,"isIdentifierName",{enumerable:true,get:function(){return n.isIdentifierName}});Object.defineProperty(t,"isIdentifierStart",{enumerable:true,get:function(){return n.isIdentifierStart}});Object.defineProperty(t,"isKeyword",{enumerable:true,get:function(){return s.isKeyword}});Object.defineProperty(t,"isReservedWord",{enumerable:true,get:function(){return s.isReservedWord}});Object.defineProperty(t,"isStrictBindOnlyReservedWord",{enumerable:true,get:function(){return s.isStrictBindOnlyReservedWord}});Object.defineProperty(t,"isStrictBindReservedWord",{enumerable:true,get:function(){return s.isStrictBindReservedWord}});Object.defineProperty(t,"isStrictReservedWord",{enumerable:true,get:function(){return s.isStrictReservedWord}});var n=r(3357);var s=r(1391)},1391:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.isKeyword=isKeyword;t.isReservedWord=isReservedWord;t.isStrictBindOnlyReservedWord=isStrictBindOnlyReservedWord;t.isStrictBindReservedWord=isStrictBindReservedWord;t.isStrictReservedWord=isStrictReservedWord;const r={keyword:["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]};const n=new Set(r.keyword);const s=new Set(r.strict);const i=new Set(r.strictBind);function isReservedWord(e,t){return t&&e==="await"||e==="enum"}function isStrictReservedWord(e,t){return isReservedWord(e,t)||s.has(e)}function isStrictBindOnlyReservedWord(e){return i.has(e)}function isStrictBindReservedWord(e,t){return isStrictReservedWord(e,t)||isStrictBindOnlyReservedWord(e)}function isKeyword(e){return n.has(e)}},5934:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.LRUCache=void 0;const r=typeof performance==="object"&&performance&&typeof performance.now==="function"?performance:Date;const n=new Set;const s=typeof process==="object"&&!!process?process:{};const emitWarning=(e,t,r,n)=>{typeof s.emitWarning==="function"?s.emitWarning(e,t,r,n):console.error(`[${r}] ${t}: ${e}`)};let i=globalThis.AbortController;let o=globalThis.AbortSignal;if(typeof i==="undefined"){o=class AbortSignal{onabort;_onabort=[];reason;aborted=false;addEventListener(e,t){this._onabort.push(t)}};i=class AbortController{constructor(){warnACPolyfill()}signal=new o;abort(e){if(this.signal.aborted)return;this.signal.reason=e;this.signal.aborted=true;for(const t of this.signal._onabort){t(e)}this.signal.onabort?.(e)}};let e=s.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1";const warnACPolyfill=()=>{if(!e)return;e=false;emitWarning("AbortController is not defined. If using lru-cache in "+"node 14, load an AbortController polyfill from the "+"`node-abort-controller` package. A minimal polyfill is "+"provided for use by LRUCache.fetch(), but it should not be "+"relied upon in other contexts (eg, passing it to other APIs that "+"use AbortController/AbortSignal might have undesirable effects). "+"You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",warnACPolyfill)}}const shouldWarn=e=>!n.has(e);const u=Symbol("type");const isPosInt=e=>e&&e===Math.floor(e)&&e>0&&isFinite(e);const getUintArray=e=>!isPosInt(e)?null:e<=Math.pow(2,8)?Uint8Array:e<=Math.pow(2,16)?Uint16Array:e<=Math.pow(2,32)?Uint32Array:e<=Number.MAX_SAFE_INTEGER?ZeroArray:null;class ZeroArray extends Array{constructor(e){super(e);this.fill(0)}}class Stack{heap;length;static#n=false;static create(e){const t=getUintArray(e);if(!t)return[];Stack.#n=true;const r=new Stack(e,t);Stack.#n=false;return r}constructor(e,t){if(!Stack.#n){throw new TypeError("instantiate Stack using Stack.create(n)")}this.heap=new t(e);this.length=0}push(e){this.heap[this.length++]=e}pop(){return this.heap[--this.length]}}class LRUCache{#s;#i;#o;#u;#a;#c;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#l;#f;#p;#h;#d;#g;#m;#D;#A;#E;#y;#C;#w;#b;#v;#F;#_;static unsafeExposeInternals(e){return{starts:e.#w,ttls:e.#b,sizes:e.#C,keyMap:e.#p,keyList:e.#h,valList:e.#d,next:e.#g,prev:e.#m,get head(){return e.#D},get tail(){return e.#A},free:e.#E,isBackgroundFetch:t=>e.#S(t),backgroundFetch:(t,r,n,s)=>e.#x(t,r,n,s),moveToTail:t=>e.#O(t),indexes:t=>e.#k(t),rindexes:t=>e.#R(t),isStale:t=>e.#$(t)}}get max(){return this.#s}get maxSize(){return this.#i}get calculatedSize(){return this.#f}get size(){return this.#l}get fetchMethod(){return this.#a}get memoMethod(){return this.#c}get dispose(){return this.#o}get disposeAfter(){return this.#u}constructor(e){const{max:t=0,ttl:r,ttlResolution:s=1,ttlAutopurge:i,updateAgeOnGet:o,updateAgeOnHas:u,allowStale:a,dispose:c,disposeAfter:l,noDisposeOnSet:f,noUpdateTTL:p,maxSize:h=0,maxEntrySize:d=0,sizeCalculation:g,fetchMethod:m,memoMethod:D,noDeleteOnFetchRejection:A,noDeleteOnStaleGet:E,allowStaleOnFetchRejection:y,allowStaleOnFetchAbort:C,ignoreFetchAbort:w}=e;if(t!==0&&!isPosInt(t)){throw new TypeError("max option must be a nonnegative integer")}const b=t?getUintArray(t):Array;if(!b){throw new Error("invalid max value: "+t)}this.#s=t;this.#i=h;this.maxEntrySize=d||this.#i;this.sizeCalculation=g;if(this.sizeCalculation){if(!this.#i&&!this.maxEntrySize){throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize")}if(typeof this.sizeCalculation!=="function"){throw new TypeError("sizeCalculation set to non-function")}}if(D!==undefined&&typeof D!=="function"){throw new TypeError("memoMethod must be a function if defined")}this.#c=D;if(m!==undefined&&typeof m!=="function"){throw new TypeError("fetchMethod must be a function if specified")}this.#a=m;this.#F=!!m;this.#p=new Map;this.#h=new Array(t).fill(undefined);this.#d=new Array(t).fill(undefined);this.#g=new b(t);this.#m=new b(t);this.#D=0;this.#A=0;this.#E=Stack.create(t);this.#l=0;this.#f=0;if(typeof c==="function"){this.#o=c}if(typeof l==="function"){this.#u=l;this.#y=[]}else{this.#u=undefined;this.#y=undefined}this.#v=!!this.#o;this.#_=!!this.#u;this.noDisposeOnSet=!!f;this.noUpdateTTL=!!p;this.noDeleteOnFetchRejection=!!A;this.allowStaleOnFetchRejection=!!y;this.allowStaleOnFetchAbort=!!C;this.ignoreFetchAbort=!!w;if(this.maxEntrySize!==0){if(this.#i!==0){if(!isPosInt(this.#i)){throw new TypeError("maxSize must be a positive integer if specified")}}if(!isPosInt(this.maxEntrySize)){throw new TypeError("maxEntrySize must be a positive integer if specified")}this.#L()}this.allowStale=!!a;this.noDeleteOnStaleGet=!!E;this.updateAgeOnGet=!!o;this.updateAgeOnHas=!!u;this.ttlResolution=isPosInt(s)||s===0?s:1;this.ttlAutopurge=!!i;this.ttl=r||0;if(this.ttl){if(!isPosInt(this.ttl)){throw new TypeError("ttl must be a positive integer if specified")}this.#B()}if(this.#s===0&&this.ttl===0&&this.#i===0){throw new TypeError("At least one of max, maxSize, or ttl is required")}if(!this.ttlAutopurge&&!this.#s&&!this.#i){const e="LRU_CACHE_UNBOUNDED";if(shouldWarn(e)){n.add(e);const t="TTL caching without ttlAutopurge, max, or maxSize can "+"result in unbounded memory consumption.";emitWarning(t,"UnboundedCacheWarning",e,LRUCache)}}}getRemainingTTL(e){return this.#p.has(e)?Infinity:0}#B(){const e=new ZeroArray(this.#s);const t=new ZeroArray(this.#s);this.#b=e;this.#w=t;this.#I=(n,s,i=r.now())=>{t[n]=s!==0?i:0;e[n]=s;if(s!==0&&this.ttlAutopurge){const e=setTimeout((()=>{if(this.#$(n)){this.#P(this.#h[n],"expire")}}),s+1);if(e.unref){e.unref()}}};this.#N=n=>{t[n]=e[n]!==0?r.now():0};this.#T=(r,s)=>{if(e[s]){const i=e[s];const o=t[s];if(!i||!o)return;r.ttl=i;r.start=o;r.now=n||getNow();const u=r.now-o;r.remainingTTL=i-u}};let n=0;const getNow=()=>{const e=r.now();if(this.ttlResolution>0){n=e;const t=setTimeout((()=>n=0),this.ttlResolution);if(t.unref){t.unref()}}return e};this.getRemainingTTL=r=>{const s=this.#p.get(r);if(s===undefined){return 0}const i=e[s];const o=t[s];if(!i||!o){return Infinity}const u=(n||getNow())-o;return i-u};this.#$=r=>{const s=t[r];const i=e[r];return!!i&&!!s&&(n||getNow())-s>i}}#N=()=>{};#T=()=>{};#I=()=>{};#$=()=>false;#L(){const e=new ZeroArray(this.#s);this.#f=0;this.#C=e;this.#M=t=>{this.#f-=e[t];e[t]=0};this.#j=(e,t,r,n)=>{if(this.#S(t)){return 0}if(!isPosInt(r)){if(n){if(typeof n!=="function"){throw new TypeError("sizeCalculation must be a function")}r=n(t,e);if(!isPosInt(r)){throw new TypeError("sizeCalculation return invalid (expect positive integer)")}}else{throw new TypeError("invalid size value (must be positive integer). "+"When maxSize or maxEntrySize is used, sizeCalculation "+"or size must be set.")}}return r};this.#H=(t,r,n)=>{e[t]=r;if(this.#i){const r=this.#i-e[t];while(this.#f>r){this.#G(true)}}this.#f+=e[t];if(n){n.entrySize=r;n.totalCalculatedSize=this.#f}}}#M=e=>{};#H=(e,t,r)=>{};#j=(e,t,r,n)=>{if(r||n){throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache")}return 0};*#k({allowStale:e=this.allowStale}={}){if(this.#l){for(let t=this.#A;true;){if(!this.#U(t)){break}if(e||!this.#$(t)){yield t}if(t===this.#D){break}else{t=this.#m[t]}}}}*#R({allowStale:e=this.allowStale}={}){if(this.#l){for(let t=this.#D;true;){if(!this.#U(t)){break}if(e||!this.#$(t)){yield t}if(t===this.#A){break}else{t=this.#g[t]}}}}#U(e){return e!==undefined&&this.#p.get(this.#h[e])===e}*entries(){for(const e of this.#k()){if(this.#d[e]!==undefined&&this.#h[e]!==undefined&&!this.#S(this.#d[e])){yield[this.#h[e],this.#d[e]]}}}*rentries(){for(const e of this.#R()){if(this.#d[e]!==undefined&&this.#h[e]!==undefined&&!this.#S(this.#d[e])){yield[this.#h[e],this.#d[e]]}}}*keys(){for(const e of this.#k()){const t=this.#h[e];if(t!==undefined&&!this.#S(this.#d[e])){yield t}}}*rkeys(){for(const e of this.#R()){const t=this.#h[e];if(t!==undefined&&!this.#S(this.#d[e])){yield t}}}*values(){for(const e of this.#k()){const t=this.#d[e];if(t!==undefined&&!this.#S(this.#d[e])){yield this.#d[e]}}}*rvalues(){for(const e of this.#R()){const t=this.#d[e];if(t!==undefined&&!this.#S(this.#d[e])){yield this.#d[e]}}}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(e,t={}){for(const r of this.#k()){const n=this.#d[r];const s=this.#S(n)?n.__staleWhileFetching:n;if(s===undefined)continue;if(e(s,this.#h[r],this)){return this.get(this.#h[r],t)}}}forEach(e,t=this){for(const r of this.#k()){const n=this.#d[r];const s=this.#S(n)?n.__staleWhileFetching:n;if(s===undefined)continue;e.call(t,s,this.#h[r],this)}}rforEach(e,t=this){for(const r of this.#R()){const n=this.#d[r];const s=this.#S(n)?n.__staleWhileFetching:n;if(s===undefined)continue;e.call(t,s,this.#h[r],this)}}purgeStale(){let e=false;for(const t of this.#R({allowStale:true})){if(this.#$(t)){this.#P(this.#h[t],"expire");e=true}}return e}info(e){const t=this.#p.get(e);if(t===undefined)return undefined;const n=this.#d[t];const s=this.#S(n)?n.__staleWhileFetching:n;if(s===undefined)return undefined;const i={value:s};if(this.#b&&this.#w){const e=this.#b[t];const n=this.#w[t];if(e&&n){const t=e-(r.now()-n);i.ttl=t;i.start=Date.now()}}if(this.#C){i.size=this.#C[t]}return i}dump(){const e=[];for(const t of this.#k({allowStale:true})){const n=this.#h[t];const s=this.#d[t];const i=this.#S(s)?s.__staleWhileFetching:s;if(i===undefined||n===undefined)continue;const o={value:i};if(this.#b&&this.#w){o.ttl=this.#b[t];const e=r.now()-this.#w[t];o.start=Math.floor(Date.now()-e)}if(this.#C){o.size=this.#C[t]}e.unshift([n,o])}return e}load(e){this.clear();for(const[t,n]of e){if(n.start){const e=Date.now()-n.start;n.start=r.now()-e}this.set(t,n.value,n)}}set(e,t,r={}){if(t===undefined){this.delete(e);return this}const{ttl:n=this.ttl,start:s,noDisposeOnSet:i=this.noDisposeOnSet,sizeCalculation:o=this.sizeCalculation,status:u}=r;let{noUpdateTTL:a=this.noUpdateTTL}=r;const c=this.#j(e,t,r.size||0,o);if(this.maxEntrySize&&c>this.maxEntrySize){if(u){u.set="miss";u.maxEntrySizeExceeded=true}this.#P(e,"set");return this}let l=this.#l===0?undefined:this.#p.get(e);if(l===undefined){l=this.#l===0?this.#A:this.#E.length!==0?this.#E.pop():this.#l===this.#s?this.#G(false):this.#l;this.#h[l]=e;this.#d[l]=t;this.#p.set(e,l);this.#g[this.#A]=l;this.#m[l]=this.#A;this.#A=l;this.#l++;this.#H(l,c,u);if(u)u.set="add";a=false}else{this.#O(l);const r=this.#d[l];if(t!==r){if(this.#F&&this.#S(r)){r.__abortController.abort(new Error("replaced"));const{__staleWhileFetching:t}=r;if(t!==undefined&&!i){if(this.#v){this.#o?.(t,e,"set")}if(this.#_){this.#y?.push([t,e,"set"])}}}else if(!i){if(this.#v){this.#o?.(r,e,"set")}if(this.#_){this.#y?.push([r,e,"set"])}}this.#M(l);this.#H(l,c,u);this.#d[l]=t;if(u){u.set="replace";const e=r&&this.#S(r)?r.__staleWhileFetching:r;if(e!==undefined)u.oldValue=e}}else if(u){u.set="update"}}if(n!==0&&!this.#b){this.#B()}if(this.#b){if(!a){this.#I(l,n,s)}if(u)this.#T(u,l)}if(!i&&this.#_&&this.#y){const e=this.#y;let t;while(t=e?.shift()){this.#u?.(...t)}}return this}pop(){try{while(this.#l){const e=this.#d[this.#D];this.#G(true);if(this.#S(e)){if(e.__staleWhileFetching){return e.__staleWhileFetching}}else if(e!==undefined){return e}}}finally{if(this.#_&&this.#y){const e=this.#y;let t;while(t=e?.shift()){this.#u?.(...t)}}}}#G(e){const t=this.#D;const r=this.#h[t];const n=this.#d[t];if(this.#F&&this.#S(n)){n.__abortController.abort(new Error("evicted"))}else if(this.#v||this.#_){if(this.#v){this.#o?.(n,r,"evict")}if(this.#_){this.#y?.push([n,r,"evict"])}}this.#M(t);if(e){this.#h[t]=undefined;this.#d[t]=undefined;this.#E.push(t)}if(this.#l===1){this.#D=this.#A=0;this.#E.length=0}else{this.#D=this.#g[t]}this.#p.delete(r);this.#l--;return t}has(e,t={}){const{updateAgeOnHas:r=this.updateAgeOnHas,status:n}=t;const s=this.#p.get(e);if(s!==undefined){const e=this.#d[s];if(this.#S(e)&&e.__staleWhileFetching===undefined){return false}if(!this.#$(s)){if(r){this.#N(s)}if(n){n.has="hit";this.#T(n,s)}return true}else if(n){n.has="stale";this.#T(n,s)}}else if(n){n.has="miss"}return false}peek(e,t={}){const{allowStale:r=this.allowStale}=t;const n=this.#p.get(e);if(n===undefined||!r&&this.#$(n)){return}const s=this.#d[n];return this.#S(s)?s.__staleWhileFetching:s}#x(e,t,r,n){const s=t===undefined?undefined:this.#d[t];if(this.#S(s)){return s}const o=new i;const{signal:u}=r;u?.addEventListener("abort",(()=>o.abort(u.reason)),{signal:o.signal});const a={signal:o.signal,options:r,context:n};const cb=(n,s=false)=>{const{aborted:i}=o.signal;const u=r.ignoreFetchAbort&&n!==undefined;if(r.status){if(i&&!s){r.status.fetchAborted=true;r.status.fetchError=o.signal.reason;if(u)r.status.fetchAbortIgnored=true}else{r.status.fetchResolved=true}}if(i&&!u&&!s){return fetchFail(o.signal.reason)}const l=c;if(this.#d[t]===c){if(n===undefined){if(l.__staleWhileFetching){this.#d[t]=l.__staleWhileFetching}else{this.#P(e,"fetch")}}else{if(r.status)r.status.fetchUpdated=true;this.set(e,n,a.options)}}return n};const eb=e=>{if(r.status){r.status.fetchRejected=true;r.status.fetchError=e}return fetchFail(e)};const fetchFail=n=>{const{aborted:s}=o.signal;const i=s&&r.allowStaleOnFetchAbort;const u=i||r.allowStaleOnFetchRejection;const a=u||r.noDeleteOnFetchRejection;const l=c;if(this.#d[t]===c){const r=!a||l.__staleWhileFetching===undefined;if(r){this.#P(e,"fetch")}else if(!i){this.#d[t]=l.__staleWhileFetching}}if(u){if(r.status&&l.__staleWhileFetching!==undefined){r.status.returnedStale=true}return l.__staleWhileFetching}else if(l.__returned===l){throw n}};const pcall=(t,n)=>{const i=this.#a?.(e,s,a);if(i&&i instanceof Promise){i.then((e=>t(e===undefined?undefined:e)),n)}o.signal.addEventListener("abort",(()=>{if(!r.ignoreFetchAbort||r.allowStaleOnFetchAbort){t(undefined);if(r.allowStaleOnFetchAbort){t=e=>cb(e,true)}}}))};if(r.status)r.status.fetchDispatched=true;const c=new Promise(pcall).then(cb,eb);const l=Object.assign(c,{__abortController:o,__staleWhileFetching:s,__returned:undefined});if(t===undefined){this.set(e,l,{...a.options,status:undefined});t=this.#p.get(e)}else{this.#d[t]=l}return l}#S(e){if(!this.#F)return false;const t=e;return!!t&&t instanceof Promise&&t.hasOwnProperty("__staleWhileFetching")&&t.__abortController instanceof i}async fetch(e,t={}){const{allowStale:r=this.allowStale,updateAgeOnGet:n=this.updateAgeOnGet,noDeleteOnStaleGet:s=this.noDeleteOnStaleGet,ttl:i=this.ttl,noDisposeOnSet:o=this.noDisposeOnSet,size:u=0,sizeCalculation:a=this.sizeCalculation,noUpdateTTL:c=this.noUpdateTTL,noDeleteOnFetchRejection:l=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:f=this.allowStaleOnFetchRejection,ignoreFetchAbort:p=this.ignoreFetchAbort,allowStaleOnFetchAbort:h=this.allowStaleOnFetchAbort,context:d,forceRefresh:g=false,status:m,signal:D}=t;if(!this.#F){if(m)m.fetch="get";return this.get(e,{allowStale:r,updateAgeOnGet:n,noDeleteOnStaleGet:s,status:m})}const A={allowStale:r,updateAgeOnGet:n,noDeleteOnStaleGet:s,ttl:i,noDisposeOnSet:o,size:u,sizeCalculation:a,noUpdateTTL:c,noDeleteOnFetchRejection:l,allowStaleOnFetchRejection:f,allowStaleOnFetchAbort:h,ignoreFetchAbort:p,status:m,signal:D};let E=this.#p.get(e);if(E===undefined){if(m)m.fetch="miss";const t=this.#x(e,E,A,d);return t.__returned=t}else{const t=this.#d[E];if(this.#S(t)){const e=r&&t.__staleWhileFetching!==undefined;if(m){m.fetch="inflight";if(e)m.returnedStale=true}return e?t.__staleWhileFetching:t.__returned=t}const s=this.#$(E);if(!g&&!s){if(m)m.fetch="hit";this.#O(E);if(n){this.#N(E)}if(m)this.#T(m,E);return t}const i=this.#x(e,E,A,d);const o=i.__staleWhileFetching!==undefined;const u=o&&r;if(m){m.fetch=s?"stale":"refresh";if(u&&s)m.returnedStale=true}return u?i.__staleWhileFetching:i.__returned=i}}async forceFetch(e,t={}){const r=await this.fetch(e,t);if(r===undefined)throw new Error("fetch() returned undefined");return r}memo(e,t={}){const r=this.#c;if(!r){throw new Error("no memoMethod provided to constructor")}const{context:n,forceRefresh:s,...i}=t;const o=this.get(e,i);if(!s&&o!==undefined)return o;const u=r(e,o,{options:i,context:n});this.set(e,u,i);return u}get(e,t={}){const{allowStale:r=this.allowStale,updateAgeOnGet:n=this.updateAgeOnGet,noDeleteOnStaleGet:s=this.noDeleteOnStaleGet,status:i}=t;const o=this.#p.get(e);if(o!==undefined){const t=this.#d[o];const u=this.#S(t);if(i)this.#T(i,o);if(this.#$(o)){if(i)i.get="stale";if(!u){if(!s){this.#P(e,"expire")}if(i&&r)i.returnedStale=true;return r?t:undefined}else{if(i&&r&&t.__staleWhileFetching!==undefined){i.returnedStale=true}return r?t.__staleWhileFetching:undefined}}else{if(i)i.get="hit";if(u){return t.__staleWhileFetching}this.#O(o);if(n){this.#N(o)}return t}}else if(i){i.get="miss"}}#W(e,t){this.#m[t]=e;this.#g[e]=t}#O(e){if(e!==this.#A){if(e===this.#D){this.#D=this.#g[e]}else{this.#W(this.#m[e],this.#g[e])}this.#W(this.#A,e);this.#A=e}}delete(e){return this.#P(e,"delete")}#P(e,t){let r=false;if(this.#l!==0){const n=this.#p.get(e);if(n!==undefined){r=true;if(this.#l===1){this.#z(t)}else{this.#M(n);const r=this.#d[n];if(this.#S(r)){r.__abortController.abort(new Error("deleted"))}else if(this.#v||this.#_){if(this.#v){this.#o?.(r,e,t)}if(this.#_){this.#y?.push([r,e,t])}}this.#p.delete(e);this.#h[n]=undefined;this.#d[n]=undefined;if(n===this.#A){this.#A=this.#m[n]}else if(n===this.#D){this.#D=this.#g[n]}else{const e=this.#m[n];this.#g[e]=this.#g[n];const t=this.#g[n];this.#m[t]=this.#m[n]}this.#l--;this.#E.push(n)}}}if(this.#_&&this.#y?.length){const e=this.#y;let t;while(t=e?.shift()){this.#u?.(...t)}}return r}clear(){return this.#z("delete")}#z(e){for(const t of this.#R({allowStale:true})){const r=this.#d[t];if(this.#S(r)){r.__abortController.abort(new Error("deleted"))}else{const n=this.#h[t];if(this.#v){this.#o?.(r,n,e)}if(this.#_){this.#y?.push([r,n,e])}}}this.#p.clear();this.#d.fill(undefined);this.#h.fill(undefined);if(this.#b&&this.#w){this.#b.fill(0);this.#w.fill(0)}if(this.#C){this.#C.fill(0)}this.#D=0;this.#A=0;this.#E.length=0;this.#f=0;this.#l=0;if(this.#_&&this.#y){const e=this.#y;let t;while(t=e?.shift()){this.#u?.(...t)}}}}t.LRUCache=LRUCache},8330:e=>{"use strict";e.exports=JSON.parse('{"name":"create-expo","version":"3.7.3","bin":"./bin/create-expo.js","main":"build","description":"Create universal Expo apps","license":"BSD-3-Clause","keywords":["expo","react-native","react"],"homepage":"https://docs.expo.dev","repository":{"type":"git","url":"https://github.com/expo/expo.git","directory":"packages/create-expo"},"author":"Evan Bacon <bacon@expo.io> (https://github.com/evanbacon)","files":["bin","build","template"],"engines":{"node":">=18.13.0"},"scripts":{"build":"ncc build ./src/index.ts -o build/","build:prod":"ncc build ./src/index.ts -o build/ --minify --no-cache --no-source-map-register","clean":"expo-module clean","lint":"expo-module lint","typecheck":"expo-module typecheck","test":"expo-module test","test:e2e":"expo-module test --config e2e/jest.config.js --runInBand","watch":"pnpm run build --watch","prepublishOnly":"pnpm run clean && pnpm run build:prod"},"devDependencies":{"@expo/config":"workspace:*","@expo/json-file":"workspace:*","@expo/package-manager":"workspace:*","@expo/spawn-async":"^1.7.2","@octokit/types":"^13.5.0","@types/debug":"^4.1.7","@types/getenv":"^1.0.0","@types/node":"^22.14.0","@types/picomatch":"^2.3.3","@types/prompts":"2.0.14","@vercel/ncc":"^0.38.3","arg":"^5.0.2","chalk":"^4.0.0","debug":"^4.3.4","expo-module-scripts":"workspace:*","getenv":"^2.0.0","glob":"^13.0.0","nock":"^14.0.10","ora":"3.4.0","picomatch":"^2.3.1","prompts":"^2.4.2","multitars":"^1.0.0","update-check":"^1.5.4"},"gitHead":"d7b4e5edff4bf2e619d2c2f16d158798c6d592ef"}')}};var t={};function __nccwpck_require__(r){var n=t[r];if(n!==undefined){return n.exports}var s=t[r]={id:r,loaded:false,exports:{}};var i=true;try{e[r].call(s.exports,s,s.exports,__nccwpck_require__);i=false}finally{if(i)delete t[r]}s.loaded=true;return s.exports}__nccwpck_require__.m=e;(()=>{__nccwpck_require__.n=e=>{var t=e&&e.__esModule?()=>e["default"]:()=>e;__nccwpck_require__.d(t,{a:t});return t}})();(()=>{var e=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__;var t;__nccwpck_require__.t=function(r,n){if(n&1)r=this(r);if(n&8)return r;if(typeof r==="object"&&r){if(n&4&&r.__esModule)return r;if(n&16&&typeof r.then==="function")return r}var s=Object.create(null);__nccwpck_require__.r(s);var i={};t=t||[null,e({}),e([]),e(e)];for(var o=n&2&&r;typeof o=="object"&&!~t.indexOf(o);o=e(o)){Object.getOwnPropertyNames(o).forEach((e=>i[e]=()=>r[e]))}i["default"]=()=>r;__nccwpck_require__.d(s,i);return s}})();(()=>{__nccwpck_require__.d=(e,t)=>{for(var r in t){if(__nccwpck_require__.o(t,r)&&!__nccwpck_require__.o(e,r)){Object.defineProperty(e,r,{enumerable:true,get:t[r]})}}}})();(()=>{__nccwpck_require__.f={};__nccwpck_require__.e=e=>Promise.all(Object.keys(__nccwpck_require__.f).reduce(((t,r)=>{__nccwpck_require__.f[r](e,t);return t}),[]))})();(()=>{__nccwpck_require__.u=e=>""+e+".index.js"})();(()=>{__nccwpck_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})();(()=>{__nccwpck_require__.r=e=>{if(typeof Symbol!=="undefined"&&Symbol.toStringTag){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}Object.defineProperty(e,"__esModule",{value:true})}})();(()=>{__nccwpck_require__.nmd=e=>{e.paths=[];if(!e.children)e.children=[];return e}})();if(typeof __nccwpck_require__!=="undefined")__nccwpck_require__.ab=__dirname+"/";(()=>{var e={792:1};var installChunk=t=>{var r=t.modules,n=t.ids,s=t.runtime;for(var i in r){if(__nccwpck_require__.o(r,i)){__nccwpck_require__.m[i]=r[i]}}if(s)s(__nccwpck_require__);for(var o=0;o<n.length;o++)e[n[o]]=1};__nccwpck_require__.f.require=(t,r)=>{if(!e[t]){if(true){installChunk(require("./"+__nccwpck_require__.u(t)))}else e[t]=1}}})();var r={};(()=>{"use strict";__nccwpck_require__.r(r);var e=__nccwpck_require__(6675);var t=__nccwpck_require__.n(e);var n=__nccwpck_require__(277);var s=__nccwpck_require__.n(n);var i=__nccwpck_require__(6467);process.title=i.V;if((0,n.boolish)("EXPO_DEBUG",false)){t().enable("expo:init:*")}else if(t().enabled("expo:init:")){process.env.EXPO_DEBUG="1"}__nccwpck_require__(4456)})();module.exports=r})();
49
+ `)}const{AnalyticsEventPhases:c,AnalyticsEventTypes:l,flushAsync:p,track:h}=await r.e(601).then(r.bind(r,601));try{const s=await resolveStringOrBooleanArgsAsync(e,t,{"--template":Boolean,"--example":Boolean,"-t":"--template","-e":"--example"});f(`Default args:\n%O`,n);f(`Parsed:\n%O`,s);const{createAsync:i}=await Promise.all([r.e(525),r.e(205)]).then(r.bind(r,8205));await i(s.projectRoot,{yes:!!n["--yes"],template:s.args["--template"],example:s.args["--example"],install:!n["--no-install"],agentsMd:!n["--no-agents-md"]});h({event:l.CREATE_EXPO_APP,properties:{phase:c.SUCCESS}});await p()}catch(e){if(!(e instanceof o.R)){u.tG.exception(e)}h({event:l.CREATE_EXPO_APP,properties:{phase:c.FAIL,message:e.cause}});await p().finally((()=>{process.exit(e.code||1)}))}finally{const e=await(await r.e(517).then(r.bind(r,7517))).default;await e()}}run()},6467:(e,t,r)=>{"use strict";r.d(t,{V:()=>n});const n=r(8330).name},6725:(e,t,r)=>{"use strict";r.d(t,{R:()=>ExitError});class ExitError extends Error{cause;code;constructor(e,t){super(e instanceof Error?e.message:e);this.cause=e;this.code=t}}},1545:(e,t,r)=>{"use strict";r.d(t,{NS:()=>exit,tG:()=>o});var n=r(2314);var s=r.n(n);var i=r(6725);function error(...e){console.error(...e)}function exception(e){const{env:t}=r(4342);error(s().red(e.toString())+(t.EXPO_DEBUG?"\n"+s().gray(e.stack):""))}function log(...e){console.log(...e)}function exit(e,t=1){if(e instanceof Error){exception(e)}else if(e){if(t===0){log(e)}else{error(e)}}if(t!==0){throw new i.R(e,t)}process.exit(t)}const o={error:error,exception:exception,log:log,exit:exit}},9560:(e,t,r)=>{"use strict";r.d(t,{DC:()=>installDependenciesAsync,MZ:()=>configurePackageManager,Wq:()=>formatRunCommand,_c:()=>resolvePackageManager,fZ:()=>formatSelfCommand});var n=r(6268);var s=r.n(n);var i=r(5317);var o=r.n(i);var u=r(6467);const a=r(6675)("expo:init:resolvePackageManager");function resolvePackageManager(){const e=process.env.npm_config_user_agent;a("npm_config_user_agent:",e);if(e?.startsWith("yarn")){return"yarn"}else if(e?.startsWith("pnpm")){return"pnpm"}else if(e?.startsWith("bun")){return"bun"}else if(e?.startsWith("npm")){return"npm"}if(isPackageManagerAvailable("yarn")){return"yarn"}else if(isPackageManagerAvailable("pnpm")){return"pnpm"}else if(isPackageManagerAvailable("bun")){return"bun"}return"npm"}function isPackageManagerAvailable(e){try{(0,i.execSync)(`${e} --version`,{stdio:"ignore"});return true}catch{}return false}function formatRunCommand(e,t){switch(e){case"pnpm":return`pnpm run ${t}`;case"yarn":return`yarn ${t}`;case"bun":return`bun run ${t}`;case"npm":default:return`npm run ${t}`}}function formatSelfCommand(){const e=resolvePackageManager();switch(e){case"pnpm":return`pnpx ${u.V}`;case"bun":return`bunx ${u.V}`;case"yarn":case"npm":default:return`npx ${u.V}`}}function createPackageManager(e,t){switch(e){case"yarn":return new n.YarnPackageManager(t);case"pnpm":return new n.PnpmPackageManager(t);case"bun":return new n.BunPackageManager(t);case"npm":default:return new n.NpmPackageManager(t)}}async function installDependenciesAsync(e,t,r={silent:false}){await createPackageManager(t,{cwd:e,silent:r.silent}).installAsync()}async function configurePackageManager(e,t,r={silent:false}){const n=createPackageManager(t,{cwd:e,...r});switch(n.name){case"yarn":{const e=await n.versionAsync();const t=parseInt(e.split(".")[0]??"",10);if(t>=2){await n.runAsync(["config","set","nodeLinker","node-modules"])}break}}}},4342:(e,t,r)=>{"use strict";r.r(t);r.d(t,{env:()=>i});var n=r(277);var s=r.n(n);class Env{get EXPO_DEBUG(){return(0,n.boolish)("EXPO_DEBUG",false)}get EXPO_BETA(){return(0,n.boolish)("EXPO_BETA",false)}get CI(){return(0,n.boolish)("CI",false)}get EXPO_NO_CACHE(){return(0,n.boolish)("EXPO_NO_CACHE",false)}get EXPO_NO_TELEMETRY(){return(0,n.boolish)("EXPO_NO_TELEMETRY",false)}}const i=new Env},2613:e=>{"use strict";e.exports=require("assert")},181:e=>{"use strict";e.exports=require("buffer")},5317:e=>{"use strict";e.exports=require("child_process")},6982:e=>{"use strict";e.exports=require("crypto")},2250:e=>{"use strict";e.exports=require("dns")},4434:e=>{"use strict";e.exports=require("events")},9896:e=>{"use strict";e.exports=require("fs")},8611:e=>{"use strict";e.exports=require("http")},5692:e=>{"use strict";e.exports=require("https")},3339:e=>{"use strict";e.exports=require("module")},5217:e=>{"use strict";e.exports=require("node:crypto")},8474:e=>{"use strict";e.exports=require("node:events")},3024:e=>{"use strict";e.exports=require("node:fs")},1455:e=>{"use strict";e.exports=require("node:fs/promises")},6760:e=>{"use strict";e.exports=require("node:path")},1708:e=>{"use strict";e.exports=require("node:process")},7075:e=>{"use strict";e.exports=require("node:stream")},6193:e=>{"use strict";e.exports=require("node:string_decoder")},3136:e=>{"use strict";e.exports=require("node:url")},857:e=>{"use strict";e.exports=require("os")},6928:e=>{"use strict";e.exports=require("path")},3785:e=>{"use strict";e.exports=require("readline")},2203:e=>{"use strict";e.exports=require("stream")},2018:e=>{"use strict";e.exports=require("tty")},7016:e=>{"use strict";e.exports=require("url")},9023:e=>{"use strict";e.exports=require("util")},5112:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});var n=r(6831);var s=r(7815);var i=r(8740);function isColorSupported(){return typeof process==="object"&&(process.env.FORCE_COLOR==="0"||process.env.FORCE_COLOR==="false")?false:n.isColorSupported}const compose=(e,t)=>r=>e(t(r));function buildDefs(e){return{keyword:e.cyan,capitalized:e.yellow,jsxIdentifier:e.yellow,punctuator:e.yellow,number:e.magenta,string:e.green,regex:e.magenta,comment:e.gray,invalid:compose(compose(e.white,e.bgRed),e.bold),gutter:e.gray,marker:compose(e.red,e.bold),message:compose(e.red,e.bold),reset:e.reset}}const o=buildDefs(n.createColors(true));const u=buildDefs(n.createColors(false));function getDefs(e){return e?o:u}const a=new Set(["as","async","from","get","of","set"]);const c=/\r\n|[\n\r\u2028\u2029]/;const l=/^[()[\]{}]$/;let f;const p=/^[a-z][\w-]*$/i;const getTokenType=function(e,t,r){if(e.type==="name"){const n=e.value;if(i.isKeyword(n)||i.isStrictReservedWord(n,true)||a.has(n)){return"keyword"}if(p.test(n)&&(r[t-1]==="<"||r.slice(t-2,t)==="</")){return"jsxIdentifier"}const s=String.fromCodePoint(n.codePointAt(0));if(s!==s.toLowerCase()){return"capitalized"}}if(e.type==="punctuator"&&l.test(e.value)){return"bracket"}if(e.type==="invalid"&&(e.value==="@"||e.value==="#")){return"punctuator"}return e.type};f=function*(e){let t;while(t=s.default.exec(e)){const r=s.matchToToken(t);yield{type:getTokenType(r,t.index,e),value:r.value}}};function highlight(e){if(e==="")return"";const t=getDefs(true);let r="";for(const{type:n,value:s}of f(e)){if(n in t){r+=s.split(c).map((e=>t[n](e))).join("\n")}else{r+=s}}return r}let h=false;const d=/\r\n|[\n\r\u2028\u2029]/;function getMarkerLines(e,t,r,n){const s=Object.assign({column:0,line:-1},e.start);const i=Object.assign({},s,e.end);const{linesAbove:o=2,linesBelow:u=3}=r||{};const a=s.line-n;const c=s.column;const l=i.line-n;const f=i.column;let p=Math.max(a-(o+1),0);let h=Math.min(t.length,l+u);if(a===-1){p=0}if(l===-1){h=t.length}const d=l-a;const g={};if(d){for(let e=0;e<=d;e++){const r=e+a;if(!c){g[r]=true}else if(e===0){const e=t[r-1].length;g[r]=[c,e-c+1]}else if(e===d){g[r]=[0,f]}else{const n=t[r-e].length;g[r]=[0,n]}}}else{if(c===f){if(c){g[a]=[c,0]}else{g[a]=true}}else{g[a]=[c,f-c]}}return{start:p,end:h,markerLines:g}}function codeFrameColumns(e,t,r={}){const n=r.forceColor||isColorSupported()&&r.highlightCode;const s=(r.startLine||1)-1;const i=getDefs(n);const o=e.split(d);const{start:u,end:a,markerLines:c}=getMarkerLines(t,o,r,s);const l=t.start&&typeof t.start.column==="number";const f=String(a+s).length;const p=n?highlight(e):e;let h=p.split(d,a).slice(u,a).map(((e,t)=>{const n=u+1+t;const o=` ${n+s}`.slice(-f);const a=` ${o} |`;const l=c[n];const p=!c[n+1];if(l){let t="";if(Array.isArray(l)){const n=e.slice(0,Math.max(l[0]-1,0)).replace(/[^\t]/g," ");const s=l[1]||1;t=["\n ",i.gutter(a.replace(/\d/g," "))," ",n,i.marker("^").repeat(s)].join("");if(p&&r.message){t+=" "+i.message(r.message)}}return[i.marker(">"),i.gutter(a),e.length>0?` ${e}`:"",t].join("")}else{return` ${i.gutter(a)}${e.length>0?` ${e}`:""}`}})).join("\n");if(r.message&&!l){h=`${" ".repeat(f+1)}${r.message}\n${h}`}if(n){return i.reset(h)}else{return h}}function index(e,t,r,n={}){if(!h){h=true;const e="Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";if(process.emitWarning){process.emitWarning(e,"DeprecationWarning")}else{const t=new Error(e);t.name="DeprecationWarning";console.warn(new Error(e))}}r=Math.max(r,0);const s={start:{column:r,line:t}};return codeFrameColumns(e,s,n)}t.codeFrameColumns=codeFrameColumns;t["default"]=index;t.highlight=highlight},3357:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.isIdentifierChar=isIdentifierChar;t.isIdentifierName=isIdentifierName;t.isIdentifierStart=isIdentifierStart;let r="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-࢏ࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚ౜ౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽ೜-ೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲊᲐ-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-Ƛ꟱-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ";let n="·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛ࢗ-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ೳഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-໎໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ-᫝᫠-᫫ᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‌‍‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯・꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_・";const s=new RegExp("["+r+"]");const i=new RegExp("["+r+n+"]");r=n=null;const o=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,14,29,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,13,10,2,14,2,6,2,1,2,10,2,14,2,6,2,1,4,51,13,310,10,21,11,7,25,5,2,41,2,8,70,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,7,25,39,55,7,1,65,0,16,3,2,2,2,28,43,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,14,35,39,27,10,22,251,41,7,1,17,5,57,28,11,0,9,21,43,17,47,20,28,22,13,52,58,1,3,0,14,44,33,24,27,35,30,0,3,0,9,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,20,1,64,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,31,9,2,0,3,0,2,37,2,0,26,0,2,0,45,52,19,3,21,2,31,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,14,0,72,26,38,6,186,43,117,63,32,7,3,0,3,7,2,1,2,23,16,0,2,0,95,7,3,38,17,0,2,0,29,0,11,39,8,0,22,0,12,45,20,0,19,72,200,32,32,8,2,36,18,0,50,29,113,6,2,1,2,37,22,0,26,5,2,1,2,31,15,0,24,43,261,18,16,0,2,12,2,33,125,0,80,921,103,110,18,195,2637,96,16,1071,18,5,26,3994,6,582,6842,29,1763,568,8,30,18,78,18,29,19,47,17,3,32,20,6,18,433,44,212,63,33,24,3,24,45,74,6,0,67,12,65,1,2,0,15,4,10,7381,42,31,98,114,8702,3,2,6,2,1,2,290,16,0,30,2,3,0,15,3,9,395,2309,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,1845,30,7,5,262,61,147,44,11,6,17,0,322,29,19,43,485,27,229,29,3,0,208,30,2,2,2,1,2,6,3,4,10,1,225,6,2,3,2,1,2,14,2,196,60,67,8,0,1205,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42719,33,4381,3,5773,3,7472,16,621,2467,541,1507,4938,6,8489];const u=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,574,3,9,9,7,9,32,4,318,1,78,5,71,10,50,3,123,2,54,14,32,10,3,1,11,3,46,10,8,0,46,9,7,2,37,13,2,9,6,1,45,0,13,2,49,13,9,3,2,11,83,11,7,0,3,0,158,11,6,9,7,3,56,1,2,6,3,1,3,2,10,0,11,1,3,6,4,4,68,8,2,0,3,0,2,3,2,4,2,0,15,1,83,17,10,9,5,0,82,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,7,19,58,14,5,9,243,14,166,9,71,5,2,1,3,3,2,0,2,1,13,9,120,6,3,6,4,0,29,9,41,6,2,3,9,0,10,10,47,15,199,7,137,9,54,7,2,7,17,9,57,21,2,13,123,5,4,0,2,1,2,6,2,0,9,9,49,4,2,1,2,4,9,9,55,9,266,3,10,1,2,0,49,6,4,4,14,10,5350,0,7,14,11465,27,2343,9,87,9,39,4,60,6,26,9,535,9,470,0,2,54,8,3,82,0,12,1,19628,1,4178,9,519,45,3,22,543,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,101,0,161,6,10,9,357,0,62,13,499,13,245,1,2,9,233,0,3,0,8,1,6,0,475,6,110,6,6,9,4759,9,787719,239];function isInAstralSet(e,t){let r=65536;for(let n=0,s=t.length;n<s;n+=2){r+=t[n];if(r>e)return false;r+=t[n+1];if(r>=e)return true}return false}function isIdentifierStart(e){if(e<65)return e===36;if(e<=90)return true;if(e<97)return e===95;if(e<=122)return true;if(e<=65535){return e>=170&&s.test(String.fromCharCode(e))}return isInAstralSet(e,o)}function isIdentifierChar(e){if(e<48)return e===36;if(e<58)return true;if(e<65)return false;if(e<=90)return true;if(e<97)return e===95;if(e<=122)return true;if(e<=65535){return e>=170&&i.test(String.fromCharCode(e))}return isInAstralSet(e,o)||isInAstralSet(e,u)}function isIdentifierName(e){let t=true;for(let r=0;r<e.length;r++){let n=e.charCodeAt(r);if((n&64512)===55296&&r+1<e.length){const t=e.charCodeAt(++r);if((t&64512)===56320){n=65536+((n&1023)<<10)+(t&1023)}}if(t){t=false;if(!isIdentifierStart(n)){return false}}else if(!isIdentifierChar(n)){return false}}return!t}},8740:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});Object.defineProperty(t,"isIdentifierChar",{enumerable:true,get:function(){return n.isIdentifierChar}});Object.defineProperty(t,"isIdentifierName",{enumerable:true,get:function(){return n.isIdentifierName}});Object.defineProperty(t,"isIdentifierStart",{enumerable:true,get:function(){return n.isIdentifierStart}});Object.defineProperty(t,"isKeyword",{enumerable:true,get:function(){return s.isKeyword}});Object.defineProperty(t,"isReservedWord",{enumerable:true,get:function(){return s.isReservedWord}});Object.defineProperty(t,"isStrictBindOnlyReservedWord",{enumerable:true,get:function(){return s.isStrictBindOnlyReservedWord}});Object.defineProperty(t,"isStrictBindReservedWord",{enumerable:true,get:function(){return s.isStrictBindReservedWord}});Object.defineProperty(t,"isStrictReservedWord",{enumerable:true,get:function(){return s.isStrictReservedWord}});var n=r(3357);var s=r(1391)},1391:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.isKeyword=isKeyword;t.isReservedWord=isReservedWord;t.isStrictBindOnlyReservedWord=isStrictBindOnlyReservedWord;t.isStrictBindReservedWord=isStrictBindReservedWord;t.isStrictReservedWord=isStrictReservedWord;const r={keyword:["break","case","catch","continue","debugger","default","do","else","finally","for","function","if","return","switch","throw","try","var","const","while","with","new","this","super","class","extends","export","import","null","true","false","in","instanceof","typeof","void","delete"],strict:["implements","interface","let","package","private","protected","public","static","yield"],strictBind:["eval","arguments"]};const n=new Set(r.keyword);const s=new Set(r.strict);const i=new Set(r.strictBind);function isReservedWord(e,t){return t&&e==="await"||e==="enum"}function isStrictReservedWord(e,t){return isReservedWord(e,t)||s.has(e)}function isStrictBindOnlyReservedWord(e){return i.has(e)}function isStrictBindReservedWord(e,t){return isStrictReservedWord(e,t)||isStrictBindOnlyReservedWord(e)}function isKeyword(e){return n.has(e)}},5934:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.LRUCache=void 0;const r=typeof performance==="object"&&performance&&typeof performance.now==="function"?performance:Date;const n=new Set;const s=typeof process==="object"&&!!process?process:{};const emitWarning=(e,t,r,n)=>{typeof s.emitWarning==="function"?s.emitWarning(e,t,r,n):console.error(`[${r}] ${t}: ${e}`)};let i=globalThis.AbortController;let o=globalThis.AbortSignal;if(typeof i==="undefined"){o=class AbortSignal{onabort;_onabort=[];reason;aborted=false;addEventListener(e,t){this._onabort.push(t)}};i=class AbortController{constructor(){warnACPolyfill()}signal=new o;abort(e){if(this.signal.aborted)return;this.signal.reason=e;this.signal.aborted=true;for(const t of this.signal._onabort){t(e)}this.signal.onabort?.(e)}};let e=s.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1";const warnACPolyfill=()=>{if(!e)return;e=false;emitWarning("AbortController is not defined. If using lru-cache in "+"node 14, load an AbortController polyfill from the "+"`node-abort-controller` package. A minimal polyfill is "+"provided for use by LRUCache.fetch(), but it should not be "+"relied upon in other contexts (eg, passing it to other APIs that "+"use AbortController/AbortSignal might have undesirable effects). "+"You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",warnACPolyfill)}}const shouldWarn=e=>!n.has(e);const u=Symbol("type");const isPosInt=e=>e&&e===Math.floor(e)&&e>0&&isFinite(e);const getUintArray=e=>!isPosInt(e)?null:e<=Math.pow(2,8)?Uint8Array:e<=Math.pow(2,16)?Uint16Array:e<=Math.pow(2,32)?Uint32Array:e<=Number.MAX_SAFE_INTEGER?ZeroArray:null;class ZeroArray extends Array{constructor(e){super(e);this.fill(0)}}class Stack{heap;length;static#n=false;static create(e){const t=getUintArray(e);if(!t)return[];Stack.#n=true;const r=new Stack(e,t);Stack.#n=false;return r}constructor(e,t){if(!Stack.#n){throw new TypeError("instantiate Stack using Stack.create(n)")}this.heap=new t(e);this.length=0}push(e){this.heap[this.length++]=e}pop(){return this.heap[--this.length]}}class LRUCache{#s;#i;#o;#u;#a;#c;ttl;ttlResolution;ttlAutopurge;updateAgeOnGet;updateAgeOnHas;allowStale;noDisposeOnSet;noUpdateTTL;maxEntrySize;sizeCalculation;noDeleteOnFetchRejection;noDeleteOnStaleGet;allowStaleOnFetchAbort;allowStaleOnFetchRejection;ignoreFetchAbort;#l;#f;#p;#h;#d;#g;#m;#D;#A;#E;#y;#C;#w;#b;#v;#F;#_;static unsafeExposeInternals(e){return{starts:e.#w,ttls:e.#b,sizes:e.#C,keyMap:e.#p,keyList:e.#h,valList:e.#d,next:e.#g,prev:e.#m,get head(){return e.#D},get tail(){return e.#A},free:e.#E,isBackgroundFetch:t=>e.#S(t),backgroundFetch:(t,r,n,s)=>e.#x(t,r,n,s),moveToTail:t=>e.#O(t),indexes:t=>e.#k(t),rindexes:t=>e.#R(t),isStale:t=>e.#$(t)}}get max(){return this.#s}get maxSize(){return this.#i}get calculatedSize(){return this.#f}get size(){return this.#l}get fetchMethod(){return this.#a}get memoMethod(){return this.#c}get dispose(){return this.#o}get disposeAfter(){return this.#u}constructor(e){const{max:t=0,ttl:r,ttlResolution:s=1,ttlAutopurge:i,updateAgeOnGet:o,updateAgeOnHas:u,allowStale:a,dispose:c,disposeAfter:l,noDisposeOnSet:f,noUpdateTTL:p,maxSize:h=0,maxEntrySize:d=0,sizeCalculation:g,fetchMethod:m,memoMethod:D,noDeleteOnFetchRejection:A,noDeleteOnStaleGet:E,allowStaleOnFetchRejection:y,allowStaleOnFetchAbort:C,ignoreFetchAbort:w}=e;if(t!==0&&!isPosInt(t)){throw new TypeError("max option must be a nonnegative integer")}const b=t?getUintArray(t):Array;if(!b){throw new Error("invalid max value: "+t)}this.#s=t;this.#i=h;this.maxEntrySize=d||this.#i;this.sizeCalculation=g;if(this.sizeCalculation){if(!this.#i&&!this.maxEntrySize){throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize")}if(typeof this.sizeCalculation!=="function"){throw new TypeError("sizeCalculation set to non-function")}}if(D!==undefined&&typeof D!=="function"){throw new TypeError("memoMethod must be a function if defined")}this.#c=D;if(m!==undefined&&typeof m!=="function"){throw new TypeError("fetchMethod must be a function if specified")}this.#a=m;this.#F=!!m;this.#p=new Map;this.#h=new Array(t).fill(undefined);this.#d=new Array(t).fill(undefined);this.#g=new b(t);this.#m=new b(t);this.#D=0;this.#A=0;this.#E=Stack.create(t);this.#l=0;this.#f=0;if(typeof c==="function"){this.#o=c}if(typeof l==="function"){this.#u=l;this.#y=[]}else{this.#u=undefined;this.#y=undefined}this.#v=!!this.#o;this.#_=!!this.#u;this.noDisposeOnSet=!!f;this.noUpdateTTL=!!p;this.noDeleteOnFetchRejection=!!A;this.allowStaleOnFetchRejection=!!y;this.allowStaleOnFetchAbort=!!C;this.ignoreFetchAbort=!!w;if(this.maxEntrySize!==0){if(this.#i!==0){if(!isPosInt(this.#i)){throw new TypeError("maxSize must be a positive integer if specified")}}if(!isPosInt(this.maxEntrySize)){throw new TypeError("maxEntrySize must be a positive integer if specified")}this.#L()}this.allowStale=!!a;this.noDeleteOnStaleGet=!!E;this.updateAgeOnGet=!!o;this.updateAgeOnHas=!!u;this.ttlResolution=isPosInt(s)||s===0?s:1;this.ttlAutopurge=!!i;this.ttl=r||0;if(this.ttl){if(!isPosInt(this.ttl)){throw new TypeError("ttl must be a positive integer if specified")}this.#B()}if(this.#s===0&&this.ttl===0&&this.#i===0){throw new TypeError("At least one of max, maxSize, or ttl is required")}if(!this.ttlAutopurge&&!this.#s&&!this.#i){const e="LRU_CACHE_UNBOUNDED";if(shouldWarn(e)){n.add(e);const t="TTL caching without ttlAutopurge, max, or maxSize can "+"result in unbounded memory consumption.";emitWarning(t,"UnboundedCacheWarning",e,LRUCache)}}}getRemainingTTL(e){return this.#p.has(e)?Infinity:0}#B(){const e=new ZeroArray(this.#s);const t=new ZeroArray(this.#s);this.#b=e;this.#w=t;this.#I=(n,s,i=r.now())=>{t[n]=s!==0?i:0;e[n]=s;if(s!==0&&this.ttlAutopurge){const e=setTimeout((()=>{if(this.#$(n)){this.#P(this.#h[n],"expire")}}),s+1);if(e.unref){e.unref()}}};this.#N=n=>{t[n]=e[n]!==0?r.now():0};this.#T=(r,s)=>{if(e[s]){const i=e[s];const o=t[s];if(!i||!o)return;r.ttl=i;r.start=o;r.now=n||getNow();const u=r.now-o;r.remainingTTL=i-u}};let n=0;const getNow=()=>{const e=r.now();if(this.ttlResolution>0){n=e;const t=setTimeout((()=>n=0),this.ttlResolution);if(t.unref){t.unref()}}return e};this.getRemainingTTL=r=>{const s=this.#p.get(r);if(s===undefined){return 0}const i=e[s];const o=t[s];if(!i||!o){return Infinity}const u=(n||getNow())-o;return i-u};this.#$=r=>{const s=t[r];const i=e[r];return!!i&&!!s&&(n||getNow())-s>i}}#N=()=>{};#T=()=>{};#I=()=>{};#$=()=>false;#L(){const e=new ZeroArray(this.#s);this.#f=0;this.#C=e;this.#M=t=>{this.#f-=e[t];e[t]=0};this.#j=(e,t,r,n)=>{if(this.#S(t)){return 0}if(!isPosInt(r)){if(n){if(typeof n!=="function"){throw new TypeError("sizeCalculation must be a function")}r=n(t,e);if(!isPosInt(r)){throw new TypeError("sizeCalculation return invalid (expect positive integer)")}}else{throw new TypeError("invalid size value (must be positive integer). "+"When maxSize or maxEntrySize is used, sizeCalculation "+"or size must be set.")}}return r};this.#H=(t,r,n)=>{e[t]=r;if(this.#i){const r=this.#i-e[t];while(this.#f>r){this.#G(true)}}this.#f+=e[t];if(n){n.entrySize=r;n.totalCalculatedSize=this.#f}}}#M=e=>{};#H=(e,t,r)=>{};#j=(e,t,r,n)=>{if(r||n){throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache")}return 0};*#k({allowStale:e=this.allowStale}={}){if(this.#l){for(let t=this.#A;true;){if(!this.#U(t)){break}if(e||!this.#$(t)){yield t}if(t===this.#D){break}else{t=this.#m[t]}}}}*#R({allowStale:e=this.allowStale}={}){if(this.#l){for(let t=this.#D;true;){if(!this.#U(t)){break}if(e||!this.#$(t)){yield t}if(t===this.#A){break}else{t=this.#g[t]}}}}#U(e){return e!==undefined&&this.#p.get(this.#h[e])===e}*entries(){for(const e of this.#k()){if(this.#d[e]!==undefined&&this.#h[e]!==undefined&&!this.#S(this.#d[e])){yield[this.#h[e],this.#d[e]]}}}*rentries(){for(const e of this.#R()){if(this.#d[e]!==undefined&&this.#h[e]!==undefined&&!this.#S(this.#d[e])){yield[this.#h[e],this.#d[e]]}}}*keys(){for(const e of this.#k()){const t=this.#h[e];if(t!==undefined&&!this.#S(this.#d[e])){yield t}}}*rkeys(){for(const e of this.#R()){const t=this.#h[e];if(t!==undefined&&!this.#S(this.#d[e])){yield t}}}*values(){for(const e of this.#k()){const t=this.#d[e];if(t!==undefined&&!this.#S(this.#d[e])){yield this.#d[e]}}}*rvalues(){for(const e of this.#R()){const t=this.#d[e];if(t!==undefined&&!this.#S(this.#d[e])){yield this.#d[e]}}}[Symbol.iterator](){return this.entries()}[Symbol.toStringTag]="LRUCache";find(e,t={}){for(const r of this.#k()){const n=this.#d[r];const s=this.#S(n)?n.__staleWhileFetching:n;if(s===undefined)continue;if(e(s,this.#h[r],this)){return this.get(this.#h[r],t)}}}forEach(e,t=this){for(const r of this.#k()){const n=this.#d[r];const s=this.#S(n)?n.__staleWhileFetching:n;if(s===undefined)continue;e.call(t,s,this.#h[r],this)}}rforEach(e,t=this){for(const r of this.#R()){const n=this.#d[r];const s=this.#S(n)?n.__staleWhileFetching:n;if(s===undefined)continue;e.call(t,s,this.#h[r],this)}}purgeStale(){let e=false;for(const t of this.#R({allowStale:true})){if(this.#$(t)){this.#P(this.#h[t],"expire");e=true}}return e}info(e){const t=this.#p.get(e);if(t===undefined)return undefined;const n=this.#d[t];const s=this.#S(n)?n.__staleWhileFetching:n;if(s===undefined)return undefined;const i={value:s};if(this.#b&&this.#w){const e=this.#b[t];const n=this.#w[t];if(e&&n){const t=e-(r.now()-n);i.ttl=t;i.start=Date.now()}}if(this.#C){i.size=this.#C[t]}return i}dump(){const e=[];for(const t of this.#k({allowStale:true})){const n=this.#h[t];const s=this.#d[t];const i=this.#S(s)?s.__staleWhileFetching:s;if(i===undefined||n===undefined)continue;const o={value:i};if(this.#b&&this.#w){o.ttl=this.#b[t];const e=r.now()-this.#w[t];o.start=Math.floor(Date.now()-e)}if(this.#C){o.size=this.#C[t]}e.unshift([n,o])}return e}load(e){this.clear();for(const[t,n]of e){if(n.start){const e=Date.now()-n.start;n.start=r.now()-e}this.set(t,n.value,n)}}set(e,t,r={}){if(t===undefined){this.delete(e);return this}const{ttl:n=this.ttl,start:s,noDisposeOnSet:i=this.noDisposeOnSet,sizeCalculation:o=this.sizeCalculation,status:u}=r;let{noUpdateTTL:a=this.noUpdateTTL}=r;const c=this.#j(e,t,r.size||0,o);if(this.maxEntrySize&&c>this.maxEntrySize){if(u){u.set="miss";u.maxEntrySizeExceeded=true}this.#P(e,"set");return this}let l=this.#l===0?undefined:this.#p.get(e);if(l===undefined){l=this.#l===0?this.#A:this.#E.length!==0?this.#E.pop():this.#l===this.#s?this.#G(false):this.#l;this.#h[l]=e;this.#d[l]=t;this.#p.set(e,l);this.#g[this.#A]=l;this.#m[l]=this.#A;this.#A=l;this.#l++;this.#H(l,c,u);if(u)u.set="add";a=false}else{this.#O(l);const r=this.#d[l];if(t!==r){if(this.#F&&this.#S(r)){r.__abortController.abort(new Error("replaced"));const{__staleWhileFetching:t}=r;if(t!==undefined&&!i){if(this.#v){this.#o?.(t,e,"set")}if(this.#_){this.#y?.push([t,e,"set"])}}}else if(!i){if(this.#v){this.#o?.(r,e,"set")}if(this.#_){this.#y?.push([r,e,"set"])}}this.#M(l);this.#H(l,c,u);this.#d[l]=t;if(u){u.set="replace";const e=r&&this.#S(r)?r.__staleWhileFetching:r;if(e!==undefined)u.oldValue=e}}else if(u){u.set="update"}}if(n!==0&&!this.#b){this.#B()}if(this.#b){if(!a){this.#I(l,n,s)}if(u)this.#T(u,l)}if(!i&&this.#_&&this.#y){const e=this.#y;let t;while(t=e?.shift()){this.#u?.(...t)}}return this}pop(){try{while(this.#l){const e=this.#d[this.#D];this.#G(true);if(this.#S(e)){if(e.__staleWhileFetching){return e.__staleWhileFetching}}else if(e!==undefined){return e}}}finally{if(this.#_&&this.#y){const e=this.#y;let t;while(t=e?.shift()){this.#u?.(...t)}}}}#G(e){const t=this.#D;const r=this.#h[t];const n=this.#d[t];if(this.#F&&this.#S(n)){n.__abortController.abort(new Error("evicted"))}else if(this.#v||this.#_){if(this.#v){this.#o?.(n,r,"evict")}if(this.#_){this.#y?.push([n,r,"evict"])}}this.#M(t);if(e){this.#h[t]=undefined;this.#d[t]=undefined;this.#E.push(t)}if(this.#l===1){this.#D=this.#A=0;this.#E.length=0}else{this.#D=this.#g[t]}this.#p.delete(r);this.#l--;return t}has(e,t={}){const{updateAgeOnHas:r=this.updateAgeOnHas,status:n}=t;const s=this.#p.get(e);if(s!==undefined){const e=this.#d[s];if(this.#S(e)&&e.__staleWhileFetching===undefined){return false}if(!this.#$(s)){if(r){this.#N(s)}if(n){n.has="hit";this.#T(n,s)}return true}else if(n){n.has="stale";this.#T(n,s)}}else if(n){n.has="miss"}return false}peek(e,t={}){const{allowStale:r=this.allowStale}=t;const n=this.#p.get(e);if(n===undefined||!r&&this.#$(n)){return}const s=this.#d[n];return this.#S(s)?s.__staleWhileFetching:s}#x(e,t,r,n){const s=t===undefined?undefined:this.#d[t];if(this.#S(s)){return s}const o=new i;const{signal:u}=r;u?.addEventListener("abort",(()=>o.abort(u.reason)),{signal:o.signal});const a={signal:o.signal,options:r,context:n};const cb=(n,s=false)=>{const{aborted:i}=o.signal;const u=r.ignoreFetchAbort&&n!==undefined;if(r.status){if(i&&!s){r.status.fetchAborted=true;r.status.fetchError=o.signal.reason;if(u)r.status.fetchAbortIgnored=true}else{r.status.fetchResolved=true}}if(i&&!u&&!s){return fetchFail(o.signal.reason)}const l=c;if(this.#d[t]===c){if(n===undefined){if(l.__staleWhileFetching){this.#d[t]=l.__staleWhileFetching}else{this.#P(e,"fetch")}}else{if(r.status)r.status.fetchUpdated=true;this.set(e,n,a.options)}}return n};const eb=e=>{if(r.status){r.status.fetchRejected=true;r.status.fetchError=e}return fetchFail(e)};const fetchFail=n=>{const{aborted:s}=o.signal;const i=s&&r.allowStaleOnFetchAbort;const u=i||r.allowStaleOnFetchRejection;const a=u||r.noDeleteOnFetchRejection;const l=c;if(this.#d[t]===c){const r=!a||l.__staleWhileFetching===undefined;if(r){this.#P(e,"fetch")}else if(!i){this.#d[t]=l.__staleWhileFetching}}if(u){if(r.status&&l.__staleWhileFetching!==undefined){r.status.returnedStale=true}return l.__staleWhileFetching}else if(l.__returned===l){throw n}};const pcall=(t,n)=>{const i=this.#a?.(e,s,a);if(i&&i instanceof Promise){i.then((e=>t(e===undefined?undefined:e)),n)}o.signal.addEventListener("abort",(()=>{if(!r.ignoreFetchAbort||r.allowStaleOnFetchAbort){t(undefined);if(r.allowStaleOnFetchAbort){t=e=>cb(e,true)}}}))};if(r.status)r.status.fetchDispatched=true;const c=new Promise(pcall).then(cb,eb);const l=Object.assign(c,{__abortController:o,__staleWhileFetching:s,__returned:undefined});if(t===undefined){this.set(e,l,{...a.options,status:undefined});t=this.#p.get(e)}else{this.#d[t]=l}return l}#S(e){if(!this.#F)return false;const t=e;return!!t&&t instanceof Promise&&t.hasOwnProperty("__staleWhileFetching")&&t.__abortController instanceof i}async fetch(e,t={}){const{allowStale:r=this.allowStale,updateAgeOnGet:n=this.updateAgeOnGet,noDeleteOnStaleGet:s=this.noDeleteOnStaleGet,ttl:i=this.ttl,noDisposeOnSet:o=this.noDisposeOnSet,size:u=0,sizeCalculation:a=this.sizeCalculation,noUpdateTTL:c=this.noUpdateTTL,noDeleteOnFetchRejection:l=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:f=this.allowStaleOnFetchRejection,ignoreFetchAbort:p=this.ignoreFetchAbort,allowStaleOnFetchAbort:h=this.allowStaleOnFetchAbort,context:d,forceRefresh:g=false,status:m,signal:D}=t;if(!this.#F){if(m)m.fetch="get";return this.get(e,{allowStale:r,updateAgeOnGet:n,noDeleteOnStaleGet:s,status:m})}const A={allowStale:r,updateAgeOnGet:n,noDeleteOnStaleGet:s,ttl:i,noDisposeOnSet:o,size:u,sizeCalculation:a,noUpdateTTL:c,noDeleteOnFetchRejection:l,allowStaleOnFetchRejection:f,allowStaleOnFetchAbort:h,ignoreFetchAbort:p,status:m,signal:D};let E=this.#p.get(e);if(E===undefined){if(m)m.fetch="miss";const t=this.#x(e,E,A,d);return t.__returned=t}else{const t=this.#d[E];if(this.#S(t)){const e=r&&t.__staleWhileFetching!==undefined;if(m){m.fetch="inflight";if(e)m.returnedStale=true}return e?t.__staleWhileFetching:t.__returned=t}const s=this.#$(E);if(!g&&!s){if(m)m.fetch="hit";this.#O(E);if(n){this.#N(E)}if(m)this.#T(m,E);return t}const i=this.#x(e,E,A,d);const o=i.__staleWhileFetching!==undefined;const u=o&&r;if(m){m.fetch=s?"stale":"refresh";if(u&&s)m.returnedStale=true}return u?i.__staleWhileFetching:i.__returned=i}}async forceFetch(e,t={}){const r=await this.fetch(e,t);if(r===undefined)throw new Error("fetch() returned undefined");return r}memo(e,t={}){const r=this.#c;if(!r){throw new Error("no memoMethod provided to constructor")}const{context:n,forceRefresh:s,...i}=t;const o=this.get(e,i);if(!s&&o!==undefined)return o;const u=r(e,o,{options:i,context:n});this.set(e,u,i);return u}get(e,t={}){const{allowStale:r=this.allowStale,updateAgeOnGet:n=this.updateAgeOnGet,noDeleteOnStaleGet:s=this.noDeleteOnStaleGet,status:i}=t;const o=this.#p.get(e);if(o!==undefined){const t=this.#d[o];const u=this.#S(t);if(i)this.#T(i,o);if(this.#$(o)){if(i)i.get="stale";if(!u){if(!s){this.#P(e,"expire")}if(i&&r)i.returnedStale=true;return r?t:undefined}else{if(i&&r&&t.__staleWhileFetching!==undefined){i.returnedStale=true}return r?t.__staleWhileFetching:undefined}}else{if(i)i.get="hit";if(u){return t.__staleWhileFetching}this.#O(o);if(n){this.#N(o)}return t}}else if(i){i.get="miss"}}#W(e,t){this.#m[t]=e;this.#g[e]=t}#O(e){if(e!==this.#A){if(e===this.#D){this.#D=this.#g[e]}else{this.#W(this.#m[e],this.#g[e])}this.#W(this.#A,e);this.#A=e}}delete(e){return this.#P(e,"delete")}#P(e,t){let r=false;if(this.#l!==0){const n=this.#p.get(e);if(n!==undefined){r=true;if(this.#l===1){this.#z(t)}else{this.#M(n);const r=this.#d[n];if(this.#S(r)){r.__abortController.abort(new Error("deleted"))}else if(this.#v||this.#_){if(this.#v){this.#o?.(r,e,t)}if(this.#_){this.#y?.push([r,e,t])}}this.#p.delete(e);this.#h[n]=undefined;this.#d[n]=undefined;if(n===this.#A){this.#A=this.#m[n]}else if(n===this.#D){this.#D=this.#g[n]}else{const e=this.#m[n];this.#g[e]=this.#g[n];const t=this.#g[n];this.#m[t]=this.#m[n]}this.#l--;this.#E.push(n)}}}if(this.#_&&this.#y?.length){const e=this.#y;let t;while(t=e?.shift()){this.#u?.(...t)}}return r}clear(){return this.#z("delete")}#z(e){for(const t of this.#R({allowStale:true})){const r=this.#d[t];if(this.#S(r)){r.__abortController.abort(new Error("deleted"))}else{const n=this.#h[t];if(this.#v){this.#o?.(r,n,e)}if(this.#_){this.#y?.push([r,n,e])}}}this.#p.clear();this.#d.fill(undefined);this.#h.fill(undefined);if(this.#b&&this.#w){this.#b.fill(0);this.#w.fill(0)}if(this.#C){this.#C.fill(0)}this.#D=0;this.#A=0;this.#E.length=0;this.#f=0;this.#l=0;if(this.#_&&this.#y){const e=this.#y;let t;while(t=e?.shift()){this.#u?.(...t)}}}}t.LRUCache=LRUCache},8330:e=>{"use strict";e.exports=JSON.parse('{"name":"create-expo","version":"4.0.0","bin":"./bin/create-expo.js","main":"build","description":"Create universal Expo apps","license":"BSD-3-Clause","keywords":["expo","react-native","react"],"homepage":"https://docs.expo.dev","repository":{"type":"git","url":"https://github.com/expo/expo.git","directory":"packages/create-expo"},"author":"Evan Bacon <bacon@expo.io> (https://github.com/evanbacon)","files":["bin","build","template"],"engines":{"node":">=18.13.0"},"scripts":{"build":"ncc build ./src/index.ts -o build/","build:prod":"ncc build ./src/index.ts -o build/ --minify --no-cache --no-source-map-register","clean":"expo-module clean","lint":"expo-module lint","typecheck":"expo-module typecheck","test":"expo-module test","test:e2e":"expo-module test --config e2e/jest.config.js --runInBand","watch":"pnpm run build --watch","prepublishOnly":"pnpm run clean && pnpm run build:prod"},"devDependencies":{"@expo/config":"workspace:*","@expo/json-file":"workspace:*","@expo/package-manager":"workspace:*","@expo/spawn-async":"^1.7.2","@octokit/types":"^13.5.0","@types/debug":"^4.1.7","@types/getenv":"^1.0.0","@types/node":"^22.14.0","@types/picomatch":"^2.3.3","@types/prompts":"2.0.14","@vercel/ncc":"^0.38.3","arg":"^5.0.2","chalk":"^4.0.0","debug":"^4.3.4","expo-module-scripts":"workspace:*","getenv":"^2.0.0","glob":"^13.0.0","nock":"^14.0.10","ora":"3.4.0","picomatch":"^2.3.2","prompts":"^2.4.2","multitars":"^1.0.0","update-check":"^1.5.4"}}')}};var t={};function __nccwpck_require__(r){var n=t[r];if(n!==undefined){return n.exports}var s=t[r]={id:r,loaded:false,exports:{}};var i=true;try{e[r].call(s.exports,s,s.exports,__nccwpck_require__);i=false}finally{if(i)delete t[r]}s.loaded=true;return s.exports}__nccwpck_require__.m=e;(()=>{__nccwpck_require__.n=e=>{var t=e&&e.__esModule?()=>e["default"]:()=>e;__nccwpck_require__.d(t,{a:t});return t}})();(()=>{var e=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__;var t;__nccwpck_require__.t=function(r,n){if(n&1)r=this(r);if(n&8)return r;if(typeof r==="object"&&r){if(n&4&&r.__esModule)return r;if(n&16&&typeof r.then==="function")return r}var s=Object.create(null);__nccwpck_require__.r(s);var i={};t=t||[null,e({}),e([]),e(e)];for(var o=n&2&&r;typeof o=="object"&&!~t.indexOf(o);o=e(o)){Object.getOwnPropertyNames(o).forEach((e=>i[e]=()=>r[e]))}i["default"]=()=>r;__nccwpck_require__.d(s,i);return s}})();(()=>{__nccwpck_require__.d=(e,t)=>{for(var r in t){if(__nccwpck_require__.o(t,r)&&!__nccwpck_require__.o(e,r)){Object.defineProperty(e,r,{enumerable:true,get:t[r]})}}}})();(()=>{__nccwpck_require__.f={};__nccwpck_require__.e=e=>Promise.all(Object.keys(__nccwpck_require__.f).reduce(((t,r)=>{__nccwpck_require__.f[r](e,t);return t}),[]))})();(()=>{__nccwpck_require__.u=e=>""+e+".index.js"})();(()=>{__nccwpck_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})();(()=>{__nccwpck_require__.r=e=>{if(typeof Symbol!=="undefined"&&Symbol.toStringTag){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}Object.defineProperty(e,"__esModule",{value:true})}})();(()=>{__nccwpck_require__.nmd=e=>{e.paths=[];if(!e.children)e.children=[];return e}})();if(typeof __nccwpck_require__!=="undefined")__nccwpck_require__.ab=__dirname+"/";(()=>{var e={792:1};var installChunk=t=>{var r=t.modules,n=t.ids,s=t.runtime;for(var i in r){if(__nccwpck_require__.o(r,i)){__nccwpck_require__.m[i]=r[i]}}if(s)s(__nccwpck_require__);for(var o=0;o<n.length;o++)e[n[o]]=1};__nccwpck_require__.f.require=(t,r)=>{if(!e[t]){if(true){installChunk(require("./"+__nccwpck_require__.u(t)))}else e[t]=1}}})();var r={};(()=>{"use strict";__nccwpck_require__.r(r);var e=__nccwpck_require__(6675);var t=__nccwpck_require__.n(e);var n=__nccwpck_require__(277);var s=__nccwpck_require__.n(n);var i=__nccwpck_require__(6467);process.title=i.V;if((0,n.boolish)("EXPO_DEBUG",false)){t().enable("expo:init:*")}else if(t().enabled("expo:init:")){process.env.EXPO_DEBUG="1"}__nccwpck_require__(4456)})();module.exports=r})();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-expo",
3
- "version": "3.7.3",
3
+ "version": "4.0.0",
4
4
  "bin": "./bin/create-expo.js",
5
5
  "main": "build",
6
6
  "description": "Create universal Expo apps",
@@ -25,7 +25,21 @@
25
25
  "engines": {
26
26
  "node": ">=18.13.0"
27
27
  },
28
+ "scripts": {
29
+ "build": "ncc build ./src/index.ts -o build/",
30
+ "build:prod": "ncc build ./src/index.ts -o build/ --minify --no-cache --no-source-map-register",
31
+ "clean": "expo-module clean",
32
+ "lint": "expo-module lint",
33
+ "typecheck": "expo-module typecheck",
34
+ "test": "expo-module test",
35
+ "test:e2e": "expo-module test --config e2e/jest.config.js --runInBand",
36
+ "watch": "pnpm run build --watch",
37
+ "prepublishOnly": "pnpm run clean && pnpm run build:prod"
38
+ },
28
39
  "devDependencies": {
40
+ "@expo/config": "workspace:*",
41
+ "@expo/json-file": "workspace:*",
42
+ "@expo/package-manager": "workspace:*",
29
43
  "@expo/spawn-async": "^1.7.2",
30
44
  "@octokit/types": "^13.5.0",
31
45
  "@types/debug": "^4.1.7",
@@ -37,28 +51,14 @@
37
51
  "arg": "^5.0.2",
38
52
  "chalk": "^4.0.0",
39
53
  "debug": "^4.3.4",
54
+ "expo-module-scripts": "workspace:*",
40
55
  "getenv": "^2.0.0",
41
56
  "glob": "^13.0.0",
42
57
  "nock": "^14.0.10",
43
58
  "ora": "3.4.0",
44
- "picomatch": "^2.3.1",
59
+ "picomatch": "^2.3.2",
45
60
  "prompts": "^2.4.2",
46
61
  "multitars": "^1.0.0",
47
- "update-check": "^1.5.4",
48
- "@expo/config": "56.0.2",
49
- "@expo/package-manager": "1.11.1",
50
- "@expo/json-file": "10.1.1",
51
- "expo-module-scripts": "56.0.2"
52
- },
53
- "gitHead": "d7b4e5edff4bf2e619d2c2f16d158798c6d592ef",
54
- "scripts": {
55
- "build": "ncc build ./src/index.ts -o build/",
56
- "build:prod": "ncc build ./src/index.ts -o build/ --minify --no-cache --no-source-map-register",
57
- "clean": "expo-module clean",
58
- "lint": "expo-module lint",
59
- "typecheck": "expo-module typecheck",
60
- "test": "expo-module test",
61
- "test:e2e": "expo-module test --config e2e/jest.config.js --runInBand",
62
- "watch": "pnpm run build --watch"
62
+ "update-check": "^1.5.4"
63
63
  }
64
- }
64
+ }
package/LICENSE DELETED
@@ -1,21 +0,0 @@
1
- The MIT License (MIT)
2
-
3
- Copyright (c) 2015-present 650 Industries, Inc. (aka Expo)
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.