@file-viewer/vite-plugin 2.1.18 → 2.1.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.js +23 -2
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -926,6 +926,14 @@ function resolvePackageEntry(packageName, anchorPackages = []) {
926
926
  }
927
927
  return null;
928
928
  }
929
+ function resolvePackageFile(packageName, relativePath, anchorPackages = []) {
930
+ const packageRoot = resolvePackageRoot(packageName, anchorPackages);
931
+ if (!packageRoot) {
932
+ return null;
933
+ }
934
+ const entry = resolve(packageRoot, relativePath);
935
+ return existsSync(entry) && statSync(entry).isFile() ? entry : null;
936
+ }
929
937
  function readPackageExportEntry(value) {
930
938
  if (typeof value === 'string') {
931
939
  return value;
@@ -965,6 +973,15 @@ function normalizeViteAlias(alias) {
965
973
  }
966
974
  return Object.entries(alias).map(([find, replacement]) => ({ find, replacement }));
967
975
  }
976
+ function escapeRegExp(value) {
977
+ return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
978
+ }
979
+ function createExactImportAlias(find, replacement) {
980
+ return {
981
+ find: new RegExp(`^${escapeRegExp(find)}$`),
982
+ replacement
983
+ };
984
+ }
968
985
  function createFileViewerResolveAliases(anchorPackages) {
969
986
  const packageNames = unique([
970
987
  '@file-viewer/core',
@@ -974,12 +991,16 @@ function createFileViewerResolveAliases(anchorPackages) {
974
991
  const aliases = [];
975
992
  const coreAssetsEntry = resolvePackageExportEntry('@file-viewer/core', './assets', anchorPackages);
976
993
  if (coreAssetsEntry) {
977
- aliases.push({ find: '@file-viewer/core/assets', replacement: coreAssetsEntry });
994
+ aliases.push(createExactImportAlias('@file-viewer/core/assets', coreAssetsEntry));
995
+ }
996
+ const jszipBrowserEntry = resolvePackageFile('jszip', 'dist/jszip.js', anchorPackages);
997
+ if (jszipBrowserEntry) {
998
+ aliases.push(createExactImportAlias('jszip/dist/jszip', jszipBrowserEntry));
978
999
  }
979
1000
  aliases.push(...packageNames
980
1001
  .map((packageName) => {
981
1002
  const entry = resolvePackageEntry(packageName, anchorPackages);
982
- return entry ? { find: packageName, replacement: entry } : null;
1003
+ return entry ? createExactImportAlias(packageName, entry) : null;
983
1004
  })
984
1005
  .filter((alias) => Boolean(alias)));
985
1006
  return aliases;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@file-viewer/vite-plugin",
3
- "version": "2.1.18",
3
+ "version": "2.1.20",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "description": "Vite plugin for Flyfish File Viewer on-demand renderer assembly, chunk planning, and offline asset deployment.",