From 420bc3987f69f6d9cd36e31c013fc9eea4f1b245 Mon Sep 17 00:00:00 2001 From: Raghu Simha Date: Mon, 17 May 2021 10:03:40 -0400 Subject: [PATCH] =?UTF-8?q?=F0=9F=93=96=20Move=20AMP=20documentation=20fro?= =?UTF-8?q?m=20`spec/`=20to=20`docs/spec/`=20(#34160)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../intent-to-deprecate--i2d-.md | 2 +- .../ISSUE_TEMPLATE/intent-to-remove--i2r-.md | 2 +- 3p/README.md | 4 +-- ads/README.md | 2 +- ads/google/a4a/docs/Network-Impl-Guide.md | 2 +- ads/vendors/custom.md | 2 +- .../tasks/check-video-interface-list.js | 2 +- .../tasks/create-golden-css/css/main.css | 2 +- builtins/amp-img/amp-img.md | 2 +- builtins/amp-pixel/amp-pixel.md | 2 +- css/ampdoc.css | 2 +- docs/building-a-bento-amp-extension.md | 10 +++---- docs/building-an-amp-extension.md | 12 ++++---- docs/component-validator-rules.md | 2 +- docs/contributing-code.md | 4 +-- docs/developing.md | 4 +-- {spec => docs/spec}/amp-3p-naming.md | 2 +- {spec => docs/spec}/amp-3p-video.md | 0 {spec => docs/spec}/amp-actions-and-events.md | 6 ++-- {spec => docs/spec}/amp-boilerplate.md | 0 {spec => docs/spec}/amp-cache-debugging.md | 2 +- {spec => docs/spec}/amp-cache-guidelines.md | 6 ++-- ...mp-cache-modifications.everything.amp.html | 0 ...-cache-modifications.everything.cache.html | 0 .../spec}/amp-cache-modifications.md | 2 +- {spec => docs/spec}/amp-cache-transform.md | 0 {spec => docs/spec}/amp-cors-requests.md | 0 {spec => docs/spec}/amp-css-classes.md | 0 .../spec}/amp-email-actions-and-events.md | 0 {spec => docs/spec}/amp-errors.md | 0 {spec => docs/spec}/amp-framework-hosting.md | 6 ++-- {spec => docs/spec}/amp-html-components.md | 0 {spec => docs/spec}/amp-html-format.md | 0 {spec => docs/spec}/amp-html-layout.md | 0 .../spec}/amp-html-responsive-attributes.md | 0 {spec => docs/spec}/amp-html-templates.md | 0 .../spec}/amp-iframe-origin-policy.md | 0 {spec => docs/spec}/amp-localstorage.md | 0 .../spec}/amp-managing-user-state.md | 26 +++++++++--------- {spec => docs/spec}/amp-shadow-doc.md | 0 {spec => docs/spec}/amp-story-player.md | 2 +- {spec => docs/spec}/amp-tag-addendum.md | 0 {spec => docs/spec}/amp-var-substitutions.md | 0 {spec => docs/spec}/amp-versioning-policy.md | 0 {spec => docs/spec}/amp-video-interface.md | 0 {spec => docs/spec}/auto-lightbox.md | 0 {spec => docs/spec}/email/OWNERS | 0 .../spec}/email/amp-email-components.md | 0 {spec => docs/spec}/email/amp-email-css.md | 0 {spec => docs/spec}/email/amp-email-format.md | 0 {spec => docs/spec}/email/amp-email-html.md | 0 .../spec}/email/amp-email-structure.md | 2 +- .../spec}/img/amp-email-mime-parts.png | Bin .../img/amp-story-player-toggle-exit.gif | Bin {spec => docs/spec}/img/amp-story-player.gif | Bin {spec => docs/spec}/img/bluegradient.png | Bin .../img/contexts-with-different-storage.png | Bin {spec => docs/spec}/img/greengradient.png | Bin .../spec}/img/identifiers-for-use-cases.png | Bin .../spec}/img/lemonyellowgradient.png | Bin {spec => docs/spec}/img/lightbox-ad-3p.gif | Bin {spec => docs/spec}/img/lightbox-ad-fie.gif | Bin {spec => docs/spec}/img/lilacgradient.png | Bin .../img/link-form-identifier-forwarding.png | Bin .../link-identifier-forwarding-example-1.png | Bin .../link-identifier-forwarding-example-2.png | Bin {spec => docs/spec}/img/orangegradient.png | Bin {spec => docs/spec}/img/redgradient.png | Bin {spec => docs/spec}/img/tealgradient.png | Bin extensions/README.md | 2 +- extensions/amp-a4a/amp-a4a-format.md | 6 ++-- extensions/amp-a4a/rtc-documentation.md | 2 +- .../rtc-publisher-implementation-guide.md | 2 +- extensions/amp-access/amp-access-analytics.md | 2 +- extensions/amp-access/amp-access.md | 2 +- extensions/amp-accordion/0.1/amp-accordion.md | 4 +-- extensions/amp-accordion/amp-accordion.md | 6 ++-- extensions/amp-ad-exit/amp-ad-exit.md | 4 +-- .../doubleclick-rtc.md | 2 +- extensions/amp-ad/amp-ad.md | 2 +- extensions/amp-analytics/0.1/transport.js | 2 +- extensions/amp-analytics/amp-analytics.md | 14 +++++----- .../amp-analytics/amp-components-analytics.md | 2 +- .../amp-analytics/amp-video-analytics.md | 2 +- extensions/amp-analytics/analytics-vars.md | 2 +- .../amp-analytics/analytics-vendors-list.md | 6 ++-- .../amp-analytics/integrating-analytics.md | 4 +-- .../amp-analytics/linker-id-receiving.md | 2 +- .../amp-autocomplete/amp-autocomplete.md | 2 +- .../0.1/amp-base-carousel.md | 2 +- .../amp-base-carousel/amp-base-carousel.md | 2 +- extensions/amp-bind/amp-bind.md | 4 +-- extensions/amp-brightcove/amp-brightcove.md | 2 +- .../amp-delight-player/amp-delight-player.md | 2 +- extensions/amp-experiment/amp-experiment.md | 6 ++-- extensions/amp-fit-text/amp-fit-text.md | 2 +- extensions/amp-form/amp-form.md | 4 +-- extensions/amp-iframe/0.1/amp-iframe.js | 2 +- extensions/amp-iframe/amp-iframe.md | 2 +- .../0.1/amp-inline-gallery.md | 4 +-- .../amp-inline-gallery/amp-inline-gallery.md | 4 +-- extensions/amp-jwplayer/amp-jwplayer.md | 2 +- extensions/amp-lightbox/0.1/amp-lightbox.md | 8 +++--- extensions/amp-lightbox/amp-lightbox.md | 2 +- extensions/amp-list/amp-list.md | 4 +-- extensions/amp-mustache/amp-mustache.md | 2 +- extensions/amp-next-page/0.1/amp-next-page.md | 2 +- extensions/amp-next-page/amp-next-page.md | 2 +- .../amp-onetap-google/amp-onetap-google.md | 2 +- extensions/amp-powr-player/amp-powr-player.md | 2 +- extensions/amp-selector/0.1/amp-selector.md | 4 +-- extensions/amp-selector/amp-selector.md | 6 ++-- extensions/amp-sidebar/0.1/amp-sidebar.md | 4 +-- .../amp-sidebar/0.2/amp-sidebar.md.draft | 4 +-- extensions/amp-skimlinks/0.1/tracking.js | 2 +- .../amp-social-share/0.1/amp-social-share.md | 2 +- .../amp-social-share/amp-social-share.md | 2 +- .../publisher-served-ads.md | 2 +- .../amp-story-player/0.1/amp-story-player.md | 4 +-- .../amp-stream-gallery/amp-stream-gallery.md | 2 +- .../amp-subscriptions/amp-subscriptions.md | 2 +- .../amp-user-notification.md | 4 +-- .../amp-video-docking/amp-video-docking.md | 2 +- .../amp-video-iframe/amp-video-iframe.md | 12 ++++---- extensions/amp-video/0.1/amp-video.md | 4 +-- extensions/amp-video/amp-video.md | 6 ++-- extensions/amp-vimeo/amp-vimeo.md | 2 +- src/3p-frame.js | 2 +- src/amp-story-player/README.md | 6 ++-- src/error-reporting.js | 2 +- src/input.js | 2 +- src/purifier/sanitation.js | 4 +-- src/service/url-replacements-impl.js | 2 +- src/service/viewport/viewport-impl.js | 2 +- .../e2e/amphtml-ads/carousel-ad.a4a.html | 2 +- .../e2e/amphtml-ads/lightbox-ad.a4a.html | 2 +- .../e2e/amphtml-ads/slides-ad.a4a.html | 2 +- test/manual/amp-carousel-scroll-test.amp.html | 2 +- test/manual/amp-slidescroll.amp.html | 2 +- test/manual/gallery.amp.html | 2 +- .../feature_tests/mandatory_dimensions.html | 2 +- .../feature_tests/mandatory_dimensions.out | 2 +- .../testdata/feature_tests/spec_example.html | 2 +- .../testdata/feature_tests/spec_example.out | 2 +- validator/validator.pb.go | 2 +- validator/validator.proto | 2 +- 146 files changed, 175 insertions(+), 175 deletions(-) rename {spec => docs/spec}/amp-3p-naming.md (95%) rename {spec => docs/spec}/amp-3p-video.md (100%) rename {spec => docs/spec}/amp-actions-and-events.md (99%) rename {spec => docs/spec}/amp-boilerplate.md (100%) rename {spec => docs/spec}/amp-cache-debugging.md (96%) rename {spec => docs/spec}/amp-cache-guidelines.md (96%) rename {spec => docs/spec}/amp-cache-modifications.everything.amp.html (100%) rename {spec => docs/spec}/amp-cache-modifications.everything.cache.html (100%) rename {spec => docs/spec}/amp-cache-modifications.md (99%) rename {spec => docs/spec}/amp-cache-transform.md (100%) rename {spec => docs/spec}/amp-cors-requests.md (100%) rename {spec => docs/spec}/amp-css-classes.md (100%) rename {spec => docs/spec}/amp-email-actions-and-events.md (100%) rename {spec => docs/spec}/amp-errors.md (100%) rename {spec => docs/spec}/amp-framework-hosting.md (98%) rename {spec => docs/spec}/amp-html-components.md (100%) rename {spec => docs/spec}/amp-html-format.md (100%) rename {spec => docs/spec}/amp-html-layout.md (100%) rename {spec => docs/spec}/amp-html-responsive-attributes.md (100%) rename {spec => docs/spec}/amp-html-templates.md (100%) rename {spec => docs/spec}/amp-iframe-origin-policy.md (100%) rename {spec => docs/spec}/amp-localstorage.md (100%) rename {spec => docs/spec}/amp-managing-user-state.md (95%) rename {spec => docs/spec}/amp-shadow-doc.md (100%) rename {spec => docs/spec}/amp-story-player.md (99%) rename {spec => docs/spec}/amp-tag-addendum.md (100%) rename {spec => docs/spec}/amp-var-substitutions.md (100%) rename {spec => docs/spec}/amp-versioning-policy.md (100%) rename {spec => docs/spec}/amp-video-interface.md (100%) rename {spec => docs/spec}/auto-lightbox.md (100%) rename {spec => docs/spec}/email/OWNERS (100%) rename {spec => docs/spec}/email/amp-email-components.md (100%) rename {spec => docs/spec}/email/amp-email-css.md (100%) rename {spec => docs/spec}/email/amp-email-format.md (100%) rename {spec => docs/spec}/email/amp-email-html.md (100%) rename {spec => docs/spec}/email/amp-email-structure.md (97%) rename {spec => docs/spec}/img/amp-email-mime-parts.png (100%) rename {spec => docs/spec}/img/amp-story-player-toggle-exit.gif (100%) rename {spec => docs/spec}/img/amp-story-player.gif (100%) rename {spec => docs/spec}/img/bluegradient.png (100%) rename {spec => docs/spec}/img/contexts-with-different-storage.png (100%) rename {spec => docs/spec}/img/greengradient.png (100%) rename {spec => docs/spec}/img/identifiers-for-use-cases.png (100%) rename {spec => docs/spec}/img/lemonyellowgradient.png (100%) rename {spec => docs/spec}/img/lightbox-ad-3p.gif (100%) rename {spec => docs/spec}/img/lightbox-ad-fie.gif (100%) rename {spec => docs/spec}/img/lilacgradient.png (100%) rename {spec => docs/spec}/img/link-form-identifier-forwarding.png (100%) rename {spec => docs/spec}/img/link-identifier-forwarding-example-1.png (100%) rename {spec => docs/spec}/img/link-identifier-forwarding-example-2.png (100%) rename {spec => docs/spec}/img/orangegradient.png (100%) rename {spec => docs/spec}/img/redgradient.png (100%) rename {spec => docs/spec}/img/tealgradient.png (100%) diff --git a/.github/ISSUE_TEMPLATE/intent-to-deprecate--i2d-.md b/.github/ISSUE_TEMPLATE/intent-to-deprecate--i2d-.md index 572aa96a60fb..a12811f09cb2 100644 --- a/.github/ISSUE_TEMPLATE/intent-to-deprecate--i2d-.md +++ b/.github/ISSUE_TEMPLATE/intent-to-deprecate--i2d-.md @@ -10,7 +10,7 @@ assignees: '' diff --git a/.github/ISSUE_TEMPLATE/intent-to-remove--i2r-.md b/.github/ISSUE_TEMPLATE/intent-to-remove--i2r-.md index ca4686f86579..ad9bbf4103d9 100644 --- a/.github/ISSUE_TEMPLATE/intent-to-remove--i2r-.md +++ b/.github/ISSUE_TEMPLATE/intent-to-remove--i2r-.md @@ -10,7 +10,7 @@ assignees: '' diff --git a/3p/README.md b/3p/README.md index a8a51236aa3c..56047f6fe704 100644 --- a/3p/README.md +++ b/3p/README.md @@ -17,7 +17,7 @@ Examples: Youtube, Vimeo videos; Tweets, Instagrams; comment systems; polls; qui - Avoid client side rendering of iframe content. - If your use of iframes is for style isolation, consider that AMP might provide an iframe-free alternative. - If you can make it not-iframe-based that is much better. (See e.g. the pinterest embed). We will always ask to do this first. E.g. adding a CORS endpoint to your server might make this possible. -- Must play well within [AMP's sizing framework](https://github.com/ampproject/amphtml/blob/main/spec/amp-html-layout.md). +- Must play well within [AMP's sizing framework](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-html-layout.md). - All JS on container page must be open source and bundled with AMP. - JavaScript loaded into iframe should be reasonable with respect to functionality. - Use the `sandbox` attribute on iframe if possible. @@ -28,7 +28,7 @@ Examples: Youtube, Vimeo videos; Tweets, Instagrams; comment systems; polls; qui - We welcome pull requests by all ad networks for inclusion into AMP. - All ads and all sub resources must be served from HTTPS. -- Must play well within [AMP's sizing framework](https://github.com/ampproject/amphtml/blob/main/spec/amp-html-layout.md). +- Must play well within [AMP's sizing framework](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-html-layout.md). - For display ads support, always implement amp-ad and instruct your client to use your amp-ad implementation instead of using amp-iframe. Althought amp-iframe will render the ad, ad clicks will break and viewability information is not available. - Providing an optional image only zero-iframe embed is appreciated. - Support viewability and other metrics/instrumentation as supplied by AMP (via postMessage API) diff --git a/ads/README.md b/ads/README.md index 570465162d19..e6597dd4c67f 100644 --- a/ads/README.md +++ b/ads/README.md @@ -89,7 +89,7 @@ The AMP runtime provides the following information to the ad:
window.context.sourceUrl
-
Contains the source URL of the original AMP document. See details here.
+
Contains the source URL of the original AMP document. See details here.
window.context.startTime
Contains the time at which processing of the amp-ad element started.
diff --git a/ads/google/a4a/docs/Network-Impl-Guide.md b/ads/google/a4a/docs/Network-Impl-Guide.md index 4d62034432a8..16f7d351e0d4 100644 --- a/ads/google/a4a/docs/Network-Impl-Guide.md +++ b/ads/google/a4a/docs/Network-Impl-Guide.md @@ -117,7 +117,7 @@ is allowed by including the following headers in the response: custom headers are not included, they will be dropped by the browser. -For details on CORS verification in AMP context, see [Verify CORS requests](https://github.com/ampproject/amphtml/blob/main/spec/amp-cors-requests.md#verify-cors-header). +For details on CORS verification in AMP context, see [Verify CORS requests](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-cors-requests.md#verify-cors-header). ### Creating an AMPHTML ad extension implementation diff --git a/ads/vendors/custom.md b/ads/vendors/custom.md index dac7e807c32f..2c9e7157d24b 100644 --- a/ads/vendors/custom.md +++ b/ads/vendors/custom.md @@ -222,7 +222,7 @@ If no slot was specified, the server returns a single template rather than an ar } ``` -The ad server must enforce [AMP CORS](https://github.com/ampproject/amphtml/blob/main/spec/amp-cors-requests.md#cors-security-in-amp). +The ad server must enforce [AMP CORS](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-cors-requests.md#cors-security-in-amp). Here is an example set of the relevant response headers: ```html diff --git a/build-system/tasks/check-video-interface-list.js b/build-system/tasks/check-video-interface-list.js index 7ce07d37d6eb..8e5fb1d77990 100644 --- a/build-system/tasks/check-video-interface-list.js +++ b/build-system/tasks/check-video-interface-list.js @@ -19,7 +19,7 @@ const {readFile} = require('fs-extra'); const {writeDiffOrFail} = require('../common/diff'); /** Checks or updates 3rd party video player list on this Markdown file. */ -const filepath = 'spec/amp-video-interface.md'; +const filepath = 'docs/spec/amp-video-interface.md'; /** Excludes these extensions since they're on a separate list. */ const excludeGeneric = ['amp-video', 'amp-video-iframe']; diff --git a/build-system/tasks/create-golden-css/css/main.css b/build-system/tasks/create-golden-css/css/main.css index 8ef49ced43f9..eac098a2b6da 100644 --- a/build-system/tasks/create-golden-css/css/main.css +++ b/build-system/tasks/create-golden-css/css/main.css @@ -45,7 +45,7 @@ html.i-amphtml-fie { /** * Margin:0 is currently needed for iOS viewer embeds. * See: - * https://github.com/ampproject/amphtml/blob/main/spec/amp-html-layout.md + * https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-html-layout.md */ body { margin: 0 !important; diff --git a/builtins/amp-img/amp-img.md b/builtins/amp-img/amp-img.md index 940bf09b63b8..aa2bcd71e918 100644 --- a/builtins/amp-img/amp-img.md +++ b/builtins/amp-img/amp-img.md @@ -45,7 +45,7 @@ the `layout` attribute. [tip type="read-on"] Learn more about layouts in the -[AMP HTML Layout System](../../spec/amp-html-layout.md) +[AMP HTML Layout System](../../docs/spec/amp-html-layout.md) spec and [Supported Layouts](https://amp.dev/documentation/guides-and-tutorials/develop/style_and_layout/control_layout.html#the-layout-attribute). diff --git a/builtins/amp-pixel/amp-pixel.md b/builtins/amp-pixel/amp-pixel.md index 969034ea912c..d8def8014b9b 100644 --- a/builtins/amp-pixel/amp-pixel.md +++ b/builtins/amp-pixel/amp-pixel.md @@ -60,7 +60,7 @@ When processing AMP URLs in the referrer header of analytics requests, strip out ### Substitutions The `amp-pixel` allows all standard URL variable substitutions. -See the [Substitutions Guide](../../spec/amp-var-substitutions.md) for more information. +See the [Substitutions Guide](../../docs/spec/amp-var-substitutions.md) for more information. In the following example, a request might be made to something like `https://foo.com/pixel?0.8390278471201` where the RANDOM value is randomly generated upon each impression. diff --git a/css/ampdoc.css b/css/ampdoc.css index 819c7ecba03d..9b4dbe7b195a 100644 --- a/css/ampdoc.css +++ b/css/ampdoc.css @@ -44,7 +44,7 @@ html:not([amp4ads]) body { /** * Margin:0 is currently needed for iOS viewer embeds. * See: - * https://github.com/ampproject/amphtml/blob/main/spec/amp-html-layout.md + * https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-html-layout.md */ html:not([amp4ads]) body { margin: 0 !important; diff --git a/docs/building-a-bento-amp-extension.md b/docs/building-a-bento-amp-extension.md index 14dbc25e9616..9ec85cede7c0 100644 --- a/docs/building-a-bento-amp-extension.md +++ b/docs/building-a-bento-amp-extension.md @@ -59,7 +59,7 @@ This generates CSS used by the AMP element ``, and JSS used by t All Bento AMP component extensions have their tag names prefixed with `amp-`. Make sure to choose an accurate and clear name for your extension. -Extensions that embed a third-party service must follow the [guidelines for naming a third-party component](../spec/amp-3p-naming.md). +Extensions that embed a third-party service must follow the [guidelines for naming a third-party component](../docs/spec/amp-3p-naming.md). ## Directory structure @@ -339,7 +339,7 @@ AmpMyElement['shadowCss'] = CSS; ## Actions and events AMP provides a framework for [elements to fire their own -events](https://github.com/ampproject/amphtml/blob/main/spec/amp-actions-and-events.md) +events](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-actions-and-events.md) to allow users of that element to listen and react to the events. For example, the `amp-base-carousel` extension fires a `slideChange` event. This allow publishers to listen to that event and react to it, for example, by updating an `amp-selector` state to match the current slide shown. @@ -382,7 +382,7 @@ this.registerApiAction('close', (api) => api.close()); Your element can choose to override the default `activate` method inherited from BaseElement. For example `amp-lightbox` overrides `activate` to define the `open` default case. -You must document your element's actions and events in its own reference documentation and in [`AMP Actions and Events`](https://github.com/ampproject/amphtml/blob/main/spec/amp-actions-and-events.md). +You must document your element's actions and events in its own reference documentation and in [`AMP Actions and Events`](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-actions-and-events.md). ## Allowing proper validation @@ -409,9 +409,9 @@ AMP defines different layouts that elements can choose whether or not to support. Your element needs to announce which layouts it supports through overriding the `isLayoutSupported(layout)` callback and returning true if the element supports that layout. [Read more about AMP Layout -System](https://github.com/ampproject/amphtml/blob/main/spec/amp-html-layout.md) +System](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-html-layout.md) and [Layout -Types](https://github.com/ampproject/amphtml/blob/main/spec/amp-html-layout.md#layout). +Types](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-html-layout.md#layout). ### What layout should your element support? diff --git a/docs/building-an-amp-extension.md b/docs/building-an-amp-extension.md index c03417e00252..df971c204f58 100644 --- a/docs/building-an-amp-extension.md +++ b/docs/building-an-amp-extension.md @@ -54,7 +54,7 @@ All AMP extensions (and built-in elements) have their tag names prefixed with `amp-`. Make sure to choose an accurate and clear name for your extension. -Extensions that embed a third-party service must follow the [guidelines for naming a third-party component](../spec/amp-3p-naming.md). +Extensions that embed a third-party service must follow the [guidelines for naming a third-party component](../docs/spec/amp-3p-naming.md). ## Directory structure @@ -183,7 +183,7 @@ AMP.extension('amp-my-element', '0.1', (AMP) => { create a lightweight placeholder. This gets called only if the element doesn't already have a publisher-provided placeholder (through [the placeholder - attribute](https://github.com/ampproject/amphtml/blob/main/spec/amp-html-layout.md#placeholder)). + attribute](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-html-layout.md#placeholder)). - **Usage**: Create placeholder DOM and return it. For example, amp-instagram uses this to create a placeholder dynamically by creating an amp-img placeholder instead of loading the iframe, leaving the iframe @@ -304,7 +304,7 @@ AMP.extension('amp-carousel', '0.1', (AMP) => { ## Actions and events AMP provides a framework for [elements to fire their own -events](https://github.com/ampproject/amphtml/blob/main/spec/amp-actions-and-events.md) +events](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-actions-and-events.md) to allow users of that element to listen and react to the events. For example, amp-form extension fires a few events on <form> elements like `submit-success`. This allow publishers to listen to that event @@ -446,7 +446,7 @@ placeholder for itself (in case a placeholder wasn't provided by the developer/publisher who is using your element). This allows elements to display content as fast as possible and allow prerendering that placeholder. Learn [more about placeholder -elements](https://github.com/ampproject/amphtml/blob/main/spec/amp-html-layout.md#placeholder). +elements](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-html-layout.md#placeholder). NOTE: Make sure not to request external resources in the pre-render phase. Requests to the publisher's origin itself are OK. If in doubt, @@ -599,9 +599,9 @@ AMP defines different layouts that elements can choose whether or not to support Your element needs to announce which layouts it supports through overriding the `isLayoutSupported(layout)` callback and returning true if the element supports that layout. [Read more about AMP Layout -System](https://github.com/ampproject/amphtml/blob/main/spec/amp-html-layout.md) +System](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-html-layout.md) and [Layout -Types](https://github.com/ampproject/amphtml/blob/main/spec/amp-html-layout.md#layout). +Types](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-html-layout.md#layout). ### What layout should your element support? diff --git a/docs/component-validator-rules.md b/docs/component-validator-rules.md index 1c93a2ccf28f..4c9f040eb4f7 100644 --- a/docs/component-validator-rules.md +++ b/docs/component-validator-rules.md @@ -276,7 +276,7 @@ tags. This section adds validation rules for the various layout options available to amp tags. See -[AMP HTML Layout System](https://github.com/ampproject/amphtml/blob/main/spec/amp-html-layout.md) +[AMP HTML Layout System](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-html-layout.md) to determine which options make sense for your tag. ### Attribute Validation Options diff --git a/docs/contributing-code.md b/docs/contributing-code.md index 7afe5b387ec1..13d6c510361f 100644 --- a/docs/contributing-code.md +++ b/docs/contributing-code.md @@ -26,9 +26,9 @@ If your run into any issues finding a Reviewer/Owner or have any other questions Significant changes (e.g. new components or significant changes to behavior) require consultation with and approval from knowledgeable members of the community. -**If you are making a change to existing behavior, familiarize yourself with AMP's [policy on breaking changes](https://github.com/ampproject/amphtml/blob/main/spec/amp-versioning-policy.md#breaking-changes).** +**If you are making a change to existing behavior, familiarize yourself with AMP's [policy on breaking changes](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-versioning-policy.md#breaking-changes).** -**If you are deprecating/removing a feature, follow the [deprecation process](https://github.com/ampproject/amphtml/blob/main/spec/amp-versioning-policy.md#deprecations) instead of this process.** +**If you are deprecating/removing a feature, follow the [deprecation process](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-versioning-policy.md#deprecations) instead of this process.** - [ ] _Before you start coding_, [find a guide](#find-a-guide) who you can discuss your change with and who can help guide you through the process. - [ ] Agree to the [OpenJSF Contributor License Agreement (CLA)](#contributor-license-agreement). diff --git a/docs/developing.md b/docs/developing.md index 7555502fdee7..8326be2fa381 100644 --- a/docs/developing.md +++ b/docs/developing.md @@ -83,10 +83,10 @@ In particular, we try to maintain "it might not be perfect but isn't broken"-sup ## Eng docs - [Life of an AMP \*](https://docs.google.com/document/d/1WdNj3qNFDmtI--c2PqyRYrPrxSg2a-93z5iX0SzoQS0/edit#) -- [AMP Layout system](../spec/amp-html-layout.md) +- [AMP Layout system](../docs/spec/amp-html-layout.md) - [Building an AMP Extension](building-an-amp-extension.md) -We also recommend scanning the [spec](../spec/). The non-element part should help understand some of the design aspects. +We also recommend scanning the [spec](../docs/spec/). The non-element part should help understand some of the design aspects. ## Builds and releases diff --git a/spec/amp-3p-naming.md b/docs/spec/amp-3p-naming.md similarity index 95% rename from spec/amp-3p-naming.md rename to docs/spec/amp-3p-naming.md index f281b0201616..52a91ed27f99 100644 --- a/spec/amp-3p-naming.md +++ b/docs/spec/amp-3p-naming.md @@ -51,4 +51,4 @@ The URL that these components embed is interchangeable, since their src attribut ### 2 Why is `` not suffixed like ``? -Several media player components names lack the -player prefix, like `` and all those the apply in the [video player list](https://github.com/ampproject/amphtml/blob/main/spec/amp-video-interface.md). These were historically created before this guideline. +Several media player components names lack the -player prefix, like `` and all those the apply in the [video player list](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-video-interface.md). These were historically created before this guideline. diff --git a/spec/amp-3p-video.md b/docs/spec/amp-3p-video.md similarity index 100% rename from spec/amp-3p-video.md rename to docs/spec/amp-3p-video.md diff --git a/spec/amp-actions-and-events.md b/docs/spec/amp-actions-and-events.md similarity index 99% rename from spec/amp-actions-and-events.md rename to docs/spec/amp-actions-and-events.md index 61dc3e24b062..85e6f95ee137 100644 --- a/spec/amp-actions-and-events.md +++ b/docs/spec/amp-actions-and-events.md @@ -304,7 +304,7 @@ event.selectedOptions ### amp-video and other Video Elements -The events below are dispatched by `amp-video`, `amp-video-iframe` and [3rd party video players](https://github.com/ampproject/amphtml/blob/main/spec/amp-video-interface.md) like `amp-youtube`. +The events below are dispatched by `amp-video`, `amp-video-iframe` and [3rd party video players](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-video-interface.md) like `amp-youtube`. @@ -649,7 +649,7 @@ event.response ### amp-video and other Video Elements -The actions below are supported in `amp-video`, `amp-video-iframe` and [3rd party video players](https://github.com/ampproject/amphtml/blob/main/spec/amp-video-interface.md) like `amp-youtube`. +The actions below are supported in `amp-video`, `amp-video-iframe` and [3rd party video players](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-video-interface.md) like `amp-youtube`.
@@ -712,7 +712,7 @@ actions that apply to the whole document. diff --git a/spec/amp-boilerplate.md b/docs/spec/amp-boilerplate.md similarity index 100% rename from spec/amp-boilerplate.md rename to docs/spec/amp-boilerplate.md diff --git a/spec/amp-cache-debugging.md b/docs/spec/amp-cache-debugging.md similarity index 96% rename from spec/amp-cache-debugging.md rename to docs/spec/amp-cache-debugging.md index 620aeacf35d2..32e4c3ea844d 100644 --- a/spec/amp-cache-debugging.md +++ b/docs/spec/amp-cache-debugging.md @@ -41,7 +41,7 @@ If you still have a problem after following these steps, check the table below. - + diff --git a/spec/amp-cache-guidelines.md b/docs/spec/amp-cache-guidelines.md similarity index 96% rename from spec/amp-cache-guidelines.md rename to docs/spec/amp-cache-guidelines.md index b40615c65785..9cb7aa61ea2e 100644 --- a/spec/amp-cache-guidelines.md +++ b/docs/spec/amp-cache-guidelines.md @@ -14,7 +14,7 @@ AMP is an open ecosystem and actively encourages the development of more AMP Cac ## Guidelines: Core -1. An AMP Cache only serves [valid AMP input documents](https://github.com/ampproject/amphtml/blob/main/spec/amp-html-format.md). +1. An AMP Cache only serves [valid AMP input documents](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-html-format.md). 2. It participates in the [AMP validator release cycle](https://github.com/ampproject/amphtml/tree/main/validator). @@ -60,7 +60,7 @@ AMP is an open ecosystem and actively encourages the development of more AMP Cac 1. The cache is allowed to serve stale content independent of HTTP caching headers. It must make reasonable efforts to keep the cache contents fresh and must revalidate content after serving stale responses. -15. Follows [AMP cache modifications best practices](../spec/amp-cache-modifications.md). +15. Follows [AMP cache modifications best practices](../docs/spec/amp-cache-modifications.md). ## Guidelines: Crawling @@ -99,7 +99,7 @@ For resources (i.e., HTML, images, fonts) that are larger than 12 MB, you may no ## Guidelines: Adding a new cache to the AMP ecosystem - Add the details of your cache to [caches.json](../build-system/global-configs/caches.json). - - Some tools use the deployed version of this file () to automatically generate appropriate CORS headers as described at [CORS Security in AMP Guidelines](https://github.com/ampproject/amphtml/blob/main/spec/amp-cors-requests.md#cors-security-in-amp). + - Some tools use the deployed version of this file () to automatically generate appropriate CORS headers as described at [CORS Security in AMP Guidelines](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-cors-requests.md#cors-security-in-amp). - Handle dynamically generated components: - [``](../extensions/amp-geo/amp-geo.md) — at delivery time, the string `{{AMP_ISO_COUNTRY_HOTPATCH}}` in [`amp-geo.js`](../extensions/amp-geo/0.1/amp-geo.js) is replaced by a string consisting of the user's ISO country code followed by exactly 26 spaces (to avoid breaking map files). diff --git a/spec/amp-cache-modifications.everything.amp.html b/docs/spec/amp-cache-modifications.everything.amp.html similarity index 100% rename from spec/amp-cache-modifications.everything.amp.html rename to docs/spec/amp-cache-modifications.everything.amp.html diff --git a/spec/amp-cache-modifications.everything.cache.html b/docs/spec/amp-cache-modifications.everything.cache.html similarity index 100% rename from spec/amp-cache-modifications.everything.cache.html rename to docs/spec/amp-cache-modifications.everything.cache.html diff --git a/spec/amp-cache-modifications.md b/docs/spec/amp-cache-modifications.md similarity index 99% rename from spec/amp-cache-modifications.md rename to docs/spec/amp-cache-modifications.md index 63881e33de75..bc2e5b2fe709 100644 --- a/spec/amp-cache-modifications.md +++ b/docs/spec/amp-cache-modifications.md @@ -2,7 +2,7 @@ These are guidelines for what AMP cache implementations should look like. Some items are required for overall security of the platform while others are suggestions for performance improvements. All modifications are made to both AMP and AMP4ADS documents except where noted. -For example, given a [recent version](https://github.com/ampproject/amphtml/tree/main/spec/amp-cache-modifications.everything.amp.html) of [everything.amp.html](https://github.com/ampproject/amphtml/blob/main/examples/everything.amp.html), the output after modifications will be [this version](https://github.com/ampproject/amphtml/tree/main/spec/amp-cache-modifications.everything.cache.html). +For example, given a [recent version](https://github.com/ampproject/amphtml/tree/main/docs/spec/amp-cache-modifications.everything.amp.html) of [everything.amp.html](https://github.com/ampproject/amphtml/blob/main/examples/everything.amp.html), the output after modifications will be [this version](https://github.com/ampproject/amphtml/tree/main/docs/spec/amp-cache-modifications.everything.cache.html). ### HTML Sanitization diff --git a/spec/amp-cache-transform.md b/docs/spec/amp-cache-transform.md similarity index 100% rename from spec/amp-cache-transform.md rename to docs/spec/amp-cache-transform.md diff --git a/spec/amp-cors-requests.md b/docs/spec/amp-cors-requests.md similarity index 100% rename from spec/amp-cors-requests.md rename to docs/spec/amp-cors-requests.md diff --git a/spec/amp-css-classes.md b/docs/spec/amp-css-classes.md similarity index 100% rename from spec/amp-css-classes.md rename to docs/spec/amp-css-classes.md diff --git a/spec/amp-email-actions-and-events.md b/docs/spec/amp-email-actions-and-events.md similarity index 100% rename from spec/amp-email-actions-and-events.md rename to docs/spec/amp-email-actions-and-events.md diff --git a/spec/amp-errors.md b/docs/spec/amp-errors.md similarity index 100% rename from spec/amp-errors.md rename to docs/spec/amp-errors.md diff --git a/spec/amp-framework-hosting.md b/docs/spec/amp-framework-hosting.md similarity index 98% rename from spec/amp-framework-hosting.md rename to docs/spec/amp-framework-hosting.md index d4dfabd21f5f..70bc2f2a030f 100644 --- a/spec/amp-framework-hosting.md +++ b/docs/spec/amp-framework-hosting.md @@ -95,7 +95,7 @@ If you have advanced hosting capabilities or would like to manually assign a ver ### Option 3: Manually copy the framework from cdn.ampproject.org -The AMP framework can be copied from `cdn.ampproject.org`. The latest weekly release is always served from the root of `cdn.ampproject.org`. All [non-deprecated releases](https://github.com/ampproject/amphtml/blob/main/spec/amp-versioning-policy.md#version-deprecations) can be found in versioned URLs: `cdn.ampproject.org/rtv/`, where `` is the runtime version. +The AMP framework can be copied from `cdn.ampproject.org`. The latest weekly release is always served from the root of `cdn.ampproject.org`. All [non-deprecated releases](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-versioning-policy.md#version-deprecations) can be found in versioned URLs: `cdn.ampproject.org/rtv/`, where `` is the runtime version. Note: The AMP Project is looking into options for packaging releases ([#27726](https://github.com/ampproject/amphtml/issues/27726)). @@ -257,7 +257,7 @@ If location detection and file modification at time of delivery are not possible The API must meet the following requirements: -- Satisfy [CORS security in AMP](https://github.com/ampproject/amphtml/blob/main/spec/amp-cors-requests.md) +- Satisfy [CORS security in AMP](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-cors-requests.md) - Be secure (HTTPS) - Return `application/json` content conforming to the following schema: ``` @@ -310,7 +310,7 @@ There are trade-offs in accuracy and performance when you set the client cache t In addition to following [TLS best practices](https://infosec.mozilla.org/guidelines/web_security), consider the following headers when hosting the AMP framework: - `content-security-policy`: If your pages implement [AMP's CSP](https://amp.dev/documentation/guides-and-tutorials/optimize-and-measure/secure-pages/), apply a matching content security policy to your hosted framework responses. Inspect the headers on `https://cdn.ampproject.org/v0.js` for a base policy that should be expanded to include resources served from your host. -- `access-control-allow-origin`: Some runtime components are fetched via XHR. If your AMP pages will be served from a different host than your framework, be sure to include CORS headers (see also [CORS Requests in AMP](https://github.com/ampproject/amphtml/blob/main/spec/amp-cors-requests.md)). +- `access-control-allow-origin`: Some runtime components are fetched via XHR. If your AMP pages will be served from a different host than your framework, be sure to include CORS headers (see also [CORS Requests in AMP](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-cors-requests.md)). - `content-type`: There are a few resources served without file extensions, or with extensions that may not be recognized by all web servers. In addition to [common types](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types), you may want to include special handling for the following: - `/rtv/metadata` - `application/json` diff --git a/spec/amp-html-components.md b/docs/spec/amp-html-components.md similarity index 100% rename from spec/amp-html-components.md rename to docs/spec/amp-html-components.md diff --git a/spec/amp-html-format.md b/docs/spec/amp-html-format.md similarity index 100% rename from spec/amp-html-format.md rename to docs/spec/amp-html-format.md diff --git a/spec/amp-html-layout.md b/docs/spec/amp-html-layout.md similarity index 100% rename from spec/amp-html-layout.md rename to docs/spec/amp-html-layout.md diff --git a/spec/amp-html-responsive-attributes.md b/docs/spec/amp-html-responsive-attributes.md similarity index 100% rename from spec/amp-html-responsive-attributes.md rename to docs/spec/amp-html-responsive-attributes.md diff --git a/spec/amp-html-templates.md b/docs/spec/amp-html-templates.md similarity index 100% rename from spec/amp-html-templates.md rename to docs/spec/amp-html-templates.md diff --git a/spec/amp-iframe-origin-policy.md b/docs/spec/amp-iframe-origin-policy.md similarity index 100% rename from spec/amp-iframe-origin-policy.md rename to docs/spec/amp-iframe-origin-policy.md diff --git a/spec/amp-localstorage.md b/docs/spec/amp-localstorage.md similarity index 100% rename from spec/amp-localstorage.md rename to docs/spec/amp-localstorage.md diff --git a/spec/amp-managing-user-state.md b/docs/spec/amp-managing-user-state.md similarity index 95% rename from spec/amp-managing-user-state.md rename to docs/spec/amp-managing-user-state.md index 68af65a70ae5..a85900b311a9 100644 --- a/spec/amp-managing-user-state.md +++ b/docs/spec/amp-managing-user-state.md @@ -111,7 +111,7 @@ Just like the AMP cache case, expect the domain for an AMP viewer to also be dif ### Multiple contexts means multiple state management -Publishers must be prepared to manage the user state for each display context separately. AMP’s [Client ID](https://github.com/ampproject/amphtml/blob/main/spec/amp-var-substitutions.md#client-id) feature, which takes advantage of cookies or local storage to persist state, provides the necessary support for AMP pages to have a stable and pseudonymous identifier for the user. From an implementation point of view, either cookies or local storage are used, and AMP makes the decision which to use depending on the display context. This choice is influenced by the technical feasibility of managing this state scaled to hundreds or thousands of publishers. +Publishers must be prepared to manage the user state for each display context separately. AMP’s [Client ID](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-var-substitutions.md#client-id) feature, which takes advantage of cookies or local storage to persist state, provides the necessary support for AMP pages to have a stable and pseudonymous identifier for the user. From an implementation point of view, either cookies or local storage are used, and AMP makes the decision which to use depending on the display context. This choice is influenced by the technical feasibility of managing this state scaled to hundreds or thousands of publishers. However, publishers of AMP pages can easily end up (unwittingly) designing user journeys that involve multiple contexts. Let’s revisit our earlier look at the shopping cart use case and add some more detail to it to make a full **user story**: @@ -121,9 +121,9 @@ In this scenario, the user receives a consistent shopping cart experience even t **To enable this and any experience involving user state, all contexts the user traverses must share their individually-maintained state with each other.** “Perfect!”, you say, with the idea to share the cookie values with user identifiers across these contextual boundaries. One wrinkle: even though each of these contexts displays content controlled by the same publisher, they each see the other as a third-party because each context lives on different domains. - + @@ -147,9 +147,9 @@ After laying the foundation, we then visit a topic with a narrower range of use In walking through the technical guidance below, let's assume that you’ll be binding **user state** to a stable **identifier** that represents the user. For example, the identifier might look like `n34ic982n2386n30`. On the server side you then associate `n34ic982n2386n30` to any set of user state information, such as shopping cart content, a list of previously read articles, or other data depending on the use case. - + @@ -245,7 +245,7 @@ On AMP pages, construct an amp-analytics ping containing the Client ID: Take note of the fact that the parameter passed into the Client ID substitution, `${clientId(uid)`, is `uid`. This was a deliberate choice that matches the same cookie name used on the publisher origin as described in [Task 1](#task1). For the most seamless integration, you should apply the same technique. -Concerning the rest of the amp-analytics implementation, see the documentation for [amp-analytics configuration](https://amp.dev/documentation/guides-and-tutorials/optimize-measure/configure-analytics/) for more detail on how to set up amp-analytics requests or to modify those of your analytics vendor. The ping can be further modified to transport additional data that you either directly define or by taking advantage of other [AMP substitutions](https://github.com/ampproject/amphtml/blob/main/spec/amp-var-substitutions.md). +Concerning the rest of the amp-analytics implementation, see the documentation for [amp-analytics configuration](https://amp.dev/documentation/guides-and-tutorials/optimize-measure/configure-analytics/) for more detail on how to set up amp-analytics requests or to modify those of your analytics vendor. The ping can be further modified to transport additional data that you either directly define or by taking advantage of other [AMP substitutions](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-var-substitutions.md). > **Good to know:** > @@ -380,9 +380,9 @@ In general, when reading and writing third-party cookies is disallowed, there wi In this task, we’ll cover an additional optimization that helps when the user is navigating across contexts from one page to another page either **via linking or form submissions**. In these situations, and with the implementation work described below, it is possible to set up a fully effective scheme for managing user state across contexts. - + @@ -436,9 +436,9 @@ By taking these steps, the Client ID is available to the target server and/or as https://example.com/step2.html?ref_id=$amp_client_id ``` - + @@ -463,9 +463,9 @@ To process during redirect, handle the request on the server and extract the rel To process on the landing page, the approach will vary depending on whether that page is an AMP page or a non-AMP page. - + @@ -605,7 +605,7 @@ You want to ensure that you process only instances of `$amp_client_id` and avoid On a non-AMP page, check `document.referrer` directly on the client side or pass the value on as part of the analytics ping to be able to validate on the server side. If the referrer value is one you can trust, then you can accept and process values that originated from the URL of the landing page, such as `orig_user_id` in the example above. -On an AMP page, use the [Document Referrer](https://github.com/ampproject/amphtml/blob/main/spec/amp-var-substitutions.md#document-referrer) substitution variable to pass along the referrer value as part of the analytics ping. Server side processing is the only available option. To illustrate, here’s an analytics ping that the landing page can send that contains (1) the Client ID value of the current page, (2) a value passed via URL that we’ve set up to be the Client ID value in the referring page, and (3) the referrer information itself to validate the value of (2): `https://analytics.example.com/ping?type=pageview&orig_user_id=${queryParam(ref_id)}&user_id=${clientId(uid)}&referrer=${documentReferrer}` +On an AMP page, use the [Document Referrer](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-var-substitutions.md#document-referrer) substitution variable to pass along the referrer value as part of the analytics ping. Server side processing is the only available option. To illustrate, here’s an analytics ping that the landing page can send that contains (1) the Client ID value of the current page, (2) a value passed via URL that we’ve set up to be the Client ID value in the referring page, and (3) the referrer information itself to validate the value of (2): `https://analytics.example.com/ping?type=pageview&orig_user_id=${queryParam(ref_id)}&user_id=${clientId(uid)}&referrer=${documentReferrer}` If you cannot trust the referrer, then reject any values provided via URL parameters and do not use them. diff --git a/spec/amp-shadow-doc.md b/docs/spec/amp-shadow-doc.md similarity index 100% rename from spec/amp-shadow-doc.md rename to docs/spec/amp-shadow-doc.md diff --git a/spec/amp-story-player.md b/docs/spec/amp-story-player.md similarity index 99% rename from spec/amp-story-player.md rename to docs/spec/amp-story-player.md index e0b1d979a536..1e1c4d061ae1 100644 --- a/spec/amp-story-player.md +++ b/docs/spec/amp-story-player.md @@ -28,7 +28,7 @@ limitations under the License. - +
navigateTo(url=STRING, target=STRING, opener=BOOLEAN) -

Navigates current window to given URL, to the optional specified target if given (currenly only supporting _top and _blank ). The optional opener parameter can be specified when using a target of _blank to allow the newly opened page to access window.opener. Supports standard URL substitutions.

+

Navigates current window to given URL, to the optional specified target if given (currenly only supporting _top and _blank ). The optional opener parameter can be specified when using a target of _blank to allow the newly opened page to access window.opener. Supports standard URL substitutions.

Caveat: Using normal <a> links is recommended wherever possible since AMP.navigateTo is not recognized by web crawlers.

Assets (e.g., fonts and images) do not appear The assets are served with the incorrect MIME type.Specify an acceptable MIME type.Specify an acceptable MIME type.
The AMP Cache cannot access the assets.
diff --git a/spec/amp-tag-addendum.md b/docs/spec/amp-tag-addendum.md similarity index 100% rename from spec/amp-tag-addendum.md rename to docs/spec/amp-tag-addendum.md diff --git a/spec/amp-var-substitutions.md b/docs/spec/amp-var-substitutions.md similarity index 100% rename from spec/amp-var-substitutions.md rename to docs/spec/amp-var-substitutions.md diff --git a/spec/amp-versioning-policy.md b/docs/spec/amp-versioning-policy.md similarity index 100% rename from spec/amp-versioning-policy.md rename to docs/spec/amp-versioning-policy.md diff --git a/spec/amp-video-interface.md b/docs/spec/amp-video-interface.md similarity index 100% rename from spec/amp-video-interface.md rename to docs/spec/amp-video-interface.md diff --git a/spec/auto-lightbox.md b/docs/spec/auto-lightbox.md similarity index 100% rename from spec/auto-lightbox.md rename to docs/spec/auto-lightbox.md diff --git a/spec/email/OWNERS b/docs/spec/email/OWNERS similarity index 100% rename from spec/email/OWNERS rename to docs/spec/email/OWNERS diff --git a/spec/email/amp-email-components.md b/docs/spec/email/amp-email-components.md similarity index 100% rename from spec/email/amp-email-components.md rename to docs/spec/email/amp-email-components.md diff --git a/spec/email/amp-email-css.md b/docs/spec/email/amp-email-css.md similarity index 100% rename from spec/email/amp-email-css.md rename to docs/spec/email/amp-email-css.md diff --git a/spec/email/amp-email-format.md b/docs/spec/email/amp-email-format.md similarity index 100% rename from spec/email/amp-email-format.md rename to docs/spec/email/amp-email-format.md diff --git a/spec/email/amp-email-html.md b/docs/spec/email/amp-email-html.md similarity index 100% rename from spec/email/amp-email-html.md rename to docs/spec/email/amp-email-html.md diff --git a/spec/email/amp-email-structure.md b/docs/spec/email/amp-email-structure.md similarity index 97% rename from spec/email/amp-email-structure.md rename to docs/spec/email/amp-email-structure.md index e462fcc42461..5b0d5fc8e6af 100644 --- a/spec/email/amp-email-structure.md +++ b/docs/spec/email/amp-email-structure.md @@ -23,7 +23,7 @@ To embed AMP within an email, add a new MIME part with a content type of `text/x + src="https://github.com/ampproject/amphtml/raw/main/docs/spec/img/amp-email-mime-parts.png"> diff --git a/spec/img/amp-email-mime-parts.png b/docs/spec/img/amp-email-mime-parts.png similarity index 100% rename from spec/img/amp-email-mime-parts.png rename to docs/spec/img/amp-email-mime-parts.png diff --git a/spec/img/amp-story-player-toggle-exit.gif b/docs/spec/img/amp-story-player-toggle-exit.gif similarity index 100% rename from spec/img/amp-story-player-toggle-exit.gif rename to docs/spec/img/amp-story-player-toggle-exit.gif diff --git a/spec/img/amp-story-player.gif b/docs/spec/img/amp-story-player.gif similarity index 100% rename from spec/img/amp-story-player.gif rename to docs/spec/img/amp-story-player.gif diff --git a/spec/img/bluegradient.png b/docs/spec/img/bluegradient.png similarity index 100% rename from spec/img/bluegradient.png rename to docs/spec/img/bluegradient.png diff --git a/spec/img/contexts-with-different-storage.png b/docs/spec/img/contexts-with-different-storage.png similarity index 100% rename from spec/img/contexts-with-different-storage.png rename to docs/spec/img/contexts-with-different-storage.png diff --git a/spec/img/greengradient.png b/docs/spec/img/greengradient.png similarity index 100% rename from spec/img/greengradient.png rename to docs/spec/img/greengradient.png diff --git a/spec/img/identifiers-for-use-cases.png b/docs/spec/img/identifiers-for-use-cases.png similarity index 100% rename from spec/img/identifiers-for-use-cases.png rename to docs/spec/img/identifiers-for-use-cases.png diff --git a/spec/img/lemonyellowgradient.png b/docs/spec/img/lemonyellowgradient.png similarity index 100% rename from spec/img/lemonyellowgradient.png rename to docs/spec/img/lemonyellowgradient.png diff --git a/spec/img/lightbox-ad-3p.gif b/docs/spec/img/lightbox-ad-3p.gif similarity index 100% rename from spec/img/lightbox-ad-3p.gif rename to docs/spec/img/lightbox-ad-3p.gif diff --git a/spec/img/lightbox-ad-fie.gif b/docs/spec/img/lightbox-ad-fie.gif similarity index 100% rename from spec/img/lightbox-ad-fie.gif rename to docs/spec/img/lightbox-ad-fie.gif diff --git a/spec/img/lilacgradient.png b/docs/spec/img/lilacgradient.png similarity index 100% rename from spec/img/lilacgradient.png rename to docs/spec/img/lilacgradient.png diff --git a/spec/img/link-form-identifier-forwarding.png b/docs/spec/img/link-form-identifier-forwarding.png similarity index 100% rename from spec/img/link-form-identifier-forwarding.png rename to docs/spec/img/link-form-identifier-forwarding.png diff --git a/spec/img/link-identifier-forwarding-example-1.png b/docs/spec/img/link-identifier-forwarding-example-1.png similarity index 100% rename from spec/img/link-identifier-forwarding-example-1.png rename to docs/spec/img/link-identifier-forwarding-example-1.png diff --git a/spec/img/link-identifier-forwarding-example-2.png b/docs/spec/img/link-identifier-forwarding-example-2.png similarity index 100% rename from spec/img/link-identifier-forwarding-example-2.png rename to docs/spec/img/link-identifier-forwarding-example-2.png diff --git a/spec/img/orangegradient.png b/docs/spec/img/orangegradient.png similarity index 100% rename from spec/img/orangegradient.png rename to docs/spec/img/orangegradient.png diff --git a/spec/img/redgradient.png b/docs/spec/img/redgradient.png similarity index 100% rename from spec/img/redgradient.png rename to docs/spec/img/redgradient.png diff --git a/spec/img/tealgradient.png b/docs/spec/img/tealgradient.png similarity index 100% rename from spec/img/tealgradient.png rename to docs/spec/img/tealgradient.png diff --git a/extensions/README.md b/extensions/README.md index 2385085a88bf..6bff748aee79 100644 --- a/extensions/README.md +++ b/extensions/README.md @@ -23,4 +23,4 @@ See the [Components](https://www.ampproject.org/docs/reference/components) list. ## AMP HTML Extended Templates -See the [AMP template spec](../spec/amp-html-templates.md) for details about supported templates. +See the [AMP template spec](../docs/spec/amp-html-templates.md) for details about supported templates. diff --git a/extensions/amp-a4a/amp-a4a-format.md b/extensions/amp-a4a/amp-a4a-format.md index d4b8a47c9086..3f41a1c40db5 100644 --- a/extensions/amp-a4a/amp-a4a-format.md +++ b/extensions/amp-a4a/amp-a4a-format.md @@ -93,7 +93,7 @@ In addition, creatives must obey the following rules: ### Boilerplate -AMPHTML ad creatives require a different, and considerably simpler, boilerplate style line than [general AMP documents do](https://github.com/ampproject/amphtml/blob/main/spec/amp-boilerplate.md): +AMPHTML ad creatives require a different, and considerably simpler, boilerplate style line than [general AMP documents do](https://github.com/ampproject/amphtml/blob/main/docs/spec/amp-boilerplate.md): ```html