@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.
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +73 -34
- package/dist/src/index.js.map +1 -1
- package/package.json +5 -5
- package/src/index.ts +82 -33
package/dist/src/index.d.ts.map
CHANGED
|
@@ -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;
|
|
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
|
-
|
|
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
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
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
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
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
|
-
|
|
84
|
-
if (fs.existsSync(publicPath)) {
|
|
86
|
+
if (fs.existsSync(publicPath))
|
|
85
87
|
return publicPath;
|
|
86
|
-
|
|
87
|
-
|
|
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
|
-
|
|
109
|
-
|
|
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
|
];
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAGN,wBAAwB,IAAI,4BAA4B,EACxD,qBAAqB,IAAI,yBAAyB,EAClD,mBAAmB,GACnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAqB,MAAM,MAAM,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAazD,MAAM,iBAAiB,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAEzD,IAAI,cAA0C,CAAC;AAC/C,IAAI,CAAC;IACJ,cAAc,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC;AAC1E,CAAC;AAAC,OAAO,GAAG,EAAE,CAAC;IACd,2DAA2D;AAC5D,CAAC;AAED,MAAM,wBAAwB,GAAG,CAAC,IAGjC,EAAsB,EAAE;IACxB,MAAM,kBAAkB,GACvB,IAAI,EAAE,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;QAC3C,CAAC,CAAC,IAAI,CAAC,SAAS;QAChB,CAAC,CAAC,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;IAExC,MAAM,eAAe,GAAG,kBAAkB,CAAC,MAAM,CAChD,CAAC,QAAQ,EAA8B,EAAE,CAAC,QAAQ,IAAI,IAAI,CAC1D,CAAC;IAEF,MAAM,OAAO,GAAuB;QACnC,SAAS,EAAE,eAAe;KAC1B,CAAC;IAEF,IAAI,IAAI,EAAE,EAAE,EAAE,CAAC;QACd,OAAO,CAAC,EAAE,GAAG,IAAI,CAAC,EAAyC,CAAC;IAC7D,CAAC;IAED,OAAO,OAAO,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,wBAAwB,GAAG,CAChC,OAAe,EACf,IAA4D,EAC3D,EAAE;IACH,OAAO,4BAA4B,CAAC,OAAO,EAAE,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC;AAC9E,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAC7B,OAAiB,EACjB,IAA4D,EAC3D,EAAE;IACH,OAAO,
|
|
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.
|
|
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.
|
|
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.
|
|
70
|
-
"@peerbit/any-store": "2.1
|
|
71
|
-
"@peerbit/any-store-opfs": "1.
|
|
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
|
-
|
|
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
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
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
|
-
|
|
117
|
-
|
|
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
|
|
125
|
-
|
|
126
|
-
|
|
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(
|
|
132
|
-
|
|
133
|
-
|
|
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
|
-
|
|
161
|
-
|
|
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
|
];
|