ember-vite-hmr 0.6.5 → 0.6.9
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/addon-main.cjs
CHANGED
|
@@ -34,8 +34,8 @@ Object.assign(module.exports, {
|
|
|
34
34
|
);
|
|
35
35
|
const CompatAppBuilder = require(compatAppBuilder).CompatAppBuilder;
|
|
36
36
|
const etcOptions = CompatAppBuilder.prototype.etcOptions;
|
|
37
|
-
CompatAppBuilder.prototype.etcOptions = function (...args) {
|
|
38
|
-
const opts = etcOptions.call(this, ...args);
|
|
37
|
+
CompatAppBuilder.prototype.etcOptions = async function (...args) {
|
|
38
|
+
const opts = await etcOptions.call(this, ...args);
|
|
39
39
|
opts.transforms.push(astPlugin);
|
|
40
40
|
return opts;
|
|
41
41
|
};
|
|
@@ -43,7 +43,6 @@ Object.assign(module.exports, {
|
|
|
43
43
|
},
|
|
44
44
|
|
|
45
45
|
_buildPlugin() {
|
|
46
|
-
|
|
47
|
-
return hotAstProcessor.transform.bind(hotAstProcessor);
|
|
46
|
+
return require('./dist/lib/babel-plugin').hotAstProcessor;
|
|
48
47
|
},
|
|
49
48
|
});
|
|
@@ -1,18 +1,21 @@
|
|
|
1
1
|
import { PluginObj } from '@babel/core';
|
|
2
2
|
import type * as BabelTypesNamespace from '@babel/types';
|
|
3
3
|
import * as glimmer from '@glimmer/syntax';
|
|
4
|
-
import { ASTPluginEnvironment } from '@glimmer/syntax';
|
|
5
4
|
export type BabelTypes = typeof BabelTypesNamespace;
|
|
5
|
+
interface ASTPluginEnvironment {
|
|
6
|
+
locals: string[];
|
|
7
|
+
}
|
|
6
8
|
declare class HotAstProcessor {
|
|
7
9
|
options: {
|
|
8
10
|
itsStatic: boolean;
|
|
9
11
|
};
|
|
10
12
|
counter: number;
|
|
11
13
|
meta: {
|
|
12
|
-
usedImports: Set<
|
|
14
|
+
usedImports: Set<string>;
|
|
13
15
|
importVar: any;
|
|
14
16
|
};
|
|
15
|
-
|
|
17
|
+
usedImports: Set<any>;
|
|
18
|
+
constructor();
|
|
16
19
|
transform(env: ASTPluginEnvironment): {
|
|
17
20
|
visitor: glimmer.NodeVisitor;
|
|
18
21
|
};
|
package/dist/lib/babel-plugin.js
CHANGED
|
@@ -87,6 +87,7 @@ class HotAstProcessor {
|
|
|
87
87
|
usedImports: new Set(),
|
|
88
88
|
importVar: null,
|
|
89
89
|
};
|
|
90
|
+
this.transform = this.transform.bind(this);
|
|
90
91
|
}
|
|
91
92
|
transform(env) {
|
|
92
93
|
if (!this.meta.importVar)
|
|
@@ -146,13 +147,11 @@ class HotAstProcessor {
|
|
|
146
147
|
return;
|
|
147
148
|
if (findBlockParams(original, p))
|
|
148
149
|
return;
|
|
149
|
-
const params = [];
|
|
150
|
-
const blockParams = [];
|
|
151
|
-
const letBlock = glimmer.builders.path('let');
|
|
152
150
|
if (node.original === 'helper' ||
|
|
153
151
|
node.original === 'component' ||
|
|
154
152
|
node.original === 'modifier') {
|
|
155
|
-
const
|
|
153
|
+
const parent = p.parentNode;
|
|
154
|
+
const original = parent.params[0].original.split('.')[0];
|
|
156
155
|
if (original &&
|
|
157
156
|
findBlockParams(original, p))
|
|
158
157
|
return;
|
|
@@ -161,8 +160,8 @@ class HotAstProcessor {
|
|
|
161
160
|
if (!original)
|
|
162
161
|
return;
|
|
163
162
|
const param = glimmer.builders.path(`${importVar}.${original}`);
|
|
164
|
-
|
|
165
|
-
|
|
163
|
+
parent.params.splice(0, 1);
|
|
164
|
+
parent.params.push(param);
|
|
166
165
|
usedImports.add(original);
|
|
167
166
|
return;
|
|
168
167
|
}
|
|
@@ -228,8 +227,23 @@ function hotReplaceAst({ types: t }) {
|
|
|
228
227
|
let importVar;
|
|
229
228
|
let importsKlass;
|
|
230
229
|
let templateImportSpecifier = '';
|
|
230
|
+
importMap = {};
|
|
231
|
+
imports = [];
|
|
231
232
|
return {
|
|
232
233
|
name: 'hot-reload-imports',
|
|
234
|
+
pre(file) {
|
|
235
|
+
for (let statement of file.ast.program.body) {
|
|
236
|
+
if (statement.type === 'ImportDeclaration') {
|
|
237
|
+
for (let specifier of statement.specifiers) {
|
|
238
|
+
imports.push(specifier.local.name);
|
|
239
|
+
importMap[specifier.local.name] = {
|
|
240
|
+
source: statement.source.value,
|
|
241
|
+
specifiers: statement.specifiers,
|
|
242
|
+
};
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
},
|
|
233
247
|
visitor: {
|
|
234
248
|
Program: {
|
|
235
249
|
enter(path, state) {
|
|
@@ -237,8 +251,6 @@ function hotReplaceAst({ types: t }) {
|
|
|
237
251
|
templateImportSpecifier = '';
|
|
238
252
|
importVar = null;
|
|
239
253
|
tracked = null;
|
|
240
|
-
importMap = {};
|
|
241
|
-
imports = [];
|
|
242
254
|
exports.hotAstProcessor.meta.usedImports = [];
|
|
243
255
|
exports.hotAstProcessor.meta.importVar = null;
|
|
244
256
|
const filename = path.hub.file.opts.filename.split('?')[0];
|
|
@@ -253,25 +265,16 @@ function hotReplaceAst({ types: t }) {
|
|
|
253
265
|
const node = path.node;
|
|
254
266
|
const templateImport = node.body.find((i) => i.type === 'ImportDeclaration' &&
|
|
255
267
|
i.source.value === '@ember/template-compiler');
|
|
256
|
-
if (templateImport) {
|
|
268
|
+
if (templateImport && templateImport.type === 'ImportDeclaration') {
|
|
257
269
|
const def = templateImport.specifiers[0];
|
|
258
270
|
templateImportSpecifier = def.local.name;
|
|
259
271
|
}
|
|
260
272
|
tracked = path.scope.generateUidIdentifier('tracked');
|
|
261
|
-
importVar =
|
|
273
|
+
importVar = t.identifier('imports_templates__');
|
|
262
274
|
exports.hotAstProcessor.meta.importVar = importVar;
|
|
263
275
|
node.body.splice(0, 0, t.importDeclaration([t.importSpecifier(tracked, t.identifier('tracked'))], t.stringLiteral('@glimmer/tracking')));
|
|
264
276
|
let usedImports = new Set();
|
|
265
277
|
path.traverse({
|
|
266
|
-
ImportDeclaration: function (path) {
|
|
267
|
-
path.node.specifiers.forEach(function (s) {
|
|
268
|
-
imports.push(s.local.name);
|
|
269
|
-
importMap[s.local.name] = {
|
|
270
|
-
source: path.node.source.value,
|
|
271
|
-
specifiers: path.node.specifiers,
|
|
272
|
-
};
|
|
273
|
-
});
|
|
274
|
-
},
|
|
275
278
|
CallExpression(path) {
|
|
276
279
|
const call = path.node;
|
|
277
280
|
if (templateImportSpecifier &&
|
|
@@ -331,9 +334,7 @@ function hotReplaceAst({ types: t }) {
|
|
|
331
334
|
if (!filename.includes('rewritten-app')) {
|
|
332
335
|
return;
|
|
333
336
|
}
|
|
334
|
-
if (!filename.endsWith('.hbs')
|
|
335
|
-
!filename.endsWith('.gts') &&
|
|
336
|
-
!filename.endsWith('.gjs')) {
|
|
337
|
+
if (!filename.endsWith('.hbs')) {
|
|
337
338
|
return;
|
|
338
339
|
}
|
|
339
340
|
path.traverse({
|
|
@@ -354,16 +355,21 @@ function hotReplaceAst({ types: t }) {
|
|
|
354
355
|
.reverse()
|
|
355
356
|
.find((x) => x.type === 'ImportDeclaration');
|
|
356
357
|
const idx = node.body.indexOf(lastImport);
|
|
357
|
-
const assignment = node.body.
|
|
358
|
+
const assignment = node.body.slice(-1)[0];
|
|
358
359
|
node.body.splice(-1, 1);
|
|
359
360
|
node.body.splice(idx, 0, assignment);
|
|
360
361
|
const hotAccepts = [];
|
|
362
|
+
const handled = new Set();
|
|
361
363
|
for (const imp of [...usedImports, ...exports.hotAstProcessor.meta.usedImports]) {
|
|
362
364
|
const { source, specifiers } = importMap[imp];
|
|
363
365
|
const specifier = specifiers.find((s) => s.local.name === imp);
|
|
364
366
|
const specifierName = specifier.imported?.name ||
|
|
365
367
|
specifier.imported?.value ||
|
|
366
368
|
'default';
|
|
369
|
+
if (handled.has(imp)) {
|
|
370
|
+
continue;
|
|
371
|
+
}
|
|
372
|
+
handled.add(imp);
|
|
367
373
|
state.importUtil.import(path, source, specifierName);
|
|
368
374
|
const ast = (0, core_1.parse)(`import.meta.hot.accept('${source}', (module) => (${importVar.name}.${imp}=module['${specifierName}']))`);
|
|
369
375
|
const impHot = ast?.program.body[0];
|
package/dist/lib/hmr.js
CHANGED
|
@@ -11,10 +11,10 @@ function hmr() {
|
|
|
11
11
|
enforce: 'post',
|
|
12
12
|
resolveId(id) {
|
|
13
13
|
if (id.startsWith('/@id/embroider_virtual:')) {
|
|
14
|
-
return this.resolve(id.replace('/@id/', ''), process.cwd());
|
|
14
|
+
return this.resolve(id.replace('/@id/', ''), path_1.default.join(process.cwd(), 'package.json'));
|
|
15
15
|
}
|
|
16
16
|
if (id === '/ember-vite-hmr/services/webpack-hot-reload') {
|
|
17
|
-
return this.resolve('ember-vite-hmr/services/webpack-hot-reload', process.cwd());
|
|
17
|
+
return this.resolve('ember-vite-hmr/services/webpack-hot-reload', path_1.default.join(process.cwd(), 'package.json'));
|
|
18
18
|
}
|
|
19
19
|
},
|
|
20
20
|
transformIndexHtml(html) {
|
|
@@ -128,6 +128,11 @@ let WebpackHotReloadService = (_dec = service(), (_class = class WebpackHotReloa
|
|
|
128
128
|
if (!window.emberHotReloadPlugin) return;
|
|
129
129
|
modulePrefix = getOwner(this).application.modulePrefix;
|
|
130
130
|
podModulePrefix = getOwner(this).application.podModulePrefix;
|
|
131
|
+
if (import.meta.hot) {
|
|
132
|
+
import.meta.hot.on('vite:beforeUpdate', options => {
|
|
133
|
+
options.updates = options.updates.filter(u => !u.path.startsWith(`/assets/${modulePrefix}.js`));
|
|
134
|
+
});
|
|
135
|
+
}
|
|
131
136
|
this.router._router;
|
|
132
137
|
Object.defineProperty(this.router._router, '_routerMicrolib', {
|
|
133
138
|
set(v) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webpack-hot-reload.js","sources":["../../src/services/webpack-hot-reload.ts"],"sourcesContent":["import Service, { service } from '@ember/service';\nimport { getOwner } from '@ember/owner';\nimport RouterService from '@ember/routing/router-service';\nimport Router from '@ember/routing/route';\nimport Controller from '@ember/controller';\n\nconst ChangeMap = new WeakMap();\n\nfunction getLatestChange(obj) {\n while (ChangeMap.has(obj)) {\n obj = ChangeMap.get(obj);\n }\n return obj;\n}\n\nlet modulePrefix!: string;\nlet podModulePrefix!: string;\nif (import.meta.hot) {\n const ModuleMap = new Map();\n\n window.emberHotReloadPlugin = {\n _accepting: 0,\n changed: {},\n subscribers: [],\n version: 1,\n moduleDepCallbacks: {},\n versionMap: {},\n clear(module) {\n this.moduleDepCallbacks[module.id] = {};\n },\n register(module, dep, callback) {\n dep = dep.replace(new RegExp(`^${modulePrefix}/`), './');\n this.moduleDepCallbacks[module.id][dep] =\n this.moduleDepCallbacks[module.id][dep] || [];\n this.moduleDepCallbacks[module.id][dep].push(callback);\n },\n loadNew(oldModule, newModule) {\n this.versionMap[newModule.id] = newModule.version;\n const entry = Object.values(requirejs.entries).find(\n (module) => module.module.exports.default === oldModule.exports.default,\n );\n if (!entry) return;\n entry.module = {\n exports: newModule.exports,\n };\n },\n\n __import(moduleUrl) {\n return import(/* @vite-ignore */ moduleUrl);\n },\n\n async canAcceptNew(moduleUrl) {\n this._accepting += 1;\n const m = await this.__import(moduleUrl);\n const module = {\n exports: m,\n id: moduleUrl.split('?')[0],\n };\n this._accepting -= 1;\n if (this._accepting === 0) {\n setTimeout(() => this.notifyNew(), 0);\n }\n let ok =\n module.id.includes('/routes/') ||\n module.id.includes('/routers/') ||\n module.id.includes('/controllers/') ||\n module.id.match(/controller\\.(js|ts)$/) ||\n module.id.match(/route\\.(js|ts|gts)$/);\n if (!ok) {\n return false;\n }\n\n if (ModuleMap.get(module.id)) {\n this.changed[module.id] = {\n old: ModuleMap.get(module.id),\n new: module,\n };\n }\n module.version = this.version;\n ModuleMap.set(module.id, module);\n return true;\n },\n notifyNew() {\n this.version += 1;\n Object.values(this.changed).forEach((change) => {\n this.loadNew(change.old, change.new);\n this.subscribers.forEach((fn) => fn(change.old, change.new));\n });\n this.changed = {};\n },\n subscribe(fn) {\n this.subscribers.push(fn);\n },\n unsubscribe(fn) {\n const idx = this.subscribers.indexOf(fn);\n if (idx >= 0) {\n this.subscribers.splice(idx, 1);\n }\n },\n };\n}\n\nexport default class WebpackHotReloadService extends Service {\n declare container: any;\n @service() router!: RouterService;\n\n init() {\n super.init();\n if (!window.emberHotReloadPlugin) return;\n modulePrefix = getOwner(this)!.application.modulePrefix;\n podModulePrefix = getOwner(this)!.application.podModulePrefix;\n this.router._router;\n Object.defineProperty(this.router._router, '_routerMicrolib', {\n set(v) {\n const getRoute = v.getRoute;\n v.getRoute = function (name) {\n const route = getRoute.call(\n this,\n `${name}--hot-version--${window.emberHotReloadPlugin.version}`,\n );\n route.fullRouteName = route.fullRouteName.replace(\n /--hot-version--.*$/,\n '',\n );\n return route;\n };\n this.___routerMicrolib = v;\n },\n get() {\n return this.___routerMicrolib;\n },\n });\n this.container = getOwner(this)?.__container__;\n window.emberHotReloadPlugin.subscribe((oldModule, newModule) => {\n const types = [\n 'route',\n 'controller',\n 'template',\n 'modifier',\n 'helper',\n 'component',\n ];\n Object.keys(this.container.cache).forEach((k) => {\n if (types.some((t) => k.startsWith(`${t}:`))) {\n delete this.container.cache[k];\n }\n });\n Object.keys(this.container.factoryManagerCache).forEach((k) => {\n if (types.some((t) => k.startsWith(`${t}:`))) {\n delete this.container.factoryManagerCache[k];\n }\n });\n Object.keys(this.container.registry._resolveCache).forEach((k) => {\n if (types.some((t) => k.startsWith(`${t}:`))) {\n delete this.container.registry._resolveCache[k];\n }\n });\n Object.keys(this.container.validationCache).forEach((k) => {\n if (types.some((t) => k.startsWith(`${t}:`))) {\n delete this.container.validationCache[k];\n }\n });\n Object.keys(this.container.registry.registrations).forEach((k) => {\n if (types.some((t) => k.startsWith(`${t}:`))) {\n delete this.container.registry.registrations[k];\n }\n });\n if (\n oldModule.exports.default?.prototype &&\n oldModule.exports.default.prototype instanceof Router\n ) {\n this.router.refresh();\n }\n if (\n oldModule.exports.default?.prototype &&\n oldModule.exports.default.prototype instanceof Controller\n ) {\n this.router.refresh();\n }\n if (\n oldModule.id.startsWith('./templates/') &&\n !oldModule.id.startsWith('./templates/components/')\n ) {\n this.router.refresh();\n }\n if (oldModule.id.startsWith(`./${podModulePrefix}/`)) {\n this.router.refresh();\n }\n });\n }\n getLatestChange(obj) {\n return getLatestChange(obj);\n }\n}\n\n// Don't remove this declaration: this is what enables TypeScript to resolve\n// this service using `Owner.lookup('service:hot-reload')`, as well\n// as to check when you pass the service name as an argument to the decorator,\n// like `@service('hot-reload') declare altName: HotReloadService;`.\ndeclare module '@ember/service' {\n interface Registry {\n 'hot-reload': WebpackHotReloadService;\n }\n}\n"],"names":["ChangeMap","WeakMap","getLatestChange","obj","has","get","modulePrefix","podModulePrefix","import","meta","hot","ModuleMap","Map","window","emberHotReloadPlugin","_accepting","changed","subscribers","version","moduleDepCallbacks","versionMap","clear","module","id","register","dep","callback","replace","RegExp","push","loadNew","oldModule","newModule","entry","Object","values","requirejs","entries","find","exports","default","__import","moduleUrl","canAcceptNew","m","split","setTimeout","notifyNew","ok","includes","match","old","new","set","forEach","change","fn","subscribe","unsubscribe","idx","indexOf","splice","WebpackHotReloadService","_dec","service","_class","Service","constructor","args","_initializerDefineProperty","_descriptor","init","getOwner","application","router","_router","defineProperty","v","getRoute","name","route","call","fullRouteName","___routerMicrolib","container","__container__","types","keys","cache","k","some","t","startsWith","factoryManagerCache","registry","_resolveCache","validationCache","registrations","prototype","Router","refresh","Controller","_applyDecoratedDescriptor","configurable","enumerable","writable","initializer"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"webpack-hot-reload.js","sources":["../../src/services/webpack-hot-reload.ts"],"sourcesContent":["import Service, { service } from '@ember/service';\nimport { getOwner } from '@ember/owner';\nimport RouterService from '@ember/routing/router-service';\nimport Router from '@ember/routing/route';\nimport Controller from '@ember/controller';\n\nconst ChangeMap = new WeakMap();\n\nfunction getLatestChange(obj) {\n while (ChangeMap.has(obj)) {\n obj = ChangeMap.get(obj);\n }\n return obj;\n}\n\nlet modulePrefix!: string;\nlet podModulePrefix!: string;\nif (import.meta.hot) {\n const ModuleMap = new Map();\n\n window.emberHotReloadPlugin = {\n _accepting: 0,\n changed: {},\n subscribers: [],\n version: 1,\n moduleDepCallbacks: {},\n versionMap: {},\n clear(module) {\n this.moduleDepCallbacks[module.id] = {};\n },\n register(module, dep, callback) {\n dep = dep.replace(new RegExp(`^${modulePrefix}/`), './');\n this.moduleDepCallbacks[module.id][dep] =\n this.moduleDepCallbacks[module.id][dep] || [];\n this.moduleDepCallbacks[module.id][dep].push(callback);\n },\n loadNew(oldModule, newModule) {\n this.versionMap[newModule.id] = newModule.version;\n const entry = Object.values(requirejs.entries).find(\n (module) => module.module.exports.default === oldModule.exports.default,\n );\n if (!entry) return;\n entry.module = {\n exports: newModule.exports,\n };\n },\n\n __import(moduleUrl) {\n return import(/* @vite-ignore */ moduleUrl);\n },\n\n async canAcceptNew(moduleUrl) {\n this._accepting += 1;\n const m = await this.__import(moduleUrl);\n const module = {\n exports: m,\n id: moduleUrl.split('?')[0],\n };\n this._accepting -= 1;\n if (this._accepting === 0) {\n setTimeout(() => this.notifyNew(), 0);\n }\n let ok =\n module.id.includes('/routes/') ||\n module.id.includes('/routers/') ||\n module.id.includes('/controllers/') ||\n module.id.match(/controller\\.(js|ts)$/) ||\n module.id.match(/route\\.(js|ts|gts)$/);\n if (!ok) {\n return false;\n }\n\n if (ModuleMap.get(module.id)) {\n this.changed[module.id] = {\n old: ModuleMap.get(module.id),\n new: module,\n };\n }\n module.version = this.version;\n ModuleMap.set(module.id, module);\n return true;\n },\n notifyNew() {\n this.version += 1;\n Object.values(this.changed).forEach((change) => {\n this.loadNew(change.old, change.new);\n this.subscribers.forEach((fn) => fn(change.old, change.new));\n });\n this.changed = {};\n },\n subscribe(fn) {\n this.subscribers.push(fn);\n },\n unsubscribe(fn) {\n const idx = this.subscribers.indexOf(fn);\n if (idx >= 0) {\n this.subscribers.splice(idx, 1);\n }\n },\n };\n}\n\nexport default class WebpackHotReloadService extends Service {\n declare container: any;\n @service() router!: RouterService;\n\n init() {\n super.init();\n if (!window.emberHotReloadPlugin) return;\n modulePrefix = getOwner(this)!.application.modulePrefix;\n podModulePrefix = getOwner(this)!.application.podModulePrefix;\n if (import.meta.hot) {\n import.meta.hot.on('vite:beforeUpdate', (options) => {\n options.updates = options.updates.filter(\n (u) => !u.path.startsWith(`/assets/${modulePrefix}.js`),\n );\n });\n }\n this.router._router;\n Object.defineProperty(this.router._router, '_routerMicrolib', {\n set(v) {\n const getRoute = v.getRoute;\n v.getRoute = function (name) {\n const route = getRoute.call(\n this,\n `${name}--hot-version--${window.emberHotReloadPlugin.version}`,\n );\n route.fullRouteName = route.fullRouteName.replace(\n /--hot-version--.*$/,\n '',\n );\n return route;\n };\n this.___routerMicrolib = v;\n },\n get() {\n return this.___routerMicrolib;\n },\n });\n this.container = getOwner(this)?.__container__;\n window.emberHotReloadPlugin.subscribe((oldModule, newModule) => {\n const types = [\n 'route',\n 'controller',\n 'template',\n 'modifier',\n 'helper',\n 'component',\n ];\n Object.keys(this.container.cache).forEach((k) => {\n if (types.some((t) => k.startsWith(`${t}:`))) {\n delete this.container.cache[k];\n }\n });\n Object.keys(this.container.factoryManagerCache).forEach((k) => {\n if (types.some((t) => k.startsWith(`${t}:`))) {\n delete this.container.factoryManagerCache[k];\n }\n });\n Object.keys(this.container.registry._resolveCache).forEach((k) => {\n if (types.some((t) => k.startsWith(`${t}:`))) {\n delete this.container.registry._resolveCache[k];\n }\n });\n Object.keys(this.container.validationCache).forEach((k) => {\n if (types.some((t) => k.startsWith(`${t}:`))) {\n delete this.container.validationCache[k];\n }\n });\n Object.keys(this.container.registry.registrations).forEach((k) => {\n if (types.some((t) => k.startsWith(`${t}:`))) {\n delete this.container.registry.registrations[k];\n }\n });\n if (\n oldModule.exports.default?.prototype &&\n oldModule.exports.default.prototype instanceof Router\n ) {\n this.router.refresh();\n }\n if (\n oldModule.exports.default?.prototype &&\n oldModule.exports.default.prototype instanceof Controller\n ) {\n this.router.refresh();\n }\n if (\n oldModule.id.startsWith('./templates/') &&\n !oldModule.id.startsWith('./templates/components/')\n ) {\n this.router.refresh();\n }\n if (oldModule.id.startsWith(`./${podModulePrefix}/`)) {\n this.router.refresh();\n }\n });\n }\n getLatestChange(obj) {\n return getLatestChange(obj);\n }\n}\n\n// Don't remove this declaration: this is what enables TypeScript to resolve\n// this service using `Owner.lookup('service:hot-reload')`, as well\n// as to check when you pass the service name as an argument to the decorator,\n// like `@service('hot-reload') declare altName: HotReloadService;`.\ndeclare module '@ember/service' {\n interface Registry {\n 'hot-reload': WebpackHotReloadService;\n }\n}"],"names":["ChangeMap","WeakMap","getLatestChange","obj","has","get","modulePrefix","podModulePrefix","import","meta","hot","ModuleMap","Map","window","emberHotReloadPlugin","_accepting","changed","subscribers","version","moduleDepCallbacks","versionMap","clear","module","id","register","dep","callback","replace","RegExp","push","loadNew","oldModule","newModule","entry","Object","values","requirejs","entries","find","exports","default","__import","moduleUrl","canAcceptNew","m","split","setTimeout","notifyNew","ok","includes","match","old","new","set","forEach","change","fn","subscribe","unsubscribe","idx","indexOf","splice","WebpackHotReloadService","_dec","service","_class","Service","constructor","args","_initializerDefineProperty","_descriptor","init","getOwner","application","on","options","updates","filter","u","path","startsWith","router","_router","defineProperty","v","getRoute","name","route","call","fullRouteName","___routerMicrolib","container","__container__","types","keys","cache","k","some","t","factoryManagerCache","registry","_resolveCache","validationCache","registrations","prototype","Router","refresh","Controller","_applyDecoratedDescriptor","configurable","enumerable","writable","initializer"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ember-vite-hmr",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.9",
|
|
4
4
|
"keywords": [
|
|
5
5
|
"ember-addon"
|
|
6
6
|
],
|
|
@@ -34,50 +34,41 @@
|
|
|
34
34
|
"start": "concurrently 'npm:start:*'",
|
|
35
35
|
"start:js": "rollup --config --watch --no-watch.clearScreen",
|
|
36
36
|
"start:types": "glint --declaration --watch",
|
|
37
|
-
"test": "vitest",
|
|
37
|
+
"test": "vitest --run",
|
|
38
38
|
"prepack": "pnpm build || echo 'its okay'"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
|
-
"@babel/types": "^7.24.0",
|
|
42
|
-
"babel-import-util": "^2.0.1",
|
|
43
|
-
"@glimmer/syntax": "^0.88.1",
|
|
44
41
|
"@babel/core": "^7.23.2",
|
|
45
42
|
"@babel/plugin-transform-typescript": "^7.22.15",
|
|
43
|
+
"@babel/traverse": "^7.23.2",
|
|
44
|
+
"@babel/types": "^7.24.0",
|
|
46
45
|
"@embroider/addon-shim": "^1.0.0",
|
|
47
|
-
"@
|
|
48
|
-
"@embroider/hbs-loader": "^3.0.2",
|
|
49
|
-
"@embroider/shared-internals": "^2.5.0",
|
|
46
|
+
"@glimmer/syntax": "^0.88.1",
|
|
50
47
|
"@types/supports-color": "^8.1.0",
|
|
51
|
-
"
|
|
48
|
+
"babel-import-util": "^2.0.1",
|
|
52
49
|
"babel-loader": "^8.2.2",
|
|
53
50
|
"babel-preset-env": "^1.7.0",
|
|
54
|
-
"
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
"
|
|
58
|
-
"
|
|
59
|
-
"html-webpack-plugin": "^5.5.3",
|
|
60
|
-
"vite": "^5.0.12",
|
|
61
|
-
"vitest": "^1.2.2",
|
|
62
|
-
"jsdom": "^16.6.0",
|
|
63
|
-
"lodash": "^4.17.21",
|
|
64
|
-
"mini-css-extract-plugin": "^2.5.3",
|
|
65
|
-
"semver": "^7.3.5",
|
|
51
|
+
"semver": "^7.3.5"
|
|
52
|
+
},
|
|
53
|
+
"devDependencies": {
|
|
54
|
+
"assert-never": "^1.2.1",
|
|
55
|
+
"content-tag": "^2.0.1",
|
|
66
56
|
"source-map-url": "^0.4.1",
|
|
67
57
|
"style-loader": "^2.0.0",
|
|
68
58
|
"supports-color": "^8.1.0",
|
|
69
59
|
"terser": "^5.7.0",
|
|
70
60
|
"thread-loader": "^3.0.4",
|
|
71
|
-
"
|
|
72
|
-
|
|
73
|
-
|
|
61
|
+
"vite": "^5.0.12",
|
|
62
|
+
"vitest": "^1.2.2",
|
|
63
|
+
"ember-cli-htmlbars": "^6.3.0",
|
|
74
64
|
"@babel/eslint-parser": "^7.19.1",
|
|
75
65
|
"@babel/plugin-proposal-class-properties": "^7.16.7",
|
|
76
|
-
"@babel/plugin-proposal-decorators": "^7.
|
|
66
|
+
"@babel/plugin-proposal-decorators": "^7.23.2",
|
|
77
67
|
"@babel/plugin-transform-class-static-block": "^7.20.0",
|
|
78
68
|
"@babel/runtime": "^7.17.0",
|
|
79
|
-
"@embroider/addon-dev": "^4.1
|
|
80
|
-
"@embroider/
|
|
69
|
+
"@embroider/addon-dev": "^4.2.1",
|
|
70
|
+
"@embroider/compat": "^3.4.6",
|
|
71
|
+
"@embroider/core": "^3.4.6",
|
|
81
72
|
"@glint/core": "^1.2.0",
|
|
82
73
|
"@glint/environment-ember-loose": "^1.2.0",
|
|
83
74
|
"@glint/environment-ember-template-imports": "^1.2.0",
|
|
@@ -93,7 +84,7 @@
|
|
|
93
84
|
"@types/mini-css-extract-plugin": "^1.4.3",
|
|
94
85
|
"@types/node": "^15.12.2",
|
|
95
86
|
"@types/semver": "^7.3.6",
|
|
96
|
-
"babel-plugin-ember-template-compilation": "^2.2.
|
|
87
|
+
"babel-plugin-ember-template-compilation": "^2.2.1",
|
|
97
88
|
"concurrently": "^8.0.1",
|
|
98
89
|
"ember-resolver": "^11.0.1",
|
|
99
90
|
"ember-source": "^5.3.0",
|