@peerbit/vite 1.0.38 → 1.1.1

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 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,cAAc,EAInB,MAAM,uBAAuB,CAAC;AAI/B,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,MAAM,CAAC;AAGzC,YAAY,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,WAAW,cAAc;IAC9B,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG;QAAE,WAAW,IAAI,OAAO,CAAA;KAAE,CAAC;IACnD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACpC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,SAAS,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IAC/D,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9C,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;CACnC;yBAsHA,UAAS;IACR,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,IAAI,CAAC;CAC3C,KACJ,YAAY,EAAE;AALjB,wBA0BE;AA6BF,eAAO,MAAM,YAAY;wCAxIf,MAAM,SACR;QAAE,EAAE,CAAC,EAAE,cAAc,CAAC;QAAC,SAAS,CAAC,EAAE,cAAc,EAAE,CAAA;KAAE;;qCAMnD,MAAM,EAAE,SACV;QAAE,EAAE,CAAC,EAAE,cAAc,CAAC;QAAC,SAAS,CAAC,EAAE,cAAc,EAAE,CAAA;KAAE;CAoI5D,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,KAAK,cAAc,EAInB,MAAM,uBAAuB,CAAC;AAI/B,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,MAAM,CAAC;AAGzC,YAAY,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,MAAM,WAAW,cAAc;IAC9B,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG;QAAE,WAAW,IAAI,OAAO,CAAA;KAAE,CAAC;IACnD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACpC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,SAAS,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IAC/D,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9C,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;CACnC;yBAyJA,UAAS;IACR,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,IAAI,CAAC;CAC3C,KACJ,YAAY,EAAE;AALjB,wBAwCE;AA6BF,eAAO,MAAM,YAAY;wCAzLf,MAAM,SACR;QAAE,EAAE,CAAC,EAAE,cAAc,CAAC;QAAC,SAAS,CAAC,EAAE,cAAc,EAAE,CAAA;KAAE;;qCAMnD,MAAM,EAAE,SACV;QAAE,EAAE,CAAC,EAAE,cAAc,CAAC;QAAC,SAAS,CAAC,EAAE,cAAc,EAAE,CAAA;KAAE;CAqL5D,CAAC"}
package/dist/src/index.js CHANGED
@@ -29,7 +29,10 @@ const findLibraryInNodeModules = (library, deps) => {
29
29
  return baseFindLibraryInNodeModules(library, createFindLibraryOptions(deps));
30
30
  };
31
31
  const resolveAssetLocations = (sources, deps) => {
32
- return baseResolveAssetLocations(sources, createFindLibraryOptions(deps));
32
+ const rewritten = sources.map((s) => s
33
+ .replace("/dist/peerbit", "/dist/src")
34
+ .replace(/\\dist\\peerbit/g, "\\dist\\src"));
35
+ return baseResolveAssetLocations(rewritten, createFindLibraryOptions(deps));
33
36
  };
