rollup 4.19.2 → 4.21.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.
package/dist/bin/rollup CHANGED
@@ -1,8 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
  /*
3
3
  @license
4
- Rollup.js v4.19.2
5
- Thu, 01 Aug 2024 08:32:23 GMT - commit 39955e55dbc12ec379a21efcf8fc21e55ec6ce3a
4
+ Rollup.js v4.21.0
5
+ Sun, 18 Aug 2024 05:55:06 GMT - commit c4bb050938778bcbe7b3b3ea3419f7fa70d60f5b
6
6
 
7
7
  https://github.com/rollup/rollup
8
8
 
@@ -1745,7 +1745,7 @@ else if (command.version) {
1745
1745
  }
1746
1746
  else {
1747
1747
  try {
1748
- // eslint-disable-next-line unicorn/prefer-module
1748
+ // eslint-disable-next-line unicorn/prefer-module, @typescript-eslint/no-require-imports
1749
1749
  require('source-map-support').install();
1750
1750
  }
1751
1751
  catch {
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  @license
3
- Rollup.js v4.19.2
4
- Thu, 01 Aug 2024 08:32:23 GMT - commit 39955e55dbc12ec379a21efcf8fc21e55ec6ce3a
3
+ Rollup.js v4.21.0
4
+ Sun, 18 Aug 2024 05:55:06 GMT - commit c4bb050938778bcbe7b3b3ea3419f7fa70d60f5b
5
5
 
6
6
  https://github.com/rollup/rollup
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  @license
3
- Rollup.js v4.19.2
4
- Thu, 01 Aug 2024 08:32:23 GMT - commit 39955e55dbc12ec379a21efcf8fc21e55ec6ce3a
3
+ Rollup.js v4.21.0
4
+ Sun, 18 Aug 2024 05:55:06 GMT - commit c4bb050938778bcbe7b3b3ea3419f7fa70d60f5b
5
5
 
6
6
  https://github.com/rollup/rollup
7
7
 
package/dist/es/rollup.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  @license
3
- Rollup.js v4.19.2
4
- Thu, 01 Aug 2024 08:32:23 GMT - commit 39955e55dbc12ec379a21efcf8fc21e55ec6ce3a
3
+ Rollup.js v4.21.0
4
+ Sun, 18 Aug 2024 05:55:06 GMT - commit c4bb050938778bcbe7b3b3ea3419f7fa70d60f5b
5
5
 
6
6
  https://github.com/rollup/rollup
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  @license
3
- Rollup.js v4.19.2
4
- Thu, 01 Aug 2024 08:32:23 GMT - commit 39955e55dbc12ec379a21efcf8fc21e55ec6ce3a
3
+ Rollup.js v4.21.0
4
+ Sun, 18 Aug 2024 05:55:06 GMT - commit c4bb050938778bcbe7b3b3ea3419f7fa70d60f5b
5
5
 
6
6
  https://github.com/rollup/rollup
7
7
 
@@ -16,7 +16,7 @@ import { performance } from 'node:perf_hooks';
16
16
  import { lstat, realpath, readdir, readFile, mkdir, writeFile } from 'node:fs/promises';
17
17
  import * as tty from 'tty';
18
18
 
19
- var version = "4.19.2";
19
+ var version = "4.21.0";
20
20
 
21
21
  const comma = ','.charCodeAt(0);
22
22
  const semicolon = ';'.charCodeAt(0);
@@ -958,8 +958,10 @@ class MagicString {
958
958
  update(start, end, content, options) {
959
959
  if (typeof content !== 'string') throw new TypeError('replacement content must be a string');
960
960
 
961
- while (start < 0) start += this.original.length;
962
- while (end < 0) end += this.original.length;
961
+ if (this.original.length !== 0) {
962
+ while (start < 0) start += this.original.length;
963
+ while (end < 0) end += this.original.length;
964
+ }
963
965
 
964
966
  if (end > this.original.length) throw new Error('end is out of bounds');
965
967
  if (start === end)
@@ -1055,8 +1057,10 @@ class MagicString {
1055
1057
  }
1056
1058
 
1057
1059
  remove(start, end) {
1058
- while (start < 0) start += this.original.length;
1059
- while (end < 0) end += this.original.length;
1060
+ if (this.original.length !== 0) {
1061
+ while (start < 0) start += this.original.length;
1062
+ while (end < 0) end += this.original.length;
1063
+ }
1060
1064
 
1061
1065
  if (start === end) return this;
1062
1066
 
@@ -1079,8 +1083,10 @@ class MagicString {
1079
1083
  }
1080
1084
 
1081
1085
  reset(start, end) {
1082
- while (start < 0) start += this.original.length;
1083
- while (end < 0) end += this.original.length;
1086
+ if (this.original.length !== 0) {
1087
+ while (start < 0) start += this.original.length;
1088
+ while (end < 0) end += this.original.length;
1089
+ }
1084
1090
 
1085
1091
  if (start === end) return this;
1086
1092
 
@@ -1142,8 +1148,10 @@ class MagicString {
1142
1148
  }
1143
1149
 
1144
1150
  slice(start = 0, end = this.original.length) {
1145
- while (start < 0) start += this.original.length;
1146
- while (end < 0) end += this.original.length;
1151
+ if (this.original.length !== 0) {
1152
+ while (start < 0) start += this.original.length;
1153
+ while (end < 0) end += this.original.length;
1154
+ }
1147
1155
 
1148
1156
  let result = '';
1149
1157
 
@@ -7406,7 +7414,9 @@ class ChildScope extends Scope {
7406
7414
  this.parent.addNamespaceMemberAccess(name, variable);
7407
7415
  }
7408
7416
  addReturnExpression(expression) {
7409
- this.parent instanceof ChildScope && this.parent.addReturnExpression(expression);
7417
+ if (this.parent instanceof ChildScope) {
7418
+ this.parent.addReturnExpression(expression);
7419
+ }
7410
7420
  }
7411
7421
  addUsedOutsideNames(usedNames, format, exportNamesByVariable, accessedGlobalsByScope) {
7412
7422
  for (const variable of this.accessedOutsideVariables.values()) {
@@ -7722,12 +7732,15 @@ function renderStatementList(statements, code, start, end, options) {
7722
7732
  currentNode.end +
7723
7733
  findFirstLineBreakOutsideComment(code.original.slice(currentNode.end, nextNode === undefined ? end : nextNode.start))[1];
7724
7734
  if (currentNode.included) {
7725
- currentNodeNeedsBoundaries
7726
- ? currentNode.render(code, options, {
7735
+ if (currentNodeNeedsBoundaries) {
7736
+ currentNode.render(code, options, {
7727
7737
  end: nextNodeStart,
7728
7738
  start: currentNodeStart
7729
- })
7730
- : currentNode.render(code, options);
7739
+ });
7740
+ }
7741
+ else {
7742
+ currentNode.render(code, options);
7743
+ }
7731
7744
  }
7732
7745
  else {
7733
7746
  treeshakeNode(currentNode, code, currentNodeStart, nextNodeStart);
@@ -7921,7 +7934,9 @@ class RestElement extends NodeBase {
7921
7934
  return this.argument.declare(kind, UNKNOWN_EXPRESSION);
7922
7935
  }
7923
7936
  deoptimizePath(path) {
7924
- path.length === 0 && this.argument.deoptimizePath(EMPTY_PATH);
7937
+ if (path.length === 0) {
7938
+ this.argument.deoptimizePath(EMPTY_PATH);
7939
+ }
7925
7940
  }
7926
7941
  hasEffectsOnInteractionAtPath(path, interaction, context) {
7927
7942
  return (path.length > 0 ||
@@ -8376,7 +8391,9 @@ class AssignmentPattern extends NodeBase {
8376
8391
  return this.left.declare(kind, init);
8377
8392
  }
8378
8393
  deoptimizePath(path) {
8379
- path.length === 0 && this.left.deoptimizePath(path);
8394
+ if (path.length === 0) {
8395
+ this.left.deoptimizePath(path);
8396
+ }
8380
8397
  }
8381
8398
  hasEffectsOnInteractionAtPath(path, interaction, context) {
8382
8399
  return (path.length > 0 || this.left.hasEffectsOnInteractionAtPath(EMPTY_PATH, interaction, context));
@@ -11766,7 +11783,9 @@ class SwitchCase extends NodeBase {
11766
11783
  }
11767
11784
  render(code, options, nodeRenderOptions) {
11768
11785
  if (this.consequent.length > 0) {
11769
- this.test && this.test.render(code, options);
11786
+ if (this.test) {
11787
+ this.test.render(code, options);
11788
+ }
11770
11789
  const testEnd = this.test
11771
11790
  ? this.test.end
11772
11791
  : findFirstOccurrenceOutsideComment(code.original, 'default', this.start) + 7;
@@ -13946,7 +13965,9 @@ class Module {
13946
13965
  ]);
13947
13966
  }
13948
13967
  error(properties, pos) {
13949
- pos !== undefined && this.addLocationToLogProps(properties, pos);
13968
+ if (pos !== undefined) {
13969
+ this.addLocationToLogProps(properties, pos);
13970
+ }
13950
13971
  return error(properties);
13951
13972
  }
13952
13973
  // sum up the length of all ast nodes that are included
@@ -15922,12 +15943,16 @@ const removeUnreferencedAssets = (outputBundle) => {
15922
15943
  const unreferencedAssets = new Set();
15923
15944
  const bundleEntries = Object.values(outputBundle);
15924
15945
  for (const asset of bundleEntries) {
15925
- asset.type === 'asset' && asset.needsCodeReference && unreferencedAssets.add(asset.fileName);
15946
+ if (asset.type === 'asset' && asset.needsCodeReference) {
15947
+ unreferencedAssets.add(asset.fileName);
15948
+ }
15926
15949
  }
15927
15950
  for (const chunk of bundleEntries) {
15928
15951
  if (chunk.type === 'chunk') {
15929
15952
  for (const referencedFile of chunk.referencedFiles) {
15930
- unreferencedAssets.has(referencedFile) && unreferencedAssets.delete(referencedFile);
15953
+ if (unreferencedAssets.has(referencedFile)) {
15954
+ unreferencedAssets.delete(referencedFile);
15955
+ }
15931
15956
  }
15932
15957
  }
15933
15958
  }
@@ -16374,7 +16399,9 @@ class Chunk {
16374
16399
  magicString.prepend(banner);
16375
16400
  if (format === 'es' || format === 'cjs') {
16376
16401
  const shebang = facadeModule !== null && facadeModule.info.isEntry && facadeModule.shebang;
16377
- shebang && magicString.prepend(`#!${shebang}\n`);
16402
+ if (shebang) {
16403
+ magicString.prepend(`#!${shebang}\n`);
16404
+ }
16378
16405
  }
16379
16406
  if (footer)
16380
16407
  magicString.append(footer);
@@ -16695,7 +16722,7 @@ class Chunk {
16695
16722
  : relative$1(this.inputBase, idWithoutExtension);
16696
16723
  }
16697
16724
  else {
16698
- return `_virtual/${basename(idWithoutExtension)}`;
16725
+ return (this.outputOptions.virtualDirname.replace(/\/$/, '') + '/' + basename(idWithoutExtension));
16699
16726
  }
16700
16727
  }
16701
16728
  getReexportSpecifiers() {
@@ -17534,11 +17561,13 @@ function getOptimizedChunks(chunks, minChunkSize, sideEffectAtoms, sizeByAtom, l
17534
17561
  timeEnd('optimize chunks', 3);
17535
17562
  return chunks; // the actual modules
17536
17563
  }
17537
- minChunkSize > 1 &&
17564
+ if (minChunkSize > 1) {
17538
17565
  log('info', logOptimizeChunkStatus(chunks.length, chunkPartition.small.size, 'Initially'));
17566
+ }
17539
17567
  mergeChunks(chunkPartition, minChunkSize, sideEffectAtoms, sizeByAtom);
17540
- minChunkSize > 1 &&
17568
+ if (minChunkSize > 1) {
17541
17569
  log('info', logOptimizeChunkStatus(chunkPartition.small.size + chunkPartition.big.size, chunkPartition.small.size, 'After merging chunks'));
17570
+ }
17542
17571
  timeEnd('optimize chunks', 3);
17543
17572
  return [...chunkPartition.small, ...chunkPartition.big];
17544
17573
  }
@@ -18205,7 +18234,12 @@ function emitSourceMapAndGetComment(fileName, map, pluginDriver, { sourcemap, so
18205
18234
  url = sourcemapBaseUrl
18206
18235
  ? new URL(sourcemapFileName, sourcemapBaseUrl).toString()
18207
18236
  : sourcemapFileName;
18208
- pluginDriver.emitFile({ fileName, source: map.toString(), type: 'asset' });
18237
+ pluginDriver.emitFile({
18238
+ fileName,
18239
+ originalFileName: null,
18240
+ source: map.toString(),
18241
+ type: 'asset'
18242
+ });
18209
18243
  }
18210
18244
  return sourcemap === 'hidden' ? '' : `//# ${SOURCEMAPPING_URL}=${url}\n`;
18211
18245
  }
@@ -19307,10 +19341,10 @@ class GlobalScope extends Scope {
19307
19341
  }
19308
19342
  }
19309
19343
 
19310
- function generateAssetFileName(name, source, sourceHash, outputOptions, bundle) {
19344
+ function generateAssetFileName(name, source, originalFileName, sourceHash, outputOptions, bundle) {
19311
19345
  const emittedName = outputOptions.sanitizeFileName(name || 'asset');
19312
19346
  return makeUnique(renderNamePattern(typeof outputOptions.assetFileNames === 'function'
19313
- ? outputOptions.assetFileNames({ name, source, type: 'asset' })
19347
+ ? outputOptions.assetFileNames({ name, originalFileName, source, type: 'asset' })
19314
19348
  : outputOptions.assetFileNames, 'output.assetFileNames', {
19315
19349
  ext: () => extname(emittedName).slice(1),
19316
19350
  extname: () => extname(emittedName),
@@ -19502,10 +19536,15 @@ class FileEmitter {
19502
19536
  const source = emittedAsset.source === undefined
19503
19537
  ? undefined
19504
19538
  : getValidSource(emittedAsset.source, emittedAsset, null);
19539
+ const originalFileName = emittedAsset.originalFileName || null;
19540
+ if (typeof originalFileName === 'string') {
19541
+ this.graph.watchFiles[originalFileName] = true;
19542
+ }
19505
19543
  const consumedAsset = {
19506
19544
  fileName: emittedAsset.fileName,
19507
19545
  name: emittedAsset.name,
19508
19546
  needsCodeReference: !!emittedAsset.needsCodeReference,
19547
+ originalFileName,
19509
19548
  referenceId: '',
19510
19549
  source,
19511
19550
  type: 'asset'
@@ -19577,13 +19616,13 @@ class FileEmitter {
19577
19616
  return referenceId;
19578
19617
  }
19579
19618
  finalizeAdditionalAsset(consumedFile, source, { bundle, fileNamesBySource, getHash, outputOptions }) {
19580
- let { fileName, needsCodeReference, referenceId } = consumedFile;
19619
+ let { fileName, needsCodeReference, originalFileName, referenceId } = consumedFile;
19581
19620
  // Deduplicate assets if an explicit fileName is not provided
19582
19621
  if (!fileName) {
19583
19622
  const sourceHash = getHash(source);
19584
19623
  fileName = fileNamesBySource.get(sourceHash);
19585
19624
  if (!fileName) {
19586
- fileName = generateAssetFileName(consumedFile.name, source, sourceHash, outputOptions, bundle);
19625
+ fileName = generateAssetFileName(consumedFile.name, source, originalFileName, sourceHash, outputOptions, bundle);
19587
19626
  fileNamesBySource.set(sourceHash, fileName);
19588
19627
  }
19589
19628
  }
@@ -19599,6 +19638,7 @@ class FileEmitter {
19599
19638
  fileName,
19600
19639
  name: consumedFile.name,
19601
19640
  needsCodeReference,
19641
+ originalFileName,
19602
19642
  source,
19603
19643
  type: 'asset'
19604
19644
  };
@@ -19610,7 +19650,7 @@ class FileEmitter {
19610
19650
  let needsCodeReference = true;
19611
19651
  for (const consumedFile of consumedFiles) {
19612
19652
  needsCodeReference &&= consumedFile.needsCodeReference;
19613
- const assetFileName = generateAssetFileName(consumedFile.name, consumedFile.source, sourceHash, outputOptions, bundle);
19653
+ const assetFileName = generateAssetFileName(consumedFile.name, consumedFile.source, consumedFile.originalFileName, sourceHash, outputOptions, bundle);
19614
19654
  if (!fileName ||
19615
19655
  assetFileName.length < fileName.length ||
19616
19656
  (assetFileName.length === fileName.length && assetFileName < fileName)) {
@@ -19628,6 +19668,7 @@ class FileEmitter {
19628
19668
  fileName,
19629
19669
  name: usedConsumedFile.name,
19630
19670
  needsCodeReference,
19671
+ originalFileName: usedConsumedFile.originalFileName,
19631
19672
  source: usedConsumedFile.source,
19632
19673
  type: 'asset'
19633
19674
  };
@@ -19868,7 +19909,7 @@ class PluginDriver {
19868
19909
  if (typeof handler !== 'function') {
19869
19910
  return handler;
19870
19911
  }
19871
- // eslint-disable-next-line @typescript-eslint/ban-types
19912
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
19872
19913
  const hookResult = handler.apply(context, parameters);
19873
19914
  if (!hookResult?.then) {
19874
19915
  // short circuit for non-thenables and non-Promises
@@ -19913,7 +19954,7 @@ class PluginDriver {
19913
19954
  context = replaceContext(context, plugin);
19914
19955
  }
19915
19956
  try {
19916
- // eslint-disable-next-line @typescript-eslint/ban-types
19957
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
19917
19958
  return handler.apply(context, parameters);
19918
19959
  }
19919
19960
  catch (error_) {
@@ -20475,7 +20516,8 @@ async function normalizeOutputOptions(config, inputOptions, unsetInputOptions) {
20475
20516
  sourcemapPathTransform: config.sourcemapPathTransform,
20476
20517
  strict: config.strict ?? true,
20477
20518
  systemNullSetters: config.systemNullSetters ?? true,
20478
- validate: config.validate || false
20519
+ validate: config.validate || false,
20520
+ virtualDirname: config.virtualDirname || '_virtual'
20479
20521
  };
20480
20522
  warnUnknownOptions(config, Object.keys(outputOptions), 'output options', inputOptions.onLog);
20481
20523
  return { options: outputOptions, unsetOptions };
@@ -21183,7 +21225,8 @@ async function mergeOutputOptions(config, overrides, log) {
21183
21225
  sourcemapPathTransform: getOption('sourcemapPathTransform'),
21184
21226
  strict: getOption('strict'),
21185
21227
  systemNullSetters: getOption('systemNullSetters'),
21186
- validate: getOption('validate')
21228
+ validate: getOption('validate'),
21229
+ virtualDirname: getOption('virtualDirname')
21187
21230
  };
21188
21231
  warnUnknownOptions(config, Object.keys(outputOptions), 'output options', log);
21189
21232
  return outputOptions;
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  @license
3
- Rollup.js v4.19.2
4
- Thu, 01 Aug 2024 08:32:23 GMT - commit 39955e55dbc12ec379a21efcf8fc21e55ec6ce3a
3
+ Rollup.js v4.21.0
4
+ Sun, 18 Aug 2024 05:55:06 GMT - commit c4bb050938778bcbe7b3b3ea3419f7fa70d60f5b
5
5
 
6
6
  https://github.com/rollup/rollup
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  @license
3
- Rollup.js v4.19.2
4
- Thu, 01 Aug 2024 08:32:23 GMT - commit 39955e55dbc12ec379a21efcf8fc21e55ec6ce3a
3
+ Rollup.js v4.21.0
4
+ Sun, 18 Aug 2024 05:55:06 GMT - commit c4bb050938778bcbe7b3b3ea3419f7fa70d60f5b
5
5
 
6
6
  https://github.com/rollup/rollup
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  @license
3
- Rollup.js v4.19.2
4
- Thu, 01 Aug 2024 08:32:23 GMT - commit 39955e55dbc12ec379a21efcf8fc21e55ec6ce3a
3
+ Rollup.js v4.21.0
4
+ Sun, 18 Aug 2024 05:55:06 GMT - commit c4bb050938778bcbe7b3b3ea3419f7fa70d60f5b
5
5
 
6
6
  https://github.com/rollup/rollup
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  @license
3
- Rollup.js v4.19.2
4
- Thu, 01 Aug 2024 08:32:23 GMT - commit 39955e55dbc12ec379a21efcf8fc21e55ec6ce3a
3
+ Rollup.js v4.21.0
4
+ Sun, 18 Aug 2024 05:55:06 GMT - commit c4bb050938778bcbe7b3b3ea3419f7fa70d60f5b
5
5
 
6
6
  https://github.com/rollup/rollup
7
7
 
package/dist/parseAst.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  @license
3
- Rollup.js v4.19.2
4
- Thu, 01 Aug 2024 08:32:23 GMT - commit 39955e55dbc12ec379a21efcf8fc21e55ec6ce3a
3
+ Rollup.js v4.21.0
4
+ Sun, 18 Aug 2024 05:55:06 GMT - commit c4bb050938778bcbe7b3b3ea3419f7fa70d60f5b
5
5
 
6
6
  https://github.com/rollup/rollup
7
7
 
package/dist/rollup.d.ts CHANGED
@@ -161,6 +161,7 @@ export interface EmittedAsset {
161
161
  fileName?: string;
162
162
  name?: string;
163
163
  needsCodeReference?: boolean;
164
+ originalFileName?: string | null;
164
165
  source?: string | Uint8Array;
165
166
  type: 'asset';
166
167
  }
@@ -226,6 +227,7 @@ export type ParseAst = (
226
227
 
227
228
  // declare AbortSignal here for environments without DOM lib or @types/node
228
229
  declare global {
230
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
229
231
  interface AbortSignal {}
230
232
  }
231
233
 
@@ -394,7 +396,6 @@ export type WatchChangeHook = (
394
396
  * const myPlugin: PluginImpl<Options> = (options = {}) => { ... }
395
397
  * ```
396
398
  */
