ember-vite-hmr 1.6.0 → 1.8.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.
@@ -1,13 +1,7 @@
1
1
  import Route from '@ember/routing/route';
2
2
  import Component from '@glimmer/component';
3
3
  import { getInternalComponentManager } from '@glimmer/manager';
4
- import { tracked } from '@glimmer/tracking';
5
- import { createComputeRef } from '@glimmer/reference';
6
- import { curry } from '@glimmer/runtime';
7
4
 
8
- (function () {
9
- console.log(tracked, createComputeRef, curry);
10
- })();
11
5
  function findPropertyDescriptor(component, key) {
12
6
  let proto = component;
13
7
  while (proto) {
@@ -1 +1 @@
1
- {"version":3,"file":"setup-hmr-manager.js","sources":["../../src/instance-initializers/setup-hmr-manager.ts"],"sourcesContent":["import Route from '@ember/routing/route';\nimport Controller from '@ember/controller';\nimport Component from '@glimmer/component';\n// @ts-ignore\nimport { getInternalComponentManager } from '@glimmer/manager';\n\n// vite dep optimizer is currently broken and cannot optimize new deps, need to include this ones from start\nimport { tracked } from '@glimmer/tracking';\n// @ts-ignore\nimport { createComputeRef } from '@glimmer/reference';\n// @ts-ignore\nimport { curry } from '@glimmer/runtime';\n\n(function () {\n console.log(tracked, createComputeRef, curry);\n})();\n\ninterface HotComponent extends Component<{ __hot__?: any }> {\n __get_hot_state__?: () => Record<string, any>;\n}\n\ntype Mutable<T> = {\n -readonly [P in keyof T]: any;\n};\n\nfunction findPropertyDescriptor(component: Object, key: string) {\n let proto = component;\n while (proto) {\n const desc = Object.getOwnPropertyDescriptor(proto, key);\n if (desc) return desc;\n proto = Object.getPrototypeOf(proto);\n }\n}\n\nfunction getState(component: HotComponent, skip: string[]) {\n const state: Record<string, any> = {};\n if (!component) {\n return state;\n }\n for (const key in component) {\n if (skip.includes(key)) continue;\n const entry = findPropertyDescriptor(component, key);\n if (entry) {\n if (\n entry.writable &&\n !Object.prototype.toString.call(entry.value).includes('Function')\n ) {\n state[key] = component[key as keyof Component];\n }\n if (entry.set) {\n state[key] = component[key as keyof Component];\n }\n }\n }\n return state;\n}\n\nfunction syncState(instance: Mutable<HotComponent>) {\n if (instance.args.__hot__) {\n const state =\n instance.__get_hot_state__?.() || instance.args.__hot__.getState?.();\n for (const k in state) {\n instance[k as keyof HotComponent] = state[k];\n }\n instance.args.__hot__.getState = () => getState(instance, ['args']);\n }\n}\n\nexport function initialize() {\n const ComponentManager = getInternalComponentManager(Component);\n const proto = Object.getPrototypeOf(ComponentManager);\n const create = proto.create;\n proto.create = function (...args: any[]) {\n const instance = create.call(this, ...args);\n syncState(instance.component);\n return instance;\n };\n\n const setupController = Route.prototype.setupController;\n\n const StateCache: Record<string, any> = {};\n\n Route.prototype.setupController = function (...args: any[]) {\n const controller = args[0];\n // @ts-ignore\n const r = setupController.call(this, ...args);\n const fullRouteName = this.fullRouteName;\n const state = StateCache[fullRouteName] || {};\n const skip = ['_qpDelegate', 'target', 'queryParams'];\n const routerState = getState(state.router, skip);\n const controllerState = getState(state.controller, skip);\n for (const k in routerState) {\n (this as any)[k] = routerState[k];\n }\n for (const k in controllerState) {\n controller[k] = controllerState[k];\n }\n StateCache[fullRouteName] = {\n route: this,\n controller,\n };\n return r;\n };\n}\n\nexport default {\n initialize,\n};\n"],"names":["console","log","tracked","createComputeRef","curry","findPropertyDescriptor","component","key","proto","desc","Object","getOwnPropertyDescriptor","getPrototypeOf","getState","skip","state","includes","entry","writable","prototype","toString","call","value","set","syncState","instance","args","__hot__","__get_hot_state__","k","initialize","ComponentManager","getInternalComponentManager","Component","create","setupController","Route","StateCache","controller","r","fullRouteName","routerState","router","controllerState","route"],"mappings":"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"}
1
+ {"version":3,"file":"setup-hmr-manager.js","sources":["../../src/instance-initializers/setup-hmr-manager.ts"],"sourcesContent":["import Route from '@ember/routing/route';\nimport Controller from '@ember/controller';\nimport Component from '@glimmer/component';\n// @ts-ignore\nimport { getInternalComponentManager } from '@glimmer/manager';\n\n\ninterface HotComponent extends Component<{ __hot__?: any }> {\n __get_hot_state__?: () => Record<string, any>;\n}\n\ntype Mutable<T> = {\n -readonly [P in keyof T]: any;\n};\n\nfunction findPropertyDescriptor(component: Object, key: string) {\n let proto = component;\n while (proto) {\n const desc = Object.getOwnPropertyDescriptor(proto, key);\n if (desc) return desc;\n proto = Object.getPrototypeOf(proto);\n }\n}\n\nfunction getState(component: HotComponent, skip: string[]) {\n const state: Record<string, any> = {};\n if (!component) {\n return state;\n }\n for (const key in component) {\n if (skip.includes(key)) continue;\n const entry = findPropertyDescriptor(component, key);\n if (entry) {\n if (\n entry.writable &&\n !Object.prototype.toString.call(entry.value).includes('Function')\n ) {\n state[key] = component[key as keyof Component];\n }\n if (entry.set) {\n state[key] = component[key as keyof Component];\n }\n }\n }\n return state;\n}\n\nfunction syncState(instance: Mutable<HotComponent>) {\n if (instance.args.__hot__) {\n const state =\n instance.__get_hot_state__?.() || instance.args.__hot__.getState?.();\n for (const k in state) {\n instance[k as keyof HotComponent] = state[k];\n }\n instance.args.__hot__.getState = () => getState(instance, ['args']);\n }\n}\n\nexport function initialize() {\n const ComponentManager = getInternalComponentManager(Component);\n const proto = Object.getPrototypeOf(ComponentManager);\n const create = proto.create;\n proto.create = function (...args: any[]) {\n const instance = create.call(this, ...args);\n syncState(instance.component);\n return instance;\n };\n\n const setupController = Route.prototype.setupController;\n\n const StateCache: Record<string, any> = {};\n\n Route.prototype.setupController = function (...args: any[]) {\n const controller = args[0];\n // @ts-ignore\n const r = setupController.call(this, ...args);\n const fullRouteName = this.fullRouteName;\n const state = StateCache[fullRouteName] || {};\n const skip = ['_qpDelegate', 'target', 'queryParams'];\n const routerState = getState(state.router, skip);\n const controllerState = getState(state.controller, skip);\n for (const k in routerState) {\n (this as any)[k] = routerState[k];\n }\n for (const k in controllerState) {\n controller[k] = controllerState[k];\n }\n StateCache[fullRouteName] = {\n route: this,\n controller,\n };\n return r;\n };\n}\n\nexport default {\n initialize,\n};\n"],"names":["findPropertyDescriptor","component","key","proto","desc","Object","getOwnPropertyDescriptor","getPrototypeOf","getState","skip","state","includes","entry","writable","prototype","toString","call","value","set","syncState","instance","args","__hot__","__get_hot_state__","k","initialize","ComponentManager","getInternalComponentManager","Component","create","setupController","Route","StateCache","controller","r","fullRouteName","routerState","router","controllerState","route"],"mappings":"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"}
@@ -270,9 +270,10 @@ function hotReplaceAst(babel) {
270
270
  const specifierName = ((_b = specifier.imported) === null || _b === void 0 ? void 0 : _b.name) ||
271
271
  ((_c = specifier.imported) === null || _c === void 0 ? void 0 : _c.value) ||
272
272
  'default';
273
+ // const timestamp = Date.now();
273
274
  const ast = (0, core_1.parse)(`
274
275
  (async () => {
275
- const c = await import('/ember-vite-hmr/virtual/component:${source}:${specifierName}.gjs?timestamp=${Date.now()}');
276
+ const c = await import('/ember-vite-hmr/virtual/component:${source}:${specifierName}.gjs');
276
277
  ${exports.hotAstProcessor.meta.importVar}.${imp} = c.default;
277
278
  })()
278
279
  import.meta.hot.accept('/ember-vite-hmr/virtual/component:${source}:${specifierName}.gjs', (c) => {
package/dist/lib/hmr.js CHANGED
@@ -124,6 +124,7 @@ function hmr(enableViteHmrForModes = ['development']) {
124
124
  return this.resolve(id, importer);
125
125
  }
126
126
  if (id.startsWith(virtualPrefix)) {
127
+ console.log('virtualPrefix id', id);
127
128
  return id;
128
129
  }
129
130
  if (id.startsWith('/@id/embroider_virtual:')) {
@@ -139,7 +140,8 @@ function hmr(enableViteHmrForModes = ['development']) {
139
140
  load(id) {
140
141
  return __awaiter(this, void 0, void 0, function* () {
141
142
  if (cachedYields[id] &&
142
- difference(cachedYields[id].yields, getYieldsFromFile(id, true).yields).length) {
143
+ difference(cachedYields[id].yields, getYieldsFromFile(id, true).yields)
144
+ .length) {
143
145
  for (const y of getYieldsFromFile(id, true).yields) {
144
146
  cachedYields[id].yields.add(y);
145
147
  }
@@ -201,16 +203,17 @@ function hmr(enableViteHmrForModes = ['development']) {
201
203
  const resourcePath = id.replace(/\\/g, '/').split('?')[0];
202
204
  let didReplaceSources = false;
203
205
  const name = require(`${process.cwd()}/package.json`).name;
204
- if (resourcePath.includes(`${name}/app/-embroider-entrypoint.js`)) {
205
- const result = [...source.matchAll(/import \* as [^ ]+ from (.*);/g)];
206
- source += result
207
- .map((r) => {
208
- if (r[1].includes('initializers')) {
209
- return `\nimport.meta.hot.accept(${r[1]}, () => window.location.reload());`;
210
- }
211
- return `\nimport.meta.hot.accept(${r[1]});`;
212
- })
213
- .join('');
206
+ if (resourcePath.includes(`${name}/app/app.js`)) {
207
+ source += `\n
208
+ let prevCompatModules = Object.assign({}, compatModules);
209
+ import.meta.hot.accept('@embroider/virtual/compat-modules', (m) => {
210
+ for (const [name, module] of Object.entries(m.default)) {
211
+ if (name.includes('initializers') && prevCompatModules[name]?.default !== module.default) {
212
+ window.location.reload();
213
+ }
214
+ }
215
+ prevCompatModules = m.default;
216
+ })`;
214
217
  }
215
218
  if (resourcePath.includes('ember-vite-hmr/virtual/components')) {
216
219
  return source;
@@ -245,11 +248,22 @@ function hmr(enableViteHmrForModes = ['development']) {
245
248
  ];
246
249
  for (const resultElement of result) {
247
250
  const dep = resultElement[1];
248
- const id = yield resolveDep(dep);
251
+ let possibleVirtual = { dep, specifier: null };
252
+ if (dep.includes(virtualPrefix)) {
253
+ const [imp, specifier] = dep
254
+ .slice(virtualPrefix.length)
255
+ .split(':');
256
+ possibleVirtual.dep = imp;
257
+ possibleVirtual.specifier = specifier;
258
+ }
259
+ let id = yield resolveDep(possibleVirtual.dep);
249
260
  if (!id)
250
261
  continue;
251
262
  if (dep === id)
252
263
  continue;
264
+ if (possibleVirtual.dep !== dep) {
265
+ id = virtualPrefix + id + ':' + possibleVirtual.specifier;
266
+ }
253
267
  didReplaceSources = true;
254
268
  source = source.replace(`import.meta.hot.accept('${dep}'`, `import.meta.hot.accept('${id}'`);
255
269
  source = source.replace(`import.meta.hot.accept("${dep}"`, `import.meta.hot.accept("${id}"`);
@@ -33,6 +33,7 @@ let podModulePrefix;
33
33
  if (import.meta.hot) {
34
34
  const ModuleMap = new Map();
35
35
  window.emberHotReloadPlugin = {
36
+ Resolver: null,
36
37
  _accepting: 0,
37
38
  changed: {},
38
39
  subscribers: [],
@@ -49,14 +50,11 @@ if (import.meta.hot) {
49
50
  this.moduleDepCallbacks[module.id][dep].push(callback);
50
51
  },
51
52
  loadNew(oldModule, newModule) {
53
+ ModuleMap.set(newModule.id, newModule);
52
54
  this.versionMap[newModule.id] = newModule.version;
53
- const entry = Object.values(requirejs.entries).find(module => module.module.exports.default === oldModule.exports.default);
55
+ const entry = Object.entries(this.Resolver.explicitModules).find(([name, module]) => module.default === oldModule.exports.default);
54
56
  if (!entry) return;
55
- entry.module = {
56
- id: newModule.id,
57
- exports: newModule.exports,
58
- version: newModule.version
59
- };
57
+ this.Resolver.explicitModules[entry[0]] = newModule.exports;
60
58
  },
61
59
  __import(moduleUrl) {
62
60
  return import(/* @vite-ignore */moduleUrl);
@@ -85,9 +83,10 @@ if (import.meta.hot) {
85
83
  old: ModuleMap.get(module.id),
86
84
  new: module
87
85
  };
86
+ } else {
87
+ ModuleMap.set(module.id, module);
88
88
  }
89
89
  module.version = this.version;
90
- ModuleMap.set(module.id, module);
91
90
  return true;
92
91
  },
93
92
  notifyNew() {
@@ -118,6 +117,7 @@ let ViteHotReloadService = (_dec = service(), _class = class ViteHotReloadServic
118
117
  super.init(args);
119
118
  if (!window.emberHotReloadPlugin) return;
120
119
  const app = getOwner(this).application;
120
+ window.emberHotReloadPlugin.Resolver = app.Resolver;
121
121
  modulePrefix = app.modulePrefix;
122
122
  podModulePrefix = app.podModulePrefix;
123
123
  this.router._router;
@@ -1 +1 @@
1
- {"version":3,"file":"vite-hot-reload.js","sources":["../../src/services/vite-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';\nimport ApplicationInstance from '@ember/application/instance';\n\nconst ChangeMap = new WeakMap();\n\nfunction getLatestChange(obj: any) {\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 routerVersion: 1,\n moduleDepCallbacks: {},\n versionMap: {},\n\n clear(module: Module) {\n this.moduleDepCallbacks[module.id] = {};\n },\n register(module: Module, dep: string, callback: Function) {\n dep = dep.replace(new RegExp(`^${modulePrefix}/`), './');\n this.moduleDepCallbacks[module.id]![dep] =\n this.moduleDepCallbacks[module.id]![dep] || ([] as Function[]);\n this.moduleDepCallbacks[module.id]![dep]!.push(callback);\n },\n loadNew(oldModule: Module, newModule: Module) {\n this.versionMap[newModule.id] = newModule.version;\n const entry = Object.values(\n requirejs.entries as Record<string, ReqJSEntry>,\n ).find(\n (module) => module.module.exports.default === oldModule.exports.default,\n );\n if (!entry) return;\n entry.module = {\n id: newModule.id,\n exports: newModule.exports,\n version: newModule.version,\n };\n },\n\n __import(moduleUrl: string) {\n return import(/* @vite-ignore */ moduleUrl);\n },\n\n async canAcceptNew(moduleUrl: string) {\n this._accepting += 1;\n const m = await this.__import(moduleUrl);\n const module: Module = {\n exports: m,\n id: moduleUrl.split('?')[0]!.replace(/http:\\/\\/.*:[^\\/]*\\//, ''),\n version: 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.includes('/templates/') ||\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 (module.id.includes('templates') && module.id.includes('components')) {\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: any) => 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 ViteHotReloadService extends Service {\n declare container: any;\n @service() router!: RouterService;\n\n init(args: any) {\n super.init(args);\n if (!window.emberHotReloadPlugin) return;\n const app = (getOwner(this) as ApplicationInstance)!.application as any;\n modulePrefix = app.modulePrefix;\n podModulePrefix = app.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: string) {\n const route = getRoute.call(\n this,\n `${name}--hot-version--${window.emberHotReloadPlugin.routerVersion}`,\n );\n route.fullRouteName = `route:${name}`.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) as any)?.__container__;\n window.emberHotReloadPlugin.subscribe((oldModule, newModule) => {\n let changed = false;\n if (\n oldModule.exports.default?.prototype &&\n oldModule.exports.default.prototype instanceof Router\n ) {\n changed = true;\n }\n if (\n oldModule.exports.default?.prototype &&\n oldModule.exports.default.prototype instanceof Controller\n ) {\n changed = true;\n }\n if (\n oldModule.id.startsWith('app/templates/') &&\n !oldModule.id.startsWith('app/templates/components/')\n ) {\n changed = true;\n }\n if (oldModule.id.startsWith(`./${podModulePrefix}/`)) {\n changed = true;\n }\n if (!changed) return;\n window.emberHotReloadPlugin.routerVersion += 1;\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('app/templates/') &&\n !oldModule.id.startsWith('app/templates/components/')\n ) {\n this.router.refresh();\n }\n if (oldModule.id.startsWith(`./${podModulePrefix}/`)) {\n this.router.refresh();\n }\n });\n }\n getLatestChange(obj: any) {\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': ViteHotReloadService;\n }\n}\n"],"names":["ChangeMap","WeakMap","getLatestChange","obj","has","get","modulePrefix","podModulePrefix","import","meta","hot","ModuleMap","Map","window","emberHotReloadPlugin","_accepting","changed","subscribers","version","routerVersion","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","ViteHotReloadService","_dec","service","_class","Service","constructor","args","_initializerDefineProperty","_descriptor","init","app","getOwner","application","router","_router","defineProperty","v","getRoute","name","route","call","fullRouteName","___routerMicrolib","container","__container__","prototype","Router","Controller","startsWith","types","keys","cache","k","some","t","factoryManagerCache","registry","_resolveCache","validationCache","registrations","refresh","_applyDecoratedDescriptor","configurable","enumerable","writable","initializer"],"mappings":"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"}
1
+ {"version":3,"file":"vite-hot-reload.js","sources":["../../src/services/vite-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';\nimport ApplicationInstance from '@ember/application/instance';\n\nconst ChangeMap = new WeakMap();\n\nfunction getLatestChange(obj: any) {\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 Resolver: null,\n _accepting: 0,\n changed: {},\n subscribers: [],\n version: 1,\n routerVersion: 1,\n moduleDepCallbacks: {},\n versionMap: {},\n\n clear(module: Module) {\n this.moduleDepCallbacks[module.id] = {};\n },\n register(module: Module, dep: string, callback: Function) {\n dep = dep.replace(new RegExp(`^${modulePrefix}/`), './');\n this.moduleDepCallbacks[module.id]![dep] =\n this.moduleDepCallbacks[module.id]![dep] || ([] as Function[]);\n this.moduleDepCallbacks[module.id]![dep]!.push(callback);\n },\n loadNew(oldModule: Module, newModule: Module) {\n ModuleMap.set(newModule.id, newModule);\n this.versionMap[newModule.id] = newModule.version;\n const entry = Object.entries(\n this.Resolver.explicitModules as Record<string, any>,\n ).find(\n ([name, module]) => module.default === oldModule.exports.default,\n );\n if (!entry) return;\n this.Resolver.explicitModules[entry[0]] = newModule.exports;\n },\n\n __import(moduleUrl: string) {\n return import(/* @vite-ignore */ moduleUrl);\n },\n\n async canAcceptNew(moduleUrl: string) {\n this._accepting += 1;\n const m = await this.__import(moduleUrl);\n const module: Module = {\n exports: m,\n id: moduleUrl.split('?')[0]!.replace(/http:\\/\\/.*:[^\\/]*\\//, ''),\n version: 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.includes('/templates/') ||\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 (module.id.includes('templates') && module.id.includes('components')) {\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 } else {\n ModuleMap.set(module.id, module);\n }\n module.version = this.version;\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: any) => 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 ViteHotReloadService extends Service {\n declare container: any;\n @service() router!: RouterService;\n\n init(args: any) {\n super.init(args);\n if (!window.emberHotReloadPlugin) return;\n const app = (getOwner(this) as ApplicationInstance)!.application as any;\n window.emberHotReloadPlugin.Resolver = app.Resolver;\n modulePrefix = app.modulePrefix;\n podModulePrefix = app.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: string) {\n const route = getRoute.call(\n this,\n `${name}--hot-version--${window.emberHotReloadPlugin.routerVersion}`,\n );\n route.fullRouteName = `route:${name}`.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) as any)?.__container__;\n window.emberHotReloadPlugin.subscribe((oldModule, newModule) => {\n let changed = false;\n if (\n oldModule.exports.default?.prototype &&\n oldModule.exports.default.prototype instanceof Router\n ) {\n changed = true;\n }\n if (\n oldModule.exports.default?.prototype &&\n oldModule.exports.default.prototype instanceof Controller\n ) {\n changed = true;\n }\n if (\n oldModule.id.startsWith('app/templates/') &&\n !oldModule.id.startsWith('app/templates/components/')\n ) {\n changed = true;\n }\n if (oldModule.id.startsWith(`./${podModulePrefix}/`)) {\n changed = true;\n }\n if (!changed) return;\n window.emberHotReloadPlugin.routerVersion += 1;\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('app/templates/') &&\n !oldModule.id.startsWith('app/templates/components/')\n ) {\n this.router.refresh();\n }\n if (oldModule.id.startsWith(`./${podModulePrefix}/`)) {\n this.router.refresh();\n }\n });\n }\n getLatestChange(obj: any) {\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': ViteHotReloadService;\n }\n}\n"],"names":["ChangeMap","WeakMap","getLatestChange","obj","has","get","modulePrefix","podModulePrefix","import","meta","hot","ModuleMap","Map","window","emberHotReloadPlugin","Resolver","_accepting","changed","subscribers","version","routerVersion","moduleDepCallbacks","versionMap","clear","module","id","register","dep","callback","replace","RegExp","push","loadNew","oldModule","newModule","set","entry","Object","entries","explicitModules","find","name","default","exports","__import","moduleUrl","canAcceptNew","m","split","setTimeout","notifyNew","ok","includes","match","old","new","values","forEach","change","fn","subscribe","unsubscribe","idx","indexOf","splice","ViteHotReloadService","_dec","service","_class","Service","constructor","args","_initializerDefineProperty","_descriptor","init","app","getOwner","application","router","_router","defineProperty","v","getRoute","route","call","fullRouteName","___routerMicrolib","container","__container__","prototype","Router","Controller","startsWith","types","keys","cache","k","some","t","factoryManagerCache","registry","_resolveCache","validationCache","registrations","refresh","_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": "1.6.0",
3
+ "version": "1.8.0",
4
4
  "keywords": [
5
5
  "ember-addon"
6
6
  ],
@@ -56,7 +56,7 @@
56
56
  "@babel/plugin-proposal-decorators": "^7.23.2",
57
57
  "@babel/plugin-transform-class-static-block": "^7.20.0",
58
58
  "@babel/runtime": "^7.17.0",
59
- "@embroider/addon-dev": "^5.0.0",
59
+ "@embroider/addon-dev": "^6.0.1",
60
60
  "@embroider/compat": "^3.4.6",
61
61
  "@embroider/core": "^3.4.6",
62
62
  "@glint/core": "^1.2.0",