Commit 16892e07 authored by Simonas's avatar Simonas

in progress

parent 76c0e432
......@@ -16,10 +16,10 @@
- check if dev.biuro.lt, dev.biuro.lv, dev.biuro.ee works
### DB backup
- `C:\web\dev.biuro> docker exec -i mysql mysqldump -uroot -pIiIjnsLi2wR9i1kWVbVpUAzP --default-character-set=utf8 wordpress > docker/mariadb/db_003.sql`
- `C:\web\dev.biuro> docker exec -i mysql mysqldump -uroot -pIiIjnsLi2wR9i1kWVbVpUAzP --default-character-set=utf8 wordpress > docker/mariadb/db_005.sql`
### DB restore
- `C:\web\dev.biuro> docker exec -i mysql mysql -uroot -pIiIjnsLi2wR9i1kWVbVpUAzP --default-character-set=utf8 wordpress < docker/mariadb/db_002.sql`
- `C:\web\dev.biuro> docker exec -i mysql mysql -uroot -pIiIjnsLi2wR9i1kWVbVpUAzP --default-character-set=utf8 wordpress < docker/mariadb/db_004.sql`
## Development
- `C:\web\dev.biuro\wordpress>yarn (or npm install)`
......
This diff is collapsed.
{
"extends": [
"standard-preact",
"eslint:recommended"
],
"parserOptions": {
"ecmaVersion": 6,
"sourceType": "module",
"ecmaFeatures": {
"jsx": true
}
},
"extends": ["standard"],
"env": {
"browser": true,
"es6": true,
"node": true,
"mocha": true
"node": true
},
"rules": {
"no-console": 0, // disallow use of console (off by default in the node environment)
"no-unused-vars": 1, // disallow declaration of variables that are not used in the code
"indent": ["error", 4],
"semi": ["error", "always"]
}
"react/jsx-indent": [2, 4]
// "extends": [
// "standard-preact",
// "eslint:recommended"
// ],
// "parserOptions": {
// "ecmaVersion": 6,
// "sourceType": "module",
// "ecmaFeatures": {
// "jsx": true
// }
// },
// "env": {
// "browser": true,
// "es6": true,
// "node": true,
// "mocha": true
// },
// "rules": {
// "no-console": 0, // disallow use of console (off by default in the node environment)
// "no-unused-vars": 1, // disallow declaration of variables that are not used in the code
// 'indent': [2, 2, { 'SwitchCase': 1, 'VariableDeclarator': 4 }],
// 'react/jsx-indent': [2, 4],
// 'react/jsx-indent-props': [0, 2]
}
// "react/jsx-indent": [2, 4]
// // 'indent': [2, 2, { 'SwitchCase': 1, 'VariableDeclarator': 4 }],
// // 'react/jsx-indent': [2, 4],
// // 'react/jsx-indent-props': [0, 2]
// }
}
{
"rules": { }
"extends": "stylelint-config-standard",
"rules": {
"indentation": 4,
}
}
......@@ -48,6 +48,7 @@ qa-: Signify that a QA or Test Engineering team is running an automated UI test
@import '07-components/_toggler.css';
*/
/* @import '09-states/_nav.css'; */
/* @import '10-trumps/__utils.css'; */
......@@ -56,37 +57,43 @@ qa-: Signify that a QA or Test Engineering team is running an automated UI test
/* .c-scroller { position: absolute; bottom: 20px; left: 50%; transform: translateX(-50%); } */
/* critical:start */
/* critical:end */
/* critical:end */
#main:after,#top:after,.about-biuro-img:before,.icon:before{
content:''
#main::after,
#top::after,
.about-biuro-img::before,
.icon::before {
content: '';
}
@font-face{
font-family:'PT Sans Narrow';
font-style:normal;
font-weight:400;
src:local('PT Sans Narrow'),local('PTSans-Narrow'),url(https://fonts.gstatic.com/s/ptsansnarrow/v8/BngRUXNadjH0qYEzV7ab-oWlsYCB.ttf) format('truetype')
@font-face {
font-family: 'PT Sans Narrow';
font-style: normal;
font-weight: 400;
src:
local('PT Sans Narrow'),
local('PTSans-Narrow'),
url(https://fonts.gstatic.com/s/ptsansnarrow/v8/BngRUXNadjH0qYEzV7ab-oWlsYCB.ttf) format('truetype');
}
@font-face{
font-family:'PT Sans Narrow';
font-style:normal;
font-weight:700;
src:local('PT Sans Narrow Bold'),local('PTSans-NarrowBold'),url(https://fonts.gstatic.com/s/ptsansnarrow/v8/BngSUXNadjH0qYEzV7ab-oWlsbg95DiC.ttf) format('truetype')
@font-face {
font-family: 'PT Sans Narrow';
font-style: normal;
font-weight: 700;
src:
local('PT Sans Narrow Bold'),
local('PTSans-NarrowBold'),
url(https://fonts.gstatic.com/s/ptsansnarrow/v8/BngSUXNadjH0qYEzV7ab-oWlsbg95DiC.ttf) format('truetype');
}
@font-face{
font-family:'Bebas Neue';
src:url(../_fonts/bebas-neue.eot);
src:url(../_fonts/bebas-neue.eot?#iefix) format("embedded-opentype"),url(../_fonts/bebas-neue.woff2) format("woff2"),url(../_fonts/bebas-neue.woff) format("woff"),url(../_fonts/bebas-neue.ttf) format("truetype"),url(../_fonts/bebas-neue.svg#BebasNeue) format("svg")
@font-face {
font-family: 'Bebas Neue';
src: url(../_fonts/bebas-neue.eot);
src: url(../_fonts/bebas-neue.eot?#iefix) format("embedded-opentype"),url(../_fonts/bebas-neue.woff2) format("woff2"),url(../_fonts/bebas-neue.woff) format("woff"),url(../_fonts/bebas-neue.ttf) format("truetype"),url(../_fonts/bebas-neue.svg#BebasNeue) format("svg");
}
#main:after,#top:after{
display:table;
clear:both
......@@ -108,12 +115,12 @@ table{
html body{
overflow:visible
}
body{
color:#4b4d4f;
font-family:'PT Sans Narrow',sans-serif;
font-size:18px;
line-height:1.2;
overflow:auto
body {
color: #4b4d4f;
font-family: 'PT Sans Narrow', sans-serif;
font-size: 18px;
line-height: 1.2;
overflow: auto;
}
button,input,select,textarea{
color:#4b4d4f;
......
console.log('here goes main I');
// console.log('here goes main II');
// console.log('here goes main III');
......@@ -14,13 +14,13 @@
get_header(); ?>
<main class="l-main" role="main">
<h1>front-page.php I</h1>
<p>main</p>
</main>
<?php
while ( have_posts() ) :
the_post();
the_content();
<aside role="complementary" class="l-aside">
<p>aside</p>
</aside>
endwhile;
?>
<?php get_footer();
......@@ -439,7 +439,7 @@ add_filter("mce_buttons_2", "enable_more_buttons");
// * hard-coded <title> tag in the document head, and expect WordPress to
// * provide it for us.
// */
// add_theme_support( 'title-tag' );
add_theme_support( 'title-tag' );
// }
// add_action( 'after_setup_theme', 'biuro_theme_setup' );
......@@ -617,4 +617,3 @@ function init_biuro_theme() {
}
add_action('init', 'init_biuro_theme');
......@@ -183,8 +183,8 @@
$menu_name = 'main-menu';
$locations = get_nav_menu_locations();
$menu = $locations ? wp_get_nav_menu_object( $locations[ $menu_name ] ) : null;
$menu_items = $menu ? wp_get_nav_menu_items( $menu->term_id, array( 'order' => 'DESC' ) ) : [];
$items = [];
$menu_items = $menu ? wp_get_nav_menu_items( $menu->term_id, array( 'order' => 'DESC' ) ) : array();
$items = array();
$ID = get_the_ID();
$no = 0;
$main = '';
......@@ -205,15 +205,15 @@
}
}
// debug($items);
$main .= '<ul id="menu">';
foreach($items as $item) {
$children = array_key_exists('children', $item);
$url = ($children) ? $item['children'][0]->url : $item['props']->url;
$main .= '<li class="' . $item['style'] . '">';
$main .= '<a href="' . $url . '" title="' . get_the_title($item['props']->object_id) . '">' . $item['props']->title . '</a>';
$classCSS = ($item['active']) ? 'class="act"' : '';
$main .= '<a href="' . $url . '" title="' . get_the_title($item['props']->object_id) . '" ' . $classCSS . '>' . $item['props']->title . '</a>';
if ($children && $item['active']) {
$main .= '<ul>';
......@@ -263,4 +263,4 @@
<?php
// debug($translations);
// debug(get_option('wpseo_social'));
?>
\ No newline at end of file
?>
......@@ -17,9 +17,16 @@
get_header(); ?>
<div id="content">
<?php the_content(); ?>
</div>
<?php
while ( have_posts() ) :
the_post();
the_content();
endwhile;
?>
<?php
/*
......
This diff is collapsed.
......@@ -9,20 +9,25 @@
},
"author": "Simon",
"devDependencies": {
"@babel/core": "^7.1.2",
"@babel/core": "^7.1.6",
"@babel/plugin-syntax-dynamic-import": "^7.0.0",
"@babel/plugin-transform-runtime": "^7.1.0",
"@babel/preset-env": "^7.1.0",
"@babel/preset-env": "^7.1.6",
"@babel/preset-react": "^7.0.0",
"@babel/register": "^7.0.0",
"@babel/runtime": "^7.1.2",
"autoprefixer": "^9.1.1",
"autoprefixer": "^9.3.1",
"babel-loader": "^8.0.4",
"browser-sync": "^2.24.6",
"connect-modrewrite": "^0.10.2",
"css-mqpacker": "^7.0.0",
"cssnano": "^4.0.5",
"cssnano": "^4.1.7",
"eslint-config-standard": "^12.0.0",
"eslint-config-standard-preact": "^1.1.6",
"eslint-plugin-import": "^2.14.0",
"eslint-plugin-node": "^8.0.0",
"eslint-plugin-promise": "^4.0.1",
"eslint-plugin-standard": "^4.0.0",
"gulp": "^4.0.0",
"gulp-html-tag-include": "^1.0.1",
"gulp-htmlmin": "^5.0.1",
......@@ -31,17 +36,20 @@
"gulp-rename": "^1.4.0",
"gulp-replace": "^1.0.0",
"gulp-sourcemaps": "^2.6.4",
"postcss": "^7.0.5",
"postcss-browser-reporter": "^0.5.0",
"postcss-critical-split": "^2.5.1",
"postcss-custom-media": "^7.0.6",
"postcss-custom-media": "^7.0.7",
"postcss-extend": "^1.0.5",
"postcss-import": "^12.0.0",
"postcss-import": "^12.0.1",
"postcss-nested": "^4.1.0",
"postcss-preset-env": "^6.1.1",
"postcss-preset-env": "^6.4.0",
"postcss-reporter": "^6.0.0",
"precss": "^3.1.2",
"shx": "^0.3.2",
"webpack": "^4.16.5",
"stylelint": "^9.8.0",
"stylelint-config-standard": "^18.2.0",
"webpack": "^4.25.1",
"webpack-bundle-analyzer": "^3.0.3",
"webpack-dev-middleware": "^3.1.3",
"webpack-hot-middleware": "^2.22.3",
......
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -47,14 +47,14 @@ msgstr "Šios temos gali būti naudojamos kituose Jūsų tinklo tinklalapiuose."
msgid "Are you sure you wish to delete this theme?"
msgstr "Ar tikrai norite ištrinti šią temą?"
#: wp-admin/network/site-themes.php:183 wp-admin/network/themes.php:279
#: wp-admin/network/themes.php:279 wp-admin/network/site-themes.php:183
msgid "%s theme disabled."
msgid_plural "%s themes disabled."
msgstr[0] "Išjungta temų: %s "
msgstr[1] "Išjungta temų: %s "
msgstr[2] "Išjungta temų: %s "
#: wp-admin/network/site-themes.php:175 wp-admin/network/themes.php:271
#: wp-admin/network/themes.php:271 wp-admin/network/site-themes.php:175
msgid "%s theme enabled."
msgid_plural "%s themes enabled."
msgstr[0] "Įjungta temų: %s "
......@@ -280,13 +280,13 @@ msgid "Dashboard leads to the Dashboard for that site."
msgstr "Skydelis: Būsite perkelti į pasirinkto tinklalapio administravimo sąsają."
#. translators: %s: site name
#: wp-admin/network/site-info.php:117 wp-admin/network/site-settings.php:70
#: wp-admin/network/site-themes.php:153 wp-admin/network/site-users.php:196
#: wp-admin/network/site-info.php:117 wp-admin/network/site-users.php:196
#: wp-admin/network/site-themes.php:153 wp-admin/network/site-settings.php:70
msgid "Edit Site: %s"
msgstr "Tinklalapio redagavimas: %s"
#: wp-admin/network/site-info.php:23 wp-admin/network/site-settings.php:22
#: wp-admin/network/site-themes.php:43 wp-admin/network/site-users.php:38
#: wp-admin/network/site-info.php:23 wp-admin/network/site-users.php:38
#: wp-admin/network/site-themes.php:43 wp-admin/network/site-settings.php:22
msgid "Invalid site ID."
msgstr "Netinkamas tinklalapio ID."
......@@ -395,12 +395,12 @@ msgstr "Temos %s"
msgid "Installed Themes"
msgstr "Įdiegtos temos"
#: wp-admin/network/menu.php:53 wp-admin/network/themes.php:253
#: wp-admin/network/themes.php:253 wp-admin/network/menu.php:53
msgctxt "theme"
msgid "Add New"
msgstr "Įdiegti temą"
#: wp-admin/network/menu.php:67 wp-admin/network/settings.php:19
#: wp-admin/network/settings.php:19 wp-admin/network/menu.php:67
msgid "Network Settings"
msgstr "Tinklo nustatymai"
......@@ -408,8 +408,8 @@ msgstr "Tinklo nustatymai"
msgid "Updates"
msgstr "Atnaujinimai"
#: wp-admin/network/menu.php:34 wp-admin/network/upgrade.php:15
#: wp-admin/network/upgrade.php:40 wp-admin/network/upgrade.php:131
#: wp-admin/network/upgrade.php:15 wp-admin/network/upgrade.php:40
#: wp-admin/network/upgrade.php:131 wp-admin/network/menu.php:34
msgid "Upgrade Network"
msgstr "Atnaujinti tinklą"
......@@ -553,15 +553,15 @@ msgstr "Administratoriaus el. paštas"
msgid "A new user will be created if the above email address is not in the database."
msgstr "Jei el. pašto adreso dar nėra duomenų bazėje, bus sukurtas naujas vartotojas."
#: wp-admin/network/site-themes.php:173 wp-admin/network/themes.php:269
#: wp-admin/network/themes.php:269 wp-admin/network/site-themes.php:173
msgid "Theme enabled."
msgstr "%s tema įgalinta."
#: wp-admin/network/site-themes.php:181 wp-admin/network/themes.php:277
#: wp-admin/network/themes.php:277 wp-admin/network/site-themes.php:181
msgid "Theme disabled."
msgstr "%s tema išjungta."
#: wp-admin/network/site-themes.php:187 wp-admin/network/themes.php:291
#: wp-admin/network/themes.php:291 wp-admin/network/site-themes.php:187
msgid "No theme selected."
msgstr "Tema nepasirinkta."
......@@ -593,7 +593,7 @@ msgstr "Įveskite vartotojo vardą ir el. pašto adresą."
msgid "Duplicated username or email address."
msgstr "Vartotojo vardas arba el. pašto adresas jau naudojamas."
#: wp-admin/network/site-users.php:310 wp-admin/network/user-new.php:129
#: wp-admin/network/user-new.php:129 wp-admin/network/site-users.php:310
msgid "Add User"
msgstr "Pridėti vartotoją"
......@@ -757,12 +757,12 @@ msgstr "You are about to mark the site %s as not mature."
msgid "The requested action is not valid."
msgstr "Šis veiksmas negalimas."
#: wp-admin/network/site-info.php:28 wp-admin/network/site-settings.php:26
#: wp-admin/network/site-themes.php:49 wp-admin/network/site-users.php:42
#: wp-admin/network/site-info.php:28 wp-admin/network/site-users.php:42
#: wp-admin/network/site-themes.php:49 wp-admin/network/site-settings.php:26
msgid "The requested site does not exist."
msgstr "Toks tinklalapis neegzistuoja."
#: wp-admin/network/site-users.php:346 wp-admin/network/user-new.php:117
#: wp-admin/network/user-new.php:117 wp-admin/network/site-users.php:346
msgid "A password reset link will be sent to the user via email."
msgstr "Slaptažodžio atstatymo nuoroda bus išsiųsta vartotojui el.paštu."
......@@ -1203,8 +1203,8 @@ msgstr "Deja, Jūs negalite tvarkyti tinklo temų."
msgid "Sorry, you are not allowed to delete themes for this site."
msgstr "Deja, Jūs negalite trinti temų šiame tinklalapyje."
#: wp-admin/network/site-info.php:14 wp-admin/network/site-settings.php:14
#: wp-admin/network/site-users.php:14
#: wp-admin/network/site-info.php:14 wp-admin/network/site-users.php:14
#: wp-admin/network/site-settings.php:14
msgid "Sorry, you are not allowed to edit this site."
msgstr "Deja, Jūs negalite redaguoti šio tinklalapio."
......@@ -1226,10 +1226,6 @@ msgstr "Deja, Jūs negalite keisti šio tinklalapio."
msgid "Add the following to your %1$s file in %2$s <strong>above</strong> the line reading %3$s:"
msgstr "Pridėkite šias eilutes į savo tinklalapio %1$s failą (jį rasite %2$s), <strong>virš</strong> eilutės %3$s:"
#. translators: This string should only be translated if wp-config-sample.php
#. is localized. You can check the localized release package or
#. https://i18n.svn.wordpress.org/<locale code>/branches/<wp
#. version>/dist/wp-config-sample.php
#: wp-admin/includes/network.php:436
msgid "That&#8217;s all, stop editing! Happy blogging."
msgstr "That&#8217;s all, stop editing! Happy blogging."
......@@ -1366,4 +1362,4 @@ msgstr "Prisijungę vartotojai gali laisvai kurti tinklalapius"
#. translators: %s: DO_NOT_UPGRADE_GLOBAL_TABLES
#: wp-admin/includes/network.php:107
msgid "The constant %s cannot be defined when creating a network."
msgstr "Konstanta %s negali būti apibrėžta kuriant tinklą."
msgstr "Konstanta %s negali būti apibrėžta kuriant tinklą."
\ No newline at end of file
......@@ -2114,4 +2114,4 @@ msgstr "Baja Banderas"
#: wp-admin/includes/continents-cities.php:39
msgid "Juba"
msgstr "Džuba"
msgstr "Džuba"
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
......@@ -6,7 +6,7 @@
Plugin Name: Akismet Anti-Spam
Plugin URI: https://akismet.com/
Description: Used by millions, Akismet is quite possibly the best way in the world to <strong>protect your blog from spam</strong>. It keeps your site protected even while you sleep. To get started: activate the Akismet plugin and then go to your Akismet Settings page to set up your API key.
Version: 4.0.8
Version: 4.1
Author: Automattic
Author URI: https://automattic.com/wordpress-plugins/
License: GPLv2 or later
......@@ -37,7 +37,7 @@ if ( !function_exists( 'add_action' ) ) {
exit;
}
define( 'AKISMET_VERSION', '4.0.8' );
define( 'AKISMET_VERSION', '4.1' );
define( 'AKISMET__MINIMUM_WP_VERSION', '4.0' );
define( 'AKISMET__PLUGIN_DIR', plugin_dir_path( __FILE__ ) );
define( 'AKISMET_DELETE_LIMIT', 100000 );
......
......@@ -74,6 +74,9 @@ class Akismet_Admin {
add_filter( 'akismet_comment_form_privacy_notice_url_display', array( 'Akismet_Admin', 'jetpack_comment_form_privacy_notice_url' ) );
add_filter( 'akismet_comment_form_privacy_notice_url_hide', array( 'Akismet_Admin', 'jetpack_comment_form_privacy_notice_url' ) );
}
// priority=1 because we need ours to run before core's comment anonymizer runs, and that's registered at priority=10
add_filter( 'wp_privacy_personal_data_erasers', array( 'Akismet_Admin', 'register_personal_data_eraser' ), 1 );
}
public static function admin_init() {
......@@ -1049,7 +1052,7 @@ class Akismet_Admin {
$message .= ' ';
if ( $spam_count === 0 ) {
$message .= __( 'No comments were caught as spam.' );
$message .= __( 'No comments were caught as spam.', 'akismet' );
}
else {
$message .= sprintf( _n( '%s comment was caught as spam.', '%s comments were caught as spam.', $spam_count, 'akismet' ), number_format( $spam_count ) );
......@@ -1180,4 +1183,62 @@ class Akismet_Admin {
public static function jetpack_comment_form_privacy_notice_url( $url ) {
return str_replace( 'options-general.php', 'admin.php', $url );
}
public static function register_personal_data_eraser( $erasers ) {
$erasers['akismet'] = array(
'eraser_friendly_name' => __( 'Akismet', 'akismet' ),
'callback' => array( 'Akismet_Admin', 'erase_personal_data' ),
);
return $erasers;
}
/**
* When a user requests that their personal data be removed, Akismet has a duty to discard
* any personal data we store outside of the comment itself. Right now, that is limited
* to the copy of the comment we store in the akismet_as_submitted commentmeta.
*
* FWIW, this information would be automatically deleted after 15 days.
*
* @param $email_address string The email address of the user who has requested erasure.
* @param $page int This function can (and will) be called multiple times to prevent timeouts,
* so this argument is used for pagination.
* @return array
* @see https://developer.wordpress.org/plugins/privacy/adding-the-personal-data-eraser-to-your-plugin/
*/
public static function erase_personal_data( $email_address, $page = 1 ) {
$items_removed = false;
$number = 50;
$page = (int) $page;
$comments = get_comments(
array(
'author_email' => $email_address,
'number' => $number,
'paged' => $page,
'order_by' => 'comment_ID',
'order' => 'ASC',
)
);
foreach ( (array) $comments as $comment ) {
$comment_as_submitted = get_comment_meta( $comment->comment_ID, 'akismet_as_submitted', true );
if ( $comment_as_submitted ) {
delete_comment_meta( $comment->comment_ID, 'akismet_as_submitted' );
$items_removed = true;
}
}
// Tell core if we have more comments to work on still
$done = count( $comments ) < $number;
return array(
'items_removed' => $items_removed,
'items_retained' => false, // always false in this example
'messages' => array(), // no messages in this example
'done' => $done,
);
}
}
......@@ -88,4 +88,98 @@ class Akismet_CLI extends WP_CLI_Command {
WP_CLI::line( sprintf( _n( "%d comment could not be checked.", "%d comments could not be checked.", $total_counts['error'], 'akismet' ), number_format( $total_counts['error'] ) ) );
}
}
/**
* Fetches stats from the Akismet API.
*
* ## OPTIONS
*
* [<interval>]
* : The time period for which to retrieve stats.
* ---
* default: all
* options:
* - days
* - months
* - all
* ---
*
* [--format=<format>]
* : Allows overriding the output of the command when listing connections.
* ---
* default: table
* options:
* - table
* - json
* - csv
* - yaml
* - count
* ---
*
* [--summary]
* : When set, will display a summary of the stats.
*
* ## EXAMPLES
*
* wp akismet stats
* wp akismet stats all
* wp akismet stats days
* wp akismet stats months
* wp akismet stats all --summary
*/
public function stats( $args, $assoc_args ) {
$api_key = Akismet::get_api_key();
if ( empty( $api_key ) ) {
WP_CLI::error( __( 'API key must be set to fetch stats.', 'akismet' ) );
}
switch ( $args[0] ) {
case 'days':
$interval = '60-days';
break;
case 'months':
$interval = '6-months';
break;
default:
$interval = 'all';
break;
}
$response = Akismet::http_post(
Akismet::build_query( array(
'blog' => get_option( 'home' ),
'key' => $api_key,
'from' => $interval,
) ),
'get-stats'
);
if ( empty( $response[1] ) ) {
WP_CLI::error( __( 'Currently unable to fetch stats. Please try again.', 'akismet' ) );
}
$response_body = json_decode( $response[1], true );
if ( is_null( $response_body ) ) {
WP_CLI::error( __( 'Stats response could not be decoded.', 'akismet' ) );
}
if ( isset( $assoc_args['summary'] ) ) {
$keys = array(
'spam',
'ham',
'missed_spam',
'false_positives',
'accuracy',
'time_saved',
);
WP_CLI\Utils\format_items( $assoc_args['format'], array( $response_body ), $keys );
}
else {
$stats = $response_body['breakdown'];
WP_CLI\Utils\format_items( $assoc_args['format'], $stats, array_keys( end( $stats ) ) );
}
}
}
\ No newline at end of file
......@@ -87,6 +87,48 @@ class Akismet_REST_API {
'callback' => array( 'Akismet_REST_API', 'get_stats' ),
)
) );
register_rest_route( 'akismet/v1', '/alert', array(
array(
'methods' => WP_REST_Server::READABLE,
'permission_callback' => array( 'Akismet_REST_API', 'remote_call_permission_callback' ),
'callback' => array( 'Akismet_REST_API', 'get_alert' ),
'args' => array(
'key' => array(
'required' => false,
'type' => 'string',
'sanitize_callback' => array( 'Akismet_REST_API', 'sanitize_key' ),
'description' => __( 'A 12-character Akismet API key. Available at akismet.com/get/', 'akismet' ),
),
),
),
array(
'methods' => WP_REST_Server::EDITABLE,
'permission_callback' => array( 'Akismet_REST_API', 'remote_call_permission_callback' ),
'callback' => array( 'Akismet_REST_API', 'set_alert' ),
'args' => array(
'key' => array(
'required' => false,
'type' => 'string',
'sanitize_callback' => array( 'Akismet_REST_API', 'sanitize_key' ),
'description' => __( 'A 12-character Akismet API key. Available at akismet.com/get/', 'akismet' ),
),
),
),
array(
'methods' => WP_REST_Server::DELETABLE,
'permission_callback' => array( 'Akismet_REST_API', 'remote_call_permission_callback' ),
'callback' => array( 'Akismet_REST_API', 'delete_alert' ),
'args' => array(
'key' => array(
'required' => false,
'type' => 'string',
'sanitize_callback' => array( 'Akismet_REST_API', 'sanitize_key' ),
'description' => __( 'A 12-character Akismet API key. Available at akismet.com/get/', 'akismet' ),
),
),
)
) );
}
/**
......@@ -231,6 +273,50 @@ class Akismet_REST_API {
return rest_ensure_response( $stat_totals );
}
/**
* Get the current alert code and message. Alert codes are used to notify the site owner
* if there's a problem, like a connection issue between their site and the Akismet API,
* invalid requests being sent, etc.
*
* @param WP_REST_Request $request
* @return WP_Error|WP_REST_Response
*/
public static function get_alert( $request ) {
return rest_ensure_response( array(
'code' => get_option( 'akismet_alert_code' ),
'message' => get_option( 'akismet_alert_msg' ),
) );
}
/**
* Update the current alert code and message by triggering a call to the Akismet server.
*
* @param WP_REST_Request $request
* @return WP_Error|WP_REST_Response
*/
public static function set_alert( $request ) {
delete_option( 'akismet_alert_code' );
delete_option( 'akismet_alert_msg' );
// Make a request so the most recent alert code and message are retrieved.
Akismet::verify_key( Akismet::get_api_key() );
return self::get_alert( $request );
}
/**
* Clear the current alert code and message.
*
* @param WP_REST_Request $request
* @return WP_Error|WP_REST_Response
*/
public static function delete_alert( $request ) {
delete_option( 'akismet_alert_code' );
delete_option( 'akismet_alert_msg' );
return self::get_alert( $request );
}
private static function key_is_valid( $key ) {
$response = Akismet::http_post(
Akismet::build_query(
......@@ -253,6 +339,15 @@ class Akismet_REST_API {
return current_user_can( 'manage_options' );
}
/**
* For calls that Akismet.com makes to the site to clear outdated alert codes, use the API key for authorization.
*/
public static function remote_call_permission_callback( $request ) {
$local_key = Akismet::get_api_key();
return $local_key && ( strtolower( $request->get_param( 'key' ) ) === strtolower( $local_key ) );
}
public static function sanitize_interval( $interval, $request, $param ) {
$interval = trim( $interval );
......
......@@ -762,7 +762,6 @@ class Akismet {
|| strtotime( $comment->comment_date_gmt ) < strtotime( "-15 days" ) // Comment is too old.
|| $comment->comment_approved !== "0" // Comment is no longer in the Pending queue
) {
echo "Deleting";
delete_comment_meta( $comment_id, 'akismet_error' );
delete_comment_meta( $comment_id, 'akismet_delayed_moderation_email' );
continue;
......
......@@ -2,8 +2,8 @@
Contributors: matt, ryan, andy, mdawaffe, tellyworth, josephscott, lessbloat, eoigal, cfinke, automattic, jgs, procifer, stephdau
Tags: akismet, comments, spam, antispam, anti-spam, anti spam, comment moderation, comment spam, contact form spam, spam comments
Requires at least: 4.0
Tested up to: 4.9.6
Stable tag: 4.0.8
Tested up to: 5.0
Stable tag: 4.1
License: GPLv2 or later
Akismet checks your comments and contact form submissions against our global database of spam to protect you and your site from malicious content.
......@@ -30,6 +30,13 @@ Upload the Akismet plugin to your blog, Activate it, then enter your [Akismet.co
== Changelog ==
= 4.1 =
*Release Date - 12 November 2018*
* Added a WP-CLI method for retrieving stats.
* Hooked into the new "Personal Data Eraser" functionality from WordPress 4.9.6.
* Added functionality to clear outdated alerts from Akismet.com.
= 4.0.8 =
*Release Date - 19 June 2018*
......
# Gutenberg
[![Build Status](https://img.shields.io/travis/WordPress/gutenberg/master.svg)](https://travis-ci.org/WordPress/gutenberg)
[![Coverage](https://img.shields.io/codecov/c/github/WordPress/gutenberg/master.svg)](https://codecov.io/gh/WordPress/gutenberg)
[![lerna](https://img.shields.io/badge/maintained%20with-lerna-cc00ff.svg)](https://lernajs.io/)
Printing since 1440.
......
this.wp=this.wp||{},this.wp.a11y=function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=196)}({194:function(e,t){!function(){e.exports=this.wp.domReady}()},196:function(e,t,n){"use strict";n.r(t);var r=function(e){e=e||"polite";var t=document.createElement("div");return t.id="a11y-speak-"+e,t.className="a11y-speak-region",t.setAttribute("style","position: absolute;margin: -1px;padding: 0;height: 1px;width: 1px;overflow: hidden;clip: rect(1px, 1px, 1px, 1px);-webkit-clip-path: inset(50%);clip-path: inset(50%);border: 0;word-wrap: normal !important;"),t.setAttribute("aria-live",e),t.setAttribute("aria-relevant","additions text"),t.setAttribute("aria-atomic","true"),document.querySelector("body").appendChild(t),t},i=function(){for(var e=document.querySelectorAll(".a11y-speak-region"),t=0;t<e.length;t++)e[t].textContent=""},o=n(194),a=n.n(o),u="",p=function(e){return e=e.replace(/<[^<>]+>/g," "),u===e&&(e+=" "),u=e,e};n.d(t,"setup",function(){return s}),n.d(t,"speak",function(){return c});var s=function(){var e=document.getElementById("a11y-speak-polite"),t=document.getElementById("a11y-speak-assertive");null===e&&(e=r("polite")),null===t&&(t=r("assertive"))};a()(s);var c=function(e,t){i(),e=p(e);var n=document.getElementById("a11y-speak-polite"),r=document.getElementById("a11y-speak-assertive");r&&"assertive"===t?r.textContent=e:n&&(n.textContent=e)}}});
\ No newline at end of file
this.wp=this.wp||{},this.wp.a11y=function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=198)}({195:function(e,t){!function(){e.exports=this.wp.domReady}()},198:function(e,t,n){"use strict";n.r(t);var r=function(e){e=e||"polite";var t=document.createElement("div");return t.id="a11y-speak-"+e,t.className="a11y-speak-region",t.setAttribute("style","position: absolute;margin: -1px;padding: 0;height: 1px;width: 1px;overflow: hidden;clip: rect(1px, 1px, 1px, 1px);-webkit-clip-path: inset(50%);clip-path: inset(50%);border: 0;word-wrap: normal !important;"),t.setAttribute("aria-live",e),t.setAttribute("aria-relevant","additions text"),t.setAttribute("aria-atomic","true"),document.querySelector("body").appendChild(t),t},i=function(){for(var e=document.querySelectorAll(".a11y-speak-region"),t=0;t<e.length;t++)e[t].textContent=""},o=n(195),a=n.n(o),u="",p=function(e){return e=e.replace(/<[^<>]+>/g," "),u===e&&(e+=" "),u=e,e};n.d(t,"setup",function(){return s}),n.d(t,"speak",function(){return c});var s=function(){var e=document.getElementById("a11y-speak-polite"),t=document.getElementById("a11y-speak-assertive");null===e&&(e=r("polite")),null===t&&(t=r("assertive"))};a()(s);var c=function(e,t){i(),e=p(e);var n=document.getElementById("a11y-speak-polite"),r=document.getElementById("a11y-speak-assertive");r&&"assertive"===t?r.textContent=e:n&&(n.textContent=e)}}});
\ No newline at end of file
this.wp=this.wp||{},this.wp.annotations=function(t){var n={};function e(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,e),o.l=!0,o.exports}return e.m=t,e.c=n,e.d=function(t,n,r){e.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:r})},e.r=function(t){Object.defineProperty(t,"__esModule",{value:!0})},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,n){return Object.prototype.hasOwnProperty.call(t,n)},e.p="",e(e.s=207)}({1:function(t,n){!function(){t.exports=this.wp.i18n}()},15:function(t,n,e){"use strict";function r(t,n,e){return n in t?Object.defineProperty(t,n,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[n]=e,t}e.d(n,"a",function(){return r})},19:function(t,n,e){"use strict";var r=e(32);function o(t){return function(t){if(Array.isArray(t)){for(var n=0,e=new Array(t.length);n<t.length;n++)e[n]=t[n];return e}}(t)||Object(r.a)(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}e.d(n,"a",function(){return o})},2:function(t,n){!function(){t.exports=this.lodash}()},20:function(t,n){!function(){t.exports=this.wp.richText}()},207:function(t,n,e){"use strict";e.r(n);var r={};e.d(r,"__experimentalGetAnnotationsForBlock",function(){return b}),e.d(r,"__experimentalGetAnnotationsForRichText",function(){return v}),e.d(r,"__experimentalGetAnnotations",function(){return y});var o={};e.d(o,"__experimentalAddAnnotation",function(){return g}),e.d(o,"__experimentalRemoveAnnotation",function(){return m}),e.d(o,"__experimentalRemoveAnnotationsBySource",function(){return x});var i=e(5),a=e(15),u=e(8),c=e(19),l=e(2);function f(t,n){var e=t.filter(n);return t.length===e.length?t:e}var s=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{all:[],byBlockClientId:{}},n=arguments.length>1?arguments[1]:void 0;switch(n.type){case"ANNOTATION_ADD":var e=n.blockClientId,r={id:n.id,blockClientId:e,richTextIdentifier:n.richTextIdentifier,source:n.source,selector:n.selector,range:n.range};if("range"===r.selector&&!function(t){return Object(l.isNumber)(t.start)&&Object(l.isNumber)(t.end)&&t.start<=t.end}(r.range))return t;var o=t.byBlockClientId[e]||[];return{all:Object(c.a)(t.all).concat([r]),byBlockClientId:Object(u.a)({},t.byBlockClientId,Object(a.a)({},e,Object(c.a)(o).concat([n.id])))};case"ANNOTATION_REMOVE":return{all:t.all.filter(function(t){return t.id!==n.annotationId}),byBlockClientId:Object(l.mapValues)(t.byBlockClientId,function(t){return f(t,function(t){return t!==n.annotationId})})};case"ANNOTATION_REMOVE_SOURCE":var i=[];return{all:t.all.filter(function(t){return t.source!==n.source||(i.push(t.id),!1)}),byBlockClientId:Object(l.mapValues)(t.byBlockClientId,function(t){return f(t,function(t){return!i.includes(t)})})}}return t},d=e(21),p=e(31),b=Object(p.a)(function(t,n){return t.all.filter(function(t){return"block"===t.selector&&t.blockClientId===n})},function(t,n){return[t.byBlockClientId[n]]}),v=Object(p.a)(function(t,n,e){return t.all.filter(function(t){return"range"===t.selector&&t.blockClientId===n&&e===t.richTextIdentifier}).map(function(t){var n=t.range,e=Object(d.a)(t,["range"]);return Object(u.a)({},n,e)})},function(t,n){return[t.byBlockClientId[n]]});function y(t){return t.all}var O=e(60),h=e.n(O);function g(t){var n=t.blockClientId,e=t.richTextIdentifier,r=void 0===e?null:e,o=t.range,i=void 0===o?null:o,a=t.selector,u=void 0===a?"range":a,c=t.source,l=void 0===c?"default":c,f=t.id,s={type:"ANNOTATION_ADD",id:void 0===f?h()():f,blockClientId:n,richTextIdentifier:r,source:l,selector:u};return"range"===u&&(s.range=i),s}function m(t){return{type:"ANNOTATION_REMOVE",annotationId:t}}function x(t){return{type:"ANNOTATION_REMOVE_SOURCE",source:t}}Object(i.registerStore)("core/annotations",{reducer:s,selectors:r,actions:o});var j=e(20),I=e(1);var _={name:"core/annotation",title:Object(I.__)("Annotation"),tagName:"mark",className:"annotation-text",attributes:{className:"class"},edit:function(){return null},__experimentalGetPropsForEditableTreePreparation:function(t,n){var e=n.richTextIdentifier,r=n.blockClientId;return{annotations:t("core/annotations").__experimentalGetAnnotationsForRichText(r,e)}},__experimentalCreatePrepareEditableTree:function(t){return function(n,e){if(0===t.annotations.length)return n;var r={formats:n,text:e};return(r=function(t){return(arguments.length>1&&void 0!==arguments[1]?arguments[1]:[]).forEach(function(n){var e=n.start,r=n.end;e>t.text.length&&(e=t.text.length),r>t.text.length&&(r=t.text.length);var o="annotation-text-"+n.source;t=Object(j.applyFormat)(t,{type:"core/annotation",attributes:{className:o}},e,r)}),t}(r,t.annotations)).formats}}},A=_.name,k=Object(d.a)(_,["name"]);Object(j.registerFormatType)(A,k);var w=e(23);Object(w.addFilter)("editor.BlockListBlock","core/annotations",function(t){return Object(i.withSelect)(function(t,n){var e=n.clientId;return{className:t("core/annotations").__experimentalGetAnnotationsForBlock(e).map(function(t){return"is-annotated-by-"+t.source})}})(t)})},21:function(t,n,e){"use strict";function r(t,n){if(null==t)return{};var e,r,o=function(t,n){if(null==t)return{};var e,r,o={},i=Object.keys(t);for(r=0;r<i.length;r++)e=i[r],n.indexOf(e)>=0||(o[e]=t[e]);return o}(t,n);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(r=0;r<i.length;r++)e=i[r],n.indexOf(e)>=0||Object.prototype.propertyIsEnumerable.call(t,e)&&(o[e]=t[e])}return o}e.d(n,"a",function(){return r})},23:function(t,n){!function(){t.exports=this.wp.hooks}()},31:function(t,n,e){"use strict";var r,o;function i(t){return[t]}function a(t){return!!t&&"object"==typeof t}function u(){var t={clear:function(){t.head=null}};return t}function c(t,n,e){var r;if(t.length!==n.length)return!1;for(r=e;r<t.length;r++)if(t[r]!==n[r])return!1;return!0}r={},o="undefined"!=typeof WeakMap,n.a=function(t,n){var e,l;function f(){e=o?new WeakMap:u()}function s(){var e,r,o,i,a,u=arguments.length;for(i=new Array(u),o=0;o<u;o++)i[o]=arguments[o];for(a=n.apply(null,i),(e=l(a)).isUniqueByDependants||(e.lastDependants&&!c(a,e.lastDependants,0)&&e.clear(),e.lastDependants=a),r=e.head;r;){if(c(r.args,i,1))return r!==e.head&&(r.prev.next=r.next,r.next&&(r.next.prev=r.prev),r.next=e.head,r.prev=null,e.head.prev=r,e.head=r),r.val;r=r.next}return r={val:t.apply(null,i)},i[0]=null,r.args=i,e.head&&(e.head.prev=r,r.next=e.head),e.head=r,r.val}return n||(n=i),l=o?function(t){var n,o,i,c,l=e,f=!0;for(n=0;n<t.length;n++){if(!a(o=t[n])){f=!1;break}l.has(o)?l=l.get(o):(i=new WeakMap,l.set(o,i),l=i)}return l.has(r)||((c=u()).isUniqueByDependants=f,l.set(r,c)),l.get(r)}:function(){return e},s.getDependants=n,s.clear=f,f(),s}},32:function(t,n,e){"use strict";function r(t){if(Symbol.iterator in Object(t)||"[object Arguments]"===Object.prototype.toString.call(t))return Array.from(t)}e.d(n,"a",function(){return r})},5:function(t,n){!function(){t.exports=this.wp.data}()},60:function(t,n,e){var r=e(84),o=e(83);t.exports=function(t,n,e){var i=n&&e||0;"string"==typeof t&&(n="binary"===t?new Array(16):null,t=null);var a=(t=t||{}).random||(t.rng||r)();if(a[6]=15&a[6]|64,a[8]=63&a[8]|128,n)for(var u=0;u<16;++u)n[i+u]=a[u];return n||o(a)}},8:function(t,n,e){"use strict";e.d(n,"a",function(){return o});var r=e(15);function o(t){for(var n=1;n<arguments.length;n++){var e=null!=arguments[n]?arguments[n]:{},o=Object.keys(e);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(e).filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),o.forEach(function(n){Object(r.a)(t,n,e[n])})}return t}},83:function(t,n){for(var e=[],r=0;r<256;++r)e[r]=(r+256).toString(16).substr(1);t.exports=function(t,n){var r=n||0,o=e;return[o[t[r++]],o[t[r++]],o[t[r++]],o[t[r++]],"-",o[t[r++]],o[t[r++]],"-",o[t[r++]],o[t[r++]],"-",o[t[r++]],o[t[r++]],"-",o[t[r++]],o[t[r++]],o[t[r++]],o[t[r++]],o[t[r++]],o[t[r++]]].join("")}},84:function(t,n){var e="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||"undefined"!=typeof msCrypto&&"function"==typeof window.msCrypto.getRandomValues&&msCrypto.getRandomValues.bind(msCrypto);if(e){var r=new Uint8Array(16);t.exports=function(){return e(r),r}}else{var o=new Array(16);t.exports=function(){for(var t,n=0;n<16;n++)0==(3&n)&&(t=4294967296*Math.random()),o[n]=t>>>((3&n)<<3)&255;return o}}}});
\ No newline at end of file
this.wp=this.wp||{},this.wp.blob=function(e){var n={};function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}return t.m=e,t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},t.p="",t(t.s=339)}({339:function(e,n,t){"use strict";t.r(n),t.d(n,"createBlobURL",function(){return c}),t.d(n,"getBlobByURL",function(){return f}),t.d(n,"revokeBlobURL",function(){return l}),t.d(n,"isBlobURL",function(){return a});var r=window.URL,o=r.createObjectURL,u=r.revokeObjectURL,i={};function c(e){var n=o(e);return i[n]=e,n}function f(e){return i[e]}function l(e){i[e]&&u(e),delete i[e]}function a(e){return!(!e||!e.indexOf)&&0===e.indexOf("blob:")}}});
\ No newline at end of file
this.wp=this.wp||{},this.wp.blob=function(e){var n={};function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}return t.m=e,t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},t.p="",t(t.s=341)}({341:function(e,n,t){"use strict";t.r(n),t.d(n,"createBlobURL",function(){return c}),t.d(n,"getBlobByURL",function(){return f}),t.d(n,"revokeBlobURL",function(){return l}),t.d(n,"isBlobURL",function(){return a});var r=window.URL,o=r.createObjectURL,u=r.revokeObjectURL,i={};function c(e){var n=o(e);return i[n]=e,n}function f(e){return i[e]}function l(e){i[e]&&u(e),delete i[e]}function a(e){return!(!e||!e.indexOf)&&0===e.indexOf("blob:")}}});
\ No newline at end of file
this.wp=this.wp||{},this.wp.blockSerializationDefaultParser=function(r){var t={};function n(e){if(t[e])return t[e].exports;var u=t[e]={i:e,l:!1,exports:{}};return r[e].call(u.exports,u,u.exports,n),u.l=!0,u.exports}return n.m=r,n.c=t,n.d=function(r,t,e){n.o(r,t)||Object.defineProperty(r,t,{configurable:!1,enumerable:!0,get:e})},n.r=function(r){Object.defineProperty(r,"__esModule",{value:!0})},n.n=function(r){var t=r&&r.__esModule?function(){return r.default}:function(){return r};return n.d(t,"a",t),t},n.o=function(r,t){return Object.prototype.hasOwnProperty.call(r,t)},n.p="",n(n.s=338)}({24:function(r,t,n){"use strict";var e=n(36);var u=n(35);function o(r,t){return Object(e.a)(r)||function(r,t){var n=[],e=!0,u=!1,o=void 0;try{for(var c,i=r[Symbol.iterator]();!(e=(c=i.next()).done)&&(n.push(c.value),!t||n.length!==t);e=!0);}catch(r){u=!0,o=r}finally{try{e||null==i.return||i.return()}finally{if(u)throw o}}return n}(r,t)||Object(u.a)()}n.d(t,"a",function(){return o})},338:function(r,t,n){"use strict";n.r(t),n.d(t,"parse",function(){return f});var e,u,o,c,i=n(24),s=/<!--\s+(\/)?wp:([a-z][a-z0-9_-]*\/)?([a-z][a-z0-9_-]*)\s+({(?:(?!}\s+-->)[^])+?}\s+)?(\/)?-->/g;function l(r,t,n,e){return{blockName:r,attrs:t,innerBlocks:n,innerHTML:e}}function a(r){return l(null,{},[],r)}var f=function(r){e=r,u=0,o=[],c=[],s.lastIndex=0;do{}while(p());return o};function p(){var r=function(){var r=s.exec(e);if(null===r)return["no-more-tokens"];var t=r.index,n=Object(i.a)(r,6),u=n[0],o=n[1],c=n[2],l=n[3],a=n[4],f=n[5],p=u.length,b=!!o,v=!!f,h=(c||"core/")+l,d=!!a,k=d?function(r){try{return JSON.parse(r)}catch(r){return null}}(a):{};if(v)return["void-block",h,k,t,p];if(b)return["block-closer",h,null,t,p];return["block-opener",h,k,t,p]}(),t=Object(i.a)(r,5),n=t[0],f=t[1],p=t[2],d=t[3],k=t[4],O=c.length,g=d>u?u:null;switch(n){case"no-more-tokens":if(0===O)return b(),!1;if(1===O)return h(),!1;for(;0<c.length;)h();return!1;case"void-block":return 0===O?(null!==g&&o.push(a(e.substr(g,d-g))),o.push(l(f,p,[],"")),u=d+k,!0):(v(l(f,p,[],""),d,k),u=d+k,!0);case"block-opener":return c.push(function(r,t,n,e,u){return{block:r,tokenStart:t,tokenLength:n,prevOffset:e||t+n,leadingHtmlStart:u}}(l(f,p,[],""),d,k,d+k,g)),u=d+k,!0;case"block-closer":if(0===O)return b(),!1;if(1===O)return h(d),u=d+k,!0;var y=c.pop();return y.block.innerHTML+=e.substr(y.prevOffset,d-y.prevOffset),y.prevOffset=d+k,v(y.block,y.tokenStart,y.tokenLength,d+k),u=d+k,!0;default:return b(),!1}}function b(r){var t=r||e.length-u;0!==t&&o.push(a(e.substr(u,t)))}function v(r,t,n,u){var o=c[c.length-1];o.block.innerBlocks.push(r),o.block.innerHTML+=e.substr(o.prevOffset,t-o.prevOffset),o.prevOffset=u||t+n}function h(r){var t=c.pop(),n=t.block,u=t.leadingHtmlStart,i=t.prevOffset,s=t.tokenStart;n.innerHTML+=r?e.substr(i,r-i):e.substr(i),null!==u&&o.push(a(e.substr(u,s-u))),o.push(n)}},35:function(r,t,n){"use strict";function e(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}n.d(t,"a",function(){return e})},36:function(r,t,n){"use strict";function e(r){if(Array.isArray(r))return r}n.d(t,"a",function(){return e})}});
\ No newline at end of file
this.wp=this.wp||{},this.wp.blockSerializationDefaultParser=function(n){var t={};function r(e){if(t[e])return t[e].exports;var u=t[e]={i:e,l:!1,exports:{}};return n[e].call(u.exports,u,u.exports,r),u.l=!0,u.exports}return r.m=n,r.c=t,r.d=function(n,t,e){r.o(n,t)||Object.defineProperty(n,t,{configurable:!1,enumerable:!0,get:e})},r.r=function(n){Object.defineProperty(n,"__esModule",{value:!0})},r.n=function(n){var t=n&&n.__esModule?function(){return n.default}:function(){return n};return r.d(t,"a",t),t},r.o=function(n,t){return Object.prototype.hasOwnProperty.call(n,t)},r.p="",r(r.s=340)}({24:function(n,t,r){"use strict";var e=r(36);var u=r(35);function o(n,t){return Object(e.a)(n)||function(n,t){var r=[],e=!0,u=!1,o=void 0;try{for(var i,c=n[Symbol.iterator]();!(e=(i=c.next()).done)&&(r.push(i.value),!t||r.length!==t);e=!0);}catch(n){u=!0,o=n}finally{try{e||null==c.return||c.return()}finally{if(u)throw o}}return r}(n,t)||Object(u.a)()}r.d(t,"a",function(){return o})},340:function(n,t,r){"use strict";r.r(t),r.d(t,"parse",function(){return f});var e,u,o,i,c=r(24),s=/<!--\s+(\/)?wp:([a-z][a-z0-9_-]*\/)?([a-z][a-z0-9_-]*)\s+({(?:[^}]+|}+(?=})|(?!}\s+-->)[^])+?}\s+)?(\/)?-->/g;function l(n,t,r,e,u){return{blockName:n,attrs:t,innerBlocks:r,innerHTML:e,innerContent:u}}function a(n){return l(null,{},[],n,[n])}var f=function(n){e=n,u=0,o=[],i=[],s.lastIndex=0;do{}while(p());return o};function p(){var n=function(){var n=s.exec(e);if(null===n)return["no-more-tokens"];var t=n.index,r=Object(c.a)(n,6),u=r[0],o=r[1],i=r[2],l=r[3],a=r[4],f=r[5],p=u.length,b=!!o,v=!!f,h=(i||"core/")+l,k=!!a,d=k?function(n){try{return JSON.parse(n)}catch(n){return null}}(a):{};if(v)return["void-block",h,d,t,p];if(b)return["block-closer",h,null,t,p];return["block-opener",h,d,t,p]}(),t=Object(c.a)(n,5),r=t[0],f=t[1],p=t[2],k=t[3],d=t[4],O=i.length,g=k>u?u:null;switch(r){case"no-more-tokens":if(0===O)return b(),!1;if(1===O)return h(),!1;for(;0<i.length;)h();return!1;case"void-block":return 0===O?(null!==g&&o.push(a(e.substr(g,k-g))),o.push(l(f,p,[],"",[])),u=k+d,!0):(v(l(f,p,[],"",[]),k,d),u=k+d,!0);case"block-opener":return i.push(function(n,t,r,e,u){return{block:n,tokenStart:t,tokenLength:r,prevOffset:e||t+r,leadingHtmlStart:u}}(l(f,p,[],"",[]),k,d,k+d,g)),u=k+d,!0;case"block-closer":if(0===O)return b(),!1;if(1===O)return h(k),u=k+d,!0;var y=i.pop(),w=e.substr(y.prevOffset,k-y.prevOffset);return y.block.innerHTML+=w,y.block.innerContent.push(w),y.prevOffset=k+d,v(y.block,y.tokenStart,y.tokenLength,k+d),u=k+d,!0;default:return b(),!1}}function b(n){var t=n||e.length-u;0!==t&&o.push(a(e.substr(u,t)))}function v(n,t,r,u){var o=i[i.length-1];o.block.innerBlocks.push(n);var c=e.substr(o.prevOffset,t-o.prevOffset);c&&(o.block.innerHTML+=c,o.block.innerContent.push(c)),o.block.innerContent.push(null),o.prevOffset=u||t+r}function h(n){var t=i.pop(),r=t.block,u=t.leadingHtmlStart,c=t.prevOffset,s=t.tokenStart,l=n?e.substr(c,n-c):e.substr(c);l&&(r.innerHTML+=l,r.innerContent.push(l)),null!==u&&o.push(a(e.substr(u,s-u))),o.push(r)}},35:function(n,t,r){"use strict";function e(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}r.d(t,"a",function(){return e})},36:function(n,t,r){"use strict";function e(n){if(Array.isArray(n))return n}r.d(t,"a",function(){return e})}});
\ No newline at end of file
this.wp=this.wp||{},this.wp.deprecated=function(t){var e={};function n(o){if(e[o])return e[o].exports;var c=e[o]={i:o,l:!1,exports:{}};return t[o].call(c.exports,c,c.exports,n),c.l=!0,c.exports}return n.m=t,n.c=e,n.d=function(t,e,o){n.o(t,e)||Object.defineProperty(t,e,{configurable:!1,enumerable:!0,get:o})},n.r=function(t){Object.defineProperty(t,"__esModule",{value:!0})},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=253)}({23:function(t,e){!function(){t.exports=this.wp.hooks}()},253:function(t,e,n){"use strict";n.r(e),n.d(e,"logged",function(){return c}),n.d(e,"default",function(){return r});var o=n(23),c=Object.create(null);function r(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=e.version,r=e.alternative,a=e.plugin,i=e.link,u=e.hint,l=a?" from ".concat(a):"",d=n?"".concat(l," in ").concat(n):"",s=r?" Please use ".concat(r," instead."):"",f=i?" See: ".concat(i):"",p=u?" Note: ".concat(u):"",v="".concat(t," is deprecated and will be removed").concat(d,".").concat(s).concat(f).concat(p);v in c||(Object(o.doAction)("deprecated",t,e,v),console.warn(v),c[v]=!0)}}}).default;
\ No newline at end of file
this.wp=this.wp||{},this.wp.deprecated=function(t){var e={};function n(o){if(e[o])return e[o].exports;var c=e[o]={i:o,l:!1,exports:{}};return t[o].call(c.exports,c,c.exports,n),c.l=!0,c.exports}return n.m=t,n.c=e,n.d=function(t,e,o){n.o(t,e)||Object.defineProperty(t,e,{configurable:!1,enumerable:!0,get:o})},n.r=function(t){Object.defineProperty(t,"__esModule",{value:!0})},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=256)}({23:function(t,e){!function(){t.exports=this.wp.hooks}()},256:function(t,e,n){"use strict";n.r(e),n.d(e,"logged",function(){return c}),n.d(e,"default",function(){return r});var o=n(23),c=Object.create(null);function r(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=e.version,r=e.alternative,a=e.plugin,i=e.link,u=e.hint,l=a?" from ".concat(a):"",d=n?"".concat(l," in ").concat(n):"",s=r?" Please use ".concat(r," instead."):"",f=i?" See: ".concat(i):"",p=u?" Note: ".concat(u):"",v="".concat(t," is deprecated and will be removed").concat(d,".").concat(s).concat(f).concat(p);v in c||(Object(o.doAction)("deprecated",t,e,v),console.warn(v),c[v]=!0)}}}).default;
\ No newline at end of file
this.wp=this.wp||{},this.wp.domReady=function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=252)}({252:function(e,t,n){"use strict";n.r(t);t.default=function(e){if("complete"===document.readyState||"interactive"===document.readyState)return e();document.addEventListener("DOMContentLoaded",e)}}}).default;
\ No newline at end of file
this.wp=this.wp||{},this.wp.domReady=function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.r=function(e){Object.defineProperty(e,"__esModule",{value:!0})},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=255)}({255:function(e,t,n){"use strict";n.r(t);t.default=function(e){if("complete"===document.readyState||"interactive"===document.readyState)return e();document.addEventListener("DOMContentLoaded",e)}}}).default;
\ No newline at end of file
@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes editor_region_focus{0%{box-shadow:inset 0 0 0 0 #33b3db}to{box-shadow:inset 0 0 0 4px #33b3db}}@keyframes rotation{0%{transform:rotate(0deg)}to{transform:rotate(-1turn)}}@keyframes modal-appear{0%{margin-top:32px}to{margin-top:0}}.editor-format-toolbar__link-container-content{display:flex}.editor-format-toolbar__link-container-value{flex-grow:1;flex-shrink:1;margin:7px;max-width:500px;min-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
\ No newline at end of file
@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes editor_region_focus{0%{box-shadow:inset 0 0 0 0 #33b3db}to{box-shadow:inset 0 0 0 4px #33b3db}}@keyframes rotation{0%{transform:rotate(0deg)}to{transform:rotate(-1turn)}}@keyframes modal-appear{0%{margin-top:32px}to{margin-top:0}}.editor-format-toolbar__link-container-content{display:flex}.editor-format-toolbar__link-container-value{flex-grow:1;flex-shrink:1;margin:7px;max-width:500px;min-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor-format-toolbar__link-container-value.has-invalid-link{color:#d94f4f}
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment