ember-did-resize-modifier
ember-did-resize-modifier copied to clipboard
Ember 4.x incompatibility [due to deprecated manager-capabilities.modifiers-3-13]
DEPRECATION: Versions of modifier manager capabilities prior to 3.22 have been deprecated. You must update to the 3.22 capabilities. [deprecation id: manager-capabilities.modifiers-3-13] See https://deprecations.emberjs.com/v3.x#toc_manager-capabilities-modifiers-3-13 for more details.
becomes and error in Ember 4.x:
Invalid modifier manager compatibility specified
Repro here: https://github.com/jacobq/repro-ember-did-resize-incompat-with-4x
ember new projcd projember install ember-did-resize-modifier- Edit app/templates/application.hbs:
<main {{did-resize this.appAction}}></main>
ember g controller application- Edit app/controllers/application.js:
import Controller from '@ember/controller';
import { action } from '@ember/object';
export default class ApplicationController extends Controller {
@action
appAction() {
console.log(`${Date.now()}: appAction called`);
}
}
ember s- Open in web browser
- Observe error in DevTools/console:
vendor.js:37701 Uncaught Error: Invalid modifier manager compatibility specified
at modifierCapabilities (vendor.js:37701)
at _default.setupListener (vendor.js:63292)
at CustomModifierManager.getDelegateFor (vendor.js:37750)
at CustomModifierManager.create (vendor.js:37766)
at Object.evaluate (vendor.js:45056)
at AppendOpcodes.evaluate (vendor.js:43636)
at LowLevelVM.evaluateSyscall (vendor.js:47416)
at LowLevelVM.evaluateInner (vendor.js:47372)
at LowLevelVM.evaluateOuter (vendor.js:47364)
at VM.next (vendor.js:48333)
Heads up. I have a feeling this package isn't maintained or monitored anymore. There are a number of unanswered issues/PRs/questions in here.
I'm not an official anything here! Just been watching an issue for awhile!
Heads up. I have a feeling this package isn't maintained or monitored anymore. There are a number of unanswered issues/PRs/questions in here.
I'm not an official anything here! Just been watching an issue for awhile!
Ah, you're probably right...last human commit in the default branch appears about 2 years old: https://github.com/gmurphey/ember-did-resize-modifier/commit/81fd00d5f631e5e40610ff305869fd58c8b74718 (no judgment either...that's me on a lot of repos...I get it :/)
I'll see if I can breath a little life into it with a PR/fork, but I just noticed that yarn && ember test fails right now (thanks @dependabot-bot :P):
Build Error (broccoli-persistent-filter:Babel > [Babel: @ember/test-helpers]) in @ember/test-helpers/application.js
[BABEL] /home/user/tmp/ember-did-resize-modifier/@ember/test-helpers/application.js: Cannot find module '@babel/helper-environment-visitor'
Require stack:
- /home/user/tmp/ember-did-resize-modifier/node_modules/@babel/core/node_modules/@babel/traverse/lib/path/conversion.js
- /home/user/tmp/ember-did-resize-modifier/node_modules/@babel/core/node_modules/@babel/traverse/lib/path/index.js
- /home/user/tmp/ember-did-resize-modifier/node_modules/@babel/core/node_modules/@babel/traverse/lib/context.js
- /home/user/tmp/ember-did-resize-modifier/node_modules/@babel/core/node_modules/@babel/traverse/lib/traverse-node.js
- /home/user/tmp/ember-did-resize-modifier/node_modules/@babel/core/node_modules/@babel/traverse/lib/index.js
- /home/user/tmp/ember-did-resize-modifier/node_modules/@babel/core/lib/index.js
- /home/user/tmp/ember-did-resize-modifier/node_modules/broccoli-babel-transpiler/lib/worker.js
I was hoping maybe I could just tweak the version here: https://github.com/gmurphey/ember-did-resize-modifier/blob/0634ef324d30948107f16c8b58fc68e10bf3850f/addon/modifiers/did-resize.js#L9
2 hours later here's what I have :rofl:
export default setModifierManager(
(owner) => ({
- capabilities: capabilities('3.13'),
+ capabilities: capabilities('3.22'),
createModifier(factory) {
- return new factory.class();
+ return new factory();
},
Fork available in case anyone cares https://github.com/jacobq/ember-did-resize-modifier/tree/jacobq/ember-4x
- "ember-did-resize-modifier": "^1.0.0",
+ "ember-did-resize-modifier": "jacobq/ember-did-resize-modifier#566bf6ef1f85d727987e06547aab13d323dff254",
I'd recommend ember-on-resize-modifier as what looks to be a drop in replacement which is compatible with Ember v4.