From 9ddffd238588b2822308bdefeaafcb8dbef07a54 Mon Sep 17 00:00:00 2001 From: Cory Forsyth Date: Thu, 11 Jun 2015 13:33:14 -0400 Subject: [PATCH] [BUGFIX beta] Deprecate Ember.Select global refs #11377 --- packages/ember-views/lib/main.js | 6 +++--- packages/ember-views/lib/views/select.js | 9 +++++++++ packages/ember-views/tests/views/select_test.js | 6 ++++++ 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/packages/ember-views/lib/main.js b/packages/ember-views/lib/main.js index 8817b89e4ee..cb70319ea93 100644 --- a/packages/ember-views/lib/main.js +++ b/packages/ember-views/lib/main.js @@ -34,7 +34,7 @@ import TextField from "ember-views/views/text_field"; import TextArea from "ember-views/views/text_area"; import { - Select, + DeprecatedSelect, SelectOption, SelectOptgroup } from "ember-views/views/select"; @@ -48,7 +48,7 @@ import LegacyEachView from "ember-views/views/legacy_each_view"; @method $ @for Ember - @public + @public */ // BEGIN EXPORTS @@ -71,7 +71,7 @@ Ember.Checkbox = Checkbox; Ember.TextField = TextField; Ember.TextArea = TextArea; -Ember.Select = Select; +Ember.Select = DeprecatedSelect; Ember.SelectOption = SelectOption; Ember.SelectOptgroup = SelectOptgroup; diff --git a/packages/ember-views/lib/views/select.js b/packages/ember-views/lib/views/select.js index 247cb9760e6..ff5fdbb6a1d 100644 --- a/packages/ember-views/lib/views/select.js +++ b/packages/ember-views/lib/views/select.js @@ -313,6 +313,7 @@ var SelectOptgroup = View.extend({ @namespace Ember @extends Ember.View @public + @deprecated See http://emberjs.com/deprecations/v1.x/#toc_ember-select */ var Select = View.extend({ instrumentDisplay: 'Ember.Select', @@ -674,9 +675,17 @@ var Select = View.extend({ } }); +var DeprecatedSelect = Select.extend({ + init() { + this._super(...arguments); + Ember.deprecate(`Ember.Select is deprecated. Consult the Deprecations Guide for a migration strategy.`, !!Ember.ENV._ENABLE_LEGACY_VIEW_SUPPORT, { url: 'http://emberjs.com/deprecations/v1.x/#toc_ember-select' }); + } +}); + export default Select; export { Select, + DeprecatedSelect, SelectOption, SelectOptgroup }; diff --git a/packages/ember-views/tests/views/select_test.js b/packages/ember-views/tests/views/select_test.js index e5fc1d8c0ca..15c226b0f03 100644 --- a/packages/ember-views/tests/views/select_test.js +++ b/packages/ember-views/tests/views/select_test.js @@ -35,6 +35,12 @@ function selectedOptions() { return select.get('childViews').mapBy('selected'); } +QUnit.test('using the Ember.Select global is deprecated', function(assert) { + expectDeprecation(function() { + Ember.Select.create(); + }, /Ember.Select is deprecated./); +}); + QUnit.test("has 'ember-view' and 'ember-select' CSS classes", function() { deepEqual(select.get('classNames'), ['ember-view', 'ember-select']); });