diff --git a/assets/src/block-editor/helpers/index.js b/assets/src/block-editor/helpers/index.js
index 6811e1731b4..13286b59676 100644
--- a/assets/src/block-editor/helpers/index.js
+++ b/assets/src/block-editor/helpers/index.js
@@ -66,11 +66,9 @@ const ampLayoutOptions = [
],
},
{
- // Not supported by video.
value: 'intrinsic',
label: __( 'Intrinsic', 'amp' ),
notAvailable: [
- 'core/video',
'core-embed/youtube',
'core-embed/facebook',
'core-embed/instagram',
diff --git a/bin/ci/after-wp-install.sh b/bin/ci/after-wp-install.sh
index f3a6f808923..78d021a8fdf 100755
--- a/bin/ci/after-wp-install.sh
+++ b/bin/ci/after-wp-install.sh
@@ -39,7 +39,7 @@ fi
if [[ -n $INSTALL_PWA_PLUGIN ]]; then
echo -n "Installing PWA plugin..."
wget -O "$WP_CORE_DIR/src/wp-content/plugins/pwa.zip" https://downloads.wordpress.org/plugin/pwa.zip
- unzip -d "$WP_CORE_DIR/src/wp-content/plugins/pwa/" "$WP_CORE_DIR/src/wp-content/plugins/pwa.zip"
+ unzip -d "$WP_CORE_DIR/src/wp-content/plugins/" "$WP_CORE_DIR/src/wp-content/plugins/pwa.zip"
echo "done"
fi
diff --git a/includes/sanitizers/class-amp-allowed-tags-generated.php b/includes/sanitizers/class-amp-allowed-tags-generated.php
index f28f1d56541..a21e08f35d4 100644
--- a/includes/sanitizers/class-amp-allowed-tags-generated.php
+++ b/includes/sanitizers/class-amp-allowed-tags-generated.php
@@ -15,7 +15,7 @@
*/
class AMP_Allowed_Tags_Generated {
- private static $spec_file_revision = 1095;
+ private static $spec_file_revision = 1119;
private static $minimum_validator_revision_required = 475;
private static $descendant_tag_lists = array(
@@ -555,6 +555,10 @@ class AMP_Allowed_Tags_Generated {
'vkern',
'wbr',
),
+ 'amp-story-player-allowed-descendants' => array(
+ 'a',
+ 'span',
+ ),
);
private static $allowed_tags = array(
@@ -1480,6 +1484,7 @@ class AMP_Allowed_Tags_Generated {
'',
),
),
+ 'prefetch' => array(),
'query' => array(),
'src' => array(
'value_url' => array(
@@ -4707,6 +4712,37 @@ class AMP_Allowed_Tags_Generated {
),
),
),
+ 'amp-onetap-google' => array(
+ array(
+ 'attr_spec_list' => array(
+ 'data-src' => array(
+ 'mandatory' => true,
+ 'value_url' => array(
+ 'protocol' => array(
+ 'https',
+ ),
+ ),
+ ),
+ 'media' => array(),
+ 'noloading' => array(
+ 'value' => array(
+ '',
+ ),
+ ),
+ ),
+ 'tag_spec' => array(
+ 'amp_layout' => array(
+ 'supported_layouts' => array(
+ 1,
+ ),
+ ),
+ 'requires_extension' => array(
+ 'amp-onetap-google',
+ ),
+ 'unique' => true,
+ ),
+ ),
+ ),
'amp-ooyala-player' => array(
array(
'attr_spec_list' => array(
@@ -5764,6 +5800,11 @@ class AMP_Allowed_Tags_Generated {
'amp-story-360' => array(
array(
'attr_spec_list' => array(
+ 'controls' => array(
+ 'value' => array(
+ 'gyroscope',
+ ),
+ ),
'duration' => array(
'value_regex' => '([0-9\\.]+)\\s*(s|ms)',
),
@@ -5779,6 +5820,15 @@ class AMP_Allowed_Tags_Generated {
'pitch-start' => array(
'value_regex' => '-?\\d+\\.?\\d*',
),
+ 'scene-heading' => array(
+ 'value_regex' => '-?\\d+\\.?\\d*',
+ ),
+ 'scene-pitch' => array(
+ 'value_regex' => '-?\\d+\\.?\\d*',
+ ),
+ 'scene-roll' => array(
+ 'value_regex' => '-?\\d+\\.?\\d*',
+ ),
'zoom-end' => array(
'value_regex' => '\\d+\\.?\\d*',
),
@@ -5794,12 +5844,12 @@ class AMP_Allowed_Tags_Generated {
3,
7,
1,
- 4,
),
),
'child_tags' => array(
'child_tag_name_oneof' => array(
'amp-img',
+ 'amp-video',
),
'mandatory_num_child_tags' => 1,
),
@@ -6152,21 +6202,39 @@ class AMP_Allowed_Tags_Generated {
'amp-story-interactive-results' => array(
array(
'attr_spec_list' => array(
+ 'chip-style' => array(
+ 'value' => array(
+ 'flat',
+ 'transparent',
+ ),
+ ),
'option-1-image' => array(),
'option-1-results-category' => array(
'mandatory' => true,
),
+ 'option-1-results-threshold' => array(
+ 'value_regex' => '\\d+[.\\d+]?',
+ ),
'option-1-text' => array(),
'option-2-image' => array(),
'option-2-results-category' => array(
'mandatory' => true,
),
+ 'option-2-results-threshold' => array(
+ 'value_regex' => '\\d+[.\\d+]?',
+ ),
'option-2-text' => array(),
'option-3-image' => array(),
'option-3-results-category' => array(),
+ 'option-3-results-threshold' => array(
+ 'value_regex' => '\\d+[.\\d+]?',
+ ),
'option-3-text' => array(),
'option-4-image' => array(),
'option-4-results-category' => array(),
+ 'option-4-results-threshold' => array(
+ 'value_regex' => '\\d+[.\\d+]?',
+ ),
'option-4-text' => array(),
'prompt-text' => array(),
'theme' => array(
@@ -6289,11 +6357,7 @@ class AMP_Allowed_Tags_Generated {
4,
),
),
- 'child_tags' => array(
- 'child_tag_name_oneof' => array(
- 'a',
- ),
- ),
+ 'descendant_tag_list' => 'amp-story-player-allowed-descendants',
'requires_extension' => array(
'amp-story-player',
),
@@ -6577,6 +6641,7 @@ class AMP_Allowed_Tags_Generated {
2,
3,
7,
+ 9,
1,
4,
),
@@ -6690,6 +6755,7 @@ class AMP_Allowed_Tags_Generated {
2,
3,
7,
+ 9,
1,
4,
),
@@ -9580,7 +9646,6 @@ class AMP_Allowed_Tags_Generated {
'disallowed_value_regex' => '__amp_source_origin',
'mandatory' => true,
'value_url' => array(
- 'allow_relative' => true,
'protocol' => array(
'data',
'http',
@@ -9593,6 +9658,7 @@ class AMP_Allowed_Tags_Generated {
'tag_spec' => array(
'mandatory_ancestor' => 'noscript',
'mandatory_ancestor_suggested_alternative' => 'amp-img',
+ 'spec_name' => 'noscript > img',
'spec_url' => 'https://amp.dev/documentation/components/amp-img/',
),
),
@@ -12818,7 +12884,6 @@ class AMP_Allowed_Tags_Generated {
'0.1',
),
),
- 'spec_name' => 'amp-ad-custom extension .js script',
),
),
array(
@@ -15212,6 +15277,36 @@ class AMP_Allowed_Tags_Generated {
),
),
),
+ array(
+ 'attr_spec_list' => array(
+ 'async' => array(
+ 'mandatory' => true,
+ 'value' => array(
+ '',
+ ),
+ ),
+ 'crossorigin' => array(
+ 'value' => array(
+ 'anonymous',
+ ),
+ ),
+ 'nonce' => array(),
+ 'type' => array(
+ 'value_casei' => array(
+ 'text/javascript',
+ ),
+ ),
+ ),
+ 'tag_spec' => array(
+ 'extension_spec' => array(
+ 'name' => 'amp-onetap-google',
+ 'requires_usage' => true,
+ 'version' => array(
+ '0.1',
+ ),
+ ),
+ ),
+ ),
array(
'attr_spec_list' => array(
'async' => array(
@@ -15995,7 +16090,7 @@ class AMP_Allowed_Tags_Generated {
'name' => 'amp-story-interactive',
'requires_usage' => true,
'version' => array(
- '1.0',
+ '0.1',
),
),
),
@@ -16460,7 +16555,6 @@ class AMP_Allowed_Tags_Generated {
'0.1',
),
),
- 'spec_name' => 'amp-video-docking',
),
),
array(
diff --git a/tests/php/test-tag-and-attribute-sanitizer.php b/tests/php/test-tag-and-attribute-sanitizer.php
index 8ba06476f0d..dd18b25c790 100644
--- a/tests/php/test-tag-and-attribute-sanitizer.php
+++ b/tests/php/test-tag-and-attribute-sanitizer.php
@@ -524,7 +524,7 @@ static function () {
-
+
@@ -559,6 +559,7 @@ static function () {
+
@@ -663,7 +664,7 @@ static function () {
],
'amp-video' => [
- '',
+ '',
null, // No change.
[ 'amp-video' ],
],
@@ -2318,7 +2319,7 @@ function getRemoteData() { /*...*/ }
'amp-autocomplete' => [
'