Skip to content

Commit

Permalink
Merge pull request #19563 from nlfurniss/remove-ember-assign-internally
Browse files Browse the repository at this point in the history
  • Loading branch information
rwjblue committed May 28, 2021
2 parents 89a58e6 + a912181 commit 82cea4f
Show file tree
Hide file tree
Showing 56 changed files with 91 additions and 157 deletions.
1 change: 0 additions & 1 deletion lib/index.js
Expand Up @@ -204,7 +204,6 @@ module.exports = {
require.resolve('@babel/plugin-transform-block-scoping'),
{ throwIfClosureRequired: true },
],
[require.resolve('@babel/plugin-transform-object-assign')],
],
}),
};
Expand Down
4 changes: 1 addition & 3 deletions lib/transforms/inject-babel-helpers.js
Expand Up @@ -21,9 +21,7 @@ function injectBabelHelpersPlugin(isEmberSource) {
return {
pre(file) {
file.set('helperGenerator', function (name) {
if (name === 'extends') {
return addNamed(file.path, 'assign', '@ember/polyfills');
} else if (isEmberSource && name === 'asyncToGenerator') {
if (isEmberSource && name === 'asyncToGenerator') {
// Returning a falsy value will cause the helper to be inlined,
// which is fine for local tests
return false;
Expand Down
1 change: 0 additions & 1 deletion package.json
Expand Up @@ -49,7 +49,6 @@
"dependencies": {
"@babel/helper-module-imports": "^7.8.3",
"@babel/plugin-transform-block-scoping": "^7.8.3",
"@babel/plugin-transform-object-assign": "^7.8.3",
"@ember/edition-utils": "^1.2.0",
"@glimmer/vm-babel-plugins": "0.79.2",
"babel-plugin-debug-macros": "^0.3.3",
Expand Down
3 changes: 1 addition & 2 deletions packages/@ember/-internals/container/lib/container.ts
@@ -1,7 +1,6 @@
import { Factory, LookupOptions, Owner, setOwner } from '@ember/-internals/owner';
import { dictionary, HAS_NATIVE_PROXY, HAS_NATIVE_SYMBOL, symbol } from '@ember/-internals/utils';
import { assert } from '@ember/debug';
import { assign } from '@ember/polyfills';
import { DEBUG } from '@glimmer/env';
import Registry, { DebugRegistry, Injection } from './registry';

Expand Down Expand Up @@ -586,7 +585,7 @@ class FactoryManager<T, C> {
}

if (options !== undefined) {
props = assign({}, props, options);
props = Object.assign({}, props, options);
}

if (DEBUG) {
Expand Down
3 changes: 1 addition & 2 deletions packages/@ember/-internals/container/lib/registry.ts
@@ -1,7 +1,6 @@
import { Factory } from '@ember/-internals/owner';
import { dictionary, intern } from '@ember/-internals/utils';
import { assert } from '@ember/debug';
import { assign } from '@ember/polyfills';
import { DEBUG } from '@glimmer/env';
import Container, { ContainerOptions, LazyInjection } from './container';

Expand Down Expand Up @@ -607,7 +606,7 @@ export default class Registry implements IRegistry {
resolverKnown = this.resolver.knownForType(type);
}

return assign({}, fallbackKnown, localKnown, resolverKnown);
return Object.assign({}, fallbackKnown, localKnown, resolverKnown);
}

isValidFullName(fullName: string): boolean {
Expand Down
3 changes: 1 addition & 2 deletions packages/@ember/-internals/container/tests/container_test.js
@@ -1,5 +1,4 @@
import { getOwner } from '@ember/-internals/owner';
import { assign } from '@ember/polyfills';
import Service from '@ember/service';
import { DEBUG } from '@glimmer/env';
import { Registry } from '..';
Expand Down Expand Up @@ -831,7 +830,7 @@ moduleFor(
class Component {
static create(options) {
let instance = new this();
assign(instance, options);
Object.assign(instance, options);
return instance;
}
}
Expand Down
@@ -1,5 +1,4 @@
import { moduleFor, ApplicationTestCase } from 'internal-test-helpers';
import { assign } from '@ember/polyfills';
import { run } from '@ember/runloop';
import EmberController from '@ember/controller';
import '../index'; // Must be required to export Ember.ContainerDebugAdapter.
Expand All @@ -17,7 +16,7 @@ moduleFor(
}

get applicationOptions() {
return assign(super.applicationOptions, {
return Object.assign(super.applicationOptions, {
autoboot: true,
});
}
Expand Down
Expand Up @@ -4,7 +4,6 @@ import { addChildView, setElementView, setViewElement } from '@ember/-internals/
import { assert, debugFreeze } from '@ember/debug';
import { EMBER_COMPONENT_IS_VISIBLE } from '@ember/deprecated-features';
import { _instrumentStart } from '@ember/instrumentation';
import { assign } from '@ember/polyfills';
import { DEBUG } from '@glimmer/env';
import {
Bounds,
Expand Down Expand Up @@ -219,11 +218,11 @@ export default class CurlyComponentManager
named = {
[positionalParams]: createComputeRef(() => reifyPositional(captured)),
};
assign(named, args.named.capture());
Object.assign(named, args.named.capture());
} else if (Array.isArray(positionalParams) && positionalParams.length > 0) {
const count = Math.min(positionalParams.length, args.positional.length);
named = {};
assign(named, args.named.capture());
Object.assign(named, args.named.capture());

for (let i = 0; i < count; i++) {
// As of TS 3.7, tsc is giving us the following error on this line without the type annotation
Expand Down
Expand Up @@ -4,7 +4,6 @@ import { guidFor } from '@ember/-internals/utils';
import { assert } from '@ember/debug';
import EngineInstance from '@ember/engine/instance';
import { _instrumentStart } from '@ember/instrumentation';
import { assign } from '@ember/polyfills';
import {
CapturedArguments,
CompilableProgram,
Expand Down Expand Up @@ -205,7 +204,7 @@ export class OutletComponentDefinition

export function createRootOutlet(outletView: OutletView): OutletComponentDefinition {
if (ENV._APPLICATION_TEMPLATE_WRAPPER) {
const WRAPPED_CAPABILITIES = assign({}, CAPABILITIES, {
const WRAPPED_CAPABILITIES = Object.assign({}, CAPABILITIES, {
dynamicTag: true,
elementHook: true,
wrapped: true,
Expand Down
Expand Up @@ -3,7 +3,6 @@
*/
import { QueryParams } from '@ember/-internals/routing';
import { assert, deprecate } from '@ember/debug';
import { assign } from '@ember/polyfills';
import { CapturedArguments } from '@glimmer/interfaces';
import { createComputeRef } from '@glimmer/reference';
import { reifyNamed } from '@glimmer/runtime';
Expand Down Expand Up @@ -51,6 +50,6 @@ export default internalHelper(({ positional, named }: CapturedArguments) => {
}
);

return new QueryParams(assign({}, reifyNamed(named) as any));
return new QueryParams(Object.assign({}, reifyNamed(named) as any));
});
});
5 changes: 2 additions & 3 deletions packages/@ember/-internals/glimmer/lib/views/outlet.ts
@@ -1,5 +1,4 @@
import { getOwner, Owner } from '@ember/-internals/owner';
import { assign } from '@ember/polyfills';
import { schedule } from '@ember/runloop';
import { Template } from '@glimmer/interfaces';
import { createComputeRef, Reference, updateRef } from '@glimmer/reference';
Expand All @@ -22,7 +21,7 @@ export default class OutletView {
return class extends OutletView {
static create(options: any) {
if (options) {
return super.create(assign({}, injections, options));
return super.create(Object.assign({}, injections, options));
} else {
return super.create(injections);
}
Expand All @@ -31,7 +30,7 @@ export default class OutletView {
}

static reopenClass(injections: any): void {
assign(this, injections);
Object.assign(this, injections);
}

static create(options: any): OutletView {
Expand Down
@@ -1,7 +1,6 @@
import { DEBUG } from '@glimmer/env';
import { moduleFor, RenderingTestCase, applyMixins, strip, runTask } from 'internal-test-helpers';

import { assign } from '@ember/polyfills';
import { isEmpty } from '@ember/-internals/metal';
import { A as emberA } from '@ember/-internals/runtime';

Expand Down Expand Up @@ -1441,7 +1440,7 @@ class ContextualComponentMutableParamsTest extends RenderingTestCase {
render(templateStr, context = {}) {
super.render(
`${templateStr}<span class="value">{{this.model.val2}}</span>`,
assign(context, { model: { val2: 8 } })
Object.assign(context, { model: { val2: 8 } })
);
}
}
Expand Down
@@ -1,7 +1,6 @@
import { RenderingTestCase, moduleFor, runDestroy, runTask } from 'internal-test-helpers';
import { EMBER_MODERNIZED_BUILT_IN_COMPONENTS } from '@ember/canary-features';
import { action } from '@ember/object';
import { assign } from '@ember/polyfills';
import { Checkbox, TextArea, TextField } from '@ember/-internals/glimmer';
import { set } from '@ember/-internals/metal';
import { TargetActionSupport } from '@ember/-internals/runtime';
Expand Down Expand Up @@ -71,7 +70,7 @@ class InputRenderingTest extends RenderingTestCase {
triggerEvent(type, options, selector) {
let event = document.createEvent('Events');
event.initEvent(type, true, true);
assign(event, options);
Object.assign(event, options);

let element = this.$(selector || 'input')[0];
runTask(() => {
Expand Down
Expand Up @@ -2,7 +2,6 @@ import { RenderingTestCase, moduleFor, runDestroy, runTask } from 'internal-test

import { EMBER_MODERNIZED_BUILT_IN_COMPONENTS } from '@ember/canary-features';
import { action } from '@ember/object';
import { assign } from '@ember/polyfills';
import { set } from '@ember/-internals/metal';
import { jQueryDisabled, jQuery } from '@ember/-internals/views';

Expand Down Expand Up @@ -70,7 +69,7 @@ class InputRenderingTest extends RenderingTestCase {
triggerEvent(type, options) {
let event = document.createEvent('Events');
event.initEvent(type, true, true);
assign(event, options);
Object.assign(event, options);

let element = this.$input()[0];
runTask(() => {
Expand Down
Expand Up @@ -6,7 +6,6 @@ import {
runTask,
} from 'internal-test-helpers';

import { assign } from '@ember/polyfills';
import { set, Mixin } from '@ember/-internals/metal';
import Controller from '@ember/controller';
import { Object as EmberObject } from '@ember/-internals/runtime';
Expand Down Expand Up @@ -45,7 +44,7 @@ moduleFor(

renderDelegate(template = '{{action-delegate}}', context = {}) {
let root = this;
context = assign(context, {
context = Object.assign(context, {
send(actionName, ...args) {
root.sendCount++;
root.actionCounts[actionName] = root.actionCounts[actionName] || 0;
Expand Down
Expand Up @@ -2,12 +2,11 @@ import { RenderingTestCase, moduleFor, classes, applyMixins, runTask } from 'int

import { EMBER_MODERNIZED_BUILT_IN_COMPONENTS } from '@ember/canary-features';
import { action } from '@ember/object';
import { assign } from '@ember/polyfills';
import { set } from '@ember/-internals/metal';

class TextAreaRenderingTest extends RenderingTestCase {
assertTextArea({ attrs, value } = {}) {
let mergedAttrs = assign({ class: classes('ember-view ember-text-area') }, attrs);
let mergedAttrs = Object.assign({ class: classes('ember-view ember-text-area') }, attrs);
this.assertComponentElement(this.firstChild, {
tagName: 'textarea',
attrs: mergedAttrs,
Expand All @@ -21,7 +20,7 @@ class TextAreaRenderingTest extends RenderingTestCase {
triggerEvent(type, options = {}) {
let event = document.createEvent('Events');
event.initEvent(type, true, true);
assign(event, options);
Object.assign(event, options);

this.firstChild.dispatchEvent(event);
}
Expand Down
Expand Up @@ -2,12 +2,11 @@ import { RenderingTestCase, moduleFor, classes, applyMixins, runTask } from 'int

import { EMBER_MODERNIZED_BUILT_IN_COMPONENTS } from '@ember/canary-features';
import { action } from '@ember/object';
import { assign } from '@ember/polyfills';
import { set } from '@ember/-internals/metal';

class TextAreaRenderingTest extends RenderingTestCase {
assertTextArea({ attrs, value } = {}) {
let mergedAttrs = assign({ class: classes('ember-view ember-text-area') }, attrs);
let mergedAttrs = Object.assign({ class: classes('ember-view ember-text-area') }, attrs);
this.assertComponentElement(this.firstChild, {
tagName: 'textarea',
attrs: mergedAttrs,
Expand All @@ -21,7 +20,7 @@ class TextAreaRenderingTest extends RenderingTestCase {
triggerEvent(type, options = {}) {
let event = document.createEvent('Events');
event.initEvent(type, true, true);
assign(event, options);
Object.assign(event, options);

this.firstChild.dispatchEvent(event);
}
Expand Down
Expand Up @@ -2,7 +2,6 @@

import { RenderingTestCase, applyMixins, runTask } from 'internal-test-helpers';

import { assign } from '@ember/polyfills';
import { htmlSafe } from '@ember/-internals/glimmer';
import { get, set } from '@ember/-internals/metal';
import {
Expand Down Expand Up @@ -115,7 +114,7 @@ export class FalsyGenerator extends AbstractGenerator {

export class StableTruthyGenerator extends TruthyGenerator {
generate(value, idx) {
return assign(super.generate(value, idx), {
return Object.assign(super.generate(value, idx), {
[`@test it maintains DOM stability when condition changes from ${value} to another truthy value and back [${idx}]`]() {
this.renderValues(value);

Expand All @@ -141,7 +140,7 @@ export class StableTruthyGenerator extends TruthyGenerator {

export class StableFalsyGenerator extends FalsyGenerator {
generate(value, idx) {
return assign(super.generate(value), {
return Object.assign(super.generate(value), {
[`@test it maintains DOM stability when condition changes from ${value} to another falsy value and back [${idx}]`]() {
this.renderValues(value);

Expand Down Expand Up @@ -651,7 +650,7 @@ export class TogglingSyntaxConditionalsTest extends TogglingConditionalsTest {
}

let wrappedTemplate = this.wrapperFor(templates);
this.render(wrappedTemplate, assign({ t: 'T', f: 'F' }, context));
this.render(wrappedTemplate, Object.assign({ t: 'T', f: 'F' }, context));
}

['@test it does not update when the unbound helper is used']() {
Expand Down
3 changes: 1 addition & 2 deletions packages/@ember/-internals/metal/lib/mixin.ts
Expand Up @@ -15,7 +15,6 @@ import {
import { EMBER_MODERNIZED_BUILT_IN_COMPONENTS } from '@ember/canary-features';
import { assert, deprecate } from '@ember/debug';
import { ALIAS_METHOD } from '@ember/deprecated-features';
import { assign } from '@ember/polyfills';
import { DEBUG } from '@glimmer/env';
import { _WeakSet } from '@glimmer/util';
import {
Expand Down Expand Up @@ -204,7 +203,7 @@ function applyMergedProperties(
return value;
}

let newBase = assign({}, baseValue);
let newBase = Object.assign({}, baseValue);
let hasFunction = false;

let props = Object.keys(value);
Expand Down
3 changes: 1 addition & 2 deletions packages/@ember/-internals/routing/lib/services/router.ts
Expand Up @@ -4,7 +4,6 @@ import { symbol } from '@ember/-internals/utils';
import { EMBER_ROUTING_ROUTER_SERVICE_REFRESH } from '@ember/canary-features';
import { assert } from '@ember/debug';
import { readOnly } from '@ember/object/computed';
import { assign } from '@ember/polyfills';
import Service from '@ember/service';
import { consumeTag, tagFor } from '@glimmer/validator';
import Route from '../system/route';
Expand Down Expand Up @@ -313,7 +312,7 @@ export default class RouterService extends Service {
let hasQueryParams = Object.keys(queryParams).length > 0;

if (hasQueryParams) {
queryParams = assign({}, queryParams);
queryParams = Object.assign({}, queryParams);
this._router._prepareQueryParams(
// UNSAFE: casting `routeName as string` here encodes the existing
// assumption but may be wrong: `extractRouteArgs` correctly returns it
Expand Down
3 changes: 1 addition & 2 deletions packages/@ember/-internals/routing/lib/services/routing.ts
Expand Up @@ -5,7 +5,6 @@
import { getOwner, Owner } from '@ember/-internals/owner';
import { symbol } from '@ember/-internals/utils';
import { readOnly } from '@ember/object/computed';
import { assign } from '@ember/polyfills';
import Service from '@ember/service';
import EmberRouter, { QueryParam } from '../system/router';
import RouterState from '../system/router_state';
Expand Down Expand Up @@ -55,7 +54,7 @@ export default class RoutingService extends Service {
_generateURL(routeName: string, models: {}[], queryParams: {}) {
let visibleQueryParams = {};
if (queryParams) {
assign(visibleQueryParams, queryParams);
Object.assign(visibleQueryParams, queryParams);
this.normalizeQueryParams(routeName, models, visibleQueryParams as QueryParam);
}

Expand Down

0 comments on commit 82cea4f

Please sign in to comment.