34
37
  function dontMinimizeCertainPackagesPlugin(options = {}) {
35
38
  options.packages = [
@@ -51,63 +54,99 @@ function dontMinimizeCertainPackagesPlugin(options = {}) {
51
54
  };
52
55
  }
53
56
  function copyToPublicPlugin(options = {}) {
57
+ const [sqlite3Assets] = resolveAssetLocations([
58
+ "@peerbit/indexer-sqlite3/dist/assets/sqlite3",
59
+ ]);
54
60
  return {
55
61
  name: "copy-to-public",
56
62
  enforce: "pre",
57
- buildStart() {
58
- // Ensure worker exists in public/ as a last-resort (CI safety), even if assets disabled
59
- try {
60
- // Copy the entire dist/peerbit directory from @peerbit/indexer-sqlite3
61
- const peerbitDistDir = findLibraryInNodeModules("@peerbit/indexer-sqlite3/dist/peerbit");
62
- const destDir = path.resolve(resolveStaticPath(), "peerbit");
63
- copyAssets(peerbitDistDir, destDir, "/");
64
- }
65
- catch (_err) {
66
- // ignore; optional best-effort
67
- }
68
- if (options?.assets) {
69
- options.assets.forEach(({ src, dest }) => {
70
- const sourcePath = path.resolve(src);
71
- let destinationPath = path.resolve(resolveStaticPath(), dest);
72
- copyAssets(sourcePath, destinationPath, "/");
73
- });
63
+ config(config) {
64
+ const publicDir = resolveOrCreatePublicDir(config?.publicDir);
65
+ config.publicDir = publicDir;
66
+ if (!publicDir) {
67
+ throw new Error("[peerbit/vite] No public or static directory found. Please create a public/ or static/ directory or configure publicDir explicitly.");
74
68
  }
69
+ // Ensure worker exists in public/ for dev server.
70
+ const destDir = path.resolve(publicDir, sqlite3Assets.dest);
71
+ copyAssets(sqlite3Assets.src, destDir, "/");
72
+ options?.assets?.forEach(({ src, dest }) => {
73
+ const sourcePath = path.resolve(src);
74
+ const destinationPath = path.resolve(publicDir, dest);
75
+ copyAssets(sourcePath, destinationPath, "/");
76
+ });
75
77
  },
76
78
  };
77
79
  }
78
- const resolveStaticPath = () => {
79
- // if public folder exist, then put files there (react)
80
- // else put in static folder if (svelte)
81
- // else throw error
80
+ const resolveOrCreatePublicDir = (configured) => {
81
+ if (configured === false)
82
+ return undefined;
83
+ if (configured)
84
+ return path.resolve(configured);
82
85
  const publicPath = path.resolve(process.cwd(), "public");
83
- const staticPath = path.resolve(process.cwd(), "static");
84
- if (fs.existsSync(publicPath)) {
86
+ if (fs.existsSync(publicPath))
85
87
  return publicPath;
86
- }
87
- else if (fs.existsSync(staticPath)) {
88
+ const staticPath = path.resolve(process.cwd(), "static");
89
+ if (fs.existsSync(staticPath))
88
90
  return staticPath;
89
- }
90
- else {
91
- throw new Error("Could not find public or static folder");
92
- }
91
+ return undefined;
93
92
  };
93
+ function nodePolyfillsPlugin() {
94
+ const resolveEvents = () => {
95
+ try {
96
+ const req = createRequire(import.meta.url);
97
+ return req.resolve("events/");
98
+ }
99
+ catch {
100
+ // fallback: attempt via cwd
101
+ const req = createRequire(path.join(process.cwd(), "package.json"));
102
+ return req.resolve("events/");
103
+ }
104
+ };
105
+ return {
106
+ name: "peerbit-node-polyfills",
107
+ config(config) {
108
+ config.resolve = config.resolve || {};
109
+ config.resolve.alias = config.resolve.alias || {};
110
+ if (!config.resolve.alias.events) {
111
+ config.resolve.alias.events = resolveEvents();
112
+ }
113
+ config.optimizeDeps = config.optimizeDeps || {};
114
+ config.optimizeDeps.include = config.optimizeDeps.include || [];
115
+ if (!config.optimizeDeps.include.includes("events")) {
116
+ config.optimizeDeps.include.push("events");
117
+ }
118
+ },
119
+ };
120
+ }
94
121
  export default (options = {}) => {
95
122
  const includeDefaultAssets = options.assets === undefined;
96
123
  const userAssets = Array.isArray(options.assets) ? options.assets : [];
97
124
  const assetsToCopy = includeDefaultAssets
98
125
  ? [...resolveAssetLocations(defaultAssetSources), ...userAssets]
99
126
  : userAssets;
127
+ const staticCopyTargets = assetsToCopy.map(({ src, dest }) => ({
128
+ src,
129
+ dest: path.dirname(dest),
130
+ rename: path.basename(dest),
131
+ }));
132
+ const publicDir = resolveOrCreatePublicDir();
100
133
  return [
101
134
  dontMinimizeCertainPackagesPlugin({ packages: options.packages }),
102
135
  copyToPublicPlugin({
103
136
  assets: assetsToCopy,
104
137
  }),
138
+ nodePolyfillsPlugin(),
105
139
  viteStaticCopy({
106
140
  targets: [
107
- {
108
- src: `${resolveStaticPath()}/peerbit/sqlite3.wasm`,
109
- dest: "node_modules/.vite/deps",
110
- },
141
+ ...staticCopyTargets,
142
+ ...(publicDir
143
+ ? [
144
+ {
145
+ src: path.join(publicDir, "peerbit", "sqlite3", "sqlite3.wasm"),
146
+ dest: "node_modules/.vite/deps",
147
+ },
148
+ ]
149
+ : []),
111
150
  ],
112
151
  }),
113
152
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@peerbit/vite",
3
- "version": "1.0.38",
3
+ "version": "1.1.1",
4
4
  "description": "Plugin for Vite to use Peerbit",
5
5
  "sideEffects": false,
6
6
  "type": "module",
@@ -61,14 +61,14 @@
61
61
  "dependencies": {
62
62
  "vite-plugin-static-copy": "^3.1.2",
63
63
  "vite": "^7.1.7",
64
- "@peerbit/build-assets": "1.0.0"
64
+ "@peerbit/build-assets": "1.1.0"
65
65
  },
66
66
  "devDependencies": {
67
67
  "chai": "^4.3.10",
68
68
  "@types/chai": "^4.3.16",
69
- "@peerbit/indexer-sqlite3": "1.2.30",
70
- "@peerbit/any-store": "2.1.16",
71
- "@peerbit/any-store-opfs": "1.0.15"
69
+ "@peerbit/indexer-sqlite3": "1.3.0",
70
+ "@peerbit/any-store": "2.2.1",
71
+ "@peerbit/any-store-opfs": "1.1.1"
72
72
  },
73
73
  "localMaintainers": [
74
74
  "dao.xyz"
package/src/index.ts CHANGED
@@ -66,7 +66,12 @@ const resolveAssetLocations = (
66
66
  sources: string[],
67
67
  deps?: { fs?: FileSystemLike; resolvers?: ModuleResolver[] },
68
68
  ) => {
69
- return baseResolveAssetLocations(sources, createFindLibraryOptions(deps));
69
+ const rewritten = sources.map((s) =>
70
+ s
71
+ .replace("/dist/peerbit", "/dist/src")
72
+ .replace(/\\dist\\peerbit/g, "\\dist\\src"),
73
+ );
74
+ return baseResolveAssetLocations(rewritten, createFindLibraryOptions(deps));
70
75
  };
71
76
 
72
77
  function dontMinimizeCertainPackagesPlugin(
@@ -94,49 +99,79 @@ function dontMinimizeCertainPackagesPlugin(
94
99
  function copyToPublicPlugin(
95
100
  options: { assets?: { src: string; dest: string }[] } = {},
96
101
  ) {
102
+ const [sqlite3Assets] = resolveAssetLocations([
103
+ "@peerbit/indexer-sqlite3/dist/assets/sqlite3",
104
+ ]);
105
+
97
106
  return {
98
107
  name: "copy-to-public",
99
108
  enforce: "pre" as const,
100
- buildStart() {
101
- // Ensure worker exists in public/ as a last-resort (CI safety), even if assets disabled
102
- try {
103
- // Copy the entire dist/peerbit directory from @peerbit/indexer-sqlite3
104
- const peerbitDistDir = findLibraryInNodeModules(
105
- "@peerbit/indexer-sqlite3/dist/peerbit",
109
+ config(config: any) {
110
+ const publicDir = resolveOrCreatePublicDir(config?.publicDir);
111
+ config.publicDir = publicDir;
112
+
113
+ if (!publicDir) {
114
+ throw new Error(
115
+ "[peerbit/vite] No public or static directory found. Please create a public/ or static/ directory or configure publicDir explicitly.",
106
116
  );
107
- const destDir = path.resolve(resolveStaticPath(), "peerbit");
108
- copyAssets(peerbitDistDir, destDir, "/");
109
- } catch (_err) {
110
- // ignore; optional best-effort
111
117
  }
112
- if (options?.assets) {
113
- options.assets.forEach(({ src, dest }) => {
114
- const sourcePath = path.resolve(src);
115
118
 
116
- let destinationPath = path.resolve(resolveStaticPath(), dest);
117
- copyAssets(sourcePath, destinationPath, "/");
118
- });
119
- }
119
+ // Ensure worker exists in public/ for dev server.
120
+ const destDir = path.resolve(publicDir, sqlite3Assets.dest);
121
+ copyAssets(sqlite3Assets.src, destDir, "/");
122
+
123
+ options?.assets?.forEach(({ src, dest }) => {
124
+ const sourcePath = path.resolve(src);
125
+ const destinationPath = path.resolve(publicDir, dest);
126
+ copyAssets(sourcePath, destinationPath, "/");
127
+ });
120
128
  },
121
129
  };
122
130
  }
123
131
 
124
- const resolveStaticPath = () => {
125
- // if public folder exist, then put files there (react)
126
- // else put in static folder if (svelte)
127
- // else throw error
132
+ const resolveOrCreatePublicDir = (configured?: string | false) => {
133
+ if (configured === false) return undefined;
134
+ if (configured) return path.resolve(configured);
128
135
 
129
136
  const publicPath = path.resolve(process.cwd(), "public");
137
+ if (fs.existsSync(publicPath)) return publicPath;
138
+
130
139
  const staticPath = path.resolve(process.cwd(), "static");
131
- if (fs.existsSync(publicPath)) {
132
- return publicPath;
133
- } else if (fs.existsSync(staticPath)) {
134
- return staticPath;
135
- } else {
136
- throw new Error("Could not find public or static folder");
137
- }
140
+ if (fs.existsSync(staticPath)) return staticPath;
141
+
142
+ return undefined;
138
143
  };
139
144
 
145
+ function nodePolyfillsPlugin() {
146
+ const resolveEvents = () => {
147
+ try {
148
+ const req = createRequire(import.meta.url);
149
+ return req.resolve("events/");
150
+ } catch {
151
+ // fallback: attempt via cwd
152
+ const req = createRequire(path.join(process.cwd(), "package.json"));
153
+ return req.resolve("events/");
154
+ }
155
+ };
156
+
157
+ return {
158
+ name: "peerbit-node-polyfills",
159
+ config(config: any) {
160
+ config.resolve = config.resolve || {};
161
+ config.resolve.alias = config.resolve.alias || {};
162
+ if (!config.resolve.alias.events) {
163
+ config.resolve.alias.events = resolveEvents();
164
+ }
165
+
166
+ config.optimizeDeps = config.optimizeDeps || {};
167
+ config.optimizeDeps.include = config.optimizeDeps.include || [];
168
+ if (!config.optimizeDeps.include.includes("events")) {
169
+ config.optimizeDeps.include.push("events");
170
+ }
171
+ },
172
+ };
173
+ }
174
+
140
175
  export default (
141
176
  options: {
142
177
  packages?: string[];
@@ -149,17 +184,31 @@ export default (
149
184
  ? [...resolveAssetLocations(defaultAssetSources), ...userAssets]
150
185
  : userAssets;
151
186
 
187
+ const staticCopyTargets = assetsToCopy.map(({ src, dest }) => ({
188
+ src,
189
+ dest: path.dirname(dest),
190
+ rename: path.basename(dest),
191
+ }));
192
+
193
+ const publicDir = resolveOrCreatePublicDir();
194
+
152
195
  return [
153
196
  dontMinimizeCertainPackagesPlugin({ packages: options.packages }),
154
197
  copyToPublicPlugin({
155
198
  assets: assetsToCopy,
156
199
  }),
200
+ nodePolyfillsPlugin(),
157
201
  viteStaticCopy({
158
202
  targets: [
159
- {
160
- src: `${resolveStaticPath()}/peerbit/sqlite3.wasm`,
161
- dest: "node_modules/.vite/deps",
162
- },
203
+ ...staticCopyTargets,
204
+ ...(publicDir
205
+ ? [
206
+ {
207
+ src: path.join(publicDir, "peerbit", "sqlite3", "sqlite3.wasm"),
208
+ dest: "node_modules/.vite/deps",
209
+ },
210
+ ]
211
+ : []),
163
212
  ],
164
213
  }),
165
214
  ];