Commit Graph

3905 Commits

Author SHA1 Message Date
George Kalpakas 9e883f5873 feat(aio): improve ProgressiveWepApp-ability (#15628)
Previous Lighthouse score: 52/100
New Lighthouse score: 95+/100

Fixes #15588
2017-03-30 12:35:15 -07:00
Stefanie Fluin 43a9619e57 feat(aio): overall margin, code, alert styles 2017-03-29 23:55:43 -07:00
Stefanie Fluin f518e3a75f feat(aio): code cpy btn temp fix and footer ext 2017-03-29 23:55:43 -07:00
Stefanie Fluin 146b30796e feat(aio): code blocks, copy bttn, a tag hover 2017-03-29 23:55:43 -07:00
Stefanie Fluin 5942b2b27c feat(aio): footer repeat background 2017-03-29 23:55:43 -07:00
Stefanie Fluin 330b1090f4 refactor(aio): move media queries to mixin 2017-03-29 23:55:43 -07:00
George Kalpakas 3ccbe28d9f feat(aio): enable activating available ServiceWorker updates (#15561) 2017-03-29 23:55:03 -07:00
Ward Bell 9f2acf54bc feat(aio): refactors AppComponent and its kids + sidenav hiding (#15570)
-hides sidenav when current doc is not in sidenav menu
-displays top menu on the side as nodes instead of mini top menu
2017-03-29 14:13:40 -07:00
Ward Bell 861953c95c feat(aio): add LiveExampleComponent (#15544) 2017-03-28 14:41:50 -07:00
Pete Bacon Darwin eac99c1b16 build(aio): do not HTML format code-example contents (#15554)
The markdown renderer passes its output through an HTML pretty printer.
While this is good in most cases, it makes a mess of elements that expect
their content to be left untouched.

The pretty printer already ignores `pre` tags (and other built-ins) by
default. This fix allows us to specify other tags that should be left
alone.

Further it actually specifies this option for `code-example` and `code-pane`
tags, which expect to contain preformatted content.
2017-03-28 08:22:44 -07:00
Peter Bacon Darwin b7a89cec59 feat(aio): show top-nav with same styling as side-nav when window is narrow
Fixes #15490
2017-03-28 11:48:28 +01:00
Peter Bacon Darwin 9e0d7be014 build(aio): fix angular-cli config typo 2017-03-28 10:49:52 +01:00
Peter Bacon Darwin 99951911d5 fix(aio): selectedNodes should work for URLs ending with a slash
The mapping was not accounting for the fact that URLs with or without
a trailing slash are actually the same node.
2017-03-28 10:48:51 +01:00
Peter Bacon Darwin fd72fad8fd docs(aio): update migrated content from anguar.io 2017-03-28 10:21:46 +01:00
Peter Bacon Darwin ff82756415 fix(aio): ensure DocumentService doesn't crash on bad JSON 2017-03-28 10:21:46 +01:00
Peter Bacon Darwin d28243d5fc test(aio): the tutorial link no longer ends with a slash
And since the navigation opens to the initial page, we don't need
to click the link.
2017-03-28 10:21:46 +01:00
Peter Bacon Darwin 447e534350 build(aio): render ALL code-examples, not just the first 2017-03-28 10:21:46 +01:00
Peter Bacon Darwin cda887896a build(aio): include top level docs in content 2017-03-28 10:21:46 +01:00
Peter Bacon Darwin 09b548db75 build(aio): update Rho to a version that accepts custom-elements 2017-03-28 10:21:46 +01:00
Georgios Kalpakas 15662efec4 build(aio): update project config for @angular/cli v1.0.0
This is a follow-up to 487a0e1. The changes are based on [this wiki entry][1].

[1]: https://github.com/angular/angular-cli/wiki/stories-1.0-update.
2017-03-27 11:55:26 -07:00
Georgios Kalpakas 5846c46b76 build(aio): remove unused `gulp` dependency 2017-03-27 11:55:26 -07:00
Ed Pelc 6605dd1c7c docs(aio): correct spelling in overview 2017-03-27 14:36:05 +01:00
Ward Bell 837ed788f4 feat(aio): add code-example and code-tabs
* move embedded components to EmbeddedModule
* add PrettyPrint service; load pretty print js dynamically
* make code-example to syntax highlighting w/ `prettyPrintOne`
* add code-tabs
* Implement copy code button
2017-03-27 12:25:34 +01:00
Peter Bacon Darwin 2e4fe7fd2e docs(aio): add test content 2017-03-27 12:25:34 +01:00
Peter Bacon Darwin 52ea193638 build(aio): left align code regions 2017-03-27 10:10:34 +01:00
Peter Bacon Darwin 5e3ef775d5 build(aio): remove naughty fdescribe from utils spec 2017-03-27 10:10:34 +01:00
Peter Bacon Darwin 228238e602 refactor(aio): move SearchService initialisation into SearchBoxComponent
The AppComponent really doesn't need to know about the search service.
2017-03-27 09:24:38 +01:00
Adam a6fd22c399 docs(aio): fix typo 2017-03-27 09:15:50 +01:00
Peter Bacon Darwin 1616cae5cf build(aio): add renderExamples processor
This processor will eventually replace the `{@example}` inline tags
because it provides a cleaner approach that also supports tabbed examples
straight out of the box.

The idea is that authors will simply add a `path` and (optionally) a `region`
attribute to `<code-example>` or `<code-pane>` elements in their docs.
This indicates to dgeni that the relevant example needs to be injected
into the content of this element.

For example, assume that there is an example file `toh-pt1/index.hml` with
a region called `title`, which looks like:

```
<h1>Tour of Heroes</h1>
```

Then the document author could get this to appear in the docs as a
standalone example:

```
<code-example path="toh-pt1" region="title"></code-example>
```

Or as part of a tabbed group:

```
<code-tabs>
  <code-pane path="toh-pt1" region="title"></code-pane>
</code-tabs>
```

If no `path` attribute is provided then the element is ignored, which
enables authors to provide inline code instead:

```
<code-example>
 Some &lt;html&gt escaped code
</code-example>
```

Also all attributes other than `path` and `region` are ignored and passed
through to the final rendered output allowing the author to provide
styling hints:

```
<code-example path="toh-pt1" region="title" linenums"15" class="important">
</code-example>
```
2017-03-25 21:32:30 +00:00
Peter Bacon Darwin d5cf684d99 build(aio): refactor getExampleRegion into a reusable service 2017-03-25 21:32:30 +00:00
Stefanie Fluin c9e51d9911 feat(aio): add new classes, table and images styling (#15478) 2017-03-25 14:21:40 +00:00
Georgios Kalpakas b2830384f5 build(aio): upgrade @angular/service-worker to v1.0.0-beta.8 2017-03-25 07:27:42 +00:00
Georgios Kalpakas 487a0e1b5d build(aio): upgrade @angular/cli to v1.0.0 2017-03-25 07:27:42 +00:00
Georgios Kalpakas 8fe42e58b3 build(aio): upgrade @angular/* to v4.0.0 2017-03-25 07:27:42 +00:00
Stefanie Fluin afb17a5b6e feat(aio): block code examples style fix 2017-03-25 06:55:59 +00:00
Stefanie Fluin b8f3533d53 feat(aio): search input animation 2017-03-25 06:55:59 +00:00
Stefanie Fluin 4918cd241f feat(aio): search results and code margins styling 2017-03-25 06:55:59 +00:00
Stefanie Fluin 45983301d5 feat(aio): footer styling 2017-03-25 06:55:59 +00:00
Stefanie Fluin acf57def13 feat(aio): marketing responsive items and footer 2017-03-25 06:55:59 +00:00
Stefanie Fluin 800591db00 feat(aio): add a and ol to standard typo styles 2017-03-25 06:55:59 +00:00
Stefanie Fluin 159c98c202 feat(aio): search result stying, add footer 2017-03-25 06:55:59 +00:00
Stefanie Fluin c837b3dfb9 feat(aio): terminal code styling and code mixin 2017-03-25 06:55:59 +00:00
Pete Bacon Darwin 376088da70 build(aio): delete content folder before doc-gen (#15414)
This should prevent false-positive e2e test runs where stale files
are left lying around.
2017-03-23 10:23:09 -07:00
Igor Minar 73808dd38b build(aio): upgrade to @angular@4.0.0-rc.6 (#15412) 2017-03-22 23:52:43 -07:00
George Kalpakas 8b414222aa fix(aio): do not fallback to `index.html` for file requests (#15401)
Previously, all URLs were rewritten to `index.html` in order to support
deep-linking. This works when navigating to URLs that correspond to existing
resources. E.g. navigating to `/tutorial` returns `index.html` and then the
`DocViewer` takes over and requests `tutorial.json`.
Navigating to a non-existent URL (e.g. `/foo`), will return `index.html`, which
in turn requests (the non-existent) `foo.json` and throws an error when trying
to parse the returned `index.html` as JSON.

This commit fixes it by only rewriting URLs that do not request a file (i.e. do
not include a `.` in the last path segment).

Fixes #15398
2017-03-22 15:31:47 -07:00
Pete Bacon Darwin 8b4edcc7ad build(aio): output `{@example}` tags as `<code-example>` elements (#15382) 2017-03-22 13:24:40 -07:00
Georgios Kalpakas 1bcbcfd56f revert: build(aio): implement prerendering (#15346)
This reverts commit d0bc83ca27.

Protractor-based prerendering is flakey on Travis and takes several minutes to
complete, slowing down the build. Prerendering has a lower impact now that we
use a ServiceWorker. We will revisit in the future (probably using a
`PlatformServer`-based approach).

PR Close #15346
2017-03-21 19:05:36 -05:00
Igor Minar e59e5e24b9 build(aio): upgrade to rxjs@5.2.0 2017-03-21 15:20:29 -05:00
Igor Minar 9e5d4781cb refactor(aio): cleanup polyfill imports and realign them with the latest cli blueprint
This shouldn't change anything. But it's interesting that we used to have this  import
that seemed bogus, but there were no compilation or rutime errors.
2017-03-21 15:20:28 -05:00
Peter Bacon Darwin fc1f6efe0d build(aio): fix paths to "index" pages
Content pages like `tutorial/index.md` were being mapped to `tutorial.index.json`,
which meant that they could only be rendered if you browsed to `/tutorial/index`.

This didn't sit well so now these pages are mapped to `tutorial.json`, which
means that you browser to them via `/tutorial/` or just `/tutorial`.

Fixed #15335
2017-03-21 15:20:28 -05:00
Igor Minar c9710d4fb5 build(aio): upgrade @angular/cli to 1.0.0-rc.4 2017-03-21 15:20:28 -05:00
Igor Minar cf16f3b0dd build(aio): update @angular to 4.0.0-rc.5 and zone.js to 0.8.4 2017-03-21 15:20:28 -05:00
Peter Bacon Darwin a9e91115bf build(aio): add version into navigation.json
The navigation.json is now passed through the dgeni pipeline.
The source file has been moved to `aio/content/navigation.json`
but the generated file will now appear where the original source file
was found, `aio/src/content/navigation.json`.

Everything inside `aio/src/content` is now generated and ignored by git.

The `processNavigationMap` processor in this commit adds the current version
information to the navigation.json file and verifies the relative urls in
the file map to real documents.

The navigationService exposes the versionInfo as an observable, which the
AppComponent renders at the top of the sidenav.
2017-03-21 15:20:28 -05:00
Peter Bacon Darwin 90f699fdcf build(aio): ensure that internal document links work with base href 2017-03-21 15:20:28 -05:00
Peter Bacon Darwin fd7b855cfc test(aio): fix test descriptions for ordering of processors 2017-03-21 15:20:28 -05:00
Peter Bacon Darwin 20aab64c65 test(aio): use MockLogger in AppComponent tests
This component sends a lot of messages to the console, which makes the
test run less easy to follow.
2017-03-21 15:20:28 -05:00
Peter Bacon Darwin 2eb027a793 build(aio): don't process unnecessary example files in doc-gen
This lowers the `yarn docs` processing time by about 40% (from 50 secs
to 30 secs).
2017-03-21 15:20:28 -05:00
Peter Bacon Darwin b0a7bc77ee build(aio): remove cheatsheet processing and content
This will be replaced by a single file migrated from angular.io
2017-03-21 15:20:28 -05:00
Peter Bacon Darwin 4e10faf1eb build(aio): add version into navigation.json
The navigation.json is now passed through the dgeni pipeline.
The source file has been moved to `aio/content/navigation.json`
but the generated file will now appear where the original source file
was found, `aio/src/content/navigation.json`.

Everything inside `aio/src/content` is now generated and ignored by git.

The `processNavigationMap` processor in this commit adds the current version
information to the navigation.json file and verifies the relative urls in
the file map to real documents.

The navigationService exposes the versionInfo as an observable, which the
AppComponent renders at the top of the sidenav.
2017-03-21 15:20:28 -05:00
Peter Bacon Darwin a0c6d44e18 build(aio): ensure that internal document links work with base href 2017-03-21 15:20:28 -05:00
Peter Bacon Darwin 9bc998c7a1 build(aio): use forked version of Rho rendering engine
The original Rho is too strict when it comes to markdown headings.
It requires that there be a blank line separating the heading and the
next paragraph.  The forked version here fixes that; but the Rho project
will not merge it as it goes against there basic rules.
2017-03-21 15:20:28 -05:00
Peter Bacon Darwin 1a0c6d89b1 build(aio): do not render ignored docs 2017-03-21 15:20:28 -05:00
Peter Bacon Darwin 8c12374c4c build(aio): do not render private classes and members 2017-03-21 15:20:28 -05:00
Stefanie Fluin 45e2126273 refactor(aio): removed dead code 2017-03-21 15:20:28 -05:00
Stefanie Fluin 41497b052d feat(aio): font change and toolbar shadow 2017-03-21 15:20:28 -05:00
Igor Minar 068cad1c1b build: update to angular 4.0.0-rc.4 and service-worker@1.0.0-beta.7 2017-03-21 15:20:28 -05:00
Peter Bacon Darwin 31ef92fc36 build(aio): fix generated github links
The change from `modules` to `packages` needed to be applied to these links.
2017-03-21 15:20:28 -05:00
Peter Bacon Darwin b4081e3713 build(aio): update to dgeni-packages 0.17.0
This new version fixes the problem with mistaking
content inside inline HTML blocks as tags

Related to #15199
2017-03-21 15:20:28 -05:00
Peter Bacon Darwin c8b4a33a7f ci(aio): lower prerender browser instances
Hopefully this will reduce aio test flakes
2017-03-21 15:20:28 -05:00
Ward Bell a13ddf2e8a feat(aio): expand nav menu branch of select item on page load 2017-03-21 15:20:28 -05:00
Georgios Kalpakas d0bc83ca27 build(aio): implement prerendering
The current implementation is based on @igorminar's [angular-io-v42][1]. It is
using Protractor to request all docs URLs, let them fallback to `/index.html`
and save the rendered page.

[1]: https://github.com/IgorMinar/angular-io-v42/tree/05508ab3/tools/prerenderer

Fixes #15104
2017-03-17 15:31:22 -05:00
Georgios Kalpakas b5b2fed54d refactor(aio): re-arrange npm scripts 2017-03-17 15:31:22 -05:00
Georgios Kalpakas 4cef5dddc6 build(aio): use own `.gitignore` file 2017-03-17 15:31:22 -05:00
Peter Bacon Darwin 6772c913c7 fix(aio): scroll to hash fragment element on URL change 2017-03-15 16:11:30 -07:00
Stefanie Fluin b11d0119ac feat(aio): top bar typography, sidenav size 2017-03-15 16:11:30 -07:00
Stefanie Fluin 637a489996 refactor(aio): indent and org cleanup 2017-03-15 16:11:30 -07:00
Stefanie Fluin c2bd357825 feat(aio): initial design commit
Implemented style guide elements to top header bar, side hamburger nav menu, content and search. Consolidated SCSS files to styles folder. Fixed PWA test.
2017-03-15 16:11:30 -07:00
Peter Bacon Darwin 4870f910d6 feat(aio): hide search results when click outside search elements
Clicking anywhere except on the search results and the search box will
now hide the search results

Closes #15095
2017-03-15 16:11:30 -07:00
Peter Bacon Darwin c95a3048ce fix(aio): `SearchBoxComponent` should send query on click
The input may still have focus when the user hits ESC,
causing the search to be hidden.

If the user then clicks on the input again, they would expect
it to reopen the results.
2017-03-15 16:11:30 -07:00
Ward Bell 0e6eb6d719 test(aio): fill in missing API page unit tests 2017-03-15 16:11:30 -07:00
Ward Bell 09574fc285 build(aio): `yarn test --sourcemap=false` for faster dev/test cycles 2017-03-15 16:11:29 -07:00
Georgios Kalpakas 4347cb2119 ci(aio): whitelist 'aio-contributors' for deploying PR previews 2017-03-15 16:11:29 -07:00
Peter Bacon Darwin f600d4e9e4 refactor(aio): move window:resize handler into component 2017-03-15 16:11:29 -07:00
Peter Bacon Darwin eaa04354d5 fix(aio): intercept all clicks on anchors
Previously we had the `LinkDirective` which intercepted clicks on anchors
outside the doc viewer. Now we intercept "all" link clicks within the app.
2017-03-15 16:11:29 -07:00
Peter Bacon Darwin 3f7cfde476 fix(aio): ignore private exports
Closes #14992
2017-03-15 16:11:29 -07:00
Ward Bell 1c1085b140 feat(aio): add google analytics (#15081) 2017-03-13 18:08:23 -07:00
Peter Bacon Darwin ab40fcb068 docs(aio): fix relative links
The migrator was updated to automatically fix these links.
See fca5fb0280
and 3927b7a038

The result of this is that, going forward, we should ask
authors to include the path from the base href to the thing
being linked. E.g. guide/architecture#intro
2017-03-13 16:56:23 -07:00
Peter Bacon Darwin 1847550ad1 docs(aio): move cookbooks into guide
Also update all docs with migrated versions from latest angular.io

Fixes #14941
2017-03-13 16:56:23 -07:00
Peter Bacon Darwin 6497633529 feat(aio): improve search results functionality
* Ensure that all indexed documents are displayed in the search results.
(Previously the guide documents were not appearing because we only showed
results that had a `name` property, rather than a `name` or `title`.)
* Group the results by their containing folder (e.g. api, guide, tutorial, etc).
* Hide the results when the user hits the ESC key.
* Hide the results when the user clicks on a search result

Closes #14852
2017-03-13 16:55:52 -07:00
Pete Bacon Darwin 8850098ea4 build(aio): ensure API docs are generated in the correct place (#15103)
The move of the source code from modules/@angular to packages, caused a
problem with the path to the API docs.
2017-03-13 16:53:47 -07:00
Peter Bacon Darwin eedca09d73 build(aio): generate the api-list.json file from the API docs 2017-03-13 16:52:58 -07:00
Peter Bacon Darwin 7b6dbf0952 fix(aio): `LocationService` search should handle corner cases
Adds tests and fixes corners cases for both `search()` and `setSearc()`
for things like empty queries and param keys that need encoding.

This commit refactors the `LocationService` to rely upon the `PlatformLocation`
rather than using `window.history` directly. This makes testing easier but also
makes the code simpler since `PlatformLocation` deals with platforms that
do not support history for us.
2017-03-13 16:52:58 -07:00
Pete Bacon Darwin 75147ff008 fix(aio): remove invalid brace from CSS (#15122) 2017-03-13 13:36:22 -07:00
Peter Bacon Darwin e7dab7e6c1 feat(aio): hard code a "Home" image link into the toolbar
Closes #15017
2017-03-13 12:55:11 -07:00
Peter Bacon Darwin 26efa3a25c style(aio): tidy up SCSS files 2017-03-13 12:55:11 -07:00
Pete Bacon Darwin 893652a813 fix(aio): upgrade to zone.js 0.7.8 (#15099)
This new version supports empty jasmine it clauses.
2017-03-13 12:53:45 -07:00
Georgios Kalpakas 4e1cf5b41a build(aio): replace all occurrences of env vars on a line in `aio-builds-setup` 2017-03-13 10:30:49 -07:00
Georgios Kalpakas 0c5f893f6e test(aio): improve test description and expectations 2017-03-13 10:30:49 -07:00
Georgios Kalpakas 17f5f3b32c ci(aio): fix clean-up script on `ngbuilds.io` 2017-03-13 10:30:49 -07:00
Georgios Kalpakas 3bb59902f7 docs(aio): add more docs about `aio-builds-setup` 2017-03-13 10:30:49 -07:00
Georgios Kalpakas b804a488c5 feat(aio): make it easy to keep relevant logs outside the docker container 2017-03-13 10:30:49 -07:00
Georgios Kalpakas cbde75e77b feat(aio): redirect HTTP to HTTPS 2017-03-13 10:30:49 -07:00
Georgios Kalpakas 413e11fac2 build(aio): remove redundant arg 2017-03-13 10:30:49 -07:00
George Kalpakas fa1920a02b feat(aio): enable deep-linking on deployed apps (until prerendering is done) (#15049) 2017-03-13 09:35:16 -07:00
Alex Rickabaugh 920b3d259d feat(aio): support @angular/service-worker using the CLI generated service worker manifest (#15042) 2017-03-10 14:05:29 -08:00
Ward Bell fce55d87d2 feat(aio): add Kapunahele animations v2 (#15023) 2017-03-10 14:05:00 -08:00
Jason Aden 2b44854885 build: fix paths for examples tests 2017-03-08 16:29:28 -08:00
Jason Aden b74ab83d2c refactor: update paths from modules/@angular to packages 2017-03-08 16:29:28 -08:00
Ward Bell 5ad5301a3e feat(aio): add API list page (#14899) 2017-03-08 13:08:19 -08:00
Georgios Kalpakas 174d4c8ef7 ci(aio): do not deploy PR if preconditions not met
This avoids incorrectly failing the build if the PR author is not a member of one of the whitelisted GitHub teams.
2017-03-07 18:24:45 -08:00
Georgios Kalpakas 4ca772eea3 refactor(aio): move scripts into `scripts/` directory 2017-03-07 18:24:45 -08:00
Georgios Kalpakas b4ec80b21d docs(aio): document arg for auto-restarting the docker container on boot 2017-03-07 18:24:45 -08:00
Georgios Kalpakas a4476654aa refactor(aio): use more intuitive log filepath 2017-03-07 18:24:45 -08:00
Georgios Kalpakas 4210d2b4b1 test(aio): fix e2e tests 2017-03-07 18:24:45 -08:00
Georgios Kalpakas aa30c50144 feat(aio): make it easier to create a docker image (less variables to overwrite) 2017-03-07 18:24:45 -08:00
Georgios Kalpakas fd34a58e13 fix(aio): ensure `NGBUILDS_IO_KEY` is not printed
Gaining access to another PR's JWT, would allow faking that PR's author wrt to
GitHub team membership verification for as long as the JWT is valid (currently
90 mins).
2017-03-07 18:24:45 -08:00
Georgios Kalpakas e40f81b564 ci(aio): fail the build if preview deployment fails 2017-03-07 18:24:45 -08:00
Georgios Kalpakas a3a7cf2090 build(aio): allow overwriting env vars at build time 2017-03-07 18:24:45 -08:00
Georgios Kalpakas d9d9d9de6f build(aio): allow passing parameters to `docker build` 2017-03-07 18:24:45 -08:00
Georgios Kalpakas 7e67f37fc4 ci(aio): test aio-builds-setup as part of the `aio` job 2017-03-07 18:24:45 -08:00
Georgios Kalpakas d275667da0 build(aio): upgrade to latest and pin major pm2 version 2017-03-07 18:24:45 -08:00
Georgios Kalpakas 03a5fd01c9 fix(aio): do not hardcode the domain in preview link comments 2017-03-07 18:24:45 -08:00
Georgios Kalpakas d28ea80db8 build(aio): always compile before running tests 2017-03-07 18:24:45 -08:00
Georgios Kalpakas 0e9277b4c3 style(aio): change mock value for consistency 2017-03-07 18:24:45 -08:00
Georgios Kalpakas 2796790c7d feat(aio): verify uploaded builds based on JWT from Travis 2017-03-07 18:24:45 -08:00
Georgios Kalpakas 028b274750 feat(aio): support passing secrets as files to the docker container 2017-03-07 18:24:45 -08:00
Georgios Kalpakas 3ed1f64d43 feat(aio): implement `BuildVerifier` 2017-03-07 18:24:45 -08:00
Georgios Kalpakas 96f11dad18 feat(aio): implement `GithubTeams` 2017-03-07 18:24:45 -08:00
Georgios Kalpakas 060d02eb82 fix(aio): remove unnecessary `repoSlug` parameter from `GithubApi` 2017-03-07 18:24:45 -08:00
Georgios Kalpakas 951e653b0c feat(aio): implement `GithubApi.getPaginated()` 2017-03-07 18:24:45 -08:00
Georgios Kalpakas 37348989f0 feat(aio): make `githubToken` mandatory for `GithubApi` 2017-03-07 18:24:45 -08:00
Georgios Kalpakas c5644e5a0d refactor(aio): add `assertNotMissingOrEmpty()` helper 2017-03-07 18:24:45 -08:00
Georgios Kalpakas c8d87a936b feat(aio): add support for HTTPS (certificates provided by host - fallback to self-signed) 2017-03-07 18:24:45 -08:00
Georgios Kalpakas 6b8413f7b3 build(aio): update TypeScript (and other dependencies) 2017-03-07 18:24:45 -08:00
Georgios Kalpakas bc831ff4a4 feat(aio): check resolution of external URLs in HEALTHCHECK 2017-03-07 18:24:45 -08:00
Georgios Kalpakas 8a8d4fe24f test(aio): fix typos (repoSlag --> repoSlug) 2017-03-07 18:24:45 -08:00
Georgios Kalpakas 9df9bdc0f5 style(aio): correctly type tuple 2017-03-07 18:24:45 -08:00
Georgios Kalpakas c8ead9bcd0 refactor(aio): use types intead of interfaces for functions 2017-03-07 18:24:45 -08:00
Georgios Kalpakas 115164033b ci(aio): add initial implementation for aio-builds setup 2017-03-07 18:24:45 -08:00
Peter Bacon Darwin ebd446397a fix(aio): reimplement the top menu dropping into the side bar
I couldn't find the CSS for the `.small` class to make it look nice.
2017-03-06 22:27:32 -08:00
Peter Bacon Darwin 55189b1b85 refactor(aio): simplify and document the NavigationService 2017-03-06 22:27:32 -08:00
Peter Bacon Darwin b017fbe48e style(aio): rename local variable 2017-03-06 22:27:32 -08:00
Peter Bacon Darwin 0d6aa0caed style(aio): rename const to camelCase 2017-03-06 22:27:32 -08:00
Peter Bacon Darwin b70c881c00 docs(aio): fix paths to images 2017-03-06 22:27:32 -08:00
Peter Bacon Darwin 0d63e2a586 docs(aio): copy devguide images from angular.io 2017-03-06 22:27:32 -08:00
Peter Bacon Darwin d83b7ba4c0 refactor(aio): rename `activeNodes` to `selectedNodes`
This keeps the naming consistent with the nav-menu
and nav-item component properties
2017-03-06 22:27:32 -08:00
Peter Bacon Darwin 46d6e8d191 fix(aio): reimplement side-nav 2017-03-06 22:27:32 -08:00
Peter Bacon Darwin 61ef756ef2 fix(aio): ensure that only one request for navigation.json is made 2017-03-06 22:27:32 -08:00
Peter Bacon Darwin 3529813ca0 fix(aio): move interfaces into their own files to workaround compile weirdness
For some reason the tree-shaker is not picking up these interfaces
(perhaps TS is not passing it through) when they are in the same file
as their related services. This results in a distracting warning message.
2017-03-06 22:27:32 -08:00
Peter Bacon Darwin b81693b30c fix(aio): no need for path and url properties in nav 2017-03-06 22:27:32 -08:00
Peter Bacon Darwin 5815983178 fix(aio): correctly intercept links with LinkDirective 2017-03-06 22:27:32 -08:00
Peter Bacon Darwin fe962f6de7 fix(aio): LocationService urls should never start with a slash
There is a weirdness in the Angular Location service.
If the `baseHref` is only a single slash (`'/'`) then it
changes it to be an empty string (`''`). The effect of this
is that `Location.normaliseUrl(url)` does not strip off the
leading slash from url paths.

The problem is that the leading slash only appears on the
initial Location path, and not on urls that arrive from subscribing
to the Location service.

This commit is a workaround this problem.
2017-03-06 22:27:32 -08:00
Peter Bacon Darwin 04e14589c4 docs(aio): make home doc the default home page
Now the `/` url will display the home page.

Closes #14849
2017-03-06 22:27:32 -08:00
Peter Bacon Darwin d6c1ccaf14 fix(aio): emit a hard-coded doc if file-not-found fails
Closes #14848
2017-03-06 22:27:32 -08:00
Peter Bacon Darwin 4abd6f333c fix(aio): map the empty url to the correct doc path 2017-03-06 22:27:32 -08:00
Peter Bacon Darwin dd50922747 refactor(aio): move document path computation
Do the path computation before doing the cache look up.
2017-03-06 22:27:32 -08:00
Peter Bacon Darwin 66cc88c8a8 fix(aio): ensure that only one request per document is made 2017-03-06 22:27:32 -08:00
Peter Bacon Darwin b44bc9c022 test(aio): add mock services 2017-03-06 22:27:32 -08:00
Peter Bacon Darwin ab0db66bf7 build(aio): move gulp tasks to package.json
Generate the docs with `yarn docs`.
Test the doc generation code with `yarn docs-test`

The docs are automatically built as part of the `yarn build` task,
so there is no need to rebuild them in the test_aio.sh file
2017-03-05 08:41:26 -08:00
Peter Bacon Darwin 8757656508 build(aio): upgrade to angular 4.0.0-rc.2 2017-03-05 08:41:26 -08:00
Peter Bacon Darwin 01ff427685 test(aio): reimplemented all the commented-out unit tests 2017-03-05 08:41:26 -08:00
Peter Bacon Darwin 2ebfa2ff31 test(aio): add placeholder test descriptions 2017-03-05 08:41:26 -08:00
Peter Bacon Darwin b09ee424bf refactor(aio): reorganize search service for easier testing 2017-03-05 08:41:26 -08:00
Peter Bacon Darwin 207298cd3a build(aio): generate marketing docs JSON files 2017-03-02 00:21:06 -08:00
Peter Bacon Darwin 62eafa4eec test(aio): fix up links in app e2e test 2017-03-02 00:21:06 -08:00
Peter Bacon Darwin 4626ca2bff build(aio): add file-not-found doc 2017-03-02 00:21:06 -08:00
Peter Bacon Darwin 38bb744008 fix(aio): remove external HTML and SCSS from app component 2017-03-02 00:21:06 -08:00
Peter Bacon Darwin dca83ec738 feat(aio): add search service and search UI 2017-03-02 00:21:06 -08:00
Peter Bacon Darwin 71e22b8d11 feat(aio): implement doc and navigation UI 2017-03-02 00:21:06 -08:00
Peter Bacon Darwin 371dc4744c feat(aio): add navigation service 2017-03-02 00:21:06 -08:00
Peter Bacon Darwin 4767f107fb feat(aio): add logger service 2017-03-02 00:21:06 -08:00
Peter Bacon Darwin 5ae4b77d8b feat(aio): add document service 2017-03-02 00:21:06 -08:00
Peter Bacon Darwin 887d32a9bf feat(aio): add location service 2017-03-02 00:21:06 -08:00
Peter Bacon Darwin 3883b736c0 build(aio): content documents should have a `contents` field 2017-03-02 00:21:06 -08:00
Peter Bacon Darwin c2e672cd1c docs(aio): add NOTES 2017-03-02 00:21:06 -08:00
Peter Bacon Darwin 93c0ab7131 fix(aio): remove previous files 2017-03-02 00:21:06 -08:00
Peter Bacon Darwin 1f3198cb50 feat(aio): copy example code from angular.io 2017-02-23 23:23:58 -08:00
Peter Bacon Darwin 3e34ba01bd docs(aio): migrate content docs from angular.io
This content was generated by a tool: https://github.com/petebacondarwin/aio-migrator
2017-02-23 23:23:58 -08:00
Peter Bacon Darwin c3247c64a4 docs(aio): remove unused partial file 2017-02-23 23:23:58 -08:00
Peter Bacon Darwin 1282da1b14 feat(aio): support unannotated JSON example files 2017-02-23 23:23:58 -08:00
Peter Bacon Darwin 1c08f1a6b2 fix(aio): remove unused extractTitleFromGuides processor 2017-02-23 23:23:58 -08:00
Peter Bacon Darwin dfed388139 fix(aio): convert API and content docs to JSON 2017-02-23 23:23:58 -08:00
Peter Bacon Darwin 5e9474d24c feat(aio): include guide and tutorial in the doc generation 2017-02-23 23:23:58 -08:00
Peter Bacon Darwin b92f52649b fix(aio): remove unused `getExampleFilename` service 2017-02-23 23:23:58 -08:00
Peter Bacon Darwin 3f8d5ac478 feat(aio): support annotating JSON files with doc-regions
This change allows the example writer to add doc-region annotations to
files that do not allow comments. This is done by creating a clone of the
file and adding `.annotated` to the file name. This new file can contain
inline `// ...` comments that can be used to annotate the doc regions.

Example:

**package.json**

```
{
  "name": "angular.io",
  "version": "0.0.0",
  "main": "index.js",
  "repository": "git@github.com:angular/angular.git",
  "author": "Angular",
  "license": "MIT",
  "private": true,
}
````

**package.json.annotated**

```
{
  "name": "angular.io",
// #docregion version
  "version": "0.0.0",
// #enddocregion
  "main": "index.js",
  "repository": "git@github.com:angular/angular.git",
  "author": "Angular",
  "license": "MIT",
  "private": true,
}
````

This region can then be referenced in examples just like any other doc region:

```
{@example 'package.json' region="version"}
```
2017-02-23 23:23:58 -08:00
Peter Bacon Darwin bee567afad fix(aio): add `@suppress` tag that is used in the API docs 2017-02-23 23:23:58 -08:00
Peter Bacon Darwin 649bab8ff8 fix(aio): handle html docregions that do not end on the same line 2017-02-23 23:23:58 -08:00
Peter Bacon Darwin 6a9251874b fix(aio): region parser error line numbers were off by one 2017-02-23 23:23:58 -08:00
Peter Bacon Darwin c208f97461 fix(aio): correctly handle "empty" region names 2017-02-23 23:23:58 -08:00
Victor Berchet bf8eb41248 feat(compiler): introduce `<ng-template>`, deprecate `<template>` and `template` attribute
The rationale of this change is to improve the inter-operability with web
components that might make use of the `<template>` tag.

DEPRECATION

The template tags and template attribute are deprecated:

    <template ngFor [ngFor]=items let-item><li>...</li></template>
    <li template="ngFor: let item of items">...</li>

should be rewritten as:

    <ng-template ngFor [ngFor]=items let-item><li>...</li></ng-template>

Note that they still be supported in 4.x with a deprecartion warning in
development mode.

MIGRATION

- `template` tags (or elements with a `template` attribute) should be rewritten
as a `ng-template` tag,
- `ng-content` selectors should be updated to referto a `ng-template` where they
use to refer to a template: `<ng-content selector="template[attr]">` should be
rewritten as `<ng-content selector="ng-template[attr]">`
- if you consume a component relying on your templates being actual `template`
elements (that is they include a `<ng-content selector="template[attr]">`). You
should  still migrate to `ng-template` and make use of `ngProjectAs` to override
the way `ng-content` sees the template:
`<ng-template projectAs="template[attr]">`
- while `template` elements are deprecated in 4.x they continue to work.
2017-02-23 20:03:16 -08:00
George Kalpakas 175dbce354 build: check yarn version in `check-environment` (#14499)
As discussed in
https://github.com/angular/angular/pull/14382#discussion_r100620839.
2017-02-22 20:55:25 -08:00
Ward Bell 9a2ea55bff build(aio): upgrade to CLI beta.32 and MD beta.2 2017-02-22 17:53:56 -08:00
Ward Bell a26eb4c04e test(aio): redefine pipe test as a pending test to confirm code example 2017-02-22 17:53:56 -08:00
Pete Bacon Darwin 88755b0dae build(aio): update dgeni-packages to 0.16.8 (#14597) 2017-02-22 11:27:09 -08:00
Ward Bell c4a6263a01 feat(aio): replace `take(1)` with more semantic `first()` (#14571) 2017-02-17 22:52:57 -08:00
Ward Bell 45eac233eb feat(aio): fill in NavMap from current doc inventory (#14516)
A port of existing navigation. NOT the final information architecture.
2017-02-17 22:50:16 -08:00
Ward Bell 74ce121dba feat(aio): temporarily include ‘content’ folder among production assets (#14548) 2017-02-16 17:10:51 -08:00
Igor Minar 8c20aaa328 fix(aio): use cleanUrls option rather than bruteforce rewriting rule (#14547)
the cleanUrls option is smarter and looks at headers and mime type to route requests correctly.
2017-02-16 15:26:59 -08:00
Rob Wormald 88eb3b2ce8 fix(aio): fix prod build (#14541)
Fixes push to staging.
2017-02-16 14:46:30 -08:00
Ward Bell 9a6f3d637f feat(aio): add sidenav driven by navigation data (#14429) 2017-02-15 11:22:37 -08:00
Pete Bacon Darwin 1dc9be4b7d fix(aio): support `ValueModule` symbols in the TypeScript source (#14464)
In #14388 the following syntax is used in the source:

```
import * as view_utils from './linker/view_utils';
import * as viewEngine from './view/index';
…
export {view_utils as ɵview_utils};
export {viewEngine as ɵviewEngine};
```

The usage of `export {... as ...}` was not being recognised by dgeni.

It is now being recognised and a temporary dummy output file is being
rendered. Later we will either ignore this doctype altogether or find
a better way of rendering it.
2017-02-13 14:46:44 -08:00
Igor Minar 294c1cd7a7 build(aio): update to @angular/core@2.4.7
upgrade command used:

```
yarn upgrade @angular/{core,common,compiler,forms,http,platform-browser,platform-browser-dynamic,router,compiler-cli}
```
2017-02-10 13:02:24 -08:00
Igor Minar fafee5a493 build(aio): update to @angular/cli@1.0.0-beta.31 2017-02-10 13:02:24 -08:00
George Kalpakas b988733553 test(aio): remove unnecessary hack from e2e tests (#14356)
May address #14347.
2017-02-09 17:22:08 -08:00
Pete Bacon Darwin 600402d440 build(aio): big move of docs related files (#14361)
All the docs related files (docs-app, doc-gen, content, etc)
are now to be found inside the `/aio` folder.

The related gulp tasks have been moved from the top level
gulp file to a new one inside the `/aio` folder.

The structure of the `/aio` folder now looks like:

```
/aio/
  build/         # gulp tasks
  content/       #MARKDOWN FILES for devguides, cheatsheet, etc
    devguides/
    cheatsheets/
  transforms/    #dgeni packages, templates, etc
  src/
    app/
    assets/
    content/    #HTML + JSON build artifacts produced by dgeni from /aio/content.
                #This dir is .gitignored-ed
  e2e/           #protractor tests for the doc viewer app
  node_modules/ #dependencies for both the doc viewer builds and the dgeni stuff
                #This dir is .gitignored-ed
  gulpfile.js   #Tasks for generating docs and building & deploying the doc viewer
```

Closes #14361
2017-02-09 11:58:36 -08:00