Loading core/modules/ckeditor5/src/HTMLRestrictions.php +5 −2 Original line number Diff line number Diff line Loading @@ -759,8 +759,11 @@ private static function mergeAllowedElementsLevel(array $array1, array $array2): } // Make sure the order of the union array matches the order of the keys in // the arrays provided. $keys_order = array_merge($array1_keys, $array2_keys); return array_merge(array_flip($keys_order), $union); $ordered = []; foreach (array_merge($array1_keys, $array2_keys) as $key) { $ordered[$key] = $union[$key]; } return $ordered; } /** Loading core/modules/ckeditor5/tests/src/Unit/HTMLRestrictionsTest.php +7 −0 Original line number Diff line number Diff line Loading @@ -997,6 +997,13 @@ public function providerOperands(): \Generator { 'intersection' => 'a', 'union' => 'b', ]; yield 'attribute restrictions are the same: <ol type="1"> vs <ol type="1">' => [ 'a' => new HTMLRestrictions(['ol' => ['type' => ['1' => TRUE]]]), 'b' => new HTMLRestrictions(['ol' => ['type' => ['1' => TRUE]]]), 'diff' => HTMLRestrictions::emptySet(), 'intersection' => 'a', 'union' => 'a', ]; // Complex cases. yield 'attribute restrictions are different: <a hreflang="en"> vs <strong>' => [ Loading Loading
core/modules/ckeditor5/src/HTMLRestrictions.php +5 −2 Original line number Diff line number Diff line Loading @@ -759,8 +759,11 @@ private static function mergeAllowedElementsLevel(array $array1, array $array2): } // Make sure the order of the union array matches the order of the keys in // the arrays provided. $keys_order = array_merge($array1_keys, $array2_keys); return array_merge(array_flip($keys_order), $union); $ordered = []; foreach (array_merge($array1_keys, $array2_keys) as $key) { $ordered[$key] = $union[$key]; } return $ordered; } /** Loading
core/modules/ckeditor5/tests/src/Unit/HTMLRestrictionsTest.php +7 −0 Original line number Diff line number Diff line Loading @@ -997,6 +997,13 @@ public function providerOperands(): \Generator { 'intersection' => 'a', 'union' => 'b', ]; yield 'attribute restrictions are the same: <ol type="1"> vs <ol type="1">' => [ 'a' => new HTMLRestrictions(['ol' => ['type' => ['1' => TRUE]]]), 'b' => new HTMLRestrictions(['ol' => ['type' => ['1' => TRUE]]]), 'diff' => HTMLRestrictions::emptySet(), 'intersection' => 'a', 'union' => 'a', ]; // Complex cases. yield 'attribute restrictions are different: <a hreflang="en"> vs <strong>' => [ Loading