Use AI-powered codemod studio and automate undifferentiated tasks for yourself, colleagues or the community.
This codemod replaces all calls to new EmberObject() with EmberObject.create() and adds a constructor function to classes that extend from EmberObject so that the classes no longer extend from EmberObject.
Ember.js version higher or equal to 3.6.
Codemod CLI:
Codemod VS Code extension:
Use/edit codemod in Codemod Studio:
new EmberObject() is deprecated in Ember.js v3.9 in favor of constructing instances of EmberObject and its subclasses. This codemod replaces all calls to new EmberObject() with EmberObject.create() and adds a constructor function to classes that extend from EmberObject so that the classes no longer extend from EmberObject.
let obj1 = new EmberObject();
let obj2 = new EmberObject({ prop: 'value' });
const Foo = EmberObject.extend();
let foo = new Foo({ bar: 123 });
let obj1 = EmberObject.create();
let obj2 = EmberObject.create({ prop: 'value' });
const Foo = EmberObject.extend();
let foo = new Foo({ bar: 123 });
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.