397
- // eslint-disable-next-line @typescript-eslint/ban-types
398
399
  export type PluginImpl<O extends object = object, A = any> = (options?: O) => Plugin<A>;
399
400
 
400
401
  export interface OutputBundle {
@@ -504,13 +505,13 @@ type MakeAsync<Function_> = Function_ extends (
504
505
  ? (this: This, ...parameters: Arguments) => Return | Promise<Return>
505
506
  : never;
506
507
 
507
- // eslint-disable-next-line @typescript-eslint/ban-types
508
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
508
509
  type ObjectHook<T, O = {}> = T | ({ handler: T; order?: 'pre' | 'post' | null } & O);
509
510
 
510
511
  export type PluginHooks = {
511
512
  [K in keyof FunctionPluginHooks]: ObjectHook<
512
513
  K extends AsyncPluginHooks ? MakeAsync<FunctionPluginHooks[K]> : FunctionPluginHooks[K],
513
- // eslint-disable-next-line @typescript-eslint/ban-types
514
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
514
515
  K extends ParallelPluginHooks ? { sequential?: boolean } : {}
515
516
  >;
516
517
  };
@@ -755,6 +756,7 @@ export interface OutputOptions {
755
756
  strict?: boolean;
756
757
  systemNullSetters?: boolean;
757
758
  validate?: boolean;
759
+ virtualDirname?: string;
758
760
  }
759
761
 
760
762
  export interface NormalizedOutputOptions {
@@ -808,6 +810,7 @@ export interface NormalizedOutputOptions {
808
810
  strict: boolean;
809
811
  systemNullSetters: boolean;
810
812
  validate: boolean;
813
+ virtualDirname: string;
811
814
  }
812
815
 
813
816
  export type WarningHandlerWithDefault = (
@@ -821,6 +824,7 @@ export interface SerializedTimings {
821
824
 
822
825
  export interface PreRenderedAsset {
823
826
  name: string | undefined;
827
+ originalFileName: string | null;
824
828
  source: string | Uint8Array;
825
829
  type: 'asset';
826
830
  }
package/dist/rollup.js CHANGED
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  @license
3
- Rollup.js v4.19.2
4
- Thu, 01 Aug 2024 08:32:23 GMT - commit 39955e55dbc12ec379a21efcf8fc21e55ec6ce3a
3
+ Rollup.js v4.21.0
4
+ Sun, 18 Aug 2024 05:55:06 GMT - commit c4bb050938778bcbe7b3b3ea3419f7fa70d60f5b
5
5
 
6
6
  https://github.com/rollup/rollup
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  @license
3
- Rollup.js v4.19.2
4
- Thu, 01 Aug 2024 08:32:23 GMT - commit 39955e55dbc12ec379a21efcf8fc21e55ec6ce3a
3
+ Rollup.js v4.21.0
4
+ Sun, 18 Aug 2024 05:55:06 GMT - commit c4bb050938778bcbe7b3b3ea3419f7fa70d60f5b
5
5
 
6
6
  https://github.com/rollup/rollup
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  @license
3
- Rollup.js v4.19.2
4
- Thu, 01 Aug 2024 08:32:23 GMT - commit 39955e55dbc12ec379a21efcf8fc21e55ec6ce3a
3
+ Rollup.js v4.21.0
4
+ Sun, 18 Aug 2024 05:55:06 GMT - commit c4bb050938778bcbe7b3b3ea3419f7fa70d60f5b
5
5
 
6
6
  https://github.com/rollup/rollup
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  @license
3
- Rollup.js v4.19.2
4
- Thu, 01 Aug 2024 08:32:23 GMT - commit 39955e55dbc12ec379a21efcf8fc21e55ec6ce3a
3
+ Rollup.js v4.21.0
4
+ Sun, 18 Aug 2024 05:55:06 GMT - commit c4bb050938778bcbe7b3b3ea3419f7fa70d60f5b
5
5
 
6
6
  https://github.com/rollup/rollup
7
7
 
@@ -418,7 +418,7 @@ function getCamelizedPluginBaseName(pluginText) {
418
418
  }
419
419
  async function requireOrImport(pluginPath) {
420
420
  try {
421
- // eslint-disable-next-line unicorn/prefer-module
421
+ // eslint-disable-next-line unicorn/prefer-module, @typescript-eslint/no-require-imports
422
422
  return require(pluginPath);
423
423
  }
424
424
  catch {
@@ -490,7 +490,7 @@ async function loadTranspiledConfigFile(fileName, commandOptions) {
490
490
  const { bundleConfigAsCjs, configPlugin, silent } = commandOptions;
491
491
  const warnings = batchWarnings(commandOptions);
492
492
  const inputOptions = {
493
- external: (id) => (id[0] !== '.' && !path.isAbsolute(id)) || id.slice(-5, id.length) === '.json',
493
+ external: (id) => (id[0] !== '.' && !path.isAbsolute(id)) || id.slice(-5) === '.json',
494
494
  input: fileName,
495
495
  onwarn: warnings.add,
496
496
  plugins: [],
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  @license
3
- Rollup.js v4.19.2
4
- Thu, 01 Aug 2024 08:32:23 GMT - commit 39955e55dbc12ec379a21efcf8fc21e55ec6ce3a
3
+ Rollup.js v4.21.0
4
+ Sun, 18 Aug 2024 05:55:06 GMT - commit c4bb050938778bcbe7b3b3ea3419f7fa70d60f5b
5
5
 
6
6
  https://github.com/rollup/rollup
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  @license
3
- Rollup.js v4.19.2
4
- Thu, 01 Aug 2024 08:32:23 GMT - commit 39955e55dbc12ec379a21efcf8fc21e55ec6ce3a
3
+ Rollup.js v4.21.0
4
+ Sun, 18 Aug 2024 05:55:06 GMT - commit c4bb050938778bcbe7b3b3ea3419f7fa70d60f5b
5
5
 
6
6
  https://github.com/rollup/rollup
7
7
 
@@ -31,7 +31,7 @@ function _interopNamespaceDefault(e) {
31
31
 
32
32
  const tty__namespace = /*#__PURE__*/_interopNamespaceDefault(tty);
33
33
 
34
- var version = "4.19.2";
34
+ var version = "4.21.0";
35
35
 
36
36
  function ensureArray$1(items) {
37
37
  if (Array.isArray(items)) {
@@ -165,12 +165,16 @@ const removeUnreferencedAssets = (outputBundle) => {
165
165
  const unreferencedAssets = new Set();
166
166
  const bundleEntries = Object.values(outputBundle);
167
167
  for (const asset of bundleEntries) {
168
- asset.type === 'asset' && asset.needsCodeReference && unreferencedAssets.add(asset.fileName);
168
+ if (asset.type === 'asset' && asset.needsCodeReference) {
169
+ unreferencedAssets.add(asset.fileName);
170
+ }
169
171
  }
170
172
  for (const chunk of bundleEntries) {
171
173
  if (chunk.type === 'chunk') {
172
174
  for (const referencedFile of chunk.referencedFiles) {
173
- unreferencedAssets.has(referencedFile) && unreferencedAssets.delete(referencedFile);
175
+ if (unreferencedAssets.has(referencedFile)) {
176
+ unreferencedAssets.delete(referencedFile);
177
+ }
174
178
  }
175
179
  }
176
180
  }
@@ -203,10 +207,10 @@ function makeUnique(name, { [lowercaseBundleKeys]: reservedLowercaseBundleKeys }
203
207
  return uniqueName;
204
208
  }
205
209
 
206
- function generateAssetFileName(name, source, sourceHash, outputOptions, bundle) {
210
+ function generateAssetFileName(name, source, originalFileName, sourceHash, outputOptions, bundle) {
207
211
  const emittedName = outputOptions.sanitizeFileName(name || 'asset');
208
212
  return makeUnique(renderNamePattern(typeof outputOptions.assetFileNames === 'function'
209
- ? outputOptions.assetFileNames({ name, source, type: 'asset' })
213
+ ? outputOptions.assetFileNames({ name, originalFileName, source, type: 'asset' })
210
214
  : outputOptions.assetFileNames, 'output.assetFileNames', {
211
215
  ext: () => path$2.extname(emittedName).slice(1),
212
216
  extname: () => path$2.extname(emittedName),
@@ -398,10 +402,15 @@ class FileEmitter {
398
402
  const source = emittedAsset.source === undefined
399
403
  ? undefined
400
404
  : getValidSource(emittedAsset.source, emittedAsset, null);
405
+ const originalFileName = emittedAsset.originalFileName || null;
406
+ if (typeof originalFileName === 'string') {
407
+ this.graph.watchFiles[originalFileName] = true;
408
+ }
401
409
  const consumedAsset = {
402
410
  fileName: emittedAsset.fileName,
403
411
  name: emittedAsset.name,
404
412
  needsCodeReference: !!emittedAsset.needsCodeReference,
413
+ originalFileName,
405
414
  referenceId: '',
406
415
  source,
407
416
  type: 'asset'
@@ -473,13 +482,13 @@ class FileEmitter {
473
482
  return referenceId;
474
483
  }
475
484
  finalizeAdditionalAsset(consumedFile, source, { bundle, fileNamesBySource, getHash, outputOptions }) {
476
- let { fileName, needsCodeReference, referenceId } = consumedFile;
485
+ let { fileName, needsCodeReference, originalFileName, referenceId } = consumedFile;
477
486
  // Deduplicate assets if an explicit fileName is not provided
478
487
  if (!fileName) {
479
488
  const sourceHash = getHash(source);
480
489
  fileName = fileNamesBySource.get(sourceHash);
481
490
  if (!fileName) {
482
- fileName = generateAssetFileName(consumedFile.name, source, sourceHash, outputOptions, bundle);
491
+ fileName = generateAssetFileName(consumedFile.name, source, originalFileName, sourceHash, outputOptions, bundle);
483
492
  fileNamesBySource.set(sourceHash, fileName);
484
493
  }
485
494
  }
@@ -495,6 +504,7 @@ class FileEmitter {
495
504
  fileName,
496
505
  name: consumedFile.name,
497
506
  needsCodeReference,
507
+ originalFileName,
498
508
  source,
499
509
  type: 'asset'
500
510
  };
@@ -506,7 +516,7 @@ class FileEmitter {
506
516
  let needsCodeReference = true;
507
517
  for (const consumedFile of consumedFiles) {
508
518
  needsCodeReference &&= consumedFile.needsCodeReference;
509
- const assetFileName = generateAssetFileName(consumedFile.name, consumedFile.source, sourceHash, outputOptions, bundle);
519
+ const assetFileName = generateAssetFileName(consumedFile.name, consumedFile.source, consumedFile.originalFileName, sourceHash, outputOptions, bundle);
510
520
  if (!fileName ||
511
521
  assetFileName.length < fileName.length ||
512
522
  (assetFileName.length === fileName.length && assetFileName < fileName)) {
@@ -524,6 +534,7 @@ class FileEmitter {
524
534
  fileName,
525
535
  name: usedConsumedFile.name,
526
536
  needsCodeReference,
537
+ originalFileName: usedConsumedFile.originalFileName,
527
538
  source: usedConsumedFile.source,
528
539
  type: 'asset'
529
540
  };
@@ -985,7 +996,7 @@ class PluginDriver {
985
996
  if (typeof handler !== 'function') {
986
997
  return handler;
987
998
  }
988
- // eslint-disable-next-line @typescript-eslint/ban-types
999
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
989
1000
  const hookResult = handler.apply(context, parameters);
990
1001
  if (!hookResult?.then) {
991
1002
  // short circuit for non-thenables and non-Promises
@@ -1030,7 +1041,7 @@ class PluginDriver {
1030
1041
  context = replaceContext(context, plugin);
1031
1042
  }
1032
1043
  try {
1033
- // eslint-disable-next-line @typescript-eslint/ban-types
1044
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type
1034
1045
  return handler.apply(context, parameters);
1035
1046
  }
1036
1047
  catch (error_) {
@@ -1287,7 +1298,8 @@ async function mergeOutputOptions(config, overrides, log) {
1287
1298
  sourcemapPathTransform: getOption('sourcemapPathTransform'),
1288
1299
  strict: getOption('strict'),
1289
1300
  systemNullSetters: getOption('systemNullSetters'),
1290
- validate: getOption('validate')
1301
+ validate: getOption('validate'),
1302
+ virtualDirname: getOption('virtualDirname')
1291
1303
  };
1292
1304
  warnUnknownOptions(config, Object.keys(outputOptions), 'output options', log);
1293
1305
  return outputOptions;
@@ -2430,8 +2442,10 @@ class MagicString {
2430
2442
  update(start, end, content, options) {
2431
2443
  if (typeof content !== 'string') throw new TypeError('replacement content must be a string');
2432
2444
 
2433
- while (start < 0) start += this.original.length;
2434
- while (end < 0) end += this.original.length;
2445
+ if (this.original.length !== 0) {
2446
+ while (start < 0) start += this.original.length;
2447
+ while (end < 0) end += this.original.length;
2448
+ }
2435
2449
 
2436
2450
  if (end > this.original.length) throw new Error('end is out of bounds');
2437
2451
  if (start === end)
@@ -2527,8 +2541,10 @@ class MagicString {
2527
2541
  }
2528
2542
 
2529
2543
  remove(start, end) {
2530
- while (start < 0) start += this.original.length;
2531
- while (end < 0) end += this.original.length;
2544
+ if (this.original.length !== 0) {
2545
+ while (start < 0) start += this.original.length;
2546
+ while (end < 0) end += this.original.length;
2547
+ }
2532
2548
 
2533
2549
  if (start === end) return this;
2534
2550
 
@@ -2551,8 +2567,10 @@ class MagicString {
2551
2567
  }
2552
2568
 
2553
2569
  reset(start, end) {
2554
- while (start < 0) start += this.original.length;
2555
- while (end < 0) end += this.original.length;
2570
+ if (this.original.length !== 0) {
2571
+ while (start < 0) start += this.original.length;
2572
+ while (end < 0) end += this.original.length;
2573
+ }
2556
2574
 
2557
2575
  if (start === end) return this;
2558
2576
 
@@ -2614,8 +2632,10 @@ class MagicString {
2614
2632
  }
2615
2633
 
2616
2634
  slice(start = 0, end = this.original.length) {
2617
- while (start < 0) start += this.original.length;
2618
- while (end < 0) end += this.original.length;
2635
+ if (this.original.length !== 0) {
2636
+ while (start < 0) start += this.original.length;
2637
+ while (end < 0) end += this.original.length;
2638
+ }
2619
2639
 
2620
2640
  let result = '';
2621
2641
 
@@ -8848,7 +8868,9 @@ class ChildScope extends Scope {
8848
8868
  this.parent.addNamespaceMemberAccess(name, variable);
8849
8869
  }
8850
8870
  addReturnExpression(expression) {
8851
- this.parent instanceof ChildScope && this.parent.addReturnExpression(expression);
8871
+ if (this.parent instanceof ChildScope) {
8872
+ this.parent.addReturnExpression(expression);
8873
+ }
8852
8874
  }
8853
8875
  addUsedOutsideNames(usedNames, format, exportNamesByVariable, accessedGlobalsByScope) {
8854
8876
  for (const variable of this.accessedOutsideVariables.values()) {
@@ -9164,12 +9186,15 @@ function renderStatementList(statements, code, start, end, options) {
9164
9186
  currentNode.end +
9165
9187
  findFirstLineBreakOutsideComment(code.original.slice(currentNode.end, nextNode === undefined ? end : nextNode.start))[1];
9166
9188
  if (currentNode.included) {
9167
- currentNodeNeedsBoundaries
9168
- ? currentNode.render(code, options, {
9189
+ if (currentNodeNeedsBoundaries) {
9190
+ currentNode.render(code, options, {
9169
9191
  end: nextNodeStart,
9170
9192
  start: currentNodeStart
9171
- })
9172
- : currentNode.render(code, options);
9193
+ });
9194
+ }
9195
+ else {
9196
+ currentNode.render(code, options);
9197
+ }
9173
9198
  }
9174
9199
  else {
9175
9200
  treeshakeNode(currentNode, code, currentNodeStart, nextNodeStart);
@@ -9363,7 +9388,9 @@ class RestElement extends NodeBase {
9363
9388
  return this.argument.declare(kind, UNKNOWN_EXPRESSION);
9364
9389
  }
9365
9390
  deoptimizePath(path) {
9366
- path.length === 0 && this.argument.deoptimizePath(EMPTY_PATH);
9391
+ if (path.length === 0) {
9392
+ this.argument.deoptimizePath(EMPTY_PATH);
9393
+ }
9367
9394
  }
9368
9395
  hasEffectsOnInteractionAtPath(path, interaction, context) {
9369
9396
  return (path.length > 0 ||
@@ -9818,7 +9845,9 @@ class AssignmentPattern extends NodeBase {
9818
9845
  return this.left.declare(kind, init);
9819
9846
  }
9820
9847
  deoptimizePath(path) {
9821
- path.length === 0 && this.left.deoptimizePath(path);
9848
+ if (path.length === 0) {
9849
+ this.left.deoptimizePath(path);
9850
+ }
9822
9851
  }
9823
9852
  hasEffectsOnInteractionAtPath(path, interaction, context) {
9824
9853
  return (path.length > 0 || this.left.hasEffectsOnInteractionAtPath(EMPTY_PATH, interaction, context));
@@ -13208,7 +13237,9 @@ class SwitchCase extends NodeBase {
13208
13237
  }
13209
13238
  render(code, options, nodeRenderOptions) {
13210
13239
  if (this.consequent.length > 0) {
13211
- this.test && this.test.render(code, options);
13240
+ if (this.test) {
13241
+ this.test.render(code, options);
13242
+ }
13212
13243
  const testEnd = this.test
13213
13244
  ? this.test.end
13214
13245
  : findFirstOccurrenceOutsideComment(code.original, 'default', this.start) + 7;
@@ -15381,7 +15412,9 @@ class Module {
15381
15412
  ]);
15382
15413
  }
15383
15414
  error(properties, pos) {
15384
- pos !== undefined && this.addLocationToLogProps(properties, pos);
15415
+ if (pos !== undefined) {
15416
+ this.addLocationToLogProps(properties, pos);
15417
+ }
15385
15418
  return parseAst_js.error(properties);
15386
15419
  }
15387
15420
  // sum up the length of all ast nodes that are included
@@ -17704,7 +17737,9 @@ class Chunk {
17704
17737
  magicString.prepend(banner);
17705
17738
  if (format === 'es' || format === 'cjs') {
17706
17739
  const shebang = facadeModule !== null && facadeModule.info.isEntry && facadeModule.shebang;
17707
- shebang && magicString.prepend(`#!${shebang}\n`);
17740
+ if (shebang) {
17741
+ magicString.prepend(`#!${shebang}\n`);
17742
+ }
17708
17743
  }
17709
17744
  if (footer)
17710
17745
  magicString.append(footer);
@@ -18025,7 +18060,7 @@ class Chunk {
18025
18060
  : parseAst_js.relative(this.inputBase, idWithoutExtension);
18026
18061
  }
18027
18062
  else {
18028
- return `_virtual/${path$2.basename(idWithoutExtension)}`;
18063
+ return (this.outputOptions.virtualDirname.replace(/\/$/, '') + '/' + path$2.basename(idWithoutExtension));
18029
18064
  }
18030
18065
  }
18031
18066
  getReexportSpecifiers() {
@@ -18864,11 +18899,13 @@ function getOptimizedChunks(chunks, minChunkSize, sideEffectAtoms, sizeByAtom, l
18864
18899
  timeEnd('optimize chunks', 3);
18865
18900
  return chunks; // the actual modules
18866
18901
  }
18867
- minChunkSize > 1 &&
18902
+ if (minChunkSize > 1) {
18868
18903
  log('info', parseAst_js.logOptimizeChunkStatus(chunks.length, chunkPartition.small.size, 'Initially'));
18904
+ }
18869
18905
  mergeChunks(chunkPartition, minChunkSize, sideEffectAtoms, sizeByAtom);
18870
- minChunkSize > 1 &&
18906
+ if (minChunkSize > 1) {
18871
18907
  log('info', parseAst_js.logOptimizeChunkStatus(chunkPartition.small.size + chunkPartition.big.size, chunkPartition.small.size, 'After merging chunks'));
18908
+ }
18872
18909
  timeEnd('optimize chunks', 3);
18873
18910
  return [...chunkPartition.small, ...chunkPartition.big];
18874
18911
  }
@@ -19515,7 +19552,12 @@ function emitSourceMapAndGetComment(fileName, map, pluginDriver, { sourcemap, so
19515
19552
  url = sourcemapBaseUrl
19516
19553
  ? new URL(sourcemapFileName, sourcemapBaseUrl).toString()
19517
19554
  : sourcemapFileName;
19518
- pluginDriver.emitFile({ fileName, source: map.toString(), type: 'asset' });
19555
+ pluginDriver.emitFile({
19556
+ fileName,
19557
+ originalFileName: null,
19558
+ source: map.toString(),
19559
+ type: 'asset'
19560
+ });
19519
19561
  }
19520
19562
  return sourcemap === 'hidden' ? '' : `//# ${SOURCEMAPPING_URL}=${url}\n`;
19521
19563
  }
@@ -20869,7 +20911,8 @@ async function normalizeOutputOptions(config, inputOptions, unsetInputOptions) {
20869
20911
  sourcemapPathTransform: config.sourcemapPathTransform,
20870
20912
  strict: config.strict ?? true,
20871
20913
  systemNullSetters: config.systemNullSetters ?? true,
20872
- validate: config.validate || false
20914
+ validate: config.validate || false,
20915
+ virtualDirname: config.virtualDirname || '_virtual'
20873
20916
  };
20874
20917
  warnUnknownOptions(config, Object.keys(outputOptions), 'output options', inputOptions.onLog);
20875
20918
  return { options: outputOptions, unsetOptions };
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  @license
3
- Rollup.js v4.19.2
4
- Thu, 01 Aug 2024 08:32:23 GMT - commit 39955e55dbc12ec379a21efcf8fc21e55ec6ce3a
3
+ Rollup.js v4.21.0
4
+ Sun, 18 Aug 2024 05:55:06 GMT - commit c4bb050938778bcbe7b3b3ea3419f7fa70d60f5b
5
5
 
6
6
  https://github.com/rollup/rollup
7
7
 
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  @license
3
- Rollup.js v4.19.2
4
- Thu, 01 Aug 2024 08:32:23 GMT - commit 39955e55dbc12ec379a21efcf8fc21e55ec6ce3a
3
+ Rollup.js v4.21.0
4
+ Sun, 18 Aug 2024 05:55:06 GMT - commit c4bb050938778bcbe7b3b3ea3419f7fa70d60f5b
5
5
 
6
6
  https://github.com/rollup/rollup
7
7
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rollup",
3
- "version": "4.19.2",
3
+ "version": "4.21.0",
4
4
  "description": "Next-generation ES module bundler",
5
5
  "main": "dist/rollup.js",
6
6
  "module": "dist/es/rollup.js",
@@ -107,22 +107,22 @@
107
107
  "homepage": "https://rollupjs.org/",
108
108
  "optionalDependencies": {
109
109
  "fsevents": "~2.3.2",
110
- "@rollup/rollup-darwin-arm64": "4.19.2",
111
- "@rollup/rollup-android-arm64": "4.19.2",
112
- "@rollup/rollup-win32-arm64-msvc": "4.19.2",
113
- "@rollup/rollup-linux-arm64-gnu": "4.19.2",
114
- "@rollup/rollup-linux-arm64-musl": "4.19.2",
115
- "@rollup/rollup-android-arm-eabi": "4.19.2",
116
- "@rollup/rollup-linux-arm-gnueabihf": "4.19.2",
117
- "@rollup/rollup-linux-arm-musleabihf": "4.19.2",
118
- "@rollup/rollup-win32-ia32-msvc": "4.19.2",
119
- "@rollup/rollup-linux-riscv64-gnu": "4.19.2",
120
- "@rollup/rollup-linux-powerpc64le-gnu": "4.19.2",
121
- "@rollup/rollup-linux-s390x-gnu": "4.19.2",
122
- "@rollup/rollup-darwin-x64": "4.19.2",
123
- "@rollup/rollup-win32-x64-msvc": "4.19.2",
124
- "@rollup/rollup-linux-x64-gnu": "4.19.2",
125
- "@rollup/rollup-linux-x64-musl": "4.19.2"
110
+ "@rollup/rollup-darwin-arm64": "4.21.0",
111
+ "@rollup/rollup-android-arm64": "4.21.0",
112
+ "@rollup/rollup-win32-arm64-msvc": "4.21.0",
113
+ "@rollup/rollup-linux-arm64-gnu": "4.21.0",
114
+ "@rollup/rollup-linux-arm64-musl": "4.21.0",
115
+ "@rollup/rollup-android-arm-eabi": "4.21.0",
116
+ "@rollup/rollup-linux-arm-gnueabihf": "4.21.0",
117
+ "@rollup/rollup-linux-arm-musleabihf": "4.21.0",
118
+ "@rollup/rollup-win32-ia32-msvc": "4.21.0",
119
+ "@rollup/rollup-linux-riscv64-gnu": "4.21.0",
120
+ "@rollup/rollup-linux-powerpc64le-gnu": "4.21.0",
121
+ "@rollup/rollup-linux-s390x-gnu": "4.21.0",
122
+ "@rollup/rollup-darwin-x64": "4.21.0",
123
+ "@rollup/rollup-win32-x64-msvc": "4.21.0",
124
+ "@rollup/rollup-linux-x64-gnu": "4.21.0",
125
+ "@rollup/rollup-linux-x64-musl": "4.21.0"
126
126
  },
127
127
  "dependencies": {
128
128
  "@types/estree": "1.0.5"
@@ -137,7 +137,7 @@
137
137
  "@codemirror/language": "^6.10.2",
138
138
  "@codemirror/search": "^6.5.6",
139
139
  "@codemirror/state": "^6.4.1",
140
- "@codemirror/view": "^6.28.6",
140
+ "@codemirror/view": "^6.32.0",
141
141
  "@jridgewell/sourcemap-codec": "^1.5.0",
142
142
  "@mermaid-js/mermaid-cli": "^10.9.1",
143
143
  "@napi-rs/cli": "^2.18.4",
@@ -150,15 +150,15 @@
150
150
  "@rollup/plugin-terser": "^0.4.4",
151
151
  "@rollup/plugin-typescript": "^11.1.6",
152
152
  "@rollup/pluginutils": "^5.1.0",
153
- "@shikijs/vitepress-twoslash": "^1.11.0",
153
+ "@shikijs/vitepress-twoslash": "^1.12.1",
154
154
  "@types/eslint": "^8.56.11",
155
155
  "@types/inquirer": "^9.0.7",
156
156
  "@types/mocha": "^10.0.7",
157
157
  "@types/node": "~18.18.14",
158
158
  "@types/semver": "^7.5.8",
159
159
  "@types/yargs-parser": "^21.0.3",
160
- "@typescript-eslint/eslint-plugin": "^7.17.0",
161
- "@typescript-eslint/parser": "^7.17.0",
160
+ "@typescript-eslint/eslint-plugin": "^8.1.0",
161
+ "@typescript-eslint/parser": "^8.1.0",
162
162
  "@vue/eslint-config-prettier": "^9.0.0",
163
163
  "@vue/eslint-config-typescript": "^13.0.0",
164
164
  "acorn": "^8.12.1",
@@ -177,28 +177,28 @@
177
177
  "eslint-config-prettier": "^9.1.0",
178
178
  "eslint-plugin-import": "^2.29.1",
179
179
  "eslint-plugin-prettier": "^5.2.1",
180
- "eslint-plugin-unicorn": "^54.0.0",
180
+ "eslint-plugin-unicorn": "^55.0.0",
181
181
  "eslint-plugin-vue": "^9.27.0",
182
182
  "fixturify": "^3.0.0",
183
183
  "flru": "^1.0.2",
184
184
  "fs-extra": "^11.2.0",
185
185
  "github-api": "^3.4.0",
186
- "husky": "^9.1.1",
187
- "inquirer": "^10.1.2",
186
+ "husky": "^9.1.4",
187
+ "inquirer": "^10.1.8",
188
188
  "is-reference": "^3.0.2",
189
- "lint-staged": "^15.2.7",
189
+ "lint-staged": "^15.2.8",
190
190
  "locate-character": "^3.0.0",
191
- "magic-string": "^0.30.10",
192
- "mocha": "^10.7.0",
191
+ "magic-string": "^0.30.11",
192
+ "mocha": "^10.7.3",
193
193
  "nodemon": "^3.1.4",
194
194
  "npm-audit-resolver": "^3.0.0-RC.0",
195
195
  "nyc": "^17.0.0",
196
- "pinia": "^2.1.7",
196
+ "pinia": "^2.2.1",
197
197
  "prettier": "^3.3.3",
198
198
  "pretty-bytes": "^6.1.1",
199
- "pretty-ms": "^9.0.0",
199
+ "pretty-ms": "^9.1.0",
200
200
  "requirejs": "^2.3.7",
201
- "rollup": "^4.19.0",
201
+ "rollup": "^4.20.0",
202
202
  "rollup-plugin-license": "^3.5.2",
203
203
  "rollup-plugin-string": "^3.0.0",
204
204
  "semver": "^7.6.3",
@@ -207,17 +207,17 @@
207
207
  "source-map": "^0.7.4",
208
208
  "source-map-support": "^0.5.21",
209
209
  "systemjs": "^6.15.1",
210
- "terser": "^5.31.3",
210
+ "terser": "^5.31.5",
211
211
  "tslib": "^2.6.3",
212
212
  "typescript": "^5.5.4",
213
- "vite": "^5.3.4",
214
- "vitepress": "^1.3.1",
215
- "vue": "^3.4.33",
213
+ "vite": "^5.4.0",
214
+ "vitepress": "^1.3.2",
215
+ "vue": "^3.4.37",
216
216
  "wasm-pack": "^0.13.0",
217
217
  "yargs-parser": "^21.1.1"
218
218
  },
219
219
  "overrides": {
220
- "axios": "^1.7.2",
220
+ "axios": "^1.7.3",
221
221
  "semver": "^7.6.3",
222
222
  "ws": "^8.18.0"
223
223
  },