From 23defc2d3c4bcb6b5bf0f0634e9f59cb013b7912 Mon Sep 17 00:00:00 2001 From: pangratz Date: Thu, 28 Jan 2016 18:54:41 +0100 Subject: [PATCH] [BUGFIX beta] Export more public API's via modules This change allows to import more public API's via modules: - import Serializer from "ember-data/serializer" - import EmbeddedRecords from "ember-data/serializers/embedded-records-mixin" --- addon/index.js | 4 +- addon/{-private/system => }/serializer.js | 0 .../serializers/embedded-records-mixin.js | 0 addon/serializers/json.js | 2 +- lib/ember-data-shims.js | 2 + tests/unit/modules-test.js | 74 +++++++++++++++++++ 6 files changed, 79 insertions(+), 3 deletions(-) rename addon/{-private/system => }/serializer.js (100%) rename addon/{-private => }/serializers/embedded-records-mixin.js (100%) create mode 100644 tests/unit/modules-test.js diff --git a/addon/index.js b/addon/index.js index 7135ca97846..33a31a9ff95 100644 --- a/addon/index.js +++ b/addon/index.js @@ -40,7 +40,7 @@ import { import Model from "ember-data/model"; import Snapshot from "ember-data/-private/system/snapshot"; import Adapter from "ember-data/adapter"; -import Serializer from "ember-data/-private/system/serializer"; +import Serializer from "ember-data/serializer"; import DebugAdapter from "ember-data/-private/system/debug"; import { @@ -70,7 +70,7 @@ import { RESTSerializer } from "ember-data/-private/serializers"; import "ember-inflector"; -import EmbeddedRecordsMixin from "ember-data/-private/serializers/embedded-records-mixin"; +import EmbeddedRecordsMixin from "ember-data/serializers/embedded-records-mixin"; import { Transform, diff --git a/addon/-private/system/serializer.js b/addon/serializer.js similarity index 100% rename from addon/-private/system/serializer.js rename to addon/serializer.js diff --git a/addon/-private/serializers/embedded-records-mixin.js b/addon/serializers/embedded-records-mixin.js similarity index 100% rename from addon/-private/serializers/embedded-records-mixin.js rename to addon/serializers/embedded-records-mixin.js diff --git a/addon/serializers/json.js b/addon/serializers/json.js index 330c7b90930..84c334643be 100644 --- a/addon/serializers/json.js +++ b/addon/serializers/json.js @@ -1,6 +1,6 @@ import Ember from 'ember'; import { assert, warn } from 'ember-data/-private/debug'; -import Serializer from "ember-data/-private/system/serializer"; +import Serializer from "ember-data/serializer"; import coerceId from "ember-data/-private/system/coerce-id"; import normalizeModelName from "ember-data/-private/system/normalize-model-name"; import { modelHasAttributeOrRelationshipNamedType } from "ember-data/-private/utils"; diff --git a/lib/ember-data-shims.js b/lib/ember-data-shims.js index 50ddf3e47ac..dcb9bbb3236 100644 --- a/lib/ember-data-shims.js +++ b/lib/ember-data-shims.js @@ -3,10 +3,12 @@ var shims = { 'ember-data': { default: DS }, 'ember-data/model': { default: DS.Model }, + 'ember-data/mixins/embedded-records': { default: DS.EmbeddedRecordsMixin }, 'ember-data/serializers/rest': { default: DS.RESTSerializer }, 'ember-data/serializers/active-model': { default: DS.ActiveModelSerializer }, 'ember-data/serializers/json': { default: DS.JSONSerializer }, 'ember-data/serializers/json-api': { default: DS.JSONAPISerializer }, + 'ember-data/serializer': { default: DS.Serializer }, 'ember-data/adapters/json-api': { default: DS.JSONAPIAdapter }, 'ember-data/adapters/rest': { default: DS.RESTAdapter }, 'ember-data/adapter': { default: DS.Adapter }, diff --git a/tests/unit/modules-test.js b/tests/unit/modules-test.js new file mode 100644 index 00000000000..9249ac78323 --- /dev/null +++ b/tests/unit/modules-test.js @@ -0,0 +1,74 @@ +import { module, test } from 'qunit'; + +import Transform from "ember-data/transform"; + +import Adapter from "ember-data/adapter"; +import JSONAPIAdapter from "ember-data/adapters/json-api"; +import RESTAdapter from "ember-data/adapters/rest"; + +import Store from "ember-data/store"; + +import Model from "ember-data/model"; +import attr from "ember-data/attr"; +import { belongsTo, hasMany } from "ember-data/relationships"; + +import Serializer from "ember-data/serializer"; +import JSONSerializer from "ember-data/serializers/json"; +import JSONAPISerializer from "ember-data/serializers/json-api"; +import RESTSerializer from "ember-data/serializers/rest"; +import EmbeddedRecordsMixin from "ember-data/serializers/embedded-records-mixin"; + +module("unit/modules - public modules"); + +test("ember-data/transform", function(assert) { + assert.ok(Transform); +}); + +test("ember-data/adapter", function(assert) { + assert.ok(Adapter); +}); + +test("ember-data/adapters/json-api", function(assert) { + assert.ok(JSONAPIAdapter); +}); + +test("ember-data/adapters/rest", function(assert) { + assert.ok(RESTAdapter); +}); + +test("ember-data/attr", function(assert) { + assert.ok(attr); +}); + +test("ember-data/relationships", function(assert) { + assert.ok(belongsTo); + assert.ok(hasMany); +}); + +test("ember-data/store", function(assert) { + assert.ok(Store); +}); + +test("ember-data/model", function(assert) { + assert.ok(Model); +}); + +test("ember-data/mixins/embedded-records", function(assert) { + assert.ok(EmbeddedRecordsMixin); +}); + +test("ember-data/serializer", function(assert) { + assert.ok(Serializer); +}); + +test("ember-data/serializers/json-api", function(assert) { + assert.ok(JSONAPISerializer); +}); + +test("ember-data/serializers/json", function(assert) { + assert.ok(JSONSerializer); +}); + +test("ember-data/serializers/rest", function(assert) { + assert.ok(RESTSerializer); +});