ember-vite-hmr 2.0.1 → 2.0.2
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/instance-initializers/setup-hmr-manager.js.map +1 -1
- package/dist/instance-initializers/vite-hot-reload.js.map +1 -1
- package/dist/lib/babel-plugin.js +8 -1
- package/dist/lib/hmr.js +4 -3
- package/dist/services/vite-hot-reload.js +3 -3
- package/dist/services/vite-hot-reload.js.map +1 -1
- package/package.json +10 -10
|
@@ -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\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":";;;;AAcA,SAASA,sBAAsBA,CAACC,SAAiB,EAAEC,GAAW,EAAE;EAC9D,IAAIC,KAAK,GAAGF,SAAS
|
|
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\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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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vite-hot-reload.js","sources":["../../src/instance-initializers/vite-hot-reload.ts"],"sourcesContent":["import ApplicationInstance from '@ember/application/instance';\nimport { debounce, next } from '@ember/runloop';\nimport RouterService from '@ember/routing/router-service';\nimport { Renderer } from '@ember/-internals/glimmer/lib/renderer';\n\nfunction patchResolver(application: ApplicationInstance) {\n application.__container__.lookup('service:vite-hot-reload');\n const resolver =\n (application.__registry__.resolver as any)?._fallback ||\n (application.__registry__.fallback?.resolver as any)._fallback ||\n (application.__registry__.fallback?.resolver as any) ||\n application.__registry__.resolver;\n const resolverResolve = resolver.resolve;\n resolver.resolve = function (name: string) {\n name = name.replace(/--hot-version--.*$/, '');\n return resolverResolve.call(this, name);\n };\n}\n\nfunction supportErrorRecovery(appInstance: ApplicationInstance) {\n const bodyHtml = window.document.body.cloneNode(true);\n const renderer = appInstance.__container__.lookup(\n 'renderer:-dom',\n ) as Renderer;\n const router = appInstance.__container__.lookup(\n 'service:router',\n ) as RouterService;\n const warn = console.warn;\n let scheduleRerender = false;\n async function rerender() {\n if (!scheduleRerender) return;\n scheduleRerender = false;\n const applicationRouter = appInstance.__container__.lookup(\n 'route:application',\n ) as any;\n applicationRouter._router._toplevelView.destroy();\n applicationRouter._router._toplevelView = null;\n renderer._clearAllRoots();\n window.document.body = bodyHtml.cloneNode(true) as any;\n next(() => {\n const transition = router.refresh();\n applicationRouter.setup(applicationRouter.context, transition);\n });\n }\n import.meta.hot?.on('vite:beforeUpdate', () => debounce(rerender, 100));\n console.warn = function (...args) {\n if (\n args[0].includes(\n 'Attempted to rerender, but the Ember application has had an unrecoverable error occur during render. You should reload the application after fixing the cause of the error.',\n )\n ) {\n scheduleRerender = true;\n }\n warn.call(console, ...args);\n };\n}\n\nexport function initialize(application: ApplicationInstance) {\n patchResolver(application);\n supportErrorRecovery(application);\n}\n\nexport default {\n initialize,\n};\n"],"names":["patchResolver","application","__container__","lookup","resolver","__registry__","_fallback","fallback","resolverResolve","resolve","name","replace","call","supportErrorRecovery","appInstance","bodyHtml","window","document","body","cloneNode","renderer","router","warn","console","scheduleRerender","rerender","applicationRouter","_router","_toplevelView","destroy","_clearAllRoots","next","transition","refresh","setup","context","import","meta","hot","on","debounce","args","includes","initialize"],"mappings":";;AAKA,SAASA,aAAaA,CAACC,WAAgC,EAAE;AACvDA,EAAAA,WAAW,CAACC,aAAa,CAACC,MAAM,CAAC,yBAAyB,CAAC
|
|
1
|
+
{"version":3,"file":"vite-hot-reload.js","sources":["../../src/instance-initializers/vite-hot-reload.ts"],"sourcesContent":["import ApplicationInstance from '@ember/application/instance';\nimport { debounce, next } from '@ember/runloop';\nimport RouterService from '@ember/routing/router-service';\nimport { Renderer } from '@ember/-internals/glimmer/lib/renderer';\n\nfunction patchResolver(application: ApplicationInstance) {\n application.__container__.lookup('service:vite-hot-reload');\n const resolver =\n (application.__registry__.resolver as any)?._fallback ||\n (application.__registry__.fallback?.resolver as any)._fallback ||\n (application.__registry__.fallback?.resolver as any) ||\n application.__registry__.resolver;\n const resolverResolve = resolver.resolve;\n resolver.resolve = function (name: string) {\n name = name.replace(/--hot-version--.*$/, '');\n return resolverResolve.call(this, name);\n };\n}\n\nfunction supportErrorRecovery(appInstance: ApplicationInstance) {\n const bodyHtml = window.document.body.cloneNode(true);\n const renderer = appInstance.__container__.lookup(\n 'renderer:-dom',\n ) as Renderer;\n const router = appInstance.__container__.lookup(\n 'service:router',\n ) as RouterService;\n const warn = console.warn;\n let scheduleRerender = false;\n async function rerender() {\n if (!scheduleRerender) return;\n scheduleRerender = false;\n const applicationRouter = appInstance.__container__.lookup(\n 'route:application',\n ) as any;\n applicationRouter._router._toplevelView.destroy();\n applicationRouter._router._toplevelView = null;\n renderer._clearAllRoots();\n window.document.body = bodyHtml.cloneNode(true) as any;\n next(() => {\n const transition = router.refresh();\n applicationRouter.setup(applicationRouter.context, transition);\n });\n }\n import.meta.hot?.on('vite:beforeUpdate', () => debounce(rerender, 100));\n console.warn = function (...args) {\n if (\n args[0].includes(\n 'Attempted to rerender, but the Ember application has had an unrecoverable error occur during render. You should reload the application after fixing the cause of the error.',\n )\n ) {\n scheduleRerender = true;\n }\n warn.call(console, ...args);\n };\n}\n\nexport function initialize(application: ApplicationInstance) {\n patchResolver(application);\n supportErrorRecovery(application);\n}\n\nexport default {\n initialize,\n};\n"],"names":["patchResolver","application","__container__","lookup","resolver","__registry__","_fallback","fallback","resolverResolve","resolve","name","replace","call","supportErrorRecovery","appInstance","bodyHtml","window","document","body","cloneNode","renderer","router","warn","console","scheduleRerender","rerender","applicationRouter","_router","_toplevelView","destroy","_clearAllRoots","next","transition","refresh","setup","context","import","meta","hot","on","debounce","args","includes","initialize"],"mappings":";;AAKA,SAASA,aAAaA,CAACC,WAAgC,EAAE;AACvDA,EAAAA,WAAW,CAACC,aAAa,CAACC,MAAM,CAAC,yBAAyB,CAAC;AAC3D,EAAA,MAAMC,QAAQ,GACXH,WAAW,CAACI,YAAY,CAACD,QAAQ,EAAUE,SAAS,IACrD,CAACL,WAAW,CAACI,YAAY,CAACE,QAAQ,EAAEH,QAAQ,EAASE,SAAS,IAC7DL,WAAW,CAACI,YAAY,CAACE,QAAQ,EAAEH,QAAgB,IACpDH,WAAW,CAACI,YAAY,CAACD,QAAQ;AACnC,EAAA,MAAMI,eAAe,GAAGJ,QAAQ,CAACK,OAAO;AACxCL,EAAAA,QAAQ,CAACK,OAAO,GAAG,UAAUC,IAAY,EAAE;IACzCA,IAAI,GAAGA,IAAI,CAACC,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC;AAC7C,IAAA,OAAOH,eAAe,CAACI,IAAI,CAAC,IAAI,EAAEF,IAAI,CAAC;GACxC;AACH;AAEA,SAASG,oBAAoBA,CAACC,WAAgC,EAAE;EAC9D,MAAMC,QAAQ,GAAGC,MAAM,CAACC,QAAQ,CAACC,IAAI,CAACC,SAAS,CAAC,IAAI,CAAC;EACrD,MAAMC,QAAQ,GAAGN,WAAW,CAACZ,aAAa,CAACC,MAAM,CAC/C,eACF,CAAa;EACb,MAAMkB,MAAM,GAAGP,WAAW,CAACZ,aAAa,CAACC,MAAM,CAC7C,gBACF,CAAkB;AAClB,EAAA,MAAMmB,IAAI,GAAGC,OAAO,CAACD,IAAI;EACzB,IAAIE,gBAAgB,GAAG,KAAK;EAC5B,eAAeC,QAAQA,GAAG;IACxB,IAAI,CAACD,gBAAgB,EAAE;AACvBA,IAAAA,gBAAgB,GAAG,KAAK;IACxB,MAAME,iBAAiB,GAAGZ,WAAW,CAACZ,aAAa,CAACC,MAAM,CACxD,mBACF,CAAQ;AACRuB,IAAAA,iBAAiB,CAACC,OAAO,CAACC,aAAa,CAACC,OAAO,EAAE;AACjDH,IAAAA,iBAAiB,CAACC,OAAO,CAACC,aAAa,GAAG,IAAI;IAC9CR,QAAQ,CAACU,cAAc,EAAE;IACzBd,MAAM,CAACC,QAAQ,CAACC,IAAI,GAAGH,QAAQ,CAACI,SAAS,CAAC,IAAI,CAAQ;AACtDY,IAAAA,IAAI,CAAC,MAAM;AACT,MAAA,MAAMC,UAAU,GAAGX,MAAM,CAACY,OAAO,EAAE;MACnCP,iBAAiB,CAACQ,KAAK,CAACR,iBAAiB,CAACS,OAAO,EAAEH,UAAU,CAAC;AAChE,KAAC,CAAC;AACJ;AACAI,EAAAA,MAAM,CAACC,IAAI,CAACC,GAAG,EAAEC,EAAE,CAAC,mBAAmB,EAAE,MAAMC,QAAQ,CAACf,QAAQ,EAAE,GAAG,CAAC,CAAC;AACvEF,EAAAA,OAAO,CAACD,IAAI,GAAG,UAAU,GAAGmB,IAAI,EAAE;IAChC,IACEA,IAAI,CAAC,CAAC,CAAC,CAACC,QAAQ,CACd,6KACF,CAAC,EACD;AACAlB,MAAAA,gBAAgB,GAAG,IAAI;AACzB;AACAF,IAAAA,IAAI,CAACV,IAAI,CAACW,OAAO,EAAE,GAAGkB,IAAI,CAAC;GAC5B;AACH;AAEO,SAASE,UAAUA,CAAC1C,WAAgC,EAAE;EAC3DD,aAAa,CAACC,WAAW,CAAC;EAC1BY,oBAAoB,CAACZ,WAAW,CAAC;AACnC;AAEA,oBAAe;AACb0C,EAAAA;AACF,CAAC;;;;"}
|
package/dist/lib/babel-plugin.js
CHANGED
|
@@ -265,6 +265,10 @@ function hotReplaceAst(babel) {
|
|
|
265
265
|
const ifHotStatements = [];
|
|
266
266
|
for (const imp of bindings) {
|
|
267
267
|
const importDeclaration = findImport(imp);
|
|
268
|
+
if (!importDeclaration) {
|
|
269
|
+
console.error(`could not find import specifier for ${imp}`);
|
|
270
|
+
continue;
|
|
271
|
+
}
|
|
268
272
|
const source = importDeclaration.source.value;
|
|
269
273
|
const specifier = importDeclaration.specifiers.find((s) => s.local.name === imp);
|
|
270
274
|
const specifierName = ((_b = specifier.imported) === null || _b === void 0 ? void 0 : _b.name) ||
|
|
@@ -280,7 +284,10 @@ function hotReplaceAst(babel) {
|
|
|
280
284
|
${exports.hotAstProcessor.meta.importVar}.${imp} = c['${specifierName}'];
|
|
281
285
|
});
|
|
282
286
|
import.meta.hot.accept('${source}');
|
|
283
|
-
|
|
287
|
+
`, {
|
|
288
|
+
babelrc: false,
|
|
289
|
+
configFile: false,
|
|
290
|
+
});
|
|
284
291
|
const importVirtual = ast.program.body;
|
|
285
292
|
const ifInstanceOfComponent = t.ifStatement(t.binaryExpression('instanceof', t.memberExpression(t.identifier(imp), t.identifier('prototype')), GlimmerComponent), t.blockStatement([...importVirtual]));
|
|
286
293
|
ifHotStatements.push(ifInstanceOfComponent);
|
package/dist/lib/hmr.js
CHANGED
|
@@ -43,7 +43,6 @@ import Component from "@glimmer/component";
|
|
|
43
43
|
import { tracked } from "@glimmer/tracking";
|
|
44
44
|
import { createComputeRef } from "@glimmer/reference";
|
|
45
45
|
import { curry } from '@glimmer/runtime';
|
|
46
|
-
import { CurriedTypes } from '@glimmer/vm';
|
|
47
46
|
|
|
48
47
|
function notAny(...yields) {
|
|
49
48
|
return !yields.some((y) => !!y);
|
|
@@ -59,11 +58,12 @@ export default class HotComponent extends Component {
|
|
|
59
58
|
for (const name of Object.keys(args)) {
|
|
60
59
|
named[name] = createComputeRef(() => args[name]);
|
|
61
60
|
}
|
|
62
|
-
|
|
61
|
+
const CurriedComponent = 0;
|
|
62
|
+
this.curried = curry(CurriedComponent, TargetComponent, owner, { positional, named});
|
|
63
63
|
if (import.meta.hot) {
|
|
64
64
|
// Rehydrate any saved state
|
|
65
65
|
import.meta.hot.accept('${imp}', (module) => {
|
|
66
|
-
this.curried = curry(
|
|
66
|
+
this.curried = curry(CurriedComponent, module.default, owner, { positional, named});
|
|
67
67
|
})
|
|
68
68
|
}
|
|
69
69
|
}
|
|
@@ -291,6 +291,7 @@ function hmr(enableViteHmrForModes = ['development']) {
|
|
|
291
291
|
source = (0, core_1.transformSync)(source, {
|
|
292
292
|
filename: id,
|
|
293
293
|
babelrc: false,
|
|
294
|
+
configFile: false,
|
|
294
295
|
plugins: [
|
|
295
296
|
{
|
|
296
297
|
name: 'cleanup',
|
|
@@ -7,16 +7,16 @@ function _applyDecoratedDescriptor(i, e, r, n, l) {
|
|
|
7
7
|
var a = {};
|
|
8
8
|
return Object.keys(n).forEach(function (i) {
|
|
9
9
|
a[i] = n[i];
|
|
10
|
-
}), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable =
|
|
10
|
+
}), a.enumerable = !!a.enumerable, a.configurable = !!a.configurable, ("value" in a || a.initializer) && (a.writable = true), a = r.slice().reverse().reduce(function (r, n) {
|
|
11
11
|
return n(i, e, r) || r;
|
|
12
|
-
}, a),
|
|
12
|
+
}, a), undefined === a.initializer ? (Object.defineProperty(i, e, a), null) : a;
|
|
13
13
|
}
|
|
14
14
|
function _initializerDefineProperty(e, i, r, l) {
|
|
15
15
|
r && Object.defineProperty(e, i, {
|
|
16
16
|
enumerable: r.enumerable,
|
|
17
17
|
configurable: r.configurable,
|
|
18
18
|
writable: r.writable,
|
|
19
|
-
value: r.initializer ? r.initializer.call(l) :
|
|
19
|
+
value: r.initializer ? r.initializer.call(l) : undefined
|
|
20
20
|
});
|
|
21
21
|
}
|
|
22
22
|
|
|
@@ -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 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(([name, module]) => module.default === oldModule.exports.default);\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 = `${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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"}
|
|
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(([name, module]) => module.default === oldModule.exports.default);\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 = `${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": "2.0.
|
|
3
|
+
"version": "2.0.2",
|
|
4
4
|
"keywords": [
|
|
5
5
|
"ember-addon"
|
|
6
6
|
],
|
|
@@ -44,26 +44,26 @@
|
|
|
44
44
|
"@babel/traverse": "^7.23.2",
|
|
45
45
|
"@babel/types": "^7.24.0",
|
|
46
46
|
"@embroider/addon-shim": "^1.8.9",
|
|
47
|
-
"@glimmer/syntax": "^0.
|
|
47
|
+
"@glimmer/syntax": "^0.94.9",
|
|
48
48
|
"@types/supports-color": "^8.1.0",
|
|
49
49
|
"babel-import-util": "^3.0.0",
|
|
50
50
|
"babel-loader": "^9.1.3",
|
|
51
51
|
"babel-preset-env": "^1.7.0",
|
|
52
|
-
"semver": "^7.
|
|
52
|
+
"semver": "^7.7.2"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
55
|
"@babel/eslint-parser": "^7.19.1",
|
|
56
56
|
"@babel/plugin-proposal-class-properties": "^7.16.7",
|
|
57
57
|
"@babel/plugin-proposal-decorators": "^7.23.2",
|
|
58
58
|
"@babel/plugin-transform-class-static-block": "^7.20.0",
|
|
59
|
-
"@babel/runtime": "^7.
|
|
59
|
+
"@babel/runtime": "^7.27.6",
|
|
60
60
|
"@embroider/addon-dev": "^7.1.1",
|
|
61
61
|
"@embroider/compat": "^3.4.6",
|
|
62
62
|
"@embroider/core": "^3.4.6",
|
|
63
63
|
"@glint/core": "^1.2.0",
|
|
64
64
|
"@glint/environment-ember-loose": "^1.2.0",
|
|
65
65
|
"@glint/environment-ember-template-imports": "^1.2.0",
|
|
66
|
-
"@glint/template": "^1.2
|
|
66
|
+
"@glint/template": "^1.5.2",
|
|
67
67
|
"@rollup/plugin-babel": "^6.0.3",
|
|
68
68
|
"@tsconfig/ember": "^3.0.8",
|
|
69
69
|
"@types/babel__core": "^7.20.3",
|
|
@@ -75,7 +75,7 @@
|
|
|
75
75
|
"@types/mini-css-extract-plugin": "^2.5.1",
|
|
76
76
|
"@types/node": "^22.5.5",
|
|
77
77
|
"@types/rsvp": "^4.0.9",
|
|
78
|
-
"@types/semver": "^7.
|
|
78
|
+
"@types/semver": "^7.7.0",
|
|
79
79
|
"assert-never": "^1.2.1",
|
|
80
80
|
"babel-import-util": "^3.0.0",
|
|
81
81
|
"babel-plugin-ember-template-compilation": "^2.3.0",
|
|
@@ -83,17 +83,17 @@
|
|
|
83
83
|
"content-tag": "^2.0.1",
|
|
84
84
|
"ember-cli-htmlbars": "^6.3.0",
|
|
85
85
|
"ember-resolver": "^13.0.1",
|
|
86
|
-
"ember-source": "^
|
|
86
|
+
"ember-source": "^6.6.0",
|
|
87
87
|
"@glimmer/component": "^1.1.2",
|
|
88
88
|
"ember-template-lint": "^6.0.0",
|
|
89
89
|
"eslint": "^9.12.0",
|
|
90
|
-
"eslint-config-prettier": "^
|
|
90
|
+
"eslint-config-prettier": "^10.1.8",
|
|
91
91
|
"eslint-plugin-ember": "^12.2.0",
|
|
92
92
|
"eslint-plugin-n": "^17.9.0",
|
|
93
93
|
"eslint-plugin-prettier": "^5.0.0",
|
|
94
94
|
"execa": "^9.3.1",
|
|
95
95
|
"fs-extra": "^11.2.0",
|
|
96
|
-
"playwright-chromium": "^1.
|
|
96
|
+
"playwright-chromium": "^1.54.1",
|
|
97
97
|
"prettier": "^3.0.3",
|
|
98
98
|
"prettier-plugin-ember-template-tag": "^2.0.2",
|
|
99
99
|
"puppeteer-chromium-resolver": "^23.0.0",
|
|
@@ -105,7 +105,7 @@
|
|
|
105
105
|
"terser": "^5.7.0",
|
|
106
106
|
"thread-loader": "^4.0.2",
|
|
107
107
|
"typescript": "^5.1.6",
|
|
108
|
-
"vite": "^
|
|
108
|
+
"vite": "^7.0.5",
|
|
109
109
|
"vitest": "^2.0.5"
|
|
110
110
|
},
|
|
111
111
|
"peerDependencies": {
|