VK All in One Expansion Unit - Version 9.24.0.0

Version Description

  • [ Add function ] Add Reusable block menu
Download this release

Release Info

Developer kurudrive
Plugin Icon 128x128 VK All in One Expansion Unit
Version 9.24.0.0
Comparing to
See all releases

Code changes from version 9.22.1.0 to 9.24.0.0

.svnignore CHANGED
@@ -21,3 +21,4 @@ sftp-config*.json
21
  vkexunit.mo
22
  .travis.yml
23
  *.before
 
21
  vkexunit.mo
22
  .travis.yml
23
  *.before
24
+ composer.*
Dockerfile CHANGED
@@ -3,7 +3,9 @@ USER root
3
 
4
  RUN apk add --no-cache bash subversion
5
  RUN cd /opt/ && curl -sS https://getcomposer.org/installer | php
6
- RUN cd /opt && php /opt/composer.phar require --dev "phpunit/phpunit=7.5.9"
 
 
7
  ADD bin /var/www/html/bin
8
  RUN bash /var/www/html/bin/install-wp-tests.sh wordpress wordpress wordpress db latest true
9
 
3
 
4
  RUN apk add --no-cache bash subversion
5
  RUN cd /opt/ && curl -sS https://getcomposer.org/installer | php
6
+ ADD composer.json /opt/
7
+ ADD composer.lock /opt/
8
+ RUN cd /opt && php /opt/composer.phar install --dev
9
  ADD bin /var/www/html/bin
10
  RUN bash /var/www/html/bin/install-wp-tests.sh wordpress wordpress wordpress db latest true
11
 
admin/customizer.php CHANGED
@@ -111,8 +111,9 @@ function veu_customize_register_pagespeed( $wp_customize ) {
111
  )
112
  );
113
 
 
114
  $wp_customize->add_setting(
115
- 'vkExUnit_pagespeeding[common]',
116
  array(
117
  'default' => false,
118
  'type' => 'option',
@@ -121,14 +122,35 @@ function veu_customize_register_pagespeed( $wp_customize ) {
121
  )
122
  );
123
  $wp_customize->add_control(
124
- 'vkExUnit_pagespeeding[common]',
125
  array(
126
- 'label' => __( 'Enable speeding up', 'vk-all-in-one-expansion-unit' ),
127
  'section' => 'veu_speeding_setting',
128
- 'settings' => 'vkExUnit_pagespeeding[common]',
129
  'type' => 'checkbox',
130
  'description' => __( 'If you enable this setting that ExUnit\'s css file and css customize will be loaded from footer.', 'vk-all-in-one-expansion-unit' ),
131
  )
132
  );
133
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
134
  }
111
  )
112
  );
113
 
114
+ // CSS Footer Setting.
115
  $wp_customize->add_setting(
116
+ 'vkExUnit_pagespeeding[css_exunit]',
117
  array(
118
  'default' => false,
119
  'type' => 'option',
122
  )
123
  );
124
  $wp_customize->add_control(
125
+ 'vkExUnit_pagespeeding[css_exunit]',
126
  array(
127
+ 'label' => __( 'Load CSS from footer', 'vk-all-in-one-expansion-unit' ),
128
  'section' => 'veu_speeding_setting',
129
+ 'settings' => 'vkExUnit_pagespeeding[css_exunit]',
130
  'type' => 'checkbox',
131
  'description' => __( 'If you enable this setting that ExUnit\'s css file and css customize will be loaded from footer.', 'vk-all-in-one-expansion-unit' ),
132
  )
133
  );
134
 
135
+ // JS Footer Setting.
136
+ $wp_customize->add_setting(
137
+ 'vkExUnit_pagespeeding[js_footer]',
138
+ array(
139
+ 'default' => false,
140
+ 'type' => 'option',
141
+ 'capability' => 'edit_theme_options',
142
+ 'sanitize_callback' => 'veu_sanitize_boolean',
143
+ )
144
+ );
145
+ $wp_customize->add_control(
146
+ 'vkExUnit_pagespeeding[js_footer]',
147
+ array(
148
+ 'label' => __( 'Load JS from footer', 'vk-all-in-one-expansion-unit' ),
149
+ 'section' => 'veu_speeding_setting',
150
+ 'settings' => 'vkExUnit_pagespeeding[js_footer]',
151
+ 'type' => 'checkbox',
152
+ 'description' => __( 'If you enable this setting that JavaScript of ExUnit, WordPress, and more will be loaded from footer.', 'vk-all-in-one-expansion-unit' ),
153
+ )
154
+ );
155
+
156
  }
assets/js/all.min.js CHANGED
@@ -1 +1 @@
1
- "use strict";jQuery.changeLetterSize={handlers:[],interval:1e3,currentSize:0},function(t){function e(){o.appendTo("body");var t=o[0].offsetHeight;return o.remove(),n.currentSize!=t&&(n.currentSize=t,!0)}var n=t.changeLetterSize,o=t("<ins>M</ins>").css({display:"block",visibility:"hidden",position:"absolute",padding:"0",top:"0"});t(e);n.addHandler=function(t){n.handlers.push(t),n.handlers.length}}(jQuery),function(t){function e(t){var e=0;t.each(function(){var t=this.offsetHeight;e<t&&(e=t)}),t.css("height",e+"px")}var n=[];jQuery.fn.flatHeights=function(){return 1<this.length&&(e(this),n.push(this)),this};function o(){t.each(n,function(){this.height("auto"),e(this)})}t.changeLetterSize.addHandler(o),t(window).resize(o)}(jQuery),jQuery(document).ready(function(t){jQuery(".topPrTit a").flatHeights(),jQuery(".topPrDescription").flatHeights(),jQuery(".child_page_block h4 a").flatHeights()});var a=null;!function(t){t(function(){t(".prArea > .subSection-title").flatHeights(),t(".prArea > .summary").flatHeights()}),window.addEventListener("DOMContentLoaded",function(){t(".childPage_list_text").flatHeights()})}(jQuery),function(t,e){t.addEventListener("load",function(){var n=e.getElementsByClassName("veu_count_sns_hb");if(0!=n.length){var t=encodeURIComponent(location.href);fetch(vkExOpt.hatena_entry+t,{method:"GET"}).then(function(t){t.ok&&t.json().then(function(e){void 0!==e.count&&Array.prototype.forEach.call(n,function(t){return t.innerHTML=e.count})})}).catch(function(t){});var o=e.getElementsByClassName("veu_count_sns_fb");vkExOpt.facebook_count_enable&&fetch(vkExOpt.facebook_entry+t,{method:"GET"}).then(function(t){t.ok&&t.json().then(function(e){void 0!==e.count&&Array.prototype.forEach.call(o,function(t){return t.innerHTML=e.count})})}).catch(function(t){})}},!1)}(window,document),function(a,c){vkExOpt.enable_smooth_scroll&&a.addEventListener("load",function(){function n(t){for(var e=0;e<t.path.length&&!t.path[e].getAttribute("href");e++);var n=t.path[e].getAttribute("href");if(n&&!(0<["tab","button"].indexOf(t.path[e].getAttribute("role"))||t.path[e].getAttribute("data-toggle")||t.path[e].getAttribute("carousel-control"))){var o=0,i=c.getElementById(n.slice(1));if(i){var r=a.pageYOffset||c.documentElement.scrollTop;o=i.getBoundingClientRect().top+r}a.scrollTo({top:o,behavior:"smooth"}),t.preventDefault()}}Array.prototype.forEach.call(c.getElementsByTagName("a"),function(t){var e=t.getAttribute("href");e&&0==e.indexOf("#")&&t.addEventListener("click",n)})})}(window,document),function(t,e,n){t.addEventListener("scroll",function(){0<t.pageYOffset?e.body.classList.add(n):e.body.classList.remove(n)})}(window,document,"scrolled");
1
+ "use strict";jQuery.changeLetterSize={handlers:[],interval:1e3,currentSize:0},function(t){function e(){o.appendTo("body");var t=o[0].offsetHeight;return o.remove(),n.currentSize!=t&&(n.currentSize=t,!0)}var n=t.changeLetterSize,o=t("<ins>M</ins>").css({display:"block",visibility:"hidden",position:"absolute",padding:"0",top:"0"});t(e);n.addHandler=function(t){n.handlers.push(t),n.handlers.length}}(jQuery),function(t){function e(t){var e=0;t.each(function(){var t=this.offsetHeight;e<t&&(e=t)}),t.css("height",e+"px")}var n=[];jQuery.fn.flatHeights=function(){return 1<this.length&&(e(this),n.push(this)),this};function o(){t.each(n,function(){this.height("auto"),e(this)})}t.changeLetterSize.addHandler(o),t(window).resize(o)}(jQuery),jQuery(document).ready(function(t){jQuery(".topPrTit a").flatHeights(),jQuery(".topPrDescription").flatHeights(),jQuery(".child_page_block h4 a").flatHeights()});var a=null;!function(t){t(function(){t(".prArea > .subSection-title").flatHeights(),t(".prArea > .summary").flatHeights()}),window.addEventListener("DOMContentLoaded",function(){t(".childPage_list_text").flatHeights()})}(jQuery),function(t,e){t.addEventListener("load",function(){var n=e.getElementsByClassName("veu_count_sns_hb");if(0!=n.length){var t=encodeURIComponent(location.href);fetch(vkExOpt.hatena_entry+t,{method:"GET"}).then(function(t){t.ok&&t.json().then(function(e){void 0!==e.count&&Array.prototype.forEach.call(n,function(t){return t.innerHTML=e.count})})}).catch(function(t){});var o=e.getElementsByClassName("veu_count_sns_fb");vkExOpt.facebook_count_enable&&fetch(vkExOpt.facebook_entry+t,{method:"GET"}).then(function(t){t.ok&&t.json().then(function(e){void 0!==e.count&&Array.prototype.forEach.call(o,function(t){return t.innerHTML=e.count})})}).catch(function(t){})}},!1)}(window,document),function(a,c){vkExOpt.enable_smooth_scroll&&a.addEventListener("load",function(){function n(t){for(var e=0;e<t.path.length&&!t.path[e].getAttribute("href");e++);var n=t.path[e].getAttribute("href");if(n&&!(0<["tab","button"].indexOf(t.path[e].getAttribute("role"))||t.path[e].getAttribute("data-toggle")||t.path[e].getAttribute("carousel-control"))){var o=0,i=c.getElementById(n.slice(1));if(i){var r=a.pageYOffset||c.documentElement.scrollTop;o=i.getBoundingClientRect().top+r}a.scrollTo({top:o,behavior:"smooth"}),t.preventDefault()}}Array.prototype.forEach.call(c.getElementsByTagName("a"),function(t){var e=t.getAttribute("href");e&&0==e.indexOf("#")&&"#"!==e&&t.addEventListener("click",n)})})}(window,document),function(t,e,n){t.addEventListener("scroll",function(){0<t.pageYOffset?e.body.classList.add(n):e.body.classList.remove(n)})}(window,document,"scrolled");
bin/dist CHANGED
@@ -4,20 +4,19 @@ set -ex
4
 
