Skip to content

Commit 732849c

Browse files
committed
Show the Ember Data landing page
1 parent be0ef19 commit 732849c

File tree

5 files changed

+53
-44
lines changed

5 files changed

+53
-44
lines changed

app/templates/ember-data.hbs renamed to app/components/ember-data-landing-page.hbs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<article class="chapter">
1+
<<article class="chapter">
22
<h1>
33
Ember Data API Documentation
44
</h1>

app/components/ember-landing-page.hbs

+39
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
<article class="chapter">
2+
<h1>Ember API Documentation</h1>
3+
<p>
4+
To get started, choose a project (Ember or Ember Data) and a version
5+
from the dropdown menu. Ember has core methods used in any app, while Ember Data has
6+
documentation of the built-in library for making requests to a back end.
7+
If you're looking for documentation of the command line tool used to generate files, build your
8+
app, and more, visit <a href="https://cli.emberjs.com/">ember-cli</a>. The latest
9+
testing API is available at
10+
<a href="https://github.com/emberjs/ember-test-helpers/blob/master/API.md">ember-test-helpers</a>.
11+
</p>
12+
<h2>Commonly searched-for documentation</h2>
13+
<ul class="spec-method-list">
14+
<li>Components - {{#link-to 'project-version.classes.class' 'Component'}}Classic{{/link-to}} or {{#link-to 'project-version.modules.module' '@glimmer/component'}}Glimmer{{/link-to}}; a view that is completely isolated</li>
15+
<li>{{#link-to 'project-version.functions.function' '@glimmer/tracking' 'tracked'}}Tracked{{/link-to}} - make your templates responsive to property updates</li>
16+
<li>{{#link-to 'project-version.classes.class' 'ComputedProperty'}}Computed Properties{{/link-to}} - declare functions as properties</li>
17+
<li>{{#link-to 'project-version.classes.class' '@ember/object/computed'}}Computed Macros{{/link-to}} - shorter ways of expressing certain types of computed properties</li>
18+
<li>{{#link-to 'project-version.classes.class' 'EmberArray'}}EmberArray{{/link-to}} - contains methods like {{#link-to 'project-version.classes.class.methods.method' 'EmberArray' 'forEach' (query-params anchor='forEach')}}forEach{{/link-to}} and {{#link-to 'project-version.classes.class.methods.method' 'EmberArray' 'mapBy' (query-params anchor='mapBy')}}mapBy{{/link-to}} that help you iterate over Ember Objects</li>
19+
<li>{{#link-to 'project-version.classes.class' 'EmberObject'}}EmberObject{{/link-to}} - the main base class for all Ember objects, including the {{#link-to 'project-version.classes.class.methods.method' 'EmberObject' 'get' (query-params anchor='get')}}get{{/link-to}} and {{#link-to 'project-version.classes.class.methods.method' 'EmberObject' 'set' (query-params anchor='set')}}set{{/link-to}} methods</li>
20+
<li>{{#link-to 'project-version.classes.class' 'Ember.Templates.helpers'}}Ember.Templates.helpers{{/link-to}} - built-in functions that can be used in templates, such as the {{#link-to 'project-version.classes.class.methods.method' 'Ember.Templates.helpers' 'each' (query-params anchor='each')}}each{{/link-to}} helper</li>
21+
<li>{{#link-to 'project-version.classes.class' 'Ember.Templates.helpers'}}Ember.Templates.helpers{{/link-to}} - built-in functions that can be used in templates, such as the {{#link-to 'project-version.classes.class.methods.method' 'Ember.Templates.helpers' 'each' (query-params anchor='each')}}each{{/link-to}}, {{#link-to 'project-version.classes.class.methods.method' 'Ember.Templates.helpers' 'on' (query-params anchor='on')}}on{{/link-to}} and {{#link-to 'project-version.classes.class.methods.method' 'Ember.Templates.helpers' 'fn' (query-params anchor='fn')}}fn{{/link-to}} helpers</li>
22+
<li>{{#link-to 'project-version.classes.class' 'Helper'}}Helpers{{/link-to}} - a way to define custom display functions that are used in templates</li>
23+
<li>{{#link-to 'project-version.classes.class' 'Route'}}Route{{/link-to}} - used to define individual routes, including the {{#link-to 'project-version.classes.class.methods.method' 'Route' 'model' (query-params anchor='model')}}model{{/link-to}} hook for loading data</li>
24+
<li>{{#link-to 'project-version.classes.class' 'Service'}}Service{{/link-to}} - an Ember object that lives for the duration of the application, and can be made available in different parts of your application</li>
25+
</ul>
26+
<h2>Useful links</h2>
27+
<ul>
28+
<li>
29+
<h5>
30+
<a href="https://github.com/ember-learn/ember-api-docs">API Documentation Github Repository</a>
31+
</h5>
32+
</li>
33+
<li>
34+
<h5>
35+
<a href="https://guides.emberjs.com/release/getting-started/core-concepts/">Ember Core Concepts</a>
36+
</h5>
37+
</li>
38+
</ul>
39+
</article>

app/routes/project-version.js

+3-4
Original file line numberDiff line numberDiff line change
@@ -50,11 +50,10 @@ export default Route.extend({
5050
// if there is no class, module, or namespace specified...
5151
let latestVersion = getLastVersion(model.get('project.content').hasMany('projectVersions').ids());
5252
let isLatestVersion = transitionVersion === latestVersion || transitionVersion === 'release';
53-
let isEmberProject = model.get('project.id') === 'ember';
5453
let shouldConvertPackages = semverCompare(model.get('version'), '2.16') < 0;
55-
if ((!shouldConvertPackages || isLatestVersion) && isEmberProject) {
56-
// ... and the transition version is the latest release, and the selected docs are
57-
// ember (not Ember Data), then display the landing page at
54+
if (!shouldConvertPackages || isLatestVersion) {
55+
// ... and the transition version is the latest release,
56+
// display the landing page at
5857
return this.transitionTo('project-version.index');
5958
} else {
6059
// else go to the version specified

app/routes/project-version/index.js

+5
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
11
import Route from '@ember/routing/route';
22

33
export default Route.extend({
4+
async model() {
5+
const projectVersion = this.modelFor('project-version');
6+
const project = await projectVersion.project;
7+
return project;
8+
}
49
});
+5-39
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,5 @@
1-
<article class="chapter">
2-
<h1>Ember API Documentation</h1>
3-
<p>
4-
To get started, choose a project (Ember or Ember Data) and a version
5-
from the dropdown menu. Ember has core methods used in any app, while Ember Data has
6-
documentation of the built-in library for making requests to a back end.
7-
If you're looking for documentation of the command line tool used to generate files, build your
8-
app, and more, visit <a href="https://cli.emberjs.com/">ember-cli</a>. The latest
9-
testing API is available at
10-
<a href="https://github.com/emberjs/ember-test-helpers/blob/master/API.md">ember-test-helpers</a>.
11-
</p>
12-
<h2>Commonly searched-for documentation</h2>
13-
<ul class="spec-method-list">
14-
<li>Components - {{#link-to 'project-version.classes.class' 'Component'}}Classic{{/link-to}} or {{#link-to 'project-version.modules.module' '@glimmer/component'}}Glimmer{{/link-to}}; a view that is completely isolated</li>
15-
<li>{{#link-to 'project-version.functions.function' '@glimmer/tracking' 'tracked'}}Tracked{{/link-to}} - make your templates responsive to property updates</li>
16-
<li>{{#link-to 'project-version.classes.class' 'ComputedProperty'}}Computed Properties{{/link-to}} - declare functions as properties</li>
17-
<li>{{#link-to 'project-version.classes.class' '@ember/object/computed'}}Computed Macros{{/link-to}} - shorter ways of expressing certain types of computed properties</li>
18-
<li>{{#link-to 'project-version.classes.class' 'EmberArray'}}EmberArray{{/link-to}} - contains methods like {{#link-to 'project-version.classes.class.methods.method' 'EmberArray' 'forEach' (query-params anchor='forEach')}}forEach{{/link-to}} and {{#link-to 'project-version.classes.class.methods.method' 'EmberArray' 'mapBy' (query-params anchor='mapBy')}}mapBy{{/link-to}} that help you iterate over Ember Objects</li>
19-
<li>{{#link-to 'project-version.classes.class' 'EmberObject'}}EmberObject{{/link-to}} - the main base class for all Ember objects, including the {{#link-to 'project-version.classes.class.methods.method' 'EmberObject' 'get' (query-params anchor='get')}}get{{/link-to}} and {{#link-to 'project-version.classes.class.methods.method' 'EmberObject' 'set' (query-params anchor='set')}}set{{/link-to}} methods</li>
20-
<li>{{#link-to 'project-version.classes.class' 'Ember.Templates.helpers'}}Ember.Templates.helpers{{/link-to}} - built-in functions that can be used in templates, such as the {{#link-to 'project-version.classes.class.methods.method' 'Ember.Templates.helpers' 'each' (query-params anchor='each')}}each{{/link-to}} helper</li>
21-
<li>{{#link-to 'project-version.classes.class' 'Ember.Templates.helpers'}}Ember.Templates.helpers{{/link-to}} - built-in functions that can be used in templates, such as the {{#link-to 'project-version.classes.class.methods.method' 'Ember.Templates.helpers' 'each' (query-params anchor='each')}}each{{/link-to}}, {{#link-to 'project-version.classes.class.methods.method' 'Ember.Templates.helpers' 'on' (query-params anchor='on')}}on{{/link-to}} and {{#link-to 'project-version.classes.class.methods.method' 'Ember.Templates.helpers' 'fn' (query-params anchor='fn')}}fn{{/link-to}} helpers</li>
22-
<li>{{#link-to 'project-version.classes.class' 'Helper'}}Helpers{{/link-to}} - a way to define custom display functions that are used in templates</li>
23-
<li>{{#link-to 'project-version.classes.class' 'Route'}}Route{{/link-to}} - used to define individual routes, including the {{#link-to 'project-version.classes.class.methods.method' 'Route' 'model' (query-params anchor='model')}}model{{/link-to}} hook for loading data</li>
24-
<li>{{#link-to 'project-version.classes.class' 'Service'}}Service{{/link-to}} - an Ember object that lives for the duration of the application, and can be made available in different parts of your application</li>
25-
</ul>
26-
<h2>Useful links</h2>
27-
<ul>
28-
<li>
29-
<h5>
30-
<a href="https://github.com/ember-learn/ember-api-docs">API Documentation Github Repository</a>
31-
</h5>
32-
</li>
33-
<li>
34-
<h5>
35-
<a href="https://guides.emberjs.com/release/getting-started/core-concepts/">Ember Core Concepts</a>
36-
</h5>
37-
</li>
38-
</ul>
39-
</article>
1+
{{#if (eq @model.id "ember-data")}}
2+
<EmberDataLandingPage />
3+
{{else}}
4+
<EmberLandingPage />
5+
{{/if}}

0 commit comments

Comments
 (0)