$value ) { if ( strpos( $key, $formatted_prefix ) === 0 ) { $child_attributes[ substr( $key, strlen( $formatted_prefix ) ) ] = $value; } } return $child_attributes; } /** * Extracts list items for template compatibility * * @param array $list_items * @return array */ public static function extract_list_items( array $list_items ): array { $items = array(); foreach ( $list_items as $list_item ) { $items[] = array( 'type' => 'li', 'props' => array( 'children' => array( $list_item['content'] ), ), ); } return $items; } /** * Extracts icon name for template compatibility * * @param array $icon_props * @return array */ public static function extract_icon( array $icon_props ): array { $prefix = isset( $icon_props['library'] ) ? explode( '-', $icon_props['library'] )[0] : ''; $icon_name = explode( ' ', $icon_props['value'] )[1]; $icon_name = str_replace( $prefix . '-', '', $icon_name ); return array( 'name' => $icon_name, 'value' => $icon_props['value'], ); } }