5
  PLUGIN_NAME='vk-all-in-one-expansion-unit'
6
  PLUGIN_DIR=$(cd $(dirname $(dirname $0)); pwd)
7
- CURRENT_VERSION=$(cat vkExUnit.php|grep -i version|head -n 1|sed -E 's/^[ *]*Version: *([^ ]*) *$/\1/i')
8
 
9
- dist_dir=${PLUGIN_DIR}/dist
10
- src_dir=${dist_dir}/${PLUGIN_NAME}
 
11
 
12
- ZIPBALL=${dist_dir}/${PLUGIN_NAME}_v${CURRENT_VERSION}.zip
 
13
 
14
- [[ -e ${dist_dir} ]] || mkdir ${dist_dir}
15
- [[ -e "${ZIPBALL}" ]] && rm -r ${ZIPBALL}
16
 
17
- rsync -av ${PLUGIN_DIR}/ ${src_dir}/ --exclude="dist/" --exclude-from='.svnignore'
18
 
19
- cd ${dist_dir}
20
 
21
- zip -r ${ZIPBALL} ${PLUGIN_NAME}/
22
-
23
- exit 0
4
 
5
  PLUGIN_NAME='vk-all-in-one-expansion-unit'
6
  PLUGIN_DIR=$(cd $(dirname $(dirname $0)); pwd)
7
+ CURRENT_VERSION=$(cat "${PLUGIN_DIR}/vkExUnit.php"|grep -i 'version *:'|head -n 1|sed -E 's/^[ *]*Version: *([^ ]*) *$/\1/i')
8
 
9
+ dist_dir="${PLUGIN_DIR}/dist"
10
+ src_dir="${dist_dir}/${PLUGIN_NAME}"
11
+ ZIPBALL="${dist_dir}/${PLUGIN_NAME}_v${CURRENT_VERSION}.zip"
12
 
13
+ [[ -e "${dist_dir}" ]] || mkdir "${dist_dir}"
14
+ [[ -e "${ZIPBALL}" ]] && rm -r "${ZIPBALL}"
15
 
16
+ rsync -av "${PLUGIN_DIR}/" "${src_dir}/" --exclude="dist/" --exclude-from='.svnignore'
 
17
 
18
+ cd "${dist_dir}"
19
 
20
+ zip -r "${ZIPBALL}" "${PLUGIN_NAME}/"
21
 
