UNPKG

vite-plugin-react-server

Version:
35 lines (32 loc) 7.77 kB
/** * vite-plugin-react-server * Copyright (c) Nico Brinkkemper * MIT License */ import { createLogger } from 'vite'; import { discoverClientPackages } from './discover.js'; const clientPackagesDiscoveryPlugin = (userOptions) => { return { name: "vite-plugin-react-server:client-packages-discovery", enforce: "pre", async config(_config, env) { const merged = await discoverClientPackages({ isBuild: env.command === "build", manual: userOptions.clientPackages, exclude: userOptions.excludeClientPackages, logger: userOptions.verbose ? createLogger("warn") : void 0 }); userOptions.clientPackages = merged; if (merged.length === 0) return void 0; if (env.command !== "serve") return void 0; const exclude = [...merged]; return { environments: { server: { optimizeDeps: { exclude } } } }; } }; }; export { clientPackagesDiscoveryPlugin }; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2luLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9wbHVnaW4vY2xpZW50UGFja2FnZXMvcGx1Z2luLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUGx1Z2luIH0gZnJvbSBcInZpdGVcIjtcbmltcG9ydCB7IGNyZWF0ZUxvZ2dlciB9IGZyb20gXCJ2aXRlXCI7XG5pbXBvcnQgeyBkaXNjb3ZlckNsaWVudFBhY2thZ2VzIH0gZnJvbSBcIi4vZGlzY292ZXIuanNcIjtcblxuaW50ZXJmYWNlIENsaWVudFBhY2thZ2VzVXNlck9wdGlvbnMge1xuICBjbGllbnRQYWNrYWdlcz86IHJlYWRvbmx5IHN0cmluZ1tdO1xuICBleGNsdWRlQ2xpZW50UGFja2FnZXM/OiByZWFkb25seSBzdHJpbmdbXTtcbiAgdmVyYm9zZT86IGJvb2xlYW47XG59XG5cbi8qKlxuICogVml0ZSBwbHVnaW4gdGhhdCBydW5zIGF1dG8tZGV0ZWN0aW9uIGluIGl0cyBhc3luYyBgY29uZmlnYCBob29rLCB0aGVuXG4gKiBtdXRhdGVzIGB1c2VyT3B0aW9ucy5jbGllbnRQYWNrYWdlc2Agc28gYWxsIGRvd25zdHJlYW0gY29uc3VtZXJzICh0aGVcbiAqIHRyYW5zZm9ybWVyJ3Mgd2hpdGVsaXN0IGZpbHRlciwgYHJlc29sdmVVc2VyQ29uZmlnYCdzIG5vRXh0ZXJuYWwgbWVyZ2UpXG4gKiBzZWUgdGhlIG1lcmdlZCBsaXN0IHdoZW4gdGhlaXIgb3duIGhvb2tzIHJlYWQgaXQuXG4gKlxuICogV2h5IG11dGF0aW9uOiB0aGUgb3JjaGVzdHJhdG9yIHBhc3NlcyB0aGUgc2FtZSBgdXNlck9wdGlvbnNgIHJlZmVyZW5jZVxuICogdG8gZXZlcnkgcGx1Z2luIGl0IGNyZWF0ZXMuIEFzIGxvbmcgYXMgbm9ib2R5IGNvcGllcyB0aGUgb2JqZWN0IG9uIHRoZVxuICogd2F5IHRocm91Z2gsIG11dGF0aW5nIGBjbGllbnRQYWNrYWdlc2AgaGVyZSBpcyB2aXNpYmxlIGluIGV2ZXJ5IG90aGVyXG4gKiBwbHVnaW4ncyBob29rcy4gU2VlIGBjcmVhdGVQbHVnaW5PcmNoZXN0cmF0b3Iue3NlcnZlcixjbGllbnR9LnRzYCBmb3JcbiAqIHRoZSBjb21tZW50IGd1YXJkaW5nIGFnYWluc3QgYWNjaWRlbnRhbCBzcHJlYWRzLlxuICpcbiAqIGBlbmZvcmNlOiBcInByZVwiYCBwdXRzIHRoaXMgcGx1Z2luJ3MgYGNvbmZpZ2AgaG9vayBhaGVhZCBvZlxuICogYGNyZWF0ZUVudmlyb25tZW50UGx1Z2luYCdzLCBzbyBieSB0aGUgdGltZSBgcmVzb2x2ZVVzZXJDb25maWdgIHJlYWRzXG4gKiBgdXNlck9wdGlvbnMuY2xpZW50UGFja2FnZXNgIGZvciB0aGUgbm9FeHRlcm5hbCBtZXJnZSwgdGhlIGF1dG8tZGV0ZWN0ZWRcbiAqIHBhY2thZ2VzIGFyZSBhbHJlYWR5IGluIHRoZSBsaXN0LlxuICpcbiAqIFJldHVybnMgYSBwYXJ0aWFsIFZpdGUgY29uZmlnIHRoYXQgYWRkcyB0aGUgbWVyZ2VkIGxpc3QgdG8gdGhlICoqcm9vdCoqXG4gKiBgb3B0aW1pemVEZXBzLmV4Y2x1ZGVgLiBUaGUgcGVyLWVudmlyb25tZW50IFNTUi1zaWRlIGV4Y2x1ZGUgaW5cbiAqIGByZXNvbHZlVXNlckNvbmZpZ2AgY292ZXJzIGBzcnJDb25maWcub3B0aW1pemVEZXBzLmV4Y2x1ZGVgIG9ubHkg4oCUIHRoYXRcbiAqIG5ldmVyIHJlYWNoZXMgVml0ZSdzIGRldiBwcmUtYnVuZGxlciwgd2hpY2ggcmVhZHMgZnJvbSB0aGUgcm9vdCBjb25maWcuXG4gKiBXaXRob3V0IHRoaXMsIGVzYnVpbGQgY29uY2F0ZW5hdGVzIGV2ZXJ5IGBcInVzZSBjbGllbnRcImAgZGlyZWN0aXZlIG91dCBvZlxuICogZWFjaCBjbGllbnRQYWNrYWdlIHN1Ym1vZHVsZSBpbnRvIGBub2RlX21vZHVsZXMvLnZpdGUvZGVwcy88cGtnPi5qc2AsIHRoZVxuICogc2VydmVyLWVudiBtb2R1bGUgcnVubmVyIGNvbnN1bHRzIHRoZSBzYW1lIGNhY2hlIHdoZW4gcmVzb2x2aW5nIHRoZVxuICogcGFja2FnZSwgYW5kIHZwcnMncyB0cmFuc2Zvcm1lciBuZXZlciBzZWVzIHRoZSBkaXJlY3RpdmVzIHRvIGNvbnZlcnRcbiAqIHRoZW0gaW50byBgcmVnaXN0ZXJDbGllbnRSZWZlcmVuY2VgIOKAlCBhIHNlcnZlciBjb21wb25lbnQgaW1wb3J0aW5nXG4gKiBgQGNoYWtyYS11aS9yZWFjdGAgKG9yIGFueSBvdGhlciBhdXRvLWRldGVjdGVkIGNsaWVudCBwYWNrYWdlKSB0aGVuXG4gKiBjcmFzaGVzIHRoZSBkZXYgc2VydmVyIHdpdGggYHJlYWN0IGRvZXMgbm90IHByb3ZpZGUgYW4gZXhwb3J0IG5hbWVkXG4gKiBjcmVhdGVDb250ZXh0YCB1bmRlciB0aGUgYHJlYWN0LXNlcnZlcmAgY29uZGl0aW9uLlxuICovXG5leHBvcnQgY29uc3QgY2xpZW50UGFja2FnZXNEaXNjb3ZlcnlQbHVnaW4gPSAoXG4gIHVzZXJPcHRpb25zOiBDbGllbnRQYWNrYWdlc1VzZXJPcHRpb25zICYgUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbik6IFBsdWdpbiA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZTogXCJ2aXRlLXBsdWdpbi1yZWFjdC1zZXJ2ZXI6Y2xpZW50LXBhY2thZ2VzLWRpc2NvdmVyeVwiLFxuICAgIGVuZm9yY2U6IFwicHJlXCIsXG4gICAgYXN5bmMgY29uZmlnKF9jb25maWcsIGVudikge1xuICAgICAgY29uc3QgbWVyZ2VkID0gYXdhaXQgZGlzY292ZXJDbGllbnRQYWNrYWdlcyh7XG4gICAgICAgIGlzQnVpbGQ6IGVudi5jb21tYW5kID09PSBcImJ1aWxkXCIsXG4gICAgICAgIG1hbnVhbDogdXNlck9wdGlvbnMuY2xpZW50UGFja2FnZXMsXG4gICAgICAgIGV4Y2x1ZGU6IHVzZXJPcHRpb25zLmV4Y2x1ZGVDbGllbnRQYWNrYWdlcyxcbiAgICAgICAgbG9nZ2VyOiB1c2VyT3B0aW9ucy52ZXJib3NlID8gY3JlYXRlTG9nZ2VyKFwid2FyblwiKSA6IHVuZGVmaW5lZCxcbiAgICAgIH0pO1xuICAgICAgdXNlck9wdGlvbnMuY2xpZW50UGFja2FnZXMgPSBtZXJnZWQ7XG4gICAgICBpZiAobWVyZ2VkLmxlbmd0aCA9PT0gMCkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIC8vIG9wdGltaXplRGVwcyAoZXNidWlsZCBwcmUtYnVuZGxpbmcpIGlzIGEgREVWLXNlcnZlciBjb25jZXJuOyBhXG4gICAgICAvLyBwcm9kdWN0aW9uIGJ1aWxkIHVzZXMgUm9sbHVwIGFuZCBpZ25vcmVzIGl0LiBSZXR1cm5pbmcgYSBwZXItZW52XG4gICAgICAvLyBgZW52aXJvbm1lbnRzLnNlcnZlcmAgY29uZmlnIGluIGJ1aWxkIG1vZGUgY29ycnVwdHMgdGhlIGJ1aWxkJ3NcbiAgICAgIC8vIGVudmlyb25tZW50IHJlc29sdXRpb24gKGNsaWVudC1yZWZlcmVuY2UgcGF0aHMgY29tZSBvdXQgd2l0aCBhXG4gICAgICAvLyBkb3VibGUgc2xhc2gpLiBTY29wZSB0aGUgZXhjbHVkZSB0byBkZXYgb25seS5cbiAgICAgIGlmIChlbnYuY29tbWFuZCAhPT0gXCJzZXJ2ZVwiKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgLy8gRXhjbHVkZSBjbGllbnQgcGFja2FnZXMgZnJvbSBvcHRpbWl6ZURlcHMgT05MWSBpbiB0aGUgc2VydmVyXG4gICAgICAvLyAocmVhY3Qtc2VydmVyKSBlbnZpcm9ubWVudDogdGhlcmUsIHByZS1idW5kbGluZyB3b3VsZCBjb25jYXRlbmF0ZSB0aGVcbiAgICAgIC8vIHBhY2thZ2UgaW50byBvbmUgY2h1bmsgYW5kIHN0cmlwIGl0cyBwZXItZmlsZSBgXCJ1c2UgY2xpZW50XCJgIGRpcmVjdGl2ZXNcbiAgICAgIC8vIGJlZm9yZSB2cHJzJ3MgdHJhbnNmb3JtIGNhbiBjb252ZXJ0IHRoZW0gdG8gY2xpZW50IHJlZmVyZW5jZXMuXG4gICAgICAvL1xuICAgICAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCBleGNsdWRlIHRoZW0gZnJvbSB0aGUgY2xpZW50IChicm93c2VyKVxuICAgICAgLy8gZW52aXJvbm1lbnQg4oCUIHRoZXJlLCBsZXR0aW5nIGVzYnVpbGQgcHJlLWJ1bmRsZSB0aGVtIG5vcm1hbGx5IGlzIHdoYXQgd2VcbiAgICAgIC8vIHdhbnQ6IGl0IHJlc29sdmVzIHRoZWlyIHRyYW5zaXRpdmUgQ0pTIGRlcHMgKGhvaXN0LW5vbi1yZWFjdC1zdGF0aWNzLFxuICAgICAgLy8gdGhlIFJlYWN0IHJ1bnRpbWUsIOKApikgYW5kIHN5bnRoZXNpemVzIHRoZSBuYW1lZC9kZWZhdWx0IGV4cG9ydHMgdGhlXG4gICAgICAvLyBicm93c2VyIGJ1bmRsZSBuZWVkcy4gQSBibGFua2V0IHJvb3QtbGV2ZWwgZXhjbHVkZSBpcyB3aGF0IHVzZWQgdG8gYnJlYWtcbiAgICAgIC8vIHRoZSBjbGllbnQgKHRob3NlIGRlcHMgc2VydmVkIHJhdyDihpIgXCJkb2VzIG5vdCBwcm92aWRlIGFuIGV4cG9ydCBuYW1lZOKAplwiXG4gICAgICAvLyBlcnJvcnMpOyBzY29waW5nIHRoZSBleGNsdWRlIHBlci1lbnZpcm9ubWVudCBmaXhlcyBib3RoIHNpZGVzIHdpdGhvdXRcbiAgICAgIC8vIGhhbmQtY29sbGVjdGluZyB0cmFuc2l0aXZlIGRlcHMuXG4gICAgICBjb25zdCBleGNsdWRlID0gWy4uLm1lcmdlZF07XG4gICAgICByZXR1cm4ge1xuICAgICAgICBlbnZpcm9ubWVudHM6IHtcbiAgICAgICAgICBzZXJ2ZXI6IHsgb3B0aW1pemVEZXBzOiB7IGV4Y2x1ZGUgfSB9LFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICB9LFxuICB9O1xufTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQXdDYSxNQUFBLDZCQUFBLEdBQWdDLENBQzNDLFdBQ1csS0FBQTtBQUNYLEVBQU8sT0FBQTtBQUFBLElBQ0wsSUFBTSxFQUFBLG9EQUFBO0FBQUEsSUFDTixPQUFTLEVBQUEsS0FBQTtBQUFBLElBQ1QsTUFBTSxNQUFPLENBQUEsT0FBQSxFQUFTLEdBQUssRUFBQTtBQUN6QixNQUFNLE1BQUEsTUFBQSxHQUFTLE1BQU0sc0JBQXVCLENBQUE7QUFBQSxRQUMxQyxPQUFBLEVBQVMsSUFBSSxPQUFZLEtBQUEsT0FBQTtBQUFBLFFBQ3pCLFFBQVEsV0FBWSxDQUFBLGNBQUE7QUFBQSxRQUNwQixTQUFTLFdBQVksQ0FBQSxxQkFBQTtBQUFBLFFBQ3JCLE1BQVEsRUFBQSxXQUFBLENBQVksT0FBVSxHQUFBLFlBQUEsQ0FBYSxNQUFNLENBQUksR0FBQTtBQUFBLE9BQ3RELENBQUE7QUFDRCxNQUFBLFdBQUEsQ0FBWSxjQUFpQixHQUFBLE1BQUE7QUFDN0IsTUFBSSxJQUFBLE1BQUEsQ0FBTyxNQUFXLEtBQUEsQ0FBQSxFQUFVLE9BQUEsTUFBQTtBQU1oQyxNQUFJLElBQUEsR0FBQSxDQUFJLE9BQVksS0FBQSxPQUFBLEVBQWdCLE9BQUEsTUFBQTtBQWNwQyxNQUFNLE1BQUEsT0FBQSxHQUFVLENBQUMsR0FBRyxNQUFNLENBQUE7QUFDMUIsTUFBTyxPQUFBO0FBQUEsUUFDTCxZQUFjLEVBQUE7QUFBQSxVQUNaLE1BQVEsRUFBQSxFQUFFLFlBQWMsRUFBQSxFQUFFLFNBQVU7QUFBQTtBQUN0QyxPQUNGO0FBQUE7QUFDRixHQUNGO0FBQ0Y7Ozs7In0=