@sapphire/plugin-hmr 1.1.0 → 1.2.0-next.a6503d3.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/README.md +4 -0
- package/dist/lib/hmr.d.ts +2 -1
- package/dist/lib/hmr.d.ts.map +1 -1
- package/dist/lib/hmr.js +13 -11
- package/dist/lib/hmr.js.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -163,6 +163,10 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
|
|
|
163
163
|
<td align="center"><a href="https://megatank58.me/"><img src="https://avatars.githubusercontent.com/u/51410502?v=4?s=100" width="100px;" alt=""/><br /><sub><b>megatank58</b></sub></a><br /><a href="https://github.com/sapphiredev/plugins/commits?author=megatank58" title="Code">💻</a></td>
|
|
164
164
|
<td align="center"><a href="https://fc5570.me/"><img src="https://avatars.githubusercontent.com/u/68158483?v=4?s=100" width="100px;" alt=""/><br /><sub><b>FC</b></sub></a><br /><a href="https://github.com/sapphiredev/plugins/commits?author=FC5570" title="Code">💻</a></td>
|
|
165
165
|
</tr>
|
|
166
|
+
<tr>
|
|
167
|
+
<td align="center"><a href="https://github.com/Suyashtnt"><img src="https://avatars.githubusercontent.com/u/45307955?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Just a Badly Drawn TABS Dude</b></sub></a><br /><a href="https://github.com/sapphiredev/plugins/commits?author=Suyashtnt" title="Code">💻</a></td>
|
|
168
|
+
<td align="center"><a href="https://newtt.me/"><img src="https://avatars.githubusercontent.com/u/19301186?v=4?s=100" width="100px;" alt=""/><br /><sub><b>newt :D</b></sub></a><br /><a href="https://github.com/sapphiredev/plugins/commits?author=newtykins" title="Code">💻</a></td>
|
|
169
|
+
</tr>
|
|
166
170
|
</table>
|
|
167
171
|
|
|
168
172
|
<!-- markdownlint-restore -->
|
package/dist/lib/hmr.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { WatchOptions } from 'chokidar';
|
|
2
2
|
export interface HMROptions extends WatchOptions {
|
|
3
3
|
enabled?: boolean;
|
|
4
|
+
silent?: boolean;
|
|
4
5
|
}
|
|
5
6
|
/**
|
|
6
7
|
* Starts HMR for all registered {@link Store Stores} in {@link container.stores the main container}.
|
|
@@ -12,5 +13,5 @@ export interface HMROptions extends WatchOptions {
|
|
|
12
13
|
* and if not provided in the object then `enabled` is also set to true.
|
|
13
14
|
*
|
|
14
15
|
*/
|
|
15
|
-
export declare function start({ enabled, ...options }?: HMROptions): void;
|
|
16
|
+
export declare function start({ enabled, silent, ...options }?: HMROptions): void;
|
|
16
17
|
//# sourceMappingURL=hmr.d.ts.map
|
package/dist/lib/hmr.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hmr.d.ts","sourceRoot":"","sources":["../../src/lib/hmr.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,YAAY,EAAE,MAAM,UAAU,CAAC;AAG/C,MAAM,WAAW,UAAW,SAAQ,YAAY;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"hmr.d.ts","sourceRoot":"","sources":["../../src/lib/hmr.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,YAAY,EAAE,MAAM,UAAU,CAAC;AAG/C,MAAM,WAAW,UAAW,SAAQ,YAAY;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;;;;GASG;AACH,wBAAgB,KAAK,CAAC,EAAE,OAAc,EAAE,MAAc,EAAE,GAAG,OAAO,EAAE,GAAE,UAA8B,QAWnG"}
|
package/dist/lib/hmr.js
CHANGED
|
@@ -14,21 +14,20 @@ const node_path_1 = require("node:path");
|
|
|
14
14
|
* and if not provided in the object then `enabled` is also set to true.
|
|
15
15
|
*
|
|
16
16
|
*/
|
|
17
|
-
function start({ enabled = true, ...options } = { enabled: true }) {
|
|
17
|
+
function start({ enabled = true, silent = false, ...options } = { enabled: true }) {
|
|
18
18
|
// Do not enable plugin when enabled is false
|
|
19
19
|
if (!enabled)
|
|
20
20
|
return;
|
|
21
|
-
|
|
21
|
+
if (!silent)
|
|
22
|
+
framework_1.container.logger.info('[HMR-Plugin]: Enabled. Watching for piece changes.');
|
|
22
23
|
for (const store of framework_1.container.stores.values()) {
|
|
23
|
-
const deleteCb = handlePiecePathDelete.bind(null, store);
|
|
24
|
-
const updateCb = handlePiecePathUpdate.bind(null, store);
|
|
25
24
|
(0, chokidar_1.watch)([...store.paths], options)
|
|
26
|
-
.on('change',
|
|
27
|
-
.on('unlink',
|
|
25
|
+
.on('change', (path) => handlePiecePathUpdate(store, path, silent))
|
|
26
|
+
.on('unlink', (path) => handlePiecePathDelete(store, path, silent));
|
|
28
27
|
}
|
|
29
28
|
}
|
|
30
29
|
exports.start = start;
|
|
31
|
-
async function handlePiecePathDelete(store, path) {
|
|
30
|
+
async function handlePiecePathDelete(store, path, silent) {
|
|
32
31
|
if (!store.strategy.filter(path))
|
|
33
32
|
return;
|
|
34
33
|
const pieceToDelete = store.find((piece) => piece.location.full === path);
|
|
@@ -36,20 +35,22 @@ async function handlePiecePathDelete(store, path) {
|
|
|
36
35
|
return;
|
|
37
36
|
const result = await (0, framework_1.fromAsync)(async () => {
|
|
38
37
|
await pieceToDelete.unload();
|
|
39
|
-
|
|
38
|
+
if (!silent)
|
|
39
|
+
framework_1.container.logger.info(`[HMR-Plugin]: Unloaded ${pieceToDelete.name} piece from ${pieceToDelete.store.name} store.`);
|
|
40
40
|
});
|
|
41
41
|
if ((0, framework_1.isErr)(result)) {
|
|
42
42
|
framework_1.container.logger.error(`[HMR-Plugin]: Failed to unload ${pieceToDelete.name} piece from ${pieceToDelete.store.name} store.`, result.error);
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
|
-
async function handlePiecePathUpdate(store, path) {
|
|
45
|
+
async function handlePiecePathUpdate(store, path, silent) {
|
|
46
46
|
if (!store.strategy.filter(path))
|
|
47
47
|
return;
|
|
48
48
|
const pieceToUpdate = store.find((piece) => piece.location.full === path);
|
|
49
49
|
const result = await (0, framework_1.fromAsync)(async () => {
|
|
50
50
|
if (pieceToUpdate) {
|
|
51
51
|
await pieceToUpdate.reload();
|
|
52
|
-
|
|
52
|
+
if (!silent)
|
|
53
|
+
framework_1.container.logger.info(`[HMR-Plugin]: reloaded ${pieceToUpdate.name} piece from ${pieceToUpdate.store.name} store.`);
|
|
53
54
|
}
|
|
54
55
|
else {
|
|
55
56
|
const rootPath = [...store.paths].find((storePath) => path.startsWith(storePath));
|
|
@@ -58,7 +59,8 @@ async function handlePiecePathUpdate(store, path) {
|
|
|
58
59
|
const piecesLoaded = await store.load(rootPath, (0, node_path_1.relative)(rootPath, path));
|
|
59
60
|
const piecesLoadedNames = piecesLoaded.map((piece) => piece.name);
|
|
60
61
|
const piecesLoadedStoreNames = piecesLoaded.map((piece) => piece.store.name);
|
|
61
|
-
|
|
62
|
+
if (!silent)
|
|
63
|
+
framework_1.container.logger.info(`[HMR-Plugin]: Loaded ${piecesLoadedNames.join(', ')} piece(s) from ${[...new Set(piecesLoadedStoreNames)].join(', ')} store(s).`);
|
|
62
64
|
}
|
|
63
65
|
});
|
|
64
66
|
if ((0, framework_1.isErr)(result)) {
|
package/dist/lib/hmr.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hmr.js","sourceRoot":"","sources":["../../src/lib/hmr.ts"],"names":[],"mappings":";;;AAAA,mDAAgF;AAChF,uCAA+C;AAC/C,yCAAqC;
|
|
1
|
+
{"version":3,"file":"hmr.js","sourceRoot":"","sources":["../../src/lib/hmr.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sapphire/plugin-hmr",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.0-next.a6503d3.0",
|
|
4
4
|
"description": "Plugin for @sapphire/framework for hot module reloading for pieces",
|
|
5
5
|
"author": "@sapphire",
|
|
6
6
|
"license": "MIT",
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"prepublishOnly": "yarn build"
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"chokidar": "^3.5.
|
|
35
|
+
"chokidar": "^3.5.3",
|
|
36
36
|
"tslib": "2.x"
|
|
37
37
|
},
|
|
38
38
|
"repository": {
|
|
@@ -65,5 +65,5 @@
|
|
|
65
65
|
"publishConfig": {
|
|
66
66
|
"access": "public"
|
|
67
67
|
},
|
|
68
|
-
"gitHead": "
|
|
68
|
+
"gitHead": "a6503d36e8d9c9b2daad0805d6c61ff2e1147f4a"
|
|
69
69
|
}
|