22
+ exit 0
 
 
composer.json ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "vektor-inc/vk-all-in-one-expansion-unit",
3
+ "type": "project",
4
+ "require-dev": {
5
+ "phpunit/phpunit": "7.5.9"
6
+ },
7
+ "authors": [
8
+ {
9
+ "name": "Vektor-inc",
10
+ "email": "info@vektor-inc.co.jp"
11
+ }
12
+ ],
13
+ "require": {}
14
+ }
composer.lock ADDED
@@ -0,0 +1,1483 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_readme": [
3
+ "This file locks the dependencies of your project to a known state",
4
+ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
5
+ "This file is @generated automatically"
6
+ ],
7
+ "content-hash": "8e637300ea64d7e9697c7460b65865e0",
8
+ "packages": [],
9
+ "packages-dev": [
10
+ {
11
+ "name": "doctrine/instantiator",
12
+ "version": "1.3.1",
13
+ "source": {
14
+ "type": "git",
15
+ "url": "https://github.com/doctrine/instantiator.git",
16
+ "reference": "f350df0268e904597e3bd9c4685c53e0e333feea"
17
+ },
18
+ "dist": {
19
+ "type": "zip",
20
+ "url": "https://api.github.com/repos/doctrine/instantiator/zipball/f350df0268e904597e3bd9c4685c53e0e333feea",
21
+ "reference": "f350df0268e904597e3bd9c4685c53e0e333feea",
22
+ "shasum": ""
23
+ },
24
+ "require": {
25
+ "php": "^7.1 || ^8.0"
26
+ },
27
+ "require-dev": {
28
+ "doctrine/coding-standard": "^6.0",
29
+ "ext-pdo": "*",
30
+ "ext-phar": "*",
31
+ "phpbench/phpbench": "^0.13",
32
+ "phpstan/phpstan-phpunit": "^0.11",
33
+ "phpstan/phpstan-shim": "^0.11",
34
+ "phpunit/phpunit": "^7.0"
35
+ },
36
+ "type": "library",
37
+ "extra": {
38
+ "branch-alias": {
39
+ "dev-master": "1.2.x-dev"
40
+ }
41
+ },
42
+ "autoload": {
43
+ "psr-4": {
44
+ "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
45
+ }
46
+ },
47
+ "notification-url": "https://packagist.org/downloads/",
48
+ "license": [
49
+ "MIT"
50
+ ],
51
+ "authors": [
52
+ {
53
+ "name": "Marco Pivetta",
54
+ "email": "ocramius@gmail.com",
55
+ "homepage": "http://ocramius.github.com/"
56
+ }
57
+ ],
58
+ "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
59
+ "homepage": "https://www.doctrine-project.org/projects/instantiator.html",
60
+ "keywords": [
61
+ "constructor",
62
+ "instantiate"
63
+ ],
64
+ "time": "2020-05-29T17:27:14+00:00"
65
+ },
66
+ {
67
+ "name": "myclabs/deep-copy",
68
+ "version": "1.9.5",
69
+ "source": {
70
+ "type": "git",
71
+ "url": "https://github.com/myclabs/DeepCopy.git",
72
+ "reference": "b2c28789e80a97badd14145fda39b545d83ca3ef"
73
+ },
74
+ "dist": {
75
+ "type": "zip",
76
+ "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/b2c28789e80a97badd14145fda39b545d83ca3ef",
77
+ "reference": "b2c28789e80a97badd14145fda39b545d83ca3ef",
78
+ "shasum": ""
79
+ },
80
+ "require": {
81
+ "php": "^7.1"
82
+ },
83
+ "replace": {
84
+ "myclabs/deep-copy": "self.version"
85
+ },
86
+ "require-dev": {
87
+ "doctrine/collections": "^1.0",
88
+ "doctrine/common": "^2.6",
89
+ "phpunit/phpunit": "^7.1"
90
+ },
91
+ "type": "library",
92
+ "autoload": {
93
+ "psr-4": {
94
+ "DeepCopy\\": "src/DeepCopy/"
95
+ },
96
+ "files": [
97
+ "src/DeepCopy/deep_copy.php"
98
+ ]
99
+ },
100
+ "notification-url": "https://packagist.org/downloads/",
101
+ "license": [
102
+ "MIT"
103
+ ],
104
+ "description": "Create deep copies (clones) of your objects",
105
+ "keywords": [
106
+ "clone",
107
+ "copy",
108
+ "duplicate",
109
+ "object",
110
+ "object graph"
111
+ ],
112
+ "time": "2020-01-17T21:11:47+00:00"
113
+ },
114
+ {
115
+ "name": "phar-io/manifest",
116
+ "version": "1.0.3",
117
+ "source": {
118
+ "type": "git",
119
+ "url": "https://github.com/phar-io/manifest.git",
120
+ "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4"
121
+ },
122
+ "dist": {
123
+ "type": "zip",
124
+ "url": "https://api.github.com/repos/phar-io/manifest/zipball/7761fcacf03b4d4f16e7ccb606d4879ca431fcf4",
125
+ "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4",
126
+ "shasum": ""
127
+ },
128
+ "require": {
129
+ "ext-dom": "*",
130
+ "ext-phar": "*",
131
+ "phar-io/version": "^2.0",
132
+ "php": "^5.6 || ^7.0"
133
+ },
134
+ "type": "library",
135
+ "extra": {
136
+ "branch-alias": {
137
+ "dev-master": "1.0.x-dev"
138
+ }
139
+ },
140
+ "autoload": {
141
+ "classmap": [
142
+ "src/"
143
+ ]
144
+ },
145
+ "notification-url": "https://packagist.org/downloads/",
146
+ "license": [
147
+ "BSD-3-Clause"
148
+ ],
149
+ "authors": [
150
+ {
151
+ "name": "Arne Blankerts",
152
+ "email": "arne@blankerts.de",
153
+ "role": "Developer"
154
+ },
155
+ {
156
+ "name": "Sebastian Heuer",
157
+ "email": "sebastian@phpeople.de",
158
+ "role": "Developer"
159
+ },
160
+ {
161
+ "name": "Sebastian Bergmann",
162
+ "email": "sebastian@phpunit.de",
163
+ "role": "Developer"
164
+ }
165
+ ],
166
+ "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)",
167
+ "time": "2018-07-08T19:23:20+00:00"
168
+ },
169
+ {
170
+ "name": "phar-io/version",
171
+ "version": "2.0.1",
172
+ "source": {
173
+ "type": "git",
174
+ "url": "https://github.com/phar-io/version.git",
175
+ "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6"
176
+ },
177
+ "dist": {
178
+ "type": "zip",
179
+ "url": "https://api.github.com/repos/phar-io/version/zipball/45a2ec53a73c70ce41d55cedef9063630abaf1b6",
180
+ "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6",
181
+ "shasum": ""
182
+ },
183
+ "require": {
184
+ "php": "^5.6 || ^7.0"
185
+ },
186
+ "type": "library",
187
+ "autoload": {
188
+ "classmap": [
189
+ "src/"
190
+ ]
191
+ },
192
+ "notification-url": "https://packagist.org/downloads/",
193
+ "license": [
194
+ "BSD-3-Clause"
195
+ ],
196
+ "authors": [
197
+ {
198
+ "name": "Arne Blankerts",
199
+ "email": "arne@blankerts.de",
200
+ "role": "Developer"
201
+ },
202
+ {
203
+ "name": "Sebastian Heuer",
204
+ "email": "sebastian@phpeople.de",
205
+ "role": "Developer"
206
+ },
207
+ {
208
+ "name": "Sebastian Bergmann",
209
+ "email": "sebastian@phpunit.de",
210
+ "role": "Developer"
211
+ }
212
+ ],
213
+ "description": "Library for handling version information and constraints",
214
+ "time": "2018-07-08T19:19:57+00:00"
215
+ },
216
+ {
217
+ "name": "phpdocumentor/reflection-common",
218
+ "version": "2.1.0",
219
+ "source": {
220
+ "type": "git",
221
+ "url": "https://github.com/phpDocumentor/ReflectionCommon.git",
222
+ "reference": "6568f4687e5b41b054365f9ae03fcb1ed5f2069b"
223
+ },
224
+ "dist": {
225
+ "type": "zip",
226
+ "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/6568f4687e5b41b054365f9ae03fcb1ed5f2069b",
227
+ "reference": "6568f4687e5b41b054365f9ae03fcb1ed5f2069b",
228
+ "shasum": ""
229
+ },
230
+ "require": {
231
+ "php": ">=7.1"
232
+ },
233
+ "type": "library",
234
+ "extra": {
235
+ "branch-alias": {
236
+ "dev-master": "2.x-dev"
237
+ }
238
+ },
239
+ "autoload": {
240
+ "psr-4": {
241
+ "phpDocumentor\\Reflection\\": "src/"
242
+ }
243
+ },
244
+ "notification-url": "https://packagist.org/downloads/",
245
+ "license": [
246
+ "MIT"
247
+ ],
248
+ "authors": [
249
+ {
250
+ "name": "Jaap van Otterdijk",
251
+ "email": "opensource@ijaap.nl"
252
+ }
253
+ ],
254
+ "description": "Common reflection classes used by phpdocumentor to reflect the code structure",
255
+ "homepage": "http://www.phpdoc.org",
256
+ "keywords": [
257
+ "FQSEN",
258
+ "phpDocumentor",
259
+ "phpdoc",
260
+ "reflection",
261
+ "static analysis"
262
+ ],
263
+ "time": "2020-04-27T09:25:28+00:00"
264
+ },
265
+ {
266
+ "name": "phpdocumentor/reflection-docblock",
267
+ "version": "5.1.0",
268
+ "source": {
269
+ "type": "git",
270
+ "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
271
+ "reference": "cd72d394ca794d3466a3b2fc09d5a6c1dc86b47e"
272
+ },
273
+ "dist": {
274
+ "type": "zip",
275
+ "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/cd72d394ca794d3466a3b2fc09d5a6c1dc86b47e",
276
+ "reference": "cd72d394ca794d3466a3b2fc09d5a6c1dc86b47e",
277
+ "shasum": ""
278
+ },
279
+ "require": {
280
+ "ext-filter": "^7.1",
281
+ "php": "^7.2",
282
+ "phpdocumentor/reflection-common": "^2.0",
283
+ "phpdocumentor/type-resolver": "^1.0",
284
+ "webmozart/assert": "^1"
285
+ },
286
+ "require-dev": {
287
+ "doctrine/instantiator": "^1",
288
+ "mockery/mockery": "^1"
289
+ },
290
+ "type": "library",
291
+ "extra": {
292
+ "branch-alias": {
293
+ "dev-master": "5.x-dev"
294
+ }
295
+ },
296
+ "autoload": {
297
+ "psr-4": {
298
+ "phpDocumentor\\Reflection\\": "src"
299
+ }
300
+ },
301
+ "notification-url": "https://packagist.org/downloads/",
302
+ "license": [
303
+ "MIT"
304
+ ],
305
+ "authors": [
306
+ {
307
+ "name": "Mike van Riel",
308
+ "email": "me@mikevanriel.com"
309
+ },
310
+ {
311
+ "name": "Jaap van Otterdijk",
312
+ "email": "account@ijaap.nl"
313
+ }
314
+ ],
315
+ "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
316
+ "time": "2020-02-22T12:28:44+00:00"
317
+ },
318
+ {
319
+ "name": "phpdocumentor/type-resolver",
320
+ "version": "1.1.0",
321
+ "source": {
322
+ "type": "git",
323
+ "url": "https://github.com/phpDocumentor/TypeResolver.git",
324
+ "reference": "7462d5f123dfc080dfdf26897032a6513644fc95"
325
+ },
326
+ "dist": {
327
+ "type": "zip",
328
+ "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/7462d5f123dfc080dfdf26897032a6513644fc95",
329
+ "reference": "7462d5f123dfc080dfdf26897032a6513644fc95",
330
+ "shasum": ""
331
+ },
332
+ "require": {
333
+ "php": "^7.2",
334
+ "phpdocumentor/reflection-common": "^2.0"
335
+ },
336
+ "require-dev": {
337
+ "ext-tokenizer": "^7.2",
338
+ "mockery/mockery": "~1"
339
+ },
340
+ "type": "library",
341
+ "extra": {
342
+ "branch-alias": {
343
+ "dev-master": "1.x-dev"
344
+ }
345
+ },
346
+ "autoload": {
347
+ "psr-4": {
348
+ "phpDocumentor\\Reflection\\": "src"
349
+ }
350
+ },
351
+ "notification-url": "https://packagist.org/downloads/",
352
+ "license": [
353
+ "MIT"
354
+ ],
355
+ "authors": [
356
+ {
357
+ "name": "Mike van Riel",
358
+ "email": "me@mikevanriel.com"
359
+ }
360
+ ],
361
+ "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names",
362
+ "time": "2020-02-18T18:59:58+00:00"
363
+ },
364
+ {
365
+ "name": "phpspec/prophecy",
366
+ "version": "v1.10.3",
367
+ "source": {
368
+ "type": "git",
369
+ "url": "https://github.com/phpspec/prophecy.git",
370
+ "reference": "451c3cd1418cf640de218914901e51b064abb093"
371
+ },
372
+ "dist": {
373
+ "type": "zip",
374
+ "url": "https://api.github.com/repos/phpspec/prophecy/zipball/451c3cd1418cf640de218914901e51b064abb093",
375
+ "reference": "451c3cd1418cf640de218914901e51b064abb093",
376
+ "shasum": ""
377
+ },
378
+ "require": {
379
+ "doctrine/instantiator": "^1.0.2",
380
+ "php": "^5.3|^7.0",
381
+ "phpdocumentor/reflection-docblock": "^2.0|^3.0.2|^4.0|^5.0",
382
+ "sebastian/comparator": "^1.2.3|^2.0|^3.0|^4.0",
383
+ "sebastian/recursion-context": "^1.0|^2.0|^3.0|^4.0"
384
+ },
385
+ "require-dev": {
386
+ "phpspec/phpspec": "^2.5 || ^3.2",
387
+ "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.5 || ^7.1"
388
+ },
389
+ "type": "library",
390
+ "extra": {
391
+ "branch-alias": {
392
+ "dev-master": "1.10.x-dev"
393
+ }
394
+ },
395
+ "autoload": {
396
+ "psr-4": {
397
+ "Prophecy\\": "src/Prophecy"
398
+ }
399
+ },
400
+ "notification-url": "https://packagist.org/downloads/",
401
+ "license": [
402
+ "MIT"
403
+ ],
404
+ "authors": [
405
+ {
406
+ "name": "Konstantin Kudryashov",
407
+ "email": "ever.zet@gmail.com",
408
+ "homepage": "http://everzet.com"
409
+ },
410
+ {
411
+ "name": "Marcello Duarte",
412
+ "email": "marcello.duarte@gmail.com"
413
+ }
414
+ ],
415
+ "description": "Highly opinionated mocking framework for PHP 5.3+",
416
+ "homepage": "https://github.com/phpspec/prophecy",
417
+ "keywords": [
418
+ "Double",
419
+ "Dummy",
420
+ "fake",
421
+ "mock",
422
+ "spy",
423
+ "stub"
424
+ ],
425
+ "time": "2020-03-05T15:02:03+00:00"
426
+ },
427
+ {
428
+ "name": "phpunit/php-code-coverage",
429
+ "version": "6.1.4",
430
+ "source": {
431
+ "type": "git",
432
+ "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
433
+ "reference": "807e6013b00af69b6c5d9ceb4282d0393dbb9d8d"
434
+ },
435
+ "dist": {
436
+ "type": "zip",
437
+ "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/807e6013b00af69b6c5d9ceb4282d0393dbb9d8d",
438
+ "reference": "807e6013b00af69b6c5d9ceb4282d0393dbb9d8d",
439
+ "shasum": ""
440
+ },
441
+ "require": {
442
+ "ext-dom": "*",
443
+ "ext-xmlwriter": "*",
444
+ "php": "^7.1",
445
+ "phpunit/php-file-iterator": "^2.0",
446
+ "phpunit/php-text-template": "^1.2.1",
447
+ "phpunit/php-token-stream": "^3.0",
448
+ "sebastian/code-unit-reverse-lookup": "^1.0.1",
449
+ "sebastian/environment": "^3.1 || ^4.0",
450
+ "sebastian/version": "^2.0.1",
451
+ "theseer/tokenizer": "^1.1"
452
+ },
453
+ "require-dev": {
454
+ "phpunit/phpunit": "^7.0"
455
+ },
456
+ "suggest": {
457
+ "ext-xdebug": "^2.6.0"
458
+ },
459
+ "type": "library",
460
+ "extra": {
461
+ "branch-alias": {
462
+ "dev-master": "6.1-dev"
463
+ }
464
+ },
465
+ "autoload": {
466
+ "classmap": [
467
+ "src/"
468
+ ]
469
+ },
470
+ "notification-url": "https://packagist.org/downloads/",
471
+ "license": [
472
+ "BSD-3-Clause"
473
+ ],
474
+ "authors": [
475
+ {
476
+ "name": "Sebastian Bergmann",
477
+ "email": "sebastian@phpunit.de",
478
+ "role": "lead"
479
+ }
480
+ ],
481
+ "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
482
+ "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
483
+ "keywords": [
484
+ "coverage",
485
+ "testing",
486
+ "xunit"
487
+ ],
488
+ "time": "2018-10-31T16:06:48+00:00"
489
+ },
490
+ {
491
+ "name": "phpunit/php-file-iterator",
492
+ "version": "2.0.2",
493
+ "source": {
494
+ "type": "git",
495
+ "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
496
+ "reference": "050bedf145a257b1ff02746c31894800e5122946"
497
+ },
498
+ "dist": {
499
+ "type": "zip",
500
+ "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/050bedf145a257b1ff02746c31894800e5122946",
501
+ "reference": "050bedf145a257b1ff02746c31894800e5122946",
502
+ "shasum": ""
503
+ },
504
+ "require": {
505
+ "php": "^7.1"
506
+ },
507
+ "require-dev": {
508
+ "phpunit/phpunit": "^7.1"
509
+ },
510
+ "type": "library",
511
+ "extra": {
512
+ "branch-alias": {
513
+ "dev-master": "2.0.x-dev"
514
+ }
515
+ },
516
+ "autoload": {
517
+ "classmap": [
518
+ "src/"
519
+ ]
520
+ },
521
+ "notification-url": "https://packagist.org/downloads/",
522
+ "license": [
523
+ "BSD-3-Clause"
524
+ ],
525
+ "authors": [
526
+ {
527
+ "name": "Sebastian Bergmann",
528
+ "email": "sebastian@phpunit.de",
529
+ "role": "lead"
530
+ }
531
+ ],
532
+ "description": "FilterIterator implementation that filters files based on a list of suffixes.",
533
+ "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
534
+ "keywords": [
535
+ "filesystem",
536
+ "iterator"
537
+ ],
538
+ "time": "2018-09-13T20:33:42+00:00"
539
+ },
540
+ {
541
+ "name": "phpunit/php-text-template",
542
+ "version": "1.2.1",
543
+ "source": {
544
+ "type": "git",
545
+ "url": "https://github.com/sebastianbergmann/php-text-template.git",
546
+ "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686"
547
+ },
548
+ "dist": {
549
+ "type": "zip",
550
+ "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
551
+ "reference": "31f8b717e51d9a2afca6c9f046f5d69fc27c8686",
552
+ "shasum": ""
553
+ },
554
+ "require": {
555
+ "php": ">=5.3.3"
556
+ },
557
+ "type": "library",
558
+ "autoload": {
559
+ "classmap": [
560
+ "src/"
561
+ ]
562
+ },
563
+ "notification-url": "https://packagist.org/downloads/",
564
+ "license": [
565
+ "BSD-3-Clause"
566
+ ],
567
+ "authors": [
568
+ {
569
+ "name": "Sebastian Bergmann",
570
+ "email": "sebastian@phpunit.de",
571
+ "role": "lead"
572
+ }
573
+ ],
574
+ "description": "Simple template engine.",
575
+ "homepage": "https://github.com/sebastianbergmann/php-text-template/",
576
+ "keywords": [
577
+ "template"
578
+ ],
579
+ "time": "2015-06-21T13:50:34+00:00"
580
+ },
581
+ {
582
+ "name": "phpunit/php-timer",
583
+ "version": "2.1.2",
584
+ "source": {
585
+ "type": "git",
586
+ "url": "https://github.com/sebastianbergmann/php-timer.git",
587
+ "reference": "1038454804406b0b5f5f520358e78c1c2f71501e"
588
+ },
589
+ "dist": {
590
+ "type": "zip",
591
+ "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/1038454804406b0b5f5f520358e78c1c2f71501e",
592
+ "reference": "1038454804406b0b5f5f520358e78c1c2f71501e",
593
+ "shasum": ""
594
+ },
595
+ "require": {
596
+ "php": "^7.1"
597
+ },
598
+ "require-dev": {
599
+ "phpunit/phpunit": "^7.0"
600
+ },
601
+ "type": "library",
602
+ "extra": {
603
+ "branch-alias": {
604
+ "dev-master": "2.1-dev"
605
+ }
606
+ },
607
+ "autoload": {
608
+ "classmap": [
609
+ "src/"
610
+ ]
611
+ },
612
+ "notification-url": "https://packagist.org/downloads/",
613
+ "license": [
614
+ "BSD-3-Clause"
615
+ ],
616
+ "authors": [
617
+ {
618
+ "name": "Sebastian Bergmann",
619
+ "email": "sebastian@phpunit.de",
620
+ "role": "lead"
621
+ }
622
+ ],
623
+ "description": "Utility class for timing",
624
+ "homepage": "https://github.com/sebastianbergmann/php-timer/",
625
+ "keywords": [
626
+ "timer"
627
+ ],
628
+ "time": "2019-06-07T04:22:29+00:00"
629
+ },
630
+ {
631
+ "name": "phpunit/php-token-stream",
632
+ "version": "3.1.1",
633
+ "source": {
634
+ "type": "git",
635
+ "url": "https://github.com/sebastianbergmann/php-token-stream.git",
636
+ "reference": "995192df77f63a59e47f025390d2d1fdf8f425ff"
637
+ },
638
+ "dist": {
639
+ "type": "zip",
640
+ "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/995192df77f63a59e47f025390d2d1fdf8f425ff",
641
+ "reference": "995192df77f63a59e47f025390d2d1fdf8f425ff",
642
+ "shasum": ""
643
+ },
644
+ "require": {
645
+ "ext-tokenizer": "*",
646
+ "php": "^7.1"
647
+ },
648
+ "require-dev": {
649
+ "phpunit/phpunit": "^7.0"
650
+ },
651
+ "type": "library",
652
+ "extra": {
653
+ "branch-alias": {
654
+ "dev-master": "3.1-dev"
655
+ }
656
+ },
657
+ "autoload": {
658
+ "classmap": [
659
+ "src/"
660
+ ]
661
+ },
662
+ "notification-url": "https://packagist.org/downloads/",
663
+ "license": [
664
+ "BSD-3-Clause"
665
+ ],
666
+ "authors": [
667
+ {
668
+ "name": "Sebastian Bergmann",
669
+ "email": "sebastian@phpunit.de"
670
+ }
671
+ ],
672
+ "description": "Wrapper around PHP's tokenizer extension.",
673
+ "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
674
+ "keywords": [
675
+ "tokenizer"
676
+ ],
677
+ "time": "2019-09-17T06:23:10+00:00"
678
+ },
679
+ {
680
+ "name": "phpunit/phpunit",
681
+ "version": "7.5.9",
682
+ "source": {
683
+ "type": "git",
684
+ "url": "https://github.com/sebastianbergmann/phpunit.git",
685
+ "reference": "134669cf0eeac3f79bc7f0c793efbc158bffc160"
686
+ },
687
+ "dist": {
688
+ "type": "zip",
689
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/134669cf0eeac3f79bc7f0c793efbc158bffc160",
690
+ "reference": "134669cf0eeac3f79bc7f0c793efbc158bffc160",
691
+ "shasum": ""
692
+ },
693
+ "require": {
694
+ "doctrine/instantiator": "^1.1",
695
+ "ext-dom": "*",
696
+ "ext-json": "*",
697
+ "ext-libxml": "*",
698
+ "ext-mbstring": "*",
699
+ "ext-xml": "*",
700
+ "myclabs/deep-copy": "^1.7",
701
+ "phar-io/manifest": "^1.0.2",
702
+ "phar-io/version": "^2.0",
703
+ "php": "^7.1",
704
+ "phpspec/prophecy": "^1.7",
705
+ "phpunit/php-code-coverage": "^6.0.7",
706
+ "phpunit/php-file-iterator": "^2.0.1",
707
+ "phpunit/php-text-template": "^1.2.1",
708
+ "phpunit/php-timer": "^2.1",
709
+ "sebastian/comparator": "^3.0",
710
+ "sebastian/diff": "^3.0",
711
+ "sebastian/environment": "^4.0",
712
+ "sebastian/exporter": "^3.1",
713
+ "sebastian/global-state": "^2.0",
714
+ "sebastian/object-enumerator": "^3.0.3",
715
+ "sebastian/resource-operations": "^2.0",
716
+ "sebastian/version": "^2.0.1"
717
+ },
718
+ "conflict": {
719
+ "phpunit/phpunit-mock-objects": "*"
720
+ },
721
+ "require-dev": {
722
+ "ext-pdo": "*"
723
+ },
724
+ "suggest": {
725
+ "ext-soap": "*",
726
+ "ext-xdebug": "*",
727
+ "phpunit/php-invoker": "^2.0"
728
+ },
729
+ "bin": [
730
+ "phpunit"
731
+ ],
732
+ "type": "library",
733
+ "extra": {
734
+ "branch-alias": {
735
+ "dev-master": "7.5-dev"
736
+ }
737
+ },
738
+ "autoload": {
739
+ "classmap": [
740
+ "src/"
741
+ ]
742
+ },
743
+ "notification-url": "https://packagist.org/downloads/",
744
+ "license": [
745
+ "BSD-3-Clause"
746
+ ],
747
+ "authors": [
748
+ {
749
+ "name": "Sebastian Bergmann",
750
+ "email": "sebastian@phpunit.de",
751
+ "role": "lead"
752
+ }
753
+ ],
754
+ "description": "The PHP Unit Testing framework.",
755
+ "homepage": "https://phpunit.de/",
756
+ "keywords": [
757
+ "phpunit",
758
+ "testing",
759
+ "xunit"
760
+ ],
761
+ "time": "2019-04-19T15:50:46+00:00"
762
+ },
763
+ {
764
+ "name": "sebastian/code-unit-reverse-lookup",
765
+ "version": "1.0.1",
766
+ "source": {
767
+ "type": "git",
768
+ "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
769
+ "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18"
770
+ },
771
+ "dist": {
772
+ "type": "zip",
773
+ "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/4419fcdb5eabb9caa61a27c7a1db532a6b55dd18",
774
+ "reference": "4419fcdb5eabb9caa61a27c7a1db532a6b55dd18",
775
+ "shasum": ""
776
+ },
777
+ "require": {
778
+ "php": "^5.6 || ^7.0"
779
+ },
780
+ "require-dev": {
781
+ "phpunit/phpunit": "^5.7 || ^6.0"
782
+ },
783
+ "type": "library",
784
+ "extra": {
785
+ "branch-alias": {
786
+ "dev-master": "1.0.x-dev"
787
+ }
788
+ },
789
+ "autoload": {
790
+ "classmap": [
791
+ "src/"
792
+ ]
793
+ },
794
+ "notification-url": "https://packagist.org/downloads/",
795
+ "license": [
796
+ "BSD-3-Clause"
797
+ ],
798
+ "authors": [
799
+ {
800
+ "name": "Sebastian Bergmann",
801
+ "email": "sebastian@phpunit.de"
802
+ }
803
+ ],
804
+ "description": "Looks up which function or method a line of code belongs to",
805
+ "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/",
806
+ "time": "2017-03-04T06:30:41+00:00"
807
+ },
808
+ {
809
+ "name": "sebastian/comparator",
810
+ "version": "3.0.2",
811
+ "source": {
812
+ "type": "git",
813
+ "url": "https://github.com/sebastianbergmann/comparator.git",
814
+ "reference": "5de4fc177adf9bce8df98d8d141a7559d7ccf6da"
815
+ },
816
+ "dist": {
817
+ "type": "zip",
818
+ "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/5de4fc177adf9bce8df98d8d141a7559d7ccf6da",
819
+ "reference": "5de4fc177adf9bce8df98d8d141a7559d7ccf6da",
820
+ "shasum": ""
821
+ },
822
+ "require": {
823
+ "php": "^7.1",
824
+ "sebastian/diff": "^3.0",
825
+ "sebastian/exporter": "^3.1"
826
+ },
827
+ "require-dev": {
828
+ "phpunit/phpunit": "^7.1"
829
+ },
830
+ "type": "library",
831
+ "extra": {
832
+ "branch-alias": {
833
+ "dev-master": "3.0-dev"
834
+ }
835
+ },
836
+ "autoload": {
837
+ "classmap": [
838
+ "src/"
839
+ ]
840
+ },
841
+ "notification-url": "https://packagist.org/downloads/",
842
+ "license": [
843
+ "BSD-3-Clause"
844
+ ],
845
+ "authors": [
846
+ {
847
+ "name": "Jeff Welch",
848
+ "email": "whatthejeff@gmail.com"
849
+ },
850
+ {
851
+ "name": "Volker Dusch",
852
+ "email": "github@wallbash.com"
853
+ },
854
+ {
855
+ "name": "Bernhard Schussek",
856
+ "email": "bschussek@2bepublished.at"
857
+ },
858
+ {
859
+ "name": "Sebastian Bergmann",
860
+ "email": "sebastian@phpunit.de"
861
+ }
862
+ ],
863
+ "description": "Provides the functionality to compare PHP values for equality",
864
+ "homepage": "https://github.com/sebastianbergmann/comparator",
865
+ "keywords": [
866
+ "comparator",
867
+ "compare",
868
+ "equality"
869
+ ],
870
+ "time": "2018-07-12T15:12:46+00:00"
871
+ },
872
+ {
873
+ "name": "sebastian/diff",
874
+ "version": "3.0.2",
875
+ "source": {
876
+ "type": "git",
877
+ "url": "https://github.com/sebastianbergmann/diff.git",
878
+ "reference": "720fcc7e9b5cf384ea68d9d930d480907a0c1a29"
879
+ },
880
+ "dist": {
881
+ "type": "zip",
882
+ "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/720fcc7e9b5cf384ea68d9d930d480907a0c1a29",
883
+ "reference": "720fcc7e9b5cf384ea68d9d930d480907a0c1a29",
884
+ "shasum": ""
885
+ },
886
+ "require": {
887
+ "php": "^7.1"
888
+ },
889
+ "require-dev": {
890
+ "phpunit/phpunit": "^7.5 || ^8.0",
891
+ "symfony/process": "^2 || ^3.3 || ^4"
892
+ },
893
+ "type": "library",
894
+ "extra": {
895
+ "branch-alias": {
896
+ "dev-master": "3.0-dev"
897
+ }
898
+ },
899
+ "autoload": {
900
+ "classmap": [
901
+ "src/"
902
+ ]
903
+ },
904
+ "notification-url": "https://packagist.org/downloads/",
905
+ "license": [
906
+ "BSD-3-Clause"
907
+ ],
908
+ "authors": [
909
+ {
910
+ "name": "Kore Nordmann",
911
+ "email": "mail@kore-nordmann.de"
912
+ },
913
+ {
914
+ "name": "Sebastian Bergmann",
915
+ "email": "sebastian@phpunit.de"
916
+ }
917
+ ],
918
+ "description": "Diff implementation",
919
+ "homepage": "https://github.com/sebastianbergmann/diff",
920
+ "keywords": [
921
+ "diff",
922
+ "udiff",
923
+ "unidiff",
924
+ "unified diff"
925
+ ],
926
+ "time": "2019-02-04T06:01:07+00:00"
927
+ },
928
+ {
929
+ "name": "sebastian/environment",
930
+ "version": "4.2.3",
931
+ "source": {
932
+ "type": "git",
933
+ "url": "https://github.com/sebastianbergmann/environment.git",
934
+ "reference": "464c90d7bdf5ad4e8a6aea15c091fec0603d4368"
935
+ },
936
+ "dist": {
937
+ "type": "zip",
938
+ "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/464c90d7bdf5ad4e8a6aea15c091fec0603d4368",
939
+ "reference": "464c90d7bdf5ad4e8a6aea15c091fec0603d4368",
940
+ "shasum": ""
941
+ },
942
+ "require": {
943
+ "php": "^7.1"
944
+ },
945
+ "require-dev": {
946
+ "phpunit/phpunit": "^7.5"
947
+ },
948
+ "suggest": {
949
+ "ext-posix": "*"
950
+ },
951
+ "type": "library",
952
+ "extra": {
953
+ "branch-alias": {
954
+ "dev-master": "4.2-dev"
955
+ }
956
+ },
957
+ "autoload": {
958
+ "classmap": [
959
+ "src/"
960
+ ]
961
+ },
962
+ "notification-url": "https://packagist.org/downloads/",
963
+ "license": [
964
+ "BSD-3-Clause"
965
+ ],
966
+ "authors": [
967
+ {
968
+ "name": "Sebastian Bergmann",
969
+ "email": "sebastian@phpunit.de"
970
+ }
971
+ ],
972
+ "description": "Provides functionality to handle HHVM/PHP environments",
973
+ "homepage": "http://www.github.com/sebastianbergmann/environment",
974
+ "keywords": [
975
+ "Xdebug",
976
+ "environment",
977
+ "hhvm"
978
+ ],
979
+ "time": "2019-11-20T08:46:58+00:00"
980
+ },
981
+ {
982
+ "name": "sebastian/exporter",
983
+ "version": "3.1.2",
984
+ "source": {
985
+ "type": "git",
986
+ "url": "https://github.com/sebastianbergmann/exporter.git",
987
+ "reference": "68609e1261d215ea5b21b7987539cbfbe156ec3e"
988
+ },
989
+ "dist": {
990
+ "type": "zip",
991
+ "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/68609e1261d215ea5b21b7987539cbfbe156ec3e",
992
+ "reference": "68609e1261d215ea5b21b7987539cbfbe156ec3e",
993
+ "shasum": ""
994
+ },
995
+ "require": {
996
+ "php": "^7.0",
997
+ "sebastian/recursion-context": "^3.0"
998
+ },
999
+ "require-dev": {
1000
+ "ext-mbstring": "*",
1001
+ "phpunit/phpunit": "^6.0"
1002
+ },
1003
+ "type": "library",
1004
+ "extra": {
1005
+ "branch-alias": {
1006
+ "dev-master": "3.1.x-dev"
1007
+ }
1008
+ },
1009
+ "autoload": {
1010
+ "classmap": [
1011
+ "src/"
1012
+ ]
1013
+ },
1014
+ "notification-url": "https://packagist.org/downloads/",
1015
+ "license": [
1016
+ "BSD-3-Clause"
1017
+ ],
1018
+ "authors": [
1019
+ {
1020
+ "name": "Sebastian Bergmann",
1021
+ "email": "sebastian@phpunit.de"
1022
+ },
1023
+ {
1024
+ "name": "Jeff Welch",
1025
+ "email": "whatthejeff@gmail.com"
1026
+ },
1027
+ {
1028
+ "name": "Volker Dusch",
1029
+ "email": "github@wallbash.com"
1030
+ },
1031
+ {
1032
+ "name": "Adam Harvey",
1033
+ "email": "aharvey@php.net"
1034
+ },
1035
+ {
1036
+ "name": "Bernhard Schussek",
1037
+ "email": "bschussek@gmail.com"
1038
+ }
1039
+ ],
1040
+ "description": "Provides the functionality to export PHP variables for visualization",
1041
+ "homepage": "http://www.github.com/sebastianbergmann/exporter",
1042
+ "keywords": [
1043
+ "export",
1044
+ "exporter"
1045
+ ],
1046
+ "time": "2019-09-14T09:02:43+00:00"
1047
+ },
1048
+ {
1049
+ "name": "sebastian/global-state",
1050
+ "version": "2.0.0",
1051
+ "source": {
1052
+ "type": "git",
1053
+ "url": "https://github.com/sebastianbergmann/global-state.git",
1054
+ "reference": "e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4"
1055
+ },
1056
+ "dist": {
1057
+ "type": "zip",
1058
+ "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4",
1059
+ "reference": "e8ba02eed7bbbb9e59e43dedd3dddeff4a56b0c4",
1060
+ "shasum": ""
1061
+ },
1062
+ "require": {
1063
+ "php": "^7.0"
1064
+ },
1065
+ "require-dev": {
1066
+ "phpunit/phpunit": "^6.0"
1067
+ },
1068
+ "suggest": {
1069
+ "ext-uopz": "*"
1070
+ },
1071
+ "type": "library",
1072
+ "extra": {
1073
+ "branch-alias": {
1074
+ "dev-master": "2.0-dev"
1075
+ }
1076
+ },
1077
+ "autoload": {
1078
+ "classmap": [
1079
+ "src/"
1080
+ ]
1081
+ },
1082
+ "notification-url": "https://packagist.org/downloads/",
1083
+ "license": [
1084
+ "BSD-3-Clause"
1085
+ ],
1086
+ "authors": [
1087
+ {
1088
+ "name": "Sebastian Bergmann",
1089
+ "email": "sebastian@phpunit.de"
1090
+ }
1091
+ ],
1092
+ "description": "Snapshotting of global state",
1093
+ "homepage": "http://www.github.com/sebastianbergmann/global-state",
1094
+ "keywords": [
1095
+ "global state"
1096
+ ],
1097
+ "time": "2017-04-27T15:39:26+00:00"
1098
+ },
1099
+ {
1100
+ "name": "sebastian/object-enumerator",
1101
+ "version": "3.0.3",
1102
+ "source": {
1103
+ "type": "git",
1104
+ "url": "https://github.com/sebastianbergmann/object-enumerator.git",
1105
+ "reference": "7cfd9e65d11ffb5af41198476395774d4c8a84c5"
1106
+ },
1107
+ "dist": {
1108
+ "type": "zip",
1109
+ "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/7cfd9e65d11ffb5af41198476395774d4c8a84c5",
1110
+ "reference": "7cfd9e65d11ffb5af41198476395774d4c8a84c5",
1111
+ "shasum": ""
1112
+ },
1113
+ "require": {
1114
+ "php": "^7.0",
1115
+ "sebastian/object-reflector": "^1.1.1",
1116
+ "sebastian/recursion-context": "^3.0"
1117
+ },
1118
+ "require-dev": {
1119
+ "phpunit/phpunit": "^6.0"
1120
+ },
1121
+ "type": "library",
1122
+ "extra": {
1123
+ "branch-alias": {
1124
+ "dev-master": "3.0.x-dev"
1125
+ }
1126
+ },
1127
+ "autoload": {
1128
+ "classmap": [
1129
+ "src/"
1130
+ ]
1131
+ },
1132
+ "notification-url": "https://packagist.org/downloads/",
1133
+ "license": [
1134
+ "BSD-3-Clause"
1135
+ ],
1136
+ "authors": [
1137
+ {
1138
+ "name": "Sebastian Bergmann",
1139
+ "email": "sebastian@phpunit.de"
1140
+ }
1141
+ ],
1142
+ "description": "Traverses array structures and object graphs to enumerate all referenced objects",
1143
+ "homepage": "https://github.com/sebastianbergmann/object-enumerator/",
1144
+ "time": "2017-08-03T12:35:26+00:00"
1145
+ },
1146
+ {
1147
+ "name": "sebastian/object-reflector",
1148
+ "version": "1.1.1",
1149
+ "source": {
1150
+ "type": "git",
1151
+ "url": "https://github.com/sebastianbergmann/object-reflector.git",
1152
+ "reference": "773f97c67f28de00d397be301821b06708fca0be"
1153
+ },
1154
+ "dist": {
1155
+ "type": "zip",
1156
+ "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/773f97c67f28de00d397be301821b06708fca0be",
1157
+ "reference": "773f97c67f28de00d397be301821b06708fca0be",
1158
+ "shasum": ""
1159
+ },
1160
+ "require": {
1161
+ "php": "^7.0"
1162
+ },
1163
+ "require-dev": {
1164
+ "phpunit/phpunit": "^6.0"
1165
+ },
1166
+ "type": "library",
1167
+ "extra": {
1168
+ "branch-alias": {
1169
+ "dev-master": "1.1-dev"
1170
+ }
1171
+ },
1172
+ "autoload": {
1173
+ "classmap": [
1174
+ "src/"
1175
+ ]
1176
+ },
1177
+ "notification-url": "https://packagist.org/downloads/",
1178
+ "license": [
1179
+ "BSD-3-Clause"
1180
+ ],
1181
+ "authors": [
1182
+ {
1183
+ "name": "Sebastian Bergmann",
1184
+ "email": "sebastian@phpunit.de"
1185
+ }
1186
+ ],
1187
+ "description": "Allows reflection of object attributes, including inherited and non-public ones",
1188
+ "homepage": "https://github.com/sebastianbergmann/object-reflector/",
1189
+ "time": "2017-03-29T09:07:27+00:00"
1190
+ },
1191
+ {
1192
+ "name": "sebastian/recursion-context",
1193
+ "version": "3.0.0",
1194
+ "source": {
1195
+ "type": "git",
1196
+ "url": "https://github.com/sebastianbergmann/recursion-context.git",
1197
+ "reference": "5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8"
1198
+ },
1199
+ "dist": {
1200
+ "type": "zip",
1201
+ "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8",
1202
+ "reference": "5b0cd723502bac3b006cbf3dbf7a1e3fcefe4fa8",
1203
+ "shasum": ""
1204
+ },
1205
+ "require": {
1206
+ "php": "^7.0"
1207
+ },
1208
+ "require-dev": {
1209
+ "phpunit/phpunit": "^6.0"
1210
+ },
1211
+ "type": "library",
1212
+ "extra": {
1213
+ "branch-alias": {
1214
+ "dev-master": "3.0.x-dev"
1215
+ }
1216
+ },
1217
+ "autoload": {
1218
+ "classmap": [
1219
+ "src/"
1220
+ ]
1221
+ },
1222
+ "notification-url": "https://packagist.org/downloads/",
1223
+ "license": [
1224
+ "BSD-3-Clause"
1225
+ ],
1226
+ "authors": [
1227
+ {
1228
+ "name": "Jeff Welch",
1229
+ "email": "whatthejeff@gmail.com"
1230
+ },
1231
+ {
1232
+ "name": "Sebastian Bergmann",
1233
+ "email": "sebastian@phpunit.de"
1234
+ },
1235
+ {
1236
+ "name": "Adam Harvey",
1237
+ "email": "aharvey@php.net"
1238
+ }
1239
+ ],
1240
+ "description": "Provides functionality to recursively process PHP variables",
1241
+ "homepage": "http://www.github.com/sebastianbergmann/recursion-context",
1242
+ "time": "2017-03-03T06:23:57+00:00"
1243
+ },
1244
+ {
1245
+ "name": "sebastian/resource-operations",
1246
+ "version": "2.0.1",
1247
+ "source": {
1248
+ "type": "git",
1249
+ "url": "https://github.com/sebastianbergmann/resource-operations.git",
1250
+ "reference": "4d7a795d35b889bf80a0cc04e08d77cedfa917a9"
1251
+ },
1252
+ "dist": {
1253
+ "type": "zip",
1254
+ "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/4d7a795d35b889bf80a0cc04e08d77cedfa917a9",
1255
+ "reference": "4d7a795d35b889bf80a0cc04e08d77cedfa917a9",
1256
+ "shasum": ""
1257
+ },
1258
+ "require": {
1259
+ "php": "^7.1"
1260
+ },
1261
+ "type": "library",
1262
+ "extra": {
1263
+ "branch-alias": {
1264
+ "dev-master": "2.0-dev"
1265
+ }
1266
+ },
1267
+ "autoload": {
1268
+ "classmap": [
1269
+ "src/"
1270
+ ]
1271
+ },
1272
+ "notification-url": "https://packagist.org/downloads/",
1273
+ "license": [
1274
+ "BSD-3-Clause"
1275
+ ],
1276
+ "authors": [
1277
+ {
1278
+ "name": "Sebastian Bergmann",
1279
+ "email": "sebastian@phpunit.de"
1280
+ }
1281
+ ],
1282
+ "description": "Provides a list of PHP built-in functions that operate on resources",
1283
+ "homepage": "https://www.github.com/sebastianbergmann/resource-operations",
1284
+ "time": "2018-10-04T04:07:39+00:00"
1285
+ },
1286
+ {
1287
+ "name": "sebastian/version",
1288
+ "version": "2.0.1",
1289
+ "source": {
1290
+ "type": "git",
1291
+ "url": "https://github.com/sebastianbergmann/version.git",
1292
+ "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019"
1293
+ },
1294
+ "dist": {
1295
+ "type": "zip",
1296
+ "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/99732be0ddb3361e16ad77b68ba41efc8e979019",
1297
+ "reference": "99732be0ddb3361e16ad77b68ba41efc8e979019",
1298
+ "shasum": ""
1299
+ },
1300
+ "require": {
1301
+ "php": ">=5.6"
1302
+ },
1303
+ "type": "library",
1304
+ "extra": {
1305
+ "branch-alias": {
1306
+ "dev-master": "2.0.x-dev"
1307
+ }
1308
+ },
1309
+ "autoload": {
1310
+ "classmap": [
1311
+ "src/"
1312
+ ]
1313
+ },
1314
+ "notification-url": "https://packagist.org/downloads/",
1315
+ "license": [
1316
+ "BSD-3-Clause"
1317
+ ],
1318
+ "authors": [
1319
+ {
1320
+ "name": "Sebastian Bergmann",
1321
+ "email": "sebastian@phpunit.de",
1322
+ "role": "lead"
1323
+ }
1324
+ ],
1325
+ "description": "Library that helps with managing the version number of Git-hosted PHP projects",
1326
+ "homepage": "https://github.com/sebastianbergmann/version",
1327
+ "time": "2016-10-03T07:35:21+00:00"
1328
+ },
1329
+ {
1330
+ "name": "symfony/polyfill-ctype",
1331
+ "version": "v1.17.0",
1332
+ "source": {
1333
+ "type": "git",
1334
+ "url": "https://github.com/symfony/polyfill-ctype.git",
1335
+ "reference": "e94c8b1bbe2bc77507a1056cdb06451c75b427f9"
1336
+ },
1337
+ "dist": {
1338
+ "type": "zip",
1339
+ "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/e94c8b1bbe2bc77507a1056cdb06451c75b427f9",
1340
+ "reference": "e94c8b1bbe2bc77507a1056cdb06451c75b427f9",
1341
+ "shasum": ""
1342
+ },
1343
+ "require": {
1344
+ "php": ">=5.3.3"
1345
+ },
1346
+ "suggest": {
1347
+ "ext-ctype": "For best performance"
1348
+ },
1349
+ "type": "library",
1350
+ "extra": {
1351
+ "branch-alias": {
1352
+ "dev-master": "1.17-dev"
1353
+ }
1354
+ },
1355
+ "autoload": {
1356
+ "psr-4": {
1357
+ "Symfony\\Polyfill\\Ctype\\": ""
1358
+ },
1359
+ "files": [
1360
+ "bootstrap.php"
1361
+ ]
1362
+ },
1363
+ "notification-url": "https://packagist.org/downloads/",
1364
+ "license": [
1365
+ "MIT"
1366
+ ],
1367
+ "authors": [
1368
+ {
1369
+ "name": "Gert de Pagter",
1370
+ "email": "BackEndTea@gmail.com"
1371
+ },
1372
+ {
1373
+ "name": "Symfony Community",
1374
+ "homepage": "https://symfony.com/contributors"
1375
+ }
1376
+ ],
1377
+ "description": "Symfony polyfill for ctype functions",
1378
+ "homepage": "https://symfony.com",
1379
+ "keywords": [
1380
+ "compatibility",
1381
+ "ctype",
1382
+ "polyfill",
1383
+ "portable"
1384
+ ],
1385
+ "time": "2020-05-12T16:14:59+00:00"
1386
+ },
1387
+ {
1388
+ "name": "theseer/tokenizer",
1389
+ "version": "1.1.3",
1390
+ "source": {
1391
+ "type": "git",
1392
+ "url": "https://github.com/theseer/tokenizer.git",
1393
+ "reference": "11336f6f84e16a720dae9d8e6ed5019efa85a0f9"
1394
+ },
1395
+ "dist": {
1396
+ "type": "zip",
1397
+ "url": "https://api.github.com/repos/theseer/tokenizer/zipball/11336f6f84e16a720dae9d8e6ed5019efa85a0f9",
1398
+ "reference": "11336f6f84e16a720dae9d8e6ed5019efa85a0f9",
1399
+ "shasum": ""
1400
+ },
1401
+ "require": {
1402
+ "ext-dom": "*",
1403
+ "ext-tokenizer": "*",
1404
+ "ext-xmlwriter": "*",
1405
+ "php": "^7.0"
1406
+ },
1407
+ "type": "library",
1408
+ "autoload": {
1409
+ "classmap": [
1410
+ "src/"
1411
+ ]
1412
+ },
1413
+ "notification-url": "https://packagist.org/downloads/",
1414
+ "license": [
1415
+ "BSD-3-Clause"
1416
+ ],
1417
+ "authors": [
1418
+ {
1419
+ "name": "Arne Blankerts",
1420
+ "email": "arne@blankerts.de",
1421
+ "role": "Developer"
1422
+ }
1423
+ ],
1424
+ "description": "A small library for converting tokenized PHP source code into XML and potentially other formats",
1425
+ "time": "2019-06-13T22:48:21+00:00"
1426
+ },
1427
+ {
1428
+ "name": "webmozart/assert",
1429
+ "version": "1.8.0",
1430
+ "source": {
1431
+ "type": "git",
1432
+ "url": "https://github.com/webmozart/assert.git",
1433
+ "reference": "ab2cb0b3b559010b75981b1bdce728da3ee90ad6"
1434
+ },
1435
+ "dist": {
1436
+ "type": "zip",
1437
+ "url": "https://api.github.com/repos/webmozart/assert/zipball/ab2cb0b3b559010b75981b1bdce728da3ee90ad6",
1438
+ "reference": "ab2cb0b3b559010b75981b1bdce728da3ee90ad6",
1439
+ "shasum": ""
1440
+ },
1441
+ "require": {
1442
+ "php": "^5.3.3 || ^7.0",
1443
+ "symfony/polyfill-ctype": "^1.8"
1444
+ },
1445
+ "conflict": {
1446
+ "vimeo/psalm": "<3.9.1"
1447
+ },
1448
+ "require-dev": {
1449
+ "phpunit/phpunit": "^4.8.36 || ^7.5.13"
1450
+ },
1451
+ "type": "library",
1452
+ "autoload": {
1453
+ "psr-4": {
1454
+ "Webmozart\\Assert\\": "src/"
1455
+ }
1456
+ },
1457
+ "notification-url": "https://packagist.org/downloads/",
1458
+ "license": [
1459
+ "MIT"
1460
+ ],
1461
+ "authors": [
1462
+ {
1463
+ "name": "Bernhard Schussek",
1464
+ "email": "bschussek@gmail.com"
1465
+ }
1466
+ ],
1467
+ "description": "Assertions to validate method input/output with nice error messages.",
1468
+ "keywords": [
1469
+ "assert",
1470
+ "check",
1471
+ "validate"
1472
+ ],
1473
+ "time": "2020-04-18T12:12:48+00:00"
1474
+ }
1475
+ ],
1476
+ "aliases": [],
1477
+ "minimum-stability": "stable",
1478
+ "stability-flags": [],
1479
+ "prefer-stable": false,
1480
+ "prefer-lowest": false,
1481
+ "platform": [],
1482
+ "platform-dev": []
1483
+ }
docker-compose.yml CHANGED
@@ -16,4 +16,4 @@ services:
16
  - .:/var/www/html
17
  depends_on:
18
  - db
19
- command: "/opt/vendor/bin/phpunit"
16
  - .:/var/www/html
17
  depends_on:
18
  - db
19
+ entrypoint: "/opt/vendor/bin/phpunit"
gulpfile.js CHANGED
@@ -139,7 +139,7 @@ gulp.task('watch', function() {
139
 
140
  gulp.task('default', gulp.series('text-domain','watch'))
141
  gulp.task('compile', gulp.series('scripts', 'sass', 'block'))
142
- gulp.task('copy_dist', (done)=>{
143
  ps('bin/dist', (err, stdout, stderr)=>{
144
  console.log(stdout)
145
  done()
@@ -150,7 +150,7 @@ gulp.task('build', gulp.series('scripts', 'sass', 'block'))
150
 
151
  // copy dist ////////////////////////////////////////////////
152
 
153
- gulp.task('copy_dist', function() {
154
  return gulp.src(
155
  [
156
  './**/*.php',
@@ -181,8 +181,4 @@ gulp.task('copy_dist', function() {
181
  { base: './' }
182
  )
183
  .pipe( gulp.dest( 'dist' ) ); // distディレクトリに出力
184
- } );
185
-
186
- gulp.task('dist', function(cb){
187
- return runSequence( 'copy_dist', cb );
188
- });
139
 
140
  gulp.task('default', gulp.series('text-domain','watch'))
141
  gulp.task('compile', gulp.series('scripts', 'sass', 'block'))
142
+ gulp.task('dist', (done)=>{
143
  ps('bin/dist', (err, stdout, stderr)=>{
144
  console.log(stdout)
145
  done()
150
 
151
  // copy dist ////////////////////////////////////////////////
152
 
153
+ gulp.task('dist', function() {
154
  return gulp.src(
155
  [
156
  './**/*.php',
181
  { base: './' }
182
  )
183
  .pipe( gulp.dest( 'dist' ) ); // distディレクトリに出力
184
+ } );
 
 
 
 
inc/add_menu_to_block_reuse.php ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ if ( is_admin() ) {
4
+ global $wp_version;
5
+
6
+ if ( version_compare( $wp_version, '5.3', '>=' ) ) {
7
+ add_action('admin_menu', function(){
8
+ global $menu;
9
+ $position = 20;
10
+ $menu_slug = "edit.php?post_type=wp_block";
11
+ $menu_title = __( 'Manage all reusable blocks' );
12
+
13
+ while( isset( $menu[$position] ) ) {
14
+ $position++;
15
+ }
16
+
17
+ $menu[ $position ] = array(
18
+ $menu_title,
19
+ "edit_posts",
20
+ $menu_slug,
21
+ "",
22
+ 'menu-top ',
23
+ "",
24
+ "dashicons-controls-repeat"
25
+ );
26
+ }, 10);
27
+ }
28
+ }
inc/page-list-ancestor/page-list-ancestor.php CHANGED
@@ -48,7 +48,12 @@ function vkExUnit_pageList_ancestor_shortcode( $classes='', $force=false ) {
48
  }
49
 
50
  if ( $post_id ) {
51
- $children = wp_list_pages( 'title_li=&child_of=' . $post_id . '&echo=0' );
 
 
 
 
 
52
  if ( $children ) {
53
  $pageList_ancestor_html = '<section class="veu_pageList_ancestor veu_card '. $classes . '">';
54
  $pageList_ancestor_html .= '<div class="veu_card_inner">';
48
  }
49
 
50
  if ( $post_id ) {
51
+ $children = wp_list_pages( array(
52
+ 'title_li' => '',
53
+ 'child_of' => $post_id,
54
+ 'echo' => 0
55
+ ) );
56
+
57
  if ( $children ) {
58
  $pageList_ancestor_html = '<section class="veu_pageList_ancestor veu_card '. $classes . '">';
59
  $pageList_ancestor_html .= '<div class="veu_card_inner">';
inc/smooth-scroll/js/smooth-scroll.js CHANGED
@@ -35,7 +35,7 @@
35
  document.getElementsByTagName('a'),
36
  (elem) => {
37
  let href = elem.getAttribute('href')
38
- if(href && href.indexOf('#') == 0){
39
  elem.addEventListener('click', smooth_link)
40
  }
41
  }
35
  document.getElementsByTagName('a'),
36
  (elem) => {
37
  let href = elem.getAttribute('href')
38
+ if(href && href.indexOf('#') == 0 && href !== '#'){
39
  elem.addEventListener('click', smooth_link)
40
  }
41
  }
initialize.php CHANGED
@@ -73,32 +73,71 @@ function veu_install_function() {
73
  }
74
  }
75
 
 
 
 
 
 
 
 
 
 
 
 
 
 
76
 
77
  add_action( 'after_setup_theme', 'veu_change_enqueue_point_run_filter', 5 );
78
  function veu_change_enqueue_point_run_filter() {
79
  $default = array(
80
- 'common' => false,
 
81
  );
82
  $option = get_option( 'vkExUnit_pagespeeding', $default );
83
  $option = wp_parse_args( $option, $default );
84
- if ( $option['common'] ) {
85
 
86
- // font awesome
87
  add_filter( 'vkfa_enqueue_point', 'veu_change_enqueue_point_to_footer' );
88
 
89
- // vk blocks css
90
  add_filter( 'vkblocks_enqueue_point', 'veu_change_enqueue_point_to_footer' );
91
 
92
- // common css
93
  add_filter( 'veu_enqueue_point_common_css', 'veu_change_enqueue_point_to_footer' );
94
 
95
- // css customize
96
  add_filter( 'veu_enqueue_point_css_customize_common', 'veu_change_enqueue_point_to_footer' );
97
  add_filter( 'veu_enqueue_point_css_customize_single', 'veu_change_enqueue_point_to_footer' );
98
 
99
  }
 
100
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
101
  }
 
 
102
 
103
  function veu_change_enqueue_point_to_footer( $enqueue_point ) {
104
  $enqueue_point = 'wp_footer';
73
  }
74
  }
75
 
76
+ /**
77
+ * change old options
78
+ */
79
+ function change_old_options() {
80
+ $option = get_option( 'vkExUnit_pagespeeding' );
81
+
82
+ if ( $option['common'] ) {
83
+ $option['css_exunit'] = true;
84
+ unset( $option['common'] );
85
+ }
86
+
87
+ }
88
+ add_action( 'after_setup_theme', 'change_old_options', 4 );
89
 
90
  add_action( 'after_setup_theme', 'veu_change_enqueue_point_run_filter', 5 );
91
  function veu_change_enqueue_point_run_filter() {
92
  $default = array(
93
+ 'css_exunit' => false,
94
+ 'js_footer' => false,
95
  );
96
  $option = get_option( 'vkExUnit_pagespeeding', $default );
97
  $option = wp_parse_args( $option, $default );
98
+ if ( $option['css_exunit'] ) {
99
 
100
+ // font awesome.
101
  add_filter( 'vkfa_enqueue_point', 'veu_change_enqueue_point_to_footer' );
102
 
103
+ // vk blocks css.
104
  add_filter( 'vkblocks_enqueue_point', 'veu_change_enqueue_point_to_footer' );
105
 
106
+ // common css.
107
  add_filter( 'veu_enqueue_point_common_css', 'veu_change_enqueue_point_to_footer' );
108
 
109
+ // css customize.
110
  add_filter( 'veu_enqueue_point_css_customize_common', 'veu_change_enqueue_point_to_footer' );
111
  add_filter( 'veu_enqueue_point_css_customize_single', 'veu_change_enqueue_point_to_footer' );
112
 
113
  }
114
+ }
115
 
116
+ /**
117
+ * Move JavaScripts To Footer
118
+ * https://nelog.jp/header-js-to-footer
119
+ */
120
+ function veu_move_scripts_to_footer() {
121
+ $default = array(
122
+ 'css_exunit' => false,
123
+ 'js_footer' => false,
124
+ );
125
+ $option = get_option( 'vkExUnit_pagespeeding', $default );
126
+ $option = wp_parse_args( $option, $default );
127
+ if ( $option['js_footer'] ) {
128
+ // Remove Header Scripts.
129
+ remove_action( 'wp_head', 'wp_print_scripts' );
130
+ remove_action( 'wp_head', 'wp_print_head_scripts', 9 );
131
+ remove_action( 'wp_head', 'wp_enqueue_scripts', 1 );
132
+
133
+ // Remove Footer Scripts.
134
+ add_action( 'wp_footer', 'wp_print_scripts', 5 );
135
+ add_action( 'wp_footer', 'wp_print_head_scripts', 5 );
136
+ add_action( 'wp_footer', 'wp_enqueue_scripts', 5 );
137
+ }
138
  }
139
+ add_action( 'wp_enqueue_scripts', 'veu_move_scripts_to_footer' );
140
+
141
 
142
  function veu_change_enqueue_point_to_footer( $enqueue_point ) {
143
  $enqueue_point = 'wp_footer';
phpunit.xml CHANGED
@@ -7,7 +7,7 @@
7
  convertWarningsToExceptions="true"
8
  >
9
  <testsuites>
10
- <testsuite>
11
  <directory prefix="test-" suffix=".php">./tests/</directory>
12
  </testsuite>
13
  </testsuites>
7
  convertWarningsToExceptions="true"
8
  >
9
  <testsuites>
10
+ <testsuite name="default">
11
  <directory prefix="test-" suffix=".php">./tests/</directory>
12
  </testsuite>
13
  </testsuites>
readme.txt CHANGED
@@ -4,7 +4,7 @@ Donate link:
4
  Tags: Google Analytics, New posts, Related Posts, sitemap, sns, twitter card, Facebook Page Plugin, OG tags,
5
  Requires at least: 5.0.0
6
  Tested up to: 5.4.2
7
- Stable tag: 9.22.1.0
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -99,6 +99,12 @@ e.g.
99
 
100
  == Changelog ==
101
 
 
 
 
 
 
 
102
  = 9.22.1.0 =
103
  * [ Bug fix ] ExUnit Block hidden function bug fix
104
  * [ Group block style ] Add alert style
4
  Tags: Google Analytics, New posts, Related Posts, sitemap, sns, twitter card, Facebook Page Plugin, OG tags,
5
  Requires at least: 5.0.0
6
  Tested up to: 5.4.2
7
+ Stable tag: 9.24.0.0
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
99
 
100
  == Changelog ==
101
 
102
+ = 9.24.0.0 =
103
+ * [ Add function ] Add Reusable block menu
104
+
105
+ = 9.23.0.0 =
106
+ * [ Add function ] JS move to footer
107
+
108
  = 9.22.1.0 =
109
  * [ Bug fix ] ExUnit Block hidden function bug fix
110
  * [ Group block style ] Add alert style
tests/test-page-list-ancestor.php ADDED
@@ -0,0 +1,110 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Class PageListAncestorTest
4
+ *
5
+ * @package Vk_All_In_One_Expansion_Unit
6
+ */
7
+
8
+ /**
9
+ * PageListAncestor test case.
10
+ */
11
+
12
+ class PageListAncestorTest extends WP_UnitTestCase {
13
+
14
+ public function test_display_shortcode() {
15
+ $id = wp_insert_post([
16
+ 'post_title' => 'assert post',
17
+ 'post_content' => 'test string',
18
+ 'post_type' => 'page'
19
+ ]);
20
+
21
+ global $post;
22
+ $post = get_post($id);
23
+ global $wp_query;
24
+ $wp_query->is_page = true;
25
+
26
+ // case1
27
+ update_post_meta( $post->ID, 'vkExUnit_pageList_ancestor', true );
28
+
29
+ $this->assertEquals(
30
+ vkExUnit_pageList_ancestor_contentHook('content'),
31
+ "content\n[pageList_ancestor]"
32
+ );
33
+
34
+ // case2
35
+ $wp_query->is_page = false;
36
+ $this->assertEquals(
37
+ vkExUnit_pageList_ancestor_contentHook('content'),
38
+ "content"
39
+ );
40
+
41
+ // case3
42
+ $wp_query->is_page = true;
43
+ update_post_meta( $post->ID, 'vkExUnit_pageList_ancestor', false );
44
+
45
+ $this->assertEquals(
46
+ vkExUnit_pageList_ancestor_contentHook('content'),
47
+ "content"
48
+ );
49
+ }
50
+
51
+ public function test_shortcode() {
52
+ $parent = wp_insert_post([
53
+ 'post_title' => 'parent post',
54
+ 'post_content' => 'parent string',
55
+ 'post_type' => 'page',
56
+ 'post_status' => 'publish'
57
+ ]);
58
+ wp_insert_post([
59
+ 'post_title' => 'children post',
60
+ 'post_parent' => $parent,
61
+ 'post_type' => 'page',
62
+ 'post_status' => 'publish'
63
+ ]);
64
+ $id = wp_insert_post([
65
+ 'post_title' => 'assert post',
66
+ 'post_content' => 'test string',
67
+ 'post_parent' => $parent,
68
+ 'post_type' => 'page',
69
+ 'post_status' => 'publish'
70
+ ]);
71
+
72
+ global $post;
73
+ $post = get_post($id);
74
+
75
+ global $is_pagewidget;
76
+ global $widget_pageid;
77
+ global $wp_query;
78
+
79
+ $widget_pageid = $id;
80
+
81
+ // case1
82
+ $is_pagewidget = false;
83
+ $wp_query->is_page = true;
84
+ update_post_meta( $post->ID, 'vkExUnit_pageList_ancestor', false );
85
+
86
+ $this->assertEquals(
87
+ vkExUnit_pageList_ancestor_shortcode('', false),
88
+ ''
89
+ );
90
+
91
+ // case2
92
+ $is_pagewidget = false;
93
+ $wp_query->is_page = false;
94
+ update_post_meta( $post->ID, 'vkExUnit_pageList_ancestor', true );
95
+
96
+ $this->assertEquals(
97
+ vkExUnit_pageList_ancestor_shortcode('', false),
98
+ ''
99
+ );
100
+
101
+ // case3
102
+ $is_pagewidget = false;
103
+ $wp_query->is_page = true;
104
+ update_post_meta( $post->ID, 'vkExUnit_pageList_ancestor', true );
105
+
106
+ $this->assertTrue(
107
+ vkExUnit_pageList_ancestor_shortcode('', false) != ''
108
+ );
109
+ }
110
+ }
veu-packages.php CHANGED
@@ -89,14 +89,14 @@ function veu_get_packages() {
89
  );
90
 
91
  /*
92
- metaDescription
93
  /*-------------------------------------------*/
94
  $required_packages[] = array(
95
- 'name' => 'metaDescription',
96
- 'title' => __( 'Print meta description', 'vk-all-in-one-expansion-unit' ),
97
- 'description' => __( 'Print meta description to html head.', 'vk-all-in-one-expansion-unit' ),
98
  'default' => true,
99
- 'include' => 'meta-description.php',
100
  );
101
 
102
  /*
@@ -147,6 +147,17 @@ function veu_get_packages() {
147
  'include' => 'google_analytics/google_analytics.php',
148
  );
149
 
 
 
 
 
 
 
 
 
 
 
 
150
  /*
151
  otherWidgets
152
  /*-------------------------------------------*/
89
  );
90
 
91
  /*
92
+ addReusableBlockMenu
93
  /*-------------------------------------------*/
94
  $required_packages[] = array(
95
+ 'name' => 'addReusableBlockMenu',
96
+ 'title' => __( 'Add Reusable block menu', 'vk-all-in-one-expansion-unit' ),
97
+ 'description' => __( 'Add Manage all reusable blocks menu to admin menu.', 'vk-all-in-one-expansion-unit' ),
98
  'default' => true,
99
+ 'include' => 'add_menu_to_block_reuse.php',
100
  );
101
 
102
  /*
147
  'include' => 'google_analytics/google_analytics.php',
148
  );
149
 
150
+ /*
151
+ metaDescription
152
+ /*-------------------------------------------*/
153
+ $required_packages[] = array(
154
+ 'name' => 'metaDescription',
155
+ 'title' => __( 'Print meta description', 'vk-all-in-one-expansion-unit' ),
156
+ 'description' => __( 'Print meta description to html head.', 'vk-all-in-one-expansion-unit' ),
157
+ 'default' => true,
158
+ 'include' => 'meta-description.php',
159
+ );
160
+
161
  /*
162
  otherWidgets
163
  /*-------------------------------------------*/
vk-all-in-one-expansion-unit.code-workspace ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "folders": [
3
+ {
4
+ "path": "."
5
+ }
6
+ ],
7
+ "settings": {
8
+ "editor.tabSize": 4,
9
+ "editor.detectIndentation": false,
10
+ "editor.insertSpaces": false,
11
+ "editor.codeActionsOnSave": {
12
+ "source.fixAll.eslint": true
13
+ },
14
+ "files.eol": "\n",
15
+ "phpcs.standard": "WordPress",
16
+ "phpcbf.standard": "WordPress",
17
+ "phpcbf.executablePath": "phpcbf.bat",
18
+ "phpcbf.onsave": true,
19
+ "javascript.format.enable": false,
20
+ "stylelint.autoFixOnSave": true,
21
+ "[html]": {
22
+ "editor.formatOnSave": true,
23
+ },
24
+ "[css]": {
25
+ "editor.formatOnSave": false,
26
+ },
27
+ "[scss]": {
28
+ "editor.formatOnSave": false,
29
+ },
30
+ "[javascript]": {
31
+ "editor.formatOnSave": false,
32
+ },
33
+ "[json]": {
34
+ "editor.formatOnSave": true,
35
+ },
36
+ "[php]": {
37
+ "editor.formatOnSave": false,
38
+ },
39
+ "liveSassCompile.settings.autoprefix": [
40
+ "> 1%",
41
+ "last 2 versions"
42
+ ],
43
+ "liveSassCompile.settings.formats":
44
+ [{
45
+ "format": "expanded",
46
+ "extensionName": ".css",
47
+ "savePath": "~/../css/",
48
+ },
49
+ {
50
+ "format": "compressed",
51
+ "extensionName": ".min.css",
52
+ "savePath": "~/../css/",
53
+ }],
54
+ "liveSassCompile.settings.excludeList":[
55
+ "**/library/**"
56
+ ],
57
+ }
58
+ }
vkExUnit.php CHANGED
@@ -3,7 +3,7 @@
3
  * Plugin Name: VK All in One Expansion Unit
4
  * Plugin URI: https://ex-unit.nagoya
5
  * Description: This plug-in is an integrated plug-in with a variety of features that make it powerful your web site. Many features can be stopped individually. Example Facebook Page Plugin,Social Bookmarks,Print OG Tags,Print Twitter Card Tags,Print Google Analytics tag,New post widget,Insert Related Posts and more!
6
- * Version: 9.22.1.0
7
  * Author: Vektor,Inc.
8
  * Text Domain: vk-all-in-one-expansion-unit
9
  * Domain Path: /languages
3
  * Plugin Name: VK All in One Expansion Unit
4
  * Plugin URI: https://ex-unit.nagoya
5
  * Description: This plug-in is an integrated plug-in with a variety of features that make it powerful your web site. Many features can be stopped individually. Example Facebook Page Plugin,Social Bookmarks,Print OG Tags,Print Twitter Card Tags,Print Google Analytics tag,New post widget,Insert Related Posts and more!
6
+ * Version: 9.24.0.0
7
  * Author: Vektor,Inc.
8
  * Text Domain: vk-all-in-one-expansion-unit
9
  * Domain Path